JP2012085318A - 複数のデバイスおよび柔軟なデータ整列を用いるメモリコントローラを有するシステムにおけるクロック再生およびタイミング方法 - Google Patents

複数のデバイスおよび柔軟なデータ整列を用いるメモリコントローラを有するシステムにおけるクロック再生およびタイミング方法 Download PDF

Info

Publication number
JP2012085318A
JP2012085318A JP2011251459A JP2011251459A JP2012085318A JP 2012085318 A JP2012085318 A JP 2012085318A JP 2011251459 A JP2011251459 A JP 2011251459A JP 2011251459 A JP2011251459 A JP 2011251459A JP 2012085318 A JP2012085318 A JP 2012085318A
Authority
JP
Japan
Prior art keywords
signal
clock
data
pll
clock signal
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.)
Granted
Application number
JP2011251459A
Other languages
English (en)
Other versions
JP5562922B2 (ja
Inventor
Hong Beom Pyeon
ホン・ボム・ピョン
Peter Gillingham
ピーター・ギリンガム
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Mosaid Technologies Inc
Original Assignee
Mosaid Technologies Inc
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
Priority claimed from US12/168,091 external-priority patent/US8781053B2/en
Application filed by Mosaid Technologies Inc filed Critical Mosaid Technologies Inc
Publication of JP2012085318A publication Critical patent/JP2012085318A/ja
Application granted granted Critical
Publication of JP5562922B2 publication Critical patent/JP5562922B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • 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
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/32Timing circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C5/00Details of stores covered by group G11C11/00
    • G11C5/02Disposition of storage elements, e.g. in the form of a matrix array
    • G11C5/025Geometric lay-out considerations of storage- and peripheral-blocks in a semiconductor storage device
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/02Arrangements for writing information into, or reading information out from, a digital store with means for avoiding parasitic signals
    • 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/1051Data output circuits, e.g. read-out amplifiers, data output buffers, data output registers, data output level conversion circuits
    • G11C7/1066Output synchronization
    • 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/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
    • G11C7/1093Input synchronization
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/20Memory cell initialisation circuits, e.g. when powering up or down, memory clear, latent image memory
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L7/00Arrangements for synchronising receiver with transmitter
    • H04L7/0008Synchronisation information channels, e.g. clock distribution lines
    • HELECTRICITY
    • H01ELECTRIC ELEMENTS
    • H01LSEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
    • H01L2224/00Indexing scheme for arrangements for connecting or disconnecting semiconductor or solid-state bodies and methods related thereto as covered by H01L24/00
    • H01L2224/01Means for bonding being attached to, or being formed on, the surface to be connected, e.g. chip-to-package, die-attach, "first-level" interconnects; Manufacturing methods related thereto
    • H01L2224/26Layer connectors, e.g. plate connectors, solder or adhesive layers; Manufacturing methods related thereto
    • H01L2224/31Structure, shape, material or disposition of the layer connectors after the connecting process
    • H01L2224/32Structure, shape, material or disposition of the layer connectors after the connecting process of an individual layer connector
    • H01L2224/321Disposition
    • H01L2224/32135Disposition the layer connector connecting between different semiconductor or solid-state bodies, i.e. chip-to-chip
    • H01L2224/32145Disposition the layer connector connecting between different semiconductor or solid-state bodies, i.e. chip-to-chip the bodies being stacked
    • HELECTRICITY
    • H01ELECTRIC ELEMENTS
    • H01LSEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
    • H01L2224/00Indexing scheme for arrangements for connecting or disconnecting semiconductor or solid-state bodies and methods related thereto as covered by H01L24/00
    • H01L2224/01Means for bonding being attached to, or being formed on, the surface to be connected, e.g. chip-to-package, die-attach, "first-level" interconnects; Manufacturing methods related thereto
    • H01L2224/42Wire connectors; Manufacturing methods related thereto
    • H01L2224/47Structure, shape, material or disposition of the wire connectors after the connecting process
    • H01L2224/48Structure, shape, material or disposition of the wire connectors after the connecting process of an individual wire connector
    • H01L2224/481Disposition
    • H01L2224/48135Connecting between different semiconductor or solid-state bodies, i.e. chip-to-chip
    • H01L2224/48145Connecting between different semiconductor or solid-state bodies, i.e. chip-to-chip the bodies being stacked
    • HELECTRICITY
    • H01ELECTRIC ELEMENTS
    • H01LSEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
    • H01L2224/00Indexing scheme for arrangements for connecting or disconnecting semiconductor or solid-state bodies and methods related thereto as covered by H01L24/00
    • H01L2224/01Means for bonding being attached to, or being formed on, the surface to be connected, e.g. chip-to-package, die-attach, "first-level" interconnects; Manufacturing methods related thereto
    • H01L2224/42Wire connectors; Manufacturing methods related thereto
    • H01L2224/47Structure, shape, material or disposition of the wire connectors after the connecting process
    • H01L2224/48Structure, shape, material or disposition of the wire connectors after the connecting process of an individual wire connector
    • H01L2224/481Disposition
    • H01L2224/48151Connecting between a semiconductor or solid-state body and an item not being a semiconductor or solid-state body, e.g. chip-to-substrate, chip-to-passive
    • H01L2224/48221Connecting between a semiconductor or solid-state body and an item not being a semiconductor or solid-state body, e.g. chip-to-substrate, chip-to-passive the body and the item being stacked
    • H01L2224/48225Connecting between a semiconductor or solid-state body and an item not being a semiconductor or solid-state body, e.g. chip-to-substrate, chip-to-passive the body and the item being stacked the item being non-metallic, e.g. insulating substrate with or without metallisation
    • H01L2224/48227Connecting between a semiconductor or solid-state body and an item not being a semiconductor or solid-state body, e.g. chip-to-substrate, chip-to-passive the body and the item being stacked the item being non-metallic, e.g. insulating substrate with or without metallisation connecting the wire to a bond pad of the item
    • HELECTRICITY
    • H01ELECTRIC ELEMENTS
    • H01LSEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
    • H01L2224/00Indexing scheme for arrangements for connecting or disconnecting semiconductor or solid-state bodies and methods related thereto as covered by H01L24/00
    • H01L2224/73Means for bonding being of different types provided for in two or more of groups H01L2224/10, H01L2224/18, H01L2224/26, H01L2224/34, H01L2224/42, H01L2224/50, H01L2224/63, H01L2224/71
    • H01L2224/732Location after the connecting process
    • H01L2224/73251Location after the connecting process on different surfaces
    • H01L2224/73265Layer and wire connectors
    • HELECTRICITY
    • H01ELECTRIC ELEMENTS
    • H01LSEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
    • H01L2225/00Details relating to assemblies covered by the group H01L25/00 but not provided for in its subgroups
    • H01L2225/03All the devices being of a type provided for in the same subgroup of groups H01L27/00 - H01L33/648 and H10K99/00
    • H01L2225/04All the devices being of a type provided for in the same subgroup of groups H01L27/00 - H01L33/648 and H10K99/00 the devices not having separate containers
    • H01L2225/065All the devices being of a type provided for in the same subgroup of groups H01L27/00 - H01L33/648 and H10K99/00 the devices not having separate containers the devices being of a type provided for in group H01L27/00
    • H01L2225/06503Stacked arrangements of devices
    • H01L2225/06506Wire or wire-like electrical connections between devices
    • HELECTRICITY
    • H01ELECTRIC ELEMENTS
    • H01LSEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
    • H01L2225/00Details relating to assemblies covered by the group H01L25/00 but not provided for in its subgroups
    • H01L2225/03All the devices being of a type provided for in the same subgroup of groups H01L27/00 - H01L33/648 and H10K99/00
    • H01L2225/04All the devices being of a type provided for in the same subgroup of groups H01L27/00 - H01L33/648 and H10K99/00 the devices not having separate containers
    • H01L2225/065All the devices being of a type provided for in the same subgroup of groups H01L27/00 - H01L33/648 and H10K99/00 the devices not having separate containers the devices being of a type provided for in group H01L27/00
    • H01L2225/06503Stacked arrangements of devices
    • H01L2225/0651Wire or wire-like electrical connections from device to substrate
    • HELECTRICITY
    • H01ELECTRIC ELEMENTS
    • H01LSEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
    • H01L25/00Assemblies consisting of a plurality of individual semiconductor or other solid state devices ; Multistep manufacturing processes thereof
    • H01L25/03Assemblies consisting of a plurality of individual semiconductor or other solid state devices ; Multistep manufacturing processes thereof all the devices being of a type provided for in the same subgroup of groups H01L27/00 - H01L33/00, or in a single subclass of H10K, H10N, e.g. assemblies of rectifier diodes
    • H01L25/04Assemblies consisting of a plurality of individual semiconductor or other solid state devices ; Multistep manufacturing processes thereof all the devices being of a type provided for in the same subgroup of groups H01L27/00 - H01L33/00, or in a single subclass of H10K, H10N, e.g. assemblies of rectifier diodes the devices not having separate containers
    • H01L25/065Assemblies consisting of a plurality of individual semiconductor or other solid state devices ; Multistep manufacturing processes thereof all the devices being of a type provided for in the same subgroup of groups H01L27/00 - H01L33/00, or in a single subclass of H10K, H10N, e.g. assemblies of rectifier diodes the devices not having separate containers the devices being of a type provided for in group H01L27/00
    • H01L25/0657Stacked arrangements of devices

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Synchronisation In Digital Transmission Systems (AREA)
  • Dram (AREA)
  • Memory System (AREA)
  • Manipulation Of Pulses (AREA)

Abstract

【課題】システムは、メモリコントローラおよび直列接続されている複数の半導体デバイスを備える。各デバイスはデータを格納する。コントローラは、デバイスの動作を同期させるクロックを供給する。
【解決手段】各デバイスは、イネーブル信号によって選択的にイネーブルまたはディセーブルされるPLLを備える。選択デバイスのPLLはイネーブル信号によってイネーブルされ、他のデバイスはディセーブルされる。イネーブルされたPLLは、90°の倍数の位相シフトで複数の再生クロックを供給する。データ転送は、再生クロックのうちの1つのクロックと同期する。ディセーブルされたPLLのデバイス内で、データ転送は入力クロックと同期する。イネーブルおよびディセーブルされたPLLにより、各デバイスはソース同期クロッキングおよび共通同期クロッキングを行う。最後のデバイスのデバイス識別子の最下位ビットがクロック整列を決定する。
【選択図】図9

Description

関連出願の相互参照
本出願は、2007年12月14日に出願した米国仮特許出願第61/013,784号、2008年1月9日に出願した米国仮特許出願第61/019,907号、2008年3月26日に出願した米国仮特許出願第61/039,605号、2008年7月4日に出願した米国特許出願第12/168,091号、および2008年11月28日に出願した米国特許出願第12/325,074号からの優先権の利益を主張するものである。
本発明は、デバイスに関するものである。より具体的には、本発明は、複数のデバイスを有するシステムおよびそのようなシステム内で使用するクロックを再生するための方法に関するものである。また、本発明は、半導体デバイスにも関係するものである。より具体的には、本発明は、複数の半導体デバイスを有するシステムならびにそのようなシステム内で使用するためのタイミングおよびクロッキング方法に関するものである。
電子機器は、例えば、メモリデバイスなどの半導体デバイスを使用する。メモリデバイスとしては、ランダムアクセスメモリ(RAM)、フラッシュメモリ(例えば、NANDフラッシュデバイス、NORフラッシュデバイス)、およびデータもしくは情報を格納するための他のタイプのメモリが挙げられる。
回路基板上のメモリシステムは、さまざまなアプリケーションの要件に合わせるために高密度と高速動作の両方を達成するように設計されている。高密度メモリシステムを回路基板上に実装するために使用できる2つの設計技術として、直列カスケード相互接続構成とマルチドロップバス相互接続構成がある。これらの設計技術では、多数のメモリデバイスを単一のメモリ制御デバイスに接続できるようにすることによって密度の問題を解決する。設計技術の1つは、複数のメモリデバイスがメモリコントローラに並列接続されているマルチドロップバス相互接続構成である。設計技術のもう1つは、複数のメモリデバイスの直列接続である。
メモリを備えるシステムでは、さまざまなクロッキング方法が使用されうる。共通ソースクロックを使用すると、クロック信号は、この配列構成の並列性により歪みを生じる可能性がある。その上、これは、いくつかのスキュー因子を有し、多数のデバイスがマルチドロップ方式で接続されると動作周波数範囲が制限され、高速アプリケーションでは使用できない。クロックの波形整形および再送を使用する、ソース同期クロッキングシステムでは、高い周波数動作範囲を利用することができ、共通同期クロックスキュー因子のいくつかを回避するが、システムの性能に重大な影響を及ぼさない他のスキュー因子が入り込む。
米国仮特許出願第61/013,784号明細書 米国仮特許出願第61/019,907号明細書 米国仮特許出願第61/039,605号明細書 米国特許出願第12/168,091号明細書 米国特許出願第12/325,074号明細書 国際公開第WO/2007/0109886号パンフレット 国際公開第WO/2007/0134444号パンフレット 国際公開第WO/2008/098342号パンフレット 国際公開第WO/2007/036048号パンフレット 米国特許出願第12/034,686号明細書 米国特許出願第2007/0076502A1号明細書 国際公開第WO/2008/067652号パンフレット 国際公開第WO/2008/022454号パンフレット 国際公開第WO/2008/067636号パンフレット 国際公開第WO/2008/067659号パンフレット 国際公開第WO/2008/098367号パンフレット 米国仮特許出願第60/902,003号明細書 国際公開第WO/2008/109981号パンフレット 国際公開第WO/2008/074126号パンフレット
「Designing High Data Rate Interfaces」、IEEE 2004 VLSI Circuits Symposium、2004年6月16日
本発明の一態様によれば、入力クロック信号の遷移によって画定される期間を有するデータを転送するためのデバイスが提供される。デバイスは、クロック回路および同期回路を備える。クロック回路は、入力クロック信号に応答して複数の再生クロック信号を供給するように構成されている。複数の再生クロック信号の位相は、互いにデータに対し異なるシフトを生じる。クロック回路は、複数の再生クロック信号のうちの少なくとも1つの信号に応答して1つの出力クロック信号を生成するようにも構成されている。同期回路は、データの転送を再生クロック信号のうちの少なくとも1つの信号に同期させる。出力クロック信号の遷移は、データの期間に発生する。
例えば、複数の再生クロック信号の位相のそれぞれは、互いに対しシフトされた位相である。異なるシフト量の位相を有する再生クロック信号に応答して、クロック回路は、柔軟な位相シフト(flexible phase shifts)を有する出力クロック信号を生成することができる。
クロック回路は、入力クロック信号に応答して複数の再生クロック信号を供給するための位相同期ループ(PLL)と、複数の再生クロック信号のうちの少なくとも1つの信号に応答して1つの出力クロック信号を生成するためのクロック出力回路とを備えることができる。
例えば、PLLは、第1および第2の論理状態を有する制御信号に応答して選択的にイネーブルまたはディセーブルして、PLLをそれぞれイネーブルし、ディセーブルするように構成されている。PLLがイネーブルされている場合、PLLは、入力クロック信号に応答して複数の再生クロック信号を生成する。クロック出力回路は、複数の再生クロック信号のうちの少なくとも1つの信号に応答して1つの出力クロック信号を生成する。同期回路は、データの転送を再生クロック信号のうちの少なくとも1つの信号に同期させる。PLLがディセーブルされている場合、同期回路は、データの転送を入力クロック信号に同期させる。
有利には、PLLは、データとともに90°の倍数である位相シフトを持つ再生クロック信号を出力するようにさらに構成される。
例えば、デバイスは、1つのクロック信号とその相補クロック信号とを含む入力クロック信号を受け取る。入力クロック信号に応答して、クロック回路は、内部クロック信号を供給する。PLLは、PLLがイネーブルされたときに内部クロック信号に応答して複数の再生クロック信号を生成する。PLLがディセーブルされたとき、同期回路は、データの転送を内部クロック信号に同期させる。
デバイスは、デバイスに関連する識別情報を保持するためのホルダーをさらに備えることができ、その識別情報はデバイスを識別するために使用される。ホルダー内に保持されている識別情報に応答して、制御信号を送ることができる。制御信号は、論理Highおよび論理Lowの一方であり、これにより、PLLをそれぞれイネーブル、ディセーブルする。
デバイスは、この識別情報に基づいてデバイスの識別に応答してメモリにアクセスするためのアクセス回路をさらに備えることができる。
本発明の他の態様によれば、データを第1のデバイスから第2のデバイスに転送するための装置が提供され、データはクロック信号の遷移によって画定される期間を有する。第1のデバイスは、第1のクロック回路と第1の同期回路とを備える。第1のクロック回路は、第1の入力クロック信号に応答して複数の第1の再生クロック信号を供給し、複数の第1の再生クロック信号の位相が互いにデータに対し異なるシフトを生じ、複数の第1の再生クロック信号のうちの少なくとも1つの信号に応答して第1の出力クロック信号を生成するように構成される。第1の同期回路は、データの転送を複数の第1の再生クロック信号のうちの少なくとも1つの信号に同期させ、第1の出力クロック信号の遷移はデータの期間に発生する。第2のデバイスは、第1の出力クロック信号から導出された第2の入力クロック信号に応答して複数の第2の再生クロック信号を供給し、複数の第2の再生クロック信号の位相が互いにデータに対し異なるシフトを生じるように構成された第2のクロック回路と、第2の入力クロックに応答して第1のデバイスから転送されたデータを受け取るための第1のデータ入力回路とを備える。
例えば、第1のクロック回路は、第1の入力クロック信号に応答して複数の第1の再生クロック信号を供給するための第1の位相同期ループ(PLL)と、複数の第1の再生クロック信号のうちの少なくとも1つの信号に応答して第1の出力クロック信号を生成するための第1のクロック出力回路とを備える。第2のクロック回路は、第2の入力クロック信号に応答して複数の第2の再生クロック信号を供給するための第2のPLLを備える。
第1および第2のPLLは、それぞれ第1および第2の制御信号に応答して選択的にイネーブルまたはディセーブルされるように構成することができる。第1のPLLがイネーブルされた場合、第1のPLLは、第1の入力クロック信号に応答して、複数の第1の再生クロック信号を生成する。第2のPLLがイネーブルされた場合、第2のPLLは、第2の入力クロック信号に応答して、複数の第2の再生クロック信号を生成する。
本発明の他の態様によれば、提供されるシステムは、コントローラと、直列接続された複数のデバイスとを備え、その動作はクロック信号と同期する。これらのデバイスのそれぞれは、選択的にイネーブルされるように構成され、イネーブルされている間に入力クロック信号に応答して複数の再生クロック信号を供給する位相同期ループ(PLL)であって、再生クロック信号が入力クロック信号の異なる量で位相シフトされたバージョンの信号である、位相同期ループ(PLL)と、データの転送を再生クロック信号のうちの少なくとも1つの信号に同期させるための同期回路とを備える。
本発明の他の態様によれば、複数のデバイスで使用する方法が提供され、これら複数のデバイスのそれぞれは位相同期ループ(PLL)を備え、入力クロック信号に応答して一方のデバイスが他方のデバイスにデータを転送する。この方法は、制御信号に応答してPLLを選択的にイネーブルし、イネーブルされたPLLは入力クロック信号に応答して複数の再生クロック信号を出力し、再生クロック信号は入力クロック信号の異なる量で位相シフトされたバージョンの信号であるステップを含む。
本発明の他の態様によれば、クロック信号に従ってクロック同期するデータを転送するための方法であって、データはクロック信号の遷移によって画定される期間を有する、方法が提供され、この方法は、位相同期ループ(PLL)を選択的にイネーブルまたはディセーブルするステップと、PLLがイネーブルされている間に入力クロック信号に応答して再生クロック信号を供給するステップであって、再生クロック信号は入力クロック信号の位相シフトされたバージョンの信号であるステップと、データの転送を再生クロック信号に同期させるステップであって、再生クロック信号のクロック遷移はデータの期間に発生するステップとを含む。
本発明の他の態様によれば、データを第1のデバイスから第2のデバイスに転送するための方法であって、データはクロック信号に従ってクロック同期され、またデータはクロック信号の遷移によって画定される期間を有する、方法が提供され、この方法は、第1の入力クロック信号に応答して再生クロック信号を供給するステップであって、再生クロック信号は第1の入力クロック信号の位相シフトされたバージョンの信号であるステップと、データの転送を再生クロック信号に同期させるステップであって、再生クロック信号のクロック遷移はデータの期間に発生し、再生クロック信号は出力クロック信号として供給されるステップと、第1のデバイスからの出力クロック信号に応答して再生クロック信号を供給するステップであって、再生クロック信号は第1のデバイスからの出力クロック信号の位相シフトされたバージョンの信号であるステップと、第1のデバイスから転送されたデータを受け取るステップとを含む。
本発明の他の態様によれば、クロック信号に従ってクロック同期するデータを転送するための方法であって、データはクロック信号の遷移によって画定される期間を有する、方法が提供される。この方法は、位相同期ループ(PLL)を選択的にイネーブルまたはディセーブルするステップと、PLLがイネーブルされている間に入力クロック信号に応答して複数の再生クロック信号を供給するステップであって、再生クロック信号は入力クロック信号の異なる量で位相シフトされたバージョンの信号であるステップと、データの転送を再生クロック信号のうちの少なくとも1つの信号に同期させるステップとを含む。
本発明の他の態様によれば、データを第1のデバイスから第2のデバイスに転送するための方法であって、データはクロック信号に従ってクロック同期され、またデータはクロック信号の遷移によって画定される期間を有する、方法が提供される。第1のデバイスにおいて、この方法は、第1の入力クロック信号に応答して複数の再生クロック信号を供給するステップであって、再生クロック信号は第1の入力クロック信号の異なる量で位相シフトされたバージョンの信号であるステップと、データの転送を複数の再生クロック信号のうちの少なくとも1つの信号に同期させるステップであって、再生クロック信号のクロック遷移はデータの期間に発生し、再生クロック信号は出力クロック信号として供給されるステップとを含む。第2のデバイスにおいて、この方法は、第1のデバイスからの出力クロック信号に応答して複数の再生クロック信号を供給するステップであって、再生クロック信号は第1のデバイスからの出力クロック信号の異なる量で位相シフトされたバージョンの信号であるステップと、第1のデバイスから転送されたデータを受け取るステップとを含む。
本発明の一態様によれば、ソース同期クロッキングを採用する直列接続された複数のデバイスと通信するための装置が提供され、この装置は、直列接続されたデバイスの個数に関係する個数情報を検出するための情報検出器と、検出された個数情報に応答してクロック信号を生成し、生成されたクロック信号は装置とデバイスとの間の通信を同期させるために使用される、クロック生成器とを備える。
例えば、情報検出器は、複数の直列接続されたデバイスのうちの1つに関連付けられているデバイス識別子(ID)を検出し、検出されたデバイスIDを検出された個数情報としてクロック生成器に供給するための識別子検出器を備える。識別子検出器は、デバイスIDに含まれる複数のビットのうちの1つに関する情報を検出するためのビット情報検出器を備えることができる。
ビット情報検出器は、デバイスIDの最下位ビット(LSB)が「1」であるか「0」であるかを判定し、判定結果を検出された個数情報をとして供給し、整列クロック信号はこの判定結果に応答して生成されるビット数判定器を備えることができる。
装置は、ID割り当ての完了のステータスを示す信号を受け取り、そのID割り当てが完了しているかどうかを判定し、登録済みデバイスIDのLSBを判定するためにID割り当て完了のステータスをビット判定器に供給するためのモード検出器をさらに備えることができる。
例えば、クロック生成器は、デバイス識別子割り当てが完了しているか、または進行中であることを検出した結果に応答してデータとともにエッジ整列または中央整列のいずれかのクロック信号を生成し、装置はデバイスに入力されたデータおよびデバイスから出力されたデータを制御するためのストローブ信号を供給し、データはクロック信号と同期して伝送される。
本発明の他の態様によれば、ソース同期クロッキングを採用する直列接続された複数のデバイスの通信を行うための方法が提供され、この方法は、直列接続されたデバイスの個数に関係する個数情報を検出するステップと、検出された個数情報に応答してクロック信号を生成するステップであって、生成されたクロック信号はデバイスとの通信を同期させるために使用されるステップとを含む。
この方法は、直列接続されたデバイスのそれぞれに関連付けられている一意的なデバイス識別子(ID)を割り当てるステップであって、デバイスの割り当てられたIDは連続的であるステップと、複数の直列接続されたデバイスのうちの1つに関連付けられているデバイスIDを検出するステップと、検出されたデバイスIDを検出された個数情報として供給するステップとを含む。デバイスIDを検出するステップは、デバイスIDの完了の検出に応答してデバイスIDに含まれる複数のビットのうちの1つのビットに関する情報を検出するステップを含むことができる。
本発明の他の態様によれば、提供されるシステムは、ソース同期クロッキングを使用する複数の直列接続されたデバイスと、直列接続されたデバイスと通信するように構成されたコントローラを備え、コントローラは直列接続されたデバイスの個数に関係する個数情報を検出するための情報検出器と、検出された個数情報に応答してクロック信号を生成し、生成されたクロック信号はコントローラとデバイスとの間の通信を同期させるために使用される、クロック生成器とを備える。
本発明の一実施形態によれば、メモリコントローラおよび少なくとも1つの半導体デバイスを備えるシステムが提供される。
本発明の一実施形態によれば、選択的にイネーブルまたはディセーブルされるPLLを備えるデバイスが提供される。PLLは、イネーブルされた場合に、入力クロック信号およびその相補信号によって画定される基準クロック信号に対して90°、180°、270°、および360°だけ位相シフトされた複数の再生クロック信号を供給する。PLLは、選択的にイネーブルまたはディセーブルされる。複数の再生クロック信号の組合せのうちの1つに応答して、データが転送される。ディセーブルされた場合、クロックがPLLによって再生されず、基準信号に応答して、データが転送される。
本発明の他の実施形態によれば、メモリコントローラとメモリコントローラに直列接続された複数のメモリデバイスとを備えるシステムが提供される。複数のメモリデバイスは、複素のグループに分割される。メモリコントローラは、デバイスのオペレーションを同期させるためのクロック信号を供給する。1つのグループに属すデバイスは、ソース同期クロック構造および共通同期クロック構造によってもたらされるクロック信号によってクロック同期される。これらのデバイスのそれぞれは、イネーブル信号によって選択的にイネーブルされるPLLを備える。PLLは、イネーブルされると、データとともに90°の倍数だけ位相シフトされた複数の再生クロック信号を出力する。PLLがイネーブルされたデバイスのそれぞれは、再生クロック信号で動作する。PLLがディセーブルされた場合、そのデバイスは、入力クロック信号で動作する。ディセーブルされたPLLのデバイスは、消費電力を低減する。イネーブルされたPLLによって供給される再生クロック信号に応答して、ソース同期クロッキングのために直列接続の次のデバイスに出力クロック信号が供給される。複数のチップパッケージによって、複数のグループのデバイスが構造化される。クロック位相シフトによって、伝送されるべきデータとともに中央-エッジクロックがもたらされ、その結果、ある種のスキューは性能低下因子とはみなされない。
他の実施形態によれば、フラッシュメモリの柔軟なオペレーションが可能な半導体メモリデバイス、例えば、NANDフラッシュデバイスが提供される。
他の実施形態によれば、メモリコントローラとメモリコントローラに直列接続された複数のメモリデバイスとを備えるシステムが提供される。システムは、ソース同期クロック構造で動作する。メモリコントローラは、入力発振信号から90°、180°、270°、および360°の位相シフトを発生するPLL(位相同期ループ)を備える。これらの位相シフト信号のうちのいくつかは、クロック整列に使用される。これらのデバイスには、一意的な連続する識別子(ID)番号が割り当てられる。最後のデバイスのID番号の最下位ビットが、クロック整列の決定に使用され、データを含むエッジまたは中央整列クロックがメモリコントローラによって生成される。
一実施形態によれば、コントローラは、データとともに中央整列またはエッジ整列のクロックを供給する。直列接続されたデバイスのそれぞれは、データとともにエッジ整列または中央整列のクロックを供給することができる。供給されるクロックは、次のデバイスに転送される。
例えば、メモリデバイスは、データを格納するためにメモリまたはデータストレージ要素を備える。メモリとしては、ランダムアクセスメモリ(RAM)、フラッシュメモリ(例えば、NANDフラッシュデバイス、NORフラッシュデバイス)、およびデータもしくは情報を格納するための他のタイプのメモリが挙げられる。
本発明の他の態様および特徴は、本発明の特定の実施形態の以下の説明を検討した後、当業者に明らかになるであろう。
そこで、本発明の実施形態が以下で付属の図面を参照しつつ説明される。
複数のメモリデバイスがマルチドロップ方式で接続されている従来技術のシステムのブロック図である。 本発明の実施形態が適用可能であるフラッシュメモリを備えるグローバルシステムのブロック図である。 本発明の実施形態が適用可能である直列接続されている複数のメモリデバイスの配列構成のブロック図である。 図3に示されているデバイスのオペレーションを示す流れ図である。 デバイス識別子(ID)割り当てのオペレーションを示す図3の配列構成のブロック図である。 通常モードのオペレーションを示す図3の配列構成のブロック図である。 図3に示されている配列構成で使用するための例示的なコマンドフォーマットのブロック図である。 シングルデータレート(SDR)オペレーションのタイミング図である。 ダブルデータレート(DDR)オペレーションのタイミング図である。 共通同期クロック構造とともに、直列接続されている複数のメモリデバイスを有するシステムの一実施例のブロック図である。 共通同期クロック構造とともに、直列接続されている複数のメモリデバイスを有するシステムの他の実施例のブロック図である。 図8Aおよび8Bに示されている複数のメモリデバイスのうちの1つのメモリデバイスのブロック図である。 メモリコントローラと直列接続されている複数のメモリデバイスとを有するシステムの一実施例のブロック図である。 メモリコントローラと直列接続されている複数のメモリデバイスとを有するシステムの他の実施例のブロック図である。 図10Aおよび10Bに示されている2つのデバイスのブロック図である。 共通クロックソースを有する共通同期クロック構造を備える2つのデバイスのブロック図である。 ソース同期クロック構造とともに、直列接続されている複数のメモリデバイスを有するシステムのブロック図である。 図13に示されている複数のメモリデバイスのうちの1つのメモリデバイスのブロック図である。 ソース同期クロック構造とともに、直列接続されている複数のメモリデバイスとメモリコントローラとを有するシステムのブロック図である。 図15に示されている2つのデバイスのブロック図である。 ソース同期クロック構造を備える2つのデバイスのブロック図である。 図15に示されている直列接続されている複数のデバイスのうちの1つのデバイスのブロック図である。 図18Aに示されているデバイスのメモリコア回路を備える制御回路のブロック図である。 図18Aに示されているデバイスのクロックI/O回路のブロック図である。 図18Aに示されているデバイスのデータI/O回路のブロック図である。 図18Aに示されているデバイスのストローブI/O回路のブロック図である。 図18A〜18Eに示されているようなソース同期クロック構造に対するタイミング図である。 ソース同期クロック構造および共通同期クロック構造とともに、直列接続されている複数のメモリデバイスとメモリコントローラとを有するシステムのブロック図である。 ソース同期クロック構造および共通同期クロック構造とともに、直列接続されている複数のメモリデバイスとメモリコントローラとを有する他のシステムのブロック図である。 ワイヤボンディングを使用するMCP(マルチチップパッケージ)構造の一実施例の断面図である。 シリコンスルーホールを使用するMCP構造の他の実施例の断面図である。 MCPデバイスに対するハイブリッド同期クロック構造を備えるシステムのブロック図である。 MCPデバイスに対する代替(alternate)ハイブリッド同期クロック構造を備える他のシステムのブロック図である。 MCPデバイスに対するさらなる代替ハイブリッド同期クロック構造を備える他のシステムのブロック図である。 中央整列クロックを受け取って入力データを取り込み、中央整列ソース同期クロック出力を適宜供給する1つのメモリデバイスのブロック図である。 図24Aに示されているデバイスのクロックI/O回路のブロック図である。 図24Aに示されているデバイスのデータI/O回路のブロック図である。 図24Aに示されているデバイスのストローブI/O回路のブロック図である。 ディセーブルされた位相同期ループ(PLL)として動作している図24A〜24Dに示されているデバイスのタイミング図である。 イネーブルされたPLLとして動作している図24A〜24Dに示されているデバイスのタイミング図である。 ソース同期クロック構造および共通同期クロック構造に基づくMCPデバイスに対する代替(alternate)クロック構造を備えるシステムのブロック図である。 コントローラと第1のメモリデバイスとのソース同期信号の間の関係を示すタイミング図である。 エッジ整列クロックまたは中央整列クロックのいずれかを使用して入力データを受け取ることができる1つのメモリデバイスのブロック図である。 図29Aに示されているデバイスのクロックI/O回路のブロック図である。 図29Aに示されているデバイスのデータI/O回路のブロック図である。 図29Aに示されているデバイスのストローブI/O回路のブロック図である。 イネーブルされたPLLとして動作している図29A〜29Dに示されているデバイスのタイミング図である。 ディセーブルされたPLLとして動作している図29A〜29Dに示されているデバイスの図に対するタイミング図である。 ID割り当て前のソース同期クロック構造を備える複数のデバイスを有する例示的なシステムのブロック図である。 ID割り当て後の複数のデバイスを有する例示的なシステムのブロック図である。 ID割り当て後の複数のデバイスを有する他の例示的なシステムのブロック図である。 ソース同期クロックとともに使用する1つのメモリデバイスのブロック図である。 図34Aに示されているメモリコア回路を備える制御回路のブロック図である。 図34Aに示されているクロックI/O回路のブロック図である。 図34Aに示されているデータI/O回路のブロック図である。 図34Aに示されているストローブI/O回路のブロック図である。 イネーブルされたPLLを伴う図34A〜34Eに示されているデバイスのタイミング図である。 ディセーブルされたPLLを伴う図34A〜34Eに示されているデバイスのタイミング図である。 図34Aに示されているメモリコア回路を備える制御回路の他の実施例のブロック図である。 図34Aに示されているクロックI/O回路の他の実施例のブロック図である。 イネーブルされたPLLを伴う図34A、34D〜34Eおよび36A、36Bに示されているデバイスのタイミング図である。 ディセーブルされたPLLを伴う図34A、34D〜34Eおよび36A、36Bに示されているデバイスのタイミング図である。 ソース同期クロッキング方法で、直列接続されている複数のデバイスおよびコントローラを有するシステムの他の実施例を示す図である。 それぞれのデバイスがPLLを備える、直列接続されている複数のデバイスを備えるソース同期クロッキングシステムの一実施例を示す図である。 代替(alternate)PLLオンコントロールを有する直列接続されたデバイスにおける完全ソース同期クロッキング方法の一実施例を示す図である。 代替PLLオンコントロールを有する直列接続されたデバイスにおける完全ソース同期クロッキング方法の他の実施例を示す図である。 直列接続された複数のデバイスのうちの最後のデバイスのID番号によるクロック整列決定の一実施例を示す流れ図である。 直列接続された複数のデバイスのうちの最後のデバイスのID番号によるクロック整列決定の他の実施例を示す流れ図である。 例示的なパワーアップシーケンスにおけるID生成タイミングを示す図である。 柔軟なデータ整列をサポートする本発明の一実施形態による例示的なメモリコントローラ論理構成を示す図である。 柔軟なデータ整列をサポートする本発明の一実施形態による例示的なメモリコントローラ論理構成を示す図である。 図43Aに示されているメモリコントローラに対する信号のタイミング図である。 図43Bに示されているメモリコントローラに対する信号のタイミング図である。 例示的な一実施形態によるID生成後のメモリコントローラからのクロック生成のタイミング図である。 例示的な一実施形態によるID生成後およびIDの最下位ビット(LSB)=0であるメモリコントローラからのクロック生成のタイミング図である。 例示的な一実施形態によるID生成後およびIDのLSB=1であるメモリコントローラからのクロック生成のタイミング図である。 柔軟なデータ整列をサポートする本発明の一実施形態によるメモリコントローラ論理構成の他の実施例を示す図である。 柔軟なデータ整列をサポートする本発明の一実施形態によるメモリコントローラ論理構成の他の実施例を示す図である。 例示的な一実施形態によるID生成後のメモリコントローラからのクロック生成のタイミング図である。 例示的な一実施形態によるID生成後およびIDのLSB=0であるメモリコントローラからのクロック生成のタイミング図である。 例示的な一実施形態によるID生成後およびIDのLSB=1であるメモリコントローラからのクロック生成のタイミング図である。
本発明の例示的な実施形態の以下の詳細な説明では、本発明の実施形態の一部をなし、本発明を実施できる特定の例示的な実施形態が図で示されている、添付の図面を参照する。これらの実施形態は、当業者が本発明を実施できるように十分に詳しく説明されているが、他の実施形態を利用できること、また本発明の範囲から逸脱することなく論理的変更、機械的変更、電気的変更、および他の変更を行えることも理解されるであろう。したがって、以下の詳細な説明は、限定的な意味で解釈すべきではなく、本発明の範囲は、添付の特許請求の範囲により画定される。
上述のように、マルチドロップおよび直列接続構成は、密度問題を解決するための知られている設計技術である。
図1は、複数のメモリデバイスがマルチドロップ方式で接続されているシステムを示している。このシステムは、並列クロック分配に適合するように共通同期クロック構造を実装する。図示されているシステムでは、メモリコントローラ110は、Nを1より大きい整数とする、複数の(N個の)メモリデバイス120-1、120-2、...120-Nと通信する。メモリコントローラ110およびN個のメモリデバイスは、nビットのデータ線131とmビットの制御線133を通じて接続される。データ転送および制御信号は、メモリコントローラ110とN個のメモリデバイス120-1〜120-Nに接続された共通クロック線135上の共通クロックと同期する。同期クロックは、クロックソース140によって共通クロック線135に供給される。バスが並列性を有しているため、クロック信号は、負荷が大きく、大きく歪む。
複数のメモリデバイスの直列接続の一実施例は、「RamLink」であり、これは、1996年のIEEE標準となった。RamLinkは、実際には、相互接続の2つの代替方法を規定している。方法の1つは、直列接続されたデバイスの間をポイントツーポイントで通信する直列接続デバイスからなるRingLinkであり、これは拡張性が高いが、待ち時間が長い。他の方法は、少数のデバイスのマルチドロップ相互接続からなるSyncLinkである。
ハイブリッド型のRamLink構成は、IEEE標準の一部伴っている。RamLink構成に基づくメモリシステムは、プロセッサもしくはメモリコントローラおよび1つまたは複数のメモリモジュールからなる。メモリコントローラは、典型的には、それ自体プロセッサ内に組み込まれるか、またはプロセッサの随伴チップセットの一部として製造される。それぞれのメモリモジュールは、1つのリンク入力と1つのリンク出力とを有するスレーブインターフェースを有する。メモリモジュールは、コンポーネント間で単一指向性リンクを持つRingLinkと称されるRamLink信号伝達トポロジーの形態に配列される。それぞれのモジュール上の制御インターフェースは、スレーブインターフェースをメモリデバイス(RAM)にインターフェースさせる。このシステムでは、スレーブインターフェースとメモリデバイスとの間に、SyncLinkと称するもう1つのRamLink信号伝達トポロジーが使用される。データは、RingLinkにそって循環するパケットとして、プロセッサとモジュールとの間で転送される。プロセッサまたはメモリコントローラは、すべての要求バケットを生成し、スレーブ応答パケットの返却をスケジュールする役割を有する。
ハイブリッド型RamLink構成は、モジュールレベルのコンポーネント接続程度の速さでしか動作しえない。これは、マルチドロップバスであるため、単一モジュール内のSyncLink接続によって周波数の制限が行われ、これは図1に図示されているのと同じ方法である。RingLinkスレーブインターフェース回路において、ソース同期ストローブを使用して、受信データ信号のクロック同期処理を行う。つまり、受信データ信号に付随するストローブ信号「strobeIn」は、受信データをサンプリングするために使用される。回路側では、位相同期ループ(PLL)を使用して基準クロック信号から安定した局所的クロック信号を生成する。
本発明の一実施形態によれば、コントローラおよび接続されている複数のデバイスを有するシステムが提供され、これらのデバイスはクロック同期されている。直列接続された半導体デバイスを有する例示的なシステムについて説明する。
図2は、フラッシュメモリを備えるグローバルシステムを示している。図2を参照すると、メモリシステム140は、メモリコントローラ144を介してメインシステムまたはプロセッサ(ホストシステム)142と通信することがわかる。メモリシステム140は、直列接続された、または系列接続された複数のメモリデバイスを備える。メモリデバイスの例として、フラッシュデバイスが挙げられる。
図3は、直列接続された複数のメモリデバイスの配列構成を示している。図3を参照すると、この配列構成は、Nを整数とする、直列接続されたN個のメモリデバイス145-1、145-2、145-3、...および145-Nを含むことがわかる。直列接続されたメモリデバイス140-1〜140-Nは、図2のメモリシステム140に対応する。図2のメモリコントローラ144に対応するメモリコントローラ(図示されていない)は、データおよび情報の信号からなるグループをこの配列構成のメモリデバイスに送る。処理されるデータまたは情報は、第1のデバイス145-1のデータ入力Dnに送られ、直列接続された配列構成のデバイスを通して伝搬される。一実装において、最後のデバイス145-Nのデータ出力Qnは、その中にある伝搬されたデータまたは情報を使用するために他のデバイスまたはシステム(図示されていない)に接続される。他の実装では、最後のデバイス145-Nの出力は、メモリコントローラに接続されており、これにより、メモリコントローラは、最後のデバイス145-Nから返されたデータを使用することができる。
この配列構成のデバイス145-1〜145-Nのオペレーションは、図4に示されている。図4に示されている配列構成のデバイスは、図4に示されているように初期モードおよび通常モードで動作する。初期モードでは、デバイスは、デバイスアドレス(DA)またはデバイス識別子(ID)番号が割り当てられる。これ以降、通常モードでは、ID番号によって指定されたデバイスは、コマンドによって指定されたオペレーション(例えば、データライト、データリード)を実行する。
図5Aは、ID割り当てを示す図3の配列構成を示している。図3、4、および5Aを参照すると、初期モードでは、メモリコントローラは、初期ID(=0)を第1のデバイス145-1に供給することがわかる。この配列構成のメモリデバイス145-1、145-2、145-3、...、145-Nのそれぞれは、入力ID、IDiをそのIDレジスタ内に格納し、加算(つまり、IDi+1)を実行して、次のデバイスに対する出力ID、IDoを得る。例示されている実施例において、デバイス145-1、145-2、145-3、...、145-Nは連続する数「0」、「1」、「2」、...であるIDを割り当てられ、「N」は2進数「000」、「0001」、「0010」、...、および「...」でそれぞれ表される。それぞれのデバイスは、そのMSB(最上位ビット)を先頭に、そのLSB(最下位ビット)を最後に持ってくる。他の実装では、IDは、LSBを先頭に、MSBを最後に変更することができる。また、IDは、他の値(例えば、「1」)からの連続する数とすることができる。さらに、IDは、最大値から減分することができる。直列接続された複数のメモリデバイスにおけるID割り当ての例は、国際公開第WO/2007/0109886号(2007年10月4日)および国際公開第WO/2007/0134444(2007年11月29日)に取りあげられている。
図5Bは、通常モードオペレーションを示す図3の配列構成を示している。図3、4、および5Bを参照すると、通常モードでは、メモリコントローラは、特定のデバイスID番号、オペレーション命令、およびその他のものを含む制御情報(CI)をコマンドとして発行することがわかる。それぞれのメモリデバイス内に備えられているデバイスコントローラは、入力されたIDiとIDレジスタにおいて割り当てられているIDとを比較してIDマッチ判定を実行する。IDがマッチする場合、デバイスコントローラは、CIに含まれるコマンドを実行して、そのデバイスのメモリにアクセスする。コマンドのオペレーションの例としてメモリアクセスおよびデータ処理が挙げられる。それぞれのコマンドは、ID番号(つまり、デバイスアドレス)およびコマンドOPコード(これ以降、単に「OPコード」と称する)を含み、また、アドレス情報および/またはデータを含みうる。入力IDと登録IDとの間にマッチがない場合、デバイスはCIを出力コマンドCOとして次のデバイスに転送する。転送されたCOをCIとして受け取ったことに応答して、次のデバイスが、前のデバイスと類似のオペレーションを実行する。
図6は、図3に示されているように直列接続されたメモリデバイスで使用するための例示的なコマンドフォーマットの略図である。図6を参照すると、第1のコマンドフォーマット147-1は、ID番号およびOPコードを含んでいることがわかる。ID番号は、選択されたメモリデバイスを識別するために使用され、OPコードフィールドは、選択されたデバイスによって実行されるOPコードを格納する。第1のコマンドフォーマット147-1のコマンドは、例えば、レジスタ値を読み出すためのOPコードを含むコマンドに使用されうる。第2のコマンドフォーマット147-2は、ID番号、OPコードおよびデータを含む。第2のコマンドフォーマット147-2のコマンドは、例えば、データをレジスタに書き込むためのOPコードを含むコマンドに使用されうる。第3のコマンドフォーマット147-3は、ID番号、OPコード、および追加のアドレスを含む。追加のアドレスは、例えば、メモリセル内のロケーションをアドレッシングするための行および/または列アドレスを含みうる。第3のコマンドフォーマット147-3のコマンドは、例えば、選択されたメモリデバイスのメモリセルからデータを読み出すためのOPコードを含むコマンドに使用されうる。第4のコマンドフォーマット147-4は、ID番号、OPコード、追加のアドレス、およびデータを含む。第4のコマンドフォーマット147-4のコマンドは、例えば、選択されたメモリデバイスのメモリセルにデータを書き込むためのOPコードを含むコマンドに使用されうる。4つの例示的なコマンドフォーマット147-1、147-2、147-3、147-4はすべて、アドレッシングのためにID番号から始まることに留意されたい。前記の説明から、本明細書で使用されているような「コマンド」という用語は、コマンドがID番号、OPコード、追加のアドレス、データ、または直列接続されているメモリデバイスの配列構成の制御に関係する他の情報を含みうるので、コマンドOPコードを指すだけでないことは理解されるであろう。コマンドフォーマットの例は、国際公開第WO/2008/098342号(2008年8月21日)で開示されている。コマンドおよびオペレーションの例は、国際公開第WO/2007/036048号(2007年4月5日)および2008年2月21日に出願した「Serial Data Flow Control In Multiple Independent Serial Port」という表題の米国特許出願第12/034,686号において開示されている。
大きな記憶空間(または大容量記憶システム)を必要とするアプリケーション用に、複数のフラッシュメモリデバイスを使用するフラッシュメモリシステムを実装することができる。メモリコントローラは、フラッシュメモリデバイスのそれぞれにアクセスすることができ、フラッシュメモリを一度に1つだけ選択することができる。
例えば、HDDの代替となるUSBフラッシュドライブ、フラッシュメモリカード、およびソリッドステートドライブ(SSD)などのフラッシュメモリシステムで実装される多数のフラッシュデバイス上の信号品位を改善するために、直列接続NANDフラッシュメモリを実装することができる。直列接続されたNANDフラッシュメモリは、先進的であり、ポイントツーポイントのシリアルデバイス接続を使用することで高性能のフラッシュデバイスを実現する。
データは、クロック信号に応答して転送されうるか、または取り込まれうる。このオペレーションは、クロック信号の立ち上がりエッジおよび/または立ち下がりエッジに応じて実行することができる。メモリデバイスは、それぞれ図7Aおよび7Bに示されているようにシングルデータレート(SDR)オペレーションおよびダブルデータレート(DDR)オペレーションを実行することができる。また、メモリデバイスは、そのクロックサイクルにおいて2回より多く動作することが可能である。
図8Aは、並列クロック分配トポロジーに適合する共通同期クロック構造とともに、直列接続されている複数のメモリデバイスを有するシステムを示している。図8Aを参照すると、メモリコントローラ150は、Nを1より大きい整数とする、複数の(N個の)メモリデバイス152-1、152-2、...152-Nと通信することがわかる。メモリコントローラ150は第1のメモリデバイス152-1に接続されており、これにより、メモリコントローラ150によって供給される共通同期クロック信号CLKcsyc1に応答して残りのメモリデバイス152-2〜152-Nを通じて伝搬する制御および/またはデータに関する情報を送る。伝搬される情報は、最後のデバイス152-Nから他のデバイスまたは装置(図示されていない)に供給され、それによってさらなる処理を受ける。
図8Bは、システムがリング構造を形成している、共通同期クロック構造とともに、直列接続されている複数のメモリデバイスを有する他のシステムを示している。図示されている例示的なシステムにおいて、メモリコントローラ160は、複数の(N個の)メモリデバイス162-1、162-2、...160-Nと通信する。メモリコントローラ160は第1のメモリデバイス162-1に接続されており、これにより、メモリコントローラ160によって供給される共通同期クロック信号CLKcsyc2に応答して残りのメモリデバイス162-2〜162-Nを通じて伝搬する制御および/またはデータに関する情報を送る。このシステムでは、最後の(N番目の)メモリデバイス162-Nは、伝搬情報をメモリコントローラ160にフィードバックし、これにより、システムはリング型接続を形成する。必要ならば、伝搬される制御信号は、メモリコントローラ160に返される。
図9は、図8Aおよび8Bに示されている複数のメモリデバイスのうちの1つのメモリデバイスの詳細を示している。図8Aおよび8Bに示されているメモリデバイスのそれぞれは、同じ構造を有する。図9を参照すると、図8Aおよび8Bに示されているデバイスのうちのどれか1つを表す、デバイスiは、前のデバイスであるデバイス(i-1)から入力信号173を受け取るための入力回路172と、次のデバイスであるデバイス(i+1)に出力信号175を供給するための出力回路174と、クロック回路176と、メモリコア回路178とを有することがわかる。入力共通同期クロック信号CLKcsyc 177に応答して、クロック回路176は、クロックをこれらのオペレーションのために入力回路172、メモリコア回路178、および出力回路174に送出する。入力回路172および出力回路174は、クロック信号CLKcsycに応答してインターフェースオペレーションを実行する。
図10Aは、図8Aのシステムの詳細を示している。特定の実施例が、メモリコントローラ210および直列接続されている複数のメモリデバイス212-1〜212-4を備えている。例示的なシステムは、共通同期クロック構造を実装する直列接続されたメモリデバイスを有する。図示されている実施例は、4つのデバイスを示しているが、直列接続できるデバイスの数に限りはない。
図10Aを参照すると、メモリデバイス212-1〜212-4のそれぞれは、ハード配線された、または事前割り当てされたデバイスID番号を有しており、このため、IDマッチ判定結果に基づき通常モードオペレーションにおいて一度に1つのデバイスを選択することができることがわかる。メモリデバイスは、ポイントツーポイント接続を有する。メモリコントローラ210は、さまざまな情報を伝送するためのデバイスに接続された複数の出力を有する。これらのデバイスのそれぞれは、さまざまな情報を受け取り、転送するための複数の入力および出力を有する。
メモリコントローラ210は、データ出力DOC[0:3]、コマンドストローブ出力CSOC、データストローブ出力DSOC、チップセレクト出力/CEC、およびリセット出力/RSTCを有する。また、メモリコントローラ210は一対のクロック出力CKOCおよび/CKOCを有する。デバイスのそれぞれは、データ入力D[0:3]、コマンドストローブ入力CSI、データストローブ入力DSI、リセット入力/RST、チップイネーブル入力/CE、および一対のクロック入力CKおよび/CKを有する。また、デバイスのそれぞれは、データ出力Q[0:3]、コマンドストローブ出力CSO、データストローブ出力DSOを有する。1つのデバイスのデータ出力Q[0:3]、コマンドストローブ出力CSO、およびデータストローブ出力DSOは、それぞれ次のデバイスのデータ入力D[0:3]、コマンドストローブ入力CSI、およびデータストローブ入力DSIに結合される。
これらのデバイスは、チップイネーブル信号/SCE(これ以降、「/SCE信号」と称する)およびリセット信号/SRST(これ以降、「/SRT信号」と称する)を受け取る。また、これらのデバイスは、一対のクロック信号SCLKI(これ以降、「SCLKI信号」と称する)および相補クロック信号/SCLKI(これ以降、「/SCLKI信号」と称する)を受け取る。/SCE、/SRST、SCLKI、および/SCLKI信号は、メモリコントローラ210によってデバイス212-1〜212-4に共通に供給される。
メモリコントローラ210のデータ出力DOC[0:3]は、入力データDI1[0:3]を第1のデバイス212-1であるデバイス1のデータ入力D[0:3]に供給する。第1のデバイス212-1は、出力データDQ1[0:3]を次のデバイスに転送する。第2のデバイス212-2であるデバイス2は、出力データDQ1[0:3]を、前のデバイスであるデバイス1から伝送されたその入力データDI2[0:3]として受け取る。1つのデバイスのコマンドストローブ入力CSIおよびデータストローブ入力DSIは、コマンドストローブ入力信号SCSIおよびデータストローブ入力信号SCSOをそれぞれ受け取る。また、1つのデバイスのコマンドストローブ出力CSOおよびデータストローブ出力DSOは、コマンドストローブ出力信号SCSOおよびデータストローブ信号SDSOをそれぞれ次のデバイスに伝送する。データの転送は、それぞれのデバイスにおけるコマンドストローブ入力信号およびデータストローブ入力信号によって制御される。
これらのデバイスのそれぞれは、コマンドストローブ入力信号SCSI(これ以降、「SCSI信号」と称する)およびデータストローブ入力信号SDSI(これ以降、「SDSI信号」と称する)の遅延バージョンの信号、コマンドストローブ出力信号SCSO(これ以降、「SCSO信号」と称する)およびデータストローブ出力信号SDSO(これ以降、「SDSO信号」と称する)を次のデバイスに供給する。データおよびSCSI、SDSIの転送は、SCLKIおよび/SCLKI信号に応答して実行される。
直列接続されたデバイスを特徴とするアーキテクチャの詳細例は、米国特許出願第2007/0076502A1号(2007年4月5日)、および国際公開第WO/2007/036048号に取りあげられている。直列接続されたデバイスを特徴とするアーキテクチャの他の詳細例は、国際公開第WO/2008/067652号(2008年6月12日)および国際公開第WO/2008/022454号(2008年2月28日)に取りあげられている。
図10Bは、図8Bのシステムの詳細を示している。図10Aに示されているシステムの接続および構造は、図10Aに示されているシステムのものとほとんど同じである。違いは、出力データDQ4[0:3]および直列接続されている最後のデバイス(つまり、デバイス4)のSCSO4、SDSO4信号がメモリコントローラ220に供給される点である。SCSO4およびSDSO4信号は、メモリコントローラ220に適宜供給され、これにより、有効なデータ位置を検出できる。
特定の実施例において、SCKおよび/SCK信号は、マルチドロップ方式でメモリコントローラによってそれぞれのメモリデバイスに供給される。したがって、受信データがポイントツーポイントインターフェースにより単一コンポーネント(つまり、直列接続されたメモリデバイス、または他の任意の直列接続されたメモリ)に伝送されるとしても、クロック信号は、複数のメモリコンポーネントによって読み込まれる。その結果、この技術の実用的な実装では、動作周波数限界は、例えば、200MHz以下となりうる。
図11は、図10Aおよび10Bに示されているデバイスの詳細を示している。図11は、デバイスの一般的な実装を示している。入力および出力データは、nビット並列データである。
図11を参照すると、示されているのは、図10Aまたは8Bに示されているシステムのデバイスのうちの2つである。図11を参照すると、i番目のデバイス212-iであるデバイスiおよび次のデバイス212-(i+1)であるデバイス(i+1)は、リセット信号/SRST、チップイネーブル信号/SCE、および一対のクロック信号SCLKIおよび/SCLKIを通常受け取ることがわかる。デバイスiのデータ入力D[0:(n-1)]は、前のデバイスであるデバイス(i-1)(図示されていない)から入力データDIi[0:(n-1)]を受け取り、そのデータ出力Q[0:(n-1)]から出力データDQi[0:(n-1 )]を出力する。デバイスiからの出力データDQi[0:(n-1)]は、デバイス(i+1)のデータ入力Dに入力データDI(i+1)[0:(n-1)]として供給される。デバイス(i+1)は、次のデバイスであるデバイス(i+1)(図示されていない)に伝送されるそのデータ出力Qから出力データDQ(i+1)[0:(n-1)]を出力する。デバイスiのコマンドストローブ入力CSIおよびデータストローブ入力DSIは、コマンドストローブ入力信号SCSIiおよびデータストローブ入力信号SDSIiを、それぞれ、前のデバイスであるデバイス(i-1)から受け取る。デバイスiは、そのコマンドストローブ出力CSOからコマンドストローブ出力信号SCSOiを、そのデータストローブ出力DSOからデータストローブ出力信号SDSOiを、それぞれ出力する。デバイスiからのコマンドストローブ出力信号SCSOiおよびデータストローブ出力信号SDSOiは、デバイス(i+1)のコマンドストローブ入力CSIおよびデータストローブ入力DSIに、コマンドストローブ入力信号SCSI(i+1)およびデータストローブ入力信号SDSI(i+1)としてそれぞれ供給される。デバイス(i+1)は、コマンドストローブ出力信号SCSO(i+1)およびデータストローブ出力信号SDSO(i+1)を、それぞれ、次のデバイスであるデバイス(i+2)(図示せず)に出力する。
図12は、共通同期クロック構造を示している。図示されている実施例は、相互接続された2つのデバイスを含む。これらのデバイスのそれぞれは、図9に示されているような構造を有する。図示されている実施例において、デバイスは同じ構造を有している。これらのデバイスのうちの1つのデバイスについては、その出力インターフェース回路が示され、他のデバイスについては、その入力インターフェース回路が詳細に示されている。図12を参照すると、一方のデバイスであるデバイスiは複数のマルチプレクサ(Muxs)を有することがわかる。同様に、他方のデバイスであるデバイス(i+1)は、複数のデマルチプレクサ(DeMuxs)を有する。図示されている実施例では、デバイスiは、「送信機」として機能する。同様に、デバイス(i+1)は、「受信機」として機能する。クロックソース230は、共通同期クロック信号CLKcsycを両方のデバイス、つまりデバイスiとデバイス(i+1)に供給する。デバイスiからデータが転送され、デバイス(i+1)が受け取ったデータは、クロック信号CLKcsycによって同期される。
デバイスiにおいて、クロック信号CLKcsycがバッファに送られ、次いで、このバッファから、バッファリングされた出力クロック信号CLKb0が通常のようにマルチプレクサに供給され、オペレーションの多重化が行われる。データ(nビット)が、マルチプレクサによって多重化され、マルチプレクサのそれぞれから出力された多重化データは、差動出力バッファのそれぞれを通じて出力される。それぞれの差動出力データは、デバイスの一対のピンを通じて伝送され、デバイス(i+1)の一対のピンに接続されている配線に送られる。
デバイスiにおいて、クロック信号CLKcsycがバッファに送られ、次いで、このバッファから、バッファリングされた出力クロック信号CLKb1が通常のようにデマルチプレクサに供給され、オペレーションの逆多重化が行われる。その一対のピンで受け取ったデータは、バッファリングされた出力データを対応するデマルチプレクサに供給する対応する入力差動バッファに供給される。デマルチプレクサのそれぞれから逆多重化データ(nビット)が供給される。デバイスiのマルチプレクサおよびデバイス(i+1)のデマルチプレクサのオペレーションは、共通同期クロック信号CLKcsycによって同期される。
共通同期クロック構造は、図12に示されているようにいくつかのスキュー因子を有し、例えば、次のようなものがある。
(i)送信デバイスと受信デバイスにおけるtBUFF間の差(クロック入力パッドから同期回路内に配置されている最終クロックドライバへのクロック挿入時間)、
(ii)tTSを含む信号伝搬経路内の遅延(送信機出力遅延)、
(iii)tRS(受信機入力遅延)、
(iv)tFL(送信機と受信機との間のフライト時間)、ならびに複数の信号間のそれらの遅延の差異、
(v)tJITTER(電力レベル変動、クロック信号線上の瞬間的な電気的特性の変化、およびシステム内に存在する他の信号からの雑音を含む多くの因子によるクロックジッター)。
したがって、多数のデバイスがマルチドロップ方式で接続された場合に動作周波数範囲が限定される。
共通同期クロック構造には、遷移が遅い、雑音排除性が低い、クロックに位相シフトが生じる、伝送路効果およびメモリデバイス負荷のせいでクロック波形が歪むといった信号品位問題による欠点がある。したがって、図1に示されているような単一クロックソースを持つ共通同期クロック構造は、多数のデバイスが共通クロックによって駆動される場合には、高速アプリケーションに適用可能でないことがある。
性能を高めるために、差動クロックを使用することができる。差動クロックを採用しているDDRダイナミックランダムアクセスメモリ(DRAM)製品が、導入されている。厳格なタイミング条件およびデバイスとモジュールとの間の距離に対する制約条件があるため、並列(マルチドロップ)クロック分配方法が採用される場合がある。しかし、マルチドロップクロックは、SDRで転送されるアドレスおよび制御情報を取り込むためにしか使用されない。DDRデータは、リードオペレーションとライトオペレーションの両方において、データを供給しているいずれかのデバイスによって駆動されるソース同期クロックを使用して取り込まれる。
並列分配クロック構造の問題を解決するための他のアプローチとして、ソース同期クロック分配方法がある。ソース同期クロック分配方法がもたらすタイミングマージンは広くなっているが、これは、マルチドロップクロック構造におけるスキューのソースの多くが排除されているからである。ソース同期クロック構造では、クロックは、例えば、位相同期ループ(PLL)または遅延同期ループ(DLL)などのクロックリジェネレータによって調節することができる。ソース同期クロック構造を有する直列接続されたデバイスの場合、PLLは、短期的ジッター累積がなく、実際、入力クロック側にジッターフィルタリング機能を備えることができるため、有利である。ただし、PLLは、DLLに比べて複雑であり、ループ安定性が考慮されなければならない。
図13は、システムがリング構造を形成している、シリアルクロック分配トポロジーに適合するソース同期クロック構造とともに、直列接続されている複数のメモリデバイスを有するシステムを示している。図示されている例示的なシステムにおいて、メモリコントローラ260は、複数の(N個の)メモリデバイス262-1、262-2、...262-Nと通信する。メモリコントローラ260は第1のメモリデバイス262-1に接続されており、これにより、ソース同期クロック信号CLKssycに応答して残りのメモリデバイス262-2〜262-Nを通じて伝搬する制御および/またはデータに関する情報を送る。初期ソース同期クロック信号CLKssycは、メモリコントローラ260によって供給され、同期されたクロック信号は、デバイスによって、次のデバイスに供給される。このシステムでは、最後の(N番目の)メモリデバイス262-Nは、伝搬情報をメモリコントローラ260にフィードバックし、これにより、システムはリング型接続を形成する。必要ならば、伝搬される制御信号は、メモリコントローラ260に返される。
図14は、図13に示されている複数のメモリデバイスのうちの1つのメモリデバイスの詳細を示している。図14を参照すると、デバイスiは、入力信号283を受け取るための入力回路282、出力信号285を供給するための出力回路284、クロック回路286、およびメモリコア回路288を有していることがわかる。クロック回路286は、受信クロック信号の遅延を調節し、適切に同期させたクロック信号を生成するためのクロック再生器を備える。この目的のために、例えば、PLLまたはDLLを使用してクロックを調節または同期させるクロック再生器のさまざまな可能な実装がある。入力ソース同期クロック信号CLKcsyci 287に応答して、クロック回路286は、クロックをそれらの各オペレーションのために入力回路282、メモリコア回路288、および出力回路284に送出する。クロック回路286のクロックリジェネレータは、入力ソース同期クロック信号CLKssyci 287と同期した出力ソース同期クロック信号CLKcsyco 289を次のデバイスに供給する。出力クロック信号CLKssyco 289は、入力クロック信号CLKssyciの再生バージョンの信号である。入力回路222および出力回路284は、クロック回路286によって供給されるクロックに応答してインターフェースオペレーションを実行する。
図15は、図13に示されているように直列接続された複数のメモリデバイスおよびメモリコントローラを有するシステムを示している。システムは、ソース同期クロック構造を有する。このシステムにおいて、最後のデバイスはコントローラに接続されている。図15を参照すると、システムは、ソース同期クロック構造とともに、直列接続されている複数のメモリデバイス312-1〜312-4とメモリコントローラ310とを備えることがわかる。それぞれのデバイスは、図10Aのデバイスと類似しているが、クロッキングは、図10Aのものとは異なる。それぞれのデバイスは、前のコンポーネント(メモリデバイスまたは第1のメモリデバイス用のメモリコントローラまたはデバイス1)からクロック信号を受け取る。それぞれのデバイスは、内部クロックを発生するためにPLL(図示されていない)を有する。クロック同期用にPLLを有するデバイスを特徴とするアーキテクチャの詳細例は、国際公開第WO/2008/067636号(2008年6月12日)で取りあげられている。
図15に示されている実施例では、ソース同期クロック構造は、受信データを取り込むために位相シフトされた内部クロックを供給するか、または位相シフトされた出力クロックを供給するのにそれぞれのコンポーネント(例えば、デバイス)内にPLLを必要とする。例えば、受け取ったクロックのエッジが受け取ったデータの遷移と一致している場合、PLLは、90°のクロック位相シフトを発生してデータ入力信号D[0:3]のデータ有効ウィンドウ内で受け取った入力SCLKIおよび/SCLKI信号のセンタリングを行う必要がある。その一方で、SCLKIおよび/SCLKI信号の受け取ったクロックのエッジが、受け取ったデータの有効ウィンドウ内でセンタリングされる場合、90°位相シフトされたクロックは、出力クロック信号SCLKOおよび相補出力クロック信号/SCLKOを生成する必要がある(これ以降、それぞれ「SCLKO信号」および「/SCLKO信号」と称する)。以下の説明では、メモリデバイスがこの後者のモードで動作することが仮定される。
ライトオペレーションでは、メモリコントローラ310は、ライトコマンドおよびライトデータ(Q[0:3])をデバイスの直列接続に含まれる第1のデバイス(デバイス1、312-1)に伝送する。第1のデバイス312-1は、コントローラ310からの受信データと中央整列されている入力クロックで受信データD[0:3]を取り込む。第1のデバイス312-1が、メモリコントローラ310によってライトコマンドの一部として発行されたデバイスIDによって決定されるようなライトオペレーションの「ターゲット」または「指定」デバイスである場合、デバイスIDのマッチが判定された後、取り込まれたデータは、そのデバイスのメモリアレイ(図示されていない)内に書き込まれる。この場合、ライトコマンドおよびライトデータが、適宜、デバイスの直列接続に含まれる次のデバイスに再送されないようにできる。特定のデバイスを指定するためのID番号は、図6に示されており、例えば、「147-2」で表され、また入力データDI1[0:3]は、コマンドフォーマット147-2の「データ」である。
第1のデバイス312-1が、メモリコントローラ310によってライトコマンドの一部として発行されたデバイスIDによって決定されるようなライトオペレーションの「ターゲット」または「指定」デバイスでない場合、受信データは、90°シフトされたクロック出力CKOおよび/CKOとともに第2のコンポーネント(デバイス2、312-2)に再送されなければならない。第2のコンポーネント(デバイス2、312-2)は、受信データと中央整列されるクロックで第1のコンポーネント(デバイス1、312-1)から再送データを受け取る。この方法によって、データは、第1のコンポーネント(第1のデバイス312-1)から最後のコンポーネント(最後のデバイス312-3)に受け渡される。
出力データDQ[0:3]、デバイスの直列接続の最後のデバイス(つまり、デバイス4)のSCLKO、/SCLKO、SCSO、およびSDSO信号は、メモリコントローラ310にフィードバックされる。SCSOおよびSDSO信号は、メモリコントローラ310に供給され、これにより、有効なデータ点を検出できる。並列分配クロックと異なり、コントローラ310は、SCLKO、/SCLKO信号とともにSCSOおよびSDSO信号が入力として要求されるので、直列接続されたデバイスから正確な待ち時間を知ることはできない。
リードオペレーションでは、メモリコントローラ310は、指定デバイスのID番号とともにリードコマンドをデバイスの直列接続に含まれる第1のデバイスに発行する。ここでもまた、指定デバイスがデバイス1である場合、デバイスIDのマッチが判定された後、デバイス1は、コマンド(つまり、リード)を処理してそのデバイス内のメモリアレイにアクセスする。第1のデバイスのリードの結果は、90°シフトされたクロックの出力とともに第2のコンポーネント(デバイス2、312-2)に伝送される。次いで、第2のコンポーネント(デバイス2、312-2)は、入力データと中央整列されるクロックとともに第1のコンポーネントのリードの結果を受け取る。この流れによって、リードデータは、残りのデバイスからメモリコントローラ310に受け渡される。ID番号は、図6に示されているフォーマット147-3によって与えられる。アクセスは、そのコマンドフォーマットに含まれるアドレスに従って実行される。
図16は、図15に示されている2つデバイスを示している。図16を参照すると、1つのデバイス、つまりデバイスi、および次のデバイスであるデバイス(i+1)は、リセット信号/SRST、チップイネーブル信号/SCE、および一対のクロック信号SCLKIおよび/SCLKIを通常受け取ることがわかる。
デバイスiのクロック入力CKおよび/CKは、前のデバイスであるデバイス(i-1)(図示されていない)からそれぞれ入力クロック信号SCLKIiおよび/SCLKLiを受け取り、そのクロック出力CKOおよび/CKOからそれぞれ対応する出力クロック信号SCLKOiおよび/SCLKOiを出力する。デバイス(i+1)は、入力クロック信号SCLKI(i+1)および/SCLKI(i+1)として、それぞれ、デバイスiから出力クロック信号SCLKOiおよび/SCLKOiを受け取り、それぞれ、次のデバイスである、デバイス(i+2)(図示されていない)に転送される、そのクロック出力CKOおよび/CKOから出力クロック信号SCLKO(i+1)および/SCLKO(i+1)を出力する。
デバイスiのデータ入力Dは、前のデバイスであるデバイス(i-1)から入力データDIi[0:(n-1)]を受け取り、そのデータ出力Qから出力データDQi[0:(n-1)]を出力する。デバイスiからの出力データDQi[0:(n-1)]は、デバイス(i+1)のデータ入力Dに入力データDi(i+1)[0:(n-1)]として供給される。デバイス(i+1)は、次のデバイスであるデバイス(i+1)に伝送されるそのデータ出力Qから出力データDQ(i+1)[0:(n-1)]を出力する。デバイスiのコマンドストローブ入力CSIおよびデータストローブ入力DSIは、コマンドストローブ入力信号SCSIiおよびデータストローブ入力信号SDSIiを、それぞれ、前のデバイスであるデバイス(i-1)から受け取る。デバイスiは、そのコマンドストローブ出力CSOからコマンドストローブ出力信号SCSOiを、そのデータストローブ出力DSOからデータストローブ出力信号SDSOiを、それぞれ出力する。デバイスiからのコマンドストローブ出力信号SCSOiおよびデータストローブ出力信号SDSOiは、デバイス(i+1)のコマンドストローブ入力CSIおよびデータストローブ入力DSIに、コマンドストローブ入力信号SCSI(i+1)およびデータストローブ入力信号SDSI(i+1)としてそれぞれ供給される。デバイス(i+1)は、コマンドストローブ出力信号SCSO(i+1)およびデータストローブ出力信号SDSO(i+1)を、それぞれ、次のデバイスであるデバイス(i+2)(図示せず)に出力する。
図17は、PLLと併せてソース同期クロック構造を示している。図示されている実施例は、相互接続された2つのデバイスを含む。これらのうちの一方は送信機として機能し、他方は受信機として機能する。これらのデバイスのそれぞれは、図14に示されているような構造を有する。図示されている実施例において、デバイスは同じ構造を有している。これらのデバイスのうちの1つのデバイスについては、その出力インターフェース回路が示され、他のデバイスについては、その入力インターフェース回路が詳細に示されている。図17を参照すると、1つのデバイス312-i、つまりデバイス1(送信機)は、複数のマルチプレクサ(Muxs)、1つのPLL 316、1つのクロックマルチプレクサ、1つの差動入力バッファ、および複数の差動出力バッファを有することがわかる。
他方のデバイス312-(i+1)(受信機)であるデバイス(i+1)は、複数のデマルチプレクサ(DeMuxs)、複数の差動入力バッファを備える。
差動クロック信号CLKi(CKおよび/CK) 287は、差動入力バッファを通してデバイスiのPLLに入力され、次いで、デバイスiが再生された内部クロックをマルチプレクサに供給し、マルチプレクサのオペレーションを同期させる。再生されたクロックは、出力データがデータとクロック経路との間の遅延とマッチするように生成されるのとまったく同じ方法で出力クロックを生成するクロックマルチプレクサにも供給される。デバイス(i+1)に伝送する出力クロック信号を駆動するために、出力クロックが与えられる。デバイス(i+1)は、そのクロックを受け取って、それをデマルチプレクサに供給し、デマルチプレクサのオペレーションを同期させる。
マルチドロップクロック構造と比較すると、PLLを備えるソース同期クロック構造は、スキュー成分が少ない。これは、内部再生クロックが入力クロックと位相同期するので著しいクロック挿入遅延問題(tBUFFスキュー)を有しない。出力クロックと出力データは同一の経路を辿るため、2つのデバイスiと(i+1)との間のフライト時間スキュー(tFL)はもはや問題でなくなる。それに加えて、tJITTERは、PLLのフィルタリング動作によって低減されうる。
ソース同期クロック構造によって、マルチドロップクロック構造のものと比べて高い周波数動作範囲が得られる。例えば、800MHzを超える周波数でのオペレーションは、PLLジッターおよび位相誤差が適切に制御されている場合に達成されうる。これらの理由から、より高いデータリード帯域幅を形成するために直列接続されたメモリを有するシステムにおいて、ソース同期クロック構造が採用される。
ソース同期クロック構造の一実施例は、「Designing High Data Rate Interfaces」、IEEE 2004 VLSI Circuits Symposium、2004年6月16日において開示されている。
図18Aは、図15に示されている直列接続されたデバイスのうちの1つのデバイスを示している。図18Aを参照すると、さまざまな入力信号(例えば、SCLKIi、/SCLKIi、SCSIi、SDSIi信号)および入力データDIi[0:3]が、直列接続されたデバイスのi番目のデバイスである「デバイスi」312-iに供給され、そのデバイスは、さまざまな出力信号(例えば、SCLKOi、/SCLKOi、SCSOi、SDSOi信号)および出力データDQi[0:3]を供給することがわかる。特定の実施例において、データは4つのビット[0:3]を有する。データは、他の個数のビットを有していてもよい。
デバイス312-iは、位相同期ループ(PLL)を有するクロックI/O回路401、データI/O回路403、ストローブI/O回路405、およびメモリコア回路407を含む制御回路を備える。クロックI/O回路401は、SCLKIi、/SCLKIi信号をクロック入力CKおよび/CKで受け取り、クロック出力CKOおよび/CKOを通じてSCLKOi、/SCLKOi信号を出力する。クロックI/O回路401は、基準クロック信号Ref_clkをデータI/O回路403およびストローブI/O回路405に供給する。基準クロック信号Ref_clkは、内部クロック信号として供給される。クロックI/O回路401は、複数のクロック信号を発生する。特定の実施例において、クロックI/O回路401は、180°、270°、および360°の位相シフトされたクロック信号をデータI/O回路403およびストローブI/O回路405に出力する。
メモリコントローラ(例えば、図15に示されているメモリコントローラ310)からの基準電圧Vrefの信号SVREFが、データI/O回路403およびストローブI/O回路405に供給される。データI/O回路403は、入力データDIi[0:3]を受け取って、出力データDQi[0:3]を出力する。ストローブI/O回路405は、SCSIiおよびSDSIi信号を受け取って、SCSOiおよびSDSOi信号を出力する。制御回路407は、内部コマンドストローブ入力信号iCSIおよび内部データストローブ入力信号iDSIをストローブI/O回路405から受け取り、データI/O回路403から書き込むべきデータである「ライトデータ」を受け取る。制御回路407は、そのメモリ(図示されていない)から読み出された「リードデータ」をストローブI/O回路405に供給する。
図18Bは、図18Aに示されているメモリコア回路407を備える制御回路の一実施例を示している。制御回路407は、図4および図5Aに示されているように初期モードでID割り当てオペレーションを実行し、図4および図5Bに示されているように通常モードでメモリアクセスオペレーションを実行する。
図18Aおよび18Bを参照すると、ID割り当て回路491は、初期モードにおいてID割り当ておよびID番号計算を実行することがわかる。入力IDの番号、つまりIDiが、IDレジスタ492内に登録される。計算結果の数(つまり、IDi+1)は、デバイスiによって出力IDoとして次のデバイスに供給される。IDレジスタ492は、割り当てられたIDを保持する。その後、通常モードにおいて、図6に示されているようなフォーマットを有するコマンドは、IDマッチ判定器493およびコマンドインタプリタ495に供給される。IDマッチ判定器493は、入力ID番号がIDレジスタ491内に保持されている割り当て済みIDとマッチするかどうか、もしマッチしていれば、供給されるIDマッチ信号、つまり「IDマッチ」が論理「High」になる。マッチがない場合、IDマッチ信号は論理「Low」になる。IDiでIDマッチ判定があった場合、デバイスiは、指定またはターゲットデバイスである。IDマッチがなかった場合、デバイスiは、指定デバイスではない。OPコード復号器を備えるコマンドインタプリタ495は、入力コマンドに含まれるOPコードを復号化し、「High」レベルのIDマッチ信号に応答して、解釈されたコマンド(例えば、ライト、リード)を供給する。解釈されたコマンドおよびIDマッチ信号に応答して、モード信号生成器497が、「活性化(Primed)」信号を供給する。特定の実施例において、活性化信号は、IDマッチがない場合に論理「Low」である。IDマッチがある場合、活性化信号は、「High」および「Low」レベルであり、OPコードは、それぞれ、「リード」(つまり、コマンドはデータリードコマンドである)および「ライト」(つまり、コマンドはデータライトコマンドである)である。解釈されたコマンドに応答して、例えば、内部コマンドストローブ入力信号iCSIおよび内部データストローブ入力信号iDSIを受け取るメモリコア回路498にデータが書き込まれるか、またはそのメモリコア回路498からデータが読み出される。コマンドインタプリタの一実施例は、国際公開第WO/2008/067659号(2008年6月12日)で開示されている。IDマッチ判定器の一実施例は、米国特許出願第12/034,686号において開示されている。
図18Cは、図18Aに示されているクロックI/O回路401の詳細を示している。図18Aおよび18Cを参照すると、SCLKIiおよび/SCLKIi信号が、入力バッファ411の「+」および「-」入力に供給され、次いで、これにより、基準クロック信号Ref_clkがPLL 413の基準クロック入力「Ref_clk入力」に供給されることがわかる。基準クロック信号Ref_clkは、SCLKIi信号が(例えば、「High」から「Low」に)遷移し、/SCLKIi信号が反対方向に(例えば、「Low」から「High」に)遷移したときに遷移する。PLL 413は、基準クロック信号Ref_clkの遷移と同期して動作する。
PLL 413は、発振器を備え、それぞれバッファ414-1、414-2、414-3、および414-4を通じて入力基準クロック信号Ref_clkに関して、90°、180°、270°、および360°だけ位相シフトされた4つのクロック信号を生成する。Clk90、Clk180、Clk270、およびClk360によって参照される90°、180°、270°、および360°の4つの位相シフトされたクロック信号は、これ以降、「Clk90信号」、「Clk180信号」、「Clk270信号」、および「Clk360信号」とそれぞれ称される。Clk360信号は、PLL 413の発振入力「Osc_loop入力」に供給される。Clk360およびClk180信号は、それぞれセレクタ417および419の選択入力に供給される。セレクタ417および419のそれぞれは、「0」および「1」入力のところで、それぞれ、論理「0」および「1」信号を受け取る。セレクタ417において、その「0」または「1」入力が、Clk360信号に応答して選択され、その出力信号は、出力バッファ421を通じてSCLKOi信号として供給される。同様に、セレクタ419において、その「0」または「1」入力が、Clk180信号に応答して選択され、その出力信号は、出力バッファ423を通じて/SCLKOi信号として供給される。したがって、SCKOおよび/SCKO信号は、180°位相外れの相補差動クロック信号である。セレクタ417および419は、クロックとデータ経路との間の遅延をマッチさせる。
図18Dは、図18Aに示されているデータI/O回路403を示している。図18Aおよび18Dを参照すると、基準電圧信号SVREFが、入力バッファ425の「-」入力に供給されることがわかる。入力データDIi[0:3]は、入力バッファ425の「+」入力に供給され、その出力<0:3>は、基準クロック信号Ref_clkの正のエッジと負のエッジでクロック同期するD型フリップフロップ(D-FF)461および463のデータ入力「D」に供給され、これによりDDRデータを取り込む。デバイスは、4ビットデータ経路を有しているけれども、単一ビットのみに対する回路が示されている。データを処理する回路要素のそれぞれは、実際のデバイス内で4回複製される。D-FF 461の4ビット出力Din1[0:3]は、ビット4、5、6、および7を含み、セレクタ465の「0」入力に供給される。同様に、D-FF 463の4ビット出力Din2[0:3]は、ビット0、1、2、および3を含み、セレクタ467の「0」入力に供給される。セレクタ465および467の「1」入力は、リードデータを、それぞれ、Rout1[0:3](ビット4、5、6、および7)ならびにRout2[0:3](ビット0、1、2、および3)として受け取る。セレクタ465および467は、「活性化」信号に従って選択オペレーションを実行する。活性化信号は、デバイスが/SCE信号によって選択されている間に、IDマッチ判定に応じてデバイスが選択されているときに「High」になり、選択されていないときに「Low」となる。セレクタ465および467からの選択された出力信号は、データラッチオペレーションに対し、それぞれ、Clk180およびClk360信号でクロック同期されたD-FF 369および471のデータ入力Dに供給される。D-FF 469の内部的にラッチされている出力データDo1[0:3]およびD-FF 471の内部的にラッチされている出力データDo0[0:3]は、それぞれ、Clk270信号に応答して選択オペレーションを実行する、セレクタ473の「1」および「0」入力に供給される。セレクタ473からの選択された出力<0:3>は、出力バッファ475を通じて出力データDQi[0:3]として供給される。
図18Eは、図18Aに示されているストローブI/O回路405を示している。図18Aおよび18Eを参照すると、基準電圧信号SVREFが、入力バッファ(コンパレータ)427および429の「-」入力に供給されることがわかる。SCSIiおよびSDSIi信号は、それぞれ入力バッファ427および429の「+」入力に供給され、その出力は、D-FF 431および433のD入力に供給される。D-FF 431および433は、基準クロック信号Ref_clkに応答してラッチオペレーションを実行する。D-FF 431および433は、コア論理回路407に供給される内部コマンドストローブ入力信号iCSI(これ以降、「iCSI信号」と称する)および内部データストローブ入力信号iDSI信号(これ以降、「iDSI信号」と称する)を出力する。
iCSI信号は、それぞれClk180およびClk360信号でクロック同期されるD-FF 437および439のD入力に供給される。D-FF 437および439は、それぞれセレクタ441の「1」および「0」入力に供給されるiCSO1およびiCSO0信号を出力する。Clk270信号に応答して、セレクタ441からの選択された出力信号が、出力バッファ443を通じてSCSOi信号として供給される。iDSI信号は、それぞれClk180およびClk360信号でクロック同期されるD-FF 445および447のD入力に供給される。同様に、D-FF 445から出力されるiDSO1信号およびD-FF 447から出力されるiDSO0信号は、セレクタ449の「1」および「0」入力に供給され、次いで、このセレクタが、Clk270信号に応答してiDSO1およびiDSO0のうちの一方を選択する。セレクタ449からの選択された出力信号は、出力バッファ451を通じてSDSOi信号として供給される。
図19は、図18A〜18Eに示されているようなソース同期クロック構造に対するさまざまな信号およびデータを示している。図18A〜18Eおよび19を参照すると、それぞれのデバイスは、SCLKOi、/SCLKOi信号および出力データDQi[0:3]、SCSOiおよびSDSOi信号の間で90°位相差を確定するPLLを備え、これにより、次のデバイスのセンタリングされたクロックを供給することがわかる。図19に示されているように、出力データDQi[0:3]とSCLKOi、/SCLKOi信号との間に90°の位相差がある。
前述のように、通常オペレーションモードでは、活性化信号は、IDマッチ判定およびオペレーションモードに応じて、論理「Low」(つまり、「0」)または「High」(つまり、「1」)状態を有する。非IDマッチ判定では、デバイスiは、データを次のデバイス(i+1)に送るだけである。活性化信号は、論理「0」状態にあり、したがって、D-FF 461および463からラッチされたデータ、Din1[0:3](つまり、ビット4、5、6、および7)ならびにDin2[0:3](つまり、ビット0、1、2、および3)は、セレクタ465および467によって選択され、出力データDQi[0:3]は、次のメモリデバイスに供給される。また、D-FF 461および463からラッチされたデータ、Din1[0:3](つまり、ビット4、5、6、および7)ならびにDin2[0:3](つまり、ビット0、1、2、および3)は、「活性化」信号制御(図示されていない)によってライトレジスタ481に書き込まれない。非IDマッチ判定の後、8ビット(ビット0〜7)の書き込まれたデータは、コア論理回路407に供給されない。しかし、IDマッチ判定がなされ、ライトオペレーションモードに入っている場合、D-FF 461および463からラッチされたデータ、Din1[0:3](つまり、ビット4、5、6、および7)ならびにDin2[0:3](つまり、ビット0、1、2、および3)は、ライトレジスタ481を通じてメモリコア回路498に書き込まれる。
この場合、IDマッチ判定がなされ、リードオペレーションモードに入っている場合(活性化信号が論理「1」である)、コア論理回路407は、その中のデータストア要素にアクセスし、データを読み出し、そのリードデータがリードレジスタ483内に書き込まれる。リードデータは、Rout1[0:3](ビット4、5、6、および7)ならびにRout2[0:3](ビット0、1、2、および3)として、それぞれ、セレクタ465および467によって選択され、最終的に、出力データDQi[0:3]が次のデバイスに供給される。
いくつかのアプリケーションに対して、直列接続されたメモリデバイスを有するシステムが採用される場合、直列接続メモリデバイスのすべての中のPLLは、次のデバイスに入力データを伝送できるようにオンにされるべきであるが、それは、すべての入力および出力バッファが使用されるからである。したがって、システム内に多数のメモリデバイスがある場合、PLLのオペレーションのせいで多量の電力を消費することになる。
実施例では、この電力消費問題を、例えば、システムボード上のメモリの実装面積を縮小するためにマルチチップ構成で一般的にパッケージングされる、例えば、不揮発性フラッシュメモリなどのハイブリッド同期クロッキングを行うマルチスタック型チップベースのメモリの場合について解決する。これとともに、交互PLLオン/オフ制御機能を備える完全ソース同期クロッキングが導入される。
上述のように、複数のメモリデバイスが接続されている。このようなデバイスは分割されて、複数のグループを形成し、それぞれのグループは、とりわけ、クロック構造によって特徴付けられる。
PLLを有する直列接続されたデバイスを備えるシステムは、国際公開第WO/2008/098367号(2008年8月21日)で開示されている。開示されているシステムにおいて、すべてのデバイスのPLLは、オンになっているが、不要ならば、節電のため、すべてのデバイスのPLLをオフにする。
図20Aは、直列接続された複数のメモリデバイスおよびメモリコントローラを有するシステムを示している。図示されている実施例では、デバイスはグループ化され、それぞれのグループはソース同期クロック構造と共通同期クロック構造との組合せを有する。最後のグループの最後のデバイスは、ソースコントローラに接続されず、他のコントローラまたは論理回路(図示されていない)に接続される。図20Aを参照すると、メモリコントローラ510は、グループ1〜N、512-1〜512-Nに含まれる複数のメモリデバイスと通信することがわかる。グループ1〜Nのそれぞれにおいて、複数のデバイス(例えば、4つのデバイス)が、図15に示されているように直列接続されている。メモリコントローラ510は、入力クロック信号SCLKI1をグループ1、512-1に、データおよび他の情報とともに送る。グループ1〜Nのそれぞれは、その出力クロック信号を次のグループに出力する。グループNは、直列接続の出力クロック信号SCLKONを出力する。
図20Bは、デバイスがグループ化されている、直列接続された複数のメモリデバイスおよびメモリコントローラを有するシステムを示している。システムにおいて、それぞれのグループは、ソース同期クロック構造と共通同期クロック構造の組合せを有し、最後のグループの最後のデバイスはコントローラに接続されている。図示されている実施例において、メモリコントローラ520は、グループ1、2、...、Nに含まれている複数のメモリデバイスと通信する。グループ1〜Nのそれぞれにおいて、複数のデバイス(例えば、4つのデバイス)が、図15に示されているように直列接続されている。クロック転送経路は、図20Aのものと類似している。グループNからの出力クロック信号SCLKONは、メモリコントローラ520に供給される。また、データおよび他の情報を含む伝搬信号は、グループNの最後のデバイスからメモリコントローラ520にフィードバックされる。
図20Aおよび20Bに示されているようなシステムにおいて、一方のグループ内のクロック構造は、他方のグループのと異なる場合がある。一方のグループ内の個別のデバイスは、他方のグループのものと異なるクロック構造を使用してクロック同期されうることもある。それぞれのメモリデバイスは、単一のダイもしくはチップ、またはマルチチップモジュール(MCM)またはマルチチップパッケージ(MCP)の形態の複数のダイもしくはチップを含むことができる。
図21Aは、ワイヤボンディングを使用するマルチチップパッケージ(MCP)構造で実装されているような例示的システムを示している。図21Aを参照すると、システムは、配線盤である基板533上に垂直に積み重ねて実装された複数のメモリデバイス531-1〜531-4を有することがわかる。これらのデバイスは、絶縁体535によって分離されている。デバイス531-1〜531-4は、複数の接続パッド537を有する。基板533は、複数の接続パッド539を有する。デバイス531-1〜531-4のパッド537は、電線541によって基板533のパッド539および他のデバイスのパッドに接続されている。デバイス531-1〜531-4、基板533、および電線541は、MCPエンクロージャ(図示されていない)内に収納される。MCPエンクロージャは、システムコンポーネントの四方を固める封止媒体または樹脂を含むことができ、これにより、コンポーネントが中に固定される剛体パッケージが形成される。基板533は、デバイスの向側に他の接続パッドまたは端子(図示されていない)を有する。他の端子は、信号の送受信を行うために他のMCPまたはメモリコントローラに接続される。デバイス531-1〜531-4は、他のMCPのデバイス、またはメモリコントローラと通信することができる。特定の実施例において、システムは、4つのチップ(つまり、4つのメモリデバイス)を備えるが、システムは、任意の個数のチップを備える。
図21Bは、シリコンスルーホールを使用するMCP構造の他の実施例を示している。図21Bを参照すると、メモリデバイス551-1〜551-3が、エンクロージャ(図示されていない)の内側の基板553に被さる形で互いの方向にそって平行に置かれていることがわかる。デバイスのそれぞれは、接続線と端子をシリコン基板上に有している。デバイスとデバイスとの間の端子は、シリコンスルーコネクタ555によって接続され、これにより、デバイスは信号を送信し、受信する。
パッケージ内において、チップ入力および出力パッドならびに関連するESD(静電放電)構造からの負荷効果は、相互接続キャパシタンスに関わる主要因子である。しかし、負荷効果は、基板上のパッケージ間接続と比較して、モジュール内の接続の場合に厳しさがかなり低い。MCP内の2つのチップ間の距離は、パッケージ間接続の距離と比べてかなり短い。したがって、共通同期クロック構造は、MCP内において好適な解決策と言えるが、ソース同期クロック構造は、高い周波数でのオペレーション、例えば、200MHzを超える場合のパッケージ間相互接続に使用することができる。このアプローチを使用することで、1つのMCP内のすべてのPLLをオンにしなくてよい。高い周波数でのオペレーションと比較的低い消費電力の両方を達成することが可能である。
図22は、MCP同士の間のソース同期クロッキングおよびMCP内の共通同期クロッキングに基づくMCPデバイスに対するハイブリッド同期クロック構造を備えるシステムを示している。図22を参照すると、複数の(N個の)MCP1〜MCPN、562-1〜562-Nが直列接続されており、メモリコントローラ(図示されていない)と通信することがわかる。特定の実施例において、MCPのそれぞれは、直列接続されている4つのデバイスを有する。
それぞれのデバイスは、入力Dおよびデータ出力Qを有し、これにより、入力データを受け取り、出力データを転送する。それぞれのデバイスは、クロック信号を再生するためのPLLを備える。メモリコントローラは、データおよび命令に関するさまざまな情報を含む入力データ信号DIをMCP1、562-1に送る。また、メモリコントローラは、一対の入力クロック信号SCLKIおよび/SCLKIをMCP1に送り、入力クロック信号SCLKIおよび/SCLKIは通常、MCP1のすべてのデバイスに供給される。データ信号DIは、MCP1の第1のデバイスのデータ入力Dに供給され、クロック信号SCLKIおよび/SCLKIに応答してMCP1内のデバイスを通して伝搬される。
図22に示されている特定の実施例では、MCP1〜MCPNのそれぞれにおいて、第1から第3までのデバイスのPLLがオフになっており(つまり、ディセーブルされており)、第4のデバイスのPLLはオンになっている(つまり、イネーブルされている)。論理「Low」および「High」レベルの電圧「Vss」(例えば、0ボルト)および「Vdd」(例えば、正電圧)が、それぞれオフおよびオンにされるPLLに印加される。それぞれのMCPの最後のデバイスは、クロック再生の機能を実行し、再生クロック信号が、次のMCPに供給される。図22に示されている特定の実施例において、それぞれのMPC内のクロック構造は、共通同期クロッキングである。しかし、MCP2〜MCPN、562-2〜562-Nの第1のデバイスは、前のMCPの最後のデバイスから再生クロック信号を受け取り、したがって、MCP1〜MCPNの第1のデバイスは、ソース同期クロック構造でクロック同期される。データおよび命令に関するさまざまな情報を含む入力データ信号DIは、MCP1〜MCPNのデバイスを通して伝搬され、MCPNの最後のデバイスが出力データDQを出力する。また、出力クロック信号SCLKOおよび/SCLKOが、MCPNの最後のデバイスから出力される。
図22に示されているシステムでは、高い周波数におけるオペレーション性能を最適化するために、MCPの最後のデバイス(チップまたはコンポーネント)は、データに対する中央整列クロックとともに出力データを次のMCPに伝送するようにPLLをイネーブルしている。それぞれのMCP内の最後のデバイスのPLLは、論理レベル「High」の電圧Vddでオンにされ、PLLはイネーブルされる。それぞれのMCP内の他のデバイスのPLLは、論理レベル「Low」の電圧Vssでオフにされ、PLLはディセーブルされる。
図22に示されているシステムにおいて、それぞれのMPC内のデバイスは、共通同期クロッキングする。すべてのMCPの入力および出力は、データとともに中央整列クロックで動作する。MCPは、ソース同期クロッキングで動作する。
図22に示されている実施例では、それぞれのMCP内の1つのPLLのみがイネーブルされる。同じクロック構造を、プリント回路(PCB)上に直接実装された個別デバイスに適用することも可能である。すべてのデバイスまたはモジュール内でクロックの再生を必要とするわけではない。共通同期クロック構造は、複数の単一デバイスを駆動することができ、このため、いくつかのデバイスにおけるPLLをオフにすることで節電することができる。
当業者には、MCP内のデバイスの数が、4つに限定されないこと、また複数のデバイスが1つのMCPに接続されうることは明白である。
図23Aは、直列接続に基づくMCPデバイスに対するハイブリッド同期クロック構造を備える他のシステムを示している。図23Aを参照すると、複数の(N個の)MCP1〜MCPN、572-1〜572-Nが直列接続されており、メモリコントローラ(図示されていない)と通信することがわかる。MCPのそれぞれは、直列接続された複数のデバイス(4つ)を有する。それぞれのデバイスは、入力Dおよびデータ出力Qを有し、これにより、入力データを受け取り、出力データを転送する。それぞれのデバイスは、クロック信号を再生するためのPLLを備える。
図23Aに示されている特定の実施例では、MCP1〜MCPNのそれぞれにおいて、第1および第3のデバイスのPLLは論理「Low」電圧Vssによってオフにされ(つまり、ディセーブルされ)、第2および第4のデバイスのPLLは論理「High」電圧Vddによってオンにされる(つまり、イネーブルされる)。ここで、第2のPLLはすべてオフにされる。
メモリコントローラは、データおよび命令に関するさまざまな情報を含む入力データ信号DIをMCP1、572-1に送る。また、メモリコントローラは、一対の入力クロック信号SCLKIおよび/SCLKIをMCP1に送り、入力クロック信号SCLKIおよび/SCLKIは通常、MCP1の第1および第2のデバイスに供給される。第2のデバイス(イネーブルされたPLL)は、再生クロック信号SCLKO2および/SCLKO2を第3および第4のデバイスにふつうに供給する。第4のデバイス(イネーブルされたPLL)は、次のMCP、MCP2に供給される再生クロック信号を出力する。
MCP1では、第3のデバイスは、ソース同期クロック構造でクロック同期され、第2および第4のデバイスは、共通同期クロック構造でクロック同期される。他のMCP1のそれぞれにおいて、第2および第4のデバイスは、共通同期クロック構造でクロック同期され、第1および第3のデバイスは、ソース同期クロック構造でクロック同期される。
データ信号DIは、MCP1の第1のデバイスのデータ入力Dに供給され、クロック信号SCLKIおよび/SCLKIに応答してMCP1内のデバイスを通して伝搬される。データおよび命令に関するさまざまな情報を含む入力データ信号DIは、MCP1〜MCPNのデバイスを通して伝搬され、MCPNの最後のデバイスが出力データDQを出力する。また、SCLKOおよび/SCLKO信号が、MCPNの最後のデバイスから出力される。
図23Bは、直列接続に基づくMCPデバイスに対するハイブリッド同期クロック構造の他のシステムを示している。図23Bを参照すると、複数(N)のMCP、MCP1〜MCPN、582-1〜582-Nが直列接続されていることがわかる。特定の実施例において、それぞれのMCPは、直列接続されている8つのデバイスを備える。それぞれのMCPにおいて、第1から第3、および第5から第7までのデバイスのPLLは、論理「Low」電圧Vssによってオフにされる(つまり、ディセーブルされる)。第4および第8のデバイスのPLLは、論理「High」電圧Vddによってオンにされる(つまり、イネーブルされる)。イネーブルされたPLLのそれぞれは、入力クロック信号に応答して再生クロック信号を次のデバイスに出力する。図23Bのシステムは、8チップパッケージベースである。最大動作周波数が、信号品位の問題を起こすことなく示されている事例に適用可能である場合には、任意の個数のデバイスおよびMCPを接続できる。
図23Aおよび23Bに示されているシステムにおいて、それぞれのMCP内の2つのデバイス(チップまたはコンポーネント)はオンであり、高速オペレーションが可能である。
上述のようなハイブリッド同期クロック構造を実現するために、それぞれのチップのPLLがオンにされるかどうかのデバイス選択方法が、通常オペレーションを開始する前に必要である。チップ(またはコンポーネント)のPLLを選択するための例示的な方法では、MCP内へのそれぞれのチップ(またはコンポーネント)に対し外部ピンを使用する。図22、23A、および23Bは、定電圧Vss、Vddによって、8つの事例のうちの2つとともに4つのデバイスのうちの1つおよび2つのデバイスの1つを選択する方法を示している。
ソース同期クロック構造では、次の直列接続されているコンポーネントに対し、SCLKIおよび/SCLKI信号が入力データウィンドウの中央に整列され、SCLKOおよび/SCLKO信号も出力データの中央に整列されると仮定される。データのそのような整列は、位相シフトとともにPLLによって達成される。
ハイブリッド同期クロック構造では、ソース同期クロック構造は、中央整列された入力および出力データをクロックとともに伝送する前述の構造と同じである。クロックの90°クロック位相シフトは、図18A〜18Dおよび19に示されているように出力段階で行われる。これは、共通同期クロック構造とともにMCPの外側でグローバルに、つまりMCPの内側でソース同期クロック構造を使用する必要がある。
このようにして、ハイブリッド同期クロック構造においてPLLをディセーブルしているチップ(またはコンポーネント)は、共通同期クロック構造で入力信号を受け取るが、PLLがイネーブルされているデバイスは、クロックを再生してデューティサイクル補正および90°クロック位相シフトを行ってから、PLLがディセーブルされている次のデバイスに出力データを伝送する。
図22、23A、および23Bに示されている例示的なシステムにおいて、第1のMCPは、他のデバイス、例えば、メモリコントローラからデータとともに中央整列クロックを受け取る。データがメモリコントローラによって供給される中央整列クロックの例は、2008年11月28日に出願した米国特許出願第12/325,074号において開示されている。
図24Aは、図15に示されているような直列接続されたデバイスのうちの1つのデバイスの一実施例を示している。このデバイスは、ハイブリッド同期クロック構造で使用するものである。
特定の実施例において、クロックは中央整列される。実施例では、PLLイネーブル信号PLL_EN(これ以降、「PLL_EN信号」と称する)は、PLLを制御して選択的にイネーブルまたはディセーブルするために用意されている。PLL_EN信号が、論理「High」または「Low」であるときに、PLLはイネーブル(オン)またはディセーブル(オフ)される。図示されている実施例において、さまざまな入力信号(例えば、SCLKIi、/SCLKIi、SCSIi、SDSIi信号)および入力データDIi[0:3]が、1つのデバイスに入力され、さまざまな出力信号(例えば、SCLKOi、/SCLKOi、SCSOi、SDSOi信号)および出力データDQi[0:3]が、1つのデバイスから出力される。
図24Aのデバイスの構造は、図18Aの構造と類似している。図24Aに示されているデバイスの回路は、PLL_EN信号にさらに応答し、データおよび制御信号の選択の追加の機能を実行する。したがって、図18Aのデバイスの要素、回路、信号、および情報に対応する要素、回路、信号、および情報は、同じ参照記号によって示されている。
図24Aを参照すると、デバイスは、PLLを有するクロックI/O回路601、データI/O回路603、ストローブI/O回路605、およびメモリコア回路607を含む制御回路を備えることがわかる。クロックI/O回路601は、SCLKIi、/SCLKIi信号およびPLL_EN信号を受け取る。クロックI/O回路601は、SCLKOi、/SCLKOi信号を出力する。クロックI/O回路601は、基準クロック信号Ref_clkをデータI/O回路603およびストローブI/O回路605に供給する。PLLを備えるクロックI/O回路601は、180°、270°、および360°の位相シフトされたクロック信号を出力する。PLL_EN信号も、データI/O回路603およびストローブI/O回路605に供給される。基準電圧信号SVREFは、データI/O回路603およびストローブI/O回路605に供給される。データI/O回路603は、入力データDIi[0:3]および180°、270°、および360°の位相シフトされたクロック信号を受け取る。データI/O回路603は、出力データDQi[0:3]を供給する。ストローブI/O回路605は、SCSIi、SDSIi信号および180°、270°、および360°の位相シフトされたクロック信号を受け取る。ストローブI/O回路605は、SCSOi、SDSOi信号を出力する。制御回路607は、内部コマンドストローブ入力信号iCSIおよび内部データストローブ入力信号iDSIをストローブI/O回路605から受け取り、データI/O回路603から書き込むべきデータを受け取る。制御回路607は、リードデータをデータI/O回路603に供給する。
メモリコア回路607を伴う制御回路の構造は、図18Bに示されているメモリコア回路407を伴う制御回路の構造と類似している。制御回路607は、論理「High」または「Low」の活性化信号を供給する。
図24Bは、図24Aに示されているクロックI/O回路601の詳細を示している。図24Aおよび24Bを参照すると、SCLKIiおよび/SCLKIi信号が、入力バッファ611の「+」および「-」入力に供給され、次いで、これにより、基準クロック信号Ref_clkが供給されることがわかる。基準クロック信号Ref_clkおよびPLL_EN信号が、発振器を含むPLL 613に供給される。PLL 613は、PLL_EN信号がそれぞれ論理「High」および論理「Low」であることに応答してオンおよびオフにされる。基準クロック信号Ref_clkに関して、90°、180°、270°、および360°だけ位相シフトされた4つのクロック信号が、それぞれ、バッファ614-1、614-2、614-3、および614-4を通じて出力される。PLL_EN信号は、それぞれセレクタ617、619と出力バッファ625、627との間に挿入されているセレクタ621、623の選択入力に供給される。セレクタ617および619のそれぞれの「0」および「1」入力には、それぞれ、論理「0」および「1」の電圧を与えられる。セレクタ621および623の「1」入力は、それぞれ、セレクタ617および619から選択された出力信号を受け取る。セレクタ621および623の「0」入力は、Lowレベル電圧Vss(論理「0」)を与えられる。360°の位相シフトされたクロック信号(つまり、Clk360信号)が、PLL 613の発振ループ入力およびセレクタ617の選択入力に供給される。セレクタ621および623からの選択された出力は、出力バッファ625および627を通して、それぞれ、SCLKOiおよび/SCLKOi信号として供給される。180°、270°、および360°の3つの位相シフトされたクロック信号(つまり、Clk180信号、Clk270信号、およびClk360信号)は、クロックI/O回路601から供給される。
図24Cは、図24Aに示されているデータI/O回路603の詳細を示している。図24Aおよび24Cを参照すると、基準電圧信号SVREFが、入力バッファ629の「-」入力に供給されることがわかる。入力データDIi[0:3]は、入力バッファ629の「+」入力に供給され、その出力<0:3>は、基準クロック信号Ref_clkの正のエッジと負のエッジでクロック同期するD-FF 661および663のデータ入力「D」に供給され、これによりDDRデータを取り込む。デバイスは、4ビットデータ経路を有しているけれども、単一ビットのみに対する回路が示されている。データを処理する回路要素のそれぞれは、実際のデバイス内で4回複製される。D-FF 661の4ビット出力Din1[0:3]は、ビット4、5、6、および7を含み、セレクタ665の「0」入力に供給される。同様に、D-FF 663の4ビット出力Din2[0:3]は、ビット0、1、2、および3を含み、セレクタ667の「0」入力に供給される。セレクタ665および667は、「活性化」信号に従って選択オペレーションを実行する。活性化信号は、デバイスが/SCE信号によってイネーブルされている間に、IDマッチ判定およびデータリードオペレーションモードに応じてデバイスが選択されたときに「High」になる。セレクタ665および667からの選択された出力は、データラッチオペレーションに対し、それぞれ、Clk180およびClk360信号でクロック同期されたD-FF 669および671のデータ入力Dに供給される。D-FF 669の内部的にラッチされている出力データDo1[0:3]およびD-FF 671のデータDo0[0:3]は、それぞれ、Clk270信号に応答して選択オペレーションを実行する、セレクタ673の「1」および「0」入力に供給される。セレクタ673からの選択された出力<0:3>は、セレクタ633の「1」入力に供給される。
基準クロック信号Ref_clkは、セレクタ631の選択入力に供給され、その「0」および「1」入力は、内部出力データido[0:3]およびido[4:7]をそれぞれセレクタ665および667の出力から受け取る。セレクタ631からの選択された出力信号は、セレクタ631と出力バッファ675との間に挿入されているセレクタ633の「0」入力に供給される。PLL_EN信号に応答して、セレクタ633は、セレクタ631またはセレクタ673から出力信号を選択し、選択された出力データ<0:3>は、出力バッファ675を通じて出力データDQi[0:3]として出力される。
図24Dは、図24Aに示されているストローブI/O回路605の詳細を示している。図24Aおよび24Dを参照すると、基準電圧信号SVREFが、入力バッファ641および643の「-」入力に供給されることがわかる。SCSIiおよびSDSIi信号は、それぞれ入力バッファ641および643の「+」入力に供給され、その出力は、D-FF 645および647のD入力に供給される。D-FF 645および647は、基準クロック信号Ref_clkに応答してラッチオペレーションを実行する。D-FF 645および647は、メモリコア回路607を備える制御回路に供給される内部コマンドストローブ入力信号iCSI(これ以降、「iCSI信号」と称する)および内部データストローブ入力信号iDSI信号(これ以降、「iDSI信号」と称する)を出力する。
iCSI信号は、D-FF 649、651、および653のD入力に供給される。iDSI信号は、D-FF 655、657、および659のD入力に供給される。D-FF 649および655は、Clk180信号でクロック同期される。D-FF 651および657は、Clk360信号でクロック同期される。D-FF 653および659は、基準クロック信号Ref_clkの反転バージョンの信号でクロック同期される。D-FF 649および651は、それぞれセレクタ677の「1」および「0」入力に供給されるiCSO1およびiCSO0信号を出力する。Clk270信号に応答して、iCSO1またはiCSO0が、セレクタ677によって選択され、選択された出力信号が、セレクタ687の「1」入力に供給され、その「0」入力は、D-FF 653の出力信号を受け取る。
D-FF 655および657は、それぞれセレクタ679の「1」および「0」入力に供給されるiDSO1およびiDSO0信号を出力する。Clk270信号に応答して、iDSO1またはiDSO0が、セレクタ679によって選択され、選択された出力信号が、セレクタ689の「1」入力に供給され、その「0」入力は、D-FF 659の出力信号を受け取る。
PLL_EN信号に応答して、D-FF 687は、セレクタ677またはD-FF 653の出力信号を選択し、選択された出力信号は、出力バッファ691を通じてSCSOi信号として出力される。同様に、PLL_EN信号に応答して、セレクタ689は、セレクタ679またはD-FF 659の出力信号を選択し、選択された出力信号は、出力バッファ693を通じてSDSOi信号として出力される。
図25は、図24A〜24Dに示されているデバイスに対するさまざまな信号を示している。図25に示されている実施例において、PLL_EN信号が「Low」になった場合、PLL 613はオフになり(またはディセーブルされ)、Clk90信号、Clk180信号、Clk270信号、およびClk360信号は、生成されない。ディセーブルされたPLLのデバイスにおける入力データの取り込みは、SCSi信号と基準クロック信号のオーバーラップ期間に実行される。ディセーブルされたPLLのデバイスの間に、クロックの位相シフトはないが、データのホールド時間tHOLDおよびセットアップ時間tSETUPは、以下の関係式によって保証される。
tHOLD=tOUT-tINS+tDTD (1)
tSETUP=tCK×0.5-tHOLD (2)
ただし、tOUTは基準クロックから出力バッファまでの遅延であり、tINSはクロック挿入遅延であり、tDTDはデバイス間遅延であり、tCKはクロック周期である。
上述のように、タイミングマージンは、バッファ経路遅延およびデバイス間距離に応じて変わり、したがって、共通同期クロック構造は、MCPまたはグループ内の内部でしか使用されない。
図26は、図24A〜24Dに示されているデバイスに対するさまざまな信号を示している。特定の実施例において、クロックは中央整列される。実施例では、PLL_EN信号は、論理「High」であり、PLLをオンにするか、またはイネーブルする。
図24A〜24D、25、および26を参照すると、PLL_EN信号が「High」になった場合、PLL 613はオンになり、Clk90信号、Clk180信号、Clk270信号、およびClk360信号が生成される。
共通同期クロック構造とは異なり、ソース同期クロック構造では、図24B〜24Dに示されているような2入力セレクタを使用してクロックとデータ経路との間で90°の位相シフトおよび遅延マッチを持つ再生クロックを供給する。クロックの90°位相シフトとのこの遅延マッチにより、常に、セットアップおよびホールド時間は、DDRオペレーションではtCK×0.25値と同じである。
ハイブリッド同期クロック構造がある。第1のアプローチは、2つのMCPの間にあり、メモリコントローラからのデータを伴う中央整列クロックに基づく。データを伴うエッジ整列クロックに対する他の方法についてここで説明する。データを伴う中央整列クロックの場合、これは、図22および図23A、23Bに示されているように入力データとSCLKIおよび/SCLKI信号との間に不平衡負荷を有する。この不平衡負荷効果(「D」およびCKおよび/CK接続を参照)のせいで、クロックとデータとの間の位相差が、メモリコントローラの開始点から変化する可能性がある。したがって、この代替方法が、それに対する解決策となる。すべての入力データおよび出力は、2つのディセーブルされたPLLコンポーネントの間を除き、クロックとエッジ整列されていると仮定される。
図27は、本発明の一実施形態による他のシステムを示す。システムは、複数(N)のデバイスグループDGP1〜DGPNを備える。このシステムは、データを伴うエッジ整列クロックを有するハイブリッド同期クロック構造を実装する。それぞれのデバイスグループは、図22に示されているMCPベースのシステムのものと同じ構造を有する。図27に示されている特定の実施例では、それぞれのデバイスグループは、PLLを有する4つのデバイスを含む。第1のデバイスのPLLは、オンであり(イネーブルされており)、第2から第4までのデバイスのPLLは、オフになっている(ディセーブルされている)。第1のデバイスは、ソース同期クロック構造でクロック同期され、第2から第4までのデバイスは、第1のデバイスによって出力された再生クロック信号SCLKOおよび/SCLKOにより共通同期クロック構造でクロック同期される。入力データDIおよび一対の入力クロック信号SCLKIおよび/SCLKIは、MCPの入力側において同じ負荷効果を有し、したがって、コントローラから第1のMCPまでの接続負荷に対して同じ位相シフトを容易に保持することができる。
図28は、コントローラとメモリデバイスとの間でやり取りされるさまざまな信号を示している。
データを伴うエッジ整列クロックを形成するために、それぞれのMCPの最後のコンポーネントは、次のMCPにクロックを供給する。PLLまたはDLLがない場合、データを伴うエッジ整列クロックは、出力クロックと出力データとの間の遅延経路マッチにより実装できる。
図29Aは、ハイブリッド同期クロック構造のインターフェースを有する1つのデバイスの他の実施例を示している。
図示されている実施例において、さまざまな入力信号(例えば、SCLKIi、/SCLKIi、SCSIi、SDSIi信号)およびデータDIiが、1つのデバイスに入力され、さまざまな出力信号(例えば、SCLKOi、/SCLKOi、SCSOi、SDSOi信号)およびデータDQiが、1つのデバイスから出力される。図29Aを参照すると、デバイスは、PLLを備えるクロックI/O回路701、データI/O回路703、ストローブI/O回路705、およびメモリコア回路707を含む制御回路を備えることがわかる。クロックI/O回路701は、SCLKIi、/SCLKIi信号およびPLL_EN信号を受け取る。クロックI/O回路701は、2つの内部生成クロック信号Clk_en1およびClk_en2(これ以降、「Clk_en1クロック信号」および「Clk_en2クロック信号」とそれぞれ称する)をデータI/O回路703およびストローブI/O回路705に出力する。基準電圧信号SVREFは、データI/O回路703およびストローブI/O回路705に供給される。データI/O回路703は、入力データDIi[0:3]を受け取って、出力データDQi[0:3]を供給する。ストローブI/O回路705は、SCSIi、SDSIi信号を受け取って、SCSOi、SDSOi信号を出力する。制御回路707は、内部コマンドストローブ入力信号iCSI1および内部データストローブ入力信号iDS1をストローブI/O回路705から受け取り、データI/O回路703から書き込むべきデータを受け取る。制御回路707は、リードデータをデータI/O回路703に供給する。
メモリコア回路707を伴う制御回路の構造は、図18Bに示されているメモリコア回路407を伴う制御回路の構造と類似している。制御回路707は、IDマッチおよびデータリードコマンドがある場合に論理「High」の活性化信号を供給する。
図29Bは、図29Aに示されているクロックI/O回路701の詳細を示している。図29Aおよび29Bを参照すると、SCLKOiおよび/SCLKOi信号が、入力バッファ711に入力され、次いで、これにより、基準クロック信号Ref_clkが発振器を含むPLL 713の入力に供給されることがわかる。また、PLL_EN信号は、PLL 713のイネーブル入力「PLL_EN入力」に供給される。PLL 713は、基準クロック信号Ref_clkに関して、90°、180°、270°、および360°の4つの位相シフトされたクロック信号を発生する。Clk90信号、Clk180信号、Clk270信号、およびClk360信号は、PLL 713によって、各バッファ714-1、714-2、714-3、および714-4を通して供給される。360°位相シフトクロック信号Clk360は、PLL 713の発振入力「Osc_loop入力」に供給される。
基準クロック信号Ref_clkおよび90°位相シフトクロック信号Clk90信号は、それぞれ、セレクタ715の「0」および「1」入力に供給され、その選択入力は、PLL_EN信号を受け取る。セレクタ715からの選択された信号は、Clk_en1クロック信号として供給される。基準クロック信号Ref_clkおよびバッファ755からの遅延バージョンのClk-dlyは、それぞれ、セレクタ725の「0」および「1」入力に供給され、PLL_EN信号に応答してセレクタ725によって選択される。セレクタ725からの選択されたクロックは、Clk_en2クロック信号として供給される。
基準クロック信号Ref_clkは、セレクタ717の「0」入力にも供給され、その「1」入力と選択入力は、プルダウンされ(論理「0」)、したがって、セレクタ717は、常に、「0」入力の信号を選択し、その結果、基準クロック信号Ref_clkは、そこから選択された出力信号となる。セレクタ717の選択された出力信号は、セレクタ719および720の選択入力に供給される。セレクタ719の「0」および「1」入力には、それぞれ、論理「0」および「1」を与えられる。セレクタ720の「0」および「1」入力には、それぞれ、論理「1」および「0」を与えられる。セレクタ719および720からの選択された出力信号は、出力バッファ721および723を通して、それぞれ、SCLKOiおよび/SCLKOi信号として供給される。
図29Cは、図29Aに示されているデータI/O回路703の詳細を示している。図29Aおよび29Cを参照すると、基準電圧信号SVREFが、入力バッファ(コンパレータ)727の「-」入力に供給されることがわかる。入力データDIi[0:3]は、入力バッファ725の「+」入力に供給され、その出力信号<0:3>は、それぞれ、Clk_en1クロック信号およびその反転バージョンの信号でクロック同期するD-FF 761および763のデータ入力Dに供給される。この実施例では、D-FF 763のデータラッチオペレーションは、D-FF 761のオペレーションからClk_en1クロック信号の位相に関して180°シフトされる。デバイスは、4ビットデータ経路を有しているけれども、単一ビットのみに対する回路が示されている。データを処理する回路要素のそれぞれは、実際のデバイス内で4回複製される。D-FF 761の4ビット出力データDin1[0:3]は、ビット4、5、6、および7を含み、セレクタ765の「0」入力に供給される。同様に、D-FF 763の4ビット出力データDin2[0:3]は、ビット0、1、2、および3を含み、セレクタ767の「0」入力に供給される。セレクタ765および767は、セレクタ765および767の選択入力に供給される「活性化」信号に従って選択オペレーションを実行する。特定の実施例において、活性化信号は、ID一致がない場合に論理「Low」である。IDマッチがあるときに、データリードおよびデータライトの場合に、活性化信号は、それぞれ、「High」および「Low」である。活性化信号に応答して、セレクタ765および767からの内部的に選択された出力データDo1[0:3]およびDo0[0:3]は、それぞれ、セレクタ773の「0」および「1」入力に供給され、その選択入力は、クロックI/O回路701からClk_en2を受け取る。セレクタ773からの選択された出力データ<0:3>は、出力バッファ775を通じて出力データDQi[0:3]として供給される。
図29Dは、図29Aに示されているストローブI/O回路705の詳細を示している。図29Aおよび29Dを参照すると、基準電圧信号SVREFが、入力バッファ(コンパレータ)737および739の「-」入力に供給され、その「+」入力は、それぞれSCSIiおよびSDSIi信号を受け取ることがわかる。入力バッファ737および739の出力信号は、D-FF 741、781、および743、783のD入力に供給される。Clk_en1クロック信号は、それぞれ、D-FF 741および743のクロック入力およびD-FF 781および783の反転クロック入力に供給される。D-FF 741および743は、それぞれ、Clk_en1クロック信号に応答してiCSI1およびiDSI1信号を出力し、これらは制御回路707に供給される。iCSI1およびiDSI1信号は、それぞれ、セレクタ791および793の「0」入力に供給される。追加の内部コマンドストローブおよびデータストローブ入力信号iSCSI2およびiSDSI2は、D-FF 781および783から、それぞれ、セレクタ791および793の「1」入力に供給される。Clk_en2クロック信号は、セレクタ791および793の選択入力に供給される。セレクタ791は、Clk_en2クロック信号に応答して、iCSI1信号またはiCSI2信号を選択し、セレクタ791からの選択された出力信号は、出力バッファ751を通じてSCSOi信号として供給される。セレクタ793は、Clk_en2クロック信号に応答して、iDSI1信号またはiDSI2信号を選択し、セレクタ793からの選択された出力信号は、出力バッファ753を通じてSDSOi信号として供給される。
メモリコア回路707を備える制御回路は、図18Bのものと同じ構造を有する。
図29A〜29Dを参照すると、ライトオペレーション(活性化信号が論理「0」である)、D-FF 761および763からラッチされたデータ、Din1[0:3](つまり、ビット4、5、6、および7)ならびにDin2[0:3](つまり、ビット0、1、2、および3)は、ライトレジスタ795に書き込まれることがわかる。IDマッチ判定の後、8ビット(ビット0〜7)の書き込まれたデータは、制御回路707に供給され、その中に含まれるコアセルに書き込まれたデータを格納する。通常オペレーションのリードオペレーション(活性化信号が論理「1」である)では、IDマッチ判定後に、制御回路707は、その中のデータストア要素にアクセスし、データを読み出し、その読み出されたデータは、リードレジスタ797内に書き込まれる。書き込まれたデータは、Rout1[0:3](ビット4、5、6、および7)ならびにRout2[0:3](ビット0、1、2、および3)として、それぞれ、セレクタ765および767によって選択され、最終的に、出力データDQi[0:3]が次のメモリデバイスに供給される。リードオペレーションでは、D-FF 761および763からラッチされたデータ、Din1[0:3](つまり、ビット4、5、6、および7)ならびにDin2[0:3](つまり、ビット0、1、2、および3)は、ライトレジスタ795に書き込まれない。したがって、8ビット(ビット0〜7)の書き込まれたデータは、制御回路707に供給されない。
図30は、図29A〜29Dに示されているデバイスに対するさまざまな信号を示している。図30は、エッジ整列クロックの事例とともに、ハイブリッド同期クロック構造におけるイネーブルされたPLLデバイスのオペレーションを示している。PLLは、PLL_EN信号が「High」であることによってイネーブルされる。
図29A〜29Dおよび30を参照すると、PLL_EN信号が論理「High」レベルの電圧Vddによって供給されたときに、PLL 713は内部位相シフトされたクロック信号の生成を開始し、そのうちの1つの信号(90°位相シフトされたクロック信号Clk90)が、データI/O回路703のD-FF 761および763を含む回路である、データ入力側で入力データをラッチするために使用されることがわかる。データを伴うエッジ整列クロック信号は、クロックの位相シフトなしではセットアップ時間のマージンがなく、したがって、図29Cよび29Dに示されているように90°位相シフトクロック信号がそれぞれの入力ラッチに供給される必要がある。この場合、出力データ(DQi、SCSOi、およびSDSOi)とSCLKIiおよび/SCLKIi信号との間の位相差は、非常にクリティカルなので、クロックおよび入力データが次のデバイスの入力ラッチ段階に到達するときに、遅延クロック「Clk_dly」を使用して、出力データを送出し、次のデバイスにタイミングマージンを与えるようにする。それぞれのMCPの最後のコンポーネント(またはデバイス)のSCLKOiおよび/SCLKOi信号が、他のMCPに供給され、その一方で、同じMCP内の第1のコンポーネント(またはデバイス)の出力クロックは、同じMCP内への共通クロッキングの方法で他のコンポーネントに接続される。
PLL_EN信号が論理「Low」(Vss)である場合、PLL 713は、ディセーブルされ、基準クロック信号Ref_clkは、入力データをラッチし、出力データをエッジ整列クロッキングを有する次のコンポーネントに伝送するために使用される。クロックと出力データとの間の遅延経路のマッチングを行うので、クロックと出力データのエッジ整列が達成される。次のコンポーネントにおいて、入力データは、図31に示されているように、2つのコンポーネントの間の1サイクル遅延でSCLKOiおよび/SCLKO信号によって取り込まれる。図31は、デバイスに対するさまざまな信号を示している。図31は、エッジ整列クロックの事例とともに、ハイブリッド同期クロック構造におけるディセーブルされたPLLデバイスのオペレーションを示している。PLLは、PLL_EN信号が「Low」であることによってディセーブルされる。
混合クロッキングを使用すると、PLLにおける消費電力を低減することができ、MCPおよびグループ化されたデバイスの高速オペレーションが可能になる。
完全ソース同期クロック構造を実装する第2の代替手段は、ハイブリッド同期クロッキングを有さない。
ソース同期クロック構造のみを使用することで、PLLにおける電力消費を低減する手段がある。交互のPLLのオン/オフ(またはオフ/オン)オペレーションを使用して、データの取り込みおよび伝送を実現することができる。この場合、ソース同期クロック構造だけが、前の2つの事例と異なる完全な速度性能を得ることができるように考慮される。また、他の利点として、これを、MCPに限定されない、リング型接続システムを含むグループ化されたすべての接続システムに適用できるという点が挙げられる。単一コンポーネントパッケージでは、これは、前の2つの事例のような制限なしで適用することができる。
図32は、完全ソース同期クロック構造を備えるシステムの一実施例を示している。図示されている実施例では、システムは、14個のデバイス799-1〜799-14を備え、それぞれがPLLを有している。デバイスのそれぞれは、バイナリコードである関連するIDを保持するためのIDレジスタを有する。この特定の実施例において、IDは、4ビット2進数である。デバイス799-1〜799-14へのID割り当てはないので、それらのIDレジスタは、初期ID(つまり、「0000」)を保持する。それぞれのデバイスのPLL_EN信号は、初期ID(つまり、「0」)のLSBに従って論理「High」である。したがって、すべてのデバイスのPLLはイネーブルされる(「オン」)。
図33Aは、エッジ整列クロックと中央整列クロックを交互に切り替える、完全ソース同期クロック構造とともに、直列接続されている複数のデバイスの一実施例を示している。特定の実施例において、システムは、データとともにエッジ整列クロックを使用する。図33Aを参照すると、初期モードでは、デバイス799-1〜799-14は、それぞれ、ID番号「0000」〜「1101」を割り当てられることがわかる。それぞれのデバイスのPLL_EN信号は、そのデバイスに割り当てられたIDのLSBに従って論理「High」または「Low」である。図33Aに示されている特定の実施例において、第1、第3、...のデバイスのLSBは、「0」であり、それらのPLL_EN信号は、論理「High」である。第2、第4、...のデバイスのLSBは、「1」であり、それらのPLL_EN信号は、論理「Low」である。
図33Bは、中央整列クロックとエッジ整列クロックを交互に切り替える、ソース同期クロック構造とともに、直列接続されている複数のデバイスの他の実施例を示している。特定の実施例において、システムは、データとともに中央整列クロックを使用する。図33Bを参照すると、初期モードでは、デバイス799-1〜799-14は、それぞれ、ID番号「0000」〜「1101」を割り当てられることがわかる。それぞれのデバイスのPLL_EN信号は、それらのデバイスに割り当てられたIDのLSBに従って論理「Low」または「High」である。この特定の実施例において、第1、第3、...のデバイスのPLL_EN信号は、論理「Low」である。第2、第4、...のデバイスのPLL_EN信号は、論理「High」である。図32、33A、および33Bに示されているシステムのそれぞれにおいて、デバイスの個数Nは、14(偶数)であるが、直列接続されるデバイスの個数に制限はない。図33Aおよび33Bに示されているように、N/2個のデバイスがイネーブルされ(オン)、他のN/2個のデバイスはディセーブルされる(オフ)。
図34Aは、完全ソース同期クロッキングインターフェースを有する複数のデバイスのうちの1つを示している。図34Aを参照すると、デバイスは、PLLを備えるクロックI/O回路801、データI/O回路803、ストローブI/O回路805、およびメモリコア回路807を含む制御回路を備えることがわかる。クロックI/O回路801は、SCLKI、/SCLKI信号を受け取り、SCLKOi、/SCLKOi信号を出力する。クロックI/O回路801は、2つの内部生成クロック信号Clk_in1およびClk_in2(これ以降、「Clk_in1クロック信号」および「Clk_in2クロック信号」とそれぞれ称する)をデータI/O回路803およびストローブI/O回路805に供給する。基準電圧信号SVREFは、データI/O回路803およびストローブI/O回路805に供給される。データI/O回路803は、入力データDIi[0:3]を受け取って、出力データDQi[0:3]を供給する。ストローブI/O回路805は、SCSIi、SDSIi信号を受け取って、SCSOi、SDSOi信号を出力する。制御回路807は、内部コマンドストローブ入力信号iCSI1および内部データストローブ入力信号iDSI1をストローブI/O回路805から受け取り、データI/O回路803から書き込むべきデータを受け取る。制御回路807は、リードデータをデータI/O回路803に供給する。制御回路807は、PLL_EN信号をクロックI/O回路801、データI/O回路803、およびストローブI/O回路805に供給する。また、制御回路807は、ID割り当て完了信号をクロックI/O回路801に供給する。
図34Bは、図34Aに示されているメモリコア回路807を備える制御回路を示している。図34Aおよび34Bを参照すると、ID割り当て回路371は、初期モードにおいてID割り当ておよびID計算を実行することがわかる。入力IDの番号、つまりIDiが、IDレジスタ372内に登録される。計算結果の数(つまり、IDi+1)は、デバイスiによって出力IDoとして次のデバイスに供給される。IDレジスタ372は、割り当てられたIDを保持する。
IDレジスタ372は、割り当てられたIDiのLSB(最下位ビット)の論理状態を表す1ビット信号374をインバータ376に供給し、その反転された出力信号はPLL_EN信号として出力される。したがって、PLL_EN信号は、割り当てられたIDiのLSBの「0」または「1」に応答して論理状態「High」または「Low」を有する。また、ID割り当て回路371は、ID割り当ての完了後にID割り当て完了信号379を出力する。初期モードでは、IDレジスタ372が最初にリセットされ、すべてのIDレジスタ372は「0」である。したがって、PLL_EN信号は、論理「High」であり、すべてのデバイスのPLLは、図32に示されているようにイネーブルされる(オン)。IDの登録後、偶数のIDのLSBに応答して、PLL_EN信号は「High」になり、奇数のIDのLSBに応答して、PLL_EN信号は「Low」になる。図33Aに示されているように、「High」のPLL_EN信号に応答して、第1、第3、第5、...のデバイスのPLLはイネーブルされ(オン)、「Low」のPLL_EN信号に応答して、第2、第4、...のデバイスのPLLはディセーブルされる(オフ)。
これ以降、通常モードにおいて、図6に示されているようなフォーマットを有するコマンドは、IDマッチ判定器373およびコマンドインタプリタ375に供給される。IDマッチ判定器373は、入力ID番号がIDレジスタ372内に保持されている割り当て済みIDとマッチするかどうか、もしマッチしていれば、供給されるIDマッチ信号が論理「High」になる。マッチがない場合、IDマッチ信号は論理「Low」になる。OPコード復号器を備えるコマンドインタプリタ375は、入力コマンドに含まれるOPコードを復号化し、「High」レベルのID一致信号に応答して、解釈されたコマンド(例えば、ライト、リード)を供給する。解釈されたコマンドおよびID一致信号に応答して、モード信号生成器377が、「活性化」信号を供給する。特定の実施例において、活性化信号は、IDマッチがないときに論理「Low」となり、IDマッチがあるときに論理「High」となり、OPコードは「リード」である(つまり、そのコマンドはデータリードコマンドである)。解釈されたコマンドに応答して、例えば、データストレージまたはメモリ要素(図示されていない)を有するメモリコア回路378にデータが書き込まれるか、またはそのメモリコア回路378からデータが読み出される。メモリコア回路378は、内部コマンドストローブ入力信号iCSI1および内部データストローブ入力信号iDSI1をストローブI/O回路805から受け取る。
図34Cは、図34Aに示されているクロックI/O回路801の詳細を示している。図34Aおよび34Cを参照すると、PLL_EN信号は、PLL 813に供給されることがわかる。SCLKIiおよび/SCLKIi信号は、入力バッファ811の「+」および「-」入力に供給され、次いで、これにより、基準クロック信号Ref_clkがPLL 813の基準クロック入力「Ref_clk入力」に供給されることがわかる。PLL 813は、発振器を備え、それぞれバッファ814-1、814-2、814-3、および814-4を通じて入力基準クロック信号Ref_clkに関して、90°、180°、270°、および360°だけ位相シフトされた4つのクロック信号を生成する。Clk90、Clk180、Clk270、およびClk360によって参照される90°、180°、270°、および360°の4つの位相シフトされたクロック信号は、これ以降、「Clk90信号」、「Clk180信号」、「Clk270信号」、および「Clk360信号」とそれぞれ称される。Clk360信号は、PLL 813の発振入力「Osc_loop入力」に供給される。Clk360信号、基準クロック信号Ref_clk、およびPLL_EN信号が、それぞれ、セレクタ817の「1」、「0」、および選択入力に供給され、その出力信号は、セレクタ819および820の選択入力に供給される。
セレクタ819の「0」および「1」入力は、それぞれ、論理「0」および「1」信号を受け取る。セレクタ820の「0」および「1」入力は、それぞれ、論理「1」および「0」信号を受け取る。セレクタ819の出力信号は、出力バッファ821を通じてSCLKOi信号として供給される。同様に、セレクタ820の出力信号は、出力バッファ823を通じて/SCLKOi信号として供給される。したがって、SCLKOiおよび/SCLKOi信号は、180°位相外れの相補差動クロック信号である。
ID割り当て完了信号379およびPLL_EN信号は、ANDゲート853に供給され、その論理出力信号は、セレクタ815の選択入力に供給される。基準クロック信号Ref_clkおよびClk90信号は、それぞれ、セレクタ815の「0」および「1」入力に供給され、その選択出力信号は、Clk_in1クロック信号として供給される。また、PLL_EN信号は、セレクタ824の選択入力に供給され、「1」および「0」入力は、Clk270信号および基準クロック信号Ref_clkをそれぞれ受け取る。セレクタ824からの選択された出力信号は、Clk_in2クロック信号として供給される。
図34Dは、図34Aに示されているデータI/O回路803を示している。図34Aおよび34Dを参照すると、基準電圧信号SVREFが、入力バッファ825の「-」入力に供給されることがわかる。入力データDIi[0:3]は、入力バッファ825の「+」入力に供給され、その出力データ<0:3>は、それぞれClk_in1クロック信号の正のエッジと負のエッジでクロック同期するD-FF 861および863のデータ入力「D」に供給され、これによりDDRデータを取り込む。デバイスは、4ビットデータ経路を有しているけれども、単一ビットのみに対する回路が示されている。データを処理する回路要素のそれぞれは、実際のデバイス内で4回複製される。D-FF 861の4ビット出力Din1[0:3]は、ビット4、5、6、および7を含み、セレクタ865の「0」入力に供給される。同様に、D-FF 863の4ビット出力Din2[0:3]は、ビット0、1、2、および3を含み、セレクタ867の「0」入力に供給される。セレクタ865および867は、その選択入力に供給される「活性化」信号に従って選択オペレーションを実行する。セレクタ865および867からの選択された出力信号は、内部データラッチオペレーションに対し、それぞれ、Clk_in1の負のエッジと正のエッジでクロック同期されたD-FF 881および883のデータ入力Dに供給される。
セレクタ865からの内部的に選択された出力データDo1[0:3]およびD-FF 881の内部的にラッチされている出力データDo1_d[0:3]は、それぞれ、セレクタ885の「1」および「0」入力に供給される。セレクタ867からの内部的に選択された出力データDo0[0:3]およびD-FF 883の内部的にラッチされている出力データDo0_d[0:3]は、それぞれ、セレクタ887の「1」および「0」入力に供給される。セレクタ885および887の選択入力は、PLL_EN信号を受け取る。セレクタ885の選択された出力データ<0:3>は、セレクタ888の「1」入力に供給され、セレクタ887の選択された出力データ<0:3>は、セレクタ888の「0」入力に供給され、その選択入力は、内部クロック信号Clk_in2を受け取る。内部クロック信号Clk_in2に応答して、セレクタ888の選択された出力データ<0:3>は、出力バッファ890を通じて出力データDQi[0:3]として供給される。
ライトオペレーションでは、D-FF 861および863からラッチされたデータ、Din1[0:3](つまり、ビット4、5、6、および7)ならびにDin2[0:3](つまり、ビット0、1、2、および3)は、ライトレジスタ895に供給される。リードオペレーションでは、メモリコア回路807を備える制御回路は、その中のデータストア要素にアクセスし、データを読み出し、その読み出されたデータは、リードレジスタ897内に書き込まれる。リードデータは、Rout1[0:3](ビット4、5、6、および7)ならびにRout2[0:3](ビット0、1、2、および3)として、それぞれ、セレクタ865および867によって選択され、最終的に、出力データDQi[0:3]が次のメモリデバイスに供給される。
図34Eは、図34Aに示されているストローブI/O回路805を示している。図34Aおよび34Eを参照すると、基準電圧信号SVREFが、入力バッファ(コンパレータ)827および829の「-」入力に供給されることがわかる。SCSIiおよびSDSIi信号は、それぞれ、入力バッファ827および829の「+」入力に供給される。入力バッファ827の出力信号は、D-FF 831および835のD入力に供給される。入力バッファ829の出力信号は、D-FF 833および837のD入力に供給される。Clk_in1クロック信号は、D-FF 831および833のクロック入力およびD-FF 835および837の反転クロック入力に供給される。
D-FF 831および833は、Clk_in1クロック信号の正のエッジに応答してラッチオペレーションを実行する。D-FF 835および837は、Clk_in1クロック信号の負のエッジに応答してラッチオペレーションを実行する。したがって、D-FF 835、837のラッチオペレーションは、Clk_in1クロック信号の180°位相シフトされたものである。D-FF 831および833は、制御回路807に供給される内部コマンドストローブ入力信号iCSI1(これ以降、「iCSI1信号」と称する)および内部データストローブ入力信号iDSI1信号(これ以降、「iDSI1信号」と称する)を出力する。D-FF 835および837は、他の内部コマンドストローブ入力信号iCSI2(これ以降、「iCSI2信号」と称する)および他の内部データストローブ入力信号iDSI2信号(これ以降、「iDSI2信号」と称する)を出力する。
iCSI1およびiDSI1信号は、それぞれD-FF 862および864のD入力に供給され、その出力は、Clk_in1クロック信号の負のエッジでクロック同期される。iCSI2およびiDSI2信号は、それぞれD-FF 866および868のD入力に供給され、その出力は、Clk_in1クロック信号の正のエッジでクロック同期される。iCSI1信号およびD-FF 862からの出力信号iCSI1_dは、セレクタ871の「1」および「0」入力に供給される。iCSI2信号およびD-FF 866からの出力信号iCSI2_dは、セレクタ873の「1」および「0」入力に供給される。iDSI1信号およびD-FF 864からの出力信号iDSI1_dは、セレクタ875の「1」および「0」入力に供給される。iDSI2信号およびD-FF 868からの出力信号iDSI2_dは、セレクタ877の「1」および「0」入力に供給される。PLL_EN信号は、セレクタ871、873、875、および877の選択入力に供給される。セレクタ871および873の選択された出力信号は、それぞれ、セレクタ891の「1」および「0」入力に供給される。セレクタ875および877の選択された出力信号は、それぞれ、セレクタ893の「1」および「0」入力に供給される。Clk_in2クロック信号は、セレクタ891および893の選択入力に供給される。セレクタ891からの選択された出力信号は、出力バッファ843を通じてSCSOi信号として供給される。セレクタ893からの選択された出力信号は、出力バッファ851を通じてSDSOi信号として供給される。
図35Aは、図34A〜34Eに示されているデバイスに対するさまざまな信号を示している。図34A〜34Eおよび35Aを参照すると、割り当てられたIDのLSBが「0」である場合、IDレジスタ372からの出力信号374は、論理「Low」であり、インバータ376の出力信号は、論理「High」であり、その結果、PLL_EN信号は論理「High」となる。割り当てられたIDのLSBが「1」である場合、IDレジスタ372からの出力信号374は、論理「High」であり、PLL_EN信号は、論理「Low」である。PLL_EN信号が論理「High」または「Low」であることに応答して、PLL 813は、ディセーブルまたはイネーブルされる。
デバイスIDを割り当てる前に、すべてのメモリコンポーネントは、デフォルト値として「0000」のID番号を有する。したがって、すべてのコンポーネント(またはデバイス)のすべてのPLLはイネーブルされ、これにより、図32に示されているようにすべてのPLLがオンにされている状況でID割り当てオペレーションを開始することができる。PLLがオンである(イネーブルされている)か、またはオフであるか(ディセーブルされている)かを判定するために、IDのLSBが使用される。LSBが「0」である場合、これはPLLをオンにする。そうでなければ、LSBが「1」に等しい場合、これはPLLをオフにする。
中央整列クロッキングとエッジ整列クロッキングとの切り替えは、パワーアップシーケンスのオペレーションの際に数百サイクルを必要とする。しかし、これは、コンポーネントのオペレーションの実際の実行には影響を及ぼさない。また、最後のデバイスのID番号(つまり、リング型接続に加わっているコンポーネント(またはデバイス)の総数)に応じて、最後の出力は、データを伴うエッジ整列クロックであるか、またはデータを伴う中央整列クロックとすることができる。
パワーアップシーケンスにおいて、デバイスアドレス(DA)またはデバイス識別(ID)割り当てオペレーションは、PLLがイネーブルされているそれぞれのデバイス内へ自動的に実行されうる。したがって、このオペレーションについては、すべてのコンポーネントにおいてPLLがオンにされているとしても、それぞれのコンポーネントの入力側は、ID割り当て完了信号379の論理ゼロ状態によって図34Cに示されているような90°位相シフトされたクロック信号の代わりに基準クロック信号Ref_clkを有する。入力データはすでにメモリコントローラからデータを伴う中央整列クロックを有しており、前のコンポーネント(またはデバイス)はデータを伴う中央整列クロックを発生するからである。このような免除は、ID割り当て前にしか生じない。これは、ID割り当て完了信号379によって制御される。これが「Low」である場合、「Ref_clk」に接続されている「0」入力がイネーブルされる。これが「High」である場合、90°位相シフトされたクロックに接続されている「1」入力がイネーブルされる。メモリコントローラにおける中央整列クロックとエッジ整列クロックとの間のタイミング関係の制御で、このソース同期の方法をサポートする必要がある。すべてのオンになっているPLLの事例と比較すると、これにより、すべてのPLLがオンである事例と比較したときに消費電力が50%減少することがわかる。メモリコントローラにおける中央整列クロックとエッジ整列クロックとの間の制御の例は、2008年11月28日に出願した米国特許出願第12/325,074号において開示されている。
図36Aは、図34Aに示されているメモリコア回路807を備える制御回路の他の実施例を示している。図34Aおよび36Aを参照すると、ID割り当て回路391は、初期モードにおいてID割り当ておよびID計算を実行することがわかる。入力IDの番号、つまりIDiが、IDレジスタ392内に登録される。計算結果の数(つまり、IDi+1)は、デバイスiによって出力IDoとして次のデバイスに供給される。IDレジスタ392は、割り当てられたIDを保持する。
IDレジスタ392は、割り当てられたIDiのLSBの論理状態を表す1ビット信号394をインバータ396に供給し、その反転された出力信号はNANDゲート395に供給される。ID割り当て回路391は、ID割り当て完了信号399をNANDゲート395に供給し、その論理出力信号は、PLL_EN信号として供給される。PLL_EN信号およびID割り当て完了信号399は、ANDゲート853に供給される。また、PLL_EN信号は、PLL 813、ANDゲート853、およびセレクタ817、824に供給される。
これ以降、通常モードでは、図36Aに示されている制御回路は、図34Bに示されている制御回路807のものと似たオペレーションを実行する。
図37Aは、PLLがイネーブルされている図34A、34C〜34Eおよび36に示されているデバイスのタイミング図である。図37Bは、PLLがディセーブルされている図34A、34C〜34Eおよび36に示されているデバイスのタイミング図である。
図34A、34C〜34E、および37A、37Bを参照すると、PLL 813がオンにされると、入力データは、入力段階で90°位相シフトされたクロックでラッチされる。SCSOiおよびSDSOi信号およびDQi[0:3]などの出力信号は、90°の位相差でセンタリングされたクロックと整列される。このシフトされたクロックによって、次のデバイスは、PLLからのクロック位相変更なしで、入力データを取り込むことができる。つまり、この完全ソース同期クロック構造において、交互のPLLのオン(イネーブル)およびオフ(ディセーブル)が可能である。
図34A〜34E、36Aおよび36Bに示されているデバイスを有するシステムでは、ディセーブルされたPLLを有するデバイスから、エッジ整列出力データを供給し、次いで、これを、前のデバイスに接続されているイネーブルされたPLLを有する次のデバイス内で再整列する。2つのタイミング関係(例えば、図35A、35B、および37A、37Bに示されている)は、完全ソース同期クロック構造内で繰り返される。
例えば、コントローラおよび接続されている複数のデバイスを有すシステムでは、それらのデバイスは、ソース同期方法などの同期方法でクロック同期される。ソース同期クロック構造は、PLLジッターおよび位相誤差がきちんと制御される場合に、共通同期クロック構造と比べて高い周波数動作範囲、例えば、800MHzを超える周波数動作範囲をもたらしうる。これらの理由から、より高いデータリードおよびライト範囲および帯域幅を形成するために直列接続されたメモリを有するシステムにおいて、ソース同期クロック構造が採用される。
クロッキングシステムでは、例えば、システムが適切に設計され、PLLジッターおよび位相誤差がきちんと制御される場合に、共通同期クロッキングシステムの動作範囲と比べて高い周波数動作範囲を利用できる。
図38は、ソース同期クロッキング方法で、直列接続されている複数のデバイスおよびメモリコントローラ1410を有するシステムの他の実施例を示している。ソース同期クロッキング方法の一例は、2007年2月16日に出願した「Non-Volatile Memory System」という表題の米国仮特許出願第60/902,003号および国際公開第WO/2008/109981号(2008年9月18日)においてさらに詳しく説明されている。このシステムは、Nを1より大きい整数とする、直列接続された複数の(N個の)デバイス1420-1、1420-2、...1420-Nを備える。
図38に示されている特定の実施例において、メモリコントローラ1410は、データ/アドレス/コマンド用のデータ出力接続DOC[0:7]、コマンドストローブ出力接続CSOC、データストローブ出力接続DSOC、チップイネーブル出力接続/CEC、基準電圧接続VREFC、およびリセット出力接続/RSTCを有する。また、メモリコントローラ1410は、一対のクロック出力接続CKOCおよび/CKOCを有する。デバイスのそれぞれは、データ入力D、コマンドストローブ入力CSI、データストローブ入力DSI、リセット入力/RST、チップイネーブル入力/CE、および一対のクロック入力CKおよび/CKを有する。また、デバイスのそれぞれは、データ出力Q、コマンドストローブ出力CSO、データストローブ出力DSOを有する。1つのデバイスのデータ出力Q、コマンドストローブ出力CSO、およびデータストローブ出力DSOは、それぞれ次のデバイスのデータ入力D、コマンドストローブ入力CSI、およびデータストローブ入力DSIに結合される。デバイス1420-1〜1420-Nは、チップイネーブル信号「/CE」、リセット信号「/RST」、および基準電圧「Vref」を、並列方式でメモリコントローラ1410から受け取る。データは、シリアルデータまたはパラレルデータとして供給され、伝送されうる。
メモリコントローラ1410のデータ出力DOC[0:7]は、入力データDI1[0:7]を第1のデバイス1420-1のデータ入力Dに供給する。第1のデバイス1420-1は、出力データDO1[0:7]を第2のデバイス1420-2に供給する。第2のデバイス1420-2は、出力データDO1[0:7]を、第1のデバイス1420-1から伝送されたその入力データDI2[0:7]として受け取る。他のデバイスのそれぞれも同じ機能を実行する。
1つのデバイスのコマンドストローブ入力CSIおよびデータストローブ入力DSIは、CSI信号およびDSI信号をそれぞれ受け取る。また、1つのデバイスのコマンドストローブ出力CSOおよびデータストローブ出力DSOは、CSO信号およびDSO信号をそれぞれ次のデバイスに伝送する。そのデータ転送は、それぞれのデバイスにおけるコマンドストローブ入力信号およびデータストローブ入力信号によって制御される。これらのデバイスのそれぞれは、CSI信号およびDSI信号の遅延バージョンの信号、CSO信号およびDSO信号を次のデバイスに供給する。データおよびCSI、DSIの転送は、クロック信号CKおよび/CKに応答して実行される。
直列接続されたデバイスを特徴とするアーキテクチャの詳細例は、米国特許出願第2007/0076502号(2007年4月5日)、および国際公開第WO/2007/036048号に取りあげられている。直列接続されたデバイスを特徴とするアーキテクチャの他の詳細例は、国際公開第WO/2008/067652号および国際公開第WO/2008/022454号に取りあげられている。
最後のデバイス(メモリデバイス1420-N)は、出力データDO[0:7]、コマンドストローブ出力信号CSO、データストローブ出力信号DSO、および一対の出力クロック信号CKOおよび/CKOを、それぞれ、メモリコントローラ1410の各受け取り側接続DIC、CSIC、DSIC、ならびにCKICおよび/CKICに供給する。
図39は、直列接続されている複数のデバイスを備えるソース同期クロッキングシステムの一実施例を示している。このシステムは、コントローラ出力信号1510を生成するコントローラ(図示されていない)およびNを整数とする、直列接続された複数のデバイス1520-1、1520-2、...1520-Nを備える。図39の実施例では、デバイス1520-1、1520-2、...、1520-Nのそれぞれは、PLL 1522をクロック再整形器として備える。図39では、すべてのデバイスのPLL 1522は、デバイス識別子(ID)割り当ての前にオンになっている。PLL 1522は、入力されたクロックのタイプに関係なく、クロックを再整形し、これにより、それぞれのデバイスがそれ専用のクロックを生成する。PLL 1522は、デバイス1520-1、1520-2、...、1520-Nのそれぞれをイネーブルして、より明瞭な、または良好なクロック信号を次のデバイスに送る。生成されたクロック信号を使用することで、出力が同期化されて送出信号1530内に入れられ、コントローラに送られる。すべての入力および出力は、デバイスの内部PLL 1522によって制御される。
コントローラ出力信号1510は、第1のデバイス1520-1に関して受信信号とみなされ、直列接続されているメモリデバイスの第1のデバイス1520-1に伝送される。差動クロック、CKおよび/CKは、PLL 1522に入力される内部基準クロックを作るために使用される。次いで、90°位相シフトされたクロックが、位相シフトされたクロックのデューティサイクル補正と併せて供給される。次いで、PLLによる追加のデータまたはクロック再整形なしでデータ取り込みが入力段階において実行されるようにコントローラからすでに中央整列されている入力クロックでデータが取り込まれる。PLL 1522を使用して、内部クロックを再生し、入力クロック信号CKおよび/CKから90°のクロックシフトで送出データを供給する。したがって、ソース同期クロックシステム上のすべてのデバイスは、出力データとともに中央整列クロックを生成する。
第1のデバイス1520-1内のPLL 1522は、クロックを生成して、それを第2のデバイス1520-2に送る。第1のデバイス1520-1の読み出し結果(それがデータリードオペレーションであった場合)、または受信データの通過(それが転送オペレーションであった場合)は、90°シフトされたクロックの出力とともに第2のデバイス1520-2に伝送される。第2のデバイス1520-2は、入力クロックを受け取り、また、第1のデバイス1520-1から受け取った入力クロックに基づき新しいクロックを生成する。例えば、第2のデバイス1520-2は、第1のデバイス1520-1から通過データを受け取るか、または受信データと中央整列されたクロックとともに第1のデバイスの読み出し結果を受け取る。この流れによって、データは、第1のデバイス1520-1から最後のデバイス1520-Nへと通過し、複数の直列接続されたメモリデバイスから送出データ1530を供給するが、これはコントローラによってコントローラ入力データとみなされる。
再整形されたクロック信号を使用することで、出力が同期化され、送出信号1530でコントローラに送られる。この場合、クロックも送られ、これにより、どれが有効な出力点であるかを判定する。一組の直列接続されたメモリデバイスの入力および出力におけるCKおよびCKO信号の位相は、異なる。周波数は、PLLが使用されるとしても変化しないため、同じままである。この実施例では、PLLは、移相器としてのみ使用される。図39の実施例では、CKOおよび/CKO信号が、DO信号とともにコントローラに送られるか、または返される。他の実施例では、DOは、他のコントローラに送ることができる。並列クロッキングと異なり、出力およびクロック信号は、入力端に無関係である。
PLL 1522がない場合、クロックには単純なドライバが備えられ、多数の接続デバイスの出力のところで、デューティサイクルが修正されるか、または歪みを生じうる。実際、接続デバイスが多数ある場合、クロックは劣化して定常信号になる可能性がある。ダブルデータレート(DDR)がますます普及するにつれ、デューティサイクルが重要になってきており、クリティカルである場合すらある。PLLを使用するうえでの短所は、消費電力が大きくなる場合があることである。低電力のPLLを備えるデバイスであっても、PLLを備えないものと比べると消費する電力は大きい。しかし、PLLは、高周波オペレーションを確実なものとするために必要である。
例えば、PLLは、メモリデバイスの総消費電力の約10%を占めることがある。デバイスが使用する電力が25mWであると仮定すると、PLLは2.5mWを占める。10個のデバイスを備えるシステムでは、PLLによる総消費電力は、デバイス全体の消費電力と同じである。したがって、本発明の実施形態では、同じ消費電力閾値の範囲内でより多くのデバイスを使用することができる。
本発明のいくつかの実施形態は、図38または図39に示されているようなシステムにおけるソース同期クロッキング方法の背景状況において実装されうるメモリコントローラを備える。そのようなシステムのいくつかの実施形態では、オペレーション中、初期セットアップ後、および構成段階においてすべての第2のデバイスのPLLのみがオンにされる。
本発明の一実施形態によれば、PLLの最大50%が動作しており、高周波数オペレーションを確実に保ちつつ節電することができる。例えば、3つの直列デバイスを備えるシステムでは、1つのデバイスがオフにされ、2つのデバイスがオンにされている一実施形態はある程度の電力を節約する。他の実施形態では、2つのデバイスをオフにし、1つのデバイスをオンにすることで、交互デバイス内のPLLをオフにする類似の配列構成においてさらなる節電が行われる。他の多くの場合において、デバイスの約50%は、それぞれの交互デバイスをオフにしたときにオフにされる。
交互PLLをオン、オフする前に、動作可能な実装に先行する構成段階におけるデバイスPLLを示す、図39に示されているように、すべてのPLLをオンにする必要がある。これは、ID割り当ての前の状態であるが、それは、この時点では、どのデバイスが奇数番号のデバイスであり、どのデバイスが偶数番号のデバイスであるかが不明だからである。すべてのデバイスIDは、0000に初期設定される。したがって、ID割り当て前状態では、すべてのデバイスは、0000のIDを有し、すべてのデバイスのPLLは、図39に示されているように、オンにされる。
直列接続されたデバイスにおけるID割り当ての例は、国際公開第WO/2007/0109886号(2007年10月4日)、国際公開第WO/2007/0134444号(2007年11月29日)、および国際公開第WO/2008/074126号(2008年6月26日)において開示されている。
ID生成時に、それぞれのメモリデバイスが一意的なID番号を有しているとしても、これは、最後のデバイスがそのIDをコントローラに送るまで中央整列クロックであるクロック形状に影響を及ぼさない。クロックおよびデータのオペレーションの異常を回避するため、それぞれのメモリデバイスおよびコントローラにおけるある一定の待ち時間が考慮される。したがって、ID割り当てに際してはクロックの再整形はない。IDがそれぞれのメモリデバイスに割り当てられた後でも、すべてのPLLがイネーブルされる。最後のデバイスから最終ID番号を取得した後、コントローラは、そのクロックを変更しなければならない場合に、クロックの再整形を開始する。ID割り当てからクロック再整形までの間に、異常動作を防ぐ時間が十分ある。この追加の待ち時間によって、クロックとデータとの間の関係の急激な変化によって引き起こされる異常動作はない。
図39に示されているように、初期セットアップ段階に、デバイスのすべてにおいてPLLがオンにされている間、そのセットアップに要する時間は、デバイスの総動作時間と比べて小さい。一実施例では、総時間の1〜5%未満がセットアップ段階に費やされる。電源のオン、オフが頻繁に繰り返される場合のみでも、セットアップ段階の消費電力はあまり重要でない。
図40Aおよび40Bは、2つの異なる動作可能な実装における交互PLLオン制御を示している。交互PLLオン制御のいくつかの実施例によれば、パワーアップオペレーションの後に、PLL消費電力の約50%が低減されうる。パワーアップオペレーションは、例えば、直列接続されたメモリデバイスのID生成または割り当てを含む。
第1の事例(図40A)と第2の事例(図40B)について異なるクロックが伝送される。図40Aは、デバイスに割り当てられたIDの最下位ビット(LSB)が「0」のときにデバイス(偶数番号のデバイス)のPLLがオンであることを示している。図40Bは、割り当てられたIDのLSBが「1」のときにデバイス(奇数番号のデバイス)のPLLがオンであることを示している。図40Aおよび40Bに示されている特定の実施例では、それぞれのデバイスに割り当てられたデバイスIDは、バイナリコードである。図40Aでは、複数のデバイス1620-1、1620-2、1620-3、1620-4、...、1620-Nが直列接続されている。奇数番号のデバイス1620-1、1620-3、...は、そのPLL 1622がオンにされているが、偶数番号のデバイス1620-2、1620-4、...は、そのPLL 1632がオフにされている。偶数ID番号(「0000」、「0010」、...)を持つデバイスのPLL 1622がオンにされている場合、データを伴う中央整列クロックが、次のデバイスに送られる。奇数ID番号(「0001」、「0011」、...)を持つデバイスのPLL 1632がオフにされている場合、データを伴うエッジ整列クロックが、次のデバイスに送られる。
図40Bにおいて、奇数番号のデバイス1640-1、1640-3、...は、そのPLL 1642がオフにされているが、偶数番号のデバイス1640-2、1640-4、...は、そのPLL 1652がオンにされている。その場合、偶数ID番号(「0000」、「0010」、...)を持つデバイスのPLL 1642がオフにされている場合、データを伴うエッジ整列クロックが、次のデバイスに送られる。また、奇数ID番号(「0001」、「0011」、...)を持つデバイスのPLL 1652がオンにされている場合、データを伴う中央整列クロックが、次のデバイスに送られる。
交互PLL制御アプローチにより、メモリコントローラは、通常のオペレーションの開始前に行われる検出に基づき異なるクロックおよびデータタイミング関係を予期する。
図41Aは、事例1または図40Aに関して説明されているような第1の事例など、直列接続された複数のデバイスのうちの最後のデバイスのID番号によるクロック整列決定の一実施例を示す流れ図である。ステップ1711で、すべてのデバイスの状態がリセットされる。すべてのデバイスのPLLは、図39に示されているようにオンである。ステップ1712で、データを伴う中央整列クロックは、メモリコントローラから送られ、データを伴う中央整列クロックは、最後のメモリコンポーネント(最後のデバイス1620-N)からなど、メモリコントローラで受け取られる。ステップ1713で、直列接続されているデバイス1620-1から1620-N内のそれぞれのデバイスは、一意的な識別子、つまりIDを割り当てられる。例えば、デバイスIDは、順次割り当てることができる。ステップ1714で、メモリコントローラは、最後のデバイス1620-Nに割り当てられたID番号を受け取る。ステップ1715で、メモリコントローラは、最後のデバイスのID番号の最下位ビット(LSB)が「1」であるかどうかを判定する。
図41Aのステップ1716に示されているように、最後のデバイスのIDのLSBが「1」である場合(例えば、「1101」(奇数番号ID):ステップ1715で「はい」)、データを伴うエッジ整列クロックは、メモリコントローラから供給され、データを伴うエッジ整列クロックは、最後のデバイス1620-Nからメモリコントローラに供給される。ステップ1717で、LSBが「0」である場合(例えば、「1100」(偶数番号ID):ステップ1715で「いいえ」)、データを伴うエッジ整列クロックは、メモリコントローラから第1のデバイス1620-1に供給され、データを伴う中央整列クロックは、メモリデバイス(例えば、ID「1100」の割り当て先のデバイス)からメモリコントローラに供給される。
図41Bは、事例2または図40Bに関して説明されているような第2の事例など、直列接続された複数のデバイスのうちの最後のデバイスのID番号によるクロック整列決定の他の実施例を示す流れ図である。ステップ1721で、すべてのデバイスの状態がリセットされる。すべてのデバイスのPLLは、図39に示されているようにオンである。ステップ1722で、データを伴う中央整列クロックは、メモリコントローラから第1のデバイス1640-1に供給され、データを伴う中央整列クロックは、メモリコンポーネント(最後のデバイス1640-N)からなど、コントローラで受け取られる。ステップ1723で、直列接続されているデバイス内のそれぞれのデバイスは、一意的な識別子、つまりIDを割り当てられる。ステップ1724で、メモリコントローラは、最後のデバイス1640-Nに割り当てられたID番号を受け取る。ステップ1725で、メモリコントローラは、受け取ったID番号のLSBが「1」であるかどうかを判定する。ステップ1726に示されているように、最後のデバイスのIDのLSBが「1」である場合(例えば、「1101」:ステップ1725で「はい」)、データを伴う中央整列クロックは、最後のデバイス1640-Nからメモリコントローラに供給される。受け取ったIDのLSBが「0」である場合(例えば、「1100」:ステップ1725で「いいえ」)、ステップ1727で示されるようにデータを伴うエッジ整列クロックは、メモリコンポーネント(例えば、ID「1100」のデバイス)からメモリコントローラに供給される。
図41Bの方法において、特にステップ1726および1727で、メモリコントローラにおける中央整列クロックの使用は、暗黙のうちに行われる。ID番号がリセットされた場合、中央整列クロックがコントローラ内で使用される。このクロックは、ID番号がメモリデバイスに割り当てられてしまうと変更されない。
図41Aの流れ図は、事例1についてのものであり、そこでは、偶数番号LSB(LSB=0)のデバイスのPLLはオンになっている。図41Bの流れ図は、事例2についてのものであり、そこでは、LSB=1であるそれぞれのデバイスについて、PLL=オンである。それぞれの場合に、接続されているデバイスの個数が考慮される。デバイスの個数、および事例に応じて、エッジ整列または中央整列クロックが選択される。この方法のステップでは、直列接続されたデバイスのうちの最後のデバイスに割り当てられたID番号のLSBのみを考慮する。4つの異なる事例があり、コントローラは、それぞれの事例について異なるクロック制御を行う。4つの入力事例に対し2つの異なるオペレーションまたは出力事例、つまり、エッジ整列または中央整列のみがある。
本発明の好ましい実施形態は、複数の直列メモリデバイス内のPLLに対する単一の交互オン/オフパターン(つまり、1つのオン、1つのオフ、1つのオン、1つのオフなど)を含む。他の実施形態では、他のパターンも実装することができるが、高周波オペレーションを行えない場合がある。それぞれのデバイスは、ID割り当て状態、受け取ったID割り当てコマンド、およびデバイスのID番号のLSBに基づいて、そのPLLがオンになっているか、オフになっているかを認識することができる。
デバイスの個数に応じて、クロック整列は異なる。偶数番号のLSBのPLLがオンになっていて、一連のデバイスが偶数個数のデバイスを含む場合、最後のデバイスはエッジ整列クロックを有する。奇数個のデバイスについては、最後のデバイスが中央整列クロックを有する。奇数番号のLSBのPLLがオンになっていて、一連のデバイスが偶数個数のデバイスを含む場合、最後のデバイスは中央整列クロックを有する。奇数個のデバイスについては、最後のデバイスがエッジ整列クロックを有する。したがって、最後のクロック割り当ては、状況に基づいて変更されうる。
図42は、例示的なパワーアップシーケンスにおけるID生成タイミングを示している。タイミング図は、VCC/VCCQ、/RST、/CE、Ck、/CK、CSI、DSI、およびDIを含む、パワーアップシーケンスにおいて互いに関する多数の信号の相対的状態を示している。また、示されているのは、信号DSO、DOの多数の集合である。図42に示されている特定の実施例では、Nはデバイスアドレス(この実施例ではN=30)であり、「Dev」は、デバイス番号を表し、「CTRL」は、コントローラを表す。
本発明の一実施形態によるメモリコントローラは、どのクロック整列が割り当てられるべきかを決定する機能を有する。これは、交互PLLのどの配列構成(事例1または事例2)がオンにされるか(奇数または偶数)に基づき、また直列接続されているデバイスの総数に基づく。本発明の実施形態は、中央整列が送られるのか、それともエッジ整列信号が送られるのかを制御し、これを自動的な方法で実行する。
本発明の一実施形態によるメモリコントローラは、どのようなタイプのクロックをメモリに伝送し、メモリから受け取るのかを、直列接続されているメモリデバイスの論理構成に応じて、決定することができる。本発明の実施形態は、交互PLL制御を用いて、完全ソース同期クロッキングアプローチと協働して使用することができる。いくつかのPLLが、そのロケーションまたはID割り当てに応じてオンまたはオフである。このアプローチには、本発明の一実施形態による新しいタイプのクロックコントローラが必要である。
図43Aおよび43Bは、図40Aおよび41Aに関して事例1としてすでに説明されている、第1の事例におけるクロックに対する柔軟なデータ整列を用いるメモリコントローラの一実施例の回路図を示している。この論理回路の組合せは、単なる一例であり、当業者であれば、異なるタイプの回路構成を容易に作ることができる。事例1については、コントローラは、データを伴うエッジ整列を生成しなければならない。
図43Aおよび43Bを参照すると、データを伴う中央整列クロックをメモリコントローラから供給するために、Clock_out 1901および/Clock_out 1902をClk360_out 1903と同期させることがわかる。DO(コマンド/アドレス/データ)1904、CSO(コマンドストローブ出力)1905、およびDSO(データストローブ出力)1906信号は、Clk270_out 1907と同期する。クロック発振器1911、PLL 1912、および複数の出力バッファを有するクロック発生器1910が、クロック信号を生成する。内部発生クロック信号「Clk_src」1913は、クロック発振器1911によってPLL 1912の基準クロック入力「Ref_clock」に供給され、次いで、これにより、90°、180°、270°、および360°による複数の位相シフトされたクロック信号を生成する。180°、270°、および360°位相シフトされたクロック信号は、各出力バッファを通じてClk180_out 1909、Clk270_out 1907、およびClk360_out 1903として供給される。Clk180_out 1909、Clk270_out 1907、およびClk360_out 1903は、内部発生クロック信号1913と同期する。Clk360_out 1903およびClk270_out 1907は、それぞれ「0」および「1」入力ならびに選択入力を有する2つのセレクタ1981および1982を備えるモード検出論理回路1980に供給される。セレクタ1981の「0」および「1」入力は、それぞれ、Clk360_out 1903およびClk270_out 1907を受け取る。セレクタ1982の「1」入力は、Clk270_out 1907を受け取り、セレクタ1982の「0」入力は、プルダウンされている。セレクタ1982の選択入力は、プルアップされており、したがって、その「1」入力は、常に、Clk270_outを選択された270クロック信号1983として出力するように選択される。
制御論理回路1924は、さまざまな入力および出力接続を有する。制御論理回路1924の入力Icsiの内部コマンドストローブは、D型フリップフロップ(D-FF)1939から内部コマンドストローブ入力信号「icsi」1925を受け取る。同様に、入力Idsiの内部データストローブは、D-FF 1957から内部データストローブ入力信号「idsi」1915を受け取る。クロック入力Iclkは、Clk360_out 1903を受け取る。制御論理回路1924は、「ID_assignment_status」信号1933をその「Power_up_seq_done」出力から、ラッチID信号「Latch_ID」1927をそのOltid出力から供給する。「ID_assignment_status」信号1933は、ID割り当てが完了しているのか、それとも進行中なのかを示すステータスを表す。ID割り当てステータスは、パワーアップシーケンスに含まれる。
「ID_assignment_status」信号1933は、セレクタ1981の選択入力に供給される。セレクタ1981からの選択された出力信号は、それぞれ「0」および「1」入力ならびに選択入力を有するセレクタ1921および1922の選択入力に供給される。セレクタ1921の「0」および「1」入力には、それぞれ、論理「0」および「1」信号を与えられる。セレクタ1922の「0」および「1」入力には、それぞれ、論理「1」および「0」信号を与えられる。セレクタ1921および1922の選択入力は、セレクタ1981から選択された出力信号を受け取る。セレクタ1921および1922の選択された出力信号は、各出力バッファ1923および1926を通して、Clock_out 1901および/Clock_out 1902として供給される。
Clk360_out 1903も、コマンド/アドレス/データ発生器1928に供給され、次いで、これにより、ビット0〜7の8ビットデータが得られる。偶数ビット[0,2,4,6]の4つのビットおよび奇数ビット[1,3,5,7]の4つのビットが、それぞれD-FF 1929および1936のデータD入力に供給される。Clk180_out 1909は、D-FF 1929のクロック入力およびD-FF 1936の反転クロック入力に供給される。偶数ビット[0,2,4,6]および奇数ビット[1,3,5,7]は、それぞれD-FF 1929および1936内にラッチされる。D-FF 1929および1936は、それぞれ、偶数データビット「Even_d」および奇数データビット「Odd_d」をセレクタ1937の「1」および「0」入力に供給する。「Odd_d」は、「Even_d」から180°位相シフトされる。選択された270クロック信号1983に応答して、セレクタ1937は、偶数または奇数データビットを選択する。選択されたデータビットは、出力バッファ1938を通じてDO(コマンド/アドレス/データ)1904として供給される。
制御論理回路1924は、コマンドストローブ出力およびデータストローブ出力信号を、それぞれ、コマンドストローブ出力回路1941およびデータストローブ出力回路1946に接続されている、その出力CSO_SRCおよびDSO_SRCから供給する。Clk360_out 1903に応答して内部生成されるコマンドストローブ出力信号は、コマンドストローブ出力回路1941の2つのD-FF 1942および1943のD入力に供給される。Clk180_out 1909は、D-FF 1942のクロック入力およびD-FF 1943の反転クロック入力に供給される。D-FF 1942および1943の出力信号は、それぞれ、「icso_1」および「icso_2」信号として、セレクタ1944の「1」および「0」入力に供給される。「icso_2」信号は、「icso_1」信号から180°位相シフトされる。選択された270クロック信号1983に応答して、セレクタ1944は、「icso_1」および「icso_2」信号のうちの1つを選択し、選択された信号は、出力バッファ1945を通じてCSO 1905として供給される。
データストローブ出力回路1946は、2つのD-FFおよび1つのセレクタを含むコマンドストローブ出力回路1941と同じ構造を有する。Clk360_out 1903に応答して内部生成されるデータストローブ出力信号は、制御論理回路1924からデータストローブ出力回路1946の2つのD-FF 1947および1948のD入力に供給される。Clk180_out 1909は、D-FF 1947のクロック入力およびD-FF 1948の反転クロック入力に供給される。D-FF 1947および1948からの出力信号「idso_1」および「idso_2」は、それぞれ、セレクタ1949の「1」および「0」入力に供給される。「idso_2」は、「idso_1」信号から180°位相シフトされる。選択された270クロック信号1983に応答して、セレクタ1949は、「idso_1」および「idso_2」信号のうちの1つを選択し、選択された信号は、出力バッファ1951を通じてDSO(データストローブ出力)1906として供給される。
最後の(N番目の)デバイス1420-N(図38を参照)は、CKOおよび/CKO信号をメモリコントローラ1410に送る。CKOおよび/CKO信号は、Clock_in 1934およびClock_in# 1935として差動入力バッファ1952の「+」および「-」入力に供給され、次いで、これにより、基準クロック信号Ref_clk 1953が供給される。基準クロック信号1953は、PLL 1970の基準クロック入力「Ref_clk」およびセレクタ1960の「0」入力に供給される。PLL 1970は、基準クロック信号1953に関して、90°、180°、270°、および360°の4つの位相シフトされたクロック信号を出力する。90°位相シフトされたクロック信号は、「Clk90_in」として、出力バッファを通じてセレクタ1960の「1」入力に供給される。360°位相シフトされたクロック信号は、「Clk360_in」として、出力バッファを通じてPLL 1970の「Osc_loop入力」に供給される。「Latch_ID」信号1927は、データレジスタ1940から8ビット「Idata [0:7]」の内部データ信号1968を受け取るコンポーネントIDレジスタ1920に供給される。コンポーネントIDレジスタ1920は、「Latch_ID」信号1927に応答して入力データを格納する。コンポーネントIDレジスタ1920は、登録されているIDの最下位ビット(LSB)を出力し、これにより「ID_assignment_status」信号1933を受け取るANDゲート1950に送る。ANDゲート1950は、論理出力信号をセレクタ1960の選択入力に供給し、基準クロック信号1953または90°位相シフトされたクロック信号「Clk90_in」を選択する。セレクタ1960からの選択されたクロック信号1959は、D-FF 1939および1957のクロック入力に供給される。
最後の(N番目の)デバイス1420-N(図38を参照)は、DI信号1931、DSI信号1932、およびCSI信号1916をメモリコントローラ1410に送る。DI信号「データ/アドレス/コマンド入力」1931、DSI信号「データストローブ入力」1932、およびCSI信号「コマンド/ストローブ入力」1916が、メモリコントローラ1410に供給される。基準電圧Vref 1917は、メモリコントローラ1410自体の中で内部生成されるか、または発電機(図示されていない)から外部生成される。基準電圧Vrefは、差動入力バッファ1954の「-」入力に供給され、その「+」入力は、CSI 1916を受け取る。入力バッファ1954は、差動バッファ出力信号をD-FF 1939のD入力に出力し、このD-FFは選択されたクロック信号1959に応答して「icsi」信号1925を制御論理回路1924に出力する。
DSI信号1932および基準電圧Vrefは、差動入力バッファ1955の「+」および「-」入力に供給され、その差動入力バッファ出力信号は、D-FF 1957のD入力に供給される。データ信号「D」1931および基準電圧Vrefは、差動入力バッファ1956の「+」および「-」入力に供給され、その差動入力バッファ出力信号1967は、ラッチ回路1961および1963の入力に供給される。回路1961は、直列接続された4つのD-FF 1965-6、1965-4、...、1965-0を含む。1つのD-FFのQ出力は、次のD-FFのD入力に結合される。同様に、回路1963は、直列接続された4つのD-FF 1965-7、1965-5、...、1965-1を含む。
D-FF 1957の出力信号は、内部データストローブ入力信号「idsi」1915として供給される。「idsi」信号1915は、制御論理回路1924に供給され、また8つのANDゲート1958-7、1958-6、...、1958-0を有するデータストローブ入力回路1962に供給される。セレクタ1960からの選択されたクロック信号1959は、D-FF 1965-6、1965-4、...、1965-0のクロック入力およびD-FF 1965-7、1965-5、...1965-1の反転クロック入力に供給される。入力バッファ1956からの差動入力バッファ出力信号1967は、D-FF 1965-6のD入力に供給され、選択されたクロック信号1959に応答して回路1961の接続されているD-FFに順次転送される。また、入力バッファ1956からの差動入力バッファ出力信号1967は、D-FF 1965-7のD入力に供給され、クロック信号1959の反転されたバージョンの信号に応答して回路1963の接続されているD-FFに順次転送される。したがって、回路1963におけるデータ転送は、回路1961のデータ転送から180°位相シフトされている。D-FF 1965-7および1965-6の出力信号i7およびi6は、ANDゲート1958-7および1958-6にそれぞれ供給される。同様に、D-FF 1965-5、1965-4、...、1965-1、および1965-0の出力信号は、データストローブ入力回路1962の各ANDゲートに供給される。ANDゲート1958-7、1958-6、...、1958-0のそれぞれは、「idsi」信号1915を受け取る。ANDゲート1958-7、1958-6、...、1958-0のそれぞれの論理出力信号は、内部データ信号「Idata [0:7]」1968を出力するデータレジスタ1940に供給される。
直列接続されているメモリデバイス上の最後のデバイスのID番号を取得する前に、メモリコントローラは、最後のデバイスの出力ポートから入力を取得することはしない。初期ID番号(例えば、「0000」)を伝送した後に、メモリコントローラの入力ポートは、入力データストリームを受け取る。ID割り当て完了の判定は、DSI(データストローブ入力)の立ち下がりエッジで実行される。
メモリコントローラが直列接続されている複数のメモリデバイスのうちの最後のデバイスからID番号を取得した後、ID番号は、「Latch_ID」信号1927に応答して43Bに示されているように、Dポート1931を通じてコンポーネントIDレジスタ1920に、またデータレジスタ1940に格納される。このオペレーションが実行されている間、DSI 1932も受け取り、これにより、メモリコントローラにID番号の開始点と終了点とを知らせる。DSI信号の立ち下がりエッジから、「ID_assignment_status」信号1933により、ID番号がコンポーネントIDレジスタ1920に転送される際の1サイクル遅延に基づいて遷移点が決定される。「ID_assignment_status」信号1933は、D-FF 1957から「idsi」信号1915を受け取る制御論理回路1924によって供給される。メモリデバイスのID生成のため、DSIおよびDSOを使用してID番号を作成し、そのID番号を次のメモリデバイスに伝送する。「ID_assignment_status」信号1933が「High」状態にある場合、メモリコントローラは、ID生成オペレーションの終わり、つまり、デバイスID割り当ての完了を認識する。
「ID_assignment_status」信号が「Low」の場合、すべてのデバイスのPLLはオンであり、最初にそれらすべてにID番号を割り当てる。「ID_assignment_status」信号が「High」の場合、すべてのIDが割り当てられており、PLLオンは、奇数または偶数番号のデバイスにのみ適用される。したがって、これは、ID割り当てステータス信号によって制御される。
初期状態では、メモリコントローラは、直列制御デバイスにおいてどの事例が存在するかを判定するために必要な情報を知ることはない。このような理由から、CKO、/CKO、およびDO信号は、図43Bに示されているように、メモリコントローラにCK、/CK、およびDIとして供給される。パワーアップ前には、デバイスにはID番号が割り当てられていない。パワーアップ後の最初のオペレーションは、それぞれのデバイスがゼロ状態IDを持つようにデバイスIDをリセットする(例えば、「0000」)。
図43Bに示されているように、「ID_assignment_status」信号1933ならびに最後のメモリデバイスに割り当てられたIDのLSB(コンポーネントIDレジスタ1920内に格納されている)は両方ともANDゲート1950に供給される。ANDゲート1950の出力に応答して、クロックセレクタ1960は、メモリコントローラについて供給されるクロックを選択する。移相器およびクロック再整形器である、PLL 1970の出力Clk90_inは、図43Bの実施例では、クロックセレクタ1960の入力に接続されている。一実施形態では、要素1960および1970は、両方とも、クロックコンフィギュレータの一部とみなせる。「ID_assignment_status」信号1933が「High」であることを検出するなどの方法によって、ANDゲート1950がID割り当ての完了を検出した場合、出力は、コンポーネントIDレジスタ1920のLSBである。ID割り当てが完了していない場合、クロックセレクタ1960は、基準クロック信号Ref_clk 1953を選択する。セレクタ1960は、選択されたクロック信号1959を供給する。
ID割り当ての事例では、メモリデバイスのすべてのPLLは、ID生成時にオンにされ、直列接続されている複数のメモリデバイスのうちの最後のデバイスからのソース同期クロックはデータとともに中央整列される。図43Aおよび43Bに示されているように、メモリコントローラは、ID割り当てが完了したかどうかの検出結果に応じて、中央整列信号またはエッジ整列信号を供給する。
図43Aに戻ると、メモリコントローラは、ID割り当てが完了しているかどうかを検出し、その検出結果に応答してクロック信号を生成するモード検出論理回路1980を備える。図43Aの実施例では、モード検出論理回路1980は、ID割り当てが完了していないことをモード検出論理回路が検出したことに応答してClk360_out 1903と整列した中央整列クロックを出力する。モード検出論理回路1980は、ID割り当てが完了しており、したがってシステムが通常動作モードに入っていることをモード検出論理回路が検出したことに応答してClk270_out 1907と整列したエッジ整列クロックを出力する。
図44および図45は、ID割り当て(生成)オペレーション実行時のタイミング図を示している。開示では、「/」という記号は、相補信号に使用される(例えば、/clock)。
図46は、例示的な一実施形態により、位相差がないClock_outおよび/Clock_outと同期したCSO/DSOおよびDOのような制御出力を伴うクロック生成のタイミング図を示している。「ID_assignment_status」を「High」状態とすることによって、クロック生成経路セレクタは、クロックとデータ制御およびデータ(CSO/DSO/DO)との間に位相差が生じないように「Clk270_out」に接続されている「1」入力を選択する。これは、ID割り当て後の通常オペレーション時に生じる。
ID割り当て後の通常オペレーションでは、データへの入力クロック整列は、「コンポーネントIDレジスタ」に格納されている最後のコンポーネントIDのLSB(最下位ビット)によって判定される。IDのLSBが「0」である場合、クロックとデータ制御およびデータとの間のタイミング関係に変化はない。これは、ステータスが信号内のデータストローブに応答して変化する「ID_assignment_status」信号の状態変化を除き図45に示されているID生成前のタイミングと同じである。
これからわかるように、直列接続されている複数のメモリデバイスのうちの最後のデバイスが、IDのLSBとして「0」を有する場合、最後のデバイスがオンPLLを有していることを意味する。図47は、例示的な一実施形態により、最後のデバイスがオンPLLを有しているため、データを伴う中央整列クロックに対するタイミング図を示している。他の事例では、IDのLSBが'1'である場合、最後のデバイスがオフPLLを有していることを意味する。したがって、データを伴うエッジ整列クロックが、それから生成される(図40Aの第1の事例を参照)。
前の方で述べたように、本発明の一実施形態によるメモリコントローラは、交互PLLオン/オフに使用される事例に基づいて異なることがある。図43Aおよび43Bは、事例1として本明細書において参照されている実装とマッチするメモリコントローラを示していた。
図49Aおよび49Bは、事例2として本明細書において参照されている実装とマッチする本発明の他の実施形態によるメモリコントローラを示している。図49Aおよび49Bに示されているメモリコントローラの構造は、図43Aおよび43Bの構造と類似している。図49Aおよび49Bに示されているメモリコントローラは、モード検出論理回路を有さず、またコンポーネントIDレジスタ2520によって供給されるIDのLSBを反転する追加のインバータ2521を有する。第2の事例のタイミング図は、すべてのメモリデバイスがオンPLLを有するので、ID生成時に第1の事例の場合と実質的に類似しているものとしてよい(図39を参照)。
事例2実装とマッチする、図49Aおよび49Bに示されているメモリコントローラは、ID割り当て完了時と通常オペレーション時の両方において中央整列クロックおよびデータを生成する。ID割り当て前に、事例1のようにすべてのPLLがリセット段階でONであるため、LSB偶数「ON」アプローチを使用してすべてのIDをリセットできるようにしなければならず、これにより、異なるタイプのオペレーションを気にかける必要はなくなる。事例2では、奇数番号のPLLのみがオンにされる。
図49Aおよび49Bを参照すると、クロック発生器2510は、クロック発振器2511およびPLL 2512を有していることがわかる。内部発生クロック信号「Clk_src」は、クロック発振器2511によってPLL 2512の基準クロック入力「Ref_clk」に供給され、次いで、これにより、90°、180°、270°、および360°による複数の位相シフトされたクロック信号を生成する。180°、270°、および360°位相シフトされたクロック信号は、各出力バッファを通じてClk180_out 2508、Clk270_out 2507、およびClk360_out 2503として供給される。Clk180_out 2508、Clk270_out 2507、およびClk360_out 2503は、内部発生クロック信号「Clk_src」と同期する。Clk360_out 2503は、2つのセレクタ2513および2514の選択入力に供給される。「0」および「1」論理信号は、それぞれ、セレクタ2513の「0」および「1」入力ならびに他のセレクタ2514の「1」および「0」入力に供給される。Clk360_out 2503に応答して、セレクタ2513および2514は、それぞれ「Clock out」2501および「Clock out#」2502として各出力バッファを通じて供給される相補出力信号を供給する。
Clk360_out 2503も、ビット0〜7の8ビットデータを供給するコマンド/アドレス/データ発生器2580に供給される。データの偶数ビット[0,2,4,6]は、Clk180_out 2508でクロック同期されるD-FFに供給される。データの奇数ビット[1,3,5,7]は、Clk180_out 2508の反転バージョンの信号でクロック同期される他のD-FFに供給される。2つのD-FFは、それぞれ、偶数データビット「Even_d」および奇数データビット「Odd_d」をセレクタ2523の「1」および「0」入力に供給する。「Odd_d」は、「Even_d」から180°位相シフトされる。Clk270_out 2507に応答して、セレクタ2523は、偶数または奇数データビットを選択する。選択されたデータビットは、出力バッファを通じてDO(コマンド/アドレス/データ)2504として供給される。
制御論理回路2530は、Clk360_out 2503、D-FF 2561から内部コマンドストローブ入力信号「icsi」2534、およびD-FF 2563から内部データストローブ入力信号「idsi」2565を受け取る。制御論理回路2530は、コマンドストローブ出力およびデータストローブ出力信号を、それぞれ、コマンドストローブ出力回路2541およびデータストローブ出力回路2551に接続されている、その出力CSO_SRCおよびDSO_SRCから供給する。内部生成コマンドストローブ出力信号が、コマンドストローブ出力回路2541の2つのD-FFに供給される。2つのD-FFは、Clk180_out 2508およびその反転バージョンの信号でクロック同期され、それぞれ、出力信号を「icso_1」および「icso_2」信号としてセレクタ2524に供給する。Clk270_out 2507に応答して、セレクタ2524は、「icso_1」および「icso_2」信号のうちの1つを選択し、選択された信号は、出力バッファを通じてCSO 2505として供給される。
内部生成データストローブ出力信号は、制御論理回路2530からデータストローブ出力回路2551の2つのD-FFに供給される。2つのD-FFは、Clk180_out 2508およびその反転バージョンの信号でクロック同期され、出力信号を「idso_1」および「idso_2」としてセレクタ2525に供給する。Clk270_out 2507に応答して、セレクタ2525は、「idso_1」および「idso_2」信号のうちの1つを選択し、選択された信号は、出力バッファを通じてDSO 2506(データストローブ出力)として供給される。
CSI 2536は、差動入力バッファによって基準電圧「Vref」2537と比較される。Vrefは、メモリコントローラ自体の中で内部生成されるか、または発電機(図示されていない)から外部生成される。差動バッファ出力信号は、セレクタ2560からの選択されたクロック信号出力2559に応答してD-FF 2561によってラッチされる。D-FF 2561の出力信号は、「icsi」信号2534として制御論理回路2530に供給される。
同様に、DSI 2532は、差動入力バッファによって基準電圧Vref 2537と比較され、また差動バッファ出力信号は、選択されたクロック信号出力2559に応答してD-FF 2563によってラッチされる。D-FF 2563の出力信号は、「idsi」信号2565として制御論理回路2530および8つのANDゲートを有するデータストローブ入力回路2590に供給される。
また、データ信号「DI」2531は、差動入力バッファによって基準電圧Vref 2537と比較され、差動バッファ出力信号は、直列接続されている4つのD-FFをそれぞれ含む2つのラッチ回路2591および2592に供給される。1つのD-FFのQ出力は、データラッチ回路のそれぞれにおいて次のD-FFのD入力に接続される。差動バッファ出力信号のデータは、選択されたクロック信号出力2559に応答して2つのデータラッチ回路2591および2592のそれぞれにおいて直列接続されているD-FFを通じてラッチされ、順次転送される。回路2592のD-FFは、選択されたクロック信号出力2559の反転バージョンの信号に応答してデータ転送を実行する。したがって、回路2592におけるデータ転送は、回路2591のデータ転送から180°位相シフトされている。例えば、回路2592の第1のD-FFの出力信号i7は、回路2591の第1のD-FFの出力信号i6から180°位相シフトされる。出力信号i7、i6、...、i1、およびi0は、データストローブ入力回路2590の各ANDゲートに供給される。データストローブ入力回路2590の8つのANDゲートは、通常、「idsi」信号2565を受け取り、8つのANDゲートの論理出力信号は、内部データ信号「Idata[0:7]」を出力するデータレジスタ2540に供給される。
制御論理回路2530は、そのIcsi入力で、「icsi」信号2534を、そのIdsi入力で、「idsi」信号2565を、それぞれ、D-FF 2561および2563から受け取る。制御論理回路2530は、クロック発生器2510からそのIclk入力でClk360_out 2503を受け取る。制御論理回路2530は、「ID_assignment_status」信号2533をその「Power_up_seq_done」出力から、ラッチID信号「Latch_ID」をそのOltid出力から供給する。「ID_assignment_status」信号2533は、ID割り当て完了を表す。
図43Aと類似の図49Aにおいて、データを伴う中央整列クロックをメモリコントローラから供給するために、Clock_out 2501および/Clock_out 2502をClk360_out 2503と同期させることがわかる。この同期処理は、「ID_assignment_status」信号2533の状態の影響を受けない。DO(コマンド/アドレス/データ)2504、CSO(コマンドストローブ出力)2505、およびDSO(データストローブ出力)2506信号は、Clk270_out 2507と同期する。クロック発生器2510は、PLL 2512などを使って、信号Clk360_out 2503およびClk270_out 2507を供給する。ここでもまた、クロック同期処理は、事例1のコントローラとは対照的に、「ID_assignment_status」信号2533の状態の影響を受けない。クロック出力は、モードの変化、つまり、ID割り当てモードか通常オペレーションモードかに関係なく無変更であるため、図49Aのメモリコントローラは、図43Aに示されているようなモード検出論理回路1980を必要としない。
図49Bでは、オペレーションは図43Bのものに類似している。メモリコントローラが、データレジスタ2540へのDポート2531を通じて直列接続されている複数のメモリデバイスのうちの最後のデバイスからID番号を取得した後、登録されたID番号は、制御論理回路2530からの「Latch_ID」信号に応答してコンポーネントIDレジスタ2520内に格納される。このオペレーションが実行されている間、DSI 2532も受け取り、これにより、メモリコントローラにID番号の開始点と終了点とを知らせる。DSI信号の立ち下がりエッジから、「ID_assignment_status」信号2533により、ID番号がコンポーネントIDレジスタ2520に転送される際の1サイクル遅延に基づいて遷移点が決定される。メモリデバイスのID生成のため、DSIおよびDSOを使用してID番号を作成し、そのID番号を次のメモリデバイスに伝送する。「ID_assignment_status」2533が「High」状態にある場合、メモリコントローラは、ID生成オペレーションの終わりを認識する。
図49Bに示されているように、「ID_assignment_status」信号2533および最後のメモリデバイスのLSBは、両方とも、コンパレータとして動作するANDゲート2550に供給される。ANDゲート2550の出力に応答して、セレクタ2560は、メモリコントローラによって供給されるクロックを構成するクロックコンフィギュレータとして動作する。PLL 2570は、セレクタ2560と通信することができる。一実施形態では、セレクタ2560およびPLL 2570は、両方とも、クロックコンフィギュレータの一部とみなせる。図49BのPLL 2570は、図43BのPLL 1970として位相シフトされたクロックを生成する機能を実行する。基準クロック信号「Ref_clk」および90°位相シフトされたクロック信号「Clk90_in」が、セレクタ2560に供給される。セレクタ2560は、ANDゲート2550の出力からその選択入力に供給される入力信号に応答して選択されたクロック信号2559を出力する。コンポーネントIDレジスタ2520内に格納されているIDのLSBがLowである場合、インバータ2521の出力信号はHighであり、次いで、ANDゲート2550は、「ID_assignment_status」信号2533がHighであることを検出するなどによって、ID割り当ての完了を検出する。ANDゲート2550の「High」出力信号に応答して、セレクタ2560は、Clk90_inを選択されたクロック信号2559として選択する。ID割り当てが完了していない(つまり、「ID_assignment_status」信号2533の論理ステータスがLowである)場合、クロックコンフィギュレータは、反対の出力を生成する(つまり、基準クロック信号「Ref_clk」が、選択されたクロック信号2559として供給される)。この論理によって、最後のメモリデバイス、またはメモリコンポーネントから受け取ることが予期されるクロック整列が決定される。
事例2については、第1のデバイスのPLLがオフであるため、事例2の自動検出が可能である。事例1については、第1のデバイスのPLLがオンである場合、ID割り当てが進行中かどうかを判定するチェックを行わなければならず、ID割り当てが完了しているときのみ、事例1が存在しているかどうかを判定することができる。
上述のように、コントローラは、事例1または事例2のシナリオの検出に応答して信号生成のタイプを変更することができる。直列接続されているデバイスの集合は、典型的には、混合設定を持たず、接続されている一連のデバイス内のそれぞれのデバイスは同じ設定を有する。本発明の好ましい一実施形態では、デバイスのすべてが事例1または事例2に基づいて制御されるが、同じ一連の接続されているデバイスにおいて2つのアプローチの混合アプローチはあり得ない。
事例1または事例2を使用する決定は、典型的には、ユーザーが行い、コントローラは、単に、どの実装が実行されるかを検出するだけである。コントローラは、両方の事例に対する論理回路実装を含むことができるが、ユーザー選択に応じて一度に1つの事例のみを実装する。
ユーザーは、コントローラ実装を決定することができる。図43Aおよび43Bの実施形態および図49Aおよび49Bの実施形態は、消費電力に関して同等である。2つの異なる実装を組み合わせて1つのコントローラにまとめることができるか、または別々のコントローラとして実装することができる。ユーザーは、使用されるアプローチ(奇数のPLLのオンまたはオフ)に応じてマッチしたコントローラを使用する。それぞれのデバイス接続には、マッチしたコントローラがなければならない。コントローラは、交互PLL電源投入の実施形態とマッチしていなければならない。
通常、オンザフライで一方のアプローチから他方のアプローチに切り替える必要はない。パワーアップ後、アプローチが選択される。この選択は、メモリに記憶されるか、またはデバイスが毎回パワーアップするときに再実行されうる。しかし、パワーアップ時に選択を再割り当てするには、すべての接続されているデバイスに対するデバイスIDがリセットされなければならない。この主要な目的は、消費電力を低減することである。一実施形態が実装されている場合、他の実施形態に切り替える必要はない。
コントローラは、それぞれのデバイスから構成情報を受け取るか、または取得することができるが、接続されているすべてのデバイスは同じ構成を有するので、最後のデバイスに対する構成情報のみあればよい。この構成情報に基づいて、コントローラは、構成スキームを検出し、それに応じて、送られる適切なクロック信号を決定することができる。
これらの構成のうちの1つにおいて一緒に接続できるデバイスの個数に制限はない。知られている並列クロッキングアプローチの制限は、これらのデバイスがデイジーチェーンで接続されているとしても、クロック駆動性および信号品位の点で、デバイスをいくつでも無制限に一緒に接続することはできないというものである。本発明の一実施形態によれば、任意の数のデバイスを一緒に接続することができる。
コントローラは、最後のデバイスのIDのLSB、および接続されているデバイスの個数に基づいて、構成情報決定することができる。コントローラは、事例1であるか、事例2であるかを判定するために最後のデバイスの構成を読み出すことができる。
図50は、例示的な一実施形態によるID生成後のメモリコントローラからのクロック生成のタイミング図(出力信号、第2の事例)である。第2の事例では、ID割り当て後の出力信号のタイミングは、「ID_assignment_status」を除いてID割り当て時のタイミングに実質的に類似している。メモリコントローラの出力信号は、ID割り当て完了の状態によって制御されないからである。
第2の事例のID生成後、IDのLSB=0のタイミング図(図51)は、IDのLSB=1の第1の事例のタイミング(図48)と実質的に類似している。IDのLSB=1(第2の事例)の場合の図52は、IDのLSB=1(第1の事例)の場合の図47と同じである。IDのLSBを有するマルチプレクサ制御は、第2の事例においてIDのLSBの反転後に実行される。これらの違いは、図43A、43Bおよび図49A、49Bに示されている。
本発明の実施形態は、メモリコントローラの柔軟なクロック整列制御を提供するものとして説明することができる(データを伴う中央整列クロックおよびデータを伴うエッジ整列クロック)。最後のデバイスのID番号を使用することで、クロック整列の制御を決定することができる。ID割り当ての前および後で、IDのLSB=0および1に関係なく、結果として異なるタイミング図が得られる。エッジ整列方法では、クロックとデータ制御の間の同一の遅延経路を使用することができる。クロック構造は、SDRおよびDDRインターフェースで動作することができる。
本明細書で説明されている実施形態は、直列接続されている複数のデバイスを参照している。直列接続されているデバイスの集合内のそれぞれのデバイスは、1つの物理デバイスであるか、または複数の並列接続物理デバイスを含む論理デバイスであるものとしてよい。直列で接続されている積層デバイスは、それぞれ、固有のID番号を割り当てられ、図40Aおよび40Bに示されているように、個別のデバイスとして表される。
例えば、3つの並列接続デバイスが、複数の直列接続デバイス群の真ん中に備えられている場合、これら3つの並列接続デバイスは、本発明の一実施形態によりPLLに電力を供給するか、またはPLLを制御することに関して1つの論理デバイスとしてみなされる。したがって、並列接続デバイスを備えることが可能であるが、並列接続デバイスのそれぞれの集合は、1つの論理デバイスとして取り扱われる。複数の並列接続デバイスを含む、論理デバイスにおいて、そのPLLがオンにされる必要がある場合、複数の並列接続デバイス内の1つのPLLのみが、オンにされる必要がある。他のPLLをオンにすることも可能であるが、消費電力を無駄に増やすことになる。
本発明の一実施形態によれば、交互直列接続デバイスのPLLは、デバイスが論理デバイスであろうと物理デバイスであろうと、またデバイスの総数に関係なく、オンにされる。本発明の実施形態では、デバイス接続を制御する一方法が説明されている。
交互PLL電源供給のオン/オフ/オン/オフ(またはオフ/オン/オフ/オン)の代替も可能であるが、追加の回路が必要になる可能性が高い。最高周波数は、そのような他のアプローチによって制限される可能性がある。例えば、1つを除くすべてのPLLがオフにされた場合、システムのオペレーションは可能でない場合がある。
ソース同期信号生成を用いると、接続は一方のデバイスと次のデバイスとの間に限られ、これはポイントツーポイント接続であるとみなすことができる。ポイントツーポイント接続では、高周波オペレーションが保証される。
この技術は、例えばフラッシュデバイスなどの不揮発性デバイスに適用可能である。フラッシュデバイスは、例えば、NANDフラッシュ、NORフラッシュなどの任意のタイプのフラッシュメモリデバイスを含む。
上述の実施例において、デバイスはメモリデバイスである。メモリデバイスは、揮発性メモリおよび不揮発性メモリのいずれか一方とすることができる。また、デバイスは、半導体デバイスであってもよく、そのオペレーションはクロック信号と同期する。
半導体デバイスを使用する電子機器としては、例えば、デジタルカメラ、デジタルビデオカメラ、パーソナルデジタルアシスタント、モバイル型コンピュータ、オーディオおよび音楽装置、および携帯電話などのさまざまな電気的デバイスが挙げられる。
上述の実施例において、デバイス、要素、および回路は、簡単のため、図に示されているように互いに接続されている。本発明の実用上のアプリケーションにおいては、要素、回路などは、互いに直接接続することができる。また同様に、要素、回路などは、デバイスまたは装置のオペレーションに必要な、他の要素、回路などを通じて互いに間接的に接続することもできる。したがって、実際の構成では、デバイス、要素、および回路は、互いに直接的もしくは間接的に結合、または接続される。
本発明の上述の、および図示されている実施例は、例としてのみ取りあげられることを意図されている。当業者であれば、付属の請求項によってのみ画定される、本発明の範囲から逸脱することなく、特定の実施形態に改変、修正、および変更を加えることができる。
Dn データ入力
Qn データ出力
110 メモリコントローラ
120-1、120-2、...120-N メモリデバイス
131 nビットのデータ線
133 mビットの制御線
135 共通クロック線
140 クロックソース、メモリシステム
140-1〜140-N メモリデバイス
142 メインシステムまたはプロセッサ(ホストシステム)
144 メモリコントローラ
145-1、145-2、145-3、...および145-N メモリデバイス
147-1、147-2、147-3、...および147-N コマンドフォーマット
150 メモリコントローラ
152-1、152-2、...152-N メモリデバイス
160 メモリコントローラ
162-1、162-2、...160-N メモリデバイス
172 入力回路
173 入力信号
174 出力回路
175 出力信号
176 クロック回路
177 入力共通同期クロック信号CLKcsyc
178 メモリコア回路
210 メモリコントローラ
212-1〜212-4 メモリデバイス
220 メモリコントローラ
222 入力回路
230 クロックソース
260 メモリコントローラ
262-1、262-2、...262-N メモリデバイス
282 入力回路
283 入力信号
284 出力回路
285 出力信号
286 クロック回路
287 入力ソース同期クロック信号CLKcsyci
288 メモリコア回路
289 出力ソース同期クロック信号CLKcsyco
310 メモリコントローラ
312-1〜312-4 メモリデバイス
316 PLL
369および471 D-FF
371 ID割り当て回路
372 IDレジスタ
373 IDマッチ判定器
374 1ビット信号
375 コマンドインタプリタ
376 インバータ
377 モード信号生成器
378 メモリコア回路
379 ID割り当て完了信号
391 ID割り当て回路
392 IDレジスタ
394 1ビット信号
395 NANDゲート
399 ID割り当て完了信号
401 クロックI/O回路
403 データI/O回路
405 ストローブI/O回路
407 メモリコア回路
413 PLL
414-1、414-2、414-3、および414-4 バッファ
425 入力バッファ
427および429 入力バッファ(コンパレータ)
431および433 D-FF
437および439 D-FF
443 出力バッファ
445および447 D-FF
449 セレクタ
451 出力バッファ
461および463 D型フリップフロップ(D-FF)
465および467 セレクタ
481 ライトレジスタ
483 リードレジスタ
492 IDレジスタ
493 IDマッチ判定器
495 コマンドインタプリタ
498 メモリコア回路
510 メモリコントローラ
512-1〜512-N グループ1〜N
520 メモリコントローラ
531-1〜531-4 メモリデバイス
533 基板
535 絶縁体
537 接続パッド
539 接続パッド
541 電線
551-1〜551-3 メモリデバイス
553 基板
555 シリコンスルーコネクタ
562-1〜562-N MCP1〜MCPN
572-1〜572-N MCP1〜MCPN
601 クロックI/O回路
603 データI/O回路
605 ストローブI/O回路
607 メモリコア回路
611 入力バッファ
613 PLL
614-1、614-2、614-3、および614-4 バッファ
617、619 セレクタ
621、623 セレクタ
625、627 出力バッファ
631 セレクタ
633 セレクタ
641および643 入力バッファ
645および647 D-FF
649、651、および653 D-FF
655、657、および659 D-FF
661および663 D-FF
665 セレクタ
667 セレクタ
669および671 D-FF
673 セレクタ
675 出力バッファ
677 セレクタ
679 セレクタ
687 セレクタ
689 セレクタ
693 出力バッファ
701 クロックI/O回路
703 データI/O回路
705 ストローブI/O回路
707 メモリコア回路
711 入力バッファ
713 PLL
714-1、714-2、714-3、および714-4 バッファ
715 セレクタ
717 セレクタ
719および720 セレクタ
721および723 出力バッファ
725 セレクタ
727 入力バッファ(コンパレータ)
737および739 入力バッファ(コンパレータ)
741、781、および743、783 D-FF
751 出力バッファ
753 出力バッファ
755 バッファ
761および763 D-FF
765 セレクタ
767 セレクタ
773 セレクタ
775 出力バッファ
781および783 D-FF
791および793 セレクタ
795 ライトレジスタ
797 リードレジスタ
799-1〜799-14 デバイス
801 クロックI/O回路
803 データI/O回路
805 ストローブI/O回路
807 メモリコア回路
813 PLL
814-1、814-2、814-3、および814-4 バッファ
815 セレクタ
817 セレクタ
819および820 セレクタ
821 出力バッファ
823 出力バッファ
824 セレクタ
825 入力バッファ
827および829 入力バッファ(コンパレータ)
831、833、835および837 D-FF
843 出力バッファ
851 出力バッファ
853 ANDゲート
861、862、863および864 D-FF
865 セレクタ
866および868 D-FF
867 セレクタ
871 セレクタ
873 セレクタ
875 セレクタ
877 セレクタ
881および883 D-FF
885 セレクタ
887 セレクタ
888 セレクタ
890 出力バッファ
891 セレクタ
893 セレクタ
895 ライトレジスタ
897 リードレジスタ
1410 メモリコントローラ
1420-1、1420-2、...1420-N デバイス
1510 コントローラ出力信号
1520-1、1520-2、...1520-N デバイス
1522 PLL
1530 送出データ
1620-1、1620-2、1620-3、1620-4、...、1620-N デバイス
1622 PLL
1632 PLL
1640-1、1640-3、... 奇数番号のデバイス
1640-2、1640-4、... 偶数番号のデバイス
1642 PLL
1652 PLL
1901 Clock_out
1902 /Clock_out
1903 Clk360_out
1904 DO(コマンド/アドレス/データ)
1905 CSO(コマンドストローブ出力)
1906 DSO(データストローブ出力)
1907 Clk270_out
1909 Clk180_out
1910 クロック発生器
1911 クロック発振器
1912 PLL
1913 内部発生クロック信号「Clk_src」
1915 内部データストローブ入力信号「idsi」
1915 「idsi」
1916 CSI信号「コマンド/ストローブ入力」
1916 CSI信号
1917 基準電圧Vref
1920 コンポーネントIDレジスタ
1921および1922 セレクタ
1924 制御論理回路
1925 内部コマンドストローブ入力信号「icsi」
1925 信号「icsi」
1927 ラッチID信号「Latch_ID」
1927 「Latch_ID」信号
1929および1936 D-FF
1931 DI信号「データ/アドレス/コマンド入力」
1932 DSI信号「データストローブ入力」
1931 DI信号
1932 DSI信号
1933 「ID_assignment_status」信号
1933 「ID_assignment_status」信号
1934 Clock_in
1938 出力バッファ
1935 Clock_in#
1937 セレクタ
1939 D型フリップフロップ(D-FF)
1940 データレジスタ
1941 コマンドストローブ出力回路
1942および1943 D-FF
1944 セレクタ
1945 出力バッファ
1946 データストローブ出力回路
1947および1948 D-FF
1950 ANDゲート
1951 出力バッファ
1952 差動入力バッファ
1953 基準クロック信号
1954 差動入力バッファ
1955 差動入力バッファ
1956 差動入力バッファ
1957 D-FF
1958-7、1958-6、...、1958-0 ANDゲート
1959 クロック信号
1960 セレクタ
1961、1963 ラッチ回路
1962 データストローブ入力回路
1965-6、1965-4、...、1965-0 D-FF
1965-7、1965-5、...、1965-1 D-FF
1967 差動入力バッファ出力信号
1968 内部データ信号
1970 PLL
1980 モード検出論理回路
1981および1982 セレクタ
1983 270クロック信号
2501 「Clock out」
2502 「Clock out#」
2503 Clk360_out
2504 DO(コマンド/アドレス/データ)
2505 CSO
2506 DSO
2507 Clk270_out
2508 Clk180_out
2510 クロック発生器
2511 クロック発振器
2512 PLL
2513および2514 セレクタ
2520 コンポーネントIDレジスタ
2521 インバータ
2523 セレクタ
2524 セレクタ
2525 セレクタ
2530 制御論理回路
2531 データ信号「DI」
2532 DSI
2533 「ID_assignment_status」信号
2534 内部コマンドストローブ入力信号「icsi」
2536 CSI
2537 基準電圧「Vref」
2540 データレジスタ
2541 コマンドストローブ出力回路
2550 ANDゲート
2551 データストローブ出力回路
2559 クロック信号出力
2560 クロックセレクタ
2561 D-FF
2563 D-FF
2565 内部データストローブ入力信号「idsi」
2570 PLL
2580 コマンド/アドレス/データ発生器
2590 データストローブ入力回路
2591および2592 ラッチ回路

Claims (44)

  1. 入力クロック信号の遷移によって画定される期間を有するデータを転送するためのデバイスであって、
    クロック回路であるとともに、
    前記入力クロック信号に応答して複数の再生クロック信号を供給し、前記複数の再生クロック信号の位相が互いに前記データに対し異なるシフトを生じ、
    前記複数の再生クロック信号のうちの少なくとも1つの信号に応答して出力クロック信号を生成するように構成されたクロック回路と、
    前記データの転送を前記複数の再生クロック信号のうちの少なくとも1つの信号に同期させ、前記出力クロック信号の遷移が前記データの期間に発生する、同期回路とを備えるデバイス。
  2. 前記クロック回路は、
    前記入力クロック信号に応答して前記複数の再生クロック信号を供給するための位相同期ループ(PLL)と、
    前記複数の再生クロック信号のうちの少なくとも1つの信号に応答して前記出力クロック信号を生成するためのクロック出力回路とを備える請求項1に記載のデバイス。
  3. 前記PLLは、制御信号に応答して選択的にイネーブルまたはディセーブルされるように構成されている請求項2に記載のデバイス。
  4. 前記制御信号は、それぞれPLLのイネーブルおよびディセーブルを行わせる第1および第2の論理状態を有し、
    PLLがイネーブルされている場合に、
    PLLは前記入力クロック信号に応答して前記複数の再生クロック信号を生成するように構成され、
    前記クロック出力回路は前記複数の再生クロック信号のうちの少なくとも1つの信号に応答して前記出力クロック信号を生成するように構成され、
    同期回路は前記データの転送を前記再生クロック信号のうちの少なくとも1つの信号に同期させるように構成されており、
    PLLがディセーブルされている場合に、
    前記同期回路は前記データの転送を前記入力クロック信号に同期させるように構成されている請求項3に記載のデバイス。
  5. 前記クロック回路は、1つのクロック信号とその相補クロック信号を含む前記入力クロック信号に応答して内部クロック信号を供給するようにさらに構成される請求項4に記載のデバイス。
  6. 前記PLLは、前記PLLがイネーブルされたときに前記内部クロック信号に応答して前記複数の再生クロック信号を生成するようにさらに構成される請求項5に記載のデバイス。
  7. 前記同期回路は、前記PLLがディセーブルされたときに前記内部クロック信号と前記データの転送とを同期させるようにさらに構成される請求項5に記載のデバイス。
  8. 前記PLLは、前記データとともに90°の倍数である位相シフトを持つ前記再生クロック信号を出力するようにさらに構成される請求項7に記載のデバイス。
  9. 前記クロック出力回路は、1つのクロック信号とその相補クロック信号を含む前記再生クロック信号を生成するように構成される請求項5に記載のデバイス。
  10. 前記制御信号は、
    前記PLLをイネーブルするHigh論理状態を有する論理信号を含む請求項3に記載のデバイス。
  11. 前記制御信号は、
    前記PLLをそれぞれイネーブルおよびディセーブルする第1および第2の論理状態を有する論理信号を含む請求項3に記載のデバイス。
  12. データを格納するためのメモリと、
    前記メモリにアクセスするためのアクセス回路とをさらに備える請求項2に記載のデバイス。
  13. 前記アクセス回路は、ライト信号に応答してメモリにデータを書き込むように構成される請求項12に記載のデバイス。
  14. 前記同期回路は、前記デバイスに入力されたデータの転送と前記再生クロック信号とを同期させるように構成される請求項13に記載のデバイス。
  15. 前記アクセス回路は、リード信号に応答してメモリ内に格納されているデータを読み出すようにさらに構成される請求項13に記載のデバイス。
  16. 前記同期回路は、前記アクセス回路からのリードデータの転送と前記再生クロックとを同期させるように構成される請求項15に記載のデバイス。
  17. 前記デバイスに関連する識別情報を保持するためのホルダーであって、前記識別情報が前記デバイスを識別するために使用されるホルダーと、
    前記識別情報に基づいて前記デバイスの前記識別に応答して前記メモリにアクセスするように構成される前記アクセス回路とをさらに備える請求項16に記載のデバイス。
  18. 前記ホルダーに識別情報を供給するための識別情報供給器と、
    前記ホルダー内に保持されている前記識別情報に応答して供給される、PLLをそれぞれイネーブル、ディセーブルする論理Highおよび論理Lowの一方である、前記制御信号とをさらに備える請求項17に記載のデバイス。
  19. 識別情報供給器であるとともに、
    識別情報を前記ホルダーに供給し、
    識別情報の前記供給の完了後に完了信号を供給するように構成された識別情報供給器と、
    前記完了信号および前記ホルダー内に保持されている、2進数を含む前記識別情報に応答して論理信号を制御信号として供給するように構成される論理回路と、
    前記2進数の最下位ビットに応答して論理HighおよびLowのうちの一方である、前記PLLがそれぞれ前記制御信号の前記論理HighおよびLowに応答してイネーブルおよびディセーブルされる、前記制御信号と、
    データリード信号に応答してメモリから前記第2のデータラッチ回路に供給するリードデータとをさらに備える請求項17に記載のデバイス。
  20. 前記同期回路は、
    前記第1の内部クロック信号に応答して受信データを取り込み、
    前記受信データと前記リードデータのうちのいずれか一方の転送を第2の内部クロック信号と同期させるように構成される請求項19に記載のデバイス。
  21. データを第1のデバイスから第2のデバイスに転送するための装置であって、前記データはクロック信号の遷移によって画定される期間を有し、
    前記第1のデバイスは、
    第1のクロック回路であるとともに、
    第1の入力クロック信号に応答して複数の第1の再生クロック信号を供給し、前記複数の第1の再生クロック信号の位相が互いにデータに対し異なるシフトを生じ、
    前記複数の第1の再生クロック信号のうちの少なくとも1つの信号に応答して第1の出力クロック信号を生成するように構成される、第1のクロック回路と、
    前記データの転送を前記複数の第1の再生クロック信号のうちの少なくとも1つの信号に同期させるための、前記第1の出力クロック信号の前記遷移が前記データの期間に発生する、第1の同期回路とを備え、
    前記第2のデバイスは、
    前記第1の出力クロック信号から導出された第2の入力クロック信号に応答して複数の第2の再生クロック信号を供給し、前記複数の第2の再生クロック信号の位相が互いにデータに対し異なるシフトを生じるように構成された第2のクロック回路と、
    前記第2の入力クロックに応答して前記第1のデバイスから転送された前記データを受け取るための第1のデータ入力回路とを備えるデータを第1のデバイスから第2のデバイスに転送するための装置。
  22. 前記第1のクロック回路は、
    前記第1の入力クロック信号に応答して前記複数の第1の再生クロック信号を供給するための第1の位相同期ループ(PLL)と、
    前記複数の第1の再生クロック信号のうちの少なくとも1つの信号に応答して前記第1の出力クロック信号を生成するための第1のクロック出力回路とを備え、
    前記第2のクロック回路は、
    前記第2の入力クロック信号に応答して前記複数の第2の再生クロック信号を供給するための第2のPLLを備える請求項21に記載の装置。
  23. 前記第1および第2のPLLは、それぞれ、第1および第2の制御信号に応答して選択的にイネーブルまたはディセーブルされるように構成される請求項22に記載の装置。
  24. 前記第1のPLLがイネーブルされたときに、前記第1のPLLは、前記第1の入力クロック信号に応答して、前記複数の第1の再生クロック信号を生成し、
    前記第2のPLLがイネーブルされた場合、前記第2のPLLは、前記第2の入力クロック信号に応答して、前記複数の第2の再生クロック信号を生成する請求項23に記載の装置。
  25. 前記第2のデバイスの前記第1のデータ入力回路は、前記第2のクロック信号に応答して前記第1のデバイスから転送された前記データを受け取るように構成される請求項24に記載の装置。
  26. 前記第1のデバイスは、前記第1の入力クロック信号と同期する入力データを受け取るための第2のデータ入力回路をさらに備え、前記第1の同期回路は前記データの転送を前記複数の第1の再生クロック信号のうちの少なくとも1つの信号に同期させるように構成される請求項25に記載の装置。
  27. 前記第1の入力クロック信号は、1つのクロック信号とその相補クロック信号とを含み、
    前記第1の出力クロック信号は、1つのクロック信号とその相補クロック信号とを含む請求項26に記載の装置。
  28. 前記第1のクロック回路は、前記1つのクロック信号とその相補クロック信号とを含む前記第1の入力クロック信号に応答して第1の内部クロック信号を供給するように構成され、
    前記第1の出力クロック回路は、1つのクロック信号とその相補クロック信号とを含む第2の内部クロック信号を供給するように構成される請求項27に記載の装置。
  29. 前記第1のPLLは、前記第1のPLLがイネーブルされたときに前記第1の内部クロック信号に応答して前記複数の第1の再生クロック信号を生成するようにさらに構成される請求項28に記載の装置。
  30. 前記第1の同期回路は、前記第1のPLLがディセーブルされたときに前記データの転送を前記第1の内部クロック信号に同期させるようにさらに構成される請求項29に記載の装置。
  31. 前記第2のデバイスの前記第1のデータ入力回路は、前記第2の内部クロック信号に応答して前記第1のデバイスから転送された前記データを受け取るように構成される請求項30に記載の装置。
  32. 前記第1のデバイスは、
    第1のホルダーに識別情報を供給するための第1の識別情報供給器を備え、
    前記第1の制御信号は前記第1のホルダー内に保持されている前記識別情報に応答して供給され、前記第1の制御信号は前記第1のPLLをそれぞれイネーブル、ディセーブルする論理Highおよび論理Lowの一方である請求項31に記載の装置。
  33. システムであって、
    コントローラと、
    オペレーションがクロック信号と同期している直列接続された複数のデバイスとを備え、
    前記デバイスのそれぞれは、
    選択的にイネーブルされるように構成され、イネーブルされている間に入力クロック信号に応答して複数の再生クロック信号を供給する位相同期ループ(PLL)であるとともに、前記再生クロック信号が前記入力クロック信号の異なる量で位相シフトされたバージョンの信号である、位相同期ループ(PLL)と、
    データの転送を前記再生クロック信号のうちの少なくとも1つの信号に同期させるための同期回路とを備えるシステム。
  34. 前記複数のデバイスは、複数のグループに分割され、それぞれのグループ内で、前記デバイスのうちの少なくとも1つは、前のデバイスから前記再生出力クロックを受け取り、前記他方のデバイスは、共通クロック信号を受け取り、前記再生クロック信号を出力する前記デバイスの前記PLLはイネーブルされて、前記他方のデバイスの前記PLLはディセーブルされる請求項33に記載のシステム。
  35. 前記デバイスは、マルチチップパッケージ(MCP)に構造化され、1つのグループのデバイスは1つのパッケージに収まる請求項34に記載のシステム。
  36. 前記ソース同期クロック構造は、複数のデバイスの複数のMCP間に適用される請求項35に記載のシステム。
  37. それぞれのグループは、少なくとも第1および第2のデバイスを備え、前記第1のデバイスは、前記入力クロック信号と同期する入力データを受け取るためのデータ入力回路をさらに備え、前記同期回路は前記データの転送を前記再生クロック信号に同期させるように構成される請求項36に記載のシステム。
  38. 複数のデバイスで使用するための方法であって、前記複数のデバイスのそれぞれは位相同期ループ(PLL)を備え、入力クロック信号に応答して一方のデバイスが他方のデバイスにデータを転送し、
    制御信号に応答して前記PLLを選択的にイネーブルし、前記イネーブルされたPLLは前記入力クロック信号に応答して複数の再生クロック信号を出力し、前記再生クロック信号は前記入力クロック信号の異なる量で位相シフトされたバージョンの信号であるステップを含む方法。
  39. 前記PLLをイネーブルするための第1のレベルを有する前記制御信号を供給するステップをさらに含む請求項38に記載の方法。
  40. 前記供給するステップは、
    前記PLLをディセーブルする第2のレベルを有する前記制御信号を供給するステップをさらに含む請求項39に記載の方法。
  41. デバイス識別子を前記複数のデバイスに割り当てるステップと、
    前記デバイスの前記デバイス識別子に応じたレベルを有する前記制御信号を供給し、前記デバイスのそれぞれの前記PLLは前記制御信号の前記レベルに応答して選択的にイネーブルまたはディセーブルされるステップとをさらに含む請求項40に記載の方法。
  42. 前記供給するステップは、
    前記デバイスの前記デバイス識別子に応じた第1および第2のレベルを有する前記制御信号を供給し、前記デバイスのそれぞれの前記PLLはそれぞれ前記第1および第2の制御信号に応答して選択的にイネーブルされ、ディセーブルされるステップを含む請求項41に記載の方法。
  43. クロック信号に従ってクロック同期するデータを転送するための方法であって、前記データは前記クロック信号の遷移によって画定される期間を有し、
    位相同期ループ(PLL)を選択的にイネーブルまたはディセーブルするステップと、
    前記PLLがイネーブルされている間に前記入力クロック信号に応答して複数の再生クロック信号を供給するステップであるとともに、前記再生クロック信号は前記入力クロック信号の異なる量で位相シフトされたバージョンの信号であるステップと、
    前記データの転送を前記再生クロック信号のうちの少なくとも1つの信号に同期させるステップとを含む方法。
  44. データを第1のデバイスから第2のデバイスに転送するための方法であって、前記データはクロック信号に従ってクロック同期され、前記データは前記クロック信号の遷移によって画定される期間を有し、
    前記第1のデバイスにおいて、
    第1の入力クロック信号に応答して複数の再生クロック信号を供給するステップであって、前記再生クロック信号は前記第1の入力クロック信号の異なる量で位相シフトされたバージョンの信号であるステップと、
    前記データの転送を前記再生クロック信号のうちの少なくとも1つの信号に同期させるステップであるとともに、前記再生クロック信号の前記クロック遷移は前記データの期間に発生し、前記再生クロック信号は出力クロック信号として供給されるステップと、
    前記第2のデバイスにおいて、
    前記第1のデバイスからの前記出力クロック信号に応答して複数の再生クロック信号を供給するステップであるとともに、前記再生クロック信号は前記第1のデバイスからの前記出力クロック信号の異なる量で位相シフトされたバージョンの信号であるステップと、
    前記第1のデバイスから転送された前記データを受け取るステップとを含む方法。
JP2011251459A 2007-12-14 2011-11-17 複数のデバイスおよび柔軟なデータ整列を用いるメモリコントローラを有するシステムにおけるクロック再生およびタイミング方法 Expired - Fee Related JP5562922B2 (ja)

Applications Claiming Priority (10)

Application Number Priority Date Filing Date Title
US1378407P 2007-12-14 2007-12-14
US61/013,784 2007-12-14
US1990708P 2008-01-09 2008-01-09
US61/019,907 2008-01-09
US3960508P 2008-03-26 2008-03-26
US61/039,605 2008-03-26
US12/168,091 US8781053B2 (en) 2007-12-14 2008-07-04 Clock reproducing and timing method in a system having a plurality of devices
US12/168,091 2008-07-04
US12/325,074 US8467486B2 (en) 2007-12-14 2008-11-28 Memory controller with flexible data alignment to clock
US12/325,074 2008-11-28

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2010537216A Division JP5523333B2 (ja) 2007-12-14 2008-12-04 複数のデバイスおよび柔軟なデータ整列を用いるメモリコントローラを有するシステムにおけるクロック再生およびタイミング方法

Publications (2)

Publication Number Publication Date
JP2012085318A true JP2012085318A (ja) 2012-04-26
JP5562922B2 JP5562922B2 (ja) 2014-07-30

Family

ID=40795137

Family Applications (3)

Application Number Title Priority Date Filing Date
JP2010537216A Expired - Fee Related JP5523333B2 (ja) 2007-12-14 2008-12-04 複数のデバイスおよび柔軟なデータ整列を用いるメモリコントローラを有するシステムにおけるクロック再生およびタイミング方法
JP2011251459A Expired - Fee Related JP5562922B2 (ja) 2007-12-14 2011-11-17 複数のデバイスおよび柔軟なデータ整列を用いるメモリコントローラを有するシステムにおけるクロック再生およびタイミング方法
JP2011272153A Expired - Fee Related JP5432976B2 (ja) 2007-12-14 2011-12-13 複数のデバイスおよび柔軟なデータ整列を用いるメモリコントローラを有するシステムにおけるクロック再生およびタイミング方法

Family Applications Before (1)

Application Number Title Priority Date Filing Date
JP2010537216A Expired - Fee Related JP5523333B2 (ja) 2007-12-14 2008-12-04 複数のデバイスおよび柔軟なデータ整列を用いるメモリコントローラを有するシステムにおけるクロック再生およびタイミング方法

Family Applications After (1)

Application Number Title Priority Date Filing Date
JP2011272153A Expired - Fee Related JP5432976B2 (ja) 2007-12-14 2011-12-13 複数のデバイスおよび柔軟なデータ整列を用いるメモリコントローラを有するシステムにおけるクロック再生およびタイミング方法

Country Status (7)

Country Link
US (3) US8467486B2 (ja)
EP (1) EP2220766A4 (ja)
JP (3) JP5523333B2 (ja)
KR (2) KR101647849B1 (ja)
CN (2) CN102623039B (ja)
TW (1) TWI519077B (ja)
WO (1) WO2009076748A1 (ja)

Families Citing this family (33)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8121237B2 (en) 2006-03-16 2012-02-21 Rambus Inc. Signaling system with adaptive timing calibration
US8781053B2 (en) * 2007-12-14 2014-07-15 Conversant Intellectual Property Management Incorporated Clock reproducing and timing method in a system having a plurality of devices
US8467486B2 (en) * 2007-12-14 2013-06-18 Mosaid Technologies Incorporated Memory controller with flexible data alignment to clock
US8134852B2 (en) 2008-10-14 2012-03-13 Mosaid Technologies Incorporated Bridge device architecture for connecting discrete memory devices to a system
US7957173B2 (en) 2008-10-14 2011-06-07 Mosaid Technologies Incorporated Composite memory having a bridging device for connecting discrete memory devices to a system
US8549209B2 (en) 2008-11-04 2013-10-01 Mosaid Technologies Incorporated Bridging device having a configurable virtual page size
US8521980B2 (en) 2009-07-16 2013-08-27 Mosaid Technologies Incorporated Simultaneous read and write data transfer
US9160349B2 (en) * 2009-08-27 2015-10-13 Micron Technology, Inc. Die location compensation
US8966208B2 (en) * 2010-02-25 2015-02-24 Conversant Ip Management Inc. Semiconductor memory device with plural memory die and controller die
US8825967B2 (en) 2011-12-08 2014-09-02 Conversant Intellectual Property Management Inc. Independent write and read control in serially-connected devices
US8710879B2 (en) * 2012-07-06 2014-04-29 Silicon Integrated System Corp. Apparatus and method for multiplying frequency of a clock signal
US9478502B2 (en) * 2012-07-26 2016-10-25 Micron Technology, Inc. Device identification assignment and total device number detection
WO2014071497A1 (en) * 2012-11-09 2014-05-15 Mosaid Technologies Incorporated Method and apparatus for pll locking control in daisy chained memory system
US9257164B2 (en) * 2013-03-14 2016-02-09 Altera Corporation Circuits and methods for DQS autogating
US8860479B2 (en) * 2013-03-15 2014-10-14 Intel Corporation Integrated clock differential buffering
US9529749B2 (en) * 2013-03-15 2016-12-27 Qualcomm Incorporated Data bus inversion (DBI) encoding based on the speed of operation
KR102022645B1 (ko) * 2013-07-16 2019-09-18 에스케이하이닉스 주식회사 반도체 집적 회로 및 클럭 동기화 방법
US9825755B2 (en) * 2013-08-30 2017-11-21 Qualcomm Incorporated Configurable clock tree
US9478268B2 (en) * 2014-06-12 2016-10-25 Qualcomm Incorporated Distributed clock synchronization
US9429982B2 (en) * 2014-09-27 2016-08-30 Qualcomm Incorporated Configurable last level clock driver for improved energy efficiency of a resonant clock
US9692402B2 (en) * 2014-12-25 2017-06-27 Intel Corporation Method, apparatus, system for centering in a high performance interconnect
CN104506179B (zh) * 2014-12-25 2017-05-17 中国电子科技集团公司第二十九研究所 多通道时钟分配及信号同步和分配电路及其选控方法
US9698967B2 (en) 2015-09-11 2017-07-04 Apple Inc. Dual path source synchronous interface
US10019170B2 (en) 2016-03-30 2018-07-10 Micron Technology, Inc. Controlling timing and edge transition of a delayed clock signal and data latching methods using such a delayed clock signal
US10254782B2 (en) * 2016-08-30 2019-04-09 Micron Technology, Inc. Apparatuses for reducing clock path power consumption in low power dynamic random access memory
US10482935B2 (en) * 2017-06-01 2019-11-19 Samsung Electronics Co., Ltd. Nonvolatile memory including duty correction circuit and storage device including the nonvolatile memory
JP2019057344A (ja) 2017-09-20 2019-04-11 東芝メモリ株式会社 メモリシステム
CN108646984B (zh) 2018-05-16 2020-01-03 华为技术有限公司 一种dqs位置调整方法和装置
KR102298275B1 (ko) * 2019-10-29 2021-09-06 주식회사 레오엘에스아이 디바이스의 아이디 할당 방법, 그 디바이스 및 그 디바이스를 포함하는 시스템
JP2021149659A (ja) * 2020-03-19 2021-09-27 キオクシア株式会社 半導体集積回路、メモリコントローラ、およびメモリシステム
US10944407B1 (en) 2020-06-03 2021-03-09 Stmicroelectronics International N.V. Source synchronous interface with selectable delay on source and delay on destination control
KR20220006927A (ko) * 2020-07-09 2022-01-18 삼성전자주식회사 메모리 컨트롤러, 및 이를 포함하는 스토리지 장치, 및 메모리 시스템
US11967363B2 (en) 2020-11-25 2024-04-23 Ap Memory Technology Corporation Display controller having a surge protection unit and display system thereof

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030099138A1 (en) * 2001-10-19 2003-05-29 Kye-Hyun Kyung Devices and methods for controlling active termination resistors in a memory system
JP2003202936A (ja) * 2002-01-08 2003-07-18 Mitsubishi Electric Corp 半導体集積回路
WO2005106888A1 (en) * 2004-04-29 2005-11-10 Koninklijke Philips Electronics N.V. Multiple data rate ram memory controller
US20060044927A1 (en) * 2004-08-31 2006-03-02 You-Keun Han Memory module, memory unit, and hub with non-periodic clock and methods of using the same
US20070086268A1 (en) * 2005-10-17 2007-04-19 Shaetfer Ian P Memory controller with staggered request signal output
WO2007099678A1 (ja) * 2006-03-01 2007-09-07 Matsushita Electric Industrial Co., Ltd. 送信装置および送受信装置
WO2009069244A1 (ja) * 2007-11-30 2009-06-04 Panasonic Corporation 送信方法および送信装置

Family Cites Families (99)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5249270A (en) * 1991-03-29 1993-09-28 Echelon Corporation Development system protocol
US5430859A (en) * 1991-07-26 1995-07-04 Sundisk Corporation Solid state memory system including plural memory chips and a serialized bus
US5751773A (en) * 1992-03-12 1998-05-12 Ntp Incorporated System for wireless serial transmission of encoded information
JPH08500687A (ja) * 1992-08-10 1996-01-23 モノリシック・システム・テクノロジー・インコーポレイテッド ウェハ規模の集積化のためのフォルトトレラントな高速度のバス装置及びバスインタフェース
US5404460A (en) * 1994-01-28 1995-04-04 Vlsi Technology, Inc. Method for configuring multiple identical serial I/O devices to unique addresses through a serial bus
US5475854A (en) * 1994-01-28 1995-12-12 Vlsi Technology, Inc. Serial bus I/O system and method for serializing interrupt requests and DMA requests in a computer system
US5729683A (en) * 1995-05-18 1998-03-17 Compaq Computer Corporation Programming memory devices through the parallel port of a computer system
US5768173A (en) * 1995-11-11 1998-06-16 Samsung Electronics Co., Ltd. Memory modules, circuit substrates and methods of fabrication therefor using partially defective memory devices
JP3455040B2 (ja) * 1996-12-16 2003-10-06 株式会社日立製作所 ソースクロック同期式メモリシステムおよびメモリユニット
US6205191B1 (en) * 1997-07-21 2001-03-20 Rambus Inc. Method and apparatus for synchronizing a control signal
US6442644B1 (en) * 1997-08-11 2002-08-27 Advanced Memory International, Inc. Memory system having synchronous-link DRAM (SLDRAM) devices and controller
US6160423A (en) * 1998-03-16 2000-12-12 Jazio, Inc. High speed source synchronous signaling for interfacing VLSI CMOS circuits to transmission lines
DE69923769T2 (de) * 1998-04-01 2006-02-02 Mosaid Technologies Incorporated, Kanata Asynchrones halbleiterspeicher-fliessband
JP2000030448A (ja) * 1998-07-15 2000-01-28 Mitsubishi Electric Corp 同期型半導体記憶装置
US6144576A (en) * 1998-08-19 2000-11-07 Intel Corporation Method and apparatus for implementing a serial memory architecture
EP1074875A4 (en) 1998-10-28 2006-07-26 Dainippon Printing Co Ltd LIQUID CRYSTAL DISPLAY
US6304921B1 (en) * 1998-12-07 2001-10-16 Motorola Inc. System for serial peripheral interface with embedded addressing circuit for providing portion of an address for peripheral devices
US6301322B1 (en) * 1999-04-23 2001-10-09 Micron Technology, Inc. Balanced dual-edge triggered data bit shifting circuit and method
US6505149B1 (en) * 1999-08-02 2003-01-07 International Business Machines Corporation Method and system for verifying a source-synchronous communication interface of a device
US6393502B1 (en) * 1999-08-31 2002-05-21 Advanced Micro Devices, Inc. System and method for initiating a serial data transfer between two clock domains
US7110423B1 (en) * 1999-11-29 2006-09-19 Cisco Technology, Inc. Method and system for source synchronous clocking
KR20010076311A (ko) * 2000-01-20 2001-08-11 가네꼬 히사시 반도체기억장치
JP2002082830A (ja) * 2000-02-14 2002-03-22 Mitsubishi Electric Corp インターフェイス回路
JP2001251283A (ja) * 2000-03-06 2001-09-14 Hitachi Ltd インターフェース回路
US6816933B1 (en) * 2000-05-17 2004-11-09 Silicon Laboratories, Inc. Serial device daisy chaining method and apparatus
JP3757757B2 (ja) * 2000-05-18 2006-03-22 株式会社日立製作所 リード優先メモリシステム
JP4480855B2 (ja) * 2000-06-08 2010-06-16 富士通マイクロエレクトロニクス株式会社 半導体デバイスを含むモジュール、及びモジュールを含むシステム
JP4081963B2 (ja) * 2000-06-30 2008-04-30 セイコーエプソン株式会社 記憶装置および記憶装置に対するアクセス方法
US6782459B1 (en) * 2000-08-14 2004-08-24 Rambus, Inc. Method and apparatus for controlling a read valid window of a synchronous memory device
US6510100B2 (en) * 2000-12-04 2003-01-21 International Business Machines Corporation Synchronous memory modules and memory systems with selectable clock termination
US6493250B2 (en) * 2000-12-28 2002-12-10 Intel Corporation Multi-tier point-to-point buffered memory interface
US6633965B2 (en) * 2001-04-07 2003-10-14 Eric M. Rentschler Memory controller with 1×/M× read capability
US6889335B2 (en) * 2001-04-07 2005-05-03 Hewlett-Packard Development Company, L.P. Memory controller receiver circuitry with tri-state noise immunity
US6671211B2 (en) * 2001-04-17 2003-12-30 International Business Machines Corporation Data strobe gating for source synchronous communications interface
US6937680B2 (en) * 2001-04-24 2005-08-30 Sun Microsystems, Inc. Source synchronous receiver link initialization and input floating control by clock detection and DLL lock detection
US6504790B1 (en) * 2001-08-09 2003-01-07 International Business Machines Corporation Configurable DDR write-channel phase advance and delay capability
US7062625B1 (en) * 2001-09-14 2006-06-13 Denali Software, Inc. Input/output cells for a double data rate (DDR) memory controller
US6889334B1 (en) * 2001-10-02 2005-05-03 Advanced Micro Devices, Inc. Multimode system for calibrating a data strobe delay for a memory read operation
US6999516B1 (en) * 2001-10-24 2006-02-14 Rambus Inc. Technique for emulating differential signaling
US6928504B2 (en) * 2002-01-02 2005-08-09 International Business Machines Corporation PC card motion detector
US6799235B2 (en) * 2002-01-02 2004-09-28 Intel Corporation Daisy chain latency reduction
US7139308B2 (en) * 2002-04-05 2006-11-21 Sun Microsystems, Inc. Source synchronous bus repeater
US7003686B2 (en) * 2002-05-20 2006-02-21 Hitachi Ltd. Interface circuit
JP4031671B2 (ja) * 2002-06-11 2008-01-09 松下電器産業株式会社 クロックリカバリ回路
US6854043B2 (en) * 2002-07-05 2005-02-08 Hewlett-Packard Development Company, L.P. System and method for multi-modal memory controller system operation
US8949716B2 (en) * 2002-07-23 2015-02-03 Motorola Mobility Llc Adjusting target size of display images based on input device detection
JP4159415B2 (ja) * 2002-08-23 2008-10-01 エルピーダメモリ株式会社 メモリモジュール及びメモリシステム
US6791360B2 (en) * 2002-09-11 2004-09-14 Sun Microsystems, Inc. Source synchronous interface using variable digital data delay lines
US7032039B2 (en) * 2002-10-30 2006-04-18 Atmel Corporation Method for identification of SPI compatible serial memory devices
US7198197B2 (en) * 2002-11-05 2007-04-03 Rambus, Inc. Method and apparatus for data acquisition
US7076677B2 (en) * 2002-12-30 2006-07-11 Intel Corporation Same edge strobing for source synchronous bus systems
US7308524B2 (en) * 2003-01-13 2007-12-11 Silicon Pipe, Inc Memory chain
US7069370B2 (en) * 2003-01-31 2006-06-27 Toshiba Corporation USB memory storage apparatus with integrated circuit in a connector
JP2004246525A (ja) * 2003-02-13 2004-09-02 Matsushita Electric Ind Co Ltd 順序回路、記憶素子、クロック発生回路およびクロック制御方法、ならびに回路変更方法および回路設計支援装置、半導体集積回路およびそれを備えた電子装置、ならびに電子制御装置およびそれを備えた移動体
US7168027B2 (en) * 2003-06-12 2007-01-23 Micron Technology, Inc. Dynamic synchronization of data capture on an optical or other high speed communications link
US7280589B2 (en) * 2003-07-24 2007-10-09 Sun Microsystems, Inc. Source synchronous I/O bus retimer
US7009913B2 (en) * 2003-10-06 2006-03-07 Mitsubishi Denki Kabushiki Kaisha Sequence controller
US7280628B1 (en) * 2003-10-14 2007-10-09 Xilinx, Inc. Data capture for a source synchronous interface
KR100591758B1 (ko) * 2003-10-31 2006-06-22 삼성전자주식회사 패킷 방식을 이용한 메모리 및 그것을 포함한 메모리 시스템
US7031221B2 (en) * 2003-12-30 2006-04-18 Intel Corporation Fixed phase clock and strobe signals in daisy chained chips
US7475174B2 (en) * 2004-03-17 2009-01-06 Super Talent Electronics, Inc. Flash / phase-change memory in multi-ring topology using serial-link packet interface
US7212423B2 (en) * 2004-05-31 2007-05-01 Intel Corporation Memory agent core clock aligned to lane
US7171321B2 (en) * 2004-08-20 2007-01-30 Rambus Inc. Individual data line strobe-offset control in memory systems
JP2006072968A (ja) * 2004-08-31 2006-03-16 Samsung Electronics Co Ltd 非周期クロックを有するメモリモジュール、メモリユニット、ハブ及びこれらを用いた方法
US7145362B1 (en) * 2004-09-10 2006-12-05 Xilinx, Inc. Clock signal-distribution network for an integrated circuit
US6950325B1 (en) * 2004-10-07 2005-09-27 Winbond Electronics Corporation Cascade-connected ROM
KR100719343B1 (ko) * 2005-02-28 2007-05-17 삼성전자주식회사 독립적인 클럭 소스를 기준으로 직렬 클럭을 생성하는 직렬변환기와 데이터의 직렬 전송 방법
JP2006277867A (ja) * 2005-03-30 2006-10-12 Toshiba Corp 半導体記憶装置
US7561651B1 (en) * 2005-03-31 2009-07-14 Chris Karabatsos Synchronization of a data output signal to a clock input
JP5237797B2 (ja) 2005-06-23 2013-07-17 アレイ バイオファーマ、インコーポレイテッド ベンゾイミダゾール化合物を調製するためのSNAr法
US7443741B2 (en) * 2005-07-07 2008-10-28 Lsi Corporation DQS strobe centering (data eye training) method
US8265381B2 (en) 2005-07-25 2012-09-11 Yoichiro Ito Sign authentication system and sign authentication method
US7404050B2 (en) * 2005-08-01 2008-07-22 Infineon Technologies Ag Method of operating a memory device, memory module, and a memory device comprising the memory module
DE602005017765D1 (de) 2005-08-02 2009-12-31 Alcatel Lucent Empfänger eines optischen Signals
JP3950899B2 (ja) * 2005-08-03 2007-08-01 株式会社日立コミュニケーションテクノロジー ビット同期回路
US7652922B2 (en) * 2005-09-30 2010-01-26 Mosaid Technologies Incorporated Multiple independent serial link memory
US20070076502A1 (en) 2005-09-30 2007-04-05 Pyeon Hong B Daisy chain cascading devices
US20070165457A1 (en) * 2005-09-30 2007-07-19 Jin-Ki Kim Nonvolatile memory system
US7496777B2 (en) * 2005-10-12 2009-02-24 Sun Microsystems, Inc. Power throttling in a memory system
US7411429B2 (en) * 2005-10-28 2008-08-12 Silicon Integrated Systems Corp. System and method for clock switching
TWI309531B (en) * 2006-01-19 2009-05-01 Realtek Semiconductor Corp Waveform generator and related method thereof
US8364861B2 (en) 2006-03-28 2013-01-29 Mosaid Technologies Incorporated Asynchronous ID generation
US8069328B2 (en) * 2006-03-28 2011-11-29 Mosaid Technologies Incorporated Daisy chain cascade configuration recognition technique
US20070260841A1 (en) * 2006-05-02 2007-11-08 Hampel Craig E Memory module with reduced access granularity
KR20060087485A (ko) 2006-06-30 2006-08-02 (주)케이시크 통합문서를 이용한 웹서비스 운용 방법
DE102006030799B4 (de) 2006-06-30 2010-06-17 Trumpf Laser- Und Systemtechnik Gmbh Gaslaser mit einem instabilen Laserresonator und einer Lichtleiterfaser
EP2062261A4 (en) 2006-08-22 2010-01-06 Mosaid Technologies Inc EVOLVING MEMORY SYSTEM
KR20090074751A (ko) * 2006-10-04 2009-07-07 마벨 테크날러지 재팬 와이.케이. 플래시 메모리 제어 인터페이스
US7818464B2 (en) 2006-12-06 2010-10-19 Mosaid Technologies Incorporated Apparatus and method for capturing serial input data
WO2008067636A1 (en) 2006-12-06 2008-06-12 Mosaid Technologies Incorporated Apparatus and method for communicating with semiconductor devices of a serial interconnection
US8433874B2 (en) 2006-12-06 2013-04-30 Mosaid Technologies Incorporated Address assignment and type recognition of serially interconnected memory devices of mixed type
US8984249B2 (en) 2006-12-20 2015-03-17 Novachips Canada Inc. ID generation apparatus and method for serially interconnected devices
US20080201588A1 (en) 2007-02-16 2008-08-21 Mosaid Technologies Incorporated Semiconductor device and method for reducing power consumption in a system having interconnected devices
US7796462B2 (en) 2007-02-22 2010-09-14 Mosaid Technologies Incorporated Data flow control in multiple independent port
US7865756B2 (en) 2007-03-12 2011-01-04 Mosaid Technologies Incorporated Methods and apparatus for clock signal synchronization in a configuration of series-connected semiconductor devices
US7624310B2 (en) * 2007-07-11 2009-11-24 Micron Technology, Inc. System and method for initializing a memory system, and memory device and processor-based system using same
US20090125790A1 (en) * 2007-11-13 2009-05-14 Mcm Portfolio Llc Method and Apparatus of Automatically Selecting Error Correction Algorithms by a NAND Flash Controller
US8781053B2 (en) 2007-12-14 2014-07-15 Conversant Intellectual Property Management Incorporated Clock reproducing and timing method in a system having a plurality of devices
US8467486B2 (en) * 2007-12-14 2013-06-18 Mosaid Technologies Incorporated Memory controller with flexible data alignment to clock

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030099138A1 (en) * 2001-10-19 2003-05-29 Kye-Hyun Kyung Devices and methods for controlling active termination resistors in a memory system
JP2003202936A (ja) * 2002-01-08 2003-07-18 Mitsubishi Electric Corp 半導体集積回路
WO2005106888A1 (en) * 2004-04-29 2005-11-10 Koninklijke Philips Electronics N.V. Multiple data rate ram memory controller
JP2007536773A (ja) * 2004-04-29 2007-12-13 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ 多重データレートramメモリコントローラ
US20060044927A1 (en) * 2004-08-31 2006-03-02 You-Keun Han Memory module, memory unit, and hub with non-periodic clock and methods of using the same
US20070086268A1 (en) * 2005-10-17 2007-04-19 Shaetfer Ian P Memory controller with staggered request signal output
WO2007099678A1 (ja) * 2006-03-01 2007-09-07 Matsushita Electric Industrial Co., Ltd. 送信装置および送受信装置
WO2009069244A1 (ja) * 2007-11-30 2009-06-04 Panasonic Corporation 送信方法および送信装置

Also Published As

Publication number Publication date
KR20140007468A (ko) 2014-01-17
CN101897119B (zh) 2014-04-30
US8467486B2 (en) 2013-06-18
EP2220766A4 (en) 2012-02-01
JP2011507358A (ja) 2011-03-03
TWI519077B (zh) 2016-01-21
JP5523333B2 (ja) 2014-06-18
US20090154285A1 (en) 2009-06-18
JP5562922B2 (ja) 2014-07-30
KR101647849B1 (ko) 2016-08-11
CN101897119A (zh) 2010-11-24
EP2220766A1 (en) 2010-08-25
KR101582020B1 (ko) 2015-12-31
JP5432976B2 (ja) 2014-03-05
CN102623039A (zh) 2012-08-01
JP2012060677A (ja) 2012-03-22
TW201214975A (en) 2012-04-01
CN102623039B (zh) 2015-08-19
US8837655B2 (en) 2014-09-16
WO2009076748A1 (en) 2009-06-25
KR20100092930A (ko) 2010-08-23
US20150082072A1 (en) 2015-03-19
US20130243137A1 (en) 2013-09-19

Similar Documents

Publication Publication Date Title
JP5432976B2 (ja) 複数のデバイスおよび柔軟なデータ整列を用いるメモリコントローラを有するシステムにおけるクロック再生およびタイミング方法
US9148277B2 (en) Clock reproducing and timing method in a system having a plurality of devices
US11669248B2 (en) Clock mode determination in a memory system
TWI525998B (zh) 於包含複數裝置及具有撓性資料對準之記憶體控制器的系統中之時脈再生及計時裝置、設備及其方法

Legal Events

Date Code Title Description
RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20130220

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130226

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20130226

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130513

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130917

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20131129

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140611

R150 Certificate of patent or registration of utility model

Ref document number: 5562922

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R360 Written notification for declining of transfer of rights

Free format text: JAPANESE INTERMEDIATE CODE: R360

R360 Written notification for declining of transfer of rights

Free format text: JAPANESE INTERMEDIATE CODE: R360

R371 Transfer withdrawn

Free format text: JAPANESE INTERMEDIATE CODE: R371

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees