JPH045218B2 - - Google Patents

Info

Publication number
JPH045218B2
JPH045218B2 JP59246086A JP24608684A JPH045218B2 JP H045218 B2 JPH045218 B2 JP H045218B2 JP 59246086 A JP59246086 A JP 59246086A JP 24608684 A JP24608684 A JP 24608684A JP H045218 B2 JPH045218 B2 JP H045218B2
Authority
JP
Japan
Prior art keywords
address
conversion
page number
bits
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
JP59246086A
Other languages
Japanese (ja)
Other versions
JPS61125657A (en
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 filed Critical
Priority to JP59246086A priority Critical patent/JPS61125657A/en
Publication of JPS61125657A publication Critical patent/JPS61125657A/en
Publication of JPH045218B2 publication Critical patent/JPH045218B2/ja
Granted legal-status Critical Current

Links

Landscapes

  • Memory System Of A Hierarchy Structure (AREA)

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明は、アドレス変換方式に関し、特に仮想
記憶方式においてベクトル演算時に好適なアドレ
ス変換方式に関する。
DETAILED DESCRIPTION OF THE INVENTION [Field of Industrial Application] The present invention relates to an address translation method, and particularly to an address translation method suitable for vector operations in a virtual memory method.

〔従来の技術〕[Conventional technology]

近年、気象予測や原子力分野におけるシミユレ
ーシヨンや、資源探査分野における画像処理等
で、超高速科学技術計算機(スーパーコンピユー
タ)の必要性が増大してきている。
In recent years, the need for ultra-high-speed scientific and technological computers (supercomputers) has been increasing for weather prediction, simulation in the nuclear field, image processing in the resource exploration field, and the like.

スーパーコンピユータでは、配列状になつた多
量のデータの各組に対して同一演算を行なう、い
わゆるベクトル演算が主に実行される。配列状の
各要素は、比較的速度の遅い主記憶装置に蓄えら
れており、これを配列要素の先頭アドレス(B)と要
素間距離(D)とによつて、配列の行、列、対角方向
等(B+iD)(iは整数)に一定間隔で処理装置
に読み出し、演算処理後に同一又は別の番地に格
納される。取扱う配列データは一般に主記憶装置
の容量に比べて大きなものとなるため、プログラ
ム上での論理アドレスをアドレス変換表に従つて
実アドレスに変換して主記憶装置をアクセスす
る、いわゆる仮想記憶方式を採るのが一般的であ
る。
Supercomputers mainly perform so-called vector operations in which the same operation is performed on each set of a large amount of data arranged in an array. Each element in an array is stored in the main memory, which is relatively slow, and is divided into rows, columns, and pairs according to the start address of the array element (B) and the distance between elements (D). The data is read out to the processing device at regular intervals in the angular direction (B+iD) (i is an integer) and stored at the same or different address after arithmetic processing. Since the array data handled is generally larger than the capacity of the main memory, we use a so-called virtual memory method that converts logical addresses on the program into real addresses according to an address conversion table and accesses the main memory. It is common to take

アドレス変換を高速に行なうために、アドレス
変換バツフア(以下変換バツフアと略記する)を
設けて、主記憶装置に格納されているアドレス変
換表の写しを保持するようにしたものが多い。ベ
クトル演算を行なう処理装置の性能を向上させる
には、内部処理速度に見合つた主記憶装置へのア
クセスが重要となる。
In order to perform address translation at high speed, many devices are equipped with an address translation buffer (hereinafter abbreviated as translation buffer) to hold a copy of the address translation table stored in the main memory. In order to improve the performance of a processing device that performs vector operations, it is important to have access to the main memory that is commensurate with the internal processing speed.

従来、この種のアドレス変換方式は、同時に複
数の主記憶アクセスを行なうのに、変換セツトを
各アクセス毎に複数個設けて、複数ページに対す
るアドレス変換データを同時に読み出し、複数ペ
ージに及ぶ主記憶アクセスを同時に処理すること
によつて、主記憶装置とのデータスループツトの
向上をはかつている(例えば、特開昭57−57370
号公報)。
Conventionally, this type of address conversion method performs multiple main memory accesses at the same time by providing multiple conversion sets for each access, reading address conversion data for multiple pages simultaneously, and performing main memory accesses over multiple pages. By processing the data simultaneously, the data throughput with the main memory device is improved.
Publication No.).

〔発明が解決しようとする問題点〕[Problem that the invention seeks to solve]

このような従来構成においては、複数個の変換
セツトを備えることになるため、ハードウエアの
増量を招くというい欠点がある。また、従来、こ
の種の他のアドレス変換方式に、変換セツトを分
割し、アスセスをインタリーブして少ないハード
ウエア量で前述と同等に近い高価を狙つたものが
あるが、この様な構成では同時には1つのアドレ
ス変換しかできないという欠点があつた。
Such a conventional configuration has the disadvantage that it requires an increased amount of hardware because it includes a plurality of conversion sets. In addition, conventionally, other address translation methods of this type aim to achieve costs close to those described above with a small amount of hardware by dividing the translation set and interleaving the accesses. had the disadvantage that it could only perform one address translation.

本発明の目的は、ベクトル演算では同時に処理
すべきアクセスは同一方向に連続する数ページに
またがる場合が多いことに着目し、連続する数ペ
ージのアドレス変換を少ないハードウエアによつ
て同時に行なえるようなアドレス変換方式を提供
することにある。
The purpose of the present invention is to focus on the fact that in vector operations, accesses that must be processed simultaneously span several consecutive pages in the same direction, and to enable simultaneous address conversion of several consecutive pages using less hardware. The purpose of this invention is to provide an address translation method.

〔問題点を解決するための手段及び作用〕[Means and actions for solving problems]

本発明の方式は、プログラムでアクセス可能な
論理アドレス空間を論理アドレスの上位Sビツト
により部分空間に分割し、各部分空間はひきつづ
くMビツトとNビツトとによつてページに等分割
され、前記各部分空間に対応して前記Nビツトの
内容を同一とする前記ページに対する2のM乗数
個のアドレス変換データの一部もしくは全部を格
納する2のN乗数個の変換バツフアを含む2のS
乗個の変換セツトと、前記Mビツトの内容と
“1”とを少なくとも加算または減算する少なく
とも1個の演算器と、少なくとも前記Nビツトの
内容に基づいて前記各変換セツトの前記各変換バ
ツフア対応の第1の切替信号を発生する第1のア
ドレス調整回路と、前記第1の切替信号に応答し
て前記Mビツトの内容または前記演算器出力のい
ずれかを受け入れて前記各変換セツトの各変換バ
ツフアへの検索アドレスとする前記変換バツフア
対応の第1の切替器と、少なくとも前記Sビツ
ト、MビツトとNビツトの内容に基づいて前記各
変換バツフア対応の第2の切替信号を発生する第
2のアドレス調整回路と、前記第2の切替信号に
応答して前記各変換バツフア対応に前記各変換セ
ツトからの変換済アドレスを切替える第2の切替
器とを設け、前記論理アドレスによつて指定され
るページからの連続する2のN状数個のページに
対する実ページアドレスを一挙に得るようにした
ことを特徴とする。
The system of the present invention divides a program-accessible logical address space into subspaces according to the upper S bits of the logical address, and each subspace is equally divided into pages according to successive M bits and N bits. 2 S including 2 N conversion buffers storing part or all of 2 M address conversion data for the page having the same N bit contents corresponding to each subspace.
at least one arithmetic unit that adds or subtracts "1" from the contents of the M bits; a first address adjustment circuit that generates a first switching signal; and a first address adjustment circuit that receives either the contents of the M bits or the output of the arithmetic unit in response to the first switching signal to adjust each conversion of each conversion set. a first switch corresponding to the conversion buffer, which is used as a search address for the buffer; and a second switch, which generates a second switching signal corresponding to each conversion buffer based on at least the contents of the S bit, M bit, and N bit. and a second switch for switching the converted address from each of the conversion sets corresponding to each of the conversion buffers in response to the second switching signal, The present invention is characterized in that the real page addresses for 2N consecutive pages from the page are obtained all at once.

〔実施例〕〔Example〕

次に本発明について図面を参照して説明する。 Next, the present invention will be explained with reference to the drawings.

第1図は本発明の一実施例を示すブロツク図
で、本実施例はアドレスレジスタ1と、アクセス
方向情報レジスタ2と、演算器3と、第1のアド
レス調整回路4と、第2のアドレス調整回路5
と、4個の第1の切替回路50,51,52及び
53と、4個の変換バツフア60,61,62、
及び63を1組とするアドレス変換セツト6と、
4個の変換バツフア70,71,72、及び73
を1組とするアドレス変換セツト7と、4個の第
2の切替回路80,81,82、及び83とから
構成される。
FIG. 1 is a block diagram showing an embodiment of the present invention. This embodiment includes an address register 1, an access direction information register 2, an arithmetic unit 3, a first address adjustment circuit 4, and a second address adjustment circuit 4. Adjustment circuit 5
, four first switching circuits 50, 51, 52 and 53, and four conversion buffers 60, 61, 62,
and 63 as one set, and
4 conversion buffers 70, 71, 72, and 73
The address conversion set 7 is composed of one set, and four second switching circuits 80, 81, 82, and 83.

アドレスレジスタ1には、プログラム上で設定
可能な218個の論理アドレスを指定できるように
18ビツトの論理アドレス信号が処理装置(図示せ
ず)によつて設定可能である。論理アドレス信号
のうち上位から1ビツト、5ビツト、2ビツト及
び10ビツトは、それぞれ部分空間番号S、第1の
ページ番号M、第2のページ番号N及びページ内
アドレスAを表わしている。すなわち論理アドレ
ス空間は、2個の部分空間(以下、これらを第1
の部分空間及び第2の部分空間と称す)に分割さ
れ、1つの部分空間は128個のページに、さらに
1ページは1024アドレスに分割されている。
Address register 1 can now specify 2 to 18 logical addresses that can be set on the program.
An 18-bit logical address signal is configurable by a processing unit (not shown). The 1st bit, 5th bit, 2nd bit, and 10th bit from the higher order of the logical address signal represent a subspace number S, a first page number M, a second page number N, and an intra-page address A, respectively. In other words, the logical address space consists of two subspaces (hereinafter referred to as the first
(referred to as a subspace and a second subspace), one subspace is divided into 128 pages, and one page is further divided into 1024 addresses.

部分空間は部分空間番号Sによつて指定され、
アドレス変換セツト6は、第1の部分空間に対す
るアドレス変換データを格納し、アドレス変換セ
ツト7は、第2の部分空間に対するアドレス変換
データを格納する。すなわちアドレス変換セツト
6及びアドレス変換セツト7は、部分空間番号S
が“0”及び“1”となる部分空間に対応してい
る。
A subspace is designated by a subspace number S,
Address translation set 6 stores address translation data for the first subspace, and address translation set 7 stores address translation data for the second subspace. That is, address translation set 6 and address translation set 7 have subspace number S.
corresponds to the subspace where is "0" and "1".

ページは第1のページ番号Mと、第2のページ
番号Nとで指定され、変換バツフア60,61,
62及び63のそれぞれは、第1の部分空間にお
けるNを同一とするページに対する2のM乗数個
のアドレス変換データを格納し、変換バツフア7
0,71,72及び73のそれぞれは、第2の部
分空間におけるNを同一とするページに対する2
のM乗数個のアドレス変換データを格納する。す
なわち変換バツフア60及び70は第2のページ
番号Nが“0”となるページ群(32ページからな
る)に、変換バツフア61及び71は第2のペー
ジ番号Nが“1”となるページ群に、変換バツフ
ア62及び72は第2のページ番号Nが“2”と
なるページ群に、変換バツフア63及び73は第
2のページ番号Nが“3”となるページ群に対応
している。
A page is designated by a first page number M and a second page number N, and conversion buffers 60, 61,
Each of 62 and 63 stores address translation data of M multipliers of 2 for the same page N in the first subspace, and converts the translation buffer 7
0, 71, 72 and 73 are 2 for pages with the same N in the second subspace.
M multiplier address translation data is stored. That is, the conversion buffers 60 and 70 convert the page group (consisting of 32 pages) whose second page number N is "0", and the conversion buffers 61 and 71 convert the page group whose second page number N is "1". , conversion buffers 62 and 72 correspond to a page group whose second page number N is "2," and conversion buffers 63 and 73 correspond to a page group whose second page number N is "3."

第2図は本実施例における論理アドレスと実ア
ドレスとの関係を示す。部分空間番号Sと第1の
ページ番号Mと第2のページ番号Nとで表現され
る論理ページ番号LPは、実ページ番号RPにアド
レス変換され、この実ページ番号RPとページ内
アドレスA(論理アドレスのものと同一)とによ
つて主記憶装置(図示せず)を直接にアクセスで
きるようになる。このアドレス変換を行うことに
よつて、主記憶装置が32ページ分の容量であるに
もかかわらず、同時に必要な32ページ以下のペー
ジを主記憶装置にロードしておけば、プログラム
上はあたかも各々が128ページからなる2つの部
分空間があるかのようにデータを扱うことができ
る。
FIG. 2 shows the relationship between logical addresses and real addresses in this embodiment. A logical page number LP expressed by a subspace number S, a first page number M, and a second page number N is converted into a real page number RP, and this real page number RP and intra-page address A (logical (identical to that of the address) allows direct access to the main memory (not shown). By performing this address conversion, even though the main memory has a capacity of 32 pages, if you load the required 32 pages or less into the main memory at the same time, the program will be able to load each page as if each The data can be treated as if there were two subspaces each consisting of 128 pages.

上記のようなアドレス変換を行うためのアドレ
ス変換データは、プログラムやデータ等と共に、
主記憶装置に格納されている。このアドレス変換
データの第1の部分空間に対するアドレス変換デ
ータの第2のページ番号Nを同一とする32個のア
ドレス変換データが、それぞれ高速メモリで構成
される変換バツフア60,61,62及び63の
アドレス変換セツト6に、主記憶装置から予めロ
ードされている。同様に、第2の部分空間に対す
るアドレス変換データも、変換バツフア70,7
1,72及び73のアドレス変換セツト7に予め
ロードされている。
The address conversion data for performing the above address conversion, along with programs and data, are
Stored in main memory. 32 pieces of address translation data having the same second page number N of the address translation data for the first subspace of the address translation data are stored in translation buffers 60, 61, 62, and 63, each consisting of a high-speed memory. Address translation set 6 is preloaded from main memory. Similarly, the address conversion data for the second subspace is also transferred to the conversion buffers 70, 7.
1, 72 and 73 are preloaded into address translation set 7.

さて、処理装置はプログラムに沿つて主記憶装
置内の命令を読み出して解読し、オペランドデー
タを読み出して演算処理を行つた後に、該演算結
果を必要ならば主記憶装置に格納するという一連
のデータ処理を行う。これらのデータ処理の過程
において、主記憶装置へのアクセスを必要とする
たびごとに、前述のようなアドレス変換が行なわ
れることになる。
Now, the processing unit reads and decodes the instructions in the main memory according to the program, reads the operand data, performs arithmetic processing, and then stores the result of the operation in the main memory if necessary. Perform processing. In the process of processing these data, the address conversion described above is performed every time it is necessary to access the main memory.

ベクトル演算の場合には、同一演算の対象デー
タが複数ページに及ぶことが多いので、処理装置
は一挙にアクセスすべき要素の先頭論理アドレス
信号をアドレスレジスタ1に設定するとともに、
アクセス方向情報レジスタ2にアクセス方向情報
を設定する。アクセス方向情報は、アドレスレジ
スタ1に設定された論理アドレス信号のうち、部
分空間番号Sと第1のページ番号Mと第2のペー
ジ番号Nとによつて指定されるページとともにア
ドレス変換が行なわれるべきページを指定するた
めに使用される。
In the case of vector operations, the target data for the same operation often spans multiple pages, so the processing device sets the first logical address signal of the elements to be accessed all at once in the address register 1, and
Access direction information is set in the access direction information register 2. The access direction information is subjected to address translation along with the page specified by the subspace number S, the first page number M, and the second page number N among the logical address signals set in the address register 1. Used to specify the page that should be displayed.

第3−1図及び第3−2図は、このことを理解
ならしめるための図であり、第3−1図はアクセ
ス方向情報がプラス、第3−2図はアクセス方向
情報がマイナスの場合にそれぞれ対応している。
第3−1図及び第3−2図における数字0、1、
2及び3のそれぞれは、第2のページ番号Nの値
であり、アドレス変換セツト6においては、順に
変換バツフア60,61,62及び63が対応
し、アドレス変換セツト7においては、順に変換
バツフア70,71,72及び73が対応してい
る。また記号X−1、X、及びX+1は、第1の
ページ番号Mの値を示すものとする。数字0、
1、2または3と、記号X−1、X、またはX+
1とで指定されるアドレスは、各アドレス変換セ
ツトにおける特定のページに対する実ページ番号
のアドレスである。記号LPはアクセスすべき先
頭要素の論理ページ番号を示し、“LP”、“LP+
1”、“LP+2”、及び“LP+3”は昇順の連続
する4ページを、“LP”、“LP−1”、“LP−2”、
及び“LP−3”は降順の連続する4ページを示
す。X(0)、X(1)、X(2)、及びX(3)は数字0、
1、2及び3に対応する変換バツフアを示す。
Figures 3-1 and 3-2 are diagrams to help you understand this. Figure 3-1 shows the case where the access direction information is positive, and Figure 3-2 shows the case where the access direction information is negative. corresponds to each.
Numbers 0, 1 in Figures 3-1 and 3-2,
2 and 3 are the values of the second page number N, and in address translation set 6, translation buffers 60, 61, 62, and 63 correspond in order, and in address translation set 7, translation buffer 70 corresponds in order. , 71, 72 and 73 correspond. Further, symbols X-1, X, and X+1 indicate the value of the first page number M. number 0,
1, 2 or 3 and the symbol X-1, X or X+
The address designated by 1 is the address of the real page number for a particular page in each address translation set. The symbol LP indicates the logical page number of the first element to be accessed.
1", "LP+2", and "LP+3" represent four consecutive pages in ascending order, "LP", "LP-1", "LP-2",
and "LP-3" indicate four consecutive pages in descending order. X(0), X(1), X(2), and X(3) are the numbers 0,
1, 2 and 3 are shown.

第3−1図において、第2のページ番号Nが
“2”であるページがアドレスレジスタ1に、か
つアクセス方向情報としてプラスがアクセス方向
情報レジスタ2に設定された場合、先頭要素の論
理ページ番号“LP”に対する実ページ番号がX
(2)の変換バツフアの“X”で指定されるアドレス
から、論理ページ番号“LP+1”に対する実ペ
ージ番号がX(3)の変換バツフアの“X”で指定さ
れるアドレスから、論理ページ番号“LP+2”
に対する実ページ番号がX(0)の変換バツフア
の“X+1”で指定されるアドレスから、論理ペ
ージ番号“LP+3”に対する実ページ番号がX
(1)の変換バツフアの“X+1”で指定されるアド
レスから読み出されることを示す。第2のページ
番号Nが“0”、“1”及び“3”の場合について
も第3−1図より容易に理解される。
In Figure 3-1, if a page with a second page number N of "2" is set in address register 1, and plus is set as access direction information in access direction information register 2, then the logical page number of the first element The actual page number for “LP” is X
From the address specified by "X" of the conversion buffer in (2), the real page number for the logical page number "LP+1" is X (3) From the address specified by "X" in the conversion buffer, the logical page number " LP+2”
From the address specified by "X+1" of the conversion buffer where the real page number for logical page number "LP+3" is X (0), the real page number for logical page number "LP+3" is
Indicates that data is read from the address specified by "X+1" of the conversion buffer in (1). The cases where the second page number N is "0", "1", and "3" are also easily understood from FIG. 3-1.

第3−2図は、第3−1図のそれぞれが、マイ
ナスのアクセス方向情報が与えられた場合を示す
点が異なる。たとえば、第2のページ番号Nが
“1”の場合、連続する4ページ“LP”、“LP−
1”、“LP−2”及び“LP−3”に対する実ペー
ジ番号が、変換バツフアX(1)、X(0)、X(3)及び
X(2)のそれぞれ順に“X”、“X”、“X−1”及び
“X−1”で指定されるアドレスから読み出され
ることを示す。第2のページ番号Nが“0”、
“2”及び“3”の場合についても同様にして、
第3−2図より理解することができる。
Fig. 3-2 differs from Fig. 3-1 in that each shows a case where negative access direction information is given. For example, if the second page number N is "1", four consecutive pages "LP", "LP-"
The actual page numbers for "1", "LP-2" and "LP-3" are "X" and "X" for conversion buffers X(1), X(0), X(3) and X(2), respectively. ”, “X-1”, and “X-1” indicate that the page is read from the address specified. The second page number N is “0”,
Similarly for cases of “2” and “3”,
This can be understood from Figure 3-2.

上記の説明において、アドレス変換セツト6が
使用されるかアドレス変換セツト7が使用される
かは、部分空間番号Sによつて決まるが、先頭要
素の論理ページ番号及びアクセス方向により、連
続する4ページが部分空間の境界をまたぐ場合が
ある。この場合におけるアドレス変換方式が本発
明の最も特徴とするところであり、第4−1図及
び第4−2図はこの理解を容易ならしめるための
図である。第4−1図はアクセス方向情報がプラ
ス、第4−2図はアクセス方向情報がマイナスの
場合にそれぞれ対応している。前記第4−1図及
び第4−2図において、S、M及びNの値はそれ
ぞれ部分空間番号S、第1のページ番号M及び第
2のページ番号Nの値を示している。X(0)、X
(1)、X(2)及びX(3)は、順にNの値“0”、“1”、
“2”及び“3”に対応する変換バツフアを示し
ている。
In the above explanation, whether address translation set 6 or address translation set 7 is used is determined by the subspace number S, but depends on the logical page number of the first element and the access direction. may cross subspace boundaries. The address conversion method in this case is the most distinctive feature of the present invention, and FIGS. 4-1 and 4-2 are diagrams to facilitate understanding. FIG. 4-1 corresponds to the case where the access direction information is positive, and FIG. 4-2 corresponds to the case where the access direction information is negative. In FIGS. 4-1 and 4-2, the values of S, M, and N indicate the values of the subspace number S, the first page number M, and the second page number N, respectively. X(0),X
(1), X(2) and X(3) are the values of N “0”, “1”,
Conversion buffers corresponding to "2" and "3" are shown.

第4−1図において、部分空間番号Sの値とし
て“0”が、第1のページ番号Mの値として31
が、第2のページ番号Nの値として“2”である
ページがアドレスレジスタ1に、かつアクセス方
向情報としてプラスがアクセス方向情報レジスタ
2に設定された場合、先頭要素の論理ページ番号
“LP”に対する実ページ番号が変換バツフア62
の“31”で指定されるアドレスから、論理ページ
番号“LP+1”に対する実ページが変換バツフ
ア63の“31”で指定されるアドレスから、論理
ページ番号“LP+2”に対する実ページ番号が
変換バツフア70の“0”で指定されるアドレス
から、論理ページ番号“LP+3”に対する実ペ
ージ番号が変換バツフア71の“0”で指定され
るアドレスから読み出されることを示す。つまり
論理ページ番号“LP”及び“LP+1”に対する
実ページ番号はアドレス変換セツト6により、論
理ページ番号“LP+2”及び“LP+3”に対す
る実ページはアドレス変換セツト7により変換さ
れることになる。部分空間番号Sの値が“0”
で、第1のページ番号Mの値が“31”で、第2の
ページ番号Nの値が“0”、“1”、及び“3”の
場合についても、第4−1図より容易に理解され
る。
In Figure 4-1, "0" is the value of the subspace number S, and 31 is the value of the first page number M.
However, if a page whose second page number N value is "2" is set in address register 1, and plus is set as access direction information in access direction information register 2, the logical page number of the first element is "LP". The actual page number for the conversion buffer 62
From the address specified by “31” in the conversion buffer 63, the real page for the logical page number “LP+1” is converted from the address specified by “31” in the conversion buffer 63, and the real page number for the logical page number “LP+2” is converted from the address specified by “LP+2” in the conversion buffer 70. This indicates that the real page number for the logical page number “LP+3” is read from the address specified by “0” of the conversion buffer 71 from the address specified by “0”. In other words, the real page numbers for logical page numbers "LP" and "LP+1" are translated by address translation set 6, and the real pages for logical page numbers "LP+2" and "LP+3" are translated by address translation set 7. The value of subspace number S is “0”
Also, when the value of the first page number M is "31" and the values of the second page number N are "0", "1", and "3", it is easy to understand from Figure 4-1. be understood.

第4−2図は、第4−1図と、マイナスのアク
セス方向情報を与えられ、連続する4ページが部
分空間の境界をまたぐ場合を示す点が異なる。た
とえば、部分空間番号Sの値として“1”が、第
1のページ番号Mの値として“0”が、第2のペ
ージ番号Nの値として“1”がアドレスレジスタ
1に、かつアクセス方向情報としてマイナスがア
クセス方向情報レジスタ2に設定された場合、先
頭要素の論理ページ番号“LP”に対する実ペー
ジ番号が変換バツフア71の“0”で指定される
アドレスから、論理ページ番号“LP−1”に対
する実ページ番号が変換バツフア70の“0”で
指定されるアドレスから、論理ページ番号“LP
−2”に対する実ページ番号が変換バツフア63
の“31”で指定されるアドレスから、論理ページ
番号“LP−3”に対する実ページ番号が変換バ
ツフア62の“31”で指定されるアドレスから読
み出されることを示す。つまり、論理ページ番号
“LP”及び“LP−1”に対する実ページ番号は
アドレス変換セツト7により、論理ページ番号
“LP−2”及び“LP−3”に対する実ページ番
号はアドレス変換セツト6により変換されること
を示している。部分空間番号Sの値が“1”で、
第1のページ番号Mの値が“0”で、第2ページ
番号Nの値が“0”、“2”及び“3”の場合につ
いても、第4−2図より容易に理解される。
FIG. 4-2 differs from FIG. 4-1 in that it shows a case where negative access direction information is given and four consecutive pages straddle the boundary of the subspace. For example, if "1" is the value of the subspace number S, "0" is the value of the first page number M, "1" is the value of the second page number N, and the access direction information is When a minus value is set in the access direction information register 2, the real page number for the logical page number "LP" of the first element is changed from the address specified by "0" of the conversion buffer 71 to the logical page number "LP-1". The real page number for the conversion buffer 70 is changed from the address specified by “0” to the logical page number “LP”.
The actual page number for “-2” is the conversion buffer 63
This indicates that the real page number for the logical page number "LP-3" is read from the address designated by "31" of the conversion buffer 62. In other words, the real page numbers for logical page numbers "LP" and "LP-1" are translated by address translation set 7, and the real page numbers for logical page numbers "LP-2" and "LP-3" are translated by address translation set 6. This indicates that the The value of subspace number S is “1”,
The case where the value of the first page number M is "0" and the values of the second page number N are "0", "2", and "3" is also easily understood from FIG. 4-2.

以上、第4−1図及び第4−2図において説明
したように、連続する4ページの論理ページ番号
が第1の部分空間と第2の部分空間の境界をまた
いでも、一挙に実ページ番号が得られることにな
る。
As explained above in Figures 4-1 and 4-2, even if the logical page numbers of four consecutive pages cross the boundary between the first subspace and the second subspace, the real page numbers will be changed all at once. will be obtained.

再び第1図を参照すると、演算器3は、アクセ
ス方向情報レジスタ2に設定されたアクセス方向
情報がプラスのときに、アドレスレジスタ1に設
定された第1のページ番号Mの値に“1”を加算
し、アクセス方向情報がマイナスのときに、第1
のページ番号Mの値から“1”を減算し、これら
の演算結果は第1の切替回路50,51,52及
び53のそれぞれに供給される。
Referring again to FIG. 1, when the access direction information set in the access direction information register 2 is positive, the arithmetic unit 3 sets "1" to the value of the first page number M set in the address register 1. and when the access direction information is negative, the first
"1" is subtracted from the value of the page number M, and the results of these calculations are supplied to each of the first switching circuits 50, 51, 52, and 53.

第1のアドレス調整回路4は、方向情報レジス
タ2に設定されたアクセス方向情報とアドレスレ
ジスタ1に設定された第2のページ番号Nの値に
基づいて、第1の切替回路50〜53対応に切替
信号を発生して、第1の切替回路50〜53に供
給する。第1の切替回路50〜53のそれぞれ
は、この切替信号に応答して、第1のページ番号
Mの値と演算器3の値を選択して受け入れる。第
1の切替回路50の出力は変換バツフア60及び
70に供給され、第1の切替回路51の出力は変
換バツフア61及び71に供給され、第1の切替
回路52の出力は変換バツフア62及び72に供
給され、第1切替回路53の出力は変換バツフア
63及び73に供給される。
The first address adjustment circuit 4 adjusts the response to the first switching circuits 50 to 53 based on the access direction information set in the direction information register 2 and the value of the second page number N set in the address register 1. A switching signal is generated and supplied to the first switching circuits 50-53. Each of the first switching circuits 50 to 53 selects and accepts the value of the first page number M and the value of the arithmetic unit 3 in response to this switching signal. The output of the first switching circuit 50 is supplied to conversion buffers 60 and 70, the output of the first switching circuit 51 is supplied to conversion buffers 61 and 71, and the output of the first switching circuit 52 is supplied to conversion buffers 62 and 72. The output of the first switching circuit 53 is supplied to conversion buffers 63 and 73.

変換バツフア60及び70においては、第1の
切替回路50の出力によつて指定されるアドレス
から実ページ番号が読み出され、第2の切替回路
80に供給される。変換バツフア61及び71に
おいては、第1の切替回路51の出力によつて指
定されるアドレスから実ページ番号が読み出さ
れ、第2の切替回路81に供給される。変換バツ
フア62及び72においては、第1の切替回路5
2の出力によつて指定されるアドレスから実ペー
ジ番号が読み出され、第2の切替回路82に供給
される。変換バツフア63及び73においては、
第1切替回路53の出力によつて指定されるアド
レスから実ページ番号が読み出され、第2の切替
回路83に供給される。
In the conversion buffers 60 and 70, the real page number is read from the address specified by the output of the first switching circuit 50 and supplied to the second switching circuit 80. In the conversion buffers 61 and 71, the real page number is read from the address specified by the output of the first switching circuit 51 and supplied to the second switching circuit 81. In the conversion buffers 62 and 72, the first switching circuit 5
The real page number is read from the address specified by the output of 2 and is supplied to the second switching circuit 82. In the conversion buffers 63 and 73,
The real page number is read from the address specified by the output of the first switching circuit 53 and is supplied to the second switching circuit 83.

第2のアドレス調整回路5は、アクセス方向情
報レジスタ2に設定されたアクセス方向情報と、
アドレスレジスタ1に設定された部分空間番号S
の値と、第1のページ番号Mの値と、第2のペー
ジ番号Nの値に基づいて、第2の切替回路80〜
83対応に切替信号を発生し、第2の切替回路8
0〜83に供給する。
The second address adjustment circuit 5 receives the access direction information set in the access direction information register 2,
Subspace number S set in address register 1
, the value of the first page number M, and the value of the second page number N, the second switching circuits 80 to 80
83 and generates a switching signal corresponding to the second switching circuit 8.
Supply from 0 to 83.

第5図に部分空間の境界をまたぐ場合の第2の
アドレス調整回路5より第2の切替回路80〜8
3に供給される切替信号を示す。第5図におい
て、Y0,Y1,Y2及びY3は順に第2の切替回路8
0,81,82及び83に供給される切替信号で
あり、“0”ならばアドレス変換セツト6に属す
る変換バツフアから読み出されてくる実ページ番
号を選択し、“1”ならばアドレス変換セツト7
に属する変換バツフアから読み出されてくる実ペ
ージ番号を選択する。
In FIG. 5, the second switching circuits 80 to 8 are switched from the second address adjustment circuit 5 in the case where the subspace boundary is crossed.
3 shows the switching signal supplied to 3. In FIG. 5, Y 0 , Y 1 , Y 2 and Y 3 are sequentially connected to the second switching circuit 8.
This is a switching signal supplied to 0, 81, 82, and 83. If it is "0", it selects the real page number read from the translation buffer belonging to address translation set 6, and if it is "1", it selects the real page number read from the translation buffer belonging to address translation set 6. 7
Select the real page number read from the conversion buffer belonging to .

第5図に示した信号を供給することにより、第
4−1図及び第4−2図で示したアドレス変換が
可能であることは容易に理解できる。また部分空
間の境界をまたがない場合は、部分空間番号Sの
値が“0”であれば、第2のアドレス調整回路5
の出力はすべて“0”であり、部分空間番号Sの
値が“1”であれば、第2のアドレス調整回路5
の出力はすべて“1”であることは明らかであ
る。
It can be easily understood that by supplying the signals shown in FIG. 5, the address conversion shown in FIGS. 4-1 and 4-2 is possible. In addition, when the subspace boundary is not crossed, if the value of the subspace number S is "0", the second address adjustment circuit 5
All outputs are “0”, and if the value of the subspace number S is “1”, the second address adjustment circuit 5
It is clear that the outputs of are all "1".

以上のようにして、第2の切替回路80〜83
から連続する4ページの論理ページ番号に対する
実ページ番号が読み出される。
As described above, the second switching circuits 80 to 83
The real page numbers for the logical page numbers of four consecutive pages are read from the page.

以上述べたすべての実施例において、変換バツ
フアは主記憶装置が格納するアドレス変換表中の
全アドレス変換データの写しを保持しているとし
ているが、本発明は変換表中の一部のアドレス変
換データの写しを保持しているものも含む。
In all the embodiments described above, the conversion buffer holds a copy of all the address conversion data in the address conversion table stored in the main memory. This includes those that hold copies of data.

〔発明の効果〕〔Effect of the invention〕

本発明によれば、以上のような構成の採用によ
つて、アドレス変換を行なうべきページの選択を
ページのアクセス方向と先頭ページとに基づいて
行ない、部分空間の境界をまたいでも連続する複
数ページのアドレス変換を少量のハードウエアに
よつて同時に行うことが可能となる。
According to the present invention, by employing the above-described configuration, pages for which address translation is to be performed are selected based on the access direction of the page and the first page, and multiple pages that are consecutive even across the boundaries of subspaces are address translation can be performed simultaneously with a small amount of hardware.

【図面の簡単な説明】[Brief explanation of drawings]

第1図は本発明の一実施例を示したブロツク
図、第2図、第3−1図、第3−2図、第4−1
図、第4−2図及び第5図は第1図を説明するた
めの図である。 1……アドレスレジスタ、2……アクセス方向
情報レジスタ、3……演算器、4……第1のアド
レス調整回路、5……第2のアドレス調整回路、
6,7……アドレス変換セツト、50,51,5
3……第1の切替回路、60,61,62,6
3,64,70,71,72,73……変換バツ
フア、80,81,82,83……第2の切替回
路。
Fig. 1 is a block diagram showing one embodiment of the present invention, Fig. 2, Fig. 3-1, Fig. 3-2, Fig. 4-1.
4-2 and 5 are diagrams for explaining FIG. 1. 1... Address register, 2... Access direction information register, 3... Arithmetic unit, 4... First address adjustment circuit, 5... Second address adjustment circuit,
6, 7...Address conversion set, 50, 51, 5
3...first switching circuit, 60, 61, 62, 6
3, 64, 70, 71, 72, 73... conversion buffer, 80, 81, 82, 83... second switching circuit.

Claims (1)

【特許請求の範囲】[Claims] 1 プログラムでアクセス可能な論理アドレス空
間を論理アドレスの上位Sビツトにより部分空間
に分割し、各部分空間はひきつづくMビツトとN
ビツトとによつてページに等分割され、前記各部
分空間に対応して前記Nビツトの内容を同一とす
る前記ページに対する2のM乗数個のアドレス変
換データの一部もしくは全部を格納する2のN乗
数個の変換バツフアを含む2のS乗個の変換セツ
トと、前記Mビツトの内容と“1”とを少なくと
も加算または減算する少なくとも1個の演算器
と、少なくとも前記Nビツトの内容に基づいて前
記各変換セツトの前記各変換バツフア対応の第1
の切替信号を発生する第1のアドレス調整回路
と、前記第1の切替信号に応答して前記Mビツト
の内容または前記演算器出力のいずれかを受け入
れて前記各変換セツトの各変換バツフアへの検索
アドレスとする前記変換バツフア対応の第1の切
替器と、少なくとも前記Sビツト、Mビツトと、
Nビツトの内容に基づいて前記各変換バツフア対
応の第2の切替信号を発生する第2のアドレス調
整回路と、前記第2の切替信号に応答して前記各
変換バツフア対応に前記各変換セツトからの変換
済アドレスを切替える第2の切替器とを設けたこ
とを特徴とするアドレス変換方式。
1. Divide the program-accessible logical address space into subspaces based on the upper S bits of the logical address, and each subspace consists of successive M bits and N bits.
2, which stores part or all of 2 to the M power of address conversion data for the page, which is equally divided into pages according to bits, and has the same contents of the N bits corresponding to each partial space. 2 S conversion sets including N conversion buffers, at least one arithmetic unit that adds or subtracts "1" from the contents of the M bits, and at least one calculation unit based on the contents of the N bits. and the first one corresponding to each conversion buffer of each conversion set.
a first address adjustment circuit that generates a switching signal; and a first address adjustment circuit that receives either the contents of the M bits or the output of the arithmetic unit in response to the first switching signal, and supplies the address adjustment circuit to each conversion buffer of each conversion set. a first switch corresponding to the conversion buffer used as a search address; at least the S bit and the M bit;
a second address adjustment circuit that generates a second switching signal corresponding to each of the conversion buffers based on the contents of the N bits; and a second switch for switching the converted address of the address conversion method.
JP59246086A 1984-11-22 1984-11-22 Address converting system Granted JPS61125657A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP59246086A JPS61125657A (en) 1984-11-22 1984-11-22 Address converting system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP59246086A JPS61125657A (en) 1984-11-22 1984-11-22 Address converting system

Publications (2)

Publication Number Publication Date
JPS61125657A JPS61125657A (en) 1986-06-13
JPH045218B2 true JPH045218B2 (en) 1992-01-30

Family

ID=17143278

Family Applications (1)

Application Number Title Priority Date Filing Date
JP59246086A Granted JPS61125657A (en) 1984-11-22 1984-11-22 Address converting system

Country Status (1)

Country Link
JP (1) JPS61125657A (en)

Also Published As

Publication number Publication date
JPS61125657A (en) 1986-06-13

Similar Documents

Publication Publication Date Title
EP0507577B1 (en) Flexible N-way memory interleaving
JPS6027964A (en) Memory access control circuit
US20040193778A1 (en) Data processor
JPH05165715A (en) Information processor
US3710349A (en) Data transferring circuit arrangement for transferring data between memories of a computer system
JPH045218B2 (en)
JP2503702B2 (en) Address translation device
JPH0137774B2 (en)
JPS6362012B2 (en)
JPS6398051A (en) Address conversion system
JPH087719B2 (en) Information processing system
JPS60204048A (en) Virtual storing system
JPS61173356A (en) Address converting ststem
JP2527814B2 (en) Instruction processing system
JPS60116050A (en) Address conversion system
JP2895892B2 (en) Data processing device
JPS622338A (en) Information processor
JPS6027047A (en) Data processor
JPH083812B2 (en) Function operation control method
JPH02212952A (en) Memory access control system
JPH03256130A (en) Interruption factor retrieving system
SU993262A1 (en) Information processing device
AU596541B2 (en) Data processing system for processing units having different throughputs
JPS63221440A (en) Address converting device
JPS6360427B2 (en)