一種通道對齊方法、裝置及系統(tǒng)的制作方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及通信技術(shù)領(lǐng)域,尤其涉及一種通道對齊方法、裝置及系統(tǒng)。
【背景技術(shù)】
[0002]在高速串行收發(fā)系統(tǒng)中,物理編碼子層(physical coding sub-layer,PCS)完成數(shù)據(jù)流的收發(fā),提供一個或者多個通道的數(shù)據(jù)流的編碼、解碼、對齊等功能。一般需要支持流行的串行協(xié)議,如I吉比特以太網(wǎng),10吉比特以太網(wǎng)(XAUI)、PCI Express、Serial、RapidI O N SMPTE (The Society of Mot1n Picture and Televis1n Engineers),支持無線協(xié)議,如CPR1、0BSAI等,對單個通道來說,較容易實(shí)現(xiàn)支持多種協(xié)議,但是對兩個或兩個以上的通道來說,由于每個通道恢復(fù)的時鐘相位不一致,不同協(xié)議的對齊字符、協(xié)議要求的搜索區(qū)間等都不一致,再加上硬核工作時鐘頻率較高,通道對齊實(shí)現(xiàn)難度較大。
[0003]現(xiàn)有技術(shù)方案,包括下面步驟:偵測多通道到達(dá)的數(shù)據(jù),根據(jù)檢測到的對齊字段控制各通道數(shù)據(jù)的緩存;同時從緩存各通道數(shù)據(jù)的起始位置開始讀取數(shù)據(jù)。此方案必須要檢測到對齊字段后才會開始寫入數(shù)據(jù),且當(dāng)對齊失敗時需要額外控制清除各通道的數(shù)據(jù)才能重新對齊,這些都對數(shù)據(jù)格式有特定要求,且需要額外的控制,從硬件實(shí)現(xiàn)不夠靈活。
【發(fā)明內(nèi)容】
[0004]本發(fā)明提供一種通道對齊方法、裝置及系統(tǒng),解決現(xiàn)有通道對齊方案不夠完善的問題。
[0005]為解決上述技術(shù)問題,本發(fā)明采用以下技術(shù)方案:
[0006]一種通道對齊方法,包括:
[0007]從待對齊通道集中確定一個主通道,其他為輔通道;并給各通道配置相同的對齊時鐘,將各通道接收數(shù)據(jù)轉(zhuǎn)換到所述對齊時鐘的時鐘并存入緩存;
[0008]若主通道接收數(shù)據(jù)中檢測到對齊字段,則根據(jù)檢測到的對齊字段配置各輔通道緩存數(shù)據(jù)的對齊字段搜索范圍,并檢測各輔通道緩存數(shù)據(jù)中在對應(yīng)的對齊字段搜索范圍內(nèi)是否有對齊字段;
[0009]對于主通道緩存數(shù)據(jù)和檢測到對齊字段的輔通道緩存數(shù)據(jù),根據(jù)檢測到的對齊字段和當(dāng)前讀緩存數(shù)據(jù)地址,調(diào)整讀緩存數(shù)據(jù)地址,根據(jù)調(diào)整后的讀緩存數(shù)據(jù)地址,從對應(yīng)對齊字段的位置開始讀緩存數(shù)據(jù)。
[0010]在一些實(shí)施例中,將各通道接收數(shù)據(jù)存入緩存的過程中,還包括:檢測各通道接收數(shù)據(jù)中的對齊字段,將檢測結(jié)果和各通道接收數(shù)據(jù)一起存入緩存;
[0011]所述檢測各輔通道緩存數(shù)據(jù)中在對應(yīng)的對齊字段搜索范圍內(nèi)是否有對齊字段具體為:根據(jù)緩存中的檢測結(jié)果檢測各輔通道緩存數(shù)據(jù)中在對應(yīng)的對齊字段搜索范圍內(nèi)是否有對齊字段。
[0012]在一些實(shí)施例中,所述給各通道配置相同的對齊時鐘具體為:從主通道接收數(shù)據(jù)中獲取主通道的恢復(fù)時鐘,將各通道的對齊時鐘配置為主通道的恢復(fù)時鐘。
[0013]在一些實(shí)施例中,所述若主通道接收數(shù)據(jù)中檢測到對齊字段,則根據(jù)檢測到的對齊字段配置各輔通道緩存數(shù)據(jù)的對齊字段搜索范圍,并檢測各輔通道緩存數(shù)據(jù)中在對應(yīng)的對齊字段搜索范圍內(nèi)是否有對齊字段具體為:
[0014]若主通道接收數(shù)據(jù)中檢測到對齊字段,則主通道通知相鄰后一級輔通道,所述后一級輔通道接收到通知后,繼續(xù)通知再后一級輔通道,直至所述待對齊通道集中各輔通道均收到通知;并且收到通知的各輔通道根據(jù)主通道接收數(shù)據(jù)中檢測到的對齊字段配置本輔通道緩存數(shù)據(jù)的對齊字段搜索范圍,在同一時間,各輔通道檢測本輔通道緩存數(shù)據(jù)中在對應(yīng)的對齊字段搜索范圍內(nèi)是否有對齊字段。
[0015]在一些實(shí)施例中,上述通道對齊方法還包括保存以下信息:各對齊通道的對齊字段的位置,以及調(diào)整后的讀緩存數(shù)據(jù)地址;或者讀緩存數(shù)據(jù)地址的偏移量。
[0016]在一些實(shí)施例中,上述通道對齊方法在保存上述信息之前,還包括:判斷所述待對齊通道集中各通道是否均完成讀緩存數(shù)據(jù)地址的調(diào)整;若是,則進(jìn)入保存上述信息的步驟。
[0017]一種通道對齊裝置,包括:
[0018]確定模塊,用于從待對齊通道集中確定一個主通道,其他為輔通道;
[0019]時鐘配置模塊,用于給各通道配置相同的對齊時鐘;
[0020]轉(zhuǎn)換模塊,用于將各通道接收數(shù)據(jù)轉(zhuǎn)換到所述對齊時鐘的時鐘域;
[0021]緩存寫入模塊,用于將經(jīng)過時鐘域轉(zhuǎn)換后的各通道接收數(shù)據(jù)存入緩存;
[0022]主通道對齊字段檢測模塊,用于檢測主通道接收數(shù)據(jù)中的對齊字段;
[0023]范圍配置模塊,用于若主通道接收數(shù)據(jù)中檢測到對齊字段,則根據(jù)檢測到的對齊字段配置各輔通道緩存數(shù)據(jù)的對齊字段搜索范圍;
[0024]輔通道對齊字段檢測模塊,用于檢測各輔通道緩存數(shù)據(jù)中在對應(yīng)的對齊字段搜索范圍內(nèi)是否有對齊字段;
[0025]緩存讀取模塊,用于對于主通道緩存數(shù)據(jù)和檢測到對齊字段的輔通道緩存數(shù)據(jù),根據(jù)檢測到的對齊字段和當(dāng)前讀緩存數(shù)據(jù)地址,調(diào)整讀緩存數(shù)據(jù)地址,根據(jù)調(diào)整后的讀緩存數(shù)據(jù)地址,從對應(yīng)對齊字段的位置開始讀緩存數(shù)據(jù)。
[0026]在一些實(shí)施例中,輔通道對齊字段檢測模塊包括:
[0027]第一檢測子模塊,用于所述緩存寫入模塊將各輔通道接收數(shù)據(jù)寫入緩存的過程中,檢測各輔通道接收數(shù)據(jù)中的對齊字段,得到檢測結(jié)果;
[0028]第二檢測子模塊,用于根據(jù)緩存中的所述檢測結(jié)果檢測對應(yīng)的輔通道緩存數(shù)據(jù)中在對應(yīng)的對齊字段搜索范圍內(nèi)是否有對齊字段;
[0029]所述緩存寫入模塊用于將所述檢測結(jié)果和各輔通道接收數(shù)據(jù)一起存入緩存。
[0030]在一些實(shí)施例中,所述時鐘配置模塊具體用于從主通道接收數(shù)據(jù)中獲取主通道的恢復(fù)時鐘,將各通道的對齊時鐘配置為主通道的恢復(fù)時鐘。
[0031 ]在一些實(shí)施例中,上述通道對齊裝置,還包括保存模塊,用于保存各對齊通道的對齊字段的位置,以及調(diào)整后的讀緩存數(shù)據(jù)地址;或者保存讀緩存數(shù)據(jù)地址的偏移量。
[0032]在一些實(shí)施例中,上述通道對齊裝置,還包括判斷模塊,用于判斷所述待對齊通道集中各通道是否均完成讀緩存數(shù)據(jù)地址的調(diào)整;若是,則通知所述保存模塊進(jìn)行上述信息保存。
[0033]一種通道對齊系統(tǒng),包括:
[0034]確定單元,用于從待對齊通道集中確定一個主通道,其他為輔通道;
[0035]時鐘配置單元,用于給各通道配置相同的對齊時鐘;
[0036]轉(zhuǎn)換單元,用于將各通道接收數(shù)據(jù)轉(zhuǎn)換到所述對齊時鐘的時鐘域;
[0037]主通道處理單元,用于將經(jīng)過時鐘域轉(zhuǎn)換后的主通道接收數(shù)據(jù)存入緩存,檢測主通道接收數(shù)據(jù)中的對齊字段,若主通道接收數(shù)據(jù)中檢測到對齊字段,則通知相鄰后一級輔通道;還用于根據(jù)檢測到的對齊字段和當(dāng)前讀緩存數(shù)據(jù)地址,調(diào)整讀緩存數(shù)據(jù)地址,根據(jù)調(diào)整后的讀緩存數(shù)據(jù)地址,從對應(yīng)對齊字段的位置開始讀緩存數(shù)據(jù);
[0038]至少一個輔通道處理單元,各輔通道處理單元用于將經(jīng)過時鐘域轉(zhuǎn)換后的本輔通道接收數(shù)據(jù)存入緩存,接收到通知后,向再后一級輔通道傳輸通知直至最后一級輔通道;根據(jù)主通道接收數(shù)據(jù)中檢測到的對齊字段配置本輔通道緩存數(shù)據(jù)的對齊字段搜索范圍,檢測本輔通道緩存數(shù)據(jù)中在對應(yīng)的對齊字段搜索范圍內(nèi)是否有對齊字段;還用于根據(jù)檢測到的對齊字段和當(dāng)前讀緩存數(shù)據(jù)地址,調(diào)整讀緩存數(shù)據(jù)地址,根據(jù)調(diào)整后的讀緩存數(shù)據(jù)地址,從對應(yīng)對齊字段的位置開始讀緩存數(shù)據(jù)。
[0039]在一些實(shí)施例中,各輔通道處理單元具體用于將本輔通道接收數(shù)據(jù)寫入緩存的過程中,檢測各輔