(57)【特許請求の範囲】
【請求項１】
メモリ制御部により制御されるクロック同期式のメモリを使用したメモリ制御システムにおいて、
前記メモリを制御するために前記メモリ制御部から出力されるメモリ制御信号を保持し、予め定められた時間が経過してから前記メモリに送出するためのクロックに同期した出力バッファとして機能するインタフェース手段を備え、
前記メモリ制御システムは、前記インタフェース手段により生じ、かつ、前記メモリ制御信号が前記メモリへ伝達されるまでに生じる前記メモリ制御信号の遅延時間を、予め考慮して前記メモリに対するアクセスを行い、
さらに、前記メモリ制御システムは、前記メモリ制御信号を保持するための前記インタフェース手段の有無を、前記メモリ制御部の動作モード設定により決定することができる機能を有しており、前記メモリ制御信号の送出からデータの送受信までの時間を、前記メモリが持つレイテンシのみとするか、または前記インタフェース手段により生じる前記遅延時間に前記メモリのレイテンシを加えた時間とするかを選択することが可能であることを特徴とするメモリ制御システム。
【請求項２】
クロック同期式のメモリを制御するためのメモリ制御方法であって、
前記メモリを制御するためにメモリ制御部から出力されるメモリ制御信号を、クロックに同期したインタフェース手段に保持し、予め定められた時間が経過してから前記メモリに送出し、
前記メモリ制御信号が前記メモリへ伝達されるまでに生じる前記メモリ制御信号の遅延時間を、予め考慮して前記メモリに対するアクセスを行い、
前記メモリ制御信号を保持するための前記インタフェース手段の有無が、前記メモリ制御部の動作モード設定により決定され、前記メモリ制御信号の送出からデータの送受信までの時間を、前記メモリが持つレイテンシのみとするか、または前記インタフェース手段により生じる前記遅延時間に前記メモリのレイテンシを加えた時間とするかを選択することが可能であることを特徴とするメモリ制御方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、メモリ制御装置等により制御されるクロック同期式のメモリを使用したメモリ制御システム、およびクロック同期式のメモリを制御するためのメモリ制御方法に関する。特に、本発明は、大容量のメモリ空間を構成するために多数のメモリが必要となる場合に、これらの多数のメモリに対し高速にてアクセスすることを可能にするメモリ制御システムおよびメモリ制御方法に関するものである。
【０００２】
近年は、マイクロプロセッサ（通常、ＭＰＵ（Microprocessor Unit ）と略記される）の処理能力が非常に高くなってきており、このマイクロプロセッサを使用したシステムにおいて、必要となる記憶装置は、大容量かつ高速アクセスが要求される傾向にある。このような要求を満たす記憶装置を構成するメモリとして、１００ＭＨｚ以上の高速のクロックに同期して動作し、かつ、マイクロプロセッサ等が要求するデータを入出力することが可能なクロック同期式のシンクロナス・ダイナミック・ランダム・アクセス・メモリ（以後、ＳＤＲＡＭと略記する）等の新しいＤＲＡＭが出てきた。
【０００３】
このＳＤＲＡＭを制御するためのマイクロプロセッサ等を含むメモリ制御装置には、メモリを駆動することが可能な最大駆動能力（駆動容量）が存在し、この最大駆動能力という値によってメモリ制御装置に接続することができるＳＤＲＡＭの数に制限がある。このようなＳＤＲＡＭの数の制限と使用するＳＤＲＡＭの記憶容量によって、システムとして構成することができる全体の容量が決定される。ただし、入手可能なＳＤＲＡＭの種類は限られており、ＳＤＲＡＭを使用して大容量のシステムを実現するためには、使用するＳＤＲＡＭの数を増やすことが必要となる。
【０００４】
【従来の技術】
図９は、従来のメモリ制御システムの第１の構成例を示す回路ブロック図である。ただし、ここでは、メモリ制御システムの構成を簡略化して示すこととする。
図９に示すメモリ制御システムにおいては、ＳＤＲＡＭを制御するためのメモリ制御装置としてＳＤＲＡＭ制御装置（ＳＤＲＡＭコントローラ）２００が設けられ、このＳＤＲＡＭ制御装置２００に対し複数のＳＤＲＡＭ１１が接続されている。このＳＤＲＡＭ制御装置２００とＳＤＲＡＭ１１との間で、ＳＤＲＡＭ制御装置２００にて生成されるクロックＣＬＫに同期してデータＤＡＴＡ（例えば、６４ビット（Ｂｉｔ）のデータ幅を有するデータＤＡＴＡ［００：３１］、ＤＡＴＡ［３２：６４］）の入出力が行われる。
【０００５】
さらに、ＳＤＲＡＭ制御装置２００においては、クロックＣＬＫ以外に、ＳＤＲＡＭ１１を制御するための各種の制御信号、およびデータＤＡＴＡのマスキングに用いるデータマスク信号ＤＱＭが生成され、信号入出力用のＩ／Ｏ部２１０からＳＤＲＡＭ１１へ供給される。ここでは、上記の各種の制御信号として、アドレス信号ＡＤＲ、ローアドレスストローブ信号／ＲＡＳ（負論理の信号）、コラムアドレスストローブ信号／ＣＡＳ（負論理の信号）、ライトイネーブル信号／ＷＥ（負論理の信号）、バンクアドレス信号ＢＡ、チップセレクト信号／ＣＳ（負論理の信号）およびクロックイネーブル信号ＣＫＥを示すこととする。
【０００６】
上記のように、ＳＤＲＡＭ制御装置２００に対しＳＤＲＡＭ１１を直接接続する構成では、各種の制御信号を出力するためのＩ／Ｏ部に最も大きな負荷がかかる。このため、ＳＤＲＡＭ制御装置２００の最大駆動能力が、制御信号出力用のＩ／Ｏ部により制限されることになる。このＳＤＲＡＭ制御装置２００の最大駆動能力によって、ＳＤＲＡＭ制御装置に接続できるＳＤＲＡＭの数が決定されることになる。
【０００７】
ここで、図９に示すように、ＳＤＲＡＭ制御装置に接続できるＳＤＲＡＭの数が４であると仮定する。メモリ制御システム用のＳＤＲＡＭの品種として６４メガビット（Ｍｂｉｔ）品を使用し、６４ビットのデータ幅を有するメモリ空間を実現しようとした場合、このメモリ空間全体の容量は、
６４メガビット×４＝２５６メガビット＝３２メガバイト（ＭＢｙｔｅ）
となる。
【０００８】
また一方で、ＳＤＲＡＭ制御装置の最大駆動能力を高めるために、Ｉ／Ｏ部の出力側にバッファを挿入して上記最大駆動能力を補うことが考えられる。
図１０は、このようにして考え出された従来のメモリ制御システムの第２の構成例を示す回路ブロック図である。
図１０に示すメモリ制御システムにおいては、ＳＤＲＡＭ制御装置２００の制御信号出力用のＩ／Ｏ部２１０の出力側とＳＤＲＡＭ１１との間に、複数のバッファ回路からなるバッファ３００を挿入している。このバッファ３００を使用してＳＤＲＡＭ制御装置２００の最大駆動能力を高めることにより、ＳＤＲＡＭ制御装置に接続できるＳＤＲＡＭの数を増やすことができる。例えば、図１０に示すメモリ制御システムでは、ＳＤＲＡＭ制御装置の最大駆動能力を４倍にすることにより、ＳＤＲＡＭ制御装置に接続できるＳＤＲＡＭの数が１６にまで増加する。したがって、メモリ空間全体の容量も、図９に示した従来の第１のメモリ制御システムの４倍（例えば、１２８メガバイト）になる。
【０００９】
ただし、図１０のメモリ制御システムでは、バッファを挿入したことによる各種の制御信号（アドレス信号ＡＤＲ、ローアドレスストローブ信号／ＲＡＳ、コラムアドレスストローブ信号／ＣＡＳ、ライトイネーブル信号／ＷＥ、バンクアドレス信号ＢＡ、チップセレクト信号／ＣＳ、クロックイネーブル信号ＣＫＥおよびデータマスク信号ＤＱＭ）の遅延が発生する。それゆえに、特に高速動作が要求されるＳＤＲＡＭの制御においては、バッファ内の各バッファ回路から出力される制御信号間のタイミングのずれ、すなわち、信号間のスキューを調整することが困難になってくる。
【００１０】
【発明が解決しようとする課題】
上記のとおり、ＳＤＲＡＭ等を使用したメモリ制御システムを実現する場合、使用するＳＤＲＡＭの種類と、ＳＤＲＡＭを制御するメモリ制御装置が駆動可能なＳＤＲＡＭの数により、構成できるメモリ空間全体の容量が決定される。ただし、入手することができるＳＤＲＡＭの種類は限られており、ＳＤＲＡＭを用いて大容量のメモリ空間を実現するためには、使用するＳＤＲＡＭの数を増やすことがどうしても必要となる。
【００１１】
しかしながら、図９に示した従来の第１例のメモリ制御システムから明らかなように、ＳＤＲＡＭを制御するメモリ制御装置に接続できるＳＤＲＡＭの数は、このメモリ制御装置内のＩ／Ｏ部の性能、具体的にはＩ／Ｏ部の接続負荷容量に依存し、その数には限りがある。
また一方で、図１０に示した従来の第２例のメモリ制御システムのように、メモリ制御装置が駆動できるＳＤＲＡＭの数を増やすために、メモリ制御装置とＳＤＲＡＭとの間に入出力用のバッファを接続し、接続負荷容量を増やす手法が考えられる。
【００１２】
この従来の第２例の手法を用いた場合、入出力用のバッファを挿入したことにより生じる制御信号の遅延と複数の制御信号間に生じるスキューを考慮した設計が必要となる。しかしながら、メモリ制御装置に接続されるＳＤＲＡＭは、年々、より高速の動作が要求される傾向にあり、バッファの挿入によるスキューの調整が困難なものとなっている。この結果、メモリ制御装置に接続できるＳＤＲＡＭの数を増やしても、これらのＳＤＲＡＭを高速アクセスにて動作させることが難しくなるという問題が生じてきた。
【００１３】
本発明は上記問題点に鑑みてなされたものであり、使用するＳＤＲＡＭ等のクロック同期式のメモリの数を増加させて大容量のメモリ空間を構成すると共に、ＳＤＲＡＭ等を高速アクセスにて動作させることを可能にするメモリ制御システムおよびメモリ制御方法を提供することを目的とするものである。
【００１４】
【課題を解決するための手段】
図１は、本発明の原理構成を示すブロック図である。ここでは、メモリ制御システムの構成を簡略化して示す。
図１においては、従来のＳＤＲＡＭ制御装置２００（図９および図１０参照）とほぼ同じ機能を有するメモリ制御部２が設けられており、このメモリ制御部２に対し、記憶装置１を構成する複数のクロック同期式のメモリ１０が接続されている。上記のメモリ制御部２は、複数のメモリ１０からなる記憶装置１を制御するためのＭＰＵ４と、このＭＰＵ４からのコマンドにより各種の制御信号Ｓc やアドレス信号Ｓa やデータＤＡＴＡを生成して出力するメモリ用信号生成部５とを有する。ここでは、メモリ制御用に使用される制御信号Ｓc 、およびアドレスバスを通して伝達されるアドレス信号Ｓa を併せてメモリ制御信号とよぶこととする。なお、データＤＡＴＡは、データバスを通して伝達される。
【００１５】
上記問題点を解決するために、図１に示す本発明のメモリ制御システムは、上記メモリ１０を制御するために上記メモリ制御部２から出力されるメモリ制御信号を保持し、予め定められた時間が経過してから上記メモリ１０に送出するためのクロックに同期した出力バッファとして機能するインタフェース手段３を備えている。このような構成のメモリ制御システムでは、上記インタフェース手段３により生じ、かつ、上記メモリ制御信号が上記メモリ１０へ伝達されるまでに生じる上記メモリ制御信号の遅延時間を、予め考慮して上記メモリ１０に対するアクセスを行うようにしている。
【００１６】
好ましくは、本発明のメモリ制御システムでは、上記メモリ制御信号Ｓc を保持するための上記インタフェース手段３の有無を、上記メモリ制御部２の動作モード設定により決定することができる機能を有しており、上記メモリ制御信号の送出からデータの送受信までの時間を、上記メモリ１０が持つレイテンシのみとするか、または、上記インタフェース手段３により生じる上記遅延時間に上記メモリ１０のレイテンシを加えた時間とするかを選択することが可能である。
【００１７】
ここで使用される「レイテンシ」は、メモリ制御部２のＭＰＵ４がデータの要求を発行した瞬間（例えば、コラムアドレスストローブ信号／ＣＡＳが出力された瞬間）から、メモリ１０においてデータの読出または書込が実際に開始される瞬間までの時間間隔を意味しており、「待ち時間」ともよばれる。
また一方で、本発明のメモリ制御システム等を動作させることによってクロック同期式のメモリを制御するためのメモリ制御方法においては、上記メモリを制御するためにメモリ制御部から出力されるメモリ制御信号をインタフェース手段に保持し、予め定められた時間が経過してから上記メモリに送出し、上記メモリ制御信号が上記メモリへ伝達されるまでに生じる上記メモリ制御信号の遅延時間を、予め考慮して上記メモリに対するアクセスを行うようにしている。
【００１８】
好ましくは、本発明のメモリ制御方法では、上記メモリ制御信号を保持するための上記インタフェース手段の有無を、上記メモリ制御部の動作モード設定により決定し、上記メモリ制御信号の送出からデータの送受信までの時間を、上記メモリが持つレイテンシのみとするか、または上記インタフェース手段により生じる上記遅延時間に上記メモリのレイテンシを加えた時間とするかを選択するようにしている。
【００１９】
より詳細に説明すると、図１のメモリ制御システムでは、ＳＤＲＡＭ等のメモリ１０と、これらのメモリ１０を制御するメモリ制御部２との間に、単なるバッファ（図１０参照）ではなく、メモリ１０に供給されるクロックと同一の周波数にて動作するインタフェース装置等のインタフェース手段３を使用するようにしている。好ましくは、上記インタフェース手段３は、複数の出力バッファから構成される。
【００２０】
さらに、図１のメモリ制御システムでは、メモリ制御部２から出力される制御信号Ｓc およびアドレス信号Ｓa を含むメモリ制御信号をインタフェース手段３にて保持する。このようにして保持されたメモリ制御信号は、予め定められたサイクル（例えば、１クロックサイクル）の後に、インタフェース手段３からメモリ１０へ送出される。
【００２１】
ここで使用するインタフェース装置等のインタフェース手段３に対しては、このインタフェース手段の駆動能力に相当する数のメモリ１０が接続可能である。さらに、インタフェース手段３から出力されるメモリ制御信号を受領したＳＤＲＡＭ等のメモリ１０は、予め定められたレイテンシの後にデータの送出および受領を開始する。
【００２２】
ここで、メモリ制御信号を送出するメモリ制御部２が持つ各々の出力バッファの駆動能力が４であると仮定する。ＳＤＲＡＭ等のメモリ１０の負荷容量を「１」とした場合、メモリ制御部２にメモリ１０を直接接続するときに、接続することができるメモリ１０の数は４となる（図１０参照）。
さらに、本発明のインタフェース手段の入力負荷容量を「１」とした場合、メモリ制御部２とメモリ１０との間に４つの出力バッファからなるインタフェース手段３を使用するときに、メモリ制御部２に接続できる出力バッファの数は４となる。
【００２３】
インタフェース手段３の最大駆動能力を４と仮定すると、１つの出力バッファに接続できるメモリ１０の数は４となる。したがって、メモリ制御部２が駆動することが可能なメモリの総数は４×４＝１６となり、従来の第１例の場合の約４倍の容量を実現することが可能になる。
上記のインタフェース手段３は、ＳＤＲＡＭ等のメモリ１０に供給されるクロックに同期して動作させることにより、メモリ制御信号間のスキューの調整が容易に行われる。これらのメモリ制御信号およびデータを送出しかつ受領するメモリ制御部は、レイテンシとレジスタ等によるメモリ制御信号の遅延を考慮しながら、データの送出動作および受領動作を行う。
【００２４】
かくして、本発明のメモリ制御システムおよびメモリ制御方法では、メモリ制御部とクロック同期式のメモリとの間に、クロックに同期したインタフェース手段を挿入することにより、メモリ制御部に接続可能なクロック同期式のメモリの数を増加させて大容量のメモリ空間を構成することが可能になると共に、高速アクセスにてメモリを動作させることを可能になる。
【００２５】
【発明の実施の形態】
以下、添付図面（図２〜図８）を参照しながら、本発明の好ましい実施の形態（以後、実施例とよぶこととする）を説明する。
ただし、ここでは、本発明の好ましい実施例の構成および特徴を容易に理解することができるように、本発明の実施例に使用されるＳＤＲＡＭの構成およびその動作を最初に説明することとする。
【００２６】
図２は、本発明の半導体装置に使用されるＳＤＲＡＭの概略的構成を示すブロック図であり、図３は、図２のＳＤＲＡＭの動作を説明するためのタイミングチャートである。
図２に示すＳＤＲＡＭからなる半導体チップは、チップ内のメモリ領域を構成するための複数のバンク（例えば、バンクＮｏ．０、Ｎｏ．１）を有する２０４８ビット×２０４８ビットのＤＲＡＭコア１０８ａ、１０８ｂと、これらのＤＲＡＭコア１０８ａ、１０８ｂに供給すべき各種のチップ制御信号（ローアドレス制御信号ＲＡＳ、コラムアドレス制御信号ＣＡＳ、およびライトイネーブル信号ＷＥ）を保持する制御信号ラッチ１０５ａ、１０５ｂと、ＳＤＲＡＭの動作モードを特定するためのモードレジスタ１０６と、コラムアドレスをカウントしてデータをアクセスするためのコラムアドレスカウンタ１０７ａ、１０７ｂとを備えている。
【００２７】
さらに、図２に示す半導体チップは、クロックイネーブル信号ＣＫＥに基づき、ＳＤＲＡＭを動作させるための基準となるクロック（すなわち、外部クロック）ＣＬＫを保持して他の入力回路部や半導体チップ内の複数のブロックに供給するためのクロックバッファ１０１と、各種の制御信号、すなわちコマンド信号（チップセレクト信号／ＣＳ、ローアドレスストローブ信号／ＲＡＳ、コラムアドレスストローブ信号／ＣＡＳ、およびライトイネーブル信号／ＷＥ等）をデコードして上記制御信号ラッチ１０５ａ、１０５ｂおよびモードレジスタ１０６に供給するコマンドデコーダ１０２と、ローアドレスおよびコラムアドレスを含むメモリアドレス信号Ａ０〜Ａ１０、およびバンクアドレス信号Ａ１１を保持してモードレジスタ１０６、コラムアドレスカウンタ１０７ａ、１０７ｂおよびＤＲＡＭコア１０８ａ、１０８ｂに供給するアドレスバッファ／レジスタおよびバンクセレクタ１０３と、各種のデータＤＱ（ＤＱ０〜ＤＱ７）をデータマスク信号ＤＱＭと共に保持してＤＲＡＭコアのＩ／Ｏ部に供給するＩ／Ｏデータバッファ／レジスタ１０４とを備えている。ここで、ＤＲＡＭコア１０８ａ、１０８ｂ以外の全ての制御回路は、好ましくは、前述の図１に示したようなメモリ制御部２に含まれる。
【００２８】
さらに、図２において、チップセレクト信号／ＣＳ、ローアドレスストローブ信号／ＲＡＳ、コラムアドレスストローブ信号／ＣＡＳ、およびライトイネーブル信号／ＷＥ等のコマンド信号は、その組み合せにより各種のコマンドを入力することによって動作モードが決定されるようになっている。これらの各種のコマンドは、コマンドデコーダ１０２により解読され、動作モードに応じて各回路を制御することになる。また一方で、上記のチップセレクト信号／ＣＳ、ローアドレスストローブ信号／ＲＡＳ、コラムアドレスストローブ信号／ＣＡＳ、およびライトイネーブル信号／ＷＥは、制御信号ラッチ１０５ａと１０５ｂにも入力され、次のコマンドが入力されるまで現在のコマンド信号の状態がラッチされる。
【００２９】
さらにまた、図２において、メモリアドレス信号Ａ０〜Ａ１０、およびバンクアドレス信号Ａ１１（Ａ０〜Ａ１１は、前述の図９および図１０のアドレス信号ＡＤＲにほぼ対応する）は、アドレスバッファ／レジスタおよびバンクセレクタ１０３により増幅されて各バンクのロードアドレスとして使用されると共に、コラムアドレスカウンタ１０７ａ、１０７ｂの初期値として使用される。ＤＲＡＭコア１０８ａ、１０８ｂから読み出された信号は、Ｉ／Ｏデータバッファ／レジスタ１０４により増幅され、外部から入力される外部クロックＣＬＫの立ち上がりに同期して出力される。データ入力についても同様の動作が行われ、Ｉ／Ｏデータバッファ／レジスタ１０４に入力されたデータがＤＲＡＭコア１０８ａ、１０８ｂに書き込まれる。
【００３０】
図３に示すタイミングチャートにおいては、（ａ）部の外部クロックＣＬＫの立ち上がりに同期して各種の制御信号がＤＲＡＭコアに入力され（（ｂ）部に示す）、このＤＲＡＭコア内のデータが読み出される。この場合、まず初めに、ＤＲＡＭコア内のメモリマトリックスのローアドレス（Row Address ）が選択され、所定の遅れ時間（後述のローアドレスアクセス時間ｔＲＣＤに相当する）が経過した後にコラムアドレス（Column Address）が選択されてデータの読出動作が開始される。
【００３１】
さらに詳しく説明すると、ＳＤＲＡＭからデータを読み出す場合、前述の各種のコマンド信号の組み合わせからアクティブ（ＡＣＴ）コマンドをコマンド端子に入力し、アドレス端子にはローアドレス信号を入力する。このようなコマンドおよびローアドレスが入力されると、ＳＤＲＡＭは活性化状態になり、ローアドレスに応じたワード線を選択し、この選択されたワード線上のセル情報をビット線に出力した後に、センスアンプにて増幅する。また一方で、上記のローアドレスのアクセスに関係した部分の動作時間（ローアドレスアクセス時間ｔＲＣＤ）が経過した後に、リードコマンド（ＲＥＡＤ）およびコラムアドレスを入力する。このコラムアドレスに従って、選択されたセンスアンプのデータをデータバスに出力した後に、データバスアンプにて増幅し、データ出力バッファによりさらに増幅することによって出力端子にデータＤＱが出力される（（ｃ）部に示す）。
【００３２】
これら一連の動作は汎用のＤＲＡＭの動作と全く同じであるが、ＳＤＲＡＭの場合、コラムアドレスに関係する回路がパイプライン動作をするようになっており、読み出されたリードデータは毎サイクル連続して出力されることになる。これにより、データ転送周期はクロックＣＬＫの周期に等しくなる。
ＳＤＲＡＭでのアクセス時間には３種類あり、いずれもクロックＣＬＫの立ち上がり時点を基準にして定義される。図３において、ｔＲＡＣはローアドレスのアクセスに関係した部分の動作時間を示すローアドレスアクセス時間、ｔＣＡＣはコラムアドレスのアクセスに関係した部分の動作時間を示すコラムアドレスアクセス時間、ｔＡＣはクロックＣＬＫからデータ出力までの時間遅れを示すクロックアクセス時間を示している。上記ＳＤＲＡＭを高速のメモリシステムにて使用する場合、コマンドを入力してから最初にデータが得られるまでの時間を示すｔＲＡＣやｔＣＡＣも重要であるが、データの転送速度を高める上では、クロックアクセス時間ｔＡＣも重要である。
【００３３】
さらに、図３において、ｔＯＨは前のサイクルまたは次のサイクルへの出力データ保持時間を示している。ＳＤＲＡＭの特性のばらつき、温度依存性および電源電圧依存性を考えると、ｔＡＣとｔＯＨとは一致せず、ある程度の時間幅を持つことになってしまう。この時間幅に相当する時間では、出力端子から出力されるべきデータが不確定になっている。このようにデータが不確定になっている時間、すなわち、データ不確定時間は、どのようなデータが出力されるか分からない時間を意味しており、メモリ制御システムでは使用することができない時間である。
【００３４】
上記のデータ不確定時間は、ＳＤＲＡＭの特性のばらつきや、温度および電源電圧等の変化により変動する傾向にある。このような場合でも、正確なタイミングにてデータを誤りなく出力するためには、クロックＣＬＫに対してデータが常に所定の位相で出力されること、すなわち、クロックアクセス時間ｔＡＣが常に一定であることが要求される。例えば、データの出力が内部クロックの立ち上がりに同期して行われることが望ましい場合、クロックＣＬＫと内部クロックの位相差が常に所定の周期分、例えば、３６０度（０度）に保持されるようにＳＤＲＡＭ内のＤＬＬ回路（Delayed Lock Loop の略、クロック位相調整回路の一種）の可変ディレイ回路の遅延量を設定することが必要である。
【００３５】
図４は、本発明の第１の実施例の構成を示すブロック図である。なお、これ以降、前述した構成要素と同様のものについては、同一の参照番号を付して表すこととする。
図４に示す第１の実施例においては、前述のメモリ制御部２として、複数のＳＤＲＡＭ１１の読出動作や書込動作に使用される制御信号Ｓc 、アドレス信号Ａ０〜Ａｍ（ｍは任意の正の整数）およびデータＤＡＴＡの送出および受領を行うメモリ制御装置２０が設けられている。なお、アドレス信号Ａ０〜Ａｍは、前述の図１のアドレス信号Ｓa にほぼ対応するものである。
【００３６】
さらに詳しく説明すると、図４のメモリ制御装置２０は、データを保存する複数のＳＤＲＡＭ１１からなる記憶装置を制御するためのＭＰＵ４と、このＭＰＵ４の指示により制御信号Ｓc 、アドレス信号Ａ０〜ＡｍおよびデータＤＡＴＡをＳＤＲＡＭ１１へそれぞれ送出するためのシーケンス制御部５０、メモリアドレス制御部５１およびデータ制御部５２とを備えている。好ましくは、シーケンス制御部５０、メモリアドレス制御部５１およびデータ制御部５２の３つの制御ブロックは、前述のメモリ用信号生成部５（図１）に含まれる。
【００３７】
さらに、図４に示す第１の実施例においては、メモリ制御装置２０内のシーケンス制御部５０およびメモリアドレス制御部５１とＳＤＲＡＭ１１との間に、インタフェース装置３０が挿入される。このインタフェース装置３０は、前述のインタフェース手段３とほぼ同じように、クロックＣＬＫに同期した出力バッファの機能を有しており、ＳＤＲＡＭ１１を制御するためにメモリ制御装置２０から出力される制御信号Ｓc およびアドレス信号Ａ０〜Ａｍ（すなわち、メモリ制御信号）を保持し、一定の時間が経過してからＳＤＲＡＭ１１に送出する。換言すれば、上記インタフェース装置３０は、ＳＤＲＡＭ１１に供給されるクロックに基づいて動作し、ＳＤＲＡＭ１１を制御するための全てのメモリ制御信号（制御信号Ｓc およびアドレス信号Ａ０〜Ａｍ）を各クロックのクロックサイクルで保持する機能を有する。
【００３８】
ついで、図４のメモリ制御装置２０の概略的な動作を説明する。メモリ制御装置２０内のＭＰＵ４よりＳＤＲＡＭ１１へのアクセスが要求されると、メモリアドレス制御部５１は、アドレスバスからのアドレス信号Ａ０〜Ａｍをデコードし、ローアドレスおよびコラムアドレスを生成する（図４の（１））。さらに、シーケンス制御部５０は、メモリアドレス制御部５１にて生成したローアドレスおよびコラムアドレスを出力するタイミングを指示し、インタフェース装置３０に対し当該ローアドレスおよびコラムアドレスを出力すると共にＳＤＲＡＭ制御用の制御信号Ｓc を出力する。（図４の（２））。
【００３９】
さらに、ＳＤＲＡＭ制御用の制御信号Ｓc を受領したインタフェース装置３０は、後述の図７のタイミングチャートに示すように、１クロックサイクルの後にメモリ制御装置２０からの制御信号をＳＤＲＡＭ１１に送出する（図４の（３））。
さらに、インタフェース装置３０からの制御信号を受領したＳＤＲＡＭ１１は、ＳＤＲＡＭ固有のレイテンシを経過した後、ＳＤＲＡＭに保存されているＳＤＲＡＭデータをメモリ制御装置２０に送出する（図４の（４））。
【００４０】
さらに、メモリ制御装置２０内のデータ制御部５２は、シーケンス制御部５０からの指示により、ＳＤＲＡＭ固有のレイテンシに対して１クロックサイクル遅れたタイミングで、データの取り込みを行う（図４の（５））。
さらに、データ制御部５２は、データバスを通して、ＳＤＲＡＭ１１から受領したデータ（ここでは、ＤＡＴＡと表す）をＭＰＵ４に送出する（図４の（６））。
【００４１】
上記の第１の実施例では、インタフェース装置３０は、ＳＤＲＡＭ１１に供給されるクロックと同一の周波数で動作させることにより、各種のメモリ制御信号間のスキューの調整が容易に行われる。これらのメモリ制御信号およびデータを送出したり受領したりするメモリ制御装置２０は、メモリ制御信号がＳＤＲＡＭ１１へ伝達されるまでに生じる上記メモリ制御信号の遅延時間、およびＳＤＲＡＭ固有のレイテンシ以外に、インタフェース装置３０により生じるメモリ制御信号の遅延時間も考慮しながら、ＳＤＲＡＭ１１に対するアクセスを行う。メモリ制御装置２０とＳＤＲＡＭ１１との間に挿入されるインタフェース装置３０により生じるメモリ制御信号の遅延は、ＳＤＲＡＭに対しデータの送受を行うメモリ制御装置側でメモリ制御信号を１クロック分早く送り出すことにより補償される。
【００４２】
好ましくは、本発明のメモリ制御方法は、上記の第１の実施例に係るメモリ制御システムを動作させることにより実現される。このようなメモリ制御方法においては、クロック同期式のＳＤＲＡＭを制御するためにメモリ制御装置から出力されるメモリ制御信号をインタフェース装置に保持し、予め定められた時間が経過してから上記ＳＤＲＡＭに送出し、上記メモリ制御信号が上記ＳＤＲＡＭへ伝達されるまでに生じる上記メモリ制御信号の遅延時間（インタフェース装置内のレジスタやフリップフロップ等により生じるメモリ制御信号の遅延時間も含む）を、予め考慮して上記ＳＤＲＡＭに対するアクセスを行うようにしている。
【００４３】
図５は、図４のインタフェース回路の具体的な構成を示す回路ブロック図である。ここでは、インタフェース装置３０として、第１〜第４のフリップフロップ（ＦＦ）３１〜３４からなる複数のフリップフロップを使用した例を示すこととする。
図５においては、ＳＤＲＡＭを制御するためのメモリ制御装置として、ＳＤＲＡＭ制御装置（ＳＤＲＡＭコントローラ）２２が設けられ、このＳＤＲＡＭ制御装置２２に対し複数のＳＤＲＡＭ１１が接続されている。このＳＤＲＡＭ制御装置２２とＳＤＲＡＭ１１との間で、ＳＤＲＡＭ制御装置２２にて生成されるクロックＣＬＫに同期してＳＤＲＡＭデータＳＤＱ（例えば、６４ビット（Ｂｉｔ）のデータ幅を有するＳＤＲＡＭデータＳＤＱ［００：１５］、ＳＤＱ［１６：３１］、ＳＤＱ［３２：４７］、ＳＤＱ［４８：６４］）の入出力が行われる。
【００４４】
さらに、図５のＳＤＲＡＭ制御装置２２においては、クロックＣＬＫ以外に、ＳＤＲＡＭ１１を制御するための各種のＳＤＲＡＭ制御信号が生成され、インタフェース装置３０に送出される。ここでは、上記の各種のＳＤＲＡＭ制御信号として、アドレス信号ＡＤＲ、ローアドレスストローブ信号／ＲＡＳ、コラムアドレスストローブ信号／ＣＡＳ、ライトイネーブル信号／ＷＥ、バンクアドレス信号ＢＡ、チップセレクト信号／ＣＳ、クロックイネーブル信号ＣＫＥおよびデータマスク信号ＤＱＭが生成される。
【００４５】
ここで、各種のＳＤＲＡＭ制御信号の中のある一つの信号、例えば、コラムアドレスストローブ信号／ＣＡＳに着目する。ＳＤＲＡＭ制御装置２２から出力されるコラムアドレスストローブ信号／ＣＡＳは、第１〜第４のフリップフロップ３１〜３４から構成されるインタフェース装置３０に入力される。このインタフェース装置３０内では、４つのＤ形フリップフロップ（Ｄ−ＦＦ）からなる第１〜第４のフリップフロップ３１〜３４の各々のＤ入力端子にコラムアドレスストローブ信号／ＣＡＳが入力され、クロック入力端子ＣＫから入力されるクロックＣＬＫに同期してコラムアドレスストローブ信号／ＣＡＳが保持される。さらに、１クロックサイクルの後に、各Ｄ−ＦＦのＱ出力端子からのＱ出力としてコラムアドレスストローブ信号／ＣＡＳが出力される。上記のような構成のインタフェース装置では、ＳＤＲＡＭ制御装置２２から出力される全てのＳＤＲＡＭ制御信号について、上記のコラムアドレスストローブ信号／ＣＡＳと同じように取り扱うこととする。
【００４６】
図５のインタフェース装置３０は、複数のＤ−ＦＦ等のフリップフロップを使用して構成しているが、複数のレジスタを使用して構成することも可能である。このようなレジスタを使用してインタフェース装置３０を構成した場合も、複数のフリップフロップを使用した場合と同じように、ＳＤＲＡＭ制御信号を一旦保持してから１クロックサイクルの後に、ＳＤＲＡＭに送出することが可能になる。
【００４７】
上記のインタフェース装置３０内のフリップフロップまたはレジスタは、ＳＤＲＡＭ制御装置２２の最大駆動能力を超えない範囲の数のＳＤＲＡＭを接続することができる。図５では、ＳＤＲＡＭ制御装置２０の最大駆動能力を４までとし、かつ、レジスタの入力負荷容量を１としている。インタフェース手段３の最大駆動能力を４と仮定すると、１つの出力バッファに接続できるＳＤＲＡＭの数は４となる。したがって、メモリ制御部２が駆動することが可能なメモリの総数は４×４＝１６となり、従来の第１例の場合の約４倍の容量を実現することが可能になる。
【００４８】
Ｎサイクル目のクロックＣＬＫにてフリップフロップ等に保持されたＳＤＲＡＭ制御信号は、例えば（Ｎ＋１）サイクル目のクロックでフリップフロップ等から出力される。フリップフロップの最大駆動能力が４、ＳＤＲＡＭの負荷容量が１と仮定すると、フリップフロップに接続可能なＳＤＲＡＭの数は４となり、最終的にＳＤＲＡＭ制御装置２２に接続できるＳＤＲＡＭの総数は１６となる。
例えば、メモリ制御システム用のＳＤＲＡＭの品種として６４メガビット品を使用し、６４ビットのデータ幅を有するメモリ空間を実現しようとした場合、このメモリ空間全体の容量は、
６４メガビット×１６＝１０２４メガビット＝１２８メガバイト
となる。インタフェース装置の駆動能力と入力負荷との関係にもよるが、上記の仮定では、本発明の第１の実施例の構成によって、従来の構成（前述のように、図９の構成では３２メガバイト）の４倍のＳＤＲＡＭの容量を実現することが可能になる。
【００４９】
図６は、本発明の第２の実施例の構成を示す回路ブロック図である。ここでは、メモリ制御装置２０の内部に、通常モード（図６の（ａ））またはインタフェースモード（図６の（ｂ））のいずれか一方の動作モードを設定するための動作設定レジスタ６を設けている点が、前述の第１の実施例（図４）の場合と異なる。
【００５０】
この動作設定レジスタ６以外のメモリ制御装置２０の構成、およびインタフェース装置３０の構成（図６の（ｂ）のみ）は、前述の第１の実施例（図４）の場合と同じなので、ここでは、その詳細な説明を省略することとする。
図６の動作設定レジスタ６の内容はシーケンス制御部５０に伝えられ、下記のような動作が実現される。
【００５１】
図６の（ａ）に示すように、大容量のＳＤＲＡＭの構成を使用する必要がないメモリ制御システムでは、インタフェース装置３０が設けられていないことを示すために、上記の動作設定レジスタ６を「通常モード」に設定する。この通常モードでは、データの入出力タイミングは、ＳＤＲＡＭ１１のレイテンシのみを考慮したタイミングで行う。すなわち、この場合は、コラムアドレスストローブ信号／ＣＡＳ等のＳＤＲＡＭ制御信号の送出からデータの送受信までに要する時間を、ＳＤＲＡＭ１１が持つレイテンシのみとするようになっている。
【００５２】
また一方で、図６の（ｂ）に示すように、大容量のＳＤＲＡＭの構成が必要であるメモリ制御システムでは、インタフェース装置３０が設けられていることを示すために、上記の動作設定レジスタ６を「インタフェースモード」に設定する。インタフェース装置３０が、前述の図５に示したようなフリップフロップにより構成されている場合には、ＳＤＲＡＭのレイテンシに対し１クロックサイクル遅れたタイミングでデータの入出力を行う。すなわち、この場合は、コラムアドレスストローブ信号／ＣＡＳ等のメモリ制御信号の送出からデータの送受信までに要する時間を、インタフェース装置により生じる遅延時間にＳＤＲＡＭのレイテンシを加えた時間とするようになっている。
【００５３】
図６の第２の実施例では、動作設定レジスタにより動作モードの切り替えを行っているが、外部ピンを利用して動作モードを設定することも可能である。
好ましくは、本発明のメモリ制御方法は、上記の第２の実施例に係るメモリ制御システムを動作させることによっても実現される。このようなメモリ制御方法においては、メモリ制御信号を保持するためのインタフェース装置の有無を、メモリ制御装置の動作モード設定により決定し、上記メモリ制御信号の送出からデータの送受信までの時間を、ＳＤＲＡＭが持つレイテンシのみとするか、または上記インタフェース装置により生じる遅延時間にＳＤＲＡＭのレイテンシを加えた時間とするかを選択するようにしている。
【００５４】
図７は、本発明のメモリ制御システムに係る実施例の読出動作を説明するためのタイミングチャートである。前述のインタフェース装置（図４）を使用した場合、メモリ制御装置がコマンドを出力してからメモリ制御信号（ここでは、ある一つのメモリ制御信号に着目する）がＳＤＲＡＭ等のメモリに到達するまでに１クロックサイクルを要する。この場合に、メモリ制御装置から出力されるメモリ制御信号とデータの読出動作時のデータ入出力との関係を示す。ただし、ここでは、各種のメモリ制御信号の中のある一つのメモリ制御信号、例えば、コラムアドレスストローブ信号／ＣＡＳに着目してデータの読出動作を説明することとする。
【００５５】
図７に示す読出動作（ＲＥＡＤ）においては、メモリ制御信号の一つであるコラムアドレスストローブ信号／ＣＡＳが、クロックＣＬＫ（図７の（ａ））に同期してメモリ制御装置から出力される（図７の（ｂ））。さらに、メモリ制御装置から出力されるコラムアドレスストローブ信号／ＣＡＳは、インタフェース装置内のフリップフロップやレジスタ等に保持される。フリップフロップやレジスタ等に保持されたメモリ制御信号は、例えば１クロックサイクル後に出力されてＳＤＲＡＭに送出される（図７の（ｃ））。
【００５６】
上記の読出動作では、コラムアドレスストローブ信号／ＣＡＳに対するＳＤＲＡＭのレイテンシ（すなわち、ＣＡＳレイテンシ）が３クロックサイクルである場合、メモリ制御装置がコマンドを出力してから「ＣＡＳレイテンシ＋１」の遅延時間後、すなわち、４クロックサイクル後に、データＤＡＴＡがＳＤＲＡＭから出力される（図７の（ｄ））。
【００５７】
要約すれば、クロック同期式のＳＤＲＡＭに到達するメモリ制御信号は、メモリ制御装置が当該メモリ制御信号を出力してから、インタフェース装置のフリップフロップやレジスタ等により遅れたものとなる。さらに、ＳＤＲＡＭは、当該メモリ制御信号を受けてから、ＳＤＲＡＭが持つレイテンシを経過した後に、データの送受の動作を開始する。メモリ制御装置がメモリ制御信号を送出してから、ＳＤＲＡＭのデータを受領するか、またはＳＤＲＡＭにデータを送出するまでの時間は、「レイテンシ＋１」となる。
【００５８】
図８は、本発明のメモリ制御システムに係る実施例の書込動作を説明するためのタイミングチャートである。前述のインタフェース装置（図４）を使用した場合に、メモリ制御装置から出力されるメモリ制御信号とデータの書込動作時のデータ入出力との関係を示す。ただし、ここでも、各種のメモリ制御信号の中のある一つのメモリ制御信号、例えば、コラムアドレスストローブ信号／ＣＡＳに着目してデータの書込動作を説明することとする。
【００５９】
図８に示す書込動作（ＷＲＩＴＥ）においても、前述の読出動作の場合と同じように、メモリ制御信号の一つであるコラムアドレスストローブ信号／ＣＡＳが、クロックＣＬＫ（図８の（ａ））に同期してメモリ制御装置から出力される（図８の（ｂ））。上記の書込動作では、一般的なＳＤＲＡＭのレイテンシ（ＣＡＳレイテンシも含む）は０であるが、この場合は、インタフェース装置を用いているために、メモリ制御装置がコマンドを発行してから、書込データがＳＤＲＡＭに入力されるまでに１クロックサイクル待つ必要がある（図８の（ｃ）、（ｄ））。
【００６０】
【発明の効果】
以上説明したように、本発明のメモリ制御システムおよびメモリ制御方法によれば、第１に、メモリ制御装置から出力されるメモリ制御信号をクロックに同期したインタフェース装置内に保持し、所定の時間が経過してからメモリに送出すると共に、メモリ制御信号がメモリへ伝達されるまでに生じるメモリ制御信号の遅延時間を、予め考慮してメモリへのアクセスを行っているので、ＳＤＲＡＭ等のクロック同期式のメモリの数を増加させて大容量のメモリ空間を構成すると共に、メモリ制御信号間のスキューの調整が容易になってＳＤＲＡＭ等のメモリを高速アクセスにて動作させることが可能になる。
【００６１】
本発明のメモリ制御システムおよびメモリ制御方法によれば、第２に、メモリ制御装置の動作モードを切り替えることによってインタフェース装置の有無を決定し、大容量のＳＤＲＡＭの構成を使用することが必要な場合のみインタフェース装置を使用してメモリ制御装置の最大駆動能力を高めることができるので、クロックに同期したインタフェース装置をより有効に利用することが可能になる。
【図面の簡単な説明】
【図１】本発明の原理構成を示すブロック図である。
【図２】本発明のメモリ制御システムに使用されるシンクロナスＤＲＡＭの概略的構成を示すブロック図である。
【図３】図２のシンクロナスＤＲＡＭの動作を説明するためのタイミングチャートである。
【図４】本発明の第１の実施例の構成を示す回路ブロック図である。
【図５】図４のインタフェース回路の具体的な構成を示す回路ブロック図である。
【図６】本発明の第２の実施例の構成を示す回路ブロック図である。
【図７】本発明のメモリ制御システムに係る実施例の読出動作を説明するためのタイミングチャートである。
【図８】本発明のメモリ制御システムに係る実施例の書込動作を説明するためのタイミングチャートである。
【図９】従来のメモリ制御システムの第１の構成例を示す回路ブロック図である。
【図１０】従来のメモリ制御システムの第２の構成例を示す回路ブロック図である。
【符号の説明】
１…記憶装置
２…メモリ制御部
３…インタフェース手段
４…ＭＰＵ
５…メモリ用信号生成部
６…動作設定レジスタ
１０…メモリ
１１…ＳＤＲＡＭ
２０…メモリ制御装置
２２…ＳＤＲＡＭ制御装置
３０…インタフェース装置
３１〜３４…第１〜第４のフリップフロップ
５０…シーケンス制御部
５１…メモリアドレス制御部
５２…データ制御部
２００…ＳＤＲＡＭ制御装置
３００…バッファ
【図１】
0004079507.tif 000002
【図２】
0004079507.tif 000003
【図３】
0004079507.tif 000004
【図４】
0004079507.tif 000005
【図５】
0004079507.tif 000006
【図６】
0004079507.tif 000007
【図７】
0004079507.tif 000008
【図８】
0004079507.tif 000009
【図９】
0004079507.tif 000010
【図１０】
0004079507.tif 000011