EDA技术与VHDL总结提纲初稿
- 格式:pdf
- 大小:81.91 KB
- 文档页数:3
复习提要主要内容第一章概述(1)了解传统的系统硬件设计方法;(2)了解利用硬件描述语言的硬件电路设计方法、特点,了解自上而下的设计方法及基本步骤、优势;(3)了解硬件描述语言的种类、VHDL发展历史第三章VHDL语言程序的基本结构(1)了解VHDL语言程序的组成部分(2)掌握各个组成部分的语法结构实体端口的说明,方向,数据类型构造体定义语句构造体的子结构:BLOCK、PROCESS、PROCEDURE、FUNCTION第四章 VHDL语言的数据类型与运算操作符(1)了解VHDL语言的客体:信号、变量、常数的物理意义及说明场合理解信号与变量的区别(2)VHDL语言的数据类型标准数据类型,用户自定义数据类型(3)数据类型的转换不同的数据类型不能进行运算和直接代入。
掌握常用的转换函数,如由integer 转为std_logic_vector,或由std_logic_vector转为integer。
(4)VHDL语言的运算操作符逻辑运算符、关系运算符、算术运算符、并置运算符必须注意,运算符的左边和右边,以及代入信号的数据类型必须是相同的。
在VHDL语言中,逻辑表达式的左右没有优先级差别,应加上括号确定运算顺序,当然也有例外。
算术运算符并置运算符的应用第五章 VHDL语言构造体的描述方式(1)了解构造体的三种描述方式:行为描述方式,寄存器传输(RTL)描述方式,结构描述方式。
(2)了解VHDL语言的两种延时类型:惯性延时和传输延时(3)了解和掌握结构化描述语句:COMPONENT声明语句+元件例化语句元件例化语句:标号名:元件名 PORT MAP(...)了解两种元件的端口信号映射方法:位置映射方法、名称映射方法Generic语句第六章 VHDL语言的主要描述语句(1)顺序描述语句了解顺序描述语句的应用场合。
了解VHDL中的主要顺序描述语句有哪些。
掌握常用顺序语句的语法格式和应用等理解和掌握信号和变量的区别WAIT语句断言语句信号代入语句变量赋值语句IF语句IF语句的3种书写格式理解和掌握应用IF语句的多选择控制语句隐含的优先级关系。
《EDA技术与VHDL》期末复习大纲CH1 EDA技术概述1.基本缩略语的英文全称以及中文含义:VHDL:超高速集成电路硬件描述语言VHSIC(very high speed intergrated circuit)Hardware Description LanguageASIC:专用集成电路Application specific intergrated circuitsEDA:电子设计自动化Electronic design automationCPLD:复杂可编程逻辑器件Complex programmable logic deviceJTAG:联合测试行动组Jiont test action groupIP:知识产权核、知识产权模块Internet protocolSOC:片上系统Sestem on a chipFPGA:现场课编程门阵列Field-programmable gate arrayLUT:可编程查找表Look up tableRTL:寄存器传输级Register transport level2.会使用PROM阵列完成逻辑函数;P12页3.几个重要概念:综合和适配P6\P8编程和配置4.可编程逻辑器件的几大分类;P105.IP在EDA技术中的应用以及意义;P236.基于FPGA/CPLD 的EDA开发设计流程;P67.常见的大规模可编程逻辑器件的编程工艺。
P21CH2 VHDL程序结构与数据对象1.VHDL程序的基本结构,以及常用库;P262.VHDL中的数字表示方法以及数制转换;P343.信号和变量的功能特点以及异同点;P37\384.几种端口模式,区别INOUT和BUFFER的异同;P295.分析体会27页例2-1(4选1多路选择器);P276.会根据VHDL程序画出实体图、电路原理图以及波形图。
CH3 VHDL数据类型与顺序语句1.几个重要VHDL数据类型:BIT和BIT_VECTOR类型STD_LOGIC和STD_LOGIC_VECTOR类型2.几个重要VHDL语句:IF_THENCASE_WHENPROCESSLOOPWAIT(时钟信号产生)GENERIC(可结合第5章复习)3.几个常用的VHDL程序:(1)基本D触发器,含异步复位和时钟使能的D触发器(分析体会异步和同步的具体含义);P55(2)实用计数器;P64(3)优先编码器(掌握用IF 语句描述真值表的方法);P68(4)端口数据统计计数器;P78(5)半加器(注意有若干种程序写法)4.习题3-8及其若干变种(例如:同步置1,同步清零…)目的是练习同步或者异步时钟下的IF语句顺序。
姓名:胡海侠学号:200920212036 班级:SJ0931《EDA技术与VHDL》课程学习笔记在学习本课程之前,我了解到这门课程是与数字电路有关,考虑到数字电路方面的知识已经忘得差不多了,再加上大学学习时候基础本来就不牢靠,所以就恶补了一下数字电路方面的知识。
通过对数字电路的学习,我能够基本上回想起老师上课讲的内容,对数字电路方面有了一个系统的认识,尽管还不是尽善尽美,但是对后期课程的学习已经没有什么障碍了。
那么经过不到一个星期的复习,我基本掌握了以下内容:1:逻辑代数的基本公式和定理,逻辑函数的化简方法和逻辑函数的基本表示方法(1)逻辑函数的基本公式和定理是进行公式化简的依据(2)逻辑函数的基本化简方法是公式化简法和图形化简法,其中图形化简方法中主要应用卡诺图化简的方法。
化简的结果通常为标准与或式(3)逻辑函数的基本表示方法有六种:真值表,卡诺图,函数式,逻辑图,波形图和VHDL 描述2:半导体二极管,三极管和MOS管是数字电路中的基本开关元件,半导体二极管是不可控的;半导体三极管是一种电流控制且具有放大特性的开关元件;MOS管是用电压进行控制的,也具有放大功能。
了解了CMOS和TTL集成门电路的外部特征——逻辑特性和电器特性。
逻辑特性即逻辑功能,如与门,或门,非门,与非门,或非门,与或非门等;电器特性有静态特性(主要是输入特性和输出特性)和动态特性(主要是传输延迟时间)。
3:通过对组合逻辑电路的学习,我知道组合逻辑电路是输出信号仅取决于当时的输入信号,而与原来所处的状态无关。
了解了组合逻辑电路的分析设计的方法。
并通过对加法器,数值比较器,译码器,数据选择器和分配器,只读存储器的学习,对设计过程有了更深的了解。
4:触发器的学习(1)基本触发器:把两个与非门或者或非门交叉连接起来,边构成了基本触发器(2)同步触发器:在基本触发器基础上,增加两个控制门和一个控制信号,就构成了同步触发器。
他的显著特征就是时钟电平直接控制(3)边沿触发器:把两个D触发器级联起来,便构成边沿D触发器,再加以改进就可以得到边沿JK触发器。
《EDA技术与VHDL》教学大纲032320 电子信息工程、通信工程专业限选课,32学时,2学分一、课程内容本课程内容包括EDA技术及应用的有关问题, EDA技术的主要内容即EDA的物质基础——大规模可编程逻辑器件FPGA/CPLD的结构及原理,EDA的主流表达方式——VHDL 的编程基础,EDA的设计开发软件以及EDA的实验开发系统的结构及使用方法。
二、大纲说明1.课程的性质、目的和任务课程性质::本课程是通信工程和电子信息专业的专业限选课。
课程目的和任务:使学生掌握大规模可编程逻辑器件的基本理论与使用方法,掌握VHDL语言的进行硬件设计的方法,学会相应的软件开发工具及实验开发系统的应用。
2.课程的基本要求:本课的教学环节包括课堂讲授,学生自学,实验,习题,答疑,质疑和期末考试。
通过上述基本教学步骤,要求学生掌握可编程器件及VHDL语言的基本内容,并能正确地应用这些知识进行硬件设计,以提高学生的专业技能。
3.本课程与相关课程的关系先修课程:C程序设计语言,数字电子技术。
4.课程基本内容、难点和重点第一章绪论一般理解与掌握: EDA技术及数字系统设计流程。
重点:1. EDA技术的主要内容 2. 数字系统的设计。
难点:EDA的工程设计流程。
第二章大规模可编程逻辑器件一般理解与掌握:1.可编程逻辑器件概述。
2. 复杂可编程逻辑器件。
重点:1. FPGA和CPLD的开发应用选择。
2. 在系统可编程(ISP)逻辑器件。
难点:现场可编程门阵列(FPGA)。
第三章VHDL编程基础一般理解与掌握:概述。
重点:1. VHDL程序基本结构。
2. VHDL顺序语句。
3. VHDL并行语句。
4. 子程序。
5. 库、程序包及其他。
6. VHDL描述风格。
7.基本逻辑电路设计。
难点:1.VHDL语言要素。
2.状态机的VHDL设计。
第四章常用EDA工具软件操作指南一般理解与掌握:1. Lattice ispEXPERT操作指南。
EDA技术与VHDL_汇总EDA(电子设计自动化)技术与VHDL(可编程硬件描述语言)是在电子设计领域中广泛应用的两种技术。
EDA技术是指利用计算机辅助设计软件来帮助工程师进行电子电路的设计和验证,提高设计效率和降低成本。
而VHDL是一种硬件描述语言,用于描述电子系统的行为和结构,是EDA技术的重要工具之一、本文将针对EDA技术和VHDL进行综述。
EDA技术是电子设计流程中的重要环节,包括电路设计、电路模拟、布局与布线、物理验证等多个方面。
其中,电路设计主要关注电路行为和结构的设计,通过EDA软件可以对电路进行逻辑综合、时序优化等操作,从而生成最终的电路结构。
电路模拟是对设计电路进行仿真和验证的过程,通过EDA软件可以模拟电路的工作状态,检查设计是否符合预期要求。
布局与布线是将逻辑电路转化为物理电路的过程,在电路板上布置元件并进行连线,以满足电路的功能和性能要求。
物理验证则是根据设计规则和约束对布局和布线结果进行验证,确保电路能够正常工作。
VHDL是一种硬件描述语言,用于描述电子系统的行为和结构。
VHDL提供了抽象层次,可以描述从逻辑门到整个系统的各个层次。
使用VHDL,设计者可以对系统进行模块化描述,将整个系统分解为多个模块并进行独立设计。
VHDL还提供了丰富的工具和语法,用于描述电路的结构、时序、数据流等信息。
通过VHDL描述的电路可以通过EDA软件进行综合、仿真、布局与布线等操作。
VHDL还具有良好的可移植性,设计者可以在不同EDA软件和不同平台上进行开发和验证。
EDA技术与VHDL的结合可以提高电子设计的效率和质量。
通过EDA软件,设计者可以利用图形界面进行电路设计,快速搭建和验证电路结构。
在设计过程中,VHDL可以使设计者在高层次上描述电路功能和结构,提高设计抽象和可重用性。
此外,通过EDA软件可以进行电路的仿真和验证,帮助设计者对电路进行性能、时序等方面的优化,减少设计错误的风险。
在布局与布线阶段,EDA软件可以自动完成复杂的布局与布线操作,优化电路的尺寸和信号传输路径,提高电路的可靠性和性能。
EDA技术与VHDL_汇总EDA(Electronic Design Automation,电子设计自动化)技术是一类软件和工具的总称,用于帮助设计师在集成电路设计过程中进行系统分析、系统设计、电路设计、物理布局、验证等工作。
EDA技术在现代集成电路设计中起着至关重要的作用。
VHDL(VHSIC Hardware Description Language,可编程硬件描述语言)是一种用于描述数字电路和系统的硬件描述语言。
VHDL通过以人类可读的方式描述电路结构和行为,然后使用EDA工具将VHDL代码转换为实际的电路图和布局。
首先,EDA技术提供了各种工具和环境,可以帮助设计者对电路进行分析和模拟,以验证电路的性能和功能。
设计者可以使用EDA工具对电路进行仿真,以便在实际制造之前发现并消除潜在问题。
在这个过程中,VHDL作为一个硬件描述语言,提供了一种方式来描述和验证电路的行为和功能。
其次,EDA技术还可以帮助设计者将VHDL代码转换为物理布局。
设计者可以使用EDA工具进行逻辑合成、布局布线等操作,根据VHDL代码生成实际的电路图。
这些工具可以通过综合技术将高级抽象描述转换为底层的物理结构,从而提高电路设计的效率和准确性。
此外,EDA技术还可以辅助设计者进行电路的优化。
设计者可以使用EDA工具对电路进行优化,并进行不同级别的折中。
例如,可以通过选择不同的元件、更改电路结构或参数来改善电路性能。
这些优化过程需要设计者对VHDL代码进行分析和修改,以达到更好的性能和功耗表现。
最后,EDA技术还可以帮助设计者进行电路的验证。
使用EDA工具可以对已实现的电路进行验证,确保其符合设计要求。
这些工具可以通过测试用例和仿真来验证电路的正确性,并提供分析报告和调试工具,以便设计者快速定位和修复问题。
VHDL作为硬件描述语言,可以提供详细的功能和行为描述,有助于验证过程的进行。
总而言之,EDA技术与VHDL密切相关,通过提供各种工具和环境,帮助设计者完成集成电路设计的各个阶段。
第1章1.什么是EDA技术?什么是狭义EDA?什么是广义EDA?P1基于计算机的电子设计自动化技术;侠义:用编程的方式在一块芯片内设计数字电路广义;用软件自动合计电子产品2.利用EDA技术进行电子系统设计的最终目标是什么?P2完成专用集成电路或印刷电路板的设计和实现3.IEEE标准化的HDL语言有哪两种?P4VHDL和Verilog4. EDA开发设计流程包含哪些步骤?各步骤的作用是什么?P7~10设计输入(将电子系统以一定的表达方式输入计算机),综合(将用行为和功能层次表达的电子系统转换为低层次的、便于具体实现的模块组合装配的过程),适配(将综合器产生的网表文件配置于指定的目标其中,是指产生最终的下载文件),仿真(根据一定的算法和仿真库对设计模拟,验证设计正确性,一边排除错误),编程下载5.可编程逻辑器件有哪些分类方法?各可分为哪几类?P11集成度(高低集成度)结构(查中表,乘积项)、编程工艺(熔丝,反熔丝,EPROM\EEPROM\SRAM\Flash)6.简单PLD中的PROM、PLA、查中表,乘积项PAL和GAL在结构上有何异同?与阵列只有PROM固定,或阵列只有GAL固定(其他都是可编程的)7.CPLD器件的最基本可编程单元是什么?由哪几部分组成?P16LC1、逻辑阵列2、乘积项选择矩阵3、可编程寄存器8.FPGA器件的最基本可编程单元是什么?由哪几部分组成?P19LE1、一个四输入的查找表LUT2、进位逻辑链3、寄存器逻辑链4、一个可编程的寄存器9.CPLD的内部结构组成?P15-171、逻辑阵列块2、逻辑宏单元3、扩展乘积项4、可编程连线阵列5、I/O控制块10.FPGA的内部结构组成?P18-202、1、逻辑阵列块2、嵌入式存储器3、嵌入式硬件乘法器、4、I/O单元5、嵌入式PLL11.查找表原理?P18查找表(Look-Up-Table)简称为LUT,LUT本质上就是一个RAM。
EDA技术与VHDL语言期末复习指导课程要求:本课程是通信类专业的专业技术课,要求学生通过本课程的学习和实验,初步掌握常用EDA工具的使用方法、FPGA的开发技术以及VHDL语言的编程方法。
能比较熟练地使用Quartus II等常用EDA软件对FPGA和CPLD作一些简单电路系统的设计,同时能较好地使用VHDL语言设计简单的逻辑电路和逻辑系统,学会行为仿真、时序仿真和硬件测试技术,为现代EDA工程技术的进一步学习,通信类ASIC器件设计以及通信类超大规模集成电路设计奠定基础,使学生具备可编程类硬件设计的技术手段。
课程复习提纲:(一)概论(基础知识)现代EDA技术;EDA基本概念P.1 【名词解释】EDA发展趋势(IP核)P.2【简答】EDA技术实现目标:3点P3~P4【简答】VHDL概况;(名词解释)P4【名词解释】自顶向下的系统设计方法;P8~ P10【简答】对现代EDA技术及实现工具的使用方法和发展情况有了解。
P11【简答】(二)EDA设计流程及工具(基础知识)基于EDA软件的FPGA/CPLD开发流程和ASIC设计流程;P12~P16 其中的几个“小标题”并简单扩展;ASIC设计方法;P17~P18;【简答】一般的ASIC设计流程;P19;【简答】与这些设计流程各环节密切相关的EDA工具软件(Quartus II);综合软件的名称等;P19~P23;【填空】IP、SOC,FPGA,CPLD等术语。
P24等【名词解释】(三)FPGA/CPLD结构与应用(基础知识)FPGA和CPLD的基本技术;可编程器件的分类;P28【简答或填空】几类常用的可编程逻辑器件的结构和工作原理;【简答】PLD,PROM,PLA,PAL,GAL P29~ P31,P36~ P40对CPLD的乘积项原理;P38【简答】FPGA的查找表原理;P40【简答】相关的编程下载和测试技术。
P46~ P50 【了解】(四)VHDL设计初步(重点知识)通过简单、完整而典型的VHDL设计示例,初步了解VHDL表达和设计电路的方法;VHDL语言现象和语句规则;VHDL系统设计技巧;(五)Quartus II应用向导(一般了解,需了解参数配置方法)基于Quartus II的VHDL文本输入设计流程(通过实例),包括设计输入、综合、适配、仿真测试和编程下载等方法;【了解】Quartus II包含的一些有用的测试手段;【了解】原理图输入设计方法。
姓名:胡海侠学号:200920212036 班级:SJ0931《EDA技术与VHDL》课程学习笔记在学习本课程之前,我了解到这门课程是与数字电路有关,考虑到数字电路方面的知识已经忘得差不多了,再加上大学学习时候基础本来就不牢靠,所以就恶补了一下数字电路方面的知识。
通过对数字电路的学习,我能够基本上回想起老师上课讲的内容,对数字电路方面有了一个系统的认识,尽管还不是尽善尽美,但是对后期课程的学习已经没有什么障碍了。
那么经过不到一个星期的复习,我基本掌握了以下内容:1:逻辑代数的基本公式和定理,逻辑函数的化简方法和逻辑函数的基本表示方法(1)逻辑函数的基本公式和定理是进行公式化简的依据(2)逻辑函数的基本化简方法是公式化简法和图形化简法,其中图形化简方法中主要应用卡诺图化简的方法。
化简的结果通常为标准与或式(3)逻辑函数的基本表示方法有六种:真值表,卡诺图,函数式,逻辑图,波形图和VHDL描述2:半导体二极管,三极管和MOS管是数字电路中的基本开关元件,半导体二极管是不可控的;半导体三极管是一种电流控制且具有放大特性的开关元件;MOS管是用电压进行控制的,也具有放大功能。
了解了CMOS和TTL集成门电路的外部特征——逻辑特性和电器特性。
逻辑特性即逻辑功能,如与门,或门,非门,与非门,或非门,与或非门等;电器特性有静态特性(主要是输入特性和输出特性)和动态特性(主要是传输延迟时间)。
3:通过对组合逻辑电路的学习,我知道组合逻辑电路是输出信号仅取决于当时的输入信号,而与原来所处的状态无关。
了解了组合逻辑电路的分析设计的方法。
并通过对加法器,数值比较器,译码器,数据选择器和分配器,只读存储器的学习,对设计过程有了更深的了解。
4:触发器的学习(1)基本触发器:把两个与非门或者或非门交叉连接起来,边构成了基本触发器(2)同步触发器:在基本触发器基础上,增加两个控制门和一个控制信号,就构成了同步触发器。
他的显著特征就是时钟电平直接控制(3)边沿触发器:把两个D触发器级联起来,便构成边沿D触发器,再加以改进就可以得到边沿JK触发器。
第1部分EDA技术概述一、EDA技术的含义:EDA是Electronic Design Automation (电子设计自动化)的缩写。
以大规模可编程逻辑器件为设计载体,以硬件描述语言为系统逻辑描述的主要表达方式,以计算机、大规模可编程器件的开发软件及实验开发系统为设计工具,自动完成用软件方式描述的电子系统到硬件的逻辑编译、逻辑简化、逻辑分割、逻辑综合及优化、布局布线、逻辑仿真、直至完成对于特定目标芯片的适配编译、逻辑映射、编程下载等工作,最终形成集成电子系统或专用集成芯片的一门多学科融合的新技术。
二、EDA技术的实现目标及实现途径:1、实现目标完成专用集成电路ASIC或印制电路板PCB的设计和实现。
2、实现途径⑴. 超大规模可编程逻辑器件⑵. 半定制或全定制ASIC ⑶. 混合ASIC三、EDA技术的设计方法:(P8)传统的电路设计方法:自底向上的设计方法。
即首先确定可用的元器件,然后根据这些器件进行逻辑设计,完成各模块后进行连接,最后形成系统。
基于EDA技术的电路设计方法:自顶向下的设计方法。
自顶向下是指将数字系统的整体逐步分解为各个子系统和模块,若子系统的规模较大,则还需将子系统进一步分解为小的子系统和模块,层层分解,直至整个系统中各个子系统的关系合理,并便于工作于逻辑电路的设计和实现为止。
传统电路设计方法与采用EDA技术的电路设计方法的区别:1、设计方法不同:传统是自下而上的方法(Down-Top),EDA是自上而下的设计方法(Top-Down)。
2、传统设计基于电路板;EDA技术是基于芯片的设计方法。
3、描述方式不同:传统采用电路图为主,EDA以硬件描述语言为主。
4、设计手段不同:传统以手工设计为主,EDA设计为自动设计。
结论:EDA技术极大地降低硬件电路的设计难度,提高设计效率,是电子系统设计方法的质的飞跃!四、EDA技术的设计流程(P12)1、设计输入(原理图/HDL文本编辑)2、综合(自然语言综合/逻辑综合/行为综合/ 版图综合或结构综合)3、适配4、时序仿真和功能仿真(P14)5、编程下载6、硬件测试第2部分VHDL程序结构VHDL程序由实体(Entity)、结构体(Architecture)、库(Library)、程序包(Package)和配置(Configuration)5个部分组成。
【第一章】1、FPGA芯片的发展主要体现在哪几个方面?未来的发展趋势是什么?ANS:2、EDA技术的优势是什么?ANS: EDA依赖功能强大的计算机在EDA工具软件平台上自动的完成逻辑化简、逻辑分割、逻辑综合、结构综合,以及逻辑优化和仿真等功能,直至实现既定性能的电子线路系统功能。
EDA使得设计者的工作几乎仅限于利用软件的方式,即利用硬件描述语言HDL和EDA工具软件来完成对系统硬件功能的实现+ P 103、EDA的设计流程包括哪几个环节?ANS: ①设计输入(原理图/HDL文本编辑)②综合③FPGA/CPLD 适配④时序仿真与功能门级仿真⑤FPGA/CPLD编程下载⑥FPGA/CPLD器件电路硬件检测。
4、硬件描述语言的种类有哪些?ANS: VHDL 、Verilog HDL、SystemVerilog、System C 等5、自顶向下设计方法的优点是什么?ANS: 过程大部分由计算机完成,可植性强,便于系统的优化和升级,以及对模型进行及时的修改,以改进系统或子系统的功能,更正设计错误,提高目标系统的工作速度,减小面积耗用,降低功耗和成本等。
在EDA技术应用中,自顶向下的设计方法,就是在整个设计流程中各设计环节逐步求精的过程。
6、ip核可分为哪几类?ANS: ①软IP 、②固IP、③硬IP7、ip在EDA技术的应用和发展中的意义是什么?ANS: IP就是将某些功能固化,而当EDA设计也需要这些功能的时候,就可以直接将植入了此功能的IP拿过来直接用,而不用再重新设计。
这样既可以提高效率又可以减少设计风险。
IP核具有规范的接口协议,良好的可移植与可测试性,为系统开发提供了可靠的保证。
【第二章】1、可编程逻辑器件经历哪些发展过程?ANS:2、Altera公司的PLD芯片主要有哪些系列?ANS: 按照推出的先后顺序:Classic 、MAX、FLEX、APEX、ACEX、APEX 2、Cyclone/2/3/4、MAX2、Stratix-1/2/3/4/6.【第三章】1、一个完整的VHDL程序包括哪几个部分?其作用是什么?ANS: ①实体描述部分②结构体描述部分作用略2、VHDL中标示符的命名规则是什么?ANS: 标识符是设计者在VHDL程序中自己定义的,用于标识不同名称的词语。
《EDA技术与VHDL》教学大纲学时:64一、教学大纲的说明1、授课对象:应用电子技术专业、三年制专科2、课程性质:专业方向类核心主干课3、任务及要求:电子设计自动化(EDA)是电子信息类专业的一门重要课程。
EDA是20世纪90年代初发展起来的新技术。
本课程的任务是使学生学习和掌握可编程逻辑器件、EDA开发系统软件以及硬件描述语言(VHDL),为掌握EDA技术打下必要的基础;初步学会应用EDA技术解决一些简单的电子设计问题。
4、与其它课程的联系:先修课程:模拟电子技术、数字电子技术、C语言与程序设计等后续课程:电子系统设计二、教学大纲1、课程内容:第一章EDA技术概述EDA技术的由来、可编程逻辑器件的发展历程、可编程逻辑器件产品简介、硬件描述语言简介。
通过本章的学习,使学生对EDA技术有一个初步的认识。
第二章PLD硬件特性与编程技术了解PLD的发展及分类,CPLD的结构,FPGA的结构与可编程原理,以及常用的一些CPLD 器件系列,编程与配置,硬件测试技术等。
通过本章的学习,使学生对CPLD有一个初步的认识。
第三、七、八、六章VHDL设计VHDL程序结构、VHDL语言要素、VHDL顺序语句、VHDL并行语句、VHDL的描述风格、仿真、综合。
本章内容是介绍一种通用的硬件描述语言VHDL。
该语言与一般的计算机高级语言有相似之处,但是它是以硬件为目标的。
通过本章的学习,应掌握VHDL的主要内容,并通过上机操作,学会编程方法。
第四章Quartus II使用方法Quartus II软件使用方法,主要介绍设计流程、仿真步骤,IP核的使用方法,原理与输入等,通过本章的学习,学会软件的使用,能将VHDL程序在Quartus II仿真验证第六章16位CPU设计学习CPU大型电路的设计,通过本章的学习,树立宏观和微观设计的相结合的能力。
第九章DSP Builder 设计初步介绍MATLAB/DSP Builder及其设计流程、正弦信号发生器,DSP Builder层次化设计。
1.EDA技术是20世纪后期,伴随着微电子技术、大规模集成电路制造技术、计算机辅助工程、可编程逻辑器件以及电子设计技术和工艺的发展而同步发展形成的一门综合性的技术与学科。
2在EDA工具软件平台上,自动完成从软件方式描述的数字系统到硬件系统的逻辑化简、逻辑分割、逻辑综合、结构综合(布局布线)、逻辑优化和仿真测试等功能,随之完成对于特定目标芯片的适配、逻辑映射、编程下载等工作,直至硬件实现整个数字系统3.综合是将高层次上描述的电子系统转换为低层次上描述的电子系统,以便于系统的具体硬件实现综合器是能自动将高层次的表述(系统级、行为级)转化为低层次的表述(门级、结构级)的计算机程序4.设计输入的方式有原理图、硬件描述语言、状态图以及波形图5.按照仿真的电路描述级别的不同,HDL仿真器可以完成:系统级仿真,行为级仿真,RTL级仿真,门级(时序)仿真。
按照仿真是否考虑硬件延时分类,可以分为:功能仿真和时序仿真。
仿真器可分为基于元件(逻辑门)仿真器和基于HDL语言的仿真器6.IP核是知识产权核或知识产权模块,在EDA技术中具有十分重要的地位。
半导体产业的IP定义为用于ASIC或FPGA中的预先设计好的电路功能模块。
IP分为软IP、固IP和硬IP。
7.可编程逻辑器件PLD是一种通过用户编程或配置实现所需逻辑功能的逻辑器件,也就是说用户可以根据自己的需求,通过EDA开发技术对其硬件结构和工作方式进行重构,重新设计其逻辑功能8.两种可编程逻辑结构是基于与-或阵列可编程结构(乘积项逻辑可编程结构)、基于SRAM查找表的可编程逻辑结构9.PLD按集成度分类:简单PLD、复杂PLD;按结构分类:基于“与-或”阵列结构的器件、基于查找表结构的器件;从编程工艺上分类:熔丝型、反熔丝型、EPROM型、EEPROM型、SRAM型、Flash型10.四种简单逻辑器件:PROM中固定的与阵列,可编程或阵列;PLA是与阵列、或阵列都可编程;PAL中或阵列固定,与阵列可编程;GAL 是或阵列、与阵列都可编程,输入部分增加了输出逻辑同单元(OLMC)11.CPLD的组成结构:逻辑阵列块(由逻辑宏单元构成)、扩展乘积项(共享和并联)、可编程连线阵列、I/O控制块12.FPGA的组成结构:逻辑阵列块LAB(由多个逻辑宏单元构成)、嵌入式存储器块、嵌入式硬件乘法器、I/O单元和PLL等模块13.Verilog的端口模式有三种:输入端口、输出端口、双向端口,对应的端口定义关键词分别是:input、output、inout14.Verilog中常用有两种变量:寄存器型变量(用reg定义)、网线型变量(用wire定义)15.Verilog有两种赋值方式:阻塞式赋值(=)、非阻塞式赋值(<=)16.Verilog有四种循环语句:for语句、repeat语句、while语句、forever语句17.Verilog的描述风格:RTL描述、数据流描述、行为描述、结构描述18.从状态机的信号输出方式上分,有Mealy型和Moore型两种状态机;从状态机的描述结构上分,有单过程状态机和多过程状态机;从状态机表达方式上分,有符号化状态机和确定状态编码的状态机;从状态机编码方式上分,有顺序编码状态机、一位热码编码状态机或其他编码方式状态机。
EDA技术与VHDL(复习提纲)[1]EDA技术与VHDL第1章概述第2章PLD硬件特性与编程技术第3章VHDL基础1. 实体的概念?程序<-->元件图2. 结构体的概念?程序<-->逻辑电路3. P42页图3-2对应的逻辑表达式是什么?为什么能够实现2选1多路选择器?4. 2选1多路选择器的3种实现方法?真值表<-->逻辑表达式<-->逻辑电路图<-->程序?5. P44页图3-3/mux21a功能时序波形的理解?6. 标识符能用关键词起名,也能用EDA工具库中预定义的元件名起名?7.综合的作用或意义?8. 可综合的端口模式分别是?数据的流动方向和方式?9. INOUT、BUFFER的区别?10.什么是RTL?11.什么是VHDL的RTL描述?12.在VHDL中,所有合法的顺序描述语句都必须放在进程语句中?13.通常要求将进程中所有的输入信号都放在敏感信号表中?14.试叙述进程的?启动-运行?过程?15.在一个结构体中只能包含一个进程语句结构?16.所有进程语句都是并行语句?17.任一进程PROCESS内部语句结构属于顺序语句?18.VHDL代码文件的后缀扩展名是?19.建议程序文件名与该程序的实体名一致?20.文件名区分大小写吗?21.P48页例3-6,D触发器工作原理?22.STD_LOGIC数据类型定义的数据有几个?分别是什么?什么含义?综合器支持哪几个数据?23.关键词?EVENT?的作用?24.假设clock的数据类型是BIT,试解释为什么?clock’ EVENT AND c lock=’1’”表达式是用来对clock的上升沿进行检测?25.结合P48例3-6说明,为什么不完整条件语句是构建时序电路的关键?26.检测时钟信号上升沿的不同表述方法?(4)27.半加器:真值表<-->逻辑表达式<-->逻辑电路图<-->程序?28.全加器电路图?29.双横线?--??30.元件例化语句的表达式?例化名和元件名如何理解?PORT MAP ()端口映射语句中的?端口名=>连接端口名?,端口名和连接端口名的区分?31.试用两种方法设计4位二进制加法计数器?(1:BUFFER;2:SIGNAL)32.设计异步复位同步使能十进制加法计数器?(流程图)33.?OTHERS=>X?中?OTHERS?的作用?34.异步、同步的概念?35.设计同步并行预臵功能的8位右移移位寄存器?P66例3-22(流程图)36.为什么该移位寄存器是算数右移移位寄存器?(SRA)37.数据对象的种类?38.常数定义的格式?常数定义的设计单元?常数的可视性?常数如果分别在程序包、结构体和进程中定义,哪一个的使用范围广?39.变量的特点(4)?变量定义的格式?40.信号的使用和定义范围?41.符号?<=?两边的数值总是一致的?判断题:1)信号可以在进程中定义?变量可以在结构体中定义?2)信号和常数都可以在实体、结构体和程序包中定义?3)常数和变量都可以在进程和子程序中定义?4)信号可以在函数和过程中定义?5)变量可以在程序包中定义?6)变量赋值需要延时?变量、信号、常量都可以列入进程的敏感表?7)实体的端口可以列入进程的敏感表?8)信号赋值延时(不指定)需要多长时间?指定延时的格式是?指定延时综合器支持吗?9)实体的端口可以看作一种定义数据流向的隐性信号?10)信号可以看作实体内部的没有定义数据流向的端口?42.在进程和结构体的并行语句结构中,信号赋值的区别?43.变量和信号在赋值上的异同点?表3-1(行为特性)44.结合例3-25和例3-26说明信号与变量在延时特性上的差别?(3)45.变量和信号的赋值都需要一个δ延时?46. 在进程中,所有赋值语句,包括变量赋值,都必须在一个δ延时中完成?47.在进程中的所有信号赋值是?假?顺序?真?并行?48. 如在进程中存在对同一信号多次赋值,使信号值发生更新的是第一个赋值源?49. 结合例3-28和例3-29说明顺序语句中信号与变量之间的差别?50. 结合图3-20说明例3-30的工作原理?51. IF语句的4种结构?52. 非完整性条件语句<-->时序电路,完整性条件语句<-->组合电路53. 8线-3线优先编码器的设计?54. PROCESS结构中的顺序语句及其顺序执行过程只是相对于计算机中的软件行为仿真的模拟过程而言?55. PROCESS语句结构如何执行?56. 多数VHDL综合器要求敏感信号表必须列出本进程中所有输入信号名?57. PROCESS语句结构的特点?58. PROCESS为一有限循环语句?59. PROCESS中的顺序语句具有明显的顺序/并行运行双重性?60. 软件语言中每一条语句的执行是按CPU的机器周期的节拍顺序执行?每一条语句执行的时间是确定的?61. 在PROCESS中,一个执行状态的运行周期,即从PROCESS 的启动执行到遇到END PROCESS为止所花的时间与任何外部因素都无关(从综合结果来看),甚至与PROCESS语法结构中的顺序语句的多少都没有关系,其执行时间从行为仿真的角度看(如果没有设臵任何显式的惯性或传输延时),只有一个VHDL模拟器的最小分辨时间,即一个δ时间;但从综合和硬件运行的角度看,其执行时间是0;与信号的传输延时无关,与被执行的语句的实现时间也无关,即在同一PROCESS中,10条语句和1000条语句的执行时间是一样的,显然,从效果上看,PROCESS中的顺序语句具有并行执行的性质。
EDA技术与VHDL总结提纲初稿
提示:
详细阅读相关参考书上的例子程序,参考书课后习题,掌握程序编制的思路,有时间的朋友可以在实验平台上实际操作。
知识点绪论
a)应用VHDL进行系统设计的基本步骤。
b)应用VHDL进行系统设计与传统的数字电路设计的优势。
c)CPLD/FPGA和单片机,DSP,ARM等其他控制器比较,其优势是什么?(为什么
要用CPLD/FPGA?)
d)基本名词:CPLD,FPGA,JTAG,ISP,ASIC等的含义?
知识点VHDL入门
a)简单VHDL程序的结构,教材的例子,请仔细研读。
b)基本逻辑门的电路符号。
知识点VHDL程序结构
a)实体:深刻理解实体的含义,实体的语法格式,给出电路符号能够写出实体,给出
实体能画出电路的符号。
b)结构体:深刻理解结构体的含义,结构体的语法格式,了解结构体的子结构。
c)了解子程序的定义格式,说明格式,子程序的使用格式,子程序定义的位置,使用
的位置。
d)了解库的含义,库的使用格式。
e)了解程序包的定义格式,使用格式,程序包使用和定义的位置。
f)进程:深入理解进程的含义,进程的语法格式,进程启动条件,进程的同步。
g)了解块语句的格式。
知识点VHDL的词法单元
a)了解VHDL文字规则。
b)理解VHDL数据对象:变量、信号、常量,注意他们的定义位置,使用位置,区
别。
c)数据类型:了解VHDL的基本数据类型,理解VHDL是一门强数据类型语言,掌
握数据类型的定义格式,了解STD_LOGIC等常用数据类型的含义,定义格式,使
用注意事项。
d)操作符:了解各种常用的操作符,注意操作符使用时操作数的数据类型
知识点顺序语句。
a)顺序语句和并行语句是考核的重点。
b)赋值语句:信号赋值、变量赋值,信号和变量赋值的区别,信号和变量赋值的语法
格式,理解信号赋值具有δ延时。
c)流程控制语句
i.IF语句。
ii.Case语句。
iii.Loop语句。
iv.掌握这三种语句的语法格式,这三种语句的注意事项,这三种语句和C语言的类似语句的区别。
d)wait语句:了解wait语句的语法格式,掌握wait语句在进程中的使用方法,掌握
时钟边沿的描述方法。
e)子程序调用语句:了解子程序调用的语法格式,理解子程序调用和C语言子程序
调用的区别。
f)了解其他语句,如属性函数等。
g)复习本章课后习题。
知识点并行语句
a)理解进程并行的含义,理解进程顺序的含义。
b)并行信号赋值语句的语法。
i.简单信号赋值。
ii.条件信号赋值语句。
iii.选择信号赋值语句。
iv.掌握他们的语法格式,掌握他们在使用过程中的注意事项。
c)元件例化语句,掌握元件例化语句的语法格式,理解元件例化语句的含义,了解元
件例化语句和子程序调用的区别。
d)生成语句:理解生成语句的含义,了解生成语句的语法格式,与循环语句的区别。
e)本章的课后习题。
知识点状态机
a)掌握状态机程序的结构。
b)了解最典型状态机程序的特点。
c)详细阅读本章的例子程序。
d)详细完成本章课后习题。
EDA实验室
VHDL基本概念问题
一、VHDL的基本结构包括哪5部分?各自的功能及作用?
二、子程序包括哪几部分以及各自的定义?
三、IEEE库包括哪几个包集合?
四、程序包包括哪些?包体什么时候可以不要?
五、配置的作用?
六、VHDL有哪3类数据对象?信号量和变量的区别?
七、用户自定义数据类型的两个关键词(type、subtype)的区别?
八、数据类型转换方法有哪几种?
九、Case语句分支条件应注意哪些?
十、描述进程敏感信号的方法?
十一、并行语句和顺序语句的区别?
十二、条件信号赋值语句和选择信号赋值语句能不能写在process里?十三、元件例化语句的使用。
十四、VHDL语言有哪3种描述方式?
十五、状态机有哪两类?简述他们之间的区别。
十六、写出EDA、FPGA、VHDL的英文全拼及简要解释。