非對稱數字用戶環路(ADSL)是目前寬帶接入網技術中最具有前景及競爭力的一種[1]。雖然歐美一些先進國家在ADSL示范網上取得了成功,但在當前Internet的應用環境中,要廣泛應用ADSL還有阻力。主要原因是ADSL系統技術較為復雜,采用集成電路(IC)設計方法,通過印刷電路板(PCB)來將多芯片集成為系統,系統實際性能并不理想,同時使得ADSL設備制作成本較高,因此難以推廣使用。采用片上系統設計方法[2][3][4]把各個子系統有機地集成到一個芯片上去,可以很好地克服多芯片集成系統所引起的系統性能問題,使ADSL真正成為一種高速、低成本的Internet高速接入技術。本文介紹ADSL收發器片上系統芯片設計,給出了硬件實現的具體描述。
1 ADSL收發器片上系統芯片總體設計
設計的片上系統(System on a Chip)芯片如圖1所示。其中存儲器核采用NMI Electronics存儲器核,PCI采用Eureka Technology的PCI核,DSP核選用某公司的DSP核,DSP算法自主設計開發。MCU核完成與DSP核、ATM成幀器核及各種接口的通信、控制、管理功能,包括PCI總線接口、USB接口、10BASE-T接口及內部總線的協調控制工作,通過專用邏輯模塊來完成;DSP核致力于完成收發器設備中各種核心算法,包括ADSL子信道劃分算法、DMT(離散多音頻調制)子信道比特分配算法、功率調整、非線性回波抵消算法、自適應均衡算法等;模擬前端AFE核完成A/D、D/A轉換、線路驅動及分離器功能;ATM成幀器核完成ATM幀頭定位及成幀功能,其中的邏輯電路完成CRC編解碼、擾碼與解碼、RS編解碼、交織與解交織和TCM編解碼;通過模式選擇本設計可以工作于ATM和STM兩種模式下;本芯片還提供了控制通道(RS232接口),實現對系統的管理、監視和調試功能。設計特點:(1)模擬前端核與其他核集成在一起,避免了線性驅動器件中常見的四個電源至少需要三個的情況,實現了高效率、低功耗的設計。(2)可在局端DSL接入復用器中直接當作線卡來用,以提供高速因特網接入服務。(3)支持所有最新的ADSL標準,包括ANSI T1.413Issue 2、ITU G.992.1和ITU G.992.2。它還提供了G.Lite運作所需要的低開銷、快速啟動和再訓練功能。(4)通過控制口提供配置和控制ADSL線的所有功能,減輕主機控制器的管理負擔。
2 芯片中的典型電路設計與實現
2.1 ATM成幀器設計
ATM成幀器完成用戶數據接口功能。用戶數據接口將接收的Utopia接口或者STM接口數據分為快速Utopia接口或者STM接口。用戶數據接口分為接收方向和發送方向兩個部分,發送方向是由芯片外向芯片內,所處理數據包括ATM數據(utopia接口)、STM數據,將其組成為ADSL超幀,并分為交織通道和快速通道;接收方向是將交織通道和快速通道 的數據通過解幀等變換發送出去,也分為utopia接口數據、STM數據。其大致的結構如圖2所示。
??? STM接口在發送方向包括STM_Data和STM_CLK兩種信號,在接收方向包括STM_Data和STM_CLK兩種信號。在發送方向,STM信號經過并串轉換后,以串行方式進行傳送,SLT_Data0傳送偶數比特,SLT_Data1傳送奇數比特,然后在通道分類中根據外部微處理器的配置(通過控制接口)將數據送入fast通道或者interleave通道。在接收方向,從fast通道和interleave通道中來的數據在通道合并中合并為串行數據,SLR_Data0傳送偶數比特,SLR_Data1傳送奇數比特,再經過串并轉換送到STM接口中。其中,超幀指標模塊主要產生指示超幀的信號(包括接收和發送方向),VAL和REQ是字節數據有效信號,Frame信號是數據超幀開始信號,CLK信號是超幀時鐘。根據Utopia協議可以知道,Utopia接口每個字節數據都是由一個時鐘周期來傳送的,所以傳送一個信元可以用53個時鐘周期。在發送方向和接收方向的同步時鐘信號都是由ATM層發出的,可以把他們看成是異步時鐘。從Utopia接口進入芯片的數據首先通過地址譯碼,選擇發送的端口地址,然后由發送控制器控制從Utopia接口來的數據,將它們存入發送緩沖,然后到信元速率接口控制器。信元速率控制器模塊的功能為:當ATM層發送的信元速率小于ADSL的下行傳送數據速率時,信元速率控制器就插入一些空信元來使兩乾的數據速率匹配。HEC生成模塊的功能:處理信元的HEC,提高出現滑碼時的信元定界能力。在處理信元在接收誤碼計數器中記錄下來,用于以后的性能監測中。信元加擾模塊的功能:防止在信元負荷中出現與HEC相同的情況。幀適配模塊的功能:將信元數據流整理成適于ADSL超幀數據結構。一方面實現同步,在ADSL中可以通過填充字節LEX、AEX來實現。如果發送時鐘稍快一點,將把固定的字節數用完,這時可以用LEX、AEX來傳送數據。如果發送時鐘稍慢一點,固定的字節數將不會被用完,這時候可以不用信號(ib)來表示,由外部微處理器來處理。幀適配模塊的另一方面功能是可以提取aoc、eoc、ib等子節。并串轉換模塊的功能:將數據流進行并串轉換后送入通道分類模塊。通道分類模塊的功能:將奇數和偶數的串行數據流合并成一列數據流,根據Utopia接口的TxAdd信號或者外部微處理器的配置(控制接口中的寄存器)送入fast通道或者interleave通道。需要指出的是接收方向與發送方向數據流向相反,不再解釋。
2.2 數字接口設計
根據ADSL協議要求,數字接口主要將信道中的快速和交織的數據經過擾碼、FEC編碼后形成可以傳送的數據。大致框圖如圖3所示。
在發送方向,從用戶數據接口來的fast(快車)通道和interleave(交織)通道的數據先分別進行CRC校驗,然后進入解幀模塊,在這個模塊中,將超幀分解為一個一個的數據幀,存入緩沖中。然后對fast和interleave數據分別進行加擾,這種加擾是對每個數據幀進行加擾,加擾后的數據進入RS編程模塊,之后進入發送FIFO。對于Interleave數據,從發送FIFO出來以后就進行交織處理,然后將兩種數據進行比較分配,對每個子信道分配一定的比特數,這可以參考比持分配表格(在初始化時計算出來,存放在緩存之中)。
??? 在接收方向,從DMT調制模塊來的數據進入比特解配,對Interleave數據再經過de_interleave模塊之后進入接收FIFO,然后進入RS解碼模塊,當發現錯誤時,將誤碼計數器加1,計數結果將用于性能。從RS解碼出來的數據經過解擾后,送入組幀模塊,在個模塊中,將各個數據幀組合成超幀,然后將數據進行CRC校驗,最后送到用戶數據接口。
2.3 DMT調制電路設計
DMT調制是ADSL收發器片上系統芯片中的重要模塊之一,主要完成數據在每個子信道上的調制,它的好壞直接關系到ADSL收發器芯片性能的好壞。DMT中大部分的計算都通過DSP來完成,如FFT/IFFT、FEQ、TEQ、星座編碼和解碼、Trellis編碼和Viterbi解碼等功能。與DSP的聯系主要通過數據和程序地址總線來完成。DMT調制模塊大致框圖如圖4所示。
在發送方向,從數字接口來的數據流已經是每個子信道的比特分配流,這種數據流在星座編碼模塊中進行星座編碼,將頻域的比特流信號轉換成時域的星座平面上的復數(X+iY)信號,然后進行2D QAM調制。這時候可以選擇Trellis編碼(四維格狀態調制),用以產生冗余比特來增強發送的可靠性。然后將經過星座編碼后的數據存入發送緩沖。由于信道失真或者其他的原因,從緩沖出來的數據在頻率和相位上都與主時鐘頻率和相位不匹配。所以為了調整這種不匹配,從緩沖出來的數據先經過頻率調整和增益微調(FTG)。頻率調整是調節發送頻率,保證發送頻率和理想頻率的一致,FTG是調節每個子載波上的增益稀疏。然后再進入快速傅立葉逆變換(IFFT),將頻域的DMT符號轉換成時域的信號,送入發送緩沖之中,最后送入模擬前端接口。
在接收方向,從模擬前端接口來的數據是經過時域均衡(TEQ)以后的,這些數據首先進入接收緩沖,之后進入快速傅立葉變換(FFT),將時域的DMT信號轉換成頻域的信號(512點),然后在頻域均衡(FEQ)和相位調整模塊中消除相應的干擾,送入接收緩沖,之后進行星座解碼,從而將星座平面的復數點轉換為比特流。如果接收的數據使用了Trellis編碼,那么在星座解碼后的數據將再通過Viterbi解碼模塊之后,送入數據接口。
在第64個子信道中傳送的時導頻信號,在發送和接收方向都是通過DPLL數字鎖相環來保證發送和接收時鐘與導頻信號一致。當星座編碼和解碼時,發現導頻信號的星座點的位置與理想的點位置不一致時,就要通過DPLL和相位調整/頻率調整模塊來糾正。同時,監視器可以發送中心斷R_INT4信號到管理和控制接口。通過ASB與內部ARM核通信。DPLL的功能有:(1)DPLL中恢復導頻信號的功能。為了保證收發時鐘有固定的相位關系,在ADSL中采用了插入導頻的方法來傳送和恢復時鐘信號。發送器在發送數據的同時用64號子信道傳送獨立的導頻信號,抽樣時鐘頻率為2208kHz,而導頻信號的頻率為276kHz,恢復了導頻信號后,利用鎖相環鎖住抽樣時鐘頻率,從而實現時鐘的恢復。(2)在PLL中通過一個時鐘源產生內部的所需時鐘。其中內部所需時鐘包括:CPU時鐘、DSP時鐘、各種算法的時鐘等。PLL鎖相環的外界參考晶體的頻率可以為:35.328MHz。
在Trellis編碼和Viterbi解碼時,分別有一個誤碼計數器與之相連,當發生錯誤時,誤碼計數器加1,加到一定數值,就通過發送中斷信號T_INT5、R_INT5通知內部ARM核。
3 非對稱數字用戶環路收發器的睡上系統芯片設計難點
3.1 DSP算法設計及實現
DSP算法是ADSL收發器SOC芯片的核心,其工作的好壞直接影響整個芯片的性能,而ADSL收發器中涉及的DSP技術又非常復雜,給設計增加了難度。DSP算法的設計首先要建立管理模型,以模型為基礎進行算法設計,繼而設計優化模型并以此為根據對算法進行優化,使算法準確、穩定,能很好地滿足性能要求。下一步就是硬件軟件實現及二者的協同設計和驗證,驗證是為了優化VLSI硬件和功能結構,有效快速地執行算法,最后進行DSP系統集成。
3.2 數模混合設計
為了降低功耗,提高電子器件的效率,把模擬前端AFE與微控制器MCU核等集成到一起。在一個數字芯片上集成混合信號內核時,缺乏線性電阻是一個主要問題,因為連續時間序濾波器要求片上電阻具有良好的可控性和線性。電流開關DAC也要用線性電阻把電流轉變成電壓。把數字噪音與模擬噪音隔離開是另外一個問題,必須采用具有較高共模抑制比(CMRR)和電源抑制比的完全差動設計。
3.3 系統驗證問題
隨著系統級芯片(SOC)復雜性的增加,傳統使用HDL軟件模擬器來進行驗證的方法已經不夠用了,它無法提供所需的性能,以檢查系統功能的正確性。而且SOC芯片的驗證需要對整個系統建立模型,要將很多實際的情況加入到模型之中,來證明整個系統經及芯片都工作正常。因此,需要有一個靈活的建模環境,以便處理大量的系統級方案。處理界面入口(TIP)可以在抽象層軟件和詳細的硬件實現之間提供一個高速鏈接,執行任務軟件、驗證系統級操作以及快速發現設計中的問題。
3.4系統測試問題
SOC芯片的測試技術難度較大。SOC芯片測試設備則必須能夠精確地檢測模擬和數字兩種電路,并支持掃描檢測和嵌套式存儲器檢測。對輸入引腳加測試向量,再從輸出引腳觀察結果的傳統檢測方法已不適用。因為,傳統方法測試向量集會過分龐大,執行時間也會長得驚人。
4 設計實現
采用軟硬件協同仿真設計,在大型EDA仿真軟件Cadence的數字模擬混合設計工具Spectra上,用硬件描述語言Verilog完成設計輸入,進而完成設計綜合、功能仿真、布局布線、后仿真和產生構造位流文件。
以上介紹了ADSL收發器片上系統芯片設計,給出了相應硬件設計的具體描述,對設計特點、難點進行了闡述。
評論
查看更多