JPH04152431A - High speed operating method for horizontal processor - Google Patents

High speed operating method for horizontal processor

Info

Publication number
JPH04152431A
JPH04152431A JP27852890A JP27852890A JPH04152431A JP H04152431 A JPH04152431 A JP H04152431A JP 27852890 A JP27852890 A JP 27852890A JP 27852890 A JP27852890 A JP 27852890A JP H04152431 A JPH04152431 A JP H04152431A
Authority
JP
Japan
Prior art keywords
decoding
control memory
section
instruction
processor
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
JP27852890A
Other languages
Japanese (ja)
Inventor
Hideaki Tsuchiya
土谷 秀章
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP27852890A priority Critical patent/JPH04152431A/en
Publication of JPH04152431A publication Critical patent/JPH04152431A/en
Pending legal-status Critical Current

Links

Abstract

PURPOSE:To shorten the decoding time and to increase the operating speed of e horizontal. processor by predecoding all fields and storing them in a control memory. CONSTITUTION:An instruction decoder 18 decodes the fields F2-F5 and F8 which are stored in a main control memory 14a and gives the decoding results f2-f5 and f8 to a control circuit 19. Meanwhile the decoding results f1-f6 and f7 stored in a shadow memory 14b are given to the circuit 19 as they are. The circuit 19 prepares a control signal 20 from all received results f1-f8 and controls each part of a horizontal processor.

Description

【発明の詳細な説明】 〔概要) 水平型プロセッサのデータ処理速度を、既存のマイクロ
プログラムとの互換性を保ちながら高速化するための方
法に関し、 既存のソフトウェア資源やデータ資源をそのまま使用す
ることが可能で高速作動するプロセッサを実現すること
を目的とし、 コード化した水平型のマイクロ命令を制御メモリ部に記
憶しておき、該マイクロ命令を命令デコード部が読み出
してデコードし、該デコード結果に基づいて命令実行部
が制御され、命令を実行するマイクロプログラム制御方
式の水平型プロセッサにおいて、 マイクロプログラムを制御メモリ部にローディングする
際に、前記命令デコード部と同一のデコード機能を有す
るプリデコード部で、該マイクロプログラムを予めデコ
ードしてから該制御メモリ部にローディングし、命令実
行部が命令を実行する場合は、前記制御メモリ部に記憶
されたデコード結果によって制御されて作動するよう構
成する。
[Detailed Description of the Invention] [Summary] A method for increasing the data processing speed of a horizontal processor while maintaining compatibility with existing microprograms, using existing software and data resources as they are. The aim is to realize a processor that is capable of high-speed operation and stores coded horizontal micro-instructions in a control memory section, and an instruction decoding section reads and decodes the micro-instructions, and uses the decoded results as a processor. In a microprogram-controlled horizontal processor in which the instruction execution unit is controlled based on the instruction execution unit and executes instructions, when loading the microprogram into the control memory unit, a pre-decode unit having the same decoding function as the instruction decode unit , the microprogram is decoded in advance and then loaded into the control memory section, and when the instruction execution section executes an instruction, it is configured to operate under the control of the decoding result stored in the control memory section.

[産業上の利用分野] 本発明は、水平型プロセッサのデータ処理速度を、既存
のマイクロプログラムとの互換性を保ちながら高速化す
るための方法に関する。
[Industrial Application Field] The present invention relates to a method for increasing the data processing speed of a horizontal processor while maintaining compatibility with existing microprograms.

マイクロプログラム制御方式のプロセッサには、プロセ
ッサが実行する命令語の長さが命令の種類にかかわらず
常に一定である水平型プロセッサと、命令語の長さが命
令の種類によって変化する垂直型プロセッサとがある。
There are two types of microprogram-controlled processors: horizontal processors, in which the length of the instruction word executed by the processor is always constant regardless of the type of instruction, and vertical processors, in which the length of the instruction word changes depending on the type of instruction. There is.

水平型プロセッサは、マイクロプログラムを記憶してお
く制御メモリの容量が垂直型プロセッサと比較して大き
くなる。反面、データの処理速度は水平型プロセッサの
方が速く、高速でデータ処理を行いたい場合に通してい
る。
Horizontal processors have a larger control memory capacity for storing microprograms than vertical processors. On the other hand, horizontal processors are faster when processing data, and are used when high-speed data processing is desired.

ところで、データ処理速度の高速化に対する社会的要求
は止まるところを知らず、−要処理速度を高速化したプ
ロセッサが次々と開発・設計されて出現している。
By the way, there is no end to the social demand for faster data processing speeds, and processors with faster processing speeds are being developed and designed one after another.

しかし、新たに開発・設計されたプロセッサが、既存の
プロセッサとの間においてプログラムの互換性を有して
いないと、それまでに開発され利用されて来たプログラ
ム資源やデータ資源を捨て去ってしまうことになる。
However, if a newly developed or designed processor is not program-compatible with existing processors, the program resources and data resources that have been developed and used up to that point will be discarded. become.

そのため、プログラムの互換性を保ちつつデータ処理速
度を高速化するための方法が求められている。
Therefore, there is a need for a method for increasing data processing speed while maintaining program compatibility.

本発明においては、特にマイクロプログラム制御方式の
水平型プロセッサにおいて、データ処理速度を高速化す
る方法に関するものである。
The present invention particularly relates to a method for increasing data processing speed in a microprogram-controlled horizontal processor.

〔従来の技術] マイクロプログラム制御方式の水平型プロセッサは、水
平型マイクロ命令によって制御され作動する。
[Prior Art] A microprogram-controlled horizontal processor is controlled and operated by horizontal microinstructions.

第4図は、水平型マイクロ命令の形式を説明する図、で
ある。
FIG. 4 is a diagram illustrating the format of horizontal microinstructions.

すなわち、水平型マイクロ命令(以降、単にマイクロ命
令と呼称する。)は、同図に示すように全体がnビット
で固定であり、その中を使用目的別にいくつかに区画し
て1つの命令語Mを構成している。尚、各区画F、、F
□、F3.・・・はフィールドである。
In other words, a horizontal microinstruction (hereinafter simply referred to as a microinstruction) has a fixed number of n bits as a whole, as shown in the figure, and it is divided into several parts according to the purpose of use and is divided into one instruction word. It constitutes M. In addition, each section F,,F
□, F3. ... is a field.

そして、各フィールドFl+FZ+F3.・・・の内部
には、プロセッサを制御する上で必要な情報がコード化
されて格納されており、これらのコードはプロセッサが
命令実行時にデコード(解読)し、最終的に必要な2進
情報を得ている。
Then, each field Fl+FZ+F3. ...The information necessary to control the processor is stored in coded form, and these codes are decoded (deciphered) by the processor when executing instructions, and finally the necessary binary information is stored. I am getting .

例えば、各フィールドF++F2+h+ ・・・にはA
LU(ARITHMETICAND LOGICUNI
T)の演算指定情報や、入力バス指定情報、出力バス指
定情報、等々が割当られている。
For example, for each field F++F2+h+...
LU(ARITHMETICAND LOGICUNI
T) calculation designation information, input bus designation information, output bus designation information, etc. are assigned.

ところで、各フィールドFl+h+F:I+ ・・・の
コードをデコードするには一定の時間が必要である。し
たがって、各フィールドFl+F2+h+ ・・・内の
全ての情報が2進数により表現されていれば、理論的に
は最も高速に作動するプロセッサを実現することができ
る。
By the way, a certain amount of time is required to decode the code of each field Fl+h+F:I+. Therefore, if all the information in each field Fl+F2+h+ . . . is expressed in binary numbers, it is theoretically possible to realize a processor that operates at the highest speed.

しかし、各フィールドFI+h+Fy+ ・・・内の全
ての情報を2進数で表現すると、1命令当たりの語長が
大変に長くなり、命令を格納・記憶しておく大容量の制
御メモリが必要となる。
However, if all the information in each field FI+h+Fy+ .

そのため、通常は、プロセッサの処理速度をある程度犠
牲にして、各フィールドF+Jz+F3+ ・・・内に
コード化した情報を記憶させ、命令実行時にデコードし
て目的の2進情報を得ている。
Therefore, usually, the processing speed of the processor is sacrificed to some extent to store coded information in each field F+Jz+F3+ . . . and decode it at the time of instruction execution to obtain the desired binary information.

すなわち、コード化する理由は、マイクロ命令の語長を
短くするためであると言える。
In other words, it can be said that the reason for encoding is to shorten the word length of the microinstruction.

次に、マイクロプログラム制御方式のプロセッサについ
て説明する。
Next, a microprogram control type processor will be explained.

第5図は、プロセッサの基本的構成を説明するブロック
図、である。尚、同図においては、プロセッサの制御回
路等を省略して記載している。
FIG. 5 is a block diagram illustrating the basic configuration of the processor. Note that, in the figure, the control circuit of the processor and the like are omitted.

すなわち、コード化したマイクロ命令が制御メモリ部3
に記憶させてあり、該マイクロ命令を命令デコード部5
が読み出してデコードし、該デコード結果に基づいて命
令実行部6が制御され、命令を実行する仕組みである。
That is, the coded microinstruction is stored in the control memory section 3.
The micro instructions are stored in the instruction decoding section 5.
reads and decodes it, and the instruction execution unit 6 is controlled based on the decoding result to execute the instruction.

尚、フロッピィディスク2からマイクロプログラムを制
御メモリ3ヘローデイングするのがブートローダ部lで
あり、プロセッサ4がデータの入出力を行うのが110
部7である。
The bootloader section 1 loads the microprogram from the floppy disk 2 into the control memory 3, and the section 110 inputs and outputs data to the processor 4.
This is part 7.

第6図は、一部に2進情報を含むマイクロ命令を使用す
るプロセッサを説明するブロック図、である。
FIG. 6 is a block diagram illustrating a processor that uses microinstructions that partially include binary information.

すなわち、高速化が必要なフィールドを2進情報で表現
し、高速化が不要なフィールドはコード化して表現した
マイクロ命令を使用するプロセッサである。
That is, the processor uses microinstructions that express fields that require speeding up using binary information, and encode and represent fields that do not need speeding up.

つまり、マイクロ命令がコード化されている場合に、デ
コードに長い時間を要するフィールドを2進情報で表現
し、デコード時間を短時間化したプロセッサである。
In other words, it is a processor that expresses fields that require a long time to decode in binary information when microinstructions are coded, thereby reducing the decoding time.

したがって、制御メモリ部3に記憶しであるマイクロ命
令のうち、コード化したフィールドを命令デコード部9
が読み出してデコードし、該デコード結果に基づいて命
令実行部10を制御すると共に、2進情報表現のフィー
ルドはそのまま読み出して該命令実行部10を制御する
仕組みである。
Therefore, the coded fields of the microinstructions stored in the control memory unit 3 are stored in the instruction decoding unit 9.
reads out and decodes it, and controls the instruction execution unit 10 based on the decoding result, and also reads out the binary information representation field as it is to control the instruction execution unit 10.

尚、同図において、制御メモリ部3に記憶しであるマイ
クロ命令はパラレル出力で読み出される。
In the figure, the microinstructions stored in the control memory section 3 are read out in parallel output.

〔発明が解決しようとする課題] 第6図に示す水平型プロセッサ8は、第5図に示す水平
型プロセッサ4よりも高速で作動する。
[Problems to be Solved by the Invention] The horizontal processor 8 shown in FIG. 6 operates at a higher speed than the horizontal processor 4 shown in FIG.

しかし、マイクロ命令レヘルでの互換性は全く無い。However, there is no compatibility at all at the microinstruction level.

すなわち、第5図の水平型プロセッサ4は、全てコード
化したマイクロ命令を用いているが、第6図の水平型プ
ロセッサ8は、一部に2進情報表現を用いたフィールド
を有するマイクロ命令を用いている為である。
That is, while the horizontal processor 4 in FIG. 5 uses coded microinstructions, the horizontal processor 8 in FIG. 6 uses microinstructions that partially have fields using binary information representation. This is because it is used.

そのため、第6図に示す水平型プロセッサ8を第5図に
示す水平型プロセッサ4と入れ換え、データ処理速度の
高速化を図ることはできない。
Therefore, it is not possible to increase the data processing speed by replacing the horizontal processor 8 shown in FIG. 6 with the horizontal processor 4 shown in FIG. 5.

すなわち、マイクロプログラムの互換性が得られず、そ
れまでに歴史的に蓄積してきた貴重なソフトウェア資源
とデータ資源とを、捨て去ることになるからである。
In other words, microprogram compatibility cannot be obtained, and valuable software and data resources that have been historically accumulated up to that point will be thrown away.

ところで、プロセッサ4およびフ゛ロセッサ8自身は機
械語で作動するが、プロセッサを作動させるためのプロ
グラムが高級言語等のソースコードで提供されていて、
プロセッサが命令を実行する毎に該ソースコードを翻訳
して機械語を得、該機械語の命令を実行するようなプロ
セッサでは、マイクロ命令に変更を加えて高速化したプ
ロセッサに交換しても、ソースコードを翻訳するための
コンパイラやクロスアセンブラをユーザに再提供するこ
とで、ソフトウェアの互換性を維持することができる。
Incidentally, although the processor 4 and the processor 8 themselves operate in machine language, the program for operating the processors is provided as source code in a high-level language or the like.
In a processor that translates the source code to obtain machine language each time the processor executes an instruction, and executes the instruction in the machine language, even if the processor is replaced with a faster processor by changing the microinstructions, By re-providing users with compilers and cross-assemblers for translating source code, software compatibility can be maintained.

しかし、翻訳後の機械語でしかプログラムを処理できな
いプロセッサにおいては、ユーザが持っている全てのソ
ースコードを再翻訳して提供する必要があり、膨大な作
業量となる為に現実的には殆ど不可能である。
However, for processors that can only process programs in translated machine language, it is necessary to retranslate and provide all the source code that the user has, which is a huge amount of work, so in reality it is almost impossible to do so. It's impossible.

本発明の技術的課題は、水平型プロセッサのデータ処理
速度を高速化する上での以上のような問題を解消し、マ
イクロ命令のデコード時間を短縮してデータ処理速度を
高速化する方法を確立することによって、機械語の変更
を要せず、ソフトウェアの互換性を維持したままプロセ
ッサの高速化を図り、既存のソフトウェア資源やデータ
資源をそのまま使用することが可能で高速作動するプロ
セッサを実現することにある。
The technical problem of the present invention is to solve the above-mentioned problems in increasing the data processing speed of a horizontal processor, and to establish a method for shortening the decoding time of microinstructions and increasing the data processing speed. By doing so, we can speed up the processor while maintaining software compatibility without changing the machine language, and realize a processor that operates at high speed and can use existing software and data resources as is. There is a particular thing.

〔課題を解決するための手段〕[Means to solve the problem]

第1図(a) (b)は、本発明の基本原理を説明する
ブロック図、である。
FIGS. 1(a) and 1(b) are block diagrams illustrating the basic principle of the present invention.

本発明は、マイクロプログラムを予めデコードしてから
制御メモリに記憶させておくところに特徴がある。
The present invention is characterized in that the microprogram is decoded in advance and then stored in the control memory.

