« Arquitectura de la Sega Master System (index)

Arquitectura de la Sega Master System

Chapter 4: CPU


Tabla de contenidos

  1. Comparativa relativa
  2. Memoria disponible
  3. Acceso al resto de componentes
  4. Retrocompatibilidad

Sega apostó por una Zilog Z80 de pleno derecho funcionando a ~3,58 MHz, una opción muy extendida entre fabricantes de ordenadores como Sinclair, Amstrad y Tandy.

Image
El Tandy TRS-80 americano (1977). Lo encontré en el Computer History Museum (Mountain View, California) durante mi visita en junio de 2019.

Image
El Sinclair ZX80 británico (1980), ¡es mucho más pequeño de lo que parece! Pertenece a la colección de Christopher Rivett .

Ordenadores populares de todo el mundo con una CPU Z80.

La CPU Z80 tiene una historia curiosa: fue diseñada nada menos que por los autores del Intel 8080 (Federico Faggin y Masatoshi Shima), quienes, desencantados con el rumbo de Intel, decidieron fundar su propia empresa de semiconductores, Zilog, en 1974.

Image
El chip Z80 en la placa base de la Master System.

Su primer producto puede considerarse un sucesor no oficial del Intel 8080, con las siguientes novedades:

La fotografía de la placa base que encabeza el artículo muestra una CPU NEC D780C-1, lo que simplemente indica que Sega recurrió a fabricantes secundarios para producir el chip. Otras revisiones incluyeron incluso el chip fabricado por la propia Zilog. En cualquier caso, a efectos de este análisis, lo que importa es que las características internas son las mismas.

Comparativa relativa

Cabe señalar que la CPU 6502 (presente en la NES) funciona a apenas ~2 MHz, es decir, aproximadamente la mitad de la velocidad del chip de la Master System. Si a ello sumamos el mayor banco de registros del Z80, podría parecer que la Master System superaría a la NES sin discusión.

Ahora bien, si profundizamos, comprobamos que el 6502 dispone de una ALU más capaz (de 8 bits). Por lo tanto, operaciones aritméticas que en el 6502 se completan en dos ciclos, en el Z80 consumen cuatro. Esto demuestra que atributos relativos como la velocidad de reloj o el tamaño del banco de registros, analizados de forma aislada, pueden ser engañosos. Tanto el Z80 como el 6502 destacan y flaquean en tareas distintas; en última instancia, todo depende de la habilidad del programador.

Memoria disponible

Como ya vimos, el Z80 dispone de un bus de direcciones de 16 bits, por lo que la CPU puede acceder a hasta 64 KB de memoria. En el mapa de memoria de la Master System encontrarás 8 KB de RAM de propósito general , duplicada en otro bloque de 8 KB. Por último, también se mapean hasta 48 KB de ROM del juego.

Acceso al resto de componentes

Como habrás leído en el párrafo anterior, en el espacio de direcciones solo se encuentran la RAM principal y algo de ROM del cartucho. ¿Cómo accede entonces el programa al resto de componentes? Pues bien, a diferencia de la Famicom/NES de Nintendo, no todo el hardware de la Master System está mapeado en memoria. En su lugar, a ciertos periféricos se accede a través del espacio de Entrada/Salida (E/S).

Esto se debe a que la familia Z80 incluye una característica llamada puertos de E/S, que permiten a la CPU comunicarse con el resto del hardware sin agotar las direcciones de memoria. Para ello, existe un espacio de direcciones separado para los 'dispositivos de E/S' denominado puertos, y ambos comparten los mismos buses de datos y direcciones. La diferencia radica en que los puertos se leen y escriben mediante las instrucciones IN y OUT, respectivamente, en contraposición a la instrucción convencional de carga/almacenamiento (LD).

Cuando se ejecuta una instrucción IN u OUT, el Z80 configura las líneas de dirección para apuntar al periférico (que podría ser, por ejemplo, un teclado), activa su pin IORQ para indicar que se ha iniciado una solicitud de E/S y, finalmente, activa el pin RD o WR según se trate de una instrucción IN o OUT, respectivamente. En consecuencia, el periférico direccionado debe monitorizar manualmente el bus de direcciones y los pines de E/S para realizar la operación requerida. En el caso de una instrucción IN, la CPU almacena el valor recibido en un registro predefinido.

Image
Esquema de direccionamiento de la SMS.

La forma en que Sega interconectó la CPU con el resto de componentes no solo permite acceder a valores, sino también exponer u ocultar determinados componentes del mapa de memoria.

Curiosamente, la Game Boy albergaba una 'variante' del Z80 que prescindía por completo de los puertos de E/S. Por ello, esta debía encajar todo en el mapa de memoria.

Retrocompatibilidad

La arquitectura de esta consola es muy similar a la de su predecesora, la Sega SG-1000. Gracias a ello, la Master System resultó retrocompatible con la SG-1000, aunque esta característica solo se aplica a la variante japonesa, ya que las demás tienen una ranura de cartucho diferente.


Previous: 3. Modelos y variantes

Next: 5. Gráficos


Rodrigo Copetti © 2026 RSS Feed

Ir a la edición moderna

Inicio · Escritos · Soporte · Acerca del autor · Acerca del sitio web