JPS61262926A - 演算回路 - Google Patents

演算回路

Info

Publication number
JPS61262926A
JPS61262926A JP60105534A JP10553485A JPS61262926A JP S61262926 A JPS61262926 A JP S61262926A JP 60105534 A JP60105534 A JP 60105534A JP 10553485 A JP10553485 A JP 10553485A JP S61262926 A JPS61262926 A JP S61262926A
Authority
JP
Japan
Prior art keywords
overflow
output
shifter
register
arithmetic
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.)
Granted
Application number
JP60105534A
Other languages
English (en)
Other versions
JPH065505B2 (ja
Inventor
Takao Nishitani
隆夫 西谷
Yuichi Kawakami
雄一 川上
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.)
NEC Corp
Original Assignee
NEC 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 NEC Corp filed Critical NEC Corp
Priority to JP60105534A priority Critical patent/JPH065505B2/ja
Priority to DE8686106742T priority patent/DE3677051D1/de
Priority to EP86106742A priority patent/EP0202633B1/en
Priority to CA000509343A priority patent/CA1244955A/en
Priority to US06/864,268 priority patent/US4811268A/en
Publication of JPS61262926A publication Critical patent/JPS61262926A/ja
Publication of JPH065505B2 publication Critical patent/JPH065505B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Landscapes

  • Complex Calculations (AREA)

Abstract

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

Description

