数组索引为数组的宽度

时间:2011-02-03 00:33:10

标签: arrays indexing vhdl xilinx synthesis

在VHDL中访问数组时遇到以下问题:

假设我的数组大小不是2 ^ n,例如大小为6。 然后,如果我想使用宽度为3位的索引访问此数组(= ceil(log2(6))),很明显这个索引可以达到两个位置,7和8,超出了数组的大小我正在访问。在这种情况下,Xilinx ISE给了我一个警告。

我应该怎么做?我可能的解决方案如下:

1。)忽略警告。希望合成是聪明的。

2.)仅使用大小为2 ^ n的数组。希望未使用的数组部分将被优化掉。

1 个答案:

答案 0 :(得分:3)

我建议在这种情况下忽略警告。综合可以解决这个问题。

合成也可以轻松优化掉任何未使用过的东西,但人为地增加阵列尺寸似乎有点过头了。