stringtranslate.com

Interfaz del controlador host (USB, Firewire)

Una interfaz de controlador de host ( HCI ) es una interfaz a nivel de registro que permite que un controlador de host para hardware USB o IEEE 1394 se comunique con un controlador de controlador de host en el software. El software del controlador normalmente se proporciona con un sistema operativo de una computadora personal , pero también puede implementarse mediante dispositivos de aplicaciones específicas, como un microcontrolador .

En la tarjeta de expansión o en el controlador de la placa base, esto implica mucha lógica personalizada, con motores de lógica digital en el chip controlador de la placa base, además de circuitos analógicos que administran las señales diferenciales de alta velocidad. En el lado del software , requiere un controlador de dispositivo (llamado controlador de controlador de host o HCD).

IEEE 1394

Abrir interfaz del controlador de host

La interfaz abierta del controlador de host ( OHCI ) [1] es un estándar abierto .

Cuando se aplica a una tarjeta IEEE 1394 (también conocida como FireWire ; i.LINK o Lynx ), OHCI significa que la tarjeta admite una interfaz estándar para la PC y puede ser utilizada por los controladores OHCI IEEE 1394 que vienen con todos los sistemas operativos modernos . Debido a que la tarjeta tiene una interfaz OHCI estándar, el sistema operativo no necesita saber de antemano exactamente quién fabrica la tarjeta o cómo funciona; Puede asumir con seguridad que la tarjeta comprende el conjunto de comandos bien definidos que se definen en el protocolo estándar .

USB

Abrir interfaz del controlador de host

El estándar OHCI para USB es similar al estándar OHCI para IEEE 1394, pero solo admite USB 1.1 (velocidades completas y bajas); Como resultado, su interfaz de registro se ve completamente diferente. En comparación con UHCI, transfiere más inteligencia al controlador y, por lo tanto, es mucho más eficiente; esto fue parte de la motivación para definirlo. Si una computadora proporciona USB 1.1 que no es x86 o USB 1.1 x86 desde un controlador USB que no está fabricado por Intel o VIA, probablemente use OHCI (por ejemplo, OHCI es común en tarjetas PCI complementarias basadas en un chipset NEC). Tiene muchas menos restricciones de propiedad intelectual que UHCI. [2] Solo admite direccionamiento de memoria de 32 bits, [3] por lo que requiere una IOMMU o un búfer de rebote computacionalmente costoso para funcionar con un sistema operativo de 64 bits. [ cita necesaria ] OHCI interactúa con el resto de la computadora solo con E/S asignadas en memoria . [3]

Interfaz de controlador de host universal

La interfaz de controlador de host universal ( UHCI ) es una interfaz patentada creada por Intel para USB 1.x (velocidades completas y bajas). Requiere una licencia de Intel. Un controlador USB que utiliza UHCI hace poco en hardware y requiere un controlador UHCI de software para realizar gran parte del trabajo de administración del bus USB. [2] Solo admite direccionamiento de memoria de 32 bits, [4] por lo que requiere una IOMMU o un búfer de rebote computacionalmente costoso para funcionar con un sistema operativo de 64 bits. [ cita necesaria ] UHCI está configurado con E/S asignadas por puerto y E/S asignadas en memoria, y también requiere E/S asignadas en memoria para actualizaciones de estado y para buffers de datos necesarios para contener los datos que deben enviarse o los datos que fue recibido. [4]

Interfaz de controlador de host mejorada

La interfaz de controlador de host mejorada ( EHCI ) [5] es un estándar de controlador de alta velocidad aplicable a USB 2.0. Los sistemas basados ​​en UHCI y OHCI, tal como existían anteriormente, entrañaban mayor complejidad y costos de lo necesario. En consecuencia, el Foro de Implementadores de USB (USB-IF) insistió [ ¿cuándo? ] sobre una especificación pública para EHCI. Intel organizó pruebas de conformidad de EHCI y esto ayudó a evitar la incursión de funciones patentadas.

Originalmente, una PC que proporcionaba puertos de alta velocidad tenía dos controladores, uno que manejaba dispositivos de baja y alta velocidad y el segundo que manejaba dispositivos de alta velocidad. Normalmente, un sistema de este tipo tenía controladores EHCI y OHCI o UHCI. El controlador UHCI proporciona interfaces de baja y alta velocidad para los controladores de host USB de los conjuntos de chips Intel o VIA en la placa base, o para cualquier controlador de host discreto VIA conectado al bus de expansión de la computadora. El controlador OHCI proporciona funciones de velocidad baja y máxima para los puertos USB de los controladores de host USB integrados o controladores de host discretos conectados al bus de expansión de la computadora de todos los demás proveedores de chipsets de placa base. El controlador EHCI proporcionó funciones de alta velocidad para puertos USB en la placa base o en el controlador USB discreto. El hardware más reciente enruta todos los puertos a través de un concentrador interno de "igualación de tasas" (RMH) que convierte todo el tráfico que involucra cualquier puerto conectado directamente que funcione a velocidad máxima y baja entre el tráfico de alta velocidad presentado al controlador EHCI y el tráfico de velocidad completa o baja que esperan los puertos que operan a esas velocidades, lo que permite que el controlador EHCI maneje estos dispositivos.

La especificación de interfaz de software EHCI define versiones de 32 y 64 bits de sus estructuras de datos, [5] por lo que no necesita un búfer de rebote o IOMMU para funcionar con un sistema operativo de 64 bits si se implementa un centro de igualación de tasas. para proporcionar conectividad de velocidad completa y baja velocidad en lugar de controladores complementarios que utilizan la especificación UHCI o la especificación OHCI, las cuales son especificaciones de solo 32 bits.

Interfaz de controlador de host extensible

La interfaz de controlador de host extensible ( xHCI ) es el estándar de controlador de host más nuevo que mejora la velocidad, la eficiencia energética y la virtualización con respecto a sus predecesores. El objetivo también era definir un controlador de host USB para reemplazar UHCI/OHCI/EHCI. Admite todas las velocidades de dispositivos USB (USB 3.1 SuperSpeed+, USB 3.0 SuperSpeed, USB 2.0 de baja, completa y alta velocidad, USB 1.1 de baja y completa velocidad).

Interfaz del controlador de host virtual

La interfaz del controlador de host virtual ( VHCI ) se refiere a un controlador virtual que puede exportar dispositivos USB virtuales que no están respaldados por dispositivos físicos. Por ejemplo, en Linux, los controladores VHCI se utilizan para exponer dispositivos USB de otras máquinas, conectados mediante el protocolo USB/IP.

Interfaz de host USB4

La interfaz de host definida en la especificación USB4. Crea un sistema operativo para administrar la ruta del host USB4 para comunicación USB, DisplayPort, PCI Express, Thunderbolt o de host a host.

Ver también

Referencias

  1. ^ http://download.microsoft.com/download/1/6/1/161ba512-40e2-4cc9-843a-923143f3456c/ohci_11.pdf [ URL básica PDF ]
  2. ^ ab "Preguntas frecuentes sobre USB de Linux". 27 de agosto de 2007 . Consultado el 13 de abril de 2014 .
  3. ^ ab "Copia archivada" (PDF) . Archivado desde el original (PDF) el 18 de mayo de 2020 . Consultado el 12 de mayo de 2020 .{{cite web}}: CS1 maint: archived copy as title (link)
  4. ^ ab "UHCI11D.DOC" (PDF) . Ftp.netbsd.org . Consultado el 10 de enero de 2017 .
  5. ^ ab "Especificación de interfaz del controlador de host mejorada". Intel.com . Consultado el 10 de enero de 2017 .

enlaces externos