10/100Mbps 의 이더넷칩에는 의례희 MAC 과 PHY 가 하나의 칩에 들어간다.

하지만 Gigabit 이더넷이 되면 MAC 과 PHY 가 분리된다. 

MAC 은  순수한 1,0 데이타를 말하며  PHY 를  이비트들을 전기적이 신호성분으로 변경하는 부분을 말한다. 

참고로 PHY에서 4B/5B 엔코딩,디코딩을 실행한다. (4B/5B 엔코딩은 4비트를 5비트로 확장하는 엔코딩이다.)


처음나온 MAC, PHY 인터페이스는 MII (Media Independent Interface) 이다.

TXD[0..3], RXD[0..3], REF_CLK, TX_EN, RX_ERR, CRS, MDIO, MDC  이정도의 신호선이 있다.

데이타버스가 4bit 이므로 클럭은 25MHz 이다. (그래야 100Mbit 를 전송할수 있다.)


RMII 는 MII 인터페이스의 라인을 줄인 형태이다.  Reduce MII 인 것이다.

TXD, RXD 각각 2비트씩 줄였다.  클럭은 50MHz 까지 동작한다.


GMII 는  Gigabit MII 라고 한다.

MII 의 신호선에 클럭과 연관된 몇몇의 신호선이 추가되었다.

TXD, RXD 가 각각 8비트씩 존재한다.  그리고 클럭의 속도는 125MHz 이다. 쫌 빠르다.

아트웍시 길이는 맞춰줘야 하겠다.

MAC 과 PHY 가 8bit 인터페이스가 되여  8B/10B 엔코딩이 이루어진다.


RGMII 는 예상한데로 Reduce GMII 이다.

TXD, RXD 신호선이 각각 4비트씩으로 줄었다.  하지만 클럭은 125MHz 그대로이다.

클럭의 속도가 그대로이니 1Gigabit 속도를 위해  TXD, RXD 를 Double Rate 로 사용한다. 즉 클럭의 상승, 하강 에지 모두 사용한다.


SGMII 도 있다. 

TXD, RXD 가 1비트의 diff 신호선이다.  TX_CLK, RX_CLK 도 역시다 diff 신호선이다.

클럭속도는 625MHz 이며 데이타비트를 DDR 로 사용한다.


10Gigabit 가 나오는 요즘이다.

이를 위해 XGMII 가 존재한다.

TXD, RXD 각각 32bit 버스이다. 클럭은 156.25MHz  DDR 로 사용한다.



임베디드에서도 이제 기가비트가 필요한 세상이다 보니 MII 인터페이스 종류들을 나열하여 보았다.

클럭속도가 점점 빨라지고 있어 불안하다. 고가의 아트웍 툴들로 시물레이션까지 돌려야하는 것이 아닌가 고민이된다.

중소기업을 위해 빌려쓰는 아트웍 툴이 있었으면 좋겠다.