JP3929116B2 - メモリサブシステム - Google Patents

メモリサブシステム Download PDF

Info

Publication number
JP3929116B2
JP3929116B2 JP17996997A JP17996997A JP3929116B2 JP 3929116 B2 JP3929116 B2 JP 3929116B2 JP 17996997 A JP17996997 A JP 17996997A JP 17996997 A JP17996997 A JP 17996997A JP 3929116 B2 JP3929116 B2 JP 3929116B2
Authority
JP
Japan
Prior art keywords
clock
data
controller
memory
signal line
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 - Fee Related
Application number
JP17996997A
Other languages
English (en)
Other versions
JPH1125029A (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.)
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 JP17996997A priority Critical patent/JP3929116B2/ja
Priority to US08/970,086 priority patent/US6397312B1/en
Priority to TW086116931A priority patent/TW351787B/zh
Priority to KR1019970063317A priority patent/KR100271724B1/ko
Publication of JPH1125029A publication Critical patent/JPH1125029A/ja
Application granted granted Critical
Publication of JP3929116B2 publication Critical patent/JP3929116B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4204Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus
    • G06F13/4234Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being a memory bus
    • G06F13/4243Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being a memory bus with synchronous protocol

Landscapes

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

Description

【0001】
【発明の属する技術分野】
本発明は、クロックに同期して動作するメモリ又はそのようなメモリを複数個搭載して大容量のメモリとして機能するメモリモジュールを使用して構成するメモリサブシステムに関し、特に簡単な機構で高速のデータ転送が可能なメモリサブシステムに関する。
【0002】
【従来の技術】
半導体装置を使用したコンピュータ等の大規模な半導体装置システムでは、システムの各部分がクロックに同期して動作するように構成されており、データ信号やアドレス信号等の信号の入出力はクロック信号に同期して行われる。図1は、SDRAMなどのクロックに同期して動作するメモリを使用して構成したメモリサブシステムの従来の構成例を示す図である。図示のように、コントローラ12からは、コマンド信号が印加される制御信号バス14、アドレス信号が印加されるアドレス信号バス15、及びデータ信号が印加されるデータ信号バス16が延びており、これらの配線に沿ってメモリ13−1、13−2、…、13−mが配置され、各メモリはこれらの配線に接続される。クロック発生回路10はシステムを構成する各要素に供給するクロックを発生させる回路で、クロック発生回路10で発生されたクロックはクロック分配回路11を介して、コントローラ12、及びメモリ13−1、13−2、…、13−mに供給される。近年、複数のメモリ素子を搭載し、大容量で高速のアクセスが可能なメモリとして機能するDIMM(Dual Inline Memory Module)が使用されているが、これをメモリ13−1、13−2、…、13−mの代わりに使用することも可能である。
【0003】
図1のクロック分配システム11は、分配されたクロックがすべて同一の位相になるように、クロック発生回路10からコントローラ12、及びメモリ13−1、13−2、…、13−mに至る配線長及び負荷が等しい等長配線回路である。
図2は、説明を容易にするため、図1のシステムにおいてメモリが1個とした場合の構成、及びコントローラ12とメモリ13の内部の構成を示す図であり、ここでは2つの構成例が示されている。なお、以下の説明では、データ信号の最小変化周期はクロックの半周期であり、クロックの立ち上がりエッジと立ち下がりエッジの両方のエッジに同期してデータが変化するダブルデータレート(DDR)方式のSDRAMを使用する場合の例を説明することとする。従って、データ信号の入力回路は、データ信号の変化から最小変化周期の1/2、すなわちクロックの1/4周期(90°)ずれたタイミングでデータ信号を取り込むのが最適なタイミングであるとする。また、データ信号以外のコマンド信号やアドレス信号の最小変化周期はデータ信号の最小変化周期より長いため、これらの信号の取込みのタイミングはあまり問題にならない。そこで、これらの信号の伝送については従来と同じ構成が使用されるので、ここでは説明を省略するものとする。更に、説明を容易にするため、データ信号バスを、コントローラ12からメモリ13に書き込む書込データを伝送する書込データバス16aと、メモリ13からコントローラ12に送る読出データを伝送する読出データバス16bとに分けて示すが、書込データと読出データを同一のデータバスで伝送することも可能である。
【0004】
図2の(1)の構成例では、メモリ13にデータを書き込む場合には、コントローラ12は、シフトクロック発生回路21でクロック発生回路10の供給するクロックCLKから1/4周期ずれたシフトクロックを発生させ、メモリ13に書き込む書込データDinをデータ出力回路22からシフトクロックに同期して書込データバス16aに出力する。メモリ13は、データ入力回路32でこの書込データDinをクロックCLKに同期して取り込む。メモリ13からデータを読み出す場合には、メモリ13は、シフトクロック発生回路31でクロック発生回路10の供給するクロックCLKから1/4周期ずれたシフトクロックを発生させ、内部回路34で発生された読出データDoutを、データ出力回路33からシフトクロックに同期して読出データバス16bに出力する。コントローラ12は、データ入力回路23でこの読出データDoutをクロックに同期して取り込む。
【0005】
図3は、図2の(1)に示した構成例におけるデータの入出力動作を示すタイムチャートである。(a)を付したDinとDoutはコントローラ12側のデータであることを、(b)を付したDinとDoutはメモリ13側のデータであることを示す。これは以下の図でも同じである。図示のように、コントローラ12から出力された書込データDin(a)は、クロックCLKの変化エッジから1/4周期ずれた時点で変化している。すなわち、クロックCLKの変化エッジが、書込データDin(a)の最適な取込みタイミングに位置している。書込データDin(a)は、メモリ13までの距離に対応する伝搬時間を経過してメモリ13に到達し、書込データDin(b)となる。メモリ13に供給されるクロックCLKは、コントローラ12に供給されるクロックCLKと同一位相であるから、データ入力回路32は最適なタイミングから上記の伝搬時間分ずれたタイミングで書込データDinを取り込むことになる。
【0006】
逆に、メモリ13からデータを読み出す時には、コントローラ12からメモリ13にクロックCLKの立ち上がりエッジに同期してアドレス信号などの信号が伝送され、それに応じてメモリ13で必要な処理を行って、アクセス時間tAC後から読出データDout(b)がデータ出力回路33から読出データバス16bに出力される。読出データDout(b)は上記の伝搬時間分遅れてコントローラ12に到達し、Dout(a)になる。コントローラ12は、クロックCLKの次の立ち上がりエッジに同期してデータ入力回路23で読出データDoutを取り込む。
【0007】
図2の(1)に示した構成では、メモリ13側はクロックCLKを使用して書込データを取込み、コントローラ12側は次のクロックの立ち上がりエッジを使用して読出データを取り込めばよく、構成が非常に簡単であるが、クロック周波数が十分に小さい場合には、伝搬時間は無視でき、十分な余裕をもって伝送されたデータを取り込むことができ、何ら問題は生じなかった。
【0008】
図2の(1)のシステムでは、データ信号を出力する送信側がデータ信号の出力タイミングをずらすことにより、受信側ではクロックのエッジに同期してデータ信号を取り込めるようにしたが、各種の変形が可能である。例えば、図2の(2)は、送信はクロックのエッジに同期して行い、受信はクロックのエッジからずれたタイミングで行うようにした構成例である。図2の(2)の構成においてデータを書き込む時には、コントローラ12はクロックCLKに同期してデータ出力回路22から書込データを出力し、メモリはこの書込データをデータ入力回路32で、シフトクロック発生回路31で発生されたずれたクロックに同期して取込む。データを読み出す時には、メモリ13はクロックCLKに同期してデータ出力回路33から読出データを出力し、コントローラ12は、シフトクロック発生回路31で発生されたずれたクロックに同期して、この読出データをデータ入力回路23で取り込む。更に、コントローラ12が書込データの出力と読出データの取込みをずれたシフトクロックに同期して行うようにすれば、メモリ13は書込データの取込みと読出データの出力を共にクロックCLKに同期して行うことができ、シフトクロック発生回路はコントローラ12にのみ設ければよい。いずれにしろ、コントローラ12とメモリ13の一方又は両方にそれぞれシフトクロック発生回路が必要である。
【0009】
上記のように、クロック周波数が小さい場合には、信号のばらつきによるシフトクロック発生回路21の精度の低下もほとんど問題にならず、単純な回路構成でも問題は生じなかった。しかし、クロック周波数が大きくなると、伝搬時間のクロック周期に対する割合が大きくなり、信号の伝搬時間による取込みタイミングのずれが問題になってくる。また、シフトクロック発生回路におけるプロセスばらつきや温度の変動によるシフトクロックのずれが問題になってくる。
【0010】
このような問題を解決する高速動作のためのシステム構成がいくつか提案されており、図4はそのようなシステムの構成例を示す図である。図4のシステムは、基本クロックCLKとは別にデータストローブ信号DQSを用いて、データの送信を行う方式を使用しており、書込データDinと読出データDoutの送信の両方でデータストローブ信号DQSを使用する双方向方式(バイディレクショナル方式)と呼ばれる方式を使用する。コントローラ12は、クロックCLKから1/4周期ずれた2つのシフトクロックを発生するシフトクロック発生回路21と、書込データDinを一方のシフトクロックCLKに同期して出力するデータ出力回路22と、他方のシフトクロックを出力するストローブ信号出力回路24と、メモリ13から送信されたストローブ信号を受信するストローブ信号入力回路25と、ストローブ信号入力回路25の受信したストローブ信号に同期してメモリ13から送信された読出データDoutを取り込むデータ入力回路23とを有する。また、メモリ13は、コントローラ12から送信されたストローブ信号を受信するストローブ信号入力回路35と、書込データDinをストローブ信号に同期して取り込むデータ入力回路32と、クロックCLK及び内部回路34で発生する読出データDoutが出力できる状態になったことを示す信号から、1/4周期ずれた2つのシフトクロックを発生するシフトクロック発生回路31と、読出データDoutを一方のシフトクロックCLKに同期して出力するデータ出力回路33と、他方のシフトクロックを出力するストローブ信号出力回路36とを有する。書込データを伝送する書込データバス16aと、読出データを伝送する読出データバス16bと、ストローブ信号を伝送するストローブ信号線17は、同じ伝搬時間になるように並行に等長配線されている。
【0011】
図5は図4のシステムにおける書込データの伝送動作を示すタイムチャートである。書込データの伝送する時、コントローラ12はデータ出力回路22から書込データDin(a)を、ストローブ信号出力回路24からデータストローブ信号DQS(a)を出力する。図5に示すように、書込データDin(a)とデータストローブ信号DQS(a)は、1/4周期ずれている。従って、データストローブ信号DQSの変化エッジは、書込データDinを取り込むのに最適なタイミングである。なお、データストローブ信号DQSとクロックCLKとの間には一定の位相関係はない。書込データDin(a)とデータストローブ信号DQS(a)がメモリ13に伝送されても、書込データバス16aとデータストローブ信号17は並行に設けられているため、ほとんどスキューは生ぜず、そのままの位相関係を維持される。従って、メモリ13における書込データDin(b)とデータストローブ信号DQS(b)は、書込データDin(a)とデータストローブ信号DQS(a)を伝送時間分送らせた信号である。そのため、メモリ13のデータ入力回路32でストローブ信号入力回路35で受信したストローブ信号に同期して書込データを取り込めば最適なタイミングで取り込むことができる。メモリ13に取り込まれた書込データの内部回路34への書込は、取り込んだ後のクロックCLKの立ち上がりエッジから開始される。
【0012】
図6は図4のシステムにおける読出データの伝送動作を示すタイムチャートである。読出データの伝送する時、メモリ13はデータ出力回路33から読出データDout(b)を、ストローブ信号出力回路36からデータストローブ信号DQS(b)を出力する。図6に示すように、読出データDout(b)とデータストローブ信号DQS(b)は、1/4周期ずれている。従って、データストローブ信号DQSの変化エッジは、読出データDoutを取り込むのに最適なタイミングである。なお、データストローブ信号DQSとクロックCLKとの間には一定の位相関係はない。読出データDout(b)とデータストローブ信号DQS(b)がコントローラ12に伝送されても、読出データ信号線16bとデータストローブ信号線17は並行に設けられているため、ほとんどスキューは生ぜず、そのままの位相関係を維持される。従って、コントローラ12における読出データDout(a)とデータストローブ信号DQS(a)は、読出データDout(b)とデータストローブ信号DQS(b)を伝送時間分送らせた信号である。そのため、コントローラ12のデータ入力回路23でストローブ信号入力回路25で受信したストローブ信号に同期して読出データを取り込めば最適なタイミングで取り込むことができる。コントローラ12に取り込まれた読出データのCPUでの処理は、取り込んだ後のクロックCLKの立ち上がりエッジから開始される。
【0013】
以上のように、図4の双方向ストローブ方式であれば、いずれの方向にデータを伝送する場合も、データと同じ方向に取込みに適したストローブ信号が出力されるので、常に最適なタイミングで送信データを取り込むことができる。但し、図2の回路と同様に、図4の回路は、コントローラ12とメモリ13にそれぞれ1/4位相ずれた2つのシフトクロックを発生させるためのシフトクロック発生回路を設ける必要がある。更に、ストローブ信号を伝送するためのストローブ信号線及びその入力回路と出力回路が必要である。
【0014】
図7は、高速動作のためのシステムの別の構成例を示す図である。このシステムは、メモリ13へはコントローラ12からクロックCLKを供給し、クロックCLKを供給するためのクロック信号線18を書込データバス16aに並行に設ける。そして、コントローラ12からメモリ13への書込データの伝送は、クロックCLKを1/4周期ずらした信号に同期して行う。メモリ13からコントローラ12への読出データの伝送は、図4のシステムと同様に、データストローブ信号DQSに同期して行い、一緒にメモリ13からコントローラ12へデータストローブ信号を伝送する。この方式は、一方のデータ信号(ここでは読出データ)の伝送にのみデータストローブ信号DQSを使用するため、片方向方式(ユニディレクショナル方式)と呼ばれる。コントローラ12は、受信したクロックCLKをクロック信号線18をに印加するクロック出力回路27と、クロックCLKから1/4周期ずれたシフトクロックを発生するシフトクロック発生回路21と、書込データDinをシフトクロックCLKに同期して出力するデータ出力回路22と、メモリ13から送信されたストローブ信号を受信するストローブ信号入力回路25と、ストローブ信号入力回路25の受信したストローブ信号から1/4周期ずれたシフトクロックを発生するシフトクロック発生回路26と、シフトクロック発生回路26の出力するシフトクロックに同期して、メモリ13から送信された読出データDoutを取り込むデータ入力回路23とを有する。また、メモリ13は、コントローラ12から送信されたクロック信号CLKを受信するクロック入力回路37と、書込データDinをクロック信号CLKに同期して取り込むデータ入力回路32と、読出データDoutをクロック入力回路37の出力するクロックCLKに同期して出力するデータ出力回路33と、クロック入力回路37の出力するクロックCLKをストローブ信号として出力するストローブ信号出力回路36とを有する。クロックCLKを伝送するクロック信号線18と、書込データを伝送する書込データバス16aと、読出データを伝送する読出データバス16bと、ストローブ信号を伝送するストローブ信号線17bは、同じ伝搬時間になるように並行に等長配線されている。
【0015】
図8は図7のシステムにおける書込データの伝送動作を示すタイムチャートである。コントローラ12はクロック出力回路27からクロックCLKを常時出力し、出力書込データの伝送する時には、データ出力回路22から書込データDin(a)を出力する。図8に示すように、書込データDin(a)とクロックCLKは、1/4周期ずれている。従って、クロックCLKの変化エッジは、書込データDinを取り込むのに最適なタイミングである。書込データDin(a)とクロックCLKがメモリ13に伝送されても、書込データ信号線16aとクロック信号線18は並行に設けられているため、ほとんどスキューは生ぜず、そのままの位相関係を維持される。従って、メモリ13における書込データDin(b)とクロックCLK(b)は、書込データDin(a)とクロックCLK(a)を伝送時間分送らせた信号である。そのため、メモリ13のデータ入力回路32でクロック入力回路37で受信したクロック信号CLKに同期して書込データを取り込めば最適なタイミングで取り込むことができる。
【0016】
図9は図7のシステムにおける読出データの伝送動作を示すタイムチャートである。読出データの伝送する時、メモリ13はデータ出力回路33から読出データDout(b)を、ストローブ信号出力回路36からデータストローブ信号DQS(b)を出力する。図9に示すように、書込データDout(b)とデータストローブ信号DQS(b)は、1/4周期ずれている。従って、データストローブ信号DQSの変化エッジは、書込データDoutを取り込むのに最適なタイミングである。書込データDout(b)とデータストローブ信号DQS(b)がコントローラ12に伝送されても、読出データ信号線16bとデータストローブ信号17は並行に設けられているため、ほとんどスキューは生ぜず、そのままの位相関係を維持される。従って、コントローラ12における読出データDout(a)とデータストローブ信号DQS(a)は、書込データDout(b)とデータストローブ信号DQS(b)を伝送時間分送らせた信号である。そのため、コントローラ12のデータ入力回路23でストローブ信号入力回路25で受信したストローブ信号に同期して書込データを取り込めば最適なタイミングで取り込むことができる。
【0017】
以上のように、図7の片方向ストローブ方式では、いずれの方向にデータを伝送する場合も、常に最適なタイミングで送信データを取り込むことができる。
以上、3つの従来例を説明したが、いずれの従来例においても、位相がデータ信号の最小変化周期の1/2ずれたシフトクロックを発生させることが必要である。具体的には、データ信号の最小変化周期がクロックの周期と同じであれば、クロックと正確に位相が一致した信号と1/2周期(180°)ずれた信号が必要である。データ信号の最小変化周期がクロックの1/2周期で、クロックの立ち上がりエッジと立ち下がりエッジの両方でデータ信号が変化するDDR−SDRAMの場合には、具体的には位相が0又は1周期(360°)、1/4周期(90°)、1/2周期(180°)、3/4周期(270°)のシフトクロックを発生させることが必要である。正確にこのような位相ずれた信号を発生させるためには、DLL(Delay Locked Loop) 回路が使用される。
【0018】
図10は、クロックCLKから等位相(0°)のシフトクロックと、1/4周期(90°)ずつずれたシフトクロックを発生させるDLL回路の基本構成を示す図である。図10において、参照番号41は0°位相のシフトクロックを発生させるDLL回路であり、51は90°ずつずれた4つのシフトクロックを発生させるDLL回路である。
【0019】
0°DLL回路41は、クロックCLKを遅延させ、遅延量が調整できるディレイ回路42と、ディレイ回路42の出力する遅延クロックとクロックCLKの位相を比較する位相比較回路43と、位相比較回路43の比較結果に基づいて2つのクロックの位相が一致するようにディレイ回路42での遅延量を段階的に変化させるディレイ制御回路44とを有する。ディレイ回路42の出力する遅延クロックとクロックCLKの位相が一致した時には、ディレイ回路42の出力する遅延クロックは、クロックCLKに対して1周期遅れた信号である。ディレイ回路42は微少な遅延量を有する遅延素子を多数直列に接続し、各段から出力が取り出せるようにスイッチを設けた回路で、どのスイッチを動作させてどの段から出力を得るかにより、遅延量が変化させられる。
【0020】
90°DLL回路51は、0°位相のシフトクロックを得るための0°DLL回路と同じ構成であるが、ディレイ回路を4分割して4個の1/4ディレイ回路52、53、54、55とし、前段の出力が後段の入力になるように直列に接続してある。ディレイ制御回路57は、4分割された各1/4ディレイ回路の遅延量が同一になるように同時に制御している。位相比較回路56は、最初の1/4ディレイ回路52に入力されるクロック信号φと最終の1/4ディレイ回路55から出力される信号の位相を比較する。ディレイ制御回路57は比較結果に基づいて2つの信号の位相が一致するように4つの1/4ディレイ回路の遅延量を制御する。2つの信号の位相が一致した時には、各1/4ディレイ回路の出力は1/4周期ずつずれている。このようにして、1/4周期ずつずれたシフトクロックが得られる。
【0021】
このように、DLL回路を使用することにより、正確に所定位相ずれた信号を得ることができるが、DLL回路は、かなり複雑で回路規模の大きな回路で、チップ面積も大きく、消費電力も大きい。
【0022】
【発明が解決しようとする課題】
以上説明した従来例では、いずれもコントローラ内部又はメモリ、又は両方に、例えば1/4周期位相のずれた信号を発生させるシフトクロック発生回路を設けて、適当なタイミングで送信データを取り込めるようにしており、正確に所定位相ずれた信号を発生させるためには、DLL回路を使用する必要がある。DDR−SDRAMの場合、立ち上がりエッジと立ち下がりエッジの両方を基準にしてデータを送信し、取り込む必要がある。
【0023】
供給されるクロックのデューティ比が正確に50%の場合は、そのままクロックの立ち上がりエッジと立ち下がりエッジを使用でき、クロックの立ち上がりエッジと立ち下がりエッジから1/4周期位相のずれた信号を発生させる。そこで図10に示した90°DLL回路51を使用することになる。
また、クロックのデューティ比が50%からずれている時には、まず1/2周期(180°)位相の異なる信号を発生させ、その後その信号から1/4周期位相のずれた信号を発生させることが考えられるが、この場合には2個のDLL回路が必要になる。このようなDLL回路を2回使用すると、ディレイ回路の最小変化量で決定されるDLLのジッタが2倍になり、シフトクロックの精度が悪化するという問題がある。
【0024】
そこで、やはり図10に示した90°DLL回路51を使用して、1/4周期(90°)ずれた信号と1/2周期(180°)ずれた信号を発生させる。しかし、図10に示した90°DLL回路51は、DLL回路が4段に接続されており、各DLL回路の最小変化量の4倍のジッタが発生するため、シフトクロックの精度が低くなるという問題がある。
【0025】
更に、DLL回路は、上記のように、複雑な回路であり、このような回路をコントローラ及びメモリに設けると、チップ面積が増大してコストアップになると共に、消費電力も増大するという問題を生じる。
本発明は、このような問題を解決するためのもので、高速のデータ送信が可能なメモリシステムを簡単な構成で実現することを目的とする。
【0026】
【課題を解決するための手段】
本発明のメモリサブシステムは、上記目的を実現するため、コントローラ又はメモリからデータを出力する場合には、クロック又はデータストローブ信号に同期してデータを出力し、データ信号線と並行に設けられたクロック信号線又はデータストローブ信号線でクロック又はデータストローブ信号を伝送するようにしたシステムにおいて、クロック信号線又はデータストローブ信号線に所定の遅延を生じる遅延回路を設けて、伝送先ではクロック又はデータストローブ信号はデータ信号に対して取り込みに適した位相になり、受信したクロック又はデータストローブ信号でそのままデータ信号を取り込めるようにする。このような構成であれば、DLL回路を使用しないで、上記の問題は生じない。また、DDR−SDRAMのように、クロックの立ち上がりエッジと立ち下がりエッジの両方を基準にしてデータを送信し、取り込む必要がある場合でも、180°位相の異なる信号を発生させる180°DLL回路のみを設ければよいので、ジッタの発生が低減される。
【0027】
すなわち、本発明のメモリサブシステムは、読出コマンドを出力する出力回路と、読出データを取り込む読出データ入力回路とを有するコントローラと、それぞれが前記読出コマンドを取り込むコマンド入力回路と、前記読出コマンドに応じて前記読出データを出力する読出データ出力回路とを有する複数のメモリと、前記コントローラと前記複数のメモリの間に接続されたクロック信号線又はデータストローブ信号線と、前記読出データを送るために前記コントローラと前記複数のメモリの間に接続されたデータ信号線とを備え、前記コントローラは、初期化動作時に、前記クロックのサイクル数を計数して、前記コントローラが前記読出コマンドを出力する時点から前記コントローラが前記メモリから前記読出データを取り込む時点までのアクセス時間として記憶し、前記コントローラが前記読出データを正規のタイミングで取り込むことを可能にし、前記メモリサブシステムは、前記コントローラと前記複数のメモリのうちの1つとの間又は前記メモリ間の、前記クロック信号線又は前記データストローブ信号線に配置された少なくとも1つの遅延回路をさらに備え、前記少なくとも1つの遅延回路の遅延量は、前記アクセス時間が前記クロックの前記サイクルの整数倍にほぼ等しい値から偏移するように決定されることを特徴とする。
【0028】
上記の所定の遅延は、クロック又はデータストローブ信号がデータ信号の取り込みに適した位相になる遅延であり、書込データ及び読出データの最小変化周期の1/2の時間であり、DDR−SDRAMの場合であれば、クロック周期の1/4の遅延である。
遅延回路は、信号線の信号伝搬時間を長くするように配線を長くした回路又はディレイ素子を使用したディレイラインで実現できる。
【0029】
クロック信号線とデータストローブ信号線は、インピーダンスが整合していることが望ましい。
遅延回路は、コントローラとメモリの間の部分に設けることが望ましいが、スペースの関係でコントローラとメモリの間に設けることができない場合には、コントローラとメモリの外側に設けることも可能である。
【0030】
クロック信号線へのクロックの印加は、コントローラ又はクロック源から行う。クロック源から行う時には、コントローラに供給するクロックを分岐するか、並行に行う。
データストローブ信号として、メモリが受信したクロックを使用してもよい。その場合、メモリは読出データを伝送する時には、受信したクロックの変化エッジで読出データを変化させ、データストローブ信号線はメモリの付近でクロック信号線に接続される。
【0031】
従来は、クロック又はデータストローブ信号が送信データに対して取り込みに適した位相になるようにするためのシフトクロック発生回路を、コントローラ及びメモリに設けていた。そのため、信号線を長くして位相を調整することができず、DLL回路を使用する必要があった。これに対して、本発明では、チップ外で位相調整するため、信号線を長くするなどの簡単な構成で位相調整が行える。
【0032】
【発明の実施の形態】
図11の(1)は、本発明の実施例のメモリサブシステムの全体構成を示す図である。図11の(1)に示すように、本実施例のメモリサブシステムは、クロック発生回路10からコントローラ12にクロックが供給され、コントローラ12からは、クロック信号線18、書込データバス16a、読出データバス16b、及びデータストローブ信号線17bが並行に延びている。クロック信号線18とデータストローブ信号線17bには、伝送する信号を所定時間遅延させるために信号線を延長した延長部71と72が設けられている。他にも、コマンド信号を伝送する制御信号バスやアドレス信号を伝送するアドレス信号バスが設けられているが、ここでは省略してある。上記の信号線にはソケット61が設けられており、このソケット61を介してDIMM−SDRAMと呼ばれるメモリモジュール60aから60cが接続されている。DIMM−SDRAMは、図11の(2)に示すように、複数のメモリ素子(ここではSDRAM)を有し、これらを合わせた大容量のメモリとして動作するように、デコーダ64やマルチプレクサ65aと65bなどを有し、外部との接続のための接続ピンが設けられている。この接続ピンがモジュールの両面で独立しているためDual Inline 型と呼ばれる。なお、このようなDIMM−SDRAMでなく、単に接続ピンに直接接続された複数のSDRAMを有するだけで、デコーダ64やマルチプレクサ65aと65bなどがないメモリモジュールでもよく、SDRAM単体でもよい。以下、説明を簡単にするために、単にメモリとして説明を行う。
1つのソケット61には、複数のメモリ(DIMM)が接続されて群を成している。各群内では信号の伝搬時間は無視できる程度の差であるとする。しかし、多数の群が接続されると信号線が長くなり、その伝搬時間の差が問題になる。後述するように、本実施例では、メモリの位置にかかわらず良好なタイミングで伝送データを取り込めるようにしているが、メモリの位置により、データの読み出し時にコントローラ12から各メモリにアクセス信号を出力してからメモリが読み出しデータを出力し、それがコントローラ12に到達するまでの時間に差が生じる。この差が1クロックサイクル以内であれば問題はないが、1クロックサイクル以上の場合には誤動作する可能性がある。そこで、本実施例では、メモリサブシステムの初期化時に、メモリ群毎に、アクセスを開始してから読出データがコントローラ12に到着するまでのクロックサイクルの個数を測定し、それを記憶してコントローラ12が正しいタイミングで読出データを取り込めるようにしている。この場合、アクセスを開始してから読出データが到着するまでの時間がクロックサイクルの整数倍の付近である場合、動作環境の変動によりこの時間が変化すると、隣接する異なるクロックサイクルで取り込む可能性がある。そこで、アクセスに要する時間がクロックサイクルの整数倍付近の場合には、遅延回路62を設けて、アクセスに要する時間をクロックサイクルの整数倍付近からずらしている。
【0033】
また、クロック発生回路10はデューティ比が正確に50%のクロックを発生し、コントローラ12やメモリに供給されたクロックのデューティ比も50%であり、クロックの立ち上がりエッジと立ち下がりエッジで、DDR方式のデータを出力及び取り込めるものとする。
図12は、図11のシステムにおいて、メモリを1個取り出し、それとコントローラ12及びクロック発生回路10の関係を示すようにした図であり、コントローラ12とメモリ13の内部の構成が示されている。図示のように、第1実施例のシステムは、コントローラ12は、クロック発生回路の出力するクロックを受信するクロック入力回路28と、受信したクロックCLKをクロック信号線18に印加するクロック出力回路27と、書込データDinをクロックCLKに同期して出力するデータ出力回路22と、メモリ13から送信されたストローブ信号を受信するストローブ信号入力回路25と、ストローブ信号入力回路25の受信したストローブ信号に同期してメモリ13から送信された読出データDoutを取り込むデータ入力回路23とを有する。また、メモリ13は、コントローラ12から送信されたクロック信号CLKを受信するクロック入力回路37と、書込データDinをクロック信号CLKに同期して取り込むデータ入力回路32と、読出データDoutをクロック入力回路37の出力するクロックCLKに同期して出力するデータ出力回路33と、クロック入力回路37の出力するクロックCLKをストローブ信号として出力するストローブ信号出力回路36とを有する。クロックCLKを伝送するクロック信号線18と、書込データを伝送する書込データバス16aと、読出データを伝送する読出データバス16bと、ストローブ信号を伝送するストローブ信号線17bは、同じ伝搬時間になるように並行に等長配線されている。クロック信号線18とストローブ信号線17bには、伝送するクロック信号とデータストローブ信号をクロックの1/4周期分遅延させるために延長部71と72が設けられている。この延長部71と72は、単にクロック信号線18とストローブ信号線17を長くし、そこを信号が伝搬する時間を長くするものである。このような遅延回路は、DLL回路などの比べて温度などの影響による変動が小さく、遅延量の誤差は小さい。更に、クロック信号線18とストローブ信号線17はインピーダンスが整合されている。
【0034】
図13は図12の第1実施例のシステムにおける書込データの伝送動作を示すタイムチャートである。コントローラ12はクロック出力回路27からクロックCLKを常時出力し、出力書込データの伝送する時には、データ出力回路22からクロックCLKに同期して書込データDin(a)を出力する。ここではDDR方式を使用するから、クロックCLKの立ち上がりエッジと立ち下がりエッジの両方に同期して書込データDin(a)を変化させる。従って、図13に示すように、コントローラ12から出力されたクロックCLK(a)と書込データDin(a)は同じ位相である。
【0035】
コントローラ12から出力されたクロックCLK(a)と書込データDin(a)は、クロック信号線18と書込データバス16aを通ってメモリ13に伝送される。クロック信号線18には延長部71が設けられているため、ここを通過するとクロックCLK(a)はクロックの1/4周期分遅延され、図示のCLK(a’)になる。従って、クロックCLK(a’)は書込データDin(a)に対してクロックの1/4周期分遅延された信号になり、これらがメモリ13まで伝送される。前述のように、クロック信号線18と書込データバス16aは並行に設けられており、負荷も等しくなるように設定されているので、それらの伝搬時間の差(スキュー)はほとんど無視できる程度である。従って、メモリ13に到着したクロックCLK(b)と書込データDin(b)は、図示のように1/4周期ずれた信号であり、クロックCLK(b)の変化エッジは、書込データDin(b)を取り込むのに最適なタイミングである。従って、データ入力回路32で、クロック入力回路37で取り込んだクロックCLK(b)に同期して書込データDin(b)を取り込めばよい。
【0036】
図14は図12の第1実施例のシステムにおける読出データの伝送動作を示すタイムチャートである。読出データを伝送する時、メモリ13はコントローラ12からコマンドやアドレス信号などのアクセスに必要な信号を受け、内部回路34からデータDoutを読み出す。SDRAMではこのようなアクセス信号に応じて、連続してデータが読み出される。メモリ13は、読出データDoutが読み出された後のクロックCLKの最初の立ち上がりエッジから順次クロックCLKに同期してデータ出力回路33から読出データDoutを出力する。それと同時に、ストローブ信号出力回路36からクロックCLKを出力する。従って、図14に示すように、読出データDout(b)とデータストローブ信号DQS(b)は同じ位相の信号である。
【0037】
メモリ13から出力されたデータストローブ信号DQS(b)と読出データDout(b)は、データストローブ信号線17bと読出データバス16bを通ってコントローラ12に伝送される。前述のように、データストローブ信号線17bと読出データバス16bは並行に設けられており、負荷も等しくなるように設定されているので、それらの伝搬時間の差(スキュー)はほとんど無視できる程度である。しかし、データストローブ信号線17bには延長部72が設けられているため、ここを通過するとデータストローブ信号DQS(b)はクロックの1/4周期分遅延され、図示のDQS(b’)になる。従って、データストローブ信号DQS(b’)は読出データDout(b)に対してクロックの1/4周期分遅延された信号になり、これらがコントローラ12まで伝送される。従って、コントローラ12に到着したデータストローブ信号DQS(a)と読出データDout(a)は、図示のように1/4周期ずれた信号であり、データストローブ信号DQS(a)の変化エッジは、読出データDout(a)を取り込むのに最適なタイミングである。従って、データ入力回路23で、ストローブ信号入力回路25で取り込んだデータストローブ信号DQS(a)に同期して読出データDout(a)を取り込めばよい。
【0038】
以上説明したように、第1実施例では、データを送信する場合に、一緒に送信されるクロック又はデータストローブ信号に同期して送信データが変化され、クロック又はデータストローブ信号は一緒に送信されたデータを取り込むのに適するように途中で位相がずらされる。従って、コントローラ又はメモリでクロック又はデータストローブ信号の位相をずらす必要はなく、DLL回路が必要ない。なお、チップ内部の配線や負荷のために、受信したクロック又はデータストローブ信号をデータ入力回路に供給した場合の遅れが無視できない場合には、受信したクロック又はデータストローブ信号とデータ入力回路に供給する信号の位相を完全に一致させるために0°DLL回路を使用してもよい。その場合でも、0°DLL回路は90°DLL回路に比べてジッタは少なく、精度低下などの問題は生じない。
【0039】
第1実施例では、コントローラ12とメモリ群の間に、クロック信号及びデータストローブ信号を遅延させるための延長部を設けた。信号は1nsで約30cm進むので、例えばクロック周波数が250MHzであれば1/4周期は1nsであり、延長部は15cmを往復する経路が必要である。コントローラとメモリ群は密に配置されているため、コントローラとメモリ群の間にこのようなスペースを取るのが難しい場合がある。第2実施例はそのような条件に対処した実施例である。
【0040】
図15は、第2実施例のメモリサブシステムの構成を示す図であり、(1)が全体構成を、(2)が基本構成を示す。第1実施例と比べて明らかなように、第2実施例のシステムは第1実施例と類似の構成であり、異なるのは、クロック信号線18の延長部71がコントローラ12の外側に、データストローブ信号線17bの延長部72がメモリ群の外側に設けられている点である。クロック発生回路10からコントローラ12にクロックを供給する信号線が設けられているが、この信号線を途中で分岐し、コントローラ12の外側に設けた延長部71の一方に接続する。そして延長部71の他方をクロック信号線18に接続する。各メモリからのデータストローブ信号線は一旦群毎にまとめた上で、コントローラ12に接続されるデータストローブ信号線17bに接続する。例えば、図11の(1)に示した複数のメモリ群が設けられている場合には、各メモリ群毎に延長部72を設け、各群毎にデータストローブ線をまとめた上で対応する延長部72を介してコントローラ12に接続されるデータストローブ線17bに接続する。
【0041】
第1及び第2実施例では、メモリ13は受信したクロックCLKをデータストローブ信号として出力していた。従って、メモリ13に到達したクロックCLKをそのままデータストローブ信号として戻すことも可能である。第3実施例は、データストローブ信号としてクロックCLKを戻すようにした実施例である。
図16は、第3実施例のメモリサブシステムの構成を示す図である。図示のように、第2実施例のシステムと類似の構成を有し、異なるのは、クロック信号線18がメモリ13の部分でストローブ信号線17bに接続され、接続部分にコイルで構成される遅延回路73が設けられている点と、メモリ13にはストローブ信号出力回路が設けられていない点である。遅延回路73は、広く使用されているディレイラインであり、コイルとその前後に設けられた2個のインバータを有する。コイルのインダクタンスを適当に設定することにより、通過する信号を所定量遅延させる。
【0042】
図17と図18は、第3実施例のシステムにおける書込データと読出データの伝送動作を示すタイムチャートである。動作内容は、第1実施例のものとほぼ同じであり、詳しい説明は省略する。
以上、クロックのデューティ比が50%で、クロックの立ち上がりエッジと立ち下がりエッジでデータを出力及び取り込めるとして説明したが、クロックのデューティ比が50%からずれている場合には、コントローラ及びメモリにそれぞれ180°DLL回路を設ける必要がある。しかし、この場合でも1/4周期位相がずれた信号を発生させる必要はない。180°DLL回路は、図10の90°DLL回路51においてディレイ回路を2段とすれば実現でき、90°DLL回路に比べてジッタは半分になる。
【0043】
以上、本発明を、図7に示した片方向ストローブ方式に適用した実施例について説明したが、本発明は同期信号が1方向に送信される信号線を使用する構成であればどのような場合にも適用可能である。
【0044】
【発明の効果】
以上説明したように、本発明によれば、クロック信号線及びデータストローブ信号線に、延長部又はディレイラインなどの遅延回路を設けることにより、コントローラやメモリにDLL回路を搭載せずに、また搭載する場合でも最小限の個数や段数で、データの取込みを良好なタイミングで行うことができる。そのため、ジッタが生じなくなり、ジッタが生じる場合でも小さくできる。
【図面の簡単な説明】
【図1】メモリサブシステムの従来の構成例を示す図である。
【図2】メモリサブシステムの同期方式に関する従来の構成例を示す図である。
【図3】図2のシステムにおけるデータの入出力動作を示すタイムチャートである。
【図4】双方向ストローブ方式のシステムの構成を示す図である。
【図5】双方向ストローブ方式のシステムにおける書込データの伝送動作を示すタイムチャートである。
【図6】双方向ストローブ方式のシステムにおける読出データの伝送動作を示すタイムチャートである。
【図7】従来の片方向ストローブ方式のシステムの構成を示す図である。
【図8】従来の片方向ストローブ方式のシステムにおける書込データの伝送動作を示すタイムチャートである。
【図9】従来の片方向ストローブ方式のシステムにおける読出データの伝送動作を示すタイムチャートである。
【図10】DLL回路を使用したシフトクロック生成回路の構成を示す図である。
【図11】本発明の第1実施例のメモリサブシステムの構成を示す図である。
【図12】第1実施例の基本構成を示す図である。
【図13】第1実施例における書込データの伝送動作を示すタイムチャートである。
【図14】第1実施例における読出データの伝送動作を示すタイムチャートである。
【図15】本発明の第2実施例のメモリサブシステムの構成を示す図である。
【図16】本発明の第3実施例のメモリサブシステムの構成を示す図である。
【図17】第3実施例における書込データの伝送動作を示すタイムチャートである。
【図18】第3実施例における読出データの伝送動作を示すタイムチャートである。
【符号の説明】
10…クロック源(クロック発生回路)
11…クロック分配回路
12…コントローラ
13…メモリ(DIMM)
16…データバス
16a…書込データバス
16b…読出データバス
17b…データストローブ信号線
18…クロック信号線
21、26、31…シフトクロック発生回路
22、33…データ出力回路
23、32…データ入力回路
25…ストローブ信号入力回路
27…クロック出力回路
36…ストローブ信号出力回路
37…クロック入力回路

