(57)【要約】【課題】本発明は、遅延回路が不要であり、高速転送に好適なＤＤＲＳＤＲＡＭおよびこのようなＤＤＲＳＤＲＡＭを用いたデータ記憶システムを提供する。【解決手段】本発明のＤＤＲＳＤＲＡＭ１は、データ信号に対してストローブ信号の位相を所定の角度αだけずらす位相調整回路３ａを備え、データが読み出される場合に、位相調整回路３ａによってデータ信号に対して所定の角度αだけストローブ信号の位相をずらして、データ信号およびストローブ信号を出力する。【選択図】図１
2008192201.tif 000002
【特許請求の範囲】
【請求項１】
データ信号に対してストローブ信号の位相を所定の角度だけずらす位相調整回路を備え、
データが読み出される場合に、前記位相調整回路によってデータ信号に対して前記所定の角度だけストローブ信号の位相をずらして、データ信号およびストローブ信号を出力すること
を特徴とするＤＤＲＳＤＲＡＭ。
【請求項２】
前記位相調整回路は、前記所定の角度を探索する探索回路を備えること
を特徴とする請求項１に記載のＤＤＲＳＤＲＡＭ。
【請求項３】
前記探索回路は、
前記所定の角度を探索するために使用されるテストパターンのデータを記憶するテストパターンデータ記憶回路と、
前記テストパターンのデータのデータ信号とストローブ信号との位相を複数ずらして複数組のデータ信号およびストローブ信号を順次に出力するテストパターンデータ信号出力回路と、
順次に入力されたデータ信号をストローブ信号でラッチした結果の各データと、前記テストパターンデータ記憶回路に記憶されているデータとを比較し、比較結果に基づいて前記所定の角度を判定する判定回路とを備えること
を特徴とする請求項２に記載のＤＤＲＳＤＲＡＭ。
【請求項４】
前記所定の角度は、設計により予め設定されていること
を特徴とする請求項１に記載のＤＤＲＳＤＲＡＭ。
【請求項５】
動作クロックを生成するクロック発生回路が外部に設けられていること
を特徴とする請求項１ないし請求項４のいずれか１項に記載のＤＤＲＳＤＲＡＭ。
【請求項６】
１または複数のＤＤＲＳＤＲＡＭと、前記ＤＤＲＳＤＲＡＭに対してデータを読み書きするデータ制御回路とを備えたデータ記憶システムにおいて、
前記ＤＤＲＳＤＲＡＭは、請求項１ないし請求項５のいずれか１項に記載のＤＤＲＳＤＲＡＭであること
を特徴とするデータ記憶システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データが読み出される場合に、ストローブ信号に対してデータ信号の位相をずらしてストローブ信号およびデータ信号を出力するＤＤＲＳＤＲＡＭに関する。そして、このＤＤＲＳＤＲＡＭを用いたデータを記憶するデータ記憶システムに関する。
【背景技術】
【０００２】
図７は、背景技術に係るＤＤＲＳＤＲＡＭを用いたデータ記憶システムの構成を示すブロック図である。図８は、ＤＤＲＳＤＲＡＭおよびデータ制御回路の各構成を示す図である。図９は、データ記憶システムのタイムチャートを示す図である。図９（Ａ）は、データ制御回路のＤＤＲＳＤＲＡＭへのライト（ＷＲＩＴＥ）動作の場合を示し、図９（Ｂ）は、データ制御回路のＤＤＲＳＤＲＡＭからのリード（ＲＥＡＤ）動作の場合を示す。
【０００３】
記憶素子の１つとして、ダブルデータレート（ＤＤＲ）モードという高速なデータ転送機能を持ったＤＤＲＳＤＲＡＭ（Double Data Rate Synchronous Dynamic Random Access Memory）がある。このＤＤＲＳＤＲＡＭを用いたデータ記憶システム１００は、図７に示すように、２値のデータを記憶する複数のＤＤＲＳＤＲＡＭ１０１（１０１−１〜１０１−Ｘ）と、ＤＤＲＳＤＲＡＭ１０１にデータを書き込むと共にＤＤＲＳＤＡＭ１０１からデータを読み出すデータ制御回路１０２とを備えて構成される。各ＤＤＲＳＤＲＡＭ１０１−１〜１０１−Ｘは、ストローブ信号を伝送する複数のストローブラインＤＱＳ（ＤＱＳ−１〜ＤＱＳ−Ｘ）およびクロック信号を伝送する複数のクロックラインＣＬＫ（ＣＬＫ−１〜ＣＬＫ−Ｘ）でデータ制御回路１０２とそれぞれ接続されると共に、データ信号を伝送するＮビットのデータバスＤＱでデータ制御回路１０２と接続される。なお、図８には、各ＤＤＲＳＤＲＡＭ１０１は、同様の構成で、同様の動作でデータ制御回路１０２からデータが読み書きされるので、１つのＤＤＲＳＤＲＡＭ１０１が示されている。また、総称する場合には添え字を省略した参照符号で示し、個別の構成を指す場合には添え字を付した参照符号で示す。
【０００４】
ＤＤＲＳＤＲＡＭ１０１は、データ転送回路１１０とデータを記憶する図略の複数のメモリセルとを備えて構成される。このＤＤＲＳＤＲＡＭ１０１のデータ転送回路１１０は、図８に示すように、クロック調整回路１１１と、ストローブ信号を増幅してストローブラインＤＱＳへ出力する増幅器１１２と、ＤＤＲＳＤＲＡＭ１０１の前記メモリセルから入力ラインＤｉｎ（Ｄｉｎ１，Ｄｉｎ２）を介して入力されたデータをラッチする出力用フリップフロップ（以下、「出力用ＦＦ」と略記する。）１１３（１１３ａ、１１３ｂ）と、出力用ＦＦ１１３の出力を多重するマルチプレクサ１１４と、マルチプレクサ１１４の出力を増幅してデータラインＤＱへ出力する増幅器１１５と、データ制御回路１０２からデータラインＤＱを介して転送されたデータ信号をラッチして出力ラインＤｏｕｔ（Ｄｏｕｔ１，Ｄｏｕｔ２）を介して前記メモリセルへ出力する入力用フリップフロップ（以下、「入力用ＦＦ」と略記する。）１１６（１１６ａ、１１６ｂ）とを備えて構成される。図８では、１ビット分の出力用ＦＦ１１３および入力用ＦＦ１１６が図示され、他は、同様の構成であるので省略されている。
【０００５】
クロック調整回路１１１は、例えばＰＬＬ等を備えて構成され、出力用ＦＦ１１３およびマルチプレクサ１１４の動作クロック信号Ｃｌｋを生成する回路である。この生成された動作クロックＣｌｋは、動作クロックとして出力用ＦＦ１１３およびマルチプレクサ１１４へ出力されると共に、増幅器１１２で増幅されストローブ信号としてストローブラインＤＱＳへ出力される。出力用ＦＦ１１３ａには、動作クロック信号Ｃｌｋがそのまま入力され、出力用ＦＦ１１３ｂには、動作クロック信号Ｃｌｋが反転して入力される。データ制御回路１０２からストローブラインＤＱＳを介して入力されたストローブ信号は、入力用ＦＦ１１６へ入力される。入力用ＦＦ１１６ａには、ストローブ信号がそのまま入力され、入力用ＦＦ１１６ｂには、ストローブ信号が反転して入力される。クロック調整回路１１１は、さらに、ＤＤＲＳＤＲＡＭ１０１の端子に入力されたストローブ信号やデータ信号が入力用ＦＦ１１６へ到達する伝播時間を要するため、クロック調整回路１１１は、端子に入力されたストローブ信号やデータ信号が入力用ＦＦ１１６へ到達するタイミングで入力用ＦＦ１１６が動作するように、データ制御回路１０２からクロックラインＣＬＫを介して入力されたクロックを調整して入力用ＦＦ１１６へ動作クロックを出力している。
【０００６】
そして、データ制御回路１０２は、クロック調整回路１２１と、ストローブ信号を増幅してストローブラインＤＱＳへ出力する増幅器１２２と、ＤＤＲＳＤＡＭ１０１からストローブラインＤＱＳを介して入力されたストローブ信号の位相を９０度ずらす遅延回路１２３と、図略の回路から入力ラインＤｉｎ（Ｄｉｎ１，Ｄｉｎ２）を介して入力された転送すべきデータをラッチする出力用ＦＦ１２４（１２４ａ、１２４ｂ）と、出力用ＦＦ１２４の出力を多重するマルチプレクサ１２５と、マルチプレクサ１２５の出力を増幅してデータラインＤＱへ出力する増幅器１２６と、ＤＤＲＳＤＲＡＭ１０１からデータラインＤＱを介して転送されたデータ信号をラッチして出力ラインＤｏｕｔ（Ｄｏｕｔ１、Ｄｏｕｔ２）を介して前記回路へ出力する入力用ＦＦ１２７（１２７ａ、１２７ｂ）とを備えて構成される。図８では、１ビット分の出力用ＦＦ１２４および入力用ＦＦ１２７が図示され、他は、同様の構成であるので省略されている。
【０００７】
クロック調整回路１２１は、例えばＰＬＬ等を備えて構成され、出力用ＦＦ１２４およびマルチプレクサ１２５の動作クロック信号Ｃｌｋ０を生成すると共にこの動作クロック信号Ｃｌｋ０に対して位相が９０度ずれたクロック信号Ｃｌｋ９０を生成する回路である。この生成された動作クロック信号Ｃｌｋ０は、動作クロックとして出力用ＦＦ１２４およびマルチプレクサへ出力されると共にクロックラインＣＬＫへ出力される。出力用ＦＦ１２４ａには、動作クロック信号Ｃｌｋ０がそのまま入力され、出力用ＦＦ１２４ｂには、動作クロック信号Ｃｌｋ０が反転して入力される。そして、この生成されたクロック信号Ｃｌｋ９０は、増幅器１２２で増幅され、ストローブ信号としてストローブラインＤＱＳへ出力される。ＤＤＲＳＤＲＡＭ１０１からストローブラインＤＱＳを介して入力されたストローブ信号は、遅延回路１２３で位相が９０度遅れて入力用ＦＦ１２７へ入力される。入力用ＦＦ１２７ａには、ストローブ信号がそのまま入力され、入力用ＦＦ１２７ｂには、ストローブ信号が反転して入力される。
【０００８】
このような構成のデータ記憶システム１００では、データ制御回路１０２がマスタ（Ｍａｓｔｅｒ）として機能し、ＤＤＲＳＤＲＡＭ１０１がスレーブ（Ｓｌａｖｅ）と機能して、データ制御回路１０２の制御の下にＤＤＲＳＤＲＡＭ１０１に対してデータが読み書きされている。
【０００９】
すなわち、データ制御回路１０２がＤＤＲＳＤＲＡＭ１０１へデータを書き込むライト動作（ＷＲＩＴＥ動作）では、まず、データ制御回路１０２のクロック調整回路１２１が動作クロック信号Ｃｌｋ０およびこの動作クロック信号Ｃｌｋ０に対し位相が９０度ずれた（遅れた）クロック信号Ｃｌｋ９０を生成し、動作クロック信号Ｃｌｋ０が入力されることによって出力用ＦＦ１２４が前記回路から入力ラインＤｉｎを介して入力されたデータをラッチして、マルチプレクサ１２５および増幅器１２６を介してデータ信号がデータラインＤＱへ出力されると共に、クロック信号Ｃｌｋ９０が増幅器１２２を介してストローブラインＤＱＳへ出力される。このため、図９（Ａ）に示すように、ＤＤＲＳＤＲＡＭ１０１では、データラインＤＱを介してＤＤＲＳＤＲＡＭ１０１に入力されたデータ信号は、入力用ＦＦ１１６において、ストローブラインＤＱＳを介してこのデータ信号に対して位相の９０度ずれた（遅れた）ストローブ信号の立ち上がりエッジおよび立ち下がりエッジによってラッチされ、データ信号の０か１かが判断され、そして、出力ラインＤｏｕｔを介して前記メモリセルにデータが書き込まれる。
【００１０】
一方、データ制御回路１０２がＤＤＲＳＤＲＡＭ１０１からデータを読み込むリード動作（ＲＥＡＤ動作）では、まず、ＤＤＲＳＤＲＡＭ１０１のクロック調整回路１１１が動作クロック信号Ｃｌｋを生成し、この動作クロック信号Ｃｌｋが入力されることによって出力用ＦＦ１１３が前記メモリセルから入力ラインＤｉｎを介して入力されたデータをラッチして、マルチプレクサ１１４および増幅器１１５を介してデータ信号がデータラインＤＱへ出力されると共に、動作クロック信号Ｃｌｋが増幅器１１２を介してストローブラインＤＱＳへ出力される。このため、図９（Ｂ）に示すように、データ制御回路１０２では、データラインＤＱを介してデータ制御回路１０２に入力されたデータ信号と、ストローブラインＤＱＳを介してデータ制御回路１０２に入力されたストローブ信号とは、同位相となる。そこで、この入力されたストローブ信号は、遅延回路１２３で位相が９０度遅延される。このため、データ制御回路１０２に入力されたデータ信号は、入力用ＦＦ１２７において、この位相が９０度遅延されたストローブ信号の立ち上がりエッジおよび立ち下がりエッジによってラッチ可能となり、データ信号の０か１かが判断され、そして、出力ラインＤｏｕｔを介して前記回路へデータが出力される。
【００１１】
データ記憶システム１００では、このようにデータ転送が行われて、ＤＤＲＳＤＲＡＭ１０１におけるデータの書き込みおよび読み出しが実行されている。
【００１２】
一方、データ転送に関連する背景技術としては、例えば、特許文献１がある。この特許文献１には、パーソナルコンピュータにおけるホストプロセッサと、ハードディスクドライブやＣＤ−ＲＯＭなどの記憶装置とを接続するためのインターフェースとして使用されるデータ転送回路が開示されている。この特許文献１に記載のデータ転送回路は、送信機器から転送されるデータとストローブとを受け取るデータ転送回路であって、入力データと入力ストローブとの位相を複数ずらして複数組のデータとストローブとを出力するためのＣＲＣ演算用位相制御回路と、前記ＣＲＣ演算用位相制御回路から出力されたデータとストローブとの各組をもとにＣＲＣコードをそれぞれ演算するための複数の演算回路を有するＣＲＣ演算部と、データ転送終了後に前記送信機器から転送されるＣＲＣコードを、前記送信機器から転送されるＣＲＣ用ストローブに応答してラッチするためのＣＲＣラッチ回路と、前記ＣＲＣ演算部の複数の出力のうちのいずれかが前記ＣＲＣラッチ回路の出力と一致しているかを判定するように、前記ＣＲＣ演算部の複数の出力と前記ＣＲＣラッチ回路の出力とをそれぞれ比較するためのＣＲＣ比較回路と、前記ＣＲＣ演算用位相制御回路からのデータとストローブとの各組の出力のうち前記ＣＲＣ比較回路の判断結果に対応する組の出力に基づいて受信データを確定するためのデータ確定部とを備えている。このような構成によれば、ＣＲＣエラーの頻発を防ぐと共に、転送レートの低下を防止し、かつデータの高信頼性を確保することができる。
【特許文献１】特開２００４−２１３４３８号公報
【発明の開示】
【発明が解決しようとする課題】
【００１３】
ところで、ＤＤＲＳＤＲＡＭ１０１を用いたデータ記憶システム１００では、ストローブ信号の立ち上がりエッジおよび立ち下がりエッジでデータ信号をラッチする一方で、ＤＤＲＳＤＲＡＭ１０１からデータ制御回路１０２には、データ信号とストローブ信号が同位相で入力されるので、データ制御回路１０２は、このストローブ信号の位相をデータ信号に対して９０度遅らせる遅延回路１２３が必要となる。
【００１４】
そして、遅延回路１２３は、その遅延量（遅延時間）が温度の上昇に従って増大するなどの温度依存性を有している。このため、ストローブ信号が遅延回路１２３で遅延される最大遅延時間および最小遅延時間量を考慮する必要があり、データのセットアップタイム（ｓｅｔｕｐ  ｔｉｍｅ）・ホールドタイム(ｈｏｌｄ  ｔｉｍｅ)データ、クロックとデータのスキュー、クロックのジッタなどを差し引いた、データ信号が正しくラッチされる時間であるデータのウィンドウ（Ｗｉｎｄｏｗ）が短くなり、高速転送の妨げになっていた。
【００１５】
一方、特許文献１に開示のデータ転送回路は、パーソナルコンピュータにおけるホストプロセッサと、ハードディスクドライブやＣＤ−ＲＯＭなどの記憶装置とを接続するインターフェース用の回路であり、ＤＤＲＳＤＲＡＭは、想定されていない。そして、特許文献１に開示のデータ転送回路では、位相調整にＣＲＣが利用されているため、ＣＲＣ演算回路やＣＲＣラッチ回路が必要である。
【００１６】
本発明は、上述の事情に鑑みて為された発明であり、その目的は、遅延回路が不要であり、高速転送に好適なＤＤＲＳＤＲＡＭを提供することである。また、他の目的は、このようなＤＤＲＳＤＲＡＭを用いたデータ記憶システムを提供することである。
【課題を解決するための手段】
【００１７】
本発明者は、種々検討した結果、上記目的は、以下の本発明により達成されることを見出した。即ち、本発明に係る一態様のＤＤＲＳＤＲＡＭは、データ信号に対してストローブ信号の位相を所定の角度だけずらす位相調整回路を備え、データが読み出される場合に、前記位相調整回路によってデータ信号に対して前記所定の角度だけストローブ信号の位相をずらして、データ信号およびストローブ信号を出力することを特徴とする。
【００１８】
この構成によれば、ＤＤＲＳＤＲＡＭが、データが読み出される場合に、位相調整回路によってデータ信号に対して所定の角度だけストローブ信号の位相をずらしてデータ信号およびストローブ信号を出力するので、データを読み出すデータ制御回路には、データ信号に対してストローブ信号の位相を９０度遅らせる遅延回路が必要とされず、その温度依存性が抑制可能となる。温度依存性が抑制されるため、データ転送の高速化が可能となる。
【００１９】
そして、上述のＤＤＲＳＤＲＡＭにおいて、前記位相調整回路は、前記所定の角度を探索する探索回路を備えることを特徴とする。このような探索回路は、例えば、前記所定の角度を探索するために使用されるテストパターンのデータを記憶するテストパターンデータ記憶回路と、前記テストパターンのデータのデータ信号とストローブ信号との位相を複数ずらして複数組のデータ信号およびストローブ信号を順次に出力するテストパターンデータ信号出力回路と、順次に入力されたデータ信号をストローブ信号でラッチした結果の各データと、前記テストパターンデータ記憶回路に記憶されているデータとを比較し、比較結果に基づいて前記所定の角度を判定する判定回路とを備えて好適に構成される。
【００２０】
この構成によれば、探索回路が前記所定の角度を探索するので、自動的にＤＤＲＳＤＲＡＭに最適な前記所定の角度が探索される。このため、データ転送が高速化され、また、ＤＤＳＤＲＡＭの製品バラツキ、ＤＤＲＳＤＲＡＭの使用環境および経年変化に対応することができる。
【００２１】
また、上述のＤＤＲＳＤＲＡＭにおいて、前記所定の角度は、設計により予め設定されていることを特徴とする。
【００２２】
この構成によれば、ＤＤＲＳＤＲＡＭに最適な前記所定の角度が設定され、データ転送が高速化される。
【００２３】
さらに、これら上述のＤＤＲＳＤＲＡＭにおいて、動作クロックを生成するクロック発生回路が外部に設けられていることを特徴とする。
【００２４】
この構成によれば、クロック発生回路を内部に設ける必要がない。
【００２５】
そして、本発明に係る他の一態様では、１または複数のＤＤＲＳＤＲＡＭと、前記ＤＤＲＳＤＲＡＭに対してデータを読み書きするデータ制御回路とを備えたデータ記憶システムにおいて、前記ＤＤＲＳＤＲＡＭは、上述のいずれかに記載のＤＤＲＳＤＲＡＭであることを特徴とする。
【００２６】
この構成によれば、温度依存性が抑制され、データ転送が高速化されたデータ記憶システムが提供される。
【発明の効果】
【００２７】
本発明のＤＤＲＳＤＲＡＭによれば、データを読み出すデータ制御回路には、データ信号に対してストローブ信号の位相を９０度遅らせる遅延回路が必要とされず、その温度依存性が抑制可能となり、その結果、データ転送の高速化が可能となる。そして、本発明のデータ記憶システムによれば、温度依存性が抑制され、データ転送が高速化される。
【発明を実施するための最良の形態】
【００２８】
以下、本発明に係る実施形態を図面に基づいて説明する。なお、各図において同一の符号を付した構成は、同一の構成であることを示し、その説明を省略する。
【００２９】
図１は、実施形態におけるデータ記憶システムの構成を示すブロック図である。図２は、実施形態におけるデータ転送回路（データ制御回路）の構成を示す図である。
【００３０】
実施形態のデータ記憶システムＳは、１または複数のＤＤＲＳＤＲＡＭ１を記憶素子として用いたデータを記憶する装置であり、図１に示すように、２値のデータを記憶する１または複数のＤＤＲＳＤＲＡＭ１と、ＤＤＲＳＤＲＡＭ１にデータを書き込むと共にＤＤＲＳＤＡＭ１からデータを読み出すデータ制御回路２ｂとを備えて構成される。図１に示す例では、データ記憶システムＳは、複数のＸ個のＤＤＲＳＤＲＡＭ１−１〜１−Ｘを備えている。各ＤＤＲＳＤＲＡＭ１−１〜１−Ｘは、ストローブ信号を伝送する複数（図１の例ではＸ本）のストローブラインＤＱＳ（ＤＱＳ−１〜ＤＱＳ−Ｘ）でデータ制御回路２ｂとそれぞれ接続されると共に、データ信号を伝送するＮビットのデータバスＤＱでデータ制御回路２ｂと接続される。データバスＤＱのビット幅は、例えば８ビット、１６ビットあるいは３２ビットなどの任意のビット幅でよい。
【００３１】
なお、本明細書において、総称する場合には添え字を省略した参照符号で示し、個別の構成を指す場合には添え字を付した参照符号で示す。
【００３２】
ＤＤＲＳＤＲＡＭ１は、いわゆる一般のＤＤＲＳＤＲＡＭとしての機能を有し、データ制御回路２ｂの制御の下に高速にデータの書き込みおよび読み出しを実行するために、さらに、データ制御回路２ｂとの間でデータの転送を実行するデータ転送回路２ａを備えている。データ転送回路２ａは、データ信号に対してストローブ信号の位相を所定の角度αだけずらす位相調整回路３ａを備え、データ制御回路２ｂによってデータが読み出され該データのデータ信号を出力する場合に、位相調整回路３ａによってデータ信号に対してこの所定の角度αだけストローブ信号の位相をずらして、データ信号およびストローブ信号を出力している。データ制御回路２ｂは、データ信号に対してストローブ信号の位相を所定の角度αだけずらす位相調整回路３ｂを備え、データをＤＤＲＳＤＲＡＭ１へ書き込むべく該データのデータ信号を出力する場合に、位相調整回路３ｂによってデータ信号に対してこの所定の角度αだけストローブ信号の位相をずらして、データ信号およびストローブ信号を出力している。
【００３３】
ＤＤＲＳＤＲＡＭ１のデータ転送回路２ａと、データ制御回路２ｂとは、略同様に構成されているため、ＤＤＲＳＤＲＡＭ１のデータ転送回路２ａとデータ制御回路２ｂとを総称する場合には、データ転送回路２と呼称し、また、ＤＤＲＳＤＲＡＭ１のデータ転送回路２ａにおける位相調整回路３ａとデータ制御回路２ｂの位相調整回路３ｂとを総称する場合には、位相調整回路３と呼称することとする。
【００３４】
このようなデータ転送回路２は、図２に示すように、位相調整回路３と、クロック調整回路２１と、ストローブ信号を生成するストローブ用フリップフロップ（以下、「ストローブ用ＦＦ」と略記する。）２２（２２ａ、２２ｂ）と、ストローブ用ＦＦ２２の出力を多重するマルチプレクサ２３と、マルチプレクサ２３の出力を予め設定された所定の増幅率で増幅してストローブラインＤＱＳへ出力する増幅器２４と、位相調整回路３の出力と入力ラインＤｉｎ（Ｄｉｎ１，Ｄｉｎ２）から入力された転送すべきデータとを多重するマルチプレクサ２５（２５ａ、２５ｂ）と、マルチプレクサ２５の出力をラッチする出力用フリップフロップ（以下、「出力用ＦＦ」と略記する。）２６（２６ａ、２６ｂ）と、出力用ＦＦ２６の出力を多重するマルチプレクサ２７と、マルチプレクサ２７の出力を予め設定された所定の増幅率で増幅してデータラインＤＱへ出力する増幅器２８と、データラインＤＱを介して転送されたデータ信号をラッチして出力ラインＤｏｕｔ（Ｄｏｕｔ１、Ｄｏｕｔ２）へ出力すると共に位相調整回路３へ出力する入力用フリップフロップ（以下、「入力用ＦＦ」と略記する。）２９（２９ａ、２９ｂ）とを備えて構成される。マルチプレクサ２５の出力は、後述のテストパターンのデータまたは入力ラインＤｉｎ（Ｄｉｎ１，Ｄｉｎ２）から入力された転送すべきデータである。ストローブ用ＦＦ２２ａの入力端子は、所定の電圧Ｖｄｄでプルアップされ、ストローブ用ＦＦ２２ｂの入力端子は、接地される。図２では、１ビット分の出力用ＦＦ２６および入力用ＦＦ２９が図示され、他は、同様の構成であるので省略されている。
【００３５】
クロック調整回路２１は、例えばＰＬＬ等を備えて構成され、第１クロック信号Ｃｌｋ０および位相調整回路３の制御によって第１クロック信号Ｃｌｋ０に対して位相が調整された第２クロック信号ＣｌｋＸを生成する。クロック調整回路２１は、後述するように、データ転送に際してデータ信号に対するストローブ信号の最適な位相を探索する場合には、位相調整回路３の制御によって、第１クロック信号Ｃｌｋ０に対する第２クロック信号の位相を０度から３６０度までの範囲で所定の角度Δθずつ順次にシフトして第２クロック信号ＣｌｋＸを生成する。そして、クロック調整回路２１は、データ転送の際には、位相調整回路３の制御によって、この探索された最適な位相となるように、第１クロック信号Ｃｌｋ０に対して所定の角度αだけずれた位相の第２クロック信号を生成する。第１クロック信号Ｃｌｋ０は、動作クロックとして出力用ＦＦ２６に入力されると共にマルチプレクサ２７に入力され、出力用ＦＦ２６ａおよびマルチプレクサ２７には、第１クロック信号Ｃｌｋ０がそのまま入力され、出力用ＦＦ２６ｂには、第１クロック信号Ｃｌｋ０が反転して入力される。第２クロック信号ＣｌｋＸは、動作クロックとしてストローブ用ＦＦ２２に入力されると共にマルチプレクサ２３に入力され、ストローブ用ＦＦ２２ａおよびマルチプレクサ２３には、第２クロック信号ＣｌｋＸがそのまま入力され、ストローブ用ＦＦ２２ｂには、第２クロック信号ＣｌｋＸが反転して入力される。
【００３６】
ストローブラインＤＱＳを介して入力されたストローブ信号は、入力用ＦＦ２９および位相調整回路３へ入力される。入力用ＦＦ２９ａおよび位相調整回路３には、ストローブ信号がそのまま入力され、入力用ＦＦ２９ｂには、ストローブ信号が反転して入力される。
【００３７】
位相調整回路３は、例えば、位相シフト値算出回路３１と、テストパターンデータ記憶回路３２と、カウンタ回路３３と、比較回路３４と、レジスタ回路３５とを備えて構成される。
【００３８】
位相シフト値算出回路３１は、第１クロック信号Ｃｌｋ０に対する第２クロック信号ＣｌｋＸの位相差を指示する制御信号をクロック調整回路２１へ出力する回路である。位相シフト値算出回路３１は、データ転送に際してデータ信号に対するストローブ信号の最適な位相を探索する場合には、第２クロック信号ＣｌｋＸの位相が第１クロック信号Ｃｌｋ０に対して所定の角度Δθずつ順次にシフトするように制御信号をクロック調整回路２１へ出力すると共に、マルチプレクサ２５へクロック信号を出力する。そして、位相シフト値算出回路３１は、データ転送の際には、第２クロック信号ＣｌｋＸの位相が第１クロック信号Ｃｌｋ０に対してこの探索された最適な位相となるように制御信号をクロック調整回路２１へ出力する。
【００３９】
例えば、クロック調整回路２１が第１クロック信号Ｃｌｋ０に対して第２クロック信号ＣｌｋＸの位相を３６０／２５６ずつシフトすることができる場合、位相シフト値算出回路３１は、データ転送に際してデータ信号に対するストローブ信号の最適な位相を探索する場合には、制御信号として０から２５５までの正数値を順次に出力する。クロック調整回路２１は、第１クロック信号Ｃｌｋ０に対して位相が（３６０／２５６×（制御信号））だけずれた第２クロック信号ＣｌｋＸを生成する。そして、探索の結果、例えば、６４で最適な位相が得られた場合には、位相シフト値算出回路３１は、データ転送の際にクロック調整回路２１に制御信号としてこの６４を出力する。
【００４０】
テストパターンデータ記憶回路３２は、ストローブ信号の位相をデータ信号に対してずらす所定の角度を探索するために使用されるテストパターンのデータを記憶する回路である。このテストパターンのデータは、後述するように、データ転送に際してデータ信号に対するストローブ信号の最適な位相を探索する場合にデータ信号として出力される。テストパターンデータ記憶回路３２は、テストパターンのデータを比較回路３４およびマルチプレクサ２５へ出力する。テストパターンデータは、任意のビット数でよいが、データ信号がハイレベルの信号（ハイ信号）とローレベルの信号（ロー信号）の２種類があり、ローレベルからハイレベルに達するまでの立ち上がり時間と、ハイレベルからローレベルに達するまでの立ち下がり時間とは、異なるため、本実施形態は、例えば、ハイレベルのビットとローレベルのビットとの２ビットで構成されている。ハイレベルは、１のデータを表し、ローレベルは、０のデータを表す。
【００４１】
カウンタ回路３３は、データ転送に際してデータ信号に対するストローブ信号の最適な位相の探索が終了したか否かを判断するための回路である。カウンタ回路３３には、ストローブラインＤＱＳを介して入力されたストローブ信号が入力され、カウンタ回路３３は、このストローブ信号の立ち上がりエッジをカウント（計数）し、カウント値が（３６０／△θ）×２となった場合に、上記最適な位相の探索が終了したと判断し、その旨を表す信号としてイネーブル（ＥＮＡＢＬＥ）信号を比較回路３４へ出力する。第２クロック信号ＣｌｋＸの位相は、角度△θずつ順次にシフトされるので、３６０／△θは、探索回数（シフト回数）を表し、テストパターンデータがＮビットの場合では、上記最適な位相の探索が終了した場合のカウント値は、（３６０／△θ）×Ｎとなる。本実施形態では、テストパターンデータが２ビットであるため、このカウント値は、上記（３６０／△θ）×２となる。
【００４２】
レジスタ回路３５は、データラインＤＱを介して入力され、入力用ＦＦ２９でラッチされたデータ信号を記憶する回路である。
【００４３】
比較回路３４は、データ転送に際してデータ信号に対するストローブ信号の最適な位相を判定する回路である。比較回路３４は、レジスタ回路３５に記憶されているデータと、テストパターンデータ記憶回路３２に記憶されているテストパターンのデータとを比較し、判定結果を保持する。比較回路３４は、カウンタ回路３３からイネーブル信号が通知されると、この保持している判定結果から最適な位相を判定する。そして、比較回路３４は、最適な位相を位相シフト値算出回路３１へ出力する。
【００４４】
このようなカウンタ回路３３、比較回路３４およびレジスタ回路３５は、順次に入力されたデータ信号をストローブ信号でラッチした結果の各データと、テストパターンデータ記憶回路３２に記憶されているデータとを比較し、比較結果に基づいて所定の角度αを判定する判定回路の一例を構成する。位相シフト値算出回路３１およびクロック調整回路２１は、テストパターンのデータのデータ信号とストローブ信号との位相を複数ずらして複数組のデータ信号およびストローブ信号を順次に出力するテストパターンデータ信号出力回路の一例を構成する。そして、位相シフト値算出回路３１、テストパターンデータ記憶回路３２、カウンタ回路３３、比較回路３４、レジスタ回路３５およびクロック調整回路２１は、データ信号に対してずらすストローブ信号における位相の所定の角度を探索する探索回路の一例を構成する。
【００４５】
このようなデータ転送回路２は、例えばＦＰＧＡ等で構成可能であり、クロック調整回路２１は、例えば３６０／２５６度（＝△θ＝約１．４１度）ずつ位相をずらすことができるように構成可能である。
【００４６】
次に、データ転送に際してデータ信号に対するストローブ信号の最適な位相の探索動作について説明する。
【００４７】
図３は、データ転送に際してデータ信号に対するストローブ信号の最適な位相の探索動作を示すフローチャートである。図４は、データ転送に際してデータ信号に対するストローブ信号の最適な位相の探索動作を説明するためのタイムチャートである。図５は、判定結果を示す図である。
【００４８】
このような構成のデータ記憶システムＳでは、図略の電源スイッチがオンされるなどによってＤＤＲＳＤＲＡＭ１およびデータ制御回路２ｂが起動されると、データ制御回路２ｂがマスタとして機能すると共にＤＤＲＳＤＲＡＭ１のデータ転送回路２ａがスレーブとして機能し、ＤＤＲＳＤＲＡＭ１のデータ転送回路２ａにおけるデータ転送に際してデータ信号に対するストローブ信号の最適な位相の探索動作が開始され、この探索動作が終了すると、ＤＤＲＳＤＲＡＭのデータ転送回路２ａがマスタとして機能すると共にデータ制御回路２ｂがスレーブとして機能し、データ制御回路２ｂにおけるデータ転送に際してデータ信号に対するストローブ信号の最適な位相の探索動作が開始される。こうして、ＤＤＲＳＤＲＡＭ１のデータ転送回路２ａおよびデータ制御回路２ｂにおける、データ転送に際してデータ信号に対するストローブ信号の最適な位相がそれぞれ探索され、データ転送に際してデータ信号に対するストローブ信号の位相が最適化される。この結果、データ転送が高速化される。
【００４９】
ＤＤＲＳＤＲＡＭ１のデータ転送回路２ａにおけるデータ転送に際してデータ信号に対するストローブ信号の最適な位相の探索動作、および、データ制御回路２ｂにおけるデータ転送に際してデータ信号に対するストローブ信号の最適な位相の探索動作は、同様であるので、以下に纏めて説明する。
【００５０】
図３において、ステップ＃Ｓ１で、図略の電源スイッチがオンされるなどによって、マスタ（Ｍａｓｔｅｒ）のユニット（Ｕｎｉｔ）およびスレーブ（Ｓｌａｖｅ）のユニット（Ｕｎｉｔ）が起動される。
【００５１】
ＤＤＲＳＤＲＡＭ１のデータ転送回路２ａにおけるデータ転送に際してデータ信号に対するストローブ信号の最適な位相の探索動作の場合では、マスタのユニットは、データ制御回路２ｂであり、スレーブのユニットは、データ転送回路２ａである。また、データ制御回路２ｂにおけるデータ転送に際してデータ信号に対するストローブ信号の最適な位相の探索動作の場合では、マスタのユニットは、データ転送回路２ａであり、スレーブのユニットは、データ制御回路２ｂである。
【００５２】
次に、ステップ＃Ｓ２で、マスタのユニットからスレーブのユニットへ、テストデータのデータ信号およびデータ信号に対してストローブ信号の位相が第１の角度（１×△θ）だけずれたストローブ信号が出力される。
【００５３】
次に、ステップ＃３で、このテストデータのデータ信号およびストローブ信号は、データラインＤＱおよびストローブラインＤＱＳをそれぞれ伝送し、スレーブのユニットに入力される。そして、スレーブのユニットにおいて、テストデータのデータ信号は、入力用ＦＦ２９でストローブ信号の立ち上がりエッジおよび立ち下がりエッジでラッチされ、レジスタ回路３５へ出力され、記憶される。
【００５４】
次に、ステップ＃Ｓ４で、スレーブのユニットにおいて、テストデータが正しくラッチできたか否かが判定され、判定結果が記録される。より具体的には、比較回路３４は、レジスタ回路３５に記憶されているデータと、テストパターンデータ記憶回路３２に記憶されているテストパターンのデータとを比較し、一致していれば正しくラッチされたと判定され、一致していなければ正しくラッチされなかったと判定し、判定結果を保持する。
【００５５】
次に、ステップ＃Ｓ５で、３６０／△θ回繰り返されたか否かが判断され、３６０／△θ回繰り返されていない場合（Ｎｏ）には、ステップ＃Ｓ６が実行され、３６０／△θ回繰り返されている場合（Ｙｅｓ）には、ステップ＃Ｓ７が実行される。より具体的には、比較回路３４は、カウンタ回路３３からイネーブル信号が入力されていない場合には、３６０／△θ回繰り返されていない場合（Ｎｏ）と判断され、カウンタ回路３３からイネーブル信号が入力されている場合には、３６０／△θ回繰り返されている場合（Ｙｅｓ）と判断される。
【００５６】
ステップ＃Ｓ６では、マスタのユニットの位相調整値が△θだけ追加され、処理がステップ＃Ｓ２へ戻され、ステップ＃Ｓ２が実行される。より具体的には、マスタのユニットの位相シフト値算出回路３１は、データ信号に対してストローブ信号の位相が第２の角度（２×△θ＝（（第１の角度１×△θ）＋△θ））だけずれたストローブ信号が出力されるように、クロック調整回路２１へ制御信号を出力し、ステップ＃Ｓ２が実行される。
【００５７】
こうしてステップ＃Ｓ５で３６０／△θ回繰り返されたと判断されるまで、ステップ＃Ｓ２、ステップ＃３、ステップ＃Ｓ４、ステップ＃Ｓ５およびステップ＃Ｓ６が繰り返される。この結果、マスタのユニットでは、第２クロック信号ＣｌｋＸの位相が第１クロック信号Ｃｌｋ０に対して所定の角度Δθずつ順次にシフトするように制御信号がクロック調整回路２１へ出力され、このため、ストローブ信号は、図４（Ｂ）〜図４（Ｆ）に示すように、その位相がデータ信号に対して所定の角度Δθずつ順次にシフトする。このような位相がデータ信号に対して所定の角度Δθずつ順次にシフトしたストローブ信号によってテストデータのデータ信号が入力用ＦＦ２９でラッチされ、レジスタ回路３５に順次に記憶される。そして、順次にレジスタ回路３５に記憶されたデータと、テストパターンデータ記憶回路３２に記憶されたテストパターンのデータとが順次に比較回路３４で比較される。図４に示す例では、所定の角度が（Ｎ＋３）・△θおよび（Ｎ＋４）・△θ（Ｎはある正数）の場合に、正しくラッチされたと判定され、残余の場合では正しくラッチされなかったと判定され、その判定結果が、例えば図５に示すように、所定の角度（位相シフト値）Ｎ・△θと判定結果が対応付けられて比較回路３４に保持される。図５に示す例では、正しく判定された場合が「○」で示されており、正しく判定されなかった場合が「×」で示されている。
【００５８】
ステップ＃Ｓ７では、スレーブのユニットにおいて、比較回路３４は、保持されている判定結果から最適な位相を選択し、決定する。保持されている判定結果に正しくラッチされた場合が複数ある場合には、例えば、正しくラッチされた複数の場合のから任意に選択される、また例えば正しクラッチされた複数の場合を位相シフト値の順に並べた場合にその中央値が選択される。なお、中央値が２個ある場合には、何れか一方が選択される。
【００５９】
このように動作することによって、データ転送に際してデータ信号に対するストローブ信号の最適な位相が探索される。
【００６０】
そして、データ転送回路２は、データ転送の際には、第２クロック信号ＣｌｋＸの位相が第１クロック信号Ｃｌｋ０に対してこの探索された最適な位相となる制御信号が位相シフト値算出回路３１からクロック調整回路２１へ出力されることによって、データ信号に対して最適な所定の角度αだけストローブ信号の位相をずらして、データ信号およびストローブ信号を出力する。
【００６１】
このようにＤＤＲＳＤＲＡＭ１が、データが読み出される場合に、位相調整回路３ａによってデータ信号に対して所定の角度αだけストローブ信号の位相をずらしてデータ信号およびストローブ信号を出力するので、データを読み出すデータ制御回路２ｂには、背景技術のように、データ信号に対してストローブ信号の位相を９０度遅らせる遅延回路が必要とされず、その温度依存性が抑制可能となる。この温度依存性が抑制されるため、データ転送の高速化が可能となる。
【００６２】
そして、所定の角度αの探索は、自動的に行われ、ＤＤＲＳＤＲＡＭ１に最適な所定の角度αが探索される。このため、データ転送が高速化され、また、ＤＤＳＤＲＡＭ１の製品バラツキ、ＤＤＲＳＤＲＡＭ１の使用環境および経年変化に対応することができる。
【００６３】
なお、上述の実施形態では、ＤＤＲＳＤＲＡＭ１ごとにストローブラインＤＱＳがそれぞれ設けられたが、図６に示すように、単線のストローブラインＤＱＳ’を各ＤＤＲＳＤＲＡＭ１’が用いるように構成されてもよい。このようなデータ記憶システムＳ’は、１または複数のＤＤＲＳＤＲＡＭ１’と、データ制御回路２ｂ’とを備えて構成され、各ＤＤＲＳＤＲＡＭ１’−１〜１’−Ｘは、１本のストローブラインＤＱＳ’でデータ制御回路２ｂ’と接続されると共に、データバスＤＱでデータ制御回路２ｂ’と接続される。ＤＤＲＳＤＲＡＭ１’は、図１に示すＤＤＲＳＤＲＡＭ１と大略同様に構成され、自機を特定し識別するための識別子をさらに記憶し、データ信号を出力する場合にはデータ信号にこの識別子をさらに付加し、データ信号が入力される場合にはデータ信号に付加されている識別子から自機宛のデータ信号であるか否かをさらに判断するように構成される。この識別子は、例えば、データ信号の最初の部分に入れられる。データ制御回路２ｂ’は、図１に示すデータ制御回路２と大略同様に構成され、ＤＤＲＳＤＲＡＭ１’を特定し識別するための識別子をさらに記憶し、データ信号を出力する場合にはデータ信号にデータ信号の出力先におけるＤＤＲＳＤＲＡＭ１’の識別子をさらに付加し、データ信号が入力される場合にはデータ信号に付加されている識別子からデータ信号の出力元におけるＤＤＲＳＤＲＡＭ１’を判断するように構成される。この識別子は、例えば、データ信号の最初の部分に入れられる。
【００６４】
そして、上述の実施形態において、動作クロックを生成するクロック発生回路が外部に設けられ、クロック調整回路２１は、この外部のクロック発生回路からの動作クロックにおける位相をシフトする位相シフト回路を備え、この動作クロックを第１クロック信号Ｃｌｋ０としてそのまま出力すると共に、この動作クロックの位相を位相シフト回路でシフトして第２クロック信号ＣｌｋＸとして出力するように構成されてもよい。このように構成することによってクロック調整回路２１は、内部にクロック発生回路を設ける必要がない。外部のクロック発生回路としては、例えば、マイクロプロセッサの動作クロックを発生するクロック発生回路などを利用することができる。
【００６５】
また、上述の実施形態では、所定の角度αの探索が自動的に行われるようにデータ転送回路２が構成されたが、この所定の角度αは、設計により予め設定されるように構成されてもよい。所定の角度αは、データ信号およびストローブ信号の周波数、クロック調整回路２１から各ＦＦ２２、２６、２９までの配線長、配線幅、配線厚および配線材料、データバスＤＱの配線長、配線幅、配線厚および配線材料、ストローブラインＤＱＳの配線長、配線幅、配線厚および配線材料、ローレベルからハイレベルに達するまでの立ち上がり時間およびハイレベルからローレベルに達するまでの立ち下がり時間、使用温度範囲、各ＦＦ２２、２６、２９の供給電圧範囲（データ制御回路の供給電圧範囲）、第１クロック信号Ｃｌｋ０のジッタ、各ＦＦ２２、２６、２９のセットアップタイム／ホールドタイム、ならびに、各ＦＦ２２、２６、２９から端子ピンまでの配線長、配線幅、配線厚および配線材料などに基づいて設計される。このような構成によってもデータ転送回路２に最適な所定の角度αが設定され、データ転送が高速化される。
【００６６】
本発明を表現するために、上述において図面を参照しながら実施形態を通して本発明を適切且つ十分に説明したが、当業者であれば上述の実施形態を変更及び/又は改良することは容易に為し得ることであると認識すべきである。従って、当業者が実施する変更形態又は改良形態が、請求の範囲に記載された請求項の権利範囲を離脱するレベルのものでない限り、当該変更形態又は当該改良形態は、当該請求項の権利範囲に包括されると解釈される。
【図面の簡単な説明】
【００６７】
【図１】実施形態におけるデータ記憶システムの構成を示すブロック図である。
【図２】実施形態におけるデータ転送回路（データ制御回路）の構成を示す図である。
【図３】データ転送に際してデータ信号に対するストローブ信号の最適な位相の探索動作を示すフローチャートである。
【図４】データ転送に際してデータ信号に対するストローブ信号の最適な位相の探索動作を説明するためのタイムチャートである。
【図５】判定結果を示す図である。
【図６】実施形態におけるデータ記憶システムの他の構成を示すブロック図である。
【図７】背景技術に係るＤＤＲＳＤＲＡＭを用いたデータ記憶システムの構成を示すブロック図である。
【図８】ＤＤＲＳＤＲＡＭおよびデータ制御回路の各構成を示す図である。
【図９】データ記憶システムのタイムチャートを示す図である。
【符号の説明】
【００６８】
Ｓ、Ｓ’  データ記憶システム
１、１’  ＤＤＲＳＤＲＡＭ
２、２ａ、２ａ’  データ転送回路
２ｂ、２ｂ’  データ制御回路
３、３ａ、３ａ’、３ｂ、３ｂ’  位相調整回路
２１、１１１、１２１  クロック調整回路
３１  位相シフト値算出回路
３２  テストパターンデータ記憶回路
３３  カウンタ回路
３４  比較回路
３５  レジスタ回路
【図１】
2008192201.tif 000003
【図２】
2008192201.tif 000004
【図３】
2008192201.tif 000005
【図４】
2008192201.tif 000006
【図５】
2008192201.tif 000007
【図６】
2008192201.tif 000008
【図７】
2008192201.tif 000009
【図８】
2008192201.tif 000010
【図９】
2008192201.tif 000011