專利名稱:基于嵌入式處理器存儲接口的集群計算系統混合通信方法
技術領域:
本發明涉及計算技術領域,更具體地說,本發明涉及一種基于嵌入式處理器存儲接口的集群計算系統混合通信方法。
背景技術:
隨著基于ARM (Advanced RISC Machines)架構處理器技術的不斷發展,學術界和工業界目前已經考慮并正在著手開發基于ARM嵌入式處理器的新型低功耗集群系統。如Sandia國家實驗室在2011年5月I日發布了一款名為“Mini超級計算機”的系統,該系統由196個Gumstix Overo Tide計算節點組成,每七個Gumstix Overo Tide集成到一塊Stagecoach母板上,然后通過以太網實現節點互連。德國Ludwig-MaximiIians-Universitat (LMU)大學在2011年4月使用AppleTV搭建了一個集群系統,該系統每個節點包含一顆IGHz的Cortex-A8處理器、PowerVR SGX535GPU和256MB內存,網絡采用了百兆以太網。但是,首先,上述技術方案受到嵌入式處理器網絡接口單一、性能不高的制約,具體地說,目前主流的嵌入式處理器主要面向移動應用等領域,通常不具備有線網絡接口或僅配備百兆以太網這類性能較低的網絡接口。因此,在基于嵌入式處理器構建集群系統時,網絡性能無法滿足高性能數據傳輸的需求。 其次,上述技術方案受到嵌入式處理器可擴展接口受限的制約;具體地說,通常,作為片上系統,嵌入式處理器會包含一系列的外圍接口,如USB 2. 0、GPI0、I2C等,這些接口都屬于千兆以下的低速接口。盡管有部分嵌入式處理器,如Marvel公司的ARM嵌入式處理器包含了高速的PCIE接口,且可以很方便地通過PCIE接口擴展實現高速網絡接口,但絕大多數公司的嵌入式處理器產品都不包含該接口,因此,該方法也缺乏普適性。
發明內容
本發明所要解決的技術問題是針對現有技術中存在上述缺陷,提供一種能夠解決嵌入式處理器網絡接口單一、性能較弱的缺點,通過基于并行存儲接口實現一個混合網絡通信模塊,為基于嵌入式處理器搭建的集群計算系統提供更高速的網絡接口和更靈活的混合網絡組網通信方法。根據本發明,提供了一種基于嵌入式處理器存儲接口的集群計算系統混合通信方法,其包括將嵌入式處理器集成的網絡控制器通過網絡收發器連接至第一網絡;并且,將嵌入式處理器集成的并行存儲接口通過混合網絡通信模塊連接至第二網絡。優選地,第一網絡是以太網,網絡收發器是以太網收發器,網絡控制器是以太網控制器。優選地,混合網絡通信模塊包括并行接口狀態機、發送隊列、轉發隊列、接收隊列、發送控制邏輯、接收控制邏輯、以及多路復用器;其中,并行接口狀態機連接至發送隊列的數據輸入端和接收隊列的數據輸出端;發送隊列的數據輸出端連接至多路復用器的第一數據輸入端;接收隊列的數據輸入端連接至接收控制邏輯;發送控制邏輯的數據輸出端連接至多路復用器的第二數據輸入端,發送控制邏輯的數據輸入端連接至接收控制邏輯;發送控制邏輯的輸出端連接至多路復用器的控制信號輸入端;并且,多路復用器的數據輸出端連接至第二網絡。優選地,所述基于嵌入式處理器存儲接口的集群計算系統混合通信方法還包括當并行接口狀態機從與并行存儲接口連接的存儲總線接收到數據時,將數據存放到發送隊列。優選地,所述基于嵌入式處理器存儲接口的集群計算系統混合通信方法還包括利用接收控制邏輯從第二網絡接收到數據包并拆解數據包,然后根據數據包的目的地址,選擇將數據包存放到接收隊列或轉發隊列,其中接收隊列緩存待轉發至并行存儲接口的數據。優選地,所述基于嵌入式處理器存儲接口的集群計算系統混合通信方法還包括當接收隊列非空,且與并行存儲接口連接的存儲總線未占用時,將數據發送到存儲總線上。優選地,所述基于嵌入式處理器存儲接口的集群計算系統混合通信方法還包括 利用發送控制邏輯對發送隊列和轉發隊列進行仲裁,基于年齡策略選擇最老年齡的數據包進行發送。優選地,混合網絡通信模塊還包括連接至發送控制邏輯的信用管理邏輯;并且,優選地,所述基于嵌入式處理器存儲接口的集群計算系統混合通信方法還包括利用信用管理邏輯進行信用管理和維護,以使得上網數據采用基于信用的流控機制。優選地,發送隊列、轉發隊列和接收隊列的隊列深度可配置。優選地,發送隊列、轉發隊列和接收隊列均具有一個空滿信號,用于進行流控。本發明上述實施例提供了一個專用的混合網絡通信模塊。通過該模塊擴展了嵌入式處理器的網絡通信接口,用于連接第二套網絡,克服了嵌入式處理器網絡通信接口單一的缺點。同時,模塊內部實現了數據包存儲轉發功能,可以支持構造結構更為靈活的多跳網絡。而且,本發明上述實施例基于嵌入式處理器的并行存儲接口進行擴展,充分利用了存儲接口傳輸速率快的特點,使混合網絡通信模塊能提供比以太網接口傳輸速率更高的互連網絡接口,從而解決了嵌入式處理器網絡接口性能較弱的問題。此外,存儲接口為嵌入式處理器必備接口,基于該接口進行擴展,具有一定的普適性。由此,本發明提供一種能夠解決嵌入式處理器網絡接口單一、性能較弱的缺點,通過基于并行存儲接口實現一個混合網絡通信模塊,為基于嵌入式處理器搭建的集群計算系統提供更高速的網絡接口和更靈活的混合網絡組網通信方法。
結合附圖,并通過參考下面的詳細描述,將會更容易地對本發明有更完整的理解并且更容易地理解其伴隨的優點和特征,其中圖I示意性地示出了根據本發明實施例的節點網絡接口和數據通路的配置示意圖。圖2示意性地示出了根據本發明實施例的混合網絡通信模塊的結構。圖3示意性地示出了根據本發明實施例的基于混合網絡的集群計算系統。圖4示意性地示出了根據本發明實施例的基于0MAP3530嵌入式處理器的計算節點網絡數據通路。需要說明的是,附圖用于說明本發明,而非限制本發明。注意,表示結構的附圖可能并非按比例繪制。并且,附圖中,相同或者類似的元件標有相同或者類似的標號。
具體實施例方式為了使本發明的內容更加清楚和易懂,下面結合具體實施例和附圖對本發明的內容進行詳細描述。在本發明中,一方面,將嵌入式處理器集成的網絡控制器通過網絡收發器連 接至第一網絡;另一方面,將嵌入式處理器集成的并行存儲接口通過混合網絡通信模塊連接至第二網絡。這樣,本發明通過該混合網絡通信模塊擴展了嵌入式處理器的網絡通信接口,用于連接第二套網絡,克服了嵌入式處理器網絡通信接口單一的缺點。下面將描述本發明的優選實施例,從而說明混合網絡通信模塊N2的具體實現結構的示例以及混合網絡通信模塊N2的操作示例。圖I示意性地示出了根據本發明實施例的節點網絡接口和數據通路的配置示意圖。如圖I所示,嵌入式處理器100集成包括第一處理器核Ml、第二處理器核M2、以太網控制器M3以及并行存儲接口 M4。以太網控制器M3通過連接外部的以太網收發器NI而連接到標準的以太網絡W1。通過擴展并行存儲接口 M4,實現一個外部的混合網絡通信模塊N2,進而連接到節點間高速網絡W2。數據Dl可以經過嵌入式處理器100的片上總線B在兩套網絡之間傳遞。本發明實施例的重點在于設計了一個基于并行存儲接口的混合網絡通信模塊N2。圖2所示為混合網絡通信模塊N2的結構,如圖2所示,混合網絡通信模塊N2主要包括并行接口狀態機Nil、發送隊列N13、轉發隊列N14、接收隊列N15、發送控制邏輯N16、信用管理邏輯N17、接收控制邏輯N18、以及多路復用器N12。其中,并行接口狀態機Nll連接至發送隊列N13的數據輸入端和接收隊列N15的數據輸出端;發送隊列N13的數據輸出端連接至多路復用器N12的第一數據輸入端;接收隊列N15的數據輸入端連接至接收控制邏輯N18 ;發送控制邏輯N16的數據輸出端連接至多路復用器N12的第二數據輸入端,發送控制邏輯N16的數據輸入端連接至接收控制邏輯N18 ;發送控制邏輯N16的輸出端連接至多路復用器N12的控制信號輸入端;并且發送控制邏輯N16還連接至信用管理邏輯N17 ;此外,多路復用器N12的數據輸出端連接至第二網絡(本實施例中為節點間高速網絡W2)。例如,并行接口狀態機Nll為一個符合并行存儲接口協議的標準協議狀態機,以16位并行存儲總線與處理器N12的并行存儲接口 M4相連。該狀態機按存儲接口協議,以16位字長為單位控制數據收發。當并行接口狀態機Nll從與并行存儲接口 M4連接的存儲總線接收到數據時,將數據存放到發送隊列N13。當接收隊列N15非空,且存儲總線未占用時,將數據發送到存儲總線上。發送隊列N13、轉發隊列N14和接收隊列N15用于緩存傳輸過程中的數據。例如,這些隊列內每個存儲單元為16位位寬;此外,例如,發送隊列N13、轉發隊列N14和接收隊列的隊列深度可配置,典型配置為每個隊列包含1024個存儲單元。發送隊列N13、轉發隊列N14和接收隊列N15均具有一個空滿信號,用于進行流控。而且,發送隊列N13用于緩存來自處理器(例如嵌入式處理器100)的待上網數據;接收隊列N15緩存待轉發至并行存儲接口 M4的數據,更具體地說,接收隊列N15緩存下網并待轉發至并行存儲接口 M4所屬的處理器(例如嵌入式處理器100)的數據;轉發隊列N14緩存待轉發至其它節點的混合網絡通信模塊的數據。發送控制邏輯N16 (或者,發送控制邏輯N16和信用管理邏輯N17共同)負責控制將數據發送上網。在具有信用管理邏輯N17的情況下,上網數據采用基于信用的流控機制,由信用管理邏輯進行信用管理和維護。·
發送控制邏輯N16對發送隊列N13和轉發隊列N14進行仲裁,基于年齡策略選擇最老年齡的數據包進行發送。接收控制邏輯N18從網絡接收到數據包并拆解數據包,然后根據數據包的目的地址,選擇將數據包存放到接收隊列N15或轉發隊列N14。因此,根據圖2結構,形成三條數據路徑(I)數據路徑I :從處理器接收數據包,存儲轉發至網絡(第二網絡);(2)數據路徑2 :從網絡(第二網絡)接收數據包(上網數據),存儲轉發至處理器;(3)數據路徑3 :從網絡(第二網絡)接收數據包(下網數據),存儲轉發至網絡(第二網絡)。由此,本發明上述實施例提供了一個專用的混合網絡通信模塊。通過該模塊擴展了嵌入式處理器的網絡通信接口,用于連接第二套網絡,克服了嵌入式處理器網絡通信接口單一的缺點。同時,模塊內部實現了數據包存儲轉發功能,可以支持構造結構更為靈活的多跳網絡。而且,本發明上述實施例基于嵌入式處理器的并行存儲接口進行擴展,充分利用了存儲接口傳輸速率快的特點,使混合網絡通信模塊能提供比以太網接口傳輸速率更高的互連網絡接口,從而解決了嵌入式處理器網絡接口性能較弱的問題。此外,存儲接口為嵌入式處理器必備接口,基于該接口進行擴展,具有一定的普適性。下面描述本發明的具體應用。圖3示意性地示出了根據本發明實施例的基于混合網絡的集群計算系統。如圖3所示,圖3描述了一個基于混合網絡的集群計算機系統,該系統采用本發明上述實施例所描述的通信方法,實現了混合網絡及網絡間數據的傳輸。具體地說,該集群系統包含一套百兆-千兆-萬兆多層交換以太網。每個節點通過百兆以太網接口接入該網絡。其中,每8個節點為一個節點組,建立了一個組內高速環網。節點組通過一套百兆-千兆交換機連接至一套千兆-萬兆交換機,多個千兆-萬兆交換機最終連接至一套萬兆交換機。例如,計算節點的網絡數據通路可形成為如圖4所示。計算節點采用TI公司的0MAP3530處理器,通過MII接口連接LAN9221百兆以太網收發器,連接到以太網WlI。通過GPMC接口,連接混合網絡通信模塊N2,連接至高速環網W22。GPMC為一種用于嵌入式處理器的通用存儲接口,該接口能支持最高I. 3Gbps傳輸速率。混合網絡通信模塊采用FPGA芯片實現,將FPGA上的32位GPIO接口配置為高速環網W22的網絡接口,可以支持全速雙向數據通信。可以理解的是,雖然本發明已以較佳實施例披露如上,然而上述實施例并非用以限定本發明。對于任何熟悉本領域的技術人員而言,在不脫離本發明技術方案范圍情況下,都可利用上述揭示的技術內容對本發明技術方案作出許多可能的變動和修飾,或修改為等同變化的等效實施例。因此,凡是未脫離本發明技術方案的內容,依據本發明的技術實質對 以上實施例所做的任何簡單修改、等同變化及修飾,均仍屬于本發明技術方案保護的范圍內。
權利要求
1.一種基于嵌入式處理器存儲接口的集群計算系統混合通信方法,其特征在于包括將嵌入式處理器集成的網絡控制器通過網絡收發器連接至第一網絡;并且,將嵌入式處理器集成的并行存儲接口通過混合網絡通信模塊連接至第二網絡。
2.根據權利要求I所述的基于嵌入式處理器存儲接口的集群計算系統混合通信方法,其特征在于,第一網絡是以太網,網絡收發器是以太網收發器,網絡控制器是以太網控制器。
3.根據權利要求I或2所述的基于嵌入式處理器存儲接口的集群計算系統混合通信方法,其特征在于,混合網絡通信模塊包括并行接口狀態機、發送隊列、轉發隊列、接收隊列、發送控制邏輯、接收控制邏輯、以及多路復用器;其中,并行接口狀態機連接至發送隊列的數據輸入端和接收隊列的數據輸出端;發送隊列的數據輸出端連接至多路復用器的第一數據輸入端;接收隊列的數據輸入端連接至接收控制邏輯;發送控制邏輯的數據輸出端連接至多路復用器的第二數據輸入端,發送控制邏輯的數據輸入端連接至接收控制邏輯;發送控制邏輯的輸出端連接至多路復用器的控制信號輸入端;并且,多路復用器的數據輸出端連接至第二網絡。
4.根據權利要求3所述的基于嵌入式處理器存儲接口的集群計算系統混合通信方法,其特征在于還包括當并行接口狀態機從與并行存儲接口連接的存儲總線接收到數據時,將數據存放到發送隊列。
5.根據權利要求3或4所述的基于嵌入式處理器存儲接口的集群計算系統混合通信方法,其特征在于還包括利用接收控制邏輯從第二網絡接收到數據包并拆解數據包,然后根據數據包的目的地址,選擇將數據包存放到接收隊列或轉發隊列,其中接收隊列緩存待轉發至并行存儲接口的數據。
6.根據權利要求3至5之一所述的基于嵌入式處理器存儲接口的集群計算系統混合通信方法,其特征在于還包括當接收隊列非空,且與并行存儲接口連接的存儲總線未占用時,將數據發送到存儲總線上。
7.根據權利要求3至6之一所述的基于嵌入式處理器存儲接口的集群計算系統混合通信方法,其特征在于還包括利用發送控制邏輯對發送隊列和轉發隊列進行仲裁,基于年齡策略選擇最老年齡的數據包進行發送。
8.根據權利要求3至7之一所述的基于嵌入式處理器存儲接口的集群計算系統混合通信方法,其特征在于,混合網絡通信模塊還包括連接至發送控制邏輯的信用管理邏輯;并且,所述集群計算系統混合通信方法還包括利用信用管理邏輯進行信用管理和維護,以使得上網數據采用基于信用的流控機制。
9.根據權利要求3至8之一所述的基于嵌入式處理器存儲接口的集群計算系統混合通信方法,其特征在于,發送隊列、轉發隊列和接收隊列的隊列深度可配置。
10.根據權利要求3至9之一所述的基于嵌入式處理器存儲接口的集群計算系統混合通信方法,其特征在于,發送隊列、轉發隊列和接收隊列均具有一個空滿信號,用于進行流控。
全文摘要
本發明提供了一種基于嵌入式處理器存儲接口的集群計算系統混合通信方法。將嵌入式處理器集成的網絡控制器通過網絡收發器連接至第一網絡。將并行存儲接口通過混合網絡通信模塊連接至第二網絡。當并行接口狀態機從與并行存儲接口連接的存儲總線接收到數據時,將數據存放到發送隊列。利用接收控制邏輯從第二網絡接收到數據包并拆解數據包,然后根據數據包的目的地址,選擇將數據包存放到接收隊列或轉發隊列,其中接收隊列緩存待轉發至并行存儲接口的數據。當接收隊列非空,且與并行存儲接口連接的存儲總線未占用時,將數據發送到存儲總線上。利用發送控制邏輯對發送隊列和轉發隊列進行仲裁,基于年齡策略選擇最老年齡的數據包進行發送。
文檔編號H04L12/863GK102904943SQ201210372418
公開日2013年1月30日 申請日期2012年9月28日 優先權日2012年9月28日
發明者謝向輝, 錢磊, 吳東, 郝子宇, 臧春峰, 原昊, 陸菲菲, 周浩杰, 葉楠 申請人:無錫江南計算技術研究所