JP2011108351A - メモリインターフェース回路、及びメモリデバイスのドライブ能力調整方法 - Google Patents

メモリインターフェース回路、及びメモリデバイスのドライブ能力調整方法 Download PDF

Info

Publication number
JP2011108351A
JP2011108351A JP2009265702A JP2009265702A JP2011108351A JP 2011108351 A JP2011108351 A JP 2011108351A JP 2009265702 A JP2009265702 A JP 2009265702A JP 2009265702 A JP2009265702 A JP 2009265702A JP 2011108351 A JP2011108351 A JP 2011108351A
Authority
JP
Japan
Prior art keywords
delay
data signal
unit
latch
drive capability
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
JP2009265702A
Other languages
English (en)
Other versions
JP5427564B2 (ja
Inventor
Takahide Baba
貴英 馬場
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.)
Panasonic Corp
Original Assignee
Panasonic 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 Panasonic Corp filed Critical Panasonic Corp
Priority to JP2009265702A priority Critical patent/JP5427564B2/ja
Priority to PCT/JP2010/004502 priority patent/WO2011061875A1/ja
Publication of JP2011108351A publication Critical patent/JP2011108351A/ja
Priority to US13/474,154 priority patent/US8344776B2/en
Application granted granted Critical
Publication of JP5427564B2 publication Critical patent/JP5427564B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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/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/106Data output latches
    • 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/1063Control signal output circuits, e.g. status or busy flags, feedback command 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
    • 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/1078Data input circuits, e.g. write amplifiers, data input buffers, data input registers, data input level conversion circuits
    • G11C7/109Control signal input 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

Landscapes

  • Dram (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Memory System (AREA)

Abstract

【課題】通常動作中にドライブ能力のキャリブレーション動作を行う。
【解決手段】本発明に係るメモリインターフェース回路114は、ストローブ信号129を第1遅延量分遅延させることにより監視用ストローブ信号125を生成する監視用遅延部118と、監視用ストローブ信号125で示されるタイミングでリードデータ123を監視用データ126としてラッチする監視用データラッチ部107と、リードデータ123を出力リードデータ122としてラッチする動作用データラッチ部105と、監視用データラッチ部107がリードデータ123を監視用データ126として正しくラッチできる第1遅延量の値の範囲の幅であるウィンドウ幅128を算出する範囲算出部110と、ウィンドウ幅128が広くなるように、メモリデバイス101のドライブ能力を調整するドライブ能力設定部116とを備える。
【選択図】図1

Description

本発明は、メモリインターフェース回路、及びメモリデバイスのドライブ能力調整方法に関し、特に、第1データ信号及び第1ストローブ信号を出力するとともに、当該第1データ信号を駆動するドライブ能力を変更可能なメモリデバイスに接続されたメモリインターフェース回路に関する。
近年のメモリシステムでは、処理の増大に伴って、例えばSDRAM(Synchronous Dynamic Random Access Memory)のような、クロックに同期したデータの入出力が可能なメモリデバイスが用いられることが多い。これらのメモリデバイスでは、データストローブ信号(DQS)の立ち上がり及び立ち下がりのエッジに同期して、データ(DQ)の入出力が行われる。
特に、近年ではメモリデバイスの動作周波数の高速化に伴って、ストローブ信号に対するデータの有効期間は短くなる傾向にある。これにより、プロセス特性、温度変化、電圧変化、及びメモリデバイス実装時のインピーダンスマッチングに伴うデータとストローブ信号とのタイミング関係の変動を考慮した場合、安定したデータ入出力が困難になってきている。このような背景から、近年のメモリシステムには、ZQキャリブレーションと呼ばれるメモリデバイスのドライブ能力を調整する機能が実装されることが一般的になっている。
一方で、例えば、特許文献1記載のメモリシステムは、データ又はストローブ信号に対して、可変遅延素子を用いて遅延量を調整する可変遅延部を備える。これにより、特許文献1記載のメモリシステムは、データ信号及びストリーム信号のタイミング関係を適切なアクセスタイミングに調整することで、安定したデータ入出力を実現している。
これに加え、メモリデバイスのドライブ能力を調整することによって、安定したデータ入出力が可能な可変遅延素子の遅延量の取り得る範囲を大きくできる。例えば、上述したZQキャリブレーションのようなドライブ能力の調整機能を用いることにより、チップ毎に、メモリデバイス実装時のインピーダンスマッチングのばらつきを考慮したドライブ能力の調整が可能になる。これにより、メモリシステムは、より安定したデータ入出力が実現できる。
また、近年、メモリデバイスの動作周波数はますます高速化が進むため、データの確定時間はさらに短くなる。これにより、アクセスタイミングの調整は、より高精度に行う必要性が増している。
特開2004−074623号公報
しかしながら、特許文献1記載の従来の遅延量の調整、及び上述したドライブ能力の調整は、通常動作を停止して行う必要がある。このため、温度変化又は電圧変化に伴うデータ信号とストローブ信号とのアクセスタイミングの変動が生じた場合は、いったん通常動作を停止して、キャリブレーション動作をやり直す必要がある。
よって、従来のメモリシステムでは、このキャリブレーション動作を行ってから次のキャリブレーション動作を行うまでの間のアクセスタイミングの変動を吸収することができない。このため、従来のメモリシステムでは、アクセスタイミングの変動量を通常動作中のアクセスタイミングばらつきとして、動作マージンの範囲内に収めなくてはならない。
また、メモリデバイスの動作周波数を高速化した場合、データの確定時間が増えるほど動作マージンとして確保できる時間は減少する。このため、通常動作中のアクセスタイミングばらつきを動作マージン内に収めることが困難になる。よって、アクセスタイミングばらつきを小さくするために遅延量、及びドライブ能力のそれぞれのキャリブレーション動作を頻繁に行うことが必要になる。
しかし、キャリブレーション動作を頻繁に行うと、そのキャリブレーション動作の間、通常動作が行うことができず処理が停止してしまうという問題が発生する。
本発明は上記従来の問題点を解決するものであり、通常動作中にドライブ能力のキャリブレーション動作を行うことができるメモリインターフェース回路を提供することを目的とする。
上記目的を達成するために、本発明に係るメモリインターフェース回路は、第1データ信号を出力するとともに当該第1データ信号を駆動するドライブ能力を変更可能なメモリデバイスに接続されたメモリインターフェース回路であって、前記メモリデバイスにより出力された第1ストローブ信号を第1遅延量分遅延させることにより第1遅延ストローブ信号を生成する第1遅延部と、前記第1遅延ストローブ信号で示されるタイミングで前記第1データ信号を第1ラッチデータ信号としてラッチする第1データラッチ部と、前記第1データ信号を第2ラッチデータ信号としてラッチする第2データラッチ部と、前記第1遅延量の値を順次変更する第1遅延制御部と、前記第1データラッチ部が前記第1データ信号を前記第1ラッチデータ信号として正しくラッチできる前記第1遅延量の値の範囲の幅である第1遅延範囲幅を算出する第1範囲算出部と、前記第1遅延範囲幅が広くなるように前記メモリデバイスの前記ドライブ能力を調整するドライブ能力設定部とを備える。
本発明によれば、通常動作中にドライブ能力のキャリブレーション動作を行うことができるメモリインターフェース回路を提供できる。
本発明の実施の形態1に係るメモリシステムのブロック図である。 本発明の実施の形態1に係る遅延範囲を示す図である。 本発明の実施の形態1に係るドライブ能力調整処理のフローチャートである。 本発明の実施の形態1に係るドライブ能力及びウィンドウ幅を示す図である。 本発明の実施の形態1に係るドライブ能力及びウィンドウ幅を示す図である。 本発明の実施の形態1に係るドライブ能力及びウィンドウ幅を示す図である。 本発明の実施の形態2に係るメモリシステムのブロック図である。 本発明の実施の形態3に係るメモリシステムのブロック図である。
以下、本発明の実施の形態について、図面を用いて詳細に説明する。
(実施の形態1)
本発明の実施の形態1に係るメモリインターフェース回路は、外部にリードデータを出力するためのラッチ回路とは、別に監視用のラッチ回路を備える。また、本発明の実施の形態1に係るメモリインターフェース回路は、この監視用のラッチ回路がリードデータを正しくラッチできる遅延量の値の範囲の幅を算出し、当該幅が広くなるようにメモリデバイスのドライブ能力を調整する。
これにより、本発明の実施の形態1に係るメモリインターフェース回路は、通常動作中にドライブ能力のキャリブレーション動作を行うことができる。
まず、本発明の実施の形態1に係るメモリインターフェース回路114の構成を説明する。
図1は、本発明の実施の形態1に係るメモリシステム100の構成を示すブロック図である。
図1に示すメモリシステム100は、メモリデバイス101と、メモリインターフェース回路114とを含む。メモリデバイス101及びメモリインターフェース回路114は互いに、少なくともデータ信号線102とストローブ信号線103とコマンド信号線113とにより接続される。
メモリデバイス101は、ストローブ信号の立ち上がりエッジ又は立下りエッジのいずれか一方でデータをラッチ(保持)するSDR(Single Data Rate)−SDRAMでもよく、また、ストローブ信号の立ち上がりエッジ及び立下りエッジの両方でデータをラッチするDDR(Double Data Rate)−SDRAMでもよい。
以下では、簡明のため、ストローブ信号の立ち上がりエッジに関係する構成及び動作について説明する。
メモリデバイス101は、リードデータ123及びストローブ信号129を出力する。また、メモリデバイス101は、リードデータ123を駆動するドライブ能力を、外部からの設定により変更可能である。
メモリインターフェース回路114は、メモリデバイス101へライトデータ121を書き込む。また、メモリインターフェース回路114は、メモリデバイス101からリードデータ123を読み出し、読み出したリードデータ123を出力リードデータ122として外部に出力する。また、メモリインターフェース回路114は、通常動作中に、ストローブ信号129を遅延させる遅延量を調整することにより、リードデータ123とストローブ信号129とのタイミングを調整する機能を有する。さらに、メモリインターフェース回路114は、通常動作中に、メモリデバイス101のドライブ能力を調整する機能を有する。
データ信号線102は、メモリインターフェース回路114からメモリデバイス101に書き込むライトデータ121、及びメモリデバイス101から読み出すリードデータ123を転送するために使用される。このデータ信号線102は、一般的には双方向の信号線である。なお、図1ではデータ信号線102は1本であるが、データ信号線102が1本のストローブ信号線103に対応する複数のデータ信号線で構成されていても構わない。
ストローブ信号線103は、メモリインターフェース回路114からメモリデバイス101にライトデータ121を書き込む場合に、メモリインターフェース回路114からメモリデバイス101へのライトストローブ信号を出力するために使用される。また、ストローブ信号線103は、メモリインターフェース回路114がメモリデバイス101からリードデータ123を読み出す場合には、メモリデバイス101からメモリインターフェース回路114へリードストローブ信号129を出力するために使用される。このストローブ信号線103は、一般的には双方向の信号線である。なお、図1では、ライトストローブ信号を生成する回路については省略している。また、以下では、リードストローブ信号129を単にストローブ信号129とも記す。
コマンド信号線113は、一般に複数の信号線で構成され、ドライブ能力設定を含むメモリデバイス101の動作条件の設定に用いられる。また、コマンド信号線113は、一定の条件で動作条件設定に用いられていれば、メモリデバイス101のアドレス信号などその他の信号線と兼用されていても構わない。
メモリインターフェース回路114は、動的遅延キャリブレーション部115と、ドライブ能力設定部116とを備える。また、動的遅延キャリブレーション部115は、方向制御部104と、動作用データラッチ部105と、動作用遅延制御部106と、監視用データラッチ部107と、監視用遅延制御部108と、比較判定部109と、動作用遅延部117と、監視用遅延部118とを含む。ドライブ能力設定部116は、範囲算出部110と、ドライブ能力制御部111と、コマンド生成部112とを含む。
なお、メモリデバイス101にDDR−SDRAMを用いる場合は、メモリインターフェース回路114におけるこれらの構成要素を、1本のストローブ信号線103に対して、ストローブ信号129の立ち上がりエッジ及び立下りエッジのそれぞれに対応して2組設けてもよい。これにより、ストローブ信号129の立ち上がりエッジ及び立下りエッジのそれぞれについて独立にタイミング調整を行うことができる。
方向制御部104は、内部回路からライトデータ121をデータ信号線102へ転送するか、データ信号線102から動作用データラッチ部105及び監視用データラッチ部107へリードデータ123を転送するかを制御する。
内部回路は、メモリインターフェース回路114を介してメモリデバイス101を利用する回路である。本発明では内部回路の機能を限定しない。内部回路は、一例としてはCPU(Central Processing Unit)である。
動作用遅延部117は、メモリデバイス101がストローブ信号線103に出力したストローブ信号129を動作用遅延量分遅延させることにより、動作用ストローブ信号124を生成する。
監視用遅延部118は、メモリデバイス101がストローブ信号線103に出力したストローブ信号129を監視用遅延量分遅延させることにより、監視用ストローブ信号125を生成する。
動作用データラッチ部105は、方向制御部104を通じて伝わったリードデータ123を動作用ストローブ信号124で示されるタイミング(立ち上がりエッジ)でラッチする。また、動作用データラッチ部105は、ラッチしたリードデータ123を出力リードデータ122として、内部回路へ出力するとともに、当該出力リードデータ122を比較判定部109へ出力する。
監視用データラッチ部107は、方向制御部104を通じて伝わったリードデータ123を監視用ストローブ信号125で示されるタイミング(立ち上がりエッジ)でラッチする。また、監視用データラッチ部107は、ラッチしたリードデータ123を監視用データ126として、比較判定部109へ出力する。
監視用遅延制御部108は、監視用データラッチ部107が用いる監視用遅延量を設定する。
比較判定部109は、例えば、リード動作ごとに、動作用データラッチ部105がラッチした出力リードデータ122の値と、監視用データラッチ部107がラッチした監視用データ126の値とを比較する。例えば、比較判定部109は、当該二つのデータの値が一致しているか否かを判定する。
なお、データ信号線102が複数本である場合、動作用データラッチ部105及び監視用データラッチ部107は複数ビットで構成される。また、比較判定部109は複数ビットのデータを比較する。
範囲算出部110は、比較判定部109による判定結果を用いて、監視用データラッチ部107がリードデータ123を監視用データ126として正しくラッチできる監視用遅延量の値の範囲(以下、遅延範囲127)を算出する。言い換えると、遅延範囲127は、動作用データラッチ部105がリードデータ123を出力リードデータ122として正しくラッチできる動作用遅延量の値の範囲である。
図2は、遅延範囲127を示す図である。図2に示すように、遅延範囲127は、それ以下の遅延値になると正しくラッチできなくなる遅延値が小さい側の境界140と、それ以上の遅延値になるとラッチできなくなる遅延値が大きい側の境界141との間の遅延量の範囲である。
具体的には、監視用遅延制御部108は、監視用遅延量の値を、例えば、リードアクセス毎に、順次変更する。比較判定部109は、監視用遅延制御部108により変更された監視用遅延量の値ごとに、監視用データ126と出力リードデータ122とが一致するか否かを判定する。範囲算出部110は、監視用遅延量の値ごとの比較判定部109による判定結果を記憶する。また、範囲算出部110は、出力リードデータ122と監視用データ126とが一致する監視用遅延量の値の範囲を遅延範囲127として算出する。
なお、範囲算出部110は、出力リードデータ122と監視用データ126とが一致する監視用遅延量の値の範囲に対して、所定のマージンを加味した範囲を遅延範囲127として算出してもよい。例えば、遅延範囲127は、出力リードデータ122と監視用データ126とが一致する監視用遅延量の値の範囲に対して、予め定められた値分、内側の範囲であってもよい。
動作用遅延制御部106は、範囲算出部110により算出された遅延範囲127内に、動作用遅延部117が用いる動作用遅延量を設定する。具体的には、動作用遅延制御部106は、遅延範囲127を用いて動作用遅延量を算出する。例えば、動作用遅延制御部106は、遅延範囲127の境界に対して、所定のマージンを加えた遅延量を動作用遅延量として算出する。
このように、動的遅延キャリブレーション部115による一連の動作により、動作用データラッチ部105で出力リードデータ122をラッチすることで通常動作を継続しながら、監視用データラッチ部107で監視用データ126をラッチすることでリードデータ123を適切にラッチできる遅延量の境界を監視することができる。これにより、動的遅延キャリブレーション部115は、通常動作を中断することなく、遅延量のキャリブレーションを実現できる。
また、内部回路は動作用データラッチ部105でラッチした出力リードデータ122を用い、監視用データラッチ部107でラッチした監視用データ126は利用しない。よって、監視用データラッチ部107に遅延範囲127の境界付近の遅延値が設定されており、監視用データラッチ部107が仮に誤ったデータをラッチしたとしても内部回路の動作に影響を及ぼさない。
なお、ここでは、範囲算出部110は、リードデータ123を正しくラッチできる遅延量の範囲を算出しているが、範囲算出部110は、それ以下の遅延値になると正しくラッチできなくなる遅延値が小さい側の境界140と、それ以上の遅延値になるとラッチできなくなる遅延値が大きい側の境界141とのうち一方の境界のみを算出してもよい。この場合、動作用遅延制御部106は、範囲算出部110により算出された境界に対して、所定のマージンを加えた遅延量を動作用遅延量として算出すればよい。
また、上記のように遅延範囲127を算出する場合に、動的遅延キャリブレーション部115は、遅延値が小さい側の境界と大きい側の境界とを独立に監視する2組の監視用データラッチ部107と監視用遅延制御部108と監視用遅延部118とを備えてもよい。
これらの動作に加えて、範囲算出部110は、算出した遅延範囲127の幅を示すウィンドウ幅128を算出する。
ドライブ能力設定部116は、ウィンドウ幅128が広くなるように、メモリデバイス101のドライブ能力を調整する。
具体的には、ドライブ能力設定部116は、メモリデバイス101のドライブ能力を順次変更する。また、ドライブ能力設定部116は、変更したドライブ能力ごとに、範囲算出部110により算出されたウィンドウ幅128を格納する。また、ドライブ能力設定部116は、格納した複数のウィンドウ幅128のうち最も大きいウィンドウ幅128のドライブ能力にメモリデバイス101のドライブ能力を調整する。
ドライブ能力制御部111は、範囲算出部110により算出されたウィンドウ幅128と、メモリデバイス101に設定されているドライブ能力との関係を記憶する。また、ドライブ能力制御部111は、更新するドライブ能力の設定値をコマンド生成部112に送る。
コマンド生成部112は、ドライブ能力制御部111から送られたドライブ能力設定値に基づいてメモリデバイス101にコマンド信号線113を通じてドライブ能力設定コマンドを発行する。
なお、リードデータ123、ストローブ信号129及びウィンドウ幅128は、それぞれ、本発明の第1データ信号、第1ストローブ信号及び第1遅延範囲幅に相当する。また、監視用遅延部118、監視用遅延量、監視用ストローブ信号125、監視用データラッチ部107、監視用データ126及び監視用遅延制御部108は、それぞれ、本発明の第1遅延部、第1遅延量、第1遅延ストローブ信号、第1データラッチ部、第1ラッチデータ及び第1遅延制御部に相当する。また、動作用遅延部117、動作用遅延量、動作用ストローブ信号124、動作用データラッチ部105、出力リードデータ122及び動作用遅延制御部106は、本発明の第2遅延部、第2遅延量、第2遅延ストローブ信号、第2データラッチ部、第2ラッチデータ及び第2遅延制御部に相当する。
以下、本発明の実施の形態1に係るメモリシステム100によるドライブ能力調整の動作を説明する。
図3は、メモリシステム100によるドライブ能力調整の動作のフローチャートである。
まず、範囲算出部110は、ウィンドウ幅128を算出する(S101)。
次に、ドライブ能力制御部111は、範囲算出部110により算出されたウィンドウ幅128が基準ウィンドウ幅130以上であるか否かを判定する(S102)。ここで、基準ウィンドウ幅130とは、本装置を用いる際に、この値よりもウィンドウ幅128が狭くなると安定したアクセスができなくなるためドライブ能力の再調整が必要になるウィンドウ幅128を示す。この基準ウィンドウ幅130は、条件入力として外部より入力されてもよいし、メモリインターフェース回路114が備える処理部により生成されてもよいし、メモリインターフェース回路114が備える記憶部に記憶されていてもよい。例えば、基準ウィンドウ幅130は、ソフトウェアによって設定されたレジスタの値である。
また、ステップS101及びS102の処理は、ウィンドウ幅128が基準ウィンドウ幅130未満であると判定される(S102でNo)まで、範囲算出部110によりウィンドウ幅128が算出される毎に繰り返される。
ステップS102において、ウィンドウ幅128が基準ウィンドウ幅130未満であると判定された場合(S102でNo)、次に、ドライブ能力制御部111は、現在のウィンドウ幅128とドライブ能力値とを格納する(S103)。
図4は、ドライブ能力制御部111に格納されるウィンドウ幅128とドライブ能力値との一例を示す図である。ここではドライブ能力値602が40mA、その時のウィンドウ幅128が13digitと格納されている。なお、ここでは、ドライブ能力値の単位として駆動電流値であるmAを用い、ウィンドウ幅128の単位として、監視用遅延部118における監視用遅延量の管理単位であるdigitとを用いるが管理の単位については重要ではなくどのような単位で管理しても構わない。
ステップS104以降はドライブ能力のキャリブレーション動作である。
まず、ドライブ能力制御部111は、ドライブ能力値を1増やす方向に設定を変更する(S104)。これにより、コマンド生成部112は、メモリデバイス101のドライブ能力値を1増やす。なお、ここでは、一例として、ドライブ能力値を1増加している。これは、ドライブ能力値として駆動電流値を用いていた場合は、駆動電流値を1mA上げることを表す。ただし、これは一例に過ぎず、ドライブ能力値を1増加することに対応する駆動電流値の上げ幅は任意一定値でもよい。つまり、ドライブ能力制御部111は、ドライブ能力値をn(nは任意の自然数)増加してもよい。また、上述の通り、ドライブ能力値に対応する値は駆動電流値に限られるものではない。
ステップS104の動作により、メモリデバイス101のデータ信号線102のドライブ能力が変化し、リードデータ123を監視用ストローブ信号125でラッチすることができる遅延値の範囲(ウィンドウ)が変化する。次に、範囲算出部110は、ドライブ能力変更後のウィンドウ幅128を算出する(S105)。
この場合、ウィンドウ幅が狭くなる場合と広くなる場合が考えられるが、この変化は監視用データラッチ部107で感知される。よって、ドライブ能力値の変更量が十分に小さければ動作用データラッチ部105で誤ったデータがラッチされることはなく、通常動作を継続することができる。
次に、ドライブ能力制御部111は、ステップS104で変更された新たなドライブ能力値と、ステップS105で算出された新たなウィンドウ幅128とを格納する(S106)。
次に、ドライブ能力制御部111は、ステップS106で格納した新たなウィンドウ幅128とその前に格納したウィンドウ幅128とを比較することにより、ウィンドウ幅128が増加したか否かを判定する(S107)。ウィンドウ幅128が増加している場合(S107でYes)、再度、ステップS104の処理が行われる。なお、ウィンドウ幅が増加しているか否かの判定基準は多様であり、ウィンドウ幅128が同じ場合、ウィンドウ幅128が微少に減少している場合、又は、ウィンドウ幅128が微少に増加している場合に、ドライブ能力制御部111は、ウィンドウ幅128が増加していると判定してもよい。
言い換えると、ドライブ能力制御部111は、ステップS106で格納した新たなウィンドウ幅128からその前に格納したウィンドウ幅128を減算し、減算結果が予め定められた閾値以上の場合、ウィンドウ幅128が増加していると判定し、減算結果が上記閾値未満である場合、ウィンドウ幅128が減少していると判定する。
図5は、上述のステップS104〜S107の動作を複数回繰り返し行った状態における、ドライブ能力制御部111に格納されるドライブ能力値とウィンドウ幅128との一例を示す図である。
ドライブ能力値602からスタートしてループ動作を行った結果、ドライブ能力値604まではドライブ能力値を増やすごとにウィンドウ幅128が増加している。しかし、ドライブ能力値606に増やした時点でウィンドウ幅128は減少している。
このように、ウィンドウ幅128が減少した場合(S107でNo)、次に、ドライブ能力制御部111は、ドライブ能力値を1減らす方向に設定を変更する(S108)。その結果、ウィンドウ幅128が変化する。
次に、範囲算出部110は、ドライブ能力変更後のウィンドウ幅128を算出する(S109)。
次に、ドライブ能力制御部111は、ステップS108で変更した新たなドライブ能力値と、ステップS109で算出された新たなウィンドウ幅128とを格納する(S110)。
次に、ドライブ能力制御部111は、ステップS110で格納した新たなウィンドウ幅128とその前に格納したウィンドウ幅128とを比較することにより、ウィンドウ幅128が増加しているか否かを判定する(S111)。ウィンドウ幅128が増加している場合(S110でYes)、再度、ステップS108の処理が行われる。なお、ウィンドウ幅が増加しているか否かの判定基準は多様であり、ウィンドウ幅128が同じ場合、ウィンドウ幅128が微少に減少している場合、又は、ウィンドウ幅128が微少に増加している場合に、ドライブ能力制御部111は、ウィンドウ幅128が増加していると判定してもよい。
言い換えると、ドライブ能力制御部111は、ステップS106で格納した新たなウィンドウ幅128からその前に格納したウィンドウ幅128を減算し、減算結果が予め定められた閾値以上の場合、ウィンドウ幅128が増加していると判定し、減算結果が上記閾値未満である場合、ウィンドウ幅128が減少していると判定する。
図5に示した例では、ドライブ能力値を606から減らす方向にステップS108〜S111の動作が繰り返されると、ドライブ能力値604からドライブ能力値608に更新された時点で、ウィンドウ幅128が縮小する。
このように、ウィンドウ幅128が減少した場合(S111でNo)、次に、ドライブ能力制御部111は、格納するドライブ能力値とウィンドウ幅128とからウィンドウ幅128が最大になるドライブ能力値を、設定するドライブ能力値に決定する(S112)。図5に示す例では、ドライブ能力値604のウィンドウ幅128が最も大きいので、このドライブ能力値604が設定するドライブ能力値として決定される。
次に、コマンド生成部112は、ステップS112で決定された最適なドライブ能力値を設定するコマンドを生成することにより、メモリデバイス101のドライブ能力値を設定する(S113)。
以上により、ドライブ能力のキャリブレーション動作が完了する。また、ドライブ能力設定部116は、新たに設定したドライブ能力に応じて、ステップS101で用いる基準ウィンドウ幅130を更新する。例えば、ドライブ能力設定部116は、新たに設定したドライブ能力時のウィンドウ幅128、又は当該ウィンドウ幅128に所定の値を加算又は減算した値を、新たな基準ウィンドウ幅130として設定する。
なお、本実施の形態では、一例としてドライブ能力値を増やす動作(ステップS104〜S107)を行った後に、ドライブ能力値を減らす動作(ステップS108〜S111)を行っているが、ドライブ能力値を減らす動作を行った後にドライブ能力値を増やす動作を行ってもよい。
また、ここでは、ステップS103で格納したドライブ能力値よりステップS112で決定したドライブ能力値が大きい場合を例に用いて説明したが、ステップS103で格納したドライブ能力値がステップS112で決定されるドライブ能力値よりも小さな場合においても、同様に最適なドライブ能力値を探索できる。
図6は、この場合のドライブ能力制御部111に格納されるドライブ能力値とウィンドウ幅128との一例を示す図である。
例えば、図6に示すように、ステップS103でドライブ能力値802を格納した場合、ステップS104〜S107のループ動作の回数よりステップS108〜S111のループ動作の回数が多くなるため、ステップS112において、ドライブ能力値804のウィンドウ幅128が最適値として決定される。
以上より、本発明の実施の形態1に係るメモリインターフェース回路114は、通常動作用の回路(動作用遅延部117及び動作用データラッチ部105)とは別に、監視用の回路(監視用遅延部118及び監視用データラッチ部107)を備える。また、メモリインターフェース回路114は、この監視用の回路の遅延量を変更することにより、リードデータ123を正しくラッチできる遅延範囲127を算出する。さらに、メモリインターフェース回路114は、算出した遅延範囲127を用いて動作用遅延部117の遅延量を調整する。
これにより、メモリインターフェース回路114は、通常動作に影響を与えない監視用の回路を用いて、遅延量のキャリブレーションを行うことができる。よって、メモリインターフェース回路114は、通常動作を中断することなく、通常動作中に遅延量のキャリブレーションを行うことができる。
さらに、本発明の実施の形態1に係るメモリインターフェース回路114は、監視用の回路を用いて算出された遅延範囲127からウィンドウ幅128を算出する。また、メモリインターフェース回路114は、算出したウィンドウ幅128が広くなるように、メモリデバイス101のドライブ能力を調整する。
これにより、メモリインターフェース回路114は、通常動作に影響を与えない監視用の回路を用いて、メモリデバイス101のドライブ能力のキャリブレーションを行うことができる。よって、メモリインターフェース回路114は、メモリデバイス101のドライブ能力設定を、通常動作中も継続して調整することができる。
(実施の形態2)
本発明の実施の形態2では、データ信号線が複数の場合に対応したメモリインターフェース回路について説明する。
ここで、データ信号線が複数本である場合、上述した実施の形態1の構成では、遅延調整の精度は複数のデータ信号間のばらつき分悪くなる。これに対して、本発明の実施の形態2に係るメモリインターフェース回路は、複数のデータ信号のそれぞれに対して独立に遅延量を調整することにより、遅延調整の精度を向上できる。
図7は、本発明の実施の形態2に係るメモリシステム200のブロック図である。なお、図1と同様の要素には同一の符号を付している。また、以下では、実施の形態1に係るメモリシステム100との相違点を主に説明し、重複する説明は省略する。
本発明の実施の形態2に係るメモリシステム200は、メモリデバイス201と、メモリインターフェース回路214とを含む。ここで、メモリデバイス201及びメモリインターフェース回路214は互いに、2本のデータ信号線102A及び102Bにより接続される点が実施の形態1と異なる。
また、メモリインターフェース回路214の動的遅延キャリブレーション部215の構成が実施の形態1に係る動的遅延キャリブレーション部115の構成と異なる。具体的には、動的遅延キャリブレーション部215は、図1に示す動作用データラッチ部105と動作用遅延部117と動作用遅延制御部106との代わりに、動作用データラッチ部105A及び105Bと動作用遅延部117A及び117Bと動作用遅延制御部106A及び106Bとを備える。また、動的遅延キャリブレーション部215は、さらに、制御部250と、選択部251及び252とを備える。また、範囲算出部210の機能が範囲算出部110の機能と異なる。
なお、図7では、図1に示す方向制御部104及びライトデータ121は省略しているが図1と同様の構成である。
動作用遅延部117Aは、ストローブ信号129を第1動作用遅延量分遅延させることにより、動作用ストローブ信号124Aを生成する。
動作用遅延部117Bは、ストローブ信号129を第2動作用遅延量分遅延させることにより、動作用ストローブ信号124Bを生成する。
動作用データラッチ部105Aは、リードデータ123Aを動作用ストローブ信号124Aで示されるタイミング(立ち上がりエッジ)でラッチする。また、動作用データラッチ部105Aは、ラッチしたリードデータ123Aを出力リードデータ122Aとして、内部回路へ出力する。
動作用データラッチ部105Bは、リードデータ123Bを動作用ストローブ信号124Bで示されるタイミング(立ち上がりエッジ)でラッチする。また、動作用データラッチ部105Bは、ラッチしたリードデータ123Bを出力リードデータ122Bとして、内部回路へ出力する。
制御部250は、制御信号260に応じて切替信号261を生成する。なお、制御信号260は条件入力として与えられる。例えば、制御信号260は、外部より入力されてもよいし、メモリインターフェース回路214が備える処理部により生成されてもよい。例えば、制御信号260は、リフレッシュ動作であるか否かを示す信号である。この場合、制御部250は、リフレッシュ動作ごとに切替信号261の論理値を反転させる。また、切替信号261は、リードデータ123A(出力リードデータ122A)及びリードデータ123B(出力リードデータ122B)の一方を選択するための信号である。
選択部252は、切替信号261の論理値に応じて、リードデータ123A及び123Bの一方を選択し、選択したデータを選択リードデータ263として監視用データラッチ部107に出力する。
監視用データラッチ部107は、選択部252により出力される選択リードデータ263を監視用ストローブ信号125で示されるタイミング(立ち上がりエッジ)でラッチする。また、監視用データラッチ部107は、ラッチしたリードデータ123を監視用データ126として、比較判定部109へ出力する。
選択部251は、切替信号261の論理値に応じて、出力リードデータ122A及び122Bの一方を選択し、選択したデータを選択出力リードデータ262として比較判定部109に出力する。また、選択部252によりリードデータ123Aが選択される場合、選択部251は出力リードデータ122Aを選択し、選択部252によりリードデータ123Bが選択される場合、選択部251は出力リードデータ122Bを選択する。
比較判定部109は、選択部251により出力された選択出力リードデータ262の値と、監視用データ126の値とを比較する。例えば、比較判定部109は、当該二つのデータの値が一致しているか否かを判定する。
範囲算出部210は、切替信号261の論理値に応じて、比較判定部109による判定結果を用いて、遅延範囲127A又は127Bを算出する。具体的には、範囲算出部210は、切替信号261によりリードデータ123A(出力リードデータ122A)を選択することが示される場合には、比較判定部109による判定結果を用いて、遅延範囲127Aを算出する。また、範囲算出部210は、切替信号261によりリードデータ123B(出力リードデータ122B)を選択することが示される場合には、比較判定部109による判定結果を用いて、遅延範囲127Bを算出する。なお、範囲算出部210による遅延範囲127A及び127Bの算出方法の詳細は、実施の形態1に係る範囲算出部110による遅延範囲127の算出方法と同様である。
動作用遅延制御部106Aは、範囲算出部210により算出された遅延範囲127A内に、動作用遅延部117Aが用いる第1動作用遅延量を設定する。
動作用遅延制御部106Bは、範囲算出部210により算出された遅延範囲127B内に、動作用遅延部117Bが用いる第2動作用遅延量を設定する。
なお、動作用遅延制御部106A及び106Bの詳細な動作は、実施の形態1で説明した動作用遅延制御部106の動作と同様である。
また、リードデータ123A及び123Bは、それぞれ本発明の第1データ信号及び第2データ信号に相当する。また、遅延範囲127A及び127Bは、それぞれ本発明の第1遅延範囲及び第2遅延範囲に相当する。また、動作用遅延部117A及び117Bは、それぞれ本発明の第2遅延部及び第3遅延部に相当する。また、第1動作用遅延量及び第2動作遅延量は、それぞれ本発明の第2遅延量及び第3遅延量に相当する。また、動作用ストローブ信号124A及び動作用ストローブ信号124Bは、それぞれ本発明の第2遅延ストローブ信号及び第3遅延ストローブ信号に相当する。また、動作用データラッチ部105A及び105Bは、それぞれ本発明の第2データラッチ部及び第3データラッチ部に相当する、また、出力リードデータ122A及び122Bは、それぞれ本発明の第2ラッチデータ信号及び第3ラッチデータ信号に相当する。また、監視用データ126は、本発明の第1ラッチデータ信号及び第4ラッチデータ信号に相当する。また、動作用遅延制御部106A及び106Bは、本発明の第2遅延制御部及び第3遅延制御部に相当する。また、選択部252及び251は、それぞれ本発明の第1選択部及び第2選択部に相当する。また、選択リードデータ263及び選択出力リードデータ262は、それぞれ本発明の選択データ信号及び選択ラッチデータ信号に相当する。
以上により、本発明の実施の形態2に係るメモリインターフェース回路214は、複数のリードデータ123A及び123Bのそれぞれに対して遅延量を調整することにより、遅延調整の精度を向上できる。
また、本発明の実施の形態2に係るメモリインターフェース回路214は、遅延値の観測対象である複数のリードデータ123A及び123Bのそれぞれを、選択部251及び252で切り換えることで、複数の観測対象に対して監視用遅延部118と監視用データラッチ部107と監視用遅延制御部108と比較判定部109と範囲算出部210とを共用できる。このように、メモリインターフェース回路214は、観測対象を切り換える構成によって、半導体集積回路装置における実装面積を削減できる。
なお、上記説明では、2本のデータ信号線102A及び102Bを用いる例を説明したが、3本以上の場合にも、本発明を適用できる。
(実施の形態3)
図8は、本発明の実施の形態3に係るメモリシステム300のブロック図である。なお、図1と同様の要素には同一の符号を付している。また、以下では、実施の形態1に係るメモリシステム100との相違点を主に説明し、重複する説明は省略する。
本発明の実施の形態3に係るメモリシステム300は、メモリデバイス301と、メモリインターフェース回路314とを含む。ここで、メモリデバイス201及びメモリインターフェース回路314は互いに、2本のデータ信号線102A及び102Bと、2本のストローブ信号線103A及び103Bにより接続される点が実施の形態1と異なる。
メモリインターフェース回路314は、動的遅延キャリブレーション部115A及び115Bと、ドライブ能力設定部116と、範囲演算部370とを備える。
動的遅延キャリブレーション部115A及び115Bは、それぞれ図1に示す動的遅延キャリブレーション部115と同様の処理部である。
動的遅延キャリブレーション部115Aには、メモリデバイス301によりデータ信号線102Aに出力されたリードデータ123Aと、ストローブ信号線103Aに出力されたストローブ信号129Aが入力される。また、動的遅延キャリブレーション部115Bには、メモリデバイス301によりデータ信号線102Bに出力されたリードデータ123Bと、ストローブ信号線103Bに出力されたストローブ信号129Bが入力される。なお、リードデータ123A及びリードデータ123Bは、図1に示すリードデータ123に相当する。また、ストローブ信号129A及び129Bは、図1に示すストローブ信号129に相当する。
また、動的遅延キャリブレーション部115Aはウィンドウ幅128Aを生成し、動的遅延キャリブレーション部115Bはウィンドウ幅128Bを生成する。このウィンドウ幅128A及び128Bは、図1に示すウィンドウ幅128に相当する。
範囲演算部370は、ウィンドウ幅128A及び128Bに基づき、ウィンドウ幅372を生成する。例えば、範囲演算部370は、ウィンドウ幅128Aとウィンドウ幅128Bとの間の値となるウィンドウ幅372を生成する。具体的には、範囲演算部370は、ウィンドウ幅128Aとウィンドウ幅128Bとの平均値を算出し、算出した平均値をウィンドウ幅372として出力する。なお、範囲演算部370は、ウィンドウ幅128A及び128Bのうち小さい方、又は大きい方を選択し、選択したウィンドウ幅128A又は128Bをウィンドウ幅372として出力してもよい。
また、範囲演算部370は、このような複数種類の演算のうちいずれかを、制御信号371に応じて選択的に行なってもよい。
ドライブ能力設定部116は、図1に示すウィンドウ幅128の代わりに、範囲演算部370により生成されたウィンドウ幅372を用いて、上述した実施の形態1と同様の処理を行う。
なお、リードデータ123A及び123Bは、それぞれ本発明の第1データ信号及び第3データ信号に相当する。また、ストローブ信号129A及び129Bは、それぞれ本発明の第1ストローブ信号及び第2ストローブ信号に相当する。また、ウィンドウ幅128A、128B及び372は、それぞれ本発明の第1遅延範囲幅、第2遅延範囲幅及び第3遅延範囲幅に相当する。また、動的遅延キャリブレーション部115Aに含まれる、監視用遅延部118、監視用データラッチ部107、動作用データラッチ部105、監視用遅延制御部108及び範囲算出部110は、それぞれ、本発明の第1遅延部、第1データラッチ部、第2データラッチ部、第1遅延制御部及び第1範囲算出部に相当する。また、動的遅延キャリブレーション部115Bに含まれる、監視用遅延部118、監視用データラッチ部107、動作用データラッチ部105、監視用遅延制御部108及び範囲算出部110は、それぞれ、本発明の第4遅延部、第4データラッチ部、第5データラッチ部、第4遅延制御部及び第2範囲算出部に相当する。
以上により、本発明の実施の形態3に係るメモリインターフェース回路314は、複数の動的遅延キャリブレーション部115A及び115Bと、複数の動的遅延キャリブレーション部115A及び115Bで生成されたウィンドウ幅128A及び128Bを演算する範囲演算部370とを備える。これにより、メモリインターフェース回路314は、複数のリードデータ123A及び123Bと複数のストローブ信号129A及び129Bとに対するウィンドウ幅128A及び128Bを同時に生成できる。
ここで、半導体集積回路装置において複数のリードデータ123A及び123Bと複数のストローブ信号129A及び129Bについて、上述した実施の形態1に係るメモリインターフェース回路114を用いて時分割にウィンドウ幅を取得することは可能である。しかし、この場合、時間経過に伴う遅延値のばらつきとデータ信号相互の遅延値のばらつきを区別することができない。
一方、実施の形態3に係るメモリインターフェース回路314は、ウィンドウ幅128A及び128Bを同時に得ることができるため、データ信号相互の遅延値のばらつきのみを算出することができる。これにより、メモリインターフェース回路314は、複数のデータ信号に対して最適なドライブ能力をより高い精度で設定できる。
なお、動的遅延キャリブレーション部115A及び115Bに、実施の形態2で説明した動的遅延キャリブレーション部215を用いてもよい。
また、上記実施の形態1〜3に係るメモリインターフェース回路114、214及び314に含まれる各処理部は典型的には集積回路であるLSIとして実現される。これらは個別に1チップ化されてもよいし、一部又はすべてを含むように1チップ化されてもよい。
また、集積回路化はLSIに限るものではなく、専用回路又は汎用プロセッサで実現してもよい。LSI製造後にプログラムすることが可能なFPGA(Field Programmable Gate Array)、又はLSI内部の回路セルの接続や設定を再構成可能なリコンフィギュラブル・プロセッサを利用してもよい。
また、本発明の実施の形態1〜3に係る、メモリインターフェース回路114、214及び314の機能の一部又は全てを、CPU等のプロセッサがプログラムを実行することにより実現してもよい。
さらに、本発明は上記プログラムであってもよいし、上記プログラムが記録された記録媒体であってもよい。また、上記プログラムは、インターネット等の伝送媒体を介して流通させることができるのは言うまでもない。
また、本発明は、上述したメモリインターフェース回路114、214及び314として実現できるだけでなく、メモリインターフェース回路114、214及び314に含まれる特徴的な手段をステップとするメモリデバイスのドライブ能力調整方法として実現してもよい。
さらに、本発明は、このようなメモリインターフェース回路114、214及び314の機能の一部又は全てを実現する半導体集積回路(LSI)として実現してもよい。
また、本発明は、このようなメモリインターフェース回路114、214又は314と、メモリデバイス101、201又は301とを含むメモリシステム100、200又は300として実現してもよい。
また、上記実施の形態1〜3に係る、メモリインターフェース回路114、214又は314、及びその変形例の機能のうち少なくとも一部を組み合わせてもよい。
また、上記で用いた数字は、すべて本発明を具体的に説明するために例示するものであり、本発明は例示された数字に制限されない。さらに、ハイ/ローにより表される論理レベルは、本発明を具体的に説明するために例示するものであり、例示された論理レベルと異なる論理レベルの組み合わせにより、同等な結果を得ることも可能である。また、構成要素間の接続関係は、本発明を具体的に説明するために例示するものであり、本発明の機能を実現する接続関係はこれに限定されない。
また、上記メモリインターフェース回路114、214又は314の構成は、本発明を具体的に説明するために例示するためのものであり、本発明に係るメモリインターフェース回路114、214又は314は、上記構成の全てを必ずしも備える必要はない。言い換えると、本発明に係るメモリインターフェース回路114、214又は314は、本発明の効果を実現できる最小限の構成のみを備えればよい。
例えば、上記説明では、メモリインターフェース回路114、214及び314は、遅延量のキャリブレーション機能と、メモリデバイスのドライブ能力のキャリブレーション機能とを両方有しているが、一方のみを有してもよい。
同様に、上記のメモリインターフェース回路114、214又は314によるメモリデバイスのドライブ能力調整方法は、本発明を具体的に説明するために例示するためのものであり、本発明に係るメモリインターフェース回路114、214又は314によるメモリデバイスのドライブ能力調整方法は、上記ステップの全てを必ずしも含む必要はない。言い換えると、本発明に係るメモリインターフェース回路114、214又は314によるメモリデバイスのドライブ能力調整方法は、本発明の効果を実現できる最小限のステップのみを含めばよい。また、上記のステップが実行される順序は、本発明を具体的に説明するために例示するためのものであり、上記以外の順序であってもよい。また、上記ステップの一部が、他のステップと同時(並列)に実行されてもよい。
更に、本発明の主旨を逸脱しない限り、本実施の形態に対して当業者が思いつく範囲内の変更を施した各種変形例も本発明に含まれる。
本発明は、メモリインターフェース回路に適用できる。また、本発明は、当該メモリインターフェース回路を搭載したDTV(デジタルテレビ)、DVDレコーダ、BDレコーダ、デジタルスチルカメラ、デジタルビデオカメラ、及び携帯電話等に適用できる。
100、200、300 メモリシステム
101、201、301 メモリデバイス
102、102A、102B データ信号線
103、103A、103B ストローブ信号線
104 方向制御部
105、105A、105B 動作用データラッチ部
106、106A、106B 動作用遅延制御部
107 監視用データラッチ部
108 監視用遅延制御部
109 比較判定部
110、210 範囲算出部
111 ドライブ能力制御部
112 コマンド生成部
113 コマンド信号線
114、214、314 メモリインターフェース回路
115、115A、115B、215 動的遅延キャリブレーション部
116 ドライブ能力設定部
117、117A、117B 動作用遅延部
118 監視用遅延部
121 ライトデータ
122、122A、122B 出力リードデータ
123、123A、123B リードデータ
124、124A、124B 動作用ストローブ信号
125 監視用ストローブ信号
126 監視用データ
127、127A、127B 遅延範囲
128、128A、128B、372 ウィンドウ幅
129、129A、129B ストローブ信号
130 基準ウィンドウ幅
140、141 境界
250 制御部
251、252 選択部
260、371 制御信号
261 切替信号
262 選択出力リードデータ
263 選択リードデータ
370 範囲演算部
602、604、606、608、802、804 ドライブ能力値

Claims (11)

  1. 第1データ信号を出力するとともに当該第1データ信号を駆動するドライブ能力を変更可能なメモリデバイスに接続されたメモリインターフェース回路であって、
    前記メモリデバイスにより出力された第1ストローブ信号を第1遅延量分遅延させることにより第1遅延ストローブ信号を生成する第1遅延部と、
    前記第1遅延ストローブ信号で示されるタイミングで前記第1データ信号を第1ラッチデータ信号としてラッチする第1データラッチ部と、
    前記第1データ信号を第2ラッチデータ信号としてラッチする第2データラッチ部と、
    前記第1遅延量の値を順次変更する第1遅延制御部と、
    前記第1データラッチ部が前記第1データ信号を前記第1ラッチデータ信号として正しくラッチできる前記第1遅延量の値の範囲の幅である第1遅延範囲幅を算出する第1範囲算出部と、
    前記第1遅延範囲幅が広くなるように前記メモリデバイスの前記ドライブ能力を調整するドライブ能力設定部とを備える
    メモリインターフェース回路。
  2. 前記第2データラッチ部は、前記第2ラッチデータ信号を外部に出力する
    請求項1記載のメモリインターフェース回路。
  3. 前記メモリインターフェース回路は、さらに、
    前記第1遅延制御部により変更された第1遅延量の値ごとに、前記第1ラッチデータ信号と前記第2ラッチデータ信号とが一致するか否かを判定する比較判定部を備え、
    前記第1範囲算出部は、前記比較判定部による判定結果を用いて、前記第1ラッチデータ信号と前記第2ラッチデータ信号とが一致する前記第1遅延量の値の範囲の幅を前記第1遅延範囲幅として算出する
    請求項1又は2記載のメモリインターフェース回路。
  4. 前記メモリインターフェース回路は、さらに、
    前記第1ストローブ信号を第2遅延量分遅延させることにより第2遅延ストローブ信号を生成する第2遅延部を備え、
    前記第2データラッチ部は、前記第1データ信号を前記第2遅延ストローブ信号で示されるタイミングで前記第2ラッチデータ信号としてラッチし、
    前記第1範囲算出部は、前記比較判定部による判定結果を用いて、前記第1ラッチデータ信号と前記第2ラッチデータ信号とが一致する前記第1遅延量の値の範囲である第1遅延範囲を判定し、
    前記メモリインターフェース回路は、さらに、
    前記第1遅延範囲内に前記第2遅延量の値を設定する第2遅延制御部を備える
    請求項3記載のメモリインターフェース回路。
  5. 前記ドライブ能力設定部は、
    前記メモリデバイスの前記ドライブ能力を順次変更し、
    変更した前記ドライブ能力ごとに、前記第1範囲算出部により算出された前記第1遅延範囲幅を格納し、格納した複数の第1遅延範囲幅のうち最も大きい第1遅延範囲幅のドライブ能力に前記メモリデバイスの前記ドライブ能力を調整する
    請求項1〜4のいずれか1項に記載のメモリインターフェース回路。
  6. 前記ドライブ能力設定部は、
    前記メモリデバイスの前記ドライブ能力を第1方向に変更し、
    変更したドライブ能力時の前記第1遅延範囲幅から、当該変更の直前のドライブ能力時の前記第1遅延範囲幅を減算した値が第1閾値未満になるまで、前記ドライブ能力を前記第1方向に変更する処理を繰り返し、
    前記減算した値が前記第1閾値以上になった場合、前記メモリデバイスの前記ドライブ能力を前記第1方向と逆の第2方向に変更し、
    変更したドライブ能力時の前記第1遅延範囲幅から、当該変更の直前のドライブ能力時の前記第1遅延範囲幅を減算した値が第2閾値未満になるまで、前記ドライブ能力を前記第2方向に変更する処理を繰り返し、
    変更した前記ドライブ能力ごとに、前記第1範囲算出部により算出された前記第1遅延範囲幅を格納し、
    格納した複数の第1遅延範囲幅のうち最も大きい第1遅延範囲幅のドライブ能力に前記メモリデバイスの前記ドライブ能力を調整する
    請求項5記載のメモリインターフェース回路。
  7. 前記メモリデバイスは、さらに、第2データ信号を出力するとともに、当該第2データ信号を駆動するドライブ能力を変更可能であり、
    前記メモリインターフェース回路は、さらに、
    前記第1ストローブ信号を第3遅延量分遅延させることにより第3遅延ストローブ信号を生成する第3遅延部と、
    前記第3遅延ストローブ信号で示されるタイミングで前記第2データ信号を第3ラッチデータ信号としてラッチするとともに、当該第3ラッチデータ信号を外部に出力する第3データラッチ部とを備え、
    前記第1データラッチ部は、さらに、前記第1遅延ストローブ信号で示されるタイミングで前記第2データ信号を第4ラッチデータ信号としてラッチし、
    前記比較判定部は、さらに、前記第1遅延制御部により変更された第1遅延量の値ごとに、前記第4ラッチデータ信号と前記第3ラッチデータ信号とが一致するか否かを判定し、
    前記第1範囲算出部は、さらに、前記比較判定部による判定結果を用いて、前記第4ラッチデータ信号と前記第3ラッチデータ信号とが一致する前記第1遅延量の値の範囲である第2遅延範囲を判定し、
    前記メモリインターフェース回路は、さらに、
    前記第2遅延範囲内に前記第3遅延量の値を設定する第2遅延制御部を備える
    請求項4記載のメモリインターフェース回路。
  8. 前記メモリインターフェース回路は、さらに、
    前記第1データ信号及び前記第2データ信号の一方を選択し、選択した前記第1データ信号又は前記第2データ信号を選択データ信号として出力する第1選択部と、
    前記第1選択部により前記第1データ信号が選択される場合、前記第2ラッチデータ信号を選択し、前記第1選択部により前記第2データ信号が選択される場合、前記第3ラッチデータ信号を選択し、選択した前記第2ラッチデータ信号又は前記第3ラッチデータ信号を選択ラッチデータ信号として出力する第2選択部とを備え、
    前記第1データラッチ部は、前記選択データ信号を前記第1ラッチデータ信号又は前記第4ラッチデータ信号としてラッチし、
    前記比較判定部は、前記第1遅延制御部により変更された第1遅延量の値ごとに、前記選択ラッチデータ信号と、前記第1ラッチデータ信号又は前記第4ラッチデータ信号とが一致するか否かを判定する
    請求項7記載のメモリインターフェース回路。
  9. 前記メモリデバイスは、さらに、第3データ信号及び第2ストローブ信号を出力するとともに、当該第3データ信号を駆動するドライブ能力を変更可能であり、
    前記メモリインターフェース回路は、さらに、
    前記第2ストローブ信号を第4遅延量分遅延させることにより第4遅延ストローブ信号を生成する第4遅延部と、
    前記第4遅延ストローブ信号で示されるタイミングで前記第3データ信号を第5ラッチデータ信号としてラッチする第4データラッチ部と、
    前記第3データ信号を第6ラッチデータ信号としてラッチするとともに、当該第6ラッチデータ信号を外部に出力する第5データラッチ部と、
    前記第4遅延量の値を順次変更する第4遅延制御部と、
    前記第4データラッチ部が前記第2データ信号を前記第5ラッチデータ信号として正しくラッチできる前記第4遅延量の値の範囲の幅である第2遅延範囲幅を算出する第2範囲算出部と、
    前記第1遅延範囲幅の値と前記第2遅延範囲幅の値との間の値となる第3遅延範囲幅を生成する範囲演算部とを備え、
    前記ドライブ能力設定部は、前記第3遅延範囲幅が広くなるように、前記メモリデバイスの前記ドライブ能力を調整する
    請求項1〜8のいずれか1項に記載のメモリインターフェース回路。
  10. 前記第1データラッチ部は、前記第1遅延ストローブ信号の立下りエッジ及び立ち上がりエッジの両方で前記第1データ信号を前記第1ラッチデータ信号としてラッチする
    請求項1〜9のいずれか1項に記載のメモリインターフェース回路。
  11. 第1データ信号を出力するとともに当該第1データ信号を駆動するドライブ能力を変更可能なメモリデバイスのドライブ能力を調整するメモリデバイスのドライブ能力調整方法であって、
    前記メモリデバイスにより出力された第1ストローブ信号を第1遅延量分遅延させることにより第1遅延ストローブ信号を生成する第1遅延ステップと、
    前記第1遅延ストローブ信号で示されるタイミングで前記第1データ信号を第1ラッチデータ信号としてラッチする第1データラッチステップと、
    前記第1データ信号を第2ラッチデータ信号としてラッチする第2データラッチステップと、
    前記第1遅延量の値を順次変更する第1遅延制御ステップと、
    前記第1データラッチステップで前記第1データ信号を前記第1ラッチデータ信号として正しくラッチできる前記第1遅延量の値の範囲の幅である第1遅延範囲幅を算出する第1範囲算出ステップと、
    前記第1遅延範囲幅が広くなるように、前記メモリデバイスの前記ドライブ能力を調整するドライブ能力設定ステップとを含む
    メモリデバイスのドライブ能力調整方法。
JP2009265702A 2009-11-20 2009-11-20 メモリインターフェース回路、及びメモリデバイスのドライブ能力調整方法 Expired - Fee Related JP5427564B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2009265702A JP5427564B2 (ja) 2009-11-20 2009-11-20 メモリインターフェース回路、及びメモリデバイスのドライブ能力調整方法
PCT/JP2010/004502 WO2011061875A1 (ja) 2009-11-20 2010-07-12 メモリインターフェース回路、及びメモリデバイスのドライブ能力調整方法
US13/474,154 US8344776B2 (en) 2009-11-20 2012-05-17 Memory interface circuit and drive capability adjustment method for memory device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009265702A JP5427564B2 (ja) 2009-11-20 2009-11-20 メモリインターフェース回路、及びメモリデバイスのドライブ能力調整方法

Publications (2)

Publication Number Publication Date
JP2011108351A true JP2011108351A (ja) 2011-06-02
JP5427564B2 JP5427564B2 (ja) 2014-02-26

Family

ID=44059364

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009265702A Expired - Fee Related JP5427564B2 (ja) 2009-11-20 2009-11-20 メモリインターフェース回路、及びメモリデバイスのドライブ能力調整方法

Country Status (3)

Country Link
US (1) US8344776B2 (ja)
JP (1) JP5427564B2 (ja)
WO (1) WO2011061875A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190002287A (ko) * 2017-06-29 2019-01-08 에스케이하이닉스 주식회사 스큐 제어 회로 및 이를 포함하는 인터페이스 회로

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8565033B1 (en) * 2011-05-31 2013-10-22 Altera Corporation Methods for calibrating memory interface circuitry
US9298557B2 (en) * 2013-08-26 2016-03-29 Elite Semiconductor Memory Technology Inc. Method of booting system having non-volatile memory device with erase checking and calibration mechanism and related memory device
US9704591B2 (en) 2014-12-17 2017-07-11 Sandisk Technologies Llc Temperature independent reference current generation for calibration
US10026462B1 (en) * 2017-05-16 2018-07-17 Micron Technology, Inc. Apparatuses and methods for providing constant DQS-DQ delay in a memory device

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030179611A1 (en) * 2002-03-22 2003-09-25 Ming-Shi Liou Method and device for controlling data latch time
JP2004185608A (ja) * 2002-11-21 2004-07-02 Matsushita Electric Ind Co Ltd データのラッチタイミング調整装置
JP2005159702A (ja) * 2003-11-26 2005-06-16 Renesas Technology Corp 半導体装置
JP2007123987A (ja) * 2005-10-25 2007-05-17 Elpida Memory Inc Zqキャリブレーション回路及びこれを備えた半導体装置
JP2008182516A (ja) * 2007-01-25 2008-08-07 Fujitsu Ltd インタフェース回路および半導体集積回路
JP2008210307A (ja) * 2007-02-28 2008-09-11 Fujitsu Ltd Ddr−sdramインターフェース回路

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2000036512A1 (fr) * 1998-12-15 2000-06-22 Matsushita Electric Industrial Co., Ltd. Procede de reglage de phase de synchronisation, circuit integre et procede d'elaboration associes
JP2004074623A (ja) 2002-08-20 2004-03-11 Ricoh Co Ltd 画像形成装置
US6911851B2 (en) 2002-11-21 2005-06-28 Matsushita Electric Industrial Co., Ltd. Data latch timing adjustment apparatus
US7755402B1 (en) * 2006-04-28 2010-07-13 Nvidia Calibration of separate delay effects for multiple data strobe signals
JP4959264B2 (ja) * 2006-09-15 2012-06-20 株式会社リコー メモリ制御装置
JP4928232B2 (ja) 2006-11-16 2012-05-09 株式会社大一商会 遊技機
JP2010086415A (ja) * 2008-10-01 2010-04-15 Panasonic Corp メモリインターフェース
JP2010182149A (ja) * 2009-02-06 2010-08-19 Renesas Electronics Corp メモリ制御装置、及びメモリ制御方法

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030179611A1 (en) * 2002-03-22 2003-09-25 Ming-Shi Liou Method and device for controlling data latch time
JP2004185608A (ja) * 2002-11-21 2004-07-02 Matsushita Electric Ind Co Ltd データのラッチタイミング調整装置
JP2005159702A (ja) * 2003-11-26 2005-06-16 Renesas Technology Corp 半導体装置
JP2007123987A (ja) * 2005-10-25 2007-05-17 Elpida Memory Inc Zqキャリブレーション回路及びこれを備えた半導体装置
JP2008182516A (ja) * 2007-01-25 2008-08-07 Fujitsu Ltd インタフェース回路および半導体集積回路
JP2008210307A (ja) * 2007-02-28 2008-09-11 Fujitsu Ltd Ddr−sdramインターフェース回路

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190002287A (ko) * 2017-06-29 2019-01-08 에스케이하이닉스 주식회사 스큐 제어 회로 및 이를 포함하는 인터페이스 회로
KR102532552B1 (ko) 2017-06-29 2023-05-16 에스케이하이닉스 주식회사 스큐 제어 회로 및 이를 포함하는 인터페이스 회로

Also Published As

Publication number Publication date
WO2011061875A1 (ja) 2011-05-26
US20120229186A1 (en) 2012-09-13
JP5427564B2 (ja) 2014-02-26
US8344776B2 (en) 2013-01-01

Similar Documents

Publication Publication Date Title
JP4629778B2 (ja) チップ性能を最大にするように負荷サイクル回路を自動的に自己較正するための装置及び方法
JP4920512B2 (ja) キャリブレーション回路及びこれを備える半導体装置、並びに、データ処理システム
US9054675B2 (en) Apparatuses and methods for adjusting a minimum forward path delay of a signal path
US7869973B2 (en) Calibration circuit
JP5427564B2 (ja) メモリインターフェース回路、及びメモリデバイスのドライブ能力調整方法
WO2010137330A1 (ja) 遅延調整装置、遅延調整方法
JP3737701B2 (ja) 遅延ロックループを備えた遅延装置及びこれの較正方法
KR20150050021A (ko) 종단 저항을 보정하는 반도체 메모리 장치 및 그것의 종단 저항 보정 방법
US10990322B2 (en) Memory buffer chip, memory system and method of controlling the memory buffer chip
WO2010038422A1 (ja) メモリインターフェース
JP4790023B2 (ja) デジタルdll回路
JP6432699B2 (ja) メモリコントローラ
CN101013883A (zh) 数据延迟控制电路及方法
JP2009118479A (ja) オンダイターミネーションの制御回路およびその制御方法
JP2012129851A (ja) 半導体装置
JP2010081577A (ja) 半導体装置およびデータ伝送システム
US20080175343A1 (en) Phase adjusting function evaluating method, transmission margin measuring method, information processing apparatus, program and computer readable information recording medium
US8963577B2 (en) Termination impedance apparatus with calibration circuit and method therefor
US20090027093A1 (en) Sampling circuit and method
JP2008236273A (ja) 自動遅延制御回路およびその回路を用いたメモリインタフェース制御回路
CN110782929B (zh) 每个通路的占空比校正
US8842485B2 (en) Delay circuit, delay controller, memory controller, and information terminal
US20090116299A1 (en) Semiconductor memory device and method for operating the same
US9355707B2 (en) Gapless pattern detection circuit and semiconductor device including the same
US8929173B1 (en) Data strobe control device

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20121019

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130917

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20131028

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20131202

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

Ref document number: 5427564

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees