JPH0679271B2 - Loop control circuit - Google Patents

Loop control circuit

Info

Publication number
JPH0679271B2
JPH0679271B2 JP62102626A JP10262687A JPH0679271B2 JP H0679271 B2 JPH0679271 B2 JP H0679271B2 JP 62102626 A JP62102626 A JP 62102626A JP 10262687 A JP10262687 A JP 10262687A JP H0679271 B2 JPH0679271 B2 JP H0679271B2
Authority
JP
Japan
Prior art keywords
loop
register
data
count
control circuit
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
JP62102626A
Other languages
Japanese (ja)
Other versions
JPS63268032A (en
Inventor
義弘 藤上
博道 榎本
重夫 辻岡
一実 窪田
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.)
Hitachi Ltd
Original Assignee
Hitachi 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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP62102626A priority Critical patent/JPH0679271B2/en
Publication of JPS63268032A publication Critical patent/JPS63268032A/en
Publication of JPH0679271B2 publication Critical patent/JPH0679271B2/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Landscapes

  • Executing Machine-Instructions (AREA)

Description

【発明の詳細な説明】 [産業上の利用分野] 本発明は、ループ機能を有するマイクロ制御プロセッサ
に係り、特に多重ループ制御に好適なループ制御回路に
関する。
The present invention relates to a microprocessor having a loop function, and more particularly to a loop control circuit suitable for multiple loop control.

[従来の技術] 従来のループ制御回路は、第2図に示すように、ループ
の先頭番地を格納するレジスタ1と、ループ回数を計数
・格納し、ループ終了条件を判定するループカウンタ2
と、レジスタ1およびカウンタ2の両内容を退避記憶す
るスタックエリア4とからなる。多重ループ制御時に
は、レジスタ1内の先頭番地およびカウンタ2内のルー
プ回数、すなわち二つのループ制御データを順次直列に
スタックエリア4に退避する。
[Prior Art] As shown in FIG. 2, a conventional loop control circuit includes a register 1 for storing the start address of a loop and a loop counter 2 for counting and storing the number of loops and determining a loop end condition.
And a stack area 4 for saving and storing the contents of both the register 1 and the counter 2. At the time of multiple loop control, the head address in the register 1 and the number of loops in the counter 2, that is, two loop control data are sequentially saved in series in the stack area 4.

[発明が解決しようとする問題点] 上述のように、従来のループ制御回路では、多重ループ
制御時に、ループの先頭番地およびループ回数の両ルー
プ制御データを別々に退避・復帰するので、ループの先
頭を示すマイクロ命令(以下、ループトップ命令とい
う)とループの終了判定を行う命令(以下、ループエン
ド命令という)とをそれぞれ2命令で構成するか、また
は、1命令で2回データ転送を行うための回路を付加す
る必要があり、多重ループの段数の増加に伴ってプログ
ラム記述が煩雑になるとともに、データの転送サイクル
が多くなり実行速度が遅くなるという問題があった。
[Problems to be Solved by the Invention] As described above, in the conventional loop control circuit, both loop control data of the loop start address and the loop count are separately saved / restored during the multiple loop control. The microinstruction indicating the head (hereinafter referred to as a loop top instruction) and the instruction for determining the end of the loop (hereinafter referred to as a loop end instruction) are each configured by two instructions, or one instruction performs data transfer twice. It is necessary to add a circuit for this, and the program description becomes complicated as the number of stages of the multiple loop increases, and there are problems that the data transfer cycle increases and the execution speed decreases.

本発明の目的は、ループ制御命令を1命令で行なえるよ
うに、1回のループ転送サイクルで両ループ制御データ
の転送を可能とすることにある。
An object of the present invention is to enable transfer of both loop control data in one loop transfer cycle so that one loop control instruction can be executed.

