欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

基于rs(255,239)算法的光通信實(shí)時(shí)糾錯(cuò)電路的制作方法

文檔序號(hào):7526302閱讀:575來源:國知局
專利名稱:基于rs(255,239)算法的光通信實(shí)時(shí)糾錯(cuò)電路的制作方法
技術(shù)領(lǐng)域
本發(fā)明涉及數(shù)據(jù)編碼糾錯(cuò)技術(shù),特別涉及一種基于RS(255,239)算法的應(yīng)用于光通信網(wǎng)絡(luò)、完成光通信數(shù)據(jù)糾錯(cuò)功能的實(shí)時(shí)電路。
背景技術(shù)
RS(255,239)是一種數(shù)學(xué)算法理論,包括編碼算法、譯碼算法,可以對(duì)每239個(gè)字節(jié)的數(shù)據(jù)進(jìn)行編碼、檢錯(cuò)以及糾錯(cuò)。當(dāng)有一串239個(gè)字節(jié)的數(shù)據(jù)經(jīng)過操作后(例如在數(shù)據(jù)通信、數(shù)據(jù)傳輸過程中受到干擾),有部分字節(jié)數(shù)據(jù)出現(xiàn)錯(cuò)誤,只要出錯(cuò)的字節(jié)數(shù)小于等于8,都可以利用該算法檢錯(cuò),并恢復(fù)出正確的數(shù)據(jù)。這使得數(shù)據(jù)在傳輸過程,即使受到干擾出現(xiàn)錯(cuò)誤,仍然能夠保證數(shù)據(jù)的正確性,從而提升了數(shù)據(jù)在傳輸過程中的抗干擾能力。
但RS(255,239)算法不是一個(gè)能夠?qū)崟r(shí)計(jì)算出結(jié)果的算法,在每收到239個(gè)字節(jié)數(shù)據(jù)后,都要經(jīng)過一段計(jì)算的等待時(shí)間才能得出糾錯(cuò)后的正確的239個(gè)字節(jié)數(shù)據(jù),而這個(gè)等待時(shí)間是RS(255,239)算法本身數(shù)學(xué)理論的固有特征所決定的。 所以,現(xiàn)有基于這項(xiàng)數(shù)學(xué)理論的直接實(shí)現(xiàn)的電路,在每處理239個(gè)字節(jié)數(shù)據(jù)后,都會(huì)產(chǎn)生一個(gè)等待時(shí)間。當(dāng)需要處理光通信網(wǎng)絡(luò)數(shù)據(jù)幀時(shí),由于光通信網(wǎng)絡(luò)數(shù)據(jù)幀的長度是64字節(jié)至1522字節(jié)長度不等,如果直接使用RS (255, 239)算法方法,則不能實(shí)時(shí)、線速的處理光通信數(shù)據(jù)幀,即使得光通信過程數(shù)據(jù)不連續(xù)以及丟幀。

