JPS60173633A - Arithmetic processing unit - Google Patents

Arithmetic processing unit

Info

Publication number
JPS60173633A
JPS60173633A JP59028690A JP2869084A JPS60173633A JP S60173633 A JPS60173633 A JP S60173633A JP 59028690 A JP59028690 A JP 59028690A JP 2869084 A JP2869084 A JP 2869084A JP S60173633 A JPS60173633 A JP S60173633A
Authority
JP
Japan
Prior art keywords
register
address
value
instruction
ccr3
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
JP59028690A
Other languages
Japanese (ja)
Inventor
Noboru Tamura
昇 田村
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.)
Canon Inc
Original Assignee
Canon Inc
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 Canon Inc filed Critical Canon Inc
Priority to JP59028690A priority Critical patent/JPS60173633A/en
Publication of JPS60173633A publication Critical patent/JPS60173633A/en
Pending legal-status Critical Current

Links

Landscapes

  • Executing Machine-Instructions (AREA)

Abstract

PURPOSE:To decrease program step numbers by operating a storage means storing the state of result of operation of information in the same way as in a general-purpose register. CONSTITUTION:It is considered that an instruction setting a content of an address L+1 ([5] is stored in an address L+1) exists in a condition code register CCR3 of an address L and an instruction adding a value of a register A in a general-purpose register group and a value of the CCR3 and storing the result to the register A exists in an address L+2. The value of a memory data register 9 to which the content of the address L is outputted on an internal bus and the value is set to the CCR3 succeedingly. Then the content L+2 of a program counter 5 is set to a memory address register 8 succeedingly, the corresponding instruction is set to the memory data register 9 and then an instruction register 6 and analyzed by a decoder 7. Then the values of the register A and the CCR3 in the general-purpose register group are added by an arithmetic logical operating device 2.

Description

【発明の詳細な説明】 [技術分野] 本発明は情報の操作結果の状態を保持する保持手段への
プログラムによる読み出し及び書き込みを可能とした演
算処理装置に関するものである。
DETAILED DESCRIPTION OF THE INVENTION [Technical Field] The present invention relates to an arithmetic processing device that enables reading and writing by a program to a holding means that holds the state of the operation result of information.

[従来技術] 従来の演算処理装置(以下CPUと称す)では情報の操
作結果の状態を保持する例えば条件コードレジスタ(以
下CCRと称す)等に対しては他の演算レジスタやプロ
グラムカウンタ等の通常のレジスタの様にプログラムに
よるリード轡ライトが可能でなく、各CPU固有の制約
の多いリード中ライト手段を有しているのみである。
[Prior Art] In a conventional arithmetic processing unit (hereinafter referred to as CPU), for example, a condition code register (hereinafter referred to as CCR), which holds the state of information operation results, other arithmetic registers, program counters, etc. Unlike the registers, it is not possible to read and write by a program, and it only has a write-during-read means that has many restrictions unique to each CPU.

状態の種類としては操作結果の正、負、ゼロ、あふれ、
桁上げの発生などが共通のもので、他にそのCPU固有
のものが加わることがあるが、それらは各操作結果に従
って自動的に書き替えられるのみであり、それらのクリ
アも各々単独でのクリアしかできなかった。
Types of status include positive, negative, zero, overflow, and
Occurrences of carries are common, and other CPU-specific factors may be added, but these are only automatically rewritten according to the results of each operation, and they must be cleared individually. That's all I could do.

