O ATSAM3303B é um membro da nova família ATSAM3000 da Atmel (www.atmel.com) que utiliza uma tecnologia de arrays de DSPs. O ATSAM3303 inclui três DSPs de 24 bits, um roteador de áudio de 24 bits e um microcontrolador de uso geral de 16 bits CISC.
Com isso, ele apresenta características de alta performance e flexibilidade na implementação de aplicações de áudio de alta qualidade para uso profissional como decodificação MP3, síntese de formas de onda, processamento de efeitos e mixagem.
O dispositivo conta ainda com diversos i/Os, incluindo uma rOM Wave, SmartMedia e DataFlash. As taxas de amostragem chegam aos 96 kHz com 24 bits.
O ATSM3303B inclui três DSPs on-chip. Cada DSP é construído em torno de uma RAM de 2k x 24 e uma ROM de 1k x 24, A RAM contém tanto os dados como instruções P4.
A ROM contém coeficientes típicos como os cossenos FFT e funções de janela.
UM P24 envia e recebe amostras de áudio através do Sybc Bus. Ele pede dados externos como áudio comprimido pelo Async Bus. Cada RAM P24 pode ser acessada pelo Async Bus.
Cada P24 pode aceitar loops típicos de operação MAC, incluindo auto-indexação, reversão de bits e multiplicação de números complexos. Ele também inclui instruções especiais como de filtragem IIR, geração de envoltória e interpolação linear.
Um P24 apenas é suficiente para processar um canal de MP3, implementando um retardo multi-tomadas, ou filtro transversal. Com um P24 também é possível gerar 10 vozes de som com amostragem de 32 kHz (8 vozes com 48 kHz0, incluindo cache de amostragem, controle de pitch, filtro de segunda ordem e dois geradores de envoltórias.
Na figura 1 temos o diagrama de blocos do ATSAM3303 Array de DSP.
Além desses DSPs temos o Sync Bus que transfere dados na base de frames, com taxas típicas de 32, 44,1, 48 ou 96 kHz, sendo cada um dividido em 64 slots de tempo. O Async Bus trabalha com dados de 24 bits. Temos ainda um processador de 16 bits (P16) que é usado em muitos produtos ATSAM.
Uma unidade de gerenciamento de memória (MMU) é outro recurso encontrado nesse produto, controlando o fluxo de dados para fora e para dentro do chip. Finalmente temos o roteador que inclui uma RAM, I/Os, etc. Na figura 2 temos um exemplo típico de aplicação.
Trata-se de um MP3 controlado por um hospedeiro, otimizado para aplicações em telefone celular. Destaca-se nesse projeto a polifonia de 36 vozes com amostragem de 32 kHz e 24 vozes com efeitos como reverberação e chorus.
O projeto ainda tem comunicação serial MIDI assíncrona e SPI síncronizada.
Outro projeto é mostrado na figura 3 consistindo num teclado musical polifônico.
Esse projeto inclui polifonia de 24 vozes com efeitos com uma taxa de amostragem de 32 kHz. Além pode ser escolhido sons amostrados em GM+ de 4 Mbits ou 64 Mbits. A memória externa máxima endereçável é de 128 Mbits.
Para a realização de projetos com esse componente a Atmel disponibiliza a 08PIA-DK, uma placa da avaliação e projeto que tanto serve para o ATSAM3303 como para o ATSAM9708, sendo indicada para projetos de teclados digitais de pianos e outros instrumentos de teclado.
O Hardware dessa placa inclui:
* CODEC de áudio: AKM AK4528 (24 bits, 108 dB SNR)
* Memória Flash de 256 Mbit 4 x Atmel 49BV6416 (4M x 16) para armazenamento de som.
* SRAM de 1 Mbits (64k x 16) para área de trabalho do ATSAM9708.
* SRAM de 1 Mbits (64k x 16) para debbuging do ATSAM9708 (opcional)
* SRAM de 2 Mbit (128 x 16) para o processamento de efeitos do ATSAM3303
* Memória Flash de 16 Mbit para armazenamento de firmware.
* Dispositivo USB para plena velocidade de USB 2.0
No site da Atmel digitando tanto o nome da placa de avaliação como do componente, o leitor poderá obter documentação completa tanto sobre o componente como do próprio desenvolvimento de um teclado digital completo.