La interfaz independiente del medio ( MII ) se definió originalmente como una interfaz estándar para conectar un bloque de control de acceso al medio (MAC) Fast Ethernet (es decir, 100 Mbit/s ) a un chip PHY . La MII está estandarizada por IEEE 802.3u y conecta diferentes tipos de PHY a MAC. Ser independiente del medio significa que se pueden usar diferentes tipos de dispositivos PHY para conectarse a diferentes medios (es decir, par trenzado , fibra óptica , etc.) sin rediseñar ni reemplazar el hardware MAC. Por lo tanto, se puede usar cualquier MAC con cualquier PHY, independientemente del medio de transmisión de la señal de red.
El MII se puede utilizar para conectar una MAC a un PHY externo mediante un conector enchufable o directamente a un chip PHY en la misma PCB . En las PC más antiguas, el conector CNR tipo B transportaba señales MII.
Los datos de red en la interfaz se estructuran utilizando el estándar IEEE Ethernet . Como tal, se compone de un preámbulo, un delimitador de trama inicial, encabezados Ethernet, datos específicos del protocolo y una comprobación de redundancia cíclica (CRC). El MII original transfiere datos de red utilizando nibbles de 4 bits en cada dirección (4 bits de datos de transmisión, 4 bits de datos de recepción). Los datos se registran a 25 MHz para alcanzar un rendimiento de 100 Mbit/s . El diseño original del MII se ha ampliado para admitir señales reducidas y velocidades mayores. Las variantes actuales incluyen:
El bus serial de entrada/salida de datos de administración (MDIO) es un subconjunto del MII que se utiliza para transferir información de administración entre MAC y PHY. Al encenderse, mediante negociación automática , el PHY generalmente se adapta a lo que esté conectado a menos que se modifiquen las configuraciones a través de la interfaz MDIO.
El MII estándar presenta un pequeño conjunto de registros: [2] : Sección 22.2.4 "Funciones de gestión"
El registro n.° 15 está reservado; los registros n.° 16 a n.° 31 son específicos del proveedor. Los registros se utilizan para configurar el dispositivo y consultar el modo de funcionamiento actual. [ Se necesita más explicación ]
La palabra de estado MII es el dato más útil, ya que puede utilizarse para detectar si una NIC Ethernet está conectada a una red. Contiene un campo de bits con la siguiente información: [2] : Sección 22.2.4.2.2 "Capacidad de dúplex completo 100BASE-X"
El reloj de transmisión es un reloj de funcionamiento libre generado por el PHY en función de la velocidad del enlace (25 MHz para 100 Mbit/s , 2,5 MHz para 10 Mbit/s ). Las señales de transmisión restantes son controladas por el MAC de manera sincrónica en el flanco ascendente de TX_CLK. Esta disposición permite que el MAC funcione sin tener que estar al tanto de la velocidad del enlace. La señal de habilitación de transmisión se mantiene alta durante la transmisión de tramas y baja cuando el transmisor está inactivo.
Se puede generar un error de transmisión durante uno o más períodos de reloj durante la transmisión de la trama para solicitarle al PHY que corrompa deliberadamente la trama de alguna manera visible que impida que se la reciba como válida. Esto se puede utilizar para abortar una trama cuando se detecta algún problema después de que la transmisión ya haya comenzado. El MAC puede omitir la señal si no tiene uso para esta funcionalidad, en cuyo caso la señal debe estar vinculada a nivel bajo para el PHY.
Más recientemente, el aumento del error de transmisión fuera de la transmisión de trama se utiliza para indicar que las líneas de datos de transmisión se están utilizando para una señalización de propósito especial. Específicamente, el valor de datos 0b0001 (mantenido continuamente con TX_EN bajo y TX_ER alto) se utiliza para solicitar que un PHY con capacidad EEE ingrese al modo de bajo consumo.
Las primeras siete señales del receptor son completamente análogas a las señales del transmisor, excepto que RX_ER no es opcional y se utiliza para indicar que la señal recibida no se pudo decodificar a datos válidos. El reloj de recepción se recupera de la señal entrante durante la recepción de la trama. Cuando no se puede recuperar ningún reloj (es decir, cuando el medio está en silencio), el PHY debe presentar un reloj de funcionamiento libre como sustituto.
No es necesario que la señal válida de datos de recepción (RX_DV) se active inmediatamente cuando comienza la trama, pero debe hacerlo a tiempo para garantizar que el byte "delimitador de inicio de trama" se incluya en los datos recibidos. Es posible que se pierdan algunos fragmentos del preámbulo.
De manera similar a la transmisión, la emisión de RX_ER fuera de una trama se utiliza para una señalización especial. Para la recepción, se definen dos valores de datos: 0b0001 para indicar que el socio de enlace está en modo de bajo consumo EEE y 0b1110 para una indicación de portadora falsa .
Las señales CRS y COL son asincrónicas con respecto al reloj de recepción y solo tienen sentido en el modo semidúplex. La detección de portadora es alta cuando se transmite, se recibe o se detecta que el medio está en uso. Si se detecta una colisión, la señal COL también se activa mientras persista la colisión.
Además, el MAC puede activar débilmente la señal COL, lo que permite que la combinación de COL alta con CRS baja (que un PHY nunca producirá) sirva como indicación de un PHY ausente o desconectado.
MDC y MDIO constituyen una interfaz de datos seriales sincrónica similar a I²C . Al igual que con I²C, la interfaz es un bus multipunto , por lo que MDC y MDIO se pueden compartir entre múltiples PHY.
La interfaz requiere 18 señales, de las cuales solo dos (MDIO y MDC) pueden compartirse entre múltiples PHY. Esto presenta un problema, especialmente para dispositivos multipuerto; por ejemplo, un conmutador de ocho puertos que utilice MII necesitaría 8 × 16 + 2 = 130 señales.
La interfaz independiente del medio reducida (RMII) es un estándar que se desarrolló para reducir la cantidad de señales necesarias para conectar un PHY a un MAC. La reducción del número de pines reduce el costo y la complejidad del hardware de red, especialmente en el contexto de microcontroladores con MAC integrado, FPGA , conmutadores multipuerto o repetidores y chipsets de placa base de PC. Se cambiaron cuatro cosas en comparación con el estándar MII para lograr esto. Estos cambios significan que RMII utiliza aproximadamente la mitad de la cantidad de señales en comparación con MII.
MDC y MDIO se pueden compartir entre múltiples PHY.
Las señales del receptor están referenciadas a REF_CLK, al igual que las señales del transmisor.
Esta interfaz requiere 9 señales, frente a las 18 de MII. De esas 9, en dispositivos multipuerto, MDIO, MDC y REF_CLK pueden compartirse, dejando 6 o 7 pines por puerto.
RMII requiere un reloj de 50 MHz , mientras que MII requiere un reloj de 25 MHz y los datos se registran de a dos bits a la vez, en comparación con los 4 bits a la vez de MII o los 1 bit a la vez de SNI ( solo 10 Mbit/s ). Los datos se muestrean solo en el flanco ascendente (es decir, no se bombean dos veces ).
El REF_CLK funciona a 50 MHz tanto en modo de 100 Mbit/s como en modo de 10 Mbit/s . El lado transmisor (PHY o MAC) debe mantener todas las señales válidas durante 10 ciclos de reloj en modo de 10 Mbit/s . El receptor (PHY o MAC) muestrea las señales de entrada solo cada diez ciclos en modo de 10 Mbit/s .
No hay ninguna señal que defina si la interfaz está en modo dúplex completo o semidúplex, pero tanto la MAC como la PHY deben estar de acuerdo. Esto debe comunicarse a través de la interfaz serial MDIO/MDC. Tampoco hay ninguna señal que defina si la interfaz está en modo de 10 o 100 Mbit/s , por lo que esto también debe manejarse utilizando la interfaz MDIO/MDC. La versión 1.2 de la especificación del Consorcio RMII establece que su interfaz MDIO/MDC es idéntica a la especificada para MII en IEEE 802.3u. Las revisiones actuales de IEEE 802.3 especifican un mecanismo MDIO/MDC estándar para negociar y configurar la velocidad del enlace y el modo dúplex, pero es posible que los dispositivos PHY más antiguos se hayan diseñado en contra de versiones obsoletas del estándar y, por lo tanto, puedan utilizar métodos propietarios para establecer la velocidad y el dúplex.
La falta de la señal RX_ER que no está conectada en algunas MAC (como los conmutadores multipuerto) se soluciona mediante el reemplazo de datos en algunas PHY para invalidar el CRC . La señal COL faltante se deriva de la operación AND conjunta de TX_EN y la señal CRS decodificada de la línea CRS_DV en modo half duplex. Esto implica una ligera modificación de la definición de CRS: en MII, CRS se afirma tanto para tramas Rx como Tx; en RMII solo para tramas Rx. Esto tiene la consecuencia de que en RMII no se pueden detectar las dos condiciones de error ( sin portadora y portadora perdida) , y es difícil o imposible admitir medios compartidos como 10BASE2 o 10BASE5 .
Dado que el estándar RMII no estipuló que TX_EN solo debe muestrearse en ciclos de reloj alternativos, no es simétrico con CRS_DV y dos dispositivos RMII PHY no se pueden conectar uno tras otro para formar un repetidor; sin embargo, esto es posible con el National DP83848 que suministra el RX_DV decodificado como una señal suplementaria en modo RMII. [3]
Los niveles lógicos TTL se utilizan para lógica de 5 V o 3,3 V. El umbral alto de entrada es de 2,0 V y el bajo de 0,8 V. La especificación establece que las entradas deben ser tolerantes a 5 V ; sin embargo, algunos chips populares con interfaces RMII no son tolerantes a 5 V. Los dispositivos más nuevos pueden admitir lógica de 2,5 V y 1,8 V.
Las señales RMII se tratan como señales agrupadas en lugar de líneas de transmisión . Sin embargo, la versión IEEE del estándar MII relacionado especifica una impedancia de traza de 68 Ω . [4] National recomienda ejecutar trazas de 50 Ω con resistencias de terminación en serie de 33 Ω para el modo MII o RMII para reducir las reflexiones. [ cita requerida ] National también sugiere que las trazas se mantengan por debajo de los 0,15 m de largo y se adapten a una longitud de 0,05 m para minimizar la desviación. [4] : 5
La interfaz independiente del medio gigabit (GMII) es una interfaz entre el dispositivo de control de acceso al medio (MAC) y la capa física ( PHY ). La interfaz funciona a velocidades de hasta 1000 Mbit/s , implementada mediante una interfaz de datos sincronizada a 125 MHz con rutas de datos de ocho bits independientes para recepción y transmisión, y es compatible con versiones anteriores de la especificación MII y puede funcionar a velocidades de reserva de 10 o 100 Mbit/s .
La interfaz GMII se definió por primera vez para 1000BASE-X en IEEE 802.3z-1998 como cláusula 35, y posteriormente se incorporó a IEEE 802.3-2000 en adelante. [2] : Cláusula 35
Hay dos relojes de transmisión. El reloj utilizado depende de si la capa física está funcionando a velocidades de gigabit o 10/100 Mbit/s . Para el funcionamiento a gigabit, la GTXCLK se suministra a la capa física y las señales TXD, TXEN y TXER se sincronizan con ella. Para el funcionamiento a 10 o 100 Mbit/s , la TXCLK es suministrada por la capa física y se utiliza para sincronizar esas señales. Esto funciona a 25 MHz para conexiones de 100 Mbit/s o a 2,5 MHz para conexiones de 10 Mbit/s . Por el contrario, el receptor utiliza una única señal de reloj recuperada de los datos entrantes.
La interfaz de administración controla el comportamiento del PHY. Tiene el mismo conjunto de registros que la MII, excepto que el registro n.° 15 es el registro de estado extendido. [2] : Sección 22.2.4 "Funciones de administración"
La interfaz independiente del medio de gigabit reducida (RGMII) utiliza la mitad de pines de datos que la interfaz GMII. Esta reducción se logra ejecutando la mitad de líneas de datos al doble de velocidad, multiplexando las señales en el tiempo y eliminando las señales de detección de portadora e indicación de colisión no esenciales. Por lo tanto, la RGMII consta de solo 14 pines, a diferencia de los 24 a 27 de la GMII.
Los datos se registran en los flancos ascendentes y descendentes para 1000 Mbit/s , y en los flancos ascendentes solo para 10/100 Mbit/s . [5] La señal RX_CTL transporta RXDV (datos válidos) en el flanco ascendente y (RXDV xor RXER) en el flanco descendente. La señal TX_CTL también transporta TXEN en el flanco ascendente y (TXEN xor TXER) en el flanco descendente. Este es el caso tanto para 1000 Mbit/s como para 10/100 Mbit/s . [6]
La señal de reloj de transmisión siempre la proporciona el MAC en la línea TXC. La señal de reloj de recepción siempre la proporciona el PHY en la línea RXC. [ cita requerida ] Se utiliza la sincronización de la fuente : la señal de reloj que se emite (ya sea por el PHY o el MAC) es sincrónica con las señales de datos. Esto requiere que la PCB esté diseñada para agregar un retraso de 1,5 a 2 ns a la señal de reloj para cumplir con los tiempos de configuración y retención en el receptor. RGMII v2.0 especifica un retraso interno opcional, lo que evita la necesidad de que el diseñador de PCB agregue retraso; esto se conoce como RGMII-ID.
La versión 1.3 de RGMII [7] utiliza CMOS de 2,5 V, [8] mientras que la versión 2 de RGMII utiliza HSTL de 1,5 V. [9]
La interfaz independiente del medio gigabit en serie (SGMII) es una variante de MII utilizada para Gigabit Ethernet pero que también puede transportar Ethernet de 10/100 Mbit/s .
Utiliza pares diferenciales a una frecuencia de reloj DDR de 625 MHz para datos TX y RX y relojes TX y RX. Se diferencia de GMII por su SerDes codificado en 8b/10b de bajo consumo y bajo número de pines . Las rutas de transmisión y recepción utilizan cada una un par diferencial para datos y otro par diferencial para reloj. Los relojes TX/RX deben generarse en la salida del dispositivo, pero son opcionales en la entrada del dispositivo ( se puede utilizar la recuperación de reloj como alternativa). Ethernet de 10/100 Mbit/s se transmite duplicando palabras de datos 100/10 veces cada una, por lo que el reloj siempre está a 625 MHz.
La interfaz independiente del medio de gigabit serial alto (HSGMII) es funcionalmente similar a la SGMII pero admite velocidades de enlace de hasta 2,5 Gbit/s .
La interfaz independiente del medio de cuatro gigabits en serie (QSGMII) es un método para combinar cuatro líneas SGMII en una interfaz de 5 Gbit/s . La QSGMII, al igual que la SGMII, utiliza señalización diferencial de bajo voltaje (LVDS) para los datos TX y RX, y una única señal de reloj LVDS. La QSGMII utiliza significativamente menos líneas de señal que cuatro conexiones SGMII independientes.
QSGMII es anterior a NBASE-T y se utiliza para conectar PHY multipuerto a MAC, por ejemplo en enrutadores de red. [10]
La PSGMII (interfaz independiente del medio gigabit serial penta) utiliza las mismas líneas de señal que QSGMII, pero opera a 6,25 Gbit/s , lo que admite cinco puertos de 1 gigabit/s a través de un MII.
La interfaz independiente del medio de 10 gigabits (XGMII) es un estándar definido en IEEE 802.3 diseñado para conectar puertos Ethernet de 10 Gigabit (10GbE) full duplex entre sí y con otros dispositivos electrónicos en una placa de circuito impreso (PCB). En la actualidad, se utiliza normalmente para conexiones en chip. Las conexiones de PCB se realizan ahora principalmente con XAUI . XGMII presenta dos rutas de datos de 32 bits (Rx y Tx) y dos flujos de control de cuatro bits (Rxc y Txc), que funcionan a 156,25 MHz DDR (312,5 MT/s ). [11]
{{cite web}}
: CS1 maint: bot: estado de URL original desconocido ( enlace )