Articulo de referencia

R3000

El R3000 es un microprocesador RISC de 32 bits desarrollado por MIPS Computer Systems que implementaba la arquitectura del conjunto de instrucciones (ISA) MIPS I. Presentado en ...

El R3000 es un microprocesador RISC de 32 bits desarrollado por MIPS Computer Systems que implementaba la arquitectura del conjunto de instrucciones (ISA) MIPS I. Presentado en junio de 1988, fue la segunda implementación de MIPS, sucediendo al R2000 como el microprocesador MIPS insignia. Operaba a 20, 25 y 33,33 MHz. 

Descripción

El conjunto de instrucciones del MIPS 1 es pequeño en comparación con los de las arquitecturas contemporáneas 80x86 y 680x0 , ya que codifica solo las operaciones más comunes y admite pocos modos de direccionamiento . Junto con su longitud de instrucción fija y solo tres tipos diferentes de formatos de instrucción, esto simplificó la decodificación y el procesamiento de las instrucciones. Empleaba una arquitectura de segmentación de instrucciones de 5 etapas , lo que permitía una ejecución a una velocidad cercana a una instrucción por ciclo, algo inusual para su época.

La arquitectura utiliza una ranura de retardo de bifurcación . Los compiladores para el R3000 disponibles de MIPS Computer Systems solían llenar la ranura de retardo entre un 70 y un 90 por ciento del tiempo. [ 1 ] En algunas aplicaciones militares, la cifra era de entre un 75 y un 80 por ciento de ocupación. [ 2 ]

Esta generación MIPS admite hasta cuatro coprocesadores. Además del núcleo de la CPU, el microprocesador R3000 incluye un procesador de control (CP), que contiene un búfer de traducción anticipada y una unidad de gestión de memoria . [ 3 ] El CP funciona como un coprocesador . Además del CP, el R3000 también puede admitir un coprocesador numérico externo R3010, [ 4 ] junto con otros dos coprocesadores externos.

La CPU R3000 no incluye caché de nivel 1. En su lugar, su controlador de caché integrado gestiona cachés externas de datos e instrucciones de hasta 256  KB cada una. Puede acceder a ambas cachés durante el mismo ciclo de reloj.

El R3000 fue un desarrollo posterior del R2000 con mejoras menores que incluían una TLB más grande y un bus más rápido a las cachés externas. El chip R3000 contenía 115 000 transistores y medía aproximadamente 75 000 milésimas de pulgada cuadradas (48 mm²  ) . [ 5 ] MIPS era una empresa de semiconductores sin fábrica , por lo que el R3000 fue fabricado por socios de MIPS incluidos Integrated Device Technology (IDT), LSI Logic , NEC Corporation , Performance Semiconductor y otros. Fue fabricado en un proceso de semiconductor complementario de óxido metálico (CMOS) de 1,2 μm [ 3 ] con dos niveles de interconexión de aluminio . 

Uso en estaciones de trabajo y servidores

Disparo del chip MIPS R3000A

El enfoque RISC tuvo mucho éxito y fue rápidamente adoptado por muchas empresas en sus estaciones de trabajo y servidores . [ 6 ] Entre los usuarios del R3000 se encontraban:

Entre las variantes del R3000 para aplicaciones no integradas se incluyen:

  • R3000A: Un desarrollo posterior de MIPS introducido en 1989. Funcionaba a frecuencias de reloj de hasta 40  MHz.
  • PR3400 - Desarrollado por Performance Semiconductor, presentado en mayo de 1991, también con una frecuencia de hasta 40  MHz. Integraba los procesadores Performance Semiconductor PR3000A y PR3010A en un solo chip.

Uso en sistemas en tiempo real

El MIPS R3000 podía utilizarse para computación en tiempo real ; de hecho, un editor de la revista Computer Design caracterizó al R3000 como "uno de los procesadores RISC más limpios para implementar un sistema operativo en tiempo real". [ 2 ] Era posible que las implementaciones embebidas del R3000 personalizaran el procesador de ciertas maneras, como agregando funciones de depuración o agregando trampas en funciones y códigos de operación no implementados. [ 11 ] El R3000 fue utilizado como microprocesador de sistemas embebidos por varias empresas:

  • Heurikon Corporation , con su placa HKMIPS/3500 [ 12 ]
  • Integrated Device Technology , con sus IDT7RS301 e IDT7RS302 [ 12 ]
  • LSI Logic , con su LR33000 para aplicaciones de control embebido, con un procesador de 50 MHz, caché de instrucciones de 8 KB y caché de datos de 1 KB, [ 11 ] incluyendo una placa de evaluación Pocket Rocket LR33000; [ 12 ] también con su LR3000 más grande, con gestión de memoria incluida [ 6 ]
  • MIPS Computer Systems, con su placa de CPU R3200-6 [ 12 ]
  • Lockheed Sanders , con su placa STAR MVP R3000/R3010 que contiene un procesador de 25 MHz, cachés de instrucciones y datos de 128K y un búfer de escritura de 4 palabras [ 13 ]
  • Texas Instruments , con su TI DP32 [ 12 ]

Varios de estos sistemas embebidos se utilizaron en aplicaciones de defensa/aviónica, y como tal, a principios de la década de 1990, había varias implementaciones de compiladores cruzados del lenguaje de programación Ada disponibles para el R3000. [ 12 ] El Joint Integrated Avionics Working Group (JIAWG), una iniciativa del gobierno de los Estados Unidos de finales de la década de 1980 destinada a establecer estándares comunes para la próxima generación de aeronaves de la Fuerza Aérea, la Armada y el Ejército de los EE. UU., seleccionó el R3000 como una de las dos arquitecturas de conjunto de instrucciones de 32 bits para aplicaciones de sistemas embebidos en tiempo real (la otra era el Intel i960 ). [ 2 ] En usos de la industria de defensa, el R3000 fue a menudo un sucesor de la arquitectura MIL-STD-1750A de 16 bits . [ 14 ]

Uso en otros diseños de menor costo.

Incluso después de que los avances tecnológicos dejaran obsoleto el R3000 para sistemas de alto rendimiento, se siguió utilizando en diseños de menor coste. Entre las variantes del R3000 para aplicaciones integradas se incluyen:

IDT R3051
IDT R3081
  • CW4003, DCAM-101 - Diseñado para aplicaciones de cámaras digitales, el núcleo CW4003 incluía una unidad MABO (multiplicador-aditivo) para aritmética de enteros acelerada y una unidad PPA (acelerador de procesamiento de píxeles) accesible a través de la interfaz del coprocesador 2. El DCAM-101 combinaba el núcleo CW4003 con módulos que se conectaban a un sensor de cámara, pantalla, almacenamiento y otros periféricos, e incorporaba también una unidad de compresión/descompresión JPEG. [ 7 ]
  • PR31500, PR31700: microprocesadores de Philips Semiconductors utilizados en la gama de ordenadores portátiles Philips Velo  . El PR31700 de 75 MHz se fabricó con un  proceso de 350 nm, se suministró en un encapsulado LQFP de 208 pines, funcionaba a 3,3  V y disipaba solo 350  mW.
  • RISController: una familia de microprocesadores integrados de IDT. Los modelos incluían el R3041, R3051, R3052, R3071 y R3081. Todos los modelos incluían cachés L1 integradas. Los modelos de gama alta incluían cachés más grandes y unidades de gestión de memoria (MMU) y unidades de punto flotante (FPU) opcionales. Competían con el Intel i960 y el AMD 29000 .
  • TX3900 - Un microcontrolador de Toshiba.
  • Mongoose-V : una CPU de 10 a 15 MHz, reforzada y resistente a la radiación, diseñada  para su uso en naves espaciales, que aún se utiliza hoy en día en aplicaciones como la sonda espacial New Horizons de la NASA .

