JPH04346129A - Method and device for program repeat control - Google Patents

Method and device for program repeat control

Info

Publication number
JPH04346129A
JPH04346129A JP11826791A JP11826791A JPH04346129A JP H04346129 A JPH04346129 A JP H04346129A JP 11826791 A JP11826791 A JP 11826791A JP 11826791 A JP11826791 A JP 11826791A JP H04346129 A JPH04346129 A JP H04346129A
Authority
JP
Japan
Prior art keywords
instruction
register
repeat
counter
memory
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
JP11826791A
Other languages
Japanese (ja)
Other versions
JP2833259B2 (en
Inventor
Katsuhiko Ueda
勝彦 上田
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 JP11826791A priority Critical patent/JP2833259B2/en
Publication of JPH04346129A publication Critical patent/JPH04346129A/en
Application granted granted Critical
Publication of JP2833259B2 publication Critical patent/JP2833259B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Advance Control (AREA)
  • Executing Machine-Instructions (AREA)

Abstract

PURPOSE:To offer a program repeat processor whose repeat counter set instruction execution cycle is substantially zero. CONSTITUTION:A memory 1 stores a repeat counter set instruction 32 as a repeat process control instruction behind an instruction A31 to be processed repeatedly. A decoder register 5, a repeat counter 8, an instruction detection signal 10, a repeat control part 11, and gates 16 and 17 are also provided. Consequently, the execution of the instruction A31 and the execution of the repeat counter set instruction 32 are performed in parallel and the execution of the repeat counter set instruction 32 is shortened to a substantially zero cycle.

Description

【発明の詳細な説明】[Detailed description of the invention]

【0001】0001

【産業上の利用分野】本発明はマイクロプロセッサにお
いて1つの命令の繰り返し実行を制御するプログラムリ
ピート制御方法及び装置に関するものである。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a program repeat control method and apparatus for controlling the repeated execution of one instruction in a microprocessor.

【0002】0002

【従来の技術】近年、プログラムの高速実行、あるいは
命令メモリのワード数削減を目指し、例えば特公昭62
−42301号公報に示されているような、一旦フェッ
チした命令を繰り返し実行するプログラムリピート処理
装置が考案されている。
[Background Art] In recent years, efforts have been made to achieve high-speed program execution or to reduce the number of words in instruction memory.
A program repeat processing device has been devised, as shown in Japanese Patent No. 42301, which repeatedly executes an instruction once fetched.

【0003】以下図面を参照しながら、上記した従来の
プログラムリピート制御装置の一例について説明する。
An example of the above-mentioned conventional program repeat control device will be described below with reference to the drawings.

【0004】図7は従来のプログラムリピート制御装置
のブロック図を示すものである。図7において、71は
プログラム繰り返し実行回数(リピート回数と同義)を
カウントするリピートカウンタ、72は命令を格納する
メモリ、73はメモリ72へアドレスを与えるプログラ
ムカウンタ、74はプログラムメモリ72の出力を一時
保持する命令レジスタ、75は命令レジスタの出力をデ
コードし各種制御信号を出力する制御部である。
FIG. 7 shows a block diagram of a conventional program repeat control device. In FIG. 7, 71 is a repeat counter that counts the number of times the program is repeatedly executed (synonymous with the number of repeats), 72 is a memory that stores instructions, 73 is a program counter that provides an address to the memory 72, and 74 is used to temporarily store the output of the program memory 72. The holding instruction register 75 is a control unit that decodes the output of the instruction register and outputs various control signals.

【0005】以上のように構成された従来のプログラム
リピート制御装置について、以下その動作について説明
する。まず図8に示すように、メモリ72のn番地にリ
ピートカウンタセット命令81、n+1番地に命令A8
2、n+2番地に命令B83をそれぞれ格納しておく。 この状態でプログラムカウンタ73がnとなるとリピー
トカウンタセット命令81が命令レジスタ74に格納さ
れると共に、命令コードに含まれるリピート回数(今の
場合7とする)がリピートカウンタ71に格納される。 制御部75は命令レジスタ74の出力を受け、次に命令
レジスタ74に格納される命令をリピートカウンタ71
が零になるまで繰り返す制御を行なう。そこでプログラ
ムカウンタ73がn+1になり命令A82が命令レジス
タ74に格納されると、図9に示すように命令A82が
7回実行されることになる。(特公昭62−42301
号公報)
The operation of the conventional program repeat control device configured as described above will be explained below. First, as shown in FIG. 8, the repeat counter set instruction 81 is placed at address n of the memory 72, and the instruction A8 is placed at address n+1.
Instruction B83 is stored at addresses 2 and n+2, respectively. In this state, when the program counter 73 reaches n, a repeat counter set instruction 81 is stored in the instruction register 74, and the number of repeats (7 in this case) included in the instruction code is stored in the repeat counter 71. The control unit 75 receives the output of the instruction register 74 and then transfers the instruction stored in the instruction register 74 to the repeat counter 71.
The control is repeated until becomes zero. When the program counter 73 reaches n+1 and the instruction A82 is stored in the instruction register 74, the instruction A82 will be executed seven times as shown in FIG. (Tokuko Showa 62-42301
Publication No.)

【0006】[0006]

【発明が解決しようとする課題】しかしながら上記のよ
うな構成では図9に示すように、リピートカウンタセッ
ト命令の実行サイクルが陽に現われてくる。一方ディジ
タル信号処理プロセッサ(Digital  Sign
al  Processor、以下DSPと記す)では
、1つの命令あるいは命令群を数千回繰り返し実行する
ことが多いが、従来のプログラムリピート制御装置を用
いると上述のようにリピートカウンタセット命令のよう
な非演算命令の実行にも数千マシンサイクル消費してし
まい、これがDSPの目的である高速演算への大きな妨
げになるという問題点を有していた。
However, in the above configuration, as shown in FIG. 9, the execution cycle of the repeat counter set instruction appears explicitly. On the other hand, digital signal processing processor (Digital Sign
al Processor (hereinafter referred to as DSP) often repeatedly executes one instruction or a group of instructions several thousand times, but when using a conventional program repeat control device, as mentioned above, non-operating instructions such as the repeat counter set instruction are executed repeatedly. This has the problem of consuming thousands of machine cycles to execute an instruction, which is a major hindrance to high-speed calculation, which is the purpose of a DSP.

【0007】本発明は上記問題点に鑑み、リピートカウ
ンタセット命令実行サイクルを実質上0サイクルとする
プログラムリピート処理装置を提供する事を目的とする
SUMMARY OF THE INVENTION In view of the above-mentioned problems, it is an object of the present invention to provide a program repeat processing device in which the repeat counter set instruction execution cycle is substantially 0 cycles.

【0008】[0008]

【課題を解決するための手段】本発明は、繰り返し実行
対象となる第1の命令と前記第1の命令の次番地に格納
され前記第1の命令の繰り返し実行を指示する第2の命
令を少なくとも記憶するメモリと、前記メモリにアドレ
ス信号を与えるプログラムカウンタと、前記プログラム
カウンタが示す前記メモリの内容を一時記憶する命令レ
ジスタと前記命令レジスタの出力をデコードし各種の制
御信号を出力するデコーダと、前記デコーダの出力を一
時保持するレジスタと、前記第2の命令によりプリセッ
トされ前記第1の命令の実行終了毎にその値を1ずつ減
じるカウンタと、前記デコーダで前記第2の命令以外が
デコードされた時は、前記プログラムカウンタへは内容
のインクリメントを、前記命令レジスタには前記メモリ
出力の取り込みを、前記レジスタには前記デコード出力
の取り込みを指示し、前記デコーダで前記第2の命令が
デコードされた時は、これ以降の前記プログラムカウン
タへは内容のインクリメント禁止を、前記命令レジスタ
には前記メモリ出力の取り込み禁止を、前記レジスタに
はこれ以降の前記デコード出力の取り込み禁止を指示し
、さらに前記第2の命令の実行サイクルでは前記カウン
タへ前記第1の命令で指示される繰り返し回数の書き込
みを指示し、前記カウンタが前記第1の命令の実行終了
毎にその値を1ずつ減じた結果規定回数の繰り返しを行
なったことを示した場合、前記プログラムカウンタへは
内容のインクリメント動作の再開を、前記命令レジスタ
には前記メモリ出力の取り込み動作の再開を、前記レジ
スタには前記デコード出力の取り込み動作再開を指示す
る制御手段とを備えたプログラムリピート制御装置であ
る。
[Means for Solving the Problems] The present invention provides a first instruction to be repeatedly executed and a second instruction stored at an address next to the first instruction and instructing repeated execution of the first instruction. a program counter that provides an address signal to the memory; an instruction register that temporarily stores the contents of the memory indicated by the program counter; and a decoder that decodes the output of the instruction register and outputs various control signals. , a register that temporarily holds the output of the decoder, a counter that is preset by the second instruction and whose value is decremented by 1 each time execution of the first instruction is completed, and instructions other than the second instruction are decoded by the decoder. When the program counter is incremented, the instruction register is instructed to capture the memory output, and the register is instructed to capture the decoded output, and the decoder decodes the second instruction. When the program counter is incremented, the instruction register is instructed to be prohibited from receiving the memory output, and the register is instructed to be prohibited from receiving the decoded output from now on. In the execution cycle of the second instruction, the counter is instructed to write the number of repetitions specified by the first instruction, and the counter decreases its value by 1 each time the execution of the first instruction is completed. If it is indicated that the specified number of repetitions have been performed, the program counter is set to resume incrementing the contents, the instruction register is set to resume fetching the memory output, and the register is set to resume fetching the decoded output. The program repeat control device includes a control means for instructing restart of operation.

【0009】[0009]

【作用】本発明は上記した構成によって、前記メモリに
繰り返し処理対象となる第1の命令実行開始した後に、
これと並行して前記第1の命令の繰り返し実行を指示す
る前記第2の命令と前記制御手段による前記第1の命令
の繰り返し実行制御を行う。
[Operation] With the above-described configuration, the present invention has the above-mentioned structure. After starting execution of the first instruction to be repeatedly processed in the memory,
In parallel with this, the second command instructs the repeated execution of the first command, and the control means controls the repeated execution of the first command.

【0010】0010

【実施例】  以下本発明の一実施例のプログラムリピ
ート制御装置について、図面を参照しながら説明する。
Embodiment A program repeat control device according to an embodiment of the present invention will be described below with reference to the drawings.

【0011】図1は本発明の実施例におけるプログラム
リピート制御装置のブロック図を示すものであるが、こ
の装置は図2に示したように、φ1、φ2の2相クロッ
クで動作する。図1において、1は命令を記憶するメモ
リ、2はメモリ1にアドレス信号を与え、φ1クロック
の立ち上がりで内容がインクリメントされるプログラム
カウンタ、3はメモリ1の出力をクロックφ1の立ち上
がりで取り込む命令レジスタ、4は命令レジスタ3の出
力をデコードするデコーダ、5はデコーダ4の出力をク
ロックφ1の立ち上がりで取り込むデコーダレジスタ、
6はデコーダレジスタ5の出力である各種制御信号、7
は命令レジスタ3の一部の出力をクロックφ2の立ち上
がりで取り込むラッチ、8はラッチ7の出力を初期値と
し、クロックφ1の立ち上がりでカウントダウンするリ
ピートカウンタ、9はリピートカウンタ8の内容が零に
なった時”1”となる零検出信号、10はデコーダ4が
後述のリピートカウンタセット命令32をデコードした
時”1”となる命令検出信号、11は零検出信号9、命
令検出信号10を入力としクロックφ2の立ち上がりで
内部状態を変化させ、カウンタ8へは後述のプリセット
信号12、カウント許可信号13を、後述のゲート16
へは後述の更新禁止信号14を、後述のゲート17へは
後述のデコーダレジスタ更新禁止信号15を出力するリ
ピート制御部、12はリピートカウンタ8に、ラッチ7
の出力をクロックφ1の立ち上がりで取り込むことを指
示するプリセット信号、13はリピートカウンタ8に、
クロックφ1の立ち上がりでカウントダウンを行なうこ
とを指示するカウント許可信号、14はプログラムカウ
ンタ2及び命令レジスタ3が内容を更新することを禁止
する更新禁止信号、15はデコーダレジスタ5が内容を
更新することを禁止するデコーダレジスタ更新禁止信号
、16は更新禁止信号14とクロックφ1の論理積をと
りその結果をプログラムカウンタ2、命令レジスタ3に
出力するゲート、17はデコーダレジスタ更新禁止信号
15とクロックφ1の論理積をとりその結果をデコーダ
レジスタ5に出力するゲートである。
FIG. 1 shows a block diagram of a program repeat control device according to an embodiment of the present invention, and as shown in FIG. 2, this device operates with two-phase clocks φ1 and φ2. In Figure 1, 1 is a memory that stores instructions, 2 is a program counter that provides an address signal to memory 1 and whose contents are incremented at the rising edge of the φ1 clock, and 3 is an instruction register that captures the output of memory 1 at the rising edge of the clock φ1. , 4 is a decoder that decodes the output of the instruction register 3, 5 is a decoder register that takes in the output of the decoder 4 at the rising edge of the clock φ1,
6 various control signals which are the output of the decoder register 5; 7
8 is a latch that captures a part of the output of instruction register 3 at the rising edge of clock φ2; 8 is a repeat counter that takes the output of latch 7 as its initial value and counts down at the rising edge of clock φ1; 10 is a command detection signal which becomes "1" when the decoder 4 decodes a repeat counter set command 32 described later, 11 is a zero detection signal 9 and a command detection signal 10 as inputs. The internal state is changed at the rising edge of clock φ2, and a preset signal 12 and a count permission signal 13, which will be described later, are sent to the counter 8, and a gate 16, which will be described later, is sent to the counter 8.
12 is a repeat control unit that outputs an update prohibition signal 14 (described later) to a gate 17 (described later), a decoder register update prohibition signal 15 (described later) to a gate 17 (described later);
A preset signal 13 instructs the repeat counter 8 to capture the output of the clock φ1 at the rising edge of the clock φ1.
A count permission signal instructs to count down at the rising edge of clock φ1; 14 is an update prohibition signal that prohibits the program counter 2 and instruction register 3 from updating the contents; 15 is a signal that prohibits the decoder register 5 from updating the contents. Decoder register update prohibition signal to be prohibited; 16 is a gate that ANDs the update prohibition signal 14 and clock φ1 and outputs the result to the program counter 2 and instruction register 3; 17 is the logic of the decoder register update prohibition signal 15 and clock φ1. This is a gate that takes the product and outputs the result to the decoder register 5.

【0012】また図3はメモリ1の内容を示すものであ
って、n番地には繰り返し実行対象となる命令A31が
、n+1番地にはn番地の命令の繰り返し実行を指示す
るリピートカウンタセット命令32が、n+2、n+3
番地にはそれぞれ1回づつ実行される命令B33、命令
C34が格納されている。
FIG. 3 shows the contents of the memory 1, in which an instruction A31 to be repeatedly executed is stored at address n, and a repeat counter set instruction 32 that instructs repeated execution of the instruction at address n+1 is stored at address n+1. But n+2, n+3
An instruction B33 and an instruction C34 each executed once are stored at the address.

【0013】さらに図4はリピート制御部11の内部状
態変化を示している。リピート制御部11は、待ち状態
41、リピートカウンタセット状態12、リピートカウ
ンタカウントダウン状態43の、3つの内部状態を持つ
。待ち状態41からリピートカウンタセット状態42へ
の遷移は、デコーダ4がリピートカウンタセット命令3
2を検出したことを示す命令検出信号10が”1”の時
のクロックφ2で行なわれる。リピートカウンタセット
状態42からリピートカウンタカウントダウンセット状
態43への遷移はクロックφ2で無条件に行なわれる。 リピートカウンタカウントダウンセット状態43から待
ち状態41への遷移は、リピートカウンタ8の内容が零
である事を示す零検出信号9が”1”の時のクロックφ
2で行なわれる。またそれぞれの状態で、リピート制御
部11の出力信号は図5に示すようになる。
Furthermore, FIG. 4 shows changes in the internal state of the repeat control section 11. The repeat control unit 11 has three internal states: a wait state 41, a repeat counter set state 12, and a repeat counter countdown state 43. To transition from the wait state 41 to the repeat counter set state 42, the decoder 4 issues a repeat counter set command 3.
This is performed using the clock φ2 when the instruction detection signal 10 indicating that the command detection signal 2 is detected is "1". Transition from the repeat counter set state 42 to the repeat counter countdown set state 43 is performed unconditionally at clock φ2. The transition from the repeat counter countdown set state 43 to the wait state 41 occurs at the clock φ when the zero detection signal 9, which indicates that the content of the repeat counter 8 is zero, is "1".
It is done in 2. Further, in each state, the output signal of the repeat control section 11 is as shown in FIG.

【0014】さらに図6には図1に示したプログラムリ
ピート装置を構成する各要素の状態及び各信号の動きを
示す。図6には以降の説明で使用するサイクル番号を示
しているが、各サイクルは図2に示したようにφ1、φ
2の2つのクロックで構成される。
Further, FIG. 6 shows the state of each element and the movement of each signal constituting the program repeat device shown in FIG. 1. FIG. 6 shows the cycle numbers used in the following explanation, and each cycle is φ1, φ as shown in FIG.
It consists of two clocks: 2.

【0015】以上のように構成されたプログラムリピー
ト制御装置について、以下図1及び図3、図4、図5、
図6を用い、図6に示したサイクル番号を基準にしてそ
の動作を説明する。 (1)サイクル番号=1 ・プログラムカウンタ2:クロックφ1でインクリメン
トされ内容はnとなる。 ・メモリ1:n番地のアクセスを行なう。 (2)サイクル番号=2 ・プログラムカウンタ2:クロックφ1でインクリメン
トされ内容はn+1となる。 ・メモリ1:n+1番地のアクセスを行なう。 ・命令レジスタ3:クロックφ1で、前サイクルでアク
セスしたn番地の内容である命令A31を取り込む。 ・デコーダ4:命令A31のデコード処理を行なう。 (3)サイクル番号=3 ・プログラムカウンタ2:クロックφ1でインクリメン
トされ内容はn+2となる。 ・メモリ1:n+2番地のアクセスを行なう。 ・命令レジスタ3:クロックφ1で、前サイクルでアク
セスしたn+1番地の内容であるリピートカウンタセッ
ト命令32を取り込む。 ・デコーダ4:リピートカウンタセット命令32のデコ
ード処理を行なった結果、命令検出信号10を”1”と
する。 ・デコーダレジスタ5:前サイクルでデコーダ4でデコ
ードした命令A31のデコード結果をクロックφ1で取
り込む。その結果、各種制御信号6の中のいくつかが能
動となり、命令A31が実行される。 ・リピート制御部11:命令検出信号10が”1”とな
るので、クロックφ2で内部状態を待ち状態41からリ
ピートカウンタセット状態42に変化。その結果リピー
ト制御部の出力は図5中のリピートカウンタセット状態
に示したものとなる。 ・ラッチ7:命令レジスタ3に格納されているリピート
カウンタセット命令32の中からリピート回数を示す部
分をクロックφ2で取り込む。 (4)サイクル番号=4 ・プログラムカウンタ2:クロックφ1でインクリメン
トされ内容はn+3となる。 ・メモリ1:n+3番地のアクセスを行なう。 ・命令レジスタ3:クロックφ1で、前サイクルでアク
セスしたn+2番地の内容である命令B33を取り込む
。 ・デコーダ4:命令B33のデコード処理を行なう。 ・デコーダレジスタ5:デコーダレジスタ更新禁止信号
15が”1”であるのでゲート17でクロックφ1がブ
ロックされる。そこでデコーダレジスタ5の内容は前サ
イクルの状態、すなわち命令A31のデコード結果を保
つ。従って前サイクルに引き続いて命令A31が実行さ
れる。 ・リピートカウンタ8:プリセット信号12が”1”で
あるのでクロックφ1でラッチ7が保持している値3を
取り込む。 ・リピート制御部11:クロックφ2で内部状態がリピ
ートカウンタセット状態41からリピートカウンタカウ
ントダウン状態43に変化。その結果リピート制御部の
出力は図5中のリピートカウンタカウントダウン状態に
示したものとなる。 (4)サイクル番号=5〜6 ・プログラムカウンタ2:更新禁止信号14が”1”で
あるのでゲート16でクロックφ1はブロックされる。 そこでプログラムカウンタ2の内容は変化せずn+3を
保つ。 ・メモリ1:n+3番地のアクセスを行なう。 ・命令レジスタ3:更新禁止信号14が”1”であるの
でゲート16でクロックφ1はブロックされる。そこで
命令レジスタ3の内容は変化せず命令B33を保つ。 ・デコーダ4:命令B33のデコード処理を行なう。 ・デコーダレジスタ5:デコーダレジスタ更新禁止信号
15が”1”であるのでゲート17でクロックφ1がブ
ロックされる。そこでデコーダレジスタ5の内容は前サ
イクルの状態、すなわち命令A31のデコード結果を保
つ。従って前サイクルに引き続いて命令A31が実行さ
れる。 ・リピートカウンタ8:カウント許可信号13が”1”
であるのでクロックφ1でカウントダウンを行なう。 ・リピート制御部11:リピートカウンタ8の内容が零
になったことを示す零検出信号9が”0”であるので内
部状態変化はない。そこでその出力も前サイクルの状態
と同じになる。 (5)サイクル番号=7 ・プログラムカウンタ2:更新禁止信号14が”1”で
あるのでゲート16でクロックφ1はブロックされる。 そこでプログラムカウンタ2の内容は変化せずn+3を
保つ。 ・メモリ1:n+3番地のアクセスを行なう。 ・命令レジスタ3:更新禁止信号14が”1”であるの
でゲート16でクロックφ1はブロックされる。そこで
命令レジスタ3の内容は変化せず命令B33を保つ。 ・デコーダ4:命令B33のデコード処理を行なう。 ・デコーダレジスタ5:デコーダレジスタ更新禁止信号
15が”1”であるのでゲート17でクロックφ1がブ
ロックされる。そこでデコーダレジスタ5の内容は前サ
イクルの状態、すなわち命令A31のデコード結果を保
つ。従って前サイクルに引き続いて命令A31が実行さ
れる。 ・リピートカウンタ8:カウント許可信号13が”1”
であるのでクロックφ1でカウントダウンを行なうが、
今回はその結果内容が零となるので零検出信号9を”1
”とする。 ・リピート制御部11:零検出信号9が”1”であるの
でクロックφ2で内部状態は待ち状態41に変化する。 そこでその出力は図5の待ち状態に示したものとなる。 (6)サイクル番号=8 ・プログラムカウンタ2:更新禁止信号14が”0”と
なったのでカウントアップを再開する。そこでプログラ
ムカウンタ2の内容はn+4となる。 ・メモリ1:n+4番地のアクセスを行なう。 ・命令レジスタ3:更新禁止信号14が”0となったの
で、メモリ1出力のクロックφ1での命令レジスタ3出
力の取り込みを再開する。その結果内容は命令C34と
なる。 ・デコーダ4:命令C34のデコード処理を行なう。 ・デコーダレジスタ5:デコーダレジスタ更新禁止信号
15が”0”となったのでデコーダ4出力のデコーダレ
ジスタ5への取り込みを再開する。その結果、内容は命
令B33のデコード結果となり、命令B33が実行され
ることになる。 ・リピートカウンタ8:リピートカウンタ8への制御信
号が全て”0”であるので、一切の動作はしない。 ・リピート制御部11:命令検出信号10が”0”であ
るので図5の待ち状態を保つ。 (7)サイクル番号=9 ・プログラムカウンタ2:クロックφ1でプログラムカ
ウンタがインクリメントされ、その内容はn+5となる
。 ・メモリ1:n+5番地のアクセスを行なう。 ・命令レジスタ3:クロックφ1でメモリ1の出力を取
り込む。 ・デコーダ4:命令レジスタ3の出力のデコード処理を
行なう。 ・デコーダレジスタ5:クロックφ1でデコーダ4の出
力である命令C34のデコード結果を取り込む。従って
命令C34が実行されることになる。
Regarding the program repeat control device configured as described above, FIGS. 1 and 3, FIG. 4, FIG.
The operation will be explained using FIG. 6 with reference to the cycle numbers shown in FIG. (1) Cycle number = 1 - Program counter 2: Incremented by clock φ1 and the content becomes n. -Memory 1: Access address n. (2) Cycle number = 2 - Program counter 2: Incremented by clock φ1 and the content becomes n+1. -Memory 1: Access address n+1. - Instruction register 3: At clock φ1, fetch instruction A31, which is the content of address n accessed in the previous cycle. - Decoder 4: Performs decoding processing of instruction A31. (3) Cycle number = 3 - Program counter 2: Incremented by clock φ1 and the content becomes n+2. -Memory 1: Access address n+2. - Instruction register 3: At clock φ1, fetch repeat counter set instruction 32, which is the contents of address n+1 accessed in the previous cycle. - Decoder 4: As a result of decoding the repeat counter set instruction 32, the instruction detection signal 10 is set to "1". - Decoder register 5: Takes in the decoding result of instruction A31 decoded by decoder 4 in the previous cycle at clock φ1. As a result, some of the various control signals 6 become active and the instruction A31 is executed. - Repeat control unit 11: Since the instruction detection signal 10 becomes "1", the internal state changes from the wait state 41 to the repeat counter set state 42 at clock φ2. As a result, the output of the repeat control section becomes as shown in the repeat counter set state in FIG. - Latch 7: Takes in the part indicating the number of repeats from the repeat counter set instruction 32 stored in the instruction register 3 at clock φ2. (4) Cycle number = 4 - Program counter 2: Incremented by clock φ1 and the content becomes n+3. -Memory 1: Access address n+3. - Instruction register 3: At clock φ1, fetch instruction B33, which is the contents of address n+2 accessed in the previous cycle. - Decoder 4: Performs decoding processing of instruction B33. - Decoder register 5: Since the decoder register update prohibition signal 15 is "1", the clock φ1 is blocked by the gate 17. Therefore, the contents of the decoder register 5 maintain the state of the previous cycle, that is, the decoding result of instruction A31. Therefore, instruction A31 is executed following the previous cycle. - Repeat counter 8: Since the preset signal 12 is "1", it takes in the value 3 held by the latch 7 at clock φ1. - Repeat control unit 11: Internal state changes from repeat counter set state 41 to repeat counter countdown state 43 at clock φ2. As a result, the output of the repeat control section becomes as shown in the countdown state of the repeat counter in FIG. (4) Cycle number = 5 to 6 - Program counter 2: Since the update prohibition signal 14 is "1", the clock φ1 is blocked by the gate 16. Therefore, the contents of the program counter 2 do not change and remain n+3. -Memory 1: Access address n+3. - Instruction register 3: Since the update prohibition signal 14 is "1", the clock φ1 is blocked by the gate 16. Therefore, the contents of the instruction register 3 remain unchanged and remain the instruction B33. - Decoder 4: Performs decoding processing of instruction B33. - Decoder register 5: Since the decoder register update prohibition signal 15 is "1", the clock φ1 is blocked by the gate 17. Therefore, the contents of the decoder register 5 maintain the state of the previous cycle, that is, the decoding result of instruction A31. Therefore, instruction A31 is executed following the previous cycle.・Repeat counter 8: Count permission signal 13 is “1”
Therefore, the countdown is performed using the clock φ1. - Repeat control section 11: Since the zero detection signal 9 indicating that the content of the repeat counter 8 has become zero is "0", there is no internal state change. Then its output will also be the same as the previous cycle's state. (5) Cycle number = 7 - Program counter 2: Since the update prohibition signal 14 is "1", the clock φ1 is blocked by the gate 16. Therefore, the contents of the program counter 2 do not change and remain n+3. -Memory 1: Access address n+3. - Instruction register 3: Since the update prohibition signal 14 is "1", the clock φ1 is blocked by the gate 16. Therefore, the contents of the instruction register 3 remain unchanged and remain the instruction B33. - Decoder 4: Performs decoding processing of instruction B33. - Decoder register 5: Since the decoder register update prohibition signal 15 is "1", the clock φ1 is blocked by the gate 17. Therefore, the contents of the decoder register 5 maintain the state of the previous cycle, that is, the decoding result of instruction A31. Therefore, instruction A31 is executed following the previous cycle.・Repeat counter 8: Count permission signal 13 is “1”
Therefore, the countdown is performed using the clock φ1, but
This time, the result is zero, so zero detection signal 9 is set to “1”.
- Repeat control section 11: Since the zero detection signal 9 is "1", the internal state changes to the wait state 41 at clock φ2.Then, its output becomes as shown in the wait state in FIG. (6) Cycle number = 8 - Program counter 2: Since the update prohibition signal 14 has become "0", counting up is restarted.Then, the contents of program counter 2 become n+4. -Memory 1: Access to address n+4.・Instruction register 3: Since the update prohibition signal 14 has become "0", the fetching of the instruction register 3 output at the clock φ1 of the memory 1 output is resumed. The resulting content becomes instruction C34. - Decoder 4: Performs decoding processing of instruction C34. - Decoder register 5: Since the decoder register update prohibition signal 15 has become "0", the import of the decoder 4 output into the decoder register 5 is resumed. As a result, the content becomes the decoding result of instruction B33, and instruction B33 is executed. - Repeat counter 8: Since all control signals to repeat counter 8 are "0", it does not perform any operation. - Repeat control unit 11: Since the command detection signal 10 is "0", it maintains the waiting state shown in FIG. 5. (7) Cycle number = 9 - Program counter 2: The program counter is incremented by clock φ1, and its contents become n+5. -Memory 1: Access address n+5.・Instruction register 3: Takes in the output of memory 1 at clock φ1. - Decoder 4: Performs decoding processing of the output of the instruction register 3. - Decoder register 5: Takes in the decoding result of instruction C34, which is the output of decoder 4, at clock φ1. Therefore, instruction C34 will be executed.

【0016】以上のように本実施例のよれば、メモリ1
には、リピート処理対象となる命令A31の後にリピー
ト処理制御命令であるリピートカウンタセット命令32
を置き、デコーダレジスタ5、リピートカウンタ8、命
令検出信号10、リピート制御部11、ゲート16、1
7を設けることにより、命令A31の実行とリピートカ
ウンタセット命令32の実行を並行して行なうことで、
リピートカウンタセット命令32の実行を実質上0サイ
クルとすることができる。
As described above, according to this embodiment, the memory 1
In this example, a repeat counter set instruction 32, which is a repeat processing control instruction, is placed after the instruction A31 to be subjected to repeat processing.
, a decoder register 5, a repeat counter 8, an instruction detection signal 10, a repeat control section 11, and a gate 16.
7, the execution of the instruction A31 and the execution of the repeat counter set instruction 32 are executed in parallel.
The repeat counter set instruction 32 can be executed in virtually 0 cycles.

【0017】なお、本実施例において、リピート回数は
リピートカウンタセット命令32に含まれているものと
したが、ここには図示していないレジスタから与えても
よい。
In this embodiment, the number of repeats is included in the repeat counter set instruction 32, but it may be given here from a register not shown.

【0018】[0018]

【発明の効果】以上のように本発明は、メモリにリピー
ト処理対象となる命令の後にリピート処理制御命令であ
るリピートカウンタセット命令を置き、デコーダレジス
タ、リピートカウンタ、リピート制御部を設けることに
より、命令の実行とリピートカウンタセット命令の実行
を並行して行ない、リピートカウンタセット命令の実行
を実質上0サイクルとすることができる。
As described above, the present invention provides a repeat counter set instruction, which is a repeat processing control instruction, after an instruction to be subjected to repeat processing in a memory, and a decoder register, a repeat counter, and a repeat control section. The instruction execution and the repeat counter set instruction can be executed in parallel, and the repeat counter set instruction can be executed in substantially 0 cycles.

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

【図1】本発明の実施例におけるプログラムリピート処
理装置のブロック図である。
FIG. 1 is a block diagram of a program repeat processing device in an embodiment of the present invention.

【図2】同実施例において使用するクロックを示す図で
ある。
FIG. 2 is a diagram showing clocks used in the same embodiment.

【図3】同実施例におけるメモリ1の内容を示す図であ
る。
FIG. 3 is a diagram showing the contents of the memory 1 in the same embodiment.

【図4】同実施例におけるリピート制御部11の内部状
態遷移を示す図である。
FIG. 4 is a diagram showing internal state transitions of the repeat control section 11 in the same embodiment.

【図5】同実施例におけるリピート制御部11の出力を
示す図である。
FIG. 5 is a diagram showing the output of the repeat control section 11 in the same embodiment.

【図6】同実施例における動作説明のための命令実行過
程を示す図である。
FIG. 6 is a diagram showing an instruction execution process for explaining the operation in the same embodiment.

【図7】従来のプログラムリピート処理装置のブロック
図である。
FIG. 7 is a block diagram of a conventional program repeat processing device.

【図8】同従来例におけるメモリ72の内容を示す図で
ある。
FIG. 8 is a diagram showing the contents of a memory 72 in the conventional example.

【図9】同従来例における動作説明のための命令実行過
程を示す図である。
FIG. 9 is a diagram showing an instruction execution process for explaining the operation in the conventional example.

【符号の説明】[Explanation of symbols]

1  メモリ 2  プログラムカウンタ 3  命令レジスタ 4  デコーダ 5  デコーダレジスタ 8  リピートカウンタ 11  リピート制御部 16  ゲート 17  ゲート 1 Memory 2 Program counter 3 Instruction register 4 Decoder 5 Decoder register 8 Repeat counter 11 Repeat control section 16 Gate 17 Gate

Claims (2)

【特許請求の範囲】[Claims] 【請求項1】  命令フェッチステージ、デコードステ
ージ、実行ステージをパイプライン処理し、サイクルn
のデコードステージでの命令デコードの結果、その命令
が現在実行ステージにある命令のm回繰り返し実行を指
示している場合、サイクルn+1以降の実行ステージで
はサイクルnの実行ステージで行なっていた処理をm回
繰り返し実行するプログラムリピート制御方法。
Claim 1: Pipeline processing of instruction fetch stage, decode stage, and execution stage, and cycle n
As a result of instruction decoding at the decode stage, if the instruction instructs to repeatedly execute the instruction currently in the execution stage m times, then in the execution stage after cycle n+1, the process performed in the execution stage of cycle n is repeated m times. A program repeat control method that executes programs repeatedly.
【請求項2】  繰り返し実行対象となる第1の命令と
前記第1の命令の次番地に格納され前記第1の命令の繰
り返し実行を指示する第2の命令とを少なくとも記憶す
るメモリと、前記メモリにアドレス信号を与えるプログ
ラムカウンタと、前記プログラムカウンタが示す前記メ
モリの内容を一時記憶する命令レジスタと、前記命令レ
ジスタの出力をデコードし各種の制御信号を出力するデ
コーダと、前記デコーダの出力を一時保持するレジスタ
と、前記第2の命令によりプリセットされ前記第1の命
令の実行終了毎にその値を1ずつ減じるカウンタと、前
記デコーダで前記第2の命令以外がデコードされた時は
、前記プログラムカウンタへは内容のインクリメントを
、前記命令レジスタには前記メモリ出力の取り込みを、
前記レジスタには前記デコード出力の取り込みを指示し
、前記デコーダで前記第2の命令がデコードされた時は
、これ以降の前記プログラムカウンタへは内容のインク
リメント禁止を、前記命令レジスタには前記メモリ出力
の取り込み禁止を、前記レジスタにはこれ以降の前記デ
コード出力の取り込み禁止を指示し、さらに前記第2の
命令の実行サイクルでは前記カウンタへ前記第1の命令
で指示される繰り返し回数の書き込みを指示し、前記カ
ウンタが前記第1の命令の実行終了毎にその値を1ずつ
減じた結果規定回数の繰り返しを行なったことを示した
場合、前記プログラムカウンタへは内容のインクリメン
ト動作の再開を、前記命令レジスタには前記メモリ出力
の取り込み動作の再開を、前記レジスタには前記デコー
ド出力の取り込み動作再開を指示する制御手段とを備え
たことを特徴とするプログラムリピート制御装置。
2. A memory that stores at least a first instruction to be repeatedly executed and a second instruction that is stored at an address next to the first instruction and instructs to repeatedly execute the first instruction; a program counter that provides an address signal to a memory; an instruction register that temporarily stores the contents of the memory indicated by the program counter; a decoder that decodes the output of the instruction register and outputs various control signals; a register for temporary holding, a counter that is preset by the second instruction and whose value is decremented by 1 each time execution of the first instruction is completed, and when the decoder decodes an instruction other than the second instruction, Incrementing the contents to the program counter, capturing the memory output to the instruction register,
The register is instructed to capture the decoded output, and when the second instruction is decoded by the decoder, the program counter is prohibited from incrementing the contents thereafter, and the instruction register is instructed to capture the memory output. Instructs the register to prohibit the subsequent capture of the decoded output, and further instructs the counter to write the number of repetitions specified by the first instruction in the execution cycle of the second instruction. However, if the counter decreases its value by 1 every time the execution of the first instruction is completed, and the result indicates that the specified number of repetitions has been performed, the program counter is instructed to restart the increment operation of the contents. A program repeat control device comprising control means for instructing an instruction register to resume the fetching operation of the memory output, and a control means for instructing the register to restart the fetching operation of the decoded output.
JP11826791A 1991-05-23 1991-05-23 Program repeat control method and program repeat control device Expired - Fee Related JP2833259B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP11826791A JP2833259B2 (en) 1991-05-23 1991-05-23 Program repeat control method and program repeat control device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP11826791A JP2833259B2 (en) 1991-05-23 1991-05-23 Program repeat control method and program repeat control device

Publications (2)

Publication Number Publication Date
JPH04346129A true JPH04346129A (en) 1992-12-02
JP2833259B2 JP2833259B2 (en) 1998-12-09

Family

ID=14732409

Family Applications (1)

Application Number Title Priority Date Filing Date
JP11826791A Expired - Fee Related JP2833259B2 (en) 1991-05-23 1991-05-23 Program repeat control method and program repeat control device

Country Status (1)

Country Link
JP (1) JP2833259B2 (en)

Also Published As

Publication number Publication date
JP2833259B2 (en) 1998-12-09

Similar Documents

Publication Publication Date Title
JP2943464B2 (en) Program control method and program control device
EP1241567A2 (en) Method and apparatus for executing coprocessor instructions
US6957323B2 (en) Operand file using pointers and reference counters and a method of use
JPH0760388B2 (en) Pipeline control circuit
EP0279953A2 (en) Computer system having mixed macrocode and microcode instruction execution
JPH04346129A (en) Method and device for program repeat control
JPS6242301B2 (en)
JP3531856B2 (en) Program control method and program control device
JP2758624B2 (en) Speed control method of micro program
JP2783285B2 (en) Information processing device
JPS60124746A (en) Data processing unit
JPH07182165A (en) Processing method/device for instruction with committing condition
JPH0212429A (en) Information processor with function coping with delayed jump
JPS5999552A (en) Microcomputer
JPH04370832A (en) Processor circuit
JPH03164945A (en) Data processor
JPS6019018B2 (en) data processing system
JPH05108384A (en) Microprocessor
JPS6299832A (en) Control system for computer
JPH0778744B2 (en) Interrupt control method
JPH0212535A (en) Instruction execution system
JPH064283A (en) Microprocessor
JPH06301539A (en) Microprocessor unit
JPH11203136A (en) Information processor and storage medium
JPH04275635A (en) Constant cycle processing system

Legal Events

Date Code Title Description
FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20081002

Year of fee payment: 10

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20091002

Year of fee payment: 11

LAPS Cancellation because of no payment of annual fees