1 引言
目前,xDSL寬帶接入技術(shù)充分利用現(xiàn)有雙絞線資源,為用戶提供非對(duì)稱高速通道,尤其是ADSL技術(shù)已被人們廣為接受而成為寬帶接入技術(shù)的主流。然而隨著IP交換技術(shù)的成熟與發(fā)展,主干網(wǎng)中交換方式將由 ATM逐步向IP交換方式轉(zhuǎn)換,因此基于 ATM的ADSL技術(shù)也日益表現(xiàn)出其本身的局限性。基于此,中國信息產(chǎn)業(yè)部與2003年1月提出了基于IP交換網(wǎng)的EDSL技術(shù),全稱為基于時(shí)分雙工的以太數(shù)字用戶線系統(tǒng)(TDD based Ethernet Digital Subscriber Line System(TDD-EDSL)),它結(jié)合了目前廣為應(yīng)用的兩大通信技術(shù) xDSL和Ethernet 的精華,首次在接入網(wǎng)范疇內(nèi)實(shí)現(xiàn)了IP包的直接傳送,中間無ATM信令轉(zhuǎn)換;采用數(shù)據(jù)突發(fā)技術(shù),應(yīng)用以太網(wǎng)碰撞檢測機(jī)制,帶寬動(dòng)態(tài)分配,速率高達(dá) 10Mbit/s,第二代EDSL技術(shù)能實(shí)現(xiàn)智能頻譜管理,最高速率可達(dá)100Mbit/s;TDD-EDSL實(shí)現(xiàn)IP端到端傳送,傳輸距離長,標(biāo)準(zhǔn)距離可到8km,環(huán)路質(zhì)量較好時(shí)可到 9km;傳輸效率高,功耗低;完善的網(wǎng)管系統(tǒng)、流量控制和服務(wù)質(zhì)量控制;完全符合 IEEE802.3 Ethernet、YD/T1254-2003 以及ANSI TI 417 頻譜管理標(biāo)準(zhǔn);安裝簡便,用戶端即插即用,使用10/100/1000Mbit/s以太網(wǎng)接口。
獨(dú)特的智能頻譜管理技術(shù)和時(shí)分雙工模式,大大簡化了系統(tǒng)結(jié)構(gòu),同時(shí)也順應(yīng)了主干網(wǎng)IP化的趨勢。與傳統(tǒng) xDSL技術(shù)比較,它不僅克服了 xDSL技術(shù)的許多局限性(如對(duì)線路的挑、串?dāng)_等),并且增大了傳輸距離,提高了傳輸效率,EDSL系統(tǒng)結(jié)構(gòu)與ADSL類似,其核心部分是EDSL Modem.
在EDSL實(shí)現(xiàn)中,本文提出了可剝奪實(shí)時(shí)內(nèi)核的實(shí)時(shí)操作系統(tǒng)µC/OS-II[1]和32位精簡指令集軟核處理器 Nios核相結(jié)合的方法,構(gòu)成一種基于可配置的軟核處理器的嵌入式開發(fā)平臺(tái)。該平臺(tái)軟、硬件均可按照用戶需求進(jìn)行剪裁配置,最大程度地提供了系統(tǒng)設(shè)計(jì)的靈活性,具有重要的應(yīng)用價(jià)值,本文重點(diǎn)講述基于SOPC的EDSL Modem的實(shí)現(xiàn)。
2 EDSL系統(tǒng)結(jié)構(gòu)和協(xié)議棧
EDSL的主要技術(shù)特點(diǎn):(1)IP端到端網(wǎng)絡(luò);(2)采用時(shí)分復(fù)用技術(shù),雙向帶寬動(dòng)態(tài)分配;
(3)客戶服務(wù)器模式,I P 包無碰撞機(jī)制;(4)數(shù)據(jù)突發(fā)技術(shù)。正是由于以上技術(shù)的采用,使得EDSL技術(shù)不僅克服了xDSL技術(shù)的許多局限性,并且增大了傳輸距離,提高了傳輸效率。EDSL的系統(tǒng)結(jié)構(gòu)與ADSL類似,由位于用戶端的EDSL Modem 和 局端的高密度接入復(fù)用設(shè)備DSLAM(DSL Access Multiplexer)構(gòu)成,其結(jié)構(gòu) [2]如圖1。
EDSL技術(shù)是基于 IP交換的新型寬帶接入技術(shù),它結(jié)合了以太網(wǎng)技術(shù)和 xDSL技術(shù)的優(yōu)點(diǎn), 為了充分降低用戶端設(shè)備的復(fù)雜性,使系統(tǒng)易于統(tǒng)一管理,該系統(tǒng)采用了客戶服務(wù)器模式,即用戶端工作在客戶端模式,局端設(shè)備處于服務(wù)器模式,由局端設(shè)備進(jìn)行線路的頻譜管理以及速率自適應(yīng)調(diào)試,得到雙絞線中當(dāng)前所能承受的最大速率以及最佳調(diào)制頻率等參數(shù),當(dāng)用戶端得 EDSL設(shè)備接收到包含此類信息的信息幀時(shí),根據(jù)接收到的參數(shù)更改自身的參數(shù),從而達(dá)到最佳工作狀態(tài)。這種模式下無需用戶進(jìn)行設(shè)置即可方便使用,從而大大增強(qiáng)了用戶的易用性。
與基于ATM的ADSL技術(shù)相比,EDSL技術(shù)擁有更為簡單的協(xié)議結(jié)構(gòu) [3]。如圖2。
3硬件平臺(tái)的設(shè)計(jì)
EDSL Modem硬件平臺(tái)的搭建主要使用了 Altera公司的 FPGA Cyclone EP1C6Q240C8芯片,它擁有充足的可編程邏輯資源內(nèi)嵌32位Nios-II軟核處理器來實(shí)現(xiàn)整個(gè)可編程嵌入式系統(tǒng)。系統(tǒng)的主要功能由FPGA實(shí)現(xiàn),硬件電路除 FPGA外只需加上存儲(chǔ)器件、以太網(wǎng)控制芯片和前端AD/DA轉(zhuǎn)換芯片即可。本系統(tǒng)主要使用了一片 8M Byte Flash,一片16M Byte SDRAM,以及以太網(wǎng)接口控制芯片等作為FPGA的外圍設(shè)備,硬件結(jié)構(gòu)簡單明了,極大提高了系統(tǒng)的可靠性。FPGA系統(tǒng)運(yùn)行時(shí)鐘為50MHz,充分保證了系統(tǒng)的運(yùn)行速度。
在硬件平臺(tái)的搭建中主要用到了Altera公司的Quartus-II與SOPC Builder軟件,其中 Quartus-II能進(jìn)行系統(tǒng)及各邏輯部件的設(shè)計(jì)輸入、編譯、仿真、綜合、布局布線,并進(jìn)行位流文件的下載和配置文件的燒錄,以及使用片內(nèi)邏輯分析儀進(jìn)行分析和驗(yàn)證。 SOPC Builder嵌入在Quartus-II開發(fā)系統(tǒng)內(nèi),是一個(gè)自動(dòng)系統(tǒng)開發(fā)工具,能夠自動(dòng)進(jìn)行系統(tǒng)定義,完成 SOPC開發(fā)的集成過程。在SOPC Builder 中選取系統(tǒng)所需部件,并自動(dòng)生成每個(gè)部件的系統(tǒng)級(jí)HDL 文件以及支持部件所需的軟件,如驅(qū)動(dòng)程序、庫文件和一些實(shí)用的應(yīng)用程序等,以供軟件開發(fā) 原型用[4]。
通過SOPC Builder軟件包可以定制32位 Nios-II軟核處理器和基本的Nios-II外設(shè)模塊,如 UART控制器,定時(shí)器,F(xiàn)LASH控制器, SDRAM制器等。本文設(shè)計(jì)的硬件平臺(tái)結(jié)構(gòu)如圖3所示。
圖 3所示虛線框內(nèi)硬件部分均是在 FPGA內(nèi)實(shí)現(xiàn)
該系統(tǒng)的嵌入式處理器 Nios-II是 Altera 公司推出的一個(gè)用戶可配置的16 位或32 位精簡指令集軟核處理器。Nios-II處理器可以配置成最多支持 64個(gè)中斷,包括外部硬件中斷、內(nèi)部中斷以及 TRAP(調(diào)試中斷)。Nios-II 處理器可以配置使用 32位內(nèi)部定時(shí)器,通過軟件控制寫入控制寄存器的內(nèi)容來獲得定時(shí)工作,與一般的定時(shí)器工作原理相同,可以產(chǎn)生定時(shí)中斷。
Nio-II嵌入式系統(tǒng)中采用 Avalon交換式總線在處理器、外圍設(shè)備和接口電路之間實(shí)現(xiàn)網(wǎng)絡(luò)連接,并提供高帶寬數(shù)據(jù)路徑、多路和實(shí)時(shí)處理能力。 Avalon交換式總線可以通過調(diào)用 SOPC Builder設(shè)計(jì)軟件自動(dòng)生成 [5]。
EDSL Modem的核心部分即主收發(fā)器利用 FPGA中的邏輯單元編寫自定義用戶模塊,并生成自定義 IP核,通過 Avalon總線接口與嵌入式處理器相連。該主收發(fā)器共包括了兩個(gè)部分:EDSL成幀模塊和 QAM調(diào)制模塊。
在 SOPC系統(tǒng)中,除了以上部件,還有片上 ROM、內(nèi)部定時(shí)器、 UART串行口、 SRAM、 Flash、以及以太網(wǎng)控制器 LAN91c111接口等系統(tǒng)部件皆由 SOPC builer自動(dòng)生成。
4軟件系統(tǒng)的設(shè)計(jì)
軟件平臺(tái)的開發(fā)是在 Altera公司為 Nios-II 系統(tǒng)定制的 Nios-II IDE系統(tǒng)上展開的, Nios-II IDE是基于 Eclipse IDE的集成開發(fā)環(huán)境,用戶可以在 Nios-II IDE中為 Nios II 系統(tǒng)開發(fā)模塊驅(qū)動(dòng)程序、板級(jí)支持包( BSP),以及用戶應(yīng)用程序??紤]到 EDSL Modem 的系統(tǒng)控制和高速數(shù)據(jù)傳輸,在該嵌入式平臺(tái)中嵌入了實(shí)時(shí)嵌入式系統(tǒng) uC/OS-II,整個(gè)系統(tǒng)的軟件體 系結(jié)構(gòu)如圖4:
其中位于 Nios-II硬件平臺(tái)之上的是 EDSL Modem各部件的驅(qū)動(dòng)程序。其上是硬件抽象層(HAL),它是位于應(yīng)用程序和系統(tǒng)硬件之間的一個(gè)系統(tǒng)庫( System Library),在軟件開發(fā)時(shí)可以非常方便地使用這些系統(tǒng)庫來與底層硬件通信,而無須關(guān)心的底層硬件實(shí)現(xiàn)細(xì)節(jié)。這樣在上層應(yīng)用程序和底層硬件之間就構(gòu)成了明顯的界限,底層驅(qū)動(dòng)的修改不會(huì)對(duì)應(yīng)用程序造成任何影響。HAL API(Application Program Interface,應(yīng)用程序接口)集成了 ANSIC 的標(biāo)準(zhǔn)庫,它允許應(yīng)用程序使用類似 C庫函數(shù)的方式訪問硬件和文件。
實(shí)時(shí)嵌入式操作系統(tǒng) uC/OS-II 內(nèi)核工作在 HAL的頂部[6],有了 HAL這一層,基于 uC/OS-II的程序具有更好的可移植性,而且不受底層硬件改變的影響。
此外,EDSL Modem的以太網(wǎng)接口通信中,主要在 uC/OS-II中嵌入了 LwIP協(xié)議,LwIP不僅支持一般的網(wǎng)絡(luò)協(xié)議,比如 UDP協(xié)議、DHCP協(xié)議、PPP協(xié)議等,而且還支持多網(wǎng)絡(luò)接口、IPv6和標(biāo)準(zhǔn) API[7]。
5結(jié)束語
本文介紹了我國擁有自主知識(shí)產(chǎn)權(quán)的寬帶接入技術(shù)—— TDD-EDSL,并著重介紹了基于 SOPC的 EDSL Modem的軟硬件實(shí)現(xiàn)。在商用 ASIC并不完善的情況下,本文使用了軟硬件均可編程的 Nios-II嵌入式系統(tǒng),縮短了研發(fā)周期,降低了研發(fā)成本。同時(shí) SOPC也代表了以后產(chǎn)品設(shè)計(jì)的發(fā)展方向,具有積極的借鑒意義。本文所設(shè)計(jì)的 EDSL Modem各部分已通過了軟件仿真和實(shí)驗(yàn)箱開發(fā)平臺(tái)驗(yàn)證。
6創(chuàng)新點(diǎn)
將軟硬件均可編程的 Nios-II嵌入式系統(tǒng)應(yīng)用到寬帶領(lǐng)域相關(guān)產(chǎn)品的研發(fā),大大縮短了產(chǎn)品的研發(fā)成本與研發(fā)周期,避免了研發(fā)過程中對(duì)成熟 ASIC的過分依賴。