基于SoC的千兆EPON ONU硬件平臺
1 引言
PON結(jié)構(gòu)簡單、鋪設(shè)維護(hù)成本低的特點和以太網(wǎng)設(shè)備成熟、廉價的特點使EPON這項技術(shù)已成為目前解決接入網(wǎng)速率這一瓶頸的最佳方案之一。但在目前國內(nèi)的EPON設(shè)備中,特別是OLT和ONU的芯片仍需從國外廠家進(jìn)口,所以研發(fā)出具有自主知識產(chǎn)權(quán)的EPON的核心技術(shù)產(chǎn)品是當(dāng)務(wù)之急[1]。
本文根據(jù)上海大學(xué)SHU EPON ONU MAC控制芯片的設(shè)計經(jīng)驗,提出了一種千兆ONU硬件平臺的設(shè)計和實現(xiàn)方案。并結(jié)合當(dāng)前ASIC設(shè)計開發(fā)的趨勢,基于SoC的概念嵌入8051處理內(nèi)核。通過此平臺完善上海大學(xué)SHU EPON ONU MAC控制芯片。該平臺不僅在硬件設(shè)計上留有一定的余量為系統(tǒng)升級做準(zhǔn)備。而且設(shè)計時也考慮到目前ASIC制造工藝的性價比和局限性問題。
2 ONU系統(tǒng)功能簡介
EPON系統(tǒng)由光用戶終端ONU、光線路終端OLT、光配線網(wǎng)ODN組成[2]。ONU位于用戶端,放在住戶,企業(yè)或MDU/MTU(多用戶/租戶單元)處,提供客戶的語音,數(shù)據(jù)和視頻與PON的接口,還提供第二層交換功能。簡言之ONU為用戶提供EPON的接人功能。
根據(jù)IEEE802.3ah標(biāo)準(zhǔn)[3].ONU作為EPON系統(tǒng)的用戶端接入設(shè)備,主要完成的功能可描述為:
◆選擇接收OLT發(fā)送的廣播數(shù)據(jù):
◆響應(yīng)OLT發(fā)出的注冊和測距命令:
◆對用戶的以太網(wǎng)數(shù)據(jù)進(jìn)行緩存,向OLT報告緩存的隊列情況并在OLT分配的上行發(fā)送窗口中發(fā)送緩存的數(shù)據(jù):
◆根據(jù)OLT發(fā)出的OAM幀,執(zhí)行相應(yīng)的OAM功能:
◆其它相關(guān)的以太網(wǎng)功能。
3 FPGA邏輯結(jié)構(gòu)簡介
由于處于ASIC設(shè)計的前端,采用Altera公司的FPGA EP2C70F672C6作為核心處理單元,并基于這塊FPGA進(jìn)行邏輯代碼的編寫、測試和驗證。
EPON ONU MAC控制芯片內(nèi)部邏輯設(shè)計如圖1所示,整個系統(tǒng)可以分為上行和下行兩部分,下行是數(shù)據(jù)從OLT傳輸?shù)絆NU,上行是數(shù)據(jù)從ONU傳輸?shù)絆LT。接收模塊對下行數(shù)據(jù)進(jìn)行10位轉(zhuǎn)8位碼變換,LLID的濾除和幀校驗,然后進(jìn)行幀分類。在下行鏈路中,除了有用戶數(shù)據(jù)外,還有MPCP和OAM幀,幀分類模塊把接收模塊處理后的數(shù)據(jù)按類別交給對應(yīng)模塊。同樣上行鏈路中除了用戶數(shù)據(jù)外,還有Register Ack幀、Register Request幀、Report幀和OAM幀,上行隊列管理模塊將它們和從GMII/MII來的用戶數(shù)據(jù)添加LLID后暫存于SDRAM中,復(fù)用控制模塊根據(jù)這些幀的優(yōu)先級,等待發(fā)送控制模塊使能發(fā)送[1]。GMII/MII切換模塊根據(jù)以太收發(fā)芯片工作速率選擇對應(yīng)邏輯實現(xiàn)10/100/1000自適應(yīng)應(yīng)用。
OAM處理、仲裁和控制模塊響應(yīng)處理經(jīng)過分類后的OAM幀,協(xié)調(diào)和控制相應(yīng)模塊。如圖2所示,該模塊主要由8051內(nèi)核、UART核和RAM等構(gòu)成。核心為源代碼開放的8051IP核,使用Verilog語言編寫,指令體系完全與標(biāo)準(zhǔn)的8051兼容。數(shù)據(jù)交互模塊通過8051 IO端口來實現(xiàn)OAM模塊對外數(shù)據(jù)傳遞功能。系統(tǒng)協(xié)調(diào)控制模塊完成整個ONU系統(tǒng)的初始化,并協(xié)調(diào)控制整個ONU系統(tǒng)工作。另外加入了中斷產(chǎn)生和定時器模塊來完善OAM模塊功能,防止異常狀況使系統(tǒng)癱瘓。
4 硬件系統(tǒng)設(shè)計和實現(xiàn)
根據(jù)上述ONU的功能和FPGA邏輯代碼的編寫需要,ONU的硬件電路結(jié)構(gòu)設(shè)計如圖3所示。整個ONU分為三個部分,一個面向光網(wǎng)絡(luò)(Plant Side),另一個則面向以太網(wǎng)絡(luò)(Local Side),還有一個是處理、協(xié)調(diào)和仲裁的核心單元。對于光網(wǎng)絡(luò)的接入端,ONU是經(jīng)由光模塊接入到ODN網(wǎng)絡(luò),我們采用Fiberxon公司的ONU突發(fā)激光器FTM-9412P-F10來實現(xiàn)光模塊,通過Serdes芯片進(jìn)行串并轉(zhuǎn)換,變?yōu)?0位的TBI信號,再利用TBI和EP2C70F672C6進(jìn)行數(shù)據(jù)交互。以太網(wǎng)絡(luò)的接人是在FPGA之后經(jīng)GMII/MII接口和以太網(wǎng)收發(fā)芯片88E1111相連,實現(xiàn)千/百/十兆以太網(wǎng)絡(luò)數(shù)據(jù)交換。FPGA作為ONU的核心單元。除數(shù)據(jù)傳遞通路外,硬件系統(tǒng)還包括SDRAM、EEPROM、Flash和一個UART串口。
如圖3所示,在Plant Side端,由于從光纖上傳輸?shù)男盘査俾蕿?.25Gb/s,F(xiàn)PGA直接處理頻率這么高的信號是不合適的,即使可行對于后期的ASIC芯片工藝設(shè)計也不容易實現(xiàn)。所以在FPGA之前加入一個串并變換模塊,此模塊通過一個Serdes芯片TLK2201A實現(xiàn)1.25Gb/s串行數(shù)據(jù)與10位125Mb/s并行數(shù)據(jù)信號的轉(zhuǎn)換。再將這10位TBI信號和FPGA相連,這樣FPGA的IO口速率就可降至125MHz,由此FPGA的邏輯時鐘頻率也設(shè)置為125MHz。FPGA通過增設(shè)使能信號TBI_Burst_en控制光模塊的突發(fā)功能。
{{分頁}}
在Local Side端.采用Marvell的88E1111千兆以太收發(fā)芯片,支持1000Base-T、100Base-TX和10Base-T自適應(yīng)應(yīng)用[4],并通過GMII/MII接口和FPGA進(jìn)行數(shù)據(jù)傳遞。當(dāng)一個OLT連接ONU較少時或者OLT分配給特定ONU帶寬較大時,那么這些ONU的速率可超過百兆,為使最終芯片勝任高帶寬應(yīng)用場合采用10/100/1000兆收發(fā)芯片。88E1111的物理接口具有Auto Negotiation功能,并反映在特定寄存器中。FPGA通過88E1111的MDIO (Management Data Input/Output)接口讀取相應(yīng)寄存器后,選擇GMII或MII邏輯模塊以適應(yīng)10/100/1000工作速率。
除去Plant Side和Local Side兩端的設(shè)計,ONU核心部分包含以下幾個主要器件:FPGA、SDRAM、EEPROM、flash和UART串口。
(1)FPGA型號選擇是整個系統(tǒng)的關(guān)鍵,根據(jù)邏輯代碼的需求,選用Altera CvcloneTM II EP2C7OF672C6。Alteira CvcloneTM II采用全銅層、低K值、1.2伏SRAM工藝設(shè)計,裸片尺寸被盡可能最小的優(yōu)化。采用300mm晶圓,以TSMC成功的90nm 工藝技術(shù)為基礎(chǔ),Cvclone II器件提供了4.608~68,416個邏輯單元(LE),并具有一整套最佳的功能,包括嵌入式18比特x18比特乘法器、專用外部存儲器接口電路、4kbit嵌入式存儲器塊、鎖相環(huán)(PLL)和高速差分I/O能力。EP2C70F672具有68.416個邏輯單元,RAM總比特數(shù)為l,152,000,內(nèi)嵌18比特x18比特乘法器150個,4個PLL,多達(dá)422個IO引腳[5]。這些資源可以滿足ONU整個邏輯需求,又留有升級擴(kuò)充的余量。選用EP2C70主要出于對RAM的考慮,其內(nèi)部RAM較大,總比特數(shù)有1.152,000,適合大FIFO容量設(shè)計。當(dāng)Local Side工作在10/100兆速率時.需要對Plant Side下行千兆數(shù)據(jù)增設(shè)FIFO.將傳輸速率匹配到百兆或十兆。
{{分頁}}
(2)增設(shè)SDRAM是由于ONU作為用戶端設(shè)備,EPON上下行的數(shù)據(jù)流通過粗波分復(fù)用(DWDM)技術(shù),在同一根光纖中傳輸[6]。在下行鏈路中通過識別LLID選擇性接收來自O(shè)LT的廣播數(shù)據(jù),上行采用時分復(fù)用的傳輸機(jī)制,而以太數(shù)據(jù)流發(fā)送本身就呈隨機(jī)性和突發(fā)性,所以必需加入存儲設(shè)備暫存待發(fā)送的數(shù)據(jù),我們加入兩片SDRAM MT48LC8M16A2,總?cè)萘繛?2MB。GMII數(shù)據(jù)速率是125Mb/s,如果按Bvte處理數(shù)據(jù),那么就需要內(nèi)部邏輯運(yùn)行在125MHz,要讓ASIC內(nèi)部邏輯工作在這個速率,不僅相對的工藝成本較高,而且邏輯代碼編寫也是一個難題,很容易出現(xiàn)不穩(wěn)定因素,所以采用每接收4個Bvtes后再處理,那么邏輯只需要31.25MHz的處理速率。這個速率不僅使得邏輯代碼編寫簡易,而且也可為后期ASIC的設(shè)計減少障礙。為了滿足32位數(shù)據(jù)總線,采用了兩片SDRAM并行工作。
(3)EEPROM用來存儲一些ONU運(yùn)行必需且不可在邏輯里固化的參數(shù),通過更新EEPROM來改變這些參數(shù),供系統(tǒng)運(yùn)行使用。比如以下參數(shù):
?、貽NU突發(fā)激光器的開啟和關(guān)閉時間。不同廠商制造的激光器此參數(shù)有所差別,可根據(jù)廠商提供的參數(shù)存儲于EEPROM中。
?、贠NU MAC地址。EPON 0NU是一個以太網(wǎng)絡(luò)設(shè)備,分配一個MAC地址以完成MPCP功能。
?、巯嚓P(guān)固件版本和設(shè)備硬件信息?,F(xiàn)在一般硬件系統(tǒng)都有自己的版本信息,加入后也有利于日后的維護(hù)和管理。
(4)Flash是用來存放8051處理內(nèi)核的代碼。在802.3ah標(biāo)準(zhǔn)中定義了EPON的OAM功能,完整的OAM功能是系統(tǒng)運(yùn)行穩(wěn)定和維護(hù)便捷的保障,加入一個處理內(nèi)核可以完善OAM功能。植入8051內(nèi)核一則出于知識產(chǎn)權(quán)和價格考慮,二則僅從性能上而言51內(nèi)核雖不及ARM之類高端內(nèi)核,但EPON的網(wǎng)管系統(tǒng)主要在OLT端實現(xiàn),ONU一般是響應(yīng)OLT發(fā)出的OAM幀,所以不需要高端內(nèi)核。8051內(nèi)核除了進(jìn)行OAM的操作,還起到協(xié)調(diào)整個系統(tǒng)工作的作用。
(5)在系統(tǒng)中加入UART,主要為了使所設(shè)計的系統(tǒng)更靈活,系統(tǒng)升級和維護(hù)更便利。通過這個串口修改。EEPROM中存放的參數(shù)和更新Flash中的代碼,不必為了修改進(jìn)行反復(fù)焊接。該串口也可以讓用戶能夠快捷的進(jìn)行管理、控制和修改,并且可以通過它反饋ONU運(yùn)行的信息,隨時監(jiān)測ONU狀況,在設(shè)備工作異常時進(jìn)行維護(hù)。
5 結(jié)束語
本文根據(jù)802.3ah標(biāo)準(zhǔn)定義,基于SOC提出一個千兆EPON 0NU硬件的設(shè)計方案。該設(shè)計實現(xiàn)了802.3ah規(guī)定的ONU功能,并盡可能的考慮了各種細(xì)節(jié),使系統(tǒng)運(yùn)行穩(wěn)定。對于系統(tǒng)的操作和維護(hù)也作了相應(yīng)的考慮,不僅使系統(tǒng)更穩(wěn)定,而且系統(tǒng)的升級更便利。此外系統(tǒng)設(shè)計還兼顧了ASIC設(shè)計的工藝和成本,使開發(fā)的邏輯代碼可以直接進(jìn)入ASIC的后端設(shè)計,從而進(jìn)一步完善SHU EPON ONU MAC控制芯片。
鎖相環(huán)相關(guān)文章:鎖相環(huán)原理 激光器相關(guān)文章:激光器原理
評論