TW201507408A - 多核心架構中之混合路由器 - Google Patents

多核心架構中之混合路由器 Download PDF

Info

Publication number
TW201507408A
TW201507408A TW103108408A TW103108408A TW201507408A TW 201507408 A TW201507408 A TW 201507408A TW 103108408 A TW103108408 A TW 103108408A TW 103108408 A TW103108408 A TW 103108408A TW 201507408 A TW201507408 A TW 201507408A
Authority
TW
Taiwan
Prior art keywords
switching
energy
delay
channel
packet
Prior art date
Application number
TW103108408A
Other languages
English (en)
Other versions
TWI565265B (zh
Inventor
Yan Solihin
Original Assignee
Empire Technology Dev Llc
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 Empire Technology Dev Llc filed Critical Empire Technology Dev Llc
Publication of TW201507408A publication Critical patent/TW201507408A/zh
Application granted granted Critical
Publication of TWI565265B publication Critical patent/TWI565265B/zh

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/60Software-defined switches
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/60Router architectures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/25Routing or path finding in a switch fabric
    • H04L49/251Cut-through or wormhole routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/25Routing or path finding in a switch fabric
    • H04L49/252Store and forward routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/10Packet switching elements characterised by the switching fabric construction
    • H04L49/101Packet switching elements characterised by the switching fabric construction using crossbar or matrix

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Environmental & Geological Engineering (AREA)

Abstract

通常敘述於多核心架構中有效實作混合路由器之方法與系統的技術。一第一層可以包括:一處理器核心;一快取,構成其構成與該處理器核心通訊;及一路由器,其構成與該快取通訊。該路由器有效地利用一封包交換通道或一電路交換通道而傳輸資料。該第一層可以包括交換邏輯,其構成與該快取及該路由器通訊。該交換邏輯可有效地接收一路由配送目標,該路由配送目標則與透過該網路進行資料路由配送的能量或延遲成本有關。該交換邏輯可以根據該路由配送目標,選擇該封包交換通道或該電路交換通道之一者,透過該網路移動該資料。

Description

在多核心架構中的混合路由器
在此除非另外指明,否則於此章節中所敘述之該等內容,並非此申請書中該等申請專利範圍的先前技術,也不應該因為包含於此章節中,而認為該等內容係為先前技術。
在多核心架構中,處理器核心係包含於一單一整合電路晶片中,或不置於一單晶片封裝中的整合電路晶片上。一快取可用於儲存資料,以由該等處理器核心之一或多個核心存取。該資料可為儲存於一較大記憶體中的資料子集合,該記憶體通常位於該晶片外側。每一處理器都可以具備一快取,以為該處理器儲存資料。每一處理器都可以具備一路由器,可促進在該晶片處理器與快取之間的資料移動。
在某些實例中,對多核心架構進行概述。該多核心架構可以包括一網路、一第一層及/或一第二層,該第二層構成透過該網路與該第一層通訊。在某些實例中,該第一層可以包括一處理器核心與一快取,該快取構成與該處理器核心通訊。在某些實例中,該第一層可以包括一路由器,該路由器構成與該快取通訊。該路由器可以有效地利用一封包交換通道或一電路交換通道傳輸資料。該第一層更包括一交換邏輯,該交換邏輯構成與該快取及該路由器通訊。該交換邏輯可以有效地接收一路由配送目標。該路由配送目標與透過該網路進行資料路由配送的能量或延遲成本有關。該交換邏輯可以根據該路由配送目標,有效地選擇該封包交換通道或該電路交換通道之一者,透過該網路移動該資料。
在某些實例中,對在一多核心架構之一網路中,選擇一切換通道的方法進行概述。該方法可以包括接收於該多核心架構中所執行之一程式。該多核心架構可以包括一第一層與一第二層,該第二層構成透過該 網路與該第一層通訊。該第一層可以包括一處理器核心。一快取可構成與該處理器核心通訊,而一路由器可構成與該快取通訊。該路由器可以有效地利用一封包交換通道或一電路交換通道傳輸資料。該方法可以包括接收一路由配送目標,以由該第一層中之一交換邏輯執行該程式。該交換邏輯可構成與該快取及該路由器通訊。該方法可以包括由該交換邏輯根據該路由配送目標,選擇該封包交換通道或該電路交換通道之一者,透過該網路移動該資料。
在某些實例中,對系統進行概述。一示例系統可以包括一記憶體、一硬體控制器、一網路、一第一層及/或一第二層。該記憶體可以包括一作業系統。該作業系統可以有效地傳送一指令。該指令可以包括以一路由配送目標執行一程式的請求。該路由配送目標與透過該網路進行資料路由配送的能量或延遲成本有關。該第一層可構成與該記憶體通訊。該第一層可有效地接收該指令。該第二層可構成透過該網路與該第一層通訊。該第一層可以包括一處理器核心、一快取與一路由器,該快取構成與該處理器核心通訊,而該路由器構成與該快取通訊。該路由器可以有效地利用一封包交換通道或一電路交換通道傳輸資料。交換邏輯可構成與該快取及該路由器通訊。該交換邏輯可有效地接收該路由配送目標。該交換邏輯可根據該路由配送目標,有效地選擇該封包交換通道或該電路交換通道之一者,以從該第一層透過該網路移動該資料至該第二層。
前述簡述係僅為示例性,並不為任何限制。除了以上敘述之該等示例態樣、具體實施例及特徵之外,在參考該等圖式及後續實施方式後,其他的態樣、具體實施例與特徵將可得知。
80‧‧‧程式
90‧‧‧指令
92‧‧‧路由配送目標
96‧‧‧資料區塊
98‧‧‧指令
100‧‧‧系統
102‧‧‧晶片
104‧‧‧作業系統
106‧‧‧硬體控制器
108‧‧‧記憶體
110a‧‧‧核心
110b‧‧‧核心
110c‧‧‧核心
110d‧‧‧核心
112a‧‧‧快取
114a‧‧‧快取
114b‧‧‧快取
114c‧‧‧快取
114d‧‧‧快取
116a‧‧‧預取器
118a‧‧‧快取控制器
150‧‧‧網路
200a‧‧‧層
200b‧‧‧層
200c‧‧‧層
200d‧‧‧層
300a‧‧‧路由器
300b‧‧‧路由器
300c‧‧‧路由器
300d‧‧‧路由器
302a‧‧‧輸入邏輯電路
302b‧‧‧輸入邏輯電路
304a‧‧‧輸出邏輯電路
304b‧‧‧輸出邏輯電路
312‧‧‧輸入埠
314‧‧‧輸出埠
316‧‧‧多工器/解多工器
320‧‧‧封包交換通道
322‧‧‧緩衝區
324‧‧‧電路交換通道
330‧‧‧交叉開關切換器
350‧‧‧控制器
510‧‧‧圖形
520‧‧‧圖形
530‧‧‧圖形
540‧‧‧圖形
550‧‧‧圖形
560‧‧‧圖形
600a‧‧‧交換邏輯
600b‧‧‧交換邏輯
600c‧‧‧交換邏輯
600d‧‧‧交換邏輯
610‧‧‧表格
620‧‧‧選擇邏輯
630‧‧‧多工器
640‧‧‧收集邏輯
650‧‧‧記憶體
300‧‧‧程式產品
302‧‧‧訊號承載媒介
304‧‧‧指令
306‧‧‧電腦可讀媒介
308‧‧‧可紀錄媒介
310‧‧‧通訊媒介
400‧‧‧計算裝置
402‧‧‧基本配置
404‧‧‧處理器
406‧‧‧系統記憶體
408‧‧‧記憶體匯流排
410‧‧‧第一層快取
412‧‧‧第二層快取
414‧‧‧處理器核心
416‧‧‧暫存器
418‧‧‧記憶體控制器
420‧‧‧作業系統
422‧‧‧應用程式
424‧‧‧程式資料
426‧‧‧混合路由器演算法
428‧‧‧混合路由器資料
430‧‧‧匯流排/介面控制器
432‧‧‧資料儲存裝置
434‧‧‧儲存介面匯流排
436‧‧‧可移除式儲存裝置
438‧‧‧非可移除式儲存裝置
440‧‧‧介面匯流排
442‧‧‧輸出裝置
444‧‧‧周邊介面
446‧‧‧通訊裝置
448‧‧‧圖形處理單元
450‧‧‧音頻處理單元
452‧‧‧音頻/視頻埠
454‧‧‧串列介面控制器
456‧‧‧平行介面控制器
458‧‧‧輸入/輸出埠
460‧‧‧網路控制器
462‧‧‧計算裝置
464‧‧‧通訊埠
從後續敘述與文後申請專利範圍,結合該等附圖可更完全明白本發明的前述及其他特徵變。要瞭解,這些圖式僅描述根據本發明之一些具體實施例,因此該等圖式並不認為限制本發明之範疇,而是透過使用該等附圖,以額外特定性與細節敘述本發明,其中:第一圖描述一示例系統,該系統可用於實作多核心架構中的混合路由器; 第二圖描述一示例系統,該系統可用於實作第一圖該多核心架構中的混合路由器,其更詳細顯示一示例層,該示例層包括一預取器與快取控制器;第三圖為一系統圖式,其顯示第一圖一路由器300a的額外細節;第四圖為一系統圖式,其描述第三圖中所示該路由器的一示例封包交換操作;第五圖為一系統圖式,其描述第三圖中所示該路由器的一示例電路交換操作;第六圖描述反映利用第一圖之該系統所分析度量的圖形;第七圖為一方塊圖示,其描述第一圖該系統中的一示例交換邏輯;第八圖描述一流程圖,用於實作多核心架構中之混合路由器的一示例程序;第九圖描述一電腦程式產品,其可用於實作多核心架構中的混合路由器;及第十圖為一方塊圖,其描述一示例計算裝置,該計算裝置經配置以實作多核心架構中之混合路由器;以上所有內容都根據在此敘述之至少某些具體實施例加以配置。
在以下詳細敘述中,參考該等伴隨圖式,該等伴隨圖式也形成本發明之一部分。除非於上下文指定,否則在該等圖式中通常同樣的符號係辨別相同的元件。在該詳細敘述、圖式與申請專利範圍中所敘述之該等示例性具體實施例則不預期用於限制。在不背離於此陳述之該主題內容的精神與觀點下,也可以使用其他具體實施例,進行其他改變。可立即瞭解的是,本發明之該等態樣如同在此所概述以及在該等圖式所描述般,可以各式各樣的不同配置所配置、取代、組合、分離及設計,其所有內容都於此處明顯考慮。
本發明係以一般性圖示,包括與多核心架構中路由器有關的方法、設備、系統、裝置與電腦程式產品。
簡短對技術說明,該等技術係針對方法與系統概述,該等方 法與系統係有效實作多核心架構中之混合路由器。一第一層可以包括:一處理器核心;一快取,其構成與該處理器核心通訊;及一路由器,其構成與該快取通訊之。該路由器可以有效地利用一封包交換通道或一電路交換通道傳輸資料。該第一層可以包括交換邏輯,該交換邏輯構成與該快取及該路由器通訊。該交換邏輯可以有效地接收一路由配送目標,該路由配送目標則與透過該網路進行資料路由配送的能量與延遲成本有關。該交換邏輯可以根據該路由配送目標,選擇該封包交換通道或該電路交換通道之一者,透過該網路移動該資料。
第一圖描述一示例系統,該系統可用於實作根據在此敘述之至少某些具體實施例所配置之多核心架構中的混合路由器。一示例系統100可以包括一晶片102、一硬體控制器106及/或一記憶體108,其都構成彼此通訊。該硬體控制器106及/或該記憶體108實體上可位於該晶片102內或外部。該晶片102可以包括層200,其包含該層200a、200b、200c及/或200d。該等層200可以包括核心110(包含該核心110a、110b、110c、110d)、快取(包含該快取114a、114b、114c及/或114d)及/或路由器(包含該路由器300a、300b、300c及/或300d)。該等快取114例如可為L2或L3快取。該等層200可以更包括交換邏輯600(包含該交換邏輯600a、600b、600c及/或600d)。
該層200a可以包括該核心110a、該快取114a、該路由器300a及/或該交換邏輯600a。該層200b可以包括該核心110b、該快取114b、該路由器300b及/或該交換邏輯600b。該層200c可以包括該核心110c、該快取114c、該路由器300c及/或該交換邏輯600c。該層200d可以包括該核心110d、該快取114d、該路由器300d及/或該交換邏輯600d。
該等路由器300可構成與該網路150通訊。如以下更詳細討論,該網路150與該等路由器300可利用兩或多種切換技術傳輸資料、資料區塊或編碼(此後稱為「資料」)。該網路150可以包括匯流排與相關元件,以完成資料移動。例如,該網路150與該等路由器300可以利用一電路交換通道或一封包交換通道傳輸資料。
該硬體控制器106可以從該作業系統104接收指令90以執 行一程式80,包括接收有關該程式之一路由配送目標92。該路由配送目標92可與透過該網路150進行資料路由配送的能量或延遲成本有關。延遲成本例如可以包括時間延遲。該硬體控制器106可位於該晶片102上或不位於該晶片102上,該晶片則像是一硬體邏輯部件,其與一或多個核心相關聯。該硬體控制器106可以轉送指令98至該晶片102中的一關聯核心。該關聯核心接著可以根據該路由配送目標92執行該程式80。交換邏輯600可以根據該路由配送目標92選擇該等切換通道之一者。在一實例中,該路由配送目標92可與透過該網路的能量或延遲成本有關,像是最佳效能(將時間延遲最小化)、最佳能量利用(能量效率)及/或一最佳能量/延遲乘積。
第二圖描述一示例系統,該系統可用於實作第一圖中根據在此敘述之至少某些具體實施例所配置之該多核心結構中的混合路由器,其更詳細顯示一示例層,該示例層包括一預取器與快取控制器。第二圖與第一圖的系統100相同,並具備額外細節。為了清楚,將不再敘述第二圖中那些與第一圖元件具有相同標示的元件。
現將專注在該層200a,如該等層200b、200c及200d的示例,除了在第一圖中該等元件外,該核心110a可以包括一快取112a,像是一L1快取。該交換邏輯600a可以更包括一預取器116a及/或一快取控制器118a。該交換邏輯600a可構成與該路由器300a及該快取114a通訊。該預取器116a可構成與該快取控制器118a及/或該路由器300a一起操作,以從該記憶體108請求資料。在某些實例中,該預取器116a可構成在該快取114a經歷一快取錯誤時,從該記憶體108請求相連資料區塊。
在一實例中,當該快取114a並未儲存該區塊96時,由該核心110a進行對一資料區塊96的請求,可能在該快取114中形成一快取錯誤。該預取器116可構成請求該記憶體108中一資料區塊X(未圖示於第二圖中)及與X連續之額外數量N-1的資料區塊。該數量N的資料區塊可為該預取器116的拾取大小。如以下詳細討論,可由該交換邏輯600a決定額外數量N-1。
在一實例中,該硬體控制器106可以轉交指令98至一關聯核心或晶片102。該關聯核心可以接著根據該路由配送目標92執行該程式 80。在接收該等指令98之後,該核心110a可以傳送對資料區塊96的請求至該L1快取112a及/或L2快取114a。如果該快取112a及該快取114a兩者都經歷一快取錯誤,該快取控制器118a可以利用一選擇的切換通道,從該記憶體108請求該區塊96。該交換邏輯600a可以根據該路由配送目標92選擇一電路交換通道或一封包交換通道。該交換邏輯600a也可以根據該路由配送目標92選擇一拾取大小。根據由該交換邏輯600a選擇的該切換通道與該拾取大小,該快取控制器118可與該路由器300a通訊,以從該記憶體108取得該區塊96及N個額外資料區塊。
第三圖為一系統圖示,其顯示根據在此敘述之至少某些具體實施例所配置之第二圖該路由器300a的額外細節。該路由器300a可以包括兩或多個輸入邏輯電路302(包含302a及302b),及兩或多個輸出邏輯電路304(包含304a及/或304b)。該輸入邏輯電路302a可以包括一輸入埠。該輸出邏輯電路304a可以包括一輸出埠。該等輸入邏輯電路302與該等輸出邏輯電路304可以包括一多工器/解多工器316與一緩衝322,該緩衝322可構成進行資料區塊的緩衝/佇列。
該路由器300a可以包括一交叉開關切換器330、一控制器350與交換邏輯600。該控制器350可構成與該等邏輯電路304及/或該交換邏輯600通訊。該控制器350可位於該晶片02之中或該晶片102外部。
該輸入埠312可為資料提供一實體通道。該輸入埠312可共享兩或多個虛擬通道:一或多個封包交換通道320及/或一或多個電路交換通道324,其與該邏輯電路600結合,可以控制由該晶片102所使用之一切換通道,以移動該晶片102中的資料。以下將說明該等路由器300的操作實例。
第四圖為一系統圖示,其描述根據在此敘述之至少某些具體實施例所配置,第三圖所示該路由器的一示例封包交換操作。為了清楚,將不再敘述第四圖中具有與第一圖、第二圖及第三圖元件相同標示的元件。
在該圖示實例中,可以使用一封包交換通道從該記憶體108傳輸資料至路由器300a。在一封包交換通道中,可將一訊息可分成封包, 並封裝在該等封包之中。接著該等封包可於流路控制單元或片段中,進行個別路由配送。如果一封包不符合一單一片段,可將該封包分成一標頭片段,及後續主體片段。對於每一個預備移動的資料封包而言,該路由器300a都可執行四個階段:1)解碼及路由配送、2)分配一虛擬通道、3)分配一切換器及/或4)橫過該切換器。一封包可從該來源路由器移動,並在抵達該目的路由器之前,通過中間路由器。
在該第一階段中,該路由器可以分辨一標頭片段與一主體片段的不同。該路由器也可以對於與該封包交換通道320相關聯之一虛擬通道識別符進行解碼,並將該片段緩衝於該緩衝322中。在該第二階段中,該路由器可以請求配置,透過該虛擬通道輸出該資料。在該第三階段中,該路由器可以請求配置,以對該切換器330進行存取。而在該第四階段中,該片段可以橫過該切換器330。該管線流程階段的實際數目可根據實作而不同,可以少於或多於四個階段。
當該等階段可經管線流程化時,可使用四個循環處理一標頭片段。主體片段則可於不同的管線階段中遵循一標頭片段。從一延遲時間方面而言,封包交換可能是有效率的。但是由於在每一階段處可能耗費能量,因此從一能量方面封包交換可能是無效率的。可以使用相對大的緩衝322。在一路由器處,該緩衝可以暫時保存該等片段,直到執行虛擬通道與切換器的分配為止。也可以保存某些片段直到該路由器確認該路由器不需要重新傳輸該等片段為止。該等大型緩衝可能在一路由器中使用顯著的電力。
第五圖為一系統圖式,其描述根據在此敘述之至少某些具體實施例所配置,第三圖中所示該路由器的一示例電路交換操作。為了清楚,將不再敘述第四圖中那些與第一圖、第二圖、第三圖及第四圖元件具有相同標示的元件。
在該圖示實例中,可以使用一電路交換通道傳輸資料。在電路交換中,在傳輸資料之前可以保存一電路交換通道324。在該資料移動期間,可以定義及固定沿著該電路交換通道324的連接及/或路徑。例如,該控制器350可以定義該等連接及/或路徑。在另一實例中,一來源路由器可 以傳送一通訊封包至一目的地路由器。該通訊封包可以設定該來源與目的地路由器之間的連接。當固定該來源與目的地之間的連接時,可以消除緩衝,形成一種單一階段管線流程。因此電路交換相較於封包交換而言可達到能量保存。然而,由於在傳送封包之前定義連接,因此電路交換相較於封包交換而言可能具有較大的延遲時間。
第六圖描述圖形,該等圖形反映根據在此敘述之至少某些具體實施例,利用第一圖之系統所調查的多種度量。該等圖形510、520及/或530反映利用封包交換傳輸資料時所調查的多種度量。該等圖形540、550及/或560則反映利用電路交換傳輸資料時所調查的多種度量。
在每一圖形之中,M表示快取錯誤的數量,D1表示一延遲懲罰(對於每一快取錯誤所平均額外增加的執行時間),而E1表示為每一快取錯誤所平均額外增加的能量。接著在程式執行中的總延遲可利用M及D1的乘積(M*D1)表示。執行該程式所需的總額外能量則表示為M與E1的乘積(M*E1)。N表示欲由先前敘述該預取器116所取得之額外資料區塊的數量。更具體的D=在無快取錯誤下的程式執行時間+M*D1;E=在無快取錯誤下執行程式的能量+M*E1;為了使效能最大化,D應該被最小化。為了使能量效率最大化,E應該被最小化。如果該應用係將能量最大化,但不損耗任何效能,E*D應該被最小化。
該等圖形510及540反映與最佳化效能有關之一目標,像是該路由配送目標92的情況。圖形510顯示一封包交換通道的結果,而圖形540顯示一電路交換通道的結果。可利用找出M*D1之最小數值的方式,選擇N的最佳數值(「Noptd」)。該等圖形520及550反映與能量利用有關之路由配送目標的情況。圖形520顯示一封包交換通道的結果,而圖形550顯示一電路交換通道的結果。該等圖形530及560反映與一能量延遲乘積有關之路由配送目標的情況。圖形530顯示一封包交換通道的結果,而圖形560顯示一電路交換通道的結果。
如該圖形510中所示,當N增加時,由於利用預先拾取以 消除未來快取錯誤的方式,錯誤的數量(M)便下降。之後,未來隨著無法存取的區塊被帶進該快取之中並置換掉更多有用的區塊時,M便增加。每一快取錯誤的懲罰D1最初緩慢增加,但接著由於具有高流量引起的佇列延遲而快速增加。M*D1最初下降,並在稍候的增加之前達到一最佳N值(Noptd)。該圖形520具有如該圖形510的類似形狀。該圖形530,包括M*M*E1*D1,具有如該等圖形510及520的類似形狀,但因為M2而具有更顯著的強度。在該等圖形540、550、560中,顯示如該等圖形510、520、530類似形狀的圖形,但具有較低的能量利用。然而,存在一處封包交換可達一較佳能量-延遲乘積的N值範圍。
請即重新參考第二圖,在拾取大小N為固定的實例中,該交換邏輯600a可根據該路由配送目標92選擇一切換通道。在此實例中,其中N值為固定,在不存在快取錯誤的情況下,對於該兩者通道而言,一程式的執行時間以及執行該程式的能量應該相同。如果選擇效能最佳化作為該路由配送目標,那麼可以使用封包交換。如果想要把能量效率最佳化,可根據N的尺寸選擇一通道。如果N超過一門檻數值,當路由配送僅使用單一管線階段時,電路交換可以使用較少的能量。在該門檻以下,可以使用封包交換。如果選擇能量-延遲乘積作為該路由配送目標,對於超過一門檻值的N而言,可以使用電路交換。如果N低於該門檻值,可以使用封包交換。
第七圖為一方塊圖,其描述根據在此敘述之至少某些具體實施例,第一圖該系統中之一示例交換邏輯。該交換邏輯600可用於選擇一切換通道及/或選擇數值為N的一預先拾取數值。
該交換邏輯600可以包括一記憶體650、一選擇邏輯620、一多工器630、該預取器116、該快取控制器118及/或一收集邏輯640。該記憶體650可以包括一表格610,該表格610包括具備先前討論該等變數N、M、D1、E1、D1(CS)、E1(CS)及/或Succ(CS)的欄位。在該表格610中,(CS)可以表示一電路交換通道,而缺少括號的變數則表示一封包交換通道。如以下更詳細說明,該記憶體650可構成與該選擇邏輯620通訊。該選擇邏輯620可構成接收該路由配送目標92以及來自該表格610的輸入,並可以 輸出一拾取大小N至該多工器630。該多工器630可以接收一採樣輸入(開/關)、用以初次校正該表格610之一隨機拾取大小,以及來自該選擇邏輯620之一輸出。該預取器116可以接收一錯誤位址以及來自該多工器630之一輸出,並可以輸出位址至該快取控制器118。該快取控制器118可以輸出位址以取得資料給該路由器300。當資料接收時,該收集邏輯640可以接收該資料並填入該記憶體650中該表格610。
該欄位N可以儲存欲考量之一拾取大小的數值。該等欄位M、D1、E1、D1(CS)、E1(CS)及/或Succ(CS)可在由該收集邏輯640接收資料時,針對每一個N值填入。該等欄位M、D1、E1、D1(CS)及/或E1(CS)表示以上針對第五圖所指出之該等相同變數。該等欄位M、D1、E1、D1(CS)及/或E1(CS)可經計算以作為週期性收集之最近歷史資料的平均值,或於需要時做加以計算。該欄位Succ(CS)可以包括有關於利用一電路交換通道從一來源移動N個連續區塊至一目的地之成功比率的最近歷史資料。利用一電路交換通道傳送N個資料區塊,可能與在傳送之前將沿著該欲保存路徑的通道進行保存有關,而所述保存請求並不需要總是成功。當已經保存與此次保存相抵觸的其他電路交換路徑時,該保存動作便可能不成功(如同以成功比率「Succ(CS)」所指出)。該成功比率可用於調整與選擇該電路交換通道有關的度量,因此如果該最佳拾取比率無法成功達到所需要的成功百分比率時,便不選擇通道切換。
為了決定數值N,該交換邏輯600可以估計不同數值的N、測量該表格610中的度量,並辨識對於在該路由配送目標92中所辨識之該度量而言,何者拾取大小能提供最佳結果。例如,對於在一採樣週期中移動一已定義數量的資料而言,可以輸入一隨機拾取大小至該多工器630,並將該採樣輸入設定為「開」。該已定義數量可為可利用不同拾取大小之數量的一部分。為了回應該隨機拾取大小,接著可以使用由該收集邏輯640所接收的資料填入該表格610。當該預定數量的移動完成,該採樣週期也完成,並可進行關於欲使用切換通道的選擇。在某些實例中,該預取器可不具有一可調整拾取大小,但具有一可調整的預先拾取攻擊性。在所述實例中,該N值可用於引導該預取器的攻擊程度。
請即參考第二圖及第七圖。在一實例中,在該層200a該快取114a中發生區塊X的快取錯誤。該處理器110a可以通知該交換邏輯600a該快取錯誤。為了回應區塊X的快取錯誤,該交換邏輯600a可以選擇N個資料區塊進行預先拾取,該N個資料區塊包括該區塊X。該交換邏輯600a也可以選擇一切換通道,以移動該等資料區塊。當該交換邏輯600a開始執行時,可以轉交該表格610的內容至該選擇邏輯620。該選擇邏輯620可以使用來自該表格610之該等內容,以根據該路由配送目標92計算各種度量。一旦完成各種度量的計算,根據該路由配送目標92,該選擇邏輯620可以決定一最佳N值。該選擇邏輯620也可以選擇該封包交換通道或該電路交換通道之一者。該選擇邏輯620可以根據該路由配送目標、一封包交換延遲、一電路交換延遲、一封包交換能量成本與一電路交換能量成本,建立該最佳N值與該通道選擇的決定基礎。
該選擇邏輯620可以傳送該經決定N值至該多工器630及/或傳送一經選擇切換通道至該快取控制器118。如果該採樣模式為「關」,那麼可傳送該選擇邏輯620所決定的N值至該預取器116。如果採樣模式為「開」,那麼該多工器630可以輸出該隨機拾取大小至該預取器116。該預取器116可以接收N值(不論從該選擇邏輯620輸出或是該隨機拾取大小)與該錯誤位址。該錯誤位址可以辨識在該記憶體108中或一快取中,該預取器可以傳送請求該等錯誤資料區塊的位址。該預取器116接著可以產生用以從該記憶體108請求資料的該等位址(該錯誤位址加上N個區塊)。
該預取器116可以傳送該等位址至該快取控制器118。該快取控制器118可與該路由器300通訊,以利用該經選擇切換通道從該記憶體108取得該等錯誤資料區塊。該快取控制器118可對於每一區塊分別取得在該等位址處的資料(在封包交換中),或是以一單一請求取得在該等位址處的資料(在電路交換中)。
當該等經請求資料區塊回到該路由器300,該收集邏輯640可以接收該等區塊並計算該表格610中的數值。例如,該收集邏輯640可以對於當傳送對一資料區塊的請求以及當接收該資料區塊之間的時間保持 追蹤。如果電路交換保存失敗,且取而代之利用封包交換通道傳送資料時,該成功欄位(Succ)便可據此更新,以指示對於電路交換保存的成功比率。該收集邏輯640可以接著儲存及/或更新該表格610中之數值。
當該採樣模式為「開」,可以傳送隨機數值N至該多工器630,並經選擇以進行處理。在進行N值的決定之前,該交換邏輯600可以執行採樣循環,每一次都使用不同的N值。在每一次採樣循環之後,可以更新該表格610中的內容。
在另一實例中,該快取控制器118可以為N個區塊保存一電路交換通道。如果該交換邏輯600決定因為正由另一電路交換連接使用資源,而無法保存該路徑時,該交換邏輯600可以切換至一封包交換通道。
包括其他可能的優點,根據本發明之一系統可以降低一多核心架構中由一路由器所耗費的能量。路由器可能耗費一晶片中顯著部分的能量。程式者可以選擇在一晶片中路由器是否以最佳效能、最佳能量效率或效能與能量進行資料的路由配送。可根據應用選擇一路由配送目標。例如,如果優先性是保存電池壽命,那麼可以選擇一能量效率目標。如果優先考慮為時間,那麼可以選擇一效能路由配送目標。一作業系統或應用程式可以控制路由器如何傳輸資料,並藉此控制一等待時間效率或一延遲效率。一晶片上的網路可以在一封包交換通道與一電路交換通道之間進行選擇。對於較大的拾取數值而言,可以更常使用電路交換,因為當該網路傳送大量的區塊時,可對設定該電路的成本進行緩衝。
第八圖描述一流程圖,用於實作根據在此敘述之至少某些具體實施例所配置,多核心架構中之混合路由器的一示例程序。在某些實例中,第八圖的程序可利用以上討論的系統100進行實作,以選擇一多核心架構之一網路中的一切換通道。
一示例程序可以包括如由步驟S2、S4及/或S6所描述之一或多個操作、動作或功能。雖然係以個別步驟描述,但根據所需要的實作,也可將各個步驟分成更多步驟,組合成較少步驟,或取消。
程序從步驟S2處開始,「接收於該多核心架構中欲被執行之一程式,其中該多核心架構包括:一第一層及一第二層,其構成透過該 網路而與該第一層通訊,其中該第一層包括:一處理器核心;一快取,其構成與該處理器核心通訊;及一路由器,其更配置與該快取通訊,該路由器係有效地利用一封包交換通道或一電力切換通道傳輸資料。」在步驟S2,可於一多核心架構中接收一程式。該架構可包括第一與第二層。該第一層可以包括一處理器核心、一快取與一路由器。
程序繼續從步驟S2至步驟S4,「接收一路由配送目標,以由該第一層中一交換邏輯執行該程式,該交換邏輯構成與該快取及該路由器通訊。」在步驟S4,該交換邏輯可以接收一路由目標以執行該程式。可根據該路由配送目標為一預取器決定一拾取大小。
程序繼續從步驟S4至步驟S6,「由該交換邏輯根據該路由配送目標選擇該封包交換通道或該電路交換通道之一者,透過該網路傳輸資料。」在步驟S6,該交換邏輯可以根據該路由配送目標,選擇該封包交換通道或該電路交換通道之一者,透過該網路傳輸資料。該交換邏輯可以決定封包交換能量、封包交換延遲、電路交換能量及電路交換延遲。該交換邏輯可以進一步根據該等經決定之能量與延遲,選擇該封包交換通道或該電路交換通道。
該交換邏輯可以進一步根據該等經決定之能量與延遲,為一預取器決定區塊之一拾取大小數量(在該拾取大小為動態的實例中)。該交換邏輯可以決定收取該等區塊拾取大小數量的成功比率,並根據該成功比率選擇該區塊數量。例如,該成功比率可以乘以該等待時間、能量或能量延遲乘積,以估計一特定拾取大小之電路交換的等待時間、能量與能量延遲特性。為了回應一區塊的快取錯誤,一快取控制器可以利用該經選擇通道透過該網路傳送對該區塊的請求。
第九圖描述一示例電腦程式產品300,其可用於實作根據載此敘述之至少某些具體實施例所配置多核心架構中的混合路由器。該程式產品300可以包括一訊號承載媒介302。該訊號承載媒介302可以包括一或多個指令304,例如當由一處理器執行該等指令時,可以提供以上有關第一圖至第八圖所敘述的功能。因此,例如參考該系統100,在該層200a中,該處理器110a可以從事第九圖所示該等區塊之一或多個區塊,以回應由該 媒介302傳遞至該系統100的指令304。
在某些實作中,該訊號承載媒介302可以包括一電腦可讀媒介306,像是硬碟裝置、光碟(CD)、數位視訊碟片(DVD)、數位磁帶、記憶體等等,但不限制於此。在某些實作中,該訊號承載媒介302可以包含一可記錄式媒介,像是記憶體、讀/寫CD、讀/寫DVD等等,但不限制於此。在某些實作中,該訊號承載媒介302可以包括一通訊媒介310,像是一數位及/或類比通訊媒介(例如,一光纖、一波導、一有線通訊鏈結、一無線通訊鏈結等等),但不限制於此。因此,例如,該程式產品300可以利用一無線射頻訊號承載媒介302傳遞該系統之一或多個模組,其中可利用一無線通訊媒介310(例如,與IEEE 802.11標準相符之無線通訊媒介)傳遞該訊號承載媒介302。
第十圖為一方塊圖,其描述一示例計算裝置400,該計算裝置400經配置以實作根據在此敘述之至少某些具體實施例所配置多核心架構中之混合路由器。在一非常基本的配置402中,該計算裝置400通常包括一或多個處理器404與一系統記憶體406。可以使用一記憶體匯流排408以在該等處理器404與該系統記憶體406之間進行通訊。
根據所需要的配置,該處理器404可為任何形式,包括一微處理器(μP)、一微控制器(μC)、一數位訊號處理器,或其任意組合,但不限制於此。該處理器404可以包括一或多層的快取,包括一第一層快取410與一第二層快取412,也可以包括一處理器核心414與暫存器416。一示例處理器核心414可包括一算術邏輯單元(ALU)、一浮點數運算單元(FPU)、一數位訊號處理核心(DSP核心)或其任意組合。一示例記憶體控制器418可與該處理器404一起使用,在某些實作中,該記憶體控制器418可為該處理器404之一內部部分。
根據所需要的配置,該系統記憶體406可為任何形式,包括揮發式記憶體(像是,隨機存取記憶體)、非揮發式記憶體(像是,唯讀記憶體、快閃記憶體等等)或是其任意組合,但不限制於此。該系統記憶體406可以包括一作業系統420、一或多個應用程式422及程式資料424。該應用程式可以包括一混合路由器演算法426,其構成執行如此敘述之該等功 能,包括如針對第一圖至第九圖之該系統100所敘述的那些功能。該程式資料424可以包括混合路由器資料428,這對於實作如在此敘述之多核心架構中的路由器可能是有用的。在某些具體實施例中,該應用程式422可經配置以在該作業系統420上與該程式資料424一起操作,因此也可以提供多核心架構中之混合路由器。此敘述基本配置於第九圖中則以在該內部虛線之中的組件加以描述。
該計算裝置400可以具有額外的特徵與功能,及額外的介面,用以促成該基本配置402與任何需要的裝置與介面之間的通訊。例如,可以使用一匯流排/介面控制器430,以促進透過一儲存介面匯流排434,於該基本配置402與一或多個資料儲存裝置432之間的通訊。該資料儲存裝置432可為可移除式儲存裝置436、非可移除式儲存裝置438或是其組合。可移除式儲存裝置與非可移除式儲存裝置的實例包括像是彈性碟片裝置與硬碟裝置(HDD)的磁碟裝置、像是光碟(CD)或數位視訊碟片(DVD)的光碟裝置、固態磁碟(SSD)及磁帶裝置,而這只是一些例子。示例電腦儲存媒體可以包括揮發式及非揮發式、可移除式及非可移除式媒體,其以任何方法或技術實作,以進行資訊儲存,像是進行電腦可讀指令、資料結構、程式模組或其他資料的儲存。
該系統記憶體406、該等可移除式儲存裝置436與該等非可移除式儲存裝置438細微電腦儲存媒體的實例。電腦儲存媒體可以包括隨機存取記憶體、唯讀記憶體、電子抹除式可複寫唯讀記憶體、快閃記憶體或其他記憶體技術、光碟唯讀記憶體、數位視訊碟片或其他光學儲存裝置、磁匣、磁帶、磁碟儲存器或其他磁性儲存裝置,或是任何其他可用於儲存所需資訊並由該計算裝置400存取的媒介,但不限制於此。任何所述的電腦儲存媒體都可成為該計算裝置400的一部分。
該計算裝置400也可以包括一介面匯流排440,用以促進透過匯流排/介面控制器430,從各種介面裝置(例如,輸出裝置442、周邊介面444及通訊裝置446)至該基本配置402的通訊。示例輸出裝置422包括一圖形處理單元448與一音頻處理單元450,其可構成與各種外部裝置通訊,像是透過一或多個音頻/視頻(A/V)埠452與一顯示器或揚聲器通訊。示 例周邊介面444包括一串列介面控制器454或一平行介面控制器456,其可構成與外部裝置通訊,像是透過一或多個輸入/輸出埠458與輸入裝置(例如,鍵盤、滑鼠、筆、語音輸入裝置、觸控輸入裝置等等)或其他外圍裝置(例如,印表機、掃描器等等)通訊。一示例通訊裝置446包括一網路控制器460,其可構成促進透過一或多個通訊埠464而於一網路通訊鏈結上與一或多個其他計算裝置462通訊。
該網路通訊鏈結可為一通訊媒體之一種實例。通訊媒體通常係以一經調變資料訊號中的電腦可讀指令、資料結構、程式模組或其他資料所體現,該經調變資料訊號則像是一載波或其他傳輸機制,並可以包括任何資訊傳遞媒體。一「經調變資料訊號」可為一種訊號,其具有本身特徵集合之一或多種特徵,或以一種將資訊編碼於該訊號中的方式改變。作為實例但非用於限制,通訊媒體可以包括像是有線網路或直接線路連接的有線媒體,及像是聲波、無線射頻(RF)、微波、紅外線(IR)的無線媒體或其他無線媒體。當在此使用時,該用詞電腦可讀媒體可以包括儲存媒體與通訊媒體兩者。
該計算裝置400可以實作為一小外型可攜式(或行動式)電子裝置之一部分,像是一行動電話、一個人數位助理(PDA)、一個人媒體播放裝置、一無線網路監看裝置、一個人頭戴式裝置、一特定應用程式裝置,或一種包含上述任意功能的混合裝置。該計算裝置400也可以實作為一個人電腦,包括膝上電腦與非膝上電腦配置兩者。
本發明並不限定於在此申請書中所敘述之該等特定具體實施例,該等具體實施例預期作為各種態樣的描述。對於該領域技術人員明顯的是,在不背離本發明精神與觀點下,可進行許多修改與變化。除了在此列舉的方法與設備以外,對於該領域技術人員而言,從該等先前敘述在本發明觀點中具有等價功能的方法與設備也將變的明確。所述修改與變化預期落於該等附加申請專利範圍之觀點之中。本發明將僅受到該等附加申請專利範圍,以及與所述申請專利範圍予以權力之該等等價物的完整觀點所限制。要瞭解到本發明並不受限於該等特定方法、試劑、複合合成物或生物系統的限制,當然本發明也可以進行變化。也要瞭解到在此使用的術 語係僅為了該等敘述特定具體實施例的目的,並不預期用於限制。
對於在此任何複數及/或單數用詞的實質使用上,該領域技術人員可依照上下文及/或應用的適用性,從該複數型態轉換成為單數型態,及/或從單數型態轉換為複數型態。為了清楚,可明確設定各種單數/複數的排列。
通常,該領域技術人員將瞭解,在此使用的用詞,特別是在該等附加申請專利範圍(例如,該等附加申請專利範圍的主體)中使用的用詞通常通常預期為一種「開放」用詞(例如,該用詞「包含」應該解釋為「包含但不限制為」,該用詞「具有」應該解釋為「至少具有」,該用詞「包括」應該解釋為「包括但不限制為」...等等)。該領域技術人員將進一步瞭解,如果預期在一引用申請專利範圍敘述中具有特定數目,所述意圖將明確敘述於該申請專利範圍中,而在缺乏所述敘述時,便不存在所指意圖。例如,為了協助瞭解,下述附加申請專利範圍可以包含引導片語「至少一」及「一或多個」的使用,以介紹申請專利範圍之敘述。然而,不應該將所述片語的使用建構暗示為,以不明確的「一」或「一個」用詞將一申請專利範圍敘述介紹中任何包含所述介紹申請專利範圍敘述的特定申請專利範圍,限制為只包含所述敘述的具體實施例,甚至當該相同的申請專利範圍包含引導片語「一或多個」或「至少一」以及像是「一」或「一個」(例如,「一」及/或「一個」應該被解釋為意指「至少一」或「一或多個」)等不明確的用詞時也是如此;此相同準則也同樣適用於介紹申請專利範圍敘述的明確文章內容中。此外,即使明確敘述一介紹申請專利範圍敘述的特定數量,該領域技術人員將可理解所述敘述應該解釋為意指至少該所敘述的數量(例如,「兩敘述」的明顯敘述,在沒有其他的修飾下,係意指至少兩敘述,或意指兩或多個敘述)。此外,在類似於使用「A、B及C之至少之一等等」之習慣用語的那些情況中,通常,係預期所述建構可由該領域技術人員瞭解該習慣用語(例如,「一系統具有A、B及C之至少之一」將包含但不限制為只具有A、只具有B、只具有C具有A及B、具有A及C、具有B及C及/或具有A、B及C等等的系統)。在類似於使用「A、B及或之至少之一等等」之習慣用語的那些情況中,通常,係預期所述建構 可由該領域技術人員瞭解該習慣用語(例如,「一系統具有A、B或C之至少之一」將包含但不限制為只具有A、只具有B、只具有C具有A及B、具有A及C、具有B及C及/或具有A、B及C等等的系統)。由該領域技術人員可進一步瞭解是的,實質上代表兩或多個替代用詞之任何可分離用詞及/或片語,不管是在敘述、申請專利範圍或圖式中,應該被瞭解為包含該等用詞之一、該等用詞之任一或兩者用詞的可能性。例如,該片語「A或B」將認為包括「A」或「B」或「A及B」的可能性。
此外,本發明之特徵與態樣係以馬庫西群組的形式敘述,該領域技術人員將可理解本發明也藉此以馬庫西群組的任何個別成員或成員的子群組形式加以敘述。
如同將由該領域技術人員所瞭解的,為了任何與所有的目的,像是為了提供一撰寫敘述,在此揭示之所有範圍也包含任何及所有可能的子範圍,及其子範圍的任何及所有組合。可將任何列出之範圍輕易理解為具有足夠的敘述,並能夠將該相同範圍分成至少相等之兩份、三份、四份、五份、十份等等。做為一非限制實例,在此討論之每一範圍都可以立即被分成下三分之一、中間三分之一與上三分之一等等。如同也將由該領域技術人員所瞭解的,所有像是「最多」、「至少」、「大於」、「小於」及其他類似的語言也包含所敘述的數量,並參照至後續可如以上分成子範圍的的範圍。最後,如同將由該領域技術人員所瞭解的,一範圍係包含每一個別成員。因此,例如具有1-3單元之一群組係意指具有1、2或3單元的群組。同樣的具有1-5單元之一群組係意指具有1、2、3、4或5單元的群組,於此類推。
雖然在此已經揭示各種態樣與具體實施例,但其他態樣極具體實施例對於該領域技術人員而言也是明確的。在此揭示之各種態樣與具體實施例係為了描述的目的,而不預期用於限制,本發明實際的觀點與精神則由下述申請專利範圍所指定。
80‧‧‧程式
90‧‧‧指令
92‧‧‧路由配送目標
96‧‧‧資料區塊
98‧‧‧指令
100‧‧‧系統
102‧‧‧晶片
104‧‧‧作業系統
106‧‧‧硬體控制器
108‧‧‧記憶體
110a‧‧‧核心
112a‧‧‧快取
114a‧‧‧快取
116a‧‧‧預取器
118a‧‧‧快取控制器
200a‧‧‧層
200b‧‧‧層
200c‧‧‧層
200d‧‧‧層
300a‧‧‧路由器
600a‧‧‧交換邏輯

Claims (20)

  1. 一種多核心架構,該架構包括:一網路;一第一層;一第二層,其構成透過該網路與該第一層通訊;其中,該第一層包括:一處理器核心;一快取,其構成與該處理器核心通訊;一路由器,其構成與該快取通訊,該路由器有效地利用一封包交換通道或一電路交換通道傳輸資料;及交換邏輯,其構成與該快取及該路由器通訊,其中該交換邏輯可有效地接收一路由配送目標,其中該路由配送目標與透過該網路進行資料路由配送的能量或延遲成本有關;及根據該路由配送目標,選擇該封包交換通道或該電路交換通道之一者,透過該網路移動該資料。
  2. 如申請專利範圍第1項之多核心架構,其中該交換邏輯可有效地:決定一封包交換能量,該封包交換能量為利用該封包交換通道透過該網路傳輸資料的能量;決定一電路交換能量,該電路交換能量為利用該電路交換通道透過該網路傳輸資料的能量;決定一封包交換延遲,該封包交換延遲為利用該封包交換通道透過該網路傳輸資料的延遲;決定一電路交換延遲,該電路交換延遲為利用該電路交換通道透過該網路傳輸資料的延遲;及根據該封包交換能量、該電路交換能量、該封包交換延遲及該電路交換延遲,選擇該封包交換通道或該電路交換通道之一者。
  3. 如申請專利範圍第1項之多核心架構,其中:該第一層更包括一預取器,構成與該快取及該路及器通訊;及 該交換邏輯係進一步構成根據該路由配送目標,決定該預取器的一拾取大小。
  4. 如申請專利範圍第1項之多核心架構,其中:該第一層包括一預取器;及該交換邏輯可進一步有效地:決定一封包交換能量,該封包交換能量為利用該封包交換通道透過該網路傳輸資料的能量;決定一電路交換能量,該電路交換能量為利用該電路交換通道透過該網路傳輸資料的能量;決定一封包交換延遲,該封包交換延遲為利用該封包交換通道透過該網路傳輸資料的延遲;決定一電路交換延遲,該電路交換延遲為利用該電路交換通道透過該網路傳輸資料的延遲;根據該封包交換能量、該電路交換能量、該封包交換延遲及該電路交換延遲選擇該封包交換通道或該電路交換通道之一;及根據該路由配送目標、該封包交換能量、該電路交換能量、該封包交換延遲及該電路交換延遲,決定該預取器之一區塊拾取大小數量。
  5. 如申請專利範圍第1項之多核心架構,其中為了回應由該快取所偵測一特定區塊之一快取錯誤,該快取控制器係有效地透過該封包交換通道或該電路交換通道之選定一者,為該特定區塊產生一請求。
  6. 如申請專利範圍第1項之多核心架構,其中:該第一層包括一預取器;及該交換邏輯可進一步有效地:決定一封包交換能量,該封包交換能量為利用該封包交換通道透過該網路傳輸資料的能量;決定一電路交換能量,該電路交換能量為利用該電路交換通道透過該網路傳輸資料的能量;決定一封包交換延遲,該封包交換延遲為利用該封包交換通道 透過該網路傳輸資料的延遲;決定一電路交換延遲,該電路交換延遲為利用該電路交換通道透過該網路傳輸資料的延遲;根據該路由配送目標、該封包交換能量、該電路交換能量、該封包交換延遲及該電路交換延遲,決定一區塊拾取大小數量;決定取得該區塊拾取大小數量的成功比率;及根據該封包交換能量、該電路交換能量、該封包交換延遲、該電路交換延遲及該成功比率,選擇該封包交換通道或該電路交換通道之一者。
  7. 如申請專利範圍第1項之多核心架構,其中:該交換邏輯係有效地利用以下方式選擇該封包交換通道或該電路交換通道之一者:辨識兩或多個隨機選定拾取大小;辨識一隨機選定通道;決定代表該隨機選定通道作為該等隨機選定拾取大小的量測延遲;決定有關該隨機選定通道的該等隨機選定拾取大小的量測能量;及根據該等量測延遲與該等量測能量,選擇該封包交換通道或該電路交換通道之一者。
  8. 一種用於選擇在一多核心架構之網路中的切換通道之方法,該方法包括:接收於該多核心架構中執行之一程式,其中該多核心架構包括一第一層與一第二層,該第二層構成透過該網路而與該第一層通訊,其中該第一層包括:一處理器核心;一快取,其構成與該處理器核心通訊;及一路由器,其構成與該快取通訊,該路由器有效地利用一封包交換通道或一電路交換通道傳輸資料;接收一路由配送目標,以由該第一層中之一交換邏輯執行該程式,該交換邏輯構成與該快取及該路由器通訊;及由該交換邏輯,根據該路由配送目標,選擇該封包交換通道或該電 路交換通道之一者,透過該網路移動該資料。
  9. 如申請專利範圍第8項之方法,更包括,藉由該交換邏輯:決定一封包交換能量,該封包交換能量為利用該封包交換通道透過該網路傳輸資料的能量;決定一電路交換能量,該電路交換能量為利用該電路交換通道透過該網路傳輸資料的能量;決定一封包交換延遲,該封包交換延遲為利用該封包交換通道透過該網路傳輸資料的延遲;決定一電路交換延遲,該電路交換延遲為利用該電路交換通道透過該網路傳輸資料的延遲;及根據該封包交換能量、該電路交換能量、該封包交換延遲及該電路交換延遲,選擇該封包交換通道或該電路交換通道之一者。
  10. 如申請專利範圍第8項之方法,更包括根據該路由配送目標,決定一預取器的一拾取大小。
  11. 如申請專利範圍第8項之方法,更包括,由該交換邏輯:決定一封包交換能量,該封包交換能量為利用該封包交換通道透過該網路傳輸資料的能量;決定一電路交換能量,該電路交換能量為利用該電路交換通道透過該網路傳輸資料的能量;決定一封包交換延遲,該封包交換延遲為利用該封包交換通道透過該網路傳輸資料的延遲;決定一電路交換延遲,該電路交換延遲為利用該電路交換通道透過該網路傳輸資料的延遲;根據該封包交換能量、該電路交換能量、該封包交換延遲及該電路交換延遲,選擇該封包交換通道或該電路交換通道之一;及根據該路由配送目標、該封包交換能量、該電路交換能量、該封包交換延遲及該電路交換延遲,決定該預取器之一區塊拾取大小數量。
  12. 如申請專利範圍第8項之方法,更包括:由該快取偵測一特定區塊的一快取錯誤;及 由該快取控制器透過該封包交換通道或該電路交換通道之選定一者,傳送有關該特定區塊的一請求。
  13. 如申請專利範圍第8項之方法,更包括,由該交換邏輯:決定一封包交換能量,該封包交換能量為利用該封包交換通道透過該網路傳輸資料的能量;決定一電路交換能量,該電路交換能量為利用該電路交換通道透過該網路傳輸資料的能量;決定一封包交換延遲,該封包交換延遲為利用該封包交換通道透過該網路傳輸資料的延遲;決定一電路交換延遲,該電路交換延遲為利用該電路交換通道透過該網路傳輸資料的延遲;根據該路由配送目標、該封包交換能量、該電路交換能量、該封包交換延遲及該電路交換延遲,決定一區塊拾取大小數量;決定一成功比率以拾取該區塊的拾取大小數量;及根據該封包交換能量、該電路交換能量、該封包交換延遲、該電路交換延遲及該成功比率,選擇該封包交換通道或該電路交換通道之一者。
  14. 如申請專利範圍第8項之方法,其中由該交換邏輯進行之所述選擇動作,包括:辨識兩或多個隨機選定拾取大小;辨識一隨機選定通道;決定代表該隨機選定通道為該等隨機選定拾取大小的量測延遲;決定有關該等隨機選定拾取大小的該隨機選定通道的拾取量測能量;及根據該等量測延遲與該等量測能量,選擇該封包交換通道或該電路交換通道之一者。
  15. 一種系統,該系統包括:一記憶體,其中該記憶體包括一作業系統,該作業系統有效地傳送一指令,其中該指令包括以一路由配送目標執行一程式的請求,其中 該路由配送目標與透過該網路進行資料路由配送的能量或延遲成本有關;一網路;一第一層,其構成與該記憶體通訊,該第一層係有效地接收該指令;及一第二層,構成透過該網路與該第一層通訊;其中該第一層包括一處理器核心;一快取,其構成與該處理器核心通訊;一路由器,其構成與該快取通訊,該路由器有效地利用一封包交換通道或一電路交換通道傳輸資料;及交換邏輯,其構成與該快取及該路由器通訊,其中該交換邏輯可有效地接收該路由配送目標;根據該路由配送目標,選擇該封包交換通道或該電路交換通道之一者,以從該第一層透過該網路移動該資料至該第二層。
  16. 如申請專利範圍第15項之系統,其中該交換邏輯係有效地:決定一封包交換能量,該封包交換能量為利用該封包交換通道透過該網路傳輸資料的能量;決定一電路交換能量,該電路交換能量為利用該電路交換通道透過該網路傳輸資料的能量;決定一封包交換延遲,該封包交換延遲為利用該封包交換通道透過該網路傳輸資料的延遲;決定一電路交換延遲,該電路交換延遲為利用該電路交換通道透過該網路傳輸資料的延遲;及根據該封包交換能量、該電路交換能量、該封包交換延遲及該電路交換延遲,選擇該封包交換通道或該電路交換通道之一者。
  17. 如申請專利範圍第15項之系統,其中該第一層更包括一預取器;及 該交換邏輯係有效地:決定一封包交換能量,該封包交換能量為利用該封包交換通道透過該網路傳輸資料的能量;決定一電路交換能量,該電路交換能量為利用該電路交換通道透過該網路傳輸資料的能量;決定一封包交換延遲,該封包交換延遲為利用該封包交換通道透過該網路傳輸資料的延遲;決定一電路交換延遲,該電路交換延遲為利用該電路交換通道透過該網路傳輸資料的延遲;根據該封包交換能量、該電路交換能量、該封包交換延遲及該電路交換延遲,選擇該封包交換通道或該電路交換通道之一;及根據該路由配送目標、該封包交換能量、該電路交換能量、該封包交換延遲及該電路交換延遲,決定該預取器之一區塊拾取大小數量。
  18. 如申請專利範圍第15項之系統,其中為了回應由該快取所偵測一特定區塊之一快取錯誤,該快取控制器係有效地透過該封包交換通道或該電路交換通道之選定一者,產生該特定區塊的一請求。
  19. 如申請專利範圍第15項之系統,其中該第一層更包括一預取器;及該交換邏輯係有效地:決定一封包交換能量,該封包交換能量為利用該封包交換通道透過該網路傳輸資料的能量;決定一電路交換能量,該電路交換能量為利用該電路交換通道透過該網路傳輸資料的能量;決定一封包交換延遲,該封包交換延遲為利用該封包交換通道透過該網路傳輸資料的延遲;決定一電路交換延遲,該電路交換延遲為利用該電路交換通道透過該網路傳輸資料的延遲;根據該路由配送目標、該封包交換能量、該電路交換能量、該 封包交換延遲及該電路交換延遲,決定一區塊拾取大小數量;決定取得該區塊拾取大小數量的成功比率;及根據該封包交換能量、該電路交換能量、該封包交換延遲、該電路交換延遲及該成功比率,選擇該封包交換通道或該電路交換通道之一者。
  20. 如申請專利範圍第15項之系統,其中該交換邏輯係有效地利用以下方式選擇該封包交換通道或該電路交換通道之一者:辨識兩或多個隨機選定拾取大小;辨識一隨機選定通道;決定代表該隨機選定通道為該等隨機選定拾取大小的量測延遲;決定有關隨機選定拾取大小的該隨機選定通道的等拾取量測能量;及根據該等量測延遲與該等量測能量,選擇該封包交換通道或該電路交換通道之一者。
TW103108408A 2013-03-20 2014-03-11 多核心架構中之混合路由器 TWI565265B (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/US2013/033115 WO2014149040A1 (en) 2013-03-20 2013-03-20 Hybrid routers in multicore architectures

Publications (2)

Publication Number Publication Date
TW201507408A true TW201507408A (zh) 2015-02-16
TWI565265B TWI565265B (zh) 2017-01-01

Family

ID=51569074

Family Applications (1)

Application Number Title Priority Date Filing Date
TW103108408A TWI565265B (zh) 2013-03-20 2014-03-11 多核心架構中之混合路由器

Country Status (4)

Country Link
US (1) US9473426B2 (zh)
CN (1) CN105164664B (zh)
TW (1) TWI565265B (zh)
WO (1) WO2014149040A1 (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9553762B1 (en) 2014-06-26 2017-01-24 Altera Corporation Network-on-chip with fixed and configurable functions
US11321263B2 (en) * 2014-12-17 2022-05-03 Intel Corporation High bandwidth core to network-on-chip interface
US9961019B2 (en) * 2014-12-22 2018-05-01 Intel Corporation Adaptively switched network-on-chip
CN104980358A (zh) * 2015-05-29 2015-10-14 上海斐讯数据通信技术有限公司 一种无线路由器及其无线网络管理方法
CN107094118B (zh) * 2017-06-26 2020-10-23 太仓市同维电子有限公司 利用1200m传输速率模块搭配成无线2400m传输速率的无线路由器

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5729544A (en) * 1994-05-09 1998-03-17 Motorola, Inc. Method for transmitting data packets based on message type
TW516294B (en) * 2000-05-22 2003-01-01 Ericsson Telefon Ab L M Combining differing transport technologies in a telecommunications system
US6882640B1 (en) * 2000-09-22 2005-04-19 Siemens Communications, Inc. System and method for utilizing circuit switched and packet switched resources
US6512784B2 (en) * 2001-03-01 2003-01-28 Linex Technologies, Inc. Efficient sharing of capacity by remote stations using circuit switching and packet switching
US20040225771A1 (en) * 2000-12-28 2004-11-11 Riesenman Robert J. Data pre-fetch control mechanism and method for retaining pre-fetched data after PCI cycle termination
US20020191588A1 (en) * 2001-06-13 2002-12-19 Drexel University Integrated circuit and packet switching system
US20030236826A1 (en) * 2002-06-24 2003-12-25 Nayeem Islam System and method for making mobile applications fault tolerant
US20040001476A1 (en) * 2002-06-24 2004-01-01 Nayeem Islam Mobile application environment
WO2004001585A1 (en) * 2002-06-24 2003-12-31 Docomo Communications Laboratories Usa, Inc. Mobile application environment
US7471951B2 (en) * 2003-04-04 2008-12-30 Alcatel-Lucent Usa, Inc. Signaling of multi-task calls carried by a hybrid circuit/packet network
WO2007139536A2 (en) * 2006-05-21 2007-12-06 International Business Machines Corporation A method and apparatus for transferring data between cores in an integrated circuit
US8284766B2 (en) * 2007-12-28 2012-10-09 Intel Corporation Multi-core processor and method of communicating across a die

Also Published As

Publication number Publication date
US9473426B2 (en) 2016-10-18
TWI565265B (zh) 2017-01-01
US20140286179A1 (en) 2014-09-25
CN105164664B (zh) 2018-06-15
WO2014149040A1 (en) 2014-09-25
CN105164664A (zh) 2015-12-16

Similar Documents

Publication Publication Date Title
TWI565265B (zh) 多核心架構中之混合路由器
US7472299B2 (en) Low power arbiters in interconnection routers
US9690705B1 (en) Systems and methods for processing data sets according to an instructed order
RU2487401C2 (ru) Способ обработки данных, узел-маршрутизатор и носитель информации
US9191341B2 (en) Packet routing within an on-chip network
CN108647046B (zh) 用于控制执行流程的设备和方法
US8473818B2 (en) Reliable communications in on-chip networks
JP2016531529A (ja) オンチップネットワークにおける回線交換事前予約
US10616333B2 (en) System for the management of out-of-order traffic in an interconnect network and corresponding method and integrated circuit
US9390038B2 (en) Local bypass for in memory computing
WO2015039352A1 (zh) 缓存数据的方法和存储系统
US9619265B2 (en) Reconfiguration with virtual machine switching
TW201741887A (zh) 用於具有可重配置多端口的快捷外設互聯標準儲存系統的服務品質感測輸入輸出管理的方法、系統及設備
US11797311B2 (en) Asynchronous pipeline merging using long vector arbitration
US9639473B1 (en) Utilizing a cache mechanism by copying a data set from a cache-disabled memory location to a cache-enabled memory location
TWI536772B (zh) 直接提供資料訊息至協定層之技術
US9710303B2 (en) Shared cache data movement in thread migration
US9817583B2 (en) Storage system and method for allocating virtual volumes based on access frequency
CN105824604B (zh) 多输入多输出处理器流水线数据同步装置及方法
JP6331944B2 (ja) 情報処理装置、メモリ制御装置及び情報処理装置の制御方法
CN116685943A (zh) 可编程原子单元中的自调度线程
JP6477228B2 (ja) 情報処理装置、メモリ制御装置、および情報処理装置の制御方法
Tavakkol et al. Network-on-SSD: A scalable and high-performance communication design paradigm for SSDs
WO2014142809A1 (en) Accelerator buffer access
CN113297117B (zh) 数据传输方法、设备、网络系统及存储介质

Legal Events

Date Code Title Description
MM4A Annulment or lapse of patent due to non-payment of fees