2013-04-03 16 views
19

Principalmente provengo da un background di software embedded e quindi ho una conoscenza molto limitata dell'hardware in generale. Io uso sempre per pensare Ethernet come quel piccolo connettore fisico sul tuo computer nel quale colleghi il tuo cavo Ethernet. E dal punto di vista del software tutto ciò che devi fare è installare il driver (in Windows) o configurare il kernel Linux per includere il driver per la tua Ethernet.Chiarificazione su Ethernet, MII, SGMII, RGMII e PHY

Domande:

Ma, come ho iniziato a scendere di un livello (verso l'hardware) e guardando varie scheda tecnica e schemi, ho iniziato a incontrare termini come PHY, MII, SGMII, RGMII, etc. E ora sono poco confuso su cosa costituisca un Ethernet? Ad esempio, quando dico porta Intel 82574L 1.0 Gbps Ethernet, dove si inseriscono tutti questi termini?

+2

Quando si arriva al networking 10Gbps, si incontrano anche XGMII ("X" dieci "G" gig "MII") e un intero carico di altri acronimi divertenti (XAUI, XFI, SFI, SFP, ...) , ancora una volta per 40/100G :) – Chiggs

risposta

28

Vorrei cercare di spiegare:

(1) Il MII, SGMII, RGMII sono tre tipi di interfaccia tra il MAC chip e il chip PHY. Intel 82574L è un chip MAC. Guardando figura seguente:

_______   __________     ___________ 
    CPU | PCI-E |  | MII/SGMII/RGMII |   | 
    or |<=======>| MAC |<================>| PHY  |<==========>physical interface 
    board| or else |  |     |   | 
________   __________     ___________ 

Per i dettagli su MII (100 Mbps), SGMII (1 Gbps, di serie), RGMII (1 Gbps, ridotto) la definizione, è possibile google.

(2) In linea di massima, la scheda NIC (Network Interface Card) consiste di un chip MAC e del relativo chip PHY e di altri moduli periferici. E anche un driver di periferica ethernet dovrebbe funzionare con l'hardware NIC. Il chip MAC ha un'interfaccia con la CPU di controllo o la scheda madre del PC, come il bus PCI-E o altro.

+2

Che cos'è un chip PHY? Com'è diverso da un chip MAC? Inoltre, in base alle tue spiegazioni sembra che MII, SGMII e RGMII siano solo specifiche per l'interconnessione di chip PHY e MAC? È giusto? – modest

+3

Sì, hai ragione riguardo a MII/SGMII/RGMII. La differenza tra PHY e MAC è facile da google. Semplicemente parlando, il chip PHY sta gestendo i segnali fisici, come la modalità di lavoro, duplex e negoziazione. Mentre il chip MAC sta gestendo il livello di collegamento dati, creazione di frame ethernet. –

+0

Ciao @tian_yufeng, potresti spiegare per favore qual è la differenza tra RGMII e SGMII auto-negotiation? Come ho provato a google, per la negoziazione automatica RGMII è sufficiente leggere lo stato dal chip PHY. Ma per SGMII, oltre alla negoziazione sul filo, c'è un'altra negoziazione tra MAC e PHY. Mi fa confondere lo –

24

Alcune definizioni:

  • MAC - Media Access Control. Questa è la parte del sistema che converte un pacchetto dal sistema operativo in un flusso di byte da mettere sul filo (o fibra). Spesso si interfaccia al processore host su qualcosa come PCI Express (per esempio).
  • PHY - physical layer - converte un flusso di byte dal MAC in segnali su uno o più fili o fibre.
  • MII - interfaccia indipendente dai supporti. Solo un set standard di pin tra il MAC e il PHY, in modo che il MAC non debba sapere o preoccuparsi di quale sia il supporto fisico, e il PHY non deve sapere o preoccuparsi di come appare l'interfaccia del processore host.

L'MII è stato standardizzato molto tempo fa e supporta velocità di 100 Mbit/sec. È disponibile anche una versione che utilizza meno pin, RMII ('R' per ridurla).

Per velocità gigabit, viene utilizzata l'interfaccia GMII ('G' per gigabit), con una versione di spacco ridotta denominata RGMII. È disponibile anche una versione pincount molto ridotta chiamata SGMII ('S' per seriale) che richiede capacità speciali sui pin IO del MAC, mentre gli altri xMII sono segnali logici relativamente convenzionali.

Ci sono anche molte più varietà di interfacce utilizzate in altre circostanze, possono dei quali collegati a dalla pagina di Wikipedia MII:

http://en.wikipedia.org/wiki/Media_Independent_Interface

quanto riguarda la tua domanda specifica di chip Intel - per quanto mi è possibile tell (il collegamento del datasheet sembra morto), quel chip è un MAC, con PCIe. Quindi si posizionerà tra il bus PCIe sull'host e una sorta di strato fisico gigabit (PHY).