倪文龍,吳翼虎,錢(qián)宏文,鄭文玲,李旭明
(中國(guó)電子科技集團(tuán)公司第五十八研究所,江蘇 無(wú)錫 214035)
近些年,依托網(wǎng)絡(luò)技術(shù)、微電子和嵌入式計(jì)算機(jī)技術(shù)在信息傳輸領(lǐng)域中廣泛使用,已成為比較熱點(diǎn)的技術(shù)[1-2]。嵌入式應(yīng)用的快速普及不只影響人們的日常生活,國(guó)防安全、科學(xué)研究和工程建設(shè)也深受其影響。由于市場(chǎng)需求對(duì)功能應(yīng)用的不斷提升,制造工藝技術(shù)在集成電路方面也在快速發(fā)展,伴隨嵌入式系統(tǒng)在功耗和性能上的要求不斷增加,高性能多核處理器也隨之出現(xiàn)。
IC 設(shè)計(jì)伴隨著集成電路的發(fā)展越來(lái)越受到重視,國(guó)產(chǎn)化的嵌入式芯片起步晚,基礎(chǔ)差,芯片封裝技術(shù)相對(duì)落后,特別是中興、華為制裁事件以后,國(guó)產(chǎn)芯片種類(lèi)和先進(jìn)的封裝技術(shù)也在快速增加和提升。SIP(system ina package)封裝技術(shù)就是一條新型革命前進(jìn)的道路,此項(xiàng)技術(shù)正在半導(dǎo)體制造領(lǐng)域廣泛應(yīng)用。針對(duì)國(guó)產(chǎn)化多核芯片的應(yīng)用設(shè)計(jì)開(kāi)發(fā)需求也在持續(xù)增加和受到越來(lái)越多人的關(guān)注。
現(xiàn)代社會(huì)各種智能化的設(shè)備在隨著互聯(lián)網(wǎng)規(guī)模的持續(xù)增進(jìn)與計(jì)算機(jī)技術(shù)科學(xué)的日益膨脹中應(yīng)運(yùn)而生,路由器在網(wǎng)絡(luò)發(fā)展過(guò)程中一直作為不可替代設(shè)備而存在。隨著互聯(lián)網(wǎng)的發(fā)展,人們對(duì)于路由器的使用和功能期望越來(lái)越多,可定制化路由器的需求在此種情景之下開(kāi)始逐漸進(jìn)入人們的視野。OpenWrt 是路由器上常用的操作系統(tǒng),人們能非常方便地對(duì)其進(jìn)行功能定制、系統(tǒng)優(yōu)化,從而達(dá)到自己的定制功能需求[3]。伴隨OpenWrt 版本支持的平臺(tái)越來(lái)越多,越來(lái)越多的人開(kāi)始學(xué)習(xí)和研究OpenWrt。它之所以能成為所有智能路由系統(tǒng)中首選路由器系統(tǒng),不僅是因?yàn)樗情_(kāi)源系統(tǒng)[4-5]。它自身還有兩大優(yōu)點(diǎn):①OpenWrt 提供的軟件包管理和文件系統(tǒng)是完全可寫(xiě)的,這種靈活的操作方式,很大程度上減小了定制化路由系統(tǒng)的開(kāi)發(fā)門(mén)檻;②應(yīng)用程序的構(gòu)建是通過(guò)簡(jiǎn)單易用的環(huán)境框架來(lái)實(shí)現(xiàn)的,能讓開(kāi)發(fā)者利用軟件包的概念完成定制固件,定制、裁剪系統(tǒng)變得十分便捷和簡(jiǎn)單。
設(shè)計(jì)硬件采用自研國(guó)產(chǎn)化 SIP 封裝PowerPCP2020,與飛思卡爾的PowerPCP2020 相互兼容,內(nèi)部架構(gòu)如圖1 所示。P2020 內(nèi)部包含兩個(gè)e500V2 的內(nèi)核及共用的512kBL2Cache 和獨(dú)立的64kBL1Cache[6-7],此外內(nèi)部還包含DDR 控制器、增強(qiáng)型的LocalBus、SerDes 接口、USB、千兆網(wǎng)、DUART 等功能單元,資源接口非常豐富。

圖1 P2020 內(nèi)部架構(gòu)
依據(jù)邊界路由設(shè)備的設(shè)計(jì)思路的需求并結(jié)合P2020 內(nèi)部架構(gòu),構(gòu)建邊界路由的最小系統(tǒng)的硬件框架,如圖2 所示。該路由設(shè)備硬件主核芯片采用先進(jìn)的SIP 封裝技術(shù),SIP 內(nèi)部P2020 內(nèi) 核、DDR3及SPIFlash、NorFlash,此設(shè)計(jì)將P2020 最小系統(tǒng)集成于一個(gè)封裝內(nèi),極大地節(jié)省硬件設(shè)計(jì)人員最小系統(tǒng)外設(shè)的選型于PCB 繪制過(guò)程中可能存在的設(shè)計(jì)錯(cuò)誤和高頻干擾問(wèn)題。此外,設(shè)備外部資源還接有三路的千兆以太網(wǎng)接口,NandFlash,備用USB接口、SD 卡接口及調(diào)試接口串口。

圖2 硬件設(shè)計(jì)系統(tǒng)框架
在完成邊界路由設(shè)備設(shè)計(jì)以后,針對(duì)邊界路由設(shè)備處理器的OpenWrt 嵌入式系統(tǒng)性能完成了測(cè)試,本次處理性能測(cè)試主要針對(duì)的是CPU 的運(yùn)算性能測(cè)試。
為了使測(cè)試結(jié)果可以橫向?qū)Ρ龋覝y(cè)試的結(jié)果可以全面、客觀地體現(xiàn)處理器的運(yùn)算性能,就需要采用不同的測(cè)試基準(zhǔn)來(lái)完成處理器的評(píng)估測(cè)試。Dhrystone 和Whetstone 是如今被學(xué)術(shù)界普遍使用和認(rèn)可的兩種很典型的測(cè)試評(píng)估基準(zhǔn),分別對(duì)處理器的定點(diǎn)運(yùn)算能力和浮點(diǎn)運(yùn)算能力指標(biāo)進(jìn)行測(cè)試和評(píng)估[8-9]。
Dhrystone 是Reinhold 發(fā)明的用來(lái)測(cè)試處理器整數(shù)處理能力的測(cè)試方法,它是由C 語(yǔ)言編寫(xiě),且源碼公開(kāi),移植和修改都十分方便。該測(cè)試法包括邏輯操作、整數(shù)運(yùn)算、控制語(yǔ)句、賦值語(yǔ)句,各種參數(shù)傳送及過(guò)程調(diào)用等[9-10]。
采用Dhrystone 測(cè)試程序在邊界路由設(shè)備運(yùn)行后的測(cè)試結(jié)果如圖3 所示。
由圖3 可知,當(dāng)在板子上運(yùn)行時(shí),在主頻為800 MHz 的情況下,測(cè)試程序運(yùn)行在OpenWrt 環(huán)境中,P2020 單核e500 處理核心利用Dhrystone測(cè)試算法得出結(jié)果是517.20 DMIPS,也就是0.646 5 DMIPS/MHz。在主頻為800 MHz 雙核的情況下,測(cè)試程序運(yùn)行在OpenWrt 環(huán)境中,DMIPS 可以跑到1 034.1 DMIPS/MHz,雙核可跑到1.293 DMIPS/MHz,換算到1.2 G 主頻下約為1.939 5 DMIPS/MHz。

圖3 Dhrystone 性能測(cè)試結(jié)果
根據(jù)測(cè)試結(jié)果,與理論值列表對(duì)比見(jiàn)表1。
由表1 結(jié)果可知,實(shí)測(cè)的數(shù)據(jù)和手冊(cè)的指標(biāo)存在一些差距,這是由于本次測(cè)試是基于OpenWrt操作系統(tǒng)下的,系統(tǒng)中運(yùn)行著許多其他與路由設(shè)備相關(guān)的進(jìn)程,從而影響了測(cè)試結(jié)果,并且手冊(cè)參考值為最高頻率1.2 GHz 下的測(cè)試結(jié)果,而本次測(cè)試中運(yùn)行頻率為800 MHz,且手冊(cè)公布的值為系統(tǒng)在最優(yōu)性能下的測(cè)試結(jié)果。

