JPH01237831A - 除算装置 - Google Patents

除算装置

Info

Publication number
JPH01237831A
JPH01237831A JP63063482A JP6348288A JPH01237831A JP H01237831 A JPH01237831 A JP H01237831A JP 63063482 A JP63063482 A JP 63063482A JP 6348288 A JP6348288 A JP 6348288A JP H01237831 A JPH01237831 A JP H01237831A
Authority
JP
Japan
Prior art keywords
data
register
dividend
divisor
held
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.)
Pending
Application number
JP63063482A
Other languages
English (en)
Inventor
Koichi Kihara
弘一 木原
Hiroki Kobayashi
広記 小林
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.)
Oki Electric Industry Co Ltd
Original Assignee
Oki Electric Industry 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 Oki Electric Industry Co Ltd filed Critical Oki Electric Industry Co Ltd
Priority to JP63063482A priority Critical patent/JPH01237831A/ja
Publication of JPH01237831A publication Critical patent/JPH01237831A/ja
Pending legal-status Critical Current

Links

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 (産業上の利用分野) 本発明は数値演算処理装置、特に除算装置に関する。
(従来の技術) 従来、数値演算処理装置のうち任意の被除数を他の任意
の除数で除算する除算装置は、除数、あるいは商などの
値を保持する複数のレジスタ、および加算器を有してお
り、その演算処理は被除数の上位ビットから除数を引き
、その剰余について順次減算を繰り返すことによって行
われる。
(発明が解決しようとする課題) 2進数の除算装置によって、例えばzcyである被除数
Xを除数yで除算する場合、まず、初期値である被除数
×1、除数Yl、および商21(初期値は0)をそれぞ
れのレジスタX、y、および2に設定する。次に、被除
数×1および商Zlの値をそれぞれ2倍して上記の各レ
ジスタに格納する。その後、2倍した後の被除数X2か
ら除数Y1を減算して減算後の値D1をレジスタXに格
納し、その減算値D1がrQJ以上か否かを判断する。
「0」以上の場合にはレジスタ2に格納された商の値Z
1にI’llをシリアル入力する。「0」より小さい場
合にはレジスタXに格納された値D1にYlを加算し、
加算後の値X3をレジスタXに格納する。減算値器が「
0」以上の場合にはDl、rOJより小さい場合には加
算後の値×3について、上述した初期値の設定以外の動
作を行い、所定のビット数分、つまり必要な精度になる
まで繰り返していた。このように従来の2進数の除算装
置は、減算値が負となる場合には除数を再び加算するた
めに多くのステップ数を必要としていたため、処理時間
が長くなるという欠点があった。また、例えば上述した
ような繰り返し行われる処理の機能がマイクロプロセッ
サ内にない場合には、ステップ数がさらに増加するとい
う問題があった。
本発明はこのような従来技術の欠点を解消し、短いステ
ップ数で2進数の除算処理が可能な除算装置を提供する
ことを目的とする。
(課題を解決するための手段) 本発明は上述の課題を解決するために、被除数のデータ
を保持する第1の保持手段と、除数のデータを保持する
第2の保持手段と、第1の保持手段に保持された被除数
のデータと第2の保持手段に保持された除数のデータと
の差な算出する演算手段とを有する除算装置は、演算手
段において算出された演算結果のデータの符号ビットを
保持する7JS3の保持手段と、演算結果のデータと第
1の保持手段に保持された被除数のデータとを選択する
選択手段と1選択手段により選択されたデータをシフト
し、シフト後のデータを第1の保持手段に送出するシフ
ト手段とを有し、選択手段は、第3の保持手段に保持さ
れた演算結果のデータの符号ビットのデータに従って、
演算結果のデータと第1の保持手段に保持された被除数
のデータのうち一方のデータを選択する。
(作 用) 本発明によれば、第1の保持手段に保持された被除数の
データと、第2の保持手段に保持された除数のデータが
演算手段に入力されると、入力された両データの差を算
出し、算出した差のデータの符号ビットを保持する。こ
の符号ビットによって算出結果のデータと第1の保持手
段に保持された被除数のデータのうちの一方を選択し、
選択後のデータをシフト手段で左1ピントシフトを行っ
て次の演算処理の被除数とする。
(実施例) 次に添付図面を参照して本発明による除算装置の実施例
を詳細に説明する。
第1図を参照すると1本発明の特定の実施例による除算
装置は、マイクロプロセッサ内に設けられており、2進
数の被除数Xを除数y (y)りにより除算するための
ものである。この除算装置は。
演算部4 (AlO2)を有し、AlO2にはAレジス
タ1およびBレジスタ2が接続され、またAlO2の符
号ストア44にはインバータ6を介してCレジスタ3が
接続されている。
Aレジスタ1は、被除数Xの初期値、および入力102
から入力されるAlO2の演算過程における被除数Xの
データを保持し、また図示しない制御部からの制御信号
に従って保持した被除数Xのデータを出力104に出力
する。Bレジスタ2は、除数y (y)x)のデータを
保持し、そのデータを制御信号に従い出力106に出力
する。また、Cレジスタ3はインバータ6から入力11
0に入力されるデータをAlO2の演算過程における除
算の結果面として順次保持する。なお、説明を容易にす
るため、以下の説明では各部を制御する制御部および制
御信号を省略する。
AlO2は、Bレジスタ2に保持された除Byのデータ
が入力108から入力され、Aレジスタ1に保持された
被除数Xのデータが他の入力104から入力されると、
入力されたデータに基づいて2進数の除算処理を実行す
る。なお、本実施例のAlO2は、入力されたデータを
2の補数により演算処理を行うものである。
第2図を参照すると、本実施例の除算装置がより詳細に
示されている。図によればAlH3はAレジスタ1から
のデータと、Bレジスタ2からのデータとを加算する加
算器42、加算器42において加算したデータと、加算
前のAレジスタlのデータとを選択するスイッチ48、
スイッチ4Bで選択されたデータを左1ビツトシフト、
つまり入力されたデータを2倍にするシフトスイッチ4
8、および加算器42において加算したデータの最上位
のピッ) (MSB)を保持する符号ストア44を有し
ている。
加算器42は、一方の入力104がAレジスタ1と接続
され、Aレジスタlに保持されている所定のビット数か
らなる被除数の初期値、あるいは演算途中における被除
数のデータがプラスのデータとして、すなわちそのまま
の符号で入力される。また、加算器42の他の入力10
6は、Bレジスタ2に接続されておりBレジスタ2に保
持されている所定のビット数からなる除数のデータがマ
イナスのデータとして、すなわち符号を負に変換して入
力される。加算器42は、これら2つの入力から入力さ
れたプラスの被除数のデータと、マイナスの除数のデー
タとを加算し、加算後のデータを出力112に出力する
。つまり、加算器42では被除数のデータと、除数のデ
ータとの差を算出する。
符号ストア44は、加算器42の出力112から出力さ
れた加算後のデータを保持し、保持したデータの最上位
ピッ) (MSB)を出力108からインバータ6に出
力し、またMSBのデータに応じた制御信号を制gg線
116を通してスイッチ46に出力する。なお、MSB
は加算後のデータが「正」または「0」のときは「0」
、負のときには「ljになるように設定されている。
スイッチ46の一方の入力端子46aは加算器42の出
力112に接続され、加算器42の加算後のデータが入
力される。また、他方の入力端子48bには、Aレジス
タlの出力104に出力された被除数のデータが入力さ
れる。スイッチ48は、制御線116を通して送られる
ストア44からの制御信号に従って入力端子46a、あ
るいは入力端子413bを出力端子に接続させ、接続し
た方からのデータを出力114に出力する。
シフトスイッチ48は、スイッチ46で選択され、入力
114から入力されたデータを「0」詰め左1ビツトシ
フト、つまり入力されたデータを2倍にして桁上げし、
出力102に出力する。
インバータ6は、AlH3の符号ストア44から入力1
0Bとして入力されるデータを反転する。つまり入力デ
ータが「1」の場合は「0」に、逆に入力データが「0
」の場合にはrlJに変換して、出力110に出力する
次に第3図のフローチャートを参照して動作を説明する
例えば、演算する被除数x1が3ビツトの(011) 
 除数Ylが3ビツトの(101)2とすると、2゛ まずAレジスタ1に被除数×1を2倍したデータx2、
つまり(110)2が設定され、Bレジスタ2には除数
Ylの(101)、、が設定される(300)。
Aレジスタ1に設定されたデータx2は、Aレジスタl
の出力104に出力され、加算器42の入力端子にプラ
スのデータとして入力される。データ×2はまた、スイ
ッチ46の入力端子413bにも入力される。Bレジス
タ2に設定されたデータY1は、Bレジスタ2の出力1
08に出力され、加算器42の他の入力端子にマイナス
のデータとして入力される。
プラスのデータx2とマイナスのデータY1は、加算器
42において加算され、X2−Ylの演算が行われ、演
算後のデータ21(001)2としてスイッチ46の入
力端子413aに出力される(302) 。
一方データZ1は符号ストア44にも出力される。
符号ストア44に入力されたデータZ1が「正」または
「0」か、「負」かを判断しく304) 、データZl
が「正」またはrQJの場合はスイッチ46が入力端子
48aに接続されるように制御信号を制御線116に出
力し、データZ1が「負」の場合にはスイッチ46が入
力端子48bに接続されるように制御信号を制御線11
Bに出力する。この例の場合は、データZ1が「正」で
あることからスイッチ46は入力端子46aに接続され
る。また、データZ1のMSBrOJはインバータ6の
入力108に入力され、インバータ6においてこのデー
タが反転され、データZ1のMSBのデータrQ’Jを
「1」として出力110に出力される。出力110に出
力された反転後の21のMSHのデータは、Cレジスタ
3にALU4の演算過程における除算の結果面としてシ
リアルに入力され、順次保持される。
この例の場合スイッチ46は前述したように入力端子4
6aに接続される。したがって、Zlのデータがスイッ
チ46の出力114に出力され、シフトスイッチ48に
送られる。シフトスイッチ48に入力されたZlのデー
タは、左lピントシフト(2倍)される。したがって、
Zlのデータは2×21である(010)2となる。シ
フトスイッチ48で2倍にされたZlのデータはシフト
スイッチ48の出力102からAレジスタ1に送られ、
つぎの被除数×2として保持される(3013)。なお
、ステップ304においてデータZ1が「負」の場合に
は、スイッチ46が入力端子46bに接続されることに
なるため、入力端子46bに入力されているデータx2
がシフトスインチ48に送られ、シフトスインチ48で
左1ビツトシフトされ(308) 、 Aレジスタlに
被除数×2のデータとして保持される(30f()。
被除数×2のデータは、Aレジスタ1の出力104から
加算器42に戻り、ステップ302〜ステツプ306、
あるいはステシブ302〜ステツプ308の動作が実行
され、所定の精度(ビット数)になるまで繰り返される
参考のため、第4図には従来の除算装置における演算処
理の動作のフローチャートが示されている。この従来の
除算装置は、被除数Xを保持するレジスタA、除数yを
保持するレジスタB、減算器、およびgt算の結果を保
持するレジスタCを有している。この従来の除算装置に
より、例えばzt4である被除数Xを除数yで除算する
場合、まず、各レジスタに初期値を設定する(50)。
レジスタCのデータと、レジスタAのデータをそれぞれ
2倍し、2倍したレジスタAのデータからレジスタBの
データをg′Qする(52)。減算したデータが「正」
または「0」か否かを判断しく54)、データが「正」
または「0」の場合はレジスタCのデータに「1」を加
算して(58)、ステップ52に戻り、減算したデータ
が「負」の場合にはレジスタAのデータにレジスタBの
データを加算して(58)、ステンプ52に戻る。次に
、この加算後のデータについて上述した初期値の設定以
外の動作を行い、所定のヒツト数分、つまり必要な精度
になるまでこの動作を繰り返していた。このように従来
の除算装置では減算したデータが負となる場合には除数
を再び加算するため、ステップ数が多くなり、処理時間
が長くなるという欠点があった。
しかし、本発明による除算装置では以上の実施例に示し
たように、ALt14が符号ストア44.スイッチ46
、およびシフトスインチ48を有し、被除数と除数との
差であるZlのデータの符号ピッ) (MSB)のデー
タを利用してスイッチ46を制御し、スイッチ46で選
択されたデータを1つのシフトスイッチ48で左1ビツ
トシフトを行い、シフト後のデータを次の@算処理にお
ける被除数とする。したがって、Zlのデータが負とな
る場合にも除数を’+Mび加算する必要がないため、除
算処理のステップ数を少なくすることができ、除算速度
を向上させることができる。
本発明による除算装置は高速性が重要視される数値演算
プロセッサや、ディジタルシグナルプロセッサにより有
利に使用することができる。
(発明の効果) このように本発明によれば、除算装置の演算処理過程に
おけるデータの選択制御を、被除数と除数の差のデータ
の符号ビン)により行い、選択したデータをシフト手段
で左1ビ・・・トシフトを行って次の演算処理の被除数
とするため、除算処理のステップ数が少なくなり、除算
速度を向上させることができる。
【図面の簡単な説明】 第1図は本発明による除算装置の実施例を示すブロック
図、 第2図は第1図に示す装置の具体的な回路構成を示す機
能回路図、 第3図は第1図に示す装置の動作を示すフローチャート
、 第4図は従来の除算装置の動作の一例を示すフローチャ
ートである。 主要部分の符号の説明 1.2,3  、 、 、 、レジスタ4、、、、、、
ALtl 6、、、、、、インバータ 42、、、、、、加算器 44、、、、、、符号ストア 4B、、、、、、スイッチ 4B、、、、、、シフトスイッチ 特許出願人 沖電気工業株式会社 代 理 人 香取 孝雄 丸山 隆夫 第 11 第 31 第 4−1

Claims (1)

  1. 【特許請求の範囲】 被除数のデータを保持する第1の保持手段と、除数のデ
    ータを保持する第2の保持手段と、前記第1の保持手段
    に保持された前記被除数のデータと前記第2の保持手段
    に保持された前記除数のデータとの差を算出する演算手
    段とを有する除算装置において、該装置は、前記演算手
    段において算出された演算結果のデータの符号ビットを
    保持する第3の保持手段と、 前記演算結果のデータと前記第1の保持手段に保持され
    た前記被除数のデータとを選択する選択手段と、 該選択手段により選択されたデータをシフトし、シフト
    後のデータを前記第1の保持手段に送出するシフト手段
    とを有し、 前記選択手段は、前記第3の保持手段に保持された前記
    演算結果のデータの符号ビットのデータに従って、前記
    演算結果のデータと前記第1の保持手段に保持された前
    記被除数のデータのうちの一方のデータを選択すること
    を特徴とする除算装置。
JP63063482A 1988-03-18 1988-03-18 除算装置 Pending JPH01237831A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP63063482A JPH01237831A (ja) 1988-03-18 1988-03-18 除算装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP63063482A JPH01237831A (ja) 1988-03-18 1988-03-18 除算装置

Publications (1)

Publication Number Publication Date
JPH01237831A true JPH01237831A (ja) 1989-09-22

