CodingBox 문서

미디어 독립 인터페이스: 포트의 전기적 측면

이더넷 MAC(스위치 ASIC이나 NIC 컨트롤러 내부)과 매체(구리 페어, 광섬유, 백플레인) 사이에는 표준화된 전기적 인터페이스가 있습니다. IEEE는 이 계열을 매체 독립 인터페이스(MII)라고 부릅니다. MAC은 반대쪽이 구리 PHY든 SFP 케이지든 400G 모듈이든, 합의된 인터페이스로 통신하기만 하면 신경 쓰지 않습니다. 이더넷은 세대마다 인터페이스를 하나씩 추가해 왔습니다: 10/100용 MII와 RMII, 기가비트용 GMII/RGMII/SGMII, 10G용 XGMII/XAUI/XFI/SFI, 그 이후 전부를 위한 AUI 계열(CAUI-4, 400GAUI-8, 800GAUI-8)입니다. 이 섹션은 이를 트랜시버의 관점에서 설명합니다 — 케이지에 무엇이 도착하는지, 구리 SFP가 무엇을 에뮬레이션해야 하는지, “모드가 맞지 않는” 포트가 정상 모듈을 왜 거부하는지입니다.

구리 PHY 포트, 플러거블 광 모듈, 구리 SFP 각각의 레이어 스택: MAC → xMII → PCS → PMA/AUI → PMD

계층이 나뉘는 이유

계층위치다음 계층과의 인터페이스
MAC(프레이밍, 주소)스위치 ASIC, NIC 컨트롤러, SoC조정 서브계층 → xMII
PCS(코딩: 8b/10b, 64b/66b, FEC)플러거블용은 ASIC/컨트롤러, 구리용은 PHY 칩PMA
PMA / SerDesASIC SerDes 또는 PHY모듈이나 매체로 가는 AUI 레인
PMD(레이저, 구리 드라이버)트랜시버 모듈 또는 PHY 칩광섬유 / 케이블

플러거블 광학 부품의 경우 PCS와 SerDes는 호스트에 남아 있으며, 모듈은 직렬 레인(SFI, CAUI-4, 400GAUI-8)을 받아 빛으로 변환합니다. 구리의 경우 PHY 칩이 PCS+PMA+PMD를 모두 수행하며 병렬(RGMII) 또는 직렬(SGMII) 인터페이스로 MAC과 통신합니다. 구리 SFP는 이 PHY를 모듈 내부에 넣으므로, 케이지는 SGMII나 1000BASE-X를 그 PHY까지 전달해야 합니다(SGMII & 시리얼 기가비트).

단계별 인터페이스

인터페이스레이트형태신호 수전송 거리정의 주체대표적 사용처
MII10/1004비트 병렬 @ 2.5/25 MHz16–18cmIEEE 802.3 Cl. 22레거시 MAC ↔ PHY
RMII10/1002비트 @ 50 MHz7–9cmRMII Consortium임베디드 SoC ↔ PHY
SMII / SS-SMII10/1001비트 @ 125 MHz포트당 2–3cmCisco멀티포트 PHY
GMII1G(+10/100)8비트 @ 125 MHz24개 이상cmCl. 35MAC ↔ PHY, 오늘날에는 대부분 온칩
RGMII1G(+10/100)4비트 DDR @ 125 MHz12≤ 10–15 cmHP/Marvell RGMII v1.3/2.0소형 스위치/라우터의 SoC ↔ 구리 PHY
TBI / RTBI1G10비트 @ 125 MHz20개 이상cmCl. 36MAC ↔ 외장 SerDes(레거시)
1000BASE-X(SerDes)1G1레인 1.25 GBd, 8b/10b차동 페어 2개50 cm+Cl. 36/37SFP 케이지가 1G에서 전달하는 신호
SGMII10/100/10001레인 1.25 GBd, 8b/10b2페어(+ 클록)50 cm+Cisco SGMII v1.8MAC ↔ 구리 PHY, MAC ↔ 구리 SFP
2500BASE-X2.5GSGMII/1000BASE-X 레이트의 1.25배: 3.125 GBd2페어50 cm사실상 표준2.5G SFP, PON 스틱
QSGMII4 × 1G1레인 5 GBd2페어50 cmCiscoASIC ↔ 쿼드 구리 PHY
USXGMII10M–10G1레인 10.3125 GBd, 64b/66b2페어30 cmCisco/MarvellASIC ↔ mGig PHY, 10GBASE-T SFP+
XGMII10G32비트 DDR @ 156.25 MHz74< 7 cmCl. 46온칩
XAUI10G4 × 3.125 GBd, 8b/10b8페어50 cmCl. 47XENPAK/X2 모듈, 레거시 PHY
XFI / SFI10G1 × 10.3125 GBd, 64b/66b2페어20–30 cmXFP MSA / SFF-8431XFP / SFP+ 케이지
10GBASE-KR10G1 × 10.3125 GBd2페어백플레인 1 mCl. 72백플레인, 10GBASE-T PHY
25GAUI25G1 × 25.78 GBd NRZ2페어C2MAnnex 109A/BSFP28 케이지
XLAUI / CAUI-1040G / 100G4 / 10 × 10.3125 GBd8 / 20페어C2C/C2MAnnex 83A/BQSFP+ / CFP, CXP
CAUI-4100G4 × 25.78 GBd NRZ8페어C2MAnnex 83D/EQSFP28 케이지
50GAUI-2 / -150G2 × 26.5625 NRZ / 1 × 26.5625 GBd PAM44 / 2페어C2MAnnex 135B–ESFP56
100GAUI-4 / -2 / -1100G4 × NRZ / 2 × 53 GBd PAM4 / 1 × 106 GBd PAM4C2MAnnex 135D–G, 120GQSFP28(PAM4 변형), QSFP112
200GAUI-8 / -4 / -2200G8 × 26.5 PAM4 / 4 × 53 / 2 × 106C2MAnnex 120C–GQSFP56, QSFP112
400GAUI-16 / -8 / -4400G16 × 25 NRZ / 8 × 53 PAM4 / 4 × 106 PAM4C2MAnnex 120B–GCFP8 / QSFP-DD, OSFP / QSFP112, OSFP
800GAUI-8 / -4800G8 × 106 PAM4 / 4 × 212 PAM4C2M802.3df / djOSFP, QSFP-DD800 / OSFP224, OSFP-XD

자세한 내용: MII, RMII, GMII, RGMII, SGMII, 1000BASE-X, QSGMII, USXGMII, XGMII, XAUI, SFI와 AUI 계열.

각 인터페이스가 사용되는 곳

장치MAC → …… → 매체
48포트 1G 구리 스위치ASIC → QSGMII → 쿼드 PHYPHY → RJ45
소형 라우터 / SoC 보드SoC → RGMII 또는 SGMII → PHYPHY → RJ45, 또는 SoC → 1000BASE-X/SGMII → SFP 케이지
10G/25G 스위치 또는 NIC의 SFP+/SFP28 포트ASIC SerDes → SFI / 25GAUI → 케이지모듈 → 광섬유 또는 DAC
100G QSFP28 포트ASIC → CAUI-4(4 × 25G) → 케이지모듈 → 4 λ 또는 광섬유 4가닥
400G QSFP-DD / OSFP 포트ASIC → 400GAUI-8(8 × 50G PAM4) → 케이지모듈 기어박스 → 4 × 100G 광신호
800G OSFP 포트ASIC → 800GAUI-8(8 × 100G PAM4) → 케이지모듈 → 8 × 100G(DR8) 또는 4 × 200G
구리 1000BASE-T SFP호스트 1000BASE-X 또는 SGMII → 모듈의 PHYPHY → RJ45
10GBASE-T SFP+호스트 SFI(10GBASE-R) → 모듈의 PHY(USXGMII급)PHY → RJ45
멀티기가 RJ45 스위치 포트ASIC → USXGMII → mGig PHY2.5/5/10GBASE-T

PHY와 모듈의 관리 방식

