国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      嵌入式操作系統(tǒng)中實現(xiàn)多核處理器通信的裝置及方法

      文檔序號:7666706閱讀:319來源:國知局
      專利名稱:嵌入式操作系統(tǒng)中實現(xiàn)多核處理器通信的裝置及方法
      技術領域
      本發(fā)明涉及多核處理器在嵌入式揭:作系統(tǒng)中的通信領域,更具體的涉及 一種嵌入式操作系統(tǒng)中實現(xiàn)多核處理器通信的裝置及方法。
      背景技術
      隨著電信業(yè)務的不斷擴大,系統(tǒng)對處理器的要求越來越高,傳統(tǒng)的單核 處理器已經(jīng)逐漸不能適應大規(guī)4莫應用的需要,在這種背景下,多核處理器開 始在電信這個大舞臺上展露鋒芒。相比于傳統(tǒng)的單核處理器,對應的多核處 理器的性能更高,而價格更低,因此深受電信廠商的追捧。
      嵌入式才喿作系統(tǒng)都有一套協(xié)議棧,通過將網(wǎng)口和協(xié)議棧綁定,上層應用 就可以通過協(xié)議棧與外界自由通信,而無需關注報文格式的問題。嵌入式操 作系統(tǒng)的網(wǎng)絡系統(tǒng)如圖l所示。
      嵌入式搡作系統(tǒng)大多支持SENS (增強型網(wǎng)絡堆棧,Scalable Enhanced Networks Stack)協(xié)議棧,SENS協(xié)議棧提供了可替換的網(wǎng)絡設備驅(qū)動程序, 而專為這個網(wǎng)絡堆棧而編寫的網(wǎng)絡接口設備驅(qū)動程序被稱作END (增強的 網(wǎng)絡驅(qū)動程序,Enhanced Network Driver)。如圖2所示,SENS模型包含三 個部分協(xié)議驅(qū)動程序、MUX(多元接口, multiplexer)和END。 SENS模 型獨立于硬件設備接口,它將網(wǎng)絡設備驅(qū)動程序細化,使開發(fā)者可以專注于 END本身的開發(fā)。在驅(qū)動程序和上層協(xié)議(如TCP/IP)之間,SENS模型 提供了協(xié)議驅(qū)動層。在協(xié)議層和驅(qū)動程序之間,SENS模型提供了 MUX層。 MUX層直接和END驅(qū)動程序交互,其應用程序接口提供了獨立于網(wǎng)絡協(xié)議 的驅(qū)動程序接口,可以與多個獨立的END單元同時交互。
      對于單核處理器來說, 一般一個核只配有一個網(wǎng)口,該網(wǎng)口只負責與外 界通信。而對于多核處理器來說,會遇到下面的問題
      (1) 多個核如何與外界通信?
      (2) 核與核之間如果想傳輸協(xié)議報文,又該如何通信? 當前的技術中沒有很好的解決上述問題,有如下的缺陷
      (1) 核間通信獨立于核與外界通信方式,對于上層應用來說需要兩套 機制完成通信工作,不夠靈活。
      (2) 核間通訊沒有掛接協(xié)議棧,因此只能收發(fā)報文,無法使用協(xié)議棧 提供的功能,導致功能很單一。
      綜上所述,當前需要一種嵌入式操作系統(tǒng)中多核處理器通信的技術方案。

      發(fā)明內(nèi)容
      本發(fā)明所要解決的技術問題是提供一種嵌入式搡作系統(tǒng)中實現(xiàn)多核處 理器通信的裝置及方法,可以進行核間通信,也可以與外界進行通信。
      為了解決上述問題,本發(fā)明提供了
      4寺權(quán)利要求核定后補充
      與現(xiàn)有技術相比,應用本發(fā)明,克服了現(xiàn)有技術的不足,首先無論是對
      外通信還是核間通信都掛接協(xié)議棧,功能更強大,上層應用開發(fā)更加方便; 其次將對外通信和核間通信對于上層透明化,使得應用層無須關注底層的傳 輸細節(jié)。


      圖1是嵌入式搡作系統(tǒng)的網(wǎng)絡系統(tǒng)層結(jié)構(gòu)圖; 圖2是SENS結(jié)構(gòu)圖3是本發(fā)明具體實施方式
      的嵌入式操作系統(tǒng)中實現(xiàn)多核處理器通信 的裝置結(jié)構(gòu)圖4是本發(fā)明具體實施方式
      的嵌入式操作系統(tǒng)中實現(xiàn)多核處理器通信 的方法流^_圖5是本發(fā)明具體實例中報文發(fā)送流程圖; 圖6是本發(fā)明具體實例中報文接收流程圖。
      具體實施例方式
      下面結(jié)合附圖和具體實施方式
      對本發(fā)明作進一步說明。
      如圖3所示, 一種嵌入式操作系統(tǒng)中多核處理器通信裝置,包括CPU ^t塊、中斷模塊、內(nèi)存模塊、網(wǎng)絡模塊,其中
      (1) CPU模塊
      CPU模塊,是多核處理器所擁有的各個CPU核,每個CPU核包含兩套 裝置 一是IP識別單元,用于識別需要發(fā)送報文的IP地址,從而選擇不同 的發(fā)送裝置進行發(fā)送;二是END單元,用于負責綁定IP地址,以及與協(xié)議 棧進行通信,END單元包括對外通信END單元和核間通信END單元,其 中,對外通信END單元用于對外通信;核間通信END單元用于CPU核間 通信;
      (2) 中斷模塊
      中斷模塊包括兩部分 一是核間中斷單元,用于控制CPU核之間的中 斷,即CPU核與CPU核之間可以發(fā)送中斷請求,每個CPU核可以向指定 目標CPU核發(fā)送中斷請求,同時目標CPU核也能夠通過該核間中斷單元識 別中斷請求派發(fā)地的源CPU核;二是網(wǎng)口中斷單元,用于使CPU核能夠識 別對應網(wǎng)絡才莫塊是否收到中斷請求;
      (3) 內(nèi)存模塊
      內(nèi)存模塊包括兩部分 一是多CPU核所共享的共享內(nèi)存單元,用于使 CPU核之間可以互相通信,共享內(nèi)存單元包括共享內(nèi)存鎖,其中共享內(nèi)存 鎖用于使共享內(nèi)存的操作不會沖突,保證了安全性和可靠性;二是各個CPU 核所獨有的私有內(nèi)存單元,用于網(wǎng)絡模塊對外的通信,存儲向網(wǎng)絡模塊發(fā)送 或者從網(wǎng)絡才莫塊接收到的報文;
      (4) 網(wǎng)絡模塊,用于使CPU核可以與外界進行通信。
      網(wǎng)絡模塊指的是CPU核對應的網(wǎng)口 ,每個CPU核都有一個對應的網(wǎng)口 , 通過網(wǎng)口, CPU核可以與外界進行通信。
      一種嵌入式操作系統(tǒng)中實現(xiàn)多核處理器通信的裝置,包括網(wǎng)絡模塊、內(nèi)
      存模塊、CPU模塊、中斷模塊,其中,
      所述內(nèi)存模塊包括多CPU核所共享的共享內(nèi)存單元和各個CPU核所獨
      有的私有內(nèi)存單元,其中,
      多CPU4亥所共享的共享內(nèi)存單元,在核間通信中,用于使CPU核之間 互相通信,存儲CPU核間發(fā)送的報文;
      所述共享內(nèi)存單元包括共享內(nèi)存鎖,其中共享內(nèi)存鎖用于共享內(nèi)存的操
      作,使共享內(nèi)存的操作不會沖突,保證了安全性和可靠性。
      各個CPU核的私有內(nèi)存單元,用于所述網(wǎng)絡^^莫塊對外的通信,存儲向 網(wǎng)絡模塊發(fā)送或者從網(wǎng)絡模塊接收到的報文;
      所述私有內(nèi)存單元,在對外通信中,用于存儲向網(wǎng)絡模塊發(fā)送的報文, 通知網(wǎng)絡模塊將該報文發(fā)送。
      所述網(wǎng)絡模塊,用于接收所述私有內(nèi)存單元發(fā)送的報文,同時發(fā)送中斷 請求,完成CPU核的通信;
      所述網(wǎng)絡模塊是CPU核對應的網(wǎng)口 ,每個CPU核都有一個對應的網(wǎng)口 , 通過網(wǎng)口, CPU核與外界進行通信。
      CPU模塊是多核處理器所擁有的各個CPU核,每個CPU核包含IP識 別單元、增強的網(wǎng)絡驅(qū)動程序END單元,其中
      所述IP識別單元,用于識別需要發(fā)送報文的IP地址,從而選擇相應的 END單元進行發(fā)送;
      所述END單元,用于接收所述IP識別單元的發(fā)送信息,綁定IP地址, 以及與協(xié)議棧進行通信。
      所述END單元包括對外通信END單元和核間通信END單元,其中,
      .所述對外通信END單元用于對外通信,接收協(xié)議棧發(fā)送的報文,并發(fā) 送到對應內(nèi)存模塊的私有內(nèi)存單元;
      所述核間通信END單元用于CPU核間通信,對內(nèi)存模塊的共享內(nèi)存單 元設置共享內(nèi)存鎖,接收協(xié)議棧發(fā)送的^L文并發(fā)送到共享內(nèi)存單元。
      所述中斷模塊包括核間中斷單元、網(wǎng)口中斷單元,其中,
      所述核間中斷單元用于控制CPU核之間的中斷,*接收源CPU核的中斷 請求,選擇當前CPU核中核間通信的END單元,從內(nèi)存;f莫塊的共享內(nèi)存單 元中取出數(shù)據(jù),送交協(xié)議棧,并向目標CPU核設置中斷,完成CPU核的通 信;即CPU核與CPU核之間可以發(fā)送中斷請求,每個CPU核可以向指定 目標CPU核發(fā)送中斷請求,同時目標CPU核也通過該核間中斷單元識別中 斷請求派發(fā)地的源CPU核;
      所述網(wǎng)口中斷單元,用于接收所述網(wǎng)絡模塊的中斷請求并發(fā)送到CPU 核,CPU核從對應內(nèi)存模塊的私有內(nèi)存單元中取出所述報文,送交協(xié)議棧, 并向目標地址設置中斷,完成CPU核的通信。
      如圖4所示, 一種嵌入式操作系統(tǒng)中實現(xiàn)多核處理器通信的方法,包括 以下步驟,
      步驟iio、初始化cpu模塊,配置內(nèi)存模塊中的私有內(nèi)存單元;
      對每個CPU核配置內(nèi)存模塊中的私有內(nèi)存單元,包括以下步驟,
      步驟IIOI、初始化CPU模塊的對外通信END單元,包括指定設備號、 分配MAC (介質(zhì)訪問控制)地址等;
      步驟1102、初始化內(nèi)存模塊中的私有內(nèi)存單元;
      步驟1103、對IP地址進行綁定,包括將對外通信END單元綁定到MUX 中,以及將協(xié)議棧與對外通信END單元進行綁定,此時選擇的IP地址為IPO;
      步驟1104、設置中斷模塊的網(wǎng)口中斷單元。
      步驟120、配置內(nèi)存模塊的共享內(nèi)存單元;
      配置共享內(nèi)存單元,包括以下步驟,
      步驟1201、初始化CPU模塊的核間通信END單元,包括指定設備號、 分配MAC地址等;
      步驟1202、初始化共享內(nèi)存單元,同時設置共享內(nèi)存鎖;
      步驟1203、對IP地址進行綁定,包括將核間通信END單元綁定到MUX 中,以及將協(xié)議棧與核間通信END單元進行綁定,此時選擇的IP地址為IP1;
      步驟1204、設置中斷模塊的核間中斷單元。
      步驟130、 CPU模塊的IP識別單元識別目標的IP地址,根據(jù)IP地址選 擇對應的END單元;
      步驟140、若是對外通信,則將報文放入內(nèi)存模塊的私有內(nèi)存單元中, 并通過中斷模塊的網(wǎng)口中斷單元向目標地址設置中斷,同時發(fā)送中斷請求, 完成CPU核的才艮文發(fā)送;
      若是CPU核間通信,則將報文放入內(nèi)存模塊的共享內(nèi)存單元中,并通 過中斷模塊的核間中斷單元向目標地址設置中斷,同時發(fā)送中斷請求,完成
      CPU核的報文發(fā)送。
      步驟150、若中斷模塊的網(wǎng)口中斷單元收到中斷請求,則M應內(nèi)存模 塊的私有內(nèi)存單元中取出數(shù)據(jù),送交協(xié)議棧,完成CPU核的報文接收。
      若中斷模塊的核間中斷單元收到中斷請求,則從內(nèi)存模塊的共享內(nèi)存單 元中取出數(shù)據(jù),送交協(xié)議棧,完成CPU核的報文接收。
      下面結(jié)合具體實例對本發(fā)明作進一步說明。
      CPU核的報文發(fā)送步驟如圖5所示。
      .步驟210、 CPU模塊的IP識別單元根據(jù)需要發(fā)送報文的目標IP地址選 擇對應的END單元;
      步驟220、判斷是否是核間通訊地址,如果是,則執(zhí)行步驟250;否則 目標IP地址為非核間通訊地址,執(zhí)行步驟230;
      步驟230、選擇對外通信END單元,協(xié)議棧將發(fā)送的報文放入對應內(nèi) 存模塊的私有內(nèi)存單元中;
      步驟240、通知對應網(wǎng)絡模塊開始發(fā)送私有內(nèi)存單元中的數(shù)據(jù),完成對 外通信中CPU核的報文發(fā)送,結(jié)束;
      步驟250、選擇核間通信END單元,對內(nèi)存模塊的共享內(nèi)存單元設置 共享內(nèi)存鎖;
      此時目標IP地址為核間通ifl地址。
      步驟260、協(xié)議棧將發(fā)送的報文》文入共享內(nèi)存單元中;
      步驟270、對內(nèi)存模塊的共享內(nèi)存單元解除共享內(nèi)存鎖;
      步驟280、通過IP識別單元識別出需要通信的目標CPU核;
      步驟290、通過中斷模塊的核間中斷單元向目標CPU核設置核間中斷, 完成核間通信中CPU核的報文發(fā)送,結(jié)束。
      CPU核的報文接收步驟如圖6所示。
      .步驟310、檢測中斷模塊,判斷是否是網(wǎng)口中斷,如果是,則執(zhí)行步驟 320,否則執(zhí)行步驟340;
      如果網(wǎng)口中斷單元收到中斷,則說明對應網(wǎng)絡模塊有報文發(fā)送進來。
      步驟320、選擇當前CPU核中對外通信的END單元;
      步驟330、 M應內(nèi)存模塊的私有內(nèi)存單元中取出數(shù)據(jù),并送交協(xié)議棧, 完成CPU核的報文接收,結(jié)束;
      步驟340、檢測中斷模塊,判斷是否是核間中斷,如果是,則執(zhí)行步驟 350,否則,結(jié)束;
      如果核間中斷單元收到中斷,則說明核間有報文發(fā)送進來。
      步驟350、選擇當前CPU核中核間通信的END單元;
      步驟360、對內(nèi)存模塊的共享內(nèi)存單元設置共享內(nèi)存鎖;
      步驟370、從對應內(nèi)存模塊的共享內(nèi)存單元中取出數(shù)據(jù),并送交協(xié)議棧, 完成CPU核的報文接收。
      步驟380、對內(nèi)存模塊的共享內(nèi)存單元解除共享內(nèi)存鎖,結(jié)束。
      本發(fā)明提供了多核處理器在嵌入式操作系統(tǒng)中對外通信以及核間通信 的方法,采用了該方法的系統(tǒng)不僅可以與外部的網(wǎng)絡i殳備進行通信,還可以 讓內(nèi)部的核間進行通信,且兩種通信的區(qū)別對于系統(tǒng)的應用層來說完全透 明,無論是核間通信還是對外通信都可以靈活采用嵌入式操作系統(tǒng)協(xié)議棧所 提供的支持,4吏得系統(tǒng)的通信功能更加完善和強大,此外因為核間通信采用 的共享內(nèi)存方式,其效率和可靠性也很高。
      以上所述,僅為本發(fā)明較佳的具體實施方式
      ,但本發(fā)明的保護范圍并不 局限于此,任何熟悉該技術的人在本發(fā)明所揭露的技術范圍內(nèi),可輕易想到 的變化或替換,都應涵蓋在本發(fā)明的保護范圍之內(nèi)。因此,本發(fā)明的保護范 圍應該以權(quán)利要求的保護范圍為準。
      權(quán)利要求
      1、一種嵌入式操作系統(tǒng)中實現(xiàn)多核處理器通信的裝置,其特征在于,包括內(nèi)存模塊、網(wǎng)絡模塊,其中,所述內(nèi)存模塊,在對外通信中,用于存儲向網(wǎng)絡模塊發(fā)送的報文,通知網(wǎng)絡模塊將該報文發(fā)送;所述網(wǎng)絡模塊,用于接收所述內(nèi)存模塊發(fā)送的報文,同時發(fā)送中斷請求,完成CPU核的通信。
      2、 如權(quán)利要求l所述的裝置,其特征在于,所述內(nèi)存模塊包括多CPU核所共享的共享內(nèi)存單元和各個CPU核所獨 有的私有內(nèi)存單元,其中,多CPU核所共享的共享內(nèi)存單元,在核間通信中,用于使CPU核之間 互相通信,存儲CPU核間發(fā)送的報文;各個CPU核的私有內(nèi)存單元,用于所述網(wǎng)絡模塊對外的通信,存儲向 網(wǎng)絡模塊發(fā)送或者從網(wǎng)絡模塊接收到的報文。
      3、 如權(quán)利要求2所述的裝置,其特征在于,所述共享內(nèi)存單元包括共享內(nèi)存鎖,其中共享內(nèi)存鎖用于共享內(nèi)存的操作。
      4、 如權(quán)利要求3所述的裝置,其特征在于,所述網(wǎng)絡模塊是CPU核對應的網(wǎng)口 ,每個CPU核都有一個對應的網(wǎng)口 , 通過網(wǎng)口, CPU核與外界進4亍通信。
      5、 如權(quán)利要求4所述的裝置,其特征在于,還包括CPU模塊,CPU模塊是多核處理器所擁有的各個CPU核,每個 CPU核包含IP識別單元、增強的網(wǎng)絡驅(qū)動程序END單元,其中所述IP識別單元,用于識別需要發(fā)送報文的IP地址,從而選擇相應的 END單元進4于發(fā)送;所述END單元,用于接收所述IP識別單元的發(fā)送信息,綁定IP地址, 以及與協(xié)議棧進行通信。
      6、 如權(quán)利要求5所述的裝置,其特征在于,所述END單元包括對外通信END單元和核間通信END單元,其中,所述對外通信END單元用于對外通信,接收協(xié)議棧發(fā)送的報文,并發(fā) 送到對應內(nèi)存模塊的私有內(nèi)存單元;所述核間通信END單元用于CPU核間通信,對內(nèi)存模塊的共享內(nèi)存單 元設置共享內(nèi)存鎖,接收協(xié)議棧發(fā)送的報文并發(fā)送到共享內(nèi)存單元。
      7、 如權(quán)利要求6所述的裝置,其特征在于,.還包括中斷模塊,所述中斷模塊包括核間中斷單元、網(wǎng)口中斷單元,其中,所述核間中斷單元用于控制CPU核之間的中斷,接收源CPU核的中斷 請求,選擇當前CPU核中核間通信END單元,從內(nèi)存模塊的共享內(nèi)存單元 中取出數(shù)據(jù),送交協(xié)議棧,并向目標CPU核設置中斷,完成CPU核的通信;所述網(wǎng)口中斷單元,用于接收所述網(wǎng)絡模塊的中斷請求并發(fā)送到CPU 核,CPU核從對應內(nèi)存模塊的私有內(nèi)存單元中取出報文,送交協(xié)議棧,并 向目標地址設置中斷,完成CPU核的通信。
      8、 一種嵌入式才喿作系統(tǒng)中實現(xiàn)多核處理器通信的方法,所述系統(tǒng)包 括內(nèi)存模塊,包括以下步驟,a、 初始化CPU模塊,配置所述內(nèi)存模塊,內(nèi)存模塊用于網(wǎng)絡模塊對外 的通信,存儲向網(wǎng)絡模塊發(fā)送的報文;b、 內(nèi)存模塊接收到所述報文后,若是CPU核的對外通信,則將所述報文放入內(nèi)存模塊的私有內(nèi)存單元 中,并通過中斷模塊的網(wǎng)口中斷單元向目標地址設置中斷,同時發(fā)送中斷請 求,完成CPU核的報文發(fā)送;若是CPU核間通信,則將所述報文放入內(nèi)存模塊的共享內(nèi)存單元中,并通過中斷模塊的核間中斷單元向目標地址設置中斷,同時發(fā)送中斷請求,完成CPU核的報文發(fā)送。
      9、如權(quán)利要求8所述的方法,其特征在于, 所述步驟a中包括,步驟IIOI、初始化CPU模塊的END單元,包括指定設備號、分配介 質(zhì)訪問控制地址;步驟1102、初始化內(nèi)存模塊;步驟1103、對IP地址進行綁定,包括將END單元綁定到多元接口中, 以及將協(xié)議棧與END單元進行綁定;步驟1104、設置中斷模塊;所述中斷模塊包括核間中斷單元、網(wǎng)口中 斷單元,所述核間中斷單元用于控制CPU核之間的中斷;所述網(wǎng)口中斷單 元,用于使CPU核識別對應網(wǎng)絡模塊是否收到中斷請求;步驟1105、 CPU模塊識別目標的IP地址,根據(jù)IP地址選擇對應的END 單元。
      10、 如權(quán)利要求8所述的方法,其特征在于, 還包括,若所述中斷才莫塊的網(wǎng)口中斷單元收到中斷請求,則從對應內(nèi)存模塊的私 有內(nèi)存單元中取出數(shù)據(jù),送交協(xié)議棧,完成CPU核的報文接收;若所述中斷模塊的核間中斷單元收到中斷請求,則從內(nèi)存模塊的共享內(nèi) 存單元中取出數(shù)據(jù),送交協(xié)議棧,完成CPU核的報文接收。
      全文摘要
      本發(fā)明公開了一種嵌入式操作系統(tǒng)中實現(xiàn)多核處理器通信的裝置及方法,包括內(nèi)存模塊、網(wǎng)絡模塊,其中,所述內(nèi)存模塊,在對外通信中,用于存儲向網(wǎng)絡模塊發(fā)送的報文,通知網(wǎng)絡模塊將該報文發(fā)送;所述網(wǎng)絡模塊,用于接收所述內(nèi)存模塊發(fā)送的報文,同時發(fā)送中斷請求,完成CPU核的通信。應用本發(fā)明,克服了現(xiàn)有技術的不足,首先無論是對外通信還是核間通信都掛接協(xié)議棧,功能更強大,上層應用開發(fā)更加方便;其次將對外通信和核間通信對于上層透明化,使得應用層無須關注底層的傳輸細節(jié)。
      文檔編號H04L12/56GK101170511SQ200710187350
      公開日2008年4月30日 申請日期2007年11月20日 優(yōu)先權(quán)日2007年11月20日
      發(fā)明者趙昊翔, 郭樹波 申請人:中興通訊股份有限公司
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評論。精彩留言會獲得點贊!
      1