JP7066556B2 - メモリシステム - Google Patents

メモリシステム Download PDF

Info

Publication number
JP7066556B2
JP7066556B2 JP2018131546A JP2018131546A JP7066556B2 JP 7066556 B2 JP7066556 B2 JP 7066556B2 JP 2018131546 A JP2018131546 A JP 2018131546A JP 2018131546 A JP2018131546 A JP 2018131546A JP 7066556 B2 JP7066556 B2 JP 7066556B2
Authority
JP
Japan
Prior art keywords
signal
duty cycle
range
circuit
value
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.)
Active
Application number
JP2018131546A
Other languages
English (en)
Other versions
JP2020009309A (ja
Inventor
嘉南 王
浩一 田代
健司 菊池
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Kioxia Corp
Original Assignee
Kioxia Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Kioxia Corp filed Critical Kioxia Corp
Priority to JP2018131546A priority Critical patent/JP7066556B2/ja
Priority to US16/391,606 priority patent/US11079964B2/en
Publication of JP2020009309A publication Critical patent/JP2020009309A/ja
Application granted granted Critical
Publication of JP7066556B2 publication Critical patent/JP7066556B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0659Command handling arrangements, e.g. command buffers, queues, command scheduling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/1668Details of memory controller
    • G06F13/1689Synchronisation and timing concerns
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1008Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
    • G06F11/1048Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices using arrangements adapted for a specific error detection or correction feature
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4204Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus
    • G06F13/4234Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being a memory bus
    • G06F13/4243Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being a memory bus with synchronous protocol
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0604Improving or facilitating administration, e.g. storage management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • G06F3/0679Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Quality & Reliability (AREA)
  • Dram (AREA)
  • Memory System (AREA)
  • Read Only Memory (AREA)

Description

実施形態は、概してメモリシステムに関する。
半導体メモリおよび半導体メモリを制御するメモリコントローラを含んだメモリシステムが知られている。
特開2013-200830号公報
高性能なメモリシステムを提供しようとするものである。
一実施形態によるメモリシステムは、半導体メモリとメモリコントローラを含む。メモリコントローラは、調整回路と、セレクタと、制御回路と、を含む。調整回路は、第1デューティーサイクルを有する第1信号を受け取り、制御信号に基づいて上記第1デューティーサイクルと異なる第2デューティーサイクルを有する第2信号を間欠的に上記メモリコントローラの外部に出力するように構成されている。セレクタは、上記第2信号を受け取り、上記メモリコントローラの外部から上記第2信号に基づく第3信号を受け取り、上記第2信号および上記第3信号の選択された方を出力するように構成されている。制御回路は、上記第2信号および上記第3信号のうちの上記セレクタから出力された一方に基づいて上記制御信号を生成するように構成されている。上記制御回路は、上記セレクタから上記第2信号が出力されている間に、上記第2信号のデューティーサイクルを第1領域に収める上記制御信号の値の第1範囲を割り出し、上記セレクタから上記第3信号が出力されている間に、上記第1範囲の中から、上記第3信号のデューティーサイクルを第2領域に収める上記制御信号の値の第2範囲を割り出す、ようにさらに構成されている。
第1実施形態のメモリコントローラおよび関連する要素を示す。 第1実施形態のメモリコントローラの機能ブロックを示す。 第1実施形態の補正コードの値と各値が示す情報との関係を示す。 第1実施形態のメモリコントローラの動作のフローを示す。 第1実施形態の或るステップのサブフローを示す。 第1実施形態の或るステップのサブフローを示す。 第1実施形態のいくつかのステップの間の補正コードの値の範囲の変遷を示す。 参考用のメモリコントローラの機能ブロックを示す。 参考例での或るケースでのいくつかの信号の波形を示す。 参考例での別のケースでのいくつかの信号の波形を示す。
以下に実施形態が図面を参照して記述される。以下の記述において、略同一の機能および構成を有する構成要素は同一符号を付され、繰り返しの説明は省略される場合がある。ある実施形態についての記述は全て、明示的にまたは自明的に排除されない限り、別の実施形態の記述としても当てはまる。
各機能ブロックは、ハードウェア、コンピュータソフトウェアのいずれかまたは両者を組み合わせたものとして実現することができる。このため、各機能ブロックがこれらのいずれでもあることが明確となるように、概してそれらの機能の観点から記述される。各機能ブロックが、以下の例のように区別されていることは必須ではない。例えば、一部の機能が例示の機能ブロックとは別の機能ブロックによって実行されてもよい。さらに、例示の機能ブロックがさらに細かい機能サブブロックに分割されていてもよい。
本明細書および特許請求の範囲において、ある第1要素が別の第2要素に「接続されている」とは、第1要素が直接的または常時あるいは選択的に導電性となる要素を介して第2要素に接続されていることを含む。
(第1実施形態)
<1-1.構造(構成)>
図1は、第1実施形態のメモリシステムを示す。メモリシステムは、半導体メモリ2およびメモリコントローラ1を含む。図1に示されるように、メモリコントローラ1は、半導体メモリ2を制御し、例えばホスト装置3の指示に基づいて半導体メモリ2を制御し、例えば1つのチップとして構成されることができる。
半導体メモリ2は、例えば1つのチップとして構成されることができ、例えばNAND型フラッシュメモリである。半導体メモリ2は、例えばプリント基板上に設けられることができる。半導体メモリ2とメモリコントローラ1との間の接続は、NANDバス5により行われることができる。NANDバス5は、後述される種々の信号を伝送し、例えばプリント基板上の配線により実現されることができる。
半導体メモリ2は、メモリセルアレイ(セルアレイ)11、入出力回路12、周辺回路13等の要素を含む。セルアレイ11は複数のメモリセルトランジスタ(セルトランジスタ)MTを含む。セルトランジスタMTは、データを保持することができる。
周辺回路13は、シーケンサ、ドライバ、センスアンプ、およびロウデコーダ等の要素を含み、入出力回路12から種々の信号を受け取り、受け取られた信号に基づいて、セルトランジスタMTにデータを書き込み、セルトランジスタMTに保持されているデータを読み出す。
入出力回路12は、NANDバス5を介して、メモリコントローラ1と接続されている。NANDバス5は、複数の制御信号および例えば8ビットの幅の信号DQを伝送する。入出力回路12は、NANDバス5を介して、メモリコントローラ1から複数の制御信号を受け取り、受け取られた制御信号に基づいて、種々の内部制御信号を周辺回路13に供給する。また、入出力回路12は、メモリコントローラ1から書き込みデータを受け取り、受け取られた書き込みデータを周辺回路13に供給する。また、入出力回路12は、周辺回路13から、セルトランジスタMTに保持されていたデータを受け取り、NANDバス5を介してメモリコントローラ1に供給する。
信号DQは、コマンド、書き込みデータ、読み出しデータ、アドレス、およびステータスデータ等を含む。NANDバス5によって伝送される制御信号は、信号 ̄CE、CLE、ALE、 ̄WE、RE、 ̄RE、 ̄WP、データストローブ信号DQSおよび ̄DQS、ならびに信号RY/ ̄BYを含む。本明細書において、信号の名称の前の記号「 ̄」は、記号「 ̄」を伴わない名称の信号の反転論理を示し、記号「 ̄」を伴う信号がローレベルの場合にアサートされていることを意味する。
アサートされている信号 ̄CEは、半導体メモリ2をイネーブルにする。アサートされている信号CLEは、この信号CLEと並行して半導体メモリ2に入力される信号DQがコマンドであることを半導体メモリ2に通知する。アサートされている信号ALEは、この信号ALEと並行して半導体メモリ2に入力される信号DQがアドレスであることを半導体メモリ2に通知する。アサートされている信号 ̄WEは、この信号 ̄WEと並行して半導体メモリ2に入力される信号DQを半導体メモリ2に取り込ませることを指示する。
信号REおよび ̄REは、半導体メモリ2に信号DQを出力することを指示する。より具体的には、アサートされている信号REおよび ̄REは、半導体メモリ2に信号DQを出力することを指示する。信号REおよび ̄REは、それぞれ、リードイネーブル信号REおよび ̄REと称される場合がある。上記のようにリードイネーブル信号REおよび ̄REは半導体メモリ2に信号DQを出力することを指示し、よって、メモリコントローラ1が半導体メモリ2からの信号DQの出力を望むタイミングで出力される。このため、常時供給されるクロック信号とは異なり、リードイネーブル信号REおよび ̄REは、間欠的に出力される。リードイネーブル信号REおよび ̄REは、50%にできるだけ近いデューティーサイクルを有することが望まれる。
アサートされている信号 ̄WPは、データ書き込みおよび消去の禁止を半導体メモリ2に指示する。信号RY/ ̄BYは、半導体メモリ2がレディー状態であるか、ビジー状態であるかを示し、ローレベルによってビジー状態を示す。半導体メモリ2は、レディー状態においてメモリコントローラ1からのコマンドを受け付け、ビジー状態においてメモリコントローラ1からのコマンドを受け付けない。
メモリコントローラ1から半導体メモリ2に向かうデータストローブ信号DQSおよび ̄DQSは、信号DQを取り込むべきタイミングを半導体メモリ2に指示する。半導体メモリ2からメモリコントローラ1に向かうデータストローブ信号DQSおよび ̄DQSは、信号DQを取り込むべきタイミングをメモリコントローラ1に通知する。データストローブ信号DQSおよび ̄DQSは、50%にできるだけ近いデューティーサイクルを有することが望まれる。
入出力回路12は、リードイネーブル信号REおよび ̄REから、それぞれ、データストローブ信号DQSおよび ̄DQSを生成する。データストローブ信号DQSおよび ̄DQSは、それぞれ、リードイネーブル信号REおよび ̄REと同じデューティーサイクルを有することが望まれる。したがって、データストローブ信号DQSおよび ̄DQSは、リードイネーブル信号REおよび ̄REと同じかつ50%に近いデューティーサイクルを有することが望まれる。しかしながら、実際には、データストローブ信号DQSおよび ̄DQSは、以下に記述される要因を含む種々の要因により、それぞれリードイネーブル信号REおよび ̄REと異なるデューティーサイクルを有し得る。
NANDバス5は、不可避的に寄生容量を有しており、寄生容量に起因して、受け取られた信号の波形形状を不可避的に歪ませて伝送し得る。このため、リードイネーブル信号REおよび ̄REの波形がNANDバス5により歪み、歪んだ波形を有するリードイネーブル信号REおよび ̄REからデータストローブ信号DQSおよび ̄DQSが生成され、データストローブ信号DQSおよび ̄DQSの波形はさらにNANDバス5によって歪み得る。このため、メモリコントローラ1から出力されたリードイネーブル信号REおよび ̄REの波形は、メモリコントローラ1によって受け取られたデータストローブ信号DQSおよび ̄DQSの波形と大きく異なり得る。
図2は、第1実施形態のメモリコントローラ1の機能ブロックを示す。図2に示されるように、メモリコントローラ1は、クロック生成回路21、DCC(duty cycle corrector)回路22、DCC制御回路23、デューティーサイクル検出回路24、制御信号出力回路25、制御信号入力回路26、セレクタ回路27等の要素を含む。
クロック生成回路21は、50%のデューティーサイクルのクロック信号CLKを出力する。DCC回路22は、クロック信号CLKを受け取り、DCC制御回路23からの補正コードCCに基づいてクロック信号CLKのデューティーサイクルを変化させ、変化されたデューティーサイクルを有する内部クロック信号CLKIを出力する。
制御信号出力回路25は、内部クロック信号CLKIを受け取り、内部クロック信号CLKIからリードイネーブル信号REおよび ̄REを生成する。すなわち、制御信号出力回路25は、内部クロック信号CLKIとデューティーサイクルおよび位相が同じか実質的に同じであるリードイネーブル信号REおよびリードイネーブル信号 ̄REを生成する。リードイネーブル信号REは、例えば、内部クロック信号CLKIと同じか実質的に同じか異なる振幅を有し、内部クロック信号CLKIと実質的に同じデューティーサイクルを有するように生成される。リードイネーブル信号REは、内部クロック信号CLKIと同じか実質的に同じ信号であってもよい。
制御信号入力回路26は、データストローブ信号DQSおよび ̄DQSを受け取る。制御信号入力回路26は、データストローブ信号DQSおよび ̄DQSを図示せぬ回路、例えばデータ入力回路に供給する。データ入力回路は、データストローブ信号DQSおよび ̄DQSに基づいて、信号DQを取り込む。制御信号入力回路26はまた、データストローブ信号DQSおよび ̄DQSから、内部データストローブ信号DQSIを生成する。内部データストローブ信号DQSIは、例えば、データストローブ信号DQSおよび ̄DQSと同じか異なる振幅を有し、データストローブ信号DQSおよび ̄DQSと実質的に同じデューティーサイクルを有するように生成される。内部データストローブ信号DQSIは、データストローブ信号DQSと同じか実質的に同じ信号であってもよい。
制御信号入力回路26はまた、信号REZIを出力する。信号REZIは、リードイネーブル信号REまたは ̄REであることができる。信号REZIは、リードイネーブル信号REまたは ̄REから生成されることができ、例えば、リードイネーブル信号REまたは ̄REと同じか実質的に同じ振幅を有し、リードイネーブル信号REまたは ̄REと同じか実質的に同じデューティーサイクルを有することができる。
セレクタ回路27は、信号REZIを制御信号出力回路25から受け取るとともに、内部データストローブ信号DQSIを制御信号入力回路26から受け取る。そして、セレクタ回路27は、DCC制御回路23の制御によって、信号REZIまたは内部データストローブ信号DQSIを検出対象信号DSとして出力する。
デューティーサイクル検出回路24は、検出対象信号DSを受け取り、検出対象信号DSのデューティーサイクルを検出する。デューティーサイクルの検出は、既知の任意の方法で行われることが可能であり、検出の方法によって本実施形態は限定されない。デューティーサイクル検出回路24は、検出対象信号DSの検出されたデューティーサイクルに基づいて、検出コードDCを生成する。検出コードDCは、例えば複数ビットを有し、ビットの値の組合せによって種々の値を示し、検出対象信号DSのデューティーサイクルに関する情報を示す。
DCC制御回路23は、検出コードDCを受け取り、検出コードDCを参照して、補正コードCCを生成する。
<1-2.動作>
<1-2-1.DCC制御回路およびDCC回路の動作>
図3は、第1実施形態のDCC制御回路23による補正コードCCの複数の値と、各値が示す情報との関係を示す。図3は、補正コードCCが3ビットの例を示す。図3に示されるように、補正コードCCの相違する複数の値は、相違する情報を示し、相違する値は、デューティーサイクルの相違する値の調整を指示する。例えば、値000、001、010、011、100、101、110、および111は、それぞれ、値A1、A2、A3、A4、A5、A6、A7、およびA8だけのデューティーサイクルの調整量を示す。値A1、A2、A3、A4、A5、A6、A7、およびA8は、互いに異なり、0または正または負の値であり得る。
DCC回路22は、クロック信号CLKのデューティーサイクルを、受け取っている補正コードCCの値に応じた値だけ調整し、調整の結果得られるデューティーサイクルを有する内部クロック信号CLKIを出力し続ける。
<1-2-2.リードイネーブル信号REおよび ̄REのデューティーサイクル調整のための動作>
図4は、第1実施形態のメモリコントローラ1の動作のフローを示し、特に、信号REZI、ひいてはリードイネーブル信号REおよび ̄REのデューティーサイクル調整のためのフローを示す。いくつかのステップは、後に詳述される。
図4のフローは、例えば、メモリコントローラ1に電源が供給され始めた後でかつメモリコントローラ1が半導体メモリ2へのアクセス(例えばデータのリード)を行う前に行われる。換言すると、メモリコントローラ1が半導体メモリ2にアクセスできるようになるための手順の一部として、図4のフローが行われる。
図4に示されるように、DCC制御回路23は、セレクタ回路27の入力として、信号REZIを選択する(ステップS1)。このような選択により、セレクタ回路27の回路の入力が次に切り替えられるまで、検出対象信号DSは信号REZIであり、以下の記述では、検出対象信号DSとの呼称に代えて、信号REZIが使用される場合がある。
ステップS1の時点で、DCC回路22は、デフォルトの状態にあり、クロック信号CLKのデューティーサイクルを何ら調整していない。よって、内部クロック信号CLKIは、クロック信号CLKのデューティーサイクルと実質的に同じデューティーサイクルを有し、例えば、50%のデューティーサイクルを有する。
また、ステップS1およびS2の実行の間、デューティーサイクル検出回路24は、信号REZI(検出対象信号DS)のデューティーサイクルを逐次検出し、検出されたデューティーサイクルに基づく値の検出コードDCを逐次出力する。
ステップS2において、DCC制御回路23は、リードイネーブル信号REおよび ̄REのデューティーサイクルが或る第1領域、例えば45%以上かつ55%未満の領域に収まる結果となる補正コードCCの値の範囲を割り出す。明細書の以下の記述では、ステップS2で割り出される範囲は、第1範囲と称される。第1範囲の割り出しのために、例えば、DCC制御回路23は、検出コードDCの値を監視しながら、補正コードCCの値を逐次変化させる。補正コードCCの値の変化に応じて、内部クロック信号CLKIのデューティーサイクル、ひいてはリードイネーブル信号REおよび ̄REならびに信号REZIのデューティーサイクルは変化する。こうして、ステップS2の間、DCC制御回路23は、内部クロック信号CLKIが或る大きさのデューティーサイクルを有するときの、ひいては、リードイネーブル信号REおよび ̄REならびに信号REZIが或る大きさのデューティーサイクルを有するときの、補正コードCCの値を知ることができる。第1範囲の割り出しは、任意の方法で行われることが可能であり、一例が後述される。
ステップS3において、DCC制御回路23は、セレクタ回路27の入力として、内部データストローブ信号DQSIを選択する。このような選択により、セレクタ回路27の回路の入力が次に切り替えられるまで、検出対象信号DSは内部データストローブ信号DQSIであり、以下の記述では、検出対象信号DSとの呼称に代えて、内部データストローブ信号DQSIが使用される場合がある。
ステップS4において、DCC制御回路23は、内部データストローブ信号DQSIのデューティーサイクルが或る第2領域、例えば45%以上かつ55%未満の領域に収まる結果となる補正コードCCの値の範囲を割り出す。明細書の以下の記述では、ステップS4で割り出される範囲は、第2範囲と称される。第2範囲の割り出しのために、例えば、DCC制御回路23は、検出コードDCの値を監視しながら、補正コードCCの値を逐次変化させる。補正コードCCの値の変化に応じて、内部クロック信号CLKIのデューティーサイクル、ひいては内部データストローブ信号DQSIのデューティーサイクルは変化する。こうして、ステップS4の間、DCC制御回路23は、内部クロック信号CLKIが或る大きさのデューティーサイクルを有するときの、ひいては、内部データストローブ信号DQSIが或る大きさのデューティーサイクルを有するときの、補正コードCCの値を知ることができる。第2範囲の割り出しは、任意の方法で行われることが可能であり、一例が後述される。
ステップS5において、DCC制御回路23は、ステップS4で割り出された第2範囲中の1つの値を選択し、以降、選択された値を使用し続ける。この結果、内部クロック信号CLKIは、選択された値に基づいたデューティーサイクルを有し続ける。
<1-2-3.ステップS2の詳細の例>
図5は、第1実施形態のステップS2のサブフローを示す。図5に示されるように、ステップS1は、ステップS21に継続する。ステップS21において、DCC制御回路23は、補正コードCCの未選択の値の1つを選択し、選択された値を有する補正コードCCをDCC回路22に供給する。ステップS21の結果、検出対象信号DS(信号REZI)のデューティーサイクルは、ステップS21で選択された値を有する補正コードCCに基づく大きさを有するに至る。
ステップS22において、DCC制御回路23は、検出コードDCを使用して、信号REZIのデューティーサイクルが、第1領域(例えば45%以上かつ55%未満の領域)内にあるかを判断する。信号REZIのデューティーサイクルが第1領域内にある場合(ステップS22のYes分岐)、処理はステップS23に移行する。ステップS23において、DCC制御回路23は、補正コードCCの現在選択されている値を第1範囲に含めることを決定する。一方、信号REZIのデューティーサイクルが第1領域内にない場合(ステップS22のNo分岐)、処理はステップS24に移行する。ステップS24において、DCC制御回路23は、補正コードCCの現在選択されている値を第1範囲に含めないことを決定する。
ステップS23およびS24はともにステップS25に移行する。ステップS25において、DCC制御回路23は、補正コードCCの全ての値が選択されたかを判断する。全ての値が選択されていない場合(ステップS25のNo分岐)、処理はステップS21に戻る。全ての値が選択済みである場合(ステップS25のYes分岐)、処理は、ステップS3に移行する。ステップS25でのYesの分岐の結果、補正コードCCの値の第1範囲が得られる。
補正コードCCの値の詳細によっては、全ての値がステップS21で選択される必要はない。例えば、補正コードCCの或る値A(mは自然数)およびAm+1の順に内部クロック信号CLKIのデューティーサイクルが大きくなるように値AおよびAm+1が定められている場合で、値Aの補正コードCCでの信号REのZIデューティーサイクルが第1領域の上限(例えば55%)以上の大きさを有する場合、値Am+1は選択される必要はなく、第1範囲から除外されることができる。同様に、補正コードCCの或る値A(pは自然数)およびAp-1の順に内部クロック信号CLKIのデューティーサイクルが小さくなるように値ApおよびAp-1が定められている場合で、値Apの補正コードCCでの信号REZIのデューティーサイクルが第1領域の下限(例えば45%)未満の大きさを有する場合、値Ap-1は選択される必要はなく、第1範囲から除外されることができる。
<1-2-4.ステップS4の詳細の例>
図6は、第1実施形態のステップS4のサブフローを示す。図6のフローは、図5のフローに類似する。図6に示されるように、ステップS3は、ステップS41に継続する。
ステップS41において、DCC制御回路23は、補正コードCCの第1範囲中の全ての値のうちの未選択の1つを選択し、選択された値を有する補正コードCCをDCC回路22に供給する。ステップS41の結果、検出対象信号DS(内部データストローブ信号DQSI)のデューティーサイクルは、ステップS41で選択された値を有する補正コードCCに基づく大きさを有するに至る。
ステップS42において、DCC制御回路23は、検出コードDCを使用して、内部データストローブ信号DQSIのデューティーサイクルが、第2領域(例えば45%以上かつ55%未満の領域)内にあるかを判断する。内部データストローブ信号DQSIのデューティーサイクルが第2領域内にある場合(ステップS42のYes分岐)、処理はステップS43に移行する。ステップS43において、DCC制御回路23は、補正コードCCの現在選択されている値を第2範囲に含めることを決定する。一方、内部データストローブ信号DQSIのデューティーサイクルが第2領域内にない場合(ステップS42のNo分岐)、処理はステップS44に移行する。ステップS44において、DCC制御回路23は、補正コードCCの現在選択されている値を第2範囲に含めないことを決定する。
ステップS43およびS44はともにステップS45に移行する。ステップS45において、DCC制御回路23は、補正コードCCの第1範囲中の全ての値が選択されたかを判断する。全ての値が選択されていない場合(ステップS45のNo分岐)、処理はステップS41に戻る。全ての値が選択済みである場合(ステップS45のYes分岐)、処理は、ステップS5に移行する。ステップS45でのYesの分岐の結果、補正コードCCの値の第2範囲が得られる。
第1範囲の決定の場合と同様に、補正コードCCの値の詳細によっては、第1範囲中の全ての値がステップS41で選択される必要はない。例えば、補正コードCCの或る値AおよびAm+1の順に内部クロック信号CLKIのデューティーサイクルが大きくなるように値AおよびAm+1が定められている場合で、値Aの補正コードCCでの内部データストローブ信号DQSIのデューティーサイクルが第2領域の上限(例えば55%)以上の大きさを有する場合、値Am+1は選択される必要はなく、第2範囲から除外されることができる。同様に、補正コードの或る値AおよびAp-1の順に内部クロック信号CLKIのデューティーサイクルが小さくなるように値AおよびAp-1が定められている場合で、値Aの補正コードCCでの内部データストローブ信号DQSIのデューティーサイクルが第2領域の下限(例えば45%)未満の大きさを有する場合、値Ap-1は選択される必要ななく、第2範囲から除外されることができる。
<1-2-5.補正コードの値の範囲の変遷およびステップS5の詳細の例>
図7は、第1実施形態のステップS2、S4、S5の間の、補正コードCCの値の範囲の変遷を示す。図7に示されるように、ステップS1の段階(図7の左上の表)では、補正コードCCの値の選択されることが可能な範囲は、全ての値である。
ステップS2の完了によって補正コードCCの値の第1範囲が割り出され、補正コードCCの値の選択されることが可能な範囲は第1範囲へと狭まる。図7の例では、第1範囲は、001から110まで、すなわち、001、010、011、100、101、および110を含む。
同様に、ステップS4の完了によって補正コードCCの値の第2範囲が割り出され、補正コードCCの値の選択されることが可能な範囲は第2範囲へと狭まる。図7の例では、第2範囲は、010から101まで、すなわち、010、011、100、および101を含む。
ステップS5において、DCC制御回路23は、第2範囲から補正コードCCの値を選択する。例として、DCC制御回路23は、第2範囲の中央に位置する値を選択することができる。図7の例では、011または100が選択されることができ、例えば011が選択される。
<1-3.利点(効果)>
第1実施形態によれば、リードイネーブル信号REおよび ̄REの課せられる制約を満たしつつ、改善されたデューティーサイクルを有するデータストローブ信号DQSを得られるメモリコントローラが実現されることができる。詳細は、以下の通りである。
図8は、参考用のメモリコントローラ101の機能ブロックを示す。メモリコントローラ101は、セレクタ回路27を含んでいない。このことに基づいて、内部データストローブ信号DQSIが、直接、デューティーサイクル検出回路24に供給される。
上記のように、リードイネーブル信号REおよび ̄REのデューティーサイクルは第1領域に収まる必要があり、データストローブ信号DQSのデューティーサイクルも第2領域に収まる必要がある。特に、データストローブ信号DQSは、50%のデューティーサイクルにより近いことが望まれる。
図9および図10の各々は、メモリコントローラ101でのクロック信号CLK、および或るデューティーサイクルに調整された内部クロック信号CLKIに基づくリードイネーブル信号 ̄RE、ならびに対応するデータストローブ信号DQS(≒内部データストローブ信号DQSI)の各々の波形を示す。図9はリードイネーブル信号 ̄REのデューティーサイクルが第1領域、例として50±5%に収まっているケースを示し、図10はデータストローブ信号DQSのデューティーサイクルが第2領域、例として50±5%に収まっているケースを示す。
上記のように、データストローブ信号DQSおよび ̄DQSは、リードイネーブル信号REおよび ̄REと同じまたは同様かつ50%に近いデューティーサイクルを有することを目指して、リードイネーブル信号REおよび ̄REから生成される。しかしながら、NANDバス5の寄生容量および(または)半導体メモリ2中の配線経路の寄生容量等に起因して、制御信号出力回路25から出力されたリードイネーブル信号REおよび ̄REの波形は、制御信号入力回路26によって受け取られたデータストローブ信号DQSおよび ̄DQSの波形と大きく異なり得る。このため、図9に示されるように、リードイネーブル信号 ̄REのデューティーサイクルが第1領域に収まるように内部クロック信号CLKIのデューティーサイクルが調整されたとしても、そのようなデューティーサイクルの内部クロック信号CLKIでは、データストローブ信号DQSのデューティーサイクルが第2領域に収まらない場合がある。
一方、図10に示されるように、データストローブ信号DQSのデューティーサイクルが第2領域に収まるように内部クロック信号CLKIのデューティーサイクルが調整されたとしても、そのようなデューティーサイクルの内部クロック信号CLKIでは、リードイネーブル信号 ̄REのデューティーサイクルが第1領域に収まらない場合がある。特に、リードイネーブル信号 ̄REが数100Mbps等の高い周波数を有するケースでは、データストローブ信号DQSのデューティーサイクルを50%により近づけようとすると、リードイネーブル信号 ̄REのデューティーサイクルが第1領域に収まらなくなりやすい。
第1実施形態によれば、メモリコントローラ1は、リードイネーブル信号REおよび ̄REのデューティーサイクルが第1領域に収まる補正コードCCの値の第1範囲を決定し、第1範囲の中から、データストローブ信号DQSが第2領域に収まる補正コードCCの値の第2範囲を決定し、第2範囲の中から1つの値を選択する。このため、メモリコントローラ1は、リードイネーブル信号REおよび ̄REのデューティーサイクルが第1領域に収まるとともにデータストローブ信号DQSのデューティーサイクルが第2領域に収まる内部クロック信号CLKIを生成できる。
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれると同様に、特許請求の範囲に記載された発明とその均等の範囲に含まれるものである。
1…メモリコントローラ、2…半導体メモリ、3…ホスト装置、5…NANDバス、11…メモリセルアレイ、12…入出力回路、13…周辺回路、21…クロック生成回路、22…DCC回路、23…DCC制御回路、24…デューティーサイクル検出回路、25…制御信号出力回路、26…制御信号入力回路、27…セレクタ回路。

Claims (6)

  1. 半導体メモリと、
    メモリコントローラと、
    を備え、
    前記メモリコントローラは、
    第1デューティーサイクルを有する第1信号を受け取り、制御信号に基づいて前記第1デューティーサイクルと異なる第2デューティーサイクルを有する第2信号を間欠的に前記メモリコントローラの外部に出力するように構成されている調整回路と、
    前記第2信号を受け取り、前記メモリコントローラの外部から前記第2信号に基づく第3信号を受け取り、前記第2信号および前記第3信号の選択された方を出力するように構成されているセレクタと、
    前記第2信号および前記第3信号のうちの前記セレクタから出力された一方に基づいて前記制御信号を生成するように構成されている制御回路と、
    を備え
    前記制御回路は、
    前記セレクタから前記第2信号が出力されている間に、前記第2信号のデューティーサイクルを第1領域に収める前記制御信号の値の第1範囲を割り出し、
    前記セレクタから前記第3信号が出力されている間に、前記第1範囲の中から、前記第3信号のデューティーサイクルを第2領域に収める前記制御信号の値の第2範囲を割り出す、
    ようにさらに構成されているメモリシステム。
  2. 前記メモリコントローラは、データ信号を受け取り、前記第3信号のタイミングに基づいて前記データ信号を取り込むように構成されている、
    請求項1のメモリシステム。
  3. 前記第2信号は、前記第2信号を受け取った装置にデータ信号の出力を指示する、
    請求項1のメモリシステム。
  4. 前記制御回路は、前記第2信号および前記第3信号のうちの前記セレクタから出力された一方のデューティーサイクルを検出し、前記検出されたデューティーサイクルに基づいて前記制御信号を生成するようにさらに構成されている、
    請求項1のメモリシステム。
  5. 前記第1範囲、前記制御信号の値として前記調整回路に設定可能な第3範囲よりも狭く
    記第範囲、前記第1範囲よりも狭い、
    請求項1のメモリシステム。
  6. 前記メモリコントローラは、
    前記第2信号をNANDフラッシュメモリに供給し、
    前記第3信号を前記NANDフラッシュメモリから受け取る、
    ようにさらに構成されている、
    請求項1のメモリシステム。
JP2018131546A 2018-07-11 2018-07-11 メモリシステム Active JP7066556B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2018131546A JP7066556B2 (ja) 2018-07-11 2018-07-11 メモリシステム
US16/391,606 US11079964B2 (en) 2018-07-11 2019-04-23 Memory system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018131546A JP7066556B2 (ja) 2018-07-11 2018-07-11 メモリシステム

Publications (2)

Publication Number Publication Date
JP2020009309A JP2020009309A (ja) 2020-01-16
JP7066556B2 true JP7066556B2 (ja) 2022-05-13

Family

ID=69138879

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018131546A Active JP7066556B2 (ja) 2018-07-11 2018-07-11 メモリシステム

Country Status (2)

Country Link
US (1) US11079964B2 (ja)
JP (1) JP7066556B2 (ja)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20210000740A (ko) 2018-05-29 2021-01-05 마이크론 테크놀로지, 인크. 클럭 듀티 사이클 개선을 위한 듀티 사이클 조절기 설정 장치 및 방법
US11189334B2 (en) 2018-11-21 2021-11-30 Micron Technology, Inc. Apparatuses and methods for a multi-bit duty cycle monitor
US10715127B2 (en) 2018-11-21 2020-07-14 Micron Technology, Inc. Apparatuses and methods for using look-ahead duty cycle correction to determine duty cycle adjustment values while a semiconductor device remains in operation
KR20200112040A (ko) * 2019-03-20 2020-10-05 에스케이하이닉스 주식회사 캘리브레이션 회로를 포함하는 반도체 장치 및 그의 트레이닝 방법
JP7467655B2 (ja) 2020-10-28 2024-04-15 チャンシン メモリー テクノロジーズ インコーポレイテッド 較正回路、メモリ及び較正方法
EP4044187B1 (en) * 2020-10-28 2024-01-24 Changxin Memory Technologies, Inc. Memory

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013178603A (ja) 2012-02-28 2013-09-09 Toshiba Corp 半導体装置、及び半導体装置の制御方法
US20130250693A1 (en) 2012-03-26 2013-09-26 Yuui Shimizu Memory system
US20150002201A1 (en) 2013-06-27 2015-01-01 Micron Technology, Inc. Semiconductor device having duty correction circuit
US20150055415A1 (en) 2013-08-23 2015-02-26 Kabushiki Kaisha Toshiba Controller
US20150098275A1 (en) 2013-10-04 2015-04-09 Youngwook Kim Flash memory based on storage devices and methods of operation
US20170364276A1 (en) 2016-06-21 2017-12-21 Sandisk Technologies Llc Storage system and method for dynamic duty cycle correction

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20100072704A (ko) * 2008-12-22 2010-07-01 삼성전자주식회사 칼럼 어드레스 스트로브 기입 레이턴시에 의해 제어되는 지연동기 루프 회로
JP2010226173A (ja) 2009-03-19 2010-10-07 Elpida Memory Inc デューティ検出回路及びこれを備えるクロック生成回路、並びに、半導体装置
US8644085B2 (en) 2011-04-05 2014-02-04 International Business Machines Corporation Duty cycle distortion correction
US9075435B1 (en) 2013-04-22 2015-07-07 Amazon Technologies, Inc. Context-aware notifications
US9369118B2 (en) 2014-07-11 2016-06-14 Kabushiki Kaisha Toshiba Duty cycle correction circuit and semiconductor device
KR102193883B1 (ko) * 2014-10-08 2020-12-22 삼성전자주식회사 클럭 신호 처리기 및 이를 포함하는 비휘발성 메모리 장치
US9742603B1 (en) * 2016-11-29 2017-08-22 Intel Corporation Link training to recover asynchronous clock timing margin loss in parallel input/output interfaces
JP2019053444A (ja) * 2017-09-13 2019-04-04 東芝メモリ株式会社 半導体集積回路及び半導体装置
US20190109584A1 (en) * 2017-10-11 2019-04-11 Sandisk Technologies Llc Duty cycle and vox correction for complementary signals

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013178603A (ja) 2012-02-28 2013-09-09 Toshiba Corp 半導体装置、及び半導体装置の制御方法
US20130250693A1 (en) 2012-03-26 2013-09-26 Yuui Shimizu Memory system
JP2013200830A (ja) 2012-03-26 2013-10-03 Toshiba Corp メモリシステム
US20150002201A1 (en) 2013-06-27 2015-01-01 Micron Technology, Inc. Semiconductor device having duty correction circuit
JP2015012352A (ja) 2013-06-27 2015-01-19 マイクロン テクノロジー, インク. 半導体装置
US20150055415A1 (en) 2013-08-23 2015-02-26 Kabushiki Kaisha Toshiba Controller
US20150098275A1 (en) 2013-10-04 2015-04-09 Youngwook Kim Flash memory based on storage devices and methods of operation
US20170364276A1 (en) 2016-06-21 2017-12-21 Sandisk Technologies Llc Storage system and method for dynamic duty cycle correction

Also Published As

Publication number Publication date
JP2020009309A (ja) 2020-01-16
US20200019345A1 (en) 2020-01-16
US11079964B2 (en) 2021-08-03

Similar Documents

Publication Publication Date Title
JP7066556B2 (ja) メモリシステム
US11195571B2 (en) Memory device and method with data input
US10916276B2 (en) Nonvolatile memory and memory system
CN109215701B (zh) 存储设备的数据训练方法
US7827431B2 (en) Memory card having memory device and host apparatus accessing memory card
CN110739014A (zh) 具有信号控制机制的存储器装置和存储器装置的操作方法
US20190080771A1 (en) Memory device read training method
US20200381075A1 (en) Nonvolatile memory device, storage device including nonvolatile memory devices, and method of training data input and output lines between controller and nonvolatile memory devices
CN111108561B (zh) 用于改进ddr存储器装置中的写入前同步码的***和方法
US20120072650A1 (en) Memory system and dram controller
US8009504B2 (en) Semiconductor memory input/output device
JP2007249738A (ja) メモリアクセス制御装置
JP2018160306A (ja) 半導体記憶装置
US11586566B2 (en) Memory protocol with command priority
US10192593B2 (en) Reception circuit for reducing current and electronic apparatus including the same
JP2020046918A (ja) 記憶装置及び制御方法
US11009902B1 (en) Power voltage selection circuit
US11145343B1 (en) Method for controlling multi-cycle write leveling process in memory system
KR20080023082A (ko) 메모리 내의 특정 신호의 동작 주파수를 검출하여 메모리내의 스위칭 모듈을 제어하는 장치 및 방법
US7230863B2 (en) High access speed flash controller
US20200073555A1 (en) Storage device and control method
US9564185B1 (en) Semiconductor memory device
JP2009015964A (ja) 半導体集積回路装置
CN117153217B (zh) 用于改进ddr存储器装置中的写入前同步码的***和方法
JP2023039342A (ja) 半導体装置及び半導体装置の出力信号のデューティ比の補正方法

Legal Events

Date Code Title Description
A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A712

Effective date: 20180831

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210316

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20220124

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220208

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220314

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20220427

R151 Written notification of patent or utility model registration

Ref document number: 7066556

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151