Motorola32位嵌入式微處理器MPC860的開發(fā)應(yīng)用
F接口:F接口采用RS232接口,用MPC860的SCC2加上MAX202E提供RS232的NULL MODEM三線(收、發(fā)、地)連接方式接口,用于下載VxWorks BOOTROM 程序。
S接口:S接口采用RS232串口的多機通信方式。除收發(fā)總線外,對每一個外圍CPU分配一個中斷。其中包括時鐘板、公務(wù)板、四塊支路板、兩塊群路板,利用中斷請求來對各單板進行警告、性能監(jiān)測等管理。對于四塊支路板,可以設(shè)定地址碼,每塊支路板共有三個地址碼,分別為發(fā)送、單接收、群接收。只要解釋出命令碼中對應(yīng)的地址碼,就可以確定該板的接收和發(fā)送狀況。
ECC接口:MPC860的SCC3提供東向群路的ECC接口,SCC4提供西向群路的ECC接口。利用HDLC協(xié)議,實現(xiàn)各網(wǎng)元之間的通信。
SPI:由于網(wǎng)元監(jiān)控需要確切的實時時間,采用DS1305集成芯片完成與主CPU的外圍接口(SPI)連接,構(gòu)成SPI標(biāo)準(zhǔn)串行總線。主CPU作為主控制器(Master),而DS1305作為從屬的(Slave),主CPU通過讀寫DS1305中的RAM實現(xiàn)對后者的模式設(shè)置和時間的讀取。為保證斷電時仍能準(zhǔn)確計時,需要一個后備的可充電電池。正常時有電源供電,且對電池充電,一旦掉電,電路自動轉(zhuǎn)化為后備電池供電。
2.3 軟件部分
圖4為網(wǎng)元控制板軟件的功能模塊結(jié)構(gòu),它包括以下幾個模塊:
(1)初始化模塊
初始化模塊在VxWorks程序的入口處執(zhí)行,是整個網(wǎng)元控制板軟件的基礎(chǔ)。在該模塊中,執(zhí)行一些全局變量的初始化,基本任務(wù)的創(chuàng)建,基本消息隊列的創(chuàng)建等。
(2)命令分析模塊
命令分析模塊是整個網(wǎng)元控制板軟件VxWorks程序的核心模塊之一。在模塊中對來自各個通訊口(包括Q口、S口、ECC口)的通訊消息進行分析,解析出命令代碼;然后根據(jù)命令代碼來決定把消息發(fā)送到具體的單處理任務(wù)中。
命令分析模塊本身也是個任務(wù)。它接收調(diào)度任務(wù)模塊發(fā)送來的消息,然后根據(jù)系統(tǒng)的運行狀態(tài)分別調(diào)用內(nèi)部函數(shù)來處理該消息,主要功能是對發(fā)到本站的命令進行處理。
(3)任務(wù)調(diào)度模塊
任務(wù)調(diào)度模塊也是網(wǎng)元控制板軟件的一個核心模塊。該任務(wù)由ROOT任務(wù)創(chuàng)建。它常駐內(nèi)存,是SMC的調(diào)度樞紐,從某些模塊來的命令消息都經(jīng)過它分發(fā)后交由另外一些模塊處理,此任務(wù)的優(yōu)先級較高。主要功能是接收各通信口(Qx、ECC、S)及本地產(chǎn)生的命令消息,根據(jù)不同的消息來源標(biāo)志作相應(yīng)的處理:
?如果命令消息來自Qx通信口,則該命令由網(wǎng)管發(fā)出,調(diào)用相應(yīng)的函數(shù)來處理該消息;
?如果命令消息來自ECC通信口,則該命令是經(jīng)過本站并也需要本站處理的命令,調(diào)用函數(shù)來處理該消息;
?如果命令消息來自S通信口,則該命令是單板上報的命令,直接將命令發(fā)往消息隊列由命令分析模塊來處理該消息;
?如果命令消息來自本站并且是上報網(wǎng)管的命令,則調(diào)用函數(shù)來處理該消息;
?如果命令消息來自本站并且是下發(fā)各單板的命令,則直接將命令發(fā)往消息隊列由S通信模塊來處理該消息。
(4)獨立的功能模塊
在網(wǎng)元控制板模塊中還包括一些獨立的模塊。獨立的功能模塊是SDH網(wǎng)元控制板的主要功能模塊,包括:配置管理模塊、告警管理模塊、性能管理模塊、安全管理模塊、維護管理模塊等。各功能模塊均由一個基本任務(wù)完成。
(5)Qx通訊模塊
Qx通訊模塊完成網(wǎng)元控制板和上層網(wǎng)管的通訊,通訊采用10M以太網(wǎng)方式,協(xié)議采用標(biāo)準(zhǔn)UDP/IP。由于各SDH網(wǎng)元本身不可能在一個局域網(wǎng)內(nèi),為簡單起見,各網(wǎng)元的IP地址規(guī)定一個統(tǒng)一的IP地址,而網(wǎng)管計算機的IP地址也固定。這樣可以不經(jīng)過下載數(shù)據(jù)庫建立以太網(wǎng)通訊,從而大大方便了初始化工作的順利進行。
(6)S口通訊模塊
S口通訊模塊完成網(wǎng)元控制板與各功能單板的CPU(8031)通訊。通訊方式采用標(biāo)準(zhǔn)串口RS232的UART協(xié)議。一機對多機模式通訊,各單板采用一個獨立的中斷來激發(fā)主控板的通訊任務(wù)。在S口通訊模塊中引入A類地址和B類地址來完成網(wǎng)元控制板主動與單板通訊和單板主動與網(wǎng)元控制板通訊。為了保證通訊的可靠性,在每次通訊過程中均加上校驗,校驗采用異或和方式。
(7)ECC通訊模塊
ECC通訊模塊負(fù)責(zé)完成各獨立的網(wǎng)元之間網(wǎng)管信息的通訊。ECC采用SDH幀結(jié)構(gòu)中的D1~D3字節(jié)作為物理層,在數(shù)據(jù)鏈路層采用HDLC協(xié)議。ECC端口采用MPC860的SCC3和SCC4兩個端口發(fā)送和接收。由于ECC通訊有非常清晰的網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu),為了達到更高效的通訊目的,引入了ECC路由表的概念。ECC路由表存放每個SDH網(wǎng)元的相鄰網(wǎng)元的地址信息。ECC路由必須根據(jù)開局的網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)來具體設(shè)置。ECC通訊用應(yīng)答來決定是否發(fā)送成功,如果成功,發(fā)送一個應(yīng)答正確的消息;否則發(fā)送一個應(yīng)答失敗的消息。如果在第一優(yōu)先路由的端口發(fā)送失敗,采用第二優(yōu)先路由的發(fā)送端口。ECC通訊任務(wù)在初始化創(chuàng)建后,一直常駐內(nèi)存。ECC的通訊任務(wù)主要包括三個任務(wù),即ECC收任務(wù)、ECC發(fā)任務(wù)、應(yīng)答檢測任務(wù)。
(8)數(shù)據(jù)庫模塊
數(shù)據(jù)庫模塊是一個獨立的外掛模塊,主要完成對嵌入式數(shù)據(jù)庫的操作,包括數(shù)據(jù)庫的創(chuàng)建、刪除、查詢、插入、修改等。數(shù)據(jù)庫模塊提供了標(biāo)準(zhǔn)的接口供應(yīng)用程序調(diào)用,而數(shù)據(jù)庫模塊本身可看做一個黑盒子,不必去考慮。
ADM系統(tǒng)可以直接從155.52Mb/s上下2.048MB/s E1信號,滿足當(dāng)今寬帶化的需求。用MPC860作為網(wǎng)元控制的核心部件,效果十分理想,實時性很好,很好地滿足了ADM系統(tǒng)的所需。
評論