使用较小的聚合在VHDL中进行聚合分配

时间:2015-10-26 20:31:51

标签: vhdl variable-assignment

有没有办法写这样的东西:

x <= (2 downto 0 => y(2 downto 0), others => y(3));

而不是:

x <= (2 => y(2), 1 => y(1), 0 => y(0), others => y(3));

感谢。

1 个答案:

答案 0 :(得分:1)

显示声明是个好主意。可以根据期望来回答x作业中的第二个聚合。

lasplund对您的问题的评论它应该起作用取决于IEEE Std 1076-2008兼容性,其中添加了聚合中的切片。 (参见Peter Ashenden和Jim Lewis的书 VHDL 2008 Just the New Stuff ,6.4片段聚合)。

支持因VHDL工具实现而异,通常是命令行或配置选项以提供-2008支持。该标准的先前版本仅遵循您使用单元素关联的明显工作替代方案。

参见1076-2008 8.5切片名称和9.3.3.3阵列聚合。