JPH02194430A - 除算器 - Google Patents

除算器

Info

Publication number
JPH02194430A
JPH02194430A JP1013191A JP1319189A JPH02194430A JP H02194430 A JPH02194430 A JP H02194430A JP 1013191 A JP1013191 A JP 1013191A JP 1319189 A JP1319189 A JP 1319189A JP H02194430 A JPH02194430 A JP H02194430A
Authority
JP
Japan
Prior art keywords
holding
data
register
bit
dividend
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
JP1013191A
Other languages
English (en)
Inventor
Koichi Kihara
弘一 木原
Kazunari Yamamoto
一成 山本
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 JP1013191A priority Critical patent/JPH02194430A/ja
Priority to CA002008026A priority patent/CA2008026A1/en
Priority to DE69030772T priority patent/DE69030772T2/de
Priority to EP90101112A priority patent/EP0379998B1/en
Priority to US07/467,689 priority patent/US5014233A/en
Publication of JPH02194430A publication Critical patent/JPH02194430A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/38Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06F7/48Methods 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/52Multiplying; Dividing
    • G06F7/535Dividing only
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2207/00Indexing scheme relating to methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F2207/535Indexing scheme relating to groups G06F7/535 - G06F7/5375
    • G06F2207/5352Non-restoring division not covered by G06F7/5375

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)
  • Executing Machine-Instructions (AREA)
  • Complex Calculations (AREA)

Abstract

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

Description

【発明の詳細な説明】 (産業上の利用分野) 本発明は数値演算処理装置、とくに除算器に関する。
(従来の技術) 従来、2進法数値データを除算する除算装置において、
引き放し法が用いられている。これは、除数、被除数、
商などの値を保持する複数のレジスタと、算術シフトを
行なうシフタとを用いて、被除数から除数を減算し、算
術シフトなどの演算を順次繰り返すことによって商を求
めるものである。
2進法表記の数(aデータを除算する場合、2進数を、
たとえば、第3図に示すような固定小数点および2の補
数による数値フォーマットで表わすと、被除数l〜を除
数Bで除算した商Qは、Q=l〜/1113     
       il+であり、以下に示・丁条件 0≦A、O<B、A<28    fiでは、 0≦Q<2 となる。
ここで、商(ユの数値形式は第3図に示すように、 符号lビット十整数部1ビット+小数部Nビットである
式(1)で示される商Qを求めるための処理を示すと、
第4図のように、2進数の除算器によ−)で、被除数A
Iを除数81で除算する場合、まず、商のレジスタQに
初期値「0」を設定する(処理41)、レジタ、りAに
はン皮除霞XAIを、またレジスタBには除数旧を設定
しておく1次に、被除数A1から除数旧を減算し、結果
C1をレジスタにに格納づる(処理42)、演算結果C
1がrQJ以−Lの場合には(43) 、レジスタCの
「1」詰めの左1ビット算術シフトを行なう、その値を
62とする(4.4)。
また演算結果C1を2倍にした値C3を[/ジスクl〜
に格納する(処理45)、 一力演算結果CIが「0」より小さい場合にはレジスタ
QのrOJ詰めの左lビット算術シフト46を行なう、
その値を64とする。圭た値Alを2(flにした値A
2をレジスタAに格納する(処理41)9このような処
理42〜47を小数ピッ1の:t、 Nプラス1回繰り
返す(ループ48)。
以上の方法により、レジスタCに商0が求土る。
(発明が解決しようとする課題) このような除算を行なう専用のハードウェアを資しない
通常のマイクロプロセッサにおいては、商1指当り、数
マシンサイクルから数十マシンサイクルが必要となり、
高速性に劣る。
本発明はこのような従来技術の欠点を解消し、短時間で
2進数の除算処理が可能な簡略な構成の除算器を提供す
ることを目的とする。
(5題を解決するための手段) 本発明は前述の課題を解決するために、被除数のデータ
を保持する第1の保持手段と、除数のデータを保持する
第2の保持手段と、第1の保持手段に保持された被除数
のデータと第2の保持手段番9二保持された除数のデー
タとの和および差を算出−)る算出毛FCとを有し、被
除数を除数で除した商を求める除算器は、演算手段にお
いて算出された演算結果のデータの符号ビットを保持す
る第3の保持手段と、符号ビットを反転する反転手段、
ど、反転手段により反転された符号ビットを保持する第
1のシフト手段と、演算手段の演算結果のf−・夕を「
01詰めの左1ピツl−算術シフトし、シフト後のデー
タを第1の保持手段に送出する第2のシフト手jΩと、
除算器の繰ibし処理を制御する制御手段とを有し、演
算手段は、第3の保持手段に保持された符号ビットに従
って和または差の算出を行ない、演算手段において算出
された演算結果を第2のシフト手段にて2倍し、その結
果を第1の保持手段にて保持するとともに5演算結県の
符号ビットを第3の保持手段にて保持するとともに、符
号ビットを反転手段にて反転して第1のシフト手段に送
出し、制御手段にて除算の繰返し処理を制御することに
より、第1のシフト手段に商を求める。
(作 用) 本発明によれば、第】の保持手段に保持された被除数の
データから、1ビットの符号情報により、和もしくは差
のいずれかを算出し、算出したデータの符号ビットを保
持する。この符号ビットを反転したものを最下位ビット
より左詰めでシルアルに配列し、これが最終的に商とな
る。また、シフト手段にて左1ビットシフトを行ない次
の演算処理の被除数とする5 (実施例) 次に添付図面を参4.して本発明による除算器の実施例
を詳細に説明する。
第1図を参瞭すると、本発明の特定の実施例による除算
25は、マイクロプロセッサ内に設けられてj4す、2
進数の被除数Aを除数)3(0≦A、0〈1〕、A<2
B)により除算するためのものである。
ここで扱う2進数値データのffa弐は、第3に示tよ
うに、2の補数および固定小数点方式なとり、したかっ
て 0≦Q<2 である、その数値形式は、同図に示すように、符号1ビ
ット+整数部1ビット+小数部Nビットである。この除
算器は加減算器fAUl 3を有し、加減算器3にはB
レジスタiBregl 2が、またシフタfsFT17
を介してAレジスタfAregl Iがそれぞれ接続さ
れている。除算器はまた、インバートゲ−)−(rNV
)5とD 型7 ’J ップフ0 ツブ(I]FFI 
 4 。