すなわち、コード化した水平型のマイクロ命令を制御メ
モリ部に記憶しておき、該マイクロ命令を命令デコード
部5が読み出してデコードし、該デコード結果に基づい
て命令実行部6が制御され、命令を実行するマイクロプ
ログラム制御方式の水平型プロセッサ4において、次の
ように構成して高速化する。
That is, coded horizontal micro-instructions are stored in the control memory section, the instruction decoding section 5 reads and decodes the micro-instructions, and the instruction execution section 6 is controlled based on the decoding result to execute the instructions. The microprogram-controlled horizontal processor 4 is configured as follows to increase speed.

最初に、第1の方法を説明する。(第1図(a))すな
わち、マイクロプログラムを制御メモリ部3Aにローデ
ィングする際に、前記命令デコード部5と同一のデコー
ド機能を有するプリデコード部11aで、該マイクロプ
ログラムを予めデコードしてから該制御メモリ部3Aに
ローディングし、命令実行部6が命令を実行する場合は
、前記制御メモリ部3Aに記憶されたデコード結果によ
って制御されて作動する高速化方法である。
First, the first method will be explained. (FIG. 1(a)) That is, when loading a microprogram into the control memory section 3A, the microprogram is decoded in advance by a pre-decoding section 11a having the same decoding function as the instruction decoding section 5. When loading the instruction into the control memory section 3A and the instruction execution section 6 executes the instruction, this is a high-speed method in which the operation is controlled by the decoding result stored in the control memory section 3A.

次に、第2の方法を説明する。(第1図(b))すなわ
ち、マイクロプログラムを記憶させるために、第1制御
メモリ部3aと第2制御メモリ部3bとの二つの部分か
ら成る制御メモリ部3Bを用意し、マイクロプログラム
を前記制御メモリ部3Bにコーディングする際は、前記
命令デコード部5と同一のデコード機能を有するプリデ
コード部11bで、マイクロ命令の必要とするフィール
ド、つまりマイクロ命令のデコードに比較的長い時間を
要するフィールドを、予めデコードしてから一方の第2
制御メモリ部3bにローディングし、デコードを行わな
いフィールドは他方の第1制御メモリ部3aにローディ
ングし、命令実行部6が命令を実行する場合は、前記命
令デコード部5が前記第1制御メモリ部3aを読み出し
てデコードしたデコード結果と、前記第2制御メモリ部
3bに記憶されたデコード結果とによって制御されて作
動する高速化方法である。
Next, the second method will be explained. (FIG. 1(b)) That is, in order to store the microprogram, a control memory section 3B consisting of two parts, a first control memory section 3a and a second control memory section 3b, is prepared, and the microprogram is stored in the control memory section 3B. When coding in the control memory section 3B, the pre-decoding section 11b, which has the same decoding function as the instruction decoding section 5, codes the fields required by the microinstruction, that is, the fields that require a relatively long time to decode the microinstruction. , pre-decode one second
Fields to be loaded into the control memory section 3b and not to be decoded are loaded into the other first control memory section 3a, and when the instruction execution section 6 executes an instruction, the instruction decoding section 5 is loaded into the first control memory section 3a. 3a and the decoding result stored in the second control memory section 3b.

尚、マイクロプログラムのローディングを行うのがブー
トローダ部1aであり、プロセッサ4がデータの入出力
を行うのが110部7である。
The boot loader section 1a loads the microprogram, and the processor 4 inputs and outputs data to the 110 section 7.

C作用〕 第1の方法の場合、制御メモリ3Aにはマイクロ命令の
デコード結果が記憶されている。
C Effect] In the case of the first method, the control memory 3A stores the decoding results of the microinstructions.

したがって、命令実行部6がマイクロ命令に基づいて作
動する場合は、命令デコード部5によるデコード作業が
不要である。
Therefore, when the instruction execution section 6 operates based on a microinstruction, the decoding operation by the instruction decoding section 5 is not necessary.

そのため、命令実行部6は、制御メモリ3Aに記憶され
ているマイクロ命令に基づいて即座に制御されて作動す
ることができる。
Therefore, the instruction execution unit 6 can be immediately controlled and operated based on the microinstructions stored in the control memory 3A.

その結果、マイクロ命令のデコード時間に相当する分だ
け、プロセッサ4のデータ処理速度が高速化する。
As a result, the data processing speed of the processor 4 is increased by an amount corresponding to the decoding time of the microinstruction.

また、プリデコード部11aは命令デコード部5と同一
のデコード機能を有するため、プログラムの互換性が保
たれる。
Further, since the pre-decoding section 11a has the same decoding function as the instruction decoding section 5, program compatibility is maintained.

第2の方法の場合、第2制御メモリ3bには、マイクロ
命令のデコードに比較的長い時間を要するフィールドの
デコード結果が記憶しである。また、それ程デコード時
間を要しないフィールドは、そのまま第1制御メモリ部
3aに記憶しである。
In the case of the second method, the second control memory 3b stores the decoding results of fields that require a relatively long time to decode microinstructions. Further, fields that do not require much decoding time are stored as they are in the first control memory section 3a.

したがって、命令デコード部5がマイクロ命令をデコー
ドする時は、比較的短時間でデコードが完了する。すな
わち、デコード時間の長いフィールドはプリデコード部
11bが予めデコードを完了し、そのデコード結果を第
2制御メモリ部3bに記憶しているからである。
Therefore, when the instruction decoding unit 5 decodes a microinstruction, the decoding is completed in a relatively short time. That is, this is because the pre-decoding section 11b completes the decoding of the field that requires a long decoding time in advance, and stores the decoding result in the second control memory section 3b.

そのため、命令実行部6は、命令デコード部5のデコー
ド完了時点で、該デコード結果と第2制御メモリ部3b
の記憶内容とに基づいて制御されて作動することができ
る。
Therefore, when the instruction decoding section 5 completes decoding, the instruction execution section 6 stores the decoding result and the second control memory section 3b.
It can be controlled and operated based on the memory contents of.

その結果、命令デコード部5のデコード時間が短縮され
た分だけ、プロセッサ4のデータ処理速度が高速化する
As a result, the data processing speed of the processor 4 is increased by the amount that the decoding time of the instruction decoding section 5 is shortened.

また、プリデコード部11bは命令デコード部5と同一
のデコード機能を有するため、プログラムの互換性が保
たれる。
Furthermore, since the pre-decoding section 11b has the same decoding function as the instruction decoding section 5, program compatibility is maintained.

[実施例] 次に、本発明による方法を実際上どのように具体化でき
るかを、実施例で説明する。
[Examples] Next, examples will explain how the method according to the invention can be implemented in practice.

(1)構成 第2図は、実施例を説明するブロック図、である。(1) Configuration FIG. 2 is a block diagram explaining the embodiment.

すなわち、本実施例のプロセッサ15は、演算を行うA
LU24やアキュムレータ22,23 、汎用レジスタ
、プログラムカウンタ、スタックポインタ等を有するレ
ジスタ群25、データバスバッファ27、が内部ハス1
6に接続されている。
That is, the processor 15 of this embodiment performs the calculation
The internal bus 1 includes an LU 24, accumulators 22 and 23, a register group 25 including general-purpose registers, a program counter, a stack pointer, etc., and a data bus buffer 27.
6.

一方、前記各部を制御する制御回路19が有り、命令レ
ジスタ17にフェッチしたマイクロ命令を命令デコーダ
18がデコードし、該デコード結果に基づいて前記制御
回路19が各部を制御する。
On the other hand, there is a control circuit 19 that controls each section, an instruction decoder 18 decodes the microinstruction fetched into the instruction register 17, and the control circuit 19 controls each section based on the decoding result.

他方、マイクロプログラムを格納・記憶する制御メモリ
14は、主制御メモリ14a とシャドウメモ+J14
bとから成り、メモリ素子としては読み出し時間の短い
RA M  (RANDOM ACCSESS ME門
0RY)を使用する。尚、シャドウメモリなる名称は、
プログラマにとって全く意識されないメモリである所か
ら名付けた名称である。
On the other hand, the control memory 14 that stores and stores microprograms includes a main control memory 14a and a shadow memory +J14.
RAM (RANDOM ACCESS ME gate 0RY), which has a short read time, is used as the memory element. The name Shadow Memory is
The name comes from the fact that it is a type of memory that programmers are completely unaware of.

また、マイクロプログラムを前記制御メモリ14にコー
ディングする部分がブートローダ12であり、フロッピ
ィディスク2からロードする。そして、命令語のフィー
ルドのうち、デコード時間の長いフィールドはプリデコ
ーダ13でデコードしてからシャドウメモリ14bに格
納・記憶し、その他のフィールドはそのまま主制御メモ
リ14に格納・記憶する。
The boot loader 12 is the part that codes the microprogram in the control memory 14, and is loaded from the floppy disk 2. Of the instruction word fields, the fields that require a long decoding time are decoded by the predecoder 13 and then stored in the shadow memory 14b, and the other fields are stored in the main control memory 14 as they are.

尚、プリデコーダ13は、デコードするフィールドに対
して前記命令デコーダ18と同一のデコード機能を有し
ている。
Note that the predecoder 13 has the same decoding function as the instruction decoder 18 for the field to be decoded.

(2)作動 第3図は、実施例の主要部分の作動を説明するブロック
図、である。
(2) Operation FIG. 3 is a block diagram illustrating the operation of the main parts of the embodiment.

同図中、Mは1つの命令語であり、F、〜F8は命令語
の各フィールドを示している。また、Maはフィールド
Fz、h、Pa、Fs、Fsから成り、Mbはフィール
ドFl、F6.F?から成る。
In the figure, M is one instruction word, and F, to F8 indicate each field of the instruction word. Further, Ma consists of fields Fz, h, Pa, Fs, Fs, and Mb consists of fields Fl, F6 . F? Consists of.

各フィールドF I” F sは、例えば、次のような
制御指定を有している。
Each field F I''F s has, for example, the following control designation.

