JPH0614318B2 - 演算処理装置 - Google Patents

演算処理装置

Info

Publication number
JPH0614318B2
JPH0614318B2 JP61164091A JP16409186A JPH0614318B2 JP H0614318 B2 JPH0614318 B2 JP H0614318B2 JP 61164091 A JP61164091 A JP 61164091A JP 16409186 A JP16409186 A JP 16409186A JP H0614318 B2 JPH0614318 B2 JP H0614318B2
Authority
JP
Japan
Prior art keywords
digit
determining means
quotient
signal
partial remainder
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 - Lifetime
Application number
JP61164091A
Other languages
English (en)
Other versions
JPS6319036A (ja
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.)
Panasonic Holdings Corp
Original Assignee
Matsushita Electric Industrial Co 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 Matsushita Electric Industrial Co Ltd filed Critical Matsushita Electric Industrial Co Ltd
Priority to JP61164091A priority Critical patent/JPH0614318B2/ja
Priority to US07/070,565 priority patent/US4878192A/en
Publication of JPS6319036A publication Critical patent/JPS6319036A/ja
Priority to US03/239,243 priority patent/US5031136A/en
Priority to US07/599,275 priority patent/US5153847A/en
Publication of JPH0614318B2 publication Critical patent/JPH0614318B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Description

