超高速集成电路硬件描述语言VHDL.pptVIP

  • 4
  • 0
  • 约1.73万字
  • 约 76页
  • 2017-06-10 发布于四川
  • 举报
第一节 VHDL的基本组成 一、参数部分——程序包 二、接口部分—设计实体 二、接口部分—设计实体 三、描述部分—结构体 第二节 VHDL数据类型和属性 VHDL中常用三类目标——信号、变量和常量。 PACKAGE meals_pkg IS TYPE meal IS(breakfast,lunch,dinner); END meals_pkg; 在结构体说明区(ARCHITECTURE和BEGIN之间)被说明的目标,仅可以在此结构体中引用或在结构体中的任何进程语句中被引用,称此目标为局部信号。 VHDL中目标类型规定在不同的模块中可以被说明。 标量类型、复合类型、子类型可在所有的模块中说明。 文件类型:子程序和进程语句说明区。 寻址类型:进程语句说明区。 VHDL的属性 TYPE bit IS ARRAY(63 DOWNTO 32) OF BIT; VARIABLE left_range,right_range,uprange,lowrange:INTEGER; BEGIN left_range:= bit’LEFT; right_range:= bit’RIGHT; uprange:= bit’HIGH; lowrange:= bit’LOW; TYPE bit IS ARRAY(0 TO 7) OF BIT; TYPE bit1 IS ARRAY(8 TO 31) OF BIT; VARIABLE len1,len2:INTEGER; BEGIN len1:=bit’LENGTH; len2:=bit1’LENGTH; 用来检查一个信号的变化,并且变化刚刚发生,既推断出在信号上发生了一个跳变。 第三节 VHDL的行为描述 在所有的并行语句中,两个以上的并行赋值语句在字面上的顺序并不表明它们的执行顺序. ARCHITECTURE alarm_arc OF alarm IS BEGIN 信号可被看作两个元件之间数据传输的通路, 4. WHILE..LOOP语句 WHILE..LOOP循环语句的一般形式为: 循环标号 :WHILE 条件 LOOP 语句 ; END LOOP 循环标号 ; 循环的条件是布尔表达式,在每次执行循环前检查条件为真时执行循环,为假时结束循环。 WHILE (X 10) LOOP X:= X+1; END LOOP; 三、VHDL的顺序行为 第三节 VHDL的行为描述 5. 断言语句ASSERT ASSERT语句等价于一个进程语句,它不作任何操作,仅用于判断某个条件是否成立,当条件为真,该语句任何事都不做;如果为假,则报告一串信息给设计者。 RS触发器 当r 和s 同时等于1时,触发器处于不定状态 ENTITY RSFF IS PORT(r,s:IN BIT; q,not_q:OUT BIT); END RSFF; 三、VHDL的顺序行为 第三节 VHDL的行为描述 ARCHITECTURE RSFF_arc OF RSFF IS BEGIN PROCESS(r,s) VARIABLE last_state:BIT:= ‘0’; BEGIN ASSERT NOT(r= ‘1’ AND s= ‘1’) REPORT “Both r AND s equal to ‘1’” SEVERITY error; IF r= ‘0’ AND s= ‘0’ THEN last_state:= last_state ; ELSIF r= ‘1’ AND s= ‘0’ THEN last_state:= ‘0’; ELSE -- r= ‘0’ AND s= ‘1’ last_state:= ‘1’; END IF; q = last_state AFTER 10 ns;

文档评论(0)

1亿VIP精品文档

相关文档