h1_key

當(dāng)前位置:首頁(yè) >新聞資訊 > 行業(yè)資訊>FPGA基礎(chǔ)知識(shí)同步FIFO篇
FPGA基礎(chǔ)知識(shí)同步FIFO篇
2023-04-10 1054次

  FPGA/ASIC中的FIFO

  FIFO緩沖區(qū)如何用于傳輸數(shù)據(jù)和跨時(shí)鐘域

  縮寫(xiě)FIFO代表 First In First Out。FIFO在FPGA和ASIC設(shè)計(jì)中無(wú)處不在,它們是基本的構(gòu)建模塊之一。而且它們非常方便!FIFO可用于以下任何目的:

  ●跨時(shí)鐘域

  ●在將數(shù)據(jù)發(fā)送到芯片外之前將其緩沖(例如,發(fā)送到DRAM或SRAM)

  ●緩沖數(shù)據(jù)以供軟件在以后查看

●存儲(chǔ)數(shù)據(jù)以備后用

 

  FIFO可以認(rèn)為是汽車可以駛過(guò)的單向隧道。隧道的盡頭是一個(gè)帶門(mén)的收費(fèi)站。門(mén)一旦打開(kāi),汽車便可以離開(kāi)隧道。如果那扇門(mén)從未打開(kāi),而更多的汽車?yán)^續(xù)進(jìn)入隧道,那么最終隧道將充滿汽車。這稱為FIFO溢出,通常這不是一件好事。FIFO的深度可以認(rèn)為是隧道的長(zhǎng)度。FIFO越深,在溢出之前可以容納更多的數(shù)據(jù)。FIFO也具有寬度,該寬度表示進(jìn)入FIFO的數(shù)據(jù)的寬度(以位數(shù)為單位)。下面是任何FIFO基本接口的圖像。當(dāng)您查看任何FIFO時(shí),總是會(huì)找到這些信號(hào)。通常,會(huì)有更多的信號(hào)添加其他功能,例如FIFO中的字?jǐn)?shù)計(jì)數(shù)。參見(jiàn)下圖:

  

 

 

  基礎(chǔ)FIFO

  FIFO可以分為寫(xiě)一側(cè)和讀一側(cè)。寫(xiě)入一側(cè)具有信號(hào)“寫(xiě)入使能wr_en”,“寫(xiě)入數(shù)據(jù)wr_data”和“ FIFO已滿fifo_full”。設(shè)計(jì)人員切勿寫(xiě)入已滿的FIFO!始終檢查FIFO已滿標(biāo)志,以確保有空間可以寫(xiě)入另一條數(shù)據(jù),否則您將丟失該數(shù)據(jù)。

  讀取的一側(cè)具有信號(hào)“讀取使能rd_en”,“讀取數(shù)據(jù)rd_data”和“ FIFO空f(shuō)ifo_empty”。設(shè)計(jì)人員切勿讀取空的FIFO!只要您遵循這兩個(gè)基本規(guī)則,您和FIFO就會(huì)相處融洽。我再說(shuō)一遍,因?yàn)樗鼈兪侨绱酥匾?/span>

  FIFO的兩個(gè)規(guī)則:

  ●永遠(yuǎn)不要寫(xiě)入完整的FIFO(溢出)

  ●永遠(yuǎn)不要從空的FIFO中讀取(下溢)

FIFO本身可以由FPGA或ASIC內(nèi)的專用邏輯組成,也可以由觸發(fā)器(分布式寄存器)創(chuàng)建。綜合工具將使用這兩種工具中的哪一種完全取決于您使用的FPGA供應(yīng)商以及代碼的結(jié)構(gòu)。只需知道,當(dāng)您使用專用邏輯塊時(shí),與使用基于寄存器的FIFO相比,它們具有更好的性能。FIFO是FPGA設(shè)計(jì)人員的基本構(gòu)建模塊之一,對(duì)于正確理解和正確使用至關(guān)重要!

 

  同步FIFO的設(shè)計(jì)

  為了簡(jiǎn)單起見(jiàn),先設(shè)計(jì)一個(gè)同步FIFO,僅帶有空滿標(biāo)志。在給出同步FIFO設(shè)計(jì)之前,有必要說(shuō)說(shuō)同步FIFO的原理,同步FIFO的設(shè)計(jì)很有必要,它是通往異步FIFO的基礎(chǔ),同步FIFO中的所有原理都理解了,異步FIFO中和同步FIFO相同的東西就不必再費(fèi)心思思考了,而是直接進(jìn)入重點(diǎn),如何控制空滿!

  FIFO是先進(jìn)先出的首字母縮寫(xiě),它描述了如何相對(duì)于時(shí)間或優(yōu)先級(jí)管理數(shù)據(jù)。在這種情況下,到達(dá)的第一個(gè)數(shù)據(jù)也將是從一組數(shù)據(jù)中離開(kāi)的第一個(gè)數(shù)據(jù)。FIFO緩沖區(qū)是一種讀/寫(xiě)存儲(chǔ)陣列,可自動(dòng)跟蹤數(shù)據(jù)進(jìn)入模塊的順序并以相同順序讀出數(shù)據(jù)。在硬件中,F(xiàn)IFO緩沖區(qū)用于同步目的。 它通常實(shí)現(xiàn)為循環(huán)隊(duì)列,并具有兩個(gè)指針:

  ●讀指針/讀地址寄存器

  ●寫(xiě)指針/寫(xiě)地址寄存器

  讀寫(xiě)地址最初都位于第一個(gè)存儲(chǔ)器位置,并且FIFO隊(duì)列為空。當(dāng)FIFO緩沖區(qū)的讀地址和寫(xiě)地址之間的差等于內(nèi)存陣列的大小時(shí),則FIFO隊(duì)列為Full(對(duì)于異步FIFO而言,可以設(shè)計(jì)多一位地址表示讀指針以及寫(xiě)指針)。

  FIFO可以分為同步時(shí)鐘還是異步時(shí)鐘,具體取決于是相同時(shí)鐘(同步)還是不同時(shí)鐘(異步)控制讀寫(xiě)操作。

  同步FIFO是指FIFO設(shè)計(jì),其中使用時(shí)鐘信號(hào)將數(shù)據(jù)值順序?qū)懭氪鎯?chǔ)陣列,并使用相同的時(shí)鐘信號(hào)從存儲(chǔ)陣列順序讀出數(shù)據(jù)值。圖1顯示了典型FIFO的操作流程。

  

 

 

再看一幅圖:

 

 

從這幅圖中我們可以得到如下信息:

  ●寫(xiě)指針WP總是指向下一個(gè)時(shí)鐘要寫(xiě)的地址;

  ●讀指針RP總是指向下一個(gè)時(shí)鐘要讀的地址;

  ●讀指針等于寫(xiě)指針的時(shí)候有可能為空,有可能為滿。

 

  • MDD辰達(dá)半導(dǎo)體推出低內(nèi)阻、高開(kāi)關(guān)頻率MOS管,解決車載快充的效率與溫升難題
  • 車載快充市場(chǎng)是一個(gè)隨著智能手機(jī)、平板電腦等移動(dòng)設(shè)備普及和汽車保有量持續(xù)增長(zhǎng)而迅速擴(kuò)張的細(xì)分市場(chǎng)。它已經(jīng)從早期的“點(diǎn)煙器轉(zhuǎn)換頭”發(fā)展成為一個(gè)技術(shù)驅(qū)動(dòng)、需求多樣的成熟品類。
    2025-10-21 12次
  • 一文讀懂衛(wèi)星通信器件種類、功能、廠商、發(fā)展趨勢(shì)
  • 衛(wèi)星通信是一個(gè)復(fù)雜的系統(tǒng),它通過(guò)人造地球衛(wèi)星作為中繼站,來(lái)轉(zhuǎn)發(fā)無(wú)線電信號(hào),實(shí)現(xiàn)兩個(gè)或多個(gè)地球站之間的通信。這個(gè)系統(tǒng)可以大致分為三部分:空間段(衛(wèi)星本身)、地面段(用戶終端和信關(guān)站)和連接它們的無(wú)線電波。
    2025-10-10 22次
  • 國(guó)產(chǎn)FPGA公司、核心產(chǎn)品、應(yīng)用介紹
  • 近年來(lái),國(guó)產(chǎn)FPGA發(fā)展迅速,在技術(shù)、生態(tài)和應(yīng)用方面都取得了長(zhǎng)足進(jìn)步,成為實(shí)現(xiàn)芯片國(guó)產(chǎn)替代的關(guān)鍵力量。以下是對(duì)主要國(guó)產(chǎn)FPGA公司的詳細(xì)介紹:
    2025-09-28 233次
  • 一文讀懂?dāng)?shù)字隔離器芯片的原理、運(yùn)用、品牌、選型要點(diǎn)
  • 隔離器芯片的核心目的是在兩個(gè)電氣系統(tǒng)之間提供電氣隔離,同時(shí)允許數(shù)字信號(hào)或數(shù)據(jù)(有時(shí)甚至是電源)穿越這個(gè)隔離屏障。隔離意味著兩側(cè)電路沒(méi)有直接的電氣連接(沒(méi)有共用的地線或電源),從而防止危險(xiǎn)的電壓、電流浪涌、地線環(huán)路干擾或噪聲從一側(cè)傳遞到另一側(cè),保護(hù)人員和設(shè)備安全,并確保信號(hào)的完整性。
    2025-08-21 66次
  • 一文讀懂DRAM(動(dòng)態(tài)隨機(jī)存取存儲(chǔ)器)工作原理、分類、主要廠商
  • DRAM是一種易失性半導(dǎo)體存儲(chǔ)器,用于計(jì)算機(jī)和其他數(shù)字設(shè)備作為主內(nèi)存。它的名字“動(dòng)態(tài)”源于需要周期性刷新存儲(chǔ)的數(shù)據(jù)。
    2025-06-19 133次

    萬(wàn)聯(lián)芯微信公眾號(hào)

    元器件現(xiàn)貨+BOM配單+PCBA制造平臺(tái)
    關(guān)注公眾號(hào),優(yōu)惠活動(dòng)早知道!
    10s
    溫馨提示:
    訂單商品問(wèn)題請(qǐng)移至我的售后服務(wù)提交售后申請(qǐng),其他需投訴問(wèn)題可移至我的投訴提交,我們將在第一時(shí)間給您答復(fù)
    返回頂部