JPH0498421A - マイクロ・プロセッサ - Google Patents

マイクロ・プロセッサ

Info

Publication number
JPH0498421A
JPH0498421A JP2213852A JP21385290A JPH0498421A JP H0498421 A JPH0498421 A JP H0498421A JP 2213852 A JP2213852 A JP 2213852A JP 21385290 A JP21385290 A JP 21385290A JP H0498421 A JPH0498421 A JP H0498421A
Authority
JP
Japan
Prior art keywords
normalization
interruption
alu
processing
zero
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
JP2213852A
Other languages
English (en)
Inventor
Hiroyasu Otomo
博康 大友
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 JP2213852A priority Critical patent/JPH0498421A/ja
Publication of JPH0498421A publication Critical patent/JPH0498421A/ja
Pending legal-status Critical Current

Links

Abstract

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

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明はマイクロ・プロセッサに関し、特に固定小数点
データを入出力とする演算器と割込み制御回路を内蔵し
、演算器の仮数部の語長がメイン・バスの語長より拡張
されたマイクロ・プロセッサに関する。
〔従来の技術〕
浮動小数点データを入出力とするマイクロ・プロセッサ
や、入力データよりも出力データの桁数が拡張される乗
算器を内蔵したマイクロ・プロセッサなどでは、連続的
に演算を行った場合には、演算精度が劣化することがあ
る。そこで、この演算精度の劣化を避けるためには、適
時正規化などを行う必要がある。
従来のマイクロ・プロセッサでは、正規化などの必要の
有無を判断するためのハードウェアを内蔵していないな
め、ソフトウェアによって、正規化などの必要の有無を
判断していた。しかし、このソフトウェアによる判断を
演算のたびに行っていたのでは、判断や正規化などのた
めのプログラムが演算のためのプログラムに比ベステッ
プ数が多くなり、ステップ数の増加にともない処理時間
も長くなる。
一般的には、正規化などの必要の有無にかかわらず、正
規化など処理を行い演算精度が劣化することを防いでい
る。しかし、この場合でも演算のたびに正規化などを行
っていたのでは、正規化などのためのプログラムのステ
ップ数が非常に多くなり、定期的に正規化などの行って
いたのでは、演算精度の保証はできなくなる。
第4図に従来のマイクロ・プロセッサで加算。
正規化を繰返すプログラムのフローチャートを示す、こ
の例では、ループの回数だけ正規化も行われることにな
る。
以上のように、演算精度が劣化を防止するためには、冗
長なプログラミングをする必要があった。
〔発明が解決しようとする課題〕
上述した従来のマイクロ・プロセッサでは、演算器のデ
ータが正規化などの必要がない場合も正規化などを行う
プログラムになったり、正規化などの必要の有無を判断
する目的のプログラムが必要になったりする。このため
プログラムのステップ数が多くなり、処理時間も長くな
るという欠点があった。
本発明の目的は、演算精度の劣化を避けるためのプログ
ラムのステップ数を削減でき、プログラマの負担を低減
し、処理時間を短縮できるマイクロ・プロセッサを提供
することにある。
〔課題を解決するための手段〕
本発明のマイクロ・プロセッサは、演算器と、割込み制
御回路と、前記演算器の演算結果のうち上位所定桁が零
であることを検出する上位零検出回路と、前記上位零検
出回路の出力に応じて割込み処理に分岐する手段とを有
することを特徴とする。
〔実8!例〕 次に、本発明について図面を用いて説明する。
第1図は本発明の一実施例を示すブロック図であり、浮
動小数点演算回路を構成する仮数演算回路を実施した例
である。Pレジスタ1は第1の被演算データを格納する
入力レジスタ、Qレジスタ2は第2の被演算データを格
納する入力レジスタである。EAU3はPレジスタ1お
よびQレジスタ2の指数部データの演算を行う指数演算
回路である。EXCHANGE4で選択されたデータを
EAU3あるいは5AC5の値により左右シフト処理を
おこなう。AlO2は単項演算ではQレジスタ2を、二
項演算ではPレジスタlとQレジスタ2の仮数部データ
の演算を行う仮数演算回路である。上位零検出回路8は
AlO2の上位0桁が零であることを検出すると割込み
制御回路9へ割込み要求信号を出力する。
第2図(a)、(b)に示すEAU3.AlO2および
BUSIOのデータ・フォーマットを例に、割込み信号
が発生する過程を説明する。この例ではnを11と固定
する。A−B−Cの演1において A=64.0.B= 64.0−2−5.C=2−’と
すると、正規化などを行わずに演算を進めた場合のEA
U3.AlO2の値は、第3図に示すように変化する。
通常、浮動小数点データ同士を加減算する場合は、指数
部の値が大きいほうへ桁合せを行った後に、仮数部の値
同士を加減算する。従ってこのように連続的に加減算を
行った場合には、正しい値が得られないことがある。こ
れを避けるためには、AlO2の値が正規化などの必要
がない場合でも正規化などを行うなど、冗長なプログラ
ミングをする必要がある。
これに対し、本発明を実施した場合、正規化などのタイ
ミングは割込み信号で与えられ、割込み処理で正規化を
行うことで、EAU3.AlO2の値は第4図に示すよ
うに変化する。すなわち、64.0− (64,0−2
−’)=2−5=2−12×27 となった時、AUL7の仮数部の上位11ビツトが零と
なり、上位零検出回路8から割込み制御回路9へ割込み
要求信号を出力する0割込み処理で正規化を行うとEA
U3の値は−4,AlO2の値は2−1となる。続けて 2−5−(2〜5  ’;l  −16) = 2−1
6 = 2−12 ×行う時、EALI3の値は−4と
なっているため、EAU3の値が7のままの第3図を例
とは異なり、正しい演算結果2−16を得ることができ
る。この時も、AlO2の仮数部の上位11ビットが零
となっていることにより、上位零検出回路8から割込み
制御回路9へ割込み要求信号を出力する0割込み処理で
正規化を行うとEAL3の値は−7,ALU7の値は2
 となり、正しい値をBUSl 0に出力できる。
