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

關(guān)閉無(wú)作用的數(shù)值邏輯運(yùn)算單元以節(jié)省電力的制作方法

文檔序號(hào):6558029閱讀:151來(lái)源:國(guó)知局
專利名稱:關(guān)閉無(wú)作用的數(shù)值邏輯運(yùn)算單元以節(jié)省電力的制作方法
技術(shù)領(lǐng)域
本發(fā)明是關(guān)于一種處理器,尤其是一種透過(guò)關(guān)閉無(wú)作用的數(shù)值邏輯運(yùn)算單元以節(jié)省電力的處理器。
背景技術(shù)
由于集成電路的制程不斷地進(jìn)步,上述電路所整合的半導(dǎo)體裝置尺寸亦逐漸縮小,因此導(dǎo)致電路越來(lái)越密集,亦由于整合裝置間的時(shí)脈傳播延遲時(shí)間縮短而允許更高的時(shí)脈速率。
當(dāng)裝置愈趨縮小且時(shí)脈日益增高,電路的性能,以其運(yùn)作速度而言逐漸由其電路架構(gòu)決定。例如于一微處理器中,數(shù)值邏輯運(yùn)算單元是決定其性能的關(guān)鍵功能單元,因其需執(zhí)行此微處理器中絕大多數(shù)的運(yùn)算作業(yè),亦由于數(shù)值邏輯運(yùn)算單元主要是以序列式或管線式來(lái)運(yùn)作。盡管事實(shí)上每一時(shí)脈中僅有一數(shù)值邏輯運(yùn)算單元實(shí)際執(zhí)行有效運(yùn)算,現(xiàn)今微處理器中所有數(shù)值邏輯運(yùn)算單元仍于每一時(shí)脈保持在啟動(dòng)狀態(tài)。傳統(tǒng)的數(shù)值邏輯運(yùn)算單元設(shè)計(jì)上是啟動(dòng)所有的數(shù)值邏輯運(yùn)算單元,造成需利用額外的邏輯電路以切換無(wú)作用的數(shù)值邏輯運(yùn)算單元。上述無(wú)作用數(shù)值邏輯運(yùn)算單元的計(jì)算結(jié)果雖忽略不計(jì),然而其計(jì)算過(guò)程卻浪費(fèi)電力。此種耗電減少了電池供電時(shí)間卻沒(méi)有任何性能助益。

發(fā)明內(nèi)容
本發(fā)明于此所揭示的優(yōu)點(diǎn)與特征的全部或其部份是可足供熟悉此項(xiàng)技術(shù)者檢驗(yàn)與學(xué)習(xí)。透過(guò)以下說(shuō)明,特別是申請(qǐng)權(quán)利范圍所指出的特征可具體了解本發(fā)明的特征與優(yōu)點(diǎn)。
本發(fā)明的一實(shí)施例提供一種透過(guò)關(guān)閉數(shù)值邏輯運(yùn)算單元以節(jié)省電力的處理器,可用以解決上述傳統(tǒng)的處理器未能達(dá)成的標(biāo)的。
于此實(shí)施例中,本發(fā)明提供一處理器,其特征在于,該處理器包含一解碼單元,以產(chǎn)生一致能信號(hào);以及一執(zhí)行單元,以自該解碼單元接收該致能信號(hào),其中該執(zhí)行單元包含復(fù)數(shù)個(gè)門(mén)控?cái)?shù)值邏輯運(yùn)算單元,其中各個(gè)該等門(mén)控?cái)?shù)值邏輯運(yùn)算單元還包含一邏輯單元,以接收一輸入數(shù)據(jù)、一已解碼指令與該致能信號(hào);以及一數(shù)值邏輯運(yùn)算單元,以接收該邏輯單元的輸出值并且將一計(jì)算結(jié)果傳送出該門(mén)控?cái)?shù)值邏輯運(yùn)算單元;以及一多工器,以根據(jù)一選擇信號(hào),自該復(fù)數(shù)個(gè)門(mén)控?cái)?shù)值邏輯運(yùn)算單元的計(jì)算結(jié)果中擇一作為該執(zhí)行單元的一輸出結(jié)果。
其中該邏輯單元于該數(shù)值邏輯運(yùn)算單元不需啟動(dòng)運(yùn)算時(shí)阻絕該輸入資料,并且于該數(shù)值邏輯運(yùn)算單元需要啟動(dòng)運(yùn)算時(shí)令該輸入資料進(jìn)入該數(shù)值邏輯運(yùn)算單元。
其中該解碼單元對(duì)已接收的指令進(jìn)行解碼以產(chǎn)生該致能信號(hào)與該已解碼指令。
其中該解碼單元所產(chǎn)生的該致能信號(hào)是用于決定是否啟動(dòng)該復(fù)數(shù)個(gè)數(shù)值邏輯運(yùn)算單元。
其中該邏輯單元包含一與門(mén)以接收該輸入數(shù)據(jù)、該已解碼指令與該致能信號(hào),該與門(mén)的輸出值是輸出至該數(shù)值邏輯運(yùn)算單元。
其中該邏輯單元包含一或門(mén)以接收該輸入數(shù)據(jù)、該已解碼指令與該致能信號(hào)的倒置信號(hào),該或門(mén)的輸出值是輸出至該數(shù)值邏輯運(yùn)算單元。
其中該邏輯單元包含一多工器,該多工器是連接該輸入資料以作為一第一輸入、連接該已解碼資料作為一第二輸入以及該致能信號(hào)作為一選擇信號(hào),該多工器的輸出值是輸出至該數(shù)值邏輯運(yùn)算單元。
其中該邏輯單元包含一閂以接收該輸入數(shù)據(jù)、該已解碼指令與該致能信號(hào)的倒置信號(hào),該閂的輸出值是輸出至該數(shù)值邏輯運(yùn)算單元。
本發(fā)明的另一實(shí)施例提供另一種透過(guò)關(guān)閉數(shù)值邏輯運(yùn)算單元以節(jié)省電力的裝置。本發(fā)明一處理器,其特征在于,該處理器包含一解碼單元,以產(chǎn)生一時(shí)脈提前致能信號(hào);以及一執(zhí)行單元,以自該解碼單元接收該時(shí)脈提前致能信號(hào),其中該執(zhí)行單元包含復(fù)數(shù)個(gè)門(mén)控?cái)?shù)值邏輯運(yùn)算單元,其中各個(gè)該等門(mén)控?cái)?shù)值邏輯運(yùn)算單元還包含一邏輯單元,以接收一輸入數(shù)據(jù)、一已解碼指令與該時(shí)脈提前致能信號(hào);以及一數(shù)值邏輯運(yùn)算單元,以接收該邏輯單元的輸出值并且將一計(jì)算結(jié)果傳送出該門(mén)控?cái)?shù)值邏輯運(yùn)算單元;以及一第一多工器,以根據(jù)一選擇信號(hào),自該復(fù)數(shù)個(gè)門(mén)控?cái)?shù)值邏輯運(yùn)算單元的計(jì)算結(jié)果中擇一作為該執(zhí)行單元的一輸出結(jié)果。
其中該邏輯單元于該數(shù)值邏輯運(yùn)算單元不需啟動(dòng)運(yùn)算時(shí)阻絕該輸入資料,并且于該數(shù)值邏輯運(yùn)算單元需要啟動(dòng)運(yùn)算時(shí)令該輸入資料進(jìn)入該數(shù)值邏輯運(yùn)算單元。
其中該解碼單元對(duì)已接受的指令進(jìn)行解碼以產(chǎn)生該致能信號(hào)與該已解碼指令。
其中該解碼單元所產(chǎn)生的該時(shí)脈提前致能信號(hào)是用于決定是否啟動(dòng)該等數(shù)值邏輯運(yùn)算單元,且該時(shí)脈提前致能信號(hào)較原時(shí)脈提前一周期。
其中該邏輯單元包含一與門(mén),以接收一時(shí)脈信號(hào)與該時(shí)脈提前致能信號(hào),并傳送一輸出;以及一正反器,以接收該輸入數(shù)據(jù)、該已解碼指令與該與門(mén)的輸出,該正反器的輸出值是輸出至該數(shù)值邏輯運(yùn)算單元。
其中該邏輯單元包含一第二多工器,以接收一反饋輸出信號(hào)作為一第一輸入、接收該輸入資料作為一第二輸入、接收該已解碼指令作為一第三輸入與該時(shí)脈提前致能信號(hào)作為一選擇信號(hào),并產(chǎn)生一輸出;以及一正反器,以接收該第二多工器的輸出與一時(shí)脈信號(hào),該正反器的輸出值是輸出至該數(shù)值邏輯運(yùn)算單元;其中該第二多工器接收的該反饋輸出信號(hào)是為該正反器的該輸出值的反饋信號(hào)。
本發(fā)明的又一實(shí)施例更提供一種于處理器中減少電力消耗的方法。本發(fā)明一種于處理器中減少電力消耗的方法,其特征在于,包含自一解碼單元分別接收一致能信號(hào)至一執(zhí)行單元的每一個(gè)數(shù)值邏輯運(yùn)算單元,以決定各個(gè)該數(shù)值邏輯運(yùn)算單元的開(kāi)啟或關(guān)閉;判斷各個(gè)該數(shù)值邏輯運(yùn)算單元對(duì)應(yīng)的該致能信號(hào)是否為開(kāi)啟;若該數(shù)值單元對(duì)應(yīng)的該致能信號(hào)為關(guān)閉,阻絕一輸入資料進(jìn)入該數(shù)值邏輯運(yùn)算單元;并且若該數(shù)值單元對(duì)應(yīng)的該致能信號(hào)為開(kāi)啟,允許該輸入資料進(jìn)入該數(shù)值邏輯運(yùn)算單元,以于其中進(jìn)行所欲的數(shù)值或邏輯運(yùn)算;以及根據(jù)一選擇信號(hào)選擇該等復(fù)數(shù)個(gè)數(shù)值邏輯運(yùn)算單元的計(jì)算結(jié)果中一者作為該執(zhí)行單元的一輸出結(jié)果。


為進(jìn)一步說(shuō)明本發(fā)明的具體技術(shù)內(nèi)容,以下結(jié)合實(shí)施例及附圖詳細(xì)說(shuō)明如后,其中圖1是為先前技術(shù)中具有特定階段的一管線作業(yè)處理器的一方塊示意圖;圖2A是為先前技術(shù)中一管線作業(yè)處理器的解碼單元的一方塊示意圖;圖2B是為根據(jù)本發(fā)明的管線作業(yè)處理器的一解碼單元的一方塊示意圖;圖3A是為先前技術(shù)中一管線作業(yè)處理器的一具有多個(gè)數(shù)值邏輯運(yùn)算單元的執(zhí)行單元的一方塊示意圖;圖3B是為根據(jù)本發(fā)明一管線作業(yè)處理器的一具有多個(gè)門(mén)控?cái)?shù)值邏輯運(yùn)算單元的執(zhí)行單元的一方塊示意圖;圖4A是為根據(jù)本發(fā)明一第一實(shí)施例的一門(mén)控?cái)?shù)值邏輯運(yùn)算單元的一方塊示意圖;圖4B是為根據(jù)本發(fā)明一第二實(shí)施例的一門(mén)控?cái)?shù)值邏輯運(yùn)算單元的一方塊示意圖;圖4C是為根據(jù)本發(fā)明一第三實(shí)施例的一門(mén)控?cái)?shù)值邏輯運(yùn)算單元的一方塊示意圖;圖4D是為根據(jù)本發(fā)明一第四實(shí)施例的一門(mén)控?cái)?shù)值邏輯運(yùn)算單元的一方塊示意圖;圖4E是為根據(jù)本發(fā)明一第五實(shí)施例的一門(mén)控?cái)?shù)值邏輯運(yùn)算單元的一方塊示意圖;圖5A是為根據(jù)本發(fā)明一第六實(shí)施例的一門(mén)控?cái)?shù)值邏輯運(yùn)算單元的一方塊示意圖;圖5B是為根據(jù)本發(fā)明一第七實(shí)施例的一門(mén)控?cái)?shù)值邏輯運(yùn)算單元的一方塊示意圖;圖5C是為根據(jù)本發(fā)明一第八實(shí)施例的一門(mén)控?cái)?shù)值邏輯運(yùn)算單元的一方塊示意圖;以及圖6是為根據(jù)本發(fā)明所提供的執(zhí)行單元運(yùn)作的一流程示意圖。
具體實(shí)施例方式
本發(fā)明在此所探討的方向?yàn)橐环N透過(guò)關(guān)閉數(shù)值邏輯運(yùn)算單元以節(jié)省電力的處理器。為了能徹底地了解本發(fā)明,將在下列的描述中提出詳盡的步驟及其組成,且本發(fā)明的施行并未限定于微處理器領(lǐng)域的技藝者所熟習(xí)的特殊細(xì)節(jié)。另一方面,眾所周知的組成或步驟并未描述于細(xì)節(jié)中,以避免造成本發(fā)明不必要的限制。本發(fā)明的較佳實(shí)施例會(huì)詳細(xì)描述于下,然而除了這些詳細(xì)描述之外,本發(fā)明還可以廣泛地施行在其它的實(shí)施例中,且本發(fā)明的范圍不受限定,其以之后的專利范圍為準(zhǔn)。
一計(jì)算機(jī)系統(tǒng)的組成可簡(jiǎn)化為至少三個(gè)組件,其具有至少一處理器、至少一存儲(chǔ)器單元與至少一輸出輸入次系統(tǒng)。請(qǐng)參考圖1所示,其是描繪一具有五個(gè)管線階段以執(zhí)行指令的處理器其架構(gòu)的一方塊圖。請(qǐng)注意,具有不同組態(tài)或不同管線階段數(shù)量的其它管線架構(gòu)設(shè)計(jì)亦可符合本發(fā)明所揭露的教示與精神。如圖1所示的架構(gòu),是描繪一指令提取單元110、一解碼單元120、一執(zhí)行單元130、一存儲(chǔ)器存取單元140與一暫存器寫(xiě)回單元150。除了于本說(shuō)明書(shū)所揭露的內(nèi)容以外,上述各單元或邏輯電路方塊的運(yùn)作方式皆依傳統(tǒng)方式,已為熟悉此項(xiàng)技術(shù)者所熟知,故不于此詳述。
悉如周知,上述的指令提取單元110執(zhí)行指令的存儲(chǔ)器提取作業(yè),其是用于判定順序(in-order)指令執(zhí)行中,一暫存器檔案160內(nèi)一程序計(jì)數(shù)器(program counter)的值或內(nèi)容,該類順序指令如例外向量、分支與返回指令等。此指令提取單元110亦用于決定所有例外與分支指令的返回地址,并且將此返回地址寫(xiě)入或儲(chǔ)存至上述暫存器檔案160內(nèi)一適當(dāng)?shù)臅捍嫫鳌?br> 上述的解碼單元120是用于解碼指令提取單元110所傳達(dá)的指令,并且產(chǎn)生執(zhí)行單元130執(zhí)行某特定指令所需的控制信號(hào)。此解碼單元120的特定架構(gòu)是隨著處理器而有所不同,然而其運(yùn)作與組織已為熟悉此技術(shù)者所熟知。同樣地,此執(zhí)行單元130的架構(gòu)與運(yùn)作亦隨著處理器而有所不同。一般而言,執(zhí)行單元130包含一電路用以執(zhí)行根據(jù)解碼單元120產(chǎn)生的控制信號(hào)所判別的指令。
上述的存儲(chǔ)器存取單元140與外部數(shù)據(jù)存儲(chǔ)器界面連接,以便根據(jù)上述執(zhí)行單元130所執(zhí)行的指令進(jìn)行數(shù)據(jù)的讀取與寫(xiě)入。當(dāng)然,并非所有指令皆需要進(jìn)行存儲(chǔ)器存取,但對(duì)于需要存取存儲(chǔ)器的指令而言,此存儲(chǔ)器存取單元140將為其進(jìn)行外部存儲(chǔ)器的必要存取動(dòng)作。最后,上述的暫存器寫(xiě)回單元150是負(fù)責(zé)將指令執(zhí)行的結(jié)果儲(chǔ)存或?qū)懭氪藭捍嫫鳈n案160的適當(dāng)暫存器中。
圖2A是為先前技術(shù)已知的一管線作業(yè)處理器的解碼單元210其一功能方塊圖。此解碼單元210接收前一階段的指令提取單元110所傳送的數(shù)據(jù)與指令以對(duì)此指令進(jìn)行解碼,并且產(chǎn)生上述執(zhí)行單元130執(zhí)行特定指令所需的控制信號(hào)。上述接收、解碼與傳輸操作如接收方塊211、解碼方塊212與傳輸方塊213所示。已解碼的指令與數(shù)據(jù)自解碼單元210送出至管線作業(yè)處理器下一階段,即執(zhí)行單元130以執(zhí)行此指令。
本發(fā)明的解碼單元220如圖2B所示。本發(fā)明揭露一額外控制信號(hào),即致能信號(hào)。此致能信號(hào)可控制上述執(zhí)行單元130中的數(shù)值邏輯運(yùn)算單元何者啟動(dòng)或關(guān)閉。上述的數(shù)據(jù)、已解碼指令與致能信號(hào)將傳送至執(zhí)行單元130以供指令的執(zhí)行。此解碼單元220的操作相近于圖2A,具有一接收方塊221,一解碼方塊222與一傳輸方塊223,其不同者在于增加一傳送致能信號(hào)方塊224以傳送該致能信號(hào)。
圖3A所示為一管線作業(yè)處理器中傳統(tǒng)執(zhí)行單元的一方塊示意圖。每一數(shù)值邏輯運(yùn)算單元311自圖2A的解碼單元210接收一數(shù)據(jù)輸入與已解碼指令(DI),以便于數(shù)值邏輯運(yùn)算單元311中進(jìn)行數(shù)值計(jì)算或邏輯判斷。雖然僅有一個(gè)數(shù)值邏輯運(yùn)算單元311實(shí)際執(zhí)行有效的數(shù)值或邏輯運(yùn)算,但所有的數(shù)值邏輯運(yùn)算單元311皆保持在運(yùn)作狀態(tài)。上述所有數(shù)值邏輯運(yùn)算單元311所得的計(jì)算結(jié)果Output全部集合于一多工器312以供選擇最終的輸出結(jié)果Output_s,此輸出結(jié)果Output_s則傳送至管線作業(yè)的下一階段。
請(qǐng)參考圖3B所示,其是為本發(fā)明一管線作業(yè)處理器的一執(zhí)行單元的一方塊示意圖,其中上述的執(zhí)行單元130包含數(shù)種門(mén)控(gated)數(shù)值邏輯運(yùn)算單元(gated ALUs)321-1-321-n。如同圖1所示,此執(zhí)行單元130是位于上述解碼單元120后與存儲(chǔ)器存取單元140前的一管線階段。解碼單元120產(chǎn)生執(zhí)行單元130所需的控制信號(hào)以進(jìn)行某一特定指令的執(zhí)行作業(yè)。此執(zhí)行單元130包含復(fù)數(shù)個(gè)門(mén)控?cái)?shù)值邏輯運(yùn)算單元321-1-321-n,其第一個(gè)單元為321-1、第二個(gè)單元為321-2,余下以此類推。每一個(gè)門(mén)控?cái)?shù)值邏輯運(yùn)算單元321-1-321-n皆分配到一致能信號(hào)(EN)與一已解碼指令(DI)。解碼單元120輸出的致能信號(hào)EN1-ENn啟動(dòng)/致能其中至少一個(gè)門(mén)控?cái)?shù)值邏輯運(yùn)算單元321-1-321-n,并且關(guān)閉其余門(mén)控?cái)?shù)值邏輯運(yùn)算單元321-1-321-n。然而某些情況下,亦有可能不需啟動(dòng)任何一個(gè)門(mén)控?cái)?shù)值邏輯運(yùn)算單元321-1-321-n,此時(shí)可關(guān)閉全部的門(mén)控?cái)?shù)值邏輯運(yùn)算單元321-1-321-n。舉例,若此數(shù)值或邏輯運(yùn)算僅需啟動(dòng)第一門(mén)控?cái)?shù)值邏輯運(yùn)算單元321-1,解碼單元220傳送一輸入數(shù)據(jù)、一致能信號(hào)EN1與一已解碼指令DI1至此第一門(mén)控?cái)?shù)值邏輯單元321-1以執(zhí)行指定的數(shù)值或邏輯運(yùn)算。此第一門(mén)控?cái)?shù)值邏輯運(yùn)算單元321-1的計(jì)算結(jié)果是記為第一輸出(Output-1)。其余的門(mén)控?cái)?shù)值邏輯運(yùn)算單元321-2-321-n因不需執(zhí)行所要求的數(shù)值或邏輯運(yùn)算故為關(guān)閉。之后,將各門(mén)控?cái)?shù)值邏輯運(yùn)算單元321-1-321-n的計(jì)算結(jié)果Output-1-Output-n全部耦接至一多工器324,此多工器324選擇所需的輸出結(jié)果(Output-s)傳送至下一階段,亦即此管線作業(yè)處理器的存儲(chǔ)器存取單元140。此多工器324的選擇信號(hào)(SEL)亦由上述解碼單元120提供,此解碼單元120將指令操作碼轉(zhuǎn)譯成控制信號(hào)以供予執(zhí)行單元130。此外,若上述多工器324的輸出結(jié)果必需儲(chǔ)存于暫存器檔案160內(nèi),亦可透過(guò)存儲(chǔ)器存取單元140與暫存器寫(xiě)回單元150存入暫存器檔案160。另一種可能是其輸出結(jié)果需回饋到此執(zhí)行單元130本身,例如當(dāng)執(zhí)行連續(xù)乘法時(shí)。其它可執(zhí)行選擇門(mén)控?cái)?shù)值邏輯運(yùn)算單元321-1-321-n的輸出Output-1-Output-n的邏輯電路亦可用以取代圖3B的多工器324。
一典型的執(zhí)行單元130包含以下幾種門(mén)控?cái)?shù)值邏輯運(yùn)算單元321一加法器、一減法器、一反向減法器(reversesubtractor)、一平移旋轉(zhuǎn)器與一乘法器。由于本發(fā)明的每一門(mén)控?cái)?shù)值運(yùn)算單元321皆受門(mén)控,故于每一數(shù)值邏輯運(yùn)算單元前冠上門(mén)控,如門(mén)控加法器、門(mén)控減法器、門(mén)控反減法器(reverse subtractor)、門(mén)控平移旋轉(zhuǎn)器與門(mén)控乘法器。舉例當(dāng)需要進(jìn)行一加法運(yùn)算時(shí),解碼單元220將指令操作碼轉(zhuǎn)譯成控制信號(hào)且傳送一額外致能信號(hào)至上述的執(zhí)行單元130,此額外致能信號(hào)將啟動(dòng)/致能此門(mén)控加法器以執(zhí)行此加法運(yùn)算,并且將計(jì)算結(jié)果傳送至上述的多工器324。最后,此多工器324的輸出結(jié)果傳送至上述的存儲(chǔ)器傳存單元140、暫存器檔案160或回饋到此執(zhí)行單元130本身。請(qǐng)注意,除了此門(mén)控加法器之外,所有其余的門(mén)控?cái)?shù)值邏輯運(yùn)算單元321皆被關(guān)閉以減少微處理器電力的損耗。
圖4A是根據(jù)本發(fā)明的第一實(shí)施例,描繪圖3B的執(zhí)行單元中一門(mén)控?cái)?shù)值邏輯運(yùn)算單元411其結(jié)構(gòu)的方塊圖。此門(mén)控?cái)?shù)值邏輯運(yùn)算單元411包含一數(shù)值邏輯運(yùn)算單元413與一可門(mén)控此數(shù)值邏輯運(yùn)算單元413的邏輯單元412。此邏輯單元412自解碼單元220接受一數(shù)據(jù)輸入、一致能信號(hào)(EN-X)與已解碼指令(DI-X),當(dāng)此致能信號(hào)為啟動(dòng)時(shí)允許此輸入數(shù)據(jù)通過(guò)上述邏輯單元412。請(qǐng)參考圖4B至圖4E,每一圖皆描繪一可門(mén)控?zé)o作用的數(shù)值邏輯運(yùn)算單元413的邏輯單元412。于圖4B的第二實(shí)施例,此邏輯單元包含一與門(mén)422,此與門(mén)422置于數(shù)值邏輯運(yùn)算單元423之前,以執(zhí)行阻絕無(wú)作用的數(shù)值邏輯運(yùn)算單元的功能。當(dāng)需要進(jìn)行一數(shù)值或邏輯運(yùn)算時(shí),一致能信號(hào)EN-X將會(huì)自解碼單元220傳送至此門(mén)控?cái)?shù)值邏輯運(yùn)算單元421。當(dāng)此致能信號(hào)EN-X為啟動(dòng)時(shí),此與門(mén)422同時(shí)接收到此致能信號(hào)、已解碼指令與輸入數(shù)據(jù),而允許此輸入資料通過(guò)并傳送至所指定的數(shù)值邏輯運(yùn)算單元423。于此情況下,上述指定的數(shù)值邏輯運(yùn)算單元423被啟動(dòng)并且進(jìn)行所需的數(shù)值或邏輯運(yùn)算。反之,于此時(shí)脈無(wú)須執(zhí)行的數(shù)學(xué)或邏輯運(yùn)算,不提供其相對(duì)應(yīng)的數(shù)值邏輯運(yùn)算單元423啟動(dòng)的致能信號(hào),故可關(guān)閉該數(shù)值邏輯運(yùn)算單元423。此與門(mén)422可阻絕輸入數(shù)據(jù)進(jìn)入該數(shù)值邏輯運(yùn)算單元423,因此該數(shù)值邏輯單元423不會(huì)執(zhí)行任何數(shù)值或邏輯運(yùn)算,因而達(dá)到門(mén)控該無(wú)作用的數(shù)值邏輯運(yùn)算單元423的目的。上述門(mén)控?cái)?shù)值邏輯運(yùn)算單元421的計(jì)算結(jié)果(Output-X)則傳送至圖3B的多工器324。請(qǐng)注意圖4B所示的運(yùn)算過(guò)程僅為合乎本發(fā)明范圍與精神的眾多實(shí)施例其中之一。加入一個(gè)與門(mén)422僅為關(guān)閉無(wú)作用數(shù)值邏輯運(yùn)算單元423的一可行方式,利用其它邏輯單元或組合亦可達(dá)成相同功能,例如,加入一連串與門(mén)以取代單一與門(mén)。相異于傳統(tǒng)設(shè)計(jì)中始終保持所有數(shù)值邏輯單元于啟動(dòng)狀態(tài),本方法根據(jù)欲執(zhí)行的數(shù)值或邏輯運(yùn)算僅啟動(dòng)所需的數(shù)值邏輯單元。此方法可解決傳統(tǒng)微處理器中數(shù)值邏輯電路于切換邏輯所造成的電力耗損與執(zhí)行單元產(chǎn)生無(wú)用的運(yùn)算結(jié)果。據(jù)此,以上述門(mén)控?cái)?shù)值邏輯運(yùn)算單元421所實(shí)現(xiàn)的處理器可以降低電力消耗,并可實(shí)現(xiàn)一低功率的處理器以達(dá)到現(xiàn)今市場(chǎng)的需求。
根據(jù)本發(fā)明第三實(shí)施例,圖4C是為一門(mén)控?cái)?shù)值邏輯運(yùn)算單元431的一方塊示意圖。當(dāng)一致能信號(hào)EN-X為關(guān)閉時(shí),一或門(mén)432亦可用于阻絕輸入數(shù)據(jù)進(jìn)入一數(shù)值邏輯運(yùn)算單元433內(nèi)執(zhí)行運(yùn)算,此或門(mén)432是接收此致能信號(hào)的倒置信號(hào)為輸入之一。唯有此致能信號(hào)為啟動(dòng)時(shí),所需的數(shù)值或邏輯運(yùn)算始能于此數(shù)值邏輯運(yùn)算單元433內(nèi)進(jìn)行,而其計(jì)算結(jié)果將表示為計(jì)算結(jié)果Output-X。
圖4D是為根據(jù)本發(fā)明第四實(shí)施例的一方塊示意圖,此實(shí)施例利用一多工器442組成一門(mén)控?cái)?shù)值邏輯運(yùn)算單元441。此多工器442具有一第一輸入以接收一輸入資料與一第二輸入以接收一已解碼指令。此多工器442另具有一選擇信號(hào)EN-X,其功能為當(dāng)此時(shí)脈周期不需特定數(shù)值邏輯運(yùn)算單元443執(zhí)行數(shù)值或邏輯運(yùn)算時(shí),阻絕上述的輸入資料。當(dāng)此選擇信號(hào)EN-X為啟動(dòng)時(shí),輸入資料將會(huì)通過(guò)此多工器442傳送至數(shù)值邏輯運(yùn)算單元443,其計(jì)算的結(jié)果為計(jì)算結(jié)果Output-X。反之,當(dāng)此選擇信號(hào)EN-X為關(guān)閉,亦即表示此時(shí)脈周期不需使用數(shù)值邏輯運(yùn)算單元443,其將阻絕輸入資料通過(guò)此多工器442而不會(huì)進(jìn)行任何的數(shù)值或邏輯運(yùn)算。
圖4B所示的與門(mén)422,除了可以圖4C的或門(mén)432或圖4D的多工器442取代之外,亦可利用一閂(1atch)452取代上述的與門(mén)422,如圖4E所示。如同上述其它實(shí)施例,圖4E的第五實(shí)施例中此閂452的致能信號(hào)亦可控制輸入數(shù)據(jù)是傳送至數(shù)值邏輯運(yùn)算單元453或由此閂452阻絕。
其它形式的門(mén)控?cái)?shù)值邏輯運(yùn)算單元是示于圖5A至圖5C。圖5A的第六實(shí)施例是描繪一具有一額外時(shí)脈信號(hào)與一時(shí)脈提前致能信號(hào)的門(mén)控?cái)?shù)值邏輯運(yùn)算單元511,其中上述的時(shí)脈提前致能信號(hào)較處理器的時(shí)脈信號(hào)提前一個(gè)時(shí)脈,以便提早一個(gè)時(shí)脈事先決定資料與信號(hào)。此門(mén)控?cái)?shù)值邏輯運(yùn)算單元511接收輸入資料、已解碼指令(DI_X)、時(shí)脈信號(hào)與一時(shí)脈提前致能信號(hào)(Pre_EN-X),并產(chǎn)生一門(mén)控的計(jì)算結(jié)果Output-X至圖3B的多工器324中。此門(mén)控?cái)?shù)值邏輯運(yùn)算單元511內(nèi)的一邏輯單元512是于數(shù)值邏輯運(yùn)算單元513不需啟動(dòng)時(shí)阻絕輸入數(shù)據(jù),而于此數(shù)值邏輯運(yùn)算單元513需執(zhí)行數(shù)值或邏輯運(yùn)算時(shí)保存輸入數(shù)據(jù)。
比較圖5A至圖5C與圖4A至圖4E,所有圖5系列所示的實(shí)施例皆具有避免造成一合成(combinational)邏輯電路的優(yōu)點(diǎn),合成邏輯電路將數(shù)值邏輯運(yùn)算單元開(kāi)啟后立即關(guān)閉。此外,所有圖5系列所示的實(shí)施例亦避免混附轉(zhuǎn)移(spurioustransition)。據(jù)此,當(dāng)可于管線中獲得一提前時(shí)脈時(shí),圖5系列所示的實(shí)施例較圖4系列所示的實(shí)施例為佳。
請(qǐng)參考圖5B所示,其是本發(fā)明第七實(shí)施例的一方塊示意圖。此實(shí)施例的邏輯單元包含一正反器523與一與門(mén)522,其中上述的正反器523、一邏輯單元522與一數(shù)值邏輯運(yùn)算單元524是序列相接。加入正反器523可保留一輸入狀態(tài)。一管線中提前一個(gè)時(shí)脈的時(shí)脈提前致能信號(hào)(Pre_EN-X)與一時(shí)脈信號(hào)(Clock)同時(shí)進(jìn)入此邏輯單元522。此門(mén)控?cái)?shù)值邏輯運(yùn)算單元521將可提前一時(shí)脈將新數(shù)據(jù)送入上述的正反器523中以便指定的數(shù)值邏輯運(yùn)算單元524進(jìn)行所需數(shù)值或邏輯運(yùn)算。此種架構(gòu)允許零個(gè)、一個(gè)或多個(gè)數(shù)值邏輯運(yùn)算單元524于同一時(shí)脈周期中被啟動(dòng),而剩余的數(shù)值邏輯運(yùn)算單元524將被關(guān)閉以便節(jié)省電力。
圖5B所示實(shí)施例的另一實(shí)施例,亦即本發(fā)明第八實(shí)施例的一門(mén)控?cái)?shù)值邏輯運(yùn)算單元531是示于圖5C。一多工器532具有一第一輸入以接收一正反器533輸出的一回饋、一第二輸入以接收一輸入資料與一第三輸入以接收一已解碼指令(DI_X)。此多工器532的選擇信號(hào)是為較管線架構(gòu)提前一個(gè)時(shí)脈的一時(shí)脈提前致能信號(hào)(Pre_EN-X)。上述輸入資料能否進(jìn)入一數(shù)值邏輯運(yùn)算單元534是取決于此時(shí)脈提前致能信號(hào)。此正反器533接收此多工器532的輸出,當(dāng)致能信號(hào)為啟動(dòng)時(shí)將其輸出值傳送至上述的數(shù)值邏輯運(yùn)算單元534進(jìn)行數(shù)值或邏輯運(yùn)算,或當(dāng)致能信號(hào)為關(guān)閉時(shí)阻絕上述輸入資料值進(jìn)入數(shù)值邏輯運(yùn)算單元534執(zhí)行運(yùn)算。
圖4系列與圖5系列所描述的邏輯單元可避免不必要的數(shù)值或邏輯運(yùn)算,因而節(jié)省了顯著數(shù)量的電力。若以一具有五個(gè)數(shù)值邏輯運(yùn)算單元的執(zhí)行單元為例,保留一個(gè)啟動(dòng)的數(shù)值邏輯運(yùn)算單元并關(guān)閉其余四個(gè)數(shù)值邏輯運(yùn)算單元的作法,與傳統(tǒng)處理器中啟動(dòng)五個(gè)數(shù)值邏輯運(yùn)算單元相較的下可節(jié)省八成的電力。若不需任何數(shù)值邏輯運(yùn)算單元執(zhí)行計(jì)算的情況下,還可關(guān)閉全部五個(gè)數(shù)值邏輯運(yùn)算單元。與啟動(dòng)五個(gè)數(shù)值邏輯運(yùn)算單元的情況相較之下,可節(jié)省百分之百的電力。顯然于處理器中實(shí)作門(mén)控?cái)?shù)值邏輯運(yùn)算單元較先前技術(shù)有利。
請(qǐng)參考圖6所示,其描繪本發(fā)明所揭露的執(zhí)行單元運(yùn)作過(guò)程的一流程示意圖。此流程開(kāi)始于步驟610,一執(zhí)行單元中的各數(shù)值邏輯運(yùn)算單元皆自一解碼單元接收一致能信號(hào)與一輸入數(shù)據(jù)以便開(kāi)啟或關(guān)閉各數(shù)值邏輯運(yùn)算單元。于步驟620中判斷各數(shù)值邏輯運(yùn)算單元所接收的致能信號(hào)是否為啟動(dòng)。若為關(guān)閉,則步驟630將阻絕一輸入資料進(jìn)入其相對(duì)的數(shù)值邏輯運(yùn)算單元,故此數(shù)值邏輯運(yùn)算單元并不執(zhí)行任何數(shù)值或邏輯運(yùn)算。然而若致能信號(hào)為啟動(dòng),則于步驟640中,上述的輸入資料將可進(jìn)入其相對(duì)的數(shù)值邏輯運(yùn)算單元,此數(shù)值邏輯運(yùn)算單元執(zhí)行所需的數(shù)值或邏輯運(yùn)算后,將其計(jì)算結(jié)果送入一多工器。于步驟650中,此多工器于多個(gè)數(shù)值邏輯運(yùn)算單元傳送的計(jì)算結(jié)果中進(jìn)行選擇以產(chǎn)生一所需輸出結(jié)果,并將其輸出結(jié)果傳送至存儲(chǔ)器存取單元、暫存器檔案或于適當(dāng)情況下回饋到執(zhí)行單元本身。
雖然前述的實(shí)施例通常是以一與門(mén)阻絕輸入數(shù)據(jù)進(jìn)入無(wú)作用的數(shù)值邏輯運(yùn)算單元或利用一正反器將其計(jì)算結(jié)果進(jìn)行保留,其它合乎本發(fā)明適用范圍與精神的實(shí)施例亦可使用。例如,其它的邏輯單元如一連串的與門(mén),亦可用以避免輸入資料進(jìn)入無(wú)作用的數(shù)值邏輯運(yùn)算單元。同樣地,上述的正反器亦可以其它邏輯電路或邏輯閘組合取而代之。于此情況下,圖4與圖5所揭露的實(shí)施例僅為表達(dá)的便利性,提供門(mén)控?cái)?shù)值邏輯運(yùn)算單元的部分實(shí)施方式。
顯然地,依照上面實(shí)施例的描述,本發(fā)明可能有許多的修正與差異。因此需要在其附加的權(quán)利要求項(xiàng)的范圍內(nèi)加以理解,除了上述詳細(xì)的描述外,本發(fā)明還可以廣泛地在其它的實(shí)施例中施行。上述僅為本發(fā)明的較佳實(shí)施例而已,并非用以限定本發(fā)明的申請(qǐng)專利范圍;凡其它未脫離本發(fā)明所揭示的精神下所完成的等效改變或修飾,均應(yīng)包含在下述申請(qǐng)專利范圍內(nèi)。
權(quán)利要求
1.一處理器,其特征在于,該處理器包含一解碼單元,以產(chǎn)生一致能信號(hào);以及一執(zhí)行單元,以自該解碼單元接收該致能信號(hào),其中該執(zhí)行單元包含復(fù)數(shù)個(gè)門(mén)控?cái)?shù)值邏輯運(yùn)算單元,其中各個(gè)該等門(mén)控?cái)?shù)值邏輯運(yùn)算單元還包含一邏輯單元,以接收一輸入數(shù)據(jù)、一已解碼指令與該致能信號(hào);以及一數(shù)值邏輯運(yùn)算單元,以接收該邏輯單元的輸出值并且將一計(jì)算結(jié)果傳送出該門(mén)控?cái)?shù)值邏輯運(yùn)算單元;以及一多工器,以根據(jù)一選擇信號(hào),自該復(fù)數(shù)個(gè)門(mén)控?cái)?shù)值邏輯運(yùn)算單元的計(jì)算結(jié)果中擇一作為該執(zhí)行單元的一輸出結(jié)果。
2.根據(jù)權(quán)利要求1項(xiàng)所述的處理器,其特征在于,其中該邏輯單元于該數(shù)值邏輯運(yùn)算單元不需啟動(dòng)運(yùn)算時(shí)阻絕該輸入資料,并且于該數(shù)值邏輯運(yùn)算單元需要啟動(dòng)運(yùn)算時(shí)令該輸入資料進(jìn)入該數(shù)值邏輯運(yùn)算單元。
3.根據(jù)權(quán)利要求1項(xiàng)所述的處理器,其特征在于,其中該解碼單元對(duì)已接收的指令進(jìn)行解碼以產(chǎn)生該致能信號(hào)與該已解碼指令。
4.根據(jù)權(quán)利要求1項(xiàng)所述的處理器,其特征在于,其中該解碼單元所產(chǎn)生的該致能信號(hào)是用于決定是否啟動(dòng)該復(fù)數(shù)個(gè)數(shù)值邏輯運(yùn)算單元。
5.根據(jù)權(quán)利要求1項(xiàng)所述的處理器,其特征在于,其中該邏輯單元包含一與門(mén)以接收該輸入數(shù)據(jù)、該已解碼指令與該致能信號(hào),該與門(mén)的輸出值是輸出至該數(shù)值邏輯運(yùn)算單元。
6.根據(jù)權(quán)利要求1項(xiàng)所述的處理器,其特征在于,其中該邏輯單元包含一或門(mén)以接收該輸入數(shù)據(jù)、該已解碼指令與該致能信號(hào)的倒置信號(hào),該或門(mén)的輸出值是輸出至該數(shù)值邏輯運(yùn)算單元。
7.根據(jù)權(quán)利要求1項(xiàng)所述的處理器,其特征在于,其中該邏輯單元包含一多工器,該多工器是連接該輸入資料以作為一第一輸入、連接該已解碼資料作為一第二輸入以及該致能信號(hào)作為一選擇信號(hào),該多工器的輸出值是輸出至該數(shù)值邏輯運(yùn)算單元。
8.根據(jù)權(quán)利要求1項(xiàng)所述的處理器,其特征在于,其中該邏輯單元包含一閂以接收該輸入數(shù)據(jù)、該已解碼指令與該致能信號(hào)的倒置信號(hào),該閂的輸出值是輸出至該數(shù)值邏輯運(yùn)算單元。
9.一處理器,其特征在于,該處理器包含一解碼單元,以產(chǎn)生一時(shí)脈提前致能信號(hào);以及一執(zhí)行單元,以自該解碼單元接收該時(shí)脈提前致能信號(hào),其中該執(zhí)行單元包含復(fù)數(shù)個(gè)門(mén)控?cái)?shù)值邏輯運(yùn)算單元,其中各個(gè)該等門(mén)控?cái)?shù)值邏輯運(yùn)算單元還包含一邏輯單元,以接收一輸入數(shù)據(jù)、一已解碼指令與該時(shí)脈提前致能信號(hào);以及一數(shù)值邏輯運(yùn)算單元,以接收該邏輯單元的輸出值并且將一計(jì)算結(jié)果傳送出該門(mén)控?cái)?shù)值邏輯運(yùn)算單元;以及一第一多工器,以根據(jù)一選擇信號(hào),自該復(fù)數(shù)個(gè)門(mén)控?cái)?shù)值邏輯運(yùn)算單元的計(jì)算結(jié)果中擇一作為該執(zhí)行單元的一輸出結(jié)果。
10.根據(jù)權(quán)利要求9項(xiàng)所述的處理器,其特征在于,其中該邏輯單元于該數(shù)值邏輯運(yùn)算單元不需啟動(dòng)運(yùn)算時(shí)阻絕該輸入資料,并且于該數(shù)值邏輯運(yùn)算單元需要啟動(dòng)運(yùn)算時(shí)令該輸入資料進(jìn)入該數(shù)值邏輯運(yùn)算單元。
11.根據(jù)權(quán)利要求9項(xiàng)所述的處理器,其特征在于,其中該解碼單元對(duì)已接受的指令進(jìn)行解碼以產(chǎn)生該致能信號(hào)與該已解碼指令。
12.根據(jù)權(quán)利要求9項(xiàng)所述的處理器,其特征在于,其中該解碼單元所產(chǎn)生的該時(shí)脈提前致能信號(hào)是用于決定是否啟動(dòng)該等數(shù)值邏輯運(yùn)算單元,且該時(shí)脈提前致能信號(hào)較原時(shí)脈提前一周期。
13.根據(jù)權(quán)利要求9項(xiàng)所述的處理器,其特征在于,其中該邏輯單元包含一與門(mén),以接收一時(shí)脈信號(hào)與該時(shí)脈提前致能信號(hào),并傳送一輸出;以及一正反器,以接收該輸入數(shù)據(jù)、該已解碼指令與該與門(mén)的輸出,該正反器的輸出值是輸出至該數(shù)值邏輯運(yùn)算單元。
14.根據(jù)權(quán)利要求9項(xiàng)所述的處理器,其特征在于,其中該邏輯單元包含一第二多工器,以接收一反饋輸出信號(hào)作為一第一輸入、接收該輸入資料作為一第二輸入、接收該已解碼指令作為一第三輸入與該時(shí)脈提前致能信號(hào)作為一選擇信號(hào),并產(chǎn)生一輸出;以及一正反器,以接收該第二多工器的輸出與一時(shí)脈信號(hào),該正反器的輸出值是輸出至該數(shù)值邏輯運(yùn)算單元;其中該第二多工器接收的該反饋輸出信號(hào)是為該正反器的該輸出值的反饋信號(hào)。
15.一種于處理器中減少電力消耗的方法,其特征在于,包含自一解碼單元分別接收一致能信號(hào)至一執(zhí)行單元的每一個(gè)數(shù)值邏輯運(yùn)算單元,以決定各個(gè)該數(shù)值邏輯運(yùn)算單元的開(kāi)啟或關(guān)閉;判斷各個(gè)該數(shù)值邏輯運(yùn)算單元對(duì)應(yīng)的該致能信號(hào)是否為開(kāi)啟;若該數(shù)值單元對(duì)應(yīng)的該致能信號(hào)為關(guān)閉,阻絕一輸入資料進(jìn)入該數(shù)值邏輯運(yùn)算單元;并且若該數(shù)值單元對(duì)應(yīng)的該致能信號(hào)為開(kāi)啟,允許該輸入資料進(jìn)入該數(shù)值邏輯運(yùn)算單元,以于其中進(jìn)行所欲的數(shù)值或邏輯運(yùn)算;以及根據(jù)一選擇信號(hào)選擇該等復(fù)數(shù)個(gè)數(shù)值邏輯運(yùn)算單元的計(jì)算結(jié)果中一者作為該執(zhí)行單元的一輸出結(jié)果。
全文摘要
本發(fā)明是關(guān)于一處理器中透過(guò)關(guān)閉無(wú)作用數(shù)值邏輯單元以減少電力消耗的方法與裝置。一典型處理器的執(zhí)行單元具有復(fù)數(shù)個(gè)數(shù)值邏輯運(yùn)算單元以執(zhí)行數(shù)值或邏輯運(yùn)算。各數(shù)值邏輯單元中的邏輯單元是用于控制該數(shù)值邏輯運(yùn)算單元是否需要啟動(dòng)以執(zhí)行指示的數(shù)值或邏輯運(yùn)算。據(jù)此,僅有必要的數(shù)值邏輯運(yùn)算單元被啟動(dòng)以執(zhí)行運(yùn)算,進(jìn)而避免其余的數(shù)值邏輯運(yùn)算單元接收輸入資料。故此處理器中所有無(wú)作用的數(shù)值邏輯運(yùn)算單元皆可被關(guān)閉以節(jié)省電力消耗。
文檔編號(hào)G06F1/32GK1838031SQ200610073618
公開(kāi)日2006年9月27日 申請(qǐng)日期2006年4月13日 優(yōu)先權(quán)日2005年4月13日
發(fā)明者李察L·鄧肯 申請(qǐng)人:威盛電子股份有限公司
網(wǎng)友詢問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
凭祥市| 鞍山市| 北票市| 平昌县| 康保县| 金山区| 张家川| 潜山县| 盐源县| 离岛区| 鸡西市| 寻乌县| 天津市| 宣恩县| 昌吉市| 潞西市| 新邵县| 海原县| 张北县| 荆门市| 塘沽区| 台前县| 文安县| 阳新县| 天台县| 韶山市| 汝州市| 青川县| 志丹县| 威远县| 左权县| 昌宁县| 长武县| 松原市| 东乌珠穆沁旗| 新龙县| 高安市| 锡林郭勒盟| 汨罗市| 安阳市| 乌拉特后旗|