一種誤碼圖案生成電路及使用該電路的解碼電路的製作方法
2023-07-18 05:59:31 1
專利名稱:一種誤碼圖案生成電路及使用該電路的解碼電路的製作方法
技術領域:
本發明涉及數字通訊領域,尤其涉及FEC(前向糾錯)技術的集成電路晶片設計,具體地說,涉及一種可減小FEC糾錯編碼晶片設計面積的誤碼圖案生成電路及使用該電路的解碼電路。
RS(255,239)是G.975規定的標準FEC糾錯編碼方式。
圖1是RS(255,239)糾錯編碼晶片設計框圖。如圖所示,糾錯編碼晶片包括編碼模塊1、伴隨式計算模塊2、迭代運算模塊3、求誤碼位置模塊4、誤碼圖案生成模塊5、FIFO(先入先出)緩衝器6和運算器7;待編碼輸入編碼模塊1,已編碼輸出編碼模塊1;待解碼輸入FIFO緩衝器6,同時輸入伴隨式計算模塊2,經伴隨式計算模塊2、迭代運算模塊3、求誤碼位置模塊4順序處理後輸出表示FEC幀中發生誤碼的符號位置的error_add(誤碼位置圖案);伴隨式計算模塊2、迭代運算模塊3、求誤碼位置模塊4順序相連共同構成誤碼圖案生成模塊5的上遊電路;符號to_decode表示經由FIFO緩衝器6延時輸出的待解碼;誤碼位置圖案error_add輸入誤碼圖案生成模塊5,經誤碼圖案生成模塊5處理後輸出FEC幀的誤碼圖案error_ptn,待解碼to_decode和FEC幀的誤碼圖案error_ptn經運算器7運算獲得已解碼,完成FEC的解碼糾錯功能。
在現有技術中誤碼圖案生成模塊5有兩種常用解決方案,如圖2所示是誤碼圖案生成模塊5的實現方案一的設計框圖。該技術方案包括結構完全相同的上下兩支對稱電路,兩支對稱電路分別包括錯誤值計算模塊55和255*8的存儲器53;該發明方案利用開關51輪流選擇上支路和下支路,將誤碼位置圖案error_add輸入所選擇的支路,還利用開關52將開關51所選擇支路產生的誤碼圖案error_ptn輸出,完成錯誤圖樣的計算、輸出。
該方案簡單可靠,容易設計和調試,其特點在於RS(255,239)解碼過程中,誤碼圖案生成模塊5的上遊電路的最大處理延時大於255個時鐘周期,即大於一個FEC幀長,而小於兩個FEC幀長。用兩個對稱電路輪流工作很好地利用了這一點。在對錯誤值的存儲、輸出設計上,該方案採用255*8的存儲器來存儲一個FEC幀的錯誤圖樣,然後順序輸出,與待解碼運算,完成糾錯解碼。
如圖3所示是誤碼圖案生成模塊5的實現方案二的設計框圖。該技術方案同樣包括結構完全相同的上下兩支對稱電路,兩支對稱電路分別包括錯誤值計算模塊55和8*8的存儲器54,以及地址寄存器56、計數器57和比較器58;該發明方案利用開關51輪流選擇上支路和下支路,將誤碼位置圖案error_add輸入所選擇的支路,還利用開關52將開關51所選擇支路產生的誤碼圖案error_ptn輸出,完成錯誤圖樣的計算、輸出。
該技術方案是對前述技術方案的一個改進。它的改進點在於誤碼的存儲、輸出採用8*8的存儲器54來存儲一個FEC的最大8個誤碼。解碼電路是流水作業,沒有誤碼時,錯誤地址是沒有的,我們定義誤碼位置是1-255,如果誤碼位置為零,則表示沒有誤碼,這一幀的數據(255個字節)的誤碼圖案可以不進行計算,直接等下一幀就可以了。當計算出誤碼時,將誤碼值順序寫入8個存儲單元。沒有發生錯誤的字節的誤碼值為0,由幾個誤碼(最大是8個字節)和0構成長度為255的誤碼圖案error_ptn。在誤碼位置圖案error_add傳給錯誤值計算模塊55的同時,地址寄存器56也獲得了錯誤地址。地址寄存器56和計數器57分別同時與比較器58相連,當error_ptn輸出時,計數器工作,當計數器的值和地址寄存器的值相等時,比較器58輸出一個脈衝將8*8的存儲器54裡的錯誤值順序讀出,形成error_ptn誤碼圖案。
面積儘量小是集成電路晶片設計的原則,上述誤碼圖案生成模塊的實現方案二雖然有效地改進了誤碼圖案生成模塊的實現方案一,使RS(255,239)糾錯編碼晶片的面積減小,但是其晶片面積仍然太大,佔用資源仍然太多,而且如果該設計採用FPGA實現,面積還將至少增加50%,並因為邏輯單元數目的增加而增加成本。
發明內容
本發明的目的在於進一步減小FEC糾錯編碼晶片的面積,降低設計和生產成本,提出一種誤碼圖案生成電路及使用該電路的解碼電路。
為實現上述目的,本發明提出一種誤碼圖案生成電路,用於根據輸入的誤碼位置圖案計算並生成誤碼圖案,它包括錯誤值計算模塊、切換開關、存儲與輸出電路;所述存儲與輸出電路包括結構完全相同的上下兩支對稱電路及可選擇連接於上支路或下支路的開關;所述上下兩支對稱電路分別包括存儲器組;其特徵是誤碼位置圖案直接順序輸入所述錯誤值計算模塊,所述錯誤值計算模塊計算輸出的值通過所述切換開關被順序寫入所述上支對稱電路或下支對稱電路中的存儲器組,所述存儲器組中的數據通過所述開關順序輸出構成誤碼圖案。
一種使用上述誤碼圖案生成電路的解碼電路,包括伴隨式計算模塊、迭代運算模塊、求誤碼位置模塊、誤碼圖案生成模塊、先入先出緩衝器和運算器;待解碼輸入所述伴隨式計算模塊,經所述伴隨式計算模塊、所述迭代運算模塊、所述求誤碼位置模塊順序處理後輸出表示示前向糾錯幀中發生誤碼的符號位置的誤碼位置圖案;所述誤碼圖案生成模塊將所述誤碼位置圖案處理後生成誤碼圖案;經所述先入先出緩衝器延時輸出的待解碼和所述誤碼圖案經所述運算器運算獲得已解碼;所述誤碼圖案生成模塊包括錯誤值計算模塊、切換開關、存儲與輸出電路;所述存儲與輸出電路包括結構完全相同的上下兩支對稱電路及可選擇連接於上支路或下支路的開關;所述上下兩支對稱電路分別包括存儲器組;其特徵是所述誤碼位置圖案直接順序輸入所述錯誤值計算模塊,所述錯誤值計算模塊計算輸出的值通過所述切換開關被順序寫入所述上支對稱電路或下支對稱電路中的存儲器組,所述存儲器組中的數據通過所述開關順序輸出構成誤碼圖案,供後續電路生成解碼結果。
本發明將誤碼位置圖案直接順序輸入同一個錯誤值計算模塊進行計算,而不是通過切換開關分別送到兩個錯誤值計算模塊,充分利用了錯誤值計算模塊的處理能力,在對上遊業務一點都不影響的情況下,最大限度地節省了資源。因為該模塊的處理速度可以滿足實際需求,所以該模塊的共用不會導致任何負面的影響。
圖2是現有技術中誤碼圖案生成模塊的實現方案一的設計框圖。
圖3是現有技術中誤碼圖案生成模塊的實現方案二的設計框圖。
圖4是本發明誤碼圖案生成模塊的設計框圖。
本實施例是對原有技術方案二的一個重要改進,注意到錯誤值計算模塊55的處理速度很快,根本用不了一個FEC幀長的時間,不會由於這個模塊的共用而引起數據阻塞,因此本實施例只使用一個錯誤值計算模塊55,再將方案二中的存儲、輸出部分進行複製,形成上下兩支電路。
如圖4所示的是本實施例誤碼圖案生成模塊5的設計框圖,包括錯誤值計算模塊55,雙路開關501和開關52,還包括結構完全相同的上下兩支對稱電路,兩支對稱電路分別包括8*8的存儲器54,地址寄存器56、計數器57和比較器58。
假設雙路開關501連接於上支路,誤碼位置圖案error_add輸入錯誤值計算模塊55計算,經過計算得出錯誤值後,通過雙路開關501其中的一路,將錯誤值順序寫入8*8的存儲器54的8個存儲單元。誤碼位置圖案error_add經過雙路開關501的另一路直接輸入地址寄存器56。地址寄存器56和計數器57的值輸入比較器58,比較器58輸出順序讀出脈衝給8*8的存儲器54。在錯誤值計算模塊55的輸出順序寫入8*8的存儲器54的同時,計數器57開始計數,當計數器57的值和地址寄存器56的值相等時,比較器58輸出順序讀出脈衝將8*8的存儲器54裡的錯誤值通過開關52順序讀出,形成誤碼圖案error_ptn。單路開關52在誤碼圖案輸出以後發生翻轉(由上到下)。
如果雙路開關501連接於下支路,工作過程也相同。
本實施例中8*8的存儲器54也可以改用其它容量的存儲器。
本實施例將誤碼位置圖案error_add輸入同一個錯誤值計算模塊55進行計算,使得誤碼圖案生成模塊5中只有一個錯誤值計算模塊55,充分利用了錯誤值計算模塊55的處理能力,最大限度地節省了資源。同時,本實施例採用上、下支路中8*8的存儲器54來分別存儲一個FEC的最大8個誤碼,當計數器的值和地址寄存器的值相等時,將8*8的存儲器54裡的誤碼圖案error_ptn通過開關52順序讀出,充分利用了誤碼圖案生成模塊5的上遊電路的延時。
本實施例比現有技術中實現方案一節約200%的資源,比現有技術中實現方案二節約60%的資源,晶片面積會減少約8×(255-8)=1976個存儲單元。本發明採用雙路開關在將送給錯誤值計算模塊的同時存儲該地址,用於計數比較,使整個FEC晶片電路的結構更加緊湊。本實施例經過仿真模擬證明可靠可行。
本發明的另一個實施例是對現有技術中方案一的改進,即在方案一中共享錯誤值計算模塊55,將誤碼位置圖案error_add直接順序輸入錯誤值計算模塊55進行計算,利用切換開關輪流選擇上支路和下支路,上支路和下支路分別包括255*8的存儲器53,將錯誤值計算模塊55輸出的錯誤值順序寫入所選擇的支路中的255*8的存儲器53中,255*8的存儲器53裡的錯誤值通過開關52順序讀出,形成誤碼圖案error_ptn。單路開關52在誤碼圖案輸出以後發生翻轉(由上到下或由下到上)。本實施例未在附圖中示出。
本發明可以通過分立元件電路、集成電路晶片或軟體實現,無論哪種實現方式,都屬於本發明的保護範圍。
權利要求
1.一種誤碼圖案生成電路,用於根據輸入的誤碼位置圖案(error_add)計算並生成誤碼圖案(error_ptn),它包括錯誤值計算模塊(55)、切換開關(501)、存儲與輸出電路;所述存儲與輸出電路包括結構完全相同的上下兩支對稱電路及可選擇連接於上支路或下支路的開關(52);所述上下兩支對稱電路分別包括存儲器組(54);其特徵是誤碼位置圖案(error_add)直接順序輸入所述錯誤值計算模塊(55),所述錯誤值計算模塊(55)計算輸出的值通過所述切換開關(501)被順序寫入所述上支對稱電路或下支對稱電路中的存儲器組(54),所述存儲器組(54)中的數據通過所述開關(52)順序輸出構成誤碼圖案(error_ptn)。
2.如權利要求1所述的誤碼圖案生成電路,其特徵是所述切換開關(501)採用雙路開關,所述上下兩支對稱電路分別還包括地址寄存器(56)、計數器(57)和比較器(58);所述誤碼位置圖案(error_add)輸入所述錯誤值計算模塊(55)的同時還通過所述雙路開關(501)的一路輸入所述上支對稱電路或下對稱電支路中的所述地址寄存器(56),錯誤值計算模塊(55)的輸出通過所述雙路開關(501)的另一路與所述地址寄存器(56)所在的同一支對稱電路中的存儲器組(54)連接;所述地址寄存器(56)的值和所述計數器(57)的值輸入比較器(58),比較器(58)在所述地址寄存器(56)的值和所述計數器(57)的值相等時輸出順序讀出脈衝給所述存儲器組(54)。
3.如權利要求1所述的誤碼圖案生成電路,其特徵是所述切換開關(501)採用單路開關(51),所述上支對稱電路或下支對稱電路中的所述存儲器組(54)是容量為255*8的存儲器(53)。
4.如權利要求2所述的誤碼圖案生成電路,其特徵是所述上支對稱電路或下支對稱電路中的所述存儲器組(54)是容量為8*8的存儲器(53)。
5.一種解碼電路,包括伴隨式計算模塊(2)、迭代運算模塊(3)、求誤碼位置模塊(4)、誤碼圖案生成模塊(5)、先入先出(FIFO)緩衝器(6)和運算器(7);待解碼輸入所述伴隨式計算模塊(2),經所述伴隨式計算模塊(2)、所述迭代運算模塊(3)、所述求誤碼位置模塊(4)順序處理後輸出表示前向糾錯(FEC)幀中發生誤碼的符號位置的誤碼位置圖案(error_add);所述誤碼圖案生成模塊(5)將所述誤碼位置圖案(error_add)處理後生成誤碼圖案(error_ptn);經所述先入先出(FIFO)緩衝器(6)延時輸出的待解碼和所述誤碼圖案(error_ptn)經所述運算器(7)運算獲得已解碼;,所述誤碼圖案生成模塊(5)包括錯誤值計算模塊(55)、切換開關(501)、存儲與輸出電路;所述存儲與輸出電路包括結構完全相同的上下兩支對稱電路及可選擇連接於上支路或下支路的開關(52);所述上下兩支對稱電路分別包括存儲器組(54);其特徵是所述誤碼位置圖案(error_add)直接順序輸入所述錯誤值計算模塊(55),所述錯誤值計算模塊(55)計算輸出的值通過所述切換開關(501)被順序寫入所述上支對稱電路或下支對稱電路中的存儲器組(54),所述存儲器組(54)中的數據通過所述開關(52)順序輸出構成誤碼圖案(error_ptn),供後續電路生成解碼結果。
6.如權利要求5所述的解碼電路,其特徵是所述切換開關(501)採用雙路開關,所述上下兩支對稱電路分別還包括地址寄存器(56)、計數器(57)和比較器(58);所述誤碼位置圖案(error_add)輸入所述錯誤值計算模塊(55)的同時還通過所述雙路開關(501)的一路輸入所述上支對稱電路或下支對稱電路中的所述地址寄存器(56),錯誤值計算模塊(55)的輸出通過所述雙路開關(501)的另一路與所述地址寄存器(56)所在的同一支對稱電路中的存儲器組(54)連接;所述地址寄存器(56)的值和所述計數器(57)的值輸入比較器(58),比較器(58)在所述地址寄存器(56)的值和所述計數器(57)的值相等時輸出順序讀出脈衝給所述存儲器組(54)。
7.如權利要求5所述的解碼電路,其特徵是所述切換開關(501)採用單路開關(51),所述上支對稱電路或下支對稱電路中的所述存儲器組(54)是容量為255*8的存儲器(53)。
8.如權利要求6所述的解碼電路,其特徵是所述上支對稱電路或下支對稱電路中的所述存儲器組(54)是容量為8*8的存儲器(53)。
全文摘要
本發明公開數字通訊領域一種可減小FEC糾錯編碼晶片設計面積的誤碼圖案生成電路及使用該電路的解碼電路,根據輸入的誤碼位置圖案(error_add)計算並生成誤碼圖案(error_ptn),它包括錯誤值計算模塊(55)、切換開關(501)、存儲與輸出電路;存儲與輸出電路包括上下兩支對稱電路及開關(52),對稱電路分別包括存儲器組(54);誤碼位置圖案(error_add)直接順序輸入錯誤值計算模塊(55)計算,所計算輸出的值通過切換開關(501)被順序寫入存儲器組(54),存儲器組(54)中的數據通過開關(52)順序輸出構成誤碼圖案(error_ptn)。
文檔編號H03M13/00GK1449151SQ0210863
公開日2003年10月15日 申請日期2002年4月4日 優先權日2002年4月4日
發明者張洪濤, 亢婕 申請人:華為技術有限公司