当前位置:文档之家› EDA技术与VHDL语言重点复习必备

EDA技术与VHDL语言重点复习必备

EDA技术与VHDL语言重点复习必备
EDA技术与VHDL语言重点复习必备

1.EDA即Electronic Design Automation(电子设计自动化),就是以计算机为工作平台,以EDA 软件工具为开发环境,以硬件描述语言(HDL)为设计语言,以可编程逻辑器件为实验载体,以ASIC(Application Specific Integrated Circuit)、SOC(System On a Chip)芯片为目标器件,以电子系统设计为应用方向的电子产品自动化设计过程。

2.EDA最后实现的目标:全定制或半定制ASIC设计,FPGA/CPLD开发应用。

3.作为EDA技术最终实现目标的ASIC,通过三种途径来完成:(1)超大规模可编程逻辑器件:实现这一途径的主流器件是FPGA/CPLD。直接面向用户,具有极大的灵活性和通用性,使用方便,开发效率高,成本低,技术维护简单,工作可靠性好。(2)半定制或全定制ASIC:根据实现工艺,可统称为掩膜ASIC,可编程的ASIC具有灵活多样的编程功能。掩膜ASIC分为:门阵列、标准单元、全定制三类。(3)混合ASIC:具有面向用户的编程功能和逻辑资源,同时也含有可方便调用和配置的硬件标准单元模块。

4.EDA设计分五级进行分层次设计:(1)系统级即行为级;(2)RTL级;(3)门级:即逻辑设计,以电路或触发器作基本部件,表达各种逻辑关系;(4)电路级:可看作分离的元件为基本元件,具体表达电路在时域的伏安特性或频域的响应等性能;(5)器件级:即板图级。

5.面向FPGA的开发流程:设计输入(图形输入、文本输入)、综合、布线布局(适配)、仿真(时序仿真、功能仿真)、下载和硬件测试。

6.综合的概念:电子设计中,将用行为和功能层次表达的电子系统转换为低层次的便于具体实现的模块组合装配的过程称为综合。事实上,设计过程中的每一步都可称为一个综合环节。

7.综合的分类:(1)从自然语言转换到VHDL语言算法表示,即自然语言综合。(2)从算法表示转换到寄存器传输级(RegisterTransport Level,RTL),即从行为域到结构域的综合,即行为综合。(3)从RTL级表示转换到逻辑门(包括触发器)的表示,即逻辑综合。(4)从逻辑门表示转换到版图表示(ASIC设计),或转换到FPGA的配置网表文件,可称为版图综合或结构综合。8.在EDA技术中,自顶向下的设计方法的重要意义是什么? 在EDA技术应用中,自顶向下的设计方法,就是在整个设计流程中各设计环节逐步求精的过程。

9.综合在电子设计自动化中的地位是什么? 答:是核心地位(见图1-3)。综合器具有更复杂的工作环境,综合器在接受VHDL程序并准备对其综合前,必须获得与最终实现设计电路硬件特征相关的工艺库信息,以及获得优化综合的诸多约束条件信息;根据工艺库和约束条件信息,将VHDL程序转化成电路实现的相关信息。

8.适配器:也称结构适配器,它的功能是将由综合器产生的网表文件配置于指定的目标器件中,使之产生最终的下载文件。

9.时序仿真:是接近真实器件运行特性的仿真,仿真文件中己包含了器件硬件特性参数,因而,仿真精度高。

10.功能仿真:是直接对VHDL、原理图或其他描述形式的逻辑功能进行测试模拟,以了解其实现的功能是否满足原设计的要求的过程,仿真过程不涉及任何具体器件的硬件特性。11.时序仿真与功能仿真的区别:时序仿真的仿真文件必须来自针对具体器件的适配器。综合后所得的EDIF等网表文件通常作为FPGA适配器的输入文件,产生的仿真网表文件中包含了精确的硬件延迟信息。功能仿真的过程不涉及任何具体器件的硬件特性。不经历适配阶段,在设计项目编辑编译(或综合)后即可进入门级仿真器进行模拟测试。直接进行功能仿真的好处是设计耗时短,对硬件库、综合器等没有任何要求。

12.IP定义为用于ASIC或FPGA/CPLD中预先设计好的电路功能模块。

13.IP分为软IP(用VHDL等硬件面熟语言描述的功能块,但是并不涉及用什么具体电路元件实现这些功能)、固IP(完成了综合的功能块)和硬IP(提供设计的最终阶段产品-掩膜)。

14.基于VHDL的自顶向下设计方法(1)设计说明书(2)建立VHDL行为模型(3)VHDL行为仿真(4)VHDL-RTL级建模(5)前端功能仿真(6)逻辑综合(7)测试向量生成(8)功

能仿真(9)结构综合(10)门级时序仿真(11)硬件测试(12)设计完成

可编程逻辑器件(PLD)诞生于20世纪70年代.80年代以后迅速发展.是大规模集成电路技术发展的产物,是一种半定制的集成电路,结合EDA技术可以快速、方便地构建数字系统。

1.自问世以来,PLD经历了PROM(Programmable Read Only Memory,可编程只读存储器)、PLA(Programmable Logic Array,可编程逻辑阵列)、PAL(Programmable Array Logic,可编程阵列逻辑)、GAL(Generic Array Logic, 通用阵列逻辑)到FPGA、ispLSI(in system programmable Large Scale IC,在系统可编程大规模集成电路)等高密度PLD的发展过程。

2.可编程逻辑器件(PLD)的分类:

(1)按集成度(PLD)分类:低集成度PLD(PROM、PLA、PAL、GAL),高集成度PLD(CPLD\FPGA)。(2)从结构上分:乘积项结构器件(大部分简单PLD和CPLD),查找表结构器件,FPGA (3)从编程工艺上分类:熔丝(Fuse)型器件,反熔丝型器件,EPROM型,EEPROM型,SRAM型,Flash 型。(4)从可编程特性上分类:一次可编程,重复可编程.

3.PROM(Programmable Read Olny Memory可编程只读存储器):只能用于组合电路的可编程,输入变量的增加会引起存储容量的增加。多输入变量的组合电路函数是不适合用单个PROM来编程表达的。

4.PLA:与阵列和或阵列都可编程。把逻辑函数化成最简的与或表达式,然后用可编程的与阵列构成与项,用可编程对或阵列构成与项的或运算,在有多个输出时,要尽量利用公共的与项,以提高阵列的利用率。

5.PAL:包含与阵列、或阵列,但或阵列是固定的,只有与阵列可编程。一次可编程,修改不方便。

6.GAL:具有电可擦除重复编程的特点,与阵列可编程、或阵列固定增加了输出逻辑宏单元。

8.CPLD(Complex Programmable Logic Device)的结构:逻辑阵列块(LAB)、宏单元、扩展乘积项(共享扩展项和并联扩展项)、可编程连线阵列、I/O控制块。

9.FPGA结构与工作原理: (1) 逻辑单元LE (2) 逻辑阵列块LAB(3) 快速通道(4) I/O单元与专用输入端口。

