下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
異步FIFO的設(shè)計(jì)分析及詳細(xì)代碼本文首先對(duì)異步FIFO設(shè)計(jì)的重點(diǎn)難點(diǎn)進(jìn)行分析,最后給出詳細(xì)代碼。一、FIFO簡單講解FIFO的本質(zhì)是RAM,先進(jìn)先出
重要參數(shù):fifo深度(簡單來說就是需要存多少個(gè)數(shù)據(jù))
fifo位寬(每個(gè)數(shù)據(jù)的位寬)FIFO有同步和異步兩種,同步即讀寫時(shí)鐘相同,異步即讀寫時(shí)鐘不相同同步FIFO用的少,可以作為數(shù)據(jù)緩存異步FIFO可以解決跨時(shí)鐘域的問題,在應(yīng)用時(shí)需根據(jù)實(shí)際情況考慮好fifo深度即可本次要設(shè)計(jì)一個(gè)異步FIFO,深度為8,位寬也是8.代碼是學(xué)習(xí)SimulationandSynthesisTechniquesforAsynchronousFIFODesignCliffordE.Cummings,SunburstDesign,Inc.這篇文章的,百度搜搜很容易找到,雖然是英文的但是寫的確實(shí)值得研究。下面我會(huì)對(duì)設(shè)計(jì)的要點(diǎn)進(jìn)行分析,也是對(duì)自己學(xué)習(xí)過程的一個(gè)總結(jié),希望能和大家交流共同進(jìn)步。二、設(shè)計(jì)要點(diǎn)解析1、讀空信號(hào)如何產(chǎn)生?寫滿信號(hào)如何產(chǎn)生?
讀空信號(hào):復(fù)位的時(shí)候,讀指針和寫指針相等,讀空信號(hào)有效(這里所說的指針其實(shí)就是讀地址、寫地址)
當(dāng)讀指針趕上寫指針的時(shí)候,寫指針等于讀指針意味著最后一個(gè)數(shù)據(jù)被讀完,此時(shí)讀空信號(hào)有效寫滿信號(hào):當(dāng)寫指針比讀指針多一圈時(shí),寫指針等于讀指針意味著寫滿了,此時(shí)寫滿信號(hào)有效
我們會(huì)發(fā)現(xiàn)讀空的條件是寫指針等于讀指針,寫滿的條件也是寫指針等于讀指針,到底如何區(qū)分呢?解決方法:將指針的位寬多定義一位
舉個(gè)例子說明:假設(shè)要設(shè)計(jì)深度為8的異步FIFO,此時(shí)定義讀寫指針只需要3位(2^3=8)就夠用了,
但是我們?cè)谠O(shè)計(jì)時(shí)將指針的位寬設(shè)計(jì)成4位,最高位的作用就是區(qū)分是讀空還是寫滿,具體理論1如下
當(dāng)最高位相同,其余位相同認(rèn)為是讀空
當(dāng)最高位不同,其余位相同認(rèn)為是寫滿注意:理論1試用的是二進(jìn)制數(shù)之間的空滿比較判斷。但是這篇文章中確不是這樣比較的,而是用的理論2,這里我解釋一下由于文章在設(shè)計(jì)中判斷是讀指針是否等于寫指針的時(shí)候,用的是讀寫指針的格雷碼形式(為什么用格雷碼后面解釋),此時(shí)若用上面的理論1就會(huì)出問題,因?yàn)楦窭状a是鏡像對(duì)稱的,若只根據(jù)最高位是否相同來區(qū)分是讀空還是寫滿是有問題的,詳情我會(huì)慢慢說,請(qǐng)看圖1綠色框起來的是0--15的格雷碼,用紅線將格雷碼分為上下兩部分通過觀察格雷碼相鄰位每次只有1位發(fā)生變化,且上下兩部分,除了最高位相反,其余位全都關(guān)于紅線鏡像對(duì)稱,
7-->8,格雷碼從0100-->1100,只有最高位發(fā)生變化其余位相同
6-->9,格雷碼從0101-->1101,只有最高位發(fā)生變化其余位相同以此類推,為什么要說鏡像對(duì)稱呢?試想如果讀指針指向8,寫指針指向7,我們可以知道此時(shí)此刻并不是讀空狀態(tài)也不是寫滿狀態(tài)但是如果在此刻套用理論1來判斷,看會(huì)出現(xiàn)什么情況,我們來套一下7的格雷碼與8的格雷碼的最高位不同,其余位相同,所以判斷出為寫滿。這就出現(xiàn)誤判了,同樣套用在6和9,5和10等也會(huì)出現(xiàn)誤判。因此用格雷碼判斷是否為讀空或?qū)憹M時(shí)應(yīng)使用理論2,看最高位和次高位是否相等,具體如下:
當(dāng)最高位和次高位相同,其余位相同認(rèn)為是讀空
當(dāng)最高位和次高位不同,其余位相同認(rèn)為是寫滿補(bǔ):理論2這個(gè)判斷方法適用于用格雷碼判斷比較空滿在實(shí)際設(shè)計(jì)中如果不想用格雷碼比較,就可以利用格雷碼將讀寫地址同步到一個(gè)時(shí)鐘域后再將格雷碼再次轉(zhuǎn)化成二進(jìn)制數(shù)再用理論1進(jìn)行比較就好了。。圖12、由于是異步FIFO的設(shè)計(jì),讀寫時(shí)鐘不一樣,在產(chǎn)生讀空信號(hào)和寫滿信號(hào)時(shí),會(huì)涉及到跨時(shí)鐘域的問題,如何解決?跨時(shí)鐘域的問題:上面我們已經(jīng)提到要通過比較讀寫指針來判斷產(chǎn)生讀空和寫滿信號(hào)
但是讀指針是屬于讀時(shí)鐘域的,寫指針是屬于寫時(shí)鐘域的,而異步FIFO的讀寫時(shí)鐘域不同,是異步的,
要是將讀時(shí)鐘域的讀指針與寫時(shí)鐘域的寫指針不做任何處理直接比較肯定是錯(cuò)誤的,因此我們需要進(jìn)行同步處理以后仔進(jìn)行比較
解決方法:兩級(jí)寄存器同步+格雷碼同步的過程有兩個(gè):
(1)將
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度體育健身APP開發(fā)與健身數(shù)據(jù)跟蹤合同3篇
- 2025版二婚離婚協(xié)議起草與個(gè)人隱私保護(hù)合同
- 2024年中國三節(jié)韓式特組畫筒市場(chǎng)調(diào)查研究報(bào)告
- 2024年版房屋建筑工程施工協(xié)議標(biāo)準(zhǔn)模板版B版
- 2025至2030年中國高速管式分離機(jī)行業(yè)投資前景及策略咨詢研究報(bào)告
- 2024年門窗行業(yè)人力資源外包服務(wù)合同范本2篇
- 2025版?zhèn)€人房屋買賣定金及環(huán)保評(píng)估合同3篇
- 線性控制課程設(shè)計(jì)
- 2025年度環(huán)保行業(yè)集體合同與勞動(dòng)合同簽訂與實(shí)施規(guī)范3篇
- 電力系統(tǒng) 課程設(shè)計(jì)改革
- 履帶吊司機(jī)安全技術(shù)交底
- 班級(jí)管理(第3版)教學(xué)課件匯總?cè)纂娮咏贪?完整版)
- 2022年度母嬰護(hù)理師技能試卷題庫
- 玻璃采光頂施工工藝
- 2024年義務(wù)教育國家課程設(shè)置實(shí)施方案
- 某乳業(yè)公司價(jià)格策略研究
- T∕CIAPS 0012-2021 磷酸鐵鋰電池壽命加速循環(huán)試驗(yàn)方法
- 多聯(lián)機(jī)空調(diào)安裝技術(shù)交底記錄大全
- 低壓配電柜GGD技術(shù)規(guī)范方案設(shè)計(jì)
- 汽車維修項(xiàng)目明細(xì)表76608
- 高中地理課堂教學(xué)評(píng)價(jià)方案
評(píng)論
0/150
提交評(píng)論