一、填空题(本大题共10小题,每空1分,共20 分) 
1.一般把EDA技术的发展分为MOS时代MOS时代ASIC三个阶段。
2.EDA设计流程包括设计输入、设计实现、实际设计检验下载编程四个步骤。
3.EDA设计输入主要包括图形输入HDL文本输入状态机输入
4.时序仿真是在设计输入完成之后,选择具体器件并完成布局、布线之后进行的时序关系仿真,因此又称为功能仿真
5.VHDL的数据对象包括变量常量信号,它们是用来存放各种类型数据的容器。
6.图形文件设计结束后一定要通过仿真,检查设计文件是否正确。
7.以EDA方式设计实现的电路设计文件,最终可以编程下到FPGACPLD芯片中,完成硬件设计和验证。
8.MAX+PLUS的文本文件类型是(后缀名).VHD
9.在PC上利用VHDL进行项目设计,不允许在根目录下进行,必须在根目录为设计建立一个工程目录。
10.VHDL源程序的文件名应与实体名相同,否则无法通过编译。
EDA技术的发展趋势
1 可编程器件的发展趋势:向高密度大规模的方向发展,向系统内可重构的方向发展,向低电压低功耗的方向发展,向混合可编程技术方向发展;
硬件描述语句可在3个层次上进行电路描述(由高到低):行为级,RTL级和门电路级
2.设计单元的基本构造
•一个设计单元都是由实体说明和构造体两部分组成。
•实体的功能是对这个设计单元与外部电路进行接口描叙。实体是设计单元的表层,实体说明部分规定了设计单元的输入输出接口信号或引脚,它是设计单元对外的一个通信界面。
•结构体定义了设计单元的具体构造和操作(行为)。
•每个实体可以有多个结构体,不同的结构体对应着实体不同的结构和算法实现方案,其间的各结构体的地位是相等的。
3.实体说明(ENTITY)
•实体象一个“黑盒子”
•体描叙黑盒子的I/O。
–以“ENTITY实体名IS”开始–至“END 实体名”结束
4.(1)端口说明--PORTS
•端口说明是基本设计实体(单元)与外部接口的描述,也可以说是对外部引脚信号的名称、数据类
型和输入输出方向的描述。 • 一般书写格式如下:
•PORT(端口名{,端口名}:方向 数据类型;•…
•端口名{,端口名}:方向 数据类型; (2)端口模式 
•IN
•OUT
•INOUT
•BUFFER
5.数据类型 
•BIT和STD_LOGIC的区别
•BIT:只能赋值为1或0而STD_LOGIC有9种取值
6.(1)结构体的组成部分
•对数据类型、常数、信号、子程序和元件等元素的说明部分 
•描叙设计单元逻辑行为的、以各种不同的描叙风格表达的功能描述语句。  进程语句  信号赋值语句  子程序调用语句 
•以元件例化语句为特征的外部元件(设计单元)端口间的连接。 (2)结构体一般语言格式 
•ARCHITECTURE结构体名OF实体名IS
•[说明语句]
•BEGIN
•[功能描述语句]
•END  结构体名;
7.进程语句(PROCESS)
•所有的顺序语句都只能在进程(PROCESS)中使用,进程内是顺序执行,进程与进程间是并发的。
•进程是最关键的并发语句,其它并发语句:并发信号赋值、条件信号赋值、选择信号赋值、并发过程调用等可以看作是PROCESS语句的简化形式。
8.进程的启动和敏感信号列表
•进程的两个状态:执行和挂起
•初始起动时,进程处于执行状态,进程中的语句从前向后逐句执行一遍。
•当最后一句语句执行完后,返回到进程开始的PROCESS语句,进程处于挂起状态。
•只要进程的敏感信号列表中任何一个信号发生变化,进程又处于执行状态。然后再挂起,再执行,一直循环下去。
模块化设计的优点9.例4-6及其中出现的新的语句和语言现象 
•(1)标准逻辑位数据类型:STD_LOGIC
•我们以前学过的BIT是只能取值为0或1,而STD_LOGIC有9种取值。
• ‟U‟表示未初始化,„X‟表示强未知,„0‟表示强逻辑0,‟1‟表示强逻辑1,„Z‟表示高阻,„W‟表示弱未知,‟L‟表示弱逻辑0,„H‟表示弱逻辑1,‟-„表示忽略。•‟0‟,„1‟,‟Z‟和„X‟是可综合的,其余是不可综合的。•在仿真和综合时,STD_LOGIC比BIT更常用。
说明:弱逻辑0:类似于电阻下拉,弱逻辑1:类似于电阻上拉。 
• (2)IF CLK‟EVENT AND CLK=‘1’
•EVENT:中文是“事件”,是变化 
•CLK’EVENT:CLK信号的上升沿或下降沿,还有其它情况的变化。
组合逻辑:
•并发语句(Process外)  •顺序语句(Process内) 
1.敏感列表要全
2.不能有不完整条件语
时序逻辑:
•敏感信号列表中,要有时钟  •不完整条件语句
(2)变量(VARIABLE)与信号(SIGNAL)的区别:
–与SIGNAL一样也是数据对象;
–SIGNAL用“<=“赋值, VARIABLE用”:=“赋值;
–SIGNAL是全局的,VARIABLE只能作用于一个PROCESS内;
–SIGNAL是在PROCESS末尾真正赋值;VARIABLE是立即赋值。
2.信号(signal)与变量(variable)
•信号是实的
•信号是硬件连接的抽象
•信号在赋值时可以产生附加延时
•变量是虚的
•变量是逻辑存储,是一种载体,是一种符号
•变量在赋值时不产生附加延时
状态机也分几个种类:Moore和Meely
•Moore:输出只与现在状态有关。
•Meely:输出不仅与现在的状态有关,也与现在的输入有关
状态机的常用描叙方法
•状态图(State Diagram)
•状态图主要包含状态和转移。
•动作主要有两种:状态动作和转移动作。只有转移动作构成Meely型状态机,只有状态动作构成
Moore型状态机。还可以是两种型式的混合,就是也有状态动作也有转移动作。
•3.算法状态机(ASM)ASM图由三种块组成,状态块,条件块和动作块。
1、什么是时序仿真?
时序仿真,就是接近真实器件运行特性的仿真,仿真文件中已包含了器件硬件特性参数,因而,仿真精度高
2、什么是功能仿真?
功能仿真,是直接对HDL、原理图描述或其他描述形式的逻辑功能进行测试模拟,以了解其实现的功能是否满足原设计的要求。
5、简述VHDL的综合过程。
从自然语言转换到VHDL语言算法表示,即自然语言综合。从算法表示转换到寄存器传输级(RTL),即从行为域到结构域的综合,即行为综合。RTL级表示转换到逻辑门的表示,即逻辑综合。从逻辑门表示转换到版图表示(ASIC),或转换到FPGA的配置网表文件,可称
为版图综合或结构综合。
6、简述EDA技术的基本内容。
7、说明VHDL语言的结构组成
(1)VHDL库
(2)实体
ENTITY实体名IS
[GENERIC (参数名:数据类型);]
[PORT(端口表);]
END 实体名;
(3)结构体:
ARCHITECTURE 结构体名OF实体名IS
[说明语句]  --内部信号,常数,数据类型,函数等的定义
BEGIN
[功能描述语句]
END 结构体名;
(4)配置语句:
CONFIGURATION 配置名OF实体名IS配置说明
END配置名
(5)程序包
9、表达式C<=A+B中,A、B和C数据类型都是STD_LOGIC_VECTOR,是否能直接进行加法运算?说明原因和解决方法。
不能。VHDL没有定义STD_LOGIC_VECTOR的”+”操作; 解决方法:加载IEEE.STD_LOGI
C_UNSIGNED.
10.若状态机仿真过程中出现毛刺现象,应如何消除;试指出两种方法,并简单说明其原理。
方法1,添加辅助进程对输出数据进行锁存
方法2,将双进程状态机改写为单进程状态机,其输出也是锁存过了,故能消除毛刺
方法3,使用状态位直接输出型状态机编码方式,其输出直接由当前状态输出,也没有毛刺
信号与变量的区别:
信号赋值语句在进程外作为并行语句,并发执行,与语句所处的位置无关。变赋值语句在进程内或子程序内作为顺序语句,按顺序执行,与语句所处的位置有关。信号赋值符号为 <=,变量赋值符号位 := 。信号赋值符号用于信号赋值动作,不立即生效,变量赋值符号用于变量赋值动作,立即生效。
1、 FPGA结构一般分为三部分:可编程逻辑块(CLB)、可编程I/O模块和可编程内部连线。
2、 CPLD的内部连线为连续式布线互连结构,任意一对输入、输出端之间的延时是固定 ;FPGA的内部连线为分段式布线互连结构,各功能单元间的延时不定(不可预测)。
3、 大规模可编程器件主要有CPLD和FPGA两类,其中CPLD通过可编程乘积项逻辑实现其逻辑功能。 基于SRAM的FPGA器件,每次上电后必须进行一次配置。FPGA内部阵列的配置一般采用在电路可重构技术,编程数据保存在静态存储器(SRAM) ,掉电易失。
4、 目前世界上有十几家生产CPLD/FPGA的公司,最大的两家是:Altera,Xilinx。
5、 硬件描述语言(HDL)是EDA技术的重要组成部分,是电子系统硬件行为描述、结构描述、数据流描述的语言,它的种类很多,如VHDL、Verilog HDL、AHDL
6、 WHEN_ELSE条件信号赋值语句 和 IF_ELSE顺序语句的异同:
  * WHEN_ELSE条件信号赋值语句中无标点,只有最后有分号;必须成对出现;是并行语句,必须放在结构体中。
  * IF_ELSE顺序语句中有分号;是顺序语句,必须放在进程中
7、 可编程逻辑器件设计输入有原理图输入、硬件描述语言输入和波形输入三种方式。原理图输入方式是一种最直接的设计描述方式,波形设计输入适用于时序逻辑和有重复性的逻辑函数。
硬件描述语言的突出优点是:
  * 语言与工艺的无关性;语言的公开可利用性,便于实现大规模系统的设计;
  * 具有很强逻辑描述和仿真功能,而且输入效率高,在不同设计输入库之间的转换非常方便,
用不着对底层的电路和PLD结构的熟悉。
8、 用VHDL/Veilog HDL语言开发可编程逻辑电路的完整流程:文本编辑→功能仿真→逻辑综合→布局布线→时序仿真。
*所谓综合,就是根据设计功能和实现该设计的约束条件(如面积、速度、功耗和成本等),将设计输入转换成满足要求的电路设计方案,该方案必须同时满足与其的功能和约束条件。综合的过程也是设计目标的优化过程,其目的是将多个模块化设计文件合并为一个网表文件,供布局布线使用,网表中包含了目标器件中的逻辑单元和互连的信息。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。