JPH0264730A - 演算装置 - Google Patents

演算装置

Info

Publication number
JPH0264730A
JPH0264730A JP21479288A JP21479288A JPH0264730A JP H0264730 A JPH0264730 A JP H0264730A JP 21479288 A JP21479288 A JP 21479288A JP 21479288 A JP21479288 A JP 21479288A JP H0264730 A JPH0264730 A JP H0264730A
Authority
JP
Japan
Prior art keywords
value
multiple value
dividend
intermediate result
result
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
JP21479288A
Other languages
English (en)
Inventor
Ritsuo Sugaya
菅谷 律雄
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.)
NEC Corp
Original Assignee
NEC Corp
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 NEC Corp filed Critical NEC Corp
Priority to JP21479288A priority Critical patent/JPH0264730A/ja
Publication of JPH0264730A publication Critical patent/JPH0264730A/ja
Pending legal-status Critical Current

Links

Abstract

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

Description

【発明の詳細な説明】 し産業上の利用分野] 本発明はデジタル・プロセッサによって実行される演算
機能に関するものであり、特に除算機能を有する演算装
置に関する。
[従来の技術] マルチビット除算装置の従来技術としては、米国特許第
3684879号がある。
[発明が解決しようとする課題] 上述した従来技術は、16進数の除算構成が明らかでな
く、ス、除算回路にアソシエイティブ・メモリを使用す
る先行技術は皆無で、その概念を10進数にまで拡大し
たものは無い。
そこで、本発明の技術的課題は上記欠点に鑑み、任意長
の16進数又はEBCDIO進数の除算演算を高速に実
行する演算装置を提供することである。
[課題を解決するための手段] 本発明によれば、除数を整数倍した倍数値を生成する生
成手段と、生成された倍数値を倍数値に対応づけて記憶
する倍数値記憶手段と、上記生成手段により発生された
倍数値の最上位有効バイトを記憶するアソシエイティブ
・メモリと、被除数又は中間結果の鼓上位有効バイトと
上記アソシエイティブ・メモリ中の各倍数値の最上位有
効バイトとを各々比較し、被除数又は中間結果値の最上
位有効バイトより小さいか又は等しいことを検出する検
出手段と、該検出手段における条件該当信号中、最大の
倍数値に対応する信号及びその次の倍数値に対応する信
号を選択する手段と、該選択手段の出力に対応して、そ
の記憶位置に対応する倍数及び倍数値を各々前記倍数値
記憶表から取出す手段と、上記取出された最大の倍数値
を被除数又は中間結果値から減算し、倍数を上記記憶し
た部分商の代りに記憶する手段と、上記減算結果が負の
時、上記取出されている次に大きな倍数値を被除数又は
中間結果値から減算し、倍数を上記記憶した部分商の代
りに記憶する手段と、被除数又は中間結果値を左へシフ
トして次の繰返し処理に進めるシフト手段とを含む除算
回路を有していることを特徴とする演算装置が得られる
また本発明によれば、除数を整数倍した倍数値を生成す
る生成手段と、生成された倍数値を倍数に対応づけて記
憶する倍数値記憶手段と、上記生成手段により発生され
た倍数値の最上位有効バイトを記憶するアソシエイティ
ブ・メモリと、被除数又は中間結果の最上位有効バイト
と上記アソシエイティブ・メモリ中の各倍数値の最上位
有効バイトとを各々比較し、被除数又は中間結果値の最
上位有効バイトよりも小さいか又は等しいことを検出す
る検出手段と、該検出手段における条件該当信号中、最
大の倍数値に対応する信号及びその次の倍数値に対応す
る信号を選択する選択手段と、該選択手段の出力に対応
して、その記憶位置に対する倍数及び倍数値を各々前記
倍数値記憶手段から取出す取出手段と、上記選択された
2つの倍数値を被除数又は中間結果値から各々減算し、
大きい方の倍数値を減算した結果が正又は0の場合は、
その結果を中間結果値とし、減算結果が負の場合には、
小さい方の倍数値を引いた結果を中間値とし、その時の
対応する倍数を部分商とする部分商手段と、被除数又は
中間結果値を左へシフトして、次の繰返し処理を実施す
る手段とを含む除算回路を有していることを特徴とする
演算回路が得られれる。
[実施例] 次に本発明の実施例における16進数又は10進数の除
算の実行手順を説明する。
−第1実施例− (1)除数の1音数値表を生成し、倍数に対応づけてメ
モリに記憶する。
(2)アソシエイティブ・メモリ中に倍数値表の各項目
の最上位有効バイトを記憶する。
(3)被除数又は中間結果の最上位有効バイトをアソシ
エイティブ・メモリ中の各値と比較し、小さいか、又は
等しいものの内、最大倍数及びその次に大きなffi数
に対応する出力値をONにする。
(4)この情報に対応する倍数値を倍数値表のメモリよ
り各々読出し保持する。(但し、(3)における有効な
出力値が存在しない時は倍数及び倍数値を0として扱う
、) (5)最大倍数に対応する倍数値を被除数スは中間結果
から減算する。
(6)この減算において結果が負でなくしかも倍数が1
6進数時×8.10進数時×5であるならば、(3)に
戻って処理が続けられ、商の下位桁数値として記憶され
る前に16進数時8.10進゛数時5が加算される。
(7)減算において結果が負でなくしかも倍数が(6)
時でなければその倍数は有効であり商の下位桁数値とし
て記憶される。
(8)減算において結果負の時は(4)で読出された次
最大倍数に対応する倍数値を使用しく5)以降を実施す
る。
(9)被除数又は中間結果を1桁左へシフトしく3)以
降を繰り返し実行する。
上記動作を繰返し実行することにより、除算結果が得ら
れる。小数点の位置決めは、マイクロ命令等により実現
される。
次に、第1実施例の演算装置の除算回路のブロック図を
第1図に示す。
その動作を説明すると、図示回路は、制御線21の状態
に基づき初期設定モード或いは除算モードと異なる動作
を行なう。
初期設定モード時、アドレス線22は倍数値表1および
アソシエイティブ・メモリ2にデータを対応づけ連続的
に記憶するために適したアドレスを供給する。
倍数値表1に対するアドレス選択は選択回路11を介し
、アドレス線22を伝播させるため制御線21により制
御される。
倍数値表1およびアソシエイティプ・メモリ2に記憶す
るデータはレジスタ3及び4の値を入力し、ALU6で
演算される。
ALU6はレジスタ3をallOした値とレジスタ4の
除数を直接入力し、結果はデータ線23を介し、倍数値
表1、アソシエイテイプ・メモリ2およびレジスタ3に
供給する。
次サイクルにおいて、ALU6は再びレジスタ3および
4を入力とし、演算する。これを繰り返すことにより、
倍数表および最上位有効バイト表が倍数に対応づけられ
形成される。
以上が、初期モードにおける動作であるが、この時シフ
ト量制御線24によってシフト8に与えられるシフト量
は常に0である。
次に、除算モード時の動作について説明する。
初期設定が完了すると、被除数はレジスタ3に導かれる
べく制御されレジスタ3に保持される。
シフト量は、本モード中、1桁左シフト状態を制御線2
4を介し、シフタ7を制御する。
ALU6はレジスタ3のシフトされた値からレジスタ4
或いは5の選択された値を減算する。
この結果は、データ線23を介し、レジスタ3に中間結
果値として供給される。
又、データ線23の最上位有効バイトは検出部9にて検
出され、アソシエイティブメモリ2の記憶情報と比較検
出回路10にて比較され、次の減算演算で使用すべき倍
数値表1の索引アドレスを決定し、アドレス線25及び
26にて倍数値表1に供給される0選択回路11は、本
モード内は、アドレス線25を選択すべく制御される0
倍数値表1は該アドレスにより索引され、索引結果をレ
ジスタ4及び5に供給する。(但し、比較検出回路10
の結果該当条件に満たないアドレス線に対応する倍数値
表の出力レジスタ4或いは5は、制御部11により0が
保持されるとともに倍数は×0として制御部11は扱う
一般に選択回路13は最大倍数値に対応するデータ(レ
ジスタ4)を優先的に使用するが、ALU6の演算結果
が負である時、該検出信号27により現演算の無効化が
指示されレジスタ3及び5をALU6の入力とする演算
が実施される。
該制御は制御回路11により各レジスタ・選択回路に指
示される。尚、ALU6の出力が負でなくアソシエイテ
ィブ・メモリで倍数値表を索引する倍数が16進数時×
8.10進数時×5である時、制御回路11は2回目の
処理が必要となるため各部へ指示される。
出力数値線28は、アドレス線25.26で供給される
倍数およびそのいずれを使用するかの判別となる検出信
号27および2回目の処理を必要としているかを判定す
る制御回路11により、出力数値を決定する。尚、出力
数値線28の有効状態は制御線29の状態に決定される 本除算回路は、あらかじめ必要になることがある最大倍
数の次の倍数に対応する倍数値を準備しておき、必要と
判定された時は、直ちに、ALU6に供給することによ
り演算のロス時間を最小限に抑えることが可能な構成に
なっている。
以上の動作を被除数又は中間結果に対して繰返すこと及
び順序づけ状態の判別指針となる信号線29及びその出
力数値28の出力を記録することによって、正しい値を
得ることが可能である。
一実施例2− 次に、第2実施例の16進数又は10進数の除算の実行
手順を説明する。
(1)除数の倍数値表を生成し、倍数に対応づけてメモ
リに記憶する。
(2)アソシエイティブ・メモリ中に倍数値表の各項目
の最上位有効バイトを記憶する。
(3)被除数又は中間結果の最上位有効バイトをアソシ
エイティブ・メモリ中の各部と比較し、小さいか、又は
等しいものの内、最大倍数及びその次に大きな倍数に対
応する出力値をONにする。
(4)この情報に対応する倍数値を倍数値表のメモリよ
り各々読出し保持する。  ((■し、(3)における
有効な出力値が存在しない時は倍数及び倍数値をOとし
て扱う、) (5) fi大倍数及びその次に大きな倍数に対応する
倍数値を被除数又は中間結果から減算する。
(6)最大倍数に対応する(5)の減算結果が負でなく
しかも倍数が16進数時×8.10進数時×5であるな
らば、(3)に戻って処理が続けられ、商の下位桁数値
として記憶される前に16進数時8.10進数時5が加
算される。
(7)最大倍数に対応する(5)の減算結果が負でなく
、しかも倍数が(6)時でなければ、その倍数は有効で
あり、商の下位桁数値として記憶される。
(8)最大倍数に対応する(5)の減算結果が負の時は
、最大倍数の次に大きな倍数に対応する減算結果が有効
となり、その倍数は商の下位桁数値として記憶される。
(9)被除数又は中間結果を1桁左へシフトしく3)以
降を繰り返し実行する。
上記動作を繰返し実行することにより、除算結果が得ら
れる。小数点の位置決めは、マイクロ命令等により実現
される。
次に、第2実施例の演算装置の除算回路のブロック図を
第2図に示す。
その動作を説明すると、図示回路は、制御線21の状態
に基づき、初期設定モード或いは除算モードと異なる動
作を行なう。
初期設定モード時、アドレス線22は倍数値表1および
アソシエイティブ・メモリ2にデータを対応づけ連続的
に記憶するのに適したアドレスを供給する。
倍数値機1に対するアドレス選択は選択回路12を介し
、アドレス線22を伝播させるため制御線21により制
御される。
制御部1゛1は本モード信号を受信することにより本ブ
ロック制御対象に対し、下記制御を実施する。
倍数値機1およびアソシエイティプ・メモリ2に記憶す
るデータはレジスタ3及び4の値を入力し、ALU6で
演算される。
第1サイクルにおけるALU6はレジスタ3をallO
Lな値とレジスタ4に保持した除数を入力し、選択回路
15を介し、結果をデータ線23を介し、倍数値機1、
アソシエイティブ・メモリ2およびレジスタ3に供給す
る。
次サイクルにおいてALU6は再びレジスタ3および保
持されている除数(レジスタ4)を入力し、演算する。
この時シフト量制御線によってシフタ7に与えられるシ
フト量は常にOである。
これを繰り返すことにより倍数衣および最上位有効バイ
ト表が倍数(16進数×1〜×8.10進数時×1〜×
5)に対応づけられ形成−される。
除算モード時の動作について説明する。
初期設定が完了すると被除数はレジスタ3に選択回路1
3を介し、保持される。
シフト量は本モード中、1桁左シフト状態を制御線24
を介し、シフタ8を制御する。
第1サイクル、ALU6においてはレジスタ3のシフト
値とレジスタ4をallOLな値とが入力され選択回路
15を介し、結果をレジスタ3に供給する。
一方、最上位有効バイト検出部9はデータ線23より有
効バイトを検出し、アソシエイティブ・メモリ2の記憶
情報と比較・検出回路10において最上位有効バイト検
出部9〉アソシエイテイブ・メモリ各記憶情報の条件中
最大倍数および次倍数に対応する倍数値機のアドレスを
アドレス線25.26および選択回路12を介し倍数値
機1に供給する。
本アドレスにより索引された情報はレジスタ4および5
に保持される。
上記条件が成立しないアドレス線に対応する倍数値保持
レジスタ及び制御部11に送出される倍数は件に0とな
る。
次サイクルにおいて、ALU6は中間値(レジスタ3)
のシフト値と最大倍数値(レジスタ4)、ALU7は中
間値(レジスタ3)のシフト値と次最大倍数値(レジス
タ5)の減算が同時に実行される。
ALU6の11i算結果が負である時、アクティブにな
る信号線27は本演算の正/負結果を制御部11に伝播
し、本制御部の制御により選択回路15は制御されAL
U6の演算結果く0の時はALLJ7の出力が有効、A
LU6の演算結果〉0の時はALtJ6の出力が有効に
なる様選択する。
該出力はデータ線23を介しレジスタ3に中間結果値と
して供給される。又、データ線23の最上位有効バイト
は第1サイクル時同様検出され、比較検出回路10でア
ソシエイテイブ・メモリ2の各項と比較される。
次の減蒐演立で使用すべき倍数値機1の索引アドレス(
fi大倍数及び次最大倍数)を決定し、アドレス25及
び26にて倍数値機1に供給される。
選択回路12は、本モード中はアドレス線25を選択す
べく動作する0倍数値表1は該アドレスにより索引され
索引結果をレジスタ4及び5に供給する。(有効アドレ
スによる索引がない時は前記同様倍数値及び倍数は件に
Oとなる。
この時、制御部11においは、ALtJ6或いはALU
7の有効出力に使用された倍数が16進数×8.10進
数時×5である時2回目の処理が必要となるため各部へ
指示される。
出力数値線28は、アドレス線25.26で供給される
倍数および2回目処理の有無により制御部11により生
成される。
通常は有効倍数を出力するが、2回目処理がある時は2
回目有効倍数X8(16進時)または×5(10進時)
を出力する。
本数値線の有効状態は信号線29の状態によって決定さ
れる。
以上の動作を被除数又は中間結果に対して繰返すこと及
び順序づ・け状態の指針である信号線29及びその出力
数値28の出力を記憶することによって正しい値を得る
ことが可能である。
本除算回路はあらかじめ最大倍数及び次最大倍数に対応
する倍数値及びその減算回路を準備することにより、そ
のいずれかが常に使用可能となることにより演算のロス
時間を最小限に抑制することが可能である。
[発明の効果] 以上説明したように、本発明は除算を実行する上で問題
となる除数の倍数である被除算又は中間結果に対応する
適切な倍数及び倍数値を高速に得ることができるため、
任意長の16進数又はEBCDl 0進数の除算演算が
高速に実行できるる効果がある。
ブロック図、第2図は本発明の第2実施例であり、除算
回路ブロック図である。
1・・・倍数値表、2・・・アソシエイティブ・メモリ
、3〜5・・・レジスタ、6.7・・・ALU、・・・
シフタ、9・・・有効バイト検出回路、10・・・比軸
・検出回路、11・・・制御部、12〜15・・・選択
回路、21・・・モード制御線、22,25.26・・
・アドレス線、23・・・データ線、24・・・シフト
量制御線、2729・・・制御線、28・・・出力数値
線。
【図面の簡単な説明】

Claims (1)

  1. 【特許請求の範囲】 1)除数を整数倍した倍数値を生成する生成手段と、 生成された倍数値を倍数に対応づけて記憶する倍数値記
    憶手段と、 上記生成手段により発生された倍数値の最上位有効バイ
    トを記憶するアソシエイティブ・メモリと、 被除数又は中間結果の最上位有効バイトと上記アソシエ
    イティブ・メモリ中の各倍数値の最上位有効バイトとを
    各々比較し、被除数又は中間結果値の最上位有効バイト
    よりも小さいか又は等しいことを検出する検出手段と、 該検出手段における条件該当信号中、最大の倍数値に対
    応する信号及びその次の倍数値に対応する信号を選択す
    る選択手段と、 該選択手段の出力に対応して、その記憶位置に対応する
    倍数及び倍数値を各々前記倍数値記憶手段から取出す取
    出手段と、 該取出された最も大きな倍数値を被除数又は中間結果値
    から減算し、倍数を部分商として記憶する部分商記憶手
    段と、 上記減算結果が負の時、上記取出されている次に大きな
    倍数値を被除数又は中間結果値から減算し、倍数を上記
    記憶した部分商の代りに記憶する倍数記憶手段と、 被除数スは中間結果値を左へシフトして、次の繰返し処
    理に進めるシフト手段とを含む除算回路を有することを
    特徴とする演算装置。 2)除数を整数倍した倍数値を生成する生成手段と、 生成された倍数値を倍数に対応づけて記憶する倍数値記
    憶手段と、 上記生成手段により発生された倍数値の最上位有効バイ
    トを記憶するアソシエイティブ・メモリと、 被除数又は中間結果の最上位有効バイトと上記アソシエ
    イティブ・メモリ中の各倍数値の最上位有効バイトとを
    各々比較し、被除数又は中間結果値の最上位有効バイト
    よりも小さいか又は等しいことを検出する検出手段と、 該検出手段における条件該当信号中、最大の倍数値に対
    応する信号及びその次の倍数値に対応する信号を選択す
    る選択手段と、 該選択手段の出力に対応して、その記憶位置に対する倍
    数及び倍数値を各々前記倍数値記憶手段から取出す取出
    手段と、 上記選択された2つの倍数値を被除数又は中間結果値か
    ら各々源算し、大きい方の倍数値を減算した結果が正又
    は0の場合は、その結果を中間結果値とし、減算結果が
    負の場合には、小さい方の倍数値を引いた結果を中間結
    果値とし、その時の対応する倍数を部分商とする部分商
    手段と、被除数又は中間結果値を左へシフトして、次の
    繰返し処理を実施するシフト手段とを含む除算回路を有
    することを特徴とする演算装置。
JP21479288A 1988-08-31 1988-08-31 演算装置 Pending JPH0264730A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP21479288A JPH0264730A (ja) 1988-08-31 1988-08-31 演算装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP21479288A JPH0264730A (ja) 1988-08-31 1988-08-31 演算装置

Publications (1)

Publication Number Publication Date
JPH0264730A true JPH0264730A (ja) 1990-03-05

Family

ID=16661607

Family Applications (1)

Application Number Title Priority Date Filing Date
JP21479288A Pending JPH0264730A (ja) 1988-08-31 1988-08-31 演算装置

Country Status (1)

Country Link
JP (1) JPH0264730A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0454633A (ja) * 1990-06-25 1992-02-21 Toshiba Corp 高基数除算器
JP2011118633A (ja) * 2009-12-02 2011-06-16 Nec Corp 浮動小数点除算器、及びそれを用いた情報処理装置

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0454633A (ja) * 1990-06-25 1992-02-21 Toshiba Corp 高基数除算器
JP2011118633A (ja) * 2009-12-02 2011-06-16 Nec Corp 浮動小数点除算器、及びそれを用いた情報処理装置

Similar Documents

Publication Publication Date Title
JPH11154114A (ja) 複数データ・フェッチのアーキテクチャを使ってテーブル・ルックアップを実行するためのシステムおよび方法
JPH0517588B2 (ja)
JP3081710B2 (ja) オーバーフロー検出機能付き乗算装置
US4954947A (en) Instruction processor for processing branch instruction at high speed
JPH05250146A (ja) 整数累乗処理を行なうための回路及び方法
KR20020060547A (ko) 컴퓨터 산술 연산을 위한 부분 일치 부분 출력 캐쉬
JPH0264730A (ja) 演算装置
JPH0528431B2 (ja)
JP2793357B2 (ja) 並列演算装置
JP3278441B2 (ja) ベクトル処理装置
JPH0418344B2 (ja)
JP2989830B2 (ja) ベクトル処理方法
KR930003410B1 (ko) 스택영역의 데이터참조를 고속으로 행하는 데이터처리장치
JP3693873B2 (ja) マスクビット数演算装置、ベクトル処理装置、情報処理装置
JP2722493B2 (ja) レジスタ割り付け処理方法
JP2989829B2 (ja) ベクトル処理方法
JPS63279321A (ja) マイクロプログラム制御装置
JPS63298633A (ja) パイプライン処理装置における命令フェッチ制御方式
JPS6389930A (ja) マイクロプログラム制御装置
JPH04117520A (ja) 浮動小数点演算装置
JPS61221966A (ja) ベクトル命令処理装置
JPH0343865A (ja) ベクトル・データ処理装置
JPS59223846A (ja) 演算処理装置
JPH08241302A (ja) ベクトル処理装置及び乗算器
JPS63231628A (ja) アドレス演算器