JPS628245A - 仮想記憶方式 - Google Patents
仮想記憶方式Info
- Publication number
- JPS628245A JPS628245A JP60147831A JP14783185A JPS628245A JP S628245 A JPS628245 A JP S628245A JP 60147831 A JP60147831 A JP 60147831A JP 14783185 A JP14783185 A JP 14783185A JP S628245 A JPS628245 A JP S628245A
- Authority
- JP
- Japan
- Prior art keywords
- data
- virtual
- address
- tag
- data type
- 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
Links
Landscapes
- Memory System Of A Hierarchy Structure (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
〔産業上の利用分野〕
本発明は仮想記憶方式に関し、特にタグを有するデータ
を処理する計算機システムにおける仮想記憶方式に関す
る。
を処理する計算機システムにおける仮想記憶方式に関す
る。
従来から計算機システムでは、実メモリ容量より大きな
アドレス空間でプログラムを実行するために仮想記憶方
式が採用され、プログラムから見える論理的なアドレス
空間(仮想空間)は、物理的な実メモリ容量で決まる実
アドレス空間(実空間)とは無関係に大きくすることが
可能になった(村岡洋−著:コンピュータアーキテクチ
ャ、近代科学社、コンピュータサイエンス大学講座、p
p。
アドレス空間でプログラムを実行するために仮想記憶方
式が採用され、プログラムから見える論理的なアドレス
空間(仮想空間)は、物理的な実メモリ容量で決まる実
アドレス空間(実空間)とは無関係に大きくすることが
可能になった(村岡洋−著:コンピュータアーキテクチ
ャ、近代科学社、コンピュータサイエンス大学講座、p
p。
77−90.1981)。
一方、従来の一般的な汎用計算機では命令とデータの区
別がなく、データの型はそのデータを処理するプログラ
ムによって規定される6例えば、あるデータのビットパ
ターンが文字を表わすのか数値を表わすのかは、そのデ
ータを処理するプロダラムの論理的な意味付けによって
異なる。したがって、データ型によってダイナミックに
処理を行なうためには、プログラムでデータ型の管理を
行なう必要があり、記述能力や性能の面で問題があった
。
別がなく、データの型はそのデータを処理するプログラ
ムによって規定される6例えば、あるデータのビットパ
ターンが文字を表わすのか数値を表わすのかは、そのデ
ータを処理するプロダラムの論理的な意味付けによって
異なる。したがって、データ型によってダイナミックに
処理を行なうためには、プログラムでデータ型の管理を
行なう必要があり、記述能力や性能の面で問題があった
。
そこで、データ型を表わすタグをデータに付加すること
により、データ自身に論理的な意味付けを行なうタグア
ーキテクチャが考えられた(G。
により、データ自身に論理的な意味付けを行なうタグア
ーキテクチャが考えられた(G。
J、 Myers : Advances in C
omputer Archi−tecture、 A
Willey −1nterscience pu
bli−cation+ pp、37−45.1978
)。
omputer Archi−tecture、 A
Willey −1nterscience pu
bli−cation+ pp、37−45.1978
)。
(発明が解決しようとする問題点〕
しかし、従来のデータ形式にタグを付加するには、計算
機の語長を拡張する、計算機の語長はそのままでデータ
の語長を短くする、あるいはデータを指すアドレス側に
そのデータ型を表わすタグを付加するなどの方式が考え
られるが、第1および第2の方式では、従来の計算機と
の互換性が悪く、ハードウェア資源の共有やデータの共
有等が難しくなるという欠点がある。
機の語長を拡張する、計算機の語長はそのままでデータ
の語長を短くする、あるいはデータを指すアドレス側に
そのデータ型を表わすタグを付加するなどの方式が考え
られるが、第1および第2の方式では、従来の計算機と
の互換性が悪く、ハードウェア資源の共有やデータの共
有等が難しくなるという欠点がある。
一方、第3の方式では、前述の仮想記憶方式の仮想アド
レスと付加されるタグのビット長の総和が従来の計算機
の語長より小さい場合はあまり問題はなかったが、仮想
空間の拡張によって仮想アドレスのビット幅が大きくな
るとタグを付加することができず、したがってタグを付
加するためには、仮想空間の大きさを制限しなければな
らないという欠点がある。
レスと付加されるタグのビット長の総和が従来の計算機
の語長より小さい場合はあまり問題はなかったが、仮想
空間の拡張によって仮想アドレスのビット幅が大きくな
るとタグを付加することができず、したがってタグを付
加するためには、仮想空間の大きさを制限しなければな
らないという欠点がある。
C問題点を解決するための手段〕
本発明の仮想記憶方式は、タグ付きデータを処理する中
央処理装置と、前記データを実アドレスで記憶するメイ
ンメモリと、前記データを仮想アドレスで記憶する2次
記憶装置と、前記タグが表わすデータ型に応じてそれぞ
れ異なるように前記2次記憶装置上に構成された複数の
仮想空間とを有する。
央処理装置と、前記データを実アドレスで記憶するメイ
ンメモリと、前記データを仮想アドレスで記憶する2次
記憶装置と、前記タグが表わすデータ型に応じてそれぞ
れ異なるように前記2次記憶装置上に構成された複数の
仮想空間とを有する。
次に、本発明について図面を参照して説明する。
第5図は本発明による仮想記憶方式の一実施例を示す概
略ブロック図である。
略ブロック図である。
タグ付きデータを処理する中央処理装置10は、実アド
レスでデータを記憶するメインメモリ20に接続されて
おり、メインメモリ20は仮想アドレスでデータを記憶
する2次記憶装230に接続されている。2次記憶装置
30上に記憶される仮想空間およびメインメモリ20上
に記憶される実空間は、いずれもページという単位に分
割されている。仮想空間上のページは、中央処理装置1
0によって必要に応じて実空間上のページにロードされ
、実アドレスによって中央処理装置10からアクセスさ
れる。
レスでデータを記憶するメインメモリ20に接続されて
おり、メインメモリ20は仮想アドレスでデータを記憶
する2次記憶装230に接続されている。2次記憶装置
30上に記憶される仮想空間およびメインメモリ20上
に記憶される実空間は、いずれもページという単位に分
割されている。仮想空間上のページは、中央処理装置1
0によって必要に応じて実空間上のページにロードされ
、実アドレスによって中央処理装置10からアクセスさ
れる。
このような仮想記憶方式は周知であり、ここではこれ以
上詳しく述べない。
上詳しく述べない。
本発明の仮想記憶方式では、仮想空間は第2図に示すよ
うにデータ型によって複数に分割されている。この分割
単位をセグメントと呼ぶ。データ型が2″個ある場合、
仮想空間は2″個に分割される。各セグメントは、前述
のページ単位にさらに小さく分割されている。
うにデータ型によって複数に分割されている。この分割
単位をセグメントと呼ぶ。データ型が2″個ある場合、
仮想空間は2″個に分割される。各セグメントは、前述
のページ単位にさらに小さく分割されている。
第2図のような仮想空間を構成するための仮想アドレス
の形式の一例を第3図に示す。この仮想アドレス110
は、タグ部120 、P I D (PageI de
nLification )部130およびオフセント
部140の3つの部分から構成されている。タグ部12
0は、仮想アドレス110で指されるデータのデータ型
を定義すると同時に、仮想空間上でのセグメント番号を
表わしている。PID部130は、タグ部120で示さ
れるセグメント内でのページ番号を表わしている。オフ
セット部140は、PID部130で示されるページ内
でのアドレス偏位を表わしている。
の形式の一例を第3図に示す。この仮想アドレス110
は、タグ部120 、P I D (PageI de
nLification )部130およびオフセント
部140の3つの部分から構成されている。タグ部12
0は、仮想アドレス110で指されるデータのデータ型
を定義すると同時に、仮想空間上でのセグメント番号を
表わしている。PID部130は、タグ部120で示さ
れるセグメント内でのページ番号を表わしている。オフ
セット部140は、PID部130で示されるページ内
でのアドレス偏位を表わしている。
第4図に、第3図の仮想アドレス110に対応して変換
された実アドレスの形式を示す。実アドレス210は、
RPN (Real Page Number)部22
0およびオフセット部230の2つの部分から構成され
ている。RPN部220は、実空間上でのページ番号を
表わしている。オフセット部230は、RPN部220
で示されるページ内でのアドレス偏位を表わし、第3図
のオフセット部140と同一のものになっている。
された実アドレスの形式を示す。実アドレス210は、
RPN (Real Page Number)部22
0およびオフセット部230の2つの部分から構成され
ている。RPN部220は、実空間上でのページ番号を
表わしている。オフセット部230は、RPN部220
で示されるページ内でのアドレス偏位を表わし、第3図
のオフセット部140と同一のものになっている。
一方、第3図に示したタグ部120は、中央処理装[1
0によりてデータ型が識別され、その情報はアクセスし
たデータを処理する屍に利用される。
0によりてデータ型が識別され、その情報はアクセスし
たデータを処理する屍に利用される。
第1図は中央処理装置10の内部ブロックの一例を示し
ている。制御部510は各ブロックを制御しており、デ
ータバスおよび制御パスによって各ブロックと接続され
ている。演算部520は、制御部510から入力される
データと制御情報とによりデータの演算を行なう、タグ
チェック部530は、制御部510から入力される仮想
アドレス110のタグ部120からデータ型を識別し、
データ型識別信号を制御部510に出力する。制御部5
10は、タグチェック部530から検出したデータ型識
別信号に従ってデータに対する処理を決定する。アドレ
ス変換部540は、制御部510から入力される仮想ア
ドレス110で示されるページがメインメモリ20にあ
るか否かを判定する。もしメインメモリ20にあれば、
仮想アドレス110を実アドレス210に変換し、もし
メインメモリ20になければ、ページフォールト信号を
制御部510に出力する。制御部510は、アドレス変
換部540からページフォールト信号を検出すると、ア
クセス要求のあったページを2次記憶装置30からメイ
ンメモリ20に転送し、第3図のタグ部120およびP
ID部130に対応させて第4図のRPN部220を割
り当てる。
ている。制御部510は各ブロックを制御しており、デ
ータバスおよび制御パスによって各ブロックと接続され
ている。演算部520は、制御部510から入力される
データと制御情報とによりデータの演算を行なう、タグ
チェック部530は、制御部510から入力される仮想
アドレス110のタグ部120からデータ型を識別し、
データ型識別信号を制御部510に出力する。制御部5
10は、タグチェック部530から検出したデータ型識
別信号に従ってデータに対する処理を決定する。アドレ
ス変換部540は、制御部510から入力される仮想ア
ドレス110で示されるページがメインメモリ20にあ
るか否かを判定する。もしメインメモリ20にあれば、
仮想アドレス110を実アドレス210に変換し、もし
メインメモリ20になければ、ページフォールト信号を
制御部510に出力する。制御部510は、アドレス変
換部540からページフォールト信号を検出すると、ア
クセス要求のあったページを2次記憶装置30からメイ
ンメモリ20に転送し、第3図のタグ部120およびP
ID部130に対応させて第4図のRPN部220を割
り当てる。
次に、実際にタグ付きデータが演算される過程を具体例
で示しながら説明する。ここでは、整数データと浮動少
数点数データの加算を実行する場合を示す。まず、演算
すべき第1のデータ(整数Xとする)を指す仮想アドレ
ス(VA+)をタグチェック部530に入力し、データ
型を識別する。
で示しながら説明する。ここでは、整数データと浮動少
数点数データの加算を実行する場合を示す。まず、演算
すべき第1のデータ(整数Xとする)を指す仮想アドレ
ス(VA+)をタグチェック部530に入力し、データ
型を識別する。
この場合、整数データを表わす信号< f ixnum
>が検出される0次に、演算すべき第2のデータ(浮
動少数点数Yとする)を指す仮想アドレス(VAz)を
同じくタグチェック部530に入力し、浮動少数点数デ
ータを表わす信号<fltnum>が検出される。
>が検出される0次に、演算すべき第2のデータ(浮
動少数点数Yとする)を指す仮想アドレス(VAz)を
同じくタグチェック部530に入力し、浮動少数点数デ
ータを表わす信号<fltnum>が検出される。
制御部510は、第1のデータ型識別信号<Hxnum
〉と第2のデータ型識別信号<fltnus>とを比較
して一致していないことを認識し、この場合、第1のデ
ータを浮動少数点数に変換することを決定する。そこで
、第1のデータを読み出すために仮想アドレスVA、を
アドレス変換部540に入力する。ここで、ページフォ
ールト信号が発生しないと仮定して、仮想アドレスV
A + に対する実アドレスRA + を得る。制御部
510は、実アドレスRAI によってメインメモリ2
0から第1のデータXを読み出し、次に整数Xを浮動少
数点数X′に変換する処理を行なう。浮動少数点数X′
は、例えば演算部520の内部レジスタなどに一旦格納
される。次に、制御部510は第2のデータを読み出す
ために仮想アドレス■A2をアドレス変換部540に入
力し、前述と同様にして実アドレスRA2を得た後、メ
インメモリ20から第2のデータYを読み出す。最後に
制御部510は、内部レジスタに格納されている浮動少
数点数X゛と続出した第2のデータYとの浮動少数点数
加算を演算部520に指示し、演算結果Zを浮動少数点
数データとして内部レジスタまたはメインメモリ20に
格納する。
〉と第2のデータ型識別信号<fltnus>とを比較
して一致していないことを認識し、この場合、第1のデ
ータを浮動少数点数に変換することを決定する。そこで
、第1のデータを読み出すために仮想アドレスVA、を
アドレス変換部540に入力する。ここで、ページフォ
ールト信号が発生しないと仮定して、仮想アドレスV
A + に対する実アドレスRA + を得る。制御部
510は、実アドレスRAI によってメインメモリ2
0から第1のデータXを読み出し、次に整数Xを浮動少
数点数X′に変換する処理を行なう。浮動少数点数X′
は、例えば演算部520の内部レジスタなどに一旦格納
される。次に、制御部510は第2のデータを読み出す
ために仮想アドレス■A2をアドレス変換部540に入
力し、前述と同様にして実アドレスRA2を得た後、メ
インメモリ20から第2のデータYを読み出す。最後に
制御部510は、内部レジスタに格納されている浮動少
数点数X゛と続出した第2のデータYとの浮動少数点数
加算を演算部520に指示し、演算結果Zを浮動少数点
数データとして内部レジスタまたはメインメモリ20に
格納する。
ここで注意すべきことは、仮想アドレスVA。
によって指される整数データXと、仮想アドレスV A
tによって指される浮動少数点数データYおよび演算
結果がメインメモリ20に格納される場合のZとは、仮
想空間上の別セグメント内に格納されていることである
。すなわち、各セグメントは1つの共通のデータ型をも
つデータで占有されている。このことは、データにタグ
を付加したにもかかわらず、仮想空間はタグを付加しな
かったときと同じ大きさを持つことができることを意味
する。
tによって指される浮動少数点数データYおよび演算
結果がメインメモリ20に格納される場合のZとは、仮
想空間上の別セグメント内に格納されていることである
。すなわち、各セグメントは1つの共通のデータ型をも
つデータで占有されている。このことは、データにタグ
を付加したにもかかわらず、仮想空間はタグを付加しな
かったときと同じ大きさを持つことができることを意味
する。
以上説明したように本発明は、タグが表わすデータ型に
よってそれぞれ異なる仮想空間を構成することにより、
タグを付加することで仮想空間を小さくする必要がない
仮想記憶方式を提供することができるという効果がある
。
よってそれぞれ異なる仮想空間を構成することにより、
タグを付加することで仮想空間を小さくする必要がない
仮想記憶方式を提供することができるという効果がある
。
第1図は本発明の仮想記憶方式における中央処理装置の
内部ブロック図、 第2図は仮想空間の構成図、 第3図は仮想アドレスの形式を示す図、第4図は実アド
レスの形式を示す図、 第5図は本発明の仮想記憶方式における構成を示すブロ
ック図である。 図において、 10・・・・・中央処理装置、 20・・・・・メインメモリ、 30・・・・・2次記憶装置、 110 ・・・・仮想アドレス、 120 ・・・・タグ部、 130 ・・・・P2O部、 140.230 ・・オフセット部、210 ・・
・・実アドレス、 220 ・・・・RPN部、 510 ・・・・制御部、 520 ・・・・演算部、 530 ・・・・タグチェック部、 540 ・・・・アドレス変換部である。 第 1 凹 第2 @
内部ブロック図、 第2図は仮想空間の構成図、 第3図は仮想アドレスの形式を示す図、第4図は実アド
レスの形式を示す図、 第5図は本発明の仮想記憶方式における構成を示すブロ
ック図である。 図において、 10・・・・・中央処理装置、 20・・・・・メインメモリ、 30・・・・・2次記憶装置、 110 ・・・・仮想アドレス、 120 ・・・・タグ部、 130 ・・・・P2O部、 140.230 ・・オフセット部、210 ・・
・・実アドレス、 220 ・・・・RPN部、 510 ・・・・制御部、 520 ・・・・演算部、 530 ・・・・タグチェック部、 540 ・・・・アドレス変換部である。 第 1 凹 第2 @
Claims (2)
- (1)タグ付データを処理する中央処理装置と、前記デ
ータを実アドレスで記憶するメインメモリと、 前記データを仮想アドレスで記憶する2次記憶装置と、 前記タグが表わすデータ型に応じてそれぞれ異なるよう
に前記2次記憶装置上に構成された複数の仮想空間と、 を有することを特徴とする仮想記憶方式。 - (2)前記中央処理装置が、データを指す仮想アドレス
の一部をタグとみなしてデータ型を識別するタグチェッ
ク手段と、仮想アドレスを実アドレスへ変換するアドレ
ス変換手段と、データの演算を行なう演算手段と、前記
各手段を制御する制御手段とを有することを特徴とする
特許請求の範囲第1項記載の仮想記憶方式。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP60147831A JPS628245A (ja) | 1985-07-04 | 1985-07-04 | 仮想記憶方式 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP60147831A JPS628245A (ja) | 1985-07-04 | 1985-07-04 | 仮想記憶方式 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPS628245A true JPS628245A (ja) | 1987-01-16 |
Family
ID=15439227
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP60147831A Pending JPS628245A (ja) | 1985-07-04 | 1985-07-04 | 仮想記憶方式 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPS628245A (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8708331B2 (en) | 2012-03-30 | 2014-04-29 | Brother Kogyo Kabushiki Kaisha | Sheet supplying apparatus |
US9268285B2 (en) | 2012-03-30 | 2016-02-23 | Brother Kogyo Kabushiki Kaisha | Image forming apparatus |
-
1985
- 1985-07-04 JP JP60147831A patent/JPS628245A/ja active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8708331B2 (en) | 2012-03-30 | 2014-04-29 | Brother Kogyo Kabushiki Kaisha | Sheet supplying apparatus |
US9268285B2 (en) | 2012-03-30 | 2016-02-23 | Brother Kogyo Kabushiki Kaisha | Image forming apparatus |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6470380B1 (en) | Signal processing device accessible as memory | |
EP0258736A2 (en) | Parallel computer with distributed shared memories and distributed task activating circuits | |
US5339417A (en) | Computer system with two levels of guests | |
US5802359A (en) | Mapping processor state into a millicode addressable processor state register array | |
US5459872A (en) | Software control of hardware interruptions | |
EP0381059A2 (en) | Arithmetic element controller | |
JPS628245A (ja) | 仮想記憶方式 | |
KR20230169684A (ko) | 프로세싱-인-메모리 컴퓨팅 시스템 및 그의 pim 연산 오프로딩 방법 | |
US5404549A (en) | Method for efficient access of data stored in a nexus table using queue tag indexes in a table portion | |
JPS6267648A (ja) | 排他制御命令処理方式 | |
JP2612173B2 (ja) | 仮想計算機 | |
JPS62150435A (ja) | デ−タ処理方式 | |
JP2895892B2 (ja) | データ処理装置 | |
JPH05334074A (ja) | マイクロプロセッサ | |
JPS63261430A (ja) | 情報処理方式および装置 | |
JPH04181454A (ja) | データアクセス制御装置 | |
JPH1196107A (ja) | リクエスト管理回路 | |
JPS63233431A (ja) | タグ付きデ−タ記憶制御方式 | |
JPS5960647A (ja) | メモリアクセス制御方式 | |
JPH01194055A (ja) | 並列計算機及びそのデータ転送方法 | |
JPS61202231A (ja) | マイクロプロセツサを有するデ−タ処理装置 | |
JPS60189043A (ja) | プロセツサ | |
JPS6134628A (ja) | タグ付計算機 | |
JPS6331816B2 (ja) | ||
JPS62186344A (ja) | アドレス・マツプド・レジスタ |