JP3244506B2 - 小型乗算器 - Google Patents

小型乗算器

Info

Publication number
JP3244506B2
JP3244506B2 JP51912793A JP51912793A JP3244506B2 JP 3244506 B2 JP3244506 B2 JP 3244506B2 JP 51912793 A JP51912793 A JP 51912793A JP 51912793 A JP51912793 A JP 51912793A JP 3244506 B2 JP3244506 B2 JP 3244506B2
Authority
JP
Japan
Prior art keywords
carry
sum
register
clock phase
multiplier
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP51912793A
Other languages
English (en)
Other versions
JPH07506444A (ja
Inventor
チアオーアー アリサ チュー
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.)
Seiko Epson Corp
Original Assignee
Seiko Epson Corp
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 Seiko Epson Corp filed Critical Seiko Epson Corp
Publication of JPH07506444A publication Critical patent/JPH07506444A/ja
Application granted granted Critical
Publication of JP3244506B2 publication Critical patent/JP3244506B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related 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
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61MDEVICES FOR INTRODUCING MEDIA INTO, OR ONTO, THE BODY; DEVICES FOR TRANSDUCING BODY MEDIA OR FOR TAKING MEDIA FROM THE BODY; DEVICES FOR PRODUCING OR ENDING SLEEP OR STUPOR
    • A61M2210/00Anatomical parts of the body
    • A61M2210/10Trunk
    • A61M2210/1042Alimentary tract
    • A61M2210/1075Gall bladder
    • 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/533Reduction of the number of iteration steps or stages, e.g. using the Booth algorithm, log-sum, odd-even
    • G06F7/5334Reduction 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/5336Reduction 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/5338Reduction 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

Description

