国产精品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)及方法與流程

      文檔序號:12492636閱讀:651來源:國知局
      在交換控制電路中巨幀的控制系統(tǒng)及方法與流程

      本發(fā)明涉及一種應(yīng)用于以太網(wǎng)協(xié)議的網(wǎng)絡(luò)設(shè)備中的數(shù)據(jù)處理的網(wǎng)絡(luò)數(shù)據(jù)通信技術(shù),特別是涉及一種在交換控制電路中巨幀的控制系統(tǒng)及方法。



      背景技術(shù):

      隨著以太網(wǎng)技術(shù)的日新月異,交換機的速率也從10Mbps、100Mbps到1Gbps、10Gbps甚至更高。起初IEEE認(rèn)可的以太網(wǎng)標(biāo)準(zhǔn)的最大幀長度為1518字節(jié),這一標(biāo)準(zhǔn)已經(jīng)越來越成為數(shù)據(jù)傳輸效率的掣肘。巨幀(Jumbo Frame),這是一種廠商標(biāo)準(zhǔn)的超長幀格式,專門為超過1Gbps的以太網(wǎng)而設(shè)計,長度各廠商有所不同,從9000字節(jié)~64000字節(jié)不等。采用巨幀能夠使以太網(wǎng)傳輸數(shù)據(jù)性能充分發(fā)揮,是數(shù)據(jù)傳輸效率提高50%~100%。

      在交換控制電路設(shè)計中,描述符管理有極其重要的作用,直接影響交換機的性能。它管理著幀存儲地址和目的端口的映射關(guān)系以及高低優(yōu)先級的出隊列次序。以太網(wǎng)交換機的主要工作是存儲轉(zhuǎn)發(fā),當(dāng)數(shù)據(jù)幀經(jīng)過PHY層、MAC層解析后,對MAC地址表進(jìn)行查找,找到轉(zhuǎn)發(fā)端口,產(chǎn)生相應(yīng)的描述符派發(fā)到各個發(fā)送端口,描述符中記載著幀的各類信息。標(biāo)準(zhǔn)的二層幀結(jié)構(gòu)和巨幀結(jié)構(gòu)分別如圖5和圖6所示。

      在描述符的設(shè)計中,若以256字節(jié)為一頁為前提,在最長幀只支持1518字節(jié)的交換機中,設(shè)計一個描述符或一個擴(kuò)展類型的描述符對應(yīng)一個幀就能滿足要求,而對于支持巨幀的設(shè)備,此種設(shè)計已不滿足要求,單個描述符已不可能包含巨幀數(shù)據(jù)的所有頁地址。



      技術(shù)實現(xiàn)要素:

      本發(fā)明所要解決的技術(shù)問題是提供一種在交換控制電路中巨幀的控制系統(tǒng)及方法,是一種用兩級鏈表實現(xiàn)的巨幀控制方法,通過兩級鏈表對幀存儲的控制,有效的解決了描述符與存儲地址的映射關(guān)系,理論上可以擴(kuò)展到巨幀甚至超巨幀。

      本發(fā)明是通過下述技術(shù)方案來解決上述技術(shù)問題的:一種在交換控制電路中巨幀的控制系統(tǒng),其特征在于,包括:

      描述優(yōu)先級調(diào)度模塊:根據(jù)調(diào)度策略,在多個優(yōu)先級隊列中挑選最先被調(diào)度的隊列,把該隊列的首個描述符地址提供給發(fā)送隊列管理模塊;

      發(fā)送隊列管理模塊:根據(jù)接收或發(fā)送數(shù)據(jù),對描述符發(fā)送隊列進(jìn)行寫或度操作,并且根據(jù)優(yōu)先級信息,對各優(yōu)先級隊列進(jìn)行鏈表式管理;

      緩存標(biāo)簽隊列管理模塊:通過存儲在發(fā)送隊列中的描述符所含的緩存標(biāo)簽,對每個數(shù)據(jù)幀所占用的緩存進(jìn)行鏈表式管理;

      空閑隊列管理模塊:釋放和回收發(fā)送隊列表項和緩存標(biāo)簽表項的存儲地址。

      本發(fā)明還提供一種在交換控制電路中巨幀的控制方法,其特征在于,所述在交換控制電路中巨幀的控制方法包括以下步驟:

      步驟一,寄存器堆模塊存儲系統(tǒng)工作所需要的配置和狀態(tài)信息;

      步驟二,千兆MAC模塊實現(xiàn)千兆以太網(wǎng)數(shù)據(jù)鏈路層功能,完成MAC接口數(shù)據(jù)格式與數(shù)據(jù)總線數(shù)據(jù)格式之間的轉(zhuǎn)換;

      步驟三,通過數(shù)據(jù)總線,數(shù)據(jù)幀頭由數(shù)據(jù)表管理模塊進(jìn)行學(xué)習(xí)、解析及老化,數(shù)據(jù)幀內(nèi)容存儲在數(shù)據(jù)緩存內(nèi);

      步驟四,數(shù)據(jù)緩存模塊對接收數(shù)據(jù)進(jìn)行分配空閑內(nèi)存,對發(fā)送數(shù)據(jù)進(jìn)行釋放數(shù)據(jù)內(nèi)存;

      步驟五,根據(jù)地址表管理模塊提供的目的端口轉(zhuǎn)發(fā)表生成多個對應(yīng)端口的發(fā)送描述符,其中發(fā)送描述符根據(jù)QOS屬性進(jìn)入對應(yīng)優(yōu)先級隊列排隊;

      步驟六,根據(jù)數(shù)據(jù)緩存模塊提供的數(shù)據(jù)內(nèi)存地址信息生成多個緩存標(biāo)簽,每個標(biāo)簽對應(yīng)一個頁地址;

      步驟七,對各個優(yōu)先級隊列進(jìn)行調(diào)度,從發(fā)送隊列調(diào)度成功的描述符向數(shù)據(jù)緩存模塊提供發(fā)送幀的頭地址,然后根據(jù)緩存標(biāo)簽鏈表依次向數(shù)據(jù)緩存模塊提供發(fā)送幀的后續(xù)地址;

      步驟八,數(shù)據(jù)緩存模塊根據(jù)描述符管理模塊提供的數(shù)據(jù)內(nèi)存地址,從數(shù)據(jù)緩存中把數(shù)據(jù)傳輸至數(shù)據(jù)總線,然后通過千兆MAC模塊把數(shù)據(jù)交換出去。

      優(yōu)選地,所述在交換控制電路中巨幀的控制方法應(yīng)用于巨幀,巨幀所對應(yīng)的數(shù)據(jù)存儲地址的處理采用兩級鏈表,第一級是發(fā)送隊列鏈表,第二級是緩存標(biāo)簽鏈表。

      優(yōu)選地,所述發(fā)送隊列鏈表記載著該發(fā)送端口各個幀的發(fā)送次序、幀信息以及對應(yīng)的緩存標(biāo)簽。

      優(yōu)選地,所述發(fā)送端口為實現(xiàn)QOS可支持多個發(fā)送隊列,每個發(fā)送隊列大小可動態(tài)調(diào)整,每個發(fā)送隊列表項就是一個描述符,對應(yīng)一幀數(shù)據(jù);所述緩存標(biāo)簽管理每一頁緩存,對于超過256字節(jié)長度的幀,需要多個緩存標(biāo)簽表示,并且通過鏈表來控制管理。

      優(yōu)選地,所述緩存標(biāo)簽鏈表記載著每幀存放的緩存地址。

      優(yōu)選地,所述發(fā)送隊列表項和緩存標(biāo)簽表項的設(shè)計是通過下一個描述符地址和下一個緩存標(biāo)簽地址來維護(hù)鏈表的連續(xù)性,并通過增加頭標(biāo)識和尾標(biāo)識來快速判斷鏈表的狀態(tài);所述發(fā)送隊列中的描述符通過鏈表來控制管理;所述幀數(shù)據(jù)的寫入,緩存標(biāo)簽鏈表都會更新,維護(hù)著每個描述符對應(yīng)幀存放的所有頁地址。

      本發(fā)明的積極進(jìn)步效果在于:本發(fā)明的發(fā)送隊列鏈表和緩存標(biāo)簽共同管理,讀寫發(fā)送隊列描述符和緩存標(biāo)簽都采用雙端口RAM,能同時讀寫不同地址的數(shù)據(jù),提高讀寫描述符和緩存標(biāo)簽的效率;兩級鏈表有效的解決了巨幀的存儲問題,而且硬件結(jié)構(gòu)上的實現(xiàn)也不復(fù)雜。

      附圖說明

      圖1為發(fā)送隊列鏈表和緩存標(biāo)簽鏈表的組織結(jié)構(gòu)圖。

      圖2為發(fā)送隊列表項結(jié)構(gòu)圖。

      圖3為緩存標(biāo)簽表項結(jié)構(gòu)圖。

      圖4為交換控制電路結(jié)構(gòu)框圖。

      圖5為描述符管理模塊結(jié)構(gòu)框圖。

      圖6為標(biāo)準(zhǔn)的二層幀結(jié)構(gòu)的示意圖。

      圖7為巨幀結(jié)構(gòu)的示意圖。

      具體實施方式

      下面結(jié)合附圖給出本發(fā)明較佳實施例,以詳細(xì)說明本發(fā)明的技術(shù)方案。

      本發(fā)明在交換控制電路中巨幀的控制系統(tǒng)包括:

      描述優(yōu)先級調(diào)度模塊:根據(jù)調(diào)度策略,在多個優(yōu)先級隊列中挑選最先被調(diào)度的隊列,把該隊列的首個描述符地址提供給發(fā)送隊列管理模塊;

      發(fā)送隊列管理模塊:根據(jù)接收或發(fā)送數(shù)據(jù),對描述符發(fā)送隊列進(jìn)行寫或度操作,并且根據(jù)優(yōu)先級信息,對各優(yōu)先級隊列進(jìn)行鏈表式管理;

      緩存標(biāo)簽隊列管理模塊:通過存儲在發(fā)送隊列中的描述符所含的緩存標(biāo)簽,對每個數(shù)據(jù)幀所占用的緩存進(jìn)行鏈表式管理;

      空閑隊列管理模塊:釋放和回收發(fā)送隊列表項和緩存標(biāo)簽表項的存儲地址。

      本發(fā)明在交換控制電路中巨幀的控制方法包括以下步驟:

      步驟一,寄存器堆模塊存儲系統(tǒng)工作所需要的配置和狀態(tài)信息;

      步驟二,千兆MAC模塊實現(xiàn)千兆以太網(wǎng)數(shù)據(jù)鏈路層功能,完成MAC接口數(shù)據(jù)格式與數(shù)據(jù)總線數(shù)據(jù)格式之間的轉(zhuǎn)換;

      步驟三,通過數(shù)據(jù)總線,數(shù)據(jù)幀頭由數(shù)據(jù)表管理模塊進(jìn)行學(xué)習(xí)、解析及老化,數(shù)據(jù)幀內(nèi)容存儲在數(shù)據(jù)緩存內(nèi);

      步驟四,數(shù)據(jù)緩存模塊對接收數(shù)據(jù)進(jìn)行分配空閑內(nèi)存,對發(fā)送數(shù)據(jù)進(jìn)行釋放數(shù)據(jù)內(nèi)存;

      步驟五,根據(jù)地址表管理模塊提供的目的端口轉(zhuǎn)發(fā)表生成多個對應(yīng)端口的發(fā)送描述符,其中發(fā)送描述符根據(jù)QOS屬性進(jìn)入對應(yīng)優(yōu)先級隊列排隊,排隊形式如圖1的第一級鏈表;

      步驟六,根據(jù)數(shù)據(jù)緩存模塊提供的數(shù)據(jù)內(nèi)存地址信息生成多個緩存標(biāo)簽,每個標(biāo)簽對應(yīng)一個頁地址,排隊形式如圖1的第二級鏈表;

      步驟七,對各個優(yōu)先級隊列進(jìn)行調(diào)度,從發(fā)送隊列調(diào)度成功的描述符向數(shù)據(jù)緩存模塊提供發(fā)送幀的頭地址,然后根據(jù)緩存標(biāo)簽鏈表依次向數(shù)據(jù)緩存模塊提供發(fā)送幀的后續(xù)地址;

      步驟八,數(shù)據(jù)緩存模塊根據(jù)描述符管理模塊提供的數(shù)據(jù)內(nèi)存地址,從數(shù)據(jù)緩存中把數(shù)據(jù)傳輸至數(shù)據(jù)總線,然后通過千兆MAC模塊把數(shù)據(jù)交換出去。

      如圖1至圖4所示,本發(fā)明是一種在交換控制電路中巨幀的控制方法,每個端口都有兩級鏈表用于維護(hù)該端口的發(fā)送隊列。巨幀所對應(yīng)的數(shù)據(jù)存儲地址的處理采用兩級鏈表,第一級是發(fā)送隊列鏈表,第二級是緩存標(biāo)簽鏈表。

      發(fā)送隊列鏈表記載著該發(fā)送端口各個幀的發(fā)送次序、幀信息以及對應(yīng)的緩存標(biāo)簽。緩存標(biāo)簽鏈表記載著每幀存放的緩存地址。

      每個發(fā)送端口為實現(xiàn)QOS可支持多個發(fā)送隊列(TXQ),每個發(fā)送隊列大小可動態(tài)調(diào)整,每個發(fā)送隊列表項就是一個描述符,對應(yīng)一幀數(shù)據(jù)。對于同一發(fā)送隊列中的描述符,通過鏈表來控制管理。

      每一頁緩存由一個緩存標(biāo)簽(Buffer Tag)管理,對于超過256字節(jié)長度的幀,需要多個緩存標(biāo)簽表示,并且通過鏈表來控制管理。若一個9728字節(jié)的巨幀,需要38個緩存標(biāo)簽,此38個標(biāo)簽通過下一個緩存標(biāo)簽地址進(jìn)行鏈表式管理。

      兩級鏈表的維護(hù)分別通過讀寫描述符狀態(tài)機和讀寫緩存標(biāo)簽狀態(tài)機來實現(xiàn)。

      每頁幀數(shù)據(jù)的寫入,緩存標(biāo)簽鏈表都會更新,維護(hù)著每個描述符對應(yīng)幀存放的所有頁地址。當(dāng)收到長幀的第一頁內(nèi)容,會寫一個緩存標(biāo)簽,記錄該256字節(jié)的頁地址,同時幀頭狀態(tài)置1,幀尾狀態(tài)置0,下一個緩存標(biāo)簽地址指向空閑的緩存標(biāo)簽鏈表的頭指針;等收到下一頁內(nèi)容,另外寫一個緩存標(biāo)簽,記錄剩余字節(jié)存放的頁地址,幀頭狀態(tài)置0,幀尾狀態(tài)置1,同時把該幀的前一個緩存標(biāo)簽的下一個緩存標(biāo)簽地址域更新為當(dāng)前緩存標(biāo)簽地址。

      當(dāng)需要發(fā)送長幀時,通過描述符的緩存標(biāo)簽域找到緩存標(biāo)簽鏈表的位置,從中找到發(fā)送幀的頁地址,若讀到幀尾標(biāo)識為1,根據(jù)下一個緩存標(biāo)簽地址繼續(xù)讀下一個緩存標(biāo)簽,直至讀取到幀尾標(biāo)識為1,此幀才讀取完畢。

      在描述符的設(shè)計中,若以256字節(jié)為一頁為前提,在最長幀只支持1518字節(jié)的交換機中,設(shè)計一個描述符或一個擴(kuò)展類型的描述符對應(yīng)一個幀就能滿足要求,而對于支持巨幀的設(shè)備,此種設(shè)計已不滿足要求,單個描述符已不可能包含巨幀數(shù)據(jù)的所有頁地址。

      描述符管理模塊是交換控制電路中的重要功能模塊,主要負(fù)責(zé)幀存儲地址的管理和優(yōu)先級隊列的調(diào)度,而兩級鏈表是幀存儲地址管理的一種實現(xiàn)方式。

      綜上所述,本發(fā)明的發(fā)送隊列鏈表和緩存標(biāo)簽共同管理,讀寫發(fā)送隊列描述符和緩存標(biāo)簽都采用雙端口RAM,能同時讀寫不同地址的數(shù)據(jù),提高讀寫描述符和緩存標(biāo)簽的效率;兩級鏈表有效的解決了巨幀的存儲問題,而且硬件結(jié)構(gòu)上的實現(xiàn)也不復(fù)雜。

      以上所述的具體實施例,對本發(fā)明的解決的技術(shù)問題、技術(shù)方案和有益效果進(jìn)行了進(jìn)一步詳細(xì)說明,所應(yīng)理解的是,以上所述僅為本發(fā)明的具體實施例而已,并不用于限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi),所做的任何修改、等同替換、改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。

      當(dāng)前第1頁1 2 3 
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評論。精彩留言會獲得點贊!
      1