JPH0764768A - 絶対値累積加算装置 - Google Patents

絶対値累積加算装置

Info

Publication number
JPH0764768A
JPH0764768A JP5235346A JP23534693A JPH0764768A JP H0764768 A JPH0764768 A JP H0764768A JP 5235346 A JP5235346 A JP 5235346A JP 23534693 A JP23534693 A JP 23534693A JP H0764768 A JPH0764768 A JP H0764768A
Authority
JP
Japan
Prior art keywords
adder
value
data
input
cumulative
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
JP5235346A
Other languages
English (en)
Inventor
Takashi Katsuyama
隆史 勝山
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.)
Oki Electric Industry Co Ltd
Original Assignee
Oki Electric Industry 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 Oki Electric Industry Co Ltd filed Critical Oki Electric Industry Co Ltd
Priority to JP5235346A priority Critical patent/JPH0764768A/ja
Publication of JPH0764768A publication Critical patent/JPH0764768A/ja
Pending legal-status Critical Current

Links

Abstract

(57)【要約】 【目的】 絶対値の累積加算を実行する場合に、負の数
が多い場合でも全体として累積加算にかかる時間を十分
に短くする。 【構成】 入力するデータ1が正の数である場合には従
来と同様の動作で加算器14により1回で累積加算処理
を行なう。また、入力するデータが負の数である場合に
は、通常の構成の加算器14によってその全てのビット
を反転した値と累積値とキャリーとを1回で加算処理し
てしまう。全てのビットを反転し、キャリーの“1”を
加算すると負の数の絶対値が得られる。従って、入力す
る値の正負に関わらず、その累積加算処理速度は同様に
なり、高速演算が可能となる。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、情報処理装置において
入力データの絶対値を累積加算し、その結果を得るため
の演算に用いられる絶対値累積加算装置に関する。
【0002】
【従来の技術】例えば、画像処理の分野において、画像
中のある1点とその周辺にあるいくつかの点との間の距
離を累積加算するような場合、各点のX、Y座標につい
て、それぞれその差の絶対値を求め、加算器等を用いて
累積加算することが行なわれる。この目的のために、絶
対値累積加算装置が使用される。図2に、従来の絶対値
累積加算装置ブロック図を示す。この装置は、データ1
を直接受け入れるセレクタ2と、データ1の補数を得る
インバータ3及び加算器4と、データ1の符号を判定す
る符号判定部5と、累積加算を行なう加算器6及び累積
値記憶部7から構成される。
【0003】一般のコンピュータでは、符号付きの数字
を取り扱うために、数値を2の補数で表現することが行
なわれる。このような数値については、正の数であれば
そのまま、負の数であればこの値を論理反転し、“1”
を加算することによって絶対値が得られる。図2に示し
たセレクタ2は、一方の入力端子に値が正のデータ1を
そのまま受け入れると共に、データ1が負である場合の
ために、インバータ3によってこれを論理反転し、加算
器4で“1”を加算したものを、他方の端子に受け入れ
る構成とされている。
【0004】セレクタ2の入力のいずれを選択するか
は、符号判定部5の出力による。2の補数で表現された
数値については、例えばその最上位ビットが“0”であ
る場合には正の数、“1”の場合には負の数と判定する
ことができる。符号判定部5は、そのような判定結果を
セレクタ2に入力し、正の数の場合にはデータ1を直接
受け入れて出力し、負の数の場合は加算器4の出力を受
け入れて出力する制御を行なう。
【0005】加算器6はA端子にセレクタ2の出力を受
け入れ、B端子に累積値記憶部7の出力を受け入れる構
成となっている。累積値記憶部7は加算器6の出力を受
け入れて保持するレジスタから構成される。従って、例
えば初期状態では累積値記憶部7の内容は“0”であっ
て、加算器6のA端子に入力する値と、B端子に入力す
る値“0”とが加算されて累積値記憶部7に記憶され
る。その後は、前回に得られた累積値がB端子に入力
し、今回入力する値の絶対値がA端子に入力し、これが
加算器6によって加算されて出力される。こうして、デ
ータ1の絶対値の累積値8がこの回路から出力されるこ
とになる。
【0006】
【発明が解決しようとする課題】ところで、上記のよう
な従来の絶対値累積加算装置には次のような解決すべき
課題があった。図2に示す装置では、入力するデータ1
が正の数の場合にはデータ1がセレクタ2を通過し、直
ちに加算器6に入力して累積加算処理が実行される。し
かしながら、入力したデータ1が負の数の場合には、一
旦加算器4において絶対値を求めるための演算処理が実
行される。その後、その結果がセレクタ2を通じて加算
器6に入力し、累積値記憶部7の出力と共に累積加算処
理が実行される。
【0007】このように、正の数については1台の加算
器6が処理を行ない、負の数については2台の加算器4
と6が順に1回ずつ加算処理を行なうことから、負の数
の加算処理には正の数の加算処理の2倍近い時間がかか
る。従って、入力するデータ1に負の数が多く含まれて
いるような場合、累積加算結果を得るための時間が非常
に長くなるという問題があった。特に、画像処理のよう
な場合、画像中の1点とその周辺にある多数の点との間
の距離を累積加算しようとすると、入力する負の数は正
の数と同等程度になり、しかもデータ量は膨大なため、
演算処理時間はとても無視できない長時間となる。
【0008】本発明は以上の点に着目してなされたもの
で、絶対値の累積加算を実行する場合に、負の数が多い
場合でも全体として累積加算にかかる時間を十分に短く
することができる絶対値累積加算装置を提供することを
目的とするものである。
【0009】
【課題を解決するための手段】本発明の絶対値累積加算
装置は、2の補数で表現される任意の整数値から成るデ
ータを順に受け入れて、これらのデータの絶対値を加算
器によって累積加算するものにおいて、入力したデータ
の正負を判定し、入力したデータが負の数の場合に、前
記加算器に値が1のキャリーを供給する符号判定部と、
入力したデータが正の数の場合はそのままそのデータを
前記加算器に送り、負の数の場合はそのデータを構成す
る全てのビットを反転して前記加算器に送る論理反転部
と、前記加算器の出力する加算結果を記憶する累積値記
憶部とを備え、前記加算器は、前記論理反転部と累積記
憶部の出力とキャリーを受け入れて加算して新たな累積
値を得ることを特徴とするものである。
【0010】
【作用】この装置では、入力するデータが正の数である
場合には従来と同様の動作で累積加算処理を行なう。ま
た、入力するデータ位置が負の数である場合には、通常
の構成の加算器によってその全てのビットを反転した値
と累積値とキャリーとを1回で加算処理してしまう。全
てのビットを反転し、キャリーの“1”を加算すると負
の数の絶対値が得られる。従って、入力する値の正負に
関わらず、その累積加算処理速度は同様になり、高速演
算が可能となる。
【0011】
【実施例】以下、本発明を図の実施例を用いて詳細に説
明する。図1は、本発明の絶対値累積加算装置実施例を
示すブロック図である。この装置は、データ1を受け入
れる論理反転部11と、データ1の符号を判定する符号
判定部12と、この符号判定部12の出力からキャリー
を生成するキャリー生成部13と、累積加算処理を実行
する加算器14及び累積値記憶部15から構成されてい
る。
【0012】本発明の装置においても、この累積加算に
使用されるデータは2の補数で表現される任意の整数値
とする。論理反転部11は、入力するデータ1が正の数
の場合にはこれをそのまま出力し、負の数の場合には全
てのビットを反転して出力する動作を行なう回路であ
る。この論理反転部11は、符号判定部12の出力を受
け入れて、正の数が入力した場合と負の数が入力した場
合との処理を切り換える構成となっている。なお、その
詳細は後で図4を用いて説明する。
【0013】符号判定部12は、入力したデータの正負
を判定し、例えば入力したデータが正の場合には
“0”、負の場合には“1”というデータを出力する回
路から構成される。この回路構成の具体例等は、後で図
3を用いて説明する。キャリー生成部13は、符号判定
部12の出力を受け入れて、加算器14に対しキャリー
を出力する回路から構成される。これは、例えば符号判
定部12の出力を受け入れて加算器14の動作中、その
値を保持する1ビットのレジスタ等から構成される。
【0014】加算器14は、従来装置に使用されている
ものと同様の構成で、A端子及びB端子に入力する数値
を加算してY端子に出力する構成のものである。なお、
この加算器14は、キャリーが入力すると、その最下位
ビットに“1”を加える動作を行なう。即ち、キャリー
を下位の加算器の桁上げ信号として受け入れ、実質的に
最下位ビットに“1”を加算する処理を加算処理と同時
に実行する構成となっている。この機能は従来の加算器
に備わったものをそのまま利用する。
【0015】累積値記憶部15は、加算器14の出力を
受け入れて保持するレジスタ等から構成される。上記の
ような構成によって、新たなデータ1が次々とこの回路
に入力すると、累積値8が得られる構成となっている。
なお、加算器14のこのような動作によって、加算器1
4は見かけ上A端子に入力するデータとB端子に入力す
るデータとを加算すると共に、これに“1”を加算する
動作を一挙に行なうという効果が得られる。
【0016】図3に、本発明の装置の具体例結線図を示
す。本発明の装置の動作を具体的な結線図を用いて更に
詳細に説明する。この実施例では、入力するデータが2
の補数で表現される整数であって、8ビットのデータ幅
を持つものとする。この8ビットで表されるデータは、
「10000000」の「−128」から「11111
111」の「−1」までの負の数と、「0000000
0」から「01111111」の「127」までの整数
を表すことができる。
【0017】このように2の補数で表現されるデータの
場合、その最上位ビットはデータの正負を表す符号とな
る。即ち、最上位ビットが“0”の場合は正、“1”の
場合は負の数を表している。なお、この図ではIN
[7:0]は8ビット全てのデータを示し、IN[7]
というのはデータの最上位ビットを示している。
【0018】この実施例では、入力データの全てのビッ
トを受け入れる論理反転回路21と、その出力側の8ビ
ットのデータを受け入れ累積加算処理を行なう加算器1
4と、加算器14の出力する8ビットのデータを受け入
れて保持する累積値保持レジスタ25とが設けられてい
る。論理反転回路21の出力は加算器14のA端子に入
力し、累積値保持レジスタ25の出力は加算器14のB
端子に入力する構成となっている。また、入力するデー
タの最上位ビットIN[7]は、加算器14のキャリー
としてそのまま入力する構成となっている。
【0019】即ち、この実施例では、入力するデータの
最上位ビットがそのまま論理反転回路21の制御に使用
され、かつ加算器14のキャリーとして使用されるた
め、符号判定やキャリー生成のための回路素子は設けて
いない。即ち、入力データの一部を加算器14に入力す
るためのラインがそのまま符号判定部及びキャリー生成
部として機能することになる。また、論理反転回路21
に符号判定部から入力すべき信号は、論理反転回路21
の内部で分岐される構成となっている。
【0020】図4に、このような論理反転回路の具体的
なブロック図を示す。図に示すように、この回路には8
個のイクスクルーシブオア(排他的論理和)ゲート20
−0〜20−7が設けられている。ここで、入力するデ
ータの各ビットは、それぞればらばらに分離され、下位
7ビットはイクスクルーシブオアゲート20−0〜20
−6にそれぞれ入力し、上位ビットIN[7]は全ての
イクスクルーシブオアゲート20−0〜20−7のもう
一方の入力端子に入力する構成となっている。最上位ビ
ットを受け入れるイクスクルーシブオアゲート20−7
には、最上位ビットIN[7]が両方の入力端子に入力
する構成となっている。
【0021】以上のようなイクスクルーシブオアゲート
の動作は従来よりよく知られたもので、制御信号として
入力する最上位ビットIN[7]が“0”の場合には、
もう一方の端子に入力する8ビットの信号がそのまま出
力として取り出され、制御信号が“1”の場合には入力
する信号が全て論理反転して出力される。
【0022】一方、加算器14にキャリーが入力する
と、その加算結果の最下位ビットに“1”が加算される
ことは先に説明したとおりである。従って、本発明の装
置では、加算器14の入力データが正の場合にはA端子
に入力した信号とB端子に入力した信号とがそのまま加
算されて累積値となる。一方、入力データが負の数の場
合にはその数値の全てのビットを論理反転し、キャリー
によって最下位ビットに“1”を加算することによって
その絶対値を得ると共に、B端子に入力する累積値との
加算処理が同時に実行される。
【0023】従って、実質的に、図2に示した従来装置
と同様、負の数の場合についてもその絶対値を求めて累
積加算処理が行なわれる。しかも、本発明の装置ではこ
のような処理を1台の加算器14によって同時に実行す
ることから、負の数が入力した場合でも正の数が入力し
た場合と同様の時間で累積加算処理が行なわれる。
【0024】図5に、本発明の装置の具体的な動作説明
図を示す。図は、上記の図3に示す回路に時刻T1から
T7の間に次々に入力するデータの累積値加算処理を行
なった結果の出力を示している。この図の横方向には、
入力されたデータと、論理反転回路の出力と、累積値保
持レジスタ25に格納された前回までの累積値と、キャ
リーの内容と、加算器14の出力を示している。なお、
この表には8ビットの2進数字の他に()でくくって1
0進数表現を併せて表示している。
【0025】まず、時刻T1に10進数で値が“1”の
データが入力すると、この値は正の値のため、論理反転
回路21をそのまま通過して加算器14に入力する。こ
の累積処理は初回のため、累積値保持レジスタ25の内
容は“0”である。また、入力データが正なのでキャリ
ーは“0”である。従って、加算器14は入力した値
“1”と累積値“0”とを加算し、“1”という出力を
得る。
【0026】次の時刻T2には、10進数にして−5の
数値のデータが入力する。入力データが負の値のため、
入力されたデータが全て反転され、論理反転回路21か
ら出力される。従って、その値を10進数に直すと
“4”となる。累積値保持レジスタ25に格納された前
回の累積結果は“1”である。また、入力したデータが
負の数であるため、キャリーは“1”となる。加算器1
4にはA端子に“4”、B端子に“1”の値が入力す
る。その結果、加算器14の加算結果は“5”となる
が、キャリーが“1”であって、これが最下位ビットに
加算されるため、結果的に“4”と“1”と“1”を加
算した値“6”が出力として得られる。
【0027】これは、丁度入力したデータ“−5”の絶
対値と累積値“1”との加算値に等しくなる。時刻T3
では、10進数にして“−18”という値がデータとし
て入力する。これが負の数であることから、論理反転回
路21で全てのビットが反転され、値が“17”となっ
て加算器14に入力する。前回までの累積値は“6”で
あって、キャリーが“1”として入力するから、加算器
14の出力は“24”となる。以下、時刻T4から時刻
T6まで同様の処理が実行される。そして時刻T7に、
累積値保持レジスタ25から最終的な累積値が得られ、
外部回路に出力される。
【0028】本発明は以上の実施例に限定されない。上
記実施例では、入力されるデータが8ビットの例を示し
たが、そのビット数は任意で構わない。この場合には、
論理反転回路や、加算器、累積値保持レジスタ等の構成
を変更すればよい。また、上記実施例では入力されたデ
ータの符号判定のためにそのデータの最上位ビットを直
接利用するようにしたが、例えばこの回路に入力する前
にデータを処理した他の演算器の出力する符号フラグ等
を利用してもよい。また、よく知られたその他の処理で
データの符号を判定し、論理反転部の動作を制御した
り、加算器にキャリーを入力させるようにすればよい。
【0029】
【発明の効果】以上説明した本発明の絶対値累積加算装
置は、2の補数で表現される任意の整数値についてその
絶対値を加算器によって累積加算する場合に、入力した
データの正負を判定して、入力したデータが負の数の場
合に値が“1”のキャリーを供給する符号判定部と、値
が負の場合に全てのビットを反転して加算器に送る論理
判定部と、加算器の出力結果を記憶する累積値記憶部と
を設けるようにし、加算器において論理反転部の出力と
累積値記憶部の出力とを正負判定部から入力されたキャ
リーとを受け入れて加算処理するので、1台の加算器に
より正の数も負の数も一挙に絶対値の累積加算を実行す
ることができる。これにより、この種の演算処理の高速
化を図り、画像処理等の情報処理装置についてその全体
的な演算速度を早めることができる。
【図面の簡単な説明】
【図1】本発明の絶対値累積加算装置ブロック図であ
る。
【図2】従来の絶対値累積加算装置ブロック図である。
【図3】本発明の装置の具体例結線図である。
【図4】論理反転回路結線図である。
【図5】本発明の装置の具体的な動作説明図である。
【符号の説明】 1 データ 8 累積値 11 論理反転部 12 符号判定部 13 キャリー生成部 14 加算器 15 累積値記憶部

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】 2の補数で表現される任意の整数値から
    成るデータを順に受け入れて、これらのデータの絶対値
    を加算器によって累積加算するものにおいて、 入力したデータの正負を判定し、入力したデータが負の
    数の場合に、前記加算器に値が1のキャリーを供給する
    符号判定部と、 入力したデータが正の数の場合はそのままそのデータを
    前記加算器に送り、負の数の場合はそのデータを構成す
    る全てのビットを反転して前記加算器に送る論理反転部
    と、 前記加算器の出力する加算結果を記憶する累積値記憶部
    とを備え、 前記加算器は、前記論理反転部と累積記憶部の出力とキ
    ャリーを受け入れて加算して新たな累積値を得ることを
    特徴とする絶対値累積加算装置。
JP5235346A 1993-08-27 1993-08-27 絶対値累積加算装置 Pending JPH0764768A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP5235346A JPH0764768A (ja) 1993-08-27 1993-08-27 絶対値累積加算装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP5235346A JPH0764768A (ja) 1993-08-27 1993-08-27 絶対値累積加算装置

Publications (1)

Publication Number Publication Date
JPH0764768A true JPH0764768A (ja) 1995-03-10

Family

ID=16984735

Family Applications (1)

Application Number Title Priority Date Filing Date
JP5235346A Pending JPH0764768A (ja) 1993-08-27 1993-08-27 絶対値累積加算装置

Country Status (1)

Country Link
JP (1) JPH0764768A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5983250A (en) * 1997-05-26 1999-11-09 Oki Electric Industry Co., Ltd. Arithmetic circuit for obtaining absolute-valued distance

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5983250A (en) * 1997-05-26 1999-11-09 Oki Electric Industry Co., Ltd. Arithmetic circuit for obtaining absolute-valued distance

Similar Documents

Publication Publication Date Title
US6009451A (en) Method for generating barrel shifter result flags directly from input data
JPH05216624A (ja) 演算装置
JPH07210369A (ja) 並列加算および平均演算を行うための回路およびその方法
US4648059A (en) N-bit magnitude comparator
JPH0568725B2 (ja)
JPH0764768A (ja) 絶対値累積加算装置
EP0442220B1 (en) Decoder
JP2664750B2 (ja) 演算装置及び演算処理方法
JP2575856B2 (ja) 演算回路
JPH0435777B2 (ja)
JPH0736149B2 (ja) シフトフラグ生成回路
JP3139011B2 (ja) 固定小数点プロセッサ
JP3205020B2 (ja) 演算装置
JP3331682B2 (ja) 演算装置
JP2953405B2 (ja) 論理シミュレーションの高速化方法及び論理シミュレーション装置
JPH03118632A (ja) 算術論理演算回路
JP2001034457A (ja) 加減算回路
JPH04148231A (ja) 演算回路
JPH02239325A (ja) 除算回路
JPS62211729A (ja) デ−タ演算装置
JPH03255524A (ja) 加算回路
JPH04246722A (ja) 加減算器
JPH01237831A (ja) 除算装置
JPH01232429A (ja) 乗算結果丸め方式
JPH06301516A (ja) 半導体集積回路