【发布时间】:2016-03-31 09:25:15
【问题描述】:
我是 vhdl 的初学者,对信号了解不多。
我的理解是您可以分配信号值,例如
signal<='100' 但您不必声明它。对吗?
另外,对于符号扩展 ext_imme<=(31 downto 16=> imme(15)) & imme;,为什么通过重复 imme(15) 两次将 16 位扩展到 32 位?
【问题讨论】:
-
您的语法不正确(
some_signal <= "100";signal是保留字),也不是您的假设。一个命名的信号总是被声明的,这个名字可能是一个隐式信号名、切片名或索引名的前缀。对象是一个类型和一个值,由它的声明名称指定。对ext_imme的信号分配右侧的表达式包含一个聚合,该聚合分配一个长度为 15 的数组,其中每个元素的值都为 imme(15),并将该数组与 imme 连接起来(范围大概是 15 到 0),产生一个 32 长的数组值。显示声明。
标签: vhdl