Desarrollo de un clon de silicio de código abierto del CPU Zilog Z80
- El 15 de abril de 2024, Zilog anunció la descontinuación del Z80, uno de los CPU de 8 bits más famosos de la historia
- Ha llegado el momento de que la comunidad de código abierto y preservación de hardware emprenda el desarrollo de un silicio libre y de código abierto (FOSS) que pueda reemplazar al Zilog Z80
- La primera fabricación del FOSS Z80 está prevista para junio de 2024
Primera versión en silicio del FOSS Z80
- La primera versión se desarrolló con Tiny Tapeout 07 en un proceso de 130nm y se ajusta a un área de dado de 0.064mm²
- La primera fabricación está prevista como parte del shuttle CI 2406 de junio de 2024
- La implementación se basa en el núcleo TV80 en Verilog de Guy Hutchison
- Se presenta una imagen del layout de circuito integrado GDSII del FOSS Z80, generado con elementos lógicos de tipo "gate" de 130nm usando el flujo automatizado de colocación y ruteo de OpenROAD
Planes futuros y tareas pendientes
- Agregar a la bancada de pruebas ZEXALL para probar la ejecución de instrucciones "ilegales"
- Comparar distintas implementaciones de núcleos Verilog como A-Z80 y Z80Explorer
- Fabricación en ChipIgnite con encapsulado QFN44
- Fabricación con encapsulado DIP40
- Generar un layout a nivel de compuertas similar al layout original del Z80 (Zilog colocó manualmente cada transistor al diseñar el Z80)
Información del CPU Z80
Diagrama de pines
- Se presenta el diagrama de distribución de los 40 pines del CPU Z80
Documentación
- Manual de usuario del Z80 (versiones de Zilog y Mostek)
- Data book de Zilog
- Toda la información sobre el Z80
- Instrucciones no documentadas
- Tabla de instrucciones y temporización
Historia oral del desarrollo del Z80
- Panel de historia oral sobre el desarrollo del microprocesador Z80 y la fundación de la empresa
- Explicación del diseño de microprocesadores por M. Shima
Patentes del Z80
- Patente sobre protección contra picos de voltaje de entrada (US4605980, expirada)
- Patente sobre el circuito de reset (US4486827A, expirada)
- Otras patentes (US4332008A, expirada)
Fotos del dado del Z80
- Cómo leer fotos del dado
- Fotos del dado de varias versiones del Z80 y chips clon (Zilog, Nintendo, Mostek, National Semiconductor, soviéticos, etc.)
Ingeniería inversa del Z80
- Decodificación del registro de instrucciones del Z80
- Operación trifásica de las compuertas de los buses de datos y direcciones del Z80
- Comportamiento (no) documentado del Z80
- PLA de decodificación de instrucciones del microprocesador Z80
- Por qué los pines de datos del Z80 están mezclados
- Cómo están implementados los registros del Z80
- Ingeniería inversa del circuito de incremento/decremento de 16 bits del Z80
- La ALU de 4 bits del Z80
- Explicación en silicio de una compuerta XOR y otras dos compuertas interesantes
- Registro WZ (MEMPTR): el registro enigmático del Z80
Implementaciones existentes del Z80
- TV80 (Verilog) - versión de Guy Hutchison
- TV80 (Verilog) - versión de Obijuan
- A-Z80 (Verilog)
- Emulador a nivel de netlist del Z80 (Z80Explorer)
Introducción a Tiny Tapeout
- Tiny Tapeout es un proyecto educativo que busca hacer más fácil y barato fabricar diseños digitales como chips reales
- Para más detalles y cómo empezar, consulta https://tinytapeout.com
Recursos relacionados
- FAQ
- Curso de diseño digital
- Aprender cómo funcionan los semiconductores
- Participar en la comunidad
- Construir el diseño localmente
Opinión de GN⁺
- El Z80 fue un procesador que tuvo un papel importante en la historia de los CPU de 8 bits, y el desarrollo de una versión FOSS es un intento significativo
- En particular, fabricarlo como silicio real usando el PDK Skywater de 130nm puede contribuir al desarrollo del ecosistema de hardware de código abierto
- Sin embargo, el conjunto de instrucciones del Z80 es algo anticuado desde una perspectiva moderna, y su utilidad práctica es cuestionable
- Puede tener valor para retrocomputación o fines educativos, pero parece difícil que se use en productos comerciales
- Identificar los detalles de diseño del Z80 mediante ingeniería inversa será muy útil para aprender arquitectura de procesadores
- Como ya existen núcleos Verilog bien preparados que pueden emularse fácilmente en FPGA y otros entornos, la accesibilidad es alta
- Un análisis comparativo con procesadores modernos de código abierto como RISC-V y OpenPOWER también podría ser un tema de investigación interesante
1 comentarios
Comentarios en Hacker News
Sorprende que Tiny Tapeout haya permitido a makers y estudiantes hacer realidad sus propios diseños de chips a bajo costo
Con un proceso de 130 nm no se podrá diseñar un CPU Intel de próxima generación, pero ya es impresionante que un Z80 quepa en 0.064 mm2
Da gusto que haya surgido una alternativa en una situación donde la producción oficial del chip está descontinuada
Quieren una cubierta chapada en oro y un llamativo paquete cerámico color púrpura
El rival del Z80, el 6502 y sus derivados, siguen siendo producidos por uno de sus creadores originales
El Z80 era el CPU de la ZX Spectrum
Hay dudas sobre la compatibilidad con el Z80 original
El layout del circuito parece más un arreglo uniforme de compuertas que el típico layout personalizado que se ve en fotos comunes del die
Se arrepienten de haber gastado toda su fortuna en chips Z80 durante la oportunidad de "última compra" (broma)
Se preguntan si la ALU de 4 bits del Z80 (usando dos para operaciones de 8 bits) era considerada el principal cuello de botella, y si expansiones posteriores añadieron operaciones enteras de más bits
Se preguntan si la versión open source del chip permitirá nuevas funciones y variantes
(Comentario de alguien que estuvo en el equipo inicial de efabless.com) El EDA open source se ve genial
Sorprende que ya hayan pasado 50 años desde el lanzamiento del Z80
Se preguntan cómo competirá en precio frente a la gran cantidad de chips Z80 usados que hay en el mercado