張偉棟,趙 紅(.中國航空計算技術(shù)研究所,陜西 西安 70065;.西安火車站,陜西 西安 7004)
基于PowerPC8640處理器的通用處理模塊設(shè)計
張偉棟1,趙紅2
(1.中國航空計算技術(shù)研究所,陜西 西安 710065;2.西安火車站,陜西西安710014)
隨著新一代飛機機載電子設(shè)備綜合化、智能化的發(fā)展,系統(tǒng)對機載電子設(shè)備的處理能力需求越來越高。借鑒國外高性能嵌入式計算機的設(shè)計原則,設(shè)計了一種基于高性能處理器PowerPC8640的通用處理模塊,并對部分功能單元的設(shè)計進行描述。該模塊具有數(shù)據(jù)處理能力強、功能擴展性強、通用性強、集成度高、高速外部串行總線接口等特點,具有較高的應(yīng)用價值,目前該模塊已經(jīng)應(yīng)用于多種機載電子設(shè)備中。
PowerPC8640;通用處理;嵌入式處理;ASAAC結(jié)構(gòu)
隨著新一代戰(zhàn)機的出現(xiàn)和戰(zhàn)技指標(biāo)需求的不斷攀升,機載航電設(shè)備作為航空電子產(chǎn)品中的重要一員,其功能和性能也要得到不斷的完善和提高,同時體積和重量卻要求不斷減小,以滿足戰(zhàn)機的作戰(zhàn)需求。功能的完備和性能的提高帶來了大量數(shù)據(jù)的處理需求,需要高性能的處理器完成相關(guān)的任務(wù),體積和重量的減少要求產(chǎn)品上的器件密度越來越高。本文主要介紹基于 Power-PC8640處理器的高性能高集成度的通用處理模塊的設(shè)計,它采用通用化設(shè)計思想、標(biāo)準(zhǔn)的ASAAC結(jié)構(gòu)以及可配置性的設(shè)計,可用于多種機載電子系統(tǒng)[1]。
本文所描述的通用處理模塊是基于 PowerPC8640高性能處理器,設(shè)計采用兩片 PowerPC8640,周邊配置有存儲器(包括DDR2、Flash和NvRAM)、看門狗、高速Rapid IO接口、高速串行接口、CAN總線、離散量接口、422接口、485接口、溫度監(jiān)控、RTC和調(diào)試接口等資源。模塊設(shè)計采用兩塊印制板,其結(jié)構(gòu)圖如圖1所示。

2.1PowerPC8640處理器簡介
PC8640屬于 PowerPC的處理器,目前已在國外數(shù)據(jù)處理與信號處理中采用。一片PC8640中提供1個e600內(nèi)核,主頻最高可達1.25 GHz,e600內(nèi)核提供1 MB的高帶寬、低延遲的L2 cache,設(shè)計中主頻設(shè)為1 GHz。

圖1 通用處理模塊結(jié)構(gòu)圖
PC8640有兩個64位的 DDR2控制器接口,最高工作頻率533 MHz。PC8640處理器使用e600核和高速內(nèi)部互連技術(shù)來平衡處理器的性能與I/O系統(tǒng)的吞吐率。
PC8640配置了兩種靈活的高性能 I/O接口。一種是×1、×2、×4、×8 PCI Express接口,采用 PCI-E總線實現(xiàn)板級高性能設(shè)備的串行點對點互連;另一種是1×、4×線串行 Rapid IO接口,由于 Rapid IO總線具有軟件開銷小、配置簡單、硬件糾錯等特點,且支持存儲器映射和包傳輸機制,非常適合作為底板接口。
PC8640還配置了4個以太網(wǎng)控制器,支持10 Mb/s,100 Mb/s和1 000 Mb/s速率通信。每個以太網(wǎng)控制器可以轉(zhuǎn)換為FIFO模式實現(xiàn)高效ASIC互連。
此外 PC8640還配置有 UART接口、中斷控制器、DMA控制器、GPIO等資源[2]。
設(shè)計采用兩片PC8640處理器,每片處理器的存儲器資源、調(diào)試接口、溫度檢測、RTC資源獨立,其他資源如離散量、422接口、485接口等資源是共用的。
2.2其他資源設(shè)計
模塊的存儲器包括 DDR2存儲器、Flash存儲器和NvRAM存儲器。PC8640對外提供DDR2接口和HLP總線接口。PC8640的DDR2接口外接64位數(shù)據(jù)寬度的1 GB 的DDR2 SDRAM;PC8640的HLP總線接口外接Flash和NvRAM。
PC8640對外提供兩路I2C總線,分別連接實時時鐘和溫度監(jiān)測芯片,提供RTC和溫度監(jiān)測功能。
PC8640對外提供調(diào)試接口,包括串口、以太網(wǎng)接口和JTAG接口,用于處理器以及軟件的調(diào)試。
處理器 PC8640集成兩個高速串行I/O接口(Serdes1 和Serdes2),設(shè)計中將每個處理器的兩個Serdes接口設(shè)置為×4 PCI-E模式和×4 Rapid IO模塊。Serdes1接口連接處理器和高速串行接口,用于實現(xiàn)高速串行接口通信控制,接口為 PCI-E總線;Serdes2接口連接處理器和Rapid IO交換芯片,接口為RapidIO總線。Rapid IO交換芯片配置為 3個 4×Rapid IO接口,10個 1×Rapid IO接口。4×Rapid IO接口其中 2路接處理器,1路引到底板;1× Rapid IO接口10路引到底板上。
高速串行接口實現(xiàn)2路,其中一路協(xié)議處理采用固定的邏輯版本;另外一路協(xié)議處理根據(jù)系統(tǒng)應(yīng)用需要,可通過處理器控制加載不同的邏輯版本。兩路高速串行接口的傳輸介質(zhì)為光接口,通過光電轉(zhuǎn)換芯片連接到底板連接器。
422、485接口采用IP核在FPGA內(nèi)部實現(xiàn),處理器通用HLP總線控制422、485接口的收發(fā)數(shù)據(jù)。
模塊對外提供5路CAN總線接口,采用協(xié)議芯片實現(xiàn),CAN總線接口掛在處理器控制FPGA下,接口采用SPI接口。
模塊對外提供多路差分的TTL輸入輸出信號、多路LVDS輸入輸出信號、多路LVTTL輸入輸出信號、多路MLVDS輸出信號以及多路Aurora總線接口。
底板連接器為帶光纖接口的數(shù)字連接器,A腔包含2芯光纖接口和135芯低頻接觸件,B腔包含252芯低頻接觸件。
3.1高速接口重加載設(shè)計
由于本文設(shè)計的是通用處理模塊,高速串行接口也要適應(yīng)多種機載電子設(shè)備,不同設(shè)備的配置共包括:2路高速串行接口、1路雙余度的高速串行接口、1路單余度的高速串行接口等。高速串行接口的邏輯規(guī)模很大,因此將高速串行接口設(shè)計為2路,一路可重加載,另一路為固定的邏輯。下面說明高速串行接口重加載的設(shè)計實現(xiàn)。
加載控制電路的設(shè)計框圖如圖2所示。

圖2 加載控制電路
加載控制、狀態(tài)信號采用3.3 V電壓,通過處理板FPGA控制,輸出給CPLD,實現(xiàn)對邏輯重加載的控制。加載控制信號通過3個控制離散量分別表示3個不同邏輯狀態(tài),通過一個控制信號指示邏輯重載開始,通過處理器控制。加載控制時序如圖3所示。

圖3 加載控制時序圖
加載及控制流程說明如下:
(1)處理器的控制FPGA和CPLD中,重加載設(shè)計默認(rèn)狀態(tài)都為001,CPLD上電后固定加載PROM0中的邏輯;
(2)處理器啟動后,根據(jù)系統(tǒng)要求,首先判斷加載的默認(rèn)狀態(tài)高速串行接口邏輯是否為系統(tǒng)所需要的,如果是,則處理器不再發(fā)起重加載,如果不是,則先設(shè)置加載控制離散量狀態(tài)(每位設(shè)置為“1”,表示加載對應(yīng)位的PROM中的邏輯;為“0”,表示不加載),然后將加載控制離散量置位為“1”,啟動加載,此時處理器軟件檢測邏輯加載狀態(tài)信號,在該信號為“1”后,表示加載完成,可對設(shè)備進行初始化;
(3)CPLD在加載控制信號的上升沿啟動加載,通過控制FPGA的Program_B信號控制邏輯重載[3];
(4)CPLD在完成邏輯加載后 (判斷 FPGA給出的Done信號為“1”),處理器發(fā)起邏輯復(fù)位操作,在復(fù)位結(jié)束后,將加載完成狀態(tài)離散量置位為“1”;
(5)處理器軟件在判斷邏輯加載完成,將加載控制信號重新置位為“0”,以便于下次可用于邏輯重載。
3.2軟件設(shè)計
由于設(shè)計的是通用處理模塊,在軟件方面也需要滿足多種機載電子設(shè)備的要求。處理器、存儲器資源、接口資源在不同設(shè)備中是相同的,軟件也完全相同。而高速串行接口在不同的設(shè)備中有不同的需求,驅(qū)動不同,因此在軟件設(shè)計時,考慮到多種設(shè)備中使用同一款軟件,需將不同的高速串行接口驅(qū)動固化在 Flash的不同地址,根據(jù)系統(tǒng)設(shè)備需求,加載相應(yīng)的軟件驅(qū)動,具體實現(xiàn)如下:模塊加電后,處理器需到 Flash取指令,初始化模塊,引導(dǎo)運行操作系統(tǒng)以及應(yīng)用程序。因此在模塊初始化完成后,設(shè)置選項,通過不同的參數(shù)選擇不同軟件驅(qū)動,以適應(yīng)不同設(shè)備的需求。如參數(shù)設(shè)置為0,模塊操作系統(tǒng)啟動后,加載第一種設(shè)備的高速串行接口驅(qū)動以及其他驅(qū)動,這樣應(yīng)用程序啟動后可直接調(diào)用相關(guān)的驅(qū)動函數(shù)。如果參數(shù)設(shè)置為1,模塊操作系統(tǒng)啟動后,加載第二種設(shè)備的高速串行接口驅(qū)動以及其他驅(qū)動,參數(shù)設(shè)置為2,加載第三種設(shè)備的高速串行接口驅(qū)動以及其他驅(qū)動。該參數(shù)固定在Flash中,不會隨著模塊下電而消失,用戶只需要設(shè)置一次,下次模塊上電后,會根據(jù)已經(jīng)設(shè)置好的參數(shù)加載相應(yīng)驅(qū)動,如需改用其他設(shè)備,只需要修改一次參數(shù)即可。
本文結(jié)合高性能的 PowerPC8640處理器的特征,設(shè)計了一種雙處理器的通用處理模塊,對外提供高速串行接口、CAN總線、Rapid IO總線、422接口、485接口、多種形式的離散量接口以及處理器的調(diào)試接口,高速串行接口可適用于多種電子設(shè)備。該模塊設(shè)計的目的是為了滿足新一代飛機多種機載設(shè)備的需要,與系統(tǒng)中其他設(shè)備進一步綜合,使機載設(shè)備整體性能達到最優(yōu),該模塊具有很大的應(yīng)用價值。
[1]湯艷飛,文敏華.基于MPC8640D處理系統(tǒng)的技術(shù)研究[J].航空計算技術(shù),2012,42(1):120-122.
[2]FreescaleSemiconductor,Inc.MPC8640DRM [EB/OL].(2008-07-xx)[2014-10-31].http://www.freescale.com.
[3]Xilinx,Inc.Virtex-5 FPGA Data Sheet[EB/OL].(2008-07-xx)[2014-10-31].http://www.xilinx.com.
The design of general processing module based on pow erPC8640
Zhang Weidong1,Zhao Hong2
(1.Aeronautic Computing Technique Research Institute,Xi′an 710065,China;2.Xi′an Railway Station,Xi′an 710014,China)
With the development of the integrated and intelligent new airborne electronic equipment,system demands higher processing capacity.Referring to the design principle of high performance embedded computer abroad,a general processing module of high performance processor based on PowerPC8640 has been designed,and the design of part functional unit are described.This module has strong processing scalability,versatility,high integration and high speed external serial bus interface,and has high application value.The module has been applied to a variety of airborne electronic equipment.
PowerPC8640;general process;embedded computer;ASAAC
TP336
A
1674-7720(2015)06-0032-03
2014-11-27)
張偉棟(1984-),男,碩士研究生,工程師,主要研究方向:數(shù)據(jù)處理技術(shù)。