赛灵思
直播中

李玉兰

7年用户 1478经验值
私信 关注
[问答]

如何实现ASIC RAM替换为FPGA RAM?

大家好,
我使用Ultrascale Virtex Devices和Vivado工具,
在ASIC RAM中,ther是一个单独的奇偶校验写使能位,但在FPGA RAM中没有单独的Pariaty写使能位。
如何实现ASIC RAM奇偶校验写入启用ino FPGA RAM。
谢谢娜文G K.

回帖(2)

姜雨孜

2020-4-24 09:46:02
你真的需要同一主题的三个主题吗?
我认为最简单的方法是将奇偶校验数据存储在一个“正常”字节中。
因此,不是在9位模式下使用Block RAM(8位数据加1位奇偶校验),而是将其置于18位模式,在另一个字节中存储8位数据和1位奇偶校验。
由于字节具有单独的写使能信号,因此可以使用奇偶校验位的第二个写使能。
如果你有足够的RAM可以使用,这应该很好用。
另一种选择可能是将数据保存在块RAM中,并将(小得多)奇偶校验保存在分布式RAM中。
如果你在1K * 18模式下使用RAM,那么它应该只需要几片即可为你提供1K * 2的奇偶校验RAM。
当然,对于小型RAM,您可以在分布式RAM中完成所有工作。
对于非常大的RAM,您可能正在以64K * 1模式运行Block RAM,并且八个并排获取一个字节的数据。
添加奇偶校验(使用写入启用)就像添加第九个RAM一样简单。
或者你可以使用最“高效”(在空间方面)的方法,即从RAM中读取数据(包括奇偶校验),更新你需要的任何位,然后将其写回。
“奇偶校验写使能”位仅选择是否更新奇偶校验位。
尽管如此,我真的不得不质疑你为什么要在奇偶校验位上进行写使能。
如果在更新数据时不更新它,奇偶校验并不是非常有用...
举报

陈玉筠

2020-4-24 10:03:00
尽管如此,我真的不得不质疑你为什么要在奇偶校验位上进行写使能。
如果在更新数据时不更新它,奇偶校验并不是非常有用...
(不是我提倡这个,但是......)我可以看到设计在主数据写入后更新时钟上的奇偶校验位,并且类似地在主数据读取后的一个时钟读取奇偶校验位。
这将允许您保持奇偶校验生成并检查关键路径。
Avrum
举报

更多回帖

发帖
×
20
完善资料,
赚取积分