JPS6236575B2 - - Google Patents

Info

Publication number
JPS6236575B2
JPS6236575B2 JP55076489A JP7648980A JPS6236575B2 JP S6236575 B2 JPS6236575 B2 JP S6236575B2 JP 55076489 A JP55076489 A JP 55076489A JP 7648980 A JP7648980 A JP 7648980A JP S6236575 B2 JPS6236575 B2 JP S6236575B2
Authority
JP
Japan
Prior art keywords
instruction
address
prefetch
break
processing unit
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
Application number
JP55076489A
Other languages
English (en)
Other versions
JPS573143A (en
Inventor
Teiji Nishizawa
Sumio Ozawa
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 JP7648980A priority Critical patent/JPS573143A/ja
Publication of JPS573143A publication Critical patent/JPS573143A/ja
Publication of JPS6236575B2 publication Critical patent/JPS6236575B2/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/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3867Concurrent instruction execution, e.g. pipeline or look ahead using instruction pipelines

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)
  • Debugging And Monitoring (AREA)

Description

【発明の詳細な説明】 本発明は命令コードをメモリ装置から読み出す
動作と命令の実行とを並列化することにより、実
質的な命令実行速度を高めることを目的とした命
令先読み方式に関するものである。
第1図aに示すような命令コード群がメモリ装
置に格納されている場合、これらを最も基本的な
電子計算機装置が実行すると第1図bのように命
令の読み出しと命令の実行が直列的に行なわれ
る。ここで命令先読み機構を第1図cのように設
け、これを同図dに示すように演算処理機構とは
独立に動作させれば実質的な命令実行速度の向上
が可能となる。
次に通常の命令先読み機構を有する計算機装置
の構成を第2図に示す。インストテラクシヨンカ
ウンタ(IC)1には現在実行中の命令が記憶さ
れているメモリ装置のアドレスが記憶され、その
命令コードは命令レジスタ(IR)6に記憶さ
れ、このIR6の出力信号はデコードされ中央処
理装置(CPU)内の各制御ブロツクを制御して
いる。一方プリフエツチアドレスカウンタ
(PFC)2はIC1の示すアドレスの先のアドレス
を指し、データバス(DB)に転送空き時間が生
じた時にアドレス出力回路3を介してPFC2の
内容が命令フエツチ信号(FC)に同期して出力
される。メモリ装置はこれに反応してPFC2の
内容をアドレスとする命令コードをデータバス
(DB)に出力し、この情報はデータ入出力回路4
を介して先読み命令キユー5の最後尾に記憶さ
れ、PFC2の値が+1される。すなわち1回の
命令先読み動作を完了する。この命令先読み動作
は先読み命令キユー5が命令コードで満たされる
まで続けられるが、一方CPUが1命令コードを
実行するごとに、先読み命令キユー5の先頭の命
令コードがIR6に移され、同時にIC1の値が+
1される。またCPUが分岐命令を実行した場合
は分岐先のアドレスがIC1,PFC2にロードさ
れると共に先読み命令キユー5内の命令コードは
クリアされる。CPUがCPU内のレジスタとメモ
リ装置とのデータ転送命令を実行した場合、転送
を行なうべきメモリ装置のアドレスを示すアドレ
スレジスタ7の内容がアドレス出力回路3を介し
て出力され、データはデータ入出力回路を介して
データレジスタ8とメモリ装置との間で転送が行
われる。
ところで電子式計算機装置においてプログラム
の開発にあたつて、プログラムデバツグする上で
次のような機能を具備することが必要である。す
なわち利用者が設定したある特定のアドレスの命
令コードが実行されたことを検知してそれまでの
CPUの一連の実行動作を中断させる機能であ
り、これはブレーク動作と呼ばれる。実際には
CPUを停止させるか、CPUに割込み信号を発生
して割込み処理プログラムを実行させたりする。
この機能を命令先読み機構を有しない電子計算
機装置に対して実現した例を第3図に示す。第2
図に示したこれを有する電子計算機装置に比べて
命令先読み機構を有しない電子計算機装置では
PFC2、先読み命令キユー5が存在しない。ブ
レーク動作を起こしたいアドレス(ブレークアド
レス)をブレークアドレスレジスタ(BAR)9
に記憶させ、アドレス比較回路10はBAR9の
内容と、命令フエツチ信号(FC)に同期して出
力されるアドレスの内容を比較し、一致した時に
ブレークアドレス検出信号S1をCPUに出力す
る。
次に命令先読み機構を有する電子計算機装置に
このブレーク動作を実現する従来例を第4図を用
いて説明する。命令先読み機構を有する電子計算
機装置では、命令コードをメモリ装置にアクセス
するタイミングとその命令コードが実行されるタ
イミングには相互関係がなく、またある命令コー
ドが読まれても、その命令コードが実行されると
は限らない。すなわちメモリ装置側でどの命令コ
ードが実行されているかがわからない。そこでブ
レークアドレスレジスタ(BAR)9,アドレス
比較回路10はCPU内部に設けられ、アドレス
比較回路10はBAR9とIC1の間の一致関係を
調べ、一致した時にのみブレークアドレス検出信
号S1を出力する。しかしこの方法において次の
ような欠点が存在する。
(1) 半導体の高集積化技術を利用してCPUを1
チツプ化しようとした場合、プログラムデバツ
グ時しか有効利用しない(すなわちターゲツト
マシンでは利用しない)BAR9,アドレス比
較回路10をCPUチツプ内部に設けなければ
ならず、集積度の限界から他の機能をけずらな
ければならないことも生じ、CPUの性能低下
につながる。
(2) ブレークアドレスは場合によつては複数個所
設定したいようなこともあるが、外部付加して
もCPU内部のブレークアドレスレジスタ
(BAR)の個数以上は不可能である。
本発明は以上の欠点を除去することを目的とし
たものであり、その実施例とともに説明する。第
5図において第2図〜第4図に示したブロツクに
対応するものには同符号を付している。50は先
読み命令キユー、60は命令レジスタである。
次にこの実施例の動作について説明する。ブレ
ーク動作に関する以外の動作は第2図に対する説
明と全く同様であるため、ここではブレーク動作
についてのみ述べる。アドレス比較回路10は
BAR9の内容と命令フエツチ信号(FC)に同期
して出力されるアドレスの内容を比較し、一致し
た場合に先読み命令キユー50に対して一致信号
を出力する。先読み命令キユー50にはメモリ装
置から読み出された命令コードnビツトと共にこ
の一致信号1ビツトがとり込まれ、キユーの最後
尾に記憶される。以後この一致信号は命令コード
の一部として先読み命令キユー50内に存在し、
命令の実行が進むに従いシフトし、最終的には命
令レジスタ60に移される。もちろん分岐命令が
実行された時はこの一致信号も含めて先読み命令
キユー50はクリアされる。命令レジスタ60の
命令コードに対応するnビツトについては通常の
命令コードとしてデコードしCPU内の各制御ブ
ロツクを制御する。一方、一致信号に対応する1
ビツトの信号はブレークアドレス検出信号として
それまでの一連の実行動作を中断するための制御
に用いられる。
以上に説明したように本発明によれば、ブレー
クアドレスレジスタ,アドレス比較回路は命令先
読み機構を有しない電子計算機装置と全く同様に
メモリ装置側に設けることができ、ブレークアド
レスの箇所も外部の回路量に比例した数に増加す
ることができる。また本発明によつてCPU内部
に新たに必要なハードウエア量はブレーク機能の
ないものに比べ、先読み命令キユーの語数をqと
すると(q+1)ビツトの記憶装置だけでよく、
CPU全体の集積度にはほとんど影響しない特徴
がある。
【図面の簡単な説明】
第1図a,b,c,dは命令先読み機構を有し
ない電子計算機装置とこれを有する電子計算機装
置の動作フローの相違を説明する図、第2図は命
令先読み機構を有する電子計算機装置の構成図、
第3図は命令先読み機構を有しない電子計算機装
置にブレークアドレス検出機能を具備した装置の
構成図、第4図は命令先読み機構を有する電子計
算機装置にブレークアドレス検出機能を具備した
装置の構成図、第5図は本発明の一実施例による
命令先読み方式を用いた電子計算機装置の構成図
である。 9……ブレークアドレスレジスタ、10……ア
ドレス比較回路、50……先読み命令キユー。