[問題点を解決するための手段] 上記目的を達成するために、本発明は、第1図に示すよ
うに、 マイクロ命令で動作制御を行なうマイクロ制御プロセッ
サの制御回路において、 ループの先頭番地を格納する保持手段1と、 ループ回数を計数・格納し、ループ終了を検出する計数
手段2と、 上記先頭番地および上記ループ回数の両ループ制御デー
タを退避時に記憶する退避記憶手段4と、 上記退避時に上記両データを並列に連結して上記記憶手
段に記憶し、復帰時に上記記憶手段から上記両データを
並列に読出し分割して上記保持手段および上記計数手段
に戻すデータ連結・分割手段3と、 を備え、上記両データを同時に転送するようにしたもの
である。
[Means for Solving the Problems] In order to achieve the above object, the present invention, as shown in FIG. 1, sets a loop start address in a control circuit of a micro control processor for controlling operation by a micro instruction. Holding means 1 for storing, counting means 2 for counting / storing the number of loops and detecting end of loop, save storage means 4 for storing both loop control data of the start address and the number of loops at the time of save, the save At times, the two data are connected in parallel and stored in the storage means, and at the time of restoration, the both data are read in parallel from the storage means and are divided and returned to the holding means and the counting means. Is provided, and both of the above-mentioned data are transferred at the same time.

上記保持手段1にはレジスタ、上記計数手段2にはカウ
ンタ、上記データ連結・分割手段3にはデータセレクタ
をそれぞれ利用することができる。
A register can be used for the holding means 1, a counter can be used for the counting means 2, and a data selector can be used for the data connecting / dividing means 3.

本願発明によるループ制御回路は、より具体的には、マ
イクロプログラムのマイクロ命令で動作制御を行なうマ
イクロ制御プロセッサのループ制御回において、ループ
の先頭番地を格納するループ先頭番地レジスタと、ルー
プ回数を格納するループ回数レジスタと、前記ループ先
頭番地およびループ回数の両ループ制御データを退避時
に並列に記憶するスタックメモリと、前記ループ回数レ
ジスタに設定されたループ回数をループ通過ごとに1減
算して前記ループ回数レジスタの値を更新するデクリメ
ンタと、該デクリメンタによる減算の結果、前記ループ
回数レジスタの値が予め定めた値に達したか否かを判定
することによりループ終了を判定するループ終了判定手
段と、マイクロ命令の番地を指定するプログラムカウン
タと、該プログラムカウンタの値を順次更新するインク
リメンタと、前記ループ制御回路の動作を制御するシー
ケンサ制御手段とを備え、該シーケンサ制御手段は、プ
ログラム処理中にループの開始を示すループトップ命令
が出現したとき、その時点の前記ループ先頭番地レジス
タおよび前記ループ回数レジスタ内の両ループ制御デー
タを並列に前記スタックメモリに格納するとともに、当
該ループトップ命令に係るループ先頭番地およびループ
回数をそれぞれ前記ループ先頭番地レジスタおよびルー
プ回数レジスタに格納し、ループの末尾を示すループエ
ンド命令が出現したとき、前記ループ終了判定手段によ
る判定を行ない、ループ処理継続時には前記ループ先頭
番地レジスタの値を前記プログラムカウンタに書込んで
ループ処理を続行し、ループ処理終了時には直前に退避
した前記両ループ制御データを前記スタックメモリから
並列に前記ループ先頭番地レジスタおよび前記ループ回
数レジスタに読み出して後続のマイクロ命令の実行へ移
行するようにしたものである。
More specifically, the loop control circuit according to the present invention stores a loop start address register for storing a start address of a loop and a loop count in a loop control operation of a micro control processor for controlling operation by a micro instruction of a micro program. Loop count register, a stack memory for storing both loop control data of the loop start address and loop count in parallel at the time of saving, and the loop count set in the loop count register is decremented by 1 for each loop passage A decrementer for updating the value of the number of times register, and a loop end determination means for determining the end of the loop by determining whether the value of the loop number register has reached a predetermined value as a result of the subtraction by the decrementer, A program counter that specifies the address of the micro instruction, and the program An incrementer that sequentially updates the value of the counter and a sequencer control unit that controls the operation of the loop control circuit are provided, and the sequencer control unit, when a loop top instruction indicating the start of the loop appears during program processing, Both loop control data in the loop head address register and the loop count register at that time are stored in parallel in the stack memory, and the loop head address and the loop count related to the loop top instruction are respectively stored in the loop head address register and When the loop end instruction indicating the end of the loop is stored in the loop count register, the loop end determining means makes a determination, and when the loop processing is continued, the value of the loop start address register is written in the program counter and the loop is executed. Continue processing and end loop processing Sometimes it is the retracted immediately before the two-loop control data that so as to shift to execution of subsequent microinstruction is read out to the loop start address register and the loop count register in parallel from the stack memory.

[作用] 本発明のループ制御回路においては、保持手段のループ
先頭番地データおよび計数手段のループ回数データを、
データ連結・分割手段を通すことによって一つのデータ
として退避記憶手段に1度に退避し、復帰時にも退避記
憶手段から1度に両データを読出し分離して元の保持手
段およ計数手段に戻すようにした。
[Operation] In the loop control circuit of the present invention, the loop start address data of the holding means and the loop count data of the counting means are
By passing through the data connecting / dividing means, it is saved as one data in the saving storage means at once, and at the time of restoration, both data are read out from the saving storage means at once and separated, and returned to the original holding means and counting means. I did it.

すなわち、第1図において、多重ループ制御の場合に、
内部ループのループトップ命令毎に外側ループの二つの
ループ制御データ(先頭番地およびループ回数)を、デ
ータ連結・分割手段3を介して並列に退避記憶手段4内
に退避し、外部ループに復帰するときにもデータ連結・
分割手段を介して両ループ制御データを1度に元に戻
す。退避記憶手段4は、他のレジスタ退避データと同様
にループ制御データを扱うことができる。
That is, in FIG. 1, in the case of multiple loop control,
Two loop control data (start address and loop count) of the outer loop for each loop top instruction of the inner loop are saved in parallel in the save storage means 4 via the data linking / dividing means 3 and returned to the outer loop. Sometimes data concatenation
Both loop control data are restored at once through the dividing means. The save storage unit 4 can handle the loop control data like other register save data.

[実施例] 以下、本発明の実施例を第3、第4および第5図を用い
て説明する。
Embodiments Embodiments of the present invention will be described below with reference to FIGS. 3, 4, and 5.

第3図は、本発明の一実施例を示し、ループ先頭番地レ
ジスタ(保持手段)1、ループカウンタ(計数手段)
2、主スタック(退避記憶手段)4、およびループ制御
データと汎用レジスタの退避データなどのデータ6とを
切換えるセレクタ(データ連結・分割手段)5により構
成される。
FIG. 3 shows an embodiment of the present invention, in which a loop head address register (holding means) 1 and a loop counter (counting means) are provided.
2, a main stack (save storage means) 4, and a selector (data connecting / dividing means) 5 for switching between loop control data and data 6 such as save data of general-purpose registers.

第4図を参照して第3図の装置の動作例を説明する。An example of the operation of the apparatus shown in FIG. 3 will be described with reference to FIG.

プログラム処理中にループトップ命令が出現すると、現
在のループ制御データを退避した後、新たなループ制御
データを先頭番地レジスタ1およびループカウンタ2に
格納する。例えば、a番地では、現在のループ制御デー
タを保存するためにスタック4へそのデータの退避を行
なう。そのために、セレクタ5をデータ6側からループ
制御データ側に切換え、上位側に先頭番地レジスタ1、
下位側にループカウンタ2のデータが選択されるように
する。これにより連結されたデータがスタック4に格納
される。その後、先頭番地データ(a+1)をレジスタ
1に、ループ回数データ(32)をカウンタ2に格納す
る。
When a loop top instruction appears during program processing, the current loop control data is saved and new loop control data is stored in the head address register 1 and the loop counter 2. For example, at address a, the current loop control data is saved in the stack 4 to save it. Therefore, the selector 5 is switched from the data 6 side to the loop control data side, and the upper address register 1,
The data of the loop counter 2 is selected on the lower side. Thus, the linked data is stored in the stack 4. After that, the head address data (a + 1) is stored in the register 1 and the loop count data (32) is stored in the counter 2.

a+1番地からの処理を実行中にb番地でも同様にルー
プトップ命令を処理する。a番地のループトップ命令で
レジスタ1およびカウンタ2に格納されたループ制御デ
ータは、スタック4に退避され、新たに先頭番地データ
(b+1)がレジスタ1に、ループ回数データ(2)が
カウンタ2に格納される。
The loop top instruction is similarly processed at the address b while the processing from the address a + 1 is being executed. The loop control data stored in the register 1 and the counter 2 by the loop top instruction at the address a is saved in the stack 4, and the head address data (b + 1) is newly stored in the register 1 and the loop count data (2) is stored in the counter 2. Is stored.

c番地のループエンド命令では、ループカウンタ2内の
データに基づいて終了判定が行なわれる。ここでループ
終了と判定されると、現在格納してあるループ制御デー
タは不要になり、a番地で格納したデータ、すなわち、
b番地で退避したデータをスタック4から復帰し、その
後、次に実行する命令番地をループエンド命令の次の番
地、つまりc+1番地とする。
With the loop end instruction at address c, the end determination is made based on the data in the loop counter 2. When it is determined that the loop has ended, the loop control data currently stored becomes unnecessary, and the data stored at the address a, that is,
The data saved at the address b is restored from the stack 4, and then the instruction address to be executed next is the address next to the loop end instruction, that is, the address c + 1.

また、上記終了判定で、ループ継続と判定されると、ル
ープカウンタ2においてループ計数を行なった後、次に
実行する命令番地をループ先頭番地(b+1)とする。
こうしてループトップ、ループエンド命令に挟まれた命
令を設定回数だけ繰返し実行することによりループが形
成される。
When it is determined that the loop is continued in the above-described end determination, the loop counter 2 counts the loop, and the instruction address to be executed next is set as the loop start address (b + 1).
In this way, a loop is formed by repeatedly executing the instruction sandwiched between the loop top and loop end instructions a set number of times.

d番地のループエンド命令でも同様に終了判定を行な
い、ループ終了時にはa番地以前に格納されていたルー
プ制御データをスタックから復帰してくる。
Similarly, the loop end instruction at the address d is also used to determine the end, and at the end of the loop, the loop control data stored before the address a is returned from the stack.

以上のようにループ制御を行なうことにより、ループ開
始・終了時のループ制御データの退避・復帰をそれぞれ
1回のデータ転送ででき、ループ制御の速度を向上させ
る効果がある。
By performing the loop control as described above, it is possible to save and restore the loop control data at the start and end of the loop by one data transfer, respectively, which has the effect of improving the speed of the loop control.

第5図は、本発明の他の実施例を示している。データス
タック4にRAMを使用するとレジスタに比べアクセス時
間が遅くなるため、この実施例では、スタックの最上部
にTOS(Top of Stack)レジスタ13を設け、スタックア
クセス時間を短くするようにした。このように低速RAM
にレジスタを組合せ、データをバッファすることによる
高速化自体は、一般に知られている。
FIG. 5 shows another embodiment of the present invention. When RAM is used for the data stack 4, the access time becomes slower than that of the register. Therefore, in this embodiment, a TOS (Top of Stack) register 13 is provided at the top of the stack to shorten the stack access time. Thus slow RAM
Speeding up by combining a register with a buffer and buffering data is generally known.

この回路では、TOSレジスタ13をループ先頭番地レジス
タ1とループ回数レジスタ2aとして使用できるように
し、両ループ制御データの連結を容易にしたものであ
る。ループ回数レジスタ2aとデクリメンタ2bと比較器2c
とが、本発明の計数手段2を構成する。また、プログラ
ムカウンタ(PC)9とインクリメンタ8とセレクタ10と
は、次番地制御回路を構成する。セレクタ5は第3図の
ものと同様に、本発明のデータ連結・分割手段3を構成
する。セレクタ5および10は、シーケンサ制御回路11に
より制御される。その他、第5図には、算術論理演算ユ
ニット(ALU)12および汎用レジスタ7を示している。
In this circuit, the TOS register 13 can be used as the loop head address register 1 and the loop count register 2a to facilitate the connection of both loop control data. Loop count register 2a, decrementer 2b, and comparator 2c
And constitute the counting means 2 of the present invention. Further, the program counter (PC) 9, the incrementer 8, and the selector 10 constitute a next address control circuit. The selector 5 constitutes the data connecting / dividing means 3 of the present invention similarly to the one shown in FIG. The selectors 5 and 10 are controlled by the sequencer control circuit 11. In addition, FIG. 5 shows an arithmetic logic unit (ALU) 12 and a general-purpose register 7.

次に、第5図の回路の動作を説明する。まず、ループト
ップ命令が与えられるとシーケンサ制御回路11は、この
TOSレジスタ入力セレクタ5を切換えてプログラムカウ
ンタ9の内容にインクリメンタ8で1を加えた値をTOS
レジスタ13の上位側に、汎用レジスタ7に予め設定して
おいたループ回数のデータをTOSレジスタ13の下位側に
入力する。この新たなデータによりTOSレジスタ13の内
容が更新される前に、TOSレジスタ13の内容はスタック
4に退避される。こうしてループトップ命令によりルー
プの先頭番地とループの回数データが並列にTOSレジス
タ13に格納される。
Next, the operation of the circuit shown in FIG. 5 will be described. First, when the loop top instruction is given, the sequencer control circuit 11
The TOS register input selector 5 is switched and the value obtained by adding 1 to the contents of the program counter 9 by the incrementer 8 is TOS.
The data of the number of loops preset in the general-purpose register 7 is input to the lower side of the TOS register 13 in the upper side of the register 13. The contents of the TOS register 13 are saved in the stack 4 before the contents of the TOS register 13 are updated with this new data. In this way, the loop top instruction causes the start address of the loop and the loop count data to be stored in parallel in the TOS register 13.

次に、ループ内の命令実行後、ループエンド命令が与え
られると、比較器2cによりループ回数を判断し、シーケ
ンサ制御回路11に結果を与える。ループ終了と判断した
時は、セレクタ5でインクリメンタ8の出力を選択し、
ループから脱出して次の命令を実行する。このとき、TO
Sレジスタ13にはスタック4からさきほど退避したデー
タを呼戻しておく。また、シーケンサ制御回路11でルー
プ継続と判断したとき、セレクタ10はTOSレジスタ13の
アドレス部を選択するのでループの先頭番地がPC9に入
力されループの先頭に戻ることができる。このとき、TO
Sレジスタ入力セレクタ5の下位側をデクリメンタ2bの
出力側に切換えることによりループカウンタ2の内容は
1だけ減少する。
Next, after execution of the instruction in the loop, when the loop end instruction is given, the comparator 2c judges the number of loops and gives the result to the sequencer control circuit 11. When it is determined that the loop has ended, the selector 5 selects the output of the incrementer 8,
Exit the loop and execute the next instruction. At this time, TO
The data previously saved from the stack 4 is recalled to the S register 13. Further, when the sequencer control circuit 11 determines that the loop continues, the selector 10 selects the address part of the TOS register 13, so that the head address of the loop can be input to the PC 9 and the loop can be returned to the head. At this time, TO
By switching the lower side of the S register input selector 5 to the output side of the decrementer 2b, the content of the loop counter 2 is decreased by 1.

このように本実施例によれば、レジスタの個数を減らす
と共に、多重ループ時のループ先頭番地とループ回数の
データを1度にスタック4に退避させることにより速度
を向上させることができる。
As described above, according to the present embodiment, the number of registers can be reduced, and the data of the loop start address and the number of loops in the multiple loop can be saved in the stack 4 at once to improve the speed.

[発明の効果] 以上のように、本発明によれば、ループの開始・終了時
におけるループ制御データのスタック退避および復帰時
に、ループ制御データを並列に転送するため、従来は、
先頭番地とループ回数データを2回に分けて転送してい
たものを、1回のループ転送でできるようになり、特に
多重ループにおいてループ制御速度向上の効果がある。
[Effects of the Invention] As described above, according to the present invention, the loop control data is transferred in parallel at the time of stack saving and restoration of the loop control data at the start and end of the loop.
It is now possible to transfer the start address and the loop count data divided into two times by one loop transfer, and there is an effect of improving the loop control speed especially in a multiple loop.

また、従来2回データ転送を行なうため、従来ループ開
始・終了時のループトップ、ループエンド命令が2命令
であったものを、本発明では1命令で行なうことが可能
になり、プログラム記述が容易になるという効果もあ
る。
Further, since the conventional data transfer is performed twice, it is possible to perform one instruction in the present invention, which was conventionally two instructions for the loop top and loop end instructions at the start and end of the loop, and the program description is easy. There is also the effect of becoming.

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

第1図は本発明の構成を示すブロック図、第2図は従来
のループ制御回路のブロック図、第3図は本発明の一実
施例のブロック図、第4図はその動作を説明するための
説明図、第5図は本発明の他の実施例である。 1……ループ先頭番地レジスタ(保持手段)、2……ル
ープカウンタ(計数手段)、3……セレクタ(データ連
結・分割手段)、4……データスタック(退避記憶手
段)。
FIG. 1 is a block diagram showing the configuration of the present invention, FIG. 2 is a block diagram of a conventional loop control circuit, FIG. 3 is a block diagram of an embodiment of the present invention, and FIG. 4 is for explaining its operation. And FIG. 5 shows another embodiment of the present invention. 1 ... Loop start address register (holding means), 2 ... Loop counter (counting means), 3 ... Selector (data linking / dividing means), 4 ... Data stack (saving storage means).

───────────────────────────────────────────────────── フロントページの続き (72)発明者 窪田 一実 神奈川県横浜市戸塚区吉田町292番地 株 式会社日立製作所マイクロエレクトロニク ス機器開発研究所内 (56)参考文献 特開 昭60−20242(JP,A) ─────────────────────────────────────────────────── ─── Continuation of the front page (72) Inventor Kazumi Kubota, 292 Yoshida-cho, Totsuka-ku, Yokohama-shi, Kanagawa Inside the Hitachi, Ltd. Microelectronics Equipment Development Laboratory (56) Reference JP 60-20242 ( JP, A)

Claims (3)

【特許請求の範囲】[Claims] 【請求項1】マイクロプログラムのマイクロ命令で動作
制御を行なうマイクロ制御プロセッサのループ制御回路
において、 ループの先頭番地を格納するループ先頭番地レジスタ
と、 ループ回数を格納するループ回数レジスタと、 前記ループ先頭番地およびループ回数の両ループ製御デ
ータを退避時に並列に記憶するスタックメモリと、 前記ループ回数レジスタに設定されたループ回数をルー
プ通過ごとに1減算して前記ループ回数レジスタの値を
更新するデクリメンタと、 該デクリメンタによる減算の結果、前記ループ回数レジ
スタの値が予め定めた値に達したか否かを判定すること
によりループ終了を判定するループ終了判定手段と、 マイクロ命令の番地を指定するプログラムカウンタと、 該プログラムカウンタの値を順次更新するインクリメン
タと、 前記ループ制御回路の動作を制御するシーケンサ制御手
段とを備え、 該シーケンサ制御手段は、 プログラム処理中にループの開始を示すループトップ命
令が出現したとき、その時点の前記ループ先頭番地レジ
スタおよび前記ループ回数レジスタ内の両ループ制御デ
ータを並列に前記スタックメモリに格納するとともに、
当該ループトップ命令に係るループ先頭番地およびルー
プ回数をそれぞれ前記ループ先頭番地レジスタおよびル
ープ回数レジスタに格納し、 ループの末尾を示すループエンド命令が出現したとき、
前記ループ終了判定手段による判定を行ない、ループ処
理継続時には前記ループ先頭番地レジスタの値を前記プ
ログラムカウンタに書込んでループ処理を続行し、ルー
プ処理終了時には直前に退避した前記両ループ制御デー
タを前記スタックメモリから並列に前記ループ先頭番地
レジスタおよび前記ループ回数レジスタに読み出して後
続のマイクロ命令の実行へ移行することを特徴とするル
ープ制御回路。
1. A loop control circuit of a microprocessor for controlling an operation by a micro instruction of a micro program, a loop start address register for storing a loop start address, a loop count register for storing a loop count, and the loop top. A stack memory that stores both the loop control data of the address and the loop count in parallel at the time of saving, and a decrementer that updates the value of the loop count register by subtracting 1 from the loop count set in the loop count register each time the loop passes. And a loop end judging means for judging the loop end by judging whether or not the value of the loop number register reaches a predetermined value as a result of the subtraction by the decrementer, and a program for designating the address of the micro instruction. The counter and the program that sequentially updates the value of the program counter. And a sequencer control means for controlling the operation of the loop control circuit. The sequencer control means, when a loop top instruction indicating the start of a loop appears during program processing, the loop top address register at that time. And storing both loop control data in the loop count register in parallel in the stack memory,
When the loop start address and the loop count related to the loop top instruction are stored in the loop start address register and the loop count register, respectively, and when a loop end instruction indicating the end of the loop appears,
The loop end judging means makes a judgment, and when the loop processing is continued, the value of the loop start address register is written in the program counter to continue the loop processing, and when the loop processing is completed, the both loop control data saved immediately before is stored in the loop control data. A loop control circuit, wherein the loop head address register and the loop count register are read in parallel from a stack memory and the subsequent micro instruction is executed.
【請求項2】前記スタックメモリの最上部のデータを保
持するTOSレジスタを前記スタックメモリの前段に設
け、該TOSレジスタに上位側または下位側の一方を前記
ループ先頭番地レジスタとして、他方を前記ループ回数
レジスタとして用いることを特徴とする特許請求の範囲
第1項記載のループ制御回路。
2. A TOS register that holds the uppermost data of the stack memory is provided in the preceding stage of the stack memory, and one of the upper side and the lower side of the TOS register is the loop start address register and the other is the loop. The loop control circuit according to claim 1, wherein the loop control circuit is used as a frequency register.
【請求項3】前記スタックメモリは、前記両ループ制御
データ以外のデータの退避領域として使用されることを
特徴とする特許請求の範囲第1項または第2項記載のル
ープ制御回路。
3. The loop control circuit according to claim 1 or 2, wherein the stack memory is used as a save area for data other than the both loop control data.
JP62102626A 1987-04-24 1987-04-24 Loop control circuit Expired - Lifetime JPH0679271B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP62102626A JPH0679271B2 (en) 1987-04-24 1987-04-24 Loop control circuit

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP62102626A JPH0679271B2 (en) 1987-04-24 1987-04-24 Loop control circuit

