JPS61290540A - 情報処理装置 - Google Patents

情報処理装置

Info

Publication number
JPS61290540A
JPS61290540A JP13328885A JP13328885A JPS61290540A JP S61290540 A JPS61290540 A JP S61290540A JP 13328885 A JP13328885 A JP 13328885A JP 13328885 A JP13328885 A JP 13328885A JP S61290540 A JPS61290540 A JP S61290540A
Authority
JP
Japan
Prior art keywords
instruction
operand
flag register
flag
processing
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
JP13328885A
Other languages
English (en)
Inventor
Koichi Kimura
光一 木村
Toshihiko Ogura
敏彦 小倉
Hiroaki Aotsu
青津 広明
Kiichiro Urabe
喜一郎 占部
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 JP13328885A priority Critical patent/JPS61290540A/ja
Publication of JPS61290540A publication Critical patent/JPS61290540A/ja
Pending legal-status Critical Current

Links

Abstract

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

Description

【発明の詳細な説明】 〔発明の利用分野3 本発明はマイクロプロセッサ等の情報処理装置に係り、
特にタスク間のリンケージに好適なハードウェアアーキ
テクチャに関する。
〔発明の背景〕
一般に、マイクロプロセッサ、その他の情報処理装置に
おける処理実行を行うためのソフトウェア構造は1例え
ば第8図の如く3つのレベル0゜1.2から成る構造を
とる。第8図において1MAINはレベル0に属して主
に各処理タスクの起動を管理するメインルーチン、T1
〜Tnはレベル1に属して各処理機能単位の構造をとる
タスク。
5UBl−8UB、はレベル2に属して各タスクT1〜
T11が共通に起動する共通サブルーチンである。以下
では、タスクをT2〜T4とする。
レベル0.1間のリンケージ或いはレベル1゜2間のリ
ンゲージは第9図、第10図の如く行われる。すなわち
、第9図において、LFはリンケージフラグ、T□FL
G−T4FLGは各タスクT、〜T4に対応して、この
対応した各タスクT□〜T4の何れかを起動要求するた
めのフラグである。また、第10図において、Mlはフ
ラグTIFLGの値の110によってタスクTユ実行要
求の有/無を判定する処理ステップ、Ml g Ml 
1M4はステップM1と同様に、フラグT2FLG。
T、FLG、T4FLGの値の170によってタスクT
、、T、、T、の起動判定する処理ステップである。な
お、第10図では、タスクT1〜T4の起動判定の優先
順位を固定として場合を示している。
この様に、メインルーチンMAINにおける各タスクT
、〜T4の起動判定は、各タスクT1〜T4での処理の
実行結果等の状態によって次のタスクを決定する。すな
わち、例えばレベル0とレベル1とのリンケージは、各
タスクTl−T4がその処理状態或いは結果に応じて実
行要求すべきタスク(T1〜T4)に対応するフラグ(
TIFLG−T4FLG)の何れかをセットする。一方
、メインルーチンMAINは、これらの各フラグ(T、
FLG−T、FLG)を参照/判定し1次に実行するタ
スクを選択してリンクする。同様に。
レベル1とレベル2の間のリンケージも、フラグ等を用
いて行うことができる。
以下では、上記したリンケージ方法を、マイクロプロセ
ッサを用いて行う場合について述べる。
マイクロプロセッサには1通常、演算専用のフラグレジ
スタは用意されているが、ユーザ開放のフラグレジスタ
は存在しないため、従来は、第9図の如きフラグ(T、
FLG−T、FLG)のあるリンケージフラグ部LFは
外部メモリ(RAM)上に配置する方法をとっている。
第11図はかNるハードウェア構成を示したものであり
、マイクロプロセッサ(CPU)10はバス40を通し
てプログラム格納用メモリ(ROM)20やデータメモ
リ(RAM)30と接続され、そのRAM 30上にリ
ンケージフラグ部LFが配置されることを示している。
第12図は、外部メモリ(RAM)上に配置されたフラ
グをセットする場合、°従来のマイクロプロセッサ等の
処理装置で必要とする処理ステップを示したものである
。第12図において、Slは外部メモリ(RAM)上に
配置されているフラグのメモリアドレスを算出するため
の実効アドレス導出ステップ、S2はフラグヘセットす
るためのデータを一旦アキュムレータ等の内部レジスタ
へ準備するデータ準備ステップ、S3はリンケージフラ
グLFにデータをセットするライトステップである。
また、第13図、第10図で示したステップM1をマイ
クロプロセッサを用いた場合の実際を処理を示したもの
であり、Ulは外部メモリ上に配置されているリンケー
ジフラグLFのメモリアドレスを算出するための実効ア
ドレス導出ステップ、U2はリンケージフラグLFの内
容を内部レジスタにセットするためのリードステップ、
U3はリンケージフラグLF(内部レジスタ)の内容を
内部の演算用フラグレジスタに反映するための演算ステ
ップ、U4は演算用フラグレジスタの内容によって間接
的に外部メモリ上のリンケージフラグLFの内容を判定
するための条件ジャンプステップである。
すなわち、従来のマイクロプロセッサ等の処理装置では
、ユーザが任意にアクセスできるビット対応のフラグレ
ジスタ相当のハードウェアが存在しないため、リンケー
ジフラグを外部メモリ上に配置し、リンケージには、必
ず外部メモリをアクセスしていた。この場合1次のよう
な欠点が生じる。
(a)外部メモリアクセスのためのアドレス計算、或い
は前述した様に間接的なフラグ判定のための演算ステッ
プ等の、リンケージフラグ判定に直接必要ない処理が追
加されるため、処理ステップが増加し、処理スピードが
遅くなり、オーバヘッドが大きくなる。
(b)個別アドレスを持つフラグをアクセスするため、
メモリ管理及びそれに付随したRAS機能が必要となる
ため、管理処理が複雑になる。
(c)通常リンケージフラグ等は1ビット単位で管理す
れば良いが、現在のマイクロプロセッサ等の処理装置は
バイト或いはワード単位でメモリアクセスを行うため、
メモリの使用効率が悪くなる。
(d)一方、マルチプロセッサ構成を考えると、同一パ
ス上のメモリを複数のプロセッサがアクセスを行うため
に、バスの効率が低下し、オーバヘッドが更に大きくな
る。
(、)メモリースピードによって処理スピードが左右さ
れる。
なお、従来のマイクロプロセッサにおける関連の内容に
ついては1例えば(株)インテルジャパン発行のrIA
PX  286 入門J  (1982:資料番号98
00640J)に記述されている。
また、特開昭55−88140号公報には、演算結果或
いは外部メモリデータ及び内部ワークレジスタ等をワー
ド単位にアクセス/ラッチし2分岐テストする場合にの
み、マルチプレクサを介してビットのテストを行うこと
が開示されているが、リンケージフラグの内部レジスタ
の使用については配慮されていない。
〔発明の目的〕
本発明の目的は、タスク間のリンケージ処理を簡素化す
る情報処理装置を提供することにある。
〔発明の概要〕
本発明は、従来からのある専用の演算用フラグレジスタ
とは個別に、ユーザがビット単位で任意にアクセス可能
なレジスタ(汎用フラグレジスタ)をプロセッサ内に新
た設ける。この汎用フラグレジスタの増設に伴って、従
来からある条件ジャンプ命令と同様に汎用フラグレジス
タの内容をビット対応に判定して分岐する命令、及び汎
用フラグレジスタをビット単位で任意にアクセス可能な
命令を付加する。これにより、外部メモリを用いたリン
ケージ方法をとる場合の問題が解消する。
〔発明の実施例〕
第1図は本発明の一実施例のハードウェア構成を示した
ものであり、第11図の従来例と比べ、マイクロプロセ
ッサ等の処理装置が従来から持つ専用演算用フラグレジ
スタとは別に、汎用フラグレジスタLFGRをプロセッ
サ10内に設けた点が相違している。ROM20には所
定プログラムが格納される。
第2図は汎用フラグレジスタLFGRの構成例で、ユー
ザが任意にビット単位でアクセスできる。
第3図は汎用フラグレジスタLFGRをユーザがビット
単位で任意にセットするために新たに設けた命令である
。その構造は、オプコード部とオペランド部とから成り
、オプコードのSTFはセ ゛ット・フラグを示し、オ
ペランドはセットするビット位i!nを示す、動作とし
ては、処理SIの如く例えばオペランドn = 4とし
た場合には、汎用フラグレジスタLFGRの24ビット
位II(F4)に゛1″をセット(ライト)する。
第4図は汎用フラグレジスタLFGRをユーザがビット
単位で任意にクリアするために新たに設けた命令である
。その構造は上記STF命令と同様に、オプコードとオ
ペランド部とから成り、オプコードのCLFはクリア・
フラグを示し、オペランドはクリアするビット位置nを
示す0本CLF命令の動作は1例えば、処理C2の如く
オペランドn=4と指定すると、汎用フラグレジスタし
FORの24ビット位置(F4)をクリア(0をライト
)する。
第5図は汎用フラグレジスタLFGRの任意のビット位
置の値(Ilo)によって分岐するための新たに設けた
命令である。その構造は、オプコード部と第1オペラン
ド部及び第2オペランド部から成り、オブコードは条件
ジャンプ・フラグJF、第1オペランドは参照すべきビ
ット位置n。
第2オペランドは分岐先アドレスADHを示す。
本JF命令の動作は、処理JIIでは、第1オペランド
部で示されたビット位置の値を参照し、その値がzl 
OIIであれば処理JI2を実行し、値が1″の時には
処理JI3を実行する。処理JI2では、次の命令への
移行処理を行う、また、処理JI3は、第2オペランド
で示された分岐先アドレスADHの命令への分岐処理を
行う。
即ち1本発明では、ユーザ開放の汎用フラグレジスタL
FGRをプロセッサ上に設け、更にそれに付随する新た
な命令を付加したことを特徴としている。以下では、こ
れらを用いた従来と同様のフラグリンケージを行う場合
を説明する。
第6図は、第8図で示した各タスクT t ’= T 
bにおいて該当する汎用フラグレジスタLFGRのnビ
ット位置に′1″をセットする処理v1である。
また、第7図は、第10図で示したメインルーチンMA
INのステップMlを本発明を用いて実現した場合を示
しており、分岐先アドレスA D Rt−!例えばニー
ではタスクT□の先頭アドレス、どなる。
この様に、本発明を用いれば、フラグリンケージ処理を
行うための処理ステップは全て1命令で容易に実現でき
ることが分かる。
また、一般にタスク管理制御を行うための制御情報とな
るリンケージフラグは、そのリード誤りが重大な影響を
与える。従って、外部メモリ上にリンケージフラグを置
いた場合には、例えばパリティエラー監視等を行って、
エラー発生時にはりトライ制御等の複雑なエラーリカバ
リ処理が必要となる。しかし、本発明では上述した様に
、リンケージフラグを内部レジスタに持つため、かへる
複雑なりトライ制御処理が不要となる。
なお1本実施例では示していないが、タスク間のリンケ
ージばかりでなく、タスク内部における状態管理として
も容易に実現、利用できる。
〔発明の効果〕
以上の説明から明らかな如く1本発明によれば、以下の
ような効果が期待される。
(1)外部メモリをアクセスしないため、メモリアドレ
ス管理が不要となり、管理プログラムが簡、素化される
と共に、メモリバスの負荷が軽減される。
(2)メモリの違いによって処理スピードが左右される
ことがない。
(3)内部レジスタを用いるため、処理スピードが速く
、従ってオーバヘッドが最小となる。
(4)レジスタはビット単位で任意にアクセス可能なユ
ーザ開放としているため1例えば管理のためのソフトウ
ェア(命令)体系として、システム/ユーザと区別可能
であり、その体系が整備される等のソフトウェア(命令
)体系が強力なものとなる。
(5)バスエラー等の監視が不要となり、従ってリトラ
イ制御等の処理が不要となる。
【図面の簡単な説明】
第1図は本発明の一実施例のハードウェア構成を示す図
、第2図は本発明による汎用フラグレジスタの構成例を
示す図、第3図乃至第5図は本発明で導入した命令の一
例を示す図、第6図及び第7図は本発明によるフラグリ
ンケージの処理ステップを示す図、第8図は一般的ソフ
トウェア構造を示す図、第9図は従来のリンケージフラ
グを示す図、第10図は従来のフラグリンケージの処理
ステップを示す図、第11図は従来のハードウェア構成
を示す図、第12図及び第13図は従来のリンケージフ
ラグのセット及び判定の処理ステップを示す図である。 10・・・プロセッサ、 20・・・プログラムメモリ
、30・・・データメモリ、   LEGR・・・汎用
フラグレジスタ。 第1図 纂5図 第6図    第7図 第S図

Claims (2)

    【特許請求の範囲】
  1. (1)少なくとも命令制御機能、演算実行機能、外部メ
    モリとのインタフェース機能とを備え、且つプログラミ
    ング可能な情報処理装置において、通常の演算専用フラ
    グレジスタとは別に、ユーザに開放された任意ビット長
    から構成する任意の数の汎用フラグレジスタを内部に設
    け、該汎用フラグレジスタ部をビット単位或いは任意の
    ビット長単位で任意にアクセスできるようにしたことを
    特徴とする情報処理装置。
  2. (2)特許請求の範囲第1項記載の情報処理装置におい
    て、前記汎用フラグレジスタのアクセス制御用命令とし
    て、ビット単位、或いは任意のビット長単位に、任意デ
    ータとの比較判定を行い、その判定結果により分岐する
    命令を設けたことを特徴とする情報処理装置。
JP13328885A 1985-06-19 1985-06-19 情報処理装置 Pending JPS61290540A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP13328885A JPS61290540A (ja) 1985-06-19 1985-06-19 情報処理装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP13328885A JPS61290540A (ja) 1985-06-19 1985-06-19 情報処理装置

Publications (1)

Publication Number Publication Date
JPS61290540A true JPS61290540A (ja) 1986-12-20

Family

ID=15101141

Family Applications (1)

Application Number Title Priority Date Filing Date
JP13328885A Pending JPS61290540A (ja) 1985-06-19 1985-06-19 情報処理装置

Country Status (1)

Country Link
JP (1) JPS61290540A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63156571A (ja) * 1986-12-19 1988-06-29 Toyota Motor Corp 自動車上塗り塗装方法

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63156571A (ja) * 1986-12-19 1988-06-29 Toyota Motor Corp 自動車上塗り塗装方法

Similar Documents

Publication Publication Date Title
US4975836A (en) Virtual computer system
US5517651A (en) Method and apparatus for loading a segment register in a microprocessor capable of operating in multiple modes
US6233599B1 (en) Apparatus and method for retrofitting multi-threaded operations on a computer by partitioning and overlapping registers
US7334161B2 (en) Breakpoint logic unit, debug logic and breakpoint method for a data processing apparatus
EP0130467B1 (en) Efficient trace method adaptable to multiprocessors
US8812792B2 (en) Technique for using memory attributes
US4206503A (en) Multiple length address formation in a microprogrammed data processing system
US4074353A (en) Trap mechanism for a data processing system
US4679140A (en) Data processor with control of the significant bit lengths of general purpose registers
EP0726526A2 (en) Method and system for enhanced system management operation in a data processing system
US20060036824A1 (en) Managing the updating of storage keys
JPS6258341A (ja) 入出力割込処理方式
US8205032B2 (en) Virtual machine control structure identification decoder
EP0523758B1 (en) A method and apparatus for coordinating execution of an instruction by a coprocessor
US4991083A (en) Method and system for extending address space for vector processing
US4821231A (en) Method and apparatus for selectively evaluating an effective address for a coprocessor
JPH0810437B2 (ja) 仮想計算機システムのゲスト実行制御方式
JP3170472B2 (ja) レジスタ・リマップ構造を有する情報処理システム及び方法
JPS61290540A (ja) 情報処理装置
EP0156307A2 (en) Pipelined processor having dual cache memories
US5822607A (en) Method for fast validation checking for code and data segment descriptor loads
JPH1049373A (ja) パイプライン・デジタル・プロセッサにおいて多重で高精度の事象を操作する方法と装置
CN113885943A (zh) 处理单元、片上***、计算装置及方法
JPH0192843A (ja) データ処理装置
JP2562838B2 (ja) プロセッサ及びストアバッファ制御方法