JPS63108460A - ラツチされた和及びキヤリイを用いるマルチプライヤ回路 - Google Patents

ラツチされた和及びキヤリイを用いるマルチプライヤ回路

Info

Publication number
JPS63108460A
JPS63108460A JP24114386A JP24114386A JPS63108460A JP S63108460 A JPS63108460 A JP S63108460A JP 24114386 A JP24114386 A JP 24114386A JP 24114386 A JP24114386 A JP 24114386A JP S63108460 A JPS63108460 A JP S63108460A
Authority
JP
Japan
Prior art keywords
adder
multiplier
row
bit
carry
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
Application number
JP24114386A
Other languages
English (en)
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.)
Zoran Corp
Original Assignee
Zoran 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 Zoran Corp filed Critical Zoran Corp
Priority to JP24114386A priority Critical patent/JPS63108460A/ja
Publication of JPS63108460A publication Critical patent/JPS63108460A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Complex Calculations (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 産業上の利用分野 本発明は、一般的にデジタル回路に関し、より詳細には
ベクトルのスカラ積としても知られるベクトルドツト乗
算を高速に処理するための回路に関する。一般的に、ベ
クトルドツト乗算は、それぞれn要素を有する2つのベ
クトルU(i)、従来の技術 2つのベクトルu (i) 、v (i)が、例えば共
に4つの要素から成っているベクトルドツト乗算は、そ
の要素の個々の対の積の和である。すなわち、u、Xv
、+u2XV2 +u3x’V3+u。
Xv4で表わされる。電気信号を処理するときに、各種
の関数にはベクトルドツト乗算が必要とされる。例えば
、時間領域のデジタルフィルタは、その関数を複数の時
間従属要素として表わし、且つ、時間の関数として振幅
のサンプル値を示す複数の要素として電気信号を表わす
ことによって、その電気信号に基づいて動作することが
できる。そのフィルタ通過後の信号は、2つのベクトル
のスカシ又はドツト乗算である。同様に、離散的なフー
リエ変換、畳み込み、相関関係、及び同様な関数にはベ
クトルドツト乗算が必要である。
通常、2つのベクトルのドツト乗算(u (i)、v(
i))は、最初に個々の積を得て、次にその個々の積を
加算することによって行なわれる。必要とされる回路は
、大きくて多様性に欠けることになる。さらに、多くの
個々の乗算を行ない、その結果を累積するために必要な
時間が、多くの成分語を有するベクトルドツト乗算を利
用することについて実際上の制限となっている。このベ
クトルドツト乗算は、個々の乗算期間を有するベクトル
長の積を示すもので、ベクトル要素の大きさを記載する
ために使用されたビット数に依存する。
発明の要約 本発明は、マルチプライヤ構造に関し、更に従来のマル
チプライヤ/アキュムレータよりも構造が筒車であって
要素(ワード)及びベクトル長が多様性に冨む改良型ベ
クトルドツトマルチプライヤに関する。ベクトルドツト
乗算に必要な時間は、従来のドツトマルチプライヤを用
いるのに必要な時間の僅かにすぎない。本発明は、アレ
イマルチプライヤに特に適用されるが、例えば、標準的
なマルチプライヤ、ブースマルチプライヤ及び各種の加
算−シフトマルチプライヤのようなどんなマルチプライ
ヤにも適用される。
本発明の特徴は、ラッチを用いていて、部分和及びキャ
リイを加算器セル間で転送してパイプライン動作を容易
にすることである。
本発明の他の特徴は、パイプライン構造を用いてマルチ
プリカンド及びマルチプライヤの全てのワードが連続的
に処理されることである。
本発明の更に別の特徴は、パイプライン化された連続マ
ルチプライヤが加算器及びラッチによって内部接続され
ていてベクトルを連続的に処理することである。
本発明の別の特徴は、2の補数の乗算が各マルチプライ
ヤの行を伸張してオーバーフローを阻止することによっ
て、そしてマルチプリカンドを反転して最後のマルチプ
ライヤの行でそのマルチプライヤの符号ビットと反転し
たワード(要素)とを乗算することによって与えられる
本発明の更に別の特徴は、マルチプライヤ内の多重長の
段が段間の部分積をラッチし、シフトしてマルチプライ
ヤ長の段を最適に使用することによって与えられている
ことである。
本発明及びその目的や特徴は、添付図面を考慮すること
によって、実施例及び特許請求の範囲から容易に明らか
になるだろう。
実施例 添付図面について説明する。第1図は、通常のマルチプ
ライヤアキュムレータベクトルドツトマルチプライヤ(
multiplier accumulator ve
ctordot multiplier)の機能ブロッ
ク図である。第1のベクトルXがマルチプリカンドレジ
スタ12に与えられ、第2のベクトルYがマルチプライ
ヤレジスタ14に与えられる。上述したように、ベクト
ルは、それぞれ複数の成分を有していて、各ベクトルの
成分の数は等しいが、各ベクトルの要素(又はワード)
のビット数は等しk)。クロック信号及び制御信号がタ
イミング回路16に与えられ、このタイミング回路16
は、マルチプリカンドレジスタ12に対する論理/制/
a18及びマルチプライヤ14に対する論理/制御20
を制御する。
マルチプリカンドレジスタ12及びマルチプライヤレジ
スタ14からのデジタルワードが乗算ブロック22に加
えられ、そこでマルチプリカンドがらの成分とマルチプ
ライヤからの成分とが連続して乗算される。個々の積が
24で記憶されそして加算されて、指摘したようにドツ
ト積を与える。
ここで次のようにベクトル■及びUを考える。
v3(i)  v=(i)  v、(i)  vo(i
)v(l]    1   1   0   1=13
v(211011=11 v(3)    1   1   1   0=14v
(4)    0   1   0   1=5u 、
(i)   u 2(i)   u 、 (i)   
u 0(i)u(1)     1     1   
  1     1=15uf21     1   
  1     0     0=12uf31   
  0     1     1     1=7ut
4)     1     0     0     
1=9乗算v (i)Xu (i)は、通常次のように
行なわれる。
個々の積は合計されて、ベクトルドツト積が与えられる
。すなわち、 11000011     =195 10000100     =132 01100010     =    98ベクトルド
ツト積を得るのに必要な時間により1ooo又はそれ以
上の成分を有するベクトルと共に使うために、通常のマ
ルチプライヤブロックが実行不能になる。
本発明により、パイプライン技術を用いる改良型のベク
トルドツト積マルチプライヤが、通常のマルチプライヤ
に対して必要とされる時間のうちの短時間でドツト積乗
法を実行するために提供されている。
第2A及び2B図は、従来のマルチプライヤ段及び本発
明によるドツトマルチプライヤ段をそれぞれ示している
。第2A図において、ビット加算器セル25は、それぞ
れ低いオーダの加算器セルから複数の入力を受け取り、
そして入力加算に応答して、そのセルは、高いオーダの
セルに出力を与え隣りのセルにキャリイ入力を与えてい
る。この演算は、連続的に不断に行なわれて最終の結果
が得られる。このように低いオーダの演算が終了してか
ら高いオーダの演算が行なわれる。従って、マルチプラ
イヤの一部は、常に使用されていない。
第2B図において、マルチプライヤ段が変更されていて
、キャリイ信号用の及び出力段用のラッチ27が与えら
れている。このように、キャリイ及び部分積が別のマル
チプライヤ段に転送され又は本発明の実施例によってパ
イプラインマルチプライヤアレイにおいてリサイクルさ
れるので、乗算過程が中止される。
第3図は、正ベクトル用のドツトマルチプライヤを示す
図である。このドツトマルチプライヤは、汎用マルチプ
ライヤであって、本発明の一実施例によって第2図に、
示された技術によって修正されているものである。マル
チプリカンドヘクトルu  (i)は入力線30に与え
られ、マルチプライヤレベルv (i>は入力線32に
与えられている。vo(i)ビットはANDゲート34
によってu (i)のそれぞれと乗算され、v (i)
ビットはANDゲート36によってu (i)のそれぞ
れと乗算される。V2(i)ビットはANDゲート38
のu (i)ビットのそれぞれと乗算され、V、(i)
はANDゲート40によってu (i)のそれぞれと乗
算される。ANDゲート34.36の出力は入力として
半加算器及び全加算器42に加えられる。この加算器4
2の出力は、ラッチ44を介してANDゲート38の出
力とともに全加算器46の入力として与えられている。
同様に、加算器46の出力は、ラッチ4日を介してAN
Dゲート40の出力とともに加算器50の入力として与
えられている。それぞれの加算器からのキャリイ−アウ
トは、ラッチを介して同じマルチプライヤレベルの隣接
する加算器のキャリイ−インに与えられている。
このように、1ワードにつきnビットを有するマルチプ
リカンドに対して、各マルチプライヤレベルにはfi+
lケの乗算セル(ANDゲート及び全加算器)が必要と
される。1ワードにつきmビ・71−を有するマルチプ
ライヤv(i)に対して、fi+lケのセルのm−ルベ
ルが必要とされる。
最後の乗算レベルにおける加算器50からの出力がラッ
チ52を介してアキュムレータの全加算器54に与えら
れている。加算器54の出力は、ラッチ56を介して加
算器54への入力の1つとして再び循環される。さらに
、そのアキュムレータの加算器54のキャリイ−アウト
は、ラッチ55を介してアキュムレータの隣接する加算
器のキャリイ−インに与えられている。
最終のベクトルドツトプロダクトは、全てのベクトル成
分のサイクル終了時に、加算器54の和出力から得られ
る。
第3図に示されているように、パイプライン状に配置さ
れた形態によって、長いベクトルのベクトルドツト乗算
を完全に行うための時間が従来のマルチプライヤに必要
とされる時間のうちの短時間に減少される。第3図に示
されたようにラッチされた全ての全加算器及び半加算器
を有する完全にパイプライン化されたマルチプライヤ/
アキュムレータとして実現されたマルチプライヤに対し
て、合計で(m−1)(n+1)ケの加算器がマルチプ
ライヤ部において必要とさら、さらに(n + 1 )
 +log、Lヶの加算器がアキュムレータ部に必要と
される。もし時間周期T(ゲートの遅れ子鹿算器の遅れ
十ラッチの遅れに等しい)が基本的なシステムクロ7り
であるならば、2つのベクトルの乗算に必要な全時間は
次式で示される。
T   = (n+2m+1ogzL+L)xT新 通常の乗算方法では次式が必要とされる。
T   = (n+2m)XT’ XL旧 ここで、T’=加算器の遅れ。
ラッチの遅れ及びゲートの遅れを省略すれば、T′〜 
T となり、Lの値が大きいときは となる。
このように、ベクトルドツト乗算を終了するのに必要な
時間は(直接的な構成を仮定するならば)、従来必要と
していた時間よりも相当少な(なる。
わずかに修正を加えて、本発明によるマルチプライヤは
、負又は2つの補数をとることができる。
第4図には本発明(4ビット2の補数、4要素ベクトル
)の別の実施例による2の補数のマルチプライヤが示さ
れている。この図は、第3図のマルチプライヤに類似し
ていて、同じ素子は、同じ参照番号を有している。一つ
の変更例は、2つの全加算器70.72を図示されたよ
うにマルチプライヤのそれぞれのレベルに加えることに
よって、それぞれのマルチプライヤレベルの伸張するこ
とである。アキュムレータの始めの半加算器のMSBを
全加算器のMSBに変更される。更に、インバータ74
を用いてu (i)ビットを反転してから最後のマルチ
プライヤレベルをANDゲート40に与える。ANDゲ
ートへの他方の入力は、マルチプライヤの符号振幅ピン
トv、(i)である。
この符号ビットは、そのアキュムレータに加えられる。
この実行は、2の補数のマルチプライヤのために使用さ
れる。
次にun)及びv (i)が次の値であると仮定する。
v(1)  =  −3u(1)  =  −1v(2
)  =  −5u(2)  =  −4v(31= 
 −2u(31=   7v(41=   5    
 u(41=  −7UとVとの従来のベクトルドット
マルチブリケーションは次式で示される。
1111     1100       ’0111
      10011101      toll 
       1110      0101積の蓄積
は次式で示される。
0000Q11=    3 0010100=   20 1110010  =  −14 さらに、第4図のマルチプライヤのパイプライン状のマ
ルチプライヤ構成によって、2の補数のベクトルドツト
乗算の全時間がベタトル成分の個々の乗算に必要な時間
であって、且つ、上記したようにその個々の積を加算す
る時間のうちの僅かな間に減少される。
パイプラインレベルの乗算を用いるベクトルドツトマル
チプライヤは、使用に際し多様性を発揮する。なぜなら
ば、マルチプライヤ成分は連続的に加算されて、ベクト
ル成分がビット数を増加するのでビット乗算能力を拡張
する。ベクトルドツト乗算を得るのに必要な時間は、従
来の乗算技術を使用するのに必要な時間のうちの僅かな
時間であり、明らかに別のベクトル要素のワード長には
ほとんど独立である。
第5図及び第6図は、本発明の他の用途を示す高速マル
チプライヤ回路図である。第5図において、マルチプラ
イヤは、4ビットワードを連続的に乗算するための形態
をなしており、そしてそれぞれ7段からなっていて1ク
ロック信号に応答して動作する。このように、最初の7
サイクル後、2つの数の積がそれぞれのクロック信号と
ともに生じる。2つの数の積のみが生じるので、マルチ
プライヤは、ドツトマルチプライヤのように、アキュム
レータを含まない。回路は、4つの基本的な構成ブロッ
ク、すなわち、全加算器(FA)、半加算器(HA) 
、遅延素子(D)及びラッチ(L)から成っている。サ
イクル時間又は乗算時間は、(FA又はHA又はD)+
Lの遅れによって制限されている。遅延素子りの設計に
よって乗算速度が限定されなくなる。
第6図において、第5図の最後の3段がORゲート及び
リサイクル用全加算器に置き、換わっていて3つの最上
位ビット内でキャリイ伝搬を行う。
この回路設計によって空間が確保されるが、3クロツク
サイクルだけ後の積が遅れる。
第7図は、浮動小数点ドツトマルチプライヤを示すブロ
ック図である。このマルチプライヤは、第3図の回路に
類似しているが加算数を適切に並べるための積及びアキ
ュムレークシフト制御回路を備えている。シフト制御は
、アキュムレータ指数、マルチプライヤ及びマルチプリ
カンドの合計指数の比較に基づく。合計指数がアキュム
レータの指数に等しいときはいつでも、積はシフトする
本発明を特定の実施例について記載しているが、この記
載は、本発明を説明しているだけであって、本発明を制
限しているものではない。特許請求の範囲に限定される
が、本発明の真の精神及び範囲から逸脱することな(、
当業者には各種の変更や修正をすることができる場合が
ある。
【図面の簡単な説明】
第1図は、通常のベクトルドツトマルチプライヤの機能
ブロック図、 第2A及び2B図は、通常のマルチプライヤ段及び本発
明によるマルチプライヤを示す図、第3図は、本発明の
一実施例圧ベクトル用の乗算ブロックを示す図(4ビッ
トワード長、ヘクトル内に4素子)、 第4図は、本発明の別の実施例による2の補数ベクトル
を存する乗算ブロック図、 第5及び6図は、本発明による固定小数点マルチプライ
ヤを示す図、 第7図は、本発明による浮動小数点ドツトマルチプライ
ヤの機能ブロック図である。 27・・・・・・ラッチ 34.36.38.40・・・・・・ANDゲート42
・・・・・・加算器    44・・・・・・ラッチ4
6・・・・・・加算器    48・・・・・・ラッチ
50・・・・・・加算器    52・・・・・・ラッ
チ54・・・・・・加算器 55.56・・・・・・ラッチ

Claims (5)

    【特許請求の範囲】
  1. (1)デジタルマルチプライヤで使用するための回路に
    おいて、 複数のビット加算器を備えており、各ビット加算器は、
    複数の入力、前記複数の入力の部分和のための少なくと
    も1つの部分和出力、少なくとも1つのキャリイ出力、
    及びキャリイ入力を有しており、 1ビット加算器の各キャリイ入力を隣接する加算器のキ
    ャリイ入力に接続する第1のラッチ手段を備えており、 各部分和出力に接続された第2のラッチ手段を備えてお
    り、それによって乗算における中間の結果がパイプライ
    ン演算に利用できることを特徴とする回路。
  2. (2)前記デジタルマルチプライヤがベクトルドットマ
    ルチプライヤであり、そして前記ビット加算器の各々へ
    の入力がマルチプリカンドの1ビット及びより低いオー
    ダのビット加算器からの出力を受け取る特許請求の範囲
    第(1)項記載の回路。
  3. (3)前記ビット加算器の出力が前記第2のラッチ手段
    を介して、第2の物理的に除去された回路に与えられる
    特許請求の範囲第(1)項記載の回路。
  4. (4)一方がmビット数を有し他方がnビット数を有す
    る2つの数u、vのためのマルチプライヤにおいて、 複数の行のマルチプライヤを備えており、各行のマルチ
    プライヤは複数のビットを乗算する段を有し、この各段
    は加算器を含んでいて、一の行における各加算器のキャ
    リイ−アウトをその同じ行の別の加算器のキャリイ−イ
    ンに相互接続する第1のラッチ手段を備えており、入力
    として一の行における各加算器の和出力を別の行におけ
    る加算器に相互接続する第2のラッチ手段を備えており
    、 入力のうちの1つとして1グループのマルチプリカンド
    のうちのマルチプリカンドuを選択された行における加
    算器に連続的に与えるための手段を備えており、各マル
    チプリカンドの1ビットが全ての選択された行における
    1つの段に行き、 1グループのマルチプライヤのうちの各マルチプライヤ
    vのビットを前記選択された行における加算器に連続的
    に与えるための手段を備えており、各マルチプライヤの
    1ビットが一の行における全ての段に行くことを特徴と
    するマルチプライヤ。
  5. (5)成分の数Lを有し、その各成分のビット数がmで
    あるベクトルu(i)と、成分の数Lを有しその各成分
    のビット数がnであるu(i)とのための浮動小数点ベ
    クトルドットマルチプライヤにおいて、 複数の行のマルチプライヤを備えており、各行のマルチ
    プライヤは、それぞれが加算セルを含む複数のビット乗
    算段を有し、 一の行における各加算器のキャリイ−アウトをその同じ
    行の別の加算器のキャリイ−インに相互接続するための
    第1のラッチ手段を備えており、 一の行における各加算器の和出力を別の行における加算
    器に相互するための第2のラッチ手段を備えており、 入力の1つとして一方のベクトルu(i)のワードを全
    ての行における加算器に連続的に与えるための手段を備
    えており、各ワードの1ビットが全ての行の1つの段に
    行き、 他方のベクトルv(i)の各ワードのビットを各行にお
    ける加算器に連続的に与えるための手段を備えており、
    各ワードの1ビットが一の行における全ての段に行き、 各乗算の積を受け取ってシフト制御手段に応答して小数
    点をシフトするための積シフト手段を備えており、 積の蓄積和の指数をマルチプライヤ及びマルチプリカン
    ドの積の合計の指数と比較するためのシフト制御手段を
    備えており、 前記積シフト手段からの積を受け取って蓄積するための
    アキュムレータ手段を備えることを特徴とするドットマ
    ルチプライヤ。
JP24114386A 1986-10-09 1986-10-09 ラツチされた和及びキヤリイを用いるマルチプライヤ回路 Pending JPS63108460A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP24114386A JPS63108460A (ja) 1986-10-09 1986-10-09 ラツチされた和及びキヤリイを用いるマルチプライヤ回路

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP24114386A JPS63108460A (ja) 1986-10-09 1986-10-09 ラツチされた和及びキヤリイを用いるマルチプライヤ回路

Publications (1)

Publication Number Publication Date
JPS63108460A true JPS63108460A (ja) 1988-05-13

Family

ID=17069910

Family Applications (1)

Application Number Title Priority Date Filing Date
JP24114386A Pending JPS63108460A (ja) 1986-10-09 1986-10-09 ラツチされた和及びキヤリイを用いるマルチプライヤ回路

Country Status (1)

Country Link
JP (1) JPS63108460A (ja)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5541600A (en) * 1978-09-15 1980-03-24 Philips Nv Multiplier
JPS6059470A (ja) * 1983-08-25 1985-04-05 ハネウエル・インコーポレーテツド 乗算‐累算処理装置に適する基本セル及び乗算‐累算処理装置

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5541600A (en) * 1978-09-15 1980-03-24 Philips Nv Multiplier
JPS6059470A (ja) * 1983-08-25 1985-04-05 ハネウエル・インコーポレーテツド 乗算‐累算処理装置に適する基本セル及び乗算‐累算処理装置

Similar Documents

Publication Publication Date Title
US4736335A (en) Multiplier-accumulator circuit using latched sums and carries
US4489393A (en) Monolithic discrete-time digital convolution circuit
EP0741354A2 (en) Multi-operand adder using parallel counters
JPS6217770B2 (ja)
US4967388A (en) Truncated product partial canonical signed digit multiplier
US5161119A (en) Weighted-delay column adder and method of organizing same
JPS6375932A (ja) ディジタル乗算器
EP0416869B1 (en) Digital adder/accumulator
US4853887A (en) Binary adder having a fixed operand and parallel-serial binary multiplier incorporating such an adder
US4796219A (en) Serial two's complement multiplier
KR100308726B1 (ko) 고속 산술 장치에서 올림수 예견가산기 스테이지의 수를 감소시키는 장치 및 방법
US4545028A (en) Partial product accumulation in high performance multipliers
US3885141A (en) Modular pipeline multiplier to generate a rounded product
US5268858A (en) Method and apparatus for negating an operand
US4706210A (en) Guild array multiplier for binary numbers in two's complement notation
US6484193B1 (en) Fully pipelined parallel multiplier with a fast clock cycle
JPS63108460A (ja) ラツチされた和及びキヤリイを用いるマルチプライヤ回路
US5457646A (en) Partial carry-save pipeline multiplier
JPH0418336B2 (ja)
GB2218545A (en) Recursive processor for multiplication
SU1108087A1 (ru) Устройство дл умножени с накоплением
US5309384A (en) Digital multiplier with carry-sum input
SU974370A1 (ru) Устройство дл умножени
RU2022339C1 (ru) Множительное устройство
GB2189630A (en) Multiplier