【発明の詳細な説明】 産業上の利用分野 本発明は、高速算術演算回路に係り、特にセル配列構造
を持ち、除算器の高速化およびLSI化に好適な演算処
理装置に関する。
従来の技術 従来、高速除算器については、電子通信学会論文誌,Vo
l.J67-D,No.4(1984年)第450頁から第457頁に
おいて論じられているように、各桁を{−1,0,1}
の要素で表す冗長2進表現を利用した減算シフト型除算
法に基く除算器をECL(Emitter−Coupled−Logic)
の4入力NOR/OR素子を用いた組合せ回路として実
現している。この除算回路は、計算時間や規則正しい配
列構造の点で他の除算器より優れているが、素子数や面
積の削減、他回路系(例えば、CMOS)での実現等の
実用化の点については配慮されていなかった。
また、従来実用化されている除算器は、減算器(加算
器)とシフタからなる順序回路として実現され、広く用
いられている。しかし、これらは演算数の桁数が大きく
なると、膨大な計算時間を要することがよく知られてい
る。一方、高速乗算器をもつ大型計算機などでは、乗算
の繰返しにより除算を行う乗算型除算法がよく用いられ
ている。しかし、この乗算型除算法を組合せ回路として
実現するには膨大なハードウェアが必要となり、実用化
は難しい。
発明が解決しようとする問題点 上記従来技術では、高速除算器に関し、NORとORが
同時にとれるECL論理素子の特長を活かして減算シフ
ト型除算器を組合せ回路として実現する方法が提案され
ているが、素子数の削減、MOS回路等による実現等の
実用化の点についてはあまり配慮されておらず、 (1)演算数の桁数が大きくなると素子数が膨大となり、
1つのVLSIチップで実現することが難しい、 (2)NORとORを同時にとることができないMOS回
路等で実現する場合、ORをNORとインバータの2段
の素子で構成する必要があり、その分除算回路の段数が
多くなるため、高速性が低下する、 等の問題点があった。
本発明の目的は、このような従来の問題点を改善し、除
算器を配列構造で、かつ素子数の少ない組合せ回路とし
て実現し、桁上げ値の伝播を防止すると共に回路構成を
比較的簡単化した、LSIに実装が容易な高速除算処理
装置を提供することにある。
問題点を解決するための手段 上記目的は、除算における商の1桁を決定する商決定手
段と、前記商決定手段によって求められた商に対する剰
余を求め、符号付ディジット表現の部分剰余として出力
する部分剰余決定手段とを複数ステージ備えた演算処理
装置において、前記部分剰余決定手段が、符号付ディジ
ット表現の部分剰余の各桁毎に、(a)2個の入力演算
数の一方として符号付ディジット数の各桁の符号部を表
す1ビット信号Aとこの桁の大きさを表す1ビット信号
Bを入力して、それらの演算数の加算(減算)における
中間桁上げ(中間桁借り)を表す1ビット信号Cを出力
する中間桁上げ(中間桁借り)決定手段と、(b)前記
2個の入力演算数の一方として前記符号付ディジット数
の各桁の大きさを表す1ビット信号Bを入力して、それ
らの演算数の加算(減算)における中間和(中間差)を
表す1ビット信号Sを出力する中間和(中間差)決定手
段と、(c)前記中間和(中間差)決定手段で求めた中
間和(中間差)を表す1ビット信号Sと一桁下位桁に設
けられた前記中間桁上げ(中間桁借り)決定手段で求め
た下位桁からの中間桁上げ(中間桁借り)を表す1ビッ
ト信号Cとから加算(減算)の結果を決定して出力する
最終和(最終差)決定手段と、(d)当該ステージの商
決定手段からの1ビット制御信号Fの値により、入力演
算数の符号を反転する第1の手段と、(e)前記当該ス
テージの商決定手段からの別の1ビット制御信号Dの値
により前記除数を定数に入れ替える第2の手段とを有す
ることによって達成される。
さらに、第1の手段が、当該ステージの商決定手段から
の1ビット制御信号Fと入力演算数として部分剰余を入
力して、その制御信号の値により前記部分剰余の符号を
反転し、中間桁上げ(中間桁借り)決定手段の入力演算
数の一つを生成し、第2の手段が、除数と前記当該ステ
ージの商決定手段からの別の1ビット制御信号Dを入力
して、その制御信号の値によりその除数を0に入れ替
え、中間桁上げ(中間桁借り)決定手段および中間和
(中間差)決定手段の入力演算数の一つを生成すること
が望ましい。
作用 減算シフト型除算法は一般に次の漸化式で表わされる。
(j+1)=r×R(j)−qj×D ここで、jは漸化式の指数、rは基数、Dは除数、qj
は商の小数点以下j桁目、R(j)はqjを決定する前の部
分被除数、R(j+1)はqjを決定した後の部分剰余であ
る。したがって、漸化式の各指数j毎に、商qjを決定
する商決定用セルとqjの値に従ってr×R(j)からDを
減じたり、減じなかったりする部分剰余決定回路を設
け、組合せ回路として実現できる。さらに、内部演算に
おいて、各桁を0,正整数またはその正整数に対応する
負整数のいずれかの要素で表す符号付ディジット(拡張
SD(Signed Digit))表現を用いて内部演算数を表
す。つまり、各桁を{−1,0,1},{−2,−1,
0,1,2}あるいは{−N,……,−1,0,1,…
…,N}等のいずれかの要素で表し、1つの数をいくと
おりかに表せるように冗長性をもたせる。それによっ
て、減(加)算において桁借り(桁上げ)の伝搬を防止
することができ、組合せ回路による並列減(加)算が演
算数の桁数に関係なく一定時間で行える。例えば、各桁
を{−1,0,1}の要素で表す拡張SD表現では、加
(減)算において桁上げ(桁借り)が高々1桁しか伝搬
しないようにすることができる。このことに関しては、
電子通信学会論文誌,Vol.J67−D,No.(1984年)第
450頁から第457頁などに説明がある。
上記のような内部演算に拡張SD表現を用いることによ
って高速な除算器の実現が可能である。そのとき、例え
ば、基数2の拡張SD表現を用いて、整数部1ビット,
少数部nビットの符号なし2進数Xを、 X=[x0,x1……xnSD2 で表現すると、 という値を表わす。ただし、各桁xiは{−1,0,
1}の要素である。この場合、上記漸化式において、除
数Dおよび各部分剰余R(j)を基数2の拡張SD表現で
表わすと、qjの値に応じて、qj=−1のときはR(j)
を左へ1桁シフトした後、Dを加算し、qj=0のとき
はR(j)を左へ1桁だけシフトし、qj=1のときはR
(j)を左へ1桁シフトした後、Dを減算する必要があ
る。
本発明では、特に、商の小数点以下j桁目qjの値に応
じて、拡張SD表現の内部演算数の正負の反転をする手
段(つまり、第1の手段)および内部演算数に0を割り
当てる手段(つまり、第2の手段)により、qjを決定
した後の部分剰余R(j+1)は、 R(j+1)=P(j)(P(j)(r×R(j))+D(j)) のように拡張SD表現の加算のみで決定することができ
る。ここで、P(j)は正負の反転を行う関数であり、D
(j),P(j)には幾種かのとり方がある。以下にその例を
示す。
(I) (II) ただし、,は、それぞれ拡張SD表現数D,Xの正
負の反転を行った数である。この拡張SD表現における
正負の反転は各桁でその桁が1ならば−1に、−1なら
ば1にし、0はそのままにする。しかし、のようにD
が各桁が非負の拡張SD表現の場合には2の補数表示によ
って正負の反転を行うことが可能である。
また、前記部分剰余R(j+1)を求める式は、 A(j)=P(j-1)(R(j)) によってA(j)を導入すると、 A(j+1)=T(j)(2×A(j))+D(j) のように変形できる。ただし、T(j)は拡張SD表現数
Xに対して T(j)P(X)=(j)(P(j-1)(X)) で定義される関数である。
このA(j+1)を決定する式において、上記(II)の場合に
はD(j)は各桁が常に非負であり、また(I)の場合にも
を2の補数表示することにより、先頭桁を除いた大部分
の桁を非負にすることが可能であるので、上記A(j+1)
の決定には被加算数が拡張SD表現数(つまり冗長2進表
現数)で、加算数が各桁が非負の拡張SD表現数(つま
り2進表現数)である加算器(セル)を用いることがで
きる。
このとき、桁上げが1桁しか伝播しない加算規則では、
表1に示す規則に従って中間和を決定し、表2に示す規
則に従って中間桁上げを決定する。
本発明では、前記冗長2進数 をその符号部を表す1ビット2値信号とその大きさ(つ
まり絶対値)を表す1ビット2値信号で表すことによ
り、各桁毎の中間和決定部を冗長2進数 の大きさを表す1ビット2値信号Bと2進数▲dj i▼を
表す1ビット2値信号Cを入力とする排他的論理和B・
+によって構成することが可能となる。また、各桁
の中間桁上げ決定部を冗長2進数 の符号を表す1ビット2値信号Aと2進数▲dj i▼を表
す1ビット2値信号Cと の大きさを表す1ビット2値信号Bとを入力してBの値
によってAあるいはCのいずれかを出力する切り換え論
理回路A・B+C・によって構成することが可能とな
る。さらに、下位桁からの中間桁上げをKとすると、求
める冗長2進数 の大きさを表す1ビット信号は排他的論理和回路によっ
て K・(B・C+・)+・(・C+B・) と決定でき、 の符号を表す1ビット信号はNAND回路によって +(・C+B・) と決定できる。したがって前記加算器(セル)個々の素
子数を少なくでき、かつ不要な信号線を省けるため、こ
れらの加算器(セル)の規則正しい配列構造で除算回路
を構成することによって、高速な除算処理装置のLSI
化が容易になる。
実施例 以下、本発明の一実施例を図面により説明する。
第2図は、本発明の一実施例の構成を示すブロック図で
ある。特に、本実施例では、n桁の符号なしr進小数の
除算器について説明する。なお、第2図は、n=8,r
=2の場合のブロック図である。図中、被除数20は、
小数点以下第1桁,第2桁,……第n桁の値x1,X2
……,xnにそれぞれ対応する信号の形で初期部分剰余
決定回路100に入力される。除数40も、同様に小数点
以下第1桁,第2桁,……,第n桁の値y1,y2,…
…,ynを表わす信号の形で初期部分剰余決定回路10
0および部分剰余決定回路101,102,103,1
04,105,……に入力される。商60は、整数第1
桁Z0,小数点以下第1桁Z1,小数点以下第2桁Z2
……,小数点以下第n桁Znのr進数としてr進への変
換回路10より出力される。初期部分剰余決定回路10
0は、被除数[0.x1,x2……xn]r20および除
数[0.y12……yn]r40を入力として、商の整
数第1桁を決定した後の部分剰余あるいは部分剰余の符
号の反転したものを出力する回路である。特に、被除数
および除数を正規化していると、x1=y1=1となり、
0=1と簡単に求まる。ただし、q0はr進数への変換
回路10の入力となる基数rのSD表現数における商
[q0.q12……qnSDRの整数第1桁である。以
下、被除数および除数の正規化されたものに対して説明
する。
また、部分剰余決定回路101,102,103,10
4,105……は、それぞれ図中の上段の部分剰余決定
回路(あるいは初期部分剰余決定回路100)の出力お
よび除数40およびそれぞれ同じ段に対応する商決定用
セル201,202,203,204,205……の出
力である制御信号251,252,253,254,2
55……を入力として、次段(つまり下段)の部分剰余
決定回路への入力となる部分剰余あるいは部分剰余の符
号の反転したものを出力する回路である。
商決定用セル201,202,203,204,205
……は、それぞれ上段(例えば、j−1段)の部分剰余
決定回路の出力である部分剰余あるいは部分剰余の符号
の反転したものの上位3桁および上段(つまり、小数点
以下第j−1段)の商決定用セルで既に決定された拡張
SD表現で表わされた商のj−1桁目の値を入力とし、
商の小数点以下第j桁目の値および、それぞれ同段(つ
まり、j段)の部分剰余決定回路に対する制御信号25
1,252,253,254,255,……を出力する
回路である。
r進への変換回路10は、商決定用セル201,20
2,203,204,205,……において、それぞれ
決定された拡張SD表現で表わされた商の各桁を入力と
し、各桁が非負の通常のr進数の商[Z0.Z12……
n]r60を出力する回路である。
次に、これらのブロックを用いた除算法について、符号
反転を被加算数の拡張SD表現に適用した場合を例に説
明する。
まず、初期部分剰余決定回路100において、 A(1)=[0.1 2……nSD2+[0.y12……
nSD2 の計算を行い、部分剰余A(1)を決定する。ただし、i
=1,……,nに対して、iはxiの符号を反転した数
である。さらに、i=1,……,nに対して、yiは常
に非負であるので、初期部分剰余回路100は冗長2進
数と2進数の加算回路により実現できる。またx1,…
…,xn、y1,……,ynは非負であるから、初期部分
剰余決定回路100は2進数同士の減算回路で容易に実
現できる。
次に、部分剰余A(j)=[▲aj 0▼.▲aj 1▼▲aj 2
……▲aj n▼]SD2および商の小数点以下第j−1桁q
j-1が既に決定されている場合の小数点以下第j桁qj
よび部分剰余A(j+1)の決定について説明する。
商の小数点以下第j桁qjは、j段目の商決定用セル2
01,202,203,204,205……において、
部分剰余A(j)の上位3桁[▲aj 0▼.▲aj 1▼▲aj 2
▼]SD2の値および商の小数点以下第j−1桁qj-1によ
って決定される。つまり、A(j)の上位3桁の値が正な
らqj=sign(−qj-1)、0ならqj=0、負ならqj
−sign(−qj-1)と決定する。ただしsign(−qj-1
は、 と定義する。
また、部分剰余決定回路101,102,103,10
4,105,……のうちj段目の回路において前記 A(j+1)=T(j)(2×A(j))+D(j) の計算を行い、部分剰余A(j+1)を決定する。ただし、
上式の第1項は、 (i)sign(−qj-1)×sign(−q)=1のとき、 T(j)(2×A(j))=[▲aj 0▼▲aj 1▼▲aj 2▼……
▲aj n▼0]SD2 (ii)sign(−qj-1)×sign(−qj)=−1のとき、 T(j)(2×A(j))=[▲bj 0▼▲bj 1▼▲bj 2▼……
▲bj n▼0]SD2 である。ただし、i=0,……nに対して▲bj i▼=−
▲aj i▼である。また、第2項は、 (i)qj≠0のとき、 D(j)=[0.y12……ynSD2 (ii)qj=0のとき、 D(j)=[0.00……0]SD2 であり、共にD(j)は2進数である。したがって部分剰
余決定回路101,102,103,104,105,
……は、冗長2進数と2進数の加算回路、冗長2進数の
反転回路および加算数を決定する回路によって実現でき
る。この場合、部分剰余決定回路への各制御信号25
1,252,253,254,255,……は、それぞ
れ商の対応する桁qjの大きさ、および−qjと−qj-1
の符号の相違の有無から構成される。
最後に、j=1からnまでの上のように商の各桁qj
決定し、商Q=[qo.q12……qnSD2が求まる
と、r進への変換回路10によって拡張SD表現された
商Qを通常のr(つまり2)進表現Z=[Z0.Z12
……Zn]r60に変換する。r進への変換回路10
は、冗長2進表現の商Qで1になっている桁だけを1に
した符号なし2進数Q+から、商Qで−1になっている
桁だけを1にした符号なし2進数Q-の通常の減算Q+
-を行い、順次桁上げ加算回路あるいは桁上げ先見加
算回路などによって実現できる。
以上が第2図に示した除算器を構成する個々のブロック
を用いた除算法の説明であるが、場合によっては、第2
図における各商決定用セル202,203,204,2
05,206,……への上位の商決定用セルからの入力
信号線271,272,273,274,……を省略し
てもよい。
次に、部分剰余決定回路101,102,103,10
4,105,……について説明する。
第3図は、第2図における部分剰余決定回路101,1
02,103,104,105,……の一構成例を示し
たブロック図である。部分剰余決定回路300は、n+
1個の冗長加算用セル310,311,312,31
3,……,329,330のアレイである。今、仮に部
分剰余決定回路300が第2図におけるj段目の部分剰
余決定回路とすると、被加算数に対応する入力340,
341,342,343,……,359はそれぞれ前段
(つまりj−1段)で決定された部分剰余の各桁▲aj 1
▼,▲aj 2▼,……,▲aj n▼の値を表す。加算数に対
応する入力361,362、363,……,379,3
80は、それぞれ除数の各桁y1,y2,……,ynを表
す。制御信号390は、第2図における制御信号25
1,252,……のいずれかであり、同じ段(つまりj
段)の商決定用セルにおいて商の既に決定された桁qj
あるいはqj-1から決まる信号である。下位の冗長加算
用セルから上位の冗長加算用セルへの入力441,44
2,443,……,450は、それぞれ下位桁からの中
間桁上げを表す。また、各冗長加算セル310,31
1,312,……,330の出力410,411,41
2,……,430は、それぞれ部分剰余の各桁 の値を表す。なおr=2つまり2進表現の場合、除数の
小数点以下第1桁は、y1=1と固定しているから入力
361を省略してもよい。また、場合によっては、最終
桁の桁上げ450を省略することも可能である。
冗長加算用セル310,311,312,313,…
…,329,330は、部分剰余A(j+1)の整数第1
桁,小数点以下第1桁,小数点以下第2桁,……,小数
点以下第n桁をそれぞれ決定するセルである。これらの
冗長加算用セルのうち、素子数削減のため、小数点以下
第2桁から小数点以下第n−1桁の冗長加算用セル31
2,313,……,329を基本セルで構成し、上位2
桁の冗長加算用セル310,311および最下位桁(つ
まり、小数点以下第n桁)の冗長加算用セル330を例
外的なセルとしてもよい。また、上位2桁の冗長加算用
セル310,311を同段(つまり、j段)の商決定用
セルをまとめて1つのセルとすることも可能であり、あ
るいは、j段の最下位桁の冗長加算用セル330とj+
1段の小数点以下第n−1桁の冗長加算用セル329を
1つのセルにまとめて、素子数を削減することも可能で
ある。また、n/2<j≦n−1の範囲の整数jに対し
て、j段目の部分剰余決定回路において、小数点以下第
2×(n−j+1)桁以降の冗長加算用セルを省略して
もよい。第2図は特にこの部分を省略した例を示してい
る。
次に、冗長加算用セル310,311,312,……,
330における基本セルについて説明する。
まず、本発明の実施例における冗長2進表現数の2値信
号化の一例を次に示す。
冗長2進表現の1桁▲aj i▼あるいはqjを2ビット あるいはqj+j-でそれぞれ表し、−1を11、0を1
0、1を01と2ビット2値信号で表現する。このと
き、商の小数点以下第j桁qjの大きさおよび符号は、
それぞれqj-およびqj+で表わせる。また、商の小数点
以下第j桁qjとj−1桁qj-1との符号の相違の有無の
信号をtjとする。つまり、符号の相違があれば(sign
(−qj)×sign(−qj-1)=−1のとき)、tj
0、なければ(sign(−qj)×sign(−qj-1)=1の
とき)、tj=1とする。したがって、tjは、商決定用
セル201,202,……において、 で決定できる。また、qj-,gj+は、それぞれ の式で決定できる。ただし、・は論理積(AND)を、
+は論理和(OR)を、は排他的論理和(排他的O
R)を、 および はそれぞれ およびqj-の論理否定を表す演算子である。
さらに、加数数D(j)の小数点第i桁▲dj i▼,中間和
▲Sj i▼および中間桁上げ▲Cj i▼は、それぞれ の式で決定できる。また、冗長加算用セルの出力 は、 の式で決定できる。
第1図は、上記本発明の2値信号化により第3図の冗長
加算用セル312,313,……,329をCMOS回
路で実現した回路図の一例を示す。
ゲート611,625は排他的OR、ゲート612はイ
ンバータ、ゲート613は2入力NR、ゲート631
は2入力NAND、ゲート632は排他的NRゲート
である。また、pチャンネル・トランジスタ621とn
チャンネル・トランジスタ622、およびpチャンネル
・トランジスタ623とnチャンネル・トランジスタ6
24は、それぞれトランスファー・ゲートを構成してい
る。
また、 601および 602は第3図における左からi+1番目の冗長加算用
セルへの入力2ビット信号340,341,……,35
9であり、除数の小数点以下第i桁yiの論理否定i
03はその冗長加算用セルへの入力1ビット信号36
1,362,……,380である。j-604およびt
j605は第3図における2ビットの制御信号390を
構成する。また、信号614は前記の加算数▲dj i▼で
あり、信号615および602が前記の被加算数 に相当する情報を与える。さらに、信号626は中間和
を表す1ビット信号▲j i▼であり、信号627は中間
桁上げの有無を表す1ビット信号▲Cj i▼であり、信号
628は一桁下位の桁からの中間桁上げを表す1ビット
信号 である。出力 633および 634は第3図における部分剰余の小数点以下第i桁を
表す2ビット信号410,411,412,……,43
0である。
この場合、商の小数点以下第j桁qjの大きさを表す1
ビット信号qj-によって除数yiを0に入れ替えて出力
する加数決定の手段は、NORゲート613で実現され
る。被加数の符号反転の手段は、排他的Rゲート61
1によって実現される。また、中間和決定回路は排他的
Rゲート625とインバータ612とから構成され、
中間桁上げ決定回路はトランスファー・ゲート621,
622,トランスファー・ゲート623,624および
インバータ612から成る切り換え回路によって構成さ
れる。さらに、中間和を表す1ビット信号▲j i▼と下
位桁からの中間桁上げを表す1ビット信号 を入力して最終和の2ビット信号 を出力する回路は、NANDゲート631および排他的
NORゲート632によって構成している。
また、図中の排他的R回路はインバータとの種々の組
合せによって排他的NR回路に置き換えたり、NAN
Dをインバータと組合せてNRに置き換えたり、ある
いは、それらの逆を容易に行い得ることは既知である。
なお、本例ではトランスファー・ゲートを用いている
が、通常のゲートを用いて実現することも可能である。
第4図は、第1図においてトランスファー・ゲートを使
用した部分回路700をNORゲートによって構成した
一例である。ゲート701,702,703は共に2入
力NRゲートである。ただし、回路の段数および素子
数が増えるので、複合ゲートを用いた構成も可能であ
る。
また、初期部分剰余決定回路100は、基本的には、部
分剰余決定回路101,102,……と同様に、第3図
の冗長加算用セルにおいてtj=0,j-=0の場合の
セルのアレイとして構成することができる。なお、初期
部分剰余決定回路100は、通常の2進数同士の冗長減
算あるいは、通常の2進数と各桁が非正の冗長2進数の
冗長加算であるため、各桁の中間桁上げを常に0とする
ことができ、各セルを簡単化することが可能である。
第5図は、初期部分剰余決定回路100を構成する2進
数同士(つまり、xiとyi)の冗長減算回路(セル)の
一例である。図中信号711は被除算数の小数点以下第
i桁を表す1ビット信号Xiであり、信号712は除算
数の小数点以下第i桁の論理否定を表す1ビット信号
iであり、信号731と732は初期の部分剰余A(1)
小数点以下第i桁を表す2ビット信号 である。本例では冗長減算回路(セル)を2入力NAN
D回路721と排他的NR回路722とで構成してい
る。
次に、第2図の商決定用セル201,202,203,
204,205,……について説明する。
第6図は、前記の2値信号化による商決定用セル20
1,202,203,204,205,……の一構成例
を示したCMS回路図である。図中、ゲート811は
インバータ、ゲート813およびゲート823は2入力
のNOR、ゲート814,815および822は3入力
のNR、ゲート812および821は4入力NR、
ゲート831は排他的NRである。
また、 801および 802は第3図における2ビット信号410であり、 803および 804は2ビット411であり、 805および 806は2ビット信号412である。入力qj-1+807
は第2図における上位の商決定用セルからの入力信号2
71,272,273,……である。また、出力qj+
32およびj-833は商の小数点以下第j桁を表す2
ビット信号565であり、出力j-833およびtj83
4はj段にある各冗長加算用セル310,311,31
2,……,450を制御する2ビット信号である。ま
た、商の決定はインバータ811,NRゲート81
3,814および815によって実行され、特に符号反
転回路はNRゲート823,排他的NRゲート83
1によって構成されている。また、制御信号2ビット3
90のうちの1ビット信号tj834の決定はインバータ
811,NRゲート812,813,814,821
および815によって実行される。また、残りの1ビッ
トの制御信号には商の大きさを表す1ビット信号j-
33をそのまま利用する。
以上に本実施例による除算器を構成するCMOS回路の
一例を説明した。上記例では、2値信号化において、部
分剰余▲aj i▼と商qjとを同じ符号割当てにしたが、
それぞれ異なる2値信号化を行ってもよい。
なお、本実施例では冗長2進数と通常の2進数の加算に
ついてのみ説明したが、減算についても同様にして実施
例を作成することが可能である。
なお、第1図の冗長加算用セルは、6トランジスタの排
他的OR、排他的NORを使用すると32トランジスタで
あり、クリティカル・パスのゲートは3ゲートとなる。
また、第8図の商決定用セルでは、トランジスタ数が5
0トランジスタであり、クリティカル・パスのゲート数
が2段となる。
本実施例によれば、除算器をCMOS回路によって、商
1桁当りの演算に要する遅延が5ゲート程度であり、か
つ30トランジスタ程度の素子から構成される基本セル
および50トランジスタ程度の商決定用セルの規則正し
い配列構造の組合せ回路として実現できるため、順次桁
上げ加算器を用いた従来の減算シフト型除算器に比べ、
トランジスタ数でほぼ半分程度、計算時間(ゲートの段
数)において32ビットの除算で約12分の1、64ビ
ットで約24分の1程度になり、さらに、冗長2進加減
算器を用いた従来の減算シフト型除算器に比べ、トラン
ジスタ数でほぼ半分程度になる。
したがって、除算器の回路素子の削減、LSI化の容易
性、および高速化等に効果がある。
発明の効果 本発明によれば、除算の内部演算にあらわれる加減算あ
るいは桁シフトを、各桁に負値を許す符号付きディジッ
ト表現数を少なくとも入力の一方とする冗長加算回路ま
たは冗長減算回路のどちらか一方のみで組合せ回路とし
て実現でき、加減算の各桁の桁上げあるいは桁借りが高
々1桁しか伝搬しないようにすることができるので、 (1)演算処理装置の素子数を削減でき、 (2)加減算が桁数によらず一定時間で高速処理できるた
め、演算処理装置の高速化が図れ、 (3)回路構成を比較的簡単化することができ、 (4)演算処理装置のLSI化が容易かつ経済的に行え
る、 等の効果がある。
【図面の簡単な説明】
第1図は本発明の一実施例を構成する基本回路の概略回
路図、第2図は本発明の一実施例の構成を示すブロック
図、第3図は第2図の部分剰余決定回路の一構成例を示
すブロック図、第4図は第1図のトランスファー・ゲー
トの説明のための図、第5図は第2図の初期部分剰余決
定回路を構成する基本回路の一例を示す概略回路図、第
6図は第2図の商決定用セルの一例を示す概略回路図で
ある。 100……初期部分剰余決定回路、101,102,1
03,104,105……部分剰余決定回路、201,
202,203,204,205……商決定用セル、1
0……r進への変換回路、20……被除数、40……除
数、60……商、310,311,312,313,3
29,330……冗長加算用セル、612,811……
インバータ回路、613,701,702,703,8
12,813,814,815,821,822,82
3……NR回路、611,625……排他的OR回
路、632、722,831……排他的NOR回路、6
31,721……NAND回路、621,623……p
チャンネル・トランジスタ、622,624……nチャ
ンネル・トランジスタ。

Claims (13)

    【特許請求の範囲】
  1. 【請求項1】除算における商の1桁を決定する商決定手
    段と、前記商決定手段によって求められた商に対する剰
    余を求め、符号付ディジット表現の部分剰余として出力
    する部分剰余決定手段とを複数ステージ備えた演算処理
    装置であって、 前記部分剰余決定手段が、符号付ディジット表現の部分
    剰余の各桁毎に、 (a)2個の入力演算数の一方として符号付ディジット
    数の各桁の符号部を表す1ビット信号Aとこの桁の大き
    さを表す1ビット信号Bを入力して、それらの演算数の
    加算(減算)における中間桁上げ(中間桁借り)を表す
    1ビット信号Cを出力する中間桁上げ(中間桁借り)決
    定手段と、 (b)前記2個の入力演算数の一方として前記符号付デ
    ィジット数の各桁の大きさを表す1ビット信号Bを入力
    して、それらの演算数の加算(減算)における中間和
    (中間差)を表す1ビット信号Sを出力する中間和(中
    間差)決定手段と、 (c)前記中間和(中間差)決定手段で求めた中間和
    (中間差)を表す1ビット信号Sと一桁下位桁に設けら
    れた前記中間桁上げ(中間桁借り)決定手段で求めた下
    位桁からの中間桁上げ(中間桁借り)を表す1ビット信
    号Cとから加算(減算)の結果を決定して出力する最終
    和(最終差)決定手段と、 (d)当該ステージの商決定手段からの1ビット制御信
    号Fの値により、入力演算数の符号を反転する第1の手
    段と、 (e)前記当該ステージの商決定手段からの別の1ビッ
    ト制御信号Dの値により前記除数を定数に入れ替える第
    2の手段と を有することを特徴とする演算処理装置。
  2. 【請求項2】中間桁上げ(中間桁借り)決定手段が、 2つの1ビット信号を入力して、そのいずれか一方を、
    各桁の大きさを表す1ビット信号Bの値によって選択す
    る選択回路を有することを特徴とする特許請求の範囲第
    1項記載の演算処理装置。
  3. 【請求項3】中間和(中間差)決定手段が、 被加(減)数の大きさを表す1ビット信号と加(減)数
    の大きさを表す1ビット信号とを入力する排他的論理和
    回路を有することを特徴とする特許請求の範囲第1項記
    載の演算処理装置。
  4. 【請求項4】最終和(最終差)決定手段が、 中間和(中間差)を表す1ビット信号Sと一桁下位桁か
    らの中間桁上げ(中間桁借り)を表す1ビット信号Cと
    を入力する排他的論理和回路を有することを特徴とする
    特許請求の範囲第1項、第2項、第3項のいずれかに記
    載の演算処理装置。
  5. 【請求項5】第1の手段が、当該ステージの商決定手段
    からの1ビット制御信号Fと入力演算数として部分剰余
    を入力して、その制御信号の値により前記部分剰余の符
    号を反転し、中間桁上げ(中間桁借り)決定手段の入力
    演算数の一つを生成し、 第2の手段が、除数と前記当該ステージの商決定手段か
    らの別の1ビット制御信号Dを入力して、その制御信号
    の値によりその除数を0に入れ替え、中間桁上げ(中間
    桁借り)決定手段および中間和(中間差)決定手段の入
    力演算数の一つを生成することを特徴とする特許請求の
    範囲第1項記載の演算処理装置。
  6. 【請求項6】第1の手段が、 入力部分剰余である符号付ディジット数の各桁の符号部
    を表す1ビット信号Aと商決定手段からの1ビット制御
    信号Fとを入力とする排他的論理和回路を含むことを特
    徴とする特許請求の範囲第5項記載の演算処理装置。
  7. 【請求項7】商決定手段が、 前ステージの部分剰余決定手段の出力である部分剰余の
    入力として高々上位3桁を表す信号を入力することを特
    徴とする特許請求の範囲第1項、第2項、第3項、第5
    項、第6項のいずれかに記載の演算処理装置。
  8. 【請求項8】商決定手段が、 前ステージの商決定手段からの1ビット制御信号と符号
    付ディジット数とを入力して、その制御信号の値により
    その符号付ディジット数の符号を反転する符号反転手段
    を有することを特徴とする特許請求の範囲第5項または
    第6項記載の演算処理装置。
  9. 【請求項9】商決定手段が、 前ステージの部分剰余決定手段の出力である部分剰余の
    高々上位3桁を表す信号と前ステージの商決定手段から
    の1ビット制御信号とを入力することを特徴とする特許
    請求の範囲第8項記載の演算処理装置。
  10. 【請求項10】さらに、 2進表現の被除数Xと2進表現の除数Yとを入力し、そ
    の差X−Yを値にもつ符号付ディジット数R0を出力す
    る初期部分剰余決定手段を有することを特徴とする特許
    請求の範囲第1項、第2項、第3項、第5項、第6項の
    いずれかに記載の演算処理装置。
  11. 【請求項11】初期部分剰余決定手段が、 2進数の各桁毎に、対応する桁同士の減算によって符号
    付ディジット数の一桁を生成することを特徴とする特許
    請求の範囲第10項記載の演算処理装置。
  12. 【請求項12】初期部分剰余決定手段が、 2進数の各桁毎に、該桁を表す信号Aと別の2進数の対
    応する桁を表す信号またはその論理否定をとった信号の
    いずれかの信号Bとを入力とする論理積回路と、 前記信号AとBとを入力とする排他的論理和回路と を含むことを特徴とする特許請求の範囲第10項または
    第11項記載の演算処理装置。
  13. 【請求項13】さらに、 符号付ディジット数を2進数へ変換する2進変換手段を
    有することを特徴とする特許請求の範囲第1項、第2
    項、第3項、第5項、第6項のいずれかに記載の演算処
    理装置。
JP61164091A 1986-06-27 1986-07-11 演算処理装置 Expired - Lifetime JPH0614318B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP61164091A JPH0614318B2 (ja) 1986-07-11 1986-07-11 演算処理装置
US07/070,565 US4878192A (en) 1986-07-11 1987-07-07 Arithmetic processor and divider using redundant signed digit arithmetic
US03/239,243 US5031136A (en) 1986-06-27 1990-05-07 Signed-digit arithmetic processing units with binary operands
US07/599,275 US5153847A (en) 1986-06-27 1990-10-16 Arithmetic processor using signed digit representation of internal operands

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP61164091A JPH0614318B2 (ja) 1986-07-11 1986-07-11 演算処理装置

Publications (2)

Publication Number Publication Date
JPS6319036A JPS6319036A (ja) 1988-01-26
JPH0614318B2 true JPH0614318B2 (ja) 1994-02-23

Family

ID=15786601

Family Applications (1)

Application Number Title Priority Date Filing Date
JP61164091A Expired - Lifetime JPH0614318B2 (ja) 1986-06-27 1986-07-11 演算処理装置

Country Status (1)

Country Link
JP (1) JPH0614318B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4887821B2 (ja) * 2006-02-15 2012-02-29 大日本印刷株式会社 線形補間演算器

Also Published As

Publication number Publication date
JPS6319036A (ja) 1988-01-26

Similar Documents

Publication Publication Date Title
US4878192A (en) Arithmetic processor and divider using redundant signed digit arithmetic
JP3436994B2 (ja) シフト装置
US5251164A (en) Low-power area-efficient absolute value arithmetic unit
US4873660A (en) Arithmetic processor using redundant signed digit arithmetic
US4866655A (en) Arithmetic processor and divider using redundant signed digit
Bewick et al. Binary multiplication using partially redundant multiples
US4935892A (en) Divider and arithmetic processing units using signed digit operands
US4866657A (en) Adder circuitry utilizing redundant signed digit operands
US5031136A (en) Signed-digit arithmetic processing units with binary operands
US3462589A (en) Parallel digital arithmetic unit utilizing a signed-digit format
JPH0614318B2 (ja) 演算処理装置
JPH061433B2 (ja) 演算処理装置
Jaberipur et al. An improved maximally redundant signed digit adder
JPH061437B2 (ja) 演算処理装置
JPH061435B2 (ja) 演算処理装置
JPH0667852A (ja) 除算器
Kaivani et al. Fully redundant decimal addition and subtraction using stored-unibit encoding
RU2753184C1 (ru) Параметризуемый однотактный умножитель двоичных чисел с фиксированной точкой в прямом и дополнительном коде
JPH0528407B2 (ja)
JPH0614317B2 (ja) 演算処理装置
Latha et al. Residue-to-Binary converters for the seven moduli set {2 n-5-1, 2 n-3-1, 2 n-2+ 1, 2 n-1-1, 2 n-1+ 1, 2n, 2 n+ 1} for n even
JPH0582609B2 (ja)
JPH061436B2 (ja) 演算処理装置
JPH07122847B2 (ja) 演算処理装置
JPH061434B2 (ja) 演算処理装置

Legal Events

Date Code Title Description
EXPY Cancellation because of completion of term