1 引言
在許多實際運用的場合中,數(shù)字信號傳輸具有數(shù)據(jù)量大,傳輸速度高,采用串行傳輸?shù)忍攸c。這就要求數(shù)據(jù)收發(fā)雙方采用合理的編解碼方式及高速器件。數(shù)字信號傳輸一般分并行傳輸、串行傳輸兩種。并行傳輸具有數(shù)據(jù)源和數(shù)據(jù)目的地物理連接方便,誤碼率低,傳輸速率高。但是并行傳輸方式要求各條線路同步,因此需要傳輸定時和控制信號,而其各路信號在經(jīng)過轉(zhuǎn)發(fā)與放大處理后,將引起不同的延遲與畸變,難以實現(xiàn)并行同步。若采用更復(fù)雜的技術(shù)、設(shè)備與線路,其成本會顯著上升。而高速遠程數(shù)據(jù)傳輸一般采用串行同步傳輸。傳統(tǒng)建立準確的時鐘信號的方法是采用鎖相環(huán)技術(shù)。但鎖相環(huán)有若干個明顯缺陷,一是其同步建立時間及調(diào)整精度即使采用變階的方法也很難兼顧;二是鎖相環(huán)需要一個高精度高頻率的本地時鐘。 本文所討論的兩種串行同步傳輸方法,無需高頻率時鐘信號,就可完全數(shù)字化。采用Altera公司的ACEXlK系列器件完成電路設(shè)計,且外圍電路簡單,成本低,效果好。
2主要器件介紹
編碼和解碼采用ACEXlK系列器件EPlK100QC208-2。ACEXlK器件是Altera公司針對通信、音頻處理及類似場合應(yīng)用而設(shè)計的。該系列器件具有如下特性:
高性能。采用查找表(LUT)和嵌入式陣列塊(EAB)相結(jié)合的結(jié)構(gòu),適用于實現(xiàn)復(fù)雜邏輯功能和存儲器功能,例如通信中應(yīng)用的DSP、多通道數(shù)據(jù)處理、數(shù)據(jù)傳遞和微控制等;
高密度。典型門數(shù)為1萬到10萬門,有多達49 152位的RAM(每個EAB有4 096位RAM)。
系統(tǒng)性能。器件內(nèi)核采用2.5 V電壓,功耗低,其多電壓引腳驅(qū)動2.5 V、3.3 V、5.0 V的器件,也可被這些電壓所驅(qū)動,雙向I/O引腳執(zhí)行速度可達250 MHz;
靈活的內(nèi)部互聯(lián)。具有快速連續(xù)式延時可預(yù)測的快速通道互連。
3實現(xiàn)方法
本文所述方法應(yīng)用于數(shù)字音頻數(shù)據(jù)實時傳輸。原始數(shù)字音頻每一幀視頻數(shù)據(jù)為并行8位,速率達2 Mb/s,串行傳輸速度為16 Mb/s。
3.1新的曼徹斯編碼方法 這種方法是在接收端利用狀態(tài)轉(zhuǎn)移圖的方法得到同步時鐘信號。具體方法如下:
(1)幀同步信號的產(chǎn)生
發(fā)送方系統(tǒng)提供64 MHz時鐘,將其4分頻得到16 MHz時鐘作為系統(tǒng)時鐘,64 MHz時鐘僅用于最后的消除信號毛刺。幀同步共16位,其中前12位為"0",后3位為"1",最后1位為"0"。仿真時序如圖1所示。
(2)編碼方法
數(shù)據(jù)發(fā)送采用曼徹斯特編碼,編碼規(guī)則為:0→01(零相位的一個周期的方波);1→10(π相位的一個周期的方波)。
從以上規(guī)則可知輸出信號將在每一位碼元中間產(chǎn)生跳變,因此可采用具有游程短,位定時信息豐富的曼徹斯特編碼電路。編碼時,當(dāng)輸入信號為"0"時,輸出為時鐘的"非";當(dāng)輸入信號為"1"時,輸出與時鐘一致。因此,可采用數(shù)據(jù)選擇時鐘,其電路如圖2所示。
仿真的編碼時序如圖3所示,當(dāng)輸人數(shù)據(jù)(data)為"1",輸出(out)與時鐘(clk)同相(稍有延時);反之,當(dāng)輸入數(shù)據(jù)為"0",輸出與時鐘反相(稍有延時)。
(3)狀態(tài)轉(zhuǎn)移圖生成同步信號
接收方系統(tǒng)提供80 MHz時鐘,接收方和發(fā)送方的時鐘并非來自同一個時鐘源。將發(fā)送方的信號通過序列碼檢測器,發(fā)送方的幀同步信號有一個維持187.5 ns的脈沖(3個16 MHz時鐘),當(dāng)接收方檢測到"11111111111111"時(14個80 MHz時鐘,共175 ns),則認為是有效信號,然后向后級發(fā)出一個復(fù)位信號,接收方的后繼模塊開始重新工作。由于發(fā)送方采用曼徹斯特編碼,數(shù)據(jù)不會出現(xiàn)連續(xù)的"1"或連續(xù)的"0",游程短,這種檢測幀同步信號的方法是有效的,不存在把所要傳輸?shù)臄?shù)據(jù)當(dāng)成幀同步的情況。當(dāng)該復(fù)位信號產(chǎn)生后,狀態(tài)機開始工作,用狀態(tài)機的狀態(tài)轉(zhuǎn)移產(chǎn)生同步信號。狀態(tài)轉(zhuǎn)移圖如圖3所示。
根據(jù)曼徹斯特編碼規(guī)則,每一位兩個碼元中間電平產(chǎn)生跳變,因此不會出現(xiàn)超過62.5 ns的"1"或者"0",反映在狀態(tài)轉(zhuǎn)移圖上表現(xiàn)為最多出現(xiàn)6個連續(xù)的"1"或者"0"。當(dāng)出現(xiàn)"111111"時,根據(jù)狀態(tài)轉(zhuǎn)移圖,它將返回到狀態(tài)t1,但是下次必然轉(zhuǎn)移到狀態(tài)f6,因此對同步時鐘的輸出沒有影響。該方法仿真的波形圖如圖5所示,其中dataout為發(fā)送方的輸出信號,即接收方的輸人信號;clk80m_in為接收方的系統(tǒng)時鐘;current_state為狀態(tài)機的狀態(tài),狀態(tài)0~10分別對應(yīng)狀態(tài)轉(zhuǎn)移圖4的狀態(tài)S0,t1~t5,f6~f10;clkout為恢復(fù)出來的同步時鐘。當(dāng)出現(xiàn)一個31 ns寬度的電平時將產(chǎn)生一個同步時鐘;當(dāng)出現(xiàn)持續(xù)62 ns寬度的脈沖時產(chǎn)生兩個同步時鐘。采用clkout的上升沿即可準確恢復(fù)原信號。
由于不會連續(xù)出現(xiàn)超過6個"1"或"0",累積誤差小,采用該