구리 PHY 칩플러거블 모듈
버스MDIO/MDC(Clause 22: 5비트 주소, 32 × 16비트 레지스터; Clause 45: 10G 이상의 디바이스/레지스터 쌍)I²C 2선식(A0h/A2h, CMIS 페이지)(2선식 인터페이스)
링크 상태PHY 상태 레지스터(reg 1), RGMII/SGMII에서는 인밴드로 전달LOS/LOL 핀과 플래그, DDM
Linux 도구mii-tool, phytool, ethtool(PHY 드라이버)ethtool -m, i2c-dev(NIC 도구)
구리 SFP의 특이점모듈 내부의 PHY는 두 번째 주소(예: Marvell 88E1111 기반 모듈의 0xAC)를 통해 I²C로 접근할 수 있거나, 벤더 페이지를 거쳐 MDIO가 터널링됩니다

트랜시버 작업에서 중요한 이유

  • 케이지의 모드. 1G SFP 포트는 1000BASE-X 모드나 SGMII 모드로 동작할 수 있습니다. 구리 SFP는 모드마다 다르게 동작하며, 10/100 클라이언트는 SGMII에서만 동작합니다(또는 그 차이를 감추는 모듈을 쓰는 경우도 있습니다)(SGMII & 시리얼 기가비트).
  • 레이트와 코딩. 모듈은 호스트의 레인 레이트와 코딩을 받아들여야 합니다: SFI는 10.3125 GBd, CAUI-4는 25.78, 400GAUI-8은 PAM4입니다. 이 값은 컴플라이언스 코드와 CMIS 애플리케이션이 광고하는 내용입니다(컴플라이언스 코드).
  • 누가 리타이밍하는가. SFP+ 모듈은 흔히 리니어/리미팅 방식이며 호스트가 등화를 담당합니다. 25G 이상 모듈은 CDR을 탑재합니다. PAM4 모듈은 DSP를 탑재합니다. LPO 모듈은 다시 리니어 방식이며 호스트의 SerDes에 의존합니다(CDR, DSP와 LPO).
  • 전기 레인 ≠ 광 레인. 400G-FR4는 전기 레인 8개를 받아 파장 4개를 내보내며, 기어박스는 모듈 안에 있습니다(XGMII, XAUI와 AUI 계열).
  • Linux는 EEPROM을 보고 인터페이스를 정합니다. 커널의 SFP 레이어는 바이트 3–10, 12, 36을 읽어 1000BASE-X, SGMII, 2500BASE-X, 10GBASE-R 중 하나를 결정합니다. 컴플라이언스 바이트가 잘못되면 정상 모듈이 잘못된 모드로 링크됩니다(메모리 맵).

더 읽어보기

  • MII, RMII, GMII, RGMII — 병렬 인터페이스: 핀, 클록, RGMII 지연 모드, 인밴드 상태, MDIO를 통한 PHY 관리, 일반적인 장애.
  • SGMII, 1000BASE-X, QSGMII, USXGMII — PHY와 SFP 케이지로 가는 시리얼 인터페이스: 자동 협상의 차이, 구리 SFP, 100BASE-FX, 2.5G, 멀티기가, Linux가 모드를 선택하는 방법.
  • XGMII, XAUI, XFI/SFI와 AUI 계열 — 10G부터 800G까지: 레인 수, C2C 대 C2M, 컴플라이언스 지점, OIF CEI 매핑, 전기-광 레인 매핑, 리타이밍 모듈과 리니어 모듈.

CodingBox에서

CodingBox가 보여주는 바이트는 모듈이 어떤 호스트 인터페이스를 지원하는지 밝히는 선언입니다: 컴플라이언스 코드(1000BASE-T → SGMII/1000BASE-X 지원 구리), 공칭 비트 레이트, 인코딩 바이트(8b/10b 대 64b/66b 대 PAM4), CDR 비트, CMIS 호스트 인터페이스 ID입니다. 이를 편집하면 호스트가 시도할 인터페이스가 바뀝니다(Check transceiver, 컴플라이언스 코드).


이 문서에서 부정확한 내용이나 오류를 발견하면 해당 부분을 선택하고 Ctrl+Enter를 눌러 해 주세요.