JPS6213699B2 - - Google Patents

Info

Publication number
JPS6213699B2
JPS6213699B2 JP57033491A JP3349182A JPS6213699B2 JP S6213699 B2 JPS6213699 B2 JP S6213699B2 JP 57033491 A JP57033491 A JP 57033491A JP 3349182 A JP3349182 A JP 3349182A JP S6213699 B2 JPS6213699 B2 JP S6213699B2
Authority
JP
Japan
Prior art keywords
address
buffer memory
information
physical
physical 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.)
Expired
Application number
JP57033491A
Other languages
Japanese (ja)
Other versions
JPS58150186A (en
Inventor
Masanobu Akagi
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 JP57033491A priority Critical patent/JPS58150186A/en
Publication of JPS58150186A publication Critical patent/JPS58150186A/en
Publication of JPS6213699B2 publication Critical patent/JPS6213699B2/ja
Granted legal-status Critical Current

Links

Description

【発明の詳細な説明】 発明の属する技術分野 本発明は情報処理システムにおける大容量バツ
フアメモリへの簡単な制御による高速アクセスを
可能とするバツフアメモリコントロールシステム
に関する。
TECHNICAL FIELD The present invention relates to a buffer memory control system that enables high-speed access to a large-capacity buffer memory in an information processing system through simple control.

従来技術 一般にコンピユータシステムは、中央処理装置
と主記憶装置とを有し、処理に必要なプログラム
およびデータが主記憶装置に記憶されている。こ
れらプログラム等の数が多くなると主記憶装置の
容量は増加し、これとともにそのアクセスタイム
は長くなる。このため、使用頻度の高い情報をよ
り容量が小さいバツフア・メモリに主記憶装置の
記憶内容のコピーとして記憶しておき、アクセス
タイムの減少による処理速度向上の達成を図るシ
ステムも知られている。このようなシステムにお
いては、中央処理装置がまずバツフア・メモリを
アクセスしバツフア・メモリに所望の情報が記憶
されていないときに主記憶装置をアクセスする。
この主記憶装置をアクセスしたときには、アクセ
スした情報はバツフア・メモリに記憶される。こ
こで、プログラムをいくつかに分割して主記憶装
置とダイレクト・アクセス可能なバツフアメモリ
との間でのプログラムの移し替えを行なうことは
ページングと称されている。主記憶装置は多くの
利用者により共有されるため、必要なつどプログ
ラムの入れ替えが行なわれるが、この場合、各利
用者は自分のプログラムが主記憶装置に記憶可能
な大きさであるとか、どのように自分のプログラ
ムが分割されるかなどについて考慮する必要はな
い。したがつて、プログラム全体が主記憶装置に
格納される必要はないので、装置の物理的な大き
さはプログラム使用者にはまつたく意味のないも
のになつてくる。プログラマーが仮想アドレス
(論理アドレス)を指定すると、この仮想アドレ
スから種々のテーブルを介してアドレス展開がな
され物理(実)アドレスが生成される。
BACKGROUND OF THE INVENTION Generally, a computer system has a central processing unit and a main memory, and programs and data necessary for processing are stored in the main memory. As the number of these programs increases, the capacity of the main memory increases, and the access time increases accordingly. For this reason, a system is known in which frequently used information is stored in a buffer memory with a smaller capacity as a copy of the storage contents of the main storage device in order to improve processing speed by reducing access time. In such a system, the central processing unit first accesses the buffer memory, and when the desired information is not stored in the buffer memory, accesses the main memory.
When this main memory is accessed, the accessed information is stored in buffer memory. Here, the process of dividing a program into several parts and transferring the program between the main storage device and a directly accessible buffer memory is called paging. Since the main memory is shared by many users, programs are replaced as needed. There is no need to consider whether your program will be divided like this. Therefore, since the entire program does not need to be stored in main memory, the physical size of the device becomes completely irrelevant to the program user. When a programmer specifies a virtual address (logical address), the address is expanded from this virtual address through various tables to generate a physical (real) address.

このような仮想アドレスの概念を前提として特
公昭51−36178号明細書に提案された従来の貯蔵
システムは、バツフアメモリ(図示せず)と、該
バツフア・メモリを管理するためアドレス情報を
格納するバツフア・デイレクトリ56と、外部か
ら与えられる論理アドレスである仮想アドレスを
物理アドレスである実アドレスに変換するアドレ
ス変換ユニツト46とを備えている。このシステ
ムは上述のページングを行なう機構を有し、第2
図で示すように、外部から与えられる仮想アドレ
スの下位ビツト群、すなわち、ページ内アドレス
は実アドレスの下位ビツト群としてそのまま用い
られている。従つて、バツフアメモリの容量を増
加しようとしてもページ内アドレスを増加させる
方向には限度があり、いわゆるセツトを横に並
べ、そのセツト数を増加させる方式を取らざるを
得ず、この結果、金物量の増加が生じるという欠
点がある。
The conventional storage system proposed in Japanese Patent Publication No. 51-36178 based on the concept of virtual addresses includes a buffer memory (not shown) and a buffer memory for storing address information for managing the buffer memory. - It is equipped with a directory 56 and an address conversion unit 46 that converts a virtual address, which is a logical address given from the outside, into a real address, which is a physical address. This system has the above-mentioned paging mechanism, and has a second
As shown in the figure, the lower bit group of the virtual address given from the outside, ie, the intra-page address, is used as is as the lower bit group of the real address. Therefore, even if we try to increase the capacity of the buffer memory, there is a limit to the direction in which the addresses within a page can be increased, and we have no choice but to adopt a method of arranging so-called sets horizontally and increasing the number of sets.As a result, the amount of hardware The disadvantage is that there is an increase in

このような欠点を解決するために複数のバツフ
アメモリとこれらにそれぞれ対応する複数のプロ
セツサを有するメモリシステムが特公昭53−
25457号明細書に記載されている。このシステム
は、管理テーブルを用いてあるバツフアメモリ内
に求める情報の存在が認められないときに補助デ
イレクトリを調査して前記バツフアメモリを含む
全てのバツフアメモリ内に情報が存在するか否か
を確認する構成を有している。したがつて、全て
のバツフアメモリ内のどれかに求める情報が存在
する場合でも、管理テーブルへの直接的な1回の
アクセスのみでは情報の有無を確定できず、この
結果、バツフアのアクセス時間の増大が生じ性能
低下が生じるという欠点がある。さらに、管理テ
ーブルの調査のあとで、補助デイレクトリを調査
する必要のある場合とない場合があり、このため
の制御も複雑であるという欠点がある。
In order to solve these drawbacks, a memory system with multiple buffer memories and multiple processors corresponding to each buffer memory was developed.
It is described in specification No. 25457. This system uses a management table to check the auxiliary directory to check whether the information exists in all buffer memories including the buffer memory when the existence of desired information is not found in a certain buffer memory. have. Therefore, even if the desired information exists in one of all buffer memories, the presence or absence of the information cannot be determined by just one direct access to the management table, and as a result, the buffer access time increases. This has the disadvantage that this causes a decrease in performance. Furthermore, after checking the management table, it may or may not be necessary to check the auxiliary directory, and the control for this is also complicated.

発明の目的 本発明の目的は上述の欠点を除去したアドレス
バツフアメモリシステムを提供することにある。
OBJECTS OF THE INVENTION It is an object of the invention to provide an address buffer memory system that eliminates the above-mentioned drawbacks.

本発明の他の目的は、同一の情報がバツフアメ
モリ内に複数個存在しうるバツフアメモリの内容
保証を完全に行なうようにしたバツフアメモリ一
致処理方式を実現するアドレスバツフアメモリシ
ステムを提供することにある。
Another object of the present invention is to provide an address buffer memory system that realizes a buffer memory matching processing method that completely guarantees the contents of buffer memories in which a plurality of pieces of the same information may exist.

発明の構成 本発明のシステムは、主記憶をアクセスするた
めの各命令に応答して論理アドレスと物理アドレ
スとのどちらか一方で表わされ第1のフイール
ド、第2のフイールドおよび第3のフイールドを
有するアドレス情報を発生するアドレス情報発生
手段と、 このアドレス情報発生手段からの論理アドレス
を物理アドレスに変換するアドレス変換手段と、 このアドレス変換手段により変換された物理ア
ドレスを前記アドレス情報の第1および第2のフ
イールドで指定されるアドレスに記憶する変換テ
ーブル手段と、 前記主記憶の記憶内容の一部と同一の内容でか
つ同一ブロツクアドレスの内容をブロツク単位で
前記命令対応に前記アドレス情報の第2および第
3のフイールドに基いて指定されるアドレスに記
憶するバツフアメモリ手段と、 このバツフアメモリ手段の記憶内容に対応する
同一の物理アドレスを前記命令対応に前記アドレ
ス情報の第2および第3フイールドに基いて指定
されるアドレスに記憶する管理テーブル手段と、 前記アドレス情報発生手段と前記変換テーブル
手段とのどちらか一方からの物理アドレスと前記
管理テーブル手段からの物理アドレスとを比較す
る比較手段と、 この比較手段の比較結果に応答して前記バツフ
アメモリ手段から読み出された内容が有効である
か否かを判定する手段と、 前記比較手段の比較結果の不一致に応答して前
記アドレス情報発生手段と前記変換テーブル手段
とのどちらか一方からの物理アドレスで指定され
る前記主記憶の記憶内容の一部と同一の記憶内容
でかつ同一ブロツクアドレスの内容をブロツク単
位で前記命令対応に前記アドレス情報の第2およ
び第3のフイールドに基いて指定される前記バツ
フアメモリ手段のアドレスに記憶させるとともに
これらの記憶内容に対応する同一の物理アドレス
を前記命令対応にアドレス情報の第2および第3
フイールドに基いて指定されるアドレスに記憶さ
せる手段とを備えている。
Composition of the Invention The system of the present invention responds to each instruction for accessing main memory by inputting a first field, a second field, and a third field, which are represented as either a logical address or a physical address. address information generating means for generating address information having the address information; address converting means for converting the logical address from the address information generating means into a physical address; and conversion table means for storing the contents at the address specified by the second field, and converting the address information in block units corresponding to the instruction, the contents of which are the same as a part of the storage contents of the main memory and which are at the same block address. buffer memory means for storing the same physical address corresponding to the storage contents of the buffer memory means in the second and third fields of the address information in correspondence with the instruction; management table means for storing the physical address at an address specified based on the address information; and comparison means for comparing the physical address from either the address information generation means or the conversion table means with the physical address from the management table means; means for determining whether or not the content read from the buffer memory means is valid in response to a comparison result of the comparison means; and address information generation means in response to a discrepancy in the comparison result of the comparison means; The conversion table means converts the address information corresponding to the instruction in units of blocks, with the same storage content as a part of the storage content of the main memory specified by the physical address from either one of the conversion table means and the content at the same block address. The same physical addresses corresponding to the stored contents are stored in the second and third fields of the address information corresponding to the instructions.
and means for storing at an address designated based on the field.

本発明においては、管理テーブルへのアドレス
として用いられるアドレスの一部が異なる場合に
は、対応する物理アドレスが同一であつてもバツ
フアメモリ内での割当記憶位置が異なるように、
また、アドレスの一部が同一の場合で対応する物
理アドレスも同一であれば、アドレスの他の部分
が異なるアドレスであつても、全く同じアドレス
であるとみなされるように、最終的なバツフアメ
モリの管理を物理アドレスでのみ行なうように構
成し、同一情報がバツフアメモリ内に複数個存在
できるようにし、使用頻度の少ないもので異なる
論理アドレスで同一物理アドレスデータを参照す
るソフトウエアを使用する場合に、大容量のバツ
フアメモリを簡単な制御で高速にアクセスできる
ように動作している。
In the present invention, when part of the address used as the address to the management table is different, even if the corresponding physical address is the same, the allocated storage location in the buffer memory is different.
In addition, if part of the address is the same and the corresponding physical address is also the same, the final buffer memory When configuring the system so that management is performed only using physical addresses, allowing multiple pieces of the same information to exist in the buffer memory, and using software that refers to the same physical address data at different logical addresses even though it is used infrequently, It operates so that large-capacity buffer memory can be accessed at high speed with simple control.

発明の原理および作用 更に本発明の特徴は、一致処理用に送られるス
トア要求アドレスとしての物理アドレスを逆変換
テーブルにより指定情報に変換し、バツフアメモ
リ内で一致処理を行なわねばならないブロツクの
位置を知り、与えられる物理アドレスに対応する
全てのバツフアメモリ内ブロツクに対して一致処
理動作を行なわせることによりストアが行なわれ
た情報に対する正常法の保証を仮アドレスバツフ
アメモリに対して与えるように動作することにあ
る。
Principle and Operation of the Invention A further feature of the present invention is that a physical address as a store request address sent for matching processing is converted into specified information using an inverse conversion table, and the position of a block for which matching processing must be performed in the buffer memory is known. , by performing a matching operation on all blocks in the buffer memory corresponding to a given physical address, so as to provide the temporary address buffer memory with a guarantee of correctness for the stored information. It is in.

発明の実施例 次に本発明について図面を参照して詳細に説明
する。
Embodiments of the Invention Next, the present invention will be described in detail with reference to the drawings.

第1図を参照すると、本発明の適用されるシス
テムは、メイン・メモリ11,12,13、およ
び14、これらのメイン・メモリ11,12,1
3、および14のそれぞれに接続されるメモリ制
御装置21および22、該メモリ制御装置21に
接続されるデータ転送装置41および42および
処理装置31および32、および前記メモリ制御
装置21に接続されるデータ転送装置43および
44および処理装置33および34から構成され
ている。該処理装置31−34のそれぞれは、バ
ツフアメモリ制御ブロツク51−54を備えてい
る。
Referring to FIG. 1, the system to which the present invention is applied includes main memories 11, 12, 13, and 14, these main memories 11, 12, 1
3 and 14, data transfer devices 41 and 42 and processing devices 31 and 32 connected to the memory control device 21, and data connected to the memory control device 21. It is composed of transfer devices 43 and 44 and processing devices 33 and 34. Each of the processing units 31-34 includes a buffer memory control block 51-54.

第2図を参照すると、本発明の第1の実施例
は、アドレスを発生するアドレス装置100、論
理アドレスを物理アドレスに変換するアドレス変
換手段200、変換テーブル300、主記憶の内
容の一部のコピーを記憶するバツフア・メモリ4
00、このバツフア・メモリ400を管理するた
めのアドレスを記憶する管理テーブル500、比
較器320,610,620,630、および6
40、バツフア制御手段700、選択回路53
0,650および710、メモリ制御装置21、
およびレジスタ111,112,113,31
0,510および520から構成されている。
Referring to FIG. 2, the first embodiment of the present invention includes an address device 100 that generates an address, an address conversion means 200 that converts a logical address into a physical address, a conversion table 300, and a part of the contents of the main memory. Buffer memory 4 for storing copies
00, a management table 500 that stores addresses for managing this buffer memory 400, comparators 320, 610, 620, 630, and 6
40, buffer control means 700, selection circuit 53
0,650 and 710, memory control device 21,
and registers 111, 112, 113, 31
0,510 and 520.

前記アドレス装置100、変換テーブル30
0、バツフアメモリ400、および管理テーブル
500は、特公昭53−25457の第2図記載の処理
装置101、第3図記載の変換デイレクトリ22
0、キヤツシユ200、およびフエツチデイレク
トリ210によりそれぞれ構成できる。
The address device 100 and the conversion table 30
0, the buffer memory 400, and the management table 500 are the processing device 101 shown in FIG. 2 and the conversion directory 22 shown in FIG.
0, a cache 200, and a fetch directory 210.

次に本発明に適用されるアドレス形式およびそ
のアドレス生成を第3図から第5図を参照しなが
ら詳細に説明する。
Next, the address format applied to the present invention and its address generation will be explained in detail with reference to FIGS. 3 to 5.

第5図は第1図の処理装置31−34から前記
メイン・メモリ11〜14に対するアクセス要求
に際し、本実施例において使用されるアドレス形
式を示す図である。このアドレス形式を用いたア
ドレス生成は次のようにして行なわれる。
FIG. 5 is a diagram showing the address format used in this embodiment when the processing devices 31-34 of FIG. 1 request access to the main memories 11-14. Address generation using this address format is performed as follows.

第3図および第5図を参照すると、第1の論理
アドレスLAD1では、ソフトウエアのプロセス
を指定するためシステムベースからJテーブルが
索引され索引されたJテーブルの内容によりPテ
ーブルが索引される。索引されたPテーブルの内
容によりプロセスコントロールブロツクが索引さ
れる。索引されたブロツク中のアドレス空間を指
定するワードASWによりセグメントテーブルワ
ードアレイの先頭番地が索引される。この先頭番
地にプロセス内アドレスとしてのセグメント種別
が差分として加算され加算結果により索引された
テーブルの内容がセグメントテーブルの先頭番地
を指示する。この先頭番地に種別毎のセグメント
番号が加算され、この加算結果により索引された
テーブルの内容によりページテーブルの先頭番地
が指示される。この先頭番地にセグメント内ペー
ジ番号が差分として加算され加算結果によりペー
ジの先頭番地が指示される。物理アドレスはこの
先頭番地であるページアドレスが上位ビツト群、
ページ内ブロツクアドレスが中位ビツト群、ブロ
ツク内アドレスが下位ビツト群として形成され
る。次に第4図および第5図を参照すると、第2
の論理アドレスLAD2では、システムベースに
よりGテーブルの先頭番地が指示される。この先
頭番地にシステムセグメント番号が差分として加
算され、この加算結果によりページテーブルの先
頭番地が指示される。この先頭番地にセグメント
内アドレスとしてのページ番号が差分として加算
される。加算結果により索引された内容がページ
の先頭番地を指示する。物理アドレスはこの先頭
番地であるページアドレスが上位ビツト群、ペー
ジ内ブロツクアドレスが中位ビツト群、ブロツク
内アドレスが下位ビツト群として形成される。
Referring to FIGS. 3 and 5, at the first logical address LAD1, the J table is indexed from the system base to specify the software process, and the P table is indexed based on the contents of the indexed J table. The process control block is indexed by the contents of the indexed P table. The starting address of the segment table word array is indexed by the word ASW specifying the address space in the indexed block. The segment type as an in-process address is added to this starting address as a difference, and the contents of the table indexed by the addition result indicate the starting address of the segment table. The segment number for each type is added to this starting address, and the starting address of the page table is designated by the contents of the table indexed by this addition result. The intra-segment page number is added as a difference to this starting address, and the addition result indicates the starting address of the page. The page address, which is the first address of the physical address, is the upper bit group,
The intra-page block address is formed as a middle bit group, and the intra-block address is formed as a lower bit group. Next, referring to FIGS. 4 and 5, the second
At the logical address LAD2, the first address of the G table is designated by the system base. The system segment number is added as a difference to this start address, and the result of this addition indicates the start address of the page table. A page number as an intra-segment address is added to this starting address as a difference. The content indexed by the addition result indicates the top address of the page. The physical address is formed as a page address, which is the first address, as a group of upper bits, a block address within the page as a group of middle bits, and an address within the block as a group of lower bits.

第5図を参照すると、第1の論理アドレス
LAD1は、ソフトウエアのプロセスを指定する
ため上位ビツト群で前記Jテーブルの差分、下位
ビツト群でPテーブルの差分をそれぞれ示す情報
(J)、プロセス内アドレスとしてのセグメント種別
(S:ビツト4−7)、種別毎のセグメント番号
(T:ビツト8−15)、セグメント内ページ番号
(P:ビツト16−19)、ページ内ブロツク番号
(R:ビツト20−26)、およびブロツク内バイ
トアドレス(ビツト27−31)から構成されて
いる。第2の論理アドレスLAD2は、システム
固有のアクセスをする時に用いられ、システムセ
グメント番号(G)、セグメント内アドレスとし
てのページ番号(P:ビツト16−19)、ペー
ジ内ブロツク番号(R:ビツト20−26)、お
よびブロツク内バイトアドレス(ビツト27−3
1)から構成されている。物理アドレスPADは
ページ位置(Q:ビツト4−19)、ページ内ブ
ロツク番号(R:ビツト20−26)、およびブ
ロツク内バイトアドレス(ビツト27−31)か
ら構成されている。また、アクセス要求アドレス
として与えられる仮アドレスはこれら3種のアド
レス形式を含んだ形で、アドレス形式種別
(T0)、仮アドレスA,B,C,D、およびE、
ページ内ブロツク番号(R:ビツト20−2
6)、およびブロツク内バイトアドレス(ビツト
27−31)から構成されている。ここで全ての
アドレス形式において、ページ内ブロツク番号
(R:ビツト20−26)およびブロツク内バイ
トアドレス(ビツト27−31)は共通の形式で
あり、また同一情報を示す場合には常に同じ値を
持つ。
Referring to FIG. 5, the first logical address
LAD1 is information that indicates the difference in the J table in the upper bit group and the difference in the P table in the lower bit group to specify the software process.
(J), segment type as in-process address (S: bits 4-7), segment number for each type (T: bits 8-15), page number in segment (P: bits 16-19), block in page It consists of a number (R: bits 20-26) and a byte address within the block (bits 27-31). The second logical address LAD2 is used for system-specific access, and includes the system segment number (G), page number as an intra-segment address (P: bits 16-19), and intra-page block number (R: bit 20). -26), and byte address within the block (bits 27-3
It consists of 1). The physical address PAD consists of a page position (Q: bits 4-19), an intra-page block number (R: bits 20-26), and an intra-block byte address (bits 27-31). In addition, the temporary address given as the access request address includes these three types of address formats: address format type (T 0 ), temporary addresses A, B, C, D, and E;
Block number within the page (R: bit 20-2
6), and the intra-block byte address (bits 27-31). In all address formats, the in-page block number (R: bits 20-26) and the in-block byte address (bits 27-31) are in a common format, and when they indicate the same information, they always have the same value. have