10.FPGA和CPLD的区别:(1)CPLD是以乘积项的结构方式构成的逻辑器件(2)FPGA是以查表法结构方式构成的逻辑器件。

1.变量和常量可以从软件语言中找到对应的类型,然而信号的表现较特殊,它具有更多的硬件特征,是VHDL中最有特色的语言要素之一。

2.常量定义的一般表述:CONSTANT 常数名:数据类型:= 表达式;定义语句所允许的设计单元有实体、结构体、程序包、块、进程和子程序。常数的可视性,即常数的使用范围取决于它被定义的位置。

3.变量定义的一般表述:VARIABLE 变量名: 数据类型:= 初始值;

4.信号定义的一般表述:SIGNAL 信号名:数据类型:= 初始值;

信号SIGNAL变量VARIABLE

基本用法用于作为电路中的信号连线用于作为进程中局部数据存储单元

适用范围在整个结构体内的任何地方都能适

用只能在所定义的进程中使用,局部量,只能在进程和子程序中使用。

行为特性在进程的最后才对信号赋值立即赋值

作用在进程中作为临时的数据存储单元。

进程的结构:包含了一个代表着实体中部分逻辑行为的、独立的顺序描述语句。

5.进程的组成:(1)进程说明部分(包括数据类型、常数、变量、属性、子程序等)(2)顺序描述语句(分为赋值语句(信号、变量)、进程启动语句、子程序调用语句、顺序描述语句和进程跳出语句等,)(3)敏感信号参数表

6.进程的特点(要点):(1)PROCESS为一无限循环语句。(2)PROCESS中的顺序语句具有明

显的顺序/并行运行双重性。(3)进程必须由敏感信号的变化来启动。(4)进程语句本身是并行语句。(5)信号是多个进程间的通信线。(6)一个进程中只允许描述对应于一个时钟信号的同步时序逻辑。

1.(1)TYPE 数据类型名IS 数据类型定义OF 基本数据类型;

(2)TYPE 数据类型名IS 数据类型定义;

2.状态机的优势:(1)状态机克服了纯硬件数字系统顺序方式控制不灵活的缺点。(2)状态机可以定义符号化枚举类型的状态。(3)状态机容易构成性能良好的同步时序逻辑模块。(4)状态机的VHDL表述丰富多样、程序层次分明,易读易懂。(5)在高速运算和控制方面,状态机更有其巨大的优势。(6)高可靠性。

3.状态机的结构:(1)说明部分(一般放在结构体的architecture和begin之间);(2)主控时序进程;(3)主控组合进程;(4)辅助进程(用于配合状态机工作的组合进程或时序进程)。

4.Moore状态机和Mealy状态机的区别:信号输出方式上分为这两种。从输出时序上看,Moore属于同步输出状态机,Mealy属于异步输出状态机。Mealy型状态机的输出是当前状态和所以输入信号的函数,它的输出是在输入变化后立即发生的,不依赖时钟的同步。Moore 型状态机的输出则仅为当前状态的函数,这类状态机在输入发生变化时还必须等待时钟的到来,时钟使状态发生变化时才导致输出的变化,所以比Mealy机要多等待一个时钟周期。1.顺序语句的特点是每一条语句的执行顺序是与它们的书写顺序基本一致的,顺序语句只能出现在进程和子程序中,子程序包括函数和过程。包含6个基本的赋值语句、流程控制语句、等待语句、子程序调用语句、返回语句和空操作语句。

2.FOR_LOOP语句,语法格式如下:[LOOP标号:] FOR 循环变量IN 循环次数范围LOOP 顺序语句END LOOP [LOOP标号];

3.(1)NEXT;--第一种语句格式(2)NEXT LOOP标号;--第二种语句格式

(3)NEXT LOOP标号WHEN 条件表达式; --第三种语句格式

4. (1)WAIT;-- 第一种语句格式(2)WAIT ON 信号表;-- 敏感信号等待语句(3)WAIT UNTIL 条件表达式;--条件等待语句(4)WAIT FOR 时间表达式;超时等待语句

5.结构体中的可综合的并行语句主要有九种:(1)并行信号赋值语句。(2)进程语句。(3)块语句。(4)条件信号赋值语句。(5)元件例化语句,其中包括类属配置语句。(6)生成语句。(7)并行过程调用语句。(8)参数传递映射语句。(9)端口说明语句。

6.选择信号赋值语句:WITH 选择表达式SELECT 赋值目标信号<=表达式WHEN 选择值,

表达式WHEN 选择值, 表达式WHEN 选择值;

7.顺序语句包括:if- then- else 语句、case语句、loop 语句、变量说明、变量赋值、next语句、exit语句、wait 语句、return 语句、null 语句。

8.并行语句包括:进程语句、When else语句、With select 语句、信号说明、块语句。

9.下列语句在并行部分和顺序部分都是合法的:信号赋值、类型和常数的说明、函数和过程调用、Assert语句、After延迟、信号属性。

1.函数的语言表达格式如下:

FUNCTION 函数名(参数表)RETURN 数据类型--函数首

FUNCTION 函数名(参数表)RETURN 数据类型IS -- 函数体

[ 说明部分] BEGIN 顺序语句; END FUNCTION 函数名;

2.什么是重载函数?重载算符有何用处?如何调用重载算符函数?

答:(1)同样名称的函数可以用不同的数据类型作为此函数的参数定义多次,以此定义的函数称为重载函数。(2)用于两个不同类型的操作数据自动转换成同种数据类型,并进行运算处理。(3)采用隐式方式调用,无需事先声明。

3.决断函数:主要用于解决信号被多个驱动源驱动时,驱动信号间的竞争问题。不可综合、

不能用电路体现出来。

4.过程的语句格式是:

PROCEDURE 过程名(参数表) (-- 过程首)PROCEDURE 过程名(参数表) IS [说明部分] BIGIN (- 过程体)顺序语句; END PROCEDURE 过程名;

5.重载过程:两个或两个以上有相同的过程名和互不相同的参数数量及数据类型的过程称为重载过程,或称复用过程。靠参数类型来辨别调用哪个过程。

6.函数和过程的区别:

共同点:(1)都是子程序(2)都可在程序包和结构体、进程中定义(3)都有两部分组成,函数由函数首和函数体组成,过程由过程首和过程体组成,(4)都使用顺序描述语句。

不同点:(1)函数端口表是用来说明输入值的,而过程的端口表可以定义参数不同的工作模(2)函数的参量是信号或常数,而过程的参量还可以是变量(3)函数的定义中说明返回值的数据类型,而过程中则不需要对返回值数据类型进行说明。

7.库的种类:(1)IEEE库(显示表达):主要包括STD_LOGIC_1164,NUMERIC_BIT和NUMERIC_STD等程序包。STD_LOGIC_ARITH、STD_LOGIC_SIGNED和STD_LOGIC_UNSIGNED 程序包。(2)STD库(不须显示表达):STANDARD和TEXTIO程序包。(3)WORK库(无须显示表达,总是可见):WORK库是用户的VHDL设计的现行工作库,用于存放用户设计和定义的一些设计单元和程序包。因此自动满足VHDL语言标准,在实际调用中,不必以显式预先说明。(4)VITAL库:除了以上提到的库外,EDA工具开发商为了便于FPGA/CPLD开发设计上的方便,都有自己的扩展库和相应的程序包,如DATAIO公司的GENERICS库、DATAIO 库等,以及上面提到的Synopsys 公司的一些库。

