JPS63271530A - 命令実行制御方式 - Google Patents

命令実行制御方式

Info

Publication number
JPS63271530A
JPS63271530A JP10607487A JP10607487A JPS63271530A JP S63271530 A JPS63271530 A JP S63271530A JP 10607487 A JP10607487 A JP 10607487A JP 10607487 A JP10607487 A JP 10607487A JP S63271530 A JPS63271530 A JP S63271530A
Authority
JP
Japan
Prior art keywords
instruction
redundant
execution
program
execution control
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
JP10607487A
Other languages
English (en)
Inventor
Tadashi Kumazawa
熊沢 忠志
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 JP10607487A priority Critical patent/JPS63271530A/ja
Publication of JPS63271530A publication Critical patent/JPS63271530A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Executing Machine-Instructions (AREA)

Abstract

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

Description

【発明の詳細な説明】 〔目次〕 概要 産業上の利用分野 従来の技術 発明が解決しようとする問題点 問題点を解決するための手段(第1図)゛作用 実施例 (a)一実施例の説明(第2図、第3図)(b)他の実
施例の説明(第4図) (C)別の実施例の説明 発明の効果 〔概要〕 プログラムメモリの命令コードをプログラムカウンタの
アドレスに従って命令フェッチレジスタに読込んでから
命令実行部へ与える命令実行制御方式において、命令コ
ードに冗長命令か否かの冗長表示ビットを設は且つ、冗
長命令を実行するか否かの制御フラグと、冗長表示ビッ
トと制御フラグから冗長命令の実行制御を行う実行制御
部とを設けることによって、プログラム中に埋め込まれ
た冗長命令の実行回避を行うものである。
〔産業上の利用分野〕
本発明は、プロセッサにおけるプログラム中の命令を実
行するか否か制御する命令実行制御方式に関し、特にプ
ログラム中に埋め込まれた冗長命令の実行可否を判定す
る命令実行制御方式に関する。
近年プロセッサのプログラムの実行効率向上が求められ
ているとともに、プログラムは種々の機能実現のため益
々複雑化しつつある。
このような複雑なプログラムを効率良く実行することが
求められている。
〔従来の技術〕
一般に、プログラムは障害診断、調査、プログラム開発
、検証中のチェック等のための通常処理では必要のない
ルーチン又はプログラムを含んでいる。
例えば、プロセッサ(CP U)の診断、調査のため調
査用機器(トレーサ等)、オプション装置(キャッシュ
メモリ等)が接続される場合があり、このためプログラ
ムにはこれらのデバイスのためのドライバープログラム
が含まれている。
そして、通常処理実行中にそれらのデバイスが接続され
ているかどうかのチェックを実行し、接続されている場
合はドライバープログラムを実行し、接続してない場合
はこれらの部分はバイパスされる。
同様に、プログラムの開発、検証等におけるチェックル
ーチンにおいても同様の動作が行われる。
このような場合これらの機器デバイスが接続されていな
い又はチェックの必要のない通常の実行動作においては
、この部分は、たとえデバイスの接続チェックであって
も冗長なものであり、係る場合に冗長処理の埋め込まれ
たプログラムの実行はプログラムの実行時間を増大させ
る。
このため、従来は、通常処理用プログラムとは別に、こ
れらの機器のドライバープログラム等を含むプログラム
を用意し、機器を接続する場合や、チェックを行う場合
にはプログラムを入れ換えるようにしていた。
〔発明が解決しようとする問題点〕
しかしながら、係る従来技術では、稼動中のシステムに
は適用できないという問題がある他に、プログラムを2
つ用意しなければならず且ついずれのプログラムを実行
しているかの管理も必要となるという問題も生じていた
本発明は、プログラムの入れ換えを行わなくても冗長処
理を含むプログラムの実行速度を向上することのできる
命令実行制御方式を提供することを目的とする。
〔問題点を解決するための手段〕
第1図は本発明の原理説明図である。
図中、lはCPU (プロセッサユニット)であり、命
令コードがフェッチされる命令フェッチ部1aと、命令
コードの示す命令を実行する命令実行部1bとを有して
おり、2はプログラムメモリであり、一連の命令コード
を羅列したプログラムを格納するものである。
命令フェッチ部1aにはプログラムメモリ2の命令コー
ドを読み出すためのプログラムカウンタ10と、読み出
した命令コードをフェッチする命令フェッチレジスタ1
1と、冗長命令を実行するか否かを制御する制御フラグ
格納部12と、フェッチされた命令コードの冗長表示ビ
ットGと制御フラグCから、命令コードを命令実行部1
bに与えるか否かを制御する実行制御部13が設けられ
ている。
尚、14はゲートであり、命令コードを命令実行部1b
へ与えるためのもの、15はインバータであり、実行制
御部13の信号でプログラムカウンタ10を歩進させる
ものである。
【作用〕 本発明では、命令コード中に、当該命令が冗長命令であ
るか否かを表示する冗長表示ピッl−Gを設けることに
よって、プログラム中のデバッグ、オプション用等の冗
長命令を識別できるようにしている。
そしてこの冗長命令を実行するか否かは、外部からセッ
トされる格納部12の制御フラグCと、実行制御部13
によって決定される。
従って、冗長命令を実行しない場合には、その命令コー
ドはフェッチ動作だけで終了し、命令実行部1bへ与え
られないから、冗長命令が埋め込まれたプログラムでも
、プログラム中の冗長命令の実行が自動回避され、プロ
グラムの実行速度が向上する。
〔実施例〕
(a)一実施例の説明 第2図は本発明の一実施例構成図である。
図中、第1図で示したものと同一のものは同一の記号で
示してあり、3aはオプション機器であり、例えばキャ
ッシュメモリやトレーサ、3bはオペレータスイッチで
あり、冗長命令の実行を指示するものである。
この実施例では、命令コード内に複数nヶの冗長表示ビ
ン)Gl〜Gnが設けられ、実行制御する条件もnヶ設
けられており、実行制御フラグレジスタ12に係るnヶ
の実行制御フラグC1−Cnがセットできるようになっ
ている。
例えば、プログラム中のオプション機器用の冗長命令に
は、冗長表示ビットG1をONとしておき、冗長表示ビ
ットGlがONになっている冗長命令は、実行制御フラ
グレジスタ12の実行制御フラグC1がオンになってい
る場合(即ち、外部のオプション機器3aが接続された
場合)のみ実行制御部13がゲー)14を開き、当該命
令コードを命令実行部1bに与えて、実行せしめる。
逆に、実行制御フラグC1がオフになっている場合(外
部のオプション機器3aが接続されていない場合)には
、実行制御部13はゲート14を閉じ、インバータ15
を介しプログラムカウンタlOの内容を+1加算部10
aで「十l」インクリメントし、次のアドレスの命令コ
ードを呼び出させる。
この実行制御フラグ01〜Cnは、オプション機器3a
の接続、オペレータスイッチ3bの操作等の外部要因及
び通常プログラムが自己診断機能を起動する場合のよう
な内部ソフトウェア命令によってセットされる。
一方、冗長命令でない通常命令では冗長表示ビットGl
−Gnがオフであるから、通常通り、ゲート14を介し
命令コードが命令実行部1bへ与えられ、命令の実行が
行われ、プログラムカウンタlOは命令実行部1bより
制御される。
第3図は本発明の詳細な説明図であり、係る冗長命令が
埋め込まれたプログラムの一例を示している。
第3図(A)のプログラムAにおいては、通常処理ルー
チン中の「*」を付した部分は冗長な命令であり、デバ
イスが接続されているかどうかをテストし、接続されて
いれば機器ドライバープログラム(デバイスドライブル
ーチン)に分岐するためのものである。
そこで、この部分は設計時に開発者によってマークされ
、コンパイラ等の言語処理過程において冗長命令となる
、即ち冗長表示ビットをオンするよう設定する。
従って、第2図の構成によりこの命令は、通常に実行さ
れず、デバイスが接続され、実行制御フラグがONとな
ることによって実行され、機能する。
又、第3図(B)のプログラムモジュールBにおいては
、「*」を付した部分は、入力が限界値内に在るかどう
かを調べる処理である。プログラムモジュールBへの入
力値が保証されている場合これらの処理は冗長なものと
考えられる。
そこで、この部分は冗長命令とし、同様に冗長表示ビッ
トがオンとなるように設定する。
そして、このプログラムモジュールへ入力を行う他のプ
ログラムモジュールのデバッグ時には、オペレータが実
行制御フラグをONにすることにより機能させることが
できる。
(b)他の実施例の説明 第4図は本発明の他の実施例構成図である。
図中、第1図及び第2図で示したものと同一のものは同
一の記号で示してあり、16は命令先読みバッファであ
り、ゲート14を介する命令コードを複数蓄えられるも
のである。
この実施例では、命令先読みバッファ16を設けること
によって命令フェッチと命令実行がパイプライン処理さ
れるように構成されている。
このような構成のものでは、いくつかの冗長命令が連続
してフェッチされる場合でも、命令実行部1bが動作待
ちとなることが少なく、冗長命令の実行制御の効果が顕
著である。
即ち、命令実行部1bは、係る冗長命令は殆ど意識され
ない。
(c)別の実施例の説明 上述の実施例の他に、プログラムの各所に設定された障
害切り分は機能(障害発生時の障害原因判断機能)を障
害を検出したソフトウェア又はハードウェアが対応する
制御フラグをオン(ON)にすることによって起動する
こともできる。
以上本発明を実施例により説明したが、本発明は本発明
の主旨に従い種々の変形が可能であり、本発明からこれ
らを排除するものではない。
〔発明の効果〕
以上説明した様に、本発明によれば、プログラムに埋め
込まれた冗長部分は、通常処理や通常機器構成等の不必
要な場合に、ハードウェアによって自動的に実行過程か
らはずされるので、プログラム実行時間の短縮が可能と
なるという効果を奏する。
又、逆にオペレータの指示や、機器状態の変化等によっ
て、必要な冗長部分が自動的にその実行過程に取り込ま
れるという効果も奏し、デバッグ作業や障害調査等の効
率向上に有効である。
更に、プログラム開発過程で通常処理とそれ以外の処理
が明確に区別されるため、プログラム記述、保守作業を
容易にするという効果も奏する。
【図面の簡単な説明】
第1図は本発明の原理説明図、 第2図は本発明の一実施例構成図、 第3図は本発明の詳細な説明図、 第4図は本発明の他の実施例構成図である。 図中、l−・CPU (プロセッサ)、2−・−プログ
ラムメモリ、 la−・命令フェッチ部、 1b−・−命令実行部、  ′ 10−プログラムカウンタ、 11−・・命令フェッチレジスタ、 12・−・制御フラグ格納部、 13−・−・実行制御部。

Claims (1)

  1. 【特許請求の範囲】 命令フェッチ部(1a)のプログラムカウンタ(10)
    によってプログラムメモリ(2)の命令コードを命令フ
    ェッチレジスタ(11)に読み出した後、命令実行部(
    1b)に与えて当該命令コードの実行を行う命令実行制
    御方式において、当該命令コード中に当該命令が冗長命
    令であるか否かを表示する冗長表示ビットを設けるとと
    もに、 該命令フェッチ部(1a)に、冗長命令を実行するか否
    かを制御する制御フラグの格納部(12)と、 該命令フェッチレジスタ(11)に読み込まれた命令コ
    ードの冗長表示ビットと該制御フラグとから、該命令コ
    ードを該命令実行部(1b)に与えるか否かを制御する
    実行制御部(13)とを設けたことを 特徴とする命令実行制御方式。
JP10607487A 1987-04-28 1987-04-28 命令実行制御方式 Pending JPS63271530A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP10607487A JPS63271530A (ja) 1987-04-28 1987-04-28 命令実行制御方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP10607487A JPS63271530A (ja) 1987-04-28 1987-04-28 命令実行制御方式

Publications (1)

Publication Number Publication Date
JPS63271530A true JPS63271530A (ja) 1988-11-09

Family

ID=14424448

