国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

100G以太網(wǎng)CGMII接口的電路設計

2013-08-21 03:32董乾劉勇趙賽
計算機光盤軟件與應用 2013年9期
關鍵詞:子層狀態(tài)機以太網(wǎng)

董乾 劉勇 趙賽

(東南大學無錫分校,江蘇無錫 214135)

摘 要:隨著云計算技術的發(fā)展,數(shù)據(jù)中心的規(guī)模和性能必須有很大提升,智能終端通信帶寬也必須相應提高。100G以太網(wǎng)相對千兆以太網(wǎng),數(shù)據(jù)位寬更大,時鐘頻率更高。因此,MII接口的設計和實現(xiàn)都面臨新的挑戰(zhàn)。本文主要研究100G以太網(wǎng)介質無關接口(CGMII)的設計,完成根據(jù)協(xié)議規(guī)定在全雙工模式下的MAC幀數(shù)據(jù)類型的轉化,以及對鏈路故障的處理。

關鍵詞:以太網(wǎng);100G;MAC;MII

中圖分類號:TP393 文獻標識碼:A 文章編號:1007-9599 (2013) 09-0000-04

隨著移動互聯(lián)網(wǎng)、物流網(wǎng)技術的發(fā)展,應用層和業(yè)務層也發(fā)生著變革[1]。高清、3D、超高清等視頻業(yè)務層出不窮,存儲、共享等數(shù)據(jù)類業(yè)務需求也呈快速增長的趨勢,海量數(shù)據(jù)傳送的需求在日益增強。因此,進行下一代高速以太網(wǎng)技術的研究非常必要[2][3]。最新發(fā)布的IEEE802.3ba協(xié)議的100G標準,在提高速率、增加帶寬的同時,能節(jié)約成本,降低功耗;為更高速的以太網(wǎng)應用,鋪平了發(fā)展之路[4]。本文即研究基于IEEE802.3ba協(xié)議的100G以太網(wǎng)的介質無關接口(100Gb/sMediaIndependentInterface,即CGMII)。

1 CGMII接口概述

CGMII接口以及RS子層處于MAC和PHY之間。圖1描述了RS子層和MII在OSI參考模型中的位置。

圖1 RS子層和MII在OSI參考模型中的位置

GMII接口是IEEE802.3ba規(guī)定的一種與介質無關的接口。它提供獨立的64bits位寬的發(fā)送和接收數(shù)據(jù)通道,僅支持全雙工操作。CGMII接口是連接MAC子層與物理層之間的標準以太網(wǎng)接口,負責MAC和以太網(wǎng)PHY之間的通信。CGMII有三類信號:64bits數(shù)據(jù)信號(TXD<63:0>和RXD<63:0>),8bits控制信號(TXC<7:0>和RXC<7:0>)以及時鐘信號(TX_CLK和RX_CLK)[2][5]。

64bitsTXD/RXD和8bitsTXC/RXC信號輸入到8條數(shù)據(jù)通道,同方向的8條通道共用同一時鐘TX_CLK/RX_CLK,8條通道使用round-robin順序傳輸一個字節(jié)數(shù)據(jù)流。

CGMII數(shù)據(jù)包格式如下:

。

幀間距(inter-frame)是一個沒有幀數(shù)據(jù)活動的區(qū)間。幀間距在終止控制字符(Terminatecontrolcharacter)之后開始傳輸,在開始控制字符(Startcontrolcharacter)之前結束。

前導碼(preamble)和幀首定界符(startofframedelimiter即Sfd):前導碼在一個幀傳輸之前發(fā)送,其值如下:10101010,開始控制字符表示在CGMII上MAC數(shù)據(jù)傳輸?shù)拈_始。發(fā)送時,RS子層將前導碼的第一個字節(jié)轉換成開始控制字符;接收時,RS子層將開始控制字符轉換成前導碼的第一個字節(jié)。開始控制字符對齊在通道0上。緊接前導碼之后的是幀首定界符Sfd,其值為10101011。前導碼和Sfd從最左邊的bits位到最右邊的bits位進行串行傳輸。前導碼和Sfd以字節(jié)按8個通道的順序有序地通道CGMII傳輸,如表1所示。

表1 前導碼和SFD傳輸圖

通道0 通道1 通道2 通道3 通道4 通道5 通道6 通道7

開始字符 10101010 10101010 10101010 10101010 10101010 10101010 10101011

數(shù)據(jù)(Data):包括一系列的數(shù)據(jù)字節(jié)。

幀尾定界符(Endofframedelimiter即Efd):對于發(fā)送數(shù)據(jù)流,在某通道上根據(jù)TXC信號以及終止控制字符編碼組成幀尾定界符,在接收數(shù)據(jù)流上情況相同。CGMII在任意8個通道中都能識別Efd。

2 CGMII設計

2.1 功能定義和總體結構

2.1.1 功能定義

CGMII的邏輯控制信號和功能程序的設計都是為了使不同的介質和收發(fā)器組合對于MAC子層沒有任何影響[3][6]。

本文涉及的以太網(wǎng)100GCGMII接口主要具有以下功能:

(1)支持IEEE802.3ba協(xié)議;

(2)支持100G工作速度;

(3)支持全雙工工作模式;

(4)支持鏈路故障處理。

2.1.2 內部結構劃分

以太網(wǎng)100GCGMII接口的設計是在IEEE802.3ba以太網(wǎng)協(xié)議的基礎上設計一個MAC層的介質無關接口(CGMII)[7],能夠在100G的速率下按照協(xié)議發(fā)送和接收PHY能夠統(tǒng)一識別的數(shù)據(jù)幀。發(fā)送時,在發(fā)送時鐘下通過CGMII接口將MAC子層發(fā)送相應的數(shù)據(jù)幀發(fā)往物理層PHY,在CGMII發(fā)送模塊根據(jù)協(xié)議中的發(fā)送機制封裝數(shù)據(jù)。在接收時,從物理層PHY接收到幀,按照協(xié)議的接收機制在接收模塊中對幀進行處理,再將幀發(fā)送到MAC子層中。在發(fā)送和接收時支持全雙工的工作模式,同時能夠進行錯誤和故障處理、鏈路故障處理。根據(jù)對CGMII功能的定義,將整個CGMII劃分為圖2所示的結構框圖,主要模塊有:發(fā)送數(shù)據(jù)類型轉換模塊、接收數(shù)據(jù)類型轉換模塊、并行通道比率(8:10)轉換模塊、并行通道比率(10:8)轉換模塊[7][8]。

圖2 CGMII結構框圖

2.2 發(fā)送數(shù)據(jù)類型轉換模塊

2.2.1 發(fā)送時序

TX_CLK是由PHY提供的參考時鐘,用于同步TXD<63:0>和TXC<7:0>以進行數(shù)據(jù)發(fā)送和狀態(tài)

控制。TXC<7:0>信號表示CGMII中傳送的是數(shù)據(jù)或者控制字符,當一個數(shù)據(jù)字節(jié)正在傳送,則相應通道上的TXC信號為低電平;當控制字符正在傳送,則相應通道上的TXC信號為高電平。當傳送前導碼的每個字節(jié)(除了第一個字節(jié)被開始控制字符所替換)時,TXC信號為低電平。發(fā)送時序圖如圖3所示。

圖3 發(fā)送時序圖

2.2.2 發(fā)送狀態(tài)機

CGMII_DATA:傳送數(shù)據(jù)狀態(tài)。當從MAC傳入的DataValidBytes信號都為0時,表明無有效數(shù)據(jù)需要傳送,狀態(tài)機進入IDLE狀態(tài)。根據(jù)每個CGMII的DataValidBytes信號,在幀傳輸結束后一個通道添加一個終止控制字符,其余的通道上傳輸空閑控制字符。本設計中有10個CGMII,在DATA狀態(tài)中會根據(jù)所有CGMII的DataValid信號來進行數(shù)據(jù)處理。

CGMII_IDLE:空閑狀態(tài)。當RS檢測到RemoteFault時,狀態(tài)機仍保持IDLE狀態(tài),直到不再檢測到RemoteFault信號。當開始傳輸來自MAC層的幀,狀態(tài)機進入DATA狀態(tài)。

2.3 接收數(shù)據(jù)類型轉換模塊

2.3.1 接收時序

RX_CLK是由PHY提供的一個連續(xù)的時鐘信號,用于同步RXD<63:0>和RXC<7:0>信號。RXC<7:0>表明PHY正在向CGMII傳送的是恢復或解碼后的數(shù)據(jù)或者控制字符。RXC<7:0>為低電平表明接收的為數(shù)據(jù),高電平表明為控制字符,同TXC<7:0>信號相同。接收時序類似于發(fā)送時序。

2.3.2 接收狀態(tài)機

CGMII_DATA:接收數(shù)據(jù)狀態(tài)。在DATA狀態(tài)檢測每個字節(jié)是否為錯誤控制字符(Errorcontrolcharacters),并通過RXC控制信號來決定Eop信號的變化。當某一個CGMII的Eop信號為高,則剩余的CGMII無有效數(shù)據(jù)傳輸。當10個CGMII都沒有有效數(shù)據(jù)傳輸,則狀態(tài)機進入IDLE狀態(tài)。

CGMII_IDLE:空閑狀態(tài)。當PCS模塊輸入信號表明alignment功能完成,并檢測到第一個CGMII的第一個通道(通道0)的控制信號為1,數(shù)據(jù)信號為開始控制字符,則狀態(tài)機進入接收數(shù)據(jù)狀態(tài)。如果不滿足以下條件,則狀態(tài)機繼續(xù)保持IDLE狀態(tài)。

2.3.3 鏈路故障處理

鏈路故障信號在本地RS和遠程RS之間產(chǎn)生,鏈路故障信號由本地RS檢測到,則稱之為本地故障(LocalFault)。PHY能夠檢測到呈現(xiàn)不可靠的通信鏈路的故障。當PHY子層顯示在數(shù)據(jù)通路上檢測到LocalFault并發(fā)送到RS子層,RS會停止發(fā)送MAC數(shù)據(jù),然后在發(fā)送數(shù)據(jù)通路產(chǎn)生遠程故障(RemoteFault)狀態(tài)。當這個遠程故障狀態(tài)被遠程RS檢測到,遠程RS停止發(fā)送MAC數(shù)據(jù),然后產(chǎn)生空閑控制字符(Idlecontrolcharacters)。當RS不再接收到錯誤狀態(tài)信息,就會變回正常操作,開始繼續(xù)發(fā)送MAC數(shù)據(jù)[9]。該狀態(tài)由八個字節(jié)的有序集表示,如表2所示。

表2 故障序列有序集

通道0 通道1 通道2 通道3 通道4 通道5 通道6 通道7 描述

序列字符 0x00 0x00 0x01 0x00 0x00 0x00 0x00 本地故障

序列字符 0x00 0x00 0x02 0x00 0x00 0x00 0x00 遠程故障

鏈路故障狀態(tài)機分為四個狀態(tài),分別為:

INIT狀態(tài):當128列中不包含RemoteFault和LocalFault有序集,狀態(tài)機跳轉到INIT狀態(tài)。當檢測到錯誤序列(fault_sequence),狀態(tài)機跳轉到COUNT狀態(tài)。

COUNT狀態(tài):當檢測到不足三個相同類型的錯誤序列,狀態(tài)機仍保持COUNT狀態(tài)。當檢測到三個以上相同類型錯誤序列,狀態(tài)機跳轉到FAULT狀態(tài)。若檢測到不同類型的錯誤序列,則跳轉到NEW_FAULT_TYPE狀態(tài)。

FAULT狀態(tài):繼續(xù)接收到相同類型,狀態(tài)機繼續(xù)保持在FAULT狀態(tài)。若檢測到不同類型的錯誤序列,則跳轉到NEW_FAULT_TYPE狀態(tài)。

NEW_FAULT_TYPE狀態(tài):將序列計數(shù)值重置為0,然后使狀態(tài)機跳轉到COUNT狀態(tài)。

鏈路故障狀態(tài)機跳轉圖如圖4所示。

圖4 鏈路故障狀態(tài)機跳轉流程圖

2.4 并行通道轉換模塊

本設計中MAC發(fā)送和接收數(shù)據(jù)采用512bits位寬,PHY采用640bits位寬,所以需要異步FIFO來進行并行通道比率轉換。發(fā)送和接收數(shù)據(jù)采用相同結構的FIFO。以發(fā)送數(shù)據(jù)方向做分析,8個64bits通道轉換成10個64bits通道,需要發(fā)送端頻率較快。MAC子層一個周期內最多傳輸512bits數(shù)據(jù),兩個周期后異步FIFO中存有1024bits數(shù)據(jù);當FIFO檢測到有大且等于640bits的數(shù)據(jù),則進行數(shù)據(jù)讀取。而FIFO中剩余數(shù)據(jù)等到FIFO中數(shù)據(jù)大且等于640bits的數(shù)據(jù),再進行讀取。通過設計和計算,本設計中需要深度為72、寬度為64bits的異步FIFO,即可滿足設計需求。

3 仿真結果和波形分析

通過UVM驗證平臺仿真結果如圖5所示。當CGMII的控制信號為ff時,通道開始發(fā)送空閑控制字符??刂菩盘枮?時,通道正常發(fā)送數(shù)據(jù);當檢測到本地故障時,CGMII發(fā)送遠程故障有序集;當檢測到遠程故障時,CGMII給MAC發(fā)送IDLE數(shù)據(jù)。

圖5 仿真時序圖

4 總結

本設計雖然實現(xiàn)了MII操作的基本功能,但是還有一些不足和可以進一步研究的地方.主要包括:(1)一些功能的處理過于復雜,延緩了整體的工作頻率,未能達到100Gb/s的要求。(2)MDIO管理接口。

參考文獻:

[1]張遠望.100G以太網(wǎng)技術和應用[J].中興通訊技術,2009,15(5):49-52.

[2]李暉,唐留城.40G/100G超高速傳送系統(tǒng)發(fā)展及趨勢[J].現(xiàn)代電信科技,2010(4):28-31.

[3]高展.以太網(wǎng)介質訪問控制器(MAC)的研究[D].西安:西北工業(yè)大學,2004.

[4]張小丹,程丹,徐晶.40G/100G以太網(wǎng)關鍵技術的研究與應用[J].光通信技術,2011,35(4):1-4.

[5]李穎.以太網(wǎng)大未來[N].網(wǎng)絡世界,2011,09,12(35).

[6]曹政,李磊,陳明宇.萬兆以太網(wǎng)MAC層控制器設計與實現(xiàn)[J].小型微型計算機系統(tǒng),2007,28(6):974-978.

[7]湯瑞,趙文玉,吳慶偉.40G/100G標準化現(xiàn)狀及發(fā)展趨勢[J].郵電設計技術,2011(4):1-4.

[8]傅珂,馬志強,李雪松.40Gb/S,100Gb/S以太網(wǎng)IEEEP802.3ba標準研究[J].光通信技術,2009,33(11):12-15.

[9]Ralf-PeterBraun.100GinthenetworkofDeutscheTelekom[J].OpticalFiberTechnology,2011,17(5):368-376.

[作者簡介]董乾(1982-),男,江蘇泰州人,工程師,碩士,研究方向:數(shù)字集成電路設計;劉勇(1979-),男,江蘇沛縣人,工程師,碩士,研究方向:集成電路設計與制造;趙賽(1990-),女,東南大學集成電路學院碩士研究生,研究方向:VLSI設計。

猜你喜歡
子層狀態(tài)機以太網(wǎng)
基于1500以太網(wǎng)養(yǎng)豬場的智能飼喂控制系統(tǒng)的設計與實現(xiàn)
基于有限狀態(tài)機的交會對接飛行任務規(guī)劃方法
復合材料厚層合板力學性能等效方法研究
談實時以太網(wǎng)EtherCAT技術在變電站自動化中的應用
一種90W高功率以太網(wǎng)供電系統(tǒng)的設計
分離載荷近距協(xié)議的數(shù)據(jù)鏈路層仿真研究
淺談EPON與工業(yè)以太網(wǎng)在貴遵高速公路中的應用
以太網(wǎng)協(xié)議模型的演進分析
FPGA設計中狀態(tài)機安全性研究
基于反熔絲FPGA的有限狀態(tài)機加固設計