JPS60246437A - 除算回路 - Google Patents
除算回路Info
- Publication number
- JPS60246437A JPS60246437A JP59102171A JP10217184A JPS60246437A JP S60246437 A JPS60246437 A JP S60246437A JP 59102171 A JP59102171 A JP 59102171A JP 10217184 A JP10217184 A JP 10217184A JP S60246437 A JPS60246437 A JP S60246437A
- Authority
- JP
- Japan
- Prior art keywords
- arithmetic
- register
- flag
- circuit
- divisor
- 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.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/38—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
- G06F7/48—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
- G06F7/52—Multiplying; Dividing
- G06F7/535—Dividing only
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Computational Mathematics (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
産業上の利用分野
本発明は、デジタル計算機の基本演算の一つである除算
を実行する除算回路に関するものである。
を実行する除算回路に関するものである。
従来例の構成とその問題点
デジタル計算機の処理速度が向上し、基本演算の処理速
度を向上するために専用の除乗算口路を備えている。
度を向上するために専用の除乗算口路を備えている。
以下に従来の除算回路について説明する。
第1図は、従来の除算回路の構成図を示す。
1は除算演算の始めに被除数を入力し、除算演算の間は
部分剰余を保持し、除算演算の終了時には除算結果の余
シを保持する被除数レジスタ、2は除数を入カレ、除算
演算の間、値を保持する除数レジスタ、3は被除数レジ
スタ1の値と除数レジスタ2の値との加算あるいは減算
する演算回路、4は演算回路3の演算を示す演算フラグ
、6は演算回路3の演算結果によるキャリ出力を保持す
るキャリフラグ、6は演算回路3の出力を被除数レジス
タ1に入力する時に左に1ビツトシフトするシフタ、了
は演算の結果の商を保持する商レジスタ、8はキャリフ
ラグ5より、次の演算フラグを生成する演算制御回路、
9は除算演算処理を制御するタイミング制御回路である
。
部分剰余を保持し、除算演算の終了時には除算結果の余
シを保持する被除数レジスタ、2は除数を入カレ、除算
演算の間、値を保持する除数レジスタ、3は被除数レジ
スタ1の値と除数レジスタ2の値との加算あるいは減算
する演算回路、4は演算回路3の演算を示す演算フラグ
、6は演算回路3の演算結果によるキャリ出力を保持す
るキャリフラグ、6は演算回路3の出力を被除数レジス
タ1に入力する時に左に1ビツトシフトするシフタ、了
は演算の結果の商を保持する商レジスタ、8はキャリフ
ラグ5より、次の演算フラグを生成する演算制御回路、
9は除算演算処理を制御するタイミング制御回路である
。
以上のように構成された従来の除算回路について、以下
にその動作を説明する。
にその動作を説明する。
非回復型除算では、状況に応じて商として+1か−1か
を選択する。商の選択過程では、それぞれの選択により
生じた誤差をその後のステップで補正し、補正のために
生じる加算、減算、シフトによる余分な遅れを除去する
。
を選択する。商の選択過程では、それぞれの選択により
生じた誤差をその後のステップで補正し、補正のために
生じる加算、減算、シフトによる余分な遅れを除去する
。
商の選択範囲は次式で与えられる。
(コ+1)
IRl<IDI・・・・・・・・・・・・・・・・・・
・・(1)絶対値は、それぞれの部分剰余R”1)(j
”J、1、・・、n−1)が正か負の数かをとりうろこ
とを示している。ここで除数りが、正の数のみをとりう
るとすると、(1)式は次のように書き換えられる。
・・(1)絶対値は、それぞれの部分剰余R”1)(j
”J、1、・・、n−1)が正か負の数かをとりうろこ
とを示している。ここで除数りが、正の数のみをとりう
るとすると、(1)式は次のように書き換えられる。
+ R(j+1 )l< D ・・・・・・・・・・・
・・・・・(2)(2)式より、剰余の絶対値が除数よ
シ小さい限シ、負の剰数を正に回復する必要がない。従
って、それぞれの繰返しにおいて部分剰余から除数を加
算か減算かをする。それぞれのステップで行なわれる操
作は次式で示される。
・・・・・(2)(2)式より、剰余の絶対値が除数よ
シ小さい限シ、負の剰数を正に回復する必要がない。従
って、それぞれの繰返しにおいて部分剰余から除数を加
算か減算かをする。それぞれのステップで行なわれる操
作は次式で示される。
上式に対応する商は、次のように決められる。
以上のアリゴリズムに従って、以下に回路の動作を説明
する。
する。
除算演算に必要な被除数および除数をそれぞれ被除数レ
ジスタ1と除数レジスタ2に入力する。
ジスタ1と除数レジスタ2に入力する。
入力された被除数および除数は(2)式を満足する値を
とる。演算回路3の加算か減算かを示す演算シフタop
f4は、(3)式に対応し、次のようKなる。
とる。演算回路3の加算か減算かを示す演算シフタop
f4は、(3)式に対応し、次のようKなる。
除算演算の始めに演算フラグ4を1に設定する。
演算フラグ4に従って演算回路3は被除数レジスタ1の
値から除数レジスタ2の値を減算する。
値から除数レジスタ2の値を減算する。
演算回路3の加減算の結果九よジオ−バーフローが発生
した場合は、キャリフラグ5を1に設定し、オーバーフ
ローが発生しない場合は、キャリフラグ5をOK段設定
る。このキャリフラグ6を商レジスタ7の右入力よシ入
力し、商レジスタ7を左に1ビツトシフトする。キャリ
フラグ6は演算制御回路8を通して、演算フラグ4に入
力される。演算回路3の出力はシフタ6を通して左に1
ビツトシフトし被除数レジスタ1に入力される。
した場合は、キャリフラグ5を1に設定し、オーバーフ
ローが発生しない場合は、キャリフラグ5をOK段設定
る。このキャリフラグ6を商レジスタ7の右入力よシ入
力し、商レジスタ7を左に1ビツトシフトする。キャリ
フラグ6は演算制御回路8を通して、演算フラグ4に入
力される。演算回路3の出力はシフタ6を通して左に1
ビツトシフトし被除数レジスタ1に入力される。
被除数と除数との加減算およびシフトは、除数の語長+
1回演算を繰シ返す。
1回演算を繰シ返す。
除算処理の結果、商は商レジスタ7K、余シは被除数レ
ジスタ1に設定される。
ジスタ1に設定される。
以上の動作の流れを第2図に示すフローチャートで説明
する。
する。
((イ)被除数および除数をそれぞれ被除数レジスタ1
と除数レジスタ2に入力する。(ロ)演算フラグ4を1
に設定する。(ハ)演算フラグ4がφならば加算、1な
らば減算を実行する。に)部分剰余と除数との加算を行
なう。(ホ)部分剰余から除数を減算する。
と除数レジスタ2に入力する。(ロ)演算フラグ4を1
に設定する。(ハ)演算フラグ4がφならば加算、1な
らば減算を実行する。に)部分剰余と除数との加算を行
なう。(ホ)部分剰余から除数を減算する。
(へ)演算結果よりキャリフラグを設定する。(ト)商
レジスタ7を左[1ビツトシフトする。(力演算フラグ
にキャリアラグを入力する。(す)演算処理が終了して
いなければG/今に戻る。0)演算の結果を商は商レジ
スタ7に、余シは被除数レジスタ1に設定され、以上の
流れを終了する。
レジスタ7を左[1ビツトシフトする。(力演算フラグ
にキャリアラグを入力する。(す)演算処理が終了して
いなければG/今に戻る。0)演算の結果を商は商レジ
スタ7に、余シは被除数レジスタ1に設定され、以上の
流れを終了する。
しかしながら、上記のような構成では、(3)式の演算
を満足し、オーバーフローによる誤りを除くために、除
数のMSBを常にφに設定する必要があり、符号なしの
除算を取シ扱うことができない。
を満足し、オーバーフローによる誤りを除くために、除
数のMSBを常にφに設定する必要があり、符号なしの
除算を取シ扱うことができない。
発明の目的
本発明は、上記従来の問題点を解消し、部分剰余と除数
の演算によって生じるオーバーフロー、演算の結果のM
SBおよび演算フラグとにより、次の演算フラグを設定
することによシ、符号なしの除算を取シ扱うことができ
る除算回路を提供することを目的とする。
の演算によって生じるオーバーフロー、演算の結果のM
SBおよび演算フラグとにより、次の演算フラグを設定
することによシ、符号なしの除算を取シ扱うことができ
る除算回路を提供することを目的とする。
発明の構成
本発明は、部分剰余と除数の演算により生じるオーバー
フローと演算結果のMSBおよび演算フラグとにより、
次の演算フラグを設定することにより、符号なしの除算
処理をすることができるものである。
フローと演算結果のMSBおよび演算フラグとにより、
次の演算フラグを設定することにより、符号なしの除算
処理をすることができるものである。
実施例の説明
第3図は本発明の一実施例における除算回路の構成を示
すものである。
すものである。
第3図において、1は除算演算の始めに被除数を入力し
、除算演算の間は部分剰余を保持し、除算演算の終了時
には除算結果の余りを保持する被除数レジスタ、2は除
数を入力し、除算演算の間、値を保持する除数レジスタ
、3は被除数レジスタ1(7)iと除数レジスタ2の値
との加算あるいは減算する演算回路、4は演算回路3の
演算を示す演算フラグ、5は演算回路3の演算結果によ
るキャリ出力を保持するキャリフラグ、6は演算回路3
の出力を被除数レジスタ1に入力する時に左[1ビツト
シフトするシック、了は演算の結果の商を保持する商レ
ジスタ、8は演算回路3の出力データのMSBと、演算
フラグ4およびキャリフラグ5より、次の演算フラグを
生成する演算制御回路、9は除算演算処理を制御するタ
イミング制御回路である。
、除算演算の間は部分剰余を保持し、除算演算の終了時
には除算結果の余りを保持する被除数レジスタ、2は除
数を入力し、除算演算の間、値を保持する除数レジスタ
、3は被除数レジスタ1(7)iと除数レジスタ2の値
との加算あるいは減算する演算回路、4は演算回路3の
演算を示す演算フラグ、5は演算回路3の演算結果によ
るキャリ出力を保持するキャリフラグ、6は演算回路3
の出力を被除数レジスタ1に入力する時に左[1ビツト
シフトするシック、了は演算の結果の商を保持する商レ
ジスタ、8は演算回路3の出力データのMSBと、演算
フラグ4およびキャリフラグ5より、次の演算フラグを
生成する演算制御回路、9は除算演算処理を制御するタ
イミング制御回路である。
以上のように構成された本実施例の除算回路について以
下にその動作を説明する。
下にその動作を説明する。
除算演算に必要な被除数および除数をそれぞれ被除数レ
ジスタ1と除数レジスタ2に入力する。
ジスタ1と除数レジスタ2に入力する。
入力された被除数および除数は(2)式を満足する値を
とる。演算回路3の加算か減算かを示す演算フラグop
f4は、(5)式となる。
とる。演算回路3の加算か減算かを示す演算フラグop
f4は、(5)式となる。
除算演算の始めに演算フラグ4を1に設定する。
演算フラグ4に従って演算回路3は被除数レジスタ1の
値から除数″レジスタ2の値を減算する。演算回路3の
加減算の結果によりオーバーフローが発生した場合は、
キャリフラグ6を1に設定し、オーバーフローが発生し
ない場合は、キャリフラグ6を0に設定する。このキャ
リフラグ6を商レジメタの右入力よシ入力し、商レジス
タを左に1ビツトシフトする。演算回路3の出力はシフ
タ6を通して左に1ビツトシフトし被除数レジスタ1に
人力する。
値から除数″レジスタ2の値を減算する。演算回路3の
加減算の結果によりオーバーフローが発生した場合は、
キャリフラグ6を1に設定し、オーバーフローが発生し
ない場合は、キャリフラグ6を0に設定する。このキャ
リフラグ6を商レジメタの右入力よシ入力し、商レジス
タを左に1ビツトシフトする。演算回路3の出力はシフ
タ6を通して左に1ビツトシフトし被除数レジスタ1に
人力する。
演算制御回路8は、演算フラグ4が0の時に演算回路3
の出力データのMSBが0ならば、演算フラグ4を0に
設定し、演算フラグ4が1の時に演算回路3の出力デー
タのMSBが1ならば、演算フラグ4を1に設定する。
の出力データのMSBが0ならば、演算フラグ4を0に
設定し、演算フラグ4が1の時に演算回路3の出力デー
タのMSBが1ならば、演算フラグ4を1に設定する。
その他の場合は、キャリアラグ5を演算フラグ4に設定
する。被除数と除数との加減算およびシフトは、除数の
語長+1回演算を繰シ返す。除算処理の結果、商は商レ
ジスタ7に、余りは被除数レジスタ11C設定される。
する。被除数と除数との加減算およびシフトは、除数の
語長+1回演算を繰シ返す。除算処理の結果、商は商レ
ジスタ7に、余りは被除数レジスタ11C設定される。
以上の動作の流れを第4図に示すフローチャートで説明
する。
する。
(・つ被除数および除数をそれぞれ被除数レジスタ1と
除数レジスタ2に入力する。(コ)演算フラグ4を1に
設定する。(ハ)演算フラグ4が−ならば加算、1なら
ば減算を実行する。に)部分剰余と除数との加算を行な
う。(ホ)部分剰余から除数を減算する。
除数レジスタ2に入力する。(コ)演算フラグ4を1に
設定する。(ハ)演算フラグ4が−ならば加算、1なら
ば減算を実行する。に)部分剰余と除数との加算を行な
う。(ホ)部分剰余から除数を減算する。
(ハ)演算結果よりキャリフラグ5を設定する。(ト)
商レジスタ7を左に1ビツトシフトする。←→演算フラ
グ4と出力データのMSBとを比較し、等しければ演算
フラグの値を変えない。(す)演算フラグ4にキャリフ
ラグ5を入力する。0)演算処理が終了していなければ
(ハ)に戻る。Qり演算の結果を商は商レジスタ7K、
余シは被除数レジスタ1に設定され、以上の流れを終了
する。
商レジスタ7を左に1ビツトシフトする。←→演算フラ
グ4と出力データのMSBとを比較し、等しければ演算
フラグの値を変えない。(す)演算フラグ4にキャリフ
ラグ5を入力する。0)演算処理が終了していなければ
(ハ)に戻る。Qり演算の結果を商は商レジスタ7K、
余シは被除数レジスタ1に設定され、以上の流れを終了
する。
発明の効果
本発明の除算回路は部分剰余と除数との加算あるいは減
算により生じるオーバーフローをキャリフラグと演算フ
ラグおよび演算結果のMSBより検出し、次の演算フラ
グを操作することによシ、符号なしの除算演算を処理す
ることができ、その実用的効果は大きい。
算により生じるオーバーフローをキャリフラグと演算フ
ラグおよび演算結果のMSBより検出し、次の演算フラ
グを操作することによシ、符号なしの除算演算を処理す
ることができ、その実用的効果は大きい。
第1図は従来の除算回路の構成を示すグロック図、第2
図は従来の除算回路の動作を示すブローチ、ヤード、第
3図は本発明の一実施例における除算回路の構成を示す
ブロック図、第4図は本発明の除算回路の動作を示すフ
ローチャートである。 1・・・・・・被除数レジスタ、2 ・除数レジスタ、
3・ ・演算回路、4 ・演算フラッグ、5 ・・キャ
リフラグ、6・・・・・シフタ、7・・・・・・商レジ
スタ、8・・・・演算制御回路、9・・・・タイミング
制御回路。
図は従来の除算回路の動作を示すブローチ、ヤード、第
3図は本発明の一実施例における除算回路の構成を示す
ブロック図、第4図は本発明の除算回路の動作を示すフ
ローチャートである。 1・・・・・・被除数レジスタ、2 ・除数レジスタ、
3・ ・演算回路、4 ・演算フラッグ、5 ・・キャ
リフラグ、6・・・・・シフタ、7・・・・・・商レジ
スタ、8・・・・演算制御回路、9・・・・タイミング
制御回路。
Claims (1)
- 被除数を入力し、除算演算の間は部分剰余を保持し、演
算の終了時にけ余シを保持する被除数レジスタと、除数
を入力し、前記除算演算の間、値を保持する除数レジス
タと、前記被除数レジスタの値と前記除数レジスタの値
との加算または減算を行なう演算回路と、前記演算回路
の演算を示す演算フラグと、前記演算回路の演算結果に
よるキャリ出力を保持するキャリフラグと、前記演算回
路の出力を前記被除数レジスタに入力する時に左に1ビ
ット分シフトするシックと、演算結果の商を保持する商
レジスタと、演算処理を制御するタイミング制御回路と
、部分剰余と除数との加算あるいは減算により生じるオ
ーバーフローを前記キャリフラグと前記演算フラグと演
算結果のMSBよシ検出し、前記演算フラグを操作する
演算制御回路とを備えたことを特徴とする除算回路。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP59102171A JPS60246437A (ja) | 1984-05-21 | 1984-05-21 | 除算回路 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP59102171A JPS60246437A (ja) | 1984-05-21 | 1984-05-21 | 除算回路 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPS60246437A true JPS60246437A (ja) | 1985-12-06 |
| JPH0449138B2 JPH0449138B2 (ja) | 1992-08-10 |
Family
ID=14320254
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP59102171A Granted JPS60246437A (ja) | 1984-05-21 | 1984-05-21 | 除算回路 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPS60246437A (ja) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| EP1133059A1 (fr) * | 2000-03-10 | 2001-09-12 | Koninklijke Philips Electronics N.V. | Covertisseur de fréquence permettant de programmer un rapport de division non-entier au moyen d'un unique mot de consigne |
Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS52132751A (en) * | 1976-04-30 | 1977-11-07 | Hitachi Ltd | Operational unit |
| JPS588352A (ja) * | 1981-07-06 | 1983-01-18 | Toshiba Corp | 除算回路 |
-
1984
- 1984-05-21 JP JP59102171A patent/JPS60246437A/ja active Granted
Patent Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS52132751A (en) * | 1976-04-30 | 1977-11-07 | Hitachi Ltd | Operational unit |
| JPS588352A (ja) * | 1981-07-06 | 1983-01-18 | Toshiba Corp | 除算回路 |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| EP1133059A1 (fr) * | 2000-03-10 | 2001-09-12 | Koninklijke Philips Electronics N.V. | Covertisseur de fréquence permettant de programmer un rapport de division non-entier au moyen d'un unique mot de consigne |
Also Published As
| Publication number | Publication date |
|---|---|
| JPH0449138B2 (ja) | 1992-08-10 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP2835153B2 (ja) | 高基数除算器 | |
| JPS60140429A (ja) | 10進乗算装置 | |
| US4692891A (en) | Coded decimal non-restoring divider | |
| JPH07107664B2 (ja) | 乗算回路 | |
| JPH0234054B2 (ja) | ||
| JPS60246437A (ja) | 除算回路 | |
| JPH0346024A (ja) | 浮動小数点演算器 | |
| JPH0337212B2 (ja) | ||
| JPH0831024B2 (ja) | 演算プロセッサ | |
| JPS6248857B2 (ja) | ||
| JPS61101835A (ja) | 除算回路 | |
| JPS6259828B2 (ja) | ||
| JP2664750B2 (ja) | 演算装置及び演算処理方法 | |
| JP3068640B2 (ja) | 計算装置 | |
| JPS63254525A (ja) | 除算装置 | |
| JPS626258B2 (ja) | ||
| SU511590A1 (ru) | Устройство дл делени чисел | |
| SU1357947A1 (ru) | Устройство дл делени | |
| JPS6129020B2 (ja) | ||
| JPS5985539A (ja) | 除算処理装置 | |
| JPH029366B2 (ja) | ||
| JPS6175927A (ja) | 符号付nビツト2進数乗算方式 | |
| JPH01233520A (ja) | 高基数非回復型除算装置 | |
| JPH01125625A (ja) | 除算装置 | |
| JPH0553759A (ja) | 固定小数点演算ユニツト |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| EXPY | Cancellation because of completion of term |