Claims (16)

  1. 読出コマンドを出力する出力回路と、読出データを取り込む読出データ入力回路とを有するコントローラと、
    それぞれが前記読出コマンドを取り込むコマンド入力回路と、前記読出コマンドに応じて前記読出データを出力する読出データ出力回路とを有する複数のメモリと、
    前記コントローラと前記複数のメモリの間に接続されたクロック信号線又はデータストローブ信号線と、
    前記読出データを送るために前記コントローラと前記複数のメモリの間に接続されたデータ信号線とを備え、
    前記コントローラは、初期化動作時に、前記クロックのサイクル数を計数して、前記コントローラが前記読出コマンドを出力する時点から前記コントローラが前記メモリから前記読出データを取り込む時点までのアクセス時間として記憶し、前記コントローラが前記読出データを正規のタイミングで取り込むことを可能にし、
    前記コントローラと前記複数のメモリのうちの1つとの間又は前記メモリ間の、前記クロック信号線又は前記データストローブ信号線に配置された少なくとも1つの遅延回路をさらに備え、前記少なくとも1つの遅延回路は、前記アクセス時間が前記クロックの前記サイクルの整数倍にほぼ等しい値から偏移するような遅延時間を有するメモリサブシステム。
  2. 請求項1に記載のメモリサブシステムであって、
    前記コントローラは、クロックの変化エッジで変化させるように書込データを出力する書込データ出力回路を有し、
    各メモリは、調整されたクロックに応じて前記書込データを取り込む書込データ入力回路を有し、
    前記読出データ出力回路は、データストローブ信号の変化エッジで変化するように前記読出データを出力し、
    前記読出データ入力回路は、調整されたデータストローブ信号に応じて前記読出データを取り込み、
    当該メモリサブシステムは、
    前記コントローラ及び前記複数のメモリに内蔵されておらず、各メモリの前記書込データ入力回路が前記調整されたクロックの変化エッジで前記書込データを取り込むように、前記クロックを受けて前記調整されたクロックを出力するクロック遅延回路と、
    前記コントローラ及び前記複数のメモリに内蔵されておらず、前記コントローラの前記読出データ入力回路が前記調整されたデータストローブ信号の変化エッジで前記読出データを取り込むように、前記データストローブ信号を受けて調整された前記調整されたデータストローブ信号を出力するデータストローブ遅延回路とをさらに備えるメモリサブシステム。
  3. 請求項2に記載のメモリサブシステムであって、
    前記クロック遅延回路の遅延量及び前記データストローブ遅延回路の遅延量は、前記書込データ及び前記読出データの最小変化周期の1/2の時間であるメモリサブシステム。
  4. 請求項2又は3に記載のメモリサブシステムであって、
    前記クロック遅延回路と前記データストローブ遅延回路は、前記クロック信号線と前記データストローブ信号線の信号伝搬時間を長くするように配線を長くした回路であるメモリサブシステム。
  5. 請求項2又は3に記載のメモリサブシステムであって、
    前記クロック遅延回路と前記データストローブ遅延回路は、ディレイ素子を使用したディレイラインであるメモリサブシステム。
  6. 請求項2から5のいずれか1項に記載のメモリサブシステムであって、
    前記クロック信号線と前記データストローブ信号線は、インピーダンスが整合しているメモリサブシステム。
  7. 請求項2から6のいずれか1項に記載のメモリサブシステムであって、
    前記クロック遅延回路と前記データストローブ遅延回路は、前記クロック信号線と前記データストローブ信号線の前記コントローラと前記メモリの間の部分に設けられているメモリサブシステム。
  8. 請求項2から6のいずれか1項に記載のメモリサブシステムであって、
    前記クロック遅延回路と前記データストローブ遅延回路は、前記コントローラと前記メモリの間の部分でない外側に設けられているメモリサブシステム。
  9. 請求項2から8のいずれか1項に記載のメモリサブシステムであって、
    前記クロック信号線は前記コントローラから前記メモリに延び、
    前記コントローラは、クロック源から供給された前記クロックを、前記クロック信号線に出力するメモリサブシステム。
  10. 請求項2から8のいずれか1項に記載のメモリサブシステムであって、
    クロック源から前記コントローラに前記クロックを供給する信号線は、分岐されて前記クロック信号線に接続されているメモリサブシステム。
  11. 請求項2から8のいずれか1項に記載のメモリサブシステムであって、
    クロック源から前記クロック信号線に前記クロックを供給する信号線を、前記クロック源から前記コントローラに前記クロックを供給する信号線に並行に設けたメモリサブシステム。
  12. 請求項2から11のいずれか1項に記載のメモリサブシステムであって、
    前記データストローブ信号は、前記メモリが受信した前記クロックであり、
    前記メモリは、前記コントローラへ読出データを伝送する時には、受信した前記クロックの変化エッジで前記読出データを変化させ、
    前記データストローブ信号線は、前記メモリの付近で、前記クロック信号線に接続されているメモリサブシステム。
  13. 請求項2に記載のメモリサブシステムであって、
    前記クロックを供給するクロック源と、
    前記コントローラと前記複数のメモリの間で前記書き込み及び読出データ信号を伝送するデータ信号線と、
    前記データ信号線に並行に設けられ、前記複数のメモリへ前記調整されたクロックを伝送するクロック信号線と、
    前記データ信号線に並行に設けられ、前記コントローラへ前記調整されたデータストローブ信号を伝送するデータストローブ信号線とを備え、
    前記クロック信号線は前記クロック遅延回路を有し、前記データストローブ信号線は前記データストローブ遅延回路を有し、前記クロックは前記クロック信号線を介して前記クロック遅延回路に供給され、前記データストローブ信号は前記データストローブ信号線を介して前記データストローブ遅延回路に供給されるメモリサブシステム。
  14. 請求項1に記載のメモリサブシステムであって、
    前記コントローラの前記読出データ入力回路は、調整されたデータストローブ信号に応じて前記読出データを取り込み、
    各メモリは、前記データストローブ信号の変化エッジで変化させるように前記読出データを出力し、
    当該サブシステムは、
    前記コントローラ及び前記複数のメモリに内蔵されておらず、前記コントローラの前記読出データ入力回路が前記調整されたデータストローブ信号の変化エッジで前記読出データを取り込むように、前記データストローブ信号を受けて調整された前記調整されたデータストローブ信号を出力するデータストローブ遅延回路をさらに備えるメモリサブシステム。
  15. 読出データを取り込むように読出コマンドを出力するコントローラと、
    それぞれが前記読出コマンドを取り込み、前記読出コマンドに応じて前記読出データを出力する複数のメモリデバイスと、
    前記コントローラと前記複数のメモリデバイスの間に接続されたクロック信号線又はデータストローブ信号線と、
    前記読出データを送るために前記コントローラと前記複数のメモリデバイスの間に接続されたデータ信号線とを備え、
    前記コントローラは、初期化動作時に、クロックのサイクル数を計数して、前記コントローラが前記読出コマンドを出力する時点から前記コントローラが各メモリデバイスから前記読出データを取り込む時点までのアクセス時間として記憶し、前記コントローラが前記読出データを正規のタイミングで取り込むことを可能にし、
    記コントローラと前記複数のメモリデバイスのうちの選択された1つとの間の、前記クロック信号線又は前記データストローブ信号線に配置された遅延回路をさらに備え、前記遅延回路の遅延量は、前記アクセス時間が前記クロックの前記サイクルの整数倍にほぼ等しい値から偏移するような遅延時間を有するメモリサブシステム。
  16. 請求項15に記載のメモリサブシステムであって、
    前記コントローラは、クロックの変化エッジで変化させるように書き込みデータを出力する書き込みデータ出力回路を有し、
    当該メモリサブシステムは、
    調整されたクロックに応じて前記書き込みデータを取り込む書き込みデータ入力回路を有するメモリデバイスと、
    前記コントローラ及び前記複数のメモリデバイスに内蔵されておらず、各メモリデバイスの前記書き込みデータ入力回路が前記調整されたクロックの変化エッジで前記書き込みデータを取り込むように、前記クロックを受けて前記調整されたクロックを出力するクロック遅延回路とをさらに備えるメモリサブシステム。
