Loading [MathJax]/jax/output/HTML-CSS/jax.js

第18回LSIデザインコンテスト・イン沖縄  設計仕様書 - 4-5

4-5.値の出力例

CORDIC法を用いてsinθcosθを求めていく際にどのように近づいているかをsin45°cos45°を例に確認する.

まず値が近づいていくことを確認するためにsin45°cos45°の真値を示す.表示としては,10進の浮動小数点と 2進の固定小数点で表している.


また,これらの値の出力結果についてはCプログラムで出力した結果であり,検証環境はMicrosoft VisualStudio2010である.

表1:sin45°cos45°の真値

Graph 1

では続いて,CORDIC法によって求めたsin45°cos45°の値を表2に示す.

表2:CORDIC法によるsin45°cos45°

Graph 1

表2よりループ回数を増やすことにより表1の真値へ近づいていく様子がみられる. このときループ回数ごとに真値とCORDIC法の計算値との差をとったものを表3に示す.

表3:真値とCORDIC法の計算値との差

Graph 1

表3において固定小数点であらわしたものについてみていくと,赤で表示した箇所において 減算によって得られたCORDIC法の精度を示している.多少の誤差が存在するもののほぼループ回数ごとの精度が得られている. ただし,得られた結果については実行環境に依存するため結果はあくまで一例である.

CORDICにおいてどのように演算が進んでいくかを表したものを表4に示す.


表4:CORDIC法によるθ=45°の計算過程

Graph 4

表4よりzの判定をもとに繰り返し演算が行われ,角度θへ徐々に近づいていることが見て取れる.またこの時のz判定は1つ前の演算で得られた zに対しての判定である.

<<Back                 Next>>