8.程序包中至少应包含以下结构中的一种:常数说明、VHDL数据类型说明、元件定义、子程序。

9.定义程序包的一般语句结构如下:

PACKAGE 程序包名IS -- 程序包首程序包首说明部分END 程序包名;

PACKAGE BODY 程序包名IS -- 程序包体

程序包体说明部分以及包体内

END 程序包名;

10.常用的预定义的程序包:STD_LOGIC_1164程序包、STD_LOGIC_ARITH程序包、STD_LOGIC_UNSIGNED和STD_LOGIC_SIGNED程序包、STANDARD和TEXTIO程序包。

11.整数:整数都是十进制的数。实数:实数也都是十进制的数,但必须带有小数点。以数制基数表示的文字:用这种方式表示的数由五个部分组成。(几进制#数#数)。物理量文字(VHDL综合器不接受此类文字)。

11.字符串:data1 <=B"1_1101_1110" -- 二进制数数组,位矢数组长度是9。

12.字符的规则:(1)有效的字符:包括26个大小写英文字母,数字包括0~9 以及下划线“_”。(2)任何标识符必须以英文字母开头。(3)必须是单一下划线“_”,且其前后都必须有英文字母或数字。(4)标识符中的英语字母不分大小写。(5)允许包含图形符号(如回车符、换行符等),也允许包含空格符。

13.数据类型有:标量型(实数类型、整数类型、枚举类型、时间类型)、复合类型(数组型和记录型)、存取类型(为给定的数据类型的数据对象提供存取方式)、文件类型(用于提供多值存取类型)。

14.VHDL的预定义数据类型:(1)布尔(BOOLEAN)数据类型;(2)位(BIT)数据类型;(3)位矢量(BIT_VECTOR)数据类型;(4)字符数据类型;(5)整数(INTEGER)数据类型;(6)自然数(NATRUAL)和正整数(POSITIVE)数据类型;(7)实数(REAL)数据类型;(8)字符串(STRING)数据类型;(9)时间(TIME)数据类型;(10)错误等级(SEVERITY_LEVEL)数据类型。

15. VHDL操作符优先级

运算符优先级NOT,ABS,** 最高优先级

* ,/ ,MOD, REM

+(正号),-(负号)

+ ,-, &

SLL, SLA, SRL, SRA, ROL, ROR

=, /=, <, <=, >, >=

AND, OR, NAND, NOR, XOR, XNOR 最低优先级

EDA技术与VHDL程序设计基础教程习题答案

EDA技术与VHDL程序设计基础教程习题答案 第1章EDA习题答案 1.8.1填空 1.EDA的英文全称是Electronic Design Automation 2.EDA技术经历了计算机辅助设计CAD阶段、计算机辅助工程设计CAE阶段、现代电子系统设计自动化EDA阶段三个发展阶段 3. EDA技术的应用可概括为PCB设计、ASIC设计、CPLD/FPGA设计三个方向 4.目前比较流行的主流厂家的EDA软件有Quartus II、ISE、ModelSim、ispLEVER 5.常用的设计输入方式有原理图输入、文本输入、状态机输入 6.常用的硬件描述语言有VHDL、V erilog 7.逻辑综合后生成的网表文件为EDIF 8.布局布线主要完成将综合器生成的网表文件转换成所需的下载文件 9.时序仿真较功能仿真多考虑了器件的物理模型参数 10.常用的第三方EDA工具软件有Synplify/Synplify Pro、Leonardo Spectrum 1.8.2选择 1.EDA技术发展历程的正确描述为(A) A CAD->CAE->EDA B EDA->CAD->CAE C EDA->CAE->CAD D CAE->CAD->EDA 2.Altera的第四代EDA集成开发环境为(C) A Modelsim B MUX+Plus II C Quartus II D ISE 3.下列EDA工具中,支持状态图输入方式的是(B) A Quartus II B ISE C ispDesignEXPERT

D Syplify Pro 4.下列几种仿真中考虑了物理模型参数的仿真是(A) A时序仿真 B 功能仿真 C 行为仿真 D 逻辑仿真 5.下列描述EDA工程设计流程正确的是(C) A输入->综合->布线->下载->仿真 B布线->仿真->下载->输入->综合 C输入->综合->布线->仿真->下载 D输入->仿真->综合->布线->下载 6.下列编程语言中不属于硬件描述语言的是(D) A VHDL B V erilog C ABEL D PHP 1.8.3问答 1.结合本章学习的知识,简述什么是EDA技术?谈谈自己对EDA技术的认识? 答:EDA(Electronic Design Automation)工程是现代电子信息工程领域中一门发展迅速的新技术。 2.简要介绍EDA技术的发展历程? 答:现代EDA技术是20世纪90年代初从计算机辅助设计、辅助制造和辅助测试等工程概念发展而来的。它的成熟主要经历了计算机辅助设计(CAD,Computer Aided Design)、计算机辅助工程设计(CAED,Computer Aided Engineering Design)和电子设计自动化(EDA,Electronic System Design Automation)三个阶段。 3.什么是SOC?什么是SOPC? 答:SOC (System on Chip,片上系统) SOPC(System on a Programmable Chip,片上可编程系统) 4.对目标器件为CPLD/FPGA的VHDL设计,主要有几个步骤?每步的作用和结果分别是什

EDA技术实用教程-VHDL版课后答案

第一章 1-1 EDA技术与ASIC设计和FPGA开发有什么关系? P3~4 答:利用EDA技术进行电子系统设计的最后目标是完成专用集成电路ASIC的设计和实现;FPGA和CPLD是实现这一途径的主流器件。FPGA和CPLD通常也被称为可编程专用IC,或可编程ASIC。FPGA和CPLD的应用是EDA技术有机融合软硬件电子设计技术、SoC(片上系统)和ASIC设计,以及对自动设计与自动实现最典型的诠释。 1-2与软件描述语言相比,VHDL有什么特点? P6 答:编译器将软件程序翻译成基于某种特定CPU的机器代码,这种代码仅限于这种CPU而不能移植,并且机器代码不代表硬件结构,更不能改变CPU的硬件结构,只能被动地为其特定的硬件电路结构所利用。综合器将VHDL 程序转化的目标是底层的电路结构网表文件,这种满足VHDL设计程序功能描述的电路结构,不依赖于任何特定硬件环境;具有相对独立性。综合器在将VHDL(硬件描述语言)表达的电路功能转化成具体的电路结构网表过程中,具有明显的能动性和创造性,它不是机械的一一对应式的“翻译”,而是根据设计库、工艺库以及预先设置的各类约束条件,选择最优的方式完成电路结构的设计。 l-3什么是综合?有哪些类型?综合在电子设计自动化中的地位是什么? P5 什么是综合? 答:在电子设计领域中综合的概念可以表示为:将用行为和功能层次表达的电子系统转换为低层次的便于具体实现的模块组合装配的过程。 有哪些类型? 答:(1)从自然语言转换到VHDL语言算法表示,即自然语言综合。(2)从算法表示转换到寄存器传输级(RegisterTransport Level,RTL),即从行为域到结构域的综合,即行为综合。(3)从RTL级表示转换到逻辑门(包括触发器)的表示,即逻辑综合。(4)从逻辑门表示转换到版图表示(ASIC设计),或转换到FPGA的配置网表文件,可称为版图综合或结构综合。 综合在电子设计自动化中的地位是什么? 答:是核心地位(见图1-3)。综合器具有更复杂的工作环境,综合器在接受VHDL程序并准备对其综合前,必须获得与最终实现设计电路硬件特征相关的工艺库信息,以及获得优化综合的诸多约束条件信息;根据工艺库和约束条件信息,将VHDL程序转化成电路实现的相关信息。 1-4在EDA技术中,自顶向下的设计方法的重要意义是什么? P7~10 答:在EDA技术应用中,自顶向下的设计方法,就是在整个设计流程中各设计环节逐步求精的过程。 1-5 IP在EDA技术的应用和发展中的意义是什么? P11~12 答:IP核具有规范的接口协议,良好的可移植与可测试性,为系统开发提供了可靠的保证。 第二章 2-1 叙述EDA的FPGA/CPLD设计流程。P13~16 答:1.设计输入(原理图/HDL文本编辑);2.综合;3.适配;4.时序仿真与功能仿真;5.编程下载;6.硬件测试。 2-2 IP是什么?IP与EDA技术的关系是什么? P24~26 IP是什么? 答:IP是知识产权核或知识产权模块,用于ASIC或FPGA/CPLD中的预先设计好的电路功能模块。 IP与EDA技术的关系是什么?答:IP在EDA技术开发中具有十分重要的地位;与EDA技术的关系分有软IP、固IP、硬IP:软IP是用VHDL等硬件描述语言描述的功能块,并不涉及用什么具体电路元件实现这些功能;软IP 通常是以硬件描述语言HDL源文件的形式出现。固IP是完成了综合的功能块,具有较大的设计深度,以网表文件的形式提交客户使用。硬IP提供设计的最终阶段产品:掩模。 2-3 叙述ASIC的设计方法。P18~19 答:ASIC设计方法,按版图结构及制造方法分有半定制(Semi-custom)和全定制(Full-custom)两种实现方法。 全定制方法是一种基于晶体管级的,手工设计版图的制造方法。 半定制法是一种约束性设计方式,约束的目的是简化设计,缩短设计周期,降低设计成本,提高设计正确率。半定制法按逻辑实现的方式不同,可再分为门阵列法、标准单元法和可编程逻辑器件法。 2-4 FPGA/CPLD在ASIC设计中有什么用途? P16,18 答:FPGA/CPLD在ASIC设计中,属于可编程ASIC的逻辑器件;使设计效率大为提高,上市的时间大为缩短。 2-5 简述在基于FPGA/CPLD的EDA设计流程中所涉及的EDA工具,及其在整个流程中的作用。 P19~23答:基于FPGA/CPLD的EDA设计流程中所涉及的EDA工具有:设计输入编辑器(作用:接受不同的设计输

EDA技术与VHDL语言课程设计

EDA技术与VHDL语言课程设计 课程设计 EDA技术与VHDL语言 课程设计报告 班级: 电信11-2班 姓名: 董元伟 学号: 1106110205 指导教师: 李铁 成绩: 电子与信息工程学院 信息与通信工程系 - 2 - 课程设计;数字密码锁 目录 摘 要 ..................................................................... .......................................... - 3 - 一、设计目 的 ..................................................................... ............................ - 4 - 二、设计内容和要 求 ..................................................................... .................. - 4 - 1、用户开 锁 ..................................................................... ......................... - 5 -

2、管理员解除警 报 ..................................................................... .............. - 5 - 3、管理员修改密 码 ..................................................................... .............. - 5 - 4、定时返 回 ..................................................................... ......................... - 6 - 三、设计思路和系统结构...................................................................... ............ - 6 - 1、设计模 块 ..................................................................... ......................... - 6 - 2、系统结构和数字密码锁原理 图 .............................................................. - 7 - 3、设计思 路 ..................................................................... ......................... - 8 - 四、实验设计程序 如 ..................................................................... ................... - 9 - 五、创建测试平台仿真结 果 ..................................................................... ....... - 21 - 参考文

EDA技术与VHDL语言设计

《EDA技术与VHDL语言设计》 课程设计 题目:交通灯控制器 姓名: ***** 院系:电子信息工程系 专业:电子信息工程 班级:电信112班 学号: ****** 指导教师: ****** 2013年6 月

交通灯控制器 *** (电子信息工程学系指导教师:**) 摘要:传统的交通灯控制器多数由单片机实现,本文介绍基于EDA技术设计交通灯控制器的 一种方案。EDA技术的一个重要特征是使用硬件描述语言来完成系统的设计文件,这在电子 设计领域已得到设计者的广泛采用。给出了交通灯控制器的源程序和仿真结果,仿真结果表明 该设计方案可行。 关键词:交通灯控制器;仿真;设计 1.设计原理 1.1设计要求 设计一个十字路口交通控制器,器示意图如图1.1所示,A方向和B方向歌设红(R)、黄(Y)、 绿(G)、和左拐(L)四盏灯,四种灯按合理的顺序亮灭,并能将灯亮的时间以倒计时的形式显示出来。A方向红、绿、黄、左拐灯亮的时间分别为65s、40s、5s、和15s,B方向红、绿、黄、左拐灯亮的时 间分别为55s、30s、5s、和15s。 1.2功能要求 两个方向各种灯亮的时间能够进行设置和修改,此外假设A方向是主干路,车流大,因此在 表1.2 交通灯控制器的状态 1.3设计思路和原理 根据交通灯控制器要求实现的功能,考虑用两个并行执行的always模块来分别控制A和B两个方向的四盏灯,这两个always模块使用同一个时钟信号,以进行同步。也就是说,两个always模块的敏感信号是同一个,每个模块控制一个方向的四种灯按如下顺序点亮,并往复循环:绿灯→黄灯→左拐灯→黄灯→红灯。 每种灯亮的时间采用一个减法计数器进行计数,计数器用同步预置法设计,这样只需改变计数器的

EDA技术与VHDL基础课后习题答案(供参考)

《EDA技术与VHDL基础》 课后习题答案 第一章EDA技术概述 一、填空题 1、电子设计自动化 2、非常高速集成芯片硬件描述语言 3、CAD、CAE、EDA 4、原理图输入、状态图输入、文本输入 5、VHDL、Verilog HDL 6、硬件特性 二、选择题 1、A 2、C 3、A 4、D 5、C 6、D 7、A 第二章可编程逻辑器件基础 一、填空题 1、PLD 2、Altera公司、Xilinx公司、Lattice公司 3、基于反熔丝编程的FPGA 4、配置芯片 二、选择题 1、D 2、C 3、C 4、D 第三章VHDL程序初步——程序结构 一、填空题 1、结构、行为、功能、接口 2、库和程序包、实体、结构体、配置 3、实体名、类型表、端口表、实体说明部分

4、结构体说明语句、功能语句 5、端口的大小、实体中子元件的数目、实体的定时特性 6、设计库 7、元件、函数 8、进程PROCESS、过程PROCEDURE 9、顺序语句、并行语句 二、选择题 1、D 2、C 3、C 4、B 5、D 6、B 7、A 8、C 三、简答题 2、 LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; ENTITY nand_3in IS PORT(a,b,c:IN STD_LOGIC; y:OUT STD_LOGIC); END; ARCHITECTURE bhv OF nand_3in IS BEGIN y<=NOT(a AND b AND c); END bhv; 5、0000 6、(247) 第四章VHDL基础 一、填空题 1、顺序语句、并行语句 2、跳出本次循环 3、等待、信号发生变化时 4、函数、过程 5、值类属性、函数类属性、信号类属性、数据类型类属性、数据范围类属性 6、程序调试、时序仿真 7、子程序、子程序 二、选择题

EDA技术与VHDL(第2版)习题解答

第3章 VHDL 基础 3-1 如图所示 input output enable buf3s mux21 in0in1output sel 3-2 程序: IF_THEN 语句 LIBRARY IEEE ; USE IEEE.STD_LOGIC_1164.ALL ; ENTITY mux21 S PORT ( s1,s0 : IN STD_LOGIC_VECTOR ; a,b,c,d : IN STD_LOGIC ; y : OUT STD_LOGIC ) ; END ENTITY mux21 ; ARCHITECTURE one OF mux21 IS BEGIN PROCESS ( s0,s1,a,b,c,d ) BEGIN IF s1=?0? AND s0=?0? THEN y<=a ; ELSIF s1=?0? AND s0=?1? THEN y<=b ; ELSIF s1=?1? AND s0=?0? THEN y<=c ; ELSIF s1=?1? AND s0=?1? THEN y<=d ; ELSE y<=NULL ; END IF ; END PROCESS ; END ARCHITECTURE one ; CASE 语句 LIBRARY IEEE ; USE IEEE.STD_LOGIC_1164.ALL ; ENTITY mux21 IS

PORT ( s1,s0 : IN STD_LOGIC_VECTOR ; a,b,c,d : IN STD_LOGIC ; y : OUT STD_LOGIC ) ; END ENTITY mux21 ; ARCHITECTURE two OF mux21 IS SIGNAL s : STD_LOGIC_VECTOR ( 1 DOWNTO 0 ) ; BEGIN s<=s1 & s0 ; PROCESS ( s ) BEGIN CASE s IS WHEN “00” => y<=a ; WHEN “01” => y<=b ; WHEN “10” => y<=c ; WHEN “11” => y<=d ; WHEN OTHERS => NULL ; END CASE ; END PROCESS ; END ARCHITECTURE two ; 3-3 程序: LIBRARY IEEE ; USE IEEE.STD_LOGIC_1164.ALL ; ENTITY MUXK IS PORT ( s0,s1 : IN STD_LOGIC ; a1,a2,a3 : IN STD_LOGIC ; outy : OUT STD_LOGIC ) ; END ENTITY MUXK ; ARCHITECTURE double OF MUXK IS SIGNAL tmp : STD_LOGIC ; --内部连接线 SIGNAL u1_s, u1_a, u1_b, u1_y : STD_LOGIC ; SIGNAL u2_s, u2_a, u2_b, u2_y : STD_LOGIC ; BEGIN p_MUX21A_u1 : PROCESS ( u1_s, u1_a, u1_b, u1_y ) BEGIN

完整word版,EDA技术与VHDL(A卷答案)

4.大规模可编程器件主要有FPGA、CPLD两类,下列对FPGA结构与工作原理的描述中,正确的是C。 A. FPGA是基于乘积项结构的可编程逻辑器件; B. FPGA是全称为复杂可编程逻辑器件; C. 基于SRAM的FPGA器件,在每次上电后必须进行一次配置; D. 在Altera公司生产的器件中,MAX3000系列属FPGA结构。 5.以下对于进程PROCESS的说法,正确的是: A A. 进程语句本身是并行语句 B. 进程内部由一组并行语句来描述进程功能 C. 进程之间可以通过变量进行通信 D. 一个进程可以同时描述多个时钟信号的同步时序逻辑 6.在VHDL语言中,下列对时钟上升沿检测描述中,错误的是C。 A. if clk’event and clk = ‘1’ then B. if rising_edge(clk) then C. if clk’event and clk = ‘0’ then D. if not clk’stable and clk = ‘1’ then 7.关于VHDL中的数字,请找出以下数字中数值最大的一个:B A. 2#1111_1110# B. 8#366# C. 10#169# D. 16#F#E1 8.下列标识符中,B是不合法的标识符。 A. State0 B. 9moon C. Not_Ack_0 D. signall 9.下列语句中,不属于并行语句的是:D A.进程语句 B.条件信号赋值语句 C.元件例化语句 D.IF语句 10. 状态机编码方式中,其中 C 占用触发器较多,但其实现比较适合FPGA的应用 A. 状态位直接输出型编码 B. 顺序编码 C. 一位热码编码 D. 以上都不是

EDA技术与VHDL程序开发基础教程 教学资料第二章

2.8.1填空 1.可编程逻辑器件的英文全称是Programmable Logic Device 2.可编程逻辑器件技术经历了PROM 、PLA、PAL 三个发展阶段 3. CPLD的基本结构包括可编程逻辑阵列块、输入/输出块、互联资源三个部分 4.目前市场份额较大的生产可编程逻辑器件的公司有Altera 、Xillinx 、Lattice 5.根据器件应用技术FPGA可分为基于SRAM编程的FPGA、基于反熔丝编程的FPGA 6. 快速通道/互联通道包括行互连、列互联、逻辑阵列块、逻辑单元 7.常用的的FPGA配置方式为主动串行、主动并行、菊花链 8.实际项目中,实现FPGA的配置常常需要附加一片EPROM 9.球状封装的英文缩写为BGA 10.CPLD/FPGA选型时主要考虑的因素有器件逻辑资源、芯片速度、功耗、封装2.8.2选择 1. 在下列可编程逻辑器件中,不属于高密度可编程逻辑器件的是(D) A EPLD B CPLD C FPGA D PAL 2. 在下列可编程逻辑器件中,属于易失性器件的是(D) A EPLD B CPLD C FPGA D PAL 3.下列逻辑部件中不属于Altera公司CPLD的是(A) A通用逻辑块(GLB) B可编程连线阵列(PIA) C输入输出控制(I/O) D逻辑阵列块(LAB) 4.下列逻辑部件中不属于Lattice公司CPLD的是(D) A通用逻辑块(GLB) B全局布线区(GRP) C输出布线区(ORP) D逻辑阵列块(LAB) 5.下列FPGA中不属于Xilinx公司产品的是(D) A XC4000 B Virtex

《VHDL语言与EDA技术》课程试卷答案

《VHDL语言与EDA技术》课程试卷(1)答案 一、分析下列代码。 1、试分析,该代码描述的是什么功能电路? 答:模8计数器 2、 试分析,该代码描述的是什么功能电路? 答:四位二进制码输入,LED七段码显示电路 若不写第24行代码,是否可以?说明理由。 答:不可以,否则输入0000-1001以外的数据时就无法继续执行代码。 3、试分析,在该代码中,第8行“f<=temp1 XOR temp2;”写在第九行“temp1<=a AND b; ”和第十行“temp2<=c OR d;”前面,这种书写顺序对功能的实现有没有影响? 答:没有 该代码中有一个错误,在第4行,此行语句应改为END exam; 4、 试分析,该代码描述的是什么功能电路? 答:通用译码器 第4句中的端口ena 是使能信号输入端,在此代码描述的电路中,ena为0还是为1时电路能有效完成期望功能? 答:1 此代码描述中,第11句和第12句中,x'high 代表的值是多少? 答:7 二、填空,补全下列代码。 1、output: OUT std_logic_vector( 7 downto 0) ); (OTHERS=>' Z'); 2、 q:OUT STD_LOGIC_VECTOR (1 DOWNTO 0)); SIGNAL q_tmp: STD_LOGIC_VECTOR(1 DOWNTO 0); process( clk) IF(clk'event and clk=' 1 ')then q_tmp <= ( others =>'0'); end if; end process ;

end rtl; 三、设计程序,完成下列功能 1、 LIBRARY ieee; USE ieee.std_logic_1164.all; ENTITY fulladder IS PORT (a, b, cin: IN BIT; s, cout: OUT BIT); END fulladder; ARCHITECTURE rtl OF fulladder IS BEGIN s<=a XOR b XOR cin; cout<=(a AND B) OR (a AND cin) OR (b AND cin); END rtl; 2、 LIBRARY ieee; USE ieee.std_logic_1164.all; ENTITY dff1 IS PORT(d, clk, rst: IN STD_LOGIC; q: OUT STD_LOGIC); END dff1; ARCHITECTURE behavior OF dff1 IS BEGIN PROCESS (rst, clk) BEGIN IF (rst='1') THEN q<='0'; ELSIF ( clk'EVENT AND clk='1' ) THEN q<=d; END IF; END PROCESS; END behavior; 四、简答题 1、 进程(process)内部的语句是一种顺序描述语句,其内部经常包括if,wait,case或loop语句。 特点: 1、进程与进程,或其它并发语句之间的并发性; 2、进程内部的顺序性; 3、要么使用敏感信号列表(sensitivity list),要么使用wait语句,二者不可同时使用。 4、进程必须包含在主代码段中,当敏感信号列表中的某个信号发生变化,或者wait语句的条件满足时,process内部的代码就顺序执行一次;

EDA技术与VHDL语言重点复习必备

1.EDA即Electronic Design Automation(电子设计自动化),就是以计算机为工作平台,以EDA 软件工具为开发环境,以硬件描述语言(HDL)为设计语言,以可编程逻辑器件为实验载体,以ASIC(Application Specific Integrated Circuit)、SOC(System On a Chip)芯片为目标器件,以电子系统设计为应用方向的电子产品自动化设计过程。 2.EDA最后实现的目标:全定制或半定制ASIC设计,FPGA/CPLD开发应用。 3.作为EDA技术最终实现目标的ASIC,通过三种途径来完成:(1)超大规模可编程逻辑器件:实现这一途径的主流器件是FPGA/CPLD。直接面向用户,具有极大的灵活性和通用性,使用方便,开发效率高,成本低,技术维护简单,工作可靠性好。(2)半定制或全定制ASIC:根据实现工艺,可统称为掩膜ASIC,可编程的ASIC具有灵活多样的编程功能。掩膜ASIC分为:门阵列、标准单元、全定制三类。(3)混合ASIC:具有面向用户的编程功能和逻辑资源,同时也含有可方便调用和配置的硬件标准单元模块。 4.EDA设计分五级进行分层次设计:(1)系统级即行为级;(2)RTL级;(3)门级:即逻辑设计,以电路或触发器作基本部件,表达各种逻辑关系;(4)电路级:可看作分离的元件为基本元件,具体表达电路在时域的伏安特性或频域的响应等性能;(5)器件级:即板图级。 5.面向FPGA的开发流程:设计输入(图形输入、文本输入)、综合、布线布局(适配)、仿真(时序仿真、功能仿真)、下载和硬件测试。 6.综合的概念:电子设计中,将用行为和功能层次表达的电子系统转换为低层次的便于具体实现的模块组合装配的过程称为综合。事实上,设计过程中的每一步都可称为一个综合环节。 7.综合的分类:(1)从自然语言转换到VHDL语言算法表示,即自然语言综合。(2)从算法表示转换到寄存器传输级(RegisterTransport Level,RTL),即从行为域到结构域的综合,即行为综合。(3)从RTL级表示转换到逻辑门(包括触发器)的表示,即逻辑综合。(4)从逻辑门表示转换到版图表示(ASIC设计),或转换到FPGA的配置网表文件,可称为版图综合或结构综合。8.在EDA技术中,自顶向下的设计方法的重要意义是什么? 在EDA技术应用中,自顶向下的设计方法,就是在整个设计流程中各设计环节逐步求精的过程。 9.综合在电子设计自动化中的地位是什么? 答:是核心地位(见图1-3)。综合器具有更复杂的工作环境,综合器在接受VHDL程序并准备对其综合前,必须获得与最终实现设计电路硬件特征相关的工艺库信息,以及获得优化综合的诸多约束条件信息;根据工艺库和约束条件信息,将VHDL程序转化成电路实现的相关信息。 8.适配器:也称结构适配器,它的功能是将由综合器产生的网表文件配置于指定的目标器件中,使之产生最终的下载文件。 9.时序仿真:是接近真实器件运行特性的仿真,仿真文件中己包含了器件硬件特性参数,因而,仿真精度高。 10.功能仿真:是直接对VHDL、原理图或其他描述形式的逻辑功能进行测试模拟,以了解其实现的功能是否满足原设计的要求的过程,仿真过程不涉及任何具体器件的硬件特性。11.时序仿真与功能仿真的区别:时序仿真的仿真文件必须来自针对具体器件的适配器。综合后所得的EDIF等网表文件通常作为FPGA适配器的输入文件,产生的仿真网表文件中包含了精确的硬件延迟信息。功能仿真的过程不涉及任何具体器件的硬件特性。不经历适配阶段,在设计项目编辑编译(或综合)后即可进入门级仿真器进行模拟测试。直接进行功能仿真的好处是设计耗时短,对硬件库、综合器等没有任何要求。 12.IP定义为用于ASIC或FPGA/CPLD中预先设计好的电路功能模块。 13.IP分为软IP(用VHDL等硬件面熟语言描述的功能块,但是并不涉及用什么具体电路元件实现这些功能)、固IP(完成了综合的功能块)和硬IP(提供设计的最终阶段产品-掩膜)。 14.基于VHDL的自顶向下设计方法(1)设计说明书(2)建立VHDL行为模型(3)VHDL行为仿真(4)VHDL-RTL级建模(5)前端功能仿真(6)逻辑综合(7)测试向量生成(8)功

EDA技术与VHDL(复习提纲)

EDA技术与VHDL 第1章概述 第2章PLD硬件特性与编程技术 第3章VHDL基础 1. 实体的概念?程序<-->元件图 2. 结构体的概念?程序<-->逻辑电路 3. P42页图3-2对应的逻辑表达式是什么?为什么能够实现2选1多路选择器? 4. 2选1多路选择器的3种实现方法? 真值表<-->逻辑表达式<-->逻辑电路图<-->程序? 5. P44页图3-3/mux21a功能时序波形的理解? 6. 标识符能用关键词起名,也能用EDA工具库中预定义的元件名起名? 7.综合的作用或意义? 8. 可综合的端口模式分别是?数据的流动方向和方式? 9. INOUT、BUFFER的区别? 10.什么是RTL? 11.什么是VHDL的RTL描述? 12.在VHDL中,所有合法的顺序描述语句都必须放在进程语句中?13.通常要求将进程中所有的输入信号都放在敏感信号表中?14.试叙述进程的?启动-运行?过程?

15.在一个结构体中只能包含一个进程语句结构? 16.所有进程语句都是并行语句? 17.任一进程PROCESS内部语句结构属于顺序语句? 18.VHDL代码文件的后缀扩展名是? 19.建议程序文件名与该程序的实体名一致? 20.文件名区分大小写吗? 21.P48页例3-6,D触发器工作原理? 22.STD_LOGIC数据类型定义的数据有几个?分别是什么?什么含义?综合器支持哪几个数据? 23.关键词?EVENT?的作用? 24.假设clock的数据类型是BIT,试解释为什么?clock’ EVENT AND clock=’1’”表达式是用来对clock的上升沿进行检测?25.结合P48例3-6说明,为什么不完整条件语句是构建时序电路的关键? 26.检测时钟信号上升沿的不同表述方法?(4) &27.半加器:真值表<-->逻辑表达式<-->逻辑电路图<-->程序?28.全加器电路图? 29.双横线?--?? 30.元件例化语句的表达式?例化名和元件名如何理解?PORT MAP ()端口映射语句中的?端口名=>连接端口名?,端口名和连接端口名的区分? 31.试用两种方法设计4位二进制加法计数器?(1:BUFFER;2:

EDA技术与VHDL期末复习

1.下降沿与上升沿的描述。 a)上升沿:clock’event and clock=’1’ rising_edge() b)下降沿:clock’event and clock=’0’ falling_edge() 2.信号与变量的区别 3.实体中有哪些端口,及其含义。 in: 输入型,此端口为只读型。 out: 输出型,只能在实体内部对其赋值。 inout:输入输出型,既可读也可赋值。 buffer: 缓冲型,与 out 相似,但可读。 4.编程,配置。 通常,将对CPLD的下载称为编程,对FPGA中的SRAM进行直接下载的方式称为配置,但对于OTP FPGA的下载和对FPGA的专用配置ROM的下载仍称为编程 5.3-8译码器真值表,写程序 LIBRARY IEEE ; USE IEEE.STD_LOGIC_1164.ALL; Array ENTITY coder IS PORT(A : IN STD_LOGIC_VECTOR(1 TO 3) Y: OUT STD_LOGIC_VECTOR(7 DOWNTO 0)); END coder ; ARCHITECTURE a1 or coder IS Begin IF A=“000” THEN Y<=“00000001”; ELSIF A=“001” THEN Y<=“00000010”; ELSIF A=“010” THEN Y<=“00000100”; ELSIF A=“011” THEN Y<=“00001000”; ELSIF A=“100” THEN Y<=“00010000”; ELSIF A=“101” THEN Y<=“00100000”; ELSIF A=“110” THEN Y<=“01000000”; ELSE Y<=“10000000”; END IF; END a1; 6.CPLD,FPGA的中文含义 CPLD:(Complex Programmable Logic Device)复杂可编程逻辑器件 FPGA:(Field Programmable Gate Array)现场可编程门阵列 ASIC:(Application Specific Integrated Circuit)专用集成电路 7.常用的库、包 library ieee; use ieee.std_logic_1164.all; use ieee.std_logic_Arith.all;

EDA技术VHDL语言

EDA技术VHDL语言课程大作业 设计题目:分频电路 姓名:段亮 班级:自动化10(4) 学号: 41003010410

一.设计背景 EDA电子设计自动化是Electronic Design Automation的简称,20世纪60年代中期发展开始至今,已经取得了飞跃性的进步,在电子技术设计领域,可编程逻辑器件(如CPLD、FPGA)的应用,已经非常普及,这些可编程逻辑器件为数字系统的设计带来了相当大的灵活性。这些器件可以通过软件编程而对其硬件结构和工作方式进行重构和改变,这就使得硬件的设计可以如同软件设计那样方便快捷效率高,可编程逻辑器件加快了EDA技术的发展,在现代社会,尤其是电子信息科技行业发展突飞猛进,在化工、机械、电子、通信、医学、航空航天、矿产、生物、军事等各个领域都有EDA的广泛应用在数字逻辑电路设计中,分频器是一种基本电路,通常用来对某个给定频率的时钟进行分频,得到所需的时钟。时序电路设计中需要各种各样的分频器来获得不同频率的时钟,其中以整数分频器最为常见。但是在某些需要使用电平逻辑的设计中,我们更希望分频时钟拥有50%的占空比,或者与驱动时钟相同的占空比。这时就需要通过另外的逻辑方法来进行分频,本作业就针对奇数分频占空比50%进行设计。 本作业题目:分频电路:将20M的时钟信号分频生成5khz的方波,再将此方波分频生成1khz占空比为50%的方波。 二. 设计方案 2.1分频总体思路 首先对20MHZ的频率进行分频,将其分成5KHZ的频率,再此将

5KHZ的频率分成1KHZ的占空比是50%的方波。 2.2 计时模块系统流程框图 2.3 设计思路 本课题的主要解决问题是对占空比是50%的方波,由于最后需要将5KHZ的频率分成1KHZ的占空比是50%的方波,其解决方案是: 1.任意占空比的偶数分频及非等占空比的奇数分频,通常由计数器或计数器的级联来完成。 2.等占空比的奇数分频电路。要实现占空比为50%的M=2N+1分频电路。 对于占空比为非 50%的输出时钟在输入时钟的上升沿触发翻转。若在同一个输入时钟周期内,此计数器分别在输入时钟的上升沿和下降沿触发翻转得到的两路信号,再将所得到的信号进行逻辑或,即可得到占空比为 50%的奇数倍分频时钟。另外,对于实现占空比为50%的N倍奇数分频,首先进行上升沿触发进行模N计数,计数选定到某一个值进行输出时钟翻转,然后经过(N-1)/2再次进行翻转得到一个占空比非50%奇数n分频时钟。再者同时进行下降沿触发的模N计数,到和上升沿触发输出时钟翻转选定值相同值时,进行输出时钟时钟翻转,同样经过(N-1)/2时,输出时钟再次翻转生成占空比非50%的奇数n分频时钟。两个占空比非50%的n分频时钟相或运算,得到占空比为50%的奇数n 分频时钟。另外一种方法:对进行奇数倍n分频时钟,首先进行n/2分频(带小数,即等于(n-1)/2+0.5),然后再进行二分频得到。得到占空比为50%的奇数倍分频。奇数倍分频原理下图所示:

EDA技术与VHDL复习题

第一部分 1-1 EDA技术与ASIC设计和FPGA开发有什么关系? 答:利用EDA技术进行电子系统设计的最后目标是完成专用集成电路ASIC的设计和实现;FPGA和CPLD 是实现这一途径的主流器件。FPGA和CPLD通常也被称为可编程专用IC,或可编程ASIC。FPGA和CPLD的应用是EDA技术有机融合软硬件电子设计技术、SoC (片上系统)和ASIC设计,以及对自动设计与自动实现最典型的诠释。 1-2与软件描述语言相比,VHDL有什么特点? 答:编译器将软件程序翻译成基于某种特定CPU 的机器代码,这种代码仅限于这种CPU而不能移植,并且机器代码不代表硬件结构,更不能改变CPU的硬件结构,只能被动地为其特定的硬件电路结构所利用。综合器将VHDL程序转化的目标是底层的电路结构网表文件,这种满足VHDL设计程序功能描述的电路结构,不依赖于任何特定硬件环境;具有相对独立性。综合器在将VHDL(硬件描述语言)表达的电路功能转化成具体的电路结构网表过程中,具有明显的能动性和创造性,它不是机械的一一对应式的“翻译”,而是

根据设计库、工艺库以及预先设置的各类约束条件,选择最优的方式完成电路结构的设计。 l-3什么是综合?有哪些类型?综合在电子设计自动化中的地位是什么? 什么是综合? 答:在电子设计领域中综合的概念可以表示为:将用行为和功能层次表达的电子系统转换为低层次的便于具体实现的模块组合装配的过程。 有哪些类型?答:(1)从自然语言转换到VHDL语言算法表示,即自然语言综合。(2)从算法表示转换到寄存器传输级(RegisterTransport Level,RTL),即从行为域到结构域的综合,即行为综合。(3)从RTL 级表示转换到逻辑门(包括触发器)的表示,即逻辑综合。(4)从逻辑门表示转换到版图表示(ASIC设计),或转换到FPGA的配置网表文件,可称为版图综合或结构综合。 综合在电子设计自动化中的地位是什么?答:是核心地位(见图1-3)。综合器具有更复杂的工作环境,综合器在接受VHDL程序并准备对其综合前,必须获得与最终实现设计电路硬件特征相关的工艺库信息,以及获得优化综合的诸多约束条件信息;根据工艺库和约束条件信息,将VHDL程序转化成电路实现的相关信息。

EDA技术课后答案

EDA习题第一章 1.1 EDA的英文全称是什么?EDA的中文含义是什么? 答:EDA即Electronic Design Automation的缩写,直译为:电子设计自动化。 1.2 什么叫EDA技术? 答:EDA技术有狭义和广义之分,狭义EDA技术就是以大规模可编程逻辑器件为设计载体,以硬件描述语言为系统逻辑描述的主要表达方式,以计算机、大规模可编程逻辑器件的开发软件及实验开发系统为设计工具,通过有关的开发软件,自动完成用软件的方式设计的电子系统到硬件系统的逻辑编译、逻辑化简、逻辑分割、逻辑综合及优化、逻辑布局布线、逻辑仿真,直至完成对于特定目标芯片的适配编译、逻辑映射、编程下载等工作,最终形成集成电子系统或专用集成芯片的一门新技术,或称为IES/ASIC自动设计技术。 1.3 利用EDA技术进行电子系统的设计有什么特点? 答:①用软件的方式设计硬件;②用软件方式设计的系统到硬件系统的转换是由有关的开发软件自动完成的;③设计过程中可用有关软件进行各种仿真;④系统可现场编程,在线升级; ⑤整个系统可集成在一个芯片上,体积小、功耗低、可靠性高。 1.4 从使用的角度来讲,EDA技术主要包括几个方面的内容?这几个方面在整个电子系统的设计中分别起什么作用? 答:EDA技术的学习主要应掌握四个方面的内容:①大规模可编程逻辑器件;②硬件描述语言;③软件开发工具;④实验开发系统。其中,硬件描述语言是重点。 对于大规模可编程逻辑器件,主要是了解其分类、基本结构、工作原理、各厂家产品的系列、性能指标以及如何选用,而对于各个产品的具体结构不必研究过细。 对于硬件描述语言,除了掌握基本语法规定外,更重要的是要理解VHDL的三个“精髓”:软件的强数据类型与硬件电路的惟一性、硬件行为的并行性决定了VHDL语言的并行性、软件仿真的顺序性与实际硬件行为的并行性;要掌握系统的分析与建模方法,能够将各种基本语法规定熟练地运用于自己的设计中。 对于软件开发工具,应熟练掌握从源程序的编辑、逻辑综合、逻辑适配以及各种仿真、硬件验证各步骤的使用。 对于实验开发系统,主要能够根据自己所拥有的设备,熟练地进行硬件验证或变通地进行硬件验证。 1.5 什么叫可编程逻辑器件(简称PLD)?FPGA和CPLD的中文含义分别是什么?国际上生产FPGA/CPLD的主流公司,并且在国内占有较大市场份额的主要有哪几家?其产品系列有哪些?其可用逻辑门/等效门数大约在什么范围? 答:可编程逻辑器件(简称PLD)是一种由用户编程以实现某种逻辑功能的新型逻辑器件。FPGA和CPLD分别是现场可编程门阵列和复杂可编程逻辑器件的简称。 国际上生产FPGA/CPLD的主流公司,并且在国内占有市场份额较大的主要是Xilinx,Altera,Lattice三家公司。 Xilinx公司的FPGA器件有XC2000,XC3000,XC4000,XC4000E,XC4000XLA,XC5200系列等,可用门数为1200~18 000;Altera公司的CPLD器件有FLEX6000,FLEX8000,FLEX10K,FLEX10KE 系列等,提供门数为5000~25 000;Lattice公司的ISP-PLD器件有ispLSI1000,ispLSI2000,ispLSI3000,ispLSI6000系列等,集成度可多达25 000个PLD等效门。

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

2010—2011学年第一学期期末考试试卷(闭卷) 年级 2008 专业信息处理与交换(本)课程名称 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型状态机其输出是当前状态和所有输入的函数 B.与Moore型状态机相比,Mealy型的输出变化要领先一个时钟周期 C.Mealy型状态机其输出是当前状态的函数 D.以上都不对 6.下列标识符中, B 是不合法的标识符。

相关主题
文本预览
相关文档 最新文档