(57)【要約】【課題】１つの外部デバイス選択信号を複数の外部デバイスにて共用した場合にも、外部バスインタフェース回路のアクセスタイミングを、個々の外部デバイスに対して最適化して、システム全体のパフォーマンスを向上させる。【解決手段】  ＣＳアドレス空間設定レジスタ部２２にて１つのチップセレクト信号に与えられているアドレス空間が複数のアドレス空間に分割されており、タイミングコントローラ３１は、バス設定レジスタ部３０においてＣＳアドレス空間設定レジスタ部２２にて分割されたアドレス空間ごとに設定されている外部バスＩ／Ｆ回路２３の外部デバイスへのアクセスタイミングに基づいて、外部デバイスへアクセスする。【選択図】  図１
2006350965.tif 000002
【特許請求の範囲】
【請求項１】
命令を実行する中央演算処理装置と、
該中央演算処理装置による命令実行に基づいて外部バス制御を行う外部バスインタフェース回路とを備えたマイクロプロセッサであって、
上記外部バスインタフェース回路は、
複数ある外部デバイス選択信号の中から上記中央演算処理装置がアクセスするアドレスに対応する外部デバイス選択信号を活性化する外部デバイス選択信号活性手段と、
上記外部デバイス選択信号に与えられるアドレス空間を複数のアドレス空間にさらに分割するアドレス空間分割手段と、
当該外部バスインタフェース回路の外部デバイスへのアクセスタイミングを、上記アドレス空間に対して設定するタイミング設定手段とを有することを特徴とするマイクロプロセッサ。
【請求項２】
上記外部バスインタフェース回路は、当該外部バスインタフェース回路の外部デバイスへのアクセス形式を上記アドレス空間に対して設定するアクセス形式設定手段を有すると共に、複数のアクセス形式にてアクセス可能な外部デバイスを接続可能であることを特徴とする請求項１に記載のマイクロプロセッサ。
【請求項３】
上記外部バスインタフェース回路は、当該外部バスインタフェース回路の同期クロックの周波数を上記各アドレス空間に対して設定するクロック周波数設定手段を有することを特徴とする請求項１に記載のマイクロプロセッサ。
【請求項４】
上記外部バスインタフェース回路は、当該外部バスインタフェース回路の同期クロックの位相を上記各アドレス空間に対して設定するクロック位相設定手段を有することを特徴とする請求項３に記載のマイクロプロセッサ。
【請求項５】
上記外部バスインタフェース回路は、ウェイト信号端子の使用／未使用が設定可能であると共に、当該外部バスインタフェース回路のウェイトを外部デバイスから入力される外部ウェイト信号に基づいて上記各アドレス空間に対して設定するウェイト設定手段を有することを特徴とする請求項１に記載のマイクロプロセッサ。
【請求項６】
上記請求項１〜５の何れか一項に記載のマイクロプロセッサと、
該マイクロプロセッサに外部バスインタフェース回路を介して接続される外部デバイスとを少なくとも備える電子機器。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、命令を実行する中央演算処理装置と、該中央演算処理装置による命令実行に基づいて外部バス制御を行う外部バスインタフェース回路とを備えたマイクロプロセッサに関するもので、より詳細には、マイクロプロセッサの有する外部デバイス選択信号数よりも多い外部デバイスを接続するのに適したマイクロプロセッサ及びそれを備える電子機器に関するものである。
【背景技術】
【０００２】
従来から、携帯電話機等の電子機器にはマイクロプロセッサが搭載されており、該マイクロプロセッサが接続される各種デバイスを制御して、携帯電話機の通信動作及びアプリケーション機能を実現する。
【０００３】
マイクロプロセッサに接続されるデバイスの中でも、外部バスインタフェース回路を介してバス接続される外部デバイスに対してのアクセスは、マイクロプロセッサより、中央演算処理装置（以下、ＣＰＵ）がアクセスするアドレス空間に応じて外部デバイス制御信号（以後、チップセレクト信号と呼ぶ）を出力することで、アクセスする外部デバイスを指定して行うようになっている。
【０００４】
しかしながら、近年、携帯電話機器の多機能化に伴い、外部バスインタフェース回路を介してマイクロプロセッサに接続される外部デバイスが増加し、マイクロプロセッサのチップセレクト信号端子数よりも多くなる場合がある。このような場合は、複数の外部デバイスにおいて１つのチップセレクト信号端子を共用することが行われている。なお、チップセレクト信号端子を共用することはつまり、１つのチップセレクト信号を共用することである。
【０００５】
図１４に、１つのチップセレクト信号を複数の外部デバイスにて共用した、従来の携帯電話機のシステム構成例を示す。この例では、マイクロプロセッサ１０１は３つのチップセレクト信号ＣＳ１〜ＣＳ３を有しており、これら３つのチップセレクト信号ＣＳ１〜ＣＳ３に対応して、３つのＣＳデコード回路１１３〜１１５が配置されている。ＣＳデコード回路１１３〜１１５を介することで、マイクロプロセッサ１０１には、プログラムＲＯＭ１０７、データＲＯＭ１０８、メモリＲＡＭ１０９、音源用ＩＣ１１０、表示用ＩＣ１１１、及びアプリケーションＩＣ１１２の６つの外部デバイスが接続されている。
【０００６】
マイクロプロセッサ１０１には、命令を実行する中央演算処理装置（以下、ＣＰＵ）１２０と、外部バス制御を行う外部バスＩ／Ｆ回路１２３とが備えられ、これらは、１個の半導体チップに搭載されている。
【０００７】
外部バスインタフェース回路（以下、外部バスＩ／Ｆ回路）１２３は、アドレスデコーダ部１２１、タイミングコントローラ１５０、バス設定レジスタ部１３０、及びインタフェース（Ｉ／Ｆ）部１５１を備え、外部デバイス制御に必要な、アドレス・データ信号（図中、Address）、上記チップセレクト信号ＣＳ１〜ＣＳ３、リード信号、ライト信号等の各制御信号の入出力を制御する部分である。
【０００８】
アドレスデコーダ部１２１は、マイクロプロセッサ１０１のチップセレクト信号ＣＳ１〜ＣＳ３に対するアドレス空間を規定する部分であり、命令を実行するＣＰＵ１２０がアクセスしようとしているアドレスが、アドレスデコーダ部１２１で規定されているアドレス空間内である場合は、チップセレクト信号ＣＳ１〜ＣＳ３の中の、該当するＣＳ（チップセレクト）アドレス空間に与えられているチップセレクト信号を assert する（アクティブ状態とする）。
【０００９】
バス設定レジスタ部１３０は、チップセレクト信号ＣＳ１〜ＣＳ３に対応して、ＣＳ１用〜ＣＳ３用の３つのバス設定レジスタを有しており、タイミングコントローラ１５０が、アドレスデコーダ部１２１で assert されたチップセレクト信号に対応するバス設定レジスタに設定されたタイミングに従って、上記各制御信号の出力を制御する。
【００１０】
なお、Ｉ／Ｆ部１５１は、チップセレクト信号ＣＳ１〜ＣＳ３、アドレス・データ信号、リード信号、ライト信号等の各制御信号、及びＣＳデコード回路１１３〜１１５に入力されるアドレス信号ADD_20〜ADD_22の出力を可能にすると共に、外部デバイスからのデータ信号の入力を可能にする入出力部である。
【００１１】
図１４の例では、上記した６つの外部デバイスのうち、プログラムＲＯＭ１０７とデータＲＯＭ１０８とは、チップセレクト信号ＣＳ１が入力されるＣＳデコード回路１１３に接続されてチップセレクト信号ＣＳ１を共用するようになっている。また、メモリＲＡＭ１０９と音源用ＩＣ１１０とは、チップセレクト信号ＣＳ２が入力されるＣＳデコード回路１１４に接続されてチップセレクト信号ＣＳ２を共用し、表示用ＩＣ１１１とアプリケーションＩＣ１１２とは、チップセレクト信号ＣＳ３が入力されるＣＳデコード回路１１５に接続され、チップセレクト信号ＣＳ３を共用するようになっている。
【００１２】
例えば、ＣＳデコード回路１１３について説明すると、ＣＳデコード回路１１３には、チップセレクト信号ＣＳ１とアドレス信号ADD_20とが入力され、出力端子として、チップセレクト信号端子Ｔ１とチップセレクト信号端子Ｔ２とが設けられている。このうち、チップセレクト信号端子Ｔ１はプログラムＲＯＭ１０７のチップセレクト信号端子(図示せず)と接続され、チップセレクト信号端子Ｔ２はデータＲＯＭ１０８のチップセレクト信号端子(図示せず)と接続されている。これにより、プログラムＲＯＭ１０７及びデータＲＯＭ１０８の各チップセレクト信号端子には、チップセレクト信号ＣＳ１に代えて、チップセレクト信号端子Ｔ１或いはＴ２からの出力が入力される。
【００１３】
ＣＳデコード回路１１３は、マイクロプロセッサ１０１からのチップセレクト信号ＣＳ１及びアドレス信号ADD_20の入力に従って、チップセレクト信号端子Ｔ１或いはチップセレクト信号端子Ｔ２の何れかを assert する。この例では、チップセレクト信号端子Ｔ１が assert されると、該チップセレクト信号端子Ｔ１と接続されているプログラムＲＯＭ１０７が活性化状態になり、ＣＰＵ１２０からプログラムＲＯＭ１０７へのアクセスが行われる。反対に、チップセレクト信号端子Ｔ２が assert されると、チップセレクト信号端子Ｔ２と接続されているデータＲＯＭ１０８が活性化状態になり、ＣＰＵ１２０からデータＲＯＭ１０８へのアクセスが行われる。
【００１４】
ＣＳデコード回路１１４，１１５においてもこれと同様であり、このようにして、１つのチップセレクト信号を複数の外部デバイスにて共用することが可能となる。
【００１５】
一方、特許文献１においては、同期クロック周波数の異なる２つのデバイス、たとえば、１５０ＭＨｚ程度の同期クロックに対応したＳＤＲＡＭなどの高速デバイスと、２０ＭＨｚ程度の同期クロックを必要とする低速デバイスとをマイクロプロセッサに接続する場合に、必要なクロック信号をそれぞれ個別のクロック配線を用いて供給しておき、マイクロプロセッサによる外部アクセス対象デバイス又はアドレス空間に応じて、マイクロプロセッサ内部の外部バスインタフェース回路の同期信号を切り替え制御することで、アクセス対象の外部デバイスをマイクロプロセッサに接続することが開示されている。
【００１６】
さらに、近年では、BURST Cellular ＲＡＭ などの Synchronous burst 擬似ＳＲＡＭ では、Synchronous mode での使用時に擬似ＳＲＡＭ にアクセスする場合に、write アクセスに関しては、Synchronous write 及び Asynchronous write のどちらのアクセス形式でもアクセス可能なものが開発されている。従来のマイクロプロセッサは外部デバイスに対して１つのアクセス形式でしかアクセスできないため、このような擬似ＳＲＡＭ を外部デバイスとする場合は、メモリの writeアクセス形式は使用方法及び同期クロック周波数を考慮して、Synchronous burst write か Asynchronous write のどちらか一方のアクセス形式でアクセスするように設定される。
【特許文献１】特開２００２−４１４５２号公報（２００２年２月８日公開）
【発明の開示】
【発明が解決しようとする課題】
【００１７】
しかしながら、従来のマイクロプロセッサでは、外部バスＩ／Ｆ回路１２３のバス設定レジスタ部１３０に備えられるバス設定レジスタは、１つのチップセレクト信号に対して１つである。そのため、図１４に示すシステムのように、同一のチップセレクト信号を複数の外部デバイスにて共用する場合、個々の外部デバイスに対して最適なアクセスタイミングを設定することはできず、同一のチップセレクト信号を共用するデバイス間で同じタイミングを用いることとなる。しかも、その場合、アクセスタイミングは、チップセレクト信号を共用する複数のデバイスの中でもアクセス速度の最も遅いデバイスに合わせて設定する必要があるため、チップセレクト信号を共用することなく個々の外部デバイスに対して最適なアクセスタイミングが設定可能であった場合に比して、システム全体のパフォーマンスの低下は否めない。
【００１８】
さらに、上述したように、近年では、BURST Cellular ＲＡＭ などの Synchronous burst 擬似ＳＲＡＭ では、Synchronous mode での write の際は Synchronous write と Asynchronous write のどちらのアクセス形式でも可能なメモリデバイスが開発されている。しかしながら、従来のマイクロプロセッサでは、１つのチップセレクト信号について１つのアクセス形式でしかアクセスできないため、上記記載の Synchronous burst 擬似ＳＲＡＭ を外部デバイスとして用い、Synchronous writeでアクセスする場合、Synchronous burst 擬似ＳＲＡＭ へ入力する同期クロック周波数が高速な場合は、Synchronous write によってパフォーマンスの向上が期待できるが、Synchronous burst 擬似ＳＲＡＭ へ入力する同期クロック周波数が低速な場合は、Asynchronous writeアクセスの場合よりもパフォーマンスが低下するといった問題がある。これは、Synchronous write でアクセスすると、ランダムwrite の多いアドレス空間では Synchronous write のファーストアクセスまでの時間が Asynchronous write アクセスと比較して長いためである。
【００１９】
本発明は、上記の問題点に鑑みてなされたものであり、第１の目的は、外部デバイス選択信号数よりも多い外部デバイスを接続した場合にも、それぞれの外部デバイスに対して最適化された外部バスインタフェース回路のタイミング設定を実現できるマイクロプロセッサを提供することにあり、第２の目的は、さらに、複数のアクセス形式にてアクセス可能な外部デバイスが接続された場合には、アクセス形式の切り換えも可能なマイクロプロセッサを提供することにある。
【課題を解決するための手段】
【００２０】
本発明のマイクロプロセッサは、上記課題を解決するために、命令を実行する中央演算処理装置と、該中央演算処理装置による命令実行に基づいて外部バス制御を行う外部バスインタフェース回路とを備えたマイクロプロセッサであって、上記外部バスインタフェース回路は、複数ある外部デバイス選択信号の中から上記中央演算処理装置がアクセスするアドレスに対応する外部デバイス選択信号を活性化する外部デバイス選択信号活性手段と、上記外部デバイス選択信号に与えられるアドレス空間を複数のアドレス空間にさらに分割するアドレス空間分割手段と、当該外部バスインタフェース回路の外部デバイスへのアクセスタイミングを、上記アドレス空間に対して設定するタイミング設定手段とを有することを特徴としている。ここで、外部デバイス選択信号に与えられているアドレス空間を複数のアドレス空間に分割する手法としては、例えばアドレスを用いることができる。
【００２１】
上記構成によれば、アドレス空間分割手段が、外部デバイス選択信号に与えられているアドレス空間を複数のアドレス空間に分割し、タイミング設定手段が、これら分割されたアドレス空間それぞれに対して外部デバイス接続に必要な外部バスインタフェース回路のアクセスタイミングを設定するので、外部デバイス選択信号に与えられているアドレス空間内で、外部バスインタフェース回路のアクセスタイミングを複数設定可能となる。したがって、１つの外部デバイス選択信号を複数の外部デバイスで共用した場合にも、個々の外部デバイスに対して最適化された外部バスインタフェース回路のアクセスタイミングの設定を行うことが可能になる。その結果、マイクロプロセッサを備えたシステム全体のパフォーマンスを向上させることが可能になる。
【００２２】
本発明のマイクロプロセッサにおいては、さらに、上記外部バスインタフェース回路は、当該外部バスインタフェース回路の外部デバイスへのアクセス形式を上記アドレス空間に対して設定するアクセス形式設定手段を有すると共に、複数のアクセス形式にてアクセス可能な外部デバイスを接続可能であることを特徴とすることもできる。
【００２３】
これによれば、アクセス形式設定手段が、外部デバイス選択信号に与えられているアドレス空間がさらに複数に分割されたアドレス空間に対してアクセス形式（例えば、Synchronous or Asynchronous access）を設定するので、外部デバイス選択信号に与えられているアドレス空間内で、中央演算処理装置がアクセスするアドレス空間によってアクセス形式を変えることが可能となる。したがって、例えば、Cellular ＲＡＭなどの Synchronous mode 時の ライト（write）のように Asynchronous write とSynchronous write 両方のアクセスが可能なデバイスに対しても、その使用方法と同期クロック周波数に応じて、連続ライトの多発するアドレス空間にはSynchronous writeでアクセスし、連続ライトがあまり見られないアドレス空間にはAsynchronous writeでアクセスすることが実現できるため、マイクロプロセッサを備えたシステム全体のパフォーマンスをより向上させることが可能になる。
【００２４】
本発明のマイクロプロセッサにおいては、さらに、上記外部バスインタフェース回路は、当該外部バスインタフェース回路の同期クロックの周波数を上記各アドレス空間に対して設定するクロック周波数設定手段を有することを特徴とすることもできる。
【００２５】
これによれば、クロック周波数設定手段が、外部デバイス選択信号に与えられているアドレス空間がさらに複数に分割されたアドレス空間に対して外部インタフェース回路の同期クロック周波数を設定するので、同期クロック周波数の異なる外部デバイスにて１つの外部デバイス選択信号を共用したとしても、それぞれ最適な同期クロック周波数で接続することが可能になる。それゆえ、マイクロプロセッサを備えたシステム全体のパフォーマンスをより向上させることが可能になる。
【００２６】
そしてこの場合、クロック周波数設定手段に加えて、上記外部バスインタフェース回路が、当該外部バスインタフェース回路の同期クロックの位相を上記各アドレス空間に対して設定するクロック位相設定手段を有することが好ましく、これにより、同期クロックの周波数だけでなく同期クロックの位相も変化させることが可能となり、１つの外部デバイス選択信号により一層様々な種類のデバイスを複数接続することが可能なる。
【００２７】
本発明のマイクロプロセッサにおいては、さらに、上記外部バスインタフェース回路は、ウェイト信号端子の使用／未使用が設定可能であると共に、当該外部バスインタフェース回路のウェイトを外部デバイスから入力される外部ウェイト信号に基づいて上記各アドレス空間に対して設定するウェイト設定手段を有することを特徴とすることもできる。
【００２８】
これによれば、ウェイト設定手段が、外部デバイス選択信号に与えられているアドレス空間がさらに複数に分割されたアドレス空間に対して外部バスインタフェース回路のウェイトを外部デバイスから入力される外部ウェイト信号に基づいて設定するので、１つの外部デバイス選択信号にアドレス空間内に異なる外部ウェイト信号を入力してもそれぞれを正確に検出することができ、１つの外部デバイス選択信号をウェイト信号仕様の異なる外部デバイスにて共用することが可能になる。それゆえ、マイクロプロセッサを備えたシステム全体のパフォーマンスをより向上させることが可能になる
本発明の電子機器は、上記した本発明のマイクロプロセッサと、該マイクロプロセッサに外部バスインタフェース回路を介して接続される外部デバイスとを少なくとも備える構成であり、システム全体のパフォーマンス性の優れた電子機器を得ることができる。
【発明の効果】
【００２９】
本発明のマイクロプロセッサは、命令を実行する中央演算処理装置と、該中央演算処理装置による命令実行に基づいて外部バス制御を行う外部バスインタフェース回路とを備えたマイクロプロセッサであって、上記外部バスインタフェース回路は、複数ある外部デバイス選択信号の中から上記中央演算処理装置がアクセスするアドレスに対応する外部デバイス選択信号を活性化する外部デバイス選択信号活性手段と、上記外部デバイス選択信号に与えられるアドレス空間を複数のアドレス空間にさらに分割するアドレス空間分割手段と、当該外部バスインタフェース回路の外部デバイスへのアクセスタイミングを、上記アドレス空間に対して設定するタイミング設定手段とを有することを特徴としている。ここで、外部デバイス選択信号に与えられているアドレス空間を複数のアドレス空間に分割する手法としては、例えばアドレスを用いることができる。
【００３０】
これにより、１つの外部デバイス選択信号を複数の外部デバイスにて共用した場合にも、個々の外部デバイスに対して最適化された外部バスインタフェース回路のアクセスタイミングの設定を行うことが可能になり、マイクロプロセッサを備えたシステム全体のパフォーマンスを向上させることが可能になるという効果を奏する。
【００３１】
本発明のマイクロプロセッサにおいては、さらに、上記外部バスインタフェース回路は、当該外部バスインタフェース回路の外部デバイスへのアクセス形式を上記アドレス空間に対して設定するアクセス形式設定手段を有すると共に、複数のアクセス形式にてアクセス可能な外部デバイスを接続可能であることを特徴とすることもでき、このような構成とすることで、複数のアクセス形式をサポートしている外部デバイスであっても、１つの外部デバイス選択信号にてアクセスごとに最適なアクセス形式を選択することが可能になり、システム全体のパフォーマンス向上を実現することが可能になる。
【発明を実施するための最良の形態】
【００３２】
〔実施の形態１〕
本発明の一実施形態について、図１ないし図４に基づいて説明すると以下の通りである。
【００３３】
図１は、本発明の実施の一形態であるマイクロプロセッサ１を使用したシステムを簡略化して示すブロック図である。図１は、携帯電話機などの電子機器によって実現されるシステムを例示している。
【００３４】
マイクロプロセッサ１には、無線部２、電源部３、電池４、操作部５、音声部６、及び外部Ｉ／Ｆ１６が接続されている。音声部６はマイク及びスピーカなどからなり、通話時などにおける音声の入出力を行うものである。無線部２は基地局を介して行われる音声データや画像データなどの送受信に関する処理を行うものである。たとえば、マイクから入力されたアナログ信号がデジタル音声データに符号化され、無線部２により送出される。一方、基地局を介して通話先から無線部２にて受信された音声データは復号化され、スピーカから出力される。外部Ｉ／Ｆ１６は、ＰＣ等をケーブル等を介して携帯電話機に接続するためのインタフェースである。
【００３５】
また、上記マイクロプロセッサ１には、プログラムを格納するプログラムＲＯＭ７、データを格納するデータＲＯＭ８、ワークエリアとしての外部ＲＡＭ９、音源用ＩＣ１０、表示用ＩＣ１１、及びアプリケーションＩＣ１２の６つの外部デバイスが、マイクロプロセッサ１に搭載された後述する外部バスインタフェース回路（以下、外部バスＩ／Ｆ回路）２３を介してバス接続されている。
【００３６】
プログラムＲＯＭ７は、システムプログラムやアプリケーションプログラムなどの制御プログラムを記憶しているものであり、マイクロプロセッサ１は、このプログラムＲＯＭ７に格納された制御プログラムに基づいて動作する。データＲＯＭ８は、システム制御に必要なデータや画像データなどを格納しているもので、ＲＡＭ９は、システム動作時にワークエリアとして使用されるものである。音源用ＩＣ１０は、音楽データなど再生するＩＣであり、表示用ＩＣ１１は、操作部５における操作入力の結果などを画面表示するためのＩＣ、アプリケーションＩＣ１２は、カメラなど携帯電話機のアプリケーション機能を実現するＩＣである。
【００３７】
マイクロプロセッサ１の構成については後述するが、マイクロプロセッサ１は、アクセスするアドレス空間に応じて外部デバイス制御信号（以後、チップセレクト信号と呼ぶ）を出力して、バス接続されている複数の外部デバイスの中からアクセスする外部デバイスを指定してアクセスする。マイクロプロセッサ１は、チップセレクト信号としてＣＳ１〜ＣＳ３の３種類を出力するものであるため、上記した６つの外部デバイスを接続するには、１つのチップセレクト信号を２つの外部デバイスにて共用する必要があり、ここでは、各チップセレクト信号ＣＳ１〜ＣＳ３それぞれに対応してＣＳデコード回路１３〜１５が配置され、これらＣＳデコード回路１３〜１５を介して外部デバイスは接続されている。
【００３８】
具体的には、チップセレクト信号ＣＳ１が入力されるＣＳデコード回路１３に、プログラムＲＯＭ７とデータＲＯＭ８とが接続され、チップセレクト信号ＣＳ２が入力されるＣＳデコード回路１４に外部ＲＡＭ９と音源用ＩＣ１０とが接続され、チップセレクト信号ＣＳ３が入力されるＣＳデコード回路１５に表示用ＩＣ１１とアプリケーションＩＣ１２とが接続されている。
【００３９】
ＣＳデコード回路１３に着目し、より詳細に説明すると、ＣＳデコード回路１３のチップセレクト信号端子Ｔ１にプログラムＲＯＭ７のチップセレクト信号端子(図示せず)が接続され、ＣＳデコード回路１３のチップセレクト信号端子Ｔ２にデータＲＯＭ８のチップセレクト信号端子(図示せず)が接続されている。これにより、プログラムＲＯＭ７及びデータＲＯＭ８の各チップセレクト信号端子には、マイクロプロセッサ１からのチップセレクト信号ＣＳ１に代えて、ＣＳデコード回路１３のチップセレクト信号端子Ｔ１或いはチップセレクト信号端子Ｔ２の出力が入力される。
【００４０】
ＣＳデコード回路１３には、マイクロプロセッサ１からチップセレクト信号ＣＳ１に加えて、アドレス信号ADD_20も入力されるようになっており、これら入力信号に従って、ＣＳデコード回路１３は、チップセレクト信号端子Ｔ１或いはＴ２の何れかを assert する。チップセレクト信号端子Ｔ１が assert されると、該チップセレクト信号端子Ｔ１と接続されているプログラムＲＯＭ７が活性化状態になり、ＣＰＵ２０からプログラムＲＯＭ７へのアクセスが行われる。同様に、チップセレクト信号端子Ｔ２が assert されると、該チップセレクト信号端子Ｔ２と接続されているデータＲＯＭ８が活性化状態になり、ＣＰＵ２０からデータＲＯＭ８へのアクセスが行われる。
【００４１】
なお、ここではＣＳデコード回路１３について説明したが、ＣＳデコード回路１４に接続された外部ＲＡＭ９と音源用ＩＣ１０、ＣＳデコード回路１５に接続された表示用ＩＣ１１とアプリケーションＩＣ１２においても同様である。つまり、ＣＳデコード回路１４は、入力されるチップセレクト信号ＣＳ２とアドレス信号ADD_21とに従って、チップセレクト信号端子Ｔ１或いはチップセレクト信号端子Ｔ２の何れかを assert し、チップセレクト信号端子Ｔ１が assert されると、外部ＲＡＭ９が活性化状態になって外部ＲＡＭ９へのアクセスが行われ、チップセレクト信号端子Ｔ２が assert されると、音源用ＩＣが活性化状態になり音源用ＩＣへのアクセスが行われる。同様に、ＣＳデコード回路１５は、入力されるチップセレクト信号ＣＳ３とアドレス信号ADD_22とに従って、チップセレクト信号端子Ｔ１或いはチップセレクト信号端子Ｔ２の何れかを assert し、チップセレクト信号端子Ｔ１が assert されると、表示用ＩＣが活性化状態になって音源用ＩＣへのアクセスが行われ、チップセレクト信号端子Ｔ２が assert されると、アプリケーションＩＣが活性化状態になりアプリケーションＩＣへのアクセスが行われる。
【００４２】
一方、マイクロプロセッサ１は、命令を実行する中央演算処理装置（以下、ＣＰＵと称する）２０と、該ＣＰＵ２０の命令実行に基づいて外部バスを制御する外部バスＩ／Ｆ回路２３とが、１個の半導体チップに搭載された構成を有する。
【００４３】
外部バスＩ／Ｆ回路２３は、アドレスデコーダ部２１、ＣＳアドレス空間設定レジスタ部２２、タイミングコントローラ３１、バス設定レジスタ部３０、及びインタフェース（Ｉ／Ｆ）部３２を備え、外部デバイス制御に必要な、アドレス・データ信号（図中、Address）、上記チップセレクト信号ＣＳ１〜ＣＳ３、リード信号、ライト信号、アドレスバリッド信号、クロック信号、ウェイト信号等の入出力を制御する部分である。
【００４４】
アドレスデコーダ部２１は、マイクロプロセッサ１の各チップセレクト信号ＣＳ１〜ＣＳ３に対するＣＳアドレス空間を規定する部分であり、本発明における外部デバイス選択信号活性手段を構成する。アドレスデコーダ部２１では、アドレスバス（図中、Address bus）を通してＣＰＵ２０より送られてくるアドレス信号に基づいてＣＰＵ２０がアクセスしようとしているアドレスが、アドレスデコーダ部２１で規定されているＣＳ１〜ＣＳ３のアドレス空間内である場合は、該当するＣＳアドレス空間に与えられているチップセレクト信号を assert する（アクティブ状態とする）。
【００４５】
ＣＳアドレス空間設定レジスタ部２２は、アドレスデコーダ部２１で規定されているＣＳ１〜ＣＳ３のアドレス空間をさらに複数のアドレス空間に分割するように設定するもので、複数のアドレス空間設定レジスタからなる。ここでは、アドレスデコーダ部２１で規定されているＣＳ１〜ＣＳ３のアドレス空間それぞれを２つのアドレス空間に分割するようになっているので、ＣＳ１−１、ＣＳ１−２、ＣＳ２−１、ＣＳ２−２、ＣＳ３−１、ＣＳ３−２の計６個のアドレス空間設定レジスタを備えている。
【００４６】
例えば、アドレスデコーダ部２１によって、ＣＳ１〜ＣＳ３のアドレス空間が図２に示すように割り振られているとすると、ＣＳアドレス空間設定レジスタ部２２によって、ＣＳ１のアドレス空間は、アドレス信号ADD20＝0ならＣＳ１−１のアドレス空間、ADD20＝１ならＣＳ１−２のアドレス空間というように、ＣＳ１のアドレス空間をそのアドレス信号ADD20に基づいて、さらに分割される。ＣＳ２、ＣＳ３の各のアドレス空間においても同様で、ＣＳ２のアドレス空間は、ADD21＝0ならＣＳ２−１のアドレス空間、ADD21＝1ならＣＳ２−２のアドレス空間として分割され、ＣＳ３のアドレス空間は、ADD22＝0ならＣＳ３−１のアドレス空間、ADD22＝1ならＣＳ３−２のアドレス空間というように分割される。
【００４７】
バス設定レジスタ部３０は、ＣＳアドレス空間設定レジスタ部２２で分割される各アドレス空間に対して、外部デバイスへの制御信号の出力タイミングを設定するバス設定レジスタを備えるもので、ここでは、ＣＳ１−１、ＣＳ１−２、ＣＳ２−１、ＣＳ２−２、ＣＳ３−１、ＣＳ３−２の各アドレス空間それぞれに対応して、ＣＳ１−１用、ＣＳ１−２用、ＣＳ２−１用、ＣＳ２−２用、ＣＳ３−１用、ＣＳ３−２用の計６個のバス設定レジスタを備えている。
【００４８】
バス設定レジスタ部３０に備えられたこれらのバス設定レジスタでは、ウェイト（ｗａｉｔ）数設定だけでなく上記各制御信号の出力タイミングについてもそれぞれ設定可能となっている。具体的な設定パラメータ例としては、図３（ａ）に示すように、リード時では、アドレス-ＣＳ間（ｔｓＡＣＳ１, ｔｈＡＣＳ１）,ＣＳ−ＲＤ間（ｔｓＣＳＲＤ， ｔｈＣＳＲＤ）,ＲＤ＝Ｌ区間（ｔｗｌＲＤ）であり、同図（ｂ）に示すように、ライト時では、アドレス-ＣＳ間（ｔｓＡＣＳ２， ｔｈＡＣＳ２）,ＣＳ-ＷＲ間（ｔｓＣＳＷＲ， ｔｈＣＳＷＲ），ＷＲ＝Ｌ区間（ｔｗｌＷＲ）などのパラメータである。
【００４９】
タイミングコントローラ３１は、外部バスＩ／Ｆ回路２３における制御中枢であり、アドレスデコーダ部２１と同様にアドレスバスを通してＣＰＵ２０よりアドレス信号が入力される。タイミングコントローラ３１は、ＣＰＵ２０がアクセスしようとするアドレスに基づいて、ＣＳアドレス空間設定レジスタ部２２を参照し、ＣＳアドレス空間設定レジスタ部２２で設定したどのアドレス空間に当該アドレスが該当するかを判定し、該判定結果（バス設定レジスタ選択信号）に基づいてバス設定レジスタ部３０における該当するバス設定レジスタを選択し、そのレジスタに設定されているタイミングで外部デバイスに制御信号を出力する。上記ＣＳアドレス空間設定レジスタ部２２とタイミングコントローラ３１とで、本発明におけるアドレス空間分割手段が構成され、バス設定レジスタ部３０とタイミングコントローラ３１とで、本発明のタイミング設定手段が構成される。
【００５０】
なお、Ｉ／Ｆ部３２は、チップセレクト信号ＣＳ１〜ＣＳ３、アドレス・データ信号、リード信号、ライト信号等の各制御信号、及びＣＳデコード回路１３〜１５に入力されるアドレス信号ADD_20〜ADD_22の出力を可能にすると共に、外部デバイスからのデータ信号の入力を可能にする入出力部である。
【００５１】
これにより、外部バスＩ／Ｆ回路２３は、同じＣＳアドレス空間にアクセスする場合でも、ＣＰＵ２０がアクセスしようとするアドレスによって、外部デバイスへ出力する各制御信号のタイミングを、ＣＳアドレス空間設定レジスタ部２２で設定したアドレス空間ごとに変化させることが可能になり、ＣＳ１−１用、ＣＳ１−２用、ＣＳ２−１用、ＣＳ２−２用、ＣＳ３−１用、ＣＳ３−２用の各バス設定レジスタに設定されたタイミングに従って、上記各種制御信号を出力することができる。
【００５２】
マイクロプロセッサ１をこのような構成とすることで、例えば図１のシステムにおいて、ＣＰＵ２０が、ＣＳ１のアドレス空間であるアドレス0x00001000（ＣＳ１−１用アドレス空間）をアクセスする場合、タイミングコントローラ３１よって、ＣＳアドレス空間設定レジスタ部２２を参照してＣＰＵ２０のアクセス先がＣＳ１−１のアドレス空間であることが判定され、この判定結果（バス設定レジスタ選択信号）に基づいて、バス設定レジスタ部３０内のＣＳ１−１用バス設定レジスタが選択され、Ｉ／Ｆ部３２は、当該レジスタに設定されているタイミングにしたがって該部デバイスに各種制御信号を出力する。
【００５３】
一方、このとき、アドレスADD20＝0とチップセレクト信号ＣＳ１のアクティブ信号が入力されることで、プログラムＲＯＭ７のチップセレクト信号端子が接続されているＣＳデコード回路１３のチップセレクト信号端子Ｔ１の出力のみ Assert される。その結果、プログラムＲＯＭ７が活性化状態になり、ＣＰＵ２０からプログラムＲＯＭ７へのアクセスが行われる。このときのアクセスタイミングは、ＣＳ１−１用バス設定レジスタに設定されたタイミングである。
【００５４】
また、ＣＰＵ２０が、ＣＳ１のアドレス空間であるアドレス0x00101000（ＣＳ１−２用アドレス空間）にアクセスする場合には、タイミングコントローラ３１よって、ＣＳアドレス空間設定レジスタ部２２を参照してＣＰＵ２０のアクセス先がＣＳ１−２のアドレス空間であることが判定され、この判定結果（バス設定レジスタ選択信号）に基づいて、バス設定レジスタ部３０内のＣＳ１−２用バス設定レジスタが選択され、Ｉ／Ｆ部３２は、当該レジスタに設定されているタイミングにしたがって、外部デバイスに各種制御信号を出力する。
【００５５】
一方、このとき、アドレスADD20＝1とチップセレクト信号ＣＳ１のアクティブ信号が入力されることで、データＲＯＭ８のチップセレクト信号端子が接続されているＣＳデコード回路１３のチップセレクト信号端子Ｔ２の出力のみ Assertされる。その結果、データＲＯＭ８が活性化状態になり、ＣＰＵ２０からデータＲＯＭ８へのアクセスが行われる。このときのアクセスタイミングは、ＣＳ１−２用バス設定レジスタに設定されたタイミングである。
【００５６】
図４に、このときの各制御信号のタイミング例を示す。図４では同じチップセレクト信号ＣＳ１のアドレス空間内のアクセスでも、チップセレクト信号端子Ｔ１が assert されるＣＳ１−１のアドレス空間では、チップセレクト信号ＣＳ１の立下りとリード信号の立下りの間隔は、外部バスＩ／Ｆ回路２３の内部ＣＬＫの１ＣＬＫ分あり、リード信号のＬｏｗパルス期間は４ＣＬＫ分, リード信号立ち上がりとチップセレクト信号ＣＳ１の立ち上がりは同時になるように設定されている。さらに、チップセレクト信号端子Ｔ２が assert されるＣＳ１−２のアドレス空間では、チップセレクト信号ＣＳ１の立下りとリード信号の立下り間隔は、外部バスＩ／Ｆ回路２３の内部ＣＬＫの２ＣＬＫ分あり、リード信号のＬｏｗパルス期間は３ＣＬＫ分、リード信号立ち上がりとチップセレクト信号ＣＳ１の立ち上がり間隔は２ＣＬＫあるように設定されている。
【００５７】
このようにして、本マイクロプロセッサ１では、チップセレクト信号ＣＳ１に接続されている複数のデバイス（ここでは、プログラムＲＯＭ７、データＲＯＭ８）に対してそれぞれに最適化されたタイミングでアクセスが可能になる。
【００５８】
そして、これ以上の詳細な説明は行わないが、チップセレクト信号ＣＳ２のアドレス空間にＣＰＵ２０がアクセスする際のＣＳ２−１，ＣＳ２−２の各アドレス空間での制御信号のタイミング及びＣＳデコード回路１４の動作、ＣＳ３のアドレス空間にＣＰＵ２０がアクセスする際のＣＳ３−１，ＣＳ３−２の各アドレス空間での制御信号のタイミング及びＣＳデコード回路１５の動作についても、上記で記載したＣＳ１−１，ＣＳ１−２の各アドレス空間での制御信号のタイミング及びＣＳデコード回路１３の動作と同じ動作原理に基づいて動作する。したがって、マイクロプロセッサ１は、外部バスＩ／Ｆ回路２３を介して接続される各外部デバイスそれぞれに対して最適化されたタイミングでアクセスが可能になる。
【００５９】
以上のように、本実施の形態のマイクロプロセッサ１によれば、同一のチップセレクト信号内のアドレス空間にアクセスする場合でもアドレス空間によって、異なったタイミング設定で外部デバイスにアクセスすることが可能になる。したがって、１つのチップセレクト信号に複数の外部デバイスを接続しても、接続したデバイスの中でアクセス速度の最も遅いデバイスにあわせたタイミング設定ですべてのデバイスにアクセスする必要がなくなり、それぞれのデバイスに対して最適化されたタイミングでアクセスすることが可能になるので、システム全体のパフォーマンスの向上が実現できる。
【００６０】
〔実施の形態２〕
本発明のその他の実施形態について、図５、図６に基づいて説明すると以下の通りである。
【００６１】
実施の形態１では、チップセレクト信号が指定するアドレス空間を複数のアドレス空間に分割し、それぞれのアドレス空間ごとにバス設定レジスタを設けた場合について説明した。これに対して、本実施形態では、チップセレクト信号が指定するアドレス空間がさらに分割されたアドレス空間ごとに、外部バスＩ／Ｆ回路の同期クロック周波数を設定するクロック設定レジスタを設けた場合について説明する。
【００６２】
図５は、本実施形態であるマイクロプロセッサ５１を使用したシステムを簡略化して示すブロック図である。図１で示した実施の形態１のブロック図と比較して異なる点は、マイクロプロセッサ５１が、外部バスＩ／Ｆ回路２３に代えて、外部バスＩ／Ｆ回路３３を備えている点と、プログラムＲＯＭ７には Synchronous burst read アクセス可能なフラッシュメモリ（クロック周波数５２ＭＨｚ）を使用し、データＲＯＭ８には Synchronous burst read アクセス可能なフラッシュメモリ（クロック周波数 ２６ＭＨｚ）を使用している点である。
【００６３】
上記外部バスＩ／Ｆ回路３３は、前述の外部バスＩ／Ｆ回路２３にクロック設定レジスタ部３４が新たに設けられた構成である。クロック設定レジスタ部３４は、ＣＳアドレス空間設定レジスタ部２２で分割される各アドレス空間に対して、外部バスＩ／Ｆ回路３３の同期クロック信号の周波数を設定するクロック設定レジスタを備えており、ここでは、ＣＳ１−１、ＣＳ１−２、ＣＳ２−１、ＣＳ２−２、ＣＳ３−１、ＣＳ３−２の各アドレス空間それぞれに対応して、ＣＳ１−１用、ＣＳ１−２用、ＣＳ２−１用、ＣＳ２−２用、ＣＳ３−１用、ＣＳ３−２用の計６個のクロック設定レジスタを備えている。
【００６４】
タイミングコントローラ３１は、実施の形態１と同様に、ＣＰＵ２０がアクセスしようとするアドレスに基づいて、ＣＳアドレス空間設定レジスタ部２２を参照し、ＣＳアドレス空間設定レジスタ部２２で設定したどのアドレス空間に当該アドレスが該当するかを判定する。そして、本実施の形態では、タイミングコントローラ３１は、該判定結果（設定レジスタ選択信号）に基づいてバス設定レジスタ部３０における該当するバス設定レジスタを選択すると共に、クロック設定レジスタ部３４における該当するクロック設定レジスタを選択し、選択したクロック設定レジスタに設定されている周波数の同期クロックを用いて、選択したバス設定レジスタに設定されているタイミングで外部デバイスに制御信号を出力する。つまり、上記クロック設定レジスタ部３４と該タイミングコントローラ３１とで、本発明におけるクロック周波数設定手段が構成される。
【００６５】
本実施形態においては、プログラムＲＯＭ７に割り当てられたＣＳ１-１のアドレス空間をアクセスする際の外部バスＩ／Ｆ回路３３の同期クロック周波数を設定するクロック設定レジスタ部３４のＣＳ１-１用クロック設定レジスタが５２MHｚに設定され、データＲＯＭ８に割り当てられたＣＳ１−２のアドレス空間をアクセスする際の外部バスＩ/Ｆ回路３３の同期クロック周波数を設定するクロック設定レジスタ部３４のＣＳ１-２用クロック設定レジスタが２６ＭＨｚに設定されている。
【００６６】
マイクロプロセッサ５１をこのような構成とすることで、例えば図５のシステムにおいて、ＣＰＵ２０が、ＣＳ１のアドレス空間であって、その中でもＣＳ１−１のアドレス空間（アドレスADD20＝0）に割り当てられたプログラムＲＯＭ７にアクセスしようとする場合、タイミングコントローラ３１よって、ＣＳアドレス空間設定レジスタ部２２を参照してＣＰＵ２０のアクセス先がＣＳ１−１のアドレス空間であることが判定され、この判定結果（バス設定レジスタ選択信号）に基づいて、バス設定レジスタ部３０内のＣＳ１−１用バス設定レジスタが選択されると共に、クロック設定レジスタ部３４のＣＳ１-１用クロック設定レジスタが選択される。これにより、マイクロプロセッサ５１の外部バスＩ／Ｆ３３の同期クロック周波数はクロック設定レジスタ部３４のＣＳ１-１用クロック設定レジスタで設定した５２ＭＨｚとなり、Ｉ／Ｆ部３２は、５２ＭＨｚの同期クロック信号を用い、ＣＳ１−１のアドレス空間に設定されているタイミングに従って、外部デバイスに各種制御信号を出力する。
【００６７】
実施の形態１と同様に、アドレス信号ADD20＝0とチップセレクト信号ＣＳ１のアクティブ信号が入力されることで、プログラムＲＯＭ７のチップセレクト信号端子が接続されているＣＳデコード回路１３のチップセレクト信号端子Ｔ１のみAssertされ、その結果、プログラムＲＯＭ７が活性化状態になり、ＣＰＵ２０からプログラムＲＯＭ７へアクセスが行われる。
【００６８】
また、ＣＰＵ２０が、ＣＳ１のアドレス空間であって、その中でもＣＳ１−２のアドレス空間（アドレスADD20＝1）に割り当てられたデータＲＯＭ８にアクセスしようとする場合、タイミングコントローラ３１よって、ＣＳアドレス空間設定レジスタ部２２を参照してＣＰＵ２０のアクセス先がＣＳ１−２のアドレス空間であることが判定され、この判定結果（バス設定レジスタ選択信号）に基づいて、バス設定レジスタ部３０内のＣＳ１−２用バス設定レジスタが選択されると共に、クロック設定レジスタ部３４のＣＳ１-２用クロック設定レジスタが選択される。これにより、マイクロプロセッサ５１の外部バスＩ／Ｆ３３の同期クロック周波数はクロック設定レジスタ部３４のＣＳ１-２用クロック設定レジスタで設定した２６ＭＨｚとなり、Ｉ／Ｆ部３２は、２６ＭＨｚの同期クロック信号を用い、ＣＳ１−２のアドレス空間に設定されているタイミングに従って、外部デバイスに各種制御信号を出力する。
【００６９】
実施の形態１と同様に、アドレス信号ADD20＝1とチップセレクト信号ＣＳ１のアクティブ信号が入力されることで、データＲＯＭ８のチップセレクト信号端子が接続されているＣＳデコード回路１３のチップセレクト信号端子Ｔ２のみAssertされ、その結果、データＲＯＭ８が活性化状態になり、ＣＰＵ２０からデータＲＯＭ８へアクセスが行われる。
【００７０】
図６に、このときの各制御信号とアドレスの変化を示す。なお、図６中のＡＤＶ信号は、マイクロプロセッサ５１が、外部デバイスに、アドレス信号（Address）をラッチするタイミングを知らせる信号である。
【００７１】
以上のように、本実施形態によれば、チップセレクト信号ＣＳ１に接続された複数のデバイスに対して、それぞれのデバイスのスペックに応じてマイクロプロセッサ５１の外部バスＩ／Ｆ回路２３の同期クロック周波数を設定することが可能になる。さらに、クロック周波数を変えるだけでなく、各バス設定レジスタでそれぞれのデバイスに対して最適化された各種制御信号のタイミング設定が可能になる。したがって、１つのチップセレクト信号ＣＳに、同期クロック周波数の異なる同期式デバイスを接続した際にも、それぞれのデバイスに対して最適な同期クロック周波数でアクセスすることが可能になり、さらに各種制御信号のタイミング設定もそれぞれのデバイスに対して最適化することが可能になるために、システム全体のパフォーマンスの向上が可能になる。
【００７２】
〔実施の形態３〕
本発明のその他の実施形態について、図７、図８に基づいて説明すると以下の通りである。
【００７３】
図７は、本実施形態のマイクロプロセッサ５２を使用したシステムを簡略化して示すブロック図である。図１で示した実施の形態１のブロック図と比較して異なる点は、マイクロプロセッサ５２が、外部バスＩ／Ｆ回路２３に代えて、外部バスＩ／Ｆ回路３５を備えている点と、プログラムＲＯＭ７はアクティブ・ロウのウェイト信号を出力し、データＲＯＭ８はアクティブ・ハイのウェイト信号を出力する点である。
【００７４】
上記外部バスＩ／Ｆ回路３５は、前述の外部バスＩ／Ｆ回路２３にwait１端子及びwait２端子が追加されると共に、ウェイト端子設定レジスタ部３６とウェイト設定レジスタ部３７とが新たに設けられた構成である。ウェイト端子設定レジスタ部３６は、wait１端子及びwait２端子それぞれの極性を設定するwait１端子用とwait２端子用のwait設定レジスタを備えている。また、ウェイト設定レジスタ部３７は、ＣＳアドレス空間設定レジスタ部２２によって設定されたそれぞれのアドレス空間に割り当てられた外部デバイスそれぞれに対して、外部ウェイトを使用しない、wait１端子を使用する、或いはwait２端子を使用するのうちの何れかを設定するwait設定レジスタを備えており、ここでは、ＣＳ１−１、ＣＳ１−２、ＣＳ２−１、ＣＳ２−２、ＣＳ３−１、ＣＳ３−２の各アドレス空間それぞれに対応して、ＣＳ１−１用、ＣＳ１−２用、ＣＳ２−１用、ＣＳ２−２用、ＣＳ３−１用、ＣＳ３−２用の計６個のwait設定レジスタを備えている。さらに、該ウェイト設定レジスタ部３７では、ウェイト動作仕様（たとえば、ウェイトの deassert 後の動作タイミングなど）についても設定可能である。
【００７５】
タイミングコントローラ３１は、実施の形態１と同様に、ＣＰＵ２０がアクセスしようとするアドレスに基づいて、ＣＳアドレス空間設定レジスタ部２２を参照し、ＣＳアドレス空間設定レジスタ部２２で設定したどのアドレス空間に当該アドレスが該当するかを判定する。そして、本実施の形態では、タイミングコントローラ３１は、該判定結果（設定レジスタ選択信号）に基づいてバス設定レジスタ部３０における該当するバス設定レジスタを選択すると共に、ウェイト設定レジスタ部３７における該当するWait設定レジスタを選択し、選択したWait設定レジスタに設定されているWait設定を用いて、選択したバス設定レジスタに設定されているタイミングで外部デバイスに制御信号を出力する。つまり、本発明におけるウェイト設定手段は、上記ウェイト設定レジスタ部３７と上記ウェイト端子設定レジスタ部３６と上記タイミングコントローラ３１とで構成される。
【００７６】
本実施形態においては、プログラムＲＯＭ７のウェイト信号はマイクロプロセッサ５２のwait１端子に入力され、データＲＯＭ８のウェイト信号はマイクロプロセッサ５２のwait２端子に入力される。また、ウェイト端子設定レジスタ部３６では、wait１端子をアクティブ・ロウ（Ｌ）、wait２端子をアクティブ・ハイ（Ｈ）に設定し、さらに、ウェイト設定レジスタ部３７ではＣＳ１-１用wait設定レジスタはwait１端子を使用するように設定し、ＣＳ１−２用wait設定レジスタはwait２端子を使用するように設定している。
【００７７】
このような構成において、プログラムＲＯＭ７をアクセス中にプログラムＲＯＭ７がwait信号を出力した場合には、wait１端子にＬレベル信号が入力される。Wait１端子はウェイト端子設定レジスタ部３６でＬアクティブに設定され、またＣＳ１−１用wait設定レジスタでＣＳ１−１のアドレス空間アクセス時には、外部wait１端子の入力信号をwaitとして使用するように設定されていることから、このプログラムＲＯＭ７のwait出力はマイクロプロセッサ５２にて検出され、マイクロプロセッサ５２におけるプログラムＲＯＭ７へのアクセスサイクル数が増加する。
【００７８】
一方、データＲＯＭ８をアクセス中にデータＲＯＭ８がwait信号を出力した場合には、wait２端子にＨレベル信号が入力される。wait２端子はウェイト端子設定レジスタ部３６でＨアクティブに設定され、またＣＳ１−２用wait設定レジスタでＣＳ１−２のアドレス空間アクセス時には、外部wait２端子の入力信号をwaitとして使用するように設定されていることから、このデータＲＯＭ８のwait出力はマイクロプロセッサ５２において検出され、マイクロプロセッサ５２におけるデータＲＯＭ８へのアクセスサイクル数が増加する。図８に、このときのタイミングチャートを示す。
【００７９】
以上のように、本実施形態によれば、同じチップセレクト信号にウェイトの極性が異なる２つの外部デバイスを接続することまでも可能になる。また、複数の外部デバイスの出力するウェイトの極性が同じであれば、wait１端子にすべてのウェイト信号を入力することも可能である。この場合でもwait信号に関するタイミングは、ウェイト設定レジスタ部３７にて各外部デバイスにあわせて設定することが可能である。
【００８０】
〔実施の形態４〕
本発明のさらに他の実施形態について、図９〜図１１に基づいて説明すると以下の通りである。
【００８１】
図９は、本実施形態のマイクロプロセッサ５３を使用したシステムを簡略化して示すブロック図である。図１で示した実施の形態１のブロック図と比較して異なる点は、マイクロプロセッサ５３が、外部バスＩ／Ｆ回路２３に代えて外部バスＩ／Ｆ回路３８を備えており、また、外部デバイス外部ＲＡＭ９として、Asynchronous access, Synchronous burst access のどちらのアクセス形式でもアクセスが可能な Cellular ＲＡＭを使用している点である。
【００８２】
外部バスＩ／Ｆ回路３８は、ＣＳアドレス空間設定レジスタ部２２に代えて、ＣＳアドレス空間設定レジスタ部２２’を備えている。ＣＳアドレス空間設定レジスタ部２２’は、ＣＳ２のアドレス空間のみ３つのアドレス空間に分割するようになっており、ここでは、ＣＳ１−１、ＣＳ１−２、ＣＳ２−１、ＣＳ２−２、ＣＳ２−３、ＣＳ３−１、ＣＳ３−２の計７個のアドレス空間設定レジスタを備えている。したがって、バス設定レジスタ部３０’は、これに合わせて、ＣＳ１−１用、ＣＳ１−２用、ＣＳ２−１用、ＣＳ２−２用、ＣＳ２−３用、ＣＳ３−１用、ＣＳ３−２用の計７個のバス設定設定レジスタを備えている。
【００８３】
そして、外部バスＩ／Ｆ回路３８に新たに設けられたアクセス形式設定レジスタ部３９は、ＣＳアドレス空間設定レジスタ部２２’によって設定されたそれぞれのアドレス空間に割り当てられた外部デバイスそれぞれに対して、Asynchronous access あるいは Synchronous access などのアクセス形式を設定するアクセス形式設定レジスタを備えており、ここでは、ＣＳ１−１、ＣＳ１−２、ＣＳ２−１、ＣＳ２−２、ＣＳ２−３、ＣＳ３−１、ＣＳ３−２の各アドレス空間それぞれに対応して、ＣＳ１−１用、ＣＳ１−２用、ＣＳ２−１用、ＣＳ２−２用、ＣＳ２−３用、ＣＳ３−１用、ＣＳ３−２用の計７個のアクセス形式設定レジスタを備えている。
【００８４】
タイミングコントローラ３１は、実施の形態１と同様に、ＣＰＵ２０がアクセスしようとするアドレスに基づいて、ＣＳアドレス空間設定レジスタ部２２’を参照し、ＣＳアドレス空間設定レジスタ部２２’で設定したどのアドレス空間に当該アドレスが該当するかを判定する。そして、本実施の形態では、タイミングコントローラ３１は、該判定結果（設定レジスタ選択信号）に基づいてバス設定レジスタ部３０における該当するバス設定レジスタを選択すると共に、アクセス形式設定レジスタ部３９における該当するアクセス形式設定レジスタを選択し、選択したアクセス形式設定レジスタに設定されているアクセス形式にて、選択したバス設定レジスタに設定されているタイミングで外部デバイスに制御信号を出力する。本発明におけるアクセス形式設定手段は、上記アクセス形式設定レジスタ部３９と上記タイミングコントローラ３１とで構成される。
【００８５】
本実施形態においては、上記外部ＲＡＭ９のアドレス空間は、図１０のように、ADD_19によって、アドレス空間１とアドレス空間２との２つに分割されている。そして、アドレス空間１は、デバッグ情報更新など連続アクセスが多発しないようなアクセスに対して使用され、アドレス空間２は、画像データなど連続アクセスが多発するアクセスに対して使用される。また、外部ＲＡＭ９のアドレス空間１に対しては、ＣＳ２-１のアドレス空間が割り当てられ、アドレス空間２に対しては、ＣＳ２-２のアドレス空間を割り当てられている。そして、ＣＳ２-１のアドレス空間については、連続アクセスの発生頻度が少ないので、ＣＳ２-１用アクセス形式設定レジスタでは、アクセス形式が Asynchronous access に設定され、ＣＳ２-２のアドレス空間に対しては、連続アクセスが多発するため、ＣＳ２-２用アクセス形式設定レジスタでは、アクセス形式が Synchronous burst access に設定されている。
【００８６】
さらに、ＣＳデコード回路１４と外部ＲＡＭ９,音源用ＩＣ１０との接続については、図９に示すように、ＣＳ２-１,ＣＳ２-２のアドレス空間アクセス時には、外部ＲＡＭ９のチップセレクト信号端子と接続されているＣＳデコード回路１４におけるチップセレクト信号端子Ｔ１が assert され、ＣＳ２-３のアドレス空間アクセス時には音源用IC１０のチップセレクト信号端子と接続されているＣＳデコード回路１４におけるチップセレクト信号端子Ｔ２が assert されるような回路構成となっている。
【００８７】
また、アクセス形式を考える際には、システム全体のパフォーマンス向上の観点では、画像データなどの連続アクセスが発生するアクセスに関しては、Synchronous burst access がパフォーマンスの向上に有効であるものの、デバッグ情報更新などの連続アクセスが頻繁に発生しないアクセスの場合では、 Synchronous burst access ではファーストアクセスのLatencyが長いため、逆にパフォーマンスの低下が懸念される。
【００８８】
そこで、本実施形態では、デバッグ情報更新などの連続アクセスが頻繁に発生しないようなアクセスに対しては、ＣＳ２-１のアドレス空間で行うことで外部ＲＡＭ９のアドレス空間１を Asynchronous access でアクセスを行い、また画像データのリード・ライトなど連続アクセスが多発するようなアクセスに関しては、ＣＳ２-２のアドレス空間で行い外部ＲＡＭ９のアドレス空間２に Synchronous burst access でアクセスを行うようにすることで、システム全体のパフォーマンスを向上させるために最適化されたアクセスを実現することができる。図１１に、このときのタイミングチャートを示す。
【００８９】
なお、以上述べた実施の形態１〜４では、チップセレクト信号に与えられたアドレス空間を複数のアドレス空間にさらに分け、その分割されたアドレス空間に対してそれぞれに、バス設定レジスタ部３０を備えた場合、バス設定レジスタ部３０とクロック設定レジスタ部３４とを備えた場合、バス設定レジスタ部３０とウェイト端子設定レジスタ部３６とウェイト設定レジスタ部３７とを備えた場合、バス設定レジスタ部３０とアクセス形式設定レジスタ部３９を備えた場合について説明した。
【００９０】
しかしながら、本発明はこれに限られるものではなく、たとえば、バス設定レジスタ部３０とクロック設定レジスタ部３４に加えて、クロック位相設定部を設置してもよい。この場合、図１３のように、同じチップセレクト信号のアドレス空間内のアクセスでも、ＣＰＵ２０がアクセスするアドレス空間によって、外部バスＩ／Ｆ回路から外部デバイスへ出力される同期クロックの位相を変化させることが可能になる。
【００９１】
図１３では、ＣＳ１-１のアドレス空間へのアクセス時には、各制御信号（Address,ＣＳ,ＡＤＶ,リード信号、ライト信号）は、ＣＬＫの立ち上がりで変化し、ＣＳ１−２のアドレス空間へのアクセス時には、各制御信号（Address,ＣＳ,ＡＤＶ,リード信号、ライト信号）は、ＣＬＫの立下りで変化している。これによって、マイクロプロセッサの１つチップセレクト信号に接続可能なデバイスの組み合わせのバリエーションが増え、有限であるマイクロプロセッサのチップセレクト信号端子を有効に使用することができる。
【００９２】
さらに、上述の実施の形態１，２、３では、１つのチップセレクト信号ＣＳのアドレス空間を２つに分割することを例にあげて説明したが、分割数は２つに限られず、図１２のようにＣＳアドレス空間設定レジスタ部２２Ａによって任意のＮ（２以上の整数）のアドレス空間に分割され、それぞれのアドレス空間に対してバス設定レジスタ部３０Ａにてバス設定が可能なものであってもよい。
【００９３】
また、ここでは、チップセレクト信号ＣＳ１〜ＣＳ３の全ての対応するアドレス空間を、ＣＳアドレス空間設定レジスタ部２２にてさらに分割する構成としたが、少なくとも１つのチップセレクト信号に対応するアドレス空間をさらに小さなアドレス空間に分割するＣＳアドレス空間設定レジスタ部であってもよい。
【００９４】
同様に、上述の実施の形態２〜４では、クロック設定レジスタ部３４、ウェイト設定レジスタ部３７、アクセス形式設定レジスタ部３９など全てにおいて、ＣＳアドレス空間設定レジスタ部２２（２２’）にて分割したアドレス空間それぞれに対して、定レジスタを設けて個別設定可能な構成としたが、バス設定レジスタ部３０以外のこれら各設定部については、必ずしも各アドレス空間に対応して設ける必要はなく、必要数設ければよい。
【００９５】
また、本発明は、換言すれば以下のように表現することもできる。
【００９６】
すなわち、本発明のマイクロプロセッサは、命令を実行する中央演算処理装置と、上記中央演算処理装置による命令実行に基づいて外部バス制御を行う外部バスインタフェース回路とを1個の半導体チップに有するマイクロプロセッサであって、上記外部バスインタフェース回路は複数の外部デバイス選択信号の中から中央演算処理装置がアクセスするアドレスに応じた外部デバイス選択信号を活性化可能であり、上記外部デバイス選択信号に与えられているアドレス空間をある特定のアドレスによって、複数のアドレス空間に分割してそれぞれの分割されたアドレス空間ごとに外部バスインタフェースのタイミング設定手段を備え、１つの外部デバイス選択信号に与えられているアドレス空間内で複数の外部バスインタフェースのタイミング設定が可能であることを特徴としている。
【００９７】
また、本発明のマイクロプロセッサは、命令を実行する中央演算処理装置と上記中央演算処理装置による命令実行に基づいて外部バス制御を行う外部バスインタフェース回路とを1個の半導体チップに有するマイクロプロセッサであって、上記外部バスインタフェース回路に複数のアクセス形式でアクセス可能なデバイスを接続可能であり、上記外部デバイス選択信号に与えられたアドレス空間をある特定アドレスによって、複数のアドレス空間に分割し、それぞれの分割されたアドレス空間ごとに外部バスインタフェースのタイミング設定手段とアクセス形式設定手段を備えることで、複数のアクセス形式が可能な外部デバイスとマイクロプロセッサを接続する際には、特定のアドレス空間ごとにそれぞれ異なるアクセス形式で外部デバイスとアクセスすることが可能であることを特徴としている。
【００９８】
さらに、上記マイクロプロセッサにおいて、ある１つのデバイス選択信号に与えられたアドレス空間をある特定アドレスによって、複数のアドレス空間に分けそのアドレス空間ごとに、外部バスインタフェースの同期クロック周波数設定手段を備えて、デバイス選択信号に与えられているアドレス空間内でも特定のアドレス空間ごとにそれぞれ異なるクロック周波数が出力可能であることを特徴とすることもできる。
【００９９】
また、上記マイクロプロセッサにおいて、ある１つのデバイス選択信号に与えられているアドレス空間をある特定アドレスによって、複数のアドレス空間に分けてそのアドレス空間ごとに、外部バスインタフェースが出力するクロックのクロック位相設定手段を備えて、同一のデバイス選択信号に与えられたアドレス空間内でも特定のアドレス空間ごとにそれぞれ異なる位相のクロックが出力可能であることを特徴とすることもできる。
【０１００】
また、上記マイクロプロセッサにおいて、ある１つのデバイス選択信号に与えられているアドレス空間をある特定アドレスによって、複数のアドレス空間に分けてそのアドレス空間ごとに、外部バスインタフェースへ入力される外部デバイスからの外部ウェイト信号仕様にあわせたウェイト設定（アクティブ・ロウ/アクティブ・ハイなど）を行う手段及びマイクロコンピュータのウェイト信号端子の使用/未使用を設定する手段を備えて、同一のデバイス選択信号に与えられたアドレス空間内でも特定のアドレス空間ごとにそれぞれ異なる外部ウェイト信号の入力が可能であることを特徴としている。
【図面の簡単な説明】
【０１０１】
【図１】本発明の実施の一形態を示すもので、マイクロプロセッサを用いた電子機器の電気的構成を簡略化して示すブロック図である。
【図２】チップセレクト信号に割り当てられたアドレス空間を示すメモリＭＡＰ例を示す図である。
【図３】上記マイクロプロセッサの外部バスインターフェース回路内にあるバス設定レジスタ部において設定可能な制御信号出力タイミングのパラメータを示す図である。
【図４】図１の電子機器における外部バスインターフェース回路のアクセスタイミングを簡略化して示すタイミングチャート図である。
【図５】本発明のその他の実施形態を示すもので、マイクロプロセッサを用いた電子機器の電気的構成を簡略化して示すブロック図である。
【図６】図５の電子機器における外部バスインターフェース回路のアクセスタイミングを簡略化して示すタイミングチャート図である。
【図７】本発明のさらに他の実施形態を示すもので、マイクロプロセッサを用いた電子機器の電気的構成を簡略化して示すブロック図である。
【図８】図７の電子機器における外部バスインターフェース回路のアクセスタイミングを簡略化して示すタイミングチャート図である。
【図９】本発明のさらに他の実施形態を示すもので、マイクロプロセッサを用いた電子機器の電気的構成を簡略化して示すブロック図である。
【図１０】図９の電子機器における外部ＲＡＭのアドレス空間の分割例を示す図である。
【図１１】図９の電子機器における外部バスインターフェース回路のアクセスタイミングを簡略化して示すタイミングチャート図であり、外部ＲＡＭへのアクセスが発生した場合の、外部ＲＡＭへのアクセスのタイミングチャート例である。
【図１２】本発明のさらに他の実施形態を示すもので、アドレス空間設定レジスタ部で任意のＮ個に１つのチップセレクト信号のアドレス空間を分割するマイクロプロセッサの構成を示すブロック図である
【図１３】本発明のさらに他の実施形態を示すもので、マイクロプロセッサを用いた電子機器の電気的構成を簡略化して示すブロック図である。
【図１４】従来の携帯電話機の電気的構成を示すブロック図である。
【符号の説明】
【０１０２】
１      マイクロプロセッサ
１’    マイクロプロセッサ
７      プログラムＲＯＭ
８      データＲＯＭ
９      外部ＲＡＭ
１０    音源用ＩＣ
１１    表示用ＩＣ
１２    アプリケーションＩＣ
２０    ＣＰＵ（中央演算処理装置）
２１    アドレスデコーダ部（外部デバイス選択信号活性手段）
２２    ＣＳアドレス空間設定レジスタ部（アドレス空間分割手段）
２２’  ＣＳアドレス空間設定レジスタ部（アドレス空間分割手段）
２２Ａ  ＣＳアドレス空間設定レジスタ部（アドレス空間分割手段）
２３    外部バスインターフェース回路
２３’  外部バスインターフェース回路
３０    バス設定レジスタ部（タイミング設定手段）
３０’  バス設定レジスタ部（タイミング設定手段）
３０Ａ  バス設定レジスタ部（タイミング設定手段）
３３    外部バスインターフェース回路
３４    クロック設定レジスタ部（クロック周波数設定手段）
３５    外部バスインターフェース回路
３６    ウェイト端子設定レジスタ部（ウェイト設定手段）
３７    ウェイト設定レジスタ部（ウェイト設定手段）
３８    外部バスインターフェース回路
３９    アクセス形式設定レジスタ部（アクセス形式設定手段）
３１    タイミングコントローラ（アドレス空間分割手段、タイミング設定手段、
クロック周波数設定手段、ウェイト設定手段、アクセス形式設定手段、
クロック位相設定手段）
５１    マイクロプロセッサ
５２    マイクロプロセッサ
５３    マイクロプロセッサ
【図１】
2006350965.tif 000003
【図２】
2006350965.tif 000004
【図３】
2006350965.tif 000005
【図４】
2006350965.tif 000006
【図５】
2006350965.tif 000007
【図６】
2006350965.tif 000008
【図７】
2006350965.tif 000009
【図８】
2006350965.tif 000010
【図９】
2006350965.tif 000011
【図１０】
2006350965.tif 000012
【図１１】
2006350965.tif 000013
【図１２】
2006350965.tif 000014
【図１３】
2006350965.tif 000015
【図１４】
2006350965.tif 000016