表1 Dhrystone 性能分析
Whetstone 測(cè)試法也是用C 語(yǔ)言編寫(xiě)的,且源碼公開(kāi),移植和修改也很方便。主要由執(zhí)行條件轉(zhuǎn)移、數(shù)組變址、功能調(diào)用、浮點(diǎn)運(yùn)算[10-11]。測(cè)試結(jié)果用kiloWhets/s(Kwips)表示,即每一秒可以執(zhí)行的千次指令數(shù)。
WHETSTONE 程序中主要計(jì)算公式為

式中:I 表示每個(gè)外循環(huán)將執(zhí)行的次數(shù);II 表示每個(gè)內(nèi)循環(huán)將執(zhí)行Whetstone 指令次數(shù);(TIME1-TIME0)表示程序運(yùn)行前后的時(shí)間差。
采用Whetstone 測(cè)試程序在邊界路由設(shè)備運(yùn)行后的測(cè)試結(jié)果如圖4 所示。

圖4 Whetstone 性能測(cè)試結(jié)果
根據(jù)P2020 單個(gè)e500 處理核運(yùn)行Whetstone 的測(cè)試結(jié)果結(jié)果可以看出,P2020 的浮點(diǎn)運(yùn)算能力為約為50 000 KiloWhets/s,性能還是比較弱,和市面上專(zhuān)業(yè)的多核浮點(diǎn)處理器測(cè)試結(jié)果還是有很大差距的。但是本次邊界路由設(shè)備中對(duì)浮點(diǎn)數(shù)據(jù)處理占比例很少,性能影響可以忽略。
在完成對(duì)P2020 性能測(cè)試以后,利用OpenWrt移植的web 服務(wù)器,通過(guò)設(shè)備訪問(wèn)路由器,可查看br-lan 網(wǎng)口流量數(shù)據(jù)如圖5 所示,外部數(shù)據(jù)連接的wlan 網(wǎng)口流量數(shù)據(jù)如圖6 所示,設(shè)備的實(shí)時(shí)負(fù)載如圖7 所示。

圖5 br-lan 口數(shù)據(jù)實(shí)時(shí)流量

圖6 WAN 口數(shù)據(jù)實(shí)時(shí)流量

圖7 實(shí)時(shí)負(fù)載顯示結(jié)果
設(shè)計(jì)一種基于PowerPC 處理器和開(kāi)源OpenWrt 作為操作系統(tǒng)構(gòu)建的邊界路由方案;系統(tǒng)以P2020 為核心處理器作為基礎(chǔ),對(duì)OpenWrt 操作系統(tǒng)開(kāi)發(fā)與性能測(cè)試進(jìn)行了論述,得到以下結(jié)論:
1)采用系統(tǒng)硬件SPI 封裝設(shè)計(jì),具有集成度高、設(shè)計(jì)應(yīng)用簡(jiǎn)易等特點(diǎn),硬件預(yù)留外部接口、擴(kuò)展性好等優(yōu)點(diǎn)。
2)經(jīng)過(guò)運(yùn)算性能測(cè)試和功能驗(yàn)證,設(shè)備整型數(shù)據(jù)處理能力強(qiáng),能很大程度提高邊界路由設(shè)備運(yùn)算性能。
3)系統(tǒng)為后期制定的功能開(kāi)發(fā)奠定了基礎(chǔ)。后續(xù)研制的P2020 網(wǎng)絡(luò)設(shè)備嵌入式產(chǎn)品都在該系統(tǒng)的版本上再一次研發(fā),一定程度減小產(chǎn)品研發(fā)設(shè)計(jì)計(jì)劃,在系列化產(chǎn)品研制中有重要的意義。