■F、・・・ALUの演算指定 ■F2・・・大力バス指定 ■F3・・・入力バス指定 ■F4・・・出力バス指定 ■F、・・・プログラムカウンタインクリメント指定■
F6・・・主記憶動作指定 ■F7・・・状態制御指定 ■F8・・・次のマイクロ命令アドレスそして、本実施
例においては、各フィールドF1〜F、のうち、フィー
ルドFl、F6.FTに比較的に長いデコード時間を要
するものとして例示している。
■F,...ALU calculation specification ■F2...Power bus specification ■F3...Input bus specification ■F4...Output bus specification ■F,...Program counter increment specification ■
F6...Main memory operation specification ■F7...State control specification ■F8...Next microinstruction address And, in this embodiment, among the fields F1 to F, fields Fl, F6... The example is shown as requiring a relatively long decoding time for FT.

すなわち、フィールドF、、F6.F、をプリデコーダ
13を介してプリデコードした後、該デコード結果f+
、fb、f7をシャドウメモリ14bに格納・記憶して
いる。他方、フィールドF2. F3+ F4+ FS
+ Fsはそのまま主制御メモリ14aに格納・記憶し
ている。
That is, fields F, , F6 . After predecoding F, via the predecoder 13, the decoding result f+
, fb, and f7 are stored in the shadow memory 14b. On the other hand, field F2. F3+ F4+ FS
+Fs is stored as is in the main control memory 14a.

したがって、命令デコーダ18は、主制御メモリ14a
に記憶されているフィールドFz+ Fs、 Fn、P
s、Fsをデコードし、該デコード結果fz、fs、f
a、fs、fsを制御回路19に与える。他方、シャド
ウメモリ14bに記憶されているデコード結果f、、f
、、f7は、そのまま制御回路19に与える。
Therefore, the instruction decoder 18 has the main control memory 14a.
Fields Fz+Fs, Fn, P stored in
s, Fs, and the decoding results fz, fs, f
a, fs, and fs are given to the control circuit 19. On the other hand, the decoding results f, , f stored in the shadow memory 14b
, , f7 are supplied to the control circuit 19 as they are.

そして、制御回路19は、与えられた全デコード結果B
、fz、fs、fa、fs、fh、fr、fsから制御
信号20を作製し、プロセッサ15の各部を制御する。
Then, the control circuit 19 receives the total decoding result B.
, fz, fs, fa, fs, fh, fr, and fs to generate a control signal 20 to control each part of the processor 15.

そのため、制御メモリ14に記憶されているマイクロプ
ログラムの1つの命令語Mを読み出し、そして制御回路
19にデコード結果り、fz、fi、fn、fs、f6
+f、+feを与えるまでの時間を検討するならば、そ
の主要時間は命令デコーダ18がフィールドF2.F3
+F4+Fs+F8をデコードする時間が支配的となる
Therefore, one instruction word M of the microprogram stored in the control memory 14 is read out, and the decoding result is sent to the control circuit 19, fz, fi, fn, fs, f6.
Considering the time it takes to provide +f and +fe, the main time is when the instruction decoder 18 inputs fields F2 . F3
The time to decode +F4+Fs+F8 is dominant.

すなわち、長いデコード時間を要するフィールドFl、
F6.FTは予めデコードが完了している為、デコード
時間が短縮され、制御回路19が出力する制御信号20
が短い時間で得られる。したがって、プロセッサ15の
各部が即座に制御され、作動速度が高速化する。
That is, the field Fl, which requires a long decoding time,
F6. Since the FT has been decoded in advance, the decoding time is shortened and the control signal 20 output from the control circuit 19 is
can be obtained in a short time. Therefore, each part of the processor 15 is immediately controlled and its operating speed is increased.

以上のように、命令語Mは同一のまま、プロセッサ15
の作動速度、すなわちデータ処理速度を高速化すること
ができる。また、プログラマにとっては、プリデコーダ
13やシャドウメモリ14bを全く意識する必要が無い
As described above, the instruction word M remains the same and the processor 15
The operating speed, that is, the data processing speed can be increased. Furthermore, the programmer does not need to be aware of the predecoder 13 or the shadow memory 14b at all.

尚、本実施例において、全てのフィールドF、〜F8を
プリデコードせずに、比較的長いデコード時間を要する
フィールドのみをプリデコードしている理由は、シャド
ウメモリ14bの容量が無制限に大きくなることを避け
る為であり、少ないメモリ容量で処理速度の高速化を有
効に図るための措置である。
Note that in this embodiment, the reason why only the fields that require a relatively long decoding time are predecoded without predecoding all fields F, to F8 is that the capacity of the shadow memory 14b becomes unlimitedly large. This is a measure to effectively increase processing speed with a small memory capacity.

(3)実施結果の例 命令語Mの各フィールドF、−F、に8ビツトでコード
化された情報が入っていて、また、プロセッサの各論理
回路は、−船釣に市販されているASTTL系のICを
使用して構成している場合を例示する。
(3) Example of execution result Each field F, -F of the instruction word M contains information coded in 8 bits, and each logic circuit of the processor is -ASTTL, which is commercially available for boat fishing. An example is shown in which a system is configured using a system IC.

以上のようなプロセッサでは、各ロジックの遅延時間に
よって、1回の命令処理には約70nsの時間を必要と
していた。
In the above-described processor, approximately 70 ns is required to process one instruction due to the delay time of each logic.

