JP2768022B2 - メモリコントローラ - Google Patents

メモリコントローラ

Info

Publication number
JP2768022B2
JP2768022B2 JP3023628A JP2362891A JP2768022B2 JP 2768022 B2 JP2768022 B2 JP 2768022B2 JP 3023628 A JP3023628 A JP 3023628A JP 2362891 A JP2362891 A JP 2362891A JP 2768022 B2 JP2768022 B2 JP 2768022B2
Authority
JP
Japan
Prior art keywords
data
memory
host processor
writing
interface unit
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
JP3023628A
Other languages
English (en)
Other versions
JPH04211822A (ja
Inventor
豊 石川
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
NEC Corp
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 NEC Corp filed Critical NEC Corp
Priority to JP3023628A priority Critical patent/JP2768022B2/ja
Publication of JPH04211822A publication Critical patent/JPH04211822A/ja
Application granted granted Critical
Publication of JP2768022B2 publication Critical patent/JP2768022B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Landscapes

  • Memory System Of A Hierarchy Structure (AREA)

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明はメモリコントローラに関
し、特に情報処理システムの外部補助記憶装置としての
ハードディスクドライブ,フロッピィディスクドライ
ブ,光ディスクドライブ、カートリッジ磁気テープ等の
ためのメモリコントローラに関する。
【0002】
【従来の技術】情報処理システムには上述したような外
部補助記憶装置がしばしば用いられる。同装置とホスト
プロセッサとの間にはメモリコントローラが介在してお
り両者間のデータ転送を制御している。一般に、メモリ
コントローラは、ホストプロセッサとのインターフェイ
ス制御を司るインターフェイスユニットと、外部補助記
憶装置に書き込むべきデータおよび同装置から読み出さ
れたデータを一時ストアするバッファメモリ、そしてイ
ンターフェイスユニットおよびバッファメモリ間のデー
タ転送を制御する制御ユニットを有する。メモリコント
ローラは、ホストプロセッサからの要求に応じて、ホス
トプロセッサからのデータを外部補助記憶装置に書き込
んだり、同装置のストアデータを読み出しホストプロセ
ッサに供給する。
【0003】ホストプロセッサは外部補助記憶装置に書
き込んだデータを再度使用する場合がある。そのデータ
は外部補助記憶装置に書き込まれているため、そのデー
タをホストプロセッサに渡すためには外部補助記憶装置
をアクセスする必要がある。しかしながら、外部補助記
憶装置のアクセススピードは比較的遅いためホストプロ
セッサへのデータ供給に時間がかかる。
【0004】そこで、キャッシュメモリ手法がそのよう
なメモリコントローラにも適用されている。すなわち、
キャッシュメモリを接続,制御できるように構成され、
外部補助記憶装置に書き込んだデータはキャッシュメモ
リにもストアされる。そのストアデータがホストプロセ
ッサがその後要求したデータと同一のときは、キャッシ
ュメモリがアクセスされてデータがホストプロセッサに
渡される。外部補助記憶装置のアクセスは必要ない。
【0005】
【発明が解決しようとする課題】このように、ホストプ
ロセッサからのデータ書き込み要求にともなうデータは
キャッシュメモリにストアされるとともに外部補助記憶
装置に書込まれるわけであるが、同データはまずインタ
ーフェイスユニットからキャッシュメモリに転送され、
その後キャッシュメモリからバッファメモリ、したがっ
て外部補助記憶装置に転送されている。これは、データ
転送がDMA(ダイレクトメモリアクセス)方式で行な
われ、インターフェイスユニットおよびキャッシュメモ
リ間DMA転送そしてバッファメモリおよびキャッシュ
メモリ間DMA転送が互いに独立した転送チャンネルで
実行されるからである。その結果、ホストプロセッサか
ら外部補助記憶装置へのデータ書込み時間がキャッシュ
メモリがないものに比して倍増してしまう。
【0006】したがって、本発明の目的は、ホストプロ
セッサおよび外部補助記憶装置間のデータ転送を実行す
るための改良されたメモリコントローラを提供すること
にある。
【0007】本発明の他の目的は、データ書込み要求に
もとづくデータの書き込み終了時間を短縮したメモリコ
ントローラを提供することにある。
【0008】
【課題を解決するための手段】本発明によるメモリコン
トローラは、インターフェイスユニットおよびバッファ
メモリが両方ともレディ状態であることを検出してイン
ターフェイスユニットから両メモリへのデータ転送を同
時に行なうようにしたことを特徴としている。
【0009】より詳細には、インターフェイスユニット
およびバッファメモリの両方がデータ転送要求を発生し
たことを検出し、インターフェイスユニットにはデータ
リード信号をバッファメモリおよびキャッシュメモリに
はデータライト信号をそれぞれ実質的に同時に供給して
インターフェイスユニットから読み出されたデータを両
メモリに転送している。
【0010】かかる構成により、余分なデータ転送サイ
クルは不要となり、データ書き込み時間が短縮される。
【0011】
【実施例】以下、本発明の実施例を図面を用いて詳述す
る。
【0012】図1は本発明の一実施例によるメモリコン
トローラを有する情報処理システムの一部を示すブロッ
ク図である。本コントローラ1は半導体集積回路装置と
して構成され、インターフェイスユニット30,データ
転送制御ユニット40,バッファメモリ50およびフォ
ーマット制御ユニット60を有する。インターフェイス
ユニット30は本実施例ではSCSI(Small C
omputer System Interface)
方式でホストプロセッサ2との間のインターフェイス制
御を司り、したがって端子10およびSCSIバス21
を介してホストプロセッサ2に接続されている。フォー
マット制御ユニット60は端子12および通信バス41
を介して外部補助記憶装置4に接続され同装置に対する
データのリード/ライトを実行する。本実施例では、ハ
ードディスクドライブが装置4として用いられる。フロ
ッピィディスクドライブ,光ディスクドライブ,カート
リッジ磁気テープでも同様である。記憶装置4に書き込
むべきデータおよび同装置から読み出されたデータはバ
ス20を介してフォーマット制御ユニット60とバッフ
ァメモリ50との間で転送される。FIFO(Firs
t−inFirst−out)メモリをバッファメモリ
50として使用できる。ユニット30,40および60
そしてバッファメモリ50は内部プロセッサバス17を
介して相互接続されている。バス17にはさらに端子1
1および外部プロセッサバス31を介してマイクロプロ
セッサ3に接続されている。プロセッサ3はコントロー
ラ1の全体の動作シーケンスを制御する。
【0013】データ転送制御ユニット40はDMA転送
方式でデータを転送する。すなわち、ユニット40はイ
ンターフェイスユニット30およびバッファメモリ50
から第1および第2のデータ転送要求信号DRQ1およ
びDRQ2を受ける。信号DRQ1はユニット30がホ
ストプロセッサ2からのデータをデータバス19上に出
力できる又はバス19上のデータを受け入れる準備がで
きたことを示し、信号DRQ2はメモリ30がユニット
60からのデータをバス19上に出力できる又はバス1
9上のデータを受け取る準備ができたことを示す。要求
信号DRQ1に応答してユニット40はアクノレッジ信
号DAK1をユニット30に返しユニット30を活性化
する。同様に、要求信号DRQ1に応答してバッファメ
モリ50にアクノレッジ信号DAK2が返される。デー
タ転送制御ユニット40はさらにユニット30又はメモ
リ50にデータリードおよびデータライト信号を供給し
てそれぞれデータを出力させるおよびデータを取り入れ
させるが、図示のように、ユニット30へのデータリー
ド,ライト信号IORD1,IOW1とバッファメモリ
50へのデータリード,ライト信号IOR2,IOW2
とは別々に設けられている。データリード信号IOR
1,IOR2はそれぞれユニット30,メモリ50に内
部のデータをバス19上に出力させるタイミングを指示
し、データライト信号IOW1,IOW2はバス19上
のデータを取り込むタイミングを指示する。データバス
19には転送制御ユニット40および端子13も接続さ
れ、端子13は外部に設けられたキャッシュメモリ5が
接続されている。転送制御ユニット40はさらにアドレ
ス情報およびメモリリード,ライト信号MRD,MWR
を発生する。アドレス情報はバス21および端子14を
介して、信号MRD,MWRは端子15,16をそれぞ
れ介してメモリ5に供給される。
【0014】図2を参照すると、データ転送ユニット4
0は、一対のパラメータレジスタ401,501、一対
のデータ転送シーケンサ403,503、および一対の
アドレスカウンタ404,504を有する。レジスタ4
01,シーケンサ403、およびカウンタ404は第1
チャンネルとしてバッファメモリ50およびキャッシュ
メモリ5間のデータ転送制御に割当てられ、レジスタ5
01,シーケンサ503およびカウンタ504は第2チ
ャンネルとしてインターフェイスユニット30およびキ
ャッシュメモリ間のデータ転送制御に割当てられてい
る。レジスタ401,501の各々には、データ転送方
向を指定する情報、転送すべきデータのバイト数を示す
情報、データ転送を許可するか否かを示す情報等を有す
るパラメータデータがマイクロプロセッサ3によって設
定される。アドレスカウンタ404,504の各々に
は、キャッシュメモリ5に対するデータ転送スタートア
ドレスがやはりマイクロプロセッサ3によって設定され
る。レジスタ401(501)およびデータ転送要求信
号DRQ1(DRQ2)に応答して、シーケンサ403
(503)は上述した信号DAK1(DAK2)、IO
RD1(IORD2)、IOWR1(IOWR2)、M
RDおよびMWRを所定のシーケンスに従って発生し、
カウンタ404(504)の内容を更新する。データ転
送制御ユニット40は、本発明に従って、4つのAND
ゲート601,603,605,608、3つのORゲ
ート604,606,607、およびインバータ450
をさらに有する。さらにまた、パラメータレジスタ50
1はモードフラグ502を有している。フラグ502は
インターフェイスユニット30からバッファメモリ50
およびキャッシュメモリ5へのデータ転送を同時に実行
するときに“1”にセットされ、それ以外のときは
“0”にリセットされる。
【0015】次に、動作につき説明する。インターフェ
イスユニット30がホストプロセッサ2から外部補助記
憶装置4にデータを書き込むというコマンドを受ける
と、ユニット30は同コマンドをバス17,31および
端子11を介してマイクロプロセッサ3に供給する。マ
イクロプロセッサ3はそのコマンドをデコードし、ユニ
ット30からメモリ50,5へのデータ同時転送を実行
させるべく以下の動作を行なう。すなわち、フォーマッ
トコントローラ60に装置4へのデータ書込みを実行さ
せるべく制御情報を与え、パラメータレジスタ501お
よびカウンタ504にインターフェイスユニット30か
らキャッシュメモリ5へのデータ転送に必要な情報を設
定する。モードフラグ502は“1”にセットされる。
パラメータレジスタ401にはシーケンサ403を非活
性化すべくデータ転送禁止情報を与える。かくして、イ
ンターフェイスユニット30からキャッシュメモリ5お
よびバッファメモリ50へのデータの同時転送がイネー
ブル状態とされる。
【0016】データの同時転送を実行するためには、イ
ンターフェイスユニット30およびバッファメモリ50
の両方がレディ状態になる必要がある。そのような状態
検出が、ANDゲート603,605が両データ転送要
求信号DRQ1,DRQ2の発生をみることで行なわれ
ている。図3に示すように、ユニット30およびメモリ
50が共にレディ状態となって要求信号DRQ1,DR
Q2がアクティブとなった時点でシーケンサ503はデ
ータ転送要求信号を受ける。これに応答して、シーケン
サ503はアクノレッジ信号DAK1をユニット30に
返する。シーケンサ403は非活性状態であるから、要
求信号DRQ2を受けてもアクノレッジ信号DAK2を
発生しない。しかしながら、アクノレッジ信号DAK1
の発生は、ANDゲート601およびORゲート606
により、図3のようにアクノレッジ信号ACK2を発生
させることになる。シーケンサ503はさらにアドレス
カウンタ504のアドレスを出力させ、そしてデータリ
ード信号IOR1およびメモリライト信号MWRを発生
する。信号IOR1に応答してインターフェイスユニッ
ト30はホストプロセッサ2からのデータをバス19上
に出力する。シーケンサ403はデータライト信号IO
WRを発生しないが、メモリライト信号MWRは、AN
Dゲート608およびORゲート607により、データ
ライト信号IOWR2を発生せしめることになる。かく
して、ユニット30から読み出されたバス19上のデー
タはキャッシュメモリ5とバッファメモリ50との両方
に同時に転送される。その後、カウンタ504のアドレ
スは更新される。また、信号IOR1およびIOW2に
応答して、ユニット30およびバッファメモリ50はそ
れぞれの要求信号DRQ1,DRQ2をロウレベルに反
転させる。ユニット30およびメモリ50が再びレディ
状態となると、上述した動作が実行される。
【0017】このようにして、インターフェイスユニッ
ト30からのデータはキャッシュメモリ5およびバッフ
ァメモリ50の両方に同時に転送される。
【0018】もしモードフラグ502を“0”のままに
しておくと、ユニット30からのデータはキャッシュメ
モリ5にのみ転送される。メモリ5にストアされたデー
タはその後バッファメモリ50にシーケンサ403およ
びカウンタ404を使用して転送される。
【0019】図4を参照すると、本発明の他の実施例に
よるメモリコントローラにおけるデータ転送制御ユニッ
トが示されている。図2と同一機能部は同じ番号で示し
てそれらの説明を省略する。本実施例では、バッファメ
モリ50からのキャッシュメモリ5およびインターフェ
イスユニット30へのデータの同時転送をも可能とした
もので、4つのANDゲート451,453,454,
458、3つのORゲート452,456,457およ
びインバータ450がさらに設けられている。また、モ
ードフラグ402がパラメータレジスタ401に設けら
れている。
【0020】インターフェイスユニット30がホストプ
ロセッサ2からデータ要求のコマンドを受けると、同コ
マンドはマイクロプロセッサ3に供給されてデコードさ
れる。図示していないが、マイクロプロセッサ3にはキ
ャッシュメモリ5がストア(コピー)している外部記憶
装置4のデータ領域を示すセクタ情報やタグ情報を格納
するメモリが設けられている。それらの情報をもとに、
マイクロプロセッサ3はホストプロセッサ2が要求した
データをキャッシュメモリ5がストアしているかどうか
判断する。ストアしていると判ると、マイクロプロセッ
サ3はデータ転送に必要な情報をパラメータレジスタ5
01,カウンタ504に設定し、一方、パラメータレジ
スタ401にはシーケンサ403を非活性化とする情報
を書込む。モードフラグ402,502は“0”にリセ
ットする。シーケンサ503がユニット30からデータ
転送要求信号DRQ1を受けると、アクノレッジ信号D
AK1をORゲート456を介して戻す。カウンタ50
4からアドレスをキャッシュメモリ5に出力させ、さら
にデータライト信号IOWR1とメモリリード信号MR
Dを発生する。この結果、キャッシュメモリ5からデー
タが読み出され、インターフェイスユニット30に転送
される。そのデータはホストプロセッサ2に送られる。
かかる動作は、要求されたデータ数に達するまで実行さ
れる。かくして、外部記憶装置4に対するアクセスは行
なわれず、高速なデータ転送が実行される。
【0021】一方、ホストプロセッサ2が要求したデー
タをキャッシュメモリ5がストアしていないときは、同
データは外部記憶装置4から得なければならない。この
とき、ホストプロセッサ2からの再度の要求に備えて、
装置4から読み出されたデータはキャッシュメモリ5に
ストアされると同時にユニット30にも転送される。
【0022】すなわち、マイクロプロセッサ3は外部記
憶装置4からのデータ読み出しに必要な情報をフォーマ
ット制御ユニット60に供給し、さらにパラメータレジ
スタ401,カウンタ404にメモリ50−5間のデー
タ転送に必要な情報を与える。モードフラグ401は
“1”にセットされる。レジスタ501にはシーケンサ
503を非活性化する情報が与えられる。
【0023】図5に示すように、バッファメモリ50お
よびインターフェイスユニット30が共にレディ状態と
なると、すなわちバッファメモリ50が記憶装置4から
のデータを保持しユニット30がデータ受け入れ可能と
なると、ANDゲート451,453によってシーケン
サ403はデータ要求信号を受けることになる。これに
応答してアクノレッジ信号DACK2がバッファメモリ
50に戻され、さらにANDゲート454,ORゲート
456によりユニット30にもアクノレッジ信号DAK
1が返されることになる。シーケンサ402はカウンタ
404にアドレスを出力させ、そしてデータリード信号
IORD2とメモリライト信号MWRを発生する。メモ
リライト信号MWRはANDゲート458,ORゲート
457によりデータライト信号IOWR1を発生させ
る。かくして、バッファメモリ50から読み出されたデ
ータはバス19を介してキャッシュメモリ5にストアさ
れると同時にインターフェイスユニット30にも転送さ
れる。
【0024】このように、本実施例では、インターフェ
イスユニット30からキャッシュメモリ5およびバッフ
ァメモリ50への同時データ転送とともに、バッファメ
モリ50からキャッシュメモリ5およびインターフェイ
スユニット30への同時データ転送が実行される。
【0025】本発明は上記実施例に限定されず、適宜変
形できることは明らかである。例えば、マイクロプロセ
ッサ3およびキャッシュメモリ5をコントローラ1とと
もシングルチップ化することができる。
【0026】
【発明の効果】以上のとおり、本発明によれば、ホスト
プロセッサ側のインターフェイスユニットからキャッシ
ュメモリと外部記憶装置側のバッファメモリとの両方に
データを同時に転送できるメモリコントローラが提供さ
れ、データ転送速度を格段に向上することができる。
【図面の簡単な説明】
【図1】本発明の一実施例によるメモリコントローラを
用いた情報処理システムの一部を示すブロック図であ
る。
【図2】図1に示したデータ転送制御ユニットの内部構
成図である。
【図3】本実施例の動作を示すタイミング図である。
【図4】本発明の他の実施例によるメモリコントローラ
で用いられるデータ転送制御ユニット内部構成図であ
る。
【図5】本実施例の動作を示すタイミング図である。

Claims (1)

    (57)【特許請求の範囲】
  1. 【請求項1】外部装置に書き込むべきデータを一時スト
    アする第1のメモリと、第2のメモリと、ホストプロセ
    ッサとのインターフェイス動作を制御し前記ホストプロ
    セッサからのデータを一時ストアするインターフェイス
    ユニットと、前記第1のメモリ、前記第2のメモリ及び
    前記インターフェイスをそれぞれ接続するバスと、転送
    モードが設定されるモードフラグと、前記バスに接続さ
    れ、前記ホストプロセッサから前記外部装置へのデータ
    書き込みが要求され、かつ前記モードフラグに同時転送
    モードが設定されていないときに前記インターフェイス
    ユニットに対して前記ホストプロセッサからのデータリ
    ードを許可するデータリード信号を活性化すると共に前
    記第2のメモリに対してデータの書き込みを許可するメ
    モリライト信号を活性化し、前記前記ホストプロセッサ
    からのデータを前記インターフェイスユニットから前記
    第2のメモリに書き込む第1のデータ転送シーケンサ
    と、前記ホストプロセッサから前記外部装置へのデータ
    書き込みが要求され、かつ前記モードフラグに同時転送
    モードが設定されていないときに前記第1のメモリに対
    するデータの書き込みを許可するデータライト信号を活
    性化し、前記第2のメモリに一時ストアされた前記ホス
    トプロセッサからのデータを前記第1のメモリに書き込
    む第2のデータ転送シーケンサとを備えたメモリコント
    ローラであって、前記ホストプロセッサから前記外部装
    置へのデータ書き込みが要求され、かつ前記モードフラ
    グに同時転送モードが設定されているときに前記メモリ
    ライト信号が活性化されたことに応答して前記データラ
    イト信号を活性化するゲート手段をさらに備え、前記ホ
    ストプロセッサから前記外部装置へのデータ書き込みが
    要求され、かつ前記モードフラグに同時転送モードが設
    定されているときには前記インターフェイスユニットに
    ストアされた前記ホストプロセッサからのデータを前記
    第1のメモリ及び前記第2のメモリに同時に書き込むこ
    とを特徴とするメモリコントローラ。
JP3023628A 1990-02-20 1991-02-19 メモリコントローラ Expired - Lifetime JP2768022B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP3023628A JP2768022B2 (ja) 1990-02-20 1991-02-19 メモリコントローラ

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP4014590 1990-02-20
JP2-40145 1990-02-20
JP3023628A JP2768022B2 (ja) 1990-02-20 1991-02-19 メモリコントローラ

Publications (2)

Publication Number Publication Date
JPH04211822A JPH04211822A (ja) 1992-08-03
JP2768022B2 true JP2768022B2 (ja) 1998-06-25

Family

ID=26361027

Family Applications (1)

Application Number Title Priority Date Filing Date
JP3023628A Expired - Lifetime JP2768022B2 (ja) 1990-02-20 1991-02-19 メモリコントローラ

Country Status (1)

Country Link
JP (1) JP2768022B2 (ja)

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6476346A (en) * 1987-09-18 1989-03-22 Fujitsu Ltd Disk cache control system

Also Published As

Publication number Publication date
JPH04211822A (ja) 1992-08-03

Similar Documents

Publication Publication Date Title
US6636927B1 (en) Bridge device for transferring data using master-specific prefetch sizes
US5307471A (en) Memory controller for sub-memory unit such as disk drives
JP3180362B2 (ja) 情報処理装置
US5426737A (en) Direct memory access for data transfer within an I/O device
EP0464848B1 (en) Structure for enabling direct memory-to-memory transfer
JPS6375955A (ja) プログラムモ−ド・アクセス制御方式
JP2768022B2 (ja) メモリコントローラ
JPH04332063A (ja) ローカルコンピューティングシステムによるホストコンピューティングシステムへのアクセス制御を調整するためのローカルコンピューティングシステムとともに使用される装置
JPH08314854A (ja) データ転送システムおよびこれに関連する装置
JPH0628261A (ja) データ転送方法及び装置
JP2574821B2 (ja) ダイレクトメモリアクセス・コントローラ
JP3019323B2 (ja) イメージメモリのダイレクトアクセス方法
JP2001306411A (ja) 情報処理装置及び情報処理方法
JPS6113633B2 (ja)
JP3241072B2 (ja) コンピュータシステム
JP2671743B2 (ja) マイクロコンピュータ
JPS59135684A (ja) バツフアメモリ間のデ−タバイパス方式
JP2581144B2 (ja) バス制御装置
JP2642087B2 (ja) 主記憶装置間データ転送処理機構
JPH0877062A (ja) アドレス管理装置
JP2611191B2 (ja) 入出力制御装置
JPH02249052A (ja) データ転送装置
JPH04337851A (ja) メモリアクセス方式
JPH01240960A (ja) Dma転送制御回路
JPS58213371A (ja) デ−タ処理システム

Legal Events

Date Code Title Description
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 19980310