JPS59128642A - マイクロプログラム制御機器のパイプライン方式 - Google Patents

マイクロプログラム制御機器のパイプライン方式

Info

Publication number
JPS59128642A
JPS59128642A JP331883A JP331883A JPS59128642A JP S59128642 A JPS59128642 A JP S59128642A JP 331883 A JP331883 A JP 331883A JP 331883 A JP331883 A JP 331883A JP S59128642 A JPS59128642 A JP S59128642A
Authority
JP
Japan
Prior art keywords
instruction
address
stored
program counter
selector
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
JP331883A
Other languages
English (en)
Other versions
JPH0559450B2 (ja
Inventor
Shuji 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.)
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 JP331883A priority Critical patent/JPS59128642A/ja
Priority to DE8484900531T priority patent/DE3483875D1/de
Priority to PCT/JP1984/000002 priority patent/WO1984002785A1/ja
Priority to EP19840900531 priority patent/EP0142562B1/en
Publication of JPS59128642A publication Critical patent/JPS59128642A/ja
Publication of JPH0559450B2 publication Critical patent/JPH0559450B2/ja
Granted legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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/28Enhancement of operational speed, e.g. by using several microcontrol devices operating in parallel
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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
    • G06F9/262Arrangements for next microinstruction selection
    • G06F9/264Microinstruction selection based on results of processing
    • G06F9/267Microinstruction selection based on results of processing by instruction selection on output of storage

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Advance Control (AREA)
  • Executing Machine-Instructions (AREA)

Abstract

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

Description

【発明の詳細な説明】 C1 〔発明の利用分野〕 本発明はマイクロプログラム制御機器のパイプライン方
式に関するものでオシ、更に詳しくはダミーサイクルを
発生することなく条件分岐を可能とすることによシ高速
化を図ったマイクロプログラム制御機器のパイプライン
方式に関する。゛〔従来技術〕 マイクロプログラム制御機器としてメモリ等のT、SI
試験器に用いるパターン発生器を取シ上げ、従来技術を
説明する。
一般にメモリ等のLSI試験に際して使用されるテヌト
パターンは、マイクロプログラム制御方式によって発生
している。従って、一つのサイクルは命令の格納番地の
指定・命令の読み出し・命令の解読・命令の実行の各部
分によって成シ立ち、サイクルの最小周期も各部分の最
小動作時間の合計によって制限されている。
一方、被試験素子の高速化に伴ない、LSI試験器、特
にテストパターン発生器の高速化が強く望まれている。
マイクロプログラム制御方式のテストパターン発生を高
速化する為の一般に知られた最良の方法は、パイプライ
ン方式を採ることによシ命令の読み出しと実行を同時並
列に行なう事である。しかし、この方法によっても、プ
ログラムカウンタがあるアドレスを指定してから、そこ
に格納されている命令がパイプラインレジスタに保持さ
れるのは1サイクル後となる。そのため、プログラムカ
ウンタが条件分岐命令の格納されているアドレスを指定
し、条件分岐命令が読み出され、次のアドレスが確定さ
れるまでに2サイクルタイムの時間を要し、後半の1サ
イクルタイムの間アドレスが不確定のままダミーサイク
ルとなってし甘う。
LSI試験器のテスト実行中にダミーサイクルが生じて
し1うと、その部分だけテストパターン発生に2サイク
ル要してしまい、実時間での正常なテストが期待できな
くなってしまう。
〔発明の目的〕 本発明は上記した従来技術の欠点に鑑みなされたもので
、マイクロプログラム制御機器を高速で動作させるため
、ダミーサイクルを発生することなく条件分岐命令の実
行を可能ならしめるマイクロプログラム制御機器のパイ
プライン方式を提供することを目的としている。
〔発明の概要〕
本発明のマイクロプログラム制御機器のパイプライン方
式は、命令の先読みを行ない、プログラムカウンタがア
ドレスを指定すると同時に、対応する命令がパイプライ
ンレジスタに保持でれる様に構成し、甘た条件分岐命令
時には次に実行される可能性のある全ての命令を並列に
先読みし、その中から実行する命令を選択することによ
シ、ダミーサイクルの発生を防止するものである。本発
明においては、命令を先読みする為に、メモリへの命令
格納位置を操作して「現在のアドレス」を用いて「次に
実行される命令」の読み出しを行う。
第1図(、)は、従来方式においてアドレスNに条件分
岐命令が格納されている場合を示す図である。
アドレスNで条件が成立すればアドレスMに分岐し、条
件が成立しなければ分岐は起きずアドレス(N+1)に
進む。第1図(b)は本発明のパイプライン方式の命令
格納位置を示す図であシ、従来方式ノアトレス(N−1
−1)と分岐先ア、ドレスMの命令をアドレスNに格納
する事により、「現在のアドレス」で「次の命令」の先
読みを可能にするものである。
第1図(b)におけるアドレスNで条件が成立したとす
ると、次のサイクルでプログラムカウンタはアドレスM
を指定する。同時にパイプラインレジスタには、アドレ
スNによって読み出された命令(M)が選択され保持さ
れる。
R1」ち、本発明によれば、メモリの読み出し内容が常
にプログラムカウンタの指示よシ、lサイクル先行する
ことになり、それを一時保持するパイプラインレジスタ
は常にプログラムカウンタの指示に対応することになる
〔発明の実施例〕
以下添付の図面に示す実施例によシ、更に詳細に本発明
について説明する。
第2図は、同一プログラムを実行する場合の従6゛、1 来例による命令格納位置と本発明のパイプライン方式に
よる命令格納位置の相違を示す図であシ、第2図(a)
が従来例の命令格納位置を示し、第2図(b)が本発明
のパイプライン方式の命令格納位置を示している。同図
において、NOPはノーオペレーションでアシ、プログ
ラムカウンタをインクリメントする。JMPはジャンプ
であり、オペランドに示されたアドレスに分岐する。J
Cはジャンプコンデイショナリーであシ、条件が成立し
た時に限シオペランドのアドレスに分岐する。SBRは
サブルーチンコントロールでsb、scはサブルーチン
コントロールコンディショナv−でhh、条件が成立し
た時に限シサブルーチンをコントロールする。RETは
リターンである。
第2図(a)に示す従来の命令格納位置では、実行され
るべき命令を実行されるべきアドレスに格納している。
これに対して、第2図(b)に示す本発明のテストパタ
ーン発生器の命令格納位置では、次に実行される可能性
のある命令を現在のアドレスに格納している。第2図(
b)に示す命令格納位置は、簡単な手順に従って第2図
(1K)に示す命令格納位置から得られる。第2図(b
)に示すメモIJ Aには、第2 図(a)における対
応するアドレスの次のアドレスに格納されている命令を
格納する。例えば、第2図(b)のメモIJ Aのアド
レス1に格納されている命令JC5は、第2図(、)の
アドレス2に格納されているものである。又、第2図(
b)のメモリAのアドレス2に格納されている命令NO
Pは、第2図(a)のアドレス3に格納されているもの
である。第2図(b)のメモ17 Bに何らかの命令が
格納される場合は、第2図(a)の対応するアドレスに
分岐命令又は条件分岐命令が格納されている場合である
。第2図(b)のメモIJ Bに格納される命令は、第
2図(a)の対応するアドレスに格納されている分岐命
令の分岐先に格納されている命令である。例えば、第2
図(b)のメモリBのアドレス4に格納されている命令
SBR10は、第2図(a)のアドレス4に格納されて
いる命令JCBの分岐先であるアドレス8に格納されて
いる命令である。又、第2図(b)のメモIJ Bのア
ドレス6に格納されている命令NOPは、第2図(、)
のアドレス6に格納されている命令SC10の分岐先で
あるアドレス10に格納されている命令である。
第3図は本発明のマイクロプログラム制御機器のパイプ
ライン方式の第1の実施例を示すブロック図である。同
図において、プログラムカウンタ1はメモリA、Bのア
ドレスを指定する。メモリA、Bは第2図(b)に示し
た位置に命令を格納する。
選択器2は、メモIJ A 、 Bからそれぞれ出力さ
れる次アドレスの命令S1と分岐先アドレスの命令S2
のうちいずれか一方を選択して出力する。パイプライン
レジスタ3は、選択器2によって選択された命令を一時
保持する。実行部4は、パイプラインレジスタ3に一時
保持さ牡た命令を解読し、プログラムカウンタ1や選択
器2等に動作を指示する。レジスタファイル5は、サブ
ルーチンコール時の戻りアドレスにおける命令を一時記
憶する為のメモリであり、発明の本質的なものではない
次に、第3図に示す第1の実施例の動作を第4図に示す
シーケンスチャートラ用いて説明する。
第4図は、第2図(b)に示したプログラム例を実行9
(1 した場合のシーケンスチャートである。先ず、初期状態
においてパイプラインレジスタ3に、開始するアドレス
に本来対応している命令(従来の方式において開始アド
レスに格納される命令)を入れておく。第4図において
は、アドレス1から開始するので、パイプラインレジス
タ3に命令NOPを格納しておく。次に、実行部4はこ
れを解読し、プログラムカウンタ1にプログラムカウン
タ制御信号S4を出力してカウントアツプを指示し、選
択器2に選択信号S3を出力してメモIJ Aからの次
アドレスの命令81(非分岐時命令)を選択することを
指示する。次のクロックで、プログラムカウンタ1はア
ドレス2を指示し、パイプラインレジスタ3にはアドレ
ス2に本来対応している命令(従来の方式において、ア
ドレス2に格納されるべき命令)JC5が一時保持され
る。実行部4は命令JC5と条件信号ssThmgし、
条件が成立している場合にはプログラムカウンタ1にプ
ログラムカウンタ制御信号S4を出力してノくラレルデ
下タロードを指示し、選択器2(は選択信号S3をto
   C: 出力してメモリBからの分岐先命令82(分岐時命令)
を選択する様に指示する。次のクロックでプログラムカ
ウンタ1は、パイプラインレジスタ3から出力される分
岐先アドレスS6を受けてアドレス5を指示し、パイプ
ラインレジスタ3にはアドレス5の本来の命令であるN
OPが保持される。
以下同様に動作して、プログラムカウンタ1の指示する
アドレス本来の命令がパイプラインレジスタ3に保持さ
れ、その入力には次に実行される可能性のあるすべての
命令が選択器2全通してセットアツプされている事にな
る。以上の説明から明らかな様に、本実施例によれば、
榮件分岐時であってもダミーサイクルを発生することな
く分岐が可能になる。
第5図は、第2図と同じく同一プログラムを実行する場
合の従来例による命令格納位置と本発明のパイプライン
方式による命令格納位置の相埠を示す図である。第5図
(a)は第2図(&)と全く同一の従来例の命令格納位
置を示し、第5図(b)は第6図に示す第2の実施例の
雫令格納位置を示している。
11   M 第2図(b)に示す命令格納位置を示す図と異っている
点は、メモリAおよびメモIJ Bには分岐先を示すオ
ペランド部分を格納しない事である。その代わりにオペ
ランド専用のメモリOPDを設け、ここに従来方式と同
じアドレスにオペランド(分岐先アドレス)を格納する
第6図は上記したメモ+7 A 、 B 、 OPDを
備えた本発明の第2の実施例を示す図である。同図にお
いて、メモIJ A 、 B 、 OPDはそれぞれ第
5図(b)に示す命令・オペランドを格納している。第
6図に示す第2の実施例の動作は、メモIJ OPDが
加わった事とメモリA、Hのビット幅が減少したことを
除けば、第3図に示す第1の実施例の動作と同一である
尚、以上の実施例では分岐先が2つの場合を例にして説
明したが、本発明はこれに限定されるものではなく、分
岐先がN個ある場合も適用できる。
この場合には、メモリをN個並列に設ける事によシ実施
可能となる。又、命令の格納位置も1サイクル分の先読
み位置としたが、2サイクル以上分待11昭59−12
802 (4) の先読み位置に格納した場合は、メモリのインターリー
ブが可能になる。
第7図は、本発明の第3の実施例を示すブロック図であ
シ、3ウエイインターリーブを行うものである。本実施
例ではプログラムカウンタP1とメモリM1、プログラ
ムカウンタP2とメモリM2、プログラムカウンタP3
とメモリM3の三つのユニット間でインターリーブを行
ない、見かけ上釜メモIJMI、M2.M3が動作して
いる速度の3倍の速さで各メモリMl 、M2 、M3
から命令が読み出される。
第7図に示す実施例の動作について次に説明する。プロ
グラムカウンタPL、P2.P3は実行部4から出力さ
れるプログラムカウンタ制御信号84a 、 S4b 
、 S4cによって順番に更新される。そして、各メモ
リMl、M2.M3のアドレスNには、従来の方式にお
いてアドレスNに格納される命令の3サイクル後に実行
される可能性のあるすべての命令が格納されている。選
択器2は上記各メモIJMI、M2.M3の出力を順番
に選択し、13    ’c+ 更に選択されたメモリMl、M2.M3から出力されて
いる複数の命令のなかから次に実行するべき命令を実行
部4からの選択信号S3に従って一つ選択する。パイプ
ラインレジスタ3は、選択器2で選択された命令を一時
保持する。実行部4は、パイプラインレジスタ3に一時
保持された命令に従って選択器2へ選択信号S3を出力
するとともに、三つのプログラムカウンタPI、P2.
P3のうち順次選択されるいずれか一つのプログラムカ
ウンタにプログラムカウンタ制御信号84 a e S
 4 b eS4eを出力する。
以上の動作説明から明らかな様に、例えばプログラムカ
ウンタP1の値が更新され、メモリM1に対して新しい
アドレスが指示されてから3サイクル後に1選択器2に
よりメモリM1から読み出された複数の命令の一つが選
択・出力される。ζこで、前記した様にメモリM1には
3サイクル後に実行される可能性のある全ての命令が記
憶されているから、ダミーサイクルを発生することなく
、次に実行される命令が読み出せることになる。
4  N 上記した第3の実施例では3ウエイインターリーブの場
合を想定したが、本発明は言うまでもなくこれに限定さ
れるものではない。又、前記第1及び第2及び第3の実
施例では、選択手段2の後に一時保持用のパイプライン
レジスタ3を設けたが、本発明はこれに限定されるもの
ではなく、これらを入れ換えて一時保持手段の後に選択
手段を設けてもよい。
〔発明の効果〕
以上の説明から明らかな様に、本発明によれば、ダミー
サイクルを発生することのないパイプライン構成、イン
ターリーブ構成を採用することが可能となシ、その結果
マイクロプログラム制御機器の一層の高速化を図ること
が可能になる。
本発明の採用が最も顕著な効果を発揮する例として、半
導体記憶素子や大規模集積論理回路等を試験するIC試
験装置のパターン発生器の制御部への適用があげられる
。しかし、本発明はこれに限定されるものではなく、広
くマイクロプログラム制御機器に応用できることは言う
までもない。
l5.。
又、本発明における記憶手段への命令格納位置の編集は
リフトウェアによって行なっても良いし、専用のハード
ウェアによって行なっても良いし、両者の組み合せによ
って行なっても良い。
【図面の簡単な説明】
第1図(a)は従来の命令格納位置を示す説明図、第1
図(b)は本発明のマイクロプログラム制御機器のパイ
プライン方式による命令格納位置を示す説明図、第2図
(a)は従来の命令格納位置の具体例を示す図、第2図
(b)は本発明のマイクロプログラム制御機器のパイプ
ライン方式による命令格納位置を示す第1の例を示す図
、第3図は本発明のマイクロプログラム制御機器のパイ
プライン方式の第1の実施例を示すブロック図、第4図
は第3図に・示す第1の実施例の動作を示すシーケンス
チャート、第5図(a)は従来の命令格納位置の具体例
を示す図、第5図(b)は本発明のマイクロプログラム
制御機器のパイプライン方式による命令格納位置の他の
具体例を示す図、第6図は本発明のマイクロプログラム
制御機器のパイプライン方式の第2の実施例を示すブロ
ック図、第7図は本発明のマイクロプログラム制御機器
のパイプライン方式の第3の実施例を示すブロック図で
ある。 1、Pl、P2.P3・・・プログラムカウンタ、2・
・・選択器、3・・・パイプラインレジスタ、4・・・
実行部、5・・・レジスタファイル、A、 B 、OP
D、Ml 、M2 、M3・・・メモリ。 代理人 弁理士  秋 本 正 集 結1 日 (a)(b) 釦2目 (a)               市)節30

Claims (1)

    【特許請求の範囲】
  1. 命令を格納する為の記憶手段と、該記憶手段にアドレス
    信号を出力するアドレス指定手段と、該アドレス指定手
    段によシ該記憶手段から読み出される検数の命令のうち
    から1つの命令を選択する選択手段と、選択された命令
    を一時保持する保持手段と、該一時保持された命令を解
    読し、その命令内容に応じた指示を各部に与える実行部
    とからなシ、上記記憶手段は、上記アドレス指定手段に
    よシ第nアドレス(n=0,1,2・・・)が指定され
    ている時、上記保持手段に保持されている命令実行後の
    史にm(mは1以上の整数)サイクル後に実行される可
    能性のあるすべての命令を編集し骸第nアドレスに予じ
    め格納していることを特徴とするマイクロプログラム制
    御機のパイプライン方式。
JP331883A 1983-01-14 1983-01-14 マイクロプログラム制御機器のパイプライン方式 Granted JPS59128642A (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP331883A JPS59128642A (ja) 1983-01-14 1983-01-14 マイクロプログラム制御機器のパイプライン方式
DE8484900531T DE3483875D1 (de) 1983-01-14 1984-01-11 Pipelinesystem fuer mikroprogrammsteuereinheit.
PCT/JP1984/000002 WO1984002785A1 (en) 1983-01-14 1984-01-11 Pipeline system for microprogram control unit
EP19840900531 EP0142562B1 (en) 1983-01-14 1984-01-11 Pipeline system for microprogram control unit

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP331883A JPS59128642A (ja) 1983-01-14 1983-01-14 マイクロプログラム制御機器のパイプライン方式

Publications (2)

Publication Number Publication Date
JPS59128642A true JPS59128642A (ja) 1984-07-24
JPH0559450B2 JPH0559450B2 (ja) 1993-08-31

Family

ID=11554004

Family Applications (1)

Application Number Title Priority Date Filing Date
JP331883A Granted JPS59128642A (ja) 1983-01-14 1983-01-14 マイクロプログラム制御機器のパイプライン方式

Country Status (4)

Country Link
EP (1) EP0142562B1 (ja)
JP (1) JPS59128642A (ja)
DE (1) DE3483875D1 (ja)
WO (1) WO1984002785A1 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63247833A (ja) * 1987-04-02 1988-10-14 Hitachi Ltd 条件分岐命令制御方法
JPH0421129A (ja) * 1990-05-16 1992-01-24 Nec Corp 命令キャッシュ装置

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS62501940A (ja) * 1985-02-20 1987-07-30 マジエラン コ−ポレイシヨン(オ−ストラリア)プロプライエタリ リミテイツド マイクロプログラム・コントロ−ラの改良

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5244535A (en) * 1975-10-06 1977-04-07 Hitachi Ltd Information processing equipment

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5231692B2 (ja) * 1971-01-25 1977-08-16
JPS529342B2 (ja) * 1971-10-09 1977-03-15
US3800293A (en) * 1972-12-26 1974-03-26 Ibm Microprogram control subsystem
DE2445390C3 (de) * 1974-09-23 1979-02-01 Siemens Ag, 1000 Berlin Und 8000 Muenchen Überlappt betriebener, taktgesteuerter Speicher
JPS5169965A (en) * 1974-12-14 1976-06-17 Fujitsu Ltd Maikuro puroguramuseigihoshiki

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5244535A (en) * 1975-10-06 1977-04-07 Hitachi Ltd Information processing equipment

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63247833A (ja) * 1987-04-02 1988-10-14 Hitachi Ltd 条件分岐命令制御方法
JPH0421129A (ja) * 1990-05-16 1992-01-24 Nec Corp 命令キャッシュ装置

Also Published As

Publication number Publication date
WO1984002785A1 (en) 1984-07-19
EP0142562A4 (en) 1986-04-15
EP0142562A1 (en) 1985-05-29
EP0142562B1 (en) 1990-12-27
DE3483875D1 (de) 1991-02-07
JPH0559450B2 (ja) 1993-08-31

Similar Documents

Publication Publication Date Title
US7281119B1 (en) Selective vertical and horizontal dependency resolution via split-bit propagation in a mixed-architecture system having superscalar and VLIW modes
JPH0115093B2 (ja)
JPH026765A (ja) 自動回路テスタ制御システム
US5657486A (en) Automatic test equipment with pipelined sequencer
US5398250A (en) Circuit for testing circuit blocks controlled by microinstructions
JPH03286332A (ja) デジタルデータ処理装置
JPS59128642A (ja) マイクロプログラム制御機器のパイプライン方式
US7111152B1 (en) Computer system that operates in VLIW and superscalar modes and has selectable dependency control
KR970702524A (ko) 개발 지원용 마이크로 컴퓨터(microcomputer with development support)
US5819081A (en) Method of executing a branch instruction of jumping to a subroutine in a pipeline control system
JPH0575985B2 (ja)
JPS61201172A (ja) メモリ読出制御装置
JP2982129B2 (ja) マイクロプログラム制御装置
JPH0228724A (ja) 分岐命令制御方式
JPS60181837A (ja) エクスキユ−ト命令処理方式
JPS593647A (ja) デ−タ処理システム
JPS6364130A (ja) 分岐命令制御方法
JPS62278637A (ja) マイクロプログラム制御器
JPH0644066A (ja) 情報処理装置
JPH02100137A (ja) 命令実行制御方式
JPS6113607B2 (ja)
JPS62222333A (ja) マイクロプログラム処理方法及び装置
JPH02294829A (ja) メモリオペランド取出しシステム
JPH02155052A (ja) トレース装置
JPH01310444A (ja) 並列演算処理装置