一種fpga芯片內(nèi)置phy收發(fā)器功能的以太網(wǎng)實現(xiàn)系統(tǒng)的制作方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及一種FPGA芯片內(nèi)置PHY收發(fā)器功能的以太網(wǎng)實現(xiàn)系統(tǒng),屬于以太網(wǎng)技術(shù)領(lǐng)域。
【背景技術(shù)】
[0002]按照OSI (Open System Interconnect開放系統(tǒng)互連參考模型)參考模型以太網(wǎng)連接包含物理層(PHY)和數(shù)據(jù)鏈路層(MAC)。物理層定義了數(shù)據(jù)傳送與接收所需要的電與光信號、線路狀態(tài)、時鐘基準(zhǔn)、數(shù)據(jù)編碼和電路等,并向數(shù)據(jù)鏈路層設(shè)備提供標(biāo)準(zhǔn)接口,物理層的芯片稱之為PHY收發(fā)器。數(shù)據(jù)鏈路層則提供尋址機構(gòu)、數(shù)據(jù)幀的構(gòu)建、數(shù)據(jù)差錯檢查、傳送控制、向網(wǎng)絡(luò)層提供標(biāo)準(zhǔn)的數(shù)據(jù)接口等功能,數(shù)據(jù)鏈路層的芯片稱之為MAC控制器。
[0003]由于目前市場上可選的CPU(處理器)芯片或FPGA(現(xiàn)場可編程門陣列)芯片只內(nèi)嵌MAC控制器而不包含PHY收發(fā)器,因此,在實現(xiàn)以太網(wǎng)通信時需要外接PHY收發(fā)器芯片(或PHY+MAC芯片),由獨立的PHY收發(fā)器芯片實現(xiàn)以太網(wǎng)物理層功能,PHY收發(fā)器芯片與控制器芯片之間通過MII或RMII接口互聯(lián),通過MD1接口實現(xiàn)處理器芯片對PHY收發(fā)器芯片的管理。
[0004]以上方案為了實現(xiàn)百兆光以太網(wǎng)通信,必須外接PHY收發(fā)器芯片(或PHY+MAC芯片)。首先增加了器件的種類和成本;其次由于PHY收發(fā)器芯片需要相應(yīng)的外圍電路支持,增加了 PCB板設(shè)計的復(fù)雜度;再次PHY收發(fā)器芯片和處理器芯片之間通過MII或RMII接口互聯(lián),屬于芯片級的互聯(lián),信號線較多,存在一定的誤碼隱患。
【發(fā)明內(nèi)容】
[0005]針對現(xiàn)有技術(shù)存在的不足,本發(fā)明目的是提供一種FPGA芯片內(nèi)置PHY收發(fā)器功能的以太網(wǎng)實現(xiàn)系統(tǒng),在FPGA芯片內(nèi)部分別實現(xiàn)了 PHY收發(fā)器及MAC控制器功能,由此實現(xiàn)的以太網(wǎng),既提高了集成度和可靠性,又減小了 PCB板設(shè)計復(fù)雜度;既減少了器件種類,又節(jié)省了成本。
[0006]為了實現(xiàn)上述目的,本發(fā)明是通過如下的技術(shù)方案來實現(xiàn):
[0007]本發(fā)明的一種FPGA芯片內(nèi)置PHY收發(fā)器功能的以太網(wǎng)實現(xiàn)系統(tǒng),包括FPGA芯片和FPGA外部收發(fā)器;FPGA芯片包括MAC模塊和PHY模塊;PHY模塊包括FIFO存儲器、編解碼器、數(shù)據(jù)時鐘恢復(fù)模塊、單端-差分轉(zhuǎn)換器、差分-單端轉(zhuǎn)換器和與FPGA外部收發(fā)器相連接的FPGA內(nèi)部收發(fā)器,所述FIFO存儲器通過MII接口與MAC模塊相連接;發(fā)送數(shù)據(jù)時,首先通過所述MII接口將MAC模塊的待發(fā)送數(shù)據(jù)緩存至FIFO存儲器,其次通過所述編解碼器進行以太網(wǎng)幀頭、幀尾插入以及4B5B編碼,并進行并串轉(zhuǎn)換及NRZI編碼,最后通過所述單端-差分轉(zhuǎn)換器將單端信號轉(zhuǎn)換為差分信號,并將差分信號通過所述FPGA內(nèi)部收發(fā)器發(fā)送至FPGA外部收發(fā)器;接收數(shù)據(jù)時,首先通過所述外部收發(fā)器將差分信號發(fā)送至FPGA內(nèi)部收發(fā)器,并通過所述差分-單端轉(zhuǎn)換器將差分信號轉(zhuǎn)換為單端信號,其次通過所述數(shù)據(jù)時鐘恢復(fù)模塊進行串行異步數(shù)據(jù)信號時鐘數(shù)據(jù)恢復(fù),然后將恢復(fù)后的數(shù)據(jù)通過所述編解碼器進行NRZI解碼,并進行幀數(shù)據(jù)的幀頭、幀尾識別及4B5B解碼,最后通過串并轉(zhuǎn)換后整理為字節(jié)對齊數(shù)據(jù)存入所述FIFO存儲器,再通過所述MII接口將數(shù)據(jù)傳遞給MAC模塊進行處理。
[0008]上述FPGA芯片內(nèi)還設(shè)有鎖相環(huán),所述鎖相環(huán)輸出多個采樣時鐘信號至數(shù)據(jù)時鐘恢復(fù)模塊,多個采樣時鐘相位均勻分布在一個時鐘周期內(nèi),多個采樣時鐘依次對串行異步數(shù)據(jù)信號進行采樣,再將多個采樣時鐘的采樣結(jié)果存入FIFO存儲器,根據(jù)比特流的0、1跳變信息可以恢復(fù)出串行異步數(shù)據(jù)信號的時鐘和數(shù)據(jù)信息。
[0009]上述FPGA外部收發(fā)器通過LVDS差分信號與FPGA內(nèi)部收發(fā)器相連接。
[0010]本發(fā)明將PHY收發(fā)器芯片功能移植到FPGA芯片內(nèi)部,在FPGA單芯片內(nèi)部既包含PHY收發(fā)器功能又包含MAC控制器功能,PHY收發(fā)器模塊與MAC控制器模塊之間通過芯片內(nèi)部信號互聯(lián),即保證了高可靠性信號互聯(lián),同時也方便對PHY收發(fā)器模塊進行管理;由于減少了 PHY收發(fā)器芯片,因此可以大大簡化PCB板設(shè)計、提高集成度,減少器件種類、降低成本;由于FPGA設(shè)計的靈活性,可根據(jù)需要靈活擴展網(wǎng)口數(shù)目和增加其它附加功能(如支持IEEE1588對時等定制化功能)。
【附圖說明】
[0011]圖1為本發(fā)明的一種FPGA芯片內(nèi)置PHY收發(fā)器功能的以太網(wǎng)實現(xiàn)系統(tǒng)的系統(tǒng)框圖;
[0012]圖2為本發(fā)明的以太網(wǎng)PHY收發(fā)器功能的發(fā)送數(shù)據(jù)流程圖;
[0013]圖3為本發(fā)明的以太網(wǎng)PHY收發(fā)器功能的接收數(shù)據(jù)流程圖;
[0014]圖4為多相位時鐘采樣示意圖。
【具體實施方式】
[0015]為使本發(fā)明實現(xiàn)的技術(shù)手段、創(chuàng)作特征、達成目的與功效易于明白了解,下面結(jié)合【具體實施方式】,進一步闡述本發(fā)明。
[0016]參見圖1,本發(fā)明提出的百兆光以太網(wǎng)實現(xiàn)方案,通過在FPGA芯片內(nèi)部實現(xiàn)PHY收發(fā)器芯片功能以替代獨立的PHY收發(fā)器芯片,然后FPGA與外部光收發(fā)器通過LVDS差分信號連接實現(xiàn)(根據(jù)需要進行差分信號轉(zhuǎn)換)。
[0017]按照100Base-FX百兆光以太網(wǎng)物理層PHY收發(fā)器芯片的功能要求,其收發(fā)數(shù)據(jù)流程如圖2和圖3所不。
[0018]發(fā)送流程:首先通過MII接口將MAC控制器模塊的待發(fā)送數(shù)據(jù)緩存至發(fā)送FIFO,其次進行以太網(wǎng)幀頭、幀尾插入及4B5B編碼,再次進行并串轉(zhuǎn)換和NRZI編碼,最后再通過LVDS驅(qū)動器將單端信號轉(zhuǎn)換為差分信號輸出至光收發(fā)器。
[0019]接收流程:首先將光收發(fā)器輸入的差分信號通過LVDS接收器轉(zhuǎn)換為單端信號,其次進行串行異步數(shù)據(jù)信號時鐘數(shù)據(jù)恢復(fù),并將恢復(fù)后的數(shù)據(jù)進行NRZI解碼,再次進行幀數(shù)據(jù)的幀頭、幀尾識別及4B5B解碼,最后通過串并轉(zhuǎn)換后整理為字節(jié)對齊數(shù)據(jù)存入接收FIFO,再通過MII接口將數(shù)據(jù)傳遞給MAC控制器模塊進行異常判斷、CRC校驗、地址過濾等處理。
[0020]PHY收發(fā)器接收數(shù)據(jù)流程中串行異步數(shù)據(jù)信號時間數(shù)據(jù)恢復(fù)處理是本發(fā)明的難點之一,由于百兆光以太網(wǎng)的串行數(shù)據(jù)速率為125Mbps,按照那奎斯特采樣定律采樣率必須大于2倍以上才能恢復(fù)出原始數(shù)據(jù),根據(jù)實際測試經(jīng)驗,考慮到信號邊沿抖動等影響,采樣率在4倍以上時鐘數(shù)據(jù)恢復(fù)較理想。然而目前市場上主流FPGA芯片主頻在400MHz左右,難以通過單時鐘高倍率采樣實現(xiàn)。
[0021]參見圖4,本發(fā)明采用多相位時鐘采樣的方式,通過FPGA內(nèi)置PLL鎖相環(huán)輸出8個125MHz采樣時鐘信號,且8個采樣時鐘相位均勻分布在一個時鐘周期內(nèi),即相鄰采樣時鐘相位差45度,由8個采樣時鐘依次對串行異步數(shù)據(jù)信號進行采樣,再將8個采樣時鐘的采樣結(jié)果存入比特流FIFO,根據(jù)比特流的0、1跳變信息可以恢復(fù)出串行異步數(shù)據(jù)信號的時鐘和數(shù)據(jù)信息。
[0022]本發(fā)明的系統(tǒng)不僅限于百兆以太網(wǎng)和光以太網(wǎng),對于十兆以太網(wǎng)及電以太網(wǎng)同樣適用。
[0023]本發(fā)明方案將PHY收發(fā)器和MAC控制器功能都移植到FPGA芯片內(nèi)部,PHY收發(fā)器模塊與MAC控制器模塊之間通過芯片內(nèi)部信號互聯(lián),保證了高可靠性信號互聯(lián),同時也方便對PHY收發(fā)器模塊的管理。由于減少了 PHY收發(fā)器芯片,因此可以大大簡化PCB板設(shè)計、提高集成度,減少物料種類、降低成本。另外,由于FPGA設(shè)計的靈活性,可根據(jù)需要靈活擴展網(wǎng)口數(shù)目和增加其它附加功能,如支持IEEE1588對時等定制化功能。
[0024]以上顯示和描述了本發(fā)明的基本原理和主要特征和本發(fā)明的優(yōu)點。本行業(yè)的技術(shù)人員應(yīng)該了解,本發(fā)明不受上述實施例的限制,上述實施例和說明書中描述的只是說明本發(fā)明的原理,在不脫離本發(fā)明精神和范圍的前提下,本發(fā)明還會有各種變化和改進,這些變化和改進都落入要求保護的本發(fā)明范圍內(nèi)。本發(fā)明要求保護范圍由所附的權(quán)利要求書及其等效物界定。
【主權(quán)項】
1.一種FPGA芯片內(nèi)置PHY收發(fā)器功能的以太網(wǎng)實現(xiàn)系統(tǒng),其特征在于,包括FPGA芯片和FPGA外部收發(fā)器; 所述FPGA芯片包括MAC模塊和PHY模塊; 所述PHY模塊包括FIFO存儲器、編解碼器、數(shù)據(jù)時鐘恢復(fù)模塊、單端-差分轉(zhuǎn)換器、差分-單端轉(zhuǎn)換器和與FPGA外部收發(fā)器相連接的FPGA內(nèi)部收發(fā)器,所述FIFO存儲器通過MII接口與MAC模塊相連接; 發(fā)送數(shù)據(jù)時,首先通過所述MII接口將MAC模塊的待發(fā)送數(shù)據(jù)緩存至FIFO存儲器,其次通過所述編解碼器進行以太網(wǎng)幀頭、幀尾插入以及4B5B編碼,并進行并串轉(zhuǎn)換及NRZI編碼,最后通過所述單端-差分轉(zhuǎn)換器將單端信號轉(zhuǎn)換為差分信號,并將差分信號通過所述FPGA內(nèi)部收發(fā)器發(fā)送至FPGA外部收發(fā)器; 接收數(shù)據(jù)時,首先通過所述外部收發(fā)器將差分信號發(fā)送至FPGA內(nèi)部收發(fā)器,并通過所述差分-單端轉(zhuǎn)換器將差分信號轉(zhuǎn)換為單端信號,其次通過所述數(shù)據(jù)時鐘恢復(fù)模塊進行串行異步數(shù)據(jù)信號時鐘數(shù)據(jù)恢復(fù),然后將恢復(fù)后的數(shù)據(jù)通過所述編解碼器進行NRZI解碼,并進行幀數(shù)據(jù)的幀頭、幀尾識別及4B5B解碼,最后通過串并轉(zhuǎn)換后整理為字節(jié)對齊數(shù)據(jù)存入所述FIFO存儲器,再通過所述MII接口將數(shù)據(jù)傳遞給MAC模塊進行處理。2.根據(jù)權(quán)利要求1所述的FPGA芯片內(nèi)置PHY收發(fā)器功能的以太網(wǎng)實現(xiàn)系統(tǒng),其特征在于, 所述FPGA芯片內(nèi)還設(shè)有鎖相環(huán),所述鎖相環(huán)輸出多個采樣時鐘信號至數(shù)據(jù)時鐘恢復(fù)模塊,多個采樣時鐘相位均勻分布在一個時鐘周期內(nèi),多個采樣時鐘依次對串行異步數(shù)據(jù)信號進行采樣,再將多個采樣時鐘的采樣結(jié)果存入FIFO存儲器,根據(jù)比特流的0、1跳變信息可以恢復(fù)出串行異步數(shù)據(jù)信號的時鐘和數(shù)據(jù)信息。3.根據(jù)權(quán)利要求1所述的FPGA芯片內(nèi)置PHY收發(fā)器功能的以太網(wǎng)實現(xiàn)系統(tǒng),其特征在于, 所述FPGA外部收發(fā)器通過LVDS差分信號與FPGA內(nèi)部收發(fā)器相連接。
【專利摘要】本發(fā)明公開了一種FPGA芯片內(nèi)置PHY收發(fā)器功能的以太網(wǎng)實現(xiàn)系統(tǒng),包括FPGA芯片和FPGA外部收發(fā)器;FPGA芯片包括MAC模塊和PHY模塊;發(fā)送數(shù)據(jù)時,將MAC模塊的數(shù)據(jù)緩存至存儲器,進行以太網(wǎng)幀頭幀尾插入以及編碼,進行并串轉(zhuǎn)換及編碼,將差分信號通過內(nèi)部收發(fā)器發(fā)送至外部收發(fā)器;接收數(shù)據(jù)時,將差分信號轉(zhuǎn)換為單端信號,進行串行異步數(shù)據(jù)信號時鐘數(shù)據(jù)恢復(fù),將恢復(fù)后的數(shù)據(jù)進行解碼,進行幀頭幀尾識別及解碼,通過串并轉(zhuǎn)換后整理為字節(jié)對齊數(shù)據(jù)存入存儲器,將數(shù)據(jù)傳遞給MAC模塊進行處理。本發(fā)明在FPGA芯片內(nèi)部分別實現(xiàn)了PHY收發(fā)器及MAC控制器功能,由此實現(xiàn)的以太網(wǎng),提高了集成度和可靠性。
【IPC分類】H04L12/28
【公開號】CN104993982
【申請?zhí)枴緾N201510257301
【發(fā)明人】葉品勇, 陳慶旭, 陳新之
【申請人】南京國電南自電網(wǎng)自動化有限公司
【公開日】2015年10月21日
【申請日】2015年5月19日