新四季網

具有埠解析模塊的結構晶片的製作方法

2023-09-23 20:52:35 2

具有埠解析模塊的結構晶片的製作方法
【專利摘要】一種結構晶片包括多個埠接口,其中多個埠接口中每個埠接口均包括具有埠解析模塊的網絡晶片接口(NCI)塊以及交叉開關塊,並且其中所述埠解析模塊要確定埠接口中哪個埠接口要從NCI塊接收分組,所述交叉開關塊可通信地與多個埠接口中的每個NCI塊聯接。
【專利說明】具有端ロ解析模塊的結構晶片
【背景技術】
[0001]計算機性能已提升並且繼續以很快的速率提升。伴隨所提升的計算機性能,將計算機連接在一起的網絡的帶寬能力也已提升並且繼續顯著提升。基於乙太網的技術是已被改變和改進來向聯網的計算機提供充足帶寬的一種網絡的示例。基於乙太網的技術通常利用網絡交換機,網絡交換機是根據分組中包含的目的地址信息對分組流進行控制的基於硬體的設備。在交換結構中,網絡交換機通過允許建造具有可擴展端ロ密度的網絡交換機的結構彼此連接。此結構通常從網絡交換機接收數據並且將數據轉發至其它連接的網絡交換機。 [0002]在傳統的交換式結構中,在分組的源處對多播分組進行複製,並且將每個所複製的分組通過該結構傳遞至它們各自的目的地。這導致分組源附近的結構消耗相對大量的帶寬。此外,傳統的交換式結構對固定的結構輸出端ロ進行編程,以將分組移向目的地,這可能導致結構帶寬的低效使用以及不必要的大量消耗。此外,當結構和網絡交換機之間連接發生故障時,傳統冗餘的交換式結構需要軟體交互來恢復該結構上的業務流。然而,當在結構和未建設有故障轉移能力的傳統交換式結構中的網絡交換機之間的連接中發生故障吋,穿越該結構的數據流在軟體與該結構進行交互來恢復該結構上的業務流時停止。
【專利附圖】

【附圖說明】
[0003]本公開的特徵是通過示例圖示的且不局限於下面的圖,下面的圖中相同的附圖標記表示相同元件,其中:
[0004]圖1圖示根據本公開示例的網絡裝置的簡化示意圖;
[0005]圖2示出根據本公開示例的圖1所示結構晶片的簡化框圖;
[0006]圖3和圖4分別示出根據本公開的兩個示例的交換結構的簡化框圖;以及
[0007]圖5和圖6分別示出根據本公開示例的用於實現包括圖1至圖4的結構晶片的交換結構的方法的流程圖。
【具體實施方式】
[0008]為簡單和說明目的,通過主要參考本公開的示例對本公開進行描述。在下面的描述中,闡述大量特定細節,以便提供對本發明的全面理解。然而,將顯而易見的是,本公開可以在沒有對這些特定細節的限制的情況下實踐。在其它情況中,未詳細地描述ー些方法和結構,以便不非必要地使本公開模糊。
[0009]在本公開全文中,附圖標記後的術語「n」意在表示大於I的整數值。此外,圖中的省略號…意在表示在圍繞省略號的要素之間可以包括附加的要素。此外,術語「一」意在表示特定要素中至少ー個。本文中使用的術語「包括」指包括但不限幹,術語「包含」在本文中使用時指包含但不限幹。術語「基幹」指至少部分地基幹。
[0010]本文公開的是結構晶片、交換結構和用於實現交換結構的方法。本文公開的結構晶片包含多個端ロ接ロ,其中多個端ロ接ロ中每個端ロ接ロ均能夠確定其它端ロ接口中哪個埠接口會接收要到達目的地節點晶片的分組,目的地節點晶片可以直接附接至埠接口之一或另一結構晶片。此外,這些埠接口能夠獨立於這些埠接口外部的軟體做出這些確定。根據示例,本文公開的用於實施結構晶片的交換結構具有相對高的可用性,因為該結構晶片能夠在結構晶片之間的鏈路故障的情況下保持結構晶片之間的連接性。此外,本文公開的結構晶片能夠將多播分組傳送至它們的目的地節點晶片,同時通過在交換結構中的最遠點複製多播分組來使結構擁塞最小化。因此,本文公開的結構晶片能夠進行分組的多播,而不需要源節點晶片多次將多播分組傳輸至目的地節點晶片。
[0011]分組在本文中使用時可以包括數據分組和/或控制分組。根據示例,分組包括數據迷你分組(MPacket)和控制迷你分組,其中控制迷你分組是請求或應答,數據迷你分組是單播和/或多播。
[0012]首先參考圖1,這裡示出根據示例的網絡裝置100的簡化圖。很明顯,圖1中繪出的圖代表概括圖示,並且可以添加其它組件或可以移除、修改或重布置現有組件,而不背離網絡裝置100的範圍。
[0013]網絡裝置100大體包括用於執行聯網功能的裝置,如網絡交換機或等同裝置。在這一點,網絡裝置100可以包括外殼或外罩102,並且可以被配置為用作聯網組件。換言之,例如,可以將外殼102配置為放置在電子設備架或其它聯網環境中,如與其它網絡裝置一起放置在堆疊構造中。在其它示例中,網絡裝置100可以位於外殼內較大ASIC的或一組ASIC的內部。此外或可替代地,網絡裝置100可以提供單個外殼內部的結構網絡的一部分。
[0014]將網絡裝置100描繪為包括結構晶片110和具有標記「O」和「I」的埠的多個節點晶片130a-130n。還將結構晶片110描繪為包括多個埠接口 112a_112n,多個埠接口 112a-112n可通信地聯接至節點晶片130a_130n的埠「O」和「I」中各個埠。埠接口 112a-112n還可通信地連接至交叉開關陣列120,將交叉開關陣列120描繪為包括控制交叉開關122、單播數據交叉開關124和多播數據交叉開關126。還將埠接口 112η描繪為連接至另一網絡裝置150,另一網絡裝置150可以包括與網絡裝置100相同或相似的配置。因此,例如,另一網絡裝置150可以包括可通信地聯接至結構晶片110的多個節點晶片130a-130n。此外,網絡裝置100的結構晶片110可以以本文下面更詳細地討論的各種方式,通過各個埠接口 112a,連接至另一網絡裝置150的結構晶片110。
[0015]根據示例,節點晶片130a_130n包括使用戶埠和結構晶片110能彼此接合的專用集成電路(ASIC)。雖然未示出,但是節點晶片130a-130n中每個節點晶片還可以包括用戶埠,通過該用戶埠可以將像分組這樣的數據輸入給節點晶片130a-130n和/或從節點晶片130a-130n輸出。此外,埠接口 112a_112n中每個埠接口 112a_112n可以包括埠,通過該埠可以建立節點晶片130a中的埠和埠接口 112a之間的連接。節點晶片130a的埠和埠接口 112a-112n的埠之間的連接可以包括使能數據的相對高速通信的任何適合連接,如光纖或其等同物。
[0016]根據示例,結構晶片110包括將節點晶片130a_130n可通信地彼此連接的ASIC。結構晶片110還可以包括可通信地將結構晶片110連接至另一網絡裝置150的結構晶片110的ASIC,其中如此連接的結構晶片110可以被解釋為背面可堆疊的結構晶片。本文將與節點晶片130a-130n的埠可通信地聯接的埠接口 112a_112n的埠描述為「下行鏈路埠」。此外,本文將可通信地與另一網絡裝置150的結構晶片110的埠接口 112a-112n聯接的端ロ接ロ 112a-112n的端ロ描述為「上行鏈路端ロ」。
[0017]根據示例,分組通過源節點晶片的下行鏈路端ロ進入結構晶片110,源節點晶片可以包括與目的地節點晶片相同的節點晶片。目的地節點晶片可以是交換結構中的任何結構晶片端ロ,其包括與源節點晶片附接的那個目的地節點晶片。此外,分組包括要由結構晶片110將這些分組傳遞至的那個節點晶片的標識,如「數據列表」、目的地比特掩碼等。節點晶片130a-130n的列表與節點晶片的標識中ー個或多個節點晶片相匹配的上行鏈路端ロ被認為是「優選上行鏈路端ロ 」,該優選上行鏈路端ロ將接收要傳輸的數據,除非該「優選上行鏈路端ロ」是死的或在別的方面不可用的。如果優選上行鏈路是死的或在別的方面不可用的,那麼接收數據的端ロ接ロ 112a可以使用可編程的、指定優先級的待使用的一系列端ロ作為替代上行鏈路端ロ,以選擇替代上行鏈路端ロ而不是選擇優選上行鏈路端ロ來接收分組。優選上行鏈路端ロ可以根據端ロ計算逐級改變。在這一方面,所標識的上行鏈路端ロ可以在端ロ解析計算的第一階段期間被視為優選上行鏈路端ロ。
[0018]單個節點晶片130a_130n的列表與節點晶片的標識中的節點晶片之ー相匹配的下行鏈路端ロ被認為是「活躍下行鏈路端ロ」。在分組中可以嵌入「路徑索引」,該路徑索引選擇將對該分組使用「活躍下行鏈路端ロ 」中的哪個活躍下行鏈路端ロ。該基於路徑的過濾使結構晶片110能夠具有與節點晶片130a的多個連接。
[0019]在任何方面,結構晶片110將分組傳遞至節點晶片的標識中的且可通信地聯接至結構晶片110的節點晶片130a-130n。然而,對於節點晶片的標識中不與結構晶片110可通信地聯接的節點晶片130a-130n而言,結構晶片110執行硬體計算,來確定為了到達那些節點晶片,分組將遍歷哪些上行鏈路端ロ。將這些硬體計算限定為「端ロ解析計算」。
[0020]端ロ接ロ 112a通過適合的交叉開關122-126將數據傳遞至一個或多個其它端ロ接ロ 112b-l 12n並且包括促進對節點晶片的標識進行修整的輸出端ロ計算的小數據字,使得僅被認為遍歷端ロ的目的節點晶片仍包含在節點晶片的標識中。
[0021]現在具體參考圖2,這裡示出根據示例的圖1所示結構晶片110的簡化框圖。顯然,圖2中繪出的結構晶片110代表概括圖示,並且可以添加其它組件或可以移除、修改或重布置現有組件,而不背離結構晶片110的範圍。
[0022]將結構晶片110描繪為包括多個端ロ接ロ 112a_112n以及交叉開關陣列120。本文詳細地描繪特定端ロ接ロ 112a的組件,但是應當理解,剩餘的端ロ接ロ 112b-112n可以包括相同或相似組件或構造。
[0023]如圖2所示,結構晶片110包括網絡晶片接ロ(NCI)塊202、高速鏈路(HSL)(接ロ)塊210以及串行器/解串行器(SerDes)222。作為特定示例,SerDes 222包括使用10:1的頻率比率運行在8b/10b模式下的ー組八(8)個serdes。此外,將SerDes 222描繪為將接收端ロ 224和發送端ロ 226相接合。然而,可替代地,在結構晶片110中可以使用除HSL塊210和serdes 222以外的組件,而不背離本文公開的結構晶片110的範圍。
[0024]將NCI塊202描繪為包括網絡晶片接收器(NCR)塊204a和網絡晶片發送器(NCX)塊204b。NCR塊204a將通過HSL塊210接收的數據饋送至交叉開關陣列120,NCX塊204b將從交叉開關陣列120接收的數據發送至HSL塊210。將NCR塊204a和NCX塊204b進ー步描繪為包括寄存器206,其中寄存器中的一些寄存器可通信地聯接至交叉開關122-126中的ー個交叉開關,寄存器206中的其它寄存器可通信地聯接至HSL塊210。[0025]NCI塊202大體以全雙工的方式在對應的HSL塊210和交叉開關陣列120之間傳遞數據和控制迷你分組(MPacket)。此外,NCI202提供兩個方向上的緩衝。NCI塊202還包括埠解析模塊208,埠解析模塊208對每個所接收的MPacket中包含的目的地和路徑信息進行解釋。埠解析模塊208使用所解釋的目的地和路徑信息來索引到確定結構晶片110的不同埠接口 112b-112n中正確目的地NCI塊202的查找表內,以進行去往正確目的地節點晶片130a-130n的下一跳,該正確目的地節點晶片130a_130n可以附接至結構晶片110的下行鏈路埠或上行鏈路埠。在這一方面,埠解析模塊208可以基於所接收的MPacket中包含的信息確定要通過哪些埠(上行鏈路埠和/或下行鏈路埠)輸出分組。此外,埠解析模塊208獨立於外部軟體對目的地和路徑信息進行解釋,確定正確的NCI塊202,並且確定要將分組輸出至的埠。換言之,埠解析模塊208不需要由外部軟體控制來執行這些功能。
[0026]NCX塊204b還包括對從多播數據交叉開關126接收的分組進行操作的節點修剪模塊209和單播轉換模塊211。更具體地,單播轉換模塊211要處理分組,以識別數據中促進輸出埠計算的數據字。此外,節點修剪模塊209要對數據列表進行修剪,使得僅被認為遍歷埠的目的地節點晶片130a-130n仍包含在數據列表中。因此,例如,如果NCX塊204b接收列出結構晶片110的晶片節點130a和與另一網絡裝置150附接的晶片節點130的多播分組,則NCX塊204b可以在將該多播分組發送出至另一裝置150以前對該多播分組的節點晶片的標識進行修剪,以移除結構晶片110的晶片節點130a。
[0027]HSL塊210大體操作來初始化且檢測高速鏈路中的錯誤,並且如果必要,重傳數據。根據示例,NCI塊202和HSL塊210之間的數據路徑在每個方向上均是64比特寬。
[0028]現在轉向圖3和圖4,這裡分別示出根據兩個示例的交換結構300和400的簡化框圖。顯然,圖3和圖4中繪出的結構晶片300和400代表概括圖示,並且可以添加其它組件或可以移除、修改或重布置現有組件,而不背離結構晶片300和400的範圍。
[0029]將交換結構300和400描繪為包括多個網絡裝置302a_302h。還將網絡裝置302a-302h中每個網絡裝置描繪為包括各自的結構晶片(FC0-FC7) 350a_350h。網絡裝置302a-302h中每個網絡裝置可以包括與圖1中繪出的網絡裝置100相同或相似的構造。此夕卜,結構晶片350a-350h中每個結構晶片可以包括與圖2中描繪的結構晶片110相同或相似的構造。
[0030]在任何方面,如在交換結構300和400中示出的,將每個網絡裝置302a_302h描繪為包括四個節點晶片(N0-N31)311-342。將節點晶片(N0_N31)311_342中每個節點晶片描繪為包括兩個埠(0,1),這兩個埠可通信地聯接至至少一個各結構晶片350a-350h的埠(0-11)。更具體地,將節點晶片311-342的埠中每個埠描繪為聯接至十二個埠0-11之一。此外,將節點晶片311-342描繪為通過雙向鏈路連接至各結構晶片350a-350h。在這一方面,數據可以在節點晶片311-342和它們各自的結構晶片350a-350h之間沿任一方向流動。
[0031]如上面關於圖1討論的,結構晶片350a_350h的與節點晶片311-342連接的埠被稱為「下行鏈路埠 」,結構晶片350a-350h的與其它結構晶片350a_350h連接的埠被稱為「上行鏈路埠 」。結構晶片350a-350h的上行鏈路埠和下行鏈路埠中的每個埠均包括通過該鏈路應當到達的目的地節點晶片311-342的標識。此外,被供應到交換結構300和400內的數據包括隨其一起的應當將分組傳遞至哪個節點晶片的節點晶片311-342的標識。節點晶片311-342的標識與節點晶片的標識中ー個或多個節點晶片或晶片掩碼相匹配的上行鏈路端ロ被認為是「優選上行鏈路端ロ 」,該優選上行鏈路端ロ將接收要傳送的數據,除非該「優選上行鏈路端ロ」是死的或在別的方面不可用的。如果優選上行鏈路是死的或在別的方面不可用的,那麼端ロ解析模塊208可以使用可編程的、指定優先級的待使用的一系列端ロ作為替代上行鏈路端ロ,以選擇替代上行鏈路端ロ而不是選擇優選上行鏈路端ロ來接收分組。
[0032]單個節點晶片130a_130n的列表與節點晶片的標識中的節點晶片之ー相匹配的下行鏈路端ロ被認為是「活躍下行鏈路端ロ」。在分組中可以嵌入「路徑索引」,該路徑索引選擇將對該分組使用「活躍下行鏈路端ロ 」中的哪個活躍下行鏈路端ロ。該基於路徑的過濾使結構晶片350a-350h能夠具有與節點晶片311-342的多個連接。
[0033]在任何方面,結構晶片350a_350h會將分組傳遞至在節點晶片的標識內的節點晶片311-342。對於那些在節點晶片的標識內包含的與結構晶片350a的下行鏈路端ロ連接的節點晶片311-342而言,結構晶片350a可以將數據直接傳遞至那些節點晶片311-314。然而,對於在節點晶片的標識中的不與結構晶片350a的下行鏈路端ロ連接的節點晶片315-342而言,結構晶片350a執行硬體計算,來確定為了到達那些節點晶片315-342,數據將遍歷哪些上行鏈路端ロ。將這些硬體計算限定為「端ロ解析」或「端ロ解析計算」。
[0034]圖3中描繪的交換結構300包括環形網絡構造,其中結構晶片350a_350h中每個結構晶片均連接至恰好兩個其它結構晶片350a-350h。更具體地,相鄰結構晶片350a_350h的端ロ(0)和(I)被描繪為可通信地彼此連接。於是,在網絡裝置302a-302h之間提供用於數據信號流過每個節點的單個連續通路。
[0035]圖4中描繪的交換結構400包括網狀網絡構造,其中結構晶片350a_350h中每個結構晶片捕獲和散播從它們各自的節點晶片311-342接收的分組並且操作作為用於其它結構晶片350a-350h的中繼。交換結構400的網狀網絡構造與交換結構300的環形網絡構造相比提供更大帶寬、弾性和更少的跳數(延遲)。此外,可以以關於交換結構300討論的方式中的任何方式在節點311-342之間傳送分組。
[0036]雖然已經將交換結構300和400描繪為包括八個網絡裝置302a_302h,網絡裝置302a-302h中每個網絡裝置均包括四個節點晶片311-342,但是應當清楚地理解,交換結構300和400可以包括任何合理數量的網絡裝置302a-302h,而不背離交換結構300和400的範圍。此外,每個網絡裝置302a-302h均可以包括任何合理地適當數量的節點晶片311-342,而不背離交換結構300和400的範圍。此外,結構晶片350a_350h中每個結構晶片均可以包括任何合理地適當數量的端ロ接ロ 112a-112n和端ロ。
[0037]關於圖5和圖6更詳細地描述可以實現交換結構300和交換結構400的各種方式,圖5和圖6分別繪出根據示例的用於實現包括圖1至圖4的結構晶片110、350a的交換結構的方法500和600的流程圖。顯然,方法500和方法600代表概括圖示,可以添加其它步驟或者可以移除、修改或重布置現有步驟,而不背離方法500和方法600的範圍。
[0038]特別地關於圖1至圖4中描繪的結構晶片110和350a_350h做出方法500和600的描述。然而,應當理解,方法500和600可以在與結構晶片110和350a不同的結構晶片中實現,而不背離方法500和600的範圍。此外,雖然參考網絡裝置302a-302h中的特定網絡裝置並因此參考結構晶片350a-350h和節點晶片311-342中特定的結構晶片和節點晶片,但是應當理解,本文描述的操作可以被網絡裝置302a-302h中任何網絡裝置或在網絡裝置302a-302h中的任何網絡裝置中執行。
[0039]結構晶片110、350a_350h的埠接口 112a_112n中每個埠接口可以被編程有要通過各個埠接口 112a-112n到達的目的地節點晶片130a-130n、311_342。因此,例如,包含結構晶片(FCO) 350a的埠(2)的埠接口 112a可以被編程有節點晶片(NO) 311作為該埠接口 112a的可到達目的地節點晶片。作為另一示例,包含結構晶片(FC0)350a的埠(O)的埠接口 112η可以被編程有節點晶片(N4-N31) 315-342或者這些節點晶片的子集作為該埠接口 112η的可到達目的地節點晶片。
[0040]此外,結構晶片110、350a_350h的埠接口 112a_112n中的每個埠接口可以被編程有被用作上打鏈路埠的各指定優先級的埠的列表。各指定優先級的埠的列表中每個列表包括優選上行鏈路埠和排序的可替代埠。
[0041]通常來說,圖5中描繪的方法500適合於由結構晶片350a_350h響應於單播分組的接收而執行的各種操作。此外,圖6中描繪的方法600適合於由結構晶片350a-350h響應於多播分組的接收而執行的各種操作。在方法500和方法600中,分組可以包括各種信息,如要向哪個節點晶片傳遞分組的節點晶片的標識,如「數據列表」、比特掩碼等。在分組中還可以嵌入「路徑索引」,該路徑索引選擇多個活躍下行鏈路埠中哪些下行鏈路埠要被用於將該分組傳遞至在數據列表中包含的目的地節點晶片。
[0042]首先參考圖5,在框502處,將分組接收到結構晶片350a中。結構晶片350a可以通過下行鏈路埠從所附接的節點晶片311-314之一接收分組或者通過上行鏈路埠從另一結構晶片350b-350h接收分組。在二者之中任一事件中且如圖2所示,可以通過接收埠 224將分組接收到serdes 222、HSL 210以及NCR 204a的寄存器206內。
[0043]在框504處,通過例如埠接口 112a的埠解析模塊208,在結構晶片350a中,進行對結構晶片350a的埠接口 112b-112n中的哪個埠接口要輸出分組以到達在數據列表中列出的目的地節點晶片的確定。在目的地節點晶片連接至結構晶片350a的下行鏈路埠的情況下,在框504處,埠解析模塊208可以從可通過結構晶片350a的埠接口112a-112n到達的節點晶片的被編程的列表中識別包含去往目的地節點晶片的下行鏈路埠的埠接口 112b-112n。在圖3和圖4繪出的示例中,埠解析模塊208可以確定要通過埠(2)- (9)之一輸出分組。
[0044]在目的地節點晶片未連接至結構晶片350a的下行鏈路埠的情況下,埠解析模塊208可以識別包含去往與目的地節點晶片直接通信的另一結構晶片350b-350h的上行鏈路埠的埠接口 112b-112n。在圖3和圖4繪出的示例中,埠解析模塊208可以確定要通過埠( O )和(I)之一輸出分組。此外,埠解析模塊208可以選擇埠接口 112b-l 12η來從埠的指定優先級的列表中接收分組,該埠的指定優先級的列表可以包括優選上行鏈路埠和有序的可替代埠。於是,在框504處,埠解析模塊208可以選擇優選上行鏈路來接收分組。
[0045]在框506處,例如通過埠解析模塊208對所確定的埠接口 112b_112n是否活躍進行確定。也就是說,例如,埠解析模塊208可以確定所確定的埠接口 112b-112n是死的還是以別的方式不可用的。埠解析模塊208可以基於未通過該埠接口 112b-112n傳遞分組的通信的先前標識,進行該確定。端ロ解析模塊208還可以通過確定將分組傳送至那個端ロ接ロ 112b-112n的嘗試已經失敗來做出該確定。
[0046]響應於在框506處所確定的端ロ接ロ 112b_112n是不活躍的確定,在框508處例如通過端ロ解析模塊208確定下一可替代端ロ接ロ 112b-112n。端ロ解析模塊208可以從要被用作到達目的地晶片節點311-342的上行鏈路端ロ的指定優先級的端ロ列表中確定下一可替代端ロ接ロ 112b-112n。也就是說,端ロ解析模塊208可以在指定優先級的列表中選擇下一端ロ接ロ 112b-112n來接收分組。端ロ解析模塊208還可以在框506處確定所選擇的端ロ接ロ是否活躍,並且可以響應於所選擇的端ロ接ロ是不活躍的確定,在框508處在指定優先級的列表中確定和選擇下一端ロ接ロ 112b-112n。可以重複框506和框508,直到確定活躍的端ロ接ロ 112b-112n。
[0047]在框510處,將分組傳送至所確定的端ロ接ロ 112b_112n。更具體地,例如,包含分組的端ロ接ロ 112a的NCR 204a可以通過單播數據交叉開關124將分組傳送至所確定的端ロ接ロ 112b-112n。此外,所確定的端ロ接ロ 112b-112n可以通過NCX 204b從單播數據交叉開關124接收分組。
[0048]在框512處,所確定的端ロ接ロ 112b_112n輸出分組。在目的地節點晶片311-342通過下行鏈路端ロ連接至所確定的端ロ接ロ 112b-112n的情況下,將分組直接傳遞至所附接的節點晶片311-342。在目的地節點晶片311-342不直接連接至所確定的端ロ接ロ112b-112n的情況下,將分組傳遞至另ー結構晶片350b-350h。
[0049]在框514處,方法500可以對結構晶片350a結束。此外,從結構晶片350a接收分組的結構晶片350b-350h可以按需要實施框502-512。
[0050]作為要將分組從節點晶片(N4) 315傳送至節點晶片(N15) 326的特定示例,節點晶片(N4) 315將分組傳送至結構晶片(FCl) 350b的端ロ(2)或者端ロ(3)。如上面關於圖1討論的,來自節點晶片315的分組包括要將該分組傳遞至哪個節點晶片的節點晶片的列表(數據列表)。在此情況下,該列表恰好包括節點晶片(N15) 326。此外,通過其從節點晶片315接收分組的端ロ接ロ 112a的NCR 204a的端ロ解析模塊208在硬體中執行計算,來確定分組為到達目的地節點晶片326將遍歷的端ロ接ロ 112a的上行鏈路端ロ。更具體地,例如,分組可以包括包含目的地和路徑信息的迷你分組(MPacket),端ロ解析模塊208可以對該目的地和路徑信息進行解釋。如上面討論的,分組可以包括控制分組和/或數據分組。控制分組包括至少ー個MPacket,而數據分組包括兩個或更多個MPacket。
[0051]在任何方面,端ロ解析模塊208可以使用該信息來索引到查找表內,該查找表確定結構晶片350b的正確的NCI塊202,以進行去往目的地節點晶片326的下一跳。在上面的示例中,端ロ解析模塊208可以確定上行鏈路端ロ(0)的NCI塊202是正確的NCI塊202。於是,端ロ接ロ 112a的NCR204a可以將分組傳送至包含上行鏈路端ロ(0)的端ロ接ロ 112n的NCI塊202。包含上行鏈路端ロ(0)的端ロ接ロ 112n可以將分組傳遞至與上行鏈路端ロ
(0)連接的結構晶片(FC2) 350c。
[0052]結構晶片(FC2)350c可以通過上行鏈路端ロ(0)接收分組,包含上行鏈路端ロ(0)的端ロ接ロ 112a的NCR204a可以使用在分組中包含的信息來確定要傳遞該分組的結構晶片350c的正確的NCI塊202,以進行去往目的地節點晶片326的下一跳。在該示例中,端ロ解析模塊208可以確定上行鏈路端ロ(0)的NCI塊202是正確的NCI塊202。此外,包含上行鏈路埠(O)的埠接口 112η的NCR204a可以從包含上行鏈路埠(I)的埠接口112a接收分組並且可以將分組傳送至結構晶片(FC3) 350d。
[0053]結構晶片(FC3)350d可以通過上行鏈路埠(I)接收分組,包含上行鏈路埠(I)的埠接口 112a的NCR204a可以使用在分組中包含的信息來確定要傳遞該分組的結構晶片350d的正確的NCI ±夾,以進行去往目的地節點326的下一跳。在該示例中,埠接口 112a的NCR204a的埠解析模塊208可以確定下行鏈路埠(8)的NCI塊是正確的NCI塊202。此外,包含下行鏈路埠(8)的埠接口 112η的NCR 204a可以從包含上行鏈路埠(O)的埠接口 112a接收分組並且可以將分組傳送至節點晶片326,以此完成分組向目的地節點晶片326的傳遞。
[0054]在結構晶片(FC2) 350c中的優選上行鏈路埠( I)是死的或以別的方式不可用的情況中,結構晶片350b可以確定分組不由結構晶片350c接收並且可以確定要接收該分組的可替代上行鏈路。在上面的示例中,埠解析模塊208可以確定結構晶片350b中的上行鏈路埠(I)是要接收分組的適合的可替代上行鏈路。此外,結構晶片350b可以將分組傳遞至結構晶片(FCO) 350a,結構晶片(FCO) 350a可以將分組傳送至結構晶片(FC7) 350h,等等,直到分組到達結構晶片(FC3)並且到達目的地節點晶片326上,如上面討論的那樣。根據示例,結構晶片350a-350c中的埠解析模塊208中每個埠解析模塊被編程有要將分組傳送至哪個上行鏈路的上行鏈路的有序列表。在該示例中,適合的可替代上行鏈路包括在上行鏈路的該有序列表中的下一上行鏈路。
[0055]現在參考圖6,在框602處,將多播分組接收到結構晶片350a中。結構晶片350a可以通過下行鏈路埠從所附接的節點晶片311-314之一接收多播分組或者通過上行鏈路埠從另一結構晶片350b-350h接收多播分組。在二者之中任一事件中且如圖2所示,可以通過接收埠 224將分組接收到serdes 222、HSL 210以及NCR 204a的寄存器206內。
[0056]在框604處,通過例如埠接口 112a的埠解析模塊208,在結構晶片350a中,進行結構晶片350a的埠接口 112b-112n中的哪個埠接口要輸出多播分組以到達在節點晶片的標識中的目的地節點晶片的確定。
[0057]在框606處,例如通過結構晶片350a的埠解析模塊208,對目的地節點311-342中任何目的地節點是否附接至結構晶片350a的下行鏈路埠進行確定。響應於在框606處目的地節點附接至結構晶片350a的下行鏈路埠的確定,埠解析模塊208可以從可通過結構晶片350a的埠接口 112a-112n到達的節點晶片的被編程的列表中識別包含去往目的地節點晶片的下行鏈路埠的埠接口 112b-112n。此外,在框608處,埠接口 112a的NCR 204a可以例如通過多播數據交叉開關126將多播分組傳遞至包含所確定的下行鏈路埠的埠接口 112b-112n。此外,在框610處,已經被傳遞分組的所附接的目的地節點晶片311-342可以從節點晶片的標識中移除。
[0058]在框608以後和/或響應於框606處的「否」條件,在框612處例如通過埠解析模塊208對節點晶片的標識是否包含其它目的地節點晶片311-342進行確定。響應於確定所有目的地節點晶片311-342都附接至結構晶片350a的下行鏈路以及因此確定在節點晶片的標識中沒有其它目的地節點晶片,方法600可以如框614處指示的那樣結束。
[0059]然而,響應於確定節點晶片的標識包含其它目的地節點晶片311-342,如在框616處指示的那樣將多播分組傳送至另一結構晶片350b-350h。更具體地,例如,埠解析模塊208可以選擇端ロ接ロ 112b-112n來從端ロ的指定優先級的列表中接收多播分組,該端ロ的指定優先級的列表可以包括優選上行鏈路埠和有序的可替代端ロ。於是,在框616處,端ロ解析模塊208可以選擇優選上行鏈路端ロ來接收多播分組並且可以將多播分組傳送至包含所選擇的上行鏈路端ロ的端ロ接ロ 112b-112n。此外,端ロ解析模塊208可以在確定並將多播分組傳送至活躍端ロ接ロ 112b-112n時實施圖5中的框506-512。此外,例如,端ロ接ロ 112a的NCR 204a可以在框616處例如通過多播數據交叉開關126將多播分組傳遞至包含所確定的上行鏈路端ロ的端ロ接ロ 112b-112n。
[0060]方法600可以結束多播分組隨後向另一結構晶片350b_350h的傳送。此外,從結構晶片350a接收多播分組的結構晶片350b-350h可以實施框602-616來將多播分組傳遞至目的地節點晶片311-342。
[0061]作為要將多播分組從節點晶片(NI) 312傳送至節點晶片(N4和N9) 315和320的特定示例,節點晶片(NI) 312將分組傳送至結構晶片(FCO) 350a的端ロ(4)或者端ロ(5)。在該示例中,數據列表包括節點晶片(N4和29)315和320。此外,通過其從節點晶片312接收分組的端ロ接ロ 112a的NCR 204a的端ロ解析模塊208在硬體中執行計算,來確定分組為到達目的地節點晶片315和320將遍歷端ロ接ロ 112a的哪個(哪些)上行鏈路端ロ。更具體地,例如,端ロ解析模塊208可以對分組的迷你分組(MPacket)中包含的目的地和路徑信息進行解釋。此外,端ロ解析模塊208可以使用該信息來索引到查找表內,該查找表確定結構晶片350a的正確的NCI塊202,以進行去往目的地節點晶片315和320的下一跳。在當前的示例中,端ロ解析模塊208可以確定上行鏈路端ロ(0)的NCI塊202是正確的NCI塊202。於是,端ロ接ロ 112a的NCR 204a可以將分組傳送至包含上行鏈路端ロ(0)的端ロ接ロ 112n的NCI塊202。包含上行鏈路端ロ(0)的端ロ接ロ 112n可以將分組傳送至與上行鏈路端ロ(0)連接的結構晶片(FCl) 350b。
[0062]結構晶片(FCl)350b可以通過上行鏈路端ロ( I)接收分組,包含上行鏈路端ロ( I)的端ロ接ロ 112a的NCX 204b可以使用在分組中包含的信息來確定是否要將分組傳遞至網絡裝置302b的晶片節點(N4-N7)315-318中的任何節點晶片。由於要將分組傳遞至晶片節點315,所以NCR 204a可以將分組傳遞至包含去往晶片節點315的下行鏈路端ロ(2)的端ロ接ロ 112b,NCX 204b可以從要接收該分組的節點晶片的標識中移除晶片節點315。此外,端ロ接ロ 112a的NCR 204a的端ロ解析模塊208可以確定上行鏈路端ロ(0)的NCI塊202是進行去往在要接收分組的節點晶片的標識中包含的節點晶片320的下一跳的正確的NCI塊202。此外,包含上行鏈路端ロ(0)的端ロ接ロ 112n的NCR 204a可以從包含上行鏈路端ロ(I)的端ロ接ロ 112a接收分組並且可以將分組傳送至結構晶片(FC2) 350c。
[0063]結構晶片(FC2)350c可以通過上行鏈路端ロ( I)接收分組,包含上行鏈路端ロ( I)的端ロ接ロ 112a的NCR 204a可以使用在分組中包含的信息來確定為進行去往目的地節點320的下一跳而要將分組傳遞至的結構晶片350c的正確的NCI塊202。在該示例中,端ロ接ロ 112a的NCR 204a的端ロ解析模塊208可以確定下行鏈路端ロ(4)的NCI塊是正確的NCI塊202。此外,包含下行鏈路端ロ(4)的端ロ接ロ 112n的NCR 204a可以從包含上行鏈路端ロ(0)的端ロ接ロ 112a接收分組並且可以將分組傳送至節點晶片320,從而完成分組向目的地節點晶片320的傳遞。
[0064]在ー個方面,由於結構晶片350a_350h控制分組向節點晶片311-342的傳遞和轉發,所以多播分組需要由節點晶片311發送一次,而不是単獨地發送至每個目的地節點。這減少在將分組傳遞至期望的節點晶片311-342時在交換結構300、400中消耗的帶寬量。
[0065]本文已經描述和圖示的是本公開的各個示例,以及它們的ー些變化。本文使用的術語、描述和圖僅是作為說明闡述的,而不g在作為限制。在本發明的精神和範圍內,許多變化是可能的,其中本公開g在由下面的權利要求及其等同物限定,其中所有術語從其最廣的合理意義上去理解,除非另外指出。
【權利要求】
1.ー種結構晶片,包括: 多個端ロ接ロ,其中所述多個端ロ接ロ中每個端ロ接ロ包括具有端ロ解析模塊的網絡晶片接ロ(NCI)塊,並且其中所述端ロ解析模塊要確定端ロ接口中哪個端ロ接ロ要從所述NCI塊接收分組;以及 交叉開關塊,可通信地與所述多個端ロ接口中的每個所述NCI塊聯接。
2.根據權利要求1所述的結構晶片,其中所述分組包含要接收該分組的至少ー個目的地節點晶片的標識,並且其中所述端ロ解析模炔基於在所述標識中包含的節點晶片的比較和所述端ロ接ロ 與所述目的地節點晶片之間的預編程的關聯,確定所述端ロ接ロ中至少ー個端ロ接口中哪個端ロ接ロ要接收該分組。
3.根據權利要求2所述的結構晶片,其中所述NCI塊包括網絡晶片接收(NCR)塊和網絡晶片發送(NCX)塊,並且其中所述NCR塊包含所述端ロ解析模塊。
4.根據權利要求2所述的結構晶片,其中所述NCX塊包括節點修剪模塊,以通過在將多播分組傳遞至另ー結構晶片以前從所述標識中移除已經被傳遞所述多播分組的目的地節點晶片,對所述標識進行修剪。
5.ー種交換結構,包括: 第一節點晶片; 目的地節點晶片;以及 第一結構晶片,包括多個端ロ接ロ,其中所述第一節點晶片可通信地聯接至所述多個端ロ接ロ的第一端ロ接ロ,其中所述第一結構晶片要通過所述第一端ロ接ロ從所述第一節點晶片接收分組,其中所述第一結構晶片包括端ロ解析模塊,以確定為使所述分組到達所述目的地節點晶片所述多個端ロ接口中要接收所述分組的第二端ロ接ロ,並且其中所述端ロ解析模塊要獨立於所述端ロ解析模塊外部的軟體確定所述第二端ロ接ロ。
6.根據權利要求5所述的交換結構,其中所述第一結構晶片進一歩包括: 多播數據交叉開關,可通信地聯接至所述多個端ロ接ロ。
7.根據權利要求5所述的交換結構,進一歩包括: 第二結構晶片,包括多個第二結構晶片端ロ接ロ,其中所述第二結構晶片通過第二結構晶片端ロ接ロ可通信地聯接至所述第一結構晶片的端ロ接ロ,其中所述第一結構晶片要通過該聯接將所述分組傳遞至所述第二結構晶片,其中所述第二結構晶片包括第二結構晶片端ロ解析模塊,以確定為到達目的地節點而要接收所述分組的另一第二結構晶片端ロ接□。
8.根據權利要求7所述的交換結構,其中所述目的地節點晶片連接至所述交換結構中任何結構晶片上的至少ー個結構晶片端ロ的下行鏈路端ロ,並且其中所述端ロ解析模塊被編程有端ロ接ロ的指定優先級的列表,所述端ロ接ロ的指定優先級的列表對用於使所述分組到達所述目的地節點晶片的上行鏈路端ロ進行識別,並且其中所述第一結構晶片可通信地聯接至所述第二結構晶片所通過的所述端ロ接ロ包括優選上行鏈路端ロ。
9.根據權利要求8所述的交換結構,其中所述端ロ解析模塊要響應於所述優選上行鏈路端ロ是不活躍的,將所述分組通過所述端ロ接ロ的指定優先級的列表中的下一端ロ接ロ傳送至所述第二結構晶片。
10.根據權利要求5所述的交換結構,其中所述分組包括多播分組,並且其中所述第一結構晶片要複製所述多播分組以傳送至與所述第一結構晶片和第二結構晶片的下行鏈路埠連接的至少一個第二節點晶片,使得所述第一節點晶片需要傳送單個多播分組來到達多個目的地節點晶片。
11.根據權利要求8所述的交換結構,其中所述分組包含要接收所述分組的至少一個目的地節點晶片的標識,並且其中第一結構晶片要在將多播分組傳遞至所述第二結構晶片以前從所述標識中移除已經被傳遞所述多播分組的所述目的地節點晶片。
12.一種用於實現包括第一結構晶片的交換結構的方法,所述第一結構晶片具有多個埠接口,所述方法包括: 將分組接收到所述多個埠接口的第一埠接口內,其中所述分組包含要接收所述分組的至少一個目的地節點晶片的標識; 在所述第一結構晶片中,根據所述標識確定所述多個埠接口中哪個埠接口要接收所述分組;以及 將所述分組傳送至所確定的埠接口。
13.根據權利要求12所述的方法,其中所述第一埠接口編程有所述多個埠接口和多個目的地節點之間的一系列關聯,並且其中在所述第一結構晶片中確定所述多個埠接口中哪個埠接口要接收所述分組進一步包括:通過比較在數據列表中包含的信息和關聯列表確定哪個埠接口要接收所述分組。
14.根據權利要求12所述的方法,其中所述第一埠接口編程有埠接口的指定優先級的列表,所述埠接口的指定優先級的列表對用於使所述分組到達目的地節點晶片的上行鏈路埠進行識別,所述方法進一步包括: 在所述第一結構晶片中,確定所述分組通過所確定的埠接口向第二結構晶片的傳送是不可用的;· 在所述埠接口的指定優先級的列表中選擇下一埠接口來接收所述分組;以及 對所述分組通過所述下一埠接口的傳送進行自動重路由,以將所述分組傳遞至所述目的地節點晶片。
15.根據權利要求12所述的方法,其中所述分組包括多播分組,所述方法進一步包括: 將所述多播分組傳遞至目的地節點晶片; 在所述第一埠接口中,從所述多播分組的數據列表中移除所述目的地節點晶片,來對所述數據列表進行修剪;以及 利用所修剪的數據列表將所述多播分組傳遞至第二結構晶片。
【文檔編號】H04L12/931GK103597789SQ201180071506
【公開日】2014年2月19日 申請日期:2011年8月8日 優先權日:2011年8月8日
【發明者】麥可·弗裡, 文森特·卡萬納 申請人:惠普發展公司,有限責任合夥企業