また、前記命令処理時間のうち、命令デコーダが2進情
報を得る迄のデコード時間は、約Ionsである。
Further, among the instruction processing time, the decoding time until the instruction decoder obtains binary information is about Ions.

したがって、全フィールドF、〜F8をプリデコードし
てから制御メモリに格納・記憶させるならば、前記デコ
ード時間が不要となり、1回の命令処理は約60nsで
完了する。
Therefore, if all fields F, -F8 are pre-decoded and then stored in the control memory, the decoding time described above becomes unnecessary, and one instruction process is completed in about 60 ns.

すなわち、約14%の高速化が実現できる。In other words, a speed increase of about 14% can be achieved.

[発明の効果] 以上のように本発明の方法によれば、マイクロプログラ
ムを予めデコードしてから制御メモリに記憶させておく
ことによって、該マイクロプログラムのデコード時間が
短縮され、プロセンサの作動速度が高速化する。また、
ソフトウェアの互換性も維持できる。
[Effects of the Invention] As described above, according to the method of the present invention, by decoding the microprogram in advance and storing it in the control memory, the decoding time of the microprogram is shortened, and the operating speed of the pro-sensor is increased. Speed up. Also,
Software compatibility can also be maintained.

その結果、既存のソフトウェア資源やデータ資源をその
まま使用することが可能で高速作動する水平型プロセッ
サを実現することができる。
As a result, it is possible to realize a horizontal processor that operates at high speed and can use existing software and data resources as they are.

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

