国产精品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>

      基于bcm1250的轉(zhuǎn)發(fā)軟件系統(tǒng)的方法

      文檔序號:7878781閱讀:191來源:國知局
      專利名稱:基于bcm1250的轉(zhuǎn)發(fā)軟件系統(tǒng)的方法
      技術(shù)領(lǐng)域
      本發(fā)明屬于計算機網(wǎng)絡(luò)通信領(lǐng)域,具體涉及一種基于BCM1250的轉(zhuǎn)發(fā)軟件系統(tǒng)的方法。
      背景技術(shù)
      BCM1250是Broadcom公司推出的一款通信處理器芯片,該芯片集成了兩個高性能的MIPS64 CPU,外圍集成了3個GE MAC控制器、兩個DDR DRAM控制器、PCI總線接口,512K L2 Cache,外圍添加很少的器件就可以十分方便的實現(xiàn)L3-L7各層報文處理。
      為了實現(xiàn)高速轉(zhuǎn)發(fā),軟件系統(tǒng)包括控制平面通信軟件分層中的控制部分,主要完成協(xié)議處理、轉(zhuǎn)發(fā)表維護等功能;轉(zhuǎn)發(fā)平面通信軟件分層中的快速報文轉(zhuǎn)發(fā)部分,即查找轉(zhuǎn)發(fā)表,對報文做處理后轉(zhuǎn)發(fā)報文。對于轉(zhuǎn)發(fā)平面不能處理的報文都必須提交給控制平面進行處理,同樣控制平面必須通過轉(zhuǎn)發(fā)平面與其他設(shè)備的控制平面通信??刂破矫婧娃D(zhuǎn)發(fā)平面之間傳遞的報文叫異常報文,與從接口收進來然后通過轉(zhuǎn)發(fā)平面轉(zhuǎn)發(fā)出去的正常轉(zhuǎn)發(fā)報文相區(qū)別,目前,基于BCM1250的軟件系統(tǒng)的控制平面和轉(zhuǎn)發(fā)平面只運行在一個CPU上,該CPU由于既處理控制平面和轉(zhuǎn)發(fā)平面之間的異常報文,又運行轉(zhuǎn)發(fā)程序,做報文轉(zhuǎn)發(fā),不利于提高轉(zhuǎn)發(fā)性能。

      發(fā)明內(nèi)容
      本發(fā)明克服上述基于BCM1250芯片的轉(zhuǎn)發(fā)軟件系統(tǒng)方法的不足,提供一種可實現(xiàn)高速數(shù)據(jù)轉(zhuǎn)發(fā)的基于BCM1250芯片的轉(zhuǎn)發(fā)軟件系統(tǒng)方法。本發(fā)明的技術(shù)內(nèi)容一種基于BCM1250的轉(zhuǎn)發(fā)軟件系統(tǒng)的方法,將控制平面軟件和轉(zhuǎn)發(fā)平面軟件分別運行在CPU0和CPU1上。
      CPU0和CPU1通過兩個直接存儲器訪問(DMA)通道,采用在內(nèi)存中拷貝數(shù)據(jù)實現(xiàn)控制平面和轉(zhuǎn)發(fā)平面之間的報文通信,包括(1)CPU通過DMA描述符管理DMA通道;(2)CPU在DMA描述符中指定數(shù)據(jù)拷貝的源地址和目的地址,以及數(shù)據(jù)拷貝方式;(3)將描述符放入到相應(yīng)DMA通道的描述符環(huán)中,DMA通道自動完成報文。
      從控制平面?zhèn)魉蛨笪牡睫D(zhuǎn)發(fā)平面,包括(1)轉(zhuǎn)發(fā)平面分配一緩沖區(qū)(buffer),將該緩沖區(qū)的地址寫入第一個DMA通道的描述符的目的地址域;(2)控制平面CPU將報文地址寫入相應(yīng)描述符的源地址域;(3)控制平面CPU將描述符添加DMA通道的描述符環(huán)。
      從轉(zhuǎn)發(fā)平面?zhèn)魉蛨笪牡娇刂破矫?,包?1)控制平面分配一緩沖區(qū)(buffer),將該緩沖區(qū)的地址寫入第二個DMA通道的描述符的目的地址域;(2)轉(zhuǎn)發(fā)平面CPU將報文地址寫入相應(yīng)描述符的源地址域;(3)轉(zhuǎn)發(fā)平面CPU將描述符添加DMA通道的描述符環(huán)。
      所述DMA描述符由兩個64bit的字段組成。
      本發(fā)明的技術(shù)效果基于BCM1250芯片的轉(zhuǎn)發(fā)平面軟件和控制平面軟件由于分別運行在兩個獨立的CPU上,各自擁有自己的代碼空間和數(shù)據(jù)空間,運行完全不同的代碼,在邏輯上等同于完全獨立的兩個CPU,CPU1只做報文轉(zhuǎn)發(fā),簡單高效,可提高轉(zhuǎn)發(fā)性能,且轉(zhuǎn)發(fā)平面和控制平面采用DMA環(huán)方式接收、發(fā)送報文,具有以下優(yōu)點1、采用DMA方式在內(nèi)存中拷貝數(shù)據(jù),CPU只需維護DMA描述符,大大減輕了CPU負擔。
      2、采用內(nèi)存拷貝而不是內(nèi)存共享可以減少兩個CPU之間的耦合,提高兩個平面之間獨立性。
      3、從轉(zhuǎn)發(fā)平面CPU角度來看,與控制平面的報文通信方式與對外接口的處理方式相似,簡化了轉(zhuǎn)發(fā)平面的設(shè)計。


      本發(fā)明基于BCM1250的轉(zhuǎn)發(fā)軟件系統(tǒng)方法的示意圖。
      具體實施例方式
      參考附圖,本發(fā)明一種基于BCM1250的轉(zhuǎn)發(fā)軟件系統(tǒng)的方法,將控制平面軟件和轉(zhuǎn)發(fā)平面軟件分別運行在CPU0和CPU1上,轉(zhuǎn)發(fā)平面作為轉(zhuǎn)發(fā)部分獨立的運行于CPU1上,各自擁有自己的代碼空間和數(shù)據(jù)空間,運行完全不同的代碼,在邏輯上等同于完全獨立的兩個CPU,系統(tǒng)運行期間兩個CPU互不干擾,各自按照自己的處理流程獨立運行。CPU0和CPU1通過兩個DMA通道,采用在內(nèi)存中拷貝數(shù)據(jù)實現(xiàn)控制平面和轉(zhuǎn)發(fā)平面之間的報文通信。BCM1250芯片手冊稱DMA通道為DATA MOVER,DATA MOVER實際上就是能夠從任何地方(包括IO端口)搬移數(shù)據(jù)到任何地方的DMA控制器,DMA(Direct MemoryAccess)直接存儲器訪問,在DMA控制器管理下進行兩個存儲區(qū)之間拷貝數(shù)據(jù),不需要CPU的參與。BCM1250共有四個DMA通道,配置成環(huán)模式,CPU通過DMA描述符管理DMA通道,DMA描述符以DMA方式傳輸數(shù)據(jù)之前必須設(shè)置數(shù)據(jù)傳輸?shù)脑创鎯^(qū)地址和目的存儲器地址,數(shù)據(jù)傳輸?shù)拇笮?字節(jié)數(shù))等屬性,DMA描述符就是用來設(shè)置這些參數(shù)的數(shù)據(jù)結(jié)構(gòu),一個DMA描述符由兩個64bit的字段組成,在描述符中指定了數(shù)據(jù)拷貝的源地址和目的地址,以及數(shù)據(jù)拷貝的方式。當需要用DMA方式拷貝數(shù)據(jù)的時候,CPU填寫描述符的源和目的地址以及拷貝方式,然后把這個描述符放入到相應(yīng)DMA通道的描述符環(huán)中,DMA描述符環(huán)存放DMA描述符的一片連續(xù)內(nèi)存空間,由CPU向環(huán)的頭部添加描述符,DMA控制器從環(huán)尾取出描述符,然后根據(jù)描述符傳輸數(shù)據(jù)。DMA控制器根據(jù)描述符提供的信息拷貝數(shù)據(jù),當拷貝完成后發(fā)出中斷信號通知CPU。
      本發(fā)明利用其中兩個DMA通道在控制平面與轉(zhuǎn)發(fā)平面之間實現(xiàn)報文通信,第一個DMA通道用于控制平面向轉(zhuǎn)發(fā)平面發(fā)送報文,第二個DMA通道用于轉(zhuǎn)發(fā)平面向控制平面發(fā)送報文??刂破矫婧娃D(zhuǎn)發(fā)平面分別有自己的緩沖存儲區(qū),且分別有自己的緩沖區(qū)分配釋放函數(shù)。其中控制平面與轉(zhuǎn)發(fā)平面之間報文長度小于2K(2048)字節(jié),故緩沖區(qū)(buffer)為2048Byte大小的存儲區(qū)。
      從控制平面?zhèn)魉鸵粋€報文到轉(zhuǎn)發(fā)平面的過程轉(zhuǎn)發(fā)平面首先分配好buf然后把buf的地址寫入到第一個DMA通道的描述符的目的地址域,一旦控制平面有報文需要傳送到轉(zhuǎn)發(fā)平面,控制平面CPU把報文的地址寫入相應(yīng)的描述符的源地址域,然后由控制平面CPU把這個描述符添加到第一個DMA通道的描述符環(huán)中,DMA控制器自動完成報文拷貝。
      從轉(zhuǎn)發(fā)平面?zhèn)魉鸵粋€報文到控制平面的過程控制平面首先分配好buf然后把buf的地址寫入到第二個DMA通道的描述符的目的地址域,一旦轉(zhuǎn)發(fā)平面有報文需要傳送到控制平面,轉(zhuǎn)發(fā)平面CPU把報文的地址寫入相應(yīng)的描述符的源地址域,然后由轉(zhuǎn)發(fā)平面CPU把這個描述符添加到第二個DMA通道的描述符環(huán)中,DMA控制器自動完成報文拷貝。
      權(quán)利要求
      1.一種基于BCM1250的轉(zhuǎn)發(fā)軟件系統(tǒng)的方法,其特點在于控制平面軟件和轉(zhuǎn)發(fā)平面軟件分別運行在CPU0和CPU1上。
      2.如權(quán)利要求1所述的基于BCM1250的轉(zhuǎn)發(fā)軟件系統(tǒng)的方法,其特征在于CPU0和CPU1通過兩個直接存儲器訪問(Direct Memory Access,DMA)通道,采用在內(nèi)存中拷貝數(shù)據(jù)實現(xiàn)控制平面和轉(zhuǎn)發(fā)平面之間的報文通信。
      3.如權(quán)利要求2所述的基于BCM1250的轉(zhuǎn)發(fā)軟件系統(tǒng)的方法,其特征在于包括(1)CPU通過DMA描述符管理DMA通道;(2)CPU在DMA描述符中指定數(shù)據(jù)拷貝的源地址和目的地址,以及數(shù)據(jù)拷貝方式;(3)將描述符放入到相應(yīng)DMA通道的描述符環(huán)中,DMA通道自動完成報文。
      4.如權(quán)利要求3所述的基于BCM1250的轉(zhuǎn)發(fā)軟件系統(tǒng)的方法,其特征在于從控制平面?zhèn)魉蛨笪牡睫D(zhuǎn)發(fā)平面,包括(1)轉(zhuǎn)發(fā)平面分配一緩沖區(qū),將該緩沖區(qū)的地址寫入第一個DMA通道的描述符的目的地址域;(2)控制平面CPU將報文地址寫入相應(yīng)描述符的源地址域;(3)控制平面CPU將描述符添加DMA通道的描述符環(huán)。
      5.如權(quán)利要求3所述的基于BCM1250的轉(zhuǎn)發(fā)軟件系統(tǒng)的方法,其特征在于從轉(zhuǎn)發(fā)平面?zhèn)魉蛨笪牡娇刂破矫?,包?1)控制平面分配一緩沖區(qū),將該緩沖區(qū)的地址寫入第二個DMA通道的描述符的目的地址域;(2)轉(zhuǎn)發(fā)平面CPU將報文地址寫入相應(yīng)描述符的源地址域;(3)轉(zhuǎn)發(fā)平面CPU將描述符添加DMA通道的描述符環(huán)。
      6.如權(quán)利要求3、4或5所述的基于BCM1250的轉(zhuǎn)發(fā)軟件系統(tǒng)的方法,其特征在于所述DMA描述符由兩個64bit的字段組成。
      全文摘要
      本發(fā)明提供了一種基于BCM1250的轉(zhuǎn)發(fā)軟件系統(tǒng)的方法,屬于計算機網(wǎng)絡(luò)通信領(lǐng)域。該方法將控制平面軟件和轉(zhuǎn)發(fā)平面軟件分別運行在CPU0和CPU1上,轉(zhuǎn)發(fā)平面作為轉(zhuǎn)發(fā)部分獨立的運行于CPU1上。控制平面軟件和轉(zhuǎn)發(fā)平面軟件各自擁有自己的代碼空間和數(shù)據(jù)空間,運行完全不同的代碼,在邏輯上等同于完全獨立的兩個CPU,簡單高效,從而提高了轉(zhuǎn)發(fā)性能。CPU0和CPU1通過兩個直接存儲器訪問(DirectMemory Access,DMA)通道,采用在內(nèi)存中拷貝數(shù)據(jù)實現(xiàn)了控制平面和轉(zhuǎn)發(fā)平面之間的報文通信,利用DMA方式在兩個平面之間傳遞報文,可使轉(zhuǎn)發(fā)平面軟件接收和發(fā)送異常報文的處理方式與正常轉(zhuǎn)發(fā)報文相似。
      文檔編號H04L12/56GK1540521SQ200310101788
      公開日2004年10月27日 申請日期2003年10月28日 優(yōu)先權(quán)日2003年10月28日
      發(fā)明者宋建明, 劉靜濤, 李濤, 郭英輝 申請人:港灣網(wǎng)絡(luò)有限公司
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評論。精彩留言會獲得點贊!
      1