《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 模擬設(shè)計 > 設(shè)計應(yīng)用 > 異步FIFO設(shè)計
異步FIFO設(shè)計
摘要: 異步FIFO設(shè)計_電子技術(shù)交流網(wǎng)本文介紹如何應(yīng)用美國QUICKLOGIC公司的QUICKRAM器件設(shè)計高速、高可靠異步FIFO(Asynchronous FIFO)。
關(guān)鍵詞: 接口IC 異步 FIFO QUICKRAM
Abstract:
Key words :

    異步FIFO廣泛地用于計算機網(wǎng)絡(luò)工業(yè)中進行非同步數(shù)據(jù)傳送,這里的非同步指按一種速率發(fā)送而按另一速率接收。因此異步FIFO有兩個不同的時鐘,一個為讀同步時鐘,一個為寫同步時鐘。

    當數(shù)據(jù)從一個時鐘驅(qū)動的模塊進入另一個時鐘驅(qū)動的模塊時,一個需仔細解決的問題就出現(xiàn)了。例如當寫時鐘比讀時鐘快時,未讀走數(shù)據(jù)有可能被新數(shù)據(jù)覆蓋,因而導致數(shù)據(jù)丟失。為了解決這個問題,就必須增加一些控制信號和狀態(tài)信號,控制信號如pusb、pop,狀態(tài)信號如empty,almostempty,full,almost-full。

功能描述

    典型的異步FIFO(AsynFIFO)都是由異步雙端口RAM和控制邏輯構(gòu)成,控制邏輯包含讀指針和寫指針。

    當FIFO中有數(shù)據(jù)而非空時,POP信號(同步于讀時鐘)用于控制數(shù)據(jù)的讀出,所讀數(shù)據(jù)來自讀指針所指的(AUAL PORT RAM)中的存儲單元,并且讀指針加一。當讀指針趕上寫指針時,F(xiàn)IFO為空并且用empty信號(同步于讀時鐘)來指示這種情況。

    當FIFO中有空間而非滿時,PUSH信號(同步于寫時鐘)用于控制數(shù)據(jù)的寫入,所寫數(shù)據(jù)寫入寫指針所指的雙端口RAM中的存儲單元,并且寫指針加一。當寫指針趕上讀指針時,F(xiàn)IFO為滿足并且用full信號(同步于寫時鐘)來指示這種情況。

    當FIFO中只剩不足三個數(shù)據(jù)時,almost-empty有效(同步于讀時鐘)。類似地,當FIFO中還有不足四個空位時almost-full將有效(同步于寫時鐘)。用戶可根據(jù)需要修改讀、寫側(cè)的計數(shù)器初始值,從而確定所需要的almost-empty和almost-full提前量。例如當計數(shù)器初始化為7時,almost-empty和almost-full將分別比empty和full提前7個位置。讀側(cè)和寫側(cè)的狀態(tài)機將根據(jù)內(nèi)部比較器的輸出來確定這些狀態(tài)信號。每側(cè)的狀態(tài)機都有兩上D觸發(fā)器,構(gòu)成雙同步,這樣的設(shè)計可大幅度提高系統(tǒng)的可靠性,使得平均元故障時間(MTBF)可大于100年。

結(jié)構(gòu)

    圖1為AsynFIFO的頂層設(shè)計框圖(Quicklogic免費提供全部設(shè)計文件),并給出了各相模塊的設(shè)計文件名。圖中各模塊可根據(jù)要求修改,以增加FIFO的寬度和深度。請注意,本文圖中沒有給出讀側(cè)和寫側(cè)的狀態(tài)機。

RAM塊

    圖1中用了一個64×32的RAM塊。該RAM塊由Verilog代碼定義,該代碼由SpDE內(nèi)的RAM/ROM/FIFO向?qū)ё詣赢a(chǎn)生。在向?qū)е杏脩艨勺杂芍付ㄋ璧膶挾群蜕疃龋驅(qū)ё詣赢a(chǎn)生所需的Verilog/VHDL代碼和原理圖中所需的symbol。

比較器

    參考設(shè)計中的比較器為5位,采用純原理圖方法輸入。當用戶修改了RAM塊的深度時,比較器的寬度也要與之對應(yīng)。例如當FIFO深度為256時,地址須為8位,因而是比較器也應(yīng)為8位。

格雷碼計數(shù)器

    為了提高MTFB,設(shè)計中采用了格雷碼計數(shù)器,該計數(shù)器為5位,采用Verilog/VHDL語言實現(xiàn)。它們可以被改成6位、7位、8位、9位,以對應(yīng)深度為64、128、256、512的FIFO。

鎖存器

    圖中的鎖存器為verilog/VHDL語言所寫,讀側(cè)有三個,寫側(cè)有一個,用戶可自由地修改其寬度。它們用于狀態(tài)、控制信號的產(chǎn)生。

性能

    RARTS:QuickRAM family

    AREA:48 buffer cells

    Speed:write colck(WCLK)=136MHz,read clock(RCLK)=129MHz

結(jié)論

    采用QuickRAM器件實現(xiàn)異步FIFO方便靈活,并且速度快,成本低,還可以實現(xiàn)非常規(guī)深度和寬度的專用FIFO。


 

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。
主站蜘蛛池模板: а天堂中文最新一区二区三区| 成年女人免费播放影院| 国产精品电影一区| 么公的好大好深视频好爽想要 | 国产午夜精品久久久久免费视| 中文字幕第7页| 老熟女五十路乱子交尾中出一区| 嫩草影院在线播放www免费观看| 制服美女视频一区| 91精品国产综合久久久久久| 日韩免费在线视频| 动漫精品专区一区二区三区不卡| 50岁老女人的毛片免费观看| 日本亚洲高清乱码中文在线观看| 偷自拍亚洲视频在线观看99| 色综合天天综合中文网| 成人区人妻精品一区二区不卡网站| 亚洲欧美日韩精品久久| 蜜臀AV在线播放| 新97人人模人人爽人人喊| 国产AV一区二区三区传媒| 99久久精品费精品国产| 怡红院亚洲色图| 四虎影永久在线高清免费| 97影院九七理论片男女高清| 久久中文字幕网站篠田优| 中文字幕乳授乳奶水电影小说 | 大伊香蕉精品一区视频在线 | aaaaaa级特色特黄的毛片| 激情吃奶吻胸免费视频xxxx| 国产激情一区二区三区成人91| 中文字幕日韩精品在线| 欧美白人最猛性xxxxx| 国产精品漂亮美女在线观看| 久久久无码中文字幕久...| 燃情仕途小说全文阅读免费无弹窗下载 | 欧美人妻精品一区二区三区 | 亚洲一区无码中文字幕| 欧美videos极品| 日韩精品无码一区二区三区不卡 | 中国日本欧美韩国18|