Plataforma Co-Design Hardware/Software para Reconfiguração de Coeficientes em DSP
Author:
Ferreira, Rafael
Abstract:
Este trabalho apresenta o desenvolvimento de uma plataforma de co-design hardware/software para reconfigurar filtros digitais em tempo de execução e validar experimentalmente blocos de processamento digital de sinais (DSP) em uma arquitetura SoC-FPGA. Implementada na placa DE10-Standard, a plataforma combina um processador ARM, responsável pela execução de programas em Python, com a lógica programável da FPGA, responsável pelo processamento dos sinais. A comunicação ocorre por meio de registradores mapeados em memória, pelos quais o software envia coeficientes, amostras e comandos de controle, além de coletar os resultados. Essa estrutura permite alterar os coeficientes sem ressintetizar a lógica programável. Como prova de conceito, foram implementados filtros FIR e IIR e um filtro adaptativo baseado no algoritmo NLMS para identificação de sistemas. Os filtros FIR e IIR foram configurados como passa-baixas, com frequência de corte próxima de 10 kHz, e avaliados com um sinal de varredura de 500 Hz a 20 kHz. As respostas obtidas na FPGA foram compatíveis com as dos modelos de referência em Python, com taxas efetivas de comunicação entre aproximadamente 1,10 Mb/s e 1,25 Mb/s. Para o NLMS, foram utilizadas plantas de referência com coeficientes aleatórios e coeficientes baseados em uma janela de Hamming, a fim de avaliar a evolução do erro e a convergência dos coeficientes estimados. Os experimentos demonstram que a plataforma permite configurar e testar filtros reconfiguráveis e algoritmos adaptativos no hardware físico, integrando a flexibilidade do software à execução dos blocos de processamento na FPGA.