EDA基础知识复习要点 下载本文

EDA知识要点:

2.VHDL数据对象有: (1)常量(CONSTANT)(2)变量(VARIABLE)(3)信号(SIGNAL)

3.VHDL语言中的逻辑操作符有: AND与、OR或、NOT非、NAND与非、NOR或非 XOR异或、XNOR同或七种

4.目前较流行的集成EDA开发环境(软件)有:MAX+PULSⅡ和QUARTUS II

5.什么是EDA技术?EDA 技术就是以计算机为工作平台、以EDA软件工具为开发环境、以硬件描述语言为设计语言、以ASIC(Application Specific Integrated Circuits)为实现载体的电子产品自动化设计的过程

7.写出实体中的端口(PORT)语句结构并说明其作用。由PORT引导的端口说明语句是对一个设计实体界面的说明,端口为设计实体和外部环境的动态通信提供通道。 格式为PORT(端口名:端口模式 数据类型; 。。。。。。。。

端口名:端口模式 数据类型;) 8.简述EDA技术经历了那几个发展阶段。 1).CAD(计算机辅助设计)阶段 2).CAE(计算机辅助工程)阶段 3).ESDA(电子系统设计自动化)阶段

9.写出元件例化语句语句格式,并说明其作用。元件例化语句由两部分组成,前一部分是把一个现成的设计实体定义为一个元件,第二部分则是此元件与当前设计实体中的连接说明,它们的完整的语句格式如下: COMPONENT 元件名 IS --元件定义语句 GENERIC (类属表); PORT(端口名表); END COMPONENT ;

例化名:元件名 PORT MAP( --元件例化语句 [端口名=>]连接端口名,...);

11.结构体的语言格式与作用。 ARCHITECTURE 结构体名OF 实体名 IS

(说明语句) 用来说明和定义数据对象 类型等,可省略 BEGIN

(功能描述语句) 用来描述内部电路功能的,不可省略 END ARCHITECTURE 结构体名 ;

结构体用来描述设计实体的结构或行为,即描述一个实体的功能,把设计实体的输入和输出之间的联系建立起来。

12.比较变量和信号的区别: (1)信号赋值至少有δ延时,而变量赋值没有延时。

(2)信号除当前值外有许多相关的信息,而变量只有当前值。 (3)进程对信号敏感而对变量不敏感。

(4)信号可以是多个进程的全局信号;而变量只在定义它们的顺序域可见(共享变量除外)。

(5)信号是硬件中连线的抽象描述,它们的功能是保存变化的数据和连接子元件,信号在元件的端口连接元件。变量在硬件中没有类似的对应关系,它们用于硬件特性的高层次建模所需要的计算中。

(6)信号赋值和变量赋值分别使用不同的赋值符号“<=”和“:=”,信号类型和变量类型可以完全一致,也允许两者之间相互赋值,但要保证两者的类型相同。

13.写出PROCESS语句结构的一般表达格式? PROCESS语句格式

PROCESS语句的表达格式如下:

[进程标号:]PROCESS[(敏感信号参数表)][IS] [进程说明部分] BEGIN

顺序描述语句

END PROCESS[进程标号];

PROCESS为关键词,所有顺序描述语句都必须放在由PROCESS引导的进程语句当中执行。 后面的括号中为敏感信号表,进程语句的执行依赖敏感信号的跳变的变化,当敏感信号变化时启动进程语句,执行一边整个进程的顺序语句后进入等待状态,直到下一个敏感信号的跳变。

14.EDA技术常用的输入方法有?原理图输入法,HDL文本输入 15.什么是实体和结构体,其功能是什么?

实体是一个设计实体的表层设计单元,其功能是对这个设计实体与外部电路进行接口描述。它规定了设计单元的输入输出接口信号或引脚,是设计实体经封装后对外界的一个通信界面。结构体用来描述设计

实体的结构或行为,即描述一个实体的功能,把设计实体的输入和输出之间的联系建立起来。 22.可编程器件(PLD)分为:CPLD, FPGA

24.在VHDL语言中常见的的数据类型有那些?VHDL的数据类型分为4大类 标量类型:包括实数、整数、枚举、物理 复合类型:数组、记录 存取类型: 文件类型:

27.实体部分的端口模式有四个类型:

OUT单向输出端口 IN单向输入端口 INOUT输入输出双向端口 BUFFER反馈式双向端口 31.进程语句必须由什么来启动?

进程的激活必须由敏感信号表中定义的任一敏感信号的变化来启动,否则必须有一显式的WAIT语句来激活。

32.进程要点有哪些?进程的设计需要注意以下几方面的问题:

(1)虽然同一结构体中的进程之间是并行运行的,但同一进程中的逻辑描述语句则是顺序运行的,因而在进程中只能设放置顺序语句。

(2)进程的激活必须由敏感信号表中定义的任一敏感信号的变化来启动,否则必须有一显式的WAIT语句来激活。

(3)结构体中多个进程之所以能并行同步运行,一个很重要的原因是进程之间的通信是通过传递信号和共享变量值来实现的。

(4)进程是重要的建模工具。进程结构不但为综合器所支持,而且进程的建模方式将直接影响仿真和综合结果。

EDA技术伴随着计算机、集成电路、电子系统设计的发展,经历了CAD、CAE、EDA三个发展阶

段。

2、 EDA工具以逻辑模拟、定时分析、故障仿真、自动布局/布线为核心,重点解决电路设计没有完

成之前的功能检测问题。

3、 EDA工具不仅具有电子系统设计的能力,而且能提供独立于工艺和厂家的系统级设计能力,具

有高级抽象的设计构思手段。

4、 EDA以大规模可编程逻辑器件为设计的载体,以硬件描述语言(HDL)为系统逻辑描述的主要表达方式,以计算机、大规模可编程逻辑器件的开发软件(MAX+PLUS II、QUARTUS II、

ispEXPERT、FOUNDATION等)及实验开发系统为设计工具,自动完成用软件方式设计的电子系统到硬件系统的逻辑编译、逻辑分割、逻辑综合及优化、逻辑布局布线、逻辑仿真,直至对特定目标芯片的适配、编译、编程下载等工作,最终形成集成电子系统或专用集成芯片(ASIC)的一门新技术。

5、 CAA技术和PCB-CAD技术不具备逻辑综合和逻辑适配的功能,因此不能称为真正意义上的EDA

技术。

6、 三大主流可编程器件生产公司:ALTERA、XILINX(赛灵思公司)、LATTICE(莱迪思 ) 7、 可编程逻辑器件特点:高集成度、高速度(并行工作方式)、高可靠性

8、 硬件描述语言是EDA技术的重要组成部分,常用的有VHDL、Verilog、ABEL。 9、 VHDL有1983和1987两种版本

10、EDA主流的软件开发工具:ALTERA的Max+Plus II和Quartus II; Lattice公司的ispExpert;

Xilinx公司的Foundation 11、**实验开发系统组成:

基本信号发生模块:如时钟、脉冲、高低电平等

FPGA/CPLD输出信息显示模块:如数码显示、发光管显示、声响显示等 监控程序模块,提供“电路重构软配置”

目标芯片适配座及其上的FPGA/CPLD芯片和编程下载电路 12、eda设计输入的三种形式:原理图输入,状态输入,波形输入 13、HDL文本编辑是最一般化,最具普遍性的输入方法。

14、综合过程就是将设计者在EDA平台上编辑输入的HDL文本、原理图或状态图形描述,

依据给定的硬件结构组件和约束控制条件进行编译、优化、转换和综合,最终获得门级电路甚至

更底层的电路描述网表文件。

15、网表文件将软件描述与给定的硬件结构对应起来,使两者之间形成相应互的映射关系

16、编译器将软件程序翻译成特定的CPU机器码,不能移植;机器码只能被动的为特定的硬件电路结

构所利用(一一对应、机械式的“翻译”行为)。

综合后的电路网表文件不依赖任何硬件环境,可以独立的存在,轻易的移植到ASIC、FPGA等硬件环境中;非机械性的翻译,而是根据设计库、工艺库和预先设置的各类约束条件,选择最优的方式完成电路结构(相同的VHDL描述,综合器可用不同的电路结构实现,具有能动性和创造性) 17、eda设计过程过程中的三种仿真:vhdl仿真,功能仿真,时序仿真。

18、适配器也称结构综合器,它的功能是将由综合器产生的网表文件配置于指定的目标器件中,使之

产生最终的下载文件,如JEDEC、Jam格式的文件。适配所选定的目标器件(FPGA/CPLD芯片)必须属于原综合器指定的目标器件系列。

19、逻辑综合通过后必须利用适配器将综合后网表文件针对某一具体的目标器件进行逻辑映射操作,

其中包括底层器件配置、逻辑分割、逻辑优化、逻辑布局布线操作。适配完成后可以利用适配所产生的仿真文件作精确的时序仿真,同时产生可用于编程的文件。

20、通常,将对CPLD的下载称为编程(Program),对FPGA中的SRAM进行直接下载的方式称为配

置(Configure)。

21、FPGA/CPLD的工作设计流程:原理图/VHDL文本编辑,综合(逻辑综合),适配(结构综合),

时序与功能仿真,编程下载,硬件测试。

22、与软件描述语言相比,VHDL设计的程序不依赖于特定的硬件环境,可移植。 23、EDA技术使得设计者的工作仅限于利用软件的方式,即利用硬件描述语言和EDA软件来完成对

硬件系统功能的实现。

24、自顶向下设计步骤:设计说明 建立vhdl行为仿真模型 vhdl行为仿真 vhdl-rtl级建模 前端功能仿真 逻辑综合 测试向量生成 功能仿真 结构综合 门级时序仿真 硬件测试 设计完成。

VHDL有如下特点:

①支持从系统级到逻辑门级电路的描述; ②具有很强的硬件描述能力;

③设计技术齐全、方法灵活、支持广泛; ④对设计描述具有相对的独立性; ⑤具有很强的移植能力; ⑥易于共享和复用;

⑦具有丰富的仿真语句和库函数; ⑧设计结构清晰、易读易懂; ⑨易实现系统的更新和升级; ⑩数据类型丰富、安全性好。

VHDL语言中常用的五种库:

1)IEEE库:VHDL语言设计中最常见的库。 2)STD库:VHDL语言的标准库

3)WORK库:用户的VHDL语言工作库。 4)VITAL库: VHDL语言的时序仿真库 5)用户自定义的库:用户自定义的资源库 变量的使用规则:

① 变量不能用于硬件连线和存储元件;

② 变量赋值和初始化赋值都用“:=”表示;

③ 变量的初值不是预设的,某一时刻只能有一个值; ④ 变量不能用于在进程间传递数据; ⑤ 仿真时,变量用于建模;

⑥ 综合时,变量充当数据的暂存。

VHDL语言预定义了五种运算符:逻辑运算符、算术运算符、关系运算符、符号运算符、移位运算符

EDA软件系统包括子模块:设计输入子模块、设计数据库子模块、分析验证子模块、综合仿真子模块、布局布线子模块。

电子系统设计的仿真过程分为两个阶段:设计前期的系统级仿真和设计过程的电路级仿真。(系统仿真主要验证系统的功能;电路级仿真主要验证系统的性能,决定怎样实现设计所需的精度。) 设计过程中的仿真有三种:行为仿真、功能仿真、时序仿真 数字系统的两个模块(子系统):数据处理子系统、控制子系统

数据处理子系统主要完成数据的采集、存储、运算、传输,主要由存储器、运算器、数据选择器等功能电路组成。

数字系统设计方法:模块设计方法、自顶向下设计法、自底向上设计法。一般采用自顶向下、由粗到细、逐步求精的方法。

数字系统的设计准则:1)分割准则2)系统的可观测性3)同步和异步电路4)最优化设计5)系统设计的艺术 数字系统的设计步骤:1)系统任务分析2)确定逻辑算法3)建立系统及子系统模型4)系统(或模块)逻辑描述5)逻辑电路级设计及系统仿真6)系统的物理实现

VHDL语言要素:数据对象、数据类型、各类操作数及运算操作符 标识符规则:以英文字母开头,不连续使用下划线“_”,不以下划线结尾的,由26个大小写英文字母、数字0~9及下划线“_”组成的字符串,英文字母不区分大小写,VHDL的保留字不能用于作为标识符使用。 在进程中,只能将信号列到敏感表,而不能将变量列入敏感表。可见进程对信号敏感。

VHDL中的数据类型:标量型(包括:实数型、整数型、枚举型、时间类型)、复合类型(数组型、记录型)、存取型、文件类型

VHDL四大类数据类型又可分为两类:预定义数据类型、用户自定义数据类型(基于预定义数据类型)

预定义数据类型:1)布尔型2)位数据类型(BIT)3)位矢量(BIT_VECTOR)4)字符型5)整数型6)自然数和正整数型7)实数型8)字符串型9)时间型10)错误等级

数据类型:标准逻辑位STD_LOGIC、标准逻辑矢量STD_LOGIC_VECTOR

VHDL中六类基本顺序语句:赋值语句、转向控制语句、等待语句、子程序调用语句、返回语句、空操作语句。

在信号赋值时,当统一进程中,同一信号赋值目标有多个赋值源时,信号赋值目标获得的是最后一个赋值,其前面相同的赋值目标则不作任何变化。

转向控制语句五种:IF语句、CASE语句、LOOP语句、NEXT语句、EXIT语句

当执行WAIT等待语句,程序将被挂起,知道满足结束条件后,程序重新开始执行。已列出敏感量的进程不能使用任何形式的WAIT语句

过程调用:执行一个给定名字和参数的过程

过程名[([形参名=>] 实参表达式 {,[形参名=>]实参表达式})];过程调用步骤:1)将IN和INOUT的形参值赋给调用过程中与之对应的形参;2)执行这个过程;3)将过程中IN和INOUT的形参值赋给对应的实参