【発明の詳細な説明】 発明の背景 1.発明の分野 本発明は一般的に集積回路、超大規模集積回路、極超
大規模集積回路の乗算器に関するものである。特に、本
発明は、チップ上で非常に小さな面積のみしか要しない
レイアウトアーキテクチャを用いた高速乗算技術に関す
るものである。
2.関連技術 ディジタルシステムは多くの乗算アルゴリズムを用い
る。第1A図は5x3=15という乗算の簡単な例を示してい
る。2進の被乗数は2進の乗数で乗算される。一連の、
シフトした部分積はゼロと1からなっている。それらシ
フトした部分積は加算され、積が得られる。ディジタル
システムでは、xビットの数がyビットの数で乗算され
れば、できる積はx+yビットの長さとなろう。
簡単な2進数の乗算においては、部分積は、乗数の最
下位ビットから始め、一時に乗数の1−ビットを加える
ことにより作られる。部分積を作る最も簡単な方法の一
つは、ビットバイビットの乗算器として、ANDゲートを
用いることである。この簡単な乗算技術を用いると、x
ビットの乗算器はx個の部分積を生成することになる。
従来の方式では、部分積の数を減らすため符号化技術
を用いている。部分積の数を減らすことにより、必要な
加算の数を減らすことができる。必要な加算の数を減ら
すことは、2進数の乗算において必要なクロックサイク
ルの数を減らすことになる。
従来の一つの方式は、ブース(Booth)のアルゴリズ
ムを符号化技術として採用しているが、これにより部分
積の数を半分に減らすことができる。ブースのアルゴリ
ズムは、時間のかかる動作である乗算動作の速度を速め
る。第1B図は、符号付き数の乗算に有効なブースコーデ
ィングを示している。ブースコーディングは、時にはブ
ースレコーディングデコーディングと呼ばれ、基本的に
は、積を生成するのに必要な部分積の量を減らすもので
ある。ブースのアルゴリズムとハードウエアでの実現方
法は、ディジタル計算機算術演算:設計と製作(Digita
l Computer Arithmetic:Design and Implementatio
n)、J.F.Cavanagh、3章、McGraw−Hill Book Company
(1984)(後に述べるWallace Treesを含む。)(ここ
に参考文献として含める。)に解説されている。
いったん部分積ができるとそれらを加算しなくてはな
らない。従来の加算器にはいくつかの型がある。従来の
2入力加算器のひとつはキャリ伝搬加算器(carry prop
agate adder;CPA)である。CPA加算器は和ベクトルをキ
ャリベクトルに加え、ひとつの最終的な積を出力する。
CPAは全加算器の一種である。全加算器とは2つのオペ
ランドのビットの和とキャリ−インビットを生成する回
路である。キャリ−インビットとはその前の低次のオー
ダーのビット位置のキャリ−アウトを表している。全加
算器は2つの出力を出力する:和ビット及びキャリ−ア
ウトビットである。
他の型の加算器はキャリ−セイブ加算器(cary save
adder,CSA)と呼ばれるものである。CSAは、単に多くの
独立した全加算器又は半加算器を集めたものである。全
加算器は、3つの入力を持ち、半加算器は2つの入力を
持つ。CSAは、高速度乗算に必要な多重加算を行うとき
に有用である。
CSAの多数性のため、すべての加算が完了するまでキ
ャリ伝搬を置いておくことができる。典型的には、CPA
は最後のクロックサイクルで用いられ、CSAで行われた
すべての加算に対するキャリ伝搬を完了する。
第2図はアレー乗算器201のブロックダイアグラムで
ある。第2図に示されているように、7つのCSAと1つ
のCPAを用いて、2つの8ビットの数を互いに掛け合わ
すことができる。第2図のハードウエアを用い、乗算を
パイプライン化し、全スループットを増加させることが
できる。しかしながら、第2図の設計を用いて、2つの
倍精度の数を掛け合わせるのに十分大きなアレーをひと
つのチップにはめ込み、他の算術演算にもスペースを取
ることは、典型的には可能ではない。
したがって、VLSI設計者はマルティパスアレー乗算器
や偶数/奇数乗算器(両者ともここには示していない)
のような他の型の乗算器を用いようとする。そのような
設計の例として、計算機アーキテクチャ定量的方法(Co
mputer Architecture A Quantitative Approach)、J.H
ennessy & D.Patterson、Morgan Kaufmann Publisher
s,Inc.、付録A(1990)(後に述べるWallace Treesを
含む。)(ここに参考文献として含める。)を参照のこ
と。これらのよく知られた設計は、VLSIで容易に製作可
能ではあるが、現在得られる設計の中で最高の速度を与
えるものではない。
乗算の速度を増加させる最も速い設計のひとつは、ワ
ラスツリー(Wallace tree)である。従来のワラスツリ
ー乗算器は第3図に示されている。図に示されているよ
うにワラスツリーはいくつかのCSAと1つのCPAとを組み
合わせたものである。この設計の考え方は、2つの加算
が並行に進むこと、あるいは他の言葉でいうと、データ
のほとんどのストリームが全加算器を通過し、多数のパ
イプライン化したステージを可能にするということであ
る。ワラスツリーは、最低でも、上述したアレー乗算器
の速度の2倍で動作する。
ワラスツリーは書面上ではすばらしく見える。それは
従来の他の乗算器に比べゲートの数が少なくてよい。し
かし、VLSIで製作するのが著しく難しいため、ワラスツ
リーはもはやVLSI設計者には使われない。それはVLSIに
必要な、簡単で規則正しい構造を持たないことが判明し
たためである。したがって、従来のVLSIワラスツリーは
チップ上で著しく大きな面積を必要とし;他の回路に対
しては以前より小さな面積しか取ることができない。第
3図を参照して、ステージ302、304、306および308は統
一性がない事に注目。ワラスツリーの各ステージは次の
ステージと異なっている。これが、ワラスツリーをシリ
コン上で製作するのが困難な1つの理由である。ワラス
ツリーは不規則な構造を持つため、その正しさをチェッ
クするのに大きな労力が必要である。その上、ワラスツ
リーが不規則な構造を持つため、レイアウトにおける誤
りを見つけるのは非常に困難である。これらの理由か
ら、VLSI設計者はほとんどの場合、ワラスツリー程速く
はないが、バイナリツリー乗算器(ここに示されていな
い)のような他の設計を選んできた。
手短に云うと、ワラスツリーは大きなチップ面積を必
要とし、その不規則な構造のため製作するのに大きな努
力を払わなくてはならない。それ故、求めるものは、ワ
ラスツリーと同等な速度を持つが、チップ上でより小さ
な面積及び製作上より少ない労力しか必要としない規則
的構造を持つデバイスである。
本発明の摘要 本発明は、極く小さなチップ面積しか要しないレイア
ウトアーキテクチャを用いた高速乗算技術を目的とす
る。本発明は、規則性を示す、高度に構造化したフロア
プランを採用している。本発明のフロアプランは従来の
ワラスツリーに比べて約33.3%ほど小型になっている。
独特なアーキテクチャ設計の他に、本発明は、その乗
算器のあるエレメントを再利用する独特の乗算方式を用
いている。例えば、最初の2つのCSA、ブースコーディ
ング回路及び部分積回路は引き続くクロックサイクルで
再利用される。第1クロックフェイズでは、部分積の第
1のグループがブースコード化される。第2クロックフ
ェイズでは、部分積の第1グループは最初の2つのCSA
に入力され、一方同時に部分積の第2のグループがブー
スコード化される。第1のクロックサイクルの第2フェ
イズでは、部分積の第1グループは第1CSA及び第2のCS
Aに入力される。第2のCSAからの結果は第1及び第2の
レジスタにラッチされる。また、第1クロックサイクル
の第2フェイズの間に、部分積の第2グループがブース
コード化される。
第2クロックサイクルの第1のフェイズでは部分積の
第2グループが第1CSA及び第2CSAに入力される。第2CSA
からの結果は第3及び第4のレジスタにラッチされる。
第2クロックサイクルの第2フェイズで、第1、第
2、第3及び第4のレジスタからの結果は第3CSA及び第
4CSAに入力される。第4CSAからの出力は第5及び第6レ
ジスタにラッチされる。
第3クロックサイクルの第1フェイズでは第5及び第
6レジスタに記憶された結果がCPAに入力される。そし
てそのCPAは乗算器としての最終的積を生成する。
本発明の特徴と利点 本発明のひとつの特徴は、従来のワラスツリーに比べ
てチップ面積が33%少ない乗算器を提供することであ
る。
本発明のもうひとつの特徴は構造的規則性である。
さらに、本発明のもうひとつの特徴は、レイアウト上
の誤りが容易に分かる、すなわち、従来のワラスツリー
のレイアウト上の誤りに比べて簡単に認識し修正を行う
ことができる設計を提供することである。
本発明のもうひとつの特徴は、従来のワラスツリーに
比べてキャリセイブ加算器の数が少ない乗算器を提供す
ることである。
さらに、本発明の他の特徴及び利点、並びに本発明の
種々の実施例の構造及び動作に関して、以下図面を参照
しながら詳しく説明する。
図面の簡単な説明 第1A図は乗算の簡単な例を示す。
第1B図は符号付き数の乗算のブース(Booth)アルゴ
リズムの例を示す。
第2図はアレー乗算器のブロックダイアグラムを示
す。
第3図は従来のワラスツリーを示す。
第4図は本発明による乗算器のアーキテクチャを表す
ブロックダイアグラムを示す。
第5図は本発明のタイミングダイアグラムを示す。
図において、同一の要素又は同様の機能を持つ要素は
同じ数で表す。さらに、番号の一番左の数字は、その番
号が最初に出てくる図面の番号を表す。
実施例の詳しい説明 1.0 概観 本発明は、チップ上で非常に小さい面積しか必要とし
ないレイアウトアーキテクチャを用いた高速乗算方式に
関するものである。本発明は2つの実施例を含む。第1
の実施例は、本発明のアーキテクチャ的インプリメンテ
ーションに関するもので、第2の実施例は、本発明のア
ーキテクチャ的インプリメンテーションを利用する方法
に関するものである。上述した実施例を以下のセクショ
ンで議論する。
2.0 アーキテクチャ 従来の乗算器、とくにワラスツリーに比べて本発明が
持つ重要な利点のひとつは、アーキテクチャにある。本
発明は、規則性があり、従来のワラスツリーに比べて約
33.3%小型になるフロアプランを採用する。本発明は、
その小さなサイズで速度に関し極く小さな犠牲を払うだ
けである(マシンサイクルの半分以下)。
第4図は、本発明による乗算器402のアーキテクチャ
を示すブロックダイアグラムである。乗算器402は、4
つのキャリセイブ加算器(CSA)CSA1−4、レジスタ1
−4及びキャリ伝搬加算器1(CPA1)を含む。
CSAは3つの入力及び2つの出力を有する。各CSAの2
つの出力は、第4図に示すように、和(S)部分及びキ
ャリ部分(C)からなる。CSAの構造及び動作はこの分
野の専門家にはよく知られている。
レジスタ1−4の各々は1つの入力と1つの出力を有
する。この例では、レジスタ1は、CSA2からの和入力41
0及びCSA3への出力413を持ち;レジスタ2は、CSA2から
のキャリ入力409及びCSA3への出力414を持ち;レジスタ
3は、CSA2からの和入力412及びCSA3への出力415を持
ち;レジスタ4は、CSA2からのキャリ入力411及びCSA4
への出力418を持つ。キャリ入力409及び411は異なった
時刻における異なった値を表している。同様に、和入力
410および和入力412は異なった時刻における異なった値
を表している。以下に詳しく述べるように、レジスタ1
及び2は部分積(A0−A3)に付随し、レジスタ3及び4
は部分積(A4+A7)に付随している。
CPA1は2つの入力422及び423を持つ。CPAの構造及び
動作はこの分野の専門家にはよく知られている。
CSA及びレジスタ両者からの入力及び出力はデータパ
ス(即ち、和及びキャリ)である。データパスはデータ
の信号ビットを運ぶバスのことである。データパスの幅
はどんなビット幅でもよい。この実施例ではそれは69ビ
ット幅である。
乗算器402は、ワラスツリーに比べてCSAが2つ少な
い。これは主にCSA1及びCSA2を再利用することで達成さ
れている。その結果、乗算器402は従来のワラスツリー
に比べて小型になり、規則性を示すことになる。乗算器
402の設計の規則性は以下の議論でより明確になるであ
ろう。
部分積A0−Axは、乗算器402への入力データを表す。
ここでxはブースコーディング後の部分積の番号の1つ
を表す。部分積については従来技術のセクションで述べ
ているが、部分積はこの分野の専門家にはよく知られて
いる。同様に、ブースコーディング、ハードウエア構造
及び動作(従来技術のセクションで述べている)もこの
分野の専門家にはよく知られている。
第4図の例では、8つの部分積A0−A7がある。部分積
A0−A7は、システムの仕様によるもので、何ビットの大
きさでもよい。本実施例では各部分積Axは66ビットの幅
を持つ。部分積は以下のごとくグループ化される:A0とA
4、A1とA5、A2とA6、A3とA7。各グループの最初の部分
積(A0−A3)は、各グループの第2番目の部分積(A4−
A7)と異なったクロック フェイズで乗算器402に入力
される。(すなわち、PHASE_1およびPHASE_2。)本実施
例では、部分積グループA0−A3はサイクル1の第1フェ
イズで乗算器402に入力され、部分積グループA4−A7は
サイクル1の第2フェイズで乗算器402に入力される。
しかし、部分積が乗算積402に入力するのに、これらと
同じフェイズやクロックサイクルに限る必要はない。
3.0タイミング 第5図は、本発明によるタイミングダイアグラム500
を示す。タイミングダイアグラム500は、データフロ
ー、マシンサイクル(1−3)及び2フェイズのクロッ
ク(CLK)を含む:CLK[0]およびCLK[1]。本発明に
は約2.5サイクルの待ち時間があるが、これは従来のワ
ラスツリーと同じか幾分長い。しかしこの実現法の結
果、構造に規則性ができ、従来のワラスツリーに比べて
チップ面積の著しい減少が得られる。第4図では第3図
より少ないハードウエアで同じ結果が得られることに注
意。とくに、CSA1及びCSA2が再利用されている。さら
に、第3図のセットアップと異なり、乗算器402には規
則性がある。
第4図、第5図を参照して乗算器402がどのように乗
算を行うかを以下に説明する。サイクル1の第1フェイ
ズでは部分積A0−A3はブースコード化され、乗算器402
に入力される。
サイクル1の第2フェイズでは部分積A0、A1及びA2が
CSA1への入力になる。CSA1からのキャリ405及び和406は
CSA2への入力になる。すべてのCSAは3つの入力が必要
なため、部分積A3がCSA2への第3の入力になる。CSA2か
らの結果即ち出力は次にレジスタ1及び2にラッチされ
る。キャリ409はレジスタ2にラッチされ、和410はレジ
スタ1にラッチされる。またサイクル2の後半部分では
部分積A4−A7のブースコードが生成される。
サイクル2の第1フェイズでは部分積A4、A5及びA6が
CSA1への入力になる。CSA1からの結果であるキャリ405
及び和406はCSA2への入力になる。部分積A7はCSA2への
第3の入力として働く。CSA2からの結果は次にレジスタ
3及び4にラッチされる。特に、キャリ411はレジスタ
4にラッチされ、和412はレジスタ3にラッチされる。
サイクル2の第2フェイズでは、レジスタ1、レジス
タ2及びレジスタ3にラッチされた結果が、それぞれ、
データパス413、414及び415を通してCSA3に出力され
る。CSA3からの出力、即ち和416およびキャリ417はCSA4
にたいする2つの入力として働く。レジスタ4にラッチ
された結果はCSA4に対する第3の入力418である。CSA4
からの結果は次にレジスタ5及び6にラッチされる。CS
A4からの和420及びキャリ421は、それぞれレジスタ5及
び6にラッチされる。
サイクル3の第1フェイズではレジスタ5にラッチさ
れたデータはデータパス422を通してCPA1に入力され
る。同様に、レジスタ6にラッチされたデータはデータ
パス423を通してCPA1のもうひとつの入力となる。CPA1
にデータが完全にロードされると、レジスタ5−6から
の和及びキャリを加え、最終の積が決定される。システ
ムによって、CPA1は何ビットの大きさでもよい。本実施
例ではCPA1は128ビットの加算器である。
レジスタ5及び6は、パイプライニングのため、CSA4
からの結果をCPA1に送る前に記憶するために必要であ
る。CSA4からのキャリ421および和420は、典型的には、
CPA1が最終的積を生成するよりも速く決定される。従っ
て、CPA1の遅い速度を補償するため、CSA4からの出力を
CPA1で加算を行うため次のステージに送る前にそれらを
記憶することが必要なのである。
本発明の種々の実施例を上に述べたが、それらは例と
して挙げられたのであり、限度を示すためのものではな
い。従って、本発明の精神と範囲は、上述した、例とし
て示したいかなる実施例もその限界を与えるものではな
く、以下の特許請求範囲及びそれと同等のものに従って
のみ規定される。

Claims (6)

    (57)【特許請求の範囲】
  1. 【請求項1】小型集積回路ブース(Booth)アルゴリズ
    ム乗算器であって、 第1のクロックフェイズにおいて、2つにグループ分け
    された部分積うちの第1のグループの部分積を加算し
    て、第1の和(410)及び第1のキャリ(409)を生成
    し、前記第1のクロックフェイズの後の第2のクロック
    フェイズにおいて、2つのグループ分けされた部分積う
    ちの第2のグループの部分積を加算して、第2の和(41
    2)及び第2のキャリ(411)を生成する、複数のキャリ
    セイブ加算器(CSA1、CSA2)からなる第1の回路と、 前記第2のクロックフェイズの後の第3のクロックフェ
    イズにおいて、前記第1の和、第1のキャリ、第2の
    和、及び第2のキャリを入力して、第3の和(420)及
    び第3のキャリ(421)を生成する、複数のキャリセイ
    ブ加算器(CSA3、CSA4)からなる第2の回路と、 前記第3のクロックフェイズの後の第4のクロックフェ
    イズにおいて、前記第3の和及び第3のキャリを入力
    し、加算して最終的積を得るキャリ伝搬加算器(CPA1)
    と を備えることを特徴とする小型乗算器。
  2. 【請求項2】請求項1記載の小型乗算器であって、更
    に、 前記第1の和をラッチする第1のレジスタと、 前記第1のキャリをラッチする第2のレジスタと、 前記第2の和をラッチする第3のレジスタと、 前記第2のキャリをラッチする第4のレジスタと を備えることを特徴とする小型乗算器。
  3. 【請求項3】請求項2記載の小型乗算器であって、更
    に、 前記第3の和をラッチする第5のレジスタと、 前記第3のキャリをラッチする第6のレジスタと を備えることを特徴とする小型乗算器。
  4. 【請求項4】ブースアルゴリズムを用いて、2つの数を
    乗算する方法であって、 (a)第1のクロックフェイズにおいて、2つのグルー
    プ分けされた部分積うちの第1のグループの部分積を加
    算して、第1の分(410)及び第1のキャリ(409)を複
    数のキャリセイブ加算器(CSA1、CSA2)からなる第1の
    回路で生成するステップと、 (b)前記第1のクロックフェイズの後の第2のクロッ
    クフェイズにおいて、2つにグループ分けされた部分積
    うちの第2のグループの部分積を加算して、第2の分
    (412)及び第2のキャリ(411)を複数のキャリセイブ
    加算器(CSA1、CSA2)からなる第1の回路で生成するス
    テップと、 (c)前記第2のクロックフェイズの後の第3のクロッ
    クフェイズにおいて、前記第1の和、第1のキャリ、第
    2の和、及び第2のキャリを入力して、第3の和(42
    0)及び第3のキャリ(421)を生成するステップと、 (d)前記第3のクロックフェイズの後の第4のクロッ
    クフェイズにおいて、前記第3の和及び第3のキャリを
    入力し、加算して最終的積を得るステップとを備えるこ
    とを特徴とする乗算方法。
  5. 【請求項5】請求項4記載の乗算方法であって、更に、 前記第1の和及び第1のキャリをそれぞれ第1のレジス
    タ及び第2のレジスタにラッチするステップと、 前記第2の和及び第2のキャリをそれぞれ第3のレジス
    タ及び第4のレジスタにラッチするステップと を備えることを特徴とする乗算方法。
  6. 【請求項6】請求項5記載の乗算方法であって、更に、 前記第3の和及び第3のキャリをそれぞれ第5のレジス
    タ及び第6のレジスタにラッチするステップ を備えることを特徴とする乗算方法。
