JPS59200346A - Microprogram controller - Google Patents

Microprogram controller

Info

Publication number
JPS59200346A
JPS59200346A JP7448983A JP7448983A JPS59200346A JP S59200346 A JPS59200346 A JP S59200346A JP 7448983 A JP7448983 A JP 7448983A JP 7448983 A JP7448983 A JP 7448983A JP S59200346 A JPS59200346 A JP S59200346A
Authority
JP
Japan
Prior art keywords
instruction
address
software
type
microprogram
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
JP7448983A
Other languages
Japanese (ja)
Inventor
Teruo Nakamura
中村 輝夫
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
Nippon Electric 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 NEC Corp, Nippon Electric Co Ltd filed Critical NEC Corp
Priority to JP7448983A priority Critical patent/JPS59200346A/en
Publication of JPS59200346A publication Critical patent/JPS59200346A/en
Pending legal-status Critical Current

Links

Abstract

PURPOSE:To reduce the control storage by using both the execution using a microprogram and the execution using a microprogram with intervention of an instruction program to execute a software instruction. CONSTITUTION:A main memory 1 stores a software program 11 containing the 1st and 2nd type software instructions and an instruction program 12 in which each function of the 2nd type software instruction is formed with the 1st type software instruction. When the software instruction which is read out of the memory 1 by an address given from a switch circuit 48 is equal to the 1st type software instruction, the instruction is executed by a microprogram stored in a control memory 31. If the software instruction read out of the memory 1 is equal to the 2nd type software instruction, the instruction is executed by the microprogram by the intervention of the program 12 stored in the memory 1.

Description

【発明の詳細な説明】 本発明はマイクロプログラム制御装置に関する。[Detailed description of the invention] The present invention relates to a microprogram controller.

制御記憶上にマイクロプログラムを格納スることはもと
よシ、主起憶上にマイクロプログラムを格納し、該マイ
クロプログラムを直接実行したシ又は必要となった機能
毎に制御記憶の特定エリヤに取込んだり、キャッシュ方
式によシ任意のエリヤに取込んだシして制御記憶上で実
行する方式が従来より行なわれている。
In addition to storing the microprogram in the control memory, it is also possible to store the microprogram in the main memory and directly execute the microprogram, or store it in a specific area of the control memory for each required function. Conventionally, a system has been used in which the data is imported into an arbitrary area using a cache method and then executed on the control memory.

このような従来装置においては処理の高速化を目ざし、
記憶素子の高速化とともに処理の複雑化。
In such conventional equipment, the aim is to speed up processing.
As memory elements become faster, processing becomes more complex.

大規模化に伴ないマイクロプログラムを構成するマイク
ロ命令の1ステツプで実行する機能全多くし、同時並行
動作性を高めようとしてピット構成の大なる所謂水平型
のマイクロ命令化が敗者になってきている。
As the scale of microprograms increases, so-called horizontal microinstructions with a large pit structure are becoming losers in attempts to increase the number of functions that can be executed in a single step of the microinstructions that make up a microprogram, and to improve parallelism. There is.

基本的な演算命令等で使用頻度の高いものでは、上記の
水平型マイクロ命令の’I’ll最大限に活用してソフ
トウェア命令の実行に要するマイクロ命令の数を減少せ
しめ、ソフトウェア命令実行時間を短縮するのに極めて
効果的である。しかし、その他の多くの命令、例えば主
記憶上のデータハンドリング金繰返す様なリスト処理命
令及び各種制御命令等ではシーケンシャルな処理が多く
、このような機能に対しても高度に水平化されたマイク
ロ命令を使用した場合には、個々のマイクロ命令では一
時にはそれを構成する一部のビットのみが使用され他の
残シのピットは使用されない所謂垂直型マイクロ命令の
使い方となり、マイクロ命令を格納する主記憶、制御記
憶等に無駄を生ずるという欠点がある。
For frequently used basic arithmetic instructions, the above-mentioned horizontal micro-instructions can be fully utilized to reduce the number of micro-instructions required to execute software instructions, thereby reducing software instruction execution time. It is extremely effective in shortening the time. However, many other instructions, such as list processing instructions that repeat data handling in main memory, and various control instructions, often involve sequential processing, and highly horizontal microinstructions are required for these functions as well. When using a micro-instruction, only some of the bits that make up each micro-instruction are used at a time, and the rest of the bits are not used. This method has the disadvantage that storage, control storage, etc. are wasted.

本発明の目的は上記の従来装置の欠点を除去し、マイク
ロ命令を格納する主記憶、制御記憶等の無駄を大幅に減
少したマイクロプログラム制御装置を提供することにあ
る。
SUMMARY OF THE INVENTION An object of the present invention is to provide a microprogram control device that eliminates the drawbacks of the conventional devices described above and greatly reduces waste in main memory, control memory, etc. for storing microinstructions.

本発明の装置は、制御記憶に格納されたマイクロプログ
ラムによ逆制御されるデータ処理装置において、第1の
種類のソフトウェア命令と第2の種類のソフトウェア命
令とを有するソフトウェアプログラムと前記第2の種類
のソフトウェア命令のそれぞれの機能の少くとも一部を
第1の種類のソフトウェア命令によりs成した命令プロ
グラムとを記憶する記憶手段と、前記記憶手段に格納さ
れている前記ソフトウェアプログラムから読み出すべき
ソフトウェア命令のアドレスを設定し第2の種類の18
号の供給に応答して該アドレスを保持し第1の種類の信
号の供給に応答して前記保持をとくアドレス設定保持手
段と、前記記憶手段に格納されている命令プログラムか
ら読み出すべきソフトウェア命令のアドレスを設定する
アドレス設定手段と、第1の種類の信号の供給に応答し
て前記アドレス設定保持手段から供給されるアドレスを
選択し第2の種類の信号の供給に応答して前記アドレス
設定手段から供給されるアドレスを選択する選択手段と
、前記選択手段から供給されるアドレスにより前記記憶
手段から読み出されるソフトウェア命令が第1の種類の
ソフトウェア命令の場合には前記制御記憶に格納されて
いる前記マイクロプログラムによシ該命令の実行を行な
う制御手段と、前記選択手段から供給されるアドレスに
より前記記憶手段から読み出されるソフトウェア命令が
第2の種類のソフトウェア命令の場合には該命令によシ
指定される前記マイクロプログラムのマイクロ命令によ
シ前記第2の種類の信号を発生し予め定めた値を前記第
2の種類のソフトウェア命令に対応する前記命令プログ
ラムの実行開始アドレスとして前記アドレス設定手段に
供給するを発生する信号発生手段とを含む。
The apparatus of the present invention is a data processing apparatus that is inversely controlled by a microprogram stored in a control memory, and includes a software program having a first type of software instructions and a second type of software instructions; storage means for storing an instruction program in which at least a part of each function of each type of software instruction is performed by a first type of software instruction; and software to be read from the software program stored in the storage means. Set the instruction address to 18 of the second type
address setting holding means for holding the address in response to the supply of the first type of signal and releasing the holding in response to the supply of the first type of signal; and a software instruction to be read from the instruction program stored in the storage means. address setting means for setting an address; and address setting means for selecting an address supplied from the address setting holding means in response to the supply of a first type of signal and in response to supplying a second type of signal. selecting means for selecting an address supplied from said selecting means; and if a software instruction read from said storage means according to an address supplied from said selecting means is a first type of software instruction, said selecting means for selecting said address supplied from said control memory; control means for executing the instruction by a microprogram; and when the software instruction read from the storage means by the address supplied from the selection means is a second type of software instruction, the instruction is specified by the instruction; generates the second type of signal according to a microinstruction of the microprogram to be executed, and sets a predetermined value to the address setting means as an execution start address of the instruction program corresponding to the second type of software instruction; and signal generating means for generating a signal.

次に本発明について図面を参照して詳#Ilc説明する
Next, the present invention will be explained in detail with reference to the drawings.

前述のようにソフトウェア命令は水平型マイク口命令を
使用して実行するのに適する第1の命令群と、かかる実
行には不適の第2の命令群とに大別できる。第1の命令
群は第2の命令群に比し、ソフトウェアプログラムに使
用される頻度は格段に高い。従ってソフトウェアプログ
ラムの実行時間に占める割合は第1の命令群が大部で第
2の命令群がソフトウェアプログラムの実行時間の短縮
に寄与する程度は比較的小で6D、本発明はこれに着目
して第2の命令群の取扱いを考え目的たる主記憶等の有
効利用が図れるようにしたのである。
As described above, software instructions can be broadly divided into a first group of instructions suitable for execution using horizontal microphone mouth instructions and a second group of instructions unsuitable for such execution. The first instruction group is used much more frequently in software programs than the second instruction group. Therefore, the first instruction group accounts for most of the software program execution time, and the second instruction group contributes to a relatively small amount of the software program execution time (6D), and the present invention focuses on this. Therefore, the handling of the second group of instructions was considered to enable effective use of the main memory, etc., which was the intended purpose.

更に本発明を支えるものにバッファメモリ、並列処理、
パイプライン処理等の近年の大型コンピュータの高速処
理技術の発展がある。これらにより、基本的な演算命令
等の処理時間の大幅な短縮が期待できるようになった。
Furthermore, buffer memory, parallel processing,
There have been recent developments in high-speed processing technology for large computers, such as pipeline processing. As a result, it is now possible to expect a significant reduction in the processing time for basic arithmetic instructions.

そこで本発明では第1の命令群に属するソフトウェア命
令(以下Aと総称する)は水平型マイクロ命令を使用す
ることとし、第2の命令群に属するソフトウェア命令(
以下Bと総称する)は第1の命令群に属するソフトウェ
ア命令で記述したプログラム(以下命令プログラムと呼
称する)とする。したがってBの実行に尚っては該当す
る命情プログラムに含まれる複数のAすなわちA□、A
2゜A3等を実行する必要があり、このためには更にA
l+A2+Aa等を構成する複数の水平型マイクロ命令
を実行する必要がある。上述のようにBffiAによ多
構成した理由は、Bはシーケンシャルな処理が多いので
水平型マイクロ命令を使用しても、同時には一機能のみ
の実行しか行なわれない場合が多く、垂直型マイクロ命
令と同じ使い方になシ従ってAで記述しても同じことに
なるからである。
Therefore, in the present invention, the software instructions belonging to the first instruction group (hereinafter collectively referred to as A) use horizontal microinstructions, and the software instructions belonging to the second instruction group (
A program (hereinafter collectively referred to as B) is a program written using software instructions belonging to the first instruction group (hereinafter referred to as an instruction program). Therefore, when executing B, multiple A's, that is, A□, A
2゜A3 etc. must be executed, and for this purpose A
It is necessary to execute a plurality of horizontal microinstructions comprising l+A2+Aa, etc. The reason why BffiA has multiple configurations as described above is that BffiA often performs sequential processing, so even if horizontal microinstructions are used, only one function is executed at a time, and vertical microinstructions are This is because it is used in the same way as , so even if you write it as A, it will mean the same thing.

しかも前述のパイプライン処理等にょ9ソフトウエア命
令の並列処理が行なえるようになっているため実行時間
はむしろ短縮きれる方向にある。
Moreover, since parallel processing of nine software instructions can be performed, such as the pipeline processing described above, the execution time is actually in the direction of being shortened.

以上の考えを実現するためには従来装置のよう    
“にソフトウェア命令を解読してマイクロプログラムを
実行するだけでは不十分で上記のBを実行するためには
、まず実行すべきソフトウェア命令を解読してマイクロ
プログラム(水平型マイクロ命令によシ記述されている
)にアクセスし、これからBに該当する命令プログラム
にアクセスし更にこのプログラムの実行のためにマイク
ロプログラムにアクセスする等が必要になってくる。
In order to realize the above idea, it is necessary to
It is not enough to simply decode the software instructions and execute the microprogram. ), access the instruction program corresponding to B, and further access the microprogram to execute this program.

次に以上の動作を図面を使用して詳細に説明する。Next, the above operation will be explained in detail using the drawings.

図は本発明の一実施例のブロック図である。図を参照す
ると本発明の一実施例は、主記憶(1v1ivi )1
と、演算回路2と、制御記憶回路3と命令データ7エソ
チ回路4とから構成されている。
The figure is a block diagram of one embodiment of the present invention. Referring to the figure, one embodiment of the present invention has a main memory (1v1ivi) 1
, an arithmetic circuit 2 , a control storage circuit 3 , an instruction data 7 and an Esochi circuit 4 .

主記憶1には所定の処理を行なうソフトウェアプログラ
ム11と、ソフトウェア命令で記述された複数の命令プ
ログラム群12とが格納されている。演算回路2は、制
御記憶回路3により制御され各種の演算処理を行うもの
である。制御記憶回路3には、マイクロ命令で記述てれ
たマイクロプログラムを格納する制御記憶(C8)31
と、C831からマイクロ命令を読み出し解読して谷部
を制御する制御信号を発生する制御記憶制御回路(C8
CONT)34と、フリップフロップ回路(FF) 3
5とC831にアドレスを供給する制御記憶アドレス(
sxR) レジス胃2およびアドレス加算回路33とがある。命令
データフェッチ回路4はC3CONT34によシ制御さ
れ、主記憶1からソフトウェア命令及びデータを取り出
し又データ全格納したシする回路でめシ、取り出した命
令を一時格納する命令レジスタ(IR)41、取シ出し
たデータまたは格納すべきデータを一時格納するデータ
レジスタ(DR)44、主記憶1のソフトウェアプログ
ラム11から読み出スべき命令のアドレスデータを一時
格納する命令カウンタ(IC)45.主記憶1の命令プ
ログラム群12から読み出すべき命令のアドレスデータ
を一時格納する命令カウンタ(IC)47. I C4
5とIC47とから供給されるアドレスデータのいずれ
か一個を選択する切換回路(EXC)48、次に読み出
すべき命令のアドレスを作成するアドレス加算回路46
、読み出すべき又は薔き込むべきデータのアドレスを作
成するアドレスアダ(ADD)42およびアドレスを一
時格納するアドレスレジスタ43とを含んでいる。
The main memory 1 stores a software program 11 that performs predetermined processing and a plurality of instruction program groups 12 written in software instructions. The arithmetic circuit 2 is controlled by the control storage circuit 3 and performs various arithmetic processes. The control memory circuit 3 includes a control memory (C8) 31 that stores a microprogram written in microinstructions.
and a control memory control circuit (C8
CONT) 34 and flip-flop circuit (FF) 3
5 and the control storage address (
sxR) There is a register circuit 2 and an address addition circuit 33. The instruction data fetch circuit 4 is controlled by the C3 CONT 34, and is a circuit that takes out software instructions and data from the main memory 1 and stores all the data. a data register (DR) 44 for temporarily storing data issued or to be stored; an instruction counter (IC) 45 for temporarily storing address data of instructions to be read from the software program 11 in the main memory 1; An instruction counter (IC) 47 that temporarily stores address data of instructions to be read from the instruction program group 12 in the main memory 1. IC4
5 and IC 47, and an address adder circuit 46 that creates the address of the next instruction to be read.
, an address adder (ADD) 42 for creating an address of data to be read or written, and an address register 43 for temporarily storing the address.

初期状態ではFF35はリセットされてお9接続線11
2を介する信号は論理110”であ、DEX048はI
C45のデータを選択している。FF35がセットされ
ると接続線112t−介する信号は論理°1”とな!D
 IC45は格納しているデータを保持する状態とな9
、EXC48はIC47のデータを選択する。
In the initial state, FF35 is reset and 9 connection lines 11
The signal through 2 is logic 110'' and DEX048 is I
C45 data is selected. When FF35 is set, the signal through the connection line 112t becomes logic 1"!D
The IC45 is in a state where it retains the stored data9.
, EXC48 selects the data of IC47.

先ず第1の命令群に属するソフトウェア命令A□の場合
の動作について説明する。
First, the operation in the case of the software instruction A□ belonging to the first instruction group will be explained.

