JPH07248958A - メモリ制御方式 - Google Patents

メモリ制御方式

Info

Publication number
JPH07248958A
JPH07248958A JP4210594A JP4210594A JPH07248958A JP H07248958 A JPH07248958 A JP H07248958A JP 4210594 A JP4210594 A JP 4210594A JP 4210594 A JP4210594 A JP 4210594A JP H07248958 A JPH07248958 A JP H07248958A
Authority
JP
Japan
Prior art keywords
data
read
write
bytes
memory
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP4210594A
Other languages
English (en)
Inventor
Takashi Ihi
孝 井比
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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP4210594A priority Critical patent/JPH07248958A/ja
Priority to US08/396,110 priority patent/US5619679A/en
Publication of JPH07248958A publication Critical patent/JPH07248958A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0215Addressing or allocation; Relocation with look ahead addressing means
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0893Caches characterised by their organisation or structure
    • G06F12/0897Caches characterised by their organisation or structure with two or more cache hierarchy levels

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Dram (AREA)
  • Memory System (AREA)

Abstract

(57)【要約】 【目的】 電子計算機等の記憶装置に使用される、連続
アクセスモードを使用してデータの書込み又は読出しを
行う機能を有するDRAM又はクロック同期タイプDR
AMなどのメモリの制御における問題点を解決すること
を目的とする。 【構成】 データ転送命令に対応するLバイトのデータ
が、Lバイトと等しいかそれを分割したデータ単位数で
あってメモリ群101の起動単位であるBバイト(例え
ば8バイト)の2倍以上のデータ単位数であるSバイト
を単位として、複数のメモリ群101のそれぞれに順次
割り付けられる。その割付けが行われたメモリ群101
に対して、連続アクセスモードの下で、割付けが行われ
たSバイトのデータのアクセスが実行される。更に、こ
のようなメモリ装置において、書込みデータバッファ手
段を有する構成、読出しデータバッファ手段を複数組有
する構成が開示される。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、電子計算機等の記憶装
置に使用される、連続アクセスモードを使用してデータ
の書込み又は読出しを行う機能を有するDRAM又はク
ロック同期タイプDRAMなどのメモリの制御技術に関
する。
【0002】例えばDRAM(ダイナミックRAM)に
おいて、連続アクセスモードと呼ばれるアクセスモード
を有するものが知られている。このモードを有する例え
ばDRAMは、データ書込み時において、例えば、RA
S信号(行アドレス信号)、WE(書込み許可)信号、
及びアドレス信号等を起動信号として入力した後、自身
でアドレス信号の値をCAS信号(列アドレス信号)に
同期して+1ずつ更新し、それに同期して入力される書
込みデータをアドレス信号によって指定されるセル部に
書き込む。また、このDRAMは、データ読出しにも同
様に、例えば、自身でアドレス信号の値をCAS信号に
同期して+1ずつ更新し、そのアドレス信号によって指
定されるセル部からデータを読み出し、そのデータをC
AS信号に同期して出力する。一方、クロック同期タイ
プDRAMは、上述のDRAMがCAS信号に同期して
データアクセスを制御していたのに対して、自身に入力
するクロックを使用してデータアクセスを制御するもの
であり、基本的な機能は上述のDRAMの場合と同じで
ある。
【0003】本発明は、この連続アクセスモードを有す
るメモリの制御技術に関するものである。
【0004】
【従来の技術及び発明が解決しようとする課題】本発明
が、具体的に関連する技術分野は大きく分類して2つあ
る。 <第1の技術分野とその技術分野での従来技術及びその
問題点>まず、本発明が具体的に関連する第1の技術分
野と、その第1の技術分野において本発明が具体的に関
連する従来技術について、以下に説明する。
【0005】今、記憶システムが、中央処理装置(以
下、CPUと呼ぶ)内の高速に動作する小容量の記憶容
量を有するバッファ記憶装置(キャッシュメモリ)、記
憶制御装置内の中速に動作する中容量の記憶容量を有す
る中間バッファ記憶装置(2次キャッシュメモリ)、及
び比較的低速に動作し大容量の記憶容量を有する主記憶
装置からなる3つの記憶階層に分割して構成されている
場合を想定する。
【0006】これらの記憶装置間では、ブロックと呼ば
れるデータ単位が、データが転送される時の管理制御の
単位として使用される。この場合、データが転送される
記憶装置の組合せ毎に、ブロックのサイズが異なる。即
ち、例えば、バッファ記憶装置と中間バッファ記憶装置
間でデータが転送される場合のブロックサイズは64バ
イトであり、中間バッファ記憶装置と主記憶装置間でデ
ータが転送される場合のブロックサイズは512バイト
である。このようなブロックサイズの違いは、それぞれ
の記憶装置の使用頻度の違い、ブロックを管理するため
にそれぞれの記憶装置に必要なメモリ容量の制限から生
ずる。
【0007】上述した記憶システムにおける各記憶装置
間のデータ転送は、以下のようにして行われる。即ち、
まず、或るCPUがバッファ記憶装置との間でデータ転
送処理を行っている場合に、バッファ記憶装置上に所望
のデータが存在しなかった場合、中間バッファ記憶装置
からそのデータを含む64バイトのブロックがバッファ
記憶装置に読み込まれる。この動作はムーブインと呼ば
れる。このムーブイン処理において、バッファ記憶装置
内の記憶領域が全て使用されていてムーブイン処理のた
めの領域が無い場合には、最も使用頻度の少ない又は最
も古くムーブインされたブロックが中間バッファ記憶装
置に書き出され、そのブロックが使用していた記憶領域
に目的ブロックが中間バッファ記憶装置からムーブイン
される。上述の書出し動作は、ムーブアウトと呼ばれ
る。更に、中間バッファ記憶装置からバッファ記憶装置
への上述したムーブイン動作において、目的とするデー
タが中間バッファ記憶装置に存在しない場合には、主記
憶装置からそのデータを含む512バイトのブロックが
中間バッファ記憶装置にムーブインされる。このムーブ
イン処理においても、中間バッファ記憶装置内の記憶領
域が全て使用されていてムーブイン処理のための領域が
無い場合には、最も使用頻度の少ない又は最も古くムー
ブインされたブロックが主記憶装置にムーブアウトさ
れ、そのブロックが使用していた記憶領域に目的ブロッ
クが主記憶装置からムーブインされる。
【0008】本発明は、上述したように、バッファ記憶
装置と中間バッファ記憶装置間、及び中間バッファ記憶
装置と主記憶装置間でそれぞれ転送されるデータのブロ
ックサイズが異なる記憶システムにおいて、DRAMを
使用した主記憶装置に対して連続アクセスモードを使用
して効率的にアクセスを行う技術に、具体的に関連する
ものである。
【0009】続いて、上述した第1の技術分野において
本発明が具体的に関連する第1の従来技術について、以
下に説明する。図15は、第1の従来技術の説明図であ
る。
【0010】図15は、主記憶装置の構成を示した図で
あり、まず、主記憶装置へのアクセス単位(ワード)の
サイズは8バイトである。次に、主記憶装置は、バンク
0とバンク1という物理的に独立したアクセスが可能な
2組のRAM群1501から構成されている。また、1
組のRAM群1501は、CS0〜CS3という4つの
DRAMチップセットから構成されている。更に、1つ
のDRAMチップセットは、図15に示されるように、
1メガワードの記憶容量を有する。従って、図15に示
される主記憶装置全体では、以下の記憶容量を有する。 8バイト×1メガワード×4チップセット×2バンク=
64メガバイト ここで、上述の主記憶装置と、特には図示しない中間バ
ッファ記憶装置との間のデータ転送におけるブロックサ
イズをK(ex. 512)バイトとするならば、従来は、
1ブロック内のKバイトのデータの全てが1組のRAM
群1501に割り当てられている。
【0011】この場合において、中間バッファ記憶装置
が主記憶装置に対するムーブアウトを要求した場合は、
特には図示しない記憶制御装置が、優先処理を行いなが
ら、Kバイトの整数分の1であるL(ex. 64)バイト
のデータからなるブロックを単位とする書込み命令を、
主記憶装置を構成する1組のRAM群1501に対し
て、K/L(ex. 8)回発行することによって、Kバイ
トのデータからなるブロックのムーブアウトを実現して
いる。
【0012】ここで、主記憶装置を利用するCPUが1
台のみである場合には、記憶制御装置はLバイトのデー
タからなるブロックを単位とする書込み命令をK/L
(ex.8)回連続して連続して発行できるため、その発
行を受信したDRAMによって構成される1組のRAM
群1501は、連続アクセスモードを使用してこれらの
書込み命令を処理する。
【0013】具体例として、1組のRAM群1501に
対しL=64バイトのデータからなるブロックの書込み
命令が発行されると、RAM群1501は、自身でアド
レス値を書込みパルス(CAS信号又はクロック信号)
に同期して+1ずつ更新し、それに同期して例えば8バ
イトのデータ幅を有するデータバスから8回連続して入
力される8バイトのデータを、アドレス信号によって指
定されるセル部に書き込む。RAM群1501は、上述
のL=64バイトのデータからなるブロックの書込み命
令に続いて発行される次のL=64バイトのデータから
なるブロックの書込み命令に対しても、連続して書込み
処理を実行することができる。このようにして、L=6
4バイトのデータからなるブロックの書込み処理が8回
実行されることにより、合計8バイト×8回×8回=5
12=Kバイトのデータからなるブロックのムーブアウ
トが実現される。
【0014】上述の説明は、中間バッファ記憶装置が主
記憶装置に対するムーブアウトを要求した場合の制御で
あるが、中間バッファ記憶装置が主記憶装置からのムー
ブインを要求した場合にも、上述の場合と同様の制御が
行われる。
【0015】以上説明したように、第1の従来技術で
は、DRAMによって構成されるRAM群1501が有
する連続アクセスモードの効果が最大限に発揮されるよ
うに、Kバイトのデータからなるブロック内の全てのデ
ータが1組のRAM群1501に割り当てられ、そのR
AM群1501において、連続アクセスモードを使用し
たLバイトのデータからなるブロックの書込み命令又は
読出し命令が、K/L回連続して実行される。
【0016】ここで、上述のように、中間バッファ記憶
装置と主記憶装置の間でKバイトのデータからなるブロ
ックが転送される場合に、記憶制御装置は、主記憶装置
に対し、Kバイトのデータからなるブロックの書込み命
令又は読出し命令を1回発行するのではなく、Lバイト
のデータからなるブロックの書込み命令又は読出し命令
をK/L回発行する。これは、以下の理由による。
【0017】即ち、例えば、CPU内のバッファ記憶装
置が中間バッファ記憶装置内のL(ex. 64)バイトの
データからなるブロックのムーブインを要求した場合に
おいて、目的とするブロックが中間バッファ記憶装置に
存在しない場合は、記憶制御装置は、そのLバイトのデ
ータからなるブロックを含むK(ex. 512)バイトの
データからなるブロックを主記憶装置から中間バッファ
記憶装置にムーブインする必要がある。この場合に、主
記憶装置から中間バッファ記憶装置にムーブインされる
Kバイトのデータからなるブロックを構成するデータの
うち、中間バッファ記憶装置からCPU内のバッファ記
憶装置に即座にムーブインする必要のあるデータは、L
バイトのデータからなる特定のブロックである。そこ
で、記憶制御装置は、主記憶装置に対して、Kバイトの
データからなるブロックの読出し命令を1回発行するの
ではなく、Lバイトのデータからなるブロックの読出し
命令をK/L回発行することとし、中間バッファ記憶装
置からCPU内のバッファ記憶装置に即座にムーブイン
する必要のあるLバイトのデータを最初の読出し命令に
よって主記憶装置から中間バッファ記憶装置へ最優先に
ムーブインさせることによって、記憶システムの応答性
能を向上させることができるのである。
【0018】なお、中間バッファ記憶装置内の記憶領域
が全て使用されていてムーブインのための領域が無い場
合において中間バッファ記憶装置内のKバイトのデータ
からなる特定のブロックが主記憶装置にムーブアウトさ
れる場合においても、中間バッファ記憶装置からCPU
内のバッファ記憶装置に即座にムーブインする必要のあ
るLバイトのデータからなるブロックに対応する中間バ
ッファ記憶装置内の記憶領域を最優先で開放させる必要
がある。従って、中間バッファ記憶装置から主記憶装置
へKバイトのデータからなるブロックがムーブアウトさ
れる場合においても、記憶制御装置が主記憶装置へLバ
イトのデータからなるブロックを単位として書込み命令
を発行する意義がある。
【0019】しかし、上述した第1の従来技術は、以下
に示す問題点を有している。図15に示される第1の従
来技術では、主記憶装置を同時に利用するCPUが1台
のみである場合には、Kバイトのデータからなるブロッ
ク内の全てのデータが1組のRAM群1501に割り当
てられることにより、DRAMによって構成されるRA
M群1501が有する連続アクセスモードの効果が最大
限に発揮される。
【0020】ここで、主記憶装置を同時に利用するCP
Uが複数台ある場合には、各CPU内のバッファ記憶装
置は、中間バッファ記憶装置に対して、主記憶装置上の
別々のK(ex. 512)バイトのデータからなるブロッ
クに属するL(ex. 64)バイトのデータからなるブロ
ックを要求する場合がある。この場合に、主記憶装置か
ら中間バッファ記憶装置にムーブインされるそれぞれK
バイトのデータからなるブロックを構成するデータ群の
うち、それぞれのCPU内のバッファ記憶装置が中間バ
ッファ記憶装置から即座にムーブインする必要のあるデ
ータは、それぞれLバイトのデータからなる特定のブロ
ックである。従って、記憶制御装置は、それぞれのCP
Uが要求したLバイトのデータからなる特定のブロック
を優先的に処理するのが望ましい。
【0021】前述したように、中間バッファ記憶装置と
主記憶装置の間でKバイトのデータからなるブロックが
転送される場合に、記憶制御装置は、主記憶装置に対
し、Lバイトのデータからなるブロックの書込み命令又
は読出し命令をK/L回発行する。そこで、記憶制御装
置は、主記憶装置に対してLバイトのデータからなるブ
ロックの書込み命令又は読出し命令をK/L回発行して
いる途中で、1つのCPUからのLバイトのデータから
なる特定のブロックの要求に関連して新たなKバイトの
データからなるブロックを主記憶装置から中間バッファ
記憶装置にムーブインする必要が発生した場合には、現
在のK/L回の書込み命令群又は読出し命令群の発行を
中断し、上記新たなブロックのムーブインに関連するK
/L回の読出し命令群のうち先頭の読出し命令を優先的
に実行させる。この先頭の読出し命令は、他のCPUが
要求するLバイトのデータからなるブロックに対応する
読出し命令である。
【0022】なお、前述したように、中間バッファ記憶
装置から主記憶装置へKバイトのデータからなるブロッ
クがムーブアウトされる場合においても、記憶制御装置
は、特定のLバイトのデータからなるブロックに対応す
る中間バッファ記憶装置上の記憶領域を最優先で開放さ
せるために、K/L回の書込み命令群のうち先頭の書込
み命令を優先的に実行する。
【0023】しかし、第1の従来技術では、Kバイトの
データからなるブロック内の全てのデータが1組のRA
M群1501(図15)に割り当てられていたため、同
時にアクセスされるそれぞれKバイトのデータからなる
2つ以上のブロックが共に1組のRAM群1501に含
まれている場合には、1組のRAM群1501におい
て、それぞれLバイトのデータからなり連続しないアド
レスに位置するブロックに対するアクセス動作の起動及
び停止の制御を行う必要が生ずる。DRAMによって構
成されるRAM群1501においては、アクセスされる
ブロックのアドレスが連続していない場合には、アクセ
ス動作が一旦停止されると、所定の休止時間を経た後か
らでないと次のアクセス動作を起動できない。この休止
時間はDRAMが有するサイクルタイムの3〜4割を占
める。従って、第1の従来技術においては、DRAMに
よって構成される主記憶装置を同時に利用するCPUが
複数台ある場合には、DRAMがアクセスされる際に、
サイクルタイムが長くなってしまいスループットが低下
してしまうという問題点を有している。 <第2の技術分野とその技術分野での従来技術及びそれ
らの問題点>次に、本発明が具体的に関連する第2の技
術分野と、その第2の技術分野において本発明が具体的
に関連する2つの従来技術について、以下に説明する。
【0024】この第2の技術分野に関連する公知例とし
ては、特公昭63−155340号公報、特開平1−1
52547公報、及び特開平4−153845公報に記
載のものがあり、何れも計算機装置全体が試験される場
合に使用されるシングルクロックモードにおけるメモリ
の制御技術に関連している。
【0025】記憶データを保持するために定期的なリフ
レッシュ動作を必要とするDRAMは、その動作状態に
おいて絶対に停止しないクロック信号によって作成され
たタイミング信号を必要とする。
【0026】ここで、計算機装置の試験時においては、
システムの動作クロックをマニュアル操作によって1発
ずつ装置全体に供給し、1クロック毎に装置上の各フリ
ップフロップ又はラッチ等の出力値を観測することによ
り、装置全体の動作状態を確認するモードがある。これ
をシングルクロックモードと呼ぶ。
【0027】このシングルクロックモードでの動作を実
現するために、通常、計算機装置内部に2種類のクロッ
クソースが設けられる。一方はフリーランクロック(F
CLK)と呼ばれ、これは計算機の動作状態において常
に生成されその発生が停止されることのないクロックで
ある。他方はゲーテッドクロック(GCLK)と呼ば
れ、これはFCLKをクロックイネーブル信号により制
御されるゲートを通過させることによって作成される。
このクロックイネーブル信号は、シングルクロックモー
ド時にFCLKを所定のタイミングで所定回数だけ出力
させるために所定のタイミングで所定回数だけ有効にな
る信号である。シングルクロックモード時でないノーマ
ルクロックモード時には、この信号は常に有効となる。
従って、ノーマルクロックモード時には、FCLKとG
CLKの位相は同一となる。
【0028】試験時にラッチ等の出力を観測するために
は、これらに入力されるクロックが停止可能である必要
がある。従って、装置の動作状態を確認するためには、
できるだけGCLKで動作するラッチ等によって装置を
構成することが望ましい。しかし、DRAMに供給され
るタイミング信号及びデータ信号を、GCLKで動作す
るラッチ等を使って作成すると、シングルクロックモー
ド時に、DRAMのリフレッシュ動作に必要なタイミン
グを生成することができなくなり、記憶データが消失し
てしまう。従って、DRAMに供給するタイミング信号
及びデータ信号は、FCLKで動作するラッチ等を使っ
て作成する必要がある。
【0029】本発明は、上述したように、シングルクロ
ックモード時であってもノーマルクロックモード時と同
じ装置の動作を実現するために、GCLKで動作するラ
ッチ等からFCLKで動作しかつ連続アクセスモードを
有するDRAMへのデータ等の供給技術に、具体的に関
連するものである。
【0030】続いて、上述した第2の技術分野において
本発明が具体的に関連する第2の従来技術について、以
下に説明する。第2の従来技術は、DRAMで構成され
る主記憶装置へのデータの書込み制御技術に関連する。
【0031】図16は第2の従来技術の構成図、図17
は第2の従来技術のシングルクロックモード時における
動作タイミングチャートである。主記憶装置1602に
対する書込みアクセス時の書込みデータは、記憶制御装
置1601と主記憶装置1602間に設けられる書込み
データバス1603を経由して、記憶制御装置1601
から主記憶装置1602に転送される。GCLKが入力
される毎に、書込みデータバスのバス幅によって決定さ
れるデータ量を有する書込みデータが、主記憶装置16
02に転送される。
【0032】従来の主記憶装置1602においては、G
CLKに同期して転送されてきた書込みデータが、GC
LKで動作する書込みデータレジスタ(WD_REG)
1604に格納され、このレジスタの出力が、FCLK
で動作する書込みタイミング信号(ex. RAS信号、C
AS信号)に同期してRAM群1605に書き込まれ
る。
【0033】ここで、例えば、一度に主記憶装置160
2に転送される書込みデータのブロックサイズをL=6
4バイトとし、書込みデータバス1603のバス幅を8
バイトとすれば、1ブロック分の書込みデータはGCL
Kに同期して書込みデータバス1603上を8回に分け
て転送されてくるため、主記憶装置1602内には、図
16に示されるように、#0〜#7の8組のWD_RE
G1604と、バンク0〜バンク7の8組のRAM群1
605が用意される。
【0034】この構成で、L=64バイトのデータから
なるブロック内の最初の8バイトからなる書込みデータ
が、書込み命令STR−8及びアドレスADDと共に、
記憶制御装置1601から主記憶装置1602にGCL
Kに同期して転送されてきた場合、主記憶装置1602
内では、転送が開始された後に最初に発生するGCLK
に同期したタイミング(このタイミングをステージ0と
定義する)において、書込みデータはフリップフロップ
(F/F)1606に、書込み命令STR−8及びアド
レスADDはF/F1607に保持される。そして、ス
テージ0において、F/F1607に保持されたアドレ
スADD中の3ビットからなるバンクアドレス部BAN
K ADDが第1デコーダ(#1DEC)1608によ
ってデコードされる。この結果、バンクアドレス部BA
NK ADDに対応する書込みデータ設定信号WD_S
ETi(iは、0〜7のうち何れか)がアクティブとな
ることにより、ステージ0においてF/F1606に保
持された書込みデータが、GCLKに同期したステージ
0の次のタイミング(このタイミングをステージ1と定
義する)において、書込みデータ設定信号WD_SET
iに対応する#iのWD_REG1604に格納され
る。この書込みデータは、#iのWD_REG1604
に対応するバンクiのRAM群1605に向けて出力さ
れる。
【0035】また、ステージ1においては、ステージ0
においてF/F1607に保持されたアドレスADDが
F/F1609に保持され、このアドレスADD中の3
ビットからなるバンクアドレス部BANK ADDが第
2デコーダ(#2DEC)1610によりデコードされ
る。この結果、ステージ1において、図17(a) に示さ
れるように、バンクアドレス部BANK ADDに対応
する選択信号SELi(iは、0〜7のうち何れか)が
アクティブとなる。
【0036】更に、この選択信号SELiは、#iの微
分回路1611に入力される。#iの微分回路1611
では、選択信号SELiがFCLKの1クロック分遅延
させられることにより得られる図17(b) に示される信
号SELiDLが生成され、この信号と選択信号SEL
iとから、図17(c) に示される書込み開始信号FCL
GOiが生成される。この書込み開始信号FCLGOi
は、GCLKに同期したステージ1の直後のFCLKに
同期したタイミングで#iのF/F1612に格納され
る。そして、この#iのF/F1612の出力が、図1
7(d) に示される#iの負論理RAS信号(行アドレス
信号)として、バンクiのRAM群1605へ供給され
る。#iの負論理RAS信号は、図16及び図17にお
いては、“RASi”の上部に水平バーが付された記号
で示される。但し、iは、0〜7のうち何れかの数値で
ある。これと共に、#iの負論理RAS信号は、FCL
Kに同期して動作する#iのF/F1613を介してバ
ンクiタイミングジェネレータに入力される。バンクi
タイミングジェネレータは、バンクiのRAM群160
5が1回の書込み動作に必要なタイミング信号をFCL
Kに同期して生成する。この結果、GCLKに同期した
ステージ1において#iのWD_REG1604に保持
されたバンクi書込みデータが、その後に発生するFC
LKに同期してバンクiのRAM群1605に書き込ま
れる。
【0037】上述のようにして1つのGCLKに同期し
て最初の書込みデータが主記憶装置1602に入力され
た後、次のGCLKに同期して2番目の書込みデータが
主記憶装置1602に入力される。この書込みデータ
は、それと共に主記憶装置1602に入力されたアドレ
スADD中のバンクアドレス部BANK ADDに応じ
たバンクのRAM群1605に書き込まれる。このよう
にして、GCLKに同期した書込みデータが記憶制御装
置1601から8回転送されてくると、次々と各バンク
のRAM群1605が起動され、それらに各書込みデー
タが書き込まれてゆく。
【0038】なお、図16では、説明の簡単のため、各
書込みデータに対応して書込み命令STR−8及びアド
レスADDが記憶制御装置1601から主記憶装置16
02に転送される構成が示されているが、一般的には、
L=64バイトからなるブロック内の最初の8バイトか
らなる書込みデータが転送されるタイミングにおいての
み、書込み命令STR−8及びアドレスADDが記憶制
御装置1601から主記憶装置1602に転送され、そ
こで保持される。そして、記憶制御装置1601から主
記憶装置1602へ2番目以降の書込みデータが転送さ
れてくる毎に、主記憶装置1602内でアドレスADD
中のバンクアドレス部BANK ADDの値が+1ずつ
インクリメントされ、各書込みデータに対応する書込み
アドレスが生成される。
【0039】上述の構成を有する主記憶装置1602が
ノーマルクロックモードで動作する場合は、FCLKと
GCLKの位相は同一となる。これに対して、主記憶装
置1602がシングルクロックモードで動作する場合
は、図17に示されるように、GCLKの入力間隔T′
(これは必ずしも一定の時間間隔にはならない)は、一
般に、FCLKの周期Tに比較して非常に長いものとな
る。このようなシングルクロックモード時においても、
図16に示される第2の従来技術における主記憶装置1
602では、主記憶装置1602への書込みデータの入
力タイミングとRAM群1605への書込みアドレスの
指定タイミングは共にGCLKに同期している。これ
は、WD_REG1604を制御するための書込みデー
タ設定信号WD_SETiを出力する#1DEC160
8と、書込みアドレスを生成するための選択信号SEL
iを出力する#2DEC1610が、共にGCLKに同
期して動作するためである。このため、第2の従来技術
における主記憶装置1602では、ノーマルクロックモ
ード時及びシングルクロックモード時の両方の場合にお
いて、同じ動作が実現されている。
【0040】しかし、上述した第2の従来技術は、以下
に示す問題点を有している。図16に示される第2の従
来技術では、1発のGCLKに同期して転送される書込
みデータ毎に、バンクアドレス部BANK ADDによ
って指定され独立した動作が可能なWD_REG160
4と、それらに対応するRAM群1605とからなる部
分が用意され、これらの部分がGCLKに同期して順次
起動されている。従って、第2の従来技術では、L=6
4バイトからなるブロックの書込みを実行するだけで8
個のバンクからなるRAM群1605を必要とする。更
に、もし、1つのバンクにおける書込み処理がFCLK
で8サイクル以上の時間を必要とするならば、通常はF
CLKと同じ位相を有するGCLKの8サイクル分の時
間で記憶制御装置1601から主記憶装置1602に転
送されてくるL=64バイトからなるブロックの書込み
を連続的に行うことができなくなってしまう。従って、
このような場合には、更に多くのバンクからなるRAM
群1605が必要となる。このように、第2の従来技術
では、そのハードウエアの規模が増大してしまうという
問題点を有している。
【0041】続いて、前述した第2の技術分野において
本発明が具体的に関連する第3の従来技術について、以
下に説明する。第3の従来技術は、DRAMで構成され
る主記憶装置からのデータの読出し制御技術に関連す
る。
【0042】図18は第3の従来技術における主記憶装
置の構成図、図19は第3の従来技術の動作タイミング
チャートである。図18に示される主記憶装置がノーマ
ルクロックモードで動作する場合には、特には図示しな
い記憶制御装置から主記憶装置に入力された読出し命令
FCH64は、GCLKに同期して動作するF/F18
05に格納された後に、選択回路(SEL)1806を
通って、それぞれFCLKに同期して動作する#0〜#
7のメモリ制御信号発生回路1807に入力する。な
お、F/F群1809については後述する。この結果、
#0〜#7のメモリ制御信号発生回路1807の何れか
より、負論理RAS信号(行アドレス信号)等のメモリ
制御信号群が、FCLKに同期して、何れかのRAM群
1801に供給される。
【0043】#0〜#7のRAM群1801は、DRA
Mにより構成されている。そして、メモリ制御群によっ
て起動されたRAM群1801は、連続アクセスモード
の機能を使用することによって、そのRAM群1801
におけるサイクルタイムに対応する時間が経過した後
に、8バイトからなる読出しデータRDをFCLKに同
期して8回連続して出力する。これらの読出しデータR
Dは、DOT論理等に基づいて、#0〜#7の読出しデ
ータレジスタ(MDR)1802に接続される1本の読
出し信号線に出力される。
【0044】一方、FCLKに同期して動作する特には
図示しない3ビットカウンタから出力された読出しデー
タ選択信号RDSELがデコーダ(DEC)1808に
よってデコードされる結果、そのDEC1808から出
力される読出しデータ設定信号RDST0〜RDST7
が順次アクティブとなる。
【0045】この結果、何れかのRAM群1801より
出力された8個の読出しデータRDは、#0〜#7のM
DR1802に順次格納される。また、GCLKに同期
して動作する特には図示しない3ビットカウンタから出
力された選択データが特には図示しないデコーダによっ
てデコードされる結果、そのデコーダから選択回路(S
EL)1803へは、順次アクティブとなる選択信号D
MPX_RD0〜DMPX_RD7が供給される。この
結果として、8個のMDR1802の出力のそれぞれ
は、SEL1803により順次選択され、共にGCLK
に同期して動作し共に8バイトのデータ幅を有するF/
F1804及び特には図示しない読出しデータバスを介
して、それぞれ8バイトからなる8個のメモリ読出しデ
ータMRDとして、特には図示しない記憶制御装置に順
次出力される。
【0046】このように、図18の構成例では、1回の
読出し命令FCH64により、主記憶装置から8バイト
×8個=64バイトからなる読出しデータ群が、8バイ
トのデータ幅を有する読出しデータバスに出力される。
従って、1回の読出し命令FCH64により読出しデー
タバスが8τの時間だけ占有されることになる。ここ
で、τは、GCLKの周期であって、ノーマルクロック
モード時にはFCLKの周期に等しい。このため、主記
憶装置1602に読出し命令FCH64を供給する特に
は図示しない記憶制御装置は、図19(a) に示されるよ
うに、最初の読出し命令FCH64の要求REQ0の発
行から次の読出し命令FCH64の要求REQ1の発行
まで、8τの時間だけ待つ必要がある。
【0047】図18では、8個からなる1組のMDR1
802に対応して、8個のRAM群1801が設けられ
ているが、この構成は後述する本発明には直接には関係
しない。この構成が採用される理由は、RAM群180
1を構成するDRAM内部のサイクルタイムが記憶制御
装置の主記憶装置に対するアクセスタイムに比較して2
倍程度長いため、スループットを確保するために複数個
のRAM群を用いて主記憶装置等を構成するのが一般的
であるためである。1つのRAM群1801におけるサ
イクルタイムが8τ以上である場合は、複数個のRAM
群1801を用意し、個々のRAM群1801に8τお
きに読出し命令FCH64を発行することにより、連続
したメモリ読出しデータMRDを得ることができる。逆
に、1つのRAM群1801におけるサイクルタイムが
8τ以下である場合は、同一のRAM群1801に対し
て8τおきに読出し命令FCH64を発行することによ
って、連続したメモリ読出しデータMRDを得ることが
できる。従って、後述する本発明は、RAM群1801
に対するアクセスタイム、RAM群1801におけるサ
イクルタイム等のパラメータに関係なく、1回の読出し
命令FCHに対応して主記憶装置から読み出されるデー
タ量と読出しデータバスのデータ転送幅のみによってR
AM群の起動間隔が決定されるような構成を有するメモ
リ制御方式に関連する。
【0048】図18に示される主記憶装置のノーマルク
ロックモード時における動作タイミングの例を、図19
に示す。図19において、タイミング0τ〜21τは、
GCLK=FCLK(ノーマルクロックモード時)を単
位とするクロックタイミングである。
【0049】まず、図19(a) に示されるように、タイ
ミング0τにおいて、バンク0のRAM群1801に向
けて、読出し命令FCH64の要求REQ0が発行され
る。次に、図19(b) に示されるように、タイミング1
τにおいて、バンク0のRAM群1801に対して、負
論理RAS信号(行アドレス信号)等のメモリ制御信号
群が供給される。この結果、タイミング9τ〜16τに
おいて、バンク0のRAM群1801から、読出し命令
FCH64の要求REQ0に対応する8個の読出しデー
タRDが#0〜#7のMDR1802に順次格納され
る。そして、図19(c) に示されるように、タイミング
10τ〜17τにおいて、8個のメモリ読出しデータM
RDが、読出しデータバスに順次出力される。
【0050】上述の動作と共に、図19(a) に示される
ように、読出し命令FCH64の要求REQ0の発行タ
イミング0τから8τ後のタイミング8τにおいて、バ
ンク1のRAM群1801に向けて、読出し命令FCH
64の要求REQ0の次の要求REQ1が発行される。
これに対応して、図19(b) に示されるように、タイミ
ング9τにおいて、バンク1のRAM群1801に対し
て、負論理RAS信号(行アドレス信号)等のメモリ制
御信号群が供給される。この結果、タイミング17τ〜
24τにおいて、バンク1のRAM群1801から、読
出し命令FCH64の要求REQ1に対応する8個の読
出しデータRDが#0〜#7のMDR1802に順次格
納される。そして、図19(c) に示されるように、読出
し命令FCH64の要求REQ0に対応するメモリ読出
しデータMRDの出力タイミング10τ〜17τに続く
タイミング18τ〜25τにおいて、それぞれ8個のメ
モリ読出しデータMRDが、読出しデータバスに順次出
力される。
【0051】しかし、上述した第3の従来技術は、以下
に示す問題点を有している。前述したように、図18に
示される主記憶装置内のF/F1805が0番目のGC
LKで、特には図示しない記憶制御装置からの1つ目の
読出し命令FCH64の要求を受信した後、FCLKに
同期して動作するメモリ制御信号発生回路1807を介
してRAM群1801が起動される。この結果、RAM
群1801から連続して出力される8個の読出しデータ
RDは、#0〜#7のMDR1802に格納される。こ
こで、シングルクロックモード時には、一般に、GCL
Kの周期はFCLKの周期に比較して非常に長いものと
なる。従って、上述の読出し動作は、1つ目の読出し命
令FCH64の要求の入力時を基準として1番目のGC
LKが入力されるタイミングよりはるか以前に完了して
しまう。8個のMDR1802の最初の格納内容が読み
出されるタイミングは、前述したように、1つ目の読出
し命令FCH64の要求の入力時を基準として10番目
のGCLKが入力されるタイミングであり、8個のMD
R1802の最後の格納内容が読み出されるタイミング
は、前述したように、1つ目の読出し命令FCH64の
要求の入力時を基準として17番目のGCLKが入力さ
れるタイミングである。
【0052】ところが、1つ目の読出し命令FCH64
の要求の入力時を基準として8番目のGCLKが入力さ
れるタイミングにおいて、次の2つ目の読出し命令FC
H64の要求が入力されてくる。そして、1つ目の読出
し命令FCH64の要求が入力された場合と同様にして
RAM群1801がFCLKに同期して起動される結
果、1つ目の読出し命令FCH64に対応する8個のM
DR1802内のデータの出力が開始される前に、8個
のMDR1802の内容が2つ目の読出し命令FCH6
4に対応するデータに書き替えられてしまう。このた
め、1つ目の読出し命令FCH64の要求の入力時を基
準として10番目のGCLKが入力されるタイミング以
降にMDR1802から出力されるデータは、1つ目の
読出し命令FCH64に対応するデータではなく、2つ
目の読出し命令FCH64に対応するデータとなってし
まう。
【0053】更に、3つ目の読出し命令FCH64の要
求が、1つ目の読出し命令FCH64の要求の入力時を
基準として16番目のGCLKが入力されるタイミング
で入力されるため、1つ目の読出し命令FCH64の要
求の入力時を基準として17番目のGCLKが入力され
るタイミングでMDR1802から出力されるデータ
は、1つ目の読出し命令FCH64に対応するデータで
はなく、3つ目の読出し命令FCH64に対応するデー
タとなってしまう。
【0054】以上のように、何も対策を講ずることなく
第3の従来技術における主記憶装置をシングルクロック
モードで動作させようとした場合には、各読出し命令F
CH64に対応したメモリ読出しデータMRDを出力さ
せることができなくなってしまう。
【0055】このような問題を回避するためには、シン
グルクロックモード時において、1つの読出し命令が発
行された後、主記憶装置内のRAM群から連続的に出力
された複数の読出しデータの全てが主記憶装置の出力側
に最初に配置されているGCLKに同期して動作するバ
ッファ(F/F)に到達し終わるまでの期間内において
は、次の読出し命令を入力してはならない。GCLKに
同期した上記期間をCとすれば、図18の構成例の場合
は、C=17τとなる。一方、図18の構成例の場合
は、前述したように、1回の読出し命令FCH64によ
り、主記憶装置から8バイト×8個=64バイトからな
る読出しデータ群が、8バイトのデータ幅を有する読出
しデータバスに出力される結果、1回の読出し命令FC
H64により読出しデータバスが8τの時間だけ占有さ
れるため、記憶制御装置は、8τの時間間隔で読出し命
令FCH64を出力することができる。従って、上記期
間C内に主記憶装置に入力する可能性のある読出し命令
数は、最大で3個になる。
【0056】以上の考察に基づいて、従来は、図18に
示されるように、入力される読出し命令FCH64のR
AM群1801への供給を上記期間Cに対応する時間だ
け遅延させるためのシフトレジスタ群1809が設けら
れている。
【0057】この構成において、主記憶装置の動作がシ
ングルクロックモードに移行する前に、上記期間Cに対
応する時間分だけ先行して、特には図示しない記憶制御
装置などに設けられるクロック制御部からSEL180
6にシングルクロックモードの予告信号(SINGM)
が入力されることにより、その入力時点以降、SEL1
806は、F/F1805の出力ではなくシフトレジス
タ群1809の出力を選択する。これと共に、シフトレ
ジスタ群1809に対して、それらを動作させるための
GCLKの供給が開始される。従って、その時点以降、
主記憶装置に入力される読出し命令FCH64は、シフ
トレジスタ群1809によって前記期間Cに対応する時
間分だけ遅延させられた後にメモリ制御信号発生回路1
807に入力されるようになる。このようにして、FC
LKに同期して動作するメモリ制御信号発生回路180
7及びRAM群1801が、前記期間Cに対応する時間
分だけ遅延させられて起動されるため、各読出し命令F
CH64に対応したメモリ読出しデータMRDを出力さ
せることが可能となる。
【0058】一方、主記憶装置の動作がシングルクロッ
クモードからノーマルクロックモードに戻る場合には、
事前にシフトレジスタ群1809を動作させるためのク
ロックがGCLKからFCLKに切り替えられることに
より、シフトレジスタ群1809内の読出し命令FCH
64が吐き出さされた後、SEL1806に入力されて
いた前述したシングルクロックモードの予告信号(SI
NGM)が無効にされる。この結果、シングルクロック
モードからノーマルクロックモードへの移行時に、デー
タの欠落を防止することができる。
【0059】しかし、上述した従来技術は、記憶制御装
置などに設けられるクロック制御部から主記憶装置にシ
ングルクロックモードの予告信号(SINGM)などの
制御信号線を入力させる必要があることなどの理由によ
り、回路構成が複雑になってしまうという問題点を有し
ている。
【0060】また、上述の従来技術は、シングルクロッ
クモードとノーマルクロックモードの間で主記憶装置な
どの状態を遷移させるためのタイミング制御が複雑にな
ってしまい、タイミングの変更が困難になってしまうと
いう問題点を有している。
【0061】更に、上述の従来技術は、ノーマルクロッ
クモードとシングルクロックモードとで主記憶装置内の
動作が異なってしまうため、シングルクロックモードを
使用してノーマルクロックモード時に発生した主記憶装
置の障害の解析を行うことなどが困難になってしまうと
いう問題点を有している。
【0062】本発明は、メモリを連続アクセスモードで
動作させる場合における上述した種々の問題点、より具
体的には、バッファ記憶装置が接続される主記憶装置に
対して連続アクセスモードを使用してアクセスが行われ
る場合にアクセス効率が低下してしまうという問題点、
及び連続アクセスモードを使用して動作する主記憶装置
がシングルクロックモード時にノーマルクロックモード
時と同じ動作をしなくなってしまうという問題点を解決
することが目的とする。
【0063】
【課題を解決するための手段】図1は、本発明の第1の
態様の原理ブロック図である。本発明の第1の態様は、
例えば、記憶システムが、中央処理装置内の高速に動作
する小容量の記憶容量を有するバッファ記憶装置(キャ
ッシュメモリ)、記憶制御装置内の中速に動作する中容
量の記憶容量を有する中間バッファ記憶装置(2次キャ
ッシュメモリ)、及び比較的低速に動作し大容量の記憶
容量を有する主記憶装置からなる3つの記憶階層に分割
して構成されている場合を対象とする。そして、アドレ
ス空間上で連続する第1のデータ単位数(Kバイト。例
えば512バイト。)のデータの転送要求のそれぞれに
対応して、第1のデータ単位数(Kバイト)を分割した
バイト数である第2のデータ単位数(Lバイト。例えば
64バイト。)を単位として優先順位をとり、第2のデ
ータ単位数(Lバイト)を単位とするデータ転送命令
を、それぞれ連続アクセスモードの下で動作可能な複数
のメモリ群101(例えばRAM群401)からなるメ
モリ装置に対して複数回発行することにより、第1のデ
ータ単位数(Kバイト)のデータの転送要求に対応する
メモリアクセスを実行するメモリ制御方式を前提とす
る。
【0064】第1の態様では、始めに、データ転送命令
に対応する第2のデータ単位数(Lバイト)のデータ
が、第2のデータ単位数(Lバイト)と等しいかそれを
分割したデータ単位数であってメモリ群101の起動単
位であるデータ単位数(Bバイト。例えば8バイト。)
の2倍以上のデータ単位数である第3のデータ単位数
(Sバイト。例えばLバイトに等しい。)を単位とし
て、第1のデータ単位数(Kバイト)を第3のデータ単
位数(Sバイト)で除した数又はこれ以下の数のメモリ
群101のそれぞれに順次割り付けられる。
【0065】次に、その割付けが行われたメモリ群10
1に対して、連続アクセスモードの下で、割付けが行わ
れた第3のデータ単位数(Sバイト)のデータのアクセ
スが実行される。
【0066】図2は、本発明の第2の態様の原理ブロッ
ク図である。本発明の第2の態様は、それぞれ動作状態
において停止することのない第1のクロック206(例
えばフリーランクロックFCLK)に同期してアクセス
され連続アクセスモードの下で動作可能な複数のメモリ
群201(例えばRAM群509)からなるメモリ装置
に対してデータの書込み制御を行うメモリ制御方式を前
提とする。より具体的には、例えば、本発明の第1の態
様と同様、アドレス空間上で連続する第1のデータ単位
数(Kバイト)のデータの転送要求のそれぞれに対応し
て、第1のデータ単位数(Kバイト)を分割したバイト
数である第2のデータ単位数(Lバイト)を単位として
優先順位をとり、第2のデータ単位数(Lバイト)を単
位とするデータ転送命令を、それぞれ動作状態において
停止することのない第1のクロック206に同期してア
クセスされ連続アクセスモードの下で動作可能な複数の
メモリ群201からなるメモリ装置に対して複数回発行
することにより、第1のデータ単位数(Kバイト)のデ
ータの転送要求に対応するメモリアクセスを実行するメ
モリ制御方式を前提とする。
【0067】そして、まず、連続アクセスモードのアク
セス単位である第4のデータ単位数(Sバイト。例えば
64バイト。)の書込みデータ205を少なくとも格納
する書込みデータバッファ手段202(例えばWD_R
EG504)を有する。上述の第4のデータ単位数(S
バイト)は、例えば、本発明の第1の態様の場合と同
様、データ転送命令に対応する第2のデータ単位数(L
バイト)のデータを、第2のデータ単位数(Lバイト)
と等しいかそれを分割したデータ単位数であって、メモ
リ群201の起動単位であるデータ単位数Bバイト)の
2倍以上のデータ単位数である。
【0068】次に、書込み命令に基づいて、第2のクロ
ック207(例えばゲーテッドクロックGCLK)に同
期して転送されてくる書込みデータ205を、第2のク
ロック207に同期して書込みデータバッファ手段20
2に順次格納する書込みデータ格納制御手段203(例
えば3ビットカウンタ513及びDEC506)を有す
る。
【0069】そして、書込みデータバッファ手段202
に第4のデータ単位数(Sバイト)の書込みデータ20
5が格納された時点で、その格納された第4のデータ単
位数(Sバイト)の書込みデータ205を、第1のクロ
ック206に同期して、連続アクセスモードの下で読み
出して、複数のメモリ群201の何れかに転送する書込
みデータ読出し制御手段204(例えば3ビットカウン
タ514、516、微分回路515、DEC507)を
有する。
【0070】上述の本発明の第2の態様の構成におい
て、書込みデータバッファ手段202を2組有し、次の
ような切替え手段(例えば反転F/F801及び選択回
路802)を更に有するように構成することができる。
即ち、この切替え手段は、書込みデータ格納制御手段2
03に対して一方の書込みデータバッファ手段202へ
の第4のデータ単位数(Sバイト)の書込みデータ20
5の格納動作を実行せると共に、書込みデータ読出し制
御手段204に対して他方の書込みデータバッファ手段
202からメモリ群201への第4のデータ単位数(S
バイト)の書込みデータ205の読出し動作を実行さ
せ、書込みデータ格納制御手段203及び書込みデータ
読出し制御手段204がそれぞれ第4のデータ単位数
(Sバイト)の書込みデータ205に対する処理を終了
した時点で、書込みデータ格納制御手段203及び書込
みデータ読出し制御手段204がそれぞれ処理を行う書
込みデータバッファ手段202を切り替える。
【0071】また、本発明の第2の態様の構成におい
て、メモリ装置に接続されるデータバスが読出しデータ
の転送と書込みデータ205の転送に共通に使用される
双方向バスである構成を有し、第2のクロック207の
変化時点において第1のクロック206に同期してアク
ティブとなるタイミング信号を生成するタイミング信号
生成手段(例えばFCLKトリガ回路1020)を更に
有し、書込みデータバッファ手段202及び書込みデー
タ格納制御手段203が次のような機能を実現するよう
に構成することもできる。即ち、書込みデータバッファ
手段202は、データの格納を第1のクロック206に
同期して行うデータバッファ手段(例えばDR100
1)によって構成される。次に、書込みデータ格納制御
手段203は、書込み命令に基づいて、第2のクロック
207に同期してデータバス上を転送されてくる書込み
データ205を、タイミング信号生成手段が生成するタ
イミング信号に同期してデータバッファ手段に順次格納
する。そして、書込みデータバッファ手段202を構成
するデータバッファ手段は、第1のクロック206に同
期してメモリ群201から読み出された読出しデータが
第2のクロック207に同期してデータバスに読み出さ
れる際の読出しデータバッファ手段として共通に使用さ
れる。
【0072】加えて、本発明の第2の態様で、第2のク
ロック207の変化時点において第1のクロック206
に同期してアクティブとなるタイミング信号を生成する
タイミング信号生成手段(例えば微分回路1202)を
更に有し、書込みデータ格納制御手段203は、書込み
命令に基づいて、第2のクロック207に同期してデー
タバス上を転送されてくる書込みデータ205を、タイ
ミング信号生成手段が生成するタイミング信号に同期し
て書込みデータバッファ手段202に順次格納するよう
に構成することもできる。
【0073】図3は、本発明の第3の態様のブロック図
である。本発明の第3の態様は、第2のクロック308
に同期した読出し命令で起動されて、動作状態において
停止することのない第1のクロック307(例えばフリ
ーランクロックFCLK)に同期して連続アクセスモー
ドの下でメモリ装置を構成する複数のメモリ群301
(例えばRAM群1301)のうちの何れかより読み出
された複数の読出しデータ305を、読出しデータバッ
ファ手段302(例えばMDR1302)に格納した
後、その読出しデータバッファ手段302に格納された
複数の読出しデータ305を第2のクロック308(例
えばにゲーテッドクロックGCLK)に同期してデータ
バス306に出力するメモリ制御方式を前提とする。
【0074】そして、まず、読出しデータバッファ手段
302を、少なくとも、1つの読出し命令が発行された
後、メモリ群301から連続的に出力された複数の読出
しデータ305の全てが読出しデータバッファ手段30
2からデータバス306に出力され終わるまでの期間に
メモリ装置に入力する可能性のある読出し命令の数以上
の組数だけ有する。かつ、読出しデータバッファ手段3
02の各組は、1回の読出し命令で起動される連続アク
セスモードによってメモリ群301から連続的に出力さ
れた複数の読出しデータ305を格納できる長さを有す
る。
【0075】次に、読出し命令のそれぞれに対応して複
数のメモリ群301のうちの何れかより読み出された読
出しデータ305の組のそれぞれを、第1のクロック3
07に同期して、読出しデータバッファ手段302の組
のそれぞれに順次格納する読出しデータ格納制御手段3
03(例えばDEC1304)を有する。
【0076】そして、読出し命令のそれぞれに対応して
読出しデータバッファ手段302の組のそれぞれに順次
格納された読出しデータ305の組のそれぞれを、第2
のクロック308に同期して、データバス306に順次
出力する読出しデータ読出し制御手段304(例えばS
EL1303)を有する。
【0077】上述の本発明の第3の態様の構成におい
て、次のような第1及び第2のバッファ組選択手段を有
するように構成することができる。即ち、第1のバッフ
ァ組選択手段は、メモリ装置において読出し命令が起動
され又はその実行が終了する毎に、起動された読出し命
令に対応する読出しデータ305又は実行が終了した読
出し命令の次に起動された読出し命令に対応する読出し
データ305がメモリ群301から読み出されるのに同
期して、複数組の読出しデータバッファ手段302を順
次循環的に選択する。第2のバッファ組選択手段は、1
組の読出しデータバッファ手段302においてその読出
しデータバッファ手段302に格納された全ての読出し
データ305のデータバス306への出力が終了する毎
に、第1のバッファ組選択手段が読出しデータバッファ
手段302を選択した順で、複数組の読出しデータバッ
ファ手段302を順次循環的に選択する。
【0078】この場合に、読出しデータ格納制御手段3
03は、第1のバッファ組選択手段が選択した読出しデ
ータバッファ手段302に対して、読出しデータ305
の格納動作を実行する。また、読出しデータ読出し制御
手段304は、第2のバッファ組選択手段が選択した読
出しデータバッファ手段302に対して、読出しデータ
305のデータバス306への出力動作を実行する。
【0079】上述の構成において、複数組の読出しデー
タバッファ手段302を順次循環的に指定するための、
メモリ装置において読出し命令が起動され又はその実行
が終了する毎にカウンタ値が+1ずつされるカウンタ手
段(3ビットカウンタ1310)を更に有し、第1及び
第2のバッファ組選択手段は次のような構成を有するよ
うに構成することもできる。即ち、第1のバッファ組選
択手段は、カウンタ手段の出力を、メモリ装置において
読出し命令が起動され又はその実行が終了された時点か
ら起動された読出し命令に対応する読出しデータ305
又は実行が終了した読出し命令の次に起動された読出し
命令に対応する読出しデータ305のメモリ群301か
らの読出しが開始される時点までの時間だけ遅延させる
ための、第1のクロック307に同期して動作する第1
のシフトレジスタ手段(例えばFCL_PIPE131
1)と、その第1のシフトレジスタ手段から出力される
カウンタ手段の出力に基づいて、メモリ群301から読
み出された読出しデータ305の組のそれぞれを複数組
の読出しデータバッファ手段302のそれぞれに順次循
環的に入力させる第1のスイッチ手段(例えばDEC1
312)とから構成される。また、第2のバッファ組選
択手段は、カウンタ手段の出力を、メモリ装置において
読出し命令が起動され又はその実行が終了された時点か
ら起動された読出し命令に対応する読出しデータ305
又は実行が終了した読出し命令の次に起動された読出し
命令に対応する読出しデータ305の何れかの読出しデ
ータバッファ手段302からの読出しが開始される時点
までの時間だけ遅延させるための、第2のクロック30
8に同期して動作する第2のシフトレジスタ手段(例え
ばGCL_PIPE1313)と、その第2のシフトレ
ジスタ手段から出力されるカウンタ手段の出力に基づい
て、複数組の読出しデータバッファ手段302のそれぞ
れを順次循環的に選択し、その選択した読出しデータバ
ッファ手段302に格納された読出しデータ305をデ
ータバス306へ出力させる第2のスイッチ手段(例え
ばDEC1314及びSEL1306)とから構成され
る。
【0080】
【作用】本発明の第1の態様の作用は、次の通りであ
る。例えば、特には図示しない記憶制御装置が、メモリ
装置に対し第2のデータ単位数(Lバイト)のデータか
らなるブロックの書込み命令又は読出し命令を{第1の
データ単位数/第2のデータ単位数(K/L)}回発行
している途中で、1つのCPUからの第2のデータ単位
数(Lバイト)のデータからなる特定のブロックの要求
に関連して新たな第1のデータ単位数(Kバイト)のデ
ータからなるブロックをメモリ装置と特には図示しない
中間バッファ記憶装置などとの間で転送する必要が発生
した場合には、現在の{第1のデータ単位数/第2のデ
ータ単位数(K/L)}回の書込み命令群又は読出し命
令群の発行を中断し、上記新たなブロックの転送に関連
する{第1のデータ単位数/第2のデータ単位数(K/
L)}回の書込み命令群又は読出し命令群のうち先頭の
書込み命令又は読出し命令を優先的に実行させる。
【0081】この先頭の書込み命令又は読出し命令によ
って指定されるメモリ群101は、今までアクセスされ
ていたメモリ群101とは異なるメモリ群101である
確率の方が同じメモリ群101である確率よりも高い。
そして、アクセスされるメモリ群101が異なる場合に
は、メモリ群101が必要とする休止時間を考慮する必
要がなくなるため、アクセスされるメモリ群101の起
動を即座に行うことができる。
【0082】即ち、本発明の第1の態様では、第1のデ
ータ単位数(Kバイト)のデータからなるブロックが更
に細分化された第2のデータ単位数(Lバイト)のデー
タからなるブロックを単位としてメモリ群101へのデ
ータの割付けが行われることにより、複数のCPUから
の要求に関連するそれぞれ第2のデータ単位数(Lバイ
ト)のデータからなる複数のブロックの転送命令が同時
に発生しても、同じメモリ群101がアクセスされる確
率を低く抑えることができる。この結果、メモリ群10
1の起動時間の平均を短縮することができ、スループッ
トの高いメモリ装置を実現できる。
【0083】本発明の第2の態様の作用は、次の通りで
ある。即ち、本発明の第2の態様では、連続アクセスモ
ードのアクセス単位である第4のデータ単位数(Sバイ
ト)の書込みデータが揃った時点において第2のクロッ
ク207に同期して動作するメモリ群201が起動され
る。この結果、図2の構成を有するメモリ装置がシング
ルクロックモードで動作する場合においても、無効なデ
ータがメモリ群201に書き込まれてしまうという障害
を回避することができる。
【0084】ここで、本発明の第2の態様では、シング
ルクロックモード時において、メモリ群201の起動開
始がかなり遅れることになるが、この遅延はメモリ装置
の内部でのみ認識されるものであるため、計算機システ
ム全体のスループットには影響しない。
【0085】そして、本発明の第2の態様では、シング
ルクロックモード時において、ノーマルクロックモード
時と全く同様の動作が保証される。また、本発明の第2
の態様において、書込みデータバッファ手段202が2
組設けられる構成により、一方の書込みデータバッファ
手段202への書込みデータの書込み動作が実行されて
いる期間では、既に書込み動作が完了している書込みデ
ータバッファ手段202からメモリ群201への書込み
データの出力動作が実行される。この結果、メモリ装置
に対して、各書込み命令とそれぞれの命令に対応する書
込みデータを遅延なく連続して転送することができる。
【0086】更に、本発明の第2の態様において、メモ
リ装置に接続されるデータバスが読出しデータの転送と
書込みデータの転送に共通に使用される双方向バスであ
る場合に、書込みデータバッファ手段と読出しデータバ
ッファ手段を1つのデータバッファで共通に使用するこ
とができる。この場合に、第2のクロック207の変化
時点において第1のクロック206に同期してアクティ
ブとなるタイミング信号に基づいて書込みデータのデー
タバッファ手段への格納が実行される。これにより、読
出しデータの格納時には第1のクロック206に同期し
て動作するデータバッファ手段を、書込みデータの格納
にそのまま流用することができる。
【0087】加えて、本発明の第2の態様において、書
込みデータ格納制御手段203が、第2のクロック20
7に同期してデータバス上を転送されてくる書込みデー
タ205を、タイミング信号生成手段によって生成され
る第2のクロック207の変化時点において第1のクロ
ック206に同期してアクティブとなるタイミング信号
に同期して書込みデータバッファ手段202に順次格納
することにより、書込みデータバッファ手段202を、
第1のクロック206のみに基づいて動作する回路によ
って構成することができる。従って、外部に簡単なタイ
ミング信号生成手段を設けるだけで、書込みデータバッ
ファ手段202を1種類のクロックのみによって動作す
る汎用のデータレジスタファイルで構成することができ
る。
【0088】本発明の第3の態様の作用は、次の通りで
ある。読出し命令は、メモリ装置内で遅延されることな
くメモリ群301を起動し、この結果連続的に読み出さ
れるそれぞれ複数個ずつの読出しデータ305の組のそ
れぞれは、データ格納制御手段303によって、読出し
データバッファ手段302の組のそれぞれに順次格納さ
れる。従って、例えば、メモリ装置がシングルクロック
モードで動作する場合において、1組の読出しデータバ
ッファ手段302内からの読出しデータ305の読出し
が完了するまでの期間内に、新たな複数個の読出し命令
がメモリ装置に入力しそれらによってメモリ群301が
起動され新たな読出しデータ305の組が読み出されて
も、それらを他の複数組の読出しデータバッファ手段3
02に順次格納することができ、読出しデータの欠落を
防止することができる。
【0089】この場合、メモリ装置がノーマルクロック
モード及びシングルクロックモードの何れの状態で動作
する場合であっても、読出し命令はメモリ装置内で遅延
されることなくメモリ群301を起動させる。即ち、本
発明の第3の態様では、ノーマルクロックモードとシン
グルクロックモードとでメモリ装置内の動作が全く同じ
であるため、シングルクロックモードを使用してノーマ
ルクロックモード時に発生したメモリ装置の障害の解析
を容易に行うことができる。
【0090】
【実施例】以下、図面を参照しながら、本発明の実施例
につき詳細に説明する。 <第1の実施例>図4は、本発明の第1の実施例におけ
る主記憶装置の構成図である。この実施例は、具体的に
は、前述した第1の技術分野における第1の従来技術が
有している問題点を解決するものである。
【0091】図4において、主記憶装置へのアクセス単
位(ワード)のサイズは8バイトである。次に、主記憶
装置は、バンク0〜バンク7という8組のRAM群40
1から構成されている。これは、上述の主記憶装置と特
には図示しない中間バッファ記憶装置との間のデータ転
送におけるブロックサイズKを例えば512バイト、こ
のK=512バイトのデータからなるブロックが更に細
分化されることによるブロックL=Sを例えば64バイ
トとした場合に、K/S=8個のRAM群401が必要
なためである。1組のRAM群401は、図4に示され
るように、1メガワードの記憶容量を有するDRAMチ
ップによって構成される。従って、図4に示される主記
憶装置全体では、以下の記憶容量を有する。 8バイト×1メガワード×8バンク=64メガバイト ここで、上述の主記憶装置と特には図示しない中間バッ
ファ記憶装置との間のデータ転送におけるブロックサイ
ズKは例えば512バイトであり、1組のRAM群40
1は、このK=512バイトのデータからなるブロック
が更に細分化された例えばL=64バイト(=8ワー
ド)のデータからなるブロックを単位として、データを
記憶する。
【0092】そして、第1の従来技術の場合と同様に、
特には図示しない記憶制御装置は、主記憶装置に対し、
K=512バイトのデータからなるブロックの書込み命
令又は読出し命令を1回発行するのではなく、L=64
バイトのデータからなるブロックの書込み命令又は読出
し命令をK/L=512/64=8回発行する。このよ
うな構成が採用される理由は、前述したように、中間バ
ッファ記憶装置からCPU内のバッファ記憶装置に即座
にムーブインする必要のあるLバイトのデータを最初の
読出し命令により主記憶装置から中間バッファ記憶装置
へ最優先にムーブインさせることで、記憶システムの応
答性能を向上させるためである。
【0093】図4に示される主記憶装置内の特には図示
しない制御回路は、記憶制御装置から送出された1つの
書込み命令又は読出し命令に設定されているアドレスに
基づいて、各RAM群401を制御する。このアドレス
は、L(ex. 64)バイトからなる書込みデータ又は読
出しデータの先頭アドレスを示している。そして、この
アドレス内のバンクアドレス部の値に従って、バンク0
〜バンク7のRAM群401のうち何れか1つが選択さ
れ、起動される。同時に、上述のアドレス内のRAMア
ドレス部は、バンク0〜バンク7のRAM群401に出
力され、起動されたRAM群401内のアドレスレジス
タにセットされる。
【0094】RAM群401は、連続アクセスモードで
動作する。即ち、起動されたRAM群401は、上述の
アドレスレジスタの値をCAS信号(列アドレス信号)
に同期して+1ずつ更新する動作を、8回繰り返し実行
する。
【0095】そして、記憶制御装置が書込み命令を発行
した場合には、起動されたRAM群401は、各更新動
作毎に、記憶制御装置から転送されてくる8バイトから
なる書込みデータを、アドレスレジスタの値によって指
定されるセル部に書き込む。このような動作が、1回の
書込み命令に対応して8回連続して実行されることによ
り、起動されたRAM群401にL=64バイトのデー
タからなるブロックが書き込まれる。
【0096】一方、記憶制御装置が読出し命令を発行し
た場合には、起動されたRAM群401は、各更新動作
毎に、アドレスレジスタの値により指定されるセル部か
ら、8バイトからなる読出しデータを読み出し、それを
記憶制御装置に向けて出力する。このような動作が、1
回の読出し命令に対応して8回連続して実行されること
により、起動されたRAM群401からL=64バイト
のデータからなるブロックが読み出される。
【0097】記憶制御装置は、主記憶装置に対してL=
64バイトのデータからなるブロックの書込み命令又は
読出し命令をK/L=8回発行している途中で、1つの
CPUからのLバイトのデータからなる特定のブロック
の要求に関連して新たなK=512バイトのデータから
なるブロックを主記憶装置と中間バッファ記憶装置との
間で転送する必要が発生した場合には、現在のK/L=
8回の書込み命令群又は読出し命令群の発行を中断し、
上記新たなブロックの転送に関連するK/L=8回の書
込み命令群又は読出し命令群のうち先頭の書込み命令又
は読出し命令を優先的に実行させる。
【0098】この先頭の書込み命令又は読出し命令によ
って指定されるRAM群401は、今までアクセスされ
ていたRAM群401とは異なるRAM群401である
確率の方が同じRAM群401である確率よりも高い。
そして、アクセスされるRAM群401が異なる場合に
は、RAM群401を構成するDRAMが必要とする休
止時間を考慮する必要がなくなるため、アクセスされる
RAM群401の起動を即座に行うことができる。即
ち、第1の実施例では、K=512バイトのデータから
なるブロックが更に細分化されたL=64バイトのデー
タからなるブロックを単位としてRAM群401へのデ
ータの割付けが行われることにより、複数のCPUから
の要求に関連するそれぞれL=64バイトのデータから
なる複数のブロックの転送命令が同時に発生しても、同
じRAM群401がアクセスされる確率を低く抑えるこ
とができる。この結果、RAM群401の起動時間の平
均を短縮することができ、スループットの高い主記憶装
置を実現することができる。また、逆に、他のCPUか
ら新たな要求がない場合は、K/L=8回の書込み命令
又は読出し命令を連続して行えるため、1つのブロック
に対する処理を最短時間で完結させることができる。
【0099】上述した第1の実施例においては、K/L
=8であって、バンク0〜バンク7の8組のRAM群4
01が使用されているが、実際には、バンク0、バンク
1、・・・という順番でL=64バイトのデータからな
るブロックが順次処理されてゆくと、例えばバンク2又
はバンク3がアクセスされている時点でバンク0のビジ
ー状態が終了し、バンク0を再びアクセスすることが可
能となる。従って、RAM群401の組数を4組程度と
し、1回のL=64バイトのデータからなるブロックの
転送命令に対応して、1つのRAM群401が2回ずつ
起動されるように構成することにより、上述の第1の実
施例の場合と同じスループットを確保することができ
る。即ち、バンク数をK/L個以下に減らすことができ
る。
【0100】また、上述した第1の実施例においては、
バッファ記憶装置と中間バッファ記憶装置間、及び中間
バッファ記憶装置と主記憶装置間でそれぞれ転送される
データのブロックサイズが異なる記憶システムにおい
て、DRAMを使用した主記憶装置に対して連続アクセ
スモードを使用して効率的にアクセスを行う技術に、具
体的に関連するものである。しかし、第1の実施例は本
発明の適用例の一例にすぎない。本発明は、より一般的
には、DRAMを使用した主記憶装置に対して複数のC
PUなどがCPU間で優先順位をとりながらLバイト単
位の連続アクセスモードを使用してL×複数回(この回
数はCPU間で異なってもよい)バイトのアクセスを行
う技術に広く適用できる。 <第2の実施例>図5は、本発明の第2の実施例の構成
図である。この実施例は、具体的には、前述した第2の
技術分野における第2の従来技術が有している問題点を
解決するものである。また、第2の実施例は、上述した
第1の実施例の構成を基本としている。
【0101】即ち、図4の場合と同様に、図5に示され
る主記憶装置502内の1組のRAM群509(図5で
はバンク0のRAM群509のみが示されている)は、
例えばL=64バイト(=8ワード)のデータからなる
ブロックを単位として、連続アクセスモードでアクセス
される。
【0102】このような構成が採用されることにより、
第1の実施例において説明したように、RAM群401
の組数を4組程度とし、1回のL=64バイトのデータ
からなるブロックの転送命令に対応して、1つのRAM
群401が2回ずつ起動されるように構成することによ
り、図16に示される前述した第2の従来技術に比較し
て、RAM群のバンク数を削減することができる。
【0103】但し、記憶制御装置からの書込みデータを
受信するための書込みデータレジスタ(WD_REG)
の数が、図16に示される第2の従来技術の場合と同様
に1つのRAM群あたり1つのみに設定された場合、次
のような問題点が生ずる。即ち、このような構成の主記
憶装置がシングルクロックモードで動作した場合は、記
憶制御装置からの1個(1ワード=8バイト)の書込み
データがGCLKに同期して1つのWD_REGに書き
込まれた時点で、RAM群が起動される。そして、RA
M群は、連続アクセスモードを使用することにより、F
CLKに同期して8個(8ワード)のデータの書込み処
理を一気に実行してしまう。この結果、RAM群に書き
込まれるデータにおいて、最初の1ワードのみが有効な
データとなり残りの7ワードは無効なデータとなってし
まうという、重大な障害が発生する。
【0104】このような問題の発生を回避するために、
図5に示される第2の実施例では、記憶制御装置501
からの8ワード分の書込みデータを保持するための#0
〜#7の8個のWD_REG504が設けられ、これら
全てにデータが格納された後にRAM群509が起動さ
れるように構成される。なお、図16に示される第2の
従来技術においても#0〜#7の8個のWD_REG1
604が設けられているが、これらは、バンク0〜バン
ク7の8個のRAM群1605に対応して設けられるも
のであり、図5に示される#0〜#7のWD_REG5
04とは、機能が異なる。なお、8個のWD_REG5
04と、デコーダ(DEC)506及び507、並びに
選択回路505からなる部分は、例えば、データレジス
タファイル508という1つの集積回路として提供され
る。まず、図5において、図16に示される第2の従来
技術の場合と同様に、主記憶装置502に対する書込み
アクセス時の書込みデータは、記憶制御装置501と主
記憶装置502間に設けられる書込みデータバス503
を経由して、記憶制御装置501から主記憶装置502
に転送される。GCLKが入力される毎に、書込みデー
タバスのバス幅により決定されるデータ量を有する書込
みデータが、主記憶装置502に転送される。
【0105】この実施例において、1回の書込み命令に
よって転送されるブロックサイズLを64バイトとし、
書込みデータバス503のデータ幅を8バイトとする
と、1組の書込み命令STR64とアドレスADDが記
憶制御装置501より送出された後、8バイトからなる
書込みデータが、記憶制御装置501よりGCLKに同
期して8回送出される。
【0106】この構成で、L=64バイトのデータから
なるブロック内の最初の8バイトからなる書込みデータ
が、書込み命令STR64及びアドレスADDと共に、
記憶制御装置501から主記憶装置502にGCLKに
同期して転送されてきた場合に、主記憶装置502内で
は、転送が開始された後に最初に発生するGCLKに同
期したタイミング(このタイミングをステージ0と定義
する)において、書込みデータはフリップフロップ(F
/F)510に、書込み命令STR64及びアドレスA
DDはF/F512に保持される。そして、ステージ0
において、F/F512に保持されたアドレスADD中
の3ビットからなるバンクアドレス部BANK ADD
の値は、GCLKに同期して+1ずつカウントアップす
る3ビットカウンタ513及び516に入力され、ま
た、書込み命令STR64は、3ビットカウンタ514
を起動する。
【0107】3ビットカウンタ513は、ステージ0に
おいてのみ、3ビットからなるバンクアドレス部BAN
K ADDの値をそのまま出力し、その後のステージ1
〜ステージ7にかけてGCLKが入力される毎に、バン
クアドレス部BANK ADDの値を初期値として+1
ずつカウントアップする。なお、3ビットカウンタ51
3において、カウント値は、それが7に達した後は0に
戻り、0から再びカウントアップする。3ビットカウン
タ513のカウント値は、デコーダ(DEC)506で
デコードされる。この結果、上記カウント値に対応する
書込みデータ設定信号WD_SETi(iは、0〜7の
うち何れか)が順次アクティブとなることにより、ステ
ージ0〜7において記憶制御装置501からF/F51
0に順次入力された書込みデータが、ステージ0〜7に
おいて、書込みデータ設定信号WD_SETiに対応す
る#iのWD_REG504に順次格納される。
【0108】例えば、バンクアドレス部BANK AD
Dの値が0である場合には、ステージ0〜7において、
書込みデータ設定信号WD_SET0〜WD_SET7
が順次アクティブとなることにより、記憶制御装置50
1から転送されてきた8ワード分の書込みデータは、8
個のWD_REG504に、#0、#1、・・・、#7
の順で書き込まれる。また、例えば、バンクアドレス部
BANK ADDの値が4である場合には、ステージ0
〜7において、書込みデータ設定信号WD_SET4〜
WD_SET7、WD_SET0〜WD_SET3が順
次アクティブとなることにより、記憶制御装置501か
ら転送されてきた8ワード分の書込みデータは、8個の
WD_REG504に、#4、#5、#6、#7、#
0、#1、#2、#3の順で書き込まれる。
【0109】一方、3ビットカウンタ514は、書込み
命令STR64により起動された後に、8個のGCLK
の入力をカウントした後にカウント終了信号CENDを
出力する。従って、このカウント終了信号CENDの出
力タイミングは、8個全てのWD_REG504への書
込みデータの格納が終了した時点である。微分回路51
5は、カウント終了信号CENDの立上がりでアクティ
ブとなる書込み開始信号FCL_STARTを生成す
る。この書込み開始信号FCL_STARTは、3ビッ
トカウンタ516を起動する。
【0110】3ビットカウンタ516は、ステージ0に
おいてのみ、3ビットからなるバンクアドレス部BAN
K ADDの値をそのまま出力し、その後のステージ1
〜ステージ8にかけてFCLKが入力される毎に、バン
クアドレス部BANK ADDの値を初期値として+1
ずつカウントアップする。なお、3ビットカウンタ51
3の場合と同様に、3ビットカウンタ516において、
カウント値は、それが7に達した後は0に戻り、0から
再びカウントアップする。3ビットカウンタ516のカ
ウント値は、デコーダ(DEC)507でデコードされ
る。この結果、FCLKに同期して、上記カウント値に
対応する選択信号SELi(iは、0〜7のうち何れ
か)が順次アクティブとなることによって、選択回路5
05は、#iのWD_REG504から出力されている
書込みデータを、FCLKに同期して順次選択し出力す
る。
【0111】例えば、バンクアドレス部BANK AD
Dの値が0である場合には、選択信号SEL0〜SEL
7が順次アクティブとなることにより、選択回路505
は、8個のWD_REG504から出力されている8ワ
ード分の書込みデータを、FCLKに同期して、#4、
#5、#6、#7、#0、#1、#2、#3の順で選択
し出力する。また、例えば、バンクアドレス部BANK
ADDの値が4である場合は、選択信号SEL4〜S
EL7、SEL0〜SEL3が順次アクティブとなるこ
とにより、選択回路505は、8個のWD_REG50
4から出力されている8ワード分の書込みデータを、F
CLKに同期して、#4、#5、#6、#7、#0、#
1、#2、#3の順で選択し出力する。
【0112】選択回路505から出力された書込みデー
タは、FCLKに同期して動作するF/F511を介し
て、RAM群509に入力される。一方、微分回路51
5から出力された書込み開始信号FCL_START
は、FCLKに同期して動作するF/F517に格納さ
れる。そして、このF/F517の出力が、負論理RA
S信号(行アドレス信号)等として、RAM群509へ
供給される。これと共に、負論理RAS信号は、FCL
Kに同期して動作するF/F518を介して特には図示
しないタイミングジェネレータに入力される。このタイ
ミングジェネレータは、RAM群1605が1回の書込
み動作に必要なタイミング信号をFCLKに同期して生
成する。この結果、F/F511からRAM群509に
入力された書込みデータが、FCLKに同期してRAM
群1605に書き込まれる。
【0113】なお、複数のRAM群509を選択するた
めの回路は、特には図示しないが、F/F512に入力
されたアドレスADDに基づいてRAM群509を選択
するための信号を生成する公知の回路として実現するこ
とができる。
【0114】このように、第2の実施例では、8ワード
全ての書込みデータが揃った時点においてFCLKに同
期して動作するRAM群509が起動されることによ
り、図5に示される記憶制御装置501及び主記憶装置
502がシングルクロックモードで動作する場合におい
ても、無効なデータがRAM群509に書き込まれてし
まうという障害を回避することができる。ここで、第2
の実施例では、シングルクロックモード時において、R
AM群509の起動開始がかなり遅れることになるが、
この遅延は主記憶装置502の内部でのみ認識されるも
のであるため、計算機システム全体のスループットには
影響しない。そして、第2の実施例では、シングルクロ
ックモード時において、ノーマルクロックモード時と全
く同様の動作が保証されるという効果を得ることができ
る。
【0115】図5に示される主記憶装置502のノーマ
ルクロックモード時における動作タイミングの例を、図
6に示す。図6において、タイミング0τ〜18τは、
GCLK=FCLK(ノーマルクロックモード時)を単
位とするクロックタイミングである。
【0116】まず、図6(a) に示されるように、タイミ
ング0τにおいて、書込み命令STR64及びアドレス
ADDがF/F512に入力される。また、図6(b) に
示されるタイミング0τ〜7τにおいて記憶制御装置5
01からF/F510に順次入力された8ワード分の書
込みデータが、8個のWD_REG504に順次格納さ
れる。図6(c) に示されるように、タイミング8τにお
いてカウント終了信号CENDがアクティブとなるた
め、タイミング9τ以降に3ビットカウンタ516が動
作を開始する。この結果、例えば図6(d) に示されるよ
うに、FCLK(=GCLK)に同期したタイミング9
τ〜16τにおいて、選択信号SEL0〜SEL7が順
次アクティブとなることにより、#0〜#7のWD_R
EG504の出力が選択回路505によって順次選択さ
れ、例えば図6(e) に示されるように、FCLK(=G
CLK)に同期したタイミング10τ〜17τにおい
て、F/F511から例えばバンク0のRAM群509
へ出力される。これ以降、バイト0のRAM群509
は、連続アクセスモードで動作する。即ち、例えば図6
(f) に示されるように、FCLK(=GCLK)に同期
したタイミング10τ〜17τにおいて、特には図示し
ないタイミングジェネレータから8パルスの負論理CA
S信号が順次出力されることによって、図6(e) に示さ
れるようにしてF/F511から出力された8ワード分
の書込みデータが、バンク0のRAM群509へ順次書
き込まれる。続いて、図5に示される主記憶装置502
のシングルクロックモード時における動作タイミングの
例を、図7に示す。主記憶装置502は、シングルクロ
ックモード時も、上述したノーマルクロックモード時と
同様に動作する。
【0117】この場合、図7に示されるように、GCL
Kの周期は、一般的に、FCLKの周期に比較して非常
に長くなる。シングルクロックモード時では、図7(a)
に示されるように、記憶制御装置501からF/F51
0に順次入力された8ワード分の書込みデータ全てが8
個のWD_REG504に格納され終わった、GCLK
に同期した時点GCLK8において、図7(b) に示され
るように、カウント終了信号CENDがアクティブとな
る。この結果、図7(c) に示されるように、上記時点G
CLK8に対応するFCLKに同期した時点において微
分回路515から出力される開始信号FCL_STAR
Tがアクティブとなるため、それ以降3ビットカウンタ
516が動作を開始する。この結果、例えば図7(d) に
示されるように、FCLKに同期して、選択信号SEL
0〜SEL7が順次アクティブとなることにより、#0
〜#7のWD_REG504の出力が選択回路505に
よって順次選択され、例えば図7(e) に示されるよう
に、FCLKに同期して、F/F511から例えばバン
ク0のRAM群509へ出力される。これ以降、バイト
0のRAM群509は、FCLKに同期して、連続アク
セスモードで動作する。即ち、例えば図7(f) に示され
るように、FCLKに同期して、特には図示しないタイ
ミングジェネレータから8パルスの負論理CAS信号が
順次出力されることによって、図7(e) に示されるよう
にしてF/F511から出力された8ワード分の書込み
データが、バンク0のRAM群509へ順次書き込まれ
る。この書込み動作は、時点GCLK8の後にGCLK
が入力される時点GCLK9よりも前に終了する。 <第3の実施例>図8は、本発明の第3の実施例の構成
図である。この実施例は、具体的には、上述した第2の
実施例の性能を更に改善するものである。
【0118】図5に示される第2の実施例においては、
1つの書込み命令STR64に対応する8個の書込みデ
ータレジスタ(WD_REG)504に格納された8組
の書込みデータがF/F511へ出力され終わるまで
は、記憶制御装置501は次の書込み命令STR64に
対応する新たな8個の書込みデータをF/F510を介
してWD_REG504へ書き込むことはできない。
【0119】これに対して、図8に示される構成を有す
る第3の実施例は、記憶制御装置501が書込み命令S
TR64を遅延なく連続して発行することを可能にす
る。図8は、第3の実施例における主記憶装置502の
主要部の構成を示した図である。図8で、図5の場合と
同じ番号が付された部分は、図5の場合と同じ機能を有
する。図8の構成が図5の構成と大きく異なる点は、#
0〜#7のWD_REG504、選択回路505、及び
DEC506からなる部分が、aグループ及びbグルー
プとして示されるように、2組設けられている点であ
る。ここで、aグループに属する部分はWD_REG5
04a、選択回路505a、及びDEC506aの如く
示され、bグループに属する部分はWD_REG504
b、選択回路505b、及びDEC506bの如く示さ
れる。
【0120】ここで、DEC506aからの書込みデー
タ設定信号WD_SET0a〜WD_SET07aに基
づく8個のWD_REG504aへの書込みデータの書
込み動作、又はDEC506bからの書込みデータ設定
信号WD_SET0b〜WD_SET07bに基づく8
個のWD_REG504bへの書込みデータの書込み動
作は、図5の構成を有する前述した第2の実施例におけ
るDEC506からの書込みデータ設定信号WD_SE
T0〜WD_SET07に基づく8個のWD_REG5
04への書込みデータの書込み動作と全く同様である。
また、特には図示しない回路部分から出力される選択信
号SEL0〜SEL7に基づく選択回路505a及び5
05bの動作は、図5の構成を有する前述した第2の実
施例における3ビットカウンタ514、微分回路51
5、3ビットカウンタ516、及びDEC507からな
る回路部分から出力される選択信号SEL0〜SEL7
に基づく選択回路505の動作と全く同様である。
【0121】反転F/F801は、図9(c) 、(d) 、
(g) に示されるように、図5に示される3ビットカウン
タ514と同様の特には図示しないカウンタから第2の
実施例の場合と同様のカウント終了信号CENDが入力
される毎に、自身の負論理出力であるDECa_ENB
L信号を自身の正論理入力に入力させることにより、自
身の正論理出力であるDECb_ENBL信号の論理値
及び自身の負論理出力であるDECa_ENBL信号の
論理値を、0と1の間で交互に切り替える。
【0122】そして、DECa_ENBL信号の論理値
が1(DECb_ENBL信号の論理値が0)である期
間では、DEC506bが動作せずDEC506aが動
作することにより、図9(a) に示される書込み命令ST
R64(タイミング0τ)と共に特には図示しない記憶
制御装置からF/F510へ順次入力される図9(b)に
示される8組の書込みデータ(0a〜7a)は、図9
(e) に示されるように、8個のWD_REG504a
(aグループ)へ順次書き込まれる。逆に、DECb_
ENBL信号の論理値が1(DECa_ENBL信号の
論理値が0)である期間では、DEC506aが動作せ
ずDEC506bが動作することにより、図9(a) に示
される書込み命令STR64(タイミング8τ)と共に
特には図示しない記憶制御装置からF/F510へ順次
入力される図9(b) に示される8組の書込みデータ(0
b〜7b)は、図9(f) に示されるように、8個のWD
_REG504b(bグループ)へ順次書き込まれる。
【0123】ここで、カウント終了信号CENDは、反
転F/F801がその負論理出力であるDECa_EN
BL信号をアクティブにしている時は8個のWD_RE
G504a(aグループ)への書込みデータの格納が終
了した時点(図9(g) のタイミング8τ)、反転F/F
801がその正論理出力であるDECb_ENBL信号
をアクティブにしている時は8個のWD_REG504
b(bグループ)への書込みデータの格納が終了した時
点(図9(g) のタイミング16τ)において、アクティ
ブになる。
【0124】従って、例えば、1つの書込み命令STR
64に対応する8組の書込みデータが8個のWD_RE
G504a(aグループ)へ書き込まれ終わると、次の
書込み命令STR64に対応する8組の書込みデータが
8個のWD_REG504b(bグループ)へ書き込ま
れ、そのbグループへの書込み動作が終了すると、更に
次の書込み命令STR64に対応する8組の書込みデー
タが8個のWD_REG504a(aグループ)へ書き
込まれる。
【0125】一方、DECa_ENBL信号の論理値が
1(DECb_ENBL信号の論理値が0)である場合
には、選択回路802が選択回路505b(bグルー
プ)の出力を選択することによって、選択回路505b
が選択信号SELi(例えば図9(h) に示されるSEL
0〜7)に基づいて順次出力する既に書込み動作が完了
している8個のWD_REG504b(bグループ)に
格納されている8組の書込みデータが、例えば図9(i)
の0b、1b、2b、・・・として示されるように、F
/F511へ順次転送される。逆に、DECa_ENB
L信号の論理値が0(DECb_ENBL信号の論理値
が1)である場合は、選択回路802が選択回路505
a(aグループ)の出力を選択することによって、選択
回路505aが選択信号SELi(例えば図9(h) に示
されるSEL0、1、2、・・・)に基づいて順次出力
する既に書込み動作が完了している8個のWD_REG
504a(aグループ)に格納されている8組の書込み
データが、例えば図9(i) の0a〜7aとして示される
ように、F/F511へ順次転送される。
【0126】以上のように、WD_REG504a(a
グループ)への書込みデータの書込み動作が実行されて
いる期間では、既に書込み動作が完了しているWD_R
EG504b(bグループ)から特には図示しないRA
M群への書込みデータの出力動作が実行され、WD_R
EG504b(bグループ)への書込みデータの書込み
動作が実行されている期間では、既に書込み動作が完了
しているWD_REG504a(aグループ)から特に
は図示しないRAM群への書込みデータの出力動作が実
行される。この結果、特には図示しない記憶制御装置
は、主記憶装置502に対して、各書込み命令STR6
4とそれぞれの命令に対応する書込みデータを遅延なく
連続して転送することができる。 <第4の実施例>図10は、本発明の第4の実施例の構
成図である。
【0127】第2の実施例(図5)又は第3の実施例
(図8)として示したように、連続アクセスモードの機
能を有する主記憶装置のシングルクロックモード時での
書込み動作の正常性を保証するために、記憶制御装置か
らGCLKに同期して転送されてきた書込みデータは、
連続アクセスモードのアクセス単位に対応する個数の書
込みデータレジスタ(WD_REG)に順次格納され、
これら複数のWD_REGの全ての内容が確定した後
に、それらの内容が連続アクセスモードの下でFCLK
に同期して連続的にRAM群に書き込まれる。
【0128】一方、第3の従来技術(図18)として示
したように、連続アクセスモードの機能を有する主記憶
装置のシングルクロックモード時での読出し動作の正常
性を保証するために、連続アクセスモードの下でFCL
Kに同期してRAM群から連続的に読み出された連続ア
クセスモードのアクセス単位に対応する個数の読出しデ
ータは、上記個数の読出しデータレジスタ(MDR)に
順次格納された後に、GCLKに同期して記憶制御装置
に転送される。
【0129】上述したような書込みデータレジスタ(W
D_REG)又は読出しデータレジスタ(MDR)は、
主記憶装置が通常の動作状態であるノーマルクロックモ
ードで動作する際には、本来不要なハードウエアであ
る。従って、主記憶装置のコストを抑制するためにも、
シングルクロックモードにおいてのみ必要とされるハー
ドウエアの規模は極力縮小させることが望ましい。
【0130】もし、記憶制御装置と主記憶装置間のデー
タバスが、書込みデータの転送と読出しデータの転送に
共通に使用される双方向バスの構成を採る場合、書込み
動作と読出し動作は同時に発生することはない。このよ
うな前提の下で、以下に説明する第4の実施例において
は、1組のデータレジスタが1組の書込みデータレジス
タ(WD_REG)又は1組の読出しデータレジスタ
(MDR)の何れか一方として選択的に使用されること
で、ハードウエア規模の削減が実現される。
【0131】ここで、第2又は第3の実施例の説明にお
いて前述したように、書込みデータレジスタ(WD_R
EG)への書込みデータの書込み動作は、GCLKに同
期して記憶制御装置から送出される書込みデータを格納
できるように、GCLKに同期して実行される必要があ
る。一方、第3の従来技術の説明において前述したよう
に、読出しデータレジスタ(MDR)への読出しデータ
の書込み動作は、FCLKに同期して動作するRAM群
から出力される読出しデータを格納できるように、FC
LKに同期して実行される必要がある。
【0132】そこで、図10に示される構成を有する第
4の実施例においては、GCLKに同期している信号を
FCLKに同期する信号に変換する機構が設けられるこ
とにより、FCLKに同期して動作する#0〜#7の1
組のデータレジスタ(DR)1001に、GCLKに同
期して入力される書込みデータとFCLKに同期して入
力される読出しデータの両方を選択的に格納することが
できる。
【0133】まず、図10の構成を含む主記憶装置が特
には図示しない記憶制御装置から読出し命令を受けた場
合の動作につき説明する。まず、読出し状態又は書込み
状態を指示するR/W信号は、特には図示しない記憶制
御装置から出力される信号であるため、GCLKに同期
している。このR/W信号が読出し状態を指示している
場合は、選択回路(SEL)1006が読出しデータバ
ス1002を選択する。この結果、FCLKに同期して
動作する特には図示しないRAM群(例えば図18のR
AM群1801などに対応する)から読出しデータバス
1002に読み出されてきた読出しデータは、FCLK
に同期して動作するF/F1004を介して、#0〜#
7のDR1001に入力される。
【0134】一方、RD_SELデータが示す値を初期
値としてFCLKに同期して+1ずつカウントアップす
る3ビットカウンタ1011のカウント出力値がデコー
ダ(DEC)1012によってデコードされる結果、そ
のDEC1012から出力されるFCLKの1クロック
分の時間幅を有する読出しデータ設定信号RDST0〜
RDST7が順次アクティブとなる。これらの読出しデ
ータ設定信号RDST0〜RDST7は、#0〜#7の
オアゲート(OR)1017を介して#0〜#7のDR
1001に入力される。
【0135】この結果、読出しデータバス1002から
FCLKに同期して順次入力される8組の読出しデータ
は、#0〜#7のDR1001に順次格納される。ま
た、GCLKに同期して動作する特には図示しない3ビ
ットカウンタから出力された選択データが特には図示し
ないデコーダによってデコードされる結果、そのデコー
ダからSEL1010へは、順次アクティブとなる選択
信号DMPX_RD0〜DMPX_RD7が供給され
る。そして、R/W信号が読出し状態を指示している場
合には、SEL1010は、選択信号DMPX_RD0
〜DMPX_RD7を選択する。この結果として、8個
のDR1001の出力のそれぞれは、SEL1007に
より順次選択され、GCLKに同期して動作し8バイト
のデータ幅を有するF/F1008を介して、それぞれ
8バイトからなる8個のメモリ読出しデータMRDとし
て、特には図示しない記憶制御装置に順次出力される。
【0136】次に、図10の構成を含む主記憶装置が特
には図示しない記憶制御装置から書込み命令を受けた場
合の動作につき説明する。R/W信号が書込み状態を指
示している場合は、SEL1006が書込みデータバス
1003を選択する。この結果、GCLKに同期して書
込みデータバス1003上を転送されてきた特には図示
しない記憶制御装置からの8組の書込みデータは、GC
LKに同期して動作するF/F1005を介して、#0
〜#7のDR1001に入力される。
【0137】一方、特には図示しない記憶制御装置から
指定された書込みアドレス中の3ビットからなるバンク
アドレス部BANK ADDの値は、GCLKに同期し
て+1ずつカウントアップする3ビットカウンタ101
3に入力される。3ビットカウンタ1013は、前述し
た第2の実施例における図5に示される3ビットカウン
タ513と同様の機能を有する。即ち、3ビットカウン
タ1013は、GCLKに同期した最初のタイミングに
おいてのみ、3ビットからなるバンクアドレス部BAN
K ADDの値をそのまま出力し、その後GCLKが入
力される毎に、バンクアドレス部BANK ADDの値
を初期値として+1ずつカウントアップする。なお、3
ビットカウンタ1013において、カウント値は、それ
が7に達した後は0に戻り、0から再びカウントアップ
する。3ビットカウンタ1013のカウント値は、デコ
ーダ(DEC)1014でデコードされる。
【0138】ここで、3ビットカウンタ1013でのカ
ウントアップ動作に同期して、セット/リセット型のF
/F1015は、特には図示しない記憶制御装置から書
込み命令STR64が入力されるタイミングでセットさ
れる。また、3ビットカウンタ1016は、上記書込み
命令STR64の入力タイミングで起動された後に、カ
ウンタ出力の3ビットをアンドゲート(AND)101
9に入力させる。これにより、3ビットカウンタ101
6が8個のGCLKの入力をカウントして3ビットのカ
ウンタ出力の全てがアクティブとなった時点で、AND
1019がオンとなる。従って、8個のGCLKがカウ
ントされた時点で、AND1019の出力によりF/F
1015がリセットされる。この結果、F/F1015
は、書込み命令STR64の入力タイミングからGCL
Kの8クロック分の時間幅だけアクティブとなる8T_
VALID信号を出力する。そして、AND1018
は、この8T_VALID信号がアクティブである期間
において、GCLKの変化時にアクティブとなるFCL
Kの1クロック分の時間幅を有する上述した+TRIG
信号を、DEC1014に対して、デコード許可信号と
して入力させる。
【0139】この結果、DEC1014は、3ビットカ
ウンタ1013からのGCLKに同期して変化するカウ
ント値に対応する書込みデータ設定信号WDST0〜W
DST7を、それぞれFCLKに同期してFCLKの1
クロック分の時間幅だけ順次アクティブにする。これら
の書込みデータ設定信号WDST0〜WDST7は、#
0〜#7のオアゲート(OR)1017を介して#0〜
#7のDR1001に入力される。
【0140】この結果、書込みデータバス1003から
GCLKに同期して順次入力される8組の書込みデータ
は、FCLKに同期して動作する#0〜#7のDR10
01に順次格納される。
【0141】このように、DR1001は常にFCLK
に同期して動作するが、書込みデータの格納時には、G
CLKの変化タイミングにおいてのみ書込みデータがD
R1001に書き込まれることにより、DR1001を
書込みデータの格納用と読出しデータの格納用に共通に
使用することができる。
【0142】一方、R/W信号が書込み状態を指示して
いる場合には、SEL1010は、選択信号SEL0〜
SEL7を選択する。これらの選択信号SEL0〜SE
L7は、前述した第2の実施例における図5の3ビット
カウンタ514、微分回路515、3ビットカウンタ5
16、及びDEC507からなる回路部分に対応する特
には図示しない回路部分から出力され、FCLKに同期
して順次アクティブになる。この結果として、8個のD
R1001に格納されている8組の書込みデータのそれ
ぞれは、SEL1007により順次選択され、FCLK
に同期して動作し8バイトのデータ幅を有するF/F1
009を介して、8組のバンク書込みデータとして、特
には図示しないRAM群に順次書き込まれる。
【0143】図11は、図10に示されるFCLKトリ
ガ回路1020の動作タイミングチャートである。GC
LKに同期して動作するF/F1021とインバータ1
022からなる部分は、図11(b) に示される+GSI
G信号及び図11(c) に示される−GSIG信号を生成
する。これらの信号は、互いに極性が逆であり、共に図
11(a) に示されるGCLKに同期して値が変化する。
【0144】次に、図11(d) に示されるFCLKに同
期して動作するF/F1023は、図11(b) に示され
る+GSIG信号をFCLKの1クロック分の時間だけ
遅延させることにより、図11(e) に示される−FSI
G信号を生成する。また、インバータ1024は、この
−FSIG信号の極性を反転させることにより、図11
(f) に示される+FSIG信号を生成する。
【0145】更に、ノアゲート(NOR)1025は、
図11(c) に示される−GSIG信号と図11(f) に示
される+FSIG信号を入力することにより、図11
(g) に示される+UP信号を出力する。また、NOR1
026は、図11(b) に示される+GSIG信号と図1
1(e) に示される−FSIG信号を入力することによっ
て、図11(h) に示される+DN信号を出力する。
【0146】そして、NOR1027は、図11(g) に
示される+UP信号と図11(h) に示される+DN信号
を入力することにより、図11(i) に示されるように、
図11(a) に示されるGCLKの変化時に図11(d) に
示されるFCLKの1クロック分の時間幅だけアクティ
ブとなる+TRIG信号を生成する。
【0147】この+TRIG信号が、前述したように書
込みデータの入力時にDEC1014を制御することに
より、FCLKに同期して動作するDR1001にGC
LKの変化タイミングで書込みデータを格納させること
が可能となる。
【0148】なお、このFCLKトリガ回路1020
は、メモリ装置上に1回路設けられるだけでよく、この
出力は、GCLKをFCLKに同期化させる必要のある
複数の回路部によって共通に使用される。
【0149】以上説明した第4の実施例は、複数組のデ
ータレジスタが複数組の書込みデータレジスタ(WD_
REG)及び複数組の読出しデータレジスタ(MDR)
のために共通に使用される構成であってもよい。 <第5の実施例>図12は、本発明の第5の実施例の構
成図である。
【0150】例えば第2の実施例における図5に示され
る8個のWD_REG504において、それらのWD_
REG504への書込みデータの格納は、記憶制御装置
501からGCLKに同期して転送されてきた書込みデ
ータを格納できるように、GCLKに同期して実行され
る必要がある。そのため、この格納動作は、3ビットカ
ウンタ513及びDEC506がGCLKに同期して動
作することにより生成される、GCLKに同期した書込
みデータ設定信号WDST0〜WDST7に基づいて実
行される。
【0151】一方、8個のWD_REG504からRA
M群509への書込みデータの転送は、DRAMによっ
て構成されるRAM群509がFCLKに同期して書込
みデータを取り込めるように、FCLKに同期して実行
される必要がある。そのために、選択回路505は、3
ビットカウンタ516及びDEC507がFCLKに同
期して動作することにより生成される、FCLKに同期
した選択信号SEL0〜SEL7に基づいて、8個のW
D_REG504の出力を順次選択する。
【0152】ここで、図5に示されるように、8個のW
D_REG504と、DEC506及び507、並びに
選択回路505からなる部分が、例えば、データレジス
タファイル508という1つの集積回路として提供され
る場合がある。レジスタファイルは、F/Fが多数使用
されることにより構成される一般的な書込みデータレジ
スタに比較して、少ないゲート数で同じ容量を有するレ
ジスタ群を構成できるという利点を有する。しかし、汎
用的なレジスタファイル等は、クロック信号入力端子が
1本しかないのが一般的である。従って、図5に示され
るように、それぞれ異なるクロックに同期する複数の回
路部分を含むデータレジスタファイル508を、汎用的
なレジスタファイル等によって構成することは困難であ
る。
【0153】そこで、図12に示される第5の実施例で
は、書込みデータを書込みデータレジスタに格納するた
めのGCLKに同期している制御信号をFCLKに同期
する信号に変換する機構1202が設けられることによ
り、FCLKに同期する回路部分のみを含む汎用データ
レジスタファイル1201を、図5に示されるデータレ
ジスタファイル508として使用することを可能にして
いる。
【0154】図12において、汎用データレジスタファ
イル1201は、図5のデータレジスタファイル508
に置き換わって使用されるべき部分である。そして、#
0〜#7の書込みデータレジスタ(WD_REG120
3)は、図5の#0〜#7のWD_REG504に対応
する。また、DEC1206及び1209は、それぞれ
図5のDEC506及び507に対応する。
【0155】書込みデータ1213は、図5の記憶制御
装置501から転送されF/F510に保持されたデー
タであり、GCLKに同期している。また、書込みアド
レス1212は、図5において説明したように、GCL
Kに同期して動作する3ビットカウンタ513によって
生成され、GCLKに同期している。この書込みアドレ
ス1212は、汎用データレジスタファイル1201内
のFCLKに同期して動作するF/F1205を介して
DEC1206に入力される。
【0156】ここで、図5では特には図示していない
が、記憶制御装置501から供給されるGCLKに同期
した書込み許可信号1211は、微分回路1202に入
力される。微分回路1202は、書込み許可信号121
1がアクティブの間、GCLKの変化時においてのみF
CLKの1クロック分の時間幅だけアクティブとなるF
CLKに同期した書込み許可信号パルス群1215を生
成する。この微分回路1202は、例えば次のような回
路構成として実現できる。即ち、この微分回路1202
では、図10に示されるFCLKトリガ回路1020と
同様の回路構成により図11(i) に示される+TRIG
信号と同様のパルス群が生成され、そのパルス群が書込
み許可信号1211がアクティブの間オンとなるアンド
ゲートに入力させられ、その出力として書込み許可信号
パルス群1215が生成される。
【0157】このようにして生成される書込み許可信号
パルス群1215は、FCLKに同期して動作するF/
F1204を介して、デコード許可信号DEとしてDE
C1206に入力される。この結果、DEC1206
は、図5に示される3ビットカウンタ513からのGC
LKに同期して変化する書込みアドレス1212に対応
する書込みデータ設定信号WD_SET0〜WD_SE
T7を、それぞれGCLKの変化時にFCLKに同期し
てFCLKの1クロック分の時間幅だけ順次アクティブ
にする。従って、GCLKの変化時においてのみ、書込
みデータが、FCLKに同期して動作するWD_REG
1203に書き込まれることになる。
【0158】一方、WD_REG1203の書込みデー
タが図5のRAM群509に転送される際には、図5の
3ビットカウンタ516の出力がFCLKに同期して動
作するF/F1208を介してDEC1209に入力さ
れる。また、図5では特には図示していないが、FCL
Kに同期した読出し許可信号1214が、FCLKに同
期して動作するF/F1207を介して、デコード許可
信号DEとしてDEC1209に入力される。この結
果、DEC1209は、図5のDEC507と同様にし
て、3ビットカウンタ516から出力されるカウント値
に対応する選択信号SEL0〜SEL7を、FCLKに
同期して選択回路505に順次出力する。この結果、8
個のWD_REG1203に格納されている8組の書込
みデータのそれぞれは、選択回路505により順次選択
され、FCLKに同期して動作し8バイトのデータ幅を
有する図5に示されるF/F511を介して、8組のバ
ンク書込みデータとして、図5に示されるRAM群50
9に順次転送される。
【0159】以上示したように、第5の実施例では、微
分回路1202を設けるだけで、図5のデータレジスタ
ファイル508を、FCLKのみによって動作する汎用
データレジスタファイル1201で構成することができ
る。 <第6の実施例>図13は、本発明の第6の実施例にお
ける主記憶装置の構成図である。この実施例は、具体的
には、前述した第2の技術分野における第3の従来技術
が有している問題点を解決するものである。
【0160】第6の実施例では、デコーダ(DEC)1
304、#0〜#7の読出しデータレジスタ(MDR)
1302、及び選択回路(SEL)1303からなる読
出しデータレジスタ群1305が、#0〜#2の3組設
けられている。
【0161】#0〜#2の読出しデータレジスタ群13
05を指定するために、アクセスIDが使用される。こ
のアクセスIDは、3ビットカウンタ1310によって
作成される。この3ビットカウンタ1310は、特には
図示しない記憶制御装置から読出し命令FCH64がF
/F1308に入力される毎に、+1ずつカウントアッ
プする。なお、この3ビットカウンタ1308は、主記
憶装置での1つの読出し命令FCH64の実行が終了し
た時点でカウントアップするように構成されてもよい。
この3ビットカウンタ1310がカウントするカウント
値は、0、1、2、0、1、・・・というように、循環
的に変化する。この3ビットカウンタ1310の出力R
EQ_IDは、図14(a) に示されるように読出し命令
FCH64が最短で8τの時間間隔で入力した場合、図
14(b) に示されるように、8τの時間間隔だけ固定さ
れる。
【0162】REQ_ID信号は、RAM群1301が
起動されるのと同時に、FCLKに同期して動作するパ
イプラインFCL_PIPE1311に入力される。R
EQ_ID信号は、このパイプラインFCL_PIPE
1311で遅延させられた後に、F/F1309を介し
て起動されたRAM群509からの読出しデータRDの
読出しが開始されるのに同期して、FID信号としてデ
コーダ(DEC)1312に入力される。DEC131
2は、FID信号の値に対応して、#0〜#2のうち何
れか1つの読出しデータレジスタ群1305内のDEC
1304に対してのみ、デコード許可信号FDi(iは
0、1、又は2の何れか)を出力する。図14(b) に示
されるようにREQ_ID信号が8τの時間間隔だけ固
定されるのに対応して、FID信号も図14(c) に示さ
れるように8τの時間間隔だけ固定される。このため、
このデコード許可信号FDiも、図14(c) に示される
FID信号に同期して8τの時間間隔だけ固定される。
【0163】この結果、起動されたRAM群1301か
ら図14(d) に示されるタイミングで連続的に読み出さ
れる8組の読出しデータRDは、FCLKに同期して動
作する特には図示しない3ビットカウンタから順次出力
される読出しデータ選択信号RDSELの8個の値に対
応してDEC1304から順次出力される8個の読出し
データ設定信号に基づいて、図14(e) に示されるタイ
ミングで、#0〜#7のMDR1302に順次格納され
る。
【0164】一方、3ビットカウンタ1310から出力
されたREQ_ID信号は、GCLKに同期して動作す
るパイプラインGCL_PIPE1313に入力され
る。REQ_ID信号は、このパイプラインGCL_P
IPE1313で遅延させられた後に、そのREQ_I
D信号を生成させた読出し命令FCH64に対応する読
出しデータが何れかの読出しデータレジスタ群1305
から出力されるタイミングに同期して、GID信号とし
てDEC1314に入力される。DEC1314は、G
ID信号の値に対応して、#0〜#2のうち何れか1つ
の読出しデータレジスタ群1305の出力を選択するた
めの選択信号GDSELi(iは0〜2のうち何れか)
をアクティブにする。図14(b) に示されるようにRE
Q_ID信号が8τの時間間隔だけ固定されるのに対応
して、GID信号も図14(f) に示されるように8τの
時間間隔だけ固定される。このため、この選択信号GD
SELiも、図14(f) に示されるGID信号に同期し
て8τの時間間隔だけ固定される。
【0165】一方、図18に示される第3の従来技術の
場合と同様に、読出しが開始されるべき読出しデータレ
ジスタ群1305内において、GCLKに同期して動作
する特には図示しない3ビットカウンタから出力された
選択データが特には図示しないデコーダによりデコード
される結果、そのデコーダからSEL1303へは、図
14(g) に示されるように、順次アクティブとなる選択
信号DMPX_RD0〜DMPX_RD7が供給され
る。この結果として、8個のMDR1302の出力のそ
れぞれは、SEL1303により順次選択され、SEL
1306へ出力される。
【0166】SEL1306は、選択信号GDSELi
によって、上記読出しデータレジスタ群1305から出
力される8個のMDR1302の出力のそれぞれを、共
にGCLKに同期して動作し共に8バイトのデータ幅を
有するF/F1307及び特には図示しない読出しデー
タバスを介して、図14(h) に示されるそれぞれ8バイ
トからなる8個のメモリ読出しデータMRDとして、特
には図示しない記憶制御装置に順次出力する。
【0167】図13に示される第6の実施例の構成にお
いては、第3の従来技術の場合と同様に、特には図示し
ない記憶制御装置から1つの読出し命令FCH64が発
行された後、主記憶装置内のRAM群1301から連続
的に出力された8組の読出しデータRDの全てが主記憶
装置の出力側に最初に配置されているGCLKに同期し
て動作するF/F1307に到達し終わるまでの期間C
は、GCLKの17クロック分の時間(17τ)であ
る。そして、特には図示しない記憶制御装置から最短で
8τの時間間隔で出力される可能性のある読出し命令F
CH64が、主記憶装置に、上記期間C内に最大で3個
入力する可能性がある。これは、第3の従来技術の場合
と同様に、1回の読出し命令FCH64により、主記憶
装置から8バイト×8個=64バイトからなる読出しデ
ータ群が、8バイトのデータ幅を有する読出しデータバ
スに出力される結果、1回の読出し命令FCH64によ
り読出しデータバスが8τの時間だけ占有されるため、
記憶制御装置は、8τの時間間隔で読出し命令FCH6
4を出力することができるためである。
【0168】そして、第6の実施例では、特には図示し
ない記憶制御装置から最短で8τの時間間隔で入力され
る読出し命令FCH64は、主記憶装置内で遅延される
ことなくRAM群1301を起動し、この結果連続的に
読み出されるそれぞれ8組ずつの読出しデータ群は、F
ID信号(デコード許可信号FDi)によって順次選択
される#0〜#2の読出しデータレジスタ群1305
に、順次循環的に格納される。
【0169】従って、図13に示される主記憶装置がシ
ングルクロックモードで動作する場合において、1つの
読出しデータレジスタ群1305内からの読出しデータ
RDの読出しが完了するまでの期間内に、最大で新たな
2つの読出し命令FCH64が入力しそれらによってR
AM群1301が起動され新たな読出しデータ群が読み
出されても、それらを他の2つの読出しデータレジスタ
群1305に順次格納することができ、読出しデータの
欠落を防止することができる。
【0170】この場合、主記憶装置がノーマルクロック
モード及びシングルクロックモードの何れの状態で動作
する場合であっても、読出し命令FCH64は主記憶装
置内で遅延されることなくRAM群1301を起動させ
る。即ち、第6の実施例においては、ノーマルクロック
モードとシングルクロックモードとで主記憶装置内の動
作が全く同じであるため、シングルクロックモードを使
用してノーマルクロックモード時に発生した主記憶装置
の障害の解析を容易に行うことができる。
【0171】
【発明の効果】本発明の第1の態様によれば、第1のデ
ータ単位数のデータからなるブロックが更に細分化され
た第2のデータ単位数のデータからなるブロックを単位
としてメモリ群へのデータの割付けが行われることによ
り、複数のCPUからの要求に関連するそれぞれ第2の
データ単位数のデータからなる複数のブロックの転送命
令が同時に発生しても、同じメモリ群がアクセスされる
確率を低く抑えることができる。この結果、メモリ群の
起動時間の平均を短縮することができ、スループットの
高いメモリ装置を実現することが可能となる。
【0172】本発明の第2の態様によれば、メモリ装置
がシングルクロックモードで動作する場合においても、
無効なデータがメモリ群に書き込まれてしまうという障
害を回避することが可能となる。
【0173】ここで、本発明の第2の態様では、シング
ルクロックモード時において、メモリ群の起動開始がか
なり遅れることになるが、この遅延はメモリ装置の内部
でのみ認識されるものであるため、計算機システム全体
のスループットには影響しない。
【0174】また、本発明の第2の態様によれば、シン
グルクロックモード時において、ノーマルクロックモー
ド時と全く同様の動作を保証することが可能となる。ま
た、本発明の第2の態様において、書込みデータバッフ
ァ手段が2組設けられることにより、メモリ装置に対し
て、各書込み命令とそれぞれの命令に対応する書込みデ
ータを遅延なく連続して転送することが可能となる。
【0175】更に、本発明の第2の態様において、第2
のクロックの変化時点において第1のクロックに同期し
てアクティブとなるタイミング信号に基づいて書込みデ
ータのデータバッファ手段への格納が実行されることに
より、読出しデータの格納時には第1のクロックに同期
して動作するデータバッファ手段を、書込みデータの格
納にそのまま流用することが可能となる。この結果、メ
モリ装置のハードウエア規模の増大を抑えることが可能
となる。
【0176】加えて、本発明の第2の態様において、外
部に簡単なタイミング信号生成手段を設けるだけで、書
込みデータバッファ手段を1種類のクロックのみによっ
て動作する汎用のデータレジスタファイルで構成するこ
とが可能となる。
【0177】本発明の第3の態様によれば、例えば、メ
モリ装置がシングルクロックモードで動作する場合にお
いて、1組の読出しデータバッファ手段内からの読出し
データの読出しが完了するまでの期間内に、新たな複数
個の読出し命令がメモリ装置に入力しそれらによってメ
モリ群が起動され新たな読出しデータの組が読み出され
ても、それらを他の複数組の読出しデータバッファ手段
に順次格納することができ、読出しデータの欠落を防止
することが可能となる。
【0178】この場合、メモリ装置がノーマルクロック
モード及びシングルクロックモードの何れの状態で動作
する場合であっても、読出し命令はメモリ装置内で遅延
されることなくメモリ群を起動させる。即ち、本発明の
第3の態様では、ノーマルクロックモードとシングルク
ロックモードとでメモリ装置内の動作が全く同じである
ため、シングルクロックモードを使用してノーマルクロ
ックモード時に発生したメモリ装置の障害の解析を容易
に行うことが可能となる。
【図面の簡単な説明】
【図1】本発明のブロック図(その1)である。
【図2】本発明のブロック図(その2)である。
【図3】本発明のブロック図(その3)である。
【図4】第1の実施例の構成図である。
【図5】第2の実施例の構成図である。
【図6】ノーマルクロックモード時における第2の実施
例の動作タイミングチャートである。
【図7】シングルクロックモード時における第2の実施
例の動作タイミングチャートである。
【図8】第3の実施例の構成図である。
【図9】第3の実施例の動作タイミングチャートであ
る。
【図10】第4の実施例の構成図である。
【図11】FCLKトリガ回路の動作タイミングチャー
トである。
【図12】第5の実施例の構成図である。
【図13】第6の実施例の構成図である。
【図14】第6の実施例の動作タイミングチャートであ
る。
【図15】第1の従来技術の説明図である。
【図16】第2の従来技術の説明図である。
【図17】第2の従来技術のシングルクロックモード時
における動作タイミングチャートである。
【図18】第3の従来技術の説明図である。
【図19】第3の従来技術の動作タイミングチャートで
ある。
【符号の説明】
101 メモリ群 201 メモリ群 202 書込みデータバッファ手段 203 書込みデータ格納制御手段 204 書込みデータ読出し制御手段 205 書込みデータ 206 第1のクロック 207 第2のクロック 301 メモリ群 302 読出しデータバッファ手段 303 読出しデータ格納制御手段 304 読出しデータ読出し制御手段 305 読出しデータ 306 第1のクロック 307 第2のクロック

