BRAM(Block RAM)
Block ram 由一定数量固定大小的存储块构成的,使用 BLOCK RAM 资源不占用额外的逻辑资源,并且速度快。 但是使用的时候消耗的 BLOCK RAM 资源是其块大小的整数倍。如 Xilinx公司的结构中每个 BRAM 有 36Kbit 的容量,既可以作为一个 36Kbit 的存储器使用,也可以拆分为两个独立的 18Kbit 存储器使用。反过来相邻两个 BRAM 可以结合起来实现 72Kbit 存储器,而且不消耗额外的逻辑资源。
Block RAM 都有两套访问存储器所需的地址总线、数据总线及控制信号灯信号,因此其既可以作为单端口存储器,也可以作为双端口存储器。需要注意的时访问 BRAM 需要和时钟同步,异步访问不支持的。
DRAM(查找表存储器——分布式 RAM)
只有成为 SliceM 的逻辑块里的查找表才可以用做分布式 RAM。利用查找表为电路实现存储器,既可以实现芯片内部存储,又能提高资源利用率。
分布式RAM 的特点是可以实现 BRAM 不能实现的异步访问。不过使用分布式 RAM 实现大规模的存储器会占用大量的 LUT,可用来实现逻辑的查找表就会减少。 因此建议仅在需要小规模存储器时,使用这种分布式 RAM。
区别
1.BRAM是使用FPGA中的整块双口RAM资源
2.DRAM是FPGA中的查找表(LUT)拼凑出来的,要占用逻辑资源。
3.物理上看,BRAM 是单纯的存储资源,但是要一块一块的用,不像DRAM 想要多少bit都可以。文章来源:https://www.toymoban.com/news/detail-654571.html
4.DRAM可以是纯组合逻辑,即给出地址马上出数据,BRAM是有时钟的。文章来源地址https://www.toymoban.com/news/detail-654571.html
到了这里,关于FPGA | BRAM和DRAM的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!