VHDL小知识

FPGA知识
CPLD知识
Verilog知识
VHDL入门与概述
  • 什么是VHDL?
  • HDL语言的种类
  • VHDL程序的实体
       VHDL实体的组成
         类型说明
         端口说明
         实体说明
  • VHDL程序的结构体
        结构体命名
        信号定义

         VHDL属性
        VHDL进程

        VHDL标识符
        VHDL数字
        VHDL常量
        VHDL变量
        VHDL信号

        VHDL数据类型
         VHDL std_logic
        VHDL布尔量类型
         VHDL整形
        VHDL位类型
        VHDL位矢量类型
        VHDL位串
        VHDL实数类型
        VHDL数据类型转换

        VHDL操作符
        VHDL关系操作符
        VHDL逻辑操作符
        VHDL算术操作符
        VHDL并置操作符

        VHDL库
        VHDL程序包

       VHDL语句
       VHDL并行描述语句
       VHDL并发信号赋值语句
       VHDL条件信号赋值语句
       VHDL选择信号赋值语句

       VHDL顺序描述语句
       VHDL赋值语句
       VHDL IF
       VHDL CASE

       VHDL程序
        vhdl D触发器
        vhdl表决器
        vhdl乘法器
        vhdl地址译码
        vhdl二分频
        vhdl二选一
        vhdl非门
        vhdl分频器
        vhdl计数器
        vhdl寄存器
        vhdl加法器
        vhdl减法器
        vhdl七段数码管译码器
        vhdl三态总线收发驱动器
        vhdl四选一
        vhdl同步D触发器
        vhdl伪随机码m序列发生器
        vhdl移位寄存器

     VHDL行为描述法
     VHDL数据流描述法
     VHDL结构化描述法
  • VHDL变量

    VHDL 变量

    变量主要用于对暂时数据进行局部存储 , 它是一个局部量 , 可以在程序的很多区域进行说明 , 并且可以具有任何数据类型的值。作为一种硬件描述语言中的对象, 变量在硬件电路设计中具有一定的物理意义, 变量主要用于局部数据的暂时存储, 是一种载体。

    通常情况下 , 对于仿真来说 , 变量可以用来进行高层次的建模 ; 对于综合来说 , 变量可 以用来进行计算。虽然变量可以用于建模操作, 但是变量的综合难以定义,因此建议初学者应该尽量避免使用变量。

    在 VHDL 中 , 变量说明的语法结构为:

    VARIABLE 变量名 [ , 变量名… ] : 数据类型 [ : = 表达式 ] ;

    下面给出几个变量说明的例子。

    VARIABLE i: integer RANGE 0 TO 15: = 0;

    VARIABLE counter: bit _ vector (3 DOWN TO 0);

    VARIABLE flag: boolean: = true;

    VARIABLE enable: bit:

    在上面的例子中 , "RANGE" 是用来表示限制数据范围的保留字 ; "TO" 则是用来表示数据范围递增的保留字 ; "DOWN TO" 则是用来表示数据范围递增的保留字。

    在变量说明中 , 可以对它赋予初始值 , 也可以不赋初始值。如果在变量说明中没有指定初始值 , 那么认为它取默认值 , 即该数据类型的最左值或者是最小值 O 与常量不同 , 变量的值并不是一成不变的。这里 , VHDL 程序中变量值的改变是通过变量赋值语句来进行的 , 在 VHDL 语法中 , 变量赋值语句的语法结构为 :

    目标变量 := 表达式 ;

    变量说明的范围较窄 , 它只能在进程语句、过程语句以及函数语句中使用 , 因此说明的

    变量也只能在进程语句、过程语句以及函数语句中使用。

    另外 , VHDL-93 标准提供了一种称为共享变量的新变量 , 它不但可以在进程、过程和 函数之外定义 , 而且也可以在结构体、块语句和程序包中定义。在 VHDL 中 , 共享变量说 明的语法结构为 :

    SHARE VARIABLE 变量名 [ , 常量名… ] : 数据类型 [: = 表达式 ] ;

    由于共享变量不需要保存历史和波形信息 , 因此采用共享变量为存储器、寄存器和总线等建模时可以大大提高仿真速度。采用共享变量的主要缺点是会将非确定性问题引入到 VHDL 中 , 这样将使仿真结果需要依赖并行语句的调度顺序 , 从而影响 VHDL 仿真的具体 操作结果。同时 , 目前大多数的 EDA 仿真器和综合器都不支持共享变量 , 因此读者应该慎重使用共享变量。



      HDL|

    Copyright © 2005-2008 All Rights Reserved
    ARM开发板网 版权所有