第1図(a) (b)は、本発明の基本原理を説明する
ブロック図、 第2図は、実施例を説明するブロック図、第3図は、実
施例の主要部分の作動を説明するブロック図、 第4図は、水平型マイクロ命令の形式を説明する図、 第5図は、プロセッサの基本的構成を説明するブロック
図、 第6図は、一部に2進情報を含むマイクロ命令を使用す
るプロセッサを説明するブロック図、である。 図において、1. la、 lbはブートローダ部、2
はフロッピィディスク、3.3A、3Bは制御メモリ部
、3aは第1制御メモリ部、3bは第2制御メモリ部、
4.8.15はプロセッサ、5,9は命令デコード部、
6゜10は命令実行部、7は110部、11a、 11
bはプリデコード部、12はブートローダ、13はブリ
デコーダ、14は制御メモリ、14aは主制御メモリ、
14bはシャドウメモリ、16は内部バス、17は命令
レジスタ、18は命令デコーダ、19は制御回路、20
は制御信号、21はクロック、22.23はアキュムレ
ータ、24はALU、25はレジスタ群、26はアドレ
スバス、27はデータバッファ、28はデータバス、を
それぞれ示している。 特許出願人     冨士通株式会社 復代理人 弁理士  福 島 康 文 J30 第5図 2進11有利11腎(・マイワロ弁分(正L・ゐゴロで
・ソサ第6閃
Figures 1 (a) and (b) are block diagrams explaining the basic principle of the present invention, Figure 2 is a block diagram explaining an embodiment, and Figure 3 is a block diagram explaining the operation of the main parts of the embodiment. Block diagram: Figure 4 is a diagram explaining the format of a horizontal microinstruction; Figure 5 is a block diagram explaining the basic configuration of the processor; Figure 6 is a microinstruction partially containing binary information. FIG. 2 is a block diagram illustrating a processor using the . In the figure, 1. la, lb are bootloader sections, 2
is a floppy disk, 3.3A and 3B are control memory sections, 3a is a first control memory section, 3b is a second control memory section,
4.8.15 is a processor, 5 and 9 are instruction decoding units,
6゜10 is the instruction execution section, 7 is the 110th section, 11a, 11
12 is a boot loader, 13 is a BRIDGE decoder, 14 is a control memory, 14a is a main control memory,
14b is a shadow memory, 16 is an internal bus, 17 is an instruction register, 18 is an instruction decoder, 19 is a control circuit, 20
21 is a control signal, 21 is a clock, 22, 23 is an accumulator, 24 is an ALU, 25 is a register group, 26 is an address bus, 27 is a data buffer, and 28 is a data bus. Patent applicant Fujitsu Co., Ltd. sub-agent Patent attorney Yasushi Fukushima J30

Claims (1)

【特許請求の範囲】 1、コード化した水平型のマイクロ命令を制御メモリ部
に記憶しておき、該マイクロ命令を命令デコード部(5
)が読み出してデコードし、そのデコード結果に基づい
て命令実行部(6)が制御され、命令を実行するマイク
ロプログラム制御方式の水平型プロセッサ(4)におい
て、 マイクロプログラムを制御メモリ部(3A)にローディ
ングする際に、前記命令デコード部(5)と同一のデコ
ード機能を有するプリデコード部(11a)で、該マイ
クロプログラムを予めデコードしてから該制御メモリ部
(3A)にローディングし、命令実行部(6)が命令を
実行する場合は、前記制御メモリ部(3A)に記憶され
たデコード結果によって制御されて作動すること、 を特徴とする水平型プロセッサの高速化方法。 2、コード化した水平型のマイクロ命令を制御メモリ部
に記憶しておき、該マイクロ命令を命令デコード部(5
)が読み出してデコードし、そのデコード結果に基づい
て命令実行部(6)が制御され、命令を実行するマイク
ロプログラム制御方式の水平型プロセッサ(4)におい
て、 マイクロプログラムを記憶させるために、第1制御メモ
リ部(3a)と第2制御メモリ部(3b)との二つの部
分から成る制御メモリ部(3B)を用意し、マイクロプ
ログラムを前記制御メモリ部(3B)にローディングす
る際は、 前記命令デコード部(5)と同一のデコード機能を有す
るプリデコード部(11b)で、マイクロ命令の必要と
するフィールドを予めデコードしてから一方の第2制御
メモリ部(3b)にローディングし、デコードを行わな
いフィールドは他方の第1制御メモリ部(3a)にロー
ディングし、 命令実行部(6)が命令を実行する場合は、前記命令デ
コード部(5)が前記第1制御メモリ部(3a)を読み
出してデコードしたデコード結果と、前記第2制御メモ
リ部(3b)に記憶されたデコード結果とによって制御
されて作動すること、 を特徴とする水平型プロセッサの高速化方法。
[Claims] 1. Store coded horizontal micro-instructions in a control memory section, and store the micro-instructions in an instruction decoding section (5).
) reads and decodes the microprogram, and the instruction execution unit (6) is controlled based on the decoding result to execute the instructions.In the microprogram control type horizontal processor (4), the microprogram is stored in the control memory unit (3A). When loading, a pre-decoding section (11a) having the same decoding function as the instruction decoding section (5) decodes the microprogram in advance and loads it into the control memory section (3A). (6) A method for increasing the speed of a horizontal processor, characterized in that when executing an instruction, the operation is controlled by the decoding result stored in the control memory unit (3A). 2. Store the coded horizontal micro-instructions in the control memory section, and transfer the micro-instructions to the instruction decoding section (5
) is read out and decoded, and the instruction execution unit (6) is controlled based on the decoding result to execute instructions. A control memory section (3B) consisting of two parts, a control memory section (3a) and a second control memory section (3b) is prepared, and when loading a microprogram into the control memory section (3B), the instructions are A pre-decoding section (11b) having the same decoding function as the decoding section (5) decodes the fields required by the microinstruction in advance and loads it into one second control memory section (3b) for decoding. If the instruction execution unit (6) executes an instruction, the instruction decoding unit (5) reads out the first control memory unit (3a). A method for increasing the speed of a horizontal processor, characterized in that the operation is controlled by a decoding result decoded by the second control memory section (3b) and a decoding result stored in the second control memory section (3b).
JP27852890A 1990-10-16 1990-10-16 High speed operating method for horizontal processor Pending JPH04152431A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP27852890A JPH04152431A (en) 1990-10-16 1990-10-16 High speed operating method for horizontal processor

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP27852890A JPH04152431A (en) 1990-10-16 1990-10-16 High speed operating method for horizontal processor

Publications (1)

Publication Number Publication Date
JPH04152431A true JPH04152431A (en) 1992-05-26

Family

ID=17598531

Family Applications (1)

Application Number Title Priority Date Filing Date
JP27852890A Pending JPH04152431A (en) 1990-10-16 1990-10-16 High speed operating method for horizontal processor

Country Status (1)

Country Link
JP (1) JPH04152431A (en)

Similar Documents

Publication Publication Date Title
US5758115A (en) Interoperability with multiple instruction sets
JP6849274B2 (en) Instructions and logic to perform a single fused cycle increment-comparison-jump
US7003652B2 (en) Restarting translated instructions
US20020069402A1 (en) Scheduling control within a system having mixed hardware and software based instruction execution
US4305124A (en) Pipelined computer
US4954943A (en) Data processing system
US20020083302A1 (en) Hardware instruction translation within a processor pipeline
GB2367654A (en) Translating instructions to store stack operands in registers
US5884071A (en) Method and apparatus for decoding enhancement instructions using alias encodings
US5682531A (en) Central processing unit
JP3193650B2 (en) Method and system for saving and restoring emulation context without affecting the operating system
EP0405495A2 (en) Instruction unit logic management apparatus included in a pipelined processing unit
KR100971626B1 (en) Instruction encoding within a data processing apparatus having multiple instruction sets
US5408622A (en) Apparatus and method for emulation routine control transfer via host jump instruction creation and insertion
KR20170097015A (en) Method and apparatus for expanding a mask to a vector of mask values
JP4502532B2 (en) Data processing device
US20140082334A1 (en) Encoding to Increase Instruction Set Density
US6606703B2 (en) Processor using less hardware and instruction conversion apparatus reducing the number of types of instructions
US5774694A (en) Method and apparatus for emulating status flag
JPH0668724B2 (en) Simulation method
JPH04152431A (en) High speed operating method for horizontal processor
US7930526B2 (en) Compare and branch mechanism
US6112300A (en) Method and apparatus for performing multi-way branching using a hardware relational table
EP0336091A2 (en) Pipeline type microprocessor
US5568622A (en) Method and apparatus for minimizing the number of control words in a brom control store of a microprogrammed central processor