JPS6162952A - アドレス変換装置 - Google Patents

アドレス変換装置

Info

Publication number
JPS6162952A
JPS6162952A JP59184630A JP18463084A JPS6162952A JP S6162952 A JPS6162952 A JP S6162952A JP 59184630 A JP59184630 A JP 59184630A JP 18463084 A JP18463084 A JP 18463084A JP S6162952 A JPS6162952 A JP S6162952A
Authority
JP
Japan
Prior art keywords
matrix
address
bit
item
value
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
JP59184630A
Other languages
English (en)
Inventor
Takayoshi Iizuka
飯塚 孝好
Shizuo Goto
志津雄 後藤
Toyohiko Kagimasa
豊彦 鍵政
Shunichi Torii
俊一 鳥居
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.)
Hitachi Ltd
Original Assignee
Hitachi 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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP59184630A priority Critical patent/JPS6162952A/ja
Publication of JPS6162952A publication Critical patent/JPS6162952A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Memory System Of A Hierarchy Structure (AREA)

Abstract

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

Description

【発明の詳細な説明】 〔発明の利用分野〕 本発明は仮想記憶装置を持つ情報処理装置に係り、特に
実記憶装置の容量を遥かに超えるような超巨人な行列の
実際的に有効な部分のデータのみを記憶するのに好適な
アドレス変換装置に関する。
〔発明の背景〕
行列を、非零成分の−5)布のし方によって分類すると
、第1図a −dのように4つに分類することが出来る
。一般に、数値シミュレーションにおいては、密行列が
使オ〕れることは僅かであり、帯行列、規則的スパース
行列、不規則スパース行列などが使われる。これらの行
列においては、各行。
各列車りの非零成分の数は問題の大きさに依らずほぼ−
・定であり5行列全体に対する非零成分の数の割合は、
行列の次数に比例して減少する。従来は、1次元の仮想
空間1・に、行il1位又は列単位で行列全体を割り当
てており、2次斤の対象である行列から1次元の仮想空
間へのアドレス変換はブ1−Jグラ15で行っていた。
このような方法では、次のような問題点があった。すな
わち、行列から仮想空間へのアドレス変換をプログラム
で行っていたため、そのための演算をも行う必要があり
、処理量を増加させていた。行単位2列車位では、ペー
ジ当りの非零成分の割合が非常に少なく、また全てのデ
ータがOであるページも、データの値を保持する必要が
あり、無駄が多かった。このため、非零成分の数はあま
り大きくないにもかかわらず、10″’Xl06などと
いう超巨大行列を直接扱うことが出来なかった。
ここで、従来のアドレス変換の機構については、IBM
マニュアルG A 22−7000−8“System
370 Pr1nciples of 0peratj
on” (1981年10月)に述べられている。
〔発明の目的〕
本発明の目的は、超巨大行列を扱う際の無駄をなくし、
超巨大行列を直接扱えるアドレス変換機構を提供するこ
とである。
〔発明の概要〕
超巨大行列の使用法を調べてみると、密行列以外の行列
では、第1図のように、非零成分が主に対角線方向に分
布している。そこで、Oをデータとして保持しないで済
ますためには、行列の対角線方向のデータの集まりを単
位としてデータを記憶保持すれば良い。しかしながら、
従来の様にプログラムが行列から一次元の仮想空間ヘア
ドレス変換した後でこれらを行うのは、無駄である。む
しろ、行列の成分を行と列を単位として参照した方が自
然である。また、行列以外のデータに対しては従来通り
のアドレス変換が適当と思われる。
そこで、本発明においては、アドレスを、行列向はアド
レス変換モードを表わすビットと、行列を識別する番号
ど行と列とに分けて考えることにした。即ち、第2図a
、bのようにアドレスを表わすピッl−列を分割し、最
上位ビットが1のときのみ行列向はアドレス変換を行い
、残りのM X、 N 。
RX及びCXで行列の番号9行及び列をそれぞれ表オ〕
すものとした。そして、対角線方向のデータの壊まりを
1つのセグメントとして扱うためには、RX−CX(行
と列の番号の差)が同じもの全体を1つのセグメントと
すれば良い。また、全てが0であるセグメントやページ
に対するデータを保持しないで済ますためには、各セグ
メン1〜.ページにそのセグメントまたはページの内容
が全て0であることを示すビットを置けば良い。そして
、内容が全てOであるセグメン1〜又はページに対して
O以外の書込が起ったときには割込を起す様にしておけ
ば良い。更に、その様なページに対する読出しには0を
値として返し、0の書込は単に無視すれば良い。オペレ
ーティングシステムにおいては、該割込みが生じた時点
で実際のセグメントまたはページを割り当てれば良い。
〔発明の実施例〕
以下、本発明の一実施例を第3図〜第6図を用いて説明
する。
第3図及び第4図は、本発明を実施するための回路を示
す。第3図はアドレスを表わすビット列を実アドレスに
変換する回路であり、第4図はアドレスを表わすビット
列で指定された行列の行と列の上限・下限を超えた参照
を検出する回路である。
第3図について説明する。アドレスを表わすビット列1
はモードビット2と行列番号MXNと行番号RXと列番
号Cxより構成される。モードビット2が1のときは、
本発明のアドレス変換モード(行列変換モードと呼ぶ)
であることを、0のときはそうでないことを表わし、本
図では前者である。MTQは行列表MTの先頭アドレス
を値とするレジスタであり、MTQの内容はMXNと加
算されMT中の1つの項目3のアドレスを生成する。こ
の場合、項目3の長さに応じてM X、 Nに項目3の
長さを乗じておく必要があるが本図では省略しである。
項目3の長さとしては、2のベキ乗にしておくと、実際
に乗算を行う必要が無く効率が良い。
項目3において、フラグ■は本項目が使用不能であるこ
とを表わすビットであり、■が1のときは行列番号MX
Nに対応した行列に対するアドレス変換を行なわず、行
列指定例外割込(IMXN割込と呼ぶ)を処理装置に引
き起す。Lは行列の1成分当りの長さを表わし、L R
はRXの取り得る値の下限を表わし、URはRXの取り
得る値の上限を表わし、LCはCXの取り得る値の下限
を表わし、UCはCXの取り得る値の上限を表わす。フ
ィールド4はセグメント表4の中央のアドレスを表わす
。セグメント表STは該アドレスを中心とし、l RX
−CX l  (RXとCX (7)差の絶対値)の最
大値の2倍+1の項目が入る大きさを持つ。
一方、減算器5はRXとCxを人力としてRX−CX 
(RXとCXの差であり負の値も取り得る)を計算する
。減算器5の出力であるCarryはRXくCXである
事を表わし、Carry = 1のときは指定された行
列成分は上三角行列中にあり、Carry=0のときは
指定さおだ行列成分は対角線を除いた下三角行列中にあ
る。選択器では、RXとCXとCarryを入力として
、Carry=OのときはCXを出力とし、Carry
 = 1のときはRXを出力とする。この出力は、指定
