Desenvolvimento de um clone em silício open source da CPU Zilog Z80
- Em 15 de abril de 2024, a Zilog anunciou a descontinuação do Z80, um dos CPUs de 8 bits mais famosos da história
- Chegou a hora de a comunidade de open source e preservação de hardware iniciar o desenvolvimento de um silício livre e de código aberto (FOSS) que possa substituir o Zilog Z80
- A primeira fabricação do FOSS Z80 está prevista para junho de 2024
Primeira versão em silício do FOSS Z80
- A primeira versão foi desenvolvida em processo de 130nm usando o Tiny Tapeout 07, ajustada para uma área de die de 0,064mm²
- A primeira fabricação está prevista como parte do shuttle CI 2406 de junho de 2024
- A implementação é baseada no núcleo TV80 em Verilog de Guy Hutchison
- É apresentada uma imagem do layout de circuito integrado GDSII do FOSS Z80, gerado com elementos lógicos "gate" de 130nm usando o fluxo automatizado de posicionamento e roteamento do OpenROAD
Planos futuros e tarefas pendentes
- Adicionar ao test bench o teste de execução de instruções "ilegais" ZEXALL
- Comparar várias implementações de núcleos Verilog, como A-Z80 e Z80Explorer
- Produção pela ChipIgnite em encapsulamento QFN44
- Produção em encapsulamento DIP40
- Gerar um layout em nível de portas semelhante ao layout original do Z80 (a Zilog posicionou manualmente cada transistor ao projetar o Z80)
Informações sobre a CPU Z80
Pinout
- É apresentado o diagrama dos 40 pinos da CPU Z80
Documentação
- Manual do usuário do Z80 (versões Zilog e Mostek)
- Data book da Zilog
- Todas as informações sobre o Z80
- Instruções não documentadas
- Tabela de instruções e temporização
História oral do desenvolvimento do Z80
- Painel de história oral sobre o desenvolvimento do microprocessador Z80 e a fundação da empresa
- Explicação de M. Shima sobre o projeto de microprocessadores
Patentes do Z80
- Patente sobre proteção contra picos de tensão de entrada (US4605980, expirada)
- Patente sobre circuito de reset (US4486827A, expirada)
- Outras patentes (US4332008A, expirada)
Fotos do die do Z80
- Como ler fotos de die
- Fotos de die de várias versões do Z80 e chips clone (Zilog, Nintendo, Mostek, National Semiconductor, soviéticos etc.)
Engenharia reversa do Z80
- Decodificação do registrador de instruções do Z80
- Operação trifásica das portas do barramento de dados e endereços do Z80
- Comportamento (não) documentado do Z80
- PLA de decodificação de instruções do microprocessador Z80
- Por que os pinos de dados do Z80 estão embaralhados
- Forma de implementação dos registradores do Z80
- Engenharia reversa do circuito de incremento/decremento de 16 bits do Z80
- A ALU de 4 bits do Z80
- Explicação em silício da porta XOR e de outras duas portas interessantes
- Registrador WZ (MEMPTR) - o registrador enigmático do Z80
Implementações existentes do Z80
- TV80 (Verilog) - versão de Guy Hutchison
- TV80 (Verilog) - versão de Obijuan
- A-Z80 (Verilog)
- Emulador em nível de netlist do Z80 (Z80Explorer)
Introdução ao Tiny Tapeout
- Tiny Tapeout é um projeto educacional que busca tornar mais fácil e barato fabricar projetos digitais como chips reais
- Para mais detalhes e como começar, consulte https://tinytapeout.com
Recursos relacionados
- FAQ
- Aulas de projeto digital
- Aprender como semicondutores funcionam
- Participar da comunidade
- Construir o projeto localmente
Opinião do GN⁺
- O Z80 foi um processador que teve um papel importante na história dos CPUs de 8 bits, e o desenvolvimento de uma versão FOSS é uma tentativa significativa
- Em especial, fabricá-lo em silício real usando o Skywater 130nm PDK pode contribuir para o avanço do ecossistema de hardware open source
- Ainda assim, o conjunto de instruções do Z80 é um tanto ultrapassado sob uma perspectiva moderna, e sua utilidade prática é questionável
- Pode ter valor para retrocomputação ou uso educacional, mas parece difícil de usar em produtos comerciais
- Entender os detalhes de projeto do Z80 por meio de engenharia reversa será muito útil para aprender arquitetura de processadores
- Como já existem núcleos Verilog bem preparados que podem ser facilmente emulados via FPGA, a acessibilidade é alta
- Uma análise comparativa com processadores open source modernos, como RISC-V e OpenPOWER, também pode ser um tema de pesquisa interessante
1 comentários
Comentários do Hacker News
É impressionante que o Tiny Tapeout tenha permitido a makers e estudantes viabilizar seus próprios projetos de chips a um custo acessível
Com um processo de 130nm não dá para projetar a próxima geração de CPUs da Intel, mas é notável que um Z80 caiba em 0,064 mm2
É bom ver que surgiu uma alternativa numa situação em que a produção oficial do chip está sendo descontinuada
Gostariam de ver uma versão com tampa banhada a ouro e um chamativo encapsulamento cerâmico roxo
O 6502, rival do Z80, e seus derivados ainda são produzidos por um dos criadores originais
O Z80 era a CPU do ZX Spectrum
Há dúvidas sobre a compatibilidade com o Z80 original
O layout do circuito parece mais um arranjo uniforme de portas lógicas do que o layout customizado normalmente visto em fotos de die
Há arrependimento, em tom de brincadeira, por ter investido toda a fortuna em chips Z80 na "última chance de compra"
Há curiosidade sobre se a ALU de 4 bits do Z80 (usando duas para operações de 8 bits) era considerada o principal gargalo e se extensões posteriores adicionaram operações inteiras de maior largura
Há curiosidade sobre se a versão open source do chip permitirá novos recursos e variantes
(Comentário de alguém que fazia parte da equipe inicial do efabless.com) O EDA open source parece muito legal
Surpresa pelo fato de o Z80 já ter sido lançado há 50 anos
Há curiosidade sobre como isso competirá em preço com os inúmeros chips Z80 usados disponíveis no mercado