JPH0754457B2 - 多ビツト加算器 - Google Patents
多ビツト加算器Info
- Publication number
- JPH0754457B2 JPH0754457B2 JP61288058A JP28805886A JPH0754457B2 JP H0754457 B2 JPH0754457 B2 JP H0754457B2 JP 61288058 A JP61288058 A JP 61288058A JP 28805886 A JP28805886 A JP 28805886A JP H0754457 B2 JPH0754457 B2 JP H0754457B2
- Authority
- JP
- Japan
- Prior art keywords
- bits
- data
- group
- operation result
- 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.)
- Expired - Lifetime
Links
Description
【発明の詳細な説明】 〔概要〕 多ビット加算器において、第1の加算手段で入力するn
ビットのデータのうち下位(n−m)ビットのデータを
加算して得られたキャリーと上位mビットのデータとを
データ保持手段に取り込む。
ビットのデータのうち下位(n−m)ビットのデータを
加算して得られたキャリーと上位mビットのデータとを
データ保持手段に取り込む。
そして、データ保持手段の出力を用いて第2の加算手段
で加算を行った後、第1及び第2の加算手段の演算結果
を並べてnビットの演算結果を得るが、この間に第1の
加算手段は別の演算を行わせせることにより回路規模を
それ増加せずに高速化を図るものである。
で加算を行った後、第1及び第2の加算手段の演算結果
を並べてnビットの演算結果を得るが、この間に第1の
加算手段は別の演算を行わせせることにより回路規模を
それ増加せずに高速化を図るものである。
〔産業上の利用分野〕 本発明は多ビット加算器,例えばLSI化されたプロセッ
サ等で使用される多ビット加算器の改良に関するもので
ある。
サ等で使用される多ビット加算器の改良に関するもので
ある。
一般に、多ビットの加算を行う場合に下位ビットの加算
によって桁上がりが発生し,それが上位ビットの方へ伝
播して行くので、nが大きくなる程,加算に要する時間
が増加して演算時間が増える。
によって桁上がりが発生し,それが上位ビットの方へ伝
播して行くので、nが大きくなる程,加算に要する時間
が増加して演算時間が増える。
そこで、回路規模をそれぼど増加させずに演算時間を少
なくする(即ち,高速化する)ことが要望されている。
なくする(即ち,高速化する)ことが要望されている。
第4図は従来例のブロック図、第5図は第4図の動作説
明図を示す。尚、第5図中の左側の記号は第4図中の同
じ記号の部分の波形を示す。
明図を示す。尚、第5図中の左側の記号は第4図中の同
じ記号の部分の波形を示す。
以下,第5図を参照しながら第4図の動作を説明する。
先ず、レジスタ1,3,5にXグループのデータA,B,Cが,レ
ジスタ2,4,6にYグループのデータD,E,Fがそれぞれ入っ
ている(第5図−Xグループ,Yグループ参照)。
ジスタ2,4,6にYグループのデータD,E,Fがそれぞれ入っ
ている(第5図−Xグループ,Yグループ参照)。
これらのデータは第5図−に示す様に選択信号がHレ
ベルの時はデータA,B,Cが、Lレベルの時はデータD,E,F
がセレクタ7,8,9で選択されて加算器ADDR 10に加えられ
るが、選択時間Tは演算値が確定してこれを取り込む為
の最低必要な条件が確保できる時間である。
ベルの時はデータA,B,Cが、Lレベルの時はデータD,E,F
がセレクタ7,8,9で選択されて加算器ADDR 10に加えられ
るが、選択時間Tは演算値が確定してこれを取り込む為
の最低必要な条件が確保できる時間である。
さて、セレクタ7,8,9が第5図−に示す様にデータA,
B,Cを選択すると、これらのデータが加算器ADDR 10に加
えられて第5図−に示す様に加算が開始され、時間t
の後に確定した演算値,即ち演算結果が第5図−に示
すクロックCK1で第5図−に示す様に第1のアキュム
レータACC111に取り込まれる。
B,Cを選択すると、これらのデータが加算器ADDR 10に加
えられて第5図−に示す様に加算が開始され、時間t
の後に確定した演算値,即ち演算結果が第5図−に示
すクロックCK1で第5図−に示す様に第1のアキュム
レータACC111に取り込まれる。
尚、第5図−の多数の×印の部分は演算中を示し、
(A+B+C)の部分は演算結果の部分を示す。
(A+B+C)の部分は演算結果の部分を示す。
次に、セレクタ7,8,9はデータD,E,Fを選択して上記と同
じく加算器ADDR10でこのデータを加算し、第5図−に
示すクロックCK2で第5図−に示す様に第2のアキュ
ムレータACC2 12に演算結果が取り込まれる。
じく加算器ADDR10でこのデータを加算し、第5図−に
示すクロックCK2で第5図−に示す様に第2のアキュ
ムレータACC2 12に演算結果が取り込まれる。
尚、tは演算時間で演算結果を取り込む為にT>tとな
っている。
っている。
ここで、上記の様に1つの加算器を時分割して異なるデ
ータの加算を行う場合、1つの加算が全てのビットにつ
いて終り,演算結果がアキュムレータACCに取り込まれ
る迄は次のデータの演算が行えないので、データのビッ
ト数nが大きくなるとt,即ちTが大きくなり演算時間が
長くなると云う問題点がある。
ータの加算を行う場合、1つの加算が全てのビットにつ
いて終り,演算結果がアキュムレータACCに取り込まれ
る迄は次のデータの演算が行えないので、データのビッ
ト数nが大きくなるとt,即ちTが大きくなり演算時間が
長くなると云う問題点がある。
又、これを避けるために1つの演算に対して1つの加算
器を割り当てると演算時間は減少するが回路規模が大き
くなり、例えばLSIの様に限られた回路規模の中での実
現が難しいと云う別の問題点がある。
器を割り当てると演算時間は減少するが回路規模が大き
くなり、例えばLSIの様に限られた回路規模の中での実
現が難しいと云う別の問題点がある。
上記の問題点は第1図に示す多ビット加算器により解決
される。
される。
13は各グループの複数種類のnビットデータをそれぞれ
上位mビットと下位(n−m)ビットに分割し、各グル
ープの該下位(n−m)ビットを予め設定された周期で
交互に送出する分割手段、14は該分割手段の出力を加算
して演算結果は保持し、キャリーを送出する第1の加算
手段、15は各グループの該上位mビットと該キャリーを
保持するデータ保持手段、16はグループ別に加算・保持
部分を持ち、該データ保持手段から取り出したキャリー
と対応するグループの該上位mビットを加算し、演算結
果を保持する第2の加算手段、17は該第1,第2の加算手
段で保持している演算結果を並べて、各グループの該n
ビットの演算結果を得る演算結果併合手段である。
上位mビットと下位(n−m)ビットに分割し、各グル
ープの該下位(n−m)ビットを予め設定された周期で
交互に送出する分割手段、14は該分割手段の出力を加算
して演算結果は保持し、キャリーを送出する第1の加算
手段、15は各グループの該上位mビットと該キャリーを
保持するデータ保持手段、16はグループ別に加算・保持
部分を持ち、該データ保持手段から取り出したキャリー
と対応するグループの該上位mビットを加算し、演算結
果を保持する第2の加算手段、17は該第1,第2の加算手
段で保持している演算結果を並べて、各グループの該n
ビットの演算結果を得る演算結果併合手段である。
一般に、多ビットの加算の際,加算によって生ずる桁上
り信号(キャリー)をより上位ビットに伝える為、上位
ビットほど演算が遅れて上位ビットと下位ビットとの間
の演算時間に差が生ずる。
り信号(キャリー)をより上位ビットに伝える為、上位
ビットほど演算が遅れて上位ビットと下位ビットとの間
の演算時間に差が生ずる。
本発明はこの時間差を利用する為、第1、第2グループ
を構成する複数種類のnビットデータを、分割手段でそ
れぞれ上位mビットと下位(n−m)ビットに分割し、
各グループの該下位(n−m)ビットを設定周期(クロ
ック周期の1/2)で交互に送出する。
を構成する複数種類のnビットデータを、分割手段でそ
れぞれ上位mビットと下位(n−m)ビットに分割し、
各グループの該下位(n−m)ビットを設定周期(クロ
ック周期の1/2)で交互に送出する。
そこで、第1の加算手段14は、分割手段の出力、例え
ば、第1グループの該下位(n−m)ビットの加算を行
い、演算結果が得られたらこの結果を保持し、キャリー
をデータ保持手段15に送出した後、次に入力した第2グ
ループの該下位(n−m)ビットの加算を行う。なお、
データ保持手段15は第1,第2グループの該上位mビット
をグループ別に保持している。
ば、第1グループの該下位(n−m)ビットの加算を行
い、演算結果が得られたらこの結果を保持し、キャリー
をデータ保持手段15に送出した後、次に入力した第2グ
ループの該下位(n−m)ビットの加算を行う。なお、
データ保持手段15は第1,第2グループの該上位mビット
をグループ別に保持している。
一方、第2の加算手段16は、データ保持手段15からのキ
ャリーと第1グループの該上位mビットの加算を行って
演算結果を得た後、該第1の加算手段の演算結果とを並
べて各グループのnビットの演算結果を得る様にした。
ャリーと第1グループの該上位mビットの加算を行って
演算結果を得た後、該第1の加算手段の演算結果とを並
べて各グループのnビットの演算結果を得る様にした。
つまり、第1の加算手段は、2つのグループの下位(n
−m)ビットを設定周期で交互に演算し、第2の加算手
段は2つのグループの上位mビットを別々に演算して、
全体として回路規模をそれほど増加せずに高速化を図っ
た。
−m)ビットを設定周期で交互に演算し、第2の加算手
段は2つのグループの上位mビットを別々に演算して、
全体として回路規模をそれほど増加せずに高速化を図っ
た。
第2図は本発明の実施例のブロック図、第3図は第2図
の動作説明図である。尚、全図を通じて同一符号は同一
対象物で第3図の左側の記号は第2図中の同じ記号の部
分の波形を示す。
の動作説明図である。尚、全図を通じて同一符号は同一
対象物で第3図の左側の記号は第2図中の同じ記号の部
分の波形を示す。
又、第1の加算器141,第3のアキュムレータ142,第4の
アキュムレータ143は第1の加算手段14の部分で、第1
の中間レジスタ151,第2の中間レジスタ152はデータ保
持手段15の部分で、第2の加算器161,第3の加算器163,
第5のアキュムレータ162,第6のアキュムレータ164は
第2の加算手段16の部分である。又、13は分割手段,17
は加算結果併合手段である。
アキュムレータ143は第1の加算手段14の部分で、第1
の中間レジスタ151,第2の中間レジスタ152はデータ保
持手段15の部分で、第2の加算器161,第3の加算器163,
第5のアキュムレータ162,第6のアキュムレータ164は
第2の加算手段16の部分である。又、13は分割手段,17
は加算結果併合手段である。
以下、XグループのデータA,B,Cがレジスタ1,3,5に、Y
グループのデータD,E,Fがレジスタ2,4,6にそれぞれ入っ
ていて、XグループのデータとYグループのデータとを
時分割で加算するとして第3図を参照しながら第2図の
動作を説明する(第3図−Xグループ,Yグループ参
照)。
グループのデータD,E,Fがレジスタ2,4,6にそれぞれ入っ
ていて、XグループのデータとYグループのデータとを
時分割で加算するとして第3図を参照しながら第2図の
動作を説明する(第3図−Xグループ,Yグループ参
照)。
先ず、レジスタ1,3,5から取り出されたnビットのデー
タA,B,C及びレジスタ2,4,6から取り出されたnビットの
データD,E,Fの上位mビットが第1の中間レジスタ151及
び第2の中間レジスタ152に、データA,D、データB,E、
データC,Fの下位(n−m)ビットがセレクタ7,8,9にそ
れぞれ入力される。
タA,B,C及びレジスタ2,4,6から取り出されたnビットの
データD,E,Fの上位mビットが第1の中間レジスタ151及
び第2の中間レジスタ152に、データA,D、データB,E、
データC,Fの下位(n−m)ビットがセレクタ7,8,9にそ
れぞれ入力される。
そして、第3図−に示すHレベルの選択信号で駆動さ
れたセレクタ7,8,9により選択されたデータA,B,Cの下位
(n−m)ビットが第1の加算器ADDR1 141で加算され
て演算結果とキャリアが得られるが、演算結果がクロッ
クCK1で第3のアキュムレータACC3 142に取り込まれ、
キャリーは第1の中間レジスタ151に取り込まれる(第
3図−,,,参照)。この上位mビットとキャ
リーが第2の加算器ADDR2 161で加算され、演算結果が
クロックCK2で第5のアキュムレータACC5 162に取り込
まれ、出力される(第3図−,参照)。
れたセレクタ7,8,9により選択されたデータA,B,Cの下位
(n−m)ビットが第1の加算器ADDR1 141で加算され
て演算結果とキャリアが得られるが、演算結果がクロッ
クCK1で第3のアキュムレータACC3 142に取り込まれ、
キャリーは第1の中間レジスタ151に取り込まれる(第
3図−,,,参照)。この上位mビットとキャ
リーが第2の加算器ADDR2 161で加算され、演算結果が
クロックCK2で第5のアキュムレータACC5 162に取り込
まれ、出力される(第3図−,参照)。
ここで、第3のアキュムレータACC3 142に取り込まれた
データA,B,Cの下位(n−m)ビットの演算結果と、第
5のアキュムレータACC5 162に取り込まれたデータA,B,
Cの上位mビットの演算結果はそれぞれ次のクロックが
入力されるまで保持されるので、第3図−のaの部分
と第3図−のbの部分との間でアキュムレータの出力
が取り出されてデータA,B,Cの演算結果が得られる(第
3図−,,参照)。
データA,B,Cの下位(n−m)ビットの演算結果と、第
5のアキュムレータACC5 162に取り込まれたデータA,B,
Cの上位mビットの演算結果はそれぞれ次のクロックが
入力されるまで保持されるので、第3図−のaの部分
と第3図−のbの部分との間でアキュムレータの出力
が取り出されてデータA,B,Cの演算結果が得られる(第
3図−,,参照)。
尚、第1の演算器ADDR1 141はデータA,B,Cの下位(n−
m)ビットの加算が終了するとセレクタ7,8,9が駆動さ
れてデータD,E,Fの下位(n−m)ビットが入力するの
で、これらのデータの加算を行い、演算結果はクロック
CK2で第4のアキュムレータACC4 143に、キャリーは第
2の中間レジスタ152に取り込まれる(第3図−,
,参照)。
m)ビットの加算が終了するとセレクタ7,8,9が駆動さ
れてデータD,E,Fの下位(n−m)ビットが入力するの
で、これらのデータの加算を行い、演算結果はクロック
CK2で第4のアキュムレータACC4 143に、キャリーは第
2の中間レジスタ152に取り込まれる(第3図−,
,参照)。
この時、データD,E,Fの上位mビットが同時に第2の中
間レジスタ152に取り込まれて第3の加算器ADDR3 163で
上位mビットの加算が行なわれて、クロックCK1で演算
結果が第6のアキュムレータACC6 164に取り込まれ、第
4のアキュムレータACC4 143の出力と並べて取り出され
てデータD,E,Fのnビットの演算結果が取り出される。
そして、これが繰り返される(第3図−,,参
照)。
間レジスタ152に取り込まれて第3の加算器ADDR3 163で
上位mビットの加算が行なわれて、クロックCK1で演算
結果が第6のアキュムレータACC6 164に取り込まれ、第
4のアキュムレータACC4 143の出力と並べて取り出され
てデータD,E,Fのnビットの演算結果が取り出される。
そして、これが繰り返される(第3図−,,参
照)。
即ち、下位ビットの演算は上位ビットの演算より早く終
わるので演算器を時分割で使用し、上位ビットの演算は
それぞれ演算器を別々に持って早く演算を終了させる様
にして、全体として回路規模はそれ程増加させずに演算
速度が早くなる様にした。
わるので演算器を時分割で使用し、上位ビットの演算は
それぞれ演算器を別々に持って早く演算を終了させる様
にして、全体として回路規模はそれ程増加させずに演算
速度が早くなる様にした。
以上詳細に説明した様に本発明によれば、回路規模をそ
れ程増加させずに演算速度が早くなると云う効果があ
る。
れ程増加させずに演算速度が早くなると云う効果があ
る。
第1図は本発明の原理ブロック図、 第2図は本発明の実施例のブロック図、 第3図は第2図の動作説明図、 第4図は従来例のブロック図、 第5図は第4図の動作説明図を示す。 図において、 13は分割手段、14は第1の加算手段、15はデータ保持手
段、16は第2の加算手段、17は加算結果併合手段を示
す。
段、16は第2の加算手段、17は加算結果併合手段を示
す。
Claims (1)
- 【請求項1】第1、第2グループがそれぞれ複数種類の
nビットデータで構成されており、グループ毎に複数種
類のnビットデータを加算する際、 各グループの複数種類のnビットデータをそれぞれ上位
mビットと下位(n−m)ビットに分割し、各グループ
の該下位(n−m)ビットを予め設定された周期で交互
に送出する分割手段(13)と、該分割手段の出力を加算
して演算結果は保持し、キャリーを送出する第1の加算
手段(14)と、 各グループの該上位mビットと該キャリーを保持するデ
ータ保持手段(15)と、グループ別に加算・保持部分を
持ち、該データ保持手段から取り出したキャリーと対応
するグループの該上位mビットを加算して、演算結果を
保持する第2の加算手段(16)と、該第1,第2の加算手
段で保持している演算結果を並べて、各グループの該n
ビットの演算結果を得る演算結果併合手段(17)とを有
することを特徴とする多ビット加算器。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP61288058A JPH0754457B2 (ja) | 1986-12-02 | 1986-12-02 | 多ビツト加算器 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP61288058A JPH0754457B2 (ja) | 1986-12-02 | 1986-12-02 | 多ビツト加算器 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPS63140333A JPS63140333A (ja) | 1988-06-11 |
JPH0754457B2 true JPH0754457B2 (ja) | 1995-06-07 |
Family
ID=17725291
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP61288058A Expired - Lifetime JPH0754457B2 (ja) | 1986-12-02 | 1986-12-02 | 多ビツト加算器 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH0754457B2 (ja) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0776914B2 (ja) * | 1988-10-18 | 1995-08-16 | 三菱電機株式会社 | 乗算回路 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS54143036A (en) * | 1978-04-28 | 1979-11-07 | Toshiba Corp | Decentralized addition and subtraction system |
JPS61267829A (ja) * | 1985-05-23 | 1986-11-27 | Mitsubishi Electric Corp | ビツト分割型同期式累算器 |
-
1986
- 1986-12-02 JP JP61288058A patent/JPH0754457B2/ja not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
JPS63140333A (ja) | 1988-06-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US4754421A (en) | Multiple precision multiplication device | |
EP0416869B1 (en) | Digital adder/accumulator | |
JPH0754457B2 (ja) | 多ビツト加算器 | |
US5493522A (en) | Fast arithmetic modulo divider | |
JPS6226723B2 (ja) | ||
JPH0776914B2 (ja) | 乗算回路 | |
US4570056A (en) | Automatically adaptable radix conversion system for use with variable length input numbers | |
JPH0981541A (ja) | 累算器 | |
JPH0869372A (ja) | 2進乗算器 | |
JP3561051B2 (ja) | 演算同期回路 | |
JPH06314186A (ja) | 加算器連鎖及び加算方法 | |
JPH0695854A (ja) | 除算演算装置 | |
JP3166781B2 (ja) | 加算回路 | |
SU960807A2 (ru) | Функциональный преобразователь | |
JPH04330519A (ja) | 乗算回路 | |
JPH0934687A (ja) | 演算回路および演算方法 | |
SU758145A1 (ru) | Устройство для вычисления квадратного корня 1 | |
SU602941A1 (ru) | Устройство дл возведени в квадрат двоичных чисел | |
JPH05738B2 (ja) | ||
SU1451694A2 (ru) | Устройство дл цифровой двумерной свертки | |
SU864340A1 (ru) | Устройство дл сдвига информации | |
SU1179322A1 (ru) | Устройство дл умножени двух чисел | |
SU1109755A1 (ru) | Устройство дл формировани и хранени вычетов чисел по модулю три | |
SU480080A1 (ru) | Генератор функций уолша | |
SU805416A1 (ru) | Устройство дл сдвига |