この人1については従来装置と全く同じ取扱いが行なわ
れる。すなわち、この場合とはIC45に格納されてい
るアドレス信号をBXC48が選択して主記憶1に供給
し、当該アドレス信号の指定するアドレスに格納されて
いるソフトウェアプログラム11内の一命令を接続線1
01を介して読出しlR41に格納した該−命令がA1
でめった場合である。A1によ、9C831に格納され
ているマイクロプログラムを読出す先頭アドレスが5A
R32に格納され、このアドレス信号が接続1101−
介してC831に供給されて一連の水平型マイクロ命令
が読出されてC3CONT34で解読され制御信号を1
13を介して演算回路2に供給してAlt実行する。
This person 1 is handled in exactly the same way as in the conventional device. That is, in this case, the BXC 48 selects the address signal stored in the IC 45 and supplies it to the main memory 1, and one instruction in the software program 11 stored at the address specified by the address signal is sent to the connection line 1.
The - instruction read out via 01 and stored in lR41 is A1.
This is a rare case. According to A1, the start address for reading the microprogram stored in 9C831 is 5A.
This address signal is stored in R32 and connected to connection 1101-
A series of horizontal microinstructions are read out and decoded by the C3CONT34, and the control signal is sent to the C831.
13 to the arithmetic circuit 2 to execute Alt.

この実行においては所要データが主記憶1から読み出さ
れたシ曹込まれたシするが公知技術故説明を省略する。
In this execution, necessary data is read out from the main memory 1 and stored, but since this is a known technique, the explanation will be omitted.

一方A□によ9次なる命令のアドレスがアドレス加算回
路46により作成されIC45に格納される。マイクロ
命令によるA1の実行が完了するとC3CONT34か
ら次なる命令の要求が出されIC45に格納されている
アドレス信号を主記憶1に供給して、以下上述の動作全
繰返し、がくして被数の第1の命令群に属するA□+ 
A 2・・・Anの命令の実行が行なわれる。
On the other hand, the address of the ninth instruction according to A□ is created by the address adder circuit 46 and stored in the IC 45. When the execution of A1 by the microinstruction is completed, a request for the next instruction is issued from the C3 CONT 34, the address signal stored in the IC 45 is supplied to the main memory 1, and the above-mentioned operations are all repeated. A□+ belonging to the instruction group of
A2...An instruction is executed.

次に第2の命令群に属するソフトウェア命令B□の場合
の動作について説明する。今贋の場合には、IC45の
アドレス信号によシ主記憶1のソフトウェアプログラム
11から読出されlR41に格納された命令はB□であ
る。B□に−よシ次なる命令のアドレスが上記のAよと
同様にしてIC45に格納される。更にB□によシ指定
されるC831のアドレスが接続線105全介し5AR
32を経てC831に供給され当該アドレスに格納され
ているマイクロ命令が読み出される。B1によシ読出さ
れたマイクロ命令(M I□と称す)の実行する制御動
作は、制御信号を発生してFF35−iセットしIC4
5をデータ保持状態にし且つEXC48をしてl047
を選択するように切換え史にC3CONT34から供給
されるアドレスデータ全接続if!lif?介してIC
47に格納し、主記憶1へEXC48t−経て当該アド
レスデータを供給し7て該アドレスに格納しであるB1
にに対応する命令プログラムを読み出すことである。
Next, the operation in the case of software instruction B□ belonging to the second instruction group will be explained. In the case of a counterfeit, the instruction read out from the software program 11 in the main memory 1 by the address signal of the IC 45 and stored in the lR 41 is B□. In B□, the address of the next instruction is stored in the IC 45 in the same manner as in A above. Furthermore, the address of C831 specified by B□ is 5AR through all connection lines 105.
32 to the C831 and the microinstruction stored at the address is read out. The control operation executed by the microinstruction (referred to as MI□) read by B1 is to generate a control signal, set FF35-i, and
5 to data retention state and EXC48 to l047
Address data supplied from C3CONT34 to switch history to select all connections if! lif? via IC
47, the address data is supplied to the main memory 1 via EXC48t, and the data is stored at the address B1.
The purpose of this is to read out the instruction program corresponding to the .

該アドレスはB1に特定されるアドレスであシB0をA
で記述した命令プログラムを格納している主記憶エリヤ
の先頭アドレスである。かくして前記マイクロ命令によ
p主記憶1に格納されている命令プログラム群12にア
クセスし、所定のアドレスからBltl−Aで記述した
命令プログラムの最初の命令Ai’(i7取り出しlR
41に格納する。AIは第1の命令群に属するソフトウ
ェア命令でメジ、前述と同様にしてC831に格納され
ている水平型マイクロ命令によシ実行される。以下B□
に対応する命令プログラムを構成するソフトウェア命令
A I+1 r A I+2 +・・・A、+。が順次
読みホされ同様に実行される。最後にB□に対応する命
令プログラムの最後のソフトウェア命令A。が耽み出さ
れlR41に格納される。Aoに和尚するC831に格
納されているマイクロ命令(+vt I oと称す)の
実行する制御動作は、制御信号を発生しFF35に!j
上セツトEXC48eしてIC45のブータラ選択せし
めそのアドレスデータを主記憶に供給して該アドレスに
格納しであるソフトウェアプログラム11の次の命令を
読み出すことである。IC45に格納してあったアドレ
スデータは%B1につづく命令の格納しであるアドレス
でおるので読不出された命令はB□に続いて実行すべき
命令となる。以上のように、第1のソフトウェア命令に
属するAに対しては従来通り高度に水平化したマイクロ
命令を使用シテ実行し、第2のソフトウェア命令に属す
るBに対してはAで記述した命令プログラムとして主記
憶1に格納しておき、Bnによるマイクロ館令鼠工。で
該幽する命令プログラムにアクセスして実行し、その最
後のソフトウェア命令A。でマイクロ命令1VliIo
ft実行してBnにつづくソフトウエア命令の実行に移
行する。
The address is the address specified by B1, and B0 is the address specified by A.
This is the start address of the main memory area where the instruction program written in is stored. In this way, the instruction program group 12 stored in the p main memory 1 is accessed by the microinstruction, and the first instruction Ai' (i7 fetched lR
41. AI is a software instruction belonging to the first instruction group, and is executed by horizontal microinstructions stored in the C831 in the same manner as described above. Below B□
Software instructions forming an instruction program corresponding to A I+1 r A I+2 +...A, +. are read sequentially and executed in the same way. Finally, the last software instruction A of the instruction program corresponding to B□. is extracted and stored in lR41. The control operation executed by the microinstruction (referred to as +vtIo) stored in C831 that is connected to Ao generates a control signal to FF35! j
The first step is to select the booter of the IC 45 by setting EXC 48e, supplying the address data to the main memory, and reading out the next instruction of the software program 11 stored at the address. Since the address data stored in the IC 45 is the address at which the instruction following %B1 is stored, the unread instruction becomes the instruction to be executed following B□. As described above, for A belonging to the first software instruction, a highly horizontal microinstruction is used and executed as before, and for B belonging to the second software instruction, the instruction program written in A is executed. It is stored in main memory 1 as a micro-controller by Bn. accesses and executes the command program to execute the last software command A. Microinstruction 1VliIo
ft is executed and the program moves to execution of the software instruction following Bn.

かくすることによシ、制御記憶31内に格納される効率
の悪い水平型マイクロ命令の数は格段に減少して制御記
憶31を効率よく使用することができる。
By doing so, the number of inefficient horizontal microinstructions stored in the control memory 31 is significantly reduced, and the control memory 31 can be used efficiently.

第2のソフトウェア命令群をマイクロプログラム化した
場合には計算機システムが異なれば当該マイクロプログ
ラムも異なシ各システム毎に設計しなければならないが
、命令プログラム化すればこれはソフトウェア命令で記
述されているので極めて互換性に富むものとなり一回の
設計ですむこととなる。
If the second software instruction group is made into a microprogram, the microprogram will be different for each computer system and must be designed for each system, but if it is made into an instruction program, it is written in software instructions. Therefore, it is highly compatible and only needs to be designed once.

以上のように本発明にはソフトウェア命令をマイクロプ
ログラムによる実行と命令プログラムを介したマイクロ
プログラムによる実行とを併用して実行することにより
制御記憶を大幅に減少せしめることができまたシステム
間で互換性に富むマイクロプログラム制御ができるとい
う効果がある。
As described above, the present invention can significantly reduce control memory by executing software instructions by a microprogram and executing the microprogram via an instruction program, and is compatible with other systems. This has the effect of allowing microprogram control that is rich in functionality.

本実施例では第2のソフトウェア命令群のソフトウェア
命令はtvtI 、 、 mI oを除き第1のソフト
ウェア命令で構成される例を示したが本発明はこれに限
定されるものではない。すなわち第2のソフトウェア命
令の一部を直接マイクロプログラムで実行し他を第1の
ソフトウェア命令を介して実行する場合にも当該筒2の
ソフトウェア命令に関連ずけてマイクロ命令1VII 
、 、 1VI1.に対する若干の変更によシ本発明は
適用できる。
In this embodiment, an example is shown in which the software instructions of the second software instruction group are composed of the first software instructions except for tvtI, , mIo, but the present invention is not limited to this. In other words, even when some of the second software instructions are executed directly by the microprogram and others are executed via the first software instructions, the microinstructions 1VII are related to the software instructions of the cylinder 2.
, , 1VI1. The present invention can be applied with some modifications.

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

図は本発明の一実施例のブロック図である。図において
、1・・・・・・主記憶(ytM) 、2・・・・・・
演算回路、3・・・・・・制御記憶回路、4・・・・・
・命令データフェッチ回路、11・・・・・・ソフトウ
ェアプログラム、12・・・・・・命令プログラム群、
31・・・・・・制御記憶(C8)、32・・・・・・
制御記憶アドレスレジスタ(SAR)、33・・・・・
・アドレス加算回路(十mバ34・・・・・・制御記憶
制御回路(C8CONT)、41・・・・・・命令レジ
スタ(IR)、42・・・・・・アドレスアダ(ADD
)、43・・・・・・アドレスレジスタ(AR)、44
・・・・・・データレジスタ(DR)、45・・・・・
・命令カウンタ(IC)、46・・・・・・アドレス加
算回路(−1−n)、47・・・・・・命令カウンタC
IC)、48・・・・・・切換回路(EXC)、101
〜119・・・・・・接続線。
The figure is a block diagram of one embodiment of the present invention. In the figure, 1... main memory (ytM), 2...
Arithmetic circuit, 3...Control memory circuit, 4...
・Instruction data fetch circuit, 11... Software program, 12... Instruction program group,
31... Control memory (C8), 32...
Control storage address register (SAR), 33...
・Address addition circuit (10m bar 34...Control memory control circuit (C8CONT), 41...Instruction register (IR), 42...Address adder (ADD)
), 43...Address register (AR), 44
...Data register (DR), 45...
・Instruction counter (IC), 46...address addition circuit (-1-n), 47...instruction counter C
IC), 48...Switching circuit (EXC), 101
~119... Connection line.

