JPH04294421A - ディジタル関数計算装置 - Google Patents

ディジタル関数計算装置

Info

Publication number
JPH04294421A
JPH04294421A JP5873591A JP5873591A JPH04294421A JP H04294421 A JPH04294421 A JP H04294421A JP 5873591 A JP5873591 A JP 5873591A JP 5873591 A JP5873591 A JP 5873591A JP H04294421 A JPH04294421 A JP H04294421A
Authority
JP
Japan
Prior art keywords
arithmetic
calculation
sequence
register
digital function
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
JP5873591A
Other languages
English (en)
Inventor
Yutaka Mikuriya
御厨 豊
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.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Corp
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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP5873591A priority Critical patent/JPH04294421A/ja
Publication of JPH04294421A publication Critical patent/JPH04294421A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Complex Calculations (AREA)

Abstract

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

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】この発明は、ベクトルの回転を利
用して初等関数値を計算をするCORDIC法を実現し
たディジタル関数計算装置に関するものである。
【0002】
【従来の技術】初めに座標変換の演算手法であるCOR
DICについて簡単に説明する。
【0003】X−Y座標上においた点Pの直交座標を(
x,y)また極座標上においた点Pの極座標を(R,θ
)としたときに、式(1)〜式(4)が成り立つ。
【0004】
【数1】
【0005】したがって、cosθ,sinθを求める
には、極座標が与えられているときに、何らかの方法で
直交座標を求めなければならない。また、arctan
(y/x)を求めるには、直交座標が与えられていると
きに、何らかの方法で極座標を求めなければならない。 CORDIC法は、ベクトルの回転を利用してこれを行
なう方法である。
【0006】ここでベクトルの回転について考える。図
3に示したように、直交座標(xi,yi)、極座標(
Ri ,θi )の点Pi 及び、直交座標(xi+1
 ,yi+1)、極座標(Ri+1 ,θi+1 )の
点Pi+1 をそれぞれおくと、式(5)〜式(10)
の様に表すことができる。
【0007】
【数2】
【0008】ただし、δi 及びKi は式(9),式
(10)とする。
【0009】
【数3】
【0010】したがって、Pi+1 の直交座標は、式
(1),式(2)より式(11)〜式(13)のように
なる。ただし、Z軸は、X−Y軸に直交する軸とする。
【0011】
【数4】
【0012】このようにして、同様の回転をi=0から
n回繰り返し行うと、Pn は式(14)〜式(18)
のようになる。
【0013】
【数5】
【0014】ただし、K,αは式(19),式(20)
の通りである。
【0015】
【数6】
【0016】ここで、δ=2−iとするとαi は式(
21)のようになる。
【0017】
【数7】
【0018】したがって、回転を繰り返し行なうとαi
 は減少していき無限に0に近づくので、式(11)〜
式(13)は収束することがわかる。このことから、α
i の回転方向が時計回りのとき式(22)〜式(24
)のようになる。
【0019】
【数8】
【0020】また、αi の回転方向が反時計回りのと
き式(25)〜式(27)のようになる。
【0021】
【数9】
【0022】このようにして、時計回り及び、反時計回
りの回転を繰り返し行なうことにより、式(16)〜式
(18)の結果を求めることができる。
【0023】CORDIC法は、ベクトルモードと回転
モードの2つの計算モードがある。ベクトルモードは、
z0 =0にしておいて、yn を0に近づけるように
式(22)〜式(27)に示した回転を繰り返す計算モ
ードである。こうして、yn =0となると、xn ,
zn は式(28),式(29)のようになる。
【0024】
【数10】
【0025】このことから、ある種の平方根や逆正接が
求められたことになる。回転モードは、z0 を適当に
設定しておき、zn を0に近づけるように式(22)
〜式(27)に示した回転を繰り返す計算モードである
。こうして、zn =0になると、xn ,yn は式
(30),式(31)のようになる。
【0026】
【数11】
【0027】このことから、角度z0 の正弦及び余弦
が計算できる。
【0028】図4は、従来のディジタル関数計算装置の
構成を示す図である。図において、1はCORDICの
演算部、2はこの演算部の制御部、3は一連の演算を制
御するためのシーケンス・コントローラ、4はこのシー
ケンス・コントローラに計算モード等を指定するための
制御バス、5〜7は各々前記ベクトルの回転におけるX
i+1 ,Yi+1 ,Zi+1 の値を計算する算術
演算ユニット(Arithmetic  Logic 
 Unit:以降ALUと略す。)、8〜10はそれぞ
れXi ,Yi ,Zi を保持しておくためのレジス
タ、11,12は2−i・Xi ,2−i・Yi を求
めるためのシフト・レジスタ、13はarctan2−
iを格納した記憶素子、14〜16は上記レジスタ8〜
12の入力元を選択するセレクト回路,Xo,Y0 ,
Z0 は演算初期値である。
【0029】従来のディジタル関数計算装置は上記のよ
うに構成され、最初に演算初期値X0 ,Y0 ,Z0
 をセレクト回路14〜16を介してレジスタ8〜10
に設定する。制御バス4によって制御部2に計算モード
を設定して、演算開始の指示をするとコントローラ3は
演算終了までの一連の動作の制御を開始する。起動を受
けた演算部1は、i=0の回転を行うためALU5はレ
ジスタ8とシフト・レジスタ12の値を、ALU6はレ
ジスタ9とシフト・レジスタ11の値を、ALU7はレ
ジスタ10と記憶素子13に格納してあるarctan
20 の値を式(22)〜式(27)にしたがって加減
算を行う。したがって、レジスタ10の値が負の場合は
式(22)〜式(24)の演算を適用し、レジスタ10
の値が負以外の場合は式(25)〜式(27)の演算を
適用する。このようにして得た計算結果X1 ,Y1 
,Z1 は、セレクタ14〜16を介してX1 はレジ
スタ8とシフト・レジスタ11に、Y1 はレジスタ9
とシフト・レジスタ12に、Z1 はレジスタ10にそ
れぞれ取り込まれる。そして、シフト・レジスタ11,
12が取り込んだデータは、それぞれ1ビット下方にシ
フトして、2−1・X1 ,2−1・Y1を得る。次に
i=1の回転をするため、ALU5はレジスタ8とシフ
ト・レジスタ12の値を、ALU6はレジスタ9とシフ
ト・レジスタ11の値を、ALU7はレジスタ10と記
憶素子13に格納してあるarctan2−1の値を、
レジスタ10の符号にしたがって上記と同様に加減算す
る。このようにして、i=nの回転ではシフト・レジス
タ11,12の下方シフトはnとなり、記憶素子13か
ら読み出す値がarctan2−nとなる以外は、上記
のベクトルの回転を、データXo,Y0 ,Z0 の桁
数と同数回繰り返す。ベクトルの回転が終わると、レジ
スタ8には式(16)のXn が、レジスタ9には式(
17)のyn が、レジスタ10には式(18)のzn
 がそれぞれ格納されている。
【0030】
【発明が解決しようとする課題】従来のCORDIC法
を用いたディジタル関数計算装置は以上のように構成さ
れていたため、演算シーケンスが固定となり、ベクトル
の回転数は必ずデータの桁数と同数回行なっていた。こ
のため、高い演算精度を必要とせず、高速に演算処理し
たい場合があっても、ハードウェアの構成上、演算シー
ケンスを変更できないという問題があった。
【0031】この発明は、上記のような課題を解消する
ためになされたものであり、ハードウェア構成の変更を
必要としないで、演算シーケンスを容易に変更できるデ
ィジタル関数計算装置を得ることを目的としている。
【0032】
【課題を解決するための手段】この発明に係るディジタ
ル関数計算装置は、外部より書き替え可能な、演算シー
ケンス保持用の不揮発記憶装置を演算制御部に用いるこ
とにより、演算シーケンスをプログラマブルに変更でき
るようにしたものである。
【0033】また、上記不揮発記憶装置に複数の演算シ
ーケンスを格納し、このうち1つの演算シーケンスを指
定するためのレジスタを演算制御部に用いたものである
【0034】
【作用】この発明におけるディジタル関数計算装置は、
演算シーケンスを格納した不揮発記憶装置の内容をプロ
グラマブルに変更できるので、ベクトルの回転数を減ら
すことにより演算時間を短縮できる。
【0035】また、演算シーケンス指定用レジスタの内
容を変更することにより瞬時に演算シーケンスを変更で
きるので、ディジタル関数計算装置を使用するシステム
は、一連の処理のなかで任意に演算シーケンスを選択す
ることができる。
【0036】
【実施例】実施例1 図1は、この発明の一実施例を示す、ディジタル関数計
算装置の構成図である。図において、1,4〜16,X
0 ,Y0 ,Z0 は図4と同じであり、17は演算
部1の制御部、19は演算シーケンスを格納した不揮発
記憶装置、18は不揮発記憶装置19を制御するための
コントローラa、20は不揮発記憶装置19が出力する
演算シーケンスを解読し、演算部1を制御するためのコ
ントローラb、22は制御部17と外部装置を接続する
メモリバス、22は不揮発記憶装置19に格納された演
算シーケンスを外部装置よりメモリバス22を介して変
更するためのメモリバス・インタフェース回路である。
【0037】以上のように構成されたディジタル関数計
算装置においては、不揮発記憶装置19に格納した演算
シーケンスの内容を外部装置よりメモリバス22を介し
て容易に変更することができる。したがって、演算速度
を早めたい場合は、外部装置と制御部17のインタフェ
ースにより、ハードウェアを変更することなく演算シー
ケンスを変更できる。
【0038】実施例2 図2は上記実施例1のコントローラa18に演算シーケ
ンス選択用のレジスタ23を取り付けたものであり、不
揮発記憶装置19に複数の演算シーケンスを格納してお
き、制御バス4を介してレジスタ23に希望する演算シ
ーケンスを設定するものである。したがって、不揮発記
憶装置19にはベクトルの回転を減らした精度は下がる
が処理速度の速い演算シーケンスから、ベクトルの回転
数を減らさない処理速度が下がるが精度の高い演算シー
ケンスまで数段階に分けて準備することができるので、
本装置を使用するシステムは、一連の処理条件に合わせ
てレジスタ22を設定することにより、いつでも演算シ
ーケンスを変更できる。
【0039】
【発明の効果】以上のように、この発明によれば、CO
RDIC法を用いたnビットのディジタル関数計算装置
において、演算データのビット数nをプログラマブルに
可変にしたことから、ベクトルの回転数を制御できるの
で、必要に応じて演算時間を短縮できる。
【0040】また、演算シーケンスをプログラマブルに
設定できることから、あらゆるシステムへの流用が可能
となる。
【図面の簡単な説明】
【図1】この発明の実施例1を示すディジタル関数計算
装置の構成図である。
【図2】この発明の実施例2を示すディジタル関数計算
装置の構成図である。
【図3】CORDIC法におけるベクトルの回転を示す
図である。
【図4】従来のディジタル関数計算装置の構成図である
【符号の説明】
1  演算部 18  コントローラa 19  不揮発記憶装置 20  コントローラb 21  メモリバス・インタフェース回路22  メモ
リバス 23  レジスタ

Claims (2)

    【特許請求の範囲】
  1. 【請求項1】  座標変換のアルゴリズムにCORDI
    C(COordinateRotation  DIg
    ital  Computer)を用いたディジタル関
    数計算装置において、CORDIC法による演算を行な
    うための演算部と、演算シーケンスを与えられた電気的
    に書換え可能な不揮発記憶装置と、不揮発記憶装置を制
    御するコントローラaと不揮発記憶装置が出力する演算
    シーケンスに従って上記演算部を制御するコントローラ
    bと、外部装置とインタフェースをとるためのメモリバ
    ス・インタフェース回路を備えたことを特徴とするディ
    ジタル関数計算装置。
  2. 【請求項2】  コントローラaに演算シーケンス選択
    用のレジスタを取り付けたことを特徴とする請求項1記
    載のディジタル関数計算装置。
JP5873591A 1991-03-22 1991-03-22 ディジタル関数計算装置 Pending JPH04294421A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP5873591A JPH04294421A (ja) 1991-03-22 1991-03-22 ディジタル関数計算装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP5873591A JPH04294421A (ja) 1991-03-22 1991-03-22 ディジタル関数計算装置

Publications (1)

Publication Number Publication Date
JPH04294421A true JPH04294421A (ja) 1992-10-19

Family

ID=13092771

Family Applications (1)

Application Number Title Priority Date Filing Date
JP5873591A Pending JPH04294421A (ja) 1991-03-22 1991-03-22 ディジタル関数計算装置

Country Status (1)

Country Link
JP (1) JPH04294421A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7437398B2 (en) * 2004-07-30 2008-10-14 Intel Corporation Pattern matching architecture

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7437398B2 (en) * 2004-07-30 2008-10-14 Intel Corporation Pattern matching architecture

Similar Documents

Publication Publication Date Title
US5214754A (en) Method and apparatus for approximating polygonal line to curve
US4945505A (en) Cordic apparatus and method for approximating the magnitude and phase of a complex number
US4583199A (en) Apparatus for aligning and packing a first operand into a second operand of a different character size
KR920003479B1 (ko) 곡선의 절선근사방법 및 장치
JPH04294421A (ja) ディジタル関数計算装置
US3280314A (en) Digital circuitry for determining a binary square root
US3939330A (en) Vector conversion system
JPH10283340A (ja) 演算プロセッサ
JPH0775019B2 (ja) 複素数の大きさの近似値を決定する装置およびその方法
JPH0363092B2 (ja)
US4941116A (en) Elliptical arc generator for display systems
JPS60501186A (ja) 2進デジタルプロセッサ
US4323978A (en) Arithmetic element based on the DDA principle
JP2538645B2 (ja) 曲線の折線近似装置
JPH0585924B2 (ja)
JPH1063500A (ja) 信号処理装置
US20210117501A1 (en) System and method for performing vector rotation
US6470369B1 (en) Euclid mutual division arithmetic circuit and processing circuit
JP7078129B2 (ja) 演算処理装置及び演算処理装置の制御方法
JPH03149619A (ja) ディジタル関数計算装置
SU429425A1 (ru) ВЫЧИСЛИТЕЛЬНОЕ УСТРОЙСТВО:,'-1-'''''Жt n^J-ЛП.»^-'-"'*'*''*'*
JPH07209017A (ja) 信号評価装置
KR930004215B1 (ko) 디지탈하드웨어장치 및 디지탈데이터처리 방법
CN113901392A (zh) 一种用于神经网络数据流计算架构的1d向量计算单元
JPH11143687A (ja) 函数計算装置、逆函数計算装置及びそのような装置を実現するプログラムを格納した記憶媒体