摘? 要:介紹了采用Dallas公司的高速處理器DS80C320設(shè)計和實現(xiàn)的路由器交換網(wǎng)板" title="網(wǎng)板">網(wǎng)板控制模塊" title="控制模塊">控制模塊,給出了控制模塊的硬件結(jié)構(gòu)圖,并闡明了控制模塊對交換芯片" title="交換芯片">交換芯片的控制功能。?
關(guān)鍵詞: 高速路由器? 交換網(wǎng)板控制模塊? DS80C320?
?
近幾年來,隨著Internet規(guī)模的進一步擴大,對高性能、寬帶接入的IP路由器的需求急劇增加。路由器的主要功能是數(shù)據(jù)包的轉(zhuǎn)發(fā),該功能由交換芯片來實現(xiàn)。因此,需要有一個處理器來實現(xiàn)對交換芯片數(shù)據(jù)包轉(zhuǎn)發(fā)功能的控制,同時控制交換網(wǎng)板與主控板" title="主控板">主控板的通信,筆者采用DS80C320處理器。本系統(tǒng)的技術(shù)核心是如何利用EPLD產(chǎn)生的控制信號" title="控制信號">控制信號實現(xiàn)DS80C320與主控板間的通信和DS80C320對交換芯片的控制。?
1 高速路由器的基本結(jié)構(gòu)?
高速路由器主要由主控板、交換網(wǎng)板和線路接口板等組成。主控板是路由器的控制核心,完成整個路由器的管理和控制,直接接收網(wǎng)管中心的指令。交換網(wǎng)板在路由器中完成高速數(shù)據(jù)交換,它由交換模塊和控制模塊組成。交換模塊包括兩片交換芯片,完成數(shù)據(jù)包轉(zhuǎn)發(fā)功能;控制模塊是交換網(wǎng)板的控制核心,實現(xiàn)對網(wǎng)板內(nèi)各功能模塊的狀態(tài)檢測和控制,保證交換芯片轉(zhuǎn)發(fā)數(shù)據(jù)包的正常工作??刂颇K與路由器的主控板通過HSCX(串行通信控制器)進行通信,完成主控板對交換網(wǎng)板功能請求的應(yīng)答處理,還可以通過RS232串口與PC機進行通信,完成交換網(wǎng)板的功能調(diào)試。?
2 控制模塊的硬件結(jié)構(gòu)?
本系統(tǒng)的路由器交換網(wǎng)板控制模塊主要由DS80C320處理器和一些外圍器件組成,這些外圍器件包括EPLD、FLASH、外部RAM和HSCX通道??刂颇K的硬件結(jié)構(gòu)如圖1中虛線框部分所示。?
?
?
2.1 DS80C320的特點?
DS80C320屬于Dallas公司的高速處理器系列。采用該芯片完成交換網(wǎng)板的控制功能,主要是DS80C320有以下幾個特點:(1)具有新型高速結(jié)構(gòu),最大晶振頻率33MHz,機器周期為4個時鐘周期(普通MCS-51系列單片機的機器周期為12個時鐘周期),從而使每條8051指令的執(zhí)行速度在相同的晶振下快了3倍。(2)DS80C320與51系列單片機完全兼容,并采用標(biāo)準(zhǔn)的8051指令集,給設(shè)計與開發(fā)帶來了方便。(3)可以通過改變MOVX指針的執(zhí)行時間來訪問速度不同的RAM和其他外圍器件。?
DS80C320提供16位地址線,可尋址64KB的數(shù)據(jù)空間和程序空間。由于DS80C320內(nèi)不含片內(nèi)ROM,所以程序代碼是存儲在FLASH中的。雖然目前系統(tǒng)的軟件不到60KB,但考慮到系統(tǒng)升級需要程序的擴展,選用了128KB的FLASH空間,需要17位地址線。這樣就產(chǎn)生處理器的尋址能力不足的問題,采用EPLD內(nèi)部的20H寄存器來產(chǎn)生FLASH的第14、15、16位地址及片選信號和讀寫信號。128KB的FLASH空間分成了2頁,每頁有64KB,第16位地址線決定FLASH空間的頁號,DS80C320通過這種方式訪問FLASH的128KB空間。?
2.2 EPLD功能描述?
本系統(tǒng)的EPLD采用ALTERA公司的EPM7512,該芯片屬于MAX7000系列。除了2.1中的尋址擴展功能外,EPLD還用作處理器與其外圍電路控制信號的接口。由于本系統(tǒng)的控制信號比較多,若采用普通的邏輯門電路則整個系統(tǒng)的連線會非常復(fù)雜,功耗也會增加。所以采用EPLD來產(chǎn)生DS80C320與交換芯片、FLASH和HSCX之間的控制信號和地址信號。EPLD與處理器的接口主要實現(xiàn)了低位地址的鎖存和一些器件的片選信號。CP_DATA[0:7]是地址和數(shù)據(jù)復(fù)用的信號,鎖存后輸出低位地址LOW_CP_ADD[0:7]。EPLD對HSCX通道的控制信號包括使能信號ENABLE_HSCX、復(fù)位信號RESET_HSCX、數(shù)據(jù)發(fā)送控制信號TXD_ENABLE等。EPLD對交換芯片的控制信號包括讀寫信號READ_OCM、WRITE_OCM、OCM操作類型選擇信號EMB_MODE_OUT等。?
2.3 DS80C320與HSCX間的通信?
本系統(tǒng)的HSCX采用SIEMENS公司的SAB82525,該芯片提供兩個全雙工的高級鏈路控制(HDLC)通道,它的最高傳輸速率可達到4M bit/s。它用于主控板與交換網(wǎng)板間的數(shù)據(jù)通信,包括主控板發(fā)送、交換網(wǎng)板接收的功能請求,交換網(wǎng)板發(fā)送、主控板接收的應(yīng)答及上報。由EPLD提供HSCX的數(shù)據(jù)線、地址線、使能信號和讀寫信號線。DS80C320對SAB82525的控制是通過讀寫SAB82525的內(nèi)部寄存器來實現(xiàn)的;與HSCX之間的數(shù)據(jù)傳送采用中斷方式。當(dāng)SAB82525滿足產(chǎn)生中斷的條件(如接收到數(shù)據(jù)幀)時,它向處理器發(fā)出中斷請求,處理器讀取中斷寄存器ISTA、EXIR確定中斷發(fā)生的原因并做出相應(yīng)的處理。?
3 基于DS80C320的控制模塊對交換芯片的控制?
采用的交換芯片PRS28G屬于IBM公司的第二代高性能包路由交換產(chǎn)品。其端口速率達到OC48(2.5Gbps)并具有很好的擴展性,可通過速率擴展或者端口擴展構(gòu)造出更大容量的交換網(wǎng)絡(luò),是數(shù)據(jù)幀和信元交換系統(tǒng)的理想解決方案。?
交換芯片內(nèi)部包含一個狀態(tài)寄存器、32個應(yīng)用寄存器及一個OCM接口。OCM接口是串行接口,用于處理器編程應(yīng)用寄存器或是讀取狀態(tài)寄存器內(nèi)容。交換芯片與DS80C320之間的通信和控制是通過EPLD內(nèi)的OCM控制接口完成的。處理器并行讀寫EPLD。而OCM與EPLD的接口是串行的,串并轉(zhuǎn)換是通過在EPLD內(nèi)設(shè)置特定寄存器空間來完成的。處理器與交換芯片之間的數(shù)據(jù)傳輸過程是:處理器向EPLD特定寄存器寫數(shù)據(jù),數(shù)據(jù)通過EPLD輸出EMB_DATA_IN串行信號,寫入OCM指令寄存器,再根據(jù)OCM的指令集定義,決定其操作,包括讀/寫應(yīng)用寄存器、讀取狀態(tài)寄存器、交換芯片復(fù)位等。每次操作的結(jié)果存儲在響應(yīng)寄存器中,在處理器控制下通過EMB_DATA_OUT信號移入EPLD特定地址空間,供處理器讀取。?
4 系統(tǒng)的軟件構(gòu)成?
此系統(tǒng)的軟件是由主函數(shù)及其調(diào)用的子函數(shù)和三個中斷程序組成。?
4.1 主函數(shù)(包括它調(diào)用的子函數(shù))?
主函數(shù)首先檢測交換網(wǎng)板上的各種設(shè)備,初始化整個系統(tǒng),然后開始一個主循環(huán),在系統(tǒng)上電狀態(tài)下程序總在這個循環(huán)中運行。在沒有中斷或復(fù)位請求的情況下,循環(huán)檢測各功能模塊的執(zhí)行標(biāo)志位,當(dāng)標(biāo)志位有效時,執(zhí)行相應(yīng)的功能模塊。?
主函數(shù)的概要流程如圖2所示。?
?
?
4.2 中斷處理程序?
三個中斷處理程序分別是:?
(1) 定時器中斷處理程序,完成周期性功能模塊標(biāo)志位的產(chǎn)生。?
(2) 外部中斷1,完成來自HSCX的數(shù)據(jù)接收、存儲及應(yīng)答數(shù)據(jù)的發(fā)送功能。?
(3) 串口中斷,實現(xiàn)串口數(shù)據(jù)的接收、存儲及應(yīng)答數(shù)據(jù)的發(fā)送功能。?
5 實驗結(jié)果與討論?
為檢測該系統(tǒng)是否能夠穩(wěn)定地運行,在軟件中設(shè)計了FUNC_TEST子函數(shù)。該子函數(shù)負(fù)責(zé)向交換芯片的每個端口發(fā)送14個數(shù)據(jù)包,其中數(shù)據(jù)域的內(nèi)容為隨機值,這些數(shù)據(jù)在交換芯片內(nèi)部循環(huán),形成一定的負(fù)載流量,模擬路由器的實際工作環(huán)境。經(jīng)檢測,整個系統(tǒng)工作穩(wěn)定,處理器DS80C320完成了本交換網(wǎng)板控制模塊的控制功能。?
參考文獻?
1 High-Speed Microcontroller Data Book. Dallas semiconductor,1995?
2 李朝青.單片機原理及接口技術(shù). 北京:北京航空航天大學(xué)出版社,1999.6?
3 張 濤.一種高速路由器交換控制.代碼的分析和優(yōu)化.天津大學(xué)碩士學(xué)位論文. 2001