How to deal with math functions like tan,atan in matlab code while converting them to verilog using hdlcoder?

조회 수: 7 (최근 30일)
I need to convert matlab code to verilog. I tried using hdlcoder,but in my code I have math functions like tan,atan,log etc. which are causing errors during Hdl conversion.It says "The MATLAB design contains constructs that are unsupported for HDL code generation."
Also they are giving errors during fixed point conversion. I tried setting "Keep original types" but still the above error is coming.
Waiting for any help.
Thanks, Susmitha.

채택된 답변

Walter Roberson
Walter Roberson 2016년 7월 5일
  댓글 수: 3
Susmitha  S
Susmitha S 2016년 7월 6일
I am new to matlab.
The reference you gave me for cordic algorithm shows an example of sin , cosine functional blocks and I am able to run the particular code and generate Verilog code.
But I am clueless on how to create my own functional block and add it to the remaining matlab code. For example: If I need to implement a functional block for: a1*tan(b1*n); how should I proceed?
(a1, b1 , n are parameters I am passing to a function where the tan,atan functions are present) Please help.
Thanks, Susmitha

댓글을 달려면 로그인하십시오.

추가 답변 (1개)

Tim McBrayer
Tim McBrayer 2016년 7월 5일
An alternative approach is to use a lookup-table based function substitution. This works better for sin or cos than it does for tan, due to the limited range of the function input and output. Nonetheless, dependent upon your system requirements and input ranges to these functions you can get quite good results at your desired precision using lookup tables as well.

제품

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by