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

可重構算子、集成電路和用于降低可重構算子功耗的方法

文檔序號:6355562閱讀:342來源:國知局
專利名稱:可重構算子、集成電路和用于降低可重構算子功耗的方法
技術領域
本發(fā)明涉及集成電路設計領域,尤其是一種可重構算子、集成電路和用于降低可重構算子功耗的方法。
背景技術
早期的集成電路設計,由于集成電路的集成度低和時鐘頻率低,面積和時間是設計者重點考慮的問題。集成電路設計者關注的方向是最小的芯片面積和最快的時鐘速度。
近年來,隨著集成電路的發(fā)展,尤其是集成度和時鐘頻率的顯著提高,集成電路的功耗也隨之瘋狂增長。集成電路的功耗問題已成為制約集成電路設計水平向前發(fā)展的屏頸。因此,對于集成電路設計者來說,功耗已成為具有同時間和面積同等重要的地位,需要重點考慮。
集成電路功耗的重要性在于其將直接影響集成電路的可靠性。集成電路在使用過程中,由功耗轉化的焦爾熱對集成電路的性能有顯著的影響。當集成電路的溫度上升到一定程度時,集成電路將出現反映遲緩、無法正常工作等現象。雖然可以通過增加外部制冷設備和改進集成電路的封裝結構等方式加快集成電路的散熱,緩解由功耗產生的高溫對集成電路的影響。但是,這些方式必競只是通過輔助的方式降低集成電路的溫度,沒有從集成電路內部對功耗進行控制,效果必然有限。
集成電路的功耗主要由靜態(tài)功耗和動態(tài)功耗組成,靜態(tài)功耗是指漏電流功耗,是電路狀態(tài)穩(wěn)定時的功耗。動態(tài)功耗是指電容充放電功耗和短路功耗,是電路的翻轉造成的。 集成電路功耗方面的研究可以從降低靜態(tài)功耗和動態(tài)功耗的角度著手。
現有技術中,功耗的研究囊括了集成電路的所有層級,包括電路級、版圖級、邏輯門級、RTL級、結構級和系統級。其中,對于電路級、版圖級等低層次級的功耗研究開始時間較早,已進行到比較完善的地步,行業(yè)中的情況是再從這些低層級上研究集成電路的功耗問題,達到降低功耗的目的并不實際,常常是投入與實際取得的效果并不成正比。現有的情況是,設計者更愿意從結構級和系統級等高層次的級別上研究集成電路的功耗控制問題, 實現低功耗的目標。
近期,北京大學深圳研究生院提出了一種基于并行計算技術的統一架構的陣列處理結構,由可重構算子組成。該結構在增大陣列規(guī)模和提升運算性能的同時,也帶來了功耗的提升,因而,對可重構算子進行功耗控制方面的研究將具有十分重要的意義。

發(fā)明內容
本發(fā)明要解決的主要技術問題是,提供一種可重構算子和集成電路,可以降低其在使用過程中產生的功耗;本發(fā)明還提供了一種用于降低可重構算子功耗的方法。
為解決上述技術問題,本發(fā)明提供一種可重構算子,通過增加功耗控制模塊,對要可重構算子的功耗進行控制,使其在不同的情況下采取不同的處理策略,從而降低功耗。而本發(fā)明還提供了一種集成電路,包括具有功耗控制模塊的可重構算子,因而能在使用過程中降低功耗。本發(fā)明還提供了一種降低可重構算子功耗的方法,其原理是根據可重構算子處于的不同情況采取不同處理策略,從而達到降低功耗的目的。
一種可重構算子,包括配置模塊和功能模塊,所述配置模塊用于接收從外部輸入的配置信息,并將所述配置信息轉化為控制信息,發(fā)送給所述功能模塊;所述功能模塊用于根據所述控制信息實現不同的功能;還包括功耗控制模塊,所述功耗控制模塊用于控制所述可重構算子的功耗。
所述配置模塊還用于將所述控制信息發(fā)送給所述功耗控制模塊,所述功耗控制模塊用于根據所述控制信息對所述可重構算子各部分的供電情況進行控制。
所述功耗控制模塊在控制信息為控制所述功能模塊不實現任何功能時,則切斷功能模塊的供電或者切斷除所述可重構算子中除了所述配置模塊以外的其它部分的供電。
所述功耗控制模塊包括一個電源切換單元,所述三態(tài)緩沖器的輸入與電源相連接,輸出與所述功能模塊和功耗控制模塊相連接,用于當控制信息為控制所述功能模塊實現某種具體功能時,將電源耦合到所述功能模塊和功耗控制模塊,當控制信息為控制所述功能模塊不實現任何功能時,切斷電源與所述功能模塊和功耗控制模塊的連接。
所述功耗控制模塊還用于檢測所述可重構算子的數據流是否連續(xù),如果不連續(xù), 則鎖定所述可重構算子的數據輸出。
所述配置模塊包括存儲單元和譯碼單元,所述存儲單元用于接收并存儲外部輸入的配置信息,所述譯碼單元用于將所述存儲單元存儲的配置信息轉化為控制信息。
一種集成電路,包括至少一個可重構算子,所述可重構算子按列分布式排列,其所述可重構算子為上述的可重構算子。
所述時鐘網絡包括多個不同頻率的時鐘源;根據所述可重構算子實現不同功能時的時鐘頻率要求將所述可重構算子的工作時鐘耦合到所述時鐘網絡中相應的時鐘源上。
一種用于降低可重構算子功耗的方法,包括步驟 根據外部輸入的配置信息判斷所述可重構算子是否需要實現某種具體的功能; 當可重構算子不實現任何功能時,切斷所述可重構算子中用于實現不同功能的處理部件的電源。
所述方法還包括步驟 當所述可重構算子需要實現某種具體的功能時,判斷所述可重構算子的數據流是否連續(xù),如果不連續(xù),則鎖定所述可重構算子的數據輸出。
本發(fā)明的有益效果是通過在可重構算子中增加一個功耗控制模塊,通過該功耗控制模塊對可重構算子的功耗進行控制,從而達到降低功耗的目的。具體地,功耗控制模塊可以根據配置模塊發(fā)送的控制信息對可重構算子的功耗進行控制,當控制信息為控制功能模塊不實現任何功能時,主要將功能模塊的電源切斷,消除功能模塊的靜態(tài)功耗,達到降低功耗的目的。更進一步地,當控制信息為控制功能模塊實現某種具體操作時,通過在數據流不連續(xù)時,即當前操作的輸入數據沒有來到或者上一次操作生成的輸出數據沒有被消費時,將可重構算子的輸出鎖定,從而降低可重構算子組合邏輯的跳變率,起到降低動態(tài)功耗的目的。
本發(fā)明提供的集成電路,包括上述結構的可重構算子,同樣具有上述有益效果。同時,集成電路還包括有時鐘網絡,可以根據可重構算子實現的功能,將可重構算子的工作時鐘匹配到時鐘網絡中最合適的時鐘源上,從而進一步降低功耗。
本發(fā)明提供的用于降低可重構算子功耗的方法,通過判斷可重構算子是否需要實現某種具體的功能,如果需要,則主要切斷可重構算子中用于實現具體功能的處理部件的電源,以消除其靜態(tài)功耗,從而降低可重構算子的功耗。


