eda复习

合集下载

EDA复习资料

EDA复习资料

1.VHDL最基本的结构是什么?其作用各是什么?库(LIBRARY)声明:列出了当前设计中需要用到的所有库文件,如ieee,std和work 等。

实体(ENTITY):定义了电路的输入/输出引脚。

构造体(ARCHITECTURE):所包含的代码描述了电路要实现的功能。

2.in、inout 、buffer有何异同?IN 含义:输入INOUT 含义:说明该端口是双向的,可以输出也可以输入BUFFER 含义:说明该端口可以输出信号且在构造体内部可以使用该输出信号。

3.VHDL中有哪些基本的数据类型?哪些可以综合?a)位(BIT)和位矢量(BIT_VECTOR):位值用‘0'或‘1'表示。

b)STD_LOGIC和STD_LOGIC_VECTOR:它们是IEEE 1164标准中引入的8逻辑值系统。

c)布尔类型(BOOLEAN):只有两种取值,“真”或“假"。

d)整数(INTEGER):32位的整数(取值范围从-2 147 483 647到2 147 483 647 )e)自然数(NATURAL):非负的整数(从0到2 147 483 647 )f)实数(REAL): 实数的取值范围从-1.0x1038到1.0x1038,它是不可综合的g)物理量字符(Physical literal):用来表示诸如时间和电压等物理量。

在仿真时可以使用,但不可综合。

h)字符(CHARACTER)型:可以是单个或者一串ASCIl字符。

i)SIGNED(有符号数)和UNSIGNED(无符号数):它们是在ieee库std_logic_arith包集中定义的数据类型。

4.包集中定义了哪些数据类型转换函数?它们的适用范围是什么?在ieee库的包集std_logic_arith中提供的数据类型转换函数:a.conv_integer(p):将数据类型为INTEGER,UNSIGNED,SIGNED,STD_ULOGIC或STD_LOGIC的操作数P转换成INTEGER类型。

EDA复习资料

EDA复习资料

HDL:硬件描述语言FPGA:现场可编程门阵列(触发器较多)EDA:电子设计自动化PLD:可编程逻辑器件CPLD:复杂的可编程逻辑器件GAL:通用阵列逻辑PLA:可编程逻辑阵列SOC:系统芯片SOPC:可编程系统芯片EDO:电子设计最优化ASIC:专用集成电路注:FPGA相较于CPLD而言,逻辑单元小,连线关系复杂,更适合进行大规模的逻辑电路设计。

EDA的特点:1、软件硬化,硬件软化;2、自顶向下的设计方法;3、集设计、仿真和测试于一体;4、在系统可现场编程,在线升级;5、设计工作标准化,模块可移植共享。

Top-down设计方式:设计-验证-修改设计-再验证,不断反复,直到结果能够实现所要求的功能,并在速度、功耗、价格和可靠性方面实现较为合理的平衡。

Bottom-up设计方式:首先确定可用元器件,然后根据这些器件进行逻辑,各模块设计后进行连接,再形成系统,最后经调试、测量看整个系统是否达到指标。

IP核按照提供形式分为:硬核,固核,软核IP核复用,待解决问题(知识产权,型号不统一,)利用设计完成的IP核来进行数字系统设计。

IP核的重用指的是在设计新产品时采用已有的各种功能模块,即使进行修改也是非常有限的,这样可以减少设计的人力风险,缩短设计周期,确保优良品质。

原理图输入(不适合大规模电路):使用元件符号和连线来描述设计HDL文本输入:描述和设计电路的语言综合:将较高层次的设计描述自动转化为较低层次描述的过程。

适配:将由综合器产生网表文件配置于指定的目标器件中。

仿真:是对所设计电路的功能的验证编程:把适配后生成的编程文件装入到PLD器件中,(CPLD-下载、FPGA-配置)复杂的PLD-CPLD(乘积项)、FPGA(查找表【LUT】)简单的PLD-PLA、GALFPGA的结构:可编程输入/输出(IO)、基本可编程逻辑单元(查找表和寄存器)、布线通道中的互连资源、嵌入式块状ARM。

可编程逻辑单元实现用户指定的逻辑功能,IO是实现内部逻辑器件封装引脚之间提供了可编程接口,可编程互连资源分布在CLB 的空隙,它是在各个模块间传递信号的网络。

(完整word版)EDA-VerilogHDL期末复习题总结必过

(完整word版)EDA-VerilogHDL期末复习题总结必过

选择题1.大规模可编程器件主要有FPGA、CPLD 两类,下列对FPGA 结构与工作原理的描述中,正确的是(C)。

A.FPGA 全称为复杂可编程逻辑器件;B.FPGA 是基于乘积项结构的可编程逻辑器件;C.基于SRAM 的FPGA 器件,在每次上电后必须进行一次配置;D.在Altera 公司生产的器件中,MAX7000 系列属FPGA 结构。

2.不完整的IF语句,其综合结果可实现(A)A. 时序逻辑电路B.组合逻辑电C. 双向电路D. 三态控制电路3.综合是EDA设计流程的关键步骤,在下面对综合的描述中,(D)是错误的。

A.综合就是把抽象设计层次中的一种表示转化成另一种表示的过程;B.综合就是将电路的高级语言转化成低级的,可与FPGA / CPLD的基本结构相映射的网表文件;C.为实现系统的速度、面积、性能的要求,需要对综合加以约束,称为综合约束;D.综合可理解为一种映射过程,并且这种映射关系是唯一的,即综合结果是唯一的。

4.大规模可编程器件主要有FPGA、CPLD两类,下列对FPGA结构与工作原理的描述中,正确的是( C )。

A.FPGA全称为复杂可编程逻辑器件;B.FPGA是基于乘积项结构的可编程逻辑器件;C.基于SRAM的FPGA器件,在每次上电后必须进行一次配置;D.在Altera公司生产的器件中,MAX7000系列属FPGA结构。

5.以下关于状态机的描述中正确的是(B)A.Moore型状态机其输出是当前状态和所有输入的函数B.与Moore型状态机相比,Mealy型的输出变化要领先一个时钟周期C.Mealy型状态机其输出是当前状态的函数D.以上都不对6.目前应用最广泛的硬件描述语言是(B)。

A. VHDLB. Verilog HDLC. 汇编语言D. C语言7.一模块的I/O 端口说明:“input [7:0] a;”,则关于该端口说法正确的是( A )。

A. 输入端口,位宽为8B. 输出端口,位宽为8C. 输入端口,位宽为7D. 输出端口,位宽为78.基于EDA 软件的FPGA / CPLD 设计流程为:原理图/HDL 文本输入→综合→___ __→→适配→编程下载→硬件测试。

EDA技术期末复习题

EDA技术期末复习题

EDA技术期末复习题1.结构体中包含了四类功能描述语句:语句、______________语句、子程序调用语句和语句。

(P304)2. 下列关于程序包的用法正确的是: ________ (P319)A、一个程序包中只能包含常数说明,VHDL数据类型说明,元件定义和子程序这几种结构之一或他们中的几种B、程序包首可以独立定义和使用C、程序包结构中,必须同时含有程序包首和程序包体D、一个完整的程序包中,程序包首名和程序包体名可以不是同一个名字3. 参数传递说明语句以关键词引导一个类属参量表,通常在实体中的位置处于语句之前。

(P300-301)4. 下列逻辑操作符中哪个的优先级最高:_______。

A. ANDB. ORC. NOTD. XOR5. 下列关于操作符说法不正确的是:_______ (P333)A、关系操作符的操作对象可以是VHDL中的任何数据类型构成的操作数B、关系操作符的返回值是布尔类型数据C、MOD和REM的操作数数据类型只能是整数,运算操作结果也是整数。

D、SLL是左移位操作,右边跟进的位补零6. 下列说法正确的是: _______。

(P332)A、只有BIT型和整型数据可以参与加减运算。

B、操作符是有优先级别的,其中逻辑运算符的级别最低。

C、BIT 、BOOLEAN和STD_LOGIC可以进行逻辑运算D、a nand b nand c 这串运算可以不加括号7. 下列语句中,不属于并行语句的是:________A、进程语句B、CASE语句C、元件例化语句D、WHEN…ELSE…语句8. 下列语句中,不属于顺序语句的是:_______。

A. WHEN…ELSE…语句B. IF语句C. LOOP语句D. CASE语句9. 以下关于VHDL中常量的声明正确的是________A、Constant Width :Integer=8;B、Constant Width :Integer := 8;C、Variable Width :Integer = 8;D、Variable Width :Integer := 8;10. 下列哪个库需要在VHDL程序中明确打开并指定________A、STDB、IEEEC、WORKD、自定义库11. VHDL中最为常用的是库。

EDA基础知识复习要点

EDA基础知识复习要点

EDA基础知识复习要点EDA(探索性数据分析)是指对数据集进行初步的探索,以了解数据的特征、相互关系和隐藏的模式。

它是数据分析的重要环节,可以帮助我们发现数据中的特殊特征、异常值和缺失值,为后续的建模和决策提供基础。

下面是EDA基础知识的复习要点。

1.数据集的基本情况-数据集的大小和维度:了解数据集包含的样本数量和特征数量。

-数据类型和缺失值:检查每个特征的数据类型并确定是否存在缺失值。

-数据的摘要统计信息:计算每个特征的基本统计指标,如均值、中位数、标准差等。

-数据可视化:使用直方图、箱线图、散点图等可视化工具来展示数据的分布和异常值。

2.数据的清洗和预处理-处理缺失值:根据缺失值的情况选择适当的方法填充或删除缺失值。

-处理重复值:检查是否存在重复的样本或特征,并根据需要删除或合并重复值。

-异常值处理:通过设定阈值或使用统计方法来检测和处理异常值。

-标准化和归一化:对于数据集中的数值型特征,可以进行标准化或归一化处理,使其具有相同的尺度。

3.特征工程-特征选择:根据特征的重要性和相关性选择最相关的特征,减少特征的维度。

-特征构建:使用原始特征衍生出新的特征,例如添加多项式特征、交互特征等。

4.数据探索-变量间的关系:分析变量之间的相关性和因果关系,帮助了解特征之间的影响。

-群组分析:将数据集中的样本划分为不同的组群,发现数据的内在结构和模式。

-关键性因素:识别影响特定结果的重要因素,找到数据集中的关键趋势和影响因素。

5.可视化分析-直方图:显示定量变量的分布情况,帮助了解数据的偏态和尾部情况。

-箱线图:显示定量变量的中位数、上下四分位数和异常值,有助于观察数据的离散情况。

-散点图:显示两个变量之间的关系,帮助检测变量之间的线性关系或异常值。

-折线图:显示变量随时间变化的趋势,用于分析时间序列数据。

6.结果解释和报告-对EDA结果进行总结和解释,包括数据集的特点、重要特征、异常值等。

-以清晰和可视化的方式呈现结果,如使用图表、表格等形式。

EDA复习资料

EDA复习资料

1. 一个项目的输入输出端口是定义在。

A. 实体中B. 结构体中C. 任何位置D. 进程体2. 关键字ENTITY定义的是。

A. 实体B. 结构体C. 任何位置D. 进程3. 描述项目具有逻辑功能的是。

A. 实体B. 结构体C. 配置D. 进程4. 关键字ARCHITECTURE定义的是。

A. 结构体B. 进程C. 实体D. 配置5. MAXPLUSII中编译VHDL源程序时要求。

A.文件名和实体可不同名B.文件名和实体名无关C. 文件名和实体名要相同D. 不确定6. 1987标准的VHDL语言对大小写是。

A. 敏感的B. 只能用小写C. 只能用大写D. 不敏感7. 关于1987标准的VHDL语言中,标识符描述正确的是。

A. 下划线可以连用B. 下划线不能连用C. 不能使用下划线D. 可以使用任何字符8. 符合1987VHDL标准的标识符是。

A. A_2B. A+2C. 2AD. 224. 符合1987VHDL标准的标识符是。

A. a_2_3B. a_____2C. 2_2_aD. 2a9. 不符合1987VHDL标准的标识符是。

A. a_1_inB. a_in_2C. 2_aD. asd_110. 不符合1987VHDL标准的标识符是。

A. a2b2B. a1b1C. ad12D. %5011. VHDL语言中变量定义的位置是。

A. 实体中中任何位置B. 实体中特定位置C. 结构体中任何位置D. 结构体中特定位置12. VHDL语言中信号定义的位置是。

A. 实体中任何位置B. 实体中特定位置C. 结构体中任何位置D. 结构体中特定位置15. 下面数据中属于实数的是。

A. 4.2B. 3C. ‘1’D. “11011”16. 下面数据中属于位矢量的是。

A. 4.2B. 3C. ‘1’D. “11011”20. 使用STD_LOGIG_1164使用的数据类型时。

A.可以直接调用B.必须在库和包集合中声明C.必须在实体中声明D. 必须在结构体中声明21. 可编程逻辑器件的英文简称是。

EDA-Verilog,HDL期末复习题总结必过

EDA-Verilog,HDL期末复习题总结必过EDA-Verilog HDL期末复习题总结必过选择题1. 大规模可编程器件主要有FPGA、CPLD 两类,下列对FPGA 结构与工作原理的描述中,正确的是( C )。

A.FPGA 全称为复杂可编程逻辑器件;B.FPGA 是基于乘积项结构的可编程逻辑器件;C.基于SRAM 的FPGA 器件,在每次上电后必须进行一次配置;D.在Altera 公司生产的器件中,__ 系列属FPGA 结构。

2. 不完整的IF语句,其综合结果可实现(A )A. 时序逻辑电路B.组合逻辑电C. 双向电路D. 三态控制电路 3. 综合是EDA设计流程的关键步骤,在下面对综合的描述中,( D )是错误的。

A.综合就是把抽象设计层次中的一种表示转化成另一种表示的过程;B.综合就是将电路的高级语言转化成低级的,可与FPGA / CPLD的基本结构相映射的网表文件;C.为实现系统的速度、面积、性能的要求,需要对综合加以约束,称为综合约束;D.综合可理解为一种映射过程,并且这种映射关系是唯一的,即综合结果是唯一的。

4. 大规模可编程器件主要有FPGA、CPLD两类,下列对FPGA 结构与工作原理的描述中,正确的是( C )。

A. FPGA全称为复杂可编程逻辑器件;B. FPGA是基于乘积项结构的可编程逻辑器件;C. 基于SRAM的FPGA器件,在每次上电后必须进行一次配置;D. 在Altera公司生产的器件中,__系列属FPGA结构。

5. 以下关于状态机的描述中正确的是(B )A.Moore型状态机其输出是当前状态和所有输入的函数B.与Moore型状态机相比,Mealy型的输出变化要领先一个时钟周期C.Mealy型状态机其输出是当前状态的函数D.以上都不对 6. 目前应用最广泛的硬件描述语言是( B )。

A. VHDLB. Verilog HDLC. 汇编语言D. C语言7. 一模块的I/O 端口说明:“input [7:0] a;”,则关于该端口说法正确的是(A )。

EDA

《可编程逻辑器件及应用》复习提纲第一章1、EDA技术的概念,常见的EDA工具。

2、HDL的全称是什么?常见的HDL有哪几种?VHDL的主要特点。

3、EDA设计方法与传统的手工设计方法的区别。

4、EDA设计的基本流程;EDA设计输入有哪几种类型?5、综合、适配、仿真、下载(编程、配置)的相关概念。

6、IP的概念以及IP的分类。

7、EDA、CPLD、FPGA、ASIC、IP、SOC、MCU、FSM等缩写名词的全称第二章1、PLD的概念以及发展历程,PLD的分类2、PLD从结构上可分为哪两大类器件?3、MAX3000A系列CPLD的基本结构,其基本的编程单元是什么?4、LUT的基本结构、原理5、ALTERA公司的FPGA器件的配置方式有哪些?各有何特点。

6、CPLD与FPGA的特点、区别、如何选用?第三、五、八章1、VHDL语言中,由标准程序包定义的常用端口模式有哪些?各有何特点。

2、VHDL程序的基本结构,PORT语句的作用3、简单的组合电路描述方法(如2选1多路选择器,半加器、全加器)4、简单的时序电路描述方法(如D触发器、计数器、移位寄存器)5、VHDL的数据对象有哪几类,各自的功能特点,信号与变量的区别。

6、掌握常见的顺序描述语句IF、CASE语句的使用方法。

7、掌握进程语句的特点及编程方法。

8、掌握三态门、三态总线电路的设计方法9、掌握&运算符、逻辑运算符、省略赋值操作符的使用方法10、掌握基本的数据类型的使用方法(如整型、标准位、标准位矢量等)第十章1、有限状态机的概念,基本结构,分类方法2、MOORE状态机与MEAL Y状态机的区别。

3、掌握简单的有限状态机设计方法第三章1、掌握常用的顺序描述语句(如IF、CASE、LOOP、W AIT等语句)结构及使用方法。

2、掌握常用的并行描述语句(3种并行信号赋值语句、PORT语句、元件例化语句、生成语句、参数传递映射语句)结构及使用方法.3、掌握常见的信号类属性函数的使用第三、十三章1、VHDL程序的实体、结构体的描述方法2、学会VHDL子程序(函数、过程的定义与使用)设计方法3、VHDL语言常用的库、程序包4、VHDL的标志符、常用的预定义数据类型5、DOWN TO与TO使用的区别6、掌握基本的算术运算符的使用方法。

EDA复习资料大全

1.一般把EDA技术的发展分为MOS时代、c MOS时代和ASIC三个阶段。

2.EDA设计流程包括设计输入、设计实现、实际设计检验和下载编程四个步骤。

3.EDA设计输入主要包括图形输入、HDL文本输入和状态机输入。

4.时序仿真是在设计输入完成之后,选择具体器件并完成布局、布线之后进行的时序关系仿真,因此又称为功能仿真。

5.VHDL的数据对象包括变量、常量和信号,它们是用来存放各种类型数据的容器。

6.图形文件设计结束后一定要通过仿真,检查设计文件是否正确。

7.以EDA方式设计实现的电路设计文件,最终可以编程下到FPGA和CPLD芯片中,完成硬件设计和验证。

8.MAX+PLUS的文本文件类型是(后缀名).VHD。

9.在PC上利用VHDL进行项目设计,不允许在根目录下进行,必须在根目录为设计建立一个工程目录。

10.VHDL源程序的文件名应与实体名相同,否则无法通过编译二、名词解释,写出下列缩写的中文(或者英文)含义:1. FPGA Field-Programmable Gate Array 现场可编程门阵列2VHDL Very-High-Speed Integrated Circuit Hardware Description Language)甚高速集成电路硬件描述语言3 HDL Hardware Description Language硬件描述语言5 CPLD Complex Programmable Logic Device复杂可编程逻辑器件6PLD Programmable Logic Device 可编程逻辑器件7GAL generic array logic通用阵列逻辑B Logic Array Block逻辑阵列块9. CLB Configurable Logic Block 可配置逻辑模块10 EAB Embedded Array Block 嵌入式阵列块11SOPC System-on-a-Programmable-Chip 可编程片上系统12. LUT Look-Up Table 查找表13. JTAG Joint Test Action Group 联合测试行为组织14.IP Intellectual Property 知识产15ASIC Application Specific Integrated Circuits 专用集成电路16 ISP In System Programmable 在系统可编程17 ICR In Circuit Re-config 在电路可重构18 RTL Register Transfer Level 寄存器传输19EDA Electronic Design Automation 电子设计自动化1、 FPGA结构一般分为三部分:可编程逻辑块(CLB)、可编程I/O模块和可编程内部连线。

EDA复习

缩略词EDA Electronic Design Automation 电子设计自动化VHDL Very-High-Speed Integrated Circuit Hardware Description Language)超高速集成电路硬件描述语言FPGA Field-Programmable Gate Array 现场可编程门阵列CPLD Complex Programmable Logic Device复杂可编程逻辑器件PLD Programmable Logic Device 可编程逻辑器件GAL generic array logic通用阵列逻辑ASIC Application Specific Integrated Circuits 专用集成电路SoC System on a Chip 片上系统/系统芯片LAB Logic Array Block逻辑阵列块CLB Configurable Logic Block 可配置逻辑模块JTAT 联合行动测试组BST 边界扫描测SOPC System-on-a-Programmable-Chip 可编程片上系统IP Intellectual Property 知识产权FSM(Finite States Machine)有限状态机EDA技术概念EDA是电子设计自动化的简写,是一种融合了应用电子技术、计算机技术、信息处理及智能化技术的最新成果快速,有效,高级的电子自动技术,主要进行三方面的辅助设计工作:集成电路设计,电子电路以及印制电路板.EDA的发展阶段计算机辅助设计→计算机辅助工程→电子设计自动化.1.计算机辅助设计: EDA技术发展的初级阶段,仅有一些孤立的软件程序,取代了设计人员繁琐的手工计算和操作,提高了电子系统和集成电路设计的可靠性和效率.2.计算机辅助工程: EDA技术发展的中级阶段,真正拥有了自动化的能力,只要用户给出指标,EDA系统就能对电路结构和参数进行自动化处理和综合3.电子设计自动化: EDA工具更加完善,促使ASIC和FPGA逐步走向融合,以软件的方式设计硬件.EDA技术基本特征、重要特征基本特征: 现代EDA技术是采用高级语言描述,具有系统级仿真和综合能力,具有开放式的设计环境,具有丰富的元器件库.重要特征: 1. 硬件描述语言设计输入2.自顶向下的设计方法3.逻辑综合和优化,4.开放性和标准性5.库.EDA技术的优势1.采用硬件描述语言,便于复杂系统的设计2.强大的系统建模和电路仿真功能3.具有自主的知识产权4.开发技术的标准化和规范化5.全方位地利用计算机的自动设计,仿真和测试技术6.对设计者的硬件知识和硬件经验要求低EDA设计流程1.设计准备2.设计输入: 多种方式, 硬件描述语言, 图形输入方式, 波形输入方式, 混合输入方式3.设计处理: 核心环节4.设计验证: 功能仿真和时许仿真5.器件编程IP核概念和类型定义: 已有的或者由第三方提供的具有知识产权的模块(或内核)为IP核类型:1.硬核: 以图版形式描述的设计模块,不能修改,灵活性较差2.固核: 由RTL描述,由可综合的网表文件组成. 可以在系统级重新布局布线, 使用者按规定可增减部分功能,灵活性较差.3.软核: 完全用硬件描述语言描述的IP, 可根据使用者的需要进行修改,可以在系统设计中重新布局布线,较灵活,但是增加了测试的难度CPLD和FPGA的异同1.CPLD: 以乘机项结构方式构成逻辑行为的器件为CPLD1.结构方面: 多乘积项结构2.逻辑规模: 规模小,逻辑复杂度低3.触发器数量: 数量少4.时延: Pin-to-Pin延时固定5.布线资源: 集总式互联结构,布线资源相对有限6.灵活性: 灵活性差7.编程方式: 基于E2PROM或Flash存储器8.成本: 成本较低2.FPGA: 以查找表结构方式构成逻辑行为器件为FPGA1.结构方面: 查找表加寄存器结构2.逻辑规模: 规模大,复杂度高3.触发器数量: 触发器数量多4.时延: 时延不可预测5.布线资源: 分布式互连结构,布线资源丰富.6.灵活性: 灵活性高7.编程方式: SRAM编程8.成本: 成本较高可编程逻辑器件的基本资源1.功能单元a)SRAM查找表: 输入变量作为地址来从RAM存储器中选值,RAM中要预先载入实现函数的真值表b)基于多路开关的功能单元: 在多路开关的输入端放置输入的变量,反变量,固定的0和1等相应的组合.c)固定功能单元: 提供单个固定的功能2.输入-输出焊盘3.布线资源a)直接连线: 每个功能单元能通过直接连线与之相邻的功能单元或I/O块的输入相连,延时小,适合相邻块之间信号的告诉传输b)通用内部连线: 逻辑单元的输入和输出端可以和相邻的通用内部链接线相连,相邻的内部连接线则通过开关矩阵互相连接而形成网线4.片内RAMa)块式片内RAMb)分布式片内RAM综合、适配的概念1.综合: 将VHDL文本,原理图或状态图形描述,依据给定的硬件结构组件和约束控制条件进行编译,优化,转换和综合,最终获得门级电路甚至更低层次的电路描述网表文件.2.适配: 将综合出来的网表文件配置于指定的目标器件中,使之产生最终下载的文件可编程逻辑器件的测试技术:边界扫描测试1.原理: 在核心逻辑电路的输入和输出端口都增加一个寄存器,通过将这些I/O上的寄存器连接起来,可以将测试数据串行输入到被测单元,并且从相应的端口读出,从而实现测试.Altera 公司的FPGA/CPLD主要产品系列FPGA 器件三种配置模式:JTAG、PS、AS实体、结构体、库、程序包、配置的涵义1.实体: Entity 实体名Is端口定义End Entity 实体名;2.结构体: Architecture 结构体名Of 实体名Is信号定义语句Begin用于完成功能的语句End Architecture 结构体名;3.库: 在文件开始处定义Library 库名;在定义之后引用Use 库名.程序包名.项目名[或All]4.程序包: Package 程序包名Is说明部分End 程序包名;5.配置: Configuration 配置名Of 实体名IsFor 结构体名End For;End 配置名;VHDL文字规则1.标识符必须由英文字母,数字以及下划线组成2.标识符必须以英文字母开头3.标识符不允许连续的两个下划线4.标识符最后一个字符不能是下划线5.标识符不区分大小写6.标识符不能是关键字1.扩展标识符用反斜杠来分隔\addr_bus\2.扩展标识符中允许图形符号和空格号等3.扩展标识符能以数字开头,可以使用关键字4.扩展标识符区分大小写5.同名的扩展标识符和一般的标识符不同6.如果扩展标识符中含有一个反斜杠,则应该用两个相邻的反斜杠来代替常用VHDL数据类型1.整数型Integer: 在使用整数型时,要使用Range子句所定义的数限范围,让后根据此范围表示信号或变量的二进制数2.实数型real: 能仿真,但不能综合.实数有正负之分,书写时一定要带小数点.3.位bit: 取值只能是0和14.位矢量bit_vector: 位数组5.布尔量Boolean: 只有真假两值,不能运算只能进行关系运算6.字符具体见书P1647.字符串8.时间9.自定义类型类型转换函数的使用1.在Std_logic_unsigned包中2.具体见书P168中VHDL基本操作符和操作符重载1.见书P169三种数据对象特点与区别1.常量: 定义后就不再放生改变,可以是任何数据类型的值,常量所赋的值必须和其定义的类型相一致,在硬件电路中具有一定的物理意义.Counstant 常数名: 数据类型:= 表达式2.变量: 只能在进程语句,函数语句和过程语句中使用,是一个局部变量,赋值立即生效.作用是在进程中作为临时的变量Variable 变量名: 数据类型:= 初始值;3.信号: 通常在结构体,程序包和实体中说明,是全局量.信号只能进行一次赋值, 信号相当于硬件中的物理连线,所以信号的赋值有延时顺序、并行语句的特点,VHDL中哪些是顺序语句,哪些是并行语句1.顺序语句: 顺序语句的执行顺序和书写一致,只能用于进程和子程序中,被用来描述组合逻辑和时序逻辑.常用的语句有:赋值语句,IF语句,CASE语句,LOOP语句,NEXT语句,子程序调用语句,RETURN语句,WAIT语句和NULL语句.见书P176-P1862.并行语句: 并行语句的执行是,其执行的顺序与书写顺序无关.并行信号赋值语句,进程语句,并行过程调用语句,元器件例化语句,生成语句.见书P186-P196时钟上升沿的四种描述方式1.Wait Until clk = ‘1’;2.Wait Until rising_edge(clk)3.Wait Until clk’Event And clk = ‘1’4.W ait Until Not (clk’Stable) And clk = ‘1’赋值、IF、CASE、LOOP、WAIT语句的结构与使用规范见书P177子程序与函数调用1.子程序调用: 子程序被调用时,首先要初始化,执行处理功能后,将处理结果传递给主程序.子程序内部的值不能保存,子程序返回后才能再次被调用并初始化2.过程调用:Procedure 过程名(参数列表) Is说明部分(局部量的定义)Begin语句;End Procedure 过程名;3.函数调用:Function 函数名(参数表) Return 数据类型Is说明部分;Begin顺序语句;Return [返回变量名]; // 此处理解为带返回值或者不带返回值End Return 函数名;运算符重载函数及其程序包1.操作符重载的定义: 对已经定义的操作符重新定义,使其能进行不同类型操作数之间的运算,定义重载操作符的函数称为重载函数.2.程序包: std_logic_arich, std_logic_unsigned, std_logic_signed. 对于重载操作符只需要调用相应的程序包即可.并行信号赋值语句、进程语句、元件例化语句的应用1.并行信号赋值语句:a)简单赋值语句: 赋值目标<= 表达式(赋值目标必须是信号)b)条件信号赋值语句: 赋值目标<= 表达式When 条件Else<= 表达式When 条件Else……<= 表达式c)选择信号赋值语句: With 条件Select信号<= 表达式When 值,<= 表达式When 值,……表达式;2.进程语句: 一个结构体可以包含一个或多个进程语句,进程之间是一组并发行为. 不同的进程之间并行执行,但是在进程之中是顺序执行.进程名: Process(敏感信号) Is说明语句(局部量);Begin语句End Process 进程名; //进程名可以省略3.元件例化语句: 对所调用的较低层次的元件的名称,类型参数,端口类型,数据类型的说明;Component 元件名Port(端口说明);End Component;进程语句中信号与变量应用的特点和区别1.信号的特点: 通常在结构体,程序包和实体中说明,是全局量.信号只能进行一次赋值(多次赋值只有最后一次生效), 信号相当于硬件中的物理连线,所以信号的赋值有延时2.变量的特点: 只能在进程语句,函数语句和过程语句中使用,是一个局部变量,赋值立即生效.作用是在进程中作为临时的变量3.区别:a)信号有延时,变量赋值立即生效b)变量是局部量,在进程中说明, 函数调用,过程中使用, 信号是全局量在结构中描述,程序包说明,实体说名中使用.c)信号有物理连线,而变量没有.FSM两种类型和分类依据1.Moore型有限状态机: 输出信号仅与当前状态有关,既可以把其看成是当前状态的函数.2.Mealy型有限状态机: 输出信号不仅和当前状态有关而且与输入的所有信号有关,既可以把Mealy型有限状态的输出看作是当前状态和输入信号的函数.有限状态机的设计例: 8.8和8.12 P220 P225组合逻辑电路设计1.三人表决电路P1962.双向总线P1993.8位加法器P200时序逻辑电路设计1.JK触发器P2022.寄存器P2043.数器(同步和异步复位设计)P2054.分频器P206。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

一、选择题 1、eda的开发流程 答:①设计输入 ②综合 ③适配 ④仿真 ⑤下载和硬件测试 2、cpld/fpga可编程原理基于什么结构? 答:cpld基于乘积项;fpga基于查找表。 3、常用的顺序语句和并行语句 答:顺序语句:赋值语句、if语句、case语句、loop语句、next语句、exit语句、wait语句、return语句、空操作语句。 并行语句:并行信号赋值语句、进程语句、块语句、元件例化语句、条件信号赋值语句 4、下载模式以及对应的文件后缀名 答:JTAG:**.sof AS:**.pof 5、EP1C6Q240C8是什么器件? 答:FPGA器件。 二、名词解释 答、FPGA:现场可编程门阵列 CPLD:复杂可编程逻辑器件 EDA:电子设计自动化 PLD:可编程逻辑器件 VHDL:超高速集成电路硬件描述语言 IP核:知识产权核 HDL:硬件描述语言 ASIC:专用集成电路 三、简答题 1、EDA技术主要包括那几个方面的内容? 答:①可编程逻辑器件 ②可编程语言 ③编程软件QUARTUS II 2、VHDL一般包括几个组成部分?每个部分作用是什么? 答:①实体:描述设计系统的外部接口信号; ②结构体:用于描述系统的行为、系统数据的流程或者系统组织结构形式(即系统的内部电路); ③配置:用于从库中选取所需元件安装到设计单元的实体中; ④程序包:用于存放各设计模块能共享的数据类型、常数、子程序等; ⑤库:用于存放已编译的实体、结构体、包集合和配置。 3、VHDL的数据对象有哪几种?有什么不同? 答:①常量(CONSTANT):是一个在仿真和综合过程中固定不变的值,可通过其标识符来引用; ②变量(VARIABLE):暂存数据的量,只在进程和子程序中用; ③信号(SIGNAL):代表电路内部各元件之间的连接线,是 实体间动态交换数据的手段; ④文件(FILES):是传输大量数据的客体,包含一些专门数据类型的数值。 4、列举三种不同时钟上升沿语句 答:①CLK’EVENT AND CLK= ‘1’ ②CLK= ‘1’ AND CLK’LAST_VALUE= ‘0’ ③RISING_EDGE(CLK) ④CLK’EVENT AND (CLK= ‘1’) AND (CLK’LAST_VALUE= ‘0’) 1、模10计数器或模100计数器 LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; USE IEEE.STD_LOGIC_UNSIGNED.ALL; ENTITY CNT10 IS PORT (CLK,RST,EN :IN STD_LOGIC; CQ : OUT STD_LOGIC_VECTOR(3 DOWNTO 0); COUT : OUT STD_LOGIC); END CNT10; ARCHITECTURE BEHAV OF CNT10 IS BEGIN PROCESS(CLK,RST,EN) VARIABLE CQI : STD_LOGIC_VECTOR(3 DOWNTO 0); BEGIN IF RST = '1' THEN CQI :=(OTHERS =>'0'); ELSIF CLK'EVENT AND CLK='1' THEN IF EN='1' THEN IF CQI<9 THEN CQI:=CQI+1; ELSE CQI:=(OTHERS=>'0'); END IF; END IF; END IF; IF CQI =9 THEN COUT<='1'; ELSE COUT<='0'; END IF; CQ<=CQI; END PROCESS; END; 2、10-4优先编码器 LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; USE IEEE.STD_LOGIC_ARITH.ALL; ENTITY ENCODER1 IS PORT (A,B,C,D,E,F,G,H,I,J:IN STD_LOGIC; OUT0,OUT1,OUT2,OUT3: OUT STD_LOGIC); END ENCODER1; ARCHITECTURE BEHAV OF ENCODER1 IS SIGNAL OUTS:STD_LOGIC_VECTOR(3 DOWNTO 0); BEGIN OUTS(3 DOWNTO 0)<="1001" WHEN J='1' ELSE "1000" WHEN I='1' ELSE "0111" WHEN H='1' ELSE "0110" WHEN G='1' ELSE "0101" WHEN F='1' ELSE "0100" WHEN E='1' ELSE "0011" WHEN D='1' ELSE "0010" WHEN C='1' ELSE "0001" WHEN B='1' ELSE "0000" WHEN A='1' ELSE "XXXX"; OUT0<=OUTS(0); OUT1<=OUTS(1); OUT2<=OUTS(2); OUT3<=OUTS(3); END BEHAV; 3、3-8译码器 LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; USE IEEE.STD_LOGIC_UNSIGNED.ALL; ENTITY DECODER IS PORT(INP:IN STD_LOGIC_VECTOR(2 DOWNTO 0); OUTP:OUT BIT_VECTOR (7 DOWNTO 0)); END DECODER; ARCHITECTURE ART2 OF DECODER IS BEGIN PROCESS(INP) BEGIN OUTP<=(OTHERS=>'0'); OUTP(CONV_INTEGER(INP))<='1'; END PROCESS; END ART2; 4、4选1数据选择器 LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; USE IEEE.STD_LOGIC_1164.ALL; ENTITY MUX41 IS PORT(INP: IN STD_LOGIC_VECTOR(3 DOWNTO 0); A,B:IN STD_LOGIC; Y:OUT STD_LOGIC); END MUX41; ARCHITECTURE BEHAV OF MUX41 IS SIGNAL SEL:STD_LOGIC_VECTOR(1 DOWNTO 0); BEGIN SEL<=B&A; PROCESS(INP,SEL) BEGIN IF(SEL="00") THEN Y<=INP(0); ELSIF(SEL="01") THEN Y<=INP(1); ELSIF(SEL="10") THEN Y<=INP(2); ELSE Y<=INP(3); END IF; END PROCESS; END BEHAV; 5、7段数码显示 LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; ENTITY DECL7S IS PORT (A : IN STD_LOGIC_VECTOR(3 DOWNTO 0); LED7S :OUT STD_LOGIC_VECTOR(6 DOWNTO 0)); END; ARCHITECTURE ONE OF DECL7S IS BEGIN PROCESS(A) BEGIN CASE A IS WHEN "0000"=> LED7S <= "0111111"; WHEN "0001"=> LED7S <= "0000110"; WHEN "0010"=> LED7S <= "1011011"; WHEN "0011"=> LED7S <= "1001111"; WHEN "0100"=> LED7S <= "1100110"; WHEN "0101"=> LED7S <= "1101101"; WHEN "0110"=> LED7S <= "1111101"; WHEN "0111"=> LED7S <= "0001111"; WHEN "1000"=> LED7S <= "1111111"; WHEN "1001"=> LED7S <= "1101111"; WHEN "1010"=> LED7S <= "1110111"; WHEN "1011"=> LED7S <= "1111100"; WHEN "1100"=> LED7S <= "0111001"; WHEN "1101"=> LED7S <= "1011110"; WHEN "1110"=> LED7S <= "1111001"; WHEN "1111"=> LED7S <= "1110001"; WHEN OTHERS => NULL; END CASE; END PROCESS; END; 6、分频器 LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; USE IEEE.STD_LOGIC_UNSIGNED.ALL; ENTITY DVF IS PORT ( CLK : IN STD_LOGIC; D : IN STD_LOGIC_VECTOR(7 DOWNTO 0); FOUT: OUT STD_LOGIC); END; ARCHITECTURE ONE OF DVF IS SIGNAL FULL : STD_LOGIC; BEGIN PROCESS(CLK) VARIABLE CNT8 : STD_LOGIC_VECTOR(7 DOWNTO 0); BEGIN IF CLK'EVENT AND CLK ='1' THEN IF CNT8= "11111111" THEN CNT8:=D; FULL <= '1'; ELSE CNT8:= CNT8+1; FULL<='0'; END IF; END IF; END PROCESS; PROCESS(FULL) VARIABLE CNT2 : STD_LOGIC; BEGIN IF FULL'EVENT AND FULL ='1' THEN CNT2 := NOT CNT2; IF CNT2 ='1' THEN FOUT <='1'; ELSE FOUT <='0'; END IF; END IF; END PROCESS; END;

相关文档
最新文档