本実施例に於けるアドレス形式において、論理
アドレスの種類数、ビツトの区切り位置、および
アドレス情報の大きさ(ビツト数)等は任意に決
められる。第6図を参照すると、第2図の前記バ
ツフア制御手段700はアンドゲート701,7
02および704および真信号と補信号とを出力
するオアゲート703から構成されている。前記
バツフア制御手段700は第1図に示す比較回路
320から線320−1を介して送られる比較結
果一致信号および比較回路群610−640の選
択回路650を介して与えられる一致信号に応答
して選択回路710の選択信号を線700−2に
送出する。この選択信号は比較回路610および
620が一致を検出するか比較回路630および
640が一致を検出するかにより決定される。前
記制御手段700は前記選択信号を線700−2
に送出するとともに線700−3を介して処理部
100にデータ有効信号を送出する。
In the address format in this embodiment, the number of types of logical addresses, the bit separation positions, the size of address information (number of bits), etc. can be arbitrarily determined. Referring to FIG. 6, the buffer control means 700 of FIG.
02 and 704, and an OR gate 703 that outputs a true signal and a complementary signal. The buffer control means 700 responds to a comparison result match signal sent from the comparison circuit 320 shown in FIG. The selection signal of selection circuit 710 is sent to line 700-2. This selection signal is determined depending on whether comparison circuits 610 and 620 detect a match or comparison circuits 630 and 640 detect a match. The control means 700 transmits the selection signal to a line 700-2.
At the same time, a data valid signal is sent to the processing unit 100 via line 700-3.

もし、選択回路650の出力が前記比較回路6
10−640のいずれの一致も示していないとき
には、メモリ制御装置21に線2131−3を介
してメモリ要求を送出し、求める情報をメイン・
メモリ11,12,13および14から読み出す
よう指示する。
If the output of the selection circuit 650 is
10-640, it sends a memory request to the memory controller 21 via line 2131-3 and sends the desired information to the main memory controller 21.
Instructs to read from memories 11, 12, 13 and 14.

次にこの実施例の動作を第1図から第7図を参
照しながら詳細に説明する。第2図に示すアドレ
ス装置100は第1図の処理装置31,32,3
3および34内の命令先取り制御部または演算制
御部(いずれも図示されていない)で構成され、
第5図に示すアドレス形式種別(T0)を指定した
アドレスを供給する。このアドレスの供給は主記
憶をアクセスするため第1図の前記処理装置3
1,32,33および34内のレジスタからの各
命令に応答して、すなわち、主記憶に対するデー
タの読み書きのために前記レジスタから与えられ
る命令の他に演算をするための命令を主記憶から
読み出すために前記レジスタから与えられる命令
に応答して行なわれる(第7図の100参照)。
Next, the operation of this embodiment will be explained in detail with reference to FIGS. 1 to 7. The addressing device 100 shown in FIG. 2 is the processing device 31, 32, 3 shown in FIG.
3 and 34, an instruction prefetch control unit or an arithmetic control unit (none of which is shown);
An address specifying the address format type (T 0 ) shown in FIG. 5 is supplied. This address is supplied to the processing device 3 in FIG. 1 in order to access the main memory.
In response to each instruction from registers 1, 32, 33, and 34, in other words, an instruction for performing an operation is read from the main memory in addition to the instructions given from the register for reading and writing data to the main memory. This is done in response to an instruction given from the register (see 100 in FIG. 7).

前記アドレスは、第2図のバス100−1を介
してアドレスレジスタ111,112、および1
13に受信される(第7図の111,112、お
よび113参照)。
The address is sent to address registers 111, 112, and 1 via bus 100-1 in FIG.
13 (see 111, 112, and 113 in FIG. 7).

第2図の変換テーブル300は、アドレスレジ
スタ111,112、および113の一部Dの一
部とE(ビツト12−19)で指定されるアドレ
スに応答して記憶内容がレジスタ310にセツト
される(第7図の300および310参照)。レ
ジスタ310にセツトされる内容のうち、変換テ
ーブル300の読出した内容が求めるアドレスに
対応するか否かを調べるチエツク情報(T0
A、B、C、Dのビツト8−11)は比較器32
0に与えられ、物理アドレスQは比較器610お
よび630に与えられる。なお、レジスタ310
はレジスタとして存在しなくても良い。
In the conversion table 300 of FIG. 2, the stored contents are set in the register 310 in response to addresses specified by part D and part E (bits 12-19) of address registers 111, 112, and 113. (See 300 and 310 in Figure 7). Among the contents set in the register 310, check information (T 0 ,
Bits 8-11) of A, B, C, and D are connected to the comparator 32.
0 and the physical address Q is provided to comparators 610 and 630. Note that the register 310
does not need to exist as a register.

変換テーブル300にはアドレスのうちのペー
ジ番号以上の情報T0、A、B、C、D、E、お
よびEのうちの一部をアドレスとし、それ以外を
チエツク情報として記憶される。
In the conversion table 300, part of the information T 0 , A, B, C, D, E, and E that is greater than or equal to the page number of the address is stored as the address, and the rest is stored as the check information.

比較器320は、変換テーブル300から与え
られるチエツク情報と、アドレスレジスタ11
1,112、および113の情報(T、A、B、
C、Dのビツト8−11)とを比較し、一致した
場合に、変換テーブル300から読出された物理
アドレスQが有効であることをバス320−1を
介してバツフア制御手段700に知らせる(第7
図の320,610,630および640参
照)。
The comparator 320 uses the check information given from the conversion table 300 and the address register 11.
1, 112, and 113 information (T, A, B,
Bits 8-11 of C and D are compared, and if they match, the buffer control means 700 is notified via the bus 320-1 that the physical address Q read from the conversion table 300 is valid. 7
(See figures 320, 610, 630 and 640).

第2図のアドレス変換手段200は、変換テー
ブル300内に、アドレスレジスタ111,11
2および113に設定された論理アドレスに対応
する物理アドレスが存在しないことが比較器32
0が不一致を検出することにより判明した場合、
バツフア制御手段700からの指示によりアドレ
ス変換動作を行ない、アドレス変換された物理ア
ドレスをバス200−1を介して変換テーブル3
00に与えるように動作する。
The address conversion means 200 in FIG.
The comparator 32 indicates that there is no physical address corresponding to the logical address set in 2 and 113.
If 0 is found by detecting a mismatch,
An address conversion operation is performed according to instructions from the buffer control means 700, and the converted physical address is sent to the conversion table 3 via the bus 200-1.
00.

第2図の管理テーブル500はバツフアメモリ
400の管理用テーブルでありアドレスレジスタ
111,112、および113のうちのE(ビツ
ト16−19)およびR(ビツト20−26)を
アドレスとしてアクセスされテーブル内の2個の
セツトに対応して物理アドレスQが読み出され、
それぞれレジスタ510および520にセツトさ
れる(第7図の500,510および520参
照)。ここで、本発明の特徴の性質として、管理
テーブル500のアドレスとして使用されるアド
レス情報のうちのR以外の部分すなわち、本実施
例におけるEに相当するビツト位置に相当する物
理アドレスQ内の情報も管理テーブル500で記
憶する物理アドレス情報に含まれていることを示
すことができる。これは、本発明において各アド
レス形式で同じ情報を持つRよりも上のビツト位
置(T0、A、B、C、D、E、………本実施例
ではE)が、管理テーブル500に対して、アド
レスとして使用されるとともに、記憶すべき物理
アドレス情報としても使用されることにより、ア
ドレスで管理テーブル500をアクセスできるよ
うにしてバツフアメモリ400の容量を大きくで
きる。これとともに、情報がバツフアメモリ40
0内に存在するか否かを最終的に判断する物理ア
ドレス情報に、各形式で共通のRよりも上の全て
の情報を含ませることにより、情報存在の有無の
判断を確実なものとすることができる。
Management table 500 in FIG. 2 is a management table for buffer memory 400, and is accessed using E (bits 16-19) and R (bits 20-26) of address registers 111, 112, and 113 as addresses. The physical address Q is read corresponding to the two sets,
are set in registers 510 and 520, respectively (see 500, 510, and 520 in FIG. 7). Here, as a feature of the present invention, the part other than R of the address information used as the address of the management table 500, that is, the information in the physical address Q corresponding to the bit position corresponding to E in this embodiment. It can be shown that the physical address information is also included in the physical address information stored in the management table 500. This means that in the present invention, the bit positions (T 0 , A, B, C, D, E, ... E in this embodiment) above R that have the same information in each address format are stored in the management table 500. On the other hand, by being used as an address and also as physical address information to be stored, the capacity of the buffer memory 400 can be increased by allowing the management table 500 to be accessed using the address. Along with this, the information is stored in buffer memory 40.
By including all information above R, which is common to each format, in the physical address information that ultimately determines whether or not it exists within 0, the determination of the presence or absence of information is made more reliable. be able to.

第2図の比較器610,620,630、およ
び640および選択回路650とからなる比較手
段610,620,630,640、および65
0は、管理テーブル500から読出された2つの
セツトに対応する物理アドレスQと、管理テーブ
ル300から読出された物理アドレスQとを比較
器610,630で比較する(第7図の610お
よび630参照)。これとともに前記比較手段
は、仮アドレスが物理アドレス形式で与えられた
ときのために、アドレスレジスタ111,11
2、および113の物理アドレスのQ情報(ビツ
ト4−19)と、管理テーブル500から読出さ
れた2つの物理アドレスのQ情報とを比較器62
0および640で比較する(第7図の620およ
び640参照)。また、アドレスレジスタ11
1,112、および113のうちのアドレス種別
情報T0により、比較器610,620,63
0、および640の出力を、選択回路650にお
いて選択してバツフア制御手段700に与える
(第7図の650参照)。すなわち、アドレス種別
情報T0が物理アドレス形式を示す場合は比較器
620および640の出力を、それ以外の場合は
比較器610および630の出力を選択する。
Comparison means 610, 620, 630, 640, and 65 are comprised of comparators 610, 620, 630, and 640 and selection circuit 650 in FIG.
0 compares the physical address Q corresponding to the two sets read from the management table 500 with the physical address Q read from the management table 300 using comparators 610 and 630 (see 610 and 630 in FIG. 7). ). At the same time, the comparison means also includes address registers 111 and 11 in case the temporary address is given in the form of a physical address.
The comparator 62 compares the Q information (bits 4-19) of the physical addresses 2 and 113 with the Q information of the two physical addresses read from the management table 500.
0 and 640 (see 620 and 640 in FIG. 7). Also, address register 11
Comparators 610, 620, 63 according to address type information T 0 of 1, 112, and 113
0 and 640 are selected by the selection circuit 650 and applied to the buffer control means 700 (see 650 in FIG. 7). That is, when the address type information T 0 indicates a physical address format, the outputs of comparators 620 and 640 are selected, and in other cases, the outputs of comparators 610 and 630 are selected.

第2図および第3図を参照すると、バツフアメ
モリ400は、2個のセツトから成り、アドレス
レジスタ111,112、および113のうちの
E(ビツト16−19)およびR(ビツト20−
26)をアドレスとしてアクセスされる。すなわ
ち、該メモリ400は64Kバイト×2セツト=
128Kバイト(K≡1024)の記憶容量を持つてい
る。但し、バツフアメモリ400の容量およびセ
ツト数は任意で良い。本発明の特徴は、バツフア
メモリ400へのアドレスとして各アドレス形式
に共通な部分であるR(ビツト20−26)以外
のブロツク特定情報であるE(T0、A、B、
C、Dであつても良い)の情報を用いることにあ
る(第7図の400参照)。
Referring to FIGS. 2 and 3, buffer memory 400 consists of two sets: E (bits 16-19) and R (bits 20-19) of address registers 111, 112, and 113.
26) as the address. In other words, the memory 400 is 64K bytes x 2 sets =
It has a storage capacity of 128K bytes (K≡1024). However, the capacity and number of buffer memories 400 may be arbitrary. The feature of the present invention is that E(T 0 , A, B,
(C, D may be used) (see 400 in FIG. 7).

第2図および第6図を参照すると、バツフア制
御手段700は、レジスタ111のアドレス種別
情報T0が論理アドレスを示しかつ比較器320
の比較結果が不一致を示せばアドレス変換手段2
00にアドレス変換を指示する。それ以外の場合
はアドレスで与えられたアクセス要求の物理アド
レスが、アドレスレジスタ111,112、およ
び113内で、または、変換テーブル300を介
して確定しているものとして、選択回路650の
出力によりバツフアメモリ400から読出された
情報が正しいか否かを判断する。すなわち、比較
器610および630の比較結果が一致を示して
いれば、左側のセツトから読出されたブロツクが
求めるものとして選択回路710を動作させる。
また比較器620および640の出力選択結果が
一致を示していれば、右側のセツトから読出され
たブロツクが求めるものとして選択回路710を
動作させる(第7図の710参照)。さらに、ど
ちらの出力選択結果も不一致を示していれば、バ
ツフアメモリ400内に求める情報がないものと
してブロツク読出し動作をメモリ制御装置21に
依頼する。もちろんどちらの出力選択結果も不一
致を示す場合でもバツフアメモリ400内の他の
ワード(異なるアドレス)に求めるブロツクが存
在する可能性はあるが、制御の簡単化のために、
管理テーブル500の他のワードを調べることは
せずに求る情報がないものとみなさすように動作
させる。これを可能としているのは、論理的に
は、異なる論理アドレスで同一の物理アドレスを
アクセスすることが容易に可能であるにもかかわ
らずソフトウエア構成の性質上、ハードウエアレ
ベルで見た場合に、このようなアクセスを行なう
頻度は非常に少ないという事実による。すなわ
ち、それぞれの命令対応に同一の物理アドレスの
情報が複数のバツフアメモリ400内のそれぞれ
の対応アドレス位置に存在し得るような上記の構
成を取つても、実質的には、同一情報の重複設置
のケースは少なく、バツフアメモリ400の容量
を実質的に減少させる割合は微少である。
Referring to FIG . 2 and FIG.
If the comparison result shows a mismatch, the address conversion means 2
00 to perform address conversion. In other cases, assuming that the physical address of the access request given by the address has been determined in the address registers 111, 112, and 113 or via the conversion table 300, the buffer memory is It is determined whether the information read from 400 is correct. That is, if the comparison results of comparators 610 and 630 indicate a match, the selection circuit 710 is operated assuming that the block read from the left set is desired.
Further, if the output selection results of comparators 620 and 640 indicate a match, the selection circuit 710 is operated as the block read from the right set is desired (see 710 in FIG. 7). Further, if both output selection results indicate a mismatch, it is assumed that the desired information does not exist in the buffer memory 400, and a block read operation is requested to the memory control device 21. Of course, even if both output selection results show a mismatch, there is a possibility that there is a block required in another word (different address) in the buffer memory 400, but for the sake of simplifying control,
The other words in the management table 500 are not checked, and it is assumed that the desired information does not exist. What makes this possible is that although logically it is easily possible to access the same physical address with different logical addresses, due to the nature of the software configuration, when viewed at the hardware level, , due to the fact that such accesses are performed very infrequently. That is, even if the above-mentioned configuration is adopted in which information at the same physical address corresponding to each instruction can exist at each corresponding address position in the plurality of buffer memories 400, it is practically possible to duplicate the same information. There are few cases, and the rate at which the capacity of the buffer memory 400 is substantially reduced is very small.

本発明には、仮アドレスでアクセスするバツフ
アメモリ400および管理テーブル500を設
け、バツフアメモリ400内情報有無の確認には
物理アドレスを用いるように構成することによ
り、大容量のバツフアメモリ400を、簡単な制
御で高速にアクセスできるという効果がある。
The present invention is provided with a buffer memory 400 and a management table 500 that are accessed using a temporary address, and is configured to use a physical address to confirm the presence or absence of information in the buffer memory 400, so that the large-capacity buffer memory 400 can be easily controlled. This has the effect of allowing high-speed access.

上述の第1の実施例では、それぞれの命令対応
に同一の物理アドレスの情報が複数のバツフアメ
モリ内のそれぞれの位置に存在し得るような構成
をとつても実質的には同一情報の重複設置のケー
スは少ない。しかし、同一情報の重複設置が存在
したときに、一方の情報を書き換えると他の同一
情報との一致がとれなくなり、プロセツサから同
一番地を指定したとき読み出される情報が異な
り、誤動作を生ずるという欠点がある。この欠点
を解決しより信頼性の高い動作を可能としたシス
テムが以下に述べる第2の実施例である。
In the first embodiment described above, although the configuration is such that information at the same physical address can exist in each position in a plurality of buffer memories corresponding to each instruction, it is substantially possible to avoid duplicate installation of the same information. There are few cases. However, when there are duplicate installations of the same information, if one piece of information is rewritten, it will no longer match the other pieces of information, and when the same address is specified from the processor, the information read will be different, resulting in malfunctions. be. A system that solves this drawback and enables more reliable operation is the second embodiment described below.

第8図を参照すると、第1図のバツフアメモリ
制御ブロツク51,52,53または54からな
る本発明の第2の実施例は、バツフアメモリ40
0、選択回路710、管理テーブル500、レジ
スタと選択回路からなるストアアドレス装置10
00、逆変換テーブル800、比較器610,6
30,910,920,930および940、一
致処理制御部900、選択回路850、仮アドレ
スレジスタ110、変換テーブル300、および
バツフア制御手段700から構成されている。
Referring to FIG. 8, a second embodiment of the present invention comprising buffer memory control blocks 51, 52, 53 or 54 of FIG.
0, a selection circuit 710, a management table 500, a store address device 10 consisting of a register and a selection circuit
00, inverse conversion table 800, comparator 610,6
30, 910, 920, 930, and 940, a matching processing control section 900, a selection circuit 850, a temporary address register 110, a conversion table 300, and a buffer control means 700.

前記アドレスレジスタ100、変換テーブル3
00、バツフアメモリ400、および管理テーブ
ル500は、特公昭53−25457の第2図記載の処
理装置101、第3図記載の変換デイレクトリ2
20、キヤツシユ200、およびフエツチデイレ
クトリ210によりそれぞれ構成できる。
The address register 100, conversion table 3
00, buffer memory 400, and management table 500 are the processing device 101 shown in FIG. 2 of Japanese Patent Publication No. 53-25457, and the conversion directory 2 shown in FIG.
20, a cache 200, and a fetch directory 210.

第9図を参照すると、本実施例に用いられるア
ドレスは、各形式に共通しているページ内ブロツ
ク指定アドレス(R:ビツト20−26)および
ブロツク内バイトアドレス(X:ビツト27−3
1)に加えて、ページを指定する情報として論理
アドレスではページ番号(P:ビツト4−1
9)、物理アドレスでは物理ページ指定(Q:ビ
ツト4−19)、仮アドレスでは以下の情報が論
理アドレス形式か物理アドレス形式かを示すアド
レス種別情報(T0;ビツト0)およびページ指
定アドレス(A:ビツト4−19)とから構成さ
れている。
Referring to FIG. 9, the addresses used in this embodiment are the in-page block designation address (R: bits 20-26) and the in-block byte address (X: bits 27-3) that are common to each format.
In addition to 1), the page number (P: bit 4-1) is used as information to specify the page in the logical address.
9), physical address specifies physical page (Q: bits 4-19), and temporary address specifies address type information (T 0 ; bit 0) indicating whether it is logical address format or physical address format, and page specified address ( A: Consists of bits 4-19).

仮アドレスのページ指定情報Aはアドレス種別
情報Tの値によりページ番号Pまたは物理ページ
指定Qと同じ内容であり、論理アドレスと物理ア
ドレスの両者を統合した形式として表わされる。
物理アドレスはメインメモリへのアクセス時にア
ドレスとして用いられうる。但し、従来技術で知
られるようにメインメモリへのアドレスは常に物
理アドレスである必要はなく、物理アドレスを浮
動アドレスレジスタ等により変換されたもので
も、またプレフイツクス変換により変換されたも
のでも良い。論理アドレスはページ番号Pにより
ハードウエアが設けたページテーブルをアクセス
し、このテーブルから物理ページ指定Qを読む出
すことにより物理アドレスに変換されるものとし
て与えられる。
The page designation information A of the temporary address has the same content as the page number P or the physical page designation Q depending on the value of the address type information T, and is expressed as a format that integrates both the logical address and the physical address.
The physical address can be used as an address when accessing main memory. However, as known in the prior art, the address to the main memory does not always have to be a physical address, but may be a physical address converted by a floating address register or the like, or may be converted by prefix conversion. The logical address is given by accessing a page table provided by hardware using the page number P and converting it into a physical address by reading the physical page designation Q from this table.

第10図を参照すると、第8図のバツフア制御
手段700は、アンドゲート701、702およ
び705、オアゲート703,706および71
1、F/F707,708および709、選択回
路712,716および717、レジスタ713
および715、デコーダ714および置換制御回
路718から構成されている。第8図の変換テー
ブル300のアドレス変換が有効な場合選択回路
710への選択指示動作は第8図に示すバツフア
制御手段700の上述の制御動作と同一である。
しかし、第8図のバツフアメモリ400に求める
情報が格納されていないことが線610−1およ
び630−1を介して与えられる比較結果不一致
信号により通知されると、F/F707−709
を動作させ第8図のレジスタ1010へのセツト
指示信号およびセツトデータを線700−4に送
出する。これとともに逆変換テーブル800の各
組への書込指示信号および書込データが線700
−5を介して送られる。これを詳述すればまず、
F/F707の出力に応答して逆変換テーブル8
00への書込み動作は次のようである。該テーブ
ル800の各組のアドレスは、バツフアメモリ4
00のデータ置換アルゴリズムを論理回路で実現
した置換制御回路718からの選択指示信号に応
答して管理テーブル500から線501−1およ
び502−1を介して与えられるバツフアメモリ
400のアドレスを選択回路712で選択して決
定される。さらに該テーブル800の4組のうち
のどの組を選択するかはデコーダ714の出力で
決定される。このようにして決定された該テーブ
ル800のランダム・アクセス・メモリにレジス
タ715の内容が線700−5を介して供給され
る。なお、このF/F707の出力に応答して書
込み動作をする前にアンドゲート705の出力が
オアゲート706を介して該テーブル800のア
ドレスレジスタ1010にアドレスセツト指示信
号として送られる。前記F/F707の出力に応
答してF/F708がセツトされる。このF/F
708の出力はアドレスレジスタ1010のアド
レスセツト指示信号としてオアゲート706を介
して線700−4に送出される。この送出ととも
に選択回路716でレジスタ110から線110
−2および110−3を介して与えられるページ
およびページ内ブロツク指定アドレス情報Qおよ
びRが線700−4を介してレジスタ1010に
セツトされる。前記F/F708の出力はF/F
709をセツトする。F/F709の出力はオア
ゲート711を介してデコーダ714に与えられ
る。デコーダ714は前記テーブル800の4組
うち1組を選択するアドレス信号を線700−5
に出力する。このとき線700−5を介して前記
テーブル800に与えられる書込みデータには、
“0”から“1”に変化されたVビツト、変換テ
ーブル300で変換された実アドレスQ、および
仮アドレスレジスタ110および置換制御回路7
18から得られる指定情報(s)が含まれる。
Referring to FIG. 10, the buffer control means 700 of FIG.
1, F/Fs 707, 708 and 709, selection circuits 712, 716 and 717, register 713
and 715, a decoder 714, and a replacement control circuit 718. When the address conversion in the conversion table 300 of FIG. 8 is valid, the selection instruction operation to the selection circuit 710 is the same as the above-described control operation of the buffer control means 700 shown in FIG.
However, when it is notified by the comparison result mismatch signal applied via lines 610-1 and 630-1 that the desired information is not stored in the buffer memory 400 of FIG.
is operated to send a set instruction signal and set data to register 1010 in FIG. 8 to line 700-4. Along with this, a write instruction signal and write data to each set of the inverse conversion table 800 are sent to the line 700.
-5. To explain this in detail, first,
In response to the output of F/F707, inverse conversion table 8
The write operation to 00 is as follows. Each set of addresses in the table 800 is stored in the buffer memory 4.
In response to a selection instruction signal from a replacement control circuit 718 that implements the data replacement algorithm of 00 using a logic circuit, a selection circuit 712 selects the address of the buffer memory 400 given from the management table 500 via lines 501-1 and 502-1. Selected and determined. Further, which of the four sets in table 800 is selected is determined by the output of decoder 714. The contents of register 715 thus determined are supplied to the random access memory of table 800 via line 700-5. Note that before a write operation is performed in response to the output of F/F 707, the output of AND gate 705 is sent to address register 1010 of table 800 via OR gate 706 as an address set instruction signal. F/F 708 is set in response to the output of F/F 707. This F/F
The output of 708 is sent to line 700-4 via OR gate 706 as an address set instruction signal for address register 1010. Along with this sending, the selection circuit 716 selects the line 110 from the register 110.
Page and intra-page block designation address information Q and R provided via lines 700-2 and 110-3 are set in register 1010 via line 700-4. The output of the F/F708 is F/F
Set 709. The output of F/F 709 is given to decoder 714 via OR gate 711. The decoder 714 sends an address signal for selecting one of the four sets of the table 800 to the line 700-5.
Output to. At this time, the write data given to the table 800 via the line 700-5 includes:
The V bit changed from “0” to “1”, the real address Q converted by the conversion table 300, the temporary address register 110 and the replacement control circuit 7
The specification information (s) obtained from 18 is included.

第11図を参照すると、第8図の前記逆変換テ
ーブル800内の一列は4つのランダム・アクセ
ス・メモリ801−804で構成されている。こ
れらのランダム・アクセス・メモリ801−80
4のそれぞれは、第10図の前記バツフアメモリ
制御手段700のレジスタ715から線700−
5を介して与えられる書込みデータを受ける書込
みデータ端子WD、第10図の制御手段700の
デコーダ714から線700−5を介して与えら
れる信号をライトイネーブル信号として受けるラ
イトイネーブル端子WE、レジスタ1010から
線1010−2を介して与えられるアドレス信号
を受けるアドレス端子Aおよび読出しデータを線
801−1,802−1,803−1および80
4−1に出力する読出しデータ端子を備えてい
る。第11図のランダム・アクセス・メモリは通
常読出しデータを前記端子RDから出力する。書
込み時はアドレス信号で指定された行に位置する
4つのランダム・アクセス・メモリ801−80
4のうちの1つにライトイネーブル信号が与えら
れる。この信号の与えられたランダム・アクセ
ス・メモリに書込みデータが与えられる。このと
き読出し動作は停止される。
Referring to FIG. 11, one column in the inverse translation table 800 of FIG. 8 is comprised of four random access memories 801-804. These random access memories 801-80
4 are connected to lines 700-- from the register 715 of the buffer memory control means 700 in FIG.
A write data terminal WD receives write data applied via line 700-5, a write enable terminal WE receives a signal applied via line 700-5 from decoder 714 of control means 700 in FIG. Address terminal A receives an address signal applied via line 1010-2, and read data is transferred to lines 801-1, 802-1, 803-1 and 80.
It has a read data terminal for outputting to 4-1. The random access memory shown in FIG. 11 normally outputs read data from the terminal RD. During writing, four random access memories 801-80 are located in the row specified by the address signal.
A write enable signal is given to one of the four. Write data is applied to the random access memory to which this signal is applied. At this time, the read operation is stopped.

第12図を参照すると、第8図の一致処理制御
部900は、アンドゲート901−908、F/
F912−915、ナンドゲート909,91
0,916−926および真信号と補信号を発生
するゲート927から構成されている。
Referring to FIG. 12, the match processing control unit 900 in FIG. 8 includes AND gates 901-908, F/
F912-915, Nand Gate 909, 91
0,916-926 and a gate 927 which generates a true signal and a complementary signal.

比較回路910,920,930,940から
線910−1,920−1,930−1および9
40−1を介して与えられる出力は、各々対応す
る組の処置が終了した事を管理するフリツプフロ
ツプ912,913,914,915が“0”で
ある条件の下に、判定され、無効化処理或は、一
致用ストアデータ書込処理を必要とする組単位に
選択回路850の選択指示を行なうとともに、必
要なセツトに対する書込み指示を管理テーブル5
00またはバツフアメモリ400に対して送出す
る。
Lines 910-1, 920-1, 930-1 and 9 from comparison circuits 910, 920, 930, 940
The output given through 40-1 is determined under the condition that flip-flops 912, 913, 914, and 915, which manage the completion of each corresponding set of treatments, are "0" and are subjected to invalidation processing or Instructs the selection circuit 850 to select each set that requires matching store data writing processing, and sends a writing instruction to the necessary set to the management table 5.
00 or buffer memory 400.

第13図を参照すると、第8図のストアアドレ
ス装置1000は真信号と補信号とを出力するゲ
ート1001および1002、アンドゲート10
03および1006、F/F1004および10
05、ナンドゲート1007、選択回路1008
および1013およびレジスタ1009,101
1,1012および1014を有している。
Referring to FIG. 13, the store address device 1000 of FIG. 8 includes gates 1001 and 1002 that output a true signal and a complementary signal;
03 and 1006, F/F1004 and 10
05, NAND gate 1007, selection circuit 1008
and 1013 and registers 1009, 101
1, 1012 and 1014.

ストアアドレス装置1000は、メモリ制御装
置21およびストア制御部50から線2131−
4および50−1を介して与えられる一致処理要
求と、一致処理アドレス、ストアデータを受信
し、一致処理要求を優先順位に従つて受け付け
て、これに対応する一致処理アドレスおよびセツ
ト指示をレジスタ1010に線1000−1を介
して送出し、又対応するストアデータを線100
0−2を介してバツフアメモリ400に書込デー
タとして送出する。
The store address device 1000 connects the memory control device 21 and store control unit 50 to a line 2131-
4 and 50-1, a matching processing address, and store data are received, the matching processing requests are accepted in priority order, and the corresponding matching processing address and set instruction are sent to the register 1010. via line 1000-1 and the corresponding store data via line 100-1.
0-2 to the buffer memory 400 as write data.

次に、第2の実施例の動作を第6図を参照しな
がら詳細に説明する。
Next, the operation of the second embodiment will be explained in detail with reference to FIG.

まず、バツフアメモリ400への読出し動作に
ついて詳細に説明する。
First, the read operation to buffer memory 400 will be explained in detail.

バツフアメモリ400内の情報にアクセスしよ
うとする場合、仮アドレスレジスタ110から線
110−3、セレクタ530および線530−1
を介して与えられる仮アドレスによりバツフアメ
モリ400、管理テーブル500の位置が指定さ
れる。次に、変換手段300からの物理アドレス
と管理テーブル500からの物理アドレスとが比
較器610および630で比較され、この比較結
果に応答してバツフアメモリ制御手段700がバ
ツフアメモリ400から読み出された情報が求め
るものか否かを判断し、線700−2を介して選
択回路710を働かせて処理部100に情報を送
る。前記バツフアメモリ制御手段700は、比較
器610からの比較結果一致に応答してバツフア
メモリ400の左側部分401の出力を選択して
処理部100に送出する。また比較器630から
の比較結果一致に応答してバツフアメモリ400
の右側部分402の出力を選択して処理部100
に送出する。
When attempting to access information in buffer memory 400, from temporary address register 110 to line 110-3, selector 530 and line 530-1.
The locations of the buffer memory 400 and management table 500 are specified by the temporary address given via the buffer memory 400 and the management table 500. Next, the physical address from the conversion means 300 and the physical address from the management table 500 are compared by the comparators 610 and 630, and in response to the comparison result, the buffer memory control means 700 reads out the information read from the buffer memory 400. It is determined whether or not it is the desired one, and the selection circuit 710 is activated to send the information to the processing unit 100 via the line 700-2. The buffer memory control means 700 selects the output of the left side portion 401 of the buffer memory 400 and sends it to the processing section 100 in response to a match in the comparison result from the comparator 610. In addition, in response to a match from the comparison result from the comparator 630, the buffer memory 400
The processing unit 100 selects the output of the right side portion 402 of
Send to.

バツフア制御手段700は、比較器610およ
び630の比較結果に基づいてバツフアメモリ4
00内に求める情報の存在しない、またはバツフ
アメモリ400に与えられた仮アドレスに対応す
る限りは求める情報の存在が認められない場合
に、対応する情報を第1図のメインメモリ11,
12,13および14から読み出してバツフアメ
モリ400に与えるように動作する。新たにバツ
フアメモリ400内に記憶される情報が格納され
るべきバツフアメモリ400内の位置は、従来技
術で知られるリプレースメント・アルゴリズムを
使用して決定される。但し、リプレースメント・
アルゴリズムで決定される位置は、バツフアメモ
リ400内のどのセツト401,402かであつ
て、セツト401,402内のワード位置は、バ
ツフアメモリ400、管理テーブル500にアド
レスとして与えられるアクセス要求アドレスであ
る仮アドレス(ビツト19−26)により決めら
れる。ここで仮アドレスのビツト19は、論理ア
ドレスと物理アドレスとで同一の情報を指示する
場合でも値が異なりうる。
The buffer control means 700 controls the buffer memory 4 based on the comparison results of the comparators 610 and 630.
If the desired information does not exist in 00, or if the desired information is not recognized as long as it corresponds to the temporary address given to the buffer memory 400, the corresponding information is stored in the main memory 11, FIG.
It operates to read data from 12, 13 and 14 and provide it to buffer memory 400. The location within buffer memory 400 where the information newly stored in buffer memory 400 is to be stored is determined using a replacement algorithm known in the art. However, replacement
The position determined by the algorithm is which set 401, 402 in the buffer memory 400, and the word position in the set 401, 402 is a temporary address that is an access request address given as an address to the buffer memory 400, management table 500. (bits 19-26). Here, bit 19 of the temporary address may have different values even when the logical address and physical address indicate the same information.

従つて、同一情報がバツフアメモリ400内の
複数の位置に記憶される可能性が生じる。
Therefore, the same information may be stored in multiple locations within buffer memory 400.

バツフア制御手段700は、新たにバツフアメ
モリ400内に情報を格納する必要が生じると格
納すべき情報の物理アドレスをレジスタ1010
にセツトし、ビツト19−26をアドレスとして
逆変換テーブル800に与えるとともに、格納す
べき情報の物理アドレスのうちのQ(ビツト4−
19)と、新たに格納されることが決定されたバ
ツフアメモリ400内の位置を指定する指定情報
Sとを一組として書込データとして与えることに
より、逆変換テーブル800内の今まで空であつ
た位置に書込みを行なわせる。次に新たに格納さ
れることが決定されたバツフアメモリ内位置に以
前から存在していた情報の物理アドレスが管理テ
ーブル500から読み出されて、レジスタ101
0にセツトされる。このレジスタ1010の内容
はアドレスとして逆変換テーブル800に与えら
れ、以前から存在していた情報、すなわち、バツ
フアメモリ400内から消されようとしている情
報に対応する逆変換テーブル800内の実アドレ
スQと指定情報Sとの組を無効とする、すなわ
ち、空とするように指示される。以上の制御によ
り、逆変換テーブル800内には、バツフアメモ
リ400内に存在する全ての情報に関する実アド
レスQと指定情報Sとを一組とするデータが格納
されていることが保証される。
When it becomes necessary to newly store information in the buffer memory 400, the buffer control means 700 stores the physical address of the information to be stored in the register 1010.
bits 19-26 as an address to the inverse translation table 800, and Q (bits 4-26) of the physical address of the information to be stored.
19) and designation information S that designates the location in the buffer memory 400 where it has been determined that the new storage will be stored as a set as write data. Write to the location. Next, the physical address of the information that previously existed at the location in the buffer memory that has been determined to be newly stored is read out from the management table 500 and stored in the register 101.
Set to 0. The contents of this register 1010 are given to the inverse translation table 800 as an address, and designated as the real address Q in the inverse translation table 800 that corresponds to previously existing information, that is, information that is about to be erased from the buffer memory 400. An instruction is given to invalidate the pair with information S, that is, to make it empty. The above control ensures that the inverse conversion table 800 stores data including a set of real address Q and designated information S regarding all information existing in the buffer memory 400.

ここで、逆変換テーブル800への新規な実ア
ドレスQと指定情報Sとの組の書込みが常に行な
われ得ることを保証するには、逆変換テーブル8
00内のエントリ数は管理テーブル500のエン
トリ数のn倍以上存在する必要がある。nの値は
バツフアメモリ400のアドレスとして用いられ
る仮アドレスの一部がA(ビツト4−19)の部
分を何ビツト含んでいるかにより決定される。本
実施例においては、ビツト19のみの1ビツトで
あるため、n=2である。従つて、本実施例で
は、バツフアメモリ400のセツト数が2である
のに対し、逆変換テーブル800のセツト数は2
倍の4セツトとなつている。
Here, in order to ensure that a new pair of real address Q and specified information S can always be written to the inverse translation table 800, it is necessary to
The number of entries in 00 must be n times or more the number of entries in the management table 500. The value of n is determined by how many bits of A (bits 4 to 19) a part of the temporary address used as the address of buffer memory 400 includes. In this embodiment, since there is only one bit, bit 19, n=2. Therefore, in this embodiment, the number of sets in the buffer memory 400 is 2, while the number of sets in the inverse conversion table 800 is 2.
There are now 4 sets.

但し、逆変換テーブル800に常に管理テーブ
ル500のn倍のエントリ数を準備する必要はな
く、オーバーフローの確率による性能低下と金物
量との関係から小容量の逆変換テーブル800を
設置することも可能である。また、本実施例にお
けるバツフアメモリ400、逆変換テーブル80
0の容量、セツト数またはバツフアメモリ400
へのアクセスにおいて扱われる情報のデータ幅等
は本発明の本質を成すものではなく、種々の構成
が考えられる。
However, it is not necessary to always prepare n times the number of entries in the management table 500 in the inverse conversion table 800, and it is also possible to install a small-capacity inverse conversion table 800 in view of the performance deterioration due to the probability of overflow and the relationship with the amount of metal materials. It is. In addition, the buffer memory 400 and the inverse conversion table 80 in this embodiment
0 capacity, number of sets or buffer memory 400
The data width of the information handled in accessing is not essential to the present invention, and various configurations are possible.

次に主メモリへの書込み動作について第1図お
よび第8図を参照しながら説明する。
Next, the write operation to the main memory will be explained with reference to FIGS. 1 and 8.

第1図を参照すると、メインメモリ11−14
への書込み指示に応答してメインメモリ11−1
4への書込みが実行される。メインメモリ11−
14の内容の一部が該書込み動作で書き換えられ
てしまうと、第8図のバツフアメモリ400の内
容とメインメモリ11−14の内容との不一致が
生ずる。一般的な情報処理システムでは、バツフ
アメモリ400の内容はメインメモリ11−14
の内容の一部のコピーであることが前提となり動
作するため、前記不一致が生ずるときは、バツフ
アメモリ400の内容とメインメモリ11−14
の内容との一致処理を行なう必要が生ずる。
Referring to FIG. 1, main memory 11-14
Main memory 11-1 in response to a write instruction to
4 is executed. Main memory 11-
If part of the contents of buffer memory 400 in FIG. 8 is rewritten by the write operation, there will be a mismatch between the contents of buffer memory 400 and the main memory 11-14 in FIG. In a general information processing system, the contents of buffer memory 400 are stored in main memory 11-14.
The operation is based on the assumption that the contents of the buffer memory 400 and the main memory 11-14 are copied.
It becomes necessary to perform matching processing with the contents of .

次に、本発明の特徴を成す一致処理制御につい
て第1図、第8図および第14図を参照して説明
する。
Next, matching processing control, which is a feature of the present invention, will be explained with reference to FIGS. 1, 8, and 14.