[目的] 本発明は上述の点に鑑みなされたものでその目的とする
所は、情報の操作結果の状態を保持する保持手段に対し
てプログラム命令により読み出し、また任意の情報を書
き込める演算処理装置を提供することにある6 [実施例コ 以下図面を参照して本発明の一実施例を詳細に説明する
[Objective] The present invention has been made in view of the above-mentioned points, and its object is to provide an arithmetic processing device that can read and write arbitrary information to a holding means that holds the state of information operation results using a program instruction. [Embodiment] An embodiment of the present invention will be described in detail below with reference to the drawings.

図は本発明の一実施例演算処理装置の機能ブロック図で
あり、図中、1は汎用(演算)レジスタ、2は算術論理
演算器、3は条件コードレジスタ(OCR)、4は制御
回路、5は命令の記憶位置を記憶するプログラムカウン
タ、6は命令レジスタ、7は命令レジスタ6の命令の解
析を行なう命令デコーダ、8はメモリアドレスレジスフ
、9はメモリデータレジスタ、10は内部バスである。
The figure is a functional block diagram of an arithmetic processing device according to an embodiment of the present invention, in which 1 is a general-purpose (arithmetic) register, 2 is an arithmetic logic unit, 3 is a condition code register (OCR), 4 is a control circuit, 5 is a program counter that stores the storage location of instructions; 6 is an instruction register; 7 is an instruction decoder that analyzes instructions in the instruction register 6; 8 is a memory address register; 9 is a memory data register; 10 is an internal bus. .

また13はメモリ制御回路、14はメモリである。Further, 13 is a memory control circuit, and 14 is a memory.

以下、図に示す演算処理装置の情報の加工操作過程を説
明する。
The information processing process of the arithmetic processing device shown in the figure will be explained below.

演算処理装置は情報の内容によって異なる操作を実行し
なければならず、このため一つの命令操作による結果を
記憶しておいて、後にその結果によって次に実行する命
令を変更する場合も発生する。このため情報の操作結果
(算術論理演算器2での演算の結果等)の状態を保持す
るためにCCR3がある。従来このCC,R3はその内
容の読み出しは可能なものが多かったが、内容の書き替
えは非常に制約があり例えば一つの命令でCCR3の1
ビツトのみのON10 F Fか可能なだけであった。
An arithmetic processing unit must execute different operations depending on the content of information, and therefore there are cases where the result of one command operation is stored and the next command to be executed is later changed based on that result. Therefore, the CCR 3 is provided to hold the state of information operation results (such as the results of operations in the arithmetic and logic unit 2). Conventionally, it was possible to read the contents of many CCs and R3s, but there were very restrictions on rewriting the contents.
Only bit-only ON10FF was possible.

しかし未実施例では0CR3と内部バスlOが接続され
ており、制御回路4の制御で読み出し/書き込みが通常
の汎用レジスタ群1と全く同様に可能となっている。ま
た情報の操作結果は同じ<CCR3に自動的に保持され
る。
However, in the non-embodiment, the 0CR3 and the internal bus 1O are connected, and reading/writing can be performed under the control of the control circuit 4 in exactly the same way as in the normal general-purpose register group 1. Also, the information operation result is automatically held in the same <CCR3.

本実施例装置6.を以下に示す命令を実行する場合に動
作を例に詳細に説明する。
Device of this embodiment 6. The operation will be explained in detail by taking as an example the operation when executing the command shown below.

L MOVI CCR,5 L+2 ADD AR,OCR ここで“L“’、”L+2°゛は命令の記憶されている
メモリ14のアドレスを示し、“L′′番地にCCR3
に“”L+1”番地の内容(この場合はL+1番地には
“°5°″が格納されている)をセットする旨の命令が
、“’L+2”番地には汎用レジスタ群l中のA−レジ
スタの値とCCR3の値とを加算し、結果をA−レジス
タに格納する命令を示している。
L MOVI CCR, 5 L+2 ADD AR, OCR Here, "L", "L+2°" indicates the address of the memory 14 where the instruction is stored, and the CCR3 at address "L''
An instruction to set the contents of address "'L+1" (in this case, "°5°" is stored at address L+1) is sent to address "'L+2", and a This shows an instruction to add the value of the register and the value of CCR3 and store the result in the A-register.

プログラムが順次実行されプログラムカウンタ5の値が
“L“となると、まずメモリ12の“L”番地より命令
を読み出すべくプログラムカウンタ5の値、即ち°“L
”′をメモリアト1/スレジスタ8にセットし、この値
をメモリ制御回路13に与えると共に、制御回路4よリ
メモリ制御回路13に記憶データの読み出しを指示し、
L”番地の内容が読み出されるとこの値をメモリデータ
レジスタ9にセットする。そしてプログラムカウンタ5
の値を+1する。これによりプログラムカウンタの値は
°’L+1’″となる。
When the programs are executed sequentially and the value of the program counter 5 becomes "L", first the value of the program counter 5 is changed to "L" in order to read the instruction from the "L" address of the memory 12.
"' is set in the memorization register 8, this value is given to the memory control circuit 13, and the control circuit 4 instructs the memory control circuit 13 to read the stored data,
When the contents of address L” are read, this value is set in the memory data register 9. Then, the program counter 5
Increase the value by +1. As a result, the value of the program counter becomes °'L+1'''.

メモリデータレジスタに読み出された命令は直ちに命令
レジスタ6にセットされ、命令デコーダ7により解析さ
れる。ここでは続く“L + ’l°”番地の内容を0
CR3に転送する命令であるので、プログラムカウンタ
5の値(L+ 1)をメモリアドレスレジスタ8にセッ
トし、制御回路4のメモリ読み出し要求に従い゛L+1
°′番地に格納されている値即ち5′′がメモリデータ
レジスタ9にセットされる。そしてプログラムカウンタ
の値は+1され’ L +2 ”となる。
The instruction read into the memory data register is immediately set in the instruction register 6 and analyzed by the instruction decoder 7. Here, the contents of the following address "L + 'l°" are set to 0.
Since this is an instruction to be transferred to CR3, the value (L+1) of the program counter 5 is set in the memory address register 8, and in accordance with the memory read request from the control circuit 4, the value (L+1) is
The value stored at address °', ie, 5'' is set in the memory data register 9. The value of the program counter is then incremented by 1 and becomes 'L+2'.

これでこの命令に対する処理の前準備が全て完了したこ
とになり、メモリデータレジスタ9の値を内部パス10
上に出力し、続いてこの何をCCR3にセットする。こ
れら一連の制御は制御回路4よりの制御信号it(破線
で示すつによって行なわれる。この処理は単なる情報の
転送処理であり、操作結果の状態の変移はなく条件コー
ドの変化はない。つまりCCR3の内容は“5′′のま
まである。続いてプログラムカウンタ5の内容“L+2
′がメモリアドレスレジスタ8にセラi・され対応する
命令がメモリデータレジスタ9にセットされ、プログラ
ムカウンタ5の値が+1される。
This means that all pre-processing preparations for this instruction have been completed, and the value of memory data register 9 is transferred to internal path 10.
Then, set this to CCR3. These series of controls are performed by the control signal it (indicated by the broken line) from the control circuit 4. This process is simply a transfer process of information, and there is no change in the state of the operation result and no change in the condition code. In other words, CCR3 The content of the program counter 5 remains “5''.Then the content of the program counter 5 is “L+2”.
' is set in the memory address register 8, the corresponding instruction is set in the memory data register 9, and the value of the program counter 5 is incremented by 1.

そしてこのメモリデータレジスタの値が命令レジスタ6
にセットされ、命令デコーダ7で解析される。ここでは
A−レジスタとCCR3の値の加算であるので汎用レジ
スフ群l内のA−レジスタの値が算術論理演算器2の一
方に、同時にCCR3の値が内部バス10を介して算術
論理演算器2の他方にそれぞれ与えられ、両方の値が加
算され、加算結果が内部バス10を介して汎用レジスタ
群1のA−レジスタにセットされる。このレジスタの値
の読み出し制御及び算術論理演算器2の加算起動及び結
果のA−レジスタへのセットの為の制御は命令デコーダ
7の解析結果に基づく制御回路4よりの制御信号により
実行される。
The value of this memory data register is the command register 6.
is set and analyzed by the instruction decoder 7. Since the values of the A-register and CCR3 are added here, the value of the A-register in the general-purpose register group l is sent to one side of the arithmetic and logic unit 2, and at the same time, the value of CCR3 is sent to one side of the arithmetic and logic unit 2 via the internal bus 10. 2, both values are added, and the addition result is set in the A-register of general-purpose register group 1 via internal bus 10. The control for reading the value of this register, the activation of addition by the arithmetic and logic unit 2, and the control for setting the result in the A-register are executed by a control signal from the control circuit 4 based on the analysis result of the instruction decoder 7.

また、この命令の実行により発生された結果の状態、例
えば演算結果の■、負、ゼロ、あふれ、桁上げの状態が
OCR,3にセットされる。これは破線の12で示され
る。
Further, the state of the result generated by the execution of this instruction, for example, the state of the operation result (■, negative, zero, overflow, carry) is set in OCR,3. This is indicated by the dashed line 12.

以上説明した様に最終的にはCCR3は演算結果の状態
がセットされるが、その間は一つの汎用レジスタ群と全
く同様の扱いを取ることができる。
As explained above, the state of the operation result is finally set in CCR3, but during that time it can be treated exactly the same as one general-purpose register group.

また、L ”番地よりの命令では0CR3に5′′をセ
ットしたか0′′をセットすることにヨlJこの0CR
3を一つの命令でリセットすることができる。
Also, for the instruction from address L, it is important to set 0CR3 to 5'' or to set 0'' to this 0CR3.
3 can be reset with one command.

これは演算処理等の初期設定の場合に正、負のフラグビ
ット、ゼロのフラグビット、あふれ、桁上げのフラグビ
ット等を独自に(つまり3回に分けて)リセットしなけ
ればならない場合に比して大幅な簡略化が達成できるこ
とになる。
This is compared to the case where positive and negative flag bits, zero flag bits, overflow and carry flag bits, etc. must be reset independently (in other words, in three separate steps) during initial settings for arithmetic processing, etc. As a result, significant simplification can be achieved.

[効果] 以上説明した様に本発明によれば、情報の操作結果の状
態を保持する保持手段を汎用レジスタと同様に操作する
ことが口f能となり、汎用レジスタが1つ増加したこと
により、限られたレジスタをやりくりしなければならな
い小型演算処理装置でのプログラムステップの減少が計
れ、また処理を高速化することになる。
[Effects] As explained above, according to the present invention, it becomes easy to operate the holding means that holds the state of the operation result of information in the same way as a general-purpose register, and by increasing the number of general-purpose registers by one, This reduces the number of program steps in a small arithmetic processing unit that must manage limited registers, and speeds up processing.

また、任意の値をセットすることができるため、演算処
理実行前の初期設定等も一つの命令で可能となり、プロ
グラミングのOtI略化、効率化か計れた演算処理装置
が実現した。
Furthermore, since any value can be set, initial settings before execution of arithmetic processing can be performed with a single command, and an arithmetic processing device that can simplify programming and improve efficiency has been realized.

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

図は本発明の一実施例演算処理装置の機能ブロック図で
ある。 図中、l・・・汎用レジスタ群、2・・・算術論理演算
器、3・・・CCR14・・・制御回路、5・・・プロ
グラムカウンタ、6・・・命令レジスタ、7・・・命令
デコーダ、8・・・メモリアドレスレジスタ、9・・・
メモリデータレジスタ、13・・・メモリ制御回路、1
4・・・メモリである。
The figure is a functional block diagram of an arithmetic processing device according to an embodiment of the present invention. In the figure, l...General purpose register group, 2...Arithmetic logic unit, 3...CCR14...Control circuit, 5...Program counter, 6...Instruction register, 7...Instruction Decoder, 8...Memory address register, 9...
Memory data register, 13...Memory control circuit, 1
4...Memory.

Claims (1)

【特許請求の範囲】[Claims] 情報を操作してその結果を生成する手段よりの操作結果
の入力系と、該入力系とは別のデータの転送パスよりの
入力系とを備えた保持手段をイ1する演算処理装置であ
って、プログラム命令により前記データの転送パスより
のデータを独立して前記保持手段に入力又は前記データ
の転送7<スに出力可能であることを特徴とする演算処
理装置。
An arithmetic processing device comprising: a holding means comprising an input system for the operation results from means for manipulating information and generating the results; and an input system from a data transfer path different from the input system. An arithmetic processing device characterized in that data from the data transfer path can be independently input to the holding means or output to the data transfer path according to a program instruction.
JP59028690A 1984-02-20 1984-02-20 Arithmetic processing unit Pending JPS60173633A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP59028690A JPS60173633A (en) 1984-02-20 1984-02-20 Arithmetic processing unit

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP59028690A JPS60173633A (en) 1984-02-20 1984-02-20 Arithmetic processing unit

Publications (1)

Publication Number Publication Date
JPS60173633A true JPS60173633A (en) 1985-09-07

Family

ID=12255476

Family Applications (1)

Application Number Title Priority Date Filing Date
JP59028690A Pending JPS60173633A (en) 1984-02-20 1984-02-20 Arithmetic processing unit

Country Status (1)

Country Link
JP (1) JPS60173633A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007297982A (en) * 2006-04-28 2007-11-15 Honda Motor Co Ltd Internal combustion engine provided with stay supporting turbocharger

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007297982A (en) * 2006-04-28 2007-11-15 Honda Motor Co Ltd Internal combustion engine provided with stay supporting turbocharger

Similar Documents

Publication Publication Date Title
JPS60173633A (en) Arithmetic processing unit
JP3211423B2 (en) Branch instruction execution method and branch instruction execution device
JPS61184643A (en) Starting control system for virtual computer
JPS6242301B2 (en)
KR100246465B1 (en) Apparatus and method for reducing cycle of microprocessor stack order
JP2000029508A (en) Programmable controller
JPS5999552A (en) Microcomputer
JPS62196745A (en) Register writing system
JPH01196639A (en) Information processor
JPS5872251A (en) Data processing system
JPS62212745A (en) Data processor having buffer memory
JPH03204744A (en) Address converting mechanism
JPS58225440A (en) Memory controller
JPS6345652A (en) Invalidation processing system for information processor
JPH0581017A (en) Program processor
JPS62210539A (en) Electronic computer device
JPH04242871A (en) Write module for data flow calculator
JPS62139039A (en) Unification processor
JPS60112140A (en) Access system of stack
JPS6028014B2 (en) microprocessor
JPS6212545B2 (en)
JPS60218146A (en) Storage device address control system
JPH0667982A (en) Address conversion system
JPH04262449A (en) Data transfer system
JPS61241836A (en) Storage device