文档库 最新最全的文档下载
当前位置:文档库 › EDA技术—VHDL版期末试卷(含答案)

EDA技术—VHDL版期末试卷(含答案)

班级学号姓名

密封线内不得答题

2010—2011学年第一学期期末考试试卷(闭卷)

年级专业(本)课程名称 EDA技术基础

教师出题时请勿超出边界虚线;

2、学生答题前将密封线外的内容填写清楚,答题不得超出密封线;

3、答题请用蓝、黑钢笔或圆珠笔。

一、单项选择题(30分)

1.以下描述错误的是 C

A.QuartusII是Altera提供的FPGA/CPLD集成开发环境

B.Altera是世界上最大的可编程逻辑器件供应商之一

C.MAX+plusII是Altera前一代FPGA/CPLD集成开发环境QuartusII的更新换代新产品D.QuartusII完全支持VHDL、Verilog的设计流程

2.以下工具中属于FPGA/CPLD开发工具中的专用综合器的是 B

A.ModelSim B.Leonardo Spectrum C.Active HDL D.QuartusII

3.以下器件中属于Xilinx 公司生产的是 C

A.ispLSI系列器件B.MAX系列器件

C.XC9500系列器件D.FLEX系列器件

4.以下关于信号和变量的描述中错误的是 B

A.信号是描述硬件系统的基本数据对象,它的性质类似于连接线

B.信号的定义范围是结构体、进程//在整个结构体的任何地方都能使用

班级学号姓名

密封线内不得答题C.除了没有方向说明以外,信号与实体的端口概念是一致的

D.在进程中不能将变量列入敏感信号列表中

5.以下关于状态机的描述中正确的是 B

A.Moore型状态机其输出是当前状态和所有输入的函数

//Mealy型状态机其输出信号是当前状态和当前输入的函数

B.与Moore型状态机相比,Mealy型的输出变化要领先一个时钟周期

C.Mealy型状态机其输出是当前状态的函数

D.以上都不对

6.下列标识符中, B 是不合法的标识符。

A.PP0 B.END C.Not_Ack D.sig

7.大规模可编程器件主要有FPGA、CPLD两类,下列对CPLD结构与工作原理的描述中,正确的是

C 。

A//.FPGA即是现场可编程逻辑器件的英文简称CPLD复杂可编程逻辑器件

B.CPLD是基于查找表结构的可编程逻辑器件

C.早期的CPLD是从GAL的结构扩展而来

D.在Altera公司生产的器件中,FLEX10K 系列属CPLD结构

8.综合是EDA设计流程的关键步骤,在下面对综合的描述中, D 是错误的。

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

B.综合就是将电路的高级语言转化成低级的,可与FPGA / CPLD的基本结构相映射的网表文件

班级学号姓名

密封线内不得答题

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

D.综合可理解为,将软件描述与给定的硬件结构用电路网表文件表示的映射过程,并且这种映射关系是唯一的(即综合结果是唯一的)

9.嵌套使用IF语句,其综合结果可实现 A 。

A.带优先级且条件相与的逻辑电路B.条件相或的逻辑电路

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

10.在VHDL语言中,下列对时钟边沿检测描述中,错误的是 D 。

A.if clk'event and clk = ‘1’ then B.if falling_edge(clk) then

C.if clk’event and clk = ‘0’ then D.if clk’stable and not clk = ‘1’ then

11.下列那个流程是正确的基于EDA软件的FPGA / CPLD设计流程 B

A.原理图/HDL文本输入→适配→综合→功能仿真→编程下载→硬件测试

B.原理图/HDL文本输入→功能仿真→综合→适配→编程下载→硬件测试

C.原理图/HDL文本输入→功能仿真→综合→编程下载→→适配硬件测试;

D.原理图/HDL文本输入→功能仿真→适配→编程下载→综合→硬件测试

12.在VHDL语言中,下列对进程(PROCESS)语句的语句结构及语法规则的描述中,正确的是 A 。A.PROCESS为一无限循环语句;敏感信号发生更新时启动进程,执行完成后,等待下一次进程启动B.敏感信号参数表中,应列出进程中使用的所有输入信号

C.进程由说明部分、结构体部分、和敏感信号参数表三部分组成

D.当前进程中声明的变量也可用于其他进程

班级学号姓名

密封线内不得答题13.下列语句中,不属于并行语句的是 B

A.进程语句B.CASE语句顺序语句

C.元件例化语句D.WHEN…ELSE…语句

14.VHDL语言共支持四种常用库,其中哪种库是用户的VHDL设计现行工作库

D

A.IEEE库B.VITAL库C.STD库D.WORK库

15.VHDL语言是一种结构化设计语言;一个设计实体(电路模块)包括实体与结构体两部分,结构体描述 D 设计实体内部结构和外部设计实体端口的逻辑关系

A.器件外部特性B.器件的综合约束

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

二、EDA名词解释,写出下列缩写的中文含义(10分)

1.CPLD:复杂可编程逻辑器件

2.ASIC:专用集成电路

3.LUT:查找表

4.EDA:电子设计自动化

5.ROM:只读存储器

三、程序填空题(20分)

以下是一个模为24(0~23)的8421BCD码加法计数器VHDL描述,请补充完整

密封线内不得

答题

班级

学号

姓名

密封

线内

不得

四、程序改错题(仔细阅读下列程序后回答问题,12分)答题

班级学号姓名

密封线内不得答题

答:(1)第9行有误,SIGNAL Q1 : RANGE 0 TO 9数据类型有误,应该改成SIGNAL Q1 : STD_LOGIC_VECTOR(3 DOWNTO 0)

(2)第11行有误,敏感信号列表中不能出现输出端口,应该改成PROCESS (clk)

班级学号姓名

密封线内不得答题五、(28分)

1.试用VHDL描述一个外部特性如图所示的D触发器。(10分)参考程序如下:

LIBRARY IEEE;

USE IEEE.STD_LOGIC_1164.ALL;

ENTITY mydff IS

PORT(CLK:IN STD_LOGIC;

D:IN STD_LOGIC;

Q:OUT STD_LOGIC);

END;

ARCHITECTURE bhv OF mydff IS

BEGIN

PROCESS(CLK)

BEGIN

IF CLK'EVENT AND CLK='1' THEN

Q<=D;

END IF;

END PROCESS;

END;

班级学号姓名

密封线内不得答题2.下图为某一状态机对应的状态图,试用VHDL语言描述这一状态机。(18分)

参考程序如下:

LIBRARY IEEE;

USE IEEE.STD_LOGIC_1164.ALL;

ENTITY FSM2 IS

PORT ( clk,reset,in1 : IN STD_LOGIC;

out1 : OUT STD_LOGIC_VECTOR(3 downto 0));

END;

ARCHITECTURE bhv OF FSM2 IS

TYPE state_type IS (s0, s1, s2, s3);

SIGNALcurrent_ state,next_state: state_type;

班级学号姓名

密封线内不得答题BEGIN

P1:PROCESS(clk,reset)

BEGIN

IF reset = ‘1’THEN current_state <= s0;

ELSIF clk='1' AND clk'EVENT THEN

current_state <=next_state;

END IF;

END PROCESS;

P2:PROCESS(current_state)

BEGIN

case current_state is

WHEN s0 => IF in1=‘1’THEN next_state<=s1;

ELSE next_state<=s0;

END IF;

WHEN s1 => IF in1='0'THEN next_state<=S2;

ELSE next_state<=s1;

END IF;

WHEN s2 => IF in1='1'THEN next_state<=S3;

ELSE next_state<=s2;

END IF;

班级学号姓名

密封线内不得答题

WHEN s3 => IF in1='0'THEN next_state<=S0;

ELSE next_state<=s3; END IF;

end case;

END PROCESS;

p3:PROCESS(current_state)

BEGIN

case current_state is

WHEN s0 => IF in1=‘1’THEN out1<=“1001”;

ELSE out1<="0000"; END IF;

WHEN s1 => IF in1='0'THEN out1<="1100";

ELSE out1<="1001"; END IF;

WHEN s2 => IF in1='1'THEN out1<="1111";

ELSE out1<="1001"; END IF;

WHEN s3 => IF in1='1'THEN out1<="0000";

ELSE out1<="1111"; END IF;

end case;

END PROCESS;

end bhv;

相关文档
相关文档 最新文档