VHDL的基本语法.ppt_第1页
VHDL的基本语法.ppt_第2页
VHDL的基本语法.ppt_第3页
VHDL的基本语法.ppt_第4页
VHDL的基本语法.ppt_第5页
已阅读5页,还剩122页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、一、1、VHDL培训课程,欢迎参加VHDL培训,一、2、VHDL培训课程,第1讲,VHDL介绍及其结构2、VHDL对象、运算符和数据类型3、VHDL控制语句和模块4、状态机设计,第1讲,VHDL介绍及其结构,通过本课的学习,可以了解以下几点:1。VHDL的基本概念;2.VHDL的基本结构;3.VHDL的初步设计;a,4。VHSIC硬件描述语言。VHSIC超高速集成电路电子设计自动化的关键技术之一是用形式化方法描述硬件系统。VHDL符合这一要求。什么是VHDL,a5,VHDL和Verilog HDL,Verilog HDL:另一种硬件描述语言,由Verilog公司开发,于1995年成为IEEE标

2、准。优点:简单、易学、易用缺点:功能不如VHDL强大,仿真工具也很少。VHDL在1987年成为IEEE标准。优点:功能强大,通用性强。缺点:难学。a6 VHDL的发展历史起源于20世纪80年代。两个标准, 1,1987年的IEEE 1076(VHDL87) 2和1993年的修订(VHDL 93)是由美国国防部开发的。A、7、VHDL在电子系统设计中的应用,电子系统的设计模块,A、8电子系统设计描述层次1、行为层次2、RTL(寄存器传输层次)3、逻辑门层次4和布局层次可以用VHDL来描述。A,9,电子系统设计中的VHDL应用,系统设计描述级-制版级,A,10,电子系统设计中的VHDL应用,系统设

3、计描述级-逻辑门级,A,11,电子系统设计中的VHDL应用,系统设计描述级-RTL级,A,12,电子系统设计中的VHDL应用,系统设计描述级-行为级,A,13,如何用VHDL描述硬件实体,A,14,A,14,IEEE库;使用IEEE . STD _ logic _ 1164 . all;使用IEEE . STD _ logic _ unsigned . all;实体计数是端口(时钟,STD_LOGIC中的reset:data out : out STD _ LOGIC _ VECTOR(3 down to 0);结束计数;计数的结构行为是信号数据缓冲器: STD_LOGIC_VECTOR (3

4、下降到0);begin dataout=databuffer如果(reset=1)那么databuffer=0000,则开始处理(时钟,复位);elsif(clock vent和clock=1 ),则如果databuffer=1000,则databuffer=0000else data buffer=data buffer 1;结束if;结束if;结束过程;结束行为;A,15,VHDL结构点,1。实体格式:实体实体名称是通用参数描述端口描述相关性;port描述的格式是:PORT(端口名称1,端口名称n:方向:类型),其中方向是33,360 in,out,inout,buffer,link,a,

5、16,VHDL结构点,注意简单地说,in不能出现在=或:=的左边,out不能出现在=或:=的右边。缓冲区可以出现在=或:=的两侧。In信号只能被引用,但不能被赋值。out信号只能被分配,不能被引用。缓冲信号可以被引用或分配,a17,VHDL结构的关键点,例如(半添加),其内部结构将由体系结构描述,a18,VHDL结构的关键点,2。Arcdepth结构格式:Arcdepth结构名称实体名称是定义内部信号、常数、组件、数据类型、函数等的定义。语句开始并行处理语句和块,过程,函数,过程结束,A,19,VHDL关键点,半加,A,20,VHDL关键点,fullad(学习如何调用现有模块),A,21,VH

6、DL关键点,fullad-entity,A,22,VHDL关键点,fullad除了实体和体系结构,还有三个其他设计单元在VHDL中打包,它们属于一个库结构级别,并存储信号定义,常量定义,数据类型,组件语句,函数定义和过程定义。包主体有一个独立的端口包配置来描述层之间的连接关系以及实体和构造器之间的关系。,a,25,设计单元在VHDL中,设计单元在VHDL中(可以独立编译),a,26,概念库,标准库-VHDL标准库IEEE库-VHDL标准库扩展面向ASIC的库-不同的进程,不同的公司定义的库,普通用户自己的库,库:数据的集合。它包含各种包定义、实体、构造等。a27、a27、图书馆和用户自己的图书

7、馆的概念。编译您的VHDL文件时,编译结果存储在一个特定的目录中,该目录的逻辑名称是库,并且该目录中的内容也是该库的内容。A,28,包的概念,包中的结构关系,A,29,VHDL,结构关系,A,30,VHDL介绍及其结构,本课结束了下一课关于对象,运算符和数据类型的: VHDL,A,31,第二课,VHDL对象,运算符和数据类型。通过本课的学习,你可以知道以下几点:1。VHDL的基本类型;2.如何用VHDL语言定义类型;4.如何用VHDL语言给信号赋值;5.VHDL中的操作符,a32,VHDL对象,操作符,数据类型,对象对象对目标实体的抽象和汇总。常量(常量)不能在程序中赋值;2.变量(Varia

8、ble)可以在程序中赋值(用 :=),赋值后会立即变成一个新值。3.可以在程序中分配信号(使用“=”),但不会立即更新。当进程暂停时,更新开始。A,33,VHDL对象,运算符,数据类型,VHDL中的对象使用:变量x,y:整数;-可变对象x,y常数Vcc:实数;定义了整数类型的;-定义实常数对象信号Vcc clk,复位:位;-使用定义了位类型的信号对象clk、reset、a、34和VHDL。注意1。变量只能在过程和子程序(包括函数和过程)中定义,不能在子程序之外定义。2.信号不能在过程和子程序(包括函数和过程)中定义,只能在它之外设置。A,35,VHDL对象,运算符,数据类型,对象的属性类似于其

9、他面向对象的编程语言,如VB,VC,DELPHI。用法格式:对象属性示例:clkevent -指示信号clk的事件属性。信号对象的常见属性是:事件:返回布尔值。当信号改变时返回真的last_value:返回信号改变前的值last_event:返回从最后一次信号改变到当前改变的间隔时间,A,36,VHDL对象,运算符,数据类型。信号对象的常见属性是:延迟(延迟值):在上一页使信号具有固定的时间延迟并返回稳定(延迟值):返回布尔值,信号在指定时间内不变,返回真事务3360返回位类型,返回值每隔一次反转一次例如:a=b延迟(10ns);-延迟10秒后,乙被分配给甲;if(BStable(10 ns)

10、;-判断信号的10ns、a、37、VHDL对象、运算符、数据类型、事件和last_value属性中的b变化是否经常用于确定信号的边沿,属性应用,例如,判断上升沿if(clk vent)和(clk=1)和(clklast _ value=0)然后判断下降沿if(clk vent)和(clklast _ value=1)然后,a,38、VHDL基本类型,1。位:0和1 2。位向量:例如:00110 3。布尔“真”和“假”4。时间:1 us,100 ms,3 s 5,字符例如:a,n,1,0 6,字符串例如:“sdfsd”,“my design”7,整数32位例如:1,234,-2134234 8,

11、实数范围-1.0E38 1.0E38例如:1.0,2.834,3.14,0 VHDL的基本类型,9。自然自然数和正整数,10。安全级别(通常与断言语句一起使用)包括:注意、警告、错误和失败,它们是VHDL中的标准类型,可以直接在编程中使用。为了使用这十种类型,有必要定义或指出所引用的库和包集、A、40和VHDL的基本类型、示例1中的A、41和VHDL的基本类型和分配、示例2中的A、42和VHDL的基本类型和分配以及示例3中的VHDL的基本类型和分配,其中信号Z具有两个驱动器A和B;必须将Z定义为新的数据类型,否则Z将无法决定该值,并且该语句将被视为非法。a43,VHDL基本类型和赋值,例4,a

12、44,VHDL基本类型和赋值,例5,要点:赋值语句中的方向应与语句中的方向相同,a45,VHDL基本类型和赋值,连接运算符-使用示例类型Weekis (sun,mon,tue,thu,fri)类型std_logic为(1,0,x,z);A,51,用VHDL定义自己的类型,整型类整型和实型类实型格式数据类型名称是定义约束范围的数据类型;示例类型“周”是1到7之间的整数;类型current是实数范围-1e4to1e4,a,52,用VHDL定义自己的类型,数组类型数组格式类型数据类型名称是数组范围的元数据类型名称示例类型周是数组(1到7)的整数;deweek类型是周数组(1到7 );A,53,用VH

13、DL定义自己的类型,时间类型时间格式类型数据类型名称是范围单位基本单位;单位;结束单位,A,54,用VHDL定义它自己的类型,时间类型的例子是类型时间范围是-1e18到1e18单位us;ms=1000 ussec=1000 msmin=60秒;结束单位,注意:当提到时间时,一些编译器要求数量和单位之间有一个空格,例如:1 ns;它不能写成1ns;A,55,用VHDL定义自己的类型,记录类型记录格式类型数据类型名称是记录元素名称:数据类型名称;元素名称:数据类型名称;结束记录;A,56,用VHDL定义自己的类型,记录类型的一个例子是记录id :整数;date:stringsecurity:boo

14、lean布尔值。结束记录;引用:signal标志:布尔值。信号顺序1:顺序;order1=(3423,“1999/07/07”,真);flag=order 1 . security;A,57,IEEE 1164,std_ulogic是位类型的扩展,只允许一个驱动源,在A,58,IEEE 1164,Std_logic中定义的类型有9种状态,如std_ulogic,允许一个或多个驱动源,在A,59,IEEE 1164,在STD _ illogic _ vector和std_logic_vector中定义的类型,A,60,IEEE 1164,STD _ illogic,STD _ ulogic _ vector STD _ logic _ vector和使用IEEE . STD _ l

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论