- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
2.1 VHDL概述 VDHL(VHSIC Hardware Descrirition Language)是一种用形式化方法来描述数字电路和系统的语言,用于数字电子系统设计。该语言允许设计者进行各种级别的逻辑设计,进行数字逻辑系统的仿真验证、时序分析、逻辑综合。它是目前应用最为广泛的一种硬件描述语言。 3、配置 一般情况下,设计实体中的实体说明和结构体之间的关系是一一对应的。但是在某些特殊情况下,一个实体说明可以对应多个结构体。因此,设计人员在设计过程中常常只设计一个实体说明和两个结构体,然后通过配置对实体说明配置不同的结构体,减少重复VHDL程序的书写。 4、程序包 通常情况下,VHDL标准中的程序包包含两个部分:程序包说 明部分和程序包包体部分。程序包说明部分的书写格式为: PACKAGE 程序包名 IS [数据类型说明]; [子程序说明]; [常量说明]; [元件说明]; [文件说明]; [别名说明]; [属性说明]; [属性指定]; END [PACKAGE] [ 程序包名 ]; 程序包包体部分的书写格式为: PACKAGE BODY 程序包名 IS [外部子程序体]; [内部子程序说明]; [内部子程序体]; [内部常数说明]; [内部数据类型说明]; END [PACKAGE BODY] [ 程序包名 ]; 2.3 VHDL中的数据 VHDL的数据包括标识符、数据对象和一些基本的结构语句。 2.3.1)标识符 标识符包括短标识符和扩展标识符 2.3.2)数据对象 在VHDL中,通常把用来保存数据的单元称为对象,有的书中称之为客体。VHDL的数据对象包括4类:常量(CONSTANT)、变量(VARIABLE)、信号(SIGNAL)及文件(FILE) 2.3.3)数据类型 VHDL是一种强类型语言,常用的数据类型如下: (1)整数; (2)实数 实数类型也称浮点数类型,规定的浮点数范围-1.0E38~+1.0E38.需要注意的是,在进行实数书写时一定要有小数点。 (3)BIT和BIT_VECTOR; (4)布尔量 布尔量是一个二值枚举类型,每一个布尔量具有两种状态,即“true”和“false”,初始值为“false”。 (5)STD_LOGIC和STD_LOGIC_VECTOR; (6)字符和字符串; (7)物理类型; (8)错误等级; (9)自然数 2.4 VHDL中的表达式 VHDL中有4种运算符,它们分别是逻辑运算符、算术运算符、关系运算符和并置运算符。在使用运算符的过程中,要保证操作数的数据类型和运算符所要求的数据类型相一致,此外,还要注意运算优先级问题,否则将会出现错误。 2.4.1 逻辑运算 VHDL中共有7种逻辑运算,它们是: NOT — 逻辑非 AND — 逻辑与 NAND — 逻辑与非 OR — 逻辑或 NOR — 或非 XOR — 异或 XNOR — 异或非 2.4.2 算数运算 在 VHDL 中,算术运算符主要包括16种,其中只有+(加)-(减)和*(乘)能够被EDA开发工具综合为对应的逻辑电路,而其余的算数运算综合成逻辑电路将会很困难,甚至是完全不可能的。VHDL中的16种运算运算符如下所示: + — 加; - — 减; * — 乘; / — 除; MOD — 取模; REM — 取余; ** — 乘方; ABS — 取绝对值; + — 正号; - — 负号; SLL — 逻辑左移; SRL — 逻辑右移; SLA — 算数左移; SRA — 算数右移; ROL — 逻辑循环左移; ROR — 逻辑循环右移; 2.4.3 关系运算符 关系运算符是两个对象在比较时,将两个操作数比较的结果表示出来所使用的符号,如下所示: = — 相等 /= — 不等于 — 小于 — 大于 = — 小于等于 = — 大于等于 2.4.4 并置运算 并置运算符“”用于位的连接。并置运算的规则如下: (1)并置运算可用于位的连接,形成位适量; (2)并置运算可用矢量的连接,形成新的矢量,例如,一个4位矢量和一个4位的矢量并置运算后,可以构成8位矢量。 (3)并置运算可用位和矢量的连接,形成新的矢量,例如,一位和一个4位的矢量并置运算后,可以构成5位矢量。 2.5 VHDL 描述语句 按照VHDL程序语句的执行
原创力文档


文档评论(0)