




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、1VHDL设计初步设计初步VHDL语言的基本结构语言的基本结构2课程的地位和作用:课程的地位和作用:2 本课程是电子、通信、自动化等专业的专业基础课程,本课程是电子、通信、自动化等专业的专业基础课程,也是大学生科技创新活动、电子竞赛以及毕业设计的重也是大学生科技创新活动、电子竞赛以及毕业设计的重要技术手段之一,它是一项直接面向实际应用的电子系要技术手段之一,它是一项直接面向实际应用的电子系统设计技术,包含集成电路设计技术、计算机辅助设计统设计技术,包含集成电路设计技术、计算机辅助设计和仿真测试技术,因而是一门实践性很强的课程。和仿真测试技术,因而是一门实践性很强的课程。掌握一门语言,掌握一个开
2、发工具掌握一门语言,掌握一个开发工具.本课程安排:本课程安排: 学时:学时:48学时(课堂教学学时(课堂教学16学时,上机实验学时,上机实验32学时)学时)课程学习的主要任务:课程学习的主要任务:3 3课程概述课程概述第一章绪论(一般了解)第一章绪论(一般了解)介绍介绍EDA技术;了解硬件描述语言技术;了解硬件描述语言VHDL和和EDA技术的发展趋势;技术的发展趋势;介绍自顶而下的设计方法;介绍介绍自顶而下的设计方法;介绍FPGA设计流程,了解设计流程,了解QuartusII的使用环境;介绍本课程的特点与学习方法以及需具备的知识。的使用环境;介绍本课程的特点与学习方法以及需具备的知识。第二章第
3、二章 VHDL语言程序结构(重点掌握)语言程序结构(重点掌握)第三章第三章 VHDL语言数据以及运算操作符(重点掌握)语言数据以及运算操作符(重点掌握)第四章第四章 VHDL程序设计(重点掌握)程序设计(重点掌握)第五章第五章 VHDL设计进阶(重点掌握)设计进阶(重点掌握)第六章有限状态机设计(重点掌握)第六章有限状态机设计(重点掌握)第七章第七章 设计优化及方法(一般理解)设计优化及方法(一般理解)第八章第八章 系统设计实践(一般理解)系统设计实践(一般理解)教学要求:教学要求:要求学生对现代要求学生对现代EDA技术、发展情况以及技术、发展情况以及QuartusII工具的使用方法,设计流程
4、有初步的了解。工具的使用方法,设计流程有初步的了解。44课程概述课程概述第一章绪论(一般了解)第一章绪论(一般了解)介绍介绍VHDL的的基本程序结构基本程序结构,包括实体、结构体、程序包、库、,包括实体、结构体、程序包、库、子程序等主要语句结构。子程序等主要语句结构。教学要求:教学要求:要求学生掌握要求学生掌握VHDL的基本程序结构,常规的的基本程序结构,常规的VHDL语言的设计方法,掌握语言的设计方法,掌握VHDL语言逻辑描述特点以及语言和硬件语言逻辑描述特点以及语言和硬件电路的对应关系。电路的对应关系。第二章第二章 VHDL语言程序结构(重点掌握)语言程序结构(重点掌握)第三章第三章 VH
5、DL语言数据以及运算操作符(重点掌握)语言数据以及运算操作符(重点掌握)第四章第四章 VHDL程序设计(重点掌握)程序设计(重点掌握)第五章第五章 VHDL设计进阶(重点掌握)设计进阶(重点掌握)第六章有限状态机设计(重点掌握)第六章有限状态机设计(重点掌握)第七章第七章 设计优化及方法(一般理解)设计优化及方法(一般理解)第八章第八章 系统设计实践(一般理解)系统设计实践(一般理解)55课程概述课程概述第一章绪论(一般了解)第一章绪论(一般了解)系统介绍系统介绍VHDL语言的语言的基本语法基本语法、数据类型数据类型以及常用的算术与以及常用的算术与逻辑运算操作符的使用。逻辑运算操作符的使用。教
6、学要求:教学要求:使学生进一步了解使学生进一步了解VHDL语言结构特点和使用方法,语言结构特点和使用方法,可对一般可对一般组合逻辑电路组合逻辑电路进行描述。进行描述。第二章第二章 VHDL语言程序结构(重点掌握)语言程序结构(重点掌握)第三章第三章 VHDL语言数据以及运算操作符(重点掌握)语言数据以及运算操作符(重点掌握)第四章第四章 VHDL程序设计(重点掌握)程序设计(重点掌握)第五章第五章 VHDL设计进阶(重点掌握)设计进阶(重点掌握)第六章有限状态机设计(重点掌握)第六章有限状态机设计(重点掌握)第七章第七章 设计优化及方法(一般理解)设计优化及方法(一般理解)第八章第八章 系统设
7、计实践(一般理解)系统设计实践(一般理解)66课程概述课程概述第一章绪论(一般了解)第一章绪论(一般了解)介绍具体实例以及相关语法知识。介绍具体实例以及相关语法知识。教学要求:教学要求:掌握掌握VHDL常用语句,以及程序结构,可利用常用语句,以及程序结构,可利用VHDL语言进行简单语言进行简单逻辑设计逻辑设计并可进行仿真、测试。并可进行仿真、测试。第二章第二章 VHDL语言程序结构(重点掌握)语言程序结构(重点掌握)第三章第三章 VHDL语言数据以及运算操作符(重点掌握)语言数据以及运算操作符(重点掌握)第四章第四章 VHDL程序设计(重点掌握)程序设计(重点掌握)第五章第五章 VHDL设计进
8、阶(重点掌握)设计进阶(重点掌握)第六章有限状态机设计(重点掌握)第六章有限状态机设计(重点掌握)第七章第七章 设计优化及方法(一般理解)设计优化及方法(一般理解)第八章第八章 系统设计实践(一般理解)系统设计实践(一般理解)77课程概述课程概述第一章绪论(一般了解)第一章绪论(一般了解)系统介绍可综合的语句,重点是系统介绍可综合的语句,重点是VHDL的的顺序语句顺序语句和和并行语并行语句句的特点和用法,介绍不同工作方式下的时序电路设计方法。的特点和用法,介绍不同工作方式下的时序电路设计方法。教学要求:教学要求:学生可应用不同风格来编写程序,可设计常用的学生可应用不同风格来编写程序,可设计常用
9、的时序电路时序电路。第二章第二章 VHDL语言程序结构(重点掌握)语言程序结构(重点掌握)第三章第三章 VHDL语言数据以及运算操作符(重点掌握)语言数据以及运算操作符(重点掌握)第四章第四章 VHDL程序设计(重点掌握)程序设计(重点掌握)第五章第五章 VHDL设计进阶(重点掌握)设计进阶(重点掌握)第六章有限状态机设计(重点掌握)第六章有限状态机设计(重点掌握)第七章第七章 设计优化及方法(一般理解)设计优化及方法(一般理解)第八章第八章 系统设计实践(一般理解)系统设计实践(一般理解)88课程概述课程概述第一章绪论(一般了解)第一章绪论(一般了解)介绍状态机的分类、构成;介绍介绍状态机的
10、分类、构成;介绍Mealy型和型和Moore型型状态机状态机的一般性的设计方法。的一般性的设计方法。教学要求:教学要求:要求学生掌握利用要求学生掌握利用VHDL描述描述有限状态有限状态机机的设计方法。的设计方法。第二章第二章 VHDL语言程序结构(重点掌握)语言程序结构(重点掌握)第三章第三章 VHDL语言数据以及运算操作符(重点掌握)语言数据以及运算操作符(重点掌握)第四章第四章 VHDL程序设计(重点掌握)程序设计(重点掌握)第五章第五章 VHDL设计进阶(重点掌握)设计进阶(重点掌握)第六章有限状态机设计(重点掌握)第六章有限状态机设计(重点掌握)第七章第七章 设计优化及方法(一般理解)
11、设计优化及方法(一般理解)第八章第八章 系统设计实践(一般理解)系统设计实践(一般理解)99课程概述课程概述第一章绪论(一般了解)第一章绪论(一般了解)介绍介绍EDA技术中技术中优化优化技术的实现方法。技术的实现方法。教学要求:教学要求:了解设计优化的方法和必要性。了解设计优化的方法和必要性。第二章第二章 VHDL语言程序结构(重点掌握)语言程序结构(重点掌握)第三章第三章 VHDL语言数据以及运算操作符(重点掌握)语言数据以及运算操作符(重点掌握)第四章第四章 VHDL程序设计(重点掌握)程序设计(重点掌握)第五章第五章 VHDL设计进阶(重点掌握)设计进阶(重点掌握)第六章有限状态机设计(
12、重点掌握)第六章有限状态机设计(重点掌握)第七章第七章 设计优化及方法(一般理解)设计优化及方法(一般理解)第八章第八章 系统设计实践(一般理解)系统设计实践(一般理解)1010课程概述课程概述第一章绪论(一般了解)第一章绪论(一般了解)介绍介绍EDA技术中技术中优化优化技术的实现方法。技术的实现方法。教学要求:教学要求:了解设计优化的方法和必要性。了解设计优化的方法和必要性。第二章第二章 VHDL语言程序结构(重点掌握)语言程序结构(重点掌握)第三章第三章 VHDL语言数据以及运算操作符(重点掌握)语言数据以及运算操作符(重点掌握)第四章第四章 VHDL程序设计(重点掌握)程序设计(重点掌握
13、)第五章第五章 VHDL设计进阶(重点掌握)设计进阶(重点掌握)第六章有限状态机设计(重点掌握)第六章有限状态机设计(重点掌握)第七章第七章 设计优化及方法(一般理解)设计优化及方法(一般理解)第八章第八章 系统设计实践(一般理解)系统设计实践(一般理解)1111课程概述课程概述第一章绪论(一般了解)第一章绪论(一般了解)介绍几个综合实践例子。介绍几个综合实践例子。教学要求:教学要求:学习比较复杂学习比较复杂电子系统设计电子系统设计的思想和方法。的思想和方法。第二章第二章 VHDL语言程序结构(重点掌握)语言程序结构(重点掌握)第三章第三章 VHDL语言数据以及运算操作符(重点掌握)语言数据以
14、及运算操作符(重点掌握)第四章第四章 VHDL程序设计(重点掌握)程序设计(重点掌握)第五章第五章 VHDL设计进阶(重点掌握)设计进阶(重点掌握)第六章有限状态机设计(重点掌握)第六章有限状态机设计(重点掌握)第七章第七章 设计优化及方法(一般理解)设计优化及方法(一般理解)第八章第八章 系统设计实践(一般理解)系统设计实践(一般理解)12VHDL设计方法设计方法 VHDL概述概述 VHDL的设计单元的设计单元 VHDL的基本语法结构的基本语法结构13VHDL 概述概述VHSIC - Very High Speed Integrated CircuitHardwareDescriptionL
15、anguage14VHDL历史历史19821982年,诞生于美国国防部赞助的年,诞生于美国国防部赞助的VHSICVHSIC项目项目19871987年,年,VHDLVHDL被被IEEEIEEE和美国国防部确认为标和美国国防部确认为标 准硬件描述语言,即准硬件描述语言,即IEEE-1076IEEE-1076(简称简称8787版版) ) 19931993年,年,IEEEIEEE对对VHDLVHDL进行了修订,公布了新版进行了修订,公布了新版 本的本的VHDLVHDL,即即IEEEIEEE标准的标准的1076-19931076-1993(11641164) 版本版本 19961996年,年,IEEE-
16、1076.3IEEE-1076.3成为成为VHDLVHDL综合标准综合标准15VHDL特点特点16EDA设计流程设计流程O一个完整的一个完整的EDAEDA设计流程既是自顶向下设计方法的具体实施途径,设计流程既是自顶向下设计方法的具体实施途径,也是也是EDAEDA工具软件本身的组成结构。工具软件本身的组成结构。17原理图原理图/HDL文本编辑文本编辑综合综合FPGA/CPLD适配适配FPGA/CPLD编程下载编程下载FPGA/CPLD器件和电路系统器件和电路系统时序与功能时序与功能门级仿真门级仿真1、功能仿真、功能仿真2、时序仿真、时序仿真逻辑综合器逻辑综合器结构综合器结构综合器1、JTAG方式
17、下载方式下载 2、针对、针对SRAM结构的配置结构的配置3、配置器件编程、配置器件编程 功能仿真功能仿真18HDL综合综合综合综合(Synthesis)将用将用行为和功能层次行为和功能层次表达的系统表达的系统转换成低层转换成低层次次的的便于具体实现便于具体实现的模块组合装配过程。的模块组合装配过程。自上而下自上而下从自然语言转换到从自然语言转换到Verilog HDL语言算法表述,即语言算法表述,即自自然语言综合然语言综合。从算法表述转换到寄存器传输级从算法表述转换到寄存器传输级(Register Transport Level,RTL)表述,即表述,即行为综合行为综合。从从RTL级表述转换到
18、逻辑门级表述转换到逻辑门(包括触发器包括触发器)的表述,即的表述,即逻辑综合逻辑综合。从逻辑门表示转换到版图级表述从逻辑门表示转换到版图级表述(ASIC设计设计),或转,或转换到换到FPGA的配置网表文件,即的配置网表文件,即版图综合版图综合或或结构综合结构综合。编译器和综合功能比较编译器和综合功能比较19C、ASM.程序程序CPUCPU指令指令/ /数据代码:数据代码:010010 100010 1100010010 100010 1100软件程序编译器软件程序编译器 COMPILERCOMPILER(a)软件语言设计目标流程)软件语言设计目标流程VHDL/Verilog程序程序 硬件描述语
19、言硬件描述语言 综合器综合器 SYNTHESIZERSYNTHESIZER为为ASICASIC设计提供的设计提供的 电路网表文件电路网表文件(b)硬件语言设计目标流程)硬件语言设计目标流程2020Verilog/VHDL程序程序工艺库工艺库约束约束图表图表HDL综合器综合器设计输入设计输入(原理图原理图/HDL文本编辑文本编辑)O1. 1. 图形输入图形输入21 图形输入图形输入 原理图输入原理图输入 状态图输入状态图输入 波形图输入波形图输入传统设计方式,由逻辑传统设计方式,由逻辑符号和连线构成。符号和连线构成。根据电路的控制条件和不同根据电路的控制条件和不同的转换方式绘制,由的转换方式绘制
20、,由EDA编译器和综合器将此状态变编译器和综合器将此状态变化流程图形编译综合成电路化流程图形编译综合成电路网表。网表。将待设计的电路看成是一个将待设计的电路看成是一个黑盒子,只需告诉黑盒子,只需告诉EDA工具工具该黑盒子电路的输入和输出该黑盒子电路的输入和输出时序图,时序图,EDA工具即能据此工具即能据此完成黑盒子电路的设计。完成黑盒子电路的设计。原理图输入方法的优点:原理图输入方法的优点:O不需要增加新的知识,如不需要增加新的知识,如HDLHDL;O与与PROTELPROTEL作图相似,形象直观,适用于初学作图相似,形象直观,适用于初学或教学演示;或教学演示;O对于较小的电路模型,其结构与实
21、际电路相对于较小的电路模型,其结构与实际电路相近,易于把握。近,易于把握。O接近底层电路布局,故易于控制逻辑资源,接近底层电路布局,故易于控制逻辑资源,节省面积。节省面积。 22原理图输入方法的缺点:原理图输入方法的缺点:没有标准化,兼容性差,难以交换和管理;没有标准化,兼容性差,难以交换和管理;随着电路设计规模的扩大,易读性变差、排错困难;随着电路设计规模的扩大,易读性变差、排错困难;因不兼容,故难以移植;因不兼容,故难以移植;在原理图中已确定了设计系统的基本电路结构和元件,在原理图中已确定了设计系统的基本电路结构和元件,留给综合器的优化选择的空间已十分有限,因此难以留给综合器的优化选择的空
22、间已十分有限,因此难以实现用户所希望的面积。实现用户所希望的面积。在设计中必须直接面对硬件模块的选用,因此行为模在设计中必须直接面对硬件模块的选用,因此行为模型的建立无从谈起,从而无法实现真实意义上的自顶型的建立无从谈起,从而无法实现真实意义上的自顶向下的设计方案。向下的设计方案。232. HDL文本输入文本输入O 这种方式与传统的计算机软件语言编辑输入基本一这种方式与传统的计算机软件语言编辑输入基本一致。就是将使用了某种硬件描述语言致。就是将使用了某种硬件描述语言(HDL)(HDL)的电路设的电路设计文本,如计文本,如VHDLVHDL或或VerilogVerilog的源程序,进行编辑输入。的
23、源程序,进行编辑输入。O可以说,应用可以说,应用HDLHDL的文本输入方法克服了上述原理图的文本输入方法克服了上述原理图输入法存在的所有弊端,为输入法存在的所有弊端,为EDAEDA技术的应用和发展打技术的应用和发展打开了一个广阔的天地开了一个广阔的天地2425VHDL的设计单元的设计单元 VHDL语言的基本结构:语言的基本结构: 实体实体(EntityEntity) 结构体结构体(ArchitectureArchitecture) 配置配置(ConfigurationConfiguration) 库库(LibraryLibrary)、)、程序包程序包(PackagePackage)26 库、程
24、序包库、程序包 实体(实体(Entity) 结构体结构体 (Architecture) 进程进程 或其它并行结构或其它并行结构 配置(配置(Configuration)27VHDL的设计单元的设计单元 Entity(实体)实体) 用来说明模型的外部输入和输出特征用来说明模型的外部输入和输出特征 Architecture(构造体)(构造体) 用来定义模型的内容和功能用来定义模型的内容和功能 特点:特点: 每一个构造体必须有一个实体与它相对应,每一个构造体必须有一个实体与它相对应,所以两者一般成对出现。所以两者一般成对出现。28Entity(实体)(实体) 类似一个类似一个“黑盒黑盒”,实体描述了
25、,实体描述了“黑盒黑盒”的输入输出口。的输入输出口。2930实体的语法实体的语法 ENTITY 实体名 IS Generic Declarations;(类属说明) Port Declarations;(端口说明) END 实体名; (1076-1987 version) END ENTITY 实体名 ; (1076-1993 version)879331Generic(类属说明)(类属说明) 类属说明语句:类属说明语句: 是从实体外部获得一些参数,以便改变此实是从实体外部获得一些参数,以便改变此实体的内部电路结构和规模(如数据线的位数、体的内部电路结构和规模(如数据线的位数、加法器的位数)加
26、法器的位数)32Generic(类属说明)(类属说明) 功能:功能: 实体端口大小(管脚数量);实体端口大小(管脚数量); 设计实体的物理特性设计实体的物理特性 (时钟信号延(时钟信号延迟,脉冲宽度);迟,脉冲宽度); 总线宽度;总线宽度; 元件例化的数量(拷贝数量)元件例化的数量(拷贝数量)33(端口说明)(端口说明) 端口说明语句:端口说明语句: 确定实体的输入、输出端口的数目和类型确定实体的输入、输出端口的数目和类型 类似于器件的管脚,主要用于信号的传输类似于器件的管脚,主要用于信号的传输。 ( 端口名称1,端口名称N:端口模式 数据类型; 端口名称2,端口名称M:端口模式 数据类型;
27、端口名称N,端口名称V:端口模式 数据类型 );34端口模式端口模式EntityO in: in: 输入型,此端口为只读型。输入型,此端口为只读型。O out: out: 输出型,只能在实体内输出型,只能在实体内部对其赋值。部对其赋值。 O inoutinout: :输入输出型,既可读也输入输出型,既可读也可赋值。可赋值。O buffer: buffer: 缓冲型,当需要输入缓冲型,当需要输入时,只允许内部回读输出信号。时,只允许内部回读输出信号。Entity36OUT与与BUFFER的区别的区别37二选一数据选择器二选一数据选择器 ENTITY mux21 IS PORT(A,B,S: IN
28、 BIT; Y: OUT BIT); END mux21;38练习一练习一my_designd11:0oeclkad11:0a11:0intas39my_designd11:0oeclkad11:0a11:0intas40Architecture(构造体)(构造体)41Input 1Input nOutput 1Output n构造体构造体42构造体的语法构造体的语法 注注:同一实体的结构体不能同名。定义语句中:同一实体的结构体不能同名。定义语句中 的常数、信号不能与实体中的端口同名。的常数、信号不能与实体中的端口同名。ArchitectureArchitecture 结构体名 ofof 实体
29、名 ISIS 说明语句;BeginBegin 并行处理(功能描述)语句;EndEnd architecture 结构体名;43说明语句和功能描述语句说明语句和功能描述语句 说明语句:说明语句: 对结构体中的数据类型、常数、信号、子程对结构体中的数据类型、常数、信号、子程序等元素的序等元素的说明说明部分。并不是必须的。部分。并不是必须的。 功能描述语句:功能描述语句: 是必须有的!是对实体功能的描述。以各种是必须有的!是对实体功能的描述。以各种不同的描述风格描述系统的逻辑功能实现的不同的描述风格描述系统的逻辑功能实现的部分。部分。4445实体与结构体的关系实体与结构体的关系 一个设计实体可有多个
30、结构体,代表实体的多一个设计实体可有多个结构体,代表实体的多种实现方式。各个结构体的地位相同。种实现方式。各个结构体的地位相同。设计实体结构体1结构体2结构体3结构体n。46Configuration(配置)(配置) 配置:配置: 把特定的结构体指定给一个确定的实体把特定的结构体指定给一个确定的实体ConfigrationConfigration 配置配置名名 ofof 实体名实体名 ISIS forfor 选选配配结构体名结构体名 end for end for End End 配置配置名名;47Library库库 、 Package程序包程序包 Package程序包:程序包: 方便公共信息
31、、资源的访问和共享,将已定方便公共信息、资源的访问和共享,将已定义的常数、数据类型、元件调用说明、子程义的常数、数据类型、元件调用说明、子程序放到一个集合,以供多个设计者使用。序放到一个集合,以供多个设计者使用。 Library库库 : 多个程序包可以构成库多个程序包可以构成库48Library库库 STD库库: 包含了两个程序包包含了两个程序包STANDARD和和TEXTIO; WORK库:库: 是用户的现行工作库是用户的现行工作库 VITAL库:库: 包括预定义的时序程序包和基本元件程序包,可以包括预定义的时序程序包和基本元件程序包,可以提高提高VHDL门极时序模拟的精度。门极时序模拟的精
32、度。49Library库库 IEEE库:库: 最常见的库,包含有最常见的库,包含有IEEE标准的程序包和标准的程序包和其他一些支持工业标准的程序包。其他一些支持工业标准的程序包。 主要包括主要包括STD_LOGIC_1164、NUMERIC_BIT、NUMERIC_STD等程序包。等程序包。 非非IEEE标准如标准如STD_LOGIC_ARITH等程序包等程序包50Package程序包程序包USE 库名.程序包名.项目名;USE 库名.程序包名.ALL;LIBRARY 库名; LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL;51程序包:程序包:STANDAR
33、D 定义了若干类型、子类型和函数。定义了若干类型、子类型和函数。 在所有设计单元的开头,已经隐含了在所有设计单元的开头,已经隐含了LIBRARY子句和子句和USE子句;子句; LIBRARY WORK,STD; USE STD.STANDARD.ALL;52程序包:程序包:STD_LOGIC_1164 该程序包所定义的数据类型有:该程序包所定义的数据类型有: Std_ulogic;Std_ULogic_Vector; Std_Logic;Std_Logic_Vector; 特点:特点: 不能直接访问,必须加下面的语句:不能直接访问,必须加下面的语句: LIBRARY IEEE; USE IEE
34、E.STD_LOGIC_1164.ALL;53 库、程序包库、程序包 实体(实体(Entity) 结构体结构体 (Architecture) 进程进程 或其它并行结构或其它并行结构 配置(配置(Configuration)54基本语句基本语句简单信号赋值语句:简单信号赋值语句:赋值目标赋值目标=表达式;表达式;变量的赋值:变量的赋值:是一种理想化的数据传输,是瞬时的,是一种理想化的数据传输,是瞬时的,不存在延时行为不存在延时行为:目标变量名目标变量名 :=表达式;表达式;55二选一数据选择器的结构二选一数据选择器的结构de56 ENTITY mux21 IS PORT(a,b,s:IN BIT
35、; y:OUT BIT); END mux21; ARCHITECTURE one OF mux21 IS SIGNAL d, e:BIT; BEGIN d = a AND(NOT s); e = b AND s; y = d OR e; END ARCHITECTURE one;结构体结构体5758596061626364VHDL基本标识符的书写规则:基本标识符的书写规则:(1) 必须必须以英文字母开头;以英文字母开头;(2) 字符可以是大写、小写的英文字母或数字,以及下划线;字符可以是大写、小写的英文字母或数字,以及下划线;(3) 下划线前后必须有英文字母和数字;下划线前后必须有英文字母和
36、数字;(4) 标识符中的英文字母标识符中的英文字母不区分大小写不区分大小写。VHDL的保留字有:的保留字有: ENTITY 、ARCHITECTURE、END、BUS、USE、WHEN、WAIT、IS。书写时要求大写或黑体,使得程序易于阅读,易。书写时要求大写或黑体,使得程序易于阅读,易于检错。于检错。注意保持良好编程风格。注意保持良好编程风格。自己定义的标识符用小写。自己定义的标识符用小写。标识符标识符65Std_Logic数据类型数据类型66VHDL语言都是并发的吗?ARCHITECTUREEND ARCHITECTURE进程语句进程语句顺序顺序语句语句1顺序顺序语句语句2顺序顺序语句语句
37、n并行并行语句赋值语句语句赋值语句并行并行过程调用语句过程调用语句元件例化语句元件例化语句进程语句进程语句并并发发语语句句并并发发语语句句并并发发语语句句VHDL语言有顺序语句,但只能在进程或者子程序里67VHDL设计初步设计初步VHDL语言的基本语句语言的基本语句68基本语句基本语句 条件条件信号信号赋值语句:赋值语句:条件条件信号信号赋值语句的格式为赋值语句的格式为(可以不在进程里使用!可以不在进程里使用!) 目标信号目标信号 = 表达式表达式1 WHEN 条件条件1 ELSE 表达式表达式2 WHEN 条件条件2 ELSE 表达式表达式n; 69 ENTITY mux21 IS PORT
38、(a,b,s:IN BIT; y: OUT BIT); END mux21; ARCHITECTURE one OF mux21 IS y = a WHEN s=0 ELSE b; END ARCHITECTURE one;二选一数据选择器二选一数据选择器70 71条件信号赋值语句条件信号赋值语句目标信号目标信号 = 表达式表达式1 WHEN 条件条件1 ELSE 表达式表达式2 WHEN 条件条件2 ELSE 表达式表达式n WHEN OTHERS; 条件信号赋值语句的格式为:条件必须覆盖所有可能情况,若不能一条件必须覆盖所有可能情况,若不能一一列举,必须用一列举,必须用OTHERSOTHE
39、RS!各赋值语句是有各赋值语句是有优先级优先级的差的差别,按书写顺序从高到低别,按书写顺序从高到低排列,排列,赋值条件可以重叠赋值条件可以重叠!72基本语句基本语句 进程(进程(Process)语句:)语句: 进程语句本身是并行语句,但是进程语句内进程语句本身是并行语句,但是进程语句内部是由顺序语句组成的。部是由顺序语句组成的。标记:标记: process ( 敏感信号表敏感信号表)IS 进程说明项进程说明项 begin 顺序描述语句顺序描述语句 end process 标记标记;73VHDL语言都是并发的吗?ARCHITECTUREEND ARCHITECTURE进程语句进程语句顺序顺序语句
40、语句1顺序顺序语句语句2顺序顺序语句语句n并行并行语句赋值语句语句赋值语句并行并行过程调用语句过程调用语句元件例化语句元件例化语句进程语句进程语句并并发发语语句句并并发发语语句句并并发发语语句句VHDL语言有顺序语句,但只能在进程或者子程序里74进程(进程(Process)语句)语句 敏感信号表:敏感信号表: 进程内要读取的所有敏感信号(包括端进程内要读取的所有敏感信号(包括端口)的列表。每一个敏感信号的变化,口)的列表。每一个敏感信号的变化,都将启动进程。都将启动进程。 敏感信号表中必须是敏感信号表中必须是信号信号,而不能是,而不能是变量变量。 Process75进程语句进程语句76进程语句的特点进程语句的特点 进程内部是进程内部是顺序顺序语句语句77进程(进程(Process)语句)语句 进程的说明部分:进程的说明部分: 主要定义些局部量,可以包括数据类型、常主要定义些局部量,可以包括数据类型、常数、数、变量变量、属性、子程序等。、属性、子程序等。 在进程的说明部分在进程的说明部分不允许定义信号不允许定义信号和共享变和共享
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 合同视角下的产品经销三方合作
- 工业园区食堂劳务合同标准版
- 梧州市长洲区政府绿化工程委托合同
- 隐名投资利益分配合同
- 代理社保业务合同合作协议2025
- 代理合作协议合同模板
- 搪瓷企业设备更新与技术改造考核试卷
- 旅游客运突发事件应急预案考核试卷
- 政策性银行服务农村电商与精准扶贫考核试卷
- 后勤服务中的客户关系管理测试考核试卷
- 借哪吒精神燃开学斗志 开学主题班会课件
- GB/T 45107-2024表土剥离及其再利用技术要求
- 一年级家长会课件2024-2025学年
- 2024年海南省海口市小升初数学试卷(含答案)
- 《中医药健康知识讲座》课件
- 7S管理标准目视化管理标准
- 幼儿园安全教育课件:《危险的小圆珠》
- 广东省五年一贯制语文试卷
- 过桥资金(新)
- 颅内压监测的方法与护理ppt课件
- 房地产项目盈亏平衡分析
评论
0/150
提交评论