实例介绍
VHDL语言的简化教程pdf,通过文档可以全面了解VHDL的语法。
VHDL概述: ●●●● ⅤHDL→Ⅴ HSIC Hardwarter Description Language ⅤHSIC→Ⅴ ery High speed integrated circuit VHDL是美国国防部在20世纪80年代初为实现其高速集成电路 硬件ⅤHSIC计划提出的描述语言; IEEE从1986年开始致力于ⅤHD标准化工作,融合了其它 ASIC芯片制造商开发的硬件描述语言的优点,于93年形成了标 准版本( IEEE std1164)。 1995年,我国国家技术监督局推荐ⅤHDL做为电子设计自动化 硬件描述语言的国家标准。 ●●●● VHDL优点 ●●0 覆盖面广,系统硬件描述能力强,是一个多层次的硬件描述语言; VHDL语言具有良好的可读性,既可以被计算机接受,也容易被人们 所理解; ⅤHDL语言可以与工艺无关编程; VHDL语言已做为一种IEEE的工业标准,便于使用、交流和推广。 VHDL语言的不足之处 设计的最终实现取决于针对目标器件的编程器,工具的不同会导致综 合质量不一样 31VHDL语言基础 ●●●● 3.1.1标识符( Identifiers) ●●0 标识符用来定义常数、变量、信号、端口、子程序或参数的名字, 由字母(A~z,a-z)、数字(0-9)和下划线()字符组成。 要求: ●首字符必须是字母 未字符不能为下划线 ●不允许出现两个连续的下划线 不区分大小写 ●ⅥHDL定义的保留字(关键字),不能用作标识符 ●标识符字符最长可以是32个字符。 注释由两个连续的虚线(--)引导 关键字(保留字) ●●●● 关键字( keyword)是VHDL中具有特别含义的单词,只 ●●0 能做为固定的用途,用户不能用其做为标识符。 BJ]0: 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 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 3.1.2数据对象( Date Objects) ●●●● 数据对象包括常量、变量、信号和文件四种类型。 常量 Constant 常量是对某一常量名赋予一个固定的值,而且只能赋值一次。通常赋 值在程序开始前进行,该值的数据类型则在说明语句中指明。 Constant常数名:数据类型:=表达式 Constant vcc:real:=5.0;-定义vcc的数据类型是实数,赋值为5.0V Constant bus width: integer:=8;-定义总线宽度为常数8 常量所赋的值应和定义的数据类型一致; 常量在程序包、实体、构造体或进程的说明性区域內必须加以说明。定义在程序包 内的常量可供所含的任何实体、构造体所引用,定义在实体说明内的常量只能在该 实体内可见,定义在进程说明性区域中的常量只能在该进程内可见。 变量 ariable ●●●● 变量只能在进程语句、函数语句和过程语句结构中使用。变 量的赋值是直接的,非预设的,分配给变量的值立即成为当前 值,变量不能表达“连线”或存储元件,不能设置传输延迟量。 变量定义语句 Variable变量名:数据类型:=初始值; Variable count: integer0to255:=20;-定义counηt整数变量,变化 范围0255,初始值为20。 变量赋值语句: 目标变量名:=表达式; x:=10.0;-实数变量赋值为10.0 Y:=1.5+x;-运算表达式赋值,注意表达式必须与目标变量的数据类型相同 A(3to6):=(“1101”);-位矢量赋值 信号 Signa 信号表示逻辑门的输入或输出,类似于连接线,也可以表达存/ 储元件的状态。信号通常在构造体、程序包和实体中说明。 信号定义语句 Signa信号名:数据类型:=初始值 Signal clock:bit:=‘0’;-定义时钟信号类型,初始值为0 Signa| count: BIT VECTOR(3 DOWNTO0);-定义 count为4位位矢量 信号赋值语句: 目标信号名<=表达式; x<=9 z<= x after5ns;-在5ns后将x的值赋予z 312数据类型 ●●●● VHDL的预定义数据类型 ●●0 在VHDL标准程序包 STANDARD中定义好,实际使用过程中,已 自动包含进vHDL源文件中,不需要通过USE语句显式调用。 ●布尔:( Boolean) TYPE BOOLEAN IS( FALSE,TRUE);-取值为 FALSE和TRUE,不是数值,不 能运算,一般用于关系运算符 ●位:(Bit TYPE BIT IS(0,1);-取值为0和1,用于逻辑运算 ●位矢量:( Bit vector) TYPE BIT VECTOR| S ARRAY( Natural range<)OFBT;-基于Bit类型的数 组,用于逻辑运算 SIGNAL a: Bit vector(0 To 7); SIGNAL a: Bit Vector(7 DOWNTo 0) 【实例截图】
【核心代码】
标签:
小贴士
感谢您为本站写下的评论,您的评论对其它用户来说具有重要的参考价值,所以请认真填写。
- 类似“顶”、“沙发”之类没有营养的文字,对勤劳贡献的楼主来说是令人沮丧的反馈信息。
- 相信您也不想看到一排文字/表情墙,所以请不要反馈意义不大的重复字符,也请尽量不要纯表情的回复。
- 提问之前请再仔细看一遍楼主的说明,或许是您遗漏了。
- 请勿到处挖坑绊人、招贴广告。既占空间让人厌烦,又没人会搭理,于人于己都无利。
关于好例子网
本站旨在为广大IT学习爱好者提供一个非营利性互相学习交流分享平台。本站所有资源都可以被免费获取学习研究。本站资源来自网友分享,对搜索内容的合法性不具有预见性、识别性、控制性,仅供学习研究,请务必在下载后24小时内给予删除,不得用于其他任何用途,否则后果自负。基于互联网的特殊性,平台无法对用户传输的作品、信息、内容的权属或合法性、安全性、合规性、真实性、科学性、完整权、有效性等进行实质审查;无论平台是否已进行审查,用户均应自行承担因其传输的作品、信息、内容而可能或已经产生的侵权或权属纠纷等法律责任。本站所有资源不代表本站的观点或立场,基于网友分享,根据中国法律《信息网络传播权保护条例》第二十二与二十三条之规定,若资源存在侵权或相关问题请联系本站客服人员,点此联系我们。关于更多版权及免责申明参见 版权及免责申明
网友评论
我要评论