JP17996997A 1997-07-04 1997-07-04 メモリサブシステム Expired - Fee Related JP3929116B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP17996997A JP3929116B2 (ja) 1997-07-04 1997-07-04 メモリサブシステム
US08/970,086 US6397312B1 (en) 1997-07-04 1997-11-13 Memory subsystem operated in synchronism with a clock
TW086116931A TW351787B (en) 1997-07-04 1997-11-13 Memory subsystem capable of high speed data transfer
KR1019970063317A KR100271724B1 (ko) 1997-07-04 1997-11-27 메모리 서브 시스템

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP17996997A JP3929116B2 (ja) 1997-07-04 1997-07-04 メモリサブシステム

Publications (2)

Publication Number Publication Date
JPH1125029A JPH1125029A (ja) 1999-01-29
JP3929116B2 true JP3929116B2 (ja) 2007-06-13

Family

ID=16075154

Family Applications (1)

Application Number Title Priority Date Filing Date
JP17996997A Expired - Fee Related JP3929116B2 (ja) 1997-07-04 1997-07-04 メモリサブシステム

Country Status (4)

Country Link
US (1) US6397312B1 (ja)
JP (1) JP3929116B2 (ja)
KR (1) KR100271724B1 (ja)
TW (1) TW351787B (ja)

Families Citing this family (44)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6314527B1 (en) * 1998-03-05 2001-11-06 Micron Technology, Inc. Recovery of useful areas of partially defective synchronous memory components
US6621496B1 (en) * 1999-02-26 2003-09-16 Micron Technology, Inc. Dual mode DDR SDRAM/SGRAM
KR100447051B1 (ko) * 1999-05-31 2004-09-04 미쓰비시덴키 가부시키가이샤 데이터 전송방식
DE19926075A1 (de) * 1999-06-08 2000-12-14 Endress Hauser Gmbh Co Verfahren zur zeitlichen Koordination der Versendung von Daten auf einem Bus
JP4353324B2 (ja) * 1999-08-31 2009-10-28 エルピーダメモリ株式会社 半導体装置
JP4707204B2 (ja) * 1999-10-08 2011-06-22 富士通セミコンダクター株式会社 半導体記憶装置
US6621760B1 (en) * 2000-01-13 2003-09-16 Intel Corporation Method, apparatus, and system for high speed data transfer using source synchronous data strobe
JP4778132B2 (ja) * 2000-05-19 2011-09-21 富士通セミコンダクター株式会社 メモリコントローラ及びシステム
US6611905B1 (en) * 2000-06-29 2003-08-26 International Business Machines Corporation Memory interface with programable clock to output time based on wide range of receiver loads
US7017070B1 (en) * 2000-10-13 2006-03-21 Ati International Srl Apparatus for synchronization of double data rate signaling
US6553472B2 (en) * 2001-01-12 2003-04-22 Sun Microsystems, Inc. Method for programming clock delays, command delays, read command parameter delays, and write command parameter delays of a memory controller in a high performance microprocessor
US7313715B2 (en) * 2001-02-09 2007-12-25 Samsung Electronics Co., Ltd. Memory system having stub bus configuration
KR100382736B1 (ko) * 2001-03-09 2003-05-09 삼성전자주식회사 독출동작과 기입동작시 서로 다른 데이터율을 갖는 반도체메모리장치 및 이를 채용하는 시스템
US20030120989A1 (en) * 2001-12-26 2003-06-26 Zumkehr John F. Method and circuit to implement double data rate testing
US6597202B1 (en) * 2001-12-28 2003-07-22 Intel Corporation Systems with skew control between clock and data signals
US6819599B2 (en) * 2002-08-01 2004-11-16 Micron Technology, Inc. Programmable DQS preamble
DE10344959A1 (de) * 2003-09-27 2005-04-28 Infineon Technologies Ag Synchrone RAM-Speicherschaltung
US20050071707A1 (en) * 2003-09-30 2005-03-31 Hampel Craig E. Integrated circuit with bi-modal data strobe
DE10354034B4 (de) * 2003-11-19 2005-12-08 Infineon Technologies Ag Verfahren zum Betreiben einer Halbleiterspeichervorrichtung und Halbleiterspeichervorrichtung
US7126874B2 (en) * 2004-08-31 2006-10-24 Micron Technology, Inc. Memory system and method for strobing data, command and address signals
KR100640594B1 (ko) * 2004-10-27 2006-11-01 삼성전자주식회사 데이터 스트로브 신호를 모니터링하여 적응적으로 데이터입출력 신호를 래치하는 인터페이스 회로 및 이를구비하는 메모리 시스템
KR100562645B1 (ko) * 2004-10-29 2006-03-20 주식회사 하이닉스반도체 반도체 기억 소자
JP4785465B2 (ja) * 2005-08-24 2011-10-05 ルネサスエレクトロニクス株式会社 インタフェース回路及び半導体装置
US7269093B2 (en) * 2005-10-31 2007-09-11 Infineon Technologies Ag Generating a sampling clock signal in a communication block of a memory device
JPWO2008023793A1 (ja) * 2006-08-24 2010-01-14 パナソニック株式会社 半導体集積回路及びメモリシステム及び電子撮像装置
US7666160B2 (en) * 2006-12-29 2010-02-23 Kimberly-Clark Worldwide, Inc. Delivery device
JP4325685B2 (ja) * 2007-02-21 2009-09-02 セイコーエプソン株式会社 メモリを制御するメモリコントローラ、メモリモジュール、メモリの制御方法、および、コンピュータ。
US7586355B2 (en) * 2007-07-11 2009-09-08 United Memories, Inc. Low skew clock distribution tree
CN101373639B (zh) * 2007-08-22 2011-02-09 智原科技股份有限公司 存储器时序测量电路与其测试方法
WO2011077574A1 (ja) 2009-12-25 2011-06-30 富士通株式会社 信号復元回路、レイテンシ調整回路、メモリコントローラ、プロセッサ、コンピュータ、信号復元方法及びレイテンシ調整方法
WO2011077573A1 (ja) 2009-12-25 2011-06-30 富士通株式会社 信号受信回路、メモリコントローラ、プロセッサ、コンピュータ及び位相制御方法
JP5320345B2 (ja) 2010-06-09 2013-10-23 株式会社村田製作所 配線基板
US8751850B2 (en) 2011-06-21 2014-06-10 Via Technologies, Inc. Optimized synchronous data reception mechanism
US8839018B2 (en) 2011-06-21 2014-09-16 Via Technologies, Inc. Programmable mechanism for optimizing a synchronous data bus
US8782460B2 (en) 2011-06-21 2014-07-15 Via Technologies, Inc. Apparatus and method for delayed synchronous data reception
US8751852B2 (en) 2011-06-21 2014-06-10 Via Technologies, Inc. Programmable mechanism for delayed synchronous data reception
US8751851B2 (en) 2011-06-21 2014-06-10 Via Technologies, Inc. Programmable mechanism for synchronous strobe advance
US8782459B2 (en) 2011-06-21 2014-07-15 Via Technologies, Inc. Apparatus and method for advanced synchronous strobe transmission
US8683253B2 (en) * 2011-06-21 2014-03-25 Via Technologies, Inc. Optimized synchronous strobe transmission mechanism
CN102946293B (zh) * 2012-09-26 2015-09-23 中国航天科技集团公司第九研究院第七七一研究所 一种基于ds编码的并行接收方法及其装置
US9111607B2 (en) * 2013-05-31 2015-08-18 Freescale Semiconductor, Inc. Multiple data rate memory with read timing information
JP6188246B2 (ja) * 2015-07-10 2017-08-30 株式会社メガチップス メモリシステム
JP6207551B2 (ja) * 2015-07-10 2017-10-04 株式会社メガチップス メモリシステム
CN107977328B (zh) * 2017-12-20 2019-12-10 天津瑞发科半导体技术有限公司 一种onfi接口双时钟沿采样装置

Family Cites Families (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR960003526B1 (ko) * 1992-10-02 1996-03-14 삼성전자주식회사 반도체 메모리장치
FR2460526A1 (fr) * 1979-06-29 1981-01-23 Ibm France Procede de mesure du temps d'acces d'adresse de memoires mettant en oeuvre la technique de recirculation des donnees, et testeur en resultant
DE3501569C2 (de) * 1984-01-20 1996-07-18 Canon Kk Datenverarbeitungseinrichtung
US5278974A (en) * 1989-12-04 1994-01-11 Digital Equipment Corporation Method and apparatus for the dynamic adjustment of data transfer timing to equalize the bandwidths of two buses in a computer system having different bandwidths
US5239639A (en) * 1990-11-09 1993-08-24 Intel Corporation Efficient memory controller with an independent clock
US5608896A (en) * 1992-05-28 1997-03-04 Texas Instruments Incorporated Time skewing arrangement for operating memory devices in synchronism with a data processor
US5615355A (en) * 1992-10-22 1997-03-25 Ampex Corporation Method and apparatus for buffering a user application from the timing requirements of a DRAM
US5479647A (en) * 1993-11-12 1995-12-26 Intel Corporation Clock generation and distribution system for a memory controller with a CPU interface for synchronizing the CPU interface with a microprocessor external to the memory controller
US5815016A (en) * 1994-09-02 1998-09-29 Xilinx, Inc. Phase-locked delay loop for clock correction
US5796673A (en) * 1994-10-06 1998-08-18 Mosaid Technologies Incorporated Delay locked loop implementation in a synchronous dynamic random access memory
US5623638A (en) * 1994-11-22 1997-04-22 Advanced Micro Devices, Inc. Memory control unit with programmable edge generator to minimize delay periods for critical DRAM timing parameters
US5577236A (en) * 1994-12-30 1996-11-19 International Business Machines Corporation Memory controller for reading data from synchronous RAM
US5692165A (en) * 1995-09-12 1997-11-25 Micron Electronics Inc. Memory controller with low skew control signal
JP3455040B2 (ja) * 1996-12-16 2003-10-06 株式会社日立製作所 ソースクロック同期式メモリシステムおよびメモリユニット
US5923611A (en) * 1996-12-20 1999-07-13 Micron Technology, Inc. Memory having a plurality of external clock signal inputs
JP3979690B2 (ja) 1996-12-27 2007-09-19 富士通株式会社 半導体記憶装置システム及び半導体記憶装置
JPH10241362A (ja) * 1997-02-25 1998-09-11 Mitsubishi Electric Corp 同期型半導体記憶装置及び論理半導体装置
US5987576A (en) * 1997-02-27 1999-11-16 Hewlett-Packard Company Method and apparatus for generating and distributing clock signals with minimal skew
US6044474A (en) * 1997-04-08 2000-03-28 Klein; Dean A. Memory controller with buffered CAS/RAS external synchronization capability for reducing the effects of clock-to-signal skew
JPH10308093A (ja) * 1997-05-07 1998-11-17 Mitsubishi Electric Corp 入力信号位相補償回路
US5946712A (en) * 1997-06-04 1999-08-31 Oak Technology, Inc. Apparatus and method for reading data from synchronous memory
JPH1174783A (ja) * 1997-06-18 1999-03-16 Mitsubishi Electric Corp 内部クロック信号発生回路、および同期型半導体記憶装置
JP3922765B2 (ja) * 1997-07-22 2007-05-30 富士通株式会社 半導体装置システム及び半導体装置
JP3211739B2 (ja) * 1997-08-25 2001-09-25 日本電気株式会社 半導体記憶装置
US6185664B1 (en) * 1997-11-17 2001-02-06 Micron Technology, Inc. Method for providing additional latency for synchronously accessed memory
US6003118A (en) * 1997-12-16 1999-12-14 Acer Laboratories Inc. Method and apparatus for synchronizing clock distribution of a data processing system
US6072743A (en) * 1998-01-13 2000-06-06 Mitsubishi Denki Kabushiki Kaisha High speed operable semiconductor memory device with memory blocks arranged about the center
US6105144A (en) * 1998-03-02 2000-08-15 International Business Machines Corporation System and method for alleviating skew in a bus
US5923613A (en) * 1998-03-18 1999-07-13 Etron Technology, Inc. Latched type clock synchronizer with additional 180°-phase shift clock
US6016282A (en) * 1998-05-28 2000-01-18 Micron Technology, Inc. Clock vernier adjustment
US6043694A (en) * 1998-06-24 2000-03-28 Siemens Aktiengesellschaft Lock arrangement for a calibrated DLL in DDR SDRAM applications

Also Published As

Publication number Publication date
JPH1125029A (ja) 1999-01-29
KR100271724B1 (ko) 2000-11-15
KR19990013250A (ko) 1999-02-25
TW351787B (en) 1999-02-01
US6397312B1 (en) 2002-05-28

Similar Documents

Publication Publication Date Title
JP3929116B2 (ja) メモリサブシステム
US6446158B1 (en) Memory system using FET switches to select memory banks
JP3979690B2 (ja) 半導体記憶装置システム及び半導体記憶装置
JP4159415B2 (ja) メモリモジュール及びメモリシステム
JP4808414B2 (ja) コンピュータシステム及びメモリシステム
JP4212281B2 (ja) Ptpバス構成を持つメモリシステム
KR100626375B1 (ko) 고주파로 동작하는 반도체 메모리 장치 및 모듈
WO1999046687A1 (fr) Emetteur de donnees
KR20030033070A (ko) 버퍼가 장착된 메모리 시스템에서 신뢰성있는 전송을제공하기 위한 시스템 및 방법
JP2005209168A (ja) 半導体メモリモジュール、メモリシステム、回路、半導体装置、およびdimm
KR100281952B1 (ko) 데이터 전송 메모리 장치
JP2017536639A (ja) ソースシンクロナスインターフェースから受信する制御デバイスのキャリブレーション
WO2005106888A1 (en) Multiple data rate ram memory controller
JP4305616B2 (ja) 制御及びアドレスクロック非分配型メモリシステム
JP4136577B2 (ja) メモリコントロール装置およびデータ処理装置
JPH09179819A (ja) 同期データ転送システム
KR100408397B1 (ko) 데이터 지연시간을 외부에서 조절할 수 있는 반도체메모리장치 및 이를 구비하는 메모리모듈
JP4952177B2 (ja) 記憶装置
JP4661134B2 (ja) メモリ制御方法および装置
KR100546097B1 (ko) 제어 및 어드레스 클럭 비분배형 메모리 시스템
JP2002041356A (ja) 半導体装置
JP2008123543A (ja) データ伝送方法、システム及びデバイス
JPH10187592A (ja) メモリバスシステム
KR20070044129A (ko) 반도체 메모리 소자의 데이터 라인 구조

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20060328

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20060404

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060519

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20061121

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070119

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20070206

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20070306

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100316

Year of fee payment: 3

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100316

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110316

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110316

Year of fee payment: 4

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110316

Year of fee payment: 4

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110316

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120316

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130316

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140316

Year of fee payment: 7

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees