JPH03105621A - Non-numerical processing system - Google Patents

Non-numerical processing system

Info

Publication number
JPH03105621A
JPH03105621A JP1244587A JP24458789A JPH03105621A JP H03105621 A JPH03105621 A JP H03105621A JP 1244587 A JP1244587 A JP 1244587A JP 24458789 A JP24458789 A JP 24458789A JP H03105621 A JPH03105621 A JP H03105621A
Authority
JP
Japan
Prior art keywords
microprogram
data
branch
address
branch address
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
JP1244587A
Other languages
Japanese (ja)
Inventor
Masahiro Yanagida
昌宏 柳田
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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP1244587A priority Critical patent/JPH03105621A/en
Publication of JPH03105621A publication Critical patent/JPH03105621A/en
Pending legal-status Critical Current

Links

Landscapes

  • Debugging And Monitoring (AREA)

Abstract

PURPOSE:To change the flow of a program by data by using a non-numerical value being a part of the data as a trigger for branching. CONSTITUTION:In non-numerical data 10 with a branch address of a binary floating point expression format, a code part (s) is undefined, an exponential part (e) is set to the maximum exponential value (all '1'), '0' is set to the head as a mantissa (f), and subsequently, a flag is provided, thereafter, the branch address is set. A branch address extracting means 13 extracts a branch address from an operand register 11. A microprogram address counter 14 executes an access to a microprogram store 15, based on the inputted branch address and fetches a microprogram of a branch destination from the corresponding address. In such a way, when a data processing for using numerical data of the binary floating point expression format as an operand is executed by a microprogram, the flow of the program can be changed by the data.

Description

【発明の詳細な説明】 [概要] 指数部と仮数部を含む2進浮動小数点表現形式の数値,
非数値を処理する処理装置に関し、2進浮動小数点表現
形式の数値データをオペランドとするデータ処理をマイ
クロプログラムで実行する際にプログラムの流れをデー
タにより変更できる非数値データの処理方弐を提供する
ことを目的とし、 2進浮動小数点表現形式の指数部を最大指数値とし、仮
数部をOを先頭とするブランチフラグおよびブランチ・
アドレスとで構成した非数値データを設け、オペランド
レジスタに格納された数値の指数部の仮数部の一部を人
力とするブランチ付非数値検出手段と、該ブランチ付非
数値の検出出力により駆動されるとオペランドレジスタ
からブランチ・アドレスを抽出するブランチ・アドレス
抽出手段とを備え、ブランチ・アドレス抽出手段の抽出
した内容をマイクロプログラムアドレスカウンタに設定
することにより、該マイクロプログラムの分岐を行うよ
う構戒する. [産業上の利用分野] 本発明は指数部と仮数部を含む2進浮動小数点表現形式
の数値,非数値を処理する処理装置に関し、特に非数値
データによりマイクロプログラムの分岐を行う処理装置
に関する. 情報処理の技術において、2進浮動小数点演算が普通に
用いられている.その2進浮動小数点演算において取り
扱う数値データを表現する形式には、従来I EEEの
規格により定められた表現形式が広く利用されている. −4、マイクロプログラムの制御において特定のデータ
を処理した時に、別の処理を起動したい場合がある.た
とえば、マイクロプログラムのデバッグにおいてある処
理段階に達した時に特定の処理(ステータスを出力させ
る等)を実行させたい場合があるがそのような処理を簡
単に行うことができなかった. [従来の技術] 第4図は従来のI EEE規格に従う2進浮動小数点形
式を示している.そのa.に示すように、通常の数値と
して表現される2進浮動小数点は、符号部S,指数部e
および仮数部fとからなる.このような浮動小数点の表
現形式のデータには、演算の中で規定された範囲外の数
値が発生した場合は、例外として扱われその数値は非数
値として処理される. 非数値としてI EEE規格化された表現形式はb.に
示された内容である. すなわち、符号部Sは未定議、
指数部eは最大指数値(2進数でオ−ルl)、仮数部『
はOxXX・・X(f≠000,・・O)とする内容で
ある.この場合正規化すると、指数eがオーバーフロー
するようになって、それにより数値としては意味を持た
ない構造となっている. このような2進浮動小数点のデータを使用して計算を実
行している時に、ある処理が終了した時に特定の処理を
実行させようとしても、従来はマイクロプログラムの流
れを外部から変更することはできなかった. 即ち、従来はそのような必要が生じるとマイクロプログ
ラムの命令を追加する必要があった.しかし、マイクロ
プログラムのデバッグの際に、処理の途中である特定の
処理を実行させたいような場合にはマイクロプログラム
の内容を変更することは困難であった. [発明が解決しようとする課1!I] 上記したように、マイクロプログラムによる処理の途中
である処理を終了した時に、特定の処理を起動させるこ
とは困難であるという問題があった. 本発明は2進浮動小数点表現形式の数値データをオペラ
ンドとするデータ処理をマイクロプログラムで実行する
際にプログラムの流れをデータにより変更できる非数値
データの処理方式を提供することを目的とする。
[Detailed Description of the Invention] [Summary] A numerical value in binary floating point representation format including an exponent part and a mantissa part,
To provide a second method for processing non-numeric data that allows the flow of the program to be changed by the data when executing data processing using a microprogram that uses numeric data in a binary floating point representation format as an operand, regarding a processing device that processes non-numeric data. For the purpose of
A branched non-numeric detection means is provided with non-numeric data consisting of an address, and is driven by the detection output of the branched non-numeric detection means that manually generates a part of the mantissa of the exponent part of the numerical value stored in the operand register. and a branch address extraction means for extracting a branch address from the operand register, and sets the content extracted by the branch address extraction means in a microprogram address counter to cause the microprogram to branch. do. [Field of Industrial Application] The present invention relates to a processing device that processes numerical values and non-numeric values in binary floating point representation including an exponent and a mantissa, and particularly relates to a processing device that branches a microprogram based on non-numeric data. Binary floating point operations are commonly used in information processing technology. Conventionally, expression formats defined by IEEE standards have been widely used to express numerical data handled in binary floating-point operations. -4. When controlling a microprogram, you may want to start another process when processing specific data. For example, when debugging a microprogram, there are times when you want to execute a specific process (such as outputting a status) when a certain processing stage is reached, but such a process cannot be easily performed. [Prior Art] Figure 4 shows a binary floating point format according to the conventional IEEE standard. Its a. As shown in , a binary floating point number expressed as a normal number has a sign part S and an exponent part e.
and a mantissa part f. For data in this floating point representation format, if a number outside the specified range occurs during an operation, it will be treated as an exception and the number will be treated as a non-numeric value. The expression format standardized by IEEE as a non-numeric value is b. This is the content shown in . In other words, the code part S is undefined,
The exponent part e is the maximum exponent value (all l in binary), and the mantissa part '
is the content OxXX...X (f≠000,...O). In this case, when normalized, the exponent e overflows, resulting in a structure that has no meaning as a numerical value. When performing calculations using such binary floating point data, even if you wanted to execute a specific process when a certain process was completed, conventionally it was not possible to change the flow of the microprogram from the outside. could not. That is, in the past, when such a need arose, it was necessary to add microprogram instructions. However, when debugging a microprogram, it is difficult to change the contents of the microprogram if you want to execute a specific process midway through the process. [Lesson 1 that the invention attempts to solve! I] As mentioned above, there was a problem in that it was difficult to start a specific process when a certain process was completed in the middle of processing by a microprogram. SUMMARY OF THE INVENTION An object of the present invention is to provide a method for processing non-numeric data that allows the flow of the program to be changed by the data when data processing using numerical data in binary floating point representation format as an operand is executed by a microprogram.

[課題を解決するための手段] 第l図は本発明の原理横戒図である. 第1図において、10は本発明により設けられたブラン
チ・アドレス付非数値データの構成を示し、l1はオペ
ランドレジスタ、l2は非数値フラグ検出手段、13は
ブランチ・アドレス抽出手段、14はマイクロプログラ
ム・アドレスカウンタ、15はマイクロプログラムスト
アを表す.2i!浮動小数点表現形式のブランチ・アド
レス付の非数値データ10は、符号部Sは未定議とし、
指数部eは最大指数値(オールl)とし、次の仮数部r
として、先頭に0を、その後に所定数のビットからなる
フラグを設け、その後にブランチ・アドレスを設定する
tjl戒をとる. 本発明は、浮動小数点の非数値のデータとしてブランチ
(分岐)アドレスを保持することを表す構成を設け、そ
のような構成を備える非数値デー夕を検出すると、その
データ中のブランチ・アドレスの部分を抽出し、そのブ
ランチ・アドレスを用いてマイクロプログラムストアか
ら対応するプログラムを取り出してブランチの処理を行
うものである. [作用] 演算やデータの処理において、浮動小数点の表現形式の
オペランドがオペランドレジスタ1lに格納されると、
非数値フラグ検出手段12において検出動作が行われ、
格納された数値の指数部および仮数部の一部が特定の構
成を備えるブランチ・アドレス付の非数値データである
かどうかを検出する.通常の2進浮動小数点の数値であ
ればそのまま演算等の処理が行われるが、非数値であり
かつ仮数部のフラグによりブランチ・アドレス付の非数
値データであることを検出すると、ブランチ・アドレス
抽出手段13を駆動する.ブランチ・アドレス抽出手段
13はオペランドレジスタ11から、所定位置に格納さ
れたプランチ・アドレスを抽出して、マイクロプログラ
ム・アドレスカウンタ14に供給する.マイクロプログ
ラム・アドレスカウンタ14は入力されたブランチ・ア
ドレスに基づいてマイクロプログラムストア15にアク
セスして対応するアドレスから分岐先のマイクロプログ
ラムを取り出してそのプログラムに従って処理が実行さ
れる. このように、2進浮動小数点のデータ中にブランチ・ア
ドレス付の非数値データをメモリに用意しておくことに
より、特定のデータを処理した時に必要とする処理をブ
ランチ・アドレスに実行させることができる. [実施例] 第2図は実施例の構成図である. 第2図のB.に示す20は本発明による2進浮動小数点
表現形式の非数値データの具体例の構戒を示す.また、
第2図のA.において、2lはオペランドレジスタ、2
2は非数値検出回路、23はフラグ識別回路、24はブ
ランチ・アドレス抽出回路、25はマイクロプログラム
・アドレスカウンタ、26はマイクロプログラムストア
、27はデコーダを表す. 非数値データ20は、最初の第Oビットの符号部は未定
3!it(何でもよい)、次の第1ビット乃至第8ビッ
トの指数部は“l”が8ビット設けられ、その後の仮数
部に含まれる第9ビット乃至第11ビットにフラグとし
て、rool」を設定し、これに続く第12ビット乃至
第3lビットには、ブランチ・アドレスとして、rAA
AA・・・A」が設定される. 図示されないメモリからオペランドがオペランドレジス
タ21にセットされる.セットされた数値が通常の2進
浮動小数点形式の数値であれば演算に使用されるが、オ
ペランドレジスタ21の内容について非数値検出回路2
2では、2進浮動小数点形式のデータの中から20の構
戒を持つ非数値データを検出する. この場合、指数部(第1乃至第8ビット)がオール“1
”で指数部の先wi(第9ビット)が“0”であるか、
否かを検出し、もしその条件を満たしていると非数値で
あるとして例外が発生して、次のフラグ識別回路23が
起動される.フラグ識別回路23は、仮数部の先頭を含
む3ビ・ノト(第9ビット乃至第11ビット)がr00
1Jであるか否かを判別し、roo1」と識別されると
ブランチ・アドレス抽出回路24を起動する.「001
」でない場合は通常の非数値であるものとして対応する
処理が実行される. ブランチ・アドレス抽出回路24は起動すると、オペラ
ンドレジスタ2lの第12ビットから第31ビットに格
納されたブランチ・アドレスを抽出して、マイクロプロ
グラム・アドレスカウンタ25に出力する.マイクロプ
ログラム・アドレスカウンタ25は入力されたブランチ
・アドレスがセットされると、そのアドレスによりマイ
クロプログラムストア26を読み出す。マイクロプログ
ラムストア26から出力されたマイクロプログラムは従
来と同様にデコーダによりデコードされ対応する制御を
実行する.マイクロプログラム・アドレスカウンタ25
は所定の周期でカウントアップして分岐処理が実行され
る. 第3図は本発明による処理例である. メモリ30に処理されるデータ31.32・・・が格納
され、テストIとしてデータ31を用いる処理(演算等
)が行われて、本発明によるブランチ・アドレス付の非
数値データ32に達すると、第2図の実施例の構成によ
りブランチ・アドレスが抽出されてマイクロプログラム
がブランチ・アドレスに分岐する.すると、そのマイク
ロプログラムにより例えば、それまでに得られた演算結
果のデータを出力したり、ステータスのダンブを取るな
どの処理を実行させる.その分岐処理を実行[発明の効
果] 本発明によれば、データの一部である非数値を分岐のト
リガとして用いることができる.これにより、ある処理
の起動を伴うデータを定義できるため、特定のデータを
処理した場合にステータスのダンプをとったり、データ
の処理過程を把握する等、マイクロプログラムのデバッ
グの効率化を実現することができる.また、この処理は
ブランチ・アドレス付非数値を検出した場合にだけ行わ
れるので通常の処理には影響を与えない.
[Means for solving the problem] Figure 1 is a horizontal diagram of the principle of the present invention. In FIG. 1, 10 shows the structure of non-numeric data with a branch address provided according to the present invention, l1 is an operand register, l2 is a non-numeric flag detection means, 13 is a branch address extraction means, and 14 is a microprogram.・Address counter 15 represents the microprogram store. 2i! In the non-numeric data 10 with a branch address in floating point representation format, the sign part S is undefined,
The exponent part e is the maximum exponent value (all l), and the next mantissa part r
As such, we set a flag consisting of a 0 at the beginning, a predetermined number of bits after that, and then set a branch address. The present invention provides a configuration that represents holding a branch address as floating point non-numeric data, and when non-numeric data with such a configuration is detected, the branch address part in the data is The program extracts the branch address, retrieves the corresponding program from the microprogram store, and processes the branch. [Operation] In calculations and data processing, when an operand in floating point representation format is stored in the operand register 1l,
A detection operation is performed in the non-numeric flag detection means 12,
Detects whether part of the exponent and mantissa parts of a stored number is non-numeric data with a branch address with a specific configuration. If it is a normal binary floating point number, calculations and other processing will be performed as it is, but if it is detected as non-numeric data with a branch address attached by the flag in the mantissa, the branch address will be extracted. Drive means 13. A branch address extraction means 13 extracts a branch address stored in a predetermined position from the operand register 11 and supplies it to the microprogram address counter 14. The microprogram address counter 14 accesses the microprogram store 15 based on the input branch address, retrieves the branch destination microprogram from the corresponding address, and executes processing according to that program. In this way, by preparing non-numeric data with a branch address in memory in binary floating point data, it is possible to have the branch address execute the necessary processing when processing specific data. can. [Example] Figure 2 is a configuration diagram of an example. B in Figure 2. 20 shows a concrete example of non-numeric data in binary floating point representation format according to the present invention. Also,
A in Figure 2. , 2l is the operand register, 2
2 represents a non-numeric value detection circuit, 23 represents a flag identification circuit, 24 represents a branch address extraction circuit, 25 represents a microprogram address counter, 26 represents a microprogram store, and 27 represents a decoder. In the non-numeric data 20, the sign part of the first O-th bit is undetermined 3! it (anything is fine), 8 bits of "l" are set for the exponent part of the next 1st bit to 8th bit, and "rool" is set as a flag to the 9th bit to 11th bit included in the subsequent mantissa part. The following 12th to 3rd bits contain rAA as a branch address.
AA...A" is set. An operand is set in the operand register 21 from a memory (not shown). If the set value is a value in normal binary floating point format, it is used for calculations, but the non-number detection circuit 2
In step 2, non-numeric data with 20 prerequisites is detected from data in binary floating point format. In this case, the exponent part (1st to 8th bits) are all “1”
”, the tip wi (9th bit) of the exponent part is “0” or
If the condition is satisfied, an exception is generated as it is a non-numeric value, and the next flag identification circuit 23 is activated. The flag identification circuit 23 determines that the 3-bit note (9th bit to 11th bit) including the beginning of the mantissa is r00.
1J, and if it is identified as "roo1", the branch address extraction circuit 24 is activated. “001
”, the corresponding processing is performed as if it were a normal non-numeric value. When activated, the branch address extraction circuit 24 extracts the branch address stored in the 12th to 31st bits of the operand register 2l and outputs it to the microprogram address counter 25. When the input branch address is set, the microprogram address counter 25 reads out the microprogram store 26 using that address. The microprogram output from the microprogram store 26 is decoded by a decoder in the same manner as before, and the corresponding control is executed. Microprogram address counter 25
is counted up at a predetermined period and branch processing is executed. Figure 3 shows an example of processing according to the present invention. Data 31, 32, etc. to be processed are stored in the memory 30, processing (operation, etc.) using the data 31 as test I is performed, and when non-numeric data 32 with a branch address according to the present invention is reached, With the configuration of the embodiment shown in FIG. 2, a branch address is extracted and the microprogram branches to the branch address. Then, the microprogram executes processing such as outputting the data of the calculation results obtained so far or taking a dump of the status. Execute the branching process [Effects of the Invention] According to the present invention, a non-numeric value that is part of data can be used as a trigger for branching. This allows you to define data that involves the activation of a certain process, making it possible to debug microprograms more efficiently by taking a status dump when specific data is processed, understanding the data processing process, etc. can. Also, this processing is performed only when a non-numeric value with a branch address is detected, so it does not affect normal processing.

【図面の簡単な説明】[Brief explanation of drawings]

第l図は本発明の原理構或図、第2図は実施例の構成図
、第3図は本発明の処理例、第4図は従来の2進浮動小
数点の表現形式を表す図である.第l図中、 10:ブランチ・アドレス付非数値データの構成 11:オベランドレジスタ l2:非数値フラグ検出手段 13:ブランチ・アドレス抽出手段 l4:マイクロプログラム・アドレスカウンタl5:マ
イクロプログラムストア 不→茫輝lの斉1里渭い八図 1 口 男 2圓
Fig. 1 is a diagram showing the principle structure of the present invention, Fig. 2 is a block diagram of an embodiment, Fig. 3 is a processing example of the present invention, and Fig. 4 is a diagram showing the conventional binary floating point representation format. .. In Fig. 1, 10: Structure of non-numeric data with branch address 11: Oberand register 12: Non-numeric flag detection means 13: Branch address extraction means 14: Microprogram address counter 15: Microprogram store not → 茫Kiri no Qi 1 Ri Wai Ii 8 Diagram 1 Kuchio 2 En

Claims (1)

【特許請求の範囲】 指数部と仮数部を含む2進浮動小数点表現形式の数値、
非数値を処理する処理装置において、前記2進浮動小数
点表現形式の指数部を最大指数値とし、仮数部を0を先
頭とするブランチフラグおよびブランチ・アドレスとで
構成した非数値データを設け、 オペランドレジスタ(11)に格納された数値の指数部
の仮数部の一部を入力とするブランチ付非数値検出手段
(12)と、該ブランチ付非数値の検出出力により駆動
されるとオペランドレジスタからブランチ・アドレスを
抽出するブランチ・アドレス抽出手段(13)とを備え
、 該ブランチ・アドレス抽出手段(13)の抽出した内容
をマイクロプログラムアドレスカウンタ(14)に設定
することにより、該マイクロプログラムの分岐を行うこ
とを特徴とする非数値処理方式。
[Claims] A numerical value in binary floating point representation format including an exponent part and a mantissa part,
In a processing device that processes non-numeric values, non-numeric data is provided, the exponent part of the binary floating point representation format being the maximum exponent value, and the mantissa part consisting of a branch flag and a branch address with 0 at the beginning, and the operand A branched non-numeric value detecting means (12) receives as input a part of the mantissa of the exponent part of the numerical value stored in the register (11), and when driven by the detection output of the branched non-numeric value, a branch is detected from the operand register.・A branch address extracting means (13) for extracting an address is provided, and the content extracted by the branch address extracting means (13) is set in a microprogram address counter (14), thereby causing a branch of the microprogram. A non-numerical processing method characterized by
JP1244587A 1989-09-20 1989-09-20 Non-numerical processing system Pending JPH03105621A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP1244587A JPH03105621A (en) 1989-09-20 1989-09-20 Non-numerical processing system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP1244587A JPH03105621A (en) 1989-09-20 1989-09-20 Non-numerical processing system

