JPH0343830A - ブロックリピート回路 - Google Patents

ブロックリピート回路

Info

Publication number
JPH0343830A
JPH0343830A JP17979489A JP17979489A JPH0343830A JP H0343830 A JPH0343830 A JP H0343830A JP 17979489 A JP17979489 A JP 17979489A JP 17979489 A JP17979489 A JP 17979489A JP H0343830 A JPH0343830 A JP H0343830A
Authority
JP
Japan
Prior art keywords
register
value
address
instruction
sequence
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.)
Pending
Application number
JP17979489A
Other languages
English (en)
Inventor
Teruo Ishihara
輝雄 石原
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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP17979489A priority Critical patent/JPH0343830A/ja
Publication of JPH0343830A publication Critical patent/JPH0343830A/ja
Pending legal-status Critical Current

Links

Landscapes

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

Abstract

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

Description

【発明の詳細な説明】 [概要] パイプライン処理方式を用いて繰返し処理を行う場合の
ブロックリピート方式に関し、M個のインストラクショ
ンを1個のブロックとしてN回繰返すシーケンスをパイ
プライン処理方式で行えるようにすることを目的とし、
M個のインストラクションを1個のブロックとしてN回
繰返すシーケンスをバイブライン方式で行う場合におい
て、前記Mの値を保持するMレジスタと、Nの値を保持
するNレジスタと、M個のインストラクションをN回繰
り返すシーケンスを示す命令が来たら、その命令の番地
の次の番地アドレスを保持するアドレス保持レジスタを
設けておき、前記アドレス保持レジスタの値をプログラ
ムカウンタに初期セットすると共に、以降、命令ROM
から読出した命令を保持するインストラクションレジス
タを2個直列接続して、初段のインストラクションレジ
スタの値をルックアヘッドデコーダによりデコードして
予め内部RAMのアドレスを求めておくというパイプラ
イン処理のインストラクションを1ステップずつ実行す
る度にプログラムカウンタの値を1ずつ増加させるよう
にし、プログラムカウンタの値とMレジスタの値とが一
致したら、前記アドレス保持レジスタに保持されている
番地アドレスをプログラムカウンタに再セットすると共
に、シーケンスの繰返し回数をシーケンス回数レジスタ
に保持しておき、前記シーケンスの繰返し回数がNにな
ったらリピート処理をストップして次の処理に移行する
ように構成する。
[産業上の利用分野] 本発明はバスプライン処理方式を用いて繰返し処理を行
う場合のブロックリピート回路に関する。
[従来の技術] プログラム制御方式の信号処理LSI(特にプロセッサ
)等のプログラムシーケンス制御においては、信号処理
を高速化するために、パイプライン方式による処理が行
われている。第6図は、従来回路の構成例を示すブロッ
ク図である。最初は、セレクタ1はセレクト信号PC8
1により1側がセレクトされている。従って、セレクタ
1は“1“をセレクトしている。このセレクタ1の出力
は加算器2に入ってフィードバック信号と加算される。
加算器2の出力はセレクタ3に入るが、このセレクタ3
もセレクタ1と同様、1側がセレクトされている。従っ
て、セレクタ3は加算器2の出力をセレクトしており、
加算器2の出力がプログラムカウンタ4に入っている。
該プログラムカウンタ4の初期値はパワーオンリセット
により0が入るようになっている。そして、該プログラ
ムカウンタ4の出力は、フィードバックされて加算器2
の一方の人力に人力されると共に、命令ROM5にアド
レスとして入っている。そして、マシンクロックに同期
してプログラムカウンタ4の出力は、加算器2により1
ずつインクリメントされていく。
当該アドレスによりアクセスされた命令ROM番地に格
納されている命令は読出されてインストラクションレジ
スタが6.7と2個直列接続された回路に入る。先ず、
命令ROM5の出力は第1のインストラクションレジス
タ6 (IRI)に入る。IRIの出力はマシンクロッ
クに同期して第2のインストラクションレジスタ7(I
R2)に入る。この間に、IRIの出力は、ルックアヘ
ッドデコーダ8に入って内部RAMアドレス等が前もっ
て計算され、出力される。そして、次のタイミングでI
R2に入った命令がデコーダ9によりデコードされ、実
行される。例えば、MOV  A。
B (Bレジスタの内容をAレジスタに移せ)のような
命令を実行する場合、Aレジスタ、Bレジスタの値をル
ックアヘッドデコーダ8により予め求めておき、デコー
ダ9でMOV命令を実行する際にはAレジスタ、Bレジ
スタの番地が分かっているので、速やかに命令を実行す
ることができる(バイブライン動作)。
なお、セレクト信号pcsoによりセレクタ1゜3の0
側がセレクトされる場合は、IR2にジャンプ先の番地
アドレスが入った時に、この番地をプログラムカウンタ
4にセットしてジャンプ命令を実行する場合等が考えら
れる。
[発明が解決しようとする課題] このような回路で繰返し命令(リピート命令)を実行さ
せる場合には、プログラムカウンタ5及びIRI、IR
2,ルックアヘッドデコーダ8及びデコーダ9により構
成されるパイプラインをリピートする回数だけ止めてお
き、繰返し実行させる命令をIR2に保持させ、このI
R2の出力をデコーダ9により繰返しデコードすること
により処理している。従って、従来の回路によれば、複
数の命令がまとまった命令ブロックを繰返し行うという
ことができなかった。
本発明はこのような課題に鑑みてなされたものであって
、M個のインストラクションを1個のブロックとしてN
回繰返すシーケンスをパイプライン処理方式で行えるよ
うにすることができるブロックリピート回路を提供する
ことを目的としている。
[課題を解決するための手段] 第1図は本発明の原理ブロック図である。第5図と同一
のものは、同一の符号を付して示す。図に示す回路は、
M個のインストラクションを1個のブロックとしてN回
繰返すシーケンスをパイプライン方式で行う回路である
ものとする。図において、20はIRIの出力から前記
Mの値を取込み、保持するMレジスタ、21は同じ(I
RIからNの値を取込み、保持するNレジスタ、22は
M個のインストラクションをN回繰り返すシーケンスを
示す命令が来たら、その命令の番地の次の番地アドレス
を保持するアドレス保持レジスタである。
23はM個のインストラクションを何回繰返したかを示
す繰返し回数を保持するシーケンス回数レジスタで、N
レジスタ21と接続されている。
24はプログラムカウンタで、マシンクロックに同期し
てlずつインクリメントされる。該プログラムカウンタ
24の出力は命令ROM5にアドレスとして与えられる
と共に、アドレス保持レジスタ22にも接続され、該ア
ドレス保持レジスタ22に繰返し命令の開始番地アドレ
スを与えるようになっている。そして、Mレジスタ20
及びシーケンス回数レジスタ21からはアドレス保持レ
ジスタ22に制御信号が入っている。25は“1゜とア
ドレス保持レジスタ22の出力のうちのいずれか一方を
セレクトするセレクタである。
[作用] パイプライン処理のインストラクションを1ステップず
つ実行する度にプログラムカウンタ23の値を1ずつ増
加させるようにし、プログラムカウンタ24の値とMレ
ジスタ20の値とが一致したら、Mレジスタ20からの
制御によりアドレス保持レジスタ22に保持されている
番地アドレスをプログラムカウンタ24に再セットする
と共に、シーケンスの繰返し回数をシーケンス回数レジ
スタ23に保′持しておくようにする。そして、前記シ
ーケンスの繰返し回数がNになったらシーケンス回数レ
ジスタ23からの制御によりアドレス保持レジスタ22
に保持されている番地アドレスを破棄し、リピート処理
をストップして次の処理に移行するようにする。このよ
うにすることによりM個のインストラクションを1個の
ブロックとしてN回繰返すシーケンスをパイプライン処
理方式%式% 第2図は本発明の作用説明図で、実際のインストラクシ
ョンの実行の様子を示している。プログラムのインスト
ラクションが(b)に示すようなものであったものとす
る。プログラムカウンタ(PC)の値(とりもなおさず
アドレス値)が01.02,03と更新され(これらの
値は16進を示す。以下同じ)、03番地の命令がRE
PM、N(以下のインストラクション数Mの命令を1個
のブロックとしてN回繰返せ)という命令であったもの
とする。
この時、03番地のリピート命令の次の番地、即ち04
番地のアドレスデータ′04°がアドレス保持レジスタ
22にセットされる。図の例では、インストラクション
数Mは04から09までの6である。この6個のインス
トラクションを1個のブロックとしてN回繰返す。(a
)にその繰返しの様子を示す。即ち、04〜09までの
シーケンスがM、  1〜M、 NまでのN回繰返され
ている。
[実施例] 以下、図面を参照して本発明の実施例を詳細に説明する
第3図は本発明の一実施例を示す槽底ブロック図である
。第1図と同一のものは、同一の符号を付して示す。図
において、30は2人力加算器であり、その一方に“1
”が、他方の入力にプログラムカウンタ24からのフィ
ードバック信号が入っている。そして、該加算器30の
出力がセレクタ25の一方の人力に入っている。該セレ
クタ25の他方の入力には、アドレス保持レジスタ22
の出力が入っており、セレクト信号pcsi、pC32
によりそのいずれか一方がセレクトされる。
例えば、PC81が入った時には1側がセレクトされ、
加算器30出力がプログラムカウンタ24に入り、PC
82が入った時には2側がセレクトされ、アドレス保持
レジスタ22出力がプログラムカウンタ24に入る。
31は一方の人力にマシンクロックCK、他方の入力に
リピートスタート信号(1レベル)又はリピートエンド
信号(0レベル)を受けるオアゲートで、その出力はア
ドレス保持レジスタ22に制御信号として入っている。
32はリピートスタート信号を受けると“1”又は“2
”を初期セットし、セットした値からインストラクショ
ンの数をMまでカウントするMカウンタ、33はその一
方の人力にNレジスタ20の出力を、他方の人力にMカ
ウンタ32の出力を受けて両者の比較を行う比較器であ
る。該比較器33は両者が一致した時PC32信号を発
生する。
34はリピートスタートによりNレジスタ21の出力を
セットし、以後インストラクション数Mの実行が終了す
る度にPC32信号を受けてダウンカウントし、カウン
ト数がOになったらリピートエンド信号を発生するNダ
ウンカウンタである。
該ダウンカウンタ34は、第1図のシーケンス回数レジ
スタ23に相当する。このように構成された回路の動作
を第4図に示すタイミングチャートを参照しながら説明
すれば、以下のとおりである。
通常の動作では、セレクタ25はPC81により1側が
セレクトされている。そして、第4図(イ)に示すよう
なマシンクロックCKによりプログラムカウンタ24の
値に加算器30により1を加えたものが新たなプログラ
ムカウンタ24の値となるようになっている。そして、
アドレス保持レジスタ22には、マシンクロックCKに
より(ハ)に示すように1サイクル前の値が常に入るよ
うになっている。そして、IRI、IR2の2個のイン
ストラ゛クションレジスタを用い、IRIの出力をルッ
クアヘッドデコーダ8により予め内部RAM等のアドレ
スを求めておき、IR2の命令の実行と並行して処理す
ることによりバイブライン動作が行われている。
さて、IRlに(ニ)に示すようにリピート命令REP
が入ると、この命令はルックアヘッドデコーダ8により
デコードされ、リピートサイズM。
Nが求められる。求められたM、Nの値はそれぞれNレ
ジスタ20.Nレジスタ21に格納される。
つまり、Nレジスタ20には(へ)に示すようにM−6
が格納され、Nレジスタ21にはリピート数Nが格納さ
れる。
次のサイクルでIR2にリピート命令REPが入ると、
デコーダ9でデコードされる。そして、該デコーダ9か
らデコードされるリピートスタート信号によりMカウン
タ32には(ト)に示すように“2″が格納される。ま
た、このリピートスタート信号はオアゲート31にも入
り、アドレス保持レジスタ22に入るマシンクロックC
Kの動作をストップさせる。マシンクロックCKの動作
がストップした時のアドレス保持レジスタ22には(ハ
)に示すように“04″が保持される。この“04”は
、リピート命令REPの次にくるインストラクションの
プログラムカウンタ値である。
それと同時にMカウンタ32がカウント動作を開始する
インストラクションを実行する度にMカウンタ32の値
は(ト)に示すように1ずつ更新される。
プログラムカウンタ24の出力も(ロ)に示すように1
ずつ更新されるが、アドレス保持レジスタ22はマシン
クロックCKが止められているので、その内容は(ハ)
に示すように変化しない。そして、Mカウンタ32の値
がNレジスタ20の値(M−6)と一致すると、比較器
33は一致信号PCS2を出力する。
このPC32C32信レクタ25に入り、この時だけ2
側がセレクトされ、アドレス保持レジスタ22に保持さ
れている値(ここでは“04”)が再度プログラムカウ
ンタ24にセットされる。
それと同時にこのPC92信号はNダウンカウンタ34
に入り、その内容を1だけダウンカウントさせる。また
、Mカウンタ32はリセットされて今度は“1”がセレ
クトされ1からカウントを開始する。その次のサイクル
では、セレクタ3番≠再び1側をセレクトしており、プ
ログラムカウンタ24は初期値“04″から1ずつイン
クリメントされる。
以上の動作を繰返すことにより、ブロックリピートが行
われる。そして、Nダウンカウンタ34の値が0になる
と、N回のリピートが行われたことになる。そこで、N
ダウンカウンタ34からはリピートエンド信号“0”が
出力され、オアゲート31を開きマシンクロックCKが
アドレス保持レジスタ22に入るようにする。この結果
、プログラムはリピートサイクルから抜は出し、次のア
ドレスからの命令を実行するようになる。
第5図は本発明の動作を示すフローチャートである。本
発明は、 Mの値を保持するNレジスタと、Nの値を保持するNレ
ジスタと、M個のインストラクションをN回繰り返すシ
ーケンスを示す命令が来たら、その命令の番地の次の番
地アドレスを保持するアドレス保持レジスタを用意して
おき(ステップ1)、前記アドレス保持レジスタの値を
プログラムカウンタに初期セットすると共に、以降、命
令ROMから読出した命令を保持するインストラクショ
ンレジスタ2個を直列接続して初段のインストラクショ
ンレジスタの値をデコードして予め内部RAMのアドレ
スを求めておくというパイプライン処理のインストラク
ションを1ステップずつ実行する度にプログラムカウン
タの値を1ずつ増加させ(ステップ2)、 プログラムカウンタの値とNレジスタの値とが一致した
ら、前記アドレス保持レジスタに保持されている番地ア
ドレスをプログラムカウンタに再セットすると共に、シ
ーケンスの繰返し回数を保持しておき(ステップ3)、 前記シーケンスの繰返し回数がNになったらリピート処
理をストップして次の処理に移行する(ステップ4)よ
うに構成している。
上述の実施例では、シーケンス回数レジスタとして、リ
ピート回数Nを検出するNダウンカウンタを用いて、そ
の値が0になるのを検出する方式を用いたが、本発明は
これに限るものではない。
Nアップカウンタを用いて、該Nアップカウンタの出力
をNレジスタの値を比較し、一致したらリピート動作を
止めるようにしてもよい。
[発明の効果] 以上、詳細に説明したように、本発明によればリピート
するブロックの先頭番地を保持し、この保持しているア
ドレスからプログラムカウンタの値を1ずつインクリメ
ントし、その値がブロックのインストラクションの数M
に達したら、再度プログラムカウンタに保持しているブ
ロックの先頭番地をセットすることを必要リピート回数
Nだけ繰返すようにすることにより、M個のインストラ
クションを1個のブロックとしてN回繰返すシーケンス
をパイプライン処理方式で行えるようにすることができ
、実用上の効果が大きい。
【図面の簡単な説明】
第1図は本発明の原理ブロック図、 第2図は本発明の作用説明図、 第3図は本発明の一実施例を示す構成ブロック図、 第4図は各部の動作を示すタイミングチャート、第5図
は本発明の動作を示すフローチャート、第6図は従来回
路の構成例を示すブロック図である。 第1図において、 5はプログラムカウンタ、 6.7はインストラクションレジスタ、8はルックアヘ
ッドデコーダ、 9はデコーダ、 20はNレジスタ、 21はNレジスタ、 22はアドレス保持レジスタ、 23はシーケンス回数保持レジスタ、 24はプログラムカウンタである。

Claims (1)

  1. 【特許請求の範囲】  M個のインストラクションを1個のブロックとしてN
    回繰返すシーケンスをパイプライン方式で行う場合にお
    いて、 前記Mの値を保持するMレジスタ(20)と、Nの値を
    保持するNレジスタ(21)と、M個のインストラクシ
    ョンをN回繰り返すシーケンスを示す命令が来たら、そ
    の命令の番地の次の番地アドレスを保持するアドレス保
    持レジスタ(22)を設けておき、 前記アドレス保持レジスタ(22)の値をプログラムカ
    ウンタ(24)に初期セットすると共に、以降、命令R
    OM(5)から読出した命令を保持するインストラクシ
    ョンレジスタを(6)、(7)と2個を直列接続して、
    初段のインストラクションレジスタ(6)の値をルック
    アヘッドデコーダ(8)によりデコードして予め内部R
    AMのアドレスを求めておくというパイプライン処理の
    インストラクションを1ステップずつ実行する度にプロ
    グラムカウンタ(24)の値を1ずつ増加させるように
    し、 プログラムカウンタ(24)の値とMレジスタ(20)
    の値とが一致したら、前記アドレス保持レジスタ(22
    )に保持されている番地アドレスをプログラムカウンタ
    (24)に再セットすると共に、シーケンスの繰返し回
    数をシーケンス回数レジスタ(23)に保持しておき、 前記シーケンスの繰返し回数がNになったらリピート処
    理をストップして次の処理に移行するように構成したこ
    とを特徴とするブロックリピート回路。
JP17979489A 1989-07-11 1989-07-11 ブロックリピート回路 Pending JPH0343830A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP17979489A JPH0343830A (ja) 1989-07-11 1989-07-11 ブロックリピート回路

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP17979489A JPH0343830A (ja) 1989-07-11 1989-07-11 ブロックリピート回路

Publications (1)

Publication Number Publication Date
JPH0343830A true JPH0343830A (ja) 1991-02-25

Family

ID=16072011

Family Applications (1)

Application Number Title Priority Date Filing Date
JP17979489A Pending JPH0343830A (ja) 1989-07-11 1989-07-11 ブロックリピート回路

Country Status (1)

Country Link
JP (1) JPH0343830A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06236271A (ja) * 1993-01-08 1994-08-23 Internatl Business Mach Corp <Ibm> プロセッサおよび命令推測実行方法
CN100409784C (zh) * 2004-01-09 2008-08-13 帝人纤维株式会社 靴内部材料、鞋垫及长靴

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06236271A (ja) * 1993-01-08 1994-08-23 Internatl Business Mach Corp <Ibm> プロセッサおよび命令推測実行方法
CN100409784C (zh) * 2004-01-09 2008-08-13 帝人纤维株式会社 靴内部材料、鞋垫及长靴

Similar Documents

Publication Publication Date Title
EP0149213A2 (en) Vector processor
JPH02140831A (ja) データ処理装置
US20010028629A1 (en) Self-synchronous transfer control circuit and data driven information processing device using the same
US5253349A (en) Decreasing processing time for type 1 dyadic instructions
JPH0343830A (ja) ブロックリピート回路
JPS63200234A (ja) デ−タ処理装置
JPH01500065A (ja) 複数制御ストアを有するミクロプログラム情報処理システムの装置と方法
JPS5947651A (ja) プログラム制御装置
JP2979653B2 (ja) 情報処理装置
SU1339546A1 (ru) Операционное устройство с самоконтролем
JPH03171335A (ja) アドレス比較装置
SU896623A1 (ru) Устройство управлени конвейерным вычислительным устройством
JPH03233724A (ja) 繰り返し処理の制御方式
JPS61165171A (ja) マイクロコンピユ−タ
JPH0887411A (ja) パイプライン演算方法およびパイプライン演算装置
JPH02126341A (ja) 中央処理装置
JPS5854404B2 (ja) シ−ケンス制御装置
JPH04344530A (ja) マイクロプログラム制御回路
JPS6326733A (ja) パイプライン式命令実行制御装置
JPH01284970A (ja) イテレーション演算回路
JPH0314139A (ja) マイクロプログラムデバッグ装置
JPS61127035A (ja) パイプライン制御プロセッサ
JPS63208124A (ja) マイクロプログラム制御装置
JPH05134894A (ja) 内蔵マイクロコードデバツグ回路
JPS60237536A (ja) マイクロプログラム制御デ−タ処理装置