同类文章

一種新型多功能組合攝影箱的製作方法

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有LED脫影板,LED脫影板放置在底板上;移動式光源盒包括上蓋,上蓋內設有光源,上蓋部設有磨沙透光片,磨沙透光片將光源封閉在上蓋內;所述LED脫影

壓縮模式圖樣重疊檢測方法與裝置與流程

本發明涉及通信領域,特別涉及一種壓縮模式圖樣重疊檢測方法與裝置。背景技術:在寬帶碼分多址(WCDMA,WidebandCodeDivisionMultipleAccess)系統頻分復用(FDD,FrequencyDivisionDuplex)模式下,為了進行異頻硬切換、FDD到時分復用(TDD,Ti

個性化檯曆的製作方法

專利名稱::個性化檯曆的製作方法技術領域::本實用新型涉及一種檯曆,尤其涉及一種既顯示月曆、又能插入照片的個性化檯曆,屬於生活文化藝術用品領域。背景技術::公知的立式檯曆每頁皆由月曆和畫面兩部分構成,這兩部分都是事先印刷好,固定而不能更換的。畫面或為風景,或為模特、明星。功能單一局限性較大。特別是畫

一種實現縮放的視頻解碼方法

專利名稱:一種實現縮放的視頻解碼方法技術領域:本發明涉及視頻信號處理領域,特別是一種實現縮放的視頻解碼方法。背景技術: Mpeg標準是由運動圖像專家組(Moving Picture Expert Group,MPEG)開發的用於視頻和音頻壓縮的一系列演進的標準。按照Mpeg標準,視頻圖像壓縮編碼後包

基於加熱模壓的纖維增強PBT複合材料成型工藝的製作方法

本發明涉及一種基於加熱模壓的纖維增強pbt複合材料成型工藝。背景技術:熱塑性複合材料與傳統熱固性複合材料相比其具有較好的韌性和抗衝擊性能,此外其還具有可回收利用等優點。熱塑性塑料在液態時流動能力差,使得其與纖維結合浸潤困難。環狀對苯二甲酸丁二醇酯(cbt)是一種環狀預聚物,該材料力學性能差不適合做纖

一種pe滾塑儲槽的製作方法

專利名稱:一種pe滾塑儲槽的製作方法技術領域:一種PE滾塑儲槽一、 技術領域 本實用新型涉及一種PE滾塑儲槽,主要用於化工、染料、醫藥、農藥、冶金、稀土、機械、電子、電力、環保、紡織、釀造、釀造、食品、給水、排水等行業儲存液體使用。二、 背景技術 目前,化工液體耐腐蝕貯運設備,普遍使用傳統的玻璃鋼容

釘的製作方法

專利名稱:釘的製作方法技術領域:本實用新型涉及一種釘,尤其涉及一種可提供方便拔除的鐵(鋼)釘。背景技術:考慮到廢木材回收後再加工利用作業的方便性與安全性,根據環保規定,廢木材的回收是必須將釘於廢木材上的鐵(鋼)釘拔除。如圖1、圖2所示,目前用以釘入木材的鐵(鋼)釘10主要是在一釘體11的一端形成一尖

直流氧噴裝置的製作方法

專利名稱:直流氧噴裝置的製作方法技術領域:本實用新型涉及ー種醫療器械,具體地說是ー種直流氧噴裝置。背景技術:臨床上的放療過程極易造成患者的局部皮膚損傷和炎症,被稱為「放射性皮炎」。目前對於放射性皮炎的主要治療措施是塗抹藥膏,而放射性皮炎患者多伴有局部疼痛,對於止痛,多是通過ロ服或靜脈注射進行止痛治療

新型熱網閥門操作手輪的製作方法

專利名稱:新型熱網閥門操作手輪的製作方法技術領域:新型熱網閥門操作手輪技術領域:本實用新型涉及一種新型熱網閥門操作手輪,屬於機械領域。背景技術::閥門作為流體控制裝置應用廣泛,手輪傳動的閥門使用比例佔90%以上。國家標準中提及手輪所起作用為傳動功能,不作為閥門的運輸、起吊裝置,不承受軸向力。現有閥門

用來自動讀取管狀容器所載識別碼的裝置的製作方法

專利名稱:用來自動讀取管狀容器所載識別碼的裝置的製作方法背景技術:1-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