用于控制多核處理器的門控端的系統和多核處理器的制造方法
【專利摘要】本發明公開了一種用于控制多核處理器的門控端的系統和一種多核處理器。該系統包括:脈沖調制發生器,其用于生成控制方波;以及移相器,其用于對所述控制方波進行移相以生成具有不同相位的控制方波,并用于將所述具有不同相位的控制方波分別輸入至所述多核處理器中的多個處理引擎的每一個的門控端。該多核處理器包括:多個處理引擎,其中每個處理引擎包括門控端;以及,用于控制所述門控端的系統。上述用于控制多核處理器的門控端的系統,使得當多核處理器上負載變化時,在不同處理引擎上負載變化可以不是同時發生。相應地,對于多核處理器,在一個工作周期內的某時間段的負載處理被均勻到一個工作周期內更長的時間段內完成。從而減小負載變化所引起的電流和電壓噪聲以及溫度上升。
【專利說明】用于控制多核處理器的門控端的系統和多核處理器
【技術領域】
[0001]本發明總體涉及多核處理器,并且,更具體地涉及多核處理器和圖形處理單元(GPU)中的門控端的控制技術。
【背景技術】
[0002]隨著計算機技術的發展,用戶在使用計算機過程中通常會涉及到多任務環境,其中游戲等多媒體任務對處理器的性能要求越來越高。傳統的單核通用處理器由于存在性能以及制造工藝等方面的瓶頸,無法滿足日益增長的新業務的計算性能要求。多核處理器在處理能力上相對單核處理器具有明顯優勢。多核處理器技術引入“橫向擴展”方法,將應用劃分為多線程提交給多核處理器中的很多個處理引擎來并行執行,從而為性能問題提供了新的解決方案。GPU是典型的多核處理器,例如Nvidia的GPU構架中具有上千個并行處理引擎(CUDA Core)ο
[0003]在多核處理器運行期間,隨著處理任務的不同其上加載的負載會隨著變化。由于多核處理器包括上億個晶體管,因此負載的變化將導致多核處理器中顯著的電流瞬態。通常GPU電流瞬態頻率可能在1ΚΗζ?16ΚΗζ的范圍內,隨后其導致DC-DC電源穩壓器輸出電感器在對應頻率上抖動。這樣的抖動將由印刷電路板(PCB)放大并轉換成聽覺噪聲。另外,負載突變時可能會導致多核處理器芯片溫度每秒上升6°C。由于這種溫度的急劇上升,多核處理器的芯片封裝可能會因為材料的不同溫度膨脹而破裂。此外,上述產生的電流瞬態還會導致多核處理器中的電壓噪聲。為了解決上述問題,目前通常采用的技術是降低多核處理器的時鐘頻率來降低負載變化的幅度,從而減小相應的影響。但降低多核處理器的時鐘頻率的同時也降低了其處理性能。
[0004]因此,本【技術領域】所需要的是,當多核處理器上的負載發生變化時,可以在保持其處理性能的同時減小負載變化幅度的技術,以解決現有技術中存在的問題。
【發明內容】
[0005]在
【發明內容】
部分中引入了一系列簡化形式的概念,這將在【具體實施方式】部分中進一步詳細說明。本
【發明內容】
部分并不意味著要試圖限定出所要求保護的技術方案的關鍵特征和必要技術特征,更不意味著試圖確定所要求保護的技術方案的保護范圍。
[0006]為了解決上述問題,本發明公開了一種用于控制多核處理器的門控端的系統,包括:脈沖調制發生器,其用于生成控制方波;以及移相器,其用于對所述控制方波進行移相以生成具有不同相位的控制方波,并用于將所述具有不同相位的控制方波分別輸入至所述多核處理器中的多個處理引擎的每一個的門控端。
[0007]可選地,所述具有不同相位的控制方波具有彼此不同的相位。
[0008]優選地,所述具有不同相位的控制方波的所述相位成等差序列。
[0009]在本發明一個優選實施例中,所述系統還包括:狀態監測器,其用于監測所述多核處理器的狀態并根據所監測的狀態生成狀態信息;其中,所述控制方波根據所述狀態信息生成。
[0010]在本發明一個優選實施例中,所述狀態監測器包括溫度監測器,其用于監測所述多核處理器的溫度并根據所監測的溫度生成所述狀態信息;并且所述脈沖調制發生器進一步用于根據所述狀態信息計算溫度增長率;其中,當所述溫度增長率高于閾值時,所述控制方波的占空比減小;當所述溫度增長率等于或低于所述閾值時,所述控制方波的所述占空比增大。
[0011]在本發明一個優選實施例中,所述狀態監測器包括負載監測器,其用于監測所述多個處理引擎中的至少一個處理引擎的利用率并根據所監測的利用率生成所述狀態信息;其中,所述控制方波的占空比根據所述狀態信息調整,以用于使所述多核處理器的利用率保持在期望值。
[0012]在本發明一個優選實施例中,所述狀態監測器包括溫度監測器和負載監測器;其中所述溫度監測器用于監測所述多核處理器的溫度并根據所監測的溫度生成第一狀態信息;所述負載監測器用于監測所述多個處理引擎中的至少一個處理引擎的利用率并根據所監測的利用率生成第二狀態信息;并且所述脈沖調制發生器進一步用于根據所述第一狀態信息計算溫度增長率;其中,當所述溫度增長率等于或者低于閾值時,所述控制方波的占空比根據所述第二狀態信息調整,以用于使所述多核處理器的利用率保持在期望值;當所述溫度增長率高于所述閾值時,所述控制方波的占空比減小。
[0013]優選地,所述負載監測器進一步包括:活動處理引擎計數器,其用于監測所述多個處理引擎中的至少兩個處理引擎的利用率并根據所述至少兩個處理引擎的所述利用率計算所述多核處理器的綜合利用率;利用率控制器,其用于根據所述綜合利用率生成所述第二狀態信息。
[0014]在本發明一個優選實施例中,所述多個處理引擎劃分為多個分組,所述具有不同相位的控制方波的每一個用于分別輸入至相應分組內的處理引擎的門控端。
[0015]優選地,所述分組為8個;并且所述移相器進一步用于對所述控制方波進行移相以生成8個相位成公差為45°的等差序列的控制方波,并用于將所述8個相位成公差為45°的等差序列的控制方波的每一個輸入至相應分組內的處理引擎的門控端。
[0016]根據本發明另一個方面,提供一種多核處理器,包括:
[0017]多個處理引擎,其中每個處理引擎包括門控端;
[0018]用于控制所述門控端的系統,其進一步包括:
[0019]脈沖調制發生器,其用于生成控制方波;以及
[0020]移相器,其用于對所述控制方波進行移相以生成具有不同相位的控制方波,并將所述具有不同相位的控制方波分別輸入至所述每個處理引擎的所述門控端。
[0021]可選地,所述具有不同相位的控制方波具有彼此不同的相位。
[0022]優選地,所述具有不同相位的控制方波的所述相位成等差序列。
[0023]在本發明一個優選實施例中,所述用于控制所述門控端的系統還包括:狀態監測器,其用于監測所述多核處理器的狀態并根據所監測的狀態生成狀態信息;其中,所述控制方波根據所述狀態信息生成。
[0024]在本發明一個優選實施例中,所述狀態監測器包括溫度監測器,其用于監測所述多核處理器的溫度并根據所監測的溫度生成所述狀態信息;并且所述脈沖調制發生器進一步用于根據所述狀態信息計算溫度增長率;其中,當所述溫度增長率高于閾值時,所述控制方波的占空比減小;當所述溫度增長率等于或低于所述閾值時,所述控制方波的所述占空比增大。
[0025]在本發明一個優選實施例中,所述狀態監測器包括負載監測器,其用于監測所述多個處理引擎中的至少一個處理引擎的利用率并根據所監測的利用率生成所述狀態信息;其中,所述控制方波的占空比根據所述狀態信息調整,以使所述多核處理器的利用率保持
在期望值。
[0026]在本發明一個優選實施例中,所述狀態監測器包括溫度監測器和負載監測器;其中所述溫度監測器用于監測所述多核處理器的溫度并根據所監測的溫度生成第一狀態信息;所述負載監測器用于監測所述多個處理引擎中的至少一個處理引擎的利用率并根據所監測的利用率生成第二狀態信息;并且所述脈沖調制發生器進一步用于根據所述第一狀態信息計算溫度增長率;其中,當所述溫度增長率等于或者低于閾值時,所述控制方波的占空比根據所述第二狀態信息調整,以使所述多核處理器的利用率保持在期望值;當所述溫度增長率高于所述閾值時,所述控制方波的占空比減小。
[0027]優選地,所述負載監測器進一步包括:活動處理引擎計數器,其用于監測所述多個處理引擎中的至少兩個處理引擎的利用率并根據所述至少兩個處理引擎的所述利用率計算所述多核處理器的綜合利用率;利用率控制器,其用于根據所述綜合利用率生成所述第二狀態信息。
[0028]在本發明一個優選實施例中,所述多個處理引擎劃分為多個分組,所述具有不同相位的控制方波的每一個分別輸入至相應分組內的處理引擎的門控端。
[0029]優選地,所述分組為8個;并且所述移相器進一步用于對所述控制方波進行移相以生成8個相位成公差為45°的等差序列的控制方波,并將所述8個相位成公差為45°的等差序列的控制方波的每一個輸入至相應分組內的處理引擎的門控端。
[0030]本發明所提供的上述用于控制多核處理器的門控端的系統和多核處理器使得當多核處理器上負載變化時,在不同處理引擎上負載變化可以不是同時發生。相應地,對于多核處理器,在一個工作周期內的某時間段的負載處理被均勻到一個工作周期內更長的時間段內完成。從而減小負載變化所引起的電流和電壓噪聲以及溫度上升。
【專利附圖】
【附圖說明】
[0031]本發明的下列附圖在此作為本發明的一部分用于理解本發明。附圖中示出了本發明的實施例及其描述,用來解釋本發明的原理。在附圖中,
[0032]圖1示意出根據本發明一個實施例的用于控制多核處理器的門控端的系統100 ;以及
[0033]圖2示意出未經移相控制的具有8個處理引擎的多核處理器上的利用率;
[0034]圖3示意出根據本發明一個實施例的、經移相控制的具有8個處理引擎的多核處理器上的利用率;
[0035]圖4示意出根據本發明另一個實施例的用于控制多核處理器的門控端的系統400 ;
[0036]圖5示意出根據本發明又一個實施例的用于控制多核處理器的門控端的系統500 ;
[0037]圖6示意出根據本發明再一個實施例的用于控制多核處理器的門控端的系統600 ;
[0038]圖7示意出根據本發明一個實施例的多核處理器700。
【具體實施方式】
[0039]現在,將更為詳細地描述本發明的優選實施方式,其示例在附圖中示出。本領域普通技術人員應認識到,下面的描述僅僅是示例性的而并非意圖進行任何方式的限定。
[0040]為了徹底了解本發明,將在下列的描述中提出詳細的結構。顯然,本發明的施行并不限定于本領域的技術人員所熟習的特殊細節。本發明的較佳實施例詳細描述如下,然而除了這些詳細描述外,本發明還可以具有其他實施方式。
[0041]圖1示意出根據本發明一個實施例的、用于控制多核處理器的門控端的系統100。如圖1所示,用于控制多核處理器的門控端的系統100包括脈沖調制發生器120和移相器130。
[0042]脈沖調制發生器120用于生成控制方波。移相器130用于對控制方波進行移相以生成具有不同相位的控制方波,并用于將具有不同相位的控制方波分別輸入至多核處理器中的多個處理引擎的每一個的門控端。
[0043]脈沖調制發生器120所生成的控制方波的頻率優選為大于20KHz且小于30KHz。由于人可以聽到聲音的頻 率約為20Hz至20KHz,因此采用大于20KHz且小于30KHz頻率的控制方波可以避免電路工作時產生聽覺噪聲。
[0044]可選地,具有不同相位的控制方波可以具有彼此不同的相位。由于不同控制方波具有彼此不同的時域相位,因此控制方波經由處理引擎的門控端可以使得每個處理引擎均在不同的時間被使能,從而多核處理器上的負載處理可以盡可能地分布在整個工作周期的不同時間段上進行。負載變化也相應地體現在整個工作周期上,從而避免了負載在某些時間上的顯著變化。
[0045]圖2示出未經移相控制的具有8個處理引擎的多核處理器上的利用率。從圖中可以得知多核處理器中8個處理引擎各自的利用率SI至S8以及8個處理引擎利用率的和S9。處理引擎的利用率是處理引擎的工作時間與使能時間的比值。如圖2所示,如果沒有對多個處理引擎的門控端進行移相控制,那么在0.5至2.5以及7.5至10.5所表示的時間期間,8個處理引擎同時工作,使得8個處理引擎的利用率SI至S8的和S9約為60%。圖3示出經移相控制的具有8個處理引擎的多核處理器上的利用率。如圖3所示,如果對8個處理引擎的門控端進行移相控制,那么8個處理引擎在0.5至2.5所表示的時間期間內完成的工作將均勻到O至8表示的工作周期內完成,7.5至10.5所表示的時間期間內完成的工作將均勻到8至16所表示的工作周期內完成。從而,利用率SI至S8的和S9在0.5至
2.5以及7.5至10.5所表示的時間期間減小至0.2左右。結合圖2和圖3可知,通過移相器130對控制方波進行移相以生成具有不同相位的控制方波來對多個處理引擎的門控端進行控制,使得8個處理引擎的利用率的和在工作周期內的某時間段明顯減小。也就是說,對于多核處理器來說,在一個工作周期內的某時間段的負載處理被均勻到一個工作周期內更長的時間段內完成。從而,減小負載變化所引起的電流和電壓噪聲以及溫度上升。[0046]優選地,具有不同相位的控制方波的相位可以成等差序列。不同相位的控制方波的相位成等差序列分布可以使多核處理器上的負載處理更平均地分布在整個工作周期的不同時間段上。具體地,如圖1所示,如果移相器130輸出8個不同相位的控制方波,那么其中每個控制方波之間具有45度的相位差。例如,假設所生成的控制方波的頻率為25KHz,那么時域上45度的相位差將產生每個控制方波之間5微秒的時間差。具有5微秒時間差的控制方波經由處理引擎的門控端可以使得每個處理引擎相比前一個使能的處理引擎延后5微秒使能。
[0047]上述用于控制多核處理器的門控端的系統100可使多個處理引擎在不同的時間使能,從而對于多核處理器來說,在整個工作周期內的更多的時間其將是非滿負載工作的。也就是說,當其中一些處理引擎正進行工作時,另一些處理引擎可能處于空閑狀態。因此,當多核處理器上負載變化時,在每個處理引擎上該負載變化可以不是同時發生。對于多核處理器,在一個工作周期內的某時間段的負載處理被均勻到一個工作周期內更長的時間段內完成。從而減小負載變化所引起的電流和電壓噪聲以及溫度上升。
[0048]如圖4示意出根據本發明另一個實施例的用于控制多核處理器的門控端的系統400。系統400不僅包括脈沖調制發生器420和移相器430,還包括狀態監測器440,其用于監測多核處理器的狀態并根據所監測的狀態生成狀態信息。其中,控制方波根據狀態信息生成。
[0049]從上述控制方波的生成過程可以知道,所生成的控制方波的占空比與多核處理器的狀態相關聯。而控制方波經移相處理后進一步輸出至多核處理器的每個處理引擎的門控端來調整處理引擎的使能時間。通過調整處理引擎的使能時間,多核處理器的狀態發生改變。反過來,改變后的狀態又影響控制方波的占空比,從而形成類似反饋控制的循環過程。經過一段時間的循環控制,可以使得多核處理器的狀態到達預期的值。多核處理器的狀態可以是諸如多核處理器的溫度、溫度增長率和利用率等等。
[0050]優選地,狀態監測器440可以包括溫度監測器,其用于監測多核處理器的溫度并根據所監測的溫度生成狀態信息。脈沖調制發生器420進一步用于根據狀態信息計算溫度增長率。其中,當溫度增長率高于閾值時,控制方波的占空比減小;當溫度增長率等于或低于閾值時,控制方波的占空比增大。
[0051]根據溫度監測器所監測的溫度生產的狀態信息可以是諸如溫度的數字值。脈沖調制發生器420根據所輸入的溫度的數值可以進一步計算出每秒溫度的增長率。當溫度增長率高于閾值時,說明多核處理器上負載處理變化較大。在這樣的情況下,可以通過減小處理器上的負載處理量來控制溫度增長率。因此,通過減小控制方波的占空比,以使得由處理引擎門控端使能的處理引擎的使能時間減小。從而多核處理器上進行處理的負載量降低,以使得溫度增長率隨之減小。這樣,可以將溫度增長率控制在合適的范圍內。優選地,溫度增長率范圍為0.3°C?0.6°C /每秒,其可以避免溫度迅速上升使多核處理器的封裝容易老化甚至破裂,以及其他相關不利影響。同樣,當控制方波的占空比增大時,由處理引擎門控端使能的處理引擎的使能時間增大。從而,在需要處理大量負載時,多核處理器上同時進行處理的負載量可以升高。控制方波的占空比最大可以升高到100%以充分滿足負載處理的需要。
[0052]優選地,狀態監測器440可以包括負載監測器,其用于監測多個處理引擎中的至少一個處理引擎的利用率并根據所監測的利用率生成狀態信息。其中,控制方波的占空比根據狀態信息調整,以用于使多核處理器的利用率保持在期望值。
[0053]如上所述,處理引擎的利用率是處理引擎的工作時間與使能時間的比值。多核處理器的利用率可以通過監測一個處理引擎的利用率直接得出或者監測多個處理引擎的利用率求平均得出。處理器引擎的使能時間通過控制方波經由門控端來控制,而工作時間隨實際的負載情況變化。因此,可以通過改變處理器引擎的使能時間來提高利用率。也就是說,可以通過改變控制方波的占空比來提高利用率。因為控制方波的占空比由來自利用率的狀態信息控制,所以控制方波的占空比可以跟隨實際利用率而變化。通過對控制方波的調整可將利用率保持在期望的值。優選地,多核處理器的利用率保持在約90%。在這樣的情況下,使能時間與工作時間非常接近以充分節省電能;而在需要處理更多負載時,可以有10%左右的使能時間余量供使用。
[0054]圖5示意出根據本發明又一個實施例的用于控制多核處理器的門控端的系統500。該系統500中包括脈沖調制發生器520、移相器530以及狀態監測器540,其包括溫度監測器541和負載監測器542。其中溫度監測器541用于監測多核處理器的溫度并根據所監測的溫度生成第一狀態信息。負載監測器542用于監測多個處理引擎中的至少一個處理引擎的利用率并根據所監測的利用率生成第二狀態信息。脈沖調制發生器520進一步用于根據第一狀態信息計算溫度增長率。當溫度增長率等于或者低于閾值時,控制方波的占空比根據第二狀態信息調整,以用于使多核處理器的利用率保持在期望值;當溫度增長率高于閾值時,控制方波的占空比減小。
[0055]當溫度增長率等于或者低于閾值時,說明多核處理器上的負載處理沒有造成明顯的溫度上升。因此,不需要減小處理引擎的使能時間來限制負載處理。如上所述,控制方波的占空比可以通過所監測的實際利用率而生成的第二狀態信息來調整,從而將利用率保持在期望的值。如上所述,當溫度增長率高于閾值時,可以減小控制方波的占空比,以使得由處理引擎門控端使能的處理引擎的使能時間減小。從而多核處理器上進行處理的負載量降低,使得溫度增長率隨之減小,以將溫度增長率控制的合適范圍內。
[0056]優選地,負載監測器542進一步包括活動處理引擎計數器和利用率控制器。活動處理引擎計數器用于監測多個處理引擎中的至少兩個處理引擎的利用率并根據至少兩個處理引擎的利用率計算多核處理器的綜合利用率。利用率控制器用于根據綜合利用率生成第二狀態信息。通過監測多個處理引擎的利用率來計算處理器的綜合利用率可以將處理器引擎的利用率更精確地調整為期望的值。
[0057]圖6示意出根據本發明另一個實施例的用于控制多核處理器的門控端的系統600。該系統600包括脈沖調制發生器620和移相器630。優選地,多個處理引擎劃分為多個分組,具有不同相位的控制方波的每一個用于分別輸入至相應分組內的處理引擎的門控端。多核處理器中可能有上千個處理引擎。如果每個處理引擎均由不同相位的控制方波控制,那么用于控制多核處理器的門控端的系統的實現將會非常復雜而且成本昂貴。因此,在有很多處理引擎的情況下,可以采用對多核處理器進行分組控制的方法。
[0058]優選地,分組為8個。移相器630進一步用于對控制方波進行移相以生成8個相位成公差為45°的等差序列的控制方波,并用于將8個相位成公差為45°的等差序列的控制方波的每一個輸入至相應分組內的處理引擎的門控端。由于處理引擎的數量通常為8的整數倍,因此將處理引擎分為8個組使得用于控制多核處理器的門控端的系統更容易實現。圖6中示出了 8個分組,但是本領域普通技術人員可以理解,并且分組的個數不限于8個。
[0059]上述用于控制多核處理器的門控端的系統可以被提供為分立的組件或芯片,也可以集成到多核處理器芯片中。
[0060]根據本發明的另一個方面,提供一種多核處理器。圖7示意出根據本發明一個實施例的多核處理器700。多核處理器700包括多個處理引擎710和用于控制門控端的系統。每個處理引擎包括門控端711。用于控制門控端的系統進一步包括脈沖調制發生器720和移相器730。脈沖調制發生器720用于生成控制方波。移相器730用于對控制方波進行移相以生成具有不同相位的控制方波,并將具有不同相位的控制方波分別輸入至每個處理引擎的門控端。本領域普通技術人員可以理解,多核處理器中的該用于控制門控端的系統可以是上述參考圖1以及圖4至圖6描述的任意一個系統。為了簡潔,在此不再贅述。本領域普通技術人員參考圖1至圖6以及以上相關描述,可以理解其具體結構和功能。
[0061]本發明已經通過上述實施例進行了說明,但應當理解的是,上述實施例只是用于舉例和說明的目的,而非意在將本發明限制于所描述的實施例范圍內。此外本領域技術人員可以理解的是,本發明并不局限于上述實施例,根據本發明的教導還可以做出更多種的變型和修改,這些變型和修改均落在本發明所要求保護的范圍以內。本發明的保護范圍由附屬的權利要求書及其等效范圍所界定。
【權利要求】
1.一種用于控制多核處理器的門控端的系統,包括: 脈沖調制發生器,其用于生成控制方波;以及 移相器,其用于對所述控制方波進行移相以生成具有不同相位的控制方波,并用于將所述具有不同相位的控制方波分別輸入至所述多核處理器中的多個處理引擎的每一個的門控端。
2.如權利要求1所述的系統,其特征在于,所述具有不同相位的控制方波具有彼此不同的相位。
3.如權利要求2所述的系統,其特征在于,所述具有不同相位的控制方波的所述相位成等差序列。
4.如權利要求1所述的系統,其特征在于,所述系統還包括: 狀態監測器,其用于監測所述多核處理器的狀態并根據所監測的狀態生成狀態信息; 其中,所述控制方波根據所述狀態信息生成。
5.如權利要求4所述的系統,其特征在于, 所述狀態監測器包括溫度監測器,其用于監測所述多核處理器的溫度并根據所監測的溫度生成所述狀態信息;并且 所述脈沖調制發生 器進一步用于根據所述狀態信息計算溫度增長率; 其中,當所述溫度增長率高于閾值時,所述控制方波的占空比減小;當所述溫度增長率等于或低于所述閾值時,所述控制方波的所述占空比增大。
6.如權利要求4所述的系統,其特征在于, 所述狀態監測器包括負載監測器,其用于監測所述多個處理引擎中的至少一個處理引擎的利用率并根據所監測的利用率生成所述狀態信息; 其中,所述控制方波的占空比根據所述狀態信息調整,以用于使所述多核處理器的利用率保持在期望值。
7.如權利要求4所述的系統,其特征在于,所述狀態監測器包括溫度監測器和負載監測器; 其中所述溫度監測器用于監測所述多核處理器的溫度并根據所監測的溫度生成第一狀態信息; 所述負載監測器用于監測所述多個處理引擎中的至少一個處理引擎的利用率并根據所監測的利用率生成第二狀態信息;并且 所述脈沖調制發生器進一步用于根據所述第一狀態信息計算溫度增長率; 其中,當所述溫度增長率等于或者低于閾值時,所述控制方波的占空比根據所述第二狀態信息調整,以用于使所述多核處理器的利用率保持在期望值;當所述溫度增長率高于所述閾值時,所述控制方波的占空比減小。
8.如權利要求7所述的系統,其特征在于,所述負載監測器進一步包括: 活動處理引擎計數器,其用于監測所述多個處理引擎中的至少兩個處理引擎的利用率并根據所述至少兩個處理引擎的所述利用率計算所述多核處理器的綜合利用率; 利用率控制器,其用于根據所述綜合利用率生成所述第二狀態信息。
9.如權利要求1所述的系統,其特征在于,所述多個處理引擎劃分為多個分組,所述具有不同相位的控制方波的每一個用于分別輸入至相應分組內的處理引擎的門控端。
10.如權利要求9所述的系統,其特征在于,所述分組為8個; 并且所述移相器進一步用于對所述控制方波進行移相以生成8個相位成公差為45°的等差序列的控制方波,并用于將所述8個相位成公差為45°的等差序列的控制方波的每一個輸入至相應分組內的處理引擎的門控端。
11.一種多核處理器,包括: 多個處理引擎,其中每個處理引擎包括門控端; 用于控制所述門控端的系統,其進一步包括: 脈沖調制發生器,其用于生成控制方波;以及 移相器,其用于對所述控制方波進行移相以生成具有不同相位的控制方波,并將所述具有不同相位的控制方波分別輸入至所述每個處理引擎的所述門控端。
12.如權利要求11所述的多核處理器,其特征在于,所述具有不同相位的控制方波具有彼此不同的相位。
13.如權利要求12所述的多核處理器,其特征在于,所述具有不同相位的控制方波的所述相位成等差序列。
14.如權利要求11所述的多核處理器,其特征在于,所述用于控制所述門控端的系統還包括: 狀態監測器,其用于監測所述多核處理器的狀態并根據所監測的狀態生成狀態信息; 其中,所述控制方波根據所述狀態信息生成。
15.如權利要求14所述的多核處理器,其特征在于, 所述狀態監測器包括溫度監測器,其用于監測所述多核處理器的溫度并根據所監測的溫度生成所述狀態信息;并且 所述脈沖調制發生器進一步用于根據所述狀態信息計算溫度增長率; 其中,當所述溫度增長率高于閾值時,所述控制方波的占空比減小;當所述溫度增長率等于或低于所述閾值時,所述控制方波的所述占空比增大。
16.如權利要求14所述的多核處理器,其特征在于, 所述狀態監測器包括負載監測器,其用于監測所述多個處理引擎中的至少一個處理引擎的利用率并根據所監測的利用率生成所述狀態信息; 其中,所述控制方波的占空比根據所述狀態信息調整,以使所述多核處理器的利用率保持在期望值。
17.如權利要求14所述的多核處理器,其特征在于,所述狀態監測器包括溫度監測器和負載監測器; 其中所述溫度監測器用于監測所述多核處理器的溫度并根據所監測的溫度生成第一狀態信息; 所述負載監測器用于監測所述多個處理引擎中的至少一個處理引擎的利用率并根據所監測的利用率生成第二狀態信息;并且 所述脈沖調制發生器進一步用于根據所述第一狀態信息計算溫度增長率; 其中,當所述溫度增長率等于或 者低于閾值時,所述控制方波的占空比根據所述第二狀態信息調整,以使所述多核處理器的利用率保持在期望值;當所述溫度增長率高于所述閾值時,所述控制方波的占空比減小。
18.如權利要求17所述的多核處理器,其特征在于,所述負載監測器進一步包括: 活動處理引擎計數器,其用于監測所述多個處理引擎中的至少兩個處理引擎的利用率并根據所述至少兩個處理引擎的所述利用率計算所述多核處理器的綜合利用率; 利用率控制器,其用于根據所述綜合利用率生成所述第二狀態信息。
19.如權利要求11所述的多核處理器,其特征在于,所述多個處理引擎劃分為多個分組,所述具有不同相位的控制方波的每一個分別輸入至相應分組內的處理引擎的門控端。
20.如權利要求19所述的多核處理器,其特征在于,所述分組為8個; 并且所述移 相器進一步用于對所述控制方波進行移相以生成8個相位成公差為45°的等差序列的控制方波,并將所述8個相位成公差為45°的等差序列的控制方波的每一個輸入至相應分組內的處理引擎的門控端。
【文檔編號】G06F9/50GK103810044SQ201210445948
【公開日】2014年5月21日 申請日期:2012年11月9日 優先權日:2012年11月9日
【發明者】徐爽 申請人:輝達公司