JPH056263A - 加算器およびその加算器を用いた絶対値演算回路 - Google Patents
加算器およびその加算器を用いた絶対値演算回路Info
- Publication number
- JPH056263A JPH056263A JP15502991A JP15502991A JPH056263A JP H056263 A JPH056263 A JP H056263A JP 15502991 A JP15502991 A JP 15502991A JP 15502991 A JP15502991 A JP 15502991A JP H056263 A JPH056263 A JP H056263A
- Authority
- JP
- Japan
- Prior art keywords
- carry
- signal
- adder
- bit
- circuit
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/38—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
- G06F7/48—Methods 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/50—Adding; Subtracting
- G06F7/505—Adding; Subtracting in bit-parallel fashion, i.e. having a different digit-handling circuit for each denomination
- G06F7/506—Adding; Subtracting in bit-parallel fashion, i.e. having a different digit-handling circuit for each denomination with simultaneous carry generation for, or propagation over, two or more stages
- G06F7/507—Adding; Subtracting in bit-parallel fashion, i.e. having a different digit-handling circuit for each denomination with simultaneous carry generation for, or propagation over, two or more stages using selection between two conditionally calculated carry or sum values
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/38—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
- G06F7/48—Methods 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/544—Methods 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 for evaluating functions by calculation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2207/00—Indexing scheme relating to methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F2207/544—Indexing scheme relating to group G06F7/544
- G06F2207/5442—Absolute difference
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computational Mathematics (AREA)
- Mathematical Analysis (AREA)
- Pure & Applied Mathematics (AREA)
- Computing Systems (AREA)
- Mathematical Optimization (AREA)
- General Engineering & Computer Science (AREA)
- Complex Calculations (AREA)
Abstract
(57)【要約】
【構成】入力された2数A,Bに基ずき、桁上げ先見回
路の中間節点の信号であるブロック桁上げ伝播関数Pを
作成する桁上げ伝播信号回路3と、ブロック桁上げ生成
関数Gを作成する桁上げ生成信号回路4とを設ける。桁
上げ入力が0の場合の桁上げc0はブロック桁上げ生成
関数Gと同じ値である。また、桁上げ入力が1の場合の
桁上げc1はブロック桁上げ生成関数Gおよびブロック
桁上げ伝播関数Pの論理和であり、OR回路5で求め
る。これら2組の桁上げと2数A,Bの排他的論理和回
路6,7から2組の和S0,S1を求める。 【効果】桁上げ入力0の場合の和と桁上げ入力1の場合
の和を同時に1つの加算器で求めることにより、2通り
の和を求める加算器のハードウェアを低減することがで
き、しかもこれら2通りの和を必要とする桁上げ選択加
算器や絶対値演算器などに適用することにより、演算器
自体のハードウェアをも低減することができる。
路の中間節点の信号であるブロック桁上げ伝播関数Pを
作成する桁上げ伝播信号回路3と、ブロック桁上げ生成
関数Gを作成する桁上げ生成信号回路4とを設ける。桁
上げ入力が0の場合の桁上げc0はブロック桁上げ生成
関数Gと同じ値である。また、桁上げ入力が1の場合の
桁上げc1はブロック桁上げ生成関数Gおよびブロック
桁上げ伝播関数Pの論理和であり、OR回路5で求め
る。これら2組の桁上げと2数A,Bの排他的論理和回
路6,7から2組の和S0,S1を求める。 【効果】桁上げ入力0の場合の和と桁上げ入力1の場合
の和を同時に1つの加算器で求めることにより、2通り
の和を求める加算器のハードウェアを低減することがで
き、しかもこれら2通りの和を必要とする桁上げ選択加
算器や絶対値演算器などに適用することにより、演算器
自体のハードウェアをも低減することができる。
Description
【0001】
【産業上の利用分野】本発明は加算器およびその加算器
を用いた絶対値演算回路に関し、特にデジタル型の加算
器およびその加算器を用いた絶対値演算回路に関する。
を用いた絶対値演算回路に関し、特にデジタル型の加算
器およびその加算器を用いた絶対値演算回路に関する。
【0002】
【従来の技術】従来、この種の加算器およびその加算器
を用いた絶対値演算回路は、桁上げ選択加算器等が用い
られている。この桁上げ選択加算器等においては、桁上
げ入力が0の時と1の時の2通りの和を必要としてい
る。従来、このような2通りの和を求める場合、2つの
加算器を用いてそれぞれの和を計算している。
を用いた絶対値演算回路は、桁上げ選択加算器等が用い
られている。この桁上げ選択加算器等においては、桁上
げ入力が0の時と1の時の2通りの和を必要としてい
る。従来、このような2通りの和を求める場合、2つの
加算器を用いてそれぞれの和を計算している。
【0003】このような加算器として良く使用されるの
は、桁上げ先見法を用いた加算器である。これは加算す
るnビットの2数、AおよびBの各ビットの値を、a
(n−1),a(n−2),・・・,a1,a0及びb
(n−1),b(n−2),・・・,b1,b0とする
と、その和s(n−1),s(n−2),・・・,s
1,s0と桁上げc(n−1),c(n−2),・・
・,c1,c0は次の(1),(2)式のように計算さ
れる。尚、ここで記号(+)は、排他的論理和を表わす
ものとする。
は、桁上げ先見法を用いた加算器である。これは加算す
るnビットの2数、AおよびBの各ビットの値を、a
(n−1),a(n−2),・・・,a1,a0及びb
(n−1),b(n−2),・・・,b1,b0とする
と、その和s(n−1),s(n−2),・・・,s
1,s0と桁上げc(n−1),c(n−2),・・
・,c1,c0は次の(1),(2)式のように計算さ
れる。尚、ここで記号(+)は、排他的論理和を表わす
ものとする。
【0004】
si=ai(+)bi(+)c(i−1) ………(1)
ci=ai・bi+〔ai(+)bi〕・c(i−1)………(2)
これらの(1),(2)式は、次の(3),(4)式で
表わされる桁上げ生成関数giおよび桁上げ伝播関数p
iを導入すると、 gi=ai・bi ………(3) pi=ai(+)bi ………(4) 次の(5),(6)式のように変形できる。
表わされる桁上げ生成関数giおよび桁上げ伝播関数p
iを導入すると、 gi=ai・bi ………(3) pi=ai(+)bi ………(4) 次の(5),(6)式のように変形できる。
【0005】
si=pi(+)c(i−1) ………(5)
ci=gi+pi・c(i−1) ………(6)
この(5)式から解るように、全てのビットで桁上げc
iを同時に利用できるならば、和siを並列に計算する
ことができる。また(6)式より、桁上げciを、例え
ばc0〜c3について表わすと、(7)乃至(10)式
のように求めることができる。
iを同時に利用できるならば、和siを並列に計算する
ことができる。また(6)式より、桁上げciを、例え
ばc0〜c3について表わすと、(7)乃至(10)式
のように求めることができる。
【0006】
c0=g0+c(−1)・p0 ………(7)
c1=g1+c0・p1
=g1+g0・p1+c(−1)・p0・p1 ………(8)
c2=g2+c1・p2
=g2+g1・p2+g0・p1・p2
+c(−1)・p0・p1・p2 ………(9)
c3=g3+g2・p3+g1・p2・p3+g0・p1・p2・p3
+c(−1)・p0・p1・p2・p3 ………(10)
これらの桁上げciと桁上げ伝播関数piを使えば、
(5)式より和を求めることができる。
(5)式より和を求めることができる。
【0007】図5は従来の一例を説明するための加算器
における桁上げ先見回路の具体的構成図である。図5に
示すように、かかる先見回路は4ビットの桁上げ先見回
路であり、前述した(7)乃至(10)式に対応する回
路で構成されている。すなわち、この桁上げ先見回路2
1はp0〜p3入力とg0〜g3入力および桁上げのc
(−1)入力の論理積をとる複数のAND回路19と、
これらAND回路19の出力および前述したg0〜g3
入力および桁上げのc(−1)入力の論理和をとる4つ
のOR回路20とを有し、その出力c0〜c3は(7)
乃至(10)式により表わされるとおりである。この桁
上げ先見回路21を用いて2通りの和を求める場合、2
つの加算器を用意し、一方は桁上げ入力c(−1)に0
を与え、他方はc(−1)に1を与える。
における桁上げ先見回路の具体的構成図である。図5に
示すように、かかる先見回路は4ビットの桁上げ先見回
路であり、前述した(7)乃至(10)式に対応する回
路で構成されている。すなわち、この桁上げ先見回路2
1はp0〜p3入力とg0〜g3入力および桁上げのc
(−1)入力の論理積をとる複数のAND回路19と、
これらAND回路19の出力および前述したg0〜g3
入力および桁上げのc(−1)入力の論理和をとる4つ
のOR回路20とを有し、その出力c0〜c3は(7)
乃至(10)式により表わされるとおりである。この桁
上げ先見回路21を用いて2通りの和を求める場合、2
つの加算器を用意し、一方は桁上げ入力c(−1)に0
を与え、他方はc(−1)に1を与える。
【0008】図6は従来の一例を示す桁上げ選択加算器
回路のブロック回路図である。図6に示すように、この
桁上げ選択加算器14aは、桁上げ入力が0の時と1の
時の2通りの和を利用する例であり、第1,第2の加算
器22A,22Bと第1の選択器12とでm0ビットの
加算器ブロックを構成し、第3,第4の加算器22C,
22Dと第2の選択器13とでm1ビットの上位の加算
器ブロックを構成している。まず、m0ビットの加算器
ブロックを構成する第1の加算器22Aは桁上げ入力c
(−1)に0を入力し、桁上げ信号が無い場合の和S0
0を求め、第2の加算器22Bはc(−1)に1を入力
し、桁上げ信号が有る場合の和S10を求めている。第
1の選択器12に入力された桁上げ信号cinによって
2通りの和S00とS10の何れかを選択する。また、
2つの加算器22A,22Bから出力された桁上げ信号
c0out0とc1out0も第1の選択器12で選択
され、上位への桁上げ信号cout0となる。一方、m
1ビットの上位の加算器ブロックでも同様に2つの加算
器22C,22Dを用いて2通りの和S01とS11を
求め、下位からの桁上げ信号cout0によって一方を
選択している。
回路のブロック回路図である。図6に示すように、この
桁上げ選択加算器14aは、桁上げ入力が0の時と1の
時の2通りの和を利用する例であり、第1,第2の加算
器22A,22Bと第1の選択器12とでm0ビットの
加算器ブロックを構成し、第3,第4の加算器22C,
22Dと第2の選択器13とでm1ビットの上位の加算
器ブロックを構成している。まず、m0ビットの加算器
ブロックを構成する第1の加算器22Aは桁上げ入力c
(−1)に0を入力し、桁上げ信号が無い場合の和S0
0を求め、第2の加算器22Bはc(−1)に1を入力
し、桁上げ信号が有る場合の和S10を求めている。第
1の選択器12に入力された桁上げ信号cinによって
2通りの和S00とS10の何れかを選択する。また、
2つの加算器22A,22Bから出力された桁上げ信号
c0out0とc1out0も第1の選択器12で選択
され、上位への桁上げ信号cout0となる。一方、m
1ビットの上位の加算器ブロックでも同様に2つの加算
器22C,22Dを用いて2通りの和S01とS11を
求め、下位からの桁上げ信号cout0によって一方を
選択している。
【0009】図7は従来の他の例を示す絶対値演算器回
路のブロック回路図である。図7に示すように、この絶
対値演算器回路18aも桁上げ入力が0の時と1の時の
2通りの和を利用する例であり、ここではnビットの2
つの数、A,Bの差の絶対値を求めている。まず、かか
る回路は数Aの値を第1のNOT回路15で反転させ
る。この値は、2の補数では−A−1にあたる。この第
1のNOT回路15の出力Aの反転(以下、A反転と称
す)と数Bが加算器22に入力され、和が求められる。
ここで得られる出力の和はB−A−1である。尚、この
加算器22は前述した図6の加算器22A〜22Dと同
様のものである。次に、第2のNOT回路16を用いて
加算器22の出力を反転してA−Bを求めると同時に、
インクリメンタ23により1加えてB−Aを求める。こ
れら2つの値の一方の符号ビット、例えば第2のNOT
回路16の出力の最上位ビットS0MSBを用いて選択
器24で正の値の方を選択すれば、絶対値|A−B|が
求められる。要するに、かかる絶対値演算器回路18a
においても桁上げ入力が0の時と1の時の2通りの和を
必要としているが、ここでは加算器の一種であるインク
リメンタを用いて桁上げ1の時の和を求めているので、
実質的には2つの加算器を使用していることになる。
路のブロック回路図である。図7に示すように、この絶
対値演算器回路18aも桁上げ入力が0の時と1の時の
2通りの和を利用する例であり、ここではnビットの2
つの数、A,Bの差の絶対値を求めている。まず、かか
る回路は数Aの値を第1のNOT回路15で反転させ
る。この値は、2の補数では−A−1にあたる。この第
1のNOT回路15の出力Aの反転(以下、A反転と称
す)と数Bが加算器22に入力され、和が求められる。
ここで得られる出力の和はB−A−1である。尚、この
加算器22は前述した図6の加算器22A〜22Dと同
様のものである。次に、第2のNOT回路16を用いて
加算器22の出力を反転してA−Bを求めると同時に、
インクリメンタ23により1加えてB−Aを求める。こ
れら2つの値の一方の符号ビット、例えば第2のNOT
回路16の出力の最上位ビットS0MSBを用いて選択
器24で正の値の方を選択すれば、絶対値|A−B|が
求められる。要するに、かかる絶対値演算器回路18a
においても桁上げ入力が0の時と1の時の2通りの和を
必要としているが、ここでは加算器の一種であるインク
リメンタを用いて桁上げ1の時の和を求めているので、
実質的には2つの加算器を使用していることになる。
【0010】
【発明が解決しようとする課題】上述した従来の加算器
およびその加算器を用いた絶対値演算回路は、和の値が
1通りしか求められないため、桁上げ入力信号が0の時
の値と1の時の値の2通りの和を求めるには、それぞれ
の和を求める2つの加算器を用意する必要があり、その
ためにハードウェアが増加するという欠点がある。
およびその加算器を用いた絶対値演算回路は、和の値が
1通りしか求められないため、桁上げ入力信号が0の時
の値と1の時の値の2通りの和を求めるには、それぞれ
の和を求める2つの加算器を用意する必要があり、その
ためにハードウェアが増加するという欠点がある。
【0011】本発明の目的は、このような2通りの和を
求めるときのハードウェアを低減することのできる加算
器およびその加算器を用いた絶対値演算回路を提供する
ことにある。
求めるときのハードウェアを低減することのできる加算
器およびその加算器を用いた絶対値演算回路を提供する
ことにある。
【0012】
【課題を解決するための手段】本発明の加算器は、2数
を入力しビット毎の桁上げ生成信号およびビット毎の桁
上げ伝播信号を作成する手段と、前記ビット毎の桁上げ
生成信号およびビット毎の桁上げ伝播信号から最下位ビ
ットを含む任意ビット長のブロック桁上げ生成信号およ
びブロック桁上げ伝播信号を求める手段とを有し、桁上
げ入力が0の場合の各ビットの桁上げ信号を前記ブロッ
ク桁上げ生成信号から求め、前記桁上げ入力が1の場合
の各ビットの桁上げ信号を前記ブロック桁上げ生成信号
および前記ブロック桁上げ伝播信号から求めることによ
り、前記桁上げ入力が0の場合および1の場合の2通り
の和を求めるように構成される。
を入力しビット毎の桁上げ生成信号およびビット毎の桁
上げ伝播信号を作成する手段と、前記ビット毎の桁上げ
生成信号およびビット毎の桁上げ伝播信号から最下位ビ
ットを含む任意ビット長のブロック桁上げ生成信号およ
びブロック桁上げ伝播信号を求める手段とを有し、桁上
げ入力が0の場合の各ビットの桁上げ信号を前記ブロッ
ク桁上げ生成信号から求め、前記桁上げ入力が1の場合
の各ビットの桁上げ信号を前記ブロック桁上げ生成信号
および前記ブロック桁上げ伝播信号から求めることによ
り、前記桁上げ入力が0の場合および1の場合の2通り
の和を求めるように構成される。
【0013】また、本発明の加算器は、加算語長を任意
のビット数毎の部分に分割して加算語全体の和を求める
加算器において、2数を入力しビット毎の桁上げ生成信
号およびビット毎の桁上げ伝播信号を作成する手段およ
び前記ビット毎の桁上げ生成信号およびビット毎の桁上
げ伝播信号から最下位ビットを含む任意ビット長のブロ
ック桁上げ生成信号およびブロック桁上げ伝播信号を求
める手段を有し且つ桁上げ入力が0の場合の各ビットの
桁上げ信号を前記ブロック桁上げ生成信号から求め、前
記桁上げ入力が1の場合の各ビットの桁上げ信号を前記
ブロック桁上げ生成信号および前記ブロック桁上げ伝播
信号から求めることにより、前記桁上げ入力が0の場合
および1の場合の2通りの和を求める少なくとも2つの
加算部と、下位部分からの桁上げ信号出力によって前記
2つの加算部の2通りの出力の一方を選択するシリーズ
接続された少なくとも2つの選択部とを備えて構成され
る。
のビット数毎の部分に分割して加算語全体の和を求める
加算器において、2数を入力しビット毎の桁上げ生成信
号およびビット毎の桁上げ伝播信号を作成する手段およ
び前記ビット毎の桁上げ生成信号およびビット毎の桁上
げ伝播信号から最下位ビットを含む任意ビット長のブロ
ック桁上げ生成信号およびブロック桁上げ伝播信号を求
める手段を有し且つ桁上げ入力が0の場合の各ビットの
桁上げ信号を前記ブロック桁上げ生成信号から求め、前
記桁上げ入力が1の場合の各ビットの桁上げ信号を前記
ブロック桁上げ生成信号および前記ブロック桁上げ伝播
信号から求めることにより、前記桁上げ入力が0の場合
および1の場合の2通りの和を求める少なくとも2つの
加算部と、下位部分からの桁上げ信号出力によって前記
2つの加算部の2通りの出力の一方を選択するシリーズ
接続された少なくとも2つの選択部とを備えて構成され
る。
【0014】また、本発明の加算器を用いた絶対値演算
回路は、2数A,Bの差の絶対値をA−BおよびB−A
を演算することにより求めるにあたり、前記Aの各ビッ
ト信号を反転させた値および前記Bの値を加算する加算
器と、下位からの桁上げ信号が1の時の和から前記B−
Aの値を求める一方、下位からの桁上げ信号が0の時の
和の各ビットを反転させた信号からA−Bの値を求める
選択器とを有し、前記加算器に前述した加算器を用いて
構成される。
回路は、2数A,Bの差の絶対値をA−BおよびB−A
を演算することにより求めるにあたり、前記Aの各ビッ
ト信号を反転させた値および前記Bの値を加算する加算
器と、下位からの桁上げ信号が1の時の和から前記B−
Aの値を求める一方、下位からの桁上げ信号が0の時の
和の各ビットを反転させた信号からA−Bの値を求める
選択器とを有し、前記加算器に前述した加算器を用いて
構成される。
【0015】
【作用】本発明では、桁上げ入力が0の時と1の時の2
通りの和を求めるために使われる2通りのビット毎の桁
上げ信号を桁上げ先見回路の中間節点の信号を用いて求
める。そのために、2つの加算器を用いた場合に重複し
て存在していた桁上げ先見回路を1つに纏めることがで
きる。この桁上げ先見回路は加算器のハードウェァの大
半を占めるため、この部分を1つに纏めることにより、
ハードウェァの低減を実現できる。
通りの和を求めるために使われる2通りのビット毎の桁
上げ信号を桁上げ先見回路の中間節点の信号を用いて求
める。そのために、2つの加算器を用いた場合に重複し
て存在していた桁上げ先見回路を1つに纏めることがで
きる。この桁上げ先見回路は加算器のハードウェァの大
半を占めるため、この部分を1つに纏めることにより、
ハードウェァの低減を実現できる。
【0016】
【実施例】次に、本発明の実施例について図面を参照し
て説明する。
て説明する。
【0017】図1は本発明の加算器の一実施例を示すブ
ロック回路図である。図1に示すように、本実施例の加
算器8はnビットの被加数Aとnビットの加数Bとのエ
クスクルーシブ・オア論理およびアンド論理をとるEX
・OR回路1およびAND回路2と、これらEX・OR
回路1およびAND回路2の出力に基ずきブロック桁上
げ伝播関数Pおよびブロック桁上げ生成関数Gを作成す
る桁上げ伝播信号回路3および桁上げ生成信号回路4
と、これら信号回路3,4のオア論理をとるOR回路5
と、EX・OR回路1およびOR回路5の出力のエクス
クルーシブ・オア論理をとるEX・OR回路6と、EX
・OR回路1および桁上げ生成信号回路4の出力のエク
スクルーシブ・オア論理をとるEX・OR回路7とを有
している。
ロック回路図である。図1に示すように、本実施例の加
算器8はnビットの被加数Aとnビットの加数Bとのエ
クスクルーシブ・オア論理およびアンド論理をとるEX
・OR回路1およびAND回路2と、これらEX・OR
回路1およびAND回路2の出力に基ずきブロック桁上
げ伝播関数Pおよびブロック桁上げ生成関数Gを作成す
る桁上げ伝播信号回路3および桁上げ生成信号回路4
と、これら信号回路3,4のオア論理をとるOR回路5
と、EX・OR回路1およびOR回路5の出力のエクス
クルーシブ・オア論理をとるEX・OR回路6と、EX
・OR回路1および桁上げ生成信号回路4の出力のエク
スクルーシブ・オア論理をとるEX・OR回路7とを有
している。
【0018】次に、前述した(7)〜(10)式の桁上
げciについて、ブロック桁上げ伝播関数Pおよびブロ
ック桁上げ生成関数Gを用いて説明する。このブロック
桁上げ生成関数Gは、以下の(11)乃至(14)式
で、 G0=g0 ………(11) G1=g1+p1・G0 =g1+p1・g0 ………(12) G2=g2+p2・G1 =g2+p2・g1+p2・p1・g0 ………(13) G3=g3+p3・G2 =g3+p3・g2+p3・p2・g1 +p3・p2・p1・g0 ………(14) 表わされる。また、ブロック桁上げ伝播関数Pは、以下
の(15)乃至(18)式で表わされる。
げciについて、ブロック桁上げ伝播関数Pおよびブロ
ック桁上げ生成関数Gを用いて説明する。このブロック
桁上げ生成関数Gは、以下の(11)乃至(14)式
で、 G0=g0 ………(11) G1=g1+p1・G0 =g1+p1・g0 ………(12) G2=g2+p2・G1 =g2+p2・g1+p2・p1・g0 ………(13) G3=g3+p3・G2 =g3+p3・g2+p3・p2・g1 +p3・p2・p1・g0 ………(14) 表わされる。また、ブロック桁上げ伝播関数Pは、以下
の(15)乃至(18)式で表わされる。
【0019】
P0=p0 ………(15)
P1=p1・P0
=p1・p0 ………(16)
P2=p2・P1
=p2・p1・p0 ………(17)
P3=p3・P2
=p3・p2・p1・p0 ………(18)
これらのブロック桁上げ生成関数Gおよびブロック桁上
げ伝播関数Pを用いれば、前述した(7)〜(10)式
の桁上げciは、次の(19)式のように表わされる。
げ伝播関数Pを用いれば、前述した(7)〜(10)式
の桁上げciは、次の(19)式のように表わされる。
【0020】
ci=Gi+Pi・c(−1) ………(19)
そこで、桁上げ入力c(−1)が0の時の桁上げc0i
および1の時の桁上げc1iは、次の(20),(2
1)式のようになる。
および1の時の桁上げc1iは、次の(20),(2
1)式のようになる。
【0021】
c0i=Gi ………(20)
c1i=Gi+Pi ………(21)
この桁上げc0iとc1iを用いれば、ブロック桁上げ
生成関数Gおよびブロック桁上げ伝播関数Pを求める部
分の回路は、桁上げが0の時と1の時のの和を求める2
つの加算器で共通に使用することができる。また、式
(21)で表わされる桁上げはビット毎並列に行なえる
ため、遅延の増加をほとんど生じないで済む。
生成関数Gおよびブロック桁上げ伝播関数Pを求める部
分の回路は、桁上げが0の時と1の時のの和を求める2
つの加算器で共通に使用することができる。また、式
(21)で表わされる桁上げはビット毎並列に行なえる
ため、遅延の増加をほとんど生じないで済む。
【0022】次に、上述した式と加算器8の回路動作に
ついて説明する。まず、第1のEX・OR回路1の出力
が各ビット毎の桁上げ伝播関数pであり、AND回路2
の出力が各ビット毎の桁上げ生成関数gであ。この第1
のEX・OR回路1の出力を桁上げ伝播信号回路3に入
力して(15)〜(18)式を演算し、ブロック桁上げ
伝播関数Pを出力する。これと並列に、第1のEX・O
R回路1の出力およびAND回路2の出力を桁上げ生成
信号回路4に入力して(11)〜(14)式を演算し、
ブロック桁上げ生成関数Gを出力する。しかるに、(2
0)式によれば、桁上げ入力が0の場合の桁上げc0は
そのままブロック桁上げ生成関数Gを用いればよい。一
方、桁上げ入力が1の場合の桁上げ信号c1はブロック
桁上げ生成関数Gとブロック桁上げ伝播関数Pの論理和
として求められる。すなわち、桁上げ伝播信号回路3の
出力Pと桁上げ生成信号回路4の出力GをOR回路5に
入力して桁上げc1を求める。しかる後、第2のEX・
OR回路6と第3のEX・OR回路7でそれぞれの桁上
げ信号について(5)式の演算を行なえば、桁上げ入力
が0の時の和S0および桁上げ入力が1の時の和S1が
求められる。この(5)式によれば、(i−1)ビット
目の桁上げc(i−1)とiビット目の桁上げ伝播関数
piの排他的論理和を求める。桁上げは1ビット上位に
ずれて、桁上げの最上位c0(n−1)およびc1(n
−1)はこの加算器の桁上げ出力c0out,c1ou
tとなる。また、これらc(0−1),c(1−1)は
この加算器への2通りの桁上げ入力であり、順に0,1
を与える。
ついて説明する。まず、第1のEX・OR回路1の出力
が各ビット毎の桁上げ伝播関数pであり、AND回路2
の出力が各ビット毎の桁上げ生成関数gであ。この第1
のEX・OR回路1の出力を桁上げ伝播信号回路3に入
力して(15)〜(18)式を演算し、ブロック桁上げ
伝播関数Pを出力する。これと並列に、第1のEX・O
R回路1の出力およびAND回路2の出力を桁上げ生成
信号回路4に入力して(11)〜(14)式を演算し、
ブロック桁上げ生成関数Gを出力する。しかるに、(2
0)式によれば、桁上げ入力が0の場合の桁上げc0は
そのままブロック桁上げ生成関数Gを用いればよい。一
方、桁上げ入力が1の場合の桁上げ信号c1はブロック
桁上げ生成関数Gとブロック桁上げ伝播関数Pの論理和
として求められる。すなわち、桁上げ伝播信号回路3の
出力Pと桁上げ生成信号回路4の出力GをOR回路5に
入力して桁上げc1を求める。しかる後、第2のEX・
OR回路6と第3のEX・OR回路7でそれぞれの桁上
げ信号について(5)式の演算を行なえば、桁上げ入力
が0の時の和S0および桁上げ入力が1の時の和S1が
求められる。この(5)式によれば、(i−1)ビット
目の桁上げc(i−1)とiビット目の桁上げ伝播関数
piの排他的論理和を求める。桁上げは1ビット上位に
ずれて、桁上げの最上位c0(n−1)およびc1(n
−1)はこの加算器の桁上げ出力c0out,c1ou
tとなる。また、これらc(0−1),c(1−1)は
この加算器への2通りの桁上げ入力であり、順に0,1
を与える。
【0023】図2は図1に示す桁上げ信号回路およびO
R回路の具体的構成図である。図2に示すように、桁上
げ伝播/生成信号回路11は図1の桁上げ伝播信号回路
3と桁上げ生成信号回路4を表わしている。この桁上げ
伝播信号回路はAND回路9によって構成され、また桁
上げ生成信号回路はAND回路9およびOR回路10に
よって構成される。この桁上げ伝播/生成信号回路11
の出力およびOR回路5の出力によりビット毎の桁上げ
信号c0i(c00〜c03),c1i(c10〜c1
3)が得られる。かかる回路は、前述した図5の回路に
対応する部分であり、ゲートの数は数個多くなるもの
の、それぞれのゲートの入力数が減るために、ほぼ同じ
ハードウェア量で実現できる。
R回路の具体的構成図である。図2に示すように、桁上
げ伝播/生成信号回路11は図1の桁上げ伝播信号回路
3と桁上げ生成信号回路4を表わしている。この桁上げ
伝播信号回路はAND回路9によって構成され、また桁
上げ生成信号回路はAND回路9およびOR回路10に
よって構成される。この桁上げ伝播/生成信号回路11
の出力およびOR回路5の出力によりビット毎の桁上げ
信号c0i(c00〜c03),c1i(c10〜c1
3)が得られる。かかる回路は、前述した図5の回路に
対応する部分であり、ゲートの数は数個多くなるもの
の、それぞれのゲートの入力数が減るために、ほぼ同じ
ハードウェア量で実現できる。
【0024】図3は図1に示す加算器を用いて構成した
一応用例としての選択加算器回路のブロック図である。
図3に示すように、この選択加算器回路14は図1に示
す加算器8A,8Bと、それぞれの加算器8A,8Bに
接続された選択器12,13とから構成され、第1の加
算器8Aと第1の選択器12でm0ビットの加算器ブロ
ックを形成し、第2の加算器8Bと第2の選択器13で
その上位のm1ビットの加算器ブロックを形成してい
る。前述した図6と比較すると、2つの加算器が1つの
加算器で置換されているので、この部分のハードウェア
量は約半分にできる。
一応用例としての選択加算器回路のブロック図である。
図3に示すように、この選択加算器回路14は図1に示
す加算器8A,8Bと、それぞれの加算器8A,8Bに
接続された選択器12,13とから構成され、第1の加
算器8Aと第1の選択器12でm0ビットの加算器ブロ
ックを形成し、第2の加算器8Bと第2の選択器13で
その上位のm1ビットの加算器ブロックを形成してい
る。前述した図6と比較すると、2つの加算器が1つの
加算器で置換されているので、この部分のハードウェア
量は約半分にできる。
【0025】図4は本発明の加算器を用いた絶対値演算
回路の一実施例を示すブロック回路図である。図4に示
すように、本実施例の絶対値演算器回路18は、前述し
た図7の絶対値演算器回路18aにおける加算器22お
よびインクリメンタ23を、図1に示す加算器8で置換
したものである。かかる絶対値演算器回路18の動作
は、NOT回路15で入力Aを反転させて−A−1を求
め加算器8でBの値と加算する。加算器8の桁上げ入力
0の場合の和出力S0はB−A−1であり、これをNO
T回路16で反転させることによりA−Bの値を得る。
一方、桁上げ入力1の場合の和出力S1はB−Aの値で
ある。これら2つの結果のうち、正の方を選択器17で
選択し出力すれば、2数A,Bの差の絶対値を求めるこ
とができる。要するに、本実施例の絶対値演算器回路1
8は加算器8を用いることにより、インクリメンタを省
略でき、ハードウェアを削減することができる。
回路の一実施例を示すブロック回路図である。図4に示
すように、本実施例の絶対値演算器回路18は、前述し
た図7の絶対値演算器回路18aにおける加算器22お
よびインクリメンタ23を、図1に示す加算器8で置換
したものである。かかる絶対値演算器回路18の動作
は、NOT回路15で入力Aを反転させて−A−1を求
め加算器8でBの値と加算する。加算器8の桁上げ入力
0の場合の和出力S0はB−A−1であり、これをNO
T回路16で反転させることによりA−Bの値を得る。
一方、桁上げ入力1の場合の和出力S1はB−Aの値で
ある。これら2つの結果のうち、正の方を選択器17で
選択し出力すれば、2数A,Bの差の絶対値を求めるこ
とができる。要するに、本実施例の絶対値演算器回路1
8は加算器8を用いることにより、インクリメンタを省
略でき、ハードウェアを削減することができる。
【0026】
【発明の効果】以上説明したように、本発明の加算器
は、桁上げ入力0の場合の和と桁上げ入力1の場合の和
を同時に1つの加算器で求めることにより、2通りの和
を求めるときのハードウェアを低減することができると
いう効果がある。また本発明の加算器を用いた絶対値演
算回路は、1つの加算器で2通りの和を作成するので、
演算器自体のハードウェアを低減することができるとい
う効果がある。
は、桁上げ入力0の場合の和と桁上げ入力1の場合の和
を同時に1つの加算器で求めることにより、2通りの和
を求めるときのハードウェアを低減することができると
いう効果がある。また本発明の加算器を用いた絶対値演
算回路は、1つの加算器で2通りの和を作成するので、
演算器自体のハードウェアを低減することができるとい
う効果がある。
【図1】本発明の加算器の一実施例を示すブロック回路
図である。
図である。
【図2】図1に示す桁上げ信号回路およびOR回路の具
体的構成図である。
体的構成図である。
【図3】図1に示す加算器を用いて構成した一応用例と
しての選択加算器回路のブロック図である。
しての選択加算器回路のブロック図である。
【図4】本発明の加算器を用いた絶対値演算回路の一実
施例を示すブロック回路図である。
施例を示すブロック回路図である。
【図5】従来の一例を説明するための加算器における桁
上げ先見回路の具体的構成図である。
上げ先見回路の具体的構成図である。
【図6】従来の一例を示す桁上げ選択加算器回路のブロ
ック回路図である。
ック回路図である。
【図7】従来の他の例を示す絶対値演算器回路のブロッ
ク回路図である。
ク回路図である。
1,6,7 EX・OR回路
2,9 AND回路
3 桁上げ伝播信号回路
4 桁上げ生成信号回路
5,10 OR回路
8,8A,8B 加算器
11 桁上げ伝播/生成信号回路
12,13,17 選択器
14 選択加算器回路
15,16 NOT回路
18 絶対値演算器回路
Claims (3)
- 【請求項1】 2数を入力しビット毎の桁上げ生成信号
およびビット毎の桁上げ伝播信号を作成する手段と、前
記ビット毎の桁上げ生成信号およびビット毎の桁上げ伝
播信号から最下位ビットを含む任意ビット長のブロック
桁上げ生成信号およびブロック桁上げ伝播信号を求める
手段とを有し、桁上げ入力が0の場合の各ビットの桁上
げ信号を前記ブロック桁上げ生成信号から求め、前記桁
上げ入力が1の場合の各ビットの桁上げ信号を前記ブロ
ック桁上げ生成信号および前記ブロック桁上げ伝播信号
から求めることにより、前記桁上げ入力が0の場合およ
び1の場合の2通りの和を求めることを特徴とする加算
器。 - 【請求項2】 加算語長を任意のビット数毎の部分に分
割して加算語全体の和を求める加算器において、2数を
入力しビット毎の桁上げ生成信号およびビット毎の桁上
げ伝播信号を作成する手段および前記ビット毎の桁上げ
生成信号およびビット毎の桁上げ伝播信号から最下位ビ
ットを含む任意ビット長のブロック桁上げ生成信号およ
びブロック桁上げ伝播信号を求める手段を有し且つ桁上
げ入力が0の場合の各ビットの桁上げ信号を前記ブロッ
ク桁上げ生成信号から求め、前記桁上げ入力が1の場合
の各ビットの桁上げ信号を前記ブロック桁上げ生成信号
および前記ブロック桁上げ伝播信号から求めることによ
り、前記桁上げ入力が0の場合および1の場合の2通り
の和を求める少なくとも2つの加算部と、下位部分から
の桁上げ信号出力によって前記2つの加算部の2通りの
出力の一方を選択するシリーズ接続された少なくとも2
つの選択部とを備えることを特徴とする加算器。 - 【請求項3】 2数A,Bの差の絶対値をA−Bおよび
B−Aを演算することにより求める加算器を用いた絶対
値演算回路において、前記Aの各ビット信号を反転させ
た値および前記Bの値を加算する加算器と、下位からの
桁上げ信号が1の時の和から前記B−Aの値を求める一
方、下位からの桁上げ信号が0の時の和の各ビットを反
転させた信号からA−Bの値を求める選択器とを有し、
前記加算器に請求項1記載の加算器を用いることを特徴
とする加算器を用いた絶対値演算回路。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP15502991A JPH056263A (ja) | 1991-06-27 | 1991-06-27 | 加算器およびその加算器を用いた絶対値演算回路 |
CA 2071255 CA2071255A1 (en) | 1991-06-27 | 1992-06-15 | Arithmetic circuit |
EP19920110155 EP0520298A3 (en) | 1991-06-27 | 1992-06-16 | Arithmetic circuit |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP15502991A JPH056263A (ja) | 1991-06-27 | 1991-06-27 | 加算器およびその加算器を用いた絶対値演算回路 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH056263A true JPH056263A (ja) | 1993-01-14 |
Family
ID=15597117
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP15502991A Pending JPH056263A (ja) | 1991-06-27 | 1991-06-27 | 加算器およびその加算器を用いた絶対値演算回路 |
Country Status (3)
Country | Link |
---|---|
EP (1) | EP0520298A3 (ja) |
JP (1) | JPH056263A (ja) |
CA (1) | CA2071255A1 (ja) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5877973A (en) * | 1996-02-27 | 1999-03-02 | Denso Corporation | Logic operation circuit and carry look ahead adder |
KR100866787B1 (ko) * | 2002-01-16 | 2008-11-04 | 삼성전자주식회사 | Xor에 기반한 캐리 생성기와 이를 이용한 조건 선택가산 장치 및 그 방법 |
JP2022517159A (ja) * | 2019-04-23 | 2022-03-07 | 陳新豫 | 新たな高速加算器 |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5251164A (en) * | 1992-05-22 | 1993-10-05 | S-Mos Systems, Inc. | Low-power area-efficient absolute value arithmetic unit |
SE9302158L (sv) * | 1993-06-22 | 1994-12-23 | Jiren Yuan | En extremt snabb adderaranordning |
JP2005135090A (ja) * | 2003-10-29 | 2005-05-26 | Seiko Epson Corp | 演算処理装置 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS6225325A (ja) * | 1985-07-25 | 1987-02-03 | Fujitsu Ltd | 絶対値数加減算回路 |
JPH01281529A (ja) * | 1988-05-07 | 1989-11-13 | Fujitsu Ltd | 2進演算器 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3100835A (en) * | 1960-01-06 | 1963-08-13 | Ibm | Selecting adder |
-
1991
- 1991-06-27 JP JP15502991A patent/JPH056263A/ja active Pending
-
1992
- 1992-06-15 CA CA 2071255 patent/CA2071255A1/en not_active Abandoned
- 1992-06-16 EP EP19920110155 patent/EP0520298A3/en not_active Withdrawn
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS6225325A (ja) * | 1985-07-25 | 1987-02-03 | Fujitsu Ltd | 絶対値数加減算回路 |
JPH01281529A (ja) * | 1988-05-07 | 1989-11-13 | Fujitsu Ltd | 2進演算器 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5877973A (en) * | 1996-02-27 | 1999-03-02 | Denso Corporation | Logic operation circuit and carry look ahead adder |
KR100866787B1 (ko) * | 2002-01-16 | 2008-11-04 | 삼성전자주식회사 | Xor에 기반한 캐리 생성기와 이를 이용한 조건 선택가산 장치 및 그 방법 |
JP2022517159A (ja) * | 2019-04-23 | 2022-03-07 | 陳新豫 | 新たな高速加算器 |
Also Published As
Publication number | Publication date |
---|---|
CA2071255A1 (en) | 1992-12-28 |
EP0520298A2 (en) | 1992-12-30 |
EP0520298A3 (en) | 1993-07-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6301600B1 (en) | Method and apparatus for dynamic partitionable saturating adder/subtractor | |
US4878192A (en) | Arithmetic processor and divider using redundant signed digit arithmetic | |
US5471414A (en) | Fast static CMOS adder | |
JPH0628158A (ja) | 桁上げ先見加算方法とその装置 | |
JP3436994B2 (ja) | シフト装置 | |
JPH08212058A (ja) | 加算オーバフロ検出回路 | |
JPH056263A (ja) | 加算器およびその加算器を用いた絶対値演算回路 | |
KR100413529B1 (ko) | 잉여 이진수 연산을 채택한 디지털 곱셈 장치 및 방법 | |
JP3537378B2 (ja) | 加算器および集積回路 | |
JP3356613B2 (ja) | 加算方法および加算器 | |
JPH08221256A (ja) | 乗算器及び積和演算装置 | |
JPH0464091B2 (ja) | ||
US20050091299A1 (en) | Carry look-ahead adder having a reduced area | |
JPH06348461A (ja) | 剰余算出回路 | |
JPH0370416B2 (ja) | ||
JP3071607B2 (ja) | 乗算回路 | |
JPH1115641A (ja) | 冗長2進加算器を用いた乗算装置 | |
Latha et al. | Residue-to-Binary converters for the seven moduli set {2 n-5-1, 2 n-3-1, 2 n-2+ 1, 2 n-1-1, 2 n-1+ 1, 2n, 2 n+ 1} for n even | |
JP3106525B2 (ja) | 加算方式及びその回路 | |
JP3198795B2 (ja) | 加算器及び加算方法 | |
KR950015180B1 (ko) | 고속연산형 가산기 | |
Vishwaja et al. | Performance Comparison of Carry Select Adder with Different Techniques | |
US6272514B1 (en) | Method and apparatus for interruption of carry propagation on partition boundaries | |
JPH05108308A (ja) | 乗算回路 | |
JPS6349835A (ja) | 演算処理装置 |