JP2607759B2 - Divider - Google Patents

Divider

Info

Publication number
JP2607759B2
JP2607759B2 JP3030055A JP3005591A JP2607759B2 JP 2607759 B2 JP2607759 B2 JP 2607759B2 JP 3030055 A JP3030055 A JP 3030055A JP 3005591 A JP3005591 A JP 3005591A JP 2607759 B2 JP2607759 B2 JP 2607759B2
Authority
JP
Japan
Prior art keywords
division
data
circuit
input
register
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 - Fee Related
Application number
JP3030055A
Other languages
Japanese (ja)
Other versions
JPH04268920A (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.)
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 JP3030055A priority Critical patent/JP2607759B2/en
Publication of JPH04268920A publication Critical patent/JPH04268920A/en
Application granted granted Critical
Publication of JP2607759B2 publication Critical patent/JP2607759B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【産業上の利用分野】本発明は除算器に関するものであ
り、特には、ベクトル処理及び浮動小数点コプロセッサ
処理に適して除算回路構成を有する除算器に関するもの
である。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a divider, and more particularly, to a divider having a division circuit configuration suitable for vector processing and floating point coprocessor processing.

【0002】[0002]

【従来の技術】従来から、除算器の場合には他の演算
器、例えば加算器または乗算器等に比べて演算サイクル
数が余分にかかるので、演算時間が係るため演算回路の
高速化が問題となっていた。従来に於ける除算の方式に
ついては、例えば回復型除算、非回復型除算或いはそれ
らを応用した高基数回復型除算、高基数非回復型除算、
更には乗算器を利用する繰り返し近似除算など様々な方
式が知られている。
2. Description of the Related Art Conventionally, in the case of a divider, the number of operation cycles is extra than that of another operation unit, for example, an adder or a multiplier. Had become. Conventional methods of division include, for example, restoring division, non-restoring division or a high radix restoring division that applies them, high radix non-restoring division,
Further, various methods are known, such as iterative approximate division using a multiplier.

【0003】処で、各種の演算に関しては、近年益々高
速演算が求められるており、従って除算演算もまた高速
かつ正確に行う必要性が高まって来ている。然しなが
ら、上記した様に、除算演算はかなり複雑な演算を実行
する必要がありしかも誤差が無く、正確な演算結果を出
力する事が要求されているので、係る除算演算回路を小
面積で正確にそして高速に実現することは非常に難し
い。従って、従来に於いては、係る除算回路は、ハード
的には、かなり大きなものとなっているので、通常は他
の演算回路とは別個に構成されており、それ故除算器自
体が大きくなると言う欠点が有った。
[0003] In recent years, with respect to various types of operations, high-speed operations have been increasingly demanded, and thus there is an increasing need to perform division operations at high speed and accurately. However, as described above, the division operation needs to execute a fairly complicated operation, and is required to output an accurate operation result without any error. And it is very difficult to achieve it at high speed. Therefore, in the related art, such a dividing circuit is considerably large in terms of hardware, so that it is usually configured separately from other arithmetic circuits. There was a drawback to say.

【0004】例えば、従来公知である、除数、非除数を
互いに複数ビット単位(基数)に区分してその所定ビッ
ト単位毎に除算演算を行うと共に、剰余値の符号を判断
して予測商値を補正する演算方法を採用している高基数
非回復型除算方式に於いて、高速にかつ正確に演算しよ
うとするならば、基数を大きくして除算のループ数を減
らすことが考えられるが、それにともなう倍数発生回路
の数の増大、商予測回路の複雑化、更には該商予測回路
の増大化は避けられない。ましてその除算器がベクトル
プロセッサ内の一つの演算器であったなら除算器が占め
ることができるチップ上のスペースには限りがある。
For example, conventionally known divisors and non-divisors are divided into a plurality of bit units (radix), a division operation is performed for each predetermined bit unit, and a sign of a remainder value is determined to determine a predicted quotient value. In the high-radix non-restoring division method that employs an arithmetic method for correcting, if it is desired to operate at high speed and accurately, it is conceivable to increase the radix and reduce the number of division loops. Accordingly, an increase in the number of multiple generation circuits, an increase in the complexity of the quotient prediction circuit, and an increase in the quotient prediction circuit are inevitable. Furthermore, if the divider is one computing unit in the vector processor, the space on the chip that the divider can occupy is limited.

【0005】その為、除算演算処理を高速かつ正確に実
行する為の回路構成と係る除算演算回路をある程度に迄
小面積化させ、1チップからなる、ベクトルプロセッサ
上に実現することは、前記問題点を考慮し且つそれぞれ
の兼ね合いを検討することが必要である。
[0005] For this reason, it is necessary to reduce the area of the circuit for performing the division operation processing at high speed and accurately and the division operation circuit to a certain extent and realize the division operation on a one-chip vector processor. It is necessary to consider the points and to consider each trade-off.

【0006】[0006]

【発明が解決しようとする課題】本発明の目的は、上記
した従来技術の問題点及び欠点を改良し、高速に且つ正
確な除算演算処理を実行しえる除算器で有って然かも半
導体集積回路からなるチップ内に搭載しえる程度に小型
化されたハードウエアとしての除算器を提供するもので
ある。
SUMMARY OF THE INVENTION An object of the present invention is to improve the above-mentioned problems and disadvantages of the prior art and to provide a divider capable of executing a high-speed and accurate division operation. It is an object of the present invention to provide a divider as hardware which is small enough to be mounted in a chip composed of circuits.

【0007】[0007]

【課題を解決するための手段】本発明は上記した目的を
達成するため、以下に記載されたような技術構成を採用
するものである。即ち、本発明は基本的には、除数、被
除数で構成された所定長さの演算データを受取とる入力
レジスタ、入力された演算データを除算演算する為の複
数個の除算演算回路、及び該除算演算回路の演算結果を
出力する出力レジスタから構成される除算器に於いて、
該除算器は該演算データを連続して受取り、該除算演算
回路に於いて所定の演算を実行した後、当該演算処理後
の演算結果データを連続して出力する様に構成されてい
る除算器であり、更により具体的には、除数、被除数で
構成された所定長さの演算データを受取とる入力レジス
タ、入力された演算データを除算演算する為の複数個の
除算演算回路、及び該除算演算回路の演算結果を出力す
る出力レジスタから構成されると共に、該入力レジスタ
と該除算演算回路との間に、一部の演算データを格納し
ておく入力演算データラッチ回路が、又該除算演算回路
と該出力レジスタとの間に一部の演算処理結果のデータ
を格納しておく出力データラッチ回路とがそれぞれ設け
られている除算器であり、更には、除数、被除数で構成
された所定長さの演算データを連続して複数個受取とれ
る入力レジスタ、入力された演算データを除算演算する
為の複数個の除算演算回路、及び該除算演算回路の演算
結果を連続して複数個出力する出力レジスタから構成さ
れると共に、該入力レジスタと該除算演算回路との間
に、一部の演算データを格納しておく入力演算データラ
ッチ回路が、又該除算演算回路と該出力レジスタとの間
に一部の演算処理結果のデータを格納しておく出力デー
タラッチ回路とがそれぞれ設けられている除算器であ
る。更に、本発明にかかる除算器は、特にベクトルプロ
セッサ内のハードウェア除算器として又浮動小数点コプ
ロセッサとしての除算器とし適したものである。
The present invention employs the following technical configuration to achieve the above object. That is, the present invention basically provides an input register for receiving operation data of a predetermined length composed of a divisor and a dividend, a plurality of division operation circuits for performing a division operation on the input operation data, and the division operation. In a divider composed of an output register that outputs the operation result of the operation circuit,
The divider is configured to continuously receive the operation data, execute a predetermined operation in the division operation circuit, and continuously output the operation result data after the operation processing. More specifically, an input register for receiving operation data of a predetermined length composed of a divisor and a dividend, a plurality of division operation circuits for performing a division operation on the input operation data, and the division An input operation data latch circuit for storing a part of operation data between the input register and the division operation circuit, the input operation data latch circuit comprising an output register for outputting the operation result of the operation circuit; A divider provided with an output data latch circuit for storing data of a part of the operation processing result between the circuit and the output register; and a predetermined length comprising a divisor and a dividend. Sano An input register that can continuously receive a plurality of division data, a plurality of division operation circuits for performing a division operation on input operation data, and an output register that continuously outputs a plurality of operation results of the division operation circuit. And an input operation data latch circuit for storing a part of operation data between the input register and the division operation circuit, and a part between the division operation circuit and the output register. And an output data latch circuit for storing data of the result of the arithmetic processing. Furthermore, the divider according to the invention is particularly suitable as a hardware divider in a vector processor and as a divider as a floating point coprocessor.

【0008】[0008]

【作用】本発明に於いては、ベクトルプロセッサの様
に、複数の演算データが連続して入力され、該演算デー
タを連続して除算演算処理して且つその結果を連続して
出力する事が要求されるシステムに於いて、予め定めら
れた所定の数の演算データを同時に受入れた後、或い
は、浮動小数点コプロセッサの様に、演算データを一つ
ずつ演算処理をする方式に於いて、その一部の演算デー
タを除算器の除算演算回路で演算処理を実行している
間、当該残った部分の演算データを一時的に入力側ラッ
チ回路に格納しておき、前記の演算データの該除算演算
回路で演算処理が完了した場合に、当該演算処理が完了
した演算処理結果データを一時的に出力側ラッチ回路に
格納しておき、その間に前記した残りの部分の演算デー
タを該除算演算回路で演算処理を行わせ、該残りの部分
の演算データの演算結果と前記出力側ラッチ回路に格納
されている演算結果とを同時に且つ入力された順序に従
って出力する様にしたものである。
According to the present invention, like a vector processor, a plurality of operation data are continuously input, the operation data is subjected to a continuous division operation, and the result is output continuously. In the required system, after receiving a predetermined number of operation data at the same time, or in a method of processing the operation data one by one like a floating point coprocessor, While the operation data is partially executed by the division operation circuit of the divider, the operation data of the remaining portion is temporarily stored in the input side latch circuit, and the division of the operation data is performed. When the arithmetic processing is completed in the arithmetic circuit, the arithmetic processing result data for which the arithmetic processing has been completed is temporarily stored in the output-side latch circuit, and during the time, the remaining arithmetic data is stored in the division arithmetic circuit. Performed in Processing to perform the one in which was set to be output in the order calculation result and said output-side operation result stored in the latch circuits are simultaneously and input of the operational data of the portion of the 該残Ri.

【0009】[0009]

【実施例】以下に、本発明に係る除算器の具体例を図面
を参照しながら詳細に説明する。図1は、本発明に係る
除算器の原理説明図であり又、本発明に係る除算器の一
具体例を示す図である。即ち、半導体集積回路を構成す
るチップ1の一部に設けられた除算器2で有って、該除
算器は、除数、被除数で構成された所定長さの演算デー
タを連続して1個ずつ若しくは複数個まとめて受取とれ
る入力レジスタ3、入力された演算データを除算演算す
る為の複数個の除算演算回路4(4─1、4─2・・・
4─n)、及び該除算演算回路4(4─1、4─2・・
・4─n)のそれぞれの演算結果を逐次的に若しくは複
数個まとめて出力する出力レジスタ5から構成されると
共に、該入力レジスタ3と該除算演算回路4のそれぞれ
との間に、入力された演算データの内、一部の演算デー
タを格納しておく入力演算データラッチ回路6(6─
1、6─2、・・・6─n)が、又該除算演算回路4の
それぞれと該出力レジスタ5との間に一部の演算処理結
果のデータを格納しておく出力データラッチ回路7(7
─1、7─2、・・・7─n)とがそれぞれ設けられて
いるものである。更に、図1に示す本発明の除算器に於
いては、該入力レジスタ3に逐次或いはまとめて入力さ
れた複数個の演算データの一部を該除算演算回路4に供
給するか、該入力演算データラッチ回路6に一時的に格
納させるかを選択する選択手段8(8─1、8─2・・
・8─n)が該入力レジスタ3と該除算演算回路4のそ
れぞれとの間に設けられており、又該除算演算回路4の
それぞれと該出力レジスタ5との間には、該除算演算回
路4のそれぞれに於いて演算処理された結果のデータを
直接出力レジスタ5に出力するか、該出力データラッチ
回路7に格納された演算結果データを該出力レジスタ5
に出力するかを選択する選択手段9が 設けられてい
る。
BRIEF DESCRIPTION OF THE DRAWINGS FIG. 1 is a block diagram showing an embodiment of a divider according to the present invention. FIG. 1 is a diagram illustrating the principle of a divider according to the present invention, and a diagram illustrating a specific example of the divider according to the present invention. That is, a divider 2 provided on a part of a chip 1 constituting a semiconductor integrated circuit. The divider 2 successively outputs operation data of a predetermined length composed of a divisor and a dividend one by one. Alternatively, a plurality of input registers 3 can be collectively received, and a plurality of division operation circuits 4 (4─1, 4─2...) For performing division operation of inputted operation data.
4─n) and the division operation circuit 4 (4─1, 4─2...
(4─n) is composed of an output register 5 for sequentially or collectively outputting a plurality of operation results, and is input between the input register 3 and each of the division operation circuits 4. Of the operation data, an input operation data latch circuit 6 (6 #) for storing a part of operation data
.., 6} n) and an output data latch circuit 7 for storing data of a result of a part of the arithmetic processing between each of the division operation circuits 4 and the output register 5. (7
{1, 7 # 2,..., 7 # n). Further, in the divider of the present invention shown in FIG. 1, a part of the plurality of operation data sequentially or collectively input to the input register 3 is supplied to the division operation circuit 4 or the input operation Selection means 8 (8 # 1, 8 # 2...) For selecting whether to temporarily store data in data latch circuit 6.
(8─n) is provided between the input register 3 and each of the division operation circuits 4, and between each of the division operation circuits 4 and the output register 5, the division operation circuit 4 is output directly to the output register 5 or the operation result data stored in the output data latch circuit 7 is output to the output register 5.
There is provided a selection means 9 for selecting whether or not to output the data.

【0010】本発明に於ける該除算演算回路としては特
に限定されるものでは無いが、好ましくは、高基数非回
復型除算器である。本発明に使用される該高基数非回復
型除算方式は、従来公知であって、除数、非除数を互い
に複数ビット単位(基数)に区分してその所定ビット単
位毎に除算演算を行うものであり、従って1サイクルタ
イムでnビット、例えば4ビットの商をうると共に、余
剰値の符号を判断して予測商値を補正する演算方法であ
る。図2に本発明に使用される該高基数非回復型除算器
の除算演算回路4の構成に関する一具体例を示す。即
ち、例えば図2に示す様に、除数入力レジスタ3─1か
ら演算データを受け取る除数レジスタ21と被除数入力
レジスタ3─2から演算データを受け取る部分剰余レジ
スタ24、倍数発生器22、加減算器25、部分商予測
器231と部分商発生器232から構成された部分商予
測手段23、余剰レジスタ(RMD)26、余剰補正回
路(RMDC)27、商補正部(QG)及び商レジスタ
(QR)29とから構成されるもので有って、上記部分
商予測手段23の出力値を該加減算器25の出力の上位
ビットと除数レジスタ21の上位ビットとから当該部分
商のビットを予測するものである。上記の除算演算方法
に関してその演算の具体的な方法の例を説明すると、部
分剰余レジスタ(PR)24の値と除数のk倍(例え
ば、─(r─1)、─(r─2)、・・・、─1、+
1、・・・、r─2、r─1倍)(但しrは基数であ
る)を加減算した結果(CPA)と、除数レジスタ(D
SR)21の値とから予測部分商を求める際に、予測部
分商の上位ビットが、上記加減算結果(CPA)の上位
ビット、及び除数レジスタ(DSR)の上位ビットによ
って決定されることに着目して、上記加減算結果(CP
A)、除数レジスタ(DSR)21から予測部分商(P
PQ)を適宜の検索手段例えば検索テーブル利用して予
測部分商(PPQ)を求めるものである。上記除算演算
回路に於いて、実際に演算を実行する場合には、図2に
おいて、除数レジスタ(DSR)21に除数Dが格納さ
れ、それがまず倍数発生回路(MDG)22に入力され
る。倍数発生回路(MDG)22は部分商予測レジスタ
(QP)28からの部分商予測番号(m)を受けて、例
えば上記基数rが16の場合は、─15、─14、─1
3、・・・、─2、─1、0、+1、+2、・・・、+
14、+15倍の除数を作成する回路である。部分剰余
レジスタ(PR)24には、演算の最初において被除数
Nが設定された後は、毎演算サイクル毎に新たな部分剰
余が置数される。次で加減算器25で、部分剰余レジス
タ(PR)24の出力とm倍の除数m×D(−15≦m
≦+15;mは整数)との加算を行い、その結果は部分
剰余レジスタ(PR)24、部分商予測回路(QP)2
3、剰余レジスタ(RMD)26等に出力される。剰余
レジスタ(RMD)26は繰り返し演算の最終的な予測
剰余を保持するレジスタで、加減算繰り返し演算の終了
後、剰余補正器(RMDC)27を通して正しい剰余が
出力される。剰余補正器(RMDC)27での具体的な
補正方法は、例えば剰余レジスタ(RMD)26の符合
ビットが負数を示している時には、倍数mの値から1を
引いた値を再度入力して演算処理を行い剰余レジスタ2
6の値が正となるまで演算処理を行う。又該符合ビット
が正数の時は、その儘の値を剰余とするように動作す
る。部分商補正部(QG)28は部分商予測レジスタ
(QP)23の出力と、加減算器25出力の符合ビット
を参照して、正確な部分商を決定し、商レジスタ(Q
R)29に蓄積する。予測商レジスタ(QP)233
は、加減算器25の出力と除数レジスタ(DSR)21
の出力とから、次に加減算すべきm×DSRのmの値を
計算する回路である。更に、本発明に係る該除算演算回
路4は、上記した構成例に加えて、浮動小数点指数部の
減算部、無効演算、例外検出部を含んでいるものであっ
ても良い。又、本発明に係る除算器には該除算演算回路
4に付随して、浮動小数点演算をIEEE規格にともな
って型判定などをおこなう除算前処理部10、及び出力
演算結果データを補正する丸め部11を有するもので有
っても良い。
The division operation circuit in the present invention is not particularly limited, but is preferably a high radix non-restoring divider. The high radix non-restoring division method used in the present invention is conventionally known, in which a divisor and a non-divisor are divided into a plurality of bit units (radix) and a division operation is performed for each predetermined bit unit. There is, therefore, a calculation method for obtaining a quotient of n bits, for example, 4 bits, in one cycle time, and correcting the predicted quotient value by judging the sign of the surplus value. FIG. 2 shows a specific example of the configuration of the division operation circuit 4 of the high radix non-restoring divider used in the present invention. For example, as shown in FIG. 2, a divisor register 21 receiving operation data from the divisor input register 3 # 1, a partial remainder register 24 receiving operation data from the dividend input register 3 # 2, a multiple generator 22, an adder / subtractor 25, A partial quotient predictor 23 composed of a partial quotient predictor 231 and a partial quotient generator 232, a surplus register (RMD) 26, a surplus correction circuit (RMDC) 27, a quotient correction unit (QG), and a quotient register (QR) 29; The output value of the partial quotient prediction means 23 is used to predict the bit of the partial quotient from the upper bits of the output of the adder / subtractor 25 and the upper bits of the divisor register 21. An example of a specific method of the above division operation method will be described. The value of the partial remainder register (PR) 24 and k times the divisor (for example, ─ (r─1), ─ (r─2), ..., $ 1, +
1,..., R─2, r─1 times (where r is a radix) and a divisor register (DPA)
When calculating the predicted partial quotient from the value of (SR) 21, it is noted that the upper bits of the predicted partial quotient are determined by the upper bits of the addition / subtraction result (CPA) and the upper bits of the divisor register (DSR). And the above addition / subtraction result (CP
A), the predicted partial quotient (P) from the divisor register (DSR) 21
PQ) is obtained by using a suitable search means such as a search table to obtain a predicted partial quotient (PPQ). In the above-described division operation circuit, when actually performing the operation, the divisor D is stored in the divisor register (DSR) 21 in FIG. 2 and is input to the multiple generation circuit (MDG) 22 first. The multiple generation circuit (MDG) 22 receives the partial quotient prediction number (m) from the partial quotient prediction register (QP) 28 and, for example, when the radix r is 16, $ 15, $ 14, $ 1
3, ..., $ 2, $ 1, 0, +1, +2, ..., +
This is a circuit for creating a divisor of 14, +15 times. After the dividend N is set in the partial remainder register (PR) 24 at the beginning of the operation, a new partial remainder is set every operation cycle. Next, the output of the partial remainder register (PR) 24 and the divisor m × D (−15 ≦ m)
≤ + 15; m is an integer), and the result is added to the partial remainder register (PR) 24 and the partial quotient prediction circuit (QP) 2
3. Output to the remainder register (RMD) 26 and the like. A remainder register (RMD) 26 is a register for holding a final prediction remainder of the repetition operation, and outputs a correct remainder through a residue corrector (RMDC) 27 after completion of the addition / subtraction repetition operation. A specific correction method in the residue corrector (RMDC) 27 is that, for example, when the sign bit of the residue register (RMD) 26 indicates a negative number, the value obtained by subtracting 1 from the value of the multiple m is input again to calculate. Performs processing and remainder register 2
The arithmetic processing is performed until the value of 6 becomes positive. When the sign bit is a positive number, the operation is performed so that the value as it is is remainder. The partial quotient correction unit (QG) 28 determines an accurate partial quotient by referring to the output of the partial quotient prediction register (QP) 23 and the sign bit of the output of the adder / subtracter 25, and
R) Store in 29. Prediction quotient register (QP) 233
Is the output of the adder / subtractor 25 and the divisor register (DSR) 21
Is a circuit for calculating the value of m of m × DSR to be added or subtracted next from the output of. Further, the division operation circuit 4 according to the present invention may include a subtraction unit for a floating-point exponent part, an invalid operation, and an exception detection unit in addition to the above configuration example. In addition, the divider according to the present invention is provided with the division operation circuit 4 and includes a pre-division processing unit 10 for performing a floating-point operation type determination according to the IEEE standard, and a rounding unit for correcting output operation result data. 11 may be provided.