Claims (1)

    【特許請求の範囲】
  1. 1 中央処理装置が特定のアドレスに格納された
    命令コードを実行した時に、それまでの一連の実
    行フローを中断するような上記特定のアドレスを
    格納する1個以上のブレークアドレスレジスタ
    と、アドレスバスに出力するアドレスの値と、上
    記ブレークアドレスレジスタの内容とを比較し、
    一致しているか否かの信号を出力する比較回路
    と、命令読み出し機構が命令コードを取込む際
    に、nビツト命令コードの入力信号線とは独立し
    た体の信号線から上記比較回路の出力である1ビ
    ツトのブレークアドレス一致信号も同時に取込
    み、命令が中央処理装置によつて実行されるまで
    両者が順番に行列を作つて格納される1語が(n
    +1)ビツトからなる1語以上の先読み命令キユ
    ーとを有し、上記中央処理装置の実行した命令が
    分岐命令のような実行フローに変化を生じさせる
    命令以外の場合、先読み命令キユーの先頭の1語
    のうち命令コードであるnビツトを命令レジスタ
    に移し、残り1ビツトのブレークアドレス一致情
    報を利用して上記中央処理装置の実行を中断する
    か否かの制御を行なうことを特徴とする命令先読
    み装置。
JP7648980A 1980-06-05 1980-06-05 Instruction prefetching system Granted JPS573143A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP7648980A JPS573143A (en) 1980-06-05 1980-06-05 Instruction prefetching system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP7648980A JPS573143A (en) 1980-06-05 1980-06-05 Instruction prefetching system

