JPS60258644A - 乗算装置 - Google Patents

乗算装置

Info

Publication number
JPS60258644A
JPS60258644A JP59114748A JP11474884A JPS60258644A JP S60258644 A JPS60258644 A JP S60258644A JP 59114748 A JP59114748 A JP 59114748A JP 11474884 A JP11474884 A JP 11474884A JP S60258644 A JPS60258644 A JP S60258644A
Authority
JP
Japan
Prior art keywords
multiplier
circuit
bit
output
multiplication
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
JP59114748A
Other languages
English (en)
Inventor
Sakae Mashima
間嶋 栄
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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP59114748A priority Critical patent/JPS60258644A/ja
Publication of JPS60258644A publication Critical patent/JPS60258644A/ja
Pending 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

Landscapes

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

Abstract

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

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明は、符号付データの乗算装置に関し、乗算器の幅
を乗数および被乗数のデータ蔀の幅の和にとどめても全
ての演算結果が得られるようにするものである。
[従来の技術〕 周知のように計算機では数値を2値数で表わし、2値数
の左側最上位ビットを符号ビット、中間複数ビットを仮
数部例えば正規化された真値部、右端複数ビットを指数
部としたりする。符号ビットは1ピントとし、正数なら
0、負数なら1とするのが普通であるが、演算器では符
号ビットを2ビツトにすることもある。
計算機では補数もよく用いられる。nビット2値数をA
 =An−1・・・・・・A + A oとし、最初の
A n−1は符号ビット、残りのA n−2・・・・・
・A + A aが真値(又は絶対値)とすると、への
1の補数A’ (擬補数)は各ビットを反転させたもの
であり、各ビットAn−1+ ・・・・・・A+、An
を各々の排他オアゲートに与え、該ゲートの他方の入力
にはH(ハイ)レベル″1”を与えることにより得られ
る。AとA′の和はオール1である。Aの2の補数A*
(真補数)はA+A*が1ビット多い100・・・・・
・0になる如き数でA+A* =A+A’ +1の関係
がある。A*をめるにはビット走査法が用いられ、右端
又は下位ビットから“1”を探していって1が発見され
たらそこまでの各ビットはそのま−1以後の各ビットは
反転する;例えばAtビットが最初の1ならA*=χn
−1,入n−2、”’ ・・’ A i+ lA1A1
−1 ・・・・・・A+Aoとする。
ところで符号ビットとmビット真値(データ)部からな
る2進数の2の補数と、同じく符号ビットとnビットデ
ータ部からなる2進数の2の補数とを乗算する場合、そ
のデータ部の積の最大桁数は、乗数Aが一2r′1.被
乗数Bが一2nのときであり、2”X −2nの乗算結
果(積)の桁数は(m+n+1)になる。他の場合の乗
算結果の桁数は(m+n)桁であり、従って−2”X 
−2nの場合のみ他の場合より1桁(1ビツト)多くな
る。なおm、nビットの2進数の最大値は2”−1、2
”−1であるからこれらの積の最大値は2 m+n (
2m4−2n) +1であって(m+n)桁内に収まる
が、2の補数表示をするとその最小値は00・・・・・
・0、これは真数では1.該0の数をm、n個として2
m、2nに相当する。従って積は2I′rI+nとなり
、桁数はm + n +1桁となる。
上述したケースにも対処できるようにするには乗算器の
幅を(m+n+1)ビア)にすればよいが−0稀にしか
起らないケースに対応するために乗算器の幅を広くして
おくことは得策ではない。乗算器は最近では1チツプ型
のものもあるが、通常は各々のチップに構成された同じ
型のバイトスライス乗算回路を所要数配列して構成され
る。そこで最上位側の乗算回路は1ビット多いとなると
、それだけ他とは異なる回路を用意せねばならず、コス
トアップを招く。
図面で説明すると、一般の演算回路はブース(Boot
h )のアルゴリズムに依るものが用いられ、第2図に
示すように、乗数をデコードするデコーダ10、デコー
ドされた乗数により被乗数をシフトするシフタ12、シ
フタの出力を足し合わせるC3A (キャリーセーブア
ダー)14、及びCSAの出力の和をとり積を出力する
CPA (キャリープロパゲートアダー)16からなる
。これらを実現するには前述の部分ごとにチップ分割す
ることが多いが、C3Aは多入力の加算器であるためバ
イトスライスなどによりチップ分割することが多い。こ
の場合、各バイトスライスC3Aは共通なものを使用で
きればコストが安(て済む。
−例として9ビツトと8ビツト(共に最上位ピントは符
号、残りは2の補数表現)の乗算の時−28x 27の
場合を除いて積は(2+5−1)〜−(215−1)と
なり、16ビツト(最上位ビットは符号)で表わせるた
めC3AI4は第3図に示すように1バイトスライスの
チップ2個1.4a、14bで構成できる。しかし−2
8X 27の場合は積が215となり、符号を入れると
17ビツトになってしまうためC3Aも17ビツト幅で
構成せねばならず、1バイトスライスのチップ2個では
構成不可能になる。17ビツト幅にするには第4図に示
すように一方のC3A14Gは9ビツトスライスにする
、または第5図に示すように9ビツトスライスのチップ
2個を用い一方は最上位1ビツトを遊ばせる、他はなく
、前者の場合は共通化できず、後者の場合は無駄が住し
る。
またCPA16の部分も17ビツト入力にしなくてはい
けないから、回路が大きくなってしまう。
〔発明が解決しようとする問題点〕
本発明は乗算器の幅を(m+n)桁にしたままでm、n
ビットの乗数、被乗数の積の全てのケースに対する乗算
出力を生じさせることができるようにしようとするもの
である。
〔問題点を解決するための手段〕
本発明の乗算装置は、符号付mビットデータの2の補数
と符号付nビットデータの2の補数との乗算を行う乗算
器と、真補数が同時に一2m、: −’2”であること
を検出して該乗算器の出方を禁止する2mx 2 n検
出回路と、該検出回路が一2m×−2nを検出したとき
予め記憶しである2ni+nを出力する2 出力回路と
、該出力回路の出力と該乗算器の出力を合成するオア回
路とを備えてなることを特徴とするものである。
〔作用〕
このようにすれば乗算器は一2m×−2n以外の乗算を
行えばよいので、その幅は(m + H)ビットで済む
。代りに一2mx−21なる特殊なケースを別回路で検
出し、その積に相当する2 m”nを固定値として出力
する。従って乗算器の幅を(m+n)ビットにしたまま
で全てのケースに応じた乗算結果を出力できる。以下実
施例を参照しながら本発明の構成、作用を更に詳しく説
明する。
〔実施例〕
図面は本発明の一実施例を示すブロック図で、1は8×
8ビツトの部分乗算を行なうバイトスライス乗算回路1
1,12.・・・・・・を例えば8個配列して1ビツト
の符号部、7ビツトの指数部、56ビツトのデータ(仮
数)部、計64ビットからなる2数A、 Bの乗算を行
う乗算器である。乗数Aのデータ部がmビット、被乗数
Bのデータ部がnビット(本例ではm=n−56)であ
るとき、この乗算器1には一2mx 2n以外の積Cを
出力させる。2は−2”X −2°の検出回路で、検出
時に乗算器1に対し出力禁止信号INHを与え、また同
時に後段回路3に対しイネーブル信号ENBを与える。
検出回路2はデータ部A、Bの最上位ビットが共に負を
示す1であること、そして残りのビットが全てOである
ことをアントゲ−1・及びインバータ等のネットワーク
でハード的に検出する。これが−2m×21のケースで
、これ以外では信号1NH,ENBは生じない。
2m+0出力回路3は一2rrIX −2”の積に相当
する2m+0を予めメモリ等に記憶しておき、これを検
出回路2からの信号ENBで出力する。4は乗算器10
出力Cと、これとは排他的に現われる出力回路3の出力
2 をいずれも外部に対しては乗算結果(積)Dとして
出力するオアゲートである。
上記のように一2m×21の検出回路2とその積2m+
1の出力回路3を別設すると、乗算器1はこれ以外のケ
ースに対する乗算出力Cを生じればよいので、その幅は
(m+n)ビットで済む。このため、各乗算回路11,
12.・・・・・・は全て同じもの(チップ)を使用で
きる。因みにこれを(m+n+1)ビット幅にするには
1つの乗算回路を特殊な9×8ビツト型にする必要があ
る。またビン数を1つ増やす等の変更が必要になる。本
回路では1ビツト増加しない分だけ高速化できるという
利点もある。
〔発明の効果〕
以上述べたように本発明によれば、乗算器としては(m
+n)ピントの幅で符号付mビットデータの2の補数と
符号付nビットデータの2の補数の積を全てのケースに
ついて出力することができる。従って前記の9ビツトと
8ビツトの乗算の場合はバイトスライスのチップ2個で
無駄なくC3Aを構成でき、またCPAも16ビツト入
力であるから大型化しなくて済む。更に−28x 27
の場合は積が直ちにまるから、平均乗算速度も向上させ
得る。
【図面の簡単な説明】
第1図は本発明の一実施例を示すブロック図、第2図〜
第5図は従来例を示すブロック図である。 図中、1は乗算器、2は一2m×2n検出回路、3は2
n″+n検出回路、4はオア回路である。 出願人 富士通株式会社 代理人弁理士 青 柳 稔 第1図 B A 第2図 第3図 第4図

Claims (1)

    【特許請求の範囲】
  1. 符号付mビットデータの2の補数と符号付nビットデー
    タの2の補数との乗算を行う乗算器と、真補数が同時に
    −2”、!: −2”であることを検出して該乗算器の
    出力を禁止する一2mx 、 21検出回路と、該稜出
    回路が一2mx−21を検出したとき予め記憶しである
    2m+1を出力する2m+1出力回路と、該出力回路の
    出力と該乗算器の出力を合成するオア回路とを備えてな
    ることを特徴とする乗算装置。
JP59114748A 1984-06-05 1984-06-05 乗算装置 Pending JPS60258644A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP59114748A JPS60258644A (ja) 1984-06-05 1984-06-05 乗算装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP59114748A JPS60258644A (ja) 1984-06-05 1984-06-05 乗算装置

Publications (1)

Publication Number Publication Date
JPS60258644A true JPS60258644A (ja) 1985-12-20

Family

ID=14645683

Family Applications (1)

Application Number Title Priority Date Filing Date
JP59114748A Pending JPS60258644A (ja) 1984-06-05 1984-06-05 乗算装置

Country Status (1)

Country Link
JP (1) JPS60258644A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06342367A (ja) * 1993-06-01 1994-12-13 Nec Corp 乗算回路

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06342367A (ja) * 1993-06-01 1994-12-13 Nec Corp 乗算回路

Similar Documents

Publication Publication Date Title
US5500812A (en) Multiplication circuit having rounding function
US3993891A (en) High speed parallel digital adder employing conditional and look-ahead approaches
EP0328063B1 (en) Absolute value calculating circuit having a single adder
US5553012A (en) Exponentiation circuit utilizing shift means and method of using same
US5506799A (en) Booth array multiplying circuit having carry correction
US5367477A (en) Method and apparatus for performing parallel zero detection in a data processing system
US5629885A (en) Squaring circuit for binary numbers
EP0416308A2 (en) Rectangular array signed digit multiplier
US4110831A (en) Method and means for tracking digit significance in arithmetic operations executed on decimal computers
US5862068A (en) Arithmetic circuit for calculating a square-root of a sum of squares
US5153850A (en) Method and apparatus for modifying two's complement multiplier to perform unsigned magnitude multiplication
US20050144214A1 (en) Shift-and-negate unit within a fused multiply-adder circuit
EP0332215B1 (en) Operation circuit based on floating-point representation
JPS60258644A (ja) 乗算装置
JPH05204602A (ja) 制御信号の方法と装置
US5798956A (en) Parallel multiplier
EP0512686A2 (en) Circuitry for rounding in a floating point multiplier
Cardarilli et al. RNS-to-binary conversion for efficient VLSI implementation
US6665698B1 (en) High speed incrementer/decrementer
US3975624A (en) Two's complement subtracting system
US6631393B1 (en) Method and apparatus for speculative addition using a limited carry
US4744045A (en) Divider circuit for encoded PCM samples
US4716538A (en) Multiply/divide circuit for encoder PCM samples
KR0172308B1 (ko) 변형 부스 곱셈기
US4716539A (en) Multiplier circuit for encoder PCM samples