Referencias

  1. Stallings, William (1996). Organización y arquitectura de computadoras: diseño para el rendimiento (Cuarta  ed.). Upper Saddle River, Nueva Jersey: Prentice-Hall. pág.  461. ISBN 0-13-359985-X.
  2. 1 2 3 Kurtz, J. Jay; Thibeault, John E.; Brauckmann, Walter J. (1990). Una evaluación de la aplicabilidad de los procesadores MIPS R3000 e Intel 80960MC para sistemas embebidos en tiempo real . Conferencia IEEE sobre Aeroespacial y Electrónica, Dayton, OH, EE. UU., 1990. págs. 140–147 . doi : 10.1109/NAECON.1990.112756 . 
  3. 1 2 Jurij Šilc; Borut Robič; Theo Ungerer (1999). Arquitectura de procesador: del flujo de datos al superescalar y más allá . Springer-Verlag Berlín Heidelberg. pag. 38.ISBN  978-3-540-64798-0.
  4. Rowen, Chris; Johnson, Mark; Ries, Paul (junio de 1988). "El coprocesador de punto flotante MIPS R3010" . IEEE Micro . 8 (3). The Institute of Electrical and Electronics Engineers: 53–62 . doi : 10.1109/40.540 . ISSN 0272-1732 . S2CID 12859181. Consultado el 24 de abril de 2022 .  
  5. Michael Slater, ed. (1992). Guía de microprocesadores RISC . Academic Press, Inc. pág. 129. ISBN  978-0-12-649140-1.
  6. 1 2 Caulk, Bob; et al. (1991). La arquitectura del LR33000: un procesador RISC compatible con MIPS para aplicaciones de control embebido . Conferencia internacional IEEE sobre diseño de computadoras: VLSI en computadoras y procesadores, Cambridge, MA, EE. UU., 1991. págs. 333–336 . doi : 10.1109/ICCD.1991.139911 .  
  7. 1 2 Archide, Reynaldo (marzo de 1998). "Una CPU flexible para cámaras digitales" . Byte . págs. 49–50 . Recuperado el 17 de agosto de 2023 . 
  8. Sharma, Aashish (21 de julio de 2015). "La CPU original de PlayStation impulsa New Horizons" . Fossbytes .
  9. Tomson, Iain (14 de enero de 2015). "Sonda de plutonio alimentada por procesador de PlayStation prepara imágenes de Plutón" . The Register .
  10. Dockrill, Peter (17 de julio de 2015). "La sonda New Horizons de la NASA llegó a Plutón con una CPU de PlayStation como cerebro" . Science Alert .
  11. 1 2 Peck, Raymond; Patel, Jay (1991). Metodología de diseño para un procesador de control embebido compatible con MIPS . Conferencia internacional IEEE sobre diseño de computadoras: VLSI en computadoras y procesadores, Cambridge, MA, EE. UU., 1991. págs. 324–328 . doi : 10.1109/ICCD.1991.139909 . 
  12. 1 2 3 4 5 6 "Implementaciones de Ada". Boletín informativo Ada–JOVIAL . Centro de Control de Lenguajes de Alto Nivel, Base de la Fuerza Aérea Wright-Patterson, Fuerza Aérea de los Estados Unidos. Septiembre de 1993. págs. 26–43 , especialmente 32–34. 
  13. Schilling, Jonathan L.; Nielsen, Johan Olmütz (mayo-junio de 1994). "Reconocimiento automático de tareas de monitor por parte del compilador". ACM SIGAda Ada Letters . 14 (3): 91– 104. doi : 10.1145/181468.181474 .
  14. Véase, por ejemplo, Keller, John (abril de 1997). "Computadoras Apache Longbow basadas en R3000 listas para la producción" . Military & Aerospace Electronics .
  • "Tecnologías MIPS R3000"