xScale應(yīng)用程序性能的優(yōu)化策略
發(fā)布時(shí)間:2007/4/23 0:00:00 訪問次數(shù):926
關(guān)鍵詞:XScale 編譯優(yōu)化 優(yōu)化策略ARM
引言
XScale體系結(jié)構(gòu)是采用Intel Pentium技術(shù)實(shí)現(xiàn)的ARM兼容的嵌入式微處理器架構(gòu),并對ARM體系結(jié)構(gòu)進(jìn)行了增強(qiáng),具有業(yè)界領(lǐng)先的高性能和低功耗特性被廣泛應(yīng)用于消費(fèi)電子、無線通信、多媒體和網(wǎng)絡(luò)交換等嵌入式應(yīng)用領(lǐng)域。XScale引入了一系列高性能微處理器的設(shè)計(jì)技術(shù),總體性能顯著地超出同主頻的ARM微處理器。然而,由于受功耗、成本和體積等因素的制約,嵌入式微處理器的處理能力與桌面系統(tǒng)相比仍存在較大差距。通常需要對嵌入式應(yīng)用程序進(jìn)行性能優(yōu)化,以滿足嵌入式應(yīng)用的性能需求。
業(yè)界對嵌入式系統(tǒng)的性能優(yōu)化進(jìn)行了很多研究與實(shí)踐。文獻(xiàn)為XScale優(yōu)化編譯器的設(shè)計(jì)提供了多種優(yōu)化技術(shù),也可用于一些應(yīng)用程序的手工優(yōu)化;文獻(xiàn)從應(yīng)用程序編程的角度討論了ARM嵌入式系統(tǒng)軟件設(shè)計(jì)優(yōu)化技術(shù);文獻(xiàn)討論了提高C/C++嵌入式應(yīng)用程序性能的一些技巧,其中多數(shù)技術(shù)可以由優(yōu)化編譯器中實(shí)現(xiàn)。
本文在總結(jié)XScale優(yōu)化編譯器設(shè)計(jì)和XScale嵌入式系統(tǒng)設(shè)計(jì)開發(fā)工作的基礎(chǔ)上,從系統(tǒng)設(shè)計(jì)、開發(fā)工具選擇、編譯優(yōu)化和編程開發(fā)等角度討論和提出了XScale應(yīng)用程序的優(yōu)化策略和技術(shù)。
1 XScale體系結(jié)構(gòu)
XScale微架構(gòu)引入了Pentium處理器工藝和系統(tǒng)結(jié)構(gòu)技術(shù),實(shí)現(xiàn)了Pentium微處理器體系結(jié)構(gòu)的一系列高性能技術(shù),達(dá)到了高性能、低功耗和小體積等嵌入式系統(tǒng)要求的特性。
(1)超流水線
Xscale的超流水線(SuperPipeline)技術(shù),如圖1所示,由整數(shù)處理(integer)、乘加(MAC)和存儲(chǔ)(memory)3條流水線組成。3條流水線的長度是6到9段,前4到5段共享,后面分支部分并行工作可有效提高處理器性能。
(2)高主頻
采用Pentium工藝技術(shù),XScale主頻可以超出普通ARM微處理器主頻數(shù)倍,在保持較低能量消耗的前提下,高達(dá)600MHz以上。如PXA27X的主頻可高達(dá)724MHz。
(3)存儲(chǔ)體系
XScale實(shí)現(xiàn)了一個(gè)高效的存儲(chǔ)器體系結(jié)構(gòu),為其超流水線的高效運(yùn)行提供數(shù)據(jù)資源。XScale存儲(chǔ)體系功能主要包括32KB D-Cache、32KB I-Cache、2KB Mini Dcache、Fill Buffers、ending Buffers以及4.8GB/s帶寬的存儲(chǔ)總線,使處理器可以高效訪問存儲(chǔ)器。
(4)分支預(yù)測
XScale實(shí)現(xiàn)了基于統(tǒng)計(jì)分析的分支預(yù)測功能部件,減少由于分支轉(zhuǎn)移沖刷指令流水線的次數(shù),也有效地提高了處理器的性能。
(3)指令集體系結(jié)構(gòu)
針對ARM數(shù)據(jù)處理能力的不足,XScale對ARM的乘加邏輯進(jìn)行了增強(qiáng),增加了8條DSP指令。XScale處理器還可集成Flash閃存和無線MMX邏輯功能。這些特性有效地提高了XScale數(shù)據(jù)處理能力。帶有無線MMX的PXA27X在312MHz主頻運(yùn)行處理多媒體應(yīng)用時(shí),其性能與520MHz ARM處理器相當(dāng)。
(6)省去不常用的邏輯功能
為了節(jié)省處理器芯片體積和降低運(yùn)行功耗,XScale體系結(jié)構(gòu)沒有實(shí)現(xiàn)昂貴的浮點(diǎn)運(yùn)算部件和除法部件。這些是嵌入式應(yīng)用中不常用的運(yùn)算。當(dāng)需要這類運(yùn)算時(shí),可以通過軟件方法實(shí)現(xiàn)。
XScale復(fù)雜的體系結(jié)構(gòu)給嵌入式應(yīng)用程序的優(yōu)化帶來了更大的困難。
2 性能優(yōu)化技術(shù)
XScale處理器性能的發(fā)揮很大程度上依賴于應(yīng)用程序的優(yōu)化技術(shù)。XScale嵌入式應(yīng)用系統(tǒng)的性能優(yōu)化可以下幾個(gè)方面考慮。
2.1 算法結(jié)構(gòu)優(yōu)化
實(shí)現(xiàn)某種應(yīng)用功能通?刹捎枚喾N算法或方法,不同算法的復(fù)雜度和效率差別很大。選擇一種高效的算法或?qū)λ惴ㄟM(jìn)行優(yōu)化,可以使應(yīng)用程序獲得最大的優(yōu)化性能。常用的優(yōu)化技術(shù)有以下幾種。
(1)選擇高效算法
如果算法效率低下,再快的處理器也會(huì)顯得不夠
關(guān)鍵詞:XScale 編譯優(yōu)化 優(yōu)化策略ARM
引言
XScale體系結(jié)構(gòu)是采用Intel Pentium技術(shù)實(shí)現(xiàn)的ARM兼容的嵌入式微處理器架構(gòu),并對ARM體系結(jié)構(gòu)進(jìn)行了增強(qiáng),具有業(yè)界領(lǐng)先的高性能和低功耗特性被廣泛應(yīng)用于消費(fèi)電子、無線通信、多媒體和網(wǎng)絡(luò)交換等嵌入式應(yīng)用領(lǐng)域。XScale引入了一系列高性能微處理器的設(shè)計(jì)技術(shù),總體性能顯著地超出同主頻的ARM微處理器。然而,由于受功耗、成本和體積等因素的制約,嵌入式微處理器的處理能力與桌面系統(tǒng)相比仍存在較大差距。通常需要對嵌入式應(yīng)用程序進(jìn)行性能優(yōu)化,以滿足嵌入式應(yīng)用的性能需求。
業(yè)界對嵌入式系統(tǒng)的性能優(yōu)化進(jìn)行了很多研究與實(shí)踐。文獻(xiàn)為XScale優(yōu)化編譯器的設(shè)計(jì)提供了多種優(yōu)化技術(shù),也可用于一些應(yīng)用程序的手工優(yōu)化;文獻(xiàn)從應(yīng)用程序編程的角度討論了ARM嵌入式系統(tǒng)軟件設(shè)計(jì)優(yōu)化技術(shù);文獻(xiàn)討論了提高C/C++嵌入式應(yīng)用程序性能的一些技巧,其中多數(shù)技術(shù)可以由優(yōu)化編譯器中實(shí)現(xiàn)。
本文在總結(jié)XScale優(yōu)化編譯器設(shè)計(jì)和XScale嵌入式系統(tǒng)設(shè)計(jì)開發(fā)工作的基礎(chǔ)上,從系統(tǒng)設(shè)計(jì)、開發(fā)工具選擇、編譯優(yōu)化和編程開發(fā)等角度討論和提出了XScale應(yīng)用程序的優(yōu)化策略和技術(shù)。
1 XScale體系結(jié)構(gòu)
XScale微架構(gòu)引入了Pentium處理器工藝和系統(tǒng)結(jié)構(gòu)技術(shù),實(shí)現(xiàn)了Pentium微處理器體系結(jié)構(gòu)的一系列高性能技術(shù),達(dá)到了高性能、低功耗和小體積等嵌入式系統(tǒng)要求的特性。
(1)超流水線
Xscale的超流水線(SuperPipeline)技術(shù),如圖1所示,由整數(shù)處理(integer)、乘加(MAC)和存儲(chǔ)(memory)3條流水線組成。3條流水線的長度是6到9段,前4到5段共享,后面分支部分并行工作可有效提高處理器性能。
(2)高主頻
采用Pentium工藝技術(shù),XScale主頻可以超出普通ARM微處理器主頻數(shù)倍,在保持較低能量消耗的前提下,高達(dá)600MHz以上。如A27X的主頻可高達(dá)724MHz。
(3)存儲(chǔ)體系
XScale實(shí)現(xiàn)了一個(gè)高效的存儲(chǔ)器體系結(jié)構(gòu),為其超流水線的高效運(yùn)行提供數(shù)據(jù)資源。XScale存儲(chǔ)體系功能主要包括32KB D-Cache、32KB I-Cache、2KB Mini Dcache、Fill Buffers、ending Buffers以及4.8GB/s帶寬的存儲(chǔ)總線,使處理器可以高效訪問存儲(chǔ)器。
(4)分支預(yù)測
XScale實(shí)現(xiàn)了基于統(tǒng)計(jì)分析的分支預(yù)測功能部件,減少由于分支轉(zhuǎn)移沖刷指令流水線的次數(shù),也有效地提高了處理器的性能。
(3)指令集體系結(jié)構(gòu)
針對ARM數(shù)據(jù)處理能力的不足,XScale對ARM的乘加邏輯進(jìn)行了增強(qiáng),增加了8條DSP指令。XScale處理器還可集成Flash閃存和無線MMX邏輯功能。這些特性有效地提高了XScale數(shù)據(jù)處理能力。帶有無線MMX的A27X在312MHz主頻運(yùn)行處理多媒體應(yīng)用時(shí),其性能與520MHz ARM處理器相當(dāng)。
(6)省去不常用的邏輯功能
為了節(jié)省處理器芯片體積和降低運(yùn)行功耗,XScale體系結(jié)構(gòu)沒有實(shí)現(xiàn)昂貴的浮點(diǎn)運(yùn)算部件和除法部件。這些是嵌入式應(yīng)用中不常用的運(yùn)算。當(dāng)需要這類運(yùn)算時(shí),可以通過軟件方法實(shí)現(xiàn)。
XScale復(fù)雜的體系結(jié)構(gòu)給嵌入式應(yīng)用程序的優(yōu)化帶來了更大的困難。
2 性能優(yōu)化技術(shù)
XScale處理器性能的發(fā)揮很大程度上依賴于應(yīng)用程序的優(yōu)化技術(shù)。XScale嵌入式應(yīng)用系統(tǒng)的性能優(yōu)化可以下幾個(gè)方面考慮。
2.1 算法結(jié)構(gòu)優(yōu)化
實(shí)現(xiàn)某種應(yīng)用功能通?刹捎枚喾N算法或方法,不同算法的復(fù)雜度和效率差別很大。選擇一種高效的算法或?qū)λ惴ㄟM(jìn)行優(yōu)化,可以使應(yīng)用程序獲得最大的優(yōu)化性能。常用的優(yōu)化技術(shù)有以下幾種。
(1)選擇高效算法
如果算法效率低下,再快的處理器也會(huì)顯得不夠
熱門點(diǎn)擊
- QUICCEngine新引擎推動(dòng)IP網(wǎng)絡(luò)革新
- CISC和RISC微控制器
- 單片機(jī)和PC機(jī)串口通訊試驗(yàn)
- 如何用單片機(jī)實(shí)現(xiàn)來電顯示解碼
- DSP數(shù)字信號(hào)處理器在科里奧質(zhì)量流量計(jì)上的應(yīng)
- 基于PIC單片機(jī)的六擋調(diào)控電渦流緩速器的設(shè)計(jì)
- 在Windows下實(shí)現(xiàn)PC機(jī)與單片機(jī)AT89
- PIC系列單片機(jī)應(yīng)用設(shè)計(jì)與實(shí)例
- 基于嵌入式控制器的水質(zhì)實(shí)時(shí)遠(yuǎn)程檢測系統(tǒng)
- 建設(shè)單片機(jī)應(yīng)用平臺(tái)、實(shí)施平臺(tái)開發(fā)戰(zhàn)略V0.5
推薦技術(shù)資料
- DFRobot—玩的就是
- 如果說新車間的特點(diǎn)是“靈動(dòng)”,F(xiàn)QPF12N60C那么... [詳細(xì)]
- AMOLED顯示驅(qū)動(dòng)芯片關(guān)鍵技
- CMOS圖像傳感器技術(shù)參數(shù)設(shè)計(jì)
- GB300 超級(jí)芯片應(yīng)用需求分
- 4NP 工藝NVIDIA Bl
- GB300 芯片、NVL72
- 首個(gè)最新高端芯片人工智能服務(wù)器
- 多媒體協(xié)處理器SM501在嵌入式系統(tǒng)中的應(yīng)用
- 基于IEEE802.11b的EPA溫度變送器
- QUICCEngine新引擎推動(dòng)IP網(wǎng)絡(luò)革新
- SoC面世八年后的產(chǎn)業(yè)機(jī)遇
- MPC8xx系列處理器的嵌入式系統(tǒng)電源設(shè)計(jì)
- dsPIC及其在交流變頻調(diào)速中的應(yīng)用研究