摘 要: 在3G基站控制板設(shè)計中,采用單片機(jī)AT89s8252完成了對其他單板信息的采集,、網(wǎng)絡(luò)配置,、設(shè)備運(yùn)行監(jiān)控以及與主CPU通信等功能,說明了低檔器件在高檔設(shè)備中同樣具有應(yīng)用價值,。
關(guān)鍵詞: 3G WCDMA 基站 控制板 單片機(jī) RS485 SPI
?
第三代移動通信(3G)是一個復(fù)雜而龐大的系統(tǒng),,其采用的芯片大都是高端、昂貴和功能強(qiáng)大的,,簡單的單片機(jī)應(yīng)用在3G系統(tǒng)似乎不可能,。事實上,筆者在參與某通信設(shè)備公司的3G設(shè)備設(shè)計時,,在某些地方采用了低檔單片機(jī),,用它實現(xiàn)了很多功能。這對于精簡電路,、節(jié)約成本很有意義,。本文僅介紹單片機(jī)在3G基站控制板中的應(yīng)用情況。
1 系統(tǒng)總體
3G制式之一的WCDMA網(wǎng)絡(luò)系統(tǒng)由基站(NodeB),、無線網(wǎng)絡(luò)控制器(RNC)和核心網(wǎng)(CN)三部分組成[1],。這三部分之間的連接采用3GPP2規(guī)范的標(biāo)準(zhǔn)接口,以實現(xiàn)不同廠商之間產(chǎn)品的對接,,而設(shè)備內(nèi)部的功能實現(xiàn)是自主的,。在NodeB設(shè)計中有一塊控制板,主要完成Uu接口和Iub接口信令處理及Node B監(jiān)控維護(hù),??刂瓢宓暮诵氖且粔K高檔CPU,另外還有一塊AT89s8252單片機(jī),,其硬件總體結(jié)構(gòu)如圖1,。
單片機(jī)在控制板中起承上啟下的作用,,主要完成以下任務(wù):
(1)輪詢" title="輪詢">輪詢和搜集RS485總線上單板的串口" title="串口">串口消息。
(2)與串口擴(kuò)展模塊PCM9576通信,,將RS485總線上的單板信息轉(zhuǎn)發(fā)給CPU,,同時將CPU命令下發(fā)給RS485總線上的單板。
(3)負(fù)責(zé)控制板主備倒換,。
(4)配置和監(jiān)控以太網(wǎng),。
單片機(jī)部分的設(shè)計可根據(jù)功能要求分為四個模塊:(1)上電" title="上電">上電初始化模塊;(2)串口通信" title="串口通信">串口通信模塊,;(3)主備倒換模塊,;(4)配置以太網(wǎng)模塊。
2 上電初始化
單片機(jī)的上電初始化主要分為兩部分:一是單片機(jī)自檢,;二是與CPU通信,,并上傳初始化信息。
單片機(jī)自檢主要是檢測相關(guān)的外圍器件和單片機(jī)自身檢測等,。
與CPU通信是保證控制板正常工作必不可少的條件,。控制板主要由CPU和單片機(jī)完成控制功能,。CPU和單片機(jī)同時上電,單片機(jī)的初始化工作將先于CPU完成,。單片機(jī)通過I/O口獲得參與主備競爭的控制板主備狀態(tài)和槽位號等初始化信息,并通過串口向CPU發(fā)送,,直到得到CPU回應(yīng),。如在規(guī)定的時間內(nèi)沒有得到CPU響應(yīng),單片機(jī)必須發(fā)起主備切換,。
3 串口通信
使用FIFO為16B的擴(kuò)展串行芯片ST16C2552對單片機(jī)的串口進(jìn)行擴(kuò)展,,沒有使用內(nèi)置串口。這樣做的好處是形式統(tǒng)一,,利于軟件的統(tǒng)一處理,,同時增加了緩沖區(qū)。其中一個串口與CPU相連,,另一個串口掛在RS485總線上,,與基帶板、射頻板,、背板等類型的單板通信,。
串口程序分為輪詢RS485總線上單板的模塊和與CPU通信的模塊。其中485總線模塊完成差錯處理,、數(shù)據(jù)接收,、數(shù)據(jù)發(fā)送、流量控制等功能,。單片機(jī)與CPU之間主要傳遞主備切換和輪詢單板的信息,。
3.1 與485總線的通信
RS485總線上的通信過程主要由三部分組成:建立鏈路" title="鏈路">鏈路,、鏈路斷開、數(shù)據(jù)通信,。采用主從方式發(fā)送,,用停等應(yīng)答機(jī)制實現(xiàn)軟件流控。
(1)建立數(shù)據(jù)連接
單片機(jī)向485總線上各單板輪詢,,分別發(fā)送命令消息或輪詢消息,,同時建立鏈路,。
(2)數(shù)據(jù)通信
在RS485鏈路上發(fā)送通信數(shù)據(jù)包時,,首先設(shè)置一個惟一的編號,并且啟動定時器,,等待回應(yīng),。若在定時器到達(dá)之前接收到單板回應(yīng),則認(rèn)為數(shù)據(jù)發(fā)送成功,;否則等時間到后重新發(fā)送此數(shù)據(jù),。
(3)鏈路斷開
對于采用RS485方式的串口通信鏈路,單板在規(guī)定時間內(nèi)發(fā)送完數(shù)據(jù)后,,該邏輯鏈路斷開,,控制板繼續(xù)輪詢下一單板。
3.2 與CPU子板串口通信
單片機(jī)與CPU之間的串口通信采用停等式滑動窗口作為差錯和流量控制手段,。
在該鏈路上,,CPU和單片機(jī)是對等的,即都能向?qū)Ψ桨l(fā)送命令,,同時也能響應(yīng)對方的命令,。
單片機(jī)每向CPU發(fā)送一個消息,單片機(jī)串口通信處理模塊便啟動一個定時器,,等待回應(yīng)數(shù)據(jù)的到來,。在定時器到達(dá)之前,若成功地接收到串口發(fā)送的數(shù)據(jù),,則認(rèn)為數(shù)據(jù)發(fā)送成功,;沒有接收到回應(yīng),則重新發(fā)送這些數(shù)據(jù),;多次重新發(fā)送數(shù)據(jù)失敗,,則認(rèn)為鏈路中斷。
單片機(jī)收到CPU的消息,,必須回應(yīng)CPU,。
CPU定期向單片機(jī)發(fā)送鏈路檢測幀,單片機(jī)給出回應(yīng),,以保證鏈路通暢,。
4 主備倒換
為了提高控制板的可靠性,,模塊采取主備形式進(jìn)行熱備份??刂瓢迳想姾筮M(jìn)行模塊自檢,,只有自檢成功的單板才能參與主備競爭。主備競爭結(jié)束后,,一塊為主板,,另一塊為備板;在工作過程中,,主板和備板之間通過以太網(wǎng)進(jìn)行主備之間的數(shù)據(jù)交換,,達(dá)到熱備份目的。同時,,在主板出現(xiàn)異常情況時,,會自動進(jìn)行主備切換。
主備控制板之間有主備競爭連線,、在位檢測連線,、復(fù)位對板連線以及故障指示連線。主備控制板上電后首先進(jìn)行主備競爭,,由單片機(jī)上報主備狀態(tài),。在正常運(yùn)行過程中,各個單板上的單片機(jī)和邏輯電路負(fù)責(zé)監(jiān)測本板和對板連接電路的狀態(tài),,一旦發(fā)生主板故障立即進(jìn)行倒換,。
控制板內(nèi)單片機(jī)通過與相應(yīng)的EPLD邏輯連接實現(xiàn)單板的主備切換邏輯控制;同時單片機(jī)通過RS232串口與PCM9576通信,,完成整個單板的狀態(tài)監(jiān)測,。
在下列情況下,控制板產(chǎn)生主備倒換:
(1)當(dāng)主板被拔出,、掉電和復(fù)位時,,主板發(fā)生主備倒換。主板產(chǎn)生一個外部中斷通知對板上的單片機(jī),,對板單片機(jī)向EPLD中寫控制寄存器實現(xiàn)主備倒換,。把該中斷解釋成主備倒換的消息,在50ms內(nèi)通過串口告知本板的CPU模塊,。
(2)當(dāng)以太網(wǎng)失控,、OAM發(fā)出切換時,由CPU發(fā)出主備切換命令給單片機(jī),,單片機(jī)向EPLD中寫控制寄存器實現(xiàn)主備倒換,。
這部分軟件模塊主要實現(xiàn)對外部中斷的響應(yīng)和與CPU串口例程間的協(xié)調(diào)。
由于串口鏈路只建立在CPU子板與單片機(jī)之間,與外界無任何聯(lián)系,,主備倒換發(fā)生時,,不進(jìn)行任何處理,繼續(xù)維持CPU子板與單片機(jī)之間的鏈路,。
5 配置以太網(wǎng)模塊
控制板中的以太網(wǎng)分為控制網(wǎng)和業(yè)務(wù)網(wǎng)交換兩部分,。
控制板內(nèi)部由2片BCM5328構(gòu)成12口的10/100Mbps自適應(yīng)無阻塞以太網(wǎng)交換,實現(xiàn)NodeB內(nèi)部控制網(wǎng)的無阻塞交換,。
控制網(wǎng)的路由表采用靜態(tài)路由,,上電時由控制板內(nèi)部的PCM9576通過SPI口配置。
業(yè)務(wù)網(wǎng)內(nèi)部由3片BCM5328構(gòu)成25口的10/100Mbps自適應(yīng)無阻塞以太網(wǎng)交換,,實現(xiàn)NodeB內(nèi)部業(yè)務(wù)網(wǎng)的無阻塞交換,。
業(yè)務(wù)網(wǎng)的路由表采用靜態(tài)路由,上電時由內(nèi)部的PCM9576通過SPI口配置,。
控制板板內(nèi)5片BCM5328的路由表設(shè)置和狀態(tài)監(jiān)控都通過SPI接口完成,。SPI口的讀寫時序由單片機(jī)管腳通過SPI端口實現(xiàn),。由于BCM5328的SPI規(guī)定最多只能尋址4片BCM5328芯片,,所以SPI接口連接到EPLD,通過單片機(jī)另外連接一個控制腳,,控制SPI切換到業(yè)務(wù)網(wǎng)或控制網(wǎng),。單片機(jī)配置以太網(wǎng)的SPI讀流程如圖2。
限于篇幅,,不能詳盡所有的實現(xiàn)方法和實驗數(shù)據(jù),。本系統(tǒng)經(jīng)過試驗網(wǎng)的測試證明運(yùn)行穩(wěn)定,單片機(jī)完全可以實現(xiàn)許多功能,。這充分說明了在大系統(tǒng)設(shè)計中將高端與低端,、昂貴與便宜的CPU相結(jié)合,可使它們相互配合共同完成復(fù)雜的功能,。
參考文獻(xiàn)
1 孫立新.第三代移動通信技術(shù).北京:人民郵電出版社,,2000