摘 要:本文介紹了基于嵌入式技術(shù)[1]的一種G.SHDSL[2]設(shè)備的硬件設(shè)計(jì)方案,著重說(shuō)明了設(shè)備核心部件的選擇及其工作過(guò)程,以太網(wǎng)接口模塊及控制方式,G.SHDSL成幀器及其模擬前端、RS232調(diào)試口、電源模塊以及告警指示燈等的設(shè)計(jì)思路等。結(jié)合系統(tǒng)軟件工作流程,從引導(dǎo)加載程序、Linux內(nèi)核、文件系統(tǒng)、用戶應(yīng)用程序等四個(gè)層次設(shè)計(jì)系統(tǒng)的軟件設(shè)計(jì)方案。
關(guān)鍵詞:嵌入式技術(shù);G.SHDSL;路由器
中圖分類號(hào):TN919.3 文獻(xiàn)標(biāo)識(shí)碼:A
1 G.SHDSL硬件設(shè)備[3]的設(shè)計(jì)
本設(shè)備的結(jié)構(gòu)主要包括微處理器、存儲(chǔ)器、以太網(wǎng)接口模塊、G.SHDSL成幀器及其模擬前端、RS232調(diào)試口、電源模塊以及告警指示燈。
設(shè)備的核心部件是嵌入式處理器,它控制、輔助整個(gè)系統(tǒng)的運(yùn)行。嵌入式處理器有很多,綜合考慮性能、功耗、價(jià)格、供貨保證、開發(fā)工具的配備以及過(guò)去的開發(fā)經(jīng)驗(yàn)和軟件的支持等因素,最終選擇了MotoIora MPC859T處理器。由于CPM分擔(dān)了嵌入式PowePC核的外圍工作任務(wù),因此極大地滿足了控制層繁重的任務(wù)處理及傳輸層高帶寬的要求,而且這種雙處理器體系結(jié)構(gòu)的功耗要低于傳統(tǒng)體系結(jié)構(gòu)的處理器。
4端口的10/100Base-T通過(guò)交換芯片與MPU的快速以太網(wǎng)控制器(Fast Ethernet Controller,F(xiàn)EC)連接,采用MII接口方式,接口符合IEEE802.3規(guī)范;不僅實(shí)現(xiàn)和有線局域網(wǎng)的橋接,還可以實(shí)現(xiàn)系統(tǒng)程序的以太網(wǎng)下載,將其燒寫進(jìn)Flash中。MPC859T擁有2個(gè)串行管理通道(Serial Management Channel,SMC),本設(shè)備使用其中一個(gè)連接本地PC的RS232串口,實(shí)現(xiàn)本地管理、控制和維護(hù);另一個(gè)用于與G.SHDLS芯片的通信。MPC859T通過(guò)串行通信控制器連接G.SHDSL芯片的ATM接口。
在移植的Linux源代碼中,根據(jù)目標(biāo)進(jìn)行半裁減定制,以適合目標(biāo)系統(tǒng),盡量少占用系統(tǒng)內(nèi)存。操作系統(tǒng)定制后將其連接到目標(biāo)的應(yīng)用程序上,成為應(yīng)用程序的一部分,并對(duì)低級(jí)系統(tǒng)的初始化文件進(jìn)行修改,使之符合目標(biāo)板的需要。對(duì)于MPC859T,所有軟件都固化在板上Flash內(nèi),F(xiàn)lash的內(nèi)容可通過(guò)燒寫工具來(lái)更新升級(jí)。存儲(chǔ)應(yīng)用程序的Flash和用作程序運(yùn)行、保存臨時(shí)文件的2片SDRAM可通過(guò)MPC859T的系統(tǒng)集成單元(System Integration Unit,SIU)連接。本設(shè)備可選用一塊90nS訪問(wèn)時(shí)間的AMD 29LV320MB芯片,提供4M×8位共8MB Flash ROM,具有足夠的帶寬和存儲(chǔ)空間;另外它還具有不活動(dòng)狀態(tài)零功耗特性,符合本設(shè)備低功耗的設(shè)計(jì)原則。
2 軟件設(shè)計(jì)方案
本系統(tǒng)從引導(dǎo)加載程序、Linux內(nèi)核、文件系統(tǒng)、用戶應(yīng)用程序等四個(gè)層次設(shè)計(jì)系統(tǒng)的軟件部分。
2.1 引導(dǎo)加載程序
Boodoader(引導(dǎo)加載程序)是CPU復(fù)位后和進(jìn)入操作系統(tǒng)之前執(zhí)行的一段代碼,主要用于完成由硬件啟動(dòng)到操作系統(tǒng)啟動(dòng)的過(guò)渡,為操作系統(tǒng)提供基本的運(yùn)行環(huán)境。本文用的是支持多種CPU體系結(jié)構(gòu)、功能強(qiáng)大的PPCBoot。
2.2 Linux內(nèi)核移植
由于嵌入式系統(tǒng)是針對(duì)特定應(yīng)用的,而且資源有限,所以標(biāo)準(zhǔn)Linux無(wú)法應(yīng)用到嵌入式系統(tǒng)中,因此必須根據(jù)本設(shè)備的實(shí)際情況對(duì)Linux進(jìn)行裁剪、配置,從而產(chǎn)生一個(gè)適用的嵌入式Linux操作系統(tǒng)。Linux內(nèi)核的移植包括獲取源代碼、修改設(shè)置、裁減配置和編譯。
2.3 ATM驅(qū)動(dòng)程序
數(shù)據(jù)是以ATM信元來(lái)傳輸?shù)?,所以要?shí)現(xiàn)ATM的驅(qū)動(dòng)。在ATM驅(qū)動(dòng)中,與眾不同的是:因?yàn)锳TM是面向連接的,在此設(shè)備控制結(jié)構(gòu)中,需要定義一個(gè)通道連接結(jié)構(gòu)來(lái)管理虛電路的連接。此通道連接結(jié)構(gòu)的主要元素有:通道標(biāo)識(shí)、業(yè)務(wù)類型、發(fā)送連接表、接收連接表、發(fā)送緩沖描述符(BD)鏈表、接收BD鏈表等。業(yè)務(wù)類型定義了由通信的兩個(gè)主機(jī)協(xié)商好的業(yè)務(wù)類型。發(fā)送、接收連接表是為匹配MPC8360的硬件要求定義的。
2.4 以太網(wǎng)的橋接和路由
網(wǎng)絡(luò)地址轉(zhuǎn)換(Network Address Translation,NAT),一個(gè)IETF標(biāo)準(zhǔn),允許一個(gè)整體機(jī)構(gòu)以一個(gè)公用IP(Internet Protocol)地址出現(xiàn)在Internet上。顧名思義,它是一種把內(nèi)部私有網(wǎng)絡(luò)地址(IP地址)翻譯成合法網(wǎng)絡(luò)IP地址的技術(shù)。NAT有三種類型:靜態(tài)NAT(Static NAT)、動(dòng)態(tài)地址NAT(Pooled NAT)、網(wǎng)絡(luò)地址端口轉(zhuǎn)換NAPT(Port-Level NAT)。網(wǎng)絡(luò)地址端口轉(zhuǎn)換NAPT(Network Address Port Translation)是人們比較熟悉的一種轉(zhuǎn)換方式。NAPT普遍應(yīng)用于接入設(shè)備中,它可以將中小型的網(wǎng)絡(luò)隱藏在一個(gè)合法的IP地址后面。NAPT與動(dòng)態(tài)地址NAT不同,它將內(nèi)部連接映射到外部網(wǎng)絡(luò)中的一個(gè)單獨(dú)的IP地址上,同時(shí)在該地址上加上一個(gè)由NAT設(shè)備選定的TCP端口號(hào)。
路由信息協(xié)議(RIP)是以跳數(shù)作為metric的距離向量協(xié)議。RIP廣泛用于全球因特網(wǎng)的路由,是一種內(nèi)部網(wǎng)關(guān)協(xié)議,即在自治系統(tǒng)內(nèi)部執(zhí)行路由功能。外部網(wǎng)關(guān)路由協(xié)議,如邊緣網(wǎng)關(guān)協(xié)議,在不同的自治系統(tǒng)間進(jìn)行路由。
2.5 應(yīng)用層
為了便于設(shè)備的操作和管理,提供VT100配置、SNMP配置和Web Server配置等方式。
3 總結(jié)
本文利用嵌入式Linux技術(shù),提出了一種實(shí)符合國(guó)際標(biāo)準(zhǔn)、支持多種業(yè)務(wù)類型、兼容性好的G.SHDSL路由器的設(shè)計(jì)方案,經(jīng)過(guò)測(cè)試檢驗(yàn),達(dá)到了預(yù)期目標(biāo)。
參考文獻(xiàn)
[1] 魏慶福,鄭文波.嵌入式系統(tǒng)的技術(shù)發(fā)展和我們的機(jī)遇[J].自動(dòng)化博覽,2002,4:5-8.
[2] 林曉勇,呂珺.基于G.SHDSL技術(shù)的用戶線路倍增系統(tǒng)設(shè)計(jì)[J].信息技術(shù), 2006,3:34-35.
[3] 詹特倫,等.基于CX28975芯片組帶E1接口的G.SHDSL設(shè)備的設(shè)計(jì)與實(shí)現(xiàn)[J].電信科學(xué),2005,21(3):49-52.
作者簡(jiǎn)介:
吳克文(1980-),男,碩士,講師.研究領(lǐng)域:計(jì)算機(jī)網(wǎng)絡(luò)技 術(shù),計(jì)算機(jī)信息安全,電腦芯片級(jí)維修,數(shù)據(jù)恢復(fù)技術(shù).