【0011】本発明に於いて使用される該除算前処理部
10は、上記した通り、入力レジスタ3と該除算演算回
路4との間に設けられるもので有る。尚、本発明に於い
ては、該入力レジスタ3は除数Dを入力するレジスタ
(OPD)3─1と被除数Nを入力するレジスタ(OP
D)3─2とから構成されており、各レジスタそれぞれ
が連続している複数個の、所定のビット数から構成され
た演算データを同時に受け入れるものであるか又は、該
演算データを1つずつ受入るもので有っても良い。
The pre-division processing unit 10 used in the present invention is provided between the input register 3 and the division operation circuit 4 as described above. In the present invention, the input register 3 is a register (OPD) 3 # 1 for inputting a divisor D and a register (OPD) for inputting a dividend N.
D) 3─2, and each of the registers simultaneously receives a plurality of continuous arithmetic data composed of a predetermined number of bits, or the arithmetic data is It may be accepted.

【0012】処で、本発明に於いて使用される該除算前
処理部10においてはIEEE規格に基づき入力データ
の型判定、浮動小数点の符号、指数、仮数の切りだし、
および仮数部の隠れビットの復元、そして仮数部の大小
判定を行うブロックである。上記入力データの型判定と
は、IEEE規格に既に定められているもので有って、
例えばN割る0とか、無限大割る無限大と言う様に、予
め除算演算として不適切な除算形式が登録されており、
演算しようとする除数、被除数の組合せが、係る除算形
式に該当しているか否を検出する回路である。
In the division pre-processing unit 10 used in the present invention, the type of input data is determined based on the IEEE standard, and the sign of floating point, exponent, and mantissa are cut out.
And a block for restoring the hidden bits of the mantissa and determining the magnitude of the mantissa. The type determination of the input data is defined in the IEEE standard,
For example, an inappropriate division format is previously registered as a division operation, such as N divided by 0 or infinity divided by infinity.
This is a circuit for detecting whether or not the combination of the divisor and the dividend to be calculated corresponds to the division format.

【0013】尚、本発明に係る除算演算回路に於いて使
用される演算データは倍精度処理に於いては64ビット
のデータ構成であり、単精度処理では32ビットで構成
されている。そこで、本発明に於いて倍精度処理する場
合のデータの構成フォーマットの例を図3に示してお
く。即ち、符号ビットSを含めたフォーマットが64ビ
ットから構成されており、符号一ビットの次の11ビッ
トが指数部を表し、次の52ビットが仮数部を表すもの
である。但し仮数部の先頭に隠れビットを復元し、後述
する仮数部の除算に使用されるものである。
The operation data used in the division operation circuit according to the present invention has a data structure of 64 bits in the double precision processing, and has 32 bits in the single precision processing. Therefore, FIG. 3 shows an example of a data configuration format in the case of performing double precision processing in the present invention. That is, the format including the sign bit S is composed of 64 bits, the next 11 bits after one sign bit represent the exponent part, and the next 52 bits represent the mantissa part. However, the hidden bits are restored at the head of the mantissa and used for division of the mantissa described later.

【0014】本発明に於いては、又該除数Dと被除数N
の仮数部の大小を比較して、常に除数Dの仮数部が被除
数Nの仮数部より大きくなるようにして除算演算を行う
ものである。その為、両者の比較工程に於いて、被除数
Nの仮数部が除数Dの仮数部より大きい場合には、被除
数Nを1ビット右にシフトさせ、被除数側の指数部に1
を加算する事になる。
In the present invention, the divisor D and the dividend N
The division operation is performed such that the mantissa part of the divisor D is always larger than the mantissa part of the dividend N by comparing the magnitudes of the mantissa parts. Therefore, if the mantissa part of the dividend N is larger than the mantissa part of the divisor D in the comparison process between the two, the dividend N is shifted right by one bit, and 1 is added to the exponent part on the dividend side.
Will be added.

【0015】係る前処理のフローチャートを図4に示
す。即ち、除数レジスタ3─1と被除数レジスタ3─2
のそれぞれに入力された演算データはステップ(a)に
於いて、各演算データの仮数部のみを取り出す。ここで
該仮数部データの前に1が設けられているのは、隠れビ
ットを出現させた事を意味している。)その後両演算デ
ータの仮数部同志の大きさを比較し(ステップ(b))
被除数Nが除数Dより小さければ、(ステップ(c))
被除数Nの演算データをそのまま部分剰余レジスタ24
に出力し、若し被除数Nが除数Dより大きければ、ステ
ップ(d)に於いて被除数Nのデータを1ビット右にシ
フトさせ、強制的に被除数Nのデータを1桁小さくさせ
てN<Dの条件を実現させるものである。その為、除数
と被除数のバランスがくずれるので、被除数の指数部に
1を加算することによってバランスを回復させるもので
ある。
FIG. 4 shows a flowchart of such preprocessing. That is, the divisor register 3 # 1 and the dividend register 3 # 2
In step (a), only the mantissa of each operation data is extracted from the operation data input to each of them. Here, the fact that 1 is provided before the mantissa data means that a hidden bit has appeared. ) Then, the magnitudes of the mantissa parts of both operation data are compared (step (b)).
If the dividend N is smaller than the divisor D, (step (c))
The operation data of the dividend N is directly stored in the partial remainder register 24.
If the dividend N is larger than the divisor D, the data of the dividend N is shifted right by one bit in step (d), and the data of the dividend N is forcibly reduced by one digit, and N <D The following condition is realized. Therefore, the balance between the divisor and the dividend is lost, so that the balance is restored by adding 1 to the exponent of the dividend.

【0016】図5は本発明に於いて使用される除算演算
回路100に設けられる指数演算部104の回路構成例
を示すものであり、除数Dの指数と被除数Nの指数とを
適宜のバイアス加算を行いながら減算処理を行い除算後
の指数値を決定するものである。又、本発明に於いて使
用される前処理部には、上記した様な除算演算に際して
不適切な除算の型を検出する例外検出と無効演算検出を
実行する為の回路が設けられており、所定のビット数で
構成された除数、被除数の入力演算データ(入力オペラ
ンドとも称される)が除数レジスタ3─1と被除数レジ
スタ3─2のそれぞれに入力された後、適宜の入力型判
定回路(図示せず)を用いて型判定を行い適宜のレジス
タを介して後述の丸め回路部11に出力される。
FIG. 5 shows an example of a circuit configuration of the exponent operation section 104 provided in the division operation circuit 100 used in the present invention. The exponent of the divisor D and the exponent of the dividend N are appropriately bias-added. Is performed, and an exponent value after division is determined. Further, the pre-processing unit used in the present invention is provided with a circuit for executing exception detection and invalid operation detection for detecting an inappropriate type of division in the division operation as described above, After input operation data (also referred to as an input operand) of a divisor and a dividend configured with a predetermined number of bits are input to each of the divisor register 3 # 1 and the dividend register 3 # 2, an appropriate input type determination circuit ( (Not shown), and is output to a rounding circuit unit 11 to be described later via an appropriate register.

【0017】図6は本発明の除算演算回路に使用される
丸め部11の構成の一具体例を示すものである。図6は
IEEE規格に基づいた丸め処理を行う公知のブロック
である。このブロックは、ガードビット(Guard bit
)、ラウンドビット(Round bit )、スティキビット
(Sticky bit)に基づき、求めた商に1を加えるか、切
り捨てるかの決定を行い、又、無効演算の場合はそれに
応じたパターンを発生されるものであり、除算演算回路
から入力される例えば符号データD1、例外データD
2、指数データD3、剰余データD4、商データD5等
の各データを利用して所定の演算処理を実行するもので
ある。又、例外が生じた場合にもそれに応じたパターン
を発生させ、出力値をコントロールする。さらには、I
EEE規格に応じた例外フラグも発生させる。
FIG. 6 shows a specific example of the configuration of the rounding section 11 used in the division operation circuit of the present invention. FIG. 6 is a known block for performing a rounding process based on the IEEE standard. This block has a guard bit (Guard bit
), Round bit (Round bit), sticky bit (Sticky bit), to determine whether to add 1 to the quotient or round down, and in the case of invalid operation, the corresponding pattern is generated Yes, for example, sign data D1 and exception data D input from the division operation circuit
2, a predetermined arithmetic process is executed using each data such as the exponent data D3, the remainder data D4, and the quotient data D5. When an exception occurs, a pattern corresponding to the exception is generated to control the output value. Furthermore, I
An exception flag according to the EEE standard is also generated.

【0018】本発明に於いては、上記した様に多量の演
算データを高速に且つ連続的に演算処理を行うに適した
除算器であり、特にベクトルプロセッサに使用されるの
に適したものである。又、本発明に係る除算器は、多数
の演算データを逐次取り込んで、除算演算を実行し逐次
その演算結果を出力する方式を採用する浮動小数点コプ
ロセッサ内において使用される除算器としても適したも
のである。従って、前者の方式に於いては、特に、所定
のビット数により構成された複数個の演算データがシリ
アルに同時に該除算器に入力されるもので有って、除数
に関する該複数個の演算データと被除数に関する該複数
個の演算データとがシリアルに除数入力レジスタ3─1
と被除数入力レジスタ3─2とにそれぞれ連続的に入力
される事になる。
In the present invention, as described above, the divider is suitable for performing high-speed and continuous arithmetic processing on a large amount of operation data, and is particularly suitable for use in a vector processor. is there. Further, the divider according to the present invention is also suitable as a divider used in a floating-point coprocessor adopting a method of sequentially taking a large number of operation data, executing a division operation, and sequentially outputting the operation result. Things. Therefore, in the former method, in particular, a plurality of operation data composed of a predetermined number of bits are simultaneously inputted to the divider serially, and the plurality of operation And the plurality of operation data relating to the dividend are serially stored in a divisor input register 3 # 1.
And the dividend input register 3 # 2, respectively.

【0019】そこで、本発明に係る除算器に於いては、
係る連続的に入力される複数個のシリアル演算データを
予め定められた所定の演算データ個数毎に該除算器に取
り込み、その組単位で除算演算処理を実行させ、その結
果をその組単位で連続的に出力する様に構成されてい
る。
Therefore, in the divider according to the present invention,
The serially input plural serial operation data is taken into the divider every predetermined number of operation data, and the division operation processing is executed in the set unit, and the result is continuously output in the set unit. It is configured so as to output in a targeted manner.

【0020】本発明に於ける、所定の演算データ個数P
は特に限定されるものではないが、一例として4個を取
り込む様にしても良い。即ち、係る条件に於いては、除
数に関する4個のシリアルに連続している演算データが
除数入力レジスタ3─1に同時に入力され又、被除数に
関する4個のシリアルに連続している演算データが被除
数入力レジスタ3─2とに同時に連続的に入力される事
になる。
In the present invention, a predetermined number of calculation data P
Is not particularly limited, but four may be taken as an example. That is, under such conditions, four serially consecutive operation data relating to the divisor are simultaneously input to the divisor input register 3 # 1, and four serially consecutive operation data relating to the dividend are referred to as the dividend. The data is continuously and simultaneously input to the input register 3 # 2.

【0021】本発明に於いては、上記の除算演算処理を
実行する為、本発明に係る除算器の主体的構成である除
算演算回路4を複数個並列して設けるものであり、又該
入力レジスタ群3と該除算演算回路4との間に、一部の
演算データを格納しておく入力演算データラッチ回路6
が、又該除算演算回路4と該出力レジスタ5との間に一
部の演算処理結果のデータを格納しておく出力データラ
ッチ回路7とがそれぞれ設けられているものである。
In the present invention, in order to execute the above-mentioned division operation processing, a plurality of division operation circuits 4 which are the main components of the divider according to the present invention are provided in parallel. An input operation data latch circuit 6 for storing a part of operation data between the register group 3 and the division operation circuit 4
However, an output data latch circuit 7 for storing data of a part of the result of the arithmetic processing is provided between the division operation circuit 4 and the output register 5.

【0022】本発明に於ける係る除算演算回路4の数M
は限定されるものではないが、少なくとも2個並列して
配置させるものであり、又回路構成を簡素化する必要か
ら、前記した演算データを同時に取り込む数Pより小さ
く設定することが好ましい。即ちM<Pの関係を維持す
る事が望ましい。従って、本発明の一具体例としては、
同時に取り込む演算データの数Pを4とすると該除算演
算回路4の数は例えば2とするものである。
The number M of the division operation circuit 4 according to the present invention
Although not limited, at least two of them are arranged in parallel, and it is preferable to set the number to be smaller than the number P for simultaneously taking in the above-mentioned operation data from the viewpoint of simplifying the circuit configuration. That is, it is desirable to maintain the relationship of M <P. Therefore, as one specific example of the present invention,
Assuming that the number P of operation data to be taken in at the same time is four, the number of the division operation circuits 4 is, for example, two.

【0023】次に、本発明に於いては、該複数の除算演
算回路4─1、4─2・・・4─nのそれぞれに対して
演算データラッチ回路を配置するものであり、該除算演
算回路の入力側には入力演算データラッチ回路6が又出
力側には出力データラッチ回路7がそれぞれ設けられて
いる。該入力演算データラッチ回路6─1、6─2、・
・・6─nは、一の入力演算データが該除算演算回路4
で演算が実行されている間、当該除算演算回路4の次の
サイクルで演算処理される他の入力演算データをラッチ
しておくものである。
Next, in the present invention, an operation data latch circuit is arranged for each of the plurality of division operation circuits 4 # 1, 4 # 2... 4 # n. An input operation data latch circuit 6 is provided on the input side of the operation circuit, and an output data latch circuit 7 is provided on the output side. The input operation data latch circuits 6 # 1, 6 # 2,.
.. 6─n indicates that one input operation data is the division operation circuit 4
While the operation is being performed in step (1), other input operation data to be processed in the next cycle of the division operation circuit 4 is latched.

【0024】又該出力データラッチ回路7─1、7─
2、・・・7─nは、一の入力演算データが該除算演算
回路4で演算が実行されているサイクル間、その直前の
サイクルで当該除算演算回路4が演算処理した他の入力
演算データの演算処理結果データを格納しておくもので
ある。従って、本発明に係る除算演算を実行するに際し
ての一具体例を示すならば、先ず、4組の除数演算デー
タ群と4組の被除数演算データ群とがそれぞれ除数入力
レジスタ3─1と被除数入力レジスタ3─2に入力され
ると、その内の先頭である第1の除数演算データと第1
の被除数演算データとが共に第1の除算演算回路4─1
に入力され除算演算処理が実行されるが、該第1の除算
演算回路4─1で該除算演算処理が実行される間、第2
の除数と被除数演算データが、共に第2の除算演算回路
4─2に入力され除算演算処理が実行される。
The output data latch circuits 7 # 1, 7 #
2,..., 7─n are other input operation data processed by the division operation circuit 4 in the immediately preceding cycle during a cycle in which one input operation data is being executed by the division operation circuit 4 Is stored. Therefore, to show a specific example of executing the division operation according to the present invention, first, four sets of divisor operation data groups and four sets of dividend operation data groups are respectively composed of the divisor input register 3 # 1 and the dividend input data. When input to the register 3 # 2, the first divisor operation data, which is the head of the
And the dividend operation data of the first division operation circuit 4 # 1
The first division operation circuit 4 # 1 performs the division operation processing while the first division operation circuit 4 # 1 executes the division operation processing.
And the dividend operation data are input to the second division operation circuit 4 # 2 to execute the division operation processing.

【0025】次いで、第1の除算演算回路4─1が除算
演算処理を実行している間に第3の除数と被除数演算デ
ータが、共に第1の入力演算データラッチ回路6─1に
一時的に格納され、又第2の除算演算回路4─2が除算
演算処理を実行している間に第4の除数と被除数演算デ
ータが、共に第2の入力演算データラッチ回路6─2に
一時的に格納され当該除算演算回路での演算処理が終了
するまで各ラッチ回路で待機する。
Next, while the first division operation circuit 4 # 1 is executing the division operation processing, both the third divisor and the dividend operation data are temporarily stored in the first input operation data latch circuit 6 # 1. While the second division operation circuit 4 # 2 is executing the division operation, the fourth divisor and the dividend operation data are both temporarily stored in the second input operation data latch circuit 6 # 2. And waits in each latch circuit until the operation processing in the division operation circuit is completed.

【0026】本発明に係る該第1の入力演算データラッ
チ回路6─1は更に、その内部が除数演算データをラッ
チするラッチ回路6─11と被除数をラッチするラッチ
回路6─12とで構成されている事が好ましく、同様に
該第2の入力演算データラッチ回路6─2は更に、その
内部が除数演算データをラッチするラッチ回路6─21
と被除数をラッチするラッチ回路6─22とで構成され
ている事が好ましい。
The first input operation data latch circuit 6 # 1 according to the present invention further comprises a latch circuit 6 # 11 for latching divisor operation data and a latch circuit 6 # 12 for latching the dividend. It is also preferable that the second input operation data latch circuit 6 # 2 further includes a latch circuit 6 # 21 in which the divisor operation data is latched.
And a latch circuit 6 # 22 for latching the dividend.

【0027】第1の除算演算回路4─1で該第1の除数
と被除数演算データに関する除算演算処理が終了する
と、その演算処理結果データは第1の出力データラッチ
回路7─1に一時的に格納され、次の第3の演算データ
に関する演算処理結果データが出力される迄待機する。
又第2の除算演算回路4─2で該第2の除数と被除数演
算データに関する除算演算処理が終了すると、その演算
処理結果データは第2の出力データラッチ回路7─2に
一時的に格納され、次の第4の演算データに関する演算
処理結果データが出力される迄待機する。
When the first division operation circuit 4 # 1 completes the division operation processing on the first divisor and the dividend operation data, the operation result data is temporarily stored in a first output data latch circuit 7 # 1. It is stored and waits until operation processing result data relating to the next third operation data is output.
When the second division operation circuit 4 # 2 completes the division operation processing on the second divisor and the dividend operation data, the operation result data is temporarily stored in the second output data latch circuit 7 # 2. , And waits until operation result data on the next fourth operation data is output.

【0028】そして、第3と第4の除数と被除数演算デ
ータに関する除算演算処理が終了すると、その演算結果
データは、上記した第1と第2の出力データラッチ回路
7─1、7─2に一時的に格納されていた該第1と第2
の除数と被除数演算データに関する演算処理結果データ
と共に、該除算器に入力された順番にシリアルに該出力
レジスタ5に入力されベクトルレジスタへ出力される。
上記の演算工程が本発明に於ける除算演算処理の基本サ
イクルであり、係る工程が4組の演算データ毎に繰り返
される。
When the division operation processing for the third and fourth divisors and the dividend operation data is completed, the operation result data is sent to the first and second output data latch circuits 7 # 1 and 7 # 2. The first and the second temporarily stored
Along with the operation result data relating to the divisor and dividend operation data, are serially input to the output register 5 in the order of input to the divider and output to the vector register.
The above operation steps are the basic cycle of the division operation processing in the present invention, and these steps are repeated for every four sets of operation data.

【0029】上記した具体例に於いては、複数個の演算
データを入力順に同時に入力レジスタに受入れるもので
あったが、本発明は上記した様に、浮動小数点コプロセ
ッサ内の除算器としても使用しえるのであり、係る場合
には、複数の連続する演算データを演算データ毎に逐次
入力レジスタに受入、除算演算処理を実行させ、その演
算結果を逐次入力順に出力レジスタから出力させるもの
であるが、演算速度の関係で入力演算データの入力タイ
ミングが早い場合には、前の演算データが除算演算処理
を実行中に取り込まれた後続の演算データを一時的に該
入力演算データラッチ回路に格納しておくものであり、
基本的には、前述の除算演算方式と同じ事になる。
In the above embodiment, a plurality of operation data are simultaneously received in the input register in the order of input. However, as described above, the present invention is also used as a divider in a floating point coprocessor. In such a case, a plurality of continuous operation data are sequentially received for each operation data in the input register, division operation processing is executed, and the operation results are sequentially output from the output register in the order of input. If the input timing of the input operation data is early due to the operation speed, the subsequent operation data obtained during execution of the division operation by the previous operation data is temporarily stored in the input operation data latch circuit. To keep
Basically, it is the same as the above-mentioned division operation method.

【0030】次に本発明に係る除算演算回路4の除算演
算処理フローを以下に説明する。本除算演算処理フロー
は基数を16とした非回復型の除算法に関して示されて
いる。
Next, the flow of the division operation processing of the division operation circuit 4 according to the present invention will be described below. This flow of the division operation processing is shown for a non-restoring division method using a radix of 16.

【0031】又演算データの構成は、前記で説明した通
りとする。従って、本除算演算処理フローに於ける除算
のループ数は隠れビットを含めた仮数部54ビットであ
るから15回である。そのときの除算動作を下記のパラ
メータを用い、説明する。 被除数仮数部 : N 除数仮数部 : D 部分剰余 : PR(i) 予測商 : QP(i) 商 : Q(i) 求める数値を倍精度のIEEE形式の浮動小数点とすると、
商は56bit (14デジット)を正確に求める必要があるも
のとする。 初期化: PR(0) = N QP(0) = 0 ────────────────────────────────── 1 回目: PR(1) = PR(0) - QP(0)*D QP(1) = predict( PR(1) , D ) ────────────────────────────────── 2 回目: PR(2) = PR(1) - QP(1)*D QP(2) = predict( PR(2) , D ) Q(1) = QP(1) modified by PR(1)'s and PR(2)'s sigh-bit ────────────────────────────────── 3 回目: PR(3) = PR(2) - QP(2)*D QP(3) = predict( PR(3) , D ) Q(2) = QP(2) modified by PR(2)'s and PR(3)'s sigh-bit ────────────────────────────────── 4 回目: PR(4) = PR(3) - QP(3)*D QP(4) = predict( PR(4) , D ) Q(3) = QP(3) modified by PR(3)'s and PR(4)'s sigh-bit ────────────────────────────────── 5 回目: PR(5) = PR(4) - QP(4)*D QP(5) = predict( PR(5) , D ) Q(4) = QP(4) modified by PR(4)'s and PR(5)'s sigh-bit ────────────────────────────────── ・ ・ ・ ─────────────────────────────── 14 回目:PR(14) = PR(13) - QP(13)*D QP(14) = predict( PR(14) , D ) Q(13) = QP(13) modified by PR(13)'s and PR(14)'s sigh-bit ──────────────────────────────────── 15 回目:PR(15) = PR(14) - QP(14)*D Q(14) = QP(14) modified by PR(14)'s and PR(15)'s sigh-bit ──────────────────────────────────── 以上の操作により商は図11に示す様に求まる。即ち、
本発明に於ける除算器により得られる商のフォーマット
は、先頭の第0ビットにサイン符号Sを入れ、続く11
ビットは指数部で構成され、その後63ビット迄を、4
ビットずつで構成される各除算演算サイクルにおける商
Q1・・・・・Q14がその順に配置されている。尚、
Q14の後の1ビット目がガードビット(Guard bit
)、2ビット目がラウンドビット(Round bit )更に
(S)は3ビット目とPR(15)の全ビットの論理和である
スティッキビット(Sticky bit)となる。
The structure of the operation data is as described above. Therefore, the number of division loops in this division operation processing flow is fifteen because the mantissa part including the hidden bits is 54 bits. The division operation at that time will be described using the following parameters. Dividend mantissa part: N divisor mantissa part: D partial remainder: PR (i) prediction quotient: QP (i) quotient: Q (i) If the numerical value to be obtained is a double precision IEEE format floating point,
The quotient must accurately determine 56 bits (14 digits). Initialization: PR (0) = N QP (0) = 0 ────────────────────────────────── 1 Round: PR (1) = PR (0)-QP (0) * D QP (1) = predict (PR (1), D) ────────────────── ──────────────── Second time: PR (2) = PR (1)-QP (1) * D QP (2) = predict (PR (2), D) Q (1) = QP (1) modified by PR (1) 's and PR (2)' s sigh-bit ──────────────────────── ────────── Third time: PR (3) = PR (2)-QP (2) * D QP (3) = predict (PR (3), D) Q (2) = QP ( 2) modified by PR (2) 's and PR (3)' s sigh-bit ────────────────────────────── ──── 4th time: PR (4) = PR (3)-QP (3) * D QP (4) = predict (PR (4), D) Q (3) = QP (3) modified by PR ( 3) 's and PR (4)' s sigh-bit ────────────────────────────────── 5th : PR (5) = PR (4)-QP (4) * D QP (5) = predict (PR (5), D) Q (4) = QP (4) modified by PR (4) 's and PR (5)' s sigh-bit ──── ────────────────────────────── ・ ・ ・ ───────────────── ────────────── 14th time: PR (14) = PR (13)-QP (13) * D QP (14) = predict (PR (14), D) Q (13 ) = QP (13) modified by PR (13) 's and PR (14)' s sigh-bit ────────────────────────── ────────── 15th time: PR (15) = PR (14)-QP (14) * DQ (14) = QP (14) modified by PR (14) 's and PR (15) 's sigh-bit に よ り By the above operation, the quotient becomes Obtained as shown. That is,
The format of the quotient obtained by the divider according to the present invention is as follows.
The bit is composed of an exponent part.
The quotients Q1... Q14 in each division operation cycle composed of bits are arranged in that order. still,
The first bit after Q14 is a guard bit.
The second bit is a round bit, and (S) is a sticky bit which is a logical sum of the third bit and all bits of PR (15).

【0032】PR(15)は完全な剰余を表してはいないが
(負の数値になっている場合がある)、スティッキビッ
トは0かそうでないかの判定のみで構わない為、論理和
をとれば良い。
Although PR (15) does not represent a complete remainder (it may be a negative value), it is only necessary to determine whether the sticky bit is 0 or not. Good.

【0033】図7及び図8は、本発明に係る除算器の全
体の構成に関する一具体例を示すブロック図である。図
7及び図8の主要な構成部分の内で図2に示す構成部分
と同一のものに関しては同一の参照符号が付されてい
る。尚、図7及び図8中、SELはセレクターであり8
及び9の符号が付されており、除算演算処理中に必要な
演算データを選択しうる構成を有している。又、図7及
び図8に於ける除算演算処理回路100─1と100─
2は、上記除算演算処理回路4─1と4─2とに付帯し
て設けられている指数部の演算部、無効演算、例外検出
部ブロックである。該処理回路100でも前記の除算演
算処理回路4と同様に演算データの処理が実行されるの
で、ラッチ回路群106を設け、指数部に関する入力演
算データをセレクタSELによって選択的に該ラッチ回
路群106に演算データを格納しておくか所定の処理回
路に供給するかが決定され、それぞれのレジスタ101
乃至103を介して指数加減算処理部104及び例外無
効演算検出部105等に供給され演算処理が実行され
る。
FIGS. 7 and 8 are block diagrams showing one specific example of the overall configuration of the divider according to the present invention. 7 and 8 that are the same as those shown in FIG. 2 are denoted by the same reference numerals. In FIGS. 7 and 8, SEL is a selector.
And 9 are provided, and have a configuration in which necessary operation data can be selected during the division operation processing. Also, the division operation processing circuits 100 # 1 and 100 # in FIGS.
Reference numeral 2 denotes an exponent operation unit, an invalid operation, and an exception detection unit block provided in the division operation processing circuits 4 # 1 and 4 # 2. The processing circuit 100 also executes the processing of the operation data in the same manner as the above-mentioned division operation processing circuit 4. Therefore, a latch circuit group 106 is provided, and the input operation data relating to the exponent part is selectively selected by the selector SEL. It is determined whether the arithmetic data is stored in the register 101 or supplied to a predetermined processing circuit.
The processing is supplied to the exponent addition / subtraction processing unit 104 and the exception invalid operation detection unit 105 through 103 through 103 to execute the operation processing.

【0034】そして各演算処理部の演算結果は指数レジ
スタ106及び例外レジスタ107にそれぞれ一旦ラッ
チさせた後、丸め部11に出力され、適宜のラッチ回路
170、171を介して上記した除算演算回路4に於け
ると同様の方法で例外フラグレジスタ108に連続的に
出力される。
The operation result of each operation processing unit is temporarily latched in the exponent register 106 and the exception register 107, respectively, and then output to the rounding unit 11, and the division operation circuit 4 is supplied via appropriate latch circuits 170 and 171. Are successively output to the exception flag register 108 in the same manner as described above.

【0035】次に、図7及び図8による本発明の除算器
を用いてベクトル処理を実行する場合の動作タイミング
を図9及び図10のタイミングチャートを参照しながら
説明する。尚、本発明を浮動小数点コプロセッサの除算
器として使用した場合でも、そのタイミングチャート
は、以下の説明と実質的に同一である。
Next, the operation timing when vector processing is performed using the divider of the present invention shown in FIGS. 7 and 8 will be described with reference to the timing charts of FIGS. Even when the present invention is used as a divider of a floating-point coprocessor, its timing chart is substantially the same as that described below.

【0036】上記した様に入力演算レジスタに連続して
4組の演算データ、即ちオペランドが入力されてくる
為、先ず第1のサイクル、即ちクロック波形(h)の0
位置では、波形(i)に示す様に、第1のオペランド1
10を除算器の入力レジスタ3にラッチする。同様に第
2乃至第4のサイクルで第2から第4のオペランド11
1、112、113をそれぞれ順に入力レジスタ3にラ
ッチする。
As described above, since four sets of operation data, ie, operands, are successively input to the input operation register, first, the first cycle, that is, 0 of the clock waveform (h) is output.
At the position, as shown in waveform (i), the first operand 1
10 is latched in the input register 3 of the divider. Similarly, in the second to fourth cycles, the second to fourth operands 11
1, 112 and 113 are sequentially latched in the input register 3 respectively.

【0037】そして、第2のサイクルから第5サイクル
迄即ちクロック波形(h)の1の位置から4の位置迄は
波形(k)に示す様に各オペランド110、111、1
12、113のそれぞれが順次に前処理され且つ前処理
回路から出力される。そこで、第2のサイクルでは、第
1のオペランドに対して前処理が行われ、その出力が第
1面の除算演算回路4─1の部分剰余レジスタ24と除
数レジスタ21にそれぞれ格納される。(波形(l)及
び波形(m)に於ける110参照)この間、第2のオペ
ランドは単に入力レジスタ3にラッチされているだけで
ある。次に、第3のサイクル、即ちクロック波形(h)
の2の位置では、第1のオペランドは、除数レジスタ2
1の固定値を用いて除算ループを開始し(波形(l)1
10op1参照)、15回の除算演算を第15サイクル
迄即ちクロック波形(h)の14の位置迄継続して繰り
返すと同時に、第2のオペランドに前処理を施し(波形
(k)の111参照)その出力を第2面、即ち、もう一
方の除算演算回路4─2の指数演算部および仮数除算部
の入力レジスタにラッチする。
From the second cycle to the fifth cycle, that is, from the position 1 to the position 4 of the clock waveform (h), the operands 110, 111, 1
Each of 12 and 113 is sequentially pre-processed and output from the pre-processing circuit. Therefore, in the second cycle, preprocessing is performed on the first operand, and the output is stored in the partial remainder register 24 and the divisor register 21 of the division operation circuit 4 # 1 on the first surface. (See 110 in waveforms (l) and (m).) During this time, the second operand is simply latched into input register 3. Next, the third cycle, that is, the clock waveform (h)
In position 2, the first operand is the divisor register 2
A division loop is started using a fixed value of 1 (waveform (l) 1
10 op1), the division operation is repeated 15 times up to the 15th cycle, that is, up to the 14th position of the clock waveform (h), and at the same time, the second operand is pre-processed (see 111 of the waveform (k)) The output is latched on the second side, that is, in the input register of the exponent operation unit and the mantissa division unit of the other division operation circuit 4 # 2.

【0038】また、第3のサイクルで前述した様に第3
のオペランド112を除算器の入力レジスタにラッチす
る。第4のサイクル、即ちクロック波形(h)の3の位
置では、第2のオペランドは第2面に於ける除算演算回
路4─2で波形(l)と同様に除算ループを開始し15
回繰り返す。又第3のオペランド112は前処理を行
い、その出力を第1面の除算演算回路4─1の退避レジ
スタ6(TMP)に於ける部分余剰レジスタ24に対す
るラッチ回路6─2及び除数レジスタ21に対するラッ
チ回路6─1のそれぞれに格納される。(波形(n)に
於ける112参照)また、第4のサイクルに於いては、
第4のオペランド113を除算器の入力レジスタにラッ
チする。第5のサイクル即ちクロック波形(h)の4の
位置では、第1、第2のオペランド110、111は除
算演算ループを継続し、第3のオペランド112はその
まま退避レジスタで待ち、第4のオペランド113は前
処理を行い、第1面の除算演算回路4─1の退避レジス
タ6(TMP)に於ける部分余剰レジスタ24に対する
ラッチ回路6─2及び除数レジスタ21に対するラッチ
回路6─1に相当する第2面側の除算演算回路4─2の
退避レジスタにラッチする。退避レジスタにラッチされ
たオペランドは第1のオペランドが実行されている第1
面の除算演算回路4─1の除算ループおよび、第2のオ
ペランドが実行されている第2の除算演算回路4─2の
除算ループが終了するそれぞれ第1面側は第17サイク
ル目、即ち、クロック波形(h)の16の位置、第二面
側は18サイクル目、即ち、クロック波形(h)の17
の位置でそれぞれ指数演算部、仮数除算部の入力レジス
タにラッチされ、除算ループを実行する。(波形(l)
及び波形(m)に於ける112参照)除算ループを実行
した第1オペランドは第18サイクル目で丸め処理、出
力判定処理を行い(波形(0)及び波形(p)に於ける
110参照)、第1面の除算演算回路4─1の出力退避
レジスタ(TMP)7に格納される。(波形(q)に於
ける110参照)。一方、第2面の除算ループで実行さ
れた第2オペランド111は第19サイクル目で丸め処
理、出力判定処理を行い、第2面の除算演算回路4─2
の出力退避レジスタ(TMP)7に格納される。(波形
(r)に於ける111参照)。そして第3のオペランド
112、第4のオペランド113が丸め処理、出力判定
ブロックを経て出力されるタイミング、即ち第31サイ
クル目で除算器の出力レジスタに先ず第1出力退避レジ
スタに格納されている第1オペランド結果、次に、第2
出力退避レジスタに格納されている第2オペランド結果
が、続いて第3オペランド、第4オペランドの除算結果
がこの順序に1サイクルずつラッチされる。(波形
(s)の110、111、112、113参照)
As described above in the third cycle, the third cycle
Is latched in the input register of the divider. In the fourth cycle, ie, position 3 of the clock waveform (h), the second operand starts the division loop in the division operation circuit 4 # 2 on the second surface in the same manner as the waveform (l).
Repeat several times. The third operand 112 performs preprocessing, and outputs its output to the latch circuit 6 # 2 and the divisor register 21 for the partial surplus register 24 in the save register 6 (TMP) of the division operation circuit 4 # 1 on the first surface. It is stored in each of latch circuits 6 # 1. (See 112 in waveform (n).) Also, in the fourth cycle,
The fourth operand 113 is latched in the input register of the divider. At the fifth cycle, that is, at position 4 of the clock waveform (h), the first and second operands 110 and 111 continue the division operation loop, the third operand 112 waits in the save register as it is, and the fourth operand Reference numeral 113 performs preprocessing, and corresponds to the latch circuit 6 # 2 for the partial surplus register 24 and the latch circuit 6 # 1 for the divisor register 21 in the save register 6 (TMP) of the division operation circuit 4 # 1 on the first surface. The result is latched in the save register of the division operation circuit 4 # 2 on the second surface side. The operand latched in the save register is the first operand executed by the first operand.
The division loop of the surface division operation circuit 4 # 1 and the division loop of the second division operation circuit 4 # 2 in which the second operand is executed are finished in the 17th cycle on the first surface side, respectively. The 16th position of the clock waveform (h) on the second surface side is the 18th cycle, that is, the 17th cycle of the clock waveform (h).
Are latched in the input registers of the exponent operation unit and the mantissa division unit, respectively, to execute a division loop. (Waveform (l)
The first operand that has executed the division loop performs rounding processing and output determination processing in the 18th cycle (see 110 in waveform (0) and waveform (p)), and This is stored in the output save register (TMP) 7 of the division operation circuit 4 # 1 on the first surface. (See 110 in waveform (q)). On the other hand, the second operand 111 executed in the division loop on the second surface performs rounding processing and output determination processing in the nineteenth cycle, and the division operation circuit 4 # 2 on the second surface.
Is stored in the output save register (TMP) 7. (See 111 in waveform (r)). Then, the third operand 112 and the fourth operand 113 are output through a rounding process and an output determination block, that is, in the 31st cycle, the output register of the divider first stores the first operand in the first output save register. One operand result, then the second
The result of the second operand stored in the output save register, and the result of the division of the third and fourth operands are latched one cycle at a time in this order. (See 110, 111, 112, 113 of waveform (s))

【発明の効果】本発明に於いては、高速に且つ正確な除
算のベクトル演算処理を実行しえる除算器で有って、然
かも半導体集積回路からなるチップ内に搭載しえる程度
に小型化されたハードウエアとしての除算器が得られる
ものである。
According to the present invention, there is provided a divider capable of executing a high-speed and accurate division vector operation process, and is downsized so that it can be mounted in a chip composed of a semiconductor integrated circuit. Thus, a divider as hardware can be obtained.

【図面の簡単な説明】[Brief description of the drawings]

【図1】図1は本発明に係る除算器の原理を説明する図
であり、又本発明に係る除算器の一具体例を示すブロッ
ク図である。
FIG. 1 is a diagram for explaining the principle of a divider according to the present invention, and is a block diagram showing a specific example of a divider according to the present invention.

【図2】図2は本発明の除算器に使用される除算演算回
路の一具体例を示すブロック図である。
FIG. 2 is a block diagram showing a specific example of a division operation circuit used in the divider of the present invention.

【図3】図3は本発明に使用される演算データのフォー
マットの例を示す図である。
FIG. 3 is a diagram showing an example of a format of operation data used in the present invention.

【図4】図4は本発明に於ける除算器に使用される指数
加減算部に於ける処理フローを示すフローチャートであ
る。
FIG. 4 is a flowchart showing a processing flow in an exponent addition / subtraction unit used in the divider according to the present invention.

【図5】図5は本発明に於ける除算器に使用される指数
加減算部に於ける回路構成の例を示す図である。
FIG. 5 is a diagram showing an example of a circuit configuration in an exponent addition / subtraction unit used in the divider according to the present invention.

【図6】図6は本発明に於ける除算器に使用される丸め
部の回路構成の例を示すブロック図である。
FIG. 6 is a block diagram showing an example of a circuit configuration of a rounding unit used in a divider according to the present invention.

【図7】図7は本発明に係る除算器の一具体例を示す全
体ブロック図である。
FIG. 7 is an overall block diagram showing a specific example of a divider according to the present invention.

【図8】図8は本発明に係る除算器の一具体例を示す全
体ブロック図である。
FIG. 8 is an overall block diagram showing a specific example of a divider according to the present invention.

【図9】図9は本発明に係る除算器に於ける除算演算処
理のタイミングを説明するタイミングチャートである。
FIG. 9 is a timing chart illustrating timings of a division operation process in the divider according to the present invention.

【図10】図10は本発明に係る除算器に於ける除算演
算処理のタイミングを説明するタイミングチャートであ
る。
FIG. 10 is a timing chart for explaining the timing of the division operation processing in the divider according to the present invention.

【図11】図11は本発明に係る除算器で得られる商の
データ構成を示す図である。
FIG. 11 is a diagram showing a data structure of a quotient obtained by the divider according to the present invention.

【符号の説明】[Explanation of symbols]

1…チップ 2…除算器 3…入力レジスタ 4…除算演算回路 5…出力レジスタ 6…入力演算データラッチ回路 7…出力演算データラッチ回路 8…選択手段 9…選択手段 10…前処理部 11…丸め部 21…除数レジスタ 22…倍数発生手段 23…商予測部(予測商レジスタ) 24…部分剰余レジスタ 25…加減算手段 26…剰余レジスタ 27…剰余補正手段 28…部分商発生手段 29…商レジスタ 30…型判定部 100…指数部除算演算回路 101、102、103、…レジスタ 104…指数加減算部 105…例外無効演算検出部 106…指数レジスタ 107…例外レジスタ 108…例外フラグレジスタ 170、171、172…退避レジスタ DESCRIPTION OF SYMBOLS 1 ... Chip 2 ... Divider 3 ... Input register 4 ... Division operation circuit 5 ... Output register 6 ... Input operation data latch circuit 7 ... Output operation data latch circuit 8 ... Selection means 9 ... Selection means 10 ... Preprocessing unit 11 ... Rounding Unit 21: divisor register 22: multiple generating means 23: quotient predictor (predicted quotient register) 24: partial remainder register 25 ... addition / subtraction means 26 ... remainder register 27 ... remainder correction means 28 ... partial quotient generating means 29 ... quotient register 30 ... Type determination unit 100: exponent part division operation circuit 101, 102, 103, register 104: exponent addition / subtraction unit 105: exception invalid operation detection unit 106: exponent register 107: exception register 108: exception flag register 170, 171, 172 register

Claims (10)

(57)【特許請求の範囲】(57) [Claims] 【請求項1】 除数、被除数で構成された所定長さの演
算データを受取とる入力レジスタ、入力された演算デー
タを除算演算する為の複数個の除算演算回路、及び該除
算演算回路の演算結果を出力する出力レジスタから構成
されると共に、該入力レジスタと該除算演算回路との間
に、一部の演算データを格納しておく入力演算データラ
ッチ回路が、又該除算演算回路と該出力レジスタとの間
に一部の演算処理結果のデータを格納しておく出力デー
タラッチ回路とがそれぞれ設けられている事を特徴とす
る除算器。
An input register for receiving operation data of a predetermined length composed of a divisor and a dividend, a plurality of division operation circuits for performing a division operation on the input operation data, and an operation result of the division operation circuit And an input operation data latch circuit for storing a part of operation data between the input register and the division operation circuit. The division operation circuit and the output register And an output data latch circuit for storing data of a result of a part of the arithmetic processing.
【請求項2】 除数、被除数で構成された所定長さの演
算データを受取とる入力レジスタ、入力された演算デー
タを除算演算する為の複数個の除算演算回路、及び該除
算演算回路の演算結果を出力する出力レジスタから構成
される除算器に於いて、該除算器は該演算データを複数
個連続して受取、該除算演算回路に於いて所定の演算を
実行した後、当該演算処理後の演算結果データを複数個
連続して出力する様に構成されている事を特徴とする除
算器。
2. An input register for receiving operation data of a predetermined length composed of a divisor and a dividend, a plurality of division operation circuits for performing a division operation on the input operation data, and an operation result of the division operation circuit A plurality of output registers that successively receive the operation data, execute a predetermined operation in the division operation circuit, and A divider configured to continuously output a plurality of operation result data.
【請求項3】 除数、被除数で構成された所定長さの演
算データを連続して複数個受取とれる入力レジスタ、入
力された演算データを除算演算する為の複数個の除算演
算回路、及び該除算演算回路の演算結果を連続して複数
個出力する出力レジスタから構成されると共に、該入力
レジスタと該除算演算回路との間に、一部の演算データ
を格納しておく入力演算データラッチ回路が、又該除算
演算回路と該出力レジスタとの間に一部の演算処理結果
のデータを格納しておく出力データラッチ回路とがそれ
ぞれ設けられている事を特徴とする請求項2記載の除算
器。
3. An input register for continuously receiving a plurality of operation data of a predetermined length composed of a divisor and a dividend, a plurality of division operation circuits for performing a division operation on the input operation data, and the division An input operation data latch circuit for storing a part of operation data is provided between the input register and the division operation circuit. 3. The divider according to claim 2, further comprising an output data latch circuit for storing data of a part of the operation processing result between said division operation circuit and said output register. .
【請求項4】 該除算演算回路は、少なくとも部分余剰
レジスタ、除数レジスタ、倍数発生手段、加減算手段、
部分商予測手段、部分商発生手段とを含んでいる事を特
徴とする請求項1乃至3の何れかに記載の除算器。
4. The division operation circuit includes at least a partial surplus register, a divisor register, a multiple generation unit, an addition / subtraction unit,
4. The divider according to claim 1, further comprising a partial quotient prediction unit and a partial quotient generation unit.
【請求項5】 該入力演算データラッチ回路は、一の入
力演算データが該除算演算回路で演算が実行されている
間、当該除算演算回路で次のサイクルで演算処理される
他の入力演算データをラッチしておくものである事を特
徴とする請求項1乃至4の何れかに記載の除算器。
5. The input operation data latch circuit, wherein one input operation data is processed by the division operation circuit in the next cycle while the input operation data is being operated by the division operation circuit. 5. The divider according to claim 1, wherein? Is latched.
【請求項6】 該出力データラッチ回路は、一の入力演
算データが該除算演算回路で演算が実行されているサイ
クル間、その直前のサイクルで当該除算演算回路が演算
処理した他の入力演算データの演算処理結果データを格
納しておくものである事を特徴とする請求項1乃至4の
何れかに記載の除算器。
6. The output data latch circuit includes, during a cycle in which one input operation data is operated by the division operation circuit, another input operation data processed by the division operation circuit in the immediately preceding cycle. The divider according to any one of claims 1 to 4, wherein the arithmetic processing result data is stored.
【請求項7】 該除算演算回路は、更に少なくとも指数
部を演算する手段、無効及び例外演算手段を含んでいる
事を特徴とする請求項4記載の除算器。
7. The divider according to claim 4, wherein said division operation circuit further includes at least an exponent part operation means and invalid and exception operation means.
【請求項8】 該入力レジスタと該除算演算回路との間
に前処理演算手段が設けられている事を特徴とする請求
項1乃至7の何れかに記載の除算器。
8. The divider according to claim 1, wherein a pre-processing operation means is provided between said input register and said division operation circuit.
【請求項9】 該出力レジスタと該除算演算回路との間
に丸め処理演算手段が設けられている事を特徴とする請
求項1乃至7の何れかに記載の除算器。
9. The divider according to claim 1, wherein a rounding operation means is provided between the output register and the division operation circuit.
【請求項10】 一時に該入力レジスタに入力される該
演算データの数が、該除算演算回路の数より多くなるよ
うに設定されている事を特徴とする請求項1乃至9の何
れかに記載の除算器。
10. The method according to claim 1, wherein the number of the operation data input to the input register at one time is set to be larger than the number of the division operation circuits. The divider as described.
JP3030055A 1991-02-25 1991-02-25 Divider Expired - Fee Related JP2607759B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP3030055A JP2607759B2 (en) 1991-02-25 1991-02-25 Divider

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP3030055A JP2607759B2 (en) 1991-02-25 1991-02-25 Divider

Publications (2)

Publication Number Publication Date
JPH04268920A JPH04268920A (en) 1992-09-24
JP2607759B2 true JP2607759B2 (en) 1997-05-07

Family

ID=12293142

Family Applications (1)

Application Number Title Priority Date Filing Date
JP3030055A Expired - Fee Related JP2607759B2 (en) 1991-02-25 1991-02-25 Divider

Country Status (1)

Country Link
JP (1) JP2607759B2 (en)

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS60201434A (en) * 1984-03-27 1985-10-11 Nec Corp Multiple adding circuit
JPH0828834B2 (en) * 1986-06-20 1996-03-21 株式会社日立製作所 Signal processor
JP2553728B2 (en) * 1990-02-23 1996-11-13 松下電器産業株式会社 Arithmetic unit

Also Published As

Publication number Publication date
JPH04268920A (en) 1992-09-24

Similar Documents

Publication Publication Date Title
JP2835153B2 (en) High radix divider
US8229993B2 (en) Method for performing decimal division
JPH0368416B2 (en)
JPH07168697A (en) Circuit and method for double-precision division
US7809784B2 (en) Apparatus and method for calculation of divisions and square roots
US7016930B2 (en) Apparatus and method for performing operations implemented by iterative execution of a recurrence equation
JPH1195982A (en) Circuit, method and system for arithmetic processing
CA1321650C (en) Floating point unit computation techniques
JP3391448B2 (en) Divider
JP2607759B2 (en) Divider
JP3517162B2 (en) Division and square root arithmetic unit
JPH0831024B2 (en) Arithmetic processor
JP2608090B2 (en) High radix non-restoring divider
JP3493085B2 (en) Arithmetic unit
JP2790327B2 (en) Remainder multiplication circuit and remainder multiplication method
JPH08202533A (en) Division processor
JPWO2002029546A1 (en) Arithmetic unit and electronic circuit device using the same
JPH0368415B2 (en)
JP3656699B2 (en) Divider
JPH0445860B2 (en)
JPH07160480A (en) Decimal divider
JP2000181722A (en) Compiling method and computer
JPH07271555A (en) Arithmetic circuit
JPH08123667A (en) Fast dividing circuit
JPH0769785B2 (en) Divider

Legal Events

Date Code Title Description
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 19961203

LAPS Cancellation because of no payment of annual fees