单口RAM、双口RAM、FIFO

转载 2016年08月26日 15:35:04

单口与双口的区别在于,单口只有一组数据线与地址线,因此读写不能同时进行。而双口有两组数据线与地址线,读写可同时进行。FIFO读写可同时进行,可以看作是双口。
    双口RAM分伪双口RAM(Xilinx称为Simple two-dual RAM)与双口RAM(Xilinx称为true two-dual RAM)。伪双口RAM,一个端口只读,另一个端口只写;而双口RAM两个端口都可以读写。
    FIFO也是一个端口只读,另一个端口只写。FIFO与伪双口RAM的区别在于,FIFO为先入先出,没有地址线,不能对存储单元寻址;而伪双口RAM两个端口都有地址线,可以对存储单元寻址。
    异步时钟域的缓存只要是双口器件都可以完成。但FIFO不需对地址进行控制,是最方便的。

 

摘录:

根据我的设计经验,其实FIFO的核心还是一片RAM。只不过把RAM的操作封装了一下,添加了两个指针,也就是两个地址寄存器,一个写地址寄存器,一个读地址寄存器。 当FIFO初始化时,读地址寄存器和写地址寄存器皆为零; 当FIFO写一个数据时,把数据写入当前地址寄存器指向的RAM地址,然后写地址寄存器加1;如果加到RAM的底部了,就再次变为零; 当FIFO读数据时,把读地址寄存器的数据读出来,然后读地址寄存器加1;如果读到RAM的底部了,就再次变为零; 如果读地址寄存器追上写地址寄存器,就说明读空了,没数据可读了; 如果写地址寄存器的值又追上了读地址寄存器,就说明写满了,没法写了; 大概就是这样了。

 

FIFO就是一个双口BRAM,外部加上一些控制电路构成的,要想充分理解FIFO,最好先了解一下双口BRAM

相关文章推荐

FIFO、单口RAM、双口RAM的区别

FPGA设计中,经常需要用存储器来存储数据,目前常用的存储器有FIFO和RAM,其中RAM又分单口RAM与双口RAM,那么它们各自有什么区别呢?        双口RAM:双口RAM 是在一个SRA...

单口RAM、伪双口RAM、双口RAM与FIFO的区别

单口RAM、伪双口RAM、双口RAM与FIFO的区别   2011-10-22 13:54:43|  分类: FPGA学习 |  标签:fifo  fpga  |举报|字号 订阅 ...

XILINX之RAM使用指南(加个人总结)

XILINX之RAM使用指南(加个人总结) 一、 RAM 分类 XILINX 的 RAM 可分为三种,分别是:单口 RAM,简化双口 RAM 和真双口 RAM。如下 图所示:   图1 单...

生成和导入Xilinx ROM/RAM的初始化文件.COE(ZT)

这里比较关键,要导入ROM的值。 在LOAD INIT FILE 项上打勾,点击LOAD FILE……出现下图,要你选择一个文件。   这个文件就是你要放在ROM中的数据,文件的后缀名是.COE...

基于FPGA的双口RAM设计方法

基于FPGA的双口RAM设计方法 Daniel 2015-6-8            在一个项目中使用了双口RAM CY7C025AV,8KX16bit,用于ARM和DSP之前的数据交换,AR...

FPGA 内部双口块RAM 读写实现

由XILINX官网文档“http://china.xilinx.com/”

32个FPGA开源网站

1. OPENCORES.ORG 这里提供非常多,非常好的PLD了内核,8051内核就可以在里面找到。 进入后,选择project或者由http//www.opencores.org/browse.c...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)