FPGA中bram和dram差别

选择distributed memory generator和block memorygenerator标准:

Dram和bram差别:

    1、bram 的输出须要时钟,dram在给出地址后既可输出数据。

    2、bram有较大的存储空间。是fpga定制的ram资源;而dram是逻辑单元拼出来的。浪费LUT资源

    3、dram使用更灵活方便些

补充:

在Xilinx Asynchronous FIFO CORE的使用时,有两种RAM可供选择,Block memory和Distributed memory。

区别在于,前者是使用FPGA中的整块双口RAM资源,而后者则是拼凑起FPGA中的查找表形成。

1、较大的存储应用,建议用bram;零星的小ram,一般就用dram。但这仅仅是个一般原则,详细的使用得看整个设计中资源的冗余度和性能要求
    2、dram能够是纯组合逻辑,即给出地址立即出数据。也能够加上register变成有时钟的ram。而bram一定是有时钟的。


    3、假设要产生大的FIFO或timing要求较高,就用BlockRAM。

否则,就能够用Distributed RAM。

 块RAM是比較大块的RAM。即使用了它的一小部分,那么整个Block RAM就不能再用了。

所以。当您要用的RAM是小的。时序要求不高的要用Distributed RAM。节省资源。

FPGA中的资源位置是固定的,比如BRAM就是一列一列分布的。这就可能造成用户逻辑和BRAM之间的route延时比較长。举个最简单的样例,在大规模FPGA中,假设用光全部的BRAM。性能通常会下降,甚至出现route不通的情况,就是这个原因。

文章最后发布

你可能感兴趣的:(FPGA中bram和dram差别)