第8図のストアアドレス装置1000は、メモ
リ制御装置21またはストア制御部50から線2
131−4および50−1を介して送られる一致
処理用物理アドレスを受信し、これを線1000
−1を介してレジスタ1010にセツトするとと
もに、ストアデータが送られてくる場合にはこれ
を線1000−2を介してバツフアメモリ400
に送出する(第14図の21,50,1000お
よび1010参照)。なお、ストア制御部は処理
装置の命令先取り部または演算処理部で構成され
る。
The store address device 1000 in FIG.
131-4 and 50-1, and sends it to line 1000.
-1 to the register 1010, and when store data is sent, it is sent to the buffer memory 400 via the line 1000-2.
(See 21, 50, 1000 and 1010 in FIG. 14). Note that the store control section is composed of an instruction prefetch section or an arithmetic processing section of the processing device.

第8図のレジスタ1010の内容は、ビツト1
9−26が逆変換テーブル800にアドレスとし
て与えられ、ビツト4−18は比較器910,9
20,930および940に与えられる(第14
図の1010,800,910,920,930
および940参照)。
The contents of register 1010 in FIG.
Bits 9-26 are given as addresses to inverse translation table 800, and bits 4-18 are given to comparators 910, 9.
20, 930 and 940 (14th
1010, 800, 910, 920, 930 in the diagram
and 940).

第8図の逆変換テーブル800の各セツト80
1,802,803および804は、それぞれレ
ジスタ810,820,830および840に物
理アドレスQと指定情報Sとの一組を読出して与
える(第14図の810,820,830および
840参照)。
Each set 80 of the inverse conversion table 800 in FIG.
1, 802, 803 and 804 read and provide a set of physical address Q and designation information S to registers 810, 820, 830 and 840, respectively (see 810, 820, 830 and 840 in FIG. 14).

第8図の比較器910,920,930および
940は、逆変換テーブル800から読出された
各組の物理アドレスとレジスタ1010の物理ア
ドレス(ビツト4−18)とを比較し一致した場
合に、該当する組がストアアドレスの示す情報を
記憶しているバツフアメモリ400内位置を指定
する有効な指定情報Sを含んでいることを一致処
理制御部900に知らせる(第4図の910,9
20,930および940参照)。
Comparators 910, 920, 930, and 940 in FIG. The match processing control unit 900 is notified that the set containing the valid specification information S that specifies the location in the buffer memory 400 where the information indicated by the store address is stored (910, 9 in FIG.
20, 930 and 940).

第8図の一致処理制御部900と選択回路85
0とから成る一致処理制御手段は、比較器91
0,920,930および940から一致を示さ
れると一致した組全てに関し対応するバツフアメ
モリ400内ブロツクに対して一致処理を行なわ
せる。即ち、一致処理制御部900は、一致を示
された組の全てに対し順次以下の制御を行なう。
先ず一致した組の指定情報Sをレジスタ810,
820,830および840から選択回路850
で選択し、さらに選択回路530を制御してバツ
フアメモリ400および管理テーブル500にア
ドレスとして与える(第14図の810,82
0,830,840,850および530参
照)。次に、ストアデータがストアアドレス装置
1000からバツフアメモリ400に与えられて
いる場合には指定情報Sの指定するバツフアメモ
リ400内の位置にストアデータを書込ませ、ス
トアデータが与えられていない場合には指定情報
Sの指定する管理テーブル500内の位置のエン
トリにバツフアメモリ400の対応するブロツク
の無効情報を書込ませることによつて一致処理を
行なわせる(第14図の400および500参
照)。このようにしてバツフアメモリ400内の
情報の保証を完全なものとする。なお、バツフア
メモリ400のブロツクを無効化した場合には、
逆変換テーブル800内の対応する組も無効化す
なわち空としてやる必要があるが、この方法は、
前述のバツフアメモリ400への新規登録時に発
生した以前の情報の無効化と同じ手段で行なわれ
る。
Matching processing control section 900 and selection circuit 85 in FIG.
The matching processing control means consisting of the comparator 91
When a match is indicated from 0, 920, 930, and 940, matching processing is performed on the corresponding blocks in the buffer memory 400 for all matched pairs. In other words, the match processing control unit 900 sequentially performs the following control on all pairs that are shown to match.
First, the designation information S of the matching set is stored in the register 810,
Select circuit 850 from 820, 830 and 840
, and further controls the selection circuit 530 to give it as an address to the buffer memory 400 and the management table 500 (810, 82 in FIG. 14).
0,830, 840, 850 and 530). Next, if the store data is given to the buffer memory 400 from the store address device 1000, the store data is written to the position in the buffer memory 400 specified by the specification information S, and if the store data is not given, The matching process is performed by writing the invalidation information of the corresponding block in the buffer memory 400 into the entry at the position in the management table 500 specified by the designation information S (see 400 and 500 in FIG. 14). In this way, the information in buffer memory 400 is completely guaranteed. Note that when the block in the buffer memory 400 is disabled,
Although the corresponding set in the inverse conversion table 800 also needs to be invalidated, that is, made empty, this method
This is done by the same means as the invalidation of previous information that occurred during new registration in the buffer memory 400 described above.

本実施例において指定情報Sは、仮アドレスと
してのビツト19−26と、管理テーブル500
のセツト501,502を指定する指定情報とか
ら構成され、前記仮アドレスとしてのビツト19
−26は管理テーブル500およびバツフアメモ
リ400へのアドレスとして使用され、前記指定
情報は一致処理制御部900が管理テーブル50
0またはバツフアメモリ400への書込み指示を
行なう時のセツト指定として使用されるが、指定
情報Sの形式は本実施例以外の形であつてもよ
い。例えば、仮アドレスとして与えられてもよく
管理テーブル500の対応エントリを指定できれ
ばよい。
In this embodiment, the designation information S includes bits 19-26 as a temporary address and management table 500.
bit 19 as the temporary address.
-26 is used as an address to the management table 500 and buffer memory 400, and the specified information is used by the matching processing control unit 900 to address the management table 500 and the buffer memory 400.
0 or as a set designation when issuing a write instruction to the buffer memory 400, the designation information S may have a format other than this embodiment. For example, it may be given as a temporary address, as long as the corresponding entry in the management table 500 can be specified.

発明の効果 本発明には、逆変換テーブル800により一致
処理用物理アドレスから対応する情報のバツフア
メモリ400内格納位置を知り、その全てに対し
て一致処理を行なうことにより同一情報が複数個
記憶されうる仮アドレスバツフアメモリの記憶す
る情報の正当性を保証できるという効果がある。
Effects of the Invention In the present invention, a plurality of pieces of the same information can be stored by knowing the storage position in the buffer memory 400 of the corresponding information from the physical address for matching processing using the inverse conversion table 800 and performing matching processing on all of them. This has the effect of guaranteeing the validity of the information stored in the temporary address buffer memory.

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

第1図は本発明を適用するシステム構成の一例
を示す図、第2図は本発明の第1の実施例を示す
図、第3図および第4図は本発明に適用するアド
レス生成を説明すための図、第5図は本発明の第
1の実施例に採用されるアドレス形式を示す図、
第6図は第1の実施例の一部を詳しく示す図、第
7図は第1の実施例の動作を説明するための図、
第8図は本発明の第2の実施例を示す図、第9図
は第2の実施例に用いるアドレス形式を示す図、
第10図から第13図は第2の実施例の一部を詳
細に示す図、および第14図は第2の実施例の動
作を説明するための図、である。11,12,1
3,14……メインメモリ、21,22……メモ
リ制御装置、31,32,33,34……処理装
置、41,42,43,44……データ転送装
置、51,52,53,54……バツフアメモリ
制御ブロツク、30……処理部、50……ストア
制御部、100……アドレス装置、110……仮
アドレスレジスタ、101,102……バツフア
メモリ内セツト、200……アドレス変換手段、
300……変換テーブル、400……バツフアメ
モリ、500……管理テーブル、700……バツ
フア制御手段、718……置換制御回路、800
……逆変換テーブル、900……一致処理制御
部、1000……ストアアドレス装置、111,
112,113,310,510,520,71
3,715,810,820,830,840,
1009,1010,1011,1012,10
14……レジスタ、801,802,803,8
04……ランダムアクセスメモリ、320,61
0,620,630,640,910,920,
930,940……比較器、530,650,7
10,712,716,717,850,100
8,1013……選択回路、707,708,7
09,912,913,914,915,100
4,1005……F/F、714……デコーダ、
927,1001,1002……ゲート、70
1,702,704,705,901,902,
903,904,905,906,907,90
8,1003,1006……アンドゲート、90
9,910,916,917,918,919,
921,922,923,924,925,92
6,1007……ナンドゲート、703,70
6,711……オアゲート。
Fig. 1 is a diagram showing an example of a system configuration to which the present invention is applied, Fig. 2 is a diagram showing a first embodiment of the invention, and Figs. 3 and 4 explain address generation applied to the present invention. FIG. 5 is a diagram showing the address format adopted in the first embodiment of the present invention.
FIG. 6 is a diagram showing a part of the first embodiment in detail, FIG. 7 is a diagram for explaining the operation of the first embodiment,
FIG. 8 is a diagram showing a second embodiment of the present invention, FIG. 9 is a diagram showing an address format used in the second embodiment,
10 to 13 are diagrams showing a part of the second embodiment in detail, and FIG. 14 is a diagram for explaining the operation of the second embodiment. 11,12,1
3, 14... Main memory, 21, 22... Memory control device, 31, 32, 33, 34... Processing device, 41, 42, 43, 44... Data transfer device, 51, 52, 53, 54... ... Buffer memory control block, 30 ... Processing section, 50 ... Store control section, 100 ... Address device, 110 ... Temporary address register, 101, 102 ... Set in buffer memory, 200 ... Address conversion means,
300...Conversion table, 400...Buffer memory, 500...Management table, 700...Buffer control means, 718...Replacement control circuit, 800
... Inverse conversion table, 900 ... Matching processing control unit, 1000 ... Store address device, 111,
112, 113, 310, 510, 520, 71
3,715,810,820,830,840,
1009, 1010, 1011, 1012, 10
14...Register, 801, 802, 803, 8
04...Random access memory, 320, 61
0,620,630,640,910,920,
930,940...Comparator, 530,650,7
10,712,716,717,850,100
8,1013...selection circuit, 707,708,7
09,912,913,914,915,100
4,1005...F/F, 714...decoder,
927, 1001, 1002...gate, 70
1,702,704,705,901,902,
903,904,905,906,907,90
8,1003,1006...and gate, 90
9,910,916,917,918,919,
921,922,923,924,925,92
6,1007...Nand Gate, 703,70
6,711...Orgate.

Claims (1)

