JP5112391B2 - 多様に配置されたメモリ・コンポーネントからメモリ・オペレーションを調整するメモリコントローラ - Google Patents

多様に配置されたメモリ・コンポーネントからメモリ・オペレーションを調整するメモリコントローラ Download PDF

Info

Publication number
JP5112391B2
JP5112391B2 JP2009162534A JP2009162534A JP5112391B2 JP 5112391 B2 JP5112391 B2 JP 5112391B2 JP 2009162534 A JP2009162534 A JP 2009162534A JP 2009162534 A JP2009162534 A JP 2009162534A JP 5112391 B2 JP5112391 B2 JP 5112391B2
Authority
JP
Japan
Prior art keywords
memory
clock
signal
data
component
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
JP2009162534A
Other languages
English (en)
Other versions
JP2009238244A (ja
Inventor
フレデリック・エイ・ウェア
エリー・ケイ・ツァーン
リチャード・イー・ペレゴ
クレイグ・イー・ハンペル
Original Assignee
ラムバス・インコーポレーテッド
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
Family has litigation
First worldwide family litigation filed litigation Critical https://patents.darts-ip.com/?family=25286018&utm_source=google_patent&utm_medium=platform_link&utm_campaign=public_patent_search&patent=JP5112391(B2) "Global patent litigation dataset” by Darts-ip is licensed under a Creative Commons Attribution 4.0 International License.
Application filed by ラムバス・インコーポレーテッド filed Critical ラムバス・インコーポレーテッド
Publication of JP2009238244A publication Critical patent/JP2009238244A/ja
Application granted granted Critical
Publication of JP5112391B2 publication Critical patent/JP5112391B2/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/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
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/21Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
    • G11C11/34Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
    • G11C11/40Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
    • G11C11/401Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors forming cells needing refreshing or charge regeneration, i.e. dynamic cells
    • G11C11/4063Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing
    • G11C11/407Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing for memory cells of the field-effect type
    • G11C11/4076Timing circuits
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/04Generating or distributing clock signals or signals derived directly therefrom
    • G06F1/06Clock generators producing several clock signals
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/04Generating or distributing clock signals or signals derived directly therefrom
    • G06F1/10Distribution of clock signals, e.g. skew
    • G06F1/105Distribution of clock signals, e.g. skew in which the distribution is at least partially optical
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/04Generating or distributing clock signals or signals derived directly therefrom
    • G06F1/12Synchronisation of different clock signals provided by a plurality of clock generators
    • 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
    • G06F13/1668Details of memory controller
    • G06F13/1684Details of memory controller using multiple buses
    • 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
    • G06F13/1668Details of memory controller
    • G06F13/1689Synchronisation and timing concerns
    • 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
    • G06F13/1668Details of memory controller
    • G06F13/1694Configuration of memory controller to different memory types
    • 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/40Bus structure
    • G06F13/4063Device-to-bus coupling
    • G06F13/4068Electrical coupling
    • G06F13/4086Bus impedance matching, e.g. termination
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0604Improving or facilitating administration, e.g. storage management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0658Controller construction arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/21Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
    • G11C11/34Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
    • G11C11/40Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
    • G11C11/401Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors forming cells needing refreshing or charge regeneration, i.e. dynamic cells
    • G11C11/4063Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing
    • G11C11/407Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing for memory cells of the field-effect type
    • G11C11/409Read-write [R-W] circuits 
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/21Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
    • G11C11/34Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
    • G11C11/40Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
    • G11C11/401Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors forming cells needing refreshing or charge regeneration, i.e. dynamic cells
    • G11C11/4063Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing
    • G11C11/407Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing for memory cells of the field-effect type
    • G11C11/409Read-write [R-W] circuits 
    • G11C11/4096Input/output [I/O] data management or control circuits, e.g. reading or writing circuits, I/O drivers or bit-line switches 
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/02Detection or location of defective auxiliary circuits, e.g. defective refresh counters
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/02Detection or location of defective auxiliary circuits, e.g. defective refresh counters
    • G11C29/022Detection or location of defective auxiliary circuits, e.g. defective refresh counters in I/O circuitry
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/02Detection or location of defective auxiliary circuits, e.g. defective refresh counters
    • G11C29/023Detection or location of defective auxiliary circuits, e.g. defective refresh counters in clock generator or timing circuitry
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/02Detection or location of defective auxiliary circuits, e.g. defective refresh counters
    • G11C29/028Detection or location of defective auxiliary circuits, e.g. defective refresh counters with adaption or trimming of parameters
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C29/50Marginal testing, e.g. race, voltage or current testing
    • G11C29/50008Marginal testing, e.g. race, voltage or current testing of impedance
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C29/50Marginal testing, e.g. race, voltage or current testing
    • G11C29/50012Marginal testing, e.g. race, voltage or current testing of timing
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C5/00Details of stores covered by group G11C11/00
    • G11C5/06Arrangements for interconnecting storage elements electrically, e.g. by wiring
    • G11C5/063Voltage and signal distribution in integrated semi-conductor memory access lines, e.g. word-line, bit-line, cross-over resistance, propagation delay
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • G11C7/1051Data output circuits, e.g. read-out amplifiers, data output buffers, data output registers, data output level conversion circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • G11C7/1072Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers for memories with random access ports synchronised on clock signal pulse trains, e.g. synchronous memories, self timed memories
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • G11C7/1078Data input circuits, e.g. write amplifiers, data input buffers, data input registers, data input level conversion circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/22Read-write [R-W] timing or clocking circuits; Read-write [R-W] control signal generators or management 
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/22Read-write [R-W] timing or clocking circuits; Read-write [R-W] control signal generators or management 
    • G11C7/222Clock generating, synchronizing or distributing circuits within memory device
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C8/00Arrangements for selecting an address in a digital store
    • G11C8/18Address timing or clocking circuits; Address control signal generation or management, e.g. for row address strobe [RAS] or column address strobe [CAS] signals
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/04Arrangements for writing information into, or reading information out from, a digital store with means for avoiding disturbances due to temperature effects

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Human Computer Interaction (AREA)
  • Databases & Information Systems (AREA)
  • Dram (AREA)
  • Memory System (AREA)
  • Measurement Of Velocity Or Position Using Acoustic Or Ultrasonic Waves (AREA)
  • Static Random-Access Memory (AREA)

Description

本発明は、全般的には情報の蓄積および検索に関し、具体的には、メモリ・コンポーネントの調整に関する。
コンピュータおよびデータ処理機器の能力が高まるにつれて、ユーザは、それらの機器に対するますます高まる要求を課す応用例を開発してきた。したがって、所与の時間の間により多くの情報を処理することに対する、継続的に高まる要求がある。所与の時間の間により多くの情報を処理する方法の1つが、情報の各要素をより短い時間で処理することである。時間が短縮されるにつれて、電子信号の通信を支配する物理的な速度の限界に近づく。遅延なしで情報の電子表現を移動できることが理想的であるが、そのような遅延は回避不能である。実際、遅延が回避不能であるばかりではなく、遅延の量が距離の関数なので、遅延は、通信する装置の相対的な位置に従って変動する。
単一の電子デバイスの能力に限界があるので、メモリ・コンポーネントなどのデバイスを多数組み合わせて、システムの総合性能を高めるために一緒に機能させることが望ましいことがしばしばである。しかし、デバイスは、空間内の同一の位置にすべてが同時に存在することができないので、ある面積にわたって異なる位置に配置されたデバイスを有するシステムの動作に対する考慮が必要である。
従来は、デバイスの動作のタイミングが、デバイスの位置の変動がその動作にとって問題になる点まで加速されていなかった。しかし、性能の要求が高まったので、従来のタイミング・パラダイムが、進歩に対する障害になった。
既存のメモリ・システムの一例では、DDR(double data rate)メモリ・コンポーネントが使用される。このメモリ・システムには、メモリ・コントローラとメモリ・モジュールが含まれる。伝搬遅延が、メモリ・コントローラとメモリ・モジュールの間のアドレス・バスに沿って発生する。もう1つの伝搬遅延が、メモリ・コントローラとメモリ・モジュールの間のデータ・バスに沿って発生する。
メモリ・モジュール内の制御信号および制御クロック信号の分配が、厳密な制約を受ける。通常、制御線は、各メモリ・コンポーネントへの長さが等しくなるようにルーティングされる。「スター」トポロジまたは「2進木」トポロジが、通常は使用され、この場合に、スターの各スポークまたは2進木の各枝が、同一の長さを有する。その意図は、メモリ・モジュールの異なるメモリ・コンポーネントの間の制御信号および制御クロック信号のタイミングの変動を除去することであるが、各メモリ・コンポーネントへのワイヤの長さの平衡化は、システム性能を損なう(一部のパスが、必要以上に長くなる)。さらに、等しい長さをもたらすようにワイヤをルーティングする必要によって、メモリ・コンポーネントの数が制限され、メモリ・コンポーネントの接続が複雑になる。
そのようなDDRシステムでは、データ・ストローブ信号が、データ読取動作とデータ書込動作の両方のタイミングを制御するのに使用される。データ・ストローブ信号は、周期的なタイミング信号ではなく、データが転送される時に限ってアサートされる。制御信号のタイミング信号は、周期的なクロックである。書込データのデータ・ストローブ信号は、制御信号のクロックに整列される。読取データのストローブは、アドレス・バスに沿った伝搬遅延とデータ・バスに沿った伝搬遅延の合計に等しい、制御クロックに対する相対的な遅延だけ遅延される。読取転送の後に書込転送が続く時には、シグナリングの一時停止を設けて、使用されるさまざまな信号線に沿った干渉を防がなければならない。そのような一時停止は、システム性能を低下させる。
そのようなシステムは、複数の形で制約を受ける。第1に、制御ワイヤが、スター・トポロジまたは2進木ルーティングを有するので、スタブ(スポークまたは枝の終点)で反射が発生する。反射は、信号の整定時間を増やし、制御ワイヤの転送帯域幅を制限する。その結果、制御ワイヤ上で1つの情報が駆動されるタイム・インターバルが、信号波面が制御ワイヤの一端から他端まで伝搬するのに要する時間より長くなる。さらに、より多くのモジュールがシステムに追加される時に、より多くのワイヤ・スタブが、データ・バスの各導体に追加され、これによって、スタブからの反射が増える。これによって、信号の整定時間が増加し、データ・バスの転送帯域幅がさらに制限される。
また、このシステム内のアドレス・バスに沿った伝搬遅延とデータ・バスに沿った伝搬遅延の間の関係に対する制約があるので、メモリ・コンポーネントのタイミング・パラメータに違反せずに動作周波数を高めることは困難である。クロック信号が、別のクロック信号と独立である場合に、これらのクロック信号およびそれに関係するコンポーネントは、異なるクロック・ドメインであるとみなされる。メモリ・コンポーネント内で、書込データ・レシーバは、メモリ・コンポーネントのロジックの残りと異なるクロック・ドメインで動作しており、ドメイン・クロッシング回路は、これらの2つのドメインの間の限られた量のスキューだけに対処する。データのシグナリング・レートを高めると、このスキュー・パラメータ(時間単位で測定された時の)が減り、基板上のデータ・ワイヤと制御ワイヤの間のルーティング不一致がタイミング違反を引き起こす機会が増える。
また、ほとんどのDDRシステムは、アドレス・バスおよびデータ・バスの伝搬遅延の長さ(時間単位)に対する厳密な制限を有する。これは、通常、コントローラの読取データ・レシーバ・クロック・ドメインからコントローラの残りの部分が使用するクロック・ドメインへのクロッシングのために含まれるロジックと、メモリ・コントローラとによって課せられる制限である。通常は、これらの伝搬遅延の合計の長さに対する制限(クロック・サイクル単位で表される)もある。マザーボード・レイアウトのためにこの合計が大きくなりすぎる(時間単位で測定された時に)場合に、システムの信号レートを下げなければならない場合があるが、これによって性能が低下する。
既存のメモリ・システムのもう1つの例では、制御ワイヤおよびデータ・バスが、メモリ・コントローラに接続され、各メモリ・モジュール上のメモリ・コンポーネントを通って一緒にルーティングされる。1つのクロックが、書込データ信号と制御信号のタイミングを制御するのに使用され、もう1つのクロックが、読取データのタイミングを制御するのに使用される。これらの2つのクロックは、メモリ・コントローラで整列される。前の従来技術の例と異なって、これらの2つのタイミング信号は、別々のワイヤで搬送される。
そのような代替システムでは、複数の組の制御ワイヤと1つのデータ・バスを使用して、メモリ・コントローラを1つまたは複数のメモリ・コンポーネントに相互結合することができる。別の組の制御ワイヤが必要なので、追加のコストと複雑さが導入されるが、これは、望ましくない。また、大容量メモリ・システムが必要な場合に、各データ・バス上のメモリ・コンポーネントの数が、相対的に多くなる。これは、データ・バス上の最大信号レートを制限する傾向を有し、これによって性能が制限される。
既存のメモリ・システムのもう1つの例が、ハンセン(Hansen)他に1998年7月7日に発行された米国特許第5778419号に見られる。ハンセン他の特許は、パケットおよびアービトレーションを使用する高帯域幅インターフェースを有するダイナミック・ランダム・アクセス・メモリ(DRAM)に関するが、そのようなDRAMは、その有用性を制限するいくつかの不利益をこうむる。
したがって、さまざまな位置に配置されたメモリ・コンポーネントの間でメモリ動作を調整する技法が必要である。
本発明は、メモリ・コントローラ・コンポーネントと、スライスを含むメモリ・コンポーネントのランクと、該メモリ・コントローラ・コンポーネントをメモリ・コンポーネントの該ランクに結合し、該メモリ・コントローラ・コンポーネントをメモリ・コンポーネントの該ランクの該スライスに結合する導体であって、導体のうちで、アドレス信号、書込データ信号、および読取データ信号からなる群から選択された信号を搬送する1つの伝搬遅延が、該信号によって表される情報の要素が該導体に印加される時間の量より長く、該導体が、該メモリ・コントローラ・コンポーネントを該ランクの該スライスのそれぞれに連続して接続する共通アドレス・バスと、該メモリ・コントローラ・コンポーネントを該ランクの該スライスのそれぞれに接続する別のデータ・バスとを含むことを特徴とするメモリ・システムである。
本発明の実施形態を実施することができる、メモリ・コンポーネントの単一のランクを有するメモリ・システムを示すブロック図である。 本発明の実施形態による、図1に示されたものなどのメモリ・システムのメモリ・コンポーネントのランクの1スライスのクロッキングの詳細を示すブロック図である。 他の図のタイミング図で使用されるアドレス・タイミングおよび制御タイミングの表記を示すタイミング図である。 他の図のタイミング図で使用されるデータ・タイミングの表記を示すタイミング図である。 本発明の実施形態による、アドレスおよび制御バス(Addr/CtrlまたはACS,M)上で通信される信号のタイミングを示すタイミング図である。 本発明の実施形態による、データ・バス(DQS,M)上で通信される信号のタイミングを示すタイミング図である。 本発明の実施形態による、メモリ・コントローラ・コンポーネントでのシステム・タイミングを示すタイミング図である。 本発明の実施形態による、ランク1のスライス1のメモリ・コンポーネントでのクロックAClkS1,M1、WClkS1,M1、およびRClkS1,M1の整列を示すタイミング図である。 本発明の実施形態による、ランク1のスライスNSのメモリ・コンポーネントでのクロックAClkSNsM1、WClkSNsM1、およびRClkSNsM1の整列を示すタイミング図である。 本発明の実施形態による、図1に示されたものなどのメモリ・システムのメモリ・コンポーネントのランクの1スライスのさらなる詳細を示すブロック図である。 本発明の実施形態による、図1に示されたものなどのメモリ・システムのメモリ・コンポーネントのランクの1スライスのクロッキング要素を示すブロック図である。 本発明の実施形態による、図1に示されたものなどのメモリ・システムのメモリ・コントローラ・コンポーネントの詳細を示すブロック図である。 本発明の実施形態による、図1に示されたものなどのメモリ・システムのメモリ・コントローラ・コンポーネントのクロッキング要素を示すブロック図である。 本発明の実施形態による、図12に示されたものなどのメモリ・コントローラ・コンポーネントのClkC8ブロックの詳細を示すブロック図である。 本発明の実施形態による、図12に示されたものなどのメモリ・コントローラ・コンポーネントの送出ブロックおよび受取ブロックでClkC8[N:1]信号がどのように使用されるかを示すブロック図である。 本発明の実施形態による、ClkC8Aクロックに基づいてClkC8BクロックおよびClkC1Bクロックを作る回路を示すブロック図である。 本発明の実施形態による、PhShCブロックの詳細を示すブロック図である。 本発明の実施形態による、メモリ・コントローラ・コンポーネントの受取ブロックのコントローラ・スライス内のスキップ・ロジックのロジックの詳細を示すブロック図である。 本発明の実施形態による、メモリ・コントローラ・コンポーネントの受取ブロックのコントローラ・スライス内のスキップ・ロジックのタイミングの詳細を示すタイミング図である。 本発明の実施形態による、メモリ・コントローラ・コンポーネントの送出ブロックのコントローラ・スライス内のスキップ・ロジックのロジックの詳細を示すブロック図である。 本発明の実施形態による、メモリ・コントローラ・コンポーネントの送出ブロックのコントローラ・スライス内のスキップ・ロジックのタイミングの詳細を示すタイミング図である。 本発明の実施形態による、データ・クロッキング配置の例を示すタイミング図である。 本発明の実施形態による、データ・クロッキング配置の例を示すタイミング図である。 本発明の実施形態による、図23に示されたデータ・クロッキング配置の例のメモリ・コントローラ・コンポーネントでのタイミングを示すタイミング図である。 本発明の実施形態による、図23に示されたデータ・クロッキング配置の例のメモリ・コンポーネントの1ランクの第1スライスでのタイミングを示すタイミング図である。 本発明の実施形態による、図23に示されたデータ・クロッキング配置の例のメモリ・コンポーネントの1ランクの最終スライスでのタイミングを示すタイミング図である。 本発明の実施形態による、複数のランクのメモリ・コンポーネントおよび複数のメモリ・モジュールを含めることができるメモリ・システムを示すブロック図である。 本発明の実施形態による、複数のランクのメモリ・コンポーネントおよび複数のメモリ・モジュールを含めることができるメモリ・システムを示すブロック図である。 本発明の実施形態による、複数のランクのメモリ・コンポーネントおよび複数のメモリ・モジュールを含むメモリ・システムを示すブロック図である。 本発明の実施形態による、メモリ・モジュールごとの専用の制御/アドレス・バスを有する複数のランクのメモリ・コンポーネントと複数のメモリ・モジュールを含むメモリ・システムを示すブロック図である。 本発明の実施形態による、メモリ・モジュールの間で共有される単一の制御/アドレス・バスを有する複数のランクのメモリ・コンポーネントと複数のメモリ・モジュールを含むメモリ・システムを示すブロック図である。 本発明の実施形態による、すべてのメモリ・モジュールによって共有される単一の制御/アドレス・バスを有する複数のランクのメモリ・コンポーネントと複数のメモリ・モジュールを含むメモリ・システムを示すブロック図である。 本発明の実施形態による、メモリ・モジュールごとの専用のスライスされた制御/アドレス・バスを有する複数のランクのメモリ・コンポーネントと複数のメモリ・モジュールを含むメモリ・システムを示すブロック図である。 本発明の実施形態による、すべてのメモリ・モジュールによって共有される単一の制御/アドレス・バスを有する複数のランクのメモリ・コンポーネントと複数のメモリ・モジュールを含むメモリ・システムを示すブロック図である。 本発明の実施形態による、すべてのメモリ・モジュールによって共有される単一の制御/アドレス・バスを有する複数のランクのメモリ・コンポーネントと複数のメモリ・モジュールを含むメモリ・システムを示すブロック図である。
さまざまな位置に配置されたメモリ・コンポーネントの間でメモリ動作を調整する方法および装置を説明する。本発明の実施形態によれば、ウェーブ・パイプライン化が、複数のメモリ・コンポーネントに結合されたアドレス・バスに対して実施される。複数のメモリ・コンポーネントは、アドレス・バス伝搬遅延およびデータ・バス伝搬遅延に関する調整に従って構成される。アドレス信号および/または制御信号に関連する、これらの信号の伝搬遅延を複製するタイミング信号を使用して、メモリ動作を調整する。アドレス・バス伝搬遅延または共通アドレス・バス伝搬遅延は、メモリ・コントローラ・コンポーネントとメモリ・コンポーネントの間でアドレス・バスに沿って進む信号の遅延を指す。データ・バス伝搬遅延は、メモリ・コントローラ・コンポーネントとメモリ・コンポーネントの間でデータ・バスに沿って進む信号の遅延を指す。
本発明の一実施形態によれば、メモリ・システムに、メモリ・コンポーネントの複数のランクおよび複数のスライスを提供する複数のメモリ・モジュールが含まれる。そのようなシステムは、図27に関して理解することができる。図27のメモリ・システムには、メモリ・モジュール2703およびメモリ・モジュール2730が含まれる。メモリ・モジュール2703には、メモリ・コンポーネント2716から2618を含むランクと、メモリ・コンポーネント2744から2746を含むもう1つのランクが含まれる。
このメモリ・システムは、メモリ・コントローラ・コンポーネントおよびメモリ・モジュールにまたがるスライスに編成される。図27のメモリ・システムには、メモリ・コントローラ2702の一部と、メモリ・コンポーネント2716および2744を含むメモリ・モジュール2703の一部と、メモリ・コンポーネント2731および2734を含むメモリ・モジュール2730の一部とを含むスライス2713が含まれる。図27のメモリ・システムには、メモリ・コントローラ2702のもう1つの部分と、メモリ・コンポーネント2717およびメモリ・コンポーネント2745を含むメモリ・モジュール2703のもう1つの部分と、メモリ・コンポーネント2732および2735を含むメモリ・モジュール2730のもう1つの部分とを含むもう1つのスライス2714が含まれる。図27のメモリ・システムには、さらに、メモリ・コントローラ2702のもう1つの部分と、メモリ・コンポーネント2718および2746を含むメモリ・モジュール2703のもう1つの部分と、メモリ・コンポーネント2733および2736を含むメモリ・モジュール2730のもう1つの部分とを含むもう1つのスライス2715が含まれる。
複数のモジュールを使用して実施することができる複数のスライスおよびランクを使用することによって、データ・バスまたはアドレス・バスがそれへの多数の接続を有する時に発生する可能性がある性能低下を回避すると同時に、メモリ・コントローラおよび複数のメモリ・コンポーネントの効率的な相互接続が可能になる。スライスごとに別々のデータ・バスを設けると、各データ・バスへの接続の数を、適度な数にすることができる。別々のデータ・バスは、互いに独立に異なる信号を搬送することができる。スライスに、1モジュールごとに1つまたは複数のメモリ・コンポーネントを含めることができる。たとえば、1つのスライスに、各ランクの1つのメモリ・コンポーネントを含めることができる。用語スライスが、スライスのうちでメモリ・コントローラを除く部分を指すのに使用される場合があることに留意されたい。この形で、メモリ・コントローラを、スライスに結合されているものとみなすことができる。複数のモジュールを使用することによって、メモリ・コンポーネントを、メモリ・コントローラへのパス長に従って編成できる。そのようなパス長のわずかな相違であっても、メモリ・コンポーネントのランクへの編成に従って管理することができる。ランクおよびモジュールに従ってメモリ・コンポーネントを編成することによって、アドレス信号および制御信号を、たとえばランクまたはモジュール内のアドレス・バスの共有を介して、効率的に分配できる。
一実施形態では、スライスに、データ・バスに結合された複数の要素が含まれると理解することができる。一例として、これらの要素には、メモリ・コントローラ・コンポーネントの一部、1モジュール上の1つまたは複数のメモリ・コンポーネント、および、任意選択として、別のモジュール上の1つまたは複数のメモリ・コンポーネントを含めることができる。一実施形態では、ランクに、共通アドレス・バスによって結合された複数のメモリ・コンポーネントが含まれると理解することができる。共通アドレス・バスを、任意選択として、1つまたは複数のモジュール上の複数のランクに結合することができる。共通アドレス・バスは、メモリ・コントローラ・コンポーネントを、1ランク内のスライスのそれぞれに連続して接続することができ、これによって、共通アドレス・バスを、ランクの第1スライスからランクの第2スライスへ、およびランクの第2スライスからランクの第3スライスへとルーティングすることが可能になる。そのような構成によって、共通アドレス・バスのルーティングを単純にすることができる。
説明のために、ある概念を例示するために、単純化された形のメモリ・システムをまず説明し、その後で、複数のモジュールおよびランクを含むより複雑なメモリ・システムを、本明細書で説明する。
図1は、本発明の実施形態を実施することができる、メモリ・コンポーネントの単一のランクを有するメモリ・システムを示すブロック図である。メモリ・システム101には、メモリ・コントローラ・コンポーネント102およびメモリ・モジュール103が含まれる。アドレス・バス107に沿って伝搬するアドレス信号および制御信号に関連するタイミング信号として働くアドレス・クロック信号がアドレス・クロック104によって供給される。アドレス・クロック104は、アドレス・クロック導体109に沿ってそのアドレス・クロック信号を供給する。アドレス・クロック導体109は、メモリ・コントローラ・コンポーネント102およびメモリ・モジュール103に結合される。アドレス信号および制御信号を、時々、単にアドレス信号またはアドレス・バスと称する。しかし、制御信号は、アドレス信号と共通のトポロジに従ってルーティングすることができるので、これらの単語は、使用される時に、アドレス信号または制御信号もしくはその両方を含むものとして理解されなければならない。
書込クロック105は、書込動作中にデータ・バス108に沿って伝搬するデータ信号に関連するタイミング信号として働く書込クロック信号を供給する。書込クロック105は、書込クロック導体110に沿ってその書込クロック信号を供給し、書込クロック導体110は、メモリ・コントローラ・コンポーネント102およびメモリ・モジュール103に結合される。読取クロック106は、読取動作中にデータ・バス108に沿って伝搬するデータ信号に関連するタイミング信号として働く読取クロック信号を供給する。読取クロック106は、読取クロック導体111に沿ってその読取クロック信号を供給し、読取クロック導体111は、メモリ・コントローラ・コンポーネント102およびメモリ・モジュール103に結合される。
終端コンポーネント120が、メモリ・コントローラ・コンポーネント102の近くでデータ・バス108に結合される。一例として、終端コンポーネント120を、メモリ・コントローラ・コンポーネント102に組み込むことができる。終端コンポーネント121が、メモリ・モジュール103の近くでデータ・バス108に結合される。終端コンポーネント121は、メモリ・モジュール103に組み込まれることが好ましい。終端コンポーネント123が、メモリ・モジュール103のメモリ・コンポーネント116の近くで書込クロック導体110に結合される。終端コンポーネント123は、メモリ・モジュール103に組み込まれることが好ましい。終端コンポーネント124が、メモリ・コントローラ・コンポーネント102の近くで読取クロック導体111に結合される。一例として、終端コンポーネント124を、メモリ・コントローラ・コンポーネント102に組み込むことができる。終端コンポーネント125が、メモリ・モジュール103のメモリ・コンポーネント116の近くで読取クロック導体111に結合される。終端コンポーネント125は、メモリ・モジュール103に組み込まれることが好ましい。終端コンポーネントでは、能動デバイス(たとえばトランジスタまたは他の半導体デバイス)または受動デバイス(たとえば抵抗、コンデンサ、インダクタ)を使用することができる。終端コンポーネントに、オープン接続を使用することができる。終端コンポーネントを、1つまたは複数のメモリ・コントローラ・コンポーネントもしくは1つまたは複数のメモリ・コンポーネントに組み込むことができ、また、モジュール上またはメイン回路基板上の別のコンポーネントとすることができる。
メモリ・モジュール103には、メモリ・コンポーネント116、117、および118のランク112が含まれる。メモリ・モジュール103は、各メモリ・コンポーネントが1つのスライスに対応するように編成される。メモリ・コンポーネント116は、スライス113に対応し、メモリ・コンポーネント117は、スライス114に対応し、メモリ・コンポーネント118は、スライス115に対応する。図1には示されていないが、スライス113に関して図示されている、データ・バスと、書込クロックおよび関連する導体と、読取クロックおよび関連する導体とに関連する特定の回路が、他のスライス114および115のそれぞれについて複製される。したがって、そのような回路は、図を簡単にするために図1に図示されていないが、そのようなスライス単位の専用の回路が、図示のメモリ・システムに含まれることが好ましいことを理解されたい。
メモリ・モジュール103内で、アドレス・バス107が、メモリ・コンポーネント116、117、および118のそれぞれに結合される。アドレス・クロック導体109が、メモリ・コンポーネント116、117、および118のそれぞれに結合される。メモリ・モジュール103内のアドレス・バス107の末端で、終端コンポーネント119が、アドレス・バス107に結合される。アドレス・クロック導体109の末端で、終端コンポーネント122が、アドレス・クロック導体109に結合される。
図1のメモリ・システムでは、各データ信号導体が、1つのコントローラ・データ・バス・ノードを1つのメモリ・デバイス・データ・バス・ノードに接続する。しかし、制御信号導体およびアドレス信号導体のそれぞれが、1つのコントローラ・アドレス/制御バス・ノードを、メモリ・ランクの各メモリ・コンポーネント上のアドレス/制御バス・ノードに接続することが可能である。これは、複数の理由から可能になる。第1に、制御信号導体およびアドレス信号導体には、単一方向信号が流れる(信号波面が、コントローラからメモリ・デバイスに伝搬する)。両方向信号導体(データ信号導体など)上よりも、単一方向信号導体上の方が、よい信号完全性を維持するのが簡単である。第2に、アドレス信号と制御信号に、すべてのメモリ・デバイスについて同一の情報が含まれる。データ信号は、すべてのメモリ・デバイスについて異なる。各メモリ・デバイスについて異なる、いくつかの制御信号(書き込みイネーブル信号など)がある可能性があることに留意されたい。これらの信号は、単一方向データ信号として扱われ、この説明においてはデータ・バスの一部とみなされる。たとえば、いくつかの場合に、データ・バスに、多数のビットに対応するデータ信号線が含まれる場合があるが、いくつかの応用例で、データ・バスによって搬送されるビットの一部だけが、特定のメモリ動作についてメモリに書き込まれる場合がある。たとえば、16ビット・データ・バスに2バイトのデータが含まれるが、特定のメモリ動作中に、2バイトのうちの1バイトだけが、特定のメモリ・デバイスに書き込まれる場合がある。そのような例では、追加の制御信号を、データ信号がたどるものに類似するパスに沿って設けることができ、データ・ビット線上のデータを書き込むか否かを制御する制御信号が、データの遅延に全般的に一致する遅延を伴うパスに沿ってシステムをトラバースし、データの書込を制御する際の制御信号の使用が適当なタイミングを与えられるようにする。第3に、アドレス信号および制御信号のすべてのメモリ・デバイスへのルーティングによって、コントローラおよびメモリ・モジュールのインターフェースのピンが節約される。
その結果、制御信号およびアドレス信号が、データ信号の伝搬に使用されるワイヤより長いワイヤで伝搬されるようになる。これによって、いくつかの場合に、データ信号で、制御信号およびアドレス信号より高いシグナリング・レートを使用することが可能になる。
メモリ・システムの性能を損なわないようにするために、アドレス信号および制御信号を、本発明の実施形態に従って、ウェーブ・パイプライン化することができる。メモリ・システムは、ウェーブ・パイプライン化の助けになる複数の条件を満たすように構成される。第1に、複数のメモリ・コンポーネントが、ランクとして編成される。第2に、アドレス信号および制御信号の一部またはすべてが、ランクのすべてのメモリ・コンポーネントに共通する。第3に、共通のアドレス信号および制御信号が、低ひずみで(たとえばインピーダンスを制御されて)伝搬する。第4に、共通のアドレス信号および制御信号が、低シンボル間干渉で(たとえば単一終端または二重終端)伝搬する。
ウェーブ・パイプライン化は、Tbit<Twireの時に発生し、ここで、タイミング・パラメータTwireは、コントローラで作られる波面が、信号を搬送するワイヤの端の終端コンポーネントに伝搬する時間遅延として定義され、タイミング・パラメータTbitは、ワイヤ上の連続する情報(ビット)の間のタイム・インターバルとして定義される。そのような情報は、個々のビットまたは、同時伝送用にエンコードされた複数のビットを表すことができる。ワイヤ上のウェーブ・パイプライン化された信号は、ワイヤに接続されたレシーバによってサンプリングされる入射波である。これは、一般に、波面が伝送線(たとえばワイヤ)の端から反射される前にサンプリングが行われることを意味する。
本発明の適用可能性を、複数の形でメモリ・コンポーネントの単一のランクから複数のランクに拡張することが可能である。第1に、メモリ・コンポーネントの複数のランクを、1つのメモリ・モジュールに実装することができる。第2に、複数のメモリ・モジュールを、1つのメモリ・システム内に実装することができる。第3に、データ信号導体を、各モジュールの専用、共有、または「チェインされる」ものとすることができる。チェイン化には、バスが1つのモジュールを通過できるようにすることと、そのモジュール上の適当な回路に接続することが含まれるが、その特定のモジュールから出た時に、別のモジュールに入るか終端に達することができるようにすることが含まれる。導体のそのようなチェイン化の例を、図29、32、および35と下に示し、さらに詳細に説明する。第4に、共通の制御信号導体およびアドレス信号導体を、各モジュールの専用、共有、またはチェインされるものとすることができる。第5に、データ信号導体を、各モジュール上で終端される伝送線または終端されるスタブとすることができる。この議論について、伝送線は、その伝送線を介する正しい信号伝送を保証するために反射および他の伝送線特性を考慮しなければならない、十分な長さを有する信号線を表すものと理解される。対照的に、終端されるスタブは、そのようなスタブに関連する寄生反射および他の伝送線特性を一般に無視することができる限られた長さを有すると理解される。第6に、共通の制御信号導体およびアドレス信号導体を、各モジュール上で終端される伝送線または終端されるスタブとすることができる。共有されるアドレス信号および制御信号をウェーブ・パイプライン化できるようにすることによって、それらのシグナリング・レートを高めることができ、これによってメモリ・システムの性能が向上する。
図2は、本発明の実施形態による、図1に示されたものなどのメモリ・システムのメモリ・コンポーネントのランクの1スライスのクロッキングの詳細を示すブロック図である。メモリ・コントローラ・コンポーネント102に、アドレス送出ブロック201が含まれ、アドレス送出ブロック201は、アドレス・バス107およびアドレス・クロック導体109に結合される。メモリ・コントローラ・コンポーネント102には、スライスごとに、データ送出ブロック202およびデータ受取ブロック203が含まれ、これらはデータ・バス108に結合される。データ送出ブロック202は、書込クロック導体110に結合され、データ受取ブロック203は、読取クロック導体111に結合される。
メモリ・コンポーネント116などの各メモリ・コンポーネント内に、アドレス受取ブロック204、データ受取ブロック205、およびデータ送出ブロック206が設けられる。アドレス受取ブロック204は、アドレス・バス107およびアドレス・クロック導体109に結合される。データ受取ブロック205は、データ・バス108および書込クロック導体110に結合される。データ送出ブロック206は、データ・バス108および読取クロック導体111に結合される。
PD0と表される伝搬遅延207が、アドレス・バス107に沿って、メモリ・コントローラ・コンポーネント102とメモリ・モジュール103の間に存在する。tPD1と表される伝搬遅延208が、アドレス・バス107に沿って、メモリ・モジュール103内に存在する。
図2に表された基本トポロジは、複数の属性を有する。このトポロジには、メモリ・コントローラが含まれる。このトポロジには、単一のメモリ・モジュールが含まれる。このトポロジには、メモリ・コンポーネントの単一のランクが含まれる。このトポロジには、スライスされたデータ・バス(DQ)が含まれ、ワイヤの各スライスが、コントローラをメモリ・コンポーネントに接続する。このトポロジには、コントローラをすべてのメモリ・コンポーネントに接続する共通のアドレスおよび制御バス(Addr/CtrlまたはAC)が含まれる。ソース同期式クロック信号が、データ信号、制御信号、およびアドレス信号と共に流れる。制御信号およびアドレス信号は、単一方向であり、コントローラからメモリ・コンポーネントへ流れる。データ信号は、両方向であり、コントローラからメモリ・コンポーネントへ流れることができ(書込動作)、メモリ・コンポーネントからコントローラへ流れることができる(読取動作)。データ信号と同一のトポロジを有する制御信号がいくつかある場合があるが、それらの制御信号は、コントローラからメモリ・コンポーネントへ流れるのみである。そのような信号は、たとえば書込動作で書込データをマスクするのに使用することができる。これらは、この議論においては単一方向データ信号として扱うことができる。データ・ワイヤ、アドレス・ワイヤ、制御ワイヤ、およびクロック・ワイヤは、低ひずみで(たとえばインピーダンスを制御された導体に沿って)伝搬する。データ・ワイヤ、アドレス・ワイヤ、制御ワイヤ、およびクロック・ワイヤは、低シンボル間干渉で(たとえば単一方向信号の単一終端および両方向信号の二重終端がある)伝搬する。これらの属性は、明瞭さを保つためにリストされたものである。本発明が、これらの属性を用いて実践されることに制限されず、他のシステム・トポロジを含むように実践することができることを理解されたい。
図2には、データ・バスおよびメモリ・コンポーネントのスライス番号(S={0、1、…、NS})およびモジュール番号(M={0、1})、に基づく2次元座標系がある。ここで、スライス番号「0」およびモジュール番号「0」が、コントローラを参照する。この座標系を用いると、ワイヤ上の異なる位置で信号に命名することができる。この座標系を用いると、複数のメモリ・ランクまたはメモリ・モジュールを有するトポロジへの拡張も可能になる。
図2には、3つのクロック・ソース(AClk信号を生成するアドレス・クロック104、WClk信号を生成する書込クロック105、およびRClk信号を生成する読取クロック106)も示されており、これらが、3種類の情報転送のためのクロッキング基準信号を生成する。これらのクロック・ソースのそれぞれが、それに関連する信号バスと並列のクロック・ワイヤを駆動する。システム内のクロック・ソースの位置は、クロック・ソースが対応するクロック信号を駆動する、クロック線上の物理的位置が、バス線の関係する駆動点に隣接し、特定のバスのクロックの伝搬が、一般に、関連するバス上の関係する情報の伝搬を追跡するようになっていることが好ましい。たとえば、アドレス・クロック(AClkクロック104)の位置決めは、アドレス信号がアドレス・バス107へ駆動される物理位置に近いことが好ましい。そのような構成では、アドレス・クロックが、回路全体を通じて伝搬する時に、アドレス・クロック信号線と全般的に同一のルートをたどるバスに沿って伝搬するアドレス信号が経験する遅延に類似する遅延を経験する。
各バスのクロック信号は、関連するバスの信号の最大ビット・レートに関係する。この関係は、通常は、整数または整数比である。たとえば、最大データ・レートを、データ・クロック信号の周波数の2倍とすることができる。クロック・ソースの1つまたは2つを「仮想」クロック・ソースとすることも可能であり、この場合に、3つのクロック・ソースが、互いに整数分数比(N/M)関係になり、それらのいずれをも、フェーズ・ロック・ループ(PLL)技法を使用して周波数および位相をセットすることによって、他の2つのいずれかから合成することができる。仮想クロック・ソースは、回路内の実際のクロック・ソースの数を最小にすることができる手段を表す。たとえば、WClkクロックを、メモリ・デバイスが受け取るアドレス・クロック(AClk)から導出し、メモリ・デバイスが、外部ソースから実際にWClkクロックを受け取る必要をなくすことができる。したがって、メモリ・デバイスは、実際には独自の個別に生成されたWClkクロックを受け取らないが、AClkクロックから生成されたWClkクロックは、機能的に同等である。合成されたクロック信号の位相は、図示の位置のクロック・ソースによって生成された場合と同一になるように調整される。
図示のクロック信号のいずれでも、代替案では、情報が関連するバス上に存在する時に限ってアサートされる非周期的信号(たとえばストローブ制御信号)とすることができる。クロック・ソースに関して上で説明したように、非周期的信号ソースは、物理的な意味で、非周期的信号に関連する伝搬遅延がそれが対応するバス上の信号の伝搬遅延と全般的に一致するように、それが対応する適当なバスに隣接して位置決めされることが好ましい。
図3は、他の図のタイミング図で使用されるアドレス・タイミングおよび制御タイミングの表記を示すタイミング図である。図3では、AClk信号301の立ち上がりエッジ302が、アドレス情報ACa 305の送出中の時刻307に発生する。AClk信号の立ち上がりエッジ303が、アドレス情報ACb306の送出中の時刻308に発生する。時刻308は、AClk信号301の次の立ち上がりエッジ304の時刻309より時間tCCだけ前に発生する。時間tCCは、メモリ・コントローラ・コンポーネントのクロック回路のサイクル・タイムを表す。タイミング図の破線は、信号のうちで、時間的にアドレス情報またはデータ情報と同時の部分を示すのに使用される。たとえば、AClk信号301には、アドレス情報ACa 305の存在に対応する時間的部分と、アドレス情報ACb 306の存在に対応するもう1つの時間的部分が含まれる。アドレス情報は、アドレス信号としてアドレス・バスを介して送出することができる。
1ビット/ワイヤがtCCごとに発生する場合には、アドレス・ビット311が、サイクル310中に送出される。2ビット/ワイヤがtCCごとに発生する場合には、アドレス・ビット313および314が、サイクル312中に送出される。4ビット/ワイヤがtCCごとに発生する場合には、アドレス・ビット316、317、318、および319が、サイクル315中に送出される。8ビット/ワイヤがtCCごとに発生する場合には、アドレス・ビット321、322、323、324、325、326、327、および328が、サイクル320中に送出される。各ビット・ウィンドウの駆動点およびサンプル点を、使用されるドライバおよびサンプラの回路技法に応じて、オフセット(1ビット時間すなわちtCC/NACまで)だけ遅らせるか進めることができることに留意されたい。パラメータNACおよびNDQは、それぞれアドレス/制御ワイヤおよびデータ・ワイヤのtCCごとのビット数を表す。一実施形態では、固定オフセットを使用する。駆動/サンプル点とビット・ウィンドウの間のオフセットは、駆動コンポーネントとサンプリング・コンポーネントの間で一貫性を有しなければならない。特定のシステムで、バスの駆動ポイントに関連するオフセットのいずれもが、システム全体を通じて一貫性を有することが好ましい。同様に、バスに関して理解されるサンプリング・オフセットも、一貫性を有しなければならない。たとえば、データが、あるデータ・バス線の関係するクロック信号の立ち上がりエッジに全般的に対応する点で駆動されることが期待される場合に、その理解されるオフセット(またはその不在)が、すべてのデータ線について一貫した形で使用されることが好ましい。バスへのデータの駆動に関連するオフセットを、そのバスによって搬送されるデータのサンプリングに関連するオフセットと完全に異なるものにすることができることに留意されたい。したがって、上の例を継続すると、全般的に立ち上がりエッジと同時に駆動されるデータのサンプル点は、立ち上がりエッジに対して180°位相はずれとし、データの有効ウィンドウがサンプリング点によってよりよくターゲティングされるようにすることができる。
図4は、他の図のタイミング図で使用されるデータ・タイミングの表記を示すタイミング図である。図4では、WClk信号401の立ち上がりエッジ402が、書込データ情報Da 405の送出中の時刻407に発生する。WClk信号401の立ち上がりエッジ403が、時刻408に発生する。WClk信号401の立ち上がりエッジ404が、読取データ情報Qb 406の送出中の時刻409に発生する。時刻407は、時刻408から時間tCCだけ離れており、時刻408は、時刻409から時間tCCだけ離れている。時間tCCは、クロック・サイクルの持続時間を表す。RClk信号410に、立ち上がりエッジ411および立ち上がりエッジ412が含まれる。これらの立ち上がりエッジを、RClk信号410のクロック・サイクルに対する基準として使用することができる。たとえば、書込データ情報Da 405の送出は、RClk信号410の、立ち上がりエッジ411を含むクロック・サイクル中に発生し、読取データ情報Qb406の送出は、RClk信号410の、立ち上がりエッジ412を含むクロック・サイクル中に発生する。当業者に明白であるように、アドレス・クロックに関連するクロック・サイクル・タイムは、読取クロックまたは書込クロックに関連するクロック・サイクル・タイムと異なるものとすることができる。
書込データ情報は、書き込まれる情報の要素であり、データ・バス上で書込データ信号として送出することができる。読取データ情報は、読み取られる情報の要素であり、データ・バス上で読取データ信号として送出することができる。表記Dxは、書込データ情報xを表すのに使用され、表記Qyは、読取データ情報yを表すのに使用される。信号は、アドレス信号、書込データ信号、読取データ信号、または他の信号のいずれであっても、要素タイム・インターバルと称する時間の間、導体またはバスに印加することができる。そのような要素タイム・インターバルを、タイミング信号を搬送する導体またはバス上で発生するイベントと関連付けることができ、そのようなイベントを、タイミング信号イベントと称する場合がある。そのようなタイミング信号の例には、クロック信号、別の信号または情報の要素から導出されるタイミング信号、および、タイミングをそこから導出することができる他の信号が含まれる。メモリ・アクセス動作では、アドレス信号がアドレス・バスに印加され始める時からそのアドレス信号に対応するデータ信号がデータ・バスに印加され始める時までの時間を、アクセス・タイム・インターバルと称することができる。
1ビット/ワイヤがtCCごとに発生する場合には、データ・ビット415が、サイクル414中に送出される。2ビット/ワイヤがtCCごとに発生する場合には、データ・ビット417および418が、サイクル416中に送出される。4ビット/ワイヤがtCCごとに発生する場合には、データ・ビット420、421、422、および423が、サイクル419中に送出される。8ビット/ワイヤがtCCごとに発生する場合には、データ・ビット425、426、427、428、429、430、431、および432が、サイクル424中に送出される。各ビット・ウィンドウの駆動点およびサンプル点を、使用されるドライバおよびサンプラの回路技法に応じて、オフセット(1ビット時間すなわちtCC/NDQまで)だけ遅らせるか進めることができることに留意されたい。一実施形態では、固定オフセットを使用する。駆動/サンプル点とビット・ウィンドウの間のオフセットは、駆動コンポーネントとサンプリング・コンポーネントの間で一貫性を有しなければならない。たとえば、データがコントローラ側の適当なクロック信号の立ち上がりエッジにサンプリングされるように、データ・ウィンドウが位置決めされると仮定すると、有効なデータも回路内のその位置での対応するクロックの立ち上がりエッジに存在すると仮定されるように、類似する規約をメモリ・デバイスで使用しなければならない。
1ビット/ワイヤがtCCごとに発生する場合には、データ・ビット434が、サイクル433中に送出される。2ビット/ワイヤがtCCごとに発生する場合には、データ・ビット436および437が、サイクル435中に送出される。4ビット/ワイヤがtCCごとに発生する場合には、データ・ビット439、440、441、および442が、サイクル438中に送出される。8ビット/ワイヤがtCCごとに発生する場合には、データ・ビット444、445、446、447、448、449、450、および451が、サイクル443中に送出される。各ビット・ウィンドウの駆動点およびサンプル点を、使用されるドライバおよびサンプラの回路技法に応じて、オフセット(1ビット時間すなわちtCC/NDQまで)だけ遅らせるか進めることができることに留意されたい。一実施形態では、固定オフセットを使用する。駆動/サンプル点とビット・ウィンドウの間のオフセットは、駆動コンポーネントとサンプリング・コンポーネントの間で一貫性を有しなければならない。上で述べたように、特定のシステムで、あるバスの駆動点またはサンプリング点に関連するオフセットは、システム全体を通じて一貫性を有することが好ましい。
メモリ・コンポーネントのカラム・サイクル・タイムは、連続するカラム・アクセス動作(読取または書込)を実行するのに必要なタイム・インターバルを表す。図示の例では、AClkクロック信号、RClkクロック信号、およびWClkクロック信号が、カラム・サイクル・タイムに等しいサイクル・タイムを有するものとして図示されている。当業者に明白であるように、システムで使用されるクロック信号のサイクル・タイムは、他の実施形態では、カラム・サイクル・タイムと異なるものとすることができる。
その代わりに、クロックのすべてが、カラム・サイクル・タイムと異なるサイクル・タイムを有することができる。バス上での信号の送出または受取に適当な速度のクロックは、分配されるクロックと合成されたクロックの間に整数比または整数分数比がある限り、必ず、分配されるクロックから合成することができる。前に述べたように、必要なクロックのいずれであっても、他のバスからの分配されるクロックのいずれかから合成することができる。
この説明では、タイミング図をできる限り単純にするために、各tCCインターバル中に各ワイヤ上で単一のビットがサンプリングされるか駆動されると仮定する。しかし、各tCCインターバル中に各信号ワイヤ上で送出されるビット数を、変更することができる。パラメータNACおよびNDQは、それぞれアドレス/制御ワイヤおよびデータ・ワイヤの、tCCごとのビット数を表す。分配されるクロックまたは合成されるクロックは、tCCごとに複数のビットを駆動し、サンプリングするのに適当なクロック・エッジを作るために逓倍される。各ビット・ウィンドウの駆動点およびサンプル点を、使用されるドライバおよびサンプラの回路技法に応じて、オフセット(1ビット時間すなわちtCC/NACまたはtCC/NDQまで)だけ遅らせるか進めることができることに留意されたい。一実施形態では、固定オフセットを使用する。駆動/サンプル点とビット・ウィンドウの間のオフセットは、駆動コンポーネントとサンプリング・コンポーネントの間で一貫性を有しなければならない。やはり、上で述べたように、特定のシステムで、あるバスの駆動点またはサンプリング点に関連するオフセットは、システム全体を通じて一貫性を有することが好ましい。
図5は、本発明の実施形態による、アドレスおよび制御バス(Addr/CtrlまたはACSM)上で通信される信号のタイミングを示すタイミング図である。このバスには、このバスと本質的に同一のワイヤ・パスを見るクロック信号AClkSMが付随する。添字(S、M)は、特定のモジュールMまたは特定のスライスSでのバスまたはクロック信号を示す。コントローラは、スライス0になるように定義される。
AClkクロック信号501の波形に、メモリ・コントローラ・コンポーネントでのAClkクロック信号のタイミングが示されている。AClkクロック信号501の立ち上がりエッジ502が、時刻510に発生し、アドレス情報ACa 518の送出に関連する。AClkクロック信号501の立ち上がりエッジ503が、時刻511に発生し、アドレス情報ACb 519の送出に関連する。
AClkクロック信号520の波形に、スライス1に配置されたメモリ・コンポーネントでのAClkクロック信号のタイミングが示されている。AClkクロック信号520は、信号501からtPD0の遅延だけ遅れている。たとえば、信号520の立ち上がりエッジ523は、信号501のエッジ502からtPD0の遅延だけ遅れている。アドレス情報ACa 537が、信号520の立ち上がりエッジ523に関連する。アドレス情報ACb 538が、信号520の立ち上がりエッジ525に関連する。
AClkクロック信号539の波形に、スライスNSに配置されたメモリ・コンポーネントでのAClkクロック信号のタイミングが示されている。AClkクロック信号539は、信号520からtPD1の遅延だけ遅れている。たとえば、信号539の立ち上がりエッジ541は、信号520のエッジ523からtPD1の遅延だけ遅れている。アドレス情報ACa 548が、信号539の立ち上がりエッジ541に関連する。アドレス情報ACb 549が、信号539の立ち上がりエッジ542に関連する。
クロック信号AClkは、カラム・サイクル・タイムに対応するサイクル・タイムを有するものとして図示されている。前に述べたように、この信号は、コントローラおよびメモリ・コンポーネントがバス上の情報をサンプリングし、駆動するのに必要なタイミング点を生成できるように周波数および位相が制約される限り、より短いサイクル・タイムを有することもできる。同様に、バスは、tCCインターバルごとに送出される単一ビット/ワイヤを有するものとして図示されている。前に述べたように、コントローラおよびメモリ・コンポーネントが、バス上の情報をサンプリングし、駆動するのに必要なタイミング点を生成できるので、各tCCインターバルに複数のビットを転送することができる。バスの実際の駆動点(データ信号、アドレス信号、または制御信号もしくはこれらの組合せがバスに印加される点)が、示されたものからのオフセット(クロックの立ち上がりエッジおよび立ち下がりエッジに対して)を有することができ、これが、コントローラおよびメモリ・コンポーネント内の送出回路および受取回路の設計に依存することに留意されたい。一実施形態では、固定オフセットを使用する。駆動/サンプル点とビット・ウィンドウの間のオフセットは、駆動コンポーネントとサンプリング・コンポーネントの間で一貫性を有しなければならない。上で繰り返したように、特定のシステムで、あるバスの駆動点またはサンプリング点に関連するオフセットは、システム全体を通じて一貫性を有することが好ましい。
図5で、クロックAClkSMおよびバスACSMが、コントローラから第1スライスに伝搬する際に、tPD0の遅延があることに留意されたい。図示されているように、AClk信号520は、時間および空間においてAClk信号501からシフトされている。また、クロックAClkSMおよびバスACSMが、第1スライスから最後のスライスNSに伝搬する際に、第2の遅延tPD1があることに留意されたい。クロックおよびバスが、各スライスの間を進む際に、tPD1/(NS−1)の遅延がある。この計算では、スライスの間の全般的に等しい間隔が仮定され、そのような物理的特性がシステムに存在しない場合には、遅延がこの式に従わないことに留意されたい。したがって、図示されているように、AClk信号539は、時間および空間においてAClk信号520からシフトされている。その結果、NS個のメモリ・コンポーネントのそれぞれが、時間的にわずかに異なる点で、アドレスおよび制御バスをサンプリングする。
図6は、本発明の実施形態による、データ・バス(DQSM)上で通信される信号のタイミングを示すタイミング図である。このバスには、本質的にこのバスと同一のワイヤ・パスを見る2つのクロック信号RClkSMおよびWClkSMが付随する。添字(S、M)は、特定のモジュールMまたは特定のスライスSでのバスまたはクロック信号を示す。コントローラは、モジュール0になるように定義される。2つのクロックは、反対方向に進む。WClkSMには、コントローラによって送出され、メモリ・コンポーネントによって受け取られる書込データが付随する。RClkSMには、メモリ・コンポーネントによって送出され、コントローラによって受け取られる読取データが付随する。説明する例では、読取データ(「Q」によって表される)および書込データ(「D」によって表される)が、データ・バスを同時に占有しない。他の実施形態では、同一の導体上で搬送される複数の波形を区別でき、分解できるようにする加法的シグナリングを可能にする追加回路が設けられる場合に、こうでない場合があることに留意されたい。
WClkクロック信号601の波形に、メモリ・コントローラ・コンポーネントでのWClkクロック信号のタイミングが示されている。立ち上がりエッジ602が、時刻610に発生し、モジュール0のスライス1に存在する書込データ情報Da 618に関連する。立ち上がりエッジ607が、時刻615に発生し、モジュール0のスライス1に存在する書込データ情報Dd 621に関連する。立ち上がりエッジ608が、時刻616に発生し、モジュール0のスライス1に存在する書込データDe622に関連する。
RClkクロック信号623の波形に、メモリ・コントローラ・コンポーネント(モジュール0)でのRClkクロック信号のタイミングが示されている。立ち上がりエッジ626が、メモリ・コントローラ・コンポーネント(モジュール0のスライス1)に存在する読取データ情報Qb 619に関連する。立ち上がりエッジが、メモリ・コントローラ・コンポーネント(モジュール0のスライス1)に存在する読取データ情報Qc 620に関連する。
WClkクロック信号632の波形に、モジュール1のスライス1にあるメモリ・コンポーネントでのWClkクロック信号のタイミングが示されている。立ち上がりエッジ635が、モジュール1のスライス1に存在する書込データ情報Da 649に関連する。立ち上がりエッジ645が、モジュール1のスライス1に存在する書込データ情報Dd 652に関連する。立ち上がりエッジ647が、モジュール1のスライス1に存在する書込データ情報De 653に関連する。
RClkクロック信号654の波形に、モジュール1のスライス1のメモリ・コンポーネントでのRClkクロック信号のタイミングが示されている。立ち上がりエッジ658が、モジュール1のスライス1に存在する読取データ情報Qb650に関連する。立ち上がりエッジ660が、モジュール1のスライス1に存在する読取データ情報Qc 651に関連する。
クロック信号は、tCCに対応するサイクル・タイムを有するものとして図示されている。前に述べたように、クロック信号は、コントローラおよびメモリ・コンポーネントがバス上の情報をサンプリングし、駆動するのに必要なタイミング点を生成できるように周波数および位相が制約される限り、より短いサイクル・タイムを有することもできる。同様に、バスは、単一ビット/ワイヤを有するものとして図示されている。前に述べたように、コントローラおよびメモリ・コンポーネントが、バス上の情報をサンプリングし、駆動するのに必要なタイミング点を生成できるので、各tCCインターバルに複数のビットを転送することができる。バスの実際の駆動点が、示されたものからのオフセット(クロックの立ち上がりエッジおよび立ち下がりエッジに対して)を有することができ、これが、コントローラおよびメモリ・コンポーネント内の送出回路および受取回路の設計に依存することに留意されたい。一実施形態では、固定オフセットを使用する。駆動/サンプル点とビット・ウィンドウの間のオフセットは、駆動コンポーネントとサンプリング・コンポーネントの間で一貫性を有しなければならない。
図6では、クロックWClkSMおよびバスDQSM(書込データを有する)が、コントローラから第1モジュールのスライスまで伝搬する際に、遅延tPD2があることに留意されたい。したがって、WClkクロック信号632は、時間および空間においてWClkクロック信号601からシフトされている。また、クロックRClkSMおよびバスDQSM(読取データを有する)が、第1モジュールのスライスからコントローラまで伝搬する際に、ほぼ等しい遅延tPD2があることに留意されたい。したがって、RClkクロック信号623は、時間および空間においてRClkクロック信号654からシフトされている。
その結果、コントローラおよびメモリ・コンポーネントは、書込データと読取データを同時に駆動することを試みなくなるように、その送出ロジックを調整されなければならない。図6の例には、書込−読取−読取−書込−書込転送があるシーケンスが示されている。読取−読取転送および書込−書込転送は、連続するtCCインターバールに行うことができることがわかる。というのは、両方のインターバルでデータが同一方向に進むからである。しかし、書込−読取転送および読取−書込転送では、ギャップ(バブル)を挿入し、その結果、ドライバが、前のインターバールに駆動されたデータがもはやバス上にない(バス・ワイヤのいずれかの端の終端コンポーネントによって吸収された)時に限ってターン・オンするようにする。
図6では、読取クロックRClkSMおよび書込クロックWClkSMが、各メモリ・コンポーネントで同相である(しかし、各メモリ・コンポーネントでのこれらのクロックの相対位相は、他のメモリ・コンポーネントと異なる。これは、後で、システム全体のタイミングを述べる時に示す)。この位相一致の選択が、使用することができた複数の可能な代替案の1つであることに留意されたい。他の代替案のいくつかを、後で説明する。
各メモリ・コンポーネント(スライス)で読取クロックと書込クロックを一致させた結果として、メモリ・コンポーネントで(図6の最下部)、読取データQb 650を有するtCCインターバルが、書込データDa 649を有するtCCインターバルの直後に続くように見えるが、コントローラでは(図6の最上部)、読取データ・インターバルQb 619と書込データ・インターバルDa 618の間に2×tPD2のギャップがある。コントローラでは、読取データQc620と書込データDd 621の間に、(2×tCC−2×tPD2)の第2のギャップがある。読取データQc 651と書込データDd 621の間に、(2×tCC)のギャップがある。メモリ・コンポーネントとコントローラでのギャップの合計が、2×tCCになることに留意されたい。
次に、システム全体のタイミングを説明する。例のシステムでは、各メモリ・コンポーネントでAClkSMクロック、RClkSMクロック、およびWClkSMクロックの位相を整列させる(スライス番号は、1からNSまで変化し、モジュール番号は、1に固定される)。これは、各メモリ・コンポーネントが、単一のクロック・ドメイン内で動作でき、ドメイン・クロッシングの問題が回避されるという利益を有する。アドレスおよび制御クロックAClkSMが、各メモリ・コンポーネントを通って流れるので、各メモリ・スライスのクロック・ドメインは、隣接するスライスからわずかにオフセットする。この位相設定決定のコストは、コントローラが、各スライスの読取クロックおよび書込クロックを異なる位相値に調整しなければならないことである。これは、コントローラ内に1+(2×NS)個のクロック・ドメインがあり、これらのドメインの間のクロッシングが、効率的に非常に重要になることを意味する。他の位相制約が、可能であり、後で説明する。
図7は、本発明の実施形態による、メモリ・コントローラ・コンポーネントでのシステム・タイミングを示すタイミング図である。前と同様に、コントローラは、制御およびアドレス・バスAClkS0M1上で、動作の書込−読取−読取−書込シーケンスを送る。Da書込データ情報が、WClkS1M0バスおよびWClkSNsM0バス上で送られ、その結果、Da書込データ情報が、アドレスおよび制御情報ACaの1サイクル後に各スライスのメモリ・コンポーネントに達することが好ましい。これは、WClkS1M0クロックの位相を、AClkS0M1クロックの位相に対して全般的に(tPD0−tPD2)と同等にする(正は遅れ、負は進みを意味する)ことによって行われる。これによって、これらが、第1モジュールの第1スライスのメモリ・コンポーネントで同相になる。同様に、WClkSNsM0クロックの位相は、AClkS0M1クロックの位相に対して全般的に(tPD0+tPD1−tPD2)と同等になるように調整される。伝搬遅延を近似するためのクロックの位相調節を、所望の調整からわずかに異なるものとしながら、成功裡のシステム動作を可能にするように、ある許容範囲がシステムに組み込まれることが好ましいことに留意されたい。
類似する形で、RClkS1M0クロックの位相を、AClkS0M1クロックの位相に対して、全般的に(tPD0+tPD2)と同等になるように調整する。これによって、これらのクロックが、第1モジュールの最終スライスのメモリ・コンポーネントで同相になる。同様に、RClkSNsM0クロックの位相を、AClkS0M1クロックの位相に対して式(tPD0+tPD1+tPD2)に従って調整して、RClkSNsM0クロックおよびAClkS0M1クロックが、第1モジュールの最終スライスのメモリ・コンポーネントで同相になるようにする。
AClkクロック信号701の波形に、スライス0にあるものと示されたメモリ・コントローラ・コンポーネントでのAClkクロック信号が示されている。立ち上がりエッジ702が、時刻710に発生し、スライス0に存在するアドレス情報ACa 718に関連する。立ち上がりエッジ703が、時刻711に発生し、スライス0に存在するアドレス情報ACb 719に関連する。立ち上がりエッジ704が、時刻712に発生し、スライス0に存在するアドレス情報ACc 720に関連する。立ち上がりエッジ707が、時刻715に発生し、スライス0に存在するアドレス情報ACd 721に関連する。
WClkクロック信号722の波形に、WClkクロック信号がモジュール0のメモリ・コントローラ・コンポーネントに存在する時のスライス1のメモリ・コンポーネントのWClkクロック信号が示されている。立ち上がりエッジ724が、時刻711に発生し、存在する書込データ情報Da 730に関連する。立ち上がりエッジ729が、時刻716に発生し、存在する書込データ情報Dd733に関連する。
RClkクロック信号734の波形に、RClkクロック信号がモジュール0のメモリ・コントローラ・コンポーネントに存在する時のスライス1のメモリ・コンポーネントのRClkクロック信号が示されている。立ち上がりエッジ737が、存在する読取データ情報Qb 731に関連する。立ち上がりエッジ738が、存在する読取データ情報Qc 732に関連する。
WClkクロック信号741の波形に、WClkクロック信号がモジュール0のメモリ・コントローラ・コンポーネントに存在する時のスライスNSのメモリ・コンポーネントのWClkクロック信号が示されている。書込データ情報Da756が、信号741のエッジ744に関連する。書込データ情報Dd 759が、信号741のエッジ754に関連する。
RClkクロック信号760の波形に、RClkクロック信号がモジュール0のメモリ・コントローラ・コンポーネントに存在する時のスライスNSのメモリ・コンポーネントのRClkクロック信号が示されている。読取データ情報Qb757が、信号760のエッジ764に関連する。読取データ情報Qc 758が、信号760のエッジ766に関連する。
図8は、本発明の実施形態による、ランク1のスライス1のメモリ・コンポーネントでのクロックAClkS1M1、WClkS1M1、およびRClkS1M1の整列を示すタイミング図である。3つのクロックのすべてが、コントローラで作られるAClkS0M1クロックに対してtPD0だけ遅れている。
AClkクロック信号801の波形に、モジュール1のスライス1にあるメモリ・コンポーネントのAClkクロック信号が示されている。アドレス情報ACa 822が、信号801のエッジ802に関連する。アドレス情報ACb 823が、信号801のエッジ804に関連する。アドレス情報ACc 824が、信号801のエッジ806に関連する。アドレス情報ACd 825が、信号801のエッジ812に関連する。
WClkクロック信号826の波形に、モジュール1のスライス1にあるメモリ・コンポーネントのWClkクロック信号が示されている。書込データ情報Da 841が、信号826のエッジ829に関連する。書込データ情報Dd 844が、信号826のエッジ839に関連する。
RClkクロック信号845の波形に、モジュール1のスライス1にあるメモリ・コンポーネントのRClkクロック信号が示されている。読取データ情報Qb 842が、信号845のエッジ850に関連する。読取データ情報Qc 843が、信号845のエッジ852に関連する。
図9は、本発明の実施形態による、モジュール1のランク1のスライスNSのメモリ・コンポーネントでのクロックAClkSNsM1、WClkSNsM1、およびRClkSNsM1の整列を示すタイミング図である。3つのクロックのすべてが、コントローラで作られるAClkS0M1クロックに対して(tPD0+tPD1)だけ遅れている。
AClkクロック信号901の波形に、モジュール1のスライスNSにあるメモリ・コンポーネントのAClkクロック信号が示されている。信号901の立ち上がりエッジ902が、アドレス情報ACa 917に関連する。信号901の立ち上がりエッジ903が、アドレス情報ACbに関連する。信号901の立ち上がりエッジ904が、アドレス情報ACc 919に関連する。信号901の立ち上がりエッジ907が、アドレス情報ACd 920に関連する。
WClkクロック信号921の波形に、モジュール1のスライスNSにあるメモリ・コンポーネントのWClkクロック信号が示されている。信号921の立ち上がりエッジ923が、書込データ情報Da 937に関連する。信号921の立ち上がりエッジ928が、書込データ情報Dd 940に関連する。
RClkクロック信号929の波形に、モジュール1のスライスNSにあるメモリ・コンポーネントのRClkクロック信号が示されている。信号929の立ち上がりエッジ932が、読取データ情報Qb 938に関連する。信号929の立ち上がりエッジ933が、読取データ情報Qc 939に関連する。
図8および9の両方で、各メモリ・コンポーネントから見た時の、アドレス/制御情報(たとえば図9のACa 917)とそれに付随する読取情報または書込情報(この例では図9のDa 937)との間に1つのtCCサイクル遅延があることに留意されたい。これは、他のトポロジの場合に異なる可能性がある、すなわち、より長いアクセス遅延がある可能性がある。一般に、メモリ・コンポーネントでの書込動作のアクセス遅延は、データ・バスの使用率を最大にするために、読取動作に関するアクセス遅延と等しいか、ほぼ等しくしなければならない。
図10から18に、図5から9に示されたものとほとんど同一のアドレスおよびデータのタイミング関係を使用する例示的システムの詳細を示す。具体的に言うと、3つのクロックのすべてが、各メモリ・コンポーネントで同相である。しかし、この例のシステムは、前の説明に対する複数の相違を有する。第1に、2ビット/ワイヤが、tCCインターバルごとにACバス(アドレス/制御バスまたは単にアドレス・バス)に印加される。第2に、8ビット/ワイヤが、tCCインターバルごとにDQバスに印加される。第3に、クロック信号は、ACバスに付随するが、DQバスの読取クロックおよび書込クロックは、ACバスのクロックから合成される。
図10は、本発明の実施形態による、図1に示されたものなどのメモリ・システムの1つのメモリ・ランク(メモリ・コンポーネントの1つまたは複数のスライス)のさらなる詳細を示すブロック図である。このランクを構成するメモリ・コンポーネントの内部ブロックは、外部のACバスまたはDQバスに接続される。これらの外部バス上の直列化されたデータは、内部バス上の並列形式との間で変換され、内部バスは、メモリ・コア(システムの情報を保持するのに使用されるストレージ・セルのアレイ)に接続される。図10に、メモリ・ランクに接続されたすべてで32ビットのDQバスが示されていることに留意されたい。これらの32ビットは、複数の等しいサイズのスライスに分割され、バスの各スライスが、1つのメモリ・コンポーネントにルーティングされる。したがって、スライスは、DQバスのうちで別々のメモリ・コンポーネントにルーティングされる部分に基づいて定義される。図10に示された例では、特定の例のシステムの32データ・ビットの組全体をサポートするメモリ・コンポーネントまたはメモリ・デバイスが示されている。他の実施形態では、そのようなシステムに、2つのメモリ・デバイスを含めることができ、各メモリ・デバイスが、32データ・ビットの半分をサポートする。したがって、これらのメモリ・デバイスのそれぞれに、データ・バス全体のうちでそのデバイスが責任を負う部分を各デバイスが個別にサポートできるようにする、適当なデータ送出ブロック、データ受取ブロック、およびメモリ・コアの分配が含まれる。データ・ビットの数は、32である必要はなく、変更できることに留意されたい。
AClk信号は、ACバスに付随するクロックである。これは、受け取られ、メモリ・コンポーネントによって生成されるすべてのクロック信号の周波数および位相の基準として使用される。他のクロックは、ClkM2、ClkM8、およびClkMである。これらは、それぞれ、AClkの周波数の2倍、8倍、および1倍である。すべてのクロックの立ち上がりエッジが、整列される(位相オフセットなし)。周波数および位相の調整は、通常は、あるタイプのフェーズ・ロック・ループ(PLL)回路を用いて行われるが、他の技法を使用することもできる。さまざまな異なる適当なPLL回路が、当技術分野で周知である。フィードバック・ループに、さまざまなクロックを受取ブロックおよび送出ブロックならびにメモリ・コアに分配するのに必要なクロック・ドライバのスキューが含まれる。メモリ・コアはClkMドメインで動作すると仮定する。
メモリ・コンポーネント116に、メモリ・コア1001、PLL 1002、PLL 1003、およびPLL 1004が含まれる。AClkクロック信号109が、バッファ1015によって受け取られ、バッファ1015は、クロック信号1019をPLL 1002、1003、および1004に供給する。さまざまなPLL設計が、当技術分野で周知であるが、本明細書に記載の例の実施形態で実施されるいくつかのPLLは、所望の特定の機能性を可能にするために、多少のカスタマイズを必要とする。したがって、本明細書で説明するいくつかの実施形態では、PLL内のさまざまなブロックの特定の動作を、さらに詳細に説明する。したがって、本明細書で説明する例の実施形態に含まれるPLL構造のいくつかが、極端に詳細には説明されないが、そのようなPLLによって達成される全般的な目的が、当業者に周知のさまざまな回路を介して容易に認識可能であることは、当業者に明白である。PLL 1002には、位相比較器および電圧制御発振器(VCO)1005が含まれる。PLL 1002は、クロック信号ClkM 1024を、メモリ・コア1001、アドレス/制御受取ブロック204、データ受取ブロック205、およびデータ送出ブロック206に供給する。
PLL 1003には、プリスケーラ1009、位相比較器およびVCO 1010、および分周器1011が含まれる。プリスケーラ1009は、周波数分周器(分周器1011を実装するのに使用されるものなど)として実装することができ、周波数分周の必要がない補償用遅延を供給する。プリスケーラ1009は、信号1021を位相比較器およびVCO 1010に供給する。VCO 1010内の位相比較器は、2つの入力と1つの出力を有する三角形として表されている。位相比較器1010の機能性は、その入力の1つであるフィードバック信号1023の位相が基準信号1021に対して全般的に位相整列されることを保証する出力信号を作るように構成されることが好ましい。この規約は、本明細書で説明する他のPLLに含まれる類似する構造に適用可能であることが好ましい。分周器1011は、フィードバック信号1023を位相比較器およびVCO1010に供給する。PLL 1003は、クロック信号ClkM2 1025をアドレス/制御受取ブロック204に供給する。
PLL 1004には、プリスケーラ1006、位相比較器およびVCO 1007、および分周器1008が含まれる。プリスケーラ1006は、周波数分周器(分周器1011を実装するのに使用されるものなど)として実装することができ、周波数分周の必要がない補償用遅延を供給する。プリスケーラ1006は、信号1020を位相比較器およびVCO 1007に供給する。分周器1008は、フィードバック信号1022を位相比較器およびVCO 1007に供給する。PLL 1004は、クロック信号ClkM8 1026をデータ受取ブロック205およびデータ送出ブロック206に供給する。
アドレス・バス107は、バッファ1012を介して、結合1016を介してアドレス/制御受取ブロック204に結合される。データ送出ブロック206のデータ出力1018は、バッファ1014を介してデータ・バス108に結合される。データ・バス108は、バッファ1013を介してデータ受取ブロック205のデータ入力1017に結合される。
アドレス/制御受取ブロック204は、内部アドレス・バス1027を介してメモリ・コア1001にアドレス情報を供給する。データ受取ブロック205は、内部書込データ・バス1028を介してメモリ・コア1001に書込データを供給する。メモリ・コア1001は、内部読取データ・バス1029を介してデータ送出ブロック206に読取データを供給する。
図11は、本発明の実施形態による、図10の受取ブロックおよび送出ブロックで使用されるロジックを示すブロック図である。この図では、わかりやすくするために、各バスの1ビットだけに関する要素が図示されている。そのような要素が、バスのビットごとに複製される場合があることを理解されたい。
アドレス/制御受取ブロック204に、レジスタ1101、1102、および1103が含まれる。アドレス・バス導体1016が、レジスタ1101および1102に結合され、レジスタ1101および1102は、一緒にシフト・レジスタを形成し、ClkM2クロック信号1025によってクロッキングされ、それぞれ結合1104および1105を介してレジスタ1103に結合される。レジスタ1103は、ClkMクロック信号1024によってクロッキングされ、内部アドレス・バス1027にアドレス/制御情報を供給する。図11のレジスタ1101および1102の表現は、これらがシフト・レジスタを形成し、1サイクル中にレジスタ1101に入るデータが、後続サイクル中にレジスタ1101に新しいデータが入る時にレジスタ1102に転送されることを意味すると理解されることが好ましい。図11に示された特定の実施形態では、データの移動が、クロック信号ClkM2 1025によって制御される。クロックClkM2 1025が、クロックClkM 1024の周波数の2倍で動作する場合に、受取ブロック204は、一般に、直列−並列シフト・レジスタとして動作し、2つの連続する直列ビットが、信号線RAC 1027に出力される前に、一緒に2ビット並列フォーマットにグループ化される。したがって、図で、複数のレジスタが類似する構成で一緒にグループ化される他の類似する表現は、レジスタによって形成されるパスに沿って直列にデータをシフトできるようにするのに必要な相互接続を含むと理解されることが好ましい。例には、送出ブロック206に含まれるレジスタ1123から1130と、受取ブロック205に含まれるレジスタ1106から1113が含まれる。その結果、入力1016の直列情報が、出力1027で並列形式に変換される。
データ受取ブロック205に、レジスタ1106、1107、1108、1109、1110、1111、1112、1113、および1114が含まれる。データ入力1017は、レジスタ1106、1107、1108、1109、1110、1111、1112、および1113に結合され、これらのレジスタは、ClkM8クロック信号1026によってクロッキングされ、それぞれ結合1115、1116、1117、1118、1119、1120、1121、および1122を介してレジスタ1114に結合される。レジスタ1114は、ClkMクロック信号1024によってクロッキングされ、書込データを内部書込データ・バス1028に供給する。その結果、入力1017の直列情報が、出力1028の並列形式に変換される。
データ送出ブロック206に、レジスタ1123、1124、1125、1126、1127、1128、1129、1130、および1131が含まれる。内部読取データ・バス1029からの読取データが、レジスタ1131に供給され、レジスタ1131は、ClkMクロック1024によってクロッキングされ、結合1132、1133、1134、1135、1136、1137、1138、および1139を介してレジスタ1123、1124、1125、1126、1127、1128、1129、および1130に結合される。レジスタ1123、1124、1125、1126、1127、1128、1129、および1130は、ClkM8クロック1026によってクロッキングされ、データ出力1018を供給する。その結果、入力1029の並列情報が、出力1018の直列形式に変換される。
図示されているのは、アドレス/制御データおよび書込データをサンプリングし、読取データを駆動するのに必要なレジスタ要素である。この例では、各tCCインターバルにアドレス/制御(AC[i])ワイヤごとに2ビットが転送されることと、各tCCインターバルに読取データ(Q[i])ワイヤまたは書込データ(D[i])ワイヤごとに8ビットが転送されることが仮定されている。プライマリ・クロックClkM(tCCのサイクル・タイムを有する)のほかに、生成される2つの他の整列されるクロックがある。ClkM2(tCC/2のサイクル・タイムを有する)と、ClkM8(tCC/8のサイクル・タイムを有する)がある。これらのより高周波数のクロックによって、情報が、メモリ・コンポーネントへシフト・インされるか、メモリ・コンポーネントからシフト・アウトされる。各tCCインターバルに1回、直列データが、ClkMによってクロッキングされる並列レジスタとの間で転送される。
ClkM2クロックおよびClkM8クロックが、ClkMクロックに対して周波数および位相をロックされることに留意されたい。この2つのより高周波数のクロックの正確な位相整列は、ドライバ・ロジックおよびサンプラ・ロジックの回路実施形態に依存する。ドライバ遅延またはサンプラ遅延を考慮に入れるためにわずかなオフセットがある場合がある。ClkMクロックに対するACバスおよびDQバスのビット有効ウィンドウの正確な位置を考慮に入れるためにわずかなオフセットがある場合もある。
メモリ・コンポーネント内で、ClkM2クロックまたはClkM8クロックを、それぞれtCCのサイクル・タイムを有するが、tCCインターバル全体にまたがって等しい増分の位相のオフセットを有する2クロックまたは8クロックに置換できることにも留意されたい。送出ブロック204内のレジスタ1101から1102、送出ブロック206内のレジスタ1123から1130、受取ブロック205内のレジスタ1106から1113を含む直列レジスタが、2個または8個のレジスタのブロックによって置換され、各レジスタに、異なるクロック信号がロードされ、その結果、ACバスおよびDQバスのビット・ウィンドウが、正しくサンプリングされるか駆動されるようになる。たとえば、送出ブロック204では、2つの個別のレジスタが含まれ、一方のレジスタが、特定の位相を有する第1クロック信号によってクロッキングされ、第2のレジスタが、異なる位相を有する異なるクロック信号によってクロッキングされ、この2つのクロック信号の間の位相関係は、上で詳細に説明したものと同等の直列−並列変換を達成できるものであると理解される。もう1つの可能性は、エッジ・センシティブ・ストレージ要素(レジスタ)ではなくレベル・センシティブ・ストレージ要素(ラッチ)を使用し、その結果、クロック信号の立ち上がりエッジと立ち下がりエッジが、異なるストレージ要素のロードを引き起こすようにすることである。
直列化を実施する方法に無関係に、各ワイヤ上でtCCインターバルごとに複数のビット・ウィンドウがあり、これらのビット・ウィンドウを正しく駆動し、サンプリングするために、tCCインターバルごとに複数のクロック・エッジが、メモリ・コンポーネント内で作成される。
図12は、本発明の実施形態による、図1に示されたものなどのメモリ・システムのメモリ・コントローラ・コンポーネントの詳細を示すブロック図である。メモリ・コントローラ・コンポーネント102に、PLL 1202、1203、1204、および1205と、アドレス/制御送出ブロック201と、データ送出ブロック202と、データ受取ブロック203と、コントローラ・ロジック・コア1234が含まれる。PLL 1202に、位相比較器およびVCO 1206が含まれる。PLL 1202は、ClkInクロック信号1201を受け取り、コントローラ・ロジック・コア1234およびバッファ1224にClkCクロック信号1215を供給し、バッファ1224は、AClkクロック信号109を出力する。
PLL 1203に、プリスケーラ1207、位相比較器およびVCO 1208、および分周器1209が含まれる。プリスケーラ1207は、周波数分周器として実装することができ、周波数分周の必要がない補償用遅延を供給する。プリスケーラ1207は、ClkInクロック信号1201を受け取り、位相比較器およびVCO 1208に信号1216を供給する。分周器1209は、フィードバック信号1218を位相比較器およびVCO 1208に供給し、位相比較器およびVCO 1208は、ClkC2クロック出力1217をアドレス/制御送出ブロック201に供給する。
PLL 1204に、位相比較器およびVCO 1210、ダミー位相オフセット・セレクタ1212、および分周器1211が含まれる。ダミー位相オフセット・セレクタ1212は、ある量の遅延を挿入して、位相オフセット・セレクタに固有の遅延を模倣し、信号1220を分周器1211に供給し、分周器1211は、フィードバック信号1221を位相比較器およびVCO 1210に供給する。位相比較器およびVCO 1210は、ClkInクロック入力1201を受け取り、データ送出ブロック202およびデータ受取ブロック203にClkC8クロック出力1219を供給する。
PLL 1205に、位相シフト回路1214と位相比較器およびVCO 1213が含まれる。位相シフト回路1214は、位相比較器およびVCO 1213にフィードバック信号1223を供給する。位相比較器およびVCO 1213は、ClkInクロック信号1201を受け取り、データ送出ブロック202およびデータ受取ブロック203にClkCDクロック信号1222を供給する。
コントローラ・ロジック・コア1234は、データ送出ブロック202にTPhShB信号1235およびTPhShA信号1236を供給する。コントローラ・ロジック・コア1234は、データ受取ブロック203にRPhShB信号1237およびRPhShA信号1238を供給する。コントローラ・ロジック・コア1234は、データ送出ブロック202およびデータ受取ブロック203に、LoadSkip信号1239を供給する。コントローラ・ロジック・コア1234に、PhShCブロック1240が含まれる。コントローラ・ロジック・コア1234の機能性は、図17に関して下でさらに詳細に説明する。
コントローラ・ロジック・コア1234は、内部アドレス・バス1231を介してアドレス/制御送出ブロック201にアドレス/制御情報を供給する。コントローラ・ロジック・コア1234は、内部書込データ・バス1232を介してデータ送出ブロック202に書込データを供給する。コントローラ・ロジック・コア1234は、内部読取データ・バス1233を介してデータ受取ブロック203から読取データを受け取る。
アドレス/制御送出ブロック201は、出力1228を介してバッファ1225に結合され、バッファ1225は、ACバス107を駆動する。データ送出ブロック202は、バッファ1226に出力1229を供給し、バッファ1226は、DQバス108を駆動する。バッファ1227は、DQバス108を、データ受取ブロック203の入力1230に結合する。
アドレス/制御送出ブロック201のそれぞれが、ACバスに接続され、ブロック202および203のそれぞれが、DQバスに接続される。これらの外部バス上の直列化されたデータは、コントローラ・ロジックの残りに接続される並列形式の内部バスの間で変換される。コントローラの残りはClkCクロック・ドメインで動作すると仮定する。
図示の実施形態では、ClkIn信号が、メモリ・サブシステム全体のマスタ・クロックである。これは、受け取られ、コントローラによって使用されるすべてのクロック信号の周波数および位相の基準として使用される。他のクロックは、ClkC2、ClkC8、ClkC、およびClkCDである。これらは、それぞれClkInの周波数の2倍、8倍、1倍、および1倍である。ClkCは、ClkInに対する位相オフセットがなく、ClkCDは、90°遅れている。ClkC2は、1つおきの立ち上がりエッジを、ClkInの立ち上がりエッジに整列される。
8つおきのClkC8立ち上がりエッジが、周波数分周器と送出ブロックおよび受取ブロックの位相オフセット・セレクタとの遅延を補償するオフセットを除いて、ClkInの立ち上がりエッジに整列される。ClkC8信号に対して位相シフトされる「N」個の追加のClkC8信号(ClkC8[N:1])がある。これらの他のClkC8位相は、メモリ・コンポーネントとの通信に必要な送出クロック・ドメインおよび受取クロック・ドメインを合成するのに使用される。
周波数および位相の調整は、通常は、あるタイプのフェーズ・ロック・ループ(PLL)回路を用いて行われるが、他の技法を使用することもできる。PLL回路のフィードバック・ループに、さまざまなクロックを受取ブロックおよび送出ブロックならびにコントローラ・ロジックの残りに分配するのに必要なクロック・ドライバのスキューが含まれる。
図13は、本発明の実施形態による、図12の受取ブロックおよび送出ブロックで使用されるロジックを示すブロック図である。メモリ・コントローラ・コンポーネント102に、アドレス/制御送出ブロック201、データ送出ブロック202、およびデータ受取ブロック203が含まれる。わかりやすくするために、1ビットだけに関する要素が図示されている。そのような要素が、バスのビットごとに複製される場合があることを理解されたい。
アドレス/制御送出ブロック201に、レジスタ1301と、レジスタ1302および1303が含まれる。内部アドレス・バス1231が、レジスタ1301に結合され、レジスタ1301は、ClkCクロック1215によってクロッキングされ、それぞれ結合1304および1305を介してレジスタ1302および1303に出力を供給する。レジスタ1302および1303は、ClkC2クロック1217によってクロッキングされ、ACバスに出力1328を供給する。その結果、内部アドレス・バス1231上の並列情報が、出力1228の直列形式に変換される。アドレス/制御送出ブロック201の追加の機能の詳細を、下で図13に関して提供する。
一般に、図13に示されたデータ送出ブロック202およびデータ受取ブロック203は、データの直列−並列変換または並列−直列変換を実行する機能をサービスする(変換のタイプは、データ・フローの方向に依存する)。そのようなブロックは、メモリ・デバイス内に存在するブロックに類似するが、この特定のシステムのコントローラに含まれる送出ブロックおよび受取ブロックの場合には、これらの直列−並列変換および並列−直列変換を実行するのに必要な適当なクロッキング信号を得るために、追加回路が必要である。この例のメモリ・デバイスでは、クロックが、メモリ・デバイス内で位相を整列されると理解されるので、そのようなクロック調整回路は不要である。しかし、メモリ・デバイス内の位相整列が、コントローラに関するメモリ・デバイスの物理的な位置決めに起因してシステムの他の部分での位相不一致を引き起こすというシステム内での前提に起因して、コントローラ内ではそのような位相整列を保証することができない。したがって、コントローラから第1の距離に位置決めされたメモリ・デバイスは、コントローラと通信される信号に関する、第2の位置に位置決めされた第2のメモリ・デバイスとは異なる特性遅延の組を有する。したがって、コントローラが、メモリ・デバイスのそれぞれによって供給される読取データを正しく取り込むことを保証されるようにし、メモリ・デバイスのそれぞれによって受け取られることを意図された書込データをコントローラが正しく駆動できるようにするために、個々のクロック調整回路が、そのようなメモリ・デバイスに関してコントローラ内で必要になる。
送出ブロック202内で、送出用のデータが、TDバス1232を介して並列形式で受け取られる。このデータは、クロックClkC信号1215に基づいてレジスタ1310にロードされる。レジスタ1310にロードされた後に、このデータは、マルチプレクサ1312を介してレジスタ1313に直接に渡されるか、ClkC信号の立ち下がりエッジによってクロッキングされるレジスタ1311を含むマルチプレクサ1312を介するパスをトラバースすることによって1/2クロック・サイクルだけ遅延されるかのいずれかになる。そのような回路によって、ClkCクロック・ドメインに含まれるTDバス上のデータを、その送出に必要なクロック・ドメインに成功裡に転送できる。このクロック・ドメインは、TClkC1Bクロック・ドメインであり、これは、ClkCクロックと同一の周波数を有するが、必ずしもClkCクロック信号に位相を整列されてはいない。類似する回路を受取ブロック203内に含めて、RClkC1Bクロック・ドメインで受け取られたデータを、ClkCクロック・ドメインで動作するRQバスに成功裡に転送することができる。
データ送出ブロック202に、PhShAブロック1306と、クロック・ドライバ回路1307と、レジスタ1308、1309、1310、1311、および1313と、マルチプレクサ1312と、シフト・レジスタ1314が含まれる。TPhShA信号1236およびClkC8クロック信号1219が、PhShAブロック1306に供給される。PhShAブロック1306に関する追加の詳細を、下で図15に関して提供する。クロック分周器回路1307に、1/1分周器回路1324と、1/8分周器回路1325が含まれる。TPhShB信号1235が、1/8分周器回路1325に供給される。PhShAブロック1306の出力が、1/1分周器回路1324および1/8分周器回路1325の入力に供給される。1/1分周器回路1324の出力が、シフト・レジスタ1314をクロッキングするために供給される。1/8分周器回路1325の出力が、レジスタ1313をクロッキングするために供給され、入力としてレジスタ1308に供給される。
レジスタ1308は、ClkCDクロック信号1222によってクロッキングされ、レジスタ1309に出力を供給する。レジスタ1309は、ClkCクロック信号1215によってクロッキングされ、LoadSkip信号1238を受け取って、マルチプレクサ1312への出力と、レジスタ1310および1311をクロッキングするための出力を供給する。レジスタ1310は、書込データ・バス1232から書込データを受け取り、レジスタ1311およびマルチプレクサ1312に出力を供給する。レジスタ1311は、マルチプレクサ1312に出力を供給する。マルチプレクサ1312は、レジスタ1313に出力を供給する。レジスタ1313は、並列出力をシフト・レジスタ1314に供給する。シフト・レジスタ1314は、出力1229を供給する。その結果、入力1232の並列情報が、出力1229の直列形式に変換される。
データ受取ブロック203に、PhShAブロック1315と、クロック分周回路1316と、レジスタ1317、1318、1320、1321、および1323と、シフト・レジスタ1319と、マルチプレクサ1322が含まれる。クロック分周回路1316には、1/1分周器回路1326と1/8分周器回路1327が含まれる。RPhShA信号1238およびClkC8クロック信号1219が、PhShAブロック1315に供給され、PhShAブロック1315は、1/1分周器回路1326および1/8分周器回路1327に出力を供給する。RPhShB信号1237が、1/8分周器回路1327の入力に供給される。1/1分周器回路1326は、シフト・レジスタ1319のクロッキングに使用される出力を供給する。1/8分周器回路1327は、レジスタ1320のクロッキングに使用され、レジスタ1317への入力として使用される出力を供給する。レジスタ1317は、ClkCDクロック信号1222によってクロッキングされ、レジスタ1318に出力を供給する。レジスタ1318は、LoadSkip信号1238を受け取り、ClkCクロック信号1215によってクロッキングされ、マルチプレクサ1322への出力と、レジスタ1321および1323のクロッキングに使用される出力を供給する。
シフト・レジスタ1319は、入力1230を受け取り、レジスタ1320に並列出力を供給する。レジスタ1320は、レジスタ1321とマルチプレクサ1322に出力を供給する。レジスタ1321は、マルチプレクサ1322に出力を供給する。マルチプレクサ1322は、レジスタ1323に出力を供給する。レジスタ1323は、内部読取データ・バス1233に出力を供給する。その結果、入力1230の直列情報が、出力1233の並列形式に変換される。
図示されているのは、アドレス/制御データおよび書込データを駆動し、読取データをサンプリングするのに必要なレジスタおよびゲーティング要素である。この例では、各tCCインターバルにアドレス/制御(AC[i])ワイヤごとに2ビットが転送されることと、各tCCインターバルに、読取データ(Q[i])ワイヤまたは書込データ(D[i])ワイヤごとに8ビットが転送されることが仮定されている。プライマリ・クロックClkC(tCCのサイクル・タイムを有する)のほかに、生成される2つの他の整列されるクロックがある。ClkC2(tCC/2のサイクル・タイムを有する)とClkC8(tCC/8のサイクル・タイムを有する)がある。これらのより高周波数のクロックによって、情報が、コントローラへシフト・インされるか、コントローラからシフト・アウトされる。各tCCインターバルに1回、直列データが、ClkCによってクロッキングされる並列レジスタとの間で転送される。
コントローラ内で、ClkC2クロックまたはClkC8クロックを、それぞれtCCのサイクル・タイムを有するが、tCCインターバル全体にまたがって等しい増分の位相のオフセットを有する2クロックまたは8クロックに置換できることに留意されたい。そのような実施形態では、直列レジスタが、2つまたは8つのレジスタのブロックに置換され、各レジスタに、異なるクロック信号がロードされ、その結果、ACバスおよびDQバスのビット・ウィンドウが、正しくサンプリングまたは駆動されるようになる。もう1つの可能性は、エッジ・センシティブ・ストレージ要素(レジスタ)ではなくレベル・センシティブ・ストレージ要素(ラッチ)を使用し、その結果、クロック信号の立ち上がりエッジと立ち下がりエッジが、異なるストレージ要素のロードを引き起こすようにすることである。
直列化を実施する方法に無関係に、各ワイヤ上でtCCインターバルごとに複数のビット・ウィンドウがあり、多くの実施形態で、これらのビット・ウィンドウを正しく駆動し、サンプリングするために、コントローラ内でtCCインターバルごとに複数のクロック・エッジが使用される。
図13には、各スライスに受け取られ、送出される読取データおよび書込データが、異なるクロック・ドメイン内にあるという事実をコントローラがどのように扱うかも示されている。スライスは、単一ビットまで狭くすることができるので、コントローラ内に、32個の読取クロック・ドメインと32個の書込クロック・ドメインが同時に存在することができる(この例では、32ビットのDQバス幅を仮定する)。この例で、読取データおよび書込データと共にクロックが転送されず、そのようなクロックが、周波数ソースから合成されることが好ましいことを想起されたい。複数クロック・ドメインの問題は、クロックが読取データおよび書込データと共に転送された場合であっても存在する。これは、メモリ・コンポーネントが、システム内で、すべてのローカル・クロックが同相であることが好ましい点であるからである。他のシステム・クロッキング・トポロジを、本明細書で後程説明する。
図13のアドレス/制御バス(AC)の送出ブロックでは、ClkC2クロックおよびClkCクロックを使用して、2対1直列化を実行する。ClkC2クロックによって、直列レジスタ1302および1303が、ACワイヤ1328にシフトされる。ClkC2クロックの正確な位相整列が、ドライバ・ロジックの回路実施形態に依存することに留意されたい。ドライバ遅延を考慮に入れるためにわずかなオフセットがある場合がある。ClkCクロックに対するACバス上のビット駆動ウィンドウの正確な位置を考慮に入れるために、わずかなオフセットがある場合もある。たとえば、出力ドライバが、既知の遅延を有する場合に、出力回路の一部が、データが実際に外部信号線に駆動される時よりわずかに前に出力ドライバにデータを供給し始めるように、ClkC2クロック信号の位相を調整することができる。したがって、ClkC2クロック信号の位相のシフトを使用して、出力ドライバに固有の遅延を考慮に入れることができ、データが、所望の時刻に外部データ線に実際に提示されるようになる。同様に、ClkC2クロック信号の位相の調整を使用して、ClkC2クロック信号に基づいて駆動されるデータの有効データ・ウィンドウの位置が最適に配置されることを保証することもできる。
類似する形で、図13の書込データ・バス(D)の送出ブロックで、位相を遅らされたClkC8クロックを使用して、8対1直列化を実行することができる。位相を遅らされたClkC8クロックによって、直列レジスタ1314がDQワイヤにシフトされる。位相を遅らされたClkC8クロックの正確な整列が、ドライバ・ロジックの回路実施形態に依存することに留意されたい。ドライバ遅延を考慮に入れるために、わずかなオフセットがある場合がある。DQバス上のビット駆動ウィンドウの正確な位置を考慮に入れるために、わずかなオフセットがある場合もある。
TPhShA[i][n:0]制御信号1236によって、入力基準ベクトルClkC8[N:1]に対する適当な位相オフセットが選択される。位相オフセット・セレクタは、単純なマルチプレクサ、より精巧な位相補間器、または他の位相オフセット選択技法を使用して実施することができる。位相補間器の一例では、所望より小さい位相オフセットの第1基準ベクトルと、所望より大きい位相オフセットの第2基準ベクトルが選択される。重みづけ値を適用して、第1基準ベクトルの一部と第2基準ベクトルの一部を組み合わせて、TClkC8Aクロックの所望の出力位相オフセットを得る。したがって、TClkC8Aクロックの所望の出力位相オフセットは、第1基準ベクトルと第2基準ベクトルから効果的に補間される。位相マルチプレクサの一例では、TPhShA[i][n:0]制御信号1236を使用して、ClkC8[N:1]クロック信号1219の1つを選択して、TClkC8Aクロックにパス・スルーする(2n+1=Nであることに留意されたい)。使用される位相は、一般に、コントローラ上の送出スライスごとに異なる。コントローラ上のスライスごとの位相は、初期化中の較正処理中に選択されることが好ましい。この処理を、本明細書で後程詳細に説明する。
TClkC8Aクロックは、並列レジスタ1313および直列レジスタ1314をクロッキングする前に、1/8周波数分周器1325および1/1周波数分周器1324を通過する。分配されるClkC8[N:1]信号が、位相オフセット選択ブロック(PhShA)1306と周波数分周器ブロック1324および1325の遅延を補償するために、小さい位相オフセットを有することに留意されたい。このオフセットは、フェーズ・ロック・ループ回路によって生成され、供給電圧および温度の変動に追随する。
送出位相シフト値を正しくセットされた(その結果、Dバス1229上のビット・ウィンドウが正しく駆動される)状態であっても、並列レジスタ1313に使用されるTClkC1Bクロックの位相が、整列されない可能性がある(位相の可能な組合せが8つある)。この問題を扱う方法は複数ある。図示の実施形態で使用される方式では、入力TPhShB1235を設け、この入力にパルスが与えられる時に、TClkC1Bの位相が、サイクルの1/8(45°)だけシフトされるようにする。初期化ソフトウェアによって、並列レジスタに正しい時に直列レジスタがロードされるようになるまで、このクロックの位相を調整する。この初期化処理は、本明細書で後程詳細に説明する。
その代わりに、送出ブロック202へのロードのためにTDバス1232を準備する時に、ClkCドメイン内で位相調整を実行することも可能である。それを行うために、マルチプレクサおよびレジスタを使用して、ClkCサイクル境界にまたがって書込データを回転することができる。初期化で較正処理を提供して、送出ブロック202のパワー・アップ中にTClkC1Bクロックの位相に対処することができる。
位相シフト制御を正しく調整した後に、書込データを、並列レジスタ1313からDバスに送出することができる。しかし、書込データは、ClkC1215ドメイン内のTDバス1232から、TClkC1Bドメイン内の並列レジスタ1313に転送される必要がある。これは、スキップ・マルチプレクサ1312を用いて達成される。このマルチプレクサは、ClkCの立ち上がりエッジでクロッキングされるレジスタ1310とClkCの立ち下がりエッジでクロッキングされるレジスタ1311の間で選択を行う。SkipT値によって、どのマルチプレクサ・パスが選択されるかが決定される。SkipT値は、ClkCDクロック1222によってTClkC1Bクロックをサンプリングすることによって決定される。結果の値が、初期化ルーチン中に、LoadSkip信号1238によってレジスタ1309にロードされる。この回路は、本明細書で後程詳細に説明する。
読取データQの受取ブロック203が、図13の下部に示されている。受取ブロックは、本質的に、上で説明した送出ブロックと同一の要素を有するが、データの流れが逆転していることが異なる。しかし、クロック・ドメイン・クロッシングの問題は、本質的に類似する。
RPhShA[i][n:0]制御信号1238によって、ClkC8[N:1]クロック信号1219の1つが選択されて、RClkC8クロックにパス・スルーされる。使用される位相は、一般に、コントローラ上の受取スライスごとに異なる。位相は、初期化中の較正処理中に選択される。この処理を、本明細書で後程詳細に説明する。
RClkC8Aクロックは、並列レジスタ1320および直列レジスタ1319をクロッキングする前に、1/8周波数分周器1327および1/1周波数分周器1326を通過する。分配されるClkC8[N:1]信号1219が、位相オフセット選択ブロック(PhShA)1315および周波数分周器ブロック1326および1327の遅延を補償するために小さい位相オフセットを有することに留意されたい。このオフセットは、フェーズ・ロック・ループ回路によって生成され、供給電圧および温度の変動に追随する。
受取位相シフト値を正しくセットされた(その結果、Qバス上のビット・ウィンドウが正しくサンプリングされる)状態であっても、並列レジスタ1320に使用されるRClkC1Bクロックの位相が、不一致になる可能性がある(位相の可能な組合せが8つある)。この問題を扱う方法は複数ある。図示の実施形態で使用される方式では、入力RPhShB1237を設け、この入力にパルスが与えられる時に、RClkC1Bクロックの位相が、サイクルの1/8(45°)だけシフトされるようにする。初期化ソフトウェアによって、並列レジスタ1320に正しい時に直列レジスタ1319がロードされるようになるまで、このクロックの位相を調整する。この初期化処理は、本明細書で後程詳細に説明する。
送出回路について説明したものに類似するスキップ・マルチプレクサを使用して、RClkC1Bクロック・ドメインとClkCクロック・ドメインの間を移動する。位相シフト制御を正しく調整した後に、読取データを、Qバス1230から受け取り、並列レジスタ1320にロードすることができる。しかし、読取データは、RClkC1Bドメイン内の並列レジスタ1320から、ClkC1215ドメイン内のレジスタ1323に転送される必要がある。これは、スキップ・マルチプレクサ1322を用いて達成される。このマルチプレクサによって、ClkCの負エッジでクロッキングされるレジスタ1321を、RClkC1Bの立ち上がりエッジでクロッキングされるレジスタ1320とClkCの立ち上がりエッジでクロッキングされるレジスタ1323の間に挿入するか否かを決定することができる。SkipR値によって、どのマルチプレクサ・パスが選択されるかが決定される。SkipR値は、ClkCDクロック1222によってRClkC1Bクロックをサンプリングすることによって決定される。結果の値が、初期化ルーチン中に、LoadSkip信号1238によってレジスタ1318にロードされる。この回路は、本明細書で後程詳細に説明する。
図14は、本発明の実施形態による、図12に示されたものなどのClkC8信号の生成に使用されるPLLの詳細を示すロジック図である。PLL 1204に、PLL回路1401、調整可能整合遅延1402、整合バッファ1403および位相比較器1404が含まれる。PLL回路1401に、VCO 1405、ダミー位相オフセット・セレクタ1406、周波数分周器1407、および位相比較器1408が含まれる。ClkInクロック信号1201が、VCO1405および位相比較器1408に供給される。VCO 1405は、調整可能整合遅延1402および整合バッファ1403に出力を供給する。調整可能整合遅延1402は、整合バッファ1403に複数の増分式に遅延される出力を供給する。
PLL回路1401は、入力クロック信号ClkIn 1201の周波数の8倍のクロック信号を生成し、生成された信号は、図14の回路によって作られるクロック信号のパスに存在すると予定される遅延を考慮に入れるために位相シフトされる。したがって、予定される遅延は、クロック生成処理中に補償され、実際に使用される点に現れるクロック信号が、正しく位相を調整される。ブロック1204のうちで、PLL回路1401の外部の残りの部分は、PLL回路1401によって作られたクロックの等しい位相間隔を設けられた版を生成するのに使用される。これは、周知のDLL(delay locked loop)技法を介して達成され、このDLLは、等間隔のクロック信号を生成する機構を提供する。図14のブロック1204の結果として作られるクロック信号は、図15に関して下で説明する位相シフト・ロジックに供給される。図14および15の回路によって実行されるクロック生成の結果は、上で図13で説明した直列−並列変換または並列−直列変換の実行に使用される。
整合バッファ1403の出力1409は、調整可能整合遅延1402によって遅延されておらず、ダミー位相オフセット・セレクタ1406の入力および位相比較器1404の入力に供給され、ClkC8クロック信号を供給する。遅延された出力1410が、ClkC81クロック信号を供給する。遅延された出力1411が、ClkC82クロック信号を供給する。遅延された出力1412が、ClkC83クロック信号を供給する。遅延された出力1413が、ClkC8N-1クロック信号を供給する。遅延された出力1414が、ClkC8Nクロック信号を供給し、これが、位相比較器1404の入力に供給される。位相比較器1404は、調整可能整合遅延1402にフィードバック信号を供給し、これによって、DLLが形成される。整合バッファ1403のそれぞれは、実質的に類似する伝搬遅延を有し、これによって、出力1409と遅延された出力1410から1414の間に意図されないタイミング・スキューを導入せずに、バッファリングされた出力を供給する。
ClkIn基準クロック1201が、PLL 1204によって受け取られ、8倍だけ周波数を逓倍される。整合バッファ1403によって導入されるバッファ遅延、ダミー位相オフセット・セレクタ1406によって導入されるダミー位相オフセット選択遅延、および周波数分周器1407によって導入される周波数分周器遅延を含む複数の遅延が、PLL 1204のPLLフィードバック・ループに含まれる。これらの遅延をフィードバック・ループに含めることによって、DQのビットのサンプリングおよび駆動に使用されるクロックを、ClkIn基準に一致させ、温度および供給電圧の低速のドリフトによって引き起こされる遅延変動を追跡する。
PLL回路1401の出力を、Nタップを有する遅延線1402に通す。各要素の遅延は、同一であり、適当な範囲にわたって調整可能であり、その結果、N個の要素の総遅延を、1つのClkC8サイクル(tCC/8)と等しくすることができる。遅延されないClkC8の位相を最大遅延のClkC8[N]を有するクロックと比較するフィードバック・ループ1404がある。遅延要素は、これらの信号の位相が整合される(遅延線全体にわたってtCC/8の遅延が存在することを意味する)まで調整される。
ClkC8[N:1]信号は、同一のバッファ1403を通過し、それが接続される送出スライスおよび受取スライスから同一の負荷を見る。ClkC8基準信号1409も、バッファと、遅延を模倣する整合ダミー負荷を有する。
図15は、本発明の実施形態による、図13に示されたものなどのメモリ・コントローラ・コンポーネントの送出ブロックおよび受取ブロックでClkC8[N:1]信号がどのように使用されるかを示すブロック図である。PhShAロジック・ブロック1501に、位相オフセット選択回路1502が含まれ、位相オフセット選択回路1502に、位相オフセット・セレクタ1503が含まれる。位相オフセット・セレクタ1503は、ClkC81クロック信号1410、ClkC82クロック信号1411、ClkC83クロック信号1412、ClkC8N-1クロック信号1413、およびClkC8Nクロック信号1414(すなわち、ClkC8クロック信号のN個の変形)を受け取り、ClkC8Aクロック信号1504を選択し、供給する。これは、制御信号PhShA[i][n:0](ただしN=2n+1)の設定に応じて信号の1つを選択するN対1マルチプレクサ1503を使用して達成される。これによって、スライス[i]のClkC8A出力クロックの位相を、tCC/8Nの増分で1つのClkC8サイクル(tCC/8)にわたって変更できる。
初期化時に、ソフトウェアまたはハードウェアもしくはその両方を用いて較正手順を実行し、制御信号PhShA[i][n:0]の各組合せの下でテスト・ビットをサンプリングし、駆動する。最良のマージンをもたらす組合せが、スライスごとに選択される。この静的な値によって、コントローラとメモリ・コンポーネントの間のDQ信号およびAC信号の飛行時間が補償される。この飛行時間は、主にプリント配線基板上のトレース長および伝搬速度の要因であり、システム動作中に大きくは変動しない。供給電圧および温度に起因する他の遅延変動は、システム内のPLLのフィードバック・ループによって自動的に追跡される。
図16は、図13のPhShB回路1307および1316を示すブロック図である。図16のクロック変換回路1601は、図13の1/1分周器回路1324および1/1分周器回路1326に対応することが好ましい。同様に、図16のクロック変換回路1602は、図13の1/8分周器回路1325および1/8分周器回路1327に対応することが好ましい。この回路は、本発明の好ましい実施形態に従って、ClkC8Aクロックに基づいてClkC8BクロックおよびClkC1Bクロックを作る。クロック変換回路1601には、マルチプレクサ1603が含まれ、マルチプレクサ1603が、ClkC8A信号1504を受け取り、ClkC8B信号1604を作る。クロック変換回路1602には、レジスタ1605、1606、1607、および1612と、論理ゲート1608と、マルチプレクサ1611と、増分回路1609および1610が含まれる。PhShB信号1614が、レジスタ1605に印加され、ClkC8Aクロック信号1504が、レジスタ1605をクロッキングするのに使用される。レジスタ1605の出力は、入力およびクロック入力としてレジスタ1606に印加される。レジスタ1606の1つの出力は、レジスタ1607および論理ゲート1608への入力として印加される。レジスタ1606の1つの出力は、レジスタ1607のクロッキングに使用される。レジスタ1607の1つの出力は、論理ゲート1608に印加される。レジスタ1607の1つの出力は、レジスタ1612のクロッキングに使用される。論理ゲート1608の出力が、マルチプレクサ1611に印加される。
増分回路1609は、入力の3ビット値を2つ増分する。増分回路1610は、入力の3ビット値を、111から000へラップするように2進式に1つ増分する。マルチプレクサ1611は、増分回路1609および1610の3ビット出力のどちらかを選択し、3ビット出力をレジスタ1612に供給する。レジスタ1612は、増分回路1609および1610の入力3ビット値として使用される3ビット出力を供給する。この3ビット出力の最上位ビット(MSB)を使用して、ClkC1Bクロック信号1613を供給する。
図16では、PhShA(図13の1306および1315)ブロックによって作られるClkC8Aクロックが、同一周波数のClkC8Bクロックと、1/8周波数のClkC1Bクロックを作るのに使用される。これらの2つのクロックは、互いに位相を整列される(ClkC1Bの各立ち上がりエッジが、ClkC8Bの立ち下がりエッジに整列される)。
ClkC1B 1613は、それを1/8カウンタ1602に通すことによって作られる。ClkC8Aは、各クロック・エッジで増分する3ビット・レジスタ1612をクロッキングする。最上位ビットが、ClkC1Bになるが、これは、ClkC8Aの1/8の周波数である。ClkC8B 1604クロックは、3ビット・レジスタのクロック−出力遅延を模倣するマルチプレクサによってつくられ、その結果、ClkC1BとClkC8Bが整列される。当業者に明白であるように、他の遅延手段を、ブロック1601に図示されたマルチプレクサの代わりに使用して、1/8カウンタを介する遅延を整合させる作業を達成することができる。
図13に関して説明したように、ClkC1B 1613の位相を調整し、その結果、並列レジスタが、適当な時に送出ブロックおよび受取ブロック内の直列レジスタからロードされるか、これにロードするようにする必要がある。初期化時に、較正手順で、テスト・ビットを送出し、受け取って、ClkC1Bクロックの適当な位相設定を判定する。この手順では、PhShB制御入力1614を使用する。この入力が立ち上がりエッジを有する時に、3ビット・カウンタが、それに続くClkC8Aエッジの1つ(同期化後)に、+1ではなく+2だけ増分される。ClkC1Bクロックの位相が、サイクルの1/8だけ進む方にシフトされる。較正手順を継続して、ClkC1Bクロックの位相を進め、TD[i][7:0]バスおよびRQ[i][7:0]バスのテスト・ビットの位置を検査する。テスト・ビットが正しい位置にある時に、ClkC1Bの位相を凍結する。
図17は、本発明の実施形態による、PhShCブロック(図12の1240)の詳細を示すブロック図である。PhShCブロック1240に、ブロック1701から1704が含まれる。ブロック1701に、レジスタ1705とマルチプレクサ1706が含まれる。書込データ入力1714が、レジスタ1705およびマルチプレクサ1706に供給される。レジスタ1705は、ClkCクロック信号1215によってクロッキングされ、マルチプレクサ1706に出力を供給する。マルチプレクサ1706は、TPhShC[0]選択入力1713を受け取り、書込データ出力1715を供給する。ブロック1702に、レジスタ1707とマルチプレクサ1708が含まれる。読取データ入力1717が、レジスタ1707およびマルチプレクサ1708に供給される。レジスタ1707は、ClkCクロック信号1215によってクロッキングされ、マルチプレクサ1708に出力を供給する。マルチプレクサ1708は、RPhShC[0]選択入力1716を受け取り、読取データ出力1718を供給する。ブロック1703に、レジスタ1709とマルチプレクサ1710が含まれる。書込データ入力1720が、レジスタ1709およびマルチプレクサ1710に供給される。レジスタ1709は、ClkCクロック信号1215によってクロッキングされ、マルチプレクサ1710に出力を供給する。マルチプレクサ1710は、TPhShC[31]選択入力1719を受け取り、書込データ出力1721を供給する。ブロック1704に、レジスタ1711とマルチプレクサ1712が含まれる。読取データ入力1723が、レジスタ1711およびマルチプレクサ1712に供給される。レジスタ1711は、ClkCクロック信号1215によってクロッキングされ、マルチプレクサ1712に出力を供給する。マルチプレクサ1712は、RPhShC[31]選択入力1722を受け取り、読取データ出力1724を供給する。書込データに関するブロックの2つのインスタンスと読取データに関するブロックの2つのインスタンスだけが図示されているが、これらのブロックが、書込データの各ビットおよび読取データの各ビットについて複製される可能性があることを理解されたい。
PhShCブロック1240は、32×8読取データ・ビットおよび32×8書込データ・ビットの遅延を調整し、その結果、すべてがコントローラ・ロジック・ブロック内の同一のClkCクロック・エッジで駆動またはサンプリングされるようにするのに使用される、最後のロジック・ブロックである。これは、スライスごとに読取データおよび書込データのパスに挿入することができる8ビット・レジスタを用いて達成される。遅延の挿入は、2つの制御バスTPhShC[31:0]およびRPhShC[31:0]によって決定される。読取データおよび書込データの伝搬遅延が、いずれかのメモリ・スライス位置でClkC境界をまたぐ可能性があるので、スライスごとに1つの制御ビットがある。メモリ・スライスにまたがる読取データおよび書込データにより大きいスキューを有する一部のシステムでは、1ClkCを超える調整が必要になる可能性がある。図示のPhShCセルは、より多くのレジスタおよびより多くのマルチプレクサ入力を追加することによって、追加の遅延を提供するように簡単に拡張することができる。
2つの制御バスTPhShC[31:0]およびRPhShC[31:0]は、初期化中に較正手順を用いて構成される。他の位相調整ステップと同様に、テスト・ビットが、各メモリ・スライスから読み取られ、書き込まれ、図示の例では、コントローラ・ロジックが、256個のすべての読取データ・ビットを1ClkCサイクルでサンプリングでき、256個のすべての書込データ・ビットを1ClkCサイクルで駆動できる値が、制御ビットにセットされる。
図18は、本発明の実施形態による、メモリ・コントローラ・コンポーネントの受取ブロック203(図13)からのスキップ・ロジックのロジックの詳細を示すブロック図である。スキップ・ロジックに、レジスタ1801、1802、1803、1804、および1806と、マルチプレクサ1805が含まれる。RClkC1Bクロック入力1807が、レジスタ1801に供給され、レジスタ1803のクロッキングに使用される。ClkCDクロック入力1222が、レジスタ1801のクロッキングに使用され、レジスタ1801は、レジスタ1802に出力を供給する。レジスタ1802は、LoadSkip信号1238を受け取り、ClkCクロック信号1215によってクロッキングされ、マルチプレクサ1805に出力を供給し、レジスタ1804および1806のクロッキングに使用される出力を供給する。レジスタ1803は、入力1808でドメインRClkC1Bのデータを受け取り、レジスタ1804およびマルチプレクサ1805に出力を供給する。レジスタ1804は、マルチプレクサ1805に出力を供給する。マルチプレクサ1805は、レジスタ1806に出力を供給する。レジスタ1806は、出力1809でドメインClkCのデータを供給する。
この回路は、RClkC1Bクロック・ドメインのデータをClkCドメインに転送する。これらの2つのクロックは、同一の周波数を有するが、どのような位相整列でも有することができる。解決策は、ClkCDと称するClkCの遅延された版(遅延の限界は、システムが判定することができるが、一実施形態では、公称遅延がClkCサイクルの1/4である)を用いてRClkC1Bをサンプリングすることである。このサンプリングされた値を、SkipRと呼び、これによって、RClkC1Bレジスタ内のデータをClkCレジスタに直接に転送することができるか、データをまず負エッジ・トリガされるClkCレジスタに通さなければならないかが判定される。
図18に関して、下記のワースト・ケース・セットアップ制約を仮定することができる。
ケースB0
D,MAX+tH1,MIN+tCL,MIN+tV,MAX+tM,MAX+tS,MIN≦tCYCLE
または
D,MAX≦tCHMIN−tH1,MIN−tV,MAX−tM,MAX−tS,MIN ** 制約S **
ケースD1
D,MAX+tH1,MIN+tCYCLE+tV,MAX+tS,MIN≦tCYCLE+tCL,MIN
または
D,MAX≦tCL,MIN−tH1,MIN−tV,MAX−tS,MIN
下記のワースト・ケース・ホールド制約を仮定することができる。
ケースA1
D,MIN−tS1,MIN+tV,MIN≧tH,MIN
または
D,MIN≧tH,MIN+tS1,MIN−tV,MIN ** 制約H **
ケースC0
D,MIN−tS1,MIN+tV,MIN+tM,MIN≧tH,MIN
または
D,MIN≧tH,MIN+tS1,MIN−tV,MIN−tM,MIN
上で使用されたタイミング・パラメータは、次のように定義される。
S1 クロック・サンプラのセットアップ時間
H1 クロック・サンプラのホールド時間
S データ・レジスタのセットアップ時間
H データ・レジスタのホールド時間
V データ・レジスタの有効遅延(クロック−出力)
M データ・マルチプレクサの伝搬遅延
CYCLE クロック・サイクル・タイム(RClkC1B、ClkC、ClkCD)
CH クロック・ハイ時間(RClkC1B、ClkC、ClkCD)
CL クロック・ロウ時間(RClkC1B、ClkC、ClkCD)
D ClkCとClkCDの間のオフセット(ClkCDが後)
注意:
D,NOM〜tCYCLE/4
CH,NOM〜tCYCLE/2
CL,NOM〜tCYCLE/2
図19は、本発明の実施形態による、受取ブロック203(図13に図示)のスキップ・ロジックのタイミングの詳細を示すタイミング図である。図19には、ClkCDクロック信号1901、ClkCクロック信号1902、RClkC1B(ケースA0)クロック信号1903、RClkC1B(ケースA1)クロック信号1904、RClkC1B(ケースB0)クロック信号1905、RClkC1B(ケースB1)クロック信号1906、RClkC1B(ケースC0)クロック信号1907、RClkC1B(ケースC1)クロック信号1908、RClkC1B(ケースD0)クロック信号1909、およびRClkC1B(ケースD1)クロック信号1910の波形が示されている。1クロック・サイクルのインターバルの時刻1911、1912、1913、1914、1915、1916、1917、および1918が、クロック信号の間のタイミングの差を示すために図示されている。
図19には、A0からD1というラベルを付けられた8つのケースとして、RClkC1BとClkCの可能な位相整列が全般的に要約されている。これらのケースは、RClkC1BをサンプリングしてSkipR値を決定するClkCDの立ち上がりエッジのセット/ホールド・ウィンドウに対するRClkC1Bの立ち上がりエッジおよび立ち下がりエッジの位置によって区別される。明らかに、RClkC1Bの立ち上がりエッジまたは立ち下がりエッジがこのウィンドウの外にある場合に、これが正しくサンプリングされる。このエッジが、ウィンドウの縁またはウィンドウ内にある場合には、0または1のいずれかとしてサンプリングされる可能性がある(すなわち、サンプルの有効性を保証できない)。スキップ・ロジックは、どちらの場合でも正しく機能するように設計され、このスキップ・ロジックが、ClkCDクロックの遅延tDに対する限界を判定する。
受取ブロックの場合、ケースB0 1905が、ワースト・ケース・セットアップ制約であり、ケースA1 1904が、ワースト・ケース・ホールド制約である。
D,MAX≦tCH,MIN−tH1,MIN−tV,MAX−tM,MAX−tS,MIN ** 制約S**
D,MIN≧tH,MIN+tS1,MIN−tV,MIN ** 制約H **
前に述べたように、tD(ClkCに対するClkCDの遅延)の公称値は、ClkCサイクルの1/4になると期待される。tDの値は、上で示したtD,MAX値まで上に、または上で示したtD,MIN値まで下に変動する可能性がある。セットアップ時間(たとえば、tS1、tS)、ホールド時間(たとえば、tH1、tH)、マルチプレクサ伝搬遅延時間(たとえば、tM)、および有効時間(たとえば、tV)のすべてが0になる場合には、tDの値は、上にtCH,MIN(ClkCの最小ハイ時間)、下に0まで変動する可能性がある。しかし、レジスタの有限のセット/ホールド・ウィンドウ、有限のクロック−出力(有効時間)遅延およびマルチプレクサ遅延が組み合わされて、tD値の許容可能な変動が減らされる。
スキップ・ロジックの基本機能を変更せずに、スキップ・ロジックの要素の一部を変更できることに留意されたい。たとえば、より遅いものではなくより早いサンプリング・クロックClkCDを使用することができる(制約の式が変更されるが、さまざまなセット、ホールド、および有効時間パラメータに対するClkCからClkCDまでのタイミング・スキュー範囲の類似する依存性がある)。他の実施形態では、ドメイン・クロッシング・パスへのClkCレジスタの代わりに、負エッジでトリガされるRClkC1Bレジスタを使用する(やはり、制約の式が変更されるが、さまざまなセット、ホールド、および有効時間パラメータに対するClkCからClkCDまでのタイミング・スキュー範囲の類似する依存性がある)。
最後に、使用されるスキップ値が、初期化中に1回生成され、その後、レジスタにロードされる(LoadSkip制御信号を用いて)ことが好ましいことに留意されたい。そのような静的値は、すべてのClkCDエッジでサンプリングされる値より好ましい。というのは、RClkC1Bの整列が、RClkC1BがClkCDサンプリング・レジスタのセット/ホールド・ウィンドウ内での遷移を有するようになるものである場合に、サンプリングされるたびに異なるスキップ値が生成される可能性があるからである。これは、クロック・ドメイン・クロッシングの信頼性には影響しない(RClkC1BデータがClkCレジスタに正しく転送される)が、コントローラ内でClkCサイクル単位で測定される読取データの明白な待ち時間に影響する。すなわち、時々、読取データが、他の時間より1ClkCサイクルだけ長い時間を要する。スキップ値をサンプリングし、それをすべてのドメイン・クロッシングに使用することによって、この問題が解決される。また、較正中に、RClkC1Bの位相が調節されるたびに、スキップ値が変化する場合にLoadSkip制御のパルスが生成されることに留意されたい。
図20は、本発明の実施形態による、図13の送出ブロック202のスキップ・ロジックのロジックの詳細を示すブロック図である。このスキップ・ロジックには、レジスタ2001、2002、2003、2004、および2006と、マルチプレクサ2005が含まれる。TClkC1Bクロック入力2007が、レジスタ2001に供給され、レジスタ2006のクロッキングに使用される。ClkCDクロック入力1222が、レジスタ2001のクロッキングに使用され、レジスタ2001は、レジスタ2002に出力を供給する。レジスタ2002は、LoadSkip信号1238を受け取り、ClkCクロック信号1215によってクロッキングされ、マルチプレクサ2005に出力を供給し、レジスタ2003および2004のクロッキングに使用される出力を供給する。レジスタ2003は、入力2008でドメインClkCのデータを受け取り、レジスタ2004およびマルチプレクサ2005に出力を供給する。レジスタ2004は、マルチプレクサ2005に出力を供給する。マルチプレクサ2005は、レジスタ2006に出力を供給する。レジスタ2006は、出力2009でドメインTClkC1Bのデータを供給する。
図20の回路は、TClkC1BドメインへのClkCクロック・ドメインのデータの転送に使用される。2つのクロックClkCおよびTClkC1Bは、同一の周波数を有するが、位相が不一致である可能性がある。このクロック・ドメイン・クロッシングに使用することができる技法の1つが、ClkCDと称するClkCの遅延された版(遅延の限界は、変更することができるが、一実施形態では、選択される遅延が、ClkCサイクルの1/4である)を用いてTClkC1Bをサンプリングすることである。このサンプリングされた値SkipTによって、ClkCレジスタ内のデータをTClkC1Bレジスタに直接に転送するか、データをまず負エッジ・トリガされるClkCレジスタに通すかが判定される。
図20に関して、下記のワースト・ケース・セットアップ制約を仮定することができる。
ケースC0
D,MIN−tS1,MIN≧tV,MAX+tM,MAX+tS,MIN
または
D,MIN≧tS1,MIN+tV,MAX+tM,MAX+tS,MIN ** 制約S **
ケースA1
D,MIN−tS1,MIN≧tV,MAX+tS,MIN
または
D,MIN≧tS1,MIN+tV,MAX+tS,MIN
下記のワースト・ケース・ホールド制約を仮定することができる。
ケースD1
H,MIN≦tCH,MIN−tD,MAX−tH1,MIN−tV,MIN
または
D,MAX≦tCH,MIN−tH1,MIN−tV,MIN−tH,MIN
または
D,MAX≦tCL,MIN−tH1,MIN−tV,MIN−tM,MIN−tH,MIN
ケースB0
H,MIN≦tCL,MIN−tD,MAX−tH1,MIN−tV,MIN−tM,MIN
または
D,MAX≦tCL,MIN−tH1,MIN−tV,MIN−tM,MIN−tH,MIN ** 制約H**
上で使用されたタイミング・パラメータの定義は、上の図18の説明にある。
図21は、本発明の実施形態による、図13の送出ブロック202のスキップ・ロジックのタイミングの詳細を示すタイミング図である。図21には、ClkCDクロック信号2101、ClkCクロック信号2102、TClkC1B(ケースA0)クロック信号2103、TClkC1B(ケースA1)クロック信号2104、TClkC1B(ケースB0)クロック信号2105、TClkC1B(ケースB1)クロック信号2106、TClkC1B(ケースC0)クロック信号2107、TClkC1B(ケースC1)クロック信号2108、TClkC1B(ケースD0)クロック信号2109、およびTClkC1B(ケースD1)クロック信号2110の波形が示されている。1クロック・サイクルのインターバルの時刻2111、2112、2113、2114、2115、2116、2117、および2118が、クロック信号の間のタイミングの差を示すために図示されている。
図21には、A0からD1というラベルを付けられた8つのケースとして、TClkC1BとClkCの可能な位相整列が全般的に要約されている。これらのケースは、TClkC1BをサンプリングしてSkipT値を決定するClkCDの立ち上がりエッジのセット/ホールド・ウィンドウに対するTClkC1Bの立ち上がりエッジおよび立ち下がりエッジの位置によって区別される。明らかに、TClkC1Bの立ち上がりエッジまたは立ち下がりエッジがこのウィンドウの外にある場合に、これが正しくサンプリングされる。このエッジが、ウィンドウの縁またはウィンドウ内にある場合には、0または1のいずれかとしてサンプリングされる可能性がある(すなわち、サンプルの有効性を保証できない)。スキップ・ロジックは、どちらの場合でも正しく機能するように設計され、このスキップ・ロジックが、ClkCDクロックの遅延tDに対する限界を判定する。
送出ブロックについて、ケースC0 2107が、ワースト・ケース・セットアップ制約を有し、ケースB0 2105が、ワースト・ケース・ホールド制約を有する。
D,MIN≧tS1,MIN+tV,MAX+tM,MAX+tS,MIN ** 制約S **
D,MAX≦tCL,MIN−tH1,MIN−tV,MIN−tM,MIN−tH,MIN ** 制約H**
前に述べたように、tD(ClkCに対するClkCDの遅延)の公称値は、ClkCサイクルの1/4になると期待される。この値は、上で示したtD,MAX値まで上に、またはtD,MIN値まで下に変動する可能性がある。セット時間、ホールド時間、mux(すなわちマルチプレクサ)時間、および有効時間のすべてが0になる場合には、tDの値は、上にtCH,MIN(ClkCの最小ハイ時間)、下に0まで変動する可能性がある。しかし、レジスタの有限のセット/ホールド・ウィンドウ、有限のクロック−出力(有効時間)遅延およびマルチプレクサ遅延が組み合わされて、tD値の許容可能な変動が減らされる。
上で図19に関して説明したように、スキップ・ロジックのいくつかの要素を、その全般的な機能性を保ちながら異なる実施形態のために変更することができる。同様に、図19のスキップ・ロジックに関して説明したように、使用されるスキップ値が、初期化中に生成され、その後、レジスタにロードされる(LoadSkip制御信号を用いて)ことが好ましい。
図22は、本発明の実施形態による、データ・クロッキング配置の例を示すタイミング図である。しかし、この例では、メモリ・コントローラおよびメモリ・コンポーネントのクロック位相が、図5から21に示された例の値と異なる値の組に調整されている。WClkS1,M0クロック信号2201およびRClkS1,M0クロック信号2202の波形が、スライス0のメモリ・コントローラ・コンポーネントの展望からのスライス1のデータ・タイミングを示すために図示されている。WClkS1,M0クロック信号2201のシーケンシャル・サイクルの立ち上がりエッジは、それぞれ、時刻2205、2206、2207、2208、2209、2210、2211、および2212に発生する。書込データ情報Da2213が、時刻2205にコントローラのデータ線に存在する。読取データ情報Qb 2214が、時刻2208に存在する。読取データ情報Qc 2215が、時刻2209に存在する。書込データ情報Dd 2216が、時刻2210に存在する。書込データ情報De 2217が、時刻2211に存在する。
WClkS1,M1クロック信号2203およびRClkS1,M1クロック信号2204の波形が、スライス1のメモリ・コンポーネントの展望からのスライス1のデータ・タイミングを示すために図示されている。書込データ情報Da 2218が、時刻2206にメモリ・コンポーネントのデータ線に存在する。読取データ情報Qb 2219が、時刻2207に存在する。読取データ情報Qc 2220が、時刻2208に存在する。書込データ情報Dd 2221が、時刻2211に存在する。書込データ情報De 2222が、時刻2212に存在する。
図5から21に示された例示的システムでは、読取データおよび書込データのクロックが、各メモリ・コンポーネントで同相であることが仮定されていた。図22では、スライスごとに、各メモリ・コンポーネントの読取クロックが、コントローラでの書込クロックと同相であり(RClkSi,M0=WClkSi,M1)、伝搬遅延tPD2が各方向で同一なので、各メモリ・コンポーネントの書込クロックが、コントローラでの読取クロックと同相である(WClkSi,M0=RClkSi,M1)と仮定される。この位相の関係によって、読取データおよび書込データのタイミング・スロットが、図6に対してシフトされるが、書込−読取−読取−書込シーケンス中に2つのアイドル・サイクルが挿入されるという事実は変化しない。この位相の関係によって、システム内でドメイン・クロッシングが発生する位置が変更される(一部のドメイン・クロッシング・ロジックが、コントローラからメモリ・コンポーネントに移動される)。
図23から26は、本発明の実施形態による、データ・クロッキング配置の例を示すタイミング図である。しかし、この例では、メモリ・コントローラ内のクロック位相とメモリ・コンポーネント内のクロック位相が、図5から21に示された例の値と異なる値の組に調整されている。図23から26の例では、図22の例と異なるクロック位相値の組も使用される。
図23は、本発明の実施形態による、データ・クロッキング配置の例を示すタイミング図である。WClkSi,M0クロック信号2301およびRClkS1,M0クロック信号2302の波形が、スライス0のメモリ・コントローラ・コンポーネントの展望からのスライス1のデータ・タイミングを示すために図示されている。WClkSi,M0クロック信号2301のシーケンシャル・サイクルの立ち上がりエッジが、それぞれ、時刻2305、2306、2307、および2308に発生する。書込データ情報Da 2309が、WClkSi,M0クロック信号2301の第1サイクル中にコントローラのデータ・バスに存在する。読取データ情報Qb 2310が、WClkSi,M0クロック信号2301の第4サイクルに存在する。読取データ情報Qc 2311が、時刻2305に存在する。書込データ情報Dd 2312が、時刻2306に存在する。書込データ情報De 2313が、時刻2307に存在する。
WClkS1,M1クロック信号2303およびRClkS1,M1クロック信号2304の波形が、スライス1のメモリ・コンポーネントの展望からのスライス1のデータ・タイミングを示すために図示されている。書込データ情報Da 2314が、スライス0のメモリ・コントローラ・コンポーネントの展望からの位置に対して1クロック・サイクル進んでいる。言い換えると、書込データは、コントローラのデータ・バスに現れる時より約1クロック・サイクル後にメモリ・デバイスのデータ・バスに現れる。読取データ情報Qb 2315は、スライス0のメモリ・コントローラ・コンポーネントの展望からの位置に対して1クロック・サイクル遅れている。読取データ情報Qc 2316も、スライス0のメモリ・コントローラ・コンポーネントの展望からの位置に対して1クロック・サイクル遅れている。書込データ情報Dd 2317は、時刻2307に存在する。書込データ情報De 2318は、時刻2308に存在する。
この例のシステムでは、読取データおよび書込データのクロックが、各メモリ・コンポーネントで同相であると仮定されている。図23では、各スライスについて、読取クロックおよび書込クロックが、コントローラで同相であり(RClkSi,M0=WClkSi,M0)、また、各スライスが、コントローラ側の他のすべてのスライスと同相である(WClkSi,M0=WClkSjM0)と仮定されている。これによって、読取データおよび書込データのタイミング・スロットが、図6および図22に対してシフトされるが、書込−読取−読取−書込シーケンス中に2つのアイドル・サイクルが使用されるという事実は変化しない。この位相の関係によって、システム内でドメイン・クロッシングが発生する位置が変更される(すべてのドメイン・クロッシング・ロジックが、コントローラからメモリ・コンポーネントに移動される)。
図6は、3つのすべてのクロック位相(アドレス、読取データ、および書込データ)が、各メモリ・コンポーネントで同一にされるケースを表し、図23は、3つのすべてのクロック位相(アドレス、読取データ、および書込データ)が、メモリ・コントローラで同一にされるケースを表し、図22は、1つの可能な中間のケースを表す。このケースの範囲は、本発明のさまざまな実施形態をさまざまな位相設定で実施できることを強調するために示されたものである。メモリ・コントローラおよびメモリ・コンポーネントは、クロック位相設定のあらゆる組合せをサポートするように簡単に構成することができる。
3つのすべてのクロック位相(アドレス、読取データ、および書込データ)が各メモリ・コンポーネントで同一にされる1つの極端のケース(図5から21に図示)は、各メモリ・コンポーネント内に単一のクロック・ドメインがあるので重要である。3つのすべてのクロック位相(アドレス、読取データ、および書込データ)がメモリ・コントローラで同一にされるもう一方の極端のケース(図23)も、コントローラ内に単一のクロック・ドメインがあるので重要である。図24から26に、このケースをさらに示す。
図24は、本発明の実施形態による、図23に示されたデータ・クロッキング配置の例のメモリ・コントローラ・コンポーネントでのタイミングを示すタイミング図である。AClkS0M1クロック信号2401が、スライス0のメモリ・コントローラ・コンポーネントの展望からのメモリ・モジュール1のアドレス/制御タイミングを示すために図示されている。AClkS0M1クロック信号2401のシーケンシャル・サイクルの立ち上がりエッジは、それぞれ、時刻2406、2407、2408、2409、2410、2411、2412、および2413に発生する。アドレス情報ACa 2414が、時刻2406にコントローラのアドレス信号線に存在する。アドレス情報ACb 2415が、時刻2407に存在する。アドレス情報ACc 2416が、時刻2408に存在する。アドレス情報ACd 2417が、時刻2412に存在する。
WClkS1,M0クロック信号2402およびRClkS1,M0クロック信号2403の波形が、モジュール0のメモリ・コントローラ・コンポーネントの展望からのスライス1のデータ・タイミングを示すために図示されている。書込データ情報Da 2418が、時刻2407にコントローラのデータ線に存在する。読取データ情報Qb 2419が、時刻2411に存在する。読取データ情報Qc2420が、時刻2412に存在する。書込データ情報Dd 2421が、時刻2413に存在する。
WClkSNsM0クロック信号2404およびRClkSNsM0クロック信号2405の波形が、モジュール0のメモリ・コントローラ・コンポーネントの展望からのスライスNSのデータ・タイミングを示すために図示されている。書込データ情報Da 2422が、時刻2407にコントローラのデータ線に存在する。読取データ情報Qb 2423が、時刻2411に存在する。読取データ情報Qc 2424が、時刻2412に存在する。書込データ情報Dd 2425が、時刻2413に存在する。
図24から26は、すべてのクロック位相がコントローラで整列されるケースの総合システム・タイミングを示す図である。図24は、コントローラでのタイミングであり、クロックのすべてが、各メモリ・スライスではなくコントローラで共通であるという事実を除いて、図7に類似する。その結果、クロックは、図24ではすべてが整列され、コントローラが書込−読取−読取−書込シーケンスに挿入する2サイクルのギャップが、アドレス・パケットACcとACdの間で明白である。
図25は、本発明の実施形態による、図23に示されたデータ・クロッキング配置の例のメモリ・コンポーネントの1ランクの第1スライスでのタイミングを示すタイミング図である。AClkS1,M1クロック信号2501の波形が、スライス1のメモリ・コンポーネントの展望からのメモリ・モジュール1のアドレス/制御タイミングを示すために図示されている。時刻2504、2505、2506、2507、2508、2509、2510、および2511が、それぞれ図24の時刻2406、2407、2408、2409、2410、2411、2412、および2413に対応する。信号AClkS1,M1 2501は、図24の信号AClkS0M1 2401に対してtPD0の遅延だけ遅れている。言い換えると、AClk信号は、コントローラからメモリ・コンポーネントに伝搬するのに時間tPD0を要する。アドレス情報ACa 2512が、信号2501のエッジ2530に関連する。アドレス情報ACb 2513が、信号2501のエッジ2531に関連する。アドレス情報ACc 2514が、信号2501のエッジ2532に関連する。アドレス情報ACd 2515が、信号2501のエッジ2533に関連する。
WClkS1,M1クロック信号2502およびRClkS1,M1クロック信号2503の波形が、モジュール1のメモリ・コンポーネントの展望からのスライス1のデータ・タイミングを示すために図示されている。図25には、第1メモリ・コンポーネント(スライス1)のタイミングが示されており、クロックは、伝搬遅延tPD2およびtPD0のゆえに不整列になっている。信号WClkS1,M1 2502は、図24の信号WClkS1,M0 2402に対してtPD2の遅延だけ遅れている。書込データ情報Da 2516が、信号2502のエッジ2534に関連する。書込データ情報Dd 2519が、信号2502のエッジ2537に関連する。信号RClkS1,M1 2503は、図24の信号RClkS1,M0 2403よりtPD2だけ進んでいる。読取データ情報Qb 2517が、信号2503のエッジ2535に関連する。読取データ情報Qc 2518が、信号2503のエッジ2536に関連する。
図26は、本発明の実施形態による、図23に示されたデータ・クロッキング配置の例のメモリ・コンポーネントの1ランクの最終スライスでのタイミングを示すタイミング図である。AClkSNsM1クロック信号2601の波形が、スライスNSのメモリ・コンポーネントの展望からのメモリ・モジュール1のアドレス/制御タイミングを示すために図示されている。時刻2604、2605、2606、2607、2608、2609、2610、および2611は、それぞれ、図24の時刻2406、2407、2408、2409、2410、2411、2412、および2413に対応する。信号AClkSNsM1 2601は、図24の信号AClkS0M1 2401に対してtPD0+tPD1の遅延だけ遅れている。言い換えると、アドレス情報ACa 2612は、信号2601のエッジ2630に関連する。アドレス情報ACb 2613は、信号2601のエッジ2631に関連する。アドレス情報ACc 2614は、信号2601のエッジ2632に関連する。アドレス情報ACd 2615は、信号2601のエッジ2633に関連する。
WClkSNsM1クロック信号2602およびRClkSNsM1クロック信号2603の波形が、モジュール1のメモリ・コンポーネントの展望からのスライスNSのデータ・タイミングを示すために図示されている。信号WClkSNsM1 2602は、図24の信号WClkS1,M0 2402に対してtPD2の遅延だけ遅れている。書込データ情報Da 2616は、信号2602のエッジ2634に関連する(たとえば、書込データ情報Da 2616は、信号2602のエッジ2634がメモリ・コンポーネントのAClkクロック導体に存在する時に、メモリ・コンポーネントのデータ・バスに存在する)。書込データ情報Dd 2619は、信号2602のエッジ2637に関連する。信号RClkSNsM1 2603は、図24の信号RClkS1,M0 2403よりtPD2だけ進んでいる。読取データ情報Qb 2617は、信号2603のエッジ2635に関連する。読取データ情報Qc 2618は、信号2603のエッジ2636に関連する。
図26は、最後のメモリ・コンポーネント(スライスNS)のタイミングを示す図であり、クロックは、伝搬遅延tPD1のゆえにさらに不整列になっている。その結果、各メモリ・コンポーネントは、図12から21に関して説明したように、コントローラ内にあるものに類似するドメイン・クロッシング・ハードウェアを有する。
メモとして、図2の示された例のシステムに、単一のメモリ・モジュール、そのモジュール上のメモリ・コンポーネントの単一のランク、共通のアドレスおよび制御バス(その結果、各コントローラ・ピンが複数のメモリ・コンポーネントのそれぞれのピンに接続される)、およびスライスされたデータ・バス(各コントローラ・ピンが正確に1つのメモリ・コンポーネントのピンに接続される)が含まれる。これらの特性は、詳細の説明を単純にするために、この構成が例示的な特殊なケースであるがゆえに、例の実施形態のために選択されたものである。しかし、説明したクロッキング方法を、広範囲のシステム・トポロジに拡張することができる。したがって、本発明の実施形態を、図2の例のシステムの特徴と異なる特徴を有するシステムを用いて実践できることを理解されたい。
この議論の残りでは、複数のメモリ・モジュールまたはモジュールごとに複数のメモリ・ランク(またはその両方)を有するシステムに焦点を合わせる。これらのシステムでは、各データ・バス・ワイヤが、1つのコントローラ・ピンと、複数のメモリ・コンポーネントのそれぞれの1つのピンとに接続される。コントローラとメモリ・コンポーネントのそれぞれの間のtPD2伝搬遅延が異なるので、コントローラ内のクロック・ドメイン・クロッシングの問題が、複雑になる。各メモリ・コンポーネントですべてのクロックを整合させるという選択が行われる場合には、コントローラが、スライス内のメモリ・コンポーネントのランクまたはモジュールごとに1組のドメイン・クロッシング・ハードウェアを必要とする。これは、大量のコントローラ面積を必要とし、クリティカルなタイミング・パスに悪影響するという点で、短所を持つ。したがって、複数モジュールまたは複数ランクのシステムでは、クロックのすべてをコントローラで整列させ、ドメイン・クロッシング・ロジックをメモリ・コンポーネント内に配置することが望ましい可能性がある。
図27は、本発明の実施形態による、複数のランクのメモリ・コンポーネントおよび複数のメモリ・モジュールを含むメモリ・システムを示すブロック図である。このメモリ・システムには、メモリ・コントローラ・コンポーネント2702、メモリ・モジュール2703、メモリ・モジュール2730、書込クロック2705、読取クロック2706、書込クロック2726、読取クロック2727、スプリッティング・コンポーネント2742、スプリッティング・コンポーネント2743、終端コンポーネント2720、終端コンポーネント2724、終端コンポーネント2737、および終端コンポーネント2740が含まれる。図示の例のシステムに、スライスごとに少なくとも1つの書込クロックがあることを理解されたい。
各メモリ・モジュール内で、メモリ・コンポーネントがランクに編成される。メモリ・モジュール2703の第1ランクには、メモリ・コンポーネント2716、2717、および2718が含まれる。メモリ・モジュール2703の第2ランクには、メモリ・コンポーネント2744、2745、および2746が含まれる。メモリ・モジュール2730の第1ランクには、メモリ・コンポーネント2731、2732、および2733が含まれる。メモリ・モジュール2730の第2ランクには、メモリ・コンポーネント2734、2735、および2736が含まれる。
このメモリ・システムは、メモリ・コントローラ・コンポーネントおよびメモリ・モジュールにまたがるスライスに編成される。このスライスの例に、スライス2713、スライス2714、およびスライス2715が含まれる。各スライスに、各ランクの1つのメモリ・コンポーネントが含まれる。この実施形態では、各メモリ・モジュール内の各スライスに、それ自体のデータ・バス2708、書込クロック導体2710、および読取クロック導体2711が設けられる。データ・バス2708は、メモリ・コントローラ・コンポーネント2702、メモリ・コンポーネント2716、およびメモリ・コンポーネント2744に結合される。終端コンポーネント2720が、メモリ・コントローラ・コンポーネント2702の近くでデータ・バス2708に結合され、終端コンポーネント2720を、たとえばメモリ・コントローラ・コンポーネント2702に組み込むことができる。終端コンポーネント2721が、データ・バス2708の反対の末端の近くに結合され、好ましくはメモリ・モジュール2703内に設けられる。書込クロック2705が、書込クロック導体2710に結合され、書込クロック導体2710は、メモリ・コントローラ・コンポーネント2702とメモリ・コンポーネント2716および2744に結合される。終端コンポーネント2723が、書込クロック導体2710の、メモリ・コンポーネント2716および2744に近い末端の近くに、好ましくはメモリ・モジュール2703内で結合される。読取クロック2706が、読取クロック導体2711に結合され、読取クロック導体2711は、スプリッティング・コンポーネント2742を介してメモリ・コントローラ・コンポーネント2702とメモリ・コンポーネント2716および2744に結合される。スプリッティング・コンポーネントは、下でさらに詳細に説明する。終端コンポーネント2724が、メモリ・コントローラ・コンポーネント2702の近くで結合され、終端コンポーネント2724を、たとえばメモリ・コントローラ・コンポーネント2702に組み込むことができる。終端コンポーネント2725が、メモリ・コンポーネント2716および2744に近い読取クロック導体2711の末端の近くに、好ましくはメモリ・モジュール2703内で結合される。
メモリ・モジュール2730のスライス2713に、データ・バス2747、書込クロック導体2728、読取クロック導体2729が設けられる。データ・バス2747は、メモリ・コントローラ・コンポーネント2702、メモリ・コンポーネント2731、およびメモリ・コンポーネント2734に結合される。終端コンポーネント2737が、メモリ・コントローラ・コンポーネント2702の近くでデータ・バス2747に結合され、終端コンポーネント2737を、たとえばメモリ・コントローラ・コンポーネント2702に組み込むことができる。終端コンポーネント2738が、データ・バス2747の反対の末端の近くに結合され、好ましくはメモリ・モジュール2730内に設けられる。書込クロック2726が、書込クロック導体2728に結合され、書込クロック導体2728は、メモリ・コントローラ・コンポーネント2702とメモリ・コンポーネント2731および2734に結合される。終端コンポーネント2739が、メモリ・コンポーネント2731および2734の近くの書込クロック導体2728の末端に、好ましくはメモリ・モジュール2730内で結合される。読取クロック2727が、読取クロック導体2729に結合され、読取クロック導体2729は、スプリッティング・コンポーネント2743を介してメモリ・コントローラ・コンポーネント2702とメモリ・コンポーネント2731および2734に結合される。終端コンポーネント2740が、メモリ・コントローラ・コンポーネント2702の近くに結合され、終端コンポーネント2740を、たとえばメモリ・コントローラ・コンポーネント2702に組み込むことができる。終端コンポーネント2741が、メモリ・コンポーネント2731および2734の近くの読取クロック導体2729の末端の近くに、好ましくはメモリ・モジュール2730内で結合される。
スライスされたデータ・バスを、メモリ・システム内のメモリ・コンポーネントの複数のランクおよび複数のメモリ・コンポーネントに拡張することができる。この例では、各モジュールのスライスごとに専用のデータ・バスがある。各データ・バスは、各モジュール上のメモリ・デバイスのランクによって共有される。ワイヤがメイン・プリント配線基板からモジュールに移行する時にワイヤのインピーダンスを整合させ、その結果、性能を損なう範囲まで異ならないようにすることが好ましい。いくつかの実施形態では、終端コンポーネントが、各モジュール上にある。データと共に移動する専用の読取クロックおよび書込クロックが、データ・バスごとに図示されているが、これらを仮想クロックとみなすことができる。すなわち、読取クロックおよび書込クロックを、既に説明した例示的システムのようにアドレス/制御クロックから合成することができる。
図28は、本発明の実施形態による、複数のランクのメモリ・コンポーネントおよび複数のメモリ・モジュールを含むメモリ・システムを示すブロック図である。このメモリ・システムには、メモリ・コントローラ・コンポーネント2802、メモリ・モジュール2803、メモリ・モジュール2830、書込クロック2805、読取クロック2806、スプリッティング・コンポーネント2842、スプリッティング・コンポーネント2843、スプリッティング・コンポーネント2848、スプリッティング・コンポーネント2849、スプリッティング・コンポーネント2850、スプリッティング・コンポーネント2851、終端コンポーネント2820、終端コンポーネント2824、終端コンポーネント2880、および終端コンポーネント2881が含まれる。
各メモリ・モジュール内で、メモリ・コンポーネントがランクに編成される。メモリ・モジュール2803の第1ランクには、メモリ・コンポーネント2816、2817、および2818が含まれる。メモリ・モジュール2803の第2ランクには、メモリ・コンポーネント2844、2845、および2846が含まれる。メモリ・モジュール2830の第1ランクには、メモリ・コンポーネント2831、2832、および2833が含まれる。メモリ・モジュール2830の第2ランクには、メモリ・コンポーネント2834、2835、および2836が含まれる。
このメモリ・システムは、メモリ・コントローラ・コンポーネントおよびメモリ・モジュールにまたがるスライスに編成される。このスライスの例に、スライス2813、スライス2814、およびスライス2815が含まれる。各スライスに、各ランクの1つのメモリ・コンポーネントが含まれる。この実施形態では、複数のメモリ・モジュールにまたがる各スライスに、データ・バス2808、書込クロック導体2810、および読取クロック導体2811が設けられる。データ・バス2808は、メモリ・コントローラ・コンポーネント2802に結合され、スプリッタ2848を介してメモリ・コンポーネント2816および2844に結合され、スプリッタ2849を介してメモリ・コンポーネント2831および2834に結合される。終端コンポーネント2820が、メモリ・コントローラ・コンポーネント2802の近くでデータ・バス2808に結合され、終端コンポーネント2820を、たとえばメモリ・コントローラ・コンポーネント2802に組み込むことができる。終端コンポーネント2880が、データ・バス2808の反対の末端の近くで、スプリッタ2849の近くに結合される。終端コンポーネント2821が、メモリ・コンポーネント2816および2844の近くに結合され、好ましくはメモリ・モジュール2803内に設けられる。終端モジュール2838が、メモリ・コンポーネント2831および2834の近くに結合され、好ましくはメモリ・モジュール2830内に設けられる。
書込クロック2805は、書込クロック導体2810に結合され、書込クロック導体2810は、メモリ・コントローラ・コンポーネント2802に結合され、スプリッタ2850を介してメモリ・コンポーネント2816および2844に結合され、スプリッタ2851を介してメモリ・コンポーネント2831および2834に結合される。終端コンポーネント2881が、書込クロック導体2810の末端の近くで、スプリッタ2851の近くに結合される。終端コンポーネント2823が、メモリ・コンポーネント2816および2844の近くに、好ましくはメモリ・モジュール2803内で結合される。終端コンポーネント2839が、メモリ・コンポーネント2831および2834の近くに、好ましくはメモリ・モジュール2830内で結合される。
読取クロック2806が、読取クロック導体2811に結合され、読取クロック導体2811は、スプリッティング・コンポーネント2843を介してメモリ・コンポーネント2831および2834に結合され、スプリッティング・コンポーネント2842を介してメモリ・コントローラ・コンポーネント2802とメモリ・コンポーネント2816および2844に結合される。終端コンポーネント2824が、メモリ・コントローラ・コンポーネント2802の近くに結合され、終端コンポーネント2824を、たとえばメモリ・コントローラ・コンポーネント2802に組み込むことができる。終端コンポーネント2825が、読取クロック導体2811の末端の近くでメモリ・コンポーネント2816および2844の近くに、好ましくはメモリ・モジュール2803内で結合される。終端コンポーネント2841が、読取クロック導体2811の末端の近くでメモリ・コンポーネント2831および2834の近くに、好ましくはメモリ・モジュール2830内で結合される。
図からわかるように、この例では、図28に示されているようにすべてのメモリ・モジュールによって共有されるデータ・スライスごとに1つのデータ・バスが使用される。この例では、各データ・ワイヤが、ある形のスプリッティング・コンポーネントSを使用してタッピングされる。このスプリッタは、受動インピーダンス・マッチャ(デルタ構成またはy構成の3つの抵抗)もしくはなんらかの形の能動バッファまたはスイッチ要素とすることができる。どちらの場合でも、各ワイヤの電気インピーダンスが、その長さに沿って維持され(製造限度内で)、その結果、信号の完全性が高く保たれる。前の構成と同様に、スプリットされたデータ・バスのそれぞれが、メモリ・モジュール上で、スライス内のすべてのメモリ・コンポーネントを通り、終端コンポーネントへルーティングされる。
図29は、本発明の実施形態による、複数のランクのメモリ・コンポーネントおよび複数のメモリ・モジュールを含むメモリ・システムを示すブロック図である。このメモリ・システムには、メモリ・コントローラ・コンポーネント2902、メモリ・モジュール2903、メモリ・モジュール2930、書込クロック2905、読取クロック2906、終端コンポーネント2920、終端コンポーネント2921、終端コンポーネント2923、および終端コンポーネント2924が含まれる。
各メモリ・モジュール内で、メモリ・コンポーネントがランクに編成される。メモリ・モジュール2903の第1ランクに、メモリ・コンポーネント2916、2917、および2918が含まれる。メモリ・モジュール2903の第2ランクに、メモリ・コンポーネント2944、2945、および2946が含まれる。メモリ・モジュール2930の第1ランクに、メモリ・コンポーネント2931、2932、および2933が含まれる。メモリ・モジュール2930の第2ランクに、メモリ・コンポーネント2934、2935、および2936が含まれる。
このメモリ・システムは、メモリ・コントローラ・コンポーネントおよびメモリ・モジュールにまたがるスライスに編成される。このスライスの例に、スライス2913、スライス2914、およびスライス2915が含まれる。各スライスに、各ランクの1つのメモリ・コンポーネントが含まれる。この実施形態では、メモリ・モジュールにまたがる各スライスが、共通のデイジー・チェイン接続されたデータ・バス2908、共通のデイジー・チェイン接続された書込クロック導体2910、および共通のデイジー・チェイン接続された読取クロック導体2911を共有する。データ・バス2908は、メモリ・コントローラ・コンポーネント2902、メモリ・コンポーネント2916、メモリ・コンポーネント2944、メモリ・コンポーネント2931、およびメモリ・コンポーネント2934に結合される。終端コンポーネント2920が、メモリ・コントローラ・コンポーネント2902の近くでデータ・バス2908に結合され、終端コンポーネント2920を、たとえばメモリ・コントローラ・コンポーネント2902に組み込むことができる。終端コンポーネント2921が、データ・バス2908の反対の末端の近くに結合される。
書込クロック2905が、書込クロック導体2910に結合され、書込クロック導体2910は、メモリ・コントローラ・コンポーネント2902と、メモリ・コンポーネント2916、2944、2931、および2934に結合される。終端コンポーネント2923が、書込クロック導体2910の末端の近くに結合される。読取クロック2906が、読取クロック導体2911に結合され、読取クロック導体2911は、メモリ・コントローラ・コンポーネント2902と、メモリ・コンポーネント2916、2944、2931、および2934に結合される。終端コンポーネント2924が、メモリ・コントローラ・コンポーネント2902の近くに結合され、終端コンポーネント2924を、たとえばメモリ・コントローラ・コンポーネント2902に組み込むことができる。
この実施形態では、データ・スライスごとに単一のデータ・バスがあるが、スプリッティング・コンポーネントを使用するのではなく、各データ・ワイヤが、メモリ・モジュール上で、スライスのすべてのメモリ・コンポーネントを通り、モジュールから出てメイン・ボードにルーティングされて、別のメモリ・モジュールを「チェイン」するか、終端コンポーネントに入る。上でデータ・バスに関して説明した同一の3つの構成代替案は、複数モジュール、複数ランク・メモリ・システム内の共通制御/アドレス・バスにも適用可能である。
図30は、本発明の実施形態による、メモリ・モジュールごとの専用の制御/アドレス・バスを有する複数のランクのメモリ・コンポーネントと複数のメモリ・モジュールを含むメモリ・システムを示すブロック図である。このメモリ・システムには、メモリ・コントローラ・コンポーネント3002、メモリ・モジュール3003、メモリ・モジュール3030、アドレス/制御クロック3004、アドレス/制御クロック3053、終端コンポーネント3052、および終端コンポーネント3056が含まれる。
各メモリ・モジュール内で、メモリ・コンポーネントがランクに編成される。メモリ・モジュール3003の第1ランクに、メモリ・コンポーネント3016、3017、および3018が含まれる。メモリ・モジュール3003の第2ランクに、メモリ・コンポーネント3044、3045、および3046が含まれる。メモリ・モジュール3030の第1ランクに、メモリ・コンポーネント3031、3032、および3033が含まれる。メモリ・モジュール3030の第2ランクに、メモリ・コンポーネント3034、3035、および3036が含まれる。
このメモリ・システムは、メモリ・コントローラ・コンポーネントおよびメモリ・モジュールにまたがるスライスに編成される。このスライスの例に、スライス3013、スライス3014、およびスライス3015が含まれる。各スライスに、各ランクの1つのメモリ・コンポーネントが含まれる。この実施形態では、各メモリ・モジュールに、それ自体のアドレス・バス3007およびアドレス/制御クロック導体3010が設けられる。アドレス・バス3007は、メモリ・コントローラ・コンポーネント3002と、メモリ・コンポーネント3016、3017、3018、3044、3045、および3046に結合される。終端コンポーネント3052が、メモリ・コントローラ・コンポーネント3002の近くでアドレス・バス3007に結合され、終端コンポーネント3052を、たとえばメモリ・コントローラ・コンポーネント3002に組み込むことができる。終端コンポーネント3019が、アドレス・バス3007の反対の末端の近くに結合され、好ましくはメモリ・モジュール3003内に設けられる。アドレス/制御クロック3004が、アドレス/制御クロック導体3009に結合され、アドレス/制御クロック導体3009は、メモリ・コントローラ・コンポーネント3002と、メモリ・コンポーネント3016、3017、3018、3044、3045、および3046に結合される。終端コンポーネント3022が、アドレス/制御クロック導体3009の末端の近くに、好ましくはメモリ・モジュール3003内で結合される。
メモリ・モジュール3030に、アドレス・バス3054とアドレス/制御クロック導体3055が設けられる。アドレス・バス3054は、メモリ・コントローラ・コンポーネント3002と、メモリ・コンポーネント3031、3032、3033、3034、3035、および3036に結合される。終端コンポーネント3056が、メモリ・コントローラ・コンポーネント3002の近くでアドレス・バス3054に結合され、終端コンポーネント3056を、たとえばメモリ・コントローラ・コンポーネント3002に組み込むことができる。終端コンポーネント3057が、アドレス・バス3054の反対の末端の近くに結合され、好ましくはメモリ・モジュール3030内に設けられる。アドレス/制御クロック3053が、アドレス/制御クロック導体3055に結合され、アドレス/制御クロック導体3055は、メモリ・コントローラ・コンポーネント3002と、メモリ・コンポーネント3031、3032、3033、3034、3035、および3036に結合される。終端コンポーネント3058が、アドレス/制御クロック導体3055の末端の近くに、好ましくはメモリ・モジュール3030内で結合される。
各制御/アドレス・ワイヤは、メモリ・モジュール上で、すべてのメモリ・コンポーネントを通り、終端コンポーネントへルーティングされる。ワイヤ・ルーティングは、モジュール上のランクの方向で図示されているが、スライスの方向にルーティングすることもできる。
図31は、本発明の実施形態による、メモリ・モジュールの間で共有される単一の制御/アドレス・バスを有する複数のランクのメモリ・コンポーネントと複数のメモリ・モジュールを含むメモリ・システムを示すブロック図である。このメモリ・システムには、メモリ・コントローラ・コンポーネント3102、メモリ・モジュール3103、メモリ・モジュール3130、アドレス/制御クロック3104、スプリッティング・コンポーネント3159、スプリッティング・コンポーネント3160、スプリッティング・コンポーネント3161、スプリッティング・コンポーネント3162、終端コンポーネント3163、および終端コンポーネント3164が含まれる。
各メモリ・モジュール内で、メモリ・コンポーネントがランクに編成される。メモリ・モジュール3103の第1ランクに、メモリ・コンポーネント3116、3117、および3118が含まれる。メモリ・モジュール3103の第2ランクに、メモリ・コンポーネント3144、3145、および3146が含まれる。メモリ・モジュール3130の第1ランクに、メモリ・コンポーネント3131、3132、および3133が含まれる。メモリ・モジュール3130の第2ランクに、メモリ・コンポーネント3134、3135、および3136が含まれる。
このメモリ・システムは、メモリ・コントローラ・コンポーネントおよびメモリ・モジュールにまたがるスライスに編成される。このスライスの例に、スライス3113、スライス3114、およびスライス3115が含まれる。各スライスに、各ランクの1つのメモリ・コンポーネントが含まれる。この実施形態では、アドレス・バス3107およびアドレス/制御クロック導体3109が、複数のメモリ・モジュールの間で各メモリ・コンポーネントに結合される。アドレス・バス3107が、メモリ・コントローラ・コンポーネント3102に結合され、スプリッタ3159を介してメモリ・コンポーネント3116、3117、3118、3144、3145、および3146に結合され、スプリッタ3161を介してメモリ・コンポーネント3131、3132、3133、3134、3135、および3136に結合される。終端コンポーネント3152が、メモリ・コントローラ・コンポーネント3102の近くでアドレス・バス3107に結合され、終端コンポーネント3152を、たとえばメモリ・コントローラ・コンポーネント3102に組み込むことができる。終端コンポーネント3163が、アドレス・バス3107の反対の末端の近くで、スプリッタ3161の近くに結合される。終端コンポーネント3119が、アドレス・バス3107に、好ましくはメモリ・モジュール3103内で結合される。終端コンポーネント3157が、アドレス・バス3107に、好ましくはメモリ・モジュール3130内で結合される。
アドレス/制御クロック3104が、アドレス/制御クロック導体3109に結合され、アドレス/制御クロック導体3109は、メモリ・コントローラ・コンポーネント3102に結合され、スプリッタ3160を介してメモリ・コンポーネント3116、3117、3118、3144、3145、および3146に結合され、スプリッタ3162を介してメモリ・コンポーネント3131、3132、3133、3134、3135、および3136に結合される。終端コンポーネント3164が、アドレス/制御クロック導体3109の末端の近くで、スプリッタ3162の近くに結合される。終端コンポーネント3122が、アドレス/制御クロック導体3109に、好ましくはメモリ・モジュール3103内で結合される。終端コンポーネント3158が、アドレス/制御クロック導体3109に、好ましくはメモリ・モジュール3130内で結合される。
この例では、各制御/アドレス・ワイヤが、ある形のスプリッティング・コンポーネントSを使用してタッピングされる。このスプリッタは、受動インピーダンス・マッチャ(デルタ構成またはy構成の3つの抵抗)もしくはなんらかの形の能動バッファまたはスイッチ要素とすることができる。どちらの場合でも、各ワイヤの電気インピーダンスが、その長さに沿って維持され(製造限度内で)、その結果、信号の完全性が高く保たれる。前の構成と同様に、スプリットされた制御/アドレス・バスのそれぞれが、メモリ・モジュール上で、すべてのメモリ・コンポーネントを通り、終端コンポーネントへルーティングされる。
図32は、本発明の実施形態による、すべてのメモリ・モジュールによって共有される単一の制御/アドレス・バスを有する複数のランクのメモリ・コンポーネントと複数のメモリ・モジュールを含むメモリ・システムを示すブロック図である。このメモリ・システムには、メモリ・コントローラ・コンポーネント3202、メモリ・モジュール3203、メモリ・モジュール3230、アドレス/制御クロック3204、終端コンポーネント3219、および終端コンポーネント3222が含まれる。
各メモリ・モジュール内で、メモリ・コンポーネントがランクに編成される。メモリ・モジュール3203の第1ランクに、メモリ・コンポーネント3216、3217、および3218が含まれる。メモリ・モジュール3203の第2ランクに、メモリ・コンポーネント3244、3245、および3246が含まれる。メモリ・モジュール3230の第1ランクに、メモリ・コンポーネント3231、3232、および3233が含まれる。メモリ・モジュール3230の第2ランクに、メモリ・コンポーネント3234、3235、および3236が含まれる。
このメモリ・システムは、メモリ・コントローラ・コンポーネントおよびメモリ・モジュールにまたがるスライスに編成される。このスライスの例に、スライス3213、スライス3214、およびスライス3215が含まれる。各スライスに、各ランクの1つのメモリ・コンポーネントが含まれる。この実施形態では、メモリ・モジュールのメモリ・コンポーネントが、共通のデイジー・チェイン接続されたアドレス・バス3207および共通のデイジー・チェイン接続されたアドレス/制御クロック導体3209を共有する。アドレス・バス3207は、メモリ・コントローラ・コンポーネント3202と、メモリ・コンポーネント3216、3217、3218、3244、3245、3246、3231、3232、3233、3234、3235、および3236に結合される。終端コンポーネント3252が、メモリ・コントローラ・コンポーネント3202の近くでアドレス・バス3207に結合され、終端コンポーネント3252を、たとえばメモリ・コントローラ・コンポーネント3202に組み込むことができる。終端コンポーネント3219が、アドレス・バス3207の反対の末端の近くに結合される。
アドレス/制御クロック3204が、アドレス/制御クロック導体3209に結合され、アドレス/制御クロック導体3209は、メモリ・コントローラ・コンポーネント3202と、メモリ・コンポーネント3216、3217、3218、3244、3245、3246、3231、3232、3233、3234、3235、および3236に結合される。終端コンポーネント3222が、アドレス/制御クロック導体3209の末端の近くに結合される。
図31のメモリ・システムと異なって、ある種のスプリッティング・コンポーネントを使用するのではなく、各制御/アドレス・ワイヤが、メモリ・モジュール上で、すべてのメモリ・コンポーネントを通って、モジュールから出てメイン・ボードにルーティングされて、別のメモリ・モジュールをチェインするか、終端コンポーネントに入る。
同一の3つの構成の代替案が、複数モジュール複数ランク・メモリ・システム内のスライスされた制御/アドレス・バスについて可能である。これは、ここまでで説明したシステムからの逸脱を表す。すなわち、前のシステムのすべてが、制御/アドレス・バスを有したが、この制御/アドレス・バスは、メモリ・スライスにまたがって共通であった。そのかわりに、スライスごとにアドレス/制御バスを設けることも可能である。各バスは、スライスごとのデータ・バスに沿ってルーティングされることが好ましく、書込動作だけを実行するデータ・バスと同一のトポロジ特性を有することが好ましい。
図33は、本発明の実施形態による、メモリ・モジュールごとの専用のスライスされた制御/アドレス・バスを有する複数のランクのメモリ・コンポーネントと複数のメモリ・モジュールを含むメモリ・システムを示すブロック図である。このメモリ・システムには、メモリ・コントローラ・コンポーネント3302、メモリ・モジュール3303、メモリ・モジュール3330、アドレス/制御クロック3304、アドレス/制御クロック3353、終端コンポーネント3352、および終端コンポーネント3356が含まれる。
各メモリ・モジュール内で、メモリ・コンポーネントがランクに編成される。メモリ・モジュール3303の第1ランクに、メモリ・コンポーネント3316、3317、および3318が含まれる。メモリ・モジュール3303の第2ランクに、メモリ・コンポーネント3344、3345、および3346が含まれる。メモリ・モジュール3330の第1ランクに、メモリ・コンポーネント3331、3332、および3333が含まれる。メモリ・モジュール3330の第2ランクに、メモリ・コンポーネント3334、3335、および3336が含まれる。
このメモリ・システムは、メモリ・コントローラ・コンポーネントおよびメモリ・モジュールにまたがるスライスに編成される。このスライスの例に、スライス3313、スライス3314、およびスライス3315が含まれる。各スライスに、各ランクの1つのメモリ・コンポーネントが含まれる。この実施形態では、各メモリ・モジュール内の各スライスに、それ自体のアドレス・バス3307とアドレス/制御クロック導体3310が設けられる。アドレス・バス3307は、メモリ・コントローラ・コンポーネント3302と、メモリ・コンポーネント3316および3344に結合される。終端コンポーネント3352が、メモリ・コントローラ・コンポーネント3302の近くでアドレス・バス3307に結合され、終端コンポーネント3352を、たとえばメモリ・コントローラ・コンポーネント3302に組み込むことができる。終端コンポーネント3319が、アドレス・バス3307の反対の末端の近くに結合され、好ましくはメモリ・モジュール3303内に設けられる。アドレス/制御クロック3304が、アドレス/制御クロック導体3309に結合され、アドレス/制御クロック導体3309は、メモリ・コントローラ・コンポーネント3302と、メモリ・コンポーネント3316および3344に結合される。終端コンポーネント3322が、アドレス/制御クロック導体3309の末端の近くに、好ましくはメモリ・モジュール3303内で結合される。
メモリ・モジュール3330に、アドレス・バス3354およびアドレス/制御クロック導体3355が設けられる。アドレス・バス3354は、メモリ・コントローラ・コンポーネント3302と、メモリ・コンポーネント3331および3334に結合される。終端コンポーネント3356が、メモリ・コントローラ・コンポーネント3302の近くでアドレス・バス3354に結合され、終端コンポーネント3356を、たとえばメモリ・コントローラ・コンポーネント3302に組み込むことができる。終端コンポーネント3357が、アドレス・バス3354の反対の末端の近くに結合され、好ましくはメモリ・モジュール3330内に設けられる。アドレス/制御クロック3353が、アドレス/制御クロック導体3355に結合され、アドレス/制御クロック導体3355は、メモリ・コントローラ・コンポーネント3302と、メモリ・コンポーネント3331および3334に結合される。終端コンポーネント3358が、アドレス/制御クロック導体3355の末端の近くに、好ましくはメモリ・モジュール3330内で結合される。各制御/アドレス・ワイヤは、メモリ・モジュール上で、スライス内のすべてのメモリ・コンポーネントを通り、終端コンポーネントへルーティングされる。
図34は、本発明の実施形態による、すべてのメモリ・モジュールによって共有される単一の制御/アドレス・バスを有する複数のランクのメモリ・コンポーネントと複数のメモリ・モジュールを含むメモリ・システムを示すブロック図である。このメモリ・システムには、メモリ・コントローラ・コンポーネント3402、メモリ・モジュール3403、メモリ・モジュール3430、アドレス/制御クロック3404、スプリッティング・コンポーネント3459、スプリッティング・コンポーネント3460、スプリッティング・コンポーネント3461、スプリッティング・コンポーネント3462、終端コンポーネント3463、および終端コンポーネント3464が含まれる。
各メモリ・モジュール内で、メモリ・コンポーネントがランクに編成される。メモリ・モジュール3403の第1ランクに、メモリ・コンポーネント3416、3417、および3418が含まれる。メモリ・モジュール3403の第2ランクに、メモリ・コンポーネント3444、3445、および3446が含まれる。メモリ・モジュール3430の第1ランクに、メモリ・コンポーネント3431、3432、および3433が含まれる。メモリ・モジュール3430の第2ランクに、メモリ・コンポーネント3434、3435、および3436が含まれる。
このメモリ・システムは、メモリ・コントローラ・コンポーネントおよびメモリ・モジュールにまたがるスライスに編成される。このスライスの例に、スライス3413、スライス3414、およびスライス3415が含まれる。各スライスに、各ランクの1つのメモリ・コンポーネントが含まれる。この実施形態では、アドレス・バス3407およびアドレス/制御クロック導体3409が、複数のメモリ・モジュールの間の1スライスの各メモリ・コンポーネントに結合される。アドレス・バス3407は、メモリ・コントローラ・コンポーネント3402に結合され、スプリッタ3459を介してメモリ・コンポーネント3416および3444に結合され、スプリッタ3461を介してメモリ・コンポーネント3431および3434に結合される。終端コンポーネント3452が、メモリ・コントローラ・コンポーネント3402の近くでアドレス・バス3407に結合され、終端コンポーネント3452を、たとえばメモリ・コントローラ・コンポーネント3402に組み込むことができる。終端コンポーネント3463が、アドレス・バス3407の反対の末端の近くで、スプリッタ3461の近くに結合される。終端コンポーネント3419が、アドレス・バス3407に、好ましくはメモリ・モジュール3403内で結合される。終端コンポーネント3457が、アドレス・バス3407に、好ましくはメモリ・モジュール3430内で結合される。
アドレス/制御クロック3404が、アドレス/制御クロック導体3409に結合され、アドレス/制御クロック導体3409は、メモリ・コントローラ・コンポーネント3402に結合され、スプリッタ3460を介してメモリ・コンポーネント3416および3444に結合され、スプリッタ3462を介してメモリ・コンポーネント3431および3434に結合される。終端コンポーネント3464が、アドレス/制御クロック導体3409の末端の近くで、スプリッタ3462の近くに結合される。終端コンポーネント3422が、アドレス/制御クロック導体3409に、好ましくはメモリ・モジュール3403内で結合される。終端コンポーネント3458が、アドレス/制御クロック導体3409に、好ましくはメモリ・モジュール3430内で結合される。
この例では、各制御/アドレス・ワイヤが、ある形のスプリッティング・コンポーネントSを使用してタッピングされる。このスプリッタは、受動インピーダンス・マッチャ(デルタ構成またはy構成の3つの抵抗)もしくはなんらかの形の能動バッファまたはスイッチ要素とすることができる。どちらの場合でも、各ワイヤの電気インピーダンスが、その長さに沿って維持され(製造限度内で)、その結果、信号の完全性が高く保たれる。前の構成と同様に、スプリットされた制御/アドレス・バスのそれぞれが、メモリ・モジュール上で、すべてのメモリ・コンポーネントを通り、終端コンポーネントへルーティングされる。
図35は、本発明の実施形態による、すべてのメモリ・モジュールによって共有される単一の制御/アドレス・バスを有する複数のランクのメモリ・コンポーネントと複数のメモリ・モジュールを含むメモリ・システムを示すブロック図である。このメモリ・システムには、メモリ・コントローラ・コンポーネント3502、メモリ・モジュール3503、メモリ・モジュール3530、アドレス/制御クロック3504、終端コンポーネント3519、および終端コンポーネント3522が含まれる。
各メモリ・モジュール内で、メモリ・コンポーネントがランクに編成される。メモリ・モジュール3503の第1ランクに、メモリ・コンポーネント3516、3517、および3518が含まれる。メモリ・モジュール3503の第2ランクに、メモリ・コンポーネント3544、3545、および3546が含まれる。メモリ・モジュール3530の第1ランクに、メモリ・コンポーネント3531、3532、および3533が含まれる。メモリ・モジュール3530の第2ランクに、メモリ・コンポーネント3534、3535、および3536が含まれる。
このメモリ・システムは、メモリ・コントローラ・コンポーネントおよびメモリ・モジュールにまたがるスライスに編成される。このスライスの例に、スライス3513、スライス3514、およびスライス3515が含まれる。各スライスに、各ランクの1つのメモリ・コンポーネントが含まれる。この実施形態では、メモリ・モジュールにまたがる各スライスが、共通のデイジー・チェイン接続されたアドレス・バス3507および共通のデイジー・チェイン接続されたアドレス/制御クロック導体3509を共有する。アドレス・バス3507は、メモリ・コントローラ・コンポーネント3502と、メモリ・コンポーネント3516、3544、3531、および3534に結合される。終端コンポーネント3552が、メモリ・コントローラ・コンポーネント3502の近くでアドレス・バス3507に結合され、終端コンポーネント3552を、たとえばメモリ・コントローラ・コンポーネント3502に組み込むことができる。終端コンポーネント3519が、アドレス・バス3507の反対の末端の近くに結合される。
アドレス/制御クロック3504が、アドレス/制御クロック導体3509に結合され、アドレス/制御クロック導体3509は、メモリ・コントローラ・コンポーネント3502と、メモリ・コンポーネント3516、3544、3531、および3534に結合される。終端コンポーネント3522が、アドレス/制御クロック導体3509の末端の近くに結合される。
図34のメモリ・システムと異なって、ある種のスプリッティング・コンポーネントを使用するのではなく、各制御/アドレス・ワイヤが、メモリ・モジュール上で、すべてのメモリ・コンポーネントを通って、モジュールから出てメイン・ボードにルーティングされて、別のメモリ・モジュールをチェインするか、終端コンポーネントに入る。
上で説明した図面を参照するとわかるように、本発明の実施形態を用いると、メモリ・システム、メモリ・コンポーネント、またはメモリ・コントローラ・コンポーネントもしくはこれらの組合せの実施が可能になる。これらの実施形態で、スキューを、ビット時間に従ってまたはタイミング信号に従ってもしくはその両方で測定することができる。いくつかの実施形態では、メモリ・コントローラ・コンポーネント内のロジックが、スキューに対処し、他の実施形態では、メモリ・コンポーネント内のロジックが、スキューに対処する。スキューは、ビット時間またはサイクル・タイムより大きいものとすることができる。
本発明の一実施形態は、第1信号を搬送する第1ワイヤを有するメモリ・モジュールを提供する。第1ワイヤは、第1モジュール接点ピンに接続される。第1ワイヤは、第1メモリ・コンポーネントの第1ピンに接続される。第1ワイヤは、第1終端デバイスに接続される。第1ワイヤは、メモリ・モジュール上のその全長に沿ってほぼ一定の第1インピーダンス値を維持する。終端コンポーネントは、この第1インピーダンス値にほぼ一致する。任意選択として、第1ワイヤが接続されない第2メモリ・コンポーネントがある。任意選択として、第1信号が、主に、通常動作中の制御情報、アドレス情報、およびデータ情報から選択される情報を搬送する。任意選択として、終端デバイスが、メモリ・モジュール上の、第1メモリ・コンポーネントと別のコンポーネントである。任意選択として、終端デバイスが、メモリ・モジュール上で第1メモリ・コンポーネントに一体化される。そのようなメモリ・モジュールを、メモリ・コントローラ・コンポーネントに接続することができ、メモリ・システム内で使用することができる。
本発明の一実施形態は、第1信号を搬送する第1ワイヤおよび第2信号を搬送する第2ワイヤを有するメモリ・モジュールを提供する。第1ワイヤは、第1モジュール接点ピンに接続される。第2ワイヤは、第2モジュール接点ピンに接続される。第1ワイヤは、第1メモリ・コンポーネントの第1ピンに接続される。第2ワイヤは、第1メモリ・コンポーネントの第2ピンに接続される。第1ワイヤは、第2メモリ・コンポーネントの第3ピンに接続される。第2ワイヤは、第2メモリ・コンポーネントのピンに接続されない。第1ワイヤは、第1終端デバイスに接続される。第2ワイヤは、第2終端デバイスに接続される。第1ワイヤは、メモリ・モジュール上でその全長に沿ってほぼ一定の第1インピーダンス値を維持する。第2ワイヤは、メモリ・モジュール上でその全長に沿ってほぼ一定の第2インピーダンス値を維持する。第1終端コンポーネントは、第1インピーダンス値にほぼ一致する。第2終端コンポーネントは、第2インピーダンス値にほぼ一致する。任意選択として、第1または第2の終端デバイスは、メモリ・モジュール上で第1メモリ・コンポーネントと別のコンポーネントである。任意選択として、第1または第2の終端デバイスが、メモリ・モジュール上で第1メモリ・コンポーネントに一体化される。任意選択として、第1信号が、アドレス情報を搬送し、第2信号が、データ情報を搬送する。そのようなメモリ・モジュールを、メモリ・コントローラ・コンポーネントに接続することができ、メモリ・システム内で使用することができる。
本発明の一実施形態は、メモリ・システムでメモリ動作を行う方法を提供する。メモリ・システムに、メモリ・コントローラ・コンポーネントとメモリ・コンポーネントのランクとが含まれる。メモリ・コンポーネントに、スライスが含まれる。スライスに、第1スライスと第2スライスが含まれる。メモリ・コントローラ・コンポーネントは、導体に結合され、この導体には、メモリ・コントローラ・コンポーネントを第1スライスおよび第2スライスに接続する共通アドレス・バスと、メモリ・コントローラ・コンポーネントを第1スライスに接続する第1データ・バスと、メモリ・コントローラ・コンポーネントを第2スライスに接続する第2データ・バスとが含まれる。第1データ・バスは、第2データ・バスと別である。この方法には、導体の1つに信号を供給するステップが含まれる。信号は、アドレス信号、書込データ信号、または読取データ信号とすることができる。導体の1つの伝搬遅延は、信号によって表される情報の要素がその導体に印加される時間より長い。任意選択として、この方法に、第1データ信号を第1データ・バスに供給し、第2データ信号を第2データ・バスに供給するステップを含めることができる。第1データ信号は、特に第1スライスに関係し、第2データ信号は、特に第2スライスに関係する。一例では、第1データ信号が、第1スライスとの間でデータを搬送し、第2データ信号が、第2スライスとの間でデータを搬送する。
本発明の一実施形態は、第1メモリ・コンポーネントと第2メモリ・コンポーネントの間でメモリ動作を調整する方法を提供する。この方法には、第1タイム・インターバルに、共通アドレス・バスに第1メモリ・コンポーネントに関する第1アドレス信号を印加するステップが含まれる。共通アドレス・バスは、第1メモリ・コンポーネントおよび第2メモリ・コンポーネントに結合される。この方法には、第2タイム・インターバールに、共通アドレス・バスに第2メモリ・コンポーネントに関する第2アドレス信号を印加するステップも含まれる。第1タイム・インターバルは、共通アドレス・バスの伝搬遅延より短く、第2タイム・インターバルは、共通アドレス・バスの共通アドレス・バス伝搬遅延より短い。この方法には、第1メモリ・コンポーネント・タイミング信号を使用して、第1メモリ・コンポーネントの第1メモリ動作を制御するステップも含まれる。第1メモリ・コンポーネント・タイミング信号は、共通アドレス・バス伝搬遅延と、第1メモリ・コンポーネントに結合された第1データ・バスの第1データ・バス伝搬遅延との間の第1関係に依存する。この方法には、第2メモリ・コンポーネント・タイミング信号を使用して、第2メモリ・コンポーネントの第2メモリ動作を制御するステップも含まれる。第2メモリ・コンポーネント・タイミング信号は、共通アドレス・バス伝搬遅延と、第2メモリ・コンポーネントに結合された第2データ・バスの第2データ・バス伝搬遅延との間の第2関係に依存する。
本発明の一実施形態(説明Bと称する)は、メモリ・コントローラ・コンポーネントと、単一メモリ・モジュール上のメモリ・コンポーネントの単一ランクと、ランクの連続するすべてのメモリ・コンポーネントにコントローラを接続する共通アドレス・バスと、ランクの各メモリ・コンポーネント(スライス)にコントローラを接続する別のデータ・バスと、コントローラから連続する各メモリ・コンポーネントを通って制御信号およびアドレス信号を搬送するアドレス・バスと、ランクの各メモリ・コンポーネント(スライス)からコントローラに読取データ信号を搬送するデータ・バスと、コントローラからランクの各メモリ・コンポーネント(スライス)に書込データ信号を搬送するデータ・バスと、コントローラからランクの各メモリ・コンポーネント(スライス)に書込マスク信号を搬送するデータ・バスと(各スライスの読取データ信号および書込データ信号が同一のデータ・バス・ワイヤを共有し(両方向)、バスが、ワイヤ上で伝送される連続する情報が干渉しないように設計される)、制御信号およびアドレス信号を伴い、情報を送出するためにコントローラによって使用され、情報を受け取るためにメモリ・コンポーネントによって使用される周期的なクロック信号と、書込データ信号および任意選択の書込マスク信号の各スライスを伴い、情報を送出するためにコントローラによって使用され、情報を受け取るためにメモリ・コンポーネントによって使用される周期的なクロック信号と、読取データ信号の各スライスを伴い、情報を送出するためにメモリ・コンポーネントによって使用され、情報を受け取るためにコントローラによって使用される周期的なクロック信号とを有するメモリ・システムが提供される。
本発明の一実施形態(説明Aと称する)は、上の説明(説明B)の特徴を有すると共に、制御信号およびアドレス信号に関連し、これらの信号の伝搬遅延を複製し、情報を送出するためにコントローラによって使用され、情報を受け取るためにメモリ・コンポーネントによって使用されるタイミング信号と、書込データ信号および任意選択の書込マスク信号の各スライスに関連し、これらの信号の伝搬遅延を複製し、情報を送出するためにコントローラによって使用され、情報を受け取るためにメモリ・コンポーネントによって使用されるタイミング信号と、読取データ信号の各スライスに関連し、これらの信号の伝搬遅延を複製し、情報を送出するためにメモリ・コンポーネントによって使用され、情報を受け取るためにコントローラによって使用されるタイミング信号とを有し、コントローラから最後のメモリ・コンポーネントへ制御信号およびアドレス信号を搬送するワイヤの伝搬遅延が、1つの情報がコントローラによってそのワイヤ上で送出される時間より長い、メモリ・システムを提供する。
本発明の一実施形態は、上の説明(説明A)の特徴を有し、コントローラからメモリ・コンポーネントへ書込データ信号および任意選択の書込マスク信号を搬送するワイヤの伝搬遅延が、1つの情報がコントローラによってそのワイヤ上で送出される時間より長い、メモリ・システムを提供する。
本発明の一実施形態は、上の説明(説明A)の特徴を有し、メモリ・コンポーネントからコントローラへ読取データ信号を搬送するワイヤの伝搬遅延が、1つの情報がメモリ・コンポーネントによってそのワイヤ上で送出される時間より長い、メモリ・システムを提供する。
本発明の一実施形態は、上の説明(説明A)の特徴を有し、コントローラの書込データ・トランスミッタ・スライスのタイミング信号の整列が、ランク内のスライスの数に無関係にほぼ同一に調整され、コントローラの読取データ・レシーバ・スライスのタイミング信号の整列が、ランク内のスライスの数に無関係にほぼ同一に調整され、コントローラの読取データ・レシーバ・スライスのタイミング信号の整列が、書込データ・トランスミッタ・スライスのタイミング信号とほぼ同一に調整される、メモリ・システムを提供する。
本発明の一実施形態は、上の説明(説明A)の特徴を有し、コントローラの書込データ・トランスミッタ・スライスのタイミング信号の整列が、ほとんど互いに異なるように調整される、メモリ・システムを提供する。
本発明の一実施形態は、上の説明(説明A)の特徴を有し、コントローラの読取データ・レシーバ・スライスのタイミング信号の整列が、ほとんど互いに異なるように調整される、メモリ・システムを提供する。
本発明の一実施形態は、上の説明(説明A)の特徴を有し、各メモリ・コンポーネントの読取データ・トランスミッタのタイミング信号の整列が、同一のメモリ・コンポーネント内の書込データ・レシーバのタイミング信号とほぼ同一に調整され、タイミング信号の整列が、ランク内のメモリ・コンポーネント・スライスごとに異なる、メモリ・システムを提供する。
本発明の一実施形態は、上の説明(説明A)の特徴を有し、各メモリ・コンポーネントの書込データ・トランスミッタのタイミング信号の整列が、同一のメモリ・コンポーネント内の読取データ・レシーバのタイミング信号と異なるように調整される、メモリ・システムを提供する。
本明細書に記載の実施形態に対する多数の変形形態が、本明細書に記載の請求項の範囲から逸脱せずに可能である。これらの変形形態の例を、下で説明する。これらの例は、制御およびアドレス信号、読取データ信号、書込データ信号、および任意選択として書込マスク信号に適用することができる。たとえば、信号に関連するタイミング信号を、外部クロック・コンポーネントまたはコントローラ・コンポーネントによって生成することができる。そのタイミング信号は、そのような信号を搬送するワイヤと本質的に同一のトポロジを有するワイヤを進むことができる。そのタイミング信号は、そのような信号を搬送するワイヤに含まれる情報から、またはそのような信号のいずれかに関連するタイミング信号から、生成することができる。そのタイミング信号を、情報のそれぞれがそのような信号を搬送するワイヤ上に存在するインターバル中に絶対必要な回数だけアサートすることができる。もう1つの変形形態として、絶対必要な数の情報を、そのような信号に関連するタイミング信号がアサートされるたびに、そのような信号を搬送するワイヤ上でアサートすることができる。もう1つの変形形態として、絶対必要な数の情報を、そのような信号に関連するタイミング信号が絶対必要な回数だけアサートされるたびに、そのような信号を搬送するワイヤ上でアサートすることができる。そのような信号に関連するタイミング信号がアサートされる時点は、情報のそれぞれがそのような信号を搬送するワイヤに存在するタイム・インターバルに対するオフセットを有することができる。
他の変形形態の例として、信号の一部の終端コンポーネントを、メイン・プリント配線基板、メモリ・モジュール基板、メモリ・コンポーネント、またはコントローラ・コンポーネントのいずれかの上に置くことができる。また、複数のランクのメモリ・コンポーネントを、メモリ・モジュール上に設け、一部の制御およびアドレス信号をすべてのメモリ・コンポーネントに接続し、一部の制御およびアドレス信号をメモリ・コンポーネントの一部に接続することができる。メモリ・コンポーネントの複数のモジュールが、メモリ・システム内に存在し、一部の制御およびアドレス信号をすべてのメモリ・コンポーネントに接続し、一部の制御およびアドレス信号をメモリ・コンポーネントの一部に接続することも可能である。
したがって、さまざまな位置に配置されたメモリ・コンポーネントの間でメモリ動作を調整する方法および装置を説明した。さまざまな態様における本発明の他の変形形態および修正形態の実施が、当業者に明白であり、本発明が、説明した特定の実施形態に制限されないことを理解されたい。したがって、本明細書に開示され請求される基本の基礎となる原理の趣旨および範囲に含まれるすべての修正形態、変形形態、および同等物が、本発明に含まれることが企図されている。
101 バッファ
102 メモリ・コントローラ・コンポーネント
103 メモリ・モジュール
104 アドレス・クロック
105 書込みクロック
106 読取クロック導体
107 アドレス・バス
108 データ・バス
109 アドレス・クロック導体
110 書込クロック導体
111 読取クロック導体
112 ランク
113、114、115 スライス
116、117、118 メモリ・コンポーネント
119、120、121、122、123、124、125 終端コンポーネント

Claims (13)

  1. タイミング信号の第1の遷移に対して同期して第1の制御情報を、及び前記タイミング信号の第2の遷移に対して同期して第2の制御情報を出力するトランスミッタであって、前記第1の制御情報は、当該第1の制御情報に応答して第1データを出力する第1のメモリデバイスへの第1の読込動作を示し、前記第2の制御情報は、当該第2の制御情報に応答して第2データを出力する第2のメモリデバイスへの第2の読込動作を示、トランスミッタと、
    前記第1の制御情報が前記トランスミッタから前記第1のメモリデバイスへと伝搬するのに要する第1の時間に基づく第1のタイミングオフセットを用いて、前記第1のメモリデバイスによって出力された前記第1データをサンプリングするための第1のレシーバと、
    前記第2の制御情報が前記トランスミッタから前記第2のメモリデバイスへと伝搬するのに要する第2の時間に基づく第2のタイミングオフセットを用いて、前記第2のメモリデバイスによって出力された前記第2データをサンプリングするための第2のレシーバであって、前記第2の時間が前記第1の時間とは異なる、第2のレシーバと
    を備え、
    前記第1のレシーバは、前記第1のタイミングオフセットに基づいて遅延され又は位相制御される第1のクロック信号を使用することによって前記第1データをサンプリングするように構成され、前記第1のクロック信号は前記第1データを出力するために使用される、メモリコントローラ。
  2. 前記第1のレシーバに結合された第1の終端と、前記第2のレシーバに結合された第2の終端とをさらに備える、請求項1に記載のメモリコントローラ。
  3. 所定の位相量だけ時間間隔があいているクロック信号を生成するクロック生成回路と、
    前記第1のタイミングオフセットに基づいて前記クロック信号の前記第1のクロック信号を選択するマルチプレクサであって、当該第1のクロック信号が前記第1データのビットを出力するために使用される、マルチプレクサと
    をさらに備える、請求項1に記載のメモリコントローラ。
  4. 前記クロック生成回路が、
    基準クロック信号とフィードバッククロック信号とを比較するための位相比較器と、
    前記基準クロック信号と前記フィードバッククロック信号との比較に基づいて、前記クロック信号と前記フィードバッククロック信号とを生成する電圧制御発振器と
    を含む、請求項3に記載のメモリコントローラ。
  5. 前記第1のクロック信号の周波数が、前記基準クロック信号の周波数に関して逓倍される、請求項4に記載のメモリコントローラ。
  6. 前記第1のタイミングオフセットが第1の制御値で表され、前記第2のタイミングオフセットが第2の制御値で表される、請求項1に記載のメモリコントローラ。
  7. 前記第1の制御値及び前記第2の制御値が、較正シーケンスを用いて生成される、請求項6に記載のメモリコントローラ。
  8. 前記タイミング信号を生成するためのフェーズ・ロック・ループ回路をさらに備える、請求項1に記載のメモリコントローラ。
  9. 前記第1の制御情報の連続する2ビットが、前記タイミング信号の第1のサイクルの間に出力される、請求項8に記載のメモリコントローラ。
  10. 前記第1データをサンプリングするために使用されるクロック信号を生成するためのフェーズ・ロック・ループ回路をさらに含む、請求項1に記載のメモリコントローラ。
  11. 前記第1データの連続する8ビットが、前記クロック信号のクロック周期の間にサンプリングされる、請求項10に記載のメモリコントローラ。
  12. 前記フェーズ・ロック・ループ回路は、基準クロック信号を受信し、かつ前記第1データをサンプリングするために使用される前記クロック信号を生成するための分周器を含み、前記第1データをサンプリングするために使用される前記クロック信号の周波数が、前記基準クロック信号の周波数に関して逓倍される、請求項11に記載のメモリコントローラ。
  13. 第1のクロック信号を受信し、かつ前記第1の制御情報の少なくとも2ビットが、前記第1のクロック信号のクロックサイクルの間に、前記第1のトランスミッタのドライバから出力されるように、前記第1の制御情報を出力するために使用される信号を生成する、第1のロックループ回路と、
    第2のクロック信号を受信し、かつ前記第1データの少なくとも2ビットが、前記第2のクロック信号のクロックサイクルの間に、前記第1のメモリデバイスから出力されるように、前記第1データを出力するために使用される信号を生成する、第2のロックループ回路と
    をさらに備える、請求項1に記載のメモリコントローラ。
JP2009162534A 2001-04-24 2009-07-09 多様に配置されたメモリ・コンポーネントからメモリ・オペレーションを調整するメモリコントローラ Expired - Fee Related JP5112391B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US09/841911 2001-04-24
US09/841,911 US6675272B2 (en) 2001-04-24 2001-04-24 Method and apparatus for coordinating memory operations among diversely-located memory components

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2008027486A Division JP4358887B2 (ja) 2001-04-24 2008-02-07 多様に配置されたメモリ・コンポーネントからメモリ・オペレーションを調整する方法と装置

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2012203456A Division JP5220221B2 (ja) 2001-04-24 2012-09-14 多様に配置されたメモリ・コンポーネントからメモリ・オペレーションを調整する方法と装置

Publications (2)

Publication Number Publication Date
JP2009238244A JP2009238244A (ja) 2009-10-15
JP5112391B2 true JP5112391B2 (ja) 2013-01-09

Family

ID=25286018

Family Applications (6)

Application Number Title Priority Date Filing Date
JP2002122447A Expired - Fee Related JP4255242B2 (ja) 2001-04-24 2002-04-24 多様に配置されたメモリ・コンポーネントからメモリ・オペレーションを調整する方法と装置
JP2008027488A Expired - Fee Related JP4489817B2 (ja) 2001-04-24 2008-02-07 多様に配置されたメモリ・コンポーネントからメモリ・オペレーションを調整する方法と装置
JP2008027486A Expired - Lifetime JP4358887B2 (ja) 2001-04-24 2008-02-07 多様に配置されたメモリ・コンポーネントからメモリ・オペレーションを調整する方法と装置
JP2009162534A Expired - Fee Related JP5112391B2 (ja) 2001-04-24 2009-07-09 多様に配置されたメモリ・コンポーネントからメモリ・オペレーションを調整するメモリコントローラ
JP2010030473A Expired - Lifetime JP5014446B2 (ja) 2001-04-24 2010-02-15 多様に配置されたメモリ・コンポーネントからメモリ・オペレーションを調整する方法と装置
JP2012203456A Expired - Fee Related JP5220221B2 (ja) 2001-04-24 2012-09-14 多様に配置されたメモリ・コンポーネントからメモリ・オペレーションを調整する方法と装置

Family Applications Before (3)

Application Number Title Priority Date Filing Date
JP2002122447A Expired - Fee Related JP4255242B2 (ja) 2001-04-24 2002-04-24 多様に配置されたメモリ・コンポーネントからメモリ・オペレーションを調整する方法と装置
JP2008027488A Expired - Fee Related JP4489817B2 (ja) 2001-04-24 2008-02-07 多様に配置されたメモリ・コンポーネントからメモリ・オペレーションを調整する方法と装置
JP2008027486A Expired - Lifetime JP4358887B2 (ja) 2001-04-24 2008-02-07 多様に配置されたメモリ・コンポーネントからメモリ・オペレーションを調整する方法と装置

Family Applications After (2)

Application Number Title Priority Date Filing Date
JP2010030473A Expired - Lifetime JP5014446B2 (ja) 2001-04-24 2010-02-15 多様に配置されたメモリ・コンポーネントからメモリ・オペレーションを調整する方法と装置
JP2012203456A Expired - Fee Related JP5220221B2 (ja) 2001-04-24 2012-09-14 多様に配置されたメモリ・コンポーネントからメモリ・オペレーションを調整する方法と装置

Country Status (4)

Country Link
US (23) US6675272B2 (ja)
EP (8) EP3693866B1 (ja)
JP (6) JP4255242B2 (ja)
DE (4) DE60235050D1 (ja)

Families Citing this family (197)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6401167B1 (en) * 1997-10-10 2002-06-04 Rambus Incorporated High performance cost optimized memory
US7024257B2 (en) * 2001-02-09 2006-04-04 Motion Engineering, Inc. System for motion control, method of using the system for motion control, and computer-readable instructions for use with the system for motion control
US6675272B2 (en) * 2001-04-24 2004-01-06 Rambus Inc. Method and apparatus for coordinating memory operations among diversely-located memory components
DE60220863T2 (de) * 2001-04-24 2008-03-13 Rambus Inc., Los Altos Verfahren und Gerät zum Koordinieren von Speicheroperationen zwischen unterschiedlich angeordneten Speicherkomponenten
US8391039B2 (en) 2001-04-24 2013-03-05 Rambus Inc. Memory module with termination component
US7076595B1 (en) * 2001-05-18 2006-07-11 Xilinx, Inc. Programmable logic device including programmable interface core and central processing unit
DE10141376A1 (de) * 2001-08-23 2003-03-13 Boehringer Ingelheim Pharma Verfahren zur Herstellung von Inhalationspulvern
WO2003036445A1 (en) * 2001-10-22 2003-05-01 Rambus Inc. Timing calibration apparatus and method for a memory device signaling system
US6950910B2 (en) * 2001-11-08 2005-09-27 Freescale Semiconductor, Inc. Mobile wireless communication device architectures and methods therefor
TW550563B (en) * 2002-02-01 2003-09-01 Silicon Integrated Sys Corp Memory data receiver and method
US6934922B1 (en) * 2002-02-27 2005-08-23 Xilinx, Inc. Timing performance analysis
US7231306B1 (en) * 2002-04-30 2007-06-12 Rambus Inc. Method and apparatus for calibrating static timing offsets across multiple outputs
US8861667B1 (en) 2002-07-12 2014-10-14 Rambus Inc. Clock data recovery circuit with equalizer clock calibration
US7292629B2 (en) 2002-07-12 2007-11-06 Rambus Inc. Selectable-tap equalizer
US6807125B2 (en) * 2002-08-22 2004-10-19 International Business Machines Corporation Circuit and method for reading data transfers that are sent with a source synchronous clock signal
US7203262B2 (en) * 2003-05-13 2007-04-10 M/A-Com, Inc. Methods and apparatus for signal modification in a fractional-N phase locked loop system
US7234099B2 (en) * 2003-04-14 2007-06-19 International Business Machines Corporation High reliability memory module with a fault tolerant address and command bus
KR100522433B1 (ko) * 2003-04-29 2005-10-20 주식회사 하이닉스반도체 도메인 크로싱 회로
CN100444141C (zh) * 2003-05-13 2008-12-17 先进微装置公司 通过串行内存互连以将主机连接至内存模块的系统与方法
US6999887B2 (en) * 2003-08-06 2006-02-14 Infineon Technologies Ag Memory cell signal window testing apparatus
JP2005078592A (ja) * 2003-09-03 2005-03-24 Brother Ind Ltd メモリ制御装置及び画像形成装置
US6924660B2 (en) 2003-09-08 2005-08-02 Rambus Inc. Calibration methods and circuits for optimized on-die termination
US7330993B2 (en) * 2003-09-29 2008-02-12 Intel Corporation Slew rate control mechanism
US6980020B2 (en) * 2003-12-19 2005-12-27 Rambus Inc. Calibration methods and circuits for optimized on-die termination
KR100558557B1 (ko) * 2004-01-20 2006-03-10 삼성전자주식회사 반도체 메모리 장치에서의 데이터 샘플링 방법 및 그에따른 데이터 샘플링 회로
US7222224B2 (en) * 2004-05-21 2007-05-22 Rambus Inc. System and method for improving performance in computer memory systems supporting multiple memory access latencies
US8270501B2 (en) 2004-08-18 2012-09-18 Rambus Inc. Clocking architectures in high-speed signaling systems
US7171321B2 (en) 2004-08-20 2007-01-30 Rambus Inc. Individual data line strobe-offset control in memory systems
US7188208B2 (en) * 2004-09-07 2007-03-06 Intel Corporation Side-by-side inverted memory address and command buses
US7301831B2 (en) * 2004-09-15 2007-11-27 Rambus Inc. Memory systems with variable delays for write data signals
US7196567B2 (en) * 2004-12-20 2007-03-27 Rambus Inc. Systems and methods for controlling termination resistance values for a plurality of communication channels
US7543172B2 (en) 2004-12-21 2009-06-02 Rambus Inc. Strobe masking in a signaling system having multiple clock domains
US7688672B2 (en) * 2005-03-14 2010-03-30 Rambus Inc. Self-timed interface for strobe-based systems
KR100630742B1 (ko) * 2005-03-17 2006-10-02 삼성전자주식회사 Dqs도메인에서 클록 도메인으로의 변환을 위한 데이터샘플링 방법 및 이를 이용한 동기식 반도체 메모리 장치의데이터 입력 회로
US7401245B2 (en) * 2005-04-29 2008-07-15 Hewlett-Packard Development Company, L.P. Count calibration for synchronous data transfer between clock domains
US7477712B2 (en) * 2005-04-29 2009-01-13 Hewlett-Packard Development Company, L.P. Adaptable data path for synchronous data transfer between clock domains
US7558317B2 (en) * 2005-04-29 2009-07-07 Hewlett-Packard Development Company, L.P. Edge calibration for synchronous data transfer between clock domains
US7332950B2 (en) * 2005-06-14 2008-02-19 Micron Technology, Inc. DLL measure initialization circuit for high frequency operation
US7593430B2 (en) * 2005-07-28 2009-09-22 Alcatel-Lucent Usa Inc. Method and apparatus for generating virtual clock signals
US7519778B2 (en) * 2005-08-10 2009-04-14 Faraday Technology Corp. System and method for cache coherence
US7366966B2 (en) * 2005-10-11 2008-04-29 Micron Technology, Inc. System and method for varying test signal durations and assert times for testing memory devices
US7174474B1 (en) * 2005-10-12 2007-02-06 Avago Technologies Ecbu Ip (Singapore) Pte. Ltd. Distributed autonomous control system for multi-axis motion control
US7321524B2 (en) 2005-10-17 2008-01-22 Rambus Inc. Memory controller with staggered request signal output
DE102005051792A1 (de) * 2005-10-28 2007-05-03 Infineon Technologies Ag Verfahren zur Datenübertragung in einer Speichervorrichtung, Vorrichtung zur Kopplung eines Speichermoduls mit einer Speichersteuerung und entsprechendes Speichermodul
US7269093B2 (en) * 2005-10-31 2007-09-11 Infineon Technologies Ag Generating a sampling clock signal in a communication block of a memory device
US7610417B2 (en) * 2005-11-30 2009-10-27 Rambus Inc. Data-width translator coupled between variable-width and fixed-width data ports and supporting multiple data-width configurations
US7863946B2 (en) * 2005-12-01 2011-01-04 Ricoh Company, Ltd. Electric signal outputting apparatus with a switching part, an impedance matching part, and an auxiliary switching part
US20070132485A1 (en) * 2005-12-09 2007-06-14 Elad Alon Four-wire signaling system
US7650526B2 (en) * 2005-12-09 2010-01-19 Rambus Inc. Transmitter with skew reduction
US7439760B2 (en) 2005-12-19 2008-10-21 Rambus Inc. Configurable on-die termination
US20070189049A1 (en) * 2006-02-16 2007-08-16 Srdjan Djordjevic Semiconductor memory module
US8121237B2 (en) * 2006-03-16 2012-02-21 Rambus Inc. Signaling system with adaptive timing calibration
US7486104B2 (en) * 2006-06-02 2009-02-03 Rambus Inc. Integrated circuit with graduated on-die termination
US7886122B2 (en) * 2006-08-22 2011-02-08 Qimonda North America Corp. Method and circuit for transmitting a memory clock signal
US7587571B2 (en) * 2006-11-29 2009-09-08 Qimonda Ag Evaluation unit in an integrated circuit
WO2008079911A1 (en) 2006-12-21 2008-07-03 Rambus Inc. Dynamic on-die termination of address and command signals
US7388795B1 (en) * 2006-12-28 2008-06-17 Intel Corporation Modular memory controller clocking architecture
US7836324B2 (en) 2007-02-09 2010-11-16 Apple Inc. Oversampling-based scheme for synchronous interface communication
US8874831B2 (en) 2007-06-01 2014-10-28 Netlist, Inc. Flash-DRAM hybrid memory module
KR100902104B1 (ko) * 2007-06-08 2009-06-09 주식회사 하이닉스반도체 반도체 메모리장치
US8068357B2 (en) * 2007-09-05 2011-11-29 Rambus Inc. Memory controller with multi-modal reference pad
JP4382842B2 (ja) 2007-09-18 2009-12-16 富士通株式会社 メモリ制御回路,遅延時間制御装置,遅延時間制御方法および遅延時間制御プログラム
KR20090045773A (ko) * 2007-11-02 2009-05-08 주식회사 하이닉스반도체 고속으로 동작하는 반도체 장치의 지연 고정 회로
KR101532529B1 (ko) 2007-12-21 2015-06-29 램버스 인코포레이티드 메모리 시스템 내 기록 타이밍을 교정하기 위한 방법 및 장치
KR100910852B1 (ko) * 2007-12-26 2009-08-06 주식회사 하이닉스반도체 반도체 메모리 소자
US7804735B2 (en) * 2008-02-29 2010-09-28 Qualcomm Incorporated Dual channel memory architecture having a reduced interface pin requirements using a double data rate scheme for the address/control signals
US8516185B2 (en) * 2009-07-16 2013-08-20 Netlist, Inc. System and method utilizing distributed byte-wise buffers on a memory module
WO2010016817A1 (en) * 2008-08-08 2010-02-11 Hewlett-Packard Development Company, L.P. Independently controllable and reconfigurable virtual memory devices in memory modules that are pin-compatible with standard memory modules
US7886103B2 (en) * 2008-09-08 2011-02-08 Cisco Technology, Inc. Input-output module, processing platform and method for extending a memory interface for input-output operations
US8095747B2 (en) * 2008-09-26 2012-01-10 Cypress Semiconductor Corporation Memory system and method
US8856434B2 (en) * 2008-09-26 2014-10-07 Cypress Semiconductor Corporation Memory system and method
US8806258B2 (en) * 2008-09-30 2014-08-12 Intel Corporation Platform communication protocol
US7957216B2 (en) * 2008-09-30 2011-06-07 Intel Corporation Common memory device for variable device width and scalable pre-fetch and page size
KR100991383B1 (ko) * 2008-12-26 2010-11-02 주식회사 하이닉스반도체 반도체 장치의 출력 드라이버
EP2384474B1 (en) * 2008-12-31 2015-08-12 Rambus Inc. Active calibration for high-speed memory devices
KR101614569B1 (ko) * 2009-01-13 2016-04-21 램버스 인코포레이티드 메모리 요청과 데이터 전송 간 타이밍 교정을 포함하는 프로토콜
US9520986B2 (en) * 2009-03-30 2016-12-13 Coriant Operations, Inc. Method and appartus for exchanging data between devices operating at different clock rates
US9128632B2 (en) * 2009-07-16 2015-09-08 Netlist, Inc. Memory module with distributed data buffers and method of operation
JP2011079308A (ja) 2009-09-14 2011-04-21 Ricoh Co Ltd 感熱記録材料及びその製造方法
US9153309B2 (en) 2010-02-07 2015-10-06 Zeno Semiconductor Inc. Semiconductor memory device having electrically floating body transistor, semiconductor memory device having both volatile and non-volatile functionality and method or operating
WO2011106055A1 (en) 2010-02-23 2011-09-01 Rambus Inc. Coordinating memory operations using memory-device generated reference signals
US8307235B2 (en) 2010-05-05 2012-11-06 National Instruments Corporation Cross controller clock synchronization
US9288082B1 (en) 2010-05-20 2016-03-15 Kandou Labs, S.A. Circuits for efficient detection of vector signaling codes for chip-to-chip communication using sums of differences
US9077386B1 (en) 2010-05-20 2015-07-07 Kandou Labs, S.A. Methods and systems for selection of unions of vector signaling codes for power and pin efficient chip-to-chip communication
US9251873B1 (en) 2010-05-20 2016-02-02 Kandou Labs, S.A. Methods and systems for pin-efficient memory controller interface using vector signaling codes for chip-to-chip communications
US9985634B2 (en) 2010-05-20 2018-05-29 Kandou Labs, S.A. Data-driven voltage regulator
US9246713B2 (en) 2010-05-20 2016-01-26 Kandou Labs, S.A. Vector signaling with reduced receiver complexity
US8495327B2 (en) 2010-06-04 2013-07-23 Nvidia Corporation Memory device synchronization
WO2011159465A2 (en) 2010-06-17 2011-12-22 Rambus Inc. Balanced on-die termination
US8464135B2 (en) 2010-07-13 2013-06-11 Sandisk Technologies Inc. Adaptive flash interface
US9069688B2 (en) * 2011-04-15 2015-06-30 Sandisk Technologies Inc. Dynamic optimization of back-end memory system interface
US8583957B2 (en) 2010-07-27 2013-11-12 National Instruments Corporation Clock distribution in a distributed system with multiple clock domains over a switched fabric
US8824222B2 (en) * 2010-08-13 2014-09-02 Rambus Inc. Fast-wake memory
JP2012059184A (ja) * 2010-09-13 2012-03-22 Nec Computertechno Ltd メモリコントローラ、これを備えたメモリシステム及びメモリデバイスの制御方法
KR20120044668A (ko) 2010-10-28 2012-05-08 에스케이하이닉스 주식회사 반도체 메모리 장치 및 그를 포함하는 반도체 시스템
JP5541373B2 (ja) * 2011-01-13 2014-07-09 富士通株式会社 メモリコントローラ、及び情報処理装置
US8743634B2 (en) * 2011-01-28 2014-06-03 Lsi Corporation Generic low power strobe based system and method for interfacing memory controller and source synchronous memory
US9342095B2 (en) 2011-03-02 2016-05-17 Rambus Inc. Timing calibration for multimode I/O systems
US9235537B2 (en) 2011-10-26 2016-01-12 Rambus Inc. Drift detection in timing signal forwarded from memory controller to memory device
JP2013118033A (ja) * 2011-12-05 2013-06-13 Elpida Memory Inc 半導体装置
JP2013125561A (ja) * 2011-12-14 2013-06-24 Elpida Memory Inc 半導体装置
US9082464B2 (en) * 2012-02-14 2015-07-14 Samsung Electronics Co., Ltd. Memory module for high-speed operations
US9563597B2 (en) 2012-03-19 2017-02-07 Rambus Inc. High capacity memory systems with inter-rank skew tolerance
US8836394B2 (en) * 2012-03-26 2014-09-16 Rambus Inc. Method and apparatus for source-synchronous signaling
US9201748B2 (en) * 2012-03-30 2015-12-01 Intel Corporation Virtual device sparing
JP5677376B2 (ja) * 2012-07-06 2015-02-25 株式会社東芝 メモリ制御装置、半導体装置、およびシステムボード
WO2014101172A1 (zh) * 2012-12-31 2014-07-03 香港中国模拟技术有限公司 一种流水线型模数转换器
US8692600B1 (en) 2013-01-09 2014-04-08 International Business Machines Corporation Multi-protocol driver slew rate calibration system for calibration slew rate control signal values
WO2014124450A1 (en) 2013-02-11 2014-08-14 Kandou Labs, S.A. Methods and systems for high bandwidth chip-to-chip communications interface
JP6091239B2 (ja) * 2013-02-13 2017-03-08 キヤノン株式会社 プリント回路板、プリント配線板および電子機器
WO2014172377A1 (en) 2013-04-16 2014-10-23 Kandou Labs, S.A. Methods and systems for high bandwidth communications interface
CN105393512B (zh) 2013-06-25 2019-06-28 康杜实验室公司 具有低接收器复杂度的向量信令
US9285828B2 (en) 2013-07-11 2016-03-15 Apple Inc. Memory system with improved bus timing calibration
US9554131B1 (en) * 2013-07-23 2017-01-24 Harmonic, Inc. Multi-slice/tile encoder with overlapping spatial sections
CN105706064B (zh) 2013-07-27 2019-08-27 奈特力斯股份有限公司 具有本地分别同步的内存模块
US9377966B2 (en) 2013-10-09 2016-06-28 Samsung Electronics Co., Ltd. Method and apparatus for efficiently processing storage commands
US9806761B1 (en) 2014-01-31 2017-10-31 Kandou Labs, S.A. Methods and systems for reduction of nearest-neighbor crosstalk
US9100232B1 (en) 2014-02-02 2015-08-04 Kandou Labs, S.A. Method for code evaluation using ISI ratio
US10521387B2 (en) * 2014-02-07 2019-12-31 Toshiba Memory Corporation NAND switch
CN106105123B (zh) 2014-02-28 2019-06-28 康杜实验室公司 用于发送时钟嵌入式向量信令码的方法和系统
CN103927131B (zh) * 2014-03-25 2017-02-15 四川和芯微电子股份有限公司 同步闪存u盘的启动方法及其控制系统
US9804931B2 (en) 2014-04-25 2017-10-31 Rambus Inc. Memory mirroring utilizing single write operations
US9509437B2 (en) 2014-05-13 2016-11-29 Kandou Labs, S.A. Vector signaling code with improved noise margin
US10339079B2 (en) * 2014-06-02 2019-07-02 Western Digital Technologies, Inc. System and method of interleaving data retrieved from first and second buffers
US9852806B2 (en) 2014-06-20 2017-12-26 Kandou Labs, S.A. System for generating a test pattern to detect and isolate stuck faults for an interface using transition coding
US9112550B1 (en) 2014-06-25 2015-08-18 Kandou Labs, SA Multilevel driver for high speed chip-to-chip communications
WO2016007863A2 (en) 2014-07-10 2016-01-14 Kandou Labs, S.A. Vector signaling codes with increased signal to noise characteristics
US9432082B2 (en) 2014-07-17 2016-08-30 Kandou Labs, S.A. Bus reversable orthogonal differential vector signaling codes
CN106664272B (zh) 2014-07-21 2020-03-27 康杜实验室公司 从多点通信信道接收数据的方法和装置
WO2016019384A1 (en) 2014-08-01 2016-02-04 Kandou Labs, S.A. Orthogonal differential vector signaling codes with embedded clock
US9921993B2 (en) 2014-08-11 2018-03-20 Qualcomm Incorporated Memory circuit configuration schemes on multi-drop buses
US9674014B2 (en) 2014-10-22 2017-06-06 Kandou Labs, S.A. Method and apparatus for high speed chip-to-chip communications
US9575929B2 (en) * 2015-02-05 2017-02-21 Weng Tianxiang Apparatus of wave-pipelined circuits
KR102517583B1 (ko) 2015-06-26 2023-04-03 칸도우 랩스 에스에이 고속 통신 시스템
US10055372B2 (en) 2015-11-25 2018-08-21 Kandou Labs, S.A. Orthogonal differential vector signaling codes with embedded clock
US10622032B2 (en) 2015-12-08 2020-04-14 Rambus Inc. Low power signaling interface
US10438637B2 (en) * 2016-01-25 2019-10-08 Aisin A W Co., Ltd. Memory controller
CN108781060B (zh) 2016-01-25 2023-04-14 康杜实验室公司 具有增强的高频增益的电压采样驱动器
US9841922B2 (en) * 2016-02-03 2017-12-12 SK Hynix Inc. Memory system includes a memory controller
US10003454B2 (en) 2016-04-22 2018-06-19 Kandou Labs, S.A. Sampler with low input kickback
WO2017185072A1 (en) 2016-04-22 2017-10-26 Kandou Labs, S.A. High performance phase locked loop
US10153591B2 (en) 2016-04-28 2018-12-11 Kandou Labs, S.A. Skew-resistant multi-wire channel
EP3449606A4 (en) 2016-04-28 2019-11-27 Kandou Labs S.A. LOW POWER MULTILAYER ATTACK CIRCUIT
EP3449379B1 (en) 2016-04-28 2021-10-06 Kandou Labs S.A. Vector signaling codes for densely-routed wire groups
US10152262B2 (en) * 2016-05-03 2018-12-11 Micron Technology, Inc. Memory access techniques in memory devices with multiple partitions
US10141926B2 (en) 2016-07-19 2018-11-27 Ciena Corporation Ultra-low power cross-point electronic switch apparatus and method
US10872055B2 (en) 2016-08-02 2020-12-22 Qualcomm Incorporated Triple-data-rate technique for a synchronous link
US9997220B2 (en) * 2016-08-22 2018-06-12 Micron Technology, Inc. Apparatuses and methods for adjusting delay of command signal path
US9906358B1 (en) 2016-08-31 2018-02-27 Kandou Labs, S.A. Lock detector for phase lock loop
US10411922B2 (en) 2016-09-16 2019-09-10 Kandou Labs, S.A. Data-driven phase detector element for phase locked loops
US10789185B2 (en) * 2016-09-21 2020-09-29 Rambus Inc. Memory modules and systems with variable-width data ranks and configurable data-rank timing
US10200188B2 (en) 2016-10-21 2019-02-05 Kandou Labs, S.A. Quadrature and duty cycle error correction in matrix phase lock loop
US10200218B2 (en) 2016-10-24 2019-02-05 Kandou Labs, S.A. Multi-stage sampler with increased gain
US10372665B2 (en) 2016-10-24 2019-08-06 Kandou Labs, S.A. Multiphase data receiver with distributed DFE
KR102656219B1 (ko) * 2016-11-07 2024-04-11 삼성전자주식회사 메모리 장치, 그것을 포함하는 메모리 시스템, 및 그것의 슬루 레이트 조정 방법
WO2018106682A1 (en) * 2016-12-07 2018-06-14 Integrated Device Technology, Inc. Time slotted bus system for multiple coupled digital phase-locked loops
US10379748B2 (en) 2016-12-19 2019-08-13 International Business Machines Corporation Predictive scheduler for memory rank switching
US11017839B2 (en) 2017-01-13 2021-05-25 Mediatek Inc. DRAM, memory controller and associated training method
US10090057B2 (en) * 2017-02-23 2018-10-02 Sandisk Technologies Llc Dynamic strobe timing
US10761589B2 (en) * 2017-04-21 2020-09-01 Intel Corporation Interconnect fabric link width reduction to reduce instantaneous power consumption
US10116468B1 (en) 2017-06-28 2018-10-30 Kandou Labs, S.A. Low power chip-to-chip bidirectional communications
US10686583B2 (en) 2017-07-04 2020-06-16 Kandou Labs, S.A. Method for measuring and correcting multi-wire skew
US10203226B1 (en) 2017-08-11 2019-02-12 Kandou Labs, S.A. Phase interpolation circuit
US10157661B1 (en) 2017-08-25 2018-12-18 Micron Technology, Inc. Mitigating line-to-line capacitive coupling in a memory die
US10290332B1 (en) * 2017-10-31 2019-05-14 Sandisk Technologies Llc Signal path optimization for read operations in storage devices
US10326623B1 (en) 2017-12-08 2019-06-18 Kandou Labs, S.A. Methods and systems for providing multi-stage distributed decision feedback equalization
US10467177B2 (en) 2017-12-08 2019-11-05 Kandou Labs, S.A. High speed memory interface
US10554380B2 (en) 2018-01-26 2020-02-04 Kandou Labs, S.A. Dynamically weighted exclusive or gate having weighted output segments for phase detection and phase interpolation
US10607671B2 (en) * 2018-02-17 2020-03-31 Micron Technology, Inc. Timing circuit for command path in a memory device
US10884958B2 (en) * 2018-06-25 2021-01-05 Intel Corporation DIMM for a high bandwidth memory channel
US10963404B2 (en) * 2018-06-25 2021-03-30 Intel Corporation High bandwidth DIMM
WO2020117481A1 (en) 2018-12-04 2020-06-11 Rambus Inc. Off-module data buffer
US10825493B2 (en) * 2018-12-14 2020-11-03 Micron Technology, Inc. Feedback for multi-level signaling in a memory device
KR102707978B1 (ko) * 2018-12-19 2024-09-23 마이크론 테크놀로지, 인크 가변적인 물리 치수들, 메모리 포맷들, 및 동작 능력들을 가진 메모리 디바이스들, 모듈들 및 메모리 디바이스들을 가진 시스템들
EP3931667A4 (en) 2019-02-27 2022-07-13 Rambus Inc. LOW-POWER MEMORY WITH ON-DEMAND BANDWIDTH BOOST
US10777253B1 (en) * 2019-04-16 2020-09-15 International Business Machines Corporation Memory array for processing an N-bit word
US11321511B2 (en) 2019-07-09 2022-05-03 SiFive, Inc. Reset crossing and clock crossing interface for integrated circuit generation
US10902171B1 (en) * 2019-07-09 2021-01-26 SiFive, Inc. Clock crossing interface for integrated circuit generation
US11699471B2 (en) 2019-09-25 2023-07-11 Intel Corporation Synchronous dynamic random access memory (SDRAM) dual in-line memory module (DIMM) having increased per data pin bandwidth
US10885959B1 (en) * 2019-10-02 2021-01-05 Micron Technology, Inc. Apparatuses and methods for semiconductor devices including clock signal lines
KR20210074429A (ko) * 2019-12-11 2021-06-22 삼성전자주식회사 클럭 신호를 보상하기 위한 보상 회로 및 그것을 포함하는 메모리 장치
CN113571118A (zh) * 2020-04-29 2021-10-29 瑞昱半导体股份有限公司 存储器控制器装置与相位校正方法
US11409684B2 (en) 2020-07-31 2022-08-09 Alibaba Group Holding Limited Processing accelerator architectures
US11625341B2 (en) 2020-08-11 2023-04-11 Alibaba Group Holding Limited Narrow DRAM channel systems and methods
CN114115437B (zh) 2020-08-26 2023-09-26 长鑫存储技术有限公司 存储器
CN114115439A (zh) * 2020-08-26 2022-03-01 长鑫存储技术有限公司 存储器
CN114115440B (zh) 2020-08-26 2023-09-12 长鑫存储技术有限公司 存储器
CN114115441B (zh) 2020-08-26 2024-05-17 长鑫存储技术有限公司 存储器
KR20220046211A (ko) * 2020-10-07 2022-04-14 에스케이하이닉스 주식회사 저항성 메모리 장치를 제어하기 위한 메모리 컨트롤러 및 이를 포함하는 메모리 시스템
TWI786763B (zh) * 2021-08-10 2022-12-11 群聯電子股份有限公司 訊號調變裝置、記憶體儲存裝置及訊號調變方法
TWI788160B (zh) * 2021-12-24 2022-12-21 晶豪科技股份有限公司 資料控制電路以及記憶體裝置
CN114756496B (zh) * 2022-03-11 2024-06-04 Tcl空调器(中山)有限公司 Eeprom芯片的数据读取方法、系统、空调器及存储介质
CN116844605B (zh) * 2022-03-23 2024-05-03 长鑫存储技术有限公司 一种信号采样电路以及半导体存储器
US11978496B2 (en) 2022-04-27 2024-05-07 Nvidia Corp. Distributed global and local reference voltage generation
US11973501B2 (en) 2022-04-27 2024-04-30 Nvidia Corp. Digitally controlled unified receiver for multi-rank system
US11967396B2 (en) * 2022-04-27 2024-04-23 Nvidia Corp. Multi-rank receiver
US11881255B2 (en) 2022-04-27 2024-01-23 Nvidia Corp. Look ahead switching circuit for a multi-rank system

Family Cites Families (315)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7056A (en) * 1850-01-29 Am-photo-uthft co
US1660754A (en) * 1926-03-31 1928-02-28 Christian H Kenneweg Fuel-injection valve
DE1291778B (de) 1967-04-29 1969-04-03 Licentia Gmbh Taktsignalgenerator
US3820081A (en) * 1972-10-05 1974-06-25 Honeywell Inf Systems Override hardware for main store sequencer
US3950735A (en) * 1974-01-04 1976-04-13 Honeywell Information Systems, Inc. Method and apparatus for dynamically controlling read/write operations in a peripheral subsystem
US4866680A (en) 1977-12-05 1989-09-12 Scherbatskoy Serge Alexander Method and apparatus for transmitting information in a borehole employing signal discrimination
US4183095A (en) * 1978-09-01 1980-01-08 Ncr Corporation High density memory device
US4315308A (en) * 1978-12-21 1982-02-09 Intel Corporation Interface between a microprocessor chip and peripheral subsystems
US4266282A (en) 1979-03-12 1981-05-05 International Business Machines Corporation Vertical semiconductor integrated circuit chip packaging
US4280221A (en) * 1979-05-31 1981-07-21 The Boeing Company Digital data communication system
JPS5634186A (en) * 1979-08-29 1981-04-06 Hitachi Ltd Bipolar memory circuit
US4330852A (en) * 1979-11-23 1982-05-18 Texas Instruments Incorporated Semiconductor read/write memory array having serial access
JPS5764895U (ja) * 1980-10-03 1982-04-17
JPS57101957A (en) * 1980-12-17 1982-06-24 Hitachi Ltd Storage control device
FR2513407B1 (fr) * 1981-09-24 1987-01-16 Finger Ulrich Systeme d'arbitrage des demandes d'acces de plusieurs processeurs a des ressources communes, par l'intermediaire d'un bus commun
US4567545A (en) * 1983-05-18 1986-01-28 Mettler Rollin W Jun Integrated circuit module and method of making same
US4656605A (en) * 1983-09-02 1987-04-07 Wang Laboratories, Inc. Single in-line memory module
US4646270A (en) * 1983-09-15 1987-02-24 Motorola, Inc. Video graphic dynamic RAM
US4763249A (en) 1983-09-22 1988-08-09 Digital Equipment Corporation Bus device for use in a computer system having a synchronous bus
US4654790A (en) * 1983-11-28 1987-03-31 Amdahl Corporation Translation of virtual and real addresses to system addresses
JPS60136086A (ja) 1983-12-23 1985-07-19 Hitachi Ltd 半導体記憶装置
JPS6142795A (ja) 1984-08-03 1986-03-01 Toshiba Corp 半導体記憶装置の行デコ−ダ系
US4637018A (en) * 1984-08-29 1987-01-13 Burroughs Corporation Automatic signal delay adjustment method
DE3543911A1 (de) 1984-12-14 1986-06-26 Mitsubishi Denki K.K., Tokio/Tokyo Digitale verzoegerungseinheit
US4712190A (en) 1985-01-25 1987-12-08 Digital Equipment Corporation Self-timed random access memory chip
US4719602A (en) * 1985-02-07 1988-01-12 Visic, Inc. Memory with improved column access
US4637545A (en) * 1985-03-25 1987-01-20 Winfield Corporation Waste management system
JPS628614A (ja) 1985-07-05 1987-01-16 Nec Corp 入力インバ−タ回路
US4920483A (en) * 1985-11-15 1990-04-24 Data General Corporation A computer memory for accessing any word-sized group of contiguous bits
US4792926A (en) 1985-12-09 1988-12-20 Kabushiki Kaisha Toshiba High speed memory system for use with a control bus bearing contiguous segmentially intermixed data read and data write request signals
US4755937A (en) 1986-02-14 1988-07-05 Prime Computer, Inc. Method and apparatus for high bandwidth shared memory
DE3607141A1 (de) * 1986-03-05 1987-09-10 Irs Ind Rationalis Syst Gmbh Verfahren und vorrichtung zum explosionsschutz von anlagen, rohrleitungen u. dgl. durch druckueberwachung
JPS634493A (ja) * 1986-06-24 1988-01-09 Mitsubishi Electric Corp デユアルポ−トメモリ
JPH0774606B2 (ja) 1986-07-09 1995-08-09 本田技研工業株式会社 三弁・sohc型内燃機関
US4800530A (en) * 1986-08-19 1989-01-24 Kabushiki Kasiha Toshiba Semiconductor memory system with dynamic random access memory cells
US4845664A (en) 1986-09-15 1989-07-04 International Business Machines Corp. On-chip bit reordering structure
US4799199A (en) * 1986-09-18 1989-01-17 Motorola, Inc. Bus master having burst transfer mode
US5140688A (en) 1986-11-10 1992-08-18 Texas Instruments Incorporated GaAs integrated circuit programmable delay line element
US4845684A (en) * 1986-12-09 1989-07-04 International Business Machines Corporation Acoustic contact sensor for handwritten computer input
JPS63276795A (ja) 1986-12-16 1988-11-15 Mitsubishi Electric Corp 可変長シフトレジスタ
US4821226A (en) * 1987-01-30 1989-04-11 Rca Licensing Corporation Dual port video memory system having a bit-serial address input port
US4792929A (en) 1987-03-23 1988-12-20 Zenith Electronics Corporation Data processing system with extended memory access
JPS63271679A (ja) * 1987-04-30 1988-11-09 Toshiba Corp デ−タ書込み方式
US4817058A (en) 1987-05-21 1989-03-28 Texas Instruments Incorporated Multiple input/output read/write memory having a multiple-cycle write mask
JP2590122B2 (ja) 1987-08-07 1997-03-12 富士通株式会社 半導体メモリ
US4845677A (en) 1987-08-17 1989-07-04 International Business Machines Corporation Pipelined memory chip structure having improved cycle time
US5179687A (en) * 1987-09-26 1993-01-12 Mitsubishi Denki Kabushiki Kaisha Semiconductor memory device containing a cache and an operation method thereof
JPS6488662A (en) 1987-09-29 1989-04-03 Fujitsu Ltd Semiconductor memory
JP2701030B2 (ja) 1987-10-09 1998-01-21 株式会社日立製作所 高速記憶装置の書込制御回路
KR970008786B1 (ko) * 1987-11-02 1997-05-29 가부시기가이샤 히다찌세이사꾸쇼 반도체 집적회로
JPH01146187A (ja) * 1987-12-02 1989-06-08 Mitsubishi Electric Corp キヤッシュメモリ内蔵半導体記憶装置
US4916670A (en) * 1988-02-02 1990-04-10 Fujitsu Limited Semiconductor memory device having function of generating write signal internally
US4866676A (en) 1988-03-24 1989-09-12 Motorola, Inc. Testing arrangement for a DRAM with redundancy
US5301278A (en) * 1988-04-29 1994-04-05 International Business Machines Corporation Flexible dynamic memory controller
US4866679A (en) 1988-08-11 1989-09-12 Western Atlas International, Inc. Method for identifying anomalous noise amplitudes in seismic data
US5335337A (en) 1989-01-27 1994-08-02 Digital Equipment Corporation Programmable data transfer timing
US4937734A (en) * 1989-02-21 1990-06-26 Sun Microsystems, Inc. High speed bus with virtual memory data transfer and rerun cycle capability
US5001672A (en) * 1989-05-16 1991-03-19 International Business Machines Corporation Video ram with external select of active serial access register
US5097489A (en) 1989-05-19 1992-03-17 Tucci Patrick A Method for incorporating window strobe in a data synchronizer
KR940008295B1 (ko) * 1989-08-28 1994-09-10 가부시기가이샤 히다찌세이사꾸쇼 반도체메모리
IL96808A (en) 1990-04-18 1996-03-31 Rambus Inc Introductory / Origin Circuit Agreed Using High-Performance Brokerage
US5428389A (en) 1990-06-14 1995-06-27 Fuji Photo Film Co., Ltd. Image data storage/processing apparatus
JP2519580B2 (ja) * 1990-06-19 1996-07-31 三菱電機株式会社 半導体集積回路
US5404483A (en) * 1990-06-29 1995-04-04 Digital Equipment Corporation Processor and method for delaying the processing of cache coherency transactions during outstanding cache fills
KR100214435B1 (ko) 1990-07-25 1999-08-02 사와무라 시코 동기식 버스트 엑세스 메모리
US5077693A (en) 1990-08-06 1991-12-31 Motorola, Inc. Dynamic random access memory
US5260905A (en) 1990-09-03 1993-11-09 Matsushita Electric Industrial Co., Ltd. Multi-port memory
US5357621A (en) 1990-09-04 1994-10-18 Hewlett-Packard Company Serial architecture for memory module control
US5117389A (en) * 1990-09-05 1992-05-26 Macronix International Co., Ltd. Flat-cell read-only-memory integrated circuit
US5239639A (en) * 1990-11-09 1993-08-24 Intel Corporation Efficient memory controller with an independent clock
JP3100622B2 (ja) 1990-11-20 2000-10-16 沖電気工業株式会社 同期型ダイナミックram
TW198135B (ja) * 1990-11-20 1993-01-11 Oki Electric Ind Co Ltd
US5379438A (en) * 1990-12-14 1995-01-03 Xerox Corporation Transferring a processing unit's data between substrates in a parallel processor
JPH04216392A (ja) * 1990-12-18 1992-08-06 Mitsubishi Electric Corp ブロックライト機能を備える半導体記憶装置
JP3992757B2 (ja) * 1991-04-23 2007-10-17 テキサス インスツルメンツ インコーポレイテツド マイクロプロセッサと同期するメモリ、及びデータプロセッサ、同期メモリ、周辺装置とシステムクロックを含むシステム
WO1992021088A1 (en) * 1991-05-17 1992-11-26 Eastman Kodak Company Novel electrical bus structure
US5345573A (en) 1991-10-04 1994-09-06 Bull Hn Information Systems Inc. High speed burst read address generation with high speed transfer
US5381538A (en) * 1991-10-15 1995-01-10 International Business Machines Corp. DMA controller including a FIFO register and a residual register for data buffering and having different operating modes
JP2599539B2 (ja) 1991-10-15 1997-04-09 インターナショナル・ビジネス・マシーンズ・コーポレイション 直接メモリ・アクセス装置及びルック・アヘッド装置
JPH05134973A (ja) * 1991-11-14 1993-06-01 Toshiba Corp データ転送装置
US5381376A (en) * 1991-11-22 1995-01-10 Samsung Electronics Co., Ltd. Video RAM having block selection function during serial write transfer operation
US5276858A (en) * 1991-12-26 1994-01-04 Intel Corporation Memory controller with integrated delay line circuitry
KR950000503B1 (ko) 1992-01-10 1995-01-24 삼성전자 주식회사 블럭라이트 기능을 갖는 반도체 메모리장치
JP2740097B2 (ja) * 1992-03-19 1998-04-15 株式会社東芝 クロック同期型半導体記憶装置およびそのアクセス方法
JP2830594B2 (ja) 1992-03-26 1998-12-02 日本電気株式会社 半導体メモリ装置
US5164916A (en) 1992-03-31 1992-11-17 Digital Equipment Corporation High-density double-sided multi-string memory module with resistor for insertion detection
US5384745A (en) * 1992-04-27 1995-01-24 Mitsubishi Denki Kabushiki Kaisha Synchronous semiconductor memory device
US5615358A (en) 1992-05-28 1997-03-25 Texas Instruments Incorporated Time skewing arrangement for operating memory in synchronism with a data processor
JP2950018B2 (ja) 1992-06-02 1999-09-20 日本電気株式会社 半導体記憶回路とそれを用いた半導体記憶モジュール及び音響信号再生装置
US5731633A (en) * 1992-09-16 1998-03-24 Gary W. Hamilton Thin multichip module
US5553248A (en) 1992-10-02 1996-09-03 Compaq Computer Corporation System for awarding the highest priority to a microprocessor releasing a system bus after aborting a locked cycle upon detecting a locked retry signal
JP3476231B2 (ja) * 1993-01-29 2003-12-10 三菱電機エンジニアリング株式会社 同期型半導体記憶装置および半導体記憶装置
CA2109043A1 (en) * 1993-01-29 1994-07-30 Charles R. Moore System and method for transferring data between multiple buses
JP2605576B2 (ja) 1993-04-02 1997-04-30 日本電気株式会社 同期型半導体メモリ
US5392239A (en) * 1993-05-06 1995-02-21 S3, Incorporated Burst-mode DRAM
JP3277603B2 (ja) 1993-05-19 2002-04-22 富士通株式会社 半導体記憶装置
US5511024A (en) * 1993-06-02 1996-04-23 Rambus, Inc. Dynamic random access memory system
WO1994029871A1 (en) 1993-06-14 1994-12-22 Rambus, Inc. Method and apparatus for writing to memory components
JP4018159B2 (ja) * 1993-06-28 2007-12-05 株式会社ルネサステクノロジ 半導体集積回路
JP3543336B2 (ja) 1993-07-20 2004-07-14 株式会社ルネサステクノロジ 半導体装置および半導体装置の配線方式
US5504874A (en) * 1993-09-29 1996-04-02 Silicon Graphics, Inc. System and method of implementing read resources to maintain cache coherency in a multiprocessor environment permitting split transactions
US5511025A (en) * 1993-10-18 1996-04-23 Texas Instruments Incorporated Write per bit with write mask information carried on the data path past the input data latch
US5386375A (en) 1993-11-01 1995-01-31 Motorola, Inc. Floating point data processor and a method for performing a floating point square root operation within the data processor
US5530623A (en) 1993-11-19 1996-06-25 Ncr Corporation High speed memory packaging scheme
JP3328638B2 (ja) 1994-01-21 2002-09-30 株式会社日立製作所 メモリ装置
US5386385A (en) * 1994-01-31 1995-01-31 Texas Instruments Inc. Method and apparatus for preventing invalid operating modes and an application to synchronous memory devices
US5406518A (en) * 1994-02-08 1995-04-11 Industrial Technology Research Institute Variable length delay circuit utilizing an integrated memory device with multiple-input and multiple-output configuration
KR0122099B1 (ko) 1994-03-03 1997-11-26 김광호 라이트레이턴시제어기능을 가진 동기식 반도체메모리장치
JPH07253962A (ja) * 1994-03-14 1995-10-03 Fujitsu Ltd 半導体装置
US5579352A (en) 1994-04-06 1996-11-26 National Semiconductor Corporation Simplified window de-skewing in a serial data receiver
US5533204A (en) 1994-04-18 1996-07-02 Compaq Computer Corporation Split transaction protocol for the peripheral component interconnect bus
JPH07311735A (ja) * 1994-05-18 1995-11-28 Hitachi Ltd データ転送装置
EP0692764B1 (en) 1994-06-17 2000-08-09 Advanced Micro Devices, Inc. Memory throttle for PCI master
US5655113A (en) * 1994-07-05 1997-08-05 Monolithic System Technology, Inc. Resynchronization circuit for a memory system and method of operating same
US5528177A (en) * 1994-09-16 1996-06-18 Research Foundation Of State University Of New York Complementary field-effect transistor logic circuits for wave pipelining
JPH08123717A (ja) 1994-10-25 1996-05-17 Oki Electric Ind Co Ltd 半導体記憶装置
US5548788A (en) 1994-10-27 1996-08-20 Emc Corporation Disk controller having host processor controls the time for transferring data to disk drive by modifying contents of the memory to indicate data is stored in the memory
US5475690A (en) * 1994-11-10 1995-12-12 Digital Equipment Corporation Delay compensated signal propagation
JPH08278916A (ja) * 1994-11-30 1996-10-22 Hitachi Ltd マルチチャネルメモリシステム、転送情報同期化方法及び信号転送回路
US5611068A (en) * 1994-12-27 1997-03-11 Motorola, Inc. Apparatus and method for controlling pipelined data transfer scheme between stages employing shift register and associated addressing mechanism
US5577236A (en) 1994-12-30 1996-11-19 International Business Machines Corporation Memory controller for reading data from synchronous RAM
JP2962463B2 (ja) 1995-01-13 1999-10-12 焼津水産化学工業株式会社 生鮮長芋の保存方法及び生鮮長芋冷凍品の製造方法
JP3487458B2 (ja) 1995-01-27 2004-01-19 株式会社リコー 並列信号伝送装置
US5638520A (en) * 1995-03-31 1997-06-10 Motorola, Inc. Method and apparatus for distributing bus loading in a data processing system
US5578940A (en) 1995-04-04 1996-11-26 Rambus, Inc. Modular bus with single or double parallel termination
US5638531A (en) * 1995-06-07 1997-06-10 International Business Machines Corporation Multiprocessor integrated circuit with video refresh logic employing instruction/data caching and associated timing synchronization
US5852640A (en) * 1995-06-26 1998-12-22 Kliza; Phillip S. Clock distribution apparatus with current sensed skew cancelling
US5764963A (en) * 1995-07-07 1998-06-09 Rambus, Inc. Method and apparatus for performing maskable multiple color block writes
US5742840A (en) * 1995-08-16 1998-04-21 Microunity Systems Engineering, Inc. General purpose, multiple precision parallel operation, programmable media processor
US5692165A (en) * 1995-09-12 1997-11-25 Micron Electronics Inc. Memory controller with low skew control signal
US6810449B1 (en) 1995-10-19 2004-10-26 Rambus, Inc. Protocol for communication with dynamic memory
US6035369A (en) * 1995-10-19 2000-03-07 Rambus Inc. Method and apparatus for providing a memory with write enable information
US6470405B2 (en) 1995-10-19 2002-10-22 Rambus Inc. Protocol for communication with dynamic memory
US5748914A (en) * 1995-10-19 1998-05-05 Rambus, Inc. Protocol for communication with dynamic memory
JPH09161472A (ja) * 1995-12-13 1997-06-20 Hitachi Ltd メモリ制御方法
JP3986578B2 (ja) * 1996-01-17 2007-10-03 三菱電機株式会社 同期型半導体記憶装置
JP3410922B2 (ja) * 1996-04-23 2003-05-26 株式会社東芝 クロック制御回路
US6211703B1 (en) 1996-06-07 2001-04-03 Hitachi, Ltd. Signal transmission system
JP3546613B2 (ja) * 1996-10-25 2004-07-28 株式会社日立製作所 回路基板
US6125419A (en) * 1996-06-13 2000-09-26 Hitachi, Ltd. Bus system, printed circuit board, signal transmission line, series circuit and memory module
JPH1022458A (ja) * 1996-07-04 1998-01-23 Fujitsu Ltd 半導体装置及びピン配列
US5802395A (en) 1996-07-08 1998-09-01 International Business Machines Corporation High density memory modules with improved data bus performance
US5742798A (en) * 1996-08-09 1998-04-21 International Business Machines Corporation Compensation of chip to chip clock skew
JP3204108B2 (ja) * 1996-08-23 2001-09-04 トヨタ自動車株式会社 空気温センサの異常検出装置
US6088774A (en) 1996-09-20 2000-07-11 Advanced Memory International, Inc. Read/write timing for maximum utilization of bidirectional read/write bus
US6226723B1 (en) * 1996-09-20 2001-05-01 Advanced Memory International, Inc. Bifurcated data and command/address communication bus architecture for random access memories employing synchronous communication protocols
EP0831402A1 (en) 1996-09-23 1998-03-25 Hewlett-Packard Company Dynamically configuring timing to match memory bus loading conditions
US5892981A (en) * 1996-10-10 1999-04-06 Hewlett-Packard Company Memory system and device
US5933379A (en) * 1996-11-18 1999-08-03 Samsung Electronics, Co., Ltd. Method and circuit for testing a semiconductor memory device operating at high frequency
US6115318A (en) 1996-12-03 2000-09-05 Micron Technology, Inc. Clock vernier adjustment
JP3455040B2 (ja) * 1996-12-16 2003-10-06 株式会社日立製作所 ソースクロック同期式メモリシステムおよびメモリユニット
EP0849685A3 (en) 1996-12-19 2000-09-06 Texas Instruments Incorporated Communication bus system between processors and memory modules
US5966343A (en) 1997-01-02 1999-10-12 Texas Instruments Incorporated Variable latency memory circuit
US5943573A (en) 1997-01-17 1999-08-24 United Microelectronics Corp. Method of fabricating semiconductor read-only memory device
EP0855653B1 (en) * 1997-01-23 2004-10-06 Hewlett-Packard Company, A Delaware Corporation Memory controller with a programmable strobe delay
US6912680B1 (en) * 1997-02-11 2005-06-28 Micron Technology, Inc. Memory system with dynamic timing correction
US5987576A (en) 1997-02-27 1999-11-16 Hewlett-Packard Company Method and apparatus for generating and distributing clock signals with minimal skew
JPH10302471A (ja) 1997-02-28 1998-11-13 Mitsubishi Electric Corp 半導体記憶装置
JP2935694B2 (ja) 1997-04-25 1999-08-16 松下電器産業株式会社 半導体集積回路およびシステム、並びにクロック信号とデータ信号との間のスキューを低減する方法
US5952691A (en) 1997-05-14 1999-09-14 Ricoh Company, Ltd. Non-volatile electrically alterable semiconductor memory device
US5946712A (en) 1997-06-04 1999-08-31 Oak Technology, Inc. Apparatus and method for reading data from synchronous memory
JPH10340222A (ja) * 1997-06-09 1998-12-22 Nec Corp メモリ装置の入力回路及び出力回路
US6247138B1 (en) 1997-06-12 2001-06-12 Fujitsu Limited Timing signal generating circuit, semiconductor integrated circuit device and semiconductor integrated circuit system to which the timing signal generating circuit is applied, and signal transmission system
KR100213241B1 (ko) * 1997-06-23 1999-08-02 윤종용 데이터 입출력 회로 및 데이터 입출력 방법
US6232792B1 (en) * 1997-06-25 2001-05-15 Sun Microsystems, Inc. Terminating transmission lines using on-chip terminator circuitry
US6286062B1 (en) 1997-07-01 2001-09-04 Micron Technology, Inc. Pipelined packet-oriented memory system having a unidirectional command and address bus and a bidirectional data bus
US6292903B1 (en) * 1997-07-09 2001-09-18 International Business Machines Corporation Smart memory interface
US6044429A (en) 1997-07-10 2000-03-28 Micron Technology, Inc. Method and apparatus for collision-free data transfers in a memory device with selectable data or address paths
US6124727A (en) 1997-07-11 2000-09-26 Adaptec, Inc. Bias compensator for differential transmission line with voltage bias
JP3922765B2 (ja) * 1997-07-22 2007-05-30 富士通株式会社 半導体装置システム及び半導体装置
US6442644B1 (en) * 1997-08-11 2002-08-27 Advanced Memory International, Inc. Memory system having synchronous-link DRAM (SLDRAM) devices and controller
JPH11161601A (ja) * 1997-08-19 1999-06-18 Matsushita Electric Ind Co Ltd 複数伝送線路間の遅延時間の調整装置
JPH1185345A (ja) 1997-09-02 1999-03-30 Toshiba Corp 入出力インターフェース回路及び半導体システム
US6067594A (en) * 1997-09-26 2000-05-23 Rambus, Inc. High frequency bus system
JPH11167515A (ja) * 1997-10-03 1999-06-22 Matsushita Electric Ind Co Ltd データ伝送装置及びデータ伝送方法
US6343352B1 (en) * 1997-10-10 2002-01-29 Rambus Inc. Method and apparatus for two step memory write operations
US6401167B1 (en) 1997-10-10 2002-06-04 Rambus Incorporated High performance cost optimized memory
US6075730A (en) * 1997-10-10 2000-06-13 Rambus Incorporated High performance cost optimized memory with delayed memory writes
AU9604598A (en) * 1997-10-10 1999-05-03 Rambus Incorporated Apparatus and method for device timing compensation
US6226757B1 (en) 1997-10-10 2001-05-01 Rambus Inc Apparatus and method for bus timing compensation
US6310171B1 (en) * 1997-10-29 2001-10-30 Kanebo Limited Resin composition with biodegradability and foamability
US6003118A (en) * 1997-12-16 1999-12-14 Acer Laboratories Inc. Method and apparatus for synchronizing clock distribution of a data processing system
US6005776A (en) 1998-01-05 1999-12-21 Intel Corporation Vertical connector based packaging solution for integrated circuits
US6111757A (en) 1998-01-16 2000-08-29 International Business Machines Corp. SIMM/DIMM memory module
KR100278653B1 (ko) 1998-01-23 2001-02-01 윤종용 이중 데이터율 모드 반도체 메모리 장치
US6968419B1 (en) * 1998-02-13 2005-11-22 Intel Corporation Memory module having a memory module controller controlling memory transactions for a plurality of memory devices
US6105144A (en) 1998-03-02 2000-08-15 International Business Machines Corporation System and method for alleviating skew in a bus
DE19808888A1 (de) * 1998-03-03 1999-09-09 Huels Chemische Werke Ag Verstärkte Formmasse
US6154821A (en) 1998-03-10 2000-11-28 Rambus Inc. Method and apparatus for initializing dynamic random access memory (DRAM) devices by levelizing a read domain
JP4634605B2 (ja) * 1998-03-12 2011-02-16 エルピーダメモリ株式会社 データ伝送システム
EP1064767B8 (en) * 1998-03-16 2007-06-27 Jazio Inc. High speed signaling for interfacing vlsi cmos circuits
US6327205B1 (en) * 1998-03-16 2001-12-04 Jazio, Inc. Signal latching of high bandwidth DRAM arrays when skew between different components is higher than signal rate
JPH11265313A (ja) * 1998-03-18 1999-09-28 Hitachi Ltd 記憶装置
US5933387A (en) 1998-03-30 1999-08-03 Richard Mann Divided word line architecture for embedded memories using multiple metal layers
WO1999050852A1 (en) * 1998-04-01 1999-10-07 Mosaid Technologies Incorporated Semiconductor memory asynchronous pipeline
CA2233789C (en) * 1998-04-01 2013-06-11 Ian Mes Semiconductor memory asynchronous pipeline
US6356260B1 (en) * 1998-04-10 2002-03-12 National Semiconductor Corporation Method for reducing power and electromagnetic interference in conveying video data
JP3727778B2 (ja) * 1998-05-07 2005-12-14 株式会社東芝 データ高速転送同期システム及びデータ高速転送同期方法
JP4079507B2 (ja) * 1998-05-12 2008-04-23 富士通株式会社 メモリ制御システムおよびメモリ制御方法
US6049238A (en) * 1998-05-12 2000-04-11 Mitsubishi Denki Kabushiki Kaisha Clock generator and clock generating method capable of varying clock frequency without increasing the number of delay elements
US6041419A (en) * 1998-05-27 2000-03-21 S3 Incorporated Programmable delay timing calibrator for high speed data interface
KR100305647B1 (ko) * 1998-05-27 2002-03-08 박종섭 동기식메모리장치
US6016282A (en) * 1998-05-28 2000-01-18 Micron Technology, Inc. Clock vernier adjustment
US6057743A (en) * 1998-06-22 2000-05-02 Hubbell Incorporation Distributed noise reduction circuits in telecommunication system connector
JP2000035831A (ja) 1998-07-21 2000-02-02 Nec Corp 可変閾値電圧トランジスタを用いた低スキュークロックツリー回路
US6178517B1 (en) * 1998-07-24 2001-01-23 International Business Machines Corporation High bandwidth DRAM with low operating power modes
US6510503B2 (en) * 1998-07-27 2003-01-21 Mosaid Technologies Incorporated High bandwidth memory interface
US6049467A (en) * 1998-08-31 2000-04-11 Unisys Corporation Stackable high density RAM modules
US6279090B1 (en) 1998-09-03 2001-08-21 Micron Technology, Inc. Method and apparatus for resynchronizing a plurality of clock signals used in latching respective digital signals applied to a packetized memory device
US6029250A (en) * 1998-09-09 2000-02-22 Micron Technology, Inc. Method and apparatus for adaptively adjusting the timing offset between a clock signal and digital signals transmitted coincident with that clock signal, and memory device and system using same
KR100318257B1 (ko) * 1998-11-07 2002-04-22 박종섭 인쇄회로기판및그의신호배선방법
US6336205B1 (en) * 1998-11-12 2002-01-01 Matsushita Electric Industrial Co., Ltd. Method for designing semiconductor integrated circuit
KR100287542B1 (ko) * 1998-11-26 2001-04-16 윤종용 웨이브 파이프라인 스킴을 구비한 동기형 반도체 메모리 장치및 그것의 데이터 패스 제어 방법
JP3803204B2 (ja) 1998-12-08 2006-08-02 寛治 大塚 電子装置
US6222785B1 (en) * 1999-01-20 2001-04-24 Monolithic System Technology, Inc. Method and apparatus for refreshing a semiconductor memory using idle memory cycles
US6347367B1 (en) 1999-01-29 2002-02-12 International Business Machines Corp. Data bus structure for use with multiple memory storage and driver receiver technologies and a method of operating such structures
JP4115028B2 (ja) 1999-02-17 2008-07-09 富士通株式会社 集積回路デバイス及びそれを搭載したモジュール
US6253266B1 (en) * 1999-02-19 2001-06-26 Inet Technologies, Inc. Apparatus and method for controlling information flow in a card cage having multiple backplanes
US6654897B1 (en) * 1999-03-05 2003-11-25 International Business Machines Corporation Dynamic wave-pipelined interface apparatus and methods therefor
US6137734A (en) * 1999-03-30 2000-10-24 Lsi Logic Corporation Computer memory interface having a memory controller that automatically adjusts the timing of memory interface signals
JP2000284873A (ja) 1999-03-31 2000-10-13 Adtec:Kk メモリ回路基板
JP3880286B2 (ja) 1999-05-12 2007-02-14 エルピーダメモリ株式会社 方向性結合式メモリシステム
KR100316713B1 (ko) 1999-06-26 2001-12-12 윤종용 반도체 메모리 장치 및 이에 적합한 구동신호 발생기
US6629222B1 (en) 1999-07-13 2003-09-30 Micron Technology Inc. Apparatus for synchronizing strobe and data signals received from a RAM
US6839393B1 (en) 1999-07-14 2005-01-04 Rambus Inc. Apparatus and method for controlling a master/slave system via master device synchronization
US6370668B1 (en) * 1999-07-23 2002-04-09 Rambus Inc High speed memory system capable of selectively operating in non-chip-kill and chip-kill modes
JP3813768B2 (ja) 1999-07-30 2006-08-23 株式会社日立製作所 半導体装置及び半導体モジュール
US6477592B1 (en) 1999-08-06 2002-11-05 Integrated Memory Logic, Inc. System for I/O interfacing for semiconductor chip utilizing addition of reference element to each data element in first data stream and interpret to recover data elements of second data stream
US6180754B1 (en) * 1999-09-03 2001-01-30 The Dow Chemical Company Process for producing cross-linked polyallylamine polymer
US6640292B1 (en) 1999-09-10 2003-10-28 Rambus Inc. System and method for controlling retire buffer operation in a memory system
US6321282B1 (en) 1999-10-19 2001-11-20 Rambus Inc. Apparatus and method for topography dependent signaling
US6646953B1 (en) * 2000-07-06 2003-11-11 Rambus Inc. Single-clock, strobeless signaling system
US6643787B1 (en) 1999-10-19 2003-11-04 Rambus Inc. Bus system optimization
US6526469B1 (en) * 1999-11-12 2003-02-25 International Business Machines Corporation Bus architecture employing varying width uni-directional command bus
US6643752B1 (en) 1999-12-09 2003-11-04 Rambus Inc. Transceiver with latency alignment circuitry
US6172895B1 (en) * 1999-12-14 2001-01-09 High Connector Density, Inc. High capacity memory module with built-in-high-speed bus terminations
US6502161B1 (en) 2000-01-05 2002-12-31 Rambus Inc. Memory system including a point-to-point linked memory subsystem
US6760857B1 (en) * 2000-02-18 2004-07-06 Rambus Inc. System having both externally and internally generated clock signals being asserted on the same clock pin in normal and test modes of operation respectively
US6191997B1 (en) 2000-03-10 2001-02-20 Mosel Vitelic Inc. Memory burst operations in which address count bits are used as column address bits for one, but not both, of the odd and even columns selected in parallel.
US6179687B1 (en) * 2000-03-10 2001-01-30 Elena Lee Undergarments with invisible strap
JP2001265708A (ja) * 2000-03-16 2001-09-28 Toshiba Corp 電子機器及び電子機器の基板
US6449159B1 (en) 2000-05-03 2002-09-10 Rambus Inc. Semiconductor module with imbedded heat spreader
US6833984B1 (en) 2000-05-03 2004-12-21 Rambus, Inc. Semiconductor module with serial bus connection to multiple dies
US6388886B1 (en) * 2000-05-08 2002-05-14 Mitsubishi Denki Kabushiki Kaisha Semiconductor memory module and module system
JP2001319500A (ja) * 2000-05-10 2001-11-16 Mitsubishi Electric Corp 半導体集積回路装置
US6545875B1 (en) * 2000-05-10 2003-04-08 Rambus, Inc. Multiple channel modules and bus systems using same
JP3757757B2 (ja) 2000-05-18 2006-03-22 株式会社日立製作所 リード優先メモリシステム
JP2001339283A (ja) 2000-05-26 2001-12-07 Mitsubishi Electric Corp 遅延回路およびそのための半導体回路装置
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
KR100608346B1 (ko) * 2000-06-30 2006-08-09 주식회사 하이닉스반도체 반도체 메모리 장치의 시스템 버스 구조
US6316980B1 (en) 2000-06-30 2001-11-13 Intel Corporation Calibrating data strobe signal using adjustable delays with feedback
US6760856B1 (en) 2000-07-17 2004-07-06 International Business Machines Corporation Programmable compensated delay for DDR SDRAM interface using programmable delay loop for reference calibration
US6333893B1 (en) 2000-08-21 2001-12-25 Micron Technology, Inc. Method and apparatus for crossing clock domain boundaries
US6807613B1 (en) 2000-08-21 2004-10-19 Mircon Technology, Inc. Synchronized write data on a high speed memory bus
US6691214B1 (en) 2000-08-29 2004-02-10 Micron Technology, Inc. DDR II write data capture calibration
US6928571B1 (en) 2000-09-15 2005-08-09 Intel Corporation Digital system of adjusting delays on circuit boards
US6853557B1 (en) * 2000-09-20 2005-02-08 Rambus, Inc. Multi-channel memory architecture
JP2002117670A (ja) 2000-10-04 2002-04-19 Mitsubishi Electric Corp 半導体記憶装置
US6411122B1 (en) 2000-10-27 2002-06-25 Intel Corporation Apparatus and method for dynamic on-die termination in an open-drain bus architecture system
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
US6873939B1 (en) * 2001-02-02 2005-03-29 Rambus Inc. Method and apparatus for evaluating and calibrating a signaling system
JP2002230985A (ja) * 2001-02-06 2002-08-16 Sharp Corp 不揮発性半導体記憶装置及びその制御方法
US7313715B2 (en) 2001-02-09 2007-12-25 Samsung Electronics Co., Ltd. Memory system having stub bus configuration
US6445624B1 (en) 2001-02-23 2002-09-03 Micron Technology, Inc. Method of synchronizing read timing in a high speed memory system
US6788593B2 (en) 2001-02-28 2004-09-07 Rambus, Inc. Asynchronous, high-bandwidth memory component using calibrated timing elements
US6618736B1 (en) * 2001-03-09 2003-09-09 Ensim Corporation Template-based creation and archival of file systems
US6684283B1 (en) * 2001-03-13 2004-01-27 Texas Instruments Incorporated Method for interfacing a cardbay card to the host system by indicating a 16-bit or cardbus PC card insertion to host software
US6658523B2 (en) * 2001-03-13 2003-12-02 Micron Technology, Inc. System latency levelization for read data
US6456544B1 (en) 2001-03-30 2002-09-24 Intel Corporation Selective forwarding of a strobe based on a predetermined delay following a memory read command
EP1249438A1 (en) * 2001-04-13 2002-10-16 Dsm N.V. Continuous hydroformylation process for producing an aldehyde
US8391039B2 (en) * 2001-04-24 2013-03-05 Rambus Inc. Memory module with termination component
US6675272B2 (en) * 2001-04-24 2004-01-06 Rambus Inc. Method and apparatus for coordinating memory operations among diversely-located memory components
DE60220863T2 (de) 2001-04-24 2008-03-13 Rambus Inc., Los Altos Verfahren und Gerät zum Koordinieren von Speicheroperationen zwischen unterschiedlich angeordneten Speicherkomponenten
JP2003005831A (ja) 2001-06-20 2003-01-08 Nippon Yusoki Co Ltd 接触検出装置
US6801989B2 (en) 2001-06-28 2004-10-05 Micron Technology, Inc. Method and system for adjusting the timing offset between a clock signal and respective digital signals transmitted along with that clock signal, and memory device and computer system using same
US6697918B2 (en) * 2001-07-18 2004-02-24 Broadcom Corporation Cache configured to read evicted cache block responsive to transmitting block's address on interface
US6970988B1 (en) 2001-07-19 2005-11-29 Chung Shine C Algorithm mapping, specialized instructions and architecture features for smart memory computing
US6807614B2 (en) 2001-07-19 2004-10-19 Shine C. Chung Method and apparatus for using smart memories in computing
US7102958B2 (en) * 2001-07-20 2006-09-05 Samsung Electronics Co., Ltd. Integrated circuit memory devices that support selective mode register set commands and related memory modules, memory controllers, and methods
US6504790B1 (en) * 2001-08-09 2003-01-07 International Business Machines Corporation Configurable DDR write-channel phase advance and delay capability
JP2003085974A (ja) 2001-09-13 2003-03-20 Toshiba Corp 半導体集積回路およびメモリシステム
US6748465B2 (en) 2001-09-28 2004-06-08 Intel Corporation Local bus polling support buffer
JP4308461B2 (ja) * 2001-10-05 2009-08-05 ラムバス・インコーポレーテッド 半導体記憶装置
WO2003036445A1 (en) * 2001-10-22 2003-05-01 Rambus Inc. Timing calibration apparatus and method for a memory device signaling system
KR100393232B1 (ko) * 2001-10-23 2003-07-31 삼성전자주식회사 제1 또는 제2메모리 아키텍쳐로의 구현이 가능한 반도체메모리 장치 및 이를 이용한 메모리 시스템
US6661721B2 (en) 2001-12-13 2003-12-09 Infineon Technologies Ag Systems and methods for executing precharge commands using posted precharge in integrated circuit memory devices with memory banks each including local precharge control circuits
KR100414943B1 (ko) 2001-12-28 2004-01-16 엘지전자 주식회사 콤팩트 피씨아이에 기반한 다중 처리 시스템에서의 클럭분배 장치 및 방법
CN1509475B (zh) * 2002-01-11 2010-05-26 索尼公司 存储设备、运动矢量检测器、和运动补偿预测编码器
US6804764B2 (en) 2002-01-22 2004-10-12 Mircron Technology, Inc. Write clock and data window tuning based on rank select
US7043599B1 (en) * 2002-06-20 2006-05-09 Rambus Inc. Dynamic memory supporting simultaneous refresh and data-access transactions
US20040003194A1 (en) * 2002-06-26 2004-01-01 Amit Bodas Method and apparatus for adjusting DRAM signal timings
JP4481588B2 (ja) 2003-04-28 2010-06-16 株式会社東芝 半導体集積回路装置
JP4205553B2 (ja) * 2003-11-06 2009-01-07 エルピーダメモリ株式会社 メモリモジュール及びメモリシステム
JP4015986B2 (ja) 2003-11-12 2007-11-28 沖電気工業株式会社 半導体集積回路装置
JP4741226B2 (ja) 2003-12-25 2011-08-03 株式会社日立製作所 半導体メモリモジュール、およびメモリシステム
JP4565883B2 (ja) 2004-04-27 2010-10-20 ルネサスエレクトロニクス株式会社 半導体集積回路装置
US7224595B2 (en) 2004-07-30 2007-05-29 International Business Machines Corporation 276-Pin buffered memory module with enhanced fault tolerance
US7519877B2 (en) * 2004-08-10 2009-04-14 Micron Technology, Inc. Memory with test mode output
US7301831B2 (en) * 2004-09-15 2007-11-27 Rambus Inc. Memory systems with variable delays for write data signals
US7542322B2 (en) 2004-09-30 2009-06-02 Intel Corporation Buffered continuous multi-drop clock ring
TWI304395B (en) * 2004-11-26 2008-12-21 Ind Tech Res Inst A method for fabricating a high specific surface area mesoporous alumina
US7688672B2 (en) * 2005-03-14 2010-03-30 Rambus Inc. Self-timed interface for strobe-based systems
DE102005019041B4 (de) * 2005-04-23 2009-04-16 Qimonda Ag Halbleiterspeicher und Verfahren zur Anpassung der Phasenbeziehung zwischen einem Taktsignal und Strobe-Signal bei der Übernahme von zu übertragenden Schreibdaten
US8077535B2 (en) * 2006-07-31 2011-12-13 Google Inc. Memory refresh apparatus and method
US7609567B2 (en) * 2005-06-24 2009-10-27 Metaram, Inc. System and method for simulating an aspect of a memory circuit
KR100615580B1 (ko) * 2005-07-05 2006-08-25 삼성전자주식회사 반도체 메모리 장치 및 이 장치의 데이터 입출력 방법과이를 구비한 메모리 시스템
US7839792B2 (en) * 2005-08-30 2010-11-23 Tektronix, Inc. Time-correlated, simultaneous measurement and analysis of network signals from multiple communication networks
JP5072072B2 (ja) 2007-03-15 2012-11-14 東洋ゴム工業株式会社 研磨パッド
US7872937B2 (en) * 2008-03-31 2011-01-18 Globalfoundries Inc. Data driver circuit for a dynamic random access memory (DRAM) controller or the like and method therefor
US8661285B2 (en) * 2008-06-06 2014-02-25 Uniquify, Incorporated Dynamically calibrated DDR memory controller
JP4405565B2 (ja) * 2008-06-19 2010-01-27 株式会社東芝 メモリシステムおよびメモリデバイス
US7733685B2 (en) 2008-07-09 2010-06-08 Sandisk 3D Llc Cross point memory cell with distributed diodes and method of making same
US8587337B1 (en) * 2009-01-31 2013-11-19 Xilinx, Inc. Method and apparatus for capturing and synchronizing data
US8902693B2 (en) * 2013-04-25 2014-12-02 Avago Technologies General Ip (Singapore) Pte. Ltd. System and method for per-bit de-skew for datamask in a double data-rate memory device interface
US8937846B2 (en) * 2013-05-09 2015-01-20 Avago Technologies General Ip (Singapore) Pte. Ltd. Write level training using dual frequencies in a double data-rate memory device interface

Also Published As

Publication number Publication date
US8395951B2 (en) 2013-03-12
EP2278474B1 (en) 2015-02-18
EP1653374B2 (en) 2014-10-29
US20040170072A1 (en) 2004-09-02
EP1653374A3 (en) 2006-07-26
EP2192494A1 (en) 2010-06-02
EP1653374A2 (en) 2006-05-03
JP2008123552A (ja) 2008-05-29
US10236051B2 (en) 2019-03-19
US7209397B2 (en) 2007-04-24
US20070255919A1 (en) 2007-11-01
US20140098622A1 (en) 2014-04-10
US20120213020A1 (en) 2012-08-23
JP2010108525A (ja) 2010-05-13
DE60239030D1 (de) 2011-03-10
EP2192494B1 (en) 2012-06-20
US8462566B2 (en) 2013-06-11
JP4255242B2 (ja) 2009-04-15
US9311976B2 (en) 2016-04-12
EP2273376A1 (en) 2011-01-12
EP2849075A1 (en) 2015-03-18
US8760944B2 (en) 2014-06-24
US6675272B2 (en) 2004-01-06
US20130250706A1 (en) 2013-09-26
US20130305079A1 (en) 2013-11-14
US7210016B2 (en) 2007-04-24
EP3693866B1 (en) 2022-03-30
US20210027825A1 (en) 2021-01-28
EP2278474A1 (en) 2011-01-26
US20020174311A1 (en) 2002-11-21
JP4489817B2 (ja) 2010-06-23
US8625371B2 (en) 2014-01-07
JP2008135063A (ja) 2008-06-12
DE60235050D1 (de) 2010-02-25
US7484064B2 (en) 2009-01-27
US20060007761A1 (en) 2006-01-12
US20050169097A1 (en) 2005-08-04
US9053778B2 (en) 2015-06-09
JP2002342153A (ja) 2002-11-29
JP2012248225A (ja) 2012-12-13
US20090138646A1 (en) 2009-05-28
EP2849075A8 (en) 2015-09-16
US10706910B2 (en) 2020-07-07
US7177998B2 (en) 2007-02-13
US8717837B2 (en) 2014-05-06
EP2275943B1 (en) 2015-03-11
US20130279278A1 (en) 2013-10-24
US20190325936A1 (en) 2019-10-24
EP2275943A1 (en) 2011-01-19
JP4358887B2 (ja) 2009-11-04
US8537601B2 (en) 2013-09-17
EP2273376B1 (en) 2014-10-29
US8359445B2 (en) 2013-01-22
US20160196864A1 (en) 2016-07-07
US20090063887A1 (en) 2009-03-05
EP2849075B1 (en) 2016-10-19
JP2009238244A (ja) 2009-10-15
US9741424B2 (en) 2017-08-22
DE20221512U1 (de) 2006-04-27
EP3139277A1 (en) 2017-03-08
US7200055B2 (en) 2007-04-03
US20170053691A1 (en) 2017-02-23
JP5014446B2 (ja) 2012-08-29
EP2278474B8 (en) 2015-10-21
US20120287725A1 (en) 2012-11-15
US20040054845A1 (en) 2004-03-18
DE20221511U1 (de) 2006-04-13
EP1653374B1 (en) 2010-01-06
EP3693866A1 (en) 2020-08-12
US7225292B2 (en) 2007-05-29
US20180012644A1 (en) 2018-01-11
US20060069895A1 (en) 2006-03-30
US20060129776A1 (en) 2006-06-15
EP3139277B1 (en) 2019-11-27
JP5220221B2 (ja) 2013-06-26
US20060039174A1 (en) 2006-02-23
US7225311B2 (en) 2007-05-29
US9472262B2 (en) 2016-10-18
US20150043290A1 (en) 2015-02-12
US8214616B2 (en) 2012-07-03

Similar Documents

Publication Publication Date Title
JP5112391B2 (ja) 多様に配置されたメモリ・コンポーネントからメモリ・オペレーションを調整するメモリコントローラ
US8391039B2 (en) Memory module with termination component
JP4535664B2 (ja) メモリ・システムのデバイス間のシグナリングの方法および装置

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090709

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20090709

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20111202

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20120302

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20120307

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120330

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120615

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120914

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: 20121004

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20121010

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

Free format text: PAYMENT UNTIL: 20151019

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 5112391

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees