亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

一種基于arm處理器的嵌入式軟件能耗統(tǒng)計(jì)模型的制作方法

文檔序號(hào):6603577閱讀:137來源:國(guó)知局
專利名稱:一種基于arm處理器的嵌入式軟件能耗統(tǒng)計(jì)模型的制作方法
技術(shù)領(lǐng)域
本發(fā)明涉及嵌入式軟件能耗優(yōu)化技術(shù)領(lǐng)域,尤其是涉及建立一種基于ARM處理器 的嵌入式軟件能耗統(tǒng)計(jì)模型。
背景技術(shù)
嵌入式系統(tǒng)由嵌入式硬件和嵌入式軟件組成,是典型的軟件驅(qū)動(dòng)執(zhí)行的系統(tǒng)。硬 件的電路活動(dòng)“直接”導(dǎo)致了系統(tǒng)能耗的產(chǎn)生,軟件的指令執(zhí)行和數(shù)據(jù)存取等操作驅(qū)動(dòng)了底 層硬件的電路活動(dòng),“間接”導(dǎo)致了系統(tǒng)能耗的產(chǎn)生,這也是嵌入式軟件能耗的本質(zhì)含義。先 前的許多研究表明,不同的匯編指令、源程序結(jié)構(gòu)、軟件算法和軟件體系結(jié)構(gòu)造成硬件不同 的工作方式,從而進(jìn)一步影響系統(tǒng)能耗。嵌入式系統(tǒng)能耗可分為硬件能耗和軟件能耗,軟件 能耗是指在軟件運(yùn)行期間,軟件驅(qū)動(dòng)直接相關(guān)硬件(包括處理器、存儲(chǔ)器和I/O控制器等) 活動(dòng)產(chǎn)生的能耗總和,其它的系統(tǒng)能耗一般歸為硬件能耗,如處理器在進(jìn)入空閑狀態(tài)前無(wú) 軟件指令執(zhí)行的一段間隔期和在空閑狀態(tài)下某些硬件單元保持上電狀態(tài)而產(chǎn)生的能耗以 及I/O控制器無(wú)軟件訪問時(shí)產(chǎn)生的能耗等。因此,將系統(tǒng)能耗明確劃分為軟件能耗和硬件 能耗,更便于直接觀察軟件實(shí)現(xiàn)方式(如數(shù)據(jù)結(jié)構(gòu)和算法)對(duì)系統(tǒng)能耗的影響程度。嵌入式軟件能耗的度量是開展嵌入式軟件能耗分析與優(yōu)化的基礎(chǔ)性工作。度量軟件能 耗最直接的方法是使用電子儀器(如功率計(jì))進(jìn)行測(cè)量,由于需要將軟件運(yùn)行在硬件平臺(tái)上進(jìn)行 測(cè)量,所以在硬件開發(fā)完成之前無(wú)法測(cè)量軟件能耗,使得軟件開發(fā)和硬件開發(fā)相互牽制。另一種 方法是采用能耗模擬器測(cè)量軟件能耗,通過計(jì)算機(jī)軟件模擬某一特定嵌入式硬件系統(tǒng),并采用能 耗統(tǒng)計(jì)模型,在軟件運(yùn)行的同時(shí)統(tǒng)計(jì)軟件能耗,可靈活、方便地獲得嵌入式軟件的能耗值。國(guó)際上對(duì)于嵌入式軟件能耗統(tǒng)計(jì)模型的研究歷史并不長(zhǎng),1994年Tiwari等人在 文中首先提出了對(duì)軟件能耗進(jìn)行分析的基本概念,建立了基本的指令級(jí)能耗模型,并提出 了指令電流的測(cè)試方法;Sinha測(cè)量了基于StrongARM SA-1100處理器的ARM指令集電 流值,提出了軟件能耗的統(tǒng)計(jì)方法;T. K. Tan在Sinha測(cè)得的指令電流值基礎(chǔ)上,構(gòu)建了 基于 StrongARMSA-IlOO 處理器的指令級(jí)能耗模擬器 EMSIM (Embedded StrongARM Energy Simulator),并采用EMSIM對(duì)嵌入式軟件能耗進(jìn)行了分析工作;Li Tao等提出了對(duì)操作系 統(tǒng)采用服務(wù)例程級(jí)功耗建模的思想,并具體分析了 Embedded Linux操作系統(tǒng)50種服務(wù)例 程的功耗-IPC關(guān)聯(lián)模型;趙霞等通過模擬運(yùn)行嵌入式操作系統(tǒng)和應(yīng)用軟件,利用微體系結(jié) 構(gòu)能耗模型估算單時(shí)鐘周期指令能耗,提出基于軟件功能結(jié)構(gòu)的操作系統(tǒng)內(nèi)核能耗估算模 型。在上述能耗統(tǒng)計(jì)模型中,主要統(tǒng)計(jì)了軟件執(zhí)行時(shí)在處理器上產(chǎn)生的單條指令能耗,不足 之處在于并未計(jì)算指令對(duì)、存儲(chǔ)器、I/O控制器等能耗。

