在VHDL中访问数组时遇到以下问题:
假设我的数组大小不是2 ^ n,例如大小为6。 然后,如果我想使用宽度为3位的索引访问此数组(= ceil(log2(6))),很明显这个索引可以达到两个位置,7和8,超出了数组的大小我正在访问。在这种情况下,Xilinx ISE给了我一个警告。
我应该怎么做?我可能的解决方案如下:
1。)忽略警告。希望合成是聪明的。
2.)仅使用大小为2 ^ n的数组。希望未使用的数组部分将被优化掉。
答案 0 :(得分:3)
我建议在这种情况下忽略警告。综合可以解决这个问题。
合成也可以轻松优化掉任何未使用过的东西,但人为地增加阵列尺寸似乎有点过头了。