專利名稱:A circuit for and method of minimizing power consumption in an integrated ...的制作方法
技術(shù)領(lǐng)域:
本發(fā)明主要涉及集成電路,且特定來說,涉及最小化集成電路(IC)裝置中的功率 消耗的電路和方法。
背景技術(shù):
可編程邏輯裝置(PLD)是可由用戶編程以實施用戶定義的邏輯功能的一類集 成電路。PLD常常在電子系統(tǒng)中使用,因為不同于定制硬連線邏輯電路或?qū)S眉呻娐?(ASIC),PLD可在相對短的時間中編程,且可快速再編程以并入有對所實施邏輯功能的修 改。主要的一類PLD稱為可編程邏輯陣列(PLA)裝置或可編程陣列邏輯(PAL)裝置。早期 的PLD包含一組“與”門(AND gate),其對兩個或兩個以上輸入信號進(jìn)行邏輯“與”運(yùn)算 以產(chǎn)生乘積項(P項);以及一組“或”門,其對由“與”門產(chǎn)生的P項中的兩者或兩者以上 進(jìn)行邏輯“或”運(yùn)算?!芭c”門通常形成為可編程連接的矩陣,其中每一列連接到PLD的輸入 引腳,且每一行形成傳輸?shù)皆摻M“或”門的P項?!盎颉遍T可為可編程的(即,每一 P項可按 可編程方式連接到若干不同“或”門輸出中的一者),在此情況下PLD稱為PLA裝置。或者, “或”門可為固定的(即,每一 P項被指派給特定“或”門輸出),在此情況下PLD稱為PAL裝 置。PLA和PAL裝置的“與”門和“或”門實施以積和形式表示的邏輯功能。在邏輯設(shè)計者實施的邏輯功能相對小時,PLA和PAL裝置很受邏輯設(shè)計者歡迎。雖 然PLA和PAL電路在PLD中常用,但其也可在任何其它類型的集成電路中使用,例如專用集 成電路(ASIC),其也具有固定硬件。然而,隨著邏輯功能已變得越來越大且更復(fù)雜,邏輯設(shè) 計者需要將兩個或兩個以上PLD耦合在一起以提供足夠的邏輯容量。雖然此過程在開發(fā)和 測試期間是容許的,但其增加了生產(chǎn)單元的成本和大小。由于產(chǎn)生了對具有越來越大的邏 輯容量的PLD的需求,為了滿足對較大容量的不斷增加的需求,已開發(fā)具有越來越復(fù)雜的 架構(gòu)的PLD。一種流行的復(fù)雜PLD類型稱為復(fù)雜可編程邏輯裝置(CPLD),其包含兩個或兩 個以上功能塊,所述功能塊通過互連矩陣連接在一起且連接到輸入/輸出(I/O)模塊,使得 所述功能塊中的每一者經(jīng)由所述互連矩陣選擇性地與I/O模塊并與CPLD的其它功能塊通
fn °另一類型的PLD是現(xiàn)場可編程門陣列(FPGA)。在典型的FPGA中,可配置邏輯塊 (CLB)的陣列耦合到可編程輸入/輸出塊(IOB)。CLB和IOB通過可編程路由資源的分級結(jié) 構(gòu)互連。這些CLB、I0B和可編程路由資源是通過通常從芯片外存儲器將一配置位流加載到 FPGA的配置存儲器單元中來定制。對于這兩種類型的可編程邏輯裝置,裝置的功能性皆由 出于所述目的提供到裝置的配置位流的配置數(shù)據(jù)位控制。因為CPLD通常使用讀出放大器技術(shù)和即使在靜態(tài)時也汲取電流的其它電路,所 以常規(guī)CPLD可能不必要地汲取電流。為了最小化電流,芯片設(shè)計者將內(nèi)部EPROM位轉(zhuǎn)移到 內(nèi)部鎖存器,稱為“配置位”。在位轉(zhuǎn)移之后,使EPROM斷電。然而,CPLD的其它電路仍汲取 電流。此外,數(shù)字系統(tǒng)常常組合大量的具有不同電壓配置的芯片(包含PLD)。舉例來說, 設(shè)計者必須使2. 5V處理器與3. 3V存儲器(RAM和ROM)以及5V總線和多個外圍芯片介接。因此,CPLD可能需要多個內(nèi)部電壓。因此,需要一種最小化集成電路裝置中的功率消耗的改進(jìn)的電路和方法。
發(fā)明內(nèi)容
本發(fā)明揭示一種最小化裝置中的功率消耗的方法。所述方法包括提供具有用于 執(zhí)行邏輯功能的電路的多個電路塊,其中每一電路塊在靜態(tài)狀態(tài)中消耗功率;將多個操作 電壓中的一者耦合到所述多個電路塊中的每一電路塊;借助于第一功率減小信號實現(xiàn)第一 組電路塊消耗的功率的減小;以及借助于第二功率減小信號實現(xiàn)第二組電路塊消耗的功率 的減小。根據(jù)替代實施例,一種最小化裝置中的功率消耗的方法包括提供具有用于執(zhí)行 邏輯功能的電路的多個電路塊,其中每一電路塊在靜態(tài)狀態(tài)中消耗功率;產(chǎn)生多個功率控 制信號,每一功率控制信號控制多個操作電壓中的一操作電壓;將多個操作電壓中的第一 操作電壓耦合到第一組電路塊中的每一電路塊;將所述多個操作電壓中的第二操作電壓耦 合到第二組電路塊中的每一電路塊;以及停用所述第二組電路塊中的每一電路塊的至少一 部分。本發(fā)明還揭示一種用于最小化裝置中的功率消耗的電路。所述電路包括多個電 路塊,其具有用于執(zhí)行邏輯功能的電路,其中每一電路塊在靜態(tài)狀態(tài)中消耗功率;多個操作 電壓,其中所述多個電路塊中的每一電路塊適于接收所述多個操作電壓中的操作電壓;以 及功率控制電路,其耦合到所述多個電路塊以用于將功率控制信號耦合到所述多個電路塊 中的每一電路塊。
圖1是根據(jù)本發(fā)明實施例的最小化具有可編程邏輯的裝置中的功率消耗的電路 的框圖;圖2是根據(jù)本發(fā)明替代實施例的最小化具有可編程邏輯的裝置中的功率消耗的 電路的框圖;圖3是根據(jù)本發(fā)明實施例的最小化CPLD的多個功能塊的AND陣列中的功率消耗 的電路的框圖;圖4是根據(jù)本發(fā)明實施例的最小化CPLD的多個功能塊的宏單元中的功率消耗的 電路的框圖;圖5是根據(jù)本發(fā)明實施例的最小化耦合到CPLD的多個功能塊的輸入/輸出塊中 的功率消耗的電路的框圖;圖6是根據(jù)本發(fā)明替代實施例的最小化耦合到CPLD的多個功能塊的輸入/輸出 塊中的功率消耗的電路的框圖;圖7是根據(jù)本發(fā)明實施例的現(xiàn)場可編程門陣列的框圖;圖8是根據(jù)本發(fā)明實施例的圖7的現(xiàn)場可編程門陣列的可配置邏輯元件的框圖;圖9是根據(jù)本發(fā)明實施例的響應(yīng)于功率消耗啟用信號而選擇輸入的啟用電路的 框圖;圖10是根據(jù)本發(fā)明替代實施例的響應(yīng)于功率消耗啟用信號而選擇輸入的啟用電路的框圖;圖11是根據(jù)本發(fā)明實施例的用于在輸入/輸出塊處選擇輸入信號的電路的框 圖;圖12是示出根據(jù)本發(fā)明實施例的最小化具有可編程邏輯的裝置中的功率消耗的 方法的流程圖;以及圖13是示出根據(jù)本發(fā)明替代實施例的最小化具有可編程邏輯的裝置中的功率消 耗的方法的流程圖。
具體實施例方式首先參見圖1,示出根據(jù)本發(fā)明實施例的最小化具有可編程邏輯的裝置中的功率 消耗的電路的框圖。應(yīng)注意,雖然本文呈現(xiàn)的實例可使用特定細(xì)節(jié)(例如CPLD)來描述本發(fā) 明的實施例,但所述技術(shù)和結(jié)構(gòu)可在所述特征可為有用的任何集成電路或應(yīng)用中使用。特 定來說,圖1的電路包含具有耦合到全局功能塊104的多個輸入/輸出墊102的CPLD,所述 全局功能塊104可將時鐘信號、輸出啟用以及設(shè)定/復(fù)位信號提供到CPLD的其余部分,且 啟用數(shù)據(jù)去往和來自CPLD的內(nèi)部電路的路由。CPLD進(jìn)一步包含多個功能塊,其包含可編 程邏輯塊,以及將在下文更詳細(xì)描述的功率控制電路110。功能塊通過可編程互連陣列106 連接在一起且連接到輸入/輸出塊。可編程互連陣列包含許多多路復(fù)用器電路112,其各 自包含若干可編程互連點(diǎn)(PIP) 114。通常,在每一多路復(fù)用器電路112中,僅啟用一個PIP 114。經(jīng)啟用的PIP選擇提供到互連陣列的許多輸入信號中的一者,且選定的輸入信號被 提供作為來自多路復(fù)用器電路112的輸出信號。舉例來說,PIP可由配置位流中的位啟用。 PLD還根據(jù)正對其執(zhí)行的操作而具有不同的“模式”。特定協(xié)議允許可編程邏輯裝置進(jìn)入適 當(dāng)?shù)哪J健5湫偷腜LD具有內(nèi)部的配置存儲器塊,其指定可編程單元中的每一者將如何模 仿用戶的邏輯。在“編程”模式中,將配置位流提供到可編程邏輯裝置外部或內(nèi)部的非易失 性存儲器,例如只讀存儲器(ROM)(例如,可編程ROM(PROM)、可擦除PROM(EPROM)或電可擦 除PROM(EEPROM))。通常通過指定每一地址的行地址和列地址來存取每一地址。在“啟動” 模式的系統(tǒng)加電期間,配置位被從非易失性存儲器連續(xù)加載到配置邏輯塊的靜態(tài)隨機(jī)存取 存儲器(SRAM)配置鎖存器中。圖1的電路的功能塊中的每一者可具有共同配置。舉例來 說,功能塊116包含配置存儲器118,其可包含易失性存儲器120和/或非易失性存儲器 122 ;AND陣列124 ;以及宏單元126,其具有可編程邏輯。AND陣列124和宏單元126各自包含用于執(zhí)行邏輯功能的電路塊,且尤其實現(xiàn)來自 “與”門的選定輸出的積和(SOP)。如下文將更詳細(xì)描述,AND陣列包含用于從互連矩陣接收 輸入信號的一組輸入線,以及用于將乘積項(P項)信號傳輸?shù)胶陠卧囊唤MP項線。每一 P項線使用可編程連接而連接到輸入線,所述可編程連接允許輸入信號中的兩者或兩者以 上的邏輯“與”運(yùn)算。每一宏單元包含“或”門,其可編程以接收在P項線上傳輸?shù)腜項信號 中的一者或一者以上。每一宏單元的“或”門產(chǎn)生積和項,其傳輸?shù)紺PLD的I/O模塊、經(jīng)由 互連矩陣反饋,或在特殊線上傳輸?shù)洁徑陠卧?。功能塊116還耦合到輸入/輸出塊128。 輸入/輸出塊128也包含用于執(zhí)行邏輯功能的電路塊。類似地,功能塊130耦合到輸入/ 輸出塊132,功能塊134耦合到輸入/輸出塊136,功能塊138耦合到輸入/輸出塊140,功 能塊142耦合到輸入/輸出塊144,且功能塊146耦合到輸入/輸出塊148。應(yīng)注意,圖1中呈現(xiàn)的實例僅代表一種可能布置,且大體上可使用功能塊、I/O模塊和其它電路的其它布置。如圖1的電路所示,給定的功率控制信號最小化給定功能塊和對應(yīng)的輸入/輸出 塊中的功率。舉例來說,功率控制信號A(PC-A)經(jīng)耦合以最小化功能塊116和對應(yīng)I/O塊 128中的功率消耗。如將參見圖3到6更詳細(xì)描述,功率控制信號可控制AND陣列124、宏 單元126和輸入/輸出塊128的特定部分。類似地,功率控制信號B(PC-B)經(jīng)耦合以最小 化功能塊138和對應(yīng)I/O塊140中的功率消耗。相對比而言,如圖2的電路中所示,可耦 合給定的功率控制信號以控制給定類型的電路。舉例來說,功率控制信號A經(jīng)耦合以控制 輸入/輸出電路,而功率控制信號B經(jīng)耦合以控制功能塊的宏單元。雖然如圖2所示的功 率控制信號耦合到所有的一般塊,但第一功率控制信號可耦合到一般類型的電路的第一子 組,例如輸入/輸出塊,而第二功率控制信號可耦合到一般類型的電路的第二子組。雖然示 出了將單一操作電壓施加于圖1和2的電路的每一功能塊,但不同的操作電壓可施加于功 能塊和I/O塊內(nèi)的不同電路塊。舉例來說,不同的操作電壓可施加于針對給定功能塊的I/ 0塊、AND陣列和宏單元中的每一者?,F(xiàn)在參見圖3,示出根據(jù)本發(fā)明實施例的最小化多個功能塊的AND陣列中的功率 消耗的電路的框圖。如圖3所示,AND陣列的一部分包含乘積項緩沖器302和304,其耦合到 產(chǎn)生乘積項輸出308的乘積項分配器306。關(guān)于乘積項緩沖器304更詳細(xì)展示用于最小化 功率消耗的電路。特定來說,讀出放大器310經(jīng)耦合以接收“與”門312的輸出。如參看圖 7和8將更詳細(xì)描述,功率控制啟用電路314經(jīng)耦合以接收多路復(fù)用器電路112的輸出,功 率控制啟用電路314可耦合到“與”門312的輸入。多路復(fù)用器112使得這些輸出或接地信 號能夠輸入到“與”門312?!芭c”門316也耦合以在第一輸入處接收功率控制信號A(PC-A) 且在第二輸入處接收控制信號317??刂菩盘?17可為啟用信號,其可確立特定“與”門是 否可用于由功率控制信號控制。也就是說,根據(jù)本發(fā)明實施例的功率管理包含允許特定電 路選擇性地參與斷電模式的至少一個啟用位,和觸發(fā)所述斷電模式的功率控制信號。在圖3 中,啟用位由控制信號317展示且功率控制信號為信號PC-Α。舉例來說,控制信號可為存儲 將輸入到“與”門的值的存儲器元件,其包含作為配置位流的一部分下載的位。在其它實例 中,例如外部源或驅(qū)動器的其它源可提供控制信號?!芭c”門316的輸出耦合到反相器318, 其控制晶體管320和晶體管322。特定來說,晶體管320耦合在晶體管324的柵極與接地 之間。假定通過對于控制信號317施加邏輯“1”而啟用乘積項緩沖器304以由功率控制信 號控制,那么當(dāng)PC-A變?yōu)榈?即,從邏輯“1”到邏輯“0”)時,晶體管322斷開,且“與”門 316的經(jīng)反轉(zhuǎn)輸出耦合到晶體管320的柵極?!芭c”門316的經(jīng)反轉(zhuǎn)輸出(為邏輯“1”)接 通晶體管320以將晶體管324的柵極拉到接地,從而斷開耦合于電阻器326與電阻器328 之間的晶體管且將電壓VCC-A與讀出放大器310隔離。也就是說,當(dāng)信號PC-A為低時,電 路通過防止從VCC-A到讀出放大器的輸入的路徑中的電流流動且在“與”門312的輸出處 產(chǎn)生低輸出來有效地減少乘積項緩沖器304中的功率消耗。也就是說,除了消除通過電阻 器326和328的電流外,通過選擇對功率控制啟用電路314的接地輸入,“與”門312的輸 出保持為低。應(yīng)注意,雖然讀出放大器310仍由VCC-A供電,但放大器中消耗的功率僅來自 正常的晶體管泄漏電流,其是可忽略的。此外,當(dāng)控制信號317設(shè)定為低時,乘積項緩沖器 304僅在斷電模式中操作。通過隔離讀出放大器與功率信號,最小化了 “與”門中的功率消耗,進(jìn)而減少裝置中的總體功率消耗。現(xiàn)在參見圖4,示出根據(jù)本發(fā)明實施例的最小化多個功能塊的宏單元中的功率消 耗的電路的框圖。特定來說,功能塊116的宏單元401包含“異或”(XOR)門402,其經(jīng)耦合 以接收從乘積項分配器306輸出的乘積項308?!爱惢颉遍T402的輸出耦合到寄存器404的 輸入,寄存器404的輸出耦合到多路復(fù)用器406。多路復(fù)用器406經(jīng)耦合以接收“異或”門 402的輸出或“異或”門402的輸出的經(jīng)寄存版本。寄存器404的啟用端還耦合到“與”門 408,“與”門408在第一輸入處接收功率控制信號PC-A,且接收啟用控制信號410?!芭c”門 的輸出耦合到另一 “與”門412的輸入,“與”門412也經(jīng)耦合以接收乘積項啟用(PTE)信 號。假定乘積項啟用為高且啟用控制信號410也為高,那么對寄存器404的啟用輸入取決 于功率控制信號PC-Α。多路復(fù)用器414經(jīng)耦合以接收全局時鐘信號(GLCK)和全局設(shè)定/ 復(fù)位(GSR)信號。多路復(fù)用器414的輸出耦合到多路復(fù)用器415的輸入和經(jīng)反轉(zhuǎn)輸入,多 路復(fù)用器415的輸出通過緩沖器416耦合到寄存器404的時鐘輸入。如可見,多個功率控 制信號耦合到對應(yīng)功能塊。通過如圖4的電路所示將啟用保持為低來停用寄存器404也最 小化可編程邏輯裝置中的功率消耗?,F(xiàn)在參見圖5,示出根據(jù)本發(fā)明實施例的最小化耦合到多個功能塊的輸入/輸出 塊中的功率消耗的電路的框圖。特定來說,輸入/輸出塊128包含“與”門502,其經(jīng)耦合 以接收多路復(fù)用器506的輸出,多路復(fù)用器506接收多個全局啟用(GE)信號和功率控制信 號PC-Α?!芭c”門502還接收功率控制啟用信號510。“與”門502的輸出耦合到三態(tài)緩沖器 514的控制端子,三態(tài)緩沖器514經(jīng)耦合以在其輸入處接收來自宏單元的數(shù)據(jù),且耦合到裝 置的輸入/輸出端子516。耦合到開關(guān)矩陣的第二緩沖器518也可耦合到三態(tài)緩沖器514 的輸出。通過停用三態(tài)緩沖器514,圖5的電路也最小化可編程邏輯裝置中的功率消耗。雖 然示出了三態(tài)緩沖器,但是圖5的電路中可采用其它類型的輸出緩沖器或電路。舉例來說, 電路可使來自宏單元的輸出數(shù)據(jù)與某種其它類型的輸出緩沖器的輸入去耦。輸入/輸出塊 132,138和142也分別最小化輸入/輸出引腳520,522和524的功率消耗?,F(xiàn)在參見圖6,示出根據(jù)本發(fā)明替代實施例的最小化耦合到多個功能塊的輸入/ 輸出塊中的功率消耗的電路的框圖。特定來說,來自輸入/輸出端子516的數(shù)據(jù)耦合到輸入 選擇電路601。如參見圖11將更詳細(xì)描述,輸入選擇電路601使得能夠針對電路的不同操 作電壓選擇多個輸入緩沖器中的一者。輸入選擇電路的輸出耦合到功率控制啟用電路314。 “與”門604經(jīng)耦合以接收功率控制信號PC-A和功率控制啟用信號605?!芭c”門604的輸 出耦合到第二“與”門606,其也經(jīng)耦合以接收系統(tǒng)內(nèi)編程(ISP)控制信號。ISP控制信號 使得能夠耦合在輸入/輸出端子處接收的編程數(shù)據(jù)?!芭c”門606的輸出耦合到晶體管608 的柵極以用于使電源信號Vcc-A與功率控制電路耦合或去耦。因此,功率控制啟用信號將 控制耦合到輸入/輸出端子516的輸入數(shù)據(jù)是否耦合到裝置的其它部分,例如AND陣列。因為多個功率信號中的不同功率信號耦合到圖3到6的電路中的不同電路塊,所 以根據(jù)圖1的實施例控制給定電路塊中的功率使得能夠控制接收多個不同操作電壓Vcc-A 到Vcc-d中的一者的電路塊中的功率。也就是說,功率控制信號也可用以基于耦合到電路 的操作電壓而減少電路的功率消耗。雖然圖3到6的電路被示出為最小化某些電路中的功 率消耗,但根據(jù)本發(fā)明各種實施例也可最小化其它電路或電路的組合中的功率。類似地,雖 然圖3到6的功率控制電路的特定應(yīng)用是基于正施加于如圖1所示的功能塊的功率控制信號,但在圖3到6中也可根據(jù)圖2的實施例施加功率控制信號,其中給定功率控制信號被 施加于類似的電路塊,例如輸入/輸出塊。雖然圖1到6的電路大體上借助于實例而示出 CPLD,但用于最小化功率消耗的電路可在任一裝置中采用。現(xiàn)在參見圖7,示出根據(jù)本發(fā)明實施例的現(xiàn)場可編程門陣列的框圖。如上所述,高 級FPGA可在陣列中包含若干不同類型的可編程邏輯塊。舉例來說,圖7說明包含大量不同 可編程片(programmable tile)的FPGA架構(gòu),所述片包含用于執(zhí)行邏輯功能的電路。舉例 來說,可編程片可包含可編程邏輯,其包含多千兆位收發(fā)器(MGT 701)、可配置邏輯塊(CLB 702)、隨機(jī)存取存儲器塊(BRAM 703)、輸入/輸出塊(Ι0Β 704)、配置與計時邏輯(CONFIG/ CL0CKS705)、數(shù)字信號處理塊(DSP 706)、專用輸入/輸出塊(I/O 707)(例如,配置端口和 時鐘端口)以及其它可編程邏輯708,例如數(shù)字時鐘管理器、模/數(shù)轉(zhuǎn)換器、系統(tǒng)監(jiān)視邏輯等 等。一些FPGA還包含專用處理器塊(PR0C 710)。在一些FPGA中,每一可編程片包含可編程互連元件(INT 711),其具有去往和來 自每一鄰近片中的對應(yīng)互連元件的標(biāo)準(zhǔn)化連接。因此,可編程互連元件合起來實施所說明 FPGA的可編程互連結(jié)構(gòu)??删幊袒ミB元件(INT 711)還包含去往和來自同一片內(nèi)的可編程 邏輯元件的連接,如圖7的頂部處包含的實例所示。舉例來說,CLB 702可包含可經(jīng)編程以 實施用戶邏輯的可配置邏輯元件(CLE 712),加上單一可編程互連元件(INT 711)。除了一 個或一個以上可編程互連元件以外,BRAM 703還可包含BRAM邏輯元件(BRL 713)。通常, 一片中包含的互連元件的數(shù)目取決于片的高度。在圖示實施例中,BRAM片具有相當(dāng)于四個 CLB的高度,但也可使用其它數(shù)目(例如,五個)。除了適當(dāng)數(shù)目的可編程互連元件以外,DSP 片706還可包含DSP邏輯元件(DSPL714)。除了可編程互連元件(INT 711)的一個例項以 外,IOB 704還可包含(例如)輸入/輸出邏輯元件(I0L 715)的兩個例項。如所屬領(lǐng)域 的技術(shù)人員將了解,例如連接到I/O邏輯元件715的實際I/O墊通常并不局限于輸入/輸 出邏輯元件715的區(qū)域。在圖示實施例中,裸片的中心附近的柱狀區(qū)域(圖7中以陰影示出)用于配置、時 鐘和其它控制邏輯。從此柱延伸的水平區(qū)域709用以在FPGA的寬度上分布時鐘和配置信號。利用圖7說明的架構(gòu)的一些FPGA包含額外邏輯塊,所述額外邏輯塊打破構(gòu)成FPGA 的一大部分的常規(guī)柱狀結(jié)構(gòu)。額外邏輯塊可為可編程塊和/或?qū)S眠壿嫛Ee例來說,圖7 所示的處理器塊PROC 710跨越CLB和BRAM的若干列。應(yīng)注意,圖7僅意欲說明示范性FPGA架構(gòu)。舉例來說,一列中的邏輯塊的數(shù)目、列 的相對寬度、列的數(shù)目和次序、列中包含的邏輯塊的類型、邏輯塊的相對大小以及圖7的頂 部處包含的互連/邏輯實施方案完全是示范性的。舉例來說,在實際的FPGA中,在CLB出 現(xiàn)的每一處通常包含一個以上鄰近的CLB列以促進(jìn)用戶邏輯的有效實施,但鄰近CLB列的 數(shù)目隨著FPGA的總體大小而變化。如參見圖8將更詳細(xì)描述,也可在FPGA中采用功率控 制信號來減少功率消耗。現(xiàn)在參見圖8,示出根據(jù)本發(fā)明實施例的圖7的現(xiàn)場可編程門陣列的可配置邏 輯元件的框圖。特定來說,圖8以簡化形式說明圖7的配置邏輯塊702的可配置邏輯 元件,其包含具有可編程邏輯的電路。在圖8的實施例中,切片M 801包含四個查找表 (LUTM) 801A-801D,其各自由六個LUT數(shù)據(jù)輸入端子A1-A6、B1-B6、C1-C6以及D1-D6驅(qū)動且各自提供兩個LUT輸出信號05和06。來自LUT 801A-801D的06輸出端子分別驅(qū)動切 片輸出端子A-D。LUT數(shù)據(jù)輸入信號由FPGA互連結(jié)構(gòu)經(jīng)由可由可編程互連元件711實施 的輸入多路復(fù)用器供應(yīng),且LUT輸出信號也供應(yīng)到互連結(jié)構(gòu)。切片M還包含輸出選擇多 路復(fù)用器811A-81ID,其驅(qū)動輸出端子AMUX-DMUX ;多路復(fù)用器812A-812D,其驅(qū)動存儲器 元件802A-802D的數(shù)據(jù)輸入端子;組合多路復(fù)用器816、818和819 ;彈跳多路復(fù)用器電路 822-823 ;由反相器805和多路復(fù)用器806 (共同提供輸入時鐘路徑上的可選的反轉(zhuǎn))表 示的電路;以及進(jìn)位邏輯,包含多路復(fù)用器814A-814D、815A-815D、820-821和“異或”門 813A-813D。所有這些元件如圖8所示耦合在一起。在未針對圖8說明的多路復(fù)用器展示 選擇輸入的情況下,選擇輸入由配置存儲器單元控制。也就是說,存儲在配置存儲器單元中 的配置位流的配置位耦合到多路復(fù)用器的選擇輸入以選擇對多路復(fù)用器的正確輸入。為了 清楚而從圖8以及本文的其它選定圖中省略了這些眾所周知的配置存儲器單元。在圖示實 施例中,每一存儲器元件802A-802D可經(jīng)編程以充當(dāng)同步或異步觸發(fā)器或鎖存器。通過對 同步/異步選擇電路803編程而針對一切片中的所有四個存儲器元件進(jìn)行同步與異步功能 性之間的選擇。當(dāng)存儲器元件經(jīng)編程以使得S/R(設(shè)定/復(fù)位)輸入信號提供設(shè)定功能時, REV輸入端子提供復(fù)位功能。當(dāng)存儲器元件經(jīng)編程以使得S/R輸入信號提供復(fù)位功能時, REV輸入端子提供設(shè)定功能。存儲器元件802A-802D由時鐘信號CK計時,時鐘信號CK可例 如由全局時鐘網(wǎng)絡(luò)或由互連結(jié)構(gòu)提供。此些可編程存儲器元件是FPGA設(shè)計技術(shù)中眾所周知的。每一存儲器元件 802A-802D將經(jīng)寄存的輸出信號AQ-DQ提供到互連結(jié)構(gòu)。因為每一 LUT801A-801D提供兩 個輸出信號05和06,所以LUT可經(jīng)配置以充當(dāng)具有五個共享輸入信號(IN1-IN5)的兩個5 輸入LUT,或充當(dāng)具有輸入信號mi_IN6的一個6輸入LUT。在圖8的實施例中,每一 LUTM 801A_80ID可在若干模式中的任一者中起作用。當(dāng) 在查找表模式中時,每一LUT具有六個數(shù)據(jù)輸入信號IN1-IN6,其由FPGA互連結(jié)構(gòu)經(jīng)由輸入 多路復(fù)用器供應(yīng)?;谛盘朓N1-IN6的值以可編程方式從配置存儲器單元選擇64個數(shù)據(jù)值 中的一者。當(dāng)在RAM模式中時,每一 LUT充當(dāng)單一 64位RAM或具有共享尋址的兩個32位 RAM。RAM寫入數(shù)據(jù)經(jīng)由輸入端子DIl (經(jīng)由用于LUT 801A-801C的多路復(fù)用器817A-817C) 供應(yīng)到64位RAM,或經(jīng)由輸入端子DIl和DI2輸入到兩個32位RAM。LUT RAM中的RAM寫 入操作由來自多路復(fù)用器806的時鐘信號CK和來自多路復(fù)用器807的寫入啟用信號WEN 控制,多路復(fù)用器807可選擇性地使時鐘啟用信號CE或?qū)懭雴⒂眯盘朩E通過。在移位寄 存器模式中,每一 LUT充當(dāng)兩個16位移位寄存器,或兩個16位移位寄存器串聯(lián)耦合以產(chǎn)生 單一 32位移位寄存器。經(jīng)由輸入端子DIl和DI2中的一者或兩者提供移入信號。可經(jīng)由 LUT輸出端子提供16位和32位移出信號,且也可較直接地經(jīng)由LUT輸出端子MC31提供32 位移出信號。LUT 801A的32位移出信號MC31也可經(jīng)由輸出選擇多路復(fù)用器811D和CLE 輸出端子DMUX提供到用于移位寄存器鏈接的一般互連結(jié)構(gòu)。圖8的電路還包含用于減少 FPGA的可配置邏輯元件中的功率消耗的電路。特定來說,多路復(fù)用器823經(jīng)耦合以在第一 輸入處接收時鐘啟用(CE)信號,且在第二輸入處接收固定電壓信號,例如VDD?!芭c”門826 經(jīng)耦合以在一個輸入處接收功率控制信號,且在另一輸入處接收功率控制啟用信號。如果 功率控制信號或功率控制啟用信號為低,那么對時鐘啟用的輸入保持為低,從而停用CLE 的輸出寄存器。圖5和6的電路也可在圖7的FPGA的輸入/輸出塊中采用。本發(fā)明的具有可編程邏輯的裝置和方法可根據(jù)圖7和8的FPGA裝置來實施,或在包含任一類型的具有 可編程邏輯的集成電路的任一裝置中實施?,F(xiàn)在參見圖9,示出根據(jù)本發(fā)明實施例的響應(yīng) 于啟用信號而選擇輸入的啟用電路的框圖。每個輸入/輸出端子具有相關(guān)聯(lián)的啟用信號, 其可基于作為配置位流的部分下載到裝置的位而存儲在存儲器中。特定來說,功率控制啟 用電路314包含多路復(fù)用器902,其經(jīng)耦合以接收包含一系列晶體管的反相器904的輸出。 耦合到反相器904的功率信號的第一 ρ溝道晶體管經(jīng)耦合以在其柵極處接收啟用信號。ρ 溝道晶體管908和η溝道晶體管910經(jīng)耦合以在其柵極處接收輸入信號,同時提供到接地 的路徑的η溝道晶體管912經(jīng)耦合以接收經(jīng)反轉(zhuǎn)啟用信號。多路復(fù)用器902還經(jīng)耦合以在 輸入處接收接地信號,且由啟用信號控制。因此,啟用信號將控制是使輸入信號通過還是使 接地通過,如上文在圖3和6中描述。舉例來說,當(dāng)PC-A為低時,晶體管906和912接通, 且多路復(fù)用器的輸入經(jīng)選擇以接收反相器904的輸出。當(dāng)PC-A為高時,通過反相器的路徑 被停用,且選擇對多路復(fù)用器的接地輸入。根據(jù)圖10的替代實施例,反相器904的輸出借 助于由啟用信號控制的通過晶體管1002而耦合到包含交叉耦合的反相器1004和1006的 鎖存器。在圖10的實施例中,當(dāng)PC-A為低時,晶體管906和912接通以產(chǎn)生反相器904的 輸出。當(dāng)PC-A為高時,通過反相器的路徑被停用,且輸出由包含反相器1004和1006的鎖 存器保持?,F(xiàn)在參見圖11,示出根據(jù)本發(fā)明實施例的用于在輸入/輸出塊處選擇輸入信號的 電路的框圖。特定來說,多路復(fù)用器1102經(jīng)耦合以從多個輸入緩沖器接收輸入。舉例來說, 第一輸入緩沖器1104包含比較器,其經(jīng)耦合以接收輸入信號與參考電壓信號Vref。第一輸 入緩沖器可產(chǎn)生參考電壓信號,包含例如1.8伏(V)信號。第二輸入緩沖器1106可包含產(chǎn) 生例如3. 3V或2. 5V信號的高電壓輸入緩沖器。第三輸入緩沖器908可包含產(chǎn)生例如1. 8V 信號的低電壓輸入緩沖器。最終,可使用施密特觸發(fā)器電路1110來產(chǎn)生任一電壓范圍,例 如3. 3V、2. 8V或1. 5V,如此項技術(shù)中眾所周知。多路復(fù)用器由控制信號1112控制,控制信 號1112可由存儲在例如存儲器單元中的值或某個其它控制信號來控制。上拉/總線保持 電路1114也耦合到輸入/輸出引腳1116。現(xiàn)在參見圖12,流程圖示出了根據(jù)本發(fā)明實施 例的最小化裝置中的功率消耗的方法。特定來說,在步驟1202處提供具有用于執(zhí)行邏輯功 能的電路的多個電路塊,例如具有可編程邏輯的裝置中的可編程邏輯電路塊,其中每一電 路塊在靜態(tài)狀態(tài)中消耗功率。在步驟1204中將多個操作電壓中的一者耦合到所述多個電 路塊中的每一電路塊。在步驟1206處借助于第一功率減小信號來實現(xiàn)由第一組電路塊消 耗的功率的減小。在步驟1208處借助于第二功率減小信號來實現(xiàn)由第二組電路塊消耗的 功率的減小。可通過如上文參看圖1到11所描述選擇性地停用電路的部分來實現(xiàn)第一組 和第二組電路塊消耗的功率的減小。最后,參見圖13,流程圖示出了根據(jù)本發(fā)明替代實施例的最小化裝置中的功率消 耗的方法。特定來說,在步驟1302處提供具有用于執(zhí)行邏輯功能的電路的多個電路塊,其 中每一電路塊在靜態(tài)狀態(tài)中消耗功率。在步驟1304處產(chǎn)生多個功率控制信號,其中每一功 率控制信號控制多個操作電壓中的一操作電壓。在步驟1306中將多個操作電壓中的第一 操作電壓耦合到第一組電路塊中的每一電路塊。在步驟1306處將多個操作電壓中的第二 操作電壓耦合到第二組電路塊中的每一電路塊。最終,在步驟1310處停用第二組功能塊的 每一電路塊的至少一部分。圖13的方法也可采用如上描述的圖1到11的電路中的任一者,或使用任何其它合適電路。因此可了解,已描述最小化裝置中的功率消耗的新的且新穎的 電路和方法。所屬領(lǐng)域的技術(shù)人員應(yīng)了解,將發(fā)現(xiàn)許多并入有所揭示發(fā)明的替代物和均等 物。因此,本發(fā)明不受前述實施例的限制,而是僅由所附權(quán)利要求書限制。
權(quán)利要求
一種最小化裝置中的功率消耗的方法,所述方法包括提供具有用于執(zhí)行邏輯功能的電路的多個電路塊,其中每一電路塊在靜態(tài)狀態(tài)中消耗功率;將多個操作電壓中的一者耦合到所述多個電路塊中的每一電路塊;借助于第一功率減小信號實現(xiàn)第一組電路塊消耗的功率的減小;以及借助于第二功率減小信號實現(xiàn)第二組電路塊消耗的功率的減小。
2.根據(jù)權(quán)利要求1所述的方法,其中實現(xiàn)第一組電路塊和第二組電路塊消耗的功率的 減小包括實現(xiàn)在包括具有第一功能的電路塊的第一組電路塊中和在包括具有第二功能的 電路塊的第二組電路塊中消耗的功率的減小。
3.根據(jù)權(quán)利要求1所述的方法,其中實現(xiàn)第一組電路塊或第二組電路塊消耗的功率的 減小包括實現(xiàn)一組電路塊消耗的功率的減小,所述組電路塊各自來自由輸入/輸出塊、乘 積項緩沖器和具有可編程邏輯的電路的一部分組成的群組。
4.根據(jù)權(quán)利要求1所述的方法,其中提供具有用于執(zhí)行邏輯功能的電路的多個電路塊 包括提供多個功能塊。
5.根據(jù)權(quán)利要求4所述的方法,其中實現(xiàn)第一組電路塊或第二組電路塊消耗的功率的 減小包括停用所述功能塊的AND陣列。
6.根據(jù)權(quán)利要求4所述的方法,其中實現(xiàn)第一組電路塊或第二組電路塊消耗的功率的 減小包括停用所述功能塊的宏單元的輸出。
7.根據(jù)權(quán)利要求1所述的方法,其中實現(xiàn)第一組電路塊或第二組電路塊消耗的功率的 減小包括停用輸入/輸出塊。
8.一種最小化裝置中的功率消耗的方法,所述方法包括提供具有用于執(zhí)行邏輯功能的電路的多個電路塊,其中每一電路塊在靜態(tài)狀態(tài)中消耗 功率;產(chǎn)生多個功率控制信號,每一功率控制信號控制施加于多個電路塊的多個操作電壓中 的一操作電壓;將多個操作電壓中的第一操作電壓耦合到第一組電路塊中的每一電路塊;將所述多個操作電壓中的第二操作電壓耦合到第二組電路塊中的每一電路塊;以及停用所述第二組電路塊中的每一電路塊的至少一部分。
9.根據(jù)權(quán)利要求8所述的方法,其中停用所述第二組電路塊中的每一電路塊的至少一 部分包括基于施加于電路塊的操作電壓來停用所述電路塊的一部分。
10.根據(jù)權(quán)利要求8所述的方法,其進(jìn)一步包括選擇耦合到所述裝置的輸入/輸出引腳 的多個輸入緩沖器中的一者。
11.一種用于最小化裝置中的功率消耗的電路,所述電路包括多個電路塊,其具有用于執(zhí)行邏輯功能的電路,其中每一電路塊在靜態(tài)狀態(tài)中消耗功率;多個操作電壓,其中所述多個電路塊中的每一電路塊適于接收所述多個操作電壓中的 操作電壓;以及功率控制電路,其耦合到所述多個電路塊以用于將多個功率控制信號中的一者耦合到 所述多個電路塊中的每一電路塊。
12.根據(jù)權(quán)利要求11所述的電路,其中所述多個電路塊中的每一電路塊包括功率控制 啟用電路。
13.根據(jù)權(quán)利要求12所述的電路,其中所述功率控制啟用電路包括多路復(fù)用器,所述 多路復(fù)用器經(jīng)耦合以響應(yīng)于所述多個功率控制信號中的功率控制信號而選擇針對電路塊 的輸入和固定輸入中的一者。
14.根據(jù)權(quán)利要求13所述的電路,其進(jìn)一步包括多個輸入緩沖器,其中多路復(fù)用器經(jīng) 耦合以接收所述輸入緩沖器中的每一者的輸出和選擇輸入信號。
15.根據(jù)權(quán)利要求14所述的電路,其中所述選擇輸入信號包括可編程存儲器元件。
全文摘要
文檔編號H03K19/00GK101953075SQ20098010568
公開日2011年1月19日 申請日期2009年2月18日 優(yōu)先權(quán)日2008年2月20日
發(fā)明者Ng Mark Men Bon, Iv Jesse H Jenkins, Lakkapragada Shankar, Lien Scott Te-Sheng, Jang Tetse 申請人:Xilinx Inc