Claims (9)

    【特許請求の範囲】
  1. 【請求項1】 アドレス空間上で連続する第1のデータ
    単位数(Kバイト)のデータの転送要求のそれぞれに対
    応して、前記第1のデータ単位数(Kバイト)を分割し
    たバイト数である第2のデータ単位数(Lバイト)を単
    位として優先順位をとり、前記第2のデータ単位数(L
    バイト)を単位とするデータ転送命令を、それぞれ連続
    アクセスモードの下で動作可能な複数のメモリ群(10
    1)からなるメモリ装置に対して複数回発行することに
    より、前記第1のデータ単位数(Kバイト)のデータの
    転送要求に対応するメモリアクセスを実行するメモリ制
    御方式において、 前記データ転送命令に対応する前記第2のデータ単位数
    (Lバイト)のデータを、前記第2のデータ単位数(L
    バイト)と等しいかそれを分割したデータ単位数であっ
    て前記メモリ群(101)の起動単位であるデータ単位
    数(Bバイト)の2倍以上のデータ単位数である第3の
    データ単位数(Sバイト)を単位として、前記第1のデ
    ータ単位数(Kバイト)を前記第3のデータ単位数(S
    バイト)で除した数又はこれ以下の数の前記メモリ群
    (101)のそれぞれに順次割り付け、 該割付けが行われたメモリ群(101)に対して、連続
    アクセスモードの下で、前記割付けが行われた前記第3
    のデータ単位数(Sバイト)のデータのアクセスを実行
    する、 ことを特徴とするメモリ制御方式。
  2. 【請求項2】 それぞれ動作状態において停止すること
    のない第1のクロック(206)に同期してアクセスさ
    れ連続アクセスモードの下で動作可能な複数のメモリ群
    (201)からなるメモリ装置に対してデータの書込み
    制御を行うメモリ制御方式において、 前記連続アクセスモードのアクセス単位である第4のデ
    ータ単位数(Sバイト)の書込みデータ(205)を少
    なくとも格納する書込みデータバッファ手段(202)
    と、 書込み命令に基づいて、第2のクロック(207)に同
    期して転送されてくる書込みデータ(205)を、前記
    第2のクロック(207)に同期して前記書込みデータ
    バッファ手段(202)に順次格納する書込みデータ格
    納制御手段(203)と、 前記書込みデータバッファ手段(202)に前記第4の
    データ単位数(Sバイト)の書込みデータ(205)が
    格納された時点で、該格納された前記第4のデータ単位
    数(Sバイト)の書込みデータ(205)を、前記第1
    のクロック(206)に同期して、連続アクセスモード
    の下で読み出して、前記複数のメモリ群(201)の何
    れかに転送する書込みデータ読出し制御手段(204)
    と、 を有することを特徴とするメモリ制御方式。
  3. 【請求項3】 アドレス空間上で連続する第1のデータ
    単位数(Kバイト)のデータの転送要求のそれぞれに対
    応して、前記第1のデータ単位数(Kバイト)を分割し
    たバイト数である第2のデータ単位数(Lバイト)を単
    位として優先順位をとり、前記第2のデータ単位数(L
    バイト)を単位とするデータ転送命令を、それぞれ動作
    状態において停止することのない第1のクロック(20
    6)に同期してアクセスされ連続アクセスモードの下で
    動作可能な複数のメモリ群(201)からなるメモリ装
    置に対して複数回発行することにより、前記第1のデー
    タ単位数(Kバイト)のデータの転送要求に対応するメ
    モリアクセスを実行するメモリ制御方式において、 前記連続アクセスモードのアクセス単位であると共に、
    前記データ転送命令に対応する前記第2のデータ単位数
    (Lバイト)のデータを、前記第2のデータ単位数(L
    バイト)と等しいかそれを分割したデータ単位数であっ
    て、前記メモリ群(201)の起動単位であるデータ単
    位数(Bバイト)の2倍以上のデータ単位数である第4
    のデータ単位数(Sバイト)の書込みデータ(205)
    を少なくとも格納する書込みデータバッファ手段(20
    2)と、 前記データ転送命令である書込み命令に基づいて、第2
    のクロック(207)に同期して転送されてくる書込み
    データ(205)を、前記第2のクロック(207)に
    同期して前記書込みデータバッファ手段(202)に順
    次格納する書込みデータ格納制御手段(203)と、 前記書込みデータバッファ手段(202)に格納される
    前記第4のデータ単位数(Sバイト)の書込みデータ
    (205)を、前記第1のデータ単位数(Kバイト)を
    前記第4のデータ単位数(Sバイト)で除した数又はこ
    れ以下の数の前記メモリ群(201)の何れかに割り付
    ける割付け手段と、 前記書込みデータバッファ手段(202)に前記第4の
    データ単位数(Sバイト)の書込みデータ(205)が
    格納された時点で、該格納された前記第4のデータ単位
    数(Sバイト)の書込みデータ(205)を、前記第1
    のクロック(206)に同期して、連続アクセスモード
    の下で読み出して、前記割付け手段によって割付けが行
    われたメモリ群(201)に転送する書込みデータ読出
    し制御手段(204)と、 を有することを特徴とするメモリ制御方式。
  4. 【請求項4】 前記書込みデータバッファ手段(20
    2)を2組有し、 前記書込みデータ格納制御手段(203)に対して一方
    の前記書込みデータバッファ手段(202)への前記第
    4のデータ単位数(Sバイト)の書込みデータ(20
    5)の格納動作を実行せると共に、前記書込みデータ読
    出し制御手段(204)に対して他方の前記書込みデー
    タバッファ手段(202)から前記メモリ群(201)
    への前記第4のデータ単位数(Sバイト)の書込みデー
    タ(205)の読出し動作を実行させ、前記書込みデー
    タ格納制御手段(203)及び前記書込みデータ読出し
    制御手段(204)がそれぞれ前記第4のデータ単位数
    (Sバイト)の書込みデータ(205)に対する処理を
    終了した時点で、前記書込みデータ格納制御手段(20
    3)及び前記書込みデータ読出し制御手段(204)が
    それぞれ処理を行う前記書込みデータバッファ手段(2
    02)を切り替える切替え手段を有する、 ことを特徴とする請求項2又は3の何れか1項に記載の
    メモリ制御方式。
  5. 【請求項5】 前記メモリ装置に接続されるデータバス
    が、読出しデータの転送と前記書込みデータ(205)
    の転送に共通に使用される双方向バスであって、 前記第2のクロック(207)の変化時点において前記
    第1のクロック(206)に同期してアクティブとなる
    タイミング信号を生成するタイミング信号生成手段を更
    に有し、 前記書込みデータバッファ手段(202)は、データの
    格納を前記第1のクロック(206)に同期して行うデ
    ータバッファ手段によって構成され、 前記書込みデータ格納制御手段(203)は、前記書込
    み命令に基づいて、前記第2のクロック(207)に同
    期して前記データバス上を転送されてくる書込みデータ
    (205)を、前記タイミング信号生成手段が生成する
    タイミング信号に同期して前記データバッファ手段に順
    次格納し、 前記書込みデータバッファ手段(202)を構成する前
    記データバッファ手段は、前記第1のクロック(20
    6)に同期して前記メモリ群(201)から読み出され
    た読出しデータが前記第2のクロック(207)に同期
    して前記データバスに読み出される際の読出しデータバ
    ッファ手段として共通に使用される、 ことを特徴とする請求項3又は4の何れか1項に記載の
    メモリ制御方式。
  6. 【請求項6】 前記第2のクロック(207)の変化時
    点において前記第1のクロック(206)に同期してア
    クティブとなるタイミング信号を生成するタイミング信
    号生成手段を更に有し、 前記書込みデータ格納制御手段(203)は、前記書込
    み命令に基づいて、前記第2のクロック(207)に同
    期して前記データバス上を転送されてくる書込みデータ
    (205)を、前記タイミング信号生成手段が生成する
    タイミング信号に同期して前記書込みデータバッファ手
    段(202)に順次格納する、 ことを特徴とする請求項2乃至4の何れか1項に記載の
    メモリ制御方式。
  7. 【請求項7】 第2のクロック(308)に同期した読
    出し命令で起動されて、動作状態において停止すること
    のない第1のクロック(307)に同期して連続アクセ
    スモードの下でメモリ装置を構成する複数のメモリ群
    (301)のうちの何れかより読み出された複数の読出
    しデータ(305)を、読出しデータバッファ手段(3
    02)に格納した後、該読出しデータバッファ手段(3
    02)に格納された複数の読出しデータ(305)を前
    記第2のクロック(308)に同期してデータバス(3
    06)に出力するメモリ制御方式において、 前記読出しデータバッファ手段(302)を、少なくと
    も、1つの前記読出し命令が発行された後、前記メモリ
    群(301)から連続的に出力された複数の読出しデー
    タ(305)の全てが前記読出しデータバッファ手段
    (302)から前記データバス(306)に出力され終
    わるまでの期間に前記メモリ装置に入力する可能性のあ
    る読出し命令の数以上の組数だけ有し、かつ前記読出し
    データバッファ手段(302)の各組は、1回の読出し
    命令で起動される連続アクセスモードによって前記メモ
    リ群(301)から連続的に出力された複数の読出しデ
    ータ(305)を格納できる長さを有し、 前記読出し命令のそれぞれに対応して前記複数のメモリ
    群(301)のうちの何れかより読み出された読出しデ
    ータ(305)の組のそれぞれを、前記第1のクロック
    (307)に同期して、前記読出しデータバッファ手段
    (302)の組のそれぞれに順次格納する読出しデータ
    格納制御手段(303)と、 前記読出し命令のそれぞれに対応して前記読出しデータ
    バッファ手段(302)の組のそれぞれに順次格納され
    た前記読出しデータ(305)の組のそれぞれを、前記
    第2のクロック(308)に同期して、前記データバス
    (306)に順次出力する読出しデータ読出し制御手段
    (304)と、 を更に有することを特徴とするメモリ制御方式。
  8. 【請求項8】 前記メモリ装置において前記読出し命令
    が起動され又はその実行が終了する毎に、前記起動され
    た読出し命令に対応する読出しデータ(305)又は前
    記実行が終了した読出し命令の次に起動された読出し命
    令に対応する読出しデータ(305)が前記メモリ群
    (301)から読み出されるのに同期して、前記複数組
    の読出しデータバッファ手段(302)を順次循環的に
    選択する第1のバッファ組選択手段と、 1組の前記読出しデータバッファ手段(302)におい
    て該読出しデータバッファ手段(302)に格納された
    全ての読出しデータ(305)の前記データバス(30
    6)への出力が終了する毎に、前記第1のバッファ組選
    択手段が前記読出しデータバッファ手段(302)を選
    択した順で、前記複数組の読出しデータバッファ手段
    (302)を順次循環的に選択する第2のバッファ組選
    択手段と、 を更に有し、 前記読出しデータ格納制御手段(303)は、前記第1
    のバッファ組選択手段が選択した読出しデータバッファ
    手段(302)に対して、前記読出しデータ(305)
    の格納動作を実行し、 前記読出しデータ読出し制御手段(304)は、前記第
    2のバッファ組選択手段が選択した読出しデータバッフ
    ァ手段(302)に対して、前記読出しデータ(30
    5)の前記データバス(306)への出力動作を実行す
    る、 ことを特徴とするメモリ制御方式。
  9. 【請求項9】 前記メモリ装置において前記読出し命令
    が起動され又はその実行が終了する毎に、前記複数組の
    読出しデータバッファ手段(302)を順次循環的に指
    定するカウンタ手段を更に有し、 前記第1のバッファ組選択手段は、前記カウンタ手段の
    出力を、前記メモリ装置において前記読出し命令が起動
    され又はその実行が終了された時点から前記起動された
    読出し命令に対応する読出しデータ(305)又は前記
    実行が終了した読出し命令の次に起動された読出し命令
    に対応する読出しデータ(305)の前記メモリ群(3
    01)からの読出しが開始される時点までの時間だけ遅
    延させるための、前記第1のクロック(307)に同期
    して動作する第1のシフトレジスタ手段と、該第1のシ
    フトレジスタ手段から出力される前記カウンタ手段の出
    力に基づいて、前記メモリ群(301)から読み出され
    た読出しデータ(305)の組のそれぞれを前記複数組
    の読出しデータバッファ手段(302)のそれぞれに順
    次循環的に入力させる第1のスイッチ手段とから構成さ
    れ、 前記第2のバッファ組選択手段は、前記カウンタ手段の
    出力を、前記メモリ装置において前記読出し命令が起動
    され又はその実行が終了された時点から前記起動された
    読出し命令に対応する読出しデータ(305)又は前記
    実行が終了した読出し命令の次に起動された読出し命令
    に対応する読出しデータ(305)の何れかの前記読出
    しデータバッファ手段(302)からの読出しが開始さ
    れる時点までの時間だけ遅延させるための、前記第2の
    クロック(308)に同期して動作する第2のシフトレ
    ジスタ手段と、該第2のシフトレジスタ手段から出力さ
    れる前記カウンタ手段の出力に基づいて、前記複数組の
    読出しデータバッファ手段(302)のそれぞれを順次
    循環的に選択し、該選択した読出しデータバッファ手段
    (302)に格納された前記読出しデータ(305)を
    前記データバス(306)へ出力させる第2のスイッチ
    手段とから構成される、 ことを特徴とする請求項8に記載のメモリ制御方式。
JP4210594A 1994-03-14 1994-03-14 メモリ制御方式 Pending JPH07248958A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP4210594A JPH07248958A (ja) 1994-03-14 1994-03-14 メモリ制御方式
US08/396,110 US5619679A (en) 1994-03-14 1995-02-28 Memory control device and method operated in consecutive access mode

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP4210594A JPH07248958A (ja) 1994-03-14 1994-03-14 メモリ制御方式

Related Child Applications (2)

Application Number Title Priority Date Filing Date
JP2003373794A Division JP2004046905A (ja) 2003-10-31 2003-10-31 メモリ制御方式
JP2003373793A Division JP2004110846A (ja) 2003-10-31 2003-10-31 メモリ制御方式

Publications (1)

Publication Number Publication Date
JPH07248958A true JPH07248958A (ja) 1995-09-26

Family

ID=12626698

Family Applications (1)

Application Number Title Priority Date Filing Date
JP4210594A Pending JPH07248958A (ja) 1994-03-14 1994-03-14 メモリ制御方式

Country Status (2)

Country Link
US (1) US5619679A (ja)
JP (1) JPH07248958A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016033818A (ja) * 2014-07-30 2016-03-10 ▲ホア▼▲ウェイ▼技術有限公司 データ処理方法、装置、およびシステム

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000330785A (ja) * 1999-05-18 2000-11-30 Sharp Corp 実時間プロセッサおよび命令実行方法
JP5693176B2 (ja) * 2010-11-26 2015-04-01 キヤノン株式会社 モニタ回路、バスブリッジ及びバスシステム

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5727477A (en) * 1980-07-23 1982-02-13 Nec Corp Memory circuit
JPS57117168A (en) * 1981-01-08 1982-07-21 Nec Corp Memory circuit
US4485461A (en) * 1982-04-12 1984-11-27 Nippon Electric Co., Ltd. Memory circuit
US5163132A (en) * 1987-09-24 1992-11-10 Ncr Corporation Integrated controller using alternately filled and emptied buffers for controlling bi-directional data transfer between a processor and a data storage device
US5051889A (en) * 1987-10-23 1991-09-24 Chips And Technologies, Incorporated Page interleaved memory access

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016033818A (ja) * 2014-07-30 2016-03-10 ▲ホア▼▲ウェイ▼技術有限公司 データ処理方法、装置、およびシステム

Also Published As

Publication number Publication date
US5619679A (en) 1997-04-08

Similar Documents

Publication Publication Date Title
US5530941A (en) System and method for prefetching data from a main computer memory into a cache memory
JP2909592B2 (ja) コンピュータメモリシステム
US9343127B1 (en) Memory device having an adaptable number of open rows
EP1488323B1 (en) Memory system with burst length shorter than prefetch length
JP2008204487A (ja) アウトオブオーダdramシーケンサ
US6963516B2 (en) Dynamic optimization of latency and bandwidth on DRAM interfaces
US20040054864A1 (en) Memory controller
US20070055813A1 (en) Accessing external memory from an integrated circuit
US7436728B2 (en) Fast random access DRAM management method including a method of comparing the address and suspending and storing requests
JPH04230544A (ja) ダイナミックメモリシステムのタイミングを動的に設定するデータ処理装置
JPH10207771A (ja) メモリ動作短縮方法
JPH0955081A (ja) ダイナミックランダムアクセスメモリシステムを制御するメモリコントローラ、およびダイナミックランダムアクセスメモリシステムへのアクセスの制御方法
JPH1196072A (ja) メモリアクセス制御回路
KR100282118B1 (ko) 하이스루풋단일포트다중갱신유니트태그제어기
US6148380A (en) Method and apparatus for controlling data transfer between a synchronous DRAM-type memory and a system bus
JPH07248958A (ja) メモリ制御方式
JP3384770B2 (ja) コマンド・スタッキングを有する高帯域幅で狭い入出力のメモリ装置
KR100417548B1 (ko) 집적된캐쉬메모리와,디지탈메모리에서메모리소자에데이타를제공하는방법
JP2004046905A (ja) メモリ制御方式
JP2004110846A (ja) メモリ制御方式
JP3967921B2 (ja) データ処理装置及びデータ処理システム
US11854602B2 (en) Read clock start and stop for synchronous memories
JP3372873B2 (ja) 主記憶メモリのプリフェッチ機構を備えたマイクロプロセッサ
JPH05173879A (ja) キャッシュメモリシステム
JP2000122922A (ja) 高速メモリ装置

Legal Events

Date Code Title Description
A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20031202