HDB3編碼器ASIC的設(shè)計(jì)
摘要:在數(shù)字通信領(lǐng)域中,HDB3碼是一種非常適合在基帶信號(hào)傳輸系統(tǒng)中傳輸?shù)拇a型,并保持了AMI的優(yōu)點(diǎn)。為了滿足用戶的需求,提高通信系統(tǒng)工作穩(wěn)定性,HDB3編碼器專用集成電路(ASIC)集成了插“V”、插“B”和“V”碼極性糾正模塊,通過仿真和硬件驗(yàn)證,它可以有效消除傳輸信號(hào)中的直流成分和很小的低頻成分,可以實(shí)現(xiàn)基帶信號(hào)在基帶信道中直接傳輸與提取,同時(shí)能很好地提取定時(shí)信號(hào)。
關(guān)鍵字:基帶信號(hào);HDB3編碼器;門電路;ASIC
0 引言
數(shù)字通信的主要目的就是準(zhǔn)確無誤地傳輸信道中所攜帶的信息。數(shù)字通信系統(tǒng)中,發(fā)送端把數(shù)字信號(hào)變成適合信道的基帶信號(hào)(基帶調(diào)制),然后經(jīng)過信道進(jìn)行傳輸;接收端則把信道中的基帶信號(hào)還原成原始的數(shù)字信號(hào)(基帶解調(diào)),在這個(gè)調(diào)制解調(diào)的過程中首要的問題就是碼型的選擇問題。HDB3編碼具有很多優(yōu)點(diǎn):其一,它很容易在其相應(yīng)基帶信號(hào)中提取定時(shí)信號(hào);其二,HDB3碼無直流成分和很小的低頻成分;其三,傳輸效率高。因此,HDB3碼非常適合在基帶信道中進(jìn)行傳輸,并有必要進(jìn)行HDB3編碼器芯片的設(shè)計(jì)。
1 HDB3編碼器ASIC的設(shè)計(jì)流程
首先采用Verilog HDL進(jìn)行前端設(shè)計(jì),在軟件QuartusⅡ上編譯仿真;然后進(jìn)行綜合、門電路仿真和硬件驗(yàn)證;最后進(jìn)行后端版圖設(shè)計(jì)。
2 HDB3編碼器的硬件描述語言設(shè)計(jì)思路
HDB3編碼原理:首先將信息代碼變換成交替反轉(zhuǎn)碼(AMI碼,AMI碼的編碼規(guī)則:將代碼中的“0”仍然變換成傳輸碼中的“0”,而把“1”交替地變換為傳輸碼中的+1,-1,+1,-1,…),然后來檢查交替反轉(zhuǎn)碼中的連“0”情況。假如在該串碼型中出現(xiàn)了4個(gè)或者4個(gè)以上
連“0”時(shí),將每4個(gè)連“0”段的第4個(gè)“0”替換成一個(gè)破壞符號(hào)“V”,該破壞碼的極性與該串碼型中前一非“0”符號(hào)同極性。為了保證插入破壞符號(hào)后的序列不會(huì)破壞,將相鄰V符號(hào)極性交替出現(xiàn)。因此當(dāng)兩個(gè)相鄰的V符號(hào)間有偶數(shù)個(gè)非“0”符號(hào)時(shí),就要將該小段中第1個(gè)“0”變成“+B”或者“-B”,B符號(hào)的極性與前一非“0”符號(hào)相反,后面非“0”符號(hào)再交替變化。在單雙極性變換時(shí),必須要區(qū)分“+1”,“-1”,“+V”,“-V”,“+B”,“-B”,“0”,因此用一串二進(jìn)制來表示,具體表示如表1所示。
該HDB3編碼器由插入“V”模塊、插入“B”模塊和“V”碼極性糾正模塊組成。
2.1 插入“V”模塊
該模塊功能是將信息代碼轉(zhuǎn)換成正負(fù)交替的碼型,同時(shí)將每4個(gè)連“0”段的第4個(gè)“0”替換成“V”。首先判斷輸入的碼型是“0”或“1”,如果是“0”,每接收到一次,則讓一個(gè)兩位的計(jì)數(shù)器開始加“1”。為了保證計(jì)數(shù)的是4個(gè)連“0”,當(dāng)輸入的編碼串中沒有出現(xiàn)4個(gè)連“0”而出現(xiàn)了“1”時(shí),兩位計(jì)數(shù)器的計(jì)數(shù)初值重新清“0”。假如出現(xiàn)“0000”,還要判斷前一非“0”符號(hào)的極型,目的就是為了讓第4個(gè)“0”替換成與前一非“0”符號(hào)相同極性的破壞碼(V);如果輸入是“1”,只需判斷前一非“0”符號(hào)是“+”還是“-”,比如說,前一非“0”符號(hào)為“+”,那么此次的“1”變?yōu)?ldquo;-1”輸出,同時(shí)讓符號(hào)標(biāo)志位變?yōu)?ldquo;-”狀態(tài),同理,前一非“0”符號(hào)為“-”,輸出結(jié)果將是“+1”,符號(hào)標(biāo)志將變?yōu)?ldquo;+”。設(shè)計(jì)流程見圖1,該模塊門電路見圖2。
2.2 插入“B”模塊
信息代碼經(jīng)過上級(jí)模塊(插入“V”模塊)以后,輸出的代碼將是極性正負(fù)交替的碼型。插入“B”模塊的功能是:當(dāng)兩個(gè)連續(xù)的“V”之間有偶數(shù)個(gè)“1”時(shí),要將該小段中第一個(gè)“0”替換成“B”,其符號(hào)與前一非“0”符號(hào)相反;當(dāng)兩個(gè)連續(xù)的“V”間有奇數(shù)個(gè)“1”時(shí),則無須替換。本模塊的設(shè)計(jì)精髓是:設(shè)計(jì)成可綜合的狀態(tài)機(jī),利用狀態(tài)機(jī)的方法將信息代碼編成HDB3的碼。此設(shè)計(jì)共5個(gè)狀態(tài),并且將插入的破壞碼“B”的極性記錄下來,以便下級(jí)模塊進(jìn)行“V”碼極性的糾正。在第一個(gè)狀態(tài)中,如果接到的數(shù)據(jù)是“+V”或“-V”,信息代碼原樣輸出,分別轉(zhuǎn)移到第2、第3個(gè)狀態(tài);如果是其他符號(hào)的數(shù)據(jù),信息代碼也原樣輸出,回到第一個(gè)狀態(tài)。在第二個(gè)狀態(tài)中,當(dāng)有非“+1”符號(hào)輸入時(shí),信息代碼原樣輸出,回到第二個(gè)狀態(tài);當(dāng)有“+1”輸入時(shí),說明兩個(gè)相鄰的“V”之間有偶數(shù)個(gè)“1”,轉(zhuǎn)移到第4個(gè)狀態(tài)。在第四個(gè)狀態(tài)中,當(dāng)有“0”輸入時(shí),則讓此刻的“0”替換成“-B”,回到第一個(gè)狀態(tài),重新開始判斷兩個(gè)連續(xù)的“V”之間是否有偶數(shù)個(gè)“1”;當(dāng)有非“0”符號(hào)輸入時(shí),回到第二個(gè)狀態(tài)。第三、第五個(gè)狀態(tài)工作方式與以上類似。狀態(tài)轉(zhuǎn)移圖見圖3,模塊門電路見圖4。
2.3 “V”碼極性糾正模塊
由于插入“B”模塊的存在,使得“V”碼的極性與前一非“0”符號(hào)的極性不能保持一致。因此,需要加一個(gè)“V”碼極性糾正模塊,在該模塊中,有兩個(gè)數(shù)據(jù)輸入端,一個(gè)是信息代碼,另外一個(gè)是記錄“B”碼極性的標(biāo)志。當(dāng)標(biāo)志為“01”和“11”時(shí),分別表示此刻插入“B ”碼極性是“-”和“+”。設(shè)計(jì)思路:當(dāng)標(biāo)志是“01”,且緊接著“B”碼后的第一個(gè)“V”碼極性是“+”時(shí),就讓“+V”替換成“-V”輸出,同理,當(dāng)標(biāo)志是“11”,且緊接著“B”碼后的第一個(gè)“V”碼極性是“-”時(shí),就讓“-V”替換成“+V”輸出,其他的狀態(tài)都保持原樣輸出。該模塊門級(jí)電路見圖5。
3 HDB3編碼器仿真結(jié)果分析
仿真結(jié)果見圖6,當(dāng)輸入的原始信息代碼串“10101100000110000100001100001100111000011110000”經(jīng)過插入“V”模塊后,原始的信息代碼串被轉(zhuǎn)換成正負(fù)交替的極性碼(其中“V”碼除外,因?yàn)?ldquo;V”碼的極性和前一非“0”碼的極性相同),輸出信號(hào)codeoutv為:“60206 200030620003600072600072600262000362620003”,并作為插入“B”模塊的輸入信號(hào),其輸出信號(hào)為codeoutb,根據(jù)要求將對(duì)該串信息代碼插入破壞碼(“B”),在插入破壞碼后,使得“V”碼的極性不符合HDB3編碼的規(guī)則,因此在該模塊中增加了“B”碼極性的標(biāo)志輸出,該標(biāo)志在“V”碼極性糾正模塊中將codeoutb信息代碼的“V”碼極性進(jìn)行糾正,最后輸出端codeout的輸出結(jié)果為:“6020620003062500760007261 0032610262000362625007”。
4 結(jié)語
該HDB3編碼芯片的設(shè)計(jì)采用了優(yōu)化技術(shù)和巧妙的邏輯電路設(shè)計(jì),通過仿真和硬件驗(yàn)證,它可以有效消除傳輸信號(hào)中的直流成分和很小的低頻成分,實(shí)現(xiàn)了基帶信號(hào)在基帶信道中直接傳輸與提取,并能很好地提取定時(shí)信號(hào)。最后采用0.25μm的硅柵工藝?yán)L制版圖,很大程度上減小了版圖面積,且工藝先進(jìn)、性能穩(wěn)定,芯片可廣泛應(yīng)用于數(shù)字通信領(lǐng)域。