專利名稱:嵌入式處理器的亂序執(zhí)行控制裝置的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及嵌入式處理器設(shè)計(jì),尤其是嵌入式處理器中的亂序執(zhí) 行控制裝置。
背景技術(shù):
嵌入式系統(tǒng)已經(jīng)滲入到日常生活的各個(gè)方面。在手機(jī)、便攜式多 媒體播放器、數(shù)碼相機(jī)、機(jī)頂盒里都有嵌入式系統(tǒng)的身影。嵌入式領(lǐng) 域的不斷擴(kuò)大和應(yīng)用的不斷復(fù)雜,對嵌入式處理器的性能提出了更高 的要求。
流水線技術(shù)是現(xiàn)代嵌入式處理器普遍采用的一種技術(shù)。流水線技 術(shù)是一種將每條指令的執(zhí)行分解為多步,并讓各步操作并行執(zhí)行,從 而實(shí)現(xiàn)多條指令并行處理的技術(shù)。流水線技術(shù)可在一定程度上提高了 嵌入式處理器的性能,但是由于程序是一個(gè)順序指令流,流水線只能 按照程序順序執(zhí)行。如果位于程序前列的指令由于執(zhí)行條件不滿足而 停頓時(shí),其后續(xù)指令將在流水線中被堵塞而不能被及時(shí)處理,導(dǎo)致處
理器性能的下降。
超標(biāo)量技術(shù)是高端嵌入式處理器采用的技術(shù)。超標(biāo)量技術(shù)通過提 高指令發(fā)射的并行性,提升處理器的性能。所謂超標(biāo)量技術(shù),就是處 理器可以在一個(gè)時(shí)鐘周期內(nèi)發(fā)射多條指令,同時(shí)在處理器內(nèi)部實(shí)現(xiàn)多 條流水線,達(dá)到一個(gè)周期并行執(zhí)行多條指令的目的。超標(biāo)量技術(shù)在顯 著提升處理器性能的同時(shí),伴隨著邏輯設(shè)計(jì)復(fù)雜度和硬件資源的增加。
發(fā)明內(nèi)容
為了克服已有的嵌入式處理器不能兼顧性能和功耗、成本高的不 足,本發(fā)明提供一種在低功耗的前提下提高性能、成本低的應(yīng)用于嵌 入式處理器的亂序執(zhí)行控制裝置。
本發(fā)明解決其技術(shù)問題所采用的技術(shù)方案是 一種嵌入式處理器的亂序執(zhí)行控制裝置,所述的亂序執(zhí)行控制裝置 包括發(fā)射單元,用于將譯碼后的指令存放到流水線寄存器,單時(shí)鐘 周期發(fā)射指令,如參與運(yùn)算的操作數(shù)準(zhǔn)備完畢,在下一時(shí)鐘周期將其 送入執(zhí)行單元開始執(zhí)行;如參與運(yùn)算的操作數(shù)未準(zhǔn)備完畢,將操作數(shù) 未就緒的指令暫時(shí)保存至保留站寄存器中并釋放發(fā)射窗口,下一個(gè)時(shí) 鐘周期,后續(xù)指令通過發(fā)射窗口進(jìn)行正常發(fā)射;
保留站寄存器單元,用于與各個(gè)執(zhí)行單元一一對應(yīng),當(dāng)發(fā)射的指令 因?yàn)閷懽x數(shù)據(jù)相關(guān)沖突而產(chǎn)生停頓時(shí),臨時(shí)保存產(chǎn)生停頓的指令,并
進(jìn)行操作數(shù)旁路監(jiān)聽;
執(zhí)行控制單元,用于實(shí)時(shí)監(jiān)測各執(zhí)行單元的工作情況,并根據(jù)各執(zhí) 行單元返回的信息將保留站寄存器中的指令或者當(dāng)前發(fā)射的指令動(dòng)態(tài) 分配至空閑的執(zhí)行單元中。
作為優(yōu)選的一種方案所述的亂序執(zhí)行控制裝置還包括動(dòng)態(tài)分 配標(biāo)簽單元,用于標(biāo)識(shí)指令發(fā)射順序,在指令發(fā)射階段,對順序發(fā)射
的各類指令動(dòng)態(tài)分配標(biāo)簽;操作數(shù)旁路監(jiān)聽邏輯識(shí)別目標(biāo)指令的標(biāo)簽, 動(dòng)態(tài)旁路所需的操作數(shù);指令運(yùn)算結(jié)果根據(jù)指令標(biāo)簽實(shí)現(xiàn)保存。
作為優(yōu)選的另一種方案所述亂序執(zhí)行控制裝置還包括重排序 緩沖器,用于對亂序執(zhí)行結(jié)果的臨時(shí)保存,并按指令順序,退休已完成執(zhí)行的指令,將運(yùn)算結(jié)果按序回寫到通用寄存器。
進(jìn)一步,所述保留站寄存器單元中,保留站的深度根據(jù)嵌入式應(yīng) 用程序執(zhí)行過程中各執(zhí)行單元的執(zhí)行負(fù)荷進(jìn)行調(diào)整。
再進(jìn)一步,在所述發(fā)射單元中,將多條指令存放到流水線寄存器, 單時(shí)鐘周期發(fā)射多條指令。
本發(fā)明的技術(shù)構(gòu)思為現(xiàn)有的嵌入式處理器普遍采用的是順序執(zhí) 行的機(jī)制,處理器按照程序的指令流順序處理。如果位于程序前列的 指令由于執(zhí)行條件不滿足而停頓時(shí),其后續(xù)指令將在流水線中被堵塞 而不能被及時(shí)處理。為了克服順序指令流在流水線中停頓造成的性能 影響,亂序執(zhí)行機(jī)制被應(yīng)用到嵌入式處理器設(shè)計(jì)當(dāng)中。亂序執(zhí)行機(jī)制 允許指令不按程序規(guī)定順序,進(jìn)入執(zhí)行單元執(zhí)行。當(dāng)位于程序前列的 指令由于執(zhí)行條件不滿足而產(chǎn)生停頓時(shí),不會(huì)鎖住流水線,后續(xù)指令 仍然可以使用流水線資源發(fā)射到各執(zhí)行單元,提前開始執(zhí)行。亂序執(zhí) 行技術(shù)打亂指令執(zhí)行順序,讓具備執(zhí)行條件的后續(xù)指令提前被處理, 實(shí)現(xiàn)處理器內(nèi)部功能單元滿負(fù)荷運(yùn)轉(zhuǎn),充分挖掘指令級并行性,從而 提高處理器的處理能力。
應(yīng)用于嵌入式處理器的亂序執(zhí)行控制裝置,是實(shí)現(xiàn)處理器亂序處 理指令的控制裝置。在亂序執(zhí)行控制裝置的管理下,若當(dāng)前指令發(fā)生 停頓時(shí),發(fā)射窗口仍可非阻塞發(fā)射,后續(xù)指令先于停頓指令被提前執(zhí) 行。亂序執(zhí)行控制裝置對嵌入式處理器,尤其是超標(biāo)量嵌入式處理器 的性能提升顯著。
本發(fā)明的有益效果主要表現(xiàn)在1、在低功耗的前提下提高性能 2、降低了成本;3、對處理器性能提升顯著。通過對嵌入式處理器指令亂序執(zhí)行的支持,充分挖掘了指令級的潛在并行性,實(shí)現(xiàn)了處理器
性能的顯著提升;4、實(shí)現(xiàn)簡單。通過保留站技術(shù)暫時(shí)保存產(chǎn)生停頓的
指令,實(shí)現(xiàn)操作數(shù)的旁路監(jiān)聽;通過采用指令標(biāo)記技術(shù),既簡化了操
作數(shù)旁路邏輯,又簡化了指令退休邏輯;通過重排序緩沖器實(shí)現(xiàn)了按
序退休;5、靈活性好。各執(zhí)行單元的保留站的深度可以根據(jù)執(zhí)行單元
的執(zhí)行負(fù)荷進(jìn)行調(diào)整,己達(dá)到最佳的緩沖效果。
圖1是嵌入式處理器(以超標(biāo)量嵌入式處理器為例)亂序執(zhí)行控 制裝置的總體架構(gòu)圖2是指令亂序執(zhí)行的示意圖3是指令亂序執(zhí)行的示意圖
圖4是保留站結(jié)構(gòu)及其操作數(shù)旁路邏輯的示意圖5是重排序緩沖器按序創(chuàng)建邏輯的示意圖6是指令執(zhí)行結(jié)果保存邏輯的示意圖7是重排序緩沖器中指令狀態(tài)更新的示意圖。
具體實(shí)施例方式
下面結(jié)合附圖對本發(fā)明作進(jìn)一步描述。
參照圖1 圖7,一種嵌入式處理器的亂序執(zhí)行控制裝置包括發(fā)射 單元,用于將譯碼后的指令存放到流水線寄存器,單時(shí)鐘周期發(fā)射指 令,如參與運(yùn)算的操作數(shù)準(zhǔn)備完畢,在下一時(shí)鐘周期將其送入執(zhí)行單 元開始執(zhí)行;如參與運(yùn)算的操作數(shù)未準(zhǔn)備完畢,將操作數(shù)未就緒的指 令暫時(shí)保存至保留站寄存器中并釋放發(fā)射窗口,下一個(gè)時(shí)鐘周期,后 續(xù)指令通過發(fā)射窗口進(jìn)行正常發(fā)射;執(zhí)行單元一一對應(yīng),當(dāng)發(fā)射的指 令因?yàn)閷懽x數(shù)據(jù)相關(guān)沖突而產(chǎn)生停頓時(shí),臨時(shí)保存產(chǎn)生停頓的指令, 并進(jìn)行操作數(shù)旁路監(jiān)聽;
執(zhí)行控制單元,用于實(shí)時(shí)監(jiān)測各執(zhí)行單元的工作情況,并根據(jù)各
執(zhí)行單元返回的信息將保留站寄存器中的指令或者當(dāng)前發(fā)射的指令動(dòng)
態(tài)分配至空閑的執(zhí)行單元中。
本實(shí)施例的亂序執(zhí)行控制裝置的總體架構(gòu)和工作原理如圖1所
示。本發(fā)明提出的嵌入式處理器中的亂序執(zhí)行控制裝置,其特征包括
如下
1) 應(yīng)用于嵌入式處理器的亂序執(zhí)行控制裝置,支持指令的動(dòng)態(tài)執(zhí)
行;
2) 亂序執(zhí)行控制裝置采用非阻塞發(fā)射策略;
3) 采用分布式保留站技術(shù),為各執(zhí)行單元分配獨(dú)立的保留站,臨 時(shí)保存產(chǎn)生停頓的指令;
4) 保留站內(nèi)的指令時(shí)刻進(jìn)行操作數(shù)旁路監(jiān)聽,在操作數(shù)準(zhǔn)備完成 之前,后續(xù)指令仍可傳送至各執(zhí)行單元,先于保留站內(nèi)的指令執(zhí)行;
5) 保留站深度可根據(jù)對應(yīng)執(zhí)行單元的運(yùn)算負(fù)荷進(jìn)行相應(yīng)調(diào)整;
6) 采用動(dòng)態(tài)分配標(biāo)簽策略,用以標(biāo)識(shí)指令發(fā)射順序,實(shí)現(xiàn)亂序執(zhí) 行過程中,運(yùn)算結(jié)果的準(zhǔn)確保存;
7) 采用重排序緩沖器實(shí)現(xiàn)對亂序執(zhí)行結(jié)果的臨時(shí)保存,并按指令 順序,退休已完成執(zhí)行的指令。
所述的應(yīng)用于嵌入式處理器的亂序執(zhí)行控制裝置,支持指令的動(dòng) 態(tài)執(zhí)行。亂序執(zhí)行控制裝置的指令發(fā)射單元遵照程序的指令流順序依 次將指令發(fā)射。執(zhí)行控制單元?jiǎng)t不考慮指令的程序順序,只根據(jù)已發(fā)
8射指令是否將操作數(shù)準(zhǔn)備完畢和相應(yīng)執(zhí)行單元是否空閑,將滿足執(zhí)行 條件的指令直接傳送至執(zhí)行單元處理。
所述的亂序執(zhí)行控制裝置采用非阻塞發(fā)射策略。在本專利中,當(dāng) 一條指令因?yàn)槌霈F(xiàn)數(shù)據(jù)相關(guān)性沖突或者相應(yīng)執(zhí)行單元為忙而導(dǎo)致不能 傳送至執(zhí)行單元處理時(shí),則稱該指令是停頓的。若當(dāng)前發(fā)射單元中的 指令出現(xiàn)停頓,當(dāng)前指令會(huì)暫時(shí)保存,并釋放發(fā)射單元,后續(xù)指令仍 可以占用發(fā)射單元,實(shí)現(xiàn)流水線非阻塞發(fā)射。若后續(xù)指令滿足執(zhí)行條 件,執(zhí)行控制單元?jiǎng)t會(huì)將其先于前序停頓指令,提前傳送至各執(zhí)行單 元處理。圖2是非阻塞發(fā)射實(shí)現(xiàn)亂序執(zhí)行的示意圖。
所述的采用分布式保留站技術(shù),為各執(zhí)行單元分配獨(dú)立的保留站, 臨時(shí)保存產(chǎn)生停頓的指令。為了實(shí)現(xiàn)非阻塞發(fā)射,亂序執(zhí)行控制裝置 采用分布式保留站技術(shù),為各執(zhí)行單元分配獨(dú)立的保留站,用以臨時(shí) 保存分配到該執(zhí)行單元的產(chǎn)生停頓的發(fā)射指令。停頓指令的詳細(xì)信息, 包括指令的譯碼信息、指令的操作數(shù)、操作數(shù)的數(shù)據(jù)相關(guān)性信息,都 會(huì)被保存在保留站中。保留站的具體結(jié)構(gòu)如圖4所示。保留站的另外 一個(gè)重要功能是消除由于亂序執(zhí)行帶來的讀寫數(shù)據(jù)相關(guān)沖突。本發(fā)明 采用寄存器重命名機(jī)制,將產(chǎn)生停頓的指令的可讀取操作數(shù)提前讀取, 并保存至保留站,而不是等該指令傳送至執(zhí)行單元處理時(shí)再去通用寄 存器讀取操作數(shù),從而避免了亂序執(zhí)行帶來了的讀寫數(shù)據(jù)相關(guān)沖突。
所述的保留站內(nèi)的指令時(shí)刻進(jìn)行操作數(shù)旁路監(jiān)聽,在操作數(shù)準(zhǔn)備 完成之前,后續(xù)指令仍可成功傳送至各執(zhí)行單元,先于保留站內(nèi)的指 令執(zhí)行。當(dāng)發(fā)射的指令因?yàn)閷懽x數(shù)據(jù)相關(guān)沖突而產(chǎn)生停頓時(shí),會(huì)被臨 時(shí)保存至保留站。指令一進(jìn)入保留站后,保留站的操作數(shù)旁路監(jiān)聽邏 輯立刻開始工作,時(shí)刻監(jiān)聽公共數(shù)據(jù)總線。 一旦公共數(shù)據(jù)總線出現(xiàn)目標(biāo)數(shù)據(jù),直接從公共數(shù)據(jù)總線旁路目標(biāo)數(shù)據(jù)。當(dāng)執(zhí)行控制單元監(jiān)測到 保留站中的指令操作數(shù)準(zhǔn)備完畢并具備執(zhí)行條件時(shí),會(huì)將其傳送至執(zhí) 行單元處理,同時(shí)保留站資源被釋放。但是在保留站中的指令操作數(shù) 準(zhǔn)備完成之前,如果后續(xù)發(fā)射單元中的指令己經(jīng)將操作數(shù)準(zhǔn)備完畢并 具備執(zhí)行條件時(shí),執(zhí)行控制單元?jiǎng)t會(huì)將發(fā)射指令傳送至執(zhí)行單元處理。 這種機(jī)制實(shí)現(xiàn)了被分配在同一個(gè)執(zhí)行單元處理的指令的亂序執(zhí)行。具 體過程如圖3所示。
所述的保留站深度可根據(jù)對應(yīng)執(zhí)行單元的運(yùn)算負(fù)荷進(jìn)行相應(yīng)調(diào) 整。各執(zhí)行單元都分配一個(gè)獨(dú)立的保留站。保留站的存儲(chǔ)深度直接影 響了該執(zhí)行單元緩沖停頓指令的能力。由于嵌入式應(yīng)用程序中不同類 型指令出現(xiàn)頻度不同,各執(zhí)行單元的執(zhí)行負(fù)荷相差明顯。有的執(zhí)行單 元運(yùn)算負(fù)荷嚴(yán)重,如ALU單元、數(shù)據(jù)負(fù)載/存儲(chǔ)單元等,指令會(huì)被頻 繁傳送至這些單元執(zhí)行。嚴(yán)重的運(yùn)算負(fù)荷極易造成這些單元保留站的 頻繁溢出,進(jìn)而阻塞指令發(fā)射,嚴(yán)重影響流水線亂序執(zhí)行的能力。本 發(fā)明中的保留站的存儲(chǔ)區(qū)深度可根據(jù)嵌入式應(yīng)用程序執(zhí)行過程中各執(zhí) 行單元的執(zhí)行負(fù)荷進(jìn)行調(diào)整,以達(dá)到最佳的指令緩沖以及非阻塞發(fā)射 的功能。
所述的采用動(dòng)態(tài)分配標(biāo)簽策略,用以標(biāo)識(shí)指令發(fā)射順序,實(shí)現(xiàn)亂 序執(zhí)行過程中,運(yùn)算結(jié)果的準(zhǔn)確保存。指令按照程序中指令流的順序 并行發(fā)射。在指令發(fā)射階段,對順序發(fā)射的各條指令動(dòng)態(tài)分配標(biāo)簽。 標(biāo)簽既指示了指令在程序流上的先后順序,又唯一標(biāo)識(shí)了流水線中亂 序執(zhí)行的各條指令的身份。為了消除數(shù)據(jù)相關(guān)性沖突以及簡化操作數(shù) 旁路邏輯,在發(fā)射階段,對指令操作數(shù)數(shù)據(jù)相關(guān)性沖突進(jìn)行檢查,并 獲取操作數(shù)數(shù)據(jù)相關(guān)性沖突的詳細(xì)信息。當(dāng)指令因?yàn)閿?shù)據(jù)相關(guān)性沖突出現(xiàn)停頓時(shí),如3)所述,這些信息會(huì)跟隨指令被保存至保留站。流 水線中亂序執(zhí)行的各條指令產(chǎn)生結(jié)果后,通過公共數(shù)據(jù)總線向各個(gè)操 作數(shù)旁路邏輯廣播。公共數(shù)據(jù)總線上傳輸?shù)慕Y(jié)果伴隨指令標(biāo)簽。當(dāng)保 留站的操作數(shù)旁路邏輯監(jiān)聽到公共數(shù)據(jù)總線出現(xiàn)對應(yīng)指令標(biāo)簽的數(shù)據(jù) 時(shí),旁路邏輯將其保存,操作數(shù)旁路監(jiān)聽結(jié)束。操作數(shù)旁路邏輯如圖 4所示。公共數(shù)據(jù)總線同時(shí)向重排序緩沖器傳輸指令執(zhí)行結(jié)果,執(zhí)行 結(jié)果標(biāo)簽被保存至重排序緩沖器中。
所述的采用重排序緩沖器實(shí)現(xiàn)對亂序執(zhí)行結(jié)果的臨時(shí)保存,并按 指令順序,退休己完成執(zhí)行的指令。為了實(shí)現(xiàn)精確異常處理機(jī)制,采 用重排序緩沖器臨時(shí)保存亂序執(zhí)行結(jié)果,并按照原始指令流順序重新 排列亂序執(zhí)行的各條指令,實(shí)現(xiàn)指令按序退休。在指令發(fā)射時(shí),重排 序緩沖器創(chuàng)建邏輯在緩沖器中創(chuàng)建相應(yīng)條目已保存指令的相應(yīng)信息, 如指令的目的寄存器等信息。重排序緩沖器是一個(gè)循環(huán)緩沖器,創(chuàng)建 邏輯利用指令標(biāo)簽作為索引在重排序緩沖器創(chuàng)建條目,其創(chuàng)建過程如 圖5所示。由于指令是按序發(fā)射的,重排序緩沖器也按序創(chuàng)建。在流 水線中亂序執(zhí)行的指令產(chǎn)生結(jié)果時(shí),并不直接回寫通用寄存器,而是 通過公共數(shù)據(jù)總線將運(yùn)算結(jié)果傳輸至重排序緩沖器臨時(shí)保存。利用運(yùn) 算結(jié)果對應(yīng)的動(dòng)態(tài)標(biāo)簽作為索引將其保存到相應(yīng)的條目中。具體的結(jié) 果保存邏輯如圖6所示。退休時(shí),重排序緩沖器按照指令標(biāo)簽的順序, 依次檢查指令是否完成執(zhí)行,若指令已經(jīng)執(zhí)行完成,則將執(zhí)行結(jié)果回-
寫至通用寄存器,同時(shí)釋放相應(yīng)的緩沖器條目;若指令重排序緩沖器
中時(shí)間上最老的指令尚未完成執(zhí)行,當(dāng)前退休停止,后續(xù)指令即使完
成執(zhí)行,也僅能在重排序緩沖器中等待退休。圖7是指令亂序執(zhí)行及 其在重排序緩沖器中狀態(tài)變換的示意圖。
權(quán)利要求
1、一種嵌入式處理器的亂序執(zhí)行控制裝置,其特征在于所述的亂序執(zhí)行控制裝置包括發(fā)射單元,用于將譯碼后的指令存放到流水線寄存器,單時(shí)鐘周期發(fā)射指令,如參與運(yùn)算的操作數(shù)準(zhǔn)備完畢,在下一時(shí)鐘周期將其送入執(zhí)行單元開始執(zhí)行;如參與運(yùn)算的操作數(shù)未準(zhǔn)備完畢,將操作數(shù)未就緒的指令暫時(shí)保存至保留站寄存器中并釋放發(fā)射窗口,下一個(gè)時(shí)鐘周期,后續(xù)指令通過發(fā)射窗口進(jìn)行正常發(fā)射;保留站寄存器單元,用于與各個(gè)執(zhí)行單元一一對應(yīng),當(dāng)發(fā)射的指令因?yàn)閷懽x數(shù)據(jù)相關(guān)沖突而產(chǎn)生停頓時(shí),臨時(shí)保存產(chǎn)生停頓的指令,并進(jìn)行操作數(shù)旁路監(jiān)聽;執(zhí)行控制單元,用于實(shí)時(shí)監(jiān)測各執(zhí)行單元的工作情況,并根據(jù)各執(zhí)行單元返回的信息將保留站寄存器中的指令或者當(dāng)前發(fā)射的指令動(dòng)態(tài)分配至空閑的執(zhí)行單元中。
2、 如權(quán)利要求1所述的嵌入式處理器的亂序執(zhí)行控制裝置,其特征在于所述的亂序執(zhí)行控制裝置還包括動(dòng)態(tài)分配標(biāo)簽單元,用于標(biāo)識(shí)指令發(fā)射順序,在指令發(fā)射階段,對順序發(fā)射的各類指令動(dòng)態(tài)分配標(biāo)簽;操作數(shù)旁路監(jiān)聽邏輯識(shí)別目標(biāo)指令的標(biāo)簽,動(dòng)態(tài)旁路所需的操作數(shù);指令運(yùn)算結(jié)果根據(jù)指令標(biāo)簽實(shí)現(xiàn)保存。
3、 如權(quán)利要求1或2所述的嵌入式處理器的亂序執(zhí)行控制裝置,其特征在于所述的亂序執(zhí)行控制裝置還包括重排序緩沖器,用于對亂序執(zhí)行結(jié)果的臨時(shí)保存,并按指令順序,退休已完成執(zhí)行的指令,將運(yùn)算結(jié)果按序回寫到通用寄存器。
4、 如權(quán)利要求1或2所述的嵌入式處理器的亂序執(zhí)行控制裝置,其特征在于所述保留站寄存器單元中,保留站的深度根據(jù)嵌入式應(yīng)用程序執(zhí)行過程中各執(zhí)行單元的執(zhí)行負(fù)荷進(jìn)行調(diào)整。
5、 如權(quán)利要求3所述的嵌入式處理器的亂序執(zhí)行控制裝置,其特征在于所述保留站寄存器單元中,保留站的深度根據(jù)嵌入式應(yīng)用程序執(zhí)行過程中各執(zhí)行單元的執(zhí)行負(fù)荷進(jìn)行調(diào)整。
6、 如權(quán)利要求1或2所述的嵌入式處理器的亂序執(zhí)行控制裝置,其特征在于在所述發(fā)射單元中,將多條指令存放到流水線寄存器,單時(shí)鐘周期發(fā)射多條指令。
7、 如權(quán)利要求3所述的嵌入式處理器的亂序執(zhí)行控制裝置,其特征在于在所述發(fā)射單元中,將多條指令存放到流水線寄存器,單時(shí)鐘周期發(fā)射多條指令。
8、 如權(quán)利要求4所述的嵌入式處理器的亂序執(zhí)行控制裝置,其特征在于在所述發(fā)射單元中,將多條指令存放到流水線寄存器,單時(shí)鐘周期發(fā)射多條指令。
全文摘要
一種嵌入式處理器的亂序執(zhí)行控制裝置,包括發(fā)射單元,用于將譯碼后的指令存放到流水線寄存器,單時(shí)鐘周期發(fā)射指令;保留站寄存器單元,用于當(dāng)發(fā)射的指令因?yàn)閷懽x數(shù)據(jù)相關(guān)沖突而產(chǎn)生停頓時(shí),臨時(shí)保存產(chǎn)生停頓的指令,并進(jìn)行操作數(shù)旁路監(jiān)聽;執(zhí)行控制單元,用于實(shí)時(shí)監(jiān)測各執(zhí)行單元的工作情況,并根據(jù)各執(zhí)行單元返回的信息將保留站寄存器中的指令或者當(dāng)前發(fā)射的指令動(dòng)態(tài)分配至空閑的執(zhí)行單元中。本發(fā)明設(shè)計(jì)簡單,易于實(shí)現(xiàn),對嵌入式處理器的性能提升顯著。
文檔編號(hào)G06F9/38GK101477454SQ20091009558
公開日2009年7月8日 申請日期2009年1月22日 優(yōu)先權(quán)日2009年1月22日
發(fā)明者嚴(yán)曉浪, 孟建熠, 葛海通, 陳志堅(jiān) 申請人:浙江大學(xué)