JPH07105170A - 入出力装置の選択方式 - Google Patents

入出力装置の選択方式

Info

Publication number
JPH07105170A
JPH07105170A JP5247665A JP24766593A JPH07105170A JP H07105170 A JPH07105170 A JP H07105170A JP 5247665 A JP5247665 A JP 5247665A JP 24766593 A JP24766593 A JP 24766593A JP H07105170 A JPH07105170 A JP H07105170A
Authority
JP
Japan
Prior art keywords
output
input
signal
flip
flop
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.)
Withdrawn
Application number
JP5247665A
Other languages
English (en)
Inventor
Kei Tokunaga
系 徳永
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 IC Microcomputer Systems Co Ltd
Original Assignee
NEC IC Microcomputer Systems 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 NEC IC Microcomputer Systems Co Ltd filed Critical NEC IC Microcomputer Systems Co Ltd
Priority to JP5247665A priority Critical patent/JPH07105170A/ja
Publication of JPH07105170A publication Critical patent/JPH07105170A/ja
Withdrawn legal-status Critical Current

Links

Landscapes

  • Microcomputers (AREA)

Abstract

(57)【要約】 (修正有) 【目的】システム専用入出力装置の選択の許可を不可能
にするとともにシステム専用入出力装置をアクセスする
ためのオーバー・ヘッドによる性能低下を排除する。 【構成】所定のプロセッサに対応して入出力装置に割り
当てられた番号とアドレスとの合致を検出するデコーダ
1と、アドレス信号が所定の範囲内にあるか否かを検出
するデコーダ2と、命令のフエッチを検出するフエッチ
検出回路3と、パルス信号111をクロックとして、デ
コーダ2より出力される信号109を一時的に記憶する
Dフリップフロップ4と、出力装置の選択を行い出力許
可信号106を出力するAND回路5と入力許可信号1
05を出力するAND回路6と、出力許可信号106を
介してデータ・バス107上のデータを保持し信号10
8を出力するDフリップフロップ7と、入力許可信号1
05を介してデータ・バス107上に信号108を出力
するスリー・ステート・バッファ8とを備える。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は入出力装置の選択方式に
関し、特にプロセッサから出力されるアドレス信号によ
り選択される入出力装置の選択方式に関する。
【0002】
【従来の技術】一般にコンピュータ・システムは、CP
Uと記憶装置と入出力装置により構成されており、これ
らの相互間の接続においては、アドレス信号、制御信号
およびデータ信号等を伝達するバス接続が用いられるこ
とが多い。このバスに接続される記憶装置と入出力装置
は、CPUより出力されるアドレス信号によって区別さ
れている。このような入出力装置の選択方式に関する技
術文献としては、「入出力制御とシステム構成」(田丸
啓、、松本吉弘、浪本敬二共著:昭和60年7月30
日、第1版第2刷、オーム社発行)が挙げられる。上記
文献の10頁に示されるように、一般的な入出力装置の
選択方式においては、プロセッサから出力されるアドレ
ス信号をデコードし、目的の入出力装置に割り当てられ
ている番号との合致が検出された場合に入出力装置の選
択が行われる。
【0003】コンピュータ・システムの構成要素の一つ
であるCPUとしては、通常LSIチップにより形成さ
れるマイクロ・プロセッサが用いられることが多い。L
SIチップは、年々その集積度を増してきており、マイ
クロ・プロセッサにおいては、そのチップ上に記憶装置
および入出力装置の一部または全てを取り込むことによ
り、コンピュータ・システム全体の部品点数が削減さ
れ、当該コンピュータ・システムの低価格化ならびに信
頼性向上が実現されている。
【0004】また、コンピュータ・システムの開発にお
いては、過去のシステムのために開発されたハードウェ
ア資産またはソフトウェア資産を継承する必要性から、
過去のシステムとの互換性を保持することが重要であ
る。過去のシステムとの互換性を保持するためには、C
PUの命令セット、記憶装置の構成および入出力装置の
構成等を変更することは許されないポイントである。他
方において、システムを構築する際に、マイクロプロセ
ッサと組み合わされる周辺デバイスの種類および性能等
は多種多様であり、その選択は可能である。しかしなが
ら、これらの多種多様な周辺デバイスごとに専用のマイ
クロプロセッサを用意することは、マイクロ・プロセッ
サの標準化を阻害し、価格を引き上げることに繋がるこ
とになり問題である。
【0005】そこで、このような多種多様の周辺デバイ
スに対応するために、コンピュータ・システムに合わせ
て機能の選択を行うことができるように、マイクロプロ
セッサを設計することが多い。このように、システムに
に合わせて機能の選択を行う一つの方法は、機能選択を
行うためのレジスタを設けることである。この機能選択
のためのレジスタは、入出力装置の一つとしてCPUに
接続され、システム・プログラム中に存在する入出力命
令を実行することにより設定される。システム・プログ
ラムとは、電源投入後のハードウェアの初期化および基
本入出力処理等のハードウェアに密着した処理を行うプ
ログラムのことであり、記憶装置の一部であるROMに
格納されることが多い。システム・プログラム以外のプ
ログラムはアプリケーション・プログラムと呼ばれる。
【0006】しかしながら、システム専用の入出力装置
を新設すると、全ての入出力装置が全てのプログラム中
の入出力命令によりアクセスが可能であるために、アプ
リケーション・プログラムから見た入出力空間の構成
が、過去の構成と異なってしまうという問題がある。こ
のような問題点を解決する一つ方法として、以下に示さ
れるリング保護が用いられる。
【0007】上記のリング保護については、「計算機ア
ーキテクチャ」(斎藤忠夫、発田弘、大盛健児共著、オ
ーム社)において説明されているように、入出力命令や
割り込みの制御命令などの特権命令が誤って使われると
システムが決定的な損害を受けるため、これらの特権命
令を含めた全ての命令を使うことのできる特権モード
と、当該特権命令以外の命令を使うことのできる非特権
モードとを含むモード制御が行われる。制御プログラム
(オペレーティング・システム)は特権モードで実行さ
れるが、ユーザ・プログラムは非特権モードで実行され
る。もし、ユーザ・プログラムが特権命令を実行しよう
とすると誤りとして検出される。このモード制御方式の
考え方を拡張して、より多数のモードを許すようにした
のが、リング保護である。
【0008】このリング保護を用いる場合には、ユーザ
・プログラムが、特権命令である入出力命令を実行しよ
うとしたことが検出されると、システム・プログラムに
制御が移行される。システム・プログラムにおいては、
ユーザ・プログラムが、入出力命令によりアクセスしよ
うにとした入出力装置が、ユーザ・プログラムに開放さ
れたものであるか否かが判断される。もしも開放された
入出力装置であると判断された場合には、システム・プ
ログラムが、ユーザ・プログラムに代って当該入出力装
置に対するアクセスを行い、その後ユーザ・プログラム
に制御が戻される。逆に、開放されていない入出力装置
であると判断される場合には、システム・プログラムに
おいては何もすることはなく、制御はユーザ・プログラ
ムに戻される。
【0009】近年、32ビットのマイクロプロセッサに
は、上述のリング保護機能を採りいれたものが多く、こ
のような32ビット・マイクロプロセッサを用いてシス
テムを構築すれば、ユーザ・プログラム中からの入出力
装置に対するアクセスは、全てシステム・プログラムに
より管理されることになり、新設されたシステム専用の
入出力装置を、アプリケーション・プログラムからは操
作不能とすることができ、ユーザ・プログラムから見た
入出力空間の構成を、過去の構成と同じにすることが可
能になる。しかしながら、ユーザ・プログラムによる入
出力命令の実行を行うごとに、システム・プログラムの
介入が発生するために、リング保護機能を用いない場合
に比較して性能が低下する結果となる、更に、リング保
護機能を採用した32ビット・マイクロプロセッサは、
一般に高価であるという問題がある。
【0010】また、他の従来例としては、システム専用
の入出力装置の選択の許可/禁止を行う出力装置を新た
に設けて、アプリケーション・プログラムからの新設さ
れたシステム専用の入出力装置に対する不用意なアクセ
スの禁止を行う方法がある。この方法による場合には、
リング保護機能を持ち合わせていない安価なプロセッサ
を用いてシステムを構築することが可能である。
【0011】図7は、従来のアドレス選択方式における
入出力装置のブロック図である。図7に示されるよう
に、本従来例における選択回路は、システム専用出力装
置として作用するDフリップフロップ20と、システム
専用入力装置として作用するスリー・ステート・バッフ
ァ21と、システム専用入出力装置の選択を許可/禁止
するための出力装置として作用するDフリップフロップ
24と、システム専用出力装置として作用するDフリッ
プフロップ20と、システム専用入力装置として作用す
るスリー・ステート・バッファ21に対して、等しく割
り当てられている番号とアドレスの合致を検出するデコ
ーダ17と、出力装置として作用するDフリップフロッ
プ24に割り当てられている番号とアドレスの合致を検
出するデコーダ22と、システム専用出力装置として作
用するDフリップフロップ20の選択を行うAND回路
18と、システム専用入力装置として作用するスリー・
ステート・バッファ21の選択を行うAND回路19
と、出力装置として作用するDフリップフロップ24の
選択を行うAND回路23とを備えて構成される。
【0012】また、図8(a)、(b)、(c)、
(d)、(e)、(f)、(g)、(h)および(i)
と、図9(a)、(b)、(c)、(d)、(e)、
(f)、(g)、(h)、(i)および(j)は、本従
来例における各信号のタイミング図であり、図8は、シ
ステム専用出力装置としてのDフリップフロップ20に
対する出力動作に対応するタイミング図であり、また図
9は、システム専用出力装置のDフリップフロップ20
からの入力動作に対応するタイミング図である。以下、
図7、図8および図9を参照して、従来例の動作につい
て説明する。
【0013】最初に、プロセッサからの出力装置に対す
る出力動作について考えるものとする。まず、プロセッ
サより出力装置のDフリップフロップ24に割り当てら
れた番号がアドレス信号701として出力され、デコー
ダ22に入力される。デコーダ22においては、当該ア
ドレス信号701が、出力装置のDフリップフロップ2
4に割り当てられた番号と合致したことが検出され、信
号709としてハイ・レベルの信号が出力されてAND
回路23に入力される。次に、前記プロセッサからは出
力対象のデータがデータ・バス707に供給されるとと
もに、出力制御信号704としてハイ・レベルのパルス
信号が出力されて、AND回路23に入力される。信号
709がハイ・レベルであるため、AND回路23より
出力される出力許可信号710としては、出力制御信号
704のパルス信号がそのまま出力されて、出力装置の
Dフリップフロップ24に入力される。これにより、出
力許可信号710のパルス信号によって、出力装置のD
フリップフロップ24にはデータ・バス707上のデー
タが保持され、信号711として出力される。
【0014】以上により、出力装置としてのDフリップ
フロップ24に対する出力動作は完了となる。プログラ
ムにより、この出力動作において、データ・バス707
に供給されるデータを設定することは可能であり、信号
711のレベルをハイ・レベルとロウ・レベルのどちら
にでも自由に設定することができる。
【0015】次に、Dフリップフロップ24より出力さ
れる信号711がハイ・レベルである時に、プロセッサ
よりシステム専用出力装置のDフリップフロップ20に
対する出力動作を行う場合を考える。まず、プロセッサ
よりシステム専用出力装置のDフリップフロップ20に
割り当てられた番号がアドレス信号701として出力さ
れ、デコーダ17に入力される。デコーダ17において
は、当該アドレス信号701が、システム専用出力装置
のDフリップフロップ20に割り当てられた番号と合致
したことが検出され、信号702としてハイ・レベルの
信号が出力されてAND回路18および19に入力され
る。次に、前記プロセッサからは出力対象のデータがデ
ータ・バス707に供給されるとともに、出力制御信号
704としてハイ・レベルのパルス信号が出力されて、
AND回路18に入力される。AND回路18に対して
は、Dフリップフロップ24より、上述の信号711も
入力されており、信号702および信号711がハイ・
レベルであるため、AND回路18より出力される出力
許可信号706としては、出力制御信号704のパルス
信号がそのまま出力されて、システム専用出力装置のD
フリップフロップ20に入力される。これにより、出力
許可信号706のパルス信号によって、システム専用出
力装置のDフリップフロップ20にはデータ・バス70
7上のデータが保持され、信号708として出力され
る。
【0016】以上により、信号711がハイ・レベルの
時における、システム専用出力装置としてのDフリップ
フロップ20に対する出力動作が完了する。
【0017】次に、Dフリップフロップ24より出力さ
れる信号711がロウ・レベルである時に、プロセッサ
よりシステム専用出力装置のDフリップフロップ20に
対する出力動作を行う場合を考える。まず、プロセッサ
よりシステム専用出力装置のDフリップフロップ20に
割り当てられた番号がアドレス信号701として出力さ
れ、デコーダ17に入力される。デコーダ17において
は、当該アドレス信号701が、システム専用出力装置
のDフリップフロップ20に割り当てられた番号と合致
したことが検出され、信号702としてハイ・レベルの
信号が出力されてAND回路18および19に入力され
る。次に、前記プロセッサからは出力対象のデータがデ
ータ・バス707に供給されるとともに、出力制御信号
704としてハイ・レベルのパルス信号が出力されて、
AND回路18に入力される。AND回路18に対して
は、Dフリップフロップ24より、上述の信号711も
入力されており、信号711がロウ・レベルであるた
め、AND回路18より出力される出力許可信号706
はゼロ・レベルのままである。これにより、システム専
用出力装置のDフリップフロップ20におけるデータ保
持内容は変化することがない。
【0018】以上により、信号711がロウレベルの時
における、システム専用出力装置としてのDフリップフ
ロップ20に対する出力動作が完了する。
【0019】次に、Dフリップフロップ24より出力さ
れる信号711がハイ・レベルである時に、プロセッサ
に対して、システム専用入力装置のスリー・ステート・
バッファ21から入力動作を行う場合を考える。まず、
プロセッサよりシステム専用入力装置のスリー・ステー
ト・バッファ21に割り当てられた番号がアドレス信号
701として出力され、デコーダ17に入力される。デ
コーダ17においては、当該アドレス信号701が、シ
ステム専用入力装置のスリー・ステート・バッファ21
に割り当てられた番号と合致したことが検出され、信号
702としてハイ・レベルの信号が出力されてAND回
路18および19に入力される。次に、前記プロセッサ
からは、入力制御信号703としてハイ・レベルのパル
ス信号が出力されて、AND回路19に入力される。A
ND回路19に対しては、Dフリップフロップ24よ
り、上述の信号711も入力されており、信号702が
ハイ・レベルであるため、AND回路19より出力され
る入力許可信号705としては、入力制御信号703の
パルス信号がそのまま出力されて、システム専用入力装
置のスリー・ステート・バッファ21のゲートに入力さ
れる。スリー・ステート・バッファ21においては、入
力許可信号705のパルスがハイ・レベルの期間、シス
テム専用入力装置として、Dフリップフロップ20より
出力されて入力される信号708が、データ・バス70
7に対して出力される。
【0020】以上により、信号711がハイ・レベルの
時における、システム専用入力装置としてのスリー・ス
テート・バッファ21からの入力動作が完了する。
【0021】次に、Dフリップフロップ24より出力さ
れる信号711がロウ・レベルである時に、プロセッサ
に対して、システム専用入力装置のスリー・ステート・
バッファ21から入力動作を行う場合を考える。まず、
プロセッサよりシステム専用入力装置のスリー・ステー
ト・バッファ21に割り当てられた番号がアドレス信号
701として出力され、デコーダ17に入力される。デ
コーダ17においては、当該アドレス信号701が、シ
ステム専用入力装置のスリー・ステート・バッファ21
に割り当てられた番号と合致したことが検出され、信号
702としてハイ・レベルの信号が出力されてAND回
路18および19に入力される。次に、前記プロセッサ
からは、入力制御信号703としてハイ・レベルのパル
ス信号が出力されて、AND回路19に入力される。A
ND回路19に対しては、Dフリップフロップ24よ
り、上述の信号711も入力されており、信号711が
ロウ・レベルであるため、AND回路19より出力され
る入力許可信号705はゼロ・レベルのままである。こ
れにより、システム専用入力装置のスリー・ステート・
バッファ21からは、データ・バス707に何も出力さ
れることがない。
【0022】以上により、信号711がロウ・レベルの
時における、システム専用入力装置としてのスリー・ス
テート・バッファ21からの入力動作が完了する。
【0023】システム・プログラムを介してシステム専
用出力装置(Dフリップフロップ20)およびシステム
専用入力装置(スリー・ステート・バッファ21)に対
するアクセスを行う場合には、前以て出力装置(Dフリ
ップフロップ24)を通して信号711をハイ・レベル
に設定しておく。信号711がハイ・レベルである期間
においては、通常の入出力装置と同様に、システム専用
出力装置(Dフリップフロップ20)およびシステム専
用入力装置(スリー・ステート・バッファ21)に対す
るアクセスが可能となる。
【0024】システム・プログラムを介して、システム
専用出力装置(Dフリップフロップ20)およびシステ
ム専用入力装置(スリー・ステート・バッファ21)に
対するアクセスが終了した場合には、出力装置(Dフリ
ップフロップ24)を通して信号511をロウ・レベル
に設定する。信号711をロウ・レベルである期間にお
いては、たとえアドレス信号と装置の番号が合致して
も、システム専用出力装置(Dフリップフロップ20)
およびシステム専用入力装置(スリー・ステート・バッ
ファ21)が選択されることはない。このことにより、
アプリケーション・プログラムによる不用意なシステム
専用入出力装置に対するアクセスが未然に防止される。
しかしながら、信号711がロウ・レベルの場合におい
ても、システム専用入出力装置の選択/禁止するための
出力装置(Dフリップフロップ24)に対するアクセス
は可能である。
【0025】
【発明が解決しようとする課題】上述した従来の入出力
装置の選択方式においては、リング保護機能を採用した
高価なマイクロプロセッサを用いなければ、アプリケー
ション・プログラムを介して、システム専用入出力装置
の選択を許可してしまうことが可能であり、これによ
り、コンピュータ・システムの信頼性が阻害されるとい
う欠点がある。
【0026】また、システム専用入出力装置に対するア
クセスの前後において、システム専用入出力装置を許可
/禁止するためのオーバーヘッドが発生し、コンピュー
タ・システムに対し性能低下をもたらすという欠点があ
る。
【0027】
【課題を解決するための手段】本発明の入出力装置の選
択方式は、プロセッサより出力されるアドレスによって
所定の入出力装置を選択する手段として、プロクラムに
よる命令のフエッチを検出するフエッチ検出手段と、前
記アドレスが、所定の範囲内にあることを検出して、当
該検出出力を真とする第1のデコード手段と、前記第1
のデコード手段の出力を、前記フエッチ検出手段の検出
出力を介して記憶する一時記憶手段と、選択の対象とす
る入出力装置に割り当てられた番号と前記アドレスとの
合致を検出して、当該検出出力を真とする第2のデコー
ド手段とを少なくとも備え、前記一時記憶手段の出力と
前記第2のデコード手段の出力とが共に真であることを
条件として、選択の対象とする入出力装置を選択するこ
とを特徴としている。
【0028】
【実施例】次に、本発明について図面を参照して説明す
る。
【0029】図1は本発明の第1の実施例における入出
力装置を示すブロック図である。図1に示されるよう
に、本実施例における入出力装置は、出力装置として作
用するDフリップフロップ7と、入力装置として作用す
るスリー・ステート・バッファ8と、命令のフエッチを
検出するフエッチ検出手段3と、一時記憶手段として作
用するDフリップフロップ4と、入出力装置に割り当て
られた番号とアドレスとの合致を検出するデコーダ1
と、アドレス信号が所定の範囲内にあるか否かを検出す
るデコーダ2と、出力装置の選択を行うAND回路5
と、入力装置の選択を行うAND回路6とを備えて構成
される。なお、上記において、デコーダ2において検出
の対象としている所定のアドレス範囲とは、システム・
プログラムが配置されているアドレス範囲を意味してい
る。
【0030】また、図2(a)、(b)、(c)、
(d)、(e)、(f)、(g)および(h)と、図3
(a)、(b)、(c)、(d)、(e)、(f)、
(g)および(h)は、本実施例における各信号のタイ
ミング図であり、図2は、出力装置としてのDフリップ
フロップ7に対する出力動作に対応するタイミング図で
あり、また図3は、入力装置としてのスリー・ステート
・バッファ8からの入力動作に対応するタイミング図で
ある。以下、図1、図2および図3を参照して、本実施
例の動作について説明する。
【0031】まず、命令フエッチ動作について考える。
最初に、プロセッサからは、出力命令のアドレスがアド
レス信号101として出力されて、デコーダ2に入力さ
れる。デコーダ2においては、当該アドレスが所定のア
ドレス範囲内にある場合にはハイ・レベルとなり、所定
のアドレス範囲外にある場合にはロウ・レベルとなる信
号109が出力されて、一時記憶手段として作用するD
フリップフロップ4に入力される。他方、プロセッサよ
りは、フエッチのバスサイクルであることを表わす情報
が、信号110として命令フエッチ検出回路3に入力さ
れており、命令フエッチ検出回路3においては、当該信
号110を入力して命令フエッチであることが検出さ
れ、ハイ・レベルのパルス信号111が出力されて、D
フリップフロップ4に入力される。Dフリップフロップ
4においては、当該パルス信号111をクロック信号と
して、デコーダ2より入力される信号109が格納さ
れ、信号112として出力される。以上の動作を介し
て、命令フエッチ動作は完了する。なお、この場合にお
いては、デコーダ2において検出される所定のアドレス
範囲が、システム・プログラムのアドレス範囲内である
ため、システム・プログラム中の命令フエッチ後には、
信号112はハイ・レベルとなる。逆に、システム・プ
ログラムのアドレス範囲外の命令フエッチ後において
は、信号112はロウ・レベルとなる。
【0032】次に、Dフリップフロップ4より出力され
る信号112がハイ・レベルの時に、出力装置としての
Dフリップフロップ7に対する出力動作を行う場合につ
いて考える。
【0033】まず、プロセッサより、出力装置としての
Dフリップフロップ7に割り当てられた番号がアドレス
信号101として出力されて、デコーダ1に入力され
る。デコーダ1においては、当該アドレスが、出力装置
としてのDフリップフロップ7に割り当てられた番号と
合致したことが検出され、信号102としてハイ・レベ
ルが出力されて、AND回路5および6に入力される。
他方、プロセッサよりは、出力すべきデータがデータ・
バス107に出力され、また、出力制御信号104とし
てハイ・レベルのパルス信号が出力されてAND回路5
に入力される。AND回路5に対しては、Dフリップフ
ロップ4よりハイ・レベルの信号112が入力されてお
り、デコーダ1より入力される信号102もハイ・レベ
ルであるため、AND回路5より出力される出力許可信
号106としては、出力制御信号104のパルス信号が
そのまま出力され、出力許可信号106として、出力装
置として作用するDフリップブロップ7に入力される。
Dフリップブロップ7においては、出力許可信号106
のパルスがハイ・レベルの期間、出力装置として作用
し、データ・バス107上のデータが保持されて、信号
108が出力される。
【0034】以上により、信号112がハイ・レベルの
時における、出力装置としてのDフリップフロップ7に
対する出力動作が完了する。
【0035】次に、Dフリップフロップ4より出力され
る信号112がロウ・レベルの時に、出力装置としての
Dフリップフロップ7に対する出力動作を行う場合につ
いて考える。
【0036】まず、プロセッサより、出力装置としての
Dフリップフロップ7に割り当てられた番号がアドレス
信号101として出力されて、デコーダ1に入力され
る。デコーダ1においては、当該アドレスが、出力装置
としてのDフリップフロップ7に割り当てられた番号と
合致したことが検出され、信号102としてハイ・レベ
ルが出力されて、AND回路5および6に入力される。
他方、プロセッサよりは、出力すべきデータがデータ・
バス107に出力され、また、出力制御信号104とし
てハイ・レベルのパルス信号が出力されてAND回路5
に入力される。AND回路5に対しては、Dフリップフ
ロップ4よりロウ・レベルの信号112が入力されてお
り、AND回路5より出力される出力許可信号106と
しては、出力制御号104のパルス信号が出力されるこ
とはなく、ロウ・レベルのままの状態となる。従って、
出力許可信号106がロウ・レベルのままであるため、
出力装置として作用するDフリップフロップ7の保持内
容は変化することがない。
【0037】以上により、信号112がロウ・レベルの
時における、出力装置としてのDフリップフロップ7に
対する出力動作が完了する。
【0038】次に、Dフリップフロップ4より出力され
る信号112がハイ・レベルである時に、入力装置とし
てのスリー・ステート・バッファ8から入力動作を行う
場合を考える。
【0039】まず、プロセッサより、入力装置として作
用するのスリー・ステート・バッファ8に割り当てられ
た番号がアドレス信号101として出力され、デコーダ
1に入力される。デコーダ1においては、当該アドレス
信号101が、入力装置のスリー・ステート・バッファ
8に割り当てられた番号と合致したことが検出され、信
号102としてハイ・レベルの信号が出力されてAND
回路5および6に入力される。次に、プロセッサから
は、入力制御信号103としてハイ・レベルのパルス信
号が出力されて、AND回路6に入力される。AND回
路6に対しては、Dフリップフロップ4より、信号11
2がハイ・レベルで入力されており、信号102もハイ
・レベルであるため、AND回路6より出力される入力
許可信号105としては、入力制御信号103のパルス
信号がそのまま出力されて、入力装置のスリー・ステー
ト・バッファ8のゲートに入力される。スリー・ステー
ト・バッファ8においては、入力許可信号105のパル
スがハイ・レベルの期間、入力装置として作用し、Dフ
リップフロップ7より入力される信号108が、データ
・バス107に対しデータ出力される。
【0040】以上により、信号112がハイ・レベルの
時における、入力装置として作用するスリー・ステート
・バッファ8からの入力動作が完了する。
【0041】次に、Dフリップフロップ4より出力され
る信号112がロウ・レベルである時に、入力装置とし
て作用するスリー・ステート・バッファ8から入力動作
を行う場合を考える。
【0042】まず、プロセッサより、入力装置として作
用するスリー・ステート・バッファ8に割り当てられた
番号がアドレス信号101として出力され、デコーダ1
に入力される。デコーダ1においては、当該アドレス信
号101が、入力装置のスリー・ステート・バッファ8
に割り当てられた番号と合致したことが検出され、信号
102としてハイ・レベルの信号が出力されてAND回
路5および6に入力される。次に、プロセッサからは、
入力制御信号103としてハイ・レベルのパルス信号が
出力されて、AND回路6に入力される。AND回路6
に対しては、Dフリップフロップ4より、信号112も
入力されており、信号112がロウレベルであるため、
AND回路6より出力される入力許可信号105として
は、入力制御号103のパルス信号が出力されることは
なく、ロウ・レベルのままの状態となる。これにより、
入力装置のスリー・ステート・アーファ8からは、デー
タ・バス107に何のデータも出力されることがない。
【0043】以上により、信号112がロウレベルの時
における、入力装置としてのスリー・ステート・バッフ
ァ8からの入力動作が完了する。
【0044】フオン・ノイマン型のプロセッサにおいて
は、プロセッサにおいて実行すべきプログラムは、記憶
装置上に並べられている。プロセッサにおいては、命令
のフエッチと実行とが繰返して行われており、プログラ
ム中の入出力命令を実行することにより、入出力動作が
起る前には、必らず入出力命令のフエッチが行われてい
る。従って、システム・プログラム中の命令の実行によ
り入出力動作が行われる場合には、事前の命令フエッチ
動作を介して、Dフリップフロップ4より出力される信
号112にはハイ・レベルが出力されている。前述のよ
うに、信号112がハイ・レベルである場合には、出力
装置として作用するDフリップフロップ7、および入力
装置として作用するスリー・ステート・バッファ8は、
通常通りに選択することができる。
【0045】一方、システム・プログラム外の命令の実
行により、入出力動作が行われる場合には、事前の命令
フエッチ動作により、信号112にはロウ・レベルが出
力されている。前述のように、信号112がロウ・レベ
ルである場合には、出力装置としてのDフリップフロッ
プ7、および入力装置としてのスリー・ステート・バッ
ファ8は、共に選択することは不可能である。
【0046】次に、本発明の第2の実施例について説明
する。本実施例は、過去のシステムに存在している入出
力専用装置を、本発明の選択回路として用い、システム
・プログラムからのみ出力可能とした実施例である。
【0047】図4は、本実施例における入出力装置を示
すブロック図である。図4に示されるように、本実施例
の入出力装置は、出力装置として作用するDフリップフ
ロップ15と、入力装置として作用するスリー・ステー
ト・バッファ16と、命令のフエッチを検出するフエッ
チ検出手段11と、一時記憶手段として作用するDフリ
ップフロップ12と、入出力装置に割り当てられた番号
とアドレスとの合致を検出するデコーダ9と、アドレス
信号が所定の範囲内にあるか否かを検出するデコーダ1
0と、出力装置の選択を行うAND回路13と、入力装
置の選択を行うAND回路14とを備えて構成される。
なお、上記において、デコーダ10において検出の対象
としている所定のアドレス範囲とは、システム・プログ
ラムが配置されているアドレス範囲を意味している。
【0048】また、図5(a)、(b)、(c)、
(d)、(e)、(f)、(g)および(h)と、図6
(a)、(b)、(c)、(d)、(e)、(f)、
(g)および(h)は、本実施例における各信号のタイ
ミング図であり、図5は、出力装置としてのDフリップ
フロップ15に対する出力動作に対応するタイミング図
であり、また図6は、入力装置としてのスリー・ステー
ト・バッファ16からの入力動作に対応するタイミング
図である。以下、図4、図5および図6を参照して、本
実施例の動作について説明する。
【0049】まず、命令フエッチ動作について考える。
本実施例における命令フエッチ動作は、前述の第1の実
施例の場合と同様であり、その説明は省略する。なお、
本実施例においては、デコーダ10において検出される
所定のアドレス範囲が、システム・プログラムのアドレ
ス範囲であることから、システム・プログラム中の命令
フエッチ後においては、Dフリップフロップ12より出
力される信号412はハイ・レベルとなる。また逆に、
システム・プログラム外の命令フエッチ後においては、
信号312はロウ・レベルとなる。
【0050】次に、Dフリップフロップ4より出力され
る信号412がハイ・レベルの時に、出力装置としての
Dフリップフロップ15に対する出力動作を行う場合に
ついて考える。
【0051】まず、プロセッサより、出力装置としての
Dフリップフロップ15に割り当てられた番号がアドレ
ス信号401として出力されて、デコーダ9に入力され
る。デコーダ9においては、当該アドレスが、出力装置
としてのDフリップフロップ15に割り当てられた番号
と合致したことが検出され、信号402としてハイ・レ
ベルが出力されて、AND回路13および14に入力さ
れる。他方、プロセッサよりは、出力すべきデータがデ
ータ・バス407に出力され、また、出力制御信号40
4としてハイ・レベルのパルス信号が出力されてAND
回路13に入力される。AND回路13に対しては、D
フリップフロップ12よりハイ・レベルの信号412が
入力されており、デコーダ9より入力される信号402
もハイ・レベルであるため、AND回路13より出力さ
れる出力許可信号406としては、出力制御信号404
のパルス信号がそのまま出力され、出力許可信号406
として、出力装置として作用するDフリップブロップ1
5に入力される。Dフリップブロップ15においては、
出力許可信号406のパルスがハイ・レベルの期間、出
力装置として作用し、データ・バス407上のデータが
保持されて、信号408が出力される。
【0052】以上により、信号412がハイ・レベルの
時における、出力装置としてのDフリップフロップ13
に対する出力動作が完了する。
【0053】次に、Dフリップフロップ12より出力さ
れる信号412がロウ・レベルの時に、出力装置として
のDフリップフロップ15に対する出力動作を行う場合
について考える。
【0054】まず、プロセッサより、出力装置としての
Dフリップフロップ15に割り当てられた番号がアドレ
ス信号401として出力されて、デコーダ9に入力され
る。デコーダ9においては、当該アドレスが、出力装置
としてのDフリップフロップ15に割り当てられた番号
と合致したことが検出され、信号402としてハイ・レ
ベルが出力されて、AND回路13および14に入力さ
れる。他方、プロセッサよりは、出力すべきデータがデ
ータ・バス407に出力され、また、出力制御信号40
4としてハイ・レベルのパルス信号が出力されてAND
回路13に入力される。AND回路13に対しては、D
フリップフロップ4よりロウ・レベルの信号412が入
力されており、AND回路13より出力される出力許可
信号406としては、出力制御号404のパルス信号が
出力されることはなく、ロウ・レベルのままの状態とな
る。従って、出力許可信号406がロウ・レベルである
ため、出力装置として作用するDフリップフロップ15
の保持内容は変化することがない。
【0055】以上により、信号412がロウ・レベルの
時における、出力装置としてのDフリップフロップ15
に対する出力動作が完了する。
【0056】次に、Dフリップフロップ12より出力さ
れる信号412がハイ・レベルの時に、入力装置として
のスリー・ステート・バッファ16から入力動作を行う
場合を考える。
【0057】まず、プロセッサより入力装置として作用
するのスリー・ステート・バッファ16に割り当てられ
た番号がアドレス信号401として出力され、デコーダ
9に入力される。デコーダ9においては、当該アドレス
信号401が、入力装置のスリー・ステート・バッファ
16に割り当てられた番号と合致したことが検出され、
信号402としてハイ・レベルの信号が出力されて14
に入力される。次に、プロセッサからは、入力制御信号
403としてハイ・レベルのパルス信号が出力されて、
AND回路14に入力される。AND回路14に対し
て、デコーダ9より入力される信号402もハイ・レベ
ルであるため、AND回路14より出力される入力許可
信号405としては、入力制御信号403のパルス信号
がそのまま出力されて、入力装置のスリー・ステート・
バッファ16のゲートに入力される。スリー・ステート
・バッファ16においては、入力許可信号405のパル
スがハイ・レベルの期間、入力装置として作用し、Dフ
リップフロップ15より入力される信号408が、デー
タ・バス407に対しデータ出力される。
【0058】以上により、信号412がハイ・レベルの
時における、入力装置として作用するスリー・ステート
・バッファ16からの入力動作が完了する。
【0059】フオン・ノイマン型のプロセッサにおいて
は、プロセッサにおいて実行すべきプログラムは、記憶
装置に上に並べられている。プロセッサにおいては、命
令のフエッチと実行とが繰返して行われており、プログ
ラム中の入出力命令を実行することにより、入出力動作
が起る前には、必らず入出力命令のフエッチが行われて
いる。従って、システム・プログラム中の命令の実行に
より、入出力動作が行われる場合には、事前の命令フエ
ッチ動作を介して、Dフリップフロップ12より出力さ
れる信号412にはハイ・レベルが出力されている。前
述のように、信号412がハイ・レベルである場合に
は、出力装置として作用するDフリップフロップ15
は、通常通りに選択することができる。
【0060】一方、システム・プログラム外の命令の実
行により出力動作が行われる場合には、事前の命令フエ
ッチ動作により、信号412にはロウ・レベルが出力さ
れている。前述のように、信号412がロウ・レベルで
ある場合には、出力装置としてのDフリップフロップ1
5を選択することはできない。また、入力装置としての
スリー・ステート・バッファ16は、信号412の状態
に関係なく、常に選択することが可能である。
【0061】なお、上記の第1および第2の実施例の説
明においては、分離型I/Oのアドレス指定のシステム
に対して応用した実施例を用いて動作説明を行っている
が、本発明の適用範囲はこれに限定されるものではな
く、メモリマップI/Oのアドレス指定のシステムに対
しても同様の効果を得ることが可能であり、本発明の目
的・効果を達成することができることは言うまでもな
い。
【0062】
【発明の効果】以上説明したように、本発明は、リンク
保護機能を有しない安価なマイクロプロセッサを用いて
も、アプリケーション・プログラムにより、システム専
用入出力装置の選択を許可することが不可能となるとと
もに、加うるに、システム専用入出力装置をアクセスす
るためのオーバー・ヘッドによる性能低下を排除するこ
とのできる入出力装置の選択方式を提供することができ
るという効果がある。
【図面の簡単な説明】
【図1】本発明の第1の実施例における入出力装置を示
すブロック図である。
【図2】第1の実施例における入出力装置の動作例を示
すタイミング図である。
【図3】第1の実施例における入出力装置の動作例を示
すタイミング図である。
【図4】本発明の第2の実施例における入出力装置を示
すブロック図である。
【図5】第2の実施例における入出力装置の動作例を示
すタイミング図である。
【図6】第2の実施例における入出力装置の動作例を示
すタイミング図である。
【図7】従来例における入出力装置を示すブロック図で
ある。
【図8】従来例における入出力装置の動作例を示すタイ
ミング図である。
【図9】従来例における入出力装置の動作例を示すタイ
ミング図である。
【符号の説明】
1、2、9、10、12、17 デコーダ 3、11 命令フエッチ検出回路 4、7、12、15、20、24 Dフリップフロッ
プ 5,6、13、14、18、19、23 AND回路 8、16、21 スリー・ステート・バッファ

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】 プロセッサより出力されるアドレスによ
    って所定の入出力装置を選択する手段として、 プログラムによる命令のフエッチを検出するフエッチ検
    出手段と、 前記アドレスが、所定の範囲内にあることを検出して、
    当該検出出力を真とする第1のデコード手段と、 前記第1のデコード手段の出力を、前記フエッチ検出手
    段の検出出力を介して記憶する一時記憶手段と、 選択の対象とする入出力装置に割り当てられた番号と前
    記アドレスとの合致を検出して、当該検出出力を真とす
    る第2のデコード手段と、 を少なくとも備え、前記一時記憶手段の出力と前記第2
    のデコード手段の出力とが共に真であることを条件とし
    て、選択の対象とする入出力装置を選択することを特徴
    とする入出力装置の選択方式。
