專利名稱:基于李氏制約競爭計數編碼的異步fifo地址轉換電路的制作方法
技術領域:
本發明涉及微電子技術領域,特別是設計一種基于李氏制約競爭計數編碼的異步FIFO地址轉換電路。
背景技術:
在通訊處理系統中,經常需要進行不同時鐘域之間的數據傳輸。如果是多比特數據的傳輸,為了保證異步時鐘域之間傳輸時的數據完整性,一種通用的方法是使用異步FIFO,如圖I所示,數據在寫時鐘域中進入緩存,在讀時鐘域中被讀出,為了保證數據緩存的同時寫入和讀出時數據的一致和完整,在寫邏輯和讀邏輯中分別對寫地址和讀地址的相對位置進行邏輯比較,從而判斷出緩存的狀態(讀空或寫滿)。
由于讀時鐘的異步,讀和寫的地址指針需要分別進行時鐘域穿越。讀地址和寫地址的寬度都是多個比特,所以直接的時鐘穿越不能解決問題。為此,一種通用的做法是在穿越前(源時鐘域內)將二進制地址轉換成格雷碼(Gray Code),利用格雷碼的特性(相鄰數字只相差一個比特)進行時鐘穿越,在穿越(目標時鐘域)后再轉換成原來的二進制代碼進行比較。李氏編碼同格雷碼一樣,相鄰編碼間每次只有一位數據發生變化,從而從根本上消除了電路的競爭冒險現象。由于格雷碼不是一種權重碼,在用于計數時很不方便,沒有規律性,即缺乏特征序列,李碼本身即為制約競爭計數碼且產生便捷,因此用于對異步FIFO進行地址管理比格雷碼更有應用價值。李氏編碼與B⑶碼的比較如下表所示
表I李氏編碼與B⑶碼的比較
權利要求
1.一種基于李氏制約競爭計數編碼的異步FIFO地址轉換電路,其特征在于包括基于李氏編碼的寫邏輯電路、基于李氏編碼的讀邏輯電路、寫地址至讀時鐘域邏輯電路和讀地址至寫時鐘域邏輯電路,所述基于李氏編碼的寫邏輯電路包括異步FIFO寫地址產生電路、第一李氏編碼轉BCD碼電路及第一讀寫地址比較邏輯電路,所述基于李氏編碼的讀邏輯電路包括異步FIFO讀地址產生電路、第二李氏編碼轉B⑶碼電路及第二讀寫地址比較邏輯電路,其中 所述異步FIFO寫地址產生電路產生寫地址,通過寫地址至讀時鐘域邏輯電路將寫地址同步到讀時鐘域,并傳輸至基于李氏編碼的讀邏輯電路中的第二李氏編碼轉BCD碼電路及讀寫地址比較邏輯電路,產生讀空信號; 所述異步FIFO讀地址產生電路產生讀地址,通過讀地址至寫時鐘域邏輯電路將讀地址同步到寫時鐘域,并傳輸至基于李氏編碼的寫邏輯電路中的第一李氏編碼轉BCD碼電路及讀寫地址比較邏輯電路,產生寫滿信號。
2.根據權利要求I所述的基于李氏制約競爭計數編碼的異步FIFO地址轉換電路,其特征在于,所述異步FIFO寫地址產生電路包含第一反相反相8位循環移位寄存器、第二反相反相8位循環移位寄存器、第一 5位寫地址鎖存器、第一初始化預置開關、第二初始化預置開關、第一倒相器、第二倒相器、第三倒相器、第四倒相器、第五倒相器、第六倒相器、第一與門、第二與門和第一異或門,其中 第一反相8位循環移位寄存器的最高位和最低位通過第一倒相器首尾相接,第二反相8位循環移位寄存器的最高位和最低位通過第二倒相器首尾相接; 第二與門的輸出端分別接第一反相8位循環移位寄存器和第二反相8位循環移位寄存器的CLK移位控制端口 ; 所述第一反相8位循環移位寄存器被第一初始化預置開關預置為固定的特征序列01111111,所述第二反相8位循環移位寄存器被第二初始化預置開關預置為固定的特征序列 00011100 ; 第一反相8位循環移位寄存器的并行輸出最高端通過第一倒相器接其串行輸入端,第二反相8位循環移位寄存器的并行輸出最高端通過第二倒相器接其串行輸入端; 第二反相8位循環移位寄存器并行輸出的由低到高的第4位通過第四倒相器和第一 5位寫地址鎖存器的第四輸入端連接,第一反相8位循環移位寄存器并行輸出的由低位到高位的第4位通過第三倒相器和第一 5位寫地址鎖存器的第三輸入端連接,第二反相8位循環移位寄存器的最低位和第一 5位寫地址鎖存器的第二輸入端連接,第一反相8位循環移位寄存器的最低位和第一 5位寫地址鎖存器的第一輸入端連接; 第二反相8位循環移位寄存器并行輸出的第4位連接第一與門的第二輸入端,第一反相8位循環移位寄存器并行輸出的第4位連接第一與門的第三輸入端,第二反相8位循環移位寄存器的最低位連接第一與門的第一輸出端,第一反相8位循環移位寄存器的最低位通過第五倒相器連接第一與門的第四輸出端,第一與門的輸出端連接第一異或門的第一輸入端,第一 5位寫地址鎖存器的輸出端連接第一異或門的第二輸入端,第一異或門的輸出端連接第一 5位寫地址鎖存器的第五輸入端。
3.根據權利要求I所述的基于李氏制約競爭計數編碼的異步FIFO地址轉換電路,其特征在于,所述異步FIFO讀地址產生電路包含第三反相8位循環移位寄存器、第四反相8位循環移位寄存器、第二 5位讀地址鎖存器、第三初始化預置開關、第四初始化預置開關、第七倒相器、第八倒相器、第九倒相器、第十倒相器、第十一倒相器、第十二倒相器、第三與門、第四與門和第二異或門,其中 所述第三反相8位循環移位寄存器的最高位和最低位通過第七倒相器首尾相接,第四反相8位循環移位寄存器的最高位和最低位通過第八倒相器首尾相接; 第四與門分別連接第三反相8位循環移位寄存器和第四反相8位循環移位寄存器的CLK移位控制端口 ; 所述第三反相8位循環移位寄存器被第三初始化預置開關預置為固定的特征序列·01111111,所述第四反相8位循環移位寄存器被第四初始化預置開關預置為固定的特征序列 00011100 ; 第三反相8位循環移位寄存器的并行輸出最高端通過第七倒相器接其串行輸入端,第四反相8位循環移位寄存器的并行輸出最高端通過第八倒相器接其串行輸入端; 第四反相8位循環移位寄存器并行輸出的由低到高的第4位通過第十倒相器和第二 5位讀地址鎖存器的第四輸入端連接,第三反相8位循環移位寄存器并行輸出的由低位到高位的第4位通過第九倒相器和第二 5位讀地址鎖存器的第三輸入端連接; 第四反相8位循環移位寄存器并行輸出的最低位和第二 5位讀地址鎖存器的第二輸入端連接,第三反相8位循環移位寄存器并行輸出的最低位和第二 5位讀地址鎖存器的第一輸入端連接; 第四反相8位循環移位寄存器并行輸出的第4位連接第三與門的第二輸出端,第三反相8位循環移位寄存器并行輸出的第4位通過第十一倒相器連接第三與門的第三輸出端,第四反相8位循環移位寄存器并行輸出的第0位連接第三與門的第一輸出端、第三反相8位循環移位寄存器并行輸出的第0位通過第十一倒相器和第三與門的第四輸入端相接,第三與門的輸出端連接第二異或門的第一輸入端,第二 5位讀地址鎖存器的輸出端連接第二異或門的第二輸入端,第二異或門的輸出端連接第二 5位讀地址鎖存器的第五輸入端。
4.根據權利要求I所述的基于李氏制約競爭計數編碼的異步FIFO地址轉換電路,其特征在于所述第一李氏編碼轉BCD碼電路包含第一輸入寄存器、第一輸出寄存器和第一譯碼邏輯電路,所述第二李氏編碼轉BCD碼電路包含第二輸入寄存器、第二輸出寄存器和第二譯碼邏輯電路,其中 所述第一輸入寄存器的輸入端用于輸入待轉換的李氏編碼,并經同步時鐘信號同步后輸入第一譯碼邏輯電路;第一譯碼邏輯電路將前述經同步的李氏編碼進行譯碼后送入第一輸出寄存器; 所述第一輸出寄存器還連接有同步時鐘信號,并在其控制下輸出BCD碼;所述第一輸出寄存器還連接有能夠使電路復位的復位信號; 所述第二輸入寄存器的輸入端用于輸入待轉換的李氏編碼,并經同步時鐘信號同步后輸入第二譯碼邏輯電路;第二譯碼邏輯電路將前述經同步的李氏編碼進行譯碼后送入第二輸出寄存器; 所述第二輸出寄存器還連接有同步時鐘信號,并在其控制下輸出BCD碼;所述第二輸出寄存器還連接有能夠使電路復位的復位信號。
全文摘要
本發明公開了一種基于李氏制約競爭計數編碼的異步FIFO地址轉換電路,包括基于李氏編碼的寫邏輯電路、基于李氏編碼的讀邏輯電路、寫地址至讀時鐘域邏輯電路和讀地址至寫時鐘域邏輯電路。本發明所設計的基于李氏制約競爭計數編碼的異步FIFO地址轉換電路能夠使用李氏制約競爭計數碼對深度為16的異步FIFO進行地址轉換及管理,簡化地址產生電路并提高異步FIFO的可靠性。
文檔編號G06F5/06GK102799410SQ20121020252
公開日2012年11月28日 申請日期2012年6月19日 優先權日2012年6月19日
發明者李冰, 章旭東 申請人:東南大學