EDA技术与VHDL语言重点复习必备_第1页
EDA技术与VHDL语言重点复习必备_第2页
EDA技术与VHDL语言重点复习必备_第3页
EDA技术与VHDL语言重点复习必备_第4页
EDA技术与VHDL语言重点复习必备_第5页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、学习好资料欢迎下载1 .EDA即Electronic Design Automation (电子设计自动化),就是以计算机为工作平台,以EDA软件工具为开发环境,以硬件描述语言(HDL)为设计语言,以可编程逻辑器件为实验载体,以 ASIC (Application Specific Integrated Circuit )、SOC (System On a Chip)芯片为目标器件, 以电子系统设计为应用方向的电子产品自动化设计过程。2 .EDAt后实现的目标:全定制或半定制ASIC计,FPGA/CPLDf发应用。3 .作为ED破术最终实现目标的 ASIG通过三种途径来完成:(1)超大规模可编

2、程逻辑器件: 实现这一途径的主流器件是 FPGA/CPLD直接面向用户,具有极大的灵活性和通用性,使用 方便,开发效率高,成本低,技术维护简单,工作可靠性好。(2)半定制或全定制ASIC:根据实现工艺,可统称为掩膜 ASIG可编程的ASICM有灵活多样的编程功能。掩膜ASIC分为:门阵列、标准单元、全定制三类。 (3)混合ASIC:具有面向用户的编程功能和逻辑资源,同 时也含有可方便调用和配置的硬件标准单元模块。4 .EDA设计分五级进行分层次设计:(1)系统级即行为级;(2) RTL级;(3)门级:即逻辑设计,以电路或触发器作基本部件,表达各种逻辑关系;(4)电路级:可看作分离的元件为基本元

3、件,具体表达电路在时域的伏安特性或频域的响应等性能;(5)器件级:即板图级。5 .面向FPGA的开发流程:设计输入(图形输入、文本输入)、综合、布线布局(适配)、仿真(时序仿真、功能仿真)、下载和硬件测试。6 .综合的概念:电子设计中,将用行为和功能层次表达的电子系统转换为低层次的便于具体 实现的模块组合装配的过程称为综合。事实上,设计过程中的每一步都可称为一个综合环节。7 .综合的分类:(1)从自然语言转换到 VHDL语言算法表示,即自然语言综合。(2)从算法表示转换到寄存器传输级(RegisterTransport Level, RTL)即从行为域到结构域的综合,即行为综 合。(3)从RT

4、L级表示转换到逻辑门(包括触发器)的表示,即逻辑综合。(4)从逻辑门表示转换 到版图表示(ASIC设计),或转换到FPGA的配置网表文件,可称为版图综合或结构综合。8 .在EDA技术中,自顶向下的设计方法的重要意义是什么?在EDA技术应用中,自顶向下的设计方法,就是在整个设计流程中各设计环节逐步求精的过程。9 .综合在电子设计自动化中的地位是什么?答:是核心地位(见图1-3)。综合器具有更复杂的工作环境,综合器在接受 VHDL程序并准备对其综合前,必须获得与最终实现设计电路硬 件特征相关的工艺库信息,以及获得优化综合的诸多约束条件信息;根据工艺库和约束条件信息,将VHDL程序转化成电路实现的相

5、关信息。10 适配器:也称结构适配器,它的功能是将由综合器产生的网表文件配置于指定的目标器件 中,使之产生最终的下载文件。11 时序仿真:是接近真实器件运行特性的仿真,仿真文件中己包含了器件硬件特性参数,因 而,仿真精度高。12 .功能仿真:是直接对VHDL、原理图或其他描述形式的逻辑功能进行测试模拟,以了解其 实现的功能是否满足原设计的要求的过程,仿真过程不涉及任何具体器件的硬件特性。13 .时序仿真与功能仿真的区别:时序仿真的仿真文件必须来自针对具体器件的适配器。综合后所得的EDIF等网表文件通常作为 FPGA适配器的输入文件,产生的仿真网表文件中包含 了精确的硬件延迟信息。功能仿真的过程

6、不涉及任何具体器件的硬件特性。不经历适配阶段,在设计项目编辑编译 (或综合)后即可进入门级仿真器进行模拟测试。直接进行功能仿真的好处是设计耗时短,对硬件库、综合器等没有任何要求。12.IP定义为用于ASIC或FPGA/CPL计预先设计好的电路功能模块。13.IP分为软IP(用VHDL等硬件面熟语言描述的功能块,但是并不涉及用什么具体电路元件实现这些功能)、固IP (完成了综合的功能块)和硬 IP (提供设计的最终阶段产品-掩膜)。14.基于VHDL的自顶向下设计方法 (1)设计说明书(2)建立VHDL行为模型(3) VHDL行 为仿真(4)VHDL-RTL建*H( 5)前端功能仿真(6)逻辑综

7、合(7)测试向量生成(8)功能仿真(9)结构综合(10)门级时序仿真(11)硬件测试(12)设计完成可编程逻辑器件(PLD)诞生于20世纪70年代.80年代以后迅速发展.是大规模集成电路技术发展的产物,是一种半定制的集成电路,结合EDA技术可以快速、方便地构建数字系统。1 .自问世以来,PLD经历了 PROM (Programmable Read Only Memory,可编程只读存储器)、 PLA ( Programmable Logic Array,可编程逻辑阵列)、PAI, ( Programmable Array Logic,可编程阵 列逻辑)、GAL (Generic Array L

8、ogic,通用阵列逻辑) 到 FPGA ispLS I (in system programmable Large Scale IC在系统可编程大规模集成电路)等高密度 PLD的发展过程。2 .可编程逻辑器件(PLD)的分类:(1)按集成度(PLD汾类:低集成度PLD( PROM、PLA PAL GAL.),高集成度 PLD CPLDFPGA 。(2)从结构上分:乘积项结构器件(大部分简单 PLD和CPLD,查找表结构器件,FPGA(3)从编程工艺上分类:熔丝(Fuse厚器件,反熔丝型器件,EPROM型,EEPROM1 ,SRAM型,Flash 型。(4)从可编程特性上分类:一次可编程,重复可

9、编程.3 .PROM ( Programmable Read Olny Memory 可编程只读存储器):只能用于组合电路的可编 程,输入变量的增加会引起存储容量的增加。多输入变量的组合电路函数是不适合用单个 PROM来编程表达的。4 .PLA:与阵列和或阵列都可编程。把逻辑函数化成最简的与或表达式,然后用可编程的与 阵列构成与项,用可编程对或阵列构成与项的或运算,在有多个输出时,要尽量利用公共的与项,以提高阵列的利用率。5 .PAL包含与阵列、或阵列,但或阵列是固定的,只有与阵列可编程。一次可编程,修改不方便。6 .GAL:具有电可擦除重复编程的特点,与阵列可编程、或阵列固定增加了输出逻辑宏

10、单元。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 .常量定

11、义的一般表述:CONSTANT常数名:数据类型:=表达式;定义语句所允许的设计单元有实体、结构体、程序包、块、进程和子程序。常数的可视性,即常数的使用范围取 决于它被定义的位置。3.变量定义的一般表述:VARIABLE变量名:数据类型:=初始值4.信号定义的一般表述:SIGNAL信号名: 数据类型:=初始值;信号SIGNAL变量 VARIABLE基本用法用于作为电路中的信号连线r用于作为进程中局部数据存储单兀适用范围在整个结构体内的任何地方都能适 用只能在所定义的进程中使用,局部量, 只能在进程和子程序中使用。行为特性在进程的最后才对信号赋值r立即赋值作用在进程中作为临时的数据存储单元。进程的

12、结构:包含了一个代表着实体中部分逻辑行为的、独立的顺序描述语句。5.进程的组成:(1)进程说明部分(包括数据类型、常数、变量、属性、子程序等) (2)顺 序描述语句(分为赋值语句(信号、变量) 、进程启动语句、子程序调用语句、顺序描述语句和进程跳出语句等,)(3)敏感信号参数表6.进程的特点(要点):(1) PROCES的一无限循环语句。(2) PROCESS的顺序语句具有明显的顺序/并行运行双重性。(3)进程必须由敏感信号的变化来启动。(4)进程语句本身是并行语句。(5)信号是多个进程间的通信线。(6) 一个进程中只允许描述对应于一个时钟信号的同步时序逻辑 。1.(1) TYPE数据类型名I

13、S数据类型定义 OF基本数据类型;(2) TYPE数据类型名IS数据类型定义;2 .状态机的优势:(1)状态机克服了纯硬件数字系统顺序方式控制不灵活的缺点。(2)状态机可以定义符号化枚举类型的状态。(3)状态机容易构成性能良好的同步时序逻辑模块。(4)状态机的VHDL表述丰富多样、程序层次分明,易读易懂。(5)在高速运算和控制方面,状态机更有其巨大的优势。(6)高可靠性。3 .状态机的结构:(1)说明部分(一般放在结构体的 architecture和begin之间);(2)主控 时序进程;(3)主控组合进程;(4)辅助进程(用于配合状态机工作的组合进程或时序进程)。4 .Moore状态机和 M

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

15、、返回语句和空操作语句。2 .FOR_LOOP语句,语法格式如下:LOOP标号:FOR循环变量IN 循环次数范围 LOOP顺序语句END LOOP LOO标号;3 . (1) NEXT;-第一种语句格式(2) NEXT LOOPB号;-第二种语句格式(3) NEXT LOOPB号WHEN条件表达式第三种语句格式4 .(1) WAIT;-第一种语句格式(2) WAIT ON信号表;-敏感信号等待语句(3) WAIT UNTIL条件表达式;-条件等待语句(4) WAIT FOR时间表达式; 超时等待语句5 .结构体中的可综合的 并行语句主要有九种:(1)并行信号赋值语句。(2)进程语句。(3) 块

16、语句。(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 .

17、下列语句在并行部分和顺序部分都是合法的:信号赋值、类型和常数的说明、函数和过程调用、Assert语句、After延迟、信号属性。1 .函数的语言表达格式如下:-函数首-函数体END FUNCTION 函数名;FUNCTION函数名(参数表)RETURN数据类型FUNCTION函数名(参数表)RETURN数据类型IS说明部分BEGIN顺序语句;2 .什么是重载函数?重载算符有何用处?如何调用重载算符函数?答:(1)同样名称的函数可以用不同的数据类型作为此函数的参数定义多次,以此定义的函数称为重载函数。(2)用于两个不同类型的操作数据自动转换成同种数据类型,并进行运算 处理。(3)采用隐式方式调用

18、,无需事先声明。3 .决断函数:主要用于解决信号被多个驱动源驱动时,驱动信号间的竞争问题。不可综合、 不能用电路体现出来。4 .过程的语句格式是:PROCEDURES程名(参数表)(-过程首)PROCEDURES程名(参数表)IS说明部分BIGIN (-过程体) 顺序语句;END PROCEDURES程名;5 .重载过程:两个或两个以上有相同的过程名和互不相同的参数数量及数据类型的过程称为 重载过程,或称复用过程。靠参数类型来辨别调用哪个过程。6 .函数和过程的区别:共同点:(1)都是子程序(2)都可在程序包和结构体、进程中定义(3)都有两部分组成,函数由函数首和函数体组成,过程由过程首和过程

19、体组成,(4)都使用顺序描述语句。不同点:(1)函数端口表是用来说明输入值的,而过程的端口表可以定义参数不同的工作模(2)函数的参量是信号或常数,而过程的参量还可以是变量(3)函数的定义中说明返回值的数据类型,而过程中则不需要对返回值数据类型进行说明。7 .库的种类:(1) IEEE库(显示表达):主要包括STD_LOGIC_1164 NUMERIC_BIT和NUMERIC_STD等程序包。STD_LOGIC_ARITH STD_LOGIC_SIGNE丽 STD_LOGIC_UNSIGNED 程序包。(2) STD库(不须显示表达):STANDARDS TEXTIO程序包。(3) WORK库(

20、无须 显示表达,总是可见):WORK库是用户的 VHDL设计的现行工作库,用于存放用户设计和 定义的一些设计单元和程序包。因此自动满足VHDL语言标准,在实际调用中,不必以显式预先说明。(4) VITAL库:除了以上提到的库外,EDA工具开发商为了便于 FPGA/CPLM发设计上的方便,都有自己的扩展库和相应的程序包,如DATAI3司的GENERIC矫、DATAIO库等,以及上面提到的 Synopsys公司的一些库。8 .程序包中至少应包含以下结构中的一种:常数说明、VHDL数据类型说明、元件定义、子程序。9 .定义程序包的一般语句结构如下:PACKAGE程序包名 IS -程序包首程序包首说明

21、部分END程序包名;PACKAGE BODY程序包名 IS -程序包体 程序包体说明部分以及包体内 END程序包名;10 .常用 的预定义的程序包:STD_LOGIC_1164程序包、STD_LOGIC_ARITH© 序包、 STD_LOGIC_UNSIGNEDI STD_LOGIC_SIGNE叫序包、STANDARM TEXTIO程序包。11 .整数:整数都是十进制的数。实数:实数也都是十进制的数,但必须带有小数点。以数 制基数表示的文字:用这种方式表示的数由五个部分组成。(几进制#数#数)。物理量文字(VHDL综合器不接受此类文字)。12 .字符串:data1 <=B"1_1101_1110"-二进制数数组

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论