JPH117385A - Operation processor - Google Patents

Operation processor

Info

Publication number
JPH117385A
JPH117385A JP15989597A JP15989597A JPH117385A JP H117385 A JPH117385 A JP H117385A JP 15989597 A JP15989597 A JP 15989597A JP 15989597 A JP15989597 A JP 15989597A JP H117385 A JPH117385 A JP H117385A
Authority
JP
Japan
Prior art keywords
microcode
instruction
memory
block
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
JP15989597A
Other languages
Japanese (ja)
Inventor
Sekiya Natsui
関弥 夏井
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.)
Koyo Electronics Industries Co Ltd
Original Assignee
Koyo Electronics Industries 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 Koyo Electronics Industries Co Ltd filed Critical Koyo Electronics Industries Co Ltd
Priority to JP15989597A priority Critical patent/JPH117385A/en
Publication of JPH117385A publication Critical patent/JPH117385A/en
Pending legal-status Critical Current

Links

Landscapes

  • Advance Control (AREA)
  • Executing Machine-Instructions (AREA)
  • Programmable Controllers (AREA)

Abstract

PROBLEM TO BE SOLVED: To reduce capacity of memory in which microcode is stored. SOLUTION: An operation processor is provided with an NM memory 42 in which the microcode is stored, an instruction execution block 17 to read a macro code and to execute the instruction based on the microcode and an operation circuit block 18 to perform a specified operation processing according to an instruction of the instruction execution block 17 and when the specified operation processing is performed by the operation circuit block 18, an MM address when the microcode is read is locked until the operation processing is completed.

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【発明の属する技術分野】本発明は演算処理装置、特に
そのマイクロコードが格納される記憶装置の小容量化に
関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to an arithmetic processing unit, and more particularly, to a reduction in the capacity of a storage device storing its microcode.

【0002】[0002]

【従来の技術】従来、例えばプログラマブルコントロー
ラ(以下PCという)に用いられている演算処理装置に
おいては、1サイクル(0.05μS)の動作を記述す
るために4バイトのマイクロコードを使用するものがあ
る。このようなPCの場合には、例えば実行時間が2.
35μSかかる乗算命令の実行に188バイト必要であ
った。
2. Description of the Related Art Conventionally, for example, an arithmetic processing unit used in a programmable controller (hereinafter referred to as a PC) uses a 4-byte microcode to describe an operation of one cycle (0.05 μS). is there. In the case of such a PC, for example, the execution time is 2.
It took 188 bytes to execute the multiply instruction, which took 35 μS.

【0003】図6は従来の乗算処理をするときのマイク
ロコードの内容を示す説明図である。図示のように、4
7サイクル必要とするが、サイクル6〜サイクル41の
間は命令実行ブロック(図1参照)は実質的に非実行状
態になっており、演算回路ブロック(図1参照)が専ら
その演算処理を行っている。
FIG. 6 is an explanatory diagram showing the contents of a microcode when performing a conventional multiplication process. As shown, 4
Although seven cycles are required, the instruction execution block (see FIG. 1) is substantially in an unexecuted state during the cycles 6 to 41, and the arithmetic circuit block (see FIG. 1) exclusively performs its arithmetic processing. ing.

【0004】[0004]

【発明が解決しようとする課題】上述のように乗算命令
の実行に際して188バイト(47サイクル×4)のマ
イクロコードを必要とするが、マイクロコードを格納す
るメモリには必然的にその容量に制約があることから、
マイクロコードを格納する際にメモリの容量を節約する
ことが望まれていた。
As described above, the execution of a multiplication instruction requires 188 bytes (47 cycles.times.4) of microcode, but the memory for storing the microcode is necessarily limited in its capacity. Because there is
It has been desired to save memory capacity when storing microcode.

【0005】本発明は、このような状況に鑑みてなされ
たものであり、マイクロコードが格納されるメモリの小
容量化を可能にした演算処理装置を提供することを目的
とする。
[0005] The present invention has been made in view of such circumstances, and has as its object to provide an arithmetic processing device capable of reducing the capacity of a memory for storing microcode.

【0006】[0006]

【課題を解決するための手段】本発明に係る演算処理装
置は、マイクロコードが格納されるメモリと、マイクロ
コードを読み出してそのマイクロコードに基づいて命令
を実行する命令実行手段と、命令実行手段の指令に従っ
て所定の演算処理をする演算回路とを備え、演算回路に
所定の演算処理をさせるとき、演算を処理が終了するま
での間、マイクロコードを読み出す際のアドレスをロッ
クする。
An arithmetic processing unit according to the present invention comprises: a memory in which microcode is stored; an instruction execution means for reading out microcode and executing an instruction based on the microcode; and an instruction execution means. And an arithmetic circuit for performing a predetermined arithmetic processing in accordance with the instruction. When the arithmetic circuit performs the predetermined arithmetic processing, the address for reading the microcode is locked until the arithmetic processing is completed.

【0007】[0007]

【発明の実施の形態】図1は本発明の一実施形態に係る
演算処理装置のゲートアレイの構成を示すブロック図で
ある。図1において、10はゲートアレイ、11〜19
はそれぞれこのゲートアレイ10に含まれる機能ブロッ
クである。11はCPUインターフェースブロックであ
り、これはゲートアレイ10と外部CPU31,32と
のインターフェースを行うものである。12はトラップ
回路ブロックであり、これはUM(ユーザメモリ)アド
レスに対するトラップを行う。13はUMメモリインタ
ーフェースブロックであり、これはUMメモリ41とユ
ーザープログラムのやり取りを行う。14はMMメモリ
インターフェースブロックであり、これはMMメモリ4
2とマイクロロードのやり取りを行う。15はVMメモ
リインターフェースブロックであり、これはVMメモリ
43とステータスやデータのやり取りを行う。16は命
令デコードブロックであり、これは命令語の解析を行
い、その解析結果に対応したマイクロコードのアドレス
を生成する。17は命令実行ブロックであり、これはマ
イクロコードに基づいて命令を実行する。18は演算回
路ブロックであり、これは演算処理を行う。19はコン
トロールブロックであり、これはゲートアレイ10の全
体を制御するものである。
FIG. 1 is a block diagram showing a configuration of a gate array of an arithmetic processing unit according to one embodiment of the present invention. In FIG. 1, reference numeral 10 denotes a gate array, 11 to 19
Are functional blocks included in the gate array 10, respectively. Reference numeral 11 denotes a CPU interface block, which performs an interface between the gate array 10 and the external CPUs 31 and 32. Reference numeral 12 denotes a trap circuit block, which traps a UM (user memory) address. Reference numeral 13 denotes a UM memory interface block which exchanges a user program with the UM memory 41. 14 is an MM memory interface block, which is an MM memory 4
2 and microloading. Reference numeral 15 denotes a VM memory interface block, which exchanges status and data with the VM memory 43. An instruction decode block 16 analyzes an instruction word and generates a microcode address corresponding to the analysis result. Reference numeral 17 denotes an instruction execution block, which executes an instruction based on microcode. Reference numeral 18 denotes an arithmetic circuit block which performs arithmetic processing. Reference numeral 19 denotes a control block, which controls the entire gate array 10.

【0008】図2は図1のゲートアレイ10のパイプラ
イン処理のサイクルについての説明図である。図示のよ
うに、サイクル1ではUMメモリインターフェースブロ
ック13によりUMメモリ41から命令語の読込を行
い、サイクル2ではその命令語を命令デコードブロック
16にてデコードし、サイクル3ではMMメモリインタ
ーフェースブロック14によりMMメモリ42からその
デコードされた命令語に対応したマイクロロードの読込
を行い、サイクル4では命令実行ブロック17にてその
マイクロコードに基づいた命令を実行する。
FIG. 2 is an explanatory diagram of a cycle of the pipeline processing of the gate array 10 of FIG. As shown in the figure, in the cycle 1, the instruction word is read from the UM memory 41 by the UM memory interface block 13, and in the cycle 2, the instruction word is decoded by the instruction decode block 16, and in the cycle 3, the instruction word is read by the MM memory interface block 14. The microload corresponding to the decoded instruction word is read from the MM memory 42, and in cycle 4, the instruction execution block 17 executes the instruction based on the microcode.

【0009】図3はパイプライン処理による命令実行の
例を示した説明図である。図示の例においては、サイク
ル4以降においては1サイクル毎に命令実行が完了して
いる。
FIG. 3 is an explanatory diagram showing an example of instruction execution by pipeline processing. In the illustrated example, the instruction execution is completed every cycle after cycle 4.

