JP3487903B2 - 演算装置及び演算方法 - Google Patents

演算装置及び演算方法

Info

Publication number
JP3487903B2
JP3487903B2 JP13085694A JP13085694A JP3487903B2 JP 3487903 B2 JP3487903 B2 JP 3487903B2 JP 13085694 A JP13085694 A JP 13085694A JP 13085694 A JP13085694 A JP 13085694A JP 3487903 B2 JP3487903 B2 JP 3487903B2
Authority
JP
Japan
Prior art keywords
data
result
overflow
minimum value
register
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.)
Expired - Lifetime
Application number
JP13085694A
Other languages
English (en)
Other versions
JPH07182141A (ja
Inventor
利広 石川
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 Corp
Panasonic Holdings Corp
Original Assignee
Panasonic Corp
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 Panasonic Corp, Matsushita Electric Industrial Co Ltd filed Critical Panasonic Corp
Priority to JP13085694A priority Critical patent/JP3487903B2/ja
Priority to US08/339,202 priority patent/US5508951A/en
Publication of JPH07182141A publication Critical patent/JPH07182141A/ja
Application granted granted Critical
Publication of JP3487903B2 publication Critical patent/JP3487903B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/38Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06F7/48Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
    • G06F7/57Arithmetic logic units [ALU], i.e. arrangements or devices for performing two or more of the operations covered by groups G06F7/483 – G06F7/556 or for performing logical operations
    • G06F7/575Basic arithmetic logic units, i.e. devices selectable to perform either addition, subtraction or one of several logical operations, using, at least partially, the same circuitry
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30003Arrangements for executing specific machine instructions
    • G06F9/30007Arrangements for executing specific machine instructions to perform operations on data operands
    • G06F9/3001Arithmetic instructions
    • G06F9/30014Arithmetic instructions with variable precision
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30003Arrangements for executing specific machine instructions
    • G06F9/30007Arrangements for executing specific machine instructions to perform operations on data operands
    • G06F9/30036Instructions to perform operations on packed data, e.g. vector, tile or matrix operations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2207/00Indexing scheme relating to methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F2207/38Indexing scheme relating to groups G06F7/38 - G06F7/575
    • G06F2207/3804Details
    • G06F2207/3808Details concerning the type of numbers or the way they are handled
    • G06F2207/3812Devices capable of handling different types of numbers
    • G06F2207/382Reconfigurable for different fixed word lengths
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/38Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06F7/48Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
    • G06F7/499Denomination or exception handling, e.g. rounding or overflow
    • G06F7/49905Exception handling
    • G06F7/4991Overflow or underflow
    • G06F7/49921Saturation, i.e. clipping the result to a minimum or maximum value

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、デジタル信号処理プロ
セッサ(DSP)等に内蔵される固定小数点の演算装置
に関し、特に、倍精度の演算や並列演算におけるオーバ
ーフロー補正を正しく行なうことができるように構成し
たものである。
【0002】
【従来の技術】近年、DSPはデジタル携帯電話等で多
用されている。このような機器組込み用のDSPでは、
コストを抑えるため、演算装置として固定小数点演算を
行なう装置を内蔵している。
【0003】固定小数点方式の演算装置では、表示する
数値の右端に小数点を置き、数値を整数として扱う場合
が多い。また、演算結果の桁数がオーバーフローする場
合には、オーバーフローの方向に合わせて、演算結果を
正の最大値または負の最小値に設定するオーバーフロー
補正が行なわれる。
【0004】従来のこの種の演算装置において、倍精度
の演算を行なう場合のオーバーフロー補正について説明
する。
【0005】この演算装置は、図7に示すように、Nビ
ットのデータを記憶するメモリ1および2と、論理、演
算ユニットであるALU5と、メモリ1のデータをAL
U5の右側に入力するバス3と、メモリ2のデータをA
LU5の左側に入力するバス4と、ALU5に接続して
オーバーフロー検出信号11とオーバーフロー符号信号12
とを出力するオーバーフロー検出手段6と、倍精度の演
算において下位桁の最上位ビットで発生したキャリー
(桁上げ)を保持するキャリーフラグレジスタ7と、オ
ーバーフロー検出信号11がアクティブでオーバーフロー
符号信号12が正の時に正の最大値を出力し、オーバーフ
ロー検出信号11がアクティブでオーバーフロー符号信号
12が負の時に負の最小値を出力し、オーバーフロー検出
信号がアクティブでないときにALU5の出力をそのま
ま出力する最大値最小値設定手段8と、最大値最小値設
定手段8の出力をそのまま保持するレジスタ9および10
とを備えている。
【0006】オーバーフロー検出手段6は、図8に示す
構成を有しており、補数表示された数の最上位桁のキャ
リーの値をオーバーフロー符号信号12として出力し(0
は正、1は負を表わす)、また、最上位桁のキャリーの
値と一つ手前の桁からのキャリーの値とが一致したとき
に0、一致しないときに1のオーバーフロー検出信号11
を出力する。
【0007】また、最大値最小値設定手段8は、図9に
示すように、オーバーフロー符号信号12が1のときに
「10000‥」(負の最小値)を、また、オーバーフ
ロー符号信号12が0のときに「01111‥」(正の最
大値)を出力する最大値最小値出力素子と、この素子か
らの出力とALU5の出力とが入力するマルチプレクサ
とを備えている。マルチプレクサは、オーバーフロー検
出信号11が0のときにALU5の出力を選択し、オーバ
ーフロー検出信号11が1のときに最大値最小値出力素子
の出力を選択する。
【0008】いま、メモリ1および2、バス3および
4、ALU5、レジスタ9および10におけるデータのビ
ット数Nが16ビットであるとする。倍精度の演算で
は、ALU5は、バス3とバス4とから供給されるデー
タを2回に亙って加減算する。その結果、2N=32ビ
ットのデータの加減算が可能になる。
【0009】16ビットにおける正の最大値は、2の補
数表示で7fffとなり、負の最小値は8000とな
る。最大値最小値設定手段8は、オーバーフロー検出信
号11がアクティブ(1)でオーバーフロー符号信号12が
正(0)の時には正の最大値7fffを出力し、オーバ
ーフロー検出信号11がアクティブでオーバーフロー符号
信号12が負(1)の時には負の最小値8000を出力す
る。
【0010】以上のように構成された演算装置におい
て、倍精度(2N=32ビット)のデータXとYの加減
算を行なう場合の動作について説明する。
【0011】(1)XとYの下位側データ同士の加減算
のステップ まず、メモリ1からデータXの下位16ビットのデータ
XLを読出してバス3に出力する。また、メモリ2から
データYの下位16ビットのデータYLを読出してバス
4に出力する。ALU5は、XLとYLの加減算を行な
い、結果を最大値最小値設定手段8を介してレジスタ10
に格納する。
【0012】また、最上位ビットで発生したキャリー
は、キャリーフラグレジスタ7に格納する。このとき、
最大値最小値設定手段8は、ALU5の出力をそのまま
レジスタ10に出力する。
【0013】(2)XとYの上位側データ同士の加減算
のステップ まず、メモリ1からデータXの上位16ビットのデータ
XUを読出してバス3に出力する。また、メモリ2から
データYの上位16ビットのデータYUを読出してバス
4に出力する。ALU5は、XU、YUおよびキャリー
フラグレジスタ7の値の加減算を行ない、結果を最大値
最小値設定手段8を介してレジスタ9に格納する。
【0014】このとき、オーバーフロー検出手段6は、
ALU5の演算結果がオーバーフローした場合、オーバ
ーフロー検出信号11とオーバーフローの方向を示すオー
バーフロー符号信号12とを出力する。最大値最小値設定
手段8は、オーバーフロー検出信号11がアクティブでオ
ーバーフロー符号信号12が正のときは正の最大値(7f
ff)を出力し、オーバーフロー検出信号11がアクティ
ブでオーバーフロー符号信号12が負のときは負の最小値
(8000)を出力する。また、オーバーフロー検出信
号12がアクティブでないときはALU5の出力をそのま
ま出力する。
【0015】以上の(1)と(2)のステップの動作に
より倍精度データの加減算が行なわれ、下位16ビット
の演算結果がレジスタ10に、上位16ビットの演算結果
がレジスタ9に、それぞれ格納される。
【0016】
【発明が解決しようとする課題】しかし、従来の演算装
置では、倍精度の演算において、演算結果がオーバーフ
ローした場合、演算結果32ビットのうちレジスタ10に
格納された下位側16ビットの値は補正されないので、
32ビット精度での正の最大値または負の最小値に正し
くオーバーフロー補正することができないという問題点
を有している。
【0017】また、近年、ディジタル通信の誤り訂正
に、しばしば畳込み符号が使用され、DSPにより、こ
の誤り訂正用畳込み符号のビタビ復号処理を行なうこと
が増えている。ビタビ復号は、いわゆるACS(加算比
較選択)演算と呼ばれる処理を繰返すことにより実行さ
れる。このACS演算は、2回の加算を行ない、その加
算結果の大小を比較し、その比較結果に基づいて、2個
の加算結果のいずれかを選択する処理である。このよう
な処理を繰返すので、ビタビ復号結果を得るまでには、
多くの回数の演算が必要となり、時間が掛かる。そのた
め、こうした多数回の演算を効率的に処理して演算の高
速化を図ること、また、その各演算においてオーバーフ
ローが発生した場合に、正確にオーバーフロー補正する
ことが求められている。
【0018】本発明は、こうした課題に応えるものであ
り、倍精度データの演算に際して正確にオーバーフロー
補正することができる演算装置及び演算方法を提供する
ことを目的としている。
【0019】また、多数の演算を効率的に処理すること
ができ、また、その演算におけるオーバーフロー補正を
正確に行なうことができる演算装置及び演算方法を提供
することを目的としている。
【0020】
【課題を解決するための手段】そこで、本発明では、倍
精度データの上位桁の演算結果を記憶する第1のレジス
タと、倍精度データの下位桁の演算結果を記憶する第2
のレジスタと、演算結果のオーバーフローを検出するオ
ーバーフロー検出手段と、このオーバーフロー検出手段
の検出結果に基づいて第1のレジスタに最大値または最
小値を出力する最大値最小値設定手段とを備えた演算装
置において、オーバーフロー検出手段の検出結果に基づ
いて第2のレジスタの出力値を全ビットが0または1の
データに設定する補正手段を設けている。
【0021】また、倍精度データの上位桁の演算と下位
桁の演算とを複数回に分けて行なう倍精度データの演算
方法において、倍精度データの上位桁の演算に際して、
演算結果のオーバーフローを検出し、このオーバーフロ
ーの検出結果に基づいて、上位桁の演算結果を最大値ま
たは最小値に設定するとともに、下位桁の演算結果を全
ビットが0または1のデータに設定している。
【0022】また、1つの演算器が扱うデータのビット
幅に複数のデータを含めて、メモリから同時に読み出し
た複数のデータに対する複数の演算を並列に行い、前記
複数の演算のそれぞれでのオーバーフローの有無に応じ
て、前記複数の演算のそれぞれの結果として最大値また
は最小値を出力するように構成している。
【0023】また、レジスタに格納する複数の演算結果
を得るための複数の演算を並列に行い、前記複数の演算
のそれぞれでのオーバーフローの有無に応じて、前記複
数の演算のそれぞれの結果としての最大値または最小値
の格納と、前記レジスタに格納する1つの演算結果を得
るための演算を行い、前記1つの演算結果を得るための
演算でのオーバーフローの有無に応じて、前記1つの演
算結果を得るための演算の結果としての最大値または最
小値の格納とのいずれかの演算が可能であり、前記複数
の演算を行う場合は下位側の前記複数の演算の結果に基
づいてオーバーフローの有無を判断し、オーバーフロー
が発生したときは前記下位側の演算結果として最大値ま
たは最小値を前記レジスタの下位側に格納し、前記1つ
の演算結果を得るための演算を行う場合は前記1つの演
算の結果に基づいてオーバーフローの有無を判断し、オ
ーバーフローが発生したときは前記1つのデータに対す
る演算結果として最大値または最小値の下位側を前記レ
ジスタの下位側に格納するように構成している。
【0024】また、本発明の演算方法では、1つの演算
器が扱うデータのビット幅に複数のデータを含めて、メ
モリから同時に読み出した複数のデータに対する複数の
演算を並列に行い、前記複数の演算のそれぞれでのオー
バーフローの有無に応じて、前記複数の演算のそれぞれ
の結果として最大値または最小値を出力するようにして
いる。
【0025】さらに、本発明の演算方法では、レジスタ
に格納する複数の演算結果を得るための複数の演算を並
列に行い、前記複数の演算のそれぞれでのオーバーフロ
ーの有無に応じて、前記複数の演算のそれぞれの結果と
しての最大値または最小値の格納と、前記レジスタに格
納する1つの演算結果を得るための演算を行い、前記1
つの演算結果を得るための演算でのオーバーフローの有
無に応じて、前記1つの演算結果を得るための演算の結
果としての最大値または最小値の格納とのいずれかの演
算が可能であり、前記複数の演算を行う場合は下位側の
前記複数の演算の結果に基づいてオーバーフローの有無
を判断し、オーバーフローが発生したときは前記下位側
の演算結果として最大値または最小値を前記レジスタの
下位側に格納し、前記1つの演算結果を得るための演算
を行う場合は前記1つの演算の結果に基づいてオーバー
フローの有無を判断し、オーバーフローが発生したとき
は前記1つのデータに対する演算結果として最大値また
は最小値の下位側を前記レジスタの下位側に格納するよ
うにしている。
【0026】
【作用】そのため、倍精度データの演算を行なう演算装
置及び演算方法では、オーバーフローが発生して、上位
桁が最大値に設定されるときには、下位桁も「1111
‥」に設定され、また、上位桁が最小値に設定されると
きには、下位桁も「0000‥」に設定される。従っ
て、倍精度の演算において、正確なオーバーフロー補正
が行なわれる。
【0027】また、並列演算を行なう演算装置及び演算
方法では、複数の演算が同時並行して行なわれるため、
多数回の演算を高速で処理することが可能であり、ま
た、その際にオーバーフローが発生すると、各演算毎に
正しいオーバーフロー補正が行なわれる。
【0028】
【実施例】
(第1実施例)本発明の第1実施例における演算装置
は、図1に示すように、オーバーフロー検出信号11がア
クティブで、オーバーフロー符号信号12が正の時にレジ
スタ10の出力として値(ffff)を出力し、オーバー
フロー検出信号11がアクティブで符号信号12が負の時に
レジスタ10の出力として値(0000)を出力し、オー
バーフロー検出信号がアクティブでない時にレジスタ10
の値をそのまま出力する補正値設定手段13を備えてい
る。その他の構成は、従来の装置と変わりがない。
【0029】この補正値設定手段13は、図2に示すよう
に、オーバーフロー符号信号12がアクティブのときに
「0000‥」を、また、オーバーフロー符号信号12が
アクティブでない(0)のときに「1111‥」を出力
する補正値出力素子と、この素子からの出力とレジスタ
10の出力とが入力するマルチプレクサとを備えている。
マルチプレクサは、オーバーフロー検出信号11がアクテ
ィブ(1)のときに補正値出力素子の出力を選択し、オ
ーバーフロー検出信号11がアクティブでない(0)とき
にレジスタ10の出力を選択する。
【0030】いま、メモリ1および2、バス3および
4、ALU5、レジスタ9および10におけるデータのビ
ット数Nが16ビットであるとして、倍精度(2N=3
2ビット)のデータXとYの加減算を行なう場合の動作
について説明する。
【0031】(1)XとYの下位側データ同士の加減算
のステップ まず、メモリ1からデータXの下位16ビットのデータ
XLを読出してバス3に出力する。また、メモリ2から
データYの下位16ビットのデータYLを読出してバス
4に出力する。ALU5は、XLとYLの加減算を行な
い、結果を最大値最小値設定手段8を介してレジスタ10
に格納する。また、最上位ビットで発生したキャリーは
キャリーフラグレジスタ7に格納する。このとき、最大
値最小値設定手段8は、ALU5の出力をそのままレジ
スタ10に出力する。
【0032】(2)XとYの上位側データ同士の加減算
のステップ まず、メモリ1からデータXの上位16ビットのデータ
XUを読出してバス3に出力する。また、メモリ2から
データYの上位16ビットのデータYUを読出してバス
4に出力する。ALU5は、XU、YUおよびキャリー
フラグレジスタ7の値の加減算を行ない、結果を最大値
最小値設定手段8を介してレジスタ9に格納する。
【0033】このとき、オーバーフロー検出手段6は、
ALU5の演算結果がオーバーフローした場合、オーバ
ーフロー検出信号11とオーバーフローの方向を示すオー
バーフロー符号信号12とを出力する。最大値最小値設定
手段8は、オーバーフロー検出信号11がアクティブでオ
ーバーフロー符号信号12が正の時は正の最大値(7ff
f)を出力し、オーバーフロー検出信号11がアクティブ
でオーバーフロー符号信号12が負の時は負の最小値(8
000)を出力し、オーバーフロー検出信号11がアクテ
ィブでない場合はALU5の出力をそのまま出力する。
【0034】また、オーバーフロー検出手段6からオー
バーフロー検出信号11及びオーバーフロー符号信号12が
入力した補正値設定手段13は、オーバーフロー検出信号
11がアクティブでオーバーフロー符号信号12が正のとき
は値(ffff)をレジスタ10の出力として設定し、オ
ーバーフロー検出信号11がアクティブで符号信号12が負
のときは値(0000)をレジスタ10の出力として設定
する。また、オーバーフロー検出信号11がアクティブで
ない場合は、レジスタ10の値をそのまま出力する。
【0035】以上の(1)と(2)のステップの動作に
より倍精度データの加減算が行なわれる。
【0036】従って、オーバーフロー時に最大値最小値
設定手段8が演算結果の上位側データを補正した場合に
は、補正値設定手段13が演算結果の下位側データを補正
し、それにより、加減算結果が正の方向にオーバーフロ
ーした場合は、32ビットの正の最大値(7fffff
ff)が出力され、また、加減算結果が負の方向にオー
バーフローした場合は、32ビットの負の最小値(80
000000)が出力される。
【0037】なお、補正値設定手段13の設定した値をレ
ジスタ10に格納するように構成することもできる。
【0038】このように第1実施例の演算装置は、倍精
度データ同士の加減算に際して、オーバーフロー補正を
正確に行なうことができる。また、この補正は、2ステ
ップの高速で実行される。
【0039】(第2実施例)第2実施例では、第1実施
例における補正値設定手段13をレジスタ10と一体的に構
成している。
【0040】この装置は、図3に示すように、レジスタ
10がセット・リセット機能付きDラッチによって構成さ
れる。
【0041】レジスタ10のデータ入力端子Dには、最大
値最小値設定手段8からのデータが入力し、このデータ
は、書込みイネーブル端子Eがアクティブであるとき、
レジスタ10に書込まれ、データ出力端子Qからバス3に
出力される。
【0042】オーバーフロー検出信号11がアクティブと
なり、同時にオーバーフロー符号信号12がアクティブと
なると、リセット端子Rがアクティブとなって、レジス
タ10は「0000」にリセットされ、データ出力端子Q
からは「0000」が出力される。
【0043】オーバーフロー検出信号11がアクティブ
で、オーバーフロー符号信号12がノンアクティブのとき
は、セット端子Sがアクティブとなって、レジスタ10は
「ffff」にセットされ、データ出力端子Qからは
「ffff」が出力される。
【0044】その結果、オーバーフロー時に最大値最小
値設定手段8がレジスタ9に格納する演算結果の上位側
データを最大値または最小値に補正するとき、併せて、
レジスタ10に格納された演算結果の下位側データが「f
fff」または「0000」に補正される。
【0045】(第3実施例)第3実施例の演算装置は、
倍精度の演算と、演算装置のビット幅の半分のビット幅
の演算を二つ同時に並行して実行する並列演算とを選択
して処理することができ、また、それら演算におけるオ
ーバーフロー補正を正確に行なうことができる。
【0046】この演算装置は、図4に示すように、8ビ
ット幅のALU2個を並列に並べた構成を有するALU
5と、ALU5の演算結果の最上位桁のキャリーの値を
オーバーフロー符号信号12として出力し、この最上位桁
のキャリーの値と一つ手前の桁からのキャリーの値とが
一致したときに0、一致しないときに1のオーバーフロ
ー検出信号11を出力する第1のオーバーフロー検出手段
6と、ALU5の演算結果の下位側から8ビット目のキ
ャリーの値をオーバーフロー符号信号16として出力し、
この下位側から8ビット目のキャリーの値と7ビット目
の桁からのキャリーの値とが一致したときに0、一致し
ないときに1のオーバーフロー検出信号15を出力する第
2のオーバーフロー検出手段14と、倍精度演算または並
列演算においてオーバーフローが発生したときに、それ
らの演算に応じた最大値または最小値を出力し、オーバ
ーフローが発生していないときにALU5の演算結果を
出力する最大値最小値設定手段8とを備えている。その
他の構成は第1実施例の演算装置と変わりがない。
【0047】第1のオーバーフロー検出手段6の構成は
図8と同じである。また、第2のオーバーフロー検出手
段14は、図5に示すように、ALU5の演算結果の下位
側から8ビット目のキャリーの値をオーバーフローの方
向を示すオーバーフロー符号信号16として出力し(オー
バーフローの方向が正のときは0、負のときは1)、ま
た、この下位側から8ビット目のキャリーの値と7ビッ
ト目の桁からのキャリーの値とが一致したときに0、一
致しないときに1のオーバーフロー検出信号15を出力す
る。
【0048】また、最大値最小値設定手段8は、図6に
示すように、オーバーフロー符号信号16が1のときに
「10000000」(8ビットの負の最小値)を、ま
た、オーバーフロー符号信号16が0のときに「0111
1111」(8ビットの正の最大値)を出力する最大値
最小値出力素子81と、オーバーフロー符号信号12が1の
ときに「1000000000000000」(16ビ
ットの負の最小値)を、また、オーバーフロー符号信号
12が0のときに「0111111111111111」
(16ビットの正の最大値)を出力する最大値最小値出
力素子82と、最大値最小値出力素子82の出力の上位8ビ
ットとALU5の上位側8ビットとが入力し、オーバー
フロー検出信号11によってそれらを選択するマルチプレ
クサ83と、最大値最小値出力素子82の出力の下位8ビッ
ト、最大値最小値出力素子81の出力およびALU5の下
位側8ビットが入力し、オーバーフロー検出信号11また
は15によってそれらを選択するマルチプレクサ83とを備
えている。
【0049】マルチプレクサ83は、オーバーフロー検出
信号11が0のときにはALU5の上位側出力を選択し、
また、オーバーフロー検出信号11が1のときには最大値
最小値出力素子82の出力の上位8ビットを選択して出力
する。従って、マルチプレクサ83は、オーバーフロー検
出信号11が1の場合に、オーバーフロー符号信号12が1
であれば「10000000」(8ビットの負の最小
値)を、また、オーバーフロー符号信号12が0であれば
「01111111」(8ビットの正の最大値)を出力
する。
【0050】また、マルチプレクサ84は、制御部(図示
せず)が並列演算を指示している場合には、オーバーフ
ロー検出信号15によって、ALU5の下位側出力または
最大値最小値出力素子81の出力のいずれかを選択し、オ
ーバーフロー検出信号15が0のときには、ALU5の下
位側の演算結果を出力し、また、オーバーフロー検出信
号15が1のときには、オーバーフロー符号信号16が1で
あれば「10000000」(8ビットの負の最小値)
を、オーバーフロー符号信号16が0であれば「0111
1111」(8ビットの正の最大値)を出力する。
【0051】一方、制御部(図示せず)が並列演算を指
示していない場合には、マルチプレクサ84は、オーバー
フロー検出信号11によって、ALU5の下位側出力また
は最大値最小値出力素子82の下位8ビットの出力のいず
れかを選択し、オーバーフロー検出信号11が0のときに
は、ALU5の下位側出力を出力し、また、オーバーフ
ロー検出信号11が1のときには、オーバーフロー符号信
号12が1であれば「00000000」を、オーバーフ
ロー符号信号12が0であれば「11111111」を出
力する。
【0052】この演算装置で倍精度の演算を行なう場合
は、メモリ1から32ビットのデータXの下位16ビッ
トのデータXLを読出し、また、メモリ2から32ビッ
トのデータYの下位16ビットのデータYLを読出し、
8ビット幅の2個のALUの一方(下位側)を用いて1
ビット目から8ビット目までの演算を行ない、他方(上
位側)のALUを用いて9ビット目から16ビット目ま
での演算を行なう。このとき、下位側ALUの8ビット
目のキャリーの値が上位側ALUの9ビット目の演算に
加えられるように構成する。また、上位側の16ビット
目で発生したキャリーは、キャリーフラグレジスタ7に
格納する。
【0053】下位側ALUの演算結果は最大値最小値設
定手段8のマルチプレクサ84に入力し、また、上位側A
LUの演算結果はマルチプレクサ83に入力する。このと
きマルチプレクサ83、84は、上位側ALUおよび下位側
ALUの出力をそのまま選択し、最大値最小値設定手段
8からは、それらを合わせた16ビットのデータが出力
され、レジスタ10に格納される。
【0054】次に、メモリ1からデータXの上位16ビ
ットのデータXUを読出し、また、メモリ2からデータ
Yの上位16ビットのデータYUを読出し、8ビット幅
の2個のALUを用いて、XU、YUおよびキャリーフ
ラグレジスタ7の値の加減算を行ない、上位側ALUの
演算結果を最大値最小値設定手段8のマルチプレクサ83
に、また、下位側ALUの演算結果をマルチプレクサ84
に入力する。
【0055】このとき、オーバーフロー検出手段6は、
上位側ALUの演算結果がオーバーフローした場合に、
オーバーフロー検出信号11とオーバーフローの方向を示
すオーバーフロー符号信号12とを出力する。オーバーフ
ロー検出信号11が出力されると、最大値最小値設定手段
8のマルチプレクサ83は、最大値最小値出力素子82から
オーバーフロー符号信号12に応じて出力された16ビッ
トの正の最大値または負の最小値の上位8ビットを選択
して出力し、また、倍精度演算が指定されているマルチ
プレクサ84は、この16ビットの下位8ビットを選択し
て出力する。その結果、オーバーフロー発生時には、最
大値最小値設定手段8から、それらを合わせた16ビッ
トの最大値または最小値が出力されレジスタ9に格納さ
れる。
【0056】また、オーバーフローが発生していないと
きには、マルチプレクサ83、84は、それぞれALUの上
位側、下位側の演算結果を出力し、それらを合わせた1
6ビットのデータがレジスタ9に格納される。
【0057】オーバーフローの発生時には、第1実施例
の場合と同じように、オーバーフロー検出手段6から出
力されたオーバーフロー検出信号11とオーバーフロー符
号信号12とが補正値設定手段13に入力し、補正値設定手
段13は、レジスタ10に格納された値を(ffff)また
は(0000)に補正する。
【0058】このように、第3実施例の演算装置では、
倍精度の演算において、第1実施例の装置と同じよう
に、正確なオーバーフロー補正を行なうことができる。
【0059】次に、演算装置の半分のビット幅の演算
を、2回、並列して行なう場合の動作について説明す
る。
【0060】8ビット幅の4つのデータXU’、X
L’、YU’、YL’について、XU’+YU’とX
L’+YL’の2つの加算を以下のように行なう。予
め、メモリ1の上位8ビットにデータXU’、下位8ビ
ットにデータXL’が格納されており、また、メモリ2
の上位8ビットにデータYU’、下位8ビットにデータ
YL’が格納されているものとする。まず、メモリ1か
らXU’とXL’のデータを16ビットのバス3を介し
て同時に読出し、ALU5の右側に入力する。また、メ
モリ2からYU’とYL’のデータを16ビットのバス
4を介して同時に読出し、ALU5の左側に入力する。
ALU5は、その上位側でXU’+YU’の演算を行な
い、並行して、下位側でXL’+YL’の演算を行な
う。このとき、ALUの下位側8ビット目から9ビット
目に入力するキャリーの値を0にするように構成する。
【0061】第1のオーバーフロー検出手段6は、AL
U5の上位側の演算結果がオーバーフローした場合に、
オーバーフロー検出信号11とオーバーフローの方向を示
すオーバーフロー符号信号12とを出力する。オーバーフ
ロー検出信号11が出力される(アクティブになる)と、
最大値最小値設定手段8のマルチプレクサ83は、オーバ
ーフロー符号信号12が正のときには、最大値最小値出力
素子82から出力された16ビットの正の最大値の上位8
ビット(01111111)を選択して出力し、また、
オーバーフロー符号信号12が負のときには、16ビット
の負の最小値の上位8ビット(10000000)を選
択して出力する。
【0062】また、オーバーフロー検出信号11がアクテ
ィブでないときには、マルチプレクサ83は、ALU5の
上位側出力をそのまま出力する。
【0063】一方、第2のオーバーフロー検出手段14
は、ALU5の下位側の演算結果がオーバーフローした
場合に、オーバーフロー検出信号15とオーバーフローの
方向を示すオーバーフロー符号信号16とを出力する。オ
ーバーフロー検出信号15が出力されると、並列演算が指
示されている最大値最小値設定手段8のマルチプレクサ
84は、オーバーフロー符号信号16が正のときに、最大値
最小値出力素子81から出力された8ビットの正の最大値
(01111111)を選択して出力し、オーバーフロ
ー符号信号16が負のときに、8ビットの負の最小値(1
0000000)を選択して出力する。また、オーバー
フロー検出信号15がアクティブでないときはALU5の
下位側出力をそのまま出力する。
【0064】このマルチプレクサ83およびマルチプレク
サ84の出力は、16ビットのデータに寄せ合わされて、
レジスタ9に格納される。
【0065】このように第3実施例の演算装置では、1
ステップで、8ビット幅の加算2回を同時に行なうこと
ができ、また、各演算のそれぞれにオーバーフローが発
生した場合に、正確なオーバーフロー補正を行なうこと
ができる。
【0066】なお、第3実施例では、ALU5の下位側
演算結果の8ビットのオーバーフロー補正を行なう最大
値最小値出力素子81およびマルチプレクサ84を最大値最
小値設定手段8の内部に設けているが、これらを補正値
設定手段13の内部に設けるように変更することもでき
る。その場合、レジスタ10の上位8ビットには、最大値
最小値出力素子82とマルチプレクサ83とを用いてオーバ
ーフロー補正が行なわれたALU5の上位側8ビットの
データを格納し、下位側8ビットにはALU8の下位側
8ビットの出力をそのまま格納する。そして、オーバー
フロー検出手段14から出力されたオーバーフロー検出信
号15とオーバーフロー符号信号16とを補正値設定手段13
に入力し、レジスタ10からデータを読出してバス3に出
力する際に、この補正値設定手段13が、レジスタ10の上
位側8ビットについてはそのまま出力し、レジスタ10の
下位側8ビットデータに対しては、前述した手順でオー
バーフロー補正を行なうようにする。
【0067】また、第3実施例では、16ビットの演算
を行なうALU8により、8ビットの演算を2回同時に
行なう場合の例を示したが、より並列度の高い演算にも
適用することができる。例えば、4ビットの演算4回を
並列に行なう場合にも、オーバーフロー検出手段と最大
値最小値設定手段を4個ずつ並列に設けるようにすれ
ば、並列演算とそのオーバーフロー補正とを、同様に高
速にしかも正確に行なうことができる。
【0068】
【発明の効果】以上の実施例の説明から明らかなよう
に、本発明の演算装置及び演算方法は、倍精度データの
演算に際して、正確にしかも迅速にオーバーフロー補正
を実行することができる。
【0069】また、演算装置のビット幅よりも小さいビ
ット幅の演算を同時並列的に行なうことにより、多数の
演算回数を必要とするビタビ復号等の処理を高速化する
ことができ、また、この演算でのオーバーフローの発生
に対して正確なオーバーフロー補正を行なうことができ
る。
【図面の簡単な説明】
【図1】本発明の第1実施例における演算装置の構成を
示すブロック図、
【図2】前記演算装置の補正値設定手段を示すブロック
図、
【図3】本発明の第2実施例の演算装置の補正値設定手
段を示すブロック図、
【図4】本発明の第3実施例における演算装置の構成を
示すブロック図、
【図5】第3実施例の演算装置の第2オーバーフロー検
出手段を示すブロック図、
【図6】第3実施例の演算装置の最大値最小値設定手段
を示すブロック図、
【図7】従来の演算装置の構成を示すブロック図、
【図8】従来の演算装置のオーバーフロー検出手段の構
成を示すブロック図、
【図9】従来の演算装置の最大値最小値設定手段の構成
を示すブロック図である。
【符号の説明】
1、2 メモリ 3、4 バス 5 ALU 6、14 オーバーフロー検出手段 7 キャリーフラグレジスタ 8 最大値最小値設定手段 9、10 レジスタ 11、15 オーバーフロー検出信号 12、16 オーバーフロー符号信号 13 補正値設定手段 81、82 最大値最小値出力素子 83、84 マルチプレクサ

Claims (20)

    (57)【特許請求の範囲】
  1. 【請求項1】 倍精度データの上位桁の演算結果を記憶
    する第1のレジスタと、倍精度データの下位桁の演算結
    果を記憶する第2のレジスタと、演算結果のオーバーフ
    ローを検出するオーバーフロー検出手段と、該オーバー
    フロー検出手段の検出結果に基づいて前記第1のレジス
    タに最大値または最小値を出力する最大値最小値設定手
    段とを備えた演算装置において、 前記オーバーフロー検出手段の検出結果に基づいて前記
    第2のレジスタの出力値を全ビットが0または1のデー
    タに設定する補正手段を設けたことを特徴とする演算装
    置。
  2. 【請求項2】 倍精度データの上位桁の演算と下位桁の
    演算とを複数回に分けて行なう倍精度データの演算方法
    において、 倍精度データの上位桁の演算に際して、演算結果のオー
    バーフローを検出し、該オーバーフローの検出結果に基
    づいて、前記上位桁の演算結果を最大値または最小値に
    設定するとともに、前記下位桁の演算結果を全ビットが
    0または1のデータに設定することを特徴とする演算方
    法。
  3. 【請求項3】 1つの演算器が扱うデータのビット幅に
    複数のデータを含めて、メモリから同時に読み出した複
    数のデータに対する複数の演算を並列に行い、 前記複数の演算のそれぞれでのオーバーフローの有無に
    応じて、前記複数の演算のそれぞれの結果として最大値
    または最小値を出力する 演算装置。
  4. 【請求項4】 前記演算装置は、さらに、 1つの演算器によって演算しようとするデータのビット
    幅と等しいデータに対する演算を行い、 前記ビット幅と等しいデータに対する演算でのオーバー
    フローの有無に応じて、前記ビット幅と等しいデータに
    対する演算の結果として最大値または最小値を出力する
    処理が可能であり、 前記複数のデータまたは前記ビット幅と等しいデータに
    対する演算を選択できる請求項3記載の 演算装置。
  5. 【請求項5】 前記複数の演算の結果は、1つのレジス
    タに格納される請求 項3または4記載の演算装置。
  6. 【請求項6】 前記複数のデータに対する演算の結果と
    前記ビット幅と等しいデータに対する演算の結果とは同
    じレジスタに格納され、 前記複数のデータに対する演算を行う場合は下位側の前
    記演算の結果に基づいてオーバーフローの有無を判断
    し、オーバーフローが発生したときは前記下位側の演算
    結果として最大値または最小値を前記レジスタの下位側
    に格納し、 前記ビット幅と等しいデータに対する演算を行う場合は
    前記ビット幅と等しいデータに対する演算の結果に基づ
    いてオーバーフローの有無を判断し、オーバーフローが
    発生したときは前記ビット幅と等しいデータに対する演
    算結果として最大値または最小値の下位側を前記レジス
    タの下位側に格納することを特徴とする請求項4記載の
    演算装置
  7. 【請求項7】 レジスタに格納する複数の演算結果を得
    るための複数の演算を並列に行い、 前記複数の演算のそれぞれでのオーバーフローの有無に
    応じて、前記複数の演算のそれぞれの結果としての最大
    値または最小値の格納と、 前記レジスタに格納する1つの演算結果を得るための演
    算を行い、 前記1つの演算結果を得るための演算でのオーバーフロ
    ーの有無に応じて、前記1つの演算結果を得るための演
    算の結果としての最大値または最小値の格納とのいずれ
    かの演算が可能であり、 前記複数の演算を行う場合は下位側の前記複数の演算の
    結果に基づいてオーバーフローの有無を判断し、オーバ
    ーフローが発生したときは前記下位側の演算結果として
    最大値または最小値を前記レジスタの下位側に格納し、 前記1つの演算結果を得るための演算を行う場合は前記
    1つの演算の結果に基づいてオーバーフローの有無を判
    断し、オーバーフローが発生したときは前記1つのデー
    タに対する演算結果として最大値または最小値の下位側
    を前記レジスタの下位側に格納することを特徴とする演
    算装置
  8. 【請求項8】 前記1つの演算器が扱うデータのビット
    幅とは、前記複数のデータに対する演算の結果を格納す
    る1つのレジスタのビット幅に等しいことを 特徴とする
    請求項6記載の演算装置
  9. 【請求項9】 前記最大値は正の最大値であり、前記最
    小値は負の最小値である請求項3から8のいずれかに記
    載の演算装置
  10. 【請求項10】 前記最大値または最小値は前記演算の
    ビット幅で設定される請求項3から8のいずれかに記載
    の演算装置
  11. 【請求項11】 請求項3から10のいずれかに記載の
    演算装置を内蔵する機器組込み用のDSP
  12. 【請求項12】 1つの演算器が扱うデータのビット幅
    に複数のデータを含めて、メモリから同時に読み出した
    複数のデータに対する複数の演算を並列に行い、 前記複数の演算のそれぞれでのオーバーフローの有無に
    応じて、前記複数の演算のそれぞれの結果として最大値
    または最小値を出力する演算方法
  13. 【請求項13】 前記演算方法は、さらに、 1つの演算器によって演算しようとするデータのビット
    幅と等しいデータに対する演算を行い、 前記ビット幅と等しいデータに対する演算でのオーバー
    フローの有無に応じて、前記ビット幅と等しいデータに
    対する演算の結果として最大値または最小値を出力する
    処理が可能であり、 前記複数のデータまたは前記ビット幅と等しいデータに
    対する演算を選択できる請求項12記載の演算方法。
  14. 【請求項14】 前記複数の演算の結果は、1つのレジ
    スタに格納される請求項12または13記載の演算方
    法。
  15. 【請求項15】 前記複数のデータに対する演算の結果
    と前記ビット幅と等しいデータに対する演算の結果とは
    同じレジスタに格納され、 前記複数のデータに対する演算を行う場合は下位側の前
    記演算の結果に基づいてオーバーフローの有無を判断
    し、オーバーフローが発生したときは前記下位側の演算
    結果として最大値または最小値を前記レジスタの下位側
    に格納し、 前記ビット幅と等しいデータに対する演算を行う場合は
    前記ビット幅と等しいデータに対する演算の結果に基づ
    いてオーバーフローの有無を判断し、オーバー フローが
    発生したときは前記ビット幅と等しいデータに対する演
    算結果として最大値または最小値の下位側を前記レジス
    タの下位側に格納することを特徴とする請求項13記載
    の演算方法。
  16. 【請求項16】 レジスタに格納する複数の演算結果を
    得るための複数の演算を並列に行い、 前記複数の演算のそれぞれでのオーバーフローの有無に
    応じて、前記複数の演算のそれぞれの結果としての最大
    値または最小値の格納と、 前記レジスタに格納する1つの演算結果を得るための演
    算を行い、 前記1つの演算結果を得るための演算でのオーバーフロ
    ーの有無に応じて、前記1つの演算結果を得るための演
    算の結果としての最大値または最小値の格納とのいずれ
    かの演算が可能であり、 前記複数の演算を行う場合は下位側の前記複数の演算の
    結果に基づいてオーバーフローの有無を判断し、オーバ
    ーフローが発生したときは前記下位側の演算結果として
    最大値または最小値を前記レジスタの下位側に格納し、 前記1つの演算結果を得るための演算を行う場合は前記
    1つの演算の結果に基づいてオーバーフローの有無を判
    断し、オーバーフローが発生したときは前記1つのデー
    タに対する演算結果として最大値または最小値の下位側
    を前記レジスタの下位側に格納することを特徴とする演
    算方法。
  17. 【請求項17】 前記1つの演算器が扱うデータのビッ
    ト幅とは、前記複数のデータに対する演算の結果を格納
    する1つのレジスタのビット幅に等しいことを特徴とす
    る請求項15記載の演算方法。
  18. 【請求項18】 前記最大値は正の最大値であり、前記
    最小値は負の最小値である請求項12から17のいずれ
    かに記載の演算方法。
  19. 【請求項19】 前記最大値または最小値は前記演算の
    ビット幅で設定される請求項12から17のいずれかに
    記載の演算方法。
  20. 【請求項20】 請求項3から10のいずれかに記載の
    演算装置を用いてACS演算を行うビタビ復号処理手段
    を備えたディジタル携帯電話。
JP13085694A 1993-11-12 1994-05-23 演算装置及び演算方法 Expired - Lifetime JP3487903B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP13085694A JP3487903B2 (ja) 1993-11-12 1994-05-23 演算装置及び演算方法
US08/339,202 US5508951A (en) 1993-11-12 1994-11-10 Arithmetic apparatus with overflow correction means

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP5-306054 1993-11-12
JP30605493 1993-11-12
JP13085694A JP3487903B2 (ja) 1993-11-12 1994-05-23 演算装置及び演算方法

Publications (2)

Publication Number Publication Date
JPH07182141A JPH07182141A (ja) 1995-07-21
JP3487903B2 true JP3487903B2 (ja) 2004-01-19

Family

ID=26465872

Family Applications (1)

Application Number Title Priority Date Filing Date
JP13085694A Expired - Lifetime JP3487903B2 (ja) 1993-11-12 1994-05-23 演算装置及び演算方法

Country Status (2)

Country Link
US (1) US5508951A (ja)
JP (1) JP3487903B2 (ja)

Families Citing this family (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3105738B2 (ja) * 1994-06-10 2000-11-06 日本電気株式会社 情報処理装置
US7301541B2 (en) * 1995-08-16 2007-11-27 Microunity Systems Engineering, Inc. Programmable processor and method with wide operations
JPH0997178A (ja) * 1995-09-29 1997-04-08 Matsushita Electric Ind Co Ltd 飽和演算処理装置および方法
EP1306752A1 (en) * 1996-11-29 2003-05-02 Matsushita Electric Industrial Co., Ltd. Processor which can favourably execute a rounding process
KR100236533B1 (ko) * 1997-01-16 2000-01-15 윤종용 배럴 쉬프터와 산술논리 연산기가 연결되어 있는 디지탈 신호 처리기 및 그 오버플로 검출방법
US5905661A (en) * 1997-06-23 1999-05-18 Sun Microsystems, Inc. Method for handling an overflow condition in a processor
US5887181A (en) * 1997-06-23 1999-03-23 Sun Microsystems, Inc. Method and apparatus for reducing a computational result to the range boundaries of an unsigned 8-bit integer in case of overflow
US5901306A (en) * 1997-06-23 1999-05-04 Sun Microsystems, Inc. Method and apparatus for reducing a computational result to the range boundaries of a signed 8-bit integer in case of overflow
US5870320A (en) * 1997-06-23 1999-02-09 Sun Microsystems, Inc. Method for reducing a computational result to the range boundaries of a signed 16-bit integer in case of overflow
GB2342730B (en) * 1998-06-19 2003-02-19 Lsi Logic Corp Digital processing
JP3853981B2 (ja) * 1998-07-02 2006-12-06 株式会社東芝 半導体記憶装置の製造方法
US6535900B1 (en) * 1998-09-07 2003-03-18 Dsp Group Ltd. Accumulation saturation by means of feedback
US6529930B1 (en) * 1998-11-16 2003-03-04 Hitachi America, Ltd. Methods and apparatus for performing a signed saturation operation
US6598066B1 (en) 2000-05-23 2003-07-22 Sun Microsystems, Inc. Fast carry-out generation
JP2002063151A (ja) * 2000-08-22 2002-02-28 Mitsubishi Electric Corp マイクロコンピュータ
US7206800B1 (en) * 2000-08-30 2007-04-17 Micron Technology, Inc. Overflow detection and clamping with parallel operand processing for fixed-point multipliers
EP1387259B1 (en) * 2002-07-31 2017-09-20 Texas Instruments Incorporated Inter-processor control
US7149766B1 (en) * 2002-11-12 2006-12-12 Unisys Corporation Methods for detecting overflow and/or underflow in a fixed length binary field
JP2008102715A (ja) * 2006-10-18 2008-05-01 Toshiba Corp 演算装置
US20100023733A1 (en) * 2008-04-15 2010-01-28 Vns Portfolio Llc Microprocessor Extended Instruction Set Precision Mode
US8539015B2 (en) * 2008-08-01 2013-09-17 Hewlett-Packard Development Company, L.P. Performing a binary coded decimal (BCD) calculation
US8549264B2 (en) 2009-12-22 2013-10-01 Intel Corporation Add instructions to add three source operands
GB2580130B (en) * 2018-12-21 2021-02-24 Graphcore Ltd Overflow condition

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6211933A (ja) * 1985-07-09 1987-01-20 Nec Corp 演算回路
JP2600293B2 (ja) * 1988-06-10 1997-04-16 日本電気株式会社 オーバーフロー補正回路
JPH04167170A (ja) * 1990-10-31 1992-06-15 Sanyo Electric Co Ltd 乗加算演算回路

Also Published As

Publication number Publication date
US5508951A (en) 1996-04-16
JPH07182141A (ja) 1995-07-21

Similar Documents

Publication Publication Date Title
JP3487903B2 (ja) 演算装置及び演算方法
JPH05216624A (ja) 演算装置
US5957996A (en) Digital data comparator and microprocessor
KR20060057574A (ko) 예비 포화 검사로 가산 또는 감산을 위한 산술 유닛 및 그방법
JPS62191926A (ja) 演算装置
JPH0413735B2 (ja)
JPH09222991A (ja) 加算方法および加算器
US6615228B1 (en) Selection based rounding system and method for floating point operations
JPH09128213A (ja) ブロックフローティング処理システムおよび方法
JPH07146777A (ja) 演算装置
KR100241071B1 (ko) 합과 합+1을 병렬로 생성하는 가산기
JP3237267B2 (ja) 演算装置
JP2705162B2 (ja) 演算処理装置
US6643677B2 (en) Digital arithmetic integrated circuit
JP2508286B2 (ja) 平方根演算装置
JP3137131B2 (ja) 浮動小数点乗算器及び乗算方法
JPS62259140A (ja) アドレス生成回路
KR100259095B1 (ko) 정규화 기능을 갖는 가산기
JP2624738B2 (ja) 丸め処理方式
KR0154934B1 (ko) 개선된 2의 보수회로
JP2998324B2 (ja) 正規化シフト装置および正規化シフト方法
JPH0750596A (ja) 符号化装置及び符号化方法
JP2000137701A (ja) 積和演算誤差補正方法及び積和演算装置
JPH05150946A (ja) 演算装置
JPS6126136A (ja) 浮動小数点加算回路の桁合わせ回路

Legal Events

Date Code Title Description
FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20071031

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20081031

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20091031

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20091031

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20101031

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111031

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121031

Year of fee payment: 9

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131031

Year of fee payment: 10

EXPY Cancellation because of completion of term