(57)【要約】【課題】ホストＣＰＵが所望のプログラムをＲＡＭに書き込み、ＣＰＵに実行させることができる半導体装置を提供する。【解決手段】アプリケーションプロセッサ１０は、ブート処理のためのプログラムを格納するＲＯＭ１２と、プログラムを格納するためのＲＡＭ１３と、外部のカメラから受信した画像信号をＪＰＥＧ形式の画像データに変換するＪＰＥＧエンジン部１４と、所定の処理を行うためのプログラムをホストＣＰＵ５から受け取ってＲＡＭ１３に書き込むホストインタフェース部１５と、ＲＡＭ１３に書き込まれたプログラムを実行するＣＰＵ１１とを具備する。【選択図】　図１
2004110086.tif 000002
【特許請求の範囲】
【請求項１】
ホストＣＰＵの制御の下で動作する半導体装置であって、
プログラムを格納するためのＲＡＭと、
所定の処理を行うためのプログラムを前記ホストＣＰＵから受け取って前記ＲＡＭに書き込むインタフェース部と、
前記ＲＡＭに書き込まれたプログラムを実行するＣＰＵと、
を具備する半導体装置。
【請求項２】
前記ＲＡＭが、複数のプログラムを格納し、前記ＣＰＵが、前記ホストＣＰＵからの指示に応じて、前記ＲＡＭに書き込まれた複数のプログラムの中の１以上のプログラムを実行することを特徴とする請求項１記載の半導体装置。
【請求項３】
前記ＣＰＵが、前記ホストＣＰＵからの指示に応じて、前記ＲＡＭに書き込まれた複数のプログラムの中の２以上のプログラムを並列に実行することを特徴とする請求項２記載の半導体装置。
【請求項４】
前記ホストＣＰＵが、前記ＲＡＭの初期化を行い、その後、前記半導体装置の初期化を行うためのプログラムを前記ＲＡＭに書き込み、前記半導体装置の初期化を行うためのプログラムの実行を前記ＣＰＵに指示し、前記ＣＰＵが前記半導体装置の初期化を行うためのプログラムの実行を終了した後に、所定の処理を行うためのプログラムを前記ＲＡＭに書き込み、前記所定の処理を行うためのプログラムの実行を前記ＣＰＵに指示することを特徴とする請求項１〜３のいずれか１項に記載の半導体装置。
【請求項５】
所定の機能をそれぞれ実現する複数の機能ブロックを更に具備し、前記ＲＡＭが、前記複数の機能ブロックをそれぞれ制御するための複数のプログラムを格納し、前記ＣＰＵが、前記ホストＣＰＵからの指示に応じて、前記ＲＡＭに書き込まれた複数のプログラムを並列に実行することを特徴とする請求項１〜４のいずれか１項に記載の半導体装置。
【請求項６】
前記複数の機能ブロックをそれぞれ制御するための複数のプログラムが、制御対象である機能ブロックを特定する情報をそれぞれ含むことを特徴とする請求項５記載の半導体装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、ホストＣＰＵの制御の下で動作する半導体装置に関する。
【０００２】
【従来の技術】
近年、携帯電話装置、ＰＤＡ（携帯情報端末）等において、アプリケーションプロセッサと呼ばれる半導体装置が用いられている。
アプリケーションプロセッサは、ＣＰＵ、ＲＯＭ、ＲＡＭ等を有しており、アプリケーションプロセッサ内のＣＰＵは、携帯電話装置等の全体を制御するホストＣＰＵの指示に応じて、アプリケーションプロセッサ内のＲＯＭに格納されているプログラムを実行することにより、所定の処理（例えば、画像処理等）を行う。
【０００３】
しかしながら、アプリケーションプロセッサが多数の処理を行えるようにするためには、アプリケーションプロセッサ内のＲＯＭに多数のプログラムを格納する必要がある。そのため、アプリケーションプロセッサ内のＲＯＭの容量を大きくする必要があった。
【０００４】
ところで、日本国特許出願公開（特開）２００１−２６５６００号公報（以下、「文献１」という）には、システム制御や処理データ管理を司るホストＣＰＵ（Ｃｅｎｔｒａｌ　Ｐｒｏｃｅｓｓｉｎｇ　Ｕｎｉｔ）と、予め複数の処理装置プログラムを格納してある外部メモリと、複数の処理装置プログラムの１つを格納する内部メモリをもち、該内部メモリに格納した該処理装置プログラムを実行する処理装置とを備え、リセット発生解除の後に自動的に複数の処理装置プログラムの１つを外部メモリから内部メモリに取り込み、取り込んだ該処理装置プログラムの実行開始を制御するプログラムのブート・ローディング機能を有するデータ処理システムにおいて、ホストＣＰＵと処理装置との間で処理データやメッセージを交換するデュアル・ポート・メモリと、処理装置の処理内容を外部から指定するための指定情報を発生する処理指定情報設定装置と、システム・リセットとホストＣＰＵのソフト制御されたリセット信号との論理和をとり処理装置へリセットの信号供給をする論理和回路と、ブロックアドレスレジスタとを有し、ホストＣＰＵが初期化処理を終了しソフト制御されたリセット信号を発生した状態で、処理装置に処理させるための　処理装置プログラムの指定情報を読み込み、指定情報に対応して、処理装置プログラムが格納されている処理装置プログラムデータ格納エリアのブロックのアドレスの上位ビットをブロック・アドレス・レジスタに設定した後に、ホストＣＰＵが処理装置へのリセット信号の発生解除を行い処理装置への処理装置プログラムデータのブート・ローディングを行うことを特徴とするデータ処理システムが掲載されている。
【０００５】
しかしながら、文献１に掲載されたデータ処理システムは、処理装置がリセット発生解除の後に自動的に複数の処理装置プログラムの１つを外部メモリから内部メモリに取り込み、取り込んだ処理装置プログラムの実行を開始するものであり、ホストＣＰＵが所望のプログラムを内部メモリに書き込み、処理装置に実行させるものではない。
【０００６】
また、特開２０００−１８１６９９号公報（以下、「文献２」という）には、正規プログラムを保持するＲＯＭと、ＲＡＭとを備え、プログラム処理を行うディジタル信号処理装置において、正規プログラム処理中に外部からのプログラムをＲＡＭへロードし、ＲＡＭへのプログラムロードが終了した後に、正規プログラムの処理からＲＡＭにロードされたプログラムの処理へ切替え、ロードプログラムの処理が終了した後に、正規プログラムの処理に切替えるように制御する制御手段を備えたことを特徴とするディジタル信号処理装置が掲載されている。
【０００７】
しかしながら、文献２に掲載されたディジタル信号処理装置は、正規プログラム処理中に外部からのプログラムをＲＡＭへロードし、ＲＡＭへのプログラムロードが終了した後に、正規プログラムの処理からＲＡＭにロードされたプログラムの処理へ切替え、ロードプログラムの処理が終了した後に、正規プログラムの処理に切替えるように制御するものであり、ホストＣＰＵが所望のプログラムをＲＡＭに書き込み、実行させるものではない。
【０００８】
また、特開平１１−３３８６８７号公報（以下、「文献３」という）には、ホストシステムに対して拡張バスを介して接続される拡張ユニット内に格納されたプログラムの書き換えを行うプログラム書換システムにおいて、拡張ユニットには、該拡張ユニット内を制御するＣＰＵと、ＣＰＵで実行されるプログラムを格納する書き換え可能な不揮発性メモリと、ホストシステムから不揮発性メモリにアクセスするとともに、ホストシステムからＣＰＵへリセット出力が可能なインターフェイス回路と、を有し、ホストシステムがＣＰＵを動作停止状態としている間に不揮発性メモリに直接アクセスして、不揮発性メモリに格納されたプログラム内容を書き換えることを特徴とするプログラム書換システムが掲載されている。
【０００９】
しかしながら、文献３に掲載されたプログラム書換システムは、ホストシステムが書き換え可能な不揮発性メモリに格納されたプログラム内容を書き換えるものであり、書き換え可能な不揮発性メモリを必須構成要素とする。
【００１０】
【発明が解決しようとする課題】
そこで、上記の点に鑑み、本発明は、書き換え可能な不揮発性メモリを必要とすることなく、ホストＣＰＵが、所望のプログラムをＲＡＭに書き込み、ＣＰＵに実行させることにより、ホストＣＰＵが制御可能な半導体装置を提供することを目的とする。
【００１１】
【課題を解決するための手段】
以上の課題を解決するため、本発明に係る半導体装置は、ホストＣＰＵの制御の下で動作する半導体装置であって、プログラムを格納するためのＲＡＭと、所定の処理を行うためのプログラムをホストＣＰＵから受け取ってＲＡＭに書き込むインタフェース部と、ＲＡＭに書き込まれたプログラムを実行するＣＰＵとを具備する。
【００１２】
ここで、ＲＡＭが、複数のプログラムを格納し、ＣＰＵが、ホストＣＰＵからの指示に応じて、ＲＡＭに書き込まれた複数のプログラムの中の１以上のプログラムを実行することとしても良い。さらに、ＣＰＵが、ホストＣＰＵからの指示に応じて、ＲＡＭに書き込まれた複数のプログラムの中の２以上のプログラムを並列に実行することとしても良い。
【００１３】
また、ホストＣＰＵが、ＲＡＭの初期化を行い、その後、半導体装置の初期化を行うためのプログラムをＲＡＭに書き込み、半導体装置の初期化を行うためのプログラムの実行をＣＰＵに指示し、ＣＰＵが半導体装置の初期化を行うためのプログラムの実行を終了した後に、所定の処理を行うためのプログラムをＲＡＭに書き込み、所定の処理を行うためのプログラムの実行をＣＰＵに指示することとしても良い。
【００１４】
また、所定の機能をそれぞれ実現する複数の機能ブロックを更に具備し、ＲＡＭが、複数の機能ブロックをそれぞれ制御するための複数のプログラムを格納し、ＣＰＵが、ホストＣＰＵからの指示に応じて、ＲＡＭに書き込まれた複数のプログラムを並列に実行することとしても良い。
【００１５】
また、複数の機能ブロックをそれぞれ制御するための複数のプログラムが、制御対象である機能ブロックを特定する情報をそれぞれ含むこととしても良い。
【００１６】
上記のように構成した本発明によれば、書き換え可能な不揮発性メモリを必要とすることなく、ホストＣＰＵが、所望のプログラムをＲＡＭに書き込み、ＣＰＵに実行させることにより、ホストＣＰＵが制御することができる。
【００１７】
【発明の実施の形態】
以下、図面を参照しながら、本発明の実施の形態について説明する。なお、同一の構成要素には同一の参照番号を付して、説明を省略する。
図１に、本発明の第１の実施形態としてのアプリケーションプロセッサを用いたＰＤＡの構成を示す。
図１に示すように、このＰＤＡ１は、入力部２と、ＲＡＭ３と、ＲＯＭ４と、ホストＣＰＵ５と、アプリケーションプロセッサ１０と、ＬＣＤドライバ２１と、ＬＣＤパネル２２とを具備する。
【００１８】
入力部２は、ユーザがデータ等を入力するためのタッチパネル等である。
入力部２、ＲＡＭ３、ＲＯＭ４、及び、ホストＣＰＵ５は、第１のバス６によって相互に接続されている。ホストＣＰＵ５は、入力部２から入力されたデータ等に応じて、ＲＡＭ３を作業用領域として使用しながら、ＲＯＭ４に格納されたＯＳ（オペレーティングシステム）プログラム、アプリケーションプログラム等を実行し、ＰＤＡ１全体の制御を行う。
【００１９】
本発明の第１の実施形態としてのアプリケーションプロセッサ１０は、ＪＰＥＧ（Ｊｏｉｎｔ　Ｐｈｏｔｏｇｒａｐｈｉｃ　Ｅｘｐｅｒｔｓ　Ｇｒｏｕｐ）画像処理等を行う装置であり、ＣＰＵ１１と、ＲＯＭ１２と、シンクロナスＤＲＡＭ（ＳＤＲＡＭ）１３と、ＪＰＥＧエンジン部１４と、ホストインタフェース部１５とを有している。ＣＰＵ１１、ＲＯＭ１２、ＳＤＲＡＭ１３、ＪＰＥＧエンジン部１４、及び、ホストインタフェース部１５は、第２のバス１６によって相互に接続されている。また、ホストインタフェース部１５は、ホストＣＰＵ５に接続されている。
ＪＰＥＧエンジン部１４は、外部のディジタルスチルカメラに接続されており、このディジタルスチルカメラから画像信号を受け取ってＪＰＥＧ形式の静止画像データに変換する。
【００２０】
ＬＣＤドライバ２１は、アプリケーションプロセッサ１０のバス１６に接続されており、アプリケーションプロセッサ１０から受け取った画像データに基づく画像をＬＣＤパネル２２に表示させる。
【００２１】
次に、アプリケーションプロセッサ１０の動作について説明する。
ＰＤＡ１の電源がオンになると、ホストＣＰＵ５及びアプリケーションプロセッサ１０は、それぞれ動作を開始する。ＲＯＭ１２には、ブート処理（例えば、アプリケーションプロセッサ１０の初期化処理等）のためのプログラムが格納されており、ＣＰＵ１１は、ＲＯＭ１２に格納されているプログラムを実行し、アプリケーションプロセッサ１０の初期化処理等を行う。
【００２２】
ＣＰＵ１１は、アプリケーションプロセッサ１０の初期化処理等を終えると、その旨をホストＣＰＵ５に通知する。本実施形態においては、ＣＰＵ１１は、アプリケーションプロセッサ１０の初期化処理等が終わると、割り込み信号をホストＣＰＵ５に出力する。
ホストＣＰＵ５は、ＣＰＵ１１から割り込み信号を受け取ると、ＣＰＵ１１の動作を停止させるようにホストインタフェース部１５に指示する。なお、ホストインタフェース部１５が、ホストＣＰＵ５からのコマンドを受け取るコマンドレジスタを有することとし、ホストＣＰＵ５が、このコマンドレジスタにＣＰＵ１１の動作を停止させる旨のコマンドを書き込むこととしても良い。
【００２３】
ホストインタフェース部１５は、ＣＰＵ１１の動作を停止させる旨の指示をホストＣＰＵ５から受け取ると、ＣＰＵ１１の動作を停止させる。本実施形態においては、ホストインタフェース部１５は、ＣＰＵ１１の動作を停止させる旨のコマンドをホストＣＰＵ５から受け取ると、停止信号をＣＰＵ１１に出力する。これにより、ＣＰＵ１１は動作を停止し、バス１６及びＳＤＲＡＭ１３はＣＰＵ１１から開放される。
次に、ホストＣＰＵ５は、ＣＰＵ１１に実行させるためのプログラムをＲＯＭ４から読み出し、ホストインタフェース部１５を介してＳＤＲＡＭ１３に転送する。ＲＯＭ４には、ＣＰＵ１１に実行させるための複数のプログラムが格納されており、ホストＣＰＵ５は、これらのプログラムの中の１個又は複数個の所望のプログラムをＳＤＲＡＭ１３に転送することができる。
【００２４】
ホストＣＰＵ５は、所望のプログラムのＳＤＲＡＭ１３への転送を終了すると、ＣＰＵ１１の動作を開始させるようにホストインタフェース部１５に指示する。なお、ホストインタフェース部１５が、ホストＣＰＵ５からコマンドを受け取るコマンドレジスタを有することとし、ホストＣＰＵ５が、このコマンドレジスタにＣＰＵ１１の動作を開始させる旨のコマンドを書き込むこととしても良い。
ホストインタフェース部１５は、ＣＰＵ１１の動作を開始させる旨の指示をホストＣＰＵ５から受け取ると、ＣＰＵ１１の動作を開始させる。本実施形態においては、ホストインタフェース部１５は、ＣＰＵ１１の動作を開始させる旨のコマンドをホストＣＰＵ５から受け取ると、停止信号をインアクティブにする。これにより、ＣＰＵ１１は動作を開始し、ＳＤＲＡＭ１３に転送されたプログラムを実行する。
【００２５】
このように、アプリケーションプロセッサ１０によれば、ホストＣＰＵ５が、所望のプログラムをアプリケーションプロセッサ１０内のＣＰＵ１１に実行させることができ、アプリケーションプロセッサ１０を自由に制御することができる。
また、ホストＣＰＵ５が、必要に応じてプログラムをＳＤＲＡＭ１３に転送すれば良いので、ＳＤＲＡＭ１３の容量を少なくすることができる。
【００２６】
なお、ホストインタフェース部１５が、割り込みベクタをそれぞれ格納する複数の割り込みベクタ格納レジスタを有することとし、ホストＣＰＵ５が、複数のプログラムをＳＤＲＡＭ１３に転送し、これらのプログラムの開始アドレスをホストインタフェース部１５内の割り込みベクタ格納レジスタに書き込み、ＣＰＵ１１に実行させるプログラムに応じた割り込み信号をＣＰＵ１１に適宜出力することとしても良い。
【００２７】
次に、本発明の第２の実施形態について説明する。図２は、本発明の第２の実施形態としてのアプリケーションプロセッサを用いたＰＤＡの構成を示す。
図２に示すように、このＰＤＡ３１は、入力部２と、ＲＡＭ３と、ＲＯＭ４と、ホストＣＰＵ５と、アプリケーションプロセッサ４０と、ＬＣＤドライバ２１と、ＬＣＤパネル２２とを具備する。
【００２８】
本発明の第２の実施形態としてのアプリケーションプロセッサ４０は、ＣＰＵ１１と、ＳＤＲＡＭ１３と、ＪＰＥＧエンジン部１４と、ホストインタフェース部１５とを有している。ＣＰＵ１１、ＳＤＲＡＭ１３、ＪＰＥＧエンジン部１４、及び、ホストインタフェース部１５は、第２のバス１６によって相互に接続されている。また、ホストインタフェース部１５は、ホストＣＰＵ５に接続されている。
【００２９】
次に、アプリケーションプロセッサ４０の動作について説明する。
ＰＤＡ１の電源がオンになると、ホストＣＰＵ５は、動作を開始する。まず、ホストＣＰＵ５は、ＣＰＵ１１の動作を開始させないようにホストインタフェース部１５に指示する。なお、ホストインタフェース部１５が、ホストＣＰＵ５からコマンドを受け取るコマンドレジスタを有することとし、ホストＣＰＵ５が、このコマンドレジスタにＣＰＵ１１の動作を開始させない旨のコマンドを書き込むこととしても良い。
【００３０】
ホストインタフェース部１５は、ＣＰＵ１１の動作を開始させない旨のコマンドをホストＣＰＵ５から受け取ると、リセット信号をＣＰＵ１１に出力する。これにより、ＣＰＵ１１は動作を開始しない。
次に、ホストＣＰＵ５は、ホストインタフェース部１５を介して、ＳＤＲＡＭ１３の初期化を行う。その後、ホストＣＰＵ５は、ＣＰＵ１１に実行させるためのプログラムをＲＯＭ４から読み出し、ホストインタフェース部１５を介してＳＤＲＡＭ１３に転送する。ＲＯＭ４には、ブート処理（例えば、アプリケーションプロセッサ１０の初期化処理等）のためのプログラムが格納されており、ホストＣＰＵ５は、このブート処理のためのプログラムをＳＤＲＡＭ１３に転送する。
【００３１】
ホストＣＰＵ５は、ブート処理のためのプログラムのＳＤＲＡＭ１３への転送を終了すると、ＣＰＵ１１の動作を開始させるようにホストインタフェース部１５に指示する。なお、ホストインタフェース部１５が、ホストＣＰＵ５からコマンドを受け取るコマンドレジスタを有することとし、ホストＣＰＵ５が、このコマンドレジスタにＣＰＵ１１の動作を開始させる旨のコマンドを書き込むこととしても良い。
ホストインタフェース部１５は、ＣＰＵ１１の動作を開始させる旨の指示をホストＣＰＵ５から受け取ると、ＣＰＵ１１の動作を開始させる。本実施形態においては、ホストインタフェース部１５は、ＣＰＵ１１の動作を開始させる旨のコマンドをホストＣＰＵ５から受け取ると、リセット信号をインアクティブにする。これにより、ＣＰＵ１１は、動作を開始し、ＳＤＲＡＭ１３に転送されたブート処理のためのプログラムを実行する。なお、ホストインタフェース部１５が、ＣＰＵ１１のリセットベクタを格納するリセットベクタ格納レジスタを有することとし、ホストＣＰＵ５が、ＳＤＲＡＭ１３に転送したプログラムの開始アドレスをホストインタフェース部１５内のリセットベクタ格納レジスタに書き込むこととしても良い。
【００３２】
ＣＰＵ１１は、ＳＤＲＡＭ１３に格納されているプログラムを実行し、アプリケーションプロセッサ１０の初期化処理等を行う。ＣＰＵ１１は、アプリケーションプロセッサ１０の初期化処理等を終えると、その旨をホストＣＰＵ５に通知する。本実施形態においては、ＣＰＵ１１は、アプリケーションプロセッサ１０の初期化処理等が終わると、割り込み信号をホストＣＰＵ５に出力する。
ホストＣＰＵ５は、ＣＰＵ１１から割り込み信号を受け取ると、ＣＰＵ１１の動作を停止させるようにホストインタフェース部１５に指示する。なお、ホストインタフェース部１５が、ホストＣＰＵ５からコマンドを受け取るコマンドレジスタを有することとし、ホストＣＰＵ５が、このコマンドレジスタにＣＰＵ１１の動作を停止させる旨のコマンドを書き込むこととしても良い。
【００３３】
ホストインタフェース部１５は、ＣＰＵ１１の動作を停止させる旨の指示をホストＣＰＵ５から受け取ると、ＣＰＵ１１の動作を停止させる。本実施形態においては、ホストインタフェース部１５は、ＣＰＵ１１の動作を停止させる旨のコマンドをホストＣＰＵ５から受け取ると、リセット信号をＣＰＵ１１に出力する。これにより、ＣＰＵ１１は動作を停止し、バス１６及びＳＤＲＡＭ１３はＣＰＵ１１から開放される。
次に、ホストＣＰＵ５は、ＣＰＵ１１に実行させるためのプログラムをＲＯＭ４から読み出し、ホストインタフェース部１５を介してＳＤＲＡＭ１３に転送する。ＲＯＭ４には、ＣＰＵ１１に実行させるための複数のプログラムが格納されており、ホストＣＰＵ５は、これらのプログラムの中の１個又は複数個の所望のプログラムをＳＤＲＡＭ１３に転送することができる。
【００３４】
ホストＣＰＵ５は、所望のプログラムのＳＤＲＡＭ１３への転送を終了すると、ＣＰＵ１１の動作を開始させるようにホストインタフェース部１５に指示する。なお、ホストインタフェース部１５が、ホストＣＰＵ５からコマンドを受け取るコマンドレジスタを有することとし、ホストＣＰＵ５が、このコマンドレジスタにＣＰＵ１１の動作を開始させる旨のコマンドを書き込むこととしても良い。
ホストインタフェース部１５は、ＣＰＵ１１の動作を開始させる旨の指示をホストＣＰＵ５から受け取ると、ＣＰＵ１１の動作を開始させる。本実施形態においては、ホストインタフェース部１５は、ＣＰＵ１１の動作を開始させる旨のコマンドをホストＣＰＵ５から受け取ると、リセット信号をインアクティブにする。これにより、ＣＰＵ１１は動作を開始し、ＳＤＲＡＭ１３に転送されたプログラムを実行する。なお、ホストインタフェース部１５が、ＣＰＵ１１のリセットベクタを格納するリセットベクタ格納レジスタを有することとし、ホストＣＰＵ５が、ＳＤＲＡＭ１３に転送したプログラムの開始アドレスをホストインタフェース部１５内のリセットベクタ格納レジスタに書き込むこととしても良い。
【００３５】
このように、アプリケーションプロセッサ４０によれば、アプリケーションプロセッサ１０におけるＲＯＭ１２を不要とすることができる。
【００３６】
なお、ホストインタフェース部１５が、割り込みベクタをそれぞれ格納する複数の割り込みベクタ格納レジスタを有することとし、ホストＣＰＵ５が、複数のプログラムをＳＤＲＡＭ１３に転送し、これらのプログラムの開始アドレスをホストインタフェース部１５内の複数の割り込みベクタ格納レジスタに書き込み、ＣＰＵ１１に実行させるプログラムに応じた割り込み信号をＣＰＵ１１に適宜出力することとしても良い。
【００３７】
次に、本発明の第３の実施形態について説明する。図３は、本発明の第３の実施形態としてのアプリケーションプロセッサを用いたＰＤＡの構成を示す。
図３に示すように、このＰＤＡ４１は、入力部２と、ＲＡＭ３と、ＲＯＭ４と、ホストＣＰＵ５と、アプリケーションプロセッサ５０と、ＬＣＤドライバ２１と、ＬＣＤパネル２２とを具備する。
【００３８】
本発明の第３の実施形態としてのアプリケーションプロセッサ５０は、ＣＰＵ１１と、ＲＯＭ１２と、ＳＤＲＡＭ１３と、ＪＰＥＧエンジン部１４と、ホストインタフェース部１５と、３Ｄエンジン部１７とを有している。ＣＰＵ１１、ＲＯＭ１２、ＳＤＲＡＭ１３、ＪＰＥＧエンジン部１４、ホストインタフェース部１５、及び、３Ｄエンジン部１７は、第２のバス１６によって相互に接続されている。また、ホストインタフェース部１５は、ホストＣＰＵ５に接続されている。
３Ｄエンジン部１７は、３次元画像処理を行う回路である。
【００３９】
次に、アプリケーションプロセッサ５０の動作について説明する。
ＰＤＡ１の電源がオンになると、ホストＣＰＵ５及びアプリケーションプロセッサ５０は、それぞれ動作を開始する。ＲＯＭ１２には、ブート処理（例えば、アプリケーションプロセッサ５０の初期化処理等）のためのプログラムが格納されており、ＣＰＵ１１は、ＲＯＭ１２に格納されているプログラムを実行し、アプリケーションプロセッサ５０の初期化処理等を行う。
【００４０】
ＣＰＵ１１は、アプリケーションプロセッサ５０の初期化処理等を終えると、その旨をホストＣＰＵ５に通知する。本実施形態においては、ＣＰＵ１１は、アプリケーションプロセッサ５０の初期化処理等が終わると、割り込み信号をホストＣＰＵ５に出力する。
ホストＣＰＵ５は、ＣＰＵ１１から割り込み信号を受け取ると、ＣＰＵ１１の動作を停止させるようにホストインタフェース部１５に指示する。なお、ホストインタフェース部１５が、ホストＣＰＵ５からコマンドを受け取るコマンドレジスタを有することとし、ホストＣＰＵ５が、このコマンドレジスタにＣＰＵ１１の動作を停止させる旨のコマンドを書き込むこととしても良い。
【００４１】
ホストインタフェース部１５は、ＣＰＵ１１の動作を停止させる旨の指示をホストＣＰＵ５から受け取ると、ＣＰＵ１１の動作を停止させる。本実施形態においては、ホストインタフェース部１５は、ＣＰＵ１１の動作を停止させる旨の指示をホストＣＰＵ５から受け取ると、停止信号をＣＰＵ１１に出力する。これにより、ＣＰＵ１１は動作を停止し、バス１６及びＳＤＲＡＭ１３はＣＰＵ１１から開放される。
次に、ホストＣＰＵ５は、ＣＰＵ１１に実行させるためのプログラムをＲＯＭ４から読み出し、ホストインタフェース部１５を介してＳＤＲＡＭ１３に転送する。ＲＯＭ４には、ＪＰＥＧエンジン部１４を制御するためのプログラム及び３Ｄエンジン部１７を制御するためのプログラムが格納されており、ホストＣＰＵ５は、これらのプログラムをＳＤＲＡＭ１３に転送する。なお、ＪＰＥＧエンジン部１４を制御するためのプログラムの先頭には、ＪＰＥＧエンジン部１４をハードウェアリソースとして使用することを表すリソース情報が含まれており、３Ｄエンジン部１７を制御するためのプログラムの先頭には、３Ｄエンジン部１７をハードウェアリソースとして使用することを表すリソース情報が含まれている。
【００４２】
ホストインタフェース部１５は、割り込みベクタをそれぞれ格納する複数の割り込みベクタ格納レジスタを有しており、ホストＣＰＵ５は、ＪＰＥＧエンジン部１４を制御するためのプログラム及び３Ｄエンジン部１７を制御するためのプログラムの開始アドレスをホストインタフェース部１５内の複数の割り込みベクタ格納レジスタに書き込む。そして、ホストＣＰＵ５は、ＣＰＵ１１に実行させるプログラムに応じた割り込み信号をＣＰＵ１１に適宜出力する。
ＪＰＥＧエンジン部１４を制御するプログラム及び３Ｄエンジン部１７を制御するプログラムには、使用するハードウェアリソースを表すリソース情報が含まれているので、ＣＰＵ１１は、ＪＰＥＧエンジン部１４を制御するプログラム及び３Ｄエンジン部１７を制御するプログラムを並列に実行することができる。
【００４３】
【発明の効果】
以上述べたように、本発明によれば、書き換え可能な不揮発性メモリを必要とすることなく、ホストＣＰＵが、所望のプログラムをＲＡＭに書き込み、ＣＰＵに実行させることにより、ホストＣＰＵが制御することができる。
【図面の簡単な説明】
【図１】本発明の第１の実施形態としてのアプリケーションプロセッサを用いたＰＤＡの構成を示す図である。
【図２】本発明の第２の実施形態としてのアプリケーションプロセッサを用いたＰＤＡの構成を示す図である。
【図３】本発明の第３の実施形態としてのアプリケーションプロセッサを用いたＰＤＡの構成を示す図である。
【符号の説明】
１、３１、４１　ＰＤＡ
２　入力部
３　ＲＡＭ
４、１２　ＲＯＭ
５　ホストＣＰＵ
６、１６　バス
１０、４０、５０　アプリケーションプロセッサ
１１　ＣＰＵ
１３　ＳＤＲＡＭ
１４　ＪＰＥＧエンジン部
１５　ホストインタフェース部
１７　３Ｄエンジン部
２１　ＬＣＤドライバ
２２　ＬＣＤパネル
【図１】
2004110086.tif 000003
【図２】
2004110086.tif 000004
【図３】
2004110086.tif 000005