EDA(第4章)-09.ppt

  1. 1、本文档共46页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
EDA(第4章)-09

关系运算符 大于等于 〉= 小于等于 〈= 大于 〉 小于 〈 不等于 /= 等于 = 功能 运算符 逻辑运算符 非 NOT 异或非 XNOR 异或 XOR 或非 NOR 与非 NAND 或 OR 与 AND 功能 运算符 其他运算符 并置 负 - 正 + 功能 运算符 * * CPLD/FPGA的开发与应用 第4章 VHDL语言要素 ? VHDL 的标识符 VHDL 的数据对象 VHDL 的数据类型 VHDL 的运算操作符 VHDL 的关键字 EDA技术常用术语 标识符(identifiers): 可用来为设计实体、构造体、端口及内部信号、变量、常量等参数命名,由英文字母、数字、下划线组成。 书写规则: 标识符中首字母必须是英文字母。 标识符中末字母不能是下划线。 标识符中不允许出现两个连续的下划线。 标识符中不区分字母、数字的大小写。 VHDL语言中的关键保留字不能用作标识符。 VHDL语言中的分隔符由分号“;”构成。 VHDL语言中的注释符由双横线“--”构成。 4.1 标识符 数据对象(Data Objects): VHDL语言中的数据对象是一个可以赋值的客体,类似于一种容器,可以接受各种数据类型的赋值。 常用的数据对象有常量、变量、信号三大类。 顾名思义,常量用来存放仿真/综合过程中的不变值。 变量位于进程和子程序内部,主要用来暂时存放中间数据,即对中间计算结果或临时数据进行局部贮存。变量只在进程内部是可视的。 信号是VHDL中最具硬件特色语言要素,是内部硬件相互连接的主要机制,它表示把元件的装配端口连在一起的互连线,信号在整个实体内部存放数据、传递信息。 4.2 数据对象 数据对象----常量 常量(关键字constant) 常量在设计描述中保持某一规定类型的特定值不变 常量必须在实体、构造体或进程的说明区域加以说明 常量在定义时赋初值,赋值符号为“:=” 常量说明、赋值语句的一般格式: 关键字 constant 常量名 name : 数据类型 : = 值 value; 例: constant allis1: std_logic_vector(2 downto 0):=“111”; constant buswidth: integer:=8; 变量(关键字variable) 仅用于进程和子程序 变量的赋值符号为“:=” 必须在进程和子程序的说明性区域说明 不能表达连线和存储元件 变量说明、赋值语句的一般格式: 关键字 variable 变量名 name : 数据类型 ; 变量名 name : = 值 value; 例: variable va, vb: std_logic_vector(7 downto 0); va:=; vb(7 downto 4):= va(3 downto 0); 数据对象----变量 变量的赋值 整体赋值: temp := ; temp := x”AA” ; (1076-1993) 逐位赋值: temp(7) := ‘1’; 多位赋值 temp (7 downto 4) := “1010”; 多位赋值用双引号 逐位赋值用单引号 赋值标志 信号(关键字signal) 信号用于声明内部信号,而非外部信号(in, out, inout, buffer) 信号在元件之间起互联作用,可代表连线。 信号赋值符号为“=”。 信号说明、赋值语句的一般格式: 关键字 signal 信号名 name : 数据类型 ; 信号名 name = 值 value; 例: signal x, y: integer range 0 to 100; signal halfsum: std_logic_vector(7 downto 0); X=15; Y= x+10; Halfsum =; 数据对象----信号 信号的赋值 SIGNAL temp : STD_LOGIC_VECTOR (7 downto 0); 整体赋值: temp = ; temp = x”AA” ; 逐位赋值: temp(7) = ‘1’; 多位赋值: temp (7 downto 4) = “1010

文档评论(0)

qwd513620855 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档