Claims (1)

【特許請求の範囲】 制御記憶に格納されたマイクロプログラムにより制御さ
れるデータ処理装置において、第1の種類のソフトウェ
ア命令と第2の種類のソフトウェア命令とを有するソフ
トウェアプログラムと前記第2の種類のソフトウェア命
令のそれぞれの機能の少くとも一部を第1の種類のソフ
トウェア命令により構成した命令プログラムとを記憶す
る記憶手段と、 前記記憶手段に格納されて層る前記ソフトウェアプログ
ラムから読み出すべきソフトウェア命令のアドレスを設
定し第2の種類の信号の供給に応答して該アドレスを保
持し第1の種類の信号の供給に応答して前記保持をとく
アドレス設定保持手段と、 前記記憶手段に格納されている命令プログラムから読み
出すべきソフトウェア命令のアドレスを設定するアドレ
ス設定手段と、 第1の種類の信号の供給に応答して前記アドレス設定保
持手段から供給されるアドレスを選択し第2の種類の信
号の供給に応答して前記アドレス設定手段から供給され
るアドレスを選択する選択手段と、 前記選択手段から供給されるアドレスにより前記記憶手
段から読み出されるソフトウェア命令が第1の種類のソ
フトウェア命令の場合には前記価御記憶に格納されてい
る前記マイクロプログラムによシ該命令の実行を行なう
制御手段と、前記選択手段から供給されるアドレスによ
り前記記憶手段から読み出されるソフトウェア命令が第
2の種類のソフトウェア命令の場合には該命令により指
定される前記マイクロプログラムのマイクロ命令によシ
前記第2の種類の信号を発生し予め定めた値を前記第2
の種類のソフトウェア命令に対応する前記命令プログラ
ムの実行開始アドレスとして前記アドレス設定手段に供
給するアドレス供給手段と、 手段とを含むことを特徴とするマイクロプログラム制御
装置。
Claims: A data processing device controlled by a microprogram stored in a control memory, comprising: a software program having a first type of software instructions and a second type of software instructions; storage means for storing an instruction program in which at least a part of each function of the software instructions is constituted by a first type of software instructions; address setting and holding means for setting an address, holding the address in response to the supply of a second type of signal, and releasing the holding in response to the supply of the first type of signal; an address setting means for setting an address of a software instruction to be read from an instruction program, and an address setting means for selecting the address supplied from the address setting holding means in response to the supply of the first type of signal, selection means for selecting an address supplied from the address setting means in response to the supply; and when the software instruction read from the storage means according to the address supplied from the selection means is a first type of software instruction; A second type of software instruction includes a control means for executing the instruction according to the microprogram stored in the value control memory, and a software instruction read from the storage means according to an address supplied from the selection means. In this case, the microinstruction of the microprogram specified by the instruction generates the second type of signal and sets a predetermined value to the second type of signal.
A microprogram control device comprising: address supply means for supplying the address setting means as an execution start address of the instruction program corresponding to the type of software instruction; and means.
JP7448983A 1983-04-27 1983-04-27 Microprogram controller Pending JPS59200346A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP7448983A JPS59200346A (en) 1983-04-27 1983-04-27 Microprogram controller

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP7448983A JPS59200346A (en) 1983-04-27 1983-04-27 Microprogram controller