發(fā)明內(nèi)容
本發(fā)明的目的在于提供了一種基于ARM處理器的嵌入式軟件能耗統(tǒng)計(jì)模型。本發(fā)明解決其技術(shù)難題所采用的技術(shù)方案的步驟如下1)根據(jù)嵌入式系統(tǒng)的硬件組成,嵌入式軟件能耗可分為處理器(MPU)能耗、存儲(chǔ)器能耗、I/O控制器能耗(如數(shù)據(jù)總線、UART控制器、IXD控制器、網(wǎng)卡控制器等)和其它硬 件單元產(chǎn)生的能耗,即 其中,Esoftware表示嵌入式軟件能耗,Empu表示處理器能耗,Effleffl表示存儲(chǔ)器能耗,Eio 表示I/O控制器能耗,E。thCT表示嵌入式系統(tǒng)主板上其它硬件單元的能耗,此部分能耗在軟 件執(zhí)行時(shí)能耗值一般較小,可忽略不計(jì);2)在步驟1)公式中的Empu按照如下公式進(jìn)行計(jì)算 其中,Einste為指令能耗(Instruction Energy Consumption),表示軟件 執(zhí)行時(shí)單條二進(jìn)制指令在MPU上產(chǎn)生的能耗,Einte為指令對(duì)能耗(或指令間能耗, Inter-Instruction EnergyConsumption),表示軟件執(zhí)行時(shí)相鄰指令間相互影響在MPU上 產(chǎn)生的額外能耗,Ii表示指令i執(zhí)行時(shí)MPU平均電流,Ni為執(zhí)行指令i所需的時(shí)鐘周期數(shù), Vmpu為MPU的工作電壓,fmpu為MPU的時(shí)鐘頻率,η為軟件的指令總條數(shù),Δ I^1表示指令i 和前一條指令i_l形成的平均指令對(duì)電流;3)在步驟2)公式中Δ I^1按照如下公式進(jìn)行計(jì)算Ai,η = Imeas-Iever = Imeas-(Ii X NJIH X NH)/(NJNH)其中,Imeas表示循環(huán)執(zhí)行一對(duì)指令時(shí)測(cè)得的MPU平均電流值,Iever表示一對(duì)指令的 電流分權(quán)平均值,Ii和Ih分別是指令i和i-Ι的電流值,Ni和Np1分別是指令i和i_l在 考慮流水線情況下運(yùn)行所需的MPU時(shí)鐘周期數(shù);4)在步驟1)公式中的Em按照如下公式進(jìn)行計(jì)算 其中,Iffleffl表示存儲(chǔ)器在有數(shù)據(jù)訪問時(shí)的平均電流值,Vm表示存儲(chǔ)器的工作電壓, fffleffl表示存儲(chǔ)器的時(shí)鐘頻率,Nffleffl表示MPU訪問存儲(chǔ)器總的時(shí)鐘周期數(shù);5)在步驟1)公式中的Eitj按照如下公式進(jìn)行計(jì)算Eio = Ebus+Euart+Elcd+Enet 其中,Ebus表示總線能耗,表示UART控制器能耗,Eled表示IXD控制器能耗,Enet 表示網(wǎng)卡控制器能耗。本發(fā)明與背景技術(shù)相比,具有的有益效果是1)精確性使用本發(fā)明中基于ARM處理器的嵌入式軟件能耗統(tǒng)計(jì)模型建立的軟件 能耗模擬器計(jì)算的能耗,與儀器實(shí)際測(cè)量結(jié)果相比,誤差在10%以內(nèi)。2)實(shí)用性可用于快速預(yù)測(cè)(或估算)嵌入式軟件在ARM處理器平臺(tái)上運(yùn)行時(shí)的 能耗值,為開展相應(yīng)的功耗優(yōu)化研究和開發(fā)工作打下堅(jiān)實(shí)的數(shù)據(jù)基礎(chǔ)。


