JPH0368413B2 - - Google Patents
Info
- Publication number
- JPH0368413B2 JPH0368413B2 JP60223624A JP22362485A JPH0368413B2 JP H0368413 B2 JPH0368413 B2 JP H0368413B2 JP 60223624 A JP60223624 A JP 60223624A JP 22362485 A JP22362485 A JP 22362485A JP H0368413 B2 JPH0368413 B2 JP H0368413B2
- Authority
- JP
- Japan
- Prior art keywords
- bits
- partial
- carry
- registers
- sum
- 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
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
- G06F7/5324—Multiplying 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
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2207/00—Indexing scheme relating to methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F2207/38—Indexing scheme relating to groups G06F7/38 - G06F7/575
- G06F2207/3804—Details
- G06F2207/386—Special constructional features
- G06F2207/3896—Bit slicing
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computational Mathematics (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Complex Calculations (AREA)
Description
【発明の詳細な説明】
〔発明の利用分野〕
本発明はデイジタル演算処理装置に係り、特に
浮動小数点乗算に於いて仮数部の乗算処理を高速
に実行するのに好適な乗算回路に関する。
浮動小数点乗算に於いて仮数部の乗算処理を高速
に実行するのに好適な乗算回路に関する。
従来の高速乗算回路は、特開昭58−101343号に
記載のように乗数をデコードするデコーダ、被乗
算の倍数を作成するマルチプル・ゲート、多入力
キヤリー・セーブ・アダー(以下CSAと称す)
及びキヤリー・プロパゲート・アダー(以下
CPAと称す)から構成される。第2図はその動
作を示すものである。図に於いて、Aは32ビツト
の被乗数、Bは32ビツトの乗数である。乗算は乗
数を2・mビツト×n個に分割することにより、
(n+1)マシン・サイクルで実行することがで
きる。第2図ではm=4,n=4となつている。
記載のように乗数をデコードするデコーダ、被乗
算の倍数を作成するマルチプル・ゲート、多入力
キヤリー・セーブ・アダー(以下CSAと称す)
及びキヤリー・プロパゲート・アダー(以下
CPAと称す)から構成される。第2図はその動
作を示すものである。図に於いて、Aは32ビツト
の被乗数、Bは32ビツトの乗数である。乗算は乗
数を2・mビツト×n個に分割することにより、
(n+1)マシン・サイクルで実行することがで
きる。第2図ではm=4,n=4となつている。
まず、乗数Bの最下位8ビツトb0をデコーダで
デコードし4種の乗数を得る。(このデコード方
式については「コンピユータの高速演算方式」、
堀越監訳、昭和55年、近代科学社出版、pp.142〜
pp.160に紹介されており周知の技術なのでここで
は説明を省く。)デコーダからの乗数に基づきマ
ルチプル・ゲートにて被乗数の倍数A・b0(1)〜(4)
を得て、CSAにて加算を行い、部分和SUM(1)と
部分桁上りCRY(1)を求める。
デコードし4種の乗数を得る。(このデコード方
式については「コンピユータの高速演算方式」、
堀越監訳、昭和55年、近代科学社出版、pp.142〜
pp.160に紹介されており周知の技術なのでここで
は説明を省く。)デコーダからの乗数に基づきマ
ルチプル・ゲートにて被乗数の倍数A・b0(1)〜(4)
を得て、CSAにて加算を行い、部分和SUM(1)と
部分桁上りCRY(1)を求める。
次のマシン・サイクルでは、乗数Bの次の8ビ
ツトb1をデコードすることにより部分積A・b1(1)
〜(4)を得て、前回求めたSUM(1)とCRY(1)を右へ
8ビツトシフトした値との加算をCSAで行い部
分和SUM(2)と部分桁上りCRY(2)とを得る。この
とき、SUM(1)とCRY(1)の右へシフトされてしま
つた8ビツト(第2図に於ける斜線部分)につい
ては、加算した場合の最上位ビツトからの桁上が
りのみを求めておく。
ツトb1をデコードすることにより部分積A・b1(1)
〜(4)を得て、前回求めたSUM(1)とCRY(1)を右へ
8ビツトシフトした値との加算をCSAで行い部
分和SUM(2)と部分桁上りCRY(2)とを得る。この
とき、SUM(1)とCRY(1)の右へシフトされてしま
つた8ビツト(第2図に於ける斜線部分)につい
ては、加算した場合の最上位ビツトからの桁上が
りのみを求めておく。
以下、同様にしてSUM(3)、CRY(3)、SUM(4)、
CRY(4)を求めて行き、最後のマシン・サイクル
で部分和SUM(4)と部分桁上りCRY(4)との加算を
CPAにて行い乗算を終了する。
CRY(4)を求めて行き、最後のマシン・サイクル
で部分和SUM(4)と部分桁上りCRY(4)との加算を
CPAにて行い乗算を終了する。
しかし、この方式ではCSA出力の部分和と部
分桁上りのシフト操作が必要であり、2・mビツ
トの乗算処理を行うには4・mビツトのシフト操
作が必要となる。このため、乗算器を複数のLSI
で構成する場合にシフト操作のための使用ピンが
増大してしまうという問題点があつた。また、
CSAの高速性も充分生かされていなかつた。
分桁上りのシフト操作が必要であり、2・mビツ
トの乗算処理を行うには4・mビツトのシフト操
作が必要となる。このため、乗算器を複数のLSI
で構成する場合にシフト操作のための使用ピンが
増大してしまうという問題点があつた。また、
CSAの高速性も充分生かされていなかつた。
本発明の目的は、乗算をデコードするデコーダ
とマルチプル・ゲートと多入力CSAとCPAから
成る乗算器を複数のLSIで構成する場合に、使用
ピン数の少ない高速な乗算回路を提供することに
ある。
とマルチプル・ゲートと多入力CSAとCPAから
成る乗算器を複数のLSIで構成する場合に、使用
ピン数の少ない高速な乗算回路を提供することに
ある。
第3図は32ビツト乗算器を8ビツト・スライス
した構成にて本発明を用いた場合の乗算手順を示
している。ここで、S−1〜4は8ビツト・スラ
イスにした各乗算器を示している。
した構成にて本発明を用いた場合の乗算手順を示
している。ここで、S−1〜4は8ビツト・スラ
イスにした各乗算器を示している。
まず、乗算Bの最下位8ビツトb0と被乗数Aの
各8ビツトa0〜a3の乗算を行い、S−1にはa0・
b0の下位8ビツト及びa3〜b0の上位8ビツトを、
S−2にはa0・b0の上位8ビツト及びa1・b0の下
位8ビツトを、S−1にはa1・b0の上位8ビツト
及びa2・b0の下位8ビツトを、S−4にはa2・b0
の上位8ビツト及びa3・b0の下位8ビツトをそれ
ぞれ入力する(a−1)。
各8ビツトa0〜a3の乗算を行い、S−1にはa0・
b0の下位8ビツト及びa3〜b0の上位8ビツトを、
S−2にはa0・b0の上位8ビツト及びa1・b0の下
位8ビツトを、S−1にはa1・b0の上位8ビツト
及びa2・b0の下位8ビツトを、S−4にはa2・b0
の上位8ビツト及びa3・b0の下位8ビツトをそれ
ぞれ入力する(a−1)。
次に、入力されてきた部分積の加算をCSAに
て行い部分和SUM(1)及び部分桁上りCRY(1)を求
める(b−1)。このとき、S−1に於ける部分
積(a0・b0−L)の加算だけは行わず、最上位ビ
ツトからの桁上りのみを求めておく。
て行い部分和SUM(1)及び部分桁上りCRY(1)を求
める(b−1)。このとき、S−1に於ける部分
積(a0・b0−L)の加算だけは行わず、最上位ビ
ツトからの桁上りのみを求めておく。
次のステツプでは、第2番目の乗数b1と被乗数
Aとの乗算を行い、S−1にはa2・b1の上位8ビ
ツト及びa3・b1の下位8ビツト、S−2にはa0・
b1の下位8ビツト及びa3・b1の上位8ビツト、S
−3にはa0・b1の上位8ビツト及びa1・b1の下位
8ビツト、S−4にはa1・b1の上位8ビツト及び
a2・b1の下位8ビツトをそれぞれ入力する(a−
2)。
Aとの乗算を行い、S−1にはa2・b1の上位8ビ
ツト及びa3・b1の下位8ビツト、S−2にはa0・
b1の下位8ビツト及びa3・b1の上位8ビツト、S
−3にはa0・b1の上位8ビツト及びa1・b1の下位
8ビツト、S−4にはa1・b1の上位8ビツト及び
a2・b1の下位8ビツトをそれぞれ入力する(a−
2)。
a−2では、a−1に対して部分積の入力を8
ビツトずつ左へずらしてあるため前回求めた部分
和SUM(1)及び部分桁上りCRY(1)と部分積との加
算をCSAで行う場合にはSUM(1)及びCRY(1)の右
シフトは不要となる(b−2)。このとき、S−
2に於けるa0・b0−L及びSUM(1)とCRY(1)の斜
線部分は、a3・b1−Uとの加算は行わずに前回
a0・b0−Lから求めた桁上りを加算した最上位ビ
ツトからの桁上りを求めておく。
ビツトずつ左へずらしてあるため前回求めた部分
和SUM(1)及び部分桁上りCRY(1)と部分積との加
算をCSAで行う場合にはSUM(1)及びCRY(1)の右
シフトは不要となる(b−2)。このとき、S−
2に於けるa0・b0−L及びSUM(1)とCRY(1)の斜
線部分は、a3・b1−Uとの加算は行わずに前回
a0・b0−Lから求めた桁上りを加算した最上位ビ
ツトからの桁上りを求めておく。
以下、同様にa−3、b−3、a−4、b−4
を実行して最後にSUM(4)とCRY(4)との加算を
CPAにて行い乗算を終了する。
を実行して最後にSUM(4)とCRY(4)との加算を
CPAにて行い乗算を終了する。
以上のような処理は部分積を求める度に雑乗数
を左へ8ビツトずつローテートすることにより容
易に実現できる。
を左へ8ビツトずつローテートすることにより容
易に実現できる。
第4図は従来の乗算回路と本発明による乗算回
路のタイミングチヤートを示している。従来方式
(1)では部分積を求める処理(a−1〜4)の後に
続いて前回の部分和と部分桁上りとの加算(b−
1〜4)を行つていたので、1マシン・サイクル
毎に1組の部分和と部分桁上りしか求まつていな
かつたが、本発明では部分積を求める処理の後に
レジスタを一段設けることにより、次の部分積を
求める処理(a−2〜4)と前回の部分和及び部
分桁上りとの加算(b−1〜3)とを並行して処
理できるので1/2マシン・サイクル毎に1組の部
分和と部分桁上げを求めることが可能となる。
路のタイミングチヤートを示している。従来方式
(1)では部分積を求める処理(a−1〜4)の後に
続いて前回の部分和と部分桁上りとの加算(b−
1〜4)を行つていたので、1マシン・サイクル
毎に1組の部分和と部分桁上りしか求まつていな
かつたが、本発明では部分積を求める処理の後に
レジスタを一段設けることにより、次の部分積を
求める処理(a−2〜4)と前回の部分和及び部
分桁上りとの加算(b−1〜3)とを並行して処
理できるので1/2マシン・サイクル毎に1組の部
分和と部分桁上げを求めることが可能となる。
以下、本発明の一実施例を第1図及び第3〜8
図を用いて説明する。
図を用いて説明する。
第1図は本発明を用いた32ビツト乗算回路の全
体構成を示す。乗算回路は、被乗算を格納するレ
ジスタ1、乗算を格納するレジスタ2、4つに分
割した乗数の内1つを出力するセレクタ3、4つ
に分割した被乗数を任意の位置に出力するセレク
タ4、8ビツトの乗数と被乗数とを基に16ビツト
の和成分と桁上げ成分から成る部分積を作り出す
8ビツト乗算器5〜8、8ビツト乗算器5〜8の
出力をラツチするレジスタ20−1〜8及び21
−1〜8、部分積と部分和及び部分桁上りを加算
して行くCSA9〜12、CSA9〜12の出力を
ラツチするレジスタ22−1〜8及び23−1〜
8、乗算の最後に部分和と部分桁上りを加算する
CPA13〜16、乗算結果をラツチするレジス
タ24〜27、2対1セレクタ30−1〜8及び
31−1〜8から構成される。このうち、レジス
タ1,2,20−1〜8,22−1〜8及び24
〜27はマシン・サイクルの前半にスルーとなる
スルーラツチで、また、レジスタ21−1〜8及
び、23−1〜8はマシン・サイクルの後半にス
ルーとなるスルーラツチで構成している。
体構成を示す。乗算回路は、被乗算を格納するレ
ジスタ1、乗算を格納するレジスタ2、4つに分
割した乗数の内1つを出力するセレクタ3、4つ
に分割した被乗数を任意の位置に出力するセレク
タ4、8ビツトの乗数と被乗数とを基に16ビツト
の和成分と桁上げ成分から成る部分積を作り出す
8ビツト乗算器5〜8、8ビツト乗算器5〜8の
出力をラツチするレジスタ20−1〜8及び21
−1〜8、部分積と部分和及び部分桁上りを加算
して行くCSA9〜12、CSA9〜12の出力を
ラツチするレジスタ22−1〜8及び23−1〜
8、乗算の最後に部分和と部分桁上りを加算する
CPA13〜16、乗算結果をラツチするレジス
タ24〜27、2対1セレクタ30−1〜8及び
31−1〜8から構成される。このうち、レジス
タ1,2,20−1〜8,22−1〜8及び24
〜27はマシン・サイクルの前半にスルーとなる
スルーラツチで、また、レジスタ21−1〜8及
び、23−1〜8はマシン・サイクルの後半にス
ルーとなるスルーラツチで構成している。
次に、第1図の動作を第3図及び第5図を用い
説明する。
説明する。
まず第1マシン・サイクルの前半(第5図での
T1−1)で被乗数と乗数がレジスタ1及び2に
それぞれセツトされる。第1マシン・サイクルの
後半(第5図でのT1−2)では、セレクタ3に
より乗数の最下位8ビツト2−1を選択し信号線
3−1に、セレクタ4により被乗数の最下位8ビ
ツト1−1を4−2に第2番目の8ビツト1−2
を4−3に第3番目の8ビツト1−3を4−4に
最上位8ビツト1−4を4−1にそれぞれ出力す
る。8ビツト乗算器5〜8では乗数3−1、被乗
数4−1〜4を基に和成分5−1,6−1,7−
1及び8−1と桁上げ成分5−2,6−2,7−
2,及び8−2から成る部分積を作業し、レジス
タ21−1〜21−8にそれぞれセツトする。こ
のとき、レジスタ23−1〜8はリセツトしてお
く。
T1−1)で被乗数と乗数がレジスタ1及び2に
それぞれセツトされる。第1マシン・サイクルの
後半(第5図でのT1−2)では、セレクタ3に
より乗数の最下位8ビツト2−1を選択し信号線
3−1に、セレクタ4により被乗数の最下位8ビ
ツト1−1を4−2に第2番目の8ビツト1−2
を4−3に第3番目の8ビツト1−3を4−4に
最上位8ビツト1−4を4−1にそれぞれ出力す
る。8ビツト乗算器5〜8では乗数3−1、被乗
数4−1〜4を基に和成分5−1,6−1,7−
1及び8−1と桁上げ成分5−2,6−2,7−
2,及び8−2から成る部分積を作業し、レジス
タ21−1〜21−8にそれぞれセツトする。こ
のとき、レジスタ23−1〜8はリセツトしてお
く。
次に、第2マシン・サイクルの前半(第5図で
のT2−1)では、セレクタ3により乗数の第2
番目の8ビツト2−2を3−1に、セレクタ4に
より被乗数の最下位8ビツト1−1を4−3に第
2番目の8ビツト1−2を4−4を第3番目の8
ビツト1−3を4−1に最上位8ビツト1−4を
4−2にそれぞれ出力し、8ビツト乗算器5〜8
により部分積を求めてレジスタ20−1〜8にそ
れぞれセツトする。これと同時に、セレクタ30
−1〜8によりレジスタ21−1〜8の値を出力
する。そうすると信号線53及び54には第3図
a−1に於けるa3・b0−Uの和成分及び桁上げ桁
上げ成分が、信号線55及び56にはa0・b0−L
の和成分及び桁上げ成分が、信号線63及び64
にはa0・b0−Uの和成分及び桁上げ成分が、信線
65及び66には、a1・b0−Lの和成分及び成分
が、信号線73及び74にはa1・b0−Uの和成分
及び桁上げ成分が、信号線75及び76にはa2・
b0−Lの和成分及び桁上げ成分が、信号線85及
び86にはa3・b0−Lの和成分及び桁上げ成分
が、信号線83及び84にはa2・b0−Uの和成分
及び桁上げ成分がそれぞれ出力される。また、セ
レクタ31−1〜8ではレジスタ23−1〜8の
値を選択する。これでCSA9〜12に対する入
力が全てそろい、第1回の部分和9−1,10−
1,11−1及び1201と部分桁上り9−2,
10−2,11−2及び12−2が求まりレジス
タ22−1〜8にそれぞれセツトされる。(第3
図に於けるb−1の状態)ここで、信号線91〜
94はCSA9〜12での加算による桁上りを順
次左隣りのCSAに渡すのに用いる。
のT2−1)では、セレクタ3により乗数の第2
番目の8ビツト2−2を3−1に、セレクタ4に
より被乗数の最下位8ビツト1−1を4−3に第
2番目の8ビツト1−2を4−4を第3番目の8
ビツト1−3を4−1に最上位8ビツト1−4を
4−2にそれぞれ出力し、8ビツト乗算器5〜8
により部分積を求めてレジスタ20−1〜8にそ
れぞれセツトする。これと同時に、セレクタ30
−1〜8によりレジスタ21−1〜8の値を出力
する。そうすると信号線53及び54には第3図
a−1に於けるa3・b0−Uの和成分及び桁上げ桁
上げ成分が、信号線55及び56にはa0・b0−L
の和成分及び桁上げ成分が、信号線63及び64
にはa0・b0−Uの和成分及び桁上げ成分が、信線
65及び66には、a1・b0−Lの和成分及び成分
が、信号線73及び74にはa1・b0−Uの和成分
及び桁上げ成分が、信号線75及び76にはa2・
b0−Lの和成分及び桁上げ成分が、信号線85及
び86にはa3・b0−Lの和成分及び桁上げ成分
が、信号線83及び84にはa2・b0−Uの和成分
及び桁上げ成分がそれぞれ出力される。また、セ
レクタ31−1〜8ではレジスタ23−1〜8の
値を選択する。これでCSA9〜12に対する入
力が全てそろい、第1回の部分和9−1,10−
1,11−1及び1201と部分桁上り9−2,
10−2,11−2及び12−2が求まりレジス
タ22−1〜8にそれぞれセツトされる。(第3
図に於けるb−1の状態)ここで、信号線91〜
94はCSA9〜12での加算による桁上りを順
次左隣りのCSAに渡すのに用いる。
第2マシン・サイクルの後半(第5図でのT2
−2)では、セレクタ3により乗数の第3番目の
8ビツト2−3を3−1に、セレクタ4により被
乗数の最下位8ビツト1−1を4−4に第2番目
の8ビツト1−2を4−1に第3番目の8ビツト
1−3を4−2に最上位8ビツト1−4を4−3
に出力する。また、セレクタ30−1〜8により
レジスタ20−1〜8の値を、セレクタ31−1
〜8によりレジスタ22−1〜8の値をそれぞれ
出力する。これにより第3図に於けるa−3の各
部積分がレジスタ21−1〜8に、b−2の部分
和及び部分桁上りがレジスタ23−1〜8にそれ
ぞれセツトされる。
−2)では、セレクタ3により乗数の第3番目の
8ビツト2−3を3−1に、セレクタ4により被
乗数の最下位8ビツト1−1を4−4に第2番目
の8ビツト1−2を4−1に第3番目の8ビツト
1−3を4−2に最上位8ビツト1−4を4−3
に出力する。また、セレクタ30−1〜8により
レジスタ20−1〜8の値を、セレクタ31−1
〜8によりレジスタ22−1〜8の値をそれぞれ
出力する。これにより第3図に於けるa−3の各
部積分がレジスタ21−1〜8に、b−2の部分
和及び部分桁上りがレジスタ23−1〜8にそれ
ぞれセツトされる。
第3マシン・サイクルの前半(第5図でのT3
−1)では、セレクタ3により乗数の最上位8ビ
ツト2−4を3−1に、セレクタ4により被乗数
の最下位8ビツト1−1を4−1に第2番目の8
ビツト1−2を4−2に第3番目の8ビツト1−
3を4−3に最上位8ビツト1−4を4−4にそ
れぞれ出力する。また、セレクタ30−1〜8に
よりレジスタ21−1〜8の値を、セレクタ31
−1〜8によりレジスタ23−1〜8の値をそれ
ぞれ出力する。これにより第3図に於けるa−4
の各部分積がレジスタ20−1〜8に、b−3の
部分和及び部分桁上りがレジスタ22−1〜8に
それぞれセツトされる。
−1)では、セレクタ3により乗数の最上位8ビ
ツト2−4を3−1に、セレクタ4により被乗数
の最下位8ビツト1−1を4−1に第2番目の8
ビツト1−2を4−2に第3番目の8ビツト1−
3を4−3に最上位8ビツト1−4を4−4にそ
れぞれ出力する。また、セレクタ30−1〜8に
よりレジスタ21−1〜8の値を、セレクタ31
−1〜8によりレジスタ23−1〜8の値をそれ
ぞれ出力する。これにより第3図に於けるa−4
の各部分積がレジスタ20−1〜8に、b−3の
部分和及び部分桁上りがレジスタ22−1〜8に
それぞれセツトされる。
第3マシン・サイクルの後半(第5図でのT3
−2)では、セレクタ30−1〜8によりレジス
タ20−1〜8の値を、セレクタ31−1〜8に
よりレジスタ22−1〜8の値をそれぞれ出力
し、第3図に於けるb−4の部分和及び部分桁上
りがレジスタ23−1〜8にそれぞれセツトされ
る。
−2)では、セレクタ30−1〜8によりレジス
タ20−1〜8の値を、セレクタ31−1〜8に
よりレジスタ22−1〜8の値をそれぞれ出力
し、第3図に於けるb−4の部分和及び部分桁上
りがレジスタ23−1〜8にそれぞれセツトされ
る。
第4マシン・サイクルの前半(第5図でのT4
−1)では、セレクタ31−1〜8によりレジス
タ23−1〜8の値を選択しCPA(キヤリー・プ
ロパゲート・アダー)13〜16にて部分和と部
分桁上りの加算を行い最終乗算結果を求めてレジ
スタ24〜27にセツトする。
−1)では、セレクタ31−1〜8によりレジス
タ23−1〜8の値を選択しCPA(キヤリー・プ
ロパゲート・アダー)13〜16にて部分和と部
分桁上りの加算を行い最終乗算結果を求めてレジ
スタ24〜27にセツトする。
第4マシン・サイクルの後半(第5図でのT4
−2)では、レジスタ24〜27にセツトされて
いる乗算結果の転送を行う。
−2)では、レジスタ24〜27にセツトされて
いる乗算結果の転送を行う。
以上、述べたように乗数をセレクタ3により1/
2マシン・サイクル毎に最下位8ビツトから最上
位8ビツトまで順次出力するのと同時に、被乗数
をセレクタ4により8ビツトずつ左へローテート
させて行くことにより乗算を実行して行く。
2マシン・サイクル毎に最下位8ビツトから最上
位8ビツトまで順次出力するのと同時に、被乗数
をセレクタ4により8ビツトずつ左へローテート
させて行くことにより乗算を実行して行く。
第6図は第1図に於ける8ビツト乗算器5の構
成を示している。8ビツト乗算器5は、8ビツト
乗数3−1をデコードして4種類の倍数101を出
力するデコーダ100、デコーダ100からの倍
数101と8ビツトの被乗数に基づいた4つの部分
積110−1〜4を作成するマルチプル・ゲート
110及びマルチプル・ゲート110からの4つ
の部分積110〜1〜4を加算して16ビツトの和
成分5−1及び桁上り成分5−2から成る部分積
を作成する4入力CSA120から構成される。
尚、第1図に於ける8ビツト乗算器6〜8の構成
は8ビツト乗算器5と全く同じなので説明は省
く。
成を示している。8ビツト乗算器5は、8ビツト
乗数3−1をデコードして4種類の倍数101を出
力するデコーダ100、デコーダ100からの倍
数101と8ビツトの被乗数に基づいた4つの部分
積110−1〜4を作成するマルチプル・ゲート
110及びマルチプル・ゲート110からの4つ
の部分積110〜1〜4を加算して16ビツトの和
成分5−1及び桁上り成分5−2から成る部分積
を作成する4入力CSA120から構成される。
尚、第1図に於ける8ビツト乗算器6〜8の構成
は8ビツト乗算器5と全く同じなので説明は省
く。
第7図は第1図に於けるCSA9の構成を示し
ている。CSA9は半マシン・サイクル前に作成
された部分積の和成分53,56と桁上り成分5
4,57及び部分和51、部分桁上り52を入力
とする6入力CSA200とCSA200により部
分積56〜57と部分和51及び部分桁上り52
とを加算した値201に基づき桁上り信号91−
2を作成するCLA(キヤリー・ルツク・アヘツド
回路)210から構成される。図に於いて信号線
91−1はCSA9からCSA10への桁上り、信
号線94−1はCSA12からCSA9への桁上り
を知らせるためのものである。また、第1図に於
けるCSA10〜12の構成はCSA9と全く同じ
である。
ている。CSA9は半マシン・サイクル前に作成
された部分積の和成分53,56と桁上り成分5
4,57及び部分和51、部分桁上り52を入力
とする6入力CSA200とCSA200により部
分積56〜57と部分和51及び部分桁上り52
とを加算した値201に基づき桁上り信号91−
2を作成するCLA(キヤリー・ルツク・アヘツド
回路)210から構成される。図に於いて信号線
91−1はCSA9からCSA10への桁上り、信
号線94−1はCSA12からCSA9への桁上り
を知らせるためのものである。また、第1図に於
けるCSA10〜12の構成はCSA9と全く同じ
である。
第8図は第7図に於ける6入力CSA200の
1桁分の構成を示しており、FA(フル・アダー)
200〜223、セレクタ230〜231から成
る。同図に於いて信号線51−1,52−1,5
3−1,54−1,55−1,56−1及び57
−1は第7図に於ける信号線51〜57内のそれ
ぞれ1ビツトを示している。また、信号線CINは
右隣りからの桁上りであり信号線COUTは左隣
りへの桁上げである。さらに、信号線9−1a及
び9−2aは第7図に於ける信号線9−1及び9
−2の1ビツト分を示している。
1桁分の構成を示しており、FA(フル・アダー)
200〜223、セレクタ230〜231から成
る。同図に於いて信号線51−1,52−1,5
3−1,54−1,55−1,56−1及び57
−1は第7図に於ける信号線51〜57内のそれ
ぞれ1ビツトを示している。また、信号線CINは
右隣りからの桁上りであり信号線COUTは左隣
りへの桁上げである。さらに、信号線9−1a及
び9−2aは第7図に於ける信号線9−1及び9
−2の1ビツト分を示している。
FA220及び221では第7図に於ける入力
データ201の1ビツト分を常に作成している。
また、セレクタ230及び231は第3図に於け
る斜視部分の桁上りを算出する場合にも、FA2
22及び223での演算が正しく行われるように
FA221からの入力を強制的に0にするのに用
いる。
データ201の1ビツト分を常に作成している。
また、セレクタ230及び231は第3図に於け
る斜視部分の桁上りを算出する場合にも、FA2
22及び223での演算が正しく行われるように
FA221からの入力を強制的に0にするのに用
いる。
次に、本発明の一実施例を第9図〜第12図を
用いて説明する。
用いて説明する。
第9図は本発明を用いた32ビツトの乗算回路を
含む演算処理装置である。演算処理装置はレジス
タ・フアイル・エレメント(RPE)1100〜
1400とシフタ、ALU及び乗算回路を含むプ
ロセツサエレメント(PE)1500〜1800
とから成る。
含む演算処理装置である。演算処理装置はレジス
タ・フアイル・エレメント(RPE)1100〜
1400とシフタ、ALU及び乗算回路を含むプ
ロセツサエレメント(PE)1500〜1800
とから成る。
通常の演算処理はRFE1100〜1400A
及びBポートから読出した2つのデータに対する
演算をPE1500〜1800内のシフタ及び
ALUで行い、その演算結果をRFE1100〜1
400に格納するという手順で実行する。
及びBポートから読出した2つのデータに対する
演算をPE1500〜1800内のシフタ及び
ALUで行い、その演算結果をRFE1100〜1
400に格納するという手順で実行する。
次に第9図の乗算実行時の動作を第10図を用
いて説明する。
いて説明する。
ここで、簡単のため被乗数の最下位バイトから
最上位バイトまでを順にa0,a1,a2及びa3と呼び
同様に乗数も最下位バイトから順にb0,b1,b2,
b3と呼ぶこととする。
最上位バイトまでを順にa0,a1,a2及びa3と呼び
同様に乗数も最下位バイトから順にb0,b1,b2,
b3と呼ぶこととする。
まず、乗算の第1マシン・サイクルでは、
RFE1100〜1400のAポートから被乗数
を続出し信号線1100−Aにa0,1200−A
にa1,1300−Aにa2,及び1400−Aにa3
を出力する。また、Bポートからは乗数を読出し
信号線1100−Bにb0,1200−Bにb1,1
300−Bにb2及び1300−Bにb3を出力す
る。(第10図に於けるT1−1及びT1−2)
このとき、被乗数a0〜a3をそれぞれ左隣りのRFE
へ送り被乗数用レジスタにラツチする。(RFE1
400の左隣りはRFE1100とする。)また、
乗数b0〜b3はPE1500〜1800内の乗数用
レジスタにラツチする。
RFE1100〜1400のAポートから被乗数
を続出し信号線1100−Aにa0,1200−A
にa1,1300−Aにa2,及び1400−Aにa3
を出力する。また、Bポートからは乗数を読出し
信号線1100−Bにb0,1200−Bにb1,1
300−Bにb2及び1300−Bにb3を出力す
る。(第10図に於けるT1−1及びT1−2)
このとき、被乗数a0〜a3をそれぞれ左隣りのRFE
へ送り被乗数用レジスタにラツチする。(RFE1
400の左隣りはRFE1100とする。)また、
乗数b0〜b3はPE1500〜1800内の乗数用
レジスタにラツチする。
第2マシン・サイクルの前半(第10図でのT
2−1)ではRFE1100〜1400のAポー
トには被乗数を左へ1バイトだけローテートした
値を、Bポートには半マシン・サイクル前にAポ
ートに出力していた被乗数の値をそれぞれ出力す
る。また、PE1500〜1800では半マシ
ン・サイクル前にラツチした乗数をそれぞれ右隣
りのPEへ送ることにより乗数の右1バイト・シ
フトを行う。そしてPE1500から出力される
乗数1バイト(b0)は信号線1501によりPE
1500〜1800に送られる。PE1500〜
1800内の乗算回路はAポート及びポートから
入力される被乗数と信号線1501から入力され
る乗数との乗算を実行する。
2−1)ではRFE1100〜1400のAポー
トには被乗数を左へ1バイトだけローテートした
値を、Bポートには半マシン・サイクル前にAポ
ートに出力していた被乗数の値をそれぞれ出力す
る。また、PE1500〜1800では半マシ
ン・サイクル前にラツチした乗数をそれぞれ右隣
りのPEへ送ることにより乗数の右1バイト・シ
フトを行う。そしてPE1500から出力される
乗数1バイト(b0)は信号線1501によりPE
1500〜1800に送られる。PE1500〜
1800内の乗算回路はAポート及びポートから
入力される被乗数と信号線1501から入力され
る乗数との乗算を実行する。
以下、同様に第10図T2−2,T3−1,T
3−2ではREF1100〜1400のAポート
及びBポートに半々マシン・サイクル前に出力し
ていた被乗数に対してそれぞれ左へ1バイトずつ
ローテートした値を、信号線1501には乗数を
1バイトずつ右へシフトして行つたときPE15
00内の乗数用レジスタにラツチされた値をそれ
ぞれ順に出力し、PE1500〜1800内の乗
算回路で乗算を実行して行く。
3−2ではREF1100〜1400のAポート
及びBポートに半々マシン・サイクル前に出力し
ていた被乗数に対してそれぞれ左へ1バイトずつ
ローテートした値を、信号線1501には乗数を
1バイトずつ右へシフトして行つたときPE15
00内の乗数用レジスタにラツチされた値をそれ
ぞれ順に出力し、PE1500〜1800内の乗
算回路で乗算を実行して行く。
第4マシン・サイクルではPE1500〜18
00内の乗算回路にて最後の部分和と部分桁上り
を求めてALU入力用レジスタへセツトし、ALU
に対し部分和と部分桁上りとの加算を指示する。
00内の乗算回路にて最後の部分和と部分桁上り
を求めてALU入力用レジスタへセツトし、ALU
に対し部分和と部分桁上りとの加算を指示する。
第5マシン・サイクルでは、ALUでの加算に
より求まつた乗算結果をRFE1100〜140
0にセツトし乗算を終了する。
より求まつた乗算結果をRFE1100〜140
0にセツトし乗算を終了する。
第11図は第9図内RFE1100の構成を示
している。(RFE1200〜1400の構成も全
く同様である。)RFE1100は、8ビツト幅の
レジスタ・フアイル1100、Aポート読出し用
レジスタ1120、Bポート読出し用レジスタ1
121、Aポート出力被乗数用レジスタ1140
及び1141、Bポート出力被乗数用レジスタ1
130及び1131、2対1セレクタ1150,
1160,1170,1180及び1190から
成る。ここで、レジスタ1120,1121,1
130及び1140はマシン・サイクルの前半に
スルーとなるスルー・ラツチ、レジスタ110
0,1131及び1141はマシン・サイクルの
後半にスルーとなるスルー・ラツチとする。
している。(RFE1200〜1400の構成も全
く同様である。)RFE1100は、8ビツト幅の
レジスタ・フアイル1100、Aポート読出し用
レジスタ1120、Bポート読出し用レジスタ1
121、Aポート出力被乗数用レジスタ1140
及び1141、Bポート出力被乗数用レジスタ1
130及び1131、2対1セレクタ1150,
1160,1170,1180及び1190から
成る。ここで、レジスタ1120,1121,1
130及び1140はマシン・サイクルの前半に
スルーとなるスルー・ラツチ、レジスタ110
0,1131及び1141はマシン・サイクルの
後半にスルーとなるスルー・ラツチとする。
通常を演算処理ではセレクタ1180及び11
90によりレジスタ・フアイル読出し用レジスタ
1120及び1121の値を選択し信号線110
0−A及び1100−Bにそれぞれ出力し、信号
線1500−CによりPE1500での演算結果
を読込む。
90によりレジスタ・フアイル読出し用レジスタ
1120及び1121の値を選択し信号線110
0−A及び1100−Bにそれぞれ出力し、信号
線1500−CによりPE1500での演算結果
を読込む。
次に乗算処理等の動作を説明する。まず、乗算
の第1マシン・サイクル前半(第10図でのT1
−1)ではレジスタ・フアイル1100のAポー
トより被乗数(a0)をBポートより乗数(b0)を
読出しレジスタ1120及び1121にそれぞれ
ラツチする。このとき、セレクタ1150ではレ
ジスタ・フアイル1110のAポート出力側を選
択しレジスタ1140にラツチする。また、セレ
クタ1180及び1190ではレジラスタ112
0及び1121の出力をそれぞれ選択しておく。
の第1マシン・サイクル前半(第10図でのT1
−1)ではレジスタ・フアイル1100のAポー
トより被乗数(a0)をBポートより乗数(b0)を
読出しレジスタ1120及び1121にそれぞれ
ラツチする。このとき、セレクタ1150ではレ
ジスタ・フアイル1110のAポート出力側を選
択しレジスタ1140にラツチする。また、セレ
クタ1180及び1190ではレジラスタ112
0及び1121の出力をそれぞれ選択しておく。
第1マシン・サイクルの後半(第10図でのT
1−2)では、セレクタ1150によりREF1
140Aポートの出力1140−A(a3)側を選
択しレジスタ1141にラツチする。また、セレ
クタ1160によりレジスタ1140の出力
(a0)を選択しレジスタ1131でラツチする。
1−2)では、セレクタ1150によりREF1
140Aポートの出力1140−A(a3)側を選
択しレジスタ1141にラツチする。また、セレ
クタ1160によりレジスタ1140の出力
(a0)を選択しレジスタ1131でラツチする。
第2及び第3マシン・サイクルでは、セレクタ
1150により信号線1400−Aを、セレクタ
1180によりセレクタ1160の出力を、セレ
クタ1190によりセレクタ1170の出力をそ
れぞれ選択し、セレクタ1160及び1170に
よりマシン・サイクルの前半にはレジスタ114
1及び1131の出力を、マシン・サイクルの後
半にはレジスタ1140及び1130の出力をそ
れぞれ選択することにより、信号線1100−A
及び1100−Bに第10図のT2−1〜T3−
2に示すような出力を得ることができる。
1150により信号線1400−Aを、セレクタ
1180によりセレクタ1160の出力を、セレ
クタ1190によりセレクタ1170の出力をそ
れぞれ選択し、セレクタ1160及び1170に
よりマシン・サイクルの前半にはレジスタ114
1及び1131の出力を、マシン・サイクルの後
半にはレジスタ1140及び1130の出力をそ
れぞれ選択することにより、信号線1100−A
及び1100−Bに第10図のT2−1〜T3−
2に示すような出力を得ることができる。
次に、第12図は第9図に於けるPE1500
の構成を示している。(PE1600〜1800の
構成も全く同じである。)PE1500は、Aポー
ト入力用レジスタ1512、Bポート入力用レジ
スタ1513、左右へ8ビツト・シフト可能なシ
フタ(SH)1514、8ビツトALU1515、
ALU出力をラツチするレジスタ1516、乗数
用レジスタ1551及び1512、シフト操作の
ための入力用ゲート1518及び1521、出力
用ゲート1519,1520及び1554、8ビ
ツト乗算器1555及び1556とそれぞれの出
力をラツチするレジスタ、6入力CSA1557
とその出力をラツチするレジスタ、セレクタ15
10,1511,1550及び1553等から成
る。このうち、8ビツト乗算器1555及び15
56は第6図により、6入力CSA1557は第
7図及び第8図により説明したものと全く同じ構
成である。
の構成を示している。(PE1600〜1800の
構成も全く同じである。)PE1500は、Aポー
ト入力用レジスタ1512、Bポート入力用レジ
スタ1513、左右へ8ビツト・シフト可能なシ
フタ(SH)1514、8ビツトALU1515、
ALU出力をラツチするレジスタ1516、乗数
用レジスタ1551及び1512、シフト操作の
ための入力用ゲート1518及び1521、出力
用ゲート1519,1520及び1554、8ビ
ツト乗算器1555及び1556とそれぞれの出
力をラツチするレジスタ、6入力CSA1557
とその出力をラツチするレジスタ、セレクタ15
10,1511,1550及び1553等から成
る。このうち、8ビツト乗算器1555及び15
56は第6図により、6入力CSA1557は第
7図及び第8図により説明したものと全く同じ構
成である。
通常の演算処理では、セレクタ1510及び1
511により信号線1500−A及び1500−
Bを選択しレジスタ1512及び1513にラツ
チする。そして、SH1514によりシフト操作
を行つた後にALU1515で演算を実行しその
結果をレジスタ1516にラツチする。ラツチし
たデータは信号線1500−CによりRFE11
00へ送る。
511により信号線1500−A及び1500−
Bを選択しレジスタ1512及び1513にラツ
チする。そして、SH1514によりシフト操作
を行つた後にALU1515で演算を実行しその
結果をレジスタ1516にラツチする。ラツチし
たデータは信号線1500−CによりRFE11
00へ送る。
次に乗算処理時の動作を説明する。まず、第1
マシン・サイクルの後半(第10図でのT1−
2)では、信号線1100−Bにより送られて来
る乗数(b0)はセレクタ1550にて選択しレジ
スタ1552にラツチする。第2及び第3マシ
ン・サイクルでは、ゲート1519及び1520
をハイ・インピーダンス状態、ゲート1554を
出力可能状態、セレクタ1550をPE1600
からのデータを選択する状態とし、セレクタ15
53によりマシン・サイクルの前半はレジスタ1
552の出力を、マスン・サイクルの後半はレジ
スタ1551の出力を選択することにより、信号
線1501に第10図のT2−1〜T3−2に示
すような出力を得ることができる。
マシン・サイクルの後半(第10図でのT1−
2)では、信号線1100−Bにより送られて来
る乗数(b0)はセレクタ1550にて選択しレジ
スタ1552にラツチする。第2及び第3マシ
ン・サイクルでは、ゲート1519及び1520
をハイ・インピーダンス状態、ゲート1554を
出力可能状態、セレクタ1550をPE1600
からのデータを選択する状態とし、セレクタ15
53によりマシン・サイクルの前半はレジスタ1
552の出力を、マスン・サイクルの後半はレジ
スタ1551の出力を選択することにより、信号
線1501に第10図のT2−1〜T3−2に示
すような出力を得ることができる。
以上のような操作により8ビツト乗算器155
5及び1556、6入力CSA1557から成る
乗算回路にて第3図に示すような乗算処理が可能
となる。
5及び1556、6入力CSA1557から成る
乗算回路にて第3図に示すような乗算処理が可能
となる。
第4マシン・サイクルでは、6入力CSA15
57にて求めた部分和及び部分桁上りをセレクタ
1510及び1511により選択し、ALU15
15で加算することにより乗算結果を得ることが
できる。
57にて求めた部分和及び部分桁上りをセレクタ
1510及び1511により選択し、ALU15
15で加算することにより乗算結果を得ることが
できる。
本発明によれば、一度にnビツト処理を行う乗
算回路において従来方式に比べて半分近いシフト
数で済むので、乗算回路を複数のLSIで構成する
のに好適である。また、従来1マシン・サイクル
かけて処理していた部分積演算をパイプライン化
することにより1/2マシン・サイクルで実行する
ことができるので高速な乗算処理が可能となる。
算回路において従来方式に比べて半分近いシフト
数で済むので、乗算回路を複数のLSIで構成する
のに好適である。また、従来1マシン・サイクル
かけて処理していた部分積演算をパイプライン化
することにより1/2マシン・サイクルで実行する
ことができるので高速な乗算処理が可能となる。
第1図は本発明による乗算回路の全体構成図、
第2図は従来の乗算方式による処理手順を示す
図、第3図は本発明を用いた場合の乗算処理手順
を示す図、第4図は本発明による乗算処理のタイ
ミングチヤート、第5図は第1図の動作説明図、
第6図は第1図に於ける8ビツト乗算器5の説明
図、第7図は第1図に於けるCSA9の説明図、
第8図は第7図に於ける6入力CSA200の説
明図、第9図〜第12図は本発明の他の一実施例
を示す図である。 1……被乗数をラツチするレジスタ、2……乗
数をラツチするレジスタ、3……4対1セレク
タ、4……被乗数を左へローテートさせるための
セレクタ、5〜8……8ビツト乗算器、9〜12
……6入力CSA、13〜16……CPA、24〜
27……乗算結果をラツチするレジスタ。
第2図は従来の乗算方式による処理手順を示す
図、第3図は本発明を用いた場合の乗算処理手順
を示す図、第4図は本発明による乗算処理のタイ
ミングチヤート、第5図は第1図の動作説明図、
第6図は第1図に於ける8ビツト乗算器5の説明
図、第7図は第1図に於けるCSA9の説明図、
第8図は第7図に於ける6入力CSA200の説
明図、第9図〜第12図は本発明の他の一実施例
を示す図である。 1……被乗数をラツチするレジスタ、2……乗
数をラツチするレジスタ、3……4対1セレク
タ、4……被乗数を左へローテートさせるための
セレクタ、5〜8……8ビツト乗算器、9〜12
……6入力CSA、13〜16……CPA、24〜
27……乗算結果をラツチするレジスタ。
1 被除数の指数部および仮数部をそれぞれ保持
する第1および第2のレジスタと、除数の指数部
および仮数部をそれぞれ保持する第3および第4
のレジスタと、上記第1および第3のレジスタの
指数部の差を求める第1の演算手段と、上記第2
および第4のレジスタの符号が同一かどうかを判
定する比較手段と、該比較手段の比較結果に応じ
て、上記第2および第4のレジスタの内容の加算
または減算を行う第2の演算手段と、上記第1の
演算手段での演算結果に応じた回数だけ、上記第
2の演算手段での演算を繰り返し、その中間過程
で被除数の仮数部を上記第2の演算手段での演算
結果で更新し、かつ、被除数の仮数部の値を桁移
動させるようにする制御手段とを備えたことを特
徴とする情報処理装置。
する第1および第2のレジスタと、除数の指数部
および仮数部をそれぞれ保持する第3および第4
のレジスタと、上記第1および第3のレジスタの
指数部の差を求める第1の演算手段と、上記第2
および第4のレジスタの符号が同一かどうかを判
定する比較手段と、該比較手段の比較結果に応じ
て、上記第2および第4のレジスタの内容の加算
または減算を行う第2の演算手段と、上記第1の
演算手段での演算結果に応じた回数だけ、上記第
2の演算手段での演算を繰り返し、その中間過程
で被除数の仮数部を上記第2の演算手段での演算
結果で更新し、かつ、被除数の仮数部の値を桁移
動させるようにする制御手段とを備えたことを特
徴とする情報処理装置。
Claims (1)
- ローテートさせる手段を被乗数セツト用レジスタ
の出力側に設けたことを特徴とする乗算回路。
Priority Applications (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP60223624A JPS6284335A (ja) | 1985-10-09 | 1985-10-09 | 乗算回路 |
| US06/916,695 US4811269A (en) | 1985-10-09 | 1986-10-08 | Bit slice multiplication circuit |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP60223624A JPS6284335A (ja) | 1985-10-09 | 1985-10-09 | 乗算回路 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPS6284335A JPS6284335A (ja) | 1987-04-17 |
| JPH0368413B2 true JPH0368413B2 (ja) | 1991-10-28 |
Family
ID=16801123
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP60223624A Granted JPS6284335A (ja) | 1985-10-09 | 1985-10-09 | 乗算回路 |
Country Status (2)
| Country | Link |
|---|---|
| US (1) | US4811269A (ja) |
| JP (1) | JPS6284335A (ja) |
Families Citing this family (41)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US4947364A (en) * | 1985-10-23 | 1990-08-07 | Hewlett-Packard Company | Method in a computing system for performing a multiplication |
| US5165039A (en) * | 1986-03-28 | 1992-11-17 | Texas Instruments Incorporated | Register file for bit slice processor with simultaneous accessing of plural memory array cells |
| US4941121A (en) * | 1988-04-01 | 1990-07-10 | Digital Equipment Corporation | Apparatus for high performance multiplication |
| GB8808569D0 (en) * | 1988-04-12 | 1988-05-11 | Texas Instruments Ltd | Improvements in/relating to digital signal processors |
| US4939687A (en) * | 1988-11-01 | 1990-07-03 | General Electric Company | Serial-parallel multipliers using serial as well as parallel addition of partial products |
| CA1311063C (en) * | 1988-12-16 | 1992-12-01 | Tokumichi Murakami | Digital signal processor |
| FR2656706A1 (fr) * | 1989-12-29 | 1991-07-05 | Radiotechnique Compelec | Organe de traitement arithmetique a associer a une unite centrale de microprocesseur. |
| JPH0594546A (ja) * | 1991-02-05 | 1993-04-16 | American Teleph & Telegr Co <Att> | デジタルプロセツサ |
| US5241493A (en) * | 1991-12-16 | 1993-08-31 | International Business Machines Corporation | Floating point arithmetic unit with size efficient pipelined multiply-add architecture |
| US5325320A (en) * | 1992-05-01 | 1994-06-28 | Seiko Epson | Area efficient multiplier for use in an integrated circuit |
| DE69329260T2 (de) * | 1992-06-25 | 2001-02-22 | Canon K.K., Tokio/Tokyo | Gerät zum Multiplizieren von Ganzzahlen mit vielen Ziffern |
| US5509129A (en) | 1993-11-30 | 1996-04-16 | Guttag; Karl M. | Long instruction word controlling plural independent processor operations |
| US5586070A (en) * | 1994-08-03 | 1996-12-17 | Chromatic Research, Inc. | Structure and method for embedding two small multipliers in a larger multiplier |
| WO1996017293A1 (en) * | 1994-12-01 | 1996-06-06 | Intel Corporation | A microprocessor having a multiply operation |
| JP3277089B2 (ja) * | 1995-02-14 | 2002-04-22 | 株式会社東芝 | 乗算器及び積和演算装置 |
| US6643765B1 (en) * | 1995-08-16 | 2003-11-04 | Microunity Systems Engineering, Inc. | Programmable processor with group floating point operations |
| US5764558A (en) * | 1995-08-25 | 1998-06-09 | International Business Machines Corporation | Method and system for efficiently multiplying signed and unsigned variable width operands |
| US6385634B1 (en) * | 1995-08-31 | 2002-05-07 | Intel Corporation | Method for performing multiply-add operations on packed data |
| JP3711147B2 (ja) * | 1995-08-31 | 2005-10-26 | インテル・コーポレーション | パック・データを処理する1組の命令 |
| US7395298B2 (en) * | 1995-08-31 | 2008-07-01 | Intel Corporation | Method and apparatus for performing multiply-add operations on packed data |
| US5907842A (en) * | 1995-12-20 | 1999-05-25 | Intel Corporation | Method of sorting numbers to obtain maxima/minima values with ordering |
| DE69715570T2 (de) * | 1996-11-27 | 2003-08-07 | Texas Instruments Inc., Dallas | Multipliziereinheit |
| US5889691A (en) * | 1997-01-06 | 1999-03-30 | Texas Instruments Incorporated | Apparatus and method for a multiplier unit with high component utilization |
| US6055619A (en) * | 1997-02-07 | 2000-04-25 | Cirrus Logic, Inc. | Circuits, system, and methods for processing multiple data streams |
| US6230257B1 (en) * | 1998-03-31 | 2001-05-08 | Intel Corporation | Method and apparatus for staggering execution of a single packed data instruction using the same circuit |
| US6230253B1 (en) * | 1998-03-31 | 2001-05-08 | Intel Corporation | Executing partial-width packed data instructions |
| US6523055B1 (en) | 1999-01-20 | 2003-02-18 | Lsi Logic Corporation | Circuit and method for multiplying and accumulating the sum of two products in a single cycle |
| US6611856B1 (en) | 1999-12-23 | 2003-08-26 | Intel Corporation | Processing multiply-accumulate operations in a single cycle |
| AU2002339867A1 (en) | 2001-09-04 | 2003-03-18 | Microunity Systems Engineering, Inc. | System and method for performing multiplication |
| US7430578B2 (en) * | 2001-10-29 | 2008-09-30 | Intel Corporation | Method and apparatus for performing multiply-add operations on packed byte data |
| AU2003221680A1 (en) * | 2002-04-09 | 2003-10-27 | The Research Foundation Of State University Of New York | Multiplier-based processor-in-memory architectures for image and graphics processing |
| US7401109B2 (en) * | 2002-08-06 | 2008-07-15 | The State Of Oregon Acting By And Through The State Board Of Higher Education On Behalf Of Oregon State University | Multiplication of multi-precision numbers having a size of a power of two |
| US7447310B2 (en) * | 2002-08-06 | 2008-11-04 | The State Of Oregon Acting By And Through The State Board Of Higher Education On Behalf Of Oregon State University | Lean multiplication of multi-precision numbers over GF(2m) |
| GB2396708B (en) | 2002-12-05 | 2006-06-21 | Micron Technology Inc | Hybrid arithmetic logic unit |
| US8073892B2 (en) | 2005-12-30 | 2011-12-06 | Intel Corporation | Cryptographic system, method and multiplier |
| US7519646B2 (en) * | 2006-10-26 | 2009-04-14 | Intel Corporation | Reconfigurable SIMD vector processing system |
| US20080140753A1 (en) * | 2006-12-08 | 2008-06-12 | Vinodh Gopal | Multiplier |
| US9696975B2 (en) * | 2010-09-03 | 2017-07-04 | International Business Machines Corporation | Allocating register halves independently |
| US10778482B2 (en) | 2019-02-12 | 2020-09-15 | Texas Instruments Incorporated | Bit slicer circuit for S-FSK receiver, integrated circuit, and method associated therewith |
| US11941407B2 (en) * | 2019-05-20 | 2024-03-26 | Gsi Technology Inc. | Pipeline architecture for bitwise multiplier-accumulator (MAC) |
| CN114089948A (zh) * | 2021-11-24 | 2022-02-25 | 支付宝(杭州)信息技术有限公司 | 乘法执行方法、数据准备方法及装置 |
Family Cites Families (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS58101343A (ja) * | 1981-12-11 | 1983-06-16 | Fujitsu Ltd | 乗算方式 |
| US4594679A (en) * | 1983-07-21 | 1986-06-10 | International Business Machines Corporation | High speed hardware multiplier for fixed floating point operands |
| JPS6068432A (ja) * | 1983-09-22 | 1985-04-19 | Hitachi Ltd | キヤリセ−ブアダ−の符号生成方式 |
| JP3191233B2 (ja) * | 1992-07-14 | 2001-07-23 | コニカ株式会社 | 自動原稿搬送装置及び方法 |
-
1985
- 1985-10-09 JP JP60223624A patent/JPS6284335A/ja active Granted
-
1986
- 1986-10-08 US US06/916,695 patent/US4811269A/en not_active Expired - Fee Related
Also Published As
| Publication number | Publication date |
|---|---|
| US4811269A (en) | 1989-03-07 |
| JPS6284335A (ja) | 1987-04-17 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JPH0368413B2 (ja) | ||
| JP3578502B2 (ja) | 単一プロセッサにおいて並列データ処理を実行する方法 | |
| Antelo et al. | Improved 64-bit radix-16 booth multiplier based on partial product array height reduction | |
| JP5273866B2 (ja) | 乗算器/アキュムレータ・ユニット | |
| CN102386912B (zh) | 用于可编程逻辑器件的专门处理块 | |
| US6647404B2 (en) | Double precision floating point multiplier having a 32-bit booth-encoded array multiplier | |
| EP0517429A2 (en) | CPU with integrated multiply/accumulate unit | |
| CN102819520A (zh) | 具有嵌入式浮点结构的数字信号处理模块 | |
| EP1049025B1 (en) | Method and apparatus for arithmetic operations | |
| Kinniment | An evaluation of asynchronous addition | |
| Miller et al. | A reconfigurable integrated circuit for high performance computer arithmetic | |
| JPWO1999038088A1 (ja) | 演算装置及び演算方法 | |
| US5150322A (en) | Mixed-radix serial/parallel multipliers | |
| Chong et al. | Configurable multimode embedded floating-point units for FPGAs | |
| US3840727A (en) | Binary multiplication by addition with non-verlapping multiplier recording | |
| Yamada et al. | A 13.3 ns double-precision floating-point ALU and multiplier | |
| Unwala et al. | Superpipelined adder designs | |
| US6484193B1 (en) | Fully pipelined parallel multiplier with a fast clock cycle | |
| Smith et al. | Radix-4 modules for high-performance bit-serial computation | |
| US5119325A (en) | Multiplier having a reduced number of partial product calculations | |
| Cini et al. | MAC unit for reconfigurable systems using multi-operand adders with double carry-save encoding | |
| US20030233384A1 (en) | Arithmetic apparatus for performing high speed multiplication and addition operations | |
| Amin et al. | High-radix multiplier-dividers: Theory, design, and hardware | |
| Myjak et al. | Pipelined multipliers for reconfigurable hardware | |
| Basir et al. | Speed and Area Efficient FXP Adders and Multipliers: A Comparative Analysis for LNS System |