Publications (1)

Publication Number Publication Date
JPS59200346A true JPS59200346A (en) 1984-11-13

Family

ID=13548752

Family Applications (1)

Application Number Title Priority Date Filing Date
JP7448983A Pending JPS59200346A (en) 1983-04-27 1983-04-27 Microprogram controller

Country Status (1)

Country Link
JP (1) JPS59200346A (en)

Similar Documents

Publication Publication Date Title
US4432051A (en) Process execution time accounting system
US3781810A (en) Scheme for saving and restoring register contents in a data processor
US4369494A (en) Apparatus and method for providing synchronization between processes and events occurring at different times in a data processing system
US4084228A (en) Process management structures and hardware/firmware control
US4395757A (en) Process synchronization utilizing semaphores
US4077058A (en) Method and apparatus for executing an extended decor instruction
US4297743A (en) Call and stack mechanism for procedures executing in different rings
JP3649470B2 (en) Data processing device
US4316245A (en) Apparatus and method for semaphore initialization in a multiprocessing computer system for process synchronization
US4374409A (en) Method of and system using P and V instructions on semaphores for transferring data among processes in a multiprocessing system
US3359544A (en) Multiple program computer
US3701977A (en) General purpose digital computer
US4351024A (en) Switch system base mechanism
JPH04140880A (en) Vector processor
JPH03233630A (en) Information processor
US3480917A (en) Arrangement for transferring between program sequences in a data processor
JP2009193378A (en) Vector processing device
US3761893A (en) Digital computer
JPS59200346A (en) Microprogram controller
JPS601655B2 (en) Data prefetch method
US3064895A (en) Sensing instruction apparatus for data processing machine
JPH06230963A (en) Memory access controller
JPH10116191A (en) Processor equipped with buffer for compressed instruction
JPS59212957A (en) Microprogram controller
JP2622026B2 (en) Register writing control method in central processing unit