JP51912793A 1992-05-01 1993-04-27 小型乗算器 Expired - Fee Related JP3244506B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US07/877,562 US5325320A (en) 1992-05-01 1992-05-01 Area efficient multiplier for use in an integrated circuit
US877,562 1992-05-01
PCT/JP1993/000552 WO1993022721A1 (en) 1992-05-01 1993-04-27 Compact multiplier

Publications (2)

Publication Number Publication Date
JPH07506444A JPH07506444A (ja) 1995-07-13
JP3244506B2 true JP3244506B2 (ja) 2002-01-07

Family

ID=25370232

Family Applications (1)

Application Number Title Priority Date Filing Date
JP51912793A Expired - Fee Related JP3244506B2 (ja) 1992-05-01 1993-04-27 小型乗算器

Country Status (3)

Country Link
US (1) US5325320A (ja)
JP (1) JP3244506B2 (ja)
WO (1) WO1993022721A1 (ja)

Families Citing this family (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07146781A (ja) * 1993-11-19 1995-06-06 Sony Corp プロセツサ
GB2317978B (en) * 1994-03-02 1998-05-20 Advanced Risc Mach Ltd Electronic multiplying and adding apparatus and method
KR0147942B1 (ko) * 1994-08-12 1998-09-15 배순훈 승산기에서의 부스 레코딩회로
US5721892A (en) * 1995-08-31 1998-02-24 Intel Corporation Method and apparatus for performing multiply-subtract operations on packed data
US7395298B2 (en) * 1995-08-31 2008-07-01 Intel Corporation Method and apparatus for performing multiply-add operations on packed data
US6385634B1 (en) * 1995-08-31 2002-05-07 Intel Corporation Method for performing multiply-add operations on packed data
US5936872A (en) * 1995-09-05 1999-08-10 Intel Corporation Method and apparatus for storing complex numbers to allow for efficient complex multiplication operations and performing such complex multiplication operations
US6058408A (en) * 1995-09-05 2000-05-02 Intel Corporation Method and apparatus for multiplying and accumulating complex numbers in a digital filter
US5983253A (en) * 1995-09-05 1999-11-09 Intel Corporation Computer system for performing complex digital filters
US6237016B1 (en) 1995-09-05 2001-05-22 Intel Corporation Method and apparatus for multiplying and accumulating data samples and complex coefficients
US6470370B2 (en) 1995-09-05 2002-10-22 Intel Corporation Method and apparatus for multiplying and accumulating complex numbers in a digital filter
US5822459A (en) * 1995-09-28 1998-10-13 Intel Corporation Method for processing wavelet bands
US5621674A (en) * 1996-02-15 1997-04-15 Intel Corporation Computer implemented method for compressing 24 bit pixels to 16 bit pixels
JP3532338B2 (ja) * 1996-02-27 2004-05-31 株式会社ルネサステクノロジ 乗算装置
US5831885A (en) * 1996-03-04 1998-11-03 Intel Corporation Computer implemented method for performing division emulation
US5943250A (en) * 1996-10-21 1999-08-24 Samsung Electronics Co., Ltd. Parallel multiplier that supports multiple numbers with different bit lengths
US5974437A (en) * 1996-12-02 1999-10-26 Synopsys, Inc. Fast array multiplier
US6687722B1 (en) * 2000-03-16 2004-02-03 Agere Systems, Inc. High-speed/low power finite impulse response filter
GB2365636B (en) * 2000-08-04 2005-01-05 Automatic Parallel Designs Ltd A parallel counter and a multiplication logic circuit
US7136888B2 (en) * 2000-08-04 2006-11-14 Arithmatica Limited Parallel counter and a logic circuit for performing multiplication
US6883011B2 (en) * 2000-08-04 2005-04-19 Arithmatica Limited Parallel counter and a multiplication logic circuit
US20050021585A1 (en) * 2000-08-04 2005-01-27 Dmitriy Rumynin Parallel counter and a logic circuit for performing multiplication
GB2373602B (en) * 2001-03-22 2004-11-17 Automatic Parallel Designs Ltd A multiplication logic circuit
US7430578B2 (en) * 2001-10-29 2008-09-30 Intel Corporation Method and apparatus for performing multiply-add operations on packed byte data
GB2383435A (en) * 2001-12-18 2003-06-25 Automatic Parallel Designs Ltd Logic circuit for performing modular multiplication and exponentiation
GB2396718B (en) * 2002-12-23 2005-07-13 Arithmatica Ltd A logic circuit and method for carry and sum generation and method of designing such a logic circuit
GB2398944B (en) * 2003-01-14 2005-07-20 Arithmatica Ltd A logic circuit
US7042246B2 (en) * 2003-02-11 2006-05-09 Arithmatica Limited Logic circuits for performing threshold functions
US7308471B2 (en) 2003-03-28 2007-12-11 Arithmatica Limited Method and device for performing operations involving multiplication of selectively partitioned binary inputs using booth encoding
WO2004104820A2 (en) * 2003-05-23 2004-12-02 Arithmatica Limited A sum bit generation circuit
KR20130111721A (ko) * 2012-04-02 2013-10-11 삼성전자주식회사 부분 곱 생성기의 부스코드 생성방법, 컴퓨터 시스템 및 그 매체와 디지털 신호프로세서

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4646257A (en) * 1983-10-03 1987-02-24 Texas Instruments Incorporated Digital multiplication circuit for use in a microprocessor
JPS6284335A (ja) * 1985-10-09 1987-04-17 Hitachi Ltd 乗算回路
JPS6297033A (ja) * 1985-10-24 1987-05-06 Hitachi Ltd 乗算装置
US4972362A (en) * 1988-06-17 1990-11-20 Bipolar Integrated Technology, Inc. Method and apparatus for implementing binary multiplication using booth type multiplication
US5036482A (en) * 1989-04-07 1991-07-30 Intel Corporation Method and circuitry for digital system multiplication

Also Published As

Publication number Publication date
US5325320A (en) 1994-06-28
WO1993022721A1 (en) 1993-11-11
JPH07506444A (ja) 1995-07-13

Similar Documents

Publication Publication Date Title
JP3244506B2 (ja) 小型乗算器
US4168530A (en) Multiplication circuit using column compression
US4623982A (en) Conditional carry techniques for digital processors
EP0113391B1 (en) Digital multiplier and method for adding partial products in a digital multiplier
US5161119A (en) Weighted-delay column adder and method of organizing same
JPH0375901B2 (ja)
US5122982A (en) Carry generation method and apparatus
Makino et al. A 8.8-ns 54/spl times/54-bit multiplier using new redundant binary architecture
US5396445A (en) Binary carry-select adder
US5497343A (en) Reducing the number of carry-look-ahead adder stages in high-speed arithmetic units, structure and method
US4545028A (en) Partial product accumulation in high performance multipliers
US5257217A (en) Area-efficient multiplier for use in an integrated circuit
US5586071A (en) Enhanced fast multiplier
JPH0784760A (ja) 自己検査型補数加算器ユニット
US6546411B1 (en) High-speed radix 100 parallel adder
US6484193B1 (en) Fully pipelined parallel multiplier with a fast clock cycle
Ibrahim Radix-2n multiplier structures: A structured design methodology
JPH0366693B2 (ja)
JPH0370416B2 (ja)
US4041296A (en) High-speed digital multiply-by-device
US5457646A (en) Partial carry-save pipeline multiplier
US20060242219A1 (en) Asynchronous multiplier
Santhi et al. Realization of parallel prefix adders for power and speed critical applications
JP2563473B2 (ja) 2進演算器
KR950010451B1 (ko) 그룹 트리구조 알고리즘(GTSM ; Group Tree Structure Method)을 적용한 고속 승산기

Legal Events

Date Code Title Description
FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20081026

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20091026

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20101026

Year of fee payment: 9

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20101026

Year of fee payment: 9

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111026

Year of fee payment: 10

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121026

Year of fee payment: 11

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121026

Year of fee payment: 11

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121026

Year of fee payment: 11

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees