I have been assigned the task of implementing a filter that utilizes the following update equation in MATLAB:
P = (1 / lambda) * (P  ((P * u * u' * P) / (lambda + u' * P * u)));
In this equation, ‘P’ is a [5x5] matrix, ‘u’ is a [5x1] matrix, and ‘lambda’ is a constant. P must be computed every 10uS (100kHz), and the implementation can utilized either fixedpoint or floating point numbers. Can anyone give me any suggestions as to how to implement this equation in VHDL. I am using an Altera Dev. Board with a Startix II EP2S60 FPGA. I have attempted instantiating a NIOSII processor into the FPGA and running a C program to compute P, but this option was too slow. I also realize that I might have to tough it out and simply expand the equations and “code away” or develop a solution using matrix multiplication modules.
Thanks,
Jon
