VHDL语言的基本语法.pptVIP

  • 670
  • 0
  • 约9.19千字
  • 约 53页
  • 2017-05-21 发布于河南
  • 举报
在VHDL仿真器中,错误等级用来指示设计系统的工作状态,共有四种可能的状态值: NOTE(注意)、WARNING(警告)、 ERROR(出错)、FAILURE(失败)。 在仿真过程中,可输出这四种值来提示被仿真系统当前的工作情况。 STANDARD 程序包中定义如下: TYPE SEVERITY_LEVEL IS (NOTE,WARNING,ERROR,FAILURE); 9) 错误等级(SEVERITY_LEVEL) 在IEEE库的程序包STD_LOGIC_1164中,定义了两个非常重要的数据类型,即: 标准逻辑位STD_LOGIC 标准逻辑矢量STD_LOGIC_VECTOR 1) 标准逻辑位STD_LOGIC数据类型 2. IEEE预定义标准逻辑位与矢量 TYPE STD_LOGIC IS (U,X,‘0’,1,Z,W,L,H,-); 在IEEE库程序包STD_LOGIC_1164中的数据类型STD_LOGIC的定义如下所示: “U”———— 未初始化 “X”———— 强不定 “0”———— 0 “1”———— 1 “Z”———— 高阻 “W”———— 弱信号不定 “L”———— 弱信号0 “H”———— 弱信号1 “_”———— 忽略(或不可能情况) 注意在使用该类型数据时,在程序中必须写出库说明语句和使用包集合的说明语句。 LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; STD_LOGIC_VECTOR类型定义如下: TYPE STD_LOGIC_VECTOR IS ARRAY (NATURAL RANGE) OF STD_LOGIC; 2) 标准逻辑矢量(STD_LOGIC_VECTOR) VHDL综合工具配带的扩展程序包中,定义了一些有用的类型。如Synopsys公司在IEEE库中加入的程序包STD_LOGIC_ARITH中定义了如下的数据类型: 无符号型(UNSIGNED) 有符号型(SIGNED) 小整型(SMALL_INT) 3. 其他预定义标准数据类型 TYPE UNSIGNED IS ARRAY (NATURAL RANGE ) OF STD_LOGIC; TYPE SIGNED IS ARRAY (NATURAL RANGE) OF STD_LOGIC; SUBTYPE SMALL_INT IS INTEGER RANGE 0 TO 1; 如果将信号或变量定义为这几个数据类型,就可以使用本程序包中定义的运算符。在使用之前,请注意必须加入下面的语句: 在程序包STD_LOGIC_ARITH中的类型定义如下: LIBRARY IEEE; USE IEEE.STD_LOGIC_ARITH.ALL; 1) 无符号数据类型(UNSIGNED TYPE) UNSIGNED数据类型代表一个无符号的数值,在综合器中,这个数值被解释为一个二进制数,这个二进制数的最左位是其最高位。 2) 有符号数据类型(SIGNED TYPE) SIGNED数据类型表示一个有符号的数值,综合器将其解释为补码,此数的最高位是符号位,例如:SIGNED(“0101”) 代表+5,5;SIGNED(“1101”) 代表-5。 VHDL允许用户自行定义新的数据类型,它们可以有多种,如: 4. 用户自定义数据类型方式 可由用户定义的数据类型常见的有8种: ·枚举(Enumerated)类型; ·整数(Integer)类型 ·实数(Real),浮点数(Floating)类型; ·数组(Array)类型; ·存取(Access)类型; ·文件(File)类型; ·记录(Recode)类型; ·时间(Time)类型。 语法结构如下: 1) TYPE语句用法 TYPE 数据类型名 IS 数据类型定义 [OF 基本数据类型]; TYPE 数据类型名 IS

文档评论(0)

1亿VIP精品文档

相关文档