那曲檬骨新材料有限公司

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

FIFO和RAM,到底用哪個(gè)?

jf_pJlTbmA9 ? 來(lái)源:jf_pJlTbmA9 ? 作者:jf_pJlTbmA9 ? 2023-07-11 17:23 ? 次閱讀

FPGA的設(shè)計(jì)中的,內(nèi)部的FIFO和RAM是兩種非常常見的存儲(chǔ)單元。有的場(chǎng)景是只能使用RAM,比如存放表項(xiàng)的時(shí)候,有的場(chǎng)景是RAM和FIFO都可以使用,比如存放數(shù)據(jù)的時(shí)候,從功能的角度來(lái)講,F(xiàn)PGAer都知道這兩種存儲(chǔ)單元如何使用,但是從工程的角度,比如板上問題的定位、存儲(chǔ)單位讀寫邏輯的修改和維護(hù)等方面來(lái)看,用FIFO還是用RAM還是有點(diǎn)點(diǎn)講究了。

FIFO

關(guān)于FIFO的基本原理,可以參考FIFO的應(yīng)用,里面對(duì)FIFO有非常詳細(xì)的介紹。這里從優(yōu)缺點(diǎn)2個(gè)方面重新看到FIFO

FIFO的優(yōu)點(diǎn)

從使用FIFO的角度來(lái)看,F(xiàn)IFO優(yōu)點(diǎn)很明顯,使用簡(jiǎn)單,問題定位也方便。

首先是時(shí)序簡(jiǎn)單:FIFO通過(guò)讀寫使能控制,只要不滿,就可以寫入數(shù)據(jù);只要不空,就可以讀出數(shù)據(jù)。不需要關(guān)心數(shù)據(jù)在內(nèi)部的存儲(chǔ)位置。

定位問題簡(jiǎn)單:在工程實(shí)踐中,對(duì)FIFO的問題定位比較簡(jiǎn)單,常見的錯(cuò)誤就是上下溢出、非空情況下不讀、長(zhǎng)空長(zhǎng)滿等。這些現(xiàn)象FIFO一般都給出了相應(yīng)的信號(hào),所以非常好定位。

擴(kuò)展性好:FIFO不僅僅是一個(gè)緩存,同時(shí)也很好的邏輯隔離單元,寫邏輯部分的修改不影響讀邏輯;同理讀邏輯部分的修改不影響寫邏輯,減少了邏輯的耦合性。

FIFO的缺點(diǎn)

FIFO的缺點(diǎn),首先不能控制地址,也就不能控制數(shù)據(jù)寫入和讀出的位置,所以不能存放表項(xiàng);還有一個(gè)缺點(diǎn)就是從資源的角度來(lái)看,需要有額外的邏輯來(lái)控制讀寫,還要產(chǎn)生空、滿信號(hào)等;最后在一些特殊的應(yīng)用場(chǎng)景下,比如對(duì)數(shù)據(jù)從寫入到讀出有延時(shí)需求的場(chǎng)景,不同的FIFO設(shè)計(jì),有可能不滿足要求。

RAM

關(guān)于RAM的基礎(chǔ)原理,前面有也有過(guò)詳細(xì)的介紹,可以參考RAM的應(yīng)用。

RAM的優(yōu)點(diǎn)

存放表項(xiàng):由于RAM的讀寫地址可以由用戶自己控制,所以RAM是FPGA內(nèi)存放大表項(xiàng)的幾乎唯一的選擇。

覆蓋:在數(shù)據(jù)需要丟棄的場(chǎng)景中,可以通過(guò)重復(fù)寫的方式來(lái)覆蓋原來(lái)的數(shù)據(jù),從而實(shí)現(xiàn)丟棄的功能。

回讀:在有的場(chǎng)景中,同一個(gè)數(shù)據(jù)可能需要從緩存中多次讀出,這種場(chǎng)景下RAM也是唯一的選擇。

RAM的缺點(diǎn)

讀寫控制:相比FIFO的讀寫控制,增加了地址這個(gè)控制信號(hào)。從以往的經(jīng)驗(yàn)來(lái)看,地址信號(hào)是比較容易引起問題的,常見的就是地址錯(cuò)誤導(dǎo)致數(shù)據(jù)寫入錯(cuò)誤。

溢出:由于RAM沒有空滿狀態(tài),RAM作為緩存的時(shí)候,寫入和讀出的邏輯,需要從方案上保證不溢出,復(fù)雜度略有增加。

問題定位難:除了上述地址錯(cuò)誤導(dǎo)致寫入的數(shù)據(jù)錯(cuò)誤不好定位外,RAM沒有空滿狀態(tài),做緩存的時(shí)候,RAM的溢出同樣不好定位。

總結(jié)

經(jīng)過(guò)上面的分析,從功能、控制難易程度、問題定位難易程度考慮,我們可以總結(jié)出如下幾條原則:

1、表項(xiàng)的存儲(chǔ)采用RAM;

