Chip123 科技應用創新平台
標題:
如何用verilog 產生sin cos等三角函數??
[打印本頁]
作者:
j7003tim
時間:
2010-4-4 10:55 PM
標題:
如何用verilog 產生sin cos等三角函數??
我看大部分的人都說要產生sin cos等三角函數,只能靠建立table表,存入FPGA裡面的RAM來查表!
1 F& k" j/ f [9 E" e
請問各位大大有辦法用程式寫出三角函數嗎? 或者是有已經建立好的table表可以給小弟參考~~~~~~~感恩
作者:
masonchung
時間:
2010-4-9 09:53 AM
CORDIC基本方程可以表示为:
8 p. h: [) K5 @2 ]/ t3 B0 ~
xi +1 = xi - yidi2^-i
; o; r& [! Y! T+ B
yi +1 = yi - xidi2^-i
6 g* j: V+ F L3 h
zi +1 = yi - ditan-i(2^-i)
# r6 M: s3 g; t u5 @
其中di = -1 if zi < 0, else +1.
+ z6 ~ v0 \% ?# ~! b! a
如果用来计算三角函数可以利用初始条件:
% R/ Q# [9 l2 Y0 {; F9 v+ V
x0 = 1 / An (用来抵消迭代过程产生的增益)
3 a/ h+ G: s9 H# n$ T2 \8 _
y0 = 0
# a7 q4 o/ @: ^8 G/ }5 Y
得到
) j& h* i a: @4 ^8 D# ?' g. v2 \6 \
xn = cos z0
' S* H; f7 S2 j6 x; E
yn = sin z0
作者:
masonchung
時間:
2010-4-9 09:58 AM
除了傳統座標旋轉數位計算器(CORDIC)演算法之外, 角度重新編碼(Angle Recoding)演算法、修改
% H) n8 |1 m8 }5 F3 L
之座標旋轉數位計算器(MVR-CORDIC)演算法、以及延伸基礎角度集合(EEAS)演算法
! V M; f6 r u) }. Q( Q5 `! k
等都可改善所謂的向量旋轉座標旋轉數位計算器的效能
作者:
andyctl
時間:
2010-4-21 11:20 AM
table 是ASIC最常用的方式,
' G9 l/ v0 o( B$ i9 J- {/ Y S
你先把sin 切成16 or 32 等份,
( F- h, u& \% t
再將其數值乘256 or 更多倍數,
9 h) ~4 E- T P
整數部份轉成Hex 既可
作者:
fufu1119
時間:
2011-4-20 02:09 PM
我之前也都一直使用這種方式, 就是不知道有沒有其他方式可以完成一樣的事情.
作者:
alfred99
時間:
2011-9-14 10:09 AM
Thanks a lot!!
$ v9 ~3 `' D- g( ^
學到東西了!!
作者:
JaxChang@FB
時間:
2016-5-26 11:45 PM
Thanks a lot!!
+ D3 ?- j5 Q# ^$ M7 Z
學到東西了!!!!!!
歡迎光臨 Chip123 科技應用創新平台 (http://chip123.com/)
Powered by Discuz! X3.2