第7図(a)、(b)に本発明のマイクロ・プロセッサ
で加算を繰返すプログラムのフローチャートを示す、第
8図に示した従来例とは異なり、割込み処理で正規化を
行うことにより、ループの中から正規化処理が無くなり
、必要な時だけ正規化を行うプログラムにできる。また
、割込み処理の正規化は、他のブロックでも共通に使用
できる。第5図は本発明の他の実施例を示すブロック図
である。第一の実施例と異なる点は、上位零検出回路8
で検出する零の桁数nを任意に設定できることである。
桁数nは、Nレジスタ11に設定する。この例の場合は
、第6図に示すように、nの値により演算精度、割込み
発生頻度を調整できるという利点を有する。
〔発明の効果〕
以上説明したように、本発明はプログラムを冗長にする
こと無く演算精度の劣化を防止でき、プログラマの負担
を低減し、処理時間を短縮できる。
【図面の簡単な説明】
第1図は本発明の第1の実施例を示すブロック図、第2
図(a)、(b)はEAU、ALUおよびBUSのデー
タ・フォーマットを示す図、第3図は連続的に演算を続
けた場合のEAUおよびALUの内容を示す図、第4図
は適時正規化を行うなから演算を続けた場合のEALお
よびALUの内容を示す図、第5図は本発明の第2の実
施例を示すブロック図、第6図は2の実施例のnの値と
演算精度及び割込み発生頻度の関係を示す図、第7図は
本発明のマイクロ・プロセッサで加算を繰返すためのプ
ログラム例を示す流れ図、第8図は加算を繰返すための
従来のプログラムを示す流れ図である。 1・・・Pレジスタ、2・・・Qレジスタ、3・・・指
数演算回路、4・・・選択回路、5・・・シフト量検出
回路、6・・・バレル・シフタ、7・・・仮数演算回路
、8・・・上位桁検出回路(桁数固定)、9・・・割込
み制御回路、10・・・バス、11・・・Nレジスタ、
12・・・上位零検出回路(桁数可変)。

Claims (1)

    【特許請求の範囲】
  1. 演算器と、割込み制御回路と、前記演算器の演算結果の
    うち上位所定割込み処理に分岐する手段とを有すること
    を特徴とするマイクロ・プロセッサ。
JP2213852A 1990-08-13 1990-08-13 マイクロ・プロセッサ Pending JPH0498421A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2213852A JPH0498421A (ja) 1990-08-13 1990-08-13 マイクロ・プロセッサ

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2213852A JPH0498421A (ja) 1990-08-13 1990-08-13 マイクロ・プロセッサ

Publications (1)

Publication Number Publication Date
JPH0498421A true JPH0498421A (ja) 1992-03-31

Family

ID=16646089

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2213852A Pending JPH0498421A (ja) 1990-08-13 1990-08-13 マイクロ・プロセッサ

Country Status (1)

Country Link
JP (1) JPH0498421A (ja)

Similar Documents

Publication Publication Date Title
US4849921A (en) Arithmetic circuit for calculating the absolute value of the difference between a pair of input signals
US5862065A (en) Method and circuit for fast generation of zero flag condition code in a microprocessor-based computer
CA1324217C (en) Pipelined floating point adder for digital computer
US5375078A (en) Arithmetic unit for performing XY+B operation
US5341320A (en) Method for rapidly processing floating-point operations which involve exceptions
US6085211A (en) Logic circuit and floating-point arithmetic unit
US4823300A (en) Performing binary multiplication using minimal path algorithm
US6202078B1 (en) Arithmetic circuit using a booth algorithm
US7003540B2 (en) Floating point multiplier for delimited operands
JPH0498421A (ja) マイクロ・プロセッサ
US5838601A (en) Arithmetic processing method and arithmetic processing device
JP2517064B2 (ja) 非正規化数の処理方式
US7051062B2 (en) Apparatus and method for adding multiple-bit binary-strings
US5805487A (en) Method and system for fast determination of sticky and guard bits
JPH07146777A (ja) 演算装置
JPH04160533A (ja) マイクロ・プロセッサ
JPS6149234A (ja) 浮動小数点乗算回路
JP3229057B2 (ja) 例外処理装置
JPH0352092B2 (ja)
JPH0383126A (ja) 浮動小数点乗算器
JPS61282928A (ja) 浮動小数点演算装置
JP2903529B2 (ja) ベクトル演算方式
JP3522387B2 (ja) パイプライン演算装置
KR100431707B1 (ko) 부동소수점연산에서의지수처리방법
JPS60254231A (ja) 浮動小数点演算制御方式