圖1為本發(fā)明一種實施方式的具有功耗控制的可重構算子結構; 圖2為本發(fā)明一種實施方式的低功耗狀態(tài)下的功耗控制說明; 圖3為本發(fā)明一種實施方式的等待狀態(tài)和工作狀態(tài)的功耗控制說明; 圖4為本發(fā)明一種實施方式的時鐘連接圖; 圖5為本發(fā)明一種陣列處理結構。
具體實施例方式下面通過具體實施方式
結合附圖對本發(fā)明作進一步詳細說明。
實施例1 請參考圖1,本發(fā)明的可重構算子200在其結構中增加了一個功耗控制模塊202, 該功耗控制模塊202用于控制可重構算子200的功耗。比如,通過控制整個可重構算子200 中各部分的供電情況和/或輸出數據的變化情況以實現降低可重構算子200功耗的目的。
可重構算子200設置有多個實現與外部通信的接口,接口包括有數據輸入接口、 數據輸出接口、配置時鐘接口、電源接口、地接口、配置信息傳輸鏈接口(包括配置信息入口和配置信息出口)和工作時鐘接口。其中,配置信息傳輸鏈接口、配置時鐘接口、電源接口和地接口為固定連接,其它接口的連接均為可配置形式。上述中,配置時鐘是指只連接到配置信息傳輸鏈中的配置信息存儲單元上的時鐘,該時鐘在加載配置信息時才驅動,系統工作時該時鐘保持不變,從而保證配置信息存儲單元中的信息不變。所有配置信息存儲單元的時鐘只有一個源,即一個網絡,所以它是固定連接。工作時鐘是指連接到各可重構算子單元的時序邏輯的時鐘,該時鐘在加載配置信息時是不被驅動的,只有在工作時才驅動。由于系統中各個部分的單元對應的性能要求不同,為了按需分配時鐘,所以有多時鐘網絡,一個可重構算子的時鐘可以有多個時鐘源,但一次只連接至一個源,這是可以配置的,所以為可配置形式。
可重構算子的內部除了上面提到的功耗控制模塊202外,還包括功能模塊201和配置模塊203。配置模塊203接收從配置信息入口輸入的外部配置信息,并將該配置信息轉化為功能模塊201和功耗控制模塊202能夠識別的控制信息,該控制信息和配置信息可以相同。一種實現方式是,配置模塊203的內部包括存儲單元和譯碼單元,存儲單元接收并存儲從配置信息入口輸入的外部配置信息;譯碼單元將存儲單元存儲的配置信息譯碼為功能模塊201和功耗控制模塊202能夠識別的控制信息,發(fā)送給功能模塊201和功耗控制模塊 202。
功能模塊201受控制信息的控制,在控制信息的控制作用下進行控制信息所對應的操作,實現不同的功能。所述功能模塊可以實現的功能包括算術邏輯運算,乘法運算,移位運算,數據分發(fā),數據選擇和調度中的一種或幾種。比如,在一種實施例中,功能模塊201可以實現四種操作,分別是空操作、加法操作、左移操作和乘法操作,則功能模塊201的控制信息可以用兩位二進制來表示,分別是00對應空操作,也就是功能模塊不進行任何操作,不實現任何具體的功能;01對應加法操作;10對應左移操作;11對應乘法操作。其中, 當控制信號為01、10和11中的任意一種時,功能模塊201均會在控制信息的控制下對輸入數據進行相應的操作,得到輸出數據,并將輸出數據輸出。在功能模塊201實現某種具體的功能時時,主要存在的功耗是動態(tài)功耗,且動態(tài)功耗的存在是必然的。但是,當控制信息為 00時,功能模塊201執(zhí)行空操作,不實現任何具體的功能,功能模塊201此時沒有動態(tài)功耗, 只有靜態(tài)功耗。由于靜態(tài)功耗低于動態(tài)功耗,且功能模塊201只有靜態(tài)功耗時,可重構算子 200的功耗也相對較低,所以將這個狀態(tài)稱之為低功耗狀態(tài)。
可重構算子200處于低功耗狀態(tài)時,功耗主要由靜態(tài)功耗組成。此時,降低功耗的思路是降低可重構算子200的靜態(tài)功耗,重點是降低功能模塊201的靜態(tài)功耗。最直接的實現方式是將功能模塊201的供電切斷。而功耗控制模塊202可以充當實現這一操作的執(zhí)行部件。當控制信息為控制功能模塊201不實現任何功能時,功耗控制模塊202將功能模塊201的供電切斷。更進一步地,功耗控制模塊202還可以只保留可重構算子200中除了配置模塊203以外的其它部分的供電,甚至只保留配置模塊203中存儲單元的供電,從而達到進一步地降低可重構算子200靜態(tài)功耗的目的。配置模塊203可以在將外部輸出的配置信息轉化為控制信息后,發(fā)送給功能模塊201控制其是不實現任何具體的功能,還是進行某種操作,實現具體的功能。同時還將控制信息發(fā)送給功耗控制模塊202,由功耗控制模塊 202根據控制信息對可重構算子各部分的供電情況進行控制。配置模塊203還可以對控制信息進行識別,當識別到配置信息是指示功能模塊201不實現某種具體的功能時,直接將控制信息只發(fā)給功耗控制模塊202,由功耗控制模塊202對可重構算子200的供電情況進行控制。
功能控制模塊202對可重構算子200中各部分的供電進行控制的硬件實現方式可以是通過一個電源切換單元實現。該電源切換單元的輸入與電源相連接,輸出與功能模塊 201和功耗控制模塊202相連接,用于當控制信息為控制功能模塊201實現某種具體功能時,將電源耦合到201功能模塊和功耗控制模塊202,當控制信息為控制功能模塊201不實現任何功能時,切斷電源與功能模塊201和功耗控制模塊202的連接。該電源切換單元可以由具有開關功能的元件實現,比如三態(tài)緩沖器、傳輸管、傳輸門和多選器等。當為多選器時,可以通過該多選器是選擇電源輸出1,還是輸出0的方式實現等效的開關效果。下面以電源切換單元為三態(tài)緩沖器為例,對其進行說明 如圖2所示,當電源切換單元為三態(tài)緩沖器301時,該三態(tài)緩沖器301的輸入與電源VDD相連接,其輸出為VDD',輸入VDD與輸出VDD'的關系由低功耗控制信號決定。低功耗信號與配置模塊203發(fā)送來的控制信息有關,當控制信息表示的意義為指示功能模塊實現某種具體的功能時,該低功耗控制信號為高;當控制信息表示的意義為功能模塊執(zhí)行空操作,也就是不實現某種具體的功能時,該低功耗控制信號為低。當低功耗控制信號為高時,輸出等于輸入,即輸出VDD' =VDD;當低功耗控制信號為低時,輸出為OJPVDD' =O0 三態(tài)緩沖器301的輸出連接到功能模塊201,用于控制所述功能模塊的供電情況。進一步地,三態(tài)緩沖器301的輸出還可以用于控制功耗控制模塊203中被利用時功耗控制部分302 的供電。其中,被利用時功耗控制部分302是指當功能模塊201實現某種具體的功能時,功耗控制模塊202中用于對功耗進行控制的部分。
可重構算子200實現某種具體的功能時,也就是功能模塊201在控制信息的作用下,對輸入數據進行某種具體的操作,得到輸出數據,并將輸出數據進行輸出。在這個過程中,可重構算子200的功耗主要是動態(tài)功耗,此時,降低功耗的主要思路是降低可重構算子 200的動態(tài)功耗。實現的方式可以是,根據數據流是否連續(xù),對可重構算子的輸出數據采取不同的操作,以降低可重構算子時序邏輯的跳變率。采用此種方式得以降低可重構算子200 的功耗的原因在于,動態(tài)功耗受時序邏輯的跳變率影響,時序邏輯的跳變率也就是動態(tài)功耗計算公式中的跳變因子,跳變因子越大,動態(tài)功耗也越大,而通過數據流是否連續(xù),對輸出數據采用合適的控制策略可以降低時序邏輯的跳變率。
如圖3所示,根據數據流是否連續(xù)可以將可重構算子劃分為兩個狀態(tài)等待狀態(tài) 401和工作狀態(tài)402。等待狀態(tài)401是指可重構算子的輸入數據沒有來到或者雖然輸入數據到來了,但是前一次處理輸入數據產生的輸出數據沒有被消費掉,此時數據流表現為間斷形式;工作狀態(tài)402是指可重構算子的輸入數據已經來到且前一次處理輸入數據產生的輸出數據已經被消費掉,此時數據流表現為連續(xù)形式。
處于工作狀態(tài)402的可重構算子200,其在數據流的驅動下改變輸出結果,同時, 處于工作狀態(tài)402的算子在數據流的驅動下改變輸出結果后,無條件進入等待狀態(tài)401。
處于等待狀態(tài)402的可重構算子200,由于可重構算子200需要處理的數據(有效數據)沒有到來或者其上次處理數據產生的輸出數據還沒有被消費掉,則將可重構算子 200的輸出數據鎖定。當需要處理的數據沒有到來時,即使其上次處理輸入數據產生的輸出數據已經被消費掉了也不改變其輸出數據,也就是將輸出數據鎖定為已經上次處理輸入數據產生的輸出數據,因為如果改變輸出數據,則會增加時序邏輯的跳變率。處于等待狀態(tài)的可重構算子200,直到檢測到輸入數據到來且輸出數據已經被消費掉了才進入工作狀態(tài) 402,否則一直處于等待狀態(tài)401。上述對數據流的檢測和對輸出數據的處理均可以由功耗控制模塊202來實現。
實施例2 一種集成電路,包括至少一個如實施例1中所述的可重構算子200,可重構算子 200按列分布式排列。
圖5為該集成電路的一部分結構,為一種算子按列分布式排列的陣列處理結構 100。該陣列處理結構100包括算術類可重構算子101、路徑類可重構算子102、調試類可重構算子103、DSP類可重構算子104、存儲類可重構算子105和輸入輸出106。該陣列結構 100的算術類可重構算子101、路徑類可重構算子102、調試類可重構算子103、DSP類可重構算子104和存儲類可重構算子105按照一定的比例,以列為單位排列,分布式交叉排列, 這樣的布局方式保證陣列結構100內任意一個可重構算子與其它任意一種可重構算子的部分以最短距離的方式連接,減少芯片內部長線的互聯,提高數據的傳輸效率,縮短了數據的延時。
如圖4所示,集成電路還包括時鐘網絡,時鐘網絡包括多個不同頻率的時鐘源。比如,圖示中的時鐘源CLK1、CLK2和CLK3。根據可重構算子200實現不同功能時的時鐘頻率要求將可重構算子200的工作時鐘耦合到所述時鐘網絡中相應的時鐘源上。一種實施方式是,由于可重構算子200的工作時鐘是可配置的,則將可重構算子200的工作時鐘接口通過可配置節(jié)點501與時鐘網絡中的時鐘源相連接,通過控制可配置節(jié)點501將工作時鐘耦合到不同的時鐘源上。耦合的依據是可重構算子在不同應用中(即實現不同功能)的頻率要求,比如,在某種應用中,對可重構算子的速率要求低,則可以將該可重構算子的工作時鐘耦合到時鐘頻率較低的時鐘源上。
上述陣列處理結構由于含有大量的可重構算子,如果采用現有技術中的可重構算子,即沒有增加功耗控制模塊202的算子結構,將產生大量的功耗,對于圖示陣列結構100 及包括該陣列結構100的集成電路的性能具有巨大的影響,輕則加速集成電路的老化,重則損壞集成電路。但是,如果上述可重構算子均增加實施例1中的功耗控制模塊202,則可以大大地降低陣列結構100和集成電路的功耗。尤其是實施例1中的功耗控制模塊202采用通檢測過數據流的連續(xù)情況對可重構算子200的數據輸出進行控制,達到降低時序邏輯的跳變率,進而降低功耗的方式時,對陣列結構100和集成電路的功耗控制有很明顯的效果。因為,對單個可重構算子來說,通過上述方式降低功耗的作用是有限的,但是,在陣列結構和集成電路中,單個可重構算子時序邏輯的跳率的降低會導致整個陣列結構和集成電路組合邏輯的跳變率的降低,組合邏輯跳變率對降低功耗的影響更加深遠。
實施例3 本發(fā)明還公開了一種用于降低可重構算子功耗的方法,包括步驟 步驟A,根據外部輸入的配置信息判斷所述可重構算子是否實現某種具體的功能, 如果是,步驟C中,如果否,則轉到步驟B中; 步驟B,切斷所述可重構算子中用于實現不同功能的處理部件的電源。
步驟C 判斷所述可重構算子的數據流是否連續(xù),如果不連續(xù),則保持所述可重構算子的數據輸出不改變。
本實施例的方法可以用于實施例1中所述的可重構算子,還可以用于實施例2中的集成電路,還可以用于依照本實施例所述的方法進行功耗控制的情況。
以上內容是結合具體的實施方式對本發(fā)明所作的進一步詳細說明,不能認定本發(fā)明的具體實施只局限于這些說明。對于本發(fā)明所屬技術領域的普通技術人員來說,在不脫離本發(fā)明構思的前提下,還可以做出若干簡單推演或替換,都應當視為屬于本發(fā)明的保護范圍。
權利要求
1.一種可重構算子,包括配置模塊和功能模塊,所述配置模塊用于接收從外部輸入的配置信息,并將所述配置信息轉化為控制信息,發(fā)送給所述功能模塊;所述功能模塊用于根據所述控制信息實現不同的功能;其特征在于,還包括功耗控制模塊,所述功耗控制模塊用于控制所述可重構算子的功耗。
2.如權利要求1所述的可重構算子,其特征在于,所述配置模塊還用于將所述控制信息發(fā)送給所述功耗控制模塊,所述功耗控制模塊用于根據所述控制信息對所述可重構算子各部分的供電情況進行控制。
3.如權利要求2所述的可重構算子,其特征在于,所述功耗控制模塊在控制信息為控制所述功能模塊不實現任何功能時,則切斷功能模塊的供電或者切斷除所述可重構算子中除了所述配置模塊以外的其它部分的供電。
4.如權利要求3所述的可重構算子,其特征在于,所述功耗控制模塊包括一個電源切換單元,所述電源切換單元的輸入與電源相連接,輸出與所述功能模塊和功耗控制模塊相連接,用于當控制信息為控制所述功能模塊實現某種具體功能時,將電源耦合到所述功能模塊和功耗控制模塊,當控制信息為控制所述功能模塊不實現任何功能時,切斷電源與所述功能模塊和功耗控制模塊的連接。
5.如權利要求1-4中任一項所述的可重構算子,其特征在于,所述功耗控制模塊還用于檢測所述可重構算子的數據流是否連續(xù),如果不連續(xù),則鎖定所述可重構算子的數據輸出ο
6.如權利要求1所述的可重構算子,其特征在于,所述配置模塊包括存儲單元和譯碼單元,所述存儲單元用于接收并存儲外部輸入的配置信息,所述譯碼單元用于將所述存儲單元存儲的配置信息轉化為控制信息。
7.一種集成電路,包括至少一個可重構算子,所述可重構算子按列分布式排列,其特征在于,所述可重構算子為權利要求1至7中任一項所述的可重構算子。
8.如權利要求7所述的集成電路,其特征在于,還包括時鐘網絡,所述時鐘網絡包括多個不同頻率的時鐘源;根據所述可重構算子實現不同功能時的時鐘頻率要求將所述可重構算子的工作時鐘耦合到所述時鐘網絡中相應的時鐘源上。
9.一種用于降低可重構算子功耗的方法,其特征在于,包括步驟根據外部輸入的配置信息判斷所述可重構算子是否需要實現某種具體的功能;當可重構算子不實現任何功能時,切斷所述可重構算子中用于實現不同功能的處理部件的電源。
10.如權利要求9所述的方法,其特征在于,還包括步驟當所述可重構算子需要實現某種具體的功能時,判斷所述可重構算子的數據流是否連續(xù),如果不連續(xù),則鎖定所述可重構算子的數據輸出。
全文摘要
本發(fā)明一種可重構算子,包括功耗控制模塊,功耗控制模塊用于對可重構算子的功耗進行控制;功耗控制模塊可以根據可重構算子的功能單元不實現任何具體功能時,對可重構算子的供電情況進行控制,或者在可重構算子實現某種具體的功能時,根據可重構算子處理數據的連續(xù)性,對輸出數據進行控制,以達到降低功耗的目的。本發(fā)明還公開了一種包括所述可重構算子的集成電路。本發(fā)明還根據可重構算子進行功耗控制的原理提煉出一種用于降低可重構算子功耗的方法。
文檔編號G06F17/50GK102184274SQ201110053618
公開日2011年9月14日 申請日期2011年3月7日 優(yōu)先權日2011年3月7日
發(fā)明者王新安, 安輝耀, 雍珊珊, 藍晶, 吳承昊, 龍曉波 申請人:北京大學深圳研究生院
網友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
临洮县| 通化县| 巴塘县| 赤水市| 翁牛特旗| 漳平市| 南雄市| 资兴市| 夹江县| 调兵山市| 莱西市| 达拉特旗| 永州市| 九龙城区| 牟定县| 绥宁县| 庆阳市| 高邑县| 凤冈县| 秦皇岛市| 通道| 连江县| 宿迁市| 林口县| 定远县| 高邑县| 潼关县| 商水县| 普兰店市| 西青区| 楚雄市| 廊坊市| 通州市| 五家渠市| 宁津县| 台北市| 广宁县| 新余市| 金湖县| 斗六市| 西平县|