JPH04346129A - プログラムリピート制御方法及びプログラムリピート制御装置 - Google Patents

プログラムリピート制御方法及びプログラムリピート制御装置

Info

Publication number
JPH04346129A
JPH04346129A JP3118267A JP11826791A JPH04346129A JP H04346129 A JPH04346129 A JP H04346129A JP 3118267 A JP3118267 A JP 3118267A JP 11826791 A JP11826791 A JP 11826791A JP H04346129 A JPH04346129 A JP H04346129A
Authority
JP
Japan
Prior art keywords
instruction
register
counter
repeat
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
JP3118267A
Other languages
English (en)
Other versions
JP2833259B2 (ja
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/ja
Publication of JPH04346129A publication Critical patent/JPH04346129A/ja
Application granted granted Critical
Publication of JP2833259B2 publication Critical patent/JP2833259B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

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

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明はマイクロプロセッサにお
いて1つの命令の繰り返し実行を制御するプログラムリ
ピート制御方法及び装置に関するものである。
【0002】
【従来の技術】近年、プログラムの高速実行、あるいは
命令メモリのワード数削減を目指し、例えば特公昭62
−42301号公報に示されているような、一旦フェッ
チした命令を繰り返し実行するプログラムリピート処理
装置が考案されている。
【0003】以下図面を参照しながら、上記した従来の
プログラムリピート制御装置の一例について説明する。
【0004】図7は従来のプログラムリピート制御装置
のブロック図を示すものである。図7において、71は
プログラム繰り返し実行回数(リピート回数と同義)を
カウントするリピートカウンタ、72は命令を格納する
メモリ、73はメモリ72へアドレスを与えるプログラ
ムカウンタ、74はプログラムメモリ72の出力を一時
保持する命令レジスタ、75は命令レジスタの出力をデ
コードし各種制御信号を出力する制御部である。
【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
号公報)
【0006】
【発明が解決しようとする課題】しかしながら上記のよ
うな構成では図9に示すように、リピートカウンタセッ
ト命令の実行サイクルが陽に現われてくる。一方ディジ
タル信号処理プロセッサ(Digital  Sign
al  Processor、以下DSPと記す)では
、1つの命令あるいは命令群を数千回繰り返し実行する
ことが多いが、従来のプログラムリピート制御装置を用
いると上述のようにリピートカウンタセット命令のよう
な非演算命令の実行にも数千マシンサイクル消費してし
まい、これがDSPの目的である高速演算への大きな妨
げになるという問題点を有していた。
【0007】本発明は上記問題点に鑑み、リピートカウ
ンタセット命令実行サイクルを実質上0サイクルとする
プログラムリピート処理装置を提供する事を目的とする
【0008】
【課題を解決するための手段】本発明は、繰り返し実行
対象となる第1の命令と前記第1の命令の次番地に格納
され前記第1の命令の繰り返し実行を指示する第2の命
令を少なくとも記憶するメモリと、前記メモリにアドレ
ス信号を与えるプログラムカウンタと、前記プログラム
カウンタが示す前記メモリの内容を一時記憶する命令レ
ジスタと前記命令レジスタの出力をデコードし各種の制
御信号を出力するデコーダと、前記デコーダの出力を一
時保持するレジスタと、前記第2の命令によりプリセッ
トされ前記第1の命令の実行終了毎にその値を1ずつ減
じるカウンタと、前記デコーダで前記第2の命令以外が
デコードされた時は、前記プログラムカウンタへは内容
のインクリメントを、前記命令レジスタには前記メモリ
出力の取り込みを、前記レジスタには前記デコード出力
の取り込みを指示し、前記デコーダで前記第2の命令が
デコードされた時は、これ以降の前記プログラムカウン
タへは内容のインクリメント禁止を、前記命令レジスタ
には前記メモリ出力の取り込み禁止を、前記レジスタに
はこれ以降の前記デコード出力の取り込み禁止を指示し
、さらに前記第2の命令の実行サイクルでは前記カウン
タへ前記第1の命令で指示される繰り返し回数の書き込
みを指示し、前記カウンタが前記第1の命令の実行終了
毎にその値を1ずつ減じた結果規定回数の繰り返しを行
なったことを示した場合、前記プログラムカウンタへは
内容のインクリメント動作の再開を、前記命令レジスタ
には前記メモリ出力の取り込み動作の再開を、前記レジ
スタには前記デコード出力の取り込み動作再開を指示す
る制御手段とを備えたプログラムリピート制御装置であ
る。
【0009】
【作用】本発明は上記した構成によって、前記メモリに
繰り返し処理対象となる第1の命令実行開始した後に、
これと並行して前記第1の命令の繰り返し実行を指示す
る前記第2の命令と前記制御手段による前記第1の命令
の繰り返し実行制御を行う。
【0010】
【実施例】  以下本発明の一実施例のプログラムリピ
ート制御装置について、図面を参照しながら説明する。
【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に出力するゲートである。
【0012】また図3はメモリ1の内容を示すものであ
って、n番地には繰り返し実行対象となる命令A31が
、n+1番地にはn番地の命令の繰り返し実行を指示す
るリピートカウンタセット命令32が、n+2、n+3
番地にはそれぞれ1回づつ実行される命令B33、命令
C34が格納されている。
【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に示すようになる。
【0014】さらに図6には図1に示したプログラムリ
ピート装置を構成する各要素の状態及び各信号の動きを
示す。図6には以降の説明で使用するサイクル番号を示
しているが、各サイクルは図2に示したようにφ1、φ
2の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が実行されることになる。
【0016】以上のように本実施例のよれば、メモリ1
には、リピート処理対象となる命令A31の後にリピー
ト処理制御命令であるリピートカウンタセット命令32
を置き、デコーダレジスタ5、リピートカウンタ8、命
令検出信号10、リピート制御部11、ゲート16、1
7を設けることにより、命令A31の実行とリピートカ
ウンタセット命令32の実行を並行して行なうことで、
リピートカウンタセット命令32の実行を実質上0サイ
クルとすることができる。
【0017】なお、本実施例において、リピート回数は
リピートカウンタセット命令32に含まれているものと
したが、ここには図示していないレジスタから与えても
よい。
【0018】
【発明の効果】以上のように本発明は、メモリにリピー
ト処理対象となる命令の後にリピート処理制御命令であ
るリピートカウンタセット命令を置き、デコーダレジス
タ、リピートカウンタ、リピート制御部を設けることに
より、命令の実行とリピートカウンタセット命令の実行
を並行して行ない、リピートカウンタセット命令の実行
を実質上0サイクルとすることができる。
【図面の簡単な説明】
【図1】本発明の実施例におけるプログラムリピート処
理装置のブロック図である。
【図2】同実施例において使用するクロックを示す図で
ある。
【図3】同実施例におけるメモリ1の内容を示す図であ
る。
【図4】同実施例におけるリピート制御部11の内部状
態遷移を示す図である。
【図5】同実施例におけるリピート制御部11の出力を
示す図である。
【図6】同実施例における動作説明のための命令実行過
程を示す図である。
【図7】従来のプログラムリピート処理装置のブロック
図である。
【図8】同従来例におけるメモリ72の内容を示す図で
ある。
【図9】同従来例における動作説明のための命令実行過
程を示す図である。
【符号の説明】
1  メモリ 2  プログラムカウンタ 3  命令レジスタ 4  デコーダ 5  デコーダレジスタ 8  リピートカウンタ 11  リピート制御部 16  ゲート 17  ゲート

Claims (2)

    【特許請求の範囲】
  1. 【請求項1】  命令フェッチステージ、デコードステ
    ージ、実行ステージをパイプライン処理し、サイクルn
    のデコードステージでの命令デコードの結果、その命令
    が現在実行ステージにある命令のm回繰り返し実行を指
    示している場合、サイクルn+1以降の実行ステージで
    はサイクルnの実行ステージで行なっていた処理をm回
    繰り返し実行するプログラムリピート制御方法。
  2. 【請求項2】  繰り返し実行対象となる第1の命令と
    前記第1の命令の次番地に格納され前記第1の命令の繰
    り返し実行を指示する第2の命令とを少なくとも記憶す
    るメモリと、前記メモリにアドレス信号を与えるプログ
    ラムカウンタと、前記プログラムカウンタが示す前記メ
    モリの内容を一時記憶する命令レジスタと、前記命令レ
    ジスタの出力をデコードし各種の制御信号を出力するデ
    コーダと、前記デコーダの出力を一時保持するレジスタ
    と、前記第2の命令によりプリセットされ前記第1の命
    令の実行終了毎にその値を1ずつ減じるカウンタと、前
    記デコーダで前記第2の命令以外がデコードされた時は
    、前記プログラムカウンタへは内容のインクリメントを
    、前記命令レジスタには前記メモリ出力の取り込みを、
    前記レジスタには前記デコード出力の取り込みを指示し
    、前記デコーダで前記第2の命令がデコードされた時は
    、これ以降の前記プログラムカウンタへは内容のインク
    リメント禁止を、前記命令レジスタには前記メモリ出力
    の取り込み禁止を、前記レジスタにはこれ以降の前記デ
    コード出力の取り込み禁止を指示し、さらに前記第2の
    命令の実行サイクルでは前記カウンタへ前記第1の命令
    で指示される繰り返し回数の書き込みを指示し、前記カ
    ウンタが前記第1の命令の実行終了毎にその値を1ずつ
    減じた結果規定回数の繰り返しを行なったことを示した
    場合、前記プログラムカウンタへは内容のインクリメン
    ト動作の再開を、前記命令レジスタには前記メモリ出力
    の取り込み動作の再開を、前記レジスタには前記デコー
    ド出力の取り込み動作再開を指示する制御手段とを備え
    たことを特徴とするプログラムリピート制御装置。
JP11826791A 1991-05-23 1991-05-23 プログラムリピート制御方法及びプログラムリピート制御装置 Expired - Fee Related JP2833259B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP11826791A JP2833259B2 (ja) 1991-05-23 1991-05-23 プログラムリピート制御方法及びプログラムリピート制御装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP11826791A JP2833259B2 (ja) 1991-05-23 1991-05-23 プログラムリピート制御方法及びプログラムリピート制御装置

Publications (2)

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

Family

ID=14732409

Family Applications (1)

Application Number Title Priority Date Filing Date
JP11826791A Expired - Fee Related JP2833259B2 (ja) 1991-05-23 1991-05-23 プログラムリピート制御方法及びプログラムリピート制御装置

Country Status (1)

Country Link
JP (1) JP2833259B2 (ja)

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011024993A (ja) 2009-06-30 2011-02-10 Sanyo Product Co Ltd スロットマシン及び遊技機

Also Published As

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

Similar Documents

Publication Publication Date Title
JP2943464B2 (ja) プログラム制御方法及びプログラム制御装置
US6957323B2 (en) Operand file using pointers and reference counters and a method of use
US4747045A (en) Information processing apparatus having an instruction prefetch circuit
JPH0760388B2 (ja) パイプライン制御回路
JPH04346129A (ja) プログラムリピート制御方法及びプログラムリピート制御装置
JPS6242301B2 (ja)
JPS59739A (ja) マイクロプログラム処理装置における時間保障方式
JP2758624B2 (ja) マイクロプログラムの調速方式
JPH0377137A (ja) 情報処理装置
JP3531856B2 (ja) プログラム制御方法及びプログラム制御装置
JP2783285B2 (ja) 情報処理装置
JPH04288625A (ja) マイクロコンピュータ
JPH07182165A (ja) コミット条件付き命令の処理方法およびその装置
JPS60124746A (ja) デ−タ処理装置
JP2504263B2 (ja) デ―タ処理装置
JPH03164945A (ja) データ処理装置
JPH04370832A (ja) プロセッサ回路
JP2001134448A (ja) 情報処理装置及び割込み処理方法
JPS61118840A (ja) 電子計算機の制御方式
JPH05250156A (ja) Riscプロセッサ
JPS6019018B2 (ja) デ−タ処理システム
JPH0916399A (ja) 計算機
JPH09330234A (ja) 割り込み処理方法およびマイクロプロセッサ
JPS6299832A (ja) 計算機制御方式
JPH11203136A (ja) 情報処理装置および記録媒体

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