Publications (2)

Publication Number Publication Date
JPS63268032A JPS63268032A (en) 1988-11-04
JPH0679271B2 true JPH0679271B2 (en) 1994-10-05

Family

ID=14332450

Family Applications (1)

Application Number Title Priority Date Filing Date
JP62102626A Expired - Lifetime JPH0679271B2 (en) 1987-04-24 1987-04-24 Loop control circuit

Country Status (1)

Country Link
JP (1) JPH0679271B2 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6458023A (en) * 1987-08-28 1989-03-06 Ricoh Kk Microprogram controller
EP0454606A3 (en) * 1990-04-23 1993-08-11 International Business Machines Corporation Digital processor with a pipelined architecture permitting an improved concurrent processing of multiple applications

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6020242A (en) * 1983-07-15 1985-02-01 Sony Corp Program control circuit
JPS60132242A (en) * 1983-12-20 1985-07-15 Matsushita Electric Ind Co Ltd Program control device

Also Published As

Publication number Publication date
JPS63268032A (en) 1988-11-04

Similar Documents

Publication Publication Date Title
US4471433A (en) Branch guess type central processing unit
KR0138468B1 (en) Microcomputer
JPH0348536B2 (en)
JPH0679271B2 (en) Loop control circuit
JP2520882B2 (en) Data processing device and data processing method
JP2503984B2 (en) Information processing device
JPS6125166B2 (en)
JP2659603B2 (en) Arithmetic processing method and arithmetic processing device
JP3614714B2 (en) DMA controller
JPS62156738A (en) Program controller
JPS5829051A (en) Operation processing device
JPS59146342A (en) Loop control system
JPH04370832A (en) Processor circuit
JPS5999552A (en) Microcomputer
JPH0528092A (en) Microprocessor
JPS61127035A (en) Processor containing repetition control circuit
JPH02110739A (en) Central processing unit for multi-task
JPS61241843A (en) Information processor
JPH08328879A (en) Task management system
JPS63240633A (en) Central processing unit
JPS6120139A (en) Interruption control system
JPS6313217B2 (en)
JPH05165640A (en) Microprocessor
JPH01309174A (en) Vector processor
JPS60163131A (en) Information processing unit