【0010】図4は図1の演算処理装置において乗算処
理をする際のマイクロコードの内容を示した図である。
命令実行ブロック17のアキュムレータのデータを演算
回路ブロック18の演算入力Aにセットし、命令実行ブ
ロック17のデータレジスタのデータを演算回路ブロッ
ク18の演算入力Bにセットし、そして、演算コマンド
をリセットして、クロックを始動させるところまでは従
来と同じであるが(図6参照)、その後の処理が従来と
は異なっている。マイクロコード「乗算指示開始・MM
アドレスホールド指示」に基づいて乗算を開始させたと
きにはMMアドレスをその時のアドレスにホールドさせ
(インクリメントさせずに)、そしてまた、マイクロコ
ード「演算未完了ならばMMアドレスホールド指示」に
より演算未完了ならばMMアドレスをホールドさせる。
このような内容のマイクロコードを設定することによ
り、命令デコードブロック16は、演算回路ブロック1
8において乗算が終了するまでの間、同じアドレスの上
記のマイクロコードを読み出させることにより、MMア
ドレスのホールドを持続させる。そして、演算回路ブロ
ック18が演算処理を終了すると、それ以降の処理は従
来の場合と同様であり、MMアドレスがインクリメント
されて、演算結果が命令実行ブロック17のアキュムレ
ータにセットされ、クロックが停止され、演算結果フラ
グが処理されて、命令実行が完了することとなる。
FIG. 4 is a diagram showing the contents of the microcode when performing the multiplication processing in the arithmetic processing unit of FIG.
The data of the accumulator of the instruction execution block 17 is set to the operation input A of the operation circuit block 18, the data of the data register of the instruction execution block 17 is set to the operation input B of the operation circuit block 18, and the operation command is reset. Thus, the operation up to the point where the clock is started is the same as the conventional one (see FIG. 6), but the subsequent processing is different from the conventional one. Microcode "Multiplication instruction start / MM
When the multiplication is started based on the "address hold instruction", the MM address is held at the address at that time (without incrementing). For example, the MM address is held.
By setting the microcode having such contents, the instruction decode block 16 allows the operation circuit block 1
Until the multiplication is completed at 8, the above-mentioned microcode at the same address is read out, thereby holding the MM address. When the arithmetic circuit block 18 completes the arithmetic processing, the subsequent processing is the same as in the conventional case, the MM address is incremented, the arithmetic result is set in the accumulator of the instruction execution block 17, and the clock is stopped. , The operation result flag is processed, and the instruction execution is completed.

【0011】図5は上述の処理を示したタイムチャート
である。図5において、処理1は図4のマイクロコード
「乗算指示開始・MMアドレスホールド指示」に相当
し、処理2はマイクロコード「演算未完了ならばMMア
ドレスホールド指示」に相当するものであり、これらの
マイクロコードによりMMアドレスが、「n+2」→
「n+3」→「n+2」→「n+3」…となり、MMア
ドレス「n+2」,「n+3」が繰り返されることによ
り、処理2が繰り返されることになる。つまり、従来の
方法では、各サイクルの処理が終了するとMMアドレス
がインクリメントされることになるが、本実施形態にお
いては上述のようにMMアドレスがロックされる。この
ため、本実施形態においてはMMメモリ42は12サイ
クル分の記憶容量で済むことになる。従って、図6の従
来技術との関連では、(47−12)×4=140バイ
トのメモリの節約になる。
FIG. 5 is a time chart showing the above processing. In FIG. 5, processing 1 corresponds to the microcode "multiplication instruction start / MM address hold instruction" in FIG. 4, and processing 2 corresponds to the microcode "MM address hold instruction if the operation is not completed". MM address is "n + 2" →
"N + 3" → "n + 2" → "n + 3"... MM addresses "n + 2" and "n + 3" are repeated, so that the process 2 is repeated. That is, in the conventional method, the MM address is incremented when the processing of each cycle is completed, but in the present embodiment, the MM address is locked as described above. Therefore, in the present embodiment, the MM memory 42 has a storage capacity for 12 cycles. Thus, in connection with the prior art of FIG. 6, a memory saving of (47−12) × 4 = 140 bytes.

【0012】なお、本発明における演算処理は、上記の
乗算処理だけでなく、除算、ローテート、シフト等のよ
うに演算回路ブロック18にて処理する演算が対象とな
る。
The arithmetic processing in the present invention is not limited to the above-described multiplication processing, but also includes arithmetic operations such as division, rotation, shift, and the like, which are processed in the arithmetic circuit block 18.

【0013】[0013]

【発明の効果】以上のように本発明によれば、マイクロ
コードが格納されるメモリと、マイクロコードを読み出
してそのマイクロコードに基づいて命令を実行する命令
実行手段と、命令実行手段の指令に従って所定の演算処
理をする演算回路とを備え、演算回路に所定の演算処理
をさせるとき、演算処理が終了するまでの間、マイクロ
コードを読み出す際のアドレスをロックするようにした
ので、マイクロコードを格納するメモリの容量の節約が
可能になっており、その分他の用途に利用することがで
きる。
As described above, according to the present invention, a memory in which microcode is stored, instruction execution means for reading out microcode and executing an instruction based on the microcode, and instructions in accordance with instructions from the instruction execution means An arithmetic circuit for performing predetermined arithmetic processing, and when the arithmetic circuit performs the predetermined arithmetic processing, an address for reading the microcode is locked until the arithmetic processing is completed. The capacity of the memory to be stored can be saved, and the memory can be used for other purposes.

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

【図1】本発明の一実施形態に係る演算処理装置の構成
を示すブロック図である。
FIG. 1 is a block diagram illustrating a configuration of an arithmetic processing device according to an embodiment of the present invention.

【図2】図1の演算処理装置のパイプライン処理のサイ
クルについての説明図である。
FIG. 2 is a diagram illustrating a cycle of a pipeline process of the arithmetic processing device of FIG. 1;

【図3】パイプライン処理による命令実行の例を示した
説明図である。
FIG. 3 is an explanatory diagram showing an example of instruction execution by pipeline processing.

【図4】図1の演算処理装置において乗算処理をする際
のマイクロコードの内容を示した図である。
FIG. 4 is a diagram showing the contents of a microcode when performing a multiplication process in the arithmetic processing device of FIG. 1;

【図5】図3の処理を示したときのタイムチャートであ
る。
FIG. 5 is a time chart showing the processing of FIG. 3;

【図6】従来の乗算処理をするときのマイクロコードの
内容を示した説明図である。
FIG. 6 is an explanatory diagram showing the contents of microcode when performing a conventional multiplication process.

Claims (1)

【特許請求の範囲】[Claims] 【請求項1】 マイクロコードが格納されるメモリと、
前記マイクロコードを読み出してそのマイクロコードに
基づいて命令を実行する命令実行手段と、前記命令実行
手段の指令に従って所定の演算処理をする演算回路とを
備え、前記演算回路に所定の演算処理をさせるとき、そ
の演算処理が終了するまでの間、前記マイクロコードを
読み出す際のアドレスをロックすることを特徴とする演
算処理装置。
1. A memory in which microcode is stored;
An instruction execution unit that reads the microcode and executes an instruction based on the microcode; and an operation circuit that performs a predetermined operation according to an instruction from the instruction execution unit, and causes the operation circuit to perform the predetermined operation. An arithmetic processing device, wherein an address for reading the microcode is locked until the arithmetic processing is completed.
JP15989597A 1997-06-17 1997-06-17 Operation processor Pending JPH117385A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP15989597A JPH117385A (en) 1997-06-17 1997-06-17 Operation processor

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP15989597A JPH117385A (en) 1997-06-17 1997-06-17 Operation processor

Publications (1)

Publication Number Publication Date
JPH117385A true JPH117385A (en) 1999-01-12

Family

ID=15703531

Family Applications (1)

Application Number Title Priority Date Filing Date
JP15989597A Pending JPH117385A (en) 1997-06-17 1997-06-17 Operation processor

Country Status (1)

Country Link
JP (1) JPH117385A (en)

Similar Documents

Publication Publication Date Title
JPH117385A (en) Operation processor
KR100188374B1 (en) Processing unit
JPH0560629B2 (en)
JP2663895B2 (en) CPU simulator
JPH07210403A (en) Task switching system
JPWO2000073863A1 (en) programmable controller
JP7384374B2 (en) central processing unit
JP2758624B2 (en) Speed control method of micro program
JP3719241B2 (en) Arithmetic unit
JPH117309A (en) Programmable controller
JP3024719B2 (en) Arithmetic processing method of programmable controller
JP3410023B2 (en) In-circuit emulator
JP3948303B2 (en) Programmable controller
JPH0981275A (en) Processor
JP3111372B2 (en) Programmable controller
JPS6126693B2 (en)
JPS6029846A (en) Execution state control system of information processor
JPH03156605A (en) Programmable controller
JPH04245332A (en) Data processor
JPH01286034A (en) Information processor
JPS5815203U (en) programmable controller
JPH03164945A (en) Data processor
JP2002366370A (en) Information processing device
JPH08115214A (en) Digital signal processor
JPH03154929A (en) Central processing unit

Legal Events

Date Code Title Description
A621 Written request for application examination

Effective date: 20040319

Free format text: JAPANESE INTERMEDIATE CODE: A621

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20050426

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20050830