JPS6141024B2 - - Google Patents

Info

Publication number
JPS6141024B2
JPS6141024B2 JP57138099A JP13809982A JPS6141024B2 JP S6141024 B2 JPS6141024 B2 JP S6141024B2 JP 57138099 A JP57138099 A JP 57138099A JP 13809982 A JP13809982 A JP 13809982A JP S6141024 B2 JPS6141024 B2 JP S6141024B2
Authority
JP
Japan
Prior art keywords
buffer
data
address
row
storage
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
JP57138099A
Other languages
English (en)
Other versions
JPS5928289A (ja
Inventor
Noriaki Hashimoto
Kanji Kubo
Chikahiko Izumi
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP57138099A priority Critical patent/JPS5928289A/ja
Priority to US06/519,699 priority patent/US4561071A/en
Publication of JPS5928289A publication Critical patent/JPS5928289A/ja
Publication of JPS6141024B2 publication Critical patent/JPS6141024B2/ja
Granted legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/10Address translation
    • G06F12/1027Address translation using associative or pseudo-associative address translation means, e.g. translation look-aside buffer [TLB]
    • G06F12/1045Address translation using associative or pseudo-associative address translation means, e.g. translation look-aside buffer [TLB] associated with a data cache
    • G06F12/1054Address translation using associative or pseudo-associative address translation means, e.g. translation look-aside buffer [TLB] associated with a data cache the data cache being concurrently physically addressed

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Description

【発明の詳細な説明】 発明の対象 本発明はバツフア記憶とアライメント機構を備
えたデータ処理システムにおけるバツフア記憶制
御方式に関するものである。
従来技術 記憶階層を備えたデータ処理システムでは、主
記憶中のデータ・ブロツクをあらかじめバツフア
記憶(以下、BSと略す)へ格納しておくことに
より、演算処理装置で必要とするデータ・ブロツ
クを高速にアクセスすることができるようにして
いる。このバツフア記憶の制御方式には、アソシ
アテイブ・レジスタASR方式とセツトアソシア
テイブ(コングルエント)方式があるが、BS使
用効率の勝れているセツトアソシアテイブ方式が
用いられれることが多い。
第1図にセツトアソシアテイブ方式のバツフア
記憶BSと主記憶MMの関係を示す。第1図はBS
を0〜127列(カラム)に分け、各列を4つのブ
ロツク(ロウ)で構成した例である。1ブロツク
の大きさは例えば16バイトからなり、MMの連続
した16バイトのデータを記憶することができる。
MMも論理的にBSと同じ数の列に分けるが、各
列に含まれるブロツク(ロウ)の数は、MMの記
憶容量により決まり、第1図のようにMMが2メ
ガバイト(2048KB)であれば、1列は1ブロツ
クを16バイトとして1024ブロツクになり、それら
のデータをBSの対応する列の4つのブロツク
(ロウ)どれか1つに記憶する。第1図には示さ
れていないが、BSに格納されている有効デー
タ・ブロツクのMMアドレスはバツフア・アドレ
ス・アレイ(以下、BAAと略す)に保持されて
いる。このBAAはBSと同様の構成をとり、各記
憶エリアはBSの各ブロツクと1対1に対応して
いる。
一方、記憶階層を備えたデータ処理システムで
は、いわゆる仮想記憶方式を採用することによつ
て、プログラマはMMの容量よりも大きいプログ
ラムを自由に作成できるようにしている。仮想記
憶は、実際には主記憶(MM;実記憶)と補助記
憶AMとによつて構成される。そして、両者はペ
ージと呼ばれる単位に分割され、この分割された
単位で両記憶の内容の入れ替えが行われる。即
ち、仮想記憶を構成するページの一部はMM上に
あるが、それに入りきらないページはAM上に存
在し、必要なときMMに読み込まれ(ページイ
ン)、不要になるとAMに書き出される(ページ
アウト)。
仮想記憶方式のデータ処理システムでは、プロ
グラムは仮想記憶上のアドレス(論理アドレス)
で書かれているため、この論理アドレスを演算処
理装置が処理可能なMM上のアドレス(実アドレ
ス)に変換する必要がある。このアドレス変換を
効率よく行うため、一般に論理アドレスと実アド
レスの対を保持したアドレス変換バツフア(以
下、TLBと略す)が具備されている。
上記仮想記憶方式とバツフア記憶方式の両方を
採用した場合、基本的には、まずメモリ参照論理
アドレスに対する実アドレスがTLBに保持され
ているか否か調べて、保持されていれば該TLB
より直ちに実アドレスを得、次に該実アドレスが
BAAに保持されているか否かを調べて、保持さ
れている場合、BSをアクセスして目的のデータ
を得るという順序をふむ必要があり、アクセスタ
イムを増大させる結果となる。
従来、上記アクセスタイムの短縮を図るため、
TLB及びBAAをパラレルに参照し、その後BSを
参照する方式、あるいはTLB,BAA,BSを完全
にパラレルに参照する方式が提案されている。
第2図はTLB及びBAAをパラレルに参照し、
その結果によりBSを参照する方式のブロツク図
である。第2図において、1は論理アドレスがセ
ツトされる論理アドレスレジスタ(以下LARと
略す)であり、その出力はTLB2とBAA3の参
照アドレスとなる。TLB2はライン11上の論
理アドレスを実アドレスに変換し、実アドレスを
ライン12によりコンペア回路4に送出する。
BAA3はBS6内にバツフアされているデータの
MM上の位置を表わす実アドレスを格納してお
り、このBAA3の参照により、実アドレスをラ
イン13に出力する。コンペア回路4はライン1
2とライン13上の実アドレスを比較し、一致の
ときはBS6内に演算処理装置が必要としている
データが存在することを示している。これをIN
―BS状態と言う。こゝで、Nカラム×Mロウ構
成のセツトアソシアテイブ方式のBSでの読出し
動作においては、BAA3の該当カラムの複数
(M個)のロウが同時に読み出され、それらがラ
イン13を経てコンペア回路4に入力される。そ
して、コンペア回路4にてIN―BSが判明する
と、ライン12上の実アドレスと一致したロウ番
号が、BS6を読む際のBSアドレスレジスタ(以
下BSARと略す)5のロウアドレス部分に入力さ
れ、その他のアドレス情報はBS6のカラムアド
レスとしてBSAR5に入力され、該BSAR5によ
りSB6がアクセスされる。
ところで、BS6に登録してあるデータの単位
であるブロツクは、一般にL個のバンクにバンク
分けされている。こゝでは説明を簡単にするた
め、L=2とし、1ブロツクは偶数バンク、奇数
バンクとバンク分けされているものとする。又
BSAR5によつてアクセスされたBS6の読出し
データは16バイト幅であるとする。この場合、
BS6から読み出されたデータのうち、ブロツク
内アドレスが偶数である8バイトのデータは
BDR(E)7にセツトされ、ブロツク内アドレ
スが奇数である8バイトのデータはBDR(O)
8にセツトされる。このBDR7,8の合計16バ
イト・データがアライナ9に入力されてアライメ
ント処理され、演算処理装置が必要とする所望オ
ペランド(8バイト長)が得られる。アライメン
トされたデータはFDR10にセツトされ、この
データを演算処理装置が使用することゝなる。
なお、アライナ9は、演算処理装置が必要とす
るオペランドが8バイト境界(隣りあう8バイト
ブロツクの境)にまたがつた場合でも、1回のメ
モリ参照で所望のオペランドが得られる働きをす
るものであるが、このアライメント機構は例えば
特開昭53−94133号に記載されており、又アライ
メント機構そのものは本発明の目的とするところ
ではないので、詳細は省略する。同様に、コンペ
ア回路4で不一致のときは、MMから新たにデー
タ・ブロツクをBS6へ転送しなければならない
が、このブロツク転送の動作も本発明と直接関係
がないので、詳細は省略する。
第3図に第2図の動作タイムチヤートを示す。
説明を簡単にする為に1マシンタイムに対応する
ステージをmiで示し、LAR1に論理アドレスが
セツトされたところを起点にとり、これをm0
テージと名付け、以下m1,m2…ステージと名付
ける。なお、1マシンサイクル内のタイミング
は、T0,T1の2相とする。第3図によると、
m0ステージのT0でセツトされたLAR1の論理
アドレスによりTLB2,BAA3をパラレルに読
み出し、コンペア回路4で実アドレスの比較を行
いBS6のロウアドレスを求め、BSAR5にBS6
のアドレスをセツトするまでに1マシンサイクル
要している。更に、BSAR5にBSアドレスをセ
ツト後、BS6の読出し、BDRへの読出しデータ
のセツト、アライン動作、アラインされたデータ
のFDR10へのセツトまでに1マシンサイクル
要している。
第3図から明らかであるように、第2図に示し
た従来方式の欠点は、処理装置のマシンサイクル
を短くしていつた場合、該マシンサイクルの縮少
の度合いに比例してBSのアクセスタイムを短く
するのが難しいことである。
第4図はこれを解決するための従来方式の一例
で、TLBとBAAとBSをすべてパラレルに参照す
る方式である。(以下、これをTLB―BAA―BS
パラレル参照方式と言う)。即ち、第4図はLAR
1の論理アドレスによりTLB2,BAA3をパラ
レルに読み出し、コンペア回路4で実アドレスの
比較を行い、BS6のロウアドレスをローレジス
タ(ROWR)24にセツトすると同時に、LAR
1の論理アドレスをBSAR22にセツトしてBS
6の該当カラムの全ロウ(M個)のデータをM組
のBDR(E)7及びBDR(O)8に読み出し、
ROWR24の制御を受けるロウ選択回路23に
より、必要とするロウ番号に対応したデータ(16
バイト)を選択してアライナ9に転送する構成を
とるものである。
第5図は第4図の従来方式のタイムチヤート
で、n0,n1,n2,n3,…は各マシンサイクルのス
テージを示し、第3図のmiに対応する。第5図
において、パラレルに参照したTLB,BAAの結
果からBSのロウ番号を決定するまでの時間
(t1)が、同時に読出しにかかつたBSからのデー
タが確定するまでの時間(t2)よりも大きくな
り、前者の時間が演算処理装置からみた場合の
BS参照時間を決めている。更に、BSのロウ番号
がROWR24に確定後、ロウ選択回路23によ
り該当ロウ番号に対応した16バイトのBS読出し
データがアライナ9に転送され、アライン後、必
要とする8バイト・データがFDR10にセツト
される。従つて、LAR1に論理アドレスをセツ
ト後、FDR10に必要とするデータがセツトさ
れるまでに2.5マシンサイクルMC要している。
第2図の従来方式のLAR〜FDRのデイレイ
は、第3図のタイムチヤートより2MCであるか
ら、マシンサイクルで比較した限り、第4図の改
善案は第2図の方式よりも劣ることになる。な
お、第5図のステージniの時間(マシンサイク
ル)は、第3図のステージmiの時間(マシンサ
イクル)より短く、LAR〜FDR間の実際のデイ
レイは、第2図では2×Mi、第4図では2.5×Ni
となる。
発明の目的 本発明の目的は、TLB―BAA―BSパラレル参
照方式において、演算処理装置からみたBS読出
しを更に高速化する方法を提供することにある。
発明の総括的説明 上記の目的を達成するため、本発明において
は、BSの各ロウに対応してアライナを設けて、
TLB/BAAアクセス後、コンペア回路からBSの
ロウ番号を決める時間内に、TLB/BAAアクセ
スとパラレルにBSから読出したMロウのデータ
を各ロー毎にアラインしてそれぞれFDRにセツ
トしておき、BSのロウ番号が決まり次第、それ
に対応するFDRの出力を選択して、必要とする
データを演算処理装置へ送るものである。
発明の実施例 第6図は本発明の一実施例のブロツク図で、第
4図と異なる点は、M個のBDR(E)7とBDR
(O)8に対応してアライナALN30もM個あ
り、更に各アライナ30に対応してFDR31が
あり、このFDR群の出力をロウ選択回路SEL3
2の入力としたことである。
第6図の動作を説明するためのタイムチヤート
を第7図に示す。第7図において、1マシンサイ
クルに対応するステージをniで示し、起点を
LAR1に論理アドレスがセツトされたところに
とり、そのステージをn0と名付け、以下n1,n2
n3,…と名付ける。又、1マシンサイクル内のタ
イミングは、T0,T1の2相とする。
さて、n0ステージのT0でセツトされたLAR
1の論理アドレスによりTLB2,BAA3をパラ
レルに読み出し、読出しデータをそれぞれTLBR
20,BAAR21にn1ステージのT0でセツトす
る。TLBR及びBAAR21の出力はコンペア回路
4に入力され、その結果、演算処理装置が必要と
するデータがBS6内に存在するとBS6のロウ番
号がROWR24にn2ステージのT0でセツトさ
れる。
一方、BS6の読み出しは、n0ステージのT1
でセツトされたBSAR22のアドレスによつて行
われ、BS6からの読出しデータは、n1ステージ
のT1でBDR(E)7及びBDR(O)8にセツ
トされる。BDR(E)7及びBDR(O)8は、
BS6のMロウ分存在する。M個のBDR(E)7
及びBDR(O)8のデータ(16バイト)は、各
ロウ毎にアラインする為、M個のアライナ30に
入力され、M個のアライナ30の出力はM個の
FDR31へn2ステージのT0でセツトされる。
M個のFDR31の出力はロウの選択回路32へ
入力され、ROWR24の出力信号25によりM
個のFDR31の中から該当ロウに対応する1個
のFDRの出力が選択され、データパス33上に
演算処理装置の必要とするオペランドデータ(8
バイト)がのる。
第7図のタイムチヤートより、LAR1にアド
レスをセツト後、BS6を読み出し、そのフエツ
チデータをアライン後、FDR31にデータをセ
ツトするまでに2MC,FDR31にセツトされた
データがロウ選択回路32の出力に達するまでに
t時間かかる。ここで、演算処理装置へのデータ
バス33に対する出力バツフアゲートに前記ロウ
選択回路を組み込んでしまえば(この仮定はロウ
数が少なければ成立する)、従来方式である第2
図、第4図のと比べてFDR〜演算処理装置間の
デイレイ増加の要因とはならない。
従つて、従来方式の第2図及び第4図において
LARからFDRまでの所要時間がそれぞれ2MC及
び2.5MCであるのに対し、本実施例では2MCとな
り、マシンサイクル数で比較して、第2図の従来
例と同等となる。たゞし、本発明のマシンサイク
ルは、従来方式のマシンサイクルに比べて小さ
く、マシンサイクルの縮少比の逆数分の性能アツ
プが図れることになる。
発明の効果 以上の説明から明らかな如く、本発明によれ
ば、BSのロウ対応にアライナを設け、各アライ
ナによるアライン後、BSからの読出しデータに
対するロウ選択を行うため、BSの必要とするロ
ウ番号のセツテイングとアライン処理がパラレル
に行われ、従来のBSからの読出しデータのロウ
選択後、アライナにてアラインする方式に比べて
演算処理装置側からみたBSの読出しの高速化が
図れる利点がある。
【図面の簡単な説明】
第1図はセツト・アソシアテイブ方式の主記憶
とバツフア記憶BSの関係を示す図、第2図は従
来のBS制御方式の一例を示す図、第3図は第2
図の動作タイミング図、第4図は従来のBS制御
方式の他の一例を示す図、第5図は第4図の動作
タイミング図、第6図は本発明の一実施例のブロ
ツク図、第7図は第6図の動作タイミング図であ
る。 2…アドレス変換バツフア(TLB)、3…バツ
フア・アドレス・アレイ(BAA)、4…コンペア
回路、6…バツフア記憶(BS)、7,8…バツフ
ア・データ・レジスタ(BDR)、30…アライ
ナ、31…フエツチ・データ・レジスタ
(FDR)、32…ロウ選択回路。

Claims (1)

    【特許請求の範囲】
  1. 1 バツフア記憶および仮想記憶方式をとる記憶
    階層を備えたデータ処理システムのバツフア記憶
    制御方式であつて、Nカラム×Mロウのブロツク
    からなるバツフア記憶と、前記バツフア記憶に格
    納されている有効データ・ブロツクの主記憶アド
    レスを保持するバツフア・アドレス・アレイと、
    仮想記憶上の論理アドレスと主記憶上の実アドレ
    スの対を保持するアドレス変換バツフアと、アク
    セス要求の論理アドレスを受取る論理アドレスレ
    ジスタとを備え、前記論理アドレスレジスタの要
    求アドレスにより前記バツフア・アドレス・アレ
    イ、前記アドレス変換バツフア、前記バツフア記
    憶を同時にアクセスする制御方式において、前記
    バツフア記憶から読み出されたM個のデータを各
    ロウ毎に左もしくは右に必要な量だけシフトして
    所望データを取り出すM個のアライナと、前記各
    アライナの出力データを保持するM個のデータ保
    持手段と、前記バツフア・アドレス・アレイと前
    記アドレス変換バツフアの出力の比較結果により
    要求元で必要とするデータの存在するバツフア記
    憶のロウ番号を求める比較手段と、前記比較手段
    により求まつたロウ番号により前記M個のデータ
    保持手段のうちから1つを選択するロウ選択手段
    を設けたことを特徴とするバツフア記憶制御方
    式。
JP57138099A 1982-08-09 1982-08-09 バツフア記憶制御方式 Granted JPS5928289A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP57138099A JPS5928289A (ja) 1982-08-09 1982-08-09 バツフア記憶制御方式
US06/519,699 US4561071A (en) 1982-08-09 1983-08-02 Storage system having buffer storage

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP57138099A JPS5928289A (ja) 1982-08-09 1982-08-09 バツフア記憶制御方式

Publications (2)

Publication Number Publication Date
JPS5928289A JPS5928289A (ja) 1984-02-14
JPS6141024B2 true JPS6141024B2 (ja) 1986-09-12

Family

ID=15213922

Family Applications (1)

Application Number Title Priority Date Filing Date
JP57138099A Granted JPS5928289A (ja) 1982-08-09 1982-08-09 バツフア記憶制御方式

Country Status (2)

Country Link
US (1) US4561071A (ja)
JP (1) JPS5928289A (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4750154A (en) * 1984-07-10 1988-06-07 Prime Computer, Inc. Memory alignment system and method
US5237671A (en) * 1986-05-02 1993-08-17 Silicon Graphics, Inc. Translation lookaside buffer shutdown scheme
JPH07120312B2 (ja) * 1987-10-07 1995-12-20 株式会社日立製作所 バッファメモリ制御装置
JP3144814B2 (ja) * 1990-03-29 2001-03-12 松下電器産業株式会社 キャッシュメモリの制御方式およびキャッシュタグメモリの制御方式

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4419746A (en) * 1980-10-14 1983-12-06 Texas Instruments Incorporated Multiple pointer memory system

Also Published As

Publication number Publication date
US4561071A (en) 1985-12-24
JPS5928289A (ja) 1984-02-14

Similar Documents

Publication Publication Date Title
JP3005466B2 (ja) 並列ソート装置
US5960453A (en) Word selection logic to implement an 80 or 96-bit cache SRAM
JPS6324428A (ja) キヤツシユメモリ
US5544340A (en) Method and system for controlling cache memory with a storage buffer to increase throughput of a write operation to the cache memory
JPH07120312B2 (ja) バッファメモリ制御装置
JPH01269142A (ja) 計算機システム
JPS63201851A (ja) バッファ記憶アクセス方法
JPH02234242A (ja) 部分書込み制御装置
JPH0282330A (ja) ムーブアウト・システム
JPS6141024B2 (ja)
JPS61224051A (ja) バッファメモリ制御方法
JPH0836525A (ja) 多重アクセスキャッシュ記憶装置
JPH0298754A (ja) 主記憶制御方式
JPS6120906B2 (ja)
JPS59218692A (ja) ロジカルバツフア記憶制御方式
JPS5836434B2 (ja) バツフアメモリソウチ
JP3074897B2 (ja) メモリ回路
JPS58185082A (ja) 情報処理システム
JP2815850B2 (ja) データ処理ユニット
JPS5842546B2 (ja) ストア制御方式
JPS6346556A (ja) バツフアメモリ装置
JPS6055454A (ja) デ−タ転送制御方式
JPH0439099B2 (ja)
JP2595753B2 (ja) キャッシュメモリの無効化方式
JPS6349257B2 (ja)