JPS61160144A - エミユレ−シヨン方式 - Google Patents

エミユレ−シヨン方式

Info

Publication number
JPS61160144A
JPS61160144A JP30885A JP30885A JPS61160144A JP S61160144 A JPS61160144 A JP S61160144A JP 30885 A JP30885 A JP 30885A JP 30885 A JP30885 A JP 30885A JP S61160144 A JPS61160144 A JP S61160144A
Authority
JP
Japan
Prior art keywords
bus
emulation
address
state
data
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.)
Granted
Application number
JP30885A
Other languages
English (en)
Other versions
JPH0721767B2 (ja
Inventor
Kiyoshi Mitsune
清 三根
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 JP30885A priority Critical patent/JPH0721767B2/ja
Publication of JPS61160144A publication Critical patent/JPS61160144A/ja
Publication of JPH0721767B2 publication Critical patent/JPH0721767B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Landscapes

  • Test And Diagnosis Of Digital Computers (AREA)

Abstract

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

Description

【発明の詳細な説明】 1i且1 本発明はエミュレーション方式に関し、特に計算機シス
テムにおけるプログラム実行のエミュレーション方式に
関する。
え1亘I 一般に、エミュレーションとは、異なるアーキテクチャ
を有する中央処理装置(以下CPUと呼ぶ)に対して生
成された命令を、別のCPUにて実行することを指称す
る。しかし、ここでは、同一種類のCPUを用いるが、
番地づけや構造の異なる記憶装置(メモリと呼ぶ)、入
出力装置(IOと呼ぶ)を有する点において、システム
全体としてはアーキテクチャの異なる計算機システムに
対して生成されたプログラムを別の計算機システムにて
実行することを、プログラム実行のエミュレーションと
称するものとする。
かかるエミュレーションの目的は、同一種のCPU、メ
モリ、IO制御装置を用いた計算機システム間でのプロ
グラムの有効利用を図ることであり、また、新しい計算
機システムにおいて従来機種用のプログラムを承継する
ことであり、近年LSI技術により幾種類かのCPLl
、メモリ、10制御装置等が大量に安価に供給されてい
ることにより生じた要求である。
従来、この種のエミュレーションの方法としては、大別
してインタプリタ方式とハードウェア二重化方式とがあ
る。前者の方式では、エミュレーションの対象となるプ
ログラムを解釈実行するインタプリタが先ず計算機シス
テムで作動しており、対象プログラムのうちこの計算機
システムには存在しないか若しくは存在していても番地
づけや構造の異なるメモリやIOに関わる部分に関して
は、インタプリタが、この計算機システムに実際に存在
するメモリや10を用いて機能的に同等の結果が得られ
る様にエミュレーションを行うようになっている。
後者の方式では、対象プログラムの想定するメモリや1
0のうち、この計算機システムの実際のメモリや■0と
異なるハードウェア部分を予めこの計算機システムに付
加しておくものである。対象プログラムを実行する際に
は、二重化されたハードウェア部分を切替えてエミュレ
ーションを行うようになっている。
上記のインタプリタ方式にあっては、解釈実行プログラ
ムが常時動作しており、被エミュレーションプログラム
の実行速度が遅くなって、エミュレーションに要するオ
ーバヘッドが大となる欠点がある。一方、ハードウェア
二重化方式では、二重化に伴ってハードウェアのコスト
が増大し、また二重化を行った範囲内でしかエミュレー
ションを実行できないので、柔軟性に乏しいという欠点
がある。
R」Jとl仰 本発明は、エミュレーションに要するオーバヘッドが少
なくかつ柔軟性の高いエミュレーション方式を提供する
ことを目的としている。
発明の構成 本発明によるエミュレーション方式は、中央処理装置と
、番地づけられた複数の記憶単位を有する記憶装置と、
番地づけられた入出力装置と、これ等各装置間を接続す
るデータバス、アドレスバス、コマンドバスとを有する
計算機システムにおけるエミュレーション方式を対象と
し、その特徴とするところは、エミュレーションプログ
ラムを格納する手段と、バスの状態を監視しつつ当該バ
ス状態が予め定められた特定状態となったことを検出し
て中央処理装置に対して割込み要求を発生すると共にエ
ミュレーションプログラムを起動する手段と、この割込
み要求発生時のバス状態を記憶してエミュレーションプ
ログラムに対してこれを知らしめる手段と、当該割込み
要求時に記憶装置及び入出力装置に対するコマンド出力
を禁止する手段とを有することにある。
以下、図面を用いて本発明の詳細な説明する。
第1図は本発明の実施例のシステムブロック図であり、
1はCPLJ、2はメモリ、3は表示データメモリであ
る。10としては表示制御装置5が設けられており、C
0U1は表示装置6に対して表示させたい表示データを
表示メモリ3に書込み、表示制御装置5に対して適当な
制御データを送出することにより表示制御をなす。
これ等各装置1〜5の間をコマンドバス101゜アドレ
スバス102.データバス103が接続しり3及び表示
制御装置5へ接続(101′)されアドレスバス102
ヘアドレスを送出し、またデータ転送の対象となるメモ
リやIOの区別あるいはデータ転送の方向及びそのタイ
ミングを指示するコマンドをコマンドバス101へ送出
し、そしてデータバス103を介してデータの授受が行
われる。
ここで、各バス101〜103は一般に夫々複数本の信
号線からなっており、これ等の各バスの状態がバス監視
袋@4により監視されており、このバス状態が予め設定
された状態になると、信号104によってcpu iに
対して割込み要求を発生すると同時に、3ステートバツ
フア7に対してそのコマンド出力を禁止するものである
第2図は第1図のバス監視装置4の詳細図であり、11
は比較回路であって、その入力AとBの各複数本の信号
を2進数と見做し、それらが同値であるときに限りその
出力105を論理1とする。
本実施例では、比較回路11の入力Aには、予め定めら
れたコマンド状態、例えばNOに対する書込みJに相当
する値が[M定(iIcJとして与えられており、入力
Bにはコマンドバス101が供給されている。
比較回路12も同様構成であり、その入力Aには、予め
定められたアドレス、例えば「表示制御装置のアドレス
」に相当する値が「規定値a」として与えられており、
入力Bにはアドレスバス102が供給されている。これ
等入力AとBとが一致したときのみ出力106が論理1
となる。両川力105.106がアンドゲート13の2
人力となっており、このゲート出力104がcpuiに
対する割込み要求信号となっている。この信号104の
状態変化によりCPLJlは割込み要求を認識するよう
になっている。
この信号104の論理1から論理0への状態変化時に、
記憶回路14〜16にそれぞれコマンドバス101.ア
ドレスバス102.データバス103の各バス状態が取
込まれて一時記憶される。
これ等記憶回路14〜16の出力は夫々3ステートバツ
フア17〜19へ入力されており、これ等バッファ17
〜19の出力は共にデータバス103へ接続されている
。3ステートバツフア17〜19は夫々出力許可入力1
07〜109を有し、各許可入力107〜109の状態
が論理1の時に限りその入力状態を出力へ伝送し、許可
入力が論理Oのときにはその出力は電気的にオープン状
態となるものである。
20はIOアクセス制御回路であり、コマンド101及
びアドレス102を受けてバス監視装置4に対して予め
割当てられているアドレスでかつコマンドが「IOから
の読取り」を指示したときに、アドレスに応じて許可信
号107〜109のいずれか1つを論理1状態とする。
このとき、記憶回路14〜16に記憶されていたバス状
態をデータバス103へ出力させるのである。
尚、本実施例では、バスの信号線数を特に規定していな
い。アドレスバスの信号線数がデータバスのそれを上回
る場合には、3ステートバツフア18をデータバスの信
号線数を単位として18a。
18t)、18G、・・・等に分割して、対応する許可
信号108もそれに応じr108a、108b。
108c、・・・等に分割し、CPU1が複数回に分け
てアドレスバスの状態を引取るように構成すれば良い。
コマンド系に関しても同様の配慮をなすことが可能であ
る。
かかる構成において、表示制御プログラムのエミュレー
ションを例にとって動作を説明する。メモリ2には、表
示制御プログラム及びエミュレーションプログラムが格
納されているものとする。
CPtJ 1はプログラムを構成する命令をメモリ2よ
り次々と読取り、これ等命令の実行に伴い必要があれば
、「IO読取り」や「メモリ書込み」といったバスサイ
クルを次々にバスへ出力する。かかるタイミング状態が
第3図に示されている。
第3図において、時刻Ti−1ではCPLJlは被エミ
ュレーションプログラムの命令を得るために、アドレス
Ar−1、コマンドC1−1(メモリ読取り)をバスへ
送出し、メモリよりデータD書込みを意味するものとす
ると、次の時刻Tiにおいて、CPU 1はアドレスと
して表示制御装置のアドレスを、またコマンドとしてr
loI込み」を、またデータDiとして制御データをそ
れぞれバスへ送出する。このとき第2図の「規定値a」
及び「規定値C」とバスの状態とは一致することになる
ので、割込み要求信号104が論理1となる。この信号
104の立上がりでCPtJlは割込み要求を認識し、
現在のバスサイクルが終了次第割込みプログラムを起動
することになる。すなわち、時刻Ti+lでCPU1は
割込みプログラムの命令をフェッチするのである。
尚、ここでCPU 1は割込み受付は時の命令番地をC
PU内で退避しておき、割込みプログラムからの復帰時
には割込み受付は時の次の命令番地から7エツチを再開
する機能を有しているものとする。
ここで割込みプログラムとして予めエミュレーションプ
ログラムが配置されているものとすると、このエミュレ
ーションプログラムはバス監視装置4に記憶されていた
バスの状態値を記憶回路14〜16からrlo読出し」
により得て、次に示す変換作業を行う。
(1) 被エミュレーションプログラムが想定する表示
制御装置アドレスすなわち「規定値a」が、本実施例に
おける表示制御装置5の実際のアドレスと異なる場合に
は、装置5の実際のアドレスでもって「■0書込み」を
再実行する。
(2) 被エミュレーションプログラムが想定する制御
データ型式が実際の表示制御装置5と異なる場合には、
データを予めエミュレーションプログラムにて変換して
おく。
以上の変換作業が終了すると、エミュレーションプログ
ラムは割込み処理を終了して、CPU 1は引続き被エ
ミュレーションプログラムの101込み命令の次の命令
から実行を再開する。
一般に表示制御プログラムのエミュレーションを行う場
合には、以下に述べる2つの変換作業が必要となる。
(1) 第2図において、「規定値a」として被エミュ
レーションプログラムの想定する表示データメモリ3の
アドレス値を与える。ここで、データメモリのアドレス
がある範囲にあるときには、比較回路12ではアドレス
の上位信号から必要な数の信号だけが比較される。もし
このアドレスの範囲が2のべき乗の整数倍の値にない場
合は、比較回路12を範囲比較回路に拡張するものとす
る。
「規定値C」としては、「メモリ書込み」に相当する値
を与える。
CPU 1が「規定値a」に対するメモリ書込みバスサ
イクルを実行したとき、バス監視袋M4が割込み要求1
04を行うと同時に3ステートバツフア7の出力が禁止
されるので、メモリ2及び3等にはコマンドは送出され
ない。この割込みにより呼出されたエミュレーションプ
ログラムはバス監視袋W4の記憶回路16を調べること
により書込みデータが何であったかを知ることができる
エミュレーションプログラムは必要に応じて変換を行っ
たアドレスないしは変換を行ったデータにより改めて表
示データメモリ3に対するメモリ書込みを実行するので
ある。
(2) 第2図において、「規定値a」として被エミュ
レーションプログラムの想定する表示制御装置5のアド
レス値を与える。「規定値C」として「■0書込み」に
相当する値を与える。エミュレーションプログラムは前
記と同様の手順で表示制御データの10書込みのアドレ
ス変換ないしはデータ変換を行なうことができる。
更に、被エミュレーションプログラムの想定する表示制
御装置の構造と表示制御装置5の構造とが異なり一連の
IOI込みデータで構成される表示指令が異なる場合に
は、■0書込み毎に逐一変換を行うのではなく、一連の
IO!込みをメモリ2上に一旦記憶しておき、表示指令
の単位で変換を行う。このように、エミュレーションプ
ログラムは制御の変換を行うことが可能である。
これ等2つの変換作業を行うために、バス監視装置4を
拡張した実施例を第4図に示しており、この図では、第
2図と相違する部分についてのみが示されいるが、他の
部分は第2図の例と同等構成である。第2図における比
較回路11.12の代りに夫々11a、11b、11c
、−・・−,12a、12b、12c、・・・・・・と
いうように並列に用意して設け、各入力Aには、それぞ
れ別の規定値を供給しておく。これ等の一致出力105
a、105b、105c、 ・−・−106a、106
b、106C9・・・・・・の論理和をゲート21にて
得て、この出力を割込み要求信号104とするのである
エミュレーションプログラムは一時記憶回路14に記憶
されたコマンド値を調べることにより、どの様なバスサ
イクルによって割込み要求がなされたかを判断し、必要
な変換作業を行うことができる。
更に、本例では、モードフリップ70ツブ(FF)22
を設け、このFF22の出力状態が論理0の場合には、
アンドゲート23により割込み要求信号104を禁止す
るようにすることができるようになっている。このモー
ドFF22の状態をエミュレーションプログラムがセッ
トリセットするこができるようにしておけば、被エミュ
レーションプログラムが想定するアドレスと実際のアド
レスとがオーバラップする場合でも、エミュレーション
を実行することが可能となる。
ここで、バス監視装置4により割込み要求104が生じ
たときに、3ステートバツフ?7によってコマンドバス
を禁止すようにしたのは、以下の理由による。
一般に、10はそれに対するIO読取りに対して履歴性
を有するものである。例えば、あるアドレスに対する一
連の■0書込みにおいて、書込みの順序によりそのデー
タの意味が異なる場合、あるいは10読取りに際して一
度読取りを行うとデータがクリアされる場合がそうであ
る。被エミュレーションプログラムの想定するIOアド
レスがたまたまエミュレーションを行うシステムの実際
の【0アドレスと一致する場合にはエミュレーションの
際にその■0に対して副作用を与えることになる。かか
る問題を解決すべく、本発明では、エミュレーション割
込み時にコマンドの送出を禁止してシステムに対する副
作用の問題を解決しているのである。
R1目と11 本発明によれば、計算機システムのバスを監視しである
特定のバスサイクルを検出したときに、CPUに対して
割込み要求をなしかつエミュレーションプログラムを起
動するようにし、更に、エミュレーションプログラムに
対して割込み要求時のバスの状態を知らせることによっ
て、柔軟性が高くかつオーバヘッドの少ないエミュレー
ションを実行できることになる。また、CPUに対する
割込み要求と同時にメモリ等へのコマンドの送出を禁止
しているので、エミュレーションの際に■0に対して副
作用を与えるということもなくなる。
【図面の簡単な説明】
第1図は本発明の実施例のシステムブロック図、第2図
は第1図のバス監視装置の具体例の回路図、第3図は第
1.2図の装置の動作を説明するタイミング図、第4図
はバス監視装置の他の例を示す一部回路図である。 主要部分の符号の説明 1・・・・・・CPU   2・・・・・・メモリ3・
・・・・・表示データメモリ 4・・・・・・バス監視装置 5・・・・・・表示制御装置

Claims (1)

    【特許請求の範囲】
  1. 中央処理装置と、番地づけられた複数の記憶単位を有す
    る記憶装置と、番地づけられた入出力装置と、これ等各
    装置間を接続するデータバス、アドレスバス、コマンド
    バスとを有する計算機システムにおけるエミュレーショ
    ン方式であって、エミュレーションプログラムを格納す
    る手段と、前記バスの状態を監視しつつ当該バス状態が
    予め定められた特定状態となったことを検出して前記中
    央処理装置に対して割込み要求を発生すると共に前記エ
    ミュレーションプログラムを起動する手段と、前記割込
    み要求発生時の前記バス状態を記憶して前記エミュレー
    ションプログラムに対してこれを知らしめる手段と、前
    記割込み要求時に前記記憶装置及び前記入出力装置に対
    するコマンド出力を禁止する手段とを有することを特徴
    とするエミュレーション方式。
JP30885A 1985-01-05 1985-01-05 エミュレーション方式 Expired - Lifetime JPH0721767B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP30885A JPH0721767B2 (ja) 1985-01-05 1985-01-05 エミュレーション方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP30885A JPH0721767B2 (ja) 1985-01-05 1985-01-05 エミュレーション方式

Publications (2)

Publication Number Publication Date
JPS61160144A true JPS61160144A (ja) 1986-07-19
JPH0721767B2 JPH0721767B2 (ja) 1995-03-08

Family

ID=11470276

Family Applications (1)

Application Number Title Priority Date Filing Date
JP30885A Expired - Lifetime JPH0721767B2 (ja) 1985-01-05 1985-01-05 エミュレーション方式

Country Status (1)

Country Link
JP (1) JPH0721767B2 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6334648A (ja) * 1986-07-29 1988-02-15 Nec Corp 評価用マイクロコンピユ−タ
JPH0578590U (ja) * 1992-03-30 1993-10-26 極東ノート株式会社 着脱自在な見出シート

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6334648A (ja) * 1986-07-29 1988-02-15 Nec Corp 評価用マイクロコンピユ−タ
JPH0578590U (ja) * 1992-03-30 1993-10-26 極東ノート株式会社 着脱自在な見出シート

Also Published As

Publication number Publication date
JPH0721767B2 (ja) 1995-03-08

Similar Documents

Publication Publication Date Title
US6314515B1 (en) Resetting multiple processors in a computer system
US10657039B2 (en) Control device for a motor vehicle
JPS58191046A (ja) Cpu制御方法
EP0443557B1 (en) Interrupt controller capable of realizing interrupt nesting function
US4218739A (en) Data processing interrupt apparatus having selective suppression control
JPS6229815B2 (ja)
US5659760A (en) Microprocessor having interrupt vector generation unit and vector fetching command unit to initiate interrupt processing prior to returning interrupt acknowledge information
US3426331A (en) Apparatus for monitoring the processing time of program instructions
EP0055623B1 (en) Direct memory-access mode for a high-speed memory system
EP0290942B1 (en) Guest machine execution control system for virtual machine system
JPS6250944A (ja) マルチプロセッサシステム
JPS61160144A (ja) エミユレ−シヨン方式
JPS61160143A (ja) エミユレ−シヨン方式
JPS59112350A (ja) プログラム監視制御方式
JPS6120900B2 (ja)
JPS6239792B2 (ja)
JPS63155330A (ja) マイクロプログラム制御装置
JP2773042B2 (ja) インサーキットエミュレータのバス切替方法
JPH02183342A (ja) 割込み制御装置
SU798782A1 (ru) Процессор ввода-вывода
JPH05241852A (ja) 情報処理システムの割り込み発生装置
JPH0150936B2 (ja)
JPH05298118A (ja) 割込み制御回路
JPH04343144A (ja) マイクロプロセッサ
JPH0424733B2 (ja)