一.名词解释EDA 电子自动化设计electronic design automationFPGA 现场可编程门阵列field programmable gate arrayCPLD 复杂可编程逻辑器件complex programmable logic deviceASIC 特定用途集成电路application specific integrated circuitIP 知识产权intellectual propertySOC 片上系统system on a chipFSM 有限状态机finite state machineMPW 多用途晶圆multi project waferDSP 数字信号处理器digital signal processorMCU 微程序控制器micro control unitHDL 硬件表述语言hardware description languageVHDL 超高速集成电路硬件描述语言very high speed integrated circuit hardware description language二.简答题1.top-down方法:从系统硬件的高层次抽象描述向低层次物理描述的一系列转化过程。
从顶向下设计由功能级,行为级描述开始;寄存器传输(RTL)级描述为第一个中间结果,再将RTL级描述由逻辑综合网表或电路图;利用EDA工具将网表自动转换换成目标文件下载到现场可编程门阵列|复杂可编程逻辑器件或通过自动布局布线设计成专用集成电路,从而得到电路与系统的物理实现。
2.逻辑综合主要通过综合工具,依据设计人员设定的时序,面积等约束条件,将与工艺无关的RTL级的电路逻辑描述程序,转化为与工艺相关的电路,是将程序设计转化为硬件实现的重要环节。
3.简述可编程器件与ASIC在设计应用成本等方面的优缺点面向可编程逻辑器件的设计其设计投入资金小,风险小,开发周期短,调试灵活,易学易用,而ASIC设计的设计资金投入大,流片费用都很昂贵,研发投片制作其有一定的失败风险,且其开发周期较长,调试改动设计都比较困难,不过,产品进入大批量生产后,ASIC 成品的成本往往低于可编程器件成本。
4.top-down过程分为:行为级描述,寄存器传输(RTL)级描述,逻辑综合,物理实现。
5.VHDL描述方式:行为级描述,RTL级描述方式,结构级描述方式。
6.仿真过程:行为级仿真,RTL仿真,门级仿真,后仿真。
7.Top-down设计方法特点:1)在系统设计早期就能发现设计中存在的问题,并尽可能在早期设计阶段就能解决问题。
2)自动化8.top-down优势1)在系统设计早期发现设计中存在的问题,提高设计的一次成功率。
2)大大缩短了系统设计的周期,减少系统开发所耗用的时间。
3)易于系统划分和项目管理,使几十万乃至几百万的大规模复杂数字电路的设计成为可能。
4)设计效率提高,可减少设计人员。
5) 通过设计共享,避免重复设计。
9.HDL:指电子技术高层设计阶段中所采用的硬件描述语言。
特点:1、HDL以行为级描述见长,它能从比较抽象的角度描述电子实体的行为,能够进行早期仿真。
2、HDL能够进行结构化描述,它能从具体的角度描述电子实体结构,便于存档,便于共享。
3、HDL具备了从比较抽象到比较具体的多个层面上进行混合描述能力,降低了硬件电路设计难度。
4、既能被仿真又能被综合。
10.VHDL特点:1)通用型好,适用面广2)重用性好3)可靠性好4)以行为级描述见长。
11.IP分为软核,硬核,固核软核:第二阶段,寄存器级设计结果,且经过RTL级仿真验证。
通常以HDL语言形式提交。
固核:第四阶段,经过FPGA实物验证的设计结果。
通常以门级网表的形式提交。
硬核:第四阶段,经过ASIC工艺验证的设计结果。
通常以版图的形式提交。
三者的价值:从FPGA角度看固核最有价值从ASIC角度看硬核最有价值软核则由于它与工艺和器件均无关,具有高度灵活性,从而具有独特价值。
固核硬化:将固核转化为硬核。
硬核软化:因为硬核必须用过交换或出售才能实现价值最大化。
而在硬核交换过程中,为了保护硬核知识产权,IP提供者往往将硬核以黑匣子形式提供给用户,同时能将硬化软化,即采用硬件描述语言对硬核的功能进行行为级描述,通过使用该行为级描述,在保护匣子具体内容的同时,仍可进行IP仿真。
12.FPGA/CPLD在EDA中具有重要作用1)VHDL程序用过FPGA/CPLD可以得到EDA设计的最终产品,在产品数据较小时快速占领市场。
2)VHDL程序通过FPGA/CPLD验证可以形成固核具有一定商品价值。
3)VHDL程序的FPGA/CPLD验证试验是一种ASIC设计的硬件仿真工具。
13.并行语句和顺序语句在使用上有哪些差异:1)并发语句只能够出现在并发语句结构中,如结构体,BLOCK等,并发语句的执行与其在程序中的书写顺序无关;2)顺序语句只能够出现在顺序语句结构中,如PROCESS,过程,函数等结构中,其执行与书写顺序相关,写在前面的语句先执行,写在后面的依据后执行。
14.数据类型是用标示符表征某个或某个数值的集合,数据类型按照定义可分为标准预定义数据类型和用户自定义数据类型,还有用户自定义数据类型。
在VHDL中若某个对象被声明为某种类型,其值必须在该数据类型所限定的取值范围之中,且只有相同的数据类型才能做赋值或运算,不同数据类型的数据必须通过类型转换一致后,才能运算。
故说VHDL语言是强数据类型的描述语言。
15.描述行为语言:信号赋值语言,进程语句,子程序,块语句,断言语句。
描述结构语句:元件语句(COMPONENT),生成语句(GENERA TE),参数说明语句(GENERIC)16.并行信号赋值语句:一般信号赋值,条件信号赋值,选择信号赋值。
17.什么是EDA?EDA技术是一种以计算机为基本工作平台,利用计算机图形学,拓扑逻辑学,计算数学以及人工智能学等多种计算机应用学科的最新成果而开发出来的一整套软件工具,是一种帮助电子设计工程师从事电子元件产品和系统设计的综合设计,电子设计自动化技术,方法一般采用自顶向下的设计方法,也叫正向设计,它是针对传统的自底向上的设计方法而提出的。
18.什么是IP核?学习VHDL与掌握IP核技术的关系四什么?IP核是具有知识产权的集成电路芯核的简称,其作用是把一组拥有知识产权的电路设计集合在一起,构成芯片的基本单位,以供设计时“搭积木”之用。
19.信号赋值语句在进程做并行语句,并发执行,与语句所处位置无关。
信号赋值语句在进程内或子程序内做顺序语句,按顺序执行,与语句所处位置无关。
信号赋值语句符号为“<=”变量赋值符号位”:=”用于信号赋值动作,不立即生效用于变量赋值动作,会立即生效20.Active—HDL软件工具对VHDL程序进行仿真方法有哪些?利用Active—HDL软件工具对VHDL程序进行仿真时,常用的三种仿真方法:1)用图形化界面加激励(或手动测试加激励)方法简单,常用于初学者或简单的小程序仿真。
2)编写测试平台文件(或编写testbench)的仿真方法可以方便地使用VHDL编写做激励文件。
常用于工程设计实践,尤其适用于需要反复多次仿真或测试激励的跨平台移植。
3)编写宏文件的仿真方法用命令行,批处理文件方式编写激励,常用于需要多次仿真时,一次性编写激励,多次仿真时反复使用。
21.进程的“敏感信号”,也称敏感表,是进程的激活条件,可由一个信号或多个信号组成之间用“,”隔开。
当敏感信号表中的任意一个信号有事件发生,即发生任意变化,此时,进程被激活,进程中的语句将从上到下逐句执行一遍,当最后一条语句执行完毕后,进程即进入等待挂起状态,直到下一次敏感表中的信号有时间发生,进程再次被激活,如此循环往复。
22.VHDL程序的组成部分包括哪些?实体:描述设计单元的外围接口信号和内部参数。
构造体:描述设计单元的内部结构和逻辑行为。
配置:为设计单元从多个构造体中选择合适的构造体或从库中选取合适的元件以便于进行设计单元的仿真或综合。
程序包:存放各设计模块都能共享的数据类型,常熟和子程序。
库:存放已经编译了的元件和程序包,以便在设计单元中使用,库可由系统工程师的自信设计或由ASIC芯片制造商提供。
23.端口方向有哪几种?端口:In:输入端口,在设计单元内部只可读,在设计单元内不可对其赋值。
Out:输出端口,在设计单元内部只可写,不可反馈至设计单元内部作逻辑电路的输入型号。
Inout:输入通道和输出通道共享引脚的双向端口,在设计单元内部分时可读可写,需要控制信号控制何时读,何时写,输入和输出通道不能同时有效。
Buffer:缓冲输出端口,可反馈至设计单元内部作为逻辑电路的输入信号,故可在设计单元内部可读可写。
Linkage:链接端口,无指定方向,可以与任意方向信号链接。
24.VHDL有哪几种描述方式?分别用于什么场合?逻辑综合:在top-down流程中,EDA软件可以将源程序自动转换为描述底层逻辑门互联关系的门级网表,从而与最终的可编程器件或ASIC硬件实现相对应。
行为级描述方式是抽象程度最高的电路建模方式,源程序主要描述电路的输出端口随输入变化而变化规律,程序描述贴近人类高级语言,不可被综合。
寄存器级通过描述数据从输入到输出的运算处理按时了电路结构综合。
结构描述方式是层次化设计思想的体现,是描述电路硬件连接的建模方式,源程序可否被综合,依赖被调用元件可综合否。
25.什么是数据对象?常用的数据对象有哪些几种?常用数据对象:信号,变量,常量在VHDL程序中凡是可以被赋值的对象称为数据对象。
26.信号延时有哪几种?它们有何异同?信号延时:传播延时:直接模拟导线上信号的延时。
任何信号传入导线的一段,经过一段延时信号必须从导线另一段输出。
惯性延时:模拟某类元件的延时特征,信号传入软件后,在指定时间内输入信号必须保持不变,元件的输出端才会有响应。
27.什么是数据类型?它可以分为哪几大种?每一种类型中包括哪些具体类型?数据类型:标准数据类型,用户自定义数据类型,用户自定义子类型。
标准数据类是在VHDL预定义库中定义的数据类型,在使用时不需要作参考库和程序包申明。
位、矢量位、整数、自然数。
正整数、实数、布尔量、字符、字符串、时间、错误等级。
用户自定义数据类型:在VHDL中用户还可以自己定义所需数据类型。
语法格式:Type <数据类型> Is 数据类型定义;枚举类型、数组类型、存取类型、文件类型、记录类型、时间类型。
用户自定义子类型:用户自定义的子类型,是对已定义数据类型取值范围加以限制得到的子集。
语法格式:SUBTYPE <子类型名> IS 原数据类型名[范围]28.VHDL中操作符主要有哪几类?它们都分为哪些主要元素?逻辑运算符:not(非) and(与) or(或) nand(或与) nor(或非) xor(异或)算数运算符:+ - * / MOD(求模) REM(取余) * *(指数) ABS(取绝对值)关系运算符:= /= < > <= >=并置运算符:& 用于位链接。