EDA技术与VHDL语言重点复习必备
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
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 变量名: 数据类型:= 初始值;
进程的结构:包含了一个代表着实体中部分逻辑行为的、独立的顺序描述语句。
5.进程的组成:(1)进程说明部分(包括数据类型、常数、变量、属性、子程序等)(2)顺序描述语句(分为赋值语句(信号、变量)、进程启动语句、子程序调用语句、顺序描述语句和进程跳出语句等,)(3)敏感信号参数表
6.进程的特点(要点):(1)PROCESS为一无限循环语句。(2)PROCESS中的顺序语句具有明