專利名稱:減少能量消耗的總線仲裁控制器的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及用于減少能量消耗的非高阻抗設(shè)備和方法。
背景技術(shù):
存在著對于減少靜態(tài)設(shè)備、尤其是移動(dòng)設(shè)備的功耗的需要。移動(dòng) 設(shè)備可以包括例如個(gè)人數(shù)據(jù)裝置、蜂窩電話、無線電臺(tái)、尋呼機(jī)、筆 記本電腦等。移動(dòng)設(shè)備的功耗非常關(guān)鍵,因?yàn)樗鼈兺ǔ1患俣軌蛟?再次充電之前相對長時(shí)間地進(jìn)行工作。
典型的設(shè)備具有多個(gè)電路,諸如處理器、控制器、存儲(chǔ)單元、外 圍設(shè)備等。典型地,許多電路通過中央總線彼此互連。
當(dāng)多個(gè)電路連接到相同總線時(shí),根據(jù)媒體訪問控制方案,每一電 路都可以訪問總線。允許訪問總線的設(shè)備可以寫入通過總線傳播的特
定電路寫值(writing value)。
需要確保電路寫值沿著總線正確地傳播且不受到其他電路的輸出 的影響。為了滿足該需要,開發(fā)出了各種技術(shù)。這些技術(shù)包括"返回 零"以及"返回一"策略,其迫使電路在其終結(jié)其寫會(huì)話時(shí)提供零或 一的值。
已知總線狀態(tài)的頻繁變化會(huì)消耗能量??偩€狀態(tài)的每次變化都需 要寫電路對各種總線電容進(jìn)行充電(或放電)。返回零和返回一策略 都涉及到多次總線變化。
高阻抗結(jié)構(gòu)在空閑時(shí)期允許電路進(jìn)入高阻抗?fàn)顟B(tài),而不影響總線
狀態(tài)。高阻抗設(shè)備具有各種缺點(diǎn),諸如較大的硅軌跡(silicon footprint)、 測試問題、中繼器插入的引入難點(diǎn)等。某些缺點(diǎn)在Cheung等人的美國 專利申請2002/0166074中進(jìn)行了說明。
需要提供一種有效的方式來降低集成電路的能量消耗。
發(fā)明內(nèi)容
一種用于減少非高阻抗設(shè)備的能量消耗的方法和裝置,如權(quán)利要 求中所述。
通過下面的詳細(xì)描述并結(jié)合附圖,將更全面地理解和認(rèn)識(shí)本發(fā)明, 在附圖中
圖1是根據(jù)本發(fā)明實(shí)施例的設(shè)備的示意圖2是根據(jù)本發(fā)明實(shí)施例的設(shè)備的示意圖3是根據(jù)本發(fā)明另一實(shí)施例的設(shè)備的示意圖4是根據(jù)本發(fā)明實(shí)施例的示例寫操作的時(shí)序圖;以及
圖5是根據(jù)本發(fā)明實(shí)施例的用于減少能量消耗的方法的流程圖。
具體實(shí)施例方式
下面的描述指的是非高阻抗設(shè)備,其不允許高阻抗?fàn)顟B(tài)。因此, 連接到總線的元件必須提供有效值并且不允許通過提供高阻抗輸出來 虛擬地?cái)嚅_與總線的連接。便利地,特定位的有效值可以是高或低, 但這并非必需。
通過限制總線狀態(tài)的變化的數(shù)量,可以降低能量消耗,而且,在 某些情況下,可以急劇降低能量消耗。能量減少的量通常響應(yīng)于各種 參數(shù)、設(shè)備結(jié)構(gòu)以及在設(shè)備總線上傳送數(shù)據(jù)的頻率。
圖1圖示說明了根據(jù)本發(fā)明實(shí)施例的設(shè)備10"。圖2圖示說明了
根據(jù)本發(fā)明實(shí)施例的設(shè)備10。圖3圖示說明了根據(jù)本發(fā)明實(shí)施例的設(shè)
備10,。
設(shè)備IO"包括多個(gè)電路,諸如電路30"和50",每一電路都具有 電路控制邏輯。電路30"和50"通過總線130和150連接到第一邏輯 100"。第一邏輯IOO"通過第一總線120連接到第一電路20。30"和50" 中的每個(gè)電路都具有相應(yīng)的電路訪問邏輯31"和51",其適合于向第一 邏輯IOO"提供電路寫值。在電路寫時(shí)期期間以及電路寫時(shí)期之后的空 閑時(shí)期期間,提供電路寫值。當(dāng)允許另一電路寫時(shí),該空閑時(shí)期結(jié)束。 電路30"和50"中的每個(gè)都在允許另一電路寫時(shí)提供缺省值。
第一邏輯IOO"適合于響應(yīng)于兩個(gè)連續(xù)電路寫值之間的變化而改 變第一總線120的狀態(tài)。注意,電路訪問邏輯31"和51"中的每個(gè)都接 收全局信號(hào),其指示另一電路是否正在向第一邏輯100"寫。
注意,電路寫值可以包括多個(gè)信號(hào)。
發(fā)明人在流水線環(huán)境中應(yīng)用了公開的方法和設(shè)備,其中,每幾個(gè) 時(shí)鐘周期出現(xiàn)一次典型寫操作。根據(jù)本發(fā)明的其他實(shí)施例,設(shè)備和方 法可以應(yīng)用于包括零等待狀態(tài)環(huán)境的其他環(huán)境中。
圖2的設(shè)備10與圖3的設(shè)備10'的不同之處在于具有不同的電路 缺省值(以"l"串代替"O"串),并且具有的第一邏輯包括與(AND) 門而不是設(shè)備10'的或非(NOR)門。
設(shè)備10包括第一電路20和標(biāo)為30和50的多個(gè)電路。典型地, 設(shè)備包括兩個(gè)以上的電路30和50,但是為了解釋方便,只顯示了兩個(gè) 電路30和50。便利地,第一電路20是處理器,其可以是數(shù)字信號(hào)處 理器、通用處理器或其組合。便利地,多個(gè)電路30和50可以是存儲(chǔ) 單元、外圍設(shè)備、存儲(chǔ)訪問控制器等。
便利地,第一電路20控制多個(gè)電路30和50對其的訪問。有多種 方式來控制該訪問。例如,第一電路20可以使用基于地址的訪問控制, 其中,為了便于解釋,第一電路20發(fā)送可通過地址總線或圖2中未示 出的其他總線進(jìn)行訪問的電路(30或50)的地址。注意,也可以使用 其他訪問控制方案。
多個(gè)電路30和50通過電路訪問單元31和51以及通過多個(gè)第二 總線130和150連接到第一邏輯100。第一邏輯IOO通過第一總線120 連接到第一電路20。
便利地,每個(gè)電路訪問邏輯包括在相關(guān)聯(lián)的電路中,但不是必需 這樣。
當(dāng)與電路訪問邏輯相關(guān)聯(lián)的電路被允許寫時(shí),每個(gè)電路訪問邏輯 適合于向第一邏輯100提供電路寫值。當(dāng)另一電路被允許寫時(shí),每個(gè) 電路訪問邏輯進(jìn)一步適合于提供缺省值。
第一邏輯100適合于響應(yīng)于兩個(gè)連續(xù)電路寫值之間的變化而改變 第一總線120的狀態(tài)。
根據(jù)本發(fā)明實(shí)施例,電路訪問邏輯31和51中的每一個(gè)都響應(yīng)于 全局信號(hào)101,全局信號(hào)101表示多個(gè)電路30、 50中的至少一個(gè)電路 的寫活動(dòng)性。
全局信號(hào)101由第一邏輯100生成,第一邏輯100通過或(OR) 門102對每一電路寫信號(hào)(33和53)施加或(OR)操作,其表示允許 特定電路向第一邏輯100寫。
根據(jù)本發(fā)明實(shí)施例,每個(gè)電路所提供的缺省值是一 ("1")的串。
圖2的第一邏輯100具有與(AND)門陣列,總的標(biāo)為104,對第二總 線的每一位進(jìn)行邏輯與操作,第二總線同與門104并行連接。因此, 第一總線的每一位上的值是所有第二總線的相應(yīng)位的值的與操作的結(jié) 果。
注意,電路訪問邏輯,諸如電路訪問邏輯31、 31'、 31"、 51、 51' 和51",是非高阻抗邏輯。它們不被允許進(jìn)入高阻抗?fàn)顟B(tài)。每個(gè)電路訪 問邏輯必須提供有效值,不管是電路寫值還是缺省值。
通常,可以被視為高阻抗的阻抗是在幾十萬歐姆或更高范圍內(nèi)的。 注意,特定設(shè)備的高阻抗可以響應(yīng)于連接到該設(shè)備的總線的阻抗以及 連接到該總線的其他設(shè)備的阻抗而定義。在高阻抗?fàn)顟B(tài),設(shè)備可以被 視為虛擬地?cái)鄮耘c其他設(shè)備的連接。
根據(jù)本發(fā)明另一實(shí)施例,每個(gè)電路所提供的缺省值是零("0") 的串。圖3的第一邏輯100'具有或非(NOR)門陣列,總的標(biāo)為104', 對第二總線的每一位進(jìn)行邏輯或非操作,第二總線同或非門104'并行 連接。因此,第一總線的每一位上的值是所有第二總線的相應(yīng)位的值 的或非操作的結(jié)果。
圖2圖示說明了電路訪問邏輯31,其包括觸發(fā)器32,觸發(fā)器32 具有多個(gè)輸入用來從云霧框36所表示的各種電路邏輯接收由電路30 寫入的信息。觸發(fā)器32具有設(shè)置控制輸入,用于設(shè)置觸發(fā)器32。如果 沒有設(shè)置觸發(fā)器,其提供由邏輯36提供的寫值。這些寫值從第一邏輯 100發(fā)送到第二總線130。
電路訪問邏輯31進(jìn)一步包括與門34,其接收全局信號(hào)101和反 轉(zhuǎn)的電路寫信號(hào)31作為輸入。與門43的輸出連接到觸發(fā)器32的設(shè)置 控制輸入,從而在允許另一電路(諸如50)時(shí)或在重置設(shè)備之后設(shè)置 觸發(fā)器32 (輸出"1"的串)。
電路50的電路訪問邏輯51類似于電路訪問邏輯31。其包括觸發(fā) 器52和與門54,與門54接收全局信號(hào)101和反轉(zhuǎn)的電路信號(hào)51。
參看圖3,第一邏輯100'包括或非門104',每一電路訪問邏輯31 和51都包括觸發(fā)器32和52,其相應(yīng)地被重置以提供缺省值零。
圖4是根據(jù)本發(fā)明實(shí)施例的示例寫操作的時(shí)序圖。
為了解釋的簡便,下面的圖涉及圖2的設(shè)備10。
下面的符號(hào)表示以下信號(hào)CLK 501表示時(shí)鐘信號(hào),DATA一C30 530表示電路30的寫值,DATA—C50 550表示電路50的寫值, DATA—BUS—120 520表示第一總線120上的數(shù)據(jù),WRITE—C30 33表 示電路30的電路寫信號(hào),WRITE—C50 53表示電路50的電路寫信號(hào), GS 101是全局信號(hào)。
順序時(shí)鐘周期標(biāo)為CS1 ~ CSIO。
在CS1,設(shè)備10被重置,電路30和50提供缺省值,即"1"的串。
在CS2,電路30被允許寫。相應(yīng)地,在CS2的開始,聲明(assert) WRITE—C30 33。還聲明全局信號(hào)101。在CS2的中間,電路30向第 一邏輯寫數(shù)據(jù),如DATA—C30 530中的變化所示。假設(shè)該數(shù)據(jù)(也被 稱為電路寫值)包括第一串,具有標(biāo)為V1的第一串值。
在CS2的結(jié)束處,電路30結(jié)束其寫操作。因此,在CS2之后, 否定WRITE一C30 33和全局信號(hào)101,電路30繼續(xù)輸出第一串。第一 總線120上的數(shù)據(jù)沒有變化。從CS2之后幵始且在電路50被允許寫時(shí)
結(jié)束的時(shí)期在電路30看來是空閑時(shí)期。
在幾個(gè)時(shí)鐘周期之后,例如,在三個(gè)時(shí)鐘周期之后,在CS6,電
路50被允許寫。相應(yīng)地,WRITE—C50 53被聲明,全局信號(hào)101被聲 明,DATA—C30 530等于"1"的串,而DATA—C50 550等于第二串, 該串具有第一值VI。因?yàn)榈谝缓偷诙哂邢嗤闹礦I,第一總線 120的狀態(tài)沒有變化。
在CS6的結(jié)束處,電路50結(jié)束其寫操作。因此,在CS6之后, 否定WRITE一C50 53和全局信號(hào)101,電路50繼續(xù)輸出第二串,且第 一總線120上的數(shù)據(jù)沒有變化。從CS6之后開始且在另一電路(或者 甚至就是電路50)被允許寫時(shí)結(jié)束的時(shí)期在電路50看來是空閑時(shí)期。
在幾個(gè)時(shí)鐘周期之后,例如,在三個(gè)時(shí)鐘周期之后,在CSIO,電 路30被允許寫第三串,該串具有第三值V2。相應(yīng)地,第一總線120 的狀態(tài)發(fā)生變化。
注意,空閑時(shí)期可以被定義為沒有任何一個(gè)設(shè)備被允許向第一邏 輯IOO寫的時(shí)期。
圖5是根據(jù)本發(fā)明實(shí)施例,用于改變第一總線的狀態(tài)的方法300 的流程圖。
方法300開始于步驟310,在電路寫時(shí)期期間以及空閑時(shí)期期間, 允許非高阻抗電路向第一邏輯提供電路寫值,其中的空閑時(shí)期在電路 寫時(shí)期之后且在允許另一電路寫時(shí)結(jié)束。非高阻抗電路不進(jìn)入高阻抗 狀態(tài)。
步驟310通常包括通過第二總線向第一邏輯實(shí)際提供電路寫值。 便利地, 一旦允許電路訪問第一邏輯,其聲明電路寫信號(hào),表示電路
正在向第一邏輯寫或者將要向第一邏輯寫。
步驟310之后是步驟320,當(dāng)允許另一電路訪問第一邏輯時(shí),允
許電路提供缺省值。
步驟320之后是步驟330,響應(yīng)于兩個(gè)連續(xù)電路寫值之間的變化 而改變第一總線的狀態(tài)。每個(gè)電路包括非高阻抗電路訪問邏輯。注意, 步驟330可以與步驟310和320并行發(fā)生。
便利地,方法300包括生成(步驟340)全局信號(hào),全局信號(hào)表 示多個(gè)電路中的至少一個(gè)電路的寫活動(dòng)性。根據(jù)本發(fā)明實(shí)施例,這個(gè) 全局信號(hào)響應(yīng)于被可以訪問第一邏輯的任意一個(gè)電路聲明的電路寫信 號(hào)。
便利地,方法300包括初步步驟(未示出),第一電路控制對第 一邏輯的訪問。
便利地,缺省值是"l"的串,方法300包括通過第一邏輯進(jìn)行一 系列與操作,以便確定第一總線的狀態(tài)。
便利地,缺省值是"O"的串,方法300包括通過第一邏輯進(jìn)行一 系列或非操作,以便確定第一總線的狀態(tài)。
便利地,步驟320包括設(shè)置或重置電路訪問邏輯的電路。便利地, 該電路是觸發(fā)器,適合于將從電路提供的數(shù)據(jù)旁通(bypass)到第一邏 輯。
注意,圖1-3圖示說明了包括中央第一邏輯的設(shè)備,中央第一邏 輯連接在多個(gè)第二總線與第一總線之間。注意,本發(fā)明適用于包括多 個(gè)第一邏輯的更復(fù)雜的結(jié)構(gòu),其中的多個(gè)第一邏輯的等級相同、或者
屬于多個(gè)等級。
進(jìn)一步注意,第一電路還可以包括電路訪問邏輯,可以在例如訪 問總線,尤其是另一電路控制對第一邏輯的訪問時(shí)使用。在此情況下, 第一電路可以連接到類似于第一邏輯的另一邏輯,另一邏輯控制對其 他總線和設(shè)備的訪問。
本領(lǐng)域普通技術(shù)人員將顯然可以做出這里所述內(nèi)容的變形、修改 和其他實(shí)現(xiàn),而不背離本發(fā)明所要求保護(hù)的精神和范圍。因此,本發(fā) 明并不由前面的說明性描述來限定,而是由所附權(quán)利要求的精神和范 圍來限定。
權(quán)利要求
1.一種設(shè)備(10、10’、10”),包括第一電路(20)、第一總線(120)、和多個(gè)電路(30、30’、30”、50、50’、50”);其特征在于,包括第一邏輯(100、100’、100”),其耦合到第一總線(120),并且耦合到與多個(gè)電路(30、30’、30”、50、50’、50”)相關(guān)聯(lián)的多個(gè)非高阻抗電路訪問邏輯(31、31’、31”、51、51’、51”);其中,每一電路訪問邏輯(31、31’、31”、51、51’、51”)適于(i)在電路寫時(shí)期期間和空閑時(shí)期期間,向第一邏輯(100、100’、100”)提供電路寫值,其中的空閑時(shí)期在電路寫時(shí)期之后且當(dāng)允許另一電路寫時(shí)結(jié)束;以及(ii)當(dāng)允許另一電路寫時(shí),提供缺省值;而且其中,第一邏輯(100、100’、100”)適于響應(yīng)于兩個(gè)連續(xù)電路寫值之間的變化而改變第一總線(120)的狀態(tài)。
2. 根據(jù)權(quán)利要求l的設(shè)備(10、 10'、 10"),其中所述電路訪問 邏輯(31、 31,、 31"、 51、 51,、 51")響應(yīng)于全局信號(hào)(101),全局 信號(hào)(101)表示多個(gè)電路(30、 30,、 30"、 50、 50'、 50")中的至少 一個(gè)電路的寫活動(dòng)性。
3. 根據(jù)權(quán)利要求l的設(shè)備(10、 10'、 10"),其中所述第一電路 (20)適于控制多個(gè)電路(30、 30,、 30"、 50、 50,、 50")對第一邏輯(100、 100,、 100")的訪問。
4. 根據(jù)權(quán)利要求1的設(shè)備(10),其中所述缺省值是"1"的串, 并且其中所述第一邏輯(100)包括耦合到第一總線(120)的多個(gè)與 門(104)。
5. 根據(jù)權(quán)利要求1的設(shè)備(10),其中所述缺省值是"1"的串, 并且其中所述電路訪問邏輯(31、 51)包括在電路缺省時(shí)期期間被設(shè) 置的邏輯電路(32、 52)。
6. 根據(jù)權(quán)利要求1的設(shè)備(IO'),其中所述缺省值是"0"的串, 并且其中所述第一邏輯(IOO')包括耦合到第一總線(120)的多個(gè)或 非門(104,)。
7. 根據(jù)權(quán)利要求1的設(shè)備(IO'),其中所述缺省值是"0"的串, 并且其中所述電路訪問邏輯(31'、 51')包括被重置以提供缺省值的邏 輯電路(32,、 52,)。
8. 根據(jù)權(quán)利要求1的設(shè)備(IO、 10'),其中每一電路訪問邏輯(31、 31,、 51、 51,)包括具有兩個(gè)輸入和一個(gè)輸出的第一與門(34、 34,、 54、 54'),并且其中所述第一與門(34、 54)當(dāng)全局信號(hào)(101)指示 另一電路正在寫和/或特定電路沒有寫時(shí)發(fā)送控制信號(hào)。
9. 根據(jù)權(quán)利要求l的設(shè)備(10、 10'),其中每一電路(30、 30'、 50、 50')適于生成電路寫信號(hào)(33、 33'、 53、 53'),該電路寫信號(hào)(33、 33'、 53、 53')表示電路執(zhí)行的寫序列。
10. 根據(jù)權(quán)利要求1的設(shè)備(10、 10'),其中電路訪問邏輯(31、 31,、 51、 51,)包括觸發(fā)器(32、 52),其具有多個(gè)輸入,用于接收要由電路(30、 30'、 50、 50,)寫入的信息,還具有控制輸入,用于有選擇地迫使觸發(fā) 器(32、 32,、 52、 52,)輸出缺省值或輸出電路寫值;至少一個(gè)邏輯門(34、 34,、 54、 54,),耦合到觸發(fā)器的控制輸入, 適于接收有關(guān)電路的寫狀態(tài)的指示(33、 53)以及其他電路的寫狀態(tài) 的指示(101),并且作為響應(yīng),確定發(fā)送到控制輸入的控制信號(hào)。
11. 一種用于改變第一總線的狀態(tài)的方法(300),該方法包括允 許(320)電路當(dāng)另一電路被允許訪問第一邏輯時(shí)提供缺省值; 其特征在于,包括在電路寫時(shí)期期間和空閑時(shí)期期間,允許(310) 非高阻抗電路向第一邏輯提供電路寫值,其中的空閑時(shí)期在電路寫時(shí) 期之后且當(dāng)允許另一電路寫時(shí)結(jié)束;以及響應(yīng)于兩個(gè)連續(xù)電路寫值之間的變化而改變(330)第一總線的狀 態(tài);其中,每一電路包括非三態(tài)電路訪問邏輯。
12. 根據(jù)權(quán)利要求ll的方法(300),進(jìn)一步包括生成(340)全 局信號(hào),該全局信號(hào)表示多個(gè)電路中的至少一個(gè)電路的寫活動(dòng)性。
13. 根據(jù)權(quán)利要求11的方法(300),進(jìn)一步包括由第一電路控 制對第一邏輯的訪問。
14. 根據(jù)權(quán)利要求11的方法(300),其中所述缺省值是"1"的 串,并且其中所述方法(300)包括進(jìn)行一系列與操作,以便確定第一 總線的狀態(tài)。
15. 根據(jù)權(quán)利要求11的方法(300),其中所述缺省值是"0"的 串,并且其中所述方法(300)包括進(jìn)行一系列或非操作,以便確定第 一總線的狀態(tài)。
16. 根據(jù)權(quán)利要求11的方法(300),其中所述的允許電路提供 缺省值的步驟包括設(shè)置或重置電路訪問邏輯的電路。
17. 根據(jù)權(quán)利要求16的方法(300),其中所述電路是觸發(fā)器, 其還適于將從電路提供的數(shù)據(jù)旁通到第一邏輯。
全文摘要
一種設(shè)備,包括第一總線,連接在第一邏輯和第一電路之間;第二總線的組,連接在第一邏輯和與多個(gè)電路相關(guān)聯(lián)的多個(gè)非高阻抗電路訪問邏輯之間;其中,每一電路訪問邏輯適于(i)在電路寫時(shí)期期間和空閑時(shí)期期間,向第一邏輯提供電路寫值,其中的空閑時(shí)期在電路寫時(shí)期之后且當(dāng)允許另一電路寫時(shí)結(jié)束;以及(ii)當(dāng)允許另一電路寫時(shí),提供缺省值;而且其中,第一邏輯適于響應(yīng)于兩個(gè)連續(xù)電路寫值之間的變化而改變第一總線的狀態(tài)。
文檔編號(hào)H03K19/00GK101111829SQ200580047441
公開日2008年1月23日 申請日期2005年1月31日 優(yōu)先權(quán)日2005年1月31日
發(fā)明者埃坦·茲莫拉, 康斯坦丁·戈丁, 摩西·安舍爾, 諾昂·西旺, 雅各布·埃弗拉特, 雅各布·拉比諾維奇, 齊夫·扎姆斯基 申請人:飛思卡爾半導(dǎo)體公司