メモリデバイス、ホストデバイスおよびサンプリングクロックの調整方法
【課題】高速転送が可能なメモリカード1、高速転送が可能なホストデバイス2、および、高速転送が可能なサンプリングクロックの調整方法を提供する。
【解決手段】
メモリカード1は、コマンド信号、レスポンス信号、データ信号およびステータス信号を、クロック信号と同期して送受信するための制御を行うメモリコントローラ11と、クロック信号をサンプリングクロック信号として位相を調整するためにホストデバイス2が使用するチューニングパターン信号を送信するためのチューニングパターン信号を記憶するメモリ側パターン信号記憶部15とを有し、第1のチューニングパターン信号をコマンドライン32を介して、第2のチューニングパターン信号をデータライン21を介して、同時に送信する。
【解決手段】
メモリカード1は、コマンド信号、レスポンス信号、データ信号およびステータス信号を、クロック信号と同期して送受信するための制御を行うメモリコントローラ11と、クロック信号をサンプリングクロック信号として位相を調整するためにホストデバイス2が使用するチューニングパターン信号を送信するためのチューニングパターン信号を記憶するメモリ側パターン信号記憶部15とを有し、第1のチューニングパターン信号をコマンドライン32を介して、第2のチューニングパターン信号をデータライン21を介して、同時に送信する。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、半導体メモリ部を有するメモリデバイス、前記メモリデバイスと接続するホストデバイスおよび前記ホストデバイスのサンプリングクロックの調整方法に関し、特に、データ転送のためのサンプリングクロックを調整するホストデバイスと接続するメモリデバイス等に関する。
【背景技術】
【0002】
近年、半導体メモリ部を有するメモリデバイス、例えば、不揮発性の半導体メモリ部を有するメモリカードの開発が行われ、メモリカードが接続されるホストデバイスであるデジタルカメラ等の情報機器の外部記憶装置として普及している。メモリデバイスをホストデバイスと組み込み一体化した、いわゆる埋め込み型メモリシステムの用途も広がっている。
【0003】
メモリデバイスとホストデバイスとにより構成されるモリシステムにおいては、ホストデバイスとメモリデバイスとは、クロック信号をクロックラインを介して送受信し、コマンド信号およびレスポンス信号をコマンドラインを介して送受信し、データ信号およびステータス信号をデータラインを介して、送受信する。
【0004】
ホストデバイスがメモリデバイスからデータを読み出す、言い換えれば、リードする場合、ホストデバイスはメモリデバイスにクロックラインを介してクロック信号を送信し、メモリデバイスはホストデバイスから供給されたクロック信号に同期してデータを出力し、ホストデバイスはクロック信号に同期してデータ信号を取り込む。
【0005】
ホストデバイスとメモリデバイスとの間のデータの転送速度、すなわち、書き込み速度および読み出し速度の高速化が要求されている。しかし、転送速度が速くなる、すなわち、クロック信号の周波数が高くなると、ホストデバイスのクロック信号出力からホストデバイスへのデータ入力までの時間であるリードディレイ時間の影響が顕著となってくる。すると、ホストデバイスは送信したクロック信号に同期していてはデータを取り込むタイミングを正確に取ることが容易ではなくなる。
【0006】
このため、例えば、特開2008−90556公報には、ホスト機器からアクセスされるメモリカードにおいて、クロック入力回路が、ホスト機器からクロックラインを介して第1クロック信号を受け取り、データ入出力回路がライトタイミング調整モードにてホスト機器からデータラインを介して第2クロック信号を受け取り、リードタイミング調整モードにて第3クロック信号を出力するメモリカードが開示されている。
【特許文献1】特開2008−90556公報
【発明の開示】
【発明が解決しようとする課題】
【0007】
本発明は、高速転送が可能なカードデバイス、高速転送が可能なホストデバイス、および、高速転送が可能なサンプリングクロックの調整方法を提供することを目的とする。
【課題を解決するための手段】
【0008】
本願発明の一態様によれば、ホストデバイスと接続され、ホストデバイスと、コマンド信号およびレスポンス信号をコマンドラインを介して送受信し、データ信号をデータラインを介して送受信し、クロック信号をクロックラインを介して受信し、ステータス信号をデータラインを介して送信する、メモリデバイスであって、不揮発性半導体メモリ部と、コマンド信号、レスポンス信号、データ信号およびステータス信号を、クロック信号と同期して送受信するための制御を行うメモリコントローラと、クロック信号をサンプリングクロック信号として位相を調整するためにホストデバイスが使用するチューニングパターン信号を送信するための、チューニングパターン信号、を記憶したメモリ側パターン信号記憶部と、を有することを特徴とするメモリデバイスが提供される。
【0009】
本願発明の別の一態様によれば、不揮発性半導体メモリ部を有するメモリデバイスと接続され、メモリデバイスと、コマンド信号およびレスポンス信号をコマンドラインを介して送受信し、データ信号をデータラインを介して送受信し、ステータス信号をデータラインを介して受信し、クロック信号をクロックラインを介して送信する、ホストデバイスであって、コマンド信号およびデータ信号をクロック信号と同期して送信し、レスポンス信号、データ信号およびステータス信号を、クロック信号の位相を調整したサンプリングクロック信号と同期して受信するための制御を行うホストコントローラと、サンプリングクロック信号の位相を調整するサンプリングクロック調整部と、サンプリングクロック信号の位相を調整するためにメモリデバイスから送信されるチューニングパターン信号を記憶したホスト側パターン信号記憶部と、を有することを特徴とするホストデバイスが提供される。
【0010】
さらに、本願発明の別の一態様によれば、サンプリングクロックの調整方法であって、サンプリングクロック信号が、不揮発性半導体メモリ部を有するメモリデバイスと接続され、メモリバイスと、コマンド信号およびレスポンス信号をコマンドラインを介して送受信し、データ信号をデータラインを介して送受信し、ステータス信号をデータラインを介して受信し、クロック信号をクロックラインを介して送信する、ホストデバイスがメモリデバイスからデータ信号を受信するサンプリングポイントを決定するものであり、クロック信号の位相を調整してサンプリングクロック信号の位相の初期値を設定するサンプリングクロック信号設定ステップと、メモリデバイスに、コマンドラインを介してクロック信号からサンプリングクロック信号の位相を調整するためのチューニング用コマンドを送信するチューニング用コマンド送信ステップと、チューニング用コマンドを受信したメモリデバイスから、コマンドラインを介して送信されたレスポンス信号として第1のチューニングパターン信号を受信するチューニングパターン信号受信ステップと、受信した第1のチューニングパターン信号にもとづき、サンプリングクロック信号を調整するサンプリングクロック調整ステップと、を有することを特徴とするサンプリングクロックの調整方法が提供される。
【発明の効果】
【0011】
本発明は、高速転送が可能なカードデバイス、高速転送が可能なホストデバイス、および、高速転送が可能なサンプリングクロックの調整方法を提供するものである。
【発明を実施するための最良の形態】
【0012】
<第1の実施の形態>
以下、本発明の第1の実施の形態のメモリデバイスであるメモリカード1、ホストデバイス2、ホストデバイス2のサンプリングクロックの調整方法について図面を参照して説明する。
図1は、本発明の第1の実施の形態のメモリカードとホストデバイスとからなるメモリシステムの全体構成を示す構成図であり、図2は、第1の実施の形態のメモリカードの構成を示す構成図であり、図3は第1の実施の形態のホストデバイスの構成を示す構成図であり、図4は、第1の実施の形態のホストデバイスのサンプリングクロック調整部の構成を示す構成図である。
【0013】
図1に示す本実施の形態のメモリカード1は、ホストデバイス2に接続可能であり、ホストデバイス2に接続されホストデバイス2の外部記憶装置として用いられるSDメモリカード(登録商標)である。ホストデバイス2としては、画像データまたは音楽データなどの各種データを処理するパーソナルコンピュータおよびデジタルカメラ等を含む情報処理装置が挙げられる。
【0014】
メモリカード1は、不揮発性のメモリからなるメモリ部14と、メモリ部14および伝送信号の送受信等を制御するメモリコントローラ11と、データの入出力のための、コマンド(以下、「CMD」ともいう。)ライン32、クロック(以下、「CLK」ともいう。)ライン33およびデータ(以下、「DAT」ともいう。)ライン31を有するI/Oセル12と、コネクタ13(ピン1乃至ピン9を含む)とを備えている。
【0015】
ホストデバイス2は、接続されたメモリカード1との間で信号の送受信を行うための、コマンドライン32、クロックライン33およびデータライン31を有するI/Oセル22と、伝送信号の送受信の制御等を行うホストコントローラ21とを有している。
【0016】
コネクタ13は、メモリカード1がホストデバイス2に装着されると、ホストデバイス2と信号線(ライン)を介して電気的に接続される。すなわち、より厳密にはコマンドライン等の信号線は、ホストデバイス側信号線と、メモリカード側信号線とから構成されている。コネクタ13に含まれるピン1乃至ピン9に対する信号線の割り当ては、SDメモリカード(登録商標)の規格で規定されている。
【0017】
例えば、データ信号を送受信するための4本のデータラインであるデータDAT0、DAT1、DAT2、DAT3はそれぞれ、ピン7、ピン8、ピン9、ピン1に割り当てられている。また、ピン1は、カード検出信号CDにも割り当てられている。コマンド信号と、このコマンド信号に対するメモリカード1の応答信号であるレスポンス信号(以下、「RES」ともいう。)は、ピン2に割り当てられている。クロック信号は、ピン5に割り当てられている。電源電圧VDDはピン4に、接地電圧VSS1はピン3に、接地電圧VSS2はピン6に割り当てられている。
【0018】
以下、説明を簡単にするために、データラインを1本のみ使用する場合を例に説明する。なお、コマンド信号およびレスポンス信号はコマンドラインを介して送受信され、データ信号およびステータス信号(以下、「STATUS」ともいう。)はデータラインを介して送受信され、クロック信号はクロックラインを介して送受信される。ここで、コマンド信号はホストデバイス2からメモリカード1への動作指示であるコマンドを伝送する信号であり、レスポンス信号およびステータス信号はコマンド信号に対するメモリカードからホストデバイスへの信号である。そして、コマンド信号、レスポンス信号、データ信号およびステータス信号の送受信のタイミングはクロック信号をもとに決定される。
【0019】
次に、図2を用いて、メモリカード1の構成について説明する。本実施の形態のメモリカード1は、すでに説明した構成要素に加えて、バス10で他の構成要素と接続されたチューニングパターン信号を記憶するメモリ側パターン信号記憶部15を有している。なお、メモリ側パターン信号記憶部15は独立した構成要素ではなく、メモリコントローラ11等の一部であってもよい。チューニングパターン信号は、ホストデバイス2がクロック信号をサンプリングクロック信号として位相を調整するために使用される信号であり、さらに本実施の形態のメモリシステム3においては信号線間の相互干渉を検出するための信号でもあるが、その詳細は後述する。
【0020】
なお、本実施の形態のメモリカード1においては、メモリ部14は、不揮発性の半導体メモリであり、NAND型フラッシュメモリにより構成されている。ホストデバイス2から送信されたデータはメモリ部14に記憶される。
【0021】
次に図3を用いてホストデバイス2の構成について説明する。本実施の形態のホストデバイス2は、すでに説明した構成要素に加えて、バス20で他の構成要素と接続されたホストCPU26、ホストドライバ27、クロック23、ホスト側パターン信号記憶部24、サンプリングクロック調整部25A、に加えて、相互干渉検出部28とチューニングパターン受信部29を有している。
【0022】
なお、ホスト側パターン信号記憶部24は図示しないシステムメモリの内部ブロックであり、相互干渉検出部28はホストCPU26が実行するプログラムの機能であり、サンプリングクロック調整部25とチューニングパターン受信部29とはホストコントローラ21の内部ブロックであるが、説明のためにそれぞれ独立した構成要素としている。
【0023】
クロック23はメモリシステム3の動作の基本周波数となるクロック信号を供給する。クロック信号周波数は、例えば、25MHzまたは50MHzのように切り替えが可能である。ホスト側パターン信号記憶部24は、メモリ側パターン信号記憶部15と同じパターンのチューニングパターン信号を記憶する。サンプリングクロック調整部25Aは、チューニングパターン信号を用いてクロック信号をサンプリングクロック信号として位相を調整する。そして、ホストCPU26、言い換えれば相互干渉検出部28はチューニングパターン受信部28が受信したチューニングパターンを読み出し、システムメモリ上のホスト側パターン信号記憶部24のチューニングパターンと比較を行うことで信号線間の相互干渉、例えば、コマンドラインとデータラインとの間のクロストークによる転送エラーを検出する。どの2本のライン間でエラーが発生したのかは、チューニングパターンの不一致が発生した場所から特定することができる。
【0024】
そして、図4に示すように、サンプリングクロック調整部25Aは、DLL(Delay Locked Loop)41と、マルチプレクサ42と、レジスタ43とを有する。DLL41は、複数の位相がずれたタップをもち、クロック23から入力されたクロック信号の位相を調整、言い換えれば、クロック信号から位相が特定ずれたサンプリングクロックを生成する。マルチプレクサ42は、DLL41の複数の位相タップから、ひとつを選択する。レジスタ43は、マルチプレクサ42が選択した位相タップ位置を記憶する。
【0025】
次に、図5および図6を用いて、本発明の第1の実施の形態のメモリデバイスであるメモリカード1、ホストデバイス2、ホストデバイス2のサンプリングクロックの調整方法について説明する。図5は、本発明の第1の実施の形態のサンプリングクロックの調整方法の処理の流れを説明するためのフローチャートであり、図6は、本発明の第1の実施の形態のサンプリングクロックの調整方法のタイミングチャートである。なお、図6のチューニングパターンコマンドは、第2の実施の形態で説明する同期用ヘッダ信号に関するパラメータHが付加されている例を示しているが、パラメータHが付加されていないコマンドを用いてもよい。パラメータHはヘッダーの有無を切り換えるコマンド引数である。
【0026】
なお、ホスデバイス2には、長いデータが連続的に受信可能なように十分に大きなサイズのバッファを準備しておく。バッファサイズが小さいと転送を中断するため、中断時間によりデータのタイミングがずれ、サンプリングエラーを発生してしまう可能性がある。
【0027】
以下、図5のフローチャートに従い説明する。
<ステップS10> サンプリングクロック信号設定ステップ
ホストデバイス2にメモリカード1が接続されると、ホストデバイス2はメモリカード1から、コマンド信号およびレスポンス信号を介して、メモリカード1の基本情報、例えば、容量、対応転送速度、動作電圧等を取得する。そして、ホストデバイス2は、メモリカード1が対応している転送速度等をもとに、クロック信号の位相を調整してサンプリングクロック信号の位相の初期値を設定、すなわち、DLL41の複数の位相タップから、ひとつを選択し、レジスタ43に記憶する。サンプリングクロック信号の位相の初期値はゼロ、すなわち、クロック信号と同じであってもよい。なお、ホストデバイス2の信号送受信はホストコントローラ21が制御する。
【0028】
<ステップS11> チューニング用コマンド送信ステップ
ホストデバイス2は、チューニングパターンを読み出すコマンドであるチューニング用コマンドをコマンドラインを介してメモリカード1に送信する。チューニング用コマンドは、図6に示すように、メモリカードの規格により定められた仕様に従ったデータ列から構成されている。
【0029】
<ステップS12> チューニングパターン信号送信ステップ
メモリカード1は、チューニング用コマンドを受信すると、コマンドラインを介してレスポンス信号として、第1のチューニングパターン信号を送信する。そして、本実施の形態のメモリカード1は、第1のチューニングパターン信号の送信と重複期間を設けて、データとしての第2のチューニングパターン信号をデータラインを介してホストデバイスに送信する。ここで、重複期間を設けて、とは、第1のチューニングパターン信号がコマンドラインを流れる期間と、第2のチューニングパターン信号がデータラインを流れる期間とが、少なくとも一部、重複していることを意味し、第1のチューニングパターン信号と第2のチューニングパターン信号とは、同時に送信されるか、または、オーバーラップ期間を設けて送信される。
【0030】
なお、チューニングパターンはそれぞれのデータラインに特定のパターンを有している。たとえば4本のデータライン有する場合に、メモリコントローラ11は、コマンドラインと4本のデータラインとの間で、互いに重複期間を設けて相互干渉を検出可能なチューニングパターン信号を送信することで、相互干渉検出部28は任意の2本のライン間の相互干渉の影響を検出できる。
【0031】
第1のチューニングパターン信号および第2のチューニングパターン信号は、予めメモリ側パターン信号記憶部15に記憶されている。図6に示すように、チューニングパターン信号は、メモリカードの規格により定められた仕様に従ったもので、通常のレスポンスと異なり、データ長に近い長いレスポンスである。長いレスポンスの例としては、例えば、SDメモリカード(登録商標)の仕様では、R2レスポンスとして定義されている。例えば、第1のチューニングパターン信号は120bitのデータ列であり、第2のチューニングパターン信号は128bitのデータ列である。
【0032】
第2のチューニングパターン信号は、第1のチューニングパターン信号との相互干渉の影響を検出するために、特に相互干渉が発生しやすい特定の確認パターンにより構成されている。例えば、第1のチューニングパターン信号が「0」が連続するときに、第2のチューニングパターン信号は「01」の繰り返しとする。もちろん、ひとつのチューニングパターン信号は同じパターンの繰り返しでなく、種々のパターンを含んでいても良い。転送条件等により、クロストークが発生しやすい信号パターンは異なるためである。
【0033】
なお、チューニングパターン信号は規格により予め定められているパターンを、メモリカード1またはホストデバイス2の製造時に、メモリ側パターン信号記憶部15またはホスト側パターン信号記憶部24に記憶しておいても良いし、メモリカード1がホストデバイス2に接続されたときに、ホストデバイス2のホスト側パターン信号記憶部24等からメモリカード1に送信されメモリ側パターン信号記憶部15に記憶してもよい。後述の方式では、メモリシステムの種類に応じたチューニングパターン信号を使用することができる。
【0034】
また、メモリシステム3においては、第1のチューニングパターン信号と第2のチューニングパターン信号とからなるチューニングパターン信号セットを複数組用いてもよい。転送環境に応じて最適のチューニングパターン信号セットを選択することができる。すなわち、ホスト側パターン信号記憶部24およびメモリ側パターン信号記憶部15が、それぞれ複数組のチューニングパターン信号セットを記憶しておいて、ホストコントローラが、いずれのチューニングパターン信号セットを使用するかを前記コマンドの引数によって前記メモリデバイスに通知する。
【0035】
<チューニングパターン信号受信ステップ>
ホストデバイス2は、第1のチューニングパターン信号をコマンドラインを介して、第2のチューニングパターン信号をデータラインを介して、重複期間を有して、受信する。
【0036】
<相互干渉検知ステップ>
ホストデバイス2の相互干渉検出部28は、チューニングパターン受信部28から、メモリカード1から受信した第1のチューニングパターン信号および第2のチューニングパターン信号を読み出し、ホスト側パターン信号記憶部24に予め記憶してある第1のチューニングパターン信号および第2のチューニングパターン信号とを比較し、コマンドラインとデータラインとの相互干渉を検知する。
【0037】
すなわち、相互干渉検出部28でもあるホストCPU26は、ホストソフトウエアなどにより、受信した第1のチューニングパターン信号とホスト側パターン信号記憶部24に記憶されている第1のチューニングパターン信号とを比較して、相違点、すなわち、エラーの有無を検知すると同時に、受信した第2のチューニングパターン信号とホスト側パターン信号記憶部24に記憶されている第2のチューニングパターン信号とを比較して、相違点、すなわち、エラーの有無を検知する。
【0038】
<ステップS14> サンプリングクロック調整ステップ
ホストデバイス2は相互干渉検出部28が干渉を検出した場合(S13、Yes)、すなわち、エラーを検出した場合には、サンプリングクロック調整部25Aが、サンプリングポイント、すなわち、サンプリングクロックの位相を調整して、入力に最適なサンプリングポイントを特定し、転送エラーが発生するような相互干渉が発生しないように変更する。すなわち、サンプリングクロック調整部25Aのマルチプレクサ42は、DLL41から選択する位相タップを切り替える。
【0039】
最適なサンプリング位置はデータの中央であるが、それを決定する方法がいくつかある。第1の方法は、オーバーサンプリング結果から中央となるクロックを特定する方法あり、HW(Hard ware)化が必要であるが、高速に補正が可能である。第2の方法は、遅延がもっとも少ないタップから遅延の多い方向に順次移動させながら、チューニングパターンを読み込み、すべてのパターンが正常に読み込める最小の遅延位置、すなわち、位相を記憶する方法である。あるいは、遅延がもっとも大きいタップから遅延の少なくなる方向に順次移動させながら、チューニングパターンを読み込み、すべてのパターンが正常に読み込める最大の遅延位置を記憶する方法である。第2の方法では、最小の遅延位置と最大の遅延位置の中間を、最適なサンプリングポイントとして設定するため、FW(Firm ware)による制御が可能である。
【0040】
また、ホストデバイス2は、例えば、メモリカード1が対応している範囲でクロック周波数を低下する等の転送条件を変更してもよい。
【0041】
<ステップS15、S16> データ送受信ステップ
メモリカード1は、データ転送を開始し、ホストデバイス2はデータを受信する。なお、データラインを介してのデータ受信だけでなく、コマンドラインを介してのコマンド信号およびレスポンス信号の受信、データラインを介してのステータス信号の受信にも、調整されたサンプリングクロックを用いてサンプリングタイミングが決定される。
【0042】
そして、終了、例えば、メモリカード1がホストデバイス2から取り外されるまで、データ転送は継続される。
【0043】
以上の説明のように、本実施の形態のメモリカード1は、チューニングパターンコマンドを受信すると、メモリ側パターン信号記憶部15に記憶されているチューニングパターン信号をホストデバイス2に送信する。このため、ホストデバイスは、信号の受信により適したサンプリング位置を特定することができる。さらに、メモリカード1は、チューニングパターン信号として、レスポンスパターンである第1のチューニングパターン信号と、データパターン信号である第2のチューニングパターン信号とを同時に出力することによって、ホストデバイス2はコマンドラインとデータラインとの相互干渉の影響を確認し、より適したサンプリング位置を特定、すなわち、サンプリングクロック信号の位相を調整する。このため、メモリカード1およびホストデバイス2は高速転送が可能である。
【0044】
なお、本実施の形態では、メモリデバイスとしてSDメモリカード(登録商標)を有するメモリシステム3等を例として説明したが、同様のデータ転送システムをもつメモリシステムであれば、他のメモリカード、メモリデバイスまたは内部メモリ等を有するメモリシステムにも適用可能であり、メモリシステム3等と同様の作用効果を奏することができる。
【0045】
<第2の実施の形態>
以下、本発明の第2の実施の形態のメモリデバイスであるメモリカード1A、ホストデバイス2A、ホストデバイス2Aのサンプリングクロックの調整方法について図面を参照して説明する。本実施の形態のメモリカード1Aおよびホストデバイス2Aは第1の実施の形態のメモリカード1およびホストデバイス2に類似しているため同じ構成要素には同じ符号を付し説明は省略する。
【0046】
図7は、本発明の第2の実施の形態のメモリカードの構成を示す構成図であり、図8は第2の実施の形態のホストデバイスの構成を示す構成図であり、図9は、第2の実施の形態のホストデバイスのサンプリングクロック調整部25の構成を示す構成図である。
【0047】
図7に示すように、本実施の形態のメモリシステム3Aのメモリカード1Aは、データ信号、レスポンス信号、およびステータス信号に付加してホストデバイス2Aに送信する同期用ヘッダ信号を出力する同期用ヘッダ信号出力部16を有する。なお、同期用ヘッダ信号出力部16は独立した構成要素ではなく、メモリコントローラ11等の一部であってもよい。そして、図8に示すように、本実施の形態のメモリシステム3Aのホストデバイス2Aは、同期用ヘッダ信号にもとづいてサンプリングクロック信号の位相を微調整するためのサンプリングクロック微調整部25Bを有するサンプリングクロック調整部25を有する。
【0048】
第1の実施の形態のメモリシステム3では、システムの起動時にチューニングパターン信号を用いて、サンプリングクロックを調整することにより、高速転送を実現している。しかし、メモリシステム起動後に、温度または電圧の変動により、リードディレイ時間が変動し、最適のサンプリングポイントと、サンプリングクロックの位相とが時間的経過と共にずれる可能性がある。
【0049】
本実施の形態のメモリシステム3Aでは、メモリカード1Aの同期用ヘッダ信号出力部16が出力する同期用ヘッダ信号をもとに、てホストデバイス2Aのサンプリングクロック微調整部25Bがサンプリングクロックを微調整する。なお、チューニングパターン信号と異なり、同期用ヘッダ信号は、例えば、4ビットの短いデータであるため、データ転送時に付加しても転送速度の低下を招くことはない。すなわち、比較的長いデータ長のデータを転送する場合は、途中でチューニングを行うためには、データ転送を中断しなければならない。しかし、同期ヘッダ信号によりチューニングを行う場合はデータ転送を中断する必要がないため、長いデータ長のデータを転送することができる。すなわち、メモリシステム3Aにおいては、メモリシステム3Aの起動時にチューニングパターン信号を用いて、サンプリングクロックの調整を行い、以降は同期ヘッダ信号を用いてリアルタイムでサンプリングクロックの微調整を行う。
【0050】
同期用ヘッダ信号出力部16は、予め記憶している同期用ヘッダ信号を出力してもよいし、生成した同期用ヘッダ信号を出力してもよい。同期用ヘッダ信号としては、「0101」のデータからなる4ビット信号が、データ長が短く、かつ、同期のための必要最小限の機能を有しているため、好ましい。
【0051】
次に、図9を用いてサンプリングクロック調整部25の構成を説明する。サンプリングクロック調整部25は、サンプリングクロック調整部25Aとサンプリングクロック微調整部25Bとから構成されている。サンプリングクロック調整部25Aは、第1の実施の形態のホストデバイス2のサンプリングクロック調整部25Aと同じである。すなわち、サンプリングクロック調整部25Aは、DLL41と、マルチプレクサ42と、レジスタ43とを有する。DLL41は、複数の位相がずれたタップをもち、クロック回路から入力されたクロック信号の位相を調整、言い換えれば、クロック信号から位相が特定ずれたサンプリングクロックを生成する。マルチプレクサ42は、DLL41の複数の位相タップから、ひとつを選択する。レジスタ43は、マルチプレクサ42が選択した位相タップ位置を記憶する。
【0052】
そして、サンプリングクロック微調整部25Bは、ディレイライン集合45と、フリップフロップ(以下、「FF」という。)集合46と、マルチプレクサ47と、レジスタ48とで構成されている。ディレイライン集合45は複数のディレイライン45Aから構成されており、サンプリングクロックを微調整し、さらに細かなディレイで位相がずれたサンプリングクロックを生成する。FF集合46は、複数のFF16Aから構成されており、ディレイライン45Aで生成されたオーバーサンプリングクロックで取り込んだデータを保持する。マルチプレクサ47は、複数のオーバーサンプリングクロックから、ひとつを選択する。レジスタ48は、オーバーサンプリングクロックの中から、サンプリングクロックとして選択したタップ位置を記憶する。FF44は、入力データのサンプリング結果を保持する。
【0053】
次に、図10から図14を用いて、本発明の第2の実施の形態のメモリデバイスであるメモリカード1A、ホストデバイス2A、ホストデバイス2Aのサンプリングクロックの調整方法について説明する。図10は、本発明の第2の実施の形態のサンプリングクロックの調整方法の処理の流れを説明するためのフローチャートであり、図11は、本発明の第2の実施の形態のサンプリングクロックの調整方法を説明するための説明図であり、図12から図14は、本発明の第2の実施の形態のサンプリングクロックの調整方法のタイミングチャートである。
【0054】
以下、図10のフローチャートに従い説明する。
<ステップS20〜ステップS24>
第1の実施の形態のメモリシステム3の、ステップS10からステップS14と同様であるため、説明は省略する。
【0055】
<ステップS25> 送信ステップ
メモリシステム3Aにおいては、図6に示したように、チューニングパターンコマンドには、同期用ヘッダ信号に関するパラメータHが付加されている。同期用ヘッダ信号に関するパラメータHがONの場合には、メモリカード1Aは、図12から図14に示すように、同期用ヘッダ信号出力部16が出力する同期用ヘッダ信号を、レスポンス信号、ステータス(CRC Status)信号、データ(リードデータブロック)信号に同期ヘッダを付加して送信する。なお、複数のデータラインを有するメモリシステムでは、メモリカード1Aはすべてのデータラインに出力する信号に同期ヘッダを付加することが好ましい。
【0056】
<ステップS26> 同期用ヘッダ信号確認ステップ
ホストデバイス2Aは、メモリカード1から受信した信号に同期用ヘッダ信号が付加されていることを確認する。
【0057】
<ステップS27> サンプリングクロック微調整ステップ
メモリカード1から受信した信号に同期用ヘッダ信号が付加されていた場合(S26:Yes)には、サンプリングクロック微調整部25Bが、サンプリングクロックの微調整を行う。
【0058】
図11に示すタイミングチャートでは、サンプリングクロックがAの位置であり、データの前よりにずれている。サンプリングクロック微調整部25Bでは、同期用ヘッダ信号の最初の0を検出し、矢印で示す多数のタップによりデータをオーバーサンプリングする。すなわち、サンプリング位置Aより少し前からオーバーサンプリングを行う。図11では2ビット分のデータをまたがるようにオーバーサンプリングしている。データはセンターで取るのが最適であるので、オーバーサンプリング結果から、Bのサンプリング位置が最適であるとわかるので、サンプリングクロック微調整部25Bでは、サンプリングクロックの位相を微調整してデータサンプリング位置をBに変更して、レジスタ48に記憶する。すなわち、データのHレベルとLレベルの両方ができるだけ中心位置になるような近いところをデータサンプリング位置として選択する。
【0059】
なお、図15は、第2の実施の形態のメモリカード1において、クロック周波数が変更となった場合のオーバーサンプリングの対応を説明するための図である。図5(A)に示すクロック周波数から、図5(B)に示すようにクロック周波数が半分になった場合には、サンプリング数を一定にするため、サンプリング間隔を倍にする。すなわち、ホストデバイスは使用する周波数に応じて、サンプリング間隔を変える。
【0060】
第2の実施の形態のメモリシステム3Aでは、同期ヘッダ信号は、カードからホストへの転送単位、具体的には、レスポンス、CRC Status 、および リードデータブロックの3つに追加される。そして、ホストデバイス2Aは、次の同期ヘッダ信号を受信するまでは、データサンプリング位置Bによりデータを取り込み、次の同期ヘッダ信号を受信すると再度、サンプリングクロックを微調整する。
【0061】
なお、すでに説明したように、同期ヘッダ信号の送信データに追加は、コマンドにより、オン・オフが切り替えられる。
【0062】
以上の説明のように、メモリシステム3Aにおいては、同期ヘッダ信号をメモリカード1Aからホストデバイス2Aへの送信情報単位に追加するため、リードディレイ時間が変化しても、リアルタイムでのサンプリングクロックの微調整が可能となる。このため、メモリカード1Aおよびホストデバイス2Aは、第1の実施の形態のメモリカード1およびホストデバイス2よりも、さらに安定した高速転送が可能である。また、メモリカード1Aはデータディレイ時間の変動が許容されるため設計が容易化される。また、HW化により、リアルタイムでサンプリングクロックの補正が可能になり、長い連続的なデータ転送が可能である。
【0063】
また、本発明は、上述した実施の形態に限定されるものではなく、本発明の要旨を変えない範囲において、種々の変更、改変等が可能である。
【図面の簡単な説明】
【0064】
【図1】第1の実施の形態のメモリカードとホストデバイスとからなるメモリシステムの全体構成を示す構成図である。
【図2】第1の実施の形態のメモリカードの構成を示す構成図である。
【図3】第1の実施の形態のホストデバイスの構成を示す構成図である。
【図4】第1の実施の形態のホストデバイスのサンプリングクロック調整部の構成を示す構成図である。
【図5】第1の実施の形態のサンプリングクロックの調整方法の処理の流れを説明するためのフローチャートである。
【図6】第1の実施の形態のサンプリングクロックの調整方法のタイミングチャートである。
【図7】第2の実施の形態のメモリカードの構成を示す構成図である。
【図8】第2の実施の形態のホストデバイスの構成を示す構成図である。
【図9】第2の実施の形態のホストデバイスのサンプリングクロック微調整部の構成を示す構成図である。
【図10】第2の実施の形態のサンプリングクロックの調整方法の処理の流れを説明するためのフローチャートである。
【図11】第2の実施の形態のサンプリングクロックの調整方法を説明するための説明図である。
【図12】第2の実施の形態のサンプリングクロックの調整方法のタイミングチャートである。
【図13】第2の実施の形態のサンプリングクロックの調整方法のタイミングチャートである。
【図14】第2の実施の形態のサンプリングクロックの調整方法のタイミングチャートである。
【図15】第2の実施の形態のメモリカードにおいて、クロック周波数が変更となった場合のオーバーサンプリングの対応を説明するための図である
【符号の説明】
【0065】
1、1A…メモリカード、2、2A…ホストデバイス、3、3A…メモリシステム、3A…メモリシステム、10…バス、11…メモリコントローラ、12…I/Oセル、13…コネクタ、14…メモリ部、15…メモリ側パターン信号記憶部、16…同期用ヘッダ信号出力部、20…バス、21…ホストコントローラ、22…I/Oセル、23…クロック、24…ホスト側パターン信号記憶部、25…サンプリングクロック調整部、25A…サンプリングクロック調整部、25B…サンプリングクロック微調整部、26…ホストCPU、27…ホストドライバ、28…相互干渉検出部、29…チューニングパターン受信部、31…データライン、32…コマンドライン、33…クロックライン、41…DLL、42…マルチプレクサ、43…レジスタ、44…フリップフロップ、45…ディレイライン集合、45A…ディレイライン、46…FF集合、46A…フリップフロップ、47…マルチプレクサ、48…レジスタ
【技術分野】
【0001】
本発明は、半導体メモリ部を有するメモリデバイス、前記メモリデバイスと接続するホストデバイスおよび前記ホストデバイスのサンプリングクロックの調整方法に関し、特に、データ転送のためのサンプリングクロックを調整するホストデバイスと接続するメモリデバイス等に関する。
【背景技術】
【0002】
近年、半導体メモリ部を有するメモリデバイス、例えば、不揮発性の半導体メモリ部を有するメモリカードの開発が行われ、メモリカードが接続されるホストデバイスであるデジタルカメラ等の情報機器の外部記憶装置として普及している。メモリデバイスをホストデバイスと組み込み一体化した、いわゆる埋め込み型メモリシステムの用途も広がっている。
【0003】
メモリデバイスとホストデバイスとにより構成されるモリシステムにおいては、ホストデバイスとメモリデバイスとは、クロック信号をクロックラインを介して送受信し、コマンド信号およびレスポンス信号をコマンドラインを介して送受信し、データ信号およびステータス信号をデータラインを介して、送受信する。
【0004】
ホストデバイスがメモリデバイスからデータを読み出す、言い換えれば、リードする場合、ホストデバイスはメモリデバイスにクロックラインを介してクロック信号を送信し、メモリデバイスはホストデバイスから供給されたクロック信号に同期してデータを出力し、ホストデバイスはクロック信号に同期してデータ信号を取り込む。
【0005】
ホストデバイスとメモリデバイスとの間のデータの転送速度、すなわち、書き込み速度および読み出し速度の高速化が要求されている。しかし、転送速度が速くなる、すなわち、クロック信号の周波数が高くなると、ホストデバイスのクロック信号出力からホストデバイスへのデータ入力までの時間であるリードディレイ時間の影響が顕著となってくる。すると、ホストデバイスは送信したクロック信号に同期していてはデータを取り込むタイミングを正確に取ることが容易ではなくなる。
【0006】
このため、例えば、特開2008−90556公報には、ホスト機器からアクセスされるメモリカードにおいて、クロック入力回路が、ホスト機器からクロックラインを介して第1クロック信号を受け取り、データ入出力回路がライトタイミング調整モードにてホスト機器からデータラインを介して第2クロック信号を受け取り、リードタイミング調整モードにて第3クロック信号を出力するメモリカードが開示されている。
【特許文献1】特開2008−90556公報
【発明の開示】
【発明が解決しようとする課題】
【0007】
本発明は、高速転送が可能なカードデバイス、高速転送が可能なホストデバイス、および、高速転送が可能なサンプリングクロックの調整方法を提供することを目的とする。
【課題を解決するための手段】
【0008】
本願発明の一態様によれば、ホストデバイスと接続され、ホストデバイスと、コマンド信号およびレスポンス信号をコマンドラインを介して送受信し、データ信号をデータラインを介して送受信し、クロック信号をクロックラインを介して受信し、ステータス信号をデータラインを介して送信する、メモリデバイスであって、不揮発性半導体メモリ部と、コマンド信号、レスポンス信号、データ信号およびステータス信号を、クロック信号と同期して送受信するための制御を行うメモリコントローラと、クロック信号をサンプリングクロック信号として位相を調整するためにホストデバイスが使用するチューニングパターン信号を送信するための、チューニングパターン信号、を記憶したメモリ側パターン信号記憶部と、を有することを特徴とするメモリデバイスが提供される。
【0009】
本願発明の別の一態様によれば、不揮発性半導体メモリ部を有するメモリデバイスと接続され、メモリデバイスと、コマンド信号およびレスポンス信号をコマンドラインを介して送受信し、データ信号をデータラインを介して送受信し、ステータス信号をデータラインを介して受信し、クロック信号をクロックラインを介して送信する、ホストデバイスであって、コマンド信号およびデータ信号をクロック信号と同期して送信し、レスポンス信号、データ信号およびステータス信号を、クロック信号の位相を調整したサンプリングクロック信号と同期して受信するための制御を行うホストコントローラと、サンプリングクロック信号の位相を調整するサンプリングクロック調整部と、サンプリングクロック信号の位相を調整するためにメモリデバイスから送信されるチューニングパターン信号を記憶したホスト側パターン信号記憶部と、を有することを特徴とするホストデバイスが提供される。
【0010】
さらに、本願発明の別の一態様によれば、サンプリングクロックの調整方法であって、サンプリングクロック信号が、不揮発性半導体メモリ部を有するメモリデバイスと接続され、メモリバイスと、コマンド信号およびレスポンス信号をコマンドラインを介して送受信し、データ信号をデータラインを介して送受信し、ステータス信号をデータラインを介して受信し、クロック信号をクロックラインを介して送信する、ホストデバイスがメモリデバイスからデータ信号を受信するサンプリングポイントを決定するものであり、クロック信号の位相を調整してサンプリングクロック信号の位相の初期値を設定するサンプリングクロック信号設定ステップと、メモリデバイスに、コマンドラインを介してクロック信号からサンプリングクロック信号の位相を調整するためのチューニング用コマンドを送信するチューニング用コマンド送信ステップと、チューニング用コマンドを受信したメモリデバイスから、コマンドラインを介して送信されたレスポンス信号として第1のチューニングパターン信号を受信するチューニングパターン信号受信ステップと、受信した第1のチューニングパターン信号にもとづき、サンプリングクロック信号を調整するサンプリングクロック調整ステップと、を有することを特徴とするサンプリングクロックの調整方法が提供される。
【発明の効果】
【0011】
本発明は、高速転送が可能なカードデバイス、高速転送が可能なホストデバイス、および、高速転送が可能なサンプリングクロックの調整方法を提供するものである。
【発明を実施するための最良の形態】
【0012】
<第1の実施の形態>
以下、本発明の第1の実施の形態のメモリデバイスであるメモリカード1、ホストデバイス2、ホストデバイス2のサンプリングクロックの調整方法について図面を参照して説明する。
図1は、本発明の第1の実施の形態のメモリカードとホストデバイスとからなるメモリシステムの全体構成を示す構成図であり、図2は、第1の実施の形態のメモリカードの構成を示す構成図であり、図3は第1の実施の形態のホストデバイスの構成を示す構成図であり、図4は、第1の実施の形態のホストデバイスのサンプリングクロック調整部の構成を示す構成図である。
【0013】
図1に示す本実施の形態のメモリカード1は、ホストデバイス2に接続可能であり、ホストデバイス2に接続されホストデバイス2の外部記憶装置として用いられるSDメモリカード(登録商標)である。ホストデバイス2としては、画像データまたは音楽データなどの各種データを処理するパーソナルコンピュータおよびデジタルカメラ等を含む情報処理装置が挙げられる。
【0014】
メモリカード1は、不揮発性のメモリからなるメモリ部14と、メモリ部14および伝送信号の送受信等を制御するメモリコントローラ11と、データの入出力のための、コマンド(以下、「CMD」ともいう。)ライン32、クロック(以下、「CLK」ともいう。)ライン33およびデータ(以下、「DAT」ともいう。)ライン31を有するI/Oセル12と、コネクタ13(ピン1乃至ピン9を含む)とを備えている。
【0015】
ホストデバイス2は、接続されたメモリカード1との間で信号の送受信を行うための、コマンドライン32、クロックライン33およびデータライン31を有するI/Oセル22と、伝送信号の送受信の制御等を行うホストコントローラ21とを有している。
【0016】
コネクタ13は、メモリカード1がホストデバイス2に装着されると、ホストデバイス2と信号線(ライン)を介して電気的に接続される。すなわち、より厳密にはコマンドライン等の信号線は、ホストデバイス側信号線と、メモリカード側信号線とから構成されている。コネクタ13に含まれるピン1乃至ピン9に対する信号線の割り当ては、SDメモリカード(登録商標)の規格で規定されている。
【0017】
例えば、データ信号を送受信するための4本のデータラインであるデータDAT0、DAT1、DAT2、DAT3はそれぞれ、ピン7、ピン8、ピン9、ピン1に割り当てられている。また、ピン1は、カード検出信号CDにも割り当てられている。コマンド信号と、このコマンド信号に対するメモリカード1の応答信号であるレスポンス信号(以下、「RES」ともいう。)は、ピン2に割り当てられている。クロック信号は、ピン5に割り当てられている。電源電圧VDDはピン4に、接地電圧VSS1はピン3に、接地電圧VSS2はピン6に割り当てられている。
【0018】
以下、説明を簡単にするために、データラインを1本のみ使用する場合を例に説明する。なお、コマンド信号およびレスポンス信号はコマンドラインを介して送受信され、データ信号およびステータス信号(以下、「STATUS」ともいう。)はデータラインを介して送受信され、クロック信号はクロックラインを介して送受信される。ここで、コマンド信号はホストデバイス2からメモリカード1への動作指示であるコマンドを伝送する信号であり、レスポンス信号およびステータス信号はコマンド信号に対するメモリカードからホストデバイスへの信号である。そして、コマンド信号、レスポンス信号、データ信号およびステータス信号の送受信のタイミングはクロック信号をもとに決定される。
【0019】
次に、図2を用いて、メモリカード1の構成について説明する。本実施の形態のメモリカード1は、すでに説明した構成要素に加えて、バス10で他の構成要素と接続されたチューニングパターン信号を記憶するメモリ側パターン信号記憶部15を有している。なお、メモリ側パターン信号記憶部15は独立した構成要素ではなく、メモリコントローラ11等の一部であってもよい。チューニングパターン信号は、ホストデバイス2がクロック信号をサンプリングクロック信号として位相を調整するために使用される信号であり、さらに本実施の形態のメモリシステム3においては信号線間の相互干渉を検出するための信号でもあるが、その詳細は後述する。
【0020】
なお、本実施の形態のメモリカード1においては、メモリ部14は、不揮発性の半導体メモリであり、NAND型フラッシュメモリにより構成されている。ホストデバイス2から送信されたデータはメモリ部14に記憶される。
【0021】
次に図3を用いてホストデバイス2の構成について説明する。本実施の形態のホストデバイス2は、すでに説明した構成要素に加えて、バス20で他の構成要素と接続されたホストCPU26、ホストドライバ27、クロック23、ホスト側パターン信号記憶部24、サンプリングクロック調整部25A、に加えて、相互干渉検出部28とチューニングパターン受信部29を有している。
【0022】
なお、ホスト側パターン信号記憶部24は図示しないシステムメモリの内部ブロックであり、相互干渉検出部28はホストCPU26が実行するプログラムの機能であり、サンプリングクロック調整部25とチューニングパターン受信部29とはホストコントローラ21の内部ブロックであるが、説明のためにそれぞれ独立した構成要素としている。
【0023】
クロック23はメモリシステム3の動作の基本周波数となるクロック信号を供給する。クロック信号周波数は、例えば、25MHzまたは50MHzのように切り替えが可能である。ホスト側パターン信号記憶部24は、メモリ側パターン信号記憶部15と同じパターンのチューニングパターン信号を記憶する。サンプリングクロック調整部25Aは、チューニングパターン信号を用いてクロック信号をサンプリングクロック信号として位相を調整する。そして、ホストCPU26、言い換えれば相互干渉検出部28はチューニングパターン受信部28が受信したチューニングパターンを読み出し、システムメモリ上のホスト側パターン信号記憶部24のチューニングパターンと比較を行うことで信号線間の相互干渉、例えば、コマンドラインとデータラインとの間のクロストークによる転送エラーを検出する。どの2本のライン間でエラーが発生したのかは、チューニングパターンの不一致が発生した場所から特定することができる。
【0024】
そして、図4に示すように、サンプリングクロック調整部25Aは、DLL(Delay Locked Loop)41と、マルチプレクサ42と、レジスタ43とを有する。DLL41は、複数の位相がずれたタップをもち、クロック23から入力されたクロック信号の位相を調整、言い換えれば、クロック信号から位相が特定ずれたサンプリングクロックを生成する。マルチプレクサ42は、DLL41の複数の位相タップから、ひとつを選択する。レジスタ43は、マルチプレクサ42が選択した位相タップ位置を記憶する。
【0025】
次に、図5および図6を用いて、本発明の第1の実施の形態のメモリデバイスであるメモリカード1、ホストデバイス2、ホストデバイス2のサンプリングクロックの調整方法について説明する。図5は、本発明の第1の実施の形態のサンプリングクロックの調整方法の処理の流れを説明するためのフローチャートであり、図6は、本発明の第1の実施の形態のサンプリングクロックの調整方法のタイミングチャートである。なお、図6のチューニングパターンコマンドは、第2の実施の形態で説明する同期用ヘッダ信号に関するパラメータHが付加されている例を示しているが、パラメータHが付加されていないコマンドを用いてもよい。パラメータHはヘッダーの有無を切り換えるコマンド引数である。
【0026】
なお、ホスデバイス2には、長いデータが連続的に受信可能なように十分に大きなサイズのバッファを準備しておく。バッファサイズが小さいと転送を中断するため、中断時間によりデータのタイミングがずれ、サンプリングエラーを発生してしまう可能性がある。
【0027】
以下、図5のフローチャートに従い説明する。
<ステップS10> サンプリングクロック信号設定ステップ
ホストデバイス2にメモリカード1が接続されると、ホストデバイス2はメモリカード1から、コマンド信号およびレスポンス信号を介して、メモリカード1の基本情報、例えば、容量、対応転送速度、動作電圧等を取得する。そして、ホストデバイス2は、メモリカード1が対応している転送速度等をもとに、クロック信号の位相を調整してサンプリングクロック信号の位相の初期値を設定、すなわち、DLL41の複数の位相タップから、ひとつを選択し、レジスタ43に記憶する。サンプリングクロック信号の位相の初期値はゼロ、すなわち、クロック信号と同じであってもよい。なお、ホストデバイス2の信号送受信はホストコントローラ21が制御する。
【0028】
<ステップS11> チューニング用コマンド送信ステップ
ホストデバイス2は、チューニングパターンを読み出すコマンドであるチューニング用コマンドをコマンドラインを介してメモリカード1に送信する。チューニング用コマンドは、図6に示すように、メモリカードの規格により定められた仕様に従ったデータ列から構成されている。
【0029】
<ステップS12> チューニングパターン信号送信ステップ
メモリカード1は、チューニング用コマンドを受信すると、コマンドラインを介してレスポンス信号として、第1のチューニングパターン信号を送信する。そして、本実施の形態のメモリカード1は、第1のチューニングパターン信号の送信と重複期間を設けて、データとしての第2のチューニングパターン信号をデータラインを介してホストデバイスに送信する。ここで、重複期間を設けて、とは、第1のチューニングパターン信号がコマンドラインを流れる期間と、第2のチューニングパターン信号がデータラインを流れる期間とが、少なくとも一部、重複していることを意味し、第1のチューニングパターン信号と第2のチューニングパターン信号とは、同時に送信されるか、または、オーバーラップ期間を設けて送信される。
【0030】
なお、チューニングパターンはそれぞれのデータラインに特定のパターンを有している。たとえば4本のデータライン有する場合に、メモリコントローラ11は、コマンドラインと4本のデータラインとの間で、互いに重複期間を設けて相互干渉を検出可能なチューニングパターン信号を送信することで、相互干渉検出部28は任意の2本のライン間の相互干渉の影響を検出できる。
【0031】
第1のチューニングパターン信号および第2のチューニングパターン信号は、予めメモリ側パターン信号記憶部15に記憶されている。図6に示すように、チューニングパターン信号は、メモリカードの規格により定められた仕様に従ったもので、通常のレスポンスと異なり、データ長に近い長いレスポンスである。長いレスポンスの例としては、例えば、SDメモリカード(登録商標)の仕様では、R2レスポンスとして定義されている。例えば、第1のチューニングパターン信号は120bitのデータ列であり、第2のチューニングパターン信号は128bitのデータ列である。
【0032】
第2のチューニングパターン信号は、第1のチューニングパターン信号との相互干渉の影響を検出するために、特に相互干渉が発生しやすい特定の確認パターンにより構成されている。例えば、第1のチューニングパターン信号が「0」が連続するときに、第2のチューニングパターン信号は「01」の繰り返しとする。もちろん、ひとつのチューニングパターン信号は同じパターンの繰り返しでなく、種々のパターンを含んでいても良い。転送条件等により、クロストークが発生しやすい信号パターンは異なるためである。
【0033】
なお、チューニングパターン信号は規格により予め定められているパターンを、メモリカード1またはホストデバイス2の製造時に、メモリ側パターン信号記憶部15またはホスト側パターン信号記憶部24に記憶しておいても良いし、メモリカード1がホストデバイス2に接続されたときに、ホストデバイス2のホスト側パターン信号記憶部24等からメモリカード1に送信されメモリ側パターン信号記憶部15に記憶してもよい。後述の方式では、メモリシステムの種類に応じたチューニングパターン信号を使用することができる。
【0034】
また、メモリシステム3においては、第1のチューニングパターン信号と第2のチューニングパターン信号とからなるチューニングパターン信号セットを複数組用いてもよい。転送環境に応じて最適のチューニングパターン信号セットを選択することができる。すなわち、ホスト側パターン信号記憶部24およびメモリ側パターン信号記憶部15が、それぞれ複数組のチューニングパターン信号セットを記憶しておいて、ホストコントローラが、いずれのチューニングパターン信号セットを使用するかを前記コマンドの引数によって前記メモリデバイスに通知する。
【0035】
<チューニングパターン信号受信ステップ>
ホストデバイス2は、第1のチューニングパターン信号をコマンドラインを介して、第2のチューニングパターン信号をデータラインを介して、重複期間を有して、受信する。
【0036】
<相互干渉検知ステップ>
ホストデバイス2の相互干渉検出部28は、チューニングパターン受信部28から、メモリカード1から受信した第1のチューニングパターン信号および第2のチューニングパターン信号を読み出し、ホスト側パターン信号記憶部24に予め記憶してある第1のチューニングパターン信号および第2のチューニングパターン信号とを比較し、コマンドラインとデータラインとの相互干渉を検知する。
【0037】
すなわち、相互干渉検出部28でもあるホストCPU26は、ホストソフトウエアなどにより、受信した第1のチューニングパターン信号とホスト側パターン信号記憶部24に記憶されている第1のチューニングパターン信号とを比較して、相違点、すなわち、エラーの有無を検知すると同時に、受信した第2のチューニングパターン信号とホスト側パターン信号記憶部24に記憶されている第2のチューニングパターン信号とを比較して、相違点、すなわち、エラーの有無を検知する。
【0038】
<ステップS14> サンプリングクロック調整ステップ
ホストデバイス2は相互干渉検出部28が干渉を検出した場合(S13、Yes)、すなわち、エラーを検出した場合には、サンプリングクロック調整部25Aが、サンプリングポイント、すなわち、サンプリングクロックの位相を調整して、入力に最適なサンプリングポイントを特定し、転送エラーが発生するような相互干渉が発生しないように変更する。すなわち、サンプリングクロック調整部25Aのマルチプレクサ42は、DLL41から選択する位相タップを切り替える。
【0039】
最適なサンプリング位置はデータの中央であるが、それを決定する方法がいくつかある。第1の方法は、オーバーサンプリング結果から中央となるクロックを特定する方法あり、HW(Hard ware)化が必要であるが、高速に補正が可能である。第2の方法は、遅延がもっとも少ないタップから遅延の多い方向に順次移動させながら、チューニングパターンを読み込み、すべてのパターンが正常に読み込める最小の遅延位置、すなわち、位相を記憶する方法である。あるいは、遅延がもっとも大きいタップから遅延の少なくなる方向に順次移動させながら、チューニングパターンを読み込み、すべてのパターンが正常に読み込める最大の遅延位置を記憶する方法である。第2の方法では、最小の遅延位置と最大の遅延位置の中間を、最適なサンプリングポイントとして設定するため、FW(Firm ware)による制御が可能である。
【0040】
また、ホストデバイス2は、例えば、メモリカード1が対応している範囲でクロック周波数を低下する等の転送条件を変更してもよい。
【0041】
<ステップS15、S16> データ送受信ステップ
メモリカード1は、データ転送を開始し、ホストデバイス2はデータを受信する。なお、データラインを介してのデータ受信だけでなく、コマンドラインを介してのコマンド信号およびレスポンス信号の受信、データラインを介してのステータス信号の受信にも、調整されたサンプリングクロックを用いてサンプリングタイミングが決定される。
【0042】
そして、終了、例えば、メモリカード1がホストデバイス2から取り外されるまで、データ転送は継続される。
【0043】
以上の説明のように、本実施の形態のメモリカード1は、チューニングパターンコマンドを受信すると、メモリ側パターン信号記憶部15に記憶されているチューニングパターン信号をホストデバイス2に送信する。このため、ホストデバイスは、信号の受信により適したサンプリング位置を特定することができる。さらに、メモリカード1は、チューニングパターン信号として、レスポンスパターンである第1のチューニングパターン信号と、データパターン信号である第2のチューニングパターン信号とを同時に出力することによって、ホストデバイス2はコマンドラインとデータラインとの相互干渉の影響を確認し、より適したサンプリング位置を特定、すなわち、サンプリングクロック信号の位相を調整する。このため、メモリカード1およびホストデバイス2は高速転送が可能である。
【0044】
なお、本実施の形態では、メモリデバイスとしてSDメモリカード(登録商標)を有するメモリシステム3等を例として説明したが、同様のデータ転送システムをもつメモリシステムであれば、他のメモリカード、メモリデバイスまたは内部メモリ等を有するメモリシステムにも適用可能であり、メモリシステム3等と同様の作用効果を奏することができる。
【0045】
<第2の実施の形態>
以下、本発明の第2の実施の形態のメモリデバイスであるメモリカード1A、ホストデバイス2A、ホストデバイス2Aのサンプリングクロックの調整方法について図面を参照して説明する。本実施の形態のメモリカード1Aおよびホストデバイス2Aは第1の実施の形態のメモリカード1およびホストデバイス2に類似しているため同じ構成要素には同じ符号を付し説明は省略する。
【0046】
図7は、本発明の第2の実施の形態のメモリカードの構成を示す構成図であり、図8は第2の実施の形態のホストデバイスの構成を示す構成図であり、図9は、第2の実施の形態のホストデバイスのサンプリングクロック調整部25の構成を示す構成図である。
【0047】
図7に示すように、本実施の形態のメモリシステム3Aのメモリカード1Aは、データ信号、レスポンス信号、およびステータス信号に付加してホストデバイス2Aに送信する同期用ヘッダ信号を出力する同期用ヘッダ信号出力部16を有する。なお、同期用ヘッダ信号出力部16は独立した構成要素ではなく、メモリコントローラ11等の一部であってもよい。そして、図8に示すように、本実施の形態のメモリシステム3Aのホストデバイス2Aは、同期用ヘッダ信号にもとづいてサンプリングクロック信号の位相を微調整するためのサンプリングクロック微調整部25Bを有するサンプリングクロック調整部25を有する。
【0048】
第1の実施の形態のメモリシステム3では、システムの起動時にチューニングパターン信号を用いて、サンプリングクロックを調整することにより、高速転送を実現している。しかし、メモリシステム起動後に、温度または電圧の変動により、リードディレイ時間が変動し、最適のサンプリングポイントと、サンプリングクロックの位相とが時間的経過と共にずれる可能性がある。
【0049】
本実施の形態のメモリシステム3Aでは、メモリカード1Aの同期用ヘッダ信号出力部16が出力する同期用ヘッダ信号をもとに、てホストデバイス2Aのサンプリングクロック微調整部25Bがサンプリングクロックを微調整する。なお、チューニングパターン信号と異なり、同期用ヘッダ信号は、例えば、4ビットの短いデータであるため、データ転送時に付加しても転送速度の低下を招くことはない。すなわち、比較的長いデータ長のデータを転送する場合は、途中でチューニングを行うためには、データ転送を中断しなければならない。しかし、同期ヘッダ信号によりチューニングを行う場合はデータ転送を中断する必要がないため、長いデータ長のデータを転送することができる。すなわち、メモリシステム3Aにおいては、メモリシステム3Aの起動時にチューニングパターン信号を用いて、サンプリングクロックの調整を行い、以降は同期ヘッダ信号を用いてリアルタイムでサンプリングクロックの微調整を行う。
【0050】
同期用ヘッダ信号出力部16は、予め記憶している同期用ヘッダ信号を出力してもよいし、生成した同期用ヘッダ信号を出力してもよい。同期用ヘッダ信号としては、「0101」のデータからなる4ビット信号が、データ長が短く、かつ、同期のための必要最小限の機能を有しているため、好ましい。
【0051】
次に、図9を用いてサンプリングクロック調整部25の構成を説明する。サンプリングクロック調整部25は、サンプリングクロック調整部25Aとサンプリングクロック微調整部25Bとから構成されている。サンプリングクロック調整部25Aは、第1の実施の形態のホストデバイス2のサンプリングクロック調整部25Aと同じである。すなわち、サンプリングクロック調整部25Aは、DLL41と、マルチプレクサ42と、レジスタ43とを有する。DLL41は、複数の位相がずれたタップをもち、クロック回路から入力されたクロック信号の位相を調整、言い換えれば、クロック信号から位相が特定ずれたサンプリングクロックを生成する。マルチプレクサ42は、DLL41の複数の位相タップから、ひとつを選択する。レジスタ43は、マルチプレクサ42が選択した位相タップ位置を記憶する。
【0052】
そして、サンプリングクロック微調整部25Bは、ディレイライン集合45と、フリップフロップ(以下、「FF」という。)集合46と、マルチプレクサ47と、レジスタ48とで構成されている。ディレイライン集合45は複数のディレイライン45Aから構成されており、サンプリングクロックを微調整し、さらに細かなディレイで位相がずれたサンプリングクロックを生成する。FF集合46は、複数のFF16Aから構成されており、ディレイライン45Aで生成されたオーバーサンプリングクロックで取り込んだデータを保持する。マルチプレクサ47は、複数のオーバーサンプリングクロックから、ひとつを選択する。レジスタ48は、オーバーサンプリングクロックの中から、サンプリングクロックとして選択したタップ位置を記憶する。FF44は、入力データのサンプリング結果を保持する。
【0053】
次に、図10から図14を用いて、本発明の第2の実施の形態のメモリデバイスであるメモリカード1A、ホストデバイス2A、ホストデバイス2Aのサンプリングクロックの調整方法について説明する。図10は、本発明の第2の実施の形態のサンプリングクロックの調整方法の処理の流れを説明するためのフローチャートであり、図11は、本発明の第2の実施の形態のサンプリングクロックの調整方法を説明するための説明図であり、図12から図14は、本発明の第2の実施の形態のサンプリングクロックの調整方法のタイミングチャートである。
【0054】
以下、図10のフローチャートに従い説明する。
<ステップS20〜ステップS24>
第1の実施の形態のメモリシステム3の、ステップS10からステップS14と同様であるため、説明は省略する。
【0055】
<ステップS25> 送信ステップ
メモリシステム3Aにおいては、図6に示したように、チューニングパターンコマンドには、同期用ヘッダ信号に関するパラメータHが付加されている。同期用ヘッダ信号に関するパラメータHがONの場合には、メモリカード1Aは、図12から図14に示すように、同期用ヘッダ信号出力部16が出力する同期用ヘッダ信号を、レスポンス信号、ステータス(CRC Status)信号、データ(リードデータブロック)信号に同期ヘッダを付加して送信する。なお、複数のデータラインを有するメモリシステムでは、メモリカード1Aはすべてのデータラインに出力する信号に同期ヘッダを付加することが好ましい。
【0056】
<ステップS26> 同期用ヘッダ信号確認ステップ
ホストデバイス2Aは、メモリカード1から受信した信号に同期用ヘッダ信号が付加されていることを確認する。
【0057】
<ステップS27> サンプリングクロック微調整ステップ
メモリカード1から受信した信号に同期用ヘッダ信号が付加されていた場合(S26:Yes)には、サンプリングクロック微調整部25Bが、サンプリングクロックの微調整を行う。
【0058】
図11に示すタイミングチャートでは、サンプリングクロックがAの位置であり、データの前よりにずれている。サンプリングクロック微調整部25Bでは、同期用ヘッダ信号の最初の0を検出し、矢印で示す多数のタップによりデータをオーバーサンプリングする。すなわち、サンプリング位置Aより少し前からオーバーサンプリングを行う。図11では2ビット分のデータをまたがるようにオーバーサンプリングしている。データはセンターで取るのが最適であるので、オーバーサンプリング結果から、Bのサンプリング位置が最適であるとわかるので、サンプリングクロック微調整部25Bでは、サンプリングクロックの位相を微調整してデータサンプリング位置をBに変更して、レジスタ48に記憶する。すなわち、データのHレベルとLレベルの両方ができるだけ中心位置になるような近いところをデータサンプリング位置として選択する。
【0059】
なお、図15は、第2の実施の形態のメモリカード1において、クロック周波数が変更となった場合のオーバーサンプリングの対応を説明するための図である。図5(A)に示すクロック周波数から、図5(B)に示すようにクロック周波数が半分になった場合には、サンプリング数を一定にするため、サンプリング間隔を倍にする。すなわち、ホストデバイスは使用する周波数に応じて、サンプリング間隔を変える。
【0060】
第2の実施の形態のメモリシステム3Aでは、同期ヘッダ信号は、カードからホストへの転送単位、具体的には、レスポンス、CRC Status 、および リードデータブロックの3つに追加される。そして、ホストデバイス2Aは、次の同期ヘッダ信号を受信するまでは、データサンプリング位置Bによりデータを取り込み、次の同期ヘッダ信号を受信すると再度、サンプリングクロックを微調整する。
【0061】
なお、すでに説明したように、同期ヘッダ信号の送信データに追加は、コマンドにより、オン・オフが切り替えられる。
【0062】
以上の説明のように、メモリシステム3Aにおいては、同期ヘッダ信号をメモリカード1Aからホストデバイス2Aへの送信情報単位に追加するため、リードディレイ時間が変化しても、リアルタイムでのサンプリングクロックの微調整が可能となる。このため、メモリカード1Aおよびホストデバイス2Aは、第1の実施の形態のメモリカード1およびホストデバイス2よりも、さらに安定した高速転送が可能である。また、メモリカード1Aはデータディレイ時間の変動が許容されるため設計が容易化される。また、HW化により、リアルタイムでサンプリングクロックの補正が可能になり、長い連続的なデータ転送が可能である。
【0063】
また、本発明は、上述した実施の形態に限定されるものではなく、本発明の要旨を変えない範囲において、種々の変更、改変等が可能である。
【図面の簡単な説明】
【0064】
【図1】第1の実施の形態のメモリカードとホストデバイスとからなるメモリシステムの全体構成を示す構成図である。
【図2】第1の実施の形態のメモリカードの構成を示す構成図である。
【図3】第1の実施の形態のホストデバイスの構成を示す構成図である。
【図4】第1の実施の形態のホストデバイスのサンプリングクロック調整部の構成を示す構成図である。
【図5】第1の実施の形態のサンプリングクロックの調整方法の処理の流れを説明するためのフローチャートである。
【図6】第1の実施の形態のサンプリングクロックの調整方法のタイミングチャートである。
【図7】第2の実施の形態のメモリカードの構成を示す構成図である。
【図8】第2の実施の形態のホストデバイスの構成を示す構成図である。
【図9】第2の実施の形態のホストデバイスのサンプリングクロック微調整部の構成を示す構成図である。
【図10】第2の実施の形態のサンプリングクロックの調整方法の処理の流れを説明するためのフローチャートである。
【図11】第2の実施の形態のサンプリングクロックの調整方法を説明するための説明図である。
【図12】第2の実施の形態のサンプリングクロックの調整方法のタイミングチャートである。
【図13】第2の実施の形態のサンプリングクロックの調整方法のタイミングチャートである。
【図14】第2の実施の形態のサンプリングクロックの調整方法のタイミングチャートである。
【図15】第2の実施の形態のメモリカードにおいて、クロック周波数が変更となった場合のオーバーサンプリングの対応を説明するための図である
【符号の説明】
【0065】
1、1A…メモリカード、2、2A…ホストデバイス、3、3A…メモリシステム、3A…メモリシステム、10…バス、11…メモリコントローラ、12…I/Oセル、13…コネクタ、14…メモリ部、15…メモリ側パターン信号記憶部、16…同期用ヘッダ信号出力部、20…バス、21…ホストコントローラ、22…I/Oセル、23…クロック、24…ホスト側パターン信号記憶部、25…サンプリングクロック調整部、25A…サンプリングクロック調整部、25B…サンプリングクロック微調整部、26…ホストCPU、27…ホストドライバ、28…相互干渉検出部、29…チューニングパターン受信部、31…データライン、32…コマンドライン、33…クロックライン、41…DLL、42…マルチプレクサ、43…レジスタ、44…フリップフロップ、45…ディレイライン集合、45A…ディレイライン、46…FF集合、46A…フリップフロップ、47…マルチプレクサ、48…レジスタ
【特許請求の範囲】
【請求項1】
ホストデバイスと接続され、前記ホストデバイスと、コマンド信号およびレスポンス信号をコマンドラインを介して送受信し、データ信号およびステータス信号をデータラインを介して送受信し、クロック信号をクロックラインを介して受信するメモリデバイスであって、
不揮発性半導体メモリ部と、
前記コマンド信号、前記レスポンス信号、前記データ信号および前記ステータス信号を、前記クロック信号と同期して送受信するための制御を行うメモリコントローラと、
前記クロック信号をサンプリングクロック信号として位相を調整するために前記ホストデバイスが使用するチューニングパターン信号を送信するための、前記チューニングパターン信号、を記憶するメモリ側パターン信号記憶部と、を有することを特徴とするメモリデバイス。
【請求項2】
前記メモリ側パターン信号記憶部が、第1のチューニングパターン信号と、第2のチューニングパターン信号とを記憶し、
前記メモリコントローラが、前記第1のチューニングパターン信号を前記コマンドラインを介して、前記第2のチューニングパターン信号を前記データラインを介して、互いに重複期間を設けて、前記ホストデバイスに送信することを特徴とする請求項1に記載のメモリデバイス。
【請求項3】
前記第1のチューニングパターン信号と前記第2のチューニングパターン信号とは、前記コマンドラインと前記データラインとの相互干渉を検知するパターン信号であることを特徴とする請求項2に記載のメモリデバイス。
【請求項4】
前記メモリ側パターン信号記憶部が、前記第1のチューニングパターン信号と前記第2のチューニングパターン信号とからなるチューニングパターン信号セットを複数組記憶し、前記ホストデバイスからのコマンドによって前記複数組のうちひとつを選択し送信することを特徴とする請求項3に記載のメモリデバイス。
【請求項5】
前記データ信号、前記レスポンス信号および前記ステータス信号に付加して前記ホストデバイスに送信する、前記ホストデバイスが前記サンプリングクロック信号の位相を微調整するための同期用ヘッダ信号を出力する同期用ヘッダ信号出力部を有することを特徴とする請求項1から請求項4のいずれか1項に記載のメモリデバイス。
【請求項6】
前記同期用ヘッダ信号が「0101」のデータからなる4ビット信号であることを特徴とする請求項5に記載のメモリデバイス。
【請求項7】
前記メモリコントローラは、前記ホストデバイスからの前記コマンド信号としてチューニングコマンドを受信した場合に、前記レスポンス信号および前記データ信号に前記チューニングパターン信号を送信することを特徴とする請求項1から請求項6のいずれか1項に記載のメモリデバイス。
【請求項8】
前記不揮発性半導体メモリ部が、NAND型フラッシュメモリ部であることを特徴とする請求項1から請求項7のいずれか1項に記載のメモリデバイス。
【請求項9】
メモリカードであることを特徴とする請求項1から請求項8のいずれか1項に記載のメモリデバイス。
【請求項10】
不揮発性半導体メモリ部を有するメモリデバイスと接続され、前記メモリデバイスと、コマンド信号およびレスポンス信号をコマンドラインを介して送受信し、データ信号をデータラインを介して送受信し、ステータス信号をデータラインを介して受信し、クロック信号をクロックラインを介して送信する、ホストデバイスであって、
クロック信号を発生するクロックと、
前記コマンド信号および前記データ信号を前記クロック信号と同期して送信し、前記レスポンス信号、前記データ信号およびステータス信号を、前記クロック信号の位相を調整したサンプリングクロック信号と同期して受信するための制御を行うホストコントローラと、
前記サンプリングクロック信号の位相を調整するサンプリングクロック調整部と、
前記サンプリングクロック信号の位相を調整するために前記メモリデバイスから送信されるチューニングパターン信号と同じパターンの前記チューニングパターン信号を予め記憶するホスト側パターン信号記憶部と、を有することを特徴とするホストデバイス。
【請求項11】
前記ホスト側パターン信号記憶部に、第1のチューニングパターン信号と、第2のチューニングパターン信号とを記憶し、
前記メモリデバイスから、前記コマンドラインを介して受信する前記第1のチューニングパターン信号、および、前記第1のチューニングパターン信号と重複期間を有して前記データラインを介して受信する前記第2のチューニングパターン信号を、前記ホスト側パターン信号記憶部に予め記憶する前記第1のチューニングパターン信号および前記第2のチューニングパターン信号と、比較して相違の有無を検知する相互干渉検出部を有し、前記相違が発生しないように前記サンプリングクロックの前記位相を調整するサンプリングクロック調整部を有することを特徴とする請求項10に記載のホストデバイス。
【請求項12】
前記ホスト側パターン信号記憶部が、前記第1のチューニングパターン信号と前記第2のチューニングパターン信号とからなるチューニングパターン信号セットを複数組記憶し、いずれの前記チューニングパターン信号セットを使用するか前記コマンド信号によって前記メモリデバイスに通知することを特徴とする請求項11に記載のホストデバイス。
【請求項13】
前記メモリデバイスから受信した前記データ信号または前記コマンド信号に付加された同期用ヘッダ信号にもとづき、前記サンプリングクロック信号の前記位相を微調整するサンプリングクロック微調整部を有することを特報とする請求項10から請求項13のいずれか1項に記載のホストデバイス。
【請求項14】
前記メモリデバイスの前記不揮発性半導体メモリ部が、NAND型フラッシュメモリ部であることを特徴とする請求項10から請求項13のいずれか1項に記載のホストデバイス。
【請求項15】
前記メモリデバイスがメモリカードであることを特徴とする請求項10から請求項14のいずれか1項に記載のホストデバイス。
【請求項16】
サンプリングクロックの調整方法であって、
前記サンプリングクロック信号が、不揮発性半導体メモリ部を有するメモリデバイスと接続され、前記メモリバイスと、コマンド信号およびレスポンス信号をコマンドラインを介して送受信し、データ信号をデータラインを介して送受信し、ステータス信号をデータラインを介して受信し、クロック信号をクロックラインを介して送信する、ホストデバイスが前記メモリデバイスから前記データ信号を受信するサンプリングポイントを決定するものであり、
前記クロック信号の位相を調整して前記サンプリングクロック信号の位相の初期値を設定するサンプリングクロック信号設定ステップと、
前記メモリデバイスに、前記コマンドラインを介して前記クロック信号から前記サンプリングクロック信号の前記位相を調整するためのチューニング用コマンドを送信するチューニング用コマンド送信ステップと、
前記チューニング用コマンドを受信した前記メモリデバイスから、前記コマンドラインを介して送信されたレスポンス信号として第1のチューニングパターン信号を受信するチューニングパターン信号受信ステップと、
前記受信した前記第1のチューニングパターン信号にもとづき、前記サンプリングクロック信号を調整するサンプリングクロック調整ステップと、を有することを特徴とするサンプリングクロックの調整方法。
【請求項17】
前記チューニングパターン信号受信ステップにおいて、前記メモリデバイスから、前記データ信号を送受信する前記データラインを介して、前記第2のチューニングパターン信号を、前記第1のチューニングパターン信号と重複して受信し、
前記メモリデバイスから受信した前記第1のチューニングパターン信号および前記第2のチューニングパターン信号と、ホスト側パターン信号記憶部に記憶する前記第1のチューニングパターン信号および前記第2のチューニングパターン信号とを比較し、前記コマンドラインと前記データラインとの相互干渉を検知する相互干渉検知ステップと、
前記比較結果が一致するようにサンプリングクロックを調整または微調整するサンプリングクロック調整/微調整ステップと、を有することを特徴とする請求項16に記載のサンプリングクロックの調整方法。
【請求項18】
前記メモリデバイスから、前記データラインを介して同期用ヘッダ信号が付加された前記データ信号、前記データラインを介して同期用ヘッダ信号が付加された前記ステータス信号、または、前記コマンドラインを介して前記同期用ヘッダ信号が付加されたレスポンス信号を受信する同期用ヘッダ信号受信ステップと、
前記同期用ヘッダ信号に基づき、前記データ信号、ステータス信号およびレスポンス信号を受信するサンプリングポイントを微調整するサンプリングクロック微調整ステップを有することを特徴とする請求項16または請求項17に記載のサンプリングクロックの調整方法。
【請求項19】
前記メモリデバイスの前記不揮発性半導体メモリ部が、NAND型フラッシュメモリ部であることを特徴とする請求項16から請求項18のいずれか1項に記載のサンプリングクロックの調整方法。
【請求項20】
前記メモリデバイスがメモリカードであることを特徴とする請求項16から請求項19のいずれか1項に記載のサンプリングクロックの調整方法。
【請求項1】
ホストデバイスと接続され、前記ホストデバイスと、コマンド信号およびレスポンス信号をコマンドラインを介して送受信し、データ信号およびステータス信号をデータラインを介して送受信し、クロック信号をクロックラインを介して受信するメモリデバイスであって、
不揮発性半導体メモリ部と、
前記コマンド信号、前記レスポンス信号、前記データ信号および前記ステータス信号を、前記クロック信号と同期して送受信するための制御を行うメモリコントローラと、
前記クロック信号をサンプリングクロック信号として位相を調整するために前記ホストデバイスが使用するチューニングパターン信号を送信するための、前記チューニングパターン信号、を記憶するメモリ側パターン信号記憶部と、を有することを特徴とするメモリデバイス。
【請求項2】
前記メモリ側パターン信号記憶部が、第1のチューニングパターン信号と、第2のチューニングパターン信号とを記憶し、
前記メモリコントローラが、前記第1のチューニングパターン信号を前記コマンドラインを介して、前記第2のチューニングパターン信号を前記データラインを介して、互いに重複期間を設けて、前記ホストデバイスに送信することを特徴とする請求項1に記載のメモリデバイス。
【請求項3】
前記第1のチューニングパターン信号と前記第2のチューニングパターン信号とは、前記コマンドラインと前記データラインとの相互干渉を検知するパターン信号であることを特徴とする請求項2に記載のメモリデバイス。
【請求項4】
前記メモリ側パターン信号記憶部が、前記第1のチューニングパターン信号と前記第2のチューニングパターン信号とからなるチューニングパターン信号セットを複数組記憶し、前記ホストデバイスからのコマンドによって前記複数組のうちひとつを選択し送信することを特徴とする請求項3に記載のメモリデバイス。
【請求項5】
前記データ信号、前記レスポンス信号および前記ステータス信号に付加して前記ホストデバイスに送信する、前記ホストデバイスが前記サンプリングクロック信号の位相を微調整するための同期用ヘッダ信号を出力する同期用ヘッダ信号出力部を有することを特徴とする請求項1から請求項4のいずれか1項に記載のメモリデバイス。
【請求項6】
前記同期用ヘッダ信号が「0101」のデータからなる4ビット信号であることを特徴とする請求項5に記載のメモリデバイス。
【請求項7】
前記メモリコントローラは、前記ホストデバイスからの前記コマンド信号としてチューニングコマンドを受信した場合に、前記レスポンス信号および前記データ信号に前記チューニングパターン信号を送信することを特徴とする請求項1から請求項6のいずれか1項に記載のメモリデバイス。
【請求項8】
前記不揮発性半導体メモリ部が、NAND型フラッシュメモリ部であることを特徴とする請求項1から請求項7のいずれか1項に記載のメモリデバイス。
【請求項9】
メモリカードであることを特徴とする請求項1から請求項8のいずれか1項に記載のメモリデバイス。
【請求項10】
不揮発性半導体メモリ部を有するメモリデバイスと接続され、前記メモリデバイスと、コマンド信号およびレスポンス信号をコマンドラインを介して送受信し、データ信号をデータラインを介して送受信し、ステータス信号をデータラインを介して受信し、クロック信号をクロックラインを介して送信する、ホストデバイスであって、
クロック信号を発生するクロックと、
前記コマンド信号および前記データ信号を前記クロック信号と同期して送信し、前記レスポンス信号、前記データ信号およびステータス信号を、前記クロック信号の位相を調整したサンプリングクロック信号と同期して受信するための制御を行うホストコントローラと、
前記サンプリングクロック信号の位相を調整するサンプリングクロック調整部と、
前記サンプリングクロック信号の位相を調整するために前記メモリデバイスから送信されるチューニングパターン信号と同じパターンの前記チューニングパターン信号を予め記憶するホスト側パターン信号記憶部と、を有することを特徴とするホストデバイス。
【請求項11】
前記ホスト側パターン信号記憶部に、第1のチューニングパターン信号と、第2のチューニングパターン信号とを記憶し、
前記メモリデバイスから、前記コマンドラインを介して受信する前記第1のチューニングパターン信号、および、前記第1のチューニングパターン信号と重複期間を有して前記データラインを介して受信する前記第2のチューニングパターン信号を、前記ホスト側パターン信号記憶部に予め記憶する前記第1のチューニングパターン信号および前記第2のチューニングパターン信号と、比較して相違の有無を検知する相互干渉検出部を有し、前記相違が発生しないように前記サンプリングクロックの前記位相を調整するサンプリングクロック調整部を有することを特徴とする請求項10に記載のホストデバイス。
【請求項12】
前記ホスト側パターン信号記憶部が、前記第1のチューニングパターン信号と前記第2のチューニングパターン信号とからなるチューニングパターン信号セットを複数組記憶し、いずれの前記チューニングパターン信号セットを使用するか前記コマンド信号によって前記メモリデバイスに通知することを特徴とする請求項11に記載のホストデバイス。
【請求項13】
前記メモリデバイスから受信した前記データ信号または前記コマンド信号に付加された同期用ヘッダ信号にもとづき、前記サンプリングクロック信号の前記位相を微調整するサンプリングクロック微調整部を有することを特報とする請求項10から請求項13のいずれか1項に記載のホストデバイス。
【請求項14】
前記メモリデバイスの前記不揮発性半導体メモリ部が、NAND型フラッシュメモリ部であることを特徴とする請求項10から請求項13のいずれか1項に記載のホストデバイス。
【請求項15】
前記メモリデバイスがメモリカードであることを特徴とする請求項10から請求項14のいずれか1項に記載のホストデバイス。
【請求項16】
サンプリングクロックの調整方法であって、
前記サンプリングクロック信号が、不揮発性半導体メモリ部を有するメモリデバイスと接続され、前記メモリバイスと、コマンド信号およびレスポンス信号をコマンドラインを介して送受信し、データ信号をデータラインを介して送受信し、ステータス信号をデータラインを介して受信し、クロック信号をクロックラインを介して送信する、ホストデバイスが前記メモリデバイスから前記データ信号を受信するサンプリングポイントを決定するものであり、
前記クロック信号の位相を調整して前記サンプリングクロック信号の位相の初期値を設定するサンプリングクロック信号設定ステップと、
前記メモリデバイスに、前記コマンドラインを介して前記クロック信号から前記サンプリングクロック信号の前記位相を調整するためのチューニング用コマンドを送信するチューニング用コマンド送信ステップと、
前記チューニング用コマンドを受信した前記メモリデバイスから、前記コマンドラインを介して送信されたレスポンス信号として第1のチューニングパターン信号を受信するチューニングパターン信号受信ステップと、
前記受信した前記第1のチューニングパターン信号にもとづき、前記サンプリングクロック信号を調整するサンプリングクロック調整ステップと、を有することを特徴とするサンプリングクロックの調整方法。
【請求項17】
前記チューニングパターン信号受信ステップにおいて、前記メモリデバイスから、前記データ信号を送受信する前記データラインを介して、前記第2のチューニングパターン信号を、前記第1のチューニングパターン信号と重複して受信し、
前記メモリデバイスから受信した前記第1のチューニングパターン信号および前記第2のチューニングパターン信号と、ホスト側パターン信号記憶部に記憶する前記第1のチューニングパターン信号および前記第2のチューニングパターン信号とを比較し、前記コマンドラインと前記データラインとの相互干渉を検知する相互干渉検知ステップと、
前記比較結果が一致するようにサンプリングクロックを調整または微調整するサンプリングクロック調整/微調整ステップと、を有することを特徴とする請求項16に記載のサンプリングクロックの調整方法。
【請求項18】
前記メモリデバイスから、前記データラインを介して同期用ヘッダ信号が付加された前記データ信号、前記データラインを介して同期用ヘッダ信号が付加された前記ステータス信号、または、前記コマンドラインを介して前記同期用ヘッダ信号が付加されたレスポンス信号を受信する同期用ヘッダ信号受信ステップと、
前記同期用ヘッダ信号に基づき、前記データ信号、ステータス信号およびレスポンス信号を受信するサンプリングポイントを微調整するサンプリングクロック微調整ステップを有することを特徴とする請求項16または請求項17に記載のサンプリングクロックの調整方法。
【請求項19】
前記メモリデバイスの前記不揮発性半導体メモリ部が、NAND型フラッシュメモリ部であることを特徴とする請求項16から請求項18のいずれか1項に記載のサンプリングクロックの調整方法。
【請求項20】
前記メモリデバイスがメモリカードであることを特徴とする請求項16から請求項19のいずれか1項に記載のサンプリングクロックの調整方法。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【公開番号】特開2010−157058(P2010−157058A)
【公開日】平成22年7月15日(2010.7.15)
【国際特許分類】
【出願番号】特願2008−334316(P2008−334316)
【出願日】平成20年12月26日(2008.12.26)
【出願人】(000003078)株式会社東芝 (54,554)
【Fターム(参考)】
【公開日】平成22年7月15日(2010.7.15)
【国際特許分類】
【出願日】平成20年12月26日(2008.12.26)
【出願人】(000003078)株式会社東芝 (54,554)
【Fターム(参考)】
[ Back to top ]