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

エミユレ−シヨン方式

Info

Publication number
JPS61160143A
JPS61160143A JP30785A JP30785A JPS61160143A JP S61160143 A JPS61160143 A JP S61160143A JP 30785 A JP30785 A JP 30785A JP 30785 A JP30785 A JP 30785A JP S61160143 A JPS61160143 A JP S61160143A
Authority
JP
Japan
Prior art keywords
bus
state
emulation
program
address
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
JP30785A
Other languages
English (en)
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 JP30785A priority Critical patent/JPS61160143A/ja
Publication of JPS61160143A publication Critical patent/JPS61160143A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Debugging And Monitoring (AREA)

Abstract

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

Description

【発明の詳細な説明】 1丘欠1 本発明はエミュレーション方式に関し、特に計算機シス
テムにおけるプログラム実行のエミュレーション方式に
関する。
11且I 一般に、エミュレーションとは、異なるアーキテクチャ
を有する中央処理装!(以下CPUと呼ぶ)に対して生
成された命令を、別のCPUにて実行することを指称す
る。しかし、ここでは、同一種類のCPUを用いるが、
番地づけや構造の異なる記憶装置(メモリと呼ぶ)、入
出力装置(■0と呼ぶ)を有する点において、システム
全体としてはアーキテクチャの異なる計算機システムに
対して生成されたプログラムを別の計算機システムにて
実行することを、プログラム実行のエミュレーションと
称するものとする。
かかるエミュレーションの目的は、同一種のCPU、メ
モリ、l0II+Ijll装置を用いた計算機システム
間でのプログラムの有効利用を図ることであり、また、
新しい計算機システムにおいて従来機極用のプログラム
を承継することであり、近年LSI技術により幾種類か
のCPU、メモリ、IO制御装置等が大量に安価に供給
されていることにより生じた要求である。
従来、この種のエミュレーションの方法としては、大別
してインタプリタ方式とハードウェア二重化方式とがあ
る。前者の方式では、エミュレーションの対象となるプ
ログラムを解釈実行するインタプリタが先ず計算機シス
テムで作動しており、対象プログラムのうちこの計算機
システムには存在しないか若しくは存在していても番地
づけや構造の異なるメモリや10に関わる部分に関して
は、インタプリタが、この計算機システムに実際に存在
するメモリやIOを用いて機能的に同等の結果が得られ
る様にエミュレーションを行うようになっている。
後者の方式では、対象プログラムの想定するメモリや1
0のうち、この計算機システムの実際のメモリや10と
異なるハードウェア部分を予めこの計算機システムに付
加しておくものである。対象70グラムを実行する際に
は、二重化されたハードウェア部分を切替えてエミュレ
ーションを行うようになっている。
上記のインタプリタ方式にあっては、解釈実行プログラ
ムが常時動作しており、被エミュレーションプログラム
の実行速度が遅くなって、エミュレーションに要するオ
ーバヘッドが大となる欠点がある。一方、ハードウェア
二重化方式では、二重化に伴ってハードウェアのコスト
が増大し、また二重化を行った範囲内でしかエミュレー
ションを実行できないので、柔軟性に乏しいという欠点
がある。
発明の目的 本発明は、エミュレーションに要するオーバヘッドが少
なくかつ柔軟性の高いエミュレーション方式を提供する
ことを目的としている。
1豆立旦1 本発明によるエミュレーション方式は、中央処理装置と
、番地づけられた複数の記憶単位を有する記憶装置と、
番地づけられた入出力装置と、これ等各装置間を接続す
るデータバス、アドレスバス、コマンドバスとを有する
計算機システムにおけるエミュレーション方式を対象と
しその特徴とするところは、エミュレーションプログラ
ムを格納する手段と、バスの状態を監視しつつ当該バス
状態が予め定められた特定状態となったことを検出して
中央処理装置に対して割込み要求を発生すると共にエミ
ュレーションプログラムを起動する手段と、この割込み
要求発生時のバス状態を記憶してエミュレーションプロ
グラムに対してこれを知らしめる手段とを有することに
ある。
1蓋1 以下、図面を用いて本発明の詳細な説明する。
第1図は本発明の実施例のシステムブロック図であり、
1はCPU、2はメモリ、3は10である。これ等の各
装置1〜3の間をコマンドバス101、アドレスバス1
02.データバス103が接続している。モして4がバ
ス監視装置である。
cpuiはメモリ2や103を特定すべくアドレスバス
102ヘアドレスを送出し、またデータ転送の対象とな
るメモリや■0の区別あるいはデータ転送の方向及びそ
のタイミングを指示するコマンドをコマンドバス101
へ送出し、そしてデータバス103を介してデータの授
受が行われる。
ここで、各バス101〜103は一般に夫々複数本の信
号線からなっており、これ等の各バスの状態がバス監視
装置4により監視されており、このバス状態が予め設定
された状態になると、信号104によってCPU1に対
して割込み要求を発生する。
第2図は第1図のバス監視装置4の詳細図であり、11
は比較回路であって、その入力Aと8の各複数本の信号
を2進数と見做し、それらが同値であるときに限りその
出力105を論理1とする。
本実施例では、比較回路11の入力Aには、予め定めら
れたコマンド状態、例えば「10からの読取り」に相当
する値が「規定値C」として与えられており、入力Bに
はコマンドバス101が供給されている。
比較回路12も同様構成であり、その入力Aには、予め
定められたアドレス、例えば「キーボード入力からの読
取り」に相当する値が「規定値a」として与えられてお
り、入力Bにはアドレスバス102が供給されている。
これ等入力AとBとが一致したときのみ出力106が論
理1となる。両川力105,106がアンドゲート13
の2人力となっており、このゲート出力104がCPt
Jlに対する割込み要求信号となっている。この信号1
04の状態変化によりCPU1は割込み要求を認識する
ようになっている。
この信号104の論理1から論理Oへの状態変化時に、
記憶回路14〜16にそれぞれコマンドバス101.ア
ドレスバス102.データバス103の各バス状態が取
込まれて一時記憶される。
これ等記憶回路14〜16の出力は夫々3ステートバツ
フア17〜19へ入力されており、これ等バッフ717
〜19の出力は共にデータバス103へ接続されている
。3ステートバツフア17〜19は夫々出力許可入力1
07〜109を有し、各許可入力107〜109の状態
が論理1の時に限りその入力状態を出力へ伝送し、許可
入力が論理0のときにはその出力は電気的にオープン状
態となるものである。
20は10アクセス制御回路であり、コマンド101及
びアドレス102を受けてバス監視装置4に対して予め
割当てられているアドレスでかつコマンドが「IOから
の読取り」を指示したときに、アドレスに応じて許可信
号107〜109のいずれか1つを論理1状態とする。
このとき、記憶回路14〜16に記憶されていたバス状
態をデータバス103へ出力させるのである。
尚、本実施例では、バスの信号線数を特に規定していな
い。アドレスバスの信号線数がデータバスのそれを上回
る場合には、3ステートバツフ?18をデータバスの信
号、線数を単位として18a。
18b、18c、・・・等に分割して、対応する許可信
号108もそれに応じて108a、108b。
108c、・・・等に分割し、CPU 1が複数回に分
けてアドレスバスの状態を引取るように構成すれば良い
。コマンド系に関しても同様の配慮をなすことが可能で
ある。
かかる構成において、キーボード入カプログラムのエミ
ュレーションを例にとって説明する。メモリ2には、被
エミュレーションプログラムであるキーボード人カプロ
グラム及びエミュレーションプログラムが格納されてい
るものとする。0PU1はプログラムを構成する命令を
メモリ2より次々と読取り、これ等命令の実行に伴い必
要があれば、「10読取り」や「メモリ書込み」といっ
たバスサイクルを次々にバスへ出力する。かかるタイミ
ング状態が第3図に示されている。
第3図において、時刻Ti−1ではCPU1はで、これ
までにフェッチした命令がキーボード入力装置からの読
取りを意味するものとすると、次の時刻Tiにおいて、
cpuiはアドレスとしてキーボード入力装置のアドレ
スを、またコマンドとして「夏0読取り」をそれぞれ送
出し、これを受けたキーボード入力装置3はキーのコー
ドをデータDiとしてバスへ送出する。このとき第2図
の「規定値a」及び「規定値C」とバスの状態とは一致
することになるので、割込み要求信号104が論理1と
なる。この信号104の立上がりでCPU1は割込み要
求を認識し、現在のバスサイクルが終了次第割込みプロ
グラムを起動することになる。すなわち、時刻Ti+1
でCPU1は割込みプログラムの命令をフェッチするの
である。
尚、ここでCPU1は割込み受付は時の命令番地をCP
U内で退避しておき、割込みプログラムからの復帰時に
は割込み受付は時の次の命令番地から7エツチを再開す
る機能を有しているものとする。
ここで割込みプログラムとして予めエミュレーションプ
ログラムが配置されているものとすると、このエミュレ
ーションプログラムはバス監視装置4に記憶されていた
バスの状態値を記憶回路14〜16からrloi5!出
し」により得て、次に示す変換作業を行う。
(1) 被エミュレーションプログラムが想定するキー
ボード入力アドレスすなわち「規定Via」が、本実施
例におけるキーボード入力装置3の実際のアドレスと異
なる場合には、装置Z3の実際のアドレスでもって「I
O読取り」を再実行し、正しいデータを得る。
(2) 被エミュレーションプログラムが想定するコー
ド体系が実際のキーボード入力装置3のコード体系と相
違する場合は、データ01をエミュレーションプログラ
ムにて適切に変換する。
以上の作業が終了すると、エミュレーションプログラム
は本来のIO読取り命令により、データバスの状態が格
納されるべきCPUI内のレジスタに変換されたデータ
Di−を格納し、割込み処理を終了する。CPU 1は
引続き被エミュレーションプログラムの10読取り命令
の次の命令から実行を再開する。
こうすることにより、エミュレーションではアドレスの
変換、データの変換が可能となるが、更に制御の変換も
可能となる。例えば、被エミュレーションプログラムに
おいては、所定キーが押された直後に他の所定キーが押
された時に限りプログラムの中断を意味するものと定め
られていたとしても、エミュレーションプログラムがメ
モリ2にキー人力の履歴を記憶しておくことにより、プ
ログラムの中断制御をエミュレーションできることにな
る。
本実施例では、第2図における比較回路12は必須では
なく、この場合出力105が信号線104に直結され、
■0読取りバスサイクル時には毎回割込みを行うことに
なる。エミュレーションプログラムは一時記憶回路15
に記憶されたアドレス値を調べてこの値が被エミュレー
ションプログラムの想定する■0アドレスであったとき
のみ前述の変換作業を行い、それ以外は何もせずに割込
み処理を終了することでエミュレーションを実行できる
ものである。
11亘1呈 本発明によれば、システムバスを監視しである特定のバ
スサイクルを検出したときにCPUに対して割込み要求
をなし、エミュレーションプログラムを起動するように
しかつエミュレーションプログラムに対して割込み要求
時点でのバスの状態を値を知らせるようにしたので、柔
軟性が高く、エミュレーションに要するオーバヘッドの
少ないエミュレーションを実行できるという効果がある
【図面の簡単な説明】
第1図は本発明の実施例のシステムブロック図、第2図
は第1図のバス監視装置の具体例を示す回路図、第3図
は第1図の装置の動作を説明するタイミング図である。 主要部分の符号の説明