Publications (2)

Publication Number Publication Date
JPS573143A JPS573143A (en) 1982-01-08
JPS6236575B2 true JPS6236575B2 (ja) 1987-08-07

Family

ID=13606624

Family Applications (1)

Application Number Title Priority Date Filing Date
JP7648980A Granted JPS573143A (en) 1980-06-05 1980-06-05 Instruction prefetching system

Country Status (1)

Country Link
JP (1) JPS573143A (ja)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS59125449A (ja) * 1982-12-31 1984-07-19 Fujitsu Ltd 仮想計算機における制御方式
JPS6234238A (ja) * 1985-08-07 1987-02-14 Mitsubishi Electric Corp マイクロプロセツサ
JPS6263345A (ja) * 1985-09-13 1987-03-20 Toshiba Corp プログラム・デバツグ装置
JPS62133532A (ja) * 1985-12-05 1987-06-16 Nec Corp マイクロプロセツサ
JP2982875B2 (ja) * 1987-12-28 1999-11-29 株式会社日立製作所 スレーブ制御装置
JPH04350735A (ja) * 1991-05-29 1992-12-04 Nec Corp マイクロプロセッサ

Also Published As

Publication number Publication date
JPS573143A (en) 1982-01-08

Similar Documents

Publication Publication Date Title
US5511207A (en) Program control circuit determining the designated number of times a sequence of instructions is repetitively executed to prevent further execution of a jump instruction
EP0087978B1 (en) Information processing unit
EP0533337B1 (en) Apparatus and method for resolving dependencies among a plurality of instructions within a storage device
US6115808A (en) Method and apparatus for performing predicate hazard detection
US5481734A (en) Data processor having 2n bits width data bus for context switching function
US4403284A (en) Microprocessor which detects leading 1 bit of instruction to obtain microcode entry point address
US4402042A (en) Microprocessor system with instruction pre-fetch
US3909797A (en) Data processing system utilizing control store unit and push down stack for nested subroutines
US4694391A (en) Compressed control decoder for microprocessor system
US4172284A (en) Priority interrupt apparatus employing a plural stage shift register having separate interrupt mechanisms coupled to the different stages thereof for segregating interrupt requests according to priority levels
US4274138A (en) Stored program control system with switching between instruction word systems
US3593306A (en) Apparatus for reducing memory fetches in program loops
US4434462A (en) Off-chip access for psuedo-microprogramming in microprocessor
US5502827A (en) Pipelined data processor for floating point and integer operation with exception handling
US4747045A (en) Information processing apparatus having an instruction prefetch circuit
JPH04188229A (ja) 浮動小数点演算処理装置
US4093983A (en) Fast and normal rate instruction fetching
JPS6236575B2 (ja)
EP0240606B1 (en) Pipe-line processing system and microprocessor using the system
US5499363A (en) Microprocessor coupled to coprocessor by coprocessor bus separate from system bus to external memory for increased efficiency
JPH034936B2 (ja)
JP2703884B2 (ja) データ書込み制御方式
JPS5826584B2 (ja) デ−タ処理装置
US6931473B2 (en) Data transfer via Host/PCI-X bridges
KR910001708B1 (ko) 중앙처리장치