JPS6010331B2 - 直並列乗算器 - Google Patents

直並列乗算器

Info

Publication number
JPS6010331B2
JPS6010331B2 JP54083786A JP8378679A JPS6010331B2 JP S6010331 B2 JPS6010331 B2 JP S6010331B2 JP 54083786 A JP54083786 A JP 54083786A JP 8378679 A JP8378679 A JP 8378679A JP S6010331 B2 JPS6010331 B2 JP S6010331B2
Authority
JP
Japan
Prior art keywords
carry
bit
multiplicand
multiplier
partial product
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
JP54083786A
Other languages
English (en)
Other versions
JPS569839A (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.)
NTT Inc
Original Assignee
Nippon Telegraph and Telephone 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 Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP54083786A priority Critical patent/JPS6010331B2/ja
Publication of JPS569839A publication Critical patent/JPS569839A/ja
Publication of JPS6010331B2 publication Critical patent/JPS6010331B2/ja
Expired legal-status Critical Current

Links

Description

【発明の詳細な説明】 本発明は、ともに2の補数で表わされた2進数の並列M
ビットの被乗数と直列Nビットの乗数の乗算を行なう直
並列乗算器の構成法に関するものである。
従来、並列Mビットの被乗数と直列Nビットの乗数の乗
算を行なう直並列乗算器は、第1図に示すように、Mビ
ット並列な被乗数Xと1ビット毎に対応したM個の単位
回路1と、直列に入力されるNビットの乗数Yを1クロ
ツク間保持するレジスタ2とにより構成されていた。
乗数Yは端子3よりクロツク(CLK)6に同期して入
力され、被乗数×はM本の入力端子4より並列に入力さ
、れ、乗算は1クロック毎に、Ynが“1”であれば被
乗数×と部分積を加算し下位へ1ビットシフトし、Yn
が“0”であれば被乗数X=0として加算すなわち部分
積をそのま)下位へ1ビットシフトすることによって行
なわれ、乗算結果は出力端子7よりM十Nビットの積が
順次最下位ビットより出力される。第2図はこの乗算器
に用いる単位回路1の詳細を示したもので、全加算器9
と、加算の結果生じた和(部分積)Sm(=Pm)と桁
上げCmをそれぞれ保持するレジスタ10,11と乗数
Ynと被乗数Xnを入力とするANDゲート12とによ
り構成される。
なお、Sm及びCmは次の2式で表わされる。ところで
、第1図に示した従来の直並列乗算器では以下に述べる
ように、ディジタル信号処理で広く用いられている2の
補数表示による2進数の乗算を行なうことは不可能であ
った。
即ち、2の補数表示による2進数の乗算は、第7図に示
すBのthのアルゴリズムを用いて行なう。この表に示
すように、このアルゴリズムでは被乗数と部分積の加算
の他に減算を必要とする。2の補数で表わされた2進数
の減算は周知のように、減数の2の補数を取って符号を
反転した値を被減数に加算することによって実行される
ある2の補数表示の2進数Aに対する−AはAの2の桶
数の関係にあり、Aの2の補数を取る操作はAを構成す
るすべてのビットの“1”“0”を反転したAの最下位
に“1”を加えることによって得られる。このため、被
乗数と部分積の減算を行なう場合、直並列乗算器の最終
段では、P2とC,とX,と“1”の4入力の加算を実
行しなければならず、従来の直並列乗算器では2の補数
表示の2進数の乗算が行なえなかつた。一方、このよう
な欠点を改良し、直並列乗算器で2の補数表示の2進数
の乗算を可能とした回路として、第3図に示す構成のも
のがある(米国特許第3,878 職5号)。
この直並列乗算器は、で表わされる論理式により定めら
れたM個の共通な単位回路42と、第1図と同様のレジ
スタ2とにより構成されている。上記2式のうち、Sm
はPm+,とCmとXmを入力とする全加算器の和を与
える論理式に一致しているが、Cm,nは全加算器の桁
上げ出力を与える論理式には一致しない特殊な関数とな
っている。そのため、第1図で述べた直並列乗算器の単
位回路が全加算器と2個のレジスタにより構成されてい
たのと異なり、第3図の単位回路42は上述した論理式
を実現する特殊な関数で全加算器を層換えたものとなっ
ている。従って、第3図により2の補数表示の2進数の
乗算ができる直並列乗算器を構成しようとすると、これ
までに設計の完了している全加算器が利用できず、複雑
な単位回路を新規に設計改良する必要の生じるという欠
点がある。本発明はこれらの欠点を解決するため、全加
算器と2個のレジス夕を単位回路とする従来の直並列乗
算器に被乗数を反転・非反転するゲートを付加し、最終
段の単位回路のみ4入力加算を実行できるようにゲート
を付加して、2の補数表示により表わされる2進数の乗
算を実行できるようにしたもので、以下図面について詳
細に説明する。
第4図は本発明による直並列乗算器の一実施例の全体構
成図であって、15は単位回路TN〜T2まで同一のも
の、16は乗算器の最終段T,専用の単位回路、17は
制御回路、18,19は制御信号でYs=Yn・Yn‐
,、Yo=Yn由YM(由は排他的論理和を示す)であ
る。本実施例では、第7図に示すBoothのアルゴリ
ズムに基いて2の補数表示による2進数の乗算を実行す
るものとする。第7図に示すように、このアルゴリズム
では直列に入力される乗数Yの隣合う2ビットの組合せ
(Yn,Yn‐,)による3種類の演算により乗算が実
行される。そこで(Yn,Yn‐.)の組合せが(0,
1)の場合を第1の演算、(1,0)の場合を第2の演
算、(0,0)、(1,1)の場合を第3の演算とする
。第1の演算では部分積と被乗数×の加算を行ない下位
へ1ビットシフトし、第2の演算では部分積より被乗数
Xを減じて下位へ1ビットシフトし、第3の演算では単
に部分積を下位へ1ビットシフトする。第1、第3の演
算は従来の直並列乗算器で実行できるが、第2の演算は
減算となるため実行できない。ところで、2の補数で表
わされた部分積Sと被乗数×の減算は、部分積Sとすべ
てのビットを反転した被乗数×に最下位に“1”を加算
することによって実行される。このため本発明では、従
来の直並列乗算器に被乗数を反転するゲートをTM〜T
2の全単位回路15に付加し、さらに被乗数の最下位に
対応する最終段の単位回路16には減算に必要な“1”
入力用の回路を付加して、部分積S2と被乗数X,と桁
上げC,と“1”入力の4入力加算によって減算を実行
するものである。第4図の本発明による直並列乗算器に
おいて、はじめTM〜Lまで共通の論理機能を有する単
位回路15について説明する。
第5図はこの単位回路15の詳細図であって、20は全
加算器、21は和を保持するレジスタ、22は桁上げ信
号を保持するレジスタ、23は上位の単位回路に対する
入力端子、24は下位の単位回路への出力端子、25は
被乗数Xmを制御信号(YS)18により反転する排他
的ORゲート、26は制御信号(YO)により被乗数X
mを“0”にするANDゲートである。この第5図に示
す単位回路15は以下の論理式により表わされる。こ)
で、(Yn,Yn‐,)が(0,1)の場合、YS=Y
n・Yn‐,=0、YO=Yn由Yn‐,=0であるの
で、Sm:P帆,由Cm由Xm、Com=Pm十.・X
m+Cm・(Pm十,由Xm)となり、部分積Pm十,
と桁上げCmと被乗数Xmの3入力加算の結果と一致し
、第1の演算となる。
同様に(1,0)の場合YS=1、YO=0であるので
、Sm=Pm十,■Cm由Xm、Com=Pm十.・X
m+Cm・(Pm+,由Xm)となり、部分糟Pm+,
と桁上げCmと反転した被乗数Xmの3入力加算で、減
算における最下位ビットを除いた第2の演算となる。ま
た、(0,0)、(1,1)の場合には、YSコ0,Y
O=1であるので、Sm=Pm+.由Cm、Com=C
m・Pm+,となり、部分積P帆,と桁上げCmの2入
力加算となり、第3の演算となる。次に、被乗数の最下
位に対応する最終段T,の単位回路16について説明す
る。
第6図はこのT,専用の単位回路1 6の詳細図であっ
て、27は単位回路T2からの入力端子、28は全加算
器、29は和を保持するレジスタ、30は桁上げ信号を
保持するレジスタ、31は減算による符号変換により生
じた補正用の桁上げ信号C,′を保持するレジスタ、3
2はYS・P,を発生するANDゲート、33はYS+
P,を発生するORゲート、34はYSを発生するィン
バー夕、35はC,′・YSを発生するANDゲート、
36は(X,由YS)YO十C,′YSを発生するOR
ゲート、37はYS・P,=1の場合に加算結果を反転
する排他的ORゲート、38はYS・P.・C.・X,
=1の場合にC.′を発生するANDゲート、39はY
S・CO.を発生するANDゲート、40はYS・P,
十YS・CMを発生するORゲート、41は乗算結果の
出力端子である。この単位回路16の動作を減算動作、
減算によって生じた2個の桁上げ信号の処理に分けて説
明する。第8図は該単位回路の真理値表である。○’減
算動作〔(Yn,Yn‐.)…(1,0)〕P,=“0
”の場合には第8図の真理値表はX,,C,,C,′=
(YS)を入力とする全加算器と全く同じ結果をとるの
で、加算器28のん入力をA,=P,十YSとする。
そのため、ORゲート33でこの論理和を発生している
。P,=“1”の場合には4入力の加算となり、和出力
はP,,X,,C,の3入力加算を反転した値となり、
桁上げ信号CO.は常に“1”で、Co′はP,=X,
=C,=C,′(=YS)=1の場合のみ“1”である
。そこで、排他的ORゲート37を加算器28の和世力
に接続し、P.・C,′(=YS)=1の信号で和出力
を反転する。桁上げ信号CO.を保持するレジスタ30
の入力式はD,=CO.・YS十P.・YSとし、これ
をANDゲート39とORゲート40を用いて発生する
。また、補正用の桁上げ信号Co′を保持するレジスタ
31の入力式はD2=(X,由YS)Y。・P.・C.
・Ysとなり、これをANDゲ−ト38を用いて発生し
ている。【21 減算によって生じた2個の桁上げ信号
の処理減算の結果、再び2個の桁上げ信号CO.,Co
′が共に“1”となるのはP,:X,=C,=C,′(
YS)=1の場合である。2個のキャリが発生した後に
起り得る演算は次回の(Yn+,)の値で決まる。
次の(Yn,Yn‐,)の組合せは、例1 次回の(Y
n,Yn‐,)が(1,1)となる場合.・..・.Y
n十,YnYn‐.・・・・・・LIII」01例2
次回の(Yn,Yn−,)が(0,1)となる場合・・
・・・・Yn十,YnYn‐.・・・・・・,○11,
○1に示すように、(1,1)あるし、は(0,1)の
2通りである。
その場合は、それぞれ第8図の1′,0′に見られるよ
うにX,は常に“0”である。即ち、2個の桁上げ信号
CO.,Co′がともに“1”となるのはP,=X,=
C,=C,′=1であるのでX,=“0”である。この
ことから、C,′をX,の入力端子より加算器28のB
端子へ入力することが可能で、B,の入力式はB,=(
YS■X,)・YO+C,′・YSとなる。この論理式
を、排他的PRゲート25、ANDゲート26,25、
ORゲート36により実現している。この結果、減算に
よる2個の桁上げ信号は次の回の演算で処理され、それ
以後の演算に影響を与えないので、上述のような最終段
専用の単位回路を設けることにより2の補数同志の乗算
を直接実行することができる。上記の最終段専用単位回
路の論理式をまとめて示すと、のようになる。
こ)で、A,=P,十YS、B.:(X,由YS)YO
+C,′YS、C,=CO.・YS十YS・P,、C,
′=(X,■YS)Y○・P.・C.・YSであり、第
5図の単位回路15に、4入力加算を可能とするために
ゲートと補正用の桁上げC,′を保持するレジスタを付
加したものとなっている。以上説明したように、本発明
は全加算器と2個のレジスタを単位回路とする従来の直
並列乗算器に被乗数を反転・非反転するゲートを付加し
、最終段の単位回路のみ4入力加算を実行できるように
ゲートを付加して、2の補数表示により表わされる2進
数の乗算を実行できるようにしたもので、乗算器を含む
論理4SIを設計する場合、乗算器を構成する主なゲー
トが論理LSIで最も一般的な全加算器としジスタによ
り構成されているので〜設計時間の短縮がはかれる利点
がある。
【図面の簡単な説明】
第1図は従来の直並列乗算器の構成図、第2図は第1図
の乗算器に用いる単位回路の詳細図、第3図は同じく従
来の直並列乗算器の構成図、第4図は本発明の一実施例
の全体構成図、第6図は第4図の乗算器に用いる最終段
を除いた他の段の単位回路の詳細図、第6図は最終段の
単位回路の詳細図、第7図は欧othのァルゴリズムと
第5図の制御信号線の真理値表を示す図、第8図は第6
図の単位回路の真理値表を示す図である。 1,42・・…・単位回路、2・・・・・・レジス夕、
3・・・・・・乗数入力端子、4・・…・被乗数入力端
子、5・・・・・・クリャ端子、6……クロック端子、
7・…・・積出力端子、8……制御信号線「 9・・・
・・・加算器、10・・・・・・和保持レジスタ、11
・・・・・・桁上げ信号保持レジスタ、13…・・・前
段の和入力端子、14・・…・和出力端子、15・・・
・・・最終段を除く単位回路、16・・・・・・最終段
専用単位回路、17・・・・・・制御回路、20…・・
・加算器、21…・・・和保持レジスタ、22・・・・
・・桁上げ信号保持レジスタ、23・・・・・・前段の
和入力端子、24……和世力端子、27……前段(T2
)の和入力端子、28…・・・加算器、29・・・・・
・和保持レジスタ、30,31・・…・桁上げ信号保持
レジスタ。 第1図 第2図 第3図 第4図 第5図 第6図 第7図 第8図

Claims (1)

    【特許請求の範囲】
  1. 1 2の補数表示により表わされた2進数の並列Mビツ
    トの被乗数Xと直列Nビツトの乗数Yの乗算を実行する
    直並列乗算器において、M−1個の共通な第1の単位回
    路と最終段専用の第2の単位回路を継続接続した回路と
    、乗数Yの隣合う2ビツト(Yn,Y_n_−_1)の
    組合せによりM個の単位回路に対して共通に、(0,1
    )の場合には第1の演算を、(1,0)の場合には第2
    の演算を、(0,0)、(1,1)の場合には第3の演
    算をするように指示する制御回路とにより構成され、第
    1の単位回路は、第1の演算として部分積P_m_+_
    1と被乗数Xmと桁上げCmの3入力加算を行ない下位
    へ1ビツトシフトし、第2の演算として部分積P_m_
    +_1と被乗数を反転したXmと桁上げCmの3入力加
    算を行ない下位へ1ビツトシフトし、第3の演算として
    部分積P_m_+_1と桁上げCmの2入力加算を行な
    い下位へ1ビツトシフトする機能を有し、第2の単位回
    路は、第1の演算として部分積P_2と被乗数X_1と
    桁上げC_1と補正用の桁上げC_1′の4入力加算を
    行ない下位へ1ビツトシフトし、第2の演算として部分
    積P_2と被乗数を反転した■_1と桁上げC_1と補
    正用の桁上げC_1′=1の4入力加算を行ない下位へ
    1ビツトシフトし、第3の演算として部分積P_2と桁
    上げC_1と補正用の桁上げC_1′の3入力加算を行
    ない下位へ1ビツトシフトする機能を有することを特徴
    とする直並列乗算器。
