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

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

       双口RAM:双口RAM 是在一个SRAM 存储器上具有两套完全独立的数据线、地址线和读写控制线,并允许两个独立的系统同时对该存储器进行随机性的访问。即共享式多端口存储器,读写可同时进行。而单口RAM只有一组数据线与地址线,因此读写不能同时进行。

       伪双口RAM:一个端口只读,另一个端口只写;而双口RAM两个端口都可以读写。

        FIFO也是一个端口只读,另一个端口只写。FIFO存储器分为写入专用区和读取专用区。读操作与写操作可以异步进行,写入区上写入的数据按照写入的顺序从读取端的区中读出,类似于吸收写入端与读出端速度差的一种缓冲器。FIFO与伪双口RAM的区别在于,FIFO为先入先出,没有地址线,不能对存储单元寻址;而伪双口RAM两个端口都有地址线,可以对存储单元寻址。

异步时钟域的缓存只要是双口器件都可以完成。但FIFO不需对地址进行控制,是最方便的。

你可能感兴趣的:(FIFO、单口RAM、双口RAM的区别)