發(fā)明內(nèi)容
本發(fā)明要解決的技術(shù)問題是,提供一種應(yīng)用在光通信網(wǎng)絡(luò),能夠在光通信數(shù)據(jù)傳
輸過程中,實(shí)時(shí)、連續(xù)地完成RS(255,239)算法的糾錯(cuò)電路。 為了解決該技術(shù)問題,本發(fā)明采用的技術(shù)方案如下 提供一種基于RS(255,239)算法的光通信實(shí)時(shí)糾錯(cuò)電路,包括 (1) RS編碼電路的實(shí)現(xiàn) A、以239個(gè)字節(jié)為一個(gè)BLOCK塊將一串連續(xù)數(shù)據(jù)劃分為一個(gè)個(gè)數(shù)據(jù)塊,如果最后一個(gè)數(shù)據(jù)塊不滿239個(gè)字節(jié),也當(dāng)成一個(gè)239個(gè)字節(jié)的數(shù)據(jù)塊來看待,不用補(bǔ)全至239個(gè)字節(jié); B、將前述數(shù)據(jù)塊依次連續(xù)送給至RS編碼電路; C、當(dāng)一個(gè)數(shù)據(jù)塊被傳送到RS編碼電路時(shí),RS編碼電路開始實(shí)時(shí)計(jì)算該數(shù)據(jù)塊的16字節(jié)RS編碼校驗(yàn)數(shù),并存放于16個(gè)寄存器;當(dāng)該數(shù)據(jù)塊完成傳送后,立即取出這16個(gè)寄存器存放的RS編碼校驗(yàn)數(shù)并放到16字節(jié)的內(nèi)部緩存中;同時(shí),開始下一個(gè)數(shù)據(jù)塊的傳送,實(shí)現(xiàn)對(duì)傳輸數(shù)據(jù)的實(shí)時(shí)RS編碼;
(2)RS譯碼電路的實(shí)現(xiàn) RS譯碼電路,包括伴隨式計(jì)算模塊、解關(guān)鍵方程模塊、錢氏搜索模塊、求逆模塊、福
尼算法模塊和糾錯(cuò)模塊;其中,隨式計(jì)算模塊、解關(guān)鍵方程模塊、錢氏搜索模塊和糾錯(cuò)模塊串行工作,解關(guān)鍵方程模塊經(jīng)福尼算法模塊連接糾錯(cuò)模塊,錢氏搜索模塊經(jīng)求逆模塊、福尼算法模塊連接糾錯(cuò)模塊;FIF0緩存器連接RS譯碼電路接收端與糾錯(cuò)模塊;通過上述模塊, 對(duì)于接收到的每239個(gè)字節(jié)數(shù)據(jù),如果有8個(gè)字節(jié)以內(nèi)的任意錯(cuò)誤,RS譯碼電路全部進(jìn)行 糾正,恢復(fù)為正確數(shù)據(jù)。 本發(fā)明中,所述RS編碼電路實(shí)現(xiàn)的邏輯過程包括
(1)初始化過程將16個(gè)寄存器Dl D16初始化為0 ; (2)電路開始接收數(shù)據(jù)在數(shù)據(jù)開始傳輸標(biāo)識(shí)信號(hào)"enrs—datastart"有效時(shí),RS 編碼電路就開始接收數(shù)據(jù)塊,并進(jìn)行RS編碼校驗(yàn)數(shù)的計(jì)算; (3)具體RS編碼計(jì)算將待編碼的信息碼元的第1個(gè)碼元,與D16寄存器中的值進(jìn) 行伽羅瓦域上的加法運(yùn)算,其相加結(jié)果經(jīng)過與門后,分別與al al6進(jìn)行伽羅瓦域上的 乘法運(yùn)算,相乘的結(jié)果分別與D寄存器中的值進(jìn)行伽羅瓦域上的加法運(yùn)算,然后將結(jié)果存 入相應(yīng)的D寄存器;第2個(gè)待編碼的信息碼元與D16寄存器中的值進(jìn)行伽羅瓦域上的加法 運(yùn)算,然后進(jìn)行相同的操作, 一直到第239個(gè)碼元,依次進(jìn)行相應(yīng)的操作;對(duì)于RS (255, 239) 來說,總共需要進(jìn)行239次這樣的運(yùn)算,即239個(gè)周期,最后保存在D寄存器中的值就是所 得的余項(xiàng)r(x); (4)完成一個(gè)數(shù)據(jù)塊的編碼當(dāng)"enrs—dataend"有效時(shí),說明一個(gè)塊的全部碼元 已經(jīng)送入"RS編碼模塊",并已經(jīng)得到余項(xiàng)r (x);然后把Dl D16的16字節(jié)校驗(yàn)數(shù)寄存器 中的校驗(yàn)數(shù)在一個(gè)時(shí)鐘周期內(nèi)取出來放在16字節(jié)的內(nèi)部緩存中,并對(duì)D1 D16的16個(gè)校 驗(yàn)數(shù)寄存器復(fù)位;此時(shí),RS編碼電路又可以接收下一個(gè)數(shù)據(jù)塊進(jìn)行RS編碼。
本發(fā)明中,所述伴隨式計(jì)算模塊共有16個(gè)伴隨式計(jì)算電路,用于判斷接收到的信 息碼元是否發(fā)生錯(cuò)誤,如果計(jì)算的結(jié)果全是0,則說明在傳輸過程中沒有發(fā)生錯(cuò)誤,如果有 非0值,說明在傳輸中發(fā)生了錯(cuò)誤。 本發(fā)明中,所述解關(guān)鍵方程模塊包括基本單元Upper Cell、基本單元Bottom Cell和Control Block模塊,用于執(zhí)行E-DCME算法,在利用求解出來的伴隨式計(jì)算出錯(cuò) 誤位置多項(xiàng)式和錯(cuò)誤值多項(xiàng)式后輸出到錢氏搜索模塊中,同時(shí)還輸出這些系數(shù)的有效標(biāo)識(shí) 符。 本發(fā)明中,所述錢氏搜索模塊中,將32個(gè)8bit的寄存器分成4組,每組用來存儲(chǔ) 一個(gè)塊的錯(cuò)誤多項(xiàng)式系數(shù),并設(shè)置一個(gè)標(biāo)識(shí)寄存器來標(biāo)識(shí)每組寄存器是否有合法的多項(xiàng)式 系數(shù),從而利用已知的錯(cuò)誤位置多項(xiàng)式和錯(cuò)誤值多項(xiàng)式來找出具體發(fā)生錯(cuò)誤的位置。
本發(fā)明中,所述求逆模塊將錢氏搜索模塊中的錯(cuò)誤位置多項(xiàng)式的奇數(shù)項(xiàng)求倒數(shù), 以用于福尼算法模塊的計(jì)算。 本發(fā)明中,所述福尼算法模塊根據(jù)錯(cuò)誤值多項(xiàng)式計(jì)算出發(fā)生錯(cuò)誤位置的修正值, 以便在糾錯(cuò)模塊中糾正錯(cuò)誤。 本發(fā)明中,所述糾錯(cuò)模塊根據(jù)錢氏搜索模塊得到的錯(cuò)誤位置和福尼算法模塊得到 的錯(cuò)誤值,與緩存在FIFO緩存器中的原數(shù)據(jù)幀進(jìn)行伽羅瓦域上的加法運(yùn)算,以糾正在信道 傳輸中發(fā)生的錯(cuò)誤。 本發(fā)明中,所述RS譯碼電路接收到傳遞來的數(shù)據(jù)塊后,在傳遞給伴隨式計(jì)算模塊 的同時(shí)傳送至FIFO緩存器,作為待用的原數(shù)據(jù)幀。
本發(fā)明的有益的效果是 本發(fā)明達(dá)成了 RS(255,239)算法的全部理論效果;編碼功能、譯碼功能可以同時(shí)進(jìn)行,設(shè)計(jì)獨(dú)立,功能互不干擾;可實(shí)現(xiàn)實(shí)時(shí)的、連續(xù)的RS(255,239)編碼;可實(shí)現(xiàn)實(shí)時(shí)的、 連續(xù)的RS(255,239)譯碼;可以連續(xù)傳輸糾錯(cuò)后的數(shù)據(jù),可以支持實(shí)時(shí)的數(shù)據(jù)傳輸;編碼、 譯碼能力可以支持1. 25Gbps的光網(wǎng)絡(luò)數(shù)據(jù)傳輸率。提高數(shù)據(jù)傳輸設(shè)備的抗干擾能力,環(huán)境 干擾誤碼率指標(biāo)從10—12提高到10—4。在1. 25Gbps的光通信速率下,能夠有效地發(fā)現(xiàn)并糾正 受環(huán)境干擾失效的通信數(shù)據(jù),將光通信的距離指標(biāo)從2公里提升到20 30公里,保障光通 信設(shè)備間通信數(shù)據(jù)正確。


圖1為RS編碼電路的邏輯電路圖; 圖2為RS譯碼電路的IC邏輯電路框圖; 圖3為Syndrome伴隨式計(jì)算模塊的IC邏輯電路框圖; 圖4為Key—equation解關(guān)鍵方程模塊的IC邏輯電路框圖(E-DCME的硬件結(jié)構(gòu)框 架); 圖5為基本單元Upper Cell與基本單元Bottom Cell的IC邏輯電路圖; 圖6為E-DCME算法的流程圖; 圖7為Chien錢氏搜索模塊的IC邏輯電路框圖; 圖8為Inverse求逆模塊的IC邏輯電路框圖; 圖9為Forney福尼算法模塊的IC邏輯電路框圖。
具體實(shí)施例方式
本發(fā)明中,RS編碼電路、RS譯碼電路,包括伴隨式計(jì)算模塊、解關(guān)鍵方程模塊、錢 氏搜索模塊、求逆模塊、福尼算法模塊、糾錯(cuò)模塊、FIFO緩存器及有關(guān)的各種寄存器均為硬 件實(shí)現(xiàn)的功能模塊,其實(shí)現(xiàn)手段已為本領(lǐng)域技術(shù)人員熟知,故本發(fā)明不再對(duì)此詳細(xì)闡述。
—、RS編碼電路 RS編碼電路是RS(255,239)算法的編碼算法的具體實(shí)現(xiàn)電路。
1、RS編碼電路實(shí)現(xiàn)的功能將一串連續(xù)數(shù)據(jù)劃分為以239個(gè)字節(jié)為一個(gè)BLOCK塊 的一個(gè)個(gè)BLOCK數(shù)據(jù)塊,如果最后一個(gè)BLOCK塊不滿239個(gè)字節(jié),也當(dāng)成239個(gè)字節(jié)的一個(gè) 塊來看待,此時(shí)不滿239個(gè)字節(jié)的塊不用補(bǔ)全成239個(gè)字節(jié)。然后這些BLOCK塊一塊一塊 依次連續(xù)送給"RS編碼模塊"。"RS編碼模塊"的電路圖如圖1。當(dāng)一塊數(shù)據(jù)全部送到"RS 編碼模塊"后,"RS編碼模塊"就已經(jīng)實(shí)時(shí)計(jì)算出這塊數(shù)據(jù)的16字節(jié)"RS編碼校驗(yàn)數(shù)",存放 在圖1上的D1-D16的16個(gè)字節(jié)寄存器。 一塊數(shù)據(jù)全部送給"RS編碼模塊"后,就可以立即 取出這16個(gè)寄存器存放的"RS編碼校驗(yàn)數(shù)",放到16字節(jié)的內(nèi)部緩存中,同時(shí)就可以把下 一個(gè)塊數(shù)據(jù)送給"RS編碼模塊"。這樣就實(shí)現(xiàn)了對(duì)傳輸數(shù)據(jù)的實(shí)時(shí)RS編碼。
2、 RS編碼的數(shù)學(xué)算法理論 RS (n, k)中的k個(gè)信息碼元可以編碼成一個(gè)代碼塊,k個(gè)信息碼元用多項(xiàng)式M (x)
來表示,展開形式為 M(x) = Mk—lXk—、+MlX+M0 其中的每個(gè)系數(shù)Mk—"MpM。都是一個(gè)m位的信息i央,即伽羅瓦域GF(2m)中的元素, 而xk—\ xk—2.......x2、 x1、 x°僅表示信息塊在整個(gè)碼元中的位置,即Mk—工是信息碼元的第一個(gè)信息塊,M。是信息碼元的最后一個(gè)信息塊。 對(duì)信息碼元進(jìn)行編碼,首先用xn—k乘以信息碼元多項(xiàng)式M(x),即將信息碼元左移n_k次,最高項(xiàng)冪由k-1變?yōu)閚-l。將移位后的結(jié)果除生成多項(xiàng)式g(x),可以得到商q(x),余項(xiàng)r(x),其中r(x)的最高項(xiàng)系數(shù)為n-k-l。用公式表示如下 : 、"~ = g(X) + ^; 由信息碼元多項(xiàng)式M(x),以及得到的余項(xiàng)r(x),可以得到發(fā)送碼元多項(xiàng)式T(x),
即在信道中傳輸?shù)拇a元。 T (x) = M (x) X xn—k+r (x) = Mk—lXn—、 +M。xn—k+rn—k—lXn—k—、 +r0 將信息碼元M(x)轉(zhuǎn)換成發(fā)送碼元T(x)的過程就是編碼過程,即編碼過程的核心問題就是求出余項(xiàng)r(x)。 3、 RS編碼電路的邏輯電路如圖1所示。
4、 RS編碼模塊的邏輯過程 (1)初始化過程初始化圖1中的16個(gè)寄存器Dl D16。 (2)電路接收數(shù)據(jù)并計(jì)算校驗(yàn)數(shù)在數(shù)據(jù)開始傳輸標(biāo)識(shí)信號(hào)"enrs—datastart"有效時(shí),"RS編碼模塊"就開始接收數(shù)據(jù),并進(jìn)行RS編碼校驗(yàn)數(shù)的計(jì)算,并把計(jì)算結(jié)果存儲(chǔ)在D1-D16寄存器中,作為計(jì)算校驗(yàn)數(shù)。 (3)完成一塊數(shù)據(jù)的編碼當(dāng)"enrs—dataend"有效時(shí),說明一個(gè)塊的全部碼元已經(jīng)送入"RS編碼模塊",此時(shí),把D1-D16的16字節(jié)校驗(yàn)數(shù)寄存器中的校驗(yàn)數(shù)在一個(gè)時(shí)鐘周期內(nèi)取出來放在16字節(jié)內(nèi)部緩存中,并對(duì)D1-D16的16個(gè)校驗(yàn)數(shù)寄存器復(fù)位。"RS編碼模塊"可以接收下一個(gè)塊的數(shù)據(jù)進(jìn)行RS編碼。
二、RS譯碼電路 RS譯碼電路是RS (255, 239)算法的譯碼算法的具體實(shí)現(xiàn)電路,譯碼過程也就是對(duì)數(shù)據(jù)糾錯(cuò)的過程。 RS譯碼電路實(shí)現(xiàn)的功能RS譯碼電路,由伴隨式計(jì)算模塊(Syndrome)、解關(guān)鍵方程模塊(Key—equation)、錢氏搜索模塊(Chien)、求逆模塊(Inverse)、福尼算法模塊(Forney)和糾錯(cuò)模塊(Error_Correct)構(gòu)成。 通過上述模塊實(shí)現(xiàn)的功能,共同達(dá)成RS譯碼功能,也即對(duì)接收到的每239個(gè)字節(jié)數(shù)據(jù),如果有8個(gè)以內(nèi)的任意錯(cuò),"RS譯碼電路"都能全部糾正恢復(fù)出正確數(shù)據(jù),提高了傳輸數(shù)據(jù)的抗干擾能力。 RS譯碼電路的IC邏輯電路如圖2所示。
( — ) Syndrome模塊 1、 Syndrome模塊實(shí)現(xiàn)的功能Syndrome伴隨式計(jì)算模塊的主要目的是判斷接收到的信息碼元是否發(fā)生錯(cuò)誤,如果計(jì)算的結(jié)果全是0,則說明在傳輸過程中沒有發(fā)生錯(cuò)誤,
如果有非o值,說明在傳輸中發(fā)生了錯(cuò)誤,則利用解關(guān)鍵方程、錢氏搜索、福尼算法和糾錯(cuò)
模塊來進(jìn)行糾錯(cuò)。 2、 Syndrome模塊的數(shù)學(xué)算法理論 在代碼字傳輸過程中,可能受到各種噪聲干擾等外界因素的影響而產(chǎn)生錯(cuò)誤,從發(fā)送端發(fā)出的代碼字T(x),經(jīng)過傳輸?shù)竭_(dá)接收端時(shí),可能變成了 R(x),在R(x)中就可能含 有錯(cuò)誤,假設(shè)錯(cuò)誤多項(xiàng)式為E(x),則這3個(gè)多項(xiàng)式的關(guān)系可用下面的等式來描述
R(x) = T(x)+E(x) 其中錯(cuò)誤多項(xiàng)式可寫成E(x) = En—lXn-、 +ElX+E。,其中的每個(gè)系數(shù)En—^ . . E。表 示一個(gè)m位的錯(cuò)誤值,也是伽羅瓦域GF(2m)中的元素,其中x的冪代表在代碼字中出現(xiàn)錯(cuò) 誤的位置,由于t = 8,所以最多可以糾正8個(gè)錯(cuò)誤,也就是說在E(x)中最多只能有8個(gè)元 素,即最多發(fā)生8個(gè)錯(cuò)誤,否則,RS(255,239)的糾錯(cuò)能力失效。 在譯碼過程中的伴隨式計(jì)算的總共分為2步,第一步,將在接收端收到的代碼 R(x)除以(x+ai),將會(huì)得到商Qi(x)和余項(xiàng)Si(x),其中余項(xiàng)Si(x)即為所求的伴隨式。即: =0(x) +Ai^I其中0《i《2t-l 將上式轉(zhuǎn)換成Si (x) = R (x) +Qi (x) X (x+ a 。 貝U,當(dāng)x = a 1時(shí),Si ( a 0 = R( a " = Rn—丄(a 丄+Rn—2 ( a i)n-2+. a i+R0
其中每個(gè)系數(shù)都是在接收端收到的代碼字,將上式進(jìn)行相應(yīng)的變換,可以轉(zhuǎn)化 成 Si = ( (Rn—! a i+Rn—2) a 、 +R》a i+R0 其中a為本原元素,即a = 2 ;Rn—pR?!?......!^、R。為接收端接收到的信息碼元,
均為具體的信息數(shù)值。 其計(jì)算過程用a 1乘以第一個(gè)系數(shù)Rn—p隨后的每個(gè)系數(shù)都與先前計(jì)算的結(jié)果相 加,然后在將其相加的結(jié)果乘以ai,直到最后一個(gè)系數(shù)R。。
3、 Syndrome模塊的IC邏輯電路如圖3所示 [OO76]4、 Syndrome模塊的邏輯過程 初始化,將每個(gè)伴隨式計(jì)算模塊的寄存器初始化; 接收端接收到的代碼字分別與相應(yīng)的a 1相乘累加,并將結(jié)果暫存到D寄存器; 繼續(xù)與代碼字的第二個(gè)系數(shù)Rn—2進(jìn)行伽羅瓦域上的相乘累加運(yùn)算,直到代碼字的
最后一個(gè)系數(shù)R。。在計(jì)算完所有的信息碼元后,分別得到相應(yīng)的伴隨式; 這里需要注意的地方就是,對(duì)不滿255個(gè)字節(jié)的塊的處理,不需要補(bǔ)零。 一個(gè)塊的
開始和結(jié)束標(biāo)識(shí)符都會(huì)送給伴隨式,伴隨式在接收到結(jié)束標(biāo)識(shí)符的時(shí)候,會(huì)把伴隨式中的
寄存器值全部取出來,并進(jìn)行復(fù)位操作。 ( 二 ) Key_equation模塊 1、 Key_equation模塊實(shí)現(xiàn)的功能 采用E-DCME算法來求解關(guān)鍵方程,解關(guān)鍵方程的主要目的是利用求解出來的伴 隨式計(jì)算出錯(cuò)誤位置多項(xiàng)式A (x)和錯(cuò)誤值多項(xiàng)式Q (x)。 [OO84] 2、 Key_equation模塊的數(shù)學(xué)算法理論 由公式Si ( a 0 = R ( a " = Rn—丄(a 。 n-、—2 ( a 。 n—2+. a i+R。
其中,R(x) = T(x)+E(x),且T(a 0 =0 可以得到等式Si (x) = E (X),將E (x)改寫為E (x) = ¥^"+¥^62+. YvXev,其中 v《t, X的冪ei, e2. . . ev表示在代碼字中出錯(cuò)的位置,系數(shù)1, Y2. . . Yv表示在出錯(cuò)位置的 錯(cuò)誤值。:0088] 則,s, ) =) = gc^1 + r2 'e2 +…;rv"'ev
:oo89] = 《+ :r2x; +...
:0090] 其中,= a el, X2 = a ,Xv = a 6V,為出現(xiàn)錯(cuò)誤的位置。
:0091] 可以用矩陣形式表示為
:0092]
<formula>formula see original document page 9</formula>
用A (x)表示錯(cuò)誤位置多項(xiàng)式,即等式右端第一個(gè)矩陣
用Q (x)表示錯(cuò)誤值多項(xiàng)式,即等式右端第二個(gè)矩陣
則可化為Q (x) = [S(x) A (x)]mod x",即為關(guān)鍵方程 E-DCME算法為了使deg(R。(x))和deg(Q。(x))相等,Q。(x)和y 。(x)多項(xiàng)式的初 始冪需要增加,DCME初始化如下 A(x) = x2S(x) = 2|>,x'+2g。(x) = xS(x) = f;S,x'+'
,=0 ;=0 A 。 (x) = x2 li 。 (x) = x 基于上述初始條件,deg (R。 (x))和deg (Q。 (x))總是等于2t,所以1??偸堑扔?,因
此其迭代算法可以轉(zhuǎn)化為 (1)多項(xiàng)式計(jì)算 Ri+1(x) = (x)+aA (x) A i+1 (x) = h A i (x) ii i (x) (2)交換: Qi+1(x) = Ri(x) ii i+1(x) = A i(x) Key_equation模塊的IC邏輯電路如圖4所示,基本單元Upper Cell與基本單元 Bottom Cell結(jié)構(gòu)一樣,具體的IC邏輯電路如圖5所示。 [O107] 3、 Key_equation模塊的邏輯過程 首先進(jìn)行寄存器的初始化,即根據(jù)上述公式把寄存器分別初始化為相應(yīng)的值。
在Control Block模塊中,根據(jù)^和^的值以及控制信號(hào)CS和ACS的值進(jìn)行相應(yīng) 的操作,Load信號(hào)用于控制基本單元中的寄存器,Indicator信號(hào)用于控制多項(xiàng)式的計(jì)算, 控制模塊首先判斷多項(xiàng)式Ri(x)和Qi(x)的最高項(xiàng)ai和bi是否為O,然后產(chǎn)生Indicator信 號(hào),如移位、計(jì)算、保持不變等操作。 E-DCME算法的流程圖如圖6所示,其中i, j和k分別表示迭代計(jì)數(shù)器,底層單元 數(shù)和頂層單元數(shù)。DCME算法將檢測(cè)Ri(x)的最高項(xiàng)系數(shù)ai是否為O。 如果Ri(x)的最高項(xiàng)系數(shù)為0,并且控制信號(hào)CS二0,則參見圖中Casel情況處理;
如果Ri(x)的最高項(xiàng)系數(shù)為0,并且控制信號(hào)CS^0,則參見圖中Case2情況處理;
如果Ri(x)的最高項(xiàng)系數(shù)都不為0,且控制信號(hào)CS二0,即圖中的Case3,那么需要 分別進(jìn)行多項(xiàng)式的計(jì)算操作、交換操作和移位操作;
如果Ri(x)的最高項(xiàng)系數(shù)都不為0,且控制信號(hào)CS^0,即圖中的Case4,此時(shí)只需 進(jìn)行多項(xiàng)式的計(jì)算操作,不需要進(jìn)行交換操作; 在2t次迭代后,EDCME算法結(jié)束,此時(shí)可以獲得錯(cuò)誤值多項(xiàng)式和錯(cuò)誤位置多項(xiàng)式,
在下一個(gè)周期,會(huì)把錯(cuò)誤值多項(xiàng)式和錯(cuò)誤位置多項(xiàng)式系數(shù)輸出到錢氏搜索模塊中。 (三)Chien模塊 1、 Chien模塊實(shí)現(xiàn)的功能 由Key—equation解關(guān)鍵方程模塊可以得到錯(cuò)誤位置多項(xiàng)式A (x),即得到A (x) 的系數(shù),Chien錢氏搜索模塊的主要目的是利用已知的錯(cuò)誤位置多項(xiàng)式A (x)來找出具體 發(fā)生錯(cuò)誤的位置。 2、 Chien模塊的數(shù)學(xué)算法理論 錯(cuò)誤位置多項(xiàng)式A (x)是由v個(gè)(l+XjX)因子構(gòu)成,即 A (x) = (l+XlX) (1+X2x). (l+XyX),其中v《t 將其展開,可得如下的形式A (x) = l+AlX+. .. A v—lXv—、 . . + A vxv 由解的關(guān)鍵方程可以得到錯(cuò)誤位置多項(xiàng)式A (x),即得到A (x)的系數(shù) A" A2... Av,為了計(jì)算出具體的錯(cuò)誤位置,也就是A(x)的解,可以采用錢氏搜
索算法。將錯(cuò)誤位置多項(xiàng)式A (x)轉(zhuǎn)換成如下的形式 a(x) = (x + z「1 )jr2(x + if1)...ivo + 1),其中v《t 如果x二X「1, I2—'…,也就是x-"-、 a-、...
那么多項(xiàng)式的值就為O,則說明此處有錯(cuò)誤。 關(guān)鍵方程計(jì)算的系數(shù)送給錢氏搜索,考慮到這些關(guān)鍵方程產(chǎn)生的系數(shù)可能還不能 進(jìn)入錢氏搜索進(jìn)行運(yùn)算,所以開32個(gè)8bit的寄存器來做緩存,32個(gè)寄存器分成4組,每組 用來存儲(chǔ)一個(gè)塊的錯(cuò)誤多項(xiàng)式系數(shù)。這樣就可以保證關(guān)鍵方程計(jì)算得到的系數(shù)不會(huì)被丟 棄。 還有一點(diǎn)需要考慮的是,對(duì)不滿255的塊,錢氏搜索也不能花費(fèi)255個(gè)時(shí)鐘周期來
搜索錯(cuò)誤位置。假如不滿255的塊需要補(bǔ)k個(gè)零,那么在對(duì)這個(gè)塊做錢氏搜索的時(shí)候,只需
要把錯(cuò)誤多項(xiàng)式系數(shù)左移K個(gè)。 Chien模塊的IC邏輯電路如圖7所示。 3、 Chien模塊的邏輯過程 首先一個(gè)塊的錯(cuò)誤多項(xiàng)式系數(shù)寫到D寄存器中,分別與對(duì)應(yīng)的a 1進(jìn)行伽羅瓦域 上的乘法運(yùn)算,乘的結(jié)果存儲(chǔ)到D觸發(fā)器中,并且各個(gè)乘結(jié)果進(jìn)行伽羅瓦域的加法運(yùn)算,如 果加法結(jié)果為零,說明對(duì)應(yīng)的位置發(fā)生了錯(cuò)誤,把發(fā)生錯(cuò)誤的錯(cuò)誤位置輸出到下一級(jí)模塊 中,并同時(shí)把奇數(shù)項(xiàng)的加法結(jié)果輸出到求逆模塊。 接下來處理一個(gè)塊中的其他位置,如果一個(gè)塊是滿255的塊,則需要進(jìn)行255次運(yùn) 算,如果是不滿255的塊,則需要把錯(cuò)誤多項(xiàng)式進(jìn)行左移k位之后,在初始化的時(shí)候存儲(chǔ)到 D寄存器中。 (四)I読rse模塊 1、 Inverse模塊實(shí)現(xiàn)的功能 Inverse求逆模塊的主要目的是將錢氏搜索中的錯(cuò)誤位置多項(xiàng)式A (x)的奇數(shù)項(xiàng) 求倒數(shù),以用于福尼算法的計(jì)算。0137] 2、 Inverse模塊的數(shù)學(xué)算法理論
0138] 伽羅瓦域上的求逆模塊采用的基本單元是乘法器和平方器兩部分、
0139] Inverse模塊的IC邏輯電路如圖8所示。
0140] (五)Forney模塊
0141] 1 、 Forney模塊實(shí)現(xiàn)的功能
0142] Forney福尼算法模塊的主要目的是根據(jù)錯(cuò)誤值多項(xiàng)式,計(jì)算出發(fā)生錯(cuò)誤位置的修 正值,以便在糾錯(cuò)模塊中糾正錯(cuò)誤
0143] 2、 Forney模塊的數(shù)學(xué)算法理論
0144] 與錯(cuò)誤位置多項(xiàng)式相對(duì)應(yīng),錯(cuò)誤值多項(xiàng)式可用如下多項(xiàng)式來表示
0145] Q (x) = Q。+Qp+…+ Qv—J"、其中v《t
0146] 在得到錯(cuò)誤位置多項(xiàng)式A (x)后,Yj可以根據(jù)福尼算法得到。
0147] 首先,對(duì)錯(cuò)誤位置多項(xiàng)式A (x)求導(dǎo)
0148] A' (x) = A^AsX^AsxVA^6
0149] 可以看出,其結(jié)果為奇數(shù)項(xiàng),這是因?yàn)樵谫ち_瓦域上,任意2個(gè)相同的元素做伽羅 瓦域上的加法,則值為0。
0150] 將上等式進(jìn)行變換,可得
0151] xA' (x) = AlX+A3x3+A5x5+A7x7
0152] 即位原錯(cuò)誤位置多項(xiàng)式A (x)的奇數(shù)項(xiàng)。
0153] 根據(jù)福尼算法,錯(cuò)誤值的計(jì)算公式如下
0154]y, =~,^ ,
0155] 在上式中,Yj為具體的錯(cuò)誤值,Xj為具體的錯(cuò)誤位置,Q (Xj—0為相應(yīng)的錯(cuò)誤值多 項(xiàng)式,Xj—1 A ' (Xj—0可看作錯(cuò)誤位置多項(xiàng)式的奇數(shù)項(xiàng)。
0156] 在Foney中,和錢氏搜索一樣,需要開32個(gè)8bit的寄存器緩存錯(cuò)誤值多項(xiàng)式的系 發(fā)。
0157] 3、 Forney福尼算法模塊的IC邏輯電路框圖如圖9所示。 0158] 4、 Forney模塊的邏輯過程
0159] 福尼算法的部分硬件電路與錢氏搜索的硬件電路相似,只是多了一個(gè)與錯(cuò)誤位置 多項(xiàng)式奇數(shù)項(xiàng)的倒數(shù)的乘法運(yùn)算,其邏輯過程也同錢氏搜索一樣。
0160] Forney只需要進(jìn)行八次運(yùn)算就可以知道錯(cuò)誤的值。這八次運(yùn)算中,每進(jìn)行一次運(yùn) 算就把運(yùn)算的結(jié)果輸出到下一模塊,進(jìn)行糾錯(cuò)。 0161 ] (六)Error—correct模塊 0162] l、Error_correct模塊實(shí)現(xiàn)的功能
0163] 根據(jù)錢氏搜索得到的錯(cuò)誤位置和福尼算法得到的錯(cuò)誤值,與緩存在FIFO中的原 數(shù)據(jù)幀進(jìn)行伽羅瓦域上的加法運(yùn)算,以糾正在信道傳輸中發(fā)生的錯(cuò)誤 0164] 2、Error_correct模塊的數(shù)學(xué)算法理論
0165] 根據(jù)錢氏搜索模塊得到的錯(cuò)誤位置和福尼算法模塊得到的錯(cuò)誤值,與緩存在FIFO 中的數(shù)據(jù)幀做伽羅瓦域上的加法運(yùn)算,以糾正發(fā)生的錯(cuò)誤。在做Forney運(yùn)算的時(shí)候,就開 始進(jìn)行糾錯(cuò),每個(gè)周期從FIFO中讀取一個(gè)數(shù)據(jù),如果這個(gè)數(shù)據(jù)的位置不是錯(cuò)誤位置,直接輸出,如果是錯(cuò)誤位置,再和Forney計(jì)算出來的錯(cuò)誤值進(jìn)行加法運(yùn)算。最后依次把數(shù)據(jù)輸 出。 3、 Error—correct模塊的邏輯過程 首先計(jì)算由錢氏搜索模塊中所得出來的發(fā)生錯(cuò)誤的個(gè)數(shù),即錢氏搜索模塊的計(jì)算 結(jié)果為0的個(gè)數(shù)。 將錯(cuò)誤個(gè)數(shù)與錯(cuò)誤位置多項(xiàng)式A (x)的最高階數(shù)的大小進(jìn)行比較。如果前者小, 則表明在傳輸過程中發(fā)生過多錯(cuò)誤,此次解碼不能糾正錯(cuò)誤,反之,此次解碼可以糾正錯(cuò) 誤。如果可以糾正錯(cuò)誤,將錢氏搜索得到的錯(cuò)誤位置和福尼算法得到的修正值,與保存在 FIFO中的信息碼元進(jìn)行伽羅瓦域上的加法運(yùn)算以糾正錯(cuò)誤。 應(yīng)該理解的是,本發(fā)明并不限于如上圖示和描述的確切構(gòu)造,在不背離的權(quán)利要 求所定義的本發(fā)明的精神和范圍,可以對(duì)發(fā)明進(jìn)行各種不同的改變和修改,都被認(rèn)為是本 發(fā)明的保護(hù)范圍。
權(quán)利要求
一種基于RS(255,239)算法的光通信實(shí)時(shí)糾錯(cuò)電路,包括(1)RS編碼電路的實(shí)現(xiàn)A、以239個(gè)字節(jié)為一個(gè)BLOCK塊將一串連續(xù)數(shù)據(jù)劃分為一個(gè)個(gè)數(shù)據(jù)塊,如果最后一個(gè)數(shù)據(jù)塊不滿239個(gè)字節(jié),也當(dāng)成一個(gè)239個(gè)字節(jié)的數(shù)據(jù)塊來看待,不用補(bǔ)全至239個(gè)字節(jié);B、將前述數(shù)據(jù)塊依次連續(xù)送給至RS編碼電路;C、當(dāng)一個(gè)數(shù)據(jù)塊被傳送到RS編碼電路時(shí),RS編碼電路開始實(shí)時(shí)計(jì)算該數(shù)據(jù)塊的16字節(jié)RS編碼校驗(yàn)數(shù),并存放于16個(gè)寄存器;當(dāng)該數(shù)據(jù)塊完成傳送后,立即取出這16個(gè)寄存器存放的RS編碼校驗(yàn)數(shù)并放到16字節(jié)的內(nèi)部緩存中;同時(shí),開始下一個(gè)數(shù)據(jù)塊的傳送,實(shí)現(xiàn)對(duì)傳輸數(shù)據(jù)的實(shí)時(shí)RS編碼;(2)RS譯碼電路的實(shí)現(xiàn)RS譯碼電路,包括伴隨式計(jì)算模塊、解關(guān)鍵方程模塊、錢氏搜索模塊、求逆模塊、福尼算法模塊和糾錯(cuò)模塊;其中,隨式計(jì)算模塊、解關(guān)鍵方程模塊、錢氏搜索模塊和糾錯(cuò)模塊串行工作,解關(guān)鍵方程模塊經(jīng)福尼算法模塊連接糾錯(cuò)模塊,錢氏搜索模塊經(jīng)求逆模塊、福尼算法模塊連接糾錯(cuò)模塊;FIFO緩存器連接RS譯碼電路接收端與糾錯(cuò)模塊;通過上述模塊,對(duì)于接收到的每239個(gè)字節(jié)數(shù)據(jù),如果有8個(gè)字節(jié)以內(nèi)的任意錯(cuò)誤,RS譯碼電路全部進(jìn)行糾正,恢復(fù)為正確數(shù)據(jù)。
2. 根據(jù)權(quán)利要求1所述的光通信實(shí)時(shí)糾錯(cuò)電路,其特征在于,所述RS編碼電路實(shí)現(xiàn)的 邏輯過程包括(1) 初始化過程將16個(gè)寄存器Dl D16初始化為0 ;(2) 電路開始接收數(shù)據(jù)在數(shù)據(jù)開始傳輸標(biāo)識(shí)信號(hào)"enrs—datastart"有效時(shí),RS編碼 電路就開始接收數(shù)據(jù)塊,并進(jìn)行RS編碼校驗(yàn)數(shù)的計(jì)算;(3) 具體RS編碼計(jì)算將待編碼的信息碼元的第1個(gè)碼元,與D16寄存器中的值進(jìn)行 伽羅瓦域上的加法運(yùn)算,其相加結(jié)果經(jīng)過與門后,分別與a1 al6進(jìn)行伽羅瓦域上的乘 法運(yùn)算,相乘的結(jié)果分別與D寄存器中的值進(jìn)行伽羅瓦域上的加法運(yùn)算,然后將結(jié)果存入 相應(yīng)的D寄存器;第2個(gè)待編碼的信息碼元與D16寄存器中的值進(jìn)行伽羅瓦域上的加法運(yùn) 算,然后進(jìn)行相同的操作,一直到第239個(gè)碼元,依次進(jìn)行相應(yīng)的操作;對(duì)于RS(255,239)來 說,總共需要進(jìn)行239次這樣的運(yùn)算,即239個(gè)周期,最后保存在D寄存器中的值就是所得 的余項(xiàng)r(x);(4) 完成一個(gè)數(shù)據(jù)塊的編碼當(dāng)"enrs—dataend"有效時(shí),說明一個(gè)塊的全部碼元已經(jīng) 送入"RS編碼模塊",并已經(jīng)得到余項(xiàng)r(x);然后把D1 D16的16字節(jié)校驗(yàn)數(shù)寄存器中的 校驗(yàn)數(shù)在一個(gè)時(shí)鐘周期內(nèi)取出來放在16字節(jié)的內(nèi)部緩存中,并對(duì)D1 D16的16個(gè)校驗(yàn)數(shù) 寄存器復(fù)位;此時(shí),RS編碼電路又可以接收下一個(gè)數(shù)據(jù)塊進(jìn)行RS編碼。
3. 根據(jù)權(quán)利要求1所述的光通信實(shí)時(shí)糾錯(cuò)電路,其特征在于,所述伴隨式計(jì)算模塊共 有16個(gè)伴隨式計(jì)算電路,用于判斷接收到的信息碼元是否發(fā)生錯(cuò)誤,如果計(jì)算的結(jié)果全是 0,則說明在傳輸過程中沒有發(fā)生錯(cuò)誤,如果有非0值,說明在傳輸中發(fā)生了錯(cuò)誤。
4. 根據(jù)權(quán)利要求1所述的光通信實(shí)時(shí)糾錯(cuò)電路,其特征在于,所述解關(guān)鍵方程模塊包 括基本單元Upper Cell、基本單元Bottom Cell和Control Block?!姥?,用于執(zhí)行E-DCME 算法,在利用求解出來的伴隨式計(jì)算出錯(cuò)誤位置多項(xiàng)式和錯(cuò)誤值多項(xiàng)式后輸出到錢氏搜索 模塊中,同時(shí)還輸出這些系數(shù)的有效標(biāo)識(shí)符。
5. 根據(jù)權(quán)利要求1所述的光通信實(shí)時(shí)糾錯(cuò)電路,其特征在于,所述錢氏搜索模塊中,將 32個(gè)8bit的寄存器分成4組,每組用來存儲(chǔ)一個(gè)塊的錯(cuò)誤多項(xiàng)式系數(shù),并設(shè)置一個(gè)標(biāo)識(shí)寄 存器來標(biāo)識(shí)每組寄存器是否有合法的多項(xiàng)式系數(shù),從而利用已知的錯(cuò)誤位置多項(xiàng)式和錯(cuò)誤 值多項(xiàng)式來找出具體發(fā)生錯(cuò)誤的位置。
6. 根據(jù)權(quán)利要求1所述的光通信實(shí)時(shí)糾錯(cuò)電路,其特征在于,所述求逆模塊將錢氏搜 索模塊中的錯(cuò)誤位置多項(xiàng)式的奇數(shù)項(xiàng)求倒數(shù),以用于福尼算法模塊的計(jì)算。
7. 根據(jù)權(quán)利要求1所述的光通信實(shí)時(shí)糾錯(cuò)電路,其特征在于,所述福尼算法模塊根據(jù) 錯(cuò)誤值多項(xiàng)式計(jì)算出發(fā)生錯(cuò)誤位置的修正值,以便在糾錯(cuò)模塊中糾正錯(cuò)誤。
8. 根據(jù)權(quán)利要求1所述的光通信實(shí)時(shí)糾錯(cuò)電路,其特征在于,所述糾錯(cuò)模塊根據(jù)錢氏 搜索模塊得到的錯(cuò)誤位置和福尼算法模塊得到的錯(cuò)誤值,與緩存在FIFO緩存器中的原數(shù) 據(jù)幀進(jìn)行伽羅瓦域上的加法運(yùn)算,以糾正在信道傳輸中發(fā)生的錯(cuò)誤。
9. 根據(jù)權(quán)利要求1所述的光通信實(shí)時(shí)糾錯(cuò)電路,其特征在于,所述RS譯碼電路接收到 傳遞來的數(shù)據(jù)塊后,在傳遞給伴隨式計(jì)算模塊的同時(shí)傳送至FIFO緩存器,作為待用的原數(shù) 據(jù)幀。
全文摘要
本發(fā)明涉及數(shù)據(jù)編碼糾錯(cuò)技術(shù),旨在提供一種基于RS(255,239)算法的光通信實(shí)時(shí)糾錯(cuò)電路。該實(shí)時(shí)糾錯(cuò)電路包括RS編碼電路和RS譯碼電路的實(shí)現(xiàn),其中RS譯碼電路包括伴隨式計(jì)算模塊、解關(guān)鍵方程模塊、錢氏搜索模塊、求逆模塊、福尼算法模塊和糾錯(cuò)模塊。本發(fā)明達(dá)成了RS(255,239)算法的全部理論效果,編碼功能、譯碼功能可以同時(shí)進(jìn)行,設(shè)計(jì)獨(dú)立,功能互不干擾;可實(shí)現(xiàn)實(shí)時(shí)的、連續(xù)的編碼及譯碼;可以連續(xù)傳輸糾錯(cuò)后的數(shù)據(jù),可以支持實(shí)時(shí)的數(shù)據(jù)傳輸;支持1.25Gbps的光網(wǎng)絡(luò)數(shù)據(jù)傳輸率。提高數(shù)據(jù)傳輸設(shè)備的抗干擾能力,能夠有效地發(fā)現(xiàn)并糾正受環(huán)境干擾失效的通信數(shù)據(jù),保障光通信設(shè)備間通信數(shù)據(jù)正確。
文檔編號(hào)H03M13/15GK101702625SQ20091015324
公開日2010年5月5日 申請(qǐng)日期2009年10月29日 優(yōu)先權(quán)日2009年10月29日
發(fā)明者吳杰, 周濤 申請(qǐng)人:杭州冠宸科技有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
汕头市| 恩施市| 新巴尔虎左旗| 泸水县| 清丰县| 宜黄县| 固安县| 尖扎县| 泗洪县| 务川| 砀山县| 尚志市| 武威市| 德阳市| 枣庄市| 时尚| 樟树市| 土默特左旗| 冷水江市| 吉林市| 花垣县| 凤山县| 阳高县| 岳阳市| 清远市| 毕节市| 九龙城区| 天长市| 武川县| 天等县| 黔西县| 吕梁市| 疏勒县| 乐安县| 石首市| 湟源县| 承德县| 双城市| 塔城市| 丘北县| 蓬溪县|