JPH061435B2 - 演算処理装置 - Google Patents

演算処理装置

Info

Publication number
JPH061435B2
JPH061435B2 JP61152455A JP15245586A JPH061435B2 JP H061435 B2 JPH061435 B2 JP H061435B2 JP 61152455 A JP61152455 A JP 61152455A JP 15245586 A JP15245586 A JP 15245586A JP H061435 B2 JPH061435 B2 JP H061435B2
Authority
JP
Japan
Prior art keywords
digit
circuit
sum
difference
addition
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
JP61152455A
Other languages
English (en)
Other versions
JPS638826A (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 JP61152455A priority Critical patent/JPH061435B2/ja
Priority to US07/066,817 priority patent/US4873660A/en
Publication of JPS638826A publication Critical patent/JPS638826A/ja
Priority to US03/239,243 priority patent/US5031136A/en
Priority to US07/599,275 priority patent/US5153847A/en
Publication of JPH061435B2 publication Critical patent/JPH061435B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Description

【発明の詳細な説明】 産業上の利用分野 本発明は算術演算処理装置に係り、特にセル配列構造を
持ち、LSI化に好適な高速演算処理装置に関する。
従来の技術 従来、例えば高速乗算器に関しては、電子通信学会論文
誌、Vol.J66−D,No.6(1983年)第68
3頁から第690頁において論じられており、また、高
速除算器に関しては、電子通信学会論文誌、Vol.J
67−D,No.4(1984年)第450頁から第45
7頁において論じられている。これらは各桁を{−1,
0,1}の要素で表す冗長2進表現(一種の拡張SD表
現)を利用して、組合せ回路により乗算あるいは除算を
実行する演算器である。したがって、演算処理時間や規
則正しい配列構造の点で他の演算器より優れているが、
素子数や面積の削減、MOS回路での実現等の実用化の
点については配慮されていなかった。
発明が解決しようとする問題点 上記従来技術では、高速演算器に関し、NORとORが
同時にとれるECL論理素子の特長を活かして乗算ある
いは除算等を組合せ回路として実現する方法が提案され
ているが、素子数の削減、他の回路系による実現等の実
用化面についてあまり配慮されておらず、 (1)演算数の桁数が大きくなると素子数が膨大となり1
個のLSIチップで実現することが難しい。
(2)NORとORを同時にとることができないMOS回
路等で実現する場合、ORをNORとインバータの2段
の素子で構成する必要があり、それだけ演算回路の段数
が多くなるため、演算遅延時間が大きくなる。
等の問題がある。
本発明の目的は、このような従来の問題点を改善し、演
算処理装置を配列構造でかつ素子数の少ない組合せ回路
として実現し、桁上げ値の伝播を最小にすると共に回路
構成を簡単化することによってLSIに実装が容易であ
る高速な演算処理装置を提供することにある。
問題点を解決するための手段 上記目的は、制御信号の値によって少なくとも一方が符
号付ディジット数である複数の演算数の加算あるいは減
算を行う加減算手段を備えた演算処置装置において、前
記加減算手段が、各桁毎に、(a)複数の演算数を入力
してそれらの加算(減算)における中間桁上げ(中間桁
借り)を決定する中間桁上げ(中間桁借り)決定手段
と、(b)前記演算数を入力してそれらの加算(減算)
における中間和(中間差)を決定する中間和(中間差)
決定手段と、(c)前記中間和(中間差)決定手段で求
めた中間和(中間差)と一桁下位桁に設けられた前記中
間桁上げ(中間桁借り)決定手段で求めた下位桁からの
中間桁上げ(中間桁借り)とから加算(減算)の結果を
決定して出力する最終和(最終差)決定手段と、(d)
前記制御信号と符号付ディジット数を入力して、その制
御信号の値によりその符号ディジット数の符号を反転す
る符号反転手段とを有し、加減算等の演算を符号付ディ
ジット数の加算(減算)手段で実行することによって達
成される。
さらに、(e)制御信号と少なくとも一つの演算数を入
力して、その制御信号の値によりその演算数を定数に入
れ替えて出力する定数設定手段を有し、中間桁上げ(中
間桁借り)決定手段および中間和(中間差)決定手段が
共に定数設定手段の出力を少なくとも一つの共通の入力
とすることによって、演算数の0倍や桁シフト等の演算
を符号付ディジット数の加算(減算)手段で実行するこ
とにより、達成される。
作用 例えば、内部演算において、各桁を0、正整数およびそ
の正整数に対応する負整数のいずれかの要素で表す符号
付ディジット拡張SD(Signed Dight)表現を用いて内
部演算数を表す。つまり、各桁を{−1,0,1},
{−2,−1,0,1,2}あるいは{−N,……,−
1,0,1,……,N}等のいずれかの要素で表し、1
つの数をいくとおりかに表せるように冗長性をもたせ
る。そのとき、中間桁上げ(あるいは中間桁借り)決定
手段と中間和(あるいは中間差)決定手段は、下位桁か
らの桁上げ(あるいは桁借り)があっても、その桁の中
間和(あるいは中間差)との下位桁から桁上げ(あるい
は桁借り)との和(あるいは差)が必ず1桁内に収まる
ように、その桁の中間桁上げ(あるいは中間桁借り)と
中間和(あるいは中間差)をそれぞれ決定することがで
きる。それによって、加算(あるいは減算)において桁
上げ(あるいは桁借り)の伝播を防止でき、組合せ回路
による並列加算(あるいは減算)が演算数の桁数に関係
なく一定時間で行える。例えば、各桁を{−1,0,
1}の要素で表す拡張SD表現(つまり、冗長2進表
現)では、加算(あるいは減算)において桁上げ(ある
いは桁借り)が高々1桁しが伝播しないようにすること
ができる。このことに関しては、電子通信学会論文誌、
Vol.J67−D,No.4(1984年)第450頁
から第457頁あるいは電子通信学会論文誌、Vol.
J66−D,No.6(1983年)第683頁から第6
90頁などに説明がある。
また、反転手段は、前記中間桁上げ(あるいは中間桁借
り)決定手段および前記中間和(あるいは差)決定手段
の入力となる複数の内部演算数の一つを入力とし、演算
が減算であるか加算であるかの制御信号により、その演
算数の正負を反転したり、しなかったりする。それによ
って、加減算のいずれでも加算(あるいは減算)のみで
実行することができるので素子数の削減が可能である。
さらに、定数設定手段は、0,1等の制御信号の値に従
って、内部演算数の一方を0にすることができる。それ
によって、演算数の桁シフトや0倍等の演算を加算(あ
るいは減算)を用いて行えるので、内部演算処理に加減
算と桁シフト等との振分けを行う回路を省け、演算回路
のゲートの段数を少なくすることができる。
したがって、個々の内部演算の各桁を決定する回路の素
子数および段数を少なくでき、かつこれらの回路の規則
正しい配列構造として高速な演算回路を構成できるの
で、高速演算処理装置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,10
4,105,……に入力される。商60は、整数第1桁
0,小数点以下第1桁z1,小数点以下第2桁z2,…
…,小数点以下第n桁znのr進数としてr進への変換
回路10より出力される。初期部分剰余決定回路100
は、被除数〔0.x12,……xnr20および除数
〔0.y12,……,ynr40を入力として、商の整
数第1桁を決定した後の部分剰余あるいは部分剰余の符
号の反転したものを出力する回路である。特に、被除数
および除数を正規化していると、x1=y1=1となり、
0=1と簡単に求まる。ただしq0はr進数への変換回
路10の入力となる基数rのSD表現数における商[q
0,q1,q2……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,202,
203,204,205,……において、それぞれ決定
された拡張SD表現で表わされた商の各桁を入力とし、
各桁が非負の通常のr進数の商〔z0,z1,z2……
nr60を出力する回路である。
次に、これらのブロック図を用いた除算法について、簡
単に説明する。
減算シフト形除算法は一般に次に漸化式で表わされる。
(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
を減じたり、減じなかったりする部分剰余決定回路とを
設け、除算器を組合せ回路として実現できる。
上記のような内部演算に拡張SD表現を用いることによ
って高速な除算器の実現が可能である。そのとき、例え
ば、基数2の拡張SD表現を用いて、整数部1ビット、
小数部nビットの符号なし2進数Xを、 X=〔x0.x1……xnSD2 で表現すると、Xは という値を表わす。ただし、各桁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表現の内部演算数の正負の反転をする手
段(回路)および内部演算数に0を割り当てる手段によ
り、qjを決定した後の部分剰余R(j+1)は、 R(j+1)=P(j)(P(j)(r×R(j))+D(j)) のように拡張SD表現の加算のみで決定することができ
る。ここで、P(j)は正負の反転を行う関数である。
今、部分剰余R(j)の代わりに部分剰余R(j)と符号だけ
異なる値A(j)を考える。以下、この値も部分剰余と呼
ぶ。A(j+1)は、 A(j+1)=P(j)(r×R(j))+D(j) と定義する。ただしP(j)は、前記qjの値に応じて正負
の反転を行う関数である。
まず、初期部分剰余決定回路100において、 A(1)=〔0.1 2……nSD2+〔0.y12……ynSD2 の計算を行い、部分剰余A(1)を決定する。ただし、i
=1,……,nに対して、1はx1の符号を反転した数
である。さらに、i=1,……,nに対して、yiは常
に非負であるので、初期部分剰余回路100は冗長2進
数と各桁が非負の冗長2進数の加算回路により実現でき
る。また、x1,x2,……,xn,y1,y2,……,yn
は非負であるから、初期部分剰余決定回路100は、各
桁が非負の冗長2進数(つまり2進数)同士の減算回路
つまり通常の減算回路で実現できる。なお、x1=1,y1=1
であるので、冗長2進表現の商の整数第1桁は、q0
1である。
次に、部分剰余A(j)=〔▲aj 0▼.▲aj 1▼ ▲aj 2
▼……▲aj n▼〕SD2 および商の小数点以下第j−1桁qj-1が既に決定され
ている場合の小数点以下第j桁qjおよび部分剰余A
(j+1)の決定について説明する。
商の小数点以下第j桁qjは、j段目の商決定用セル2
01,202,203,204,205……において、
部分剰余A(j)の上位3桁 〔▲aj 0▼.▲aj 1▼a2SD2の値および商の小数点以
下第j−1桁qj-1によって決定される。つまり、A(j)
の上位3桁の値が正ならqj=sign(−qj-1),0なら
j=0,負ならqj=−sign(−qj-1)と決定する。
ただしsign(−qj-1)は、 と定義する。
また、部分剰余決定回路101,102,103,10
4,105,……のうちj段目の回路において、A
(j+1)=P(j)(2×P(j-1)(A(j)))+D(j) の計算を行い、部分剰余▲Aj i+1▼を決定する。ただ
し、上式の第1項は、 (i)sign(−qj-1)×sign(−qj)=1のとき、 P(j)(2×P(j-1)(A(j)))=〔▲aj 0▼ ▲aj 1▼.▲aj 2▼……▲aj n
0〕SD2 (ii)sign(−qj-1)×sign(−qj)=−1のとき、 P(j)(2×P(j-1)(A(j)))=〔▲j 0▼ ▲j 1▼.▲j 2▼……▲j n
0〕SD2 であり、第2項は、 (i)qj≠0のとき、 D(j)=〔0.y12……ynSD2 (ii)qj=0のとき、 D(j)=〔0.00……0〕SD2 であり、各桁が非負の冗長2進数である。したがって部
分剰余決定回路101,102,103,104,10
5,……は、冗長2進と各桁が非負の冗長2進数の加算
回路、冗長2進数の反転回路および加算数を決定する回
路によって実現できる。この場合、部分剰余決定回路へ
の各制御信号251,252,253,254,255
……は、それぞれ商の対応する桁qjの大きさ、および
−qjとqj-1の相違の有無から構成される。
最後に、j=1からnまで上のように商の各桁qjを決
定し、商Q=〔q0.q12……qnSD2が求まると、
r進への変換回路10によって拡張SD表現された商Q
を通常のr(つまり2)進表現z=〔z0.z12……
nr60に変換する。r進への変換回路10は、冗長
2進表現の商Qで1になっている桁だけを1にした符号
なし2進数Q+から、商Qで−1になっている桁だけを
1にした符号なし2進数Q-の通常の減算Q+−Q-を行
い、順次桁上げ加算回路あるいは桁上げ先見加算回路な
どによって実現できる。
以上が第2図に示した除算器を構成する個々のブロック
を用いた除算法の説明であるが、第2図における各商決
定用セル202,203,204,205,206,…
への上位の商決定用セルからの入力信号線271,27
2,273,274,…は、未使用である場合には省略
してもよい。
次に、部分剰余決定回路101,102,103,10
4,105,…について説明する。
第3図は、第2図における各部分剰余決定回路101,
102,103,104,105,…の一構成例を示し
たブロック図である。部分剰余決定回路300(10
1,102,103,…)は、n+1個の冗長加算用セ
ル310,311,312,313,……,329,3
30のアレイである。今、仮に部分剰余決定回路300
が第2図におけるj段目の部分剰余決定回路とすると、
被加算数に対応する入力340,341,342,34
3,…,359は、それぞれ前段(つまり、j−1段)
で決定された部分剰余の各桁▲rj 1▼,▲rj 2▼,…
…,▲rj n▼,あるいは、▲aj 1▼,▲aj 2▼,……,
▲aj n▼の値を表わす。加算数に対応する入力361,
362,363,……,379,380は、それぞれ除
数の各桁y1,y2,……,ynを表す。制御信号390
は、第1図における制御信号251,252,…のいず
れかであり、同じ段(つまりj段)の商決定用セルにお
いて、商の既に決定されたqjあるいはqj-1から決まる
信号である。下位の冗長加算用セルから上位の冗長加算
用セルへの入力441,442,443,……,450
は、それぞれ下位桁からの中間桁上げ表す。また、各冗
長加算セル310,311,312,……,330の出
力410,411,412,……,430は、それぞれ
部分剰余の各桁 ▲rj+1 0▼,▲rj+1 1▼,▲rj+1 2▼,……,▲rj+1 n
▼,あるいは、▲aj+1 0▼,▲aj+1 1▼,▲aj+1 2▼,
……,▲aj+1 n▼の値を表す。なお、r=2、つまり2
進表現の場合、除数の小数点以下第1桁は、y1=1と
固定しているから、入力361を省略してよい。また、
最終桁の桁上げ450を省略することも可能である。
冗長加算用セル310,311,312,313,…
…,329,330は、部分剰余R(j+1)あるいはA
(j+1)の整数第1桁、小数点以下第1桁、小数点以下第
2桁,……,小数点第n桁をそれぞれ決定するセルであ
る。これらの冗長加算用セルのうち、素子数削減のた
め、小数点以下第2桁から小数点以下第n−1桁の冗長
加算用セル312,313,……,329を基本セルで
構成し、上記2桁の冗長加算用セル310,311およ
び最下位桁(つまり、小数点第n桁)の冗長加算用セル
330を例外的なセルとしてもよい。また、上位2桁の
冗長加算用セル310,311を同段(つまり、j段)
の商決定用セルをまとめて1つのセルとすることも可能
であり、あるいは、j段の最下位桁の冗長加算用セル3
30とj+1段の小数点以下第n−1桁の冗長加算用セ
ル329を1つのセルにまとめて、素子数を削減するこ
とも可能である。また、n/2<j≦n-1の範囲の整数jに対
して、j段目の部分剰余決定回路において、小数点以下
第2×(n-j+1)桁以降の冗長加算用セルを省略しても
よい。第2図は、特に、この部分を省略した例を示して
いる。
第1図は、第3図における各冗長加算用セル312,3
13,……,329を構成する。基本セルの構成例を示
すブロック図である。
基本セル510(312,313,……,)は、正負反
転回路511、除数変換回路512、中間和決定回路5
13、中間桁上げ決定回路514および最終和決定回路
515から構成される。入力521は、部分剰余A(j)
の小数点以下第i+1桁▲aj i+1▼の値を表す2ビット
信号であり、制御信号523は、商を小数点以下第j桁
jの大きさ、および−qj-1と−qjとの符号の相違の
有無を表す2ビットの信号である。正負反転回路511
の出力524は、冗長2進の被加算数▲ej i▼を表す2
ビット信号である。また、除数変換回路512の出力5
25は、2進の加算数▲dj i▼を表す1ビット信号であ
る。
信号526は、小数点以下第i桁の中間和▲Sj i▼を表
す1ビット信号であり、信号527は小数点以下第i桁
の中間桁上げの有無を表す1ビット信号であり、信号5
28は小数点以下第i+1桁からの中間桁上げの有無を
表す1ビット信号である。出力529は部分剰余A
(j+1)の小数点以下第i桁▲aj+1 i▼の値を表す2ビッ
ト信号である。
正負反転回路511は、商の小数点以下第j,j−1桁
j,qj-1の符号の相違に応じて、部分剰余の小数点以
下第i+1桁▲aj i+1▼を決定する回路である。
つまり、sign(−qj-1)×sign(−qj)=1のとき、 ▲ej i▼=▲aj i+1▼,sign(−qj-1)×sign(−
j)=−1のとき、▲ej i▼=▲j i+1▼と正負の反
転を行い、被加算数を決定する。ただし、▲aj i+1▼=
ならば−▲j i+1▼=1,▲aj i+1▼=0ならば、−▲
j i+1▼=0,▲aj i+1▼=1ならば、−▲j i+1▼=
−1である。
除数変換回路512は、商の小数点以下第j桁qjの大
きさに応じて、加算数の小数点以下第i桁▲dj i▼を決
定する回路である。つまり、qj≠0のとき、▲dj i
=di,qj=0のとき、▲dj i▼=0となるように0の
割り当てにより加算数を決定する。ただし、diは除数
お小数点以下第i桁yiの値を表す。
中間和決定回路513は、冗長2進の被加算数▲ej i+1
▼と通常の2進の加算数▲dj i▼の冗長加算により中間
和を決定する回路である。つまり、表1に示すように中
間和を決定する。
中間桁上げ決定回路514は、被加算数▲ej i+1▼と加
算数▲dj i▼の冗長加算により中間桁上げ値を決定する
回路である。つまり、表2に示すように中間桁上げ値を
決定する。
最終和決定回路515は、小数点以下第i桁の中間和と
小数点以下第i+1桁の中間桁上げ値の和を求め、部分
剰余A(j+1)の小数点以下第i桁▲aj+1 i▼を決定する
回路である。
以上が第2図に示した部分剰余決定回路101.10
2,103,104,105,…の構成法についての説
明である。
また、初期部分剰余決定回路100は、基本的には、部
分剰余決定回路101,102,…と同様に、基本セル
510においてq0=1の場合のセルのアレイとして構
成することができる。なお、初期部分剰余決定回路10
0は、通常の2進数同士の冗長減算あるいは、通常の2
進数と各桁が非正の冗長2進数の冗長加算であるため、
各桁の中間桁上げを常に0とすることができ、各セルを
簡単化することが可能である。
次に商決定用セル201,202,203,204,2
05,…の構成法について簡単に説明する。
第4図は、第2図における各商決定用セル201,20
2,203,204,205,……の構成例を示すブロ
ック図である。
商決定用セル550(201,202……)は、商決定
用回路551、正負反転回路552および制御信号決定
回路553から構成される。入力560,561および
562は、それぞれ部分剰余の上位3桁▲rj 0▼,▲r
j 1▼および▲rj 2▼,あるいは▲aj 0▼,▲aj 1▼およ
び▲aj 2▼の値を表す2ビット信号であり、入力563
は商の小数点以下第j−1桁qj-1から決定される1ビ
ット信号である。信号564は、商の小数点以下第j桁
jと符号の違いがある仮の値を表す2ビット信号であ
る。また、出力565は商の小数点以下第j桁qjの値
を表す2ビット信号であり、出力566は部分剰余決定
回路101,102,…を制御する2ビット信号であ
る。
商決定回路551は、部分剰余の上位3桁560,56
1および562の値〔▲rj 0▼.▲rj 1▼ ▲rj 2▼〕
SD2あるいは〔▲aj 0▼.▲aj 1▼ ▲aj 2▼〕SD2によ
って商の小数点以下第j桁qjの仮の値564を決定す
る回路である。つまり、部分剰余の上位3桁の値が正な
ら仮の値は1,0なら仮の値は0、負なら仮の値は−1
である。
正負反転回路552は、商の小数点以下第j−1桁q
j-1の値に応じて正負の反転を行い、商の小数点以下第
j桁qjを決定する回路である。つまり、qj-1=1のと
き、1を−1に、−1を1に置き換える正負の反転を行
い。qj-1=−1,0のときは、そのままの値を出力す
る。
制御信号決定回路553は、qjの大きさ、および−qj
と−qj-1の符号の相違の有無を決定する回路である。
なお、本回路553は商決定回路551と共通する部分
が多く、通常は素子数削減のため、これらの2回路をま
とめて共通する部分を共有化する。
以上が商決定用セルの構成法の説明である。
次に、上記の構成法に従って実現した具体的な回路につ
いて説明する。
まず、各信号に対し2値符号化の一例を次に示す。
冗長2進表現の1桁▲aj i▼あるいはqjを2ビット▲
j i+▼ ▲aj i-▼,あるいはqj+j-でそれぞれ表
し、−1を11,0を10,1を01と2値符号化す
る。このとき、商の小数点以下第j桁qjの大きさおよ
び符号は、それぞれqj-およびqj+で表わせる。また、
商の小数点以下第j桁qjとj-1桁qj-1との符号の相違
の有無の信号をtjとする。つまり、符号の相違があれ
ば(sign(−qj)×sign(−qj-1)=-1のとき)、t
j=0、なければ(sign(−qj)×sign(−qj-1)=
1のとき)、tj=1とする。したがって、tjは、制御
信号決定回路553において、 tj=▲aj 0+▼・(▲aj 0-▼+▲aj 1+▼)・ ▲aj
0-▼+▲aj 1-▼+▲aj 2+▼)・(▲aj 0-▼+▲aj 1-
▼+▲aj 2-+qj-1+▼) で決定できる。また、qj-,qj+は、それぞれ qj-=▲aj 0-▼+▲aj 1-▼+▲aj 2-の式で決定できる。ただし、・は論理積(AND)を、
+は倫理和(OR)を、は排他的論理和(EX−O
R)を、 および はそれぞれ▲aj i-▼+▲aj k+▼およびqj-の倫理否定
を表す演算子である。
さらに、第1図における加算数▲dj i▼525、中間和
▲Sj i▼526および中間桁上げ▲Cj i▼527は、そ
れぞれ ▲dj i▼=yi・qj- ▲Sj i▼=▲aj i+1-▼ ▲dj i▼ ▲Cj i▼=(▲aj i+1+▼ tj)・▲aj i+1-▼+▲
j i▼・▲j i+1-▼ の式で決定できる。また、基本セル510の出力▲a
j+1 i▼は、 ▲aj+1 i+▼=▲Sj i▼+▲j i+1▼ ▲aj+1 i-▼=▲Sj i▼ ▲Cj i+1▼ の式で決定できる。
第5図は、上記の2値符号化により第1図の基本セル5
10をCMOS回路で実現した回路図の一例を示す。ゲ
ート611,625はEx−OR、ゲート612はイン
バータ、ゲート613は2入力NOR、ゲート631は
2入力NAND、ゲート632はEx−NORゲートで
ある。また、pチャンネル・トランジスタ621とnチ
ャンネル・トランジスタ622、およびpチャンネル・
トランジスタ632とnチャンネル・トランジスタ62
4は、それぞれトランスファー・ゲートを構成してい
る。
また、▲aj i+1+▼601および▲aj i+1-▼602は第
1図における2ビットの入力521であり、除数の小数
点以下第i桁yiの論理否定▲i▼603は第1図にお
ける入力522である。▲j-▼604およびtj60
5は第1図における2ビットの制御信号を構成する。ま
た、▲dj i▼614は第1図における加算数525であ
り、信号615および602が被加算数524に相当す
る情報を与える。さらに、中間和を示す信号▲−j i
626あるいは中間桁上げの有無を表す信号▲Cj i▼6
27,▲Cj i+1▼628は、それぞれ第1図における1
ビット信号526あるいは527,528に対応する。
出力▲aj+1 i+▼633および▲aj+1 i-▼634は第1
図における部分剰余の小数点以下第i桁を表す2ビット
信号529である。
また、第1図における除数変換回路512はNORゲー
ト613で、正負反転回路511はEx−ORゲート6
11およびトランスファー・ゲート621,622によ
って、中間和決定回路513の核はEx−OR625
で、中間桁上げ決定回路514はインバータ612,ト
ランスファー・ゲート621,622およびトランスフ
ァー・ゲート623,624によって、最終和決定回路
515はNANDゲート631およびEx−NORゲー
ト632によって、それぞれ構成されている。
なお、本例ではトランスファー・ゲートを用いている
が、通常のゲートを用いて実現することも可能である。
第6図は、第5図においてトランスファー・ゲートを使
用した部分回路700をNORゲートによって構成した
一例である。ゲート701,702,703は共に2入
力ゲートであり、この場合、ゲート701および612
は第1図における正負反転回路511の一部分を、ゲー
ト702および703は中間桁上げ決定回路527を構
成する。ただし、第6図のようにすると回路の段数およ
び素子数が増えるので、複合ゲートを用いた構成も可能
である。
次に、第4図の商決定用セル550のCMOS回路での
実現について説明する。
第7図は、前記の2値符号化による商決定用セル550
の一実施例を示すCMOS回路図である。図中、ゲート
811はインバータ、ゲート813および823は2入
力のNOR、ゲート814,815および822は3入
力のNOR、ゲート812および821は4入力NO
R、ゲート831はEx−NORゲートである。
また、▲aj 0+▼801および▲aj 0-▼802は第4図
における2ビット入力560であり、▲aj 1+▼803
および▲aj 1-▼804は2ビット入力561であり、
▲aj 2+▼805および▲aj 2-▼806は2ビット入力
562である。入力qj-1+807は第4図における上位
の商決定用セルからの入力信号563である。また、出
力qj+832および▲j-▼833は商の小数点以下第
j桁を表す2ビット信号565であり、出力▲j-▼8
33およびtj834はj段にある各基本セル510を
制御する2ビット信号である。
また、第4図おける商決定回路551はインバータ81
1、NORゲート813,814、および815によっ
て構成され、正負反転回路552はNORゲート823
およびEx−NORゲート831によって構成される。
また、制御信号決定回路553はインバータ811、N
ORゲート812,813,814,821,および8
15によって構成される。なお、インバータ811、N
ORゲート813,814、および815は、商決定回
路551と制御信号決定回路553で共通に使用されて
いる。
以上に本実施例における演算処理装置のCMOS回路に
よる実現の一例を説明した。上記例では、2値符号化に
おいて、部分剰余▲aj i▼と商qjとを同じ符号割当て
にしたが、それぞれ異なる2値符号化を行ってもよい。
なお、本実施例では冗長2進数と通常の2進数の加算に
ついてのみ説明したが、減算についても同様にして実施
例を作成することが可能である。
なお、第5図の基本セルは、6トランジスタのEx−O
R,Ex−NORを使用すると32トランジスタであ
り、クリティカル・パスのゲート数は3ゲートとなる。
また、第8図の商決定用セルでは、トランジスタ数が5
0トランジスタであり、クリティカル・パスのゲート数
が2段となる。
また、本実施例では、特に除算器をCMOS回路の2値
論理で実現しらが、本発明は他のテクノロジ(例えば、
NMOS,ECL,TTL等)あるいは多値論理を用い
ても容易に実現できる。さらに、乗算器に対しても同様
にして本発明を実施することができる。
本実施例によれば、除算器をCMOS回路によって、商
1桁当りの演算に要する遅延が5ゲート程度であり、か
つ30トランジスタ程度の素子から構成される基本セル
および50トランジスタ程度の商決定用セルの規則正し
い配列構造の組合せ回路として実現できるため、順次桁
上げ加算器を用いた従来の減算シフト形除算器に比べ、
トランジスタ数でほぼ半分程度、計算時間(ゲートの段
数)において32ビットの除算で約12分の1、64ビ
ットで約24分の1程度になり、さらに、冗長2進加減
算器を用いた従来の減算シフト形除算器に比べ、トラン
ジスタ数でほぼ半分程度になる。
したがって、除算器の回路素子の削減、LSI化の容易
性、および高速化等に効果がある。
発明の効果 本発明によれば、除算あるいは乗算等の内部演算にあら
われる加減算を、各桁に負値を許す拡張SD表現数等を
用いた冗長加算回路、また冗長減算回路のどちらか一方
のみで組合せ回路として実現でき、加減算の各桁の桁上
げあるいは桁借りが高々1桁した伝播しないようにする
ことができるので、 (1)演算処理装置の素子数が削減でき、 (2)加減算が桁数によらず一定時間で高速処理できるた
め、演算処理装置の高速化が図れ、 (3)演算処理装置のLSI化が容易かつ経済的に行え
る。
等の効果がある。
【図面の簡単な説明】
第1図は第3図の冗長加算用セルにおける基本セルの構
造を示すブロック図、第2図は本発明の一実施例の演算
処理装置の構成を示すブロック図、第3図は第2図の部
分剰余決定回路の一構成例を示すブロック図、第4図は
第2図における商決定用セルの構造を示すブロック図、
第5図は第1図の基本セルのCMOS回路図、第6図は
第5図のトランスファー・ゲートの説明のための図、第
7図は第4図の商決定用セルのCMOS回路図である。 10……r進への変換回路、20……被除数、40……
除数、60……商、100……初期部分剰余決定回路、
101,102,103,104,105……部分剰余
決定回路、201,202,203,204,205…
…商決定用セル、310,311,312,313……
冗長加算用セル、510……基本セル、511……正負
反転回路、512……除数変換回路、513……中間和
決定回路、514……中間桁上げ決定回路、515……
最終和決定回路、551……商決定回路、552……正
負反転回路、553……制御信号決定回路。

Claims (6)

    【特許請求の範囲】
  1. 【請求項1】制御信号の値によって少なくとも一つが符
    号付ディジット数である複数の演算数の加算あるいは減
    算を行なう加減算手段を備えた演算処理装置であって、 前記加減算手段が、各桁毎に、 (a)複数の演算数を入力してそれらの加算(減算)に
    おける中間桁上げ(中間桁借り)を決定する中間桁上げ
    (中間桁借り)決定手段と、 (b)前記演算数を入力してそれらの加算(減算)にお
    ける中間和(中間差)を決定する中間和(中間差)決定
    手段と、 (c)前記中間和(中間差)決定手段で求めた中間和
    (中間差)と一桁下位桁に設けられた前記中間桁上げ
    (中間桁借り)決定手段で求めた下位桁からの中間桁上
    げ(中間桁借り)とから加算(減算)の結果を決定して
    出力する最終和(最終差)決定手段と、 (d)前記制御信号と符号付ディジット数を入力して、
    その制御信号の値によりその符号付ディジット数の符号
    を反転する符号反転手段とを有することを特徴とする演
    算処理装置。
  2. 【請求項2】さらに (e)制御信号と少なくとも一つの演算数を入力して、
    その制御信号の値によりその演算数を定数に入れ替えて
    出力する定数設定手段を有し、 中間桁上げ(中間桁借り)決定手段および中間和(中間
    差)決定手段が共に前記定数設定手段の出力を少なくと
    も一つの共通の入力とすることを特徴とする特許請求の
    範囲第1項記載の演算処理装置。
  3. 【請求項3】符号反転手段が、 1ビット制御信号tと符号付ディジット数とを入力し
    て、その符号付ディジット数の大きさが0でなければ、
    前記符号付ディジット数の符号を表す1ビット信号と前
    記制御信号tとのパリティを求める手段を有することを
    特徴とする特許請求の範囲第1項または第2項記載の演
    算処理装置。
  4. 【請求項4】定数設定手段が、 1ビット制御信号qと入力された演算数の大きさとの論
    理積を求める手段を有することを特徴とする特許請求の
    範囲第2項記載の演算処理装置。
  5. 【請求項5】中間桁上げ(中間桁借り)決定手段と中間
    和(中間差)決定手段と最終和(最終差)決定手段と符
    号反転手段とをそれぞれ内部演算の1桁分の演算に対応
    するセルによって構成し、複数の前記セルの配列構造を
    有することを特徴とする特許請求の範囲第1項記載の演
    算処理装置。
  6. 【請求項6】中間桁上げ(中間桁借り)決定手段と中間
    和(中間差)決定手段と最終和(最終差)決定手段と符
    号反転手段と定数設定手段とをそれぞれ内部演算の1桁
    分の演算に対応するセルによって構成し、複数の前記セ
    ルの配列構造を有することを特徴とする特許請求の範囲
    第2項または第4項記載の演算処理装置。
JP61152455A 1986-06-27 1986-06-27 演算処理装置 Expired - Lifetime JPH061435B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP61152455A JPH061435B2 (ja) 1986-06-27 1986-06-27 演算処理装置
US07/066,817 US4873660A (en) 1986-06-27 1987-06-25 Arithmetic processor 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
JP61152455A JPH061435B2 (ja) 1986-06-27 1986-06-27 演算処理装置

Publications (2)

Publication Number Publication Date
JPS638826A JPS638826A (ja) 1988-01-14
JPH061435B2 true JPH061435B2 (ja) 1994-01-05

Family

ID=15540893

Family Applications (1)

Application Number Title Priority Date Filing Date
JP61152455A Expired - Lifetime JPH061435B2 (ja) 1986-06-27 1986-06-27 演算処理装置

Country Status (1)

Country Link
JP (1) JPH061435B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH077291Y2 (ja) * 1988-08-11 1995-02-22 東陶機器株式会社 タイル目地拭取装置

Also Published As

Publication number Publication date
JPS638826A (ja) 1988-01-14

Similar Documents

Publication Publication Date Title
Swartzlander et al. Computer arithmetic
Lu Arithmetic and logic in computer systems
US4878192A (en) Arithmetic processor and divider using redundant signed digit arithmetic
US5023827A (en) Radix-16 divider using overlapped quotient bit selection and concurrent quotient rounding and correction
US5132925A (en) Radix-16 divider using overlapped quotient bit selection and concurrent quotient rounding and correction
EP1752870B1 (en) Multiplier
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
Jaberipur et al. An improved maximally redundant signed digit adder
JPH063578B2 (ja) 演算処理装置
US4866657A (en) Adder circuitry utilizing redundant signed digit operands
US5031136A (en) Signed-digit arithmetic processing units with binary operands
US5206825A (en) Arithmetic processor using signed-digit representation of external operands
US5153847A (en) Arithmetic processor using signed digit representation of internal operands
US3462589A (en) Parallel digital arithmetic unit utilizing a signed-digit format
JPH061435B2 (ja) 演算処理装置
JPH061437B2 (ja) 演算処理装置
JPH061433B2 (ja) 演算処理装置
JPH0614318B2 (ja) 演算処理装置
JPH061434B2 (ja) 演算処理装置
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

Legal Events

Date Code Title Description
EXPY Cancellation because of completion of term