JPS60250436A - Microprogram controller - Google Patents

Microprogram controller

Info

Publication number
JPS60250436A
JPS60250436A JP10528184A JP10528184A JPS60250436A JP S60250436 A JPS60250436 A JP S60250436A JP 10528184 A JP10528184 A JP 10528184A JP 10528184 A JP10528184 A JP 10528184A JP S60250436 A JPS60250436 A JP S60250436A
Authority
JP
Japan
Prior art keywords
output
branch
decoder
address
state
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.)
Granted
Application number
JP10528184A
Other languages
Japanese (ja)
Other versions
JPH0247770B2 (en
Inventor
Toshimichi Matsuzaki
敏道 松崎
Takashi Sakao
坂尾 隆
Toshiaki Suzuki
敏明 鈴木
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.)
Panasonic Holdings Corp
Original Assignee
Matsushita Electric Industrial 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 Matsushita Electric Industrial Co Ltd filed Critical Matsushita Electric Industrial Co Ltd
Priority to JP10528184A priority Critical patent/JPH0247770B2/en
Publication of JPS60250436A publication Critical patent/JPS60250436A/en
Publication of JPH0247770B2 publication Critical patent/JPH0247770B2/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Abstract

PURPOSE:To decrease the number of states by decoding the outputs of an instruction register and a microinstruction pointer which stores temporarily the address of the state under execution through the 1st decoder and providing a specific branch control circuit to said pointer. CONSTITUTION:The outputs of a microinstruction pointer 34 which stores temporarily the address of the state under execution and an instruction register 1 are supplied to a PLA type decoder 32. Then the address of the state to be executed and a flag showing the presence or absence of branch are supplied to a branch control circuit 33 to decide a branch address. The output of the pointer 34 is decoded by a ROM type decoder 5, and a decoder 5 or 32 is selected through a selection signal line 6 and encoded by an encoder 7. Thus it is possible to use the output of the decoder 32 for the 2nd and its subsequent states.

Description

【発明の詳細な説明】 産業上の利用分野 本発明は自由度の大きいステートの分岐或い(は共用が
可能なマイクロプログラム制御95式に関する。
DETAILED DESCRIPTION OF THE INVENTION FIELD OF INDUSTRIAL APPLICATION The present invention relates to a microprogram control system with a large degree of freedom in which states can be branched or shared.

従来例の構成とその問題点 マイクロプログラムによる制御方式は命令のステートを
共用することで全体のステート数を減少させることが可
能であるが、ステートの分岐条件が多くなると分岐制御
回路が複雑になってし捷う。
Conventional configurations and their problems Microprogram-based control systems can reduce the overall number of states by sharing instruction states, but as the number of state branch conditions increases, the branch control circuit becomes more complex. I'm going to switch.

従来のマイクロプログラム制御方式の従来例を第1図及
び第2図を参照しながら説明する。
A conventional example of a conventional microprogram control system will be explained with reference to FIGS. 1 and 2.

図において、1は命令コードを一時記憶する命令レジス
タ(I 、R)、2はその出力をデコードするPLA形
式のデコーダ(P LA dec、 )、3は次に実行
すべきステートのアドレス(NXTADR)と、分岐条
件(BRCOND)と、分岐の有無を示すフラグ(FL
AG)と、命令レジスタ1の出力の一部とを入力し、分
岐先アドレスを後記マイクロ命令ポインタにセットする
分岐制御回路(BRC)、4は現在実行中のステートの
アドレスを一時記憶するマイクロ命令ポインタ(MIP
)、6はその出力をデコードするROM形式のデコーダ
(ROMdec、)、6は命令の最初のステートたけ前
記PLA形式のデコーダ2の出力を選択し、その後のス
テートでは前記ROM形式のデコーダ5の出力を選択す
る選択信号線、7はPLA形式デコーダ2或いはROM
形式デコーダ6の出力をエンコードするエンコーダであ
る。このエンコーダ7の出力の一部がNXTADR信号
として分岐制御回路3に加えられている。
In the figure, 1 is an instruction register (I, R) that temporarily stores the instruction code, 2 is a PLA format decoder (PLA dec, ) that decodes its output, and 3 is the address of the next state to be executed (NXTADR). , a branch condition (BRCOND), and a flag (FL) indicating the presence or absence of a branch.
A branch control circuit (BRC) which inputs a part of the output of the instruction register 1 (AG) and a part of the output of the instruction register 1 and sets a branch destination address to a microinstruction pointer (described later); 4 is a microinstruction which temporarily stores the address of the state currently being executed; Pointer (MIP
), 6 is a ROM-format decoder (ROMdec, ) that decodes its output, 6 selects the output of the PLA-format decoder 2 in the first state of the instruction, and selects the output of the ROM-format decoder 5 in subsequent states. 7 is the PLA format decoder 2 or ROM
This is an encoder that encodes the output of the format decoder 6. A part of the output of this encoder 7 is applied to the branch control circuit 3 as an NXTADR signal.

第2図に示すように3種の命令a、b、Cがあり、第2
ステートで、それぞれの命令毎に演算モードが異なり、
かつ4つのアドレッシングモードを持つ場合には、最初
のPLA形式デコーダ2による制御から1(OM形式デ
コーダらの制御に移行する際、12方向に分岐する必要
がある。その場合一般に命令レジスタ1の出力の一部を
分岐先アドレスに組込み、マイクロ命令ポインタ4にセ
ットする機能が分岐制御回路3に必要である。
As shown in Figure 2, there are three types of instructions a, b, and C.
In the state, the operation mode is different for each instruction,
And if there are four addressing modes, it is necessary to branch in 12 directions when transitioning from control by the first PLA format decoder 2 to control by the 1 (OM format decoders).In that case, generally the output of instruction register 1 The branch control circuit 3 is required to have a function of incorporating a part of the address into the branch destination address and setting it in the microinstruction pointer 4.

なお第2図で黒丸はP L A dec、使用、白丸は
ROMdec、使用を示している。
In FIG. 2, black circles indicate PLA dec, used, and white circles indicate ROMdec, used.

従来の方式ではステートの合流は簡単に行なえるが、分
岐には分岐制御回路に多くの)・−ドウエアを必要とし
、しかも第2Aに示すように第2ステートのデコード数
が増加するという問題点があった0 またPLA形式デコーダだけを用いた場合には、第2図
Bに示すように第2ステートで複数のデコード線を同時
にイネーブルすることができるので第2ステートのデコ
ード数は減少するが、ステートの共用が困難な為第4ス
テートのように同じ処理をするステートでも命令毎にデ
コードしなければならないという問題点があった。
In the conventional method, states can be easily merged, but branching requires a large amount of hardware in the branch control circuit, and as shown in Section 2A, the number of decodes of the second state increases. 0 Also, if only a PLA format decoder is used, multiple decode lines can be enabled simultaneously in the second state as shown in Figure 2B, so the number of decodes in the second state will be reduced. Since it is difficult to share states, there is a problem in that even states that perform the same processing, such as the fourth state, must be decoded for each instruction.

発明の目的 本発明は上記問題点を解消するもので、ステートの共用
により命令全体のステート数を減少させ、かつステート
の分岐制御回路を簡単化するマイクロプログラム制御装
置を提供することを目的とする。
OBJECTS OF THE INVENTION The present invention solves the above problems, and aims to provide a microprogram control device that reduces the number of overall instruction states by sharing states and simplifies the state branch control circuit. .

発明の構成 本発明は、命令コートを一時記憶する命令レジスタ表、
前記命令レジスタの出力とマイクロ命令ポインタの出力
とを入力してデコードするPLA形式のデコーダと、次
に実行すべきステートのアドレスとステート分岐条件を
示す信号と分岐の有無を示すフラグとを入力とし、分岐
先アドレスを変更する分岐制御回路と、分岐先ステート
のアドレスを一時記憶する前記マイクロ命令ポインタと
、前記マイクロ命令ポインタの出力をデコードするRO
M形式のデコーダと、前記PLA形式デコーダの出力か
或いは前記ROM形式デコーダの出力のうちどちらを選
択するかを示す選択手段を有したマイクロプログラム制
御装置であり、命令全体゛のステート数を減小させ、簡
単な分岐制御回路で自由度の大きいステートの分岐或い
は共用を可能にすることができるものである。
Structure of the Invention The present invention provides an instruction register table for temporarily storing an instruction code;
A PLA format decoder inputs and decodes the output of the instruction register and the microinstruction pointer, and inputs the address of the next state to be executed, a signal indicating a state branch condition, and a flag indicating the presence or absence of a branch. , a branch control circuit that changes the branch destination address, the microinstruction pointer that temporarily stores the address of the branch destination state, and an RO that decodes the output of the microinstruction pointer.
A microprogram control device having an M-format decoder and a selection means for selecting either the output of the PLA-format decoder or the output of the ROM-format decoder, which reduces the number of states of the entire instruction. This makes it possible to branch or share states with a large degree of freedom with a simple branch control circuit.

実施例の説明 第3図は本発明の一実施例におけるマイクロプログラム
制御装置の構成を示すものであり、1と5と6と7は従
来例と同じ、32はマイクロ命令ポインタの一部を入力
としているほかは従来例のPLA形式デコーダ2と同じ
、33は次に実行すべきステートのアドレスと、分岐条
件と、分岐の有無を示すフラグとを入力とし、分岐アド
レスを決定する分岐制御回路で、従来例と異なり命令レ
ジスタ1の出力を入力していない。34は分岐先ステー
トのアドレスを一時記憶するマイクロ命令ポインタで、
後記ゲート38により命令の最終実行サイクルでリセッ
トされる。ゲート38は前記マイクロ命令ポインタ34
をリセットするゲートである。39は命令の最終実行サ
イクルを示すLAST信号、310はROM形式デコー
ダ5の出力を使用することを示すUSEROM信号であ
る。
DESCRIPTION OF THE EMBODIMENT FIG. 3 shows the configuration of a microprogram control device in an embodiment of the present invention, where 1, 5, 6, and 7 are the same as the conventional example, and 32 is a part of the microinstruction pointer input. 33 is a branch control circuit that receives as input the address of the next state to be executed, a branch condition, and a flag indicating the presence or absence of a branch, and determines the branch address. , unlike the conventional example, the output of the instruction register 1 is not input. 34 is a microinstruction pointer that temporarily stores the address of the branch destination state;
It is reset by the gate 38 described later in the final execution cycle of the instruction. Gate 38 is connected to the microinstruction pointer 34.
This is a gate that resets the 39 is a LAST signal indicating the final execution cycle of the instruction, and 310 is a USEROM signal indicating that the output of the ROM format decoder 5 is used.

以上のように構成された本実施例のマイクロプログラム
制御装置について以下、動作について説明する。
The operation of the microprogram control device of this embodiment configured as described above will be explained below.

第4図に示すように2サイクルで実行する命令1と3サ
イクルで実行する命令2があり、命令1゜命令2共最後
のサイクルでROM形式のデコーダ6の出力を選択して
使う命令である。USEROM信づ3101rJ:次の
ステートでROM形式のデコート5の出力をイ史う[寺
にイネーブルとなるので、それをタイミングS1 でデ
ィレーさせたROM5T信月6は命令デコートのうちR
’OM形式のデコーダ5の出力を選択するサイクルにイ
ネーブルとなる。従ってそのサイクルではデコーダ5の
出力をエンコードして制御信号Sig 1が作られる。
As shown in Fig. 4, there are instruction 1 that is executed in 2 cycles and instruction 2 that is executed in 3 cycles, and both instruction 1 and instruction 2 are instructions that select and use the output of the ROM-format decoder 6 in the last cycle. . USEROM 3101rJ: In the next state, the output of ROM-format decoding 5 is programmed.
'It is enabled in the cycle in which the output of the OM format decoder 5 is selected. Therefore, in that cycle, the output of the decoder 5 is encoded to generate the control signal Sig1.

命令1の第1ステートと命令2の第1ステート及び第2
ステートは、その逆でデコーダ32の出力をエンコード
して制御信号Sig 1が作られる。
The first state of instruction 1 and the first state and second state of instruction 2
The state encodes the output of the decoder 32 in reverse, and the control signal Sig 1 is generated.

命令2のように第2ステート1てPLA形式のデコーダ
32の出力を選択可能にすることにより、第5図に示す
ように命令毎に演算モードを決定するデコード線とアド
レッシングモードを決定するデコード線を分けることが
できる。なお、第5図で黒丸はPLAdec、使用、白
丸はROMdec。
By making the output of the PLA format decoder 32 selectable in the second state 1 as in instruction 2, the decode line that determines the operation mode and the decode line that determines the addressing mode for each instruction as shown in FIG. can be separated. In addition, in Figure 5, the black circle is PLAdec, used, and the white circle is ROMdec.

使用を示している。従って例えばアドレッシングモード
2を使う命令aの場合には、adrm 2を出力するデ
コード線と、命令aの演算モードを出力するデコード線
とをステート2で同時に出力する。
Shows use. Therefore, for example, in the case of instruction a using addressing mode 2, a decode line that outputs adrm 2 and a decode line that outputs the operation mode of instruction a are simultaneously output in state 2.

従来例ではステート2が、ROM形式のデコーI・6か
ら出力するので、同時に2本のデコード線を出力するこ
とはできない。
In the conventional example, since state 2 outputs from the ROM-type decoder I/6, it is not possible to output two decode lines at the same time.

以上のようにPLA形式のデコーダ出力を使用すること
により命令全体のステート数つ捷りデコード線を大幅に
減少させることができる。
As described above, by using the PLA type decoder output, the number of states of the entire instruction can be switched and the number of decode lines can be significantly reduced.

発明の効果 本発明は第2ステート以後もPLA形式デコーダの出力
を使用可能にすることで、ステートの分岐制御回路が簡
単化され、かつ命令全体のステート数を大幅減少できる
ものである。従ってその実用的効果は大きい。
Effects of the Invention The present invention makes it possible to use the output of the PLA format decoder even after the second state, thereby simplifying the state branch control circuit and greatly reducing the number of states in the entire instruction. Therefore, its practical effects are great.

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

説明する為のステート分岐図、第3図は本発明にゞおけ
る一実施例゛のマイクロプログラム制御装置のブロック
図、第4図は同実施例の動作を説明する為のタイミング
図、第6図は同実施例のステートの分岐を説明するため
のステート分岐図である。 1・・命令レジスタ、32 ・・ PLA形式デコーダ
(第1のデコーダ)、33・・・分岐制御回路、34・
・・マイクロ命令ポインタ、6・・・・ROM形式デコ
ーダ(第2のデコーダ)、6・・・選択信号、7・・・
・・エンコーダ。 代理人の氏名 弁理士 中 尾 敏 男 ほか1名花1
図 第2図 算1スf−F 算2n−f 1−77−ト第 3 図 1が゛イ2ノν 第5図 ・ αterm / ・ attrpn 2 ・ 久にfMj ・ adrtrt4 #lスフー) 算2λ7−ト
FIG. 3 is a block diagram of a microprogram control device according to an embodiment of the present invention, FIG. 4 is a timing diagram for explaining the operation of the embodiment, and FIG. 6 is a state branch diagram for explanation. FIG. 2 is a state branch diagram for explaining state branches in the same embodiment. 1... Instruction register, 32... PLA format decoder (first decoder), 33... Branch control circuit, 34...
...Microinstruction pointer, 6...ROM format decoder (second decoder), 6...Selection signal, 7...
...Encoder. Name of agent: Patent attorney Toshio Nakao and 1 other person Hana 1
Figure 2 Calculation 1st f-F Calculation 2n-f 1-77-T 3 Figure 1 is I2 No ν Figure 5 ・ αterm / ・ attrpn 2 ・ Long time fMj ・ adrtrt4 #l Shu) Calculation 2λ7 -

Claims (1)

【特許請求の範囲】[Claims] 命令コードを一時記憶する命令レジスタと、現在実行中
のステートのアドレスを一時記憶するマイクロ命令ポイ
ンタと、前記命令レジスタの出力と前記マイクロ命令ポ
インタの出力とを入力してデコードする第1のデコーダ
と、前記マイクロ命令ポインタの出力をデコーダする第
2のデコーダ゛ と、前記第1のデコーダ出力と前記第
2のデコーダ出力を選択して出力する選択手段と、前記
選択手段により選択された出力をエンコードして制御信
号を作るエンコーダと、次に実行すべきステートのアド
レスとステート分岐条件を示す信号と分岐の有無を示す
フラグとを入力とし、分岐アドレスを前記マイクロ命令
ポインタにセットする分岐制御回路を有したことを特徴
とするマイクロプログラム制御装置。
an instruction register that temporarily stores an instruction code; a microinstruction pointer that temporarily stores the address of the currently executing state; and a first decoder that receives and decodes the output of the instruction register and the microinstruction pointer. , a second decoder for decoding the output of the microinstruction pointer, a selection means for selecting and outputting the first decoder output and the second decoder output, and encoding the output selected by the selection means. an encoder that generates a control signal, and a branch control circuit that receives as input the address of the next state to be executed, a signal indicating a state branch condition, and a flag indicating the presence or absence of a branch, and sets the branch address in the microinstruction pointer. A microprogram control device comprising:
JP10528184A 1984-05-24 1984-05-24 MAIKUROPUROGURAMUSEIGYOSOCHI Expired - Lifetime JPH0247770B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP10528184A JPH0247770B2 (en) 1984-05-24 1984-05-24 MAIKUROPUROGURAMUSEIGYOSOCHI

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP10528184A JPH0247770B2 (en) 1984-05-24 1984-05-24 MAIKUROPUROGURAMUSEIGYOSOCHI

Publications (2)

Publication Number Publication Date
JPS60250436A true JPS60250436A (en) 1985-12-11
JPH0247770B2 JPH0247770B2 (en) 1990-10-22

Family

ID=14403289

Family Applications (1)

Application Number Title Priority Date Filing Date
JP10528184A Expired - Lifetime JPH0247770B2 (en) 1984-05-24 1984-05-24 MAIKUROPUROGURAMUSEIGYOSOCHI

Country Status (1)

Country Link
JP (1) JPH0247770B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0449457U (en) * 1990-08-31 1992-04-27

Also Published As

Publication number Publication date
JPH0247770B2 (en) 1990-10-22

Similar Documents

Publication Publication Date Title
CA1242801A (en) Control unit for a microprogrammed processor
KR100875401B1 (en) Processor Units and How to Handle Complex Conditions
JPS60250436A (en) Microprogram controller
US4831572A (en) Polynomial vector arithmetic operation control system
JP3804778B2 (en) Processor and instruction execution method
JP2564054B2 (en) Register file
JPS6288031A (en) Register filing system
KR940000960A (en) Microprocessor
JPS62120503A (en) Numerical control system
JPS6240538A (en) Data processor
JPS61202225A (en) Hardware control system using processor
JPH0224721A (en) Program controller
JPS60250438A (en) Information processor
JPS6391739A (en) Decoder for variable length instruction
JPH02118600A (en) Voice synthetic lsi
JPH0619705A (en) Pipeline control system
JPS63318634A (en) Instruction prefetching system
JPH04328634A (en) Microprogram controller
JP2001229075A (en) Bi-endian multi-instruction length executing method
JPH02137028A (en) Instruction control system
JPS63291108A (en) Processor
JPH05197543A (en) Instruction decoding system of information processor
JPS63292232A (en) Microprogram controller
JPS61143847A (en) Central processor
JPH03252845A (en) Address control system

Legal Events

Date Code Title Description
EXPY Cancellation because of completion of term