(57)【特許請求の範囲】
【請求項１】
読出コマンドを出力する出力回路と、読出データを取り込む読出データ入力回路とを有するコントローラと、
それぞれが前記読出コマンドを取り込むコマンド入力回路と、前記読出コマンドに応じて前記読出データを出力する読出データ出力回路とを有する複数のメモリと、
前記コントローラと前記複数のメモリの間に接続されたクロック信号線又はデータストローブ信号線と、
前記読出データを送るために前記コントローラと前記複数のメモリの間に接続されたデータ信号線とを備え、
前記コントローラは、初期化動作時に、前記クロックのサイクル数を計数して、前記コントローラが前記読出コマンドを出力する時点から前記コントローラが前記メモリから前記読出データを取り込む時点までのアクセス時間として記憶し、前記コントローラが前記読出データを正規のタイミングで取り込むことを可能にし、
前記コントローラと前記複数のメモリのうちの１つとの間又は前記メモリ間の、前記クロック信号線又は前記データストローブ信号線に配置された少なくとも１つの遅延回路をさらに備え、前記少なくとも１つの遅延回路は、前記アクセス時間が前記クロックの前記サイクルの整数倍にほぼ等しい値から偏移するような遅延時間を有するメモリサブシステム。
【請求項２】
請求項１に記載のメモリサブシステムであって、
前記コントローラは、クロックの変化エッジで変化させるように書込データを出力する書込データ出力回路を有し、
各メモリは、調整されたクロックに応じて前記書込データを取り込む書込データ入力回路を有し、
前記読出データ出力回路は、データストローブ信号の変化エッジで変化するように前記読出データを出力し、
前記読出データ入力回路は、調整されたデータストローブ信号に応じて前記読出データを取り込み、
当該メモリサブシステムは、
前記コントローラ及び前記複数のメモリに内蔵されておらず、各メモリの前記書込データ入力回路が前記調整されたクロックの変化エッジで前記書込データを取り込むように、前記クロックを受けて前記調整されたクロックを出力するクロック遅延回路と、
前記コントローラ及び前記複数のメモリに内蔵されておらず、前記コントローラの前記読出データ入力回路が前記調整されたデータストローブ信号の変化エッジで前記読出データを取り込むように、前記データストローブ信号を受けて調整された前記調整されたデータストローブ信号を出力するデータストローブ遅延回路とをさらに備えるメモリサブシステム。
【請求項３】
請求項２に記載のメモリサブシステムであって、
前記クロック遅延回路の遅延量及び前記データストローブ遅延回路の遅延量は、前記書込データ及び前記読出データの最小変化周期の１／２の時間であるメモリサブシステム。
【請求項４】
請求項２又は３に記載のメモリサブシステムであって、
前記クロック遅延回路と前記データストローブ遅延回路は、前記クロック信号線と前記データストローブ信号線の信号伝搬時間を長くするように配線を長くした回路であるメモリサブシステム。
【請求項５】
請求項２又は３に記載のメモリサブシステムであって、
前記クロック遅延回路と前記データストローブ遅延回路は、ディレイ素子を使用したディレイラインであるメモリサブシステム。
【請求項６】
請求項２から５のいずれか１項に記載のメモリサブシステムであって、
前記クロック信号線と前記データストローブ信号線は、インピーダンスが整合しているメモリサブシステム。
【請求項７】
請求項２から６のいずれか１項に記載のメモリサブシステムであって、
前記クロック遅延回路と前記データストローブ遅延回路は、前記クロック信号線と前記データストローブ信号線の前記コントローラと前記メモリの間の部分に設けられているメモリサブシステム。
【請求項８】
請求項２から６のいずれか１項に記載のメモリサブシステムであって、
前記クロック遅延回路と前記データストローブ遅延回路は、前記コントローラと前記メモリの間の部分でない外側に設けられているメモリサブシステム。
【請求項９】
請求項２から８のいずれか１項に記載のメモリサブシステムであって、
前記クロック信号線は前記コントローラから前記メモリに延び、
前記コントローラは、クロック源から供給された前記クロックを、前記クロック信号線に出力するメモリサブシステム。
【請求項１０】
請求項２から８のいずれか１項に記載のメモリサブシステムであって、
クロック源から前記コントローラに前記クロックを供給する信号線は、分岐されて前記クロック信号線に接続されているメモリサブシステム。
【請求項１１】
請求項２から８のいずれか１項に記載のメモリサブシステムであって、
クロック源から前記クロック信号線に前記クロックを供給する信号線を、前記クロック源から前記コントローラに前記クロックを供給する信号線に並行に設けたメモリサブシステム。
【請求項１２】
請求項２から１１のいずれか１項に記載のメモリサブシステムであって、
前記データストローブ信号は、前記メモリが受信した前記クロックであり、
前記メモリは、前記コントローラへ読出データを伝送する時には、受信した前記クロックの変化エッジで前記読出データを変化させ、
前記データストローブ信号線は、前記メモリの付近で、前記クロック信号線に接続されているメモリサブシステム。
【請求項１３】
請求項２に記載のメモリサブシステムであって、
前記クロックを供給するクロック源と、
前記コントローラと前記複数のメモリの間で前記書き込み及び読出データ信号を伝送するデータ信号線と、
前記データ信号線に並行に設けられ、前記複数のメモリへ前記調整されたクロックを伝送するクロック信号線と、
前記データ信号線に並行に設けられ、前記コントローラへ前記調整されたデータストローブ信号を伝送するデータストローブ信号線とを備え、
前記クロック信号線は前記クロック遅延回路を有し、前記データストローブ信号線は前記データストローブ遅延回路を有し、前記クロックは前記クロック信号線を介して前記クロック遅延回路に供給され、前記データストローブ信号は前記データストローブ信号線を介して前記データストローブ遅延回路に供給されるメモリサブシステム。
【請求項１４】
請求項１に記載のメモリサブシステムであって、
前記コントローラの前記読出データ入力回路は、調整されたデータストローブ信号に応じて前記読出データを取り込み、
各メモリは、前記データストローブ信号の変化エッジで変化させるように前記読出データを出力し、
当該サブシステムは、
前記コントローラ及び前記複数のメモリに内蔵されておらず、前記コントローラの前記読出データ入力回路が前記調整されたデータストローブ信号の変化エッジで前記読出データを取り込むように、前記データストローブ信号を受けて調整された前記調整されたデータストローブ信号を出力するデータストローブ遅延回路をさらに備えるメモリサブシステム。
【請求項１５】
読出データを取り込むように読出コマンドを出力するコントローラと、
それぞれが前記読出コマンドを取り込み、前記読出コマンドに応じて前記読出データを出力する複数のメモリデバイスと、
前記コントローラと前記複数のメモリデバイスの間に接続されたクロック信号線又はデータストローブ信号線と、
前記読出データを送るために前記コントローラと前記複数のメモリデバイスの間に接続されたデータ信号線とを備え、
前記コントローラは、初期化動作時に、クロックのサイクル数を計数して、前記コントローラが前記読出コマンドを出力する時点から前記コントローラが各メモリデバイスから前記読出データを取り込む時点までのアクセス時間として記憶し、前記コントローラが前記読出データを正規のタイミングで取り込むことを可能にし、
前記コントローラと前記複数のメモリデバイスのうちの選択された１つとの間の、前記クロック信号線又は前記データストローブ信号線に配置された遅延回路をさらに備え、前記遅延回路の遅延量は、前記アクセス時間が前記クロックの前記サイクルの整数倍にほぼ等しい値から偏移するような遅延時間を有するメモリサブシステム。
【請求項１６】
請求項１５に記載のメモリサブシステムであって、
前記コントローラは、クロックの変化エッジで変化させるように書き込みデータを出力する書き込みデータ出力回路を有し、
当該メモリサブシステムは、
調整されたクロックに応じて前記書き込みデータを取り込む書き込みデータ入力回路を有するメモリデバイスと、
前記コントローラ及び前記複数のメモリデバイスに内蔵されておらず、各メモリデバイスの前記書き込みデータ入力回路が前記調整されたクロックの変化エッジで前記書き込みデータを取り込むように、前記クロックを受けて前記調整されたクロックを出力するクロック遅延回路とをさらに備えるメモリサブシステム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、クロックに同期して動作するメモリ又はそのようなメモリを複数個搭載して大容量のメモリとして機能するメモリモジュールを使用して構成するメモリサブシステムに関し、特に簡単な機構で高速のデータ転送が可能なメモリサブシステムに関する。
【０００２】
【従来の技術】
半導体装置を使用したコンピュータ等の大規模な半導体装置システムでは、システムの各部分がクロックに同期して動作するように構成されており、データ信号やアドレス信号等の信号の入出力はクロック信号に同期して行われる。図１は、ＳＤＲＡＭなどのクロックに同期して動作するメモリを使用して構成したメモリサブシステムの従来の構成例を示す図である。図示のように、コントローラ１２からは、コマンド信号が印加される制御信号バス１４、アドレス信号が印加されるアドレス信号バス１５、及びデータ信号が印加されるデータ信号バス１６が延びており、これらの配線に沿ってメモリ１３−１、１３−２、…、１３−ｍが配置され、各メモリはこれらの配線に接続される。クロック発生回路１０はシステムを構成する各要素に供給するクロックを発生させる回路で、クロック発生回路１０で発生されたクロックはクロック分配回路１１を介して、コントローラ１２、及びメモリ１３−１、１３−２、…、１３−ｍに供給される。近年、複数のメモリ素子を搭載し、大容量で高速のアクセスが可能なメモリとして機能するＤＩＭＭ（Dual Inline Memory Module)が使用されているが、これをメモリ１３−１、１３−２、…、１３−ｍの代わりに使用することも可能である。
【０００３】
図１のクロック分配システム１１は、分配されたクロックがすべて同一の位相になるように、クロック発生回路１０からコントローラ１２、及びメモリ１３−１、１３−２、…、１３−ｍに至る配線長及び負荷が等しい等長配線回路である。
図２は、説明を容易にするため、図１のシステムにおいてメモリが１個とした場合の構成、及びコントローラ１２とメモリ１３の内部の構成を示す図であり、ここでは２つの構成例が示されている。なお、以下の説明では、データ信号の最小変化周期はクロックの半周期であり、クロックの立ち上がりエッジと立ち下がりエッジの両方のエッジに同期してデータが変化するダブルデータレート（ＤＤＲ）方式のＳＤＲＡＭを使用する場合の例を説明することとする。従って、データ信号の入力回路は、データ信号の変化から最小変化周期の１／２、すなわちクロックの１／４周期（９０°）ずれたタイミングでデータ信号を取り込むのが最適なタイミングであるとする。また、データ信号以外のコマンド信号やアドレス信号の最小変化周期はデータ信号の最小変化周期より長いため、これらの信号の取込みのタイミングはあまり問題にならない。そこで、これらの信号の伝送については従来と同じ構成が使用されるので、ここでは説明を省略するものとする。更に、説明を容易にするため、データ信号バスを、コントローラ１２からメモリ１３に書き込む書込データを伝送する書込データバス１６ａと、メモリ１３からコントローラ１２に送る読出データを伝送する読出データバス１６ｂとに分けて示すが、書込データと読出データを同一のデータバスで伝送することも可能である。
【０００４】
図２の（１）の構成例では、メモリ１３にデータを書き込む場合には、コントローラ１２は、シフトクロック発生回路２１でクロック発生回路１０の供給するクロックＣＬＫから１／４周期ずれたシフトクロックを発生させ、メモリ１３に書き込む書込データＤｉｎをデータ出力回路２２からシフトクロックに同期して書込データバス１６ａに出力する。メモリ１３は、データ入力回路３２でこの書込データＤｉｎをクロックＣＬＫに同期して取り込む。メモリ１３からデータを読み出す場合には、メモリ１３は、シフトクロック発生回路３１でクロック発生回路１０の供給するクロックＣＬＫから１／４周期ずれたシフトクロックを発生させ、内部回路３４で発生された読出データＤｏｕｔを、データ出力回路３３からシフトクロックに同期して読出データバス１６ｂに出力する。コントローラ１２は、データ入力回路２３でこの読出データＤｏｕｔをクロックに同期して取り込む。
【０００５】
図３は、図２の（１）に示した構成例におけるデータの入出力動作を示すタイムチャートである。（ａ）を付したＤｉｎとＤｏｕｔはコントローラ１２側のデータであることを、（ｂ）を付したＤｉｎとＤｏｕｔはメモリ１３側のデータであることを示す。これは以下の図でも同じである。図示のように、コントローラ１２から出力された書込データＤｉｎ（ａ）は、クロックＣＬＫの変化エッジから１／４周期ずれた時点で変化している。すなわち、クロックＣＬＫの変化エッジが、書込データＤｉｎ（ａ）の最適な取込みタイミングに位置している。書込データＤｉｎ（ａ）は、メモリ１３までの距離に対応する伝搬時間を経過してメモリ１３に到達し、書込データＤｉｎ（ｂ）となる。メモリ１３に供給されるクロックＣＬＫは、コントローラ１２に供給されるクロックＣＬＫと同一位相であるから、データ入力回路３２は最適なタイミングから上記の伝搬時間分ずれたタイミングで書込データＤｉｎを取り込むことになる。
【０００６】
逆に、メモリ１３からデータを読み出す時には、コントローラ１２からメモリ１３にクロックＣＬＫの立ち上がりエッジに同期してアドレス信号などの信号が伝送され、それに応じてメモリ１３で必要な処理を行って、アクセス時間ｔＡＣ後から読出データＤｏｕｔ（ｂ）がデータ出力回路３３から読出データバス１６ｂに出力される。読出データＤｏｕｔ（ｂ）は上記の伝搬時間分遅れてコントローラ１２に到達し、Ｄｏｕｔ（ａ）になる。コントローラ１２は、クロックＣＬＫの次の立ち上がりエッジに同期してデータ入力回路２３で読出データＤｏｕｔを取り込む。
【０００７】
図２の（１）に示した構成では、メモリ１３側はクロックＣＬＫを使用して書込データを取込み、コントローラ１２側は次のクロックの立ち上がりエッジを使用して読出データを取り込めばよく、構成が非常に簡単であるが、クロック周波数が十分に小さい場合には、伝搬時間は無視でき、十分な余裕をもって伝送されたデータを取り込むことができ、何ら問題は生じなかった。
【０００８】
図２の（１）のシステムでは、データ信号を出力する送信側がデータ信号の出力タイミングをずらすことにより、受信側ではクロックのエッジに同期してデータ信号を取り込めるようにしたが、各種の変形が可能である。例えば、図２の（２）は、送信はクロックのエッジに同期して行い、受信はクロックのエッジからずれたタイミングで行うようにした構成例である。図２の（２）の構成においてデータを書き込む時には、コントローラ１２はクロックＣＬＫに同期してデータ出力回路２２から書込データを出力し、メモリはこの書込データをデータ入力回路３２で、シフトクロック発生回路３１で発生されたずれたクロックに同期して取込む。データを読み出す時には、メモリ１３はクロックＣＬＫに同期してデータ出力回路３３から読出データを出力し、コントローラ１２は、シフトクロック発生回路３１で発生されたずれたクロックに同期して、この読出データをデータ入力回路２３で取り込む。更に、コントローラ１２が書込データの出力と読出データの取込みをずれたシフトクロックに同期して行うようにすれば、メモリ１３は書込データの取込みと読出データの出力を共にクロックＣＬＫに同期して行うことができ、シフトクロック発生回路はコントローラ１２にのみ設ければよい。いずれにしろ、コントローラ１２とメモリ１３の一方又は両方にそれぞれシフトクロック発生回路が必要である。
【０００９】
上記のように、クロック周波数が小さい場合には、信号のばらつきによるシフトクロック発生回路２１の精度の低下もほとんど問題にならず、単純な回路構成でも問題は生じなかった。しかし、クロック周波数が大きくなると、伝搬時間のクロック周期に対する割合が大きくなり、信号の伝搬時間による取込みタイミングのずれが問題になってくる。また、シフトクロック発生回路におけるプロセスばらつきや温度の変動によるシフトクロックのずれが問題になってくる。
【００１０】
このような問題を解決する高速動作のためのシステム構成がいくつか提案されており、図４はそのようなシステムの構成例を示す図である。図４のシステムは、基本クロックＣＬＫとは別にデータストローブ信号ＤＱＳを用いて、データの送信を行う方式を使用しており、書込データＤｉｎと読出データＤｏｕｔの送信の両方でデータストローブ信号ＤＱＳを使用する双方向方式（バイディレクショナル方式）と呼ばれる方式を使用する。コントローラ１２は、クロックＣＬＫから１／４周期ずれた２つのシフトクロックを発生するシフトクロック発生回路２１と、書込データＤｉｎを一方のシフトクロックＣＬＫに同期して出力するデータ出力回路２２と、他方のシフトクロックを出力するストローブ信号出力回路２４と、メモリ１３から送信されたストローブ信号を受信するストローブ信号入力回路２５と、ストローブ信号入力回路２５の受信したストローブ信号に同期してメモリ１３から送信された読出データＤｏｕｔを取り込むデータ入力回路２３とを有する。また、メモリ１３は、コントローラ１２から送信されたストローブ信号を受信するストローブ信号入力回路３５と、書込データＤｉｎをストローブ信号に同期して取り込むデータ入力回路３２と、クロックＣＬＫ及び内部回路３４で発生する読出データＤｏｕｔが出力できる状態になったことを示す信号から、１／４周期ずれた２つのシフトクロックを発生するシフトクロック発生回路３１と、読出データＤｏｕｔを一方のシフトクロックＣＬＫに同期して出力するデータ出力回路３３と、他方のシフトクロックを出力するストローブ信号出力回路３６とを有する。書込データを伝送する書込データバス１６ａと、読出データを伝送する読出データバス１６ｂと、ストローブ信号を伝送するストローブ信号線１７は、同じ伝搬時間になるように並行に等長配線されている。
【００１１】
図５は図４のシステムにおける書込データの伝送動作を示すタイムチャートである。書込データの伝送する時、コントローラ１２はデータ出力回路２２から書込データＤｉｎ（ａ）を、ストローブ信号出力回路２４からデータストローブ信号ＤＱＳ（ａ）を出力する。図５に示すように、書込データＤｉｎ（ａ）とデータストローブ信号ＤＱＳ（ａ）は、１／４周期ずれている。従って、データストローブ信号ＤＱＳの変化エッジは、書込データＤｉｎを取り込むのに最適なタイミングである。なお、データストローブ信号ＤＱＳとクロックＣＬＫとの間には一定の位相関係はない。書込データＤｉｎ（ａ）とデータストローブ信号ＤＱＳ（ａ）がメモリ１３に伝送されても、書込データバス１６ａとデータストローブ信号１７は並行に設けられているため、ほとんどスキューは生ぜず、そのままの位相関係を維持される。従って、メモリ１３における書込データＤｉｎ（ｂ）とデータストローブ信号ＤＱＳ（ｂ）は、書込データＤｉｎ（ａ）とデータストローブ信号ＤＱＳ（ａ）を伝送時間分送らせた信号である。そのため、メモリ１３のデータ入力回路３２でストローブ信号入力回路３５で受信したストローブ信号に同期して書込データを取り込めば最適なタイミングで取り込むことができる。メモリ１３に取り込まれた書込データの内部回路３４への書込は、取り込んだ後のクロックＣＬＫの立ち上がりエッジから開始される。
【００１２】
図６は図４のシステムにおける読出データの伝送動作を示すタイムチャートである。読出データの伝送する時、メモリ１３はデータ出力回路３３から読出データＤｏｕｔ（ｂ）を、ストローブ信号出力回路３６からデータストローブ信号ＤＱＳ（ｂ）を出力する。図６に示すように、読出データＤｏｕｔ（ｂ）とデータストローブ信号ＤＱＳ（ｂ）は、１／４周期ずれている。従って、データストローブ信号ＤＱＳの変化エッジは、読出データＤｏｕｔを取り込むのに最適なタイミングである。なお、データストローブ信号ＤＱＳとクロックＣＬＫとの間には一定の位相関係はない。読出データＤｏｕｔ（ｂ）とデータストローブ信号ＤＱＳ（ｂ）がコントローラ１２に伝送されても、読出データ信号線１６ｂとデータストローブ信号線１７は並行に設けられているため、ほとんどスキューは生ぜず、そのままの位相関係を維持される。従って、コントローラ１２における読出データＤｏｕｔ（ａ）とデータストローブ信号ＤＱＳ（ａ）は、読出データＤｏｕｔ（ｂ）とデータストローブ信号ＤＱＳ（ｂ）を伝送時間分送らせた信号である。そのため、コントローラ１２のデータ入力回路２３でストローブ信号入力回路２５で受信したストローブ信号に同期して読出データを取り込めば最適なタイミングで取り込むことができる。コントローラ１２に取り込まれた読出データのＣＰＵでの処理は、取り込んだ後のクロックＣＬＫの立ち上がりエッジから開始される。
【００１３】
以上のように、図４の双方向ストローブ方式であれば、いずれの方向にデータを伝送する場合も、データと同じ方向に取込みに適したストローブ信号が出力されるので、常に最適なタイミングで送信データを取り込むことができる。但し、図２の回路と同様に、図４の回路は、コントローラ１２とメモリ１３にそれぞれ１／４位相ずれた２つのシフトクロックを発生させるためのシフトクロック発生回路を設ける必要がある。更に、ストローブ信号を伝送するためのストローブ信号線及びその入力回路と出力回路が必要である。
【００１４】
図７は、高速動作のためのシステムの別の構成例を示す図である。このシステムは、メモリ１３へはコントローラ１２からクロックＣＬＫを供給し、クロックＣＬＫを供給するためのクロック信号線１８を書込データバス１６ａに並行に設ける。そして、コントローラ１２からメモリ１３への書込データの伝送は、クロックＣＬＫを１／４周期ずらした信号に同期して行う。メモリ１３からコントローラ１２への読出データの伝送は、図４のシステムと同様に、データストローブ信号ＤＱＳに同期して行い、一緒にメモリ１３からコントローラ１２へデータストローブ信号を伝送する。この方式は、一方のデータ信号（ここでは読出データ）の伝送にのみデータストローブ信号ＤＱＳを使用するため、片方向方式（ユニディレクショナル方式）と呼ばれる。コントローラ１２は、受信したクロックＣＬＫをクロック信号線１８をに印加するクロック出力回路２７と、クロックＣＬＫから１／４周期ずれたシフトクロックを発生するシフトクロック発生回路２１と、書込データＤｉｎをシフトクロックＣＬＫに同期して出力するデータ出力回路２２と、メモリ１３から送信されたストローブ信号を受信するストローブ信号入力回路２５と、ストローブ信号入力回路２５の受信したストローブ信号から１／４周期ずれたシフトクロックを発生するシフトクロック発生回路２６と、シフトクロック発生回路２６の出力するシフトクロックに同期して、メモリ１３から送信された読出データＤｏｕｔを取り込むデータ入力回路２３とを有する。また、メモリ１３は、コントローラ１２から送信されたクロック信号ＣＬＫを受信するクロック入力回路３７と、書込データＤｉｎをクロック信号ＣＬＫに同期して取り込むデータ入力回路３２と、読出データＤｏｕｔをクロック入力回路３７の出力するクロックＣＬＫに同期して出力するデータ出力回路３３と、クロック入力回路３７の出力するクロックＣＬＫをストローブ信号として出力するストローブ信号出力回路３６とを有する。クロックＣＬＫを伝送するクロック信号線１８と、書込データを伝送する書込データバス１６ａと、読出データを伝送する読出データバス１６ｂと、ストローブ信号を伝送するストローブ信号線１７ｂは、同じ伝搬時間になるように並行に等長配線されている。
【００１５】
図８は図７のシステムにおける書込データの伝送動作を示すタイムチャートである。コントローラ１２はクロック出力回路２７からクロックＣＬＫを常時出力し、出力書込データの伝送する時には、データ出力回路２２から書込データＤｉｎ（ａ）を出力する。図８に示すように、書込データＤｉｎ（ａ）とクロックＣＬＫは、１／４周期ずれている。従って、クロックＣＬＫの変化エッジは、書込データＤｉｎを取り込むのに最適なタイミングである。書込データＤｉｎ（ａ）とクロックＣＬＫがメモリ１３に伝送されても、書込データ信号線１６ａとクロック信号線１８は並行に設けられているため、ほとんどスキューは生ぜず、そのままの位相関係を維持される。従って、メモリ１３における書込データＤｉｎ（ｂ）とクロックＣＬＫ（ｂ）は、書込データＤｉｎ（ａ）とクロックＣＬＫ（ａ）を伝送時間分送らせた信号である。そのため、メモリ１３のデータ入力回路３２でクロック入力回路３７で受信したクロック信号ＣＬＫに同期して書込データを取り込めば最適なタイミングで取り込むことができる。
【００１６】
図９は図７のシステムにおける読出データの伝送動作を示すタイムチャートである。読出データの伝送する時、メモリ１３はデータ出力回路３３から読出データＤｏｕｔ（ｂ）を、ストローブ信号出力回路３６からデータストローブ信号ＤＱＳ（ｂ）を出力する。図９に示すように、書込データＤｏｕｔ（ｂ）とデータストローブ信号ＤＱＳ（ｂ）は、１／４周期ずれている。従って、データストローブ信号ＤＱＳの変化エッジは、書込データＤｏｕｔを取り込むのに最適なタイミングである。書込データＤｏｕｔ（ｂ）とデータストローブ信号ＤＱＳ（ｂ）がコントローラ１２に伝送されても、読出データ信号線１６ｂとデータストローブ信号１７は並行に設けられているため、ほとんどスキューは生ぜず、そのままの位相関係を維持される。従って、コントローラ１２における読出データＤｏｕｔ（ａ）とデータストローブ信号ＤＱＳ（ａ）は、書込データＤｏｕｔ（ｂ）とデータストローブ信号ＤＱＳ（ｂ）を伝送時間分送らせた信号である。そのため、コントローラ１２のデータ入力回路２３でストローブ信号入力回路２５で受信したストローブ信号に同期して書込データを取り込めば最適なタイミングで取り込むことができる。
【００１７】
以上のように、図７の片方向ストローブ方式では、いずれの方向にデータを伝送する場合も、常に最適なタイミングで送信データを取り込むことができる。
以上、３つの従来例を説明したが、いずれの従来例においても、位相がデータ信号の最小変化周期の１／２ずれたシフトクロックを発生させることが必要である。具体的には、データ信号の最小変化周期がクロックの周期と同じであれば、クロックと正確に位相が一致した信号と１／２周期（１８０°）ずれた信号が必要である。データ信号の最小変化周期がクロックの１／２周期で、クロックの立ち上がりエッジと立ち下がりエッジの両方でデータ信号が変化するＤＤＲ−ＳＤＲＡＭの場合には、具体的には位相が０又は１周期（３６０°）、１／４周期（９０°）、１／２周期（１８０°）、３／４周期（２７０°）のシフトクロックを発生させることが必要である。正確にこのような位相ずれた信号を発生させるためには、ＤＬＬ(Delay Locked Loop) 回路が使用される。
【００１８】
図１０は、クロックＣＬＫから等位相（０°）のシフトクロックと、１／４周期（９０°）ずつずれたシフトクロックを発生させるＤＬＬ回路の基本構成を示す図である。図１０において、参照番号４１は０°位相のシフトクロックを発生させるＤＬＬ回路であり、５１は９０°ずつずれた４つのシフトクロックを発生させるＤＬＬ回路である。
【００１９】
０°ＤＬＬ回路４１は、クロックＣＬＫを遅延させ、遅延量が調整できるディレイ回路４２と、ディレイ回路４２の出力する遅延クロックとクロックＣＬＫの位相を比較する位相比較回路４３と、位相比較回路４３の比較結果に基づいて２つのクロックの位相が一致するようにディレイ回路４２での遅延量を段階的に変化させるディレイ制御回路４４とを有する。ディレイ回路４２の出力する遅延クロックとクロックＣＬＫの位相が一致した時には、ディレイ回路４２の出力する遅延クロックは、クロックＣＬＫに対して１周期遅れた信号である。ディレイ回路４２は微少な遅延量を有する遅延素子を多数直列に接続し、各段から出力が取り出せるようにスイッチを設けた回路で、どのスイッチを動作させてどの段から出力を得るかにより、遅延量が変化させられる。
【００２０】
９０°ＤＬＬ回路５１は、０°位相のシフトクロックを得るための０°ＤＬＬ回路と同じ構成であるが、ディレイ回路を４分割して４個の１／４ディレイ回路５２、５３、５４、５５とし、前段の出力が後段の入力になるように直列に接続してある。ディレイ制御回路５７は、４分割された各１／４ディレイ回路の遅延量が同一になるように同時に制御している。位相比較回路５６は、最初の１／４ディレイ回路５２に入力されるクロック信号φと最終の１／４ディレイ回路５５から出力される信号の位相を比較する。ディレイ制御回路５７は比較結果に基づいて２つの信号の位相が一致するように４つの１／４ディレイ回路の遅延量を制御する。２つの信号の位相が一致した時には、各１／４ディレイ回路の出力は１／４周期ずつずれている。このようにして、１／４周期ずつずれたシフトクロックが得られる。
【００２１】
このように、ＤＬＬ回路を使用することにより、正確に所定位相ずれた信号を得ることができるが、ＤＬＬ回路は、かなり複雑で回路規模の大きな回路で、チップ面積も大きく、消費電力も大きい。
【００２２】
【発明が解決しようとする課題】
以上説明した従来例では、いずれもコントローラ内部又はメモリ、又は両方に、例えば１／４周期位相のずれた信号を発生させるシフトクロック発生回路を設けて、適当なタイミングで送信データを取り込めるようにしており、正確に所定位相ずれた信号を発生させるためには、ＤＬＬ回路を使用する必要がある。ＤＤＲ−ＳＤＲＡＭの場合、立ち上がりエッジと立ち下がりエッジの両方を基準にしてデータを送信し、取り込む必要がある。
【００２３】
供給されるクロックのデューティ比が正確に５０％の場合は、そのままクロックの立ち上がりエッジと立ち下がりエッジを使用でき、クロックの立ち上がりエッジと立ち下がりエッジから１／４周期位相のずれた信号を発生させる。そこで図１０に示した９０°ＤＬＬ回路５１を使用することになる。
また、クロックのデューティ比が５０％からずれている時には、まず１／２周期（１８０°）位相の異なる信号を発生させ、その後その信号から１／４周期位相のずれた信号を発生させることが考えられるが、この場合には２個のＤＬＬ回路が必要になる。このようなＤＬＬ回路を２回使用すると、ディレイ回路の最小変化量で決定されるＤＬＬのジッタが２倍になり、シフトクロックの精度が悪化するという問題がある。
【００２４】
そこで、やはり図１０に示した９０°ＤＬＬ回路５１を使用して、１／４周期（９０°）ずれた信号と１／２周期（１８０°）ずれた信号を発生させる。しかし、図１０に示した９０°ＤＬＬ回路５１は、ＤＬＬ回路が４段に接続されており、各ＤＬＬ回路の最小変化量の４倍のジッタが発生するため、シフトクロックの精度が低くなるという問題がある。
【００２５】
更に、ＤＬＬ回路は、上記のように、複雑な回路であり、このような回路をコントローラ及びメモリに設けると、チップ面積が増大してコストアップになると共に、消費電力も増大するという問題を生じる。
本発明は、このような問題を解決するためのもので、高速のデータ送信が可能なメモリシステムを簡単な構成で実現することを目的とする。
【００２６】
【課題を解決するための手段】
本発明のメモリサブシステムは、上記目的を実現するため、コントローラ又はメモリからデータを出力する場合には、クロック又はデータストローブ信号に同期してデータを出力し、データ信号線と並行に設けられたクロック信号線又はデータストローブ信号線でクロック又はデータストローブ信号を伝送するようにしたシステムにおいて、クロック信号線又はデータストローブ信号線に所定の遅延を生じる遅延回路を設けて、伝送先ではクロック又はデータストローブ信号はデータ信号に対して取り込みに適した位相になり、受信したクロック又はデータストローブ信号でそのままデータ信号を取り込めるようにする。このような構成であれば、ＤＬＬ回路を使用しないで、上記の問題は生じない。また、ＤＤＲ−ＳＤＲＡＭのように、クロックの立ち上がりエッジと立ち下がりエッジの両方を基準にしてデータを送信し、取り込む必要がある場合でも、１８０°位相の異なる信号を発生させる１８０°ＤＬＬ回路のみを設ければよいので、ジッタの発生が低減される。
【００２７】
すなわち、本発明のメモリサブシステムは、読出コマンドを出力する出力回路と、読出データを取り込む読出データ入力回路とを有するコントローラと、それぞれが前記読出コマンドを取り込むコマンド入力回路と、前記読出コマンドに応じて前記読出データを出力する読出データ出力回路とを有する複数のメモリと、前記コントローラと前記複数のメモリの間に接続されたクロック信号線又はデータストローブ信号線と、前記読出データを送るために前記コントローラと前記複数のメモリの間に接続されたデータ信号線とを備え、前記コントローラは、初期化動作時に、前記クロックのサイクル数を計数して、前記コントローラが前記読出コマンドを出力する時点から前記コントローラが前記メモリから前記読出データを取り込む時点までのアクセス時間として記憶し、前記コントローラが前記読出データを正規のタイミングで取り込むことを可能にし、前記メモリサブシステムは、前記コントローラと前記複数のメモリのうちの１つとの間又は前記メモリ間の、前記クロック信号線又は前記データストローブ信号線に配置された少なくとも１つの遅延回路をさらに備え、前記少なくとも１つの遅延回路の遅延量は、前記アクセス時間が前記クロックの前記サイクルの整数倍にほぼ等しい値から偏移するように決定されることを特徴とする。
【００２８】
上記の所定の遅延は、クロック又はデータストローブ信号がデータ信号の取り込みに適した位相になる遅延であり、書込データ及び読出データの最小変化周期の１／２の時間であり、ＤＤＲ−ＳＤＲＡＭの場合であれば、クロック周期の１／４の遅延である。
遅延回路は、信号線の信号伝搬時間を長くするように配線を長くした回路又はディレイ素子を使用したディレイラインで実現できる。
【００２９】
クロック信号線とデータストローブ信号線は、インピーダンスが整合していることが望ましい。
遅延回路は、コントローラとメモリの間の部分に設けることが望ましいが、スペースの関係でコントローラとメモリの間に設けることができない場合には、コントローラとメモリの外側に設けることも可能である。
【００３０】
クロック信号線へのクロックの印加は、コントローラ又はクロック源から行う。クロック源から行う時には、コントローラに供給するクロックを分岐するか、並行に行う。
データストローブ信号として、メモリが受信したクロックを使用してもよい。その場合、メモリは読出データを伝送する時には、受信したクロックの変化エッジで読出データを変化させ、データストローブ信号線はメモリの付近でクロック信号線に接続される。
【００３１】
従来は、クロック又はデータストローブ信号が送信データに対して取り込みに適した位相になるようにするためのシフトクロック発生回路を、コントローラ及びメモリに設けていた。そのため、信号線を長くして位相を調整することができず、ＤＬＬ回路を使用する必要があった。これに対して、本発明では、チップ外で位相調整するため、信号線を長くするなどの簡単な構成で位相調整が行える。
【００３２】
【発明の実施の形態】
図１１の（１）は、本発明の実施例のメモリサブシステムの全体構成を示す図である。図１１の（１）に示すように、本実施例のメモリサブシステムは、クロック発生回路１０からコントローラ１２にクロックが供給され、コントローラ１２からは、クロック信号線１８、書込データバス１６ａ、読出データバス１６ｂ、及びデータストローブ信号線１７ｂが並行に延びている。クロック信号線１８とデータストローブ信号線１７ｂには、伝送する信号を所定時間遅延させるために信号線を延長した延長部７１と７２が設けられている。他にも、コマンド信号を伝送する制御信号バスやアドレス信号を伝送するアドレス信号バスが設けられているが、ここでは省略してある。上記の信号線にはソケット６１が設けられており、このソケット６１を介してＤＩＭＭ−ＳＤＲＡＭと呼ばれるメモリモジュール６０ａから６０ｃが接続されている。ＤＩＭＭ−ＳＤＲＡＭは、図１１の（２）に示すように、複数のメモリ素子（ここではＳＤＲＡＭ）を有し、これらを合わせた大容量のメモリとして動作するように、デコーダ６４やマルチプレクサ６５ａと６５ｂなどを有し、外部との接続のための接続ピンが設けられている。この接続ピンがモジュールの両面で独立しているためDual Inline 型と呼ばれる。なお、このようなＤＩＭＭ−ＳＤＲＡＭでなく、単に接続ピンに直接接続された複数のＳＤＲＡＭを有するだけで、デコーダ６４やマルチプレクサ６５ａと６５ｂなどがないメモリモジュールでもよく、ＳＤＲＡＭ単体でもよい。以下、説明を簡単にするために、単にメモリとして説明を行う。
１つのソケット６１には、複数のメモリ（ＤＩＭＭ）が接続されて群を成している。各群内では信号の伝搬時間は無視できる程度の差であるとする。しかし、多数の群が接続されると信号線が長くなり、その伝搬時間の差が問題になる。後述するように、本実施例では、メモリの位置にかかわらず良好なタイミングで伝送データを取り込めるようにしているが、メモリの位置により、データの読み出し時にコントローラ１２から各メモリにアクセス信号を出力してからメモリが読み出しデータを出力し、それがコントローラ１２に到達するまでの時間に差が生じる。この差が１クロックサイクル以内であれば問題はないが、１クロックサイクル以上の場合には誤動作する可能性がある。そこで、本実施例では、メモリサブシステムの初期化時に、メモリ群毎に、アクセスを開始してから読出データがコントローラ１２に到着するまでのクロックサイクルの個数を測定し、それを記憶してコントローラ１２が正しいタイミングで読出データを取り込めるようにしている。この場合、アクセスを開始してから読出データが到着するまでの時間がクロックサイクルの整数倍の付近である場合、動作環境の変動によりこの時間が変化すると、隣接する異なるクロックサイクルで取り込む可能性がある。そこで、アクセスに要する時間がクロックサイクルの整数倍付近の場合には、遅延回路６２を設けて、アクセスに要する時間をクロックサイクルの整数倍付近からずらしている。
【００３３】
また、クロック発生回路１０はデューティ比が正確に５０％のクロックを発生し、コントローラ１２やメモリに供給されたクロックのデューティ比も５０％であり、クロックの立ち上がりエッジと立ち下がりエッジで、ＤＤＲ方式のデータを出力及び取り込めるものとする。
図１２は、図１１のシステムにおいて、メモリを１個取り出し、それとコントローラ１２及びクロック発生回路１０の関係を示すようにした図であり、コントローラ１２とメモリ１３の内部の構成が示されている。図示のように、第１実施例のシステムは、コントローラ１２は、クロック発生回路の出力するクロックを受信するクロック入力回路２８と、受信したクロックＣＬＫをクロック信号線１８に印加するクロック出力回路２７と、書込データＤｉｎをクロックＣＬＫに同期して出力するデータ出力回路２２と、メモリ１３から送信されたストローブ信号を受信するストローブ信号入力回路２５と、ストローブ信号入力回路２５の受信したストローブ信号に同期してメモリ１３から送信された読出データＤｏｕｔを取り込むデータ入力回路２３とを有する。また、メモリ１３は、コントローラ１２から送信されたクロック信号ＣＬＫを受信するクロック入力回路３７と、書込データＤｉｎをクロック信号ＣＬＫに同期して取り込むデータ入力回路３２と、読出データＤｏｕｔをクロック入力回路３７の出力するクロックＣＬＫに同期して出力するデータ出力回路３３と、クロック入力回路３７の出力するクロックＣＬＫをストローブ信号として出力するストローブ信号出力回路３６とを有する。クロックＣＬＫを伝送するクロック信号線１８と、書込データを伝送する書込データバス１６ａと、読出データを伝送する読出データバス１６ｂと、ストローブ信号を伝送するストローブ信号線１７ｂは、同じ伝搬時間になるように並行に等長配線されている。クロック信号線１８とストローブ信号線１７ｂには、伝送するクロック信号とデータストローブ信号をクロックの１／４周期分遅延させるために延長部７１と７２が設けられている。この延長部７１と７２は、単にクロック信号線１８とストローブ信号線１７を長くし、そこを信号が伝搬する時間を長くするものである。このような遅延回路は、ＤＬＬ回路などの比べて温度などの影響による変動が小さく、遅延量の誤差は小さい。更に、クロック信号線１８とストローブ信号線１７はインピーダンスが整合されている。
【００３４】
図１３は図１２の第１実施例のシステムにおける書込データの伝送動作を示すタイムチャートである。コントローラ１２はクロック出力回路２７からクロックＣＬＫを常時出力し、出力書込データの伝送する時には、データ出力回路２２からクロックＣＬＫに同期して書込データＤｉｎ（ａ）を出力する。ここではＤＤＲ方式を使用するから、クロックＣＬＫの立ち上がりエッジと立ち下がりエッジの両方に同期して書込データＤｉｎ（ａ）を変化させる。従って、図１３に示すように、コントローラ１２から出力されたクロックＣＬＫ（ａ）と書込データＤｉｎ（ａ）は同じ位相である。
【００３５】
コントローラ１２から出力されたクロックＣＬＫ（ａ）と書込データＤｉｎ（ａ）は、クロック信号線１８と書込データバス１６ａを通ってメモリ１３に伝送される。クロック信号線１８には延長部７１が設けられているため、ここを通過するとクロックＣＬＫ（ａ）はクロックの１／４周期分遅延され、図示のＣＬＫ（ａ’）になる。従って、クロックＣＬＫ（ａ’）は書込データＤｉｎ（ａ）に対してクロックの１／４周期分遅延された信号になり、これらがメモリ１３まで伝送される。前述のように、クロック信号線１８と書込データバス１６ａは並行に設けられており、負荷も等しくなるように設定されているので、それらの伝搬時間の差（スキュー）はほとんど無視できる程度である。従って、メモリ１３に到着したクロックＣＬＫ（ｂ）と書込データＤｉｎ（ｂ）は、図示のように１／４周期ずれた信号であり、クロックＣＬＫ（ｂ）の変化エッジは、書込データＤｉｎ（ｂ）を取り込むのに最適なタイミングである。従って、データ入力回路３２で、クロック入力回路３７で取り込んだクロックＣＬＫ（ｂ）に同期して書込データＤｉｎ（ｂ）を取り込めばよい。
【００３６】
図１４は図１２の第１実施例のシステムにおける読出データの伝送動作を示すタイムチャートである。読出データを伝送する時、メモリ１３はコントローラ１２からコマンドやアドレス信号などのアクセスに必要な信号を受け、内部回路３４からデータＤｏｕｔを読み出す。ＳＤＲＡＭではこのようなアクセス信号に応じて、連続してデータが読み出される。メモリ１３は、読出データＤｏｕｔが読み出された後のクロックＣＬＫの最初の立ち上がりエッジから順次クロックＣＬＫに同期してデータ出力回路３３から読出データＤｏｕｔを出力する。それと同時に、ストローブ信号出力回路３６からクロックＣＬＫを出力する。従って、図１４に示すように、読出データＤｏｕｔ（ｂ）とデータストローブ信号ＤＱＳ（ｂ）は同じ位相の信号である。
【００３７】
メモリ１３から出力されたデータストローブ信号ＤＱＳ（ｂ）と読出データＤｏｕｔ（ｂ）は、データストローブ信号線１７ｂと読出データバス１６ｂを通ってコントローラ１２に伝送される。前述のように、データストローブ信号線１７ｂと読出データバス１６ｂは並行に設けられており、負荷も等しくなるように設定されているので、それらの伝搬時間の差（スキュー）はほとんど無視できる程度である。しかし、データストローブ信号線１７ｂには延長部７２が設けられているため、ここを通過するとデータストローブ信号ＤＱＳ（ｂ）はクロックの１／４周期分遅延され、図示のＤＱＳ（ｂ’）になる。従って、データストローブ信号ＤＱＳ（ｂ’）は読出データＤｏｕｔ（ｂ）に対してクロックの１／４周期分遅延された信号になり、これらがコントローラ１２まで伝送される。従って、コントローラ１２に到着したデータストローブ信号ＤＱＳ（ａ）と読出データＤｏｕｔ（ａ）は、図示のように１／４周期ずれた信号であり、データストローブ信号ＤＱＳ（ａ）の変化エッジは、読出データＤｏｕｔ（ａ）を取り込むのに最適なタイミングである。従って、データ入力回路２３で、ストローブ信号入力回路２５で取り込んだデータストローブ信号ＤＱＳ（ａ）に同期して読出データＤｏｕｔ（ａ）を取り込めばよい。
【００３８】
以上説明したように、第１実施例では、データを送信する場合に、一緒に送信されるクロック又はデータストローブ信号に同期して送信データが変化され、クロック又はデータストローブ信号は一緒に送信されたデータを取り込むのに適するように途中で位相がずらされる。従って、コントローラ又はメモリでクロック又はデータストローブ信号の位相をずらす必要はなく、ＤＬＬ回路が必要ない。なお、チップ内部の配線や負荷のために、受信したクロック又はデータストローブ信号をデータ入力回路に供給した場合の遅れが無視できない場合には、受信したクロック又はデータストローブ信号とデータ入力回路に供給する信号の位相を完全に一致させるために０°ＤＬＬ回路を使用してもよい。その場合でも、０°ＤＬＬ回路は９０°ＤＬＬ回路に比べてジッタは少なく、精度低下などの問題は生じない。
【００３９】
第１実施例では、コントローラ１２とメモリ群の間に、クロック信号及びデータストローブ信号を遅延させるための延長部を設けた。信号は１ｎｓで約３０ｃｍ進むので、例えばクロック周波数が２５０ＭＨｚであれば１／４周期は１ｎｓであり、延長部は１５ｃｍを往復する経路が必要である。コントローラとメモリ群は密に配置されているため、コントローラとメモリ群の間にこのようなスペースを取るのが難しい場合がある。第２実施例はそのような条件に対処した実施例である。
【００４０】
図１５は、第２実施例のメモリサブシステムの構成を示す図であり、（１）が全体構成を、（２）が基本構成を示す。第１実施例と比べて明らかなように、第２実施例のシステムは第１実施例と類似の構成であり、異なるのは、クロック信号線１８の延長部７１がコントローラ１２の外側に、データストローブ信号線１７ｂの延長部７２がメモリ群の外側に設けられている点である。クロック発生回路１０からコントローラ１２にクロックを供給する信号線が設けられているが、この信号線を途中で分岐し、コントローラ１２の外側に設けた延長部７１の一方に接続する。そして延長部７１の他方をクロック信号線１８に接続する。各メモリからのデータストローブ信号線は一旦群毎にまとめた上で、コントローラ１２に接続されるデータストローブ信号線１７ｂに接続する。例えば、図１１の（１）に示した複数のメモリ群が設けられている場合には、各メモリ群毎に延長部７２を設け、各群毎にデータストローブ線をまとめた上で対応する延長部７２を介してコントローラ１２に接続されるデータストローブ線１７ｂに接続する。
【００４１】
第１及び第２実施例では、メモリ１３は受信したクロックＣＬＫをデータストローブ信号として出力していた。従って、メモリ１３に到達したクロックＣＬＫをそのままデータストローブ信号として戻すことも可能である。第３実施例は、データストローブ信号としてクロックＣＬＫを戻すようにした実施例である。
図１６は、第３実施例のメモリサブシステムの構成を示す図である。図示のように、第２実施例のシステムと類似の構成を有し、異なるのは、クロック信号線１８がメモリ１３の部分でストローブ信号線１７ｂに接続され、接続部分にコイルで構成される遅延回路７３が設けられている点と、メモリ１３にはストローブ信号出力回路が設けられていない点である。遅延回路７３は、広く使用されているディレイラインであり、コイルとその前後に設けられた２個のインバータを有する。コイルのインダクタンスを適当に設定することにより、通過する信号を所定量遅延させる。
【００４２】
図１７と図１８は、第３実施例のシステムにおける書込データと読出データの伝送動作を示すタイムチャートである。動作内容は、第１実施例のものとほぼ同じであり、詳しい説明は省略する。
以上、クロックのデューティ比が５０％で、クロックの立ち上がりエッジと立ち下がりエッジでデータを出力及び取り込めるとして説明したが、クロックのデューティ比が５０％からずれている場合には、コントローラ及びメモリにそれぞれ１８０°ＤＬＬ回路を設ける必要がある。しかし、この場合でも１／４周期位相がずれた信号を発生させる必要はない。１８０°ＤＬＬ回路は、図１０の９０°ＤＬＬ回路５１においてディレイ回路を２段とすれば実現でき、９０°ＤＬＬ回路に比べてジッタは半分になる。
【００４３】
以上、本発明を、図７に示した片方向ストローブ方式に適用した実施例について説明したが、本発明は同期信号が１方向に送信される信号線を使用する構成であればどのような場合にも適用可能である。
【００４４】
【発明の効果】
以上説明したように、本発明によれば、クロック信号線及びデータストローブ信号線に、延長部又はディレイラインなどの遅延回路を設けることにより、コントローラやメモリにＤＬＬ回路を搭載せずに、また搭載する場合でも最小限の個数や段数で、データの取込みを良好なタイミングで行うことができる。そのため、ジッタが生じなくなり、ジッタが生じる場合でも小さくできる。
【図面の簡単な説明】
【図１】メモリサブシステムの従来の構成例を示す図である。
【図２】メモリサブシステムの同期方式に関する従来の構成例を示す図である。
【図３】図２のシステムにおけるデータの入出力動作を示すタイムチャートである。
【図４】双方向ストローブ方式のシステムの構成を示す図である。
【図５】双方向ストローブ方式のシステムにおける書込データの伝送動作を示すタイムチャートである。
【図６】双方向ストローブ方式のシステムにおける読出データの伝送動作を示すタイムチャートである。
【図７】従来の片方向ストローブ方式のシステムの構成を示す図である。
【図８】従来の片方向ストローブ方式のシステムにおける書込データの伝送動作を示すタイムチャートである。
【図９】従来の片方向ストローブ方式のシステムにおける読出データの伝送動作を示すタイムチャートである。
【図１０】ＤＬＬ回路を使用したシフトクロック生成回路の構成を示す図である。
【図１１】本発明の第１実施例のメモリサブシステムの構成を示す図である。
【図１２】第１実施例の基本構成を示す図である。
【図１３】第１実施例における書込データの伝送動作を示すタイムチャートである。
【図１４】第１実施例における読出データの伝送動作を示すタイムチャートである。
【図１５】本発明の第２実施例のメモリサブシステムの構成を示す図である。
【図１６】本発明の第３実施例のメモリサブシステムの構成を示す図である。
【図１７】第３実施例における書込データの伝送動作を示すタイムチャートである。
【図１８】第３実施例における読出データの伝送動作を示すタイムチャートである。
【符号の説明】
１０…クロック源（クロック発生回路）
１１…クロック分配回路
１２…コントローラ
１３…メモリ（ＤＩＭＭ）
１６…データバス
１６ａ…書込データバス
１６ｂ…読出データバス
１７ｂ…データストローブ信号線
１８…クロック信号線
２１、２６、３１…シフトクロック発生回路
２２、３３…データ出力回路
２３、３２…データ入力回路
２５…ストローブ信号入力回路
２７…クロック出力回路
３６…ストローブ信号出力回路
３７…クロック入力回路
【図１】
0003929116.tif 000002
【図２】
0003929116.tif 000003
【図３】
0003929116.tif 000004
【図４】
0003929116.tif 000005
【図５】
0003929116.tif 000006
【図６】
0003929116.tif 000007
【図７】
0003929116.tif 000008
【図８】
0003929116.tif 000009
【図９】
0003929116.tif 000010
【図１０】
0003929116.tif 000011
【図１１】
0003929116.tif 000012
【図１２】
0003929116.tif 000013
【図１３】
0003929116.tif 000014
【図１４】
0003929116.tif 000015
【図１５】
0003929116.tif 000016
【図１６】
0003929116.tif 000017
【図１７】
0003929116.tif 000018
【図１８】
0003929116.tif 000019