该存储器处于级联模式,可以从所有16位接线的接口的Microblaze侧确认。
这是一个多用途的Memory Wrapper,用于构建高效的64K深x N存储器,其组织以data2mem友好的方式设置(参见我的提取脚本的TCL论坛)。
这种用法的问题是数据方面没有使用64K深,而是使用32K深。
我完全同意第15位未被使用(假设地址[15:0]),但我遇到的问题是,当原理图清楚地表明它应该被束缚为低时,未使用的位在最终路径中被绑定为高?
现在,在阅读了几篇Xilinx文档后,我明白为什么会这样 - 我只是希望其他人知道这种行为。
所以从B方面我把地址“0x0000”中的东西放在A侧的“0x0000”处读取,但我发现它在“0x8000” - 这完全出乎意料并且花了我几天的时间
提及。
使用chipcope没有用,因为我在B侧有16位总线,在A侧有15位总线。
也许用FPGA编辑器进入实现我会看到它 - 真的!
我已经在实际的硬件中使用这个级联内存数月而没有问题;
我们最近重新使用它并发现了这个有趣的行为。
我现在正在添加额外的参数以允许这种情况。
TomT ...
该存储器处于级联模式,可以从所有16位接线的接口的Microblaze侧确认。
这是一个多用途的Memory Wrapper,用于构建高效的64K深x N存储器,其组织以data2mem友好的方式设置(参见我的提取脚本的TCL论坛)。
这种用法的问题是数据方面没有使用64K深,而是使用32K深。
我完全同意第15位未被使用(假设地址[15:0]),但我遇到的问题是,当原理图清楚地表明它应该被束缚为低时,未使用的位在最终路径中被绑定为高?
现在,在阅读了几篇Xilinx文档后,我明白为什么会这样 - 我只是希望其他人知道这种行为。
所以从B方面我把地址“0x0000”中的东西放在A侧的“0x0000”处读取,但我发现它在“0x8000” - 这完全出乎意料并且花了我几天的时间
提及。
使用chipcope没有用,因为我在B侧有16位总线,在A侧有15位总线。
也许用FPGA编辑器进入实现我会看到它 - 真的!
我已经在实际的硬件中使用这个级联内存数月而没有问题;
我们最近重新使用它并发现了这个有趣的行为。
我现在正在添加额外的参数以允许这种情况。
TomT ...
举报