【特許請求の範囲】 1 主記憶をアクセスするための各命令に応答し
て論理アドレスと物理アドレスとのどちらか一方
で表わされ第1のフイールド、第2のフイールド
および第3のフイールドを有するアドレス情報を
発生するアドレス情報発生手段と、 このアドレス情報発生手段からの論理アドレス
を物理アドレスに変換するアドレス変換手段と、 このアドレス変換手段により変換された物理ア
ドレスを前記アドレス情報の第1および第2のフ
イールドで指定されるアドレスに記憶する変換テ
ーブル手段と、 前記主記憶の記憶内容の一部と同一の内容でか
つ同一ブロツクアドレスの内容をブロツク単位で
前記命令対応に前記アドレス情報の第2および第
3のフイールドに基いて指定されるアドレスに記
憶するバツフアメモリ手段と、 このバツフアメモリ手段の記憶内容に対応する
同一の物理アドレスを前記命令対応に前記アドレ
ス情報の第2および第3のフイールドに基いて指
定されるアドレスに記憶する管理テーブル手段
と、 前記アドレス情報発生手段と前記変換テーブル
手段とのどちらか一方からの物理アドレスと前記
管理テーブル手段からの物理アドレスとを比較す
る比較手段と、 この比較手段の比較結果に応答して前記バツフ
アメモリ手段から読み出された内容が有効である
か否かを判定する手段と、 前記比較手段の比較結果の不一致に応答して前
記アドレス情報発生手段と前記変換テーブル手段
とのどちらか一方からの物理アドレスで指定され
る前記主記憶の記憶内容の一部と同一の記憶内容
でかつ同一ブロツクアドレスの内容をブロツク単
位で前記命令対応に前記アドレス情報の第2およ
び第3のフイールドに基いて指定される前記バツ
フアメモリ手段のアドレスに記憶させるとともに
これらの記憶内容に対応する同一の物理アドレス
を前記命令対応に前記アドレス情報の第2および
第3のフイールドに基いて指定されるアドレスに
記憶させる手段とを備えたことを特徴とするバツ
フアメモリコントロールシステム。 2 外部から与えられる物理アドレスにより指定
される記憶位置に情報をブロツク単位に記憶する
主記憶と、 該主記憶をアクセスするための各命令に応答し
て論理アドレスと物理アドレスとのどちらか一方
で表わされるアドレス情報により指定される記憶
位置に前記主記憶においてブロツク単位に記憶さ
れた複数のブロツクの記憶内容の一部と同一の内
容を前記ブロツク単位に対応したブロツク単位で
かつ前記命令対応に記憶するバツフアメモリ手段
と、 このバツフアメモリ手段のブロツクを指示する
物理アドレスを前記命令対応に前記アドレス情報
により指定される記憶位置に記憶する管理テーブ
ル手段と、 前記主記憶に対する書込みアドレスを物理アド
レスの形で発生する書込みアドレス発生手段と、 前記バツフアメモリ手段に記憶されているブロ
ツクを指示する物理アドレスの一部と該ブロツク
の物理アドレスが記憶されている前記管理テーブ
ル手段の記憶位置を特定する指定情報とを対とし
て前記書込みアドレス発生手段からの書込みアド
レスで指定される記憶位置に複数対記憶する逆変
換テーブル手段と、 前記書込みアドレス発生手段からの物理アドレ
スの一部と前記逆変換テーブル手段からの物理ア
ドレスの一部とを比較する比較手段と、 この比較手段での比較結果の一致に応答して前
記逆変換テーブル手段から読み出される該比較さ
れた物理アドレスの一部に対応する指定情報を前
記管理テーブル手段と前記バツフアメモリ手段と
の少なくとも一方に与えて対応するブロツクの情
報を無効にするか前記主記憶に書き込むための情
報を前記バツフアメモリ手段の対応するブロツク
に書き込む手段とを含むことを特徴とするバツフ
アメモリコントロールシステム。
[Scope of Claims] 1. In response to each instruction for accessing the main memory, the memory is represented as either a logical address or a physical address and has a first field, a second field, and a third field. address information generating means for generating address information; address converting means for converting a logical address from the address information generating means into a physical address; conversion table means for storing a part of the storage contents of the main memory at the address specified by the second field; and a buffer memory means for storing the same physical address corresponding to the storage contents of the buffer memory means at an address specified based on a third field, based on the second and third fields of the address information in correspondence with the instruction. management table means for storing the physical address at an address designated by the address information generation means and the conversion table means; and comparison means for comparing the physical address from either the address information generation means or the conversion table means with the physical address from the management table means; means for determining whether or not the content read from the buffer memory means is valid in response to a comparison result of the comparison means; A part of the storage contents of the main memory specified by the physical address from either the conversion table means and the contents of the same block address are converted to the first part of the address information in block units corresponding to the instruction. 2 and 3 of the buffer memory means, and the same physical address corresponding to these stored contents is stored in the buffer memory means based on the second and third fields of the address information corresponding to the instruction. 1. A buffer memory control system comprising means for storing data at an address specified by the buffer memory control system. 2. A main memory that stores information in blocks at storage locations specified by physical addresses given from the outside; The same contents as a part of the storage contents of the plurality of blocks stored in the block unit in the main memory are stored in the storage location specified by the address information represented in the block unit corresponding to the block unit and corresponding to the instruction. buffer memory means for storing a block in the buffer memory means; management table means for storing a physical address for instructing a block in the buffer memory means in a storage location specified by the address information in correspondence with the instruction; and generating a write address for the main memory in the form of a physical address. a part of the physical address instructing the block stored in the buffer memory means and designation information specifying a storage location in the management table means in which the physical address of the block is stored; inverse translation table means for storing a plurality of pairs in storage locations designated by the write address from the write address generation means; a part of the physical address from the write address generation means and a part of the physical address from the inverse translation table means; a comparison means for comparing a part of the physical addresses; and a management table means for specifying designation information corresponding to the part of the compared physical addresses read from the inverse translation table means in response to a match between the comparison results of the comparison means. and means for writing information to at least one of the buffer memory means to invalidate the information in the corresponding block or write the information to the main memory into the corresponding block of the buffer memory means. Amemory control system.
JP57033491A 1982-03-03 1982-03-03 System for controlling buffer memory Granted JPS58150186A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP57033491A JPS58150186A (en) 1982-03-03 1982-03-03 System for controlling buffer memory

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP57033491A JPS58150186A (en) 1982-03-03 1982-03-03 System for controlling buffer memory

Publications (2)

Publication Number Publication Date
JPS58150186A JPS58150186A (en) 1983-09-06
JPS6213699B2 true JPS6213699B2 (en) 1987-03-28

Family

ID=12388022

Family Applications (1)

Application Number Title Priority Date Filing Date
JP57033491A Granted JPS58150186A (en) 1982-03-03 1982-03-03 System for controlling buffer memory

Country Status (1)

Country Link
JP (1) JPS58150186A (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7190617B1 (en) * 1989-04-13 2007-03-13 Sandisk Corporation Flash EEprom system
JP2833062B2 (en) * 1989-10-30 1998-12-09 株式会社日立製作所 Cache memory control method, processor and information processing apparatus using the cache memory control method

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5415620A (en) * 1977-07-06 1979-02-05 Nec Corp Buffer memory unit
JPS55122286A (en) * 1979-03-10 1980-09-19 Fujitsu Ltd Data processing system
JPS5616982A (en) * 1979-07-18 1981-02-18 Fujitsu Ltd Buffer memory control system
JPS5644178A (en) * 1979-09-17 1981-04-23 Hitachi Ltd Buffer memory control system
JPS56140575A (en) * 1980-03-17 1981-11-02 Ibm Cash memory system
JPS56145583A (en) * 1980-04-15 1981-11-12 Nec Corp Buffer memory device

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5415620A (en) * 1977-07-06 1979-02-05 Nec Corp Buffer memory unit
JPS55122286A (en) * 1979-03-10 1980-09-19 Fujitsu Ltd Data processing system
JPS5616982A (en) * 1979-07-18 1981-02-18 Fujitsu Ltd Buffer memory control system
JPS5644178A (en) * 1979-09-17 1981-04-23 Hitachi Ltd Buffer memory control system
JPS56140575A (en) * 1980-03-17 1981-11-02 Ibm Cash memory system
JPS56145583A (en) * 1980-04-15 1981-11-12 Nec Corp Buffer memory device

Also Published As

Publication number Publication date
JPS58150186A (en) 1983-09-06

Similar Documents

Publication Publication Date Title
US5371870A (en) Stream buffer memory having a multiple-entry address history buffer for detecting sequential reads to initiate prefetching
US5659713A (en) Memory stream buffer with variable-size prefetch depending on memory interleaving configuration
US4853846A (en) Bus expander with logic for virtualizing single cache control into dual channels with separate directories and prefetch for different processors
EP0258559B1 (en) Cache memory coherency control provided with a read in progress indicating memory
US5461718A (en) System for sequential read of memory stream buffer detecting page mode cycles availability fetching data into a selected FIFO, and sending data without aceessing memory
KR100491435B1 (en) System and method for maintaining memory coherency in a computer system having multiple system buses
US5388247A (en) History buffer control to reduce unnecessary allocations in a memory stream buffer
EP0036110B1 (en) Cache addressing mechanism
US5230045A (en) Multiple address space system including address translator for receiving virtual addresses from bus and providing real addresses on the bus
JPH03142644A (en) Cache memory control system
EP0902922B1 (en) Method and apparatus for caching system management mode information with other information
US7496730B2 (en) System and method for reducing the number of translation buffer invalidates an operating system needs to issue
US20050198441A1 (en) Multiprocessor system
US8037281B2 (en) Miss-under-miss processing and cache flushing
JPS5821353B2 (en) Channel-to-memory writing device
JPS629942B2 (en)
JPS6135584B2 (en)
JPH05127992A (en) Apparatus and method for decreasing interference in two-level cache memories
US5479625A (en) Ring systolic array system for synchronously performing matrix/neuron computation using data transferred through cyclic shift register connected in cascade of trays
KR20010050796A (en) Write buffer with burst capability
US5420994A (en) Method for reading a multiple byte data element in a memory system with at least one cache and a main memory
US5452418A (en) Method of using stream buffer to perform operation under normal operation mode and selectively switching to test mode to check data integrity during system operation
US5479629A (en) Method and apparatus for translation request buffer and requestor table for minimizing the number of accesses to the same address
US4658356A (en) Control system for updating a change bit
JPH10143431A (en) Caching method of data for microprocessor and computer system