EDA历年试卷答案

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

附表二:武汉工业学院课程考核试题参考答案及评分标准学年:2007-2008一、简答题(25分,共5小题,每小题5分)1.一个完整的VHDL语言程序通常包括以下5个部分:(每条1’)实体说明(Entity):定义电路实体的外观:I/O接口的规格;结构体(Architecture):描述电路的内部功能;配置(Configuration):决定采用哪一个结构体;程序包(Package):定义使用哪些自定义元件库;库(Library):定义元件库。2.主要从以下几方面进行选择:(每条1’)(1)逻辑单元:CPLD适用于逻辑型系统,FPGA适用于数据型系统。(2)内部互连资源与连线结构:CPLD适用于实现有限状态机,FPGA适用于实现小型化、集成化。(3)编程工艺:CPLD采用EPROM结构,内部逻辑一经编程后还会以丢失,FPGA采用RAM型编程,是易失性器件,需与配置芯片配合使用。(4)规模:中小规模电路设计可采用CPLD,大规模逻辑电路的设计采用FPGA。(5)封装形式:小规模电路:PLCC,引脚数量大的系统宜选用SMD的TQFP、PQFP、BGA等封装形式。3.MAX+PLUSII的设计流程如下:(每步1’)(1)设计输入(2)设计检查(3)设计编译(4)时序/功能仿真(5)定时分析注:用流程框图表示也算回答正确。4.这个过程可以分为:(1)系统性能描述与行为模拟:设计从系统的功能和性能要求开始。(2)系统结构分解:将系统分解为若干子系统,子系统又可以再分解为若干功能模块。(3)产生系统结构模型:(4)描述叶子模块:用数据流进行描述(5)逻辑综合与设计实现:针对给定硬件结构组件进行编译、优化、转换和综合,最终获得门级电路甚至更底层的电路描述文件。5.顺序语句:特点:在程序执行时,按照语句的书写顺序执行,前面的语句的执行结果可能直接影响后面语句的执行。(1’)用途:主要用于模块的算法部分,用若干顺序语句构成一个进程或描述一个特定的算法或行为。顺序语句不能直接构成结构体,必须放在进程、过程中。(2’)并行语句:特点:不按书写顺序执行,可作为一个整体运行,程序执行时只执行被激活的语句。被激活的并行语句是同时执行的。(2’)用途:主要用于表示算法模块间的连接关系,模拟实际硬件电路工作的并行性,可以直接构成结构体。(1’)二、阅读分析题(30分,共3小题,每小题10分)1.(1)真值表如下:(5’)输入输出a、bahbalbaebab100ab010a=b001(2)该电路是一个8位两输入比较器,(2’)a、b是两个8位输入端;(1’)ahb、alb和aeb为比较结果输出端,某种比较结果为真时,相应的输出端为“1”,其余端输出为“0”。(2’)2.该程序实现的是一个带复位端的8进制计数器的功能,cout端为计数到信号输出端,d2~d0为当前计数值输出端。(4’)该电路的输入输出波形如下:(6’,第条波形1’)3.(每个错处:指出:1’,改正:1’)①实体名不能以数字开头,可改为ymq38;②输出引脚定义与程序中的输出不一致,可将输出引脚定义为y:outstd_logic_vector(7downto0)③进程(process)缺少begin,应在when-else语句前加一个begin;④信号q使用前未声明,应在architecture的begin前加signalq:std_logic声明;⑤when-else语句对y赋值运算符(“=”)错,应改为“=”。三、程序设计(共45分,第1、2、3题各10分,第4题15分)(注:程序设计题答案不唯一,以下仅为一种参考答案。)1.2-4译码器码参考程序如下:(答案不唯一,用case语句、with…select语句都可以。)LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;(1’)ENTITYym24ISPORT(en:INSTD_LOGIC;select:OUTSTD_LOGIC_VECTOR(1DOWNTO0);y:OUTSTD_LOGIC_VECTOR(3DOWNTO0)(3’));ENDym24;ARCHITECTUREbdOFym24ISBEGINPROCESS(en)(1’)IF(en=’1’)THENy=”1110”WHENselect=”00”ELSE”1101”WHENselect=”01”ELSE”1011”WHENselect=”10”ELSE”0111”WHENselect=”11”ELSE(4’)”1111”;ELSEy=”1111”;ENDPROCESS;ENDbd;(1’)2.六路8位总线复用器参考程序:(答案不唯一)LIBRARYieee;USEieee.std_logic_1164.ALL;ENTITYmux6IS(1’)PORT(S:INstd_logic_vector(2DOWNTO0);A,B,C,D,E,F:INstd_logic_vector(7DOWNTO0);Q:OUTstd_logic_vector(7DOWNTO0));(3’)ENDmux6;ARCHITECTUREbdOFmux6ISBEGINPROCESS(S)BEGIN(1’)CASESISWHEN000=Q=A;WHEN001=Q=B;WHEN010=Q=C;WHEN011=Q=D;WHEN100=Q=E;WHEN101=Q=F;WHENOTHERS=Q=00000000;(4’)ENDCASE;ENDPROCESS;ENDbd;(1’)3.计数值为12的二进制计数器参考程序:(答案不唯一)LIBRARYieee;USEieee.std_logic_1164.all;USEieee.std_logic_arith.all;USEieee.std_logic_unsigned.all;ENTITYcnt12IS(1’)PORT(reset,en,clk:INSTD_LOGIC;cout:OUTSTD_LOGIC);(2’)ENDcnt12;ARCHITECTUREbdOFcnt12ISSIGNALq:STD_LOGIC_VECTOR(3DOWNTO0);(q定义为整数也可以。)(1’)BEGINPROCESS(clk,reset,en)BEGINIF(reset='0')THENq=0000;cout=’0’;(1’)ELSIF(clk'eventANDclk='1')THEN(1’)IF(en=’1’)THEN(1’)IF(q=”1011”)THENq=0000;cout=’1’;(1’)ELSEq=q+1;cout=’0’;(1’)ENDIF;ELSEcout=’0’;ENDIF;ENDIF;ENDPROCESS;ENDbd;(1’)4.状态发生器参考程序:(答案不唯一)LIBRARYieee;USEieee.std_logic_1164.ALL;ENTITYpgsIS(1’)PORT(rst,clk:INSTD_LOGIC;p:OUTSTD_LOGIC_VECTOR(6DOWNTO0));(2’)ENDpgs;ARCHITECTUREaaOFpgsISTYPEstateIS(s1,s2,s3,s4,s5,s6,s7);SIGNALpstate:state;(2’)BEGINpr1:PROCESS(clk,rst,en)BEGINIFrst='0'THENpstate=s1;ELSIF(clk'eventANDclk='0')THENCASEpstateISWHENs1=pstate=s2;WHENs2=pstate=s3;WHENs3=pstate=s4;WHENs4=pstate=s5;WHENs5=pstate=s6;WHENs6=pstate=s7;WHENs7=pstate=s1;WHENOTHERS=pstate=s1;ENDCASE;ENDIF;ENDIF;ENDPROCESS;(5’)pr2:PROCESS(pstate)BEGINCASEstyleISWHENs1=p=0000000;WHENs2=p=1000001;WHENs3=p=0100010;WHENs4=p=0010100;WHENs5=p=0001010;WHENs6=p=0011100;WHENs7=p=0111110;ENDCASE;ENDPROCESS;ENDaa;(5’)学年:2007-2008一、简答题(25分,共5小题,每小题5分)1.试述EDA软件系统包含那些模块。答:设计输入子模块,设计数据库子模块,分析验证子模块,综合仿真子模块,布局布线子模块等。(每条1’)2.简述PROCESS语句结构的三部分构成,并说明进程语句、顺序语句和信号之间的关系。答:PROCESS语句结构是由三部分构成,即进程说明部分,顺序描述语句部分和敏感信号参数表。(2’)各个进程是并行运行的,无先后之分,必须放在结构体中;顺序语句是按顺序运行的,有先后之分,必须放在进程中;信号放在结构体和进程之间,是用以完成各个进程之间数据交换。(3’)3.简述WITH_SELECT_WHEN选择信号赋值语句和CASE_WHEN顺序语句的异同。答:WHEN_ELSE条件信号赋值语句中无标点,只有最后有分号;必须成对出现;是并行语句,必须放在结构体中。(3’)IF_ELSE顺序语句中有分号;是顺序语句,必须放在进程中。(2’)4.简述信号和变量的区别?答:信号变量赋值符号=:=功能电路的内部连接内部数据交换作用范围全局,进程和进程之间的通信进程的内部行为延迟一定时间后才赋值立即赋值5.简述的MUX+PLUSⅡ的设计流程。(每条1’)答:1,设计输入:图形输入法、波形输入法、文本编辑法等。2,设计检查:在设计编译之前运行编译器网表提取器模块检查文件的错误,更新层次结构的显示,给出错误和警告的信息,以便返回设计输入部分,进行修正。3,设计编译:提供一个集成编译器,在编译器运行前可进行两种仿真功能的选择。4,时序/功能仿真:时序仿真是在考虑了设计项目的具体适配器的各种延时时间的情况下的设计项目的验证方法。5,定时分析:用来分析器件引脚及内部节点间的传输路径延时;时序逻辑的性能及器件内部各种寄存器的建立保持时间。二、阅读分析题(30分,共2小题,第1题20分,第2题10分)1.1).解释带有下划线的语句。(每条2’)答:①定义元件库②输入信号s是两位的输入总线③将输入信号en和s连接赋值给f④敏感信号f的变化将启动进程process⑤其他情况,将输入信号d赋值给op2).用WITH_SELECT_WHEN语句编写上述程序:答:Libraryieee;Useieee.std_logic_1164.all;entityqk_11isport(a,b,c,d,en:instd_logic;s:instd_logic_vector(1downto0);op:outstd_logic);endqk_11;(3’)architecturear_1ofqk_11issignalf:std_logic_vector(2downto0);beginf=en&s;(2’)withfselectop=awhen100,bwhen101,cwhen110,dwhenothers;endar_1;(5’)2、已知三选一电路如图,判断下列程序是否有错误,如有则指出错误所在,并给出完整程序。(10分)libraryieee;useieee.std_logic_1164.all;ENTITYMAXisport(a1,a2,a3,s0,s1:inbit;outy:outbit);endmax;(2’)architectureoneofmaxiscomponentmux21aport(a,b,s:instd_logic;y:outstd_logic);endcomponent;(2’)signaltempstd_log

1 / 17
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功