2、對(duì)數(shù)據(jù)有覆蓋和回讀需求的,使用RAM,使用的時(shí)候要做好讀寫長(zhǎng)度的控制以及狀態(tài)的監(jiān)測(cè);

3、除上述2種情況外,既可以用RAM又可以用FIFO的場(chǎng)景,一律用FIFO;

審核編輯:湯梓紅

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 存儲(chǔ)單元
    +關(guān)注

    關(guān)注

    1

    文章

    63

    瀏覽量

    16185
  • RAM
    RAM
    +關(guān)注

    關(guān)注

    8

    文章

    1369

    瀏覽量

    115002
  • fifo
    +關(guān)注

    關(guān)注

    3

    文章

    389

    瀏覽量

    43855
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    vs1003中的指令RAM和代碼RAM是干什么的?

    vs1003進(jìn)行解碼時(shí),單片機(jī)每次只能發(fā)送32字節(jié)音頻數(shù)據(jù),等解碼完畢后,又要發(fā)送32字節(jié),中間那段間隔是否太短了,除了發(fā)送字節(jié)之外,單片機(jī)還來(lái)得及干其他事嗎?vs1003中的指令RAM和代碼RAM不知道是干什么的,能否當(dāng)
    發(fā)表于 11-02 17:14

    Xilinx FPGA入門連載59:FPGA 片內(nèi)ROM FIFO RAM聯(lián)合實(shí)例之功能概述

    `Xilinx FPGA入門連載59:FPGA 片內(nèi)ROM FIFO RAM聯(lián)合實(shí)例之功能概述特權(quán)同學(xué),版權(quán)所有配套例程和更多資料下載鏈接:http://pan.baidu.com/s
    發(fā)表于 03-16 12:43

    請(qǐng)問TI的C6678UART外設(shè)到底哪個(gè)時(shí)鐘作為源?

    源不一定是150M,要根據(jù)自己的使用設(shè)置UART的時(shí)鐘源。但是我看了TI的C6678器件數(shù)據(jù)手冊(cè)、PLL手冊(cè)、CorePac手冊(cè)、UART手冊(cè)等等都沒看到UART外設(shè)到底哪個(gè)時(shí)鐘作為源,按PLL
    發(fā)表于 06-25 04:37

    勇敢的芯伴你玩轉(zhuǎn)Altera FPGA連載90:FPGA片內(nèi)ROM FIFO RAM聯(lián)合實(shí)例

    ,我們鼠標(biāo)點(diǎn)擊選中Instance下面的唯一一個(gè)選項(xiàng),然后單擊InstanceManager后面的運(yùn)行按鈕,執(zhí)行一次觸發(fā)采集。圖9.99 波形采樣觸發(fā)設(shè)置波形如圖9.100所示。這里包括了ROM的讀取操作、FIFO的寫和讀操作、RAM
    發(fā)表于 09-07 22:16

    Xilinx FPGA片內(nèi)ROM FIFO RAM聯(lián)合實(shí)例之功能概述

    1 功能概述該工程實(shí)例內(nèi)部系統(tǒng)功能框圖如圖所示。我們通過(guò)IP核分別例化了ROM、FIFORAM,ROM有預(yù)存儲(chǔ)的數(shù)據(jù)可供讀取,將其放入FIFO中,隨后再讀出送到RAM供讀取。通過(guò)I
    發(fā)表于 01-10 09:46

    哪個(gè)使用RAMFIFO更好?

    親愛的xilinx用戶我需要存儲(chǔ)一個(gè)超過(guò)60個(gè)時(shí)鐘周期的數(shù)據(jù)向量,然后使用它。我很困惑,在這種情況下,哪兩個(gè)用于RAMFIFO,以獲得項(xiàng)目的最佳區(qū)域和速度,或者如果有另一種更好的方法來(lái)處理這種情況。
    發(fā)表于 03-25 06:56

    RAM接口控制器系列之FIFO

    取出、掉電丟失。在各類邏輯系統(tǒng)中運(yùn)用非常廣泛。在FPGA高級(jí)應(yīng)用四的這個(gè)標(biāo)題下,我們將會(huì)從內(nèi)部存儲(chǔ)器到外部存儲(chǔ)器,介紹FIFOram、ddr幾種常用的存儲(chǔ)器設(shè)計(jì)。第一期我們介紹FIFOFIFO,全稱是first in first out (先入先出存儲(chǔ)隊(duì)列) 。在程序中
    發(fā)表于 06-28 09:27

    cortexM3和armv7m到底哪個(gè)是內(nèi)核哪個(gè)是架構(gòu)?

    cortexM3和armv7m到底哪個(gè)是內(nèi)核,哪個(gè)是架構(gòu)?他們有什么關(guān)系啊
    發(fā)表于 11-02 06:15

    高速異步FIFO的設(shè)計(jì)與實(shí)現(xiàn)

    本文主要研究了FPGA 芯片內(nèi)部的EBRSRAM 來(lái)實(shí)現(xiàn)異步FIFO 設(shè)計(jì)方案,重點(diǎn)闡述了異步FIFO 的標(biāo)志信號(hào)——空/滿狀態(tài)的設(shè)計(jì)思路,并且VHDL 語(yǔ)言實(shí)現(xiàn),最后進(jìn)行了仿真驗(yàn)
    發(fā)表于 01-13 17:11 ?40次下載

    異步FIFO的設(shè)計(jì)分析及詳細(xì)代碼

    本文首先對(duì)異步 FIFO 設(shè)計(jì)的重點(diǎn)難點(diǎn)進(jìn)行分析,最后給出詳細(xì)代碼。 一、FIFO簡(jiǎn)單講解 FIFO的本質(zhì)是RAM, 先進(jìn)先出 重要參數(shù):fifo
    發(fā)表于 11-15 12:52 ?8706次閱讀
    異步<b class='flag-5'>FIFO</b>的設(shè)計(jì)分析及詳細(xì)代碼

    如何使用FPGA內(nèi)部的RAM以及程序?qū)υ?b class='flag-5'>RAM的數(shù)據(jù)讀寫操作

    RAM是FPGA中常用的基礎(chǔ)模塊,可廣泛用于緩存數(shù)據(jù)的情況,同樣它也是ROM,FIFO的基礎(chǔ)。本實(shí)驗(yàn)將為大家介紹如何使用FPGA內(nèi)部的RAM以及程序?qū)υ?b class='flag-5'>RAM的數(shù)據(jù)讀寫操作。
    的頭像 發(fā)表于 02-08 15:50 ?1.4w次閱讀
    如何使用FPGA內(nèi)部的<b class='flag-5'>RAM</b>以及程序?qū)υ?b class='flag-5'>RAM</b>的數(shù)據(jù)讀寫操作

    FIFO的閾值如何設(shè)置

    FIFO是First in First out 的縮寫,一般是由寄存器reg或者ram搭起來(lái)的,相對(duì)于普通存儲(chǔ)器而言,FIFO沒有地址可操作的地址總線,因而使用比較方便,但是數(shù)據(jù)只能像水流一樣排隊(duì)進(jìn)排隊(duì)出。
    的頭像 發(fā)表于 08-19 09:02 ?2835次閱讀

    常見的流控機(jī)制之fifo與帶外流控

    FIFO(first in first out)是一種寄存器reg或者RAM實(shí)現(xiàn)的存儲(chǔ)結(jié)構(gòu),常用于存儲(chǔ)數(shù)據(jù)通道中的數(shù)據(jù)流,采用先入先出的數(shù)據(jù),當(dāng)下游模塊無(wú)法及時(shí)處理上流模塊輸出的數(shù)據(jù)時(shí),此時(shí)需要用
    的頭像 發(fā)表于 07-26 12:40 ?1612次閱讀
    常見的流控機(jī)制之<b class='flag-5'>fifo</b>與帶外流控

    FIFO的一些基礎(chǔ)知識(shí)

    FPGA廠商提供了豐富的IP核,基礎(chǔ)性IP核都是可以直接免費(fèi)調(diào)用的,比如FIFORAM等等。
    的頭像 發(fā)表于 08-07 15:41 ?2472次閱讀
    <b class='flag-5'>FIFO</b>的一些基礎(chǔ)知識(shí)

    同步FIFO和異步FIFO的區(qū)別 同步FIFO和異步FIFO各在什么情況下應(yīng)用

    同步FIFO和異步FIFO的區(qū)別 同步FIFO和異步FIFO各在什么情況下應(yīng)用? 1. 同步FIFO和異步
    的頭像 發(fā)表于 10-18 15:23 ?1766次閱讀
    天博百家乐官网的玩法技巧和规则 | 百家乐官网奥| 百家乐tie| 北京太阳城国际老年公寓| 泸水县| 择日自学24| 老虎机小游戏| 百家乐官网怎么玩啊| 长春百家乐官网的玩法技巧和规则| 百家乐技术交流群| bet365代理| 下载百家乐官网的玩法技巧和规则| 娱乐城百家乐打不开| 大发888娱乐场 ylc8| 百家乐官网游戏客户端| 黄金会百家乐赌城| 娱乐城百家乐官网论坛| 高档百家乐桌| 百家乐官网打庄技巧| 网上百家乐导航| 澳门盘口| 百家乐投注必胜法| 皇冠888线上投注| 24分金| 新葡京娱乐城怎么样| 棋牌百家乐官网有稳赚的方法吗| 网络百家乐官网诈骗| 涂山百家乐的玩法技巧和规则| 岑溪市| 百家乐庄闲必胜手段| 克东县| 百家乐国际娱乐场开户注册| 百家乐官网扑克牌耙| 赌片百家乐的玩法技巧和规则| 崇仁县| 百家乐破战| 澳门百家乐官网技巧| 百家乐技巧技巧| 宝马会百家乐官网娱乐城| 大发888王博| 百家乐太阳城小郭|