《参考答案 上机练习二:组合逻辑电路设计》由会员分享,可在线阅读,更多相关《参考答案 上机练习二:组合逻辑电路设计(8页珍藏版)》请在金锄头文库上搜索。
1、VHDL 与复杂数字系统设计上机实验 2:组合逻辑电路的 VHDL 程序设计一、 实验目的:1. 掌握在 MaxplusII 中,使用硬件描述语言设计电路的基本操作步骤;2. 运用所学 VHDL 的描述语句完成组合逻辑电路的设计。二、 实验任务:从下列各题中任选一题完成。1. 试用两种描述方法,设计一个四位乘法运算器,并对两种方法所描述电路的性能进行比较。该乘法器有两个操作数输入端口,有一个乘积结果输出端口,采用标准逻辑位或位矢量数据类型。2. 试用两种描述方法,设计一个四位全减器,并对两种方法所描述电路的性能进行比较。该减法器有两个操作数输入端口、一个借位输入端口、一个结果输出端口、一个借位
2、输出端口,采用标准逻辑位或位矢量数据类型。3. 设计一个四位十进制数显示器,每一个字码都由一个 BCD 码7 段译码显示器驱动,即该电路包括 4 个 BCD 码7 段译码显示器,要求该电路必须设计成能够自动去掉 4 位中高位上的零,比如十进制数 0908,显示时应为 908,故 BCD 码7 段译码显示器应具有灭零功能。该电路的端口包括:四个 BCD 码输入端口、四个 7 段译码输出端口。三、 实验报告要求:给出完整的 VHDL 语言程序,程序应包括:库和包集合说明(必要时) 、实体和结构体;若使用了元件,要给出底层元件的 VHDL 语言描述;给出系统自动生成的引脚框图;对所设计电路进行功能仿
3、真;进行适当分析。四、 参考答案:1. 乘法器方法一 利用算术运算符、包集合定义library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity mula isport( a,b :in std_logic_vector(3 downto 0);c :out std_logic_vector(7 downto 0);end mula;architecture rtl of mula isbeginc=c0plusb then c1 seg seg seg seg seg seg seg seg seg
4、 seg=0000000; -blankend case;rbo = 0;end if;end process;end rtl;* DEVICE SUMMARY *Chip/ Input Output Bidir LCsPOF Device Pins Pins Pins LCs % Utilizedsevsegrb EPF6010ATC100-1 5 8 0 18 2 %User Pins: 5 8 0 接着,利用该元件设计四位十进制数显示电路。entity sevsegrb_4bit isport( rbi:in bit;bcd1,bcd2,bcd3,bcd4:in bit_vector(3
5、 downto 0);seg1,seg2,seg3,seg4:out bit_vector(6 downto 0);rbo:out bit);end sevsegrb_4bit;architecture rtl of sevsegrb_4bit iscomponent sevsegrbport( rbi:in bit;bcd:in bit_vector(3 downto 0);seg:out bit_vector(6 downto 0);rbo:out bit);end component;signal rb:bit_vector(3 downto 1);beginu4:sevsegrb po
6、rt map ( rbi,bcd4,seg4,rb(1);u3:sevsegrb port map ( rb(1),bcd3,seg3,rb(2);u2:sevsegrb port map ( rb(2),bcd2,seg2,rb(3);u1:sevsegrb port map ( rb(3),bcd1,seg1,rbo);end rtl;* DEVICE SUMMARY *Chip/ Input Output Bidir LCsPOF Device Pins Pins Pins LCs % Utilizedsevsegrb_4bitEPF6010ATC100-1 17 29 0 74 8 %User Pins: 17 29 0