JPS59200345A - Microprogram control system - Google Patents

Microprogram control system

Info

Publication number
JPS59200345A
JPS59200345A JP7330183A JP7330183A JPS59200345A JP S59200345 A JPS59200345 A JP S59200345A JP 7330183 A JP7330183 A JP 7330183A JP 7330183 A JP7330183 A JP 7330183A JP S59200345 A JPS59200345 A JP S59200345A
Authority
JP
Japan
Prior art keywords
instruction
software
program
microprogram
stored
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
JP7330183A
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 JP7330183A priority Critical patent/JPS59200345A/en
Publication of JPS59200345A publication Critical patent/JPS59200345A/en
Pending legal-status Critical Current

Links

Abstract

PURPOSE:To reduce the control storage and to facilitate the interchangeability among systems by executing a software instruction through using both the execution using a microprogram and the execution of a microprogram using an instruction program. CONSTITUTION:A main memory 1 stores a software program 11 including the 1st type software instruction group and the 2nd type software instruction group and an instruction program 12 in which each instruction of the 2nd type software instruction group is formed with the 1st type software instruction group. When the 1st type software instruction is read out of the memory 1, this instruction is executed by the microprograms stored in the memory 1 and a control memory 31. When the 2nd type software instruction is read out of the memory 1, the execution of the program 12 is started. Then a microprogram is started when the execution is completed with the program 12.

Description

【発明の詳細な説明】 発明の属する技術分野 本発明はマイクロプログラム制御方式に関する。[Detailed description of the invention] Technical field to which the invention belongs The present invention relates to a microprogram control system.

従来技術 制御記憶上にマイクログログ2ムを格納することはもと
より、主記憶上にマイクロプログラムを格納し、該マイ
クロプログラムを直接実行したりまたは必要となった機
能毎に制御記憶の特定のエリアに取込んだり、キヤ・ソ
シュ方式により任意のエリアに取込んだすして制御記憶
上でマイクロブqグラムを実行する方式が従来より行な
われでいる。
BACKGROUND OF THE INVENTION In addition to storing micrologs in control memory, microprograms can be stored in main memory and the microprograms can be directly executed or stored in specific areas of control memory for each required function. Conventionally, a method has been used in which a microb qgram is executed on a control memory by importing it into an arbitrary area using a cache method.

このような従来装置においては、処理の高速化を目ざし
て、記憶素子の高速化とともに処理の複雑化、大規模化
に伴い、マイクログログラムを構成するマイクロ命令の
1ステツプで実行する機能を多くし、同時並行動作性を
高めようとしてビット構成の犬なるいわゆる水平型のマ
イクロ命令化が顕著になって来ているっ 基本的な演算命令等で使用頻度の高いものでは。
In such conventional devices, with the aim of speeding up processing, as storage elements become faster and processing becomes more complex and large-scale, many functions are executed in one step of the microinstructions that make up the microprogram. However, in an effort to improve parallelism, the use of so-called horizontal micro-instructions, or bit-structured bit configurations, is becoming more prominent, especially for basic arithmetic instructions that are frequently used.

上記の水平型マイクロ命令の特徴を最大限に活用してソ
フトウェア命令の実行に要するマイクロ命令の数を減少
せしめて−る。これは、ソフトウェア命令実行時間を短
縮するのに極めて効果的である。
The features of the horizontal microinstructions described above are fully utilized to reduce the number of microinstructions required to execute software instructions. This is extremely effective in reducing software instruction execution time.

しかし、その他の多くの命令、例えば主記憶上のデータ
ハンドリングを繰返えすようなリスト処理命令および各
種制御命令等では、シーケンシャルな処理が多い。この
ような機能に対しても高度に水平化されたマイクロ命令
を使用した場合には、個々のマイクロ命令では一時にそ
れを構成する一部のビットのみが使用され他の残9のビ
ットは使用されないいわゆる垂直型のマイクロ命令の使
い方となる。これは、マイクロ命令を格納する主記憶お
よび制御記憶等に無駄を生じるという欠点がある。
However, many other instructions, such as list processing instructions and various control instructions that repeatedly handle data on the main memory, often involve sequential processing. When highly horizontal microinstructions are used for such functions, each microinstruction uses only some of its constituent bits at a time, leaving the remaining 9 bits unused. This is a so-called vertical type microinstruction usage. This has the disadvantage that main memory and control memory for storing microinstructions are wasted.

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

尚、同一のソフトウェアの走行を可能とするんめに、一
つのアーキテクチャ(仕様)に基づいて小型から太を、
ざらに超大型まで開発するいわゆるシリーズ化が行表わ
れでおり、また、システム性能向上のために各種ソフト
ウェア機能の7アームウエア化も強力に進められている
。しかし、中・小型慨で性能向上に効果がある7アーム
ウエア化が必ずしも大型・超大型機にお込て同様に効果
が出せるとは限らない。むしろ基本的な演算命令に比較
してその効果が少ないまたは全く無いということが多く
発生し得る。しかし、ソフトウェア互換のために該当機
能の7アームウエア化は避けられず、そこで上述の観点
からソフトウェア命令によるファームウェアを実現する
こととなる。こうすることにより、高度に水平型化され
たマイクロ命令を使用して設計するよりも垂直型のソフ
トウェア命令を使用して設計する方が、機能当りの設計
時間を少なくすることが可能である。これとともに、シ
ステム間で互換性の保証し難い7アームウエアを使用す
ると開発するシステム毎に該当するファームウェアを個
別に開発する必要があるが、ソフトウェア命令によれば
、システム間の互換性が保証されており、この点でも大
幅な開発設計工数の効率化が可能となる。
In addition, in order to make it possible to run the same software, it is possible to run the same software from small to large based on one architecture (specification).
So-called series development, which involves the development of even ultra-large-scale products, is taking place, and efforts are also being made to convert various software functions into 7-armware systems in order to improve system performance. However, the 7-armwear system, which is effective in improving performance on small and medium-sized aircraft, does not necessarily have the same effect on large and ultra-large aircraft. In fact, it is often the case that the effect is less than that of basic arithmetic instructions or that there is no effect at all. However, for software compatibility, it is unavoidable to implement the corresponding functions in 7 armware, and therefore, from the above-mentioned viewpoint, firmware is implemented using software instructions. By doing so, designing using vertical software instructions can take less design time per function than designing using highly horizontal microinstructions. Along with this, when using 7 armware, which makes it difficult to guarantee compatibility between systems, it is necessary to develop the corresponding firmware for each system individually, but according to the software instructions, compatibility between systems is not guaranteed. This also makes it possible to significantly improve the efficiency of development and design man-hours.

本発明の他の目的は、上記のように7アームウエア命令
のみによる開発設計工数上の欠点を除去し、システム性
能にらじてソフトウェア命令によるファームウェア化を
図ることにより、小・中型機の性能を向上するアーキテ
クチャに基づいての大型・超大型機の開発工数の効率化
を可能とするマイクロプログラム制御方式を提供するこ
とにある。
Another object of the present invention is to eliminate the shortcomings in development and design man-hours due to only 7 armware instructions as described above, and to improve the performance of small and medium-sized machines by implementing firmware based on software instructions based on system performance. The purpose of this project is to provide a microprogram control method that makes it possible to increase the efficiency of development man-hours for large and ultra-large machines based on an architecture that improves performance.

発明の構成 本発明の方式は、制御記憶および主記憶の少なくとも一
方に格納されたマイクロプログラムにより制御されるデ
ータ処理装置において、第1の種類のソフトウェア命令
群と第2の種類のソフトウェア命令群とを含むソフトウ
ェアプログラムと、前記第2の種類のソフトウェア命令
群のそれぞれの命令の機能の少なくとも一部を前記第1
の種類のソフトウェア命令群により構成した命令プログ
ラムとを主記憶に格納し、前記主記憶から読出されたソ
フトウェア命令が第1の種類のソフトウェア命令群に属
する場合には前記制御記憶および主記憶の少なくとも一
部に格納されている前記マイクロプログラムにより該命
令の実行制御を行ない、また、前記主記憶から読出した
ソフトウェア命令が第2の種類のソフトウェア命令群に
属する場合には、該命令の少なくとも一部の機に対応す
る前記命令プログラムの実行を開始し、前記命令プログ
ラムの実行終了時には前記マイクロプログラムを再び起
動することにより制御をマイクロプログラムに戻すため
のソフトウェア命令を実行する方式である。
Structure of the Invention The method of the present invention provides a data processing device controlled by a microprogram stored in at least one of a control memory and a main memory, which includes a first type of software instruction group and a second type of software instruction group. a software program that includes at least a part of the function of each instruction of the second type of software instruction group;
an instruction program constituted by a first type of software instruction group is stored in a main memory, and when the software instruction read from the main memory belongs to the first type of software instruction group, at least the control memory and the main memory are stored. Execution of the instruction is controlled by the microprogram stored in the main memory, and if the software instruction read from the main memory belongs to a second type of software instruction group, at least part of the instruction is controlled by the microprogram stored in the main memory. In this method, execution of the instruction program corresponding to the instruction program is started at the time of execution, and when the execution of the instruction program is finished, the microprogram is restarted to execute a software instruction for returning control to the microprogram.

発明の実施例 次に、本発明について図面を参照して詳細に説明する。Examples of the invention Next, the present invention will be explained in detail with reference to the drawings.

前述のように、ソフトウェア命令は水平型マイクロ命令
を使用して実行するのに適する第1の命令群と、かかる
実行には不適な第2の命令群とに大別できる。第1の命
令群は第2の命令群に比較してソフトウェアプログラム
に使用される頻度は格段に高い。従って、ソフトウェア
プログラムの実行時間に占める割合は第1の命令群が大
部分で。
As mentioned above, software instructions can be broadly divided into a first group of instructions suitable for execution using horizontal microinstructions 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 execution time of the software program.

第2の命令群がソフトウェアプログラムの実行時間の短
縮に寄与する程度は比較的小である。本発明の方式はこ
れに着目して第2の命令群の取扱いを考え、目的たる主
記憶等の有効利用が図れる様に、また、異なる装置間で
互換性を保っているソフトウェア命令を使用することに
より大幅な設計効率化を図れるようにしたものである。
The degree to which the second instruction group contributes to reducing the execution time of the software program is relatively small. The method of the present invention focuses on this and considers the handling of the second group of instructions, and uses software instructions that maintain compatibility between different devices so that the main memory can be used effectively. This makes it possible to significantly improve design efficiency.

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

また、ざらに、本発明を必要とした背景には、一つのア
ーキテクチャ−で小壁から大型、更に超大型迄作り上げ
るいわゆるコンピュータのシリーズ化が必須であるが、
中φ小型機で性能向上に効果があるファームウェア化が
必ずしも大型機及び超大型機において同様に効果が出る
とは限らない。
Furthermore, the reason behind the necessity of the present invention is that it is essential to create a series of computers that can be built from small walls to large ones, and even ultra-large ones, using one architecture.
Firmware implementation, which is effective in improving performance in small and medium-diameter machines, does not necessarily have the same effect on large and ultra-large machines.

そこで、本発明では、第1の命令群に属するソフトウェ
ア命令(以下第1のソフト命令と総称するンは水平型マ
イクロ命令を使用することとし、第2の命令群に属する
ソフトウェア命令(以下第2のソフト命令と総称する)
は第1の命令群に属するソフトウェア命令で記述したプ
ログラム(以下命令プログラムと呼称する)とする。従
って。
Therefore, in the present invention, software instructions belonging to the first instruction group (hereinafter collectively referred to as "first software instructions") use horizontal microinstructions, and software instructions belonging to the second instruction group (hereinafter "second software instructions") are used. (collectively referred to as soft instructions)
is a program written using software instructions belonging to the first instruction group (hereinafter referred to as an instruction program). Therefore.

第2のソフト命令の実行に肖っては該当する命令プログ
ラムに含まれる複数の第1のソフト命令A。
When executing the second soft instructions, a plurality of first soft instructions A are included in the corresponding instruction program.

すなわちAI、A2.A3等を実行する必要があり、こ
のためにはざらにAI、A2.A3等を構成する複数の
水平型マイクロ命令を実行する必要がある。
That is, AI, A2. It is necessary to execute A3, etc., and for this purpose, roughly AI, A2. It is necessary to execute a plurality of horizontal microinstructions that constitute A3 and the like.

第2のソフト命令はシーケンシャルな処理が多いので水
平型マイクロ命令を使用しても同時には一機能のみの実
行しか行なわれない場合が多い。
Since the second soft instructions often involve sequential processing, even if horizontal microinstructions are used, only one function is often executed at a time.

したがって、垂直型マイクロ命令と同じ使い方になる。Therefore, it can be used in the same way as a vertical microinstruction.

この結果、第2のソフト命令を第1のソフト命令で記述
しても同じ効果を持つ。しかも、前述のバイブ2イン処
理等によりソフトウェア命令の並列処理が行なえるよう
になっているために実行時間はむしろ短縮されるという
方向にある。
As a result, even if the second soft instruction is written as the first soft instruction, the same effect can be obtained. Moreover, since parallel processing of software instructions can be performed through the aforementioned vibe 2-in processing, etc., the execution time is actually becoming shorter.

以上の考え方を実現するためには、従来装置のようにソ
フトウェア命令を解読してマイクロプログラムを実行す
るだけでは不充分である。上記第2のソフト命令を実行
するためには、先ず実行すべきソフトウェア命令を解読
してマイクロプログラム(水平型マイクロ命令により記
述されているンにアクセスし、これから第2の命令に該
当する命令プログラムにアクセスし、さらにこのプログ
ラムの実行のためにマイクロプログラムにアクセスする
等の機能が必要になってくる。
In order to realize the above idea, it is insufficient to simply decipher software instructions and execute microprograms as in conventional devices. In order to execute the second soft instruction, first decode the software instruction to be executed, access the microprogram (written in horizontal microinstructions), and then start the instruction program corresponding to the second instruction. In addition, functions such as accessing microprograms to execute this program are required.

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

図は本発明の方式に従った一実施例のブロック図である
The figure is a block diagram of one embodiment according to the scheme of the present invention.

図を参照すると、本発明の一実施例は、主記憶(MM)
l、  演算回路2.制御記憶回路3.および命令デー
タ7エツチ回路4から構成されている。
Referring to the figure, one embodiment of the present invention has main memory (MM)
l, arithmetic circuit 2. Control memory circuit 3. and instruction data 7 etching circuit 4.

主記憶1には所定の処理を行なうソフトウェアプログラ
ム11と、ソフトウェア命令で記述された複数の命令プ
ログラム群12とが格納されている。演算回路2は制御
記憶回路3により制御され、各種の演算処理を行なうも
のである。制御記憶回路3は、マイクロ命令で記述され
たマイクロプログラムを格納する制御記憶(O8) 3
1.制御記憶31からマイクロ命令を読出し解読して各
部を制御する制御信号を発生する制御記憶制御回路(C
3CNT)34.制御記憶31にアドレスを供給する制
御記憶アドレスレジスタ32およびアドレス加算回路3
3を有する。
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 operations. The control memory circuit 3 is a control memory (O8) 3 that stores a microprogram written in microinstructions.
1. A control memory control circuit (C
3CNT) 34. Control memory address register 32 and address adder circuit 3 that supply addresses to control memory 31
It has 3.

命令フェッチ回路4は、制御記憶制御回路34によりp
aI制御され主記憶1からソフトウェア命令およびデー
タを取出し格納する回路である。前記命令7工ツテ回路
4は、取出した命令を一時格納する命令レジスタ(■几
)41.取出したデータまたは格納すべきデータを一時
格納するデータレジスタ(DB)44.読出すべき命令
のアドレスデータを一時格納する命令カウンタ(IC)
4!5゜命令カウンタ45のアドレスデータを一時退避
する退避レジスタ(SIJ47.次に読出すべき命令の
アドレスを作成するアドレス加算回路46゜読出すべ@
または書込むべきデータのアドレスを作成するアドレス
アダ(ADD)42.およびアドレスを一時格納するア
ドレスレジスタ43を含んでする。
The instruction fetch circuit 4 receives p by the control storage control circuit 34.
This is a circuit that is controlled by aI and retrieves software instructions and data from the main memory 1 and stores them. The seven-instruction circuit 4 includes an instruction register (■几) 41 for temporarily storing the fetched instruction. Data register (DB) 44 for temporarily storing retrieved data or data to be stored. Instruction counter (IC) that temporarily stores address data of instructions to be read
4!5゜Save register (SIJ47) that temporarily saves the address data of the instruction counter 45. Address addition circuit 46゜ that creates the address of the next instruction to be read @
or address adder (ADD) 42. which creates the address of the data to be written. and an address register 43 for temporarily storing addresses.

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

このソフトウェア命令ARKついては従来装置と全く同
じ取扱いが行なわれる。すなわち、命令カウンタ45に
格納されてbるアドレス信号が主記憶1に供給され、当
該アドレス信号の指定するアドレスに格納されているソ
フトウェアプログラム11内の1つの命令が接続線10
1を介して読出し命令レジスタ41に格納される。この
格納された一命令はソフトウェア命令AIである。この
ソフトウェア命令AIKより制御記憶31に格納されて
いるマイクロプログラムを読出す先頭アドレスが制御記
憶アドレスレジスタ32に格納され。
This software instruction ARK is handled exactly the same as in the conventional device. That is, the address signal b stored in the instruction counter 45 is supplied 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 10.
1 and stored in the read command register 41. This stored one instruction is the software instruction AI. The starting address for reading the microprogram stored in the control memory 31 according to this software instruction AIK is stored in the control memory address register 32.

このアドレス信号が、接続線108を介して制御記憶3
1に供給される。この供給に応答して、一連の水平型マ
イクロ命令が読出されて制御記憶制御回路34で解読さ
れ、制御信号が接続a113を介して演算回路2に供給
されソフトウェア命令A1が実行される。この実行にお
いては所要データが主記憶1から読出されたハまた。書
込まれたりする。一方、ソフトウェア命令Ax[より次
なる命令のアドレスがアドレス加算回路46にょ9作成
され、命令カウンタ45に格納される。マイクロ命令に
よるソフトウェア命令A1の実行が完了すると、制御記
憶制御回路34から次なる命令の要求が出され、命令カ
ウンタ45に格納されているアドレス信号を主記憶1に
供給されて、以下上述の動作が繰返される。このように
して複数の第1の命令群に属するソフトウェア命令AI
 。
This address signal is transmitted to the control memory 3 via the connection line 108.
1. In response to this application, a series of horizontal microinstructions are read out and decoded by the control storage control circuit 34, and a control signal is provided to the arithmetic circuit 2 via connection a113 to execute the software instruction A1. In this execution, the required data is read out from the main memory 1. It may be written. On the other hand, the address of the next instruction from the software instruction Ax is created by the address addition circuit 46 and stored in the instruction counter 45. When the execution of the software instruction A1 by the microinstruction is completed, a request for the next instruction is issued from the control memory control circuit 34, the address signal stored in the instruction counter 45 is supplied to the main memory 1, and the above-mentioned operation is performed. is repeated. In this way, the software instructions AI belonging to the plurality of first instruction groups
.

A2 、  ・・・、Allの実行が行なわれる。A2, . . . , All are executed.

次に、第2の命令群に属するソフトウェア命令Blの場
合について説明する。命令カウンタ45のアドレス信号
により主記憶1のソフトウェアプログラム11から読出
され命令レジスタ41に格納された命令はソフトウェア
命令B1である。ソフトウェアBlにより次なる命令の
アドレスが上記ソフトウェア命令A1と同様にして命令
カウンタ45に格納される。さらに、ソフトウェア命令
Blにより指定される制御記憶31のアドレスが接続線
105を介して制御記憶アドレスレジスタ32を経て制
御記憶31に供給され、当該アドレスに格納されている
マイクロ命令が読出される。
Next, the case of the software instruction Bl belonging to the second instruction group will be explained. The instruction read from the software program 11 in the main memory 1 and stored in the instruction register 41 according to the address signal of the instruction counter 45 is the software instruction B1. The address of the next instruction is stored in the instruction counter 45 by the software B1 in the same manner as the software instruction A1. Furthermore, the address of the control memory 31 designated by the software instruction Bl is supplied to the control memory 31 via the control memory address register 32 via the connection line 105, and the microinstruction stored at the address is read out.

ソフトウェア命令B1により読出されたマイクロ命令の
実行する制御動作では、制御信号を発生して命令カウン
タ45にあるアドレスデータが退避レジスタ47に一時
格納され、その後制御記憶制御回路34から供給される
アドレスデータが接続線111 を介して命令カウンタ
に格納される。次に、主記憶lに当該アドレステータが
供給されて該アドレスに格納しであるソフトウェアB1
に対しする命令プログラムが読出される。該アドレスは
ソフトウェア命令B1に特定されるアドレスであり、ソ
フトウェア命令Blをソフトウェア命令Aで記述した命
令プログラムを格納している主記憶エリアの先頭アドレ
スである。
In the control operation executed by the microinstruction read out by the software instruction B1, a control signal is generated and the address data in the instruction counter 45 is temporarily stored in the save register 47, and then the address data supplied from the control storage control circuit 34 is stored in the instruction counter via connection line 111. Next, the address data is supplied to the main memory l and stored at the address, which is the software B1.
The instruction program for is read out. This address is specified by the software instruction B1, and is the start address of the main memory area in which an instruction program in which the software instruction B1 is written as the software instruction A is stored.

このようにして前記マイクロ命令により主記憶1に格納
されている命令グログ2ム群12がアクセスされ、所定
のアドレスからソフトウェア命令131 fソフトウェ
ア命令Aで記述した命令プログラムの最初の命令A1が
取出され、命令レジスゲ41に格納される。命令AIは
第1の種類の命令群に属するソフトウェア命令であり、
前述と同様にして制御記憶31に格納されている水平型
マイクロ命令により実行される。以下、ソフトウェア命
令B1に対応する命令プログラムを構成するソフトウェ
ア命令A ’ + ’ + A ’ + 2+ ・・・
+ ’ A ’ 十mが順次読出されて同様に実行され
る。最後に、ソフトウェア命令Blに対応する(場合に
よっては命令プログラム群共通の)命令プログラムの最
後のソフトウェア命令Aoが読出され、命令レジスタ4
1に格納される。ソフトウェア命令AOに相当する制御
記憶31に格納されているマイクロ命令の実行する制御
動作では、・ff1j御信号が発生されて退避レジスタ
47に一時格納されていたアドレスデータが命令カウン
タ45に移される。当該アドレスデータが主記憶1に供
給されて該アドレスに格納しであるソフトウェアプログ
ラム11の次の命令が読出される。これとともに、後続
するソフトウェアブロク2ム上の命令が順次実行するた
めのマイクロ命令制御に戻る。退避レジスタ47に格納
されていたアドレスデータは、ソフトウェア命令B1に
続く命令の格納しであるアドレスであるので、読出され
た命令はソフトウェアBlに続いて実行すべき命令とな
る。
In this way, the instruction log group 12 stored in the main memory 1 is accessed by the microinstruction, and the first instruction A1 of the instruction program written in the software instruction 131 f software instruction A is retrieved from a predetermined address. , are stored in the instruction register 41. The instruction AI is a software instruction belonging to the first type of instruction group,
This is executed by horizontal microinstructions stored in the control memory 31 in the same manner as described above. Below, software instructions A' + ' + A ' + 2+ . . . constitute an instruction program corresponding to software instruction B1.
+ 'A' 10m are sequentially read out and executed in the same way. Finally, the last software instruction Ao of the instruction program (common to a group of instruction programs in some cases) corresponding to the software instruction Bl is read out, and the instruction register 4 is read out.
It is stored in 1. In the control operation executed by the microinstruction stored in the control memory 31 corresponding to the software instruction AO, the ff1j control signal is generated and the address data temporarily stored in the save register 47 is transferred to the instruction counter 45. The address data is supplied to the main memory 1, and the next instruction of the software program 11 stored at the address is read out. At the same time, the control returns to microinstruction control for sequentially executing instructions on subsequent software blocks. Since the address data stored in the save register 47 is the address at which the instruction following the software instruction B1 is stored, the read instruction becomes an instruction to be executed following the software instruction B1.

以上のように、第1の種類のソフトウェア命令に属する
第1のソフト命令へに対しては、従来通ジ高度に水平化
したマイクロ命令を使用して実行する。また、第2の種
類のソフトウェア命令に属する第2のソフト命令Bに対
しては第1のソフト命令へで記述した命令プログラムと
して主記憶1に格納しておき、ン7トウェア命QB、に
よるマイクロ命令M1.で命令カウンタ45のアドレス
を一時退避させて該当する命令プログラムにアクセスし
て実行する。その最後のソフトウェア命令An でマイ
クロ命令MIOを実行してB、に続くソフトウェア命令
の実行に戻る。
As described above, the first soft instruction belonging to the first type of software instruction is conventionally executed using highly leveled microinstructions. Further, the second software instruction B belonging to the second type of software instruction is stored in the main memory 1 as an instruction program written in the first software instruction, Command M1. The address of the instruction counter 45 is temporarily saved, and the corresponding instruction program is accessed and executed. The last software instruction An executes the microinstruction MIO and returns to the execution of the software instructions following B.

発明の効果 このようにすることにより、制御記憶31内に格納され
る効率の悪い水平型マイクロ命令の数は格段に減少して
制御記憶31を効率良く使用することができる。
Effects of the Invention 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の種類のソフトウェア命令群をマイクロプロ
グラム化した場合には、同一アーキテクチャで設計され
ても計算機システムが異なれば当該マイクロプログラム
と異なり各システム毎に設計しなければならない。しか
し、命令プログラム化すれば、ソフトウェア命令で記述
されているの−で極めて互換性に富むものとな9、−回
の設計で済むことになる。
Furthermore, when the second type of software instruction group is made into a microprogram, even if the computer system is designed with the same architecture, if the computer system is different, the microprogram will be different and must be designed for each system. However, if it is made into an instruction program, it will be extremely compatible since it is written using software instructions, and it will only require 9,000 designs.

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

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

図は、本発明の一実施例を示す図である。 図において、■・・・・・・主起[(MM)、2・・・
・・・演算回路、3・・・・・・制御記憶回路、4・−
・・・・命令データフェッチ回路、11・・・・・・ソ
フトウェアプログ2ム、12・・・・−・命令プログラ
ム、31・・・・・・制御記憶(C8)、32・・・・
・・制御記憶アドレスレジスタ(8A几) 、  33
−・−・アドレス加算回路(十mL  34・・・・−
・制御記憶制御回路(C8CNTハ 41・・・・・・
命令レジスタ(IkL)、42・・・・・・アドレスア
ダ(ADD)、43・−・・・アドレスレジスタ(AH
)、44・・・・・・データレジスタ(D几)、45・
−・・・・命令カウンタ(I几ハ 46 ・−−−−・
アドレス加算回路(+n)、47−・−・退避レジスタ
<sn)、101〜116−・・・・接続線。
The figure is a diagram showing an embodiment of the present invention. In the figure, ■... Main origin [(MM), 2...
...Arithmetic circuit, 3...Control memory circuit, 4.-
...Instruction data fetch circuit, 11...Software program 2, 12...-Instruction program, 31...Control memory (C8), 32...
...Control storage address register (8A), 33
−・−・Address addition circuit (10mL 34・・・・−
・Control memory control circuit (C8CNT 41...
Instruction register (IkL), 42... Address adder (ADD), 43... Address register (AH
), 44... Data register (D), 45.
--- Instruction counter (I 几は 46 ・-----
Address addition circuit (+n), 47-... Save register <sn), 101-116-... Connection line.

Claims (1)

【特許請求の範囲】 制御記憶および主記憶の少なくとも一方に格納されたマ
イクロプログラムにより制御されるデータ処理装置のマ
イクロプログラム制御方式において、 前記主記憶には、第1の種類のソフトウェア命令群と第
2の種類のソフトウェア命令群とを含むソフトウェアプ
ログラムと、前記第2の種類のソフトウェア命令群のそ
れぞれの命令の機能の少なくとも一部を前記第1の種類
のソフトウェア命令群により構成した命令プログラムと
を格納し、前記主記憶から読出されたノアトウエア命令
が第1の種類のソフトウェア命令群に属する場合には前
記制御記憶および主記憶の少なくとも一方に格納されて
いる前記マイクロプログラムにより該命令の実行制御を
行ない、 前記主記憶から読出されたノアトウエア命令が第2の種
類のソフトウェア命令群に属する場合には該命令の少な
くとも一部の機能に対応する前記命令プログラムの実行
を開始し、 前記命令プログラムの実行終了時には前記マイクロプロ
グラムを再び起動し、制御をマイクロプログラムに戻す
ためのソフトウェア命令を実行することを特徴とするマ
イクロプログラム制御方式。
[Scope of Claim] In a microprogram control method for a data processing device controlled by a microprogram stored in at least one of a control memory and a main memory, the main memory includes a first type of software instruction group and a second type of software instruction group. a software program including a second type of software instruction group; and an instruction program in which at least a part of the function of each instruction of the second type of software instruction group is configured by the first type of software instruction group. If the no-aware instruction stored and read from the main memory belongs to a first type of software instruction group, the execution of the instruction is controlled by the microprogram stored in at least one of the control memory and the main memory. and if the no-aware instruction read from the main memory belongs to a second type of software instruction group, start execution of the instruction program corresponding to at least a part of the function of the instruction, and execute the instruction program. A microprogram control method characterized in that upon termination, the microprogram is restarted and a software instruction is executed to return control to the microprogram.
JP7330183A 1983-04-26 1983-04-26 Microprogram control system Pending JPS59200345A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP7330183A JPS59200345A (en) 1983-04-26 1983-04-26 Microprogram control system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP7330183A JPS59200345A (en) 1983-04-26 1983-04-26 Microprogram control system

Publications (1)

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

Family

ID=13514197

Family Applications (1)

Application Number Title Priority Date Filing Date
JP7330183A Pending JPS59200345A (en) 1983-04-26 1983-04-26 Microprogram control system

Country Status (1)

Country Link
JP (1) JPS59200345A (en)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS54155744A (en) * 1978-05-29 1979-12-08 Nec Corp Microprogram control system
JPS5617402A (en) * 1979-07-24 1981-02-19 Toshiba Corp Programmable sequence controller
JPS5621237A (en) * 1979-07-30 1981-02-27 Fujitsu Ltd Information processor
JPS56124952A (en) * 1980-02-20 1981-09-30 Fujitsu Ltd Information processing equipment

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS54155744A (en) * 1978-05-29 1979-12-08 Nec Corp Microprogram control system
JPS5617402A (en) * 1979-07-24 1981-02-19 Toshiba Corp Programmable sequence controller
JPS5621237A (en) * 1979-07-30 1981-02-27 Fujitsu Ltd Information processor
JPS56124952A (en) * 1980-02-20 1981-09-30 Fujitsu Ltd Information processing equipment

Similar Documents

Publication Publication Date Title
US3781810A (en) Scheme for saving and restoring register contents in a data processor
CA1264493A1 (en) Digital computer with parallel processors
WO2023103296A1 (en) Write data cache method and system, device, and storage medium
CN1983196A (en) System and method for grouping execution threads
JPH01269142A (en) Buffer memory control system
US10705993B2 (en) Programming and controlling compute units in an integrated circuit
JPH07114498A (en) Microprocessor
JPS59200345A (en) Microprogram control system
JPS601655B2 (en) Data prefetch method
JPH0133856B2 (en)
JPS615357A (en) Data processor
JPS6336023B2 (en)
JPS61184643A (en) Starting control system for virtual computer
JP2895892B2 (en) Data processing device
JPH07152574A (en) Program loading system
JPH11345134A (en) Operating system
JPH0363822A (en) Computer control system
JPS60215250A (en) Data processor
CN117112136A (en) Interrupt virtualization method, device, operating system, equipment and storage medium
JPS59212957A (en) Microprogram controller
JPS59200346A (en) Microprogram controller
US20150058505A1 (en) Method for operating a buffer memory of a data processing system and data processing system
JPH02109128A (en) Computer system
JPS6149695B2 (en)
JPS59177631A (en) Dma control system