还剩10页未读,继续阅读
本资源只提供10页预览,全部文档请下载后查看!喜欢就下载吧,查找使用更方便
文本内容:
1、选择填空1.下列是EDA技术应用时涉及的步骤A.原理图/HDL文本输入;B.适配;C.时序仿真;D.编程下载;E.硬件测试;F.综合请选择合适的项构成基于EDA软件的FPGA/CPLD设计流程A→______→_____→_______→D→_______2.PLD的可编程主要基于A.LUT结构或者B.乘积项结构请指出下列两种可编程逻辑基于的可编程结构FPGA基于_________CPLD基于_________3.在状态机的具体实现时,往往需要针对具体的器件类型来选择合适的状态机编码对于A.FPGAB.CPLD两类器件一位热码状态机编码方式适合于_______器件;顺序编码状态机编码方式适合于________器件;4.下列优化方法中那两种是速度优化方法______、____A.资源共享B.流水线C.串行化D.关键路径优化单项选择题5.综合是EDA设计流程的关键步骤,综合就是把抽象设计层次中的一种表示转化成另一种表示的过程;在下面对综合的描述中,______是错误的A.综合就是将电路的高级语言转化成低级的,可与FPGA/CPLD的基本结构相映射的网表文件;B.为实现系统的速度、面积、性能的要求,需要对综合加以约束,称为综合约束;C.综合可理解为,将软件描述与给定的硬件结构用电路网表文件表示的映射过程,并且这种映射关系不是唯一的D.综合是纯软件的转换过程,与器件硬件结构无关;6.嵌套的IF语句,其综合结果可实现______A.条件相与的逻辑B.条件相或的逻辑C.条件相异或的逻辑D.三态控制电路7.在一个VHDL设计中Idata是一个信号,数据类型为std_logic_vector,试指出下面那个赋值语句是错误的A.idata=“00001111”;B.idata=b”0000_1111”;C.idata=X”AB”;D.idata=B”21”;8.在VHDL语言中,下列对时钟边沿检测描述中,错误的是_____A.ifclk’eventandclk=‘1’thenB.iffalling_edgeclkthenC.ifclk’eventandclk=‘0’thenD.ifclk’stableandnotclk=‘1’then9.请指出AlteraCyclone系列中的EP1C6Q240C8这个器件是属于_____A.ROMB.CPLDC.FPGAD.GAL
10.大规模可编程器件主要有FPGA、CPLD两类,下列对CPLD结构与工作原理的描述中,正确的是_______A.CPLD是基于查找表结构的可编程逻辑器件;B.CPLD即是现场可编程逻辑器件的英文简称;C.早期的CPLD是从GAL的结构扩展而来;D.在Xilinx公司生产的器件中,XC9500系列属CPLD结构
11.综合是EDA设计流程的关键步骤,综合就是把抽象设计层次中的一种表示转化成另一种表示的过程;在下面对综合的描述中,_________是正确的A.综合就是将电路的高级语言转化成低级的,可与FPGA/CPLD的基本结构相映射的网表文件.B.综合是纯软件的转换过程,与器件硬件结构无关;C.为实现系统的速度、面积、性能的要求,需要对综合加以约束,称为强制综合D.综合可理解为,将软件描述与给定的硬件结构用电路网表文件表示的映射过程,并且这种映射关系是唯一的;12.IP核在EDA技术和开发中具有十分重要的地位,IP分软IP、固IP、硬IP;下列所描述的IP核中,对于硬IP的正确描述为__________A.提供用VHDL等硬件描述语言描述的功能块,但不涉及实现该功能块的具体电路;B.提供设计的最总产品----模型库;C.以网表文件的形式提交用户,完成了综合的功能块;D.都不是
13.基于EDA软件的FPGA/CPLD设计流程为原理图/HDL文本输入→________→综合→适配→__________→编程下载→硬件测试
①功能仿真
②时序仿真
③逻辑综合
④配置
⑤引脚锁定A.
③①B.
⑤②C.
④⑤D.
①②
14.下面对利用原理图输入设计方法进行数字电路系统设计,那一种说法是不正确的______A.原理图输入设计方法直观便捷,但不适合完成较大规模的电路系统设计;B.原理图输入设计方法一般是一种自底向上的设计方法;C.原理图输入设计方法无法对电路进行功能描述;D.原理图输入设计方法也可进行层次化设计
15.在VHDL语言中,下列对进程(PROCESS)语句的语句结构及语法规则的描述中,不正确的是_______A.PROCESS为一无限循环语句;敏感信号发生更新时启动进程,执行完成后,等待下一次进程启动B.敏感信号参数表中,不一定要列出进程中使用的所有输入信号;C.进程由说明部分、结构体部分、和敏感信号三部分组成;D.当前进程中声明的变量不可用于其他进程
16.嵌套使用IF语句,其综合结果可实现________A.带优先级且条件相与的逻辑电路;B.条件相或的逻辑电路;C.三态控制电路;D.双向控制电路
17.电子系统设计优化,主要考虑提高资源利用率减少功耗----即面积优化,以及提高运行速度----即速度优化;指出下列那种方法不属于速度优化___________A.流水线设计B.串行化C.关键路径法D.寄存器配平
18.在一个VHDL设计中idata是一个信号,数据类型为integer,数据范围0to127,下面哪个赋值语句是正确的________A.idata:=32;B.idata=16#A0#;C.idata=16#7#E1;D.idata:=B#1010#;
20.下列那个流程是正确的基于EDA软件的FPGA/CPLD设计流程()A.原理图/HDL文本输入→适配→综合→功能仿真→编程下载→硬件测试B.原理图/HDL文本输入→功能仿真→综合→适配→编程下载→硬件测试C.原理图/HDL文本输入→功能仿真→综合→编程下载→→适配硬件测试;D.原理图/HDL文本输入→功能仿真→适配→编程下载→综合→硬件测试
21.综合是EDA设计流程的关键步骤,综合就是把抽象设计层次中的一种表示转化成另一种表示的过程;在下面对综合的描述中,_________是错误的A.综合就是将电路的高级语言转化成低级的,可与FPGA/CPLD的基本结构相映射的网表文件;B.为实现系统的速度、面积、性能的要求,需要对综合加以约束,称为综合约束;C.综合是纯软件的转换过程,与器件硬件结构无关;D.综合可理解为,将软件描述与给定的硬件结构用电路网表文件表示的映射过程,并且这种映射关系不是唯一的
22.CPLD的可编程是主要基于什么结构()A.查找表(LUT);B.ROM可编程;C.PAL可编程;D.与或阵列可编程;
23.IP核在EDA技术和开发中具有十分重要的地位,以HDL方式提供的IP被称为( )A.硬IP;B.固IP;C.软IP;D.都不是;
24.流水线设计是一种优化方式,下列哪一项对资源共享描述正确_ A.面积优化方法,不会有速度优化效果B.速度优化方法,不会有面积优化效果C.面积优化方法,可能会有速度优化效果D.速度优化方法,可能会有面积优化效果
25.在VHDL语言中,下列对时钟边沿检测描述中,错误的是_______A.ifclk’eventandclk=‘1’thenB.iffalling_edgeclkthenC.ifclk’eventandclk=‘0’thenD.ifclk’stableandnotclk=‘1’then7状态机编码方式中,其中_________占用触发器较多,但其实现比较适合FPGA的应用A.状态位直接输出型编码B.顺序编码C.一位热码编码D.以上都不是
26.子系统设计优化,主要考虑提高资源利用率减少功耗(即面积优化),以及提高运行速度(即速度优化);指出下列那种方法是速度优化_________A.流水线设计B.资源共享C.逻辑优化D.串行化
27.不完整的IF语句,其综合结果可实现________A.时序电路B.双向控制电路C.条件相或的逻辑电路D.三态控制电路28.在一个VHDL设计中Idata是一个信号,数据类型为std_logic_vector,试指出下面那个赋值语句是错误的( )A.idata=“00001111”B.idata=b”0000_1111”;C.idata=X”AB”D.idata=16”01”;29.大规模可编程器件主要有FPGA、CPLD两类,下列对CPLD结构与工作原理的描述中,正确的是____A.CPLD即是现场可编程逻辑器件的英文简称;B.CPLD是基于查找表结构的可编程逻辑器件;C.早期的CPLD是从GAL的结构扩展而来;D.在Altera公司生产的器件中,FLEX10K系列属CPLD结构;
30.综合是EDA设计流程的关键步骤,综合就是把抽象设计层次中的一种表示转化成另一种表示的过程;在下面对综合的描述中,____是错误的A.综合就是将电路的高级语言转化成低级的,可与FPGA/CPLD的基本结构相映射的网表文件;B.综合可理解为,将软件描述与给定的硬件结构用电路网表文件表示的映射过程,并且这种映射关系不是唯一的;C.为实现系统的速度、面积、性能的要求,需要对综合加以约束,称为综合约束D.综合是纯软件的转换过程,与器件硬件结构无关;
31.嵌套使用IF语句,其综合结果可实现_____A.带优先级且条件相与的逻辑电路;B.条件相或的逻辑电路;C.三态控制电路;D.双向控制电路
32.在一个VHDL设计中Idata是一个信号,数据类型为std_logic_vector,试指出下面____赋值语句是错误的A.idata=“00001111”;B.idata=B”0000_1111”;C.idata=X”AB”;D.idata=B”21”;
33.执行QUARTUSⅡ的命令,可以在底层设计时创建各模块元件的图形符号A.CreateDefaultSymbolB.SimulatorC.CompilerD.TimingAnalyzer
34.在IEEE预定义的标准逻辑位数据中„X‟表示A.强未知的B.强0C.强1D.高阻态
35.在下列操作中最高优先级的运算操作符是A.NANDB.ORC.NOTD.XOR
36.QUARTUSⅡ的图形设计文件类型是A..scfB..gdfC..vhdD..v
37.在VHDL中用来把特定的结构体关联到一个确定的实体A.输入B.输出C.综合D.配置
38.不完整条件语句,其综合结果可实现____A.时序逻辑电路B.组合逻辑电路C.双向电路D.三态控制电路
二、填空题
1.在VHDL程序中,__________和_________是是两个必须的基本结构
2.在VHDL的端口声明语句中,端口方向包括、、和
3.VHDL的数据对象分为___________、____________和___________3类
4.VHDL的进程(process)语句是由组成的,但其本身却是
5.VHDL的操作符包括、、和
6.VHDL的顺序语句只能出现在、和中,是按照书写顺序自上而下,一条一条执行
7.QUARTUSⅡ支持、、等不同编辑方式
8.将软件描述与硬件结构联系的步骤称为______________
9.指定设计电路的输入/输出端口与目标芯片引脚的连接关系的过程称为
10.VHDL的描述风格通常可以归纳为___行为描述_____、___数据流___和___结构描述_____3种
11.当前最流行的并成为IEEE标准的硬件描述语言包括和
12.VHDL的块语句是并行语句,它的内部是由_____________语句构成的个进程之间进行并行联系是通过________来实现的
14.variable只能在____进程___和___子程序_____中使用,signal的使用和定义的范围是___实体___、___结构体_____和__程序包____
15.IEEE库中预定义的标准逻辑位的逻辑共有________种
3、EDA名词解释,写出下列缩写的中文(或者英文)含义
1.FPGA现场可编程门阵列
2.EDA电子设计自动化
3.EAB嵌入式阵列块
4.RTL寄存器传输级
5.VHDL超高速集成电路硬件描述语言
6.ASIC专用集成电路
7.FPGA现场可编程门阵列
8.CPLD复杂可编程逻辑器件
9.EDA电子设计自动化
10.IP知识产权核
11.SOC单芯片系统
四、VHDL程序改错
(一)仔细阅读下列程序,回答问题LIBRARYIEEE;--1USEIEEE.STD_LOGIC_
1164.ALL;--2ENTITYLED7SEGIS--3PORTA:INSTD_LOGIC_VECTOR3DOWNTO0;--4CLK:INSTD_LOGIC;--5LED7S:OUTSTD_LOGIC_VECTOR6DOWNTO0;--6ENDLED7SEG;--7ARCHITECTUREoneOFLED7SEGIS--8SIGNALTMP:STD_LOGIC;--9BEGIN--10SYNC:PROCESSCLKA--11BEGIN--12IFCLKEVENTANDCLK=1THEN--13TMP=A;--14ENDIF;--15ENDPROCESS;--16OUTLED:PROCESSTMP--17BEGIN--18CASETMPIS--19WHEN0000=LED7S=0111111;--20WHEN0001=LED7S=0000110;--21WHEN0010=LED7S=1011011;--22WHEN0011=LED7S=1001111;--23WHEN0100=LED7S=1100110;--24WHEN0101=LED7S=1101101;--25WHEN0110=LED7S=1111101;--26WHEN0111=LED7S=0000111;--27WHEN1000=LED7S=1111111;--28WHEN1001=LED7S=1101111;--29ENDCASE;--30ENDPROCESS;--31ENDone;1.在程序中9行、29行存在两处错误,试指出,并说明理由2.修改相应行的程序(如果是缺少语句请指出大致的行数)错误1行号9程序改为SIGNALTMP:STD_LOGIC_VECTOR3DOWNTO0;错误2行号29程序改为这行后添加whenothers=null;
(二)在程序中存在两处错误,试指出,并说明理由在编译时,提示的第一条错误为Error:Line12:Filee:\mywork\test\cnt
4.vhd:VHDLsyntaxerror:IfstatementmusthaveTHENbutfoundBEGINinstead12行,IF语句对应的关键字是then而非begin14行,Q1是矢量,不能直接和整数1相加,需要使用重载函数
1.修改相应行的程序(如果是缺少语句请指出大致的行数)错误1行号12程序改为BEGIN改为THEN错误2行号3程序改为USEIEEE.STD_LOGIC_UNSIGNED.ALL;1LIBRARYIEEE;2USEIEEE.STD_LOGIC_
1164.ALL;34ENTITYCNT4IS5PORTCLK:INSTD_LOGIC;6Q:OUTSTD_LOGIC_VECTOR3DOWNTO0;7ENDCNT4;8ARCHITECTUREbhvOFCNT4IS9SIGNALQ1:STD_LOGIC_VECTOR3DOWNTO0;10BEGIN11PROCESSCLKBEGIN12IFRISING_EDGECLKbegin13IFQ115THEN14Q1=Q1+1;15ELSE16Q1=OTHERS=0;17ENDIF;18ENDIF;19ENDPROCESS;20Q=Q1;21ENDbhv;
(三)libraryieee;entitytestisportclk:instd_logic;count:outstd_logic_vector3downto0;endtest;architecturebehoftestisbeginprocessclkbeginifclk‟eventandclk=‟1‟thencount=count+1;endif;endbeh;
(四)LIBRARYieee;USEieee.std_logic_
1164.all;USEieee.std_logic_arith.all;ENTITYmux4ISports1s2:instd_logic;abcd:instd_logic;muxout:outstd_logic;ENDENTITYmux4;ARCHITECTURErtlOFmux4ISBEGINcases1s2iswhen00=muxout=a;when01=muxout=b;when10=muxout=c;when“11”=muxout=d;endcase;ENDARCHITECTURErtl;
5、VHDL程序填空
(一)--8位分频器程序设计LIBRARYIEEE;USEIEEE.STD_LOGIC_
1164.ALL;USEIEEE._____________________.ALL;ENTITYPULSEISPORTCLK:INSTD_LOGIC;D:IN_________________7DOWNTO0;FOUT:OUTSTD_LOGIC;END;ARCHITECTUREoneOF____________ISSIGNALFULL:STD_LOGIC;BEGINP_REG:PROCESSCLK________________CNT8:STD_LOGIC_VECTOR________DOWNTO0;BEGINIF___________________________THENIFCNT8=11111111THENCNT8____________;--当CNT8计数计满时,输入数据D被同步预置给计数器CNT8FULL=1;--同时使溢出标志信号FULL输出为高电平ELSECNT8___________________;--否则继续作加1计数FULL=0;--且输出溢出标志信号FULL为低电平ENDIF;ENDIF;ENDPROCESSP_REG;P_DIV:PROCESS____________VARIABLECNT2:STD_LOGIC;BEGINIFFULLEVENTANDFULL=1THENCNT2________________;--如果溢出标志信号FULL为高电平,D触发器输出取反IFCNT2=1THENFOUT=1;ELSEFOUT=0;ENDIF;ENDIF;ENDPROCESSP_DIV;END;
(二)下面程序是一个10线-4线优先编码器的VHDL描述,试补充完整LIBRARY__IEEE________;USEIEEE.________STD_LOGIC_1164_____________.ALL;ENTITYcoderISPORTdin:INSTD_LOGIC_VECTOR____9DOWNTO0________________;output:_____OUT_____STD_LOGIC_VECTOR3DOWNTO0;ENDcoder;ARCHITECTUREbehavOF________CODER_____ISSIGNALSIN:STD_LOGIC_VECTOR3DOWNTO0;BEGINPROCESS_____DIN______BEGINIFdin9=0THENSIN=1001;_ELSIFdin8=’0’_________________THENSIN=1000;ELSIFdin7=0THENSIN=0111;ELSIFdin6=0THENSIN=0110;ELSIFdin5=0THENSIN=0101;ELSIFdin4=0THENSIN=0100;ELSIFdin3=0THENSIN=0011;ELSIFdin2=0THENSIN=0010;ELSIFdin1=0THENSIN=0001;ELSE_SIN=“0000”______________;_____ENDIF___________ENDPROCESS;__Output=sin_____________;ENDbehav;
六、写VHDL程序
1.数据选择器MUX其系统模块图和功能表如下图所示试采用下面四种方式中的两种来描述该数据选择器MUX的结构体MUXSEL1:0AIN1:0BIN1:0COUT1:0SELCOUT00011011OTHERSAorBAxorBAnorBAandB“XX”a用if语句 b用case语句c用whenelse语句d用withselect语句Libraryieee;Useieee.std_logic_
1164.all;EntitymymuxisPortsel:instd_logic_vector1downto0;--选择信号输入AinBin:instd_logic_vector1downto0;--数据输入Cout:outstd_logic_vector1downto0;Endmymux;ArchitectureoneofmymuxisBeginProcessselainbinBeginIfsel=“00”thencout=ainorbin;Elsifsel=“01”thencout=ainxorbin;Elsifsel=“10”thencout=ainandbin;Elsecout=ainnorbin;Endif;Endprocess;Endone;ArchitecturetwoofmymuxisBeginProcessselainbinBeginCaseseliswhen“00”=cout=ainorbin;when“01”=cout=ainxorbin;when“10”=cout=ainandbin;whenothers=cout=ainnorbin;Endcase;Endprocess;Endtwo;
2.看下面原理图,写出相应VHDL描述LIBARRYIEEE;USEIEEE.STD_LOGIC_
1164.ALL;ENTITYMYCIRISPORTXINCLK:INSTD_LOGIC;YOUT:OUTSTD_LOGIC;ENDMYCIR;ARCHITECTUREONEOFMYCIRISSIGNALABC;BEGINB=XINORA;PROCESSCLKBEGINIFCLK’EVENTANDCLK=‘1’THENA=C;C=B;ENDIF;ENDPROCESS;YOUT=C;ENDONE;
3.看下面原理图,写出相应VHDL描述Libraryieee;Useieee.std_logic_
1164.all;EntitymycirisPortainbinclk:instd_logic;Cout:outstd_logic;Endmycir;ArchitectureoneofmycirisSignaltbtc std_logic;beginProcessclkbeginIfclk’eventandclk=‘1’thentb=bin;endif;Endprocess;ProcessclktcbeginIfclk=‘1’thencout=tc;endif;Endprocess;Tc=ainxortb;Endone;
4.若状态机仿真过程中出现毛刺现象,应如何消除;试指出两种方法,并简单说明其原理方法1,添加辅助进程对输出数据进行锁存方法2,将双进程状态机改写为单进程状态机,其输出也是锁存过了,故能消除毛刺方法3,使用状态位直接输出型状态机编码方式,其输出直接由当前状态输出,也没有毛刺。