(57)【特許請求の範囲】
【請求項１】
システムクロックを分周したクロックを、リフレッシュクロックとして生成するリフレッシュクロック生成部と、
前記リフレッシュクロックに基づいて、揮発性メモリにリフレッシュコマンドを発行する制御信号生成部と、
前記揮発性メモリが定める規定リフレッシュ期間における規定リフレッシュ回数に基づいて、前記規定リフレッシュ期間内に生成される前記リフレッシュクロックであって、前記規定リフレッシュ回数を超えて生成される余剰リフレッシュクロックの前記制御信号生成部に対する供給を抑制するリフレッシュ要求生成部と、
を備えるメモリコントローラ。
【請求項２】
ＰＷＭ（Pulse Width Modulation）波形の周期及びデューティ比に関するＰＷＭ設定情報を保持するＰＷＭ制御レジスタを備え、
前記リフレッシュ要求生成部は、
前記ＰＷＭ設定情報に基づいてＰＷＭ波形を出力するＰＷＭ回路と、
前記リフレッシュクロックと、前記ＰＷＭ波形と、を受け付ける論理積回路と、
前記論理積回路の出力信号に基づき、前記制御信号生成部に対して出力するリフレッシュ要求信号を活性化するリフレッシュ調停部と、
を備え、
前記制御信号生成部は、活性化された前記リフレッシュ要求信号に従い前記リフレッシュコマンドを発行した場合には、前記リフレッシュ調停部に対して出力するリフレッシュ受付完了信号を活性化し、
前記リフレッシュ調停部は、活性化された前記リフレッシュ受付完了信号に従い前記リフレッシュ要求信号を非活性化する請求項１のメモリコントローラ。
【請求項３】
前記論理積回路は、前記ＰＷＭ波形を反転した信号を受け付け、
前記リフレッシュ調停部は、前記論理積回路が出力する前記リフレッシュクロックの立ち上がりに同期して、前記リフレッシュ要求信号を活性化する請求項２のメモリコントローラ。
【請求項４】
前記ＰＷＭ設定情報は、前記システムクロックの周期と、前記規定リフレッシュ期間と、前記規定リフレッシュ回数と、に基づいて定まる情報である請求項３のメモリコントローラ。
【請求項５】
前記リフレッシュ要求生成部は、前記規定リフレッシュ期間内において生成される前記リフレッシュクロックの前記制御信号生成部に対する供給を、前記余剰リフレッシュクロックの数に基づいて、均等間隔で抑制する請求項１のメモリコントローラ。
【請求項６】
前記システムクロックの周期と、前記規定リフレッシュ期間と、前記規定リフレッシュ回数と、に基づいて定まるリフレッシュカウントレジスタ情報を保持するリフレッシュカウントレジスタを備え、
前記リフレッシュ要求生成部は、
前記リフレッシュクロックをカウントし、カウント値をリフレッシュカウント値として出力するリフレッシュカウンタと、
前記リフレッシュカウントレジスタ情報と、前記リフレッシュカウント値と、を比較する比較器と、
前記リフレッシュクロックと、前記比較器の出力信号と、を受け付ける論理積回路と、
前記論理積回路の出力信号に基づき、前記制御信号生成部に対して出力するリフレッシュ要求信号を活性化するリフレッシュ調停部と、
を備え、
前記制御信号生成部は、活性化された前記リフレッシュ要求信号に従い前記リフレッシュコマンドを発行した場合には、前記リフレッシュ調停部に対して出力するリフレッシュ受付完了信号を活性化し、
前記リフレッシュ調停部は、活性化された前記リフレッシュ受付完了信号に従い前記リフレッシュ要求信号を非活性化する請求項５のメモリコントローラ。
【請求項７】
前記リフレッシュカウントレジスタは、
前記規定リフレッシュ回数をリフレッシュ数設定情報として保持するリフレッシュ数設定レジスタと、
前記余剰リフレッシュクロックの発行回数をリフレッシュマスク情報として保持するリフレッシュマスクレジスタと、を含んで構成され、
前記リフレッシュ数設定情報をリフレッシュマスク情報で除算した結果を、前記リフレッシュカウントレジスタ情報として出力する除算回路を備える請求項６のメモリコントローラ。
【請求項８】
システムクロックを分周し、リフレッシュクロックとして生成するリフレッシュクロック生成工程と、
前記リフレッシュクロックに基づいて、揮発性メモリにリフレッシュコマンドを発行する制御信号生成工程と、
前記揮発性メモリが定める規定リフレッシュ期間における規定リフレッシュ回数に基づいて、前記規定リフレッシュ期間内に生成される前記リフレッシュクロックであって、前記規定リフレッシュ回数を超えて生成される余剰リフレッシュクロックの供給を抑制するリフレッシュ要求生成工程と、
を含む揮発性メモリの制御方法。
【請求項９】
前記リフレッシュ要求生成工程は、
前記システムクロックの周期と、前記規定リフレッシュ期間と、前記規定リフレッシュ回数と、に基づいて定まるＰＷＭ（Pulse Width Modulation）設定情報に基づいてＰＷＭ波形を出力するＰＷＭ波形生成工程と、
前記ＰＷＭ波形に基づき、前記余剰リフレッシュクロックの供給を抑制する工程と、
を含む請求項８の揮発性メモリの制御方法。
【請求項１０】
前記リフレッシュ要求生成工程は、
前記規定リフレッシュ期間内において生成される前記リフレッシュクロックの供給を、前記余剰リフレッシュクロックの数に基づいて、均等間隔で抑制する工程を含む請求項８の揮発性メモリの制御方法。
【請求項１１】
前記リフレッシュ要求生成工程は、
前記規定リフレッシュ回数に相当する数の前記リフレッシュクロックを供給する工程と、
前記余剰リフレッシュクロックに相当する数の前記リフレッシュクロックの供給を抑制する工程と、
を含む請求項８の揮発性メモリの制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、メモリコントローラ、揮発性メモリの制御方法及びメモリ制御システムに関する。例えば、揮発性メモリのリフレッシュ制御に好適に利用できるものである。
【背景技術】
【０００２】
ＤＲＡＭ（Dynamic Random Access Memory）を初めとした揮発性メモリには、データの保持を行うメモリセルの構造上、一定の周期でリフレッシュが必要である。揮発性メモリのリフレッシュ制御は、揮発性メモリに接続されたメモリコントローラが行う。揮発性メモリ及びメモリコントローラは、揮発性メモリを必要とするシステムに組み込まれており、システム内部で生成されるクロックに基づき、動作する。特に、メモリコントローラは、システム内部で生成されるシステムクロック又はシステムクロックを分周したクロックに基づき、リフレッシュ制御を含む揮発性メモリの制御を行う。
【０００３】
一方、揮発性メモリが規定するリフレッシュ制御に関する仕様は、「一定の期間内に一定の回数以上、リフレッシュコマンドの発行を要する」のように規定される。即ち、メモリコントローラは揮発性メモリのリフレッシュ制御に関する仕様を遵守すればよく、どのようなタイミングでリフレッシュコマンドを発行するかは、メモリコントローラに委ねられている。
【０００４】
ここで、特許文献１には、メモリコントローラがアイドル状態の際に、揮発性メモリに対するリフレッシュ制御を先行して実施する技術が開示されている。特許文献１が開示するメモリコントローラは、リフレッシュ制御を先行して実施することで、メモリコントローラがビジー状態時のリフレッシュ制御を優先する必要がなくなり、揮発性メモリを含むシステム全体の性能低下を防止する。
【０００５】
さらに、特許文献２〜７において、揮発性メモリのリフレッシュ制御に関する種々の技術が開示されている。また、特許文献８及び９において、揮発性メモリのリフレッシュを実現する際の技術が開示されている。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２０１１−０１８４３５号公報
【特許文献２】特開２０００−２３５７８９号公報
【特許文献３】特開２００３−１５１２７０号公報
【特許文献４】特開２００９−０５９４１２号公報
【特許文献５】特開平０４−０６０９８８号公報
【特許文献６】特開平０６−２３６６８３号公報
【特許文献７】特開平０８−１２９８８３号公報
【特許文献８】特開２００７−２８７３１４号公報
【特許文献９】特開２０１０−１７０６０８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
なお、上記先行技術文献の各開示を、本書に引用をもって繰り込むものとする。以下の分析は、本発明者らによってなされたものである。
【０００８】
上述したように、メモリコントローラはシステムクロック又はシステムクロックを分周したクロックを用いて揮発性メモリのリフレッシュ制御を行う。その際、揮発性メモリのリフレッシュ制御に関する仕様は、システムクロックの周期とは無関係に定められる。そのため、メモリコントローラが揮発性メモリに対して発行するリフレッシュコマンドは、揮発性メモリの仕様が定めるリフレッシュコマンドの発行回数と合致することは希である。従って、メモリコントローラは揮発性メモリが定める仕様（リフレッシュコマンドの発行回数）よりも多くのリフレッシュコマンドを発行することで、揮発性メモリが定める仕様を遵守している。
【０００９】
しかし、このような余剰なリフレッシュコマンドの発行は、揮発性メモリの観点からは不要なものであり、揮発性メモリとメモリコントローラを接続するバスに不要な信号（リフレッシュコマンド）を供給している。バスに信号が供給されていれば、同じバスに接続されたメモリコントローラ以外のデバイスは、バスを使用することができない。従って、メモリコントローラが、無駄なリフレッシュコマンドを発行することによって、バスの利用効率が低下している。
【００１０】
特に近年、揮発性メモリを含むシステムが扱うデータ量は増加しており、バスの利用効率を向上させるため、種々の取り組みがなされている。例えば、システムに使用されるバスの形態をシングルレイヤからマルチレイヤに拡張することで、バスの利用効率の向上が図られている。このような状況の下、メモリコントローラが無駄なリフレッシュコマンドを発行することで、バスの利用効率を低下させることは許容できない。そのため、揮発性メモリと接続するバスの利用効率を向上させるメモリコントローラ、揮発性メモリの制御方法及びメモリ制御システムが、望まれる。
【００１１】
なお、その他の課題と新規な特徴は、本明細書の記述及び添付図面から明らかになるであろう。また、メモリコントローラによる具体的なリフレッシュ制御と、その際に生じる余剰なリフレッシュコマンドの詳細については、後述する。
【課題を解決するための手段】
【００１２】
一実施の形態によれば、リフレッシュクロック生成部と、制御信号生成部と、リフレッシュ要求生成部と、を備えるメモリコントローラが提供される。リフレッシュクロック生成部は、システムクロックを分周したクロックを、リフレッシュクロックとして生成する。制御信号生成部は、リフレッシュクロックに基づいて、揮発性メモリにリフレッシュコマンドを発行する。リフレッシュ要求生成部は、揮発性メモリが定める規定リフレッシュ期間における規定リフレッシュ回数に基づいて、規定リフレッシュ期間内に生成されるリフレッシュクロックであって、規定リフレッシュ回数を超えて生成される余剰リフレッシュクロックの制御信号生成部に対する供給を抑制する。
【発明の効果】
【００１３】
一実施の形態によれば、揮発性メモリと接続するバスの利用効率を向上させるメモリコントローラ、揮発性メモリの制御方法及びメモリ制御システムが、提供される。
【図面の簡単な説明】
【００１４】
【図１】一実施形態の概要を説明するための図である。
【図２】メモリコントローラ１の内部構成の一例を示す図である。
【図３】リフレッシュ要求生成部３０の内部構成の一例を示す図である。
【図４】メモリコントローラ１のリフレッシュ制御に関わる信号のタイミングチャートの一例を示す図である。
【図５】第１の実施形態に係るメモリコントローラ２の内部構成の一例を示す図である。
【図６】リフレッシュ要求生成部３０ａの内部構成の一例を示す図である。
【図７】メモリコントローラ２の動作の一例を示すフローチャートである。
【図８】メモリコントローラ２のリフレッシュ制御に関わる信号のタイミングチャートの一例を示す図である。
【図９】第２の実施形態に係るメモリコントローラ３の内部構成の一例を示す図である。
【図１０】リフレッシュ要求生成部３０ｂの内部構成の一例を示す図である。
【図１１】メモリコントローラ３のリフレッシュ制御に関わる信号のタイミングチャートの一例を示す図である。
【図１２】第３の実施形態に係るメモリコントローラ４の内部構成の一例を示す図である。
【図１３】第４の実施形態に係るメモリ制御システム５の構成の一例を示す図である。
【図１４】リフレッシュ要求生成部３０ｃの内部構成の一例を示す図である。
【図１５】メモリ制御システム５における各種信号のタイミングチャートの一例を示す図である。
【発明を実施するための形態】
【００１５】
初めに、図１を用いて一実施形態の概要について説明する。なお、この概要に付記した図面参照符号は、理解を助けるための一例として各要素に便宜上付記したものであり、この概要の記載はなんらの限定を意図するものではない。
【００１６】
上述したように、バスの利用効率を向上させるため、種々の技術が検討されている。このような状況の下、メモリコントローラが無駄な（余剰な）リフレッシュコマンドを発行することで、バスの利用効率を低下させることは許容できない。そのため、揮発性メモリと接続するバスの利用効率を向上させるメモリコントローラが、望まれる。
【００１７】
そこで、一例として図１に示すメモリコントローラ４００を提供する。メモリコントローラ４００は、リフレッシュクロック生成部４０１と、制御信号生成部４０２と、リフレッシュ要求生成部４０３と、を備える。リフレッシュクロック生成部４０１は、システムクロックを分周したクロックを、リフレッシュクロックとして生成する。制御信号生成部４０２は、リフレッシュクロックに基づいて、揮発性メモリにリフレッシュコマンドを発行する。リフレッシュ要求生成部４０３は、揮発性メモリが定める規定リフレッシュ期間における規定リフレッシュ回数に基づいて、規定リフレッシュ期間内に生成されるリフレッシュクロックであって、規定リフレッシュ回数を超えて生成される余剰リフレッシュクロックの制御信号生成部４０２に対する供給を抑制する。
【００１８】
リフレッシュクロック生成部４０１が受け付けるシステムクロックの周期は、メモリコントローラ４００を含むシステムの設計段階から把握可能である。また、揮発性メモリのリフレッシュに関する情報（規定リフレッシュ期間及び規定リフレッシュ回数）も既知の情報である。従って、これらの情報から規定リフレッシュ期間内に生成される余剰リフレッシュクロックの数もまた把握可能である。そこで、リフレッシュ要求生成部４０３は、余剰リフレッシュクロックを制御信号生成部４０２に供給することを抑制する。その結果、余剰なリフレッシュコマンドが、メモリコントローラ４００と揮発性メモリを接続するバスに供給されることがなくなるので、バスの利用効率を向上させることができる。
【００１９】
さらに、下記の形態が可能である。
【００２０】
［形態１］
システムクロックを分周したクロックを、リフレッシュクロックとして生成するリフレッシュクロック生成部と、前記リフレッシュクロックに基づいて、揮発性メモリにリフレッシュコマンドを発行する制御信号生成部と、前記揮発性メモリが定める規定リフレッシュ期間における規定リフレッシュ回数に基づいて、前記規定リフレッシュ期間内に生成される前記リフレッシュクロックであって、前記規定リフレッシュ回数を超えて生成される余剰リフレッシュクロックの前記制御信号生成部に対する供給を抑制するリフレッシュ要求生成部と、を備えるメモリコントローラ。
［形態２］
前記メモリコントローラは、ＰＷＭ（Pulse Width Modulation）波形の周期及びデューティ比に関するＰＷＭ設定情報を保持するＰＷＭ制御レジスタを備え、前記リフレッシュ要求生成部は、前記ＰＷＭ設定情報に基づいてＰＷＭ波形を出力するＰＷＭ回路と、前記リフレッシュクロックと、前記ＰＷＭ波形と、を受け付ける論理積回路と、前記論理積回路の出力信号に基づき、前記制御信号生成部に対して出力するリフレッシュ要求信号を活性化するリフレッシュ調停部と、を備え、前記制御信号生成部は、活性化された前記リフレッシュ要求信号に従い前記リフレッシュコマンドを発行した場合には、前記リフレッシュ調停部に対して出力するリフレッシュ受付完了信号を活性化し、前記リフレッシュ調停部は、活性化された前記リフレッシュ受付完了信号に従い前記リフレッシュ要求信号を非活性化することが好ましい。
［形態３］
前記論理積回路は、前記ＰＷＭ波形を反転した信号を受け付け、前記リフレッシュ調停部は、前記論理積回路が出力する前記リフレッシュクロックの立ち上がりに同期して、前記リフレッシュ要求信号を活性化することが好ましい。
［形態４］
前記ＰＷＭ設定情報は、前記システムクロックの周期と、前記規定リフレッシュ期間と、前記規定リフレッシュ回数と、に基づいて定まる情報であることが好ましい。
［形態５］
前記リフレッシュ要求生成部は、前記規定リフレッシュ期間内において生成される前記リフレッシュクロックの前記制御信号生成部に対する供給を、前記余剰リフレッシュクロックの数に基づいて、均等間隔で抑制することが好ましい。
［形態６］
前記メモリコントローラは、前記システムクロックの周期と、前記規定リフレッシュ期間と、前記規定リフレッシュ回数と、に基づいて定まるリフレッシュカウントレジスタ情報を保持するリフレッシュカウントレジスタを備え、前記リフレッシュ要求生成部は、前記リフレッシュクロックをカウントし、カウント値をリフレッシュカウント値として出力するリフレッシュカウンタと、前記リフレッシュカウントレジスタ情報と、前記リフレッシュカウント値と、を比較する比較器と、前記リフレッシュクロックと、前記比較器の出力信号と、を受け付ける論理積回路と、前記論理積回路の出力信号に基づき、前記制御信号生成部に対して出力するリフレッシュ要求信号を活性化するリフレッシュ調停部と、を備え、前記制御信号生成部は、活性化された前記リフレッシュ要求信号に従い前記リフレッシュコマンドを発行した場合には、前記リフレッシュ調停部に対して出力するリフレッシュ受付完了信号を活性化し、前記リフレッシュ調停部は、活性化された前記リフレッシュ受付完了信号に従い前記リフレッシュ要求信号を非活性化することが好ましい。
［形態７］
前記リフレッシュカウントレジスタは、前記規定リフレッシュ回数をリフレッシュ数設定情報として保持するリフレッシュ数設定レジスタと、前記余剰リフレッシュクロックの発行回数をリフレッシュマスク情報として保持するリフレッシュマスクレジスタと、を含んで構成され、前記リフレッシュ数設定情報をリフレッシュマスク情報で除算した結果を、前記リフレッシュカウントレジスタ情報として出力する除算回路を備えることが好ましい。
［形態８］
システムクロックを分周し、リフレッシュクロックとして生成するリフレッシュクロック生成工程と、前記リフレッシュクロックに基づいて、揮発性メモリにリフレッシュコマンドを発行する制御信号生成工程と、前記揮発性メモリが定める規定リフレッシュ期間における規定リフレッシュ回数に基づいて、前記規定リフレッシュ期間内に生成される前記リフレッシュクロックであって、前記規定リフレッシュ回数を超えて生成される余剰リフレッシュクロックの供給を抑制するリフレッシュ要求生成工程と、を含む揮発性メモリの制御方法。
［形態９］
前記リフレッシュ要求生成工程は、前記システムクロックの周期と、前記規定リフレッシュ期間と、前記規定リフレッシュ回数と、に基づいて定まるＰＷＭ（Pulse Width Modulation）設定情報に基づいてＰＷＭ波形を出力するＰＷＭ波形生成工程と、前記ＰＷＭ波形に基づき、前記余剰リフレッシュクロックの供給を抑制する工程と、を含むことが好ましい。
［形態１０］
前記リフレッシュ要求生成工程は、前記規定リフレッシュ期間内において生成される前記リフレッシュクロックの供給を、前記余剰リフレッシュクロックの数に基づいて、均等間隔で抑制する工程を含むことが好ましい。
［形態１１］
前記リフレッシュ要求生成工程は、前記規定リフレッシュ回数に相当する数の前記リフレッシュクロックを供給する工程と、前記余剰リフレッシュクロックに相当する数の前記リフレッシュクロックの供給を抑制する工程と、を含むことが好ましい。
［形態１２］
垂直同期信号を出力する画像チップと、画像信号を記憶する揮発性メモリと、システムクロックを生成するシステムクロック生成部と、システムクロックを分周したクロックを、リフレッシュクロックとして生成するリフレッシュクロック生成部と、前記リフレッシュクロックに基づいて、前記揮発性メモリにリフレッシュコマンドを発行する制御信号生成部と、前記垂直同期信号が前記画像信号の転送が行われる期間を示す第１の論理レベルの間に、生成される前記リフレッシュクロックの前記制御信号生成部に対する供給を抑制するリフレッシュ要求生成部と、を備えるメモリコントローラと、を含むメモリ制御システム。
【００２１】
初めに、メモリコントローラのリフレッシュ制御について概説する。
【００２２】
なお、以降の説明において、揮発性メモリのリフレッシュに関する仕様をリフレッシュ規格とする。また、リフレッシュ規格に含まれる仕様であって、一定回数以上のリフレッシュコマンドの発行を要求する期間を規定リフレッシュ期間とする。さらに、規定リフレッシュ期間に要求するリフレッシュコマンドの回数を規定リフレッシュ回数とする。
【００２３】
初めに、特許文献１の図１を適宜参照し、特許文献１が開示する揮発性メモリのリフレッシュ制御について概説する。
【００２４】
特許文献１の図１には、メモリ制御ブロック１００が示されている。メモリ制御ブロック１００は、揮発性メモリ１１０と、リフレッシュカウンタ１３０と、揮発性メモリ１１０とリフレッシュカウンタ１３０を制御する制御装置１２０と、を含む。
【００２５】
特許文献１が目的とする所は、制御装置１２０がアイドル状態（揮発性メモリ１１０に対してアクセスを行わない期間）の時に、リフレッシュ制御を先行、かつ、集中して行うことにより、システム全体の性能低下の軽減である。つまり、リフレッシュ制御をアイドル状態で先行実施することで、ビジー状態時にリフレッシュ制御を行う必要がなくなり、システム全体の性能低下を軽減する。
【００２６】
具体的には、制御装置１２０がアイドル状態にあると判断されると、オートリフレッシュが揮発性メモリ１１０において行われる。制御装置１２０は、オートリフレッシュが行われた後、リフレッシュカウンタ１３０の値を確認する。その際、制御装置１２０は、リフレッシュカウンタ１３０の値が最大値に達していないと判断した場合には、リフレッシュカウンタ１３０をインクリメントする。制御装置１２０は、リフレッシュカウンタ１３０をインクリメントするたびに、追加のオートリフレッシュを行う。その結果、定期的にスケジュールされたリフレッシュの実施が必要であったとしても、既にリフレッシュ制御は実施されているため、改めてリフレッシュ制御を行う必要はない。つまり、制御装置１２０がビジー状態であるにも関わらず、リフレッシュ制御を割り込ませる必要がない。
【００２７】
このように、特許文献１が開示するメモリ制御ブロック１００は、制御装置１２０がアイドル状態の時にリフレッシュを先行かつ集中して行うことで、システム全体の性能低下を軽減する。その際、リフレッシュカウンタ１３０を用いて、リフレッシュ制御の実行を管理している。以上のように、特許文献１は、制御装置１２０の状態（アイドル状態又はビジー状態）に従ってリフレッシュ制御を実行するか否かを決定する技術を開示する。
【００２８】
しかし、特許文献１が開示する技術は、予めスケジュール化されたリフレッシュ制御を先行して実施するという内容であり、そのスケジュール自体がシステムクロックに同期して実施されるのであれば、無駄なリフレッシュ制御を行っているといえる。従って、特許文献１が開示する技術では、揮発性メモリと接続するバスの利用効率を向上させることはできない。なお、特許文献１には、揮発性メモリのリフレッシュ制御をどのようなタイミングで実施するのか、といった点に関し言及がない。
【００２９】
次に、本発明者が検討したシステムクロックを用いたメモリコントローラによるリフレッシュ制御について説明する。
【００３０】
図２は、メモリコントローラ１の内部構成の一例を示す図である。
【００３１】
メモリコントローラ１は、バスを介してＣＰＵ（Central Processing Unit）及び揮発性メモリと接続されている。さらに、メモリコントローラ１は、揮発性メモリを含むシステムの内部で生成されたシステムクロック２０１を受け付ける。
【００３２】
メモリコントローラ１は、リフレッシュ制御レジスタ１０と、リフレッシュクロック生成部２０と、リフレッシュ要求生成部３０と、制御信号生成部４０と、を含んで構成されている。
【００３３】
リフレッシュ制御レジスタ１０は、ＣＰＵから受け付けた分周比情報を保持するためのレジスタである。分周比情報とは、システムクロック２０１の周期とリフレッシュ規格に基づき定まる情報である。リフレッシュ規格を満たすために必要な、システムクロック２０１の分周比に関する情報をリフレッシュ制御レジスタ１０は保持する。
【００３４】
リフレッシュクロック生成部２０は、リフレッシュ制御レジスタ１０が保持する分周比情報に基づき、供給されたシステムクロック２０１を分周する。リフレッシュクロック生成部２０は、分周したシステムクロック２０１をリフレッシュクロック２０２としてリフレッシュ要求生成部３０に出力する。
【００３５】
リフレッシュ要求生成部３０は、リフレッシュクロック２０２の立ち上がりに同期して、活性化したリフレッシュ要求信号２０３を制御信号生成部４０に出力する。なお、リフレッシュ要求信号２０３のアクティブはＨレベルとする。
【００３６】
制御信号生成部４０は、活性化したリフレッシュ要求信号２０３を受け付けると、リフレッシュコマンドを揮発性メモリに出力する。その際、制御信号生成部４０は、リフレッシュコマンドの発行が完了したことを示す信号として、活性化したリフレッシュ受付完了信号２０４をリフレッシュ要求生成部３０に出力する。リフレッシュ要求生成部３０は、活性化したリフレッシュ受付完了信号２０４を受け付けると、リフレッシュ要求信号２０３を非活性化する。なお、リフレッシュ受付完了信号２０４のアクティブはＨレベルとする。
【００３７】
図３は、リフレッシュ要求生成部３０の内部構成の一例を示す図である。
【００３８】
リフレッシュ要求生成部３０は、リフレッシュ調停部３１を含んで構成されている。リフレッシュ調停部３１は、リフレッシュクロック２０２を受け付け、リフレッシュ要求信号２０３を活性化する。また、リフレッシュ受付完了信号２０４を受け付けた場合には、リフレッシュ要求信号２０３を非活性化する。
【００３９】
リフレッシュ調停部３１は、フリップフロップＤＦＦ０１と、インバータ回路ＩＮＶ０１と、から構成されている。フリップフロップＤＦＦ０１は、リフレッシュクロック２０２をクロック端子で受け付け、データ入力端子及びプリセット端子を電源電圧ＶＣＣに接続する（Ｈレベルに固定する）。また、フリップフロップＤＦＦ０１のクリア端子により、リフレッシュ受付完了信号２０４をインバータ回路ＩＮＶ０１で反転した信号を受け付ける。フリップフロップＤＦＦ０１のデータ出力端子から出力する信号がリフレッシュ要求信号２０３となる。
【００４０】
リフレッシュ調停部３１は、リフレッシュクロック２０２の立ち上がりに同期して、活性化したリフレッシュ要求信号２０３を制御信号生成部４０に出力する。
【００４１】
次に、図２に示すメモリコントローラ１の動作について説明する。
【００４２】
図４は、メモリコントローラ１のリフレッシュ制御に関わる信号のタイミングチャートの一例を示す図である。
【００４３】
時刻ｔ０１において、リフレッシュクロック生成部２０が出力するリフレッシュクロック２０２は、Ｈレベルに遷移する。そのリフレッシュクロック２０２の立ち上がりを受けて、リフレッシュ要求生成部３０はリフレッシュ要求信号２０３を活性化する。
【００４４】
活性化したリフレッシュ要求信号２０３を受け付けた制御信号生成部４０は、リフレッシュコマンドを発行する（時刻ｔ０２）。その際、制御信号生成部４０は、リフレッシュ受付完了信号２０４を活性化する。なお、以降の図において、リフレッシュコマンドをＲＥＦと表記する
【００４５】
活性化したリフレッシュ受付完了信号２０４を受け付けたリフレッシュ要求生成部３０は、リフレッシュ要求信号２０３を非活性化する（Ｌレベルにセット；時刻ｔ０３）。メモリコントローラ１は、このようなリフレッシュコマンドの発行を繰り返すことで、リフレッシュ規格を遵守する。しかし、メモリコントローラ１のリフレッシュ制御では、無駄なリフレッシュコマンドが発行されてしまう。
【００４６】
ここでは、リフレッシュクロック２０２の周期が１５．２５μｓとして、どの程度余分なリフレッシュコマンドが発行されるか説明する。なお、規定リフレッシュ期間を６４ｍｓ、規定リフレッシュ回数を４０９６回とし、システムクロック２０１の分周比（リフレッシュクロック２０２の周期）は適切に選択されているとする。なお、分周比が適切に選択するとは、リフレッシュクロック生成部２０において選択可能な分周比のうち、選択した分周比から得られたリフレッシュクロック２０２がリフレッシュ規格を満たし、かつ、規定リフレッシュ期間内のリフレッシュクロック２０２の数と、規定リフレッシュ回数とが、最も近接するように分周比を選択すること意味する。
【００４７】
規定リフレッシュ期間の６４ｍｓの間に、リフレッシュクロック２０２は約４１９６回立ち上がる（６４ｍｓ／１５．２５μｓ）。従って、リフレッシュ要求信号２０３は６４ｍｓの期間に４１９６回、活性化し、リフレッシュコマンドも４１９６回発行される。しかし、規定リフレッシュ回数は４０９６回であるため、１００回のリフレッシュコマンドは余剰である。
【００４８】
このように、メモリコントローラ１は、余剰なリフレッシュコマンドを発行しつつ、システムクロック２０１を分周したリフレッシュクロック２０２に基づき揮発性メモリのリフレッシュ制御を行っている。
【００４９】
なお、上記のリフレッシュ規格におけるリフレッシュクロック２０２の理想的な周期は、１５．６２５μｓ（６４ｍｓ／４０９６回）である。しかし、システムクロック２０１の分周比の選択には制限があり、理想的な周期を持つリフレッシュクロック２０２を生成することができないのが通常である。即ち、システムクロック２０１に基づき揮発性メモリのリフレッシュタイミングを決定する限りは、揮発性メモリが要求するリフレッシュ規格を過不足なく満たすのは困難である。しかし、規定リフレッシュ回数に対して無駄なリフレッシュを行うことで、バスの利用効率が低下するという問題が生じる。また、無駄なリフレッシュの実行は、システム全体の消費電力の増加を招くという問題もある。
【００５０】
なお、リフレッシュクロックを独自に生成することで、無駄なリフレッシュを抑制する方法は採用することができない。何故ならば、理想的な周期を持つリフレッシュクロックを生成するためだけに、水晶発振子等を含むクロック生成回路を設けることはコスト的にも、基板面積的にも許容できないためである。
【００５１】
さらに、バスを介して送受信される情報が多くなると、バスの利用効率がそのままシステムの性能に直結することも多い（バスの性能がシステムのボトルネックとなる）。特に近年では、ＤＤＲ−ＳＤＲＡＭ（Double-Data-Rate Synchronous Dynamic Random Access Memory）のように、高速にデータ転送できる揮発性メモリが増加しており、バスの利用効率を更に向上させることが望まれる。
【００５２】
［第１の実施形態］
第１の実施形態について、図面を用いてより詳細に説明する。
【００５３】
図５は、本実施形態に係るメモリコントローラ２の内部構成の一例を示す図である。図５において図２と同一構成要素には、同一の符号を表し、その説明を省略する。
【００５４】
図２示すメモリコントローラ１と本実施形態に係るメモリコントローラ２の相違点は、ＰＷＭ（Pulse Width Modulation）制御レジスタ５０を備える点と、リフレッシュ要求生成部３０ａの内部構成である。
【００５５】
ＰＷＭ制御レジスタ５０は、ＣＰＵからバスを介して受け付けたＰＷＭ設定情報を保持するレジスタである。
【００５６】
図６は、リフレッシュ要求生成部３０ａの内部構成の一例を示す図である。
【００５７】
リフレッシュ要求生成部３０ａは、リフレッシュ調停部３１と、ＰＷＭ回路３２と、論理積回路ＡＮＤ０１と、を含んで構成されている。リフレッシュ調停部３１は、既に説明した通りであるので、さらなる説明は省略する。
【００５８】
ＰＷＭ回路３２は、ＰＷＭ設定情報が指示する周期及びデューティ比のＰＷＭ波形の出力が可能である。ＰＷＭ回路３２は、ＰＷＭ波形の出力が可能であれば、どのような構成であってもよく、その説明を省略する。なお、ＰＷＭ回路３２が出力するＰＷＭ波形をリフレッシュディセーブル信号２０５とする。
【００５９】
論理積回路ＡＮＤ０１は、ＰＷＭ回路３２が出力するリフレッシュディセーブル信号２０５を反転した信号と、リフレッシュクロック２０２を受け付ける。論理積回路ＡＮＤ０１の出力信号は、リフレッシュ調停部３１に出力される。論理積回路ＡＮＤ０１の出力信号をリフレッシュクロック２０６と表記し、リフレッシュクロック２０２と区別して以降の説明を行う。
【００６０】
論理積回路ＡＮＤ０１は、リフレッシュディセーブル信号２０５がＬレベルの場合には、リフレッシュクロック２０２をそのままリフレッシュクロック２０６としてリフレッシュ調停部３１に出力する。一方、論理積回路ＡＮＤ０１は、リフレッシュディセーブル信号２０５がＨレベルの場合には、リフレッシュクロック２０６をＬレベルにセットする。このように、論理積回路ＡＮＤ０１は、リフレッシュディセーブル信号２０５に応じて、リフレッシュクロック２０２をマスクする。従って、リフレッシュディセーブル信号２０５のアクティブはＨレベルである。
【００６１】
次に、メモリコントローラ２の動作について説明する。
【００６２】
図７は、メモリコントローラ２の動作の一例を示すフローチャートである。メモリコントローラ２は、概略以下の通り動作する。
【００６３】
リフレッシュクロック生成部２０は、システムクロックを分周して、リフレッシュクロックを生成する（ステップＳ０１）。リフレッシュ要求生成部３０ａは、リフレッシュクロック生成部２０が生成するリフレッシュクロック２０２に基づいてリフレッシュ要求信号２０３を制御信号生成部４０に出力する（ステップＳ０２）。
【００６４】
さらに、リフレッシュ要求生成部３０ａは、ＰＷＭ制御レジスタ５０が保持するＰＷＭ設定情報に基づいて、余剰なリフレッシュ要求信号２０３の出力を抑制する（ステップＳ０３）。例えば、リフレッシュクロック２０２の周期が１５．２５μｓであって、規定リフレッシュ期間が６４ｍｓ、規定リフレッシュ回数が４０９６であれば、１００回の余剰なリフレッシュ制御が実行されるのは上述の通りである。しかし、リフレッシュ要求生成部３０ａは、リフレッシュ調停部３１に出力するリフレッシュクロック２０２をマスクすることで、このような余剰なリフレッシュ制御の実行を抑制する。その際のリフレッシュクロック２０２の抑制に、ＰＷＭ回路３２が出力するリフレッシュディセーブル信号２０５を使用する。即ち、ＰＷＭ設定情報が指示する周期及びデューティ比は、余剰なリフレッシュクロック２０２のリフレッシュ調停部３１に対する供給を抑制するように定める。
【００６５】
図８は、メモリコントローラ２のリフレッシュ制御に関わる信号のタイミングチャートの一例を示す図である。
【００６６】
時刻ｔ０４において、リフレッシュクロック２０２が立ち上がる。また、リフレッシュディセーブル信号２０５（ＰＷＭ波形）はＬレベルに遷移する。リフレッシュ要求生成部３０ａでは、リフレッシュディセーブル信号２０５がＬレベルであるため、リフレッシュクロック２０２がそのままリフレッシュクロック２０６としてリフレッシュ調停部３１に出力される。
【００６７】
リフレッシュ調停部３１は、リフレッシュクロック２０６の立ち上がりに同期し、活性化したリフレッシュ要求信号２０３を制御信号生成部４０に出力する。
【００６８】
時刻ｔ０５において、制御信号生成部４０は、揮発性メモリに対しリフレッシュコマンドを発行すると共に、活性化したリフレッシュ受付完了信号２０４をリフレッシュ調停部３１に出力する。活性化したリフレッシュ受付完了信号２０４を受け付けたリフレッシュ調停部３１は、時刻ｔ０６において、リフレッシュ要求信号２０３を非活性化し、揮発性メモリに対するリフレッシュ要求を取り消す。メモリコントローラ２は、このような制御を時刻ｔ０７まで繰り返す。
【００６９】
時刻ｔ０７において、ＰＷＭ回路３２はリフレッシュディセーブル信号２０５を活性化する（Ｈレベルに設定する）。論理積回路ＡＮＤ０１には、Ｈレベルのリフレッシュディセーブル信号２０５が入力されるため、リフレッシュクロック２０２はマスクされ、リフレッシュクロック２０６の立ち上がり波形はリフレッシュ調停部３１に出力されない。そのため、リフレッシュ調停部３１はリフレッシュ要求信号２０３を活性化しない。
【００７０】
ＰＷＭ回路３２によるリフレッシュディセーブル信号２０５の活性化は時刻ｔ０８まで継続する。その後、時刻ｔ０８においてＰＷＭ回路３２が、リフレッシュディセーブル信号２０５を非活性化し、メモリコントローラ３は時刻ｔ０４以降の動作を継続して行う。
【００７１】
ここで、時刻ｔ０４〜ｔ０７の期間には、規定リフレッシュ回数と同数のリフレッシュ要求信号２０３が活性化されるようにＰＷＭ制御レジスタ５０が保持するＰＷＭ設定情報を定める。また、時刻ｔ０７〜ｔ０８の期間は、余剰なリフレッシュクロック２０２をマスクするようにＰＷＭ設定情報を定める。このように、メモリコントローラ２は、ＰＷＭ回路３２が出力するＰＷＭ波形（リフレッシュディセーブル信号２０５）に基づき、揮発性メモリのリフレッシュを制御する。即ち、ＰＷＭ設定情報は、システムクロック２０１の周期及びリフレッシュ規格に基づいて求められる。
【００７２】
以上、ＰＷＭ回路３２において、初めにリフレッシュ要求を行い、その後、余剰なリフレッシュを抑制するリフレッシュ制御について説明した。しかし、制御信号生成部４０に対しリフレッシュの要求を所定の回数行った後、余剰なリフレッシュを所定の回数分、抑制してもよい。例えば、１００回分のリフレッシュ要求を行った後、リフレッシュを１回抑制するといった制御も可能である。
【００７３】
本実施形態に係るメモリコントローラ２は、規定リフレッシュ回数に相当する４０９６回のリフレッシュ要求を一連の制御サイクルの先頭で行う（図８の時刻ｔ０４〜ｔ０７）。その後、規定リフレッシュ回数に相当するリフレッシュ要求を行った後は、余剰なリフレッシュ要求の発行を抑制する（図８の時刻ｔ０７〜ｔ０８）。その結果、システムクロック２０１を分周した１５．２５μｓのリフレッシュクロック２０２を使用しながらも、規定リフレッシュ期間（６４ｍｓ）の間に規定リフレッシュ回数である４０９６回に近いリフレッシュを実現できる。即ち、余剰なリフレッシュ要求の発行を抑制することで、揮発性メモリと接続するバスの利用効率を向上させることができる。さらに、余剰なリフレッシュを実行することもないので、システム全体の消費電力を抑制することができる。
【００７４】
さらに、メモリコントローラ２を含むシステムの仕様が変更になり、システムクロックの周期が変更になることがある。このような場合であっても、ＣＰＵからＰＷＭ制御レジスタ５０に書き込むＰＷＭ設定情報を適宜変更することで、システムクロックに関する仕様変更に柔軟に対応することができる。
【００７５】
［第２の実施形態］
続いて、第２の実施形態について図面を参照して詳細に説明する。
【００７６】
図９は、本実施形態に係るメモリコントローラ３の内部構成の一例を示す図である。図９において図５と同一構成要素には、同一の符号を付し、その説明を省略する。
【００７７】
メモリコントローラ２とメモリコントローラ３の相違点は、ＰＷＭ制御レジスタ５０に代えてリフレッシュカウントレジスタ６０を備える点と、リフレッシュ要求生成部３０ｂの内部構成である。
【００７８】
リフレッシュカウントレジスタ６０は、ＣＰＵからバスを介して受け付けたリフレッシュカウントレジスタ情報を保持するレジスタである。リフレッシュカウントレジスタ情報とは、リフレッシュクロック２０２をマスクするタイミングに関する情報である。
【００７９】
図１０は、リフレッシュ要求生成部３０ｂの内部構成の一例を示す図である。図１０において図６と同一構成要素には、同一の符号を表し、その説明を省略する。
【００８０】
リフレッシュ要求生成部３０ａとリフレッシュ要求生成部３０ｂの相違点は、ＰＷＭ回路３２に代えて、比較器ＣＭＰ０１とリフレッシュカウンタ３３を備える点である。
【００８１】
リフレッシュカウンタ３３は、リフレッシュクロック２０２をカウントし、カウント値をリフレッシュカウント値２０７として出力する。リフレッシュカウンタ３３は、リフレッシュカウント値２０７を比較器ＣＭＰ０１に出力する。また、リフレッシュカウンタ３３は、比較器ＣＭＰ０１の出力信号がＨレベルに遷移すると、リフレッシュカウント値２０７を初期化する（リセットする）。
【００８２】
比較器ＣＭＰ０１は、リフレッシュカウントレジスタ情報をリフレッシュカウントレジスタ６０から取得する。比較器ＣＭＰ０１は、リフレッシュカウントレジスタ情報とリフレッシュカウンタ３３が出力するリフレッシュカウント値２０７を比較し、比較結果をリフレッシュディセーブル信号２０８として出力する。比較器ＣＭＰ０１は、リフレッシュカウントレジスタ情報とリフレッシュカウント値２０７とが一致していない場合には、リフレッシュディセーブル信号２０８をＬレベルとする。
【００８３】
一方、リフレッシュカウントレジスタ情報とリフレッシュカウント値２０７とが一致している場合には、リフレッシュディセーブル信号２０８をＨレベルとする。なお、リフレッシュディセーブル信号２０８はリフレッシュディセーブル信号２０５と同等の働きをする。リフレッシュディセーブル信号２０８を反転した信号が論理積回路ＡＮＤ０１に入力される。
【００８４】
次に、メモリコントローラ３の動作について説明する。
【００８５】
図１１は、メモリコントローラ３のリフレッシュ制御に関わる信号のタイミングチャートの一例を示す図である。
【００８６】
時刻ｔ０９において、リフレッシュクロック２０２が立ち上がり、リフレッシュ要求信号２０３が活性化される（Ｈレベルに遷移する）。ここで、リフレッシュカウントレジスタ６０は、リフレッシュカウントレジスタ情報として「４０」が設定されているとする。なお、リフレッシュカウントレジスタ情報の「４０」は、システムクロック２０１の周期とリフレッシュ規格に基づき定まる値である。その決定方法は後述する。
【００８７】
リフレッシュカウントレジスタ情報の値は「４０」であるので、リフレッシュカウントレジスタ情報とリフレッシュカウント値２０７は一致しない。従って、比較器ＣＭＰ０１は、Ｌレベルのリフレッシュディセーブル信号２０８を出力する。リフレッシュディセーブル信号２０８がＬレベルであるため、リフレッシュクロック２０２がそのままリフレッシュ調停部３１に出力される。
【００８８】
リフレッシュ調停部３１は、リフレッシュクロック２０６の立ち上がり波形を受け付け、リフレッシュ要求信号２０３を活性化する（時刻ｔ１０）。活性化したリフレッシュ要求信号２０３を受け付けた制御信号生成部４０は、リフレッシュ受付完了信号２０４を活性化し、リフレッシュコマンドを揮発性メモリに発行する（時刻ｔ１０）。
【００８９】
活性化したリフレッシュ受付完了信号２０４を受け付けたリフレッシュ調停部３１は、リフレッシュ要求信号２０３を非活性化する（時刻ｔ１１）。メモリコントローラ３は、このような制御を時刻ｔ１２まで繰り返す。
【００９０】
時刻ｔ１２は、リフレッシュカウントレジスタ情報とリフレッシュカウント値２０７とが一致する時刻である。時刻ｔ１２において、比較器ＣＭＰ０１は活性化したリフレッシュディセーブル信号２０８を出力する。
【００９１】
リフレッシュ要求生成部３０ｂに含まれる論理積回路ＡＮＤ０１には、Ｈレベルのリフレッシュディセーブル信号２０８が入力されたため、リフレッシュクロック２０２の立ち上がりを入力しても、リフレッシュクロック２０６はＬレベルとなる。即ち、リフレッシュクロック２０２はマスクされ、リフレッシュクロック２０６の立ち上がり波形がリフレッシュ調停部３１に入力されることがない。従って、リフレッシュ調停部３１がリフレッシュ要求信号２０３を活性化することもない。
【００９２】
また、リフレッシュカウンタ３３は、リフレッシュディセーブル信号２０８のＨレベルを受け付けることで、次のリフレッシュクロック２０２の立ち下がりでリフレッシュカウント値２０７を初期化し、カウントを再び開始する（時刻ｔ１３）。以上のように、メモリコントローラ３は動作する。
【００９３】
リフレッシュカウントレジスタ情報には、予め計算された値が使用される。例えば、リフレッシュクロック２０２の周期は１５．２５μｓ、規定リフレッシュ期間は６４ｍｓ、規定リフレッシュ回数は４０９６回とする。この場合、１００回の余剰リフレッシュ要求がなされるのは上述の通りである。
【００９４】
そこで、メモリコントローラ３では、規定リフレッシュ回数である４０９６回を余剰なリフレッシュ回数である１００回で除算した値である「４０」をリフレッシュカウントレジスタ情報とする。すると、リフレッシュカウンタ３３がリフレッシュクロック２０２を４０回カウントするまでは、リフレッシュクロック２０２はマスクされることがないので、４０回のリフレッシュ要求がなされる。４０回のリフレッシュ要求がなされた後は、１回分のリフレッシュ要求が抑制される（図１１の時刻ｔ１２〜ｔ１３）。
【００９５】
このようなリフレッシュ要求の発行とリフレッシュ要求を抑制するサイクルを１００回繰り返すことで、規定リフレッシュ期間において規定リフレッシュ回数である４０９６回のリフレッシュ制御を実行することができる。即ち、規定リフレッシュ期間（６４ｍｓ）に生じる余剰なリフレッシュ要求（１００回）を抑制することができる。余剰なリフレッシュ要求の発行を抑制することで、揮発性メモリと接続するバスの利用効率を向上させることができる。さらに、余剰なリフレッシュを実行することもないので、システム全体の消費電力を抑制することができる。さらにまた、メモリコントローラ３は、均等間隔で余剰なリフレッシュ要求を抑制することから、バスの利用を均等化することができる（バスの利用効率がばらつくことがない）。
【００９６】
第１の実施形態に係るメモリコントローラ２において使用するＰＷＭ回路３２の回路規模は、比較的大きくなる。一方、本実施形態に係るメモリコントローラ３において使用するリフレッシュカウンタ３３及び比較器ＣＭＰ０１は小規模な回路で実現することができる。従って、チップ面積の増加を抑制しつつ、バスの利用効率を向上させるメモリコントローラが提供される。
【００９７】
［第３の実施形態］
続いて、第３の実施形態について図面を参照して詳細に説明する。
【００９８】
図１２は、本実施形態に係るメモリコントローラ４の内部構成の一例を示す図である。図１２において図９と同一構成要素には、同一の符号を付し、その説明を省略する。
【００９９】
メモリコントローラ３とメモリコントローラ４の相違点は、リフレッシュカウントレジスタ６０に代えて、リフレッシュ数設定レジスタ７０と、リフレッシュマスクレジスタ８０と、除算回路９０と、を備える点である。
【０１００】
リフレッシュ数設定レジスタ７０は、ＣＰＵからバスを介して受け付けたリフレッシュ数設定情報を保持するレジスタである。リフレッシュ数設定情報とは、規定リフレッシュ回数に相当する情報である。
【０１０１】
リフレッシュマスクレジスタ８０は、ＣＰＵからバスを介して受け付けたリフレッシュマスク情報を保持するレジスタである。リフレッシュマスク情報とは、システムクロックと規定リフレッシュ回数から計算される余剰なリフレッシュの回数に相当する情報である。
【０１０２】
除算回路９０は、リフレッシュ数設定レジスタ７０が保持するリフレッシュ数設定情報を、リフレッシュマスクレジスタ８０が保持するリフレッシュマスク情報で除算した結果をリフレッシュ要求生成部３０ｂに出力する。
【０１０３】
具体的には、リフレッシュクロック２０２の周期は１５．２５μｓ、規定リフレッシュ期間は６４ｍｓ、規定リフレッシュ回数は４０９６回とする。この場合、１００回の余剰リフレッシュ要求がなされる。そこで、リフレッシュ数設定情報に４０９６を、リフレッシュマスク情報に１００を設定し、除算回路９０でこれらを除算した結果を出力する。除算した結果の小数点以下を切り捨て、計算結果「４０」を比較器ＣＭＰ０１に出力する。
【０１０４】
比較器ＣＭＰ０１は、除算回路９０が出力する結果とリフレッシュカウント値２０７を比較し、リフレッシュ要求の発行又は抑制を決定する。なお、メモリコントローラ４の動作は、メモリコントローラ３と相違する点はないので、さらなる説明を省略する。
【０１０５】
このように、予めリフレッシュカウントレジスタ情報を算出しておくのではなく、メモリコントローラ４の内部でリフレッシュカウントレジスタ情報に相当する情報を生成してもよい。メモリコントローラ４においても、バスの利用効率を向上、消費電力の抑制及びバスの利用効率の均等化、が実現できる。
【０１０６】
［第４の実施形態］
続いて、第４の実施形態について図面を参照して詳細に説明する。
【０１０７】
本実施形態においては、液晶パネル等を用いた画像表示システムに使用される揮発性メモリを制御するシステムについて説明する。
【０１０８】
図１３は、メモリ制御システム５の構成の一例を示す図である。図１３において図５と同一構成要素には、同一の符号を表し、その説明を省略する。
【０１０９】
メモリ制御システム５は、ＣＰＵ３０１と、システムクロック生成部３０２と、画像チップ３０３と、メモリコントローラ３０４と、揮発性メモリ３０５と、を含んで構成されている。
【０１１０】
ＣＰＵ３０１は、メモリコントローラ３０４や画像チップ３０３等の各部を制御する。システムクロック生成部３０２は、システムクロックを生成する。
【０１１１】
画像チップ３０３は、液晶パネル（図１３において図示せず）を駆動するドライバ（図示せず）のコントローラとして使用され、ドライバに対して各種の制御信号を出力する。また、揮発性メモリ３０５は、ドライバに供給する画像信号を記憶する。
【０１１２】
画像チップ３０３は、垂直同期信号ＶＳＹＮＣを出力する。この垂直同期信号ＶＳＹＮＣは、本来、液晶パネル等を駆動するドライバに供給する制御信号であるが、メモリ制御システム５においては、メモリコントローラ３０４にも供給する。垂直同期信号ＶＳＹＮＣは、画像ライン表示の切り替わりの信号として使用され、画像信号の転送が行われない「ブランク期間」を判別することができる。なお、垂直同期信号ＶＳＹＮＣがＬレベルの期間が、ブランク期間に相当する。
【０１１３】
メモリコントローラ３０４では、このブランク期間の間にリフレッシュ制御を実施することで、システムの性能向上を実現する。揮発性メモリ３０５から液晶パネル等のドライバに対し、画像信号を転送している最中に揮発性メモリ３０５のリフレッシュ制御を行うと、画像信号の転送が安定せず、表示画面にノイズが生じる可能性がある。そこで、メモリコントローラ３０４は、垂直同期信号ＶＳＹＮＣを利用し、画像信号の転送が行われていない期間に揮発性メモリ３０５のリフレッシュを実行する。
【０１１４】
図１４は、リフレッシュ要求生成部３０ｃの内部構成の一例を示す図である。
【０１１５】
リフレッシュ要求生成部３０ｃは、その内部に含まれる論理積回路ＡＮＤ０１において、垂直同期信号ＶＳＹＮＣを反転した信号と、リフレッシュクロックを受け付ける。垂直同期信号ＶＳＹＮＣがＬレベルの期間（ブランク期間）は、リフレッシュクロックの立ち上がり波形が論理積回路ＡＮＤ０１からリフレッシュ調停部３１に出力され、揮発性メモリ３０５のリフレッシュが行われる。一方、垂直同期信号ＶＳＹＮＣがＨレベルの期間は、リフレッシュ調停部３１に対するリフレッシュクロックの供給が抑制される。従って、垂直同期信号ＶＳＹＮＣがＨレベルの期間は、揮発性メモリ３０５のリフレッシュは行われない。
【０１１６】
図１５は、メモリ制御システム５における各種信号のタイミングチャートの一例を示す図である。時刻ｔ１４〜ｔ１５の期間において、メモリコントローラ３０４に対して、Ｌレベルの垂直同期信号ＶＳＹＮＣが供給される。時刻ｔ１４〜ｔ１５の期間は、上述のブランク期間であるため、揮発性メモリ３０５から液晶パネル等のドライバに対して画像信号の転送がなされない。このブランク期間に揮発性メモリ３０５のリフレッシュを実施することで、液晶パネル等に生じるノイズ等を抑制することができる。このように、図１３に示すメモリ制御システム５は、液晶パネル等に供給する画像信号を保持する揮発性メモリ３０５のリフレッシュ制御を好適に実施する。
【０１１７】
なお、引用した上記の特許文献等の各開示は、本書に引用をもって繰り込むものとする。本発明の全開示（請求の範囲を含む）の枠内において、さらにその基本的技術思想に基づいて、実施形態ないし実施例の変更・調整が可能である。また、本発明の請求の範囲の枠内において種々の開示要素（各請求項の各要素、各実施形態ないし実施例の各要素、各図面の各要素等を含む）の多様な組み合わせ、ないし、選択が可能である。すなわち、本発明は、請求の範囲を含む全開示、技術的思想にしたがって当業者であればなし得るであろう各種変形、修正を含むことは勿論である。例えば、リフレッシュ要求信号２０３を初めとした各種信号の活性化レベルを適宜変更し、回路を構成することができるのは当然である。
【符号の説明】
【０１１８】
１〜４、３０４、４００  メモリコントローラ
５  メモリ制御システム
１０  リフレッシュ制御レジスタ
２０、４０１  リフレッシュクロック生成部
３０、３０ａ、３０ｂ、３０ｃ、４０３  リフレッシュ要求生成部
３１  リフレッシュ調停部
３２  ＰＷＭ回路
３３  リフレッシュカウンタ
４０、４０２  制御信号生成部
５０  ＰＷＭ制御レジスタ
６０  リフレッシュカウントレジスタ
７０  リフレッシュ数設定レジスタ
８０  リフレッシュマスクレジスタ
９０  除算回路
２０１  システムクロック
２０２、２０６  リフレッシュクロック
２０３  リフレッシュ要求信号
２０４  リフレッシュ受付完了信号
２０５、２０８  リフレッシュディセーブル信号
２０７  リフレッシュカウント値
３０１  ＣＰＵ
３０２  システムクロック生成部
３０３  画像チップ
３０５  揮発性メモリ
ＡＮＤ０１  論理積回路
ＣＭＰ０１  比較器
ＤＦＦ  フリップフロップ
ＩＮＶ０１  インバータ回路
【図１】
0005917307.tif 000002
【図２】
0005917307.tif 000003
【図３】
0005917307.tif 000004
【図４】
0005917307.tif 000005
【図５】
0005917307.tif 000006
【図６】
0005917307.tif 000007
【図７】
0005917307.tif 000008
【図８】
0005917307.tif 000009
【図９】
0005917307.tif 000010
【図１０】
0005917307.tif 000011
【図１１】
0005917307.tif 000012
【図１２】
0005917307.tif 000013
【図１３】
0005917307.tif 000014
【図１４】
0005917307.tif 000015
【図１５】
0005917307.tif 000016