JPS60129832A - 演算装置 - Google Patents
演算装置Info
- Publication number
- JPS60129832A JPS60129832A JP58239148A JP23914883A JPS60129832A JP S60129832 A JPS60129832 A JP S60129832A JP 58239148 A JP58239148 A JP 58239148A JP 23914883 A JP23914883 A JP 23914883A JP S60129832 A JPS60129832 A JP S60129832A
- Authority
- JP
- Japan
- Prior art keywords
- adder
- input
- time
- subtracter
- shifter
- 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
Links
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
産業上の利用分野
本発明は、シフト時に生じる誤差を最小にする丸め機能
を持った演算装置に関するものである。
を持った演算装置に関するものである。
従来例の構成とその問題点
近年、ディジタル信号処理技術が進歩し7、連続信号を
量子化してそのデータを扱うということはどく普通に行
なわれるようになってきた。しかしこの意味からもディ
ジタル値には、既にその中に量子化時の誤差が含まれて
いると考えられる。
量子化してそのデータを扱うということはどく普通に行
なわれるようになってきた。しかしこの意味からもディ
ジタル値には、既にその中に量子化時の誤差が含まれて
いると考えられる。
今、例えば1以上の連続的な値Xをその小数部を切捨て
てΣ、2i (il、=1. o )というゲインタル
値で表わしているとする。このXのディジタで操作する
ことによって電子化時の誤差がどのように拡大するかに
ついて述べる。
てΣ、2i (il、=1. o )というゲインタル
値で表わしているとする。このXのディジタで操作する
ことによって電子化時の誤差がどのように拡大するかに
ついて述べる。
寸ず左にフビットシフトする場合について述べる。シフ
タの動きは第1図の(b)に示すように最下位ビットか
ら○をつめる。このシフト操作は、2の巾乗の演算を行
うことと同値である。従って、+2コ)となる。このこ
とを示したのが第2図の(2L)と(b)である。図に
おいて横軸は入力データ、縦軸はシフト後のデータであ
る。直線で表わした連続値Xのシフト結果を真値と考え
ると、Σai21ををシフトする時に生じる誤差は、傾
き2j が大きくなるほど拡大する。フビットシフト時
の誤差は2コ 未満である。
タの動きは第1図の(b)に示すように最下位ビットか
ら○をつめる。このシフト操作は、2の巾乗の演算を行
うことと同値である。従って、+2コ)となる。このこ
とを示したのが第2図の(2L)と(b)である。図に
おいて横軸は入力データ、縦軸はシフト後のデータであ
る。直線で表わした連続値Xのシフト結果を真値と考え
ると、Σai21ををシフトする時に生じる誤差は、傾
き2j が大きくなるほど拡大する。フビットシフト時
の誤差は2コ 未満である。
次に右にシフトする場合について述べる。右シフト操作
は基本的には2つのマイナスの巾゛乗と同じたが、表わ
すことのできない小数部分の値は切捨てられる。この右
シフト時動きは第1図の(a)に示すように符号である
a4が延長され、下位にあふれてし捷ったal、aoは
切捨てられる。このシフタの動きをさらに詳しく示した
のが第2図(C)、(d)である。シフトしてその小数
部を切捨てることからも、又このグラフからも分かるよ
う、直線で示した直線との誤差は1未満である。
は基本的には2つのマイナスの巾゛乗と同じたが、表わ
すことのできない小数部分の値は切捨てられる。この右
シフト時動きは第1図の(a)に示すように符号である
a4が延長され、下位にあふれてし捷ったal、aoは
切捨てられる。このシフタの動きをさらに詳しく示した
のが第2図(C)、(d)である。シフトしてその小数
部を切捨てることからも、又このグラフからも分かるよ
う、直線で示した直線との誤差は1未満である。
以上のように、従来のシフタでは特にシフト時に連続信
号の量子化時の誤差が大きくなるという問題点を有して
いた。
号の量子化時の誤差が大きくなるという問題点を有して
いた。
発明の目的
本発明の目的は、上記従来例で述べた問題点を除去し、
シフト時に生じる誤差を最小にする丸め機能を持った演
算装置を提供することにある。
シフト時に生じる誤差を最小にする丸め機能を持った演
算装置を提供することにある。
発明の構成
本発明は、データを格納するレジスタと、入力の最下位
ビットには常に論理t+ 111が、最下位−ビットを
除く他のビットには上記レジスタの出力が接続されるバ
レルシフタと、前記バレル7フタのシフト方向とシフト
数を制御するバレルンフタ制御装置と、前記バレルシフ
タの出力の最下位ビットの値とそれより上位の値を入力
とした加算器とを備えた演算装置である。本発明の演算
装置は右シフト時には、下位にあふれるデータの最上位
ビットの値をシフトした結果に加え、左ソフト時には、
最下位ビットから10・・・・・○を入力していくこと
により、シフト時の丸めを実現できるものである。
ビットには常に論理t+ 111が、最下位−ビットを
除く他のビットには上記レジスタの出力が接続されるバ
レルシフタと、前記バレル7フタのシフト方向とシフト
数を制御するバレルンフタ制御装置と、前記バレルシフ
タの出力の最下位ビットの値とそれより上位の値を入力
とした加算器とを備えた演算装置である。本発明の演算
装置は右シフト時には、下位にあふれるデータの最上位
ビットの値をシフトした結果に加え、左ソフト時には、
最下位ビットから10・・・・・○を入力していくこと
により、シフト時の丸めを実現できるものである。
実施例の説明
第3図は本発明の一実施例における演算装置を示してい
る。第3図において、1は第1図の動きをするバレルシ
フタ、2はシフトするデータを格納スるレジスタ、3は
2つのデータを加算する加算器である。バレルシフタ1
と加算器3を包含したものをブロック4とし、その動作
の説明を例に上げて行なう。−例を第4図に示す。
る。第3図において、1は第1図の動きをするバレルシ
フタ、2はシフトするデータを格納スるレジスタ、3は
2つのデータを加算する加算器である。バレルシフタ1
と加算器3を包含したものをブロック4とし、その動作
の説明を例に上げて行なう。−例を第4図に示す。
第4図(a)は右2ビツトシフト時のブロック4の動き
である。入力a4〜aoに対し、シフトした値と、下位
にあふれたデータの最上位ビットの値a1とを足したも
のが出力となっている。第4図(b)は左1ビットシフ
ト時の動きである。入力?L4〜a。
である。入力a4〜aoに対し、シフトした値と、下位
にあふれたデータの最上位ビットの値a1とを足したも
のが出力となっている。第4図(b)は左1ビットシフ
ト時の動きである。入力?L4〜a。
に対し、最下位ピントから1を入力したものが出力とな
っている。例えば、入力データが0O01○で右1ビツ
トシフトする時、第3図における加算器3の第1人力a
がa−○0o○1、第2人力すがb−0となり、従って
出力値はa +b −00001となる。右2ビツトシ
フトする時はa−○o00.b−1、従って出力値はa
十b −00001となる。又左1ビツトシフ]・す
る時は?L =OO101、b =()、従ってa +
b =00101が出力となる。左2ビツトシフトする
時はa−○1010.b=o、従−、てa+b=o1○
10が出力となる。
っている。例えば、入力データが0O01○で右1ビツ
トシフトする時、第3図における加算器3の第1人力a
がa−○0o○1、第2人力すがb−0となり、従って
出力値はa +b −00001となる。右2ビツトシ
フトする時はa−○o00.b−1、従って出力値はa
十b −00001となる。又左1ビツトシフ]・す
る時は?L =OO101、b =()、従ってa +
b =00101が出力となる。左2ビツトシフトする
時はa−○1010.b=o、従−、てa+b=o1○
10が出力となる。
以下、これらの操作により、従来例で述べた問題点がど
のように解決されているか示す。
のように解決されているか示す。
まずコピノド左にシフトする場合について述べる。従来
例で述べたのと同じく、連続値Xを量子化した値をΣa
、2i、 (a工= ’ t o )とする。入力デー
タの最下位ビットから1o・・・・Oを入力する本発明
の演算により、この値は2すa工2l−2j−(≦2j
X<2すa工21+2と1 )となる。このことを表わ
したのが、第5図の(a) 、 (b)である。グラフ
の意味は第2図と同じである。このグラフからも分かる
とおり、誤差は従来例の’A(2”)になっている。
例で述べたのと同じく、連続値Xを量子化した値をΣa
、2i、 (a工= ’ t o )とする。入力デー
タの最下位ビットから1o・・・・Oを入力する本発明
の演算により、この値は2すa工2l−2j−(≦2j
X<2すa工21+2と1 )となる。このことを表わ
したのが、第5図の(a) 、 (b)である。グラフ
の意味は第2図と同じである。このグラフからも分かる
とおり、誤差は従来例の’A(2”)になっている。
次に右シフトする場合について述べる。シフト結果の小
数点以下第1位の値を整数部に加えるという操作は小数
点以下を0捨1人(10進数表示で述べると4捨6人)
しているととど同値である。
数点以下第1位の値を整数部に加えるという操作は小数
点以下を0捨1人(10進数表示で述べると4捨6人)
しているととど同値である。
従って第6図の(C) 、 (d)からも分かるとおり
、誤差は〃になっている・ 次に第3図における加算器3の例を上げてそれについて
説明する。第6図はこの加算器3の構成例である。同図
において5は加算モード時、入力A千人力B+キャリー
インを出力し、又減算モード時は入ノアA−人力B−キ
ャリーインを出力する加減算器、6は上記加減算器5の
出力に接続され、又加減算器5の入力となるアキュムレ
ータである。
、誤差は〃になっている・ 次に第3図における加算器3の例を上げてそれについて
説明する。第6図はこの加算器3の構成例である。同図
において5は加算モード時、入力A千人力B+キャリー
インを出力し、又減算モード時は入ノアA−人力B−キ
ャリーインを出力する加減算器、6は上記加減算器5の
出力に接続され、又加減算器5の入力となるアキュムレ
ータである。
バレルシフタの出力値であるaとbをそれぞれ加減算器
5の入力Bとキャリーインに入力する。上記加減算器5
の機能により、加算モード時は入力A+(a+b)+減
算モード時は入力A−(a+b)となるので、特別に丸
めのための加算器を付加しなくてもシフタの下の加減算
器にシフタの丸めa−1−bをうめこむことができる。
5の入力Bとキャリーインに入力する。上記加減算器5
の機能により、加算モード時は入力A+(a+b)+減
算モード時は入力A−(a+b)となるので、特別に丸
めのための加算器を付加しなくてもシフタの下の加減算
器にシフタの丸めa−1−bをうめこむことができる。
このような実施例は、例えば複数個のデータの和をめる
時有効である。加減算器でのオーバーフローを防止する
ため、あらかじめシフタでシフトダウンしておいたデー
タを加減算器で足しこんでいく。本発明では、その際シ
フトダウンすることによる誤差を最小にする。なお、上
記実施例では双方向のノ・レルシフタとしたが、これは
右あるいは左7フタとして右シフト時のみあるいは左シ
フト時のみに応用してもよい。
時有効である。加減算器でのオーバーフローを防止する
ため、あらかじめシフタでシフトダウンしておいたデー
タを加減算器で足しこんでいく。本発明では、その際シ
フトダウンすることによる誤差を最小にする。なお、上
記実施例では双方向のノ・レルシフタとしたが、これは
右あるいは左7フタとして右シフト時のみあるいは左シ
フト時のみに応用してもよい。
発明の効果
本発明の演算装置は、既存のバレルシフタと算術論理演
算器(ALU )に付加するハードウェアとしては、バ
レルシフタの入カビソト幅を1ビツト増やすだけで構成
できる。又、機能面では連続信号をシフトする場合を真
値として、その連続信号の量子化値をシフトする場合を
考えると、その間の誤差は従来のシフタの捧になってい
る。つまりたとえば左にJビットシフトする際の誤差は
従来のものは231本発明では2] 1、右シフトをす
る際の誤差は従来のものは1、本発明では腫になる。従
って本発明の演算装置を使用すれば、連続信号の量子化
を行った後のデータをシフトする場合、たとえば複数個
の加算を行う場合には誤差が従来の係になり、実用的効
果は大きい。
算器(ALU )に付加するハードウェアとしては、バ
レルシフタの入カビソト幅を1ビツト増やすだけで構成
できる。又、機能面では連続信号をシフトする場合を真
値として、その連続信号の量子化値をシフトする場合を
考えると、その間の誤差は従来のシフタの捧になってい
る。つまりたとえば左にJビットシフトする際の誤差は
従来のものは231本発明では2] 1、右シフトをす
る際の誤差は従来のものは1、本発明では腫になる。従
って本発明の演算装置を使用すれば、連続信号の量子化
を行った後のデータをシフトする場合、たとえば複数個
の加算を行う場合には誤差が従来の係になり、実用的効
果は大きい。
第1図(a) 、 (b)及び第2図(a)〜(d)は
従来のシフタの動作を説明する図、第3図は本発明の演
算装置の一実施例を示す構成図、第4図(a) 、 (
b)及び第5図(a) −y (d)は本発明の演算装
置の動作を説明する図、第6図は本発明に用いる加算器
の一例を示す構成図である。 1・・・・・・バレルシフタ、2・・・・・・レジスタ
、3・・・・・・加算器、5・・・・・・加減算器、6
・・・・・・アキュムレータ。 化94人の氏名 弁理士 中 尾 敏 男 ほか1名第
1図 (0−) CL3CL2αずCLo0 第2図 (C) くd。 第3図 第4図 第5図 (α) <th
従来のシフタの動作を説明する図、第3図は本発明の演
算装置の一実施例を示す構成図、第4図(a) 、 (
b)及び第5図(a) −y (d)は本発明の演算装
置の動作を説明する図、第6図は本発明に用いる加算器
の一例を示す構成図である。 1・・・・・・バレルシフタ、2・・・・・・レジスタ
、3・・・・・・加算器、5・・・・・・加減算器、6
・・・・・・アキュムレータ。 化94人の氏名 弁理士 中 尾 敏 男 ほか1名第
1図 (0−) CL3CL2αずCLo0 第2図 (C) くd。 第3図 第4図 第5図 (α) <th
Claims (1)
- データを格納するレジスタと、算術的シフトを行つバレ
ルシフタと、前記バレルシフタのシフト数とシフト方向
を制御するバレルシフタ制御手段と、前記バレルシフタ
の出力の最下位ビットのデータとそれより上位のデータ
とを加算する加算手段とを備え、前記バレルシフタの入
力には、最下位ビットに常に論理1が、それより上位の
ビットには前記レジスタの出力がそれぞれ接続されてい
る演算装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP58239148A JPS60129832A (ja) | 1983-12-19 | 1983-12-19 | 演算装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP58239148A JPS60129832A (ja) | 1983-12-19 | 1983-12-19 | 演算装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPS60129832A true JPS60129832A (ja) | 1985-07-11 |
JPH0584527B2 JPH0584527B2 (ja) | 1993-12-02 |
Family
ID=17040463
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP58239148A Granted JPS60129832A (ja) | 1983-12-19 | 1983-12-19 | 演算装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPS60129832A (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS6371725A (ja) * | 1986-09-16 | 1988-04-01 | Hitachi Ltd | 演算処理装置 |
JPH04273324A (ja) * | 1991-02-27 | 1992-09-29 | Sharp Corp | デジタル信号混合回路 |
-
1983
- 1983-12-19 JP JP58239148A patent/JPS60129832A/ja active Granted
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS6371725A (ja) * | 1986-09-16 | 1988-04-01 | Hitachi Ltd | 演算処理装置 |
JPH04273324A (ja) * | 1991-02-27 | 1992-09-29 | Sharp Corp | デジタル信号混合回路 |
Also Published As
Publication number | Publication date |
---|---|
JPH0584527B2 (ja) | 1993-12-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US4866656A (en) | High-speed binary and decimal arithmetic logic unit | |
JPH04290122A (ja) | 数値表現変換装置 | |
JPH05134851A (ja) | 乗算回路出力方式 | |
JPH05224883A (ja) | 浮動小数点n−ビット符号付大きさの2進数を固定小数点m−ビット2の補数表示の2進数に変換するためのシステム | |
JPH0160858B2 (ja) | ||
GB1579100A (en) | Digital arithmetic method and means | |
JPS60129832A (ja) | 演算装置 | |
Conway et al. | New CRT-based RNS converter using restricted moduli set | |
JPH0566921A (ja) | データシフト回路 | |
US4737925A (en) | Method and apparatus for minimizing a memory table for use with nonlinear monotonic arithmetic functions | |
JPH0149973B2 (ja) | ||
JPH09128213A (ja) | ブロックフローティング処理システムおよび方法 | |
US6654776B1 (en) | Method and apparatus for computing parallel leading zero count with offset | |
US5463575A (en) | Reduced quantization noise from single-precision multiplier | |
US5923888A (en) | Multiplier for the multiplication of at least two figures in an original format | |
JP3103913B2 (ja) | バレルシフタ | |
JP2795253B2 (ja) | 除算器 | |
JPH0216632A (ja) | 固定小数点数−浮動小数点数変換回路 | |
JPS5970308A (ja) | デイジタルフイルタ | |
KR0138861B1 (ko) | 영상 압축/복원용 양자화기의 양자화/역양자화 회로 | |
JP2990910B2 (ja) | 2進数並列2乗算器 | |
JPH0527949A (ja) | 浮動小数点乗算における指数部演算回路 | |
Bauer et al. | A limit cycle suppressing arithmetic format for digital filters | |
JPH0381174B2 (ja) | ||
KR100186408B1 (ko) | 양방향 배럴 시프터 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
EXPY | Cancellation because of completion of term |