JPH0557620B2 - - Google Patents

Info

Publication number
JPH0557620B2
JPH0557620B2 JP60273916A JP27391685A JPH0557620B2 JP H0557620 B2 JPH0557620 B2 JP H0557620B2 JP 60273916 A JP60273916 A JP 60273916A JP 27391685 A JP27391685 A JP 27391685A JP H0557620 B2 JPH0557620 B2 JP H0557620B2
Authority
JP
Japan
Prior art keywords
address
memory
information
access
page
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 - Lifetime
Application number
JP60273916A
Other languages
English (en)
Other versions
JPS62131351A (ja
Inventor
Masae Watabe
Yoshuki Miki
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
Nippon Electric 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 Nippon Electric Co Ltd filed Critical Nippon Electric Co Ltd
Priority to JP60273916A priority Critical patent/JPS62131351A/ja
Publication of JPS62131351A publication Critical patent/JPS62131351A/ja
Publication of JPH0557620B2 publication Critical patent/JPH0557620B2/ja
Granted legal-status Critical Current

Links

Landscapes

  • Memory System Of A Hierarchy Structure (AREA)

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明は、情報処理装置における中央処理装置
に関するもので特にその中央処理装置の入出力の
制御に関するものである。
〔従来の技術〕
従来、中央処理装置から外部入出力装置へのア
クセス方法としては、次の2通りの方法が考えら
れる。
1 入出力命令によるアクセス 中央処理装置は、入出力装置に対して出力
し、入出力装置とのデータのやりとりを行なう
方式 2 メモリマツプトI/Oによるアクセス メモリマツプトI/Oは主記憶装置が接続さ
れるアドレス空間の一部に入出力装置を接続し
(以下このアドレス空間をI/O空間という)、
主記憶に対する書込み/読み出し命令、演算命
令など実行時に出力されるアドレスが、入出力
装置が接続されているアドレスであれば入出力
装置とのデータのやりとりを行なう方式であ
る。
このメモリマツプトI/Oは、次の様な特徴、
欠点を有している。
〔特徴〕
●一般の算術理論演算命令、転送命令等のメモリ
オペランドとして主記憶を指定できるのと同様
に入出力装置を指定することが可能である。す
なわち、メモリマツプトI/Oは命令レベルで
は主記憶へのアクセス命令と同じ形態を有す
る。しかしながら、メモリマツプトI/Oは、
実際には、主記憶へのアクセスではなく、入出
力装置へのアクセスであるので、メモリアクセ
スとは異なるアクセス処理が必要となり、その
結果として以下のような欠点が生じる。
〔欠点〕
●主記憶装置は、高速化手法としてインターリー
ブ構成方式などが可能であるが、入出力装置で
はその様な構成は難しい。
●主記憶装置と入出力装置とでは、読み出し/書
込みに失敗した際のリカバリ処理が異なる。
●ページング方式の仮想記憶方式を採用し、且つ
バイト単位でオペランドアドレスを指定可能な
中央処理装置においては、オペランドが複数の
ページにまたがる場合があるが、I/O空間と
メモリ空間とでは複数のページにまたがつた場
合の中央処理装置の動作が異なつてくる。
●パイプライン方式を採用する中央処理装置は、
n番目の命令のオペランドの書込みより、n+
1番目の命令のオペランドの読み出しの方が先
に行なわれる場合があるが、I/O空間の場合
この様なことがあると入出力装置の制御が狂う
ことがある。
●メモリマツプトI/O構成の中央処理装置は、
その内部でメモリ空間とI/O空間の区別がつ
かないので、入出力装置のアクセスを実行すべ
きレベルを指定する機能を実現させることが困
難である。
〔発明が解決しようとしている問題点〕
ページング方式の仮想記憶方式を採用し、且つ
バイト単位でオペランドアドレスを指定可能な中
央処理装置においては、オペランドが複数のペー
ジにまたがる場合があるが、I/O空間とメモリ
空間とでは複数のページにまたがつた場合の中央
処理装置の動作が異なつてくる。メモリ空間アク
セスでは、仮想空間上の1枚目のページと2枚目
のページでは、仮想空間上では、全く別の実メモ
リ上のページに変換されるので、オペランドの先
頭アドレスに対するアドレス変換と次ページの先
頭アドレスに対するアドレス変換が必要である
が、I/O空間ではページという概念がないの
で、仮想空間上複数のページにまたがつても、オ
ペランドの先頭アドレスに対するアドレス変換の
み行なえばよい。しかし、メモリマツプトI/O
構成の中央処理装置では、その内部でメモリ空間
とI/O空間の区別がつかないので、上記の様に
メモリ空間とI/O空間で別の動作を実現させる
ことが困難である。
〔問題点を解決させるための手段〕
前記の問題点は、中央処理装置がメモリ空間と
I/O空間とを判別できないということに起因す
るものである。
一方、仮想記憶方式を採用した中央処理装置で
は、仮想アドレスを実アドレスに変換するため
に、セグメント記述子、ページ記述子などを用い
る。これらの記述子には、仮想アドレスから実ア
ドレスへの変換を行なうための情報のほか記憶保
護のための情報をも持つており、これらの情報以
外にどのアドレスにI/O装置が接続されている
かを示す情報(以下MPIO情報という)をも持た
せることが可能である。
本発明はこのMPIO情報を使つてメモリマツプ
トI/Oを判別することを可能とし、前記の問題
点を解決したものである。
〔実施例〕
次に、本発明について図面を参照して説明す
る。
第1図は、本発明の実施例におけるアドレス変
換部(以下TLBと略す。)のブロツク図である。
第2図は、本発明の実施例における実効アドレ
ス計算部のブロツク図である。
第3図は、本発明の実施例におけるアドレス変
換テーブル、ページ記述子の構成を示す図であ
る。
第4図は、本発明の実施例における中央処理装
置の構成を示すブロツク図である。
第5図は、本発明の実施例におけるタグバス上
に送られる情報を示す図である。
第6図は、本発明の実施例における仮想アドレ
スから実アドレスへの変換を現わす図である。
第7図は、本発明の実施例における実効アドレ
ス計算を表わすタイミングチヤート図である。
第1図において、11は実効アドレス計算部か
ら送られて来た実効アドレス(又は仮想記憶アド
レス)を一旦記憶するためのバーチヤルアドレス
レジスタ(VAR)である。12は、仮想アドレ
スのページ内オフセツトの部分を除いた仮想ペー
ジ番号複数個記憶し、VAR11の仮想ページ番
号部との比較機能を持つ連想メモリである。13
は、連想メモリ12の比較機能によりどのエント
リが一致したかのエントリ番号を生成するための
エンコーダである。14は、連想メモリ12、エ
ンコーダ13により一致したエントリ番号に対応
する実アドレス情報、保護情報、MPIO情報を記
憶するためのデータメモリである。15は、14
のメモリから読み出される実アドレス情報、保護
情報、MPIO情報を一旦記憶するためのリアルア
ドレスレジスタである(以下、RARと略す)。1
6は、実効アドレス計算部から実効想アドレスと
同時に送られて来る付随情報(以下、TAG情報
と略す。)を一旦記憶するためのレジスタ(以下、
TAGRと略す)。17は、TAGR16中のタグ情
報をデコードし、アクセスの種別を示す信号(以
下、アクセスタイプと略す)でI/Oであるか否
かを示す信号(以下、M/IOと略す)を発生さ
せるためのデコーダである。18は、命令実行部
からの実行レベル情報、デコーダ17からのアク
セスタイプ情報、RAR15からの保護情報など
の情報から保護例外を検出するための保護チエツ
ク機構である。19は、RAR15からのMPIO
情報とデコーダ17からのM/IO信号により、
実効アドレスが計算部からおくられてきた仮想ア
ドレスがメモリ空間を示すかI/O空間を示すも
のかを決定する回路である。110は、実効アド
レス計算部から仮想アドレスをTLB、メモリ制
御部へ送り、且つTLBから実アドレスをメモリ
制御部へマルチプレクスして送るアドレスバスで
ある(以下、ABUSと略す)。111は、実効ア
ドレス計算部から仮想アドレスと同時にタグ情報
を送り、またTLBから実アドレスと同時にタグ
情報を送るためのバスである。112は、I/O
検出部19からのIOアクセス信号(IOAC)で、
実効アドレス計算部に送られる信号線である。
第2図において、21は、命令実行部から実効
アドレス計算に必要な汎用レジスタの値を実効ア
ドレス計算部に送るためのバスである(以下、
EBUSと略す)。22は、インデクス値を一旦記
憶するためのレジスタである(以下、EATR1
と略す)。23は、ベースアドレスを一旦記憶す
るためのレジスタである。(以下、EATR2と略
す。)24は、プリデクリメントやポストインク
リメントなどの補正値を一旦記憶するためのレジ
スタである(以下、EATR3と略す)。
25は、デイスプレースメント値を一旦記憶す
るためのレジスタである(以下、EATR4と略
す)。26は、命令解析部からデイスプレースメ
ント値を実効アドレス計算部へ送るためのバスで
ある(以下、IBUSと略す)。27は、EATR1
−4の値をキヤリーセーブ方式で加算する加算器
である(以下、CSAと略す)。28は、NPGRQ
信号によりCSAのSUM部及びCARRY部値を選
択またはNPGRの値及び定数1000Hを選択するマ
ルチプレクサである。29は、28のマルチプレ
クサにより選択された2つの入力の加算を行なう
ための加算器である(以下CPAと略す)。210
は、29の加算器により計算された実効アドレス
の中でメモリオペランドの実効アドレスを記憶す
るためのレジスタである(以下、OPARと略
す)。211は、29の加算器により計算された
実効アドレスの中で、分岐先又はプリフエツチ先
の実効アドレスを記憶するためのレジスタである
(以下、PFARと略す)。212は、計算された実
効アドレスをTLB、メモリ制御部へ送るための
バスであり第1図のアドレスバス111に接続さ
れる。213は、実効アドレスとオペランドのデ
ータタイプから、ページ境界にまたがるかどうか
を検出するためのページ境界検出器である。21
4は、オペランドがページ境界にまたがつた場合
の前ページの仮想ページ番号(仮想アドレスから
ページ内オフセツトを除いたアドレス)を記憶す
るためのレジスタである(以下、NPGRと略
す)。215は、実効アドレス計算部のタイミン
グ制御回路である。216は、命令解析部から送
られてくるオペランドアドレスについてのタグ情
報を記憶するためのレジスタである。217は、
216のタグレジスタの情報をデコードしオペラ
ンドのデータタイプ、I/O命令かどうかの信号
(I/O)を発生するデコーダである。218は、
TAGR216のタグ情報をTLB、メモリ制御部
へ送るためのバスであり、第1図のタグバス11
1に接続される(以下、TAGBUSと略す)。2
19は、アドレス変換部から送られて来るIOア
クセス信号(IOAC)である。220は、タイミ
ング制御回路215から出される、オペランドの
先頭アドレスを計算するか、オペランドがページ
境界にまたがつて、次のページの先頭アドレスを
計算するかを選択する信号である(以下、
NPGSELと略す)。221は、加算器29により
計算された実効アドレスの存在するページの先頭
アドレスののる信号群である。222は、タイミ
ング制御回路215から出される信号で、次ペー
ジを示す信号である。223は、命令解析部43
から出される、実効アドレス計算開始のトリガー
信号である(以下、STEA1と略す)。224は、
タイミング制御回路215から出される信号で、
CPA29の加算結果をOPAR210へ出す信号
である(以下、STEANTと略す)。225は、
タイミング制御回路215から出される信号で、
CPA29の加算結果をSTEANT224により出
されたものを、OPAR210にラツチする信号
である(以下、OPARWと略す)。226は、タ
イミング制御回路215から出される信号で、
CPA29の加算結果をSTEANT224により出
されたものを、ABUS212にだす信号である
(以下、VARTABと略す)。227は、タイミン
グ制御回路215から出される信号で、OPAR
210から出された仮想ページ番号をラツチする
信号である(以下、NPGRWと略す)。228
は、ページ境界検出器213から出されるページ
境界検出信号である(以下、DETECTPGと略
す)。229は、デコーダ217から出される、
オペランドのデータ長を表わす信号群である。2
30は、デコーダ217から出される、オペラン
ドがメモリ空間アクセスかI/O空間アクセスか
を示す信号である。
第3図aにおいて、31は、アドレス変換テー
ブル(ページテーブルと言う)の全体図を示す。
311は、アドレス変換テーブルの1エントリ
(以下、ページ記述子という)を示す。同図bは、
同図aのページ記述子311の構成を詳細に示し
たものである。321は、“1”でこの記述子の
内容が有効であることを、“0”でこの記述子の
内容が無効であることを示すビツトである(以
下、Vビツトと略す)。322は、“1”でこの記
述子の示すページがI/O空間にマツプされるこ
とを、“0”でこの記述子の示すページがメモリ
空間にマツプされすことを示すビツトである(以
下、MPIOと略す)。323は、“1”でこの記述
子の示すページが主記憶に存在することを、“0”
でこの記述子の示すページが主記憶に存在しない
ことを示すビツトである(以下、Pビツトと略
す)。324は、“1”でこの記述子の示すページ
が以前中央処理装置により参照されたことを、
“0”でこの記述子の示すページが中央処理装置
により参照されていないことを示すビツトである
(以下、Aビツトと略す)。325は、“1”でこ
の記述子の示すページが以前中央処理装置により
書込みがあつたことを、“0”でこの記述子の示
すページが中央処理装置により書込みがなかつた
ことを示すビツトである(以下、Wビツトと略
す)。326は、この記述子の示すページに対す
る保護情報である。327は、この記述子の示す
ページが実メモリ空間又は実I/O空間の何番地
にマツプされるかを示す実アドレス情報である。
次に本実施例における動作を説明する。
本実施例に於ける中央処理装置は、第4図に示
す様に命令解析部43、実効アドレス計算部4
4、アドレス変換部45、主記憶制御部46、命
令実行部47の各ユニツトから構成される。そし
て各ユニツトは、ABUS41、TAGBUS42、
IBUS48、EBUS49により接続される。
命令解析部43は、主記憶から読み込まれた命
令をデコードし、命令実行部47で直接実行可能
な形式に変換し、命令実行部47に送る。また、
命令解析部43で解析した命令がメモリ又はI/
O空間に対するオペランドを持つ場合には、その
オペランドの実効アドレス計算に必要な情報、
(インデクス値、ベース値、デイスプレースメン
ト値など)を実効アドレス計算部44におくる。
実効アドレス計算部44は、実効アドレス計算に
必要な情報を基に実効アドレスを計算し、実効ア
ドレスをアドレス変換部45におくる。アドレス
変換部45は、実効アドレス計算部44から送ら
れてきた実効アドレスを実アドレスに変換し主記
憶制御部46に送る。主記憶制御部46は、アド
レス変換部45から送られて来た実アドレスによ
り主記憶又は入出力装置にアクセスする。オペラ
ンドの読み込みには、主記憶または入出力装置か
ら読み込んだ情報を命令実行部47に送り、書込
む時には命令実行部47から送られた情報を主記
憶又は入出力装置に書き込む。命令実行部47
は、命令解析部43から送られて来る命令のデコ
ード情報により命令の実行を行なう。アドレスバ
ス41は、実行アドレス計算部44からアドレス
変換部45へ情報アドレスを転送し、またアドレ
ス変換部45から主記憶制御部46へ実アドレス
を転送するために用いられる。タグバス42は、
アドレスバス41と対応して用いられるバスで、
アドレスバス41上の実効アドレス、実アドレス
に付随する各種情報を転送するためのバスであ
る。このタグバス42により転送される情報51
には、第5図に示す様に次の情報がある。
1 ビツト2−3……オペランドデータ長 00:バイト(1バイト) 01:ハーフワード(2バイト) 10:ワード(4バイト) 2 ビツト9……M/IO 1:メモリ空間へのアクセスであることを示
す。
0:I/O空間へのアクセスであることを示
す。
3 ビツト10……NPG 1:オペランドがページ境界にまたがつた場合
の次のページの先頭アドレスであることを示
す。
0:オペランドアドレスであることを示す。
4 ビツト11−12……アクセスタイプ 00:EXECUTE 01:WRITE 10:READ 11:READ/WRITE 5 ビツト13……V/R 1:実効アドレス(仮想アドレス)であること
を示す。
0:実アドレスであることを示す。
前記の様な構成の中央処理装置に於いてメモリ
又はI/O空間に対するオペランドを持つ命令を
実行する場合の動作を以下に説明する。
命令解析部43は、命令を解析すると汎用レジ
スタの値、インデクスの値、デイスクプレースメ
ント値など実効アドレス計算に必要な情報を
EBUS(第2図の21、第4図の49)、IBUS(第
2図の26、第4図の48)により実効アドレス
計算部のレジスタEATWR1,EATR2,
EATR3,EATR4(第2図22,23,24,
25)に送る。そして、オペランドについての付
随情報(アクセスタイプ、データ長、メモリ空間
かI/O空間かの情報M/IO)などをTTAGR
16に送る。
実効アドレス計算部44は、EATR1,
EATR2,EATR3,EATR4の汎用レジスタ
の値、インデクス値、デイスプレースメント値な
どをキヤリーセーブ加算器27、キヤリープロパ
ゲート加算器29を用いて、加算を行なう。ここ
で、命令解析部43から、実効アドレス計算開始
の信号STEA1223が来る(第7図−72)と
タイミング制御回路215からSTEANT224
(第7図−73)が出され、CPA29から加算結
果がだされる。STEANT224(第7図−7
2)が出ると、VARTAB(第7図−73)が出
て、この加算結果がABUS212に出されてア
ドレス変換部に送られ、OPARW225(第7
図−74)が出てOPAR210にラツチされる。
そして、TTAGWR16中のタグ情報をデコード
して(第2図−217)データ長を得て、前記実
効アドレス(CPA29の結果)とデータ長から
ページ境界にまたがるか否かをページ境界検出器
213が検出し、またがると検出された場合は、
DETECTPG213がタイミング制御回路215
へ送られる。
ページ方式の仮想記憶方式を採用する中央処理
装置(第6図−a参照)では、メモリオペランド
が複数のページにまたがる場合(第6図−aの左
側)、1枚目のページと2枚目のページでは仮想
空間上では連続していても実メモリ上では全く別
のページに変換されることができる(第6図−a
の右側)。このため、オペランドの先頭アドレス
に対する実効アドレス計算、仮想→実アドレス変
換(第6図−aの611)、メモリアクセスだけ
では実メモリ空間からオペランドの全体を得るこ
とは不可能で、次ページの先頭アドレスに対する
実効アドレス計算、仮想→実アドレス変換(第6
図−aの612)、メモリアクセスをそれぞれ行
なわなければならない。
一方、メモリマツプトI/Oでは、オペランド
が複数のページにまたがる場合でも、I/O空間
はページという概念はないので(第6図−b参
照)、仮想記憶上でページ連続していればI/O
空間上も連続しており、複数のページにまたがつ
たときでもオペランドの先頭アドレスに対する実
効アドレス計算、仮想→実アドレス変換(第6図
−bの621)、I/O空間アクセスを行なえば
良く、次ページの先頭アドレスに対する実効アド
レス計算、仮想→実アドレス変換(第6図−bの
622)、I/O空間アクセスは行なわなくてよ
い。
従つて、オペランドが複数のページにまたがる
場合、実効アドレス計算部は、次の3通りの動作
を行なう。
1 メモリ空間アクセスの場合 TAGR216のM/IO情報(ビツト19)が
“1”でメモリ空間アクセスであることを示し、
アドレス変換部45からのIOAC信号(第1図
−112、第2図−219)が“0”(メモリ
マツプトI/Oでないことを示す。)(第7図−
79)で、且つページ境界検出器213から
DETECTPG213(第7図−75)がページ
境界を検出して、それぞれタイミング制御回路
215へ出されると、次ページの先頭アドレス
の計算が行なわれることになり、タイミング制
御回路215からNPGSEL220(第7図−
77)が出され、このNPGSEL220と一緒
に出されたNPGRW227(第7図−78)
によつてラツチされた、仮想ページ番号214
と下位ビツト0〜11に0を入れた値を結合した
データ221をCPA29に入力する。(本実施
例ではページサイズ=4Kバイトであるので次
の先頭アドレスを計算するため定数1000Hを加
算する、)そして、加算結果としてつぎのペー
ジの先頭アドレスをアドレスバス212に出力
しアドレス変換部45に送る。同時にTAGAR
216のタグ情報もタグバス218に出力しア
ドレス変換部に送る。このとき、タグ情報のビ
ツト9(NPG)222を“1”にする。
2 メモリマツプトI/Oの場合 アドレス変換部45へ送られた実効アドレス
は、実アドレスに変換されて(第1図)再びア
ドレスバスへ出力され主記憶制御部46へ送ら
れる(TLBの動作の詳細は後で述べる)。この
時、実アドレスと一緒にデータメモリ14か
ら、保護情報、MPIOも選択され、このMPIO
情報が“1”で実ページ番号がI/O空間にマ
ツプされることを示したら、I/O検出部19
によりTAG情報のビツト9M/IO情報がI/
O空間を示すよう“0”にかえ、TAGBUSへ
出力し、同時に、I/Oアクセスを示す信号
IOAC(第1図−112、第2図−219)が
実効アドレス計算部に送られる。IOAC219
がIOアクセスを示すので、次ページの先頭ア
ドレス計算は必要ないので(第7図−79)、
タイミング制御回路215は次ページの先頭ア
ドレス計算の指示を出すことをやめる。すなわ
ち、信号STEA1(第7図−72)、PARW
(第7図−74)、VARTAB(第7図−76)
を“0”にする。
3 I/Oアクセスの場合 TAGAR216のTAG情報M/IOが“0”
でI/Oアクセスを示す場合、このTAG情報
M/IOがタイミング制御回路215に送られ、
メモリマツプトI/Oと同様にタイミング制御
回路215は次ページの先頭アドレス計算の指
示を出すことをやめ、信号STEA1(第7図−
72)、PARW(第7図−74)、VARTAB
(第7図−76)を“0”にする。
TLBは、その内部のアドレス比較部12に仮
想ページ番号、データメモリ部14に実ページ番
号、保護情報、MPIO情報を記憶する。
仮想記憶方式を採用する情報処理装置では、主
記憶上にページテーブル31、ページ記述子32
を持ち、これらの記述子中にある情報のコピーを
TLBに持つ。本発明では、ページ記述子32中
にMPIO情報323を持たせ、このIO情報が
“1”であれば、このページ記述子の示すページ
がI/O空間にマツプされることを示し、“0”
であればメモリ空間であることを示す。この
MPIO情報もTLBに記録される。
実効アドレス計算部から送られた実効アドレス
(仮想アドレス)は、VAR11のページ内オフセ
ツト(VARのビツト11−31)を除いた部分
(VARのビツト12−31)(以下仮想ページ番号と
略す。)をTLBの仮想アドレス部に記憶されてい
る仮想ページ番号と比較し、一致する仮想ページ
番号があればその仮想ページ番号に対応する
TLBのデータメモリ部のエントリをRAR15に
読み出す。このデータメモリ部には、実ページ番
号、保護情報、I/O情報が記憶されている。
読み出されたRAR15中の実ページ番号は
(RARのビツト12−31)はVAR11に格納され
ている仮想アドレスのページ内オフセツト
(VARのビツト0−31)と組み合わせて実アドレ
スを形成しアドレスバス111に出力し主記憶制
御装置に送られる。
RAR15中の保護情報(RARのビツト15)
は、保護チエツク機構18に送られる。保護チエ
ツク機構は、TTAGR16中の情報をデコーダ1
7によつてデコードされたアクセスタイプなどの
情報及びRAR15からの保護情報、及び命令実
行部からの実行レベルなどの情報からアクセスが
妥当であるかをチエツクし、保護例外を検出すれ
ばそれを命令実行部に送らせる。
RAR15中のI/O情報(RARのビツト0)
(以下、MPIOと略す)は、IO検出部に送られる。
IO検出部は、MPIOが“1”のときはTTAGR1
6のM/IO情報を“0”にしてI/O空間を示
す様にして主記憶制御装置に送る。
またMPIOが“1”のときは、EAUにIOAC=
“1”としてメモリマツプトI/Oであることを
知らせる。
TTAGR110の情報は更に実アドレスを主記
憶制御装置に送るのと同時に送られる。このと
き、前記の様にメモリマツプトI/Oの場合には
M/IO情報は“0”でI/O空間を示す様にか
えられ、またV/R情報(仮想アドレスが実アド
レスかを示す信号)も“0”で実アドレスを示す
様にかえてTBUSに出力されて主記憶制御装置
に送られる。
主記憶制御装置は、送られた実アドレス及びタ
グ情報によりメモリ空間又はI/O空間をアクセ
スする。
M/IO情報がI/Oを示す時“0”は、実ア
ドレスをI/Oポートアドレスとして出力し、
I/O情報がメモリ空間を示す時“1”は、実ア
ドレスを主記憶アドレスとして出力し、メモリ空
間をアクセスする。
〔発明の効果〕
以上説明した様に、メモリマツプトI/O情報
をページ記述子を持たせて、それをTLB内にも
記憶させることにより中央処理装置内でメモリマ
ツプトI/Oを検出することができ、主記憶制御
装置は、I/O空間にマツプされたメモリオペラ
ンドアクセスをI/Oアクセスに切り換えて入出
力装置をアクセスすることが可能になる。これに
よりメモリアクセスとI/Oアクセスを分離する
ことにより、欠点(主記憶装置は高速化手法とし
てインターリーブ構成方式などが可能であるが入
出力装置では難しい)が解決される。すなわち、
入出力装置への高速化アクセス手法としては、主
記憶装置への高速化手法としてのインターリーブ
構成方式が採用し難いので、他の手法を採用する
必要があるが、本発明によれば、メモリマツプト
I/OであつてもI/Oアクセスとしてメモリア
クセスから分離されるので、I/Oアクセスのた
めの高速化手法が採用される。
また、実効アドレス計算部がTLBからメモリ
マツプトI/O情報を受け取ることにより、欠点
(ページング方式の仮想記憶方式を採用し且つバ
イト単位でオペランドアドレスを指定可能な中央
処理装置においては、オペランドが複数のページ
にまたがる場合があるが、メモリマツプトI/O
空間とメモリ空間とではページにまたがつた場合
の中央処理装置の動作が異なつてくる)が解決さ
れる。すなわち、ページング方式の仮想記憶方式
を採用し且つバイト単位でオペランドアドレスが
指定可能なものでは、オペランドが複数のページ
にまたがることがある。このとき、メモリアクセ
スでは、次ページの物理アドレスは必ずしも連続
していないので、次ページの先頭アドレスを計算
して物理アドレスを求めなければならないが、
I/Oアクセスならば次ページの先頭アドレスは
必ず連続しているので次ペーシの先頭アドレスを
計算する必要はない。本発明ではTLBからメモ
リマツプトI/O情報を受け取るので、メモリア
クセスかI/Oアクセスかが識別されて実行アド
レスの計算の計算の必要性が判定され、I/Oア
クセスであればアドレス計算が不必要と判定され
て高速処理が実現される。
【図面の簡単な説明】
第1図は、本発明の一実施例におけるアドレス
変換部のブロツク図、第2図は、本発明の実施例
における実効アドレス計算部のブロツク図、第3
図a,bは、夫々本発明の実施例におけるアドレ
ス変換テーブル、ページ記述子の構成を示す図、
第4図は、本発明の実施例における中央処理装置
の構成を示すブロツク図、第5図は、本発明の実
施例におけるタグバスの保持する情報を示す図、
第6図は、本発明の実施例における仮想アドレス
から実アドレスへの変換を現わす図、第7図は、
本発明の実施例における実効アドレス計算を現わ
すタイミングチヤートである。 11……バーチヤルアドレスレジスタ、12…
…連想メモリ、13……エンコーダ、14……デ
ータメモリ、15……リアルアドレスレジスタ、
16……レジスタ、17……デコーダ、18……
保護チエツク機構、110……アドレスバス、1
11……タグバス。

Claims (1)

    【特許請求の範囲】
  1. 1 ページング方式の仮想記憶方式を採用する中
    央処理装置において、主記憶アクセスとI/Oア
    クセスとを切り換える入出力制御信号を生成する
    とともに実効アドレスを生成する実効アドレス計
    算部、実アドレスとともに入出力制御信号を記憶
    し、前記実効アドレスによりアドレス変換時に実
    アドレスとともに入出力制御信号を呼び出すアド
    レス変換索引機構、及び前記入出力制御信号によ
    り主記憶アクセスとI/Oアクセスとを切り換え
    る主記憶制御装置を備え、前記実効アドレス計算
    部における実効アドレス計算時に、オペランドが
    複数のページにまたがり、且つアドレス変換索引
    機構から実アドレスとともに読み出した入出力制
    御信号が主記憶アクセスを示す場合には、次のペ
    ージの先頭アドレスの生成を行ない、オペランド
    が複数のページにまたがり、且つアドレス変換索
    引機構から実アドレスとともに読み出した入出力
    制御信号がI/Oアクセスを示す場合には、次の
    ページが先頭アドレスの生成を行なわない事を特
    徴とする実効アドレス計算装置。
JP60273916A 1985-12-04 1985-12-04 実効アドレス計算装置 Granted JPS62131351A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP60273916A JPS62131351A (ja) 1985-12-04 1985-12-04 実効アドレス計算装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP60273916A JPS62131351A (ja) 1985-12-04 1985-12-04 実効アドレス計算装置

Publications (2)

Publication Number Publication Date
JPS62131351A JPS62131351A (ja) 1987-06-13
JPH0557620B2 true JPH0557620B2 (ja) 1993-08-24

Family

ID=17534354

Family Applications (1)

Application Number Title Priority Date Filing Date
JP60273916A Granted JPS62131351A (ja) 1985-12-04 1985-12-04 実効アドレス計算装置

Country Status (1)

Country Link
JP (1) JPS62131351A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014156456A1 (ja) 2013-03-26 2014-10-02 日本碍子株式会社 ガラス-セラミックス複合材料

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2000070466A1 (fr) * 1999-05-17 2000-11-23 Technowave, Ltd. Procede d'acces a un dispositif e/s et une memoire utilisant une adresse virtuelle et support enregistre comportant un programme destine a executer le procede d'acces a un dispositif e/o et une memoire utilisant une adresse virtuelle
JP2019114303A (ja) * 2019-04-18 2019-07-11 株式会社エルイーテック 制御チップ及びこれを用いた遊技機

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014156456A1 (ja) 2013-03-26 2014-10-02 日本碍子株式会社 ガラス-セラミックス複合材料

Also Published As

Publication number Publication date
JPS62131351A (ja) 1987-06-13

Similar Documents

Publication Publication Date Title
US4236206A (en) Central processor unit for executing instructions of variable length
CA1114518A (en) Central processor unit for executing instructions with a special operand specifier
JPS59501684A (ja) 目的命令ストリ−ムへ殆んど実時間で插入するためのソ−スおよび目的命令ストリ−ムの外部における加速式命令写像
US4338663A (en) Calling instructions for a data processing system
JPH0193847A (ja) アドレス拡張方式
US4241399A (en) Calling instructions for a data processing system
JPS62164148A (ja) デ−タ処理システム
JPS61210477A (ja) ベクトル型連想メモリシステム
JPH027097B2 (ja)
JPH0557620B2 (ja)
KR900010587A (ko) 생산라인의 고성능 명령어 실행방법 및 장치
JP3190700B2 (ja) アドレス変換装置
US4737908A (en) Buffer memory control system
CA1114515A (en) Central processor unit for executing instructions of variable length
JPH0555906B2 (ja)
JP3043861B2 (ja) データ処理装置
JPH0235331B2 (ja)
JPS62278639A (ja) 情報処理装置
JPH01224851A (ja) データ処理装置
JPH0336647A (ja) キャッシュ・バッファリング制御方式
JPH01255933A (ja) 掃出し制御方式
JPS63271567A (ja) 非対称密結合マルチプロセツサシステム
JPH02285440A (ja) プリフェッチ制御方式
JPH0795270B2 (ja) 情報処理装置
JPS6073759A (ja) アドレス変換バッファ

Legal Events

Date Code Title Description
EXPY Cancellation because of completion of term