JP5194360B2 - 情報処理装置およびその制御方法 - Google Patents

情報処理装置およびその制御方法 Download PDF

Info

Publication number
JP5194360B2
JP5194360B2 JP2005357922A JP2005357922A JP5194360B2 JP 5194360 B2 JP5194360 B2 JP 5194360B2 JP 2005357922 A JP2005357922 A JP 2005357922A JP 2005357922 A JP2005357922 A JP 2005357922A JP 5194360 B2 JP5194360 B2 JP 5194360B2
Authority
JP
Japan
Prior art keywords
instruction
processor
operation mode
notification
bit
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 - Fee Related
Application number
JP2005357922A
Other languages
English (en)
Other versions
JP2007164354A (ja
Inventor
浩一 高山
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.)
NEC Corp
Original Assignee
NEC Corp
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 NEC Corp filed Critical NEC Corp
Priority to JP2005357922A priority Critical patent/JP5194360B2/ja
Publication of JP2007164354A publication Critical patent/JP2007164354A/ja
Application granted granted Critical
Publication of JP5194360B2 publication Critical patent/JP5194360B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Advance Control (AREA)
  • Executing Machine-Instructions (AREA)
  • Debugging And Monitoring (AREA)

Description

本発明は、情報処理装置に係り、特にプロセッサの動作モードを動的に変更可能な制御に関する。
従来使用されている情報処理装置においては、一般的に処理に適した動作モードを複数備えており、必要に応じてこの動作モードの中から適切な動作モードを選択して、動作させている。
このような情報処理装置では、従来オペレーションシステム、ユーザプロセスが動作した状態において、ハードウェア的に実現したハードウェア動作モードを動的に変更することは行っていなかった。
この理由は、情報処理装置内の動作状態によっては動的に動作モードを変更したときに誤動作を生じる可能性があったためである。
また、動的に情報処理装置の動作モードを変更することが困難であったため、ハードウェアの動作モード変更時には、一旦情報処理装置を動作させているオペレーションシステムをシャットダウンし、情報処理装置全体の運用を停止した上でハードウェアの動作モードを変更していた。
また、ソフトウェア的に動作モードの変更を行う場合は、オペレーションシステムが実行中のプロセスの状況を監視し、タスク間に割り込みを入れ、ハードウェアモードの変更ルーチンを挿入するなどの処理が必要であった。このため、特にマルチプロセッサで動作するような大規模なプログラム実行中において、ソフトウェア的に動作モードの変更を行うことは影響が非常に大きかった。
このような情報処理装置の従来例として、スイッチを切り替えるかシステムリセットが発生することにより、外部インタフェイスを介してアドレス発生部の内容に従ってデータ発生部の内容を動作モードに設定するレジスタ設定方式が開示されている(特許文献1参照)。
また、2つ以上の動作モードで動的に切り換えてそれぞれの動作モード上でアプリケーションを動作させる情報処理装置において、動作モードの切り換えを意識しないデバイスドライバや常駐プログラムを正常動作させる情報処理装置が開示されている(特許文献2参照)。
特開平11−098213号公報 特開平06−236286号公報
このように、従来の情報処理装置のシステムにおけるハードウェアの動作モード変更時には、システム動作中にハードウェアレベルの動作モードを誤動作することなくダイナミックに変更することができないため、システムを停止しハードウェアの再初期化をしないと動作モードを変更することができないという問題があった。
また、ソフトウェア的に動作モードの変更を行う場合は、複雑なプロセッサの動作状態をソフトウェア側で全て把握することが不可能なため、ハードウェアの動作モード変更タイミングをソフトウェア的に容易に生成することができないという問題があった。
そこで本発明の目的は、運用上システムの停止が困難なコンピュータシステムにおいてもシステム動作を継続したまま誤動作することなく確実にハードウェアの動作モードを変更することのできる情報処理装置を提供することにある。
上記目的を達成するために、本発明の情報処理装置は、
与えられた命令列にしたがって各種演算処理を行うプロセッサを有し、該プロセッサの動作状態を規定する動作モードを複数有する情報処理装置であって、
該情報処理装置は、
前記プロセッサの前記動作状態を監視するコンソールと、
コンソールから前記動作モード変更要求を受信し、前記プロセッサに前記動作モードの変更を指示する命令管理部と、
命令をデコードし、前記プロセッサへの命令の発行を制御する発行制御部と、
を有するものであって、
前記情報処理装置の動作モードを変更するために、
前記コンソールは、前記プロセッサの前記動作状態に応じて前記動作モードを変更する動作モード変更要求を出力し、
前記発行制御部は、
前記命令列に、先行して実行している命令の完了を待ってから処理することを必要とする命令であるインオーダ処理命令をデコードした場合に、該インオーダ処理命令の発行を停止し、停止中である旨を発行待機通知として前記命令管理部に出力し、
前記プロセッサは、
該インオーダ処理命令に先行する命令の処理が完了した時点で命令完了通知を前記命令管理部に出力し、
前記命令管理部は、
前記発行待機通知が出力された後に、前記命令完了通知が出力されると前記動作モードの変更を指示した後に、待機終了通知を前記発行制御部へ出力し、
前記発行制御部は、
前記待機終了通知を受け付けると前記インオーダ処理命令の発行を行う。
この場合、前記コンソールから前記動作モード変更要求が出力されたときに、前記動作モード変更要求に応じてモード変更通知として前記命令管理部に出力する診断プロセッサをさらに備え、
前記命令管理部は、
前記命令完了通知を前記プロセッサから受信したときにセットされるEビットと、前記発行待機通知を前記発行制御部から受信したときにセットされるIビットと、前記モード変更通知を前記診断プロセッサから受信したときにセットされるCビットとからなる状態レジスタをさらに備え、
前記命令列が前記プロセッサで実行されているときは前記Eビットをリセットし、
前記命令管理部が前記待機終了通知を出力したときに前記Iビットをリセットし、
前記プロセッサへの前記動作モードの変更の指示が完了したときに前記Cビットをリセットするものとしてもよい
また、前記命令管理部は、前記Eビットおよび前記Iビットならびに前記Cビットのおのおののセットまたはリセットの状態を前記プロセッサの命令実行の状態を示す動作ステータスとして前記発行制御部に通知するものとしてもよい
また、前記モード変更通知に応じて前記命令管理部から前記診断プロセッサに出される前記動作モードの変更開始指示によって、前記診断プロセッサによる書き換え可能で、前記動作モードに対応した動作モードレジスタをさらに備え、
前記命令管理部は、前記モード変更通知を受けて前記Cビットがセットされたときに、前記Eビットがセットされ、前記Iビットがリセットされる場合には、前記動作モードレジスタを前記診断プロセッサを介して書き換えることで前記動作モードの変更を指示するものとしてもよい
本発明による情報処理装置の制御方法は、
与えられた命令列にしたがって各種演算処理を行うプロセッサを有し、該プロセッサの動作モードを複数有する情報処理装置の制御方法であって、
該情報処理装置は、
前記プロセッサの前記動作状態を監視するコンソールと、
コンソールから前記動作モード変更要求を受信し、前記プロセッサに前記動作モードの変更を指示する命令管理部と、
命令をデコードし、前記プロセッサへの命令の発行を制御する発行制御部と、
を有するものであって、
前記情報処理装置の動作モードを変更するために、
前記コンソールは、前記プロセッサの前記動作状態に応じて前記動作モードを変更する動作モード変更要求を出力し、
前記発行制御部は、
前記命令列に、先行して実行している命令の完了を待ってから処理することを必要とする命令であるインオーダ処理命令をデコードした場合に、該インオーダ処理命令の発行を停止し、停止中である旨を発行待機通知として前記命令管理部に出力し、
前記プロセッサは、
該インオーダ処理命令に先行する命令の処理が完了した時点で命令完了通知を前記命令管理部に出力し、
前記命令管理部は、
前記発行待機通知が出力された後に、前記命令完了通知が出力されると前記動作モードの変更を指示した後に、待機終了通知を前記発行制御部へ出力し、
前記発行制御部は、
前記待機終了通知を受け付けた後に前記インオーダ処理命令の発行を行う。
本情報処理装置は、与えられた命令列にしたがって各種演算処理を行うプロセッサにおける仕掛中の命令の有無および動作モード変更要求の有無を命令管理部が認識して、コンソールから動作モード変更要求があったときに、プロセッサで仕掛中の命令がないハードウェアの状態であるタイミングを見計らって、動作モードの変更を行う。
このため本情報処理装置は、命令列に基づいた命令が発行制御部からプロセッサに発行され、プロセッサでこの命令列に基づいた命令にしたがった各種演算処理が仕掛かっていることを発行制御部からの命令発行通知で認識し、またプロセッサが命令列にしたがった処理を完了したことをプロセッサからの命令完了通知で認識する命令管理部を備えている。
命令管理部は、診断プロセッサからモード変更通知を受信すると、さらにこの命令完了通知を受信することで、プロセッサが動作モードの変更を受け付ける状態にあることが分かり、この状態にあるプロセッサに対して動作モードの変更を指示する。
このようにして本情報処理装置のシステム稼働を停止させることなくシステム稼働中に動作モードの変更を行うことが可能であり、情報処理装置の運用上に支障が生じない。
本発明によれば、システム動作を継続したままハードウェアの動作モードを変更することのできる情報処理装置を得られる。
本発明を実施するための形態について図面を参照して詳細に説明する。
図1は、本実施形態の情報処理装置の構成例を示すブロック図である。
図示したように、情報処理装置は、あらかじめ与えられた命令列S1よりデコードされた制御命令S11にしたがって四則演算、論理演算などの各種演算処理を行い、現在処理を行っている演算処理が終了した場合には命令完了通知S3を出力するプロセッサ100を有する機能処理部200と、命令列S1など情報処理装置に必要な情報を記憶する主記憶部340と、主記憶部340の動作を制御するためのメモリ制御部345と、情報処理装置と接続された図示しない各種周辺機器との入出力を制御する入出力制御部350と、コンソール600から動作モード変更要求S2があったときにモード状態通知S4の1つであるモード変更通知として出力し、また情報処理装置の立ち上げ時の初期化処理および障害発生時の障害処理制御を行う診断プロセッサ390と、プロセッサ100の動作状態を監視し、プロセッサ100の動作状態に応じ動作モードの変更を要求する動作モード変更要求S2を診断プロセッサ390に出力するコンソール600とを備えて構成される。
機能処理部200は、命令列S1が所定の処理を行うインオーダ前置命令とこのインオーダ前置命令による処理が必要となるインオーダ処理命令とが含まれるときに、インオーダ前置命令の処理が完了するまでインオーダ処理命令の発行を停止し、これらの状態を示す発行状態通知S5の1つであり発行の停止の旨を示す発行待機通知を出力する発行制御部160と、発行制御部160からの制御命令S11を受信して各種演算処理などの処理を行うプロセッサ100と、コンソール600から動作モード変更要求S2が出力されると命令完了通知S3が出力された後にプロセッサ100に動作モードの変更を指示する命令管理部170と、各動作モードに対応した動作モードレジスタ1800を備えた動作モードレジスタ群180とを備えて構成される。
本情報処理装置は、プロセッサ100のハードウェア動作状態を規定する動作モードを複数有しており、コンソール600からの動作モード変更要求S2によって、動作モードレジスタ群180に指定される最適な動作モードによりプロセッサ100などが各種の演算処理などの処理を行うことができる。
モード状態通知S4は、診断プロセッサ390における状態を命令管理部170に対して示す通知であり、このモード状態通知S4はコンソール600から動作モード変更要求S2を受信していることを示すモード変更通知と、コンソール600などの要求によりプロセッサ100の動作モードの変更指示を出しこの変更の指示が完了したことを示す動作モード変更終了通知とからなり、必要に応じてモード状態通知S4の対応するモード変更通知または動作モード変更終了通知が命令管理部170に出力される。
発行状態通知S5は、発行制御部160における状態を命令管理部170に対して示す通知であり、この通知はインオーダ処理命令の発行を停止していることを示す発行待機通知と、プロセッサ100などに制御命令S11およびインオーダ処理命令を発行したことを示す命令発行通知とからなり、必要に応じて発行状態通知S5の対応する通知が命令管理部170に出力される。
プロセッサ100は、演算処理を行う演算処理装置110と、機能処理部200内のステータス制御動作を行う内部制御命令処理部120と、主記憶部340とのメモリアクセス制御を行ったり、入出力のI/O(Input/Output)アクセス制御を行う外部制御命令処理部130とを備えて構成される。
プロセッサ100は発行制御部160に接続されており、発行制御部160は命令管理部170に接続されており、命令管理部170は動作モードレジスタ群180に接続されており、動作モードレジスタ群180は診断プロセッサ390に接続されており、診断プロセッサ390はコンソール600に接続されており、プロセッサ100は命令管理部170に接続されており、命令管理部170は診断プロセッサ390に接続されており、動作モードレジスタ群180はメモリ制御部345に接続されており、メモリ制御部345は主記憶部340に接続されており、主記憶部340は発行制御部160に接続されており、動作モードレジスタ群180は入出力制御部350に接続されており、プロセッサ100は動作モードレジスタ群180に接続されている。
なお、説明した構成および接続は、本発明に関連した必要部分を述べたもので、従来技術の構成等についての説明は省略する。
発行制御部160は、機能処理部200内に設けられており、主記憶部340から出力される命令列S1を解読して、命令列S1に対応し機能処理部200などで実行する種々の制御命令S11としてプロセッサ100などの各構成部位へ発行する命令発行の機能を有し、またこの制御命令S11の発行を制御する発行制御機能を有する。
命令管理部170は、機能処理部200内部で実行されている種々の制御命令S11の実行状態を管理し、機能処理部200内部の命令実行の状態を示す動作ステータスS6を発行制御部160に対して通知する機能を有する。
命令管理部170は、制御命令S11にしたがったプロセッサ100の各種演算処理が終了した旨を命令完了通知S3としてプロセッサ100から受信することで、機能処理部200内で実行中の制御命令S11の実行状態を監視する。
命令管理部170は、発行状態通知S5の1つである発行待機通知を受信し、命令完了通知S3を受信したときに、その旨を動作ステータスS6の1つである待機終了通知として発行制御部160へ出力する。
動作モードレジスタ群180は、診断プロセッサ390からのモード指定通知S7による制御によって動的に書き換え、変更が可能なレジスタであり、情報処理装置内の機能処理部200などの各機能処理部位においてハードウェア的に実装した複数の動作モード(動作方式)の中から任意の1つの動作方式を決定する。
このために動作モードレジスタ群180は、モード変更通知に応じて命令管理部170から診断プロセッサ390に出される動作モードの変更開始指示S9によって、診断プロセッサ390による書き換えが可能で、動作モードに対応した動作モードレジスタ1800を備えている。
そして動作モードレジスタ群180は、プロセッサ100、メモリ制御部345および入出力制御部350などに対してモード変更指示S8により動作モードの変更を行う機能を有する。
プロセッサ100は、発行制御部160から出力された実行すべき制御命令S11を受け取り、それぞれ演算処理装置110、内部制御命令処理部120、外部制御命令処理部130ごとに処理を行う。
演算処理装置110は、一般的にALU(Arithmetic and Logic Unit:算術演算ユニット)と称される演算装置などに代表される情報処理ユニットであり、加算/乗算などの四則演算や論理演算などの算術的な処理を行なう機能を有する。
演算処理装置110は、このような演算を行なう回路のほかに、この回路で行われた演算の演算結果などを一時的に保管するアキュムレータや、演算結果の正負や桁上がりなどの状態情報を保持するフラグレジスタなどが設けられていることも多い。
内部制御命令処理部120は、機能処理部200内のステータス制御動作を行う機能を有する。
外部制御命令処理部130は、主記憶部340とのメモリアクセス制御を行ったり、入出力のI/Oアクセス制御を行う機能を有する
診断プロセッサ390は、機能処理部200をはじめとした各構成部位をなすLSI(Large Scale Integration:大規模集積回路)とのインタフェイスを備え、ハードウェア起動時の初期化処理や障害発生時の障害処理を制御する機能を有する。
主記憶部340は、一時的な記憶を行い要求に応じて高速にアクセス可能なレジスタであり、制御命令S11で直接記憶されている位置を指定して読み書きできる機能を有する。
メモリ制御部345は、主記憶部340に記憶された記憶内容を読み、また主記憶部340に書き込んで記憶させる際の制御を行う機能を有する。
入出力制御部350は、本情報処理装置と接続される図示しない入出力端末、表示装置、印字装置など各種周辺機器との入出力を制御する機能を有する。
次に、本実施形態の情報処理装置の動作について、図1〜図4を参照して詳細に説明する。
主記憶部340に記憶されており機能処理部200で実行するための命令列S1が、メモリ制御部345の制御により、主記憶部340から機能処理部200の発行制御部160に出力される。
この機能処理部200内で実行するための命令列S1を受信した発行制御部160は、受信した命令列S1の各命令をデコードし、デコードした結果得られた命令の内容を示す制御命令S11をプロセッサ100などに対して発行し、同時にプロセッサ100などに制御命令S11を発行したことを命令発行通知として命令管理部170に通知する。
発行制御部160から出力された制御命令S11を受信したプロセッサ100の構成部位である演算処理装置110、内部制御命令処理部120および外部制御命令処理部130は、それぞれこの制御命令S11に基づいた動作指示にしたがって、処理を開始する。
演算処理装置110は、受信した制御命令S11にしたがって、加算、乗算などの四則演算や、論理演算などの各種演算処理を行い、演算結果を出力する。
内部制御命令処理部120は、機能処理部200内のステータスを得て、この得たステータスに応じた機能処理部200内のステータス制御動作を行う。
外部制御命令処理部130は、機能処理部200内外とのメモリアクセス制御やI/Oアクセス制御を行う。
プロセッサ100の構成部位である演算処理装置110、内部制御命令処理部120および外部制御命令処理部130は、発行制御部160から受信した制御命令S11にしたがいおのおのの処理の実行を完了する。
プロセッサ100は、これらの制御命令S11の処理が完了すると、完了したことを命令完了通知S3として命令管理部170へ通知する。
命令管理部170は、発行制御部160から通知される命令発行通知と、プロセッサ100から通知される命令完了通知S3とを受け、この命令発行通知と命令完了通知S3との対応により、機能処理部200内で仕掛中の制御命令S11があるか否かを監視する。
命令管理部170は、機能処理部200内で仕掛中の制御命令S11があるか否かが分かると、これを命令管理部170に設けた状態レジスタに記憶する。
また、発行制御部160は、先行して実行している制御命令S11の完了を待ってから処理することを必要とするインオーダ処理命令をデコードすると、このインオーダ処理命令に先行して実行しているインオーダ前置命令の処理が完了するまで後続の制御命令S11の発行を停止し、インオーダ前置命令が仕掛かっておりインオーダ処理命令発行待ちの状態にあることを示す発行待機通知として命令管理部170へ通知する。
このインオーダ処理命令の発行待ちの状態は、プロセッサ100がインオーダ前置命令の処理を終えて、プロセッサ100の仕掛中の処理がなくなったことをプロセッサ100が命令管理部170に命令完了通知S3として通知すると、発行待ちの解除が可能な状態となる。
命令管理部170は、プロセッサ100から命令完了通知S3として受け取ると、後続の命令発行待ちが解除できることを動作ステータスS6の1つである待機終了通知として発行制御部160に通知する。
ただし、このとき診断プロセッサ390からモード状態通知S4の1つであるモード変更通知があるときは、プロセッサ100がインオーダ前置命令の処理を終えた後、診断プロセッサ390からの指示により動作モードレジスタ群180の変更を完了させてから、命令管理部170は診断プロセッサ390からのモード状態通知S4の1つである動作モード変更終了通知に基づいて命令発行待ちが解除できることを待機終了通知として発行制御部160に通知するとよい。
診断プロセッサ390は、プロセッサ100などの各機能部からの割込みを受信した際に障害処理の実行制御を行うほか、ハードウェア的に備えた動作モードの変更を要求する動作モード変更要求S2をコンソール600などから受け付けると、この変更要求に応じて命令管理部170へモード状態通知S4の1つであるモード変更通知として送信する。
命令管理部170は、発行状態通知S5の発行待機通知と、モード状態通知S4のモード変更通知とを受け取ると、これらの通知にしたがい、機能処理部200内の状態を命令管理部170に設けた状態レジスタに記憶する。
この命令管理部170の構成例を、図2に示す。
図示したように、命令管理部170は、通知を受けた状態を示す状態レジスタ171を備えており、この状態レジスタ171は、命令発行通知および命令完了通知S3の受信に対応し仕掛中の制御命令S11(図1参照)の有無を示すEビット172と、インオーダ処理命令発行待ちであるか否かを示すIビット173と、診断プロセッサ390からのモード状態通知S4の1つであるモード変更通知に対応したCビット174の3ビットの状態フラグによる構成となっている。
この状態レジスタ171の状態フラグEビット172、Iビット173およびCビット174の各々の論理値の定義を、図3に示す。
図示したように、左方から状態フラグの種別を示す欄、各状態フラグの論理値の欄、論理値に対応したプロセッサの状態(動作ステータス)および通知の有無を示す欄から構成されている。
Eビット172は、発行制御部160から命令発行通知を受けたときに論理値「0」にリセットされ、この論理値「0」が示されていることにより、プロセッサ100が制御命令S11(図1参照)の仕掛実行中であることを表している。
Eビット172は、プロセッサ100から命令完了通知S3を受けたときに論理値「1」にセットされ、この論理値「1」が示されていることにより、プロセッサ100が制御命令S11の実行を完了したか、仕掛中の処理がないことを表している。
また、命令管理部170の仕掛中の制御命令S11があるか否かを監視は、発行制御部160からの命令発行通知とプロセッサ100からの命令完了通知S3を照合し、この照合によって機能処理部200で仕掛中の制御命令S11があると判定した場合に、Eビット172を論理値「0」にリセットし、仕掛中の制御命令S11がなくなったと判定した場合に、Eビット172を論理値「1」にセットすることでもよい。
Iビット173は、発行制御部160から発行待機通知を受けたときに論理値「1」にセットされ、この論理値「1」が示されていることによりプロセッサ100がインオーダ前置命令の仕掛中であることを表している。
また、Iビット173は、この論理値「1」が示されていることにより、発行制御部160はこのインオーダ前置命令に後続するインオーダ処理命令の発行待ち状態となっていることを表している。
Iビット173は、命令管理部170から発行制御部160に動作ステータスS6の1つである待機終了通知を出力したときに論理値「0」にリセットされ、論理値「0」にリセットされているときにはプロセッサ100において仕掛中のインオーダ前置命令がないかインオーダ前置命令の実行が完了しており、発行制御部160はインオーダ処理命令の発行待ち状態ではないことを表している。
なお、インオーダ前置命令の処理は終了したが、何らかの理由で発行制御部160において後続のインオーダ処理命令の発行待ちが継続しているときには、Iビット173は論理値「1」にセットされたままとなる。この後、発行制御部160のインオーダ処理命令の発行待ちが解除されたときに待機終了通知が出力され、Iビット173は論理値「0」にリセットされる。
また、インオーダ前置命令の仕掛中であるときには、プロセッサ100がこのインオーダ前置命令の実行中であることから、状態レジスタ171は、説明したようにIビット173が論理値「1」にセットされるほか、当然Eビット172もこのインオーダ前置命令の実行中であることから制御命令S11の仕掛実行中を示す論理値「0」にリセットされる。
このときも、プロセッサ100から出力される命令完了通知S3によって、Eビット172は論理値「1」にセットされる。
Cビット174は、診断プロセッサ390からモード状態通知S4の1つであるモード変更通知を受けたときに論理値「1」にセットされ、この論理値「1」が示されていることにより、診断プロセッサ390がコンソール600からハードウェアの動作モード変更要求S2を受けていることを表しており、論理値「0」にリセットされているときにはコンソール600でハードウェアの動作モード変更要求S2がないか、動作モードの変更の指示が完了しモード状態通知S4の1つである動作モード変更終了通知を命令管理部170で受けていることを表している。
このように発行制御部160は、主記憶部340から取り込んだ命令列S1をデコードし、この命令列S1にインオーダ処理命令が含まれていると認識すると命令管理部170に発行待機通知を通知して、この発行待機通知を受けたことにより命令管理部170は、命令管理部170内に備えた状態レジスタ171のIビット173に論理値「1」をセットする。
また、診断プロセッサ390が動作モード変更要求S2を受け付けると、診断プロセッサ390はモード状態通知S4の1つであるモード変更通知を命令管理部170内に出力し、命令管理部170は、このモード変更通知を受けたことにより命令管理部170内に備えた状態レジスタ171のCビット174に論理値「1」をセットする。
このように定義された3ビットの状態フラグによって、機能処理部200の状態および通知の有無を示すことができる。
命令管理部170は、待機終了通知の他、必要に応じてこれらEビットおよびIビットならびにCビットのおのおののセットまたはリセットの状態を発行制御部160に命令実行の動作ステータスS6として通知する。
命令管理部170の3ビットの状態フラグの示した状態によって、プロセッサ100は以下の通りの動作ステータスとなっている。
図4に、3ビットの状態フラグ171とプロセッサ100の動作ステータスを示す。
図示したように、図の1行目には左方からCビット174の欄、Iビット173の欄、Eビット172の欄があり、その右方に対応するプロセッサ100の動作ステータスを示す欄がある。
図の2行目のCビット174の論理値「0」は、モード状態通知S4の1つであるモード変更通知がないことを示し、Iビット173の論理値「0」は、インオーダ処理命令の発行待ちがないことを示し、Eビット172の論理値「0」は、プロセッサ100に仕掛中の制御命令S11があることを示しており、プロセッサ100の動作ステータスを示す欄から制御命令S11の仕掛実行中のステータスであることが分かる。
同様に図の3行目のCビット174の論理値「0」は、モード変更通知がないことを示し、Iビット173の論理値「0」は、インオーダ処理命令の発行待ちがないことを示し、Eビット172の論理値「1」は、プロセッサ100に仕掛中の制御命令S11がないことを示しており、制御命令S11の仕掛なしのステータスであることが分かる。
図の4行目のCビット174の論理値「0」は、モード変更通知がないことを示し、Iビット173の論理値「1」は、インオーダ処理命令の発行待ちであることを示し、Eビット172の論理値「0」は、プロセッサ100に仕掛中の制御命令S11があることを示しており、制御命令S11の仕掛完了待ちのステータスであることが分かる。
図の5行目のCビット174の論理値「0」は、モード変更通知がないことを示し、Iビット173の論理値「1」は、インオーダ処理命令の発行待ちであることを示し、Eビット172の論理値「1」は、プロセッサ100に仕掛中の制御命令S11がないことを示しており、インオーダ処理命令処理開始のステータスであることが分かる。
図の6行目のCビット174の論理値「1」は、モード変更通知があることを示し、Iビット173の論理値「0」は、インオーダ処理命令の発行待ちがないことを示し、Eビット172の論理値「0」は、プロセッサ100に仕掛中の制御命令S11があることを示しており、制御命令S11の仕掛完了待ちのステータスであることが分かる。
同様に図の7行目のCビット174の論理値「1」は、モード変更通知があることを示し、Iビット173の論理値「0」は、インオーダ処理命令の発行待ちがないことを示し、Eビット172の論理値「1」は、プロセッサ100に仕掛中の制御命令S11がないことを示しており、動作モード変更開始のステータスであることが分かる。
図の8行目のCビット174の論理値「1」は、モード変更通知があることを示し、Iビット173の論理値「1」は、インオーダ処理命令の発行待ちであることを示し、Eビット172の論理値「0」は、プロセッサ100に仕掛中の制御命令S11があることを示しており、制御命令S11の仕掛完了待ちのステータスであることが分かる。
図の9行目のCビット174の論理値「1」は、モード変更通知があることを示し、Iビット173の論理値「1」は、インオーダ処理命令の発行待ちであることを示し、Eビット172の論理値「1」は、プロセッサ100に仕掛中の制御命令S11がないことを示しており、インオーダ処理命令発行待ちのステータスであることが分かる。
初期状態ではモード状態通知S4の1つであるモード変更通知がないとすると、ここまで説明した状態レジスタ171の示す状態によって、既に説明した発行制御部160が各命令をデコードし、デコードした結果得られた制御命令S11によりプロセッサ100がこれらの制御命令S11に基づいた動作指示にしたがって処理をしているときには、Cビットが論理値「0」に設定され、Iビットが論理値「0」に設定され、Eビットが論理値「0」に設定されている。
この状態は、既に説明した図4の2行目に示す制御命令S11の仕掛実行中のステータスである。
次に発行制御部160は、主記憶部340から出力された命令列S1に含まれたインオーダ処理命令をデコードすると、デコードした後、既にプロセッサ100で実行中の制御命令S11が完了することを待っているインオーダ処理命令発行待ち状態となる。
このとき発行制御部160は、命令管理部170に対してインオーダ処理命令の発行待ちであることを発行待機通知として命令管理部170へ通知し、命令管理部170はIビット173を論理値「1」にセットする。
この結果この状態は、既に説明した図4の4行目に示す仕掛制御命令完了待ちのステータスにある。
次に命令管理部170は、プロセッサ100で仕掛中の制御命令S11が実行が完了して仕掛中の制御命令S11がなくなるのをプロセッサ100からの命令完了通知S3により確認すると、Eビット172を点灯して論理値「1」にセットする。
この状態は、既に説明した図4の5行目に示すインオーダ処理命令開始のステータスである。
このとき、Cビット174が点灯していない論理値「0」である場合は、命令管理部170は発行制御部160に対して一時停止していたインオーダ処理命令発行の再開を待機終了通知を出力して発行制御部160に指示すると同時に、状態レジスタ171のIビット173およびEビット172をリセットして共に論理値「0」にする。
この状態は、既に説明した図4の2行目に示す制御命令S11の仕掛実行中のステータスである。
さらに診断プロセッサ390は、コンソール600などから動作モード変更要求S2を受け付けると、命令管理部170にモード変更通知を通知する。診断プロセッサ390からモード変更通知を受け取った命令管理部170は、この診断プロセッサ390からのモード変更通知によって、Cビット174を論理値「1」にセットする。
この状態は、既に説明した図4の6行目に示す制御命令S11の仕掛完了待ちのステータスである。
命令管理部170は、診断プロセッサ390からモード変更通知を受けてCビット174がセットされたときに、Eビット172がセットされ、Iビット173がリセットされると、動作モードレジスタ群180の指定された動作モードレジスタ1809を診断プロセッサ390を介して書き換えることでプロセッサ100に動作モードの変更を指示する。
すなわち命令管理部170は、プロセッサ100から命令完了通知S3を受け取ることにより実行する制御命令S11がなくなるのを確認すると、Eビット172を点灯(論理値「1」にセット)し、Cビット174が論理値「1」にセットされている場合は、動作モードレジスタ群180の変更を行うために診断プロセッサ390に対して変更開始指示S9を通知する。
この状態は、既に説明した図4の7行目に示す動作モード変更開始のステータスである。
診断プロセッサ390は、命令管理部170から変更開始指示S9を受信すると、診断プロセッサ390から出力されたモード指定通知S7にしたがって動作モードレジスタ群180の指定された動作モードレジスタ1809を変更する。
この動作モードレジスタ1809が変更されたことにより、この動作モードレジスタ1809の状態はプロセッサ100、メモリ制御部345および入出力制御部350などにモード変更指示S8として通知され、プロセッサ100、メモリ制御部345および入出力制御部350などの動作モードがダイナミックに変更される。
診断プロセッサ390は、変更開始指示S9による動作モードレジスタ1809の変更が完了すると、命令管理部170へモード状態通知S4の1つである動作モード変更終了通知を送信する。
命令管理部170は、診断プロセッサ390からモード状態通知S4の1つである動作モード変更終了通知を受信すると、Eビット172、Iビット173およびCビット174をリセットして各々論理値「0」とし、発行制御部160へ後続の制御命令S11発行の開始を通知する。
この状態は、既に説明した図4の2行目に示す制御命令S11の仕掛実行中のステータスである。
Cビット174とIビット173がともに論理値「1」を点灯していた場合すなわち図4の8行目に示す制御命令S11の仕掛完了待ちまたは図4の9行目に示すインオーダ処理命令発行待ちのステータスの場合には、上述の動作モード変更処理を実行した後、Eビット172、Iビット173およびCビット174をリセットして各々論理値「0」とし、発行制御部160へデコードされた後続の制御命令S11発行の開始を指示する待機終了通知を出力する。
この状態も、既に説明した図4の2行目に示す制御命令S11の仕掛実行中のステータスである。
以上説明したような動作モードレジスタ群180、動作モードレジスタ1800は、機能処理部200ばかりでなく一般的にメモリ制御部345および入出力制御部350などの構成部位にも備えられており、これらの構成部位に備えられた動作モードレジスタも機能処理部200の動作モードレジスタ1800の変更のタイミングと同時に変更が実施されるとよい。
このように、本情報処理装置は、情報処理装置のシステム運用を継続したまま、システムの運用に支障をきたすことなく、複数のハードウェア動作モードを備えたプロセッサなどの情報処理装置内の各部におけるハードウェア動作モードをダイナミックに変更することのできる機能を有している。
以上説明したように、本発明においては、以下に記載するような効果を奏する。
(1)本情報処理装置は、システム運用中にハードウェア的に静的な状態を生成しシステムの動作モードを変更可能としているので、システムの運用を停止することなくダイナミックにいつでも変更できる。
(2)本情報処理装置は、ソフトウェアに依存せず、ハードウェアで変更機能を実現しているので、ほとんど性能低下することなく動作モードの変更が実施できる。
(3)本情報処理装置は、一般的なほとんどのプロセッサ、機能処理部が実装している機能を拡張することで実現しているので、最小のハードウェア量増加で実現できることである。
(4)本情報処理装置は、プロセッサでいかなる制御命令の実行中においても、ハードウェアの動作モードを安全に変更するタイミングをハードウェア的に生成し、ハードウェアの動作モードレジスタ群を変更可能とする。このため、本情報処理装置のシステム運用中でオペレーションシステムやユーザプロセスが動作中においてもソフトウェアの動作ステータスを意識することなく動的にハードウェア動作モードの変更が可能となる。
本実施形態の情報処理装置の構成例を示すブロック図である。 本実施形態の情報処理装置の命令管理部の構成例を示すブロック図である。 命令管理部のCビット、Iビット、Eビットの論理値の定義を示した説明図である。 命令管理部のCビット、Iビット、Eビットの設定状態およびプロセッサの動作ステータスを示す図である。
符号の説明
100 プロセッサ
110 演算処理装置
120 内部制御命令処理部
130 外部制御命令処理部
160 発行制御部
170 命令管理部
171 状態レジスタ
172 Eビット
173 Iビット
174 Cビット
180 動作モードレジスタ群
200 機能処理部
340 主記憶部
345 メモリ制御部
350 入出力制御部
390 診断プロセッサ
600 コンソール
1800 動作モードレジスタ
1809 指定された動作モードレジスタ
S1 命令列
S2 動作モード変更要求
S3 命令完了通知
S4 モード状態通知
S5 発行状態通知
S6 動作ステータス
S7 モード指定通知
S8 モード変更指示
S9 変更開始指示
S11 制御命令

Claims (5)

  1. 与えられた命令列にしたがって各種演算処理を行うプロセッサを有し、該プロセッサの動作状態を規定する動作モードを複数有する情報処理装置であって、
    該情報処理装置は、
    前記プロセッサの前記動作状態を監視するコンソールと、
    コンソールから前記動作モード変更要求を受信し、前記プロセッサに前記動作モードの変更を指示する命令管理部と、
    命令をデコードし、前記プロセッサへの命令の発行を制御する発行制御部と、
    を有するものであって、
    前記情報処理装置の動作モードを変更するために、
    前記コンソールは、前記プロセッサの前記動作状態に応じて前記動作モードを変更する動作モード変更要求を出力し、
    前記発行制御部は、
    前記命令列に、先行して実行している命令の完了を待ってから処理することを必要とする命令であるインオーダ処理命令をデコードした場合に、該インオーダ処理命令の発行を停止し、停止中である旨を発行待機通知として前記命令管理部に出力し、
    前記プロセッサは、
    該インオーダ処理命令に先行する命令の処理が完了した時点で命令完了通知を前記命令管理部に出力し、
    前記命令管理部は、
    前記発行待機通知が出力された後に、前記命令完了通知が出力されると前記動作モードの変更を指示した後に、待機終了通知を前記発行制御部へ出力し、
    前記発行制御部は、
    前記待機終了通知を受け付けると前記インオーダ処理命令の発行を行う
    情報処理装置。
  2. 請求項1記載の情報処理装置において、
    前記コンソールから前記動作モード変更要求が出力されたときに、前記動作モード変更要求に応じてモード変更通知として前記命令管理部に出力する診断プロセッサをさらに備え、
    前記命令管理部は、
    前記命令完了通知を前記プロセッサから受信したときにセットされるEビットと、前記発行待機通知を前記発行制御部から受信したときにセットされるIビットと、前記モード変更通知を前記診断プロセッサから受信したときにセットされるCビットとからなる状態レジスタをさらに備え、
    前記命令列が前記プロセッサで実行されているときは前記Eビットをリセットし、
    前記命令管理部が前記待機終了通知を出力したときに前記Iビットをリセットし、
    前記プロセッサへの前記動作モードの変更の指示が完了したときに前記Cビットをリセットする情報処理装置。
  3. 請求項2に記載の情報処理装置において、
    前記命令管理部は、前記Eビットおよび前記Iビットならびに前記Cビットのおのおののセットまたはリセットの状態を前記プロセッサの命令実行の状態を示す動作ステータスとして前記発行制御部に通知する情報処理装置。
  4. 請求項3に記載の情報処理装置において、
    前記モード変更通知に応じて前記命令管理部から前記診断プロセッサに出される前記動作モードの変更開始指示によって、前記診断プロセッサによる書き換えが可能で、前記動作モードに対応した動作モードレジスタをさらに備え、
    前記命令管理部は、前記モード変更通知を受けて前記Cビットがセットされたときに、前記Eビットがセットされ、前記Iビットがリセットされる場合には、前記動作モードレジスタを前記診断プロセッサを介して書き換えることで前記動作モードの変更を指示する情報処理装置。
  5. 与えられた命令列にしたがって各種演算処理を行うプロセッサを有し、該プロセッサの動作モードを複数有する情報処理装置の制御方法であって、
    該情報処理装置は、
    前記プロセッサの前記動作状態を監視するコンソールと、
    コンソールから前記動作モード変更要求を受信し、前記プロセッサに前記動作モードの変更を指示する命令管理部と、
    命令をデコードし、前記プロセッサへの命令の発行を制御する発行制御部と、
    を有するものであって、
    前記情報処理装置の動作モードを変更するために、
    前記コンソールは、前記プロセッサの前記動作状態に応じて前記動作モードを変更する動作モード変更要求を出力し、
    前記発行制御部は、
    前記命令列に、先行して実行している命令の完了を待ってから処理することを必要とする命令であるインオーダ処理命令をデコードした場合に、該インオーダ処理命令の発行を停止し、停止中である旨を発行待機通知として前記命令管理部に出力し、
    前記プロセッサは、
    該インオーダ処理命令に先行する命令の処理が完了した時点で命令完了通知を前記命令管理部に出力し、
    前記命令管理部は、
    前記発行待機通知が出力された後に、前記命令完了通知が出力されると前記動作モードの変更を指示した後に、待機終了通知を前記発行制御部へ出力し、
    前記発行制御部は、
    前記待機終了通知を受け付けた後に前記インオーダ処理命令の発行を行う
    情報処理装置の制御方法。
JP2005357922A 2005-12-12 2005-12-12 情報処理装置およびその制御方法 Expired - Fee Related JP5194360B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2005357922A JP5194360B2 (ja) 2005-12-12 2005-12-12 情報処理装置およびその制御方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005357922A JP5194360B2 (ja) 2005-12-12 2005-12-12 情報処理装置およびその制御方法

Publications (2)

Publication Number Publication Date
JP2007164354A JP2007164354A (ja) 2007-06-28
JP5194360B2 true JP5194360B2 (ja) 2013-05-08

Family

ID=38247192

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005357922A Expired - Fee Related JP5194360B2 (ja) 2005-12-12 2005-12-12 情報処理装置およびその制御方法

Country Status (1)

Country Link
JP (1) JP5194360B2 (ja)

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01291327A (ja) * 1988-05-18 1989-11-22 Hitachi Ltd 処理モード先取り制御方式
JPH09274567A (ja) * 1996-04-08 1997-10-21 Hitachi Ltd プログラムの実行制御方法及びそのためのプロセッサ
US6321329B1 (en) * 1999-05-19 2001-11-20 Arm Limited Executing debug instructions
JP4078507B2 (ja) * 2000-11-27 2008-04-23 オムロン株式会社 ビジュアル検査装置の設定データ調整方法

Also Published As

Publication number Publication date
JP2007164354A (ja) 2007-06-28

Similar Documents

Publication Publication Date Title
WO2009157178A1 (ja) 仮想計算機制御装置、仮想計算機制御プログラム及び仮想計算機制御回路
JP5776688B2 (ja) 情報処理装置及びタスク切り替え方法
CN109933451B (zh) 一种基于risc-v架构的异常和中断处理系统及方法
US20060075158A1 (en) Information processing apparatus and data transfer control method
JP2005050208A (ja) マルチタスクシステムにおけるメモリ管理方式およびタスク制御装置
JP2875842B2 (ja) プログラマブルコントローラ
JP2013225208A (ja) 情報処理装置、情報処理方法、及びプログラム
JP4837247B2 (ja) プロセッサ
WO2009098737A1 (ja) 外部デバイスアクセス装置、その制御方法及びシステムlsi
JP5194360B2 (ja) 情報処理装置およびその制御方法
JP3900499B2 (ja) 再構成可能な、命令レベルのハードウェアによる高速化のためにマイクロプロセッサとともにfpgaテクノロジを使用する方法および装置
JP5644380B2 (ja) 情報処理装置
JP2007172096A (ja) 情報処理装置、および、その起動制御方法
JP2004348327A (ja) デジタル信号処理装置及びデジタル信号処理方法
JPH064417A (ja) メモリのバッテリバックアップ制御方式
JP4647276B2 (ja) 半導体回路装置
JP2009116445A (ja) 複数本のシーケンスプログラムを並列して実行可能なプログラマブルコントローラ
JP3127737B2 (ja) ディジタル信号処理装置
JP2008225710A (ja) コンピュータシステム及び該システムで用いられるプロセス切替え方法
JP2007316986A (ja) システムlsi
JP2009271597A (ja) プロセッサ
JP3139310B2 (ja) ディジタル信号処理装置
JP3168845B2 (ja) ディジタル信号処理装置
JP4535663B2 (ja) ステートマシン制御方式およびステートマシン
EP1104899A2 (en) Data processing apparatus and method of controlling the same

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20081112

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20110127

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120207

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120409

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20121023

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20121211

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20130108

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130121

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20160215

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 5194360

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees