fixed point taylor sine/cosine approximation model

13 views (last 30 days)
Gary
Gary on 19 Jun 2022
Commented: Gary on 17 Jul 2022 at 15:38
Can anybody share sine/cosine taylor approx model which is compatible with hdl coder?
  2 Comments
Gary
Gary on 21 Jun 2022
I do not wish to use the inbuilt model of simulink but to build one.

Sign in to comment.

Answers (2)

Sulaymon Eshkabilov
Sulaymon Eshkabilov on 19 Jun 2022
WHy not to use matlab's built-in taylor() expansion fcn: https://www.mathworks.com/help/symbolic/sym.taylor.html?s_tid=doc_ta
E.g.:
syms x
taylor(sin(x), x, pi)
ans = 
taylor(cos(x), x, pi/2)
ans = 
  20 Comments
Gary
Gary on 23 Jun 2022
Thank you . It was excellent analysis. I am clear now.

Sign in to comment.


Kiran Kintali
Kiran Kintali on 4 Jul 2022
HDL Coder supports code generation for single precision trigonometric functions.
Getting Started with HDL Coder Native Floating-Point Support
Taylor series approximation using HDL Coder
If you want to build Taylor series approximation by youself you could build using basic Math operations and sufficient amount of fixed-point conversion.
syms x
f = sin(x);
T2sin = taylor(f, x, 'Order', 2); % T2sin = x
T4sin = taylor(f, x, 'Order', 4); % T4sin = -x^3/6 + x
T6sin = taylor(f, x, 'Order', 6); % T6sin = x^5/120 - x^3/6 + x
On you build such a model you can further use optimizations such as multiplier partitioning, resource sharing and pipelining options to optimize the model for area/performance/latency/power.
  2 Comments
Gary
Gary on 17 Jul 2022 at 15:38
I managed to get 3 digits accuracy sine/cosine using chebhyshev polynomials(order 3). Thank you for sharing all the resources

Sign in to comment.

Tags

Products


Release

R2014a

Community Treasure Hunt

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

Start Hunting!