專(zhuān)利名稱(chēng):高速8b/10b編碼裝置及編碼器的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及通信領(lǐng)域,尤其涉及一種高速8B/10B編碼裝置及編碼器。
背景技術(shù):
在當(dāng)前應(yīng)用的許多高速串行接口中,數(shù)據(jù)編碼經(jīng)常采用8B10B編碼。USB3.0中規(guī)定的超高速(SuperSpeed)模式下即采用8B10B編碼。8B10B編碼從字面理解就是把8比特的數(shù)據(jù)轉(zhuǎn)換成10比特的數(shù)據(jù)進(jìn)行傳輸。對(duì)數(shù)據(jù)進(jìn)行編碼的目的是避免出現(xiàn)過(guò)多連續(xù)的“I”和“O”,保證直流平衡。但是,現(xiàn)有的編碼器件原理復(fù)雜,在事前沒(méi)有對(duì)算法的原理和實(shí)現(xiàn)方法有所了解的情況下,開(kāi)發(fā)人員需要花大量的時(shí)間用于設(shè)計(jì)高速編碼器。
發(fā)明內(nèi)容
本發(fā)明解決的技術(shù)問(wèn)題是提供一種模塊化、便于用戶(hù)設(shè)計(jì)的高速8B/10B編碼裝
置及編碼器。為達(dá)到上述目的,本發(fā)明采用的技術(shù)方案是:一種高速8B/10B編碼裝置,其特征在于:包括特殊信號(hào)判定模塊、5B/6B查找表、5B/6B操作符、3B/4B查找表、3B/4B操作符、特殊字符編碼器和輸出產(chǎn)生模塊;
所述特殊信號(hào)判定模塊,接收8B數(shù)據(jù)并判定是否為特殊編碼指示信號(hào),是則傳輸給所述特殊字符編碼器轉(zhuǎn)換為IOB特殊編碼值;否則分為低位5B數(shù)據(jù)、高位3B數(shù)據(jù),分別傳輸給5B/6B查找表、3B/4B查找表產(chǎn)生6B、4B輸出數(shù)據(jù);
所述5B/6B查找表、5B/6B操作符、3B/4B查找表、3B/4B操作符與輸出產(chǎn)生模塊連接,所述輸出產(chǎn)生模塊接收6B、4B輸出數(shù)據(jù)或IOB特殊查表值;
當(dāng)輸入數(shù)據(jù)特殊編碼指示信號(hào)(kl,k2, k3或k4)無(wú)效時(shí),所述5B/6B操作符和3B/4B操作符控制輸出產(chǎn)生模塊輸出IOB輸出數(shù)據(jù);當(dāng)輸入數(shù)據(jù)特殊編碼指示信號(hào)有效時(shí),所述特殊字符編碼器控制輸出產(chǎn)生模塊輸出特殊編碼IOB輸出數(shù)據(jù)。本發(fā)明的第一優(yōu)選方案在于,所述5B/6B操作符和3B/4B操作符控制輸出產(chǎn)生模塊取反,當(dāng)輸入的低位5B數(shù)據(jù)和高位3B數(shù)據(jù)的編碼存在互補(bǔ)的兩種編碼,并且輸入不均等性的值為正時(shí),該信號(hào)指示輸出產(chǎn)生模塊對(duì)模塊接收6B、4B輸出數(shù)據(jù)或IOB特殊查表值進(jìn)行按位取反操作;當(dāng)前輸入的低位5B數(shù)據(jù)和高位3B數(shù)據(jù)不均等性值不為零時(shí),對(duì)6B、4B輸出數(shù)據(jù)或IOB特殊查表值取反。本發(fā)明的第二優(yōu)選方案在于,所述特殊編碼指示信號(hào)為多個(gè)。本發(fā)明的第三優(yōu)選方案在于,所述的特殊編碼指示信號(hào)為4個(gè)。本發(fā)明同時(shí)記載了一種高速8B/10B編碼器,其特征在于:包括多個(gè)所述高速8B/10B編碼裝置,所述多個(gè)高速8B/10B編碼裝置并聯(lián)。所述高速8B/10B編碼器的第一優(yōu)選方案為,所述高速8B/10B編碼裝置為4個(gè)。本發(fā)明的設(shè)計(jì)思想在于:編碼時(shí),8比特的數(shù)據(jù)被分成低位5比特和高位3比特,分別編碼為6比特和4比特的數(shù)據(jù)。在此分別稱(chēng)為5B/6B和3B/4B編碼。對(duì)于每一個(gè)編碼后的6比特或者4比特的數(shù)據(jù),比特?cái)?shù)據(jù)中出現(xiàn)個(gè)數(shù)差的情況只有三種:0,+2,-2。這種個(gè)數(shù)的差異被稱(chēng)為不均等性(Disparity)。對(duì)應(yīng)于前一個(gè)數(shù)據(jù)的不均等性情況,編碼的4B或者6B數(shù)據(jù)通常從兩種可能的極性中選擇一種,以平衡之前的極性,達(dá)到直流平衡的目的。所以,在進(jìn)行一連串?dāng)?shù)據(jù)的編碼時(shí),電路通常需要保留當(dāng)前不均等性(RunningDisparity),以便選擇待編碼數(shù)據(jù)的極性。例如,對(duì)于8比特的數(shù)據(jù)“00000000”,如果當(dāng)前不均等性為負(fù),則10比特?cái)?shù)據(jù)編碼為“100111 0100”。除了數(shù)據(jù)以外,8B/10B編碼規(guī)范還規(guī)定了一些特殊編碼(K-character)。這些特殊編碼通常用于對(duì)數(shù)據(jù)流的控制。比如用于符號(hào)對(duì)齊的K28.5,即“101 11100”,用于動(dòng)態(tài)插入或者刪除以補(bǔ)償時(shí)鐘域偏差的K28.1,即“001 11100”。USB3.0規(guī)范中規(guī)定的特殊編碼為K28.0-K28.7、K23.7、Κ27.7、Κ29.7、Κ30.7。超過(guò)此范圍的特殊編碼將被視為錯(cuò)誤編碼。本發(fā)明的技術(shù)優(yōu)勢(shì)在于:因?yàn)樘厥饩幋a的數(shù)量十分有限,因此不對(duì)其進(jìn)行3Β/4Β和5Β/6Β的區(qū)分,而直接輸出查表結(jié)果,從而簡(jiǎn)化了設(shè)計(jì)。并聯(lián)的4個(gè)8Β/10Β編碼單元Ρ1、Ρ2、Ρ3、Ρ4,構(gòu)成最終的8Β/10Β編碼器。該8Β/10Β編碼器可以單周期內(nèi)完成編碼。本設(shè)計(jì)的查找表對(duì)不均等性的傳播路徑作了優(yōu)化,因此能夠能達(dá)到較高的速度。我們使用CMOS 65nm工藝綜合該8B/10B編碼器,在典型情況下得到最長(zhǎng)延時(shí)路徑僅為0.327ns,遠(yuǎn)超過(guò)一般PHY數(shù)字邏輯部分的應(yīng)用要求。而該思想不要求設(shè)計(jì)者深入了解8B/10B的編碼原理,因此能夠很快地完成設(shè)計(jì)。本設(shè)計(jì)通過(guò)構(gòu)建基本查找表和提前確定對(duì)查表結(jié)果所需進(jìn)行的操作,使得設(shè)計(jì)者在不需要深入理解8B/10B編碼原理的基礎(chǔ)上,快速實(shí)現(xiàn)一個(gè)高速的編碼器。
圖1是本實(shí)施例的高速8B/10B編碼器示意圖。
具體實(shí)施例方式下面結(jié)合具體實(shí)施例對(duì)發(fā)明做進(jìn)一步說(shuō)明。高速8B/10B編碼器的輸入信號(hào)有32比特輸入數(shù)據(jù)Din[31:0],輸入不均等性Dispin,輸入數(shù)據(jù)特殊編碼指示信號(hào)kl,k2,k3,k4。其中32比特輸入數(shù)據(jù)Din [31:0],分成4個(gè)8比特的數(shù)據(jù),分別輸入給四個(gè)高速8B/10B編碼裝置。高速8B/10B編碼器的輸出信號(hào)有40比特輸出數(shù)據(jù)Dout[39:0]和輸出不均等性Dispout。其中40比特的輸出數(shù)據(jù)Dout[39:0],由四個(gè)8B10B單元的10比特輸出數(shù)據(jù)組成。這樣,每個(gè)8B10B單元,分別有本模塊的8比特輸入數(shù)據(jù)(Din [7:0],Din [15:8],Din [23:16]或Din [31:24]),輸入不均等性(Dispin, Displ, Disp2或者Disp3),輸入數(shù)據(jù)特殊編碼指示信號(hào)(kl, k2, k3或k4),以及10 比特的輸出數(shù)據(jù)(Dout [9:0], Dout [19:10], Dout [29:20]或 Dout [39:30])。相鄰模塊之間,處理較高位的模塊需要處理較低位模塊的不均等性結(jié)果。因此Displ,Disp2, Disp3三個(gè)信號(hào)為整個(gè)模塊的內(nèi)部信號(hào),僅在8B10B編碼單元間傳播,并不被外部模塊使用。每一個(gè)高速8B/10B編碼裝置完全相同,包含5B/6B查找表、5B6B操作符、3B/4B查找表、3B/4B操作符、特殊信號(hào)判定模塊、特殊字符編碼器和輸出產(chǎn)生模塊。所述特殊信號(hào)判定模塊,接收SB數(shù)據(jù)并判定是否為特殊編碼指示信號(hào),是則傳輸給所述特殊字符編碼器轉(zhuǎn)換為IOB特殊查表值;否則分為低位5B數(shù)據(jù)、高位3B數(shù)據(jù),分別傳輸給5B/6B查找表、3B/4B查找表產(chǎn)生6B、4B輸出數(shù)據(jù)。當(dāng)輸入數(shù)據(jù)特殊編碼指示信號(hào)無(wú)效時(shí),所述5B/6B操作符和3B/4B操作符控制輸出產(chǎn)生模塊取反。如果輸入的低位5B數(shù)據(jù)和高位3B數(shù)據(jù)的編碼存在互補(bǔ)的兩種編碼,并且輸入不均等性的值為正時(shí),則該信號(hào)指示輸出產(chǎn)生模塊對(duì)模塊接收6B、4B輸出數(shù)據(jù)進(jìn)行按位取反操作;否則,將直接使用6B、4B輸出作為本模塊IOB輸出數(shù)據(jù)。當(dāng)輸入數(shù)據(jù)特殊編碼指示信號(hào)有效時(shí),如果輸入不均等性的值為正時(shí),輸出產(chǎn)生模塊對(duì)模塊接收的IOB特殊查表值按位取反;否則,將直接使用IOB特殊查表值作為模塊的IOB輸出數(shù)據(jù)。特殊字符編碼器的作用是,特殊編碼指示信號(hào)(kl,k2,k3或k4)有效時(shí),對(duì)輸入進(jìn)行特殊編碼,并將IOB特殊查表值提供給輸出產(chǎn)生模塊。輸出產(chǎn)生模塊接收5B/6B查找表、3B/4B查找表、特殊字符編碼器的輸出結(jié)果,對(duì)輸入數(shù)據(jù)和不均等性進(jìn)行操作,產(chǎn)生編碼后的10比特?cái)?shù)據(jù)和輸出不均等性。當(dāng)特殊編碼指示信號(hào)無(wú)效時(shí),輸出產(chǎn)生模塊采用5B6B查找表、3B4B查找表的輸出,產(chǎn)生本高速8B/10B編碼裝置的輸出數(shù)據(jù)和輸出不均等性;當(dāng)特殊編碼指示信號(hào)有效時(shí),輸出產(chǎn)生模塊采用特殊字符編碼器的輸出,以產(chǎn)生本高速8B/10B編碼裝置的輸出數(shù)據(jù)和輸出不均等性。4個(gè)并聯(lián)的高速8B/10B編碼裝置,組成本發(fā)明的高速8B/10B編碼器根據(jù)輸入32位輸入數(shù)據(jù)Din[31:0]、輸入數(shù)據(jù)特殊編碼指示信號(hào)(kl,k2,k3,k4)和輸入不均等性Dispin,編碼產(chǎn)生40位輸出數(shù)據(jù)Dout [39:0]和輸出不均等性Dispout。本發(fā)明采用32位輸入的目的在于,對(duì)于USB3.0超高速情況下的5吉比特?cái)?shù)據(jù)率,數(shù)字部分電路的時(shí)鐘僅僅需要125兆。而如果采用單個(gè)高速8B/10B編碼裝置完成操作,時(shí)鐘將達(dá)到500兆。這樣32比特的輸入使得頻率下降,對(duì)數(shù)字電路和PCB的設(shè)計(jì)要求就大大降低了。根據(jù)具體傳輸功能需求可選擇I個(gè)、2個(gè)或4個(gè)等高速8B/10B編碼裝置并聯(lián)。完成具體位置的傳輸需求。本發(fā)明不限于以上的實(shí)施方式,本領(lǐng)域技術(shù)人員根據(jù)本發(fā)明的揭示,對(duì)于本發(fā)明做出的改進(jìn)和修改都應(yīng)該在本發(fā)明的保護(hù)范圍之內(nèi)。
權(quán)利要求
1.一種高速8B/10B編碼裝置,其特征在于:包括特殊信號(hào)判定模塊,5B/6B查找表、5B/6B操作符、3B/4B查找表、3B/4B操作符、特殊字符編碼器和輸出產(chǎn)生模塊; 所述特殊信號(hào)判定模塊,接收8B數(shù)據(jù)并判定是否為特殊字符,是則傳輸給所述特殊字符編碼器轉(zhuǎn)換為IOB特殊查表值;否則分為低位5B數(shù)據(jù)、高位3B數(shù)據(jù),分別傳輸給5B/6B查找表、3B/4B查找表產(chǎn)生6B、4B輸出數(shù)據(jù); 所述5B/6B查找表、5B/6B操作符、3B/4B查找表、3B/4B操作符與輸出產(chǎn)生模塊連接,所述輸出產(chǎn)生模塊接收6B、4B輸出數(shù)據(jù)或IOB特殊查表值; 所述5B/6B操作符和3B/4B操作符控制輸出產(chǎn)生模塊輸出IOB輸出數(shù)據(jù)。
2.根據(jù)權(quán)利要求1所述的高速8B/10B編碼裝置,其特征在于:所述5B/6B操作符和3B/4B操作符控制輸出產(chǎn)生模塊取反,當(dāng)輸入的低位5B數(shù)據(jù)和高位3B數(shù)據(jù)的編碼存在互補(bǔ)的兩種編碼,并且輸入不均等性的值為正時(shí),該信號(hào)指示輸出產(chǎn)生模塊對(duì)模塊接收6B、4B輸出數(shù)據(jù)或IOB特殊查表值進(jìn)行按位取反操作;當(dāng)前輸入的低位5B數(shù)據(jù)和高位3B數(shù)據(jù)不均等性值不為零時(shí),對(duì)6B、4B輸出數(shù)據(jù)或IOB特殊查表值取反。
3.根據(jù)權(quán)利要求1所述的高速8B/10B編碼裝置,其特征在于:所述特殊字符為多個(gè)。
4.根據(jù)權(quán)利要求1所述的高速8B/10B編碼裝置,其特征在于:所述的特殊字符為4個(gè)。
5.一種高速8B/10B編碼器,其特征在于:包括多個(gè)所述高速8B/10B編碼裝置,所述多個(gè)高速8B/10B編碼裝置并聯(lián)。
6.根據(jù)權(quán)利要求5所述高速8B/10B編碼器,其特征在于:所述高速8B/10B編碼裝置為4個(gè)。
全文摘要
本發(fā)明涉及一種高速8B/10B編碼裝置,其特征在于包括特殊信號(hào)判定模塊、5B/6B查找表、5B/6B操作符、3B/4B查找表、3B/4B操作符、特殊字符編碼器和輸出產(chǎn)生模塊。本發(fā)明通過(guò)構(gòu)建基本查找表和提前確定對(duì)查表結(jié)果所需進(jìn)行的操作,使得設(shè)計(jì)者在不需要深入理解8B/10B編碼原理的基礎(chǔ)上,快速實(shí)現(xiàn)一個(gè)高速的編碼器。
文檔編號(hào)H04L1/00GK103138889SQ20121051541
公開(kāi)日2013年6月5日 申請(qǐng)日期2012年12月5日 優(yōu)先權(quán)日2012年12月5日
發(fā)明者曹富強(qiáng) 申請(qǐng)人:無(wú)錫華大國(guó)奇科技有限公司