Velocity Reviews - Computer Hardware Reviews

Velocity Reviews > Newsgroups > Programming > VHDL > FPGA/VHDL Matrix Multiply

Reply
Thread Tools

FPGA/VHDL Matrix Multiply

 
 
fiofury1 fiofury1 is offline
Junior Member
Join Date: Aug 2007
Posts: 1
 
      08-13-2007
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 fixed-point 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
 
Reply With Quote
 
 
 
 
scottcarl scottcarl is offline
Member
Join Date: May 2007
Location: USA
Posts: 51
 
      08-16-2007
Jon,

I've built one of these and there is no other way to do it but slog through all the calculations. Mine was an [8x8] complex matrix, ugh. So for a [5x5]x[5x1] you'll have 25 multiplications with 5 results stored into a [5x1] matrix. However, the u'P multiply is seen twice in your equation and therefore should only calcualate it once, saving some time. Here is the attachment of the rendition of what you should build.

Regards,
Scott
Attached Images
File Type: bmp matrix_multiply.bmp (12.9 KB, 34 views)
 
Reply With Quote
 
 
 
Reply

Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
Matrix*Vector and Vector*Matrix Holgerson C++ 3 10-26-2007 07:38 AM
Matrix composed by two matrix lvcargnini VHDL 3 07-05-2006 07:21 AM
Matrix multiply code christopher diggins C++ 15 05-16-2005 10:12 AM
coding problem (matrix multiply) George C++ 1 03-21-2005 03:18 PM
Re: Matrix DTS and Matrix 2 DTS? PeterTHX DVD Video 0 08-03-2003 05:46 AM



Advertisments