JPH0285908A - 正弦関数発生方法 - Google Patents

正弦関数発生方法

Info

Publication number
JPH0285908A
JPH0285908A JP17040288A JP17040288A JPH0285908A JP H0285908 A JPH0285908 A JP H0285908A JP 17040288 A JP17040288 A JP 17040288A JP 17040288 A JP17040288 A JP 17040288A JP H0285908 A JPH0285908 A JP H0285908A
Authority
JP
Japan
Prior art keywords
sine
values
sine value
input data
tables
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP17040288A
Other languages
English (en)
Inventor
Noboru Nakamura
昇 中村
Fumiaki Yasunaga
安永 文昭
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Panasonic Holdings Corp
Original Assignee
Matsushita Electric Industrial Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Matsushita Electric Industrial Co Ltd filed Critical Matsushita Electric Industrial Co Ltd
Priority to JP17040288A priority Critical patent/JPH0285908A/ja
Publication of JPH0285908A publication Critical patent/JPH0285908A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Complex Calculations (AREA)
  • Image Generation (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 産業上の利用分野 本発明は図形の回転・円の発生などを行う図形処理シス
テムにおいて使用される正弦関数発生方法に関するもの
である。
従来の技術 与えられた入力角度θのsinθを求める手法として、
−殻内には級数展開法とテーブル参照法がある。級数展
開法は正弦関数をべき級数に展開し、本来無限項の和で
表わされる級数を有限項で打ち切ることによって近似値
を計算する。一方、テーブル参照法は、下記第1表に示
すようにO≦θ≦90゛の範囲で一定間隔値の離散角度
値θ、に対するsinθ1をメモリ上に持つ。
く第1表〉 このstnθ、の集合をsinテーブルと呼び、θが与
えられたときに、このθに最も近いθ、に対応するsi
nθ、の値をsinθとして採用する。任意角の三角関
数はO0≦θ≦90°の範囲のsinθで表されるので
0°−904の範囲だけで十分である。
発明が解決しようとする課題 級数展開法において十分な精度を得るには、それだけ多
くの項までの和を計算しなければならず、中央処理装置
の負荷が大きい、これに対してテーブル参照法において
は、高速処理が可能であるが、精度を向上させるには角
度間隔Δθを小さくする必要があって大きなメモリ容量
を必要とする。
本発明は高速処理することができ、精度が高く、しかも
大きなメモリ容量、を必要としない正弦関数発生方法を
提供することを目的とする。
課Uを解決するための手段 本発明の正弦関数発生方法は、任意角度値を入力データ
とし、その正弦値を出力データとして求めるに際し、2
のべき乗の間隔の角度に対する正弦値を書き込んだ複数
のテーブルのうち入力データの正弦値に近い正弦値が書
き込まれた2つのテーブルのテーブル値の間を、ビット
シフトを利用して線形補間し、この線形補間によって入
力データの正弦値を出力することを特徴とする。
作用 この構成によると、2つのテーブル値の間を線形補間し
て必要な正弦値を求めるため、少ないメモリ容量でも高
精度の正弦値が得られる。しかも除算をせずにビットシ
フト演算に置き換えて計算するため、低機能の中央処理
装置であっても高速処理できる。
実施例 以下、図と数式を用い本発明の正弦関数発生方法を説明
する。
第1表において角度間隔Δθは、90゛をn等分した場
合、次式で与えられる。
Δθ = θ、+1−θ。
= (θ。−θo )/n =90/n      ・・・・・・・・・ (1)第
1図に示すようにsinθは0≦θ≦90″において単
調増加関数である。
ここで14を21 (α≧0)で表現すれば、θ0は x = 21 θ          ・・・・・・・
・・  (2)で表わされる。同様にΔθ、θ5.θ、
。、はそれぞれ Δx  = 2# Δθ    ・・・・・・・・・ 
 (3)x、    =  2’  θ1     ・
・・・・・・・・  (4)xi、、  =  2’ 
 θ、、、     ・−−−−−・−・  (5)0
≦X≦21ネ90において f (x)  =  s i n x    −(6)
も単調増加関数である。
θ、≦θ≦θ、+1    ・・・・・・・・・ (7
)を満たす“i”は xI≦θ≦Xi+飄     ・・・・・・・・・ (
8)も満たし、XをΔXで割った商で与えられる。
i  =  x div  ΔX   ・・・・・・・
・・ (9)第1図から、(X+ + Xt++ )の
区間を線形補間することにより、XをΔXで割った余り
r(×)、r(X)  =  x 1lod  ΔX=
 X−Δx*l ・・・・・・・・・ (10)を用い
て f(×)へf(X+)÷」し腎ヨユニル* r (X)
=f(xt)+Δt (x)−1旧・・(11)と近似
できる。Δf (x)は補正項である。式(9)により
iが求まれば、f(x、)、 f(χ、や、)はSin
テーブルから容易に求められる。
さらに、 Δに= 2′ (β≧0)  ・・・・・・ (12)
であれば、Xを右にβビットシフトすることにより、す
なわち i  =  (x)右βビットシフト・・・ (13)
で与えられる。
このとき、式(3)、式(12)より2’ =2’Δθ
よって、 Δθ= 21“=2r (γ=β−α)・・・・・・・
・ (14) したがって、Sinテーブルは(2’)”の間隔の角度
の正弦値を持てばよい。
また、ΔXが2のべき乗であることを利用して式(10
)のr (x)がXの最下位ビットがらβビットだけ取
り出すことにより求められる。換言すればXと2J−1
の論理積を計算すればよいことになる。つまり r(X)  = Xand  (2’−1>  =(1
5)以上のことから0≦θ≦90°のθが与えられたと
きsinθを求める問題において、本発明は、Δθ=2
′−“の角度間隔に対する正弦値からなるsinテーブ
ルを利用し、第2図のフローチャートに示すアルゴリズ
ムで示される。
本発明のアルゴリズムを具体的に適用した例を記す。使
用中央処理装置は16ビツト長を基準とし、データは全
てワード長(16ビツト)とする。
α=6.β士5.γ;β−α;−1 Δθ= 2 ’ = 2’ =0.5゜の例で、sin
θ、あるいはで(×)を16ビツト長で表現し、最上位
ビットを符号ビットとする。この表現によれば、0.5
は4000H(Hは16進数を表わす)−1は8QOO
Hとなる。このときのsinテーブルの内容を下記第2
表に示す。
く第2表〉 θ= 36.28125°のsinθを求める例を説明
する。
x=2’  *36.28125=2322=912 
Hlは第3図に示すようにXを5ビツト右シフトして1
=72と求められる。r(x)は、Xの最下位ビットか
ら5ビツトだけ収り出し、r(X)=18sinテーブ
ルから、 f(x、)=483DH,f(x7i)=4023Hと
求められるから 5inf36.28125 @) =483DH+(4
C23H−483DH)$18/32=4B3Dll 
+E6H$18/32=4830H+ (102C)右
5ビツトシフト=483DH+818 =48BEH これは約0.59174を表わしている。
発明の効果 以上のように本発明によると、2のべき乗の間隔の角度
に対する正弦値を書き込んだ複数のテーブルのうち入力
データの正弦値に近い正弦値が書き込まれた2つのテー
ブルのテーブル値の間を、線形補間して入力データの正
弦値を出力するため、メモリ容量が小さくても高精度の
正弦値を得ることができる。さらに、前記の線形補間を
、除算を行わずにビットシフト81能によって行ってい
るため、除算機能のない低機能の中央処理装置において
も、高速で処理できるものである。
【図面の簡単な説明】
第1図は、0≦θ≦90”におけるy=s i nθお
よびO≦X≦2・*90(x=2’θ)におけるf(X
)=sinxの曲線と線形補間の説明図、第2図は本発
明の正弦関数発生方法のフローチャート図、第3図は実
施例のデータのビット操作の説明図である。 代理人   森  本  義  弘 第 図 ノ’Sinθ。 f(Z) −Sinχ 奉 θシθ θシナ1 第2図

Claims (1)

    【特許請求の範囲】
  1. 1、任意角度値を入力データとし、その正弦値を出力デ
    ータとして求めるに際し、2のべき乗の間隔の角度に対
    する正弦値を書き込んだ複数のテーブルのうち入力デー
    タの正弦値に近い正弦値が書き込まれた2つのテーブル
    のテーブル値の間を、ビットシフトを利用して線形補間
    し、この線形補間によって入力データの正弦値を出力す
    る正弦関数発生方法。
JP17040288A 1988-07-07 1988-07-07 正弦関数発生方法 Pending JPH0285908A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP17040288A JPH0285908A (ja) 1988-07-07 1988-07-07 正弦関数発生方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP17040288A JPH0285908A (ja) 1988-07-07 1988-07-07 正弦関数発生方法

Publications (1)

Publication Number Publication Date
JPH0285908A true JPH0285908A (ja) 1990-03-27

Family

ID=15904263

Family Applications (1)

Application Number Title Priority Date Filing Date
JP17040288A Pending JPH0285908A (ja) 1988-07-07 1988-07-07 正弦関数発生方法

Country Status (1)

Country Link
JP (1) JPH0285908A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04246790A (ja) * 1990-09-14 1992-09-02 Hughes Aircraft Co ベクトル/円錐曲線/エリアフィルプリミティブジェネレータ
JP2015506638A (ja) * 2012-01-18 2015-03-02 クアルコム,インコーポレイテッド 高精度sin−cos波および周波数発生器、ならびに関連システムおよび方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04246790A (ja) * 1990-09-14 1992-09-02 Hughes Aircraft Co ベクトル/円錐曲線/エリアフィルプリミティブジェネレータ
JP2015506638A (ja) * 2012-01-18 2015-03-02 クアルコム,インコーポレイテッド 高精度sin−cos波および周波数発生器、ならびに関連システムおよび方法

Similar Documents

Publication Publication Date Title
US5737253A (en) Method and apparatus for direct digital frequency synthesizer
Balachandran et al. Controllability of nonlinear systems in Banach spaces: a survey
US3633018A (en) Digital division by reciprocal conversion technique
US3789203A (en) Function generation by approximation employing interative interpolation
Liu et al. Vibration analysis of beams using the generalized differential quadrature rule and domain decomposition
US5214754A (en) Method and apparatus for approximating polygonal line to curve
GB2152715A (en) Interpolated value computing device for a waveform generated in an electronic device
KR900006851A (ko) 데이타 처리에 있어서 무한 주 필드의 입력인수 역수곱 계산방법 및 장치
US4064400A (en) Device for multiplying numbers represented in a system of residual classes
US4860238A (en) Digital sine generator
KR960042420A (ko) 파라메트릭 곡선 발생 장치
JPH0285908A (ja) 正弦関数発生方法
Chavarriga et al. Isochronicity into a family of time-reversible cubic vector fields
US5146418A (en) Trigonometeric function generation for use in digital signal processing
JPS5932040A (ja) 指数関数発生器
Schoen The cardinality of restricted sumsets
US7539715B2 (en) Method and system for saturating a left shift result using a standard shifter
Eziokwu et al. On Review of the Convergence Analyses of the Runge Kutta Fixed Point Iterative Methods
KR100392370B1 (ko) 유한체내에서 다단 구조의 역수 계산 장치
JPS6331477A (ja) 正弦波pwm信号発生装置
Salzer Converting interpolation series into Chebyshev series by recurrence formulas
JPS62245434A (ja) 電子楽器の波形発生装置
JPH10508406A (ja) 低複雑性信号処理装置及びその信号処理装置を具えた受信機
Dubrovin The Euler summation of numerical series
Kane et al. Existence and Uniqueness of Solution for Semi-linear Conservation Laws with Velocity Field in L∞