quarta-feira, 13 de setembro de 2006

Leitor de MMC/SD rápido

Pesquisando na internet, dá pra achar alguns projetos de leitor de MMC para o MSX (refs [1][2]), mas todos eles têm uma taxa de transferência relativamente baixa, pois todos eles trabalham com serialização por software.

Daí surgiu a idéia de fazer um leitor diferente, que utilizasse hardware para suportar o protocolo SPI, permitindo assim trabalhar com o clock do Z80, de forma a suportar uma leitura de bloco a partir de uma simples instrução INIR.

A base desse projeto é o próprio protocolo SPI (refs [3], [4], [5]), utilizado para a comunicação com o cartão de memória MMC/SD (ref [6]). Esse protocolo permite implementar a comunicação entre dois dispositivos utlizando simples registradores de deslocamento. O "pulo do gato" consiste em manipular o 'clock' do Z80 de forma a sincronizar os acessos a um endereço de I/O com um número predeterminado de ciclos de 'clock' (no caso, 8).

Nenhum comentário: