(57)【要約】【課題】  メモリ制御装置の高周波数クロックでデータ取込用基準クロックを遅延する。【解決手段】  メモリ制御装置にて、逓倍クロックを生成する逓倍クロック生成手段と、逓倍クロックを分周しシステムクロックを生成するシステムクロック生成手段を有し、システムクロックをクロック同期式メモリへのメモリクロックとして送出し、システムクロックに同期して生成したクロック同期式メモリへのコントロール信号、アドレス信号及び書き込みデータ信号をクロック同期式メモリに送出し、クロック同期式メモリに送出したメモリクロックを取込んでデータ読出し時のデータ取り込み用クロックの基準クロックとし、データ取り込み用基準クロックを逓倍クロックでラッチしデータ取り込み用基準クロックより所定量遅延させたデータ取り込みクロックを生成するデータ取り込みクロック生成手段を有して、データ取り込みクロックでクロック同期式メモリよりデータを取込む。【選択図】図６
2005196479.tif 000002
【特許請求の範囲】
【請求項１】
クロック同期式メモリに対してデータの書き込み、読み出しを制御するメモリ制御装置において、
基準クロックを逓倍して逓倍クロックを生成する逓倍クロック生成手段と、
前記逓倍クロックを分周して前記メモリ制御装置のシステムクロックを生成するシステムクロック生成手段を有し、
前記システムクロックをクロック同期式メモリへのメモリクロックとして送出し、
前記システムクロックに同期して生成したクロック同期式メモリへのコントロール信号、アドレス信号及び書き込みデータ信号をクロック同期式メモリに送出し、
クロック同期式メモリに送出した前記メモリクロックを前記メモリ制御装置に取り込んでデータ読み出し時のデータ取り込み用クロックの基準クロックとし、
前記データ取り込み用基準クロックを前記逓倍クロックでラッチすることにより、前記データ取り込み用基準クロックよりも所定量遅延させたデータ取り込みクロックを生成するデータ取り込みクロック生成手段を有して、
前記生成されたデータ取り込みクロックを用いてクロック同期式メモリよりデータを取り込むことを特徴とするメモリ制御装置。
【請求項２】
前記逓倍クロック生成手段において、基準クロックから逓倍クロックへの逓倍率と、
前記システムクロック生成手段において逓倍クロックからシステムクロックへの分周率との少なくとも一方が外部からプログラマブルに設定可能であることを特徴とする請求項１に記載のメモリ制御装置。
【請求項３】
前記データ取り込みクロック生成手段は、前記逓倍クロックで動作するシフトレジスタを有して、
前記シフトレジスタの段数分遅延させたデータ取り込みクロックを生成することを特徴とする請求項１または請求項２に記載のメモリ制御装置。
【請求項４】
前記データ取り込みクロック生成手段は、前記シフトレジスタにより各段数分遅延させたクロックからひとつのクロックを選択する選択手段を有して、外部よりプログラマブルに選択可能であるようにしたことを特徴とする請求項３に記載のメモリ制御装置。
【請求項５】
前記データ取り込みクロック生成手段は、前記逓倍クロックの立下りエッジを用いてラッチすることを特徴とする請求項１乃至請求項４のうちのいずれか一つに記載のメモリ制御装置。
【請求項６】
前記データ取り込みクロック生成手段は、前記逓倍クロックの立ち上がりまたは立下りエッジのどちらか一方を選択してラッチし、前記選択は外部よりプログラマブルに設定可能であるようにしたことを特徴とする請求項５に記載のメモリ制御装置。
【請求項７】
クロック同期式メモリに対してデータの書き込み、読み出しを制御するメモリ制御装置において、
該メモリ制御装置のシステムクロックをクロック同期式メモリへのメモリクロックとして送出し、
該システムクロックに同期して生成したクロック同期式メモリへのコントロール信号、アドレス信号及び書き込みデータ信号をクロック同期式メモリに送出し、
クロック同期式メモリに送出した前記システムクロックを前記メモリ制御装置に取り込んでデータ読み出し時のデータ取り込み用クロックの基準クロックとし、
前記データ取り込み用基準クロックを用いて逓倍クロックを生成する逓倍クロック生成手段を有し、
該逓倍クロック生成手段により生成した前記逓倍クロックで前記データ取り込み用基準クロックをラッチすることにより、前記データ取り込み用基準クロックよりも所定量遅延させたデータ取り込みクロックを生成するデータ取り込みクロック生成手段を有して、
前記生成されたデータ取り込みクロックを用いてクロック同期式メモリよりデータを取り込むことを特徴とするメモリ制御装置。
【請求項８】
前記逓倍クロック生成手段において、データ取り込み用基準クロックから逓倍クロックへの逓倍率が外部からプログラマブルに設定可能であることを特徴とする請求項７に記載のメモリ制御装置。
【請求項９】
前記データ取り込みクロック生成手段は、前記逓倍クロックで動作するシフトレジスタを有して、
前記シフトレジスタの段数分遅延させたデータ取り込みクロックを生成することを特徴とする請求項７または請求項８に記載のメモリ制御装置。
【請求項１０】
前記データ取り込みクロック生成手段は、前記シフトレジスタにより各段数分遅延させたクロックからひとつのクロックを選択する選択手段を有して、外部よりプログラマブルに選択可能であるようにしたことを特徴とする請求項９に記載のメモリ制御装置。
【請求項１１】
前記データ取り込みクロック生成手段は、前記逓倍クロックの立下りエッジを用いてラッチすることを特徴とする請求項６乃至請求項９のうちのいずれか一つに記載のメモリ制御装置。
【請求項１２】
前記データ取り込みクロック生成手段は、前記逓倍クロックの立ち上がりまたは立下りエッジのどちらか一方を選択してラッチし、前記選択は外部よりプログラマブルに設定可能であるようにしたことを特徴とする請求項１１に記載のメモリ制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、クロック同期式メモリに対してデータの書き込み、読み出しを制御するメモリ制御装置に関する。
【背景技術】
【０００２】
図１に、従来技術におけるメモリ制御装置の実施形態を示す。
【０００３】
メモリ制御装置１は基準クロック１００を入力として受け取る。基準クロック１００は逓倍クロック生成部３に入力され、逓倍クロック生成部３は所定の逓倍率で逓倍された逓倍クロック１０１を生成する。逓倍クロック１０１はシステムクロック生成部４に供給されて所定の分周率で分周されてメモリ制御装置１のシステムクロック１０３となる。なお、この時、前記逓倍回路および分周回路は存在せずとも、所望の周波数のシステムクロックが得られれば何ら問題とならない。システムクロック生成部４は、クロック同期式メモリ２を動作させるためのクロックであるメモリクロック１０２を生成し、クロック同期式メモリ２へ出力する。また、書き込みデータ・制御信号・アドレス出力回路５は、システムクロック１０３に同期してクロック同期式メモリ２に書き込みデータ・制御信号・アドレス信号１０７を出力する。さらにメモリクロック１０２は、メモリ制御装置１の入力として外部より配線され、クロック同期式メモリ２からの入力データ信号１０８を受け取るためのデータ取り込み用基準クロック１０９として用いられる。入力データ信号１０８は入力データレジスタ６に入力され、データ取り込み用基準クロック１０９によってラッチされ、読み出しデータ信号１１０が生成される。
【０００４】
図２に、図１に示したメモリ制御装置１において、データの読み出しにおけるクロック同期式メモリ２からの入力データ信号１０８を受け取る場合のタイミング図を示す。
【０００５】
データの読み出しの場合、メモリクロック１０２の立ち上がり（図２におけるＡ地点）より“ｔＡＣ”遅れて入力データ信号１０８が確定し、メモリ制御装置１に入力される。そして、次のメモリクロックの立ち上がりであるＢ地点から“ｔＯＨ”の間データが保持される。メモリ制御装置１は、入力されたデータ取り込み用基準クロック１０９のＣ地点の立ち上がりで入力データ信号１０８を入力データレジスタ５においてラッチし、読み出しデータ信号１１０を生成する。なお、図２中の斜線部分は不定の状態を示している。
【０００６】
ここで、メモリクロック１０２の１クロック区間の時間を、図２に示すように“ｔＣＬＫ”と表すと、入力データレジスタ６がデータ取り込み用基準クロック１０９のＣ地点の立ち上がりで入力データ信号１０８をラッチする場合、セットアップ時間は“（ｔＣＬＫ−ｔＡＣ）、ホールド時間は“ｔＯＨ”となる。
【０００７】
最近のシステム高速化の潮流において、クロック同期式メモリに対しても高速動作が要求され、クロック同期式メモリのクロック周波数は高くなる傾向にある。
【０００８】
ここで、図２においてクロック同期式メモリに対するメモリクロック１０２の周波数が高くなった場合のタイミング図を図３に示す。
【０００９】
メモリクロック１０２が高周波数になることは、即ち図３における“ｔＣＬＫ”が小さくなくことを意味する。また、同一メモリを使用した場合、“ｔＡＣ”の値はそのメモリ固有で変わらないことから、“（ｔＣＬＫ−ｔＡＣ）”で表される入力データレジスタ６のセットアップ時間は減少し、“（ｔＣＬＫ−ｔＡＣ）”の値が入力データレジスタ６に必要となるセットアップ時間を満たさない場合は、図３に示すように正しく読み出しデータ信号１１０を生成することができない。
【００１０】
また、メモリクロックの周波数が高いクロック同期式メモリは一般的に“ｔＡＣ”の値も小さくなっているが、入力データ信号１０８のプリント基板上での配線遅延や、メモリ制御装置回路内での配線遅延や素子遅延が無視できなくなり、結果としてセットアップ時間を満たせずに読み出しデータ信号１１０を正しく生成できない場合が見られるようになってきた。この時、“ｔＡＣ”の値が小さいクロック同期式メモリ２を使用すればセットアップ時間を広げることは可能であるが、一般に“ｔＡＣ”の値の小さいクロック同期式メモリ２は高価である。
【００１１】
これらの課題に対して図４に示すようにデータ取り込み用基準クロック１０９を遅延回路７にて遅延させ、そのデータ取り込み用基準クロック１０９を遅延させて生成したデータ取り込み用遅延クロック１１１を入力データレジスタ６へ入力し、読み出しデータ信号１１０を生成する技術が考案されている。その場合のタイミング図を図５に示す。
【００１２】
図３においてはデータ取り込み用基準クロック１０９のＣ地点で入力データ信号１０８をラッチしていたが、図４に示した形態のメモリ制御装置１においてはデータ取り込み用基準クロック１０９を遅延回路７によって遅延させたデータ取り込み用遅延クロック１１１のＤ地点において、入力データ信号１０８をラッチする。遅延回路７によってデータ取り込み用基準クロック１０９が、図５に示す“ｔＤＬＹ”遅延するとするならば、データ取り込み用遅延クロック１１１のＤ地点におけるセットアップ時間は“（ｔＣＬＫ−ｔＡＣ＋ｔＤＬＹ）”となり、遅延回路７で付加された遅延時間“ｔＤＬＹ”だけセットアップ時間が増加し、“ｔＤＬＹ”を入力データレジスタ６のセットアップ時間を満たすように決定することで、正しく読み出しデータ信号１１０を生成することができる。
【００１３】
しかしながら、図４における遅延回路７ではインバータやバッファ等の半導体素子を用いてデータ取り込み用基準クロック１０９を遅延させるため、チップ製造時のばらつきや、動作温度、動作電圧等によってその遅延時間が増減してしまう。また、設計時に見積もっていた遅延量よりも実際の遅延量が小さい場合には、“ｔＤＬＹ”が小さくなることから、セットアップ時間の増加量が足りなくなり正しく読み出しデータ信号１１０が生成できない。また、逆に設計時に見積もっていた遅延量よりの実際の遅延量が大きい場合には、“（ｔＯＨ−ｔＤＬＹ）”で表されるＤ地点における入力データレジスタ６のホールド時間が不足してしまい、正しく読み出しデータ信号１１０が生成できない。
【００１４】
ところで、特許文献１は、クロック同期式メモリを動作させるメモリクロックと、メモリアクセスのための制御信号や書き込みデータをクロック同期式メモリに出力する出力クロックと、読み出しデータを取り込むための入力クロックとを、それぞれのセットアップ時間を満たすように遅延させて別々に生成する技術を掲載している。しかし、クロックの遅延は半導体素子であるバッファ等によって行われており、チップ製造時のばらつきや、周囲温度等による特性の変化ともなって遅延量が変動してしまうという問題がある。
【特許文献１】特開２００３−５８４１５公報
【発明の開示】
【発明が解決しようとする課題】
【００１５】
本発明は、上記の問題点に鑑みてなされたものであり、インバータやバッファ等の半導体素子を用いてデータ取り込み用基準クロックを遅延させるのではなく、データ取り込み用基準クロックよりも高周波数のクロックを用いてデータ取り込み用基準クロックを遅延させることを目的とする。
【課題を解決するための手段】
【００１６】
本発明は、上記の目的を達成するためになされたものである。本発明に係る請求項１に記載のメモリ制御装置は、
クロック同期式メモリに対してデータの書き込み、読み出しを制御するメモリ制御装置である。そのメモリ制御装置において、
基準クロックを逓倍して逓倍クロックを生成する逓倍クロック生成手段と、
前記逓倍クロックを分周して前記メモリ制御装置のシステムクロックを生成するシステムクロック生成手段を有し、
前記システムクロックをクロック同期式メモリへのメモリクロックとして送出し、
前記システムクロックに同期して生成したクロック同期式メモリへのコントロール信号、アドレス信号及び書き込みデータ信号をクロック同期式メモリに送出し、
クロック同期式メモリに送出した前記メモリクロックを前記メモリ制御装置に取り込んでデータ読み出し時のデータ取り込み用クロックの基準クロックとし、
前記データ取り込み用基準クロックを前記逓倍クロックでラッチすることにより、前記データ取り込み用基準クロックよりも所定量遅延させたデータ取り込みクロックを生成するデータ取り込みクロック生成手段を有して、
前記生成されたデータ取り込みクロックを用いてクロック同期式メモリよりデータを取りこむことを特徴とする。
【００１７】
本発明に係る請求項２に記載のメモリ制御装置は、
前記逓倍クロック生成手段において、基準クロックから逓倍クロックへの逓倍率と、
前記システムクロック生成手段において逓倍クロックからシステムクロックへの分周率との少なくとも一方が外部からプログラマブルに設定可能であることを特徴とする請求項１に記載のメモリ制御装置である。
【００１８】
本発明に係る請求項３に記載のメモリ制御装置は、
前記データ取り込みクロック生成手段は、前記逓倍クロックで動作するシフトレジスタを有して、
前記シフトレジスタの段数分遅延させたデータ取り込みクロックを生成することを特徴とする請求項１または請求項２に記載のメモリ制御装置である。
【００１９】
本発明に係る請求項４に記載のメモリ制御装置は、
前記データ取り込みクロック生成手段は、前記シフトレジスタにより各段数分遅延させたクロックからひとつのクロックを選択する選択手段を有して、外部よりプログラマブルに選択可能であるようにしたことを特徴とする請求項３に記載のメモリ制御装置である。
【００２０】
本発明に係る請求項５に記載のメモリ制御装置は、
前記データ取り込みクロック生成手段は、前記逓倍クロックの立下りエッジを用いてラッチすることを特徴とする請求項１乃至請求項４のうちのいずれか一つに記載のメモリ制御装置である。
【００２１】
本発明に係る請求項６に記載のメモリ制御装置は、
前記データ取り込みクロック生成手段は、前記逓倍クロックの立ち上がりまたは立下りエッジのどちらか一方を選択してラッチし、前記選択は外部よりプログラマブルに設定可能であるようにしたことを特徴とする請求項５に記載のメモリ制御装置である。
【００２２】
本発明に係る請求項７に記載のメモリ制御装置は、
クロック同期式メモリに対してデータの書き込み、読み出しを制御するメモリ制御装置である。そのメモリ制御装置において、
該メモリ制御装置のシステムクロックをクロック同期式メモリへのメモリクロックとして送出し、
該システムクロックに同期して生成したクロック同期式メモリへのコントロール信号、アドレス信号及び書き込みデータ信号をクロック同期式メモリに送出し、
クロック同期式メモリに送出した前記システムクロックを前記メモリ制御装置に取り込んでデータ読み出し時のデータ取り込み用クロックの基準クロックとし、
前記データ取り込み用基準クロックを用いて逓倍クロックを生成する逓倍クロック生成手段を有し、
該逓倍クロック生成手段により生成した前記逓倍クロックで前記データ取り込み用基準クロックをラッチすることにより、前記データ取り込み用基準クロックよりも所定量遅延させたデータ取り込みクロックを生成するデータ取り込みクロック生成手段を有して、
前記生成されたデータ取り込みクロックを用いてクロック同期式メモリよりデータを取り込むことを特徴とする。
【００２３】
本発明に係る請求項８に記載のメモリ制御装置は、
前記逓倍クロック生成手段において、データ取り込み用基準クロックから逓倍クロックへの逓倍率が外部からプログラマブルに設定可能であることを特徴とする請求項７に記載のメモリ制御装置である。
【００２４】
本発明に係る請求項９に記載のメモリ制御装置は、
前記データ取り込みクロック生成手段は、前記逓倍クロックで動作するシフトレジスタを有して、
前記シフトレジスタの段数分遅延させたデータ取り込みクロックを生成することを特徴とする請求項７または請求項８に記載のメモリ制御装置である。
【００２５】
本発明に係る請求項１０に記載のメモリ制御装置は、
前記データ取り込みクロック生成手段は、前記シフトレジスタにより各段数分遅延させたクロックからひとつのクロックを選択する選択手段を有して、外部よりプログラマブルに選択可能であるようにしたことを特徴とする請求項９に記載のメモリ制御装置である。
【００２６】
本発明に係る請求項１１に記載のメモリ制御装置は、
前記データ取り込みクロック生成手段は、前記逓倍クロックの立下りエッジを用いてラッチすることを特徴とする請求項６乃至請求項９のうちのいずれか一つに記載のメモリ制御装置である。
【００２７】
本発明に係る請求項１２に記載のメモリ制御装置は、
前記データ取り込みクロック生成手段は、前記逓倍クロックの立ち上がりまたは立下りエッジのどちらか一方を選択してラッチし、前記選択は外部よりプログラマブルに設定可能であるようにしたことを特徴とする請求項１１に記載のメモリ制御装置である。
【発明の効果】
【００２８】
請求項１に示す発明においては、データ取り込みクロック生成部を有し、前記データ取り込み生成部は前記データ取り込み用基準クロックを生成する元となる逓倍クロックを使って前記データ取り込み用基準クロックを遅延させて、新たなデータ取り込みクロックを生成することを特徴とする。前記逓倍クロックの１クロック区間の時間は製造時のばらつきや、動作温度、動作電圧等による影響を受けにくい。よって前記逓倍クロックをもとに前記データ取り込み用基準クロックを遅延させることで、製造時のばらつきや、動作温度、動作電圧等による遅延時間増減の影響を極力抑え、意図した遅延量を安定的に付加することができる。また、遅延の付加は前記データ取り込み基準クロックを前記逓倍クロックでラッチすることで行うので、インバータやバッファなどの固定遅延量を付加する技術に対して、本発明ではシステムクロック周波数を変動させても逓倍率に応じて比例して遅延量を付加できるので、周波数を変動させて使用する場合のメモリ制御装置に適している。また、前記データ取り込み用基準クロックは前記逓倍クロックを分周したクロックであるため、位相調整が容易で、必ず安定的にラッチすることが可能となる。
【００２９】
請求項２に示す発明においては、請求項１における基準クロックから逓倍クロックへの逓倍率と、逓倍クロックからシステムクロックへの分周率の少なくとも一方を外部からプログラマブルに設定可能とすることで、前記データ取り込み用基準クロックの周波数は変動させることなく、前記逓倍クロックの周波数を変動させることができる。その結果、前記データ取り込み生成部が前記データ取り込み用基準クロックに付加する遅延量を変動させることができ、クロック同期式メモリを動作させるメモリクロックの周波数によって、前記データ取り込み用基準クロックに付加する遅延量を変動させたい場合や、当該チップのプリント基板上での実装条件によって遅延量を変動させたい場合などに対応することができる。
【００３０】
請求項３に示す発明においては、請求項１において、前記データ取り込みクロック生成部が前記データ取り込み用基準クロックを前記逓倍クロックで遅延させる際に、前記逓倍クロックで動作するシフトレジスタを用いることによって、シフトレジスタの段数分の遅延量を前記データ取り込み用基準クロックに付加することができ、前記逓倍クロックの１クロック区間の時間よりも大きな遅延量を付加することができる。
【００３１】
請求項４に示す発明においては、請求項３におけるシフトレジスタにより各段数分遅延させたクロックからひとつのクロックを選択する選択手段を有して、外部よりプログラマブルに選択可能とすることで、クロック同期式メモリを動作させるメモリクロックの周波数によって、前記データ取り込み用基準クロックに付加する遅延量を変動させたい場合や、当該チップのプリント基板上での実装条件によって遅延量を変動させたい場合などに対応することができる。
【００３２】
請求項５に示す発明においては、請求項１乃至請求項４において前記データ取り込みクロック生成部が前記データ取り込み用基準クロックを前記逓倍クロックでラッチして遅延させる際に、前記逓倍クロックの立下りエッジを用いることによって、立ち上がりエッジを用いる場合よりも小さな遅延量付加が実現でき、前記逓倍クロックの１クロック区間の時間よりも小さな遅延量を付加することができる。
【００３３】
請求項６に示す発明においては、請求項１乃至請求項４において、前記データ取り込みクロック生成部が前記データ取り込み用基準クロックを前記逓倍クロックでラッチして遅延させる際に、前記逓倍クロックの立ち上がりエッジを用いるか立ち下がりエッジを用いるかを外部からプログラマブルに設定可能とすることで、クロック同期式メモリを動作させるメモリクロックの周波数によって、前記データ取り込み用基準クロックに付加する遅延量を変動させたい場合や、当該チップのプリント基板上での実装条件によって遅延量を変動させたい場合などに対応することができる。
【００３４】
請求項７に示す発明においては、前記データ取り込み用基準クロックを逓倍し逓倍クロックを生成する逓倍クロック生成部を有することで、データ取り込み用基準クロックの整数倍の周波数を持った位相の等しいクロックを安定的に生成することができ、結果として前記データ取り込みクロック生成部は必ず安定的に前記データ取り込み用基準クロックを前記逓倍クロックでラッチすることが可能となる。
【００３５】
請求項８に示す発明においては、請求項７における前記データ取り込み用基準クロックから前記逓倍クロックへの逓倍率を外部から設定可能とすることで、前記逓倍クロックの周波数を変動させることができ、その結果、前記データ取り込みクロック生成部が前記データ取り込み用基準クロックに付加する遅延量を変動することができ、クロック同期式メモリを動作させるメモリクロックの周波数によって、前記データ取り込み用基準クロックに付加する遅延量を変動させたい場合や、当該チップのプリント基板上での実装条件によって遅延時間を変動させたい場合などに対応することができる。
【００３６】
請求項９に示す発明においては、請求項７又は請求項８における前記データ取り込みクロック生成部が前記データ取り込み用基準クロックを前記逓倍クロックで遅延させる際に、前記逓倍クロックで動作するシフトレジスタを有することによって、シフトレジスタの段数分の遅延量を前記データ取り込み用基準クロックに付加することができ、前記逓倍クロックの１クロック区間の時間よりも大きな遅延量を付加することができる。
【００３７】
請求項１０に示す発明においては、請求項９におけるシフトレジスタにより各段数分遅延させたクロックからひとつのクロックを選択する選択手段を有して、外部よりプログラマブルに選択可能とすることで、クロック同期式メモリを動作させるメモリクロックの周波数によって、前記データ取り込みクロック生成部が前記データ取り込み用基準クロックに付加する遅延量を変動させたい場合や、当該チップのプリント基板上での実装条件によって遅延量を変動させたい場合などに対応することができる。
【００３８】
請求項１１に示す発明においては、請求項６乃至請求項９において、前記データ取り込みクロック生成部が前記データ取り込み用基準クロックを前記逓倍クロックでラッチして遅延させる際に、前記逓倍クロックの立下りエッジを用いることによって、立ち上がりエッジを用いる場合よりも小さな遅延量付加が実現でき、前記逓倍クロックの１クロック区間の時間よりも小さな遅延量を付加することができる。
【００３９】
請求項１２に示す発明においては、請求項１１において、前記データ取り込みクロック生成部が前記データ取り込み用基準クロックを前記逓倍クロックでラッチして遅延させる際に、前記逓倍クロックの立ち上がりエッジを用いるか立ち下がりエッジを用いるかを外部からプログラマブルに設定可能とすることで、クロック同期式メモリを動作させるメモリクロックの周波数によって、前記データ取り込みクロック生成部が前記データ取り込み用基準クロックに付加する遅延量を変動させたい場合や、当該チップのプリント基板上での実装条件によって遅延量を変動させたい場合などに対応することができる。
【発明を実施するための最良の形態】
【００４０】
以下において、図面を参照しつつ本発明に係る好適な実施の形態を説明する。
【００４１】
≪第１の実施の形態≫
図６は、本発明の第１の実施の形態に係るメモリ制御装置１のブロック図である。図６において、本メモリ制御装置１は、データ取り込みクロック生成部８を有し、逓倍クロック生成部３によって生成された逓倍クロック１０１がデータ取り込みクロック生成部８に入力されている。
【００４２】
データ取り込みクロック生成部８のブロック図を、図７に示す。図７に示すデータ取り込みクロック生成部８では、レジスタ２００にデータ取り込み用基準クロック１０９を入力し、レジスタ２００のクロックに逓倍クロック１０１を用いてデータ取り込み用基準クロック１０９をラッチし、遅延させている。この場合のタイミング図を図８に示す。
【００４３】
図８に示したタイミング図においては一例として、データ取り込み用基準クロック１０９の周波数の６倍の周波数を持ち、データ取り込み用基準クロック１０９と位相が等しい逓倍クロック１０１が、データ取り込みクロック生成部８に入力された場合を示している。図８に示すように、データ取り込み用基準クロック１０９を逓倍クロック１０１の立ち上がりにおいてラッチすることで、逓倍クロック１０１の１クロック区間の時間であるｔＤＬＹと、ラッチする際のデータ伝播遅延量であるｔＲＥＧを合わせた、
ｔＤＬＹ＋ｔＲＥＧ
だけデータ取り込み用基準クロック１０９を遅延させたデータ取り込み用遅延クロック１１１を生成することができる。
【００４４】
図８に示した場合においてデータ取り込み用基準クロック１０９の１クロック区間の時間を“ｔＣＬＫ”とすると、
ｔＤＬＹ＝１／６×ｔＣＬＫ
となる。このようにデータ取り込み用基準クロック１０９のＮ倍（整数）の周波数を持った逓倍クロック１０１をデータ取り込みクロック生成部に入力すると、
ｔＤＬＹ＝１／Ｎ×ｔＣＬＫ
となり、ラッチのデータ伝播遅延量ｔＲＥＧと合わせて、
１／Ｎ×ｔＣＬＫ＋ｔＲＥＧ
の遅延を付加することができる。ここで、Ｎが奇数の場合には生成されるデータ取り込み用遅延クロック１１１はＨ区間とＬ区間のデューティ（ＤＵＴＹ）が１：１とはならないが、入力データレジスタ６はデータ取り込み用遅延クロック１１１の立ち上がりエッジのみを使用するので問題とはならない。また、前記Ｎ倍が示すものとは、図６におけるシステムクロック生成部４が逓倍クロック１０１をシステムクロック１０３に分周する際の分周率である。
【００４５】
この方法によると、逓倍クロック１０１はチップ製造時のばらつきや、動作温度、動作電圧の変動等によってその周波数が変動することはなく、１クロック区間の時間であるｔＤＬＹはほぼ一定となる。したがって、データ取り込みクロック生成部８において、データ取り込み用基準クロック１０９に付加される遅延量“（ｔＤＬＹ＋ｔＲＥＧ）”の中で、チップ製造時のばらつきや、動作温度、動作電圧の変動等の影響を受けるのはｔＲＥＧのみとなる。よって、従来技術に比べてチップ製造時のばらつきや、動作温度、動作電圧の変動等による影響を極力抑えられた遅延量を、データ取り込み用基準クロック１０９に付加することができ、安定的に読み出しデータ信号１１０を生成することができる。
【００４６】
また、従来技術において遅延付加に用いられていたインバータやバッファなどの固定遅延量に対して、データ取り込みクロック生成部８においてデータ取り込み用基準クロック１０９に付加される遅延量は、
１／Ｎ×ｔＣＬＫ＋ｔＲＥＧ
で表されるため、システムクロック周波数を変動させても分周率Ｎに応じてシステムクロックの１クロック区間の時間に対応した遅延量を付加できるので、周波数を変動させて使用する場合のメモリ制御装置に適している。
【００４７】
この遅延量“ｔＤＬＹ”の変動が、本発明の実施の形態において従来技術と比べて少なくなることについて、従来技術と比較して数値を用いて説明する。図４と図６において、一例として、基準クロック１００の周波数が１００ＭＨｚであり、逓倍クロック生成部３は５倍の逓倍率で５００ＭＨｚの逓倍クロック１０１を生成するものとする。また、システムクロック生成部４は１／５の分周率で５００ＭＨｚの逓倍クロック１０１を分周し、１００ＭＨｚのシステムクロック１０３およびメモリクロック１０２を生成するものとする。また、図４の遅延回路７および図６のデータ取り込みクロック生成部８において、チップ製造時のばらつきや、動作温度、動作電圧の変動等を踏まえ、変動が最大になる場合（以下、ＭＡＸケース）を想定して、それぞれのデータ取り込み用基準クロック１０９に３ＮＳの遅延量を付加する必要があるとする。
【００４８】
この３ＮＳの遅延付加実現のために、図４に示した従来技術では、半導体素子であるバッファやインバータ等を用いて遅延回路７を構成している。その一例として図９にバッファを３つ使用した場合を示す。ここで、図９に示した遅延回路７におけるバッファ３００、３０１、３０２は、ＭＡＸケースにおいて１ＮＳの遅延量を持っており、チップ製造時のばらつきや、動作温度、動作電圧の変動等を踏まえ、遅延量が最小になる場合（以下、ＭＩＮケース）を想定した場合には０．３ＮＳの遅延量を持っているものとする。これらのバッファを遅延回路７は３つ有していることで、ＭＡＸケースでの遅延量は、
１×３＝３（ＮＳ）
となり、遅延付加必要量である３ＮＳを満たすことができる。この場合ＭＩＮケースの遅延付加量は、
０．３×３＝０．９（ＮＳ）
となる。
【００４９】
一方、３ＮＳの遅延付加実現のために、図６に示した本発明の形態では、図７に示すように逓倍クロック１０１でデータ取り込み用基準クロック１０９をラッチすることで遅延を付加する。ここで逓倍クロック１０１の周波数が５００ＭＨｚであるのでｔＤＬＹは２ＮＳとなる。また、図７におけるレジスタ２００のデータ伝播遅延ｔＲＥＧが、ＭＡＸケースで１ＮＳ、ＭＩＮケースで０．３ｎｓであるとすると、データ取り込み用基準クロック１０９に付加される遅延量はＭＡＸケースにおいて、
２＋１＝３（ＮＳ）
となり、遅延付加必要量である３ＮＳを満たすことができる。また、逓倍クロック１０１の１クロック区間の時間はＭＡＸケースにおいてもＭＩＮケースにおいても同一であるため、ＭＩＮケースの遅延量は、
２＋０．３＝２．３（ＮＳ）
となり、従来技術ではＭＩＮケースの遅延付加量が０．９（ＮＳ）であったことと比べると、遅延量のＭＡＸケースとＭＩＮケースとの間の変動量を本発明の実施の形態においてはより小さくすることができる。
【００５０】
また、図８における“（ｔＤＬＹ＋ｔＲＥＧ）”よりも少ない遅延量をデータ取り込み用基準クロック１０９に付加する必要がある場合には、ひとつは逓倍クロック１０１の周波数をさらに高くすることが考えられる。つまり、図６における逓倍クロック生成部３の逓倍率を大きくすればよい。しかし、高周波数クロックを安定的に生成するには困難を要することが多い。そこで、逓倍クロック１０１の周波数はそのままで、データ取り込みクロック生成部８において逓倍クロック１０１の立下りエッジでデータ取り込み用基準クロック１０９をラッチすることで、逓倍クロック１０１の立ち上がりエッジを用いた場合よりもさらに少ない遅延量を付加することができる。
【００５１】
データ取り込みクロック生成部８において逓倍クロック１０１の立下りエッジでデータ取り込み用基準クロック１０９をラッチした場合のタイミング図を図１０に示す。図１０では、図８と同様に、逓倍クロック１０１としてデータ取り込み用基準クロック１０９の６倍の周波数を持ち、位相が等しいクロックが入力された例を示している。データ取り込み用基準クロック１０９を逓倍クロック１０１の立下りエッジでラッチすることで、データ取り込み用遅延クロック１１１に付加される遅延量は、
１／２×ｔＤＬＹ＋ｔＲＥＧ
となる。即ち、逓倍クロック１０１の立ち上がりを用いた場合よりもさらに少ない遅延量を付加することができる。
【００５２】
さらに、図８における“（ｔＤＬＹ＋ｔＲＥＧ）”よりも大きい遅延量をデータ取り込み用基準クロック１０９に付加させる必要がある場合には、図１１に示すように逓倍クロック１０１で動作するシフトレジスタを形成すればよい。図１１には、レジスタを３つ用いたシフトレジスタで遅延回路を形成した場合を示している。図１１の場合、逓倍クロック１０１の周波数がデータ取り込み用基準クロック１０９の周波数のＮ（整数）倍であるとすると、データ取り込みクロック生成部８によってデータ取り込み用基準クロックに付加される遅延量は“（３×ｔＤＬＹ＋ｔＲＥＧ）”となる。ここでシフトレジスタを形成するレジスタの数をＭとすると遅延量は、
Ｍ×ｔＤＬＹ＋ｔＲＥＧ
となり、図８における、
ｔＤＬＹ＋ｔＲＥＧ
よりも遅延量を増加させることができる。
【００５３】
一方、データ取り込みクロック生成部８が付加する遅延量を変動させたい場合がある。そのような場合として、メモリクロック１０２の周波数が変動する場合において遅延量を変動させたい場合や、クロック同期式メモリ２の固有の値であるｔＡＣがメーカーによって違うため遅延量を変動させたい場合、もしくは当該チップのボード上での実装条件によって遅延量を変動させたい場合などがあげられる。
【００５４】
そういった場合においては、図６における逓倍クロック生成部３が基準クロック１００を逓倍し逓倍クロック１０１を生成する際の逓倍率と、システムクロック生成部４が逓倍クロック１０１を分周しシステムクロック１０３およびメモリクロック１０２を生成する際の分周率との、少なくとも一方を外部からプログラマブルに設定可能であるようにしてもよい。逓倍クロック生成部３における逓倍率とシステムクロック生成部４における分周率との少なくとも一方を外部からプログラマブルに設定可能であるようにすることで、データ取り込み用基準クロック１０９の周波数を変動させることなく、逓倍クロック１０１の周波数を変動させることができる。その結果、データ取り込みクロック生成部８が、データ取り込み用基準クロック１０９に付加する遅延量を変動させることができ、クロック同期式メモリ２を動作させるメモリクロックの周波数によって、データ取り込み用基準クロック１０９に付加する遅延量を変動させたい場合や、当該チップのプリント基板上での実装条件によって遅延量を変動させたい場合などに対応することができる。
【００５５】
また、データ取り込みクロック生成部８においてシフトレジスタを形成した場合に、データ取り込みクロック生成部８がシフトレジスタにより各段数分遅延させたクロックからひとつのクロックを選択する選択手段を有して、外部よりプログラマブルに選択可能であるようにしてもよい。図１２にデータ取り込みクロック生成部８がシフトレジスタを形成し、そのシフトレジスタにより各段数分遅延させたクロックからひとつのクロックが選択される選択手段を有して、外部よりプログラマブルに選択可能である形態の例として、シフトレジスタを３段用いた場合を示す。
【００５６】
データ取り込みクロック生成部８にはデータ取り込み用基準クロック１０９、逓倍クロック１０１及び遅延選択信号１１５が入力される。データ取り込み用基準クロック１０９は、レジスタ２０１に入力され逓倍クロック１０１でラッチされる。レジスタ２０１は、１段遅延クロック１１２を次段のレジスタ２０２及びセレクタ２０４へ出力する。以下同様にレジスタ２０２は２段遅延クロック１１３を、レジスタ２０３は３段遅延クロック１１４を生成し、それぞれセレクタ２０４へ出力する。そしてセレクタ２０４は遅延選択信号１１５をもとに、データ取り込み用基準クロック１０９、１段遅延クロック１１２、２段遅延クロック１１３または３段遅延クロック１１４の中からデータ取り込み用遅延クロック１１１として出力するものを選択し、出力する。この形態によると、外部からの信号である遅延選択信号１１５によって、データ取り込みクロック生成部８がデータ取り込み用基準クロック１０９に付加する遅延量を外部からプログラマブルに変動させることが可能となる。
【００５７】
図１３に、図１２の形態において２段遅延クロック１１３がデータ取り込み用遅延クロック１１１として選択された場合のタイミング図を示す。データ取り込み用基準クロック１０９と比較して１段遅延クロック１１２は、
ｔＤＬＹ＋ｔＲＥＧ
の遅延量を持つ。ここでｔＤＬＹは逓倍クロック１０１の１クロック区間の時間を表し、ｔＲＥＧは図１２におけるレジスタ２０１のデータ伝播遅延を表す。同様に２段遅延クロック１１３は、
２×ｔＤＬＹ＋ｔＲＥＧ
の遅延量を持ち、３段遅延クロックは、
３×ｔＤＬＹ＋ｔＲＥＧ
の遅延量を持っている。セレクタ２０４は、データ取り込み用遅延クロック１１１として２段遅延クロック１１３を選択している。この場合、データ取り込み用基準クロック１０９と比較してデータ取り込み用遅延クロック１１１は、
２×ｔＤＬＹ＋ｔＲＥＧ＋ｔＳＥＬ
の遅延量を持っている。ここで、ｔＳＥＬはセレクタ２０４のデータ伝播遅延を表す。このようにすることで、データ取り込みクロック生成部８がデータ取り込み用基準クロック１０９に付加する遅延量を外部からプログラマブルに変動させることが可能となる。
【００５８】
さらに、データ取り込みクロック生成部８がデータ取り込み用基準クロック１０９に付加する遅延量を外部からプログラマブルに変動させる方法として、データ取り込みクロック生成部８がデータ取り込み用基準クロック１０９を逓倍クロック１０１でラッチする場合に、逓倍クロック１０１の立ち上がりまたは立下りエッジのどちらか一方を選択してラッチし、この選択を外部よりプログラマブルに設定可能とする、というものが想定できる。
【００５９】
図１４に逓倍クロック１０１の立ち上がりまたは立下りエッジのどちらか一方を選択してラッチし、この選択を外部よりプログラマブルに設定可能であるようにした形態の例を示す。データ取り込みクロック生成部８には、データ取り込み用基準クロック１０９、逓倍クロック１０１及び逓倍クロック選択信号１１８が入力される。さらに逓倍クロック１０１がセレクタ２０６及びインバータ２０７に入力され、インバータ２０７により逓倍クロック１０１の反転信号である反転逓倍クロック１１６が生成されセレクタ２０６へと出力される。セレクタ２０６は、逓倍クロック選択信号１１８をもとにして逓倍クロック１０１と反転逓倍クロック１１６とから、選択逓倍クロック１１７として出力するものを選択し、レジスタ２０５に出力する。そしてレジスタ２０５は、選択逓倍クロック１１７でデータ取り込み用基準クロック１０９をラッチし、データ取り込み用遅延クロック１１１を生成し出力する。
【００６０】
この形態によって、データ取り込みクロック生成部８は、データ取り込み用基準クロック１０９を逓倍クロックでラッチする場合に、逓倍クロック１０１の立ち上がりまたは立下りエッジのどちらか一方を選択してラッチできる。更にこの選択は、外部よりプログラマブルに設定可能とされるものである。その結果、データ取り込みクロック生成部８がデータ取り込み用基準クロック１０９に付加する遅延量を外部からプログラマブルに変動させることが可能となる。
【００６１】
≪第２の実施の形態≫
図６の実施の形態１においては、逓倍クロック１０１をデータ取り込みクロック生成部８へ入力し、データ取り込みクロック生成部８においてデータ取り込み用基準クロック１０９を遅延させるためのクロックとして逓倍クロック１０１を用いる形態を示す。ところで、データ取り込みクロック生成部８がデータ取り込み用基準クロック１０９を遅延させるクロックとして、データ取り込み用基準クロック１０９を逓倍したものを使用してもよい。この場合の実施の形態（第２の実施の形態）を図１５に示す。
【００６２】
図１５に示す第２の実施の形態においては、メモリ制御装置１は逓倍データ取り込みクロック生成部９を有し、逓倍データ取り込みクロック生成部９は、データ取り込みクロック用基準クロック１０９を逓倍して、逓倍データ取り込みクロック１１９を生成しデータ取り込みクロック生成部８へ出力する。そして、データ取り込みクロック生成部８は、データ取り込み用基準クロック１０９を逓倍データ取り込みクロック１１９でラッチすることで遅延量をデータ取り込み用基準クロック１０９に付加し、データ取り込み用遅延クロック１１１を生成する。この形態では、逓倍データ取り込みクロック生成部９においてデータ取り込み用基準クロック１０９を逓倍することで、データ取り込み用基準クロック１０９と位相が同じでデータ取り込み用基準クロック１０９の整数倍の周波数を持ったクロックを図６に示した実施の形態よりもさらに安定的に生成することができ、安定的にデータ取り込みクロック生成部８においてデータ取り込み用基準クロック１０９をラッチすることが可能となる。
【００６３】
また、図１５に示した形態においても、逓倍データ取り込みクロック生成部９におけるデータ取り込み用基準クロック１０９から逓倍データ取り込みクロック１１９への逓倍率を外部からプログラマブルに設定可能であるようにして、データ取り込みクロック生成部８がデータ取り込み用基準クロック１０９に付加する遅延量を変動できるようにしてもよい。
【００６４】
また、図１５に示した形態においても、データ取り込みクロック生成部８が逓倍データ取り込みクロック１１９で動作するシフトレジスタを有し、シフトレジスタの段数分遅延させたデータ取り込み用遅延クロックを生成できるようにしてもよい。そして、データ取り込みクロック生成部８がシフトレジスタにより各段数分遅延させたクロックからひとつのクロックが選択される選択手段を有して、外部よりプログラマブルに選択可能であるようにして、データ取り込みクロック生成部８がデータ取り込み用基準クロック１０９に付加する遅延量を変動できるようにしてもよい。
【００６５】
さらに、図１５に示した形態においても、データ取り込みクロック生成部８が逓倍データ取り込みクロック１１９の立下りエッジでデータ取り込み用基準クロック１０９をラッチするようにしてもよい。そして、データ取り込みクロック生成部８は逓倍データ取り込みクロック１１９の立ち上がりまたは立下りエッジのどちらか一方を選択してデータ取り込み用基準クロック１０９をラッチし、その選択は外部からプログラマブルに設定可能であるようにして、データ取り込みクロック生成部８がデータ取り込み用基準クロック１０９に付加する遅延量を変動できるようにしてもよい。
【図面の簡単な説明】
【００６６】
【図１】従来技術におけるメモリ制御装置のブロック図である。
【図２】図１に示すメモリ制御装置において、データの読み出しにおけるクロック同期式メモリからの入力データ信号を受け取る場合のタイミング図である。
【図３】図２においてクロック同期式メモリに対するメモリクロックの周波数が高くなった場合のタイミング図である。
【図４】従来技術における別の形態のメモリ制御装置のブロック図である。
【図５】図４に示すメモリ制御装置において、データの読み出しにおけるクロック同期式メモリからの入力データ信号を受け取る場合のタイミング図である。
【図６】本発明の第１の実施の形態に係るメモリ制御装置のブロック図である。
【図７】図６のデータ取り込みクロック生成部のブロック図である。
【図８】図７のデータ取り込みクロック生成部に係るタイミング図の例である。
【図９】遅延回路の構成の従来例である。
【図１０】データ取り込みクロック生成部において逓倍クロックの立下りエッジでデータ取り込み用基準クロックをラッチした場合のタイミング図である。
【図１１】データ取り込みクロック生成部の構成例のひとつである。
【図１２】データ取り込みクロック生成部の別の構成例である。
【図１３】図１２の構成例のデータ取り込みクロック生成部において、２段遅延クロックがデータ取り込み用遅延クロックとして選択された場合のタイミング図を示す。
【図１４】データ取り込みクロック生成部の更に別の構成例である。
【図１５】本発明の第２の実施の形態に係るメモリ制御装置のブロック図である。
【符号の説明】
【００６７】
１・・・メモリ制御装置、２・・・クロック同期式メモリ、３・・・逓倍クロック生成部、４・・・システムクロック生成部、５・・・書き込みデータ制御信号アドレス出力回路、６・・・入力データレジスタ、７・・・遅延回路、８・・・データ取り込みクロック生成部、９・・・逓倍データ取り込みクロック生成部。
【図１】
2005196479.tif 000003
【図２】
2005196479.tif 000004
【図３】
2005196479.tif 000005
【図４】
2005196479.tif 000006
【図５】
2005196479.tif 000007
【図６】
2005196479.tif 000008
【図７】
2005196479.tif 000009
【図８】
2005196479.tif 000010
【図９】
2005196479.tif 000011
【図１０】
2005196479.tif 000012
【図１１】
2005196479.tif 000013
【図１２】
2005196479.tif 000014
【図１３】
2005196479.tif 000015
【図１４】
2005196479.tif 000016
【図１５】
2005196479.tif 000017