收藏 分享(赏)

EDA(第4讲)第3章 VHDL入门3.ppt

上传人:hwpkd79526 文档编号:12093699 上传时间:2021-09-05 格式:PPT 页数:30 大小:557KB
下载 相关 举报
EDA(第4讲)第3章 VHDL入门3.ppt_第1页
第1页 / 共30页
EDA(第4讲)第3章 VHDL入门3.ppt_第2页
第2页 / 共30页
EDA(第4讲)第3章 VHDL入门3.ppt_第3页
第3页 / 共30页
EDA(第4讲)第3章 VHDL入门3.ppt_第4页
第4页 / 共30页
EDA(第4讲)第3章 VHDL入门3.ppt_第5页
第5页 / 共30页
点击查看更多>>
资源描述

1、1,3.3 含有层次结构的VHDL描述,2,4位全加器的设计 层次化的设计方法的应用,设计方法1:,74LS283,并行进位,由门电路元件设计,3,设计方法2:,串行进位,由1位全加器元件设计,全加器元件由门电路元件设计或者用半加器设计,74LS183,4,全加器元件由半加器设计,5,半加器元件由门电路设计,6,加法器层次化的设计方法,4位全加器的顶层电路,1位全加器的中层电路,半加器的底层电路,用户元件库,用户元件库,7,全加器的VHDL描述:利用半加器和或门作为底层 元件构成全加器,图3-11 全加器f_adder电路图及其实体模块,8,半加器原理,图3-10 半加器h_adder电路图及

2、其真值表,9,LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; ENTITY h_adder IS PORT (a, b : IN STD_LOGIC; co, so : OUT STD_LOGIC); END ENTITY h_adder; ARCHITECTURE fh1 OF h_adder is BEGIN so = NOT(a XOR (NOT b) ; co = a AND b ; END ARCHITECTURE fh1;,-半加器描述(1):布尔方程描述方法,10,半加器VHDL描述2: h_adder.vhd,LIBRARY IEEE; -

3、真值表描述方法 USE IEEE.STD_LOGIC_1164.ALL; ENTITY h_adder IS PORT (a, b : IN STD_LOGIC; co, so : OUT STD_LOGIC); END ENTITY h_adder; ARCHITECTURE fh1 OF h_adder is SIGNAL abc : STD_LOGIC_VECTOR(1 DOWNTO 0) ; BEGIN abc so so so so NULL ; END CASE; END PROCESS; END ARCHITECTURE fh1 ;,11,VHDL语法现象介绍,1. 标准逻辑矢量

4、数据类型,例: B:OUT STD_LOGIC_VECTOR(7 DOWNTO 0); SIGNAL A: STD_LOGIC_VECTOR(1 TO 4); B = 01100010 ; - B(7)为 0 B(4 DOWNTO 1) = 1101 ; - B(4)为 1 B(7 DOWNTO 4) ; . ; ; . WHEN OTHERS = ; . ; ; END CASE ;,14,三人表决器的设计 CASE语句课堂练习题,要求: 根据真值表,写出VHDL程序,15,LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; ENTITY bjq IS PO

5、RT (a, b, c : IN STD_LOGIC; y : OUT STD_LOGIC); END ENTITY bjq; ARCHITECTURE aa OF bjq is SIGNAL abc : STD_LOGIC_VECTOR(1 DOWNTO 0) ; BEGIN abc y y y y y y y y NULL ; END CASE;,END PROCESS; END ARCHITECTURE aa ;,16,内部端口,外部端口,端口连线:信号,17,或门的VHDL描述:or2a.vhd,LIBRARY IEEE ; USE IEEE.STD_LOGIC_1164.ALL; E

6、NTITY or2a IS PORT (a, b :IN STD_LOGIC; c : OUT STD_LOGIC ); END ENTITY or2a; ARCHITECTURE one OF or2a IS BEGIN c ain,b=bin,co=d,so=e); -例化 -语句 u2 : h_adder PORT MAP(a=e, b=cin, co=f,so=sum); u3 : or2a PORT MAP(a=d, b=f, c=cout); END ARCHITECTURE fd1;,20,VHDL语句介绍: 元件例化语句=元件调用声明语句+映射语句构成。,元件声明部分:,COM

7、PONENT 元件名 IS PORT (端口名表) ; END COMPONENT 文件名 ;,映射语句部分:,例化名 : 元件名 PORT MAP ( 元件端口名 = 连接端口名,.);,内部端口,外部端口或信号端口,21,例:3选1选择器(用元件例化语句完成),下图所示的是双2选1多路选择器构成的电路MUXK,对于其中MUX21A,当s=0和1时,分别有y=a和ya3,s=s0,y=tmp); u2: mux21a port map (a=a1,b=tmp,s=s1,y=outy); END ARCHITECTURE one ;,24,例:2-4译码器(用CASE语句完成),Library

8、 ieee; Use ieee.std_logic_1164.all; Entity decoder24 is port(b,a: in std_logic; y: out std_logic_vector(3 downto 0); End entity decoder24;,标准逻辑矢量(4位),25,Architecture one of decoder24 is Signal indata:std_logic_vector(1 downto 0); Begin Indata y y y y y=“XXXX”; End case; End process; End architecture

9、 one;,26,小结: 1.元件例化语句属于并行语句。 2.CASE语句属于顺序语句,应放在进程PROCESS内。 3.层次化、模块化的的设计是VHDL的优越性所在,可 以使一个工程分工协作完成。 4.底层文件和顶层文件可以存放在一个文件里,也可 以分开存放。如果存放在一个文件里文件名必须是顶 层文件的实体名。,27,3-2. 图3-17所示的是4选1多路选择器,试分别用IF_THEN语句和CASE语句的表达方式写出此电路的VHDL程序。选择控制的信号s1和s0的数据类型为STD_LOGIC_VECTOR;当s1=0,s0=0;s1=0,s0=1;s1=1,s0=0和s1=1,s0=1分别执

10、行y=a、y=b、y=c、y=d。,图3-17 4选1多路选择器,习 题,28,习 题,3-4. 图3-19是一个含有上升沿触发的D触发器的时序电路,试写出此电路的VHDL设计文件。,图3-19 时序电路图,29,习 题,3-5. 给出1位全减器的VHDL描述。要求: (1) 首先设计1位半减器,然后用例化语句将它们连接起来,图3-20中h_suber是半减器,diff是输出差,s_out是借位输出,sub_in是借位输入。 (2) 以1位全减器为基本硬件,构成串行借位的8位减法器,要求用例化语句来完成此项设计(减法运算是 x y - sun_in = diffr)。,图3-20 1位全减器,30,上机作业:,1、用case语句编写四选一的选择器vhdl程序 2、用层次化的方法设计四位全加器,

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 企业管理 > 管理学资料

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报