本發(fā)明涉及光通信技術(shù)領(lǐng)域,具體涉及一種100gepon系統(tǒng)中下行業(yè)務(wù)的發(fā)送系統(tǒng)及其發(fā)送方法。
背景技術(shù):
隨著4k/8k超高清視頻、虛擬vr/ar、智慧家庭、物聯(lián)網(wǎng)等新技術(shù)、新應(yīng)用的發(fā)展,全球超寬帶產(chǎn)業(yè)新一輪提速浪潮正拉開(kāi)序幕,在光接入領(lǐng)域,100gepon的標(biāo)準(zhǔn)化工作已經(jīng)啟動(dòng)。100gepon的目前計(jì)劃采用單光通道25g傳輸速率,四個(gè)光通道波分復(fù)用為100g的方式來(lái)實(shí)現(xiàn)100g的總帶寬。
在onu側(cè),根據(jù)用戶的帶寬需求,可以激活1-4個(gè)波長(zhǎng)的接收和發(fā)送。對(duì)應(yīng)支持多種速率onu。目前基本確定可以存在25g單波長(zhǎng)onu,50g雙波長(zhǎng)onu,100g四波長(zhǎng)onu三種類型。每種類型的onu還可以根據(jù)激活的上行波長(zhǎng)進(jìn)行細(xì)分如下:
100g四波長(zhǎng)onu:下行100g速率,上行可以為25g,50g,100g速率三種級(jí)別。
50g雙波長(zhǎng)onu:下行50g速率,上行可以為25g,50g,速率二種級(jí)別。
25g單波長(zhǎng)onu:下行25g速率,上行可以為25g,10g速率兩種級(jí)別。
從上述onu波長(zhǎng)對(duì)應(yīng)關(guān)系可知:100g速率的onu下行可以接收到所有波長(zhǎng)的數(shù)據(jù)信息。50gonu和25g的onu均只能接收到本速率定義的對(duì)應(yīng)波長(zhǎng)的信息。25gonu和50gonu的下行通道在光空間隔離。100gonu下行通道和25gonu,50gonu復(fù)用部分光通道。
在傳統(tǒng)的基于twdm方式的epon和gpon系統(tǒng)中,epon定義了廣播llid(llid=0xff)作為單拷貝廣播(scb)信道,用于高效傳輸下行視頻廣播/組播業(yè)務(wù)。對(duì)于單播業(yè)務(wù),epon定義了單播llid信道,可以將單波數(shù)據(jù)有效發(fā)送。但是對(duì)于100gepon系統(tǒng),因?yàn)樵诓煌俾实膐nu使用不同的波長(zhǎng),需要將下行視頻廣播/組播業(yè)務(wù)準(zhǔn)確的傳輸至不同速率的onu設(shè)備,如果僅定義單播llid信道,則廣播信息不能到達(dá)所有的onu設(shè)備。對(duì)于單播業(yè)務(wù),也存在根據(jù)onu的速率,來(lái)決定單播數(shù)據(jù)對(duì)應(yīng)的光通道問(wèn)題,僅定義單播llid信道也無(wú)法滿足不同速率的單播業(yè)務(wù)的需求。
因此,亟需一種能實(shí)現(xiàn)將下行視頻廣播/組播業(yè)務(wù)準(zhǔn)確傳輸至多個(gè)不同速率onu設(shè)備的發(fā)送方案。
技術(shù)實(shí)現(xiàn)要素:
針對(duì)現(xiàn)有技術(shù)中存在的缺陷,本發(fā)明的目的在于提供一種100gepon系統(tǒng)中下行業(yè)務(wù)的發(fā)送系統(tǒng)及其發(fā)送方法,實(shí)現(xiàn)將epon下行業(yè)務(wù)準(zhǔn)確傳輸至多個(gè)不同速率onu設(shè)備。
為達(dá)到以上目的,本發(fā)明采取的技術(shù)方案是:一種100gepon系統(tǒng)中下行業(yè)務(wù)的發(fā)送系統(tǒng),包括:映射表模塊、入隊(duì)判決機(jī)制模塊和多個(gè)支持不同速率的客戶層模塊,每個(gè)客戶層模塊支持不同的速率且與其速率相同的下行光網(wǎng)絡(luò)單元onu光信道連接,其中:所述映射表模塊包括映射表,所述映射表用于存儲(chǔ)各邏輯鏈路標(biāo)識(shí)llid的屬性;所述入隊(duì)判決機(jī)制模塊用于接收由olt輸入的數(shù)據(jù)包并從數(shù)據(jù)包中讀取數(shù)據(jù)包的目的llid;查詢所述映射表以判斷數(shù)據(jù)包的目的llid的屬性,并根據(jù)目的llid的屬性確定數(shù)據(jù)包應(yīng)當(dāng)發(fā)送至哪些/哪個(gè)客戶層模塊;再將數(shù)據(jù)包發(fā)送至對(duì)應(yīng)的客戶層模塊;各所述客戶層模塊均用于緩存所述入隊(duì)判決機(jī)制模塊輸入的數(shù)據(jù)包并將數(shù)據(jù)包寫(xiě)入其連接的下行onu光信道。
在上述技術(shù)方案的基礎(chǔ)上,所述各llid的屬性包括各llid支持的速率、各llid的廣播特性以及各llid是否處于激活狀態(tài)。
在上述技術(shù)方案的基礎(chǔ)上,所述100gepon系統(tǒng)中下行業(yè)務(wù)的發(fā)送系統(tǒng)包括三個(gè)客戶層模塊,分別為25g客戶層模塊,50g客戶層模塊和100g客戶層模塊,所述25g客戶層模塊連接25g下行onu光信道,所述50g客戶層模塊連接50g下行onu光信道,所述100g客戶層模塊連接100g下行onu光信道。
在上述技術(shù)方案的基礎(chǔ)上,所述客戶層模塊包括數(shù)據(jù)包準(zhǔn)入單元、緩存空間讀寫(xiě)單元、緩存空間、隊(duì)列讀寫(xiě)單元、隊(duì)列空間和輸出單元,其中:
數(shù)據(jù)包準(zhǔn)入單元用于接收入隊(duì)判決機(jī)制模塊輸入的數(shù)據(jù)包并從數(shù)據(jù)包中讀取數(shù)據(jù)包支持的客戶層模塊的速率,判斷數(shù)據(jù)包支持的客戶層模塊的速率是否包含本客戶層模塊支持的速率,若包含,將數(shù)據(jù)包發(fā)送至緩存空間讀寫(xiě)單元等待寫(xiě)入;若不包含,丟棄該數(shù)據(jù)包;緩存空間讀寫(xiě)單元判斷緩存空間和隊(duì)列空間的空間是否均是可寫(xiě)入狀態(tài),若均是,將數(shù)據(jù)包準(zhǔn)入單元準(zhǔn)許寫(xiě)入的數(shù)據(jù)包寫(xiě)入緩存模塊;若緩存空間和隊(duì)列空間的空間并非均是可寫(xiě)入狀態(tài),丟棄該數(shù)據(jù)包;
緩存空間讀寫(xiě)單元用于將數(shù)據(jù)包準(zhǔn)入單元準(zhǔn)許寫(xiě)入的數(shù)據(jù)包寫(xiě)入緩存空間;
緩存空間用于存儲(chǔ)緩存空間讀寫(xiě)單元寫(xiě)入的數(shù)據(jù)包;
隊(duì)列讀寫(xiě)單元用于將緩存空間中的數(shù)據(jù)包的條目信息寫(xiě)入隊(duì)列空間;
隊(duì)列空間用于存儲(chǔ)隊(duì)列讀寫(xiě)單元寫(xiě)入的緩存空間中數(shù)據(jù)包的條目信息;
輸出單元用于根據(jù)隊(duì)列空間中數(shù)據(jù)包的條目信息的讀取緩存空間中的數(shù)據(jù)包并將數(shù)據(jù)包寫(xiě)入下行onu光信道。
在上述技術(shù)方案的基礎(chǔ)上,所述數(shù)據(jù)包的條目信息包括數(shù)據(jù)包在所述緩存空間中的位置指針。
在上述技術(shù)方案的基礎(chǔ)上,所述數(shù)據(jù)包的條目信息還包括數(shù)據(jù)包支持的客戶層模塊的速率,數(shù)據(jù)包的廣播屬性和數(shù)據(jù)包的長(zhǎng)度指示。
本發(fā)明還公開(kāi)了一種采用100gepon系統(tǒng)中下行業(yè)務(wù)的發(fā)送系統(tǒng)的發(fā)送方法,包括以下步驟:
s1,所述入隊(duì)判決機(jī)制模塊接收數(shù)據(jù)包并從數(shù)據(jù)包中讀取數(shù)據(jù)包的目的llid;
s2,所述入隊(duì)判決機(jī)制模塊查詢所述映射表模塊中的映射表以判斷數(shù)據(jù)包的目的llid的屬性;
s3,所述入隊(duì)判決機(jī)制模塊根據(jù)目的llid的屬性確定數(shù)據(jù)包應(yīng)當(dāng)發(fā)送至哪些/哪個(gè)客戶層模塊,再將數(shù)據(jù)包發(fā)送至對(duì)應(yīng)的客戶層模塊;
s4,各所述客戶層模塊緩存所述入隊(duì)判決機(jī)制模塊輸入的數(shù)據(jù)包并將數(shù)據(jù)包寫(xiě)入其連接的下行onu光信道。
在上述技術(shù)方案的基礎(chǔ)上,步驟s4包括:
s401,數(shù)據(jù)包準(zhǔn)入單元接收所述入隊(duì)判決機(jī)制模塊輸入的數(shù)據(jù)包并從數(shù)據(jù)包中讀取數(shù)據(jù)包支持的客戶層模塊的速率,判斷數(shù)據(jù)包支持的客戶層模塊的速率是否包含本客戶層模塊支持的速率;若是,進(jìn)入步驟s402;若否,進(jìn)入步驟s406;
s402,緩存讀寫(xiě)單元判斷緩存空間和隊(duì)列空間的空間是否均是可寫(xiě)入狀態(tài),若均是,進(jìn)入步驟s403;若有一項(xiàng)為否,進(jìn)入步驟s406;
s403,緩存讀寫(xiě)單元將數(shù)據(jù)包準(zhǔn)入單元準(zhǔn)許寫(xiě)入的數(shù)據(jù)包寫(xiě)入緩存空間;
s404,隊(duì)列讀寫(xiě)單元將緩存空間中的數(shù)據(jù)包的條目信息寫(xiě)入隊(duì)列空間;
s405,輸出單元根據(jù)隊(duì)列空間中數(shù)據(jù)包的條目信息的讀取緩存空間中的數(shù)據(jù)包并將數(shù)據(jù)包寫(xiě)入下行onu光信道,結(jié)束;
s406,丟棄該數(shù)據(jù)包,結(jié)束。
在上述技術(shù)方案的基礎(chǔ)上,所述數(shù)據(jù)包的條目信息包括數(shù)據(jù)包在所述緩存空間中的位置指針。
在上述技術(shù)方案的基礎(chǔ)上,所述數(shù)據(jù)包的條目信息還包括數(shù)據(jù)包支持的客戶層模塊的速率,數(shù)據(jù)包的廣播屬性和數(shù)據(jù)包的長(zhǎng)度指示。
與現(xiàn)有技術(shù)相比,本發(fā)明的優(yōu)點(diǎn)在于:
本發(fā)明采用映射表模塊、入隊(duì)判決機(jī)制模塊和多個(gè)支持不同速率的客戶層模塊,每個(gè)客戶層模塊支持不同的速率且與其速率相同的下行onu光信道連接,通過(guò)入隊(duì)判決機(jī)制模塊確定數(shù)據(jù)包應(yīng)當(dāng)發(fā)送至哪些/哪個(gè)客戶層模塊,再將數(shù)據(jù)包發(fā)送至對(duì)應(yīng)的客戶層模塊,各客戶層模塊將數(shù)據(jù)包寫(xiě)入其連接的下行onu光信道,從而實(shí)現(xiàn)將epon下行業(yè)務(wù)準(zhǔn)確傳輸至多個(gè)不同速率onu設(shè)備。
附圖說(shuō)明
圖1為本發(fā)明實(shí)施例中100gepon系統(tǒng)中下行業(yè)務(wù)的發(fā)送系統(tǒng)的結(jié)構(gòu)示意圖;
圖2為本發(fā)明實(shí)施例中100gepon系統(tǒng)中下行業(yè)務(wù)的發(fā)送系統(tǒng)的發(fā)送方法的流程示意圖。
具體實(shí)施方式
以下結(jié)合附圖及實(shí)施例對(duì)本發(fā)明作進(jìn)一步詳細(xì)說(shuō)明。
參見(jiàn)圖1所示,本發(fā)明實(shí)施例提供一種100gepon系統(tǒng)中下行業(yè)務(wù)的發(fā)送系統(tǒng),包括映射表模塊、入隊(duì)判決機(jī)制模塊和多個(gè)支持不同速率的客戶層模塊,每個(gè)客戶層模塊支持不同的速率且與其速率相同的下行onu光信道連接,其中:映射表模塊包括映射表,映射表用于存儲(chǔ)各llid的屬性;入隊(duì)判決機(jī)制模塊用于接收由olt輸入的數(shù)據(jù)包并從數(shù)據(jù)包中讀取數(shù)據(jù)包的目的llid;查詢映射表模塊中的映射表以判斷數(shù)據(jù)包的目的llid的屬性,并根據(jù)目的llid的屬性確定數(shù)據(jù)包應(yīng)當(dāng)發(fā)送至哪些/哪個(gè)客戶層模塊;再將數(shù)據(jù)包發(fā)送至對(duì)應(yīng)的客戶層模塊;各客戶層模塊均用于緩存入隊(duì)判決機(jī)制模塊輸入的數(shù)據(jù)包并將數(shù)據(jù)包寫(xiě)入其連接的下行onu光信道。其中,epon(ethernetpassiveopticalnetwork)指以太網(wǎng)無(wú)源光網(wǎng)絡(luò)。onu(opticalnetworkunit)指光網(wǎng)絡(luò)單元。olt(opticallineterminal)指光線路終端。100gepon系統(tǒng)中下行業(yè)務(wù)的發(fā)送系統(tǒng)用于將由olt輸入的數(shù)據(jù)包發(fā)送至下行onu光信道。
本發(fā)明采用映射表模塊、入隊(duì)判決機(jī)制模塊和多個(gè)支持不同速率的客戶層模塊,每個(gè)客戶層模塊支持不同的速率且與其速率相同的下行onu光信道連接,通過(guò)入隊(duì)判決機(jī)制模塊確定數(shù)據(jù)包應(yīng)當(dāng)發(fā)送至哪些/哪個(gè)客戶層模塊,再將數(shù)據(jù)包發(fā)送至對(duì)應(yīng)的客戶層模塊,各客戶層模塊將數(shù)據(jù)包寫(xiě)入其連接的下行onu光信道,從而實(shí)現(xiàn)將epon下行業(yè)務(wù)準(zhǔn)確傳輸至多個(gè)不同速率onu設(shè)備。
各llid的屬性包括各llid支持的速率、各llid的廣播特性以及各llid是否處于激活狀態(tài)。100gepon系統(tǒng)中下行業(yè)務(wù)的發(fā)送系統(tǒng)包括三個(gè)客戶層模塊,分別為25g客戶層模塊,50g客戶層模塊和100g客戶層模塊,25g客戶層模塊,25g客戶層模塊連接25g下行onu光信道,50g客戶層模塊連接50g下行onu光信道,100g客戶層模塊連接100g下行onu光信道。
各客戶層模塊均包括數(shù)據(jù)包準(zhǔn)入單元、緩存空間讀寫(xiě)單元、緩存空間、隊(duì)列讀寫(xiě)單元、隊(duì)列空間和輸出單元,其中:數(shù)據(jù)包準(zhǔn)入單元用于接收入隊(duì)判決機(jī)制模塊輸入的數(shù)據(jù)包并從數(shù)據(jù)包中讀取數(shù)據(jù)包支持的客戶層模塊的速率,判斷數(shù)據(jù)包支持的客戶層模塊的速率是否包含本客戶層模塊支持的速率,若包含,將數(shù)據(jù)包發(fā)送至緩存空間讀寫(xiě)單元等待寫(xiě)入;若不包含,丟棄該數(shù)據(jù)包;緩存空間讀寫(xiě)單元判斷緩存空間和隊(duì)列空間的空間是否均是可寫(xiě)入狀態(tài),若均是,將數(shù)據(jù)包準(zhǔn)入單元準(zhǔn)許寫(xiě)入的數(shù)據(jù)包寫(xiě)入緩存模塊;若或緩存空間和隊(duì)列空間的空間并非均是可寫(xiě)入狀態(tài),丟棄該數(shù)據(jù)包;
緩存空間讀寫(xiě)單元用于將數(shù)據(jù)包準(zhǔn)入單元準(zhǔn)許寫(xiě)入的數(shù)據(jù)包寫(xiě)入緩存空間;緩存空間用于存儲(chǔ)緩存空間讀寫(xiě)單元寫(xiě)入的數(shù)據(jù)包;隊(duì)列讀寫(xiě)單元用于將緩存空間中的數(shù)據(jù)包的條目信息寫(xiě)入隊(duì)列空間;隊(duì)列空間用于存儲(chǔ)隊(duì)列讀寫(xiě)單元寫(xiě)入的緩存空間中數(shù)據(jù)包的條目信息;輸出單元用于根據(jù)隊(duì)列空間中數(shù)據(jù)包的條目信息的讀取緩存空間中的數(shù)據(jù)包并將數(shù)據(jù)包寫(xiě)入下行onu光信道。數(shù)據(jù)包的條目信息包括數(shù)據(jù)包在緩存空間中的位置指針。數(shù)據(jù)包的條目信息還包括數(shù)據(jù)包支持的客戶層模塊的速率,數(shù)據(jù)包的廣播屬性和數(shù)據(jù)包的長(zhǎng)度指示。
數(shù)據(jù)包準(zhǔn)入單元先判斷數(shù)據(jù)包支持的客戶層模塊的速率是否包含本客戶層模塊支持的速率,用以校驗(yàn)數(shù)據(jù)包是否被發(fā)送到了正確的客戶層模塊,保證數(shù)據(jù)傳輸?shù)臏?zhǔn)確性。
數(shù)據(jù)包準(zhǔn)入單元再判斷緩存空間和隊(duì)列空間的空間是否均是可寫(xiě)入狀態(tài),若均是,才準(zhǔn)許該數(shù)據(jù)包寫(xiě)入緩存模塊,用以保證數(shù)據(jù)寫(xiě)入不因?yàn)槲锢砜臻g不足出現(xiàn)錯(cuò)誤,避免傳輸?shù)臄?shù)據(jù)出現(xiàn)丟失。
隊(duì)列空間存儲(chǔ)隊(duì)列讀寫(xiě)單元寫(xiě)入的緩存空間中數(shù)據(jù)包的條目信息,數(shù)據(jù)包的條目信息包括數(shù)據(jù)包在緩存空間中的位置指針,還包括數(shù)據(jù)包支持的客戶層模塊的速率,數(shù)據(jù)包的廣播屬性和數(shù)據(jù)包的長(zhǎng)度指示。輸出單元根據(jù)隊(duì)列空間中數(shù)據(jù)包的條目信息的讀取緩存空間中的數(shù)據(jù)包并將數(shù)據(jù)包寫(xiě)入下行onu光信道,用以保證數(shù)據(jù)包被發(fā)送到了正確的下行onu光信道,保證數(shù)據(jù)傳輸?shù)臏?zhǔn)確性。
參見(jiàn)圖2所示,本發(fā)明還公開(kāi)了一種采用100gepon系統(tǒng)中下行業(yè)務(wù)的發(fā)送系統(tǒng)的發(fā)送方法,包括以下步驟:
s1,入隊(duì)判決機(jī)制模塊接收數(shù)據(jù)包并從數(shù)據(jù)包中讀取數(shù)據(jù)包的目的llid;
表1入隊(duì)判決機(jī)制模塊接收的數(shù)據(jù)包信息
s2,入隊(duì)判決機(jī)制模塊查詢映射表模塊中的映射表以判斷數(shù)據(jù)包的目的llid的屬性;通過(guò)輸入變量dest_llid_inex查詢映射表以判斷數(shù)據(jù)包的目的llid的屬性;
表2映射表模塊中的映射表
s3,入隊(duì)判決機(jī)制模塊根據(jù)目的llid的屬性確定數(shù)據(jù)包應(yīng)當(dāng)發(fā)送至哪些/哪個(gè)客戶層模塊,再將數(shù)據(jù)包發(fā)送至對(duì)應(yīng)的客戶層模塊;從入隊(duì)判決機(jī)制模塊輸出的數(shù)據(jù)包中,丟棄了查表結(jié)果llid_active=0的數(shù)據(jù)包。
表3入隊(duì)判決機(jī)制模塊輸出的數(shù)據(jù)包信息
s4,各客戶層模塊緩存入隊(duì)判決機(jī)制模塊輸入的數(shù)據(jù)包并將數(shù)據(jù)包寫(xiě)入其連接的下行onu光信道。
步驟s4包括:
s401,數(shù)據(jù)包準(zhǔn)入單元接收入隊(duì)判決機(jī)制模塊輸入的數(shù)據(jù)包并從數(shù)據(jù)包中讀取數(shù)據(jù)包支持的客戶層模塊的速率,判斷數(shù)據(jù)包支持的客戶層模塊的速率是否包含本客戶層模塊支持的速率;若是,進(jìn)入步驟s402;若否,進(jìn)入步驟s406;
s402,緩存讀寫(xiě)單元判斷緩存空間和隊(duì)列空間的空間是否均是可寫(xiě)入狀態(tài),若均是,進(jìn)入步驟s403;若有一項(xiàng)為否,進(jìn)入步驟s406;
s403,緩存讀寫(xiě)單元將數(shù)據(jù)包準(zhǔn)入單元準(zhǔn)許寫(xiě)入的數(shù)據(jù)包寫(xiě)入緩存空間;
s404,隊(duì)列讀寫(xiě)單元將緩存空間中的數(shù)據(jù)包的條目信息寫(xiě)入隊(duì)列空間;
s405,輸出單元根據(jù)隊(duì)列空間中數(shù)據(jù)包的條目信息的讀取緩存空間中的數(shù)據(jù)包并將數(shù)據(jù)包寫(xiě)入下行onu光信道,結(jié)束;
s406,丟棄該數(shù)據(jù)包,結(jié)束。
數(shù)據(jù)包的條目信息包括數(shù)據(jù)包在緩存空間中的位置指針。數(shù)據(jù)包的條目信息還包括數(shù)據(jù)包支持的客戶層模塊的速率,數(shù)據(jù)包的廣播屬性和數(shù)據(jù)包的長(zhǎng)度指示。
例如,步驟s4的具體步驟包括:
s401,數(shù)據(jù)包準(zhǔn)入單元發(fā)現(xiàn)前級(jí)組件輸入了一個(gè)數(shù)據(jù)包并且處于包頭位置(sop),首先判斷輸入變量llid_rate_ind指示的mac組件定義是否包含本組件。如果不包含,此數(shù)據(jù)包被忽略,不進(jìn)行后續(xù)操作。如果包含,此數(shù)據(jù)包繼續(xù)進(jìn)行步驟s402操作。
s402,數(shù)據(jù)包準(zhǔn)入單元判斷緩存空間讀寫(xiě)單元輸入變量:buffer_full和隊(duì)列空間讀寫(xiě)單元輸入變量description_full。如果buffer_full=0&&description_full=0.則說(shuō)明兩個(gè)緩存空間都不是滿狀態(tài),此時(shí)可以進(jìn)行步驟3,啟動(dòng)數(shù)據(jù)包頭(sop)寫(xiě)入操作。如果buffer_full,description_full任何一個(gè)參數(shù)為1.說(shuō)明對(duì)應(yīng)緩存空間滿,數(shù)據(jù)被丟棄,不進(jìn)行后續(xù)操作。
s403包括數(shù)據(jù)包頭(sop)寫(xiě)入操作:
啟動(dòng)數(shù)據(jù)包頭(sop)寫(xiě)入操作包含以下步驟:
將前級(jí)輸入的packet_data送到緩存空間讀寫(xiě)單元;
將前級(jí)輸入的dest_llid鎖存;
將前級(jí)輸入的llid_rate_ind進(jìn)行解析,得出輸入數(shù)據(jù)包的屬性變量broadcast_attri并鎖存。
llid_rate_ind解析準(zhǔn)則如下:如果llid_rate_ind唯一包含本mac組件定義,則定義為單播數(shù)據(jù)包,broadcast_attri<=0.否則broadcast_attri<=1.
啟動(dòng)據(jù)包頭(sop)寫(xiě)入操作還包括:
數(shù)據(jù)包準(zhǔn)入單元每次將packet_data送到緩存空間讀寫(xiě)單元進(jìn)行寫(xiě)入的同時(shí),緩存讀寫(xiě)單元對(duì)已經(jīng)送入的數(shù)據(jù)進(jìn)行長(zhǎng)度統(tǒng)計(jì),得到packrt_len數(shù)據(jù)包長(zhǎng)度變量并鎖存。將緩存空間寫(xiě)指針packet_wr_pointer進(jìn)行鎖存
在啟動(dòng)據(jù)包頭寫(xiě)入操作完成后,進(jìn)行數(shù)據(jù)包寫(xiě)入操作:
緩存讀寫(xiě)單元判斷變量:buffer_full,如果buffer_full=0,則說(shuō)明緩存空間可以繼續(xù)進(jìn)行數(shù)據(jù)存儲(chǔ)。則繼續(xù)將輸入的packet_data送到緩存空間讀寫(xiě)單元,對(duì)已經(jīng)送入的數(shù)據(jù)繼續(xù)進(jìn)行長(zhǎng)度統(tǒng)計(jì),得到packrt_len數(shù)據(jù)包長(zhǎng)度變量并鎖存。在此步驟,如果前級(jí)組件輸入了一個(gè)數(shù)據(jù)包并且處于包尾位置(eop),轉(zhuǎn)到數(shù)據(jù)包尾(eop)寫(xiě)入操作。
如果buffer_full=1,則說(shuō)明緩存空間已經(jīng)滿,不能進(jìn)行數(shù)據(jù)包緩存,此時(shí)向緩存間讀寫(xiě)引擎發(fā)出寫(xiě)指針重置指令,通過(guò)寫(xiě)指針重置的方式丟棄已經(jīng)寫(xiě)入的數(shù)據(jù)。轉(zhuǎn)到步驟1。
s403還包括數(shù)據(jù)包尾(eop)寫(xiě)入操作。
緩存讀寫(xiě)單元判斷變量:buffer_full,如果buffer_full=0,則說(shuō)明緩存空間可以繼續(xù)進(jìn)行數(shù)據(jù)存儲(chǔ)。則將前級(jí)輸入的packet_data送到緩存空間讀寫(xiě)單元,對(duì)已經(jīng)送入的數(shù)據(jù)繼續(xù)進(jìn)行長(zhǎng)度統(tǒng)計(jì),得到packrt_len數(shù)據(jù)包長(zhǎng)度變量并鎖存。完成以上操作后,啟動(dòng)隊(duì)列空間讀寫(xiě)單元,將packrt_len,broadcast_attri,llid_rate_ind,packet_rd_pointer寫(xiě)到隊(duì)列空間的一個(gè)條目中,完成整個(gè)數(shù)據(jù)包的完整寫(xiě)入過(guò)程。
s404,隊(duì)列空間讀寫(xiě)單元判斷隊(duì)列空間是否存在一個(gè)有效的數(shù)據(jù)包的條目信息,如果存在,讀出此條目信息的內(nèi)容。數(shù)據(jù)包的條目信息為數(shù)據(jù)包準(zhǔn)入單元寫(xiě)入的內(nèi)容,具體如下表所示:
表4數(shù)據(jù)包的條目信息
s405,輸出單元根據(jù)packet_rd_pointer所指示的指針讀取緩存空間的數(shù)據(jù)并輸出至與其連接的下行onu光信道,同步統(tǒng)計(jì)已經(jīng)送出的數(shù)據(jù)包的字節(jié)長(zhǎng)度:packrt_len_num。將packrt_len字段和packrt_len_num進(jìn)行比較,如果packrt_len_num<packrt_len,則說(shuō)明一個(gè)完整的數(shù)據(jù)包還沒(méi)有全部讀出,將packet_rd_pointer進(jìn)行加1操作。根據(jù)最新的packet_rd_pointer重復(fù)步驟405.如果packrt_len_num>=packrt_len,則說(shuō)明一個(gè)完整的數(shù)據(jù)包已經(jīng)輸出完畢。進(jìn)行下一個(gè)數(shù)據(jù)包的讀出操作。
本發(fā)明不局限于上述實(shí)施方式,對(duì)于本技術(shù)領(lǐng)域的普通技術(shù)人員來(lái)說(shuō),在不脫離本發(fā)明原理的前提下,還可以做出若干改進(jìn)和潤(rùn)飾,這些改進(jìn)和潤(rùn)飾也視為本發(fā)明的保護(hù)范圍之內(nèi)。本說(shuō)明書(shū)中未作詳細(xì)描述的內(nèi)容屬于本領(lǐng)域?qū)I(yè)技術(shù)人員公知的現(xiàn)有技術(shù)。