(57)【要約】【課題】符号データ用バスを使用してイニシャルプログラムの書き込みを可能にすることで、ＩＰＬ用バスに対応する外部端子を省略する。【解決手段】プログラムを格納可能なメモリ（１０２）と、上記メモリに格納されているプログラムを実行可能なＣＰＵ（１０１）と、データストリームを伝達可能な符号データ用バスに結合される第１外部端子（ＥＸ＿Ｄ、ＥＸ＿ＣＳ、ＥＸ＿ＷＥ、ＥＸ＿ＯＥ）とを含んで半導体装置（２１０）を形成する。上記半導体装置（２１０）には、上記第１外部端子を介して上記メモリにイニシャルプログラムを書き込むための動作を制御可能な制御回路（１０３）を設ける。この制御回路は、上記イニシャルプログラムを上記メモリに書き込むための書き込み用アドレス信号を生成する回路を含む。これにより、符号データ用バスを使用したイニシャルプログラムの書き込みが可能になるので、ＩＰＬ用バスが不要とされる。【選択図】図１
2011081700.tif 000002
【特許請求の範囲】
【請求項１】
プログラムを格納可能なメモリと、
上記メモリに格納されているプログラムを実行可能なＣＰＵと、
データストリームを伝達可能な符号データ用バスに結合される第１外部端子と、を含み、
上記符号データ用バスを介して上記第１外部端子から取り込まれたデータストリームを処理可能な半導体装置であって、
上記第１外部端子を介して上記メモリにイニシャルプログラムを書き込むための動作を制御可能な制御回路を含み、
上記制御回路は、上記イニシャルプログラムを上記メモリに書き込むための書き込み用アドレス信号を生成する回路を含むことを特徴とする半導体装置。
【請求項２】
上記メモリをＳＲＡＭとした請求項１記載の半導体装置。
【請求項３】
上記制御回路は、内蔵ＳＲＡＭアクセスモードと内蔵ＳＲＡＭブートモードとを有し、上記内蔵ＳＲＡＭアクセスモードにおいて上記ＳＲＡＭへの書き込み用アドレスを生成することによって上記イニシャルプログラムを上記ＳＲＡＭに書き込み、上記内蔵ＳＲＡＭブートモードにおいて上記ＳＲＡＭ内のイニシャルプログラムを上記ＣＰＵに実行させる請求項２記載の半導体装置。
【請求項４】
上記半導体装置は、リセット状態を指定可能な第２外部端子と、
動作モード設定用の第３外部端子と、を更に含み、
上記第２外部端子を介して指定されたリセット状態が解除されたときの上記第３外部端子の論理状態に応じて上記内蔵ＳＲＡＭアクセスモード、又は上記内蔵ＳＲＡＭブートモードが指定される請求項３記載の半導体装置。
【請求項５】
上記制御回路は、上記マスタプロセッサから上記ＳＲＡＭへのダイレクトアクセスを制御するためのダイレクトアクセスモジュールと、
上記ダイレクトアクセスモジュールを上記ＳＲＡＭに選択的に結合させるための切り替え回路と、を含み、
上記ダイレクトアクセスモジュールは、上記内蔵ＳＲＡＭアクセスモードにおいて上記切り替え回路によって上記ＳＲＡＭに選択的に結合された状態で上記ＳＲＡＭへの書き込み用アドレスを生成する請求項４記載の半導体装置。
【請求項６】
上記ダイレクトアクセスモジュールは、上記ＳＲＡＭへの書き込み用アドレス及び上記ＳＲＡＭからの読み出し用アドレスをシーケンシャルに生成するアドレス生成回路を含む請求項５記載の半導体装置。
【請求項７】
上記アドレス生成回路は、上記ＳＲＡＭへの書き込み用アドレス及び上記ＳＲＡＭからの読み出し用アドレスを、上記ＳＲＡＭの先頭番地を初期値とするインクリメント動作によってシーケンシャルに生成する請求項６記載の半導体装置。
【請求項８】
マスタプロセッサと、
上記マスタプロセッサに従属するスレーブプロセッサと、
上記マスタプロセッサと上記スレーブプロセッサとの間でデータストリームのやり取りを可能とする符号データ用バスと、を含むマルチプロセッサシステムであって、
上記スレーブプロセッサは、プログラムを格納可能なメモリと、
上記メモリに格納されているプログラムを実行可能なＣＰＵと、
上記符号データ用バスに結合された第１外部端子と、
上記マスタプロセッサから上記符号データ用バス及び上記第１外部端子を介して上記メモリにイニシャルプログラムを書き込むための動作を制御可能な制御回路と、を含み、
上記制御回路は、上記イニシャルプログラムを上記メモリに書き込むための書き込み用アドレス信号を生成する回路を含むことを特徴とするマルチプロセッサシステム。
【請求項９】
上記メモリをＳＲＡＭとした請求項８記載のマルチプロセッサシステム。
【請求項１０】
上記制御回路は、内蔵ＳＲＡＭアクセスモードと内蔵ＳＲＡＭブートモードとを含み、上記内蔵ＳＲＡＭアクセスモードにおいて上記ＳＲＡＭへの書き込み用アドレスを生成することによって上記イニシャルプログラムを上記ＳＲＡＭに書き込み、上記内蔵ＳＲＡＭブートモードにおいて上記ＳＲＡＭ内のイニシャルプログラムを上記ＣＰＵに実行させる請求項９記載のマルチプロセッサシステム。
【請求項１１】
上記スレーブプロセッサは、リセット状態を指定可能な第２外部端子と、
動作モード設定用の第３外部端子と、を更に含み、
上記第２外部端子を介して指定されたリセット状態が解除されたときの上記第３外部端子の論理状態に応じて上記内蔵ＳＲＡＭアクセスモード、又は上記内蔵ＳＲＡＭブートモードが指定される請求項１０記載のマルチプロセッサシステム。
【請求項１２】
上記制御回路は、上記マスタプロセッサから上記ＳＲＡＭへのダイレクトアクセスを制御するためのダイレクトアクセスモジュールと、
上記ダイレクトアクセスモジュールを上記ＳＲＡＭに選択的に結合させるための切り替え回路と、を含み、
上記ダイレクトアクセスモジュールは、上記内蔵ＳＲＡＭアクセスモードにおいて上記切り替え回路によって上記ＳＲＡＭに選択的に結合された状態で上記ＳＲＡＭの書き込み用アドレスを生成する請求項１１記載のマルチプロセッサシステム。
【請求項１３】
上記ダイレクトアクセスモジュールは、上記ＳＲＡＭへの書き込み用アドレス及び上記ＳＲＡＭからの読み出し用アドレスをシーケンシャルに生成するアドレス生成回路を含む請求項１２記載のマルチプロセッサシステム。
【請求項１４】
上記アドレス生成回路は、上記ＳＲＡＭへの書き込み用アドレス及び上記ＳＲＡＭからの読み出し用アドレスを、上記ＳＲＡＭの先頭番地を初期値とするインクリメント動作によってシーケンシャルに生成する請求項１３記載のマルチプロセッサシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、半導体装置や、複数のプロセッサを有するマルチプロセッサシステムに関するもので、特に、上記半導体装置や上記マルチプロセッサシステムに含まれるメモリのダイレクトアクセス技術に関するものである。
【背景技術】
【０００２】
デジタルスチルカメラ（Digital Still Camera）には、カメラシステムを構成する上で必要となる静止画又は動画撮影、画像処理、各種メディア制御、表示制御機能等を備えたプロセッサが搭載される。また、上記プロセッサをマスタプロセッサとして、このマスタプロセッサの制御下でそれぞれ独自の機能を実現するための各種スレーブプロセッサが搭載される場合がある。例えばデジタルオーディオの録音再生を行うためのオーディオコーデック、撮影したイメージを液晶ディスプレイ（LCD）に表示させるためのＬＣＤコントローラ、デジタルビデオのエンコードやデコード機能を備えた動画コーデック等は、上記スレーブプロセッサの一例とされる。上記スレーブプロセッサは、半導体装置の一例とされるＳｏＣ（System-on-a-chip）として提供される。
【０００３】
例えば上記動画コーデックは、動画のエンコード／デコードを行うエンジンや、動画コーデックの動作制御を司るＣＰＵ（Central Processing Unit）、及び上記ＣＰＵによってランダムアクセス可能なＳＲＡＭ（Static Random Access Memory）等を含んで成る。そのような動画コーデックは、符号データ用バスやＩＰＬ用バスを介して上記マスタプロセッサに結合される。上記符号データ用バスは、上記動画コーデックと上記マスタプロセッサとの間でデータストリーム（シリアルに出力されるデジタルデータ）のやり取りを行うために用いられる。上記ＩＰＬ用バスは、上記マスタプロセッサから上記動画コーデック内のＳＲＡＭにイニシャルプログラム（ＩＰＬ：Initial Program Loader）を書き込むのに用いられる。ＩＰＬは、システムの電源が投入された後に一番最初に起動するプログラムであり、動画コーデックでは内蔵ＳＲＡＭに納められる。上記動画コーデックにおいては、上記ＩＰＬ用バスを介して上記マスタプロセッサから上記動画コーデック内のＳＲＡＭにイニシャルプログラムを変更することができるようになっている。
【０００４】
本願発明に関連する技術が記載された文献として、特許文献１，２を挙げることができる。
【０００５】
特許文献１には、プロセッサシステムにおいて、イニシャルプログラムを簡単に変更できるようにした技術が記載されている。
【０００６】
特許文献２には、簡単な構成で部品点数を低減できるマルチプロセッサシステム及びスレーブシステムの起動方法が記載されている。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２００１−２１６１６４号公報
【特許文献２】特開２００７−２１３２９２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
従来の動画コーデックに内蔵されるＳＲＡＭにおいては、符号データ用バスに対応する外部端子と、ＩＰＬ用バスに対応する外部端子が必要とされる。符号データ用バスに対応する外部端子には、データ、チップセレクト信号、ライトイネーブル信号、出力イネーブル信号などの各信号に対応する端子が含まれる。また、ＩＰＬ用バスに対応する外部端子には、アドレス信号、データ、チップセレクト信号、ライトイネーブル信号、出力イネーブル信号の各信号に対応する端子が含まれる。このように従来の動画コーデックにおいては多数の外部端子が必要とされる。
【０００９】
本願発明者は、動画コーデックにおける外部端子を低減することについて検討した。そして符号データ用バスを使用して、イニシャルプログラムの書き込みと、データの転送とを行うようにすれば、ＩＰＬ用バスが不要となるため、当該バスに対応する外部端子の省略が可能になることを見出した。
【００１０】
しかしながら、符号データ用バスは、上記マスタプロセッサから上記動画コーデックに対してシリアルに出力されるデジタルデータ専用とされており、元々アドレス信号が不要とされることから、アドレス信号の伝達については考慮されていない。このため、符号データ用バスを使用して、上記動画コーデック内のＳＲＡＭにイニシャルプログラムと、当該プログラムの書き込み用アドレス信号との双方を伝達することができない。
【００１１】
尚、特許文献１，２には、符号データ用バスを使用してイニシャルプログラムの書き込みを可能にすることで、ＩＰＬ用バスに対応する外部端子を省略することについて記載も示唆もされていない。
【００１２】
本発明の目的は、符号データ用バスを使用してイニシャルプログラムの書き込みを可能にすることで、ＩＰＬ用バスに対応する外部端子を省略するための技術を提供することにある。
【００１３】
本発明の前記並びにその他の目的と新規な特徴は本明細書の記述及び添付図面から明らかになるであろう。
【課題を解決するための手段】
【００１４】
本願において開示される発明のうち代表的なものの概要を簡単に説明すれば下記の通りである。
【００１５】
すなわち、プログラムを格納可能なメモリと、上記メモリに格納されているプログラムを実行可能なＣＰＵと、データストリームを伝達可能な符号データ用バスに結合される第１外部端子とを含んで半導体装置が形成される。このとき、半導体装置には、上記第１外部端子を介して上記メモリにイニシャルプログラムを書き込むための動作を制御可能な制御回路を設ける。この制御回路は、上記イニシャルプログラムを上記メモリに書き込むための書き込み用アドレス信号を生成する回路を含む。
【００１６】
上記の構成によれば、制御回路は、上記第１外部端子を介して上記メモリにイニシャルプログラムを書き込むための動作を制御し、しかも上記イニシャルプログラムを上記メモリに書き込むための書き込み用アドレス信号を生成する。これにより、符号データ用バスを使用したイニシャルプログラムの書き込みが可能になる。このことが、ＩＰＬ用バスを不要とし、ＩＰＬ用バスに対応する外部端子の省略を達成する。
【発明の効果】
【００１７】
本願において開示される発明のうち代表的なものによって得られる効果を簡単に説明すれば下記のとおりである。
【００１８】
すなわち、符号データ用バスを使用してイニシャルプログラムの書き込みを可能にすることで、ＩＰＬ用バスに対応する外部端子を省略することができる。
【図面の簡単な説明】
【００１９】
【図１】本発明にかかる半導体装置の一例とされる動画コーデックの構成例ブロック図である。
【図２】本発明にかかるマルチプロセッサシステムの一例とされるデジタルスチルカメラ（ＤＳＣ）の全体的な構成例ブロック図である。
【図３】上記動画コーデックに含まれるダイレクトアクセスコントロール回路の構成例ブロック図である。
【図４】上記動画コーデックにおける動作モードの説明図である。
【図５】上記動画コーデックにおける外部端子仕様の説明図である。
【図６】上記動画コーデックにおける動作モード遷移のタイミング図である。
【発明を実施するための形態】
【００２０】
１．実施の形態の概要
先ず、本願において開示される発明の代表的な実施の形態について概要を説明する。代表的な実施の形態についての概要説明で括弧を付して参照する図面中の参照符号はそれが付された構成要素の概念に含まれるものを例示するに過ぎない。
【００２１】
〔１〕本発明の代表的な実施の形態に係る半導体装置（２１０）は、プログラムを格納可能なメモリ（１０２）と、上記メモリに格納されているプログラムを実行可能なＣＰＵ（１０１）と、データストリームを伝達可能な符号データ用バスに結合される第１外部端子（ＥＸ＿Ｄ、ＥＸ＿ＣＳ、ＥＸ＿ＷＥ、ＥＸ＿ＯＥ）とを含み、上記データストリームの処理を行う。この半導体装置（２１０）は、上記第１外部端子を介して上記メモリにイニシャルプログラムを書き込むための動作を制御可能な制御回路（１０３）を含む。この制御回路は、上記イニシャルプログラムを上記メモリに書き込むための書き込み用アドレス信号を生成する回路を含む。
【００２２】
〔２〕上記〔１〕において、上記メモリをＳＲＡＭとすることができる。
【００２３】
〔３〕上記〔２〕において、上記制御回路（１０３）は、内蔵ＳＲＡＭアクセスモードと内蔵ＳＲＡＭブートモードとを有する。そして上記制御回路（１０３）は、上記内蔵ＳＲＡＭアクセスモードにおいて上記ＳＲＡＭ（１０２）への書き込み用アドレスを生成することによって上記イニシャルプログラムを上記ＳＲＡＭに書き込み、上記内蔵ＳＲＡＭブートモードにおいて上記ＳＲＡＭ内のイニシャルプログラムを上記ＣＰＵ（１０１）に実行させる。
【００２４】
〔４〕上記〔３〕において、上記半導体装置（２１０）には、リセット状態を指定可能な第２外部端子（ＲＥＳＥＴ）と、動作モード設定用の第３外部端子（ＭＯＤＥ０，１）とを設けることができる。このとき、上記第２外部端子を介して指定されたリセット状態が解除されたときの上記第３外部端子の論理状態に応じて上記内蔵ＳＲＡＭアクセスモード、又は上記内蔵ＳＲＡＭブートモードが指定される。
【００２５】
〔５〕上記〔４〕において、上記制御回路（１０３）は、上記マスタプロセッサから上記ＳＲＡＭへのダイレクトアクセスを制御するためのダイレクトアクセスモジュール（３０１）と、上記ダイレクトアクセスモジュールを上記ＳＲＡＭに選択的に結合させるための切り替え回路（３０２）とを含んで構成することができる。このとき、上記ダイレクトアクセスモジュールは、上記内蔵ＳＲＡＭアクセスモードにおいて上記切り替え回路によって上記ＳＲＡＭ（１０２）に選択的に結合された状態で上記ＳＲＡＭへの書き込み用アドレスを生成する。
【００２６】
〔６〕上記〔５〕において、上記ダイレクトアクセスモジュール（３０１）は、上記ＳＲＡＭ（１０２）への書き込み用アドレス及び上記ＳＲＡＭからの読み出し用アドレスをシーケンシャルに生成するアドレス生成回路（３０１Ａ）を含んで構成することができる。
【００２７】
〔７〕上記〔６〕において、上記アドレス生成回路（３０１Ａ）は、上記ＳＲＡＭ（１０２）への書き込み用アドレス及び上記ＳＲＡＭからの読み出し用アドレスを、上記ＳＲＡＭの先頭番地を初期値とするインクリメント動作によってシーケンシャルに生成するように構成することができる。
【００２８】
〔８〕本発明の代表的な実施の形態に係るマルチプロセッサシステム（２００）は、マスタプロセッサ（２０３）と、上記マスタプロセッサに従属するスレーブプロセッサ（２１０）と、上記マスタプロセッサと上記スレーブプロセッサとの間でデータストリームのやり取りを可能とする符号データ用バスとを含む。上記スレーブプロセッサは、プログラムを格納可能なメモリ（１０２）と、上記メモリに格納されているプログラムを実行可能なＣＰＵ（１０１）と、上記符号データ用バスに結合された第１外部端子（ＥＸ＿Ｄ、ＥＸ＿ＣＳ、ＥＸ＿ＷＥ、ＥＸ＿ＯＥ）と、上記マスタプロセッサから上記符号データ用バス及び上記第１外部端子を介して上記メモリにイニシャルプログラムを書き込むための動作を制御可能な制御回路（１０３）とを含む。そして上記制御回路は、上記イニシャルプログラムを上記メモリに書き込むための書き込み用アドレス信号を生成する回路を含む。
【００２９】
〔９〕上記〔８〕において、上記メモリをＳＲＡＭとすることができる。
【００３０】
〔１０〕上記〔９〕において、上記制御回路（１０３）は、内蔵ＳＲＡＭアクセスモードと内蔵ＳＲＡＭブートモードとを含む。このとき上記制御回路（１０３）は、上記内蔵ＳＲＡＭアクセスモードにおいて上記ＳＲＡＭ（１０２）への書き込み用アドレスを生成することによって上記イニシャルプログラムを上記ＳＲＡＭに書き込み、上記内蔵ＳＲＡＭブートモードにおいて上記ＳＲＡＭ内のイニシャルプログラムを上記ＣＰＵ（１０１）に実行させる。
【００３１】
〔１１〕上記〔１０〕において、上記スレーブプロセッサ（２１０）には、リセット状態を指定可能な第２外部端子（ＲＥＳＥＴ）と、動作モード設定用の第３外部端子（ＭＯＤＥ０，１）とを設けることができる。このとき上記第２外部端子を介して指定されたリセット状態が解除されたときの上記第３外部端子の論理状態に応じて上記内蔵ＳＲＡＭアクセスモード、又は上記内蔵ＳＲＡＭブートモードが指定される。
【００３２】
〔１２〕上記〔１１〕において、上記制御回路（１０３）は、上記マスタプロセッサから上記ＳＲＡＭへのダイレクトアクセスを制御するためのダイレクトアクセスモジュール（３０１）と、上記ダイレクトアクセスモジュールを上記ＳＲＡＭに選択的に結合させるための切り替え回路（３０２）とを含んで構成することができる。このとき、上記ダイレクトアクセスモジュールは、上記内蔵ＳＲＡＭアクセスモードにおいて上記切り替え回路によって上記ＳＲＡＭ（１０２）に選択的に結合された状態で上記ＳＲＡＭの書き込みアドレスを生成する。
【００３３】
〔１３〕上記〔１２〕において、上記ダイレクトアクセスモジュール（３０１）は、上記内蔵ＳＲＡＭアクセスモードにおいて上記ＳＲＡＭ（１０２）への書き込み用アドレス及び上記ＳＲＡＭからの読み出し用アドレスをシーケンシャルに生成するアドレス生成回路（３０１Ａ）を含んで構成することができる。
【００３４】
〔１４〕上記〔１３〕において、上記アドレス生成回路（３０１Ａ）は、上記ＳＲＡＭ（１０２）への書き込み用アドレス及び上記ＳＲＡＭからの読み出し用アドレスを、上記ＳＲＡＭの先頭番地を初期値とするインクリメント動作によってシーケンシャルに生成するように構成することができる。
【００３５】
２．実施の形態の詳細
実施の形態について更に詳述する。
【００３６】
図２には、本発明にかかるマルチプロセッサシステムの一例とされるデジタルスチルカメラ（ＤＳＣ）の全体的な構成例が示される。
【００３７】
このデジタルスチルカメラ２００は、レンズ２０１を介して入射した光をピクセル値に直接変換するためのイメージセンサ２０２が設けられ、撮影した静止画や動画をデジタルデータとして記録することができる。イメージセンサ２０２には、ＣＣＤ（Charge Coupled Device）タイプやＣＭＯＳ（Complementary Metal Oxide Semiconductor）タイプを適用することができる。このイメージセンサ２０２の出力はメインプロセッサ２０３に伝達される。このデジタルスチルカメラ２００は、シャッターボタンを半押しする操作によって、自動的にピントが調整されるオートフォーカスシャッター２１５を有し、このオートフォーカスシャッター２１５のモーターは、モータードライバ２１６によって駆動される。モータードライバ２１６の動作はメインプロセッサ２０３によって制御される。メインプロセッサ２０３には、フラッシュメモリ（Flash）２１４や、ＳＤＲＡＭ（Synchronous Random Access Memory）２１３が設けられる。フラッシュメモリ２１４には、メインプロセッサ２０３で実行されるプログラムが格納される。ＳＤＲＡＭ２１３には、上記メインプロセッサ２０３で行われる演算処理の作業領域が形成される。また、上記メインプロセッサ２０３には、集音マイク２０５やスピーカ２０６を介してデジタルオーディオの録音再生を行うためのオーディオコーデック２０４や、撮影したイメージを液晶ディスプレイ（LCD）２０９に表示させるためのＬＣＤコントローラ２０８や、デジタルビデオのエンコードやデコード機能を備えた動画コーデック２１０等が結合されている。上記メインプロセッサ２０３をマスタプロセッサとするとき、オーディオコーデック２０４、ＬＣＤコントローラ２０８、動画コーデック２１０はスレーブプロセッサとされ、ＳｏＣ（System-on-a-chip）として形成される。さらに、上記メインプロセッサ２０７は、外部接続されたテレビジョン装置２０７にデジタルビデオ信号を送出することができる。そして、上記メインプロセッサ２０７は、各種メモリカード２１１や、ＵＳＢ（Universal Serial Bus）規格に準拠した各種デバイス２１２に結合可能とされる。
【００３８】
図１には、上記動画コーデック２１０の構成例が示される。
【００３９】
上記動画コーデック２１０は、特に制限されないが、ＣＰＵ１０１、ＳＲＡＭ（Static Random Access Memory）１０２、ダイレクトアクセスコントロール回路（ＤＡＣＣ）１０３、ＲＯＭ１０４、コーデックエンジン（Codec Eng）１０５、符号入出力回路１０６、及び画像入出力回路１０７を含み、公知の半導体集積回路製造技術により、単結晶シリコン基板などの一つの半導体基板に形成される。ＣＰＵ１０１、コーデックエンジン１０５、符号入出力回路１０６、及び画像入出力回路１０７は、内部バス１０９に結合される。ＳＲＡＭ１０２、及びＲＯＭ１０４はダイレクトアクセスコントロール回路１０３に結合される。
【００４０】
上記ＳＲＡＭ１０２や上記ＲＯＭ１０４には、上記ＣＰＵ１０１で実行されるプログラムが格納される。上記ＣＰＵ１０１は、ＳＲＡＭ１０２又はＲＯＭ１０４に格納されているプログラムを実行することにより、動画コーデック２１０の全体的な動作制御を行うためのプログラムを、モバイルＲＡＭ（DDR Mobile RAM）１０８に転送する。ダイレクトアクセスコントロール回路１０３は、アクセス元の切り替えや、ブートアドレスの制御を行う。アクセス元の切り替えでは、ＣＰＵ１０１からＳＲＡＭ１０２へのアクセスと、メインプロセッサ２０３からＳＲＡＭ１０２へのアクセスとを切り替えることができる。ブートアドレスの制御では、ブート領域を切り替えることができる。このブート領域の切り替えにより、ＳＲＡＭ１０２からの起動と、ＲＯＭ１０４からの起動との切り替えを行うことができる。コーデックエンジン１０５は、例えばITU-T（国際電気通信連合電気通信標準化部門）によって勧告された動画圧縮規格H.264に対応するエンジンとされ、動画のエンコード又はデコードを行う。上記符号入出力回路１０６は、メインプロセッサ２０３との間で符号データの入出力を可能にする。上記画像入出力回路１０７は、メインプロセッサ２０３との間で画像データの入出力を可能にする。動画コーデック２１０には、低消費電力型のモバイルＲＡＭ（DDR Mobile RAM）１０８が結合され、このモバイルＲＡＭ１０８には、メインプロセッサ２０３から動画コーデック２１０を介してシステムプログラムが転送される。
【００４１】
図３には、上記ダイレクトアクセスコントロール回路１０３の構成例が示される。
【００４２】
上記ダイレクトアクセスコントロール回路１０３は、ＳＲＡＭダイレクトアクセスモジュール３０１、アクセス元切り替え回路３０２、及びブートアドレス制御回路３０３を含む。
【００４３】
ＳＲＡＭダイレクトアクセスモジュール３０１は、ＳＲＡＭ１０２のアドレス信号を生成するアドレス生成回路３０１Ａと、メインプロセッサ２０３からＳＲＡＭ１０２へのアクセスをＣＰＵ１０１の介在なしに行うためのアクセス制御回路３０１Ｂとを有する。アドレス生成回路３０１Ａは、ＳＲＡＭ１０２への書き込み用アドレス信号を生成する。この書き込み用アドレス信号は、上記ＳＲＡＭ１０２の先頭番地からシーケンシャルに生成される。アドレス生成回路３０１Ａにより生成されたアドレス信号、及びアクセス制御回路３０１Ｂからの制御信号は、アクセス元切り替え回路３０２を介してＳＲＡＭ１０２に伝達される。
【００４４】
上記ブートアドレス制御回路３０３は、上記メインプロセッサ２０３から伝達された動作モード制御によってＳＲＡＭ１０２又はＲＯＭ１０４からの起動（ブート）が指定された場合に、ＣＰＵ１０１から出力されるアドレス信号（Higher order address）に基づいてアクセス（ブート）領域の選択を行う。特に制限されないが、上記ブートアドレス制御回路３０３は、経路選択回路３０３Ａと、この経路選択回路３０３Ａの選択動作を制御するための信号を形成する選択制御回路３０３Ｂとを含む。選択制御回路３０３Ｂは、上記メインプロセッサ２０３から伝達された動作モード制御によってＳＲＡＭ１０２又はＲＯＭ１０４からの起動が指定された場合に活性化され、ＣＰＵ１０１から出力されるアドレス信号（Higher order address）に基づいてアクセス領域の選択を行う。例えば上記アクセス元切り替え回路３０２側の経路が経路選択回路３０３Ａを介してＣＰＵ１０１に結合された場合、ＣＰＵ１０１はＳＲＡＭ１０２をアクセスすることができる。また、ＲＯＭ１０４側の経路が経路選択回路３０３Ａを介してＣＰＵ１０１に結合された場合、ＣＰＵ１０１はＲＯＭ１０４をアクセスすることができる。
【００４５】
上記構成の動画コーデック２１０は、複数の動作モードとして、例えば図４に示されるように、ＣＳ空間ブートモード、内蔵ＲＯＭブートモード、内蔵ＳＲＡＭブートモード、内蔵ＳＲＡＭアクセスモードを有する。各動作モードはメインプロセッサ２０３によって指定される。上記ＣＳ空間ブートモードでは、動画コーデック２１０の外部に配置されたＲＯＭなどに格納されているイニシャルプログラムから起動される。内蔵ＲＯＭブートモードでは、ＲＯＭ１０４に格納されているイニシャルプログラムから起動される。内蔵ＳＲＡＭブートモードでは、ＳＲＡＭ１０２に格納されているイニシャルプログラムから起動される。内蔵ＳＲＡＭアクセスモードでは、ＳＲＡＭ１０２へのイニシャルプログラムの書き込みを行うことができる。
【００４６】
次に、図３に示される動画コーデック２１０における外部端子仕様を図５に基づいて説明する。
【００４７】
動作モード設定に用いられる外部端子として、ＴＥＳＴ、ＭＯＤＥ０，１、ＲＥＳＥＴを挙げることができる。ＴＥＳＴ、ＭＯＤＥ０，１は入力専用の動作モード設定端子とされる。ＲＥＳＥＴはＳｏＣ全体を初期化するためのリセット端子であり、このリセット端子も入力専用端子とされる。
【００４８】
メインプロセッサ２０３と動作コーデック２１０との間でデータストリームのやり取りを可能とする符号データ用バスに結合される外部端子として、ＥＸ＿Ｄ、ＥＸ＿ＣＳ、ＥＸ＿ＷＥ、ＥＸ＿ＯＥを挙げることができる。ＥＸ＿Ｄはデータ入出力に用いられる。ＥＸ＿ＣＳは入力専用端子であり、チップセレクト信号の取り込みに用いられる。ＥＸ＿ＷＥは入力専用端子であり、ライトイネーブル信号の取り込みに用いられる。ＥＸ＿ＯＥは入力専用端子であり、アウトプットイネーブル信号の取り込みに用いられる。
【００４９】
尚、図３に示される動画コーデック２１０においては、後述するようにＩＰＬバスに接続される外部端子が不要とされる。
【００５０】
次に、動画コーデック２１０における動作モードの遷移について説明する。
【００５１】
動画コーデック２１０における動作モードは、当該動画コーデック２１０における複数の外部端子（ＴＥＳＴ、ＭＯＤＥ０，１、ＲＥＳＥＴ）の論理の組み合わせによって指定される。この指定はメインプロセッサ２０３によって行われる。
【００５２】
例えば図６に示されるように、ＲＥＳＥＴがロー（Ｌ）レベルにアサートされた状態で動画コーデック２１０が初期化される（リセット状態）。そしてＲＥＳＥＴがハイ（Ｈ）レベルにネゲートされた状態で、ＴＥＳＴ、ＭＯＤＥ０がローレベル、ＭＯＤＥ１がハイレベルにされている場合には、内蔵ＳＲＡＭアクセスモードが指定され、これにより動画コーデック２１０は、リセット状態から内蔵ＳＲＡＭアクセスモードに遷移される。この内蔵ＳＲＡＭアクセスモードにおいては、アクセス元切り替え回路３０２によってＳＲＡＭダイレクトアクセスモジュール３０１とＳＲＡＭ１０２とが導通される。このとき、ＥＸ＿ＣＳ（チップセレクト）はローレベルにアサートされ、ＥＸ＿ＷＥ（ライトイネーブル）はローレベルにアサートされ、ＥＸ＿ＯＥ（出力イネーブル）はハイレベルにネゲートされる。イニシャルプログラムはＥＸ＿Ｄを介して伝達される。この内蔵ＳＲＡＭアクセスモードにおいてＳＲＡＭ１０２への書き込みアドレス信号は、アドレス生成回路３０１Ａにより、例えばＳＲＡＭ１０２の先頭アドレスを初期値として所定のアドレス単位で順次インクリメントされることでシーケンシャルに生成される。これにより、ＥＸ＿Ｄを介して入力されたイニシャルプログラムは、ＳＲＡＭ１０２の先頭アドレスから順に書き込まれる。このようにして、メインプロセッサ２０３から符号用データバスに対応する外部端子（ＥＸ＿Ｄ、ＥＸ＿ＣＳ、ＥＸ＿ＷＥ、ＥＸ＿ＯＥ）を介して、ＳＲＡＭ１０２へのイニシャルプログラムの転送が行われる。
【００５３】
次にＲＥＳＥＴがロー（Ｌ）レベルにアサートされた状態で動画コーデック２１０が再び初期化される（リセット状態。この場合、ＳＲＡＭ１０２に書き込まれたプログラムは保持される。）そして、ＲＥＳＥＴがハイ（Ｈ）レベルにネゲートされた状態で、ＴＥＳＴがローレベル、ＭＯＤＥ０，ＭＯＤＥ１がハイレベルにされている場合には、内蔵ＲＡＭブートモードが指定され、これにより動画コーデック２１０は、リセット状態から内蔵ＲＡＭブートモードに遷移される。この内蔵ＲＡＭブートモードにおいては、アクセス元切り替え回路３０２によってブートアドレス制御回路３０３とＳＲＡＭ１０２とが導通される。このとき、ＣＰＵ１０１から出力されるアドレス信号（Higher order address）に基づいてアクセス元切り替え回路３０２側の経路が選択されることによって、ＳＲＡＭ１０２がアクセス（ブート）領域として選択される。この状態でＣＰＵ１０１は、ＳＲＡＭ１０２の先頭番地から順にイニシャルプログラムを読み込んで実行する。このイニシャルプログラムの実行により、ＣＰＵ１０１は、メインプロセッサ２０３からシステムプログラムを受け取り、それをモバイルＲＡＭ（DDR Mobile RAM）１０８に転送する。そして、ＣＰＵ１０１は、上記モバイルＲＡＭ１０８内のシステムプログラムを実行することにより、符号データバスを介して、メインプロセッサ２０３と動画コーデック２１０との間でデータストリームのやり取りを行う。
【００５４】
尚、アドレス生成回路３０１でＳＲＡＭ１０２の読み出し用アドレスを生成することで、ＳＲＡＭ１０２の記憶情報を符号データ用バス経由でメインプロセッサ２０３に伝達することができる。このとき、外部端子は、ＥＸ＿ＷＥに代えてＥＸ＿ＯＥがアサートされる。
【００５５】
ここで従来の技術に従えば、上記マスタプロセッサから上記動画コーデック内のＳＲＡＭに、イニシャルプログラムを書き込むための専用バスとしてＩＰＬ用バスが設けられ、このＩＰＬ用バスを介してイニシャルプログラムの伝達が行われることから、従来の動画コーデックには上記ＩＰＬ用バスに対応する外部端子として、図５に示されるような各種外部端子Ａ、Ｄ、ＣＳ、ＷＥ、ＯＥを設ける必要があった。
【００５６】
これに対して図３に示される構成によれば、内蔵ＳＲＡＭアクセスモードが設定されることにより、アクセス元切り替え回路３０２によってＳＲＡＭダイレクトアクセスモジュール３０１とＳＲＡＭ１０２とが導通され、メインプロセッサ２０３から符号用データバスに対応する外部端子（ＥＸ＿Ｄ、ＥＸ＿ＣＳ、ＥＸ＿ＷＥ、ＥＸ＿ＯＥ）を介して、ＳＲＡＭ１０２へのイニシャルプログラムの転送が行われる。つまり、メインプロセッサ２０３と動画コーデック２１０との間でデータストリームのやり取りを行うための符号データ用バスを、動作モードの切り替えによりイニシャルプログラムの伝達に使用することにより、ＩＰＬ用バスが不要となるため、当該ＩＰＬ用バスに結合するための各種外部端子Ａ、Ｄ、ＣＳ、ＷＥ、ＯＥを設ける必要が無くなる。それにより、動画コーデック２１０の外部端子数を低減することができる。
【００５７】
この実施の形態によれば以下の作用効果が得られる。
【００５８】
（１）図６に示されるように、ＲＥＳＥＴがハイ（Ｈ）レベルにネゲートされた状態で、ＴＥＳＴ、ＭＯＤＥ０がローレベル、ＭＯＤＥ１がハイレベルにされている場合には、内蔵ＳＲＡＭアクセスモードが指定され、これにより動画コーデック２１０は、リセット状態から内蔵ＳＲＡＭアクセスモードに遷移される。この内蔵ＳＲＡＭアクセスモードにおいては、ＣＰＵ１０１の介在無しに、アクセス元切り替え回路３０２によってＳＲＡＭダイレクトアクセスモジュール３０１とＳＲＡＭ１０２とが導通され、ＳＲＡＭダイレクトアクセスモジュール３０１によってＳＲＡＭ１０２の書き込み用アドレス信号の生成やＳＲＡＭ１０２へのアクセス制御が行われる。このようなイニシャルプログラムの書き込みは、従来例のようにＩＰＬ用バスを用いてＣＰＵを介在させて行うのに比べると、短時間で完了することができるので、イニシャルプログラムの書き込みから起動までの時間短縮を図ることができる。
【００５９】
（２）メインプロセッサ２０３と動画コーデック２１０との間でデータストリームのやり取りを行うための符号データ用バスを、動作モードの切り替えによりイニシャルプログラムの伝達に使用することにより、ＩＰＬ用バスが不要となるため、当該ＩＰＬ用バスに結合するための各種外部端子Ａ、Ｄ、ＣＳ、ＷＥ、ＯＥを省略することができる。これにより、従来例に比べて動画コーデック２１０の外部端子数を低減することができる。
【００６０】
（３）上記ダイレクトアクセスコントロール回路１０３は、上記マスタプロセッサから上記ＳＲＡＭへのダイレクトアクセスを制御するためのダイレクトアクセスモジュール３０１と、上記ダイレクトアクセスモジュールを上記ＳＲＡＭに選択的に結合させるための切り替え回路３０２とを設けることで、容易に形成することができる。
【００６１】
（４）上記アドレス生成回路３０１Ａは、上記ＳＲＡＭ１０２への書き込み用アドレスを上記ＳＲＡＭ１０２の先頭番地からシーケンシャルに生成するが、このようなアドレス生成は、上記ＳＲＡＭ１０２の先頭番地を初期値として所定のアドレス単位でインクリメント動作を行うことで容易に実現できる。
【００６２】
以上本発明者によってなされた発明を実施形態に基づいて具体的に説明したが、本発明はそれに限定されるものではなく、その要旨を逸脱しない範囲において種々変更可能であることは言うまでもない。
【００６３】
例えば、データストリームのやり取りを行うための符号データ用バスなどのインタフェースが単方向の場合には、内蔵ＳＲＡＭアクセスモードの設定により、データストリームのやり取りを行うための符号データ用バスなどのインタフェースを双方向に伝達することができように切り替えるようにしても良い。データストリームのやり取りを行うための符号データ用バスなどのインタフェースが双方向に伝達可能であれば、アドレス生成回路３０１でＳＲＡＭ１０２の読み出し用アドレスを生成することで、ＳＲＡＭ１０２の記憶情報を符号データ用バス経由でメインプロセッサ２０３に伝達することができる。
【００６４】
ダイレクトアクセスコントロール回路（ＤＡＣＣ）１０３内のデータ伝送経路におけるデータ幅（３２，１６，８）は固定でも良いが、モード切り換えに連動してデータ幅を適宜に変更するようにしても良い。
【符号の説明】
【００６５】
１０１  ＣＰＵ
１０２  ＳＲＡＭ
１０３  ダイレクトアクセスコントロール回路
１０４  ＲＯＭ
１０５  コーデックエンジン
１０６  符号入出力回路
１０７  画像入出力回路
１０８  モバイルＲＡＭ
２０３  メインプロセッサ
２１０  動画コーデック
３０１  ＳＲＡＭダイレクトアクセスモジュール
３０１Ａ  アドレス生成回路
３０１Ｂ  アクセス制御回路
３０２  アクセス元切り替え回路
３０３  ブートアドレス制御回路
３０３Ａ  経路選択回路
３０３Ｂ  選択制御回路
【図１】
2011081700.tif 000003
【図２】
2011081700.tif 000004
【図３】
2011081700.tif 000005
【図４】
2011081700.tif 000006
【図５】
2011081700.tif 000007
【図６】
2011081700.tif 000008