摘 要:基于MPC8280的智能串口模塊用于擴展CompactPCI計算機系統的串行通信接口。在模塊設計中,通過使用HB6芯片,實現非透明PCI橋;通過外接收發電路,實現PowerPC微處理器自帶的四路RS 422接口。該智能模塊具有單獨處理能力,在基于CompactPCI總線的系統中既可作主模塊又可作從模塊。該模塊已經投入使用,在使用過程中性能穩定。
關鍵詞:PowerPC;HB6;RS 422;CompactPCI
中圖分類號:TP334文獻標識碼:B
文章編號:1004-373X(2010)02-102-02
Design of Intelligent Serial Interface Module Based on MPC8280
SU Peipei,CHEN Hairong,WANG Xuli
(Jiangsu Automation Research Insititute,China Shipbuilding Industry Corporation,Lianyungang,222006,China)
Abstract:The intelligent serial interface module based on MPC8280 is used for expanding CompactPCI computer systems′ serial communication interface.The module achieves non_transparent PCI bridge through the use of HB6 chip,and four RS422 interface which is integrated in PowerPC microprocessor through the expansion of external transceiver circuit.The intelligent module has a separate management ability,it can be used as either master module or slave module in CompactPCI bus_based systems.This module has been put into use,in the course of stable performance.
Keywords:PowerPC;HB6;RS 422;CompactPCI
隨著嵌入式技術的不斷發展,微處理器的處理能力大幅提升。嵌入式處理器在通信設備、消費電子、軍用電子等領域的應用越來越廣泛。在軍用電子領域,微處理器的處理速度、功耗及工作溫度更是有嚴格的要求。
計算機系統中串口模塊智能化已經成為趨勢,為了能夠更好地對各種設備和接口進行控制,逐漸開始在模塊中使用微處理器,并移植嵌入式操作系統進行控制管理。該模塊使用了PowerPC家族中的MPC8280 作微處理器,搭配HB6進行了非透明橋設計,并在本板上移植了實時操作系統VXWORKS。
1 硬件設計
智能串口模塊是基于G2處理器MPC8280的6U尺寸CPCI總線模塊,符合PICMIG2.0R3.0。處理器采用Freescale公司 MPC8280[1],主頻450 MHz,最高處理性能885 MIPS,內嵌高速緩沖器(指令16 KB,數據16 KB),支持32位整型運算及硬件單/雙精度浮點運算,最大功耗為2.3 W;提供板載64位128 MB SDRAM,64位32 MB FLASH,E2PROM等存儲設備[2,3]。
I/O接口方面提供了四個串行接口,支持異步/同步方式,支持RS 232/RS 422電氣接口標準。其中,異步方式的單口最大速率115.2 Kb/s,同步方式的單口最大速率1 Mb/s(實際性能根據系統負荷決定);提供一個USB 1.1標準接口,與串行接口4復用信號;提供一個系統控制臺接口,接口符合串行異步RS 232標準,速率為9 600 b/s;提供兩個以太網接口,支持10/100 Mb/s及半/全雙工自適應,接口定義符合PICMG 2.16標準定義[4]。
CPCI總線接口采用非透明橋設計,使用PCI6254芯片,配置其工作在通用模式下,總線為32 b數據寬度,33 MHz總線時鐘[5]。
該智能串口模塊最大可提供四個RS 422接口(可跳線選擇為RS 232),兩個10/100 Mb/s及半/全雙工自適應以太網接口,可滿足大多數軍用計算機系統的通信需求。采用非通明PCI橋設計,使之與主板的通信智能化,可應用于要求苛刻、環境惡劣的機載、車載、艦載計算機系統中。模塊原理框圖如圖1所示。
1.1 通信接口設計`
MPC8280專為串行通信優化而內嵌通信處理器(CPM)。CPM是一個32位RISC通信處理器(CP),有自己的ROM和RAM,存放著自己的微代碼,它可以為需要通信能力的設備提供一個靈活、完整的解決方案,同時降低系統頻率和能耗。CP提供了多個綜合的通信通道,可以處理低層次的協議[6,7]。
CPM模塊提供的對外接口如表1所示。
圖1 模塊原理框圖
表1 CPM模塊對外接口
控制器名稱數目支持的協議
全雙工快速通信控制器(FCC)3ATM(UTOPIA接口)、HDLC、IEEE 802.3/快速以太網
多通道控制器(MCC)2HDLC
全雙工串行通訊控制器(SCC)4IEEE 802.3/以太網、HDLC/SDLC、UART、SUART、BISYNC
全雙工串行管理控制器(SMC)2GCI(ISDN接口)、UART
該模塊將4個SCC設計為RS 422通信接口[6],其中一個可復用作為USB接口。將一個SMC設計為一個RS 232接口,作為調試控制臺通信使用[8],如圖2所示。
圖2 串行通信接口邏輯圖
該模塊將兩個FCC設計為10/100 Mb/s及半/全雙工自適應以太網接口[9],如圖3所示。
1.2 非透明PCI橋設計
該模塊在CPCI接口部分采用非透明PCI橋設計,大大增強了使用靈活性,很大程度上簡化了針對本串口板驅動程序的編寫。針對該模塊的板級固件已經完成了對本板上各功能部件的驅動,本板上通信接口由板載的處理器控制,板微處理器通過非透明橋HB6與主板交互信息,并根據主板信息對I/O接口發起訪問。邏輯圖如圖4所示。
HB6有三種工作模式:標準透明模式、標準非透明模式、通用模式。通用模式又分為通用非透明和通用透明模式兩種,本板的設計使用通用模式下的通用非透明模式。HB6芯片選擇由硬件配置完成, U_MODE拉高表示工作在通用模式;TRANS拉高表示工作在工作在通用非透明模式;XB_MEM拉高表示如果工作在非透明模式時,自動開16 MB空間供主板訪問。S_RSTIN為S端的復位輸入,如果該模式下用不到,將其拉高,置在無效狀態[5]。
圖3 以太網接口邏輯圖
圖4 非透明PCI橋邏輯圖
該模塊中,HB6的通信機制用到直接消息中斷、門鈴中斷和內存映射。HB6的P端和S端各開一個內存窗口,經過HB6內部的內存窗口映射機制映射到對方可訪問的地址區域,并可通過映射譯碼寄存器的設置而變化,從而可使內存映射窗口隨意移動。
橋兩端的陰影部分基址可以通過改變Upstream或者Dowmstream相應寄存器的值來進行選擇,從而使橋兩端陰影部分的內存區域可以分別在各自的內存尋址空間中任意移動,使得P端可通過移動內存窗口訪問S端任意一段內存區域,反之亦然。
當橋的一段需要把數據發送到橋的另一端時,先將需要發送的數據寫入可供橋另一端讀取的本地內存中,然后引發橋另一端的消息中斷,以通知其接收數據,橋的另一端保持在空閑狀態,接收到消息中斷后,立即從相應內存區域中讀取數據,操作完成后發門鈴中斷,以通知橋的另一端可以進行下一次操作,然后回到空閑狀態。需要注意的是傳送數據的格式必須有統一的標準,本模塊的數據塊組織方式是前4個字節為操作方式,接著4個字節為傳送數據的長度,該值不包括本身的4個字節,后面緊接著存放相應長度的數據。
2 結 語
設計了基于PowerPC處理器的智能串口模塊,開發了VxWorks的BSP,使本板可運行硬實時的VxWorks操作系統,且在實際測試中運行穩定。該模塊可以作為從板在CPCI體系的計算機系統中方便的使用,很大程度上它的智能性簡化了主板驅動的開發,既可以通過HB6橋同系統中的其他模塊通信,又可以通過網絡與其他模塊構成多點通信,在工業控制、軍用電子設備、通信設備等領域應用前景極為廣泛。
參考文獻
[1]Freescale Semiconductor.MPC8280EC_Hardware Specifications\\.2006.
[2]Freescale Semiconductor.MPC8280 PowerQUICCII Family Reference Manual\\.2005.
[3]Freescale Semiconductor.Freescale PowerPC Architecture Primer\\.2004.
[4]趙竹君,孫未.基于PowerPC的嵌入式系統設計[J].現代電子技術,2007,30(9):33-35.
[5]HiNT Corporation.HiNT HB6 Dual Mode Universal PCI_toPCI Bridge\\.2002.
[6]褚文奎.基于PowerPC處理器MPC8250的嵌入式Linux系統開發[J].計算機工程與設計,2006,27(1):179-180.
[7]錢振華,張浩,彭道剛.嵌入式PowerPC實時系統的通用I/O控制方法[J].測控技術,2007,26(12):58-60.
[8]葉梅,趙京偉,初元萍.嵌入式Linux 系統在 PowerPC 上的實現[J].核電子學與探測技術,2006,26(5):614-618.
[9]楊桂松,張浩,牛志剛,等.基于MPC8248的嵌入式Linux系統的研究與實現[J].測控技術,2008,27(1):51-54.
[10]Freescale Semiconductor.High_Performance PowerPC Processors Roadmap\\.2005.