Sun SPARC
English: SPARC

SPARC
Sun UltraSPARCII.jpg
Información
Tipoplataforma y conjunto de instrucciones Ver y modificar los datos en Wikidata
Desarrollador
Fabricante
Fecha de lanzamiento1987
Estandarización
UsoEscritorio, Servidores
Sun UltraSparc II.

SPARC (del inglés Scalable Processor ARChitecture) es una arquitectura RISC big-endian. Es decir, una arquitectura con un conjunto de instrucciones reducidas.

Fue originalmente diseñada por Sun Microsystems en 1985, se basa en los diseños RISC I y II de la Universidad de California en Berkeley que fueron definidos entre los años 1980 y 1982.

La empresa Sun Microsystems diseñó esta arquitectura y la licenció a otros fabricantes como Texas Instruments, Cypress Semiconductor, Fujitsu, LSI Logic entre otros.

SPARC es la primera arquitectura RISC abierta y como tal, las especificaciones de diseño están publicadas, así otros fabricantes de microprocesadores pueden desarrollar su propio diseño.

Una de las ideas innovadoras de esta arquitectura es la ventana de registros que permite hacer fácilmente compiladores de alto rendimiento y una significativa reducción de memoria en las instrucciones load/store en relación con otras arquitecturas RISC. Las ventajas se aprecian sobre todo en programas grandes.

La CPU SPARC está compuesta de una unidad de enteros (IU), que procesa la ejecución básica y una unidad de coma flotante (FPU) que ejecuta las operaciones y cálculos de números reales. La IU y la FPU pueden o no estar integradas en el mismo chip.

Aunque no es una parte formal de la arquitectura, las computadoras basadas en sistemas SPARC de Sun Microsystems tienen una unidad de manejo de memoria (MMU) y un gran caché de direcciones virtuales (para instrucciones y datos) que están dispuestos periféricamente sobre un bus de datos y direcciones de 32 bits.

Principales características

  • Su característica distintiva es utilizar ventanas de registros.
  • 32 registros de enteros de 32 bits.
  • 16 registros de coma flotante de 64 bits (para el caso de doble precisión) que se pueden utilizar como 32 registros de 32 bits (para precisión simple).
  • Modos de direccionamiento:
    • Inmediato, (constantes de 13 bits).
    • Directo, (offset de 13 bits).
    • Indirecto, (registro + offset de 13 bits o registro + registro).
  • Utiliza instrucciones retardadas (saltos, load y store ).
  • Manejo de memoria:
    • Espacio virtual de 4 Gigabytes.
    • Unidad de manejo de memoria (MMU) que trabaja con páginas de tamaño configurable.