VHDL为什么要变量,直接用信号不好吗?

如题所述

Variable其实和signal还是有很大区别的:
1.信号赋值是有延迟的,就是说语句写完之后,这个信号不会立马就有值了,而是等待一定时间后才有。而变量一旦被赋值,立马就有效了,这个可以在仿真的时候控制仿真时间,然后看他们的值可以刻出来;
2.对于process语句,process只对信号敏感,不对变量敏感;
3.最重要的,信号可以是多个process的全局信号,而变量只在定义它的过程或者函数或者process中可见;
4.信号其实是硬件中连线的一个抽象描述,类似于端口连接线,而变量没有这个意义;
5.信号赋值:信号<=表达式;
变量赋值:变量:=表达式,赋值格式不一样
温馨提示:内容为网友见解,仅供参考
第1个回答  2013-01-18
我觉得你要想掌握 最好的办法就是编好程序 编译后 tool-netviewer-RTLviewer 通过看那些图 理解速度最快。

VHDL为什么要变量,直接用信号不好吗?
1.信号赋值是有延迟的,就是说语句写完之后,这个信号不会立马就有值了,而是等待一定时间后才有。而变量一旦被赋值,立马就有效了,这个可以在仿真的时候控制仿真时间,然后看他们的值可以刻出来;2.对于process语句,process只对信号敏感,不对变量敏感;3.最重要的,信号可以是多个process的全局信号,...

vhdl中变量和信号的区别
5. 信号不会导致系统行为的不确定性;而共享变量则可能导致系统行为的不确定。

vhdl语言设计中,信号和变量的区别
信号可以在PACKAGE、ENTITY和ARCHITECTURE中声明,而变量只能在一段顺序描述代码的内部声明。因此,信号是全局的,而变量通常是局部的。变量的值通常是无法直接传递到PROCESS外部的。如果需要进行变量值的传递,则必须把这个值赋给一个信号,然后由信号将变量值传递到PROCESS外 部。另一方面,赋予变量的值使即...

简述VHDL语言中变量和信号的不同之处。
【答案】:(1)使用场合不同:变量是局部量,只能用于进程、函数和过程语句中;信号是全局量,通常在实体、包和结构体中说明,并能在任何子结构体中使用,要在进程间或与子程序间交换信息时,必须使用信号。(2)赋值符号不同:变量使用赋值符号“:=”给变量赋值;信号使用代入符号“<=”给信号赋值。(...

VHDL中信号和变量的区别
简单的说,信号是全局的,用于结构体中并行语句间数据流的传递;变量则是局部的,他主要用于单个进程中中间变量的存储.

VHDL中信号和变量的区别
信号量不是立即赋值的,而变量这是立即赋值。比如temp=temp+1;若temp为信号量,那么temp的值将会在整个process都执行完毕之后才会变化,若temp为变量,那么temp的值在这条语句执行完毕后就会被附上新的值了。信号量是可以在进程之间相互调用的,而变量只能够在一个进程内定义使用。

请问VHDL中端口、信号、变量有何异同?
信号无方向之分,端口相当于元器件的引脚,信号就是元件内部的连线,除这个外端口可以看做信号 信号跟变量:变量只能在进程中使用,相当于C中的局部变量,生成的电路是暂存单元;信号相当于C中的全局变量,在进程内外均可使用,生成的是连线或存储单元 以上是我的理解,情况大致这样子,希望对你有用!

vhdl变量是什么意思?
VHDL是一种硬件描述语言,它允许开发人员描述数字电路系统的行为和结构。在VHDL中,变量是一种用于存储和处理值的数据类型。与常量和信号不同的是,变量具有可变性,可以在程序的不同部分中被修改和使用。变量还可以被赋初值,从而避免在使用前对其进行初始化的需求。在数字电路系统的设计中,VHDL变量广泛...

VHDL中信号与变量的区别+比较
变量VARIABLE 基本用法 用于作为电路中的信号连线 用于作为进程中局部数据存储单元 适用范围 在整个结构体内的任何地方都适用 只能在所定义的进程中使用 行为特性 在进程最后才对信号赋值 立即赋值

vhdl语言数据对象有哪几种?作用范围如何?对其赋初值作用有何不同
答:VHDL语言数据对象有信号,变量,常量。1、常量(CONSTANT)一般用来代表数字电路中的电源、地、恒等逻辑值等常数。常量的使用范围取决于它被定义的位置。即在程序包中定义可在整个程序包中使用,在实体中定义,有效范围为这个实体定义的所有结构体;定义在结构体中只能用于该结构体;定义在结构体中某一...

相似回答