Buenas tardes!
Construya su propia computadora con z80 es el título de un libro publicado en 1981 por McGraw-Hill, que aquellos que ya no somos unos pibes posiblemente hayamos oído hablar.
El autor es un gigante de estos temas, Steve Ciarcia, y publicaba artículos periódicamente en la revista Byte (una verdadera fuente de conocimiento entre los 70's y los 90s). El libro ha sido puesto como dominio público por su autor, y es muy fácil de encontrar en la red.
Después de mucho tiempo dando vueltas a la idea, y sobre todo después de encontrar el excelente trabajo realizado por Gudino Roberto , es que me he decidido a seguir los pasos de ese libro (y algunos mas) para intentar construir una pequeña computador a partir de un Z80.
Ya he hecho algunas cosas "similares" (como un clon del Altair 8800) pero usando microcontroladores. Se me da -creo- mejor la programación que la electrónica. Pero este sería un buen proyecto para aprender.
También he armado un "sistema" (no creo que ni siquiera merezca ese nombre) con un Z80 y lo mínimo necesario para que funcione. Lo pongo en el post siguiente.
Mi plan es ir armando, mientras intento conseguir algunos integrados que me faltan, un grabador de EPROMS que es indispensable para este proyecto y otros que tengo pendientes.
Saludos cordiales,
Aitopes.
Z80 mínimo v1 - (07/07/2021)
Se utilizó un chip Z840006 de Zilog, de 1990. Al microprocesador solo se le sumaron una mínima cantidad de componentes, los indispensables para su funcionamiento. Una serie de diodos LED permiten visualizar en tiempo real el contenido de los tres bits bajos del bus de direcciones, y un pulsador se encarga de proporcionar la señal de RESET.
El esquema siguiente es el que se tomó como punto de partida:
l circuito propuesto se le realizaron algunos cambios, básicamente debido al stock de componentes disponible al momento de construir el prototipo.
Se montó todo sobre una placa perforada, ya que no tenía sentido diseñar y fabricar una placa de circuito impreso especialmente dedicada a este proyecto.
Entre los cambios realizados, el más importante es que se reemplazó la etapa correspondiente al generador de pulsos de reloj, reemplazando la puerta lógica NAND del CD4093 por una NOT Schmitt Trigger de un 74HC141. El circuito utilizado es el siguiente:
El capacitor elegido tiene un valor de 220uf/16V, y en el lugar de R se utilizó un preset de 5KΩ que permite variar la frecuencia de los pulsos de salida en un rango de centrado en los 10Hz.
La alimentación proviene de una fuente de 12Vcc, y luego de pasar a través de un diodo de protección contra una inversión accidental de la polaridad, es regulado a 5V mediante un circuito integrado 78L05 y dos condensadores cerámicos de 0,1 uF.
Todos los resistores de 470Ω fueron reemplazados por resistores de 220Ω.
Lo único que hace este "sistema mínimo" es mostrar en tres leds los tres bytes mas bajos del bus de direcciones, a medida que el procesador ejecuta el "programa" que está compuesto íntegramente por "nops", ya que los pines correspondientes a los datos están puestos a GND a través de 8 resistores.
También he armado una placa con LEDs y buffers para mostrar el bus de direcciones y de datos completos, mas los flags del procesador. Más tarde les pongo alguna foto de esa placa (que no tiene nada de compleja tampoco, obviamente)
Saludos cordiales,
Aitopes.
Aquí van algunas fotos de la placa que he llamado "Z80 bus monitor".
Está conectada a un Arduino Nano para probar su funcionamiento. Funcionó a la primera, solo tuve que reemplazar uno de los 4 74HC244 por que estaba dañado (con componentes recuperados de la "basura electrónica" y que mi complejo de Diogenes me obliga a almacenar en el altillo de casa ):
Saludos cordiales,
Aitopes.
Construya su propia computadora con z80 es el título de un libro publicado en 1981 por McGraw-Hill, que aquellos que ya no somos unos pibes posiblemente hayamos oído hablar.
El autor es un gigante de estos temas, Steve Ciarcia, y publicaba artículos periódicamente en la revista Byte (una verdadera fuente de conocimiento entre los 70's y los 90s). El libro ha sido puesto como dominio público por su autor, y es muy fácil de encontrar en la red.
Después de mucho tiempo dando vueltas a la idea, y sobre todo después de encontrar el excelente trabajo realizado por Gudino Roberto , es que me he decidido a seguir los pasos de ese libro (y algunos mas) para intentar construir una pequeña computador a partir de un Z80.
Ya he hecho algunas cosas "similares" (como un clon del Altair 8800) pero usando microcontroladores. Se me da -creo- mejor la programación que la electrónica. Pero este sería un buen proyecto para aprender.
También he armado un "sistema" (no creo que ni siquiera merezca ese nombre) con un Z80 y lo mínimo necesario para que funcione. Lo pongo en el post siguiente.
Mi plan es ir armando, mientras intento conseguir algunos integrados que me faltan, un grabador de EPROMS que es indispensable para este proyecto y otros que tengo pendientes.
Saludos cordiales,
Aitopes.
Z80 mínimo v1 - (07/07/2021)
Construcción de un prototipo que permite a un Z80 funcionar con la mínima cantidad de componentes. Lejos de ser una computadora, solamente sirve para verificar el funcionamiento del microprocesador.
El proyecto está basado en el esquema proporcionado por Thomas Scherrer, con mínimos cambios.
El proyecto está basado en el esquema proporcionado por Thomas Scherrer, con mínimos cambios.
Se utilizó un chip Z840006 de Zilog, de 1990. Al microprocesador solo se le sumaron una mínima cantidad de componentes, los indispensables para su funcionamiento. Una serie de diodos LED permiten visualizar en tiempo real el contenido de los tres bits bajos del bus de direcciones, y un pulsador se encarga de proporcionar la señal de RESET.
El esquema siguiente es el que se tomó como punto de partida:
l circuito propuesto se le realizaron algunos cambios, básicamente debido al stock de componentes disponible al momento de construir el prototipo.
Se montó todo sobre una placa perforada, ya que no tenía sentido diseñar y fabricar una placa de circuito impreso especialmente dedicada a este proyecto.
Entre los cambios realizados, el más importante es que se reemplazó la etapa correspondiente al generador de pulsos de reloj, reemplazando la puerta lógica NAND del CD4093 por una NOT Schmitt Trigger de un 74HC141. El circuito utilizado es el siguiente:
El capacitor elegido tiene un valor de 220uf/16V, y en el lugar de R se utilizó un preset de 5KΩ que permite variar la frecuencia de los pulsos de salida en un rango de centrado en los 10Hz.
La alimentación proviene de una fuente de 12Vcc, y luego de pasar a través de un diodo de protección contra una inversión accidental de la polaridad, es regulado a 5V mediante un circuito integrado 78L05 y dos condensadores cerámicos de 0,1 uF.
Todos los resistores de 470Ω fueron reemplazados por resistores de 220Ω.
Lo único que hace este "sistema mínimo" es mostrar en tres leds los tres bytes mas bajos del bus de direcciones, a medida que el procesador ejecuta el "programa" que está compuesto íntegramente por "nops", ya que los pines correspondientes a los datos están puestos a GND a través de 8 resistores.
También he armado una placa con LEDs y buffers para mostrar el bus de direcciones y de datos completos, mas los flags del procesador. Más tarde les pongo alguna foto de esa placa (que no tiene nada de compleja tampoco, obviamente)
Saludos cordiales,
Aitopes.
Aquí van algunas fotos de la placa que he llamado "Z80 bus monitor".
Está conectada a un Arduino Nano para probar su funcionamiento. Funcionó a la primera, solo tuve que reemplazar uno de los 4 74HC244 por que estaba dañado (con componentes recuperados de la "basura electrónica" y que mi complejo de Diogenes me obliga a almacenar en el altillo de casa ):
Saludos cordiales,
Aitopes.
Última edición: