资源描述:
《《eda技术》复习(期末)》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、《EDA技术应用》复习提纲一、VHDL程序分析处理1画出与以下实体描述对应的原理图符号元件:ENTITYbuf3sIS--实体1:三态缓冲器PORT(input:INSTD_LOGIC;--输入端enable:INSTD_LOGIC;--使能端output:OUTSTD_LOGIC);--输出端ENDbuf3s;buf3sinputoutputenableENTITYmux21IS--实体2:2选1多路选择器PORT(in0,in1,sel:INSTD_LOGIC;output:OUTSTD_LOGIC);mux21in0outputin1sel2哪一种复位方法必须将复位信号放在敏
2、感信号表中?给出这两种电路的VHDL描述。解:边沿触发复位信号要将复位信号放在进程的敏感信号表中。(1)边沿触发复位信号…………………….ARCHITECTUREbhv0FDFF3ISSIGNALQQ:STD_LOGIC;BEGINPROCESS(RST)BEGINIFRST’EVENTANDRST=‘1'THENQQ<=(OTHERS=>‘0’);ENDIF;ENDPROCESS;Q1<=QQ;END;………………………12(2)电平触发复位信号…………………….ARCHITECTUREbhv0FDFF3ISSIGNALQQ:STD_LOGIC;BEGINPROCESS(CLK)
3、BEGINIFRST=‘1'THENQQ<=(OTHERS=>‘0’);ENDIF;ENDPROCESS;Q1<=QQ;END;………………………3判断下面三个程序中是否有错误,若有则指出错误所在,并给出完整程序。程序1:SignalA,EN:std_logic;…………………Process(A,EN)VariableB:std_logic;BeginifEN=lthenB<=A;endif;--将“B<=A”改成“B:=A”endprocess;程序2:Architectureoneofsampleisvariablea,b,c:integer;beginc<=a+b;--将“c
4、<=a+b”改成“c:=a+b”end;程序3:libraryieee;useieee.std_logic_1164.all;entitymux21isPORT(a,b:instd_logic;sel:instd_loglc;c:outstd_logle;);--将“;)”改成“)”endsam2;--将“sam2”改成“entitymux21”architectureoneofmux2lisbegin--增加“process(a,b,sel)begin”ifsel='0'thenc:=a;elsec:=b;endif;--应改成“ifsel='0'thenc<=a;elsec<=
5、b;endif;”--增加“endprocess;”endtwo;--将“two”改成“architectureone”12二、电路设计应用【例3-1】2选1多路选择器图3-1mux21a实体图3-2mux21a结构体LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;ENTITYmux21aISPORT(a,b,s:INBIT;y:OUTBIT);ENDENTITYmux21a;ARCHITECTUREone0Fmux21aISBEGINPROCESS(a,b,s)BEGINIFs=‘0’THENy<=a;ELSEy<=b;ENDIF;ENDPROCES
6、S;3-2图3-16所示的是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’时,分别执行y<=a、y<=b、y<=c、y<=d。图3-164选1多路选择器--解1:用IF_THEN语句实现4选1多路选择器LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;ENTITYmux41ISPORT(a,b,c,d:INSTD_LOGIC;s0
7、:INSTD_LOGIC;s1:INSTD_LOGIC;12y:OUTSTD_LOGIC);ENDENTITYmux41;ARCHITECTUREif_mux41OFmux41ISSIGNALs0s1:STD_LOGIC_VECTOR(1DOWNTO0);--定义标准逻辑位矢量数据BEGINs0s1<=s1&s0;--s1相并s0,即s1与s0并置操作PROCESS(s0s1,a,b,c,d)BEGINIFs0s1="00"THENy<=a;ELSIFs0s1="01