
EDA期末考试试卷及答案(共4页).doc
4页精选优质文档-----倾情为你奉上赣 南 师 范 学 院 2010—2011学年第一学期期末考试试卷(A卷)(闭卷)年级 2008 专业 电子科学与技术 (本)课程名称 EDA技术基础 题号一二三四五总分得分阅卷人注意事项:1、教师出题时请勿超出边界虚线;2、学生答题前将密封线外的内容填写清楚,答题不得超出密封线;3、答题请用蓝、黑钢笔或圆珠笔一、单项选择题(30分,每题2分)1.以下关于适配描述错误的是 B A.适配器的功能是将综合器产生的网表文件配置于指定的目标器件中,使之产生最终的下载文件B.适配所选定的目标器件可以不属于原综合器指定的目标器件系列C.适配完成后可以利用适配所产生的仿真文件作精确的时序仿真D.通常,EDAL软件中的综合器可由专业的第三方EDA公司提供,而适配器则需由FPGA/CPLD供应商提供2.VHDL语言是一种结构化设计语言;一个设计实体(电路模块)包括实体与结构体两部分,结构体描述 D A.器件外部特性 B.器件的综合约束C.器件外部特性与内部功能 D.器件的内部功能3.下列标识符中, B 是不合法的标识符。
A.State0 B.9moon C.Not_Ack_0 D.signall4.以下工具中属于FPGA/CPLD集成化开发工具的是 D A.ModelSim B.Synplify Pro C.MATLAB D.QuartusII5.进程中的变量赋值语句,其变量更新是 A A.立即完成 B.按顺序完成C.在进程的最后完成 D.都不对 6.以下关于CASE语句描述中错误的是 A A.CASE语句执行中可以不必选中所列条件名的一条B.除非所有条件句的选择值能完整覆盖CASE语句中表达式的取值,否则最末一个条件句的选择必须加上最后一句“WHEN OTHERS=><顺序语句>”C.CASE语句中的选择值只能出现一次D. WHEN条件句中的选择值或标识符所代表的值必须在表达式的取值范围7.以下哪个程序包是数字系统设计中最重要最常用的程序包 B A.STD_LOGIC_ARITH B.STD_LOGIC_1164 C.STD_LOGIC_UNSIGNED D.STD_LOGIC_SIGNED8.基于EDA软件的FPGA / CPLD设计流程为:原理图/HDL文本输入→ A →综合→适配→时序仿真→编程下载→硬件测试。
A.功能仿真 B.逻辑综合 C.配置 D.引脚锁定 9.不完整的IF语句,其综合结果可实现 D A.三态控制电路 B.条件相或的逻辑电路 C.双向控制电路 D.时序逻辑电路10.下列语句中,属于并行语句的是 A A.进程语句 B.IF语句 C.CASE语句 D.FOR语句11.综合是EDA设计流程的关键步骤,综合就是把抽象设计层次中的一种表示转化成另一种表示的过程;在下面对综合的描述中, C 是错误的A.综合就是将电路的高级语言转化成低级的,可与FPGA / CPLD的基本结构相映射的网表文件B.综合可理解为,将软件描述与给定的硬件结构用电路网表文件表示的映射过程,并且这种映射关系不是唯一的C.综合是纯软件的转换过程,与器件硬件结构无关D.为实现系统的速度、面积、性能的要求,需要对综合加以约束,称为综合约束12.CPLD的可编程是主要基于什么结构 D A.查找表(LUT) B.ROM可编程C.PAL可编程 D.与或阵列可编程13.以下器件中属于Altera 公司生产的是 B A.ispLSI系列器件 B.MAX系列器件C.XC9500系列器件 D.Virtex系列器件14. 在VHDL语言中,下列对时钟边沿检测描述中,错误的是 D A.if clkevent and clk = 1 then B.if clkstable and not clk = 1 then C.if rising_edge(clk) then D.if not clkstable and clk = 1 then15.以下关于状态机的描述中正确的是 B A.Moore型状态机其输出是当前状态和所有输入的函数B.与Moore型状态机相比,Mealy型的输出变化要领先一个时钟周期C.Mealy型状态机其输出是当前状态的函数D.以上都不对二、EDA名词解释,写出下列缩写的中文含义(10分,每题2分)1.FPGA:现场可编程门阵列 2.HDL: 硬件描述语言3.LE: 逻辑单元4.FSM: 有限状态机5.SOPC: 可编程片上系统三、程序填空题(20分,每空2分)以下是一个模为60(0~59)的8421BCD码加法计数器VHDL描述,请补充完整LIBRARY IEEE; Use IEEE.std_logic_1164.all ;ENTITY ta IS PORT ( CLK : IN STD_LOGIC ; SHI : OUT INTEGER RANGE 0 TO 9; GE: OUT INTEGER RANGE 0 TO 9) ; END ; ARCHITECTURE bhv OF ta ISSIGNAL SHI1,GE1 : INTEGER RANGE 0 TO 9 ; BEGIN PROCESS ( CLK ) BEGIN IF CLK’EVENT AND CLK=’1’ then IF GE1 = 9 THEN GE1 <= 0 ; IF SHI1=5 THEN SHI1<=0; ELSE SHI1<=SHI+1 ; END IF; ELSE GE1<=GE1+1 ; END IF; END IF ; END PROCESS ; GE <= GE1; SHI<=SHI1 ;END bhv;四、程序改错题(仔细阅读下列程序后回答问题,12分)1 LIBRARY IEEE;2 USE IEEE.STD_LOGIC_1164.ALL;3 ENTITY ga IS 4 PORT ( CLK : IN STD_LOGIC ;5 Q : OUT STD_LOGIC_VECTOR(3 DOWNTO 0)) ; 6 END gb; 7 ARCHITECTURE bhv OF ga IS8 SIGNAL Q1 : STD_LOGIC_VECTOR(3 DOWNTO 0); 9 BEGIN 10 PROCESS (CLK) 11 BEGIN12 IF RISING_EDGE(CLK) begin 13 IF Q1 < “1001” THEN14 Q1 <= Q1 + 1 ; 15 ELSE 16 Q1 <= (OTHERS => 0); 17 END IF;18 END IF; 19 END PROCESS ;20 Q <= Q1;21 END bhv;程序编译时,提示的错误为:Error: Line 12: File e:\mywork\test\ga.vhd: VHDL syntax error: If statement must have THEN, but found BEGIN insteadError: Line 14: File e:\mywork\test\ga.vhd:Subprogram error:can’t interpret subprogram call请回答问题:在程序中存在两处错误,试指出并修改正确(如果是缺少语句请指出应该插入的行号)答:(1)12行 begin 改为 then(2)第2行和第3行见加 USE IEEE.STD_LOGIC_UNSIGNED.ALL;五、程序设计题(28分)1.试用VHDL描述一个外部特性如图所示的数据选择器,S为控制端口。
10分)Library IEEE;Use IEEE.std_logic_1164.all;Entity sjxz ISPort(A,B,S:in std_logic; Q:out std_logic);END entity sjxz;Architecture bhv of sjxz ISProcess(S)BeginIF S=’0’ Then Q<=A; ELSE Q<=B;END IF;END PROCESS’END bhv; 2.下图为某一状态机对应的状态图,试用VHDL语言描述这一状态机18分)Library IEEE;Use IEEE.std_logic_1164.all;Use IEEE.std_logic_unsigned.all;Entity FSM1 ISPORT(clk,rst:in std_logic; In1:in std_logic; Out1:out std_logic_vector(3 downto 0));END entity FSM1;Architecture bhv of FSM1 ISTYPE FSM_ST IS(S0,S1,S2,S3);Singnal C_ST:FSM_ST;Begin Process(clk,rst)BeginIF rst=’1’ then C_ST<=S0;ELSIF clk’event AND clk=’1’thenCASE C_ST ISWhen S0=>IF In1=’1’ then C_ST<=S1; ELSE C_ST<=S0; END IF; Out1<=”0000”;When S1=>IF In1=’0’ then C_ST<=S2; ELSE C_ST<=S1;。