Publications (1)

Publication Number Publication Date
JPH03105621A true JPH03105621A (en) 1991-05-02

Family

ID=17120941

Family Applications (1)

Application Number Title Priority Date Filing Date
JP1244587A Pending JPH03105621A (en) 1989-09-20 1989-09-20 Non-numerical processing system

Country Status (1)

Country Link
JP (1) JPH03105621A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111582379A (en) * 2020-05-09 2020-08-25 深圳市秉睦科技有限公司 Intelligent layering method and system for rock and soil layers based on clustering algorithm

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111582379A (en) * 2020-05-09 2020-08-25 深圳市秉睦科技有限公司 Intelligent layering method and system for rock and soil layers based on clustering algorithm

Similar Documents

Publication Publication Date Title
KR840001350A (en) Data processing device with indeterminate command
JPH0792739B2 (en) Floating point data normalization method
EP2243074B1 (en) Processor and method of determining a normalization count
JPS62226232A (en) Control system for branch instruction
JPH0795278B2 (en) Processing device interrupt control method
JPS6212529B2 (en)
JPH03105621A (en) Non-numerical processing system
US4649478A (en) Operation code selected overflow interrupts
JP2525492B2 (en) Programmable controller
JP2510691B2 (en) Arithmetic processing method
JPS578851A (en) Parallel processing system
JPS61500990A (en) Floating-point conditional code generation method
CN111209039B (en) Instruction processing method and device
JPS58205253A (en) Arithmetic device
JPS56147246A (en) Program control device
JPH064331A (en) Decimal check circuit
JP3137636B2 (en) Data processing device
JPH0233173B2 (en)
JPH0667896A (en) Single chip microcomputer
JPS62152007A (en) Numerical controller for high-speed working
JPH0944355A (en) Programmable controller
JPH11288306A (en) Operating system for programmable controller
JPH06337785A (en) Information processor and its instruction execution control method
JPH02148140A (en) Conditional branch control system for information processor
JPH01195532A (en) Microprocessor