ループカウンタ(LC) 8 、およびシフトレジスタ
fQsfrl 6を備えている。
Aレジスタ1は破除RAを保持し、Bレジスタ2は除数
Bを保持するレジスタ回路である。D型フリップフロッ
プ4は、加減算233の出力結果の符号ビット9を1マ
シンサイクルの間保持する保持回路である。インバート
ゲート5は加減算器3の出力の符号ビット9を反転して
シフトレジスタ6に送出する反転回路である。ループカ
ウンタ8は、除算で必要とされる後述の繰返し処理27
(第2図)のループ回数N+1が初期設定され、繰返し
処理27の中でループカウンタ8の値が「0」になるま
で亀岡デクリメントされる計数回路である。
なお、除算実行中はこの設定値がfO」になるまでの間
、制御信号10をアクデイプにして加減算器3、シフト
レジスタ6、シフタ7およびプログラムカウンタ(図示
せず)に現在除算を実行中であることを通知する。シフ
トレジスタ6は、除算処理実行中に限りインバートゲ−
1・5の出力60を最下位ビット側から左方向へシリア
ルに配列し、最終的には商()が格納されるシフトレジ
スタ回路である。シフタ7は、除算処理実行中に限り加
減算器3の出力を[0)詰め左1ビット算術シフトを行
ない、その結果をレジスタ1に供給するシフト回路であ
る。
加減′WL器コ3はレジスタlとレジスタ2の間で加Q
もし、<は減算を行なう算術演算回路である。ただし、
加減算器3で加算を実行するか減算を実行するかの泗定
は、除算処理実行中に限りl)型フッツブフロップ4の
出力62にて行なわれる。つまり出力62が「0」のと
きは13Ji算を行ない、「1」のときは加算を行なう
次にこの除算器の除算処理をそのアルゴリズムに沿って
説明する。
式il+で示される商Qの値は、第2図に示す以下の処
理で得られる。
まず前もって被除数Aをレジスタlに格納し、除数13
を格納しておく、またループカウンタ8に除算処理で必
要どなる繰返し回Ct N + )を設定しておく、こ
れはシフトレジスタ6と0gフリップフロップ4をリセ
ットしておき全ビットを「0.1にしておくことである
処理21: Q=0. SGN =Oとする。ただし、
ここで変数sGNは1ビットの符号情報である。 次に
除算命令に応動じて以下の処理を施す。
処理23:5GN=0であるなら(22)、被除数Aか
ら除KI Bを減算し、その結果をCとする。
これは、D型フリップフロップ4の出力62が「0」で
あるなら加減算器3においてレジスタlからレジスタ2
を減算することである。除算命令の開始直後は′D型ラ
フリップ20ツブ4出力62は「0」に初期設定されて
いるので、必ずこの処理23を施すことになる。
処理24: SGN = 1であるなら被除数Δと除数
Bを加算する。
これはD型フリップフロップ4の出力62が「1」であ
るなら、加減算器3においてレジスタlとレジスタ2と
を加算することである。
処理25:処理23または24の計算結果の符号ビット
sgn (C)を変数SGNに格納する。この符号ビッ
トは計算結果が「0」以上のとき「OJ、負のときはr
lJとなる。
これは処理23または24における加減算器3の出力の
符号ビット9をD型フリ・ンプフロップ4に人力するこ
とである。
処理26:処理23または24の計算結果の符号ビット
を反転した値SGN  (つまり、計算結果が「01以
上のとき「l」、負のときは「0」となる、)を商とな
る値Qの最下位ビットからシリアルに配列する。
これは処理23または24における加減算器3の出力の
符号ビット9をインバートゲート5で反転してシフトレ
ジスタ6の最下位ビットからシリアルに配列することで
ある。
処理27:処理23または24の計算結果Cを10J9
めの左1ビット算術シフトした値(つまり、2倍した値
)をレジスタAに格納する。
これは処理22または23における加減算器3の出力を
シフタ7で2倍してレジスタ1に格納することである6 処理28:処理23または27の処理を繰返し数N+1
回繰り返す。
これは、これら一連の処理の都度ループカウンタ8をデ
クリメントし、ループカウンタ値がrOJになるまで処
理23〜27を繰り返すことである。なお、この除算処
理実行中はループカウンタ8から出力される制御信号l
Oにより、マイクロプロセッサのプログラムカウンタの
更新を停止させておく。
ところで、以上の説明から明らかなように、第1図に示
すシフタ7はレジスタ1と加減算器3の間に設置しても
よい、また、第1図に示す除算器の構成において、特殊
な回路は何ら必要とされない、というのも、通常のマイ
クロプロセッサ、とくにディジタル信号プロセッサでは
、レジスタ、シフトレジスタ、算術論理ユニットfAL
Ul 、 AL口での計算結果の符号ビットを格納する
フラグレジスタ、ループカウンタおよびバレルシフタが
常用され、それらを利用することができるからである。
したがって第1図に示す除算器を構成するには、D型フ
リップフロップ4を含むわずかなハードウェアの追加で
済む、また、処理22〜28はプロセッサの1マシンサ
イクルで充分実行可能である。
(発明の効果) このように本発明によれば、除算器の演算処理過程にお
いて被除数と除数との差および和のデータの符号により
データの選択抑制を行ない、符号を反転後、最下位ビッ
トよりシリアルに配列することにより、簡略な回路で除
算速度を向上させることができる。
である。
主デ部 の、′:′の脱B 8.Aレジスタ Bレジスタ 1.加減算器 9.D型フリップフロップ 1.インバートゲート 1.シフトレジスタ 0.シフ り 1.ループカウンタ
【図面の簡単な説明】
第1図は本発明による除算器の実施例を示す図。 第2図は、第1図に示す実施例における除算器の動作フ
ローの例を示す図、 第3図は、同実施例に用いられる数値フォーマットの例
を示す図。 第4図は、従来の除算器のフローの例を°示す図特許出
願人 沖電気工業株式会社 代 理 人 番地 孝雄 丸山 隆夫 MSE3 LSE3 Qの哀)這1ず−マット 第 超 ■の質よブσ− 第 謬 祥メの政Q/)賽仏ブづ− @ 4− 面

