(57)【要約】【課題】可変とされる動作周波数を利用した場合でも性能の低下を招かず最適な信号処理が実現される情報処理装置や情報処理方法を提供する。【解決手段】周波数が可変とされる同期クロックCLKｖの周波数情報Infqが演算処理される周波数情報演算部１２と、前記同期クロックが動作用のクロックとして供給されると共に前記周波数情報演算部１２で演算処理された結果に応じたタイミングで情報処理を行う情報処理部１１と設け、無駄な時間待ちなどを省いた最適化した処理を進める。【選択図】図１
2006127533.tif 000002
【特許請求の範囲】
【請求項１】
周波数が可変とされるクロック信号を発生するクロック発生手段と、
前記クロック信号発生手段から出力される前記クロック信号に同期して待ち時間が互いに異なる複数の情報処理を実行する情報処理手段と、
前記クロック発生手段から出力される前記クロック信号の周波数情報に基づいて前記情報処理に応じた待ち時間を演算し、演算結果に応じたタイミングで当該情報処理を実行するように前記情報処理手段を制御するタイミング制御手段と
を備える情報処理装置。
【請求項２】
前記クロック信号の周波数情報は、現在又は現在より後に前記クロック発生手段から出力されるクロック信号の周波数情報である
請求項１に記載の情報処理装置。
【請求項３】
前記周波数情報は、前記クロック信号の周波数がコード化された情報である
請求項１に記載の情報処理装置。
【請求項４】
前記タイミング制御手段は、前記クロック信号の周波数情報に対応した信号周期を加算処理することで前記情報処理に応じた待ち時間を演算する
請求項１に記載の情報処理装置。
【請求項５】
周波数が可変として出力されるクロック信号に同期して待ち時間が互いに異なる複数の情報処理を実行する情報処理手段と、
前記クロック信号の周波数情報に基づいて前記情報処理に応じた待ち時間を演算し、演算結果に応じたタイミングで当該情報処理を実行するように前記情報処理手段を制御するタイミング制御手段と
を備える情報処理装置。
【請求項６】
前記クロック信号の周波数情報は、現在又は現在より後に出力されるクロック信号の周波数情報である
請求項５に記載の情報処理装置。
【請求項７】
前記周波数情報は、前記クロック信号の周波数がコード化された情報である
請求項５に記載の情報処理装置。
【請求項８】
前記タイミング制御手段は、前記クロック信号の周波数情報に対応した信号周期を加算処理することで前記情報処理に応じた待ち時間を演算する
請求項５に記載の情報処理装置。
【請求項９】
周波数が可変とされるクロック信号を発生するクロック発生手段と、
電荷を蓄積することで情報を格納できるメモリセルに対する情報の読み出しまたは書き込みに関する、待ち時間が互いに異なる複数の処理を、前記クロック信号発生手段から出力される前記クロック信号に同期して実行する情報記憶手段と、
前記クロック発生手段から出力される前記クロック信号の周波数情報に基づいて、前記処理に応じた待ち時間を演算し、演算結果に応じたタイミングで当該処理を実行するように前記情報処理手段を制御するタイミング制御手段と
を備える情報記憶装置。
【請求項１０】
前記クロック信号の周波数情報は、現在又は現在より後に前記クロック発生手段から出力されるクロック信号の周波数情報である
請求項９に記載の情報記憶装置。
【請求項１１】
前記周波数情報は、前記クロック信号の周波数がコード化された情報である
請求項９に記載の情報記憶装置。
【請求項１２】
前記タイミング制御手段は、前記クロック信号の周波数情報に対応した信号周期を加算処理することで、前記メモリセルに対する情報の読み出しまたは書き込みに関する処理に応じた待ち時間を演算する
請求項９に記載の情報記憶装置。
【請求項１３】
電荷を蓄積することで情報を格納できるメモリセルに対する情報の読み出しまたは書き込みに関する、待ち時間が互いに異なる複数の処理を、周波数が可変として出力されるクロック信号に同期して実行する情報記憶手段と、
前記クロック発生手段から出力される前記クロック信号の周波数情報に基づいて、前記処理に応じた待ち時間を演算し、演算結果に応じたタイミングで当該処理を実行するように前記情報処理手段を制御するタイミング制御手段と
を備える情報記憶装置。
【請求項１４】
前記クロック信号の周波数情報は、現在又は現在より後に出力されるクロック信号の周波数情報である
請求項１３に記載の情報記憶装置。
【請求項１５】
前記周波数情報は、前記クロック信号の周波数がコード化された情報である
請求項１３に記載の情報記憶装置。
【請求項１６】
前記タイミング制御手段は、前記クロック信号の周波数情報に対応した信号周期を加算処理することで、前記メモリセルに対する情報の読み出しまたは書き込みに関する処理に応じた待ち時間を演算する
請求項１３に記載の情報記憶装置。
【請求項１７】
周波数が可変とされるクロック信号を発生し、
前記クロック信号に同期して待ち時間が互いに異なる複数の情報処理を実行し、
前記クロック信号の周波数情報に基づいて前記情報処理に応じた待ち時間を演算し、演算結果に応じたタイミングで当該情報処理を実行するように制御する
ステップを含む情報処理方法。
【請求項１８】
前記情報処理は、電荷を蓄積することで情報を格納できる複数のメモリセルに対する前記情報の読み出しまたは書き込みに関する処理を含み、前記メモリセルの一部から増幅器までの電荷の取出し動作、前記増幅器についての入出力動作、及び前記増幅器から前記メモリセルに対して電荷を蓄積させる動作の少なくとも１つを含む
請求項１７に記載の情報処理方法。
【請求項１９】
周波数が可変として出力されるクロック信号に同期して待ち時間が互いに異なる複数の情報処理を実行し、
前記クロック信号の周波数情報に基づいて前記情報処理に応じた待ち時間を演算し、演算結果に応じたタイミングで当該情報処理を実行するように制御する
ステップを含む情報処理方法。
【請求項２０】
前記情報処理は、電荷を蓄積することで情報を格納できる複数のメモリセルに対する前記情報の読み出しまたは書き込みに関する処理を含み、前記メモリセルの一部から増幅器までの電荷の取出し動作、前記増幅器についての入出力動作、及び前記増幅器から前記メモリセルに対して電荷を蓄積させる動作の少なくとも１つを含む
請求項１９に記載の情報処理方法。
【請求項２１】
周波数が可変とされるクロック信号を発生し、
前記クロック信号に同期して待ち時間が互いに異なる複数の情報処理を実行し、
前記クロック信号の周波数情報に基づいて前記情報処理に応じた待ち時間を演算し、演算結果に応じたタイミングで当該情報処理を実行するように制御する
ステップを含む情報処理プログラム。
【請求項２２】
前記情報処理は、電荷を蓄積することで情報を格納できる複数のメモリセルに対する前記情報の読み出しまたは書き込みに関する処理を含み、前記メモリセルの一部から増幅器までの電荷の取出し動作、前記増幅器についての入出力動作、及び前記増幅器から前記メモリセルに対して電荷を蓄積させる動作の少なくとも１つを含む
請求項２１に記載の情報処理プログラム。
【請求項２３】
周波数が可変として出力されるクロック信号に同期して待ち時間が互いに異なる複数の情報処理を実行し、
前記クロック信号の周波数情報に基づいて前記情報処理に応じた待ち時間を演算し、演算結果に応じたタイミングで当該情報処理を実行するように制御する
ステップを含む情報処理プログラム。
【請求項２４】
前記情報処理は、電荷を蓄積することで情報を格納できる複数のメモリセルに対する前記情報の読み出しまたは書き込みに関する処理を含み、前記メモリセルの一部から増幅器までの電荷の取出し動作、前記増幅器についての入出力動作、及び前記増幅器から前記メモリセルに対して電荷を蓄積させる動作の少なくとも１つを含む
請求項２３に記載の情報処理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は所要の同期クロックが供給されて動作するメモリ装置、その他のデバイスなどの情報処理装置、情報記憶装置、情報処理方法、及び情報処理プログラムに関し、特に同期クロックの周波数が変化した場合でも最適な信号処理動作を実現し得るための情報処理装置、情報記憶装置、情報処理方法、及び情報処理プログラムに関する。
【背景技術】
【０００２】
パーソナルコンピュータやＰＤＡ（Personal Digital Assistance）などの電子機器は、そのシステム構成として複数のＬＳＩ（Large-Scale Integrated Circuit）を内部に配設し、それらＬＳＩの信号の入出力や信号処理に同期クロックを用いているものが広く利用されている。一般に同期動作を行うところは、その信号の周波数に比例して全体の動作速度が決まるように構成されており、このような同期動作を行う素子としては、ＣＰＵ（Central Processing Unit）やメモリ、ノースブリッジなどが挙げられる。
【０００３】
一方、常に一定の動作周波数ではなく、装置の動作周波数を可変とする例も知られている。例えば、パーソナルコンピュータ、ＰＤＡ、携帯電話機などの電子機器では、使用状態に応じて必要な動作だけをするように工夫されてきており、例えば待機時やスリープモードの際には、動作周波数を低く制御して低消費電力化を図り、通話時や動画像の信号処理時には動作周波数を高くして高速な演算処理を実現するシステムも増加してきている（例えば、特許文献１参照。）。
【０００４】
【特許文献１】特開２０００−１６３９６５号公報
【０００５】
このような動作周波数を可変とするシステムは、その可変な動作周波数がクロックとして供給される領域が、通常、周波数を変更してはいけない固定周波数の部分とは切り離されており、動作周波数を変化させた場合でも固定周波数で動作する領域には悪影響が現れないように構成されている。
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかしながら、上述の可変とされる動作周波数の信号をそのまま同期信号として用いる情報処理装置では、高い周波数であっても低い周波数でも安定した動作が実現されることが求められており、一般に高い周波数でも、すなわち短いクロック間隔でも動作を保証するように設計した場合で逆に低い周波数で動作させた場合では、その信号処理の性能は低下した周波数に比例したものになってしまう。このような単純な動作速度の低減によっても低消費電力化が可能ではあるが、最適化されて制御されているとは言い難く、さらなる高性能な制御が求められている。
【０００７】
そこで、本発明は、上述の技術的な課題に鑑み、可変とされる動作周波数を利用した場合でも性能の低下を招かず最適な信号処理が実現される情報処理装置、情報記憶装置、情報処理方法、及び情報処理プログラムの提供を目的とする。
【課題を解決するための手段】
【０００８】
本発明の一側面は、周波数が可変とされるクロック信号を発生するクロック発生手段と、前記クロック信号発生手段から出力される前記クロック信号に同期して待ち時間が互いに異なる複数の情報処理を実行する情報処理手段と、前記クロック発生手段から出力される前記クロック信号の周波数情報に基づいて前記情報処理に応じた待ち時間を演算し、演算結果に応じたタイミングで当該情報処理を実行するように前記情報処理手段を制御するタイミング制御手段とを備える情報処理装置である。
【０００９】
前記クロック信号の周波数情報は、現在又は現在より後に前記クロック発生手段から出力されるクロック信号の周波数情報であるようにすることができる。
【００１０】
前記周波数情報は、前記クロック信号の周波数がコード化された情報であるようにすることができる。
【００１１】
前記タイミング制御手段は、前記クロック信号の周波数情報に対応した信号周期を加算処理することで前記情報処理に応じた待ち時間を演算することができる。
【００１２】
本発明の他の側面は、周波数が可変として出力されるクロック信号に同期して待ち時間が互いに異なる複数の情報処理を実行する情報処理手段と、前記クロック信号の周波数情報に基づいて前記情報処理に応じた待ち時間を演算し、演算結果に応じたタイミングで当該情報処理を実行するように前記情報処理手段を制御するタイミング制御手段とを備える情報処理装置である。
【００１３】
前記クロック信号の周波数情報は、現在又は現在より後に出力されるクロック信号の周波数情報であるようにすることができる。
【００１４】
前記周波数情報は、前記クロック信号の周波数がコード化された情報であるようにすることができる。
【００１５】
前記タイミング制御手段は、前記クロック信号の周波数情報に対応した信号周期を加算処理することで前記情報処理に応じた待ち時間を演算することができる。
【００１６】
本発明の一側面は、周波数が可変とされるクロック信号を発生するクロック発生手段と、電荷を蓄積することで情報を格納できるメモリセルに対する情報の読み出しまたは書き込みに関する、待ち時間が互いに異なる複数の処理を、前記クロック信号発生手段から出力される前記クロック信号に同期して実行する情報記憶手段と、前記クロック発生手段から出力される前記クロック信号の周波数情報に基づいて、前記処理に応じた待ち時間を演算し、演算結果に応じたタイミングで当該処理を実行するように前記情報処理手段を制御するタイミング制御手段とを備える情報記憶装置である。
【００１７】
前記クロック信号の周波数情報は、現在又は現在より後に前記クロック発生手段から出力されるクロック信号の周波数情報であるようにすることができる。
【００１８】
前記周波数情報は、前記クロック信号の周波数がコード化された情報であるようにすることができる。
【００１９】
前記タイミング制御手段は、前記クロック信号の周波数情報に対応した信号周期を加算処理することで、前記メモリセルに対する情報の読み出しまたは書き込みに関する処理に応じた待ち時間を演算することができる。
【００２０】
本発明の他の側面は、電荷を蓄積することで情報を格納できるメモリセルに対する情報の読み出しまたは書き込みに関する、待ち時間が互いに異なる複数の処理を、周波数が可変として出力されるクロック信号に同期して実行する情報記憶手段と、前記クロック発生手段から出力される前記クロック信号の周波数情報に基づいて、前記処理に応じた待ち時間を演算し、演算結果に応じたタイミングで当該処理を実行するように前記情報処理手段を制御するタイミング制御手段とを備える情報記憶装置である。
【００２１】
前記クロック信号の周波数情報は、現在又は現在より後に出力されるクロック信号の周波数情報であるようにすることができる。
【００２２】
前記周波数情報は、前記クロック信号の周波数がコード化された情報であるようにすることができる。
【００２３】
前記タイミング制御手段は、前記クロック信号の周波数情報に対応した信号周期を加算処理することで、前記メモリセルに対する情報の読み出しまたは書き込みに関する処理に応じた待ち時間を演算することができる。
【００２４】
本発明の一側面は、周波数が可変とされるクロック信号を発生し、前記クロック信号に同期して待ち時間が互いに異なる複数の情報処理を実行し、前記クロック信号の周波数情報に基づいて前記情報処理に応じた待ち時間を演算し、演算結果に応じたタイミングで当該情報処理を実行するように制御するステップを含む情報処理方法である。
【００２５】
前記情報処理は、電荷を蓄積することで情報を格納できる複数のメモリセルに対する前記情報の読み出しまたは書き込みに関する処理を含み、前記メモリセルの一部から増幅器までの電荷の取出し動作、前記増幅器についての入出力動作、及び前記増幅器から前記メモリセルに対して電荷を蓄積させる動作の少なくとも１つを含むようにすることができる。
【００２６】
本発明の他の側面は、周波数が可変として出力されるクロック信号に同期して待ち時間が互いに異なる複数の情報処理を実行し、前記クロック信号の周波数情報に基づいて前記情報処理に応じた待ち時間を演算し、演算結果に応じたタイミングで当該情報処理を実行するように制御するステップを含む情報処理方法である。
【００２７】
前記情報処理は、電荷を蓄積することで情報を格納できる複数のメモリセルに対する前記情報の読み出しまたは書き込みに関する処理を含み、前記メモリセルの一部から増幅器までの電荷の取出し動作、前記増幅器についての入出力動作、及び前記増幅器から前記メモリセルに対して電荷を蓄積させる動作の少なくとも１つを含むようにすることができる。
【００２８】
本発明の一側面は、周波数が可変とされるクロック信号を発生し、前記クロック信号に同期して待ち時間が互いに異なる複数の情報処理を実行し、前記クロック信号の周波数情報に基づいて前記情報処理に応じた待ち時間を演算し、演算結果に応じたタイミングで当該情報処理を実行するように制御するステップを含むことを特徴とする情報処理プログラムである。
【００２９】
前記情報処理は、電荷を蓄積することで情報を格納できる複数のメモリセルに対する前記情報の読み出しまたは書き込みに関する処理を含み、前記メモリセルの一部から増幅器までの電荷の取出し動作、前記増幅器についての入出力動作、及び前記増幅器から前記メモリセルに対して電荷を蓄積させる動作の少なくとも１つを含むようにすることができる。
【００３０】
本発明の他の側面は、周波数が可変として出力されるクロック信号に同期して待ち時間が互いに異なる複数の情報処理を実行し、前記クロック信号の周波数情報に基づいて前記情報処理に応じた待ち時間を演算し、演算結果に応じたタイミングで当該情報処理を実行するように制御するステップを含むことを特徴とする情報処理プログラムである。
【００３１】
前記情報処理は、電荷を蓄積することで情報を格納できる複数のメモリセルに対する前記情報の読み出しまたは書き込みに関する処理を含み、前記メモリセルの一部から増幅器までの電荷の取出し動作、前記増幅器についての入出力動作、及び前記増幅器から前記メモリセルに対して電荷を蓄積させる動作の少なくとも１つを含むようにすることができる。
【００３２】
本発明の一側面においては、周波数が可変とされるクロック信号が発生され、そのクロック信号に同期して待ち時間が互いに異なる複数の情報処理が実行され、クロック信号の周波数情報に基づいて情報処理に応じた待ち時間が演算され、その演算結果に応じたタイミングでその情報処理が実行されるように制御される。
【００３３】
本発明の他の側面においては、周波数が可変として出力されるクロック信号に同期して待ち時間が互いに異なる複数の情報処理が実行され、そのクロック信号の周波数情報に基づいて情報処理に応じた待ち時間が演算され、その演算結果に応じたタイミングでその情報処理が実行されるように制御される。
【発明の効果】
【００３４】
本発明の側面によれば、クロック周波数の変化時に周波数情報Infqが時間待ちの計算などの演算処理に用いられる。このため余分な待ち時間を省いた極めて高速な処理が実現されることになり、換言すれば、高速動作を実現しながらも、待機時やスリープモード時などの期間では逆に消費電力を抑えることができることになる。従って、PDAやパーソナルコンピュータに使用した場合では、高速動作と低消費電力の双方を実現できることになる。
【発明を実施するための最良の形態】
【００３５】
本発明の情報処理装置の一例として情報記憶装置であるメモリ装置の例について図面を参照しながら説明する。本実施の形態のメモリ装置は、SDRAM（Synchronous Dynamic Random Access Memory）からなるメモリ１１と、その制御のためのメモリコントローラ１２と、周波数情報Infqを出力する周波数制御部１３とを主な構成としている。
【００３６】
メモリ１１は、本実施の形態においては、シンクロナス（同期型）DRAMであり、はじめに読み出し開始アドレスを入力すれば、クロック信号CLKvに同期してデータを連続的に出力することができ、比較的に高速なデータ送出が可能である。特に、本実施の形態では、クロック信号CLKvは可変であり、一例を示せば１０MHｚ、３３MHｚ、５０MHｚ、１００MHｚ、１３３MHｚなどのクロック周波数を当該情報処理装置の使用状態や当該情報処理装置が搭載される電子機器の状態に応じて切り替えるように構成されている。可変なクロック信号CLKvは、システムのCPUの外部クロックである所謂ベースクロック自体であっても良く、当該メモリ１１の制御専用に生成されるクロック信号であっても良い。この可変なクロック信号CLKvは、周波数制御部１３から送出されるが、他の周波数発生回路系から直接供給されるものであっても良い。なお、メモリ１１の具体的な構造例については、後述するが、メモリ１１とメモリコントローラ１２が別のチップとされる構成であっても良く、メモリ１１はメモリコアとされ、メモリコントローラ１２と同じチップ内に設けられていても良い。メモリ１１にはこのような可変なクロック信号CLKvが供給されると共に、メモリコントローラ12からの制御信号Sigや、図示しないロウアドレス、カラムアドレス、データ入出力などの信号線が接続する。また、本実施の形態では、メモリ１１はシンクロナスDRAMであるが、通常のDRAMやファーストページDRAM、EDO  DRAM（Extended Data Out Dynamic Random Access Memory）などであっても良く、SDRAMもDDR  SDRAM (Double Date Rate Synchronous Dynamic Random Access Memory)であっても良く、DRDRAM（Direct Rambus Dynamic Random Access Memory）などのメモリでも良い。さらに、メモリ１１はDRAMに限らず、SRAM（Static Random Access Memory）やROM（Read-Only Memory）、フラッシュメモリなどであっても良い。また、本明細書においてメモリを含んで構成されるメモリ装置若しくは情報処理装置としては、メモリ部を内蔵したマイコンやその他の信号処理チップなどであっても良い。
【００３７】
メモリコントローラ１２はメモリ１１の動作を制御するための制御信号Sigを出力するためのデバイスであり、制御信号SigはCS（チップセレクト）、RAS（ロウアドレスストローブ）、CAS（カラムアドレスストローブ）、WE（ライトイネーブル）、CKEなどの各種信号を総称したものであり、複数の信号からなる信号群を意味する。このメモリコントローラ１２にも可変なクロック信号CLKvが供給され、制御信号Sigの出力タイミングを同期させるようにしている。更に、このメモリコントローラ１２では、周波数制御部１３からの周波数情報Infqが入力されており、この周波数情報Infqに、クロック信号CLKvに関する周波数の情報が含まれる。この周波数情報Infqは現在のクロック信号CLKvについての情報とすることができるが、時間軸上先のクロック信号CLKvについての周波数情報Infqであっても良い。一例として周波数情報Infqはコード化されており、コード化の例については後述する。また、周波数情報Infqは可変なクロック信号CLKv自体やその線形変換した情報であっても良い。メモリコントローラ１２では、入力した周波数情報Infqを用いて演算処理が行われ、後述するような演算結果を反映したメモリ１１の最適な制御が行われる。
【００３８】
周波数制御部１３は周波数情報Infqを出力する回路部であり、本実施の形態では可変なクロック信号CLKvも当該周波数制御部１３から出力されるように構成される。周波数制御部１３はCPUなどからのコマンドに応じて、発生させるクロック信号CLKvの周波数を変えられるように構成されており、例えば、ソフトオフ時、待機時、スリープモード時などでは動作クロックを落として電力消費を低下させることが可能となる。この周波数制御部１３もメモリ１１やメモリコントローラ１２と同じチップとする構成でも良く、それぞれ別個のチップとしても良い。
【００３９】
図２は本実施の形態のメモリ装置の動作を説明するタイムチャートであり、図２の（A）は１００MHｚの固定した周波数でのメモリ１１のリード（読み出し）動作を示す図であり、図２の（B）は比較例の動作を示す図であって、可変な周波数にそのまま固定したタイミングで動作させる場合の処理を示す図であり、図２の（C）は周波数情報から計算する制御方法の例である。図２の（A）〜（C）において信号CLKは固定クロック信号であり、信号CLKvは可変クロック信号であり、コマンド（Command）信号の部分の中、"A"はアクティベート動作、"R"はリード動作、"P"はプリチャージ動作のそれぞれコマンド発行の期間を示す。
【００４０】
SDRAMの制御においては、通常、アクティベート動作からプリチャージ動作までの時間であるTras (RASアクティベート時間)、アクティベート動作からリード動作までの時間であるTrcd (RAS-CAS遅延時間)、プリチャージ動作からアクティベート動作までの時間であるTrp (プリチャージ時間)などのパラメータがあり、コマンド発行には最低でもこれらの時間だけ待つ必要があり、待たない場合には動作保証されないことになる。
【００４１】
ここで本実施の形態における可変周波数のクロック信号に応じた動作を説明する前に、周波数が変化しない固定周波数の場合について簡単に説明すると、動作クロックの周波数が所定の周波数に固定の場合、その最適化は比較的に容易なものとなる。すなわち、図２の（A）に示すように、１００MHｚの固定周波数で動作させる場合には、当該SDRAMの時間パラメータ{ Tras, Trcd, Trp}が{40ns,20ns,20ns}、ＣＡＳレイテンシーが２である時では、RASアクティベート時間Trasが４クロック、RAS-CAS遅延時間Trcdが２クロック、プリチャージ時間Trpが２クロックのそれぞれ待ち時間となり、この１００MHｚの固定周波数での動作では最適に制御されている。
【００４２】
ところが、動作クロックの周波数を可変とした場合に、そのまま固定周波数の制御方式を用いたときでは、1クロックの期間が長くなった低周波数部分で余分な時間待ちが生じ、これが全体としては性能の低下をもたらす。すなわち、図２の（B）に示すように、最初のアクティベート動作（"A"）のコマンド発行のクロックの立ち上がりで開始するRASアクティベート時間Trasは４クロック分の期間のままであり、図２の（B）では最初の２クロックの周波数が５０MHｚという半分のクロック周波数であるため、本来必要な待ち時間は過ぎているにも拘わらず、丁度１００MHｚの２クロック分だけ長いRASアクティベート時間Trasとなってしまう。次のアクティベート動作（"A"）のRASアクティベート時間Trasは、１００MHｚの3クロック分だけ長いRASアクティベート時間Trasとなってしまう。 同様にRAS-CAS遅延時間Trcd、プリチャージ時間Trpも動作クロック周波数の変化に応じて余分な待ち時間が生じてしまう。
【００４３】
そこで、本実施の形態のメモリ装置では、動作クロックの周波数が変化した場合でも、周波数情報Infqが用いられて的確な演算処理が行われ、図２の（C）に示すように、その周波数に応じた信号処理が行われる。すなわち、メモリコントローラ１２には、図１に示したように周波数制御部１３から周波数情報Infqがデータとして送出されており、このメモリコントローラ１２ではクロック信号の周期を算出できる。従って、余分にコマンド発行のタイミングが待たされる場合には、その前にメモリコントローラ１２からメモリ１３に対してコマンドを発行し、無駄のない高速な処理が実現されることになる。図２の（C）を用いて詳しく説明すると、メモリコントローラ１２が周波数制御部１３からアクティベート動作（"A"）のコマンド発行終了後に続く周波数情報Infqとして５０MHｚであるとの情報をリード動作（"R"）のコマンド発行のタイミングの少なくとも１つ前のクロックの部分で受け取っており、その周波数情報Infqに基づいてアクティベート動作（"A"）のコマンド発行用のクロックに続いて連続的に次のリード動作（"R"）のコマンド発行のタイミングが追従する。仮に本実施の形態のメモリ装置を用いない場合では、図２の（A）や（B）に示すように、１クロック分だけ離間してリード動作（"R"）のコマンドの発行のタイミングが来ることになるが、本実施の形態のメモリ装置では場合、周波数制御部１３からの周波数情報Infqによってアクティベート動作（"A"）のコマンド発行と次のリード動作（"R"）のコマンド発行のタイミングを連続的としても必要な動作が確保されることがメモリコントローラ１２で既に認識されている。従って、連続的なコマンド発行を行ってメモリ１１を最適に制御し、余分な待ち時間などを省いて全体的な高速化を図ることができる。
【００４４】
メモリコントローラは、少なくともアクティベート動作（"A"）のコマンド発行終了時から次のリード動作（"R"）のコマンド発行終了するまでの期間の周波数情報Infqに基づいて必要なウェイト時間であるRAS-CAS遅延時間Trcdを満たす場合にリード動作（"R"）のコマンドを発行してもよい。またはリード動作（"R"）のコマンド発行中の周波数が100MHｚであると仮定して、リード動作（"R"）のコマンド発行前までの周波数情報Infqに基づき、必要なウェイト時間であるRAS-CAS遅延時間Trcdを満たす場合にリード動作（"R"）のコマンドを発行してもよい。また同様に、メモリコントローラは、周波数情報Infqに基づいて、必要なウェイト時間を満たし、プリチャージ時間TrpやRASアクティベート時間Trasが最適に短くなるようにアクティベート動作（"A"）のコマンドやプリチャージ動作（"P"）のコマンドの発行を行う。
【００４５】
ここで必要な動作が確保されることがメモリコントローラ１２で既に認識される点についてさらに説明すると、図２の（C）では、２クロック目が周波数情報Infqによって５０MHｚと認識され、その周期が２０nsであることが計算されることになる。ここでRAS-CAS遅延時間Trcdは本SDRAMでは２０nsであり、クロックの周期が２０nsであれば確保されることが分かる。従って、メモリコントローラ１２はアクティベート動作（"A"）のコマンド発行と次のリード動作（"R"）のコマンド発行を連続クロックとする制御を行い、この連続的なコマンドの発行によって余分な待ち時間などを省き、全体的な高速化が実現される。
【００４６】
次に、周波数情報Infqについて図３及び図４を参照して更に詳しく説明する。周波数情報Infqは、一例として可変クロック信号CLKvの周波数を指標するデータビットとすることができる。周波数情報Infqは、図３の（A）に示すように、現在の動作クロック信号CLKvの周波数を示すものであっても良く、或いは図３の（B）に示すように、動作クロック信号CLKvの周波数の変化に先行して次のクロックの周波数を指標するようにしても良い。また、図示を省略するが、周波数の変化点だけを指標する信号であっても良く、さらに、未来の動作クロック信号CLKvとして次のクロックのものに限定されず、所定数の複数クロック後の周波数を指標するようにしても良い。
【００４７】
クロックの周波数を指標する方法としては、周波数情報Infqとしてコード化した情報を用い、それをデコードして利用することができる。図４には、2種類のエンコード方法をテーブル形式で示すが、エンコード方法はこれらのものに限定されず他の符号化方法を用いても良い。図４の（A）のエンコード方法は可変なクロック信号CLKvの周波数に合わせてそれぞれ２ビットのデータを割り当てる例である。本例では、クロック信号CLKvの周波数が１０MHｚの時に｛００｝が割り当てられ、周波数が３３MHｚの時に｛０１｝が割り当てられ、周波数が５０MHｚの時に｛１０｝が割り当てられ、周波数が１００MHｚの時に｛１１｝が割り当てられる。この方式では、周波数が１０倍変化した場合、例えばクロック信号の周波数が１０MHｚから１００MHｚに変化した場合でも、データ長は2ビットのままであり、デコードの際の処理や回路構成を複雑化せずに処理できることになる。
【００４８】
図４の（B）のエンコード方法は可変なクロック信号CLKvの周波数の逆数に合わせたデータを割り当てる例である。クロック信号CLKvの周波数の逆数は各周波数における１クロック分の周期に対応する。本例では、クロック信号CLKvの周波数が１０MHｚの時に｛１０｝が割り当てられ、周波数が３３MHｚの時に｛３｝が割り当てられ、周波数が５０MHｚの時に｛２｝が割り当てられ、周波数が１００MHｚの時に｛１｝が割り当てられる。これらのデータは、データの表す値そのものが１クロック分の周期に対応することから、単純な乗算によって待ち時間などを形成することができる。すなわち、クロック信号CLKvの周波数が１０MHｚ、３３MHｚ、５０MHｚ、１００MHｚの時には、クロック周期は１００ns、３０ns、２０ns、１０nsであり、これらは先のデータ値に１０ns分を乗算することで容易に算出できることになる。
【００４９】
次に、図５及び図６を参照しながら、本実施の形態のメモリ装置について更に詳しく説明する。図５にはメモリコントローラ３０とメモリユニット３１が示されており、本実施の形態においては、メモリコントローラ３０に周波数情報Infqが入力されており、動作クロック信号の周波数が変化した場合においても最適化された動作を行う。
【００５０】
先ず、メモリコントローラ３０は前述の如き周波数制御部からの周波数情報Infqが入力されて、所定のタイミングでコマンドの発行を行う。図６は信号とコマンドの対応表の一例であり、バー記号は簡単のために省略している。CS（チップセレクト）信号が"L"（低レベル）となった時に、当該メモリユニット３１が選択されている状態となる。前述の如きアクティベート動作"A"、リード動作"R"、プリチャージ動作"P"のそれぞれコマンドは、RAS（ロウアドレスストローブ）、CAS（カラムアドレスストローブ）、WE（ライトイネーブル）の組み合わせによって形成される。具体的には、RAS信号が"L"レベル、CAS信号が"H"レベル、WE信号が"H"レベルの組み合わせでアクティベート動作のコマンドが構成され、RAS信号が"H"レベル、CAS信号が"L"レベル、WE信号が"H"レベルの組み合わせでリード（読み出し）動作のコマンドが構成され、RAS信号が"H"レベル、CAS信号が"L"レベル、WE信号が"L"レベルの組み合わせでライト（書き込み）動作のコマンドが構成され、RAS信号が"L"レベル、CAS信号が"H"レベル、WE信号が"L"レベルの組み合わせでプリチャージ動作のコマンドが構成される。従って、例えば前述のように、クロック信号CLKvの周波数が変化する場合において、図２の（C）の第２番目のクロックのように、アクティベート動作のためのコマンド発行からリード動作のためのコマンド発行を連続的に行う場合では、RAS信号が"L"レベル、CAS信号が"H"レベルであったものをRAS信号が"H"レベル、CAS信号が"L"レベルにそれぞれシフトさせるように信号を送出すれば良く、このレベルシフトを周波数制御部からの周波数情報Infqに基づく演算結果で行うようにしている。
【００５１】
メモリユニット３１は、メモリバンク５５と、各セルの充電された電荷を増幅させるセンスアンプ５６や、その他の周辺回路から構成される。メモリバンク５５は、実際にデータを記憶するものであり、複数のセル５５ａから構成されている。各セル５５ａは、コンデンサ状の構成となっており、データに対応して、各セル５５ａを電荷が充電された状態とするか、または、充電されない状態とすることにより、各セル５５ａの充電状態のパターンによりデータを記憶するものである。今の場合、セル５５ａは、１個のメモリバンク５５に対して８×８個設けられている例を示しているが、当然のことながら、セル５５ａの数は、これ以外の数であってもよい。
【００５２】
また、メモリバンク５５上の行毎のセル５５ａの集まりは、特にページ５５ｂと呼ばれる。さらに、メモリバンク５５は、図示しないリフレッシュ制御回路のリフレッシュタイミング発生器よりリフレッシュ信号が入力されるか、または、行セレクタ５３より読み出し信号が入力されると、信号が入力された行に対応するページ５５ｂ単位で、各セル５５ａの電荷をセンスアンプ５６に転送する。尚、図３中、メモリバンク５５の縦横に表示された番号（０乃至７）は、メモリバンク５５の各セル５５ａの垂直方向の位置を示す行、および、水平方向の位置を示す例のそれぞれの番号を示している。
【００５３】
センスアンプ５６は、行セレクタ５３により指定されたページ５５ｂのセル５５ａのデータが転送されてくると、それを受け取り、さらに、所定の電位まで増幅し、再び、元のページ５５ｂに転送する。このとき、電荷が蓄積された状態で、列セレクタ５７より指定された列のデータを読み出し信号が入力されると、センスアンプ５６は、指定された列のデータを読み出して、出力アンプ５８に出力する。
【００５４】
尚、図５、センスアンプ５６は、１ページ５５ｂ分のセル５５ａの電荷だけしか増幅できない構成となっている。このため、リフレッシュ処理、または、読み出し処理のいずれかの１ページ分の処理だけしか処理できないので、セルフリフレッシュタイミング発生器より発生されるリフレッシュ信号、または、行セレクタ５３より発生される読み出し信号は、これらの処理が、いずれかの行に対して実行されるタイミングとなるように発生されるように図示しないＣＰＵにより制御される。また、センスアンプ５６は、複数のページ（行）に対して、リフレッシュ処理、または、読み出し処理を同時に並列処理できるよう複数に設けるようにしても良い。
【００５５】
列アドレスラッチ５２は、メモリコントローラ３０から入力されるＣＡＳ信号を受信すると、動作状態をオンにし、メモリバンク５５上のセル５５ａの位置を示すアドレスの列の情報を列セレクタ５７に出力する。列セレクタ５７は、列アドレスラッチ５２より入力された列に対応するセンスアップ５６上のデータの読み出し信号をセンスアップ５６に出力し、出力アンプ５８に読み出させる。出力アンプ５８は、入力された電荷をさらに倍増して、メモリコントローラ３０を介してＣＰＵにデータを出力する。
【００５６】
次に、ＣＰUからの指令によりメモリコントローラ３０がメモリバンク５５のセル５５ａのデータを読み出す動作について説明する。例えば、ＣＰＵからの指令により、メモリコントローラ３０がＤＲＡＭのメモリバンク５５の６行４行目のセル５５ａのデータを読み出そうとする場合、ＣＰＵは、メモリコントローラ３０に第６行第４列目のセル５５ａのデータを読み出すように指令する。メモリコントローラ３０の制御信号発生部は、この指令を受け取ると、ＲＡＳ信号を行アドレスラッチ５１に出力した後、対応するアドレスの信号を行アドレスラッチ５１、および、列アドレスラッチ５２に出力する。行アドレスラッチ５１は、ＲＡＳ信号を制御信号発生部より受け取ると、その動作をオンにし、続けて受信されるアドレス情報の行の情報を行セレクタ５３に出力する。従って、今の場合、「第６行目」という情報が、行セレクタ５３に出力される。
【００５７】
行セレクタ５３は、行アドレスラッチ５１から入力された行の情報に基づいて、その行に対応するページ５５ｂのセル５５ａの電荷をセンスアンプ５６に転送させる読み出し信号を出力する。すると、今の場合、メモリバンク５５上の図中実線で囲まれた第６行目のページ５５ｂのセル５５ａの電荷が、センスアンプ５６に出力される。センスアンプ５６は、転送されてきた電荷の電荷量を所定の値まで増幅させる。
【００５８】
このとき、制御信号発生部は、ＣＡＳ信号を列アドレスラッチ５２に出力すると共に、アドレス信号を行アドレスラッチ５１、および列アドレスラッチ５２に出力する。列アドレスラッチ５２は、ＣＡＳ信号を制御信号発生部より受け取ると、その動作をオンにし、続けて受信されるアドレス情報の列の情報を列セレクタ５３に出力する。従って、今の場合、「第４列目」という情報が、列セレクタ５７に出力される。
【００５９】
列セレクタ５７は、入力された列の情報に基づいて、その列に対応するセンスアンプ５６で増幅された電荷を出力アンプ５８に転送させる読み出し信号を出力する。すなわち、今の場合、センスアンプ５６は、この読み出し信号に基づいて、図中実線で囲まれた第４列目のセル５５ａの電荷が、出力アンプ５８に出力される。出力アンプ５８は、転送されてきた電荷の電荷量を転送に必要な所定の値まで増幅させた後、メモリコントローラ３０を介してＣＰＵにデータを出力する。尚、この後、センスアンプ５６は、増幅した第６行目のページ５５ｂの電荷を、再びメモリバンク５５上の元のセル５５ａに戻す。従って、データの読み出しがなされた（今の場合、第６行目）ページ５５ｂ上の８個のセル５５ａは、充電電荷量が元の状態（フルチャージ状態）に戻されている。
【００６０】
次に、図７を参照しながら、本発明のメモリ装置を搭載したPDA（Personal Digital Assistance）の例について説明する。このPDAは図示しない液晶表示部やタッチパネルなどに接続されるPDAコア部６０を有しており、このPDAコア部６０には、所要の情報処理手順を進めるCPU６１やコプロセッサ６２が配設されている。CPU６１はバスライン６６に接続されており、このバスライン６６を介して低速な回路部への接続部となるバスブリッジ６７、高速な描画を実現するグラフィックエンジン６３、画像の取り込みを行うカメラとの接続のためのカメラインターフェイス６５、液晶表示部への信号の送受信を行うLCD（Liquid Crystal Display）コントローラ６４などが接続されている。
【００６１】
バスブリッジ６７には、USB（Universal Serial Bus）コントローラ８１、I／O用のI／Oバス８２、タッチパネルインターフェイス８３、キーボードやジョグダイヤル、発光ダイオードなどのインターフェイス８４などの回路が接続され、更にクロック信号CLKvとその周波数情報Infqを出力する周波数制御部７６もバスブリッジ６７に接続されている。
【００６２】
前述のバスライン６６には、更に情報記憶デバイスであるエンベデットDRAM（eDRAM）７１及びDRAMコントローラ７２が接続するように構成され、さらに外部メモリコントローラ７３も接続する。DRAMコントローラ７２は、エンベデットDRAM７１に対する制御信号を送る回路部であり、特に本実施の形態では、例えば周波数制御部７６から可変とされるクロック信号CLKvの周波数情報Infqが供給される。DRAMコントローラ７２は周波数情報Infqを用いデコードなどの演算処理を行い、クロック信号CLKvの周波数が変わったときでもエンベデットDRAM７１の最適な処理を行う。これらエンベデットDRAM７１とDRAMコントローラ７２からなるメモリシステム４１では、クロック信号CLKvの周波数が変わった際に、周波数情報Infqに応じた処理で余分な待ち時間を省いた高速な処理が可能である。
【００６３】
また、メモリシステム４１だけではなく、外部メモリコントローラ７３についても可変とされるクロック信号CLKvの周波数情報Infqを供給することができる。外部メモリコントローラ７３は、外部メモリバスを介して接続するROM７４やSDRAM７５に対する制御信号を送出する回路である。この外部メモリコントローラ７３でも周波数情報Infqが用いられてデコードなどの演算処理を行い、クロック信号CLKvの周波数が変わった際にROM７４やSDRAM７５での余分な待ち時間を省いた最適な処理を行う。これら外部メモリコントローラ７３からなるコントローラ部４２と、ROM７４及びSDRAM７５からなるメモリ部４３とでメモリシステムが構成され、前述のメモリシステム４１と同様に高速な処理が実現される。なお、上述の構成例では、DRAMコントローラ７２と外部メモリコントローラ７３の両方が周波数情報Infqを用いて余分な待ち時間を省いた高速な処理をするものとしているが、どちらか一方だけがそのような周波数情報Infqを用いて高速化を図るものであっても良い。また、外部メモリコントローラ７３に接続するメモリとしてROM７４やSDRAM７５は例示に過ぎず他のメモリや他の信号処理素子などであっても良い。更に、外部メモリコントローラ７３とDRAMコントローラ７２にそれぞれ供給される周波数情報Infqも同じものであっても良く、異なるクロック信号を用いる場合などでは異なる周波数情報Infqを用いるようにしても良い。
【００６４】
次に、図８及び図９を参照して、本実施の形態のメモリ装置における情報処理方法についてその手順を追って説明する。このような情報処理方法は、例えばメモリコントローラのハードウェアの動作の一例を示すものであり、更には、例えば、本発明の情報処理装置がマイコンなどの形式である場合には、所要の媒体形式で供給したプログラムを所定のコントローラに読み込んで実行することも可能である。
【００６５】
先ず、主なプログラムの流れである図８の流れについて説明する前に、図９のサブルーチン＃１の流れについて説明する。サブルーチン＃１が開始した後では、手順S２１では既に該当する制限を満たしたか否かが判断される。該当する制限とは、例えばそのメモリの性能に依存する制限であるが、SDRAMの時間パラメータ{Tras, Trcd, Trp}が{40ns,20ns,20ns}であった場合には、コマンド発行の対象にかかる時間が既に経過したか否が判断される。既に該当する制限を満たした場合（YES）には、サブルーチン＃１から図８のプログラムルーチンに戻る。
【００６６】
手順S２１では既に該当する制限を満たしていない場合（NO）には、手順S２２に進み待ち時間レジスタがリセットされる。この待ち時間レジスタがリセットされた後、手順S２３でレジスタの値に例えば次順のクロックの周波数状態の周期の値、或いはそれに比例した数値を加算する。ここで該加算処理に周波数情報Infqが用いられる。この加算処理によって、次順のクロックの周波数状態を反映した待ち時間レジスタが形成され、次の手順S２４で該待ち時間レジスタの値がコマンド発行のための待ち時間を満たしたか否かが判断される。この手順S２４で待ち時間レジスタの値がコマンド発行のための待ち時間を満たした場合（YES）では、前述の手順S２１と同様にサブルーチン＃１から図８のプログラムルーチンに戻る。手順S２４で待ち時間レジスタの値がコマンド発行のための待ち時間を満足していない場合（NO）では、手順Ｓ２５に進み、1クロック待つことになる。この１クロックの待機の後、手順Ｓ２３に戻り、再びレジスタの値に例えば現在の周波数状態の周期の値、或いはそれに比例した数値を加算し、同様の処理を行う。
【００６７】
このように図９のサブルーチン＃１の各手順からは制御すべきメモリの制限である時間パラメータとの比較が行われ、制限が満たされた状態では次のクロックまで待つことなく信号処理が進められることになる。従って、余分な待ち時間を省いた高速な処理が可能である。手順Ｓ２３での処理には、現在の周波数状態の周期の値、或いはそれに比例した数値が加算され、該加算処理には周波数情報Infqが有効に用いられる。
【００６８】
図８はコントローラにおける主なプログラムの流れを示す図であり、プログラムの開始後、コントローラがCPUからリクエストを受信したものとする（手順S１１）。すると、手順S１２で次に読む又は書くアドレスとDRAMの該当するセンスアンプの現在の状態が調査され、その結果に応じて、異なる処理を開始するようにジャンプがなされる。
【００６９】
手順S１２でセンスアンプに別のロウアドレスのデータが入っている場合では、手順S１３に進みRASアクティベート時間Trasに関する処理が進められる。このRASアクティベート時間Trasに関する処理は、先に図９で示したサブルーチン＃１が用いられる。基本的に図９のサブルーチン＃１は時間待ちのルーチンであり、所要時間の時間待ちが終了した時点で手順Ｓ１４に進み、プリチャージのコマンドを発行する。DRAM側では、プリチャージのコマンドを受け、センスアンプに存在しているデータを所定の各メモリセルに充電する。
【００７０】
このプリチャージのコマンドを発行した後、手順Ｓ１５に進み、プリチャージ時間Trpに関する処理が進められる。このプリチャージ時間Trpに関する処理にも先に図９で示したサブルーチン＃１が用いられる。同様にサブルーチン＃１は時間待ちのルーチンであり、所要時間の時間待ちが終了した時点で手順Ｓ１６に進み、アクティベートのコマンドを発行する。DRAM側では、アクティベートのコマンドを受け、所定のアドレスにかかる各メモリセルのデータをセンスアンプに読み出し増幅する。
【００７１】
このアクティベートのコマンドを発行した後、手順Ｓ１７に進み、RAS-CAS遅延時間Trcdに関する処理が進められる。このRAS-CAS遅延時間Trcdに関する処理にも先に図９で示したサブルーチン＃１が用いられる。サブルーチン＃１は時間待ちのルーチンであることから、所要時間の時間待ちが終了した時点で手順Ｓ１８に進み、リード若しくはライトのコマンドを発行する。DRAM側では、リード若しくはライトのコマンドを受け、所定のアドレスにかかる各メモリセルのデータをセンスアンプのノードから読み出し或いはセンスアンプのノードに対して書き込みする。この信号が読み出され或いは書き込まれることになる。続いて、手順S１９に進み、次のリクエストの待機状態に入る。
【００７２】
手順Ｓ１２でセンスアンプにデータが入っていない場合では、プリチャージ動作が不要となる。従って、手順Ｓ１３がスキップされ、プリチャージの発行（手順Ｓ１４）も省略される。センスアンプにデータが入っていない場合、手順Ｓ１２から手順Ｓ１５に進み、そこからプリチャージ時間Trpに関する処理と、RAS-CAS遅延時間Trcdに関する処理とが先に説明した時間待ちのルーチンであるサブルーチン＃１を用いてそれぞれ進められる。最終的に、手順Ｓ１９に進み、次のリクエストの待機状態に入ることは、手順Ｓ１２でセンスアンプに別のロウアドレスのデータが入っている場合と同様である。
【００７３】
最後に、手順Ｓ１２でセンスアンプに入っているデータのロウアドレスと当該リード又はライトの動作にかかるデータのロウアドレスが一致する場合、プリチャージ動作のみならずアクティベート動作も不要となる。従って、手順Ｓ１３から手順Ｓ１６までがスキップされ、プリチャージの発行（手順Ｓ１４）及びアクティベートの発行（手順Ｓ１６）も省略される。従って、手順Ｓ１２から手順Ｓ１７に進み、RAS-CAS遅延時間Trcdに関する処理が時間待ちのルーチンであるサブルーチン＃１を用いてそれぞれ進められる。なお、最終的に手順Ｓ１９に進み、次のリクエストの待機状態に入ることは、手順Ｓ１２でセンスアンプに別のロウアドレスのデータが入っている場合と同様である。
【００７４】
このように本実施の形態の情報処理装置では、リード又はライトにかかるアドレスと、センスアンプに残っているデータのアドレスとの比較が行われ、一致する場合はそのデータがそのまま利用されることから、高速な読み出しや書き込みが実現されることになる。また、コマンド発行のタイミング制御には、図９で示した時間待ちプログラムが利用されることになり、その時間待ちの計算には周波数情報Infqが用いられることから、余分な待ち時間を省いた高速な処理が実現されることになる。また、換言すれば、高速動作を実現しながらも、待機時やスリープモード時などの期間では、ゆっくりとしたクロックでも確実に動作することになり、逆に全体として消費電力を十分に抑えることができることになる。なお、上述した一連の処理はハードウェアで実行させることも可能であるが、ソフトウェアにより実行させることも可能である。
【００７５】
なお、上述の実施の形態においては、主にメモリなどの記憶素子のコントローラに周波数情報Infqを読み取り制御を調整する機構を設けたものとして説明しているが、これに限定されず、他の信号処理素子や回路などに可変クロックが供給される場合であっても良く、その可変クロック信号の周波数情報を演算処理することで、必要な待ち時間の計算などにより最適化された情報処理を行う回路であっても良い。
【００７６】
また、上述の実施の形態においては、次のクロックの周波数状態に基づいて待ち時間の計算などの処理が行われているが、図３に示すように数回先のクロックの周波数情報を既に得ている場合には、予め演算するように構成しても良い。すなわち、図１０の（Ａ）に示すように、ｎ番目のクロックの時点でｎ+２番目のクロックの周波数情報（例えば２０ns）が得られる場合には、そのｎ+２番目のクロックの周波数情報を用いて演算可能である。また、上述の図８、図９のフローチャートでは、次順のクロック時の可否を現在の周波数情報を用いて1つ前のクロック時に判断するようにしているが、これに限らず、次々順のクロック（ｎ＋２）時の可否を次順のクロック（ｎ＋１）に対する周波数情報を用いて2つ前のクロック時に予め判断するようにしても良い。例えば図１０の（Ｂ）に示すように、Ｔras＝４０nsの場合に、この期間を満たすか否かの判断を次順のクロック（ｎ＋１）に対する周波数情報を用いて2つ前のクロック時（ｎ番目のクロック）に予め判断することも可能である。また、次順のクロックの可否を次順のクロックに対する周波数情報を用いて予め判断するようにしても良い。更には、（ｍ-1）（ｍは自然数）クロック先のリクエストを予め受信でき、かつ（ｍ−１）クロック先の周波数情報をも予め得ることができるような場合には、数クロック前に判断するようにしても良い。
【００７７】
更に、上述の実施の形態においては、周波数情報Infqを取得する構成部を周波数制御部として説明したが、これ限らず、CPUなどの周波数を変化させる指令を出す処理部から直接周波数情報Infqを取得するようにしても良い。また、本実施の形態が搭載される電子機器もPDAやパーソナルコンピュータに限定されず、プリンターやファクシミリ、パソコン用周辺機器、電話機、テレビジョン受像機、画像表示装置、通信機器、携帯電話機、カメラ、ラジオ、オーディオビデオ機器、扇風機、冷蔵庫、ヘアドライヤー、アイロン、ポット、掃除機、炊飯器、電磁調理器、照明器具、ゲーム機やラジコンカーなどの玩具、電動工具、医療機器、測定機器、車両搭載用機器、事務機器、健康美容器具、電子制御型ロボット、衣類型電子機器、各種電動機器、車両、船舶、航空機などの輸送用機械、家庭用若しくは事業用発電装置、その他の用途に使用できる種々の電子機器に搭載可能である。
【図面の簡単な説明】
【００７８】
【図１】本発明の情報処理装置の一例を示すブロック図である。
【図２】メモリ装置の動作を説明するタイムチャートであって、（A）は固定クロックの場合の動作、（B）は可変なクロック周波数の信号にそのまま固定したタイミングで動作させる場合の動作、（C）は周波数情報から計算する場合の動作のそれぞれタイムチャートである。
【図３】周波数情報の例を示すタイムチャートであって、（A）は周波数情報が現在の動作クロック信号CLKvの周波数を示す場合のタイムチャートであり、（B）は周波数情報が動作クロック信号CLKvの周波数の変化に先行して次のクロックの周波数を指標する場合のタイムチャートである。
【図４】周波数情報のエンコード方法の例を示すテーブルであって、（A）は2ビットで指標する例であり、（B）は周期に比例した値のデータを用いる例である。
【図５】本発明の情報処理装置の一例として、メモリコントローラとSDRAMを用いた場合のブロック図である。
【図６】図５のSDRAMの信号とコマンドの対応表の一例を示すテーブルである。
【図７】本発明の情報処理装置の一例として、PDAにメモリコントローラとメモリを組み込んだ例を示すブロック図である。
【図８】本発明の情報処理方法の一例として、SDRAMにおいてセンスアンプのデータにかかるアドレスの一致を見ながら処理する場合の流れ図である。
【図９】本発明の情報処理方法の一例として、待ち時間の演算処理を周波数情報に基づいて行う場合のサブルーチンの一例を示す流れ図である。
【図１０】本発明の情報処理装置の一例における他の情報処理方法の例を示すタイムチャートである。
【符号の説明】
【００７９】
１１  メモリ，  １２  メモリコントローラ，  １３  周波数制御部，  ３０  メモリコントローラ，  ３１  メモリユニット，  ６１  CPU，  ６６  バスライン，  ７１  エンベデットDRAM，  ７２  DRAMコントローラ，  ７３  外部メモリコントローラ，  ７４  ROM，  ７５  SDRAM，  ７６  周波数制御部，  Infq  周波数情報，  CLKｖ  可変クロック信号
【図１】
2006127533.tif 000003
【図２】
2006127533.tif 000004
【図３】
2006127533.tif 000005
【図４】
2006127533.tif 000006
【図５】
2006127533.tif 000007
【図６】
2006127533.tif 000008
【図７】
2006127533.tif 000009
【図８】
2006127533.tif 000010
【図９】
2006127533.tif 000011
【図１０】
2006127533.tif 000012