Articulo de referencia

OpenPIC y MPIC

Para competir con el controlador de interrupciones programable avanzado (APIC) de Intel , que había permitido los primeros sistemas multiprocesador basados ​​en Intel 486 , a pr...

Para competir con el controlador de interrupciones programable avanzado (APIC) de Intel , que había permitido los primeros sistemas multiprocesador basados ​​en Intel 486 , a principios de 1995 AMD y Cyrix propusieron una arquitectura OpenPIC de propósito similar que soportaba hasta 32 procesadores. [ 1 ] [ 2 ] La arquitectura OpenPIC tenía al menos soporte declarativo de IBM y Compaq alrededor de 1995. [ 3 ] Sin embargo, no se lanzó ninguna placa base x86 con OpenPIC. [ 4 ] Después del fracaso de OpenPIC en el mercado x86, AMD licenció la arquitectura Intel APIC para sus procesadores AMD Athlon y posteriores.

Sin embargo, IBM desarrolló su controlador de interrupciones multiprocesador ( MPIC ) basado en la especificación de registro OpenPIC. [ 5 ] En el diseño de referencia de IBM, los procesadores comparten el MPIC a través de un bus DCR , cuyo acceso está controlado por un árbitro DCR. El MPIC admite hasta cuatro procesadores y hasta 128 fuentes de interrupción. [ 5 ] Mediante diversas implementaciones, el MPIC se incluyó en los diseños de referencia de PowerPC y en algunos ordenadores comerciales.

IBM utilizó un MPIC basado en OpenPIC 1.0 en su RS/6000 F50 y uno basado en OpenPIC 1.2 en su RS/6000 S70. Ambos sistemas también utilizaron un 8259 dual en sus puentes PCI-ISA. [ 6 ] También se utilizó un MPIC de IBM en el RS/6000 7046 Modelo B50. [ 7 ]

El chip Apple Hydra Mac I/O (MIO) (de la era clásica de Mac OS de la década de 1990 ) implementaba un MPIC junto con un controlador SCSI , un controlador ADB , un controlador GeoPort y temporizadores. [ 8 ] La implementación de Apple de "Open PIC" (como lo escribe la documentación de Apple de esta época) en su primer chip MIO para la Plataforma de Referencia de Hardware Común se basaba en la versión 1.2 de la especificación de registro y admitía hasta dos procesadores y hasta 20 fuentes de interrupción. [ 9 ] También se incorporó un MPIC en el controlador de E/S K2 más reciente utilizado en los Power Mac G5 . [ 10 ] [ 11 ]

Freescale también utiliza un MPIC ("compatible con Open PIC") en todos sus procesadores PowerQUICC y QorIQ . [ 12 ] La máquina virtual basada en el kernel de Linux (KVM) admite un MPIC virtualizado con hasta 256 interrupciones, basado en las variantes de Freescale. [ 13 ]

Véase también

Referencias

  1. "Definición de OpenPIC de la enciclopedia de PC Magazine" . Pcmag.com. 1 de diciembre de 1994. Archivado del original el 6 de junio de 2011. Consultado el 3 de noviembre de 2011 .
  2. AMD y Cyrix, Especificación de la interfaz de registro del controlador de interrupciones programable abierto (PIC), revisión 1.2 , publicación n.º 19725C, octubre de 1995. Archivado del original el 17 de agosto de 2018.
  3. Brooke Crothers (20 de marzo de 1995). AMD y Cyrix ofrecen una especificación SMP alternativa . InfoWorld . pág. 8. ISSN 0199-6649 .  
  4. André D. Balsa, Nota adjunta a "Pruebas comparativas de Linux: Parte III - Interpretación de los resultados de las pruebas comparativas", publicada en el número 24 de Linux Gazette, enero de 1998.
  5. 1 2 Controlador de interrupciones multiprocesador de IBM . Libro de datos archivado el 23/02/2014 en Wayback Machine.
  6. Arca Systems TTAP Evaluation Facility, " Sistema distribuido RS/6000 de IBM Corporation con AIX versión 4.3.1. Seguridad C2 evaluada por TCSEC ", pág. 29
  7. Manual del modelo RS/6000 7046 B50, noviembre de 1999, documento IBM G24-7046-00, pág. 107
  8. Manual de diseño de hardware de la plataforma de referencia Yellowknife Archivado el 21/02/2014 en Wayback Machine , pág. 11
  9. Tecnología Macintosh en la plataforma de referencia de hardware común, sección "2.4.7 Controlador de interrupciones Open PIC", pág. 11, ISBN 155860393X
  10. Echa un vistazo al interior del Power Mac de doble procesador basado en G5
  11. Nota para desarrolladores de Power Mac G5 (versión anterior) , pág. 26
  12. Nodo controlador de interrupciones MPIC de Freescale
  13. "linux/Documentation/virtual/kvm/devices/mpic.txt en master" . Github.com. 30 de abril de 2013. Consultado el 12 de febrero de 2014 .
  • Código fuente abierto de AppleMPIC archivado el 7 de mayo de 2013 en Wayback Machine.