(57)【要約】【課題】外部メモリのメモリアクセス方式が固定ウエイトの場合、中央処理装置と外部メモリとのメモリアクセスを正常に行うためには、外部メモリのメモリスペックに応じたウエイトサイクルを適切に設定する必要があるが、ウエイトサイクルの値が適切に設定されていないと、外部メモリとのメモリアクセスに失敗するおそれがある。【解決手段】システムコントローラ１００のメモリアクセス調整装置５内の計測器６、および比較器７により、リードアクセスを開始してから、外部メモリ４へのライトデータと外部メモリ４からのリードデータとが一致するまでのアクセスタイムを計測し、メモリアクセス制御装置３が、その結果に基づいて、外部メモリ４のメモリスペックに応じたウエイトサイクルを自動的に設定する。【選択図】図１
2008217295.tif 000002
【特許請求の範囲】
【請求項１】
中央演算処理装置と、該中央演算処理装置から外部メモリへのメモリアクセスを制御するメモリアクセス制御装置とを備えたシステムコントローラにおいて、
前記外部メモリに対するライトデータを格納し、該ライトデータを前記外部メモリからのリードデータと比較する比較器と、前記外部メモリに対するアクセスタイムを計測する計測器と、を有するメモリアクセス調整回路を備え、
前記メモリアクセス調整回路は、前記中央演算処理装置から前記外部メモリへのリードアクセスが開始してから、前記比較器により前記外部メモリに対するライトデータと前記外部メモリのリードデータとが一致するまでのアクセスタイムを計測し、該アクセスタイムの計測結果を前記メモリアクセス制御回路に通知し、
前記メモリアクセス制御回路は、前記アクセスタイムの計測結果を受け、ウエイトサイクルを設定する、
ことを特徴とするシステムコントローラ。
【請求項２】
請求項１記載のシステムコントローラにおいて、
前記メモリアクセス調整装置が、前記外部メモリのあるアドレス領域にアクセスしたときのアクセスタイムの計測結果から学習するアクセス時間学習回路を有し、再度、前記外部メモリのあるアドレス領域にアクセスされたとき、その学習値を適用する、
ことを特徴とするシステムコントローラ。
【請求項３】
請求項１記載のシステムコントローラにおいて、
前記メモリアクセス調整装置が、測定用クロックを発生するクロックジェネレータを有し、
前記計測器は、前記外部メモリに対するアクセスタイムを、前記クロックジェネレータが発生した前記測定用クロックを用いて計測する、
ことを特徴とするシステムコントローラ。
【請求項４】
請求項１記載のシステムコントローラにおいて、
前記メモリアクセス調整装置が、
時間をカウントし、所定の時間をカウントしたとき、擬似アクノリッジ信号の生成、前記外部メモリに対するアクセス方式を変更するためのメモリアクセス可変信号の生成、を行うカウンタを有し、前記中央演算処理装置による前記外部メモリへのメモリアクセスを開始してから所定の時間を経過すると、擬似アクノリッジ信号及びメモリアクセス可変信号を生成して前記メモリアクセス制御装置に通知し、
前記メモリアクセス制御装置は、前記擬似アクノリッジ信号を受けると、メモリアクセスを終了し、前記メモリアクセス可変信号を受けると、前記外部メモリに対するアクセス方式を変更する、
ことを特徴とするシステムコントローラ。
【請求項５】
請求項４記載のシステムコントローラにおいて、
前記メモリアクセス調整装置が、前記擬似アクノリッジ信号生成のウエイト時間を設定するレジスタを有し、
前記カウンタは、前記中央演算処理装置による前記外部メモリへのメモリアクセスを開始してから前記レジスタにより設定された時間が経過すると、擬似アクノリッジ信号を生成する、
ことを特徴とするシステムコントローラ。
【請求項６】
請求項５記載のシステムコントローラにおいて、
前記レジスタが、複数の各外部メモリに対する、擬似アクノリッジ信号生成のウエイト時間情報を格納し、
前記メモリアクセス調整装置が、アクセス対象の外部メモリを決定するアドレスデコーダを有し、前記中央演算処理装置から発行されるアドレスに基づいて、複数の外部メモリの１つをアクセス対象の外部メモリとして特定し、該アクセス対象の外部メモリに対する、擬似アクノリッジ信号生成のウエイト時間を、前記レジスタに格納されている情報に基づいて設定する、
ことを特徴とするシステムコントローラ。
【請求項７】
中央演算処理装置と、該中央演算処理装置から外部メモリへのメモリアクセスを制御するメモリアクセス制御装置とを備え、前記中央演算処理装置から出力されるアドレス及びデータをマルチプレックスし、外部ラッチ回路を介して外部メモリにアクセスするシステムコントローラにおいて、
アドレス及びデータがマルチプレックスされた信号から外部のラッチ回路によりアドレスをラッチするために使用されるチップセレクト信号の信号レベルを計測する信号レベル計測器と、
前記信号レベル計測器により前記チップセレクト信号のネゲート期間が一定期間より短くなったことが検出されたとき、前記チップセレクト信号を出力するＩ／Ｏセルの電流能力を上げ、前記外部ラッチ回路に出力するチップセレクト信号の信号レベルを調整する電流能力調整回路とを備えた、
ことを特徴とするシステムコントローラ。
【請求項８】
請求項７記載のシステムコントローラにおいて、
前記チップセレクト信号のネゲート時間を設定するレジスタを備え、
前記電流能力調整回路は、前記信号レベル計測器により前記チップセレクト信号のネゲート期間が前記レジスタにより設定された期間より短くなったことが検出されたとき、前記Ｉ／Ｏセルの電流能力を調整する、
ことを特徴とするシステムコントローラ。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、外部メモリに対しメモリアクセスを行うシステムコントローラに関する。
【背景技術】
【０００２】
図１４は、従来のシステムコントローラ１０００の主要部を模式的に示したものである。図１４に示されるように、システムコントローラ１０００は、中央演算処理装置（以下、ＣＰＵ）２と、メモリアクセス制御装置３とを備え、外部メモリ４にメモリアクセスを行う。
【０００３】
ＣＰＵ２とメモリアクセス制御装置３とは、アドレス信号ＡＤ、データ信号ＤＴ、チップセレクト信号ＣＳ、およびアクノリッジ信号ＤＫを介して接続されている。
【０００４】
また、メモリアクセス制御装置３と外部メモリ４とは、アドレス信号ＡＤ、データ信号ＤＴ、チップセレクト信号ＣＳ、およびアクノリッジ信号ＤＫを介して接続されている。
【０００５】
以上のように構成された従来のシステムコントローラについて、以下にその動作を説明する。
一般にＣＰＵ２から外部メモリ４へのメモリアクセス方式としては、固定ウエイトモードと、ハンドシェークモードがある。
【０００６】
ＣＰＵ２から外部メモリ４へのメモリアクセスは、まず、ＣＰＵ２がアクセスしたい外部メモリ４のアドレス信号ＡＤおよびチップセレクト信号ＣＳをメモリアクセス制御装置３に出力してメモリアクセス要求を行い、メモリアクセス制御装置３が受け取ったアドレス信号ＡＤおよびチップセレクト信号ＣＳを外部メモリ４に出力することにより、開始される。
【０００７】
ＣＰＵ２から外部メモリ４へのメモリアクセス方式が固定ウエイトモードの場合、メモリアクセスを開始後、メモリアクセス制御装置３によって設定されたウエイトサイクルを経た時点で、メモリアクセスを終了する。
【０００８】
一方、ＣＰＵ２から外部メモリ４へのメモリアクセス方式がハンドシェークモードの場合、メモリアクセスを開始後、外部メモリ４への一連の処理が終わると、外部メモリ４からＣＰＵ２へ、メモリアクセス制御装置３を介してアクノリッジ信号ＤＫが返却され、メモリアクセスを終了する。
【０００９】
図１１は、従来のアドレス・データマルチプレックス方式のシステムコントローラの構成を示している。
【００１０】
図１１に示す従来のシステムコントローラ９００は、ＣＰＵ２、メモリアクセス制御装置３、及びＩ／Ｏセル２０を備え、外部ラッチ回路１１を介して外部メモリ４へのメモリアクセスを行う。
【００１１】
なお、ＣＰＵ２と、メモリアクセス制御装置３とは、アドレス信号ＡＤ、データ信号ＤＴ、チップセレクト信号ＣＳを介して接続されている。
【００１２】
また、メモリアクセス制御装置３と、外部メモリ４とは、Ｉ／Ｏセル２０および外部ラッチ回路１１を介して、アドレス信号ＡＤ、データ信号ＤＴ、およびチップセレクト信号ＣＳで接続されている。
【００１３】
また外部ラッチ回路１１は、メモリアクセス制御装置３からＩ／Ｏセル２０を介してマルチプレックス信号ＡＤ／ＤＴ、およびチップセレクト信号ＣＳを受けている。
【００１４】
このような構成のシステムコントローラ９００の動作について説明する。
まず、ＣＰＵ２は、外部メモリ４用のチップセレクト信号ＣＳをアサートにし、アクセスしたいアドレス領域を示すアドレス信号ＡＤ、および、書き込みたいデータＤＴをメモリアクセス制御装置３に出力し、外部メモリ４へのメモリアクセスを要求する。
【００１５】
メモリアクセス制御装置３は、受け取ったアドレス信号ＡＤ及びデータＤＴを合成し、マルチプレックス信号ＡＤ／ＤＴを、Ｉ／Ｏセル２０を介してラッチ回路１１に出力する。さらに、チップセレクト信号ＣＳを、ラッチイネーブル信号としてラッチ回路１１に出力する。
【００１６】
ラッチ回路１１は、チップセレクト信号ＣＳによりアドレス信号ＡＤをラッチする。つまり、チップセレクト信号ＣＳがＨＩＧＨレベル区間（ネゲート期間）のときにアドレス信号ＡＤを分離する。これにより、マルチプレックス信号ＡＤ／ＤＴを、アドレス信号ＡＤとデータ信号ＤＴに分離して外部メモリ４に出力する。
【特許文献１】特開平６−３４８５８１号公報
【特許文献２】特開平７−８４９８８号公報
【発明の開示】
【発明が解決しようとする課題】
【００１７】
しかしながら、図１４に示すシステムコントローラ１０００では、システムコントローラ１０００の外部メモリ４へのメモリアクセス方式が固定ウエイトモードの場合、システムコントローラ１０００と外部メモリ４との間で正常にメモリアクセスを行うためには、予め外部メモリ４のメモリスペックを知る必要があり、それに応じて、システムコントローラ１０００側で、ウエイトサイクルを適切に設定しなければならなかった。
【００１８】
また、図１１に示すアドレス・データマルチプレックス方式のシステムコントローラ９００では、外部メモリ４へのメモリアクセスを行う際に出力するチップセレクト信号ＣＳが、外部のラッチ回路１１でラッチイネーブルとして使用されるが、チップセレクト信号ＣＳのＨＩＧＨレベル区間が、図１３に示すように外部環境の悪化等の影響により短くなってしまった場合、チップセレクト信号ＣＳを出力するＩ／Ｏセル１２の電流能力が低いと、チップセレクト信号のＨＩＧＨレベル区間を正しく認識することができず、その結果、アドレス信号ＡＤが正しくラッチされずに、システムが暴走してしまう可能性がある。
【００１９】
本発明は、上記従来の問題点を解決するためになされたもので、外部メモリのメモリスペックに応じたウエイトサイクルの設定を自動的に行うことができるシステムコントローラを提供することを目的とする。また、システムの暴走を回避可能なシステムコントローラを提供することを目的とする。
【課題を解決するための手段】
【００２０】
上記課題を達成するために、本発明の請求項１にかかるシステムコントローラは、中央演算処理装置と、該中央演算処理装置から外部メモリへのメモリアクセスを制御するメモリアクセス制御装置とを備えたシステムコントローラにおいて、前記外部メモリに対するライトデータを格納し、該ライトデータを前記外部メモリからのリードデータと比較する比較器と、前記外部メモリに対するアクセスタイムを計測する計測器と、を有するメモリアクセス調整回路を備え、前記メモリアクセス調整回路は、前記中央演算処理装置から前記外部メモリへのリードアクセスが開始してから、前記比較器により前記外部メモリに対するライトデータと前記外部メモリのリードデータとが一致するまでのアクセスタイムを計測し、該アクセスタイムの計測結果を前記メモリアクセス制御回路に通知し、前記メモリアクセス制御回路は、前記アクセスタイムの計測結果を受け、ウエイトサイクルを設定する、ことを特徴とする。
【００２１】
これにより、外部メモリのメモリスペックに応じたウエイトサイクルの設定を自動的に行うことができる。
【００２２】
また、本発明の請求項２にかかるシステムコントローラは、請求項１記載のシステムコントローラにおいて、前記メモリアクセス調整装置が、前記外部メモリのあるアドレス領域にアクセスしたときのアクセスタイムの計測結果から学習するアクセス時間学習回路を有し、再度、前記外部メモリのあるアドレス領域にアクセスされたとき、その学習値を適用する、ことを特徴とする。
【００２３】
これにより、環境変化などによりスペックが悪化しても円滑なアクセスを実現可能である。
【００２４】
また、本発明の請求項３にかかるシステムコントローラは、請求項１記載のシステムコントローラにおいて、前記メモリアクセス調整装置が、測定用クロックを発生するクロックジェネレータを有し、前記計測器は、前記外部メモリに対するアクセスタイムを、前記クロックジェネレータが発生した前記測定用クロックを用いて計測する、ことを特徴とする。
【００２５】
これにより、外部メモリに対するアクセスタイムを高精度に計測することができる。
【００２６】
また、本発明の請求項４にかかるシステムコントローラは、請求項１記載のシステムコントローラにおいて、前記メモリアクセス調整装置が、時間をカウントし、所定の時間をカウントしたとき、擬似アクノリッジ信号の生成、前記外部メモリに対するアクセス方式を変更するためのメモリアクセス可変信号の生成、を行うカウンタを有し、前記中央演算処理装置による前記外部メモリへのメモリアクセスを開始してから所定の時間を経過すると、擬似アクノリッジ信号及びメモリアクセス可変信号を生成して前記メモリアクセス制御装置に通知し、前記メモリアクセス制御装置は、前記擬似アクノリッジ信号を受けると、メモリアクセスを終了し、前記メモリアクセス可変信号を受けると、前記外部メモリに対するアクセス方式を変更する、ことを特徴とする。
【００２７】
これにより、自動的に外部メモリのアクセス方式に対応することができる。
【００２８】
また、本発明の請求項５にかかるシステムコントローラは、請求項４記載のシステムコントローラにおいて、前記メモリアクセス調整装置が、前記擬似アクノリッジ信号生成のウエイト時間を設定するレジスタを有し、前記カウンタは、前記中央演算処理装置による前記外部メモリへのメモリアクセスを開始してから前記レジスタにより設定された時間が経過すると、擬似アクノリッジ信号を生成する、ことを特徴とする。
【００２９】
これにより、外部メモリに対応したタイムアウト時間を設定することができ、ＣＰＵ処理の占有時間の低減を実現可能であり、システムのパフォーマンスの向上を図ることができる。
【００３０】
また、本発明の請求項６にかかるシステムコントローラは、請求項５記載のシステムコントローラにおいて、前記レジスタが、複数の各外部メモリに対する、擬似アクノリッジ信号生成のウエイト時間情報を格納し、前記メモリアクセス調整装置が、アクセス対象の外部メモリを決定するアドレスデコーダを有し、前記中央演算処理装置から発行されるアドレスに基づいて、複数の外部メモリの１つをアクセス対象の外部メモリとして特定し、該アクセス対象の外部メモリに対する、擬似アクノリッジ信号生成のウエイト時間を、前記レジスタに格納されている情報に基づいて設定する、ことを特徴とする。
【００３１】
これにより、複数の外部メモリに対応したタイムアウト時間を設定することができ、ＣＰＵ処理の占有時間の低減を実現可能であり、システムの汎用性の向上を図ることができる。
【００３２】
また、本発明の請求項７にかかるシステムコントローラは、中央演算処理装置と、該中央演算処理装置から外部メモリへのメモリアクセスを制御するメモリアクセス制御装置とを備え、前記中央演算処理装置から出力されるアドレス及びデータをマルチプレックスし、外部ラッチ回路を介して外部メモリにアクセスするシステムコントローラにおいて、アドレス及びデータがマルチプレックスされた信号から外部のラッチ回路によりアドレスをラッチするために使用されるチップセレクト信号の信号レベルを計測する信号レベル計測器と、前記信号レベル計測器により前記チップセレクト信号のネゲート期間が一定期間より短くなったことが検出されたとき、前記チップセレクト信号を出力するＩ／Ｏセルの電流能力を上げ、前記外部ラッチ回路に出力するチップセレクト信号の信号レベルを調整する電流能力調整回路とを備えた、ことを特徴とする。
【００３３】
これにより、どの条件下でもラッチミスを防ぐことができ、ラッチミスによるシステムの暴走を回避することができる。
【００３４】
また、本発明の請求項８にかかるシステムコントローラは、請求項７記載のシステムコントローラにおいて、前記チップセレクト信号のネゲート時間を設定するレジスタを備え、前記電流能力調整回路は、前記信号レベル計測器により前記チップセレクト信号のネゲート期間が前記レジスタにより設定された期間より短くなったことが検出されたとき、前記Ｉ／Ｏセルの電流能力を調整する、ことを特徴とする。
【００３５】
これにより、どの条件下でもラッチミスを防ぐことができ、ラッチミスによるシステムの暴走を回避することができる。
【発明の効果】
【００３６】
本発明にかかるシステムコントローラによれば、外部メモリに対するライトデータを比較器に格納し、リードアクセスを開始してから、前記比較器に格納されているライトデータと前記外部メモリのリードデータとが一致するまでのアクセスタイムを計測し、該アクセスタイムの計測結果に基づいてウエイトサイクルを設定するようにしたので、外部メモリのメモリスペックに応じたウエイトサイクルの設定を自動的に行うことができる。
【００３７】
また、本発明にかかるシステムコントローラによれば、アドレス及びデータをマルチプレックスして外部メモリへのメモリアクセスを行う際に、外部ラッチ回路のラッチイネーブルとなるチップセレクト信号のネゲート期間を監視し、該ネゲート期間が、アドレスをラッチするために必要な期間を満たさないことを検出すると、該チップセレクト信号を出力するＩ／Ｏセルの電流能力を上げて、該チップセレクト信号のネゲート期間を調整するようにしたので、どの条件下でもラッチミスを防ぐことができ、ラッチミスによるシステムの暴走を回避することができる。
【発明を実施するための最良の形態】
【００３８】
以下、本発明の実施の形態について、図を参照しながら説明する。
（実施の形態１）
以下に、本発明の実施の形態１によるシステムコントローラについて説明する。
【００３９】
図１は、本実施の形態１におけるシステムコントローラ１００の概略構成図である。本図１において、図１４と同一符号は同一、または相当部分を示す。
【００４０】
図１に示すシステムコントローラ１００は、ＣＰＵ２、メモリアクセス制御装置３、およびメモリアクセス調整装置５を備えている。
【００４１】
ＣＰＵ２は、外部メモリ４へのアクセス要求を行う。このとき、メモリアクセス制御装置３に対し、外部メモリ４用のチップセレクト信号ＣＳをアサートし、アクセスしたいアドレス領域を示すアドレス信号ＡＤを出力する。また、ライトアクセスを行うときは、ライトイネーブル信号ＷＥをアサートするとともに、ライトデータＤＴを出力する。リードアクセスを行うときは、リードイネーブル信号ＲＥをアサートする。
【００４２】
メモリアクセス制御装置３は、ＣＰＵ２からのメモリアクセス要求に応じて、外部メモリ４へのメモリアクセスを行う。また、ライトアクセスあるいはリードアクセスの開始時にメモリアクセス開始信号ＭＳをアサートし、１ウエイトサイクル後にネゲートする。
【００４３】
メモリアクセス調整装置５は、計測器６と比較器７とを有する。比較器７は、外部メモリ４へのライトデータを格納するバッファを有し、外部メモリ４へのライトデータと、外部メモリ４からのリードデータとを比較する。計測器６は、外部メモリ４へのメモリアクセスタイムを計測する。
【００４４】
ＣＰＵ２と、メモリアクセス制御装置３とは、アドレス信号ＡＤ、データ信号ＤＴ、チップセレクト信号ＣＳ、ライトイネーブル信号ＷＥ、およびリードイネーブル信号ＲＥを介して接続されている。
【００４５】
メモリアクセス制御装置３と、外部メモリ４とは、アドレス信号ＡＤ、データ信号ＤＴ、チップセレクト信号ＣＳ、ライトイネーブル信号ＷＥ、およびリードイネーブル信号ＲＥを介して接続されている。
【００４６】
メモリアクセス制御装置３と、メモリアクセス調整装置５とは、メモリアクセス開始信号ＭＳ、データ信号ＤＴ、ライトイネーブル信号ＷＥ、およびリードイネーブル信号ＲＥを介して接続されている。
【００４７】
以上のように構成された本実施の形態１におけるシステムコントローラについて、以下、その動作を、図１及び図２を参照しつつ説明する。
【００４８】
本実施の形態１では、システムコントローラ１００のメモリアクセス方式は、固定ウエイトモードであり、メモリアクセス制御装置３には、所定のウエイトサイクルが予め設定されている。
【００４９】
図２は、本実施の形態１のシステムコントローラ１００の動作を説明するための信号波形図である。ここでは、ウエイトサイクル設定のためのメモリアクセスとして、ライトアクセスとリードアクセスを連続して行う場合について示しているが、ライトアクセスとリードアクセスの間に他の処理が入っていても良い。
【００５０】
ＣＰＵ２から外部メモリ４に対するライトアクセス要求が発行されると、外部メモリ４用のチップセレクト信号ＣＳ及びメモリアクセス開始信号ＭＳをアサートして、ライトアクセスを開始する。そして、ライトイネーブル信号ＷＥをＬＯＷにして、アドレス信号ＡＤが示すアドレス領域に、データＤＴの書き込みを行う。この外部メモリ４へのライトデータは、メモリアクセス調整回路５の比較器７内のバッファに格納しておく。ライトアクセスを開始後、メモリアクセス制御装置３に設定されているウエイトサイクルを経た時点で、ライトイネーブル信号ＷＥをＨＩＧＨにして、チップセレクト信号ＣＳをネゲートし、ライトアクセスを終了する。
【００５１】
ＣＰＵ２から外部メモリ４に対するリードアクセス要求が発行されると、メモリアクセス開始信号ＭＳをアサートし、リードアクセスを開始する。そして、リードイネーブル信号ＲＥをＬＯＷにして、アドレス信号ＡＤが示すアドレス領域からデータＤＴを読み出す。リードアクセスを開始後、メモリアクセス制御装置３に設定されているウエイトサイクルを経た時点で、リードイネーブル信号ＲＥをＨＩＧＨにして、チップセレクト信号ＣＳをネゲートし、リードアクセスを終了する。
【００５２】
上記外部メモリ４から読み出されたリードデータは、比較器７内のバッファに格納されているライトデータと比較される。両データの一致が検出されると、データの読み出し動作が正常に行われたと認識する。そして、リードアクセスが開始された時点から、外部メモリ４へのライトデータと外部メモリ４のリードデータとが一致するまでの時間（メモリアクセスタイム）を、ＣＰＵ２から計測器６に供給されるクロック（図示せず）で計測する。この計測したメモリアクセスタイムに基づいて、メモリアクセス制御装置３に設定されているウエイトサイクルを変更する。これにより、次アクセスから外部メモリ４のスペックに応じたウエイトサイクルでメモリアクセスを実行することができる。
【００５３】
以上のように本実施の形態１によるシステムコントローラ１００によれば、外部メモリ４にライトデータを書き込んだ後、該ライトデータを読み出すとき、メモリアクセス調整装置５内の計測器６で、リードアクセスの開始時から、外部メモリ４へのライトデータと外部メモリ４のリードデータとが一致するまでの時間を計測し、この計測値に基づいてウエイトサイクルの設定を行うようにしたので、外部メモリのメモリスペックに応じたウエイトサイクルの設定を自動的に行うことができ、システム設定の簡略化によるファームウエア処理の低減を図ることができる。
【００５４】
（実施の形態２）
次に、本発明の実施の形態２によるシステムコントローラについて説明する。
【００５５】
図３は、本実施の形態２におけるシステムコントローラ２００の概略構成図である。本図３において、図１と同一符号は同一、または相当部分を示す。
【００５６】
本実施の形態２のシステムコントローラ２００は、図１に示すシステムコントローラ２００の構成に加え、さらに、メモリアクセス調整装置５内に学習回路８を備えている。
【００５７】
学習回路８は、計測器６から出力される計測値から学習し、再度、上記外部メモリの同じアドレス領域にアクセスされたときに、その学習値を適用する。
【００５８】
ＣＰＵ２と、メモリアクセス制御装置３とは、アドレス信号ＡＤ、データ信号ＤＴ、チップセレクト信号ＣＳ、ライトイネーブル信号ＷＥ、およびリードイネーブル信号ＲＥを介して接続されている。
【００５９】
メモリアクセス制御装置３と、外部メモリ４とは、アドレス信号ＡＤ、データ信号ＤＴ、チップセレクト信号ＣＳ、ライトイネーブル信号ＷＥ、およびリードイネーブル信号ＲＥを介して接続されている。
【００６０】
メモリアクセス制御装置３と、メモリアクセス調整装置３とは、メモリアクセス開始信号ＭＳ、データ信号ＤＴ、ライトイネーブル信号ＷＥ、およびリードイネーブル信号ＲＥを介して接続されている。
【００６１】
以上のように構成された本実施の形態２のシステムコントローラ２００について、以下、その動作を、図３を参照しつつ説明する。
【００６２】
本実施の形態２では、システムコントローラ２００のメモリアクセス方式は、固定ウエイトモードであり、メモリアクセス制御装置３内に所定のウエイトサイクルが予め設定されている。
【００６３】
ＣＰＵ２から外部メモリ４に対するライトアクセス要求が発行されると、外部メモリ４用のチップセレクト信号ＣＳ及びメモリアクセス開始信号ＭＳをアサートして、ライトアクセスを開始する。そして、ライトイネーブル信号ＷＥをＬＯＷにして、アドレス信号ＡＤが示すアドレス領域に、データＤＴの書き込みを行う。この外部メモリ４へのライトデータは、メモリアクセス調整回路５の比較器７内のバッファに格納しておく。ライトアクセスを開始後、メモリアクセス制御装置３に設定されているウエイトサイクルを経た時点で、ライトイネーブル信号ＷＥをＨＩＧＨにして、チップセレクト信号ＣＳをネゲートし、ライトアクセスを終了する。
【００６４】
ＣＰＵ２から外部メモリ４に対するリードアクセス要求が発行されると、メモリアクセス開始信号ＭＳをアサートし、リードアクセスを開始する。そして、リードイネーブル信号ＲＥをＬＯＷにして、アドレス信号ＡＤが示すアドレス領域からデータＤＴを読み出す。リードアクセスを開始後、メモリアクセス制御装置３に設定されているウエイトサイクルを経た時点で、リードイネーブル信号ＲＥをＨＩＧＨにして、チップセレクト信号ＣＳをネゲートし、リードアクセスを終了する。
【００６５】
上記外部メモリ４から読み出されたリードデータは、比較器７内のバッファに格納されているライトデータと比較される。両データの一致が検出されると、データの読み出し動作が正常に行われたと認識する。そして、リードアクセスが開始された時点から、外部メモリ４へのライトデータと外部メモリ４のリードデータとが一致するまでの時間（メモリアクセスタイム）を、ＣＰＵ２から計測器６に供給されるクロック（図示せず）で計測する。この計測したメモリアクセスタイムに基づいて、メモリアクセス制御装置３に設定されているウエイトサイクルを変更する。これにより、次アクセスから外部メモリ４のスペックに応じたウエイトサイクルでメモリアクセスを実行することができる。
【００６６】
また、学習回路８により上記計測値を学習することにより、再度同じアドレスにアクセスした場合に、学習値を適用し、メモリアクセス制御装置３に設定されているウエイトサイクルを適応的に更新する。これにより、環境変化や経年劣化によりメモリアクセスタイムが悪化し、計測値があるマージン値を満たさなくなった場合にも、外部メモリ４のメモリスペックに応じたウエイトサイクルの設定を自動的に行うことができる。
【００６７】
以上のように本実施の形態２によるシステムコントローラ２００によれば、外部メモリ４にライトデータを書き込んだ後、そのライトデータを読み出すとき、メモリアクセス調整装置５内の計測器６で、リードアクセスの開始時から、外部メモリ４へのライトデータと外部メモリ４のリードデータとが一致するまでの時間を計測し、この計測値に基づいてウエイトサイクルの設定を行うようにしたので、外部メモリのメモリスペックに応じたウエイトサイクルの設定を自動的に行うことができ、システム設定の簡略化によるファームウエア処理の低減を図ることができる。
【００６８】
さらに、上記計測器７の計測値を学習回路８で学習することにより、環境変化や経年劣化などによるメモリスペック悪化に対して、学習回路８の計算によってマージンを持ったウエイトサイクルの設定を行うことができ、どの環境下でも円滑なアクセスが実現できることから、デバイスの歩留向上を図ることができる。
【００６９】
（実施の形態３）
次に、本発明の実施の形態３によるシステムコントローラについて説明する。
【００７０】
図４は、本実施の形態３におけるシステムコントローラ３００の概略構成図である。本図４において、図１と同一符号は同一、または相当部分を示す。
【００７１】
本実施の形態３のシステムコントローラ３００は、図１に示すシステムコントローラ１００の構成に加え、さらに、メモリアクセス調整回路５内にクロックジェネレータ（ＣＬＫＧＥＮ）９を備えている。
【００７２】
ＣＬＫＧＥＮ９は、測定用クロックを発生する。
【００７３】
ＣＰＵ２と、メモリアクセス制御装置３とは、アドレス信号ＡＤ、データ信号ＤＴ、チップセレクト信号ＣＳ、ライトイネーブル信号ＷＥ、およびリードイネーブル信号ＲＥを介して接続されている。
【００７４】
メモリアクセス制御装置３と、外部メモリ４とは、アドレス信号ＡＤ、データ信号ＤＴ、チップセレクト信号ＣＳ、ライトイネーブル信号ＷＥ、およびリードイネーブル信号ＲＥを介して接続されている。
【００７５】
メモリアクセス制御装置３と、メモリアクセス調整装置３とは、メモリアクセス開始信号ＭＳ、データ信号ＤＴ、ライトイネーブル信号ＷＥ、およびリードイネーブル信号ＲＥを介して接続されている。
【００７６】
以上のように構成された本実施の形態３のシステムコントローラ３００について、以下、その動作を図４を参照しつつ説明する。
【００７７】
本実施の形態３では、システムコントローラ３００のメモリアクセス方式は、固定ウエイトモードであり、メモリアクセス制御装置３には、所定のウエイトサイクルが予め設定されている。
【００７８】
ＣＰＵ２から外部メモリ４に対するライトアクセス要求が発行されると、外部メモリ４用のチップセレクト信号ＣＳ及びメモリアクセス開始信号ＭＳをアサートして、ライトアクセスを開始する。そして、ライトイネーブル信号ＷＥをＬＯＷにして、アドレス信号ＡＤが示すアドレス領域に、データＤＴの書き込みを行う。この外部メモリ４へのライトデータは、メモリアクセス調整回路５の比較器７内のバッファに格納しておく。ライトアクセスを開始後、メモリアクセス制御装置３に設定されているウエイトサイクルを経た時点で、ライトイネーブル信号ＷＥをＨＩＧＨにして、チップセレクト信号ＣＳをネゲートし、ライトアクセスを終了する。
【００７９】
ＣＰＵ２から外部メモリ４に対するリードアクセス要求が発行されると、メモリアクセス開始信号ＭＳをアサートし、リードアクセスを開始する。リードイネーブル信号ＲＥをＬＯＷにして、アドレス信号ＡＤが示すアドレス領域からデータＤＴを読み出す。リードアクセスを開始後、メモリアクセス制御装置３に設定されているウエイトサイクルを経た時点で、リードイネーブル信号ＲＥをＨＩＧＨにして、チップセレクト信号ＣＳをネゲートし、リードアクセスを終了する。
【００８０】
上記外部メモリ４から読み出されたリードデータは、比較器７内のバッファに格納されているライトデータと比較される。両データの一致が検出されると、データの読み出し動作が正常に行われたと認識する。そして、リードアクセスが開始された時点から、外部メモリ４へのライトデータと外部メモリ４のリードデータとが一致するまでの時間（メモリアクセスタイム）を、ＣＬＫＧＥＮ９で生成したクロックで計測する。この計測したメモリアクセスタイムに基づいて、メモリアクセス制御装置３に設定されているウエイトサイクルを変更する。これにより、次アクセスから外部メモリ４のスペックに応じたウエイトサイクルでメモリアクセスを実行することができる。
【００８１】
以上のような本実施の形態３にかかるシステムコントローラ３００によれば、外部メモリ４にライトデータを書き込んだ後、そのライトデータを読み出すとき、メモリアクセス調整装置５内の計測器６で、リードアクセスの開始時から、外部メモリ４へのライトデータと外部メモリ４のリードデータとが一致するまでの時間を計測し、この計測値に基づいてウエイトサイクルの設定を行うようにしたので、外部メモリのメモリスペックに応じたウエイトサイクルの設定を自動的に行うことができ、システム設定の簡略化によるファームウエア処理の低減を図ることができる。
【００８２】
さらに、上記計測器７によるメモリアクセスタイムの計測を、クロックジェネレータ９で発生した、周期の短い測定用クロックを用いて行うようにしたので、外部メモリのアクセス時間をより詳細に計測できることから、アクセス時間の測定精度の向上を図ることができる。
【００８３】
（実施の形態４）
次に、本発明の実施の形態４によるシステムコントローラについて説明する。
【００８４】
図５は、本実施の形態４におけるシステムコントローラ４００の構成を示すものである。本図５において、図１と同一符号は同一、または相当部分を示す。
【００８５】
本実施の形態４のシステムコントローラ４００は、図１に示すシステムコントローラ１００の構成に加え、さらに、メモリアクセス調整回路５内にアクノリッジ信号用セレクタ４１、および内蔵カウンタ４２を備えている。
【００８６】
アクノリッジ信号用セレクタ４１は、正規アクノリッジ信号、あるいは、擬似アクノリッジ信号のいずれかを選択する。
【００８７】
カウンタ４２は、擬似アクノリッジ信号発生時間が設定されている。該擬似アクノリッジ信号発生時間が経過すると、擬似アクノリッジ信号の生成、該擬似アクノリッジ信号の生成を通知するための割り込み信号ＩＮＴの生成、メモリアクセスモードを可変するためのＭＣ信号の生成、および、セレクタ４１の制御、を行う。
【００８８】
ＣＰＵ２と、メモリアクセス制御装置３とは、アドレス信号ＡＤ、データ信号ＤＴ、チップセレクト信号ＣＳ、アクノリッジ信号ＤＫ、ライトイネーブル信号ＷＥ、およびリードイネーブル信号ＲＥを介して接続されている。
【００８９】
メモリアクセス制御装置３と、外部メモリ４とは、アドレス信号ＡＤ、データ信号ＤＴ、チップセレクト信号ＣＳ、ライトイネーブル信号ＷＥ、およびリードイネーブル信号ＲＥを介して接続されている。
【００９０】
メモリアクセス制御装置３と、メモリアクセス調整装置５とは、メモリアクセス開始信号ＭＳ、データ信号ＤＴ、ライトイネーブル信号ＷＥ、リードイネーブル信号ＲＥ、アクノリッジ信号ＤＫ、メモリアクセス可変信号ＭＣ、および、内蔵カウンタリセット信号Ｒｅｓｅｔを介して接続されている。
【００９１】
ＣＰＵ２と、メモリアクセス調整装置５とは、割り込み信号ＩＮＴを介して接続されている。
【００９２】
以上のように構成された本実施の形態４のシステムコントローラ４００について、以下、その動作を、図５を参照しつつ説明する。
【００９３】
本実施の形態４では、システムコントローラ４００のメモリアクセス方式は、ハンドシェークモードである。
【００９４】
まず、外部メモリ４のメモリアクセス方式が、システムコントローラ４００のメモリアクセス方式と異なる場合、つまり、固定ウエイトモードである場合の動作について説明する。
【００９５】
ＣＰＵ２から外部メモリ４に対するライトアクセス要求が発行されると、外部メモリ４用のチップセレクト信号ＣＳ及びメモリアクセス開始信号ＭＳをアサートし、ライトアクセスを開始する。そして、ライトイネーブル信号ＷＥをＬＯＷにして、アドレス信号ＡＤが示すアドレス領域にデータＤＴを書き込む。この外部メモリ４へのライトデータは、メモリアクセス調整回路５の比較器７内のバッファに格納しておく。ライトアクセスを開始後、カウンタ４２に設定されている擬似アクノリッジ信号発生時間が経過すると、カウンタ４２から擬似アクノリッジ信号が発生し、この信号をアクノリッジ信号ＤＫとしてメモリアクセス制御装置３を介してＣＰＵ２に返却する。このとき、カウンタ４２から割り込み信号ＩＮＴを発行して擬似アクセスであることをＣＰＵ２に通知する。その後、ライトイネーブル信号ＷＥをＨＩＧＨにして、チップセレクト信号ＣＳをネゲートし、ライトアクセスを終了する。このとき、メモリアクセス制御装置３からリセット信号Ｒｅｓｅｔが発行され、カウンタ４２のカウント値をリセットする。
【００９６】
ＣＰＵ２から外部メモリ４に対するリードアクセス要求が発行されると、メモリアクセス開始信号ＭＳをアサートし、リードアクセスを開始する。そして、リードイネーブル信号ＲＥをＬＯＷにして、アドレス信号ＡＤが示すアドレス領域からデータＤＴを読み出す。リードアクセスを開始後、カウンタ４２に設定されている擬似アクノリッジ信号発生時間が経過すると、カウンタ４２から擬似アクノリッジ信号が発生し、この信号をアクノリッジ信号ＤＫとしてメモリアクセス制御装置３を介してＣＰＵ２に返却する。
【００９７】
このとき、カウンタ４２から割り込み信号ＩＮＴを発行して擬似アクセスであることをＣＰＵ２に通知し、リードイネーブルＲＥをＨＩＧＨにして、チップセレクト信号ＣＳをネゲートし、リードアクセスを終了する。
【００９８】
また、カウンタ４２からメモリアクセス可変信号ＭＣをメモリアクセス制御装置３に発行し、システムコントローラ４００のメモリアクセス方式を、ハンドシェークモードから固定ウエイトモードに変更する。
【００９９】
上記外部メモリから読み出されたリードデータは、比較器７内のバッファに格納されているライトデータと比較される。両データの一致が検出されると、データの読み出し動作が正常に行われたと認識する。そして、リードアクセスが開始された時点から、外部メモリ４へのライトデータと外部メモリ４のリードデータとが一致するまでの時間（メモリアクセスタイム）を、ＣＰＵ２から計測器６に供給されるクロック（図示せず）で計測する。この計測したメモリアクセスタイムに基づいてウエイトサイクルを設定する。これにより、次アクセスから外部メモリ４のスペックに応じたウエイトサイクルでメモリアクセスを実行することができる。
【０１００】
次に、外部メモリ４のメモリアクセス方式が、システムコントローラ４００のメモリアクセス方式と同様の場合、つまり、ハンドシェークモードである場合の動作について説明する。
【０１０１】
ＣＰＵ２から外部メモリ４に対するメモリアクセス要求が発行されると、外部メモリ４用のチップセレクト信号ＣＳ及びメモリアクセス開始信号ＭＳをアサートにし、メモリアクセスを開始する。外部メモリ４のメモリアクセス方式はハンドシェークモードであるため、メモリアクセスを開始後、カウンタ４２で設定された擬似アクノリッジ信号発生時間内に、外部メモリ４から正規のアクノリッジ信号ＤＫが返却される。この場合、カウンタ４２から擬似アクノリッジ信号やメモリアクセス可変信号ＭＣが発行されても、両信号は無効となる。
【０１０２】
外部メモリ４からのアクノリッジ信号ＤＫの返却により、チップセレクト信号ＣＳがネゲートされ、メモリアクセスが終了する。また、メモリアクセス制御装置３からリセット信号Ｒｅｓｅｔが発行され、カウンタ４２のカウント値がリセットされる。
【０１０３】
以上のような本実施の形態４によるシステムコントローラ４００によれば、システムコントローラ４００のメモリアクセス方式が、外部メモリ４のメモリアクセス方式と異なる場合でも、メモリアクセス調整装置５内のセレクタ４１、およびカウンタ４２により、擬似アクノリッジ信号の生成、正規アクノリッジ信号と擬似アクノリッジ信号の選択制御、およびメモリアクセス方式の変更を行うようにしたので、自動的に外部メモリのメモリアクセス方式に応じたシステムの構築を図ることができる。
【０１０４】
（実施の形態５）
次に、本発明の実施の形態５によるシステムコントローラについて説明する。
【０１０５】
図６は、本実施の形態５におけるシステムコントローラ５００の概略構成図である。本図６において、図１と同一符号は同一、または相当部分を示す。
【０１０６】
本実施の形態５のシステムコントローラ５００は、図１に示すシステムコントローラ１００の構成に加え、さらに、メモリアクセス調整装置５内にアクノリッジ信号用セレクタ５１、内蔵カウンタ５２、ＯＲ回路５３、およびタイムアウト時間設定レジスタ５４を備えている。
【０１０７】
アクノリッジ信号用セレクタ５１は、正規アクノリッジ信号、あるいは擬似アクノリッジ信号のいずれかを選択する。
【０１０８】
カウンタ５２は、擬似アクノリッジ信号発生時間が設定されている。該擬似アクノリッジ信号発生時間が経過すると、擬似アクノリッジ信号の生成、該擬似アクノリッジ信号の生成を通知するための割り込み信号ＩＮＴの生成、メモリアクセスモードを可変するためのＭＣ信号の生成、及び、セレクタ５１の制御、を行う。
【０１０９】
ＯＲ回路５３は、リセット信号用ＯＲ回路であり、メモリアクセス制御装置３からのリセット信号あるいはレジスタ５４からのリセット信号を選択し、カウンタ５２に出力する。
【０１１０】
レジスタ５４は、カウンタ５２のタイムアウト時間、つまり、擬似アクノリッジ信号発生時間を可変可能である。
【０１１１】
ＣＰＵ２と、メモリアクセス制御装置３とは、アドレス信号ＡＤ、データ信号ＤＴ、チップセレクト信号ＣＳ、アクノリッジ信号ＤＫ、ライトイネーブル信号ＷＥ、およびリードイネーブル信号ＲＥを介して接続されている。
【０１１２】
メモリアクセス制御装置３と、外部メモリ４とは、アドレス信号ＡＤ、データ信号ＤＴ、チップセレクト信号ＣＳ、ライトイネーブル信号ＷＥ、およびリードイネーブル信号ＲＥを介して接続されている。
【０１１３】
メモリアクセス制御装置３と、メモリアクセス調整装置５とは、メモリアクセス開始信号ＭＳ、データ信号ＤＴ、ライトイネーブル信号ＷＥ、リードイネーブル信号ＲＥ、アクノリッジ信号ＤＫ、メモリアクセス可変信号ＭＣ、および内蔵カウンタリセット信号Ｒｅｓｅｔを介して接続されている。
【０１１４】
ＣＰＵ２と、メモリアクセス調整装置５とは、割り込み信号ＩＮＴを介して接続されている。
【０１１５】
以上のように構成された本実施の形態５のシステムコントローラ５００について、以下、その動作を、図６を参照しつつ説明する。
【０１１６】
本実施の形態５では、システムコントローラ５００のメモリアクセス方式は、ハンドシェークモードである。
【０１１７】
まず、外部メモリ４のメモリアクセス方式が、固定ウエイトモードである場合の動作について説明する。
【０１１８】
ＣＰＵ２から外部メモリ４に対するライトアクセス要求が発行されると、外部メモリ４用のチップセレクト信号ＣＳ及びメモリアクセス開始信号ＭＳをアサートし、ライトアクセスを開始する。そして、ライトイネーブル信号ＷＥをＬＯＷにして、アドレス信号ＡＤが示すアドレス領域にデータＤＴを書き込む。この外部メモリ４へのライトデータは、メモリアクセス調整回路５の比較器７内に格納しておく。ライトアクセスを開始後、カウンタ５２に設定されている擬似アクノリッジ信号発生時間が経過すると、カウンタ５２から擬似アクノリッジ信号が発生し、これをアクノリッジ信号ＤＫとしてメモリアクセス制御装置３を介してＣＰＵ２に返却する。このとき、カウンタ５２から割り込み信号ＩＮＴを発行して擬似アクセスであることをＣＰＵ２に通知する。その後、ライトイネーブル信号ＷＥをＨＩＧＨにして、チップセレクト信号ＣＳをネゲートし、ライトアクセスを終了する。このとき、メモリアクセス制御装置３、あるいは、レジスタ５４からリセット信号Ｒｅｓｅｔが発行され、カウンタ５２のカウント値をリセットする。
【０１１９】
ＣＰＵ２から外部メモリ４に対するリードアクセス要求が発行されると、メモリアクセス開始信号ＭＳをアサートし、リードアクセスを開始する。そして、リードイネーブル信号ＲＥをＬＯＷにして、アドレス信号ＡＤが示すアドレス領域からデータＤＴを読み出す。リードアクセスを開始後、カウンタ５２に設定されている擬似アクノリッジ信号発生時間が経過すると、カウンタ５２から擬似アクノリッジ信号が発生し、この信号をアクノリッジ信号ＤＫとしてメモリアクセス制御装置３を介してＣＰＵ２に返却する。
【０１２０】
このとき、カウンタ５２から割り込み信号ＩＮＴを発行して擬似アクセスであることをＣＰＵ２に通知し、リードイネーブルＲＥをＨＩＧＨにして、チップセレクト信号ＣＳをネゲートし、リードアクセスを終了する。
【０１２１】
また、カウンタ５２からメモリアクセス可変信号ＭＣをメモリアクセス制御装置３に発行し、システムコントローラ５００のメモリアクセス方式を、ハンドシェークモードから固定ウエイトモードに変更する。
【０１２２】
上記外部メモリから読み出されたリードデータは、比較器７内のバッファに格納されているライトデータと比較される。両データの一致が検出されると、データの読み出し動作が正常に行われたと認識する。そして、リードアクセスが開始された時点から、外部メモリ４へのライトデータと外部メモリ４のリードデータとが一致するまでの時間（メモリアクセスタイム）を、ＣＰＵ２から計測器６に供給されるクロック（図示せず）で計測する。この計測したメモリアクセスタイムに基づいてウエイトサイクルを設定する。これにより、次アクセスから外部メモリ４のスペックに応じたウエイトサイクルでメモリアクセスを実行することができる。
【０１２３】
次に、外部メモリ４のメモリアクセス方式が、システムコントローラ５００のメモリアクセス方式と同様の場合、つまり、ハンドシェークモードである場合の動作について説明する。
【０１２４】
ＣＰＵ２から外部メモリ４に対するメモリアクセス要求が発行されると、外部メモリ４用のチップセレクト信号ＣＳ及びメモリアクセス開始信号ＭＳをアサートにし、メモリアクセスを開始する。外部メモリ４のメモリアクセス方式はハンドシェークモードであるため、メモリアクセスを開始後、カウンタ５２で設定された擬似アクノリッジ信号発生時間内に、外部メモリ４から正規のアクノリッジ信号ＤＫが返却される。この場合、カウンタ５２から擬似アクノリッジ信号やメモリアクセス可変信号ＭＣが発行されても、両信号は無効となる。
【０１２５】
外部メモリ４からのアクノリッジ信号ＤＫの返却により、チップセレクト信号ＣＳがネゲートされ、メモリアクセスが終了する。また、メモリアクセス制御装置３あるいはレジスタ５４からリセット信号Ｒｅｓｅｔが発行され、カウンタ５２のカウント値がリセットされる。
【０１２６】
以上のような本実施の形態５によるシステムコントローラ５００によれば、システムコントローラ５００のメモリアクセス方式が、外部メモリ４のメモリアクセス方式と異なる場合でも、メモリアクセス調整装置５内のセレクタ５１、およびカウンタ５２により、擬似アクノリッジ信号の生成、正規アクノリッジ信号と擬似アクノリッジ信号の選択制御、およびメモリアクセス方式の変更を行うようにしたので、自動的に外部メモリのメモリアクセス方式に応じたシステムの構築を図ることができる。
【０１２７】
さらに、上記メモリアクセス調整装置５内のレジスタ５４により、擬似アクノリッジ信号の発生時間を自由に可変するようにしたので、システムに対応したタイムアウト時間を設定することができ、その結果、ＣＰＵ処理の占有時間を低減させることができ、システムのパフォーマンスの向上を図ることができる。
【０１２８】
（実施の形態６）
次に、本発明の実施の形態６によるシステムコントローラについて説明する。
【０１２９】
図７は、本実施の形態６においてシステムコントローラ６００の概略構成図である。本図７において、図１と同一符号は同一、または相当部分を示す。
【０１３０】
本実施の形態６のシステムコントローラ６００は、図１に示すシステムコントローラ１００の構成に加え、さらに、メモリアクセス調整装置５内にアクノリッジ信号ＤＫ０用セレクタ６１、内蔵カウンタ６２、ＯＲ回路６３、タイムアウト時間設定レジスタ６４、アドレスデコーダ６５、アクノリッジ信号ＤＫ１用セレクタ６６を備え、２つの外部メモリ４、１０に対しメモリアクセス可能である。
【０１３１】
アクノリッジ信号ＤＫ０用セレクタ６１は、外部メモリ４から発行される正規アクノリッジ信号、あるいは、カウンタ６２から発行される擬似アクノリッジ信号のいずれかを選択する。
【０１３２】
カウンタ６２は、擬似アクノリッジ信号発生時間が設定されている。該擬似アクノリッジ信号発生時間が経過すると、擬似アクノリッジ信号の生成、該擬似アクノリッジ信号の生成を通知するための割り込み信号ＩＮＴの生成、メモリアクセスモードを可変するためのＭＣ信号の生成、及び、セレクタ６１の制御、を行う。
【０１３３】
ＯＲ回路６３は、リセット信号用ＯＲ回路であり、メモリアクセス制御装置３からのリセット信号あるいはレジスタ６４からのリセット信号を選択し、カウンタ６２に出力する。
【０１３４】
レジスタ６４は、複数の各外部メモリのメモリアクセスモード、及びタイムアウト時間（擬似アクノリッジ信号発生時間）などのデバイス情報を格納している。
【０１３５】
アドレスデコーダ６５は、ＣＰＵ２から発行されるアドレスＡＤに基づいて、アクセス対象の外部メモリを決定し、レジスタ６４に通知する。
【０１３６】
アクノリッジ信号ＤＫ１用セレクタ６６は、外部メモリ１０から発行される正規アクノリッジ信号、あるいは、カウンタ６２から発行される擬似アクノリッジ信号のいずれかを選択する。
【０１３７】
ＣＰＵ２と、メモリアクセス制御装置３とは、アドレス信号ＡＤ、データ信号ＤＴ、チップセレクト信号ＣＳ、アクノリッジ信号ＤＫ、ライトイネーブル信号ＷＥ、およびリードイネーブル信号ＲＥを介して接続されている。
【０１３８】
メモリアクセス制御装置３と、メモリアクセス調整装置５とは、メモリアクセス開始信号ＭＳ０、ＭＳ１、データ信号ＤＴ０、ＤＴ１、ライトイネーブル信号ＷＥ０、ＷＥ１、リードイネーブル信号ＲＥ０、ＲＥ１、アクノリッジ信号ＤＫ０、ＤＫ１、メモリアクセス可変信号ＭＣ０、ＭＣ１、および内蔵カウンタリセット信号Ｒｅｓｅｔを介して接続されている。
【０１３９】
メモリアクセス調整装置５と、外部メモリ４とは、アクノリッジ信号ＤＫ０介して接続され、メモリアクセス調整装置５と、外部メモリ１０とは、アクノリッジ信号ＤＫ１を介して接続されている。
【０１４０】
ＣＰＵ２と、メモリアクセス調整装置５とは、割り込み信号ＩＮＴ１、およびＩＮＴ２を介して接続されている。
【０１４１】
以上のように構成された本実施の形態６のシステムコントローラ６００について、以下、その動作を、図７を参照しつつ説明する。
【０１４２】
本実施の形態６では、システムコントローラ６００のメモリアクセス方式は、ハンドシェークモードである。
【０１４３】
ＣＰＵ２からメモリアクセス要求があると、メモリアクセス調整装置５内のアドレスデコーダ６５で、ＣＰＵ２から発行されたアドレス信号ＡＤを基に、アクセス対象となる外部メモリを決定し、レジスタ６４に通知する。そして、レジスタ６４に格納されている当該外部メモリのデバイス情報をカウンタ６２に通知する。これにより、カウンタ６２では、各外部メモリに応じて、擬似アクノリッジ信号の生成、メモリアクセス可変信号の生成を行うことが可能となる。各外部メモリへのアクセス動作の基本的な動作は、上記実施の形態５と同様である。
【０１４４】
ここで、外部メモリ４のメモリアクセス方式が固定ウエイトモード、外部メモリ１０のメモリアクセス方式はハンドシェークモードとする。
【０１４５】
外部メモリ４にメモリアクセスを行う場合、外部メモリ４からのリードデータと、比較器７内の格納データとが一致してからレジスタ６４に格納されている外部メモリ４用のタイムアウト時間が経過したとき、カウンタ６２から外部メモリ４用の擬似アクノリッジ信号ＤＫ０が発生し、セレクタ６１によりこの擬似アクノリッジ信号ＤＫ０が選択され、メモリアクセス制御装置３を介して、ＣＰＵ２に返却される。また、カウンタ６２からメモリアクセス可変信号ＭＣ０が発生し、メモリアクセス制御装置３によりシステムコントローラ６００のメモリアクセス方式をハンドシェークモードから固定ウエイトモードに変更する。このとき、カウンタ６２から割り込み信号ＩＮＴ１を発行し、擬似アクセスであることをＣＰＵ２に通知する。
【０１４６】
これに対し、外部メモリ１０にメモリアクセスを行う場合、メモリアクセス方式がシステムコントローラ６００のメモリアクセス方式と一致しているので、レジスタ６４により設定された外部メモリ１０用タイムアウト時間が経過して擬似アクノリッジ信号ＤＫ１が発生したとき、セレクタ６６により外部メモリ１０からの正規アクノリッジ信号ＤＫ１が選択される。そして、この選択された正規アクノリッジ信号ＤＫ１が、メモリアクセス制御装置３を介してＣＰＵ２に返却される。また、システムコントローラ６００と、外部メモリ１０とのメモリアクセス方式が一致しているため、メモリアクセス可変信号ＭＣ１が生成されても、システムコントローラ６００のアクセス方式は変更されず、また、カウンタ６２から割り込み信号ＩＮＴ２は発行されない。
【０１４７】
なお、カウンタ６２のカウント値は、メモリアクセス制御装置３もしくはレジスタ６４から発行されるリセット信号Ｒｅｓｅｔによりリセットされる。
【０１４８】
以上のような本実施の形態６によるシステムコントローラ６００によれば、システムコントローラ６００のメモリアクセス方式が、アクセス対象となる外部メモリメモリアクセス方式と異なる場合でも、メモリアクセス調整装置５内のセレクタ６１、セレクタ６６、およびカウンタ６２により、擬似アクノリッジ信号の生成、正規アクノリッジ信号と擬似アクノリッジ信号の選択制御、およびメモリアクセス方式の変更を行うようにしたので、自動的に外部メモリのメモリアクセス方式に応じたシステムの構築を図ることができる。
【０１４９】
さらに、上記メモリアクセス調整装置５内のアドレスデコーダ６５、およびレジスタ６４により複数の外部メモリに対して擬似アクノリッジ信号の発生時間を自由に可変するようにしたので、各外部メモリに対応したタイムアウト時間を設定することができ、その結果、ＣＰＵ処理の占有時間を低減させることができ、システムの汎用性の向上を図ることができる。
【０１５０】
（実施の形態７）
次に、本発明の実施の形態７によるシステムコントローラについて説明する。
【０１５１】
本実施の形態７のシステムコントローラは、出力するチップセレクト信号ＣＳのＨＩＧＨ区間が一定時間以下にならないように制御することで、システムの暴走を回避するものである。
【０１５２】
図８に、本実施の形態７によるシステムコントローラ７００の構成を示す。本図８において、図１１と同一符号は、同一、または相当部分を示す。
【０１５３】
図８示すシステムコントローラ７００は、ＣＰＵ２、メモリアクセス制御装置３、及び入出力制御装置１２を備えている。
【０１５４】
入出力制御装置１２は、チップセレクト信号ＣＳのネゲート期間を計測する信号レベル計測器１３と、該計測器１３の計測結果に基づいて、Ｉ／Ｏセル２０の電流能力を調整する電流能力調整回路１４とを備える。
【０１５５】
なお、ＣＰＵ２と、メモリアクセス制御装置３とは、アドレス信号ＡＤ、データ信号ＤＴ、チップセレクト信号ＣＳを介して接続されている。
【０１５６】
また、メモリアクセス制御装置３と、外部メモリ４とは、入出力制御装置１２および外部ラッチ回路１１を介して、アドレス信号ＡＤ、データ信号ＤＴ、およびチップセレクト信号ＣＳで接続されている。
【０１５７】
また外部ラッチ回路１１は、メモリアクセス制御装置３から入出力制御装置１２を介してマルチプレックス信号ＡＤ／ＤＴ、およびチップセレクト信号ＣＳを受けている。
【０１５８】
以上のように構成された本実施の形態７のシステムコントローラ７００について、以下、その動作を、図８を参照しつつ説明する。
【０１５９】
メモリアクセス制御装置３から、アドレス信号ＡＤとデータ信号ＤＴをマルチプレックスした信号ＡＤ／ＤＴが出力され、外部ラッチ回路１１でチップセレクト信号ＣＳをラッチイネーブルとしてアドレス信号をラッチし、アドレス信号ＡＤとデータ信号ＤＴに分離して外部メモリ４に出力する。
【０１６０】
入出力制御装置１２では、信号レベル計測器１３によりチップセレクト信号ＣＳのネゲート期間を計測し、該計測期間が一定期間より短くなったとき、つまり、該計測期間がアドレスをラッチするために必要な期間に満たないとき、図９に示すように、電流能力調整回路１４により自動的にＩ／Ｏセルの電流能力を上げて、チップセレクト信号ＣＳのＨＩＧＨレベル区間を広げる。このようにして、チップセレクト信号ＣＳの信号レベルを安定させることで、ラッチミスを防ぐことができる。
【０１６１】
以上のような本実施の形態７によるシステムコントローラ７００によれば、出力するチップセレクト信号ＣＳが、外部ラッチ回路１１でラッチイネーブル信号として用いられるとき、該チップセレクト信号ＣＳのネゲート期間が、アドレスをラッチするのに必要な期間より短くならないように電流能力調整回路１４により調整するようにしたので、悪条件下であってもラッチミスを防ぐことができ、これにより、ラッチミスによるシステムの暴走を回避することができる。
【０１６２】
（実施の形態８）
次に本発明の実施の形態８によるシステムコントローラ、およびそれにおける入出力制御装置について説明する。
【０１６３】
図１０は、本実施の形態８によるシステムコントローラ８００の構成を示すものである。本図１０において、図８と同一符号は、同一、または相当部分を示す。
【０１６４】
図１０に示すシステムコントローラ８００は、図８に示す実施の形態７の構成に加え、ネゲート時間設定レジスタ１５を備えている。
【０１６５】
なお、ＣＰＵ２と、メモリアクセス制御装置３とは、アドレス信号ＡＤ、データ信号ＤＴ、およびチップセレクト信号ＣＳを介して接続されている。
【０１６６】
また、メモリアクセス制御装置３と、外部メモリ４とは、入出力制御装置１２および外部ラッチ回路１１を介して、アドレス信号ＡＤ、データ信号ＤＴ、およびチップセレクト信号ＣＳで接続されている。
【０１６７】
また、外部ラッチ回路１１は、メモリアクセス制御装置３から入出力制御装置１２を介してアドレス／データ信号ＡＤ／ＤＴ、およびチップセレクト信号ＣＳを受けている。
【０１６８】
以上のように構成された本実施の形態８のシステムコントローラ８００について、以下、その動作を、図１０を参照しつつ説明する。
【０１６９】
メモリアクセス制御装置３から、アドレス信号ＡＤとデータ信号ＤＴをマルチプレックスした信号ＡＤ／ＤＴが出力され、外部ラッチ回路１１でチップセレクト信号ＣＳをラッチイネーブルとしてアドレス信号をラッチし、アドレス信号ＡＤとデータ信号ＤＴに分離して外部メモリ４に出力する。
【０１７０】
入出力制御装置１２では、信号レベル計測器１３によりチップセレクト信号ＣＳのネゲート期間を計測し、該計測期間が、ネゲート時間設定レジスタ１５によって設定された期間より短くなったとき、電流能力調整回路１４により自動的にＩ／Ｏセルの電流能力を上げて、チップセレクト信号ＣＳのＨＩＧＨレベル区間を広げる。このようにして、チップセレクト信号ＣＳの信号レベルを安定させることで、ラッチミスを防ぐことができる。
【０１７１】
以上のような本実施の形態８にかかるシステムコントローラによれば、外部ラッチ回路１１でラッチイネーブル信号として用いられるチップセレクト信号ＣＳのネゲート期間が、アドレスをラッチするのに必要な期間より短くならないよう電流能力調整回路１４により調整するようにしたので、悪条件下であってもラッチミスを防ぐことができ、これにより、ラッチミスによるシステムの暴走を回避することができる。
【０１７２】
さらに、上記ネゲート時間設定レジスタ１５により、アドレスをラッチするのに必要な時間の設定を自由に可変するようにしたので、システムに対応したネゲート時間設定を行うことができ、システムのパフォーマンスの向上を図ることができる。
【産業上の利用可能性】
【０１７３】
本発明にかかるシステムコントローラは、メモリアクセス調整装置、および入出力制御装置を有し、外部メモリとのメモリアクセスを行う制御回路等として有用である。
【図面の簡単な説明】
【０１７４】
【図１】本発明の実施の形態１によるシステムコントローラ１００の構成図である。
【図２】上記実施の形態１における、システムコントローラ１００から外部メモリへのメモリアクセス方法を示す信号波形図である。
【図３】本発明の実施の形態２によるシステムコントローラ２００の構成図である。
【図４】本発明の実施の形態３によるシステムコントローラ３００の構成図である。
【図５】本発明の実施の形態４によるシステムコントローラ４００の構成図である。
【図６】本発明の実施の形態５によるシステムコントローラ５００の構成図である。
【図７】本発明の実施の形態６によるシステムコントローラ６００の構成図である。
【図８】本発明の実施の形態７によるシステムコントローラ７００の構成図である。
【図９】上記実施の形態７のシステムコントローラ７００における、リード動作時の信号波形図である。
【図１０】本発明の実施の形態８によるシステムコントローラ８００の構成図である。
【図１１】従来のシステムコントローラ９００の構成図である。
【図１２】従来のシステムコントローラ９００における、リード動作時の信号波形図である。
【図１３】従来のシステムコントローラ９００における、リード動作時に異常が発生した場合の信号波形図である。
【図１４】従来のアドレス／データマルチプレックス方式のシステムコントローラ１０００の構成図である。
【符号の説明】
【０１７５】
１００、２００、３００、４００、５００、６００、７００、８００、９００、１０００    システムコントローラ
２    中央処理装置（ＣＰＵ）
３    メモリアクセス制御装置
４    外部メモリ
５    メモリアクセス調整装置
６    計測器
７    比較器
８    学習回路
９    クロックジェネレータ（ＣＬＫＧＥＮ）
１０  外部メモリ
１１  外部ラッチ回路
１２  入出力制御装置
１３  信号レベル計測器
１４  電流能力調整回路
１５  ネゲート時間設定レジスタ
４１、５１、６１、６６  アクノリッジ信号セレクタ
４２、５２、６２    カウンタ
５３、６３    ＯＲ回路
５４、６４    レジスタ
６５    アドレスデコーダ
ＡＤ    中央処理装置からのアドレス信号
ＤＴ    中央処理装置に対する入出力データ信号
ＣＳ    中央処理装置からのチップセレクト信号
ＤＫ    中央処理装置へのアクノリッジ信号
ＭＣ    メモリアクセス可変信号
ＭＳ    メモリアクセス開始信号
Ｒｅｓｅｔ    リセット信号
ＡＤ／ＤＴ    アドレス／データ信号
【図１】
2008217295.tif 000003
【図２】
2008217295.tif 000004
【図３】
2008217295.tif 000005
【図４】
2008217295.tif 000006
【図５】
2008217295.tif 000007
【図６】
2008217295.tif 000008
【図７】
2008217295.tif 000009
【図８】
2008217295.tif 000010
【図９】
2008217295.tif 000011
【図１０】
2008217295.tif 000012
【図１１】
2008217295.tif 000013
【図１２】
2008217295.tif 000014
【図１３】
2008217295.tif 000015
【図１４】
2008217295.tif 000016