された行列成分が、それを含む同一対角線上の全成分よ
り成るセグメントにおいて何番目であるかを表わすのに
使われる。
フィールド4の値と減算器よりの出力RX、 −CXは
、加算器6で加えられ、ST中の項目へのアドレスを生
成する。本図には書いてないが、RX、 −CXは項目
7の長さに応じて適当な値を乗じておく事が必要である
項目7において、フラグ■は本項目が使用不能である事
を表わすビットであり、■が1のときはアドレス変換を
中止して、セグメント変換例外(ISX割込と呼ぶ)割
込を処理装置に引き起す。
項目7において、フラグ2は本セグメント中の成分が全
てOである事を表わすビットであり、2=1のときはフ
ィールド8の値を使わずに、記憶装置へのアクセスの種
別に応じた処理を行う(これについては後述する)。Z
=0の時フィールド8はページテーブルPTの先頭のア
ドレスを保持しており、これは、選択器よりの出力9の
−1−位12ビット]0と加算器11で加算されてPT
の項目へのアト1ノス12を生成する。本図には示して
いないが、ビット列10はPTの項目の長さに応じて適
当な定数を乗じる必要がある。
アドレス12によって示されるPT中の項目13におい
て、フラグZおよびフラグ■はST中のZおよび工と同
様の意味を持ったビットであり、フィールド14はペー
ジの先頭のアドレスを保持する。
一方、選択器よりの出力9の下位にビット15は、行列
の成分の長さを表わすLの値に対応するビット数だけ左
にシフトされて、ページ中のデイスプレスメント16を
生成する。シフターの出力16はフィールド14と加算
器17によって加算され、実アドレス18を生成する。
次に第4図について説明する。MTQ、MT。
項番1,2および3については第3図と同様である。比
較器24,26.28および30は、行列の行および列
の値RXおよびCXが、下限と上限の間にあるかどうか
を検査するものである。比較器24はCXが、列の上限
UC以下である事を出力とし、比較器26は、CXが、
列の下限LC以上である事を出力とし、比較器28は、
RXが行の上限UR以下であることを出力とし、比較器
30は、RXが行の下限L R以上であることを出力と
する。これらの比較器よりの出力25,27゜29およ
び31は、ANDゲート32で論理積が取られて、出力
RN■1生ずる。RN Gは、RXおよびCXが、MX
Nで指定された行列の行および列の範囲内にあることを
示す。RNG=Oのときは、これを示すため行列指定例
外の割込を処理装置に引き起す。
第5図は、行列変換モートでの、記憶装置からの読込み
処理の処理手順を示したものである。この処理手順につ
いて説明する。
j)MXNによって指定されたMTの項目3中のフラグ
■がOであるか調べ(1)、偽ならば、MXNが行列を
指定する値として誤まっていることを示すTMXN割込
みを引き起す処理に移る(2)。(IMXN割込み処理
の詳細については、本図では省略する。)。条件が真な
らばjj)へ進′む。
11)加算器6の値で指定された項目7中のフラグ■の
値が0であるか調べ(3)、偽のときは、RXとCXの
組み合せによる対角線力面セグメントの指定が誤まって
いることを示すISX割込を引き起す処理に移る(4)
。(TSX割込処理の詳細についCは、本図では省略す
る。)条件が真のときは、iii )へ進む。
iii )項目7中のフラグZがOであるかを調べ(5
)、偽のときは、項目7に対応したセグメン1−の内容
は全て0.0 であることを示すので、0.0を読込み
値とする(6)。条件が真のときはiv)へ進む。
iv)加算器11の出力12によって指定された項目1
3中のフラグIがOであるかを調べ(7)、偽のどきは
、RXとCXの絹み合ぜによるページの指定が誤まって
いることを示すTPX割込を引き起す処理に移る(8)
。(IPX割込処理の詳細については、本図では省略す
る。)条件が真のときは、■)へ進む。
■)項目13中のフラグZが0であるかを刺入く9)、
偽のときは、項目13に対応したページの内容は全てO
20であることを示すので、(II) 0.0 を読込み値とする(10)。条件が真のときは
、加算器17の出力18で指定された部分よりデータを
Mi込み、これを読込み値とする(IN、、第6図は、
行列変換モードでの、記憶装置への書込み処理の処理手
順を示したものである。この処理手順に1いて説明する
j)読み込み処理と同じ。
ji )読み込み処理と同じ。
iii )項[17中のフラグZがOであるかを調べ(
5)、偽のときは、項目7に対応したセグメントの内容
は全てO、Oであることを示し、jv)へ進む。条e1
が偽のときは、■)へ進む。
1v)1F込値がC1、Oであるかどうかを調べ(6)
、真のときけ、内容が全て0.0 であるセグメントに
0.0 を書き込む事になるので、何も書き込まずに書
き込み処理を終了する(7)。条件が偽のときは、内容
が全て0.0 であるセグメントに0.0以外を書き込
もうとしたことを示すための例外N 7.88割り込み
を引き起す処理に移る(8)。(NZSS割り込みの詳
細については、本図では省略する。) ■)加算器11の出力12によって指定された項111
3中のフラグ■が0であるかを調べ(9)、偽のときは
、RXとCxの和み合せによるページの指定が誤まって
いることを示す1.1) X割込を引き起す処理に移る
(10)。(II)X割込処理の詳細については、本図
では省略する。)条件が真のときはvi)へ進む。
vj)項1−113中のフラグZがOであるかを調べ(
11)、貞のときは、加算器17の出力48で指定され
た部分へ指定された書込値を書き込む。
条件が真ならば、vii )へ進む。
vii )書込値が0.0 であるかどうかを調べ(j
3)、真のときは、内容が全て0.0であるページへO
oOに書き込む事になるので、何も書き込まずに書き込
み殻終了する(14)。条件が偽のときは、内容が全て
O、Oであるページに0.0以外の書き込もうとしたこ
とを示すための例外NZS+1割込を引き起す処理に移
る(15)。(NZSP割込の詳細に1いては、本図で
は省略する。)以−1−1本実施例の説明を行った。本
実施例によれば、次のような効果がある。
1、行列を行と列を単位としてアクセスでき、モートビ
ットの指定によって従来アドレス変換機構との互換性も
保てる。
2、指定された行と列が、行列ごとに定まったそれぞれ
の下限と−1−眼の間にあるかをハードウェア的に検査
できる。
3、Zフラグを用いることにより内容が全て0.0であ
るセグメントおよびページに対応するデータを保持せず
にすむ。
4.2フラグを用いることにより内容が全て0.0であ
るセグメン+−およびページよりの読み込み値は0.0
  になり、0.0 の書き込みは何もしないことにな
り、0.0以外の書き込みはNZSS割込みとNZSI
)割込みで検出できるので、必要にL2.・じて実ペー
ジを割り当てることが出来る。
5、行列表MT中に、行列の成分の長さを表わすフィー
ルド■、を持っているので、行列の成分の長さとして種
々の長さの行列に適用できる。
〔発明の効果〕
本発明によれば、行列を行と列を単位としてアクセスす
る機能と、指定された行と列が正しい範囲にあるかを検
査する機能と、行列の同一対角線方向成分の集まりを1
つのセグメントとして扱える機能と、全て同じ定数であ
るアドレス空間部分のデータを保持しないで保持してい
るように動作する機能があるので、超巨大行列を扱う際
に、非零成分データを行列の次数に比例した程度の大き
さの実記憶域を用いるだけで保持できるという効果があ
る。
【図面の簡単な説明】
第1図は、行列の非零成分の分布に従って行列を分類し
た模式図、第2図は、本発明のアドレスの表わし方を示
した説明図、第3図、第4図は、本発明の一実施例の回
路構成図、第5図及び第6図は、本発明の一実施例にお
ける記憶装置への読み込、書き込の処理手順を示す図で
ある。 ]・・・アドレス表現ビット列、MTO・・・MTの先
頭アドレス保持レジスタ、MT・・・行列ごと情報を保
持する表、5・・減算器、24.26,28.30手 
 続  補   正   書 昭和60年3月2011

