Chip123 科技應用創新平台

 找回密碼
 申請會員

QQ登錄

只需一步,快速開始

Login

用FB帳號登入

搜索
1 2 3 4
查看: 19953|回復: 6
打印 上一主題 下一主題

[問題求助] 如何用verilog 產生sin cos等三角函數??

  [複製鏈接]
跳轉到指定樓層
1#
發表於 2010-4-4 22:55:34 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
我看大部分的人都說要產生sin cos等三角函數,只能靠建立table表,存入FPGA裡面的RAM來查表!
8 j$ P, k$ F. s4 E. V' m4 R請問各位大大有辦法用程式寫出三角函數嗎? 或者是有已經建立好的table表可以給小弟參考~~~~~~~感恩
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享分享 頂4 踩 分享分享
2#
發表於 2010-4-9 09:53:52 | 只看該作者
CORDIC基本方程可以表示为:
1 U2 B- I* Y/ S4 P, {xi +1 = xi - yidi2^-i  y) v; V5 B; Y. c4 x" z2 w
yi +1 = yi - xidi2^-i- O3 [# Y; w# y4 v
zi +1 = yi - ditan-i(2^-i) / g5 S& i  t. @1 G0 c* w# Y7 g1 {
其中di = -1 if zi < 0, else +1. ) ]9 d- M' b# T; G- @% K
如果用来计算三角函数可以利用初始条件:: m+ a$ u+ u/ Q$ q5 }9 e2 d
x0 = 1 / An (用来抵消迭代过程产生的增益)) R6 ~1 Q7 {0 f4 u2 u
y0 = 0
0 W1 a+ @. T1 m得到
: |; E; f5 B! `7 F: c4 d" |6 M0 mxn = cos z0  A, c: e7 Q. N  E; E/ j( }
yn = sin z0
3#
發表於 2010-4-9 09:58:19 | 只看該作者
除了傳統座標旋轉數位計算器(CORDIC)演算法之外, 角度重新編碼(Angle Recoding)演算法、修改2 A% T- K% F' R! K% @. C" V" f
之座標旋轉數位計算器(MVR-CORDIC)演算法、以及延伸基礎角度集合(EEAS)演算法! @  X  X4 |  E1 t( k) v
等都可改善所謂的向量旋轉座標旋轉數位計算器的效能
4#
發表於 2010-4-21 11:20:23 | 只看該作者
table 是ASIC最常用的方式,( E* A% a, B( u
你先把sin 切成16 or 32 等份,
+ k' `' ?' V4 U3 l/ F' r; a% q! s5 T再將其數值乘256 or 更多倍數,: C0 H' N4 p, _3 ?9 B: w5 D+ R7 H
整數部份轉成Hex 既可
5#
發表於 2011-4-20 14:09:08 | 只看該作者
我之前也都一直使用這種方式, 就是不知道有沒有其他方式可以完成一樣的事情.
6#
發表於 2011-9-14 10:09:11 | 只看該作者
Thanks a lot!!
. X$ T" b% {0 i# Q0 [5 p7 V學到東西了!!
7#
發表於 2016-5-26 23:45:33 | 只看該作者
Thanks a lot!!
2 q# {( d1 a' F9 @+ c2 o6 |% t學到東西了!!!!!!
您需要登錄後才可以回帖 登錄 | 申請會員

本版積分規則

首頁|手機版|Chip123 科技應用創新平台 |新契機國際商機整合股份有限公司

GMT+8, 2024-6-8 09:30 AM , Processed in 0.136017 second(s), 16 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回復 返回頂部 返回列表