JPS63168772A - 累算器 - Google Patents

累算器

Info

Publication number
JPS63168772A
JPS63168772A JP62001408A JP140887A JPS63168772A JP S63168772 A JPS63168772 A JP S63168772A JP 62001408 A JP62001408 A JP 62001408A JP 140887 A JP140887 A JP 140887A JP S63168772 A JPS63168772 A JP S63168772A
Authority
JP
Japan
Prior art keywords
adder
data
input
output
bit
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
JP62001408A
Other languages
English (en)
Other versions
JPH05738B2 (ja
Inventor
Takashi Yoshida
隆 吉田
Akira Ichinose
彰 一瀬
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.)
Yokogawa Electric Corp
Original Assignee
Yokogawa 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 Yokogawa Electric Corp filed Critical Yokogawa Electric Corp
Priority to JP62001408A priority Critical patent/JPS63168772A/ja
Publication of JPS63168772A publication Critical patent/JPS63168772A/ja
Publication of JPH05738B2 publication Critical patent/JPH05738B2/ja
Granted legal-status Critical Current

Links

Landscapes

  • Complex Calculations (AREA)

Abstract

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

Description

【発明の詳細な説明】 く産業上の利用分野〉 この発明は、入力データの語長が長く、かつ1つ前のデ
ータよりも1ビット上位にずれるデータを高速に累梓す
る累算器の改良に関するものである。
〈従来技術〉 数多くのデータを演算処理する場合に、入力データの加
算を高速で実行しなければならない場合が多々ある。こ
のような演算に使用する加算器の構成を第4図に示す。
第4図において、1.2はレジスタであり、加算を実行
する入力データA、Bが入力され、一時的に格納される
。この格納された入力データはその上位ビット部分と下
位ビット部分の2つの部分に分けられ、それぞれ加算器
3.4に入力される。加算器3.4の出力はそれぞれレ
ジスタ5.6に入力され、一時的に保持される。このレ
ジスタ5.6に保持されたデータは加算器7で加算され
、その加算結果はレジスタ8に入力、保持される。この
レジスタ8に保持されたデータが加算結果になる。すな
わち、一般に加算器は演算する語長が長くなると演算速
度が遅くなるので、データをその上位ピット部分と下位
ビット部分に分けて加算器3.4で別々に演算し、加算
器7で合成するようにする。また、各々の加算器の間に
レジスタを挿入し、加算器3.4と加算器7を同時に動
作させ、連続して処理するいわゆるパイプライン処理を
行って処理速度の向上を計うている。FA算を行う場合
はレジスタ2を除いて、レジスタ8の出力を加算器3.
4に入力するようにする。
〈発明が解決すべき問題点〉 しかしながら、この様な加算器で累算を実行すると、処
理速度が低下するという問題点がある。
すなわち、2つの入力データA1Bの加算を行う場合は
加鈴器7でレジスタ5.6のデータの合成を実行するの
と平行して次のデータの部分加算を加算器3.4で実行
出来るが、累算は前の累算結果に新しいデータを加算す
るのであるから、加算器3.4で部分加算を実行する前
に加算器7の演算が終了していなければならない。その
ため、加算器3.4と加算器7を同時に動作させるパイ
プライン処理を実行することが出来ない。
また、加算の順序は加算結果に影響しないので、2つ前
の累算結果と入力データを加算するようにしてパイプラ
イン処理を実行することも出来るが、累算を行う一連の
データと次の累算を行う一連のデータの間にはレジスタ
1にデータを保持してからレジスタ8に演算結果が出て
来るまでの時間をとる必要があり、一連のデータを累算
する処理を何度も行うような演算処理では、動作速度を
向上させることが困難になる。
〈発明の目的〉 この発明の目的は、入力データがその前の入力データに
対して1ビット上位にずれているようなデータの累算を
高速に実行する累算器を提供することにある。
く問題点を解決するための手段〉 前記問題点を解決するために、本発明では入力データを
分割してその上位部分データおよび下位部分データが入
力される第1、第2の加算部と、この第1の加算部の出
力の最下位ピットおよび前記第2の加算部のキャリー出
力が入力されてこれらのデータを加算する第3の加算部
と、前記第1の加算部の出力および前記第2の加算部の
キャリー出力が入力される第4の加算部とを具備し、前
記第1加算器の出力を1ビット下方にシフトしたデータ
および前記第3の加算部のキャリー出力を前記第1の加
算部に入力してこれらのデータおよび分割された入力デ
ータの上位部分を加算すると共に、前記第2の加算部の
出力データを下方に1ビットシフトしたデータの最上位
ピットに前記第3の加算部の出力を追加したデータを前
記第2の加算部に入力してこのデータおよび分割された
入力データの下位部分データとを加算するようにしたも
のである。
〈実施例〉 第1図に本発明に係る累算器の一実施例を示す。
第1図において、10111はそれぞれ第1の加算部お
よび第2の加算部であり、それらの内部には加算器10
1.111およびレジスタ102.112が含まれてい
る。入力データはNビットの長さを有し、その下位Mビ
ットが加算器111の一方の入力端子Aに、上位のN−
Mビットが加算器101一方の入力端子Aに入力される
。加算器101.111の出力はそれぞれレジスタ10
2.112に入力され、保持される。12は第3の加算
部であり、その内部に加算器121およびレジスタ12
2が含まれている。加算器121は1ビットの加算器で
あり、加算器101の出力の最下位ビットおよび加算器
111のキャリー出力G。
がそれぞれその入力端子A1Bに入力される。加F[Z
121のキャリー出力Coおよび出力Yはレジスタ12
2に入力され、保持される。レジスタ122に保持され
たキャリー出力は加算m101のキャリー入力端子Ct
に入力される。また、レジスタ102の出力を下方に1
ビットシフトしたN−M−1ビットのデータは加算器1
01の他方の入力端子Bに入力される。また、レジスタ
112の出力を下方に1ビットシフトしたデータの最上
位ビットにレジスタ122に保持された加n器121の
出力を付加したMビットのデータは加算器111の他方
の入力端子已に入力される。13は第4の加算部であり
、その内部に加算器131およびレジスタ132が含ま
れている。加算器131はN−Mビットの加算器であり
、その一方の入力端子へにはレジスタ102の出力が、
他方の入力端子BにはデータrOJが入力される。また
、そのキャリー入力端子Ctにはレジスタ132の出力
が入力される。レジスタ132には加算器111のキャ
リー出力Goが入力される。出力データはその下位部分
がレジスタ112の出力、上位部分が加算器131の出
力になる。
次にこの実施例の動作を説明する。全体の動作はバイブ
ライン処理が行われ、入力データ生成にに同期して実行
される。すなわち、加算器101゜111、レジスタ1
22の動作および加05121、レジスタ102.11
2の動作はそれぞれ同時に実行され、かつこれらの動作
は引続いて繰返される。この様な構成において、入力デ
ータの上位N−Mビットの累算は第1の加算部10で実
行される。すなわち、加算器101の一方の入力端子A
には入力データの上位N−Mビットの部分データが入力
され、また他方の入力端子Bにはレジスタ102に保持
された、前回までの累算データが入力される。加算器1
01はこれら2つの部分データの加算を実行する。なお
、入力データはその前回データより1ビット上位にずれ
ているので、加算器101にはレジスタ102の出力デ
ータを下方に1ビットずらして桁あわせを行ったデータ
を入力する。また、入力データの下位Mピットの累算は
第2の加算部11で実行する。第2の加算部11は基本
的には第1の加算部10と同じであり、加算器111で
入力データの下位Mビットとそれまでの累算結果を加算
する。入力データとの桁あわせを行うために、レジスタ
112の出力は下方に1ビットシフトして加算器111
に入力する。
加算器101の最下位ビットおよび加算器111のキャ
リー(桁上げ)出力Goの処理は第3の加算部12で行
う。加算器121の入力端子A1Bに入力される加算器
101の出力の最下位ビットおよび加算器111のキャ
リー出力COは入力データのM+1ビットと同じ桁であ
るが、第3の加算器の動作は第1、第2の加算部の動作
と1サイクルずれており、かつ入力データはその前回の
データよりも1ビット上位にずれるので、レジスタ12
2の出力は結局加算器111に入力されるデータの最上
位ピットと同じ桁であり、そのキャリー出力Coは加算
器101に入力されるデータの最下位ビットの桁に一致
する。そのため、レジスタ122の出力を、レジスタ1
12の出力を1ビット下方にシフトしたデータの最上位
ビットとし、またそのキャリー出力を加算器101のキ
ャリー入力端子Ctに加えることによって処理すること
が出来る。第4の加算部は一連の累算するデータの入力
が終り、次の累算するデータ入力が開始されたときに動
作させ、加算器111のキャリーを出力データの上位部
分データの最下位ビットに加えるようにする。これによ
って、一連の連続して入力されるデータの部分累算を入
力データに同期して行うことが出来る。
第2図に他の実施例をしめす。なお、第1図と同じ要素
には同一符号を付し、説明を省略する。
第2図において、14.15.16はマルチプレクサで
あり、2つの入力端子のデータのどちらかを選択する。
マルチプレクサ14.15.16の一方の入力端子には
データ0が入力され、他方の入力端子にはそれぞれレジ
スタ102の出力を1ビット下方にシフトした値、レジ
スタ122に保持されている加算器121のキャリー出
力、レジスタ112の出力を下方に1ビットシシフトし
たデータの最上位ピットにレジスタ122に保持されて
いる加算器121の出力を付加したデータが入力される
。マルチプレクサ14.15.16は累算すべきデータ
の最初でデータOを選択し、以後はそれぞれレジスタ1
02.122.112からのデータを選択する。これに
よって累算の1初でレジスタ102.122.112を
クリヤする必要がなくなるので、より簡単に連続して複
数の累算を実行することが出来る。
第3図にさらに他の実施例を示す。第1図、第2図の実
施例では入力データを2分割して累算したが、入力デー
タの語長が長くなると2分割では加算器の動作速度が遅
くなり、3分割以上に分割する必要がある。第3図実施
例は入力データを3個に分割したものである。なお、第
1図と同じ要素には同一符号を付し、説明を省略する。
第3図において、入力データは3分割されその上位部分
は第1の加算部10に、中間部は加算部17に、下位部
分は第2の加算部11に入力される。第3の加算部20
.21は同12と同じ構成である。
加算部17の構成は第1の加算部10とほぼ同じである
が、その内部の加算器171にはキャリー出力Coがあ
り、第3の加算部20内の加算器201の入力端子Bに
入力される。18.19は第4の加算部13に相当し、
その構成はほぼ同じであるが、加算部19内の加算器1
91にはキャリー出力Coがあり、加算部18内の加算
器181の入力端子已に接続される。動作は第1図実施
例とほぼ同じであるが、第1の加算部10の出力の最下
位ビットおよび加算部17のキャリー出力の処理は第3
の加算部20で、加算部17の出力の最下位ビットと第
2の加算部11のキャリー出力の処理は第3の加算部2
1でおこなう。また、累算の最後において、加算器17
1および111のキャリー出力の処理はそれぞれ加算部
18.19でおこなう。なお、第3図実施例は入力デー
タを3分割した例であるが、加算部17.18;Bよび
第3の加算部20を追加することによって任意の個数に
分割することが出来る。この場合、第4の加算部に相当
する加算部のキャリー出力は加算部18に示すように、
その上位側の加算部内の加算器の入力端子Bに接続する
ようにする。
また、これらの実施例では第2の加算部の出力を下方に
1ビットシフトするときに最下位ビットを切捨てている
が、このビットをシフトレジスタに保持し、最後に出力
データの下位部分に付加するようにしてもよい。また、
第2の加算部11内の加算器111をキャリー人力付き
とし、このキャリ一端子に「1」を入力してこのビット
に対して「まるめ」処理をするようにしてもよい。
なお、第3図実施例において、入力データの分割数を増
すと、最上位部分の第4の加算部に相当する加算部18
の演算時間が累算の周期より長くなる可能性があるが、
適当な所にレジスタを挿入してバイブライン化すればよ
い。
〈発明の効果〉 以上、実施例に基づいて具体的に説明したように、この
発明では入力データがその一つ前の入力データに対して
1ビット上位にずれるデータを累算する累算器において
、入力データの上位ビット部分を第1の加算部、下位ビ
ット部分を第2の加算部で累算し、この第1、第2の加
算部のキャリー出力などの処理を第3の加算部で処理し
、累算の終了時のキャリー出力の処理を第4の加算部で
行うようにした。そのため、キャリー出力の処理を累算
と同時に実行出来、かつ累算の最後のキャリー出力の処
理は専用の第4の加算部で行うので、高速化が可能であ
り、かつ一連の入力データの累算の最後のキャリー出力
の処理は次のデータの入力時に実行できるので、複数の
累算をリアルタイムで実行出来る。
また、拡張が容易であり、入力データを3つ以上に分割
して累算しても処理速度が低下することはなく、さらに
累算の速度を増加することが可能である。
【図面の簡単な説明】
第1図は本発明に係る累算器の構成を示づブロック図、
第2図、第3図は他の実施例を示すブロック図、第4図
は従来の加算器の構成を示すブロック図である。 10・・・第1の加算部、11・・・第2の加算部、1
2.20.21・・・第3の加算部、13・・・第4の
加算部、14〜16・・・マルチプレクサ、17〜19
・・・加算部、101,111,121,131,17
1.181,191・・・加算器、102,112゜1
22.132.・・・レジスタ。

Claims (1)

  1. 【特許請求の範囲】 入力データがその一つ前の入力データに対して1ビット
    上位にずれるデータを累算する累算器において、 入力データを複数の部分に分割し、その上位部分データ
    が入力される第1の加算部と、前記入力データの下位部
    分データが入力される第2の加算部と、前記第1の加算
    部の出力の最下位ビットおよび前記第2の加算部のキャ
    リー出力が入力される第3の加算部と、前記第1の加算
    部の出力および前記第2の加算部のキャリー出力が入力
    される第4の加算部とを有し、前記第1の加算部の出力
    を1ビット下方にシフトしたデータおよび前記第3の加
    算部のキャリー出力を前記第1の加算部に入力すると共
    に、前記第2の加算部の出力を1ビット下方にシフトし
    たデータの最上位ビットに前記第3の加算部の出力を追
    加したデータを前記第2の加算部に入力することを特徴
    とする累算器。
JP62001408A 1987-01-07 1987-01-07 累算器 Granted JPS63168772A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP62001408A JPS63168772A (ja) 1987-01-07 1987-01-07 累算器

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP62001408A JPS63168772A (ja) 1987-01-07 1987-01-07 累算器

Publications (2)

Publication Number Publication Date
JPS63168772A true JPS63168772A (ja) 1988-07-12
JPH05738B2 JPH05738B2 (ja) 1993-01-06

Family

ID=11500666

Family Applications (1)

Application Number Title Priority Date Filing Date
JP62001408A Granted JPS63168772A (ja) 1987-01-07 1987-01-07 累算器

Country Status (1)

Country Link
JP (1) JPS63168772A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH03223960A (ja) * 1989-11-30 1991-10-02 Mitsubishi Electric Corp プロセッサ
US5847980A (en) * 1995-09-12 1998-12-08 Matsushita Electric Industrial Co., Ltd. Product-summing arithmetic circuit

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH03223960A (ja) * 1989-11-30 1991-10-02 Mitsubishi Electric Corp プロセッサ
US5847980A (en) * 1995-09-12 1998-12-08 Matsushita Electric Industrial Co., Ltd. Product-summing arithmetic circuit

Also Published As

Publication number Publication date
JPH05738B2 (ja) 1993-01-06

Similar Documents

Publication Publication Date Title
US4168530A (en) Multiplication circuit using column compression
JP3244506B2 (ja) 小型乗算器
JP3729881B2 (ja) 並列加算および平均演算を行うための回路およびその方法
JP3345894B2 (ja) 浮動小数点乗算器
JPS63168772A (ja) 累算器
JPS60140428A (ja) 除算装置
JPH02194430A (ja) 除算器
JPH02109125A (ja) 乗算回路
JP2000020486A (ja) Simd型演算器
US11010159B2 (en) Bit processing involving bit-level permutation instructions or operations
JPS6115233A (ja) 乗算器
GB2337621A (en) Determining a scaling factor
EP0780759A1 (en) Elimination of math overflow flag generation delay in an alu
JPH09505170A (ja) ランタイムの短い乗算器
JP3335653B2 (ja) 零検出回路
JP2629736B2 (ja) 積和演算回路
JPS6285333A (ja) 浮動小数点乗算器丸め処理方式
KR100234031B1 (ko) 산술 가산기
JP2620660B2 (ja) 乗算器
JP3477866B2 (ja) 除算器の除算方法
JP3457082B2 (ja) 演算装置
JPS615345A (ja) 直列乗算方法
JPH05233224A (ja) 並列加算回路
JPS60173915A (ja) デイジタルフイルタ
JP3320767B2 (ja) データ処理装置及びその制御方法