Arquitetura para invasão de matrizes usando circuito divisor eficiente baseado no algoritmo Goldschmidt - Marques, Pedro Luís Carneiro (2016)
O cálculo de inversão de matrizes está presente em várias aplicações da área de Processamento de Sinais. Entre essas aplicações, a filtragem adaptativa, baseada no algoritmo de Projeções Afins, inclui o cálculo de inversão de matrizes, que agrega uma elevada complexidade computacional. Existem vários algoritmos para o cálculo de inversão de matrizes. A complexidade do algoritmo está associada ao tamanho da matriz, que varia de acordo com a aplicação alvo. Essa dissertação propõe a implementação em hardware dedicado do algoritmo analítico de inversão de matrizes. Esse algoritmo é o mais apropriado para a implementação de uma matriz de tamanho 2x2, que é o tamanho adequado para uma implementação do algoritmo de Projeções Afins para diversas aplicações práticas. No bloco de inversão de matriz, o circuito divisor é o que agrega a maior complexidade computacional. Dentre os algoritmos de divisão presentes na literatura, os algoritmos baseados em iterações funcionais são considerados os mais rápidos, pois são capazes de tirar proveito de multiplicadores de alta velocidade, para convergir de forma quadrática para um resultado. Dentre os algoritmos baseados em iterações funcionais, destacam-se os algoritmos de Newton-Raphson e de Goldschmidt. Entretanto, o algoritmo de Goldschmidt tem sido mais utilizado em aplicações que demandam alta velocidade de processamento, pois ao contrário do algoritmo Newton-Raphson, onde as multiplicações são dependentes umas das outras, no algoritmo Goldschmidt as multiplicações são realizadas em paralelo. Nesse trabalho, propõe-se a implementação em hardware de um circuito divisor eficiente baseado no algoritmo Goldschmidt. O circuito divisor usa um multiplicador na base 4 da literatura, que torna o divisor mais eficiente em termos de dissipação de potência, quando comparado ao circuito divisor usando o multiplicador da ferramenta de síntese. O circuito divisor proposto aumenta a faixa de valores de operação através do uso do padrão Q7.8, que permite valores entre -127.99609375 e +127.99609375, ao contrário do divisor Goldschmidt original, que admite uma estreita faixa de valores ente 1 e 2. Os principais resultados mostram que o uso do divisor Goldschmidt eficiente proposto torna o circuito inversor de matriz com uma menor dissipação de potência, o que se torna um atrativo para uma futura implementação da arquitetura completa do algoritmo de Projeções Afins.