Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JPH0337215B2 - - Google Patents
[go: Go Back, main page]

JPH0337215B2 - - Google Patents

Info

Publication number
JPH0337215B2
JPH0337215B2 JP59237876A JP23787684A JPH0337215B2 JP H0337215 B2 JPH0337215 B2 JP H0337215B2 JP 59237876 A JP59237876 A JP 59237876A JP 23787684 A JP23787684 A JP 23787684A JP H0337215 B2 JPH0337215 B2 JP H0337215B2
Authority
JP
Japan
Prior art keywords
stack file
stack
sequence control
microprogram
output
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.)
Expired - Lifetime
Application number
JP59237876A
Other languages
Japanese (ja)
Other versions
JPS61115135A (en
Inventor
Keiji Ishibashi
Masanori Hikichi
Hiroshi Kikuchi
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.)
Fuji Electric Co Ltd
Fuji Facom Corp
Original Assignee
Fuji Electric Co Ltd
Fuji Facom Corp
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 Fuji Electric Co Ltd, Fuji Facom Corp filed Critical Fuji Electric Co Ltd
Priority to JP23787684A priority Critical patent/JPS61115135A/en
Publication of JPS61115135A publication Critical patent/JPS61115135A/en
Publication of JPH0337215B2 publication Critical patent/JPH0337215B2/ja
Granted legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/22Microcontrol or microprogram arrangements
    • G06F9/26Address formation of the next micro-instruction ; Microprogram storage or retrieval arrangements

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)

Description

【発明の詳細な説明】 〔産業上の利用分野〕 この発明は、マイクロプログラムでコントロー
ルされるマイクロプログラム制御システムに関
し、特に、マイクロプログラムメモリのアドレス
コントロールを行うマイクロプログラムシーケン
サがLSI化に適し、かつそのスタツクフアイルを
大容量のものとすることができるようなマイクロ
プログラム制御システムに関するものである。
[Detailed Description of the Invention] [Field of Industrial Application] The present invention relates to a microprogram control system controlled by a microprogram, and in particular, a microprogram sequencer that controls the address of a microprogram memory is suitable for LSI implementation. The present invention relates to a microprogram control system that allows the stack file to have a large capacity.

〔従来の技術〕[Conventional technology]

第3図は、マイクロプログラムでコントロール
される従来のマイクロプロセツサユニツトのブロ
ツク図である。
FIG. 3 is a block diagram of a conventional microprocessor unit controlled by a microprogram.

1は、マイクロプロセツサユニツトであつて、
一点鎖線で示すブロツクは、そのマイクロプログ
ラムシーケンサとしてのシーケンスコントロール
部20であり、マイクロプログラムの格納された
マイクロプログラムメモリ9のアドレス情報を順
次発生する。
1 is a microprocessor unit,
The block indicated by the one-dot chain line is the sequence control unit 20 as a microprogram sequencer, which sequentially generates address information of the microprogram memory 9 in which the microprogram is stored.

マイクロプログラムメモリ9は、シーケンスコ
ントロール部20からのアドレス情報を受けて、
その番地(アドレス)の中に格納されているマイ
クロ命令をパイプラインレジスタ10に出力す
る。パイプラインレジスタ10は、現在実行中の
マイクロ命令をある期間だけ保持するレジスタで
あつて、このパイプラインレジスタ10の出力が
シーケンスコントロール部20をはじめ、演算部
等(図示せず)に送出されて、これらを制御す
る。
The microprogram memory 9 receives address information from the sequence control section 20, and
The microinstruction stored at that address is output to the pipeline register 10. The pipeline register 10 is a register that holds the microinstruction currently being executed for a certain period of time, and the output of this pipeline register 10 is sent to the sequence control unit 20, arithmetic unit, etc. (not shown). , control these.

ここで、シーケンスコントロール部20の動作
については、マイクロ命令(ブランチオペレーシ
ヨンコード等を含む)がパイプラインレジスタ1
0から送出されて、シーケンスコントロール部2
0のインストラクシヨン−デコーダ8、マルチプ
レクサ6及びレジスタ7にそれぞれ送出される。
Here, regarding the operation of the sequence control unit 20, microinstructions (including branch operation codes, etc.) are transferred to the pipeline register 1.
0, and the sequence control section 2
0 instruction - sent to decoder 8, multiplexer 6 and register 7, respectively.

マイクロ命令を受けたインストラクシヨン−デ
コーダ8の主な制御としては、次のマイクロ命令
に対するアドレスの選択を行うマルチプレクサ6
に所定の選択制御信号を送出して、これを制御す
るとともに、CALL命令(呼出命令)、RET命令
(RETURN命令)等の実行時にスタツクフアイ
ル3を制御してプログラムカウンタ4の値をスタ
ツクフアイル3へ書込み、又はそれを読出すもの
である。
The main control of the instruction decoder 8 that receives the microinstruction is the multiplexer 6 that selects the address for the next microinstruction.
A predetermined selection control signal is sent to and controlled by the program counter 4 by controlling the stack file 3 when executing a CALL instruction, RET instruction (RETURN instruction), etc. This is for writing to or reading from file 3.

ここで、マルチプレクサ6は、現在実行中のマ
イクロプログラムのアドレス+1番地を示すプロ
グラムカウンタ4とスタツクフアイル3の出力と
が供給され、さらに必要に応じてパプラインレジ
スタ10から、マイクロ命令から選択された所定
の情報が与えられ、そしてレジスタ7からはブラ
ンチアドレスが与えられ、これらに基づき、イン
ストラクシヨン−デコーダ8からの選択制御信号
を受けて、これらの出力のうち1つが選択され
る。そしてその出力がマイクロプログラムメモリ
9のアドレス入力部にアドレス情報として送出さ
れるとともに、インクリメンタ5に送出されてそ
の結果が実行アドレス+1番地としてプログラム
カウンタ4に取り込まれ、それが現在実行中の次
のアドレスを示すことになる。
Here, the multiplexer 6 is supplied with the output of the program counter 4 and the stack file 3, which indicate the address +1 of the microprogram currently being executed, and is further supplied with the output of the stack file 3, which indicates the address of the microprogram currently being executed. A branch address is provided from register 7, and based on these, a selection control signal from instruction decoder 8 is received to select one of these outputs. The output is sent as address information to the address input section of the microprogram memory 9, and is also sent to the incrementer 5, and the result is taken into the program counter 4 as the execution address + 1 address, which is the next address currently being executed. This will show the address of .

なお、レジスタ7は、マイクロ命令のうちのブ
ランチアドレス情報を保持するレジスタであり、
インストラクシヨン−デコーダ8からのレジスタ
入力選択信号がマルチプレクサ6に入力されるこ
とにより選択される。
Note that register 7 is a register that holds branch address information of microinstructions,
A register input selection signal from instruction decoder 8 is input to multiplexer 6 to select it.

ここで、プログラムカウンタ4の出力は、マル
チプレクサ6とスタツクフアイル3とに送出さ
れ、CALL命令実行時にはプログラムカウンタ4
のスタツクフアイル3への書込みが行われる。
Here, the output of the program counter 4 is sent to the multiplexer 6 and the stack file 3, and when the CALL instruction is executed, the output of the program counter 4 is sent to the multiplexer 6 and the stack file 3.
is written to the stack file 3.

ところで、このスタツクフアイル3には、その
格納アドレスを示すスタツクポインタ2が接続さ
れていて、スタツクフアイル3とスタツクポイン
タ2とは、インストラクシヨン−デコーダ8によ
りそれぞれ読出し、書込みの制御がなされる。
By the way, this stack file 3 is connected with a stack pointer 2 indicating its storage address, and the stack file 3 and stack pointer 2 are controlled for reading and writing by an instruction decoder 8, respectively. will be done.

例えば、サブルーチンのCALL命令時には、そ
のサブルーチンの戻り番地となるアドレス情報を
プログラムカウンタ4からスタツクフアイル3へ
転送し、このとき、スタツクポインタ2の値を−
1する。RET命令時には、その戻り番地をスタ
ツクフアイル3から取出すためにスタツクポイン
タ2の値を+1してスタツクフアイル3からアド
レス情報を読出してマルチプレクサ6へ出力す
る。
For example, when a CALL command is issued for a subroutine, the address information that is the return address of the subroutine is transferred from the program counter 4 to the stack file 3, and at this time, the value of the stack pointer 2 is changed to -
Do 1. At the time of the RET command, the value of the stack pointer 2 is increased by 1 in order to retrieve the return address from the stack file 3, address information is read from the stack file 3, and is output to the multiplexer 6.

ここで、プログラムカウンタ4の内容をPcと
し、スタツクフアイル3の内容をFとし、レジス
タ7の内容をRとし、マイクロ命令からのブラン
チアドレス等の内容をDとし、これらにそれぞれ
対応させてマルチプレクサ6の入力部をPc,F,
R,Dとして表示する。
Here, the contents of the program counter 4 are Pc, the contents of the stack file 3 are F, the contents of the register 7 are R, the contents of the branch address etc. from the microinstruction are D, and the multiplexer is 6 input section Pc, F,
Displayed as R,D.

なお、11はインストラクシヨン線、12はブ
ランチアドレス線、13はマイクロプログラムメ
モリアドレス線である。
Note that 11 is an instruction line, 12 is a branch address line, and 13 is a microprogram memory address line.

〔発明が解決しようとする問題点〕[Problem that the invention seeks to solve]

このような構成のシーケンスコントロール部2
0は、スタツクフアイル3をそのシーケンサ部内
に持つており、スタツクフアイル3の大きさは、
4〜8ワード程度と少ないものであつて、この点
で問題点を有している。
Sequence control section 2 with such a configuration
0 has stack file 3 in its sequencer section, and the size of stack file 3 is:
It is small, about 4 to 8 words, and has a problem in this respect.

スタツクフアイル3の容量を増加するために
は、第4図に見るように、スタツクフアイル3を
外部に置く構成が考えられる。このとき、第4図
のシーケンスコントロール部21に見るように、
スタツクフアイルアドレス線14と、スタツクフ
アイル入出力データ線17、スタツク制御線(リ
ード、ライト信号線)15をそれぞれ独立に設け
ると、シーケンスコントロール部21からの入出
力線が増えて、シーケンスコントロール部21の
LSI化の際の欠点となる。
In order to increase the capacity of the stack file 3, it is conceivable to place the stack file 3 externally, as shown in FIG. At this time, as seen in the sequence control section 21 in FIG.
When the stack file address line 14, the stack file input/output data line 17, and the stack control line (read/write signal line) 15 are provided independently, the number of input/output lines from the sequence control section 21 increases, and the sequence control Part 21
This is a drawback when converting to LSI.

なお、図中、16は、3ステートドライバであ
り、Pは、これをハイインピーダンス状態にセツ
トする信号である。
In the figure, 16 is a 3-state driver, and P is a signal for setting this to a high impedance state.

〔発明の目的〕[Purpose of the invention]

この発明は、このような従来技術の問題点乃至
欠点にかんがみてなされたものであつて、このよ
うな問題点等を解決するとともに、マイクロプロ
グラムシーケンサ(マイクロプロセツサユニツト
のシーケンスコントロール部)のスタツクフアイ
ルを外部に設けても、その入出力線が少なくて済
み、LSI化に適した大容量のスタツクフアイルを
設けることができるようなマイクロプログラム制
御システムを提供することを目的とする。
The present invention was made in view of the problems and drawbacks of the prior art, and it solves these problems and improves the startup of a microprogram sequencer (sequence control section of a microprocessor unit). To provide a microprogram control system that requires fewer input/output lines even if a stack file is provided externally, and that can provide a large capacity stack file suitable for LSI implementation.

〔問題点を解決するための手段〕[Means for solving problems]

このような目的を達成するために、本発明は、
マイクロプログラムメモリと、スタツクフアイル
と、前記マイクロプログラムメモリに対してアド
レス情報を送出するシーケンスコントロール部
と、前記マイクロプログラムメモリから出力され
るマイクロ命令を保持するパイプラインレジスタ
とを有し、前記スタツクフアイルは前記シーケン
スコントロール部の外部に形成し、前記シーケン
スコントロール部からは前記スタツクフアイルへ
アドレス線とその制御線を出力し、且つ、前記ス
タツクフアイルの入出力データ線と前記マイクロ
プログラムメモリのアドレス線とを共用する共
に、前記スタツクフアイルを操作する命令の実行
時間を少なくとも2クロツクとして当該スタツク
フアイルをアクセスし、さらに、当該スタツクフ
アイルを操作する時には前記シーケンスコントロ
ール部から前記パイプラインレジスタの出力をロ
ツクして、前記シーケンスコントロール部は、前
記スタツクフアイルとの間のデータ転送を前記マ
イクロプログラムメモリに対するアドレス線を介
して行うことを特徴とするマイクロプログラム制
御システム、にかかるものである。
In order to achieve such an objective, the present invention
The stack file includes a microprogram memory, a stack file, a sequence control unit that sends address information to the microprogram memory, and a pipeline register that holds microinstructions output from the microprogram memory. A stack file is formed outside the sequence control unit, and the sequence control unit outputs an address line and its control line to the stack file, and outputs an input/output data line of the stack file and the microprogram memory. The stack file is shared with the address line of the stack file, and the execution time of the instruction for manipulating the stack file is set to at least two clocks to access the stack file, and when the stack file is manipulated, the pipe is The microprogram control system is characterized in that the sequence control unit transfers data to and from the stack file via an address line to the microprogram memory by locking the output of the line register. It is.

〔作 用〕[Effect]

以上のような本発明によれば、スタツクフアイ
ルを操作する時には、シーケンスコントロール部
からパイプラインレジスタの出力をロツクできる
ようにしてパイプラインクロツク信号を間引き、
スタツク操作命令の実行時間を少なくとも2クロ
ツクとして、CALL命令、RETURN命令等のス
タツク制御命令の実行時間に少なくとも1クロツ
ク割り当てて、外部に設置したスタツクフアイル
との間でデータ入出力を行うことができる。
According to the present invention as described above, when operating a stack file, the output of the pipeline register can be locked from the sequence control section, and the pipeline clock signal is thinned out.
It is possible to allocate at least 2 clocks for the execution time of stack operation commands and at least 1 clock for the execution time of stack control commands such as CALL commands and RETURN commands, and to perform data input/output with an externally installed stack file. can.

この結果、スタツクフアイルの入出力線データ
線をマイクロプログラムメモリのアドレス線と共
用することができ、シーケンスコントロール部
は、スタツクフアイルとの間のデータ転送をマイ
クロプログラムメモリに対するアドレス線を介し
て行うことができることから、スタツクフアイル
に対する入出力データ線が不必要となり、シーケ
ンスコントロール部の外部回路との接続線数が少
なくて済む。
As a result, the input/output data line of the stack file can be shared with the address line of the microprogram memory, and the sequence control section transfers data to and from the stack file via the address line for the microprogram memory. This eliminates the need for input/output data lines for the stack file, and reduces the number of lines connecting the sequence control section to external circuits.

その結果、マイクロプロセツサユニツト等にお
いて、LSI化に適したシーケンスコントロール部
を実現でき、しかもスタツクフアイルの大容量化
が実現できる。
As a result, a sequence control section suitable for LSI implementation can be realized in a microprocessor unit, etc., and the capacity of the stack file can be increased.

〔実施例〕〔Example〕

以下、この発明の一実施例について図面を用い
て詳細に説明する。
Hereinafter, one embodiment of the present invention will be described in detail using the drawings.

第1図は、この発明のマイクロプログラム制御
システムを適用した一実施例のマイクロプロセツ
サユニツトのブロツク図であり、第2図a,b
は、それぞれそのシーケンスコントロールのタイ
ミングチヤートを示す図である。なお、第3図及
び第4図と同一の符号で示す。
FIG. 1 is a block diagram of a microprocessor unit according to an embodiment to which the microprogram control system of the present invention is applied, and FIGS.
2A and 2B are diagrams each showing a timing chart of the sequence control. Note that the same reference numerals as in FIGS. 3 and 4 are used.

第1図に見るシーケンスコントロール部22
は、第4図のシーケンスコントロール部21のス
タツクフアイル入出力データ線17を、マルチプ
レクサ6からマイクロプログラクメモリ9に対し
てアドレス情報が送出されるアドレス線13と共
用している。そしてスタツクフアイル3を操作す
るときには、シーケンスコントロール部22から
パイプラインレジスタ10の出力をロツクできる
ようにしている。
Sequence control section 22 shown in FIG.
The stack file input/output data line 17 of the sequence control unit 21 shown in FIG. When operating the stack file 3, the output of the pipeline register 10 can be locked from the sequence control section 22.

すなわち、マルチプレクサ6の出力を3ステー
トドライバー16を介して、マイクロプログラム
メモリ9側に出力するようにし、パイプラインレ
ジスタ10の出力のロツクは、シーケンスコント
ロール部22からロツク制御線18aにロツク信
号を送出して行い、これをOR動作回路19に入
力して、このOR動作回路19の他の入力端に入
力されているクロツク信号CLKの立ち上がりを
阻止して、パイプラインレジスタ10に入力され
るパイプラインクロツク信号19aのクロツクを
間引いて、パイプラインレジスタ10の動作をロ
ツクするというものである。
That is, the output of the multiplexer 6 is output to the microprogram memory 9 side via the 3-state driver 16, and the output of the pipeline register 10 is locked by sending a lock signal from the sequence control section 22 to the lock control line 18a. This signal is input to the OR operation circuit 19 to block the rising of the clock signal CLK input to the other input terminal of the OR operation circuit 19, and the pipeline signal input to the pipeline register 10 is input to the pipeline register 10. The operation of the pipeline register 10 is locked by thinning out the clock signal 19a.

なお、このクロツク信号CLKに同期して、シ
ーケンスコントロール部22やパイプラインレジ
スタ10等が動作するものである。
Note that the sequence control unit 22, pipeline register 10, etc. operate in synchronization with this clock signal CLK.

ところで、以上のような構成を採る関係からマ
ルチプレクサ6には、スタツクフアイル3に対応
するアドレスを受ける端子Fが不必要である。
Incidentally, due to the above configuration, the multiplexer 6 does not need a terminal F for receiving an address corresponding to the stack file 3.

さて、このマイクロプログラム制御システムの
動作を簡単に説明すると、マイクロプログラムメ
モリ9に格納されているマイクロ命令は、シーケ
ンスコントロール部22からマイクロプログラム
メモリアドレス線13を介して送出されるアドレ
ス情報に従つてアクセスされるものであつて、ク
ロツク信号CLKに同期して、パイプラインレジ
スタ10に取込まれる。
Now, to briefly explain the operation of this microprogram control system, the microinstructions stored in the microprogram memory 9 are executed according to the address information sent from the sequence control section 22 via the microprogram memory address line 13. It is accessed and taken into the pipeline register 10 in synchronization with the clock signal CLK.

すなわち、マイクロプログラムメモリ9のマイ
クロ命令の実行順序は、シーケンスコントロール
部22からのアドレス情報で制御されるものであ
る。
That is, the execution order of microinstructions in the microprogram memory 9 is controlled by address information from the sequence control section 22.

以下、第2図a、第2図bのタイミングチヤー
トに従つてスタツクフアイル3をアクセスする
CALL命令、そのRET命令を例とした、実行動
作について説明する。
Hereinafter, the stack file 3 is accessed according to the timing charts shown in Figures 2a and 2b.
The execution operation will be explained using the CALL instruction and its RET instruction as an example.

第2図aに見るごとく、CALL命令の実行で
は、aに見るようにあるクロツク信号CLKのス
テートT1において、bに見るようにパイプライ
ンレジスタ10からCALL命令のコードが出力さ
れて、これが確定すると、シーケンスコントロー
ル部22のインストラクシヨンデコーダ8でデコ
ードされる。
As shown in Figure 2a, when the CALL instruction is executed, in state T1 of the clock signal CLK as shown in a, the CALL instruction code is output from the pipeline register 10 as shown in b, and this is confirmed. Then, it is decoded by the instruction decoder 8 of the sequence control section 22.

一方、パイプラインレジスタ10に対して、c
に見るように、パイプラインレジスタ10の動作
をロツクするパイプラインロツク信号がクロツク
信号CLKのステートT1とともに立ち上がり、OR
動作回路19を経て、dに見るごとく、パイプラ
インロツク信号が1つ間引かれた形で、その出力
19aが発生し、パイプラインレジスタ10に送
出される。
On the other hand, for the pipeline register 10, c
As shown in the figure, the pipeline lock signal that locks the operation of the pipeline register 10 rises together with the state T1 of the clock signal CLK, and the OR
After passing through the operation circuit 19, as shown in d, the pipeline lock signal is thinned out by one and its output 19a is generated and sent to the pipeline register 10.

その結果、fに見るごとく、ステートT1では、
シーケンスコントロール部22からプログラムカ
ウンタ4の値がマイクロプログラムメモリ9に対
するアドレス情報として出力される。そしてeに
見るスタツクライト信号によつて、この出力され
たアドレス情報がクロツク信号CLKのステート
T1における最後の立ち上がり(又はステートT2
における最初の立ち上がり、以下同じ)でスタツ
クフアイル3に書込まれる。
As a result, as shown in f, in state T 1 ,
The value of the program counter 4 is outputted from the sequence control unit 22 as address information for the microprogram memory 9. Then, the output address information is changed to the state of the clock signal CLK by the stack write signal seen at e.
Last rising edge in T 1 (or state T 2
is written to the stack file 3 at the first rising edge of the signal (the same applies hereafter).

以上の動作にあつては、ステートT1において
パイプラインクロツク信号19a(d参照)は間
引かれるので、パイプラインレジスタ10の内容
は変化しない。
In the above operation, since the pipeline clock signal 19a (see d) is thinned out in state T1 , the contents of the pipeline register 10 do not change.

さて、次のステートT2においては、シーケン
スコントロール部22のアドレス情報の出力とし
て、fに見るようにCALL命令によるブランチ命
令が出力され、ステートT2の最後の立ち上がり
で、このブランチアドレスで指定されたマイクロ
プログラムメモリ9のマイクロ命令がパイプライ
ンレジスタ10に取込まれることになり、ステー
トT3でその命令が実行されるものである。
Now, in the next state T2 , a branch instruction based on the CALL instruction is output as shown in f as address information of the sequence control unit 22, and at the final rise of state T2 , the branch instruction specified by this branch address is output. The microinstruction stored in the microprogram memory 9 is taken into the pipeline register 10, and the instruction is executed in state T3 .

なお、gで見るように、スタツクポインタは、
ステートT2の最後の立ち上がりで、デクリメン
トされ、その値がステートT3でNからN−1と
なる。
Furthermore, as shown in g, the stack pointer is
At the last rising edge of state T2 , it is decremented and its value goes from N to N-1 in state T3 .

以上が、CALL命令についての動作であるが、
これにより、サブルーチン呼び出され、所定の処
理が実行されると、その最後でメインプログラム
にリターンするために、RET命令が出される。
The above is the operation of the CALL instruction,
As a result, when a subroutine is called and a predetermined process is executed, a RET command is issued to return to the main program at the end.

第2図bは、このRET命令についての動作で
ある。
FIG. 2b shows the operation for this RET instruction.

そのaに見るクロツク信号CLKのステートT1
で、bに示すようにパイプラインレジスタ10か
らRET命令のコード(RETURN命令)がシーケ
ンスコントロール部22に入力されると、CALL
命令の時と同様にc,dに見るようにパイプライ
ンロツク信号19aが出力され、パイプラインク
ロツク信号が間引かれる。
State T 1 of clock signal CLK seen in part a
Then, as shown in b, when the RET instruction code (RETURN instruction) is input from the pipeline register 10 to the sequence control unit 22, the CALL
As with the instruction, the pipeline lock signal 19a is output as shown in c and d, and the pipeline clock signal is thinned out.

そして、e,hに見るように、ステートT1
スタツクリード信号及び3ステートドライバー1
6をハイインピーダンスとする信号Pが出力され
る。その結果、3ステートドライバー16がハイ
インピーダンス状態となつて、マルチプレクサ6
側に影響を与えず、また、そこからの影響が阻止
される。
Then, as shown in e and h, the stack read signal and the 3-state driver 1 are activated in state T1.
A signal P with 6 set to high impedance is output. As a result, the 3-state driver 16 becomes a high impedance state, and the multiplexer 6
It does not affect the other side, and any influence from it is prevented.

このとき同時に、gに見るように、スタツクポ
インタ2がインクリメントされ、その値がN−1
からNに変わり、fに見るようにスタツクフアイ
ル3のアドレスNの内容は、スタツクフアイル3
のアクセスタイム(TAC)後に確定にし、ステ
ートT2においてマイクロプログラムメモリ9の
アドレス情報としてスタツクフアイル3から送出
される。
At the same time, as shown in g, stack pointer 2 is incremented and its value becomes N-1.
As shown in f, the contents of address N of stack file 3 are changed from stack file 3 to N.
It is determined after the access time (TAC) and is sent out from the stack file 3 as address information of the microprogram memory 9 in state T2 .

このアドレスにより指定されたマイクロプログ
ラムメモリ9の中のマイクロ命令が読出され、ス
テートT2の最後の立ち上がりでパイプラインレ
ジスタ10に取込まれる。
The microinstruction in the microprogram memory 9 specified by this address is read out and taken into the pipeline register 10 at the final rise of state T2 .

このとき、スタツクフアイル3の出力ステート
T1は、同時にインクリメンタ5に送出されてイ
ンクリメントされた後に、プログラムカウンタ4
に取込まれる。
At this time, the output state of stack file 3 is
T1 is simultaneously sent to the incrementer 5 and incremented, and then the program counter 4
be taken into account.

次のステートT3においては、RET命令により、
スタツクフアイル3から出力されるリターンアド
レスで指定されるマイクロ命令が実行されること
になる。
In the next state T3 , by the RET instruction,
The microinstruction specified by the return address output from the stack file 3 will be executed.

このように、パイプラインレジスタ10のロツ
ク信号18aにより、パイプラインクロツク信号
を間引き、スタツク操作命令の実行時間を2クロ
ツクとして、CALL命令、RETUN命令等のスタ
ツク制御命令の実行時間に1クロツク割当てて、
外部に配置したスタツクフアイルと間でデータ転
送(データ交換を含む)を行うことができる。
In this way, the pipeline clock signal is thinned out using the lock signal 18a of the pipeline register 10, the execution time of the stack operation instruction is set to 2 clocks, and 1 clock is allocated to the execution time of the stack control instructions such as the CALL instruction and the RETUN instruction. hand,
Data transfer (including data exchange) can be performed with stack files located externally.

しかも、スタツクフアイルをシーケンスコント
ロール部から外部に出し、かつマイクロメモリの
データ線を使用しているので、その容量は、マイ
クロメモリに対応して自由に大きく選定すること
が可能である。
Moreover, since the stack file is taken out from the sequence control section and the data line of the micromemory is used, its capacity can be freely selected to be large according to the micromemory.

以上説明してきたが、実施例におけるパイプラ
インレジスタのクロツクをロツクする回路は、ス
タツクフアイルとのデータ転送を行うための制御
回路であつて、このような制御を行うものであれ
ば、実施例に限定されるものではなく、種々の論
理回路により実現できるものである。
As explained above, the circuit that locks the clock of the pipeline register in the embodiment is a control circuit for performing data transfer with the stack file, and if it performs such control, it is suitable for the embodiment. The present invention is not limited to, and can be realized using various logic circuits.

また、スタツクフアイルに対する操作について
の命令を2クロツクで処理しているが、これは、
そのシーケンスコントロール部の制御に対応して
決定すればよく、スタツクフアイルは、いわゆる
スタツクメモリ等のスタツク機能のある記憶部で
あればよく、ここでのスタツクフアイルには、こ
のようなものを含むものである。
Also, instructions for operations on stack files are processed in two clocks, which is
The stack file may be determined in accordance with the control of the sequence control unit, and the stack file may be any storage unit with a stack function such as a so-called stack memory. It is something that

〔発明の効果〕 以上の説明から理解できるように、この発明に
あつては、マイクロプログラムメモリと、スタツ
クフアイルと、マイクロプログラムメモリに対し
てアドレス情報を送出するシーケンスコントロー
ル部と、マイクロプログラムメモリから出力され
るマイクロ命令を保持するパイプラインレジスタ
とを有していて、シーケンスコントロール部は、
スタツクフアイルとの間のデータ転送をマイクロ
プログラムメモリに対するアドレス線を介して行
うようにしているので、スタツクフアイルに対す
る入出力データ線が不必要となり、シーケンスコ
ントロール部の外部回路との接続線数が少なくて
済むことになる。
[Effects of the Invention] As can be understood from the above explanation, the present invention comprises a microprogram memory, a stack file, a sequence control unit that sends address information to the microprogram memory, and a microprogram memory. The sequence control section has a pipeline register that holds microinstructions output from the
Since data transfer to and from the stack file is performed via address lines for the microprogram memory, there is no need for input/output data lines to the stack file, reducing the number of connection lines between the sequence control section and external circuits. This means that less is required.

その結果、マイクロプロセツサユニツト等にお
いて、LSI化に適したマイクロプログラムシーケ
ンサを実現でき、しかもスタツクフアイルの大容
量化が実現できる。
As a result, a microprogram sequencer suitable for LSI implementation can be realized in a microprocessor unit, etc., and the capacity of the stack file can be increased.

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

第1図は、この発明のマイクロプログラム制御
システムを適用した一実施例のマイクロプロセツ
サユニツトのブロツク図、第2図a,bは、それ
ぞれそのシーケンスコントロールのタイミングチ
ヤートを示す図、第3図は、従来のマイクロプロ
グラム制御システムを適用したマイクロプロセツ
サユニツトのブロツク図、第4図は、第3図のも
のにおいてスタツクフアイルを外部に接続した場
合の説明図である。 1……マイクロプロセツサユニツト、2……ス
タツクポインタ、3,……スタツクフアイル、4
……プログラムカウンタ、5……インクリメン
タ、6……マルチプレクサ、7……レジスタ、8
……インストラクシヨンデコーダ、9……マイク
ロプログラムメモリ、11……パイプラインレジ
スタ、18a……パイプラインクロツク信号、1
8b……クロツク信号(CLK)、19……OR型
動作回路、19a……パイプラインクロツク信
号、20,21,22……シーケンスコントロー
ル部。
FIG. 1 is a block diagram of a microprocessor unit according to an embodiment to which the microprogram control system of the present invention is applied, FIGS. 2a and 2b are diagrams showing the timing chart of its sequence control, and FIG. FIG. 4 is a block diagram of a microprocessor unit to which a conventional microprogram control system is applied. FIG. 4 is an explanatory diagram of the structure shown in FIG. 3 when the stack file is connected to the outside. 1...Microprocessor unit, 2...Stack pointer, 3,...Stack file, 4
...Program counter, 5...Incrementer, 6...Multiplexer, 7...Register, 8
...Instruction decoder, 9...Micro program memory, 11...Pipeline register, 18a...Pipeline clock signal, 1
8b...Clock signal (CLK), 19...OR type operation circuit, 19a...Pipeline clock signal, 20, 21, 22...Sequence control section.

Claims (1)

【特許請求の範囲】[Claims] 1 マイクロプログラムメモリと、スタツクフア
イルと、前記マイクロプログラムメモリに対して
アドレス情報を送出するシーケンスコントロール
部と、前記マイクロプログラムメモリから出力さ
れるマイクロ命令を保持するパイプラインレジス
タとを有し、前記スタツクフアイルは前記シーケ
ンスコントロール部の外部に形成し、前記シーケ
ンスコントロール部からは前記スタツクフアイル
へアドレス線とその制御線を出力し、且つ、前記
スタツクフアイルの入出力データ線と前記マイク
ロプログラムメモリのアドレス線とを共用すると
共に、前記スタツクフアイルを操作する命令の実
行時間を少なくとも2クロツクとして当該スタツ
クフアイルをアクセスし、さらに、当該スタツク
フアイルを操作する時には前記シーケンスコント
ロール部から前記パイプラインレジスタの出力を
ロツクして、前記シーケンスコントロール部は、
前記スタツクフアイルとの間のデータ転送を前記
マイクロプログラムメモリに対するアドレス線を
介して行うことを特徴とするマイクロプログラム
制御システム。
1 comprising a microprogram memory, a stack file, a sequence control unit that sends address information to the microprogram memory, and a pipeline register that holds microinstructions output from the microprogram memory; A stack file is formed outside the sequence control unit, and the sequence control unit outputs an address line and its control line to the stack file, and outputs an input/output data line of the stack file and the microprogram. The stack file is shared with the memory address line, and the execution time of the instruction for manipulating the stack file is at least two clocks to access the stack file.Furthermore, when the stack file is manipulated, the sequence control section Locking the output of the pipeline register, the sequence control section:
A microprogram control system characterized in that data transfer to and from the stack file is performed via address lines for the microprogram memory.
JP23787684A 1984-11-12 1984-11-12 Microprogram control system Granted JPS61115135A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP23787684A JPS61115135A (en) 1984-11-12 1984-11-12 Microprogram control system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP23787684A JPS61115135A (en) 1984-11-12 1984-11-12 Microprogram control system

Publications (2)

Publication Number Publication Date
JPS61115135A JPS61115135A (en) 1986-06-02
JPH0337215B2 true JPH0337215B2 (en) 1991-06-04

Family

ID=17021723

Family Applications (1)

Application Number Title Priority Date Filing Date
JP23787684A Granted JPS61115135A (en) 1984-11-12 1984-11-12 Microprogram control system

Country Status (1)

Country Link
JP (1) JPS61115135A (en)

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS57161936A (en) * 1981-03-31 1982-10-05 Fujitsu Ltd Microprgram controlled information processing device

Also Published As

Publication number Publication date
JPS61115135A (en) 1986-06-02

Similar Documents

Publication Publication Date Title
US4524416A (en) Stack mechanism with the ability to dynamically alter the size of a stack in a data processing system
US4118773A (en) Microprogram memory bank addressing system
EP0238090B1 (en) Microcomputer capable of accessing internal memory at a desired variable access time
JP3954171B2 (en) How to fill a vector with scalar values on a computer
JPH0346850B2 (en)
KR940011594B1 (en) Multiprocessor controller having time shared control store
EP0388735A2 (en) Microprogram controller having fixed-instruction generator and microprogram memory
US6205539B1 (en) Method for manipulating a stack pointer with post increment/decrement operation
US4812970A (en) Microprogram control system
US20020032847A1 (en) Method for manipulating a stack pointer with post increment/decrement operation
KR920002573B1 (en) Data processor
JPH0337215B2 (en)
US20080313428A1 (en) Microprocessor
JPH03271829A (en) Information processor
EP0306533A1 (en) High-speed floating point operation system
JP2595992B2 (en) Electronic musical instrument
EP0328422A2 (en) Microcomputer system
JP3474347B2 (en) Instruction decoding unit of microcomputer
US4916601A (en) Means for transferring firmware signals between a control store and a microprocessor means through a reduced number of connections by transfer according to firmware signal function
US5768554A (en) Central processing unit
JP2601055B2 (en) Microprogram sequencer
JP2573711B2 (en) Micro subroutine control method
JPS6122816B2 (en)
JP2000029508A (en) Programmable controller
JPS619728A (en) microprogram controller