[转]Bram和Dram的区别
Posted tubujia
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了[转]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不通的情况,就是这个原因。
以上是关于[转]Bram和Dram的区别的主要内容,如果未能解决你的问题,请参考以下文章