Family Applications (1)

Application Number Title Priority Date Filing Date
JP10607487A Pending JPS63271530A (ja) 1987-04-28 1987-04-28 命令実行制御方式

Country Status (1)

Country Link
JP (1) JPS63271530A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
SG122930A1 (en) * 2004-11-30 2006-06-29 Air Prod & Chem Method and apparatus fot utilizing a sequence interpreter approach to control logic of a programmable logic controller

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
SG122930A1 (en) * 2004-11-30 2006-06-29 Air Prod & Chem Method and apparatus fot utilizing a sequence interpreter approach to control logic of a programmable logic controller
US7272453B2 (en) 2004-11-30 2007-09-18 Air Products And Chemicals, Inc. Method and apparatus for utilizing a sequence interpreter approach to control logic of a programmable logic controller

Similar Documents

Publication Publication Date Title
US7334161B2 (en) Breakpoint logic unit, debug logic and breakpoint method for a data processing apparatus
US10795675B2 (en) Determine whether to fuse move prefix instruction and immediately following instruction independently of detecting identical destination registers
JPH0552968B2 (ja)
JP3707581B2 (ja) 自己整合スタック・ポインタを有するデータ処理システムおよびその方法
JP3705811B2 (ja) 再構成可能なプログラム状態語を有するマイクロコントローラ
JPS60159951A (ja) 情報処理装置におけるトレ−ス方式
US5287522A (en) External procedure invocation apparatus utilizing internal branch vector interrupts and vector address generation, in a RISC chip
JPS63271530A (ja) 命令実行制御方式
US20030110367A1 (en) External microcode
JP2006221606A (ja) データプロセッサ
US20030084272A1 (en) Handling problematic events in a data processing apparatus
US6289439B1 (en) Method, device and microprocessor for performing an XOR clear without executing an XOR instruction
JP3171615B2 (ja) データ転送のリトライ制御方式
JPH0259829A (ja) マイクロコンピュータ
JPS62144246A (ja) 計算機
JPS623341A (ja) 条件付制御方法
JPH02127731A (ja) 演算レジスタのバイパスチェック方式
JPH04359325A (ja) 集積回路マイクロプロセッサのレジスタ・トレース機構
JPH07191879A (ja) デバッグ用命令の実行機能を有するマイクロプロセッサおよびデバッグ方法
JPH04167146A (ja) 情報処理装置のアドレストレース方式
JPS6129022B2 (ja)
JPH0752402B2 (ja) データ処理装置
JPH03168845A (ja) 命令実行制御方式
JPH07262009A (ja) パイプライン処理コンピュータ装置
JPH03225433A (ja) シングルチップマイクロコンピュータ