具體實(shí)施例方式下面結(jié)合實(shí)例對(duì)本發(fā)明作進(jìn)一步的說明。
4
1)根據(jù)嵌入式系統(tǒng)的硬件組成,嵌入式軟件能耗可分為處理器(MPU)能耗、存儲(chǔ) 器能耗、I/O控制器能耗(如數(shù)據(jù)總線、UART控制器、IXD控制器、網(wǎng)卡控制器等)和其它硬 件單元產(chǎn)生的能耗,即
「0027 其中,Esoftware表示嵌入式軟件能耗,Empu表示處理器能耗,Effleffl表示存儲(chǔ)器能耗,Eio 表示I/O控制器能耗,E。thCT表示嵌入式系統(tǒng)主板上其它硬件單元的能耗,此部分能耗在軟 件執(zhí)行時(shí)能耗值一般較小,可忽略不計(jì);2)在步驟1)公式中的Empu按照如下公式進(jìn)行計(jì)算
其中,以當(dāng)前指令STR R0, [R1],上一條指令MOV Rl,RO為例,Einste為指令能耗 (Instruction Energy Consumption),表示軟件執(zhí)行時(shí)STR指令在MPU上產(chǎn)生的能耗,Einte 為指令對(duì)能耗(或指令間能耗,Inter-Instruction Energy Consumption),表示軟件執(zhí)行 時(shí)受上一條指令的執(zhí)行狀態(tài)影響當(dāng)前指令在MPU上執(zhí)行產(chǎn)生的額外能耗,Ii表示STR指令 執(zhí)行時(shí)MPU平均電流為43. 55mA, Ni為STR指令執(zhí)行所需的時(shí)鐘周期數(shù)為4個(gè),Vmpu為MPU 的工作電壓1. 788V,fmpu為MPU的時(shí)鐘頻率80MHz,η為軟件的指令總條數(shù),Δ Ii, 表示當(dāng) 前STRR0,[R1]指令和前一條指令MOV Rl, RO形成的平均指令對(duì)電流2. 568mA ;3)在步驟2)公式中Δ I^1的值按照如下公式進(jìn)行計(jì)算Ai, η = Imeas-Iever = Imeas-(Ii X NJIH X NH)/(NJNH)其中,Imeas表示循環(huán)執(zhí)行由MOV Rl, RO和STR R0, [R1]組成的執(zhí)行對(duì)測(cè)得的MPU 平均電流值44. 51mA, Ii和Ih分別是指令MOV和STR的電流值43. 55mA和41. 54mA, Iever 表示這對(duì)指令的電流分權(quán)平均值(43. 55*1+41. 54*4)/(1+4) = 41. 942mA, Ni和Ni^1分別是 指令MOV和STR在考慮流水線情況下運(yùn)行1個(gè)和4個(gè)MPU時(shí)鐘周期數(shù);4)在步驟1)公式中的Em按照如下公式進(jìn)行計(jì)算 其中,Im表示存儲(chǔ)器在有數(shù)據(jù)訪問時(shí)的平均電流值,Vm表示存儲(chǔ)器的工作電壓, fffleffl表示存儲(chǔ)器的時(shí)鐘頻率,Nffleffl表示MPU訪問存儲(chǔ)器總的時(shí)鐘周期數(shù);5)在步驟1)公式中的Eitj按照如下公式進(jìn)行計(jì)算Eio = Ebus+Euart+Elcd+Enet其中,Ebus表示總線能耗,表示UART控制器能耗,Eled表示IXD控制器能耗,Enet 表示網(wǎng)卡控制器能耗。1/0的能耗按照下面的通用公式進(jìn)行計(jì)算
權(quán)利要求
一種基于ARM處理器的嵌入式軟件能耗統(tǒng)計(jì)模型,其特征在于建立該模型的步驟如下1)根據(jù)嵌入式系統(tǒng)的硬件組成,嵌入式軟件能耗可分為處理器(MPU)能耗、存儲(chǔ)器能耗、I/O控制器能耗(如數(shù)據(jù)總線、UART控制器、LCD控制器、網(wǎng)卡控制器等)和其它硬件單元產(chǎn)生的能耗,即Esoftware=Empu+Emem+Eio+Eother其中,Esoftware表示嵌入式軟件能耗,Empu表示處理器能耗,Emem表示存儲(chǔ)器能耗,Eio表示I/O控制器能耗,Eother表示嵌入式系統(tǒng)主板上其它硬件單元的能耗,此部分能耗在軟件執(zhí)行時(shí)能耗值一般較小,可忽略不計(jì);2)在步驟1)公式中的Empu按照如下公式進(jìn)行計(jì)算 <mrow><msub> <mi>E</mi> <mi>mpu</mi></msub><mo>=</mo><msub> <mi>E</mi> <mi>instr</mi></msub><mo>+</mo><msub> <mi>E</mi> <mi>inter</mi></msub><mo>=</mo><munderover> <mi>&Sigma;</mi> <mrow><mi>i</mi><mo>=</mo><mn>1</mn> </mrow> <mrow><mi>i</mi><mo>=</mo><mi>n</mi> </mrow></munderover><mfrac> <mrow><msub> <mi>I</mi> <mi>i</mi></msub><mo>&times;</mo><msub> <mi>N</mi> <mi>i</mi></msub><mo>&times;</mo><msub> <mi>V</mi> <mi>mpu</mi></msub> </mrow> <msub><mi>f</mi><mi>mpu</mi> </msub></mfrac><mo>+</mo><munderover> <mi>&Sigma;</mi> <mrow><mi>i</mi><mo>=</mo><mn>2</mn> </mrow> <mrow><mi>i</mi><mo>=</mo><mi>n</mi> </mrow></munderover><mfrac> <mrow><mi>&Delta;</mi><msub> <mi>I</mi> <mrow><mi>i</mi><mo>,</mo><mi>i</mi><mo>-</mo><mn>1</mn> </mrow></msub><mo>&times;</mo><msub> <mi>N</mi> <mi>i</mi></msub><mo>&times;</mo><msub> <mi>V</mi> <mi>mpu</mi></msub> </mrow> <msub><mi>f</mi><mi>mpu</mi> </msub></mfrac> </mrow>其中,Einstr為指令能耗(Instruction Energy Consumption),表示軟件執(zhí)行時(shí)單條二進(jìn)制指令在MPU上產(chǎn)生的能耗,Einter為指令對(duì)能耗(或指令間能耗,Inter Instruction EnergyConsumption),表示軟件執(zhí)行時(shí)相鄰指令間相互影響在MPU上產(chǎn)生的額外能耗,Ii表示指令i執(zhí)行時(shí)MPU平均電流,Ni為執(zhí)行指令i所需的時(shí)鐘周期數(shù),Vmpu為MPU的工作電壓,fmpu為MPU的時(shí)鐘頻率,n為軟件的指令總條數(shù),ΔIi,i 1表示指令i和前一條指令i 1形成的平均指令對(duì)電流;3)在步驟2)公式中ΔIi,i 1按照如下公式進(jìn)行計(jì)算Δi,i 1=Imeas Iever=Imeas (Ii×Ni+Ii 1×Ni 1)/(Ni+Ni 1)其中,Imeas表示循環(huán)執(zhí)行一對(duì)指令時(shí)測(cè)得的MPU平均電流值,Iever表示一對(duì)指令的電流分權(quán)平均值,Ii和Ii 1分別是指令i和i 1的電流值,Ni和Ni 1分別是指令i和i 1在考慮流水線情況下運(yùn)行所需的MPU時(shí)鐘周期數(shù);4)在步驟1)公式中的Emem按照如下公式進(jìn)行計(jì)算 <mrow><msub> <mi>E</mi> <mi>mem</mi></msub><mo>=</mo><mfrac> <mrow><msub> <mi>I</mi> <mi>mem</mi></msub><mo>&times;</mo><msub> <mi>V</mi> <mi>mem</mi></msub><mo>&times;</mo><msub> <mi>N</mi> <mi>mem</mi></msub> </mrow> <msub><mi>f</mi><mi>mem</mi> </msub></mfrac> </mrow>其中,Imem表示存儲(chǔ)器在有數(shù)據(jù)訪問時(shí)的平均電流值,Vmem表示存儲(chǔ)器的工作電壓,fmem表示存儲(chǔ)器的時(shí)鐘頻率,Nmem表示MPU訪問存儲(chǔ)器總的時(shí)鐘周期數(shù);5)在步驟1)公式中的Eio按照如下公式進(jìn)行計(jì)算Eio=Ebus+Euart+Elcd+Enet其中,Ebus表示總線能耗,Euart表示UART控制器能耗,Elcd表示LCD控制器能耗,Enet表示網(wǎng)卡控制器能耗。
全文摘要
本發(fā)明公布了一種基于ARM處理器的嵌入式軟件能耗統(tǒng)計(jì)模型。提供了一種新的模型和技術(shù)用于測(cè)量軟件功耗,為相應(yīng)的功耗優(yōu)化研究和開發(fā)工作提供數(shù)據(jù)基礎(chǔ)。本發(fā)明提出的嵌入式軟件能耗統(tǒng)計(jì)模型包括處理器、存儲(chǔ)器和I/O控制器等硬件單元的能耗,并根據(jù)ARM指令集指令周期的規(guī)律設(shè)計(jì)了相應(yīng)指令周期數(shù)的計(jì)算方案。將本發(fā)明應(yīng)用到高精度指令級(jí)嵌入式軟件能耗模擬器HMSim中后,實(shí)驗(yàn)結(jié)果表明,該模型的能耗計(jì)算結(jié)果與實(shí)際儀器測(cè)量結(jié)果的誤差在10%以內(nèi),可準(zhǔn)確地反映軟件實(shí)現(xiàn)方式對(duì)系統(tǒng)能耗的影響程度。
文檔編號(hào)G06F11/36GK101894067SQ201010191808
公開日2010年11月24日 申請(qǐng)日期2010年6月4日 優(yōu)先權(quán)日2010年6月4日
發(fā)明者任磊, 伍元?jiǎng)? 朱建, 沈艷, 王繼禾, 鄧勤林, 郭兵 申請(qǐng)人:四川大學(xué)
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1