How can matlab functions like eig, rand, cov and likewise be converted into vhdl using hdl coder?
1 view (last 30 days)
Sukhmani Kaur Thethi on 21 Jul 2016
Hello, I'm working on a DSP project dealing with large random matrices. I have to use certain matlab functions like eig , rand, cov; and cannot do through traditional method because currently I'm dealing with 10x5 matrix. Kindly suggest me a way out through this.
Tim McBrayer on 21 Jul 2016
None of those three functions are supported by HDL Coder, as you seem aware. Think about what you are trying to accomplish; are you really wanting to implement a random number generator in your FPGA? Perhaps the call to rand() can exist inside your testbench, and the data from it can be an input to your hardware design.
For involved matrix calculations such as eig(|) and |cov(), you will need to decompose these to the underlying algorithm. This is certainly doable, if a bit involved, and will be supported by HDL Coder. Since you are working with a fixed size array, you have the chance to optimize your implementation for the sizes involved, should the opportunity arise.