配色: 字号:
EDA期末试卷及答案
2023-07-16 | 阅:  转:  |  分享 
  
EDA期末试卷

一、填空题

1.一般把EDA技术的发展分为 MOS时代、 CMOS

代和 ASIC 三个阶段。

2.EDA设计流程包括设计输入、设计实现、实际设计检验和下载

编程四个步骤。

3.EDA设计输入主要包括图形输入、 HDL文本输入和状态机输

入。

4.时序仿真是在设计输入完成之后,选择具体器件并完成布局、布

线之后进行的时序关系仿真,因此又称为功能仿真。

5.VHDL的数据对象包括变量、常量和信号,它们是用来存放各

种类型数据的容器。

6.图形文件设计结束后一定要通过仿真,检查设计文件是否正确。

7.以EDA方式设计实现的电路设计文件,最终可以编程下载

到 FPGA和 CPLD芯片中,完成硬件设计和验证。

8.MAX+PLUS的文本文件类型是(后缀名) .VHD。

9.在PC上利用VHDL进行项目设计,不允许在根目录下进

行,必须在根目录为设计建立一个工程目录(即文件夹)。

10.VHDL源程序的文件名应与实体名相同,否则无法通过编

译。

二、选择题:。

11.在EDA工具中,能完成在目标系统器件上布局布线软件称为

(C)

A.仿真器 B.综合器 C.适配器 D.下载器

12.在执行MAX+PLUSⅡ的(D)命令,可以精确分析设计电路

输入与输出波形间的延时量。

A .Create default symbol B. Simulator

C. Compiler D.Timing Analyzer

13.VHDL常用的库是(A)

A. IEEE B.STD C. WORK D. PACKAGE

14.下面既是并行语句又是串行语句的是( C)

A.变量赋值 B.信号赋值 C.PROCESS语句 D.WHEN…ELSE

语句

15.在VHDL中,用语句(D)表示clock的下降沿。

A. clock’EVENT B. clock’EVENT AND clock=’1’

C. clock=’0’ D. clock’EVENT AND clock=’0’



16. IP核在EDA技术和开发中具有十分重要的地位;提供用VHDL

等硬件描述语言描述的功能块,但不涉及实现该功能块的具体电路的

IP核为__________。D

A .瘦IP B.固IP C.胖IP D.都不是



17.综合是EDA设计流程的关键步骤,在下面对综合的描述中,

_________是错误的。D

A.综合就是把抽象设计层次中的一种表示转化成另一种表示的过

程;

B.综合就是将电路的高级语言转化成低级的,可与FPGA / CPLD的

基本结构相映射的网表文件;

C.为实现系统的速度、面积、性能的要求,需要对综合加以约束,

称为综合约束;

D.综合可理解为一种映射过程,并且这种映射关系是唯一的,即综

合结果是唯一的。



18大规模可编程器件主要有FPGA、CPLD两类,下列对FPGA结构与

工作原理的描述中,正确的是__C__。

A. FPGA全称为复杂可编程逻辑器件;

B. FPGA是基于乘积项结构的可编程逻辑器件;

C.基于SRAM的FPGA器件,在每次上电后必须进行一次配置;

D.在Altera公司生产的器件中,MAX7000系列属FPGA结构。



19进程中的信号赋值语句,其信号更新是___C____。

A.按顺序完成;

B.比变量更快完成;

C.在进程的最后完成;

D.都不对。

20. VHDL语言是一种结构化设计语言;一个设计实体(电路模块)

包括实体与结构体两部分,结构体描述___________。B

A.器件外部特性;

B.器件的内部功能;

C.器件的综合约束;

D.器件外部特性与内部功能。



21.不完整的IF语句,其综合结果可实现________。A

A.时序逻辑电路 B.组合逻辑电路

C.双向电路 D.三态控制电路



22.子系统设计优化,主要考虑提高资源利用率减少功耗(即面积

优化),以及提高运行速度(即速度优化);指出下列哪些方法是面

积优化_________。B

①流水线设计 ②资源共享 ③逻辑优化 ④串行化 ⑤寄存器配平 ⑥

关键路径法

A. ①③⑤ B. ②③④

C. ②⑤⑥ D. ①④⑥



23下列标识符中,__________是不合法的标识符。B

A. State0 B. 9moon C. Not_Ack_0 D. signall



24关于VHDL中的数字,请找出以下数字中最大的一个:__________。

A

A. 2#1111_1110#

B. 8#276#

C. 10#170#

D. 16#E#E1



25.下列EDA软件中,哪一个不具有逻辑综合功能:________。B

A. Max+Plus II

B. ModelSim

C. Quartus II

D. Synplify



三、EDA名词解释,写出下列缩写的中文(或者英文)含义:

16. EDA:电子设计自动化

17.VHDL和FPGA:超高速硬件描述语言现场可编程门阵列

18.元件例化

1. LPM参数可定制宏模块库

2. RTL寄存器传输级

3. UART串口(通用异步收发器)

4. ISP在系统编程

5. IEEE电子电气工程师协会

6. ASIC专用集成电路

7. LAB逻辑阵列块

四、VHDL程序填空:(10分)

LIBRARY IEEE; -- 8位分频器程序设计

USE IEEE.STD_LOGIC_1164.ALL;

USE IEEE.STD_LOGIC_UNSIGNED.ALL;

ENTITY PULSE IS

PORT ( CLK : IN STD_LOGIC;

D : IN STD_LOGIC_VECTOR (7 DOWNTO 0);

FOUT : OUT STD_LOGIC );

END;

ARCHITECTURE one OF PULSE IS

SIGNAL FULL : STD_LOGIC;

BEGIN

P_REG: PROCESS(CLK)

VARIABLE CNT8 : STD_LOGIC_VECTOR(7 DOWNTO 0);

BEGIN

IF CLK’EVENT AND CLK = ‘1’ THEN

IF CNT8 = "11111111" THEN

CNT8 := D; --当CNT8计数计满时,输入数据D被同步预置给计数器

CNT8

FULL <= ''1''; --同时使溢出标志信号FULL输出为高电平

ELSE CNT8 := CNT8 + 1; --否则继续作加1计数

FULL <= ''0''; --且输出溢出标志信号FULL为低电平

END IF;

END IF;

END PROCESS P_REG;

P_DIV: PROCESS(FULL)

VARIABLE CNT2 : STD_LOGIC;

BEGIN

IF FULL''EVENT AND FULL = ''1'' THEN

CNT2 <= NOT CNT2; --如果溢出标志信号FULL为高电平,D触发器

输出取反

IF CNT2 = ''1'' THEN FOUT <= ''1'';

ELSE FOUT <= ''0'';

END IF;

END IF;

END PROCESS P_DIV;

END;

五、VHDL程序改错:

01 LIBRARY IEEE ;

02 USE IEEE.STD_LOGIC_1164.ALL ;

03 USE IEEE.STD_LOGIC_UNSIGNED.ALL;

04 ENTITY LED7CNT IS

05 PORT ( CLR : IN STD_LOGIC;

06 CLK : IN STD_LOGIC;

07 LED7S : OUT STD_LOGIC_VECTOR(6 DOWNTO 0) ) ;

08 END LED7CNT;

09 ARCHITECTURE one OF LED7CNT IS

10 SIGNAL TMP : STD_LOGIC_VECTOR(3 DOWNTO 0);

11 BEGIN

12 CNT:PROCESS(CLR,CLK)

13 BEGIN

14 IF CLR = ''1'' THEN

15 TMP <= 0;

16 ELSE IF CLK''EVENT AND CLK = ''1'' THEN

17 TMP <= TMP + 1;

18 END IF;

19 END PROCESS;

20 OUTLED:PROCESS(TMP)

21 BEGIN

22 CASE TMP IS

23 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" => LED7S <= "1101101" ;

29 WHEN "0110" => LED7S <= "1111101" ;

30 WHEN "0111" => LED7S <= "0000111" ;

31 WHEN "1000" => LED7S <= "1111111" ;

32 WHEN "1001" => LED7S <= "1101111" ;

33 WHEN OTHERS => LED7S <= (OTHERS => ''0'');

34 END CASE;

35 END PROCESS;

36 END one;

在程序中存在两处错误,试指出,并说明理由:

提示:在MAX+PlusII 10.2上编译时报出的第一条错误为:

Error:Line 15: File /led7cnt.vhd: Type error: type in

waveform element must be “std_logic_vector”

第 15行,错误:整数0不能直接赋值给TMP矢量

改正:TMP <= (OTHERS => ‘0’);



第 16行,错误:ELSE IF缺少一条对应的END IF语句

改正:将ELSE IF改为关键字ELSIF



四、分析题:

分析下面的VHDL的源程序,说明设计电路的功能。

library ieee;

use ieee.std_logic_1164.all;

use ieee.std_logic_unsigned.all;

entity test1 is

port( clk: in std_logic;

j,k:in std_logic;

q,qn:out std_logic);

end test1;

architecture one of test1 is

signal q_temp:std_logic:=''0'';

signal jk:std_logic_vector(1 downto 0);

begin

jk<=j&k;

process(j,k,clk)

begin

if clk''event and clk=''0'' then

case jk is

when"00" =>q_temp<=q_temp;

when"01" =>q_temp<=''0'';

when"10" =>q_temp<=''1'';

when"11" =>q_temp<=not q_temp;

when others=>q_temp<=''X'';

end case; end if;

q<=q_temp;

qn<=not q_temp;

end process;

end one;

20分析下图,说明功能并用VHDL实现此电路的功能

21.试用VHDL编写4-2线优先编码器

五、设计题:



22.用74ls161设计一个十进制计数器

23用VHDL设计1位全减器sub_1,要求列出真值表,写出表达式,

画出原理图。

24.编写8位左移移位寄存器的VHDL源程序。设电路的并行数据

输入端为D[7..0],并行数据输出端为Q[7..0],串行数据输入端为DSL,

时钟输入端为CLK。LDN是预置控制输入端,当LDN=0时,

Q[7..0]=D[7..0]。CLRN是复位控制端,当CLRN=0时,移位寄存器

被复位。





献花(0)
+1
(本文系考试资料文...原创)