JPS6226723B2 - - Google Patents

Info

Publication number
JPS6226723B2
JPS6226723B2 JP57011626A JP1162682A JPS6226723B2 JP S6226723 B2 JPS6226723 B2 JP S6226723B2 JP 57011626 A JP57011626 A JP 57011626A JP 1162682 A JP1162682 A JP 1162682A JP S6226723 B2 JPS6226723 B2 JP S6226723B2
Authority
JP
Japan
Prior art keywords
input
register
adder
bits
block
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
Application number
JP57011626A
Other languages
English (en)
Other versions
JPS58129653A (ja
Inventor
Masaharu Fukuda
Yoshio Ooshima
Suketaka Ishikawa
Tooru Ootsuki
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.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP57011626A priority Critical patent/JPS58129653A/ja
Priority to GB08302059A priority patent/GB2115960B/en
Priority to US06/461,257 priority patent/US4543641A/en
Priority to DE19833302885 priority patent/DE3302885A1/de
Publication of JPS58129653A publication Critical patent/JPS58129653A/ja
Publication of JPS6226723B2 publication Critical patent/JPS6226723B2/ja
Granted 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/491Computations with decimal numbers radix 12 or 20.
    • G06F7/4915Multiplying; Dividing

Landscapes

  • Engineering & Computer Science (AREA)
  • Computing Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Complex Calculations (AREA)

Description

【発明の詳細な説明】 本発明は、特に乗算命令の実行時間の短縮した
乗算方式に関する。
乗算機能は、原理的には被乗数を乗数の各桁に
対応して1ビツトずつシフトして加算することを
繰り返し行えばよい。従つて、もし1サイクルに
乗数を2ビツト以上処理すれば加算回路を少なく
することができ高速化が可能となる。
しかし従来の乗算方式では、被乗数の倍数をあ
らかじめ作成し、各加算サイクルで乗数の各桁に
対応する被乗数の倍数を選択し、前回までの加算
サイクルの累算結果に加算していた。
このため、乗数走査ブロツクサイズ(nの大き
さ)の増大に伴い、加算すべき被乗数の倍数が多
くなり、この倍数を作成するためのステージによ
る時間的遅れが大きくなる。
本発明の目的は、上記の如き従来の問題点を除
去するものであり、特別な倍数作成ステージによ
り被乗数の倍数を作成することなく、3入力加算
器のハードウエアを有効に使い、複数ビツト走査
による乗算を高速に実施する乗算方式を提供する
ことにある。
本発明は、被乗数を最下位ビツトからn(nは
2以上の整数)ビツト毎に分割してできるk個の
ブロツクの各々に対してnビツトで示される値を
乗じて得られる2nビツトより成るk個のブロツ
ク積を得る第1の手段と、3入力加算器と、前記
k個のブロツク積のうち最上位のブロツク積の下
位nビツトと最上位のブロツク積の次のブロツク
積をとばして一つ置きのブロツク積とを前記3入
力加算器の一つの入力端に入力する第2の手段
と、最上位のブロツク積の次のブロツク積から一
つ置きのブロツク積を前記3入力加算器の他の一
つの入力端に入力する第3の手段と、m−1サイ
クル目の加算結果を保持し前記3入力加算器の他
の一つの入力端に入力する第4の手段と、前記3
入力加算器のmサイクル目の加算のキヤリーと前
記最上位のブロツク積の上位nビツトとを加算す
る副加算器と、前記3入力加算器のmサイクル目
の加算の結果を前記第3の手段の下位ビツトに前
記副加算器のmサイクル目の加算の結果を上位ビ
ツトに夫々セツトする第5の手段とを有すること
を特徴とする乗算方式を提供するものである。
次に本発明の実施例につき図面を用いて詳細に
説明する。
図は本発明の一実施例を示すブロツク図であ
る。本実施例では、被乗数のブロツク長(n)を
4とし、3入力加算器として4バイトの2進化10
進3入力加算器を用いるものとする。
図において、被乗数を保持するレジスタ1を最
下位ビツトから4ビツト毎に分割してできる8個
のブロツクの各々に対して、乗数を保持するレジ
スタ2の下位4ビツトを乗じて得られる。8ビツ
トより成る8個のブロツク積を得るブロツク積生
成回路3がある。そしてこの8個のブロツク積を
順次1つおきに取り出してできる2組のブロツク
積の群のうち、下位より奇数番目のブロツク積か
らなる4個のブロツク積の群は、2進化10進3入
力加算器(以下3入力加算器と略す)8の1つの
入力レジスタ5に入力され、下位より偶数番目の
ブロツク積からなる4個のブロツク積の群は、前
記3入力加算器8の1つの入力レジスタ6の下位
4ビツトを除く上位部分に入力される。ただし前
記ブロツク積生成回路3より得られる最上位のブ
ロツク積の上位4ビツトは演算途中の保護桁をセ
ツトしておくガドーデイジツトレジスタ7にも入
力される。
他方、前記3入力加算器8の1つの入力レジス
タ4の上位4ビツトを除く下位部分に対しては、
前記3入力加算器8の出力レジスタ9の下位4ビ
ツトを除く上位部分が入力され、該入力レジスタ
4の上位4ビツトに対しては、前記3入力加算器
8のキヤリーレジスタ10と前記ガードデイジツ
トレジスタ7を加算器12で加算した値が入力さ
れる。
前記乗数レジスタ2の内容はシフト回路11を
通じて4ビツト右にシフトされ、乗数レジスタ2
の上位4ビツトに対しては、前記出力レジスタ9
の下位4ビツトが入力される。
以上の装置は次のように動作する。まず最初
に、被乗数5938を被乗数レジスタ1へ格納し乗数
79を乗数レジスタ2へ格納する10進乗算5938×79
=469102の例を考える。
1回目の加算サイクルでは、前記被乗数レジス
タ1に保持された被乗数の各ブロツク0、0、
0、0、5、9、3、8を前記乗数レジスタ2に
保持された乗数の下位のブロツク9と共にブロツ
ク積生成回路3に入力することにより、被乗数の
各ブロツク毎にブロツク積00、00、00、00、45、
81、27、72を得る。前記3入力加算器8の1つの
入力レジスタ5に対しては、下位より奇数番目の
ブロツク積00、00、81、72が、入力され、該入力
レジスタ5の内容は00008172となる。前記3入力
加算器8のもう1つの入力レジスタ6に対して
は、下位より偶数番目のブロツク積0、00、45、
27及び最下位の0が入力され、該入力レジスタ6
の内容は00045270となる。なお最下位の0は桁合
わせのためである。またガードデイジツトレジス
タ7に対しては最上位のブロツク積の上位4ビツ
トである0が入力される。
他方、前記3入力加算器8の他の1つの入力レ
ジスタ4に対しては初期値として00000000が入力
される。従つて、前記3入力加算器8の出力レジ
スタ9の内容は00053422となり、キヤリーレジス
タ10の内容は0となる。
その後、前記乗数レジスタ2の内容はシフト回
路11を通じて4ビツト右にシフトされ、該乗数
レジスタ2の最上位4ビツトに対しては、前記出
力レジスタ9の最下位の4ビツトが入力され、該
乗数レジスタ2の内容は20000007となる。
2回目の加算サイクルでは、前記被乗数レジス
タ1に保持された被乗数の各ブロツク0、0、
0、0、5、9、3、8を前記乗数レジスタ2に
保持された乗数の下位のブロツク7と共にブロツ
ク積生成回路3に入力することにより、被乗数の
各ブロツク毎にブロツク積00、00、00、00、35、
63、21、56を得る。前記3入力加算器8の1つの
入力レジスタ5に対しては、下位より奇数番目の
ブロツク積00、00、63、56が入力され、該入力レ
ジスタ5の内容は00006356となる。前記3入力加
算器8のもう1つの入力レジスタ6に対しては、
下位より偶数番目のブロツク積0、00、35、21及
び桁合わせのため最下位の0が入力され、該入力
レジスタ6の内容は00035210となる。またガード
デイジツトレジスタ7に対しては0が入力され
る。
他方、前記3入力加算器8の他の1つの入力レ
ジスタ4の上位4ビツトを除く下位部分に対して
は、前回の加算サイクルで得た加算結果すなわち
前記3入力加算器8の出力レジスタ9の下位4ビ
ツトを除く部分0005342が入力され、該入力レジ
スタ4の上位4ビツトに対しては、前記3入力加
算器8のキヤリーレジスタ10の内容0と前記ガ
ードデイジツトレジスタ7の内容0の加算結果0
が入力され、該入力レジスタ4の内容は00005342
となる。従つて、前記3入力加算器8の出力レジ
スタ9の内容は00046910となり、キヤリーレジス
タ10の内容は0となる。
本実施例では、乗数は79であるので、2回の加
算サイクルで乗算が完了し、乗算結果の積
“469102”の上位部“46910”は前記3入力加算器
8の出力レジスタ9に得られ、乗算結果の積の下
位部“2”は前記乗数レジスタ2に得られる。
なお以上において、前記のブロツク積生成回路
3の入力として、乗数レジスタ2の下位nビツト
をそのまま入力するばかりでなく、乗数をモデイ
フアイした値を入力しても良い。たとえば、10進
乗算28×6=168において、乗数6を1+5に分
割して、1回目の加算サイクルで被乗数28と乗数
をモデイフアイした値1よりブロツク積2、8を
作成して加算を行ない、2回目の加算サイクルで
被乗数28と乗数をモデイフアイした値5よりブロ
ツク積10、40を作成して加算を行ない乗算を実施
しても良い。
以上の如く、本発明によれば、3入力加算器の
入力ビツトを有効に使い、特別な倍数作成ステー
ジにより被乗数の倍数を作成することなく、複数
ビツト走査による乗算を実行できるので、倍数作
成のための時間的遅れを無くし高速に乗算を実行
できる。
【図面の簡単な説明】
図は本発明の一実施例を示すブロツク図であ
る。 1……被乗数を保持するレジスタ、2……乗数
及び積の一部を保持するレジスタ、3……ブロツ
ク積生成回路、4〜7……2進化10進3入力加算
器の入力レジスタ、7……ガードデイジツトレジ
スタ、8……2進化10進3入力加算器、9……2
進化10進3入力加算器の出力レジスタ、10……
2進化10進3入力加算器のキヤリーレジスタ、1
1……シフト回路、12……加算器。

Claims (1)

    【特許請求の範囲】
  1. 1 被乗数を最下位ビツトからn(nは2以上の
    整数)ビツト毎に分割してできるk個のブロツク
    の各々に対してnビツトで示される値を乗じて得
    られる2nビツトより成るk個のブロツク積を得
    る第1の手段と、3入力加算器と、前記k個のブ
    ロツク積のうち最上位のブロツク積の下位nビツ
    トと最上位のブロツク積の次のブロツク積をとば
    して一つ置きのブロツク積とを前記3入力加算器
    の一つの入力端に入力する第2の手段と、最上位
    のブロツク積の次のブロツク積から一つ置きのブ
    ロツク積を前記3入力加算器の他の一つの入力端
    に入力する第3の手段と、m−1サイクル目の加
    算結果を保持し前記3入力加算器の他の一つの入
    力端に入力する第4の手段と、前記3入力加算器
    のmサイクル目の加算のキヤリーと前記最上位の
    ブロツク積の上位nビツトとを加算する副加算器
    と、前記3入力加算器のmサイクル目の加算の結
    果を前記第3の手段の下位ビツトに前記副加算器
    のmサイクル目の加算の結果を上位ビツトに夫々
    セツトする第5の手段とを有することを特徴とす
    る乗算方式。
JP57011626A 1982-01-29 1982-01-29 乗算方式 Granted JPS58129653A (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP57011626A JPS58129653A (ja) 1982-01-29 1982-01-29 乗算方式
GB08302059A GB2115960B (en) 1982-01-29 1983-01-26 Multiplier
US06/461,257 US4543641A (en) 1982-01-29 1983-01-26 Multiplication device using multiple-input adder
DE19833302885 DE3302885A1 (de) 1982-01-29 1983-01-28 Verfahren und vorrichtung zur multiplikation

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP57011626A JPS58129653A (ja) 1982-01-29 1982-01-29 乗算方式

Publications (2)

Publication Number Publication Date
JPS58129653A JPS58129653A (ja) 1983-08-02
JPS6226723B2 true JPS6226723B2 (ja) 1987-06-10

Family

ID=11783133

Family Applications (1)

Application Number Title Priority Date Filing Date
JP57011626A Granted JPS58129653A (ja) 1982-01-29 1982-01-29 乗算方式

Country Status (4)

Country Link
US (1) US4543641A (ja)
JP (1) JPS58129653A (ja)
DE (1) DE3302885A1 (ja)
GB (1) GB2115960B (ja)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6011927A (ja) * 1983-07-01 1985-01-22 Hitachi Ltd 10進乗算装置
JPS60140429A (ja) * 1983-12-28 1985-07-25 Hitachi Ltd 10進乗算装置
US4947364A (en) * 1985-10-23 1990-08-07 Hewlett-Packard Company Method in a computing system for performing a multiplication
US4970676A (en) * 1989-04-04 1990-11-13 Rca Licensing Corporation Digital word-serial multiplier circuitry
JPH0833815B2 (ja) * 1990-05-14 1996-03-29 日本電気株式会社 高桁乗算装置
DE4304198A1 (de) * 1993-02-12 1994-08-18 Itt Ind Gmbh Deutsche Verfahren zur Beschleunigung der Datenverarbeitung eines Signalprozessors
KR102594656B1 (ko) * 2016-11-25 2023-10-26 삼성전자주식회사 보안 프로세서, 이를 포함하는 어플리케이션 프로세서 및 보안 프로세서의 동작 방법

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5378743A (en) * 1976-12-23 1978-07-12 Fujitsu Ltd Multiplier
JPS5386539A (en) * 1977-01-10 1978-07-31 Hitachi Ltd Arithmetic unit
JPS5672739A (en) * 1979-11-16 1981-06-17 Hitachi Ltd High-speed multiplying circuit

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3123707A (en) * 1960-03-18 1964-03-03 Computing machines
GB1196298A (en) * 1966-10-04 1970-06-24 Zentralen Inst Istchislitelna Electric Circuit for Performing the Operation 'Multiplication', Especially in Electronic Calculators
JPS54159833A (en) * 1978-06-08 1979-12-18 Hitachi Ltd Decimal multiplier

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5378743A (en) * 1976-12-23 1978-07-12 Fujitsu Ltd Multiplier
JPS5386539A (en) * 1977-01-10 1978-07-31 Hitachi Ltd Arithmetic unit
JPS5672739A (en) * 1979-11-16 1981-06-17 Hitachi Ltd High-speed multiplying circuit

Also Published As

Publication number Publication date
US4543641A (en) 1985-09-24
GB8302059D0 (en) 1983-03-02
GB2115960B (en) 1986-01-08
GB2115960A (en) 1983-09-14
JPS58129653A (ja) 1983-08-02
DE3302885A1 (de) 1983-08-18
DE3302885C2 (ja) 1988-02-11

Similar Documents

Publication Publication Date Title
US4831577A (en) Digital multiplier architecture with triple array summation of partial products
JPS60229140A (ja) 倍精度乗算器
US4965762A (en) Mixed size radix recoded multiplier
JP2597736B2 (ja) 高速乗算器
US5177703A (en) Division circuit using higher radices
JPS6226723B2 (ja)
JPH0234054B2 (ja)
US4190894A (en) High speed parallel multiplication apparatus with single-step summand reduction
JP3660075B2 (ja) 除算装置
JPS58137045A (ja) 並列乗算器
JPS622330B2 (ja)
KR0147942B1 (ko) 승산기에서의 부스 레코딩회로
EP0213854A2 (en) Fixed-Coefficient serial multiplication and digital circuits therefor
JPS6259828B2 (ja)
JP2777265B2 (ja) 高基数開平演算装置
JP2734438B2 (ja) 乗算装置
JPH0368415B2 (ja)
Cardarilli et al. Efficient modulo extraction for CRT based residue to binary converters
KR100386979B1 (ko) 갈로아체상에서 비트 직렬 승산기의 병렬화 방법 및 이를이용한 직병렬 승산기
JP3230349B2 (ja) 10進乗算器
JPS5520508A (en) Processor for division
JP2569330B2 (ja) 乗算回路
JPS63201825A (ja) 演算処理装置
JPS5958543A (ja) 高速乗算装置
JPH0754457B2 (ja) 多ビツト加算器