VHDL数据对象

 数据对象(data objects):凡是可以被赋予一个值的对象称为数据对象,数据对象用于传递信号。

例:signal  A :std_logic;数据对象类型  数据对象名 数据对象值的类型

1、信号  信号数据对象,代表电路内部传输线路,其在元件之间起互连作用。

信号数据对象的定义格式为:

signal  信号名:数据类型[:=设定值];

如:signal A:std_logic_vector(3 downto 0)  :="0000”;

信号赋值语句的语法格式为:

目标信号名<=表达式(设定值)

A<="1010"

2、变量  它用于对中间数据的临时存储,并不一定代表电路的某一组件。

变量数据对象的定义格式为: variable 变量名:数据类型[:=设定值];

如:variable a: integer :=0;

变量赋值语句的语法格式为:目标变量名 :=表达式(设定值);

如:a:=b+c;

3、常数 常数的定义格式为:constant 常数名:数据类型:=表达式;

如:constant d1:integer:=3;

        constant d2:std_logic_vector(d2 downto 0) :="0000";

注意:常数数据对象定义的同时进行赋值。赋值符号为“:=”

信号、变量和常数的对比

定义:signal A:std_logic;

          variable b:std_logic_vector(7 downto 0);

           constant c:integer :=6;

定义区域

信号:实体、结构体、程序包

变量:进程、子程序

常数:实体、结构体、程序包、块、进程、子程序

适用范围

信号:实体、结构体、程序包·

变量:定义了变量的进程、子程序的顺序语句中

常数:视其定义的位置而定

若常数定义在实体中,适用范围是实体所对应的有结构体。

若常数定义在结构体中,适用范围就是本结构体。

 

 

 

 

 

posted on 2019-11-02 16:27  李好123  阅读(832)  评论(0)    收藏  举报