TWI556094B - 用以控制鏈結介面之未使用硬體的電力消耗之方法、設備及系統 - Google Patents

用以控制鏈結介面之未使用硬體的電力消耗之方法、設備及系統 Download PDF

Info

Publication number
TWI556094B
TWI556094B TW104103912A TW104103912A TWI556094B TW I556094 B TWI556094 B TW I556094B TW 104103912 A TW104103912 A TW 104103912A TW 104103912 A TW104103912 A TW 104103912A TW I556094 B TWI556094 B TW I556094B
Authority
TW
Taiwan
Prior art keywords
hardware
link
logic
maximum
value
Prior art date
Application number
TW104103912A
Other languages
English (en)
Other versions
TW201602770A (zh
Inventor
維克尼斯瓦倫 拉加凡
Original Assignee
英特爾公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 英特爾公司 filed Critical 英特爾公司
Publication of TW201602770A publication Critical patent/TW201602770A/zh
Application granted granted Critical
Publication of TWI556094B publication Critical patent/TWI556094B/zh

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/325Power saving in peripheral device
    • G06F1/3253Power saving in bus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/3287Power saving characterised by the action undertaken by switching off individual functional units in the computer system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Software Systems (AREA)
  • Computing Systems (AREA)
  • Power Sources (AREA)
  • Microcomputers (AREA)

Description

用以控制鏈結介面之未使用硬體的電力消耗之方法、設備及系統 發明領域
本發明係關於計算系統,且詳言之係關於(但非排外地)此等系統中鏈結介面的電力管理。
隨著計算系統進展,計算系統中之組件正變得更複雜。因此,在組件之間耦接並通訊的互連架構複雜性亦增加以確保,頻寬要求針對最佳組件操作被滿足。此外,不同市場分割需要不同態樣之互連架構以適宜於市場需要。舉例而言,伺服器需要較高效能,而行動生態系統有時能夠為了電力節省而犧牲總體效能。又,多數網狀架構的單一目的為在最大電力節省情況下提供最高可能效能。
依據本發明之一實施例,係特地提出一種設備,其包含:多個硬體緩衝器,其各自儲存與一或多個虛擬通道相關聯的資訊;一組配邏輯,其用以判定對應於由經由一鏈結耦接之一第一裝置及一第二裝置共同支援的虛擬通 道之一最大數目的一識別符,且用以基於該識別符而獲得一控制值;以及一閘邏輯,其基於該控制值來提供一操作電壓至該等多個硬體緩衝器中的對應硬體緩衝器,其中當虛擬通道的該最大數目為小於該等多個硬體緩衝器時,該閘邏輯係用以防止該操作電壓提供至該等多個硬體緩衝器中的至少一者。
100‧‧‧處理器
101、102、2006、2007‧‧‧核心
101a、101b‧‧‧硬體執行緒/硬體執行緒時槽/架構狀態暫存器
102a、102b‧‧‧架構狀態暫存器
105‧‧‧匯流排
110‧‧‧晶片上介面模組
120‧‧‧ILTB/分支目標緩衝器/指令轉譯緩衝器(I-TLB)/提取單元
125‧‧‧解碼模組
126‧‧‧解碼器
130‧‧‧分配器及重命名器區塊
135‧‧‧重排序/引退單元//無序單元
140‧‧‧執行單元/排程其及執行單元區塊
150‧‧‧較低階資料快取記憶體及資料轉譯緩衝器(D-TLB)
175、210‧‧‧系統記憶體
176‧‧‧應用程式碼
177‧‧‧轉譯程式程式碼
180‧‧‧裝置/圖形處理器
200、700、1000‧‧‧系統
205‧‧‧處理器
206‧‧‧前側匯流排(FSB)
215‧‧‧控制器集線器/根複合體
216‧‧‧記憶體介面
217、221‧‧‧介面/埠//輸入/輸出模組
218、231‧‧‧I/O模組
219、232‧‧‧串行鏈結
220‧‧‧開關/橋
225、505、510、730、740、750、1010‧‧‧裝置
230‧‧‧圖形加速器
300‧‧‧分層協定堆疊
305‧‧‧異動層/轉譯層
310‧‧‧鏈結層
311‧‧‧封包序列識別符
312‧‧‧CRC
320‧‧‧實體層
321‧‧‧邏輯子區塊
322‧‧‧電氣子區塊/實體區塊
323‧‧‧訊框
400‧‧‧異動描述符
402‧‧‧全域識別符欄位
404‧‧‧屬性欄位
406‧‧‧通道識別符欄位
408‧‧‧本地異動識別符欄位
410‧‧‧源識別符欄位
412‧‧‧優先權屬性欄位
414‧‧‧保留屬性欄位
416‧‧‧定序屬性欄位
418‧‧‧非窺探屬性欄位
506‧‧‧傳輸邏輯
506/511‧‧‧傳輸對
507/512‧‧‧接收對
507‧‧‧接收邏輯
515、518‧‧‧路徑
516、517‧‧‧路徑/線
710‧‧‧根複合體
720‧‧‧開關
725、735‧‧‧鏈結介面
810、820、835、845、855、860、870‧‧‧區塊
830、840、850‧‧‧菱形
900‧‧‧儲存器
9100至910n‧‧‧項目
910x‧‧‧所選擇項目
920‧‧‧第一欄位
930‧‧‧第二欄位
9500至950n‧‧‧及閘
1005、1090‧‧‧鏈結
10200至1020n‧‧‧傳輸緩衝器
10250至1025n‧‧‧接收緩衝器
1030‧‧‧鏈結邏輯
1035‧‧‧異動邏輯
1040‧‧‧核心邏輯
1050‧‧‧組配邏輯
1055‧‧‧電力管理邏輯
1060‧‧‧閘邏輯
1070‧‧‧組配儲存器
1075‧‧‧經擴展之VC計數欄位
1080‧‧‧非依電性儲存器
1085‧‧‧映射表
2000‧‧‧系統單晶片(SoC)
2008‧‧‧快取記憶體控制件
2009‧‧‧匯流排介面單元
2010‧‧‧L2快取記憶體/互連件
2015‧‧‧GPU
2020‧‧‧視訊寫碼/解碼器
2025‧‧‧視訊介面
2030‧‧‧用戶識別模組(SIM)
2035‧‧‧啟動ROM
2040‧‧‧SDRAM控制器
2045‧‧‧快閃控制器
2050‧‧‧周邊控制器
2055‧‧‧電力控制器
2060‧‧‧DRAM
2065‧‧‧快閃記憶體
2070‧‧‧藍芽模組
2075‧‧‧3G數據機
2080‧‧‧GPS
2085‧‧‧WiFi
VC0至VCn‧‧‧虛擬通道
圖1係針對包括多核心處理器之計算系統之方塊圖的實施例。
圖2係由互連一組組件之點對點鏈結構成之網狀架構的實施例。
圖3係分層協定堆疊之實施例。
圖4係PCIe異動描述符的實施例。
圖5係PCIe串行點對點網狀架構的實施例。
圖6係根據一實施例之SoC設計的方塊圖。
圖7係根據本發明之一實施例的系統之方塊圖。
圖8係根據本發明之一實施例的組配方法之流程圖。
圖9A係根據一實施例之組配儲存器的方塊圖。
圖9B係根據一實施例之電壓控制電路之一部分的方塊圖。
圖10係根據一實施例之系統之一部分的方塊圖。
較佳實施例之詳細說明
在以下描述內容中,闡述諸如以下各者之實例的眾多特定細節以便提供對本發明之透徹理解:特定類型之處理器及系統組配、特定硬體結構、特定架構及微架構細節、特定暫存器組配、特定指令類型、特定系統組件、特定量測/高度、特定處理器管線級及操作等。然而,對於熟習此項技術者將顯而易見的是,此等特定細節不必用以實踐本發明。在其他例項中,諸如以下各者之熟知組件或方法已予以了詳細描述以便避免使本發明不必要地混淆:特定及替代性處理器架構、針對所描述演算法之特定邏輯電路/程式碼、特定韌體程式碼、特定互連操作、特定邏輯組配、特定製造技術及材料、特定編譯程式實施、演算法以程式碼的特定表達、特定斷電及閘控技術/邏輯,以及電腦系統的其他特定操作細節。
儘管參看特定積體電路中諸如在計算平台或微處理器中的能量節省及能效而可描述以下實施例,但其他實施例適用於其他類型之積體電路及邏輯裝置。本文中所描述之實施例的類似技術及教示內容可應用至亦可受益於更好能效及能量節省的其他類型之電路或半導體裝置。舉例而言,所揭示實施例不限於桌上型電腦系統或UltrabooksTM。且又可用於其他裝置中,諸如手持型裝置、平板電腦、其他薄型筆記型電腦、系統單晶片(SOC)裝置及嵌入式應用中。手持型裝置之一些實例包括蜂巢式電話、網際網路協定裝置、數位攝影機、個人數位助理(PDA)及手持型PC。嵌入式應用通常包括微控制器、數位信號處 理器(DSP)、系統單晶片、網路電腦(NetPC)、機上盒、網路集線器、廣域網路(WAN)交換器,或可執行下文教示之功能及操作的任何其他系統。此外,本文中所描述之設備、方法以及系統不限於實體計算裝置,但亦可係關於針對能量節省及效率的軟體最佳化。如在以下描述內容中將易於變得顯而易見的是,本文中所描述之方法、設備以及系統的實施例(不管參看硬體、韌體、軟體抑或其組合)對於藉由效能考量平衡的「綠色技術」遠景為至關重要的。
隨著計算系統進展,計算系統中之組件正變得更複雜。因此,在組件之間耦接並通訊的互連架構複雜性亦增加以確保,頻寬要求針對最佳組件操作被滿足。此外,不同市場分割需要不同態樣之互連架構以適宜於市場需要。舉例而言,伺服器需要較高效能,而行動生態系統有時能夠為了電力節省而犧牲總體效能。又,多數網狀架構的單一目的為在最大電力節省情況下提供最高可能效能。下文中,論述多個互連件,該等互連件將潛在地受益於本文中所描述的本發明之態樣。
參看圖1,描繪包括多核心處理器之計算系統之方塊圖的實施例。處理器100包括任何處理器或處理裝置,諸如微處理器、嵌入式處理器、數位信號處理器(DSP)、網路處理器、手持型處理器、應用程式處理器、共處理器、系統單晶片(SOC)或執行程式碼的其他裝置。在一個實施例中,處理器100包括至少兩個核心,即核心101及102,該等核心可包括不對稱核心或對稱核心(所說明實施例)。然而, 處理器100可包括可係對稱或不對稱的任何數目個處理元件。
在一個實施例中,處理元件指支援軟體執行緒的硬體或邏輯。硬體處理元件之實例包括:執行緒單元、執行緒時槽、執行緒、程序單元、內容(context)、內容單元、邏輯處理器、硬體執行緒、核心及/或任何其他能夠保持處理器的狀態(諸如執行狀態或架構狀態)的元件。換言之,在一個實施例中,處理元件指能夠獨立地與諸如軟體執行緒、作業系統、應用程式或其他程式碼的程式碼相關聯的任何硬體。實體處理器(或處理器插口)通常指積體電路,該積體電路潛在地包括任何數目個其他處理元件,諸如核心或硬體執行緒。
核心常常指位於能夠保持獨立架構狀態之積體電路上的邏輯,其中每一獨立保持之架構狀態與至少一些專用執行資源相關聯。相比於核心,硬體執行緒通常指位於能夠保持獨立架構狀態之積體電路上的任何邏輯,其中獨立保持之架構狀態共用對執行資源的存取。如可看出,當共用某些資源,且其他資源專用於一架構狀態時,硬體執行緒與核心的名稱的界線重疊。又常常地,核心及硬體執行緒被作業系統視為個別邏輯處理器,其中作業系統能夠個別地排程每一邏輯處理器上的操作。
如圖1中所說明,實體的處理器100包括兩個核心,即核心101及102。此處,核心101及102被視為對稱核心,即具有相同組配、功能單元及/或邏輯的核心。在另一 實施例中,核心101包括無序處理器核心,而核心102包括有序處理器核心。然而,核心101及102可個別地選自任何類型之核心,諸如本機核心、軟體管理核心、經調適以執行本機指令集架構(ISA)的核心、經調適以執行轉譯指令集架構(ISA)之核心、共同設計之核心,或其他已知核心。在異質核心環境(亦即,不對稱核心)中,某形式之轉譯諸如二元轉譯可用以在一個或兩個核心上排程或執行程式碼。又關於其他論述,在下文更詳細地描述說明於核心101中之功能單元,此是由於核心102中之單元在所描繪之實施例中以類似方式操作。
如所描繪,核心101包括兩個硬體執行緒101a及101b,該等執行緒亦可被稱作硬體執行緒時槽101a及101b。因此,在一個實施例中,諸如作業系統的軟體實體潛在地檢視處理器100作為四個分離處理器,亦即,能夠同時執行四個軟體執行緒的四個邏輯處理器或處理元件。如上文間接提到,第一執行緒與架構狀態暫存器101a相關聯,第二執行緒與架構狀態暫存器101b相關聯,第三執行緒可與架構狀態暫存器102a相關聯,且第四執行緒可與架構狀態暫存器102b相關聯。此處,架構狀態暫存器(101a、101b、102a及102b)中的每一者可被稱作處理元件、執行緒時槽或執行緒單元,如上文所描述。如所說明,架構狀態暫存器101a在架構狀態暫存器101b中複寫,因此針對邏輯處理器101a及邏輯處理器101b的個別架構狀態/內容能夠被儲存。在核心101中,諸如分配器及重命名器區塊130中指 令指標以及重命名邏輯之其他較小資源亦可針對執行緒101a及101b經複寫。諸如重排序/引退單元135中之重新排序緩衝器、ILTB 120、載入/儲存緩衝器及佇列的一些資源可經由分割共用。諸如以下各者之其他資源潛在地經充分共用:通用內部暫存器、頁表基暫存器、低階資料快取記憶體及資料-TLB 150、執行單元140,以及無序單元135的數個部分。
處理器100常常包括其他資源,該等資源可經充分共用、經由分割共用,或由處理元件專用/或對於處理元件專用。在圖1中,說明具有處理器之例示性邏輯單元/資源的純粹例示性處理器的實施例。應注意,處理器可包括或省略此等功能單元中的任一者,以及包括任何其他已知功能單元、邏輯或並未描繪的韌體。如所說明,核心101包括簡化之代表性無序(OOO)處理器核心。但在不同實施例中可利用有序處理器。OOO核心包括分支目標緩衝器120以預測待執行/採用之分支,以及指令轉譯緩衝器(I-TLB)120,以儲存針對指令的位址轉譯項目。
核心101進一步包括耦接至提取單元120以解碼所提取元素的解碼模組125。在一個實施例中,提取邏輯包括分別與執行緒時槽101a、101b相關聯的個別定序器。通常,核心101與第一ISA相關聯,其定義/指定在處理器100上可執行的指令。常常,為第一ISA之部分的機器程式碼指令包括指令之一部分(被稱作作業碼),其參考/指定待執行的指令或操作。解碼邏輯125包括電路,該電路自其作業碼 辨識出此等指令,且在管線上傳遞經解碼指令以供如藉由第一ISA定義的處理。舉例而言,如下文更詳細地論述,在一個實施例中,解碼器125包括經設計或經調適以辨識特定指令諸如異動指令的邏輯。作為由解碼器125進行之辨識的結果,架構或核心101採用特定預定動作以執行與適當指令相關聯的任務。重要的是請注意,本文中所描述之任務、區塊、操作及方法中的任一者可回應於單一或多個指令而執行;指令中的一些可為新指令或舊指令。請注意,在一個實施例中,解碼器126辨識同一ISA(或其子集)。作為替代方案,在異質核心環境中,解碼器126辨識第二ISA(第一ISA的子集或截然不同之ISA)。
在一個實例中,分配器及重命名器區塊130包括分配器以保留資源,諸如暫存器檔案以儲存指令處理結果。然而,執行緒101a及101b潛在地具有無序執行能力,其中分配器及重命名器區塊130亦保留其他資源,諸如重排序緩衝器以追蹤指令結果。單元130亦可包括暫存器重命名器以重命名程式/指令參考暫存器為在處理器100內部的其他暫存器。重排序/引退單元135包括組件,諸如上文所提及之重排序緩衝器、載入緩衝器及儲存緩衝器,以支援無序地執行之指令的無序執行及稍後的有序引退。
在一個實施例中,排程器及執行單元區塊140包括排程器單元以排程執行單元上之指令/操作。舉例而言,浮點指令在具有可用浮點執行單元之執行單元的一埠上排程。與執行單元相關聯之暫存器檔案亦經包括以儲存資訊 指令處理結果。例示性執行單元包括浮點執行單元、整數執行單元、跳轉執行單元、載入執行單元、儲存執行單元及其他已知執行單元。
較低階資料快取記憶體及資料轉譯緩衝器(D-TLB)150耦接至執行單元140。資料快取記憶體儲存最近使用/對其執行操作的元素,諸如資料運算元,該等元素潛在地保持於記憶體一致性陳述中。D-TLB儲存新近虛擬/線性位址至實體位址的轉譯。作為特定實例,處理器可包括頁表結構以將實體記憶體斷開成多個虛擬頁。
此處,核心101及102共用對較高階或更高階(further-out)快取記憶體的存取,諸如與晶片上介面110相關聯的第二階快取記憶體。應注意,較高階或更高階指自執行單元起增加或距執行單元變得更遠的快取記憶體階。在一個實施例中,較高階快取記憶體為末階資料快取記憶體(處理器100上記憶體階層上的最末快取記憶體),諸如第二或第三階資料快取記憶體。然而,較高階快取記憶體並非如此受限,此是由於其可與指令快取記憶體相關聯或包括指令快取記憶體。追蹤快取記憶體(一類型之指令快取記憶體)替代地可在解碼器125之後耦接以儲存最近解碼之追蹤。此處,指令潛在地指巨型指令(亦即,由解碼器辨識之通用指令),其可被解碼成多個微指令(微操作)。
在所描繪組配中,處理器100亦包括晶片上介面模組110。歷史上,在下文更詳細地描述之記憶體控制器已包括於在處理器100外部的計算系統中。在此情境下,晶片 上介面110與諸如以下各者之處理器100外部的裝置通訊:系統記憶體175、晶片組(常常包括記憶體控制器集線器以連接至系統記憶體175,及I/O控制器集線器以連接周邊裝置)、記憶體控制器集線器、北橋或其他積體電路。且在此情境下,匯流排105可包括任何已知互連件,諸如多分路匯流排、點對點互連件、串行互連件、並行匯流排、相干(例如,快取記憶體相干)匯流排、分層協定架構、差分匯流排及GTL匯流排。
系統記憶體175可專用與處理器100或與系統中的其他裝置共用。數種類型之系統記憶體175的常見實例包括DRAM、SRAM、非依電性記憶體(NV記憶體),及其他已知儲存器裝置。應注意,裝置180可包括圖形加速器、耦接至記憶體控制器集線器之處理器或卡、耦接至I/O控制器集線器之資料儲存器、無線收發器、快閃裝置、音訊控制器、網路控制器或其他已知裝置。
然而,最近,由於更多邏輯及裝置整合於單一晶粒諸如SOC上,因此此等裝置中之每一者可併入於處理器100上。舉例而言,在一個實施例中,記憶體控制器集線器與處理器100在同一封裝體及/或晶粒上。此處,核心之一部分(核心上部分)110包括用於與諸如系統記憶體175或圖形裝置180之其他裝置介接的一或多個控制器。包括用於與此等裝置介接之互連件及控制器的組配常常被稱作核心上組配(或非核心組配)。作為一實例,晶片上介面110包括用於晶片上通訊之環形互連件,及用於晶片外通訊的高速度 串行點對點鏈接(例如,匯流排105)。又,在SOC環境中,甚至更多裝置諸如網路介面、共處理器、系統記憶體175、圖形處理器180及任何其他已知電腦裝置/介面可整合於單一晶粒或積體電路上以提供具有高功能性及低電力消耗的小型外觀尺寸。
在一個實施例中,處理器100能夠執行編譯程式、最佳化及/或轉譯程式程式碼177以編譯、轉譯及/或最佳化應用程式碼176以支援本文中所描述的設備及方法並與之介接。編譯程式常常包括程式或程式集合以將原始本文/程式碼轉譯成目標本文/程式碼。通常,程式/應用程式碼藉由編譯程式的編譯以多個階段及多個遍次進行,以將高階程式設計語言程式碼轉換成低階機器或組合語言程式碼。又,單一遍次編譯程式可仍用於簡單編譯。編譯程式可利用任何已知編譯技術並執行任何已知編譯程式操作,諸如詞彙分析、預處理、剖析、語義分析、程式碼產生、程式碼轉換及程式碼最佳化。
較大編譯程式常常包括多個階段,但最常見地此等階段包括於兩個通用階段內:(1)前端,亦即大體而言語法處理、語義處理及一些轉換/最佳化可發生之處,及(2)後端,亦即大體上分析、轉換、最佳化及程式碼產生發生之處。一些編譯程式指中間編譯程式,其說明編譯程式之前端與後端之間的描繪的模糊化。因此,對編譯程式之插入、關聯、產生或其他操作的提及可發生於前述階段或遍次中之任一者中以及編譯程式的任何其他已知階段或遍次 中。作為例示性實例,編譯程式在一或多個編譯階段中潛在地插入操作、調用、函數等等,諸如在編譯之前端階段中插入調用/操作,且接著在轉換階段期間將調用/操作轉換成較低階程式碼。應注意,在動態編譯期間,編譯程式之程式碼或動態最佳化程式碼可插入此等操作/調用,以及在執行階段期間最佳化程式碼以供執行。作為特定例示性實例,二元程式碼(已編譯程式碼)在執行階段期間可經動態最佳化。此處,程式碼可包括動態最佳化程式碼、二元程式碼或其組合。
類似於編譯程式,諸如二元轉譯程式之轉譯程式靜態或動態地轉譯程式碼以最佳化及/或轉譯程式碼。因此,對程式碼、應用程式碼、程式碼或其他軟體環境之執行的參考可指:(1)動態或靜態地執行編譯程式程式、最佳化程式碼最佳化程式或轉譯程式以編譯程式碼、維持軟體結構、執行其他操作、最佳化程式碼,或轉譯程式碼;(2)執行包括操作/調用之主要程式碼諸如已經最佳化/編譯的應用程式碼;(3)執行與主要程式碼相關聯的諸如庫之其他程式碼以保持軟體結構、執行其他軟體相關操作或最佳化程式碼;或(4)其組合。
一個互連網狀架構包括PCIe架構。PCIe之主要目標為使得來自不同供應商之組件及裝置能夠在開放式架構中互操作,從而跨越多個市場分割;用戶端(桌上型電腦及行動裝置)、伺服器(標準及企業)以及嵌入式及通訊裝置。PCI高速為針對廣泛之多種將來計算及通訊平台定義的高 效能之通用I/O互連件。諸如其使用模型、載入儲存架構及軟體介面的一些PCI屬性已經由其修訂版得以保持,而先前並行匯流排實施已由高度可調式之充分串行介面來替換。PCI高速之最近版本利用點對點互連件、基於開關之技術及封包化協定的進展來遞送新位準的效能及特徵。電力管理、服務品質(QoS)、熱插/熱拔支援、資料完整性以及錯誤處置為由PCI高速支援之高階特徵中的一些。
參看圖2,說明由互連一組組件之點對點鏈結構成之網狀架構的實施例。系統200包括耦接至控制器集線器215之處理器205及系統記憶體210。處理器205包括任何處理元件,諸如微處理器、主機處理器、嵌入式處理器、共處理器或其他處理器。處理器205經由前側匯流排(FSB)206耦接至控制器集線器215。在一個實施例中,FSB 206為如下文所描述的串行點對點互連件。在另一實施例中,鏈結206包括與不同互連件標準相容的串行差分互連件架構。
系統記憶體210包括任何記憶體裝置,諸如隨機存取記憶體(RAM)、非依電性(NV)記憶體,或由系統200中之裝置可存取的其他記憶體。系統記憶體210經由記憶體介面216耦接至控制器集線器215。記憶體介面之實例包括雙資料速率(DDR)記憶體介面、雙通道DDR記憶體介面,及動態RAM(DRAM)記憶體介面。
在一個實施例中,控制器集線器215為周邊組件互連高速(PCIe或PCIE)互連階層中的根集線器、根複合體,或根控制器。控制器集線器215之實例包括晶片組、記 憶體控制器集線器(MCH)、北橋、互連件控制器集線器(ICH)、南橋,及根控制器/集線器。常常,術語晶片組指兩個實體分離之控制器集線器,亦即,耦接至互連控制器集線器(ICH)的記憶體控制器集線器(MCH)。請注意,當前系統常常包括與處理器205整合的MCH,而控制器215以如下文所描述之類似方式與I/O裝置通訊。在一些實施例中,同級間路由視需要經由根複合體215支援。
此處,控制器集線器215經由串行鏈結219耦接至開關/橋220。亦可被稱作介面/埠217及221的輸入/輸出模組217及221包括/實施分層協定堆疊以提供控制器集線器215與開關220之間的通訊。在一個實施例中,多個裝置能夠耦接至開關220。
開關/橋220在上游亦即直至一階層朝向根複合體自裝置225路由封包/訊息至控制器集線器215,且在下游亦即沿著階層遠離根控制器自處理器205或系統記憶體210路由封包/訊息至裝置225。在一個實施例中,開關220被稱作多個虛擬PCI至PCI橋裝置的邏輯總成。裝置225包括待耦接至電子系統之任何內部或外部裝置或組件,諸如I/O裝置、網路介面控制器(NIC)、添加式卡、音訊處理器、網路處理器、硬碟機、儲存裝置、CD/DVD ROM、監視器、印表機、滑鼠、鍵盤、路由器、攜帶型儲存裝置、火線裝置、通用串列匯流排(USB)裝置、掃描儀,及其他輸入/輸出裝置。常常,在PCIe中,諸如裝置之俗名(vernacular)被稱作端點。儘管未具體展示,但裝置225可包括PCIe至PCI/PCI-X 橋接器以支援舊版或其他版本PCI裝置。PCIe中之端點裝置常常類別為舊版PCIe或根複合體整合式端點。
圖形加速器230亦經由串行鏈結232耦接至控制器集線器215。在一個實施例中,圖形加速器230耦接至MCH,該MCH耦接至ICH。開關220且因此I/O裝置225接著耦接至ICH。I/O模組231及218亦實施分層協定堆疊以在圖形加速器230與控制器集線器215之間通訊。類似於上文所論述之MCH,圖形控制器或圖形加速器230自身可整合於處理器205中。
轉至圖3,說明分層協定堆疊之實施例。分層協定堆疊300包括任何形式之分層通訊堆疊,諸如快速路徑互連(QPI)堆疊、PCIe堆疊、下一代高效能計算互連堆疊,或其他分層堆疊。儘管就在下文參看圖2至圖5進行的論述內容與PCIe堆疊相關,但相同概念可應用至其他互連堆疊。在一個實施例中,協定堆疊300係包括異動層305、鏈結層310,亦稱作資料鏈結層310,及實體層320的PCIe協定堆疊。介面可表示為通訊協定堆疊300。作為通訊協定堆疊之表示亦可被稱作實施/包括協定堆疊的模組或介面。
PCI高速使用封包來在組件之間傳遞資訊。封包形成於異動層305與資料鏈結層310中以將資訊自傳輸組件攜載至接收組件。由於所傳輸封包流過其他層,因此該等封包藉由在彼等層處處置封包必要的外資訊擴展。在接收側,反向程序發生,且封包自其實體層320之表示轉換至資料鏈結層310的表示,且最終(對於異動層封包)轉換至可由 接收裝置之異動層305處理的形式。
在一個實施例中,異動層305提供裝置之處理核心與互連件架構之間的介面,諸如資料鏈結層310與實體層320。就此而言,異動層305之主要職責為組裝並拆開封包(亦即,異動層封包或TLP)。轉譯層305通常管理信用基礎流程控制用於TLP。PCIe實施分裂異動(亦即,具有由時間分離之請求及回應的異動),從而允許鏈結攜載其他訊務同時目標裝置收集針對回應的資料。
此外,PCIe利用基於信用之流程控制。在此方案中,裝置公告針對異動層305中每一接收緩衝器的最初信用量。鏈結之相對置末端處的外部裝置諸如控制器集線器對由每一TLP消耗的信用之數目計數。若異動並未超出信用限值,則可傳輸異動。在接收到回應之後,復原信用量。信用方案之優點為,信用傳回之潛時並不影響效能,其限制條件為並未遭遇到信用限值。
在一個實施例中,四個異動位址空間包括組配位址空間、記憶體位址空間、輸入/輸出位址空間及訊息位址空間。記憶體空間異動包括讀取請求及寫入請求中之一或多者以傳送至/自記憶體映射位置的資料。在一個實施例中,記憶體空間異動能夠使用兩種不同位址格式,例如,諸如32位元位址的短位址格式或諸如64位元位址的長位址格式。組配空間異動用以存取PCIe裝置的存取組配空間。對組配空間之異動包括讀取請求及撰寫請求。訊息空間異動(或簡單地訊息)經定義以支援PCIe代理程式之間的頻帶 內通訊。
因此,在一個實施例中,異動層305組裝封包標頭/有效負載306。當前封包標頭/有效負載的格式可於PCIe規範網站處的PCIe規範中找到。
快速參看圖4,說明PCIe異動描述符之實施例。在一個實施例中,異動描述符400為用於攜載異動資訊的機構。就此而言,異動描述符400支援系統中異動的識別。其他潛在用途包括追蹤預設異動排序之修改,及異動與通道的關聯。
異動描述符400包括全域識別符欄位402、屬性欄位404及通道識別符欄位406。在所說明之實例中,全域識別符欄位402描繪為包含本地異動識別符欄位408及源識別符欄位410。在一個實施例中,全域異動識別符402對於所有突出請求為獨特的。
根據一個實施,本地異動識別符欄位408為藉由請求代理程式產生的欄位,且其對於要求該請求代理程式之完成的所有突出請求為獨特的。此外,在此實例中,源識別符410獨特地識別PCIe階層內的請求者代理程式。因此,與源ID 410一起,本地異動識別符408欄位提供階層域內異動的全域識別。
屬性欄位404指定異動的特性及關係。就此而言,屬性欄位404潛在地用以提供允許修改異動之預設處置的額外資訊。在一個實施例中,屬性欄位404包括優先權屬性欄位412、保留屬性欄位414、定序屬性欄位416及非窺探 屬性欄位418。此處,優先權子欄位(即優先權屬性欄位412)可藉由起始程序修改以指派優先權給異動。保留屬性欄位414保留以供將來使用或供供應商定義的使用。使用優先權或安全性屬性的可能使用模型可使用保留屬性欄位來實施。
在此實例中,定序屬性欄位416用以供應輸送定序之類型的可選資訊,該定序類型可修改預設定序規則。根據一個實施例實施,為「0」之定序屬性指明預設定序規則應用,其中為「1」之定序屬性指明鬆懈定序,其中寫入可傳遞相同方向上的寫入,且讀取完成可傳遞相同方向上的寫入。非窺探屬性欄位418用以判定異動是否被窺探。如圖所示,通道ID欄位406識別異動與之相關聯的通道。
鏈結層310充當異動層305與實體層320之間的中間級。在一個實施例中,資料鏈結層310之職責為提供用於經由鏈結在兩個組件之間交換異動層封包(TLP)的可靠機構。資料鏈結層310之一側接受藉由異動層305組裝之TLP,應用封包序列識別符311(亦即,識別編號或封包編號),計算並應用錯誤偵測碼(亦即,CRC 312),且提交經修改之TLP至實體層320以供越過實體傳輸至外部裝置。
在一個實施例中,實體層320包括邏輯子區塊321及電氣子區塊322以將封包實體傳輸至外部裝置。此處,邏輯子區塊321對實體層321之「數位」功能負責。就此而言,邏輯子區塊包括準備去話資訊以供實體子區塊322傳輸的傳輸區段,及在將接收到之資訊傳遞至鏈結層310之前識別 並準備接收到之資訊的接收器區段。
實體區塊322包括傳輸器及接收器。由邏輯子區塊321向傳輸器供應符號,傳輸器使該等符號串列化並傳輸至外部裝置上。接收器自外部裝置被供應有串列化符號,且將所接收信號變換成位元串流。位元串流經解串列層化並供應給邏輯子區塊321。在一個實施例中,使用8b/10b傳輸碼,在該8b/10b傳輸碼處傳輸/接收10位元符號。此處,特殊符號用以由訊框323向封包加訊框。此外,在一個實例中,接收器亦提供自傳入串行串流復原的符號時脈。
如上所陳述,儘管異動層305、鏈結層310及實體層320參看PCIe協定堆疊之特定實施例論述,但分層協定堆疊並不因此受限。實際上,可包括/實施任何分層協定。作為一實例,表示為分層協定的埠/介面包括:(1)組裝封包之第一層,亦即異動層;使封包排成序列的第二層,亦即鏈結層;以及傳輸封包之第三層,亦即,實體層。作為特定實例,利用QPI分層協定。
接著參看圖5,說明PCIe串行點對點網狀架構的實施例。儘管說明了PCIe串行點對點鏈結之實施例,但串行點對點鏈結並非如此受限,此是由於其包括用於傳輸串行資料的任何傳輸路徑。在所展示之實施例中,基本PCIe鏈結包括兩個低電壓之差分驅動信號對:傳輸對506/511及接收對512/507。因此,裝置505包括傳輸邏輯506以傳輸資料至裝置510,且接收邏輯507自裝置510接收資料。換言之,兩個傳輸路徑(亦即,路徑516及517)以及兩個接收路徑 (亦即,路徑518及515)包括於PCIe鏈結中。
傳輸路徑至用於傳輸資料的任何路徑,諸如傳輸線、銅線、光學線、無線通訊通道、紅外線通訊鏈結,或其他通訊路徑。兩個裝置諸如裝置505與裝置510之間的鏈結被稱作鏈結,諸如鏈結515。鏈結可支援一個單工通道,每一單工通道表示一組差分信號對(一對信號用於傳輸,一對信號用於接收)。為了縮放頻寬,鏈結可聚集藉由xN指明的多個單工通道,其中N為任何所支援鏈結寬度,諸如1、2、4、8、12、16、32、64或更寬之鏈結寬度。
差分對指諸如線516及517的兩個傳輸路徑以傳輸差分信號。作為一實例,當線516自低電壓位準雙態觸發至高電壓位準(亦即,上升邊緣)時,線517自高邏輯位準驅動至低邏輯位準(亦即,下降邊緣)。差分信號潛在地證明更好電特性,諸如更好信號完整性(亦即,交叉耦合、電壓突增/下衝、鈴響等)。此情形允許更好的時序視窗,其啟用更快之傳輸頻率。
接著轉至圖6,描繪根據一實施例之SoC設計的實施例。作為特定例示性實例,SoC 2000包括於使用者設備(UE)中。在一個實施例中,UE指待由終端使用者使用以通訊的任何裝置,諸如手持式電話、智慧型電話、平板電腦、超薄筆記型電腦、具有寬帶配接器的筆記型電腦,或任何其他類似通訊裝置。常常,UE連接至基地台或節點,該基地台或節點潛在地本質上對應於GSM網路中的行動台(MS)。
此處,SoC 2000包括2個核心,即2006及2007。類似於上文之論述,核心2006及2007可符合指令集架構,諸如基於Intel®架構CoreTM的處理器、Advanced Micro Devices,Inc.(AMD)處理器、基於MIPS之處理器、基於ARM之處理器設計,或其消費者,以及其被授權人或採用者。核心2006及2007耦接至快取記憶體控制件2008,其與匯流排介面單元2009及L2快取記憶體2010相關聯以與系統2000的其他部分通訊。互連件2010包括晶片上互連件,諸如IOSF、AMBA或上文所論述之其他互連件,其潛在地實施本文中所描述之一或多個態樣。
互連件2010提供至諸如以下各者之其他組件的通訊通道:用戶識別模組(SIM)2030以與SIM卡介接、啟動ROM 2035以保持啟動程式碼以供核心2006及2007執行從而初始化並啟動SOC 2000、SDRAM控制器2040以與外部記憶體(例如,DRAM 2060)介接、快閃控制器2045以與非依電性記憶體(例如,快閃記憶體2065)介接、周邊件控制器2050(例如,串行周邊介面)以與周邊件介接、視訊寫碼/解碼器2020及視訊介面2025以顯示並接收輸入(例如,觸控啟用之輸入)、GPU 2015以執行圖形相關通訊等。此等介面中之任一者可併有本文中所描述的態樣。
此外,系統說明用於通訊之周邊件,諸如藍芽模組2070、3G數據機2075、GPS 2080及WiFi 2085。又系統中所包括為電力控制器2055。請注意,如上文所陳述,UE包括用於通訊的無線電。因此,此等周邊通訊模組並非皆被 需要。然而,在UE中,應包括用於外部通訊之某形式的無線電。
在各種實施例中,當由裝置之組配判定將不使用借助於給定互連件耦接之一或多個裝置的電路時,此電路之至少數個部分可受到電力控制(例如,電力經閘控)。作為本文中所描述之實施例的實例,當由系統之組配判定經由互連件提供通訊的一或多個虛擬通道將不用於通訊時,與此等虛擬通道相關聯的電路可置放於斷電狀態(例如,藉由不提供操作電壓至此電路)。當然,實施例不限於此實例,且本文中所描述之技術同樣適用於其他電路的電力控制。
圖7係根據本發明之一實施例的系統之方塊圖。如圖7中所示,系統700為具有耦接至開關720之各種裝置之PCIeTM系統的實施。裝置中之每一者由對應鏈結(分別為鏈結1至4)耦接至開關720。請注意,在一實施例中,鏈結中之每一者可具有不同特性及操作參數。
作為實例,裝置730、740及750可為不同類型之周邊裝置。作為一個此實例,裝置730可為圖形加速器裝置,裝置740可為儲存裝置,且裝置750可為另一類型之攜帶性裝置,例如俘獲裝置。開關720由另一鏈結(鏈結4)進一步耦接至根複合體710。作為一個實例,根複合體710可為系統之主要資料處理器,諸如多核心處理器。當然,複合體之其他實例有可能。
特別提及開關720與裝置730之間的連接,請注意,變化數目個虛擬通道提供於不同裝置中。如所看出, 開關720在此實例中包括8個虛擬通道,每一通道具有每一鏈結介面725中對應之硬體緩衝器。實情為,裝置730包括僅4個虛擬通道,且因此具有包括僅4個硬體緩衝器的鏈結介面735。因為此等裝置具有全異數目個虛擬通道及緩衝器,所以開關720之鏈結介面725內的緩衝器中之至少一些將不使用。因此,使用本發明的實施例,此等緩衝器可在硬體中停用,使得電力消耗對於此等緩衝器被避免。雖然在圖7之實施例中藉由此特定實施展示,但應理解,許多變化有可能。
現參看圖8,所展示為根據本發明之一實施例的組配方法之流程圖。在特定實施例中,方法800可由經由鏈結耦接在一起之裝置的組配邏輯在裝置初始化期間來執行。此外,方法亦可動態地被執行,只要存在對裝置或經由鏈結耦接至裝置之硬體的任何改變。舉例而言,若新裝置耦接至端點,則鏈結將重新訓練,且組配邏輯將因此重新分配某些所判定值。參看圖8,方法800藉由讀取組配儲存器即本地裝置或端點以及位於耦接此等2個裝置之遠端處的遠端裝置或端點中的兩者之組配儲存器的擴展VC計數欄位開始(區塊810及區塊820)。在一個實施例中,此擴展VC計數欄位可儲存於對應裝置之儲存器內,例如PCIeTM組配空間內。出於論述之目的,假設本地裝置(端點1)對應於圖7之開關720,且遠端裝置(端點2)對應於圖7之裝置730。
藉由上文陳述之表示(具有存在於開關720中之8個虛擬通道及緩衝器及存在於裝置730中之4個虛擬通道及 緩衝器),針對擴展VC計數欄位的自開關裝置720傳回的值將為8,且自裝置730傳回之值將為4。更確切而言,在此計數欄位為3位元欄位的實施例中,為零之值對應於所支援之單一虛擬通道(例如,VC0),且此3位元二進位值的值1至7對應於所支援VC的額外數目。因此,在此實施例中,開關720之經擴展VC計數欄位具有為111b的值,且裝置730之經擴展VC計數欄位具有011b的計數。當然其他表示有可能。
仍參見圖8,下一控制傳遞至菱形830,在菱形處可判定本地裝置之VC計數是否大於遠端裝置的VC計數。若是,則控制傳遞至區塊835,在區塊835處鏈結最大VC值可設定為來自遠端裝置的經擴展VC計數欄位。請注意,此鏈結最大VC值或VC ID值對應於所連接端點之經擴展VC計數欄位的最小值。且因此在此例項中,此鏈結最大VC值設定位011b的值。
然而,若此情形並非本地裝置之VC計數大於遠端裝置的VC計數,則控制替代地自菱形830傳遞至菱形840,在菱形840處可判定本地裝置之VC計數是否等於遠端裝置的VC計數。若是,則控制傳遞至區塊845,在區塊845處鏈結最大VC值可設定位來自本地裝置的經擴展VC計數欄位。否則,控制傳遞至菱形850,在菱形850處,判定本地裝置之VC計數是否小於遠端裝置的VC計數。在此狀況下,控制傳遞至區塊855,在區塊855處鏈結最大VC值可設定位來自本地裝置的經擴展VC計數欄位。
不考慮在區塊835、845及855中之一者中設定的 鏈結最大VC值,控制接著傳遞至區塊860,在區塊860處可存取具有此等鏈結最大VC值的諸如表儲存器之組配儲存器。更確切而言,藉由存取此表,可獲得所選擇鏈結最大VC值的另一表示。如關於圖9A將進一步展示,表可包括各自提供最大鏈結VC值之3位元表示及相同值之對應8位元表示的多個項目。且因此,控制傳遞至區塊870,在區塊870處可獲得所存取項目之個別位元,其中每一位元對應於可用數目個虛擬通道中的一者,且表示對應硬體緩衝器之啟用狀態。即,在實例中,邏輯一值指示作用中緩衝器且因此對應啟用狀態,且邏輯零值指示非作用中緩衝器且因此對應停用狀態。當然其他表示有可能。
現參看圖9A,所展示為根據一實施例之組配儲存器的方塊圖。如圖9A中所展示,儲存器900可存在於系統內的所要位置處,例如,分離之非依電性儲存器中。或者,組配儲存器900中資訊的複本可存在(例如)於系統之裝置中之每一者的組配空間中。又其他實施例可將此資訊儲存於諸如外部暫存器或唯讀記憶體的又一位置中。如可看出,儲存器900包括多個項目9100至910n。每一項目包括第一欄位920及第二欄位930。第一欄位920可對應於最大鏈結VC值,且因此用作用於存取儲存器900之所選擇項目的可定址構件。又,第二欄位930提供最大鏈結VC值之對應8位元表示。在一實施例中,自VC ID映射之8位元值可係使得每一位元對應於該端點之虛擬通道緩衝器或端點的其他單工通道映射;例如,位元0映射至VC0,位元1映射至VC1,且最 終位元7映射至VC7。在此實施例中,二進位1指示「供電」狀態,而0指示「斷電」。在一實施例中,此等狀態接著驅動至每一緩衝器之電壓控制電路,以控制操作電壓至緩衝器的提供(或替代地不提供操作電壓)。
接著參看圖9B,所展示為自表獲得之所選擇項目910x,且其用途為控制操作電壓至裝置之對應硬體緩衝器的提供。更確切而言,圖9B展示一組及閘9500至950n。此等邏輯閘中之每一者經組配以自所選擇項目接收對應位元,及例如自晶片外電壓調節器獲得的對應操作電壓。當然,操作電壓可替代地自其他位置(晶片上或晶片外位置)接收到。當給定位元具有邏輯高值時,及閘在作用中,且因此操作電壓被提供至對應硬體緩衝器。否則,及閘並不將操作電壓傳遞至緩衝器,且緩衝器在正常操作期間被停用,因此減小電力消耗。儘管在圖9B之實施例中以此高位準展示,但應理解有可能有變化。
現參看圖10,所展示為根據一實施例的系統之一部分的方塊圖。如圖10中所展示,系統1000可包括各種組件。此處出於論述之目的,僅展示兩個組件,即可為經由鏈結1005耦接至另一電路(未圖示)的任何類型之積體電路的裝置1010,及經由鏈結1090耦接的非依電性儲存器1080。在所展示之實施例中,鏈結1005可為在傳輸方向及接收方向上具有單向串行鏈結的PCIeTM鏈結。
裝置1010可為任何類型之裝置,其包括根複合體、開關、周邊裝置或等等。為易於說明,僅展示裝置1010 之數個部分。更確切而言,提供一組接收緩衝器10250至1025n。此等硬體緩衝器各自可對應於給定虛擬通道VC0至VCn。此外,亦提供一組傳輸緩衝器10200至1020n,再一次,其中每一緩衝器與特定虛擬通道相關聯。應注意,可指派各種訊務等級(TC)以經由給定VC及對應硬體緩衝器來路由。使用本發明之實施例,僅經由閘邏輯1060向此等虛擬通道硬體緩衝器中之經啟用虛擬通道硬體緩衝器提供操作電壓,閘邏輯1060又自組配邏輯1050接收控制資訊,下文進一步論述組配邏輯1050的細節。
仍參看裝置1010,緩衝器1020及1025可與實體層之其他電路(為易於說明在圖10中未展示)通訊。自此處,可繼續與鏈結邏輯1030通訊以執行各種鏈結層處理。其後,可繼續與可執行異動層處理之異動邏輯1035通訊。其後,可與核心邏輯1040發生通訊,核心邏輯1040可為裝置1010的主要邏輯電路。舉例而言,在多核心處理器之情形下,核心邏輯1040可為一或多個處理器核心或其他處理單元。作為裝置1010為圖形加速器裝置的另一實例,核心邏輯1040可為圖形處理單元。
又圖10中所展示係可為硬體、軟體及/或韌體(或其組合)的組配邏輯1050,當系統1000供電時,當裝置1010經重置時,或當其他動態改變在操作期間發生時,組配邏輯1050用以執行組配操作。在一實施例中,組配邏輯1050可包括邏輯以執行本文中所描述的電力管理控制。因此,在展示於圖10中之實施例,組配邏輯1050包括電力管理邏 輯1055,其可經組配以執行諸如上文所論述之方法800的方法。
為此,組配邏輯1050可與組配儲存器1070通訊。在各種實施例中,組配儲存器1070可為裝置1010之非依電性儲存器,該非依電性儲存器包括PCIeTM組配儲存器空間。在各種組配資訊中,此處所儲存為諸如本文中所描述的經擴展之VC計數欄位1075。當前,應理解,額外組配資訊亦儲存於儲存器1070內。
在特定實施例中,可提供使3位元最大VC計數值與對應8位元值相關聯的映射表。當然,取決於可能虛擬通道、硬體緩衝器或待控制之其他電路的量,經寫碼位元及個別位元表示之數目可發生變化。在所展示之實施例中,分離之非依電性儲存器1080可包括映射表1085。映射表1085可因此使最大VC計數值關聯至單工通道映射。換言之,所支援虛擬通道之最大數目的數目之指示可被映射至對應之一組啟用指示符,該等啟用指示符可用以控制操作電壓是否提供給一或多個硬體緩衝器,每一硬體緩衝器與對應虛擬通道相關聯。當然,雖然在此實施例中論述為基於啟用虛擬通道控制硬體緩衝器,但應理解,裝置內之額外硬體可類似地得到控制。作為一實例,可在逐單工通道或虛擬通道基礎上控制的此額外硬體可包括圖形卡,諸如USB至PCIeTM或SATA至PCIeTM卡的子卡,或其他此裝置。
實施例因此使得諸如VC硬體緩衝器之未使用硬體在例如藉由組配邏輯進行之組配控制下斷電。以此方 式,可減小系統電力,此是由於僅實際上使用之硬體被供電。
以下實例涉及其他實施例。
在一實例中,一種設備包含:多個硬體緩衝器,其各自儲存與一或多個虛擬通道相關聯的資訊;一組配邏輯,其判定對應於由經由一鏈結耦接之一第一裝置及一第二裝置共同支援的虛擬通道之一最大數目的一識別符,且基於該識別符獲得一控制值;以及一閘邏輯,其基於該控制值提供一操作電壓至該等多個硬體緩衝器中的對應硬體緩衝器。
在一實施例中,閘邏輯可經組配以當最大數目個虛擬通道小於多個硬體緩衝器時防止操作電壓提供至多個硬體緩衝器中的至少一者。
在一實例中,該組配邏輯基於與該第一裝置相關聯之一第一虛擬通道計數及與該第二裝置相關聯之一第二虛擬通道計數來判定虛擬通道的該最大數目。
在一實例中,該組配邏輯自該第一裝置之一組配儲存器的一虛擬通道計數欄位獲得該第一虛擬通道計數,且自該第二裝置之一組配儲存器的一虛擬通道計數欄位獲得該第二虛擬通道計數。
在一實例中,該閘邏輯包括多個邏輯電路,該等多個邏輯電路各自接收該控制值的一位元及該操作電壓,並基於該位元的一值提供該操作電壓至該等多個硬體緩衝器中的一者。
在一實例中,一非依電性儲存器可耦接至設備,該非依電性儲存器包括一映射表,該映射表具有各自使一識別符與一控制值相關聯的多個項目。在一實施例中,組配邏輯自使用該識別符存取之該映射表的一項目獲得該控制值。該控制值可包括各自與該等多個硬體緩衝器中之一者相關聯的多個位元,該等位元中具有一第一狀態的每一位元指示,該關聯硬體緩衝器被啟用,且該等位元中具有一第二狀態的每一位元指示該關聯硬體緩衝器被停用。
在一實例中,該第一裝置包含一組配儲存器以儲存由該第一裝置支援之虛擬通道之該最大數目的一計數,且進一步儲存該映射表之一或多個項目的一複本。在一實施例中,該非依電性儲存器為與該第一裝置分離的一組件,且經由一第二鏈結耦接至該第一裝置。
應注意,以上裝置可使用各種手段來實施。
在一實例中,處理器包含併入於使用者設備觸控啟用之裝置中的系統單晶片(SoC)。
在另一實例中,系統包含顯示器及記憶體,且包括以上實例中之一或多者的裝置。
在另一實例中,一種方法包含:判定由經由一鏈結耦接之一第一端點及一第二端點可支援的一共同數目個虛擬通道;使用該共同數目個虛擬通道存取一儲存器以獲得對應於該共同數目個虛擬通道的一控制設定;以及基於該控制設定提供一操作電壓至該第一端點之所選擇第一硬體緩衝器及該第二端點的所選擇第二硬體緩衝器。
在一實例中,提供該操作電壓包括提供該操作電壓至該等所選擇第一硬體緩衝器及第二硬體緩衝器,且不提供該操作電壓至未選擇第一硬體緩衝器及未選擇第二硬體緩衝器。
在一實例中,方法進一步包含使用該等所選擇第一硬體緩衝器及該等所選擇第二硬體緩衝器在該第一端點與該第二端點之間傳遞資料。
在一實例中,方法進一步包含在該鏈結之組配期間使用該共同數目個虛擬通道存取該儲存器,其中該儲存器與該第一端點及該第二端點分離,且包括各自儲存虛擬通道之一共同數目及一控制設定的多個項目。
在一實例中,方法進一步包含回應於該鏈結之重新組配:判定藉由該第一端點及該第二端點可支援的一第二共同數目個虛擬通道;使用該第二共同數目個虛擬通道存取該儲存器以獲得一第二控制設定;以及基於該第二控制設定來提供該操作電壓至該等第一硬體緩衝器中不同於該等所選擇第一硬體緩衝器的硬體緩衝器,及該等第二硬體緩衝器中不同於該等所選擇第二硬體緩衝器的硬體緩衝器。
在另一實例中,一種包括指令之電腦可讀媒體執行以上實例之任一者的方法。
在另一實例中,一種設備包含用於執行以上實例中之任一實例的方法之構件。
在又一實例中,一種設備包含:一第一鏈結介 面,其介接該設備至該設備與一第二裝置之間耦接的一鏈結,該第一鏈結介面包括各自傳遞具有一對應訊務類別之資料的多個獨立電路;一第一組配儲存器,其儲存對應於該等多個獨立電路之該數目的一最大可支援值;一組配邏輯,其判定對應於儲存於該第一組配儲存器中之該最大可支援值與儲存於該第二裝置之一第二組配儲存器中的一最大可支援值中的一最小值之一鏈結最大值,且獲得該鏈結最大值的一不同表示;以及一控制電路,其在該鏈結最大值小於該等多個獨立電路之一數目時回應於該不同表示而啟用該等多個獨立電路中的一第一集合並停用該等多個獨立電路中的一第二集合。
在一實例中,儲存於該第一組配儲存器中之該最大可支援值進一步對應於針對該設備的一虛擬通道計數值。
在一實例中,耦接至該設備之一非依電性儲存器包括一映射表,該映射表具有各自使一鏈結最大值與該鏈接最大值之一不同表示相關聯的多個項目。映射表可使用由組配邏輯判定之鏈結最大值來存取。
在一實例中,該不同表示包括各自與該等多個獨立電路中之一者相關聯的多個位元,該等位元中具有一第一狀態的每一者指示該關聯獨立電路被啟用,且該等位元中具有一第二狀態的每一者指示該關聯獨立電路被停用。
在一實例中,控制電路包括多個邏輯電路,每一邏輯電路接收該不同表示之該等多個位元中的一位元及來 自一電壓調節器的一操作電壓,且基於該位元之一值提供該操作電壓至該等多個獨立電路中的一者。
在一實例中,多個獨立電路各自包含與一虛擬通道相關聯的一硬體緩衝器。
在再一實例中,一種系統包含:包括一第一鏈結介面之一第一裝置,該第一鏈結介面具有各自儲存與一或多個虛擬通道相關聯之資訊的第一多個硬體緩衝器;及經由一鏈結耦接至該第一裝置的一第二裝置。在一實施例中,第二裝置包括:具有第二多個硬體緩衝器的一第二鏈結介面,該等硬體緩衝器各自儲存與該等虛擬通道中之一或多個相關聯的資訊,其中該等第二多個硬體緩衝器比該等第一多個硬體緩衝器多;一控制器,其判定由該第一裝置及該第二裝置共同支援的虛擬通道的一最大數目,該最大數目對應於該等第一多個硬體緩衝器的該數目,且基於該最大數目獲得一控制值;以及一閘邏輯,其回應於該控制值啟用小於該等第二多個硬體緩衝器中的全部之硬體緩衝器。
在一實例中,第一裝置包含包括一第一最大虛擬通道計數的一第一組配儲存器,且該第二裝置包含包括一第二最大虛擬通道計數的一第二組配儲存器。
在一實例中,該控制器使用該第一最大虛擬通道計數及該第二最大虛擬通道計數來判定共同支援之虛擬通道的該最大數目。
在一實例中,非依電性儲存器包括一映射表,該 映射表具有各自與共同支援之虛擬通道的一最大數目相關聯的多個項目。
在一實例中,控制器可自使用共同支援之虛擬通道的該所判定最大數目存取的該映射表之一項目獲得該控制值。在一實施例中,該控制值包括各自與該等第二多個硬體緩衝器中之一者相關聯的多個位元,該等位元中具有一第一狀態的每一者指示該關聯第二硬體緩衝器經啟用,且該等位元中具有一第二狀態的每一者指示該關聯第二硬體緩衝器被停用。
在一實例中,該閘邏輯包括多個邏輯電路,每一邏輯電路接收該控制值之一位元及一操作電壓,並基於該位元的一值提供該操作電壓至該等第二多個硬體緩衝器中的一者。
應理解,以上實例之各種組合有可能。
實施例可用於許多不同類型之系統中。舉例而言,在一個實施例中,通訊裝置可經配置以執行本文中所描述之各種方法及技術。當然,本發明之範疇並非限於通訊裝置,且實情為其他實施例可係針對用於處理指令的其他類型之設備,或包括回應於在計算裝置上執行而使得裝置進行本文中所描述之方法及技術中之一或多者的指令之一或多個機器刻度媒體。
實施例可以程式碼實施,且可儲存於上面已儲存有指令的非暫時性儲存媒體,該等指令可用以程式化系統以執行指令。儲存媒體可包括但不限於:任何類型之磁碟, 包括軟性磁碟、光碟、固態硬碟(SSD)、光碟唯讀記憶體(CD-ROM)、可重寫光碟(CD-RW)及磁光碟;諸如唯讀記憶體(ROM)之半導體裝置;隨機存取記憶體(RAM),諸如動態隨機存取記憶體(DRAM)、靜態隨機存取記憶體(SRAM)、可抹除可程式化唯讀記憶體(EPROM)、快閃記憶體、電可抹除可程式化唯讀記憶體(EEPROM);磁性或光學卡;或適合於儲存電子指令的任何其他類型之媒體。
雖然已關於有限數目個實施例描述了本發明,但一般熟習此項技術者將瞭解自本發明的大量修改及變化。意欲隨附申請專利範圍涵蓋如在本發明之真實精神及範疇內的所有此等修改及變化。
1000‧‧‧系統
1005‧‧‧鏈結
1010‧‧‧裝置
10200至1020n‧‧‧傳輸緩衝器
10250至1025n‧‧‧接收緩衝器
1030‧‧‧鏈結邏輯
1035‧‧‧異動邏輯
1040‧‧‧核心邏輯
1050‧‧‧組配邏輯
1055‧‧‧電力管理邏輯
1060‧‧‧閘邏輯
1070‧‧‧組配儲存器
1075‧‧‧經擴展之VC計數欄位
1080‧‧‧非依電性儲存器
1085‧‧‧映射表
1090‧‧‧鏈結

Claims (27)

  1. 一種設備,其包含:多個硬體緩衝器,其各自儲存與一或多個虛擬通道相關聯的資訊;一組配邏輯,其用以判定對應於藉經由一鏈結耦接之一第一裝置及一第二裝置所共同支援的虛擬通道之一最大數目的一識別符,且用以基於該識別符而獲得一控制值;以及一閘邏輯,其基於該控制值來提供一操作電壓至該等多個硬體緩衝器中的對應硬體緩衝器,其中當虛擬通道的該最大數目為小於該等多個硬體緩衝器時,該閘邏輯係用以防止將該操作電壓提供至該等多個硬體緩衝器中的至少一者。
  2. 如請求項1之設備,其中該組配邏輯將基於與該第一裝置相關聯之一第一虛擬通道計數及與該第二裝置相關聯之一第二虛擬通道計數來判定虛擬通道的該最大數目。
  3. 如請求項2之設備,其中該組配邏輯將自該第一裝置之一組配儲存器的一虛擬通道計數欄位來獲得該第一虛擬通道計數,且自該第二裝置之一組配儲存器的一虛擬通道計數欄位來獲得該第二虛擬通道計數。
  4. 如請求項1之設備,其中該閘邏輯包括多個邏輯電路,該等多個邏輯電路各自接收該控制值的一位元及該操 作電壓,並基於該位元的一值提供該操作電壓至該等多個硬體緩衝器中的一者。
  5. 如請求項1之設備,其進一步包含包括一映射表的一非依電性儲存器,該映射表具有各自使一識別符與一控制值相關聯的多個項目。
  6. 如請求項5之設備,其中該組配邏輯將自使用該識別符存取之該映射表的一項目來獲得該控制值。
  7. 如請求項6之設備,其中該控制值包括各自與該等多個硬體緩衝器中之一者相關聯的多個位元,該等位元中具有一第一狀態的每一位元指示該關聯之硬體緩衝器將被啟用,且該等位元中具有一第二狀態的每一位元指示該關聯之硬體緩衝器將被停用。
  8. 如請求項5之設備,其中該第一裝置包含一組配儲存器以儲存由該第一裝置支援之虛擬通道之該最大數目的一計數,且該組配儲存器將進一步儲存該映射表之一或多個項目的一複本。
  9. 如請求項8之設備,其中該非依電性儲存器為與該第一裝置分離的一組件,且經由一第二鏈結耦接至該第一裝置。
  10. 一種方法,其包含:判定可藉經由一鏈結耦接之一第一端點及一第二端點所支援的一共同數目個虛擬通道;使用該共同數目個虛擬通道存取一儲存器以獲得對應於該共同數目個虛擬通道的一控制設定;以及 基於該控制設定來提供一操作電壓至該第一端點之所選擇之第一硬體緩衝器及該第二端點之所選擇之第二硬體緩衝器。
  11. 如請求項10之方法,其中提供該操作電壓包括提供該操作電壓至該等所選擇之第一硬體緩衝器及第二硬體緩衝器,且不提供該操作電壓至未選擇之第一硬體緩衝器及未選擇之第二硬體緩衝器。
  12. 如請求項10之方法,其進一步包含使用該等所選擇之第一硬體緩衝器及該等所選擇之第二硬體緩衝器在該第一端點與該第二端點之間傳遞資料。
  13. 如請求項10之方法,其進一步包含在該鏈結之組配期間使用該共同數目個虛擬通道存取該儲存器,其中該儲存器係與該第一端點及該第二端點分離,且包括各自儲存一共同數目個虛擬通道及一控制設定的多個項目。
  14. 如請求項13之方法,其進一步包含回應於該鏈結之重新組配:判定可藉由該第一端點及該第二端點所支援的一第二共同數目個虛擬通道;使用該第二共同數目個虛擬通道存取該儲存器以獲得一第二控制設定;以及基於該第二控制設定來提供該操作電壓至該等第一硬體緩衝器中不同於該等所選擇之第一硬體緩衝器的硬體緩衝器,及該等第二硬體緩衝器中不同於該等所選擇之第二硬體緩衝器的硬體緩衝器。
  15. 一種設備,其包含:一第一鏈結介面,其用以介接該設備至該設備與一第二裝置之間耦接的一鏈結,該第一鏈結介面包括多個獨立電路,該等多個獨立電路各自傳遞一對應訊務類別(traffic class)之資料;一第一組配儲存器,其用以儲存對應於該等多個獨立電路之該數目的一最大可支援值;一組配邏輯,其用以判定對應至儲存於該第一組配儲存器中之該最大可支援值與儲存於該第二裝置之一第二組配儲存器中的一最大可支援值中的一最小者之一鏈結最大值,且用以獲得該鏈結最大值的一不同表示;以及一控制電路,其用以在該鏈結最大值為小於該等多個獨立電路之一數目時回應於該不同表示而啟用該等多個獨立電路中的一第一集合並停用該等多個獨立電路中的一第二集合。
  16. 如請求項15之設備,其中儲存於該第一組配儲存器中之該最大可支援值進一步對應於針對該設備的一虛擬通道計數值。
  17. 如請求項15之設備,其進一步包含耦接至該設備之一非依電性儲存器,該非依電性儲存器包括一映射表,該映射表具有各自使一鏈結最大值與該鏈接最大值之一不同表示相關聯的多個項目,該映射表使用由該組配邏輯所判定的該鏈結最大值而被存取。
  18. 如請求項17之設備,其中該不同表示包括各自與該等多個獨立電路中之一者相關聯的多個位元,該等位元中具有一第一狀態的每一者指示該關聯之獨立電路將被啟用,且該等位元中具有一第二狀態的每一者指示該關聯之獨立電路將被停用。
  19. 如請求項18之設備,其中該控制電路包括多個邏輯電路,每一邏輯電路用以接收該不同表示之該等多個位元中的一位元及來自一電壓調節器的一操作電壓,且用以基於該位元之一值提供該操作電壓至該等多個獨立電路中的一者。
  20. 如請求項15之設備,其中該等多個獨立電路各自包含與一虛擬通道相關聯的一硬體緩衝器。
  21. 一種系統,其包含:包括一第一鏈結介面之一第一裝置,該第一鏈結介面具有各自儲存與一或多個虛擬通道相關聯之資訊的第一多個硬體緩衝器;經由一鏈結耦接至該第一裝置的一第二裝置,該第二裝置包括:具有第二多個硬體緩衝器的一第二鏈結介面,該等第二多個硬體緩衝器各自儲存與該等虛擬通道中之一或多者相關聯的資訊,其中該等第二多個硬體緩衝器比該等第一多個硬體緩衝器多;一控制器,其用以判定由該第一裝置及該第二裝置所共同支援的虛擬通道之一最大數目,該最大數目對應 於該等多個第一硬體緩衝器的數目,並用以基於該最大數目而獲得一控制值;以及一閘邏輯,其回應於該控制值而啟用小於所有該等多個第二硬體緩衝器之硬體緩衝器。
  22. 如請求項21之系統,其中該第一裝置包含包括一第一最大虛擬通道計數的一第一組配儲存器,且該第二裝置包含包括一第二最大虛擬通道計數的一第二組配儲存器。
  23. 如請求項22之系統,其中該控制器將使用該第一最大虛擬通道計數及該第二最大虛擬通道計數來判定共同支援之虛擬通道的該最大數目。
  24. 如請求項21之系統,其進一步包含包括一映射表的一非依電性儲存器,該映射表具有各自與共同支援之虛擬通道的一最大數目相關聯的多個項目。
  25. 如請求項24之系統,其中該控制器將自使用共同支援之虛擬通道的該經判定之最大數目所存取的該映射表之一項目來獲得該控制值。
  26. 如請求項25之系統,其中該控制值包括各自與該等第二多個硬體緩衝器中之一者相關聯的多個位元,該等位元中具有一第一狀態的每一者指示該關聯之第二硬體緩衝器將被啟用,且該等位元中具有一第二狀態的每一者指示該關聯之第二硬體緩衝器將被停用。
  27. 如請求項26之系統,其中該閘邏輯包括多個邏輯電路,每一邏輯電路用以接收該控制值之一位元及一操作電壓,並用以基於該位元的一值提供該操作電壓至該等多 個第二硬體緩衝器中的一者。
TW104103912A 2014-03-20 2015-02-05 用以控制鏈結介面之未使用硬體的電力消耗之方法、設備及系統 TWI556094B (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/US2014/031304 WO2015142336A1 (en) 2014-03-20 2014-03-20 A method, apparatus, and system for controlling power consumption of unused hardware of a link interface

Publications (2)

Publication Number Publication Date
TW201602770A TW201602770A (zh) 2016-01-16
TWI556094B true TWI556094B (zh) 2016-11-01

Family

ID=54120167

Family Applications (1)

Application Number Title Priority Date Filing Date
TW104103912A TWI556094B (zh) 2014-03-20 2015-02-05 用以控制鏈結介面之未使用硬體的電力消耗之方法、設備及系統

Country Status (9)

Country Link
US (1) US9552045B2 (zh)
EP (1) EP3120216B1 (zh)
JP (1) JP6321194B2 (zh)
KR (1) KR101867435B1 (zh)
CN (1) CN104932996B (zh)
DE (1) DE112014006490T5 (zh)
RU (1) RU2653306C1 (zh)
TW (1) TWI556094B (zh)
WO (1) WO2015142336A1 (zh)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10515032B2 (en) * 2016-07-01 2019-12-24 Intel Corporation Asymmetric transmission (TX) and receive (RX) lanes in a point-to-point interconnect using a peripheral component interconnect express (PCIE) resources in a computer system
WO2018112886A1 (en) * 2016-12-23 2018-06-28 Intel Corporation Virtual channels for hardware acceleration
US10372657B2 (en) * 2016-12-26 2019-08-06 Intel Corporation Bimodal PHY for low latency in high speed interconnects
KR20180095765A (ko) 2017-02-17 2018-08-28 삼성전자주식회사 스토리지 장치 및 스토리지 장치의 동작 방법
US20190095554A1 (en) * 2017-09-28 2019-03-28 Intel Corporation Root complex integrated endpoint emulation of a discreet pcie endpoint
US11630480B2 (en) * 2017-10-05 2023-04-18 Intel Corporation System, method, and apparatus for SRIS mode selection for PCIe
CN110139063B (zh) * 2018-02-09 2020-12-18 杭州海康威视数字技术股份有限公司 一种确定设备支持视频流路数的方法、装置及设备
CN108495362B (zh) * 2018-03-09 2021-06-01 广东小天才科技有限公司 一种信号传输方法及通信电路
WO2020236277A1 (en) 2019-05-23 2020-11-26 Cray Inc. System and method for facilitating tracer packets in a data-driven intelligent network
KR20210012439A (ko) * 2019-07-25 2021-02-03 삼성전자주식회사 마스터 지능 소자 및 이의 제어 방법

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW521189B (en) * 2000-08-17 2003-02-21 Advanced Micro Devices Inc System and method for implementing a separate virtual channel for posted requests in a multiprocessor computer system
US20030093539A1 (en) * 2001-11-13 2003-05-15 Ezra Simeloff Message generation
US20030221026A1 (en) * 2002-05-22 2003-11-27 Sean Newman Automatic power saving facility for network devices
CN101546300A (zh) * 2008-03-27 2009-09-30 富士通株式会社 存储器控制装置、存储器控制方法和信息处理系统
TW201210275A (en) * 2010-03-29 2012-03-01 Intel Corp Performance and traffic aware heterogeneous interconnection network

Family Cites Families (39)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5396635A (en) 1990-06-01 1995-03-07 Vadem Corporation Power conservation apparatus having multiple power reduction levels dependent upon the activity of the computer system
JPH04359335A (ja) 1991-06-06 1992-12-11 Fujitsu Ltd メモリアクセス方式
US5781784A (en) 1992-07-09 1998-07-14 Zilog, Inc. Dynamic power management of solid state memories
US6222825B1 (en) 1997-01-23 2001-04-24 Advanced Micro Devices, Inc. Arrangement for determining link latency for maintaining flow control in full-duplex networks
US6009488A (en) 1997-11-07 1999-12-28 Microlinc, Llc Computer having packet-based interconnect channel
DE19822259C2 (de) 1998-05-18 2000-07-06 Siemens Ag Sendeeinrichtung und Bussystem zur Datenübertragung
US6938094B1 (en) 1999-09-17 2005-08-30 Advanced Micro Devices, Inc. Virtual channels and corresponding buffer allocations for deadlock-free computer system operation
US6597689B1 (en) * 1998-12-30 2003-07-22 Nortel Networks Limited SVC signaling system and method
US6950438B1 (en) * 1999-09-17 2005-09-27 Advanced Micro Devices, Inc. System and method for implementing a separate virtual channel for posted requests in a multiprocessor computer system
US6526469B1 (en) 1999-11-12 2003-02-25 International Business Machines Corporation Bus architecture employing varying width uni-directional command bus
US20020087716A1 (en) 2000-07-25 2002-07-04 Shakeel Mustafa System and method for transmitting customized multi priority services on a single or multiple links over data link layer frames
US6665742B2 (en) 2001-01-31 2003-12-16 Advanced Micro Devices, Inc. System for reconfiguring a first device and/or a second device to use a maximum compatible communication parameters based on transmitting a communication to the first and second devices of a point-to-point link
JP2002259327A (ja) 2001-02-28 2002-09-13 Hitachi Ltd バス制御回路
JP3523616B2 (ja) 2001-07-24 2004-04-26 松下電器産業株式会社 バス最適化方法及び通信ノード
US6681274B2 (en) * 2001-10-15 2004-01-20 Advanced Micro Devices, Inc. Virtual channel buffer bypass for an I/O node of a computer system
US6715055B1 (en) * 2001-10-15 2004-03-30 Advanced Micro Devices, Inc. Apparatus and method for allocating buffer space
US20030088799A1 (en) 2001-11-05 2003-05-08 Bodas Devadatta V. Method and apparatus for regulation of electrical component temperature and power consumption rate through bus width reconfiguration
US7200186B2 (en) 2002-03-14 2007-04-03 Intel Corporation Methods and apparatus for reducing power usage of a transmitter and receiver coupled via a differential serial data link
US8103788B1 (en) * 2002-11-19 2012-01-24 Advanced Micro Devices, Inc. Method and apparatus for dynamically reallocating buffers for use in a packet transmission
US7137018B2 (en) 2002-12-31 2006-11-14 Intel Corporation Active state link power management
US7047475B2 (en) 2003-02-04 2006-05-16 Hewlett-Packard Development Company, L.P. CRC encoding scheme for conveying status information
US7136953B1 (en) 2003-05-07 2006-11-14 Nvidia Corporation Apparatus, system, and method for bus link width optimization
US7188263B1 (en) 2003-05-07 2007-03-06 Nvidia Corporation Method and apparatus for controlling power state of a multi-lane serial bus link having a plurality of state transition detectors wherein powering down all the state transition detectors except one
US7706282B2 (en) 2003-06-25 2010-04-27 Leping Huang Bluetooth personal area network routing protocol optimization using connectivity metric
TWI273789B (en) 2004-02-24 2007-02-11 Via Tech Inc Method for adjusting the power consumption of a network interface
US7313712B2 (en) 2004-05-21 2007-12-25 Intel Corporation Link power saving state
US7957428B2 (en) 2004-05-21 2011-06-07 Intel Corporation Methods and apparatuses to effect a variable-width link
US8046488B2 (en) 2004-05-21 2011-10-25 Intel Corporation Dynamically modulating link width
US7844767B2 (en) 2004-05-21 2010-11-30 Intel Corporation Method for identifying bad lanes and exchanging width capabilities of two CSI agents connected across a link
US7197591B2 (en) 2004-06-30 2007-03-27 Intel Corporation Dynamic lane, voltage and frequency adjustment for serial interconnect
US7522520B2 (en) * 2004-09-03 2009-04-21 Intel Corporation Flow control credit updates for virtual channels in the Advanced Switching (AS) architecture
US7472299B2 (en) * 2005-09-30 2008-12-30 Intel Corporation Low power arbiters in interconnection routers
US7484110B2 (en) * 2006-03-16 2009-01-27 Microsoft Corporation Adaptive power management
US7660261B2 (en) 2006-11-14 2010-02-09 The Trustees Of Columbia University In The City Of New York Systems and methods for computing data transmission characteristics of a network path based on single-ended measurements
TW201008234A (en) * 2008-08-12 2010-02-16 Acer Inc Energy-saving method for handheld Internet accessing device, the handheld Internet accessing device, and the real-time message system
JP5085463B2 (ja) * 2008-08-12 2012-11-28 株式会社リコー 情報転送回路、情報処理装置、情報転送回路の制御方法、制御プログラム及び記録媒体
JP5966265B2 (ja) * 2011-07-15 2016-08-10 株式会社リコー データ転送装置及び画像形成システム
US8954635B2 (en) * 2011-08-31 2015-02-10 Advanced Micro Devices, Inc. Buffer management using freelist buffers
US9385962B2 (en) * 2013-12-20 2016-07-05 Intel Corporation Method and system for flexible credit exchange within high performance fabrics

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW521189B (en) * 2000-08-17 2003-02-21 Advanced Micro Devices Inc System and method for implementing a separate virtual channel for posted requests in a multiprocessor computer system
US20030093539A1 (en) * 2001-11-13 2003-05-15 Ezra Simeloff Message generation
US20030221026A1 (en) * 2002-05-22 2003-11-27 Sean Newman Automatic power saving facility for network devices
CN101546300A (zh) * 2008-03-27 2009-09-30 富士通株式会社 存储器控制装置、存储器控制方法和信息处理系统
TW201210275A (en) * 2010-03-29 2012-03-01 Intel Corp Performance and traffic aware heterogeneous interconnection network

Also Published As

Publication number Publication date
CN104932996A (zh) 2015-09-23
JP6321194B2 (ja) 2018-05-09
EP3120216A4 (en) 2017-11-29
DE112014006490T5 (de) 2016-12-08
RU2653306C1 (ru) 2018-05-07
CN104932996B (zh) 2018-04-13
JP2017511529A (ja) 2017-04-20
KR20160111464A (ko) 2016-09-26
US9552045B2 (en) 2017-01-24
TW201602770A (zh) 2016-01-16
WO2015142336A1 (en) 2015-09-24
KR101867435B1 (ko) 2018-07-23
EP3120216A1 (en) 2017-01-25
US20160259394A1 (en) 2016-09-08
EP3120216B1 (en) 2020-11-04

Similar Documents

Publication Publication Date Title
US20220012189A1 (en) Sharing memory and i/o services between nodes
TWI556094B (zh) 用以控制鏈結介面之未使用硬體的電力消耗之方法、設備及系統
TWI771286B (zh) 電子設備、電子系統及用於通訊之方法
JP6225154B2 (ja) 共有メモリリンクの低電力エントリ
US10146291B2 (en) Method, apparatus, and system for improving resume times for root ports and root port integrated endpoints
CN108052466B (zh) Pci快速增强
CN109844725B (zh) 点对点互连中的非对称通道