欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

一種軟硬件協(xié)調(diào)處理的局部動(dòng)態(tài)可重構(gòu)系統(tǒng)能量管理方法

文檔序號(hào):6600714閱讀:144來(lái)源:國(guó)知局
專(zhuān)利名稱(chēng):一種軟硬件協(xié)調(diào)處理的局部動(dòng)態(tài)可重構(gòu)系統(tǒng)能量管理方法
技術(shù)領(lǐng)域
本發(fā)明屬于嵌入式系統(tǒng)領(lǐng)域,涉及現(xiàn)場(chǎng)可編程門(mén)陣列局部動(dòng)態(tài)可重構(gòu)系統(tǒng),具體 涉及是一種軟硬件協(xié)調(diào)處理的局部動(dòng)態(tài)可重構(gòu)系統(tǒng)的能量管理方法。
背景技術(shù)
隨著FPGA可重構(gòu)技術(shù)的出現(xiàn),大大改變了傳統(tǒng)的嵌入式設(shè)計(jì)的方法,可重構(gòu)計(jì)算 作為一種新型時(shí)空域的計(jì)算模式,在嵌入式和高性能的計(jì)算領(lǐng)域具有廣泛地應(yīng)用前景,已 經(jīng)成為當(dāng)前嵌入式系統(tǒng)發(fā)展的趨勢(shì)。局部動(dòng)態(tài)可重構(gòu)技術(shù)的發(fā)展,代表了一種新的可重構(gòu) 設(shè)計(jì)思想,大多由微處理器與可重構(gòu)硬件構(gòu)成,可重構(gòu)硬件可以采用FPGA的細(xì)粒度邏輯單 元,也可以是特定功能的粗粒度模塊,使得硬件功能的執(zhí)行更加靈活,軟硬件之間的鴻溝越 發(fā)的不明顯,硬件任務(wù)可以根據(jù)需求像軟件任務(wù)一樣靈活的調(diào)用和配置。但局部動(dòng)態(tài)可重 構(gòu)系統(tǒng)如何利用軟硬件協(xié)調(diào)運(yùn)行處理來(lái)提高系統(tǒng)的能量利用已經(jīng)成為了制約可重構(gòu)技術(shù) 發(fā)展的一個(gè)因素。由于可重構(gòu)硬件只適合執(zhí)行應(yīng)用中控制相對(duì)簡(jiǎn)單、數(shù)據(jù)訪問(wèn)比較規(guī)范、計(jì)算量相 對(duì)較大的計(jì)算密集型的任務(wù),雖然執(zhí)行時(shí)間短,但增加額外FPGA硬件資源的功耗開(kāi)銷(xiāo)以及 重配置的功耗開(kāi)銷(xiāo),可能會(huì)增加整個(gè)系統(tǒng)的能量開(kāi)銷(xiāo);但在實(shí)際應(yīng)用中也存在著一些控制 相對(duì)復(fù)雜、計(jì)算量相對(duì)簡(jiǎn)單、硬件無(wú)法綜合的計(jì)算任務(wù)以及可重構(gòu)硬件的配置功能,如果單 獨(dú)用專(zhuān)用處理器執(zhí)行,雖然節(jié)約了額外FPGA硬件資源的功耗開(kāi)銷(xiāo),但執(zhí)行時(shí)間大大增加, 也會(huì)增加整個(gè)系統(tǒng)的能量開(kāi)銷(xiāo)。CPU+FPGA的混合計(jì)算結(jié)構(gòu),因兼具集成電路的高性能和通 用處理器的高靈活性,為局部動(dòng)態(tài)部分可重構(gòu)系統(tǒng)的實(shí)現(xiàn)能量有效提供了可能。由于硬件資源利用和系統(tǒng)處理時(shí)間是決定可重構(gòu)系統(tǒng)功耗的主要因素,由上所述 可重構(gòu)硬件和微處理器在執(zhí)行不同的計(jì)算任務(wù)上存在著各自的缺點(diǎn)和優(yōu)點(diǎn),如果沒(méi)有局部 可重構(gòu)技術(shù)和軟硬件協(xié)調(diào)運(yùn)行的有效能量管理方法無(wú)法將各自的優(yōu)點(diǎn)結(jié)合起來(lái)使用,會(huì)使 動(dòng)態(tài)部分可重構(gòu)系統(tǒng)的功耗顯著地增加。

發(fā)明內(nèi)容
本發(fā)明的目的是針對(duì)上述問(wèn)題,提供一種軟硬件協(xié)調(diào)處理的局部動(dòng)態(tài)可重構(gòu)系統(tǒng) 的能量管理方法。一種軟硬件協(xié)調(diào)處理的局部動(dòng)態(tài)可重構(gòu)系統(tǒng),在至少有一個(gè)內(nèi)嵌微處理 器所構(gòu)成的可重構(gòu)芯片上,局部動(dòng)態(tài)可重構(gòu)系統(tǒng)可執(zhí)行和配置多個(gè)不同功能硬件任務(wù)(硬 件配置流任務(wù)存儲(chǔ)在外部存儲(chǔ)器中),不同的硬件配置任務(wù)具有不同的配置時(shí)間、不同的資 源利用、不同的處理時(shí)間,因此各自都具有不同功耗。通常一個(gè)特定的應(yīng)用可分解成若干個(gè) 任務(wù)來(lái)執(zhí)行,這些任務(wù)可以軟件執(zhí)行也可以硬件執(zhí)行,利用軟件和硬件劃分的協(xié)調(diào)處理實(shí) 現(xiàn)對(duì)能量的有效管理,是一種降低嵌入式系統(tǒng)的整體能量方法。為了達(dá)到以上所述的目的,本發(fā)明解決其技術(shù)問(wèn)題所采用的關(guān)鍵點(diǎn)在局部動(dòng)態(tài) 可重構(gòu)系統(tǒng)的運(yùn)行過(guò)程中利用軟硬件協(xié)調(diào)調(diào)度和處理對(duì)嵌入式系統(tǒng)的能量進(jìn)行有效管理, 即目的是為了降低可重構(gòu)嵌入式系統(tǒng)的能量開(kāi)銷(xiāo)。微處理器控制硬件任務(wù)的配置裝置,也可以運(yùn)行與硬件任務(wù)功能相同的軟件任務(wù),即軟件任務(wù)在CPU上運(yùn)行,硬件任務(wù)利用FPGA 硬件資源處理。軟硬件任務(wù)選擇處理是根據(jù)應(yīng)用中待處理任務(wù)的能量決定,調(diào)度裝置利用 ICAP(內(nèi)部配置接口 )可以選擇將這些硬件配置任務(wù)局部配置到可重構(gòu)芯片的局部可重構(gòu) 區(qū)(PRR),硬件任務(wù)完成后就自動(dòng)釋放該區(qū)域的硬件資源。所述的硬件配置任務(wù)的時(shí)間用硬件任務(wù)資源來(lái)衡量,而配置功耗并入硬件任務(wù)運(yùn) 行功耗。所述的局部動(dòng)態(tài)可重構(gòu)系統(tǒng)的一個(gè)應(yīng)用中的所有任務(wù)可以通過(guò)微處理器的軟件 任務(wù)處理也可以通過(guò)局部動(dòng)態(tài)配置用FPGA的硬件資源來(lái)處理,軟件任務(wù)和硬件任務(wù)可并 行執(zhí)行,且PRR進(jìn)行配置時(shí),對(duì)其他正在運(yùn)行的功能沒(méi)有影響;整個(gè)系統(tǒng)的運(yùn)行頻率f保持 不變。所述的軟硬件協(xié)調(diào)控制的局部動(dòng)態(tài)可重構(gòu)系統(tǒng)能量管理方法,是在具備支持局部 動(dòng)態(tài)可重構(gòu)芯片上實(shí)現(xiàn)的,可提供多個(gè)配置區(qū)域。所述的硬件配置任務(wù)具有不同的配置時(shí)間、資源利用以及硬件處理時(shí)間,從而具 有不同的能量消耗。所述的軟硬件任務(wù)在啟動(dòng)運(yùn)行時(shí),軟件任務(wù)不在完成之前被終止,硬件任務(wù)不能 在配置完成前被終止,采用非搶占調(diào)度。所述的微處理器不僅能用軟件實(shí)現(xiàn)軟件任務(wù)的功能,也可用軟件調(diào)度和選擇硬件 配置任務(wù)。本發(fā)明方法的具體步驟如下步驟(1)對(duì)應(yīng)用按功能模塊進(jìn)行任務(wù)劃分,形成Ri、R2、R3……Rn共計(jì)n個(gè)劃分,各 個(gè)劃分實(shí)現(xiàn)不同的功能。步驟(2)對(duì)n個(gè)劃分Ri、R2、R3……Rn建立軟件任務(wù)和硬件任務(wù),氏對(duì)應(yīng)的軟件任 務(wù)和硬件任務(wù)具有相同的實(shí)現(xiàn)功能,但處理所需的能量開(kāi)銷(xiāo)不一樣。軟件任務(wù)記為T(mén)s1、Ts2、Ts3……Tsn;硬件任務(wù)記為T(mén)hl、T h2、Th3......T^hn ;步驟(3)獲取軟件、硬件任務(wù)處理的功耗(單位時(shí)間內(nèi)的能量消耗)、軟件、硬件任 務(wù)處理的時(shí)間及硬件任務(wù)配置時(shí)間。1.獲取軟件任務(wù)處理的功耗,軟件任務(wù)處理的功耗由CPU運(yùn)行時(shí)的功耗Pm和系統(tǒng) 的靜態(tài)功耗ps組成(ps定義為功耗單元,是確定的,由底層FPGA工藝等決定)。2.獲取各硬件任務(wù)處理功耗Phl、Ph2、Ph3……Pta;PhiS義了處理任務(wù)Thi的局部配 置區(qū)的功耗。3.獲取各硬件任務(wù)的配置時(shí)間、^、^、……t。n;4.獲取各硬件任務(wù)處理時(shí)間thwl、thw2、thw3……thm ;5.獲取軟件任務(wù)處理時(shí)間tswl、tsw2、tsw3……tsm ;步驟(4)對(duì)禮、R2、R3……Rn根據(jù)局部能量最優(yōu)原則來(lái)選擇軟件和硬件任務(wù)。所述的局部能量最優(yōu)原則為如果(Pm+Ps) X tswi彡(Phi+Ps) X (tci+thwi),選擇硬件 任務(wù)Thi來(lái)處理氏劃分。如果(Pffl+Ps) X tswi < (Phi+Ps) X (tci+thwi),選擇軟件任務(wù)Tsi來(lái)處 理氏劃分,其中1 < i < n。步驟(5)根據(jù)任務(wù)之間關(guān)系約束構(gòu)建應(yīng)用的有向無(wú)環(huán)圖(DAG),該有向無(wú)環(huán)圖有一個(gè)入口任務(wù)。任務(wù)之間關(guān)系約束為G,G= (TpEu),其中Ti為劃分的軟件任務(wù)或硬件任 務(wù),Eij為有向無(wú)環(huán)圖中Ti到&的邊,Ti又記為&直接前驅(qū)任務(wù),Tj記為T(mén)i直接后繼任務(wù);步驟(6)計(jì)算任務(wù)優(yōu)先級(jí)。計(jì)算規(guī)則為一、包含Ti路徑的所有前驅(qū)任務(wù)處理完 畢后,才將Ti放入就緒列表中,等待調(diào)度;二、軟件任務(wù)和硬件任務(wù)按硬件任務(wù)優(yōu)先原則調(diào) 度就緒列表中任務(wù);三、硬件任務(wù)之間按執(zhí)行時(shí)間長(zhǎng)的優(yōu)先調(diào)度和退避原則。步驟(7)協(xié)調(diào)處理軟件和硬件任務(wù),具體方法為
a、初始化動(dòng)態(tài)部分可重構(gòu)夠系統(tǒng),調(diào)用步驟(4);b、調(diào)用步驟(5),執(zhí)行入口任務(wù);C、更新任務(wù)就緒列表中任務(wù)的優(yōu)先級(jí),來(lái)維護(hù)就緒的任務(wù);d、檢查當(dāng)前微處理器是否空閑,如果當(dāng)前微處理器為空閑,則執(zhí)行步驟e ;否則繼 續(xù)執(zhí)行本步驟;e、調(diào)用步驟(6),調(diào)度并執(zhí)行就緒表中優(yōu)先級(jí)最高的任務(wù)Ti,從就緒表中刪除Ti ;f、如果步驟e中Ti是硬件任務(wù)Thi,則判斷當(dāng)前PRR區(qū)硬件資源是否正在運(yùn)行,如 果當(dāng)前PRR區(qū)硬件資源正在運(yùn)行,則從就緒表中添加Ti跳轉(zhuǎn)至步驟c,否則配置硬件資源配 置;然后執(zhí)行步驟h;g、如果步驟5中Ti是軟件任務(wù)Tsi,則處理軟件任務(wù)Tsi ;處理完畢后執(zhí)行步驟h ;h、判斷是否加載后續(xù)任務(wù)到就緒列表①Ti有直接后繼任務(wù),則加載直接后繼任務(wù)到就緒列表中,跳轉(zhuǎn)至步驟c ;②Ti無(wú) 直接后繼任務(wù),執(zhí)行步驟i ;i.判斷就緒表是否為空①就緒列表不為空,跳轉(zhuǎn)至步驟d ;②就緒列表為空,執(zhí)行步驟j ;j.應(yīng)用的所有任務(wù)處理完畢。本發(fā)明中硬件任務(wù)之間可以并行執(zhí)行,硬件任務(wù)和軟件任務(wù)中也能并行執(zhí)行(硬 件配置時(shí)間例外),而軟件任務(wù)之間不能夠并行執(zhí)行。利用了就緒列表中任務(wù)優(yōu)先級(jí)在線(xiàn)重 新計(jì)算的方法。利用本發(fā)明方法可將在動(dòng)態(tài)部分可重構(gòu)系統(tǒng)上運(yùn)行的包含多個(gè)任務(wù)的應(yīng)用實(shí)例 實(shí)現(xiàn)能量的有效管理,從而使動(dòng)態(tài)部分可重構(gòu)系統(tǒng)處理應(yīng)用實(shí)例降低能量的開(kāi)銷(xiāo)。適用于 可重構(gòu)平臺(tái)中處理復(fù)雜度變化明顯的算法,數(shù)據(jù)處理,視頻及圖像處理等應(yīng)用領(lǐng)域,是針對(duì) 結(jié)合FPGA中額外硬件資源功耗和處理時(shí)間開(kāi)銷(xiāo),采用軟硬件協(xié)調(diào)運(yùn)行的方式來(lái)實(shí)現(xiàn)局部 動(dòng)態(tài)可重構(gòu)系統(tǒng)的能量有效管理方法,實(shí)現(xiàn)整體的能量近似最優(yōu)。


圖1局部動(dòng)態(tài)可重構(gòu)系統(tǒng)中軟硬件任務(wù)及任務(wù)放置示意圖;圖2應(yīng)用實(shí)施例中劃分所對(duì)應(yīng)的軟硬件任務(wù)的相關(guān)功耗和時(shí)間示意圖;圖3軟硬件任務(wù)選擇及任務(wù)間關(guān)系約束圖;圖4任務(wù)運(yùn)行及就緒列表更新圖;圖5軟硬件協(xié)調(diào)處理流程圖;圖6應(yīng)用實(shí)例的任務(wù)調(diào)度示意圖7能量消耗對(duì)比圖。
具體實(shí)施例方式本發(fā)明方法是結(jié)合FPGA的可重構(gòu)技術(shù)和軟硬件協(xié)調(diào)處理的思想提出的。旨在局 部動(dòng)態(tài)可重構(gòu)系統(tǒng)的運(yùn)行過(guò)程中利用軟硬件協(xié)調(diào)調(diào)度和處理嵌入式系統(tǒng)的能量有效性,即 目的是為了降低可重構(gòu)嵌入式系統(tǒng)的能量開(kāi)銷(xiāo)。在本實(shí)施例中通過(guò)對(duì)給定的應(yīng)用進(jìn)行軟 硬件處理功能的劃分,將軟件任務(wù)存儲(chǔ)在內(nèi)部存儲(chǔ)器上,將硬件任務(wù)存儲(chǔ)在外部存儲(chǔ)器上 (例如CF卡),利用任務(wù)處理局部能量最優(yōu)的調(diào)度指示來(lái)選擇軟件處理或硬件處理。硬件 任務(wù)配置存儲(chǔ)通過(guò)內(nèi)部配置接口來(lái)載入到FPFA相應(yīng)的區(qū)域中。實(shí)施例的具體實(shí)施方法一、在本實(shí)施例中將給定的一個(gè)應(yīng)用劃分為四個(gè)不同功能模塊禮、1 2、1 3、1 4 ;各劃 分模塊對(duì)應(yīng)的功能可以用軟件任務(wù)處理,也可以用硬件任務(wù)來(lái)處理。二、為本實(shí)施例中的劃分建立相應(yīng)的軟件任務(wù)和硬件任務(wù),如圖1所示,對(duì)于同 一個(gè)劃分的軟件任務(wù)和硬件任務(wù)具有相同的處理功能,軟件任務(wù)通過(guò)調(diào)度用微處理器來(lái) 處理,而硬件任務(wù)配置資源是存放在外部存儲(chǔ)器上的,通過(guò)硬件任務(wù)加載器(內(nèi)部配置接 口),配置到對(duì)應(yīng)FPGA芯片上PRR區(qū)域,利用FPGA硬件資源來(lái)處理。三、獲取實(shí)施例中給定應(yīng)用的軟硬件處理任務(wù)的功耗(單位時(shí)間內(nèi)的能量消 耗)、軟硬件任務(wù)的處理時(shí)間及硬件任務(wù)配置時(shí)間。通過(guò)XILINX公司的ISE、EDK、Xpore、 Chipscope工具獲取每個(gè)軟硬件任務(wù)處理時(shí)間、處理功耗以及硬件配置時(shí)間。如圖2所示, 不同任務(wù)所需要的處理時(shí)間和功耗不同,硬件任務(wù)還需要額外的配置時(shí)間,其中Pw為軟硬 件處理相應(yīng)功能的功耗,tw為軟硬件處理相應(yīng)功能的時(shí)間,t。為硬件任務(wù)的配置時(shí)間,Ps為 靜態(tài)功耗(由器件工藝決定),定義其為單位功耗。四、對(duì)給定的應(yīng)用實(shí)施例的劃分禮、R2、R3、R4,根據(jù)局部能量最優(yōu)原則來(lái)選擇軟硬 件任務(wù)。如圖3為軟硬件任務(wù)選擇及任務(wù)間關(guān)系約束圖所示,劃分禮選擇軟件處理,劃分 R3選擇軟件處理,劃分R2選擇硬件處理,劃分R4選擇硬件處理。任務(wù)之間關(guān)系約束在給定 的應(yīng)用確認(rèn)后已經(jīng)確定,一個(gè)任務(wù)必須在所有前驅(qū)任務(wù)處理后,才能被放入就緒表中,任務(wù) 之間層次關(guān)系和前后任務(wù)關(guān)系在應(yīng)用設(shè)計(jì)和選擇時(shí)已經(jīng)確立。五、任務(wù)優(yōu)先級(jí)的計(jì)算。包含路徑的所有前驅(qū)任務(wù)處理完后,T,才被放入就緒 列表中,等待調(diào)度;就緒列表中任務(wù)優(yōu)先級(jí)按硬件任務(wù)優(yōu)先原則調(diào)度;硬件任務(wù)之間按執(zhí) 行時(shí)間長(zhǎng)的優(yōu)先調(diào)度和退避原則,在每次任務(wù)調(diào)度前都對(duì)存放在就緒表里的就緒的軟件任 務(wù)和硬件任務(wù)進(jìn)行更新和相應(yīng)任務(wù)的優(yōu)先級(jí)更新。如圖4所示為給定的實(shí)施例就緒表的更 新,就緒表中增加的任務(wù)及其更新的優(yōu)先級(jí),其任務(wù)調(diào)度順序?yàn)門(mén)S1 — Th4 — Th2 — Ts3。六、軟硬件任務(wù)協(xié)調(diào)處理方法如圖5所示。a、初始化動(dòng)態(tài)部分可重構(gòu)夠系統(tǒng),調(diào)用步驟四;b、調(diào)用步驟五,調(diào)度處理入口任務(wù);c、更新任務(wù)就緒列表RDYList中任務(wù)的優(yōu)先級(jí),來(lái)維護(hù)就緒的任務(wù),任務(wù)只就緒 而未分配;d、檢查當(dāng)前微處理器是否空閑①如果是執(zhí)行步驟e ;
7
②如果否重復(fù)執(zhí)行本步驟d ;e、調(diào)用步驟五,調(diào)度執(zhí)行就緒表RDYList中優(yōu)先級(jí)最高的任務(wù)Ti且在任務(wù)就緒列 表RDYList刪除最高的任務(wù)Ti ;
f、如果步驟e中Ti是硬件任務(wù)Thi ①如果當(dāng)前PRR區(qū)硬件資源正在運(yùn)行,任務(wù)就緒列表RDYList增加任務(wù)Ti返回c, 否則執(zhí)行以下②;②硬件資源配置;②配置完成,執(zhí)行步驟h ;g、如果步驟5中Ti是軟件任務(wù)Tsi ①處理軟件任務(wù)Tsi;②執(zhí)行完畢,執(zhí)行步驟h ;h、是否加載后續(xù)任務(wù)到就緒列表①Ti有直接后繼任務(wù),加載到就緒列表中,返回步驟c ;②Ti無(wú)直接后繼任務(wù),執(zhí)行步驟i ;i、判斷就緒表是否為空①就緒列表不為空,返回任務(wù)d ;②就緒列表為空,執(zhí)行步驟j ;j、應(yīng)用的所有任務(wù)處理完畢。針對(duì)上述對(duì)給定實(shí)施例的實(shí)施方法,本發(fā)明方法中硬件任務(wù)之間可以并行執(zhí)行, 硬件任務(wù)和軟件任務(wù)中也能并行執(zhí)行(硬件配置時(shí)間間隙例外),而軟件任務(wù)之間不能夠 真正意義上的并行執(zhí)行。利用了就緒列表中任務(wù)優(yōu)先級(jí)在線(xiàn)重新計(jì)算的方法。圖6所示為 并行任務(wù)執(zhí)行在時(shí)間片的示意圖,在同個(gè)時(shí)間片上同時(shí)執(zhí)行多個(gè)任務(wù)對(duì)系統(tǒng)的靜態(tài)功耗減 少是有利的。如圖6中時(shí)間片25-30和30-35反映了軟件任務(wù)和硬件任務(wù)的并行執(zhí)行任務(wù)。利用本發(fā)明方法可將在動(dòng)態(tài)部分可重構(gòu)系統(tǒng)上運(yùn)行的包含多個(gè)任務(wù)的應(yīng)用實(shí)例 實(shí)現(xiàn)能量的有效管理,從而使動(dòng)態(tài)部分可重構(gòu)系統(tǒng)處理應(yīng)用實(shí)例降低能量的開(kāi)銷(xiāo)。采用軟 硬件協(xié)調(diào)運(yùn)行的方式來(lái)實(shí)現(xiàn)局部動(dòng)態(tài)可重構(gòu)系統(tǒng)的能量管理方法,實(shí)現(xiàn)整體的能量近似最 優(yōu)。可以驗(yàn)證得到對(duì)給定的應(yīng)用實(shí)例采用軟硬件任務(wù)協(xié)調(diào)處理的實(shí)施方法可以減少整個(gè)應(yīng) 用的能量開(kāi)銷(xiāo),如圖7所示是軟硬件任務(wù)協(xié)調(diào)處理的管理方法與傳統(tǒng)的基于單獨(dú)硬件或軟 件處理方法的比較,表明軟硬件任務(wù)協(xié)調(diào)處理的管理方法處理整個(gè)應(yīng)用實(shí)例的能量開(kāi)銷(xiāo)減 少。對(duì)于給定的應(yīng)用實(shí)例,相比于硬件單獨(dú)處理減少了能耗75,相對(duì)于軟件單獨(dú)處理減少了 能耗51。
權(quán)利要求
一種軟硬件協(xié)調(diào)處理的局部動(dòng)態(tài)可重構(gòu)系統(tǒng)能量管理方法,其特征在于該方法包括如下步驟步驟(1)對(duì)應(yīng)用按功能模塊進(jìn)行任務(wù)劃分,形成R1、R2、R3……Rn共計(jì)n個(gè)劃分,各個(gè)劃分實(shí)現(xiàn)不同的功能;步驟(2)對(duì)n個(gè)劃分R1、R2、R3……Rn建立軟件任務(wù)和硬件任務(wù),Ri對(duì)應(yīng)的軟件任務(wù)和硬件任務(wù)具有相同的實(shí)現(xiàn)功能,但處理所需的能量開(kāi)銷(xiāo)不一樣;軟件任務(wù)記為T(mén)s1、Ts2、Ts3……Tsn;硬件任務(wù)記為T(mén)h1、Th2、Th3……Thn;步驟(3)獲取軟件、硬件任務(wù)處理的功耗、軟件、硬件任務(wù)處理的時(shí)間及硬件任務(wù)配置時(shí)間;1.獲取軟件任務(wù)處理的功耗,軟件任務(wù)處理的功耗由CPU運(yùn)行時(shí)的功耗Pm和系統(tǒng)的靜態(tài)功耗Ps組成;2.獲取各硬件任務(wù)處理功耗Ph1、Ph2、Ph3……Phn;Phi定義了處理任務(wù)Thi的局部配置區(qū)的功耗;3.獲取各硬件任務(wù)的配置時(shí)間tc1、tc2、tc3……tcn;4.獲取各硬件任務(wù)處理時(shí)間thw1、thw2、thw3……thwn;5.獲取軟件任務(wù)處理時(shí)間tsw1、tsw2、tsw3……ttsn;步驟(4)對(duì)R1、R2、R3……Rn根據(jù)局部能量最優(yōu)原則來(lái)選擇軟件和硬件任務(wù);所述的局部能量最優(yōu)原則為如果(Pm+Ps)×tswi≥(Phi+Ps)×(tci+thwi),選擇硬件任務(wù)Thi來(lái)處理Ri劃分;如果(Pm+Ps)×tswi<(Phi+Ps)×(tci+thwi),選擇軟件任務(wù)Tsi來(lái)處理Ri劃分,其中1≤i≤n;步驟(5)根據(jù)任務(wù)之間關(guān)系約束構(gòu)建應(yīng)用的有向無(wú)環(huán)圖,該有向無(wú)環(huán)圖有一個(gè)入口任務(wù);任務(wù)之間關(guān)系約束為G,G=(Ti,Eij),其中Ti為劃分的軟件任務(wù)或硬件任務(wù),Eij為有向無(wú)環(huán)圖中Ti到Tj的邊,Ti又記為T(mén)j直接前驅(qū)任務(wù),Tj記為T(mén)i直接后繼任務(wù);步驟(6)計(jì)算任務(wù)優(yōu)先級(jí);計(jì)算規(guī)則為①包含Ti路徑的所有前驅(qū)任務(wù)處理完畢后,才將Ti放入就緒列表中,等待調(diào)度;②軟件任務(wù)和硬件任務(wù)按硬件任務(wù)優(yōu)先原則調(diào)度就緒列表中任務(wù);③硬件任務(wù)之間按執(zhí)行時(shí)間長(zhǎng)的優(yōu)先調(diào)度和退避原則;步驟(7)協(xié)調(diào)處理軟件和硬件任務(wù),具體方法為a.初始化動(dòng)態(tài)部分可重構(gòu)夠系統(tǒng),調(diào)用步驟(4);b.調(diào)用步驟(5),執(zhí)行入口任務(wù);c.更新任務(wù)就緒列表中任務(wù)的優(yōu)先級(jí),來(lái)維護(hù)就緒的任務(wù);d.檢查當(dāng)前微處理器是否空閑,如果當(dāng)前微處理器為空閑,則執(zhí)行步驟e;如果當(dāng)前微處理器為忙碌,則繼續(xù)執(zhí)行本步驟;e.調(diào)用步驟(6),調(diào)度并執(zhí)行就緒表中優(yōu)先級(jí)最高的任務(wù),然后從就緒表中刪除該任務(wù);f.如果步驟e中優(yōu)先級(jí)最高的任務(wù)是硬件任務(wù)Thi,則判斷當(dāng)前PRR區(qū)硬件資源是否正在運(yùn)行,如果當(dāng)前PRR區(qū)硬件資源正在運(yùn)行,則從就緒表中添加Ti跳轉(zhuǎn)至步驟c,否則配置硬件資源配置;然后執(zhí)行步驟h;g.如果步驟(5)中優(yōu)先級(jí)最高的任務(wù)是軟件任務(wù)Tsi,則處理軟件任務(wù)Tsi;處理完畢后執(zhí)行步驟h;h.判斷是否加載后續(xù)任務(wù)到就緒列表Ti有直接后繼任務(wù),則加載直接后繼任務(wù)到就緒列表中,跳轉(zhuǎn)至步驟c;Ti無(wú)直接后繼任務(wù),執(zhí)行步驟i;i.判斷就緒表是否為空就緒列表不為空,跳轉(zhuǎn)至步驟d;就緒列表為空,執(zhí)行步驟j;j.應(yīng)用的所有任務(wù)處理完畢。
全文摘要
本發(fā)明涉及一種軟硬件協(xié)調(diào)處理的局部動(dòng)態(tài)可重構(gòu)系統(tǒng)能量管理方法?,F(xiàn)有的可重構(gòu)系統(tǒng)能效比較大。本發(fā)明方法首先對(duì)應(yīng)用按功能模塊進(jìn)行任務(wù)劃分,并建立相應(yīng)的建立軟件任務(wù)和硬件任務(wù);其次獲取軟件、硬件任務(wù)處理的功耗、軟件、硬件任務(wù)處理的時(shí)間及硬件任務(wù)配置時(shí)間,根據(jù)局部能量最優(yōu)原則來(lái)選擇軟件和硬件任務(wù);然后根據(jù)任務(wù)之間關(guān)系約束構(gòu)建應(yīng)用的有向無(wú)環(huán)圖并計(jì)算任務(wù)優(yōu)先級(jí);最后協(xié)調(diào)處理軟件和硬件任務(wù)。本發(fā)明方法可將在動(dòng)態(tài)部分可重構(gòu)系統(tǒng)上運(yùn)行的包含多個(gè)任務(wù)的應(yīng)用實(shí)例實(shí)現(xiàn)能量的有效管理,從而使動(dòng)態(tài)部分可重構(gòu)系統(tǒng)處理應(yīng)用實(shí)例降低能量的開(kāi)銷(xiāo)。
文檔編號(hào)G06F1/32GK101833368SQ20101014593
公開(kāi)日2010年9月15日 申請(qǐng)日期2010年4月13日 優(yōu)先權(quán)日2010年4月13日
發(fā)明者張佳芳, 戴國(guó)駿, 薛剛剛, 陳 峰, 高志剛 申請(qǐng)人:杭州電子科技大學(xué)
網(wǎng)友詢(xún)問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
赣榆县| 临江市| 小金县| 霍邱县| 交城县| 盐池县| 濮阳县| 徐水县| 苍溪县| 辽阳市| 绥芬河市| 泗水县| 中江县| 五指山市| 平乐县| 晋中市| 永德县| 蕉岭县| 清苑县| 徐汇区| 杭州市| 广南县| 荣昌县| 睢宁县| 淳化县| 南宫市| 津南区| 佛山市| 吉首市| 咸丰县| 商丘市| 历史| 西昌市| 浮梁县| 无极县| 莫力| 绥滨县| 东山县| 南投县| 商洛市| 长顺县|