趙冰茹
摘 要:HINOC是我國為了利用同軸電纜帶外信號提供高速接入服務的而自主發(fā)開的協(xié)議。HINOC協(xié)議棧中的MAC層與PHY層之間需要大量的數(shù)據(jù)交換,特別是HINOC2.0協(xié)議中,峰值傳輸速度將達到1Gbps以上。文中提出了一種將異步FIFO應用在這兩個模塊之間的應用方式,可以解決大規(guī)模數(shù)據(jù)快速傳輸以及MAC層與PHY層硬件頻率不一致的問題。
關(guān)鍵詞:HINOC;HMAC;HIPHY;異步FIFO
隨著我國光纖通信技術(shù)的日趨成熟,骨干網(wǎng)絡光纖化已經(jīng)完成,其帶寬已經(jīng)可以滿足業(yè)務需求,而被稱為“最后一英里”的接入網(wǎng)帶寬成為用戶家庭上網(wǎng)速率的瓶頸。HINOC標準從2005年開始準備,在2016年3月終于發(fā)布了正式的HINOC2.0標準。目前國家對“三網(wǎng)融合”大力推進,利用同軸電纜解決接入的技術(shù)由于多方面的優(yōu)點逐漸被更多公司和組織所接收,已經(jīng)有多家公司的HINOC芯片完成了實驗室測試,準備進行規(guī)模測試階段。
1 HINOC標準中的協(xié)議棧模型
HINOC標準中定義了對應網(wǎng)絡OSI模型的物理層(PHY層)傳輸模式和媒質(zhì)接入控制層(MAC層)協(xié)議。協(xié)議棧自下而上依次分為物理層(PHY層), MAC層和高層。PHY層定義的信號傳輸模式包括幀結(jié)構(gòu)、信道編碼以及調(diào)制技術(shù)。MAC層實現(xiàn)HINOC網(wǎng)絡中的媒質(zhì)接入控制和業(yè)務適配功能,分為公共部分子層(CPS)和匯聚子層(CS)。為了更好得適應外部應用環(huán)境,一般設計中采用MAC層與嵌入式CPU的主頻同步,而PHY層硬件則可以根據(jù)當前的數(shù)據(jù)流量對頻率進行自適應調(diào)整。兩者之間數(shù)據(jù)傳輸速度可高達1Gbps,針對于其數(shù)據(jù)通路的設計,本文中提出了一種采用異步FIFO解決的方法,可以非常有效地解決MAC與PHY之間大量異步數(shù)據(jù)傳輸以及兩者之間頻率不一致的問題。
2 異步FIFO的說明
FIFO是英文First In First Out的縮寫,是一種先進先出的數(shù)據(jù)緩存器。它與普通存儲器的區(qū)別是沒有外部讀寫地址線,只能順序地寫入數(shù)據(jù),順序地讀出數(shù)據(jù)。其數(shù)據(jù)地址由內(nèi)部讀寫指針自動加1完成,而不是像普通存儲器那樣可以由地址線決定讀取或?qū)懭肽硞€指定的地址。外部需要有空滿標識來指示當前是否可以對FIFO進行讀出或?qū)懭?。因為它的控制線比較少,所以可以方便地將其運用在異步傳輸模塊,進行兩個不同時鐘域間模塊的數(shù)據(jù)傳輸。圖1中是異步FIFO的結(jié)構(gòu)圖。
從圖中可以看到,異步FIFO主要由以下幾個部分組成:
雙端口存儲器,用于存儲數(shù)據(jù),讀寫支持不同時鐘。
寫地址產(chǎn)生器/滿控制標志位產(chǎn)生器,這部分處于寫時鐘域。
讀地址產(chǎn)生器/空控制標志位產(chǎn)生器,這部分處于讀時鐘域。
異步FIFO需要用到的端口信號包括:
讀時鐘:讀操作所遵循的時鐘,在每個時鐘上升沿到來時讀數(shù)據(jù)。
寫時鐘:寫操作所遵循的時鐘,在每個時鐘上升沿到來時寫數(shù)據(jù)。
讀指針:指向下一個讀出地址。讀完后自動加1。
寫指針:指向下一個要寫入的地址的,寫完自動加1。
滿標志:FIFO已滿或?qū)⒁獫M時由FIFO的狀態(tài)電路送出的一個信號,以阻止FIFO的寫操作,繼續(xù)向FIFO中寫數(shù)據(jù)將造成溢出(overflow)。
空標志:FIFO已空或?qū)⒁諘r由FIFO的狀態(tài)電路送出的一個信號,以阻止FIFO的讀操作,繼續(xù)從FIFO中讀出數(shù)據(jù)將造成無效數(shù)據(jù)的讀出(underflow)。
3 異步FIFO在HINOC中的應用
由于HINOC協(xié)議中MAC協(xié)處理器和PHY層信號處理器之間需要大量的數(shù)據(jù)傳輸,MAC層數(shù)據(jù)發(fā)送端根據(jù)接收到的MAP幀,解析出重傳標志以及分配的信道長度;數(shù)據(jù)發(fā)送端需要設計一個深度足夠的FIFO來緩存數(shù)據(jù),以保證MAC層與PHY層的數(shù)據(jù)交互不出現(xiàn)斷幀。
在FIFO的設計中,最重要的兩個參數(shù)就是FIFO的數(shù)據(jù)位寬和存儲深度。按照HINOC2.0協(xié)議中的要求,MAC數(shù)據(jù)幀的最大程度小于4600B,但是在實際傳輸中,由于受到信道干擾,多結(jié)點資源平衡調(diào)度等方面因素的影響,一般會將過大的數(shù)據(jù)幀進行切片,以防止過大的幀傳輸失敗導致大量數(shù)據(jù)重傳的問題。為了進一步提高異步FIFO的傳輸效率,本結(jié)構(gòu)中將異步FIFO的數(shù)據(jù)寬度設計為32bit,F(xiàn)IFO深度設計為512個字。采用四個這樣獨立的異步FIFO進行MAC層與PHY層的數(shù)據(jù)交換,可以滿足設計的需求。
參考文獻
[1]馮振威.基于嵌入式平臺的HINOC MAC驅(qū)動程序的設計[D]西安電子科技大學.
[2]國家新聞出版廣電總局.NGB寬帶接入系統(tǒng) HINOC2.0物理層和媒體接入控制層技術(shù)規(guī)范,2016-3.
[3]歐陽峰,崔競飛,趙玉萍.HINOC同軸電纜接入系統(tǒng)技術(shù)方案[J].廣播與電視技術(shù),2011,(10):34-38.