Claims (1)

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

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP30785A JPS61160143A (ja) 1985-01-05 1985-01-05 エミユレ−シヨン方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP30785A JPS61160143A (ja) 1985-01-05 1985-01-05 エミユレ−シヨン方式

Publications (1)

Publication Number Publication Date
JPS61160143A true JPS61160143A (ja) 1986-07-19

Family

ID=11470245

Family Applications (1)

Application Number Title Priority Date Filing Date
JP30785A Pending JPS61160143A (ja) 1985-01-05 1985-01-05 エミユレ−シヨン方式

Country Status (1)

Country Link
JP (1) JPS61160143A (ja)

Similar Documents

Publication Publication Date Title
US9092023B2 (en) Industrial controller using shared memory multicore architecture
US4325116A (en) Parallel storage access by multiprocessors
US10657039B2 (en) Control device for a motor vehicle
US4949241A (en) Microcomputer system including a master processor and a slave processor synchronized by three control lines
EP0182126B1 (en) Directing storage requests during master mode operation
US5659760A (en) Microprocessor having interrupt vector generation unit and vector fetching command unit to initiate interrupt processing prior to returning interrupt acknowledge information
US6795911B1 (en) Computing device having instructions which access either a permanently fixed default memory bank or a memory bank specified by an immediately preceding bank selection instruction
KR900005284B1 (ko) 마이크로 컴퓨터
JPS6393055A (ja) 実時間型ガ−ベジコレクシヨン支援装置
JPS61160143A (ja) エミユレ−シヨン方式
JPS61160144A (ja) エミユレ−シヨン方式
JP2619425B2 (ja) シーケンスコントローラ
JPS59112350A (ja) プログラム監視制御方式
JPS6239792B2 (ja)
KR960018958A (ko) 다중 프로세서 시스템에서 아토믹 명령어 수행시 데이타 버퍼를 사용한 메인 메모리 액세스 장치
JP2761324B2 (ja) 高速演算処理方式
JPS63155330A (ja) マイクロプログラム制御装置
JPH07117910B2 (ja) アドレスコンペアストップ方式
JPH02183342A (ja) 割込み制御装置
JPH06103224A (ja) 割込み制御装置
JPH0417530B2 (ja)
JPH03255507A (ja) プログラマブルコントローラ
JPS63129427A (ja) 割り込み応答論理変換回路
JPS62197834A (ja) マイクロプログラム制御装置
JPH10333920A (ja) 割込み処理回路