Claims (1)

  1. 【特許請求の範囲】 被除数のデータを保持する第1の保持手段と、除数のデ
    ータを保持する第2の保持手段と、第1の保持手段に保
    持された前記被除数のデータと第2の保持手段に保持さ
    れた前記除数のデータとの和および差を算出する算出手
    段とを有し、前記被除数を前記除数で除算した商を求め
    る除算器において、該除算器は、 前記演算手段において算出された演算結果のデータの符
    号ビットを保持する第3の保持手段と、 該符号ビットを反転する反転手段と、 該反転手段により反転された符号ビットを保持する第1
    のシフト手段と、 前記演算手段の演算結果のデータを「0」詰めの左1ビ
    ット算術シフトし、シフト後のデータを第1の保持手段
    に送出する第2のシフト手段と、該除算器の繰返し処理
    を制御する制御手段とを有し、 前記演算手段は、第3の保持手段に保持された符号ビッ
    トに従って前記和または差の算出を行ない、前記演算手
    段において算出された演算結果を第2のシフト手段にて
    2倍し、その結果を第1の保持手段にて保持するととも
    に、該演算結果の符号ビットを第3の保持手段にて保持
    するとともに、該符号ビットを前記反転手段にて反転し
    て第1のシフト手段に送出し、前記制御手段にて除算の
    繰返し処理を制御することにより、第1のシフト手段に
    前記商が求まることを特徴とする除算器。
JP1013191A 1989-01-24 1989-01-24 除算器 Pending JPH02194430A (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
JP1013191A JPH02194430A (ja) 1989-01-24 1989-01-24 除算器
CA002008026A CA2008026A1 (en) 1989-01-24 1990-01-18 Divider for carrying out high speed arithmetic operation
DE69030772T DE69030772T2 (de) 1989-01-24 1990-01-19 Dividierer zur hochgeschwindigen Ausführung einer arithmetischen Operation
EP90101112A EP0379998B1 (en) 1989-01-24 1990-01-19 Divider for carrying out high speed arithmetic operation
US07/467,689 US5014233A (en) 1989-01-24 1990-01-19 Divider for carrying out high speed arithmetic operation

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP1013191A JPH02194430A (ja) 1989-01-24 1989-01-24 除算器

Publications (1)

Publication Number Publication Date
JPH02194430A true JPH02194430A (ja) 1990-08-01

Family

ID=11826273

Family Applications (1)

Application Number Title Priority Date Filing Date
JP1013191A Pending JPH02194430A (ja) 1989-01-24 1989-01-24 除算器

Country Status (5)

Country Link
US (1) US5014233A (ja)
EP (1) EP0379998B1 (ja)
JP (1) JPH02194430A (ja)
CA (1) CA2008026A1 (ja)
DE (1) DE69030772T2 (ja)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5208769A (en) * 1991-09-19 1993-05-04 Zilog, Inc. Unsigned integer multiply/divide circuit
US6173305B1 (en) 1993-11-30 2001-01-09 Texas Instruments Incorporated Division by iteration employing subtraction and conditional source selection of a prior difference or a left shifted remainder
US5442581A (en) * 1993-11-30 1995-08-15 Texas Instruments Incorporated Iterative division apparatus, system and method forming plural quotient bits per iteration
US5644524A (en) * 1993-11-30 1997-07-01 Texas Instruments Incorporated Iterative division apparatus, system and method employing left most one's detection and left most one's detection with exclusive or
US5493523A (en) * 1993-12-15 1996-02-20 Silicon Graphics, Inc. Mechanism and method for integer divide involving pre-alignment of the divisor relative to the dividend
US5517439A (en) * 1994-02-14 1996-05-14 Matsushita Electric Industrial Co., Ltd. Arithmetic unit for executing division
DE10055659C1 (de) 2000-11-10 2002-03-28 Infineon Technologies Ag Berechnungsschaltung zur Division eines Festpunktsignals
DE10158810C1 (de) * 2001-11-30 2003-04-24 Infineon Technologies Ag Berechnungsschaltung zur Division eines Festpunktsignals
CN108595146B (zh) * 2017-12-29 2020-10-27 珠海市杰理科技股份有限公司 除法运算方法、装置及设备
CN112631547B (zh) * 2020-12-31 2024-01-16 陕西烽火电子股份有限公司 一种使用可编程逻辑器件实现频率合成器控制参数计算的高效方法

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS60247736A (ja) * 1984-05-24 1985-12-07 Matsushita Electric Ind Co Ltd 除算回路
JPS6349931A (ja) * 1986-08-20 1988-03-02 Nec Corp 除算装置

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4228518A (en) * 1978-09-25 1980-10-14 Motorola, Inc. Microprocessor having multiply/divide circuitry
US4413326A (en) * 1978-10-18 1983-11-01 Honeywell Inc. Floating point division control
JPS60101640A (ja) * 1983-11-07 1985-06-05 Hitachi Ltd 10進除算装置
CA1252213A (en) * 1986-08-28 1989-04-04 Andrew G. Deczky Digital signal processor with divide function
JPS63245518A (ja) * 1987-03-31 1988-10-12 Toshiba Corp 除算演算装置

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS60247736A (ja) * 1984-05-24 1985-12-07 Matsushita Electric Ind Co Ltd 除算回路
JPS6349931A (ja) * 1986-08-20 1988-03-02 Nec Corp 除算装置

Also Published As

Publication number Publication date
US5014233A (en) 1991-05-07
EP0379998B1 (en) 1997-05-28
DE69030772D1 (de) 1997-07-03
DE69030772T2 (de) 1998-01-08
CA2008026A1 (en) 1990-07-24
EP0379998A2 (en) 1990-08-01
EP0379998A3 (en) 1992-05-13

Similar Documents

Publication Publication Date Title
JPH07210369A (ja) 並列加算および平均演算を行うための回路およびその方法
JP3418460B2 (ja) 倍精度除算回路および方法
US3986015A (en) Arithmetic unit for use in a digital data processor and having an improved system for parity check bit generation and error detection
JPH02194430A (ja) 除算器
JPS63245518A (ja) 除算演算装置
US3878985A (en) Serial-parallel multiplier using booth{3 s algorithm with combined carry-borrow feature
EP0173040B1 (en) Vector processing system
JP3276852B2 (ja) 符号変換回路
JP2502836B2 (ja) 除算回路の前処理装置
US4692891A (en) Coded decimal non-restoring divider
US6963644B1 (en) Multi-word arithmetic device for faster computation of cryptosystem calculations
JPS58132837A (ja) 10進除算装置
JP2664750B2 (ja) 演算装置及び演算処理方法
GB2268604A (en) Integer divider.
KR100198783B1 (ko) 직렬처리 나눗셈기의 구동 방법
JPS6027025A (ja) 除算回路
JPS60247736A (ja) 除算回路
JP2995721B2 (ja) 除算装置および除算方法
JP2001034457A (ja) 加減算回路
JP3068640B2 (ja) 計算装置
JPH04141727A (ja) 除算回路
JPH0573271A (ja) 除算回路
JPH07160480A (ja) 10進除算器
JPH02252023A (ja) 引き去り法または引き戻し法アルゴリズムで除算を行う除算器
JPH01237831A (ja) 除算装置