国产毛片a精品毛-国产毛片黄片-国产毛片久久国产-国产毛片久久精品-青娱乐极品在线-青娱乐精品

ASIC中的異步FIFO的實現

發布時間:2010-10-5 18:10    發布者:eetech
關鍵詞: ASIC , FIFO , 異步
1 引言

現代 IC(Integrated Circuit)設計的主導思想之一就是設計同步化,即對所有時鐘控制器件(如觸發器、RAM等)都采用同一個時鐘來控制。但由于現代IC芯片的規模越來越大,包含極其豐富的觸發器,不同電路的時鐘驅動源存在頻率和相位的差異,在實際的設計中實現完全同步化的設計非常困難,很多情況下不可避免地要完成數據在不同時鐘域間的傳遞(如高速模塊和低速模塊之間的數據交換)。這時,亞穩態問題是異步數據傳輸過程面臨的主要問題,如何避免亞穩態的產生,保持系統的穩定,順利完成數據的傳輸就成為一個重要的問題,這也是異步電路設計中最為棘手的問題。異步FIFO(First In First Out)是解決這個問題一種簡便、快捷的解決方案。

2 異步FIFO介紹

異步FIFO廣泛應用于計算機網絡工業中進行非同步數據傳送,這里的非同步是指發送用一種速率而接收用另一速率,因此異步FIFO有兩個不同的時鐘,一個為讀同步時鐘,一個為寫同步時鐘。

當數據從一個時鐘驅動的模塊進入另一個時鐘驅動的模塊時,問題就有可能出現了。例如當寫時鐘比讀時鐘快時,未讀走的數據有可能被新數據覆蓋,因而導至數據丟失。為此,必須增加一些控制信號和狀態信號,控制信號如push、pop,狀態信號如empty,almost-empty,full,almost-full等。

典型的異步FIFO由異步雙端口RAM和控制邏輯構成,后者包含讀指針和寫指針,如圖1。當FIFO中有數據而非空時,POP信號用于控制數據的讀出,所讀數據來自讀指針所指的dualportRAM中的存儲單元,并且讀指針加1。當讀指針趕上寫指針時,FIFO為空并且用empty信號來指示這種情況。當FIFO中有空間而非滿時,PUSH信號用于控制數據的寫入,所寫數據寫入寫指針所指的雙端口RAM中的存儲單元,并且寫指針加1。當寫指針趕上讀指針時,FIFO為滿并且用full信號來指示這種情況。



3 亞穩態問題

在數字集成電路中,觸發器要滿足setup/hold的時間要求。當一個信號被寄存器鎖存時,如果信號和時鐘之間不滿足這個要求,Q端的值是不確定的,并且在未知的時刻會固定到高電平或低電平。這個過程稱為亞穩態(Metastability)。

當數據信號通過兩個時鐘域的交界處時,將會分別由這兩個時鐘來控制信號的值。此時如果兩時鐘信號的敏感沿非常接近并超過了允許的額度,則將出現數據信號的不穩定,即電路陷入亞穩態,也稱為同步失敗。亞穩態是在兩時鐘敏感沿靠得很近、第二級時鐘敏感沿到來時其輸入數據不穩時發生,可將其視為僅僅是第二級觸發器輸入信號不穩定所導致的結果。只要使輸入信號穩定,就能解決亞穩態問題。不同時鐘域間數據傳遞的最重要問題就是亞穩態問題。下面從觸發器的物理特性方面對亞穩態進行描述。

觸發器進入亞穩態的時間可以用參數MTBF(mean time between failures)來描述,MTBF即觸發器采樣失敗的時間間隔,其計算公式為:



式中,tr為分辨時間(從時鐘沿開始),S、T0為觸發器參數,f是采樣時鐘頻率,a為異步事件觸發的頻率。

對于典型的0.25Lm工藝ASIC庫中的一個觸發器,取以下參數:

tr=2.3ns,S=0.31ns,T0=9.6as,f=100MHz,a=10MHz,MTBF=2.01d即觸發器每兩天便可能出現一次亞穩態。

由上面的推導可知,一個信號(a_clk)在過渡到另一個時鐘域(b_clk)時,如果僅僅用一個觸發器將其鎖存,那么用b_clk進行采樣的結果將可能是亞穩態。這也是信號在跨時鐘域時應該注意的問題。

4 亞穩態問題的解決

雖然亞穩態是不可避免的,但是,下面的設計改進可以將其發生的概率降低到一個可以接受的程度。

a、對寫地址/讀地址采用格雷碼。由實踐可知,同步多個異步輸入信號出現亞穩態的概率遠遠大于同步一個異步信號的概率。對多個觸發器的輸出所組成的寫地址/讀地址可以采用格雷碼如表一,其中4位格雷碼的最高位可以用來標示對那個ram進行操作,而實際的操作地址由4位格雷碼的最高兩位異或再加上后兩位得到。由于格雷碼每次只變化一位,采用格雷碼可以有效地減少亞穩態的產生。



b、采用觸發器來同步異步輸入信號,如圖2中的兩極觸發器可以將出現亞穩態的幾率降低到一個很小的程度。但是,正如圖2所示,這種方法同時帶來了對輸入信號的一級延時,需要在設計時鐘的時候加以注意。另外,雖然采用兩級時鐘同步可以在一定程度消除亞問題,但如果在信號從快時鐘域向慢時鐘域過渡的時候,如果信號變化太快,慢時鐘將可能無法對信號進行采樣。所以,在使用兩級時鐘同步的時候,應該使原始信號保持足夠長的時間,以便另一個時鐘域的鎖存器可以正確的對其進行采樣。



5 異步FIFO的VHDL實現

VHDL是硬件描述語言的一種,用于數字電子系統設計。設計者可用它進行各種級別的邏輯設計,可用它進行數字邏輯系統的仿真驗證、時序分析、邏輯綜合。它是目前應用最廣泛的一種硬件描述語言。目前VHDL語言已經得到多種EDA工具的支持,并且已經成為IEEE標準,因此利用VHDL語言進行電路設計可以節約開發成本和周期。下面以視頻轉換系統中的異步FIFO為例,用VHDL實現如下(假設存儲器的深度為128個像素,即256個字節):

讀地址產生模塊:







6 結論

本文作者創新點:本文討論了在ASIC設計中數據在不同時鐘之間傳遞數據所產生的亞穩態問題,并提出了一種新的異步FIFO的設計方法,并用VHDL語言進行描述,利用Altera公司的Cyclone系列的EP1C6進行硬件實現,該電路軟件仿真和硬件實現已經通過驗證,并應用到各種電路中。實踐證明它可以解決由于異步產生的錯誤,同時增加了應用的靈活性。
本文地址:http://www.qingdxww.cn/thread-30261-1-1.html     【打印本頁】

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

廠商推薦

  • Microchip視頻專區
  • 想要避免發生災難,就用MPLAB SiC電源仿真器!
  • 深度體驗Microchip自動輔助駕駛應用方案——2025巡展開啟報名!
  • 我們是Microchip
  • 利用模擬開發工具生態系統進行安全電路設計
  • 貿澤電子(Mouser)專區

相關視頻

關于我們  -  服務條款  -  使用指南  -  站點地圖  -  友情鏈接  -  聯系我們
電子工程網 © 版權所有   京ICP備16069177號 | 京公網安備11010502021702
快速回復 返回頂部 返回列表
主站蜘蛛池模板: 国产精品第13页 | 日韩欧美中 | 国产内地激情精品毛片在线一 | 亚洲永久在线 | 国产日韩欧美亚洲青青草原 | 在线观看成人网 | 欧洲色 | 香蕉久久久久 | 日本精品1在线区 | 欧美日韩一区二区在线观看 | 国产免费观看a大片的网站 国产免费高清在线精品一区 | 九九久久精品国产免费看小说 | 91果冻制片厂天美传媒 | 日韩一区国产二区欧美三区 | 色综合天天射 | 国产精品久久久久久久 | 日韩欧美高清在线 | 精品国产一级毛片大全 | 97成人资源 | 日韩影视在线 | 土地公土地婆免费观看全集 | 综合图区亚洲网友自拍 | 久热综合| 国产大战女模特在线视频 | 99热成人精品热久久66 | 一本伊在人香蕉线观新在线 | 亚洲国内精品久久 | 成人美女免费网站视频 | 男女那啥的视频免费 | 51国产午夜精品免费视频 | 91热久久| 土地公土地婆免费观看全集 | 国产日韩中文字幕 | 久久这里只精品国产99热 | 久久久黄色大片 | 亚洲系列国产系列 | 久久亚洲精品成人综合 | 亚洲婷婷综合网 | 欧美日韩另类国产 | 日本天天色 | 久久综合影院 |