(57)【要約】【課題】ＲＯＭ等の不揮発性メモリからＲＡＭ等の高速メモリにデータを展開する際の起動時間を短縮するとともに、ダウンサイジング及びコストダウンを図る。【解決手段】メモリ制御回路は、不揮発性メモリに記憶されたデータを、高速メモリに展開して、展開されたデータに応じて動作する機器に用いられ、不揮発性メモリから前記高速メモリへの前記データの展開を制御する。メモリ制御回路は不揮発性メモリをアクセスする際のデータウエイト値が設定されるデータウエイト設定部３０４１と、不揮発性メモリをアクセスする際のアドレスウエイト値が設定されるアドレスウエイト設定部３０４２と、不揮発性メモリをアクセスする際バウンダリーを調整するバウンダリーウエイト値が設定されるバウンダリーウエイト設定部３０４３と、データウエイト値、アドレスウエイト値、及びバウンダリーウエイト値に応じて不揮発性メモリのアクセス時間を調整するアクセス制御部３０１とを有している。【選択図】図１２
2011123648.tif 000002
【特許請求の範囲】
【請求項１】
不揮発性メモリに記憶されたデータを、高速メモリに展開して該展開されたデータに応じて動作する機器に用いられ、前記不揮発性メモリから前記高速メモリへの前記データの展開を制御するメモリ制御回路において、
前記不揮発性メモリをアクセスする際のデータウエイト値が設定されるデータウエイト設定部と、
前記不揮発性メモリをアクセスする際のアドレスウエイト値が設定されるアドレスウエイト設定部と、
前記不揮発性メモリをアクセスする際のバウンダリーを調整するバウンダリーウエイト値が設定されるバウンダリーウエイト設定部と、
前記データウエイト値、前記アドレスウエイト値、及び前記バウンダリーウエイト値に応じて前記不揮発性メモリのアクセス時間を調整するアクセス制御部とを有することを特徴とするメモリ制御回路。
【請求項２】
前記不揮発性メモリは、ページ単位でアクセスされるページアクセス型の読み出し専用メモリであり、
前記アクセス制御部は前記バウンダリーウエイト値に応じて前記ページアクセスのアクセス長を越えた際の前記アクセス時間を制御するようにしたことを特徴とする請求項１記載のメモリ制御回路。
【請求項３】
前記データウエイト値、前記アドレスウエイト値、及び前記バウンダリーウエイト値はそれぞれＣＰＵからの指示に応じて前記データウエイト設定部、前記アドレスウエイト設定部、及びバウンダリーウエイト設定部に設定されることを特徴とする請求項１又は２記載のメモリ制御回路。
【請求項４】
前記不揮発性メモリは不揮発性メモリインターフェースを介して前記ＣＰＵに接続されており、
前記不揮発性メモリインターフェースに前記データウエイト設定部、前記アドレスウエイト設定部、前記バウンダリーウエイト設定部、及び前記アクセス制御部が備えられていることを特徴とする請求項３記載のメモリ制御回路。
【請求項５】
前記不揮発性メモリはＮＯＲ型のＲＯＭであり、前記高速メモリはＲＡＭであることを特徴とする請求項１〜４のいずれかに記載のメモリ制御回路。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、メモリ制御回路に関し、特に、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）等の不揮発性メモリに記憶されたプログラムをＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）等の高速メモリに展開する際に用いられるメモリ制御回路に関する。
【背景技術】
【０００２】
一般に、印刷装置等の機器においては、ＲＯＭ（例えば、ページ単位でアクセス可能なＮＯＲ型のＲＯＭ）にプログラム（例えば、制御プログラム）を格納している。そして、電源投入等が行われると、ＲＯＭ上のプログラムがＲＡＭ上に展開されて、印刷装置はＲＡＭ上に展開したプログラムに応じて動作する。以下の説明では、ページ単位で、アクセス可能なＮＯＲ型のＲＯＭを、ページアクセス方式（つまり、ページアクセス型）のＮＯＲ型ＲＯＭと呼ぶ。また、この種のＲＯＭを単にＲＯＭと呼ぶこともある。
【０００３】
つまり、印刷装置等の機器においては、電源投入後の最初の処理として、ＲＯＭに格納されたプログラムを、ＲＯＭからＲＡＭ上にコピーする処理を行う必要がある。
【０００４】
一般に、印刷装置において、所謂レーザビーム式プリンタ及び複合機が知られており、この種のプリンタ及び複合機では解像度が高精彩化され、しかも、印刷速度が高速化されている。さらに、この種のプリンタ及び複合機には、ネットワーク機能及びＵＳＢ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ）等の様々な機能が搭載されている関係上、そのプログラムの規模が増大する傾向にある。
【０００５】
加えて、前述のように、近年のプリンタ及び複合機においては、その処理能力を向上させるために、予めＲＯＭに格納されたプログラムを高速アクセス可能なＲＡＭ上に展開して、プログラムの実行処理能力を向上させている。そして、実行処理能力を向上させるためには、つまり、高速なアクセスを可能とするためには、ＲＡＭについては、一度に伝送可能なデータ量を表すバス幅を大きくした方がよい。
【０００６】
一方、ＲＯＭについては、電源投入等の際に、ＲＡＭ上にプログラムを展開するだけであるので、バス幅は大きくしても実行処理能力の向上には繋がらない。
【０００７】
ところで、小型のデジタル複合機（例えば、マルチファンクションプリンタ：Ｍｕｌｔｉ  Ｆｕｎｃｔｉｏｎ  Ｐｒｉｎｔｅｒ、以下ＭＦＰという）やプリンタ（Ｓｉｎｇｌｅ  Ｆｕｎｃｔｉｏｎ  Ｐｒｉｎｔｅｒ、以下ＳＦＰという）では、ページアクセス式のＮＯＲ型フラッシュ（Ｆｌａｓｈ）ＲＯＭをブートＲＯＭ（Ｂｏｏｔ  ＲＯＭ）及びプログラム格納用ＲＯＭとして用いることが多い。
【０００８】
さらに、大型のＭＦＰでは、ブートＲＯＭとして小型のＲＯＭに用い、プログラムをパソコンと同様のハードディスクに格納することもある。
【０００９】
また、近年、複合機及びプリンタの小型化・ダウンサイジング・コストダウンが叫ばれている。特に、ＳＦＰ等においては、機能に比較して基板サイズを小さくしたいという要望がある。このことは、プログラム格納用のフラッシュＲＯＭの個数を極力少なくしたいということがその背景にある。
【００１０】
ＳＦＰ等においても、その機能が多機能化してくると、プログラムの格納容量が不可避的に増大する。そして、プログラムを圧縮した状態で格納したとしても、ＮＯＲ型のフラッシュＲＯＭにおいて、１６Ｍバイト又は３２Ｍバイトという大きな容量が必要になる。
【００１１】
前述のように、プログラムを動作させる際には、フラッシュＲＯＭからＲＡＭ上にプログラムを展開し、ＲＡＭ上でプログラムを動作させることになる。従って、電源投入時における、フラッシュＲＯＭからＲＡＭへのプログラムを展開させるまでの起動時間は、フラッシュＲＯＭに対する総アクセス時間が重要なファクターとなる。このため、プログラム容量の増大に伴って、不可避的に起動時間が遅くなる。
【００１２】
前述のページアクセス式のＮＯＲ型フラッシュＲＯＭを用いれば、起動時間の短縮、つまり、総アクセス時間の短縮を実現することは可能であるものの、一方で、前述のコストダウン及びダウンサイジングの要求に起因する部品点数の削減が求められている。このため、ＳＦＰ等においては、ページアクセス式のＮＯＲ型フラッシュＲＯＭを１つだけ搭載する例もある。
【００１３】
一方、ＲＯＭに対する読出しアクセス時のウエイト時間（待ち時間）を短縮するため、ＲＯＭアドレス制御器を備えるメモリ制御回路が知られている。ここでは、ＲＯＭアドレス制御器がＲＯＭに対するアクセス終了を検知して、ＲＯＭに対する次アクセスアドレスを生成する。そして、この次アクセスアドレスをＲＯＭプリアクセスアドレスラッチに保持する。
【００１４】
続いて、一致検出器がＲＯＭに対する新規アクセスアドレスと、ＲＯＭプリアクセスアドレスラッチに保持された次アクセスアドレスとを比較して、連続アクセス状態を検出する。そして、この検出結果に基づいて、一致検出器がＲＯＭに対するメモリウエイト数を変更するための選択信号を生成して、レディ制御回路に出力する（例えば、特許文献１参照）。
【先行技術文献】
【特許文献】
【００１５】
【特許文献１】特開平１０−２３２８２２号公報
【発明の概要】
【発明が解決しようとする課題】
【００１６】
ところで、ＳＦＰ等においては、ＲＯＭのバス幅を１６ビット（ｂｉｔ）構成とし、ＲＡＭのバス幅を６４ビット構成にすることがある。この場合には、ＲＯＭからＲＡＭにプログラムをコピーする際、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）のキャッシュラインの関係上、ＲＡＭに対して４ダブルワードアクセスが行われる。
【００１７】
このため、ハーフワードアクセスが行われるフラッシュＲＯＭに対しては、１６ページアクセスが行われることになる。ページアクセス式のＮＯＲ型フラッシュＲＯＭは、バイトモード（つまり、８ビットのモード）の際には、１６ページの連続アクセスが可能である。また、ハーフワードモード（つまり、１６ビットのモード）の際には、８ページの連続アクセスが可能である。
【００１８】
しかしながら、前述のように、ダウンサイジング・コストダウンのため、フラッシュＲＯＭの個数を減らし、特に、フラッシュＲＯＭを１つだけ搭載するＳＦＰ等においては、ページアクセスのメリットを生かすことが難しい。つまり、フラッシュＲＯＭを用いたとしても、ダウンサイジング・コストダウンを考えると、起動時間の短縮を行うことが難しいという課題がある。
【００１９】
本発明の目的は、ダウンサイジング・コストダウンに起因する起動時間の遅延を改善することのできるメモリ制御回路を提供することにある。
【課題を解決するための手段】
【００２０】
上記の目的を達成するため、本発明によるメモリ制御回路は、不揮発性メモリに記憶されたデータを、高速メモリに展開して、該展開されたデータに応じて動作する機器に用いられ、前記不揮発性メモリから前記高速メモリへの前記データの展開を制御するメモリ制御回路において、前記不揮発性メモリをアクセスする際のデータウエイト値が設定されるデータウエイト設定部と、前記不揮発性メモリをアクセスする際のアドレスウエイト値が設定されるアドレスウエイト設定部と、前記不揮発性メモリをアクセスする際のバウンダリーを調整するバウンダリーウエイト値が設定されるバウンダリーウエイト設定部と、前記データウエイト値、前記アドレスウエイト値、及び前記バウンダリーウエイト値に応じて前記不揮発性メモリのアクセス時間を調整するアクセス制御部とを有することを特徴とする。
【発明の効果】
【００２１】
本発明によれば、アドレスウエイト値及びデータウエイト値の設定を行うばかりでなく、バウンダリーの調整を行うバウンダリーウエイト値の設定を行い、データウエイト値、アドレスウエイト値、及びバウンダリーウエイト値に応じて不揮発性メモリのアクセス時間を調整するようにしたので、電源投入の際等において、不揮発性メモリから高速メモリへのデータの展開に要する起動時間を短縮しつつ、コストダウン及びダウンサイジングを図ることができるという効果がある。
【図面の簡単な説明】
【００２２】
【図１】本発明の実施の形態によるメモリ制御回路が用いられるシングルファンクションプリンタ（ＳＦＰ）の構成の一例を示すブロック図である。
【図２】図１に示すシステムオンチップ（Ｓｙｓｔｅｍ  Ｏｎ  Ｃｈｉｐ）の一例を示すブロック図である。
【図３】図１に示すフラッシュＲＯＭとして、３２Ｍバイト（２５６Ｍビット）のＮＯＲ型のフラッシュＲＯＭを用いた場合のシンボル図である。
【図４】図３に示すフラッシュＲＯＭの動作タイミングを示すタイミングチャートであり、（Ａ）は８ビットモードの際のタイミングチャート、（Ｂ）は１６ビットモードの際のタイミングチャートである。
【図５】図１に示すフラッシュＲＯＭがページアクセス式の３２ＭバイトのＮＯＲ型フラッシュＲＯＭである場合の内部ブロック図である。
【図６】図１に示すフラッシュＲＯＭが１６ビットモードである際の当該ＲＯＭとＲＡＭとの接続関係の一例を示す図である。
【図７】図６に示すフラッシュＲＯＭがページアクセス方式のＮＯＲ型フラッシュＲＯＭ（３２ＭＢ）である場合の接続を示す図である。
【図８】図７に示す構成におけるフラッシュＲＯＭのアクセスのタイミングを示すタイミングチャートである。
【図９】図１に示すフラッシュＲＯＭを２個用いたＳＤＲＡＭとの接続関係の一例を示す図である。
【図１０】図９に示すフラッシュＲＯＭがページアクセス方式のＮＯＲ型フラッシュＲＯＭ（１６Ｍバイト×２＝３２Ｍバイト）である場合の接続を示す図である。
【図１１】図１０に示す構成におけるフラッシュＲＯＭのアクセスのタイミングを示すタイミングチャートである。
【図１２】本発明の実施の形態によるメモリ制御回路で用いられるＲＯＭインターフェースの構成を示すブロック図である。
【図１３】図１２に示すＲＯＭインターフェースを用いた場合のフラッシュＲＯＭのアクセスのタイミングを示すタイミングチャートである。
【発明を実施するための形態】
【００２３】
以下、本発明の実施の形態によるメモリ制御回路の一例について図面を参照して説明する。
【００２４】
なお、以下の説明では、フラッシュＲＯＭから読み出されるプログラムコードについても単にデータとも呼ぶことにする。
【００２５】
さらに、メモリ制御回路が用いられる機器として、シングルファンクションプリンタ（ＳＦＰ）を例に挙げて説明するが、複合機等の他の印刷装置においても同様に適用できるものである。また、印刷装置以外の機器においてもメモリを備える機器であって、ＲＯＭ等の不揮発性メモリからＲＡＭ等の高速メモリにプログラムを展開して当該プログラムによって動作する機器であれば、同様にしてこの実施の形態を適用することができる。
【００２６】
図１は、本発明の実施の形態によるメモリ制御回路が用いられるＳＦＰの構成の一例を示す図である。図１において、ＳＦＰ１００は、プリンタ印刷部１０１及び画像データ生成部１０２を有している。
【００２７】
画像データ生成部１０２は、パーソナルコンピュータ（以下ＰＣと呼ぶ）等から送られる印刷要求データを画像データ（ＶＤＯ）に変換する。そして、画像データ生成部１０２は、プリンタ印刷部１０１にこの画像データを与え、プリンタ印刷部１０１によって印刷が実行される。なお、この画像データ生成部１０２は一般にプリンターコントローラと呼ばれている。
【００２８】
図示のように、画像データ生成部１０２は、システムオンチップ（Ｓｙｓｔｅｍ  Ｏｎ  Ｃｈｉｐ：ＳＯＣ）１０３、ＮＯＲ型のフラッシュＲＯＭ（Ｆｌａｓｈ  ＲＯＭ）１０４（専用メモリ）、ＳＤＲＡＭ（Ｓｙｎｃｈｒｏｎｏｕｓ  Ｄｙｎａｍｉｃ  ＲＡＭ）１０５、ビデオクロック発生器（ＶＩＤＥＯ  ＣＬＯＣＫ）１０６、ＥＥＰＲＯＭ（Ｅｌｅｃｔｒｉｃａｌｌｙ  Ｅｒａｓａｂｌｅ  ａｎｄ  Ｐｒｏｇｒａｍｍａｂｌｅ  ＲＯＭ）１０７、ドライバ・レシーバＩＣ（一般に、ファイ（ＰＨＹ）と呼ばれる）１０８、ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）インターフェース１０９、及びＵＳＢ１１０を有している。ここでは、フラッシュＲＯＭ１０４は、ページ単位でアクセス可能なページアクセス型のメモリである。
【００２９】
そして、画像データ生成部１０２は、コネクタ１１２によってプリンタ印刷部１１０に接続される。なお、ＳＤＲＡＭの代わりにＤＤＲ  ＳＤＲＡＭ（Ｄｏｕｂｌｅ−Ｄａｔａ−Ｒａｔｅ  ＲＡＭ）を用いてもよい。
【００３０】
上記のＳＯＣ１０３は、後述するように、メモリ制御回路の機能を有している。このＳＯＣ１０３は、集積回路であり、ＣＰＵ（図１には示さず）が内蔵されている。ＳＯＣ１０３はメモリ制御、プリンタ印刷部１０１との通信及び画像データ転送を行う。さらに、ＳＯＣ１０３は、ＰＣ等から送られる印刷要求データを受け付けるためのＵＳＢ１１０及びＬＡＮインターフェース１０９を制御する。
【００３１】
図示の例では、フラッシュＲＯＭ１０４には、ＳＯＣ１０３に内蔵のＣＰＵを動作させるためのプログラムコードが格納されている。そして、ＳＯＣ１０３は、後述するようにして、ライト信号ｎＷＲ、アクセス信号ｎＣＥ、リード信号ｎＯＥ、及びアドレス”Ａ”に応じて、フラッシュＲＯＭ１０４に格納されているプログラムコードを読み出して、データ”Ｄ”としてＳＤＲＡＭ１０５に展開する。
【００３２】
上記のプログラムコード読み出し処理は、例えば、ＳＦＰ１００の電源投入時に実行され、ＳＯＣ１０３は、ＳＤＲＡＭ１０５に展開されたプログラムコードに応じて動作することになる。なお、このＳＤＲＡＭ１０５には画像データが格納されるとともに、プログラム用の一時データも格納される。
【００３３】
ＶＩＤＥＯ  ＣＬＯＣＫ１０６は、ＳＯＣ１０３から画像データをプリンタ印刷部１０１に転送する際のビデオクロックを、ＳＯＣ１０３に与える。そして、ＥＥＰＲＯＭ１０７はＳＦＰ１００に電源が供給されない事態が生じても、印刷に必要な情報を保持するために用いられる。
【００３４】
なお、図示のように、プリンタ印刷部１０１には、ユーザインターフェース（ＵＩ）１１１が備えられている。このＵＩ１１１は、ユーザがＳＦＰ１００を自己の使用用途に合わせて好適に設定するためのものであり、例えば、操作パネルとも呼ばれる。
【００３５】
図２は、図１に示すＳＯＣ１０３の一例を示すブロック図である。図２において、ＳＯＣ１０３は、ＣＰＵ２０１、ＲＯＭインターフェース２０２、ＳＤＲＡＭインターフェース２０３、入出力（ＩＯ）インターフェース２０４、外部インターフェース２０５、ＵＩインターフェース２０６、プリンタインターフェース２０７、及び画像変換部２０８を有している。これらは相互にバスライン２０９で接続されている。
【００３６】
図示の例では、ＣＰＵ２０１は、図１に示す画像データ生成部１０２全体を制御する。ＲＯＭインターフェース２０２は、フラッシュＲＯＭ１０４（図１）に格納されているプログラムコードを、ＣＰＵ２０１に読み込むためのインターフェースである。また、プログラムコードを更新する際には、ＲＯＭインターフェース２０２を用いて、フラッシュＲＯＭ１０４にプログラムコードが書き込まれる。
【００３７】
ＳＤＲＡＭインターフェース２０３は、ＳＤＲＡＭ１０５（図１）の制御を行う際に用いられる。なお、ＳＤＲＡＭ１０５は、ＣＰＵ２０１が介在してデータのリード／ライトを行う機能と、ＣＰＵ２０１の介在なしに、ＤＭＡ（Ｄｙｎａｍｉｃ  Ｍｅｍｏｒｙ  Ａｃｃｓｅｅ）処理を行う機能を有している。
【００３８】
ＩＯインターフェース２０４は、ＥＥＰＲＯＭ１０７（図１）にアクセスする際に用いられるインターフェースである。例えば、ＣＰＵ２０１は、レジスタアクセス等によってシリアルデータ経由で、このＥＥＰＲＯＭ１０７のアクセスを行う。また、外部インターフェース２０５は、ＬＡＮインターフェース１０９及びＵＳＢ１１０を制御する際のインターフェースである。
【００３９】
ＵＩインターフェース（操作パネルインターフェースとも呼ぶ）２０６は、ＵＩ１１１（図１）を制御する際に用いられるインターフェースである。ＣＰＵ２０１は、ＵＩインターフェース２０６についてもＩＯインターフェース２０４と同様にレジスタアクセス等によってアクセスを行う。
【００４０】
プリンタインターフェース２０７は、プリンタ印刷部１０１と通信を行う際に用いられるインターフェースである。このプリンタインターフェース２０７によって、クロック同期のためのＳＣＬＫを発行し、送受信用のＳＣでシリアルデータが送受信されることになる。
【００４１】
画像変換部２０８は、ＰＣ等から送られた印刷要求データを画像データに変換するものである。そして、図示の画像変換部２０８は、文字を滑らかに表現するためのスムージング処理部２０８ａを含んでいる。なお、この画像変換部２０８はビデオクロックに同期してＳＤＲＡＭ１０５からのデータをプリンタ印刷部１０１に高速のシリアルビデオデータ（つまり、画像データ）として送信する。
【００４２】
図３は、図１に示すフラッシュＲＯＭ１０４として３２Ｍバイト（２５６Ｍビット）のＮＯＲ型フラッシュＲＯＭを用いた場合のシンボル図である。図４において、フラッシュＲＯＭ１０４は、電源端子Ｖｃｃ及びＶｓｓ、入出力用電源端子ＶｃｃＱ、及び昇圧電源端子Ｖｐｐ／ＷＰ＃を有している。
【００４３】
フラッシュＲＯＭ１０４には、ＳＯＣ１０３（図１）からアドレス信号（以下単にアドレスともいう）Ａ０〜Ａ２３が与えられる。そして、フラッシュＲＯＭ１０４は、アドレスＡ０〜Ａ２３に応じてデータＤＱ０〜ＤＱ１５を出力する。また、フラッシュＲＯＭ１０４は、書き込み端子ＷＲ＃、アクセス端子ＣＥ＃、読み出し端子ＯＥ＃、リセット端子ＲＳＴ＃、モード端子ＢＹＴＥ＃、及びビジー端子ＲＹ／ＢＹ＃を有している。
【００４４】
書き込み端子ＷＲ＃には、ＳＯＣ１０３からライト信号ｎＷＲが与えられ、ライト信号ｎＷＲがロウレベル（Ｌ）のとき、フラッシュＲＯＭ１０４はデータライト可能状態となる。アクセス端子ＣＥ＃には、ＳＯＣ１０３からアクセス信号ｎＣＥが与えられ、アクセス信号ｎＣＥがＬのとき、フラッシュＲＯＭ１０４はアクセス可能状態となる。このアクセス信号ｎＣＥは、ライト及びリードのように、フラッシュＲＯＭ１０４アクセスする場合にはＬにする必要がある。
【００４５】
読み出し端子ＯＥ＃には、ＳＯＣ１０３からリード信号ｎＯＥが与えられ、リード信号ｎＯＥがＬのとき、フラッシュＲＯＭ１０４はリード可能状態となる。リセット端子ＲＳＴ＃には、ＳＯＣ１０３からリセット信号ｎＲＳＴが与えられ、これによって、フラッシュＲＯＭ１０４のリセットが行われる。例えば、電源投入時に、ＳＯＣ１０３からフラッシュＲＯＭ１０４にリセット信号が与えられる。
【００４６】
モード端子ＢＹＴＥ＃には、ＳＯＣ１０３からモード信号ｎＢＹＴＥが与えられ、モード信号ｎＢＹＴＥがＬのとき、フラッシュＲＯＭ１０４はバイトモード、つまり、８ビットモードとなる。そして、モード信号ｎＢＹＴＥがハイレベル（Ｈ）のとき、フラッシュＲＯＭ１０４はワードモード、つまり、１６ビットモードとなる。
【００４７】
ビジー端子ＲＹ／ＢＹ＃からは、ライトの際にビジー（Ｂｕｓｙ）信号が出力される。そして、モード信号ｎＢＹＴＥがＬのとき、つまり、８ビットモードのときに、データ信号ＤＱ１５／Ａ−１が最下位アドレス信号としてフラッシュＲＯＭ１０４から出力される。
【００４８】
一方、モード信号ｎＢＹＴＥがＨのとき、つまり、１６ビットモードのとき、データ信号ＤＱ１５／Ａ−１がフラッシュＲＯＭ１０４から出力される。データ信号ＤＱ０〜ＤＱ１４については、モード信号ｎＢＹＴＥがＬのとき、つまり、８ビットモードのときデータ端子ＤＱ０〜ＤＱ７までが用いられる。
【００４９】
また、モード信号ｎＢＹＴＥがＨのとき、つまり、１６ビットモードのときデータ信号ＤＱ０〜ＤＱ１４とデータ信号ＤＱ１５／Ａ−１とが用いられて、１６ビットのデータとしてフラッシュＲＯＭ１０４から出力されることになる。
【００５０】
なお、ここでは、フラッシュＲＯＭ１０４に関して、そのアクセスタイムについて、ファーストアクセスタイムを１００ｎｓとし、ページアクセスタイムを２５ｎｓとする。
【００５１】
図４は、図３に示すフラッシュＲＯＭ１０４の動作タイミングを示すタイミングチャートである。まず、８ビットモードを示す図４（Ａ）を参照して、８ビットモードの際には、モード端子ＢＹＴＥ＃に入力されるモード信号ｎＢＹＴＥをＬに固定する。
【００５２】
アドレスはその上位Ａ２３−Ａ０＋Ａ−１までを接続して、前述のように、１６本あるうちのデータ信号は８本までしか接続しない。下位アドレス（Ａ［２２：０］）が０ｈ〜ｆに変化する際、アクセス信号ｎＣＥはＬとされ、さらに、リード信号ｎＯＥがＬとされる。そして、ライト信号ｎＷＲはＨとされる。
【００５３】
この結果、最初の下位アドレス（Ａ［２２：０］）が０ｈのときから連続して１６回のページアクセスを行うことができ、フラッシュＲＯＭ１０４からは８ビット×１６＝１６バイトのデータ（Ｄ［７：０］）が連続的にリードされることになる。
【００５４】
続いて、１６ビットモードを示す図５（Ｂ）を参照して、１６ビットモードの際には、モード端子ＢＹＴＥ＃に入力されるモード信号ｎＢＹＴＥをＨに固定する。アドレスは上位Ａ２３−Ａ０まで接続し、前述のように、１６本あるうちのデータ信号を全て接続する。
【００５５】
下位アドレス（Ａ［２２：１］）が０ｈ〜７に変化する際、アクセス信号ｎＣＥはＬとされ、さらに、リード信号ｎＯＥがＬとされる。そして、ライト信号ｎＷＲはＨとされる。
【００５６】
この結果、最初の下位アドレス（Ａ［２２：１］）が０ｈのときから連続して８回のページアクセスを行うことができ、フラッシュＲＯＭ１０４からは１６ビット×８＝１６バイトのデータ（Ｄ［１５：０］）が連続的にリードされることになる。
【００５７】
このように、ページアクセスによって連続してリード可能なページアクセス式のＮＯＲ型フラッシュＲＯＭ１０４においては、そのデータ量は８ビットモード及び１６ビットモードに拘わらず、常に１６バイトとなる。
【００５８】
図５は、図１に示すフラッシュＲＯＭ１０４がページアクセス式の３２ＭバイトのＮＯＲ型フラッシュＲＯＭである場合の内部ブロック図である。ここで、図５を参照して、前述のモード切りえ替の仕組み及びファーストアクセスとページアクセスとの間で時間差が生じるかについて説明する。
【００５９】
フラッシュＲＯＭ１０４は、アドレスバッファー６０１、ロー（Ｒｏｗ）デコーダー６０２、カラム（Ｃｏｌｕｍｎ）デコーダー６０３、メモリマトリクス６０４、マルチプレクサ・データラッチ６０５、出力バッファ６０６、モードセレクタ６０７、及びデコーダー６０８を有している。
【００６０】
図示のように、アドレスバッファー６０１には、アドレスＡ２３〜Ａ０が入力される。Ｒｏｗデコーダー６０２はアドレスＡ２３〜Ａ０うちの上位アドレス（上位アドレス２１ビット）をデコードする。
【００６１】
メモリマトリクス６０４は、複数個のメモリセル６０４ａを有しており、これらメモリセル６０４ａの各々は、１２８ビットのデータを格納可能である。この格納データ量は、８ビットモードと１６ビットモードで変化することはない。なお、フラッシュＲＯＭ１０４が３２Ｍバイトであると、メモリセル６０４ａは約２００万個存在する。
【００６２】
Ｒｏｗデコーダー６０２からのアドレスデコード信号に応じて、マルチプレクサ・データラッチ６０５に１２８ビットのデータが格納される。最初にマルチプレクサ・データラッチ６０５にデータをシフトする時間が最初のアクセス時間となる。
【００６３】
出力バッファ６０６は、マルチプレクサ・データラッチ６０５に格納されたデータを出力する。この場合、モードセレクタ６０８は、モード信号ｎＢＹＴＥに応じて８ビットモードであるか１６ビットモードであるかを示す切り替え信号を出力バッファ６０６に与える。
【００６４】
また、デコーダー６０８は、ライトｎＷＲ、アクセス信号ｎＣＥ、及びリード信号ｎＯＥをデコードして、出力バッファ６０６に与える。そして、出力バッファ６０６は、図４に関連して説明したようにして、データ（ＤＱ１４〜ＤＱ０及びＤＱ１５／Ａ−１）を出力する。
【００６５】
マルチプレクサ・データラッチ６０５に格納されたデータは、Ｃｏｕｌｕｍデコーダー６０３によってデータの切り替えを行い、下位アドレス（下位アドレス３ビット）に応じてデータを内部で切り替える。この切り替え時間がページアクセス時間となる。
【００６６】
つまり、アドレスバッファー６０１に入力されるアドレスが確定した後、メモリマトリクス６０４からマルチプレクサ・データラッチ６０５にデータが移動する時間が７５ｎｓとなる。そして、このマルチプレクサ・データラッチ６０５から出力バッファ６０６にデータが出力されるまでの時間が２５ｎｓとなる。言い換えると、上位アドレスが決定してからデータが出力される、所謂ファーストアクセスは７５ｎｓ＋２５ｎｓで１００ｎｓかかるわけである。
【００６７】
なお、メモリマトリクス６０４のメモリセル６０４ａの各々は１２８ビットという定められたデータ量が格納されている。１２８ビット＝８ビット×１６＝１６ビット×８である。よって、８ビットモードの際には、アドレスＡ２−Ａ０＋Ａ−１の４本のアドレス信号で８ビットのデータを１６回連続してアクセスすることが可能となる。また、１６ビットモードの際には、アドレスＡ２−Ａ０の３本のアドレス信号で８ページ連続してアクセスが可能になる。
【００６８】
前述のように、アドレスバッファー６０１、Ｒｏｗデコーダー６０２、及びＣｏｌｕｍｎデコーダー−６０３を経由する下位アドレス（カラムアドレス）が決定した後、マルチプレクサ・データラッチ６０６から出力バッファ６０６を介してデータが出力されるのに２５ｎｓの時間を要する。従って、カラムアドレスの決定後においては、データが出力される時間はファーストアクセスに要する時間よりも数段速くなる。
【００６９】
図６は、図１に示すフラッシュＲＯＭ１０４が１６ビットモードである場合の当該ＲＯＭとＲＡＭとの接続関係を示す図である。図示のように、ＳＯＣ１０３にそれぞれフラッシュＲＯＭ１０４とＳＤＲＡＭ１０５とが接続される。
【００７０】
なお、ここでは、フラッシュＲＯＭ１０４はＮＯＲ型であり、そのバス幅は１６ビットとされる。また、ＳＤＲＡＭ１０５もそのバス幅が１６ビットで、図示の例では、４個のＳＤＲＡＭ１０５が用いられているから。合計のバス幅は６４ビットとなる。
【００７１】
図７は、ページアクセス方式のＮＯＲ型フラッシュＲＯＭ（３２ＭＢ）１０４の接続を示す図である。図示のように、フラッシュＲＯＭ１０４の書き込み端子ＷＲ＃にＳＯＣ１０３からのライト信号ｎＷＲが与えられる。また、フラッシュＲＯＭ１０４の読み出し端子ＯＥ＃にＳＯＣ１０３のからのライト信号ｎＯＥが与えられる。
【００７２】
そして、フラッシュＲＯＭ１０４のアクセス端子ＣＥ＃ｎＧにＳＯＣ１０３からのアクセス信号ｎＣＥが与えられる。ここで、前述のモード信号ｎＢＹＴＥをＨ（ＶＣＣ）にして、フラッシュＲＯＭ１０４を１６ビットモードで動作させるようにしておく。
【００７３】
図８は、図７に示す構成におけるフラッシュＲＯＭ１０４のアクセスのタイミングを示すタイミングチャートである。ＳＤＲＡＭ１０５の８ワードにデータをコピーするため、ここでは、１６ビット幅のフラッシュＲＯＭ１０４に対して１６回の連続アクセスが行われる。なお、ここでは、５ｎｓを１サイクルとして定義する。つまり、図１に示すＳＯＣ１０３及びＳＤＲＡＭ１０５は２００ＭＨｚで動作しているものとする。
【００７４】
アドレスＡ［２４：１］において、下位アドレス０ｈ〜ｆｈまで１００ｎｓ単位で連続的にアクセスが行われ、その結果、１２５＋１００×１５アクセスが行われる。つまり、１６２５ｎｓ（１．６２５ｕｓｅｃ）で８ワード（８×３２ビット）＝１６ハーフワード（１６×１６ビット）のアクセスが行われる。
【００７５】
ここでは、アドレスウエイト（Ａｄｄｒｅｓｓ  Ｗａｉｔ）は２５ｎｓ、つまり、アドレスウエイト値は５ｈに設定される。データウエイト（Ｄａｔａ  Ｗａｉｔ）は１００ｎｓ、つまり、データウエイト値は１４ｈに設定される。この結果、毎回１００ｎｓでフラッシュＲＯＭ１０４をリードすることになる。
【００７６】
上記の構成であると、１６回連続的にアクセスを行うから、下位アドレス８ｈのときに、時間１００ｎｓが必要となる。このため、ページアクセス方式によるメリットを享受することができず、全てのアクセスが１００ｎｓ以上の時間を要するため、起動時間がかかってしまうことになる。
【００７７】
この結果、フラッシュＲＯＭ１０４が３２ＭＢの容量となると単純にフラッシュＲＯＭ１０４のアクセス時間だけで１秒かかってしまうことになる。
【００７８】
次に、ＳＦＰ１００（図１）の起動時間を短縮させるために１６ＭバイトのフラッシュＲＯＭ１０４を２つ搭載した例について説明する。
【００７９】
図９は、図１に示すフラッシュＲＯＭ１０４を２つ用いた場合のＳＤＲＡＭとの接続関係を示す図である。図示のように、ＳＯＣ１０３には２つのフラッシュＲＯＭ１０４と４つのＳＤＲＡＭ１０５とがそれぞれＳＯＣ１０３に接続されている。ここでは、フラッシュＲＯＭ１０４の各々のバス幅は８ビットであり、合計のバス幅は８ビット×２＝１６ビットである。ＳＤＲＡＭ１０５の各々のバス幅は１６ビットで、合計のバス幅は６４ビットとなる。
【００８０】
図１０は、図９に示すフラッシュＲＯＭ１０４がページアクセス方式のＮＯＲ型のフラッシュＲＯＭ（１６Ｍバイト×２＝３２Ｍバイト）である場合の接続を示す図である。図示のように、フラッシュＲＯＭ１０４の書き込み端子ＷＲ＃にＳＯＣ１０３からのライト信号ｎＷＲが接続される。また、フラッシュＲＯＭ１０４の読み出し端子ＯＥ＃にＳＯＣ１０３からのリード信号ｎＯＥが接続される。
【００８１】
さらに、フラッシュＲＯＭ１０４のアクセス端子ＣＥ＃にＳＯＣ１０３からのアクセス信号ｎＣＥが接続される。そして、データバスを８ビットずつ各フラッシュＲＯＭ１０４に接続する。この際、未使用のアドレス信号Ｄ１５／Ａ−１をアドレスバスに接続して、モード信号ｎＢＹＴＥをＬとする。
【００８２】
このような接続状態においては、ページアクセスが１６回連続的に可能になって、ページアクセス式のＮＯＲ型のフラッシュＲＯＭ１０４の特徴を引き出すことができる。
【００８３】
図１１は、図１０に示す構成におけるフラッシュＲＯＭ１０４のアクセスのタイミングを示すタイミングチャートである。図示のように、この構成では、最初のアクセス時間は１２５ｎｓとなるが、後の１５回のアクセスは２５ｎｓで、連続的にアクセスすることができる。つまり、合計５００ｎｓでアクセスすることができる。３２Ｍバイトのアクセスで約０．５ｍｓかかる。
【００８４】
この場合、アドレスウエイトに１００ｎｓ、つまり、その設定値を１４ｈとし、データウエイトに２５ｎｓ、つまり、データウエイト値を５ｈとする。しかしながら、２つのフラッシュＲＯＭ１０４が基板上に存在する関係上、アドレスバスの分も考慮すると、基板面積が大きくなってしまう。
【００８５】
また、フラッシュＲＯＭ１０４について、１６Ｍバイト（１２８Ｍビット）２つの価格と３２Ｍバイト（２５６Ｍバイト）１つの価格とでは、１６ＭバイトのフラッシュＲＯＭ１０４が２つの方が３２ＭバイトのフラッシュＲＯＭ１０４が１つよりもその価格が高い。その結果、１６ＭバイトのフラッシュＲＯＭ１０４を２つ用いると、コストアップとなってしまう。
【００８６】
そのため、本発明の実施の形態では、以下のようなメモリ制御回路を用いて、上述したアクセス時間の低減、コストの低減、フラッシュＲＯＭの基板上に占める面積の低減を達成することにした。
【００８７】
図１２は、本発明の実施の形態によるメモリ制御回路で用いられるＲＯＭインターフェースの構成を示すブロック図である。なお、本発明の実施の形態によるメモリ制御回路は、図１に示すＳＯＣ１０３が有している。そして、ここで用いられるＳＯＣ１０３の構成は図２で説明した構成を有している。
【００８８】
なお、図１２で説明するＲＯＭインターフェースは、図２に示すＲＯＭインターフェース２０２とその内部構成が異なるので、ここでは参照番号２０２ａを付すことにする。
【００８９】
図１２において、ＲＯＭインターフェース２０２ａは、シーケンサー（Ｓｅｑｕｅｎｃｅｒ：アクセス制御部）３０１、アドレスデコーダ３０２、バッファ（Ｄ−ＢＵＦ）３０３、内部レジスタ３０４、及びセレクタ（Ｄ−ＳＥＬ）３０５を有している。ここでは、ＲＯＭインターフェース２０２ａが不揮発性メモリインターフェースである。
【００９０】
そして、内部レジスタ３０４は、アドレスウエイトレジスタ（アドレスウエイト設定部）３０４１、データウエイトレジスタ（データウエイト設定部）３０４２、及びバウンダリーウエイトレジスタ（バウンダリーウエイト設定部）３０４３を有している。
【００９１】
シーケンサー３０１はＲＯＭインターフェース２０２ａ全体の制御を司るものであり、例えば、外部制御信号の送出、内部制御、及びタイミング制御を行っている。アドレスデコーダ３０２は、ＣＰＵ２０１（図２）からのアドレスをデコードするためのものであり、ＲＯＭアドレス及び内部レジスタ３０４にアクセスすることの可否を判定する。
【００９２】
内部レジスタ３０４は、フラッシュＲＯＭ１０４（図１）のアクセス際、アドレスウエイト（Ａｄｄｒｅｓｓ  Ｗａｉｔ）値、データウエイト（Ｄａｔａ  Ｗａｉｔ）値、及びバウンダリーウエイト（Ｂｏｕｎｄａｒｙ  Ｗａｉｔ）値をそれぞれレジスタ値として設定するためのレジスタである。
【００９３】
なお、ＣＰＵ２０１に指示に基づいて、アドレスウエイト値、データウエイト値、及びバウンダリーウエイト値はそれぞれアドレスウエイトレジスタ３０４１、データウエイトレジスタ３０４２、及びバウンダリーウエイトレジスタ３０４３に設定される。
【００９４】
Ｄ−ＳＥＬ３０５は、ＣＰＵ２０１がリードするためのデータを、ＲＯＭインターフェース２０２ａ内のデータに切り替えるためのものである。
【００９５】
ここで、図２及び図１２を参照すると、ＣＰＵ２０１は、シーケンサー３０１に対して書き込み制御信号ｎＷ及び読み出し制御信号ｎＲを選択的に与える。また、ＣＰＵ２０１はアドレス信号Ａ［２４：１］をＲＯＭインターフェース２０２ａに与える。フラッシュＲＯＭ１０４からデータの読み出しを行う際には、ＣＰＵ２０１は読み出し制御信号ｎＲをＲＯＭインターフェース２０２ａに送出する。
【００９６】
アドレス信号Ａ［２４：１］は、アドレスデコーダ３０２でデコードされて、シーケンサー３０１に与えられるとともに、内部レジスタ３０４及びＤ−ＳＥＬ３０５に与えられる。内部レジスタ３０４は、アドレス信号Ａ［２４：１］及び読み出し制御信号ｎＲに応じて、アドレスウエイト値、データウエイト値、及びバウンダリーウエイト値を保持する。
【００９７】
一方、シーケンサー３０１は、アドレス信号［２４：１］、読み出し制御信号ｎＲ、アドレスウエイト値、データウエイト値、及びバウンダリーウエイト値に応じて、アクセス信号ｎＣＥ及びリード信号ｎＯＥを出力する。
【００９８】
なお、書き込みの場合には、リード信号ｎＯＥに代わって、ライト信号ｎＷＲが出力されることになる。また、上記のバウンダリーウエイト値は、ページアクセスにおけるアクセス長を超えた場合の最初のアクセス時間の設定を行うためのものである。そして、フラッシュＲＯＭ１０４から読み出されたデータはＤ−ＢＵＦ３０３を介してＣＵＰ２０１にＤ−ＯＵＴとして与えられる。
【００９９】
上記のように、内部レジスタ３０４は、ＣＰＵ２０１によってライト・リードアクセス可能であり、ＣＰＵ２０１によって内部レジスタ３０４書き込まれたレジスタ値によって、フラッシュＲＯＭ１０４をリードするタイミングが決定されることになる。
【０１００】
ここでは、ＳＦＰ１００（図１）に搭載されたフラッシュＲＯＭ１０４のアクセス時間に応じて、上述のレジスタ値が調整されることになる。なお、内部レジスタ３０４は、電源投入時は最も大きなレジスタ値が設定される。つまり、電源投入時には、フラッシュＲＯＭ１０４に対して、最も遅い設定でアクセスが行われることになる。
【０１０１】
図１３は、図１２に示すＲＯＭインターフェース２０２ａを用いた場合のフラッシュＲＯＭ１０４のアクセスのタイミングを示すタイミングチャートである。
【０１０２】
図示の例では、最初のアクセス時間が１２５ｎｓ、ページアクセス時間が２５ｎｓである。下位アドレスが８ｈのところのアクセスだけ、レジスタ値の調整によって最初のアクセスタイミングにすると、フラッシュＲＯＭ１０４が１つでもページアクセス式のメリットを生かすことができる。この場合、下位アドレス８ｈのところだけ１００ｎｓでアクセスすると１６×１６のデータがすべてリード可能になる。
【０１０３】
また、アドレスウエイトを１００ｎｓ、つまり、アドレスウエイト値を１４ｈとする。さらに、データウエイトを２５ｎｓ、つまり、データウエイト値を５ｈする。そして、バウンダリーウエイトを７５ｎｓ、つまり、バウンダリーウエイト値を０ｅｈにする。これによって、アドレス８ｈの箇所のアクセス時間が１００ｎｓになる。
【０１０４】
この結果、１サイクルのアクセス時間が５２５ｎｓになり、３２ＭバイトのフラッシュＲＯＭ１０４をアクセスする場合においてもアクセスでも約０．５ｍｓになり、図８に示すフラッシュＲＯＭ１０４と同様の構成でありながら、起動時間（つまり、立ち上げ時間）が約０．５秒以上短縮できることになる。
【０１０５】
なお、図示の例では、バウンダリーウエイト値を設定する間隔を”８”としたが、その間隔を変更できるレジスタ及び回路等の機能を設けるようにしてもよい。
【０１０６】
以上のようにして、本発明の実施の形態では、フラッシュＲＯＭ（不揮発性メモリ）１０４に記憶されたデータを、ＳＤＲＡＭ（高速メモリ）１０５に展開する際に、内部レジスタ（データウエイト設定部、アドレスウエイト設定部、バウンダリーウエイト設定部）３０４に、データウエイト値、アドレスウエイト値、及びバウンダリーウエイト値を保持して、シーケンサー（アクセス制御部）３０１が、データウエイト値、アドレスウエイト値、及びバウンダリーウエイト値に応じて、フラッシュＲＯＭ１０４のアクセス時間を調整するようにしている。この結果、１つのフラッシュＲＯＭに対する１サイクルのアクセス時間を短縮することができる。
【０１０７】
従って、ＳＦＰ等の機器に実装するフラッシュＲＯＭの実装個数を少なくして、しかもフラッシュＲＯＭからのデータ読み出し時間、つまり、起動時間を短縮することができる。よって、本発明の実施の形態によるメモリ制御回路を用いれば、ダウンサイジング・コストダウンに起因する起動時間の遅延を改善することができるという効果がある。
【符号の説明】
【０１０８】
１０３  システムオンチップ（ＳＯＣ）
１０４  Ｆｌａｓｈ  ＲＯＭ
１０５  ＳＤＲＡＭ
２０１  ＣＰＵ
２０２  ＲＯＭインターフェース
３０１  シーケンサー
３０２  デコーダー
３０４  レジスタ部
３０４１  アドレスウエイトレジスタ
３０４２  データウエイトレジスタ
３０４３  バウンダリーウエイトレジスタ
【図１】
2011123648.tif 000003
【図２】
2011123648.tif 000004
【図３】
2011123648.tif 000005
【図４】
2011123648.tif 000006
【図５】
2011123648.tif 000007
【図６】
2011123648.tif 000008
【図７】
2011123648.tif 000009
【図８】
2011123648.tif 000010
【図９】
2011123648.tif 000011
【図１０】
2011123648.tif 000012
【図１１】
2011123648.tif 000013
【図１２】
2011123648.tif 000014
【図１３】
2011123648.tif 000015