Family

ID=13230502

Family Applications (1)

Application Number Title Priority Date Filing Date
JP63063482A Pending JPH01237831A (ja) 1988-03-18 1988-03-18 除算装置

Country Status (1)

Country Link
JP (1) JPH01237831A (ja)

Similar Documents

Publication Publication Date Title
JPH1195981A (ja) 乗算回路
JPS63245518A (ja) 除算演算装置
JP3271120B2 (ja) 2進数を高速乗算する装置
US4935890A (en) Format converting circuit for numeric data
JPH07107664B2 (ja) 乗算回路
JPH1091395A (ja) プロセッサ
JPH01237831A (ja) 除算装置
JP2991788B2 (ja) 復号器
JP2664750B2 (ja) 演算装置及び演算処理方法
JPH02205923A (ja) 演算プロセッサ
JPH10333883A (ja) 乗算方法および乗算回路
JP2591250B2 (ja) データ処理装置
US4141077A (en) Method for dividing two numbers and device for effecting same
JP3213982B2 (ja) 除算回路
JP2995721B2 (ja) 除算装置および除算方法
US6470369B1 (en) Euclid mutual division arithmetic circuit and processing circuit
JP3074958B2 (ja) 加算機能付きシリアル乗算器
JP2575856B2 (ja) 演算回路
JP3460780B2 (ja) 数値演算装置
JPH04148231A (ja) 演算回路
JPS61196473A (ja) Pcm方式信号再生装置
JPS58119046A (ja) 加減算器
JPH0553759A (ja) 固定小数点演算ユニツト
JPH0414173A (ja) 固定小数点演算器
JPH02239325A (ja) 除算回路