- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
和其它高级语言一样,VHDL语言具有多种数据类型。两者对大多数数据类型的定义是一致的,但也有某些区别,如VHDL语言中可以由用户自己定义数据类型,这一点在其它高级语言中是做不到的。读者在阅读时务请多加注意。 在VHDL语言中,凡是可以赋予一个值的对象就称为客体 Object 。客体主要包括以下4种:信号 Signal 、变量 Variable 、常数 Constant 、文件 File 。在电子电路设计中,这4类客体通常都具有一定的物理含义。例如,信号对应地代表物理设计中的某一条硬件连接线,常数对应地代表数字电路中的电源和地等。当然,变量对应关系不太直接,通常只代表暂存某些值的载体。4类客体的含义和说明场合如表4-1所示。 表4-1 VHDL语言中4类客体的含义和说明场合 4.1.1 常数 常数 Constant 是一个固定的值。所谓常数说明,就是对某一常数名赋予一个固定的值。通常赋值在程序开始前进行,该值的数据类型则在说明语句中指明。常数说明的一般格式如下: CONSTANT 常数名:数据类型: 表达式; 例如: CONSTANT VCC:REAL: 5.0; CONSTANT DALY:TIME: 100ns; CONSTANT FBUS:BIT_VECTOR: 0101; 常数一旦被赋值就不能再改变。上面VCC被赋值为5.0 V,那么在所有的VHDL语言程序中VCC的值就固定为5.0 V,它不像后面所提到的信号和变量那样,可以任意代入不同的数值。另外,常数所赋的值应和定义的数据类型一致。例如: CONSTANT VCC:REAL: 0101; 这样的常数说明显然是错误的。 4.1.2 变量 在93版中,变量 Variable 增添了一种可在全局引用的共享变量 Shared Variable ,但初学者应慎用。因为,几个进程执行的时序不同会产生不同的结果。以后书中未作特殊说明的变量都是局部变量。 1. 共享变量 前面已经提到信号和变量的重要区别是:信号可以是全局量,只要在构造体中已定义,那么在构造体内的所有地方都可以使用;变量是局部量,只能在进程、子程序内部定义和使用。如果要将结果带出外部,则必须将变量值赋给某一个信号量才行。 但是,实际使用过程中有时希望进程或子程序中的结果以变量形式进行数据传递,因此,在93版中定义了共享变量。共享变量的说明格式如下: SHARED VARIABLE变量名:子类型名[:? 初始值]; 例如: ARCHITECTURE sample OF tests IS SHARED VARIABLE notclk:STD_LOGIC; SIGNAL clk:STD_LOGIC; BEGIN p1:PROCESS clk IS BEGIN IF clk EVENT AND clk 1 THEN notclk: 0; END IF; END PROCESS p1; p2:PROCESS clk IS BEGIN IF clkEVENT AND clk 0 THEN notclk: 1; END IF; END PROCESS p2; END ARCHITECTURE sample; p1进程在时钟上升沿将共享变量notclk置为“0”,而p2进程在时钟下降沿将notclk置为“1”,从而使notclk和clk在任何时刻其值正好相反。共享变量除在进程和子程序的说明域中不能使用外,在其它任何地方都可以使用。但是,如前所述,初学者应慎用,因为几个并发进程执行的时序不同,会产生不同的结果。 2.局部变量 局部变量只能在进程语句、函数语句和过程语句结构中使用,它是一个局部量。在仿真过程中,它不像信号那样,到了规定的仿真时间才进行赋值,局部变量的赋值是立即生效的。局部变量说明语句的格式如下: VARIABLE 变量名:数据类型 约束条件: 表达式; 例如: VARIABLE x,y:INTEGER; VARIABLE count:INTEGER RANGE 0 TO 255: 10; 局部变量在赋值时不能产生附加延时。例如,tmp1、tmp2、tmp3都是局部变量,那么下式产生延时的方式是不合法的: tmp3: tmp1+tmp2 AFTER 10 ns; 4.1.3 信号 信号 Signal 是电子电路内部硬件连接的抽象。它除了没有数据流动方向说明以外,其它性质几乎和前面所述的“端口”概念一致。信号通常在构造体、包集合和实体中说明。信号说明的语句的格式如下: SIGNAL 信号名:数据类型
您可能关注的文档
- 新Verilog HDL数字设计教程 教学课件 贺敬凯 全书 第2章 Verilog HDL基本概念.ppt
- 新Verilog HDL数字设计教程 教学课件 贺敬凯 全书 第3章 Verilog HDL常用建模方法.ppt
- 新Verilog HDL数字设计教程 教学课件 贺敬凯 全书 第4章 Verilog HDL常用电路设计.ppt
- 新Verilog HDL数字设计教程 教学课件 贺敬凯 全书 第5章 同步有限状态机设计.ppt
- 新Verilog HDL数字设计教程 教学课件 贺敬凯 全书 第6章 Verilog HDL仿真技术.ppt
- 新Verilog HDL数字设计教程 教学课件 贺敬凯 全书 第7章 Verilog HDL可综合设计举例.ppt
- 新Verilog HDL数字设计教程 教学课件 贺敬凯 全书 第8章 CPU结构及其设计.ppt
- 新Verilog HDL数字设计教程 教学课件 贺敬凯 全书 封面及目录.ppt
- 新Verilog HDL数字系统设计——原理、实例及仿真 教学课件 康磊 第1 7章 第1章.ppt
- 新Verilog HDL数字系统设计——原理、实例及仿真 教学课件 康磊 第1 7章 第2章.ppt
- 新VHDL硬件描述语言与数字逻辑电路设计 第三版 侯伯亨1 6 第5章.ppt
- 新VHDL硬件描述语言与数字逻辑电路设计 第三版 侯伯亨1 6 第6章.ppt
- 新VHDL硬件描述语言与数字逻辑电路设计 第三版 侯伯亨7 13 第7章.ppt
- 新VHDL硬件描述语言与数字逻辑电路设计 第三版 侯伯亨7 13 第8章.ppt
- 新VHDL硬件描述语言与数字逻辑电路设计 第三版 侯伯亨7 13 第9章.ppt
- 新VHDL硬件描述语言与数字逻辑电路设计 第三版 侯伯亨7 13 第10章.ppt
- 新VHDL硬件描述语言与数字逻辑电路设计 第三版 侯伯亨7 13 第11章.ppt
- 新VHDL硬件描述语言与数字逻辑电路设计 第三版 侯伯亨7 13 第12章.ppt
- 新VHDL硬件描述语言与数字逻辑电路设计 第三版 侯伯亨7 13 第13章.ppt
- 新VHDL硬件描述语言与数字逻辑电路设计 第三版 教学课件 侯伯亨 封面及目录.ppt
最近下载
- 呼吸衰竭ppt(共40张PPT).pptx VIP
- 7.1《风景谈》课件(共41张PPT)(含音频+视频).pptx VIP
- QXT3传感器中文操作手册.pdf VIP
- 病理科医疗质量自查表.docx VIP
- 菲亚特博悦说明书.docx VIP
- 2014-6-30电力变电站钢结构装配式建筑、围墙、防火墙.pdf VIP
- 上海市市东实验学校2022-2023学年高一10月月考语文试题.pdf VIP
- 《半导体物理与器件》教学大纲.docx VIP
- 2025青海公司所属华电(格尔木)能源有限公司面向华电系统内外招聘180人笔试备考试题及答案解析.docx VIP
- 人教版道德与法治四年级上册教案.docx VIP
文档评论(0)