Mudanças entre as edições de "AnotherWorld JAMMA"
Ir para navegação
Ir para pesquisar
(→STACK) |
|||
Linha 27: | Linha 27: | ||
==== STACK ==== |
==== STACK ==== |
||
− | A VM possui uma pilha de 256 elementos de 16 bits cada. Pensei em implementar isso com register |
+ | A VM possui uma pilha de 256 elementos de 16 bits cada. Pensei em implementar isso com [http://www.ti.com/lit/ds/symlink/sn74als870.pdf register files], mas não achei um grande o suficiente pra isso. O Mais próximo que achei foi [http://www.datasheetarchive.com/dlmain/Datasheets-112/DSAP0044877.pdf esse] que tem 64 elementos de 40 bits cada. Mesmo assim teria que ter 4 desses, sobrariam bits não usados e não sei o quão fácil é achar desse chip. Talvez seja o caso de usar uma RAM estática, mesmo que as menores disponíveis já sejam muito maiores que o realmente necessário aqui. |
== Sistema de áudio == |
== Sistema de áudio == |
Edição das 12h59min de 3 de agosto de 2016
Relógio Central
Função: Gerar o sinal de clock para a CPU e para os circuitos de geração de vídeo implementação: (pendente)
CPU
Unidade de Controle - Decodificador de Instrução
Função: Detectar qual instrução o processador precisa executar com base no valor do código de instrução atual implementação: (pendente)
Sugestão:
Como o instruction set da VM é muito simples e tem opcodes com valores incrementais de 0x00 a 0x1A (mais um par de instruções especiais em 0x80 e 0x40) é possível implementar trivialmente um decoder por meio do uso de um decodificador de 5 bits para 32 linhas
Unidade de Controle - Microcódigo
Função: Implementa o comportamento de cada instrução por meio da geração de sinais de controle que manipulam o fluxo de dados implementação: (pendente)
Fluxo de Dados
Função: Elementos passivos que implementam os registradores internos da CPU, Pilha e memória implementação: (pendente)
STACK
A VM possui uma pilha de 256 elementos de 16 bits cada. Pensei em implementar isso com register files, mas não achei um grande o suficiente pra isso. O Mais próximo que achei foi esse que tem 64 elementos de 40 bits cada. Mesmo assim teria que ter 4 desses, sobrariam bits não usados e não sei o quão fácil é achar desse chip. Talvez seja o caso de usar uma RAM estática, mesmo que as menores disponíveis já sejam muito maiores que o realmente necessário aqui.
Sistema de áudio
Função: Tocar 4 canais simultaneos de áudio com base em samples armazenados em ROMs implementação: Estamos estudando a possibilidade de usar um chip MSM6295
Sistema de vídeo
Função: Gerar sinal de vídeo para os pinos do conector JAMMA com base em rotinas de rasterização dos elementos poligonais armazenados em ROMs implementação: (pendente)