- 1、本文档共13页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
《vhdl教案
3.3VHDL的基本知识
1.关键字(保留字)
VHDL要求使用者必须遵守定义了关键字(keyword)和语法(syntax)的一整套规则。“关键字”是VHDL中具有特别含义的单词,只能做为固定的用途,用户不能用其做为标识符。
常用的VHDL关键字按字母排列顺序的清单如下:
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
这些关键字的含义将在本章及后面的章节中讨论。
2.标识符
标识符(Identifiers)用来定义常数、变量、信号、端口、子程序或参数的名字。
VHDL的标识符由英文字母(A~Z,a~z)、数字(0~9)和下划线字符(_)组成,这些标识符必须遵守以下规则:
1.标识符的第一个字符必须是英文字母。
2.标识符不区分大小写。
3.下划线字符不可用于标识符的最后一个字符。
4.标识符不允许连续出现两个下划线字符。
5.VHDL的关键字不能用作标识符使用。
6.标识符字符最长可以是32个字符。
3.数据对象
VHDL的数据对象(Date Objects)包括常量、变量、信号和文件四种类型。
(1).常量
常量(Constants)是对某一常量名赋予一个固定的值,而且只能赋值一次。通常赋值在程序开始前进行,该值的数据类型则在说明语句中指明。
常量说明的一般格式为:
CONSTANT 常量名:数据类型 [:=设置值];
例如:
CONSTANT Vcc:REAL:=5.0; --定义Vcc的数据类型是实数,赋值为5.0V
CONSTANT bus_width:INTEGER:=8;--定义bus_width被赋值为8的整数
常量一旦被赋值就不能再改变,如上例中Vcc被赋值为5.0V,则在该设计电路的VHDL语言程序中Vcc的值就固定为5.0V。另外常量所赋的值应和定义的数据类型一致。
常量在程序包、实体、构造体或进程的说明性区域内必须加以说明。定义在程序包内的常量可供所含的任何实体、构造体所引用,定义在实体说明内的常量只能在该实体内可见,定义在进程说明性区域中的常量只能在该进程内可见。
(2).变量
变量(Variables)只能在进程语句、函数语句和过程语句结构中使用。变量的赋值是直接的,非预设的,分配给变量的值立即成为当前值,变量不能表达“连线”或存储元件。
变量说明的格式为:
VARIABLE 变量名:数据类型 [:=设置值];
例如:VARIABLE x,y:INTEGER;-- 定义x,y变量数据类型是整数
VARIABLE address:INTEGER RANGE 0 TO 255:=10;
--定义address整数变量,变化范围是0~255
(3).信号
信号(Signals)表示逻辑门的输入或输出,也可以表达存储元件的状态。信号通常在构造体、程序包和实体中说明。
信号说明的格式为:
SIGNAL 信号名:数据类型 [:=设置值];
例如:SIGNAL clk:BIT :=’0’;
您可能关注的文档
- 《TCL彩电高清彩电维修实例.doc
- 《一级建造师项目管理真题及答案.doc
- 《TCH分配成功率优化指导书.doc
- 《TCL液晶20A71.doc
- 《TCCaster高清导播切换台功能与应用介绍.doc
- 《一级建造师项目管理自测模拟题.doc
- 《TCPIP协议的描述.doc
- 《TCL金能电池编码规则.doc
- 《TDLTE各阶段施工技术应用.doc
- 《一级注册建造师建设工程法规知识试题2.doc
- 2025年网络文学平台版权运营模式创新与版权保护体系构建.docx
- 数字藏品市场运营策略洞察:2025年市场风险与应对策略分析.docx
- 全球新能源汽车产业政策法规与市场前景白皮书.docx
- 工业互联网平台安全标准制定:安全防护与合规性监管策略.docx
- 剧本杀剧本创作审核标准2025年优化与行业自律.docx
- 2025年新能源电动巡逻车在城市安防中的应用对城市环境的影响分析.docx
- 全渠道零售案例精选:2025年行业创新实践报告.docx
- 2025年网约车司乘纠纷处理机制优化与行业可持续发展报告.docx
- 2025年宠物烘焙食品市场法规政策解读:合规经营与风险规避.docx
- 2025年宠物行业数据安全监管政策影响分析报告.docx
文档评论(0)