Claims (1)

  1. 【特許請求の範囲】 1、仮想記憶装置を有する情報処理装置において、アド
    レス変換のために用いるアドレス変換テーデルの各エン
    トリに、該エントリに対応する仮想アドレス範囲に全て
    同一の定数が記録されていることを示すフラグを設け、
    当該仮想アドレス範囲に対して実アドレスを対応させる
    ことなく該定数の読出しと書込みを行う装置と、当該ア
    ドレス範囲に該定数以外の値の書込みを検出する装置と
    を有することを特徴とするアドレス変換装置。 2、仮想記憶装置を有する情報処理装置において、行列
    識別コード、行番号、列番号を表わすビットにより仮想
    アドレスを構成し、該行列の同一対角線方向の行列要素
    の集合を、1つの連続した実アドレスの領域に変換する
    手段を持つことを特徴とする特許請求の範囲第1項記載
    のアドレス変換装置。
JP59184630A 1984-09-05 1984-09-05 アドレス変換装置 Pending JPS6162952A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP59184630A JPS6162952A (ja) 1984-09-05 1984-09-05 アドレス変換装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP59184630A JPS6162952A (ja) 1984-09-05 1984-09-05 アドレス変換装置

Publications (1)

Publication Number Publication Date
JPS6162952A true JPS6162952A (ja) 1986-03-31

Family

ID=16156589

Family Applications (1)

Application Number Title Priority Date Filing Date
JP59184630A Pending JPS6162952A (ja) 1984-09-05 1984-09-05 アドレス変換装置

Country Status (1)

Country Link
JP (1) JPS6162952A (ja)

Similar Documents

Publication Publication Date Title
JP3562975B2 (ja) 集積回路設計方法及び集積回路設計装置
US3778776A (en) Electronic computer comprising a plurality of general purpose registers and having a dynamic relocation capability
US6684267B2 (en) Direct memory access controller, and direct memory access control method
CN114328315A (zh) 基于dma的数据预处理方法、dma部件及芯片结构
CN101939733A (zh) 外部设备存取装置、其控制方法及系统大规模集成电路
JPS6162952A (ja) アドレス変換装置
US20110107017A1 (en) Storage Apparatus and Data Access Method Thereof
US9552302B2 (en) Data processing apparatus, data processing method and program recording medium
US5802522A (en) Method and system of storing data blocks that have common data elements
JPS6143338A (ja) 連想技術を使用して稀薄なデータベースをサーチする方法
KR920008597A (ko) 마이크로 컴퓨터
JPH0325645A (ja) 仮想空間のスワッピング方式
JPS6168636A (ja) デ−タ処理装置
JP2895892B2 (ja) データ処理装置
JPH0553800A (ja) ベーシツク・インタプリタのスタツク演算処理方法
JPS6151268A (ja) デ−タ処理装置
KR20200082613A (ko) 프로세싱 시스템
JPS61109149A (ja) デ−タ処理装置
JPS5824822B2 (ja) デ−タメモリブロックのアクセス方法
JPH04266140A (ja) アドレス変換バッファ装置
JPS6061842A (ja) 構造体メモリのアクセス方式
JPH0269842A (ja) ガベージコレクション方式
JPS61217868A (ja) ベクトルデ−タアクセス制御方式
JPS5852773A (ja) 電子計算機のマトリクス転置方式
JPH04355878A (ja) 補助記憶装置を利用した連立1次方程式の解の高速計算方式