(57)【要約】【課題】  複数の種類のメモリや複数のＩＯ電源電圧のメモリに対応し、かつ、タイミング調整が容易なメモリ制御装置を提供する。【解決手段】  複数種類のメモリに対応した複数のメモリ・インターフェース部１２〜１６と、この複数のメモリ・インターフェース部のそれぞれに独立な経路によりクロック信号を供給するクロック信号生成装置２とを備える。【選択図】  図１
2005293013.tif 000002
【特許請求の範囲】
【請求項１】
複数種類のメモリに対応した複数のメモリ・インターフェース回路と、
前記複数のメモリ・インターフェース回路のそれぞれに独立な経路によりクロック信号を供給するクロック信号生成回路とを有することを特徴としたメモリ制御装置。
【請求項２】
前記クロック信号生成回路が、前記複数のメモリ・インターフェース回路の少なくとも１つに、メモリのＩＯ電源電圧に応じて異なるクロック信号を供給することを特徴とした請求項１に記載のメモリ制御装置。
【請求項３】
前記クロック信号生成回路が、前記複数のメモリ・インターフェース回路の少なくとも１つに、負荷に応じて異なるクロック信号を供給することを特徴とした請求項１または２に記載のメモリ制御装置。
【請求項４】
前記複数のメモリ・インターフェース回路が、メモリ・インターフェース信号の機能に応じた複数のメモリ・インターフェース回路を有することを特徴とした請求項１乃至３に記載のメモリ制御装置。
【請求項５】
前記複数のメモリ・インターフェース回路が、少なくとも１種類のメモリに対して、書き込みと読み出しとで独立なメモリ・インターフェース回路を有することを特徴とした請求項１乃至４に記載のメモリ制御装置。
【請求項６】
前記経路の少なくとも１つが、複数の異なるクロック信号から１つのクロック信号を選択して出力する選択回路を有することを特徴とした請求項１乃至５に記載のメモリ制御装置。
【請求項７】
前記各経路上にそれぞれ独立にタイミングを調整する調整回路を設けたことを特徴とした請求項１乃至請求項６に記載のメモリ制御装置。
【請求項８】
前記複数種類のメモリは、シングル・データ・レート・シンクロナスＤＲＡＭとダブル・データ・レート・シンクロナスＤＲＡＭとを含むことを特徴とした、請求項１乃至７に記載のメモリ制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数の種類のメモリや、複数のＩＯ電源電圧のメモリに対応したメモリ制御装置に関する。
【背景技術】
【０００２】
従来から、ＣＰＵの主記憶や、各種のデータバッファの用途でＤＲＡＭが広く使用されている。その中でＳＤＲ  ＳＤＲＡＭ（Ｓｉｎｇｌｅ  Ｄａｔａ  ＲａｔｅシンクロナスＤＲＡＭ。以下ＳＤＲと記す）は、最も一般的なデバイスの一つである。また、より高い処理性能を要求されるシステムにおいては、デバイスの選択肢がいくつかあるが、アクセスプロトコルがＳＤＲと比較的似ているＤＤＲ  ＳＤＲＡＭ（Ｄｏｕｂｌｅ  Ｄａｔａ  ＲａｔｅシンクロナスＤＲＡＭ。以下ＤＤＲと記す）を使用する場合がある（例えば特許文献１参照）。
【０００３】
一方、同じ種類のメモリでもＩＯ電源電圧が異なるデバイスがある。例えば現状のＳＤＲには、ＩＯ電源電圧が３．３Ｖのデバイス、２．５Ｖのデバイス、１．８Ｖのデバイスなどがある。
【０００４】
従来のシステム（例えば撮像装置や複写装置など）においては、半導体集積回路の内部にメモリ制御装置を構成し、かつ、一つのメモリ制御装置で上述した複数の種類のメモリ及び複数のＩＯ電源電圧のメモリに対応すると共に、システムの性能やコストなどの要求に合せて最適なメモリを選択し、実装していた。
【特許文献１】特開２００３−２９８９３８号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしながら、前記従来のメモリ制御装置においては、メモリとのインターフェース信号のＡＣタイミング調整を行う際、カバーするメモリの種類やＩＯ電源電圧が増えてくるにつれて、全ての条件を満たすようにタイミング調整を行うことが困難になる。
【０００６】
例えば、ＤＤＲのＡＣタイミングを優先させるために、各メモリ・インターフェース信号のＡＣタイミングを最速に近い条件に合せ込んだ場合、ＩＯ電源電圧３．３ＶのＳＤＲにおいては、書き込みの際にデータ・ホールド・エラーが起る傾向が強くなるため、設計時に全てのタイミング条件を満たすようなメモリ制御装置が実現できない場合があるという問題があった。
【０００７】
また、仮に実現できた場合においても、基板実装時の制限（例えば外付け部品の増加）や使用できるメモリの制限（ＡＣタイミングの制約が厳しくなるため、使用できないデバイスが増加する）が発生するという問題もあった。
【０００８】
そこで本発明の目的は、上記の課題に鑑み、一つのメモリ制御装置で複数の種類のメモリや複数のＩＯ電源電圧のメモリに対応し、かつ、タイミング調整が容易なメモリ制御装置を提供することにある。
【課題を解決するための手段】
【０００９】
上記課題を解決するために、本発明のメモリ制御装置は、複数種類のメモリに対応した複数のメモリ・インターフェース回路と、前記複数のメモリ・インターフェース回路のそれぞれに独立な経路によりクロック信号を供給するクロック信号生成回路とを備える。
【発明の効果】
【００１０】
本発明によれば、メモリ制御装置において、複数種類のメモリに対応した複数のメモリ・インターフェース回路のそれぞれに、独立な経路によりクロック信号を供給することにより、一つのメモリ制御装置で複数の種類のメモリに対応しながら、タイミング調整を容易に実現することが可能となる。
【発明を実施するための最良の形態】
【００１１】
以下、添付図面を参照しながら、本発明の実施形態を説明する。
【００１２】
図１は、本発明の実施形態にかかるメモリ制御装置の構成を示すブロック図である。メモリ制御装置１の外部には、メモリ制御装置が必要とするクロックを供給するクロック生成装置２、メモリ制御装置１並びにクロック生成装置２に対する動作モード信号やクロック選択信号を与えるレジスタ部３、並びにＰＡＤ部４がある。
【００１３】
まず、本実施形態の特徴であるクロック構成並びにクロック生成方式について説明する。
【００１４】
メモリ制御装置１は、メモリ制御部１１、コマンドＩ／Ｆ部１２、ＳＤＲ出力データＩ／Ｆ部１３、ＤＤＲ出力データＩ／Ｆ部１４、ＤＤＲ入力Ｉ／Ｆ部１５、ＳＤＲ入力Ｉ／Ｆ部１６から成る。そして、クロック生成装置２から各々独立にクロックが供給される構成をとっている。
【００１５】
また、レジスタ部３からは、ＤＲＡＭモードを選択するｄｄｒ＿ｓｅｌ信号（ＤＤＲモードの時Ｈｉ、ＳＤＲモードの時Ｌｏｗ）が供給される。そしてＳＤＲ出力データＩ／Ｆ部１３とＤＤＲ出力データＩ／Ｆ部１４の出力信号は、ｄｄｒ＿ｓｅｌ信号の値に応じてマルチプレクサ２１〜２３で選択され、ＤＤＲ入力データＩ／Ｆ部１５とＳＤＲ入力データＩ／Ｆ部１６の出力信号は、ｄｄｒ＿ｓｅｌ信号の値に応じてマルチプレクサ２４で選択される。
【００１６】
図２は、本実施形態における、クロック生成部２の概略ブロック構成を示す図である。本実施形態においては、メモリ制御装置１は１０８ＭＨｚのクロックを基本クロックと動作しているが、ＤＤＲ制御用の倍速クロックとして２１６ＭＨｚのクロックも一部で使用している。また本実施形態においては、入力クロックｃｌｋ＿ｉｎの周波数は２７ＭＨｚで、クロック生成部２１０においてこれを８逓倍して２１６ＭＨｚのクロックを生成し、さらに分周期２２０において、これを１／２分周することにより１０８ＭＨｚを生成している。
【００１７】
そして、１０８ＭＨｚの基本クロックは本メモリ制御装置１の各部に各々独立に供給される。即ち、メモリ制御部１１用にｍｃｌｋ、コマンドＩ／Ｆ部１２用にｍｃｍｄ＿ｃｌｋ、ＳＤＲ出力データＩ／Ｆ部１３用にｍｗｒ＿ｃｌｋ＿ｓｄｒ、ＤＤＲ出力データＩ／Ｆ部１４用にｍｗｒ＿ｃｌｋ＿ｄｄｒ、ＤＤＲ入力データＩ／Ｆ部１５用にｍｒｄ＿ｃｌｋ＿ｄｄｒ、ＳＤＲ入力データＩ／Ｆ部１６用にｍｒｄ＿ｃｌｋ＿ｓｄｒが供給される。更に、１０８ＭＨｚの基本クロックはＰＡＤ部４用に、ＭＥＭＣＬＫｉが供給される。また２１６ＭＨｚの倍速クロックは、メモリ制御部１１用にｍｃｌｋ＿２ｘが供給される。
【００１８】
なお、ディレイ・バッファ２３１〜２４１は、各クロックの位相調整のために挿入するディレイ素子をシンボル化したものである。各ディレイ・バッファは、図２においては同一シンボルを用いているが、その遅延値は各クロックによって異なる。また、クロックツリー・バッファ２６１〜２６８は、クロックツリーの起点をシンボル化したものである。クロックツリー生成の際には、各クロックツリー・バッファを起点として、各クロックのクロックツリーが生成される。
【００１９】
さらに、ｍｃｍｄ＿ｃｌｋ、ｍｗｒ＿ｃｌｋ＿ｓｄｒ、ｍｒｄ＿ｃｌｋ＿ｄｄｒ、ｍｒｄ＿ｃｌｋ＿ｓｄｒは、レジスタ部３のレジスタ設定によって、各々２種類のクロックが選択できるようになっている。本実施形態においては、ｍｃｍｄ＿ｃｌｋは、ｍｃｍｄ＿ｃｌｋ＿ｓｅｌによって高負荷モードと低負荷モードが選択でき、ｍｃｍｄ＿ｃｌｋ＿ｓｅｌがＨｉの時に高負荷モードとなる。またｍｗｒ＿ｃｌｋ＿ｓｄｒ、ｍｒｄ＿ｃｌｋ＿ｓｄｒは、各々ｍｗｒ＿ｃｌｋ＿ｓｄｒ＿ｓｅｌ、ｍｒｄ＿ｃｌｋ＿ｓｄｒ＿ｓｅｌによって各々２．５Ｖモードと３．３Ｖモードが選択でき、各々ｍｗｒ＿ｃｌｋ＿ｓｄｒ＿ｓｅｌ、ｍｒｄ＿ｃｌｋ＿ｓｄｒ＿ｓｅｌがＨｉの時に３．３Ｖとなる。さらにｍｒｄ＿ｃｌｋ＿ｄｄｒは、ｍｒｄ＿ｃｌｋ＿ｄｄｒ＿ｓｅｌによって読み出しクロックの反転／非反転が選択できるようになっている。
【００２０】
このように、メモリの種類ごと、メモリ・インターフェース信号の機能ごとにクロック系統を分割し、またメモリ・インターフェース部の書き込み回路と読み出し回路のクロック系統も分割すると共に、メモリのＩＯ電源電圧ごと、並びに外部の負荷条件ごとにクロックのパスを個別に設定できるようにすることにより、各クロックの遅延値を各々独立に設定することが可能となる。これにより、一つのメモリ制御装置で複数の種類のメモリや複数のＩＯ電源電圧のメモリに対応し、かつ、タイミング調整が容易なメモリ制御方式を実現することが可能となる。
【００２１】
例えば上記構成において、高負荷モードは低負荷モードに比べてクロックの遅延が小さくなっており、また、２．５Ｖモードも３．３Ｖモードに比べてクロックの遅延が小さくなっている。即ち、ディレイ・バッファ２３３〜２３６並びに２４０〜２４１の遅延値を各々独立に調整し、各クロックの遅延値を所望の値に合わせ込むことによって、このことが容易に実現できる。
【００２２】
次に、メモリ制御装置１の各部の動作について説明する。
【００２３】
まずメモリ制御部１１は、メモリ制御装置１のうち、メモリとのＩ／Ｆ処理以外の全ての処理を行っている。即ち、メモリ制御のシーケンス管理、コマンド並びにアドレスの生成、データ授受の管理、並びにメモリに対するリフレッシュの管理等の処理を行っている。
【００２４】
図３は、本実施形態における、コマンドＩ／Ｆ部１２の回路図でである。メモリ制御部１１で生成されたＤＲＡＭ制御信号（ＣＳ＿ｎ＿ｉ、ＷＥ＿ｎ＿ｉ、ＲＡＳ＿ｎ＿ｉ、ＣＡＳ＿ｎ＿ｉ）、アドレス（ＢＡ［１：０］、Ａ［１２：０］）並びにクロックイネーブル信号（ＣＫＥ＿ｉ）を各々Ｄフリップフロップでラッチして、ＰＡＤ部４へ出力する。
【００２５】
図４は、本実施形態における、ＳＤＲ出力データＩ／Ｆ部１３の回路図である。メモリ制御部１１で生成された出力データ（ＤＱＯ＿ｉ［３１：０］）、データマスク信号（ＤＱＭ＿ｉ［３：０］）並びに出力データイネーブル信号（ＤＱＯＥ＿ｎ＿ｉ［３１：０］）を各々Ｄフリップフロップでラッチして、ＰＡＤ部４へ出力する。図９は、本実施形態における、ＳＤＲ書き込みタイミングを示すタイミングチャートである。
【００２６】
図５は、本実施形態における、ＤＤＲ出力データＩ／Ｆ部１４の回路図である。ＤＱＯ＿ｉ［３１：０］はＤフリップフロップ１４０１によってクロックの立ち上がり側のデータが、Ｄフリップフロップ１４１１によってクロックの立ち下がり側のデータがラッチされる。そして、マルチプレクサ１４２１によってｍｗｒ＿ｃｌｋ＿ｄｄｒの値に応じたデータが選択され、出力データＤＱＯ［３１：０］としてＰＡＤ部４へ出力される。同様に、ＤＱＭ＿ｉ［３：０］はＤフリップフロップ１４０３によってクロックの立ち上がり側のデータが、Ｄフリップフロップ１４１２によってクロックの立ち下がり側のデータがラッチされる。そして、マルチプレクサ１４２２によってｍｗｒ＿ｃｌｋ＿ｄｄｒの値に応じたデータが選択され、出力データマスク信号ＤＱＭ［３：０］としてＰＡＤ部４へ出力される。
【００２７】
ＤＭＯＥ＿ｎ＿ｉ［３１：０］並びにＤＱＳＯＥ＿ｎ＿ｉ［３：０］は、各々Ｄフリップフロップ１４０２、１４０５によってラッチされ、各々データ出力イネーブル信号ＤＱＯＥ＿ｎ［３１：０］、データストローブ出力イネーブル信号ＤＱＳＯＥ＿ｎ［３：０］として、ＰＡＤ部４へ出力される。
【００２８】
ＤＬＬ（Ｄｅｌａｙ  Ｌｏｃｋｅｄ  Ｌｏｏｐ）１４３１のＩ端子には、ＤＤＲ出力データＩ／Ｆ部のクロックであるｍｗｒ＿ｃｌｋ＿ｄｄｒが入力され、Ｏ端子にはＩ端子に対して９０度シフトされた信号が出力される。ＤＱＳＯ＿ｉ［３：０］はＤフリップフロップ１４０４並びに１４１３によってラッチされ、ＡＮＤゲート１４４１によって前記ＤＬＬの出力との論理和をとった信号が、出力データストローブＤＱＳ［３：０］としてＰＡＤ部４へ出力される。図１０は、本実施形態における、ＤＤＲ書き込みタイミングを示すタイミングチャートである。
【００２９】
図６は、本実施形態における、ＤＤＲ入力データＩ／Ｆ部１５の回路図である。ＤＬＬ１５３１〜１５３４のＩ端子にはＤＤＲから出力されるＤＱＳ信号が入力され、各ＤＬＬのＯ端子にはＩ端子に対して９０度シフトされた信号が、Ｏｎ端子にはＩ端子に対して２７０度シフトされた信号が出力される。そしてＤＬＬ１５３１〜１５３４によってシフトされたストローブ信号によって、入力データＤＱＩ［３１：０］がＤフリップフロップ１５０３〜１５１４でラッチされる。さらにＤフリップフロップ１５０１〜１５０２によって、メモリ制御装置１の内部クロックであるｍｒｄ＿ｃｌｋ＿ｄｄｒによってラッチされる。そして、マルチプレクサ１５２０によってｍｒｄ＿ｃｌｋ＿ｄｄｒの値に応じて入力データが選択され、メモリ制御部１へ出力される。図１１は、本実施形態における、ＤＤＲ読み出しタイミングを示すタイミングチャートである。
【００３０】
図７は、本実施形態における、ＳＤＲ入力データＩ／Ｆ部１６の回路図である。ＳＤＲからの入力データ（ＤＱＩ［３１：０］）をＤフリップフロップでラッチして、ＰＡＤ部４へ出力する。図１２は、本実施形態における、ＳＤＲ読み出しタイミングを示すタイミングチャートである。
【００３１】
図８は、本実施形態における、ＰＡＤ部４の回路図である。クロックＰＡＤ４０１は、１つの入力信号ＭＥＭＣＬＫ＿ｉから正相、逆相の２つのクロック、ＭＥＭＣＬＫ、ＭＥＭＣＬＫ＿ｎを生成する。またＳＤＲモードの時（すなわちｄｄｒ＿ｓｅｌ信号がＨｉのとき）は逆相クロックＭＥＭＣＬＫ＿ｎを停止できるようになっている。一方、入力ＰＡＤ４０２〜４０８並びに４１０は、一般的な入力ＰＡＤであり、双方向ＰＡＤ４０９並びに４１１は、一般的な双方向ＰＡＤである。
【図面の簡単な説明】
【００３２】
【図１】本発明の実施形態にかかるメモリ制御装置の構成を示すブロック図である。
【図２】クロック生成部の概略構成を示すブロック図である。
【図３】コマンドＩ／Ｆ部の回路構成を示す図である。
【図４】ＳＤＲ出力データＩ／Ｆ部の回路構成を示す図である。
【図５】ＤＤＲ出力データＩ／Ｆ部の回路構成を示す図である。
【図６】ＤＤＲ入力データＩ／Ｆ部の回路構成を示す図である。
【図７】ＳＤＲ入力データＩ／Ｆ部の回路構成を示す図である。
【図８】ＰＡＤ部の回路構成を示す図である。
【図９】ＳＤＲ書き込みタイミングを示すタイミングチャートである。
【図１０】ＤＤＲ書き込みタイミングを示すタイミングチャートである。
【図１１】ＤＤＲ読み出しタイミングを示すタイミングチャートである。
【図１２】ＳＤＲ読み出しタイミングを示すタイミングチャートである。
【符号の説明】
【００３３】
１  メモリ制御装置
２  クロック生成装置
３  レジスタ部
４  ＰＡＤ部
１１  メモリ制御部
１２  コマンドＩ／Ｆ部
１３  ＳＤＲ出力データＩ／Ｆ部
１４  ＤＤＲ出力データＩ／Ｆ部
１５  ＤＤＲ入力データＩ／Ｆ部
１６  ＳＤＲ入力データＩ／Ｆ部
２１０  クロック生成部
２２０  分周期
２３１〜２４１  ディレイ・バッファ
２６１〜２６８  クロックツリー・バッファ
４０１  クロックＰＡＤ
４０２〜４０８、４１０  出力ＰＡＤ
４０９、４１１  双方向ＰＡＤ
１４３１、１５３１〜１５３４  ＤＬＬ
【図１】
2005293013.tif 000003
【図２】
2005293013.tif 000004
【図３】
2005293013.tif 000005
【図４】
2005293013.tif 000006
【図５】
2005293013.tif 000007
【図６】
2005293013.tif 000008
【図７】
2005293013.tif 000009
【図８】
2005293013.tif 000010
【図９】
2005293013.tif 000011
【図１０】
2005293013.tif 000012
【図１１】
2005293013.tif 000013
【図１２】
2005293013.tif 000014