JP54083786A 1979-07-02 1979-07-02 直並列乗算器 Expired JPS6010331B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP54083786A JPS6010331B2 (ja) 1979-07-02 1979-07-02 直並列乗算器

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP54083786A JPS6010331B2 (ja) 1979-07-02 1979-07-02 直並列乗算器

Publications (2)

Publication Number Publication Date
JPS569839A JPS569839A (en) 1981-01-31
JPS6010331B2 true JPS6010331B2 (ja) 1985-03-16

Family

ID=13812315

Family Applications (1)

Application Number Title Priority Date Filing Date
JP54083786A Expired JPS6010331B2 (ja) 1979-07-02 1979-07-02 直並列乗算器

Country Status (1)

Country Link
JP (1) JPS6010331B2 (ja)

Also Published As

Publication number Publication date
JPS569839A (en) 1981-01-31

Similar Documents

Publication Publication Date Title
US4953115A (en) Absolute value calculating circuit having a single adder
JPS588009B2 (ja) デイジタル乗算器
US5132925A (en) Radix-16 divider using overlapped quotient bit selection and concurrent quotient rounding and correction
US5023827A (en) Radix-16 divider using overlapped quotient bit selection and concurrent quotient rounding and correction
GB2239536A (en) Binary division of signed operands
US4878192A (en) Arithmetic processor and divider using redundant signed digit arithmetic
JPS62256034A (ja) パイプライン演算ユニツト
JPS595349A (ja) 加算器
EP0238300B1 (en) Serial digital signal processing circuitry
JP2970231B2 (ja) 並列乗算回路
US4866655A (en) Arithmetic processor and divider using redundant signed digit
US5870322A (en) Multiplier to selectively perform unsigned magnitude multiplication or signed magnitude multiplication
JPS6010331B2 (ja) 直並列乗算器
EP0189912B1 (en) Fast bcd/binary adder
JPH01220528A (ja) パリテイ発生器
JPS6259828B2 (ja)
JPS6227864A (ja) 累算回路
JPH06348456A (ja) 1の補数の加算器および動作方法
JP2710412B2 (ja) 乗除算回路
JPH0823814B2 (ja) 多重ディジット10進数を2進数に変換する装置および統一された比復号器
KR100297558B1 (ko) 32비트 고속 병렬 곱셈기
JP3074958B2 (ja) 加算機能付きシリアル乗算器
JP4042215B2 (ja) 演算処理装置およびその方法
JP2681968B2 (ja) 演算処理装置
JPH0253819B2 (ja)