專利名稱:極低功耗的偽同步小尺寸寄存器設計及其實現(xiàn)方法
技術領域:
本發(fā)明總體涉及用于降低功率消耗并提高跨時鐘域邊界的數(shù)據(jù) 傳輸?shù)目煽啃浴?br>
背景技術:
由于集成電路生產(chǎn)成本的降低,以及可用組件種類的增加,目前 數(shù)字電路和組件在電子產(chǎn)品和系統(tǒng)中隨處可見。幾乎所有的數(shù)字系統(tǒng)都包括用于存儲信息的電路,數(shù)字系統(tǒng)中的這種信息通常被稱作位(bit)。存在大量可提供位存儲功能的電路配 置。 一類常用的用于存儲位的電路是通常被稱為觸發(fā)器(flip-flop)的 雙穩(wěn)態(tài)多諧振蕩器。通過將用于存儲位的觸發(fā)器、鎖存器、存儲位 (storage bits),或具有類似名稱的電路組合在被稱作寄存器的單元 中。存在許多不同的存儲器電路的實現(xiàn)方法。 一些觸發(fā)器可以簡單地 以現(xiàn)有數(shù)據(jù)為依據(jù)執(zhí)行操作,如置位-復位觸發(fā)器。其它觸發(fā)器是受時 鐘控制的,如鐘控D-型觸發(fā)器。對鐘控觸發(fā)器進行設計,使得觸發(fā)器 的輸出在時鐘信號斷言(assertion)之前不反應觸發(fā)器的數(shù)據(jù)輸入。 數(shù)字電路設計領域的技術人員將認識到,邊沿觸發(fā)和電平觸發(fā)電路均 可用于存儲比特。鐘控觸發(fā)器特別適用于同步系統(tǒng)。在同步系統(tǒng)中,數(shù)字系統(tǒng)的狀態(tài)的變化與時鐘信號有關。換言之, 觸發(fā)器、鎖存器、寄存器位、以及類似的存儲器電路以針對于時鐘信 號不同狀態(tài)的確定的時序關系改變它們的輸出。例如,時鐘信號本質 上是整個系統(tǒng)中全部電路所使用的參考,或者更明確地說,時鐘域內 的參考,系統(tǒng)中的電路使用時鐘信號來了解比如,輸入數(shù)據(jù)何時有效, 以及新數(shù)據(jù)何時應出現(xiàn)在輸出端。已經(jīng)認識到數(shù)字系統(tǒng)同步操作的優(yōu)勢和缺陷。例如同步操作以及建立和保持時間的恰當設計避免了亞穩(wěn)態(tài)問題。另一方面,高頻信號 可能必須通過較長和負載極高的路徑才能被運輸?shù)郊呻娐返脑S多部 分,而所述路徑可能引起時序和/或功耗問題。由于在時鐘域內迅速并無非均勻時延地將時鐘運輸至不同的目 的地在同步系統(tǒng)中通常十分重要,因此大量研究試圖提供優(yōu)化的時鐘分配路徑。這些時鐘分配路徑有時稱作時鐘樹(clock tree)。不這樣仔 細地關注時鐘分配,就可能出現(xiàn)能夠導致計算錯誤或將錯誤數(shù)據(jù)鎖存 于寄存器存儲位的非期望的紊亂情形。即使設計者關注時鐘域內時鐘信號的分配,在時鐘域之間傳輸數(shù) 據(jù)方面仍存在問題。由于不同的時鐘域相互之間通常是異步的,因此 為了恰當?shù)剡\行具有多個時鐘域的數(shù)字系統(tǒng),必須要克服特殊的時序 問題。在具有多個時鐘域的數(shù)字系統(tǒng)中,期望減少由產(chǎn)生并向大量存儲 器電路運輸連續(xù)時鐘信號所消耗的功率;并跨時鐘域邊界可靠地傳輸 數(shù)據(jù)。發(fā)明內容所需要的是,用于降低由產(chǎn)生并向大量存儲器電路運輸連續(xù)時鐘 信號所消耗的功率;以及用于跨時鐘域邊界可靠地傳輸數(shù)據(jù)的方法和 裝置。簡言之,提供了用于實現(xiàn)并以降低了的功率消耗和減少了的復雜 度操作一個或更多偽同步寄存器,以在時鐘域間傳輸數(shù)據(jù)的方法和裝 置。本發(fā)明的各實施例用選通脈沖信號代替?zhèn)鹘y(tǒng)的連續(xù)時鐘方案,所 述選通脈沖信號只有在將要對一個或多個偽同步寄存器進行數(shù)據(jù)傳輸 操作時才會產(chǎn)生。產(chǎn)生選通脈沖信號,使其持續(xù)時間等于時鐘信號的 一個完整周期,從而定義其中存在至少一個偽同步寄存器的時鐘域。在本發(fā)明的另一方案中,向具有受選通脈沖控制的偽同步寄存器 的集成電路提供符合I2C協(xié)議的數(shù)據(jù)位和時鐘信號。
圖l是一幅時序圖,示出了時鐘信號、數(shù)據(jù)輸入信號、傳統(tǒng)寄存器位的輸出、以及根據(jù)本發(fā)明的時鐘選通脈沖和寄存器位輸出;圖2是同I2C總線相連的說明用的數(shù)字系統(tǒng)的方框圖,并還示出了 從控制狀態(tài)機接收數(shù)據(jù)選通脈沖的寄存器組。
具體實施方式
總體而言,本發(fā)明涉及通過減少發(fā)生于偽同步寄存器中的時鐘切 換數(shù)量來降低功率消耗。此處對"一個實施例","一實施例",或類似表述的引用意味著, 結合該實施例予以描述的特定的特征、結構、操作或特性包含于本發(fā) 明的至少一實施例中。因此,這里出現(xiàn)的此類短語或表述未必全部指 同一實施例。此外,可以在一個或多個實施例中以任何合適的方式將 各種特定的特征、結構、操作或特性加以組合。此處,可以替換使用術語集成電路、IC、芯片(chip)、裸片(die)、 半導體器件、單片集成電路、微電子設備、以及類似的變形。對于這 些微電子設備,信號可以通過物理、導電連接在它們和包括但不局限 于其它微電子設備的其它電路元件之間耦合。連接點有時被稱作輸入、 輸出、輸入/輸出(I/O)、端子、線、管腳、焊墊、端口、接口,或類 似的變形以及組合。除非在上下文使用中特別注明,否則將上述術語 看作為闡述本公開所用的等價術語。由于上述內容在本領域內是公知 的,因而本發(fā)明適用上述所有內容。傳統(tǒng)同步數(shù)字集成電路通常使用時鐘樹。時鐘信號經(jīng)由這些時鐘 樹的運輸,主要被用于為同步數(shù)字集成電路中的寄存器提供時鐘。寫 寄存器是通過產(chǎn)生使能信號,以控制被連續(xù)提供時鐘信號的觸發(fā)器的 D輸入的方式予以實現(xiàn)的。在時鐘始終保持運行的大型同步集成電路 設計中,這是個有效的方法。然而,在極小的偽同步集成電路設計中, 這種方法不是十分有效。本發(fā)明的各實施例用寬度為一個完整時鐘周期的寫選通脈沖代 替連續(xù)運行的時鐘信號。具體而言,這些完整周期的寫選通脈沖代替 傳統(tǒng)時鐘信號同寄存器的時鐘輸入終端相耦合。在該方案中,僅將數(shù)據(jù)發(fā)送至觸發(fā)器的D,而使能信號用于產(chǎn)生寬度為一個時鐘周期的、用于將數(shù)據(jù)寫入或傳入觸發(fā)器(通常是寄存器的一部分)的寫選通脈沖,而不是將數(shù)據(jù)和使能信號全都送入觸發(fā)器的D。參照圖l的時序圖,可以看出傳統(tǒng)鐘控寄存器方法和根據(jù)本發(fā)明 的選通脈沖方法之間的差別。圖1示出了具有預定周期的連續(xù)周期時鐘 102。盡管所示時鐘信號102的占空比約為50%,但是本發(fā)明不限于針 對該時鐘信號的任何特定的占空比。圖中還示出了輸入數(shù)據(jù)信號104, 并且輸入數(shù)據(jù)信號104在時鐘信號102的大約一個半周期內為邏輯高電 平或邏輯l。寄存的數(shù)據(jù)信號106說明了寄存器位在傳統(tǒng)時鐘控制下是 如何輸出的。可以看到,在許多時鐘跳變時刻,寄存數(shù)據(jù)信號106的狀 態(tài)都沒有發(fā)生改變。由于按傳統(tǒng)方式將時鐘信號102作用于寄存器沒有 導致狀態(tài)發(fā)生任何變化,因此這導致功率的浪費。然而,參照根據(jù)本 發(fā)明的時鐘選通脈沖108和寄存的數(shù)據(jù)輸出110,可以看到,針對于每 個期望的寄存器輸出數(shù)據(jù)110的跳變,僅存在一個時鐘選通脈沖。通過 減少時鐘跳變的數(shù)量,可能降低功率消耗。本發(fā)明的選通脈沖方法具有幾個優(yōu)點,這些優(yōu)點包括但不限于 較低的功率耗散、易于處理的偽同步行為,以及降低了簡單小芯片的 功率管理方案的復雜度,所述簡單小芯片工作于時鐘可停止運行的系 統(tǒng)之中。對于低功率耗散,在寄存器僅僅用于初始設置和偶爾更新的系統(tǒng) 中,本發(fā)明的寫選通脈沖方法產(chǎn)生了節(jié)省大量功率的優(yōu)勢。由于僅僅 在需要訪問寄存器時才為寄存器提供時鐘信號,并并非始終(即連續(xù) 地)為其提供時鐘信號,因而功率節(jié)省是顯著的。對于易于處理偽同步行為而言,在I2C環(huán)境中,本發(fā)明的實施例 在處理I2C時鐘的偽同步特性方面是非常有效的。本技術領域的技術人員將十分熟悉由Philips開發(fā)的、且目前在 Philips許可之下被眾多半導體制造商所使用的眾所周知的I2C雙線串 行總線。屬于主/從協(xié)議的I2C協(xié)議使用一條串行數(shù)據(jù)用的線路(以SDA 著稱),以及一條串行時鐘用的線路(以SCL著稱)。I2C主設備產(chǎn)生SCL 時鐘信號。12C協(xié)議規(guī)定了時序、尋址、時鐘(docking)、數(shù)據(jù)傳輸、確認、電壓電平等。由于I2C雙線串行總線廣為人知,并且一般地可以 向許多制造商購買,因而這里不再對其予以進一步的詳細討論。值得注意的是,12C時鐘串行時鐘(SCL)不是連續(xù)時鐘。12C主 設備能夠隨時停止和啟動SCL信號。所以在芯片內存在另一時鐘域, 并且需要對從時鐘域(SCL)進入到另一時鐘域的信號進行同步的情 況下,這個系統(tǒng)運行良好,其中時鐘域(SCL)可以被隨時停止。能 夠良好運行的原因在于,對于寄存器不存在始終連續(xù)運行的時鐘,因 此設計者不需要在來自第二時鐘域的信號被送回SCL時鐘域時擔心潛 在的亞穩(wěn)態(tài)。下面緊接著對同傳統(tǒng)電路布局相比本發(fā)明的實施例的優(yōu) 勢予以更加詳細的說明。在說明差別時,首先考慮傳統(tǒng)方法是如何工作的。第一事件(A) 發(fā)生于第一時鐘域(clkl)。事件A需要觸發(fā)第二時鐘域(clk2)中的 其它事件。利用同步機制實現(xiàn)這一跨域行為。傳統(tǒng)同步機制包括在 第一時鐘域dkl內為事件A設置標記(Fl);使同步標記F1的副本 (Flqq_clk2)跨越至時鐘域clk2;使用標記FlqcLclk2設置第二時鐘域 clk2中的另一標記(F2);使用標記F2觸發(fā)第二時鐘域clk2內的事件; 以及一旦在第二時鐘域clk2內捕獲了標記F2,就清除第一時鐘域clkl 內的標記F1。由于第一時鐘域可能正在運行或已被停止,因此在清除標記F1時 要格外注意。因此必須創(chuàng)建相當復雜的方案以確保安全可靠地清除標 記F1,從而避免任何亞穩(wěn)態(tài)情形。然而,由于僅利用寬度為一個時鐘 周期的選通脈沖設置標記F1,因而本發(fā)明的實施例不必涉及跨時鐘域 操作這個方面。這個選通脈沖將不會再次出現(xiàn),直到完整的寫選通脈 沖再次發(fā)生。因此可以迅速安全地以較少的邏輯和更高可靠性實現(xiàn)標 記F1的復位。對于降低簡單小芯片的功率管理方案的復雜度而言,停止和啟動 時鐘對于這樣的簡單芯片本身是復雜的功率管理方案,所述簡單小芯 片工作于時鐘可停止運行的系統(tǒng)中。利用寬度為一個時鐘周期的寫選 通脈沖,本發(fā)明的實施例可以提供更加簡單直接的功率管理方案。參考圖2,圖2示出了根據(jù)本發(fā)明的說明用的集成電路200。集成電路200配備了內部振蕩器/時鐘發(fā)生器202。時鐘發(fā)生器202產(chǎn)生用于 定義第一時鐘域的第一時鐘信號。控制狀態(tài)機206被連接為用于從時鐘 發(fā)生器202接收第一時鐘信號。控制狀態(tài)機206還被連接為用于從第二 時鐘域接收時鐘信號。在這個說明性示例中,來自第二時鐘域的時鐘 信號是I2C主設備的SCL時鐘。集成電路200還被配置為接收I2C輸入信 號(SDA)。電路204判斷I2C主設備是否正在尋址集成電路200。如果 12C正在尋址集成電路200,就向控制狀態(tài)機206傳遞來自I2C主設備的 串行數(shù)據(jù),控制狀態(tài)機206再將接收數(shù)據(jù)發(fā)送至寄存器組208,以及用 于協(xié)助向寄存器組208傳輸數(shù)據(jù)的選通脈沖信號。選通脈沖信號斷言的持續(xù)時間為第一時鐘信號的一個時鐘周期。寄存器組208包括一個或更多偽同步寄存器。應該注意的是,本 發(fā)明不要求寄存器組208具有任何特定大小或位數(shù)。在本發(fā)明的各種實 施例中,來自寄存器組208的數(shù)據(jù)還可以被耦合回控制狀態(tài)機206。在傳統(tǒng)設計中,第一時鐘信號被耦合至寄存器組以寄存或輔助數(shù) 據(jù)傳輸。這樣的配置,即,第一時鐘信號連續(xù)運行并驅動較大的負載 的配置,會導致功率消耗多于實際實現(xiàn)的功能所需要的功耗。然而, 在本發(fā)明的各種實施例中,僅當需要寄存數(shù)據(jù)時才斷言選通脈沖信號, 因而節(jié)省了功率并簡化了時序關系。公開了一種方法,該方法不使用持續(xù)時間少于完整周期的時鐘, 而使用寬度為一個完整時鐘周期的寫選通脈沖來控制向寄存器傳輸數(shù) 據(jù)。本發(fā)明的各種實施例極大地簡化了同步過程,提供了良好的功率 管理,并導致該設計所占用的芯片面積更小。本發(fā)明的實施例提供了大量的優(yōu)點。 一個優(yōu)點在于,減少了實現(xiàn) 特定設計所需要的組件的數(shù)量,從而有利于高性能電路的設計。另一優(yōu)點在于減小了根據(jù)本發(fā)明的集成電路的物理尺寸。另一優(yōu)點在于改善了功率管理。應該理解的是,本發(fā)明不局限于上述實施例,而涵蓋處于所附權 利要求及其等價物范圍內的任何實施例。
權利要求
1.一種操作包含一個或多個偽同步寄存器在內的集成電路的方法,所述方法包括提供周期性時鐘信號,所述周期性時鐘信號的周期為預定時間量;接收要傳輸至至少一個偽同步寄存器的一個或多個數(shù)據(jù)位;在一個時鐘周期的持續(xù)時間內斷言選通脈沖信號,并在一個時鐘周期結束時對所述選通信號解除斷言;將接收到的數(shù)據(jù)位作用于偽同步寄存器的相應的一個或多個數(shù)據(jù)輸入端;將所述選通脈沖信號作用于至少一個偽同步寄存器的時鐘輸入端;對斷言選通脈沖信號予以響應,將一個或多個數(shù)據(jù)位傳入偽同步寄存器。
2. 根據(jù)權利要求l所述的方法,其中,所述選通脈沖信號由第一 電路模塊產(chǎn)生,并且所述第一電路模塊被耦合用于接收所述周期性時 鐘信號,還被耦合用于向至少一個偽同步寄存器提供所述選通脈沖信 號;所述第一電路模塊和所述至少一個偽同步寄存器處于第一時鐘域。
3. 根據(jù)權利要求2所述的方法,其中,所述一個或多個數(shù)據(jù)位接 收自第二時鐘域。
4. 根據(jù)權利要求3所述的方法,其中,所述第一電路模塊可操作 用于向所述至少一個偽同步寄存器傳輸一個或多個接收到的數(shù)據(jù)位。
5. 根據(jù)權利要求3所述的方法,還包括在所述第一電路模塊, 接收來自所述第二時鐘域的時鐘信號,來自所述第二時鐘域的時鐘信 號是非連續(xù)時鐘信號。
6. 根據(jù)權利要求3所述的方法,其中,所述一個或多個接收到的 數(shù)據(jù)位和來自所述第二時鐘域的時鐘信號是根據(jù)I2C協(xié)議產(chǎn)生的。
7. —種集成電路,包括寄存器組,所述寄存器組包括至少一個偽同步寄存器;第一電路,可操作用于產(chǎn)生周期性的第一時鐘信號,所述第一時鐘信號的周期為預定時間量;以及第二電路,可操作用于接收所述第一時鐘信號,接收要傳輸至至 少一個偽同步寄存器的一個或多個數(shù)據(jù)位,并向所述至少一個偽同步寄存器傳輸所述一個或多個數(shù)據(jù)位以及選通脈沖信號;其中,所述寄存器組、所述第一電路、以及所述第二電路處于第 一時鐘域;所述選通脈沖信號的斷言時間為第一時鐘的一個完整周期, 一周期結束后解除斷言。
8. 根據(jù)權利要求7所述的集成電路,其中,所述第一電路包括振 蕩器,所述第二電路包括狀態(tài)機。
9. 根據(jù)權利要求8所述的集成電路,其中,所述第二電路還可操作用于接收第二時鐘信號,所述第二時鐘信號源自第二時鐘域。
10. 根據(jù)權利要求9所述的集成電路,其中,所述第二時鐘信號 產(chǎn)生于集成電路的外部。
11. 根據(jù)權利要求10所述的集成電路,其中,所述第二時鐘信號 不是連續(xù)時鐘信號。
12. 根據(jù)權利要求9所述的集成電路,其中,僅當數(shù)據(jù)要被傳入 所述至少一個偽同步寄存器時,所述至少一個偽同步寄存器接收斷言 的選通脈沖信號。
13. 根據(jù)權利要求9所述的集成電路,其中,所述一個或多個數(shù) 據(jù)位和所述第二時鐘信號是根據(jù)I2C協(xié)議傳入所述集成電路的。
14. 根據(jù)權利要求13所述的集成電路,其中,所述集成電路具有 預定的I2C地址,并且還包括同所述第二電路相耦合的第三電路,所述 第三電路可操作用于判斷所述一個或多個數(shù)據(jù)位是否已被發(fā)送至所述 集成電路的所述I2C地址。
15. 根據(jù)權利要求14所述的集成電路,還包括同步標記。
全文摘要
用于實現(xiàn)并以降低了的功率消耗和減少了的復雜度操作一個或更多偽同步寄存器,以在時鐘域間傳輸數(shù)據(jù)的方法和裝置本發(fā)明的各實施例用選通脈沖信號代替?zhèn)鹘y(tǒng)的連續(xù)時鐘方案,所述選通脈沖信號只有在將要對一個或多個偽同步寄存器進行數(shù)據(jù)傳輸操作時才會產(chǎn)生。產(chǎn)生選通脈沖信號,使其持續(xù)時間等于時鐘信號的一個完整周期,從而定義其中存在至少一個偽同步寄存器的時鐘域。
文檔編號H03K19/00GK101405939SQ200780009775
公開日2009年4月8日 申請日期2007年3月20日 優(yōu)先權日2006年3月21日
發(fā)明者杰伊·洛里, 馬諾基·錢德蘭 申請人:Nxp股份有限公司