文档详情

VHDL和数字电路设计课程实验.doc

发布:2017-11-27约2.05万字共29页下载文档
文本预览下载声明
VHDL和数字电路设计课程实验 课程实验目的: (1)理论和实践相结合,使学生更加深入地掌握所学内容; (2)掌握如何利用VHDL硬件描述语言方法设计数字电路; (3)掌握如何利用PLD器件结合EDA系统工具设计数字集成电路; (4)培养学生独立开发设计电路系统的能力; (5)培养学生具备从事科研的能力。 实验条件: 要求具备可编程逻辑器件和EDA设计工具实验条件。实验室可提供带配有可编程逻辑器件的通用型GELIN EPF10K10 A系统板、专业型GELIN EPF10K10(B)系统板、GELIN EPF10K10(C)系统板。提供的EDA设计工具为MaxplusⅡ系统。 实验目录: 实验一 二选一数据选择器 实验二 数据对象的定义 附加实验:一位BCD码加法器的设计 实验三 四位二进制加法器设计 附加实验:利用Generic设计一个通用的加法器 实验四 四位二进制乘法器设计 附加实验:n位二进制乘法器设计 实验五 十进制计数器设计 实验六 交通灯控制器的设计 实验七 数字钟的设计 实验一二选一数据选择器设计 实验目的:掌握VHDL程序的结构和熟悉MaxplusⅡ系统的操作。 实验内容:二选一数据选择器电路设计。 实验要求:采用电路真值表方式进行设计。 设计原理: 电路真值表如下: 电路真值表 S C 0 A 1 B 实验报告: (1)电路示意图及源程序代码; (2)功能仿真波形文件。 实验二 数据对象的定义 实验目的:掌握如何定义一个信号或变量数据对象,以及它们的传输特性。 实验内容: (1)利用VHDL进行如下电路的描述 (2)D触发器的设计 实验要求:分别采用定义一个信号对象和变量对象两种方式进行电路设计。 设计原理:D触发器的状态随输入状态的变化而变化,其电路示意图几电路特性表为: D触发器电路示意图 触发器特性表 CLK Q ↑ Qn-1 ↑ D 实验报告: (1)电路示意图及源程序代码; (2)功能仿真波形文件。 实验(1)仿真结果: 仿真结果为(采用信号对象):x=c xor b, y=c xor b。 仿真结果为(采用变量对象):x=c xor a, y=c xor b。 结论:在一个进程中,多次对同一信号对象赋值,只有最后一次赋值起作用,前面的赋值语句被忽略;而变量对象则不同,在过程内的每次赋值均会起作用。 实验(2)仿真结果: 结论:在一个进程中,信号的更新不是立即执行的,而是在end process,即过程结束时才执行;而变量在过程内的更新是立即起作用的。 附加实验:一位BCD码加法器的设计 实验三 四位二进制加法器设计 实验目的:掌握元件例化语句的使用。 实验内容:四位二进制加法器设计。 实验要求:采用元件例化语句进行设计。 设计原理: 首先设计一个一位全加器,然后采用元件例化语句设计一个四位二进制加法器。电路示意图如下所示:A、B、Sum均为四位矢量信号。 Sumi=Ai⊕Bi⊕Cii Coi=AiBi+(Ai+Bi)Cii 实验报告: (1)电路示意图及源程序代码; (2)功能仿真波形文件。 附加实验:利用Generic设计一个通用的加法器 实验四 四位二进制乘法器设计 实验目的:学习组合逻辑电路的VHDL设计。 实验内容:设计一个四位并行二进制乘法器。 实验要求:要求设计的四位并行二进制乘法器并行输入并行输出。 设计原理: 如果设计一个n位的二进制乘法器,那么乘积的位数为2n。那么四位二进制相乘可得到八位二进制数,其实现和十进制乘法类似,可分为两步进行:“取与”和“相加”。 电路示意图及运算如下所示:A和B为四位矢量信号,M为八位矢量信号。 a3 a2 a1 a0 被乘数 × b3 b2 b1 b0 乘数 ------------------------------------------------------------------ a3b0 a2b0 a1b0 a0b0 a3b1 a2b1 a1b1 a0b1 a3b2 a2b2 a1b2 a0b2 + a3b3 a2b3 a1b3 a0b3 ------------------------------------------------------------------ m7 m6 m5 m4 m3 m2 m1 m0 乘法运算也可以只通过被乘数移位来实现,再由乘数判断是否相加即可,如下所示。 a3 a2 a1 a0 被乘数 × b3 b2 b1 b0 乘数 -------------------------
显示全部
相似文档