JPH05150950A - 乗算回路 - Google Patents
乗算回路Info
- Publication number
- JPH05150950A JPH05150950A JP3342168A JP34216891A JPH05150950A JP H05150950 A JPH05150950 A JP H05150950A JP 3342168 A JP3342168 A JP 3342168A JP 34216891 A JP34216891 A JP 34216891A JP H05150950 A JPH05150950 A JP H05150950A
- Authority
- JP
- Japan
- Prior art keywords
- bit
- supplied
- output
- data
- 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/52—Multiplying; Dividing
- G06F7/523—Multiplying only
- G06F7/533—Reduction of the number of iteration steps or stages, e.g. using the Booth algorithm, log-sum, odd-even
- G06F7/5334—Reduction of the number of iteration steps or stages, e.g. using the Booth algorithm, log-sum, odd-even by using multiple bit scanning, i.e. by decoding groups of successive multiplier bits in order to select an appropriate precalculated multiple of the multiplicand as a partial product
- G06F7/5336—Reduction of the number of iteration steps or stages, e.g. using the Booth algorithm, log-sum, odd-even by using multiple bit scanning, i.e. by decoding groups of successive multiplier bits in order to select an appropriate precalculated multiple of the multiplicand as a partial product overlapped, i.e. with successive bitgroups sharing one or more bits being recoded into signed digit representation, e.g. using the Modified Booth Algorithm
- G06F7/5338—Reduction of the number of iteration steps or stages, e.g. using the Booth algorithm, log-sum, odd-even by using multiple bit scanning, i.e. by decoding groups of successive multiplier bits in order to select an appropriate precalculated multiple of the multiplicand as a partial product overlapped, i.e. with successive bitgroups sharing one or more bits being recoded into signed digit representation, e.g. using the Modified Booth Algorithm each bitgroup having two new bits, e.g. 2nd order MBA
-
- 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/38—Indexing scheme relating to groups G06F7/38 - G06F7/575
- G06F2207/3804—Details
- G06F2207/386—Special constructional features
- G06F2207/3884—Pipelining
-
- 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/499—Denomination or exception handling, e.g. rounding or overflow
- G06F7/49942—Significance control
- G06F7/49947—Rounding
- G06F7/49963—Rounding to nearest
-
- 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/499—Denomination or exception handling, e.g. rounding or overflow
- G06F7/49994—Sign extension
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Computational Mathematics (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Complex Calculations (AREA)
Abstract
(57)【要約】
【目的】 組合わせ回路形の乗算回路では、同一構成の
基本的な回路を繰り返し用い最適且つ効率的な回路設計
を実現する。時分割回路形の乗算回路では、同一構成の
基本的な回路を時間軸で繰り返し用い効率的な回路設計
を実現する。 【構成】 初期値設定回路20の入力形態にて規定され
る補数処理ビットが、変換ビットに等価に変換される。
そして、初期値設定回路20の出力形態とBRA21〜
24の入力形態とが一致せしめられる。また、BRA2
1〜24の入力形態及び出力形態が一致せしめられる。
基本的な回路を繰り返し用い最適且つ効率的な回路設計
を実現する。時分割回路形の乗算回路では、同一構成の
基本的な回路を時間軸で繰り返し用い効率的な回路設計
を実現する。 【構成】 初期値設定回路20の入力形態にて規定され
る補数処理ビットが、変換ビットに等価に変換される。
そして、初期値設定回路20の出力形態とBRA21〜
24の入力形態とが一致せしめられる。また、BRA2
1〜24の入力形態及び出力形態が一致せしめられる。
Description
【0001】
【産業上の利用分野】この発明は、乗算回路、特に集積
回路に好適な乗算回路に関する。
回路に好適な乗算回路に関する。
【0002】
【従来の技術】乗算回路には、部分積を形成し該部分積
を加算することで乗算結果を得るものがある。このよう
な乗算回路では、一般的に、部分積を加算する回路が規
模の点で大きな比重を占める。そこで、乗算回路の回路
規模を縮小するため、ブース(BOOTH) のアルゴリズムを
用いて部分積の数を減らすことが行われる。
を加算することで乗算結果を得るものがある。このよう
な乗算回路では、一般的に、部分積を加算する回路が規
模の点で大きな比重を占める。そこで、乗算回路の回路
規模を縮小するため、ブース(BOOTH) のアルゴリズムを
用いて部分積の数を減らすことが行われる。
【0003】部分積の加算による乗算の概念が、図1
1、図12に示されている。この場合、図11に示され
るような丸め処理と、図12に示されるような補数処理
がなされる。
1、図12に示されている。この場合、図11に示され
るような丸め処理と、図12に示されるような補数処理
がなされる。
【0004】まず、図11を参照し部分積の加算につい
て説明する。図11には2次のブースのアルゴリズムに
よる乗算の概念が示されている。
て説明する。図11には2次のブースのアルゴリズムに
よる乗算の概念が示されている。
【0005】図11に於いて、各部分積PP1〜PP4
では、ビットBP0〜BP7により8ビットの被乗数が表さ
れ、ビットBP8により負の重みを有する先頭ビットSi
(i=1〜4、(Si=−2n-1 ) )が表される。尚、
ビットBP7は(2n-1 ) の桁とされている。また、ビッ
トBPCCにより2の補数表示形式への変換時に加算され
るビット“1”の位置が表わされている。即ち、2次の
ブースのアルゴリズムに於いて、部分積は、0、(±
1)倍、(±2)倍された値をとり得るが、この明細書
に於いて、これらの一括した表示形態として図11の部
分積PP1〜PP4が用いられているものである。
では、ビットBP0〜BP7により8ビットの被乗数が表さ
れ、ビットBP8により負の重みを有する先頭ビットSi
(i=1〜4、(Si=−2n-1 ) )が表される。尚、
ビットBP7は(2n-1 ) の桁とされている。また、ビッ
トBPCCにより2の補数表示形式への変換時に加算され
るビット“1”の位置が表わされている。即ち、2次の
ブースのアルゴリズムに於いて、部分積は、0、(±
1)倍、(±2)倍された値をとり得るが、この明細書
に於いて、これらの一括した表示形態として図11の部
分積PP1〜PP4が用いられているものである。
【0006】図11に於いて、部分積PP2は、LSB
のビットBP0の位置が、部分積PP1のビットBP0の位
置を基準としてMSB側に2ビットずらされる。部分積
PP3、PP4も同様にLSBのビットBP0の位置が2
ビット、MSB側に夫々、ずらされている。
のビットBP0の位置が、部分積PP1のビットBP0の位
置を基準としてMSB側に2ビットずらされる。部分積
PP3、PP4も同様にLSBのビットBP0の位置が2
ビット、MSB側に夫々、ずらされている。
【0007】上述の部分積PP1〜PP4を加算するこ
とによって、図11に示されるように積PRODが形成され
る。この積PRODは、ハードウェア的な制約によって全て
が出力される訳ではなく一部が出力される。図11に示
される例では、図中、一点鎖線LCHから矢示L側の桁が
出力語長に対応して出力される加算データとされ、一点
鎖線LCHから矢示R側の桁が出力されない加算データと
されている。
とによって、図11に示されるように積PRODが形成され
る。この積PRODは、ハードウェア的な制約によって全て
が出力される訳ではなく一部が出力される。図11に示
される例では、図中、一点鎖線LCHから矢示L側の桁が
出力語長に対応して出力される加算データとされ、一点
鎖線LCHから矢示R側の桁が出力されない加算データと
されている。
【0008】図11を参照し丸め処理について説明す
る。丸め処理は、各種の理由から演算結果の一部を出力
する場合に用いられる。図11を例にすれば、出力語長
を規定している一点鎖線LCHの下位の桁にラウンドビッ
ト〔ROUNDING BIT〕BPRUを加算して積PRODを得ると共
に、該積PRODの内、一点鎖線LCHの右側〔矢示R側〕の
データを切り捨てる。このようにして出力語長に対応す
るデータを決定する処理が丸め処理である。
る。丸め処理は、各種の理由から演算結果の一部を出力
する場合に用いられる。図11を例にすれば、出力語長
を規定している一点鎖線LCHの下位の桁にラウンドビッ
ト〔ROUNDING BIT〕BPRUを加算して積PRODを得ると共
に、該積PRODの内、一点鎖線LCHの右側〔矢示R側〕の
データを切り捨てる。このようにして出力語長に対応す
るデータを決定する処理が丸め処理である。
【0009】図12を参照し2の補数処理について説明
する。この補数処理は、図12中、実線LOで示される
各部分積PP1〜PP4のMSB(=−2n-1 ) のみを
特別に処理する必要を解消するためになされるものであ
る。
する。この補数処理は、図12中、実線LOで示される
各部分積PP1〜PP4のMSB(=−2n-1 ) のみを
特別に処理する必要を解消するためになされるものであ
る。
【0010】図12に於いて、先頭ビットSiをシリア
ルに並べると以下のようになる。 −〔(0)(S4)(0)(S3)(0)(S2)
(0)(S1)〕 ここで、全てのビットの極性を反転させると、以下のよ
うになる。尚、以下の“*”は、極性を反転させた状態
を表しているものとする。 〔(1)(S4*)(1)(S3*)(1)(S2*)
(1)(S1*)〕
ルに並べると以下のようになる。 −〔(0)(S4)(0)(S3)(0)(S2)
(0)(S1)〕 ここで、全てのビットの極性を反転させると、以下のよ
うになる。尚、以下の“*”は、極性を反転させた状態
を表しているものとする。 〔(1)(S4*)(1)(S3*)(1)(S2*)
(1)(S1*)〕
【0011】このLSBに補数処理ビットBPC〔=
“1”〕を加算することによって、2の補数処理が実行
される。これによって、部分積PP1〜PP4のMSB
(=−2n-1 ) のみを特別に処理する必要なく、乗算結
果としての積PRODが部分積PP1〜PP4の単なる加算
のみによって得られる。
“1”〕を加算することによって、2の補数処理が実行
される。これによって、部分積PP1〜PP4のMSB
(=−2n-1 ) のみを特別に処理する必要なく、乗算結
果としての積PRODが部分積PP1〜PP4の単なる加算
のみによって得られる。
【0012】上述した2次のブースのアルゴリズムを用
いて乗算を行なう乗算回路の例が図15に示されてい
る。以下、図14の乗算回路について説明する。
いて乗算を行なう乗算回路の例が図15に示されてい
る。以下、図14の乗算回路について説明する。
【0013】図14の構成に於いて、レジスタ205に
はmビット、図示の例では(m=8)の乗数が格納さ
れ、また、レジスタ206にはnビットの被乗数が格納
されている。
はmビット、図示の例では(m=8)の乗数が格納さ
れ、また、レジスタ206にはnビットの被乗数が格納
されている。
【0014】レジスタ205では、乗数が2ビット毎の
単位に分割される。そして、下位側の単位の内の上位桁
1ビットが、上位側の単位の下位桁1ビットとして付加
され、これによって、連続する3ビット単位のデータが
形成される。この3ビット単位のデータは、ブースエン
コーダモジュール〔以下、BEMと称する〕208〜2
11に供給される。 また、レジスタ212には、デー
タ〔=“0”〕が保持されており、該データは、BEM
208に供給される。
単位に分割される。そして、下位側の単位の内の上位桁
1ビットが、上位側の単位の下位桁1ビットとして付加
され、これによって、連続する3ビット単位のデータが
形成される。この3ビット単位のデータは、ブースエン
コーダモジュール〔以下、BEMと称する〕208〜2
11に供給される。 また、レジスタ212には、デー
タ〔=“0”〕が保持されており、該データは、BEM
208に供給される。
【0015】BEM208には、乗数の内、LSB側の
2ビットb1、b2のデータが供給されると共に、レジ
スタ212からのデータ〔=“0”〕がビットb0とし
て供給される。そして、ビットb1、b2の内、上位桁
のビットb2はBEM209の最下位ビットとして供給
される。
2ビットb1、b2のデータが供給されると共に、レジ
スタ212からのデータ〔=“0”〕がビットb0とし
て供給される。そして、ビットb1、b2の内、上位桁
のビットb2はBEM209の最下位ビットとして供給
される。
【0016】同様にして、BEM209には、2ビット
b3、b4のデータが供給される。このBEM209に
は、ビットb2が最下位ビットとして供給される。ま
た、上述の2ビットb3、b4の内、上位桁のビットb
4は、BEM210の最下位ビットとして供給される。
b3、b4のデータが供給される。このBEM209に
は、ビットb2が最下位ビットとして供給される。ま
た、上述の2ビットb3、b4の内、上位桁のビットb
4は、BEM210の最下位ビットとして供給される。
【0017】BEM210には、2ビットb5、b6の
データが供給される。このBEM210には、ビットb
4が最下位ビットとして供給される。また、上述の2ビ
ットb5、b6の内、上位桁のビットb6は、BEM2
11の最下位ビットとして供給される。
データが供給される。このBEM210には、ビットb
4が最下位ビットとして供給される。また、上述の2ビ
ットb5、b6の内、上位桁のビットb6は、BEM2
11の最下位ビットとして供給される。
【0018】BEM211には、2ビットb7、b8の
データが供給される。このBEM211には、ビットb
6が最下位ビットとして供給される。
データが供給される。このBEM211には、ビットb
6が最下位ビットとして供給される。
【0019】BEM208〜211では、上述のように
して供給される3ビットのデータに基づいて、部分積の
倍数と正負の符号を規定するための信号が形成される。
そして、該信号がBEM208〜211から部分積生成
回路〔以下、PPGと称する〕PPG215〜218に
供給される。
して供給される3ビットのデータに基づいて、部分積の
倍数と正負の符号を規定するための信号が形成される。
そして、該信号がBEM208〜211から部分積生成
回路〔以下、PPGと称する〕PPG215〜218に
供給される。
【0020】一方、レジスタ206からは、nビットの
被乗数が部分積生成回路〔以下、PPGと称する〕21
5〜218に供給される。
被乗数が部分積生成回路〔以下、PPGと称する〕21
5〜218に供給される。
【0021】各PPG215〜218では、部分積の倍
数と正負の符号を規定するための信号に基づき、補数処
理〔符号修正処理〕の施された部分積PP215〜PP
218が形成される。
数と正負の符号を規定するための信号に基づき、補数処
理〔符号修正処理〕の施された部分積PP215〜PP
218が形成される。
【0022】部分積PP215〜PP218の夫々は、
nビットの被乗数に、先頭ビットSiが補数処理されて
なる2ビット〔(1)(Si*)〕と、ビットBPCCと
が付加されることにより、(n+3)ビットで表され
る。そして、この部分積PP215〜PP218が、キ
ャリーリップルアダー〔以下、CRAと称する〕221
〜224に供給される。
nビットの被乗数に、先頭ビットSiが補数処理されて
なる2ビット〔(1)(Si*)〕と、ビットBPCCと
が付加されることにより、(n+3)ビットで表され
る。そして、この部分積PP215〜PP218が、キ
ャリーリップルアダー〔以下、CRAと称する〕221
〜224に供給される。
【0023】初期値設定回路220からは、初期値及
び、前述の補数処理ビットBPC等がCRA221に供給
される。また初期値の一部は出力端子を介して取出され
る。
び、前述の補数処理ビットBPC等がCRA221に供給
される。また初期値の一部は出力端子を介して取出され
る。
【0024】CRA221では、PPG215から供給
される部分積PP215と、初期値設定回路220から
供給される初期値及び補数処理ビットBPC等に基づいて
加算がなされる。そして、加算出力が出力端子から取出
されると共に、桁上げ出力が次段のCRA222に供給
される。
される部分積PP215と、初期値設定回路220から
供給される初期値及び補数処理ビットBPC等に基づいて
加算がなされる。そして、加算出力が出力端子から取出
されると共に、桁上げ出力が次段のCRA222に供給
される。
【0025】CRA222では、PPG216から供給
される部分積PP216と、CRA221から供給され
る桁上げ出力とが加算される。そして、加算出力が出力
端子から取出されると共に、桁上げ出力が次段のCRA
223に供給される。
される部分積PP216と、CRA221から供給され
る桁上げ出力とが加算される。そして、加算出力が出力
端子から取出されると共に、桁上げ出力が次段のCRA
223に供給される。
【0026】CRA223では、PPG217から供給
される部分積PP217と、CRA222から供給され
る桁上げ出力とが加算される。そして、加算出力が出力
端子から取出されると共に、桁上げ出力が次段のCRA
224に供給される。
される部分積PP217と、CRA222から供給され
る桁上げ出力とが加算される。そして、加算出力が出力
端子から取出されると共に、桁上げ出力が次段のCRA
224に供給される。
【0027】CRA224では、PPG218から供給
される部分積PP218と、CRA223から供給され
る桁上げ出力とが加算される。そして、加算出力が出力
端子から取出されると共に、桁上げ出力が出力端子に供
給される。これによって、積PRODが得られる。
される部分積PP218と、CRA223から供給され
る桁上げ出力とが加算される。そして、加算出力が出力
端子から取出されると共に、桁上げ出力が出力端子に供
給される。これによって、積PRODが得られる。
【0028】
【発明が解決しようとする課題】従来のブースのアルゴ
リズムを用いた乗算回路では、上述したような部分積P
P1〜PP4の加算にて必要とされる丸め処理、補数処
理等を考慮した部分積PP1〜PP4のアレイが、図1
2に示されるように不規則に2次元的に配置されている
ものであった。
リズムを用いた乗算回路では、上述したような部分積P
P1〜PP4の加算にて必要とされる丸め処理、補数処
理等を考慮した部分積PP1〜PP4のアレイが、図1
2に示されるように不規則に2次元的に配置されている
ものであった。
【0029】従来のブースのアルゴリズムを用いた乗算
回路では、それらの不規則な2次元的な回路構成をある
がまま全体でまとめて取り扱っていた。即ち、レイアウ
ト時に設計者の経験、感によって、できるだけ規則性の
あるレイアウトを作成するといった努力はなされてい
る。しかしながら、回路構成が不規則であるため、LS
I化の過程に於いて、基本的な構成の回路を繰り返し用
いるといった効率的な設計が出来ないという問題点があ
った。
回路では、それらの不規則な2次元的な回路構成をある
がまま全体でまとめて取り扱っていた。即ち、レイアウ
ト時に設計者の経験、感によって、できるだけ規則性の
あるレイアウトを作成するといった努力はなされてい
る。しかしながら、回路構成が不規則であるため、LS
I化の過程に於いて、基本的な構成の回路を繰り返し用
いるといった効率的な設計が出来ないという問題点があ
った。
【0030】例えば、図13に示されるように、AND
ゲート201とフルアダー202を組合わせた乗算セル
を基本回路構成として階層設計を行っていた例はある
が、基本回路構成としては小規模すぎて適当ではなかっ
た。
ゲート201とフルアダー202を組合わせた乗算セル
を基本回路構成として階層設計を行っていた例はある
が、基本回路構成としては小規模すぎて適当ではなかっ
た。
【0031】また、他方では、図14に示される桁上げ
加算器のような冗長な回路を基本回路とし、桁上げ加算
器を並列に並べて乗算を行うものがあった。しかしなが
ら、基本回路として桁上げ加算器を用いることは冗長で
あり、最適設計という点からは好ましくないという問題
点があった。
加算器のような冗長な回路を基本回路とし、桁上げ加算
器を並列に並べて乗算を行うものがあった。しかしなが
ら、基本回路として桁上げ加算器を用いることは冗長で
あり、最適設計という点からは好ましくないという問題
点があった。
【0032】また、組合せ形回路としての乗算回路は、
上述のような考え方でも設計できるが、小規模な回路を
繰返し用いて乗算を行なうといった時分割形回路として
の乗算回路は、効率良く実現できないという問題点があ
った。
上述のような考え方でも設計できるが、小規模な回路を
繰返し用いて乗算を行なうといった時分割形回路として
の乗算回路は、効率良く実現できないという問題点があ
った。
【0033】従って、この発明の目的は、効率的な設計
を可能とし得る乗算回路を提供することにある。
を可能とし得る乗算回路を提供することにある。
【0034】
【課題を解決するための手段】請求項1にかかる発明
は、ブースのアルゴリズムを用いて部分積を形成し、該
部分積の符号修正処理を行い、部分積を加算して乗数と
被乗数の乗算を行う乗算回路に於いて、符号修正処理に
必要なデータの供給をも行う初期値設定手段と、部分積
と、前段の回路から供給されるデータとの加算を行う加
算手段とを少なくとも備え、初期値設定手段は、符号修
正処理に必要なデータを、該データと等価で且つ加算手
段の入力形態の少なくとも一部に適合させた形態で出力
し、加算手段は、データの入力形態の少なくとも一部
と、出力形態の少なくとも一部を同一の形態となした構
成としている。
は、ブースのアルゴリズムを用いて部分積を形成し、該
部分積の符号修正処理を行い、部分積を加算して乗数と
被乗数の乗算を行う乗算回路に於いて、符号修正処理に
必要なデータの供給をも行う初期値設定手段と、部分積
と、前段の回路から供給されるデータとの加算を行う加
算手段とを少なくとも備え、初期値設定手段は、符号修
正処理に必要なデータを、該データと等価で且つ加算手
段の入力形態の少なくとも一部に適合させた形態で出力
し、加算手段は、データの入力形態の少なくとも一部
と、出力形態の少なくとも一部を同一の形態となした構
成としている。
【0035】請求項2にかかる発明は、請求項1記載の
乗算回路に於いて、加算手段を複数接続した構成として
いる。
乗算回路に於いて、加算手段を複数接続した構成として
いる。
【0036】請求項3にかかる発明は、請求項1記載の
乗算回路に於いて、初期値設定手段と加算手段の間に、
データ選択手段を配すると共に、加算手段の後段にデー
タ保持手段を設け、データ保持手段の出力をデータ選択
手段の入力側にフイードバックさせた構成としている。
乗算回路に於いて、初期値設定手段と加算手段の間に、
データ選択手段を配すると共に、加算手段の後段にデー
タ保持手段を設け、データ保持手段の出力をデータ選択
手段の入力側にフイードバックさせた構成としている。
【0037】
【作用】請求項1にかかる発明では、初期値設定手段に
於いて、部分積の符号修正処理〔2の補数処理〕に必要
なデータが、該データと等価で且つ加算手段の入力形態
に適合した形態に変換されて加算手段に供給される。
於いて、部分積の符号修正処理〔2の補数処理〕に必要
なデータが、該データと等価で且つ加算手段の入力形態
に適合した形態に変換されて加算手段に供給される。
【0038】初期値設定手段の出力形態と加算手段の入
力形態とは同一とされ、また、加算手段の入力形態と出
力形態とは同一とされているので、初期値設定手段及び
加算手段の接続、また、加算手段相互の接続は何れも特
別な考慮をはらうことなく可能となる。これによって、
単一構成の加算手段を繰り返して用いること、複数接続
することが可能とされる。
力形態とは同一とされ、また、加算手段の入力形態と出
力形態とは同一とされているので、初期値設定手段及び
加算手段の接続、また、加算手段相互の接続は何れも特
別な考慮をはらうことなく可能となる。これによって、
単一構成の加算手段を繰り返して用いること、複数接続
することが可能とされる。
【0039】請求項2にかかる発明では、上述の請求項
1より明らかなように、加算手段の入力形態と出力形態
とは同一とされているので、加算手段相互の接続は何れ
も特別な考慮をはらうことなく可能となる。これによっ
て、単一構成の加算手段を繰り返して用いること、複数
接続することが可能とされる。
1より明らかなように、加算手段の入力形態と出力形態
とは同一とされているので、加算手段相互の接続は何れ
も特別な考慮をはらうことなく可能となる。これによっ
て、単一構成の加算手段を繰り返して用いること、複数
接続することが可能とされる。
【0040】請求項3にかかる発明では、データ選択手
段にて、初期値設定手段からの出力とデータ保持手段か
らフイードバックされる出力の何れか一方が選択され
る。そして、加算手段にて、上述の出力と部分積との加
算がなされて加算出力が形成され、該加算出力がデータ
保持手段にて保持されると共に、データ選択手段の入力
側にフイードバックされる。このように、巡回形の乗算
回路を構成することが可能となる。
段にて、初期値設定手段からの出力とデータ保持手段か
らフイードバックされる出力の何れか一方が選択され
る。そして、加算手段にて、上述の出力と部分積との加
算がなされて加算出力が形成され、該加算出力がデータ
保持手段にて保持されると共に、データ選択手段の入力
側にフイードバックされる。このように、巡回形の乗算
回路を構成することが可能となる。
【0041】
【実施例】以下、この発明の実施例について図1乃至図
10を参照して説明する。図1乃至図5には、この発明
の一実施例が示されている。この一実施例では、2次の
ブースのアルゴリズムを用いて乗算を行なう組合わせ回
路形の乗算回路に、この発明を適用したものである。
10を参照して説明する。図1乃至図5には、この発明
の一実施例が示されている。この一実施例では、2次の
ブースのアルゴリズムを用いて乗算を行なう組合わせ回
路形の乗算回路に、この発明を適用したものである。
【0042】図1の構成に於いて、レジスタ5にはmビ
ット、図示の例では(m=8)の乗数が格納され、ま
た、レジスタ6にはnビットの被乗数が格納されてい
る。
ット、図示の例では(m=8)の乗数が格納され、ま
た、レジスタ6にはnビットの被乗数が格納されてい
る。
【0043】レジスタ5では、乗数が2ビット毎の単位
に分割される。そして、下位側の単位の内の上位桁1ビ
ットが、上位側の単位の下位桁1ビットとして付加され
る。これによって、連続する3ビット単位のデータが形
成される。この3ビット単位のデータは、ブースエンコ
ーダモジュール〔以下、BEMと称する〕8〜11に供
給される。また、レジスタ12には、データ〔=
“0”〕が保持されており、該データは、BEM8に供
給される。
に分割される。そして、下位側の単位の内の上位桁1ビ
ットが、上位側の単位の下位桁1ビットとして付加され
る。これによって、連続する3ビット単位のデータが形
成される。この3ビット単位のデータは、ブースエンコ
ーダモジュール〔以下、BEMと称する〕8〜11に供
給される。また、レジスタ12には、データ〔=
“0”〕が保持されており、該データは、BEM8に供
給される。
【0044】BEM8には、乗数の内、LSB側の2ビ
ットb1、b2のデータが供給されると共に、レジスタ
12からのデータ〔=“0”〕がビットb0として供給
される。そして、ビットb1、b2の内、上位桁のビッ
トb2は、BEM9の最下位ビットとして供給される。
ットb1、b2のデータが供給されると共に、レジスタ
12からのデータ〔=“0”〕がビットb0として供給
される。そして、ビットb1、b2の内、上位桁のビッ
トb2は、BEM9の最下位ビットとして供給される。
【0045】同様にして、BEM9には、2ビットb
3、b4のデータが供給される。このBEM9には、ビ
ットb2が最下位ビットとして供給される。また、上述
の2ビットb3、b4の内、上位桁のビットb4は、B
EM10の最下位ビットとして供給される。
3、b4のデータが供給される。このBEM9には、ビ
ットb2が最下位ビットとして供給される。また、上述
の2ビットb3、b4の内、上位桁のビットb4は、B
EM10の最下位ビットとして供給される。
【0046】BEM10には、2ビットb5、b6のデ
ータが供給される。このBEM10には、ビットb4が
最下位ビットとして供給される。また、上述の2ビット
b5、b6の内、上位桁のビットb6は、BEM11の
最下位ビットとして供給される。
ータが供給される。このBEM10には、ビットb4が
最下位ビットとして供給される。また、上述の2ビット
b5、b6の内、上位桁のビットb6は、BEM11の
最下位ビットとして供給される。
【0047】BEM11には、2ビットb7、b8のデ
ータが供給される。このBEM11には、ビットb6が
最下位ビットとして供給される。
ータが供給される。このBEM11には、ビットb6が
最下位ビットとして供給される。
【0048】BEM8〜11では、上述のようにして供
給される3ビットのデータに基づいて、部分積の倍数と
正負の符号を規定するための信号が形成される。そし
て、該信号がBEM8〜11から部分積生成回路〔以
下、PPGと称する〕PPG15〜18に供給される。
給される3ビットのデータに基づいて、部分積の倍数と
正負の符号を規定するための信号が形成される。そし
て、該信号がBEM8〜11から部分積生成回路〔以
下、PPGと称する〕PPG15〜18に供給される。
【0049】一方、レジスタ6からは、nビットの被乗
数が部分積生成回路〔以下、PPGと称する〕15〜1
8に供給される。
数が部分積生成回路〔以下、PPGと称する〕15〜1
8に供給される。
【0050】各PPG15〜18では、部分積の倍数と
符号を規定するための信号に基づき、補数処理〔符号修
正処理〕の施された部分積PP15〜PP18が形成さ
れる。
符号を規定するための信号に基づき、補数処理〔符号修
正処理〕の施された部分積PP15〜PP18が形成さ
れる。
【0051】部分積PP15〜PP18の夫々は、nビ
ットの被乗数に、先頭ビットSiが補数処理されてなる
2ビット〔(1)(Si*)〕と、ビットBPCCとが付
加されることにより、(n+3)ビットで表される。そ
して、この部分積PP15〜18が、ブースのアルゴリ
ズム乗算回路用の冗長2進加算器〔Booth RedundancyAd
der、以下、BRAと称する〕21〜24に供給され
る。
ットの被乗数に、先頭ビットSiが補数処理されてなる
2ビット〔(1)(Si*)〕と、ビットBPCCとが付
加されることにより、(n+3)ビットで表される。そ
して、この部分積PP15〜18が、ブースのアルゴリ
ズム乗算回路用の冗長2進加算器〔Booth RedundancyAd
der、以下、BRAと称する〕21〜24に供給され
る。
【0052】初期値設定回路20から出力される初期値
を含むデータの内、LSB側の4ビットが、キャリーリ
ップルアダー〔以下、CRAと称する〕4に供給され、
また、上述のLSB側の4ビットを除いてなる初期値を
含むデータがBRA21に供給される。
を含むデータの内、LSB側の4ビットが、キャリーリ
ップルアダー〔以下、CRAと称する〕4に供給され、
また、上述のLSB側の4ビットを除いてなる初期値を
含むデータがBRA21に供給される。
【0053】尚、上述のPPG15〜18、BRA21
〜24、初期値設定回路20の詳細については後述す
る。また、初期値設定回路20からBRA21へのデー
タの供給、BRA21〜24間でなされるデータの供
給、そして、初期値設定回路20及びBRA21〜24
からCRA4へのデータの供給は1ビット当り2本の、
いわゆる冗長2進表現でなされている。
〜24、初期値設定回路20の詳細については後述す
る。また、初期値設定回路20からBRA21へのデー
タの供給、BRA21〜24間でなされるデータの供
給、そして、初期値設定回路20及びBRA21〜24
からCRA4へのデータの供給は1ビット当り2本の、
いわゆる冗長2進表現でなされている。
【0054】BRA21では、PPG15から供給され
る部分積PP15と、初期値設定回路20からの初期値
を含むデータとが加算される。そして、加算出力の内の
LSB側の4ビットがCRA4に供給され、上述のLS
B側の4ビットを除く加算出力が次段のBRA22に供
給される。
る部分積PP15と、初期値設定回路20からの初期値
を含むデータとが加算される。そして、加算出力の内の
LSB側の4ビットがCRA4に供給され、上述のLS
B側の4ビットを除く加算出力が次段のBRA22に供
給される。
【0055】BRA22では、PPG16から供給され
る部分積PP16と、BRA21から供給される加算出
力とが加算される。そして、加算出力の内のLSB側の
4ビットがCRA4に供給され、上述のLSB側の4ビ
ットを除く加算出力が次段のBRA23に供給される。
る部分積PP16と、BRA21から供給される加算出
力とが加算される。そして、加算出力の内のLSB側の
4ビットがCRA4に供給され、上述のLSB側の4ビ
ットを除く加算出力が次段のBRA23に供給される。
【0056】BRA23では、PPG17から供給され
る部分積PP17と、BRA22から供給される加算出
力とが加算される。そして、加算出力の内のLSB側の
4ビットがCRA4に供給され、上述のLSB側の4ビ
ットを除く加算出力が、次段のBRA24に供給され
る。
る部分積PP17と、BRA22から供給される加算出
力とが加算される。そして、加算出力の内のLSB側の
4ビットがCRA4に供給され、上述のLSB側の4ビ
ットを除く加算出力が、次段のBRA24に供給され
る。
【0057】BRA24では、PPG18から供給され
る部分積PP18と、BRA23から供給される加算出
力とが加算される。そして、加算出力がCRA4に供給
される。
る部分積PP18と、BRA23から供給される加算出
力とが加算される。そして、加算出力がCRA4に供給
される。
【0058】CRA4では、初期値設定回路20、BR
A21〜24から供給されるデータの桁上げ加算がなさ
れ、加算出力が形成される。該加算出力が端子3を介し
て取出される。
A21〜24から供給されるデータの桁上げ加算がなさ
れ、加算出力が形成される。該加算出力が端子3を介し
て取出される。
【0059】PPG15〜18の構成が図2及び図3に
示されている。レジスタ6からのnビットの被乗数が端
子31a〜31hを介して、セレクタ36a〜36iに
供給される。また、レジスタ35には、データ〔=
“0”〕が保持されており、該データは、セレクタ36
a〜36iに供給される。
示されている。レジスタ6からのnビットの被乗数が端
子31a〜31hを介して、セレクタ36a〜36iに
供給される。また、レジスタ35には、データ〔=
“0”〕が保持されており、該データは、セレクタ36
a〜36iに供給される。
【0060】セレクタ36iには、端子31aを介して
供給される被乗数のMSBが2ビットのデータとして、
また、レジスタ35からのデータ〔=“0”〕が1ビッ
トのデータとして供給されている。セレクタ36aに
は、端子31a、31bを介して供給される被乗数の内
の2ビットのデータと、レジスタ35からの1ビットの
データ〔=“0”〕が供給されている。
供給される被乗数のMSBが2ビットのデータとして、
また、レジスタ35からのデータ〔=“0”〕が1ビッ
トのデータとして供給されている。セレクタ36aに
は、端子31a、31bを介して供給される被乗数の内
の2ビットのデータと、レジスタ35からの1ビットの
データ〔=“0”〕が供給されている。
【0061】セレクタ36bには、端子31b、31c
からの2ビットのデータと、レジスタ35からの1ビッ
トのデータが供給されている。セレクタ36cには、端
子31c、31dからの2ビットのデータと、レジスタ
35からの1ビットのデータが供給されている。
からの2ビットのデータと、レジスタ35からの1ビッ
トのデータが供給されている。セレクタ36cには、端
子31c、31dからの2ビットのデータと、レジスタ
35からの1ビットのデータが供給されている。
【0062】セレクタ36dには、端子31d、31e
からの2ビットのデータと、レジスタ35からの1ビッ
トのデータが供給されている。セレクタ36eには、端
子31e、31fからの2ビットのデータと、レジスタ
35からの1ビットのデータが供給されている。
からの2ビットのデータと、レジスタ35からの1ビッ
トのデータが供給されている。セレクタ36eには、端
子31e、31fからの2ビットのデータと、レジスタ
35からの1ビットのデータが供給されている。
【0063】セレクタ36fには、端子31f、31g
からの2ビットのデータと、レジスタ35からの1ビッ
トのデータが供給されている。セレクタ36gには、端
子31g、31hからの2ビットのデータと、レジスタ
35からの1ビットのデータが供給されている。セレク
タ36hでは、端子31hとレジスタ35から夫々、1
ビットのデータが供給されている。
からの2ビットのデータと、レジスタ35からの1ビッ
トのデータが供給されている。セレクタ36gには、端
子31g、31hからの2ビットのデータと、レジスタ
35からの1ビットのデータが供給されている。セレク
タ36hでは、端子31hとレジスタ35から夫々、1
ビットのデータが供給されている。
【0064】セレクタ36hを除くセレクタ36a〜3
6iの夫々では、3入力から1入力が選択され出力され
る。セレクタ36a〜36iに於ける選択は、端子32
a、32bを介して供給される部分積の倍数を表わす信
号に基づいてなされる。また、セレクタ36hでは、2
入力から1入力が選択され出力される。
6iの夫々では、3入力から1入力が選択され出力され
る。セレクタ36a〜36iに於ける選択は、端子32
a、32bを介して供給される部分積の倍数を表わす信
号に基づいてなされる。また、セレクタ36hでは、2
入力から1入力が選択され出力される。
【0065】倍数を表わす信号が〔=0〕である時は、
セレクタ36a〜36iではレジスタ35からのデータ
〔=“0”〕が選択され出力される。
セレクタ36a〜36iではレジスタ35からのデータ
〔=“0”〕が選択され出力される。
【0066】また、倍数を表わす信号が〔=1〕である
時は、セレクタ36a〜36hでは、夫々、対応する端
子36a〜36hの入力が選択され出力される。例え
ば、セレクタ36aでは端子31aの入力が選択され、
セレクタ36bでは端子31bの入力が選択される。以
下、同様にして各セレクタ36c〜36hでは、端子3
1c〜31hの入力が夫々、選択される。
時は、セレクタ36a〜36hでは、夫々、対応する端
子36a〜36hの入力が選択され出力される。例え
ば、セレクタ36aでは端子31aの入力が選択され、
セレクタ36bでは端子31bの入力が選択される。以
下、同様にして各セレクタ36c〜36hでは、端子3
1c〜31hの入力が夫々、選択される。
【0067】そして、倍数を表わす信号が〔=2〕であ
る時は、各セレクタ36a〜36g、セレクタ36iで
は、1ビット下位側の端子31a〜31hから供給され
るデータがシフトされた状態で選択される。例えば、セ
レクタ36iでは端子31aからの入力が選択され、セ
レクタ36aでは端子31bからの入力が選択される。
以下、同様にして各セレクタ36b〜36gでは、端子
31c〜31hの入力が夫々、選択される。
る時は、各セレクタ36a〜36g、セレクタ36iで
は、1ビット下位側の端子31a〜31hから供給され
るデータがシフトされた状態で選択される。例えば、セ
レクタ36iでは端子31aからの入力が選択され、セ
レクタ36aでは端子31bからの入力が選択される。
以下、同様にして各セレクタ36b〜36gでは、端子
31c〜31hの入力が夫々、選択される。
【0068】セレクタ36iの出力は、NOT回路38
を介してインバータ回路39iに供給される。セレクタ
36a〜36gの出力は、インバータ回路39a〜39
gに供給される。セレクタ36hの出力は、インバータ
回路39h、39jに供給される。
を介してインバータ回路39iに供給される。セレクタ
36a〜36gの出力は、インバータ回路39a〜39
gに供給される。セレクタ36hの出力は、インバータ
回路39h、39jに供給される。
【0069】レジスタ39kには、データ〔=“1”〕
が保持されており、該データは端子41kから取出され
る。
が保持されており、該データは端子41kから取出され
る。
【0070】インバータ回路39a〜39jの構成が図
4に示されている。図4の構成に於いて、入力が端子6
1aを介してインバータ62、セレクタ63に夫々、供
給される。インバータ62では、入力が反転されて反転
信号が形成され、該反転信号がセレクタ63に夫々、供
給される。
4に示されている。図4の構成に於いて、入力が端子6
1aを介してインバータ62、セレクタ63に夫々、供
給される。インバータ62では、入力が反転されて反転
信号が形成され、該反転信号がセレクタ63に夫々、供
給される。
【0071】セレクタ63では、端子61bから供給さ
れる制御信号(MINUS) に応じて、2入力の内から1つが
選択され、端子61cから取出される。即ち、BEM8
〜11から供給され、極性を表わす信号が負であると
き、セレクタ63ではインバータ62によって形成され
た反転信号が選択され、また、上述の信号が正であると
き、セレクタ63ではインバータ62を介さない信号が
選択される。これによって、インバータ回路39a〜3
9jからの出力が端子41a〜41jから取出される。
れる制御信号(MINUS) に応じて、2入力の内から1つが
選択され、端子61cから取出される。即ち、BEM8
〜11から供給され、極性を表わす信号が負であると
き、セレクタ63ではインバータ62によって形成され
た反転信号が選択され、また、上述の信号が正であると
き、セレクタ63ではインバータ62を介さない信号が
選択される。これによって、インバータ回路39a〜3
9jからの出力が端子41a〜41jから取出される。
【0072】初期値設定回路20の説明が図4に於いて
なされている。図4Aには、初期値設定回路20のデー
タの入力形態TYIN20が示されている。初期値設定回
路20の入力形態TYIN20では、図示されている桁、
即ち、ビット位置にラウンドビットBPRU0〜BPRU5と補
数処理ビットBPC(i)が設定されている。
なされている。図4Aには、初期値設定回路20のデー
タの入力形態TYIN20が示されている。初期値設定回
路20の入力形態TYIN20では、図示されている桁、
即ち、ビット位置にラウンドビットBPRU0〜BPRU5と補
数処理ビットBPC(i)が設定されている。
【0073】図4Bには、初期値設定回路20のデータ
の出力形態TYOU20が示されている。この出力形態T
YOU20は、上述した入力形態TYIN20がBRA21
〜24の入力形態に適合するように変換されているもの
である。そして、図4Cには、BRA21〜24のデー
タの入力形態TYIN21〜TYIN24が示されている。
の出力形態TYOU20が示されている。この出力形態T
YOU20は、上述した入力形態TYIN20がBRA21
〜24の入力形態に適合するように変換されているもの
である。そして、図4Cには、BRA21〜24のデー
タの入力形態TYIN21〜TYIN24が示されている。
【0074】初期値設定回路20の出力側に於けるデー
タの出力形態TYOU20は、ラウンドビットBPRU0〜BP
RU5と、補数処理ビットBPC(i)の等価的な表現であ
る変換ビットBPCV(k)、BPCV(k+1)、BPCV
(k+2)、・・・、BPCV(i−1)とからなる。そ
して、この出力形態TYOU20は、図4Cに示されるB
RA21〜24の入力形態TYIN21〜TYIN24に等
しくされている。この図4Bの例では、変換ビットBPC
V(i−1)が、変換ビットBPCV(k+7)とされて
いる。
タの出力形態TYOU20は、ラウンドビットBPRU0〜BP
RU5と、補数処理ビットBPC(i)の等価的な表現であ
る変換ビットBPCV(k)、BPCV(k+1)、BPCV
(k+2)、・・・、BPCV(i−1)とからなる。そ
して、この出力形態TYOU20は、図4Cに示されるB
RA21〜24の入力形態TYIN21〜TYIN24に等
しくされている。この図4Bの例では、変換ビットBPC
V(i−1)が、変換ビットBPCV(k+7)とされて
いる。
【0075】上述の図4A、Bに於いて、変換ビットBP
CVに付されている(k)〜(i)は、夫々、該当する
ビットの桁、即ち、2k 〜2i を表わしている。従っ
て、一点鎖線LCH0に示される補数処理ビットBPCは
(2i )の値を有し、一点鎖線LCH1に示される変換ビ
ットBPCV(k)〜BPCV(i−1)は(2・2k +2
(k+1) +2(k+2) +2(k+3) +・・・・+2(i-1) )の
値を有している。
CVに付されている(k)〜(i)は、夫々、該当する
ビットの桁、即ち、2k 〜2i を表わしている。従っ
て、一点鎖線LCH0に示される補数処理ビットBPCは
(2i )の値を有し、一点鎖線LCH1に示される変換ビ
ットBPCV(k)〜BPCV(i−1)は(2・2k +2
(k+1) +2(k+2) +2(k+3) +・・・・+2(i-1) )の
値を有している。
【0076】従って、図4A、B及び上述の説明より、
補数処理ビットBPCの値(2i )と、変換ビットBPCV
(k)〜BPCV(i−1)の値(2・2k +2(k+1) +
2(k+2) +2(k+3) +・・・・+2(i-1))は以下の式
で示されるように等価である。
補数処理ビットBPCの値(2i )と、変換ビットBPCV
(k)〜BPCV(i−1)の値(2・2k +2(k+1) +
2(k+2) +2(k+3) +・・・・+2(i-1))は以下の式
で示されるように等価である。
【0077】このように、補数処理ビットBPC(i)
〔=(2i )〕を該補数処理ビットBPC(i)と等価な
変換ビットBPCV(k)〜BPCV(i−1)に置き換え
ると共に、該変換ビットBPCV(k)〜BPCV(i−
1)及びラウンドビットBPRU0〜BPRU5を初期値設定回
路20の出力形態TYOU20として設定し、該出力形態
TYOU20をBRA21〜24の入力形態TYIN21〜
TYIN24に適合するように構成している。
〔=(2i )〕を該補数処理ビットBPC(i)と等価な
変換ビットBPCV(k)〜BPCV(i−1)に置き換え
ると共に、該変換ビットBPCV(k)〜BPCV(i−
1)及びラウンドビットBPRU0〜BPRU5を初期値設定回
路20の出力形態TYOU20として設定し、該出力形態
TYOU20をBRA21〜24の入力形態TYIN21〜
TYIN24に適合するように構成している。
【0078】これによって、BRA21に補数処理ビッ
トBPC(i)を加算するための構成が不要となる。従っ
て、BRA21〜24は全て同一構成とすることがで
き、基本的な回路として用いることが可能となる。
トBPC(i)を加算するための構成が不要となる。従っ
て、BRA21〜24は全て同一構成とすることがで
き、基本的な回路として用いることが可能となる。
【0079】上述したBRA21〜24の説明及び構成
が図5に示されている。ここでは、例としてBRA21
を説明しているが、他のBRA22〜24についても全
く同様である。
が図5に示されている。ここでは、例としてBRA21
を説明しているが、他のBRA22〜24についても全
く同様である。
【0080】図5Aには、BRA21に於けるデータの
入力形態TYIN21が示されている。この入力形態TY
IN21は、前段の回路である初期値設定回路20の出力
形態TYOU20に対応するものである。この入力形態T
YIN21は、ラウンドビットBPRU0〜BPRU5と、変換ビ
ットBPCV(k)、BPCV(k+1)、BPCV(k+
2)、・・・、BPCV(i−1)からなる。
入力形態TYIN21が示されている。この入力形態TY
IN21は、前段の回路である初期値設定回路20の出力
形態TYOU20に対応するものである。この入力形態T
YIN21は、ラウンドビットBPRU0〜BPRU5と、変換ビ
ットBPCV(k)、BPCV(k+1)、BPCV(k+
2)、・・・、BPCV(i−1)からなる。
【0081】図5Bには、PPG15からBRA21に
供給される部分積PP15の例が示されている。この部
分積PP15は、ビットBP0〜BP7により8ビットの被
乗数が表され、ビットBPCCにより2の補数表示形式へ
の変換時に加算されるビット“1”の位置が表わされて
いる。また、この部分積PP15は、2の補数処理のた
めに、MSB側のビットBP9、BP8が〔(1)(S
*)〕とされている。尚、“*”は、極性を反転させた
状態を表している。
供給される部分積PP15の例が示されている。この部
分積PP15は、ビットBP0〜BP7により8ビットの被
乗数が表され、ビットBPCCにより2の補数表示形式へ
の変換時に加算されるビット“1”の位置が表わされて
いる。また、この部分積PP15は、2の補数処理のた
めに、MSB側のビットBP9、BP8が〔(1)(S
*)〕とされている。尚、“*”は、極性を反転させた
状態を表している。
【0082】図5Cには、BRA21の構成が示されて
いる。図5Cの構成に於いて、BRA21は、加算器4
5a〜45gと、インバータ46とから構成されてい
る。
いる。図5Cの構成に於いて、BRA21は、加算器4
5a〜45gと、インバータ46とから構成されてい
る。
【0083】加算器45a〜45gは全加算器である。
この加算器45a〜45gは、入力形態TYIN21と部
分積PP15とをビット毎に加算して加算出力Sum 及び
桁上げ出力Coを求め、該加算出力Sum 及び桁上げ出力Co
によって、図5Dに示される出力形態TYOU21を構成
するものである。
この加算器45a〜45gは、入力形態TYIN21と部
分積PP15とをビット毎に加算して加算出力Sum 及び
桁上げ出力Coを求め、該加算出力Sum 及び桁上げ出力Co
によって、図5Dに示される出力形態TYOU21を構成
するものである。
【0084】加算器45gでは、入力形態TYIN20の
変換ビットBPCV(k)と部分積PP15のビットBP0
の加算がなされ、加算出力Sum gと桁上げ出力Cogが求
められる。そして、該加算出力Sum gは出力形態TYOU
21の変換ビットBPCV(k)とされ、桁上げ出力Cog
は出力形態TYOU21の変換ビットBPCV(k+1)と
される。また、部分積PP15の補数処理ビットBPCC
が出力形態TYOU21の変換ビットBPCV(k)とされ
る。
変換ビットBPCV(k)と部分積PP15のビットBP0
の加算がなされ、加算出力Sum gと桁上げ出力Cogが求
められる。そして、該加算出力Sum gは出力形態TYOU
21の変換ビットBPCV(k)とされ、桁上げ出力Cog
は出力形態TYOU21の変換ビットBPCV(k+1)と
される。また、部分積PP15の補数処理ビットBPCC
が出力形態TYOU21の変換ビットBPCV(k)とされ
る。
【0085】加算器45fでは、入力形態TYIN20の
ラウンドビットBPRU0及び変換ビットBPCV(k+1)
と、ビットBP1の加算がなされ、加算出力Sum fと桁上
げ出力Cofが求められる。そして、該加算出力Sum fは
出力形態TYOU21のラウンドビットBPRU0とされ、桁
上げ出力Cofは出力形態TYOU21の変換ビットBPCV
(k+2)とされる。
ラウンドビットBPRU0及び変換ビットBPCV(k+1)
と、ビットBP1の加算がなされ、加算出力Sum fと桁上
げ出力Cofが求められる。そして、該加算出力Sum fは
出力形態TYOU21のラウンドビットBPRU0とされ、桁
上げ出力Cofは出力形態TYOU21の変換ビットBPCV
(k+2)とされる。
【0086】加算器45eでは、ラウンドビットBPRU1
及び変換ビットBPCV(k+2)と、ビットBP2の加算
がなされ、加算出力Sum eと桁上げ出力Coeが求められ
る。そして、該加算出力Sum eは出力形態TYOU21の
ラウンドビットBPRU1とされ、桁上げ出力Coeは出力形
態TYOU21の変換ビットBPCV(k+3)とされる。
及び変換ビットBPCV(k+2)と、ビットBP2の加算
がなされ、加算出力Sum eと桁上げ出力Coeが求められ
る。そして、該加算出力Sum eは出力形態TYOU21の
ラウンドビットBPRU1とされ、桁上げ出力Coeは出力形
態TYOU21の変換ビットBPCV(k+3)とされる。
【0087】加算器45dでは、ラウンドビットBPRU2
及び変換ビットBPCV(k+3)と、ビットBP3の加算
がなされ、加算出力Sum dと桁上げ出力Codが求められ
る。そして、該加算出力Sum dは出力形態TYOU21の
ラウンドビットBPRU2とされ、桁上げ出力Codは出力形
態TYOU21の変換ビットBPCV(k+4)とされる。
及び変換ビットBPCV(k+3)と、ビットBP3の加算
がなされ、加算出力Sum dと桁上げ出力Codが求められ
る。そして、該加算出力Sum dは出力形態TYOU21の
ラウンドビットBPRU2とされ、桁上げ出力Codは出力形
態TYOU21の変換ビットBPCV(k+4)とされる。
【0088】加算器45cでは、ラウンドビットBPRU3
及び変換ビットBPCV(k+4)と、ビットBP4の加算
がなされ、加算出力Sum cと桁上げ出力Cocが求められ
る。そして、該加算出力Sum cは出力形態TYOU21の
ラウンドビットBPRU3とされ、桁上げ出力Cocは出力形
態TYOU21の変換ビットBPCV(k+5)とされる。
及び変換ビットBPCV(k+4)と、ビットBP4の加算
がなされ、加算出力Sum cと桁上げ出力Cocが求められ
る。そして、該加算出力Sum cは出力形態TYOU21の
ラウンドビットBPRU3とされ、桁上げ出力Cocは出力形
態TYOU21の変換ビットBPCV(k+5)とされる。
【0089】加算器45bでは、ラウンドビットBPRU4
及び変換ビットBPCV(k+5)と、ビットBP5の加算
がなされ、加算出力Sum bと桁上げ出力Cobが求められ
る。そして、該加算出力Sum bは出力形態TYOU21の
ラウンドビットBPRU4とされ、桁上げ出力Cobは出力形
態TYOU21の変換ビットBPCV(k+6)とされる。
及び変換ビットBPCV(k+5)と、ビットBP5の加算
がなされ、加算出力Sum bと桁上げ出力Cobが求められ
る。そして、該加算出力Sum bは出力形態TYOU21の
ラウンドビットBPRU4とされ、桁上げ出力Cobは出力形
態TYOU21の変換ビットBPCV(k+6)とされる。
【0090】加算器45aでは、ラウンドビットBPRU5
及び変換ビットBPCV(k+6)と、ビットBP6の加算
がなされ、加算出力Sum aと桁上げ出力Coaが求められ
る。そして、該加算出力Sum aは出力形態TYOU21の
ラウンドビットBPRU5とされ、桁上げ出力Coaは出力形
態TYOU21の変換ビットBPCV(k+7)とされる。
及び変換ビットBPCV(k+6)と、ビットBP6の加算
がなされ、加算出力Sum aと桁上げ出力Coaが求められ
る。そして、該加算出力Sum aは出力形態TYOU21の
ラウンドビットBPRU5とされ、桁上げ出力Coaは出力形
態TYOU21の変換ビットBPCV(k+7)とされる。
【0091】図5に示されるように、部分積PP15の
ビットBP7は、そのまま出力形態TYOU21の変換ビッ
トBPCV(k+8)とされ、また、インバータ46を介
して得られる反転出力が出力形態TYOU21のビットBP
7とされる。そして、部分積PP15の極性を示すビッ
トBP8は、出力形態TYOU21に於いて、極性を示すビ
ットBP8とされる。更に、“1”の立てられているビッ
トBP9は、出力形態TYOU21に於いて、“1”の立て
られているビットBP9とされる。
ビットBP7は、そのまま出力形態TYOU21の変換ビッ
トBPCV(k+8)とされ、また、インバータ46を介
して得られる反転出力が出力形態TYOU21のビットBP
7とされる。そして、部分積PP15の極性を示すビッ
トBP8は、出力形態TYOU21に於いて、極性を示すビ
ットBP8とされる。更に、“1”の立てられているビッ
トBP9は、出力形態TYOU21に於いて、“1”の立て
られているビットBP9とされる。
【0092】図5D、E、Fに示されるように、出力形
態TYOU21は、CRA4に供給される出力形態TYOU
21aと、次段のBRA22に供給される出力形態TY
OU21bとに分割される。
態TYOU21は、CRA4に供給される出力形態TYOU
21aと、次段のBRA22に供給される出力形態TY
OU21bとに分割される。
【0093】出力形態TYOU21aは、図5Eに示され
るように、変換ビットBPCV(k)、BPCV(k+
1)、ラウンドビットBPRU0とによって構成されてい
る。また、出力形態TYOU21bは、図5Dに示される
ように、変換ビットBPCV(k+2)〜BPCV(k+
8)、ラウンドビットBPRU1〜BPRU5、ビットBP7〜BP
9とによって構成されている。
るように、変換ビットBPCV(k)、BPCV(k+
1)、ラウンドビットBPRU0とによって構成されてい
る。また、出力形態TYOU21bは、図5Dに示される
ように、変換ビットBPCV(k+2)〜BPCV(k+
8)、ラウンドビットBPRU1〜BPRU5、ビットBP7〜BP
9とによって構成されている。
【0094】BRA21では、出力形態TYOU21bを
次段のBRA22のデータの入力形態TYIN22に適合
させるために、図5Dから図5Fに示される出力形態の
変換がなされる。即ち、図5Fに示されるように、図5
Dに示される変換ビットBPCV(k+2)〜BPCV(k
+8)が変換ビットBPCV(k)〜BPCV(k+6)に
変換され、また、図5Dに示されるラウンドビットBPRU
1が変換ビットBPCV(k)に変換される。
次段のBRA22のデータの入力形態TYIN22に適合
させるために、図5Dから図5Fに示される出力形態の
変換がなされる。即ち、図5Fに示されるように、図5
Dに示される変換ビットBPCV(k+2)〜BPCV(k
+8)が変換ビットBPCV(k)〜BPCV(k+6)に
変換され、また、図5Dに示されるラウンドビットBPRU
1が変換ビットBPCV(k)に変換される。
【0095】そして、図5Dに示されるラウンドビット
BPRU2〜BPRU5及びビットBP7〜BP7がラウンドビット
BPRU0〜BPRU4に変換され、極性を示すビットBP8がビ
ットBP6の位置に変換される。更に、補数処理の為に
“1”の立てられているビットBP9が出力形態TYOU2
1bに於けるビットBP7の位置に変換される。
BPRU2〜BPRU5及びビットBP7〜BP7がラウンドビット
BPRU0〜BPRU4に変換され、極性を示すビットBP8がビ
ットBP6の位置に変換される。更に、補数処理の為に
“1”の立てられているビットBP9が出力形態TYOU2
1bに於けるビットBP7の位置に変換される。
【0096】このように、この一実施例では、初期値設
定回路20の入力形態TYIN20にて規定され2の補数
処理〔符号修正処理〕のために用いられる補数処理ビッ
トBPC(i)〔=(2i )〕が、該補数処理ビットBPC
(i)と等価な変換ビットBPCV(k)〜BPCV(i−
1)に変換される。そして、該変換ビットBPCV(k)
〜BPCV(i−1)とラウンドビットBPRU0〜BPRU5に
よって、BRA21〜24の入力形態TYIN21〜24
と一致する初期値設定回路20の出力形態TYOU20が
構成される。更に、BRA21〜24の入力形態TYIN
21〜24及び出力形態TYOU21〜24が一致せしめ
られる。
定回路20の入力形態TYIN20にて規定され2の補数
処理〔符号修正処理〕のために用いられる補数処理ビッ
トBPC(i)〔=(2i )〕が、該補数処理ビットBPC
(i)と等価な変換ビットBPCV(k)〜BPCV(i−
1)に変換される。そして、該変換ビットBPCV(k)
〜BPCV(i−1)とラウンドビットBPRU0〜BPRU5に
よって、BRA21〜24の入力形態TYIN21〜24
と一致する初期値設定回路20の出力形態TYOU20が
構成される。更に、BRA21〜24の入力形態TYIN
21〜24及び出力形態TYOU21〜24が一致せしめ
られる。
【0097】従って、BRA21〜24側にて補数処理
ビットBPC(i)を加算する構成を、考慮・設定する必
要がなくなり、BRA21〜24を全て同一構成とする
ことができる。
ビットBPC(i)を加算する構成を、考慮・設定する必
要がなくなり、BRA21〜24を全て同一構成とする
ことができる。
【0098】これにより、組合わせ回路形の乗算回路に
於いて、同一構成のBRA21〜24を基本回路とし、
該基本回路を繰り返し用いて乗算回路を構成することが
でき、回路設計を効率化することが可能となる。また、
BRA21〜24は、冗長な構成ではないため、最適な
設計が可能となる。
於いて、同一構成のBRA21〜24を基本回路とし、
該基本回路を繰り返し用いて乗算回路を構成することが
でき、回路設計を効率化することが可能となる。また、
BRA21〜24は、冗長な構成ではないため、最適な
設計が可能となる。
【0099】図6には、上述の一実施例の変形例が示さ
れている。この変形例では、2次のブースのアルゴリズ
ムを用いて乗算を行なうパイプライン形の乗算回路に、
この発明を適用したものである。
れている。この変形例では、2次のブースのアルゴリズ
ムを用いて乗算を行なうパイプライン形の乗算回路に、
この発明を適用したものである。
【0100】この図6に示される変形例が、上述の一実
施例と異なる点は、図6中、例えば、一点鎖線Lch5の
位置にパイプラインレジスタを挿入していることであ
る。このパイプラインレジスタの挿入によって、高速化
を図ることが可能となる。
施例と異なる点は、図6中、例えば、一点鎖線Lch5の
位置にパイプラインレジスタを挿入していることであ
る。このパイプラインレジスタの挿入によって、高速化
を図ることが可能となる。
【0101】パイプラインレジスタを挿入する位置は、
図6に示される一点鎖線Lch5の位置のみに限定される
ものではなく、任意の位置に、また、複数の位置に挿入
することが可能である。尚、その他の構成、作用、効果
等の内容については、前述した一実施例と同様につき、
同一部分を同一符号で示すに止め、重複する説明を省略
する。
図6に示される一点鎖線Lch5の位置のみに限定される
ものではなく、任意の位置に、また、複数の位置に挿入
することが可能である。尚、その他の構成、作用、効果
等の内容については、前述した一実施例と同様につき、
同一部分を同一符号で示すに止め、重複する説明を省略
する。
【0102】図7及び図8には、他の実施例が示されて
いる。以下、図7及び図8を参照して他の実施例につい
て説明する。この他の実施例では、2次のブースのアル
ゴリズムを用いて乗算を行なう時分割回路形の乗算回路
に、この発明を適用したものである。尚、一実施例と同
様の部分については、同一部分を同一符号で示すに止め
重複する説明を省略する。
いる。以下、図7及び図8を参照して他の実施例につい
て説明する。この他の実施例では、2次のブースのアル
ゴリズムを用いて乗算を行なう時分割回路形の乗算回路
に、この発明を適用したものである。尚、一実施例と同
様の部分については、同一部分を同一符号で示すに止め
重複する説明を省略する。
【0103】図7に示される他の実施例が、前述の一実
施例と異なる点は、前述の一実施例に於けるBRA21
〜24の内、BRA21のみを時分割して用いること
で、前述の一実施例と同様の乗算を行っていることであ
る。また、BRA21のみを用いているため、BEM、
PPG等もBRA21に対応するBEM8、PPG15
のみを用いている。
施例と異なる点は、前述の一実施例に於けるBRA21
〜24の内、BRA21のみを時分割して用いること
で、前述の一実施例と同様の乗算を行っていることであ
る。また、BRA21のみを用いているため、BEM、
PPG等もBRA21に対応するBEM8、PPG15
のみを用いている。
【0104】図7の構成に於いて、レジスタ5に格納さ
れている8ビットの乗数がビットb1〜b8としてセレ
クタ51に供給される。また、レジスタ52には、デー
タ〔=“0”〕が保持されており、該データはセレクタ
51に供給される。そして、レジスタ6に格納されてい
るnビットの被乗数がPPG15に供給される。
れている8ビットの乗数がビットb1〜b8としてセレ
クタ51に供給される。また、レジスタ52には、デー
タ〔=“0”〕が保持されており、該データはセレクタ
51に供給される。そして、レジスタ6に格納されてい
るnビットの被乗数がPPG15に供給される。
【0105】セレクタ51では、タイミングジェネレー
タ53から供給されるタイミング信号に基づいて、部分
積PPの生成に必要な連続3ビットb(i-1) 、b
(i) 、b(i+1) のデータを、8ビットの乗数の内、
LSB側からMSB側にかけて順次、選択して出力す
る。この3ビットのデータはBEM8に供給される。
タ53から供給されるタイミング信号に基づいて、部分
積PPの生成に必要な連続3ビットb(i-1) 、b
(i) 、b(i+1) のデータを、8ビットの乗数の内、
LSB側からMSB側にかけて順次、選択して出力す
る。この3ビットのデータはBEM8に供給される。
【0106】BEM8では、供給される3ビットのデー
タに基づいて、部分積PP15の倍数と符号を規定する
ための信号が形成される。該信号がPPG15に供給さ
れる。
タに基づいて、部分積PP15の倍数と符号を規定する
ための信号が形成される。該信号がPPG15に供給さ
れる。
【0107】PPG15では、上述の部分積PP15の
倍数と符号を規定するための信号に基づき、補数処理
〔符号修正処理〕の施された部分積PP15が形成され
る。この部分積PP15は、nビットの被乗数に、先頭
ビットSiが補数処理されてなる2ビット〔(1)(S
i*)〕と、ビットBPCCとが付加されることにより、
(n+3)ビットで表される。該部分積はBRA21に
供給される。
倍数と符号を規定するための信号に基づき、補数処理
〔符号修正処理〕の施された部分積PP15が形成され
る。この部分積PP15は、nビットの被乗数に、先頭
ビットSiが補数処理されてなる2ビット〔(1)(S
i*)〕と、ビットBPCCとが付加されることにより、
(n+3)ビットで表される。該部分積はBRA21に
供給される。
【0108】一方、初期値設定回路20から出力される
初期値を含むデータが、セレクタ54に供給される。セ
レクタ54では、タイミングジェネレータ53から供給
されるタイミング信号に基づいて、初期値設定回路20
から供給される初期値を含むデータと、レジスタ55か
らフイードバックされるデータとの切替えがなされる。
このセレクタ54に於けるデータの選択は、第1回目の
加算では初期値設定回路20からの初期値を含むデータ
が選択され、第2回目以後の加算ではレジスタ55から
フイードバックされるデータが選択される。セレクタ5
5にて選択されたデータはBRA21に供給される。
初期値を含むデータが、セレクタ54に供給される。セ
レクタ54では、タイミングジェネレータ53から供給
されるタイミング信号に基づいて、初期値設定回路20
から供給される初期値を含むデータと、レジスタ55か
らフイードバックされるデータとの切替えがなされる。
このセレクタ54に於けるデータの選択は、第1回目の
加算では初期値設定回路20からの初期値を含むデータ
が選択され、第2回目以後の加算ではレジスタ55から
フイードバックされるデータが選択される。セレクタ5
5にて選択されたデータはBRA21に供給される。
【0109】BRA21では、PPG15から供給され
る部分積PP15と、セレクタ54から供給されるデー
タとが加算され、加算出力が形成される。該加算出力は
レジスタ55に供給される。
る部分積PP15と、セレクタ54から供給されるデー
タとが加算され、加算出力が形成される。該加算出力は
レジスタ55に供給される。
【0110】レジスタ55では、タイミングジェネレー
タ53からのクロックCLK に基づいて、BRA21から
供給されるデータが取込まれる。該取込まれてなるデー
タが、CRA56、セレクタ54にそれぞれ供給され
る。
タ53からのクロックCLK に基づいて、BRA21から
供給されるデータが取込まれる。該取込まれてなるデー
タが、CRA56、セレクタ54にそれぞれ供給され
る。
【0111】CRA56では、レジスタ55から供給さ
れるデータから、図5Eに示される出力形態TYOU21
aのデータが抽出される。そして、該データがクロック
CLKの各タイミングに於いて加算される。そして、該C
RA56にて桁上げ加算がなされて、加算出力が端子3
から取出される。
れるデータから、図5Eに示される出力形態TYOU21
aのデータが抽出される。そして、該データがクロック
CLKの各タイミングに於いて加算される。そして、該C
RA56にて桁上げ加算がなされて、加算出力が端子3
から取出される。
【0112】図8には、この他の実施例の回路動作のタ
イミングチャートが示されている。以下、図8を参照し
て、時点t0〜t1、t1〜t2、t2〜t3、t3〜
t4の夫々に於けるセレクタ54、BRA21、レジス
タ55からなるループの回路動作を中心に説明する。
イミングチャートが示されている。以下、図8を参照し
て、時点t0〜t1、t1〜t2、t2〜t3、t3〜
t4の夫々に於けるセレクタ54、BRA21、レジス
タ55からなるループの回路動作を中心に説明する。
【0113】PPG15では、図8Dに示されるよう
に、時点t0〜t1の間、BEM8からの信号に基づき
部分積PP1が形成されてBRA21に供給される。セ
レクタ54では、時点t0〜t1の間、図8Eに示され
るように、初期値INITが選択されBRA21に供給され
る。
に、時点t0〜t1の間、BEM8からの信号に基づき
部分積PP1が形成されてBRA21に供給される。セ
レクタ54では、時点t0〜t1の間、図8Eに示され
るように、初期値INITが選択されBRA21に供給され
る。
【0114】BRA21では、時点t0〜t1の間、部
分積PP1と初期値INITの加算がなされ、図8Fに示さ
れる加算出力〔=INIT+PP1〕が形成される。該加算
出力〔=INIT+PP1〕はレジスタ55に供給される。
分積PP1と初期値INITの加算がなされ、図8Fに示さ
れる加算出力〔=INIT+PP1〕が形成される。該加算
出力〔=INIT+PP1〕はレジスタ55に供給される。
【0115】レジスタ55では、クロックCLK のタイミ
ングに基づいて、上述の加算出力〔=INIT+PP1〕が
取込まれる。加算出力〔=INIT+PP1〕は、セレクタ
54にフイードバックされると共に、CRA56に供給
される。
ングに基づいて、上述の加算出力〔=INIT+PP1〕が
取込まれる。加算出力〔=INIT+PP1〕は、セレクタ
54にフイードバックされると共に、CRA56に供給
される。
【0116】CRA56では、供給される加算出力〔=
INIT+PP1〕の内、図5Eに示される出力形態TYOU
21aのデータのみが保持される。
INIT+PP1〕の内、図5Eに示される出力形態TYOU
21aのデータのみが保持される。
【0117】PPG15では、時点t1〜t2の間、B
EM8からの信号に基づいて、部分積PP2が形成され
BRA21に供給される。セレクタ54では、時点t1
〜t2の間、レジスタ55からフイードバックされる加
算出力〔=INIT+PP1〕が選択され、BRA21に供
給される。
EM8からの信号に基づいて、部分積PP2が形成され
BRA21に供給される。セレクタ54では、時点t1
〜t2の間、レジスタ55からフイードバックされる加
算出力〔=INIT+PP1〕が選択され、BRA21に供
給される。
【0118】BRA21では、時点t1〜t2の間、部
分積PP2と加算出力〔=INIT+PP1〕との加算がな
され、加算出力〔=INIT+PP1+PP2〕が形成され
る。該加算出力はレジスタ55に供給される。
分積PP2と加算出力〔=INIT+PP1〕との加算がな
され、加算出力〔=INIT+PP1+PP2〕が形成され
る。該加算出力はレジスタ55に供給される。
【0119】レジスタ55では、クロックCLK のタイミ
ングに基づいて、上述の加算出力〔=INIT+PP1+P
P2〕が取込まれる。この加算出力は、セレクタ54に
フイードバックされると共に、CRA56に供給され
る。CRA56では、加算出力の内、図5Eに示される
出力形態TYOU21aのデータのみが保持される。
ングに基づいて、上述の加算出力〔=INIT+PP1+P
P2〕が取込まれる。この加算出力は、セレクタ54に
フイードバックされると共に、CRA56に供給され
る。CRA56では、加算出力の内、図5Eに示される
出力形態TYOU21aのデータのみが保持される。
【0120】PPG15では、時点t2〜t3の間、B
EM8からの信号に基づいて、部分積PP3が形成され
BRA21に供給される。セレクタ54では、時点t2
〜t3の間、レジスタ55からフイードバックされる加
算出力〔=INIT+PP1+PP2〕が選択され、BRA
21に供給される。
EM8からの信号に基づいて、部分積PP3が形成され
BRA21に供給される。セレクタ54では、時点t2
〜t3の間、レジスタ55からフイードバックされる加
算出力〔=INIT+PP1+PP2〕が選択され、BRA
21に供給される。
【0121】BRA21では、時点t2〜t3の間、部
分積PP3と加算出力〔=INIT+PP1+PP2〕との
加算がなされ、加算出力〔=INIT+PP1+PP2+P
P3〕が形成される。該加算出力はレジスタ55に供給
される。
分積PP3と加算出力〔=INIT+PP1+PP2〕との
加算がなされ、加算出力〔=INIT+PP1+PP2+P
P3〕が形成される。該加算出力はレジスタ55に供給
される。
【0122】レジスタ55では、クロックCLK のタイミ
ングに基づいて、上述の加算出力〔=INIT+PP1+P
P2+PP3〕が取込まれる。この加算出力は、セレク
タ54にフイードバックされると共に、CRA56に供
給される。CRA56では、加算出力の内、図5Eに示
される出力形態TYOU21aのデータのみが保持され
る。
ングに基づいて、上述の加算出力〔=INIT+PP1+P
P2+PP3〕が取込まれる。この加算出力は、セレク
タ54にフイードバックされると共に、CRA56に供
給される。CRA56では、加算出力の内、図5Eに示
される出力形態TYOU21aのデータのみが保持され
る。
【0123】PPG15では、時点t3〜t4の間、B
EM8からの信号に基づいて、部分積PP4が形成され
BRA21に供給される。セレクタ54では、時点t3
〜t4の間、レジスタ55からフイードバックされてい
る加算出力〔=INIT+PP1+PP2+PP3〕が選択
され、BRA21に供給される。
EM8からの信号に基づいて、部分積PP4が形成され
BRA21に供給される。セレクタ54では、時点t3
〜t4の間、レジスタ55からフイードバックされてい
る加算出力〔=INIT+PP1+PP2+PP3〕が選択
され、BRA21に供給される。
【0124】BRA21では、時点t3〜t4の間、部
分積PP4と加算出力〔=INIT+PP1+PP2+PP
3〕との加算がなされ、加算出力〔=INIT+PP1+P
P2+PP3+PP4〕が形成される。該加算出力はレ
ジスタ55に供給される。
分積PP4と加算出力〔=INIT+PP1+PP2+PP
3〕との加算がなされ、加算出力〔=INIT+PP1+P
P2+PP3+PP4〕が形成される。該加算出力はレ
ジスタ55に供給される。
【0125】レジスタ55では、クロックCLK のタイミ
ングに基づいて、上述の加算出力〔=INIT+PP1+P
P2+PP3+PP4〕が取込まれる。この加算出力
は、セレクタ54にフイードバックされると共に、CR
A56に供給される。CRA56では、加算出力の内、
図5Eに示される出力形態TYOU21aのデータのみ保
持される。
ングに基づいて、上述の加算出力〔=INIT+PP1+P
P2+PP3+PP4〕が取込まれる。この加算出力
は、セレクタ54にフイードバックされると共に、CR
A56に供給される。CRA56では、加算出力の内、
図5Eに示される出力形態TYOU21aのデータのみ保
持される。
【0126】そして、図8Gに示される時点t4以後に
於いて、CRA56では桁上げ加算がなされ、図8Hに
示される乗算結果〔=X・Y〕が形成される。そして、
この乗算結果〔=X・Y〕は端子3から取出される。
於いて、CRA56では桁上げ加算がなされ、図8Hに
示される乗算結果〔=X・Y〕が形成される。そして、
この乗算結果〔=X・Y〕は端子3から取出される。
【0127】このように、他の実施例では、セレクタ5
4→BRA21→レジスタ55→CRA56のループに
加え、レジスタ55からセレクタ54へのフイードバッ
クループを合わせて設けているので、BRA21を時分
割して用いることができ、回路設計を効率化できる。
4→BRA21→レジスタ55→CRA56のループに
加え、レジスタ55からセレクタ54へのフイードバッ
クループを合わせて設けているので、BRA21を時分
割して用いることができ、回路設計を効率化できる。
【0128】この他の実施例では、対象とする回路が時
分割回路形の乗算回路であることを除いて前述の一実施
例と同一の内容である。対象とする回路が時分割回路形
の乗算回路であること以外の構成、作用、効果等の内容
については、前述した一実施例と同様につき、同一部分
を同一符号で示すに止め重複する説明を省略する。
分割回路形の乗算回路であることを除いて前述の一実施
例と同一の内容である。対象とする回路が時分割回路形
の乗算回路であること以外の構成、作用、効果等の内容
については、前述した一実施例と同様につき、同一部分
を同一符号で示すに止め重複する説明を省略する。
【0129】図9及び図10には、更に他の実施例が示
されている。以下、図9及び図10を参照して更に他の
実施例について説明する。この更に他の実施例では、2
次のブースのアルゴリズムを用いて乗算を行なう時分割
回路形の乗算回路に、この発明を適用したものである。
尚、前述の一実施例或いは他の実施例と同様の部分につ
いては、同一部分を同一符号で示すに止め重複する説明
を省略する。
されている。以下、図9及び図10を参照して更に他の
実施例について説明する。この更に他の実施例では、2
次のブースのアルゴリズムを用いて乗算を行なう時分割
回路形の乗算回路に、この発明を適用したものである。
尚、前述の一実施例或いは他の実施例と同様の部分につ
いては、同一部分を同一符号で示すに止め重複する説明
を省略する。
【0130】図9に示される更に他の実施例が、他の実
施例と共通する点は、対象とする乗算回路を時分割回路
形の乗算回路としていることであり、また、他の実施例
と異なる点は、フイードバックループを図示の例では2
段にしていることである。
施例と共通する点は、対象とする乗算回路を時分割回路
形の乗算回路としていることであり、また、他の実施例
と異なる点は、フイードバックループを図示の例では2
段にしていることである。
【0131】図9の構成に於いて、レジスタ5に格納さ
れている8ビットの乗数がビットb1〜b8としてレジ
スタ62、セレクタ64に供給される。また、レジスタ
52には、データ〔=“0”〕が保持されており、該デ
ータはセレクタ64に供給される。そして、レジスタ6
に格納されているnビットの被乗数がレジスタ63、P
PG15に供給される。
れている8ビットの乗数がビットb1〜b8としてレジ
スタ62、セレクタ64に供給される。また、レジスタ
52には、データ〔=“0”〕が保持されており、該デ
ータはセレクタ64に供給される。そして、レジスタ6
に格納されているnビットの被乗数がレジスタ63、P
PG15に供給される。
【0132】セレクタ64では、タイミングジェネレー
タ61から供給されるクロックCLKに基づいて、部分積
PPの生成に必要な連続する3ビットb(i-1) 、b
(i)、b(i+1) のデータを、8ビットの乗数の内、
LSB側からMSB側にかけて順次、選択して出力す
る。3ビットのデータは、BEM8aに供給される。
タ61から供給されるクロックCLKに基づいて、部分積
PPの生成に必要な連続する3ビットb(i-1) 、b
(i)、b(i+1) のデータを、8ビットの乗数の内、
LSB側からMSB側にかけて順次、選択して出力す
る。3ビットのデータは、BEM8aに供給される。
【0133】BEM8aでは、供給される3ビットのデ
ータに基づいて、部分積の倍数と符号を規定するための
信号が形成される。該信号がPPG15aに供給され
る。
ータに基づいて、部分積の倍数と符号を規定するための
信号が形成される。該信号がPPG15aに供給され
る。
【0134】PPG15aでは、上述の部分積の倍数と
符号を規定するための信号に基づき、補数処理〔符号修
正処理〕の施された部分積が形成される。該部分積は、
nビットの被乗数に、先頭ビットSiが補数処理されて
なる2ビット〔(1)(Si*)〕と、ビットBPCCと
が付加されることにより、(n+3)ビットで表され
る。該部分積はBRA21aに供給される。
符号を規定するための信号に基づき、補数処理〔符号修
正処理〕の施された部分積が形成される。該部分積は、
nビットの被乗数に、先頭ビットSiが補数処理されて
なる2ビット〔(1)(Si*)〕と、ビットBPCCと
が付加されることにより、(n+3)ビットで表され
る。該部分積はBRA21aに供給される。
【0135】一方、初期値設定回路20から出力される
初期値を含むデータが、セレクタ54aに供給される。
セレクタ54aでは、タイミングジェネレータ61から
供給されるクロックCLK に基づいて、初期値設定回路2
0から供給される初期値を含むデータと、レジスタ55
aからフイードバックされるデータとの切替えがなされ
る。尚、セレクタ54aに於けるデータの選択は、他の
実施例に示されるレジスタ54と同様であり、既に詳述
されているので、重複する説明を省略する。セレクタ5
4aにて選択されたデータはBRA21aに供給され
る。
初期値を含むデータが、セレクタ54aに供給される。
セレクタ54aでは、タイミングジェネレータ61から
供給されるクロックCLK に基づいて、初期値設定回路2
0から供給される初期値を含むデータと、レジスタ55
aからフイードバックされるデータとの切替えがなされ
る。尚、セレクタ54aに於けるデータの選択は、他の
実施例に示されるレジスタ54と同様であり、既に詳述
されているので、重複する説明を省略する。セレクタ5
4aにて選択されたデータはBRA21aに供給され
る。
【0136】BRA21aでは、PPG15aから供給
される部分積と、セレクタ54aから供給されるデータ
とが加算され、加算出力が形成される。該加算出力はレ
ジスタ55aに供給される。また、加算出力の内、図5
に示される出力形態TYOU21aのデータのみがレジス
タ65に取込まれる。
される部分積と、セレクタ54aから供給されるデータ
とが加算され、加算出力が形成される。該加算出力はレ
ジスタ55aに供給される。また、加算出力の内、図5
に示される出力形態TYOU21aのデータのみがレジス
タ65に取込まれる。
【0137】レジスタ65に保持されたデータは、クロ
ックCLK のタイミングにて、レジスタ66、71、72
に順次、取込まれる。そして、レジスタ71、72に保
持されたデータは、クロックCLK のタイミングにて、C
RA4に取込まれる。
ックCLK のタイミングにて、レジスタ66、71、72
に順次、取込まれる。そして、レジスタ71、72に保
持されたデータは、クロックCLK のタイミングにて、C
RA4に取込まれる。
【0138】レジスタ55aでは、タイミングジェネレ
ータ53からのクロックCLK に基づいて、BRA21a
から供給されるデータが取込まれると共に、次段のセレ
クタ54b、初段のセレクタ54aにそれぞれ供給され
る。
ータ53からのクロックCLK に基づいて、BRA21a
から供給されるデータが取込まれると共に、次段のセレ
クタ54b、初段のセレクタ54aにそれぞれ供給され
る。
【0139】一方、レジスタ62に格納されている8ビ
ットの乗数がビットb1〜b8としてセレクタ68に供
給される。また、レジスタ52には、データ〔=
“0”〕が保持されており、該データはセレクタ68に
供給される。そして、レジスタ63に格納されているn
ビットの被乗数がPPG15bに供給される。
ットの乗数がビットb1〜b8としてセレクタ68に供
給される。また、レジスタ52には、データ〔=
“0”〕が保持されており、該データはセレクタ68に
供給される。そして、レジスタ63に格納されているn
ビットの被乗数がPPG15bに供給される。
【0140】セレクタ68では、タイミングジェネレー
タ61から供給されるクロックCLKに基づいて、部分積
PPの生成に必要な連続3ビットb(i-1) 、b(i)
、b(i+1) のデータを、8ビットの乗数の内、LS
B側からMSB側にかけて順次、選択して出力する。こ
の3ビットのデータはBEM8bに供給される。
タ61から供給されるクロックCLKに基づいて、部分積
PPの生成に必要な連続3ビットb(i-1) 、b(i)
、b(i+1) のデータを、8ビットの乗数の内、LS
B側からMSB側にかけて順次、選択して出力する。こ
の3ビットのデータはBEM8bに供給される。
【0141】BEM8bでは、上述の3ビットのデータ
に基づき、BEM8aと同様にして部分積の倍数と符号
を規定するための信号が形成される。該信号がPPG1
5bに供給される。
に基づき、BEM8aと同様にして部分積の倍数と符号
を規定するための信号が形成される。該信号がPPG1
5bに供給される。
【0142】PPG15bでは、上述の部分積の倍数と
符号を規定するための信号に基づき、PPG15aと同
様にして部分積が形成される。該部分積はBRA21b
に供給される。
符号を規定するための信号に基づき、PPG15aと同
様にして部分積が形成される。該部分積はBRA21b
に供給される。
【0143】一方、レジスタ55aから出力される値
が、セレクタ54bに供給される。セレクタ54bで
は、タイミングジェネレータ61から供給されるクロッ
クCLK に基づいて、レジスタ55aから供給されるデー
タと、レジスタ55bからフイードバックされるデータ
との切替えがなされる。尚、セレクタ54bに於けるデ
ータの選択は、他の実施例に示されるレジスタ54と同
様であり、既に詳述されているので、重複する説明を省
略する。セレクタ54bにて選択されたデータはBRA
21bに供給される。
が、セレクタ54bに供給される。セレクタ54bで
は、タイミングジェネレータ61から供給されるクロッ
クCLK に基づいて、レジスタ55aから供給されるデー
タと、レジスタ55bからフイードバックされるデータ
との切替えがなされる。尚、セレクタ54bに於けるデ
ータの選択は、他の実施例に示されるレジスタ54と同
様であり、既に詳述されているので、重複する説明を省
略する。セレクタ54bにて選択されたデータはBRA
21bに供給される。
【0144】BRA21bでは、PPG15bから供給
される部分積と、セレクタ54bから供給されるデータ
とが加算され、加算出力が形成される。該加算出力はレ
ジスタ55bに供給される。また、加算出力の内、図5
に示される出力形態TYOU21aのデータのみがレジス
タ69に取込まれる。
される部分積と、セレクタ54bから供給されるデータ
とが加算され、加算出力が形成される。該加算出力はレ
ジスタ55bに供給される。また、加算出力の内、図5
に示される出力形態TYOU21aのデータのみがレジス
タ69に取込まれる。
【0145】レジスタ69に保持されているデータは、
クロックCLK のタイミングにて、CRA4、次段のレジ
スタ70に取込まれる。また、レジスタ70に保持され
たデータは、クロックCLK のタイミングにて、CRA4
に取込まれる。
クロックCLK のタイミングにて、CRA4、次段のレジ
スタ70に取込まれる。また、レジスタ70に保持され
たデータは、クロックCLK のタイミングにて、CRA4
に取込まれる。
【0146】レジスタ55bでは、タイミングジェネレ
ータ61からのクロックCLK に基づいて、BRA21b
から供給されるデータが取込まれると共に、セレクタ5
4b、CRA4にそれぞれ供給される。
ータ61からのクロックCLK に基づいて、BRA21b
から供給されるデータが取込まれると共に、セレクタ5
4b、CRA4にそれぞれ供給される。
【0147】CRA4では、レジスタ55b、69、7
0、71、72から供給されるデータが加算される。そ
して、該CRA4にて桁上げ加算がなされて、加算出力
が端子3から取出される。
0、71、72から供給されるデータが加算される。そ
して、該CRA4にて桁上げ加算がなされて、加算出力
が端子3から取出される。
【0148】図10には、この更に他の実施例の回路動
作のタイミングチャートが示されている。以下、図10
を参照して回路動作の説明を行う。尚、この更に他の実
施例に於けるセレクタ64、68、BEM8a、8b、
PPG15a、15b、BRA21a、21b、セレク
タ54a、54b、レジスタ55a、55b等の機能、
構成は、前述した他の実施例に於けるセレクタ51、B
EM8、PPG15、BRA21、セレクタ54、レジ
スタ55と同様であるので、重複する説明を省略する。
作のタイミングチャートが示されている。以下、図10
を参照して回路動作の説明を行う。尚、この更に他の実
施例に於けるセレクタ64、68、BEM8a、8b、
PPG15a、15b、BRA21a、21b、セレク
タ54a、54b、レジスタ55a、55b等の機能、
構成は、前述した他の実施例に於けるセレクタ51、B
EM8、PPG15、BRA21、セレクタ54、レジ
スタ55と同様であるので、重複する説明を省略する。
【0149】図10Aに示されるように、時点t00〜
t20の間、レジスタ5から乗数Xがセレクタ64、レ
ジスタ62に供給される。また、図10Bに示されるよ
うに、時点t00〜t20の間、レジスタ6から被乗数
YがPPG15a、レジスタ63に供給される。
t20の間、レジスタ5から乗数Xがセレクタ64、レ
ジスタ62に供給される。また、図10Bに示されるよ
うに、時点t00〜t20の間、レジスタ6から被乗数
YがPPG15a、レジスタ63に供給される。
【0150】PPG15aでは、図10Cに示されるよ
うに、時点t00〜t10の間では、部分積PP1が形
成されてBRA21aに供給される。また、セレクタ5
4aでは、図10Dに示されるように、時点t00〜t
10の間、初期値INITが選択される。この初期値INITは
BRA21に供給される。
うに、時点t00〜t10の間では、部分積PP1が形
成されてBRA21aに供給される。また、セレクタ5
4aでは、図10Dに示されるように、時点t00〜t
10の間、初期値INITが選択される。この初期値INITは
BRA21に供給される。
【0151】BRA21では、時点t00〜t10の
間、部分積PP1と初期値INITの加算がなされ、加算出
力〔=INIT+PP1〕が形成される。該加算出力〔=IN
IT+PP1〕はレジスタ55aに取込まれると共に、セ
レクタ54aにフイードバックされる。また、加算出力
の内、図5に示される出力形態TYOU21aのデータの
みがレジスタ65に取込まれる。
間、部分積PP1と初期値INITの加算がなされ、加算出
力〔=INIT+PP1〕が形成される。該加算出力〔=IN
IT+PP1〕はレジスタ55aに取込まれると共に、セ
レクタ54aにフイードバックされる。また、加算出力
の内、図5に示される出力形態TYOU21aのデータの
みがレジスタ65に取込まれる。
【0152】PPG15aでは、時点t10〜t20の
間、図10Cに示されるように、該部分積PP2が形成
されてBRA21aに供給される。また、セレクタ54
aでは、時点t10〜t20の間、レジスタ55aから
フイードバックされている加算出力〔=INIT+PP1〕
が選択され、BRA21aに供給される。
間、図10Cに示されるように、該部分積PP2が形成
されてBRA21aに供給される。また、セレクタ54
aでは、時点t10〜t20の間、レジスタ55aから
フイードバックされている加算出力〔=INIT+PP1〕
が選択され、BRA21aに供給される。
【0153】BRA21aでは、時点t10〜t20の
間、部分積PP2と加算出力〔=INIT+PP1〕の加算
がなされ、加算出力〔=INIT+PP1+PP2〕が形成
される。該加算出力〔=INIT+PP1+PP2〕はレジ
スタ55aに取込まれると共に、セレクタ54aにフイ
ードバックされる。
間、部分積PP2と加算出力〔=INIT+PP1〕の加算
がなされ、加算出力〔=INIT+PP1+PP2〕が形成
される。該加算出力〔=INIT+PP1+PP2〕はレジ
スタ55aに取込まれると共に、セレクタ54aにフイ
ードバックされる。
【0154】前述の時点t00〜t10の間にレジスタ
65に取込まれた内容がレジスタ66に取込まれ、ま
た、時点t10〜t20に於ける加算出力〔=INIT+P
P1+PP2〕の内、図5に示される出力形態TYOU2
1aのデータのみがレジスタ65に取込まれる。
65に取込まれた内容がレジスタ66に取込まれ、ま
た、時点t10〜t20に於ける加算出力〔=INIT+P
P1+PP2〕の内、図5に示される出力形態TYOU2
1aのデータのみがレジスタ65に取込まれる。
【0155】セレクタ54bでは、時点t20〜t30
の間、図10Fに示されるように、レジスタ54bから
の加算出力〔=INIT+PP1+PP2〕が選択され、B
RA21bに供給される。また、PPG15bでは、時
点t20〜t30の間、図10Eに示されるように部分
積PP3が形成されてBRA21bに供給される。
の間、図10Fに示されるように、レジスタ54bから
の加算出力〔=INIT+PP1+PP2〕が選択され、B
RA21bに供給される。また、PPG15bでは、時
点t20〜t30の間、図10Eに示されるように部分
積PP3が形成されてBRA21bに供給される。
【0156】BRA21bでは、時点t20〜t30の
間、部分積PP3と加算出力〔=INIT+PP1+PP
2〕の加算がなされ、加算出力〔=INIT+PP1+PP
2+PP3〕が形成される。該加算出力〔=INIT+PP
1+PP2+PP3〕はレジスタ55b取込まれると共
に、セレクタ54bにフイードバックされる。また、加
算出力の内、図5に示される出力形態TYOU21aに対
応するデータのみがレジスタ69に供給され取込まれ
る。
間、部分積PP3と加算出力〔=INIT+PP1+PP
2〕の加算がなされ、加算出力〔=INIT+PP1+PP
2+PP3〕が形成される。該加算出力〔=INIT+PP
1+PP2+PP3〕はレジスタ55b取込まれると共
に、セレクタ54bにフイードバックされる。また、加
算出力の内、図5に示される出力形態TYOU21aに対
応するデータのみがレジスタ69に供給され取込まれ
る。
【0157】BRA21bからの加算出力〔=INIT+P
P1+PP2+PP3〕が、レジスタ55b、レジスタ
69に供給され取込まれるタイミングでは、レジスタ6
6に保持されている内容がレジスタ71に取込まれると
共に、レジスタ65に保持されている内容がレジスタ6
6に取込まれる。
P1+PP2+PP3〕が、レジスタ55b、レジスタ
69に供給され取込まれるタイミングでは、レジスタ6
6に保持されている内容がレジスタ71に取込まれると
共に、レジスタ65に保持されている内容がレジスタ6
6に取込まれる。
【0158】セレクタ54bでは、時点t30〜t40
の間、レジスタ54bからの加算出力が選択される。
の間、レジスタ54bからの加算出力が選択される。
【0159】PPG15bでは、時点t30〜t40の
間、図10Eに示されるように、部分積PP4が形成さ
れてBRA21に供給される。また、セレクタ54bで
は、時点t30〜t40の間、レジスタ54bからの加
算出力〔=INIT+PP1+PP2+PP3〕が選択され
BRA21bに供給される。
間、図10Eに示されるように、部分積PP4が形成さ
れてBRA21に供給される。また、セレクタ54bで
は、時点t30〜t40の間、レジスタ54bからの加
算出力〔=INIT+PP1+PP2+PP3〕が選択され
BRA21bに供給される。
【0160】BRA21bでは、時点t30〜t40の
間、部分積PP4と加算出力〔=INIT+PP1+PP2
+PP3〕の加算がなされ、加算出力〔=INIT+PP1
+PP2+PP3+PP4〕が形成される。該加算出力
はレジスタ55bに供給され取込まれる。
間、部分積PP4と加算出力〔=INIT+PP1+PP2
+PP3〕の加算がなされ、加算出力〔=INIT+PP1
+PP2+PP3+PP4〕が形成される。該加算出力
はレジスタ55bに供給され取込まれる。
【0161】前述の時点t20〜t30の間にレジスタ
69に取込まれた内容がレジスタ70に取込まれる。ま
た、時点t30〜t40に於ける加算出力〔=INIT+P
P1+PP2+PP3+PP4〕の内、図5に示される
出力形態TYOU21aに対応するデータのみがレジスタ
69に供給され取込まれる。
69に取込まれた内容がレジスタ70に取込まれる。ま
た、時点t30〜t40に於ける加算出力〔=INIT+P
P1+PP2+PP3+PP4〕の内、図5に示される
出力形態TYOU21aに対応するデータのみがレジスタ
69に供給され取込まれる。
【0162】BRA21bからの加算出力〔=INIT+P
P1+PP2+PP3+PP4〕が、レジスタ55b、
レジスタ69に供給され取込まれるタイミングでは、レ
ジスタ71に保持されている内容がレジスタ72に取込
まれると共に、レジスタ66に保持されている内容がレ
ジスタ71に取込まれる。
P1+PP2+PP3+PP4〕が、レジスタ55b、
レジスタ69に供給され取込まれるタイミングでは、レ
ジスタ71に保持されている内容がレジスタ72に取込
まれると共に、レジスタ66に保持されている内容がレ
ジスタ71に取込まれる。
【0163】CRA4では、時点t30〜t40の間、
レジスタ55bから供給される加算出力〔=INIT+PP
1+PP2+PP3+PP4〕、レジスタ69、70、
71、72から供給される内容が取込まれる。そして、
図10Gに示される時点t40以後に於いて、CRA4
では桁上げ加算がなされ、乗数Xと被乗数Yの乗算結果
〔=X・Y〕が形成される。そして、この乗算結果〔=
X・Y〕は端子3から取出される。
レジスタ55bから供給される加算出力〔=INIT+PP
1+PP2+PP3+PP4〕、レジスタ69、70、
71、72から供給される内容が取込まれる。そして、
図10Gに示される時点t40以後に於いて、CRA4
では桁上げ加算がなされ、乗数Xと被乗数Yの乗算結果
〔=X・Y〕が形成される。そして、この乗算結果〔=
X・Y〕は端子3から取出される。
【0164】この更に他の実施例は、他の実施例と同様
の内容であり、同一部分を同一符号で示すに止め、重複
する説明を省略する。
の内容であり、同一部分を同一符号で示すに止め、重複
する説明を省略する。
【0165】
【発明の効果】この発明にかかる乗算回路によれば、組
合わせ回路形の乗算回路では、同一構成の基本的な回路
を、繰り返し用いることができ、最適且つ効率的な回路
設計を実現することができるという効果がある。
合わせ回路形の乗算回路では、同一構成の基本的な回路
を、繰り返し用いることができ、最適且つ効率的な回路
設計を実現することができるという効果がある。
【0166】また、時分割回路形の乗算回路では、同一
構成の基本的な回路を、時間軸に於いて繰り返し用いる
ことができ、効率的な回路設計を実現することができる
という効果がある。
構成の基本的な回路を、時間軸に於いて繰り返し用いる
ことができ、効率的な回路設計を実現することができる
という効果がある。
【図面の簡単な説明】
【図1】この発明に係る乗算回路の一実施例を示すブロ
ック図である。
ック図である。
【図2】乗算回路に於ける部分積生成回路の構成を示す
ブロック図である。
ブロック図である。
【図3】部分積生成回路に於けるインバータの構成を示
すブロック図である。
すブロック図である。
【図4】乗算回路に於ける初期値設定回路を説明する説
明図である。
明図である。
【図5】乗算回路に於ける冗長2進加算器の構成及び作
用を説明する説明図である。
用を説明する説明図である。
【図6】この発明に係る一実施例の変形例を示すブロッ
ク図である。
ク図である。
【図7】この発明に係る乗算回路の他の実施例を示すブ
ロック図である。
ロック図である。
【図8】他の実施例の動作を説明するタイミングチャー
トである。
トである。
【図9】この発明に係る乗算回路の更に他の実施例を示
すブロック図である。
すブロック図である。
【図10】更に他の実施例の動作を説明するタイミング
チャートである。
チャートである。
【図11】2次のブースのアルゴリズムを用いた部分積
加算を説明する説明図である。
加算を説明する説明図である。
【図12】2次のブースのアルゴリズムに基づく部分積
加算の際になされる符号修正を説明する説明図である。
加算の際になされる符号修正を説明する説明図である。
【図13】乗算セルの構成を示すブロック図である。
【図14】従来の乗算回路の構成を示すブロック図であ
る。
る。
8、9、10、11 ブースエンコーダモジュール 8a、8b ブースエンコーダモジュール 15、16、17、18 部分積生成回路 15a、15b 部分積生成回路 20 初期値設定回路 21、22、23、24 冗長2進加算器 21a、21b 冗長2進加算器 54、54a、54b セレクタ 55、55a、55b レジスタ TYIN20 入力形態 TYIN21、TYIN22、TYIN23、TYIN24 入
力形態 TYOU20 出力形態 TYOU21、TYOU22、TYOU23、TYOU24 出
力形態
力形態 TYOU20 出力形態 TYOU21、TYOU22、TYOU23、TYOU24 出
力形態
Claims (3)
- 【請求項1】 ブースのアルゴリズムを用いて部分積を
形成し、該部分積の符号修正処理を行い、上記部分積を
加算して乗数と被乗数の乗算を行う乗算回路に於いて、 上記符号修正処理に必要なデータの供給をも行う初期値
設定手段と、 上記部分積と、前段の回路から供給されるデータとの加
算を行う加算手段とを少なくとも備え、 上記初期値設定手段は、上記符号修正処理に必要なデー
タを、該データと等価で且つ上記加算手段の入力形態の
少なくとも一部に適合させた形態で出力し、 上記加算手段は、データの入力形態の少なくとも一部
と、出力形態の少なくとも一部を同一の形態となしたこ
とを特徴とする乗算回路。 - 【請求項2】 請求項1記載の乗算回路に於いて、 加算手段を複数接続したことを特徴とする乗算回路。
- 【請求項3】 請求項1記載の乗算回路に於いて、 初期値設定手段と加算手段の間に、データ選択手段を配
すると共に、上記加算手段の後段にデータ保持手段を設
け、 上記データ保持手段の出力を上記データ選択手段の入力
側にフイードバックさせたことを特徴とする乗算回路。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP3342168A JPH05150950A (ja) | 1991-11-29 | 1991-11-29 | 乗算回路 |
DE1992631911 DE69231911T2 (de) | 1991-11-29 | 1992-11-30 | Digitale Multipliziererschaltung |
EP19920310911 EP0545654B1 (en) | 1991-11-29 | 1992-11-30 | Digital multiplier circuit |
US08/292,589 US5521855A (en) | 1991-11-29 | 1994-08-18 | Multiplying circuit |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP3342168A JPH05150950A (ja) | 1991-11-29 | 1991-11-29 | 乗算回路 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH05150950A true JPH05150950A (ja) | 1993-06-18 |
Family
ID=18351651
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP3342168A Pending JPH05150950A (ja) | 1991-11-29 | 1991-11-29 | 乗算回路 |
Country Status (3)
Country | Link |
---|---|
EP (1) | EP0545654B1 (ja) |
JP (1) | JPH05150950A (ja) |
DE (1) | DE69231911T2 (ja) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FR2722590B1 (fr) * | 1994-07-15 | 1996-09-06 | Sgs Thomson Microelectronics | Circuit logique de multiplication parallele |
KR0158647B1 (ko) * | 1995-05-22 | 1998-12-15 | 윤종용 | 부호/무부호 수 겸용 곱셈기 |
JP3678512B2 (ja) | 1996-08-29 | 2005-08-03 | 富士通株式会社 | 乗算回路、該乗算回路を構成する加算回路、該乗算回路の部分積ビット圧縮方法、および、該乗算回路を適用した大規模半導体集積回路 |
JPH10133856A (ja) * | 1996-10-31 | 1998-05-22 | Nec Corp | 丸め機能付き乗算方法及び乗算器 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2526287B2 (ja) * | 1989-05-30 | 1996-08-21 | 富士通株式会社 | 演算回路 |
DE69032391T2 (de) * | 1989-11-13 | 1998-10-29 | Harris Corp | Mehrere Bit umkodierender Multiplizierer |
-
1991
- 1991-11-29 JP JP3342168A patent/JPH05150950A/ja active Pending
-
1992
- 1992-11-30 DE DE1992631911 patent/DE69231911T2/de not_active Expired - Fee Related
- 1992-11-30 EP EP19920310911 patent/EP0545654B1/en not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
DE69231911D1 (de) | 2001-08-09 |
EP0545654A2 (en) | 1993-06-09 |
EP0545654B1 (en) | 2001-07-04 |
DE69231911T2 (de) | 2002-04-04 |
EP0545654A3 (en) | 1993-10-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2000259394A (ja) | 浮動小数点乗算器 | |
JPS60163128A (ja) | 乗算回路 | |
JPS588009B2 (ja) | デイジタル乗算器 | |
JPH01169531A (ja) | 高速二進・十進算術論理演算装置および二進化十進数に対する演算方法 | |
JPH0831025B2 (ja) | 乗算回路 | |
US4879677A (en) | Parallel adder circuit with sign bit decoder for multiplier | |
JP2970231B2 (ja) | 並列乗算回路 | |
JPH05150950A (ja) | 乗算回路 | |
GB2262637A (en) | Padding scheme for optimized multiplication. | |
EP1039372A1 (en) | Semiconductor circuit for arithmetic operation and method of arithmetic operation | |
US5521855A (en) | Multiplying circuit | |
US4866655A (en) | Arithmetic processor and divider using redundant signed digit | |
US7607165B2 (en) | Method and apparatus for multiplication and/or modular reduction processing | |
EP0281303A2 (en) | Modulo arithmetic processor chip | |
JP3222313B2 (ja) | 演算装置及び演算方法 | |
JP3190826B2 (ja) | 積和演算装置 | |
JP3123060B2 (ja) | ディジタル演算回路 | |
JP3461706B2 (ja) | ディジットシリアル乗算器 | |
JP4042215B2 (ja) | 演算処理装置およびその方法 | |
JP3482102B2 (ja) | 絶対値距離演算回路 | |
JP3197186B2 (ja) | 半導体メモリを用いた乗算装置 | |
Dadda et al. | A parallel-serial decimal multiplier architecture | |
JP3433487B2 (ja) | 2進10進変換器 | |
JP3205020B2 (ja) | 演算装置 | |
JPH08292875A (ja) | 乗算処理装置 |