现代电子体统设计.ppt

  1. 1、本文档共79页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
数据对象 在逻辑综合中,VHDL语言常用的数据对象为: ——信号 ——变量 ——常量 第二十九页,共七十九页,2022年,8月28日 a.常量(CONSTANT) ——常量是全局量。 ——常量的定义和设置是为了设计更容易阅读和修改。如利用它可设计不同模值的计数器,模值存于一常量中,对不同的设计,改变模值仅需改变此常量值即可。 CONSTANT Zero_4:STD_LOGIC_VECTOR(3 DOWNTO 0):=“0000”; 第三十页,共七十九页,2022年,8月28日 b.变量(VARIABLE) ——变量是局部量,只能在进程和子程序中定义和使用; ——变量的赋值符号为“:=”; 变量定义格式: 第三十一页,共七十九页,2022年,8月28日 c.信号(SIGNAL) 信号定义格式: 第三十二页,共七十九页,2022年,8月28日 ——信号是全局量。用于进程间通信,或用于并行模块间的信息交流。 ——信号用于声明内部信号,而非外部信号(外部信号对应为IN,OUT,INOUT,BUFFER),其在元件之间起互联作用(类似于连线);可以赋值给外部信号。 ——信号的赋值符号为“=”; ——信号使用和定义的范围只能是实体、结构体和程序包,在进程和子程序中不允许定义信号,但可以使用信号。 ——同一个信号只能在一个进程中被赋值,不能在多个进程被赋值,但同一个信号可以在多个进程中使用。 第三十三页,共七十九页,2022年,8月28日 d.信号与变量的比较 ——信号可以促发进程,同一个信号可以在多个进程中使用; ——信号与变量声明的形式与位置不同: 信号声明为SIGNAL…,变量声明为VARIABLE… 信号声明在子程序、进程等外部,而变量声明在子程序、进程等内部。 ——信号与变量的赋值不同: 在进程中,信号赋值在进程结束时起作用,而变量赋值立即起作用。 ——如果在一个进程中多次为一个信号赋值时,只有最后一个值会起作用; ——为变量赋值时,变量值的改变立即发生。 第三十四页,共七十九页,2022年,8月28日 数据类型 最常见的标准定义数据类型: ——INTEGER:可用作循环的指针或常数,通常不用于I/O信号; Signal typei: INTEGER range 0 to 15; ——BIT:可取值‘0’或‘1’; ——BIT_VECTOR:用双引号括起来的一组位数据,如“010101”; ——STD_LOGIC:工业标准的逻辑类型,可取值0,1,Z等; ——STD_LOGIC_VECTOR:std_logic的组合,工业标准的逻辑类型。 定义枚举类型 语法:Type 类型名称 Is(元素1,元素2,……); 例:type state is (s0,s1,s2,s3); signal s:state; 第三十五页,共七十九页,2022年,8月28日 VHDL属性(Attribute) 函数类属性 ’event ,值为布尔型,如果该属性所附着的信号有变化,则其取值为True,否则为False。 第三十六页,共七十九页,2022年,8月28日 3. VHDL语句及基本描述方法 顺序语句 并行语句 VHDL基本描述方法 第三十七页,共七十九页,2022年,8月28日 ◆赋值语句 ◆流程控制语句 ◆等待语句 ◆空操作语句 顺序语句 第三十八页,共七十九页,2022年,8月28日 ——赋值语句包括信号赋值语句和变量赋值语句; ——赋值源和目标数据类型必须相同; ——在进程中,信号赋值在进程结束时起作用,变量赋值立即起作用; ——信号具有全局特征,变量具有局部特征; ——信号赋值语句可以以顺序语句形式出现,此时在进程内使用;信号赋值语句也可以以并行语句形式出现,此时在进程外使用。 变量赋值目标 := 赋值源; 信匀赋值目标 = 赋值源; 赋值语句 第三十九页,共七十九页,2022年,8月28日 IF_THEN_ ELSE语句 流程控制语句 第四十页,共七十九页,2022年,8月28日 --注意,此处是ELSIF,而 --不是ELSE IF !!IF语句只能在进程中使用 第四十一页,共七十九页

您可能关注的文档

文档评论(0)

努力奋斗的小玲 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档