完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
比bug更有用的信息。
刚刚发现,即使在我的实现中,最终的路由决定了,因为我有一个未使用的地址,它会把它绑成HIGH? 阅读有关BRAM Generator更改的2013.3发行说明表明情况就是如此,在查看V7内存指南时也是如此。 对BRAM Primitive Address进行一些搜索后发现了这个问题。 附图显示了一个15位地址进入我的自定义模块,相同的15位总线连接到ADDRADADDR [15:0]引脚,其中一个常数零连接到同一总线。 这是“实现”原理图,Synthesized看起来一样。 但在实际使用中,我注意到该存储器的地址位[15]在实际硬件中很高! 这对我来说很重要,因为这个“真正的双端口”的B端连接到Microblaze设计,我的代码将数据放入预期位置的内存中。 这个小虫子花了我大约3天的时间来发现超过5天(花了2天时间试图找到一种代码来解决它的方法)。 所以只是希望别人意识到这个有趣的行为。 TomT ... |
|
相关推荐
4个回答
|
|
|
|
|
|
该存储器处于级联模式,可以从所有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 ... |
|
|
|
ralfk,
你能否向我确认,如果一个RAMB地址引脚接地,就像我在原理图中显示它将被“绑定高电平?”取代一样,那么它的预期行为是什么? 我相信,如果一个引脚通过地面连接到低位,那么它被认为是被使用的。 但如果不是这种情况,我会注意到它。 我过去曾使用内存进行状态机设计,并且可能基于选择哪个SM将中间地址位置为低电平; 知道这种行为真的是我所追求的。 一旦我听到Xilinx的某个人确认我的发现,我会将此作为解决方案。 TomT ... |
|
|
|
RAMB36E1中的A15引脚应仅用于级联。
在所有其他情况下,A15应保持未连接或高电平。 因此,如果使用两个32x1构建带有RAMB36E1的64x1,那么第15位不应该是常量。 此规则仅适用于位A15。 所有其他地址位可以根据需要绑定在应用程序中。 |
|
|
|
只有小组成员才能发言,加入小组>>
2387 浏览 7 评论
2802 浏览 4 评论
Spartan 3-AN时钟和VHDL让ISE合成时出现错误该怎么办?
2269 浏览 9 评论
3337 浏览 0 评论
如何在RTL或xilinx spartan fpga的约束文件中插入1.56ns延迟缓冲区?
2437 浏览 15 评论
有输入,但是LVDS_25的FPGA内部接收不到数据,为什么?
764浏览 1评论
请问vc707的电源线是如何连接的,我这边可能出现了缺失元件的情况导致无法供电
548浏览 1评论
求一块XILINX开发板KC705,VC707,KC105和KCU1500
378浏览 1评论
1971浏览 0评论
688浏览 0评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-27 00:56 , Processed in 1.073021 second(s), Total 52, Slave 46 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号