陳學(xué)卿,高凡
在廣域網(wǎng)接入方面,光纖接入方式是其發(fā)展趨勢(shì),而1G/10G EPON作為其中的一員,也受到越來(lái)越多的關(guān)注。為了監(jiān)控網(wǎng)絡(luò),1G/10G EPON系統(tǒng)也應(yīng)該具有運(yùn)營(yíng)管理維護(hù)(OAM)功能。為此,在802.ah標(biāo)準(zhǔn)中,IEEE802.3委員會(huì)制定了關(guān)于數(shù)據(jù)鏈路層的OAM標(biāo)準(zhǔn)[1],可以管理直接相連的站點(diǎn),適用于1G/10G EPON共存系統(tǒng)的1G ONU端。要實(shí)現(xiàn)數(shù)據(jù)鏈路層OAM,無(wú)論是OLT還是ONU都應(yīng)有相應(yīng)的硬件支撐平臺(tái)。本文針對(duì)ONU端提出基于MPC860EN的管理平臺(tái)硬件設(shè)計(jì)方案,軟件部分則基于pSOS實(shí)時(shí)嵌入式操作系統(tǒng)[2-3]。
共存系統(tǒng)ONU端管理模塊以MPC860EN為核心,主要包括MAC控制器接口、程序存儲(chǔ)器FLASH、數(shù)據(jù)存儲(chǔ)器SDRAM、驅(qū)動(dòng)配置電路、復(fù)位電路、時(shí)鐘電路、調(diào)試接口電路等組成部分,如圖1所示:
MAC控制器接口為共存系統(tǒng)的帶內(nèi)OAM提供數(shù)據(jù)通道和控制時(shí)序信號(hào)。程序存儲(chǔ)器FLASH用來(lái)存儲(chǔ)管理程序,數(shù)據(jù)存儲(chǔ)器SDRAM用來(lái)存儲(chǔ)數(shù)據(jù)。驅(qū)動(dòng)配置電路對(duì)CPU的數(shù)據(jù)地址進(jìn)行驅(qū)動(dòng),并進(jìn)行上電數(shù)據(jù)初始化配置。復(fù)位電路提供CPU需要的各種復(fù)位信號(hào)。時(shí)鐘電路給CPU提供穩(wěn)定的時(shí)鐘,保證其正常工作。調(diào)試接口電路提供調(diào)試所需的各種接口,有利于基于pSOS實(shí)時(shí)嵌入式操作系統(tǒng)的應(yīng)用程序開發(fā)。
32位微處理器MPC860EN內(nèi)部由主處理單元、系統(tǒng)接口單元(SIU)、通信處理模塊(CPM)三部分組成[4-8],如圖2所示。
(1)主處理單元。由內(nèi)置MPC8xx核(EMPC),4 kB的指令Cache和指令MMU(存儲(chǔ)管理單元),4 kB的數(shù)據(jù)Cache和數(shù)據(jù)MMU構(gòu)成。
(2)系統(tǒng)接口單元(SIU)。SIU的作用主要是匹配內(nèi)部總線和外部總線、存儲(chǔ)控制,其他功能包括提供系統(tǒng)功能、實(shí)時(shí)時(shí)鐘(RTC)、PCMCIA-ATA接口等。
(3)通信處理模塊(CPM)。CPM負(fù)責(zé)數(shù)據(jù)通信,是應(yīng)用的核心。CPM中集成了RISC處理器、4個(gè)串行通信控制器(SCC)、2個(gè)串行管理控制器SMC、1個(gè)SPI、1個(gè)I2C、1個(gè)并行I/O、16個(gè)串行DMA通道等。
這部分是設(shè)計(jì)的核心部分。MAC控制器由FPGA、CPLD、FLASH組成。CPU與FPGA、CPLD直接連接,與FLASH沒有直接連接。
FPGA作為CPU的外設(shè),是權(quán)限最高的中斷源(IRQ0),片選接在CS2上,通過(guò)CPU PB18提供的復(fù)位信號(hào)CPU_RESET_FPGA(需要將PBPAR[DD18]設(shè)置為0),可以對(duì)FPGA進(jìn)行復(fù)位操作。兩者的數(shù)據(jù)交互有兩種方式:并行和串行。并行方式采用32位數(shù)據(jù)、地址線直接相連。串行方式為發(fā)送數(shù)據(jù)TXD4(需要將PAPAR[DD8]設(shè)置為1、PADIR[DD8]設(shè)置為0)接SCTXD4、發(fā)送時(shí)鐘CLK7(需要將PAPAR[DD7]設(shè)置為1、PADIR[DD7]設(shè)置為0)提供給SCTCLK4;RXD4(需要將PAPAR[DD9]設(shè)置為1、PADIR[DD9]設(shè)置為0)接收數(shù)據(jù)SCRXD4、接收時(shí)鐘CLK8(需要將PAPAR[DD8]設(shè)置為1、PADIR[DD8]設(shè)置為0)提供給SCRCLK4。在管理完成時(shí),F(xiàn)PGA需要上報(bào)響應(yīng)信號(hào)FPGA_ACK(PB27需要將寄存器PBPAR[DD27]設(shè)置為0)給CPU。
CPLD的工作模式由CPU決定,即CPLD工作模式控制信號(hào)MODE1。MODE1由CPU的PB16、PB17提供(需要將寄存器PBPAR[DD16]、PBPAR[DD17]設(shè)置為0)。CPLD片選信號(hào)MCU_CS3-MCU_CS7分別與CPU的CS3-CS7相連。
圖2 MPC860EN結(jié)構(gòu)
FLASH采用的器件是MBM29LV800BA[9],容量為1 MB。作為BOOTROM,片選CS接在MPC860EN的CS0上,選擇GPCM方式。因此,BR0寄存器中的MS[0-1]應(yīng)該設(shè)置為00,PS設(shè)置為10表明數(shù)據(jù)線設(shè)置為16位寬度。寫使能信號(hào)WE由MPC860EN的WE0提供,輸出使能信號(hào)OE由MPC860EN的GPLA1/OE提供。采用按字來(lái)存儲(chǔ)的方式,即將BYTE引腳設(shè)置為高電平(+3.3 V),格式為1 024 kB;16位數(shù)據(jù)線與MPC860EN的低16位數(shù)據(jù)線相連,19位地址線與MPC860EN的高19位地址線相連。需要注意的是,CPU的數(shù)據(jù)線、地址線和FLASH的數(shù)據(jù)線、地址線順序是反的。MPC860EN的系統(tǒng)時(shí)鐘是50 MHz,讀寫周期為700 ns,需要選擇快于700 ns的器件。而MBM29LV800BA接入時(shí)間為70 ns~120 ns,完全滿足要求。由IMP811S提供復(fù)位/RESET信號(hào),在對(duì)CPU硬件復(fù)位的同時(shí)也對(duì)FLASH復(fù)位。由于RY/BY腳采用開環(huán)輸出,需要外接上拉電阻到電源。
SDRAM采用韓國(guó)SAMSUNG公司生產(chǎn)的K4S6 43232C型專業(yè)器件,容量為8 MB,刷新時(shí)間為15.6 μs[10]。該SDRAM內(nèi)部由4個(gè)Bank組成,每個(gè)Bank有2 048行和256列。片選CS接在CS1上,選擇UPMA方式,則BR1寄存器中的MS[0-1]應(yīng)該設(shè)置為10,PS設(shè)置為00表明數(shù)據(jù)線設(shè)置為32位寬度,32位數(shù)據(jù)線與MPC860EN的32位數(shù)據(jù)線相連。需要注意的是,CPU的數(shù)據(jù)線和SDRAM的數(shù)據(jù)線順序是相反的。SDRAM的時(shí)鐘CLK由CPU的CLKOUT提供,時(shí)鐘使能CKE接高電平。數(shù)據(jù)輸入/輸出屏蔽信號(hào)DQM0-3由CPU的BSA3-0供給。地址線A0-A9接CPU地址總線中A29-A20、A10接CPU的GPLA0。行地址觀測(cè)腳RAS接CPU的GPLA1、列地址觀測(cè)CAS接CPU的GPLA2、寫使能接CPU的GPLA3。Bank選擇地址BA0-1由CPU的A10-9決定。
用一片IDT74FCT244APV來(lái)驅(qū)動(dòng)CPU32位地址總線的高16位,IDT74FCT244APV的輸出使能OE信號(hào),需設(shè)置為低電平。用一片IDT74FCT245APA來(lái)驅(qū)動(dòng)CPU32位地址總線低16位中的高8位,CPU32位數(shù)據(jù)總線的低8位。另用一片IDT74FCT245APA來(lái)驅(qū)動(dòng)CPU的讀寫信號(hào)、GPLA1、WE0、SCTCLK2、SCTCLK3五條信號(hào)線。設(shè)置CPU數(shù)據(jù)總線中的D1、D4、D7-D12外接上拉電阻,即硬件復(fù)位配置字為1111110010010,表示支持內(nèi)部仲裁、清除IIP、不支持突發(fā)、程序存儲(chǔ)器數(shù)據(jù)口為16位、內(nèi)部寄存器基地址為0xFFF00000、調(diào)試接口為BDM或JTAG、外部總線速率等于系統(tǒng)時(shí)鐘。
設(shè)計(jì)中采用IMP811S提供上電復(fù)位(PORESET)和外部硬件復(fù)位(HRESET)。只是在提供外部硬件復(fù)位信號(hào)時(shí),IMP811S的MR管腳受開關(guān)控制,開關(guān)閉合時(shí)產(chǎn)生外部硬件復(fù)位信號(hào)。復(fù)位時(shí),設(shè)計(jì)中采用設(shè)定的復(fù)位配置字對(duì)內(nèi)部基地址等進(jìn)行設(shè)置,因此要將復(fù)位配置控制腳(RSTCONF)接低電平。另外,由BDM接口提供內(nèi)部硬件復(fù)位的外部軟件復(fù)位信號(hào)(SRESET)。
選擇50 MHz有源晶振作為時(shí)鐘。預(yù)分頻數(shù)為512,上電復(fù)位缺省[MF+1]為1時(shí),SPLL的輸入OSCCLK選擇EXTCLK,則需要將MODCK[1:2]設(shè)置為10。另外,XFC腳需要外接0.1 μF的環(huán)路濾波電容,才能保證SPLL正常工作。
調(diào)試接口電路包括RS232串行接口、10M以太網(wǎng)接口、BDM(Background Debug Mode,背景調(diào)試模式)和JTAG(Joint Test Action Group,聯(lián)合測(cè)試行動(dòng)組)進(jìn)行調(diào)試。設(shè)計(jì)中,串口接在SMC1上,即Rx、Tx口分別接PB24和PB25。RS232串行接口外接RS232電平轉(zhuǎn)換器MAX3221E,以RJ11接口的方式與外部調(diào)試設(shè)備相連。10M以太網(wǎng)接口由PA14、PA15、PA7、PA6、PB19、PC10、PA11構(gòu)成。10M以太網(wǎng)接口外接物理層芯片LX908PC,通過(guò)HB1601,以RJ45接口的方式與計(jì)算機(jī)相連。設(shè)計(jì)中還可以外接RS232適配器或10M以太網(wǎng)適配器,接口電路如圖3所示。
使用BDM接口時(shí),需要加一個(gè)用于電平轉(zhuǎn)換的適配器,然后再使用計(jì)算機(jī)的并口進(jìn)行調(diào)試。
另外,通過(guò)背板與獨(dú)立網(wǎng)管盤建立串口通信(使用SMC2的SMRXD2、SMTXD2),也可以識(shí)別時(shí)隙的ID號(hào)(使用PB27-PB30)。
成功的PCB設(shè)計(jì)[11]首要是合理的布局。本設(shè)計(jì)采用CADENCE 15.5,以CPU為核心,左側(cè)為RS232接口和以太網(wǎng)接口、SDRAM,F(xiàn)LASH在其右上側(cè),下方從左到右依次為驅(qū)動(dòng)器IDT74FCT244APV、IDT74FCT245APA、配置器IDT74FCT245APA和BDM/JTAG調(diào)試接口。電源盤通過(guò)背板給網(wǎng)管模塊供電。
設(shè)計(jì)中采用的主要器件集成度都很高,CPU是357腳的BGA封裝,F(xiàn)LASH、驅(qū)動(dòng)器、配置器都是48腳,SDRAM是86腳。布線時(shí)需要引出的管腳很多,此時(shí)采用兩層布線幾乎不可能避免線路交叉短路,因此需要采用多層布線。電路板采用六層堆棧結(jié)構(gòu),包括頂層(Top)、底層(Bottom)、兩個(gè)平面層(GND、VCC)和兩個(gè)中間層(Sig1、Sig2)。其中,頂層、底層和中間層1、中間層2走信號(hào)線,而內(nèi)層l作為地層(GND),內(nèi)層2作為電源層。最后,嚴(yán)格按照規(guī)范布線并輔以抗噪聲設(shè)計(jì)。
圖3 適配器接口電路
文中設(shè)計(jì)的網(wǎng)管模塊采用“時(shí)鐘—BDM/JTAG—存儲(chǔ)器—RS232串口—以太網(wǎng)接口”的順序進(jìn)行調(diào)試。在硬件調(diào)試成功后,輔以pSOS實(shí)時(shí)嵌入式操作系統(tǒng)軟件程序,結(jié)合OLT端的網(wǎng)管模塊,可以實(shí)現(xiàn)1G/10G EPON共存系統(tǒng)終端管理功能。該設(shè)計(jì)的模塊化程度高、接口多樣、調(diào)試靈活,可廣泛應(yīng)用于1G/10G EPON共存系統(tǒng)1G ONU端。
[1] IEEE Computer Society. IEEE std 802.3ah-2004[S]. 2004.
[2] 趙麗娜,常慧鋒. ASON中鏈路管理基于pSOS系統(tǒng)的實(shí)現(xiàn)[J]. 光通信技術(shù), 2004,28(9): 48-50.
[3] 劉峰,朱秀昌. 嵌入式實(shí)時(shí)操作系統(tǒng)pSOS在多媒體通信終端中的應(yīng)用[J]. 電視技術(shù), 2001,25(4): 23-25.
[4] 伍能,夏愛軍,李文甫,等. 超長(zhǎng)跨距全光通信系統(tǒng)嵌入式控制模塊的設(shè)計(jì)[J]. 光通信技術(shù), 2011,35(4): 27-29.
[5] 鄭儉鋒. 基于MPC860的嵌入式測(cè)控系統(tǒng)的硬件設(shè)計(jì)[J].電子設(shè)計(jì)應(yīng)用, 2003(11): 57-59.
[6] 全澤昌. 基于MPC860的嵌入式通信處理卡的研究與設(shè)計(jì)[D]. 武漢: 華中科技大學(xué), 2002.
[7] 吳醒峰. 基于MPC+860的無(wú)線網(wǎng)橋_AP硬件設(shè)計(jì)和實(shí)現(xiàn)[D]. 北京: 北京郵電大學(xué), 2003.
[8] 馬尚行,倪美強(qiáng). 基于FPGA的通信卡設(shè)計(jì)和實(shí)現(xiàn)[J]. 電子技術(shù)應(yīng)用, 2007(12): 36-38.
[9] 孫歐. 閃速存儲(chǔ)器MBM29F016的特點(diǎn)及應(yīng)用[J]. 國(guó)外電子元器件, 2003(3): 25-28.
[10] 王騫,丁鐵夫. 高速圖像存儲(chǔ)系統(tǒng)中SDRAM控制器的實(shí)現(xiàn)[J]. 液晶與顯示, 2006,21(1): 48-52.
[11] 董亮. 無(wú)線局域網(wǎng)AP的MAC層協(xié)議研究與硬件設(shè)計(jì)[D]. 南京: 東南大學(xué), 2003.★