FPGA研發(fā)之道(11)-設計不是湊波形(一)FIFO(上)

發(fā)布時(shí)間:2016-2-26 14:24    發(fā)布者:designapp
關(guān)鍵詞: FPGA , FIFO , RAM
  FIFO是FPGA內部一種常用的資源,可以通過(guò)FPGA廠(chǎng)家的的IP生成工具生成相應的FIFO。FIFO可分為同步FIFO和異步FIFO,其區別主要是,讀寫(xiě)的時(shí)鐘是否為同一時(shí)鐘,如使用一個(gè)時(shí)鐘則為同步FIFO,讀寫(xiě)時(shí)鐘分開(kāi)則為異步FIFO。一般來(lái)說(shuō),較大的FIFO可以選擇使用內部BLOCK RAM資源,而小的FIFO可以使用寄存器資源例化使用。
  一般來(lái)說(shuō),FIFO的主要信號包括:

  實(shí)際使用中,可編程滿(mǎn)的信號(XILINX 的FIFO)較為常用,ALTERA的FIFO中,可以通過(guò)寫(xiě)深度(即寫(xiě)入多少的數據值)來(lái)構造其可編程滿(mǎn)信號。通過(guò)配置threshold(門(mén)限)的值可以設定可編程滿(mǎn)起效時(shí)的FIFO深度。
  


  上圖所示為FIFO的模型,可以看做一個(gè)漏桶模型,其中輸入、輸出、滿(mǎn)信號、空信號、可編程滿(mǎn)等信號如圖所示,一目了然。 其中threshold信號可以看做水位線(xiàn),通過(guò)此信號可以設置可編程滿(mǎn)信號。FIFO的其他的信號也大都與其深度相關(guān),如有特殊需求,可通過(guò)廠(chǎng)商提供的IP生成工具的圖形界面進(jìn)行選擇使用。
  FIFO的使用場(chǎng)景有多種,其中主要如下所示:
  (1) 數據的緩沖,如模型圖所示,如果數據的寫(xiě)入速率高,但間隔大,且會(huì )有突發(fā);讀出速率小,但相對均勻。則通過(guò)設置相應深度的FIFO,可以起到數據暫存的功能,且能夠使后續處理流程平滑,避免前級突發(fā)時(shí),后級來(lái)不及處理而丟棄數據。
  (2) 時(shí)鐘域的隔離。對于不同時(shí)鐘域的數據傳遞,則數據可以通過(guò)FIFO進(jìn)行隔離,避免跨時(shí)鐘域的數據傳輸帶來(lái)的設計與約束上的復雜度。
  FIFO設計中有兩個(gè)需要注意事項,首先,不能溢出,即滿(mǎn)后還要寫(xiě)導致溢出,對于數據幀的操作來(lái)說(shuō),每次寫(xiě)入一個(gè)數據幀時(shí),如果每寫(xiě)一個(gè)寬度(FIFO的寬度)的數據,都要檢查滿(mǎn)信號,則處理較為復雜,如果在寫(xiě)之前沒(méi)滿(mǎn),寫(xiě)過(guò)程不檢查,則就容易導致溢出。因此可編程滿(mǎn)的設定尤為必要,通過(guò)設置可編程滿(mǎn)的水位線(xiàn),保證能夠存儲一個(gè)數據幀,這樣寫(xiě)之前檢查可編程滿(mǎn)即可。
  其次,另一更容易出錯的問(wèn)題,就是空信號。對于FIFO來(lái)說(shuō),在讀過(guò)程中出現空信號,則其沒(méi)有代表該值沒(méi)有被讀出,對于讀信號來(lái)說(shuō),如設定讀出一定長(cháng)度的值,只在一開(kāi)始檢測非空,如狀態(tài)機的觸發(fā)信號,容易出現過(guò)程中間也為空的信號,會(huì )導致某些數據未讀出,特別是寫(xiě)速滿(mǎn)而讀速快的場(chǎng)景下。 因此rden與!empty信號要一起有效才算將數據讀出。
  空信號處理相對容易出錯,懶人自有笨方法,下面介紹一種應用于數據幀處理的FIFO使用方式,只需在讀開(kāi)始檢測空信號即可,可以簡(jiǎn)化其處理讀數據的流程:
  


  其處理結構如上圖所示,數據緩存以大FIFO(BLOCK RAM實(shí)現)為主,而每存儲完畢一個(gè)數據幀向小FIFO(寄存器實(shí)現)內寫(xiě)入值。當小FIFO標示非空時(shí),則標示大FIFO中已存儲一個(gè)整幀。則下一級模塊可以只需檢測小FIFO非空時(shí),從而讀出一個(gè)整幀,過(guò)程中大FIFO一直未非空,可以不用處理非空信號,從而簡(jiǎn)化設計和驗證的流程。
  此外還有FIFO其他應用方式,下節接著(zhù)介紹。(未完待續)
                               
               
本文地址:http://selenalain.com/thread-161306-1-1.html     【打印本頁(yè)】

本站部分文章為轉載或網(wǎng)友發(fā)布,目的在于傳遞和分享信息,并不代表本網(wǎng)贊同其觀(guān)點(diǎn)和對其真實(shí)性負責;文章版權歸原作者及原出處所有,如涉及作品內容、版權和其它問(wèn)題,我們將根據著(zhù)作權人的要求,第一時(shí)間更正或刪除。
您需要登錄后才可以發(fā)表評論 登錄 | 立即注冊

相關(guān)視頻

關(guān)于我們  -  服務(wù)條款  -  使用指南  -  站點(diǎn)地圖  -  友情鏈接  -  聯(lián)系我們
電子工程網(wǎng) © 版權所有   京ICP備16069177號 | 京公網(wǎng)安備11010502021702
快速回復 返回頂部 返回列表
午夜高清国产拍精品福利|亚洲色精品88色婷婷七月丁香|91久久精品无码一区|99久久国语露脸精品|动漫卡通亚洲综合专区48页