JPH086766A - 正弦余弦演算装置 - Google Patents

正弦余弦演算装置

Info

Publication number
JPH086766A
JPH086766A JP14165294A JP14165294A JPH086766A JP H086766 A JPH086766 A JP H086766A JP 14165294 A JP14165294 A JP 14165294A JP 14165294 A JP14165294 A JP 14165294A JP H086766 A JPH086766 A JP H086766A
Authority
JP
Japan
Prior art keywords
multiplier
output
output value
mantissa
value
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
JP14165294A
Other languages
English (en)
Inventor
Kazumi Yamada
和美 山田
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 JP14165294A priority Critical patent/JPH086766A/ja
Publication of JPH086766A publication Critical patent/JPH086766A/ja
Pending legal-status Critical Current

Links

Abstract

(57)【要約】 【目的】 入力角度が大きくても高速高精度な正弦余弦
演算が可能にする。 【構成】 入力された角度の値(浮動小数点形式)の指
数部が8以上であることを判定する指数部判定装置1
と、仮数部の上位6ビットが101101以上であることを判
定する仮数部判定装置3と、両装置の出力値の論理積を
とるAND装置5と、その出力により、定数発生装置7
または0発生装置8の出力値を選択する第1の選択装置
9と、0発生装置8または乗算器第一段目の半加算器群
10で上位2〜6ビット目のキャリー出力の出力値を選
択する第2の選択装置11と、乗算器への乗数入力値ま
たは半加算器群10の加算出力値を選択し、乗算器第二
段目以降の被乗数として出力する第3の選択装置12と
から構成される。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は浮動小数点演算プロセッ
サの正弦余弦演算装置に関するものである。
【0002】
【従来の技術】従来の正弦余弦演算装置としては、一般
的に乗算器とALUで構成され、以下に示すアルゴリズ
ムで、正弦余弦を演算している。
【0003】 (1) Z=|X|・1/45=q+r q:整数、0≦r<1 (2) if COS, q=q+2 if (SIN and X<0), q=q+4 (3) qo=q mod 8 mod:剰余 qo=0 : SIN(x)=sin(r・π/4) qo=1 : SIN(x)=cos((1-r)・π/4) qo=2 : SIN(x)=cos(r・π/4) qo=3 : SIN(x)=sin((1-r)・π/4) qo=4 : SIN(x)=-sin(r・π/4) qo=5 : SIN(x)=-cos((1-r)・π/4) qo=6 : SIN(x)=-cos(r・π/4) qo=7 : SIN(x)=-sin((1-r)・π/4) (4) sin(r・π/4)=r・p(r2) p(r2)は p0=E-Fr2 p1=D-p0r2 p2=C-p1r2 p3=B-p2r2 p(r2)=A-p3r2 A,B,C,D,E,Fは定数である。
【0004】cos(r・π/4)=p(r2) p(r2)は p0=K-Lr2 p1=J-p0r2 p2=I-p1r2 p3=H-p2r2 p(r2)=G-p3r2 G,H,I,J,K,Lは定数である。
【0005】正弦余弦演算装置に入力された値Xと45
の逆数を乗算器で掛け、整数部qと小数部rに分ける
(1)。次に、ALUで、演算が余弦の場合、整数部に
2を加え、演算が正弦で、かつ入力値が負の数の場合、
整数部に4を加える(2)。そして、整数部の下位3ビ
ットから8の剰余を判定し、以後の演算を正弦で演算す
るか、余弦で演算するかを判定する(3)。その判定結
果により、正弦の近似式あるいは余弦の近似式(4)を
乗算器とALUで演算する。
【0006】
【発明が解決しようとする課題】しかしながら、上記の
ような構成では、入力値Xと45の逆数との乗算結果を
整数部qと小数部rに分ける際、下記に示すように、入
力値の増大に伴い、ハード的に有効数字に制限があるた
め、小数部の精度が劣化してしまい、最終的に正弦余弦
近似式の演算結果の誤差が増大するという問題点を有し
ていた。
【0007】100(X) ÷45= 2.2222222 1000(X) ÷45= 22.2222220 10000(X) ÷45= 222.2222200 100000(X) ÷45= 2222.2222000 1000000(X)÷45=22222.2220000 本発明は上記課題を解決するもので、浮動小数点演算プ
ロセッサにおいて、高速高精度の正弦余弦演算装置を提
供することを目的とする。
【0008】
【課題を解決するための手段】上記目的を達成するため
に、本発明の正弦余弦演算装置は入力された浮動小数点
形式データの指数がある一定条件を満たすことを判定す
る指数部判定装置と、前記浮動小数点形式データの仮数
がある一定条件を満たすことを判定する仮数部判定装置
と、前記指数部判定装置の出力値と前記仮数部判定装置
の出力値の論理積をとる論理積装置と、前記仮数がある
一定条件を満たした時、前記浮動小数点形式データから
減算する定数を発生する定数発生装置と、0データを発
生する0発生装置と、n段×mビット個(n,mは正の
整数)の半加算器で構成された乗算器と、前記論理積装
置の出力により、前記定数発生装置の出力値と前記0発
生装置の出力値を選択する第1の選択装置と、前記論理
積装置の出力により、前記乗算器の一段目の半加算器群
の上位から2ビット目以降のキャリー出力と前記0発生
装置の出力値を選択する第2の選択装置と、前記論理積
装置の出力により、前記乗算器の一段目の半加算器群の
数値出力値と前記乗算器に入力された乗数もしくは被乗
数を選択する第3の選択装置とを備えている。
【0009】
【作用】上記した構成によれば、本発明の正弦余弦演算
装置は、入力された浮動小数点形式データの指数がある
一定条件を満たし、かつ前記浮動小数点形式データの仮
数がある一定条件を満たした場合、正弦余弦演算で最初
に乗算する際、同時に入力値から定数値を減算すること
ができることになるため、正弦余弦演算を高速高精度に
行うことが可能になる。
【0010】
【実施例】図1は、本発明の一実施例における正弦余弦
演算装置を示す構成図である。図1において、1は浮動
小数点形式データで入力された角度値の指数部が8以上
であることを判定する指数部判定装置、2は指数部判定
装置1での指数部判定信号であり、指数部が8以上であ
る場合に、アクティブとなる。3は入力された浮動小数
点形式データの角度値の仮数部の上位6ビットが101101
以上であることを判定する仮数部判定装置、4は仮数部
判定装置3での仮数部判定信号であり、仮数部の上位6
ビットが101101以上である場合に、アクティブとなる。
5は指数部判定装置1の出力である指数部判定信号2と
仮数部判定装置3の出力である仮数部判定信号4の論理
積をとる論理積装置(以下、AND装置と記す)、6は
AND装置5の出力であるセレクタ制御信号、7は6ビ
ットの定数010011を発生する定数発生装置、8は0デー
タを発生する0発生装置である。9はAND装置5の出
力であるセレクタ制御信号がアサートされたら(アクテ
ィブ)、定数発生装置7の出力を選択し、それ以外は0
発生装置8の出力を選択する第1の選択装置、10は乗
算器の第一段目の半加算器群、11はAND装置5の出
力であるセレクタ制御信号がアサートされたら、乗算器
一段目の半加算器群10の上位2〜6ビット目のキャリ
ー出力(CO)を選択し、それ以外は0発生装置8の出
力を選択する第2の選択装置、12はAND装置5の出
力であるセレクタ制御信号がアサートされたら、乗算器
一段目の半加算器群10の加算出力値(SO)を選択
し、それ以外は乗算器に入力された被乗数13を選択
し、乗算器二段目以降の被乗数とする第3の選択装置、
14は乗算器の第二段目の半加算器群、15は乗算器各
段の乗数16と被乗数13の積をとる乗算装置である。
ここで、半加算器群はn段×mビット個(n,mは正の
整数)で構成されるが、第三段目以降の半加算器群の記
載は省略する。
【0011】上記構成における正弦余弦演算装置につい
て、その動作を説明する。正弦余弦演算の初めに行なわ
れる45の逆数との乗算において、浮動小数点形式で入
力された角度値の指数部の値が8以上か否かを指数部判
定装置1で判定し、指数部判定信号2を出力し、指数部
が8以上である場合に、アクティブとなる。また、仮数
部の値の上位6ビットが101101(この数値は360*2のべ
き乗の仮数部値)以上か否かを仮数部判定装置3で判定
し、仮数部判定信号4を出力し、仮数部の上位6ビット
が101101以上である場合に、アクティブとなる。そし
て、AND装置5は指数部判定信号2と仮数部判定信号
4がともにアクティブなら、セレクタ制御信号6をアサ
ートする。
【0012】セレクタ制御信号6がアサートされたら、
第1の選択装置9は定数発生装置7が出力する値010011
(この数値は仮数部判定装置3が判定する101101の2の
補数)を選択し、乗算器一段目の上位6ビットの半加算
器10の入力(SI)に出力し、第2の選択装置11は
乗算器一段目の上位2〜6ビットの半加算器10のキャ
リー出力(CO)を選択し、乗算器一段目の上位5ビッ
トの半加算器10の入力(CI)に出力する。さらに、
第3の選択装置12は乗算器一段目の加算出力値(S
O)を選択し、乗算器二段目以降の被乗数として、乗算
器二段目以降の乗算装置15に出力する。
【0013】このような制御を行なうと、乗算器におい
て、入力角度と45の逆数を演算する際に、乗算器の第
一段目の半加算器群で、入力角度から360*2のべき乗値
を減算してから45の逆数との乗算が可能になり、入力
角度が大きな数値でも性能の劣化なく誤差の少ない正弦
余弦演算が可能になる。
【0014】
【発明の効果】本発明の正弦余弦演算装置によれば、入
力された浮動小数点形式データがある一定条件を満たし
たとき、正弦余弦演算で最初に乗算する際、同時に入力
値から定数値を減算してから乗算が可能なため、性能の
劣化がなく、誤差の少ない高速高精度な正弦余弦演算を
実現できる。
【図面の簡単な説明】
【図1】本発明の一実施における正弦余弦演算装置の構
成図
【符号の説明】
1 指数部判定装置 2 指数部判定信号 3 仮数部判定装置 4 仮数部判定信号 5 AND装置 6 セレクタ制御信号 7 定数発生装置 8 0発生装置 9 第1の選択装置 10 乗算器一段目の半加算器 11 第2の選択装置 12 第3の選択装置 13 被乗数 14 乗算器二段目の半加算器 15 乗算装置 16 乗数

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】 入力された浮動小数点形式データの指数
    がある一定条件を満たすことを判定する指数部判定装置
    と、前記浮動小数点形式データの仮数がある一定条件を
    満たすことを判定する仮数部判定装置と、前記指数部判
    定装置の出力値と前記仮数部判定装置の出力値の論理積
    をとる論理積装置と、前記仮数がある一定条件を満たし
    た時、前記浮動小数点形式データから減算する定数を発
    生する定数発生装置と、0データを発生する0発生装置
    と、n段×mビット個(n,mは正の整数)の半加算器
    で構成された乗算器と、前記論理積装置の出力により、
    前記定数発生装置の出力値と前記0発生装置の出力値を
    選択する第1の選択装置と、前記論理積装置の出力によ
    り、前記乗算器の一段目の半加算器群の上位から2ビッ
    ト目以降のキャリー出力と前記0発生装置の出力値を選
    択する第2の選択装置と、前記論理積装置の出力によ
    り、前記乗算器の一段目の半加算器群の数値出力値と前
    記乗算器に入力された乗数もしくは被乗数を選択する第
    3の選択装置とを備えたことを特徴とする正弦余弦演算
    装置。
JP14165294A 1994-06-23 1994-06-23 正弦余弦演算装置 Pending JPH086766A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP14165294A JPH086766A (ja) 1994-06-23 1994-06-23 正弦余弦演算装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP14165294A JPH086766A (ja) 1994-06-23 1994-06-23 正弦余弦演算装置

Publications (1)

Publication Number Publication Date
JPH086766A true JPH086766A (ja) 1996-01-12

Family

ID=15297032

Family Applications (1)

Application Number Title Priority Date Filing Date
JP14165294A Pending JPH086766A (ja) 1994-06-23 1994-06-23 正弦余弦演算装置

Country Status (1)

Country Link
JP (1) JPH086766A (ja)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2011109427A2 (en) 2010-03-01 2011-09-09 Alnylam Pharmaceuticals, Inc. Improving the biological activity of sirna through modulation of its thermodynamic profile
WO2016057693A1 (en) 2014-10-10 2016-04-14 Alnylam Pharmaceuticals, Inc. Methods and compositions for inhalation delivery of conjugated oligonucleotide
JP2017199370A (ja) * 2016-04-28 2017-11-02 ビバンテ コーポレーション 4入力内積回路を用いる三角関数の計算
EP3450559A1 (en) 2003-03-07 2019-03-06 Alnylam Pharmaceuticals, Inc. Therapeutic compositions
EP3604533A1 (en) 2008-04-11 2020-02-05 Arbutus Biopharma Corporation Site-specific delivery of nucleic acids by combining targeting ligands with endosomolytic components
EP3705125A1 (en) 2007-12-04 2020-09-09 Alnylam Pharmaceuticals, Inc. Carbohydrate conjugates as delivery agents for oligonucleotides

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3450559A1 (en) 2003-03-07 2019-03-06 Alnylam Pharmaceuticals, Inc. Therapeutic compositions
EP3705125A1 (en) 2007-12-04 2020-09-09 Alnylam Pharmaceuticals, Inc. Carbohydrate conjugates as delivery agents for oligonucleotides
EP4223299A2 (en) 2007-12-04 2023-08-09 Alnylam Pharmaceuticals, Inc. Carbohydrate conjugates as delivery agents for oligonucleotides
EP3604533A1 (en) 2008-04-11 2020-02-05 Arbutus Biopharma Corporation Site-specific delivery of nucleic acids by combining targeting ligands with endosomolytic components
WO2011109427A2 (en) 2010-03-01 2011-09-09 Alnylam Pharmaceuticals, Inc. Improving the biological activity of sirna through modulation of its thermodynamic profile
WO2016057693A1 (en) 2014-10-10 2016-04-14 Alnylam Pharmaceuticals, Inc. Methods and compositions for inhalation delivery of conjugated oligonucleotide
JP2017199370A (ja) * 2016-04-28 2017-11-02 ビバンテ コーポレーション 4入力内積回路を用いる三角関数の計算

Similar Documents

Publication Publication Date Title
US7395304B2 (en) Method and apparatus for performing single-cycle addition or subtraction and comparison in redundant form arithmetic
EP0351242B1 (en) Floating point arithmetic units
JP2835153B2 (ja) 高基数除算器
US7921149B2 (en) Division and square root arithmetic unit
JPH02196328A (ja) 浮動小数点演算装置
JP2002108606A (ja) スティッキービット生成回路及び乗算器
JPH09269891A (ja) 部分積加算方法および装置、浮動小数点乗算方法および装置、浮動小数点積和演算方法および装置
US20110231468A1 (en) High-radix multiplier-divider
US5260889A (en) Computation of sticky-bit in parallel with partial products in a floating point multiplier unit
KR20020063058A (ko) 덧셈 및 반올림 연산을 동시에 수행하는 부동 소수점alu 연산 장치
JP2693800B2 (ja) 浮動小数点データ総和演算回路
JPH086766A (ja) 正弦余弦演算装置
JP2511527B2 (ja) 浮動小数点演算器
US20090006509A1 (en) High-radix multiplier-divider
JP2872263B2 (ja) 高速演算器における丸め回路
JPH05204602A (ja) 制御信号の方法と装置
JP2578482B2 (ja) 浮動小数点演算器
JP2645422B2 (ja) 浮動小数点演算処理装置
JP2003084969A (ja) 浮動小数点剰余演算器、情報処理装置及びコンピュータプログラム
JP2003216419A (ja) 計算装置及び計算方法
CN109298848A (zh) 双模式浮点除法平方根的电路
JP2710412B2 (ja) 乗除算回路
KR20010067226A (ko) 인터폴레이션 방법 및 장치
JP2771178B2 (ja) 除算回路
JP2000010763A (ja) 除算回路