我对 Virtex-6 BlockRAM 感到困惑。
我想实现一个具有 15 位地址(32,768 个字)和每个字 12 位读写数据的 BRAM。当我探索实现的设计时,我发现为此使用了 12 个 BlockRAM。这是否意味着 Virtex-6 中的每个 BRAM 都有 1 位数据?!
Virtex-6 中每个 BlockRAM 的数据宽度和容量是多少?
每个嵌入式 BlockRAM ( RAMB36E1
) 有 36 KiBit。它也可以分成两个 18 KiBit 原语 ( RAMB18E1
)。
内部组织为 1024 × (32+4)。1024 行,4 个字节 + 4 个奇偶校验位。
BlockRAM 宏具有从 32.768 × 1 到 512 × 72 的可变布局,这也取决于模式:单端口、简单双端口或真正的双端口。
以下是地址与数据宽度比率的完整列表:
看:
更多细节。
当我探索实现的设计时,我发现为此使用了 12 个 BlockRAM。这是否意味着 Virtex-6 中的每个 BRAM 都有 1 位数据?!
使用的区域(内存大小)与其他组织相同,但使用 12 × (32.768 × 1) 不需要多路复用器来组合 12 个 BlockRAM。这可以节省资源并且速度更快。