vhdl语言入门教程

上传人:小** 文档编号:58923130 上传时间:2018-11-02 格式:PPT 页数:112 大小:2.10MB
返回 下载 相关 举报
vhdl语言入门教程_第1页
第1页 / 共112页
vhdl语言入门教程_第2页
第2页 / 共112页
vhdl语言入门教程_第3页
第3页 / 共112页
vhdl语言入门教程_第4页
第4页 / 共112页
vhdl语言入门教程_第5页
第5页 / 共112页
点击查看更多>>
资源描述

《vhdl语言入门教程》由会员分享,可在线阅读,更多相关《vhdl语言入门教程(112页珍藏版)》请在金锄头文库上搜索。

1、3 VHDL语言,VHDL: VHSIC Hardware Description Language.,3.1 VHDL语言基础 3.2 VHDL基本结构 3.3 VHDL语句 3.4 状态机在VHDL中的实现 3.5 常用电路VHDL程序 3.6 VHDL仿真 3.7 VHDL综合,HDL-Hardware Description Language一种用于描述数字电路的功能或行为的语言。目的是提为电路设计效率,缩短设计周期,减小设计成本,可在芯片制造前进行有效的仿真和错误检测。,优点: HDL设计的电路能获得非常抽象级的描述。如基于RTL(Register Transfer Level)描述

2、的IC,可用于不同的工艺。 HDL设计的电路,在设计的前期,就可以完成电路的功能级的验证。 HDL设计的电路类似于计算机编程。,常用的HDL语言:VHDL 、Verilog HDL,VHDL是美国国防部在20世纪80年代初为实现其高速集成电路硬件VHSIC计划提出的描述语言;IEEE从1986年开始致力于VHDL标准化工作,融合了其它ASIC芯片制造商开发的硬件描述语言的优点,于93年形成了标准版本(IEEE.std_1164)。1995年,我国国家技术监督局推荐VHDL做为电子设计自动化硬件描述语言的国家标准。,VHDL 概述:,覆盖面广,系统硬件描述能力强,是一个多层次的硬件描述语言;VH

3、DL语言具有良好的可读性,既可以被计算机接受,也容易被人们所理解;VHDL语言可以与工艺无关编程;VHDL语言已做为一种IEEE的工业标准,便于使用、交流和推广。,VHDL优点:,设计的最终实现取决于针对目标器件的编程器,工具的不同会导致综合质量不一样。,3.1.1 标识符(Identifiers),要求:首字符必须是字母末字符不能为下划线不允许出现两个连续的下划线不区分大小写VHDL定义的保留字(关键字),不能用作标识符标识符字符最长可以是32个字符。,注释由两个连续的虚线()引导。,3.1 VHDL语言基础,标识符用来定义常数、变量、信号、端口、子程序或参数的名字, 由字母(AZ,az)、

4、数字(09)和下划线(_)字符组成。,例如:ABS, ACCESS,AFTER,ALL,AND,ARCHITECTURE,ARRAY,ATTRIBUTE,BEGIN,BODY,BUFFER,BUS,CASE ,COMPONENT,CONSTANT,DISCONNECT,DOWNTO,ELSE,ELSIF,END,ENTITY,EXIT,FILE,FOR,FUNCTION,GENERIC,GROUP,IF,INPURE,IN,INOUT,IS,LABEL,LIBRARY,LINKAGE,LOOP,MAP,MOD,NAND,NEW,NEXT,NOR ,NOT,NULL,OF,ON,OPEN ,OR

5、 ,OTHERS,OUT,PACKAGE,POUT,PROCEDURE ,PROCESS,PURE,RANGE ,RECODE,REM,REPORT,RETURN,ROL,ROR,SELECT,SHARED,SIGNAL,SLA,SLL,SRA,SUBTYPE,THEN,TRANSPORT,TO,TYPE ,UNAFFECTED,UNITS,UNTIL,USE,VARIABLE,WAIT,WHEN,WHILE,WITH,XOR ,XNOR,关键字(保留字):,关键字(keyword)是VHDL中具有特别含义的单词,只能做为固定的用途,用户不能用其做为标识符。,3.1.2 数据对象(Date O

6、bjects),常量Constant,Constant bus_width: integer := 8; -定义总线宽度为常数8,数据对象包括常量、变量、信号和文件四种类型。,常量是对某一常量名赋予一个固定的值,而且只能赋值一次。通常赋值在程序开始前进行,该值的数据类型则在说明语句中指明。,Constant 常数名:数据类型:表达式,Constant Vcc:real:=5.0; -定义Vcc的数据类型是实数,赋值为5.0V,常量所赋的值应和定义的数据类型一致;,常量在程序包、实体、构造体或进程的说明性区域内必须加以说明。定义在程序包内的常量可供所含的任何实体、构造体所引用,定义在实体说明内的

7、常量只能在该实体内可见,定义在进程说明性区域中的常量只能在该进程内可见。,Variable 变量名:数据类型 :初始值;,Variable count: integer 0 to 255:=20 ; - 定义count整数变量,变化 范围0255,初始值为20。,变量Variable,变量只能在进程语句、函数语句和过程语句结构中使用。变量的赋值是直接的,非预设的,分配给变量的值立即成为当前值,变量不能表达“连线”或存储元件,不能设置传输延迟量。,变量赋值语句:目标变量名 := 表达式;,变量定义语句:,x:=10.0; - 实数变量赋值为10.0 Y:=1.5+x; - 运算表达式赋值,注意表

8、达式必须与目标变量的数据类型相同 A(3 to 6):=(“1101”); -位矢量赋值,Signal 信号名: 数据类型 :初始值,Signal clock:bit :=; -定义时钟信号类型,初始值为0,信号Signal,信号表示逻辑门的输入或输出,类似于连接线,也可以表达存储元件的状态。信号通常在构造体、程序包和实体中说明。,信号定义语句:,Signal count:BIT_VECTOR(3 DOWNTO 0); -定义count为4位位矢量,信号赋值语句:目标信号名 = 表达式;,x=9; Z0, 1|H=1, others=0); Signal a: bit; signal b: s

9、td_logic; A=table(b); - 将std_logic型转换为bit型,具有转换表性质的常数,在“STD_LOGIC_1164”、“STD_LOGIC_ARITH”和 “STD_LOGIC_UNSIGNED”的程序包中提供的数据类型变换函数。,属性,属性提供的是关于信号、类型等的指定特性。,event:若属性对象有事件发生,则生成布尔值“true”,常用来检查时钟边沿是否有效。,上升沿:Clock EVENT AND Clock=1,range:生成一个限制性数组对象的范围,left:生成数据类型或数据子类型的左边界值;,right , high, low, length,range: “0 to n” ; reverse_range:“n downto 0”,

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 商业/管理/HR > 管理学资料

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号