Xilinx Virtex6 块 ram 宽度

Xilinx Virtex6 block ram width

我对 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 的可变布局,这也取决于模式:单端口、简单双端口或真正的双端口。

这是地址与数据宽度比率的完整列表:

  • 64 Ki x 1,(级联相邻的 BlockRAM)
  • 32 Ki x 1,
  • 16 Ki x 2,
  • 8 Ki x 4,
  • 4 Ki x 8,
  • 4 Ki x 9,
  • 2 Ki x 16,
  • 2 Ki x 18,
  • 1 Ki x 32
  • 1 Ki x 36 或
  • 512 x 64(简单双端口模式)和
  • 512 x 72(简单双端口模式)

参见:

了解更多详情。


When I explore the implemented design, I founded that 12 BlockRAM are used for this. Does this mean each BRAM in a Virtex-6 has 1 bit data?!

使用面积(内存大小)与其他组织相同,但使用12×(32.768×1)不需要多路复用器来组合12个BlockRAM。这样既节省资源又更快。