Close

Acessando diretamente a memória

A project log for Computador de 8 bits

Um computador para tarefas programávéis muito simples e de muito baixo custo

anderson-mirandaAnderson Miranda 01/30/2016 at 14:300 Comments

Para economizar instruções, as transferências memória<->E/S e buscas na memória existe um circuito integrado auxiliar chamado DMA que faz todo esse trabalho exaustivo com apenas alguns bits de instrução. O dma trabalha em conjunto com o processador por este motivo ele estará junto a placa principal comandando as cópias e busca de dados, ele também é responsavel por interromper a CPU para processar entradas e saidas de outroe periféricos, ou seja, sem o DMA o computador é apenas um processsador de dados monotarefa e cheio de lags na hora de usar as E/S do sistema.

O DMA recebe instruções de 8 bits em até 6 ciclos quando ativo pela sua respequitiva IRQ, após receber os comandos ele solicita os barramentos de dados e endereços e o processador entra em estado de alta impedância, após terminar o trabalho o DMA retorna uma interrupção para o processador e entra em estado de alta impedância esperando ser solicitado novamente.

O DMA utilizado é o Z80 DMA de 4MHZ, a frequencia pode ser maior usando componentes da família Z80 mais novos, mas os mais comuns de se encontrar são de 4 MHZ, não esqueça que a frequencia padrão do sistema é a frequencia máxima do componente mais lento, apesar de ter começado o projeto com uma CPU de 20MHZ de clock máximo o DMA e a RAM obriga a diminuir a velocidade do clock geral do sistema

Discussions