TWI662416B - 系統晶片(SoC)結構中有效率的點對點通訊支援 - Google Patents
系統晶片(SoC)結構中有效率的點對點通訊支援 Download PDFInfo
- Publication number
- TWI662416B TWI662416B TW102100694A TW102100694A TWI662416B TW I662416 B TWI662416 B TW I662416B TW 102100694 A TW102100694 A TW 102100694A TW 102100694 A TW102100694 A TW 102100694A TW I662416 B TWI662416 B TW I662416B
- Authority
- TW
- Taiwan
- Prior art keywords
- agent
- destination
- write
- network interface
- peer
- Prior art date
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L51/00—User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
- H04L51/04—Real-time or near real-time messaging, e.g. instant messaging [IM]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L51/00—User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
- H04L51/21—Monitoring or handling of messages
- H04L51/23—Reliability checks, e.g. acknowledgments or fault reporting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/40—Bus structure
- G06F13/4004—Coupling between buses
- G06F13/4022—Coupling between buses using switching circuits, e.g. switching matrix, connection or expansion network
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2213/00—Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F2213/0038—System on Chip
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/10—Packet switching elements characterised by the switching fabric construction
- H04L49/109—Integrated on microchip, e.g. switch-on-chip
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Multi Processors (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
用於互連結構中有效率的點對點通訊支援之方法及設備。實施與代理器相關之網路介面而以確保資料存取相應於每一代理器之最新更新的方式促進代理器之間之點對點交易。此係部分經由當從該代理器起始之寫入交易之間之目的地改變時使用從該代理器發送之非後置式(non-posted)「虛擬寫入」而予實施。該虛擬寫入確保相應於先前寫入之資料在後續寫入及讀取交易之前抵達其目的地,因而排序該點對點交易而不需使用集中交易排序實體。
Description
本發明之範疇大體上關於電腦系統中之通訊,更具體但不排他地關於系統晶片(SoC)結構中用於增強點對點通訊之技術。
電腦系統典型地採用一或多互連以促進系統組件間之通訊,諸如處理器及記憶體之間。互連及/或延伸介面亦可用以支援內建及附加裝置,諸如IO(輸入/輸出)裝置及延伸卡等。在個人電腦導入多年後,互連之主要形式為並列匯流排。並列匯流排結構係用於內部資料轉移及延伸匯流排,諸如產業標準架構(ISA)、微通道架構(MCA)、延伸產業標準架構(EISA)及VESA本機匯流排。在1990年代初期,Intel公司引入週邊組件互連(PCI)電腦匯流排。PCI不僅藉由增加匯流排速度,亦使用共用位址及資料線導入自動組態及以交易為基之資料轉移,而改進早期匯流排技術。
隨著時間的推移,電腦處理器時鐘率以較並
列匯流排時鐘率更快步伐增加。結果,電腦工作量通常受限於互連瓶頸而非處理器速度。儘管並列匯流排支援每一週期大量資料轉移(例如,在PCI-X下32或甚至64位元),其時鐘率受限於時序偏差考量,導致最大匯流排速度之實際限制。為克服此問題,發展高速串列互連。早期串列互連之範例包括串列ATA、USB(通用串列匯流排)、火線(FireWire)路、及RapidIO。廣泛使用之另一標準串列互連為PCI Express(PCIe),其係於2004年在PCIe 1.0標準下導入。
最近,通常稱為「系統晶片」(SoC)之架構在電腦產業中已成為普遍。並非於分立組件之間具有外部互連,SoC採用內部互連,其促進各式嵌入組件之間之通訊,諸如處理器核心及其他IP(智慧財產權)區塊。該些IP區塊典型地經由一或多互連架構連接,諸如互連網目(例如,橫桿型互連),亦稱為互連結構,或簡單地為「結構」,並與代理器相關,該代理器使用藉由互連實施之可應用通訊協定管理IP核心組件之間之通訊。
設計用於SoC之通訊結構可極具挑戰性。隨著SoC上IP區塊數量持續增加,互連結構上流量擁塞同樣地增加。然而,隨著更多IP區塊及相關代理器整合於SoC上,以匯流排為基或以分層樹為基之結構遭遇嚴重線路擁塞及時序收斂問題,侷限了該些互連架構的可擴縮性(scalability)。結果,因其可擴縮性、模組性及易於設計再使用,SoC之晶片上通訊結構現在從匯流排及分層樹
結構移至更複雜的互連結構,諸如網路晶片(NoC)、混合架構等。
200‧‧‧系統晶片平台
202‧‧‧互連結構
204、612‧‧‧代理器
206‧‧‧網路介面
300‧‧‧送出佇列
308‧‧‧送入佇列
302、310‧‧‧仲裁器
304、306、404、406‧‧‧區塊
312‧‧‧寫入目的地暫存器
400、402‧‧‧決定區塊
500‧‧‧網目網路晶片結構
502、606‧‧‧路由器
600‧‧‧系統
602‧‧‧系統晶片
604‧‧‧網路晶片
608‧‧‧互連鏈路
610‧‧‧智慧財產權區塊
614‧‧‧網路介面
616、618‧‧‧記憶體控制器
620、622‧‧‧記憶體區塊
624‧‧‧系統介面
藉由參照下列詳細說明,當結合附圖時,上述方面及本發明許多伴隨優點將變得更易於理解,其中,除非特別指名,各圖通篇中相似代號係指相似零件:圖1為示意方塊圖,描繪耦接至互連之三代理器之間發送的一連串信息;圖2為示意方塊圖,描繪連接至互連之複數代理器,其中,每一代理器與網路介面相關,其促使交易排序以確保資料存取不陳舊;圖3為網路介面之一實施例的示意方塊圖;圖4為流程圖,描繪依據一實施例之藉由網路介面實施的邏輯及作業;圖5a-5f為示意方塊圖,用於描繪使用虛擬寫入之演練範例,以確保一連串交易之適當交易排序;以及圖6為採用網路晶片之示範系統晶片的示意方塊圖。
文中說明SoC結構中有效率的點對點通訊支援之方法及設備的實施例。在下列說明中,提出許多特定細節,以提供本發明之實施例的徹底理解。然而,孰悉相關技藝之人士將認同無特定細節之一或多項,或使用其他
方法、組件、材料等仍可實現本發明。在其他狀況下,未顯示或詳細說明熟知結構、材料、或作業以避免混淆本發明之態樣。
本說明書通篇提及「一實施例」或「實施例」表示結合實施例所說明之特徵、結構、或特性係包括於本發明之至少一實施例中。因而,本說明書通篇出現之「在一實施例中」或「在實施例中」用語不一定均指相同實施例。此外,特徵、結構、或特性可以任何適當方式組合於一或多個實施例中。
點對點通訊支援在SoC結構設計中為重要特徵。點對點通訊之重大挑戰為確保正確排序之需求。圖1顯示排序需求之範例。在此範例中,代理器A首先發出寫入至代理器B(步驟1)。代理器A接著發送旗標至代理器C,指出其已寫入資料(步驟2)。當代理器C接收旗標時,便發出讀取至代理器B(步驟3)。需求為代理器C需得到藉由代理器A寫入之最新資料。然而,若未正確設計,藉由代理器C發出之讀取可較藉由代理器A寫入之資料更早抵達代理器B。結果,代理器C可能讀取陳舊資料而非最新資料。
在目前Intel® SoC平台中,藉由支援PCI-e排序之匯流排及分層樹結構支援點對點通訊排序(ordering)。然而,當互連結構從匯流排及分層樹移至更複雜結構架構時,點對點支援便成為重大挑戰,因為在該些先進結構架構中未確保排序。一解決方案為使用互連
結構中之集中排序點,以確保維持正確排序。然而,此途徑增加通訊時間,且集中排序點可成為瓶頸,因為在每一要求行進至其目的地之前必須為排序而首先發送至排序點。設計者亦可使用非後置式(non-posted)寫入取代後置式(posted)點對點通訊的寫入。然而,非後置式寫入途徑增加點對點交易之顯著通訊延遲,因為在發送下一要求之前,需確認每一發出之寫入,因而非後置式寫入無法滿足該等系統中之性能需求。
鑒於上述及其他性能考量,目前呈現低開銷設計以支援直接點對點通訊而無互連結構中之集中排序點。圖2顯示具互連結構202作為通訊結構之SoC平台200的範例。在此架構中,每一代理器204經由網路介面(NI)206連接至互連結構。NI仲裁來自不同佇列支要求並分包勝利要求(如適用)及發送封包至互連結構202上。互連結構接著朝向其目的地(即另一代理器)按路線發送封,且目的地NI解分包信息及將信息轉移至目的地代理器。通常,互連結構202可為任何結構架構,諸如傳統匯流排、分層樹、或更複雜結構,諸如網路晶片(NoC)、混合架構等。再者,技術可用於要求結構中點對點排序支援之任何互連結構。
圖3顯示依據一實施例之NI 206的進一步細節。在代理器起始之送出要求被緩衝於送出佇列300中,具仲裁排序之仲裁器302其中要求被發送。回應於仲裁器302從佇列300選擇要求,要求於區塊304中被分包並發
送至結構上。送入要求包含封包,其係從結構接收並預定用於代理器。該些封包首先於區塊306中被解分包,隨之相應要求資料於送入佇列308中緩衝。仲裁器310接著用以仲裁排序,其中佇列之要求被傳送至代理器。應注意的是圖3中所描繪之NI 206僅為支援點對點交易之NI的一範例,因為亦可實施其他NI組態。
對點對點通訊而言,若自不同來源代理器發送之二信息預定至相同目的地代理器並要求排序,則首先發送之信息必須首先抵達目的地。然而,在結構內,因為來自不同來源代理器之點對點信息可採取不同路徑至相同目的地,極可能在若干點預定用於相同目的地代理器之信息對將以與其插入結構之時間的不同排序抵達目的地。結果,不能確保點對點排序。
主要考量為後置式寫入交易排序。為確保適當點對點後置式寫入交易排序,實施一機構其確保始自相同來源代理器及前往不同目的地代理器的後置式寫入依序抵達其個別目的地。使用以上圖1所呈現之範例,代理器A首先寫入至代理器B(第一後置式寫入)。代理器A接著寫入至代理器C,指出其已寫入至代理器B(另一後置式寫入)。若在代理器C接收來自代理器A之信息時,來自代理器A之後置式寫入已抵達代理器B,代理器C則發送讀取至代理器B,其確保讀取最新資料。結果,可確保排序正確。
為予達成,在一實施例中,如圖3中所示,
在每一NI 206中實施「寫入目的地暫存器」(WDR)312。WDR暫存器用以為其附加代理器發出之最新後置式寫入要求記錄目的地ID。對具N代理器之系統而言,WDR暫存器尺寸僅為logN位元。
對從代理器發出之每一後置式寫入交易而言,代理器之NI首先為寫入以及其WDR中所記錄之先前(即最近)後置式寫入目的地檢查目的地代理器。
(a)若先前後置式寫入及目前後置式寫入係至相同目的地代理器,NI則直接發送寫入要求至結構上。此邏輯係描繪於圖4之流程圖中,其中,對於決定區塊400及402及是(YES)及否(NO)之個別答案致使流程前進至區塊406,其中要求被發送至結構之上。結構接著按路線發送寫入要求至要求中所識別之目的地代理器。在此狀況下,WDR不需更新,因為目的地代理器與先前後置式寫入的相同。
(b)若NI檢測到先前後置式寫入及目前後置式寫入係至不同代理器,則對於決定區塊402之答案為否,且NI將首先發送「虛擬寫入」,諸如非後置式寫入或其他類型交易,如區塊404中所示,其將從目的地NI返回確認至藉由WDR記錄之先前目的地代理器。此「虛擬寫入」首先用以推動所有先前後置式寫入至其目的地。NI接著等候來自先前目的地代理器對於「虛擬寫入」之確認。在接收確認之後,便確保所有先前後置式寫入已推動至目的地。NI接著
發出後置式寫入至結構之上。NI亦更新其WDR以識別新目的地。隨著所有從代理器發送之寫入已依序抵達其目的地,便確保對於此目的地的任何後續讀取要求將存取最新資料更新。
對讀取交易而言,NI總是經由結構直接發送要求至目的地(無虛擬交易要求)。如圖4中所描繪,流程從來自決定區塊400之否結果前進至區塊406中發送要求。
圖5a-5f描繪點對點排序方案如何作業以確保要求之適當排序的演練範例。在所描繪之每一圖中,如圖5a中所示多代理器204互連通過網目NoC結構500。每一代理器204操作上耦接至包括WDR 312之NI 206。經由一組操作上耦接至個別NI 206之路由器502,而促進NoC結構中路由。在圖5a-5f中,每一WDR312顯示相應於來自其相應NI之最新寫入目的地的目的地ID。
在此範例中,代理器C希望從代理器B讀取資料。然而,此資料目前已藉由代理器A寫入至代理器B,所以需要有機構確保代理器C未從代理器B接收陳舊資料。此係經由使用以上討論之虛擬寫入技術予以完成,如下列細節中進一步說明。
(i)對藉由代理器A發出之寫入而言,NI首先檢查WDR。在此範例中,在第一寫入發出時,WDR為「代理器D」,但寫入要求之目的地為「代理器B」,所以NI首先發送「虛擬寫入」至代理器D(如圖5b中作業1所示)。
(ii)當代理器D接收此「虛擬寫入」時,便發出「確認」至代理器A(圖5b中作業2)。
(iii)一旦接收確認,在代理器A之NI便將其WDR改變至「代理器B」,並發送寫入至代理器B(圖5c中作業3)。
(iv)對於下列至代理器B之寫入要求而言,因為目的地及WDR相同(代理器B),NI便直接發送下列寫入至代理器B。
(i)在代理器A之NI首先檢查WDR。WDR為「代理器B」,但寫入要求之目的地為「代理器C」,所以NI首先發送「虛擬寫入」至代理器B(以推動資料至代理器B,如藉由圖5d中作業1所示)。
(ii)當代理器B接收此「虛擬寫入」時,便發出「確認」至代理器A(圖5d中作業2)。
(iii)一旦接收確認,,在代理器A之NI便將其WDR改變至「代理器C」,並發送寫入旗標至代理器C(圖5e中作業3)。
對讀取要求而言,NI總是將其直接發送至目的地節點。在此狀況下,代理器C直接發送所有讀取要求至代理器B(如圖5f中所示)。由於代理器B中資料已為最新,藉由代理器C讀取之資料正確。
上述描繪藉由各式代理器及相關組件實施之一連串作業的一範例,以確保每一資料要求導致最新資料返回至請求者之方式促進資料交易。儘管係以2D網目結構之上下文說明範例,將理解的是類似途徑可用以確保其他類型互連架構中適當排序作業,包括採用匯流排、層次、混合等互連結構。
在上述演練範例中,描繪SoC組態具有連接至一代理器之每一NI。文中所揭露之原理及論述亦可實施用於同步連接至多代理器之NI。在此狀況下,NI可具有一藉由所有相關代理器共用之WDR或一用於每一代理器之WDR。前者較簡單但在若干環境下可能產生不必要之虛擬寫入,而後者更有效率但使用稍多邏輯實施。二方法確保點對點通訊之正確排序並具有極低硬體開銷。
圖6中顯示在文中所說明之實施例方面,可實施包括具有示範組態之SoC 602的系統600。SoC 602包括包含2D網目互連結構之網路晶片(NoC)604,該
2D網目互連結構具有靠近每一橫桿交叉之路由器606並包含複數互連鏈路608。複數IP區塊610耦接至個別路由器606,形成IP區塊之2D陣列。儘管圖6中顯示16 IP區塊,其僅係描繪,因為IP區塊之數量可改變,從較少數量IP區塊到更多,諸如但不侷限於8、24、32、48、64等,以及任何其間數量。
每一IP區塊包括代理器612及網路介面614。IP區塊為共同用於SoC中之各式類型IP區塊的描繪,諸如處理器核心、硬體加速器(例如,視訊解碼器、圖形、成像等)、記憶體相關組件(例如,記憶體控制器)、及I/O介面(例如,PCIe、QPI等)。在所描繪之實施例中,描繪一對記憶體控制器616及618分別耦接至記憶體區塊620及622(描繪為DIMM(雙重直列記憶體模組))及耦接至NoC 604中之個別路由器。亦描繪系統介面624,其係SoC 602及未顯示之其他系統組件之間之一或多介面的描繪。如同熟悉本技藝之人士將認同的,實際SoC將包括未顯示之額外組件以避免混淆圖6中所描繪之NoC態樣。
在進一步細節中,典型處理器核心IP區塊可能包括耦接至或包括一或多級快取記憶體(例如,L1/L2快取記憶體)之處理器核心。接著,快取記憶體可採用代理器以促進與系統中其他快取記憶體及記憶體代理器之連貫記憶體交易。代理器可用於其他用途,以及諸如非連貫記憶體交易或其他通訊用途。再者,儘管圖6中描繪代理
器為單一區塊,特定IP區塊可具有相關多代理器。
除了以上討論之用於促進交易排序及相關作業之邏輯外,每一網路介面將包括用於與應用互連結構界接之配置。例如,互連結構可包含串列多通道互連結構,諸如Intel之QUICKPATH INTERCONNECT®(QPI)或Intel之KEIZER TECHNOLOGY INTERCONNECT®(KTI)、開放核心協定互連、其他類型標準化或所有權互連,以及未來互連技術及協定。此外,NoC之組態可包括其他類型互連結構組態,諸如但不侷限於環面及3D網目互連(例如,可用於具有以3D陣列組配之IP區塊之未來三維SoC中的互連結構)。
所描繪之本發明之實施例的以上說明包括發明摘要中所說明者,不希望窮舉或侷限本發明為所揭露之精確形式。雖然為描繪目的,文中說明本發明之特定實施例及範例,如熟悉相關技藝之人士將認同的,在本發明之範圍內可實施各式等效修改。
鑒於以上詳細說明,本發明可實施該些修改。下列申請專利範圍中所用之用詞不應解譯為侷限本發明於說明書及圖式中所揭露之特定實施例。而是,本發明之範圍完全藉由下列申請專利範圍判定,其係依據申請專利範圍解釋所建立原則來解譯。
Claims (21)
- 一種用於促進在包含有互連結構之晶片上之同級代理器之間之點對點寫入及讀取交易的方法,該方法包含:實施耦接至該互連結構之複數網路介面,每一該網路介面與至少一同級代理器相關且操作上耦接於該至少一同代理器與該互連結構之間;在該等同級代理器起始複數寫入及讀取交易;以及實施在該複數網路介面中的邏輯以排序該等點對點寫入及讀取交易,以便確保讀取交易存取最新資料。
- 如申請專利範圍第1項之方法,進一步包含:為在代理器起始之寫入交易,儲存相應於在該網路介面中的該寫入交易之目的地的目的地識別符(ID);在該網路介面中判定相應於在該同級代理器起始之目前寫入交易的目的地ID是否與相應於在該代理器起始之緊接寫入交易的目的地ID不同;以及若該二目的地ID不同,在發送該目前寫入交易至該互連結構以按路線發送至其目的地之前,從該同級代理器發送虛擬寫入至該互連結構以按路線發送至先前目的地。
- 如申請專利範圍第2項之方法,其中,該虛擬寫入包含非後置式寫入。
- 如申請專利範圍第2項之方法,進一步包含等候以於發送該目前寫入交易至其目的地之前,接收該虛擬寫入的確認。
- 如申請專利範圍第2項之方法,其中,網路介面為與該網路介面相關之每一同級代理器儲存最新寫入交易之目的地ID,並於從相同同級代理器起始之連續寫入交易具有不同目的地ID時產生虛擬寫入。
- 如申請專利範圍第1項之方法,其中,實施該複數網路介面使得每一網路介面與個別同級代理器相關。
- 如申請專利範圍第2項之方法,進一步包含發送寫入通知至至少一其他同級代理器,指出相應於該目前寫入交易之該目的地可用於資料存取。
- 如申請專利範圍第1項之方法,其中,該互連結構包含二維網目互連。
- 如申請專利範圍第1項之方法,其中,該代理器及互連結構係在系統晶片(SoC)上實施。
- 一種設備,包含:互連結構;複數代理器;複數處理器核心,每一該處理器核心耦接至來自該等複數代理器之中的個別代理器;以及複數網路介面,每一該網路介面操作上耦接於至少一代理器與該互連結構之間,並包括邏輯以確保同級代理器之間之資料交易係有序之方式而用於促進該複數代理器之間之點對點通訊,使得在每一資料交易存取之資料包含該資料的最新更新。
- 如申請專利範圍第10項之設備,其中,該互連結構包含網路晶片。
- 如申請專利範圍第10項之設備,其中,網路介面包含邏輯用於促進以下作業,包含:儲存相應於在耦接至該網路介面之代理器起始之第一寫入交易之目的地的目的地識別符(ID);判定相應於在耦接至該網路介面之該代理器起始之第二寫入交易的目的地ID是否與相應於該第一寫入交易的目的地ID不同;以及若該二目的地ID不同,在發送該第二寫入交易至該互連結構以按路線發送至其目的地之前,從該網路介面發送虛擬寫入至該互連結構以按路線發送至該第一寫入交易之該目的地。
- 如申請專利範圍第10項之設備,其中,該設備包含系統晶片(SoC)。
- 如申請專利範圍第10項之設備,其中,該設備包括耦接於每一代理器及該互連結構之間之個別網路介面。
- 如申請專利範圍第10項之設備,其中,網路介面包含:送出佇列;送出仲裁器;分包區塊;解分包區塊;送入佇列;送入仲裁器;以及暫存器,經組配以儲存相應於最新寫入交易之目的地的目的地識別符(ID)。
- 一種系統晶片(SoC),包含:複數智慧財產權(IP)區塊,每一該IP區塊具有至少一同級代理器及網路介面,至少一部分該等IP區塊進一步包括與該IP區塊之該至少一同級代理器分開的處理器核心;互連結構,包括經由該網路介面而耦接至該複數IP區塊的複數路由器,其中,該網路介面包括邏輯以確保同級代理器之間之資料交易係有序之方式而用於促進該代理器之間之點對點通訊,使得在每一交易存取之資料包含該資料的最新複本。
- 如申請專利範圍第16項之SoC,其中,該互連結構包含二維網目、複數環面互連、或三維互連。
- 如申請專利範圍第16項之SoC,其中,該互連結構及該複數路由器包含網路晶片。
- 如申請專利範圍第16項之SoC,其中,至少一部分該IP區塊包含包括處理器核心及一或多級快取記憶體的處理器核心區塊。
- 如申請專利範圍第16項之SoC,其中,該網路介面包括邏輯用於實施以下作業,包含:儲存相應於在耦接至該網路介面之代理器起始之第一寫入交易之目的地的目的地識別符(ID);判定相應於在耦接至該網路介面之該代理器起始之第二寫入交易的目的地ID是否與相應於該第一寫入交易的目的地ID不同;以及若該二目的地ID不同,在發送該第二寫入交易至該互連結構以按路線發送至其目的地之前,從該網路介面發送虛擬寫入至該互連結構以按路線發送至該第一寫入交易之該目的地。
- 如申請專利範圍第1項之方法,其中,至少一部分該IP區塊耦接至處理器核心。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/US2012/021187 WO2013105967A1 (en) | 2012-01-13 | 2012-01-13 | Efficient peer-to-peer communication support in soc fabrics |
??PCT/US12/21187 | 2012-01-13 |
Publications (2)
Publication Number | Publication Date |
---|---|
TW201344447A TW201344447A (zh) | 2013-11-01 |
TWI662416B true TWI662416B (zh) | 2019-06-11 |
Family
ID=48780757
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW102100694A TWI662416B (zh) | 2012-01-13 | 2013-01-09 | 系統晶片(SoC)結構中有效率的點對點通訊支援 |
Country Status (4)
Country | Link |
---|---|
US (1) | US9755997B2 (zh) |
CN (1) | CN104081722B (zh) |
TW (1) | TWI662416B (zh) |
WO (1) | WO2013105967A1 (zh) |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9755997B2 (en) * | 2012-01-13 | 2017-09-05 | Intel Corporation | Efficient peer-to-peer communication support in SoC fabrics |
JP6356624B2 (ja) * | 2015-03-23 | 2018-07-11 | 東芝メモリ株式会社 | メモリデバイスおよび情報処理装置 |
US20170116154A1 (en) * | 2015-10-23 | 2017-04-27 | The Intellisis Corporation | Register communication in a network-on-a-chip architecture |
US20170269959A1 (en) * | 2016-03-15 | 2017-09-21 | Intel Corporation | Method, apparatus and system to send transactions without tracking |
US10324865B2 (en) * | 2016-09-06 | 2019-06-18 | Apple Inc. | Maintaining ordering requirements while converting protocols in a communications fabric |
US11064019B2 (en) * | 2016-09-14 | 2021-07-13 | Advanced Micro Devices, Inc. | Dynamic configuration of inter-chip and on-chip networks in cloud computing system |
IL315283A (en) | 2018-03-30 | 2024-10-01 | Google Llc | Mediation parts of transactions in ritualistic channels attributed to connection |
US20190302861A1 (en) | 2018-03-30 | 2019-10-03 | Provino Technologies, Inc. | Protocol level control for system on a chip (soc) agent reset and power management |
US10255218B1 (en) | 2018-06-25 | 2019-04-09 | Apple Inc. | Systems and methods for maintaining specific ordering in bus traffic |
US11580054B2 (en) * | 2018-08-24 | 2023-02-14 | Intel Corporation | Scalable network-on-chip for high-bandwidth memory |
CN112825101B (zh) * | 2019-11-21 | 2024-03-08 | 广州希姆半导体科技有限公司 | 芯片架构及其数据处理方法、电子设备及存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6584513B1 (en) * | 2000-03-31 | 2003-06-24 | Emc Corporation | Direct memory access (DMA) transmitter |
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 |
US20090274158A1 (en) * | 2008-05-05 | 2009-11-05 | Sentilla Corporation, Inc. | Efficient Broadcast of Data in a Communication Network |
US20090307408A1 (en) * | 2008-06-09 | 2009-12-10 | Rowan Nigel Naylor | Peer-to-Peer Embedded System Communication Method and Apparatus |
US20110296129A1 (en) * | 2010-06-01 | 2011-12-01 | Hitachi, Ltd. | Data transfer device and method of controlling the same |
Family Cites Families (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6636928B1 (en) * | 2000-02-18 | 2003-10-21 | Hewlett-Packard Development Company, L.P. | Write posting with global ordering in multi-path systems |
US6801976B2 (en) * | 2001-08-27 | 2004-10-05 | Intel Corporation | Mechanism for preserving producer-consumer ordering across an unordered interface |
US20050091432A1 (en) * | 2003-10-28 | 2005-04-28 | Palmchip Corporation | Flexible matrix fabric design framework for multiple requestors and targets in system-on-chip designs |
US20060050693A1 (en) * | 2004-09-03 | 2006-03-09 | James Bury | Building data packets for an advanced switching fabric |
US8108584B2 (en) * | 2008-10-15 | 2012-01-31 | Intel Corporation | Use of completer knowledge of memory region ordering requirements to modify transaction attributes |
US8990633B2 (en) * | 2009-04-21 | 2015-03-24 | Freescale Semiconductor, Inc. | Tracing support for interconnect fabric |
CN102567277A (zh) * | 2010-12-30 | 2012-07-11 | 世意法(北京)半导体研发有限责任公司 | 用于通过片上网络系统来降低功耗的方法 |
US8522189B2 (en) * | 2011-03-09 | 2013-08-27 | Intel Corporation | Functional fabric based test access mechanism for SoCs |
US9100348B2 (en) * | 2011-10-03 | 2015-08-04 | Intel Corporation | Managing sideband routers in on-die system fabric |
CN103946824B (zh) * | 2011-11-22 | 2016-08-24 | 英特尔公司 | 一种用于非易失性随机访问存储器的访问控制方法、装置及系统 |
WO2013081580A1 (en) * | 2011-11-29 | 2013-06-06 | Intel Corporation | Raw memory transaction support |
US8788737B2 (en) * | 2011-12-26 | 2014-07-22 | Qualcomm Technologies, Inc. | Transport of PCI-ordered traffic over independent networks |
US9755997B2 (en) * | 2012-01-13 | 2017-09-05 | Intel Corporation | Efficient peer-to-peer communication support in SoC fabrics |
US8982734B2 (en) * | 2012-06-26 | 2015-03-17 | Intel Corporation | Methods, apparatus, and systems for routing information flows in networks using spanning trees and network switching element resources |
DE112013005093T5 (de) * | 2012-10-22 | 2015-10-22 | Intel Corporation | Hochleistungszusammenschaltungsbitübertragungsschicht |
WO2015099660A1 (en) * | 2013-12-23 | 2015-07-02 | Intel Corporation | Integrated component interconnect |
US9747245B2 (en) * | 2014-12-17 | 2017-08-29 | Intel Corporation | Method, apparatus and system for integrating devices in a root complex |
US9946676B2 (en) * | 2015-03-26 | 2018-04-17 | Intel Corporation | Multichip package link |
US9940287B2 (en) * | 2015-03-27 | 2018-04-10 | Intel Corporation | Pooled memory address translation |
-
2012
- 2012-01-13 US US13/810,033 patent/US9755997B2/en active Active
- 2012-01-13 WO PCT/US2012/021187 patent/WO2013105967A1/en active Application Filing
- 2012-01-13 CN CN201280066986.1A patent/CN104081722B/zh active Active
-
2013
- 2013-01-09 TW TW102100694A patent/TWI662416B/zh active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
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 |
US6584513B1 (en) * | 2000-03-31 | 2003-06-24 | Emc Corporation | Direct memory access (DMA) transmitter |
US20090274158A1 (en) * | 2008-05-05 | 2009-11-05 | Sentilla Corporation, Inc. | Efficient Broadcast of Data in a Communication Network |
US20090307408A1 (en) * | 2008-06-09 | 2009-12-10 | Rowan Nigel Naylor | Peer-to-Peer Embedded System Communication Method and Apparatus |
US20110296129A1 (en) * | 2010-06-01 | 2011-12-01 | Hitachi, Ltd. | Data transfer device and method of controlling the same |
Also Published As
Publication number | Publication date |
---|---|
CN104081722A (zh) | 2014-10-01 |
CN104081722B (zh) | 2018-05-22 |
US20130185370A1 (en) | 2013-07-18 |
WO2013105967A1 (en) | 2013-07-18 |
US9755997B2 (en) | 2017-09-05 |
TW201344447A (zh) | 2013-11-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI662416B (zh) | 系統晶片(SoC)結構中有效率的點對點通訊支援 | |
US8489794B2 (en) | Processor bus bridge for network processors or the like | |
US9064051B2 (en) | Issuing requests to a fabric | |
JP7378428B2 (ja) | I/oマスタとcpuとの間の最適化されたデータ共有を可能にするための順序付けられた書き込みスタッシュの高性能なストリーミング | |
US20020174229A1 (en) | System and method of maintaining coherency in a distributed communication system | |
EP3758318A1 (en) | Shared memory mesh for switching | |
Daneshtalab et al. | A low-latency and memory-efficient on-chip network | |
US8756349B2 (en) | Inter-queue anti-starvation mechanism with dynamic deadlock avoidance in a retry based pipeline | |
JP2007220046A (ja) | バス装置、バスシステムおよび情報転送方法 | |
JP7419261B2 (ja) | ストリーミングデータ転送のためのフロー圧縮を用いたデータ処理ネットワーク | |
US9304925B2 (en) | Distributed data return buffer for coherence system with speculative address support | |
CN100432972C (zh) | 输入/输出集线器、输入/输出系统和使用它们的计算机系统 | |
KR100419679B1 (ko) | 트랜잭션 요청 라우팅 방법 | |
TW200407712A (en) | Configurable multi-port multi-protocol network interface to support packet processing | |
US20070121659A1 (en) | Ring-based cache coherent bus | |
KR20210092222A (ko) | 버스 상의 메모리 요청 체이닝 | |
JP6092351B2 (ja) | クロスダイ・インタフェース・スヌープ又はグローバル観測メッセージの順序付け | |
US20090265485A1 (en) | Ring-based cache coherent bus | |
WO2012118552A2 (en) | Increasing input output hubs in constrained link based multi-processor systems | |
US20220358063A1 (en) | Multi-socket network interface controller with consistent transaction ordering | |
JP4055903B2 (ja) | バス通信システム | |
JP4521410B2 (ja) | ディスクアレイ制御装置 | |
JP2015170313A (ja) | 演算処理装置および演算処理装置の制御方法 | |
CN117931481A (zh) | 一种实时与分时系统数据快速交换的方法 | |
Adama | Simulation of PCI Express™ Transaction Layer using Hardware Description Language |