JP5247665A 1993-10-04 1993-10-04 入出力装置の選択方式 Withdrawn JPH07105170A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP5247665A JPH07105170A (ja) 1993-10-04 1993-10-04 入出力装置の選択方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP5247665A JPH07105170A (ja) 1993-10-04 1993-10-04 入出力装置の選択方式

Publications (1)

Publication Number Publication Date
JPH07105170A true JPH07105170A (ja) 1995-04-21

Family

ID=17166849

Family Applications (1)

Application Number Title Priority Date Filing Date
JP5247665A Withdrawn JPH07105170A (ja) 1993-10-04 1993-10-04 入出力装置の選択方式

Country Status (1)

Country Link
JP (1) JPH07105170A (ja)

Similar Documents

Publication Publication Date Title
US5684948A (en) Memory management circuit which provides simulated privilege levels
US4621318A (en) Multiprocessor system having mutual exclusion control function
US4839797A (en) Microprocessor compatible with any software represented by different types of instruction formats
US4274138A (en) Stored program control system with switching between instruction word systems
US5862148A (en) Microcontroller with improved debug capability for internal memory
US20040111633A1 (en) Method for BIOS security of computer system
US20030172214A1 (en) Data processing system with peripheral access protection and method therefor
JP3226055B2 (ja) 情報処理装置
US4926318A (en) Micro processor capable of being connected with a coprocessor
US5761491A (en) Data processing system and method for storing and restoring a stack pointer
JP3202497B2 (ja) 情報処理装置
US6473853B1 (en) Method and apparatus for initializing a computer system that includes disabling the masking of a maskable address line
US5586336A (en) Microcomputer capable of monitoring internal resources from external
EP0385136B1 (en) Microprocessor cooperating with a coprocessor
EP0864983A2 (en) Computer system including memory adress management circuit for protecting memory from illegal writing
US5101486A (en) Processor having a stackpointer address provided in accordance with connection mode signal
JPH07105170A (ja) 入出力装置の選択方式
US6425047B1 (en) Process containing address decoders suited to improvements in clock speed
US6397310B1 (en) Method and apparatus for controlling write access to storage means for a digital data processing circuit
US5557772A (en) Data processing apparatus including a register storing a parameter and a microinstruction execution arrangement including a correction arrangement for causing a first value of the parameter to be change to a second, correct value
JP2504191B2 (ja) マイクロプロセッサ
JPS6074059A (ja) 記憶装置アクセス制御方式
JPH09167117A (ja) マイクロコンピュータおよびこれを用いたリアルタイムシステム
EP0953910B1 (en) Method and apparatus for controlling write access to storage means for a digital data processing circuit
JPH11143732A (ja) マイクロコンピュータ及びエミュレータ

Legal Events

Date Code Title Description
A300 Withdrawal of application because of no request for examination

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20001226