本技術(shù)涉及通信領(lǐng)域,尤其涉及一種數(shù)據(jù)流的解交織的方法、設(shè)備和系統(tǒng)。
背景技術(shù):
1、在以太網(wǎng)數(shù)據(jù)傳輸過程中,由于環(huán)境干擾、系統(tǒng)誤差等多種因素,數(shù)據(jù)接收端所接收到的數(shù)據(jù)與數(shù)據(jù)發(fā)送端所發(fā)送出的數(shù)據(jù)之間會存在不一致,即誤碼不可避免?,F(xiàn)前向糾錯(forward?error?correction,fec)以及交織器(interleaver)等手段可以降低誤碼率(bit?error?rate,ber)。交織器輸出的數(shù)據(jù)經(jīng)過通信信道傳輸至數(shù)據(jù)接收端,輸入數(shù)據(jù)接收端的解交織器進(jìn)行解交織,然后進(jìn)入fec解碼器進(jìn)行解碼。
2、為了確定正確的解交織位置,數(shù)據(jù)發(fā)送端通常數(shù)據(jù)中周期性地插入專門用于確定解交織位置的固定數(shù)據(jù)段,數(shù)據(jù)接收端通過尋找這些固定數(shù)據(jù)段來判斷出正確的解交織位置。然而,這種方式需要在原有需要傳輸?shù)臄?shù)據(jù)之外再額外傳輸一段固定數(shù)據(jù)段,從而帶來更高的傳輸成本。
技術(shù)實現(xiàn)思路
1、提供了一種數(shù)據(jù)流的解交織的方法,用于解決插入固定數(shù)據(jù)段導(dǎo)致的解交織效率低以及網(wǎng)絡(luò)傳輸效率低的技術(shù)問題。
2、第一方面,提供了一種數(shù)據(jù)流的解交織的方法,該方法包括,獲取經(jīng)過前向糾錯fec編碼的第一交織數(shù)據(jù)流,基于第一交織數(shù)據(jù)流的交織粒度,獲得第一交織數(shù)據(jù)流對應(yīng)的n條子數(shù)據(jù)流,n為第一交織數(shù)據(jù)流的交織深度,且n為大于1的正整數(shù),基于n條子數(shù)據(jù)流中至少兩條子數(shù)據(jù)流的fec碼字邊界,確定解交織位置,基于該解交織位置,根據(jù)第一交織數(shù)據(jù)流獲得第一解交織數(shù)據(jù)流。其中,解交織位置又可以稱為正確的解交織位置,即用于正確的執(zhí)行解交織過程,恢復(fù)出原始碼字、及原始碼字的相對順序,以便于恢復(fù)出編碼前的數(shù)據(jù)流的位置。通過該方法,無需插入額外的專門用于尋找解交織位置的固定數(shù)據(jù)段,即可完成解交織,正確恢復(fù)數(shù)據(jù)。從而避免增加額外數(shù)據(jù),節(jié)省硬件資源,提高解交織效率,同時降低傳輸成本,提升網(wǎng)絡(luò)效率。
3、在一種可能的實現(xiàn)方式中,n條子數(shù)據(jù)流按照順序排列,所述基于所述n條子數(shù)據(jù)流中至少兩條子數(shù)據(jù)流的fec碼字邊界,確定解交織位置,包括:基于第一子數(shù)據(jù)流的fec碼字邊界在第二子數(shù)據(jù)流的fec碼字邊界之后,確定所述解交織位置為所述第二子數(shù)據(jù)流的fec碼字邊界;其中,所述第一子數(shù)據(jù)流和所述第二子數(shù)據(jù)流為所述n條子數(shù)據(jù)流中的兩條相鄰子數(shù)據(jù)流。其中,fec碼字邊界的先后順序是指fec碼字邊界位置上的數(shù)據(jù)在第一交織數(shù)據(jù)流中傳輸?shù)南群箜樞?,或稱為快慢順序。當(dāng)發(fā)現(xiàn)相鄰的兩條子數(shù)據(jù)流的fec碼字邊界存在差異時,fec碼字邊界在先的子數(shù)據(jù)流即為傳輸更快的子數(shù)據(jù)流,該傳輸更快的子數(shù)據(jù)流的fec碼字邊界即為正確的解交織位置。
4、在一種可能的實現(xiàn)方式中,所述第一子數(shù)據(jù)流的排列順序在所述第二子數(shù)據(jù)流之前。
5、在一種可能的實現(xiàn)方式中,所述第一子數(shù)據(jù)流的fec碼字邊界與所述第二子數(shù)據(jù)流的fec碼字邊界相差1個符號。
6、在一種可能的實現(xiàn)方式中,所述n條子數(shù)據(jù)流按照順序排列,所述基于所述n條子數(shù)據(jù)流中至少兩條子數(shù)據(jù)流的fec碼字邊界,確定解交織位置,包括:基于所述n條子數(shù)據(jù)流中每條子數(shù)據(jù)流的fec碼字邊界對齊,確定所述解交織位置為第一子數(shù)據(jù)流的fec碼字邊界;其中,所述第一子數(shù)據(jù)流在所述n條子數(shù)據(jù)流中排列順序最先。其中,每條子數(shù)據(jù)流的fec碼字邊界對齊,是指每條子數(shù)據(jù)流的fec碼字邊界位置上的數(shù)據(jù)在一次解交織分發(fā)所對應(yīng)的數(shù)據(jù)中,也即每條子數(shù)據(jù)流的fec碼字邊界位置上的數(shù)據(jù)在數(shù)據(jù)發(fā)送端的一組交織所對應(yīng)的數(shù)據(jù)中。當(dāng)發(fā)現(xiàn)各條子數(shù)據(jù)流的fec碼字邊界對齊時,當(dāng)前開始解交織分發(fā)的位置即為正確的解交織位置,也即n條子數(shù)據(jù)流中排列順序最先的子數(shù)據(jù)流的fec碼字邊界即為正確的解交織位置。
7、在一種可能的實現(xiàn)方式中,所述基于所述解交織位置,根據(jù)所述第一交織數(shù)據(jù)流獲得第一解交織數(shù)據(jù)流,包括:基于所述解交織位置和所述n條子數(shù)據(jù)流的排列順序,確定所述n條子數(shù)據(jù)流的解交織組合順序;基于所述解交織組合順序,組合所述第一交織數(shù)據(jù)流中的數(shù)據(jù),以獲得所述第一解交織數(shù)據(jù)流。
8、在一種可能的實現(xiàn)方式中,所述基于所述第一交織數(shù)據(jù)流的交織粒度,獲得所述第一交織數(shù)據(jù)流對應(yīng)的n條子數(shù)據(jù)流,包括:從所述第一交織數(shù)據(jù)流中選取數(shù)據(jù)流分發(fā)開始位置,基于所述第一交織數(shù)據(jù)流的交織粒度,將所述第一交織數(shù)據(jù)流分發(fā)為n條子數(shù)據(jù)流;其中,所述數(shù)據(jù)流分發(fā)開始位置為在所述第一交織數(shù)據(jù)流中隨機(jī)選取的位置。
9、在一種可能的實現(xiàn)方式中,所述基于所述第一交織數(shù)據(jù)流的交織粒度,獲得所述第一交織數(shù)據(jù)流對應(yīng)的n條子數(shù)據(jù)流,包括:基于所述第一交織數(shù)據(jù)流的交織粒度,將所述第一交織數(shù)據(jù)流的數(shù)據(jù)輪詢分發(fā)到所述n條子數(shù)據(jù)流中。
10、在一種可能的實現(xiàn)方式中,所述方法還包括:確定所述n條子數(shù)據(jù)流中每條子數(shù)據(jù)流的fec碼字邊界。
11、在一種可能的實現(xiàn)方式中,所述確定所述n條子數(shù)據(jù)流中每條子數(shù)據(jù)流的fec碼字邊界,包括:根據(jù)fec碼字特征,確定所述n條子數(shù)據(jù)流中每條子數(shù)據(jù)流的fec碼字邊界。
12、在一種可能的實現(xiàn)方式中,所述根據(jù)fec碼字特征,確定所述n條子數(shù)據(jù)流中每條子數(shù)據(jù)流的fec碼字邊界,包括:在每條子數(shù)據(jù)流中,分別基于假設(shè)的fec碼字邊界進(jìn)行特征值驗證,根據(jù)驗證結(jié)果確定每條子數(shù)據(jù)流的fec碼字邊界。
13、在一種可能的實現(xiàn)方式中,所述n條子數(shù)據(jù)流的fec碼字之間為循環(huán)移位關(guān)系,所述根據(jù)fec碼字特征,確定所述n條子數(shù)據(jù)流中每條子數(shù)據(jù)流的fec碼字邊界,包括:對獲得的所述n條子數(shù)據(jù)流的fec碼字進(jìn)行逆循環(huán)移位;根據(jù)fec碼字特征,確定逆循環(huán)移位后的所述n條子數(shù)據(jù)流中每條子數(shù)據(jù)流的fec碼字邊界。
14、在一種可能的實現(xiàn)方式中,所述第一交織數(shù)據(jù)流中不包括周期性的對齊數(shù)據(jù)段,所述周期性的對齊數(shù)據(jù)段包括對齊字、幀對齊字或?qū)б龜?shù)據(jù)。
15、在一種可能的實現(xiàn)方式中,所述第一交織數(shù)據(jù)流的fec編碼方式為非級聯(lián)碼的fec編碼,或級聯(lián)碼的fec編碼。
16、在一種可能的實現(xiàn)方式中,所述n為4或8。
17、在一種可能的實現(xiàn)方式中,所述第一交織數(shù)據(jù)流的交織類型為符號交織或卷積交織。
18、在一種可能的實現(xiàn)方式中,所述方法由物理層phy芯片,轉(zhuǎn)發(fā)設(shè)備,或可插拔模塊執(zhí)行。
19、在一種可能的實現(xiàn)方式中,所述第一交織數(shù)據(jù)流的通道速率大于等于200吉比特每秒gbps。
20、第二方面,提供了一種以太網(wǎng)設(shè)備,包括至少一個模塊;該至少一個模塊用于執(zhí)行如上述第一方面或第一方面的任一可選方式所提供的方法。其中,該至少一個模塊可以基于軟件、硬件或軟件和硬件的結(jié)合實現(xiàn),該模塊可以基于具體實現(xiàn)進(jìn)行任意組合或分割。
21、第三方面,提供了一種以太網(wǎng)設(shè)備,包括存儲器和處理器;該存儲器用于存儲計算機(jī)程序;該處理器用于執(zhí)行該存儲器中存儲的計算機(jī)程序以使得該以太網(wǎng)設(shè)備執(zhí)行如上述第一方面或第一方面的任一可選方式所提供的方法。
22、第四方面,提供了一種以太網(wǎng)設(shè)備,包括主控板和接口板,該主控板或該接口板用于實現(xiàn)如上述第一方面或第一方面的任一可選方式所提供的方法。
23、第五方面,提供了一種通信系統(tǒng),該系統(tǒng)通信系統(tǒng)包括發(fā)送端設(shè)備和接收端設(shè)備,所述接收端設(shè)備用于執(zhí)行如上述第一方面或第一方面的任一可選方式所提供的方法。
24、第七方面,提供了一種計算機(jī)可讀存儲介質(zhì),該計算機(jī)可讀存儲介質(zhì)中存儲有計算機(jī)程序,該計算機(jī)程序被執(zhí)行時實現(xiàn)如上述第一方面或第一方面的任一可選方式所提供的方法。
25、第八方面,提供了一種計算機(jī)程序產(chǎn)品,該計算機(jī)程序產(chǎn)品包括程序或代碼,該程序或代碼被執(zhí)行時實現(xiàn)如上述第一方面或第一方面的任一可選方式所提供的方法。
26、第九方面,提供了一種芯片,該芯片運行時實現(xiàn)如上述第一方面或第一方面的任一可選方式所提供的方法。該芯片可以是控制芯片或轉(zhuǎn)發(fā)芯片,該芯片包括可編程邏輯電路和/或程序指令。
27、上述第二方面至第九方面的技術(shù)效果可以參考第一方面的技術(shù)效果,這里不做贅述。