【発明の詳細な説明】 (産業上の利用分野) 本発明はディジタル信号処理用演算回路、特に、固定小
数点演算を行なうシグナルプロセッサの演算回路に関す
る。
(従来技術とその問題点) ディジタル信号処理の利点はアナログ技術では実現でき
ない様な高精度もしくは高安定性の保証されたフィルタ
や変復調装置が実現できること、さらに、アナログ信号
処理では考えられなかった時変適応フィルタ等が容易に
実現できることなどが挙げられる。さうに詳しいディジ
タル信号処理の利点等については電子通信学会誌198
2年12月号の1280頁より1284頁を参照された
い。
この様に多くの利点を有するディジタル信号処理も、ハ
ードウェアサイズ及び消費電力の点てはアナログ技術に
劣ることが多く、ディジタル信号処理が実用に供される
様になって来たのは、急速に発展して来たディジタルL
SI回路が利用できる様になったごく最近のことであり
、特にシグナルプロセッサと呼ばれるディジタル信号処
理用マイクロプロセッサが実現して米でからである。
この様なシグナルプロセッサは、ハードウェア規模を糸
さくしつつ、アナログ回路で実現する微分、積分演算を
ディジタル領域で実現せねばならないために高速算術演
算能力が要求され、いわゆる汎用コンピュータや汎用マ
イクロプロセッサとは異なった発展を遂げている。詳し
くは情報処理学会誌昭和58年7月号の862頁より8
69頁に譲り、、以下現状のシグナルプロセッサの特徴
について述べる。
シグナルプロセッサでは高速算術演算能力を小さなハー
ドウェアで実現するために、数値表現は原則として固定
小数点表示で、かつ2の補数表現を用いることが多い。
また、シグナルプロセッサで扱う対象はA/D変換され
たアナログ信号であり、A/D変換器の許容最大振幅を
基準にしてディジタル表現を表わすのが便利であるため
最大振幅値を1゜0とする。つまり、2の補数表現で固
定小数点の位置を示すと、最上位ビットと次のビットの
間に固定小数点を置き、−1から+1までの数値として
扱う。
この様な形式を用いる場合の乗算回路の入出力形式とし
てはアイイーイーイージャーナルオブソリッドステート
サーキッッ(IEEE Journal of 5ol
idState C1rcuits)第5C−16巻4
号(1981年8月)の372頁より376頁に掲載さ
れたシグナルプロセッサの第2図に示した様に、Nビッ
ト2の補数表現固定小数点データ間の積は2N−1ピツ
I・で得られ、固定小数点位置は依然として最−に1位
ビットと次のビットの間にある形式を用いるのが一般的
である。このため、乗算器出力は信号データと同じ形式
になる様に上位Nビットを取り出せば、信号のダイナミ
ックレンジを一定に保てる。
一方、FIRフィルタ等の演算では、時刻jの入力信号
、出力信号を各々Xj+ yjとすると、X=Σa、x
、 、      (11J  1=(l I J−″ という演算が行なわれる。係、数(aL)はフィルタの
特性を決定するものであり、X、が−1から+1の範囲
の値であれば平均的にy、も−1から+1の範囲内の値
となる様に係数は定められる。しかしながら、係数al
の値は必ずしも−1から+1の範囲に限られる訳ではな
く、このためy、の計算途中結果では−1から+1の範
囲に納まらないこともしばしばである。
従来の方法でこの様なFIRフィルタを実現する方法で
は、係数(al)を−1から+1までの乗算器に入力で
きる範囲の値とするため、係数(町)の各々に係数の絶
体値の最大値より大きい2の巾乗数を選んで、この値で
割り算を行なった係数(bl)を用いる。
つまり、 b−02−k        (2) とし、式(1)は次の様にして求める。
y −’5” a、、x i−0″′−” =2にΣ(a、2−&)x i=o    ’−’ == 2に一Σb、x、 、     (31i=0”
−″ 式(3)より、b、とX、−1を乗算し、累算l−た後
2に倍することでyを求めていた。固定小数点演算で式
(3)を実現するとbl及びX、−7はいずれも−1よ
り+1までの値であるからす、x、−μよ−1より+1
までの値となり、前述した固定乗算器が利用できる。し
カル、bl”j−4をN項加算する場合、計算の途中結
果及び計算結果は−1から+1までの範囲にはない可能
性がある。しがし、この場合でも、単精度加算器を用い
ているシグナルプロセッサなどでは加算毎にオーバーフ
ローが発生した時に最大値に置換するハードウェアを設
けるか、この様なオーバーフローの発生は無視し、計算
ノイズとして扱うことが常であった。
また、FIRフィルタを実現している限りは、この様な
オーバーフローはシステムを不安定にすることはないが
、IIRフィルタの様に演算結果をフィードバックして
用いるシステムではオーバーフローの問題はシステムの
不安定にもつながり、演算速度を犠牲にしてでもオーバ
ーフロー発生時には値を最大値に置換する必要がある。
以上の様に従来技術による演算方式では計算の途中結果
のオーバーフローを無視するか、1加算のオーバーフロ
ー発生毎に最大値に置換していたため、計算途中結果の
数値の取りつる範囲を充分大きくしてオーバーフローが
発生l−ないようにした場合には出力信号yは正規の−
1より+1の範囲の数値になる様な場合でも、小規模な
回路で実現しようとするとオーバーフローの無視、ある
いはオーバーフローした数値の最大値での修正が多発し
、出力値y、は大きな誤差を含んでいることもしばしば
であった。
(発明の目的) 本発明の目的は出力値y、の計算精度を向」ニさせうる
シグナルプロセッサ用演算回路を提供することにある。
(発明の構成) 本発明は2組の単精度ピッI・数のデータを入力とし倍
精度ビット数の積を出力する固定小数点乗算器と、前記
固定小数点乗算器出力を少くとも下位方向に複数ビット
シフトを行なえる倍精度ピッI・数のバレルシフタと、
前記バレルシフタの出力と後述するレジスタの内容に対
し算術論理演算を行なう倍精度ビット数のALUと、前
記AI、Uの出力に対し、少くとも上位方向にビットシ
フトを行なえる倍精度ビット数のシフタと、前記ALU
もしくは前記シフタにより出力データがオーバーフロー
を発生したことを検出するオーバーフロー検出回路と、
前記オーバーフロー検出回路により制御され、オーバー
フロー検出時には前記シフタ出力をオーバーフロー方向
の最大値に置換するオー共−フロー訂正器と、前記オー
バーフロー訂正器出力を蓄える倍精度ビット数のレジス
タと、前記レジスタの少くとも上位qL精度ビット数の
データを出力する出力端子とから少くとも構成されてい
る。
(本発明の原理) 本発明の原理は固定小数点乗算器出力が倍精度ピッI・
長であること、よって、倍精度ビット長乗算結果を小数
点位置とともに下位方向にビットシフトしても、シフト
した結果をシフト前のビット数で表現しても、ビットシ
フトにより切り捨てられるデータによっても倍精度ビッ
ト長で表現されたデータに対しては精度不足を起こさな
いこと、小数点位置を下位ビット方向に移動させたため
、累算時のダイナミックレンジは−1より+1という従
来の範囲より大幅に拡大されること、累算結果は平均的
に−1から+1の従来の範囲にあるから小数点とともに
」三位方向にビットシフトすることにより、正確な値を
得る様にした点にある。以下、これを詳しく説明する。
いま、式(1)を計算するにあたり、alおよびX、が
各々Nビットで以下の様に2.の補数表現されていたと
する。
つまり、a、は−2により2kまでの範囲の値を取り得
るが、当はこれまでにも述べて来た様に−1より+1ま
での範囲であったとする。この時代(1)の積の項Zμ
よと表現できる。つまり、−2により2kまでの範囲の
値aIに−1より+1までの範囲の値X、を乗するとJ
kより2kまでの範囲の値となり、かつ、Nビット数同
志の積であるから、積は2N−1ビツトとなる。
式(1)ではこの項をM項累算する必要があり、ダイナ
ミックレンジは最大1og2Mピッ)・拡大する可能性
があるから、1og2Mより大きい最小の整数をLとお
いて、小数点位置を含めて式(5)で与えられる数値を
Lビット下位方向にづらせる。つまり、この様にLビッ
トz1を下位方向にづらせた2N−1ピツI・のデータ
z1′は上位Lビットは極性符号ビット(zo])と一
致し となり下位Lビット分の誤差を生づる。
式(1)の計算はこのz1′をM項加算すれば良く、と
なる。ここでゐは平均的に−1より+1の範囲の数値と
なっているはずであるから、多くの場合昼−バー・・・
−yk+L(8) となっており、上位に+L−1ビットを省略しても2つ
の補数表現としては同じ値を与える。よって(7)で示
される2N−1ビットデ′−夕を」三位方向にに+L−
1ビットシフトし、シフトあふれした後のデータから上
位Nビットを取り出せばX、と同様−1より+1まで゛
の夕゛イナミックレンジを有する為が得られることにな
る。もし、(8)式が成立していない時は求められたy
、は−1より+1までの範囲になく、よって正規のy、
は求められないから、この場合はオーバーフローとして
正もしくは負の最大値にy、の値をするとよい。2N−
1ビット表現された式(7)はオーバーフローしている
心配はないから、正もしくは負の最大値にy、の値を設
定する場合はy。jを見れば長く、yoJ=0の時は正
のオーバーフロー、yoJ=1の時は負のオーバーフロ
ーとすれば良い。
この様な計算を行なうと出力信号y、に誤差が加わる」 可能性は式(5)より式(6)へ移す時の2N−1ビッ
ト表現された信号の下位LピッI・分がM回加算されて
発生する誤差もしくはオーバーフローによる誤差のみで
ある。上記下位Lビット分がM回(Lビット相当)加算
されて発生する誤差は式(5)と同じ表現で評価すると
2Lビット分であり、y、を出力するにあたりに+L−
1ビット上位方向にシフトすることを考慮しても高々に
+3L−1ビット分である。また、yの出力としてNビ
ットに丸めるため丸めによる切り捨てビットN−1がこ
のに+3L−1より大の時、つまり、A+−1>K+3
L−1(91 であれば、上記の計算途中結果のためにダイナミック・
レンジを拡大するために発生する丸め誤差は事実上表わ
れて米ないことになる。
以上の説明では式(1)を計算するときにM項加算では
最大Lビット分のダイナミックルンジの拡大があり、こ
の最大ダイナミック・レンジの発生時にも充分対処する
様にしたが、もともと出力信号y、の取りうる値の範囲
は−1より+1に定まっているため、累算時にはLビッ
トより小さいL′ ビット分だけダイナミック・レンジ
を拡大しておき、累算時にもオーバーフローは発生する
可能性はあるものの、従来方式よりはオーバーフローの
発生を小さくすることも可能である。この様にすること
により、累算前の式(6)の値の精度を向上でき、累算
時のオーバーフローの発生がない時はy、を精度よく計
算できる。このため、累算器へ入力する前のシフト量を
可変にし、個々の応用毎に変えられることが望ましい。
(実施例) 次に本発明の1実施例を図面を参照しながら説明する。
第1図は乗数入力端子1.被乗数入力端子2.レジスタ
3,4,12.乗算器5.バレルシフタ7、算術論理ユ
ニット(ALU凰シフシフタ9−バーフロー検出器10
゜オーバーフロー訂正器11.シフト量制御端子6,1
3.出力端子14より構成される。ここでレジスタ3,
4,12.は(移) 1985年テキサスインスツルメンツ社発行の[ザバイ
ボーラディジタルインテグレーテイドサーキッツデータ
ブック(The Bipolar Digital I
utegratedCircuits Data Bo
ok) Jの7−234頁から7−239頁に、またA
LUは同文献の7−252頁から7−262頁に記載さ
れたICが利用できる。乗算器5は1984年TRW社
発行のデバイス・カタログTMC2110に記載された
ものが利用できる。バレルシフタ7およびシフタ9は1
977年AMD社発行の[ショットキーアンドローパワ
ーショットキーデータブックインクルーディングディジ
タルシグナルプロセッシングハンドブック4−37頁か
ら4.46頁記載のICが利用できる。オーバーフロー
検出器10およびオーバーフロー11の細詳については
後述する。
いま式(1)の計算のためにレジスタ12は0にクリヤ
されているものとし、aoが端子1からXJが端子2か
ら入力されているとし、ao、x、の各々は式(4)で
与えられる通りである。端子1及び端子2に各々加えら
れたal及びX、はレジスタ3及びレジスタ4へ格納さ
れる。乗算器5はレジスタ3及びレジスタ4の内容の積
を2N−1ビツトとして式(5)の様に与える。バレル
シフタ7ではlog2Mを包含する整数りだけ下位方向
にシフトすべく端子6より′L″が入力されている。こ
のため、乗算器5の出力で2N−1ビツトのテ゛−夕は
バレルシフタ7によりLビット下位方向にシフトされや
はり2N−1ビツトで表現される式(6)で与えられる
Zllが得られる。2N−1ビツト長のALU8ではバ
レルシフタ7の出力z1′とレジスター2の内容、この
場合はゼロと加算され、2−が出力される。当然オーバ
ーフローは発生しない。シフタ9は式(1)の最終出力
y、の計算時のみに+Lビットシフトさせる様に端子1
3からシフト量制御信号を加えるもので、今の場合式(
1)の第1項の計算中であるから、シフト量0が端子1
3より加えられており、このため、ALU8の出力Z1
゜がそのままシフタ9を通過する。当然シフタ9による
オーバーフローも発生しない。ALU8でもシフタ9で
もオーバーフローは発生しないため、オーバーフロー検
出器10はオーバーフロー否発生をオーバーフロー訂正
器11に伝え、このため、シフタ9の出力zj*はその
ままオーバーフロー訂正器11の出力となる。この2N
−1ビツトの出力Z、はレジスタ12に蓄えることによ
り式(1)の第1項計算a。X、が終了する。
次に端子1及び2にはalとX、 、が加えられレジス
タ3及び4にai 、Xl−1が蓄えられる。乗算器5
はalxj−1を式(5)の形式で与え、バレルシフタ
7により下位方向にLビットシフトする。ALU8では
レジスタ12に蓄えられたa。XJとバレルシフタ7の
出力で゛あるalXr−1が加算される。この加算にお
いても、バレルシフタ6で2N−1ビツトの乗算器出力
をLビット下方シフトしたためオーバーフローは発生し
ない。A、I、U8の出力a。XJ十a1XJ−1はシ
フタ9に入力されるが、今回も端子13にはゼロが入力
されており、シフタ9は入力aoXj+ alxi−x
を出力へ伝えるだけである。このためシフタ9はオーバ
ーフローを起こさない。ALU8もシフタ9もオーバー
フローを起こさないため、オーバーフロー検出器10は
オーバーフロー否発生をオーバーフロー訂正器11に伝
えるため今回もオーバーフロー訂正器11はシフタ9の
出力をレジスタ12へ伝えるだけであり、このため、レ
ジスタ12はaoXi + alXj−tの計算値を保
持する。以下M−1回目までは2回目と同じ動作のくり
返しである。
次に式(1)を計算するためのM回目の動作を説明する
。端子1及び2にはそれぞれ鮪とX4−ylが入力され
、レジスタ3及びレジスタ4にそれぞれ格納される。レ
ジスタ3及びレジスタ4の出力は乗算器5へ入力され、
aMXJ−7が式(5)の形式で゛出力される。このれ
る。この場合もバレルシフタ7により乗算結果aMXJ
−やをLビット下方ビットシフトしているため、ALU
8でのオーバーフローは発生しない。ALU8は加算出
力として、E、y、x、 、をシフタ9へ出力する。端
子13に加えられたシフト量は今回はに十りであり、ビ
ットが式(8)を満すか否かにより、オーバーフローを
起こさないか起こすかが決まる。いま、式(8)が満足
されておりオーバーフローを起こさない場合を考える。
この場合オーバーフロー検出器10はALU8もシフタ
9もオーバーフローしていないため、オーバーフロー否
発生をオーバーフロー訂正器11に伝え、オーバーフロ
ー訂正器はy、を」 k+Lビット上位方向にビットシフトされたシフタ9の
出力をレジスター2に伝える。レジスター2の」1位N
ビットが出力端子14に伝えられ、−1から+1までの
範囲の値を持ったNビット出力yが端子14に得られる
。一方、ALU8の出力は式(8)を満足しておらずオ
ーバーフローとなった時を考える。この場合、オーバー
フロー検出器10はオーバーフロー発生及びオーバーフ
ロー発生方向(正文は*)をオーバーフロー訂正器11
に伝え、オーバーフロー訂正器11はシフタ9の出力の
代わりに正または負の最大値である+1または−1をレ
ジスター2へ伝える。このため、レジスター2の上位N
ビットを出力とする出力端子14にはオニバーフローの
方向に従ってNビット表現された+1または−1が得ら
些る。以上の説明は式(1)のMの値が小さい時の場合
で、この場合は容易に式(9)が成立する。このため、
出力y、はシフタ9による最終シフトでオーバーフロー
しない限り、正しい値を与えており、演算精度もNビッ
ト分存在する。
一方式(1)のMの値が大きい時代(9)が成立しなく
なる。この場合、端子6に加える下方シフト量をLでは
なく、Lより小さく式(9)が成立するL′ を与える
と式(1)の演算中にオーバーフローを発生する危険性
が0ではなくなるものの演算精度を高く保てる。ただし
、この場合、自明のことであるが端子13に与えるシフ
ト量も第1回目より第M−1回目までは0と先例と同し
で良いが、第M回目にはに+L’  とする必要がある
。以下この様な場合の第P回目にA:[、U8がオーバ
ーフローした場合について説明する。第P−1回目まで
は先の例と同じであり、レジスタ12にはLaIXJ−
rが格納されているものとする。
第P回目には端子1,2を介してレジスタ3,4には各
々ap r XJ□pが格納される。乗算器5はレジス
タ3゜4よりap + XJ、□pを入力され出力ap
Xj−pを出力する。バレルシフタ7によりL′ ビッ
ト下方ビットシフトされたapXj−pとレジスタ12
に蓄えられた。=ylXJ−rはALU8により加算さ
れるが、オーバーフローを発生する。いまオーバーフロ
ーが正の方向で起こったとすればALU出力は負の値と
なる。シフタ9は第P回目では端子13に0が入力され
ているためオーバーフローを発生ぜず、ALU′″C−
負の値として出力されたオーバーフローした結果をオー
バーフロー訂正器11に供給する。オーバーフロー検出
器1oはALUがオーバーフローしていることを検出し
、オーバーフロー発生及び正側オーバーフローであるこ
とをオーバーフロー訂正器11に知らせる。このためオ
ーバーフロー訂正器11はシフタ9がらの負の出力デー
タを無視し、正の最大値をレジスタ12に伝える。よっ
て、レジスタ12には正の最大値力4a、x、−とじて
蓄えられALUのオーバーフローのc;c)    1 影響を軽減している。
第2図はオーバーフロー検出゛器10の一実施例であり
、シフタ9の入力が5ビツトの場合を考えており、端子
100,101..102,103,104はシフタの
入力Z。*。
zl”、z2本、23*、24*の入力端子、排他的論
理ノアゲート110.111,112,113.論理オ
アゲート120,121,122,123.アンドゲー
ト130,200.読出専用メモリ150.シフトビッ
ト数入力端子7.オーバーフロー検出端子160.オー
バーフロー方向端子170反転ALUオーバーフロー入
力端子190.ALU反転反転最上位ビット端子18遺
2210より構成される。ここで読出専用メモリ150
はアドレスに端子13が接続され表1で示されるデータ
を格納している。つまり表1は端子13より表1 加えられるシフト量(k+L)に従って最上位ビット方
向から論理0の連が続くものである。ALU回路には前
述した文献にも記載されいる様にオーバーフロー発生を
知らせる端子がすでに存在し、かつ、最上位ビットを別
途出力する端子があるため、これを各々端子190およ
び180に加える。選択回路210は前述したテキサス
インスツルメンツ社の文献の7−146頁より7−15
1頁記載のICが利用できる。
ALUのオーバーフローに関しては前述した様にALU
内部にオーバーフロー検出機構があるので以下主にシフ
タのオーバーフロー検出について述べ、最後にALUと
シフタ双方のオーバーフローに関して述べる。
いま、2ビツトシフト指定が端子13より入力され、A
LU出力が1.1,1,0.1として端子100,10
1,102。
103、104の各々に加わったとすると、ゲー1−1
10。
111、112,113には各々1,1,0.0が出力
される。この時のROMの出力は表1より0.0,1.
1であり、ROM出力とゲー) 110,111,11
2,113の出力がゲー) 120,121。
122、123でオアを取られる。比較すべき上位2ビ
ツト以下はROM出力が1であるためゲー) 120,
121,122。
123の出力は全て1となる。このため、ゲート130
は1を出力し、オーバーフローがなかったこと、換言す
れば端子100,101,102に加えられた2゜、z
l、z2が同一内容であることを示している。
一方、同じ2ビツトシフト指定が端子13より入力され
、ALU出力が1.1,0,0.1として端子100,
101..102゜103.104の各々に加わったと
すると、ゲート110゜111.112,1.13の各
々には]−,0,1,0が出力される。この結果ゲート
1.20,121,1.22,123には1..0,1
.1が得られ、ゲー1−121が0を出力するためゲ゛
−) 130は0を出力しオーバーフローが発生するこ
とを示す。この時のオーバーフローの方向は端子100
から加えられたシフタの入力の最」1位ビットが1であ
るから2ビツトシフトにより負方向のオーバーフローが
発生することが検出できる。正方向のオーバーフローの
検出も同様である。
以下の説明により、ゲート130が0の時はシフタのオ
ーバーフローが発生しており、また、端子190が0の
時はALUのオーバーフローが発生していることがわか
る。よってゲート200により、どちらか一方でも0と
なると端子160に0を出力し、オーバーフローが発生
していることを知らせる。
ALUとシフタは同時にオーバーフローとならない事を
仮定しているためゲート130がゼロの時はシフタのオ
ーバーフローであるから端子100に加えられた極性符
号ビットを、ゲート130が1の時は少くともシフタの
オーバーフローではないから反転したALUの最」三位
ビット出力を選択回路210で選択して端子170に出
力する。ALUオーバーフローの時ALUの最上位ビッ
トを出力するのは、オーバーフローにより極性(最」1
位ビット)が反転するためである。
第3図はオーバーフロー訂正器の一構成図で、選択回路
300、正の最大値入力端子301.負の最大値入力端
子302.シフタ出力入力端子303.訂正出力端子3
04からオーバーフロー発生入力端子160.オーバー
フロー方向端子170から構成されている。第2図の説
明より、オーバーフロー検出信号出力端子160はゼロ
の時オーバーフローを、オーバーフロー方向信号出力端
子170は1と時負方向0の時正方向のオーバーフロー
を示すから、4人力1出力選択回路を用いて、表2に示
す様に接続すればよい。
表2 この様に接続するとオーバーフローが発生し、かつ正方
向オーバーフローの時は端子301に加えられた正の最
大値011・・・1が、また、オーバーフローが発生し
、かつ、負方向オーバーフローの時は端子301に加え
られた負の最大値100・・・0が、さらに、オーバー
フローが発生していない場合は端子303に加えられた
入力信号がそのまま選択回路300の出力として与えら
れる。
(発明の効果) 以」二の様に本発明に従えば、FIRディジタルフィル
タ等の演算を精度良く実行するシグナルプロセッサなど
に適した小型の固定小数点演算回路を実現できる。
また、本発明に従えば入出力のダイナミックレンジが同
じ数値演算であっても途中結果のダイナミックレンジが
大きくなるものには、演算精度とオーバーフロー発生の
トレードオフを任意に選択できる回路を提供できる。
【図面の簡単な説明】
第1図は本発明の一実施例を示す図、第2図はオーバー
フロー検出器の構成例を示す図、第3図はオーバーフロ
ー訂正器の構成例を示す図である。 図において、 ■・・・入力端子     2・・・他の入力端子3・
・・レジスタ     4・・・他のレジスタ5・・・
乗算器      6・・・下位シフト量入力端子7・
・・バレルシフタ   8・・・算術論理ユニット9・
・・シフタ 10・・・オーバーフロー検出器 11・・・オーバーフロー訂正器 12・・・レジスタ
13・・・上位方向シフト量入力端子 14・・・出力
端子である。 亭  1  図 Zo  Zt   Z2   Z3Z4tqo    
      tb。

Claims (1)

    【特許請求の範囲】
  1. (1)、2組の単精度ビット数のデータを入力とし倍精
    度ビット数の積を出力する固定小数点乗算器と、前記固
    定小数点乗算器出力を少くとも下位方向に複数ビットシ
    フトを行なえる倍精度ビット数のバレルシフタと、前記
    バレルシフタの出力と後述するレジスタの内容に対し算
    術論理演算を行なう倍精度ビット数のALUと、前記A
    LUの出力に対し、少くとも上位方向にビットシフトを
    行なう倍精度ビット数のシフタと、前記ALUもしくは
    前記シフタにより出力データがオーバーフローを発生し
    たことを検出するオーバーフロー検出回路と、前記オー
    バーフロー検出回路により制御され、オーバーフロー検
    出時には前記シフタ出力をオーバーフロー方向の最大値
    に置換するオーバーフロー訂正器と、前記オーバーフロ
    ー訂正器出力を蓄える倍精度ビット数のレジスタと、前
    記レジスタの少くとも上位単精度ビット数のデータを出
    力する出力端子とから少くとも構成されることを特徴と
    した演算回路。
JP60105534A 1985-05-17 1985-05-17 演算回路 Expired - Lifetime JPH065505B2 (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
JP60105534A JPH065505B2 (ja) 1985-05-17 1985-05-17 演算回路
DE8686106742T DE3677051D1 (de) 1985-05-17 1986-05-16 Verarbeitungsschaltung, die es erlaubt den akkumulationsdurchsatz zu erhoehen.
EP86106742A EP0202633B1 (en) 1985-05-17 1986-05-16 Processing circuit capable of raising throughput of accumulation
CA000509343A CA1244955A (en) 1985-05-17 1986-05-16 Processing circuit capable of raising throughput of accumulation
US06/864,268 US4811268A (en) 1985-05-17 1986-05-19 Processing circuit capable of raising throughput of accumulation

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP60105534A JPH065505B2 (ja) 1985-05-17 1985-05-17 演算回路

Publications (2)

Publication Number Publication Date
JPS61262926A true JPS61262926A (ja) 1986-11-20
JPH065505B2 JPH065505B2 (ja) 1994-01-19

Family

ID=14410251

Family Applications (1)

Application Number Title Priority Date Filing Date
JP60105534A Expired - Lifetime JPH065505B2 (ja) 1985-05-17 1985-05-17 演算回路

Country Status (1)

Country Link
JP (1) JPH065505B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06132829A (ja) * 1992-07-10 1994-05-13 Internatl Business Mach Corp <Ibm> デシメーションフィルタ、a/d変換器

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06132829A (ja) * 1992-07-10 1994-05-13 Internatl Business Mach Corp <Ibm> デシメーションフィルタ、a/d変換器

Also Published As

Publication number Publication date
JPH065505B2 (ja) 1994-01-19

Similar Documents

Publication Publication Date Title
JPS6211933A (ja) 演算回路
US4868778A (en) Speed enhancement for multipliers using minimal path algorithm
JPH04290122A (ja) 数値表現変換装置
KR100302093B1 (ko) 교차형디지탈유한임펄스응답필터에서이진입력신호를탭계수와승산시키는방법및회로배열과교차형디지탈필터의설계방법
US4594680A (en) Apparatus for performing quadratic convergence division in a large data processing system
US4366549A (en) Multiplier with index transforms modulo a prime or modulo a fermat prime and the fermat prime less one
EP0416308A2 (en) Rectangular array signed digit multiplier
KR970006408B1 (ko) 논리회로의 자동설계방법 및 그 장치와 승산기
US5400271A (en) Apparatus for and method of calculating sum of products
JPS6027024A (ja) 演算装置
JP3660075B2 (ja) 除算装置
JPS61262926A (ja) 演算回路
JPH05158659A (ja) 乗算器
JPS61262925A (ja) 演算回路
JP2645422B2 (ja) 浮動小数点演算処理装置
JP2606326B2 (ja) 乗算器
JP2508286B2 (ja) 平方根演算装置
JP2951685B2 (ja) 固定小数点演算器
JP2002318792A (ja) データ演算処理装置及びデータ演算処理プログラム
JP2000010763A (ja) 除算回路
JPH02114324A (ja) 乗算器
CN116888575A (zh) 精简近似的基于共享的单输入多权重乘法器
SU881741A1 (ru) Цифровой логарифмический преобразователь
Nagayama et al. Floating-point numeric function generators based on piecewise-split EVMDDs
JPH0713740A (ja) 固定小数点算術演算時のけたあふれ防止方法

Legal Events

Date Code Title Description
EXPY Cancellation because of completion of term