武科大EDA试卷及答案

更新时间:2023-12-08 22:55:01 阅读量: 教育文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

武科大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. signall 9.关于VHDL中的数字,请找出以下数字中最大的一个:____ A ______。 A. 2#1111_1110# B. 8#276# C. 10#170# D. 16#E#E1

10.下列EDA软件中,哪一个不具有逻辑综合功能:____ B ____。 A. Max+Plus II B. ModelSim C. Quartus II D. Synplify

二、EDA名词解释,写出下列缩写的中文(或者英文)含义:(14分) 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 = \ 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程序改错:(10分) 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 \24 WHEN \25 WHEN \26 WHEN \27 WHEN \28 WHEN \29 WHEN \30 WHEN \31 WHEN \32 WHEN \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 第2页 共5页 五、VHDL程序设计:(16分)

设计一数据选择器MUX,其系统模块图和功能表如下图所示。试采用下面三种方式中的两种来描述该数据选择器MUX的结构体。

(a) 用if语句。 (b) 用case 语句。 (c) 用when else 语句。 Library ieee;

Use ieee.std_logic_1164.all;

Entity mymux is

Port ( sel : in std_logic_vector(1 downto 0); -- 选择信号输入 Ain, Bin : in std_logic_vector(1 downto 0); -- 数据输入 Cout : out std_logic_vector(1 downto 0) ); End mymux;

Architecture one of mymux is Begin

Process (sel, ain, bin) Begin

If sel = “00” then cout <= ain and bin; Elsif sel = “01” then cout <= ain xor bin; Elsif sel = “10” then cout <= not ain; Else cout <= not bin; End if; End process; End one;

Architecture two of mymux is Begin

Process (sel, ain, bin) Begin

Case sel is

when “00” => cout <= ain and bin; when “01” => cout <= ain xor bin; when “10” => cout <= not ain; when others => cout <= not bin; End case; End process; End two;

Architecture three of mymux is Begin

Cout <= ain and bin when sel = “00” else

Ain xor bin when sel = “01” else

Not ain when sel = “10” else not bin; End three;

六、根据原理图写出相应的VHDL程序:(10分) Library ieee;

Use ieee.std_logic_1164.all; Entity mycir is

Port ( A, B, clk : in std_logic; 题号 得分 评卷人 一 二 三 四 五 六 总 分 Qout : out std_logic); End mycir;

Architecture behave of mycir is Signal ta, tb, tc; Begin

tc <= ta nand tb; Process (clk) Begin

If clk’event and clk = ‘1’ then Ta <= A; Tb <= B; End if; End process;

Process (clk, tc) Begin

If clk = ‘1’ then Qout <= c; End if; End process; End behave;

赣南师范学院

2009–2010学年第二学期期末考试试卷( A卷)

开课学院 物理与电子信息学院 课程名称:EDA 技术基础考试形式:闭卷 所需时间 120 分

注意事项:1、教师出题时请勿超出边界虚线;

2、学生答题前将密封线外的内容填写清楚,答题不得超出密封线;. 3、答题请用蓝、黑钢笔或圆珠笔。

一、单项选择题(30分,每题2分)

本文来源:https://www.bwwdw.com/article/wbut.html

Top