JPH05224890A - 第1の数と第2の数との積を求めるための方法およびその装置 - Google Patents

第1の数と第2の数との積を求めるための方法およびその装置

Info

Publication number
JPH05224890A
JPH05224890A JP4310030A JP31003092A JPH05224890A JP H05224890 A JPH05224890 A JP H05224890A JP 4310030 A JP4310030 A JP 4310030A JP 31003092 A JP31003092 A JP 31003092A JP H05224890 A JPH05224890 A JP H05224890A
Authority
JP
Japan
Prior art keywords
register cell
register
digit
weight
digits
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.)
Withdrawn
Application number
JP4310030A
Other languages
English (en)
Inventor
Safdar M Asghar
サフダー・エム・アシュガー
Donald D Mondul
ドナルド・ディー・モンデュール
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Advanced Micro Devices Inc
Original Assignee
Advanced Micro Devices Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Advanced Micro Devices Inc filed Critical Advanced Micro Devices Inc
Publication of JPH05224890A publication Critical patent/JPH05224890A/ja
Withdrawn legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/38Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06F7/48Methods 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/52Multiplying; Dividing
    • G06F7/523Multiplying only
    • G06F7/53Multiplying only in parallel-parallel fashion, i.e. both operands being entered in parallel
    • G06F7/5324Multiplying only in parallel-parallel fashion, i.e. both operands being entered in parallel partitioned, i.e. using repetitively a smaller parallel parallel multiplier or using an array of such smaller multipliers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/38Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06F7/48Methods 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/52Multiplying; Dividing
    • G06F7/523Multiplying only
    • G06F7/5235Multiplying only using indirect methods, e.g. quarter square method, via logarithmic domain
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2207/00Indexing scheme relating to methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F2207/38Indexing scheme relating to groups G06F7/38 - G06F7/575
    • G06F2207/3804Details
    • G06F2207/3808Details concerning the type of numbers or the way they are handled
    • G06F2207/3812Devices capable of handling different types of numbers
    • G06F2207/3816Accepting numbers of variable word length

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Computational Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Complex Calculations (AREA)
  • Container Filling Or Packaging Operations (AREA)
  • Image Processing (AREA)

Abstract

(57)【要約】 (修正有) 【目的】 第1の数と第2の数との積を求める。 【構成】 第1の数の桁数と第2の数の桁数との対の組
合せの各々についてそれぞれの部分積を求め、複数個の
レジスタセルの各々は階層的重みを有するレジスタを提
供し、次の関係:Pm,n−[累算して]→rx ;x=
(m+n)−1に従って、レジスタセルの特定されたも
のの中で累算値を生成するために、部分積の選択された
ものを累算し(Pm,n は部分積、mは第1の数の重み、
nは第2の数の重み、rx は重みxを有する特定された
レジスタセルを表す)下位レジスタセル中にストアされ
た値の特定の桁数を、累算値を含む次に上位のレジスタ
セルにシフトし、かつ最下位から最上位までの重みの隣
接するレジスタセルの間で、次に上位のセル中に下位桁
としてストアされた累算値に特定の桁数を加算し、レジ
スタセルの内容をレジスタセルからシフトする。

Description

【発明の詳細な説明】
【0001】
【発明の背景】この発明は、2つの数の積を求めるため
の方法と、その方法を行なうための装置とに関する。
【0002】好ましくはサブストレート上に配列される
シリコン素子から構成される、固体素子を用いる計算シ
ステムにおいて、一定の基本的設計規準を一般に用い
る。たとえば、各素子によってサブストレート上のでき
る限り小さいスペースが占有されることが所望される。
さらに、装置によって消費されるエネルギは、特に電池
で電力を与えられるシステムにおいては、できる限り最
小限にされることが所望される。また、計算機システム
はできる限り高速で動作することが所望される。
【0003】かかる計算機システムのための乗算器は、
一般にスイッチングトランジスタのマトリックスで作ら
れ、そのマトリックスは計算機装置によって処理される
べき数の予想される最大のサイズに対処するために十分
なサイズである。したがってたとえば4桁の数による4
桁の数の乗算を行なうために、乗算器は乗算に含まれる
キャリおよびその他のオーバーヘッド動作に対処するた
めの付加的行または列またはその両方を有する16×1
6ビットのマトリックス(つまり16列のトランジスタ
であり、各々の列は16行のトランジスタを有する)を
必ず含むであろう。
【0004】より小さい数に対して、乗算器マトリック
ス内の上位のビットは、乗算演算に含まれる被乗数およ
び乗数を正確にストアするために適当であるように、0
で満たされる。しかしながら、これらの0で満たされた
ビットはかかる0で満たすことを行なうためになお駆動
されなければならない。かか0で満たされたビットは乗
算器によって行なわれる計算中に必然的に含まれてお
り、そのため乗算演算のためにより大きな数に対処する
時に、電力要求およびサブストレート上の占有面積(つ
まりスペース)はすべて犠牲にされる。
【0005】特にバッテリで電力を与えられるシステム
において、電力を節約するために、特定の乗算演算のた
めに必要な十分な数のビットのみを駆動する乗算器を有
することは有利であろう。空間を節約しかつ乗算器を使
用するシステムの実装密度を上げるために、サブストレ
ート上にできる限り少ない「リアルエステート」を占有
する乗算器を有することはさらに有利であろう。乗算器
を使用するシステムの動作速度を促進するために乗算演
算を高速で行なう乗算器を有することはまたさらに有利
であろう。
【0006】上述の所望される利点を実現できる乗算器
の設計および動作を容易にする方法によって乗算を行な
うこともまた有利であろう。
【0007】
【発明の概要】この発明は第1の数と第2の数との積を
求めるための方法を含み、その第1の数は第1の下位桁
から第1の上位桁へ階層的に配列された複数個の第1の
桁数を有し、かつその第2の数は第2の下位桁から第2
の上位桁へ階層的に配列された複数個の第2の桁数を有
する。この方法はその好ましい実施例において次のステ
ップを含む: (1) 複数個の部分積を求める(より短い数のブラン
クの桁を0と取扱う)ステップであり、複数個の部分積
は、それぞれの数の第1の桁数と第2の桁数との対の組
合せについての部分積を含み、それにより各部分積に含
まれる対の組合せの第1の桁数の重みと第2の桁数の重
みとによって定められる合成の重みを確立する。
【0008】(2) 累算値をストアするための階層的
重みを有する複数個のレジスタセルを有するレジスタを
提供する。
【0009】(3) 次の関係 Pm,n −[累算して]→rx ; x=(m+n)−1 に従って、レジスタセルの特定されたものに累算値を生
成するために、それぞれの部分積の選択されたものを累
算するステップであり、ここで「Pm n 」はそれぞれ
の部分積を表わし、「m」は第1の重み(m=1、2、
…)を表わし、「n」は第2の重み(n=1、2、…)
を表わし、かつ「rx 」は重み「x」を有する特定され
たレジスタセルを表わす。
【0010】(4) 下位のレジスタセルにストアされ
た累算値の特定の桁数を累算値を次の上位のレジスタセ
ルにシフトすることと、特定の桁数を、次の上位のレジ
スタセルに最下位桁数としてストアされた累算値に加算
することとを含むシフト累算演算を行なうステップであ
り、特定の桁数は累算値の最下位桁よりも上位である、
下位のレジスタセルにストアされた累算値の桁数であ
り、シフト累算演算は、レジスタ内の最下位レジスタセ
ルから最上位レジスタセルまで、重みの隣接したレジス
タセルの間で順次連続して行なわれる。
【0011】(5) 積を確定するために複数個のレジ
スタセルの内容を読出す。この発明の他の局面は、前述
の方法を実行するための装置を含み、その装置はその好
ましい実施例において、複数個の第1の桁数と複数個の
第2の桁数との対の組合せの各々についての部分積を定
めるための論理回路と、累算値をストアするための、階
層的重みを有する複数個のレジスタセルを含むレジスタ
と、累算値を生成するためにそれぞれの部分積の選択さ
れたものを累算するための累算回路とを含み、累算回路
は上記の関係に従って、累算値を特定のレジスタセルに
ストアする。
【0012】したがってこの発明の目的は、電力消費を
節約するために特定の乗算演算に必要なだけの十分な素
子を駆動することを容易にする、2つの数の積を求める
ための方法およびその装置を提供することである。
【0013】この発明の他の目的は、この装置を用いる
システム中でサブストレート上で効率的にスペースを占
有する、2つの数の積を求めるための方法およびその装
置を提供することである。
【0014】この発明のさらに他の目的は、この装置を
用いるシステムの動作速度を速くするために乗算演算を
高速で行なう、2つの数の積の値を求めるための方法お
よびその装置を提供することである。
【0015】この発明の他の目的および特徴は、この発
明の好ましい実施例を示す添付の図面に関連して考慮さ
れるときに、以下の詳細な説明および前掲の特許請求の
範囲から明らかになるであろう。
【0016】
【詳細な説明】伝統的な高速データ信号処理装置は、音
声圧縮、高速モデム操作、デジタルフィルタの操作等の
機能のためのアルゴリズムを実行するために高速乗算器
を用いる。典型的には、このような機能のために用いら
れる乗算器は、大きく(16×16ビットアレイのオー
ダで)、かつ高電力消費と、広いダイス領域(サブスト
レート上の占有面積)と、高精度とを含む。算術論理ユ
ニット等の乗算器の他の使用は一般に、高速操作を維持
するために、同一の欠点、つまり高電力消費および広い
ダイス領域から影響を受け、かつこの欠点はより速い速
度、より高い精度、およびより大きな数への要求に伴っ
て悪化する。
【0017】この発明は、2つの数の積を求めるための
方法(つまり乗算の方法)を含み、その方法は、1つの
乗算器で乗算するために要求されるであろう乗算器のサ
イズよりも小さい複数個の乗数について分散された乗算
操作を含む。かかる分散処理は演算の速度と結果の正確
さとを維持する一方で、より小さなダイス領域要求を与
え、かつ特定の乗算演算に含まれる特定の被乗数および
乗数に要求される分配処理配列中で、特定の乗算ユニッ
トのみを駆動する機会を与える。
【0018】一般に、この方法は、被乗数と乗数との一
部の部分積の発生を含み、その部分積の各々は、それぞ
れより小さい乗算ユニットを要求し、かつ被乗数の桁数
と乗数の桁数との特定のそれぞれの重みに従って、部分
積がその中で累算されているレジスタ中でシフト累算演
算を行なう。
【0019】この発明の方法を説明する上で使用される
用語の理解を容易にするために、次の用語が図示され
る。
【0020】
【表1】
【0021】
【表2】
【0022】
【数18】
【0023】この発明の第1の実施例に従って、第1の
数と第2の数とが乗算される。第1の数は、下位桁から
上位桁へ階層的に配列された複数個の第1の桁数を有
し、かつ第2の数は下位桁から上位桁へ階層的に配列さ
れた複数個の第2の桁数を有する。2つの数のうちの短
い方の数の最上位桁は、第1および第2の数が同数の桁
数を有するように適切に0で満たされる。第1の数は少
なくとも1つの第1のセグメント対に区分され、その第
1のセグメント対の各々は式「am ,bm 」で表わさ
れ、ここで「a」はそれぞれの第1のセグメント対のう
ちの上位の第1のセグメントを表わし、かつ「b」はそ
れぞれの第1のセグメント対(「m」=1、2、3、
…)のうちの下位の第1のセグメントを表わす。「m」
は第1の数内のそれぞれの第1のセグメント対の重みを
表わす。第2の数は同様に少なくとも1つの第2のセグ
メント対に区分され、その第2のセグメント対の各々は
式「cn,dn 」で表わされ、ここで「c」はそれぞれ
の第2のセグメント対のうちの上位の第2のセグメント
を表わし、かつ「d」はそれぞれの第2のセグメント対
(「n」=1、2、3、…)の下位の第2のセグメント
を表わす。「n」は第2の数内でそれぞれの第2のセグ
メント対の重みを表わす。こうして、2つの数は同数の
セグメント対に区分され、かつ第1のセグメントおよび
第2のセグメントのそれぞれは所与の重みのスパンに対
して同数の桁数を含む。
【0024】第1のセグメント対の各々と第2のセグメ
ント対の各々とについて加算圧縮が計算される。つま
り、式「(am +bm )」で表わされる、第1のセグメ
ント対の各々についての第1の加算圧縮と、式「(cn
+dn )」によって表わされる第2のセグメント対の各
々についての第2の加算圧縮とが計算される。同様に、
式「(am −bm )」で表わされる第1のセグメント対
の各々についての第1の減算圧縮と、式「(cn
n )」で現わされる第2のセグメント対の各々につい
ての第2の減算圧縮とがまた計算される。
【0025】第1のセグメント対の各々のうちの下位セ
グメントの各々と、第2のセグメント対の各々のうちの
下位セグメント各々との積を含む、1組の1次部分積が
計算される。各1次部分積は式「P1m,n 」で現わさ
れ、ここでP1m,n =bm nであり、かつ「m、n」
は1次部分積の各々について合成の重みを確立する。
【0026】第1の加算圧縮の各々と、第2の加算圧縮
の各々との積を含む、1組の2次の部分積が計算され
る。2次の部分積の各々は、式「P2m,n 」で表わさ
れ、ここでP2m,n =(am +bm )(cn +dn )で
あり、かつ「m,n」は2次部分積の各々について合成
の重みを確率する。
【0027】第1の減算圧縮の各々と、第2の減算圧縮
の各々との積を含む、1組の3次部分積が計算される。
3次部分積の各々は式「P3m,n 」で表わされ、ここで
P3 m,n =(am −bm )(cn −dn )であり、かつ
「m,n」は3次部分積の各々について合成の重みを確
立する。
【0028】特定の2次部分積と、同一の合成の重みを
有する特定の3次部分積との和が計算される。こうして
計算された和は、中間結果を与えるために2で除算され
る。中間結果の計算で使用された2次および3次部分積
の合成の重みと同じ合成の重みを有する、1次部分積
は、加算係数を生成するためにその中間結果から減算さ
れる。各々の加算係数は式
【0029】
【数19】
【0030】で表わされる。2次部分積から、同一の合
成の重みを有する3次部分積を引いた差が計算され、中
間差を生じる。中間差は2で除算されて減算係数を生成
する。各減算係数は式
【0031】
【数20】
【0032】で表わされる。1次部分積と、減算係数
と、加算係数とは、レジスタセルのアレイを有するレジ
スタ中に累算されて、レジスタセルの適切なものの中に
累算値を生じる。レジスタセルは、第1のレジスタセル
から(4j−1)レジスタセルまで階層的に配列され、
ここで「j」は第1のセグメント対の数を表わす。第1
のレジスタセルは階層的配列中で最下位の重みを有し、
複数個のレジスタセルの各々は、rx によって表わさ
れ、ここで「x」はそれぞれのレジスタセルの重みを示
す。それぞれのレジスタセル中の複数個の1次部分積の
累算は関係 P1m,n =bm n −[累算して]→ r2(m+n)-3 に従って行なわれる。それぞれのレジスタセル中の減算
係数の累算は、関係
【0033】
【数21】
【0034】に従って行なわれる。それぞれのレジスタ
セル中の加算係数の累算は、関係
【0035】
【数22】
【0036】に従って行なわれる。それから、レジスタ
セルのアレイ内の下位レジスタセルから、レジスタセル
のアレイ内の次の上位のセルへ、シフト累算演算が行な
われる。シフト累算演算は最下位レジスタセルで始ま
り、かつ下位レジスタセル中の累算値の特定の桁数を次
の上位のレジスタセルへシフトし、シフトされた上位の
桁数を下位桁として、次の上位のレジスタセル内で累算
値と加算することを含む。シフトされるべき特定の桁数
は、第1の数がそれに除算される第1のセグメントの各
々の桁の数に等しい、下位のレジスタセル中の累算値の
下位桁の数よりも上位のすべての桁数を含み、シフト累
算演算は最下位セルから継続し、かつ次の上位レジスタ
セルが(4j−1)セル、つまり中に累算値をストアさ
れた最上位セルとなるまで、重みの隣接したレジスタセ
ルの間で連続して行なわれる。上述のシフト累算演算が
完了した後、レジスタセルのアレイ内にストアされる数
は、第1の数と第2の数との積を含み、かつこの発明の
方法を用いる装置内で適切なようにさらなる処理での使
用のためにレジスタセルのアレイの外へシフトされても
よい。
【0037】この発明のこの方法は以下の例によって例
示されるであろう。例I: 256×256の乗算を行なうために (1) 被乗数と乗数とを分離して次のようにセグメン
ト対にする:
【0038】
【数23】
【0039】(2) 加算圧縮および減算圧縮を次のよ
うに定める: (a+b)=31 (a−b)=19 (c+d)=31 (c−d)=19 (3) 次のように1次部分積(P1)を定める: bd=36 (4) 加算係数(F+ )および減算係数(F- )を次
のように定める:
【0040】
【数24】
【0041】(5) 重みに従って階層的に配列された
複数個のレジスタセル中の定められた項の累算は次のよ
うに定められる: (a) 一般に、一般に認められたマニュアル乗算の方
法に従うと:
【0042】
【数25】
【0043】(b) このように、レジスタセルのアレ
イは累算値について次のように定められる:
【0044】
【表3】
【0045】(6) 次のステップはシフト累算演算を
行なうことであり、これは特定の桁を下位のレジスタセ
ルの累算値から次の上位のレジスタセルへシフトし、か
つそれらのシフトされた特定の桁数を次の上位のレジス
タセル中の累算値に下位桁として加算する。シフトされ
た特定の桁数はすべて、「b」中の桁の数よりも上位の
桁数であり、「b」と「d」とは同数の桁数を有するこ
とが要求される。
【0046】
【表4】
【0047】(7) レジスタの内容は正解(65,5
36)を含み、かつその内容をレジスタセルのアレイか
ら直列にまたは並列のいずれかで適切にシフトすること
により、他の処理のために利用可能である。
【0048】この方法は、「a」と「c」とが同数の桁
数(ブランクは0として扱われる)を有する限りかつ
「b」と「d」とが同数の桁数を有する限り、被乗数と
乗数とがどのように分離されようとも、正確な結果を与
える。
【0049】例II: (1) 被乗数と乗数とを次のように分離する:
【0050】
【数26】
【0051】(2) 加算圧縮および減算圧縮を次のよ
うに定める:
【0052】
【数27】
【0053】(3) 1次部分積(P1)を次のように
定める: bd=0 (4) 加算係数(F+ )および減算係数(F- )を次
のように定める:
【0054】
【数28】
【0055】(5) 重みに従って階層的に配列された
複数個のレジスタセル中の決定された項の累算は次のよ
うに定められる: (a) 一般に、一般に認められたマニュアル乗算の方
法に従って:
【0056】
【数29】
【0057】(b) このように、レジスタセルのアレ
イは累算値に対して次のように設定される:
【0058】
【表5】
【0059】(6) 次のステップはシフト累算演算を
行なうことであり、これは特定の桁数を下位レジスタセ
ルの累算値から、次に上位のレジスタセルへシフトし、
かつそれらのシフトされた特定の桁数を次に上位のレジ
スタセル中の累算値に下位桁として加算する。シフトさ
れた特定の桁数はすべて、「b」中の桁の数よりも上位
の桁数であり、「b」と「d」とは同数の桁数を有す
る。
【0060】
【表6】
【0061】(7) レジスタの内容は正解(250,
000)を含み、かつその内容をレジスタセルのアレイ
から直列または並列のいずれかで適切にシフトすること
によって、他の処理について利用可能である。
【0062】この方法はより大きな数にも対処する。例III :1,234×5,678を乗算するために (1) 被乗数と乗数とを次のように分離する:
【0063】
【数30】
【0064】(2) 加算圧縮および減算圧縮を次のよ
うに定める:
【0065】
【数31】
【0066】(3) 1次部分積(P1)を次のように
定める: bd=2652 (4) 加算係数(F+ )および減算係数(F- )を次
のように定める:
【0067】
【数32】
【0068】(5) 重みに従って階層的に配列された
複数個のレジスタセル中で決定された項の累算は次のよ
うに定められる: (a) 一般に、一般に認められたマニュアル乗算の方
法にしたがって:
【0069】
【数33】
【0070】(b) したがってレジスタセルのアレイ
は累算値に対して次のように設定される:
【0071】
【表7】
【0072】(6) 次のステップはシフト累算演算を
行なうことであり、これは特定の桁数を下位レジスタセ
ルの累算値から、次に上位のレジスタセルへシフトし、
かつそれらのシフトされた特定の桁数を次に上位のレジ
スタセル中の累算値に下位桁として加算する。シフトさ
れた特定の桁数はすべて「b」中の桁数より上位の桁数
であり、「b」と「d」とは同数の桁数を有する。
【0073】
【表8】
【0074】(7) レジスタの内容は正解(7,00
6,652)を含み、かつその内容をレジスタセルのア
レイから直列または並列のいずれかで適切にシフトする
ことによって、他の処理について利用可能である。
【0075】この方法は10を底とする数以外の数につ
いても有効に働く。たとえば135×214(7を底と
する)の乗算を行なうために:例IV :(7を底とする) (1) 被乗数と乗数とを次のように分離する:
【0076】
【数34】
【0077】(2) 加算圧縮および減算圧縮を次のよ
うに定める:
【0078】
【数35】
【0079】(3) 1次部分積(P1)を次のように
定める: bd=26 (4) 加算係数(F+ )および減算係数(F- )を次
のように定める:
【0080】
【数36】
【0081】(5) 重みに従って階層的に配列された
複数個のレジスタセル中の決定された項の累算は次のよ
うに定められる: (a) 一般に、一般に認められたマニュアル乗算の方
法に従って:
【0082】
【数37】
【0083】(b) したがって、レジスタセルのアレ
イは累算値に対して次のように設定される:
【0084】
【表9】
【0085】(6) 次のステップはシフト累算演算を
行なうことであり、これは特定の桁数を下位レジスタセ
ルの累算値から次に上位のレジスタセルへシフトし、か
つそれらのシフトされた特定の桁数を次に上位のレジス
タセル中の累算値に下位桁として加算する。シフトされ
た特定の桁数はすべて、「b」中の桁数よりも上位の桁
数であり、「b」および「d」は同数の桁数を有するこ
とが要求される。
【0086】
【表10】
【0087】(7) レジスタの内容は正解(32,5
56)を含み、かつその内容をレジスタセルのアレイか
ら直列または並列のいずれかで適切にシフトすることに
より、他の処理のために利用可能である。
【0088】この方法は乗算演算をさらに分配するため
に、被乗数および乗数をより完全に分離し、それにより
分散処理においてより小さい乗算器を用いるように拡張
されることが可能である。
【0089】例V: (1) 被乗数と乗数とを次のように分離する:
【0090】
【数38】
【0091】(2) 加算圧縮および減算圧縮を次のよ
うに定める:
【0092】
【数39】
【0093】(3) 1次部分積(P1m,n )を次のよ
うに定める:
【0094】
【数40】
【0095】(4) 加算係数
【0096】
【数41】
【0097】および減算係数
【0098】
【数42】
【0099】を次のように定める:
【0100】
【数43】
【0101】
【数44】
【0102】(5) 重みに従って階層的に配列された
複数個のレジスタセル中の決定された項の累算は次のよ
うに定められる: (a) 一般に、一般に認められたマニュアル乗算の方
法に従って:
【0103】
【表11】
【0104】(b) 従って、レジスタセルのアレイは
累算値について次のように設定される:
【0105】
【表12】
【0106】(6) 次のステップはシフト累算演算を
行なうことであり、これは特定の桁数を下位レジスタセ
ルの累算値から次に上位のレジスタセルにシフトし、か
つそれらのシフトされた特定の桁数を次の上位のレジス
タセル中の累算値に下位桁として加算する。シフトされ
た特定の桁数はすべて「bm 」中の桁の数よりも上位の
桁数であり、「bm 」と「dn 」とは同数の桁数を有す
ることが要求される。
【0107】
【表13】
【0108】(7) レジスタの内容は正解(7,00
6,652)を含み、かつその内容をレジスタセルのア
レイから直列または並列のいずれかで適切にシフトする
ことによって他の処理のために利用可能である。
【0109】一般に認められた乗算のマニュアルの方法
を調べると、この発明の上述の方法に対する簡略化した
アプローチがわかり、かつその方法の代わりの実施例を
生じる。
【0110】特にたとえば4桁の数について、レジスタ
のセットアップは次のように定められる:
【0111】
【表14】
【0112】マニュアル乗算技術のかかる応用から生じ
る「斜交マトリックス」は正方マトリックスとして次の
ように表わされ得る:(4桁の数、n=2)
【0113】
【数45】
【0114】この発明のこの方法の第1の実施例に関連
して上述されたレジスタのセットアップが対角線上にみ
られる。1次部分積(P1m,n )、加算係数
【0115】
【数46】
【0116】、および減算係数
【0117】
【数47】
【0118】もまた対角線上にみられる。
【0119】
【数48】
【0120】つまり、(列1,行1)を介して延在する
対角線はP11,1 (b1 1 )を含み、この対角線上の
値はレジスタセルr1 中で累算する。
【0121】(列2,行1)から(列1,行2)へ延び
る対角線は
【0122】
【数49】
【0123】を含み、この対角線上の値はレジスタセル
2 中で累算する。(列3,行1)から(列1,行3)
へ延びる対角線は
【0124】
【数50】
【0125】と、
【0126】
【数51】
【0127】とP11,2 (b1 2 )とを含み、この対
角線上の値はレジスタセルr3 中で累算する。
【0128】(行4,列1)から(行1,列4)へ延在
する対角線は
【0129】
【数52】
【0130】と
【0131】
【数53】
【0132】とを含み、この対角線上の値はレジスタセ
4 中で累算する。(列4,行2)から(列2,行4)
へ延在する対角線は
【0133】
【数54】
【0134】と、P12,2 (b2 2 )と、
【0135】
【数55】
【0136】とを含み、この対角線上の値はレジスタセ
ルr5 中で累算する。(列4,行3)から(列3,行
4)ヘ延在する対角線は
【0137】
【数56】
【0138】を含み、この対角線上の値はレジスタセル
6 中で累算する。(列4,行4)を介する対角線は
【0139】
【数57】
【0140】を含み、この対角線上の値はレジスタセル
7 中で累算する。こうしてたとえばn=3である6桁
の数について、正方マトリックスは次のように設定され
得る:
【0141】
【数58】
【0142】またたとえばn=4である8桁の数につい
て、正方マトリックスは次のように設定され得る:
【0143】
【数59】
【0144】レジスタのセットアップは対角線に沿って
あることがみられ、かつ次の公式で表わされることがで
きる(比較を容易にするためにm=2、n=3、および
n=4についての場合は欄送りされる):
【0145】
【表15】
【0146】
【表16】
【0147】
【表17】
【0148】調べてみると、レジスタのセットアップは
次の関係に従って行なわれることが認められ得る:
【0149】
【数60】
【0150】この発明のこの方法の第1の実施例に従っ
て、第1の数と第2の数との乗算のためのレジスタのセ
ットアップを定めるための、正方マトリックスの一般化
された場合が図1に示される。図1において、1ないし
mの番号を付けた列が示され、これは正方マトリックス
の頂部を横切って右から左へ増加している重みを示し、
1ないしnの番号を付けられた行もまた示され、これは
正方マトリックスの上から下へ増えていく重みを示す。
【0151】それぞれのレジスタrx 中に累算されるべ
き項は平行対角線上にみられるように示される。たとえ
ば1つの数が4つの第1のセグメント対と4つの第2の
セグメント対とに除算される(つまりm=4およびn=
4である)場合では、8列8行の正方マトリックスは、
(列m、行1)から(列1、行n)へと走る対角線、こ
こでm=n、に沿ってそれぞれのレジスタ中で累算され
るべきエレメントを与えるであろう。但し、様々な対角
線に沿って平方8×8マトリックス(図1中で太字で輪
郭を描かれる)内に入る項は、適切なレジスタ中で累算
されるであろう。一たん累算が行なわれれば、この発明
のこの方法の第1の実施例に関連して前述されたシフト
累算演算が行なわれる。
【0152】もし被乗数および乗数のセグメント対につ
いての合成の重みを示す添字(m、n)の代わりに
(列、行)の数をレジスタ番号と比較すると、レジスタ
セル中の項のまたは部分積累算は図2に示される表に従
って行なわれることが調べるとわかる。図2を参照し
て、レジスタrX は、それぞれのレジスタ中で累算され
るべき部分積の(列、行)ロケーションが、それらが累
算されるべきレジスタrX の右のそれぞれのレジスタに
関して同一直線上に欄送りされて列挙されている。それ
ぞれのレジスタ内に累算された部分積の各々の行の数と
列の数との和は、それぞれのレジスタ番号rX の左へ同
一直線上に欄送りされる。検査によると、(列、行)の
数の和(Σm+n)はいつも、1増加したレジスタ指定
xに等しいことがわかる。つまりm+n=x+1であ
る。したがって、所与の部分積がその中に累算されるべ
きレジスタrX は、適切な正方マトリックス内のその
(列、行)ロケーションを確定することによりすべて定
められ得る。
【0153】したがって、この発明に従う2つの数の積
を求めるためのより単純で好ましい方法は、被乗数と乗
数とをセグメント対に区分する必要がない。この発明の
好ましい方法に従って、第1の数(たとえば被乗数)
は、第1の下位桁から第1の上位桁へ階層的に配列され
た複数個の第1の桁数を有し、かつ、第2の数(たとえ
ば乗数)は、第2の下位桁から第2の上位桁へ階層的に
配列された複数個の第2の桁数を有する。この好ましい
方法は、複数個の部分積を求めるステップを含み(複数
個の部分積を求めている間、2つの数の内の短い方の数
のブランクの桁を0として扱う)、その複数個の部分積
は第1の桁数と第2の桁数との対の組合せの各々につい
てそれぞれの部分積を含む。こうしてそれぞれ部分積の
各々は、それぞれの部分積に含まれる対の組合せの第1
の桁の重みと、それぞれの部分積に含まれる対の組合せ
の第2の桁の重みとによって確立される、合成の重みを
有する。レジスタは情報をストアするために設けられ、
そのレジスタは、累算値をストアするために複数個のレ
ジスタセルを有し、各々のレジスタセルは階層的重みを
有する。選択された部分積は、次の関係 Pm,n −〔累算して〕→rx ; x=(m+n)−1 に従って、特定されたレジスタセル中で累算値を生成
し、ここで「Pm,n 」はそれぞれの部分積を表し、
「m」(m=1,2,3,…)はそれぞれの部分積に含
まれる対の組合せの第1の桁の重みを表し、「n」(n
=1,2,3,…)はそれぞれの部分積に含まれる対の
組合せの第2の桁の重みを表し、かつ「rx 」は、重み
「x」を有する特定されたレジスタセルを表わす。
【0154】それからレジスタ中でシフト累算演算が行
なわれる。シフト累算演算は、下位レジスタセル中にス
トアされた累算値の特定の桁数を、累算値を含むレジス
タセルの内の次に上位のレジスタセルにシフトし、かつ
特定の桁数を、次に上位のレジスタセル中に下位桁とし
てストアされた累算値に加算することを含む。シフトさ
れた特定の桁数は、累算値の最下位桁よりも上位の下位
レジスタ中にストアされた累算値の桁数である。シフト
累算演算は、最下位レジスタセルから累算値を含む最上
位レジスタセルまでの重みの隣接したレジスタセルの間
で順次連続して行なわれる。シフト累算演算が完了した
後、レジスタセルのアレイ内に含まれる結果は、被乗数
と乗数との積でありかつ他の処理に要求されるように直
列または並列にシフトするために利用可能である。被乗
数と乗数とのそれぞれの桁数の重みは、正方マトリック
スにおいて各部分積のロケーションを直接定め、かつ正
方マトリックス中のロケーションは、どのレジスタセル
中へ各部分積がシフト累算演算のために累算されるかを
定める。
【0155】実際この好ましい方法を行なうための適切
な装置を用いれば、マトリックスは要求されない。それ
ぞれの部分積に含まれる第1の桁と第2の桁との重み
は、関係x=(m+n)−1に従って、どのレジスタセ
ル中に部分積が累算されるべきかを定める。
【0156】図3はこの発明の好ましい方法に従って、
レジスタのセットアップを定めるための一般化された正
方マトリックスを表わす。図3において、第1の数(た
とえば被乗数)の桁数は、am (「m」は第1の桁の重
みを示し、m=1,2,3,…)で示され、かつ第2の
数(たとえば乗数)の桁数は、bn (「n」は第2の桁
の重みを示し、n=1,2,3,…)で示される。かか
る配列によって、第1の桁数のそれぞれの重みは図3の
正方マトリックスの列の数と直接相関関係があり、かつ
第2の桁数のそれぞれの重みは、図3の正方マトリック
スの行の数と直接相関関係がある。したがって、4桁の
数は、太線101内に含まれる4×4正方マトリックス
によって表されかつ図3の一般化された正方マトリック
ス中の、(列m、行1)から(列1、行n)へ走りここ
でm=nである対角線は、太線101で規定される4×
4マトリックス内で、特定されたレジスタセルrx 中に
累算されるべき部分積を識別する。図3に示されるマト
リックスは、この好ましい方法を実行するために不可欠
ではないが、この方法の実務を例示しかつ説明するのに
有用である。つまり、図3の正方マトリックス内の部分
積の配置は、それぞれの部分積に含まれる対の組合せの
第1の桁と第2の桁との合成の重みにすべて依存し、
(列、行)指定(m、n)は、その中にそれぞれの部分
積が累算されるべきそれぞれのレジスタセルを完全に識
別する。したがって、それぞれの部分積の合成の重み
は、その中に部分積が累算されるべきレジスタセルを完
全に識別し、かつその中にそれぞれの部分積が累算され
るべきレジスタセルを定めるための中間ステップまたは
装置としてマトリックスが用いられる必要がない。
【0157】同様の態様で、6桁の被乗数と6桁の乗数
との積は、6×6正方マトリックスを規定する図3中の
太線104によって規定される正方マトリックスによっ
て求められることが可能である。8桁の被乗数と8桁の
乗数との積は、この発明のこの好ましい方法に従って、
図3中の太線106によって規定される8×8平方マト
リックスによって求められることが可能であり、10桁
の被乗数と10桁の乗数との積は、図3中の太線108
によって規定される10×10平方マトリックスによっ
て定められ得る。
【0158】したがって、2つの数を乗算するためのシ
ステムの一定の設計パラメータは、このシステムによっ
て対処されるべき被乗数−乗数演算の予期されるサイズ
を知るだけで容易に確定されることが可能である。たと
えば図3を再び参照して、レジスタr17中の項の累算を
示す対角線は(列、行)位置(4,4)を通過し、設計
者は、被乗数または乗数のいずれかが4桁を含むであろ
うということのみを知る必要がある。それがわかれば、
Σm+n=x+1を計算してx=7を生成する。こうし
て、乗算に4つの桁が含まれるであろうということを知
るだけで、設計者は4桁の被乗数と4桁の乗数との演算
のためにこの発明のこの好ましい方法に対処するよう
に、7つのレジスタセルのアレイを設けることが要求さ
れるであろう決定できる。また、所与の被乗数−乗数演
算のために要求される数のサイズを定めることにより、
この発明のこの好ましい方法を実行することに含まれ
る、それぞれの部分積を定めるために要求される乗算器
の数を決定することが可能である。つまり、4桁の演算
(4×4マトリックスを要求する)ために、16の部分
積が計算される。システムの設計者は16個の乗算器を
設けることを選択してもよく、それにより、一クロック
サイクルで要求される16の部分積を決定することを許
容するか、または複数クロックサイクルで要求される1
6の部分積を決定することを可能にするために、より少
ない数の乗算器が設けられてもよい。その上、単一桁の
乗算は部分積を求めるときにのみ含まれるので、4×4
の乗算器のみが要求される。こうして、先行技術の乗算
器装置に要求されるように、4桁の乗算演算のために2
56(つまり16×16)ビットの乗算器の代わりに、
設計者は8つの4×4乗算器(つまり8×4×4=12
8ビットのみの占有領域)だけを用いて「リアルエステ
ート」を節約することを選んでもよい。
【0159】またさらに、特定の乗算演算に必要とされ
る乗算器およびレジスタセルのみを駆動するように制御
ソフトウェアまたはハードウェアがプログラムされても
よい。こうして、たとえば4×4システムが2桁の乗算
演算に対処して、必要な乗算器(m×n=2×2=4の
乗算器のみが要求される)のみを駆動してもよく、かつ
駆動される必要があるのは必要なレジスタセル(つまり
m+n−1=2+2−1=3のレジスタセルのみが要求
される)のみである。
【0160】部分積の分配決定に用いられる乗算器の数
を適正に選択することは、実際乗算演算の速度を上げ得
る、なぜなら部分積を求めるための数多くの下位の乗算
演算は同時に発生するからである。こうして、もし設計
者が4×4乗算器(占有面積=16×4×4=256ビ
ット)を使用して、4×4乗算演算に対処する(つまり
4桁の数を乗算する)ことを選べば、先行技術では如何
なる占有面積の利点も実現されないが、乗算演算はより
少ないクロックサイクルで完了されるであろう。
【0161】この発明の他の局面は、この発明のこの方
法を行なうための装置である。図4は2つの数の積を求
めるための先行技術の装置の概略のブロック図である。
図4において、乗算器装置11は、被乗数を乗算器ユニ
ット14に与える被乗数入力12と、乗数を乗算器ユニ
ット14に与える乗数入力16とを含んで示される。乗
算器ユニット14は、被乗数と乗数との積を表わす結果
を生成し、バス18を介して結果レジスタ20に与え
る。乗算器ユニット14は、被乗数と乗数との予め定め
られたサイズに対処するのに十分大きい。たとえば4桁
の被乗数と4桁の乗数とに対処するために、乗算器ユニ
ット14は16×16ビットの乗算器でなければならな
い。つまり、図4の乗算器装置11のような先行技術の
乗算器装置において、乗算器ユニット14は乗算に含ま
れるキャリおよび他のオーバヘッド操作に対処するため
に、16列のトランジスタを含み、各々の列は16行の
トランジスタを有し、かつ付加的行または列またはその
両方を有する。
【0162】図5はこの発明のこの装置の第1の実施例
を実行するための装置の概略図であり、そこで第1の数
は単一の第1のセグメント対に区分され、かつ第2の数
は単一の第2のセグメント対に区分される。かかる区分
は例Iないし例IVに関連して示されかつ議論された。
図5において、乗算器装置30は、入力34で第1のセ
グメント対(a、b)の上位セグメント「a」を受け、
かつ入力36で第1のセグメント対(a、b)の下位セ
グメント「b」を受ける、算術論理ユニット(ALU)
32を含んで示される。
【0163】ALU38は、入力40で第2のセグメン
ト対(c,d)の上位セグメント「c」を受け、かつ入
力42で第2のセグメント対(c,d)の下位セグメン
ト「d」を受ける。ALU32はそこで和(a+b)が
生成される合計出力44と、そこで差(a−b)が生成
される差出力46とを有する。ALU38はそこで和
(c+d)が生成される合計出力48と、そこで差(c
−d)が生成される差出力50とを有する。
【0164】乗算器52は入力57でALU32の合計
出力44を受けるように接続され、かつ入力59でAL
U38の合計出力48を受けるように接続される。乗算
器52は出力54で二次部分積(P2=[a+b][c
+d])を生成する。乗算器56は入力58でALU3
2の差出力46を受けるように接続され、かつ入力60
でALU38の差出力50を受けるように接続される。
乗算器56は出力62で三次部分積(P3=[a−b]
[c−d])を生成する。乗算器56はまた入力64で
ALU32の入力36から量「b」を受け、かつ入力6
6でALU38の入力42から量「d」を受ける。乗算
器は出力68で一次部分積P1(P1=bd)を生成す
る。
【0165】ALU70は入力72で乗算器52の出力
54から二次部分積P2を受けかつ入力74で乗算器5
6の出力62から三次部分積P3を受ける。ALU70
は合計出力76と差出力78とを有する。二次部分積P
2と三次部分積P3との和は、合計出力76で生成さ
れ、除算器80によって2で除算されかつ入力84でA
LU82に渡される。ALU82はまた入力86で乗算
器56の出力68から一次部分積P1を受け、かつ差出
力88で加算係数F+ (F+ =[(P2+P3)÷2]
−P1)を生成する。
【0166】ALU70の差出力78で生成された出力
は、除算器90によって2で除算されて減算係数F
- (F- =[(P2−P3)÷2])を生成する。加算
係数F+、減算係数F- 、および一次部分積P1は、こ
の発明のこの方法の第1の実施例に関連して説明された
関係に従って、レジスタ92へ適切に与えられる。レジ
スタ92は、この発明のこの方法の第1の実施例の説明
に関連して説明されたシフト累算演算を行ない、第1の
セグメント対(a,b)と第2のセグメント対(c,
d)とによって表される数の積を出力94で発生する。
【0167】図6はこの発明のこの方法の第1の実施例
を実行するための装置の概略のブロック図であり、そこ
で被乗数は第1のセグメント対(a1 ,b1 )と
(a2 ,b 2 )とに区分され、かつ乗数は第2のセグメ
ント対(c1 ,d1 )と(c2 ,d 2 )とに区分され
る。図6において、乗算器装置100は、下位乗算器サ
ブシステム102と、上位乗算器サブシステム104
と、クロス乗算サブシステム106とを含んで示され
る。下位乗算器サブシステム102および上位乗算器サ
ブシステム104の各々は、図5に示される乗算器装置
30と実質的に同一である。
【0168】したがって、下位乗算器サブシステム10
2は上位、第1のセグメント対(a 1 ,b1 )の上位セ
グメント「a1 」および下位セグメント「b1 」を入力
として受ける、ALU108と、第2のセグメント対
(c1 ,d1 )の上位セグメント「c1 」および下位セ
グメント「d1 」を入力として受けるALU110とを
含む。
【0169】乗算器112は、ALU108の合計出力
114と、ALU110の合計出力118とから入力を
受けて、出力122で二次部分積P21,1 (P2
1,1 (=[a1 +b1 ][c1 +d1 ])を与える。乗
算器124は、ALU108の差出力116と、ALU
110の差出力120とから入力を受けて、出力126
で三次部分積P31,1 (P31,1 =[a1 −b1 ][c
1 −d1 ])を与える。
【0170】ALU128は乗算器112の出力122
から二次部分積P21,1 と、乗算器124の出力126
から三次部分積P31,1 とを入力として受ける。量(P
1, 1 +P31,1 )はALU128の合計出力130で
与えられ、除算器134によって2で除算され、かつA
LU138へ入力として与えられる。量「b1 」と量
「d1 」とは乗算器124が出力127で一次部分積P
1,1 (P11,1 =b11 )を与えるように、乗算器
124に与えられる。P11,1 はALU138に入力と
して与えられ、かつアキュムレータ142中に累算する
ために与えられる。ALU138の差出力140はアキ
ュムレータ142中に累算されるために、加算係数
【0171】
【数61】
【0172】を与える。量(P21,1 −P31,1 )はA
LU128の差出力132で与えられ、かつ除算器13
6によって2で除算されて、アキュムレータ142中に
累算されるために減算係数
【0173】
【数62】
【0174】を与える。上位乗算サブシステム104
は、第1のセグメント対(a2 、b2 )の上位セグメン
ト「a2 」と下位セグメント「b2 」とを入力として受
ける、ALU144を含む。ALU146は、第2のセ
グメント対(c2 、d2 )の上位セグメント「c2 」と
下位セグメント「d2 」とを入力として受ける。乗算器
156は、ALU144の合計出力148と、ALU1
46の合計出力152とから入力を受ける。乗算器15
6は、ALU144の差出力150と、ALU146の
差出力154とから入力を受ける。乗算器156は、出
力160で二次部分積P22, 2 (P22,2 =[a2 +b
2 ][c2 +d2 ])を生成し、乗算器158は、出力
162で三次部分積P32,2 (P32,2 =[a2
2 ][c2 −d2 ])を生成する。
【0175】ALU164は、乗算器156の出力16
0から二次部分積P22,2 と、乗算器158の出力16
2から三次部分積P32,2 とを入力として受ける。量
(P2 2,2 +P32,2 )はALU164の合計出力16
6で生成され、除算器170によって2で除算され、か
つALU172へ入力として与えられる。量(P22,2
−P32,2 )はALU164の差出力168で生成さ
れ、かつ除算器174によって2で除算されて、アキュ
ムレータ142中に累算されるために減算係数
【0176】
【数63】
【0177】を与える。乗算器156は、量「b22
および量「d2 」を入力として受け、かつ出力176で
一次部分積P12,2 (P12,2 =b2 2 )を生成す
る。出力176は作動的に接続されて、ALU172へ
の入力として一次部分積P12,2を与え、かつアキュム
レータ142中に累算されるようにP12,2 を与える。
ALU172の差出力178は、アキュムレータ142
中で累算されるように加算係数
【0178】
【数64】
【0179】を与える。クロス乗算サブシステム106
は、乗算器180、182、184、および186を含
む。乗算器180は、ALU144の合計出力148で
生成された量(a2 +b2 )と、ALU110の合計出
力118で生成された量(c1 +d1 )とを入力として
受け、かつ出力188で二次部分積P22,1 (P22,1
=[a2+b2 ][c1 +d1 ])を生成する。乗算器
182は、ALU144の差出力150で生成された量
(a2 −b2 )と、ALU110の差出力120で生成
された量(c1 −d1 )とを入力として受け、かつ出力
190で三次部分積P32, 1 (P32,1 =[a2
2 ][c1 −d1 ])を生成する。乗算器184は、
ALU146の合計出力152で生成された量(c2
2 )と、ALU108の合計出力114で生み出され
た量(a1 +b1 )とを入力として受け、かつ出力19
2で二次部分積P21,2 (P21,2 =[a1 +b1
[c2 +d2 ])を生成する。乗算器186は、ALU
146の差出力154で生成された量(c2−d1
と、ALU108の差出力116で生成された量(a1
−b1 )とを入力として受け、かつ出力194で三次部
分積P31,2 (P31.2 =[a1 −b1][c2
2 ])を生成する。
【0180】ALU196は、乗算器180の出力18
8から二次部分積P22,1 と、乗算器182の出力19
0から三次部分積P32,1 とを受ける。ALU196の
合計出力198で生成された量(P22,1 +P32,1
は、除算器202によって2で除算され、かつALU2
04へ入力として与えられる。ALU196の差出力2
00で生成された量(P22,1 −P32,1 )は、除算器
206によって2で除算されて、アキュムレータ142
中に累算されるために、減算係数
【0181】
【数65】
【0182】を生成する。乗算器158は量「b2 」お
よび量「d1 」を付加的入力として受け、かつ出力20
8で一次部分積P12,1 (P12,1 =b2 1 )を生成
する。出力208は作動的に接続されて、一次部分積P
2,1 を入力としてALU204に与え、かつアキュム
レータ142中に累算されるためにP12,1 を与える。
ALU204は、アキュムレータ142中に累算される
ために加算係数
【0183】
【数66】
【0184】をその差出力210で与える。ALU21
2は、乗算器184の出力192から二次部分積P2
1,2 (P22, 1 =[a1 +b1 ][c2 +d2 ])と、
乗算器186の出力194から三次部分積P31,2 (P
1,2 =[a1 −b1 ][c2 −d2 ])とを入力とし
て受ける。ALU212は、除算器218によって2で
除算され、かつALU220への入力として与えられ
る、量(P21,2 +P31,2 )をその合計出力214で
与える。ALU212はまた、除算器222によって2
で除算され、アキュムレータ142中に累算されるため
に減算係数
【0185】
【数67】
【0186】を生成する、量(P21,2 −P31,2 )を
その差出力216で与える。乗算器112は、量
「b1 」および「d2 」を入力として受け、かつ出力2
24で一次部分積P11,2 (P11,2 =b1 2 )を生
成する。出力224は作動的に接続されて、一次部分積
P11,2 を入力としてALU220に与え、かつアキュ
ムレータ142中に累算されるためにP11,2 を与え
る。ALU220は、アキュムレータ142中に累算さ
れるために加算係数
【0187】
【数68】
【0188】をその差出力226で生成する。アキュム
レータ142は、さまざまな一次部分積P1m,n と、加
算係数
【0189】
【数69】
【0190】と、減算係数
【0191】
【数70】
【0192】とを累算して、レジスタ228内のレジス
タセル230のアレイに記憶する。レジスタ228は、
この発明のこの方法の第1の実施例の説明に関連して説
明された、シフト累算演算を行ない、シフト累算演算が
完了した後レジスタ228内に残っている数は、第1の
セグメント対(a1 ,b1 )および(a2 ,b2 )を含
む第1の数と、第2のセグメント対(c1 ,d1 )およ
び(c2 ,d2 )を含む第2の数との積である。その積
は、直列か並列かのいずれかで適切に、出力232を介
してシフトするために利用可能である。
【0193】図7はこの発明のこの方法の好ましい実施
例を実行するための装置の概略のブロック図である。図
7において、乗算装置240は、被乗数入力242から
被乗数を受け、かつ乗数入力244から乗数を受ける。
被乗数は、入力248でマルチプレクサ246によって
受けられ、かつ乗数はマルチプレクサ246の入力25
0で受けられる。
【0194】乗算器254のアレイ252はバス256
によってマルチプレクサ246に作動的に接続される。
マルチプレクサ246は、入力248および250で受
けられた、被乗数および乗数のそれぞれの桁数の重みを
実現するようにプログラムされ、その結果、被乗数の桁
数と乗数の桁数との対の組合せのそれぞれを、かかる対
の組合せの各々についてのそれぞれ部分積を生成するた
めの乗算のために、利用可能な乗算器254に送った
後、かつバス256を介して乗算器254のアレイ25
2からそれぞれの部分積を受けた後、マルチプレクサ2
46は、それぞれの部分積に含まれる対の組合せの被乗
数の桁数の重みと乗数の桁数の重みとに従って、それぞ
れの部分積を結果レジスタ260中の適切なレジスタセ
ル258に累算することを指示する。
【0195】結果レジスタ260は、この発明のこの方
法の好ましい実施例に関連して説明されたシフト累算演
算を行ない、シフト累算演算が完了した後、レジスタセ
ル258のアレイに残っている数は、マルチプレクサ2
46の入力248および250で受けられた被乗数と乗
数入力との積である。その結果は、乗算装置240を用
いるシステムによる使用または他の処理のために、出力
262を介して直列または並列のいずれかで適切にシフ
トするために利用可能である。
【0196】所与の詳細な図面および具体例はこの発明
の好ましい実施例を説明するが一方、それらは例示のた
めであり、かつこの発明のこの装置は開示された正確な
詳細および条件に制限されず、かつ前掲の特許請求の範
囲で規定されるこの発明の精神から逸脱することなくさ
まざまな変化がそこで行なわれ得るということが理解さ
れるべきである。
【図面の簡単な説明】
【図1】この発明のこの装置の第1の実施例に従うレジ
スタセットアップを定めるための一般化されたマトリッ
クスを表わす図である。
【図2】この発明のこの方法に従う累算値のそれぞれの
レジスタセルへの割当を示す表である。
【図3】この発明のこの方法の好ましい実施例に従うレ
ジスタセットアップを定めるための一般化されたマトリ
ックスを表わす図である
【図4】2つの数の積を求めるための先行技術の装置の
概略のブロック図である。
【図5】第1の数が単一の第1のセグメント対に区分さ
れかつ第2の数が単一の第2のセグメント対に区分され
る、この発明のこの方法の第1の実施例を実行するため
の装置の概略図である。
【図6】被乗数は第1のセグメント対(a1 ,b1 )お
よび(a2 ,b2 )に分離されかつ乗数は第2のセグメ
ント対(c1 ,d1 )および(c2 ,d2 )に分離され
る、この発明のこの装置の第1の実施例を実行するため
の装置の概略のブロック図である。
【図7】この発明のこの方法の好ましい実施例を行なう
ための装置の概略のブロック図である。
【符号の説明】
240 乗算装置 254 乗算器 258 レジスタセル 260 結果レジスタ
───────────────────────────────────────────────────── フロントページの続き (72)発明者 ドナルド・ディー・モンデュール アメリカ合衆国、60540 イリノイ州、ネ パービル、クラレモント・ドライブ、110

Claims (13)

    【特許請求の範囲】
  1. 【請求項1】 第1の数と第2の数との積を求めるため
    の方法であって、前記第1の数は第1の下位桁から第1
    の上位桁へ階層的に配列された複数個の桁数を有し、前
    記第2の数は第2の下位桁から第2の上位桁へ階層的に
    配列された複数個の第2の桁数を有し、 (1) 複数個の部分積を求めるための論理手段を提供
    するステップと、 (2) 前記論理手段によって前記複数個の部分積を求
    めるためのステップとを含み、前記複数個の部分積は前
    記複数個の第1の桁数と前記複数個の第2の桁数との対
    の組合せの各々についてのそれぞれの部分積を含み、前
    記それぞれの部分積は合成の重みを有し、前記合成の重
    みは前記それぞれの部分積に含まれる前記対の組合せの
    うちの前記第1の重みと前記第2の重みとによって確立
    され、さらに (3) 前記複数個の部分積のうちの選択された部分積
    を選択的に累算するためのアキュムレータ手段を提供す
    るステップと、 (4) 情報をストアするためのレジスタ手段を提供す
    るステップとを含み、前記レジスタ手段は前記累算値を
    ストアするための複数個のレジスタセル手段を含み、前
    記複数個のレジスタセル手段の各々は階層的重みを有
    し、さらに (5) 次の関係: Pm,n −[累算して]→rx ;x=(m+n)−1 に従って、前記複数個のレジスタセル手段のうちの特定
    のレジスタセル手段にストアするために、累算値を生成
    するために、前記アキュムレータ手段によって前記選択
    された部分積を累算するステップを含み、ここで「P
    m,n 」は前記選択された部分積を表し、「m」は前記第
    1の重みを表し、m=1,2,…であり、「n」は前記
    第2の重みを表し、n=1,2,…であり、「rx 」は
    重み「x」を有する前記特定されたレジスタセル手段を
    表し、さらに (6) 前記複数個のレジスタセル手段のうちの下位の
    レジスタセル手段にストアされた前記累算値の特定の桁
    数を、累算値を含む前記複数個のレジスタセル手段のう
    ちの次に上位のレジスタセル手段にシフトし、かつ前記
    特定の桁数を、前記次に上位のレジスタセル手段に下位
    桁としてストアされた前記累算値に加算することを含
    む、シフト累算演算を行なうステップを含み、前記特定
    の桁数は、前記累算値の最下位桁よりも上位の前記下位
    レジスタセル手段にストアされた前記累算値の桁数であ
    り、前記シフト累算演算は、前記レジスタ手段内で最下
    位レジスタセル手段から最上位レジスタセル手段まで前
    記複数個のレジスタセル手段のうちの重みの隣接したレ
    ジスタセル手段の間で順次連続して行なわれ、さらに (7) 前記複数個のレジスタセル手段の内容を前記複
    数個のレジスタセル手段からシフトするステップを含
    む、方法。
  2. 【請求項2】 第1の数と第2の数との積を求めるため
    の方法であって、前記第1の数は第1の下位桁から第1
    の上位桁へ階層的に配列された複数個の桁数を有し、前
    記第2の数は第2の下位桁から第2の上位桁へ階層的に
    配列された複数個の第2の桁数を有し、 (1) 複数個の部分積を求めるステップを含み、前記
    複数個の部分積を求めている間、前記第1の数および前
    記第2の数のうちの短い方の数のブランクの桁を0とし
    て扱い、前記複数個の部分積は、前記複数個の第1の桁
    数と前記複数個の第2の桁数との対の組合せの各々につ
    いてのそれぞれの部分積を含み、前記それぞれの部分積
    は合成の重みを有し、前記合成の重みは、前記それぞれ
    の部分積に含まれる前記対の組合せのうちの前記第1の
    重みと前記第2の重みとにより確立され、さらに (2) 前記複数個の部分積のうちの選択された部分積
    を選択的に累算するためのアキュムレータ手段を提供す
    るステップと、 (3) 情報をストアするためのレジスタ手段を提供す
    るステップとを含み、前記レジスタ手段は、前記累算値
    をストアするための複数個のレジスタセル手段を含み、
    前記複数個のレジスタセル手段の各々は階層的重みを有
    し、さらに (4) 次の関係: Pm,n −[累算して]→rx ; x=(m+n)−1 に従って、前記複数個のレジスタセル手段のうちの特定
    のレジスタセル手段にストアするために累算値を生成す
    るように、前記アキュムレータ手段によって前記選択さ
    れた部分積を累算するステップを含み、ここで
    「Pm,n 」は前記選択された部分積を表し、「m」は前
    記第1の重みを表し、m=1,2,…であり、「n」は
    前記第2の重みを表し、n=1,2,…であり、
    「rx 」は重み「x」を有する前記特定されたレジスタ
    セル手段を表し、さらに (5) 前記複数個のレジスタセル手段のうちの下位レ
    ジスタセル手段にストアされた前記累算値の特定の桁数
    を、累算値を含む前記複数個のレジスタセル手段のうち
    の次に上記のレジスタセル手段にシフトし、かつ前記特
    定の桁数を、前記次に上位のレジスタセル手段に下位桁
    としてストアされた前記累算値に加算することを含む、
    シフト累算演算を行なうステップを含み、前記特定の桁
    数は、前記累算値の最下位桁よりも上位の前記下位レジ
    スタセル手段にストアされた前記累算値の桁数であり、
    前記シフト累算演算は、前記レジスタ手段内で最下位レ
    ジスタセル手段から最上位レジスタセル手段まで、前記
    複数個のレジスタセル手段のうちの重みの隣接するレジ
    スタセル手段の間で連続して行なわれ、さらに (6) 前記複数個のレジスタセル手段の内容を、前記
    複数個のレジスタセル手段からシフトするステップとを
    含む、方法。
  3. 【請求項3】 第1の数と第2の数との積を求めるため
    の手段であって、前記第1の数は第1の下位桁から第1
    の上位桁へ階層的に配列された複数個の桁数を有し、前
    記第2の数は第2の下位桁から第2の上位桁へ階層的に
    配列された複数個の第2の桁数を有し、 (1) 複数個の部分積を求めるための論理手段を提供
    するステップと、 (2) 前記論理手段によって前記複数個の部分積を求
    めるステップとを含み、前記複数個の部分積は前記複数
    個の第1の桁数と前記複数個の第2の桁数との対の組合
    せの各々についてのそれぞれの部分積を含み、前記それ
    ぞれの部分積は合成の重みを有し、前記合成の重みは、
    前記それぞれの部分積に含まれる前記対の組合せのうち
    の前記第1の重みと前記第2の重みとによって確立さ
    れ、さらに (3) 情報をストアするためのレジスタ手段を提供す
    るステップを含み、前記レジスタ手段は累算値をストア
    するための複数個のレジスタセル手段を含み、前記複数
    個のレジスタセル手段の各々は階層的重みを有し、さら
    に (4) 次の関係: Pm,n −[累算して]→rx ; x=(m+n)−1 に従って、前記複数個のレジスタセル手段のうちの特定
    されたレジスタセル手段中で累算値を生成するために、
    前記複数個の部分積のうちの選択された部分積を累算す
    るステップを含み、ここで「Pm,n 」は前記選択された
    部分積を表し、「m」は前記第1の重みを表し、m=
    1,2,…であり、「n」は前記第2の重みを表し、n
    =1,2,…であり、「rx 」は重み「x」を有する前
    記特定されたレジスタセル手段を表し、さらに (5) 前記複数個のレジスタセル手段のうちの下位レ
    ジスタセル手段にストアされた前記累算値の特定の桁数
    を、累算値を含む前記複数個のレジスタセル手段のうち
    の次に上位のレジスタセル手段にシフトし、かつ前記特
    定の桁数を、前記次に上位のレジスタセル手段に下位桁
    としてストアされた前記累算値に加算することを含む、
    シフト累算演算を行なうステップを含み、前記特定の桁
    数は前記累算値の最下位桁よりも上位の前記下位レジス
    タセル手段にストアされた、前記累算値の桁数であり、
    前記シフト累算演算は、前記レジスタ手段内で最下位レ
    ジスタセル手段から最上位レジスタセル手段まで前記複
    数個のレジスタセル手段のうちの重みの隣接するレジス
    タセル手段の間で順次連続して行なわれ、さらに (6) 前記複数個のレジスタセル手段の内容を前記複
    数個のレジスタセル手段からシフトするステップとを含
    む、方法。
  4. 【請求項4】 第1の数と第2の数との積を求めるため
    の方法であって、前記第1の数は第1の下位桁から第1
    の上位桁へ階層的に配列された複数個の桁数を有し、前
    記第2の数は第2の下位桁から第2の上位桁へ階層的に
    配列された複数個の第2の桁数を有し、 (1) 複数個の部分積を求めるステップを含み、前記
    複数個の部分積を求めている間、前記第1の数と前記第
    2の数とのうちの短い方の数のブランクの桁を0として
    扱い、前記複数個の部分積は前記複数個の第1の桁数と
    前記複数個の第2の桁数との対の組合せの各々について
    それぞれの部分積を含み、前記それぞれの部分積は合成
    の重みを有し、前記合成の重みは、前記それぞれの部分
    積に含まれる前記対の組合せのうちの前記第1の重みと
    前記第2の重みとによって確立され、さらに (2) 情報をストアするためのレジスタ手段を提供す
    るステップを含み、前記レジスタ手段は累算値をストア
    するために複数個のレジスタセル手段を含み、前記複数
    個のレジスタセル手段の各々は階層的重みを有し、さら
    に (3) 次の関係: Pm,n −[累算して]→rx ; x=(m+n)−1 に従って、前記複数個のレジスタセル手段のうちの特定
    のレジスタセル手段中で累算値を生成するために、前記
    複数個の部分積のうちの選択された部分積を累算するス
    テップを含み、ここで「Pm,n 」は前記選択された部分
    積を表し、「m」は前記第1の重みを表し、m=1,
    2,…であり、「n」は前記第2の重みを表し、n=
    1,2,…であり、「rx 」は重み「x」を有する前記
    特定されたレジスタセル手段を表し、さらに (4) 前記複数個のレジスタセル手段のうちの下位レ
    ジスタセル手段にストアされた前記累算値の特定の桁数
    を、累算値を含む前記複数個のレジスタセル手段のうち
    の次に上位のレジスタセル手段にシフトし、かつ前記特
    定の桁数を、前記次に上位のレジスタセル手段中に下位
    桁としてストアされた前記累算値に加算することを含
    む、シフト累算演算を行なうステップを含み、前記特定
    の桁数は、前記累算値の最下位桁よりも上位の前記下位
    レジスタセル手段にストアされた、前記累算値の桁であ
    り、前記シフト累算演算は、前記レジスタ手段内で最下
    位レジスタセル手段から最上位レジスタセル手段まで、
    前記複数個のレジスタセル手段のうちの重みの隣接する
    レジスタセル手段の間で順次連続して行なわれ、さらに (5) 前記複数個のレジスタセル手段の内容を前記複
    数個のレジスタセル手段からシフトするステップを含
    む、方法。
  5. 【請求項5】 第1の数と第2の数との積を求めるため
    の方法であって、前記第1の数は第1の下位桁から第1
    の上位桁へ階層的に配列された複数個の桁数を有し、前
    記第2の数は第2の下位桁から第2の上位桁へ階層的に
    配列された複数個の第2の桁数を有し、 (1) 複数個の部分積を求めるステップを含み、前記
    複数個の部分積の前記決定の間、前記第1の数と前記第
    2の数とのうちの短い方の数のブランクの桁が値0を有
    すると考え、前記複数個の部分積は、前記複数個の第1
    の桁数と前記複数個の第2の桁数との対の組合せの各々
    についてそれぞれの部分積を含み、前記それぞれの部分
    積は合成の重みを有し、前記合成の重みは、前記それぞ
    れの部分積に含まれる前記対の組合せのうちの前記第1
    の重みと前記第2の重みとによって確立され、さらに (2) 前記複数個の部分積を記憶アレイにストアする
    ステップを含み、前記記憶アレイはマトリックスとして
    作動的にアドレス指定可能であり、前記マトリックスは
    複数個の列と複数個の行とを有し、前記複数個の部分積
    は前記合成の重みに従って前記マトリックス内にストア
    され、前記第1の重みは、前記複数個の列と前記複数個
    の行のうちの1つに前記複数個の部分積をストアする第
    1のオーダを定め、前記第2の重みは、前記複数個の列
    と前記複数個の行とのうちの他のものに前記複数個の部
    分積をストアする第2のオーダを定め、さらに (3) 情報をストアするためのレジスタ手段を提供す
    るステップを含み、前記レジスタ手段は累算値をストア
    するための複数個のレジスタセル手段を含み、前記レジ
    スタ手段は前記記憶アレイと作動的に接続され、前記複
    数個のレジスタセル手段の各々は階層的重みを有し、さ
    らに (4) 次の関係: Pm,n −[累算して]→rx ; x=(m+n)−1 に従って、前記複数個のレジスタセル手段のうちの特定
    されたレジスタセル手段に、前記複数個の部分積のうち
    の選択された部分積を累算するステップを含み、ここで
    「Pm,n 」は前記選択された部分積を表し、「m」は前
    記第1のストアのオーダを表し、m=1,2,…であ
    り、「n」は前記第2のストアのオーダを表し、n=
    1,2,…であり、「rx 」は重み「x」を有する前記
    特定されたレジスタセル手段を表し、さらに (5) 前記複数個のレジスタセル手段のうちの下位レ
    ジスタセル手段にストアされた前記累算値の特定の桁数
    を、累算値を含む前記複数個のレジスタセル手段のうち
    の次に上位のレジスタセル手段にシフトし、かつ前記特
    定の桁数を、前記次に上位のレジスタセル手段に下位桁
    としてストアされた前記累算値に加算することを含む、
    シフト累算演算を行なうステップを含み、前記特定の桁
    数は、前記累算値の最下位桁よりも上位の前記下位レジ
    スタセル手段にストアされた前記累算値の桁数であり、
    前記シフト累算演算は、前記レジスタ手段内で最下位レ
    ジスタセル手段から最上位レジスタセル手段まで、前記
    レジスタ手段内の前記複数個のレジスタセル手段のうち
    の重みの隣接するレジスタセル手段の間で順次連続して
    行われ、さらに (6) 前記複数個のレジスタセル手段の内容を前記複
    数個のレジスタセル手段からシフトするステップを含
    む、方法。
  6. 【請求項6】 第1の数と第2の数との積を求めるため
    の方法であって、前記第1の数は第1の下位桁から第1
    の上位桁へ階層的に配列された複数個の桁数を有し、前
    記第2の数は第2の下位桁から第2の上位桁へ階層的に
    配列された複数個の第2の桁数を有し、 (1) 複数個の部分積を求めるための論理手段を提供
    するステップと (2) 前記論理手段によって前記複数個の部分積を求
    めるステップとを含み、前記複数個の部分積は、前記複
    数個の第1の桁数と前記複数個の第2の桁数との対の組
    合せの各々についてそれぞれの部分積を含み、前記それ
    ぞれの部分積は合成の重みを有し、前記合成の重みは、
    前記それぞれの部分積に含まれる前記対の組合せのうち
    の前記第1の重みと前記第2の重みとによって確立さ
    れ、さらに (3) 前記複数個の部分積を記憶アレイにストアする
    ステップを含み、前記記憶アレイはマトリックスとして
    作動的にアドレス指定可能であり、前記マトリックスは
    複数個の列と複数個の行とを有し、前記複数個の部分積
    は前記合成の重みに従って前記マトリックス内にストア
    され、前記第1の重みは、前記複数個の列と前記複数個
    の行とのうちの1つに前記複数個の部分積をストアする
    第1のオーダを定め、前記第2の重みは、前記複数個の
    列と前記複数個の行とのうちの別のものに前記複数個の
    部分積をストアする第2のオーダを定め、さらに (4) 情報をストアするためのレジスタ手段を提供す
    るステップを含み、前記レジスタ手段は、累算値をスト
    アするための複数個のレジスタセル手段を含み、前記レ
    ジスタ手段は前記記憶アレイに作動的に接続され、前記
    複数個のレジスタセル手段の各々は階層的重みを有し、
    さらに (5) 次の関係: Pm,n −[累算して]→rx ; x=(m+n)−1 に従って、前記複数個のレジスタセル手段のうちの特定
    されたレジスタセル手段に前記複数個の部分積のうちの
    選択された部分積を累算するステップを含み、ここで
    「Pm,n 」は前記選択された部分積を表し、「m」は前
    記第1のストアのオーダを表し、m=1,2,…であ
    り、「n」は前記第2のストアのオーダを表し、n=
    1,2,…であり、「rx 」は重み「x」を有する前記
    特定されたレジスタセル手段を表し、さらに (6) 前記複数個のレジスタセル手段のうちの下位レ
    ジスタセル手段にストアされた前記累算値の特定の桁数
    を、累算値を含む前記複数個のレジスタセル手段のうち
    の次に上位のレジスタセル手段にシフトし、かつ前記特
    定の桁数を前記次に上位のレジスタセル手段に下位桁と
    してストアされた前記累算値に加算することを含む、シ
    フト累算演算を行なうステップを含み、前記特定の桁数
    は、前記累算値の最下位桁よりも上位の前記下位レジス
    タセル手段にストアされた前記累算値の桁数であり、前
    記シフト累算演算は、前記レジスタ手段内で最下位レジ
    スタセル手段から最上位レジスタセル手段まで、前記レ
    ジスタ手段内の前記複数個のレジスタセル手段のうちの
    重みの隣接するレジスタセル手段の間で順次連続して行
    なわれ、さらに (7) 前記複数個のレジスタセル手段の内容を前記複
    数個のレジスタセル手段からシフトするステップとを含
    む、方法。
  7. 【請求項7】 第1の数と第2の数との積を求めるため
    の方法であって、前記第1の数は下位桁から上位桁へ階
    層的に配列された複数個の第1の桁数を有し、前記第2
    の数は下位桁から上位桁へ階層的に配列された複数個の
    第2の桁数を有し、 (1) 前記第1の数と前記第2の数とが同数の桁を占
    有するように、前記第1の数と前記第2の数とのうちの
    短い方の数の上位桁を適切に0で満たすステップと、 (2) 前記第1の数を少なくとも1つの第1のセグメ
    ント対に区分するステップとを含み、前記少なくとも1
    つの第1のセグメント対のうちのそれぞれの第1のセグ
    メント対は式am,m で表すことが可能であり、ここで
    「a」は前記それぞれの第1のセグメント対のうちの上
    位の第1のセグメントを表し、「b」はそれぞれの前記
    第1のセグメント対のうちの下位の第1のセグメントを
    表し、「m」=1,2,3,…であり、これは前記第1
    の数内のそれぞれの第1のセグメント対の重みを表し、
    さらに前記第2の数を少なくとも1つの第2のセグメン
    ト対に区分するステップを含み、前記少なくとも1つの
    第2のセグメント対のうちのそれぞれの第2のセグメン
    ト対は式cn,n で表すことが可能であり、ここで
    「c」は前記それぞれの第2のセグメント対のうちの上
    位の第2のセグメントを表し、「d」は前記それぞれの
    第2のセグメント対のうちの下位の第2のセグメントを
    表し、「n」=1,2,3,…であり、これは前記第2
    の数内のそれぞれの第2のセグメント対の重みを表し、
    前記第1のセグメントと前記第2のセグメントとの全て
    は同数の桁を含み、さらに (3) 前記少なくとも1つの第1のセグメント対の各
    々についての第1の加算圧縮を求めるステップを含み、
    前記第1の加算圧縮は式(am +bm )で表すことが可
    能であり、さらに前記少なくとも1つの第2のセグメン
    ト対の各々についての第2の加算圧縮を定めるステップ
    を含み、前記第2の加算圧縮の各々は式(cn +dn
    で表すことが可能であり、さらに (4) 前記少なくとも1つの第1のセグメント対の各
    々について第1の減算圧縮を求めるステップを含み、前
    記第1の減算圧縮の各々は式(am −bm )で表すこと
    が可能であり、さらに前記少なくとも1つの第2のセグ
    メント対についての第2の減算圧縮を定めるステップを
    含み、前記第2の減算圧縮の各々は式(cn −dn )に
    よって表すことが可能であり、さらに (5) 前記少なくとも1つの第1のセグメント対の各
    々のうちの下位のセグメントの各々と、前記少なくとも
    1つの第2のセグメント対の各々のうちの下位のセグメ
    ントの各々との積を含む、1組の1次部分積を求めるス
    テップを含み、1次部分積の前記組の各々は式P1m,n
    によって表されることが可能であり、ここでP1m,n
    m n であり、m,nは前記1次部分積の各々につい
    ての合成の重みを確立し、さらに (6) 前記第1の加算圧縮の各々と、前記第2の加算
    圧縮の各々との積を含む、1組の2次部分積を求めるス
    テップを含み、2次部分積の前記組の各々は式P2m,n
    によって表されることが可能であり、ここで P2m,n =(am +bm )(cn +dn ) であり、m,nは前記2次部分積の各々についての合成
    の重みを確立し、さらに (7) 前記第1の減算圧縮の各々と前記第2の減算圧
    縮の各々との積を含む、1組の3次部分積を求めるステ
    ップを含み、3次部分積の前記組の各々は式P3m,n
    よって表されることが可能であり、ここで P3m,n =(am −bm )(cn −dn ) であり、m,nは前記3次部分積の各々についての合成
    の重みを確立し、さらに (8) 1組の加算係数を求めるステップを含み、前記
    加算係数の各々は、前記複数個の2次部分積のうちの特
    定の2次部分積と、前記複数個の3次部分積のうちの特
    定の3次部分積との和を含み、前記特定の2次部分積と
    前記特定の3次部分積とは同一の合成の重みを有し、前
    記和を2で除算し、かつ前記1次部分積の組のうちの適
    切な1次部分積を減算し、前記適切な1次部分積は前記
    特定の2次部分積と同一の合成の重みを有し、前記複数
    個の加算係数の各々は式 【数1】 によって表されることが可能であり、ここで 【数2】 であり、さらに (9) 複数個の減算係数を求めるステップを含み、前
    記減算係数の各々は、前記複数個の2次部分積のうちの
    特定の2次部分積から前記複数個の3次部分積のうちの
    特定の3次部分積を引いた差を含み、前記特定の2次部
    分積と前記特定の3次部分積とは同一の合成の重みを有
    し、かつ前記差を2で減算し、前記複数個の減算係数の
    各々は式 【数3】 によって表されることが可能であり、ここで 【数4】 であり、さらに (10) 前記複数個の1次部分積を累算するステップ
    を含み、情報をストアするための記憶手段の複数個のレ
    ジスタセル中の前記複数個の減算係数と前記複数個の加
    算係数とは、前記複数個のレジスタセルの各々中で中間
    和を生じ、前記複数個のレジスタセルは第1のレジスタ
    セルから(4j−1)レジスタセルへ階層的に配列さ
    れ、ここでjは前記複数個の第1のセグメントのうちの
    第1のセグメント対の数であり、前記第1のレジスタセ
    ルは前記階層的配列中で下位であり、前記複数個のレジ
    スタセルの各々はrx によって表されることが可能であ
    り、ここでxはそれぞれのレジスタセルの重みを示し、
    それぞれのレジスタセル中の前記複数個の1次部分積の
    前記累算は式: P1m,n −[累算して]→r2(m+n)-3 に従って行なわれ、それぞれのレジスタセル中の前記複
    数個の減算係数の前記累算は、関係: 【数5】 に従って行なわれ、それぞれのレジスタセル中の前記複
    数個の加算係数の前記累算は、関係: 【数6】 に従って行なわれ、さらに (11) 前記記憶手段内で、最下位レジスタセルから
    始まって下位レジスタセルから次に上位のレジスタセル
    へシフト累算演算を行なうステップを含み、前記シフト
    累算演算は前記下位のレジスタセルの前記中間和の特定
    の桁数をシフトすることを含み、前記特定の桁数は、前
    記下位のレジスタセルから前記次に上位のレジスタセル
    まで、前記少なくとも1つの第1のセグメント対のうち
    の前記第1のセグメントの各々中の桁数に等しい、前記
    下位のレジスタセルの前記中間和の下位の桁数よりもす
    べて上位の桁数であり、かつ前記シフト累算演算は前記
    下位桁としてシフトされた上位の桁数を前記次に上位の
    レジスタセル中の前記中間和と加算することを含み、さ
    らに (12) 前記次に上位のレジスタセルが前記(4j−
    1)セルとなるまで(11)のステップを反復するステ
    ップと、 (13) 前記複数個のレジスタセルの内容を前記複数
    個のレジスタセルからシフトするステップとを含む、方
    法。
  8. 【請求項8】 第1の数と第2の数との積を求めるため
    の装置であって、前記第1の数は下位の第1の桁から上
    位の第1の桁へ階層的に配列された複数個の第1の桁数
    を有し、前記第2の数は下位の第2の桁から上位の第2
    の桁へ階層的に配列された複数個の第2の桁数を有し、
    前記第1の数は複数個の第1のセグメントに区分され、
    前記複数個の第1のセグメントの各々は前記複数個の第
    1の桁数のうちの少なくとも1つを含み、かつ第1の階
    層的領域にまたがり、前記複数個の第1のセグメントは
    前記複数個の第1のセグメントのうちの階層的に隣接し
    たもののうちの少なくとも第1のセグメント対中に配列
    され、前記少なくとも1つの第1のセグメント対の各々
    は第1の対の重みを有し、前記第2の数は複数個の第2
    のセグメントに区分され、前記複数個の第2のセグメン
    トの各々は前記複数個の第2の桁数のうちの少なくとも
    1つを含み、かつ第2の階層的領域にまたがり、それぞ
    れの第1の階層的領域にまたがる前記複数個の第1のセ
    グメントの各々について、前記それぞれの第1の階層的
    領域に等しい第2の階層的領域にまたがる前記第2のセ
    グメントのうちの対応する1つが存在し、前記複数個の
    第2のセグメントは、前記複数個の第2のセグメントの
    うちの階層的に隣接したもののうちの少なくとも1つの
    第2のセグメント対に配列され、それぞれの第1の対の
    重みを有する前記少なくとも1つの第1のセグメント対
    の各々について、前記それぞれの第1の対の重みに等し
    い第2の対の重みを有する前記少なくとも1つの第2の
    セグメント対のうちの対応する1つが存在し、この装置
    は、 少なくとも1つの出力を発生するために、数学的に少な
    くとも1つの入力を処理するための複数個の論理手段を
    含み、前記少なくとも1つの出力は予め定められたアル
    ゴリズムに従って、前記少なくとも1つの入力のうちの
    選択されたものに数学的に関連し、さらに累算値を発生
    するために、値を受けかつ前記値を累算するためのアキ
    ュムレータ手段と、 情報をストアするためのレジスタ手段とを含み、前記レ
    ジスタ手段は複数個のレジスタセルを含み、前記複数個
    のレジスタセルは重みによって階層的に配列され、前記
    複数個のレジスタセルの各々は「rx 」によって表され
    ることができ、ここで「x」はそれぞれのレジスタセル
    の重みを示し、前記レジスタ手段はシフト信号に応答し
    て選択的に前記情報を内部的にシフトし、さらに前記少
    なくとも1つの第1のセグメント対を受け、かつ前記少
    なくとも1つの第1のセグメント対の各々について第1
    の加算圧縮を発生する、前記複数個の論理手段の第1の
    アレイを含み、前記第1の加算圧縮の各々は式「(am
    +bm )」で表されることが可能であり、さらに前記少
    なくとも1つの第2のセグメント対を受け、かつ前記少
    なくとも1つの第2のセグメント対の各々について第2
    の加算圧縮を発生する、前記複数個の論理手段の第2の
    アレイを含み、前記第2の加算圧縮の各々は式「(cn
    +dn )」で表されることが可能であり、さらに前記少
    なくとも1つの第1のセグメント対の各々のうちの第1
    の下位のセグメントと、前記少なくとも1つの第2のセ
    グメント対の各々のうちの第2の下位のセグメントとを
    受け、かつ1組の1次部分積を発生する、前記複数個の
    論理手段の第3のアレイを含み、前記1次部分積の組は
    前記第1の下位のセグメントの各々と前記第2の下位の
    セグメントの各々との積を含み、前記1次部分積の組の
    各々は式「P1m,n 」によって表されることが可能であ
    り、ここでP1m,n =bmn であり、かつm,nは前
    記1次部分積の各々について合成の重みを確立し、さら
    に前記第1の加算圧縮の各々と前記第2の加算圧縮の各
    々とを受け、かつ前記第1の加算圧縮の各々と前記第2
    の加算圧縮の各々との積を含む1組の2次部分積を発生
    する、前記複数個の論理手段の第4のアレイを含み、前
    記2次部分積の組の各々は式「P2m,n 」で表されるこ
    とが可能であり、ここで P2m,n =(am +bm )(cn +dn ) であり、かつm,nは前記2次部分積の組の各々につい
    て合成の重みを確立し、さらに前記第1の減算圧縮の各
    々と前記第2の減算圧縮の各々とを受け、かつ前記第1
    の減算圧縮の各々と前記第2の減算圧縮の各々との積を
    含む1組の3次部分積を発生する、前記複数個の論理手
    段の第5のアレイを含み、前記3次部分積の組の各々は
    式「P3m,n 」によって表されることが可能であり、こ
    こで、P3m,n=(am −bm )(cn −dn )であ
    り、かつm,nは前記3次部分積の組の各々について合
    成の重みを確立し、さらに前記1次部分積の組と、前記
    2次部分積の組と、前記3次部分積の組とを受けて、特
    定の合成の重みを有する2次部分積の各々と、前記特定
    の合成の重みを有する対応する3次部分積との和を含
    み、前記和を2で除算し、かつ同一の特定の合成の重み
    を有する対応する1次部分積を減算する、1組の加算係
    数を発生する、前記複数個の論理手段の第6のアレイを
    含み、前記加算係数の組は式 【数7】 で表されることが可能であり、ここで 【数8】 であり、さらに前記2次部分積の組と前記3次部分積の
    組とを受けて、特定の合成の重みを有する2次部分積の
    各々から同一の特定の合成の重みを有する対応する3次
    部分積を引いた差を含み、かつ前記差を2で除算する1
    組の減算係数を発生する、前記複数個の論理手段の第7
    のアレイを含み、前記減算係数の組の各々は 【数9】 によって表されることが可能であり、ここで 【数10】 であり、さらに前記アキュムレータ手段は前記累算のた
    めに、前記1次部分積の組と、前記加算係数の組と、前
    記減算係数の組とを受け、前記アキュムレータ手段は前
    記複数個のレジスタセルに記憶するために前記累算値を
    発生し、累算された1次部分積は関係: P1m,n −[ストアされて]→r2(m+n)-3 に従ってストアされ、累算された減算係数は関係: 【数11】 に従ってストアされ、累算された加算係数は関係: 【数12】 に従ってストアされ、ここでm=1,2,3,…であ
    り、n=1,2,3,…であり、 前記レジスタ手段は前記シフト信号に応答して、最下位
    のそれぞれのレジスタセルから始まって、下位のそれぞ
    れのレジスタセルから次に上位のレジスタセルへシフト
    累算演算を行ない、前記累算シフト演算は、前記下位の
    それぞれのレジスタセル中の累算値の特定の桁数をシフ
    トすることを含み、前記特定の桁数は、前記下位レジス
    タセルから前記次に上位のレジスタセルまで前記少なく
    とも1つのセグメント対のうちの前記第1のセグメント
    の各々の桁数に等しい、前記累算値の下位桁の数よりも
    上位の桁数であり、かつ前記シフト累算演算は前記シフ
    トされた桁数を下位桁として前記次に上位のレジスタセ
    ル中の前記累算値と加算する、装置。
  9. 【請求項9】 第1の数と第2の数との積を求めるため
    の装置であって、 前記第1の数と前記第2の数とのセグメントを数学的に
    処理し、かつ複数個の出力係数を発生するための論理手
    段と、 累算値を与えるために前記出力係数を累算するためのア
    キュムレータ手段と、 前記累算値をストアするためのレジスタ手段とを含み、 前記第1の数は少なくとも1つの第1のセグメント対に
    区分され、前記少なくとも1つの第1のセグメント対の
    うちのそれぞれの第1のセグメント対は、第1の桁数を
    含む下位の第1のセグメントと、第2の桁数を含む上位
    の第1のセグメントとを含み、前記少なくとも1つの第
    1のセグメント対は重み領域にまたがり、 前記第2の数は少なくとも1つの第2のセグメント対に
    区分され、それぞれの第2のセグメント対は、前記第1
    の桁数を含む下位の第2のセグメントと、前記第2の桁
    数を含む隣接する上位の第2のセグメントとを含み、前
    記少なくとも1つの第2のセグメント対は前記重み領域
    にまたがり、 前記それぞれの第1のセグメント対は式「am,m 」に
    よって表されることが可能であり、前記それぞれの第2
    のセグメント対は式「cn,n 」によって表されること
    が可能であり、ここで「a」は前記上位の第1のセグメ
    ントを表し、「b」は前記下位の第1のセグメントを表
    し、「m」=1,2,3,…であり、かつ前記第1の数
    内の前記それぞれの第1のセグメント対の重みを示し、
    かつ「c」は前記上位の第2のセグメントを表し、
    「d」は前記下位の第2のセグメントを表し、「n」=
    1,2,3,…であり、かつ前記第2の数内の前記それ
    ぞれの第2のセグメント対の重みを示し、 前記論理手段は、合成の重みm,nの各々について前記
    複数個の出力係数を計算するように構成され、 前記複数個の出力係数は、部分積「Pm,n 」を含み、こ
    こでPm,n =bm nであり、かつ加算係数 【数13】 を含み、ここで 【数14】 であり、かつ減算係数 【数15】 を含み、ここで 【数16】 であり、 前記アキュムレータ手段は、前記レジスタ手段内でレジ
    スタセルrx 中に前記累算値として記憶するために、前
    記出力係数を累算し、ここで「x」は次の関係: 【数17】 に従ってそれぞれのレジスタセル「r」の重みを示し、 前記累算値は前記レジスタ手段のうちの適切なレジスタ
    セルrx 中で受けられ、前記レジスタ手段は前記累算値
    を使用してシフト累算演算を行ない、前記シフト累算演
    算は、下位のレジスタセル中にストアされた前記累算値
    の特定の桁数を上位のレジスタセルにシフトし、かつ前
    記特定の桁数を前記上位のレジスタセル中に下位桁とし
    てストアされた前記累算値に加算することを含み、前記
    特定の桁数は、前記第1の桁の数に等しい下位桁の数よ
    りも上位の、前記下位のセル中の前記累算値の桁数であ
    り、前記シフト累算演算は、前記下位レジスタセルから
    前記上位レジスタセルまで前記レジスタ手段内の重みの
    隣接するレジスタセルの間で順次連続して行なわれる、
    装置。
  10. 【請求項10】 第1の数と第2の数との積を求めるた
    めの装置であって、前記第1の数は第1の下位桁から第
    1の上位桁へ階層的に配列された複数個の桁数を有し、
    前記第2の数は第2の下位桁から第2の上位桁へ階層的
    に配列された複数個の第2の桁数を有し、 複数個の部分積を求めるための論理手段を含み、前記複
    数個の部分積を求めている間、前記論理手段は前記第1
    の数と前記第2の数とのうちの短い方の数のブランクの
    桁を0として取扱い、前記複数個の部分積は、前記複数
    個の第1の桁数と前記複数個の第2の桁数との対の組合
    せの各々についてのそれぞれの部分積を含み、前記それ
    ぞれの部分積の各々は合成の重みを有し、前記合成の重
    みは、前記それぞれの部分積に含まれる前記対の組合せ
    の前記第1の重みと前記第2の重みとによって確立さ
    れ、さらに情報をストアするためのレジスタ手段を含
    み、前記レジスタ手段は累算値をストアするための複数
    個のレジスタセル手段を含み、前記レジスタセル手段は
    階層的重みを有し、さらに次の関係: Pm,n −[累算して]→rx ;x=(m+n)−1 に従って、前記複数個のレジスタセル手段のうちの特定
    されたレジスタセル手段中で累算値を生成するために、
    前記複数個の部分積のうちの選択された部分積を累算す
    るための累算手段を含み、ここで「Pm,n 」は前記選択
    された部分積を表し、「m」は前記第1の重みを表し、
    m=1,2,…であり、「n」は前記第2の重みを表
    し、n=1,2,…であり、「rx 」は重み「x」を有
    する前記特定されたレジスタセル手段を表し、 前記レジスタ手段は、前記複数個のレジスタセル手段の
    うちの下位のレジスタセル手段中にストアされた前記累
    算値の特定の桁数を、累算値を含む前記複数個のレジス
    タセル手段のうちの次に上位のレジスタセル手段にシフ
    トし、かつ前記特定の桁数を前記次に上位のレジスタセ
    ル手段中で下位桁としてストアされた前記累算値に加算
    することを含む、シフト累算演算を行ない、前記特定の
    桁数は、前記累算値の最下位桁よりも上位の前記下位の
    レジスタセル手段中にストアされた前記累算値の桁数で
    あり、前記シフト累算演算は、前記レジスタ手段内で最
    下位レジスタセル手段から最上位レジスタセル手段まで
    前記複数個のレジスタセル手段のうちの重みの隣接する
    レジスタセル手段の間で順次連続して行なわれ、 前記複数個のレジスタセル手段の内容は、前記シフト累
    算演算が完了した後、前記積を含む、装置。
  11. 【請求項11】 第1の数と第2の数との積を求めるた
    めの装置であって、前記第1の数は第1の下位桁から第
    1の上位桁へ階層的に配列された複数個の桁数を有し、
    前記第2の数は第2の下位桁から第2の上位桁へ階層的
    に配列された複数個の第2の桁数を有し、 複数個の部分積を求めるための論理手段を含み、前記複
    数個の部分積は、前記複数個の第1の桁と前記複数個の
    第2の桁との対の組合せの各々についてそれぞれの部分
    積を含み、前記それぞれの部分積の各々は合成の重みを
    有し、前記合成の重みは、前記それぞれの部分積に含ま
    れる前記対の組合せのうちの前記第1の重みと前記第2
    の重みとによって確立され、さらに情報をストアするた
    めのレジスタ手段を含み、前記レジスタ手段は、累算値
    をストアするための複数個のレジスタセル手段を含み、
    前記レジスタセル手段は階層的重みを有し、 前記レジスタ手段は、次の関係: Pm,n −[累算して]→rx ;x=(m+n)−1 に従って、前記複数個のレジスタセル手段のうちの特定
    されたレジスタセル手段中で累算値を生成するために、
    前記複数個の部分積のうちの選択された部分積を累算
    し、ここで「Pm,n 」は前記選択された部分積を表し、
    「m」は前記第1の重みを表し、m=1,2,…であ
    り、「n」は前記第2の重みを表し、n=1,2,…で
    あり、「rx 」は重み「x」を有する前記特定されたレ
    ジスタセル手段を表し、 前記レジスタ手段は、前記複数個のレジスタセル手段の
    うちの下位のレジスタセル手段中にストアされた前記累
    算値の特定の桁数を、累算値を含む前記複数個のレジス
    タセル手段のうちの次に上位のレジスタセル手段にシフ
    トし、かつ前記特定の桁数を前記次に上位のレジスタセ
    ル手段中に下位桁としてストアされた前記累算値に加算
    することを含む、シフト累算演算を行ない、前記特定の
    桁数は、前記累算値の最下位桁よりも上位の前記下位レ
    ジスタセル手段中にストアされた前記累算値の桁数であ
    り、前記シフト累算演算は、前記積を求めるために、前
    記レジスタ手段内で最下位レジスタセル手段から最上位
    レジスタセル手段まで前記複数個のレジスタセル手段の
    うちの重みの隣接するレジスタセル手段の間で順次連続
    して行なわれる、装置。
  12. 【請求項12】 第1の数と第2の数との積を求めるた
    めの装置であって、前記第1の数は第1の下位桁から第
    1の上位桁へ階層的に配列された複数個の桁数を有し、
    前記第2の数は第2の下位桁から第2の上位桁へ階層的
    に配列された複数個の第2の桁数を有し、 複数個の部分積を求めるための論理手段を含み、前記論
    理手段は、前記複数個の部分積を求めている間、前記第
    1の数と前記第2の数とのうちの短い方の数のブランク
    の桁が0の値を有するとみなし、前記複数個の部分積
    は、前記複数個の第1の桁数と前記複数個の第2の桁数
    との対の組合せの各々についてそれぞれの部分積を含
    み、前記それぞれの部分積は合成の重みを有し、前記合
    成の重みは、前記それぞれの部分積に含まれる前記対の
    組合せのうちの前記第1の重みと前記第2の重みとによ
    って確立され、さらに前記複数個の部分積をストアする
    ための記憶アレイ手段を含み、前記記憶アレイ手段はマ
    トリックスとして作動的にアドレス指定可能であり、前
    記マトリックスは複数個の列と複数個の行とを有し、前
    記複数個の部分積は前記合成の重みに従って前記マトリ
    ックス内でストアされ、前記第1の重みは、前記複数個
    の列と前記複数個の行とのうちの1つに前記複数個の部
    分積をストアする第1のオーダを定め、前記第2の重み
    は、前記複数個の列と前記複数個の行とのうちの別のも
    のに前記複数個の部分積をストアする第2のオーダを定
    め、さらに情報をストアするためのレジスタ手段を含
    み、前記レジスタ手段は累算値をストアするの複数個の
    レジスタセル手段を含み、前記レジスタ手段は前記記憶
    アレイ手段と作動的に接続され、前記レジスタセル手段
    は階層的重みを有し、 前記レジスタ手段は、次の関係: Pm,n −[累算して]→rx ;x=(m+n)−1 に従って、前記複数個のレジスタセル手段のうちの特定
    されたレジスタセル手段中に、前記複数個の部分積のう
    ちの選択された部分積を累算し、ここで「Pm,n」は前
    記選択された部分積を表し、「m」は前記ストアの第1
    のオーダを表し、m=1,2,…であり、「n」は前記
    ストアの第2のオーダを表し、n=1,2,…であり、
    「rx 」は重み「x」を有する前記特定されたレジスタ
    セル手段を表し、 前記レジスタセル手段は、前記複数個のレジスタセル手
    段のうちの下位のレジスタセル手段中にストアされた前
    記累算値の特定の桁数を、累算値を含む前記複数個のレ
    ジスタセル手段のうちの次に上位のレジスタセル手段に
    シフトし、かつ前記特定の桁数を、前記次に上位のレジ
    スタセル手段中に下位桁としてストアされた前記累算値
    に加算することを含む、シフト累算演算を行い、前記特
    定の桁数は前記累算値の最下位桁よりも上位の前記下位
    レジスタセル手段中にストアされた前記累算値の桁数で
    あり、前記シフト累算演算は、前記レジスタ手段内で最
    下位レジスタセル手段から最上位レジスタセル手段ま
    で、前記レジスタ手段内の前記複数個のレジスタセル手
    段のうちの重みの隣接するレジスタセル手段の間で順次
    連続して行なわれる、装置。
  13. 【請求項13】 第1の数と第2の数との積を求めるた
    めの装置であって、前記第1の数は第1の下位桁から第
    1の上位桁へ階層的に配列された複数個の桁数を有し、
    前記第2の数は第2の下位桁から第2の上位桁へ階層的
    に配列された複数個の第2の桁数を有し、 複数個の部分積を求めるための手段を含み、前記複数個
    の部分積を求めている間、前記第1の数と前記第2の数
    とのうちの短い方の数のブランクの桁を0として取扱
    い、前記複数個の部分積は、前記複数個の第1の桁数と
    前記複数個の第2の桁数との対の組合せの各々について
    それぞれの部分積を含み、前記それぞれの部分積は合成
    の重みを有し、前記合成の重みは前記上位レジスタセル
    によって下位桁として確立され、前記特定の桁数は、前
    記累算値の最下位桁よりも上位の前記下位レジスタセル
    中にストアされた前記累算値の桁数であり、前記シフト
    累算演算は、前記レジスタ内で最下位レジスタセルから
    最上位レジスタセルまで、前記複数個のレジスタセルの
    うちの重みの隣接するレジスタセルの間で順次連続して
    行なわれ、さらに前記複数個のレジスタセルの内容を前
    記複数個のレジスタセルからシフトするための手段を含
    む、装置。
JP4310030A 1991-11-19 1992-11-19 第1の数と第2の数との積を求めるための方法およびその装置 Withdrawn JPH05224890A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US07/794,995 US5136537A (en) 1991-11-19 1991-11-19 Method and apparatus for determining the product of two numbers
US794995 1991-11-19

Publications (1)

Publication Number Publication Date
JPH05224890A true JPH05224890A (ja) 1993-09-03

Family

ID=25164331

Family Applications (1)

Application Number Title Priority Date Filing Date
JP4310030A Withdrawn JPH05224890A (ja) 1991-11-19 1992-11-19 第1の数と第2の数との積を求めるための方法およびその装置

Country Status (5)

Country Link
US (1) US5136537A (ja)
EP (1) EP0543494B1 (ja)
JP (1) JPH05224890A (ja)
AT (1) ATE174698T1 (ja)
DE (1) DE69227887T2 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5291430A (en) * 1991-11-19 1994-03-01 Advanced Micro Devices, Inc. Method and apparatus for multiplying a plurality of numbers
US5424970A (en) 1991-11-19 1995-06-13 Advanced Micro Devices, Inc. Method and apparatus for multiplying a plurality of N numbers
US7565391B2 (en) * 2004-12-17 2009-07-21 The Regents Of The University Of California Binary digit multiplications and applications
US20070270070A1 (en) * 2006-05-19 2007-11-22 Hamed Othman A Chemically Stiffened Fibers In Sheet Form

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5769451A (en) * 1980-10-17 1982-04-28 Toshiba Corp Lsi multiplication block
GB2108736B (en) * 1981-10-27 1984-12-12 Standard Telephones Cables Ltd Sum of products multiplier
JPS58101343A (ja) * 1981-12-11 1983-06-16 Fujitsu Ltd 乗算方式
JPS5935236A (ja) * 1982-08-24 1984-02-25 Toshiba Corp 可変語長乗算回路
JPS5958542A (ja) * 1982-09-28 1984-04-04 Toshiba Corp 乗算回路
JPH061438B2 (ja) * 1984-04-26 1994-01-05 日本電気株式会社 倍精度乗算器
US4809212A (en) * 1985-06-19 1989-02-28 Advanced Micro Devices, Inc. High throughput extended-precision multiplier
DE4006569A1 (de) * 1989-12-28 1991-09-12 Paul Merkle Multiplizierschaltung

Also Published As

Publication number Publication date
DE69227887T2 (de) 1999-08-12
EP0543494A3 (en) 1993-07-21
DE69227887D1 (de) 1999-01-28
ATE174698T1 (de) 1999-01-15
US5136537A (en) 1992-08-04
EP0543494B1 (en) 1998-12-16
EP0543494A2 (en) 1993-05-26

Similar Documents

Publication Publication Date Title
JPH01201764A (ja) 神経回路網およびその回路網に用いる回路
US4769779A (en) Systolic complex multiplier
US7308471B2 (en) Method and device for performing operations involving multiplication of selectively partitioned binary inputs using booth encoding
US4965762A (en) Mixed size radix recoded multiplier
JPS6375932A (ja) ディジタル乗算器
US20190303103A1 (en) Common factor mass multiplication circuitry
JP3388608B2 (ja) 乗算装置の選択された部分へ電力を与えるための装置および電源から乗算装置の選択された部分への電力伝達を制御するための装置
US6018758A (en) Squarer with diagonal row merged into folded partial product array
US5148381A (en) One-dimensional interpolation circuit and method based on modification of a parallel multiplier
US6598061B1 (en) System and method for performing modular multiplication
JPH03121530A (ja) 積の合計を計算する回路装置
US6434586B1 (en) Narrow Wallace multiplier
JPH05224890A (ja) 第1の数と第2の数との積を求めるための方法およびその装置
EP0109137B1 (en) Partial product accumulation in high performance multipliers
JPH06309150A (ja) 複数個の数の積を求めるための方法およびその装置
JP3227538B2 (ja) 2進整数乗算器
US5777915A (en) Multiplier apparatus and method for real or complex numbers
JPH08335166A (ja) N個の数の積を求めるための装置および方法
US5883825A (en) Reduction of partial product arrays using pre-propagate set-up
US5452242A (en) Method and apparatus for multiplying a plurality of numbers
CN113110822A (zh) 一种可配置矩阵乘法装置及算法
JPH07200539A (ja) 二次元dct演算装置
US5424970A (en) Method and apparatus for multiplying a plurality of N numbers
CN115238877A (zh) 提高存算阵列利用率的数据映射方法和数据映射装置
JP2818512B2 (ja) 乗算装置

Legal Events

Date Code Title Description
A300 Application deemed to be withdrawn because no request for examination was validly filed

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20000201