EDA试卷及答案

申明敬告: 本站不保证该用户上传的文档完整性,不预览、不比对内容而直接下载产生的反悔问题本站不予受理。

文档介绍

EDA试卷及答案

EDA试卷及答案一、单项选择题:(20分)1.IP核在EDA技术和开发中具有十分重要的地位;提供用VHDL等硬件描述语言描述的功能块,但不涉及实现该功能块的具体电路的IP核为_____D_____。A.瘦IP    B.固IP    C.胖IP      D.都不是2.综合是EDA设计流程的关键步骤,在下面对综合的描述中,____D_____是错误的。A.综合就是把抽象设计层次中的一种表示转化成另一种表示的过程;B.综合就是将电路的高级语言转化成低级的,可与FPGA/CPLD的基本结构相映射的网表文件;C.为实现系统的速度、面积、性能的要求,需要对综合加以约束,称为综合约束;D.综合可理解为一种映射过程,并且这种映射关系是唯一的,即综合结果是唯一的。3.大规模可编程器件主要有FPGA、CPLD两类,下列对FPGA结构与工作原理的描述中,正确的是__C__。A.FPGA全称为复杂可编程逻辑器件;B.FPGA是基于乘积项结构的可编程逻辑器件;C.基于SRAM的FPGA器件,在每次上电后必须进行一次配置;D.在Altera公司生产的器件中,MAX7000系列属FPGA结构。4.进程中的信号赋值语句,其信号更新是___C____。A.按顺序完成;B.比变量更快完成;C.在进程的最后完成;D.都不对。5.VHDL语言是一种结构化设计语言;一个设计实体(电路模块)包括实体与结构体两部分,结构体描述_____B______。A.器件外部特性;B.器件的内部功能;C.器件的综合约束;D.器件外部特性与内部功能。6.不完整的IF语句,其综合结果可实现____A____。A.时序逻辑电路  B.组合逻辑电路  C.双向电路  D.三态控制电路7.子系统设计优化,主要考虑提高资源利用率减少功耗(即面积优化),以及提高运行速度(即速度优化);指出下列哪些方法是面积优化_____B____。①流水线设计 ②资源共享 ③逻辑优化④串行化 ⑤寄存器配平⑥关键路径法A.①③⑤                    B.②③④C.②⑤⑥                    D.①④⑥8.下列标识符中,_____B_____是不合法的标识符。A.State0    B.9moon    C.Not_Ack_0   D.signall9.关于VHDL中的数字,请找出以下数字中最大的一个:____A______。A.2#1111_1110#B.n8#276#C.10#170#D.16#E#E110.下列EDA软件中,哪一个不具有逻辑综合功能:____B____。A.Max+PlusIIB.ModelSimC. QuartusIID.Synplify二、EDA名词解释,写出下列缩写的中文(或者英文)含义:(14分)1. LPM        参数可定制宏模块库2. RTL        寄存器传输级3. UART    串口(通用异步收发器)4. ISP        在系统编程5. IEEE        电子电气工程师协会6. ASIC        专用集成电路7. LAB        逻辑阵列块三、VHDL程序填空:(10分)LIBRARYIEEE;                        --8位分频器程序设计USEIEEE.STD_LOGIC_1164.ALL;USEIEEE.STD_LOGIC_UNSIGNED.ALL;ENTITYPULSEIS  PORT(  CLK:INSTD_LOGIC;          D :INSTD_LOGIC_VECTOR(7DOWNTO0);        FOUT:OUTSTD_LOGIC  );END;ARCHITECTUREoneOFPULSEIS  SIGNAL  FULL:STD_LOGIC;BEGIN    P_REG:PROCESS(CLK)        VARIABLECNT8:STD_LOGIC_VECTOR(7DOWNTO0);BEGIN    IFCLK’EVENTANDCLK=‘1’THEN     IFCNT8="11111111"THEN      CNT8:=D;  --当CNT8计数计满时,输入数据D被同步预置给计数器CNT8    FULL<='1';--同时使溢出标志信号FULL输出为高电平              ELSE  CNT8:=CNT8+1;  --否则继续作加1计数    FULL<='0';    --且输出溢出标志信号FULL为低电平      ENDIF;  ENDIF;  ENDPROCESSP_REG;  P_DIV:PROCESS(FULL)  VARIABLECNT2:nSTD_LOGIC; BEGIN IFFULL'EVENTANDFULL='1'THEN    CNT2<=NOTCNT2;--如果溢出标志信号FULL为高电平,D触发器输出取反  IFCNT2='1'THENFOUT<='1';  ELSE    FOUT<='0';   ENDIF;  ENDIF;  ENDPROCESSP_DIV;END;四、VHDL程序改错:(10分)01    LIBRARYIEEE;02    USEIEEE.STD_LOGIC_1164.ALL;03    USEIEEE.STD_LOGIC_UNSIGNED.ALL;04    ENTITYLED7CNTIS05        PORT(CLR :IN  STD_LOGIC;06            CLK:INSTD_LOGIC;07            LED7S:OUTSTD_LOGIC_VECTOR(6DOWNTO0)  );08    ENDLED7CNT;    09    ARCHITECTUREoneOFLED7CNTIS10        SIGNALTMP:STD_LOGIC_VECTOR(3DOWNTO0);11    BEGIN        12        CNT:PROCESS(CLR,CLK)13        BEGIN      14            IFCLR='1'THEN15                TMP<=0;16            ELSEIFCLK'EVENTANDCLK='1'THEN17                TMP<=TMP+1;18            ENDIF;  19        ENDPROCESS;20        OUTLED:PROCESS(TMP)21        BEGIN      22            CASE  TMP  IS23                WHEN"0000"=>  LED7S<="0111111";24                WHEN"0001"=>  LED7S<="0000110";25                WHEN"0010"=>  LED7S<="1011011";26                WHEN"0011"=>  LED7S<="1001111";27                WHEN"0100"=>  LED7S<="1100110";28                WHEN"0101"=>  LED7Sn<="1101101";29                WHEN"0110"=>  LED7S<="1111101";30                WHEN"0111"=>  LED7S<="0000111";31                WHEN"1000"=>  LED7S<="1111111";32                WHEN"1001"=>  LED7S<="1101111";33               WHENOTHERS=>  LED7S<=(OTHERS=>'0');34            ENDCASE;35        ENDPROCESS;36    ENDone;在程序中存在两处错误,试指出,并说明理由:提示:在MAX+PlusII10.2上编译时报出的第一条错误为:Error:Line15:File***/led7cnt.vhd:Typeerror:typeinwaveformelementmustbe“std_logic_vector”第15行,错误:整数0不能直接赋值给TMP矢量改正:TMP<=(OTHERS=>‘0’);第16行,错误:ELSEIF缺少一条对应的ENDIF语句改正:将ELSEIF改为关键字ELSIF第2页  共5页五、VHDL程序设计:(16分)设计一数据选择器MUX,其系统模块图和功能表如下图所示。试采用下面三种方式中的两种来描述该数据选择器MUX的结构体。 (a)用if语句。 (b)用case语句。 (c)用whenelse语句。Libraryieee;Useieee.std_logic_1164.all;Entitymymuxis   Port( sel:instd_logic_vector(1downto0);  --选择信号输入      Ain,Bin:instd_logic_vector(1downto0);  --数据输入      Cout:outstd_logic_vector(1downto0));Endmymux;ArchitectureoneofmymuxisBegin    Process(sel,ain,bin)    Begin        Ifsel=“00”thencout<=ainandbin;        Elsifsel=“01”thencout<=ainxorbin;        Elsifsel=“10”thencout<=notnain;        Elsecout<=notbin;        Endif;    Endprocess;Endone;ArchitecturetwoofmymuxisBegin    Process(sel,ain,bin)    Begin        Caseselis        when“00”=>cout<=ainandbin;        when“01”=>cout<=ainxorbin;        when“10”=>cout<=notain;        whenothers=>cout<=notbin;        Endcase;    Endprocess;Endtwo;ArchitecturethreeofmymuxisBegin    Cout<=ainandbinwhensel=“00”else            Ainxorbinwhensel=“01”else            Notainwhensel=“10”elsenotbin;Endthree;六、根据原理图写出相应的VHDL程序:(10分)Libraryieee;Useieee.std_logic_1164.all;Entitymyciris    Port(A,B,clk:instd_logic;            Qout :outstd_logic);Endmycir;Architecturebehaveofmyciris    Signalta,tb,tc;Begin    tc<=tanandtb;    Process(clk)    Begin        Ifclk’eventandclk=‘1’then            Ta<=A;            Tb<=B;        Endif;    Endprocess;    Process(clk,tc)    Begin        Ifclk=‘1’then            Qout<=nc;        Endif;    Endprocess;Endbehave;      
查看更多

相关文章

您可能关注的文档