JPH04227534A - アレイ乗算器 - Google Patents
アレイ乗算器Info
- Publication number
- JPH04227534A JPH04227534A JP3128805A JP12880591A JPH04227534A JP H04227534 A JPH04227534 A JP H04227534A JP 3128805 A JP3128805 A JP 3128805A JP 12880591 A JP12880591 A JP 12880591A JP H04227534 A JPH04227534 A JP H04227534A
- Authority
- JP
- Japan
- Prior art keywords
- signal
- input
- inverter
- multiplier
- output
- 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 OR CALCULATING; 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/53—Multiplying only in parallel-parallel fashion, i.e. both operands being entered in parallel
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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/501—Half or full adders, i.e. basic adder cells for one denomination
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Computational Mathematics (AREA)
- Mathematical Analysis (AREA)
- Pure & Applied Mathematics (AREA)
- Mathematical Optimization (AREA)
- Theoretical Computer Science (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Logic Circuits (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【0001】
【産業上の利用分野】本発明は、デジタル信号処理及び
同様の適用において使用するデジタル乗算器に関するも
のであり、それは、特に、トランジスタ数が小さい全加
算器セルと小さなダイ面積条件によって特徴付けられる
アレイ乗算器に関するものである。
同様の適用において使用するデジタル乗算器に関するも
のであり、それは、特に、トランジスタ数が小さい全加
算器セルと小さなダイ面積条件によって特徴付けられる
アレイ乗算器に関するものである。
【0002】
【従来の技術】デジタル信号処理においては、実行せね
ばならない最も頻繁な演算のうちの一つは二つのデジタ
ル数の乗算である。しばしば、例えば変換を計算する場
合のような複雑な演算を実行する場合には、数百又は数
千の乗算を実行せねばならない。
ばならない最も頻繁な演算のうちの一つは二つのデジタ
ル数の乗算である。しばしば、例えば変換を計算する場
合のような複雑な演算を実行する場合には、数百又は数
千の乗算を実行せねばならない。
【0003】最も基本的なレベルにおいては、被乗数の
各デジッドを乗数の各個別的なデジッドと乗算させるこ
とによって二進乗算を行ない、各この様な乗算は部分積
を形成する。乗数ビットが0である場合には、部分積は
0である。乗数ビットが1である場合には、部分積は被
乗数それ自身である。単一ビットによる乗算においては
、キャリィは発生されない。最小桁ビットで開始し、相
継ぐ部分積が左側へ一つの位置シフトされる。従って、
その結果は部分積の和である。一般的な場合には、その
結果は、キャリィビットの発生に起因して、被乗数ビッ
トとの和よりも1だけ大きなビット数を有する場合があ
る。
各デジッドを乗数の各個別的なデジッドと乗算させるこ
とによって二進乗算を行ない、各この様な乗算は部分積
を形成する。乗数ビットが0である場合には、部分積は
0である。乗数ビットが1である場合には、部分積は被
乗数それ自身である。単一ビットによる乗算においては
、キャリィは発生されない。最小桁ビットで開始し、相
継ぐ部分積が左側へ一つの位置シフトされる。従って、
その結果は部分積の和である。一般的な場合には、その
結果は、キャリィビットの発生に起因して、被乗数ビッ
トとの和よりも1だけ大きなビット数を有する場合があ
る。
【0004】高速乗算器の構成に関して多大の注意が払
われてきた。この注意は、デジタル数を乗算するための
改良したアルゴリズムを開発することに向けられており
、即ち演算ステップの必要とされる数を少なくしより効
率的なアーキテクチャとすること、及び例えば構成要素
である加算器などのような高速のハードウエアを開発す
ることに向けられている。アーキテクチャに関しては、
乗算器において二つの主要部分が関係しており、即ち内
部(即ち、部分)結果発生器及び部分結果減算メカニズ
ムである。部分的な結果を発生するためのアルゴリズム
は、例えば、簡単なANDアレイ、ペザリス(Peza
ris)アレイ、ブース(Booth)アルゴリズム、
及び修正Boothアルゴリズムなどがある。乗算器の
結果減算部分は、最終的な結果出力を形成するための加
算器からなるアレイを使用し、該アレイの構成は部分結
果発生のために選択されるアルゴリズムに依存する。
われてきた。この注意は、デジタル数を乗算するための
改良したアルゴリズムを開発することに向けられており
、即ち演算ステップの必要とされる数を少なくしより効
率的なアーキテクチャとすること、及び例えば構成要素
である加算器などのような高速のハードウエアを開発す
ることに向けられている。アーキテクチャに関しては、
乗算器において二つの主要部分が関係しており、即ち内
部(即ち、部分)結果発生器及び部分結果減算メカニズ
ムである。部分的な結果を発生するためのアルゴリズム
は、例えば、簡単なANDアレイ、ペザリス(Peza
ris)アレイ、ブース(Booth)アルゴリズム、
及び修正Boothアルゴリズムなどがある。乗算器の
結果減算部分は、最終的な結果出力を形成するための加
算器からなるアレイを使用し、該アレイの構成は部分結
果発生のために選択されるアルゴリズムに依存する。
【0005】ほとんどのデジタル乗算器は、ブース(B
ooth)アルゴリズムに基づいており(例えば、L.
R. Rabiner及びB. GOLD共著「デ
ジタル信号処理の理論及び適用(Theory an
d Abblication ofDigtal
Signal Processing)」、プレン
ティスホール出版、1975年、517−518頁に記
載されている)、それは、高速乗算器の実現において主
要な役割を果たしてきた。ブースアルゴリズムの基本的
な概念は、乗算の反復的なシフト及び加算の実行に関す
る個々の反復をスキップすることである。該アルゴリズ
ムは、乗数における0ビットをスキップ(それは、かな
り自明な最適化である)するが、それは、更に、全て1
である連続するビットのシーケンスをもスキップする。 その考え方は、乗数におけるN個の1からなるシーケン
スは数値的には2N−1に等しく、従ってこのシーケン
スによる乗算の効果は、最小桁位置における減算とそれ
に続く左側へのN個の位置の加算と同一である。このこ
とは、乗算を、乗数内の1の各連続するストリングに対
して単一の加算と減算とに還元させる。
ooth)アルゴリズムに基づいており(例えば、L.
R. Rabiner及びB. GOLD共著「デ
ジタル信号処理の理論及び適用(Theory an
d Abblication ofDigtal
Signal Processing)」、プレン
ティスホール出版、1975年、517−518頁に記
載されている)、それは、高速乗算器の実現において主
要な役割を果たしてきた。ブースアルゴリズムの基本的
な概念は、乗算の反復的なシフト及び加算の実行に関す
る個々の反復をスキップすることである。該アルゴリズ
ムは、乗数における0ビットをスキップ(それは、かな
り自明な最適化である)するが、それは、更に、全て1
である連続するビットのシーケンスをもスキップする。 その考え方は、乗数におけるN個の1からなるシーケン
スは数値的には2N−1に等しく、従ってこのシーケン
スによる乗算の効果は、最小桁位置における減算とそれ
に続く左側へのN個の位置の加算と同一である。このこ
とは、乗算を、乗数内の1の各連続するストリングに対
して単一の加算と減算とに還元させる。
【0006】ブースアルゴリズムに基づいた典型的なア
レイ乗算器を図1にブロック図で示してある。被乗数は
Xレジスタ1へ供給され、且つ乗数はYレジスタ2へ供
給される。Yレジスタは、ブースデコーダ3へ接続され
ており、ブースデコーダ3は全加算器4のアレイの動作
を制御する。最終結果は、該アレイの右側及び下側に表
われる部分結果に関して演算を行なう一群の加算器によ
って形成される。典型的な二次ブースエンコーダを図2
に示してある。それは、Yレジスタから三つの連続する
ビットを受取り、且つ三つの出力信号X1,X2,Sを
供給する。S信号は、X1及びX2信号又はそれらの補
元の適宜の一つを使用するか否かを表示する。これらの
信号を使用することについては、本発明に関連して後で
説明する。
レイ乗算器を図1にブロック図で示してある。被乗数は
Xレジスタ1へ供給され、且つ乗数はYレジスタ2へ供
給される。Yレジスタは、ブースデコーダ3へ接続され
ており、ブースデコーダ3は全加算器4のアレイの動作
を制御する。最終結果は、該アレイの右側及び下側に表
われる部分結果に関して演算を行なう一群の加算器によ
って形成される。典型的な二次ブースエンコーダを図2
に示してある。それは、Yレジスタから三つの連続する
ビットを受取り、且つ三つの出力信号X1,X2,Sを
供給する。S信号は、X1及びX2信号又はそれらの補
元の適宜の一つを使用するか否かを表示する。これらの
信号を使用することについては、本発明に関連して後で
説明する。
【0007】前述した如く、アレイ4は、一般的には、
1ビット加算器からなる二次元アレイである。例示的な
アレイを図3に示してある。これはクロック動作型論理
システムではないので、入力信号(即ち、乗数及び被乗
数)の印加と出力(即ち、プロダクト乃至は結果又は積
)が得られることとの間にある量の時間が許容されねば
ならない。この時間は、部分和及びキャリィが発生され
且つアレイ内を一つのレベルから別のレベルへ伝搬する
のに有限の時間がかかるという事実の結果である。構成
要素のビルディングブロックは小型で且つ高速であるか
もしれないが、通常多数のビルディングブロックが設け
られている。従って、アレイ性能は、加算器の速度に依
存している。
1ビット加算器からなる二次元アレイである。例示的な
アレイを図3に示してある。これはクロック動作型論理
システムではないので、入力信号(即ち、乗数及び被乗
数)の印加と出力(即ち、プロダクト乃至は結果又は積
)が得られることとの間にある量の時間が許容されねば
ならない。この時間は、部分和及びキャリィが発生され
且つアレイ内を一つのレベルから別のレベルへ伝搬する
のに有限の時間がかかるという事実の結果である。構成
要素のビルディングブロックは小型で且つ高速であるか
もしれないが、通常多数のビルディングブロックが設け
られている。従って、アレイ性能は、加算器の速度に依
存している。
【0008】更に、各加算器のダイ面積(従って、その
部品数)及びその電力消費は、全体的なアレイ乗算器と
する場合に、セル数によって掛けられることとなる。従
って、加算器構成における小さな変化であっても、乗算
器の性能に大きな変化を発生させる場合がある。電力消
費及びダイ面積を最小のものとさせることは、集積回路
「チップ」設計者にとって永久的な目標である。高速の
ハードウエアは、電力消費を増加させることが多く、且
つ高速のアルゴリズムとすることは、より多くの演算を
並列的に実行することができるようにするためにより多
くのダイ面積を必要とすることが多い。従って、これら
の拘束条件は互いに矛盾する場合がある。従来技術によ
れば、最も簡単な全CMOSブース乗算器セルは、約4
0個のトランジスタを必要とし、且つ9個の大型の導電
性トレースを必要としており、そのことはかなりのダイ
面積を占有することとなる。
部品数)及びその電力消費は、全体的なアレイ乗算器と
する場合に、セル数によって掛けられることとなる。従
って、加算器構成における小さな変化であっても、乗算
器の性能に大きな変化を発生させる場合がある。電力消
費及びダイ面積を最小のものとさせることは、集積回路
「チップ」設計者にとって永久的な目標である。高速の
ハードウエアは、電力消費を増加させることが多く、且
つ高速のアルゴリズムとすることは、より多くの演算を
並列的に実行することができるようにするためにより多
くのダイ面積を必要とすることが多い。従って、これら
の拘束条件は互いに矛盾する場合がある。従来技術によ
れば、最も簡単な全CMOSブース乗算器セルは、約4
0個のトランジスタを必要とし、且つ9個の大型の導電
性トレースを必要としており、そのことはかなりのダイ
面積を占有することとなる。
【0009】
【発明が解決しようとする課題】本発明の目的とすると
ころは、改良したデジタル乗算器を提供することである
。本発明の別の目的とするところは、アレイ乗算器用の
改良したCMOS全加算器及びセレクタ40個のトラン
ジスタよりも少ない数のトランジスタを必要とする全加
算器(及びセレクタ)セルを提供することである。本発
明の更に別の目的とするところは、アレイの形態に組立
てられた場合により少ない数のセレクタ回路を必要とし
従って必要とされるダイ面積を小さくした全加算器セル
を提供することである。
ころは、改良したデジタル乗算器を提供することである
。本発明の別の目的とするところは、アレイ乗算器用の
改良したCMOS全加算器及びセレクタ40個のトラン
ジスタよりも少ない数のトランジスタを必要とする全加
算器(及びセレクタ)セルを提供することである。本発
明の更に別の目的とするところは、アレイの形態に組立
てられた場合により少ない数のセレクタ回路を必要とし
従って必要とされるダイ面積を小さくした全加算器セル
を提供することである。
【0010】
【課題を解決するための手段】本発明によれば、和発生
用の2個のCMOS等価回路と、2個のパストランジス
タと、同一の選択要素からなるマトリクス、単一FET
スイッチ、及びインバータから構成される乗算器セレク
タと共に使用され、キャリィ発生のためのインバータと
を有するCMOSアレイ乗算器セルが提供される。前記
選択要素の各々は、NチャンネルFETとPチャンネル
FETと、インバータとから構成されている。各等価回
路は、6個のトランジスタ、即ち4個のFET及びイン
バータを使用する。全セル装置数は具体的な適用に従い
、31乃至39個のトランジスタである。トランジスタ
の数が減少されることに加えて、該セルは、ダイ面積が
減少されており且つ速度が増加されている。
用の2個のCMOS等価回路と、2個のパストランジス
タと、同一の選択要素からなるマトリクス、単一FET
スイッチ、及びインバータから構成される乗算器セレク
タと共に使用され、キャリィ発生のためのインバータと
を有するCMOSアレイ乗算器セルが提供される。前記
選択要素の各々は、NチャンネルFETとPチャンネル
FETと、インバータとから構成されている。各等価回
路は、6個のトランジスタ、即ち4個のFET及びイン
バータを使用する。全セル装置数は具体的な適用に従い
、31乃至39個のトランジスタである。トランジスタ
の数が減少されることに加えて、該セルは、ダイ面積が
減少されており且つ速度が増加されている。
【0011】等価回路の各々は、その二つの入力が同一
である場合にのみ論理1出力を発生する。第一等価回路
は、該アレイの同一の行内の直ぐ下の桁のビット位置か
らのキャリィ入力信号を、該セレクタからの乗数信号と
比較する。それは、Slとラベルの付けられた信号を出
力関数として発生する。第二等価回路は、第一等価回路
からのSl信号を、該アレイの直ぐ前の行における同一
の列(即ち、ビットの桁)位置からの和信号Sinの補
元乃至は否定であるSin*と比較する。一般的に、「
*」は、本明細書においては、論理上の補元を表わすた
めに使用される。第二等価回路の出力は新たな和信号で
あるSumであって、その信号は次の加算器によって使
用するためにインバータによって反転される。
である場合にのみ論理1出力を発生する。第一等価回路
は、該アレイの同一の行内の直ぐ下の桁のビット位置か
らのキャリィ入力信号を、該セレクタからの乗数信号と
比較する。それは、Slとラベルの付けられた信号を出
力関数として発生する。第二等価回路は、第一等価回路
からのSl信号を、該アレイの直ぐ前の行における同一
の列(即ち、ビットの桁)位置からの和信号Sinの補
元乃至は否定であるSin*と比較する。一般的に、「
*」は、本明細書においては、論理上の補元を表わすた
めに使用される。第二等価回路の出力は新たな和信号で
あるSumであって、その信号は次の加算器によって使
用するためにインバータによって反転される。
【0012】
【実施例】図4を参照すると、スタンダードなブースデ
コーダ(又はエンコーダ)10、ブース乗算器セクレタ
12、全加算器アレイ13から構成される本発明のアレ
イ乗算器をブロック図で示してある。このアレイにおい
て、各加算器は、和発生器14とキャリィ発生器16か
ら形成されている。説明の便宜上、ただ一つの加算器(
即ち、1個の和発生器及び1個のキャリィ発生器)のみ
が示されているが、実際には、図3のアレイの如く、複
数個の加算器がアレイ上に配列されているものであるこ
とを理解すべきである。
コーダ(又はエンコーダ)10、ブース乗算器セクレタ
12、全加算器アレイ13から構成される本発明のアレ
イ乗算器をブロック図で示してある。このアレイにおい
て、各加算器は、和発生器14とキャリィ発生器16か
ら形成されている。説明の便宜上、ただ一つの加算器(
即ち、1個の和発生器及び1個のキャリィ発生器)のみ
が示されているが、実際には、図3のアレイの如く、複
数個の加算器がアレイ上に配列されているものであるこ
とを理解すべきである。
【0013】乗算器セレクタ12をより詳細に図5に示
してある。明らかな如く、該セレクタは、同一の選択要
素22,24,26,28からなるマトリクスと、単一
のFETスイッチ30と、インバータ32とから構成さ
れている。選択要素の各々は、1個の水平方向入力(図
面上左側から)及び1個の垂直入力(図面上上側から)
を受取る。該選択要素の出力は、ノード34において共
通接続されており、FET30のドレインもノード34
へ接続されている。しかしながら、入力信号SX2,S
X2*,SX1,SX1*,SO*は相互に排他的であ
るので、対応する信号X2,X2*,X1,X1*,V
ccのうちの一つのみが任意の与えられた時間において
ノード34へ接続される。
してある。明らかな如く、該セレクタは、同一の選択要
素22,24,26,28からなるマトリクスと、単一
のFETスイッチ30と、インバータ32とから構成さ
れている。選択要素の各々は、1個の水平方向入力(図
面上左側から)及び1個の垂直入力(図面上上側から)
を受取る。該選択要素の出力は、ノード34において共
通接続されており、FET30のドレインもノード34
へ接続されている。しかしながら、入力信号SX2,S
X2*,SX1,SX1*,SO*は相互に排他的であ
るので、対応する信号X2,X2*,X1,X1*,V
ccのうちの一つのみが任意の与えられた時間において
ノード34へ接続される。
【0014】選択要素マトリクスの動作を説明するため
に、多少脇道に逸れた説明をすることが効果的である。 図6は、セレクション要素40を詳細に示している。要
素40は、NチャンネルFET42と、PチャンネルF
ET44と、インバータ46とから構成されている。F
ETのドレインは共通接続され且つそれらのソースも共
通接続されている。該インバータの入力端と該Nチャン
ネル装置のゲートとは第一入力ノード48へ接続されて
いる。該インバータの出力端はPチャンネル装置のゲー
トへ接続されている。該ドレインは第二入力ノード50
へ接続されている。ノード48は、選択要素の水平入力
端であり、一方ノード50は垂直入力端である。該FE
Tのソースはノード52へ接続されており、ノード52
は該要素の出力ノードである。ノード48へ印加される
信号が1である場合、ノード50における信号は出力ノ
ード52へフィードスルーされる。そうでない場合には
、出力ノードは「フロート」する。
に、多少脇道に逸れた説明をすることが効果的である。 図6は、セレクション要素40を詳細に示している。要
素40は、NチャンネルFET42と、PチャンネルF
ET44と、インバータ46とから構成されている。F
ETのドレインは共通接続され且つそれらのソースも共
通接続されている。該インバータの入力端と該Nチャン
ネル装置のゲートとは第一入力ノード48へ接続されて
いる。該インバータの出力端はPチャンネル装置のゲー
トへ接続されている。該ドレインは第二入力ノード50
へ接続されている。ノード48は、選択要素の水平入力
端であり、一方ノード50は垂直入力端である。該FE
Tのソースはノード52へ接続されており、ノード52
は該要素の出力ノードである。ノード48へ印加される
信号が1である場合、ノード50における信号は出力ノ
ード52へフィードスルーされる。そうでない場合には
、出力ノードは「フロート」する。
【0015】上述した説明を背景として、次に図5を参
照して説明する。選択アレイの動作は、水平方向に印加
される入力信号によって制御されることが理解される。 入力SX2(即ち、信号X2とAND処理されたブース
エンコーダからのブースセレクタ出力信号S)は要素2
2を制御し、入力SX2*は要素24を制御し、入力S
X1は要素26を制御し、入力SX2*は要素28を制
御し、且つ入力S0*はトランジスタ30を制御する。 水平入力端に1を印加することによってターンオンされ
ると、要素22は、入力信号X2をノード34へ供給す
る。同様に、要素24は相補的入力X2*を供給し、要
素26は入力X1を供給し、且つ要素28は相補的入力
X1*を供給する。「加算1」演算がブースエンコーダ
によって示される場合には、入力X1は高(即ち、1)
である。「加算2」演算が表示される場合には、入力X
2は高である。2を減算するために入力X2*が選択さ
れ、且つ1を減算するために入力X1*が選択される。 0を加算するためにVccが選択される。この点につい
ては次の表Iを参照するとよい。
照して説明する。選択アレイの動作は、水平方向に印加
される入力信号によって制御されることが理解される。 入力SX2(即ち、信号X2とAND処理されたブース
エンコーダからのブースセレクタ出力信号S)は要素2
2を制御し、入力SX2*は要素24を制御し、入力S
X1は要素26を制御し、入力SX2*は要素28を制
御し、且つ入力S0*はトランジスタ30を制御する。 水平入力端に1を印加することによってターンオンされ
ると、要素22は、入力信号X2をノード34へ供給す
る。同様に、要素24は相補的入力X2*を供給し、要
素26は入力X1を供給し、且つ要素28は相補的入力
X1*を供給する。「加算1」演算がブースエンコーダ
によって示される場合には、入力X1は高(即ち、1)
である。「加算2」演算が表示される場合には、入力X
2は高である。2を減算するために入力X2*が選択さ
れ、且つ1を減算するために入力X1*が選択される。 0を加算するためにVccが選択される。この点につい
ては次の表Iを参照するとよい。
【0016】
ブースデコーダにおいては、セル当りのトランジスタ数
は、信号SX2,SX2*,SX1,SX1*の非補元
及び補元の両方を与えることによって減少させることが
可能である。その場合、図6のインバータ46を省略す
ることが可能である。
は、信号SX2,SX2*,SX1,SX1*の非補元
及び補元の両方を与えることによって減少させることが
可能である。その場合、図6のインバータ46を省略す
ることが可能である。
【0017】和発生器14を図7により詳細にブロック
図で示してある。図示した如く、この和発生器は、2個
の同一の2入力1ビット等価回路62及び64と、好適
には、インバータ66とを有している。各等価回路は、
その二つの入力が同一である場合にのみ、論理1出力を
発生する。第一等価回路62は、該アレイの同一の行内
の直ぐ下の桁のビット位置からのキャリィ入力信号Ci
nを、セレクタ12からの乗数(M)信号と比較する。 それにより、出力関数として、Slとラベルの付けられ
た信号が発生される。更に、M入力の補元であるM*も
供給される。第二等価回路64は、第一等価回路62か
らのSl信号を、該アレイの直ぐ前の行内の同一の列(
即ち、ビットの桁)位置からの和信号Sinの補元乃至
は否定であるSin*と比較する。この第二等価回路の
出力は、新たな和信号Sumであって、その信号は次の
加算器によって使用するためにインバータ66によって
反転される。更に、等価回路64は、Sl*信号を供給
する。この後者の信号はキャリィ発生器において使用さ
れるので便利であり、そのことは図11に示してあり後
に説明する。
図で示してある。図示した如く、この和発生器は、2個
の同一の2入力1ビット等価回路62及び64と、好適
には、インバータ66とを有している。各等価回路は、
その二つの入力が同一である場合にのみ、論理1出力を
発生する。第一等価回路62は、該アレイの同一の行内
の直ぐ下の桁のビット位置からのキャリィ入力信号Ci
nを、セレクタ12からの乗数(M)信号と比較する。 それにより、出力関数として、Slとラベルの付けられ
た信号が発生される。更に、M入力の補元であるM*も
供給される。第二等価回路64は、第一等価回路62か
らのSl信号を、該アレイの直ぐ前の行内の同一の列(
即ち、ビットの桁)位置からの和信号Sinの補元乃至
は否定であるSin*と比較する。この第二等価回路の
出力は、新たな和信号Sumであって、その信号は次の
加算器によって使用するためにインバータ66によって
反転される。更に、等価回路64は、Sl*信号を供給
する。この後者の信号はキャリィ発生器において使用さ
れるので便利であり、そのことは図11に示してあり後
に説明する。
【0018】図8及び10を参照すると、和発生器を構
成するために使用される等価回路に対する二つの例示的
な実施例が示されている。等価回路の二つの入力は任意
的にV及びWとしてラベルが付けられており、且つ出力
信号はV=Wとしてラベルが付けられている。図8に示
した等価回路は、CMOS技術で製造するのに有用であ
る。それは、4個のFET72,74,76,78と、
インバータ82とを使用している。FET72及び76
はPチャンネル装置であり、一方FET74及び78は
Nチャンネル装置である。一対のFET72,74は、
通常、パストランジスタ乃至はトランスミッションゲー
トと呼ばれる。注意すべきことであるが、トランジスタ
72及び74が相補的に駆動されることを確保するイン
バータ82は、構成要素又はダイ面積において何ら付加
的な犠牲を払うことなしにW*出力を供給する。このイ
ンバータに対して二つのトランジスタが設けられると仮
定すると、この回路は単に6個のトランジスタを有する
に過ぎない。
成するために使用される等価回路に対する二つの例示的
な実施例が示されている。等価回路の二つの入力は任意
的にV及びWとしてラベルが付けられており、且つ出力
信号はV=Wとしてラベルが付けられている。図8に示
した等価回路は、CMOS技術で製造するのに有用であ
る。それは、4個のFET72,74,76,78と、
インバータ82とを使用している。FET72及び76
はPチャンネル装置であり、一方FET74及び78は
Nチャンネル装置である。一対のFET72,74は、
通常、パストランジスタ乃至はトランスミッションゲー
トと呼ばれる。注意すべきことであるが、トランジスタ
72及び74が相補的に駆動されることを確保するイン
バータ82は、構成要素又はダイ面積において何ら付加
的な犠牲を払うことなしにW*出力を供給する。このイ
ンバータに対して二つのトランジスタが設けられると仮
定すると、この回路は単に6個のトランジスタを有する
に過ぎない。
【0019】図9は、図8の等価回路の動作を示した自
明な表である。図10に示した回路は、NMOS製造技
術において使用される。それは、3個のトランジスタ8
4,86,88を使用するに過ぎないが、低レベルの信
号が前段の出力によって駆動され、且つそれがトランジ
スタ86を介してDCパワーを消費するという欠点を有
している。
明な表である。図10に示した回路は、NMOS製造技
術において使用される。それは、3個のトランジスタ8
4,86,88を使用するに過ぎないが、低レベルの信
号が前段の出力によって駆動され、且つそれがトランジ
スタ86を介してDCパワーを消費するという欠点を有
している。
【0020】理解される如く、このキャリィ発生器は、
単に4個のトランジスタ(即ち、2個のパストランジス
タ)とインバータを必要とするに過ぎない。FET92
及び94はPチャンネル装置であり、一方FET96及
び98はNチャンネル装置である。FET92及び98
のゲートはSl信号を受取るべく接続されており、一方
FET94及び96のゲートはSl*信号を受取るべく
接続されている。これらのトランジスタの全てのドレイ
ンは共通接続されており且つインバータ100の入力端
へ接続されている。FET92及び96のソースはM*
信号を受取るべく共通的に接続されており、一方FET
94及び98のソースはSin*信号を受取るべく共通
接続されている。この段のキャリィ出力信号Coutは
インバータ100の出力端に表われる。
単に4個のトランジスタ(即ち、2個のパストランジス
タ)とインバータを必要とするに過ぎない。FET92
及び94はPチャンネル装置であり、一方FET96及
び98はNチャンネル装置である。FET92及び98
のゲートはSl信号を受取るべく接続されており、一方
FET94及び96のゲートはSl*信号を受取るべく
接続されている。これらのトランジスタの全てのドレイ
ンは共通接続されており且つインバータ100の入力端
へ接続されている。FET92及び96のソースはM*
信号を受取るべく共通的に接続されており、一方FET
94及び98のソースはSin*信号を受取るべく共通
接続されている。この段のキャリィ出力信号Coutは
インバータ100の出力端に表われる。
【0021】理解される如く、本乗算器セルの構成要素
であるトランジスタの総数は以下の如くである。
であるトランジスタの総数は以下の如くである。
【0022】従って、この構成は、16ビット×16ビ
ット乗算に対して単に約20ns(最大)を必要とする
に過ぎず且つセル当り単に約4乃至10個のトランジス
タを使用するに過ぎない乗算器アレイの構成とすること
を可能としている。従って、ダイ面積が減少され且つ電
力消費も減少される。ダイ面積におけるさらなる減少は
、本回路はトランジスタ間に必要とされるメタル接続の
数が少なくなり且つ小型化されるトポロジーレイアウト
を可能とするという事実によってもたらされる。本回路
は、更に、CMOSを基本としており、且つ電圧のフル
スイングで動作するので、より広い雑音余裕を確保して
いる。更に、完全にバッファされた回路であるので、信
号の減衰を発生することはない。
ット乗算に対して単に約20ns(最大)を必要とする
に過ぎず且つセル当り単に約4乃至10個のトランジス
タを使用するに過ぎない乗算器アレイの構成とすること
を可能としている。従って、ダイ面積が減少され且つ電
力消費も減少される。ダイ面積におけるさらなる減少は
、本回路はトランジスタ間に必要とされるメタル接続の
数が少なくなり且つ小型化されるトポロジーレイアウト
を可能とするという事実によってもたらされる。本回路
は、更に、CMOSを基本としており、且つ電圧のフル
スイングで動作するので、より広い雑音余裕を確保して
いる。更に、完全にバッファされた回路であるので、信
号の減衰を発生することはない。
【0023】以上、本発明の具体的実施の態様について
詳細に説明したが、本発明は、これら具体例にのみ限定
されるべきものではなく、本発明の技術的範囲を逸脱す
ることなしに種々の変形が可能であることは勿論である
。
詳細に説明したが、本発明は、これら具体例にのみ限定
されるべきものではなく、本発明の技術的範囲を逸脱す
ることなしに種々の変形が可能であることは勿論である
。
【図1】 ブースアルゴリズムに基づいた従来のアレ
イ乗算器のブロック図。
イ乗算器のブロック図。
【図2】 効率的なアレイ乗算器を提供するために本
発明と共に使用することが可能な典型的な従来のブース
エンコーダの概略回路図。
発明と共に使用することが可能な典型的な従来のブース
エンコーダの概略回路図。
【図3】 図1に示したようなアレイ乗算器において
使用する全加算器アレイの概略図。
使用する全加算器アレイの概略図。
【図4】 本発明の一実施例に基づいて構成されたア
レイ乗算器の概略図。
レイ乗算器の概略図。
【図5】 図4のブースセレクタの概略回路図。
【図6】 図5のセレクタにおいて使用される撰択要
素のより詳細な概略回路図。
素のより詳細な概略回路図。
【図7】 本発明に基づく全加算器の和発生器の概略
回路図。
回路図。
【図8】 図7の和発生器において使用する本発明に
基づく等価回路の第一(即ち、CMOS)実施例の概略
回路図。
基づく等価回路の第一(即ち、CMOS)実施例の概略
回路図。
【図9】 図8の回路の動作を説明する説明図。
【図10】 図7の和発生器において使用するための
本発明に基づく等価回路の第二(即ち、NMOS)実施
例の概略回路図。
本発明に基づく等価回路の第二(即ち、NMOS)実施
例の概略回路図。
【図11】 本発明に基づく全加算器のキャリィ発生
器の概略回路図。
器の概略回路図。
10 ブースデコーダ
12 ブース乗算器セレクタ
13 全加算器アレイ
14 和発生器
16 キャリィ発生器
Claims (7)
- 【請求項1】 全加算器セルのアレイと、デコーダと
乗算器セレクタとを使用し各全加算器セルが和発生器手
段とキャリィ発生器手段とを具備するアレイ乗算器にお
いて、(a)前記和発生器が二つの入力が同一の値の論
理信号を受取る場合に所定状態での論理信号を発生する
ための第一及び第二の実質的に同一な2入力1ビット等
価回路手段を具備しており、(b)前記第一等価回路が
その第一入力端において前記アレイの同一の行内の直ぐ
桁下のビット位置からキャリィ入力信号を受取ると共に
その第二入力端において前記セレクタからの乗算器信号
を受取り且つ「Sl」とラベルの付けた信号を出力関数
として発生し、(c)前記第二等価回路がその第一入力
端において前記第一等価回路からのSl信号を受取ると
共にその第二入力端において前記アレイの直ぐ前に先行
する行内の同一の列(即ち、ビット桁)からの和信号S
inの補元乃至は否定であるSin*を受取り且つ新た
な和信号Sumを出力関数として発生する、ことを特徴
とする乗算器。 - 【請求項2】 請求項1において、前記第一及び第二
等価回路が6個のトランジスタを具備するCMOS回路
であって、前記トランジスタが、(a)2個のトランジ
スタがインバータとして接続されており、前記インバー
タの入力端は前記等価回路の第一入力ノードへ接続され
ており、(b)第三FETのソース電極が第二入力ノー
ドへ接続されており、そのドレイン電極が前記等価回路
の出力ノードへ接続されており、且つそのゲート電極が
前記インバータの出力端へ接続されており、(c)第四
FETのソース電極が前記第二入力ノードへ接続されて
おり、そのドレイン電極が前記出力ノードへ接続されて
おり、且つそのゲート電極が前記第一入力ノードへ接続
されており、(d)第五FETのドレイン電極が前記イ
ンバータの出力端へ接続されており、そのゲート電極が
前記第二入力ノードへ接続されており、且つそのソース
電極が前記出力ノードへ接続されており、(e)第六F
ETのドレイン電極が前記第一入力ノードヘ接続されて
おり、そのゲート電極が前記第二入力ノードへ接続され
ており、且つそのソース電極が前記出力ノードへ接続さ
れている、ことを特徴とする乗算器。 - 【請求項3】 請求項2において、前記第三及び第五
FETがPチャンネル装置であり、且つ前記第四及び第
六FETがNチャンネル装置であることを特徴とする乗
算器。 - 【請求項4】 請求項1において、前記第一及び第二
等価回路が3個のトランジスタを具備するNMOS回路
であって、(a)第一NチャンネルFETのドレイン電
極が第一入力ノードへ接続されており、そのゲート電極
が第二入力ノードへ接続されており、且つそのソース電
極が出力ノードへ接続されており、(b)第二Nチャン
ネルFETのドレイン電極が第二入力ノードへ接続され
ており、そのゲート電極が第一入力ノードへ接続されて
おり且つそのソース電極が前記出力ノードへ接続されて
おり、(c)第三デプリションモードFETのドレイン
電極が供給電圧へ接続されており、そのゲート及びソー
ス電極が前記出力ノードへ接続されている、ことを特徴
とする乗算器。 - 【請求項5】 請求項1又は2において、前記キャリ
ィ発生器手段が、(a)インバータを有しており、(b
)第一パストランジスタを有しており、前記第一パスト
ランジスタのドレイン電極は前記乗算器信号の補元を受
取るべく接続されており、そのソース電極は前記インバ
ータの入力端へ接続されており、そのPチャンネルゲー
トはSl信号を受取るべく接続されており、且つそのN
チャンネルゲートはSl信号の補元を受取るべく接続さ
れており、(c)第二パストランジスタを有しており、
前記第二パストランジスタのドレイン電極はSin信号
の補元を受取るべく接続されており、そのソース電極は
前記インバータの入力端へ接続されており、そのNチャ
ンネルゲートはSl信号を受取るべく接続されており、
且つそのPチャンネルゲートはSl信号の補元を受取る
べく接続されており、キャリィ出力信号が前記インバー
タの前記出力端に表われる、ことを特徴とする乗算器。 - 【請求項6】 全加算器セルのアレイと、デコーダと
乗算器セレクタとを使用し、各全加算器セルが和発生器
手段とキャリィ発生器手段とを具備するアレイ乗算器に
おいて、(a)前記乗算器セレクタが、実質的に同一の
選択要素からなるマトリクスと、FETスイッチと、イ
ンバータとを具備しており、(b)前記選択要素の各々
が第一、即ち水平、入力信号と第二、即ち垂直、入力信
号を受取り且つ出力信号を供給し、その場合に、(1)
前記水平入力信号が1である場合には、前記垂直入力信
号が出力信号として供給され、且つ(2)前記水平入力
信号が0である場合には、前記出力ノードがフロートし
、(c)前記FETスイッチのゲートがS0*と指定し
た選択信号を受取り且つ前記FETスイッチのソースが
論理「1」信号の供給源へ接続されており、(d)前記
選択要素の出力ノード及び前記FETスイッチのドレイ
ンが共通接続されると共に前記インバータの入力端へ接
続されており、前記セレクタの出力が前記インバータに
よって供給される、ことを特徴とするアレイ乗算器。 - 【請求項7】 請求項6において、前記選択要素の各
々がパストランジスタとインバータとを具備することを
特徴とするアレイ乗算器。
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US49460790A | 1990-03-16 | 1990-03-16 | |
| US494607 | 1990-03-16 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH04227534A true JPH04227534A (ja) | 1992-08-17 |
Family
ID=23965179
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP3128805A Pending JPH04227534A (ja) | 1990-03-16 | 1991-03-15 | アレイ乗算器 |
Country Status (3)
| Country | Link |
|---|---|
| EP (1) | EP0447254A3 (ja) |
| JP (1) | JPH04227534A (ja) |
| CA (1) | CA2038422A1 (ja) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US5920498A (en) * | 1996-08-29 | 1999-07-06 | Fujitsu Limited | Compression circuit of an adder circuit |
Families Citing this family (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| EP0589148A1 (en) * | 1992-09-22 | 1994-03-30 | Motorola, Inc. | Multiplexer circuit for modified booth's multiplier or the like |
| KR0173955B1 (ko) * | 1996-02-01 | 1999-04-01 | 김광호 | 에너지 절약형 패스 트랜지스터 로직회로 및 이를 이용한 전가산기 |
Citations (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS5650439A (en) * | 1979-10-01 | 1981-05-07 | Toshiba Corp | Binary multiplier cell circuit |
| JPS62293343A (ja) * | 1986-06-11 | 1987-12-19 | Toshiba Corp | ブ−ス変換回路 |
| US4901270A (en) * | 1988-09-23 | 1990-02-13 | Intel Corporation | Four-to-two adder cell for parallel multiplication |
Family Cites Families (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US4644488A (en) * | 1983-10-12 | 1987-02-17 | California Institute Of Technology | Pipeline active filter utilizing a booth type multiplier |
| US4575812A (en) * | 1984-05-31 | 1986-03-11 | Motorola, Inc. | X×Y Bit array multiplier/accumulator circuit |
-
1991
- 1991-03-15 EP EP19910302224 patent/EP0447254A3/en not_active Withdrawn
- 1991-03-15 CA CA 2038422 patent/CA2038422A1/en not_active Abandoned
- 1991-03-15 JP JP3128805A patent/JPH04227534A/ja active Pending
Patent Citations (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS5650439A (en) * | 1979-10-01 | 1981-05-07 | Toshiba Corp | Binary multiplier cell circuit |
| JPS62293343A (ja) * | 1986-06-11 | 1987-12-19 | Toshiba Corp | ブ−ス変換回路 |
| US4901270A (en) * | 1988-09-23 | 1990-02-13 | Intel Corporation | Four-to-two adder cell for parallel multiplication |
Cited By (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US5920498A (en) * | 1996-08-29 | 1999-07-06 | Fujitsu Limited | Compression circuit of an adder circuit |
| US6240438B1 (en) | 1996-08-29 | 2001-05-29 | Fujitsu Limited | Multiplier circuit for reducing the number of necessary elements without sacrificing high speed capability |
| US6535902B2 (en) | 1996-08-29 | 2003-03-18 | Fujitsu Limited | Multiplier circuit for reducing the number of necessary elements without sacrificing high speed capability |
Also Published As
| Publication number | Publication date |
|---|---|
| EP0447254A2 (en) | 1991-09-18 |
| CA2038422A1 (en) | 1991-09-17 |
| EP0447254A3 (en) | 1993-07-28 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US5151875A (en) | MOS array multiplier cell | |
| US5920498A (en) | Compression circuit of an adder circuit | |
| US5040139A (en) | Transmission gate multiplexer (TGM) logic circuits and multiplier architectures | |
| US5491653A (en) | Differential carry-save adder and multiplier | |
| US6411980B2 (en) | Data split parallel shifter and parallel adder/subtractor | |
| US4363107A (en) | Binary multiplication cell circuit | |
| US20010043084A1 (en) | Semiconductor integrated circuit apparatus | |
| US4441158A (en) | Arithmetic operation circuit | |
| US6125381A (en) | Recursively partitioned carry select adder | |
| JPS595349A (ja) | 加算器 | |
| Anand et al. | A low power and high speed 8-bit ALU design using 17T full adder | |
| JP3396720B2 (ja) | 部分積生成回路 | |
| US7024445B2 (en) | Method and apparatus for use in booth-encoded multiplication | |
| US5732008A (en) | Low-power high performance adder | |
| US6183122B1 (en) | Multiplier sign extension | |
| US7620677B2 (en) | 4:2 Carry save adder and 4:2 carry save adding method | |
| EP0447254A2 (en) | Array multiplier | |
| US20050182814A1 (en) | Encoder for a multiplier | |
| JP3137629B2 (ja) | 桁上げ‐セーブ算術演算機構に対する加算器セル | |
| JPH0460252B2 (ja) | ||
| JPH09185493A (ja) | 加算器用集積回路 | |
| Lin | Fast multiplier schemes using large parallel counters and shift switches | |
| KR100306108B1 (ko) | 자리수올림선견회로 | |
| JP2972218B2 (ja) | 論理回路 | |
| KR100423845B1 (ko) | 고속동작 멀티플렉서 |