説明

半導体装置及びマルチプロセッサシステム

【課題】符号データ用バスを使用してイニシャルプログラムの書き込みを可能にすることで、IPL用バスに対応する外部端子を省略する。
【解決手段】プログラムを格納可能なメモリ(102)と、上記メモリに格納されているプログラムを実行可能なCPU(101)と、データストリームを伝達可能な符号データ用バスに結合される第1外部端子(EX_D、EX_CS、EX_WE、EX_OE)とを含んで半導体装置(210)を形成する。上記半導体装置(210)には、上記第1外部端子を介して上記メモリにイニシャルプログラムを書き込むための動作を制御可能な制御回路(103)を設ける。この制御回路は、上記イニシャルプログラムを上記メモリに書き込むための書き込み用アドレス信号を生成する回路を含む。これにより、符号データ用バスを使用したイニシャルプログラムの書き込みが可能になるので、IPL用バスが不要とされる。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、半導体装置や、複数のプロセッサを有するマルチプロセッサシステムに関するもので、特に、上記半導体装置や上記マルチプロセッサシステムに含まれるメモリのダイレクトアクセス技術に関するものである。
【背景技術】
【0002】
デジタルスチルカメラ(Digital Still Camera)には、カメラシステムを構成する上で必要となる静止画又は動画撮影、画像処理、各種メディア制御、表示制御機能等を備えたプロセッサが搭載される。また、上記プロセッサをマスタプロセッサとして、このマスタプロセッサの制御下でそれぞれ独自の機能を実現するための各種スレーブプロセッサが搭載される場合がある。例えばデジタルオーディオの録音再生を行うためのオーディオコーデック、撮影したイメージを液晶ディスプレイ(LCD)に表示させるためのLCDコントローラ、デジタルビデオのエンコードやデコード機能を備えた動画コーデック等は、上記スレーブプロセッサの一例とされる。上記スレーブプロセッサは、半導体装置の一例とされるSoC(System-on-a-chip)として提供される。
【0003】
例えば上記動画コーデックは、動画のエンコード/デコードを行うエンジンや、動画コーデックの動作制御を司るCPU(Central Processing Unit)、及び上記CPUによってランダムアクセス可能なSRAM(Static Random Access Memory)等を含んで成る。そのような動画コーデックは、符号データ用バスやIPL用バスを介して上記マスタプロセッサに結合される。上記符号データ用バスは、上記動画コーデックと上記マスタプロセッサとの間でデータストリーム(シリアルに出力されるデジタルデータ)のやり取りを行うために用いられる。上記IPL用バスは、上記マスタプロセッサから上記動画コーデック内のSRAMにイニシャルプログラム(IPL:Initial Program Loader)を書き込むのに用いられる。IPLは、システムの電源が投入された後に一番最初に起動するプログラムであり、動画コーデックでは内蔵SRAMに納められる。上記動画コーデックにおいては、上記IPL用バスを介して上記マスタプロセッサから上記動画コーデック内のSRAMにイニシャルプログラムを変更することができるようになっている。
【0004】
本願発明に関連する技術が記載された文献として、特許文献1,2を挙げることができる。
【0005】
特許文献1には、プロセッサシステムにおいて、イニシャルプログラムを簡単に変更できるようにした技術が記載されている。
【0006】
特許文献2には、簡単な構成で部品点数を低減できるマルチプロセッサシステム及びスレーブシステムの起動方法が記載されている。
【先行技術文献】
【特許文献】
【0007】
【特許文献1】特開2001−216164号公報
【特許文献2】特開2007−213292号公報
【発明の概要】
【発明が解決しようとする課題】
【0008】
従来の動画コーデックに内蔵されるSRAMにおいては、符号データ用バスに対応する外部端子と、IPL用バスに対応する外部端子が必要とされる。符号データ用バスに対応する外部端子には、データ、チップセレクト信号、ライトイネーブル信号、出力イネーブル信号などの各信号に対応する端子が含まれる。また、IPL用バスに対応する外部端子には、アドレス信号、データ、チップセレクト信号、ライトイネーブル信号、出力イネーブル信号の各信号に対応する端子が含まれる。このように従来の動画コーデックにおいては多数の外部端子が必要とされる。
【0009】
本願発明者は、動画コーデックにおける外部端子を低減することについて検討した。そして符号データ用バスを使用して、イニシャルプログラムの書き込みと、データの転送とを行うようにすれば、IPL用バスが不要となるため、当該バスに対応する外部端子の省略が可能になることを見出した。
【0010】
しかしながら、符号データ用バスは、上記マスタプロセッサから上記動画コーデックに対してシリアルに出力されるデジタルデータ専用とされており、元々アドレス信号が不要とされることから、アドレス信号の伝達については考慮されていない。このため、符号データ用バスを使用して、上記動画コーデック内のSRAMにイニシャルプログラムと、当該プログラムの書き込み用アドレス信号との双方を伝達することができない。
【0011】
尚、特許文献1,2には、符号データ用バスを使用してイニシャルプログラムの書き込みを可能にすることで、IPL用バスに対応する外部端子を省略することについて記載も示唆もされていない。
【0012】
本発明の目的は、符号データ用バスを使用してイニシャルプログラムの書き込みを可能にすることで、IPL用バスに対応する外部端子を省略するための技術を提供することにある。
【0013】
本発明の前記並びにその他の目的と新規な特徴は本明細書の記述及び添付図面から明らかになるであろう。
【課題を解決するための手段】
【0014】
本願において開示される発明のうち代表的なものの概要を簡単に説明すれば下記の通りである。
【0015】
すなわち、プログラムを格納可能なメモリと、上記メモリに格納されているプログラムを実行可能なCPUと、データストリームを伝達可能な符号データ用バスに結合される第1外部端子とを含んで半導体装置が形成される。このとき、半導体装置には、上記第1外部端子を介して上記メモリにイニシャルプログラムを書き込むための動作を制御可能な制御回路を設ける。この制御回路は、上記イニシャルプログラムを上記メモリに書き込むための書き込み用アドレス信号を生成する回路を含む。
【0016】
上記の構成によれば、制御回路は、上記第1外部端子を介して上記メモリにイニシャルプログラムを書き込むための動作を制御し、しかも上記イニシャルプログラムを上記メモリに書き込むための書き込み用アドレス信号を生成する。これにより、符号データ用バスを使用したイニシャルプログラムの書き込みが可能になる。このことが、IPL用バスを不要とし、IPL用バスに対応する外部端子の省略を達成する。
【発明の効果】
【0017】
本願において開示される発明のうち代表的なものによって得られる効果を簡単に説明すれば下記のとおりである。
【0018】
すなわち、符号データ用バスを使用してイニシャルプログラムの書き込みを可能にすることで、IPL用バスに対応する外部端子を省略することができる。
【図面の簡単な説明】
【0019】
【図1】本発明にかかる半導体装置の一例とされる動画コーデックの構成例ブロック図である。
【図2】本発明にかかるマルチプロセッサシステムの一例とされるデジタルスチルカメラ(DSC)の全体的な構成例ブロック図である。
【図3】上記動画コーデックに含まれるダイレクトアクセスコントロール回路の構成例ブロック図である。
【図4】上記動画コーデックにおける動作モードの説明図である。
【図5】上記動画コーデックにおける外部端子仕様の説明図である。
【図6】上記動画コーデックにおける動作モード遷移のタイミング図である。
【発明を実施するための形態】
【0020】
1.実施の形態の概要
先ず、本願において開示される発明の代表的な実施の形態について概要を説明する。代表的な実施の形態についての概要説明で括弧を付して参照する図面中の参照符号はそれが付された構成要素の概念に含まれるものを例示するに過ぎない。
【0021】
〔1〕本発明の代表的な実施の形態に係る半導体装置(210)は、プログラムを格納可能なメモリ(102)と、上記メモリに格納されているプログラムを実行可能なCPU(101)と、データストリームを伝達可能な符号データ用バスに結合される第1外部端子(EX_D、EX_CS、EX_WE、EX_OE)とを含み、上記データストリームの処理を行う。この半導体装置(210)は、上記第1外部端子を介して上記メモリにイニシャルプログラムを書き込むための動作を制御可能な制御回路(103)を含む。この制御回路は、上記イニシャルプログラムを上記メモリに書き込むための書き込み用アドレス信号を生成する回路を含む。
【0022】
〔2〕上記〔1〕において、上記メモリをSRAMとすることができる。
【0023】
〔3〕上記〔2〕において、上記制御回路(103)は、内蔵SRAMアクセスモードと内蔵SRAMブートモードとを有する。そして上記制御回路(103)は、上記内蔵SRAMアクセスモードにおいて上記SRAM(102)への書き込み用アドレスを生成することによって上記イニシャルプログラムを上記SRAMに書き込み、上記内蔵SRAMブートモードにおいて上記SRAM内のイニシャルプログラムを上記CPU(101)に実行させる。
【0024】
〔4〕上記〔3〕において、上記半導体装置(210)には、リセット状態を指定可能な第2外部端子(RESET)と、動作モード設定用の第3外部端子(MODE0,1)とを設けることができる。このとき、上記第2外部端子を介して指定されたリセット状態が解除されたときの上記第3外部端子の論理状態に応じて上記内蔵SRAMアクセスモード、又は上記内蔵SRAMブートモードが指定される。
【0025】
〔5〕上記〔4〕において、上記制御回路(103)は、上記マスタプロセッサから上記SRAMへのダイレクトアクセスを制御するためのダイレクトアクセスモジュール(301)と、上記ダイレクトアクセスモジュールを上記SRAMに選択的に結合させるための切り替え回路(302)とを含んで構成することができる。このとき、上記ダイレクトアクセスモジュールは、上記内蔵SRAMアクセスモードにおいて上記切り替え回路によって上記SRAM(102)に選択的に結合された状態で上記SRAMへの書き込み用アドレスを生成する。
【0026】
〔6〕上記〔5〕において、上記ダイレクトアクセスモジュール(301)は、上記SRAM(102)への書き込み用アドレス及び上記SRAMからの読み出し用アドレスをシーケンシャルに生成するアドレス生成回路(301A)を含んで構成することができる。
【0027】
〔7〕上記〔6〕において、上記アドレス生成回路(301A)は、上記SRAM(102)への書き込み用アドレス及び上記SRAMからの読み出し用アドレスを、上記SRAMの先頭番地を初期値とするインクリメント動作によってシーケンシャルに生成するように構成することができる。
【0028】
〔8〕本発明の代表的な実施の形態に係るマルチプロセッサシステム(200)は、マスタプロセッサ(203)と、上記マスタプロセッサに従属するスレーブプロセッサ(210)と、上記マスタプロセッサと上記スレーブプロセッサとの間でデータストリームのやり取りを可能とする符号データ用バスとを含む。上記スレーブプロセッサは、プログラムを格納可能なメモリ(102)と、上記メモリに格納されているプログラムを実行可能なCPU(101)と、上記符号データ用バスに結合された第1外部端子(EX_D、EX_CS、EX_WE、EX_OE)と、上記マスタプロセッサから上記符号データ用バス及び上記第1外部端子を介して上記メモリにイニシャルプログラムを書き込むための動作を制御可能な制御回路(103)とを含む。そして上記制御回路は、上記イニシャルプログラムを上記メモリに書き込むための書き込み用アドレス信号を生成する回路を含む。
【0029】
〔9〕上記〔8〕において、上記メモリをSRAMとすることができる。
【0030】
〔10〕上記〔9〕において、上記制御回路(103)は、内蔵SRAMアクセスモードと内蔵SRAMブートモードとを含む。このとき上記制御回路(103)は、上記内蔵SRAMアクセスモードにおいて上記SRAM(102)への書き込み用アドレスを生成することによって上記イニシャルプログラムを上記SRAMに書き込み、上記内蔵SRAMブートモードにおいて上記SRAM内のイニシャルプログラムを上記CPU(101)に実行させる。
【0031】
〔11〕上記〔10〕において、上記スレーブプロセッサ(210)には、リセット状態を指定可能な第2外部端子(RESET)と、動作モード設定用の第3外部端子(MODE0,1)とを設けることができる。このとき上記第2外部端子を介して指定されたリセット状態が解除されたときの上記第3外部端子の論理状態に応じて上記内蔵SRAMアクセスモード、又は上記内蔵SRAMブートモードが指定される。
【0032】
〔12〕上記〔11〕において、上記制御回路(103)は、上記マスタプロセッサから上記SRAMへのダイレクトアクセスを制御するためのダイレクトアクセスモジュール(301)と、上記ダイレクトアクセスモジュールを上記SRAMに選択的に結合させるための切り替え回路(302)とを含んで構成することができる。このとき、上記ダイレクトアクセスモジュールは、上記内蔵SRAMアクセスモードにおいて上記切り替え回路によって上記SRAM(102)に選択的に結合された状態で上記SRAMの書き込みアドレスを生成する。
【0033】
〔13〕上記〔12〕において、上記ダイレクトアクセスモジュール(301)は、上記内蔵SRAMアクセスモードにおいて上記SRAM(102)への書き込み用アドレス及び上記SRAMからの読み出し用アドレスをシーケンシャルに生成するアドレス生成回路(301A)を含んで構成することができる。
【0034】
〔14〕上記〔13〕において、上記アドレス生成回路(301A)は、上記SRAM(102)への書き込み用アドレス及び上記SRAMからの読み出し用アドレスを、上記SRAMの先頭番地を初期値とするインクリメント動作によってシーケンシャルに生成するように構成することができる。
【0035】
2.実施の形態の詳細
実施の形態について更に詳述する。
【0036】
図2には、本発明にかかるマルチプロセッサシステムの一例とされるデジタルスチルカメラ(DSC)の全体的な構成例が示される。
【0037】
このデジタルスチルカメラ200は、レンズ201を介して入射した光をピクセル値に直接変換するためのイメージセンサ202が設けられ、撮影した静止画や動画をデジタルデータとして記録することができる。イメージセンサ202には、CCD(Charge Coupled Device)タイプやCMOS(Complementary Metal Oxide Semiconductor)タイプを適用することができる。このイメージセンサ202の出力はメインプロセッサ203に伝達される。このデジタルスチルカメラ200は、シャッターボタンを半押しする操作によって、自動的にピントが調整されるオートフォーカスシャッター215を有し、このオートフォーカスシャッター215のモーターは、モータードライバ216によって駆動される。モータードライバ216の動作はメインプロセッサ203によって制御される。メインプロセッサ203には、フラッシュメモリ(Flash)214や、SDRAM(Synchronous Random Access Memory)213が設けられる。フラッシュメモリ214には、メインプロセッサ203で実行されるプログラムが格納される。SDRAM213には、上記メインプロセッサ203で行われる演算処理の作業領域が形成される。また、上記メインプロセッサ203には、集音マイク205やスピーカ206を介してデジタルオーディオの録音再生を行うためのオーディオコーデック204や、撮影したイメージを液晶ディスプレイ(LCD)209に表示させるためのLCDコントローラ208や、デジタルビデオのエンコードやデコード機能を備えた動画コーデック210等が結合されている。上記メインプロセッサ203をマスタプロセッサとするとき、オーディオコーデック204、LCDコントローラ208、動画コーデック210はスレーブプロセッサとされ、SoC(System-on-a-chip)として形成される。さらに、上記メインプロセッサ207は、外部接続されたテレビジョン装置207にデジタルビデオ信号を送出することができる。そして、上記メインプロセッサ207は、各種メモリカード211や、USB(Universal Serial Bus)規格に準拠した各種デバイス212に結合可能とされる。
【0038】
図1には、上記動画コーデック210の構成例が示される。
【0039】
上記動画コーデック210は、特に制限されないが、CPU101、SRAM(Static Random Access Memory)102、ダイレクトアクセスコントロール回路(DACC)103、ROM104、コーデックエンジン(Codec Eng)105、符号入出力回路106、及び画像入出力回路107を含み、公知の半導体集積回路製造技術により、単結晶シリコン基板などの一つの半導体基板に形成される。CPU101、コーデックエンジン105、符号入出力回路106、及び画像入出力回路107は、内部バス109に結合される。SRAM102、及びROM104はダイレクトアクセスコントロール回路103に結合される。
【0040】
上記SRAM102や上記ROM104には、上記CPU101で実行されるプログラムが格納される。上記CPU101は、SRAM102又はROM104に格納されているプログラムを実行することにより、動画コーデック210の全体的な動作制御を行うためのプログラムを、モバイルRAM(DDR Mobile RAM)108に転送する。ダイレクトアクセスコントロール回路103は、アクセス元の切り替えや、ブートアドレスの制御を行う。アクセス元の切り替えでは、CPU101からSRAM102へのアクセスと、メインプロセッサ203からSRAM102へのアクセスとを切り替えることができる。ブートアドレスの制御では、ブート領域を切り替えることができる。このブート領域の切り替えにより、SRAM102からの起動と、ROM104からの起動との切り替えを行うことができる。コーデックエンジン105は、例えばITU-T(国際電気通信連合電気通信標準化部門)によって勧告された動画圧縮規格H.264に対応するエンジンとされ、動画のエンコード又はデコードを行う。上記符号入出力回路106は、メインプロセッサ203との間で符号データの入出力を可能にする。上記画像入出力回路107は、メインプロセッサ203との間で画像データの入出力を可能にする。動画コーデック210には、低消費電力型のモバイルRAM(DDR Mobile RAM)108が結合され、このモバイルRAM108には、メインプロセッサ203から動画コーデック210を介してシステムプログラムが転送される。
【0041】
図3には、上記ダイレクトアクセスコントロール回路103の構成例が示される。
【0042】
上記ダイレクトアクセスコントロール回路103は、SRAMダイレクトアクセスモジュール301、アクセス元切り替え回路302、及びブートアドレス制御回路303を含む。
【0043】
SRAMダイレクトアクセスモジュール301は、SRAM102のアドレス信号を生成するアドレス生成回路301Aと、メインプロセッサ203からSRAM102へのアクセスをCPU101の介在なしに行うためのアクセス制御回路301Bとを有する。アドレス生成回路301Aは、SRAM102への書き込み用アドレス信号を生成する。この書き込み用アドレス信号は、上記SRAM102の先頭番地からシーケンシャルに生成される。アドレス生成回路301Aにより生成されたアドレス信号、及びアクセス制御回路301Bからの制御信号は、アクセス元切り替え回路302を介してSRAM102に伝達される。
【0044】
上記ブートアドレス制御回路303は、上記メインプロセッサ203から伝達された動作モード制御によってSRAM102又はROM104からの起動(ブート)が指定された場合に、CPU101から出力されるアドレス信号(Higher order address)に基づいてアクセス(ブート)領域の選択を行う。特に制限されないが、上記ブートアドレス制御回路303は、経路選択回路303Aと、この経路選択回路303Aの選択動作を制御するための信号を形成する選択制御回路303Bとを含む。選択制御回路303Bは、上記メインプロセッサ203から伝達された動作モード制御によってSRAM102又はROM104からの起動が指定された場合に活性化され、CPU101から出力されるアドレス信号(Higher order address)に基づいてアクセス領域の選択を行う。例えば上記アクセス元切り替え回路302側の経路が経路選択回路303Aを介してCPU101に結合された場合、CPU101はSRAM102をアクセスすることができる。また、ROM104側の経路が経路選択回路303Aを介してCPU101に結合された場合、CPU101はROM104をアクセスすることができる。
【0045】
上記構成の動画コーデック210は、複数の動作モードとして、例えば図4に示されるように、CS空間ブートモード、内蔵ROMブートモード、内蔵SRAMブートモード、内蔵SRAMアクセスモードを有する。各動作モードはメインプロセッサ203によって指定される。上記CS空間ブートモードでは、動画コーデック210の外部に配置されたROMなどに格納されているイニシャルプログラムから起動される。内蔵ROMブートモードでは、ROM104に格納されているイニシャルプログラムから起動される。内蔵SRAMブートモードでは、SRAM102に格納されているイニシャルプログラムから起動される。内蔵SRAMアクセスモードでは、SRAM102へのイニシャルプログラムの書き込みを行うことができる。
【0046】
次に、図3に示される動画コーデック210における外部端子仕様を図5に基づいて説明する。
【0047】
動作モード設定に用いられる外部端子として、TEST、MODE0,1、RESETを挙げることができる。TEST、MODE0,1は入力専用の動作モード設定端子とされる。RESETはSoC全体を初期化するためのリセット端子であり、このリセット端子も入力専用端子とされる。
【0048】
メインプロセッサ203と動作コーデック210との間でデータストリームのやり取りを可能とする符号データ用バスに結合される外部端子として、EX_D、EX_CS、EX_WE、EX_OEを挙げることができる。EX_Dはデータ入出力に用いられる。EX_CSは入力専用端子であり、チップセレクト信号の取り込みに用いられる。EX_WEは入力専用端子であり、ライトイネーブル信号の取り込みに用いられる。EX_OEは入力専用端子であり、アウトプットイネーブル信号の取り込みに用いられる。
【0049】
尚、図3に示される動画コーデック210においては、後述するようにIPLバスに接続される外部端子が不要とされる。
【0050】
次に、動画コーデック210における動作モードの遷移について説明する。
【0051】
動画コーデック210における動作モードは、当該動画コーデック210における複数の外部端子(TEST、MODE0,1、RESET)の論理の組み合わせによって指定される。この指定はメインプロセッサ203によって行われる。
【0052】
例えば図6に示されるように、RESETがロー(L)レベルにアサートされた状態で動画コーデック210が初期化される(リセット状態)。そしてRESETがハイ(H)レベルにネゲートされた状態で、TEST、MODE0がローレベル、MODE1がハイレベルにされている場合には、内蔵SRAMアクセスモードが指定され、これにより動画コーデック210は、リセット状態から内蔵SRAMアクセスモードに遷移される。この内蔵SRAMアクセスモードにおいては、アクセス元切り替え回路302によってSRAMダイレクトアクセスモジュール301とSRAM102とが導通される。このとき、EX_CS(チップセレクト)はローレベルにアサートされ、EX_WE(ライトイネーブル)はローレベルにアサートされ、EX_OE(出力イネーブル)はハイレベルにネゲートされる。イニシャルプログラムはEX_Dを介して伝達される。この内蔵SRAMアクセスモードにおいてSRAM102への書き込みアドレス信号は、アドレス生成回路301Aにより、例えばSRAM102の先頭アドレスを初期値として所定のアドレス単位で順次インクリメントされることでシーケンシャルに生成される。これにより、EX_Dを介して入力されたイニシャルプログラムは、SRAM102の先頭アドレスから順に書き込まれる。このようにして、メインプロセッサ203から符号用データバスに対応する外部端子(EX_D、EX_CS、EX_WE、EX_OE)を介して、SRAM102へのイニシャルプログラムの転送が行われる。
【0053】
次にRESETがロー(L)レベルにアサートされた状態で動画コーデック210が再び初期化される(リセット状態。この場合、SRAM102に書き込まれたプログラムは保持される。)そして、RESETがハイ(H)レベルにネゲートされた状態で、TESTがローレベル、MODE0,MODE1がハイレベルにされている場合には、内蔵RAMブートモードが指定され、これにより動画コーデック210は、リセット状態から内蔵RAMブートモードに遷移される。この内蔵RAMブートモードにおいては、アクセス元切り替え回路302によってブートアドレス制御回路303とSRAM102とが導通される。このとき、CPU101から出力されるアドレス信号(Higher order address)に基づいてアクセス元切り替え回路302側の経路が選択されることによって、SRAM102がアクセス(ブート)領域として選択される。この状態でCPU101は、SRAM102の先頭番地から順にイニシャルプログラムを読み込んで実行する。このイニシャルプログラムの実行により、CPU101は、メインプロセッサ203からシステムプログラムを受け取り、それをモバイルRAM(DDR Mobile RAM)108に転送する。そして、CPU101は、上記モバイルRAM108内のシステムプログラムを実行することにより、符号データバスを介して、メインプロセッサ203と動画コーデック210との間でデータストリームのやり取りを行う。
【0054】
尚、アドレス生成回路301でSRAM102の読み出し用アドレスを生成することで、SRAM102の記憶情報を符号データ用バス経由でメインプロセッサ203に伝達することができる。このとき、外部端子は、EX_WEに代えてEX_OEがアサートされる。
【0055】
ここで従来の技術に従えば、上記マスタプロセッサから上記動画コーデック内のSRAMに、イニシャルプログラムを書き込むための専用バスとしてIPL用バスが設けられ、このIPL用バスを介してイニシャルプログラムの伝達が行われることから、従来の動画コーデックには上記IPL用バスに対応する外部端子として、図5に示されるような各種外部端子A、D、CS、WE、OEを設ける必要があった。
【0056】
これに対して図3に示される構成によれば、内蔵SRAMアクセスモードが設定されることにより、アクセス元切り替え回路302によってSRAMダイレクトアクセスモジュール301とSRAM102とが導通され、メインプロセッサ203から符号用データバスに対応する外部端子(EX_D、EX_CS、EX_WE、EX_OE)を介して、SRAM102へのイニシャルプログラムの転送が行われる。つまり、メインプロセッサ203と動画コーデック210との間でデータストリームのやり取りを行うための符号データ用バスを、動作モードの切り替えによりイニシャルプログラムの伝達に使用することにより、IPL用バスが不要となるため、当該IPL用バスに結合するための各種外部端子A、D、CS、WE、OEを設ける必要が無くなる。それにより、動画コーデック210の外部端子数を低減することができる。
【0057】
この実施の形態によれば以下の作用効果が得られる。
【0058】
(1)図6に示されるように、RESETがハイ(H)レベルにネゲートされた状態で、TEST、MODE0がローレベル、MODE1がハイレベルにされている場合には、内蔵SRAMアクセスモードが指定され、これにより動画コーデック210は、リセット状態から内蔵SRAMアクセスモードに遷移される。この内蔵SRAMアクセスモードにおいては、CPU101の介在無しに、アクセス元切り替え回路302によってSRAMダイレクトアクセスモジュール301とSRAM102とが導通され、SRAMダイレクトアクセスモジュール301によってSRAM102の書き込み用アドレス信号の生成やSRAM102へのアクセス制御が行われる。このようなイニシャルプログラムの書き込みは、従来例のようにIPL用バスを用いてCPUを介在させて行うのに比べると、短時間で完了することができるので、イニシャルプログラムの書き込みから起動までの時間短縮を図ることができる。
【0059】
(2)メインプロセッサ203と動画コーデック210との間でデータストリームのやり取りを行うための符号データ用バスを、動作モードの切り替えによりイニシャルプログラムの伝達に使用することにより、IPL用バスが不要となるため、当該IPL用バスに結合するための各種外部端子A、D、CS、WE、OEを省略することができる。これにより、従来例に比べて動画コーデック210の外部端子数を低減することができる。
【0060】
(3)上記ダイレクトアクセスコントロール回路103は、上記マスタプロセッサから上記SRAMへのダイレクトアクセスを制御するためのダイレクトアクセスモジュール301と、上記ダイレクトアクセスモジュールを上記SRAMに選択的に結合させるための切り替え回路302とを設けることで、容易に形成することができる。
【0061】
(4)上記アドレス生成回路301Aは、上記SRAM102への書き込み用アドレスを上記SRAM102の先頭番地からシーケンシャルに生成するが、このようなアドレス生成は、上記SRAM102の先頭番地を初期値として所定のアドレス単位でインクリメント動作を行うことで容易に実現できる。
【0062】
以上本発明者によってなされた発明を実施形態に基づいて具体的に説明したが、本発明はそれに限定されるものではなく、その要旨を逸脱しない範囲において種々変更可能であることは言うまでもない。
【0063】
例えば、データストリームのやり取りを行うための符号データ用バスなどのインタフェースが単方向の場合には、内蔵SRAMアクセスモードの設定により、データストリームのやり取りを行うための符号データ用バスなどのインタフェースを双方向に伝達することができように切り替えるようにしても良い。データストリームのやり取りを行うための符号データ用バスなどのインタフェースが双方向に伝達可能であれば、アドレス生成回路301でSRAM102の読み出し用アドレスを生成することで、SRAM102の記憶情報を符号データ用バス経由でメインプロセッサ203に伝達することができる。
【0064】
ダイレクトアクセスコントロール回路(DACC)103内のデータ伝送経路におけるデータ幅(32,16,8)は固定でも良いが、モード切り換えに連動してデータ幅を適宜に変更するようにしても良い。
【符号の説明】
【0065】
101 CPU
102 SRAM
103 ダイレクトアクセスコントロール回路
104 ROM
105 コーデックエンジン
106 符号入出力回路
107 画像入出力回路
108 モバイルRAM
203 メインプロセッサ
210 動画コーデック
301 SRAMダイレクトアクセスモジュール
301A アドレス生成回路
301B アクセス制御回路
302 アクセス元切り替え回路
303 ブートアドレス制御回路
303A 経路選択回路
303B 選択制御回路

【特許請求の範囲】
【請求項1】
プログラムを格納可能なメモリと、
上記メモリに格納されているプログラムを実行可能なCPUと、
データストリームを伝達可能な符号データ用バスに結合される第1外部端子と、を含み、
上記符号データ用バスを介して上記第1外部端子から取り込まれたデータストリームを処理可能な半導体装置であって、
上記第1外部端子を介して上記メモリにイニシャルプログラムを書き込むための動作を制御可能な制御回路を含み、
上記制御回路は、上記イニシャルプログラムを上記メモリに書き込むための書き込み用アドレス信号を生成する回路を含むことを特徴とする半導体装置。
【請求項2】
上記メモリをSRAMとした請求項1記載の半導体装置。
【請求項3】
上記制御回路は、内蔵SRAMアクセスモードと内蔵SRAMブートモードとを有し、上記内蔵SRAMアクセスモードにおいて上記SRAMへの書き込み用アドレスを生成することによって上記イニシャルプログラムを上記SRAMに書き込み、上記内蔵SRAMブートモードにおいて上記SRAM内のイニシャルプログラムを上記CPUに実行させる請求項2記載の半導体装置。
【請求項4】
上記半導体装置は、リセット状態を指定可能な第2外部端子と、
動作モード設定用の第3外部端子と、を更に含み、
上記第2外部端子を介して指定されたリセット状態が解除されたときの上記第3外部端子の論理状態に応じて上記内蔵SRAMアクセスモード、又は上記内蔵SRAMブートモードが指定される請求項3記載の半導体装置。
【請求項5】
上記制御回路は、上記マスタプロセッサから上記SRAMへのダイレクトアクセスを制御するためのダイレクトアクセスモジュールと、
上記ダイレクトアクセスモジュールを上記SRAMに選択的に結合させるための切り替え回路と、を含み、
上記ダイレクトアクセスモジュールは、上記内蔵SRAMアクセスモードにおいて上記切り替え回路によって上記SRAMに選択的に結合された状態で上記SRAMへの書き込み用アドレスを生成する請求項4記載の半導体装置。
【請求項6】
上記ダイレクトアクセスモジュールは、上記SRAMへの書き込み用アドレス及び上記SRAMからの読み出し用アドレスをシーケンシャルに生成するアドレス生成回路を含む請求項5記載の半導体装置。
【請求項7】
上記アドレス生成回路は、上記SRAMへの書き込み用アドレス及び上記SRAMからの読み出し用アドレスを、上記SRAMの先頭番地を初期値とするインクリメント動作によってシーケンシャルに生成する請求項6記載の半導体装置。
【請求項8】
マスタプロセッサと、
上記マスタプロセッサに従属するスレーブプロセッサと、
上記マスタプロセッサと上記スレーブプロセッサとの間でデータストリームのやり取りを可能とする符号データ用バスと、を含むマルチプロセッサシステムであって、
上記スレーブプロセッサは、プログラムを格納可能なメモリと、
上記メモリに格納されているプログラムを実行可能なCPUと、
上記符号データ用バスに結合された第1外部端子と、
上記マスタプロセッサから上記符号データ用バス及び上記第1外部端子を介して上記メモリにイニシャルプログラムを書き込むための動作を制御可能な制御回路と、を含み、
上記制御回路は、上記イニシャルプログラムを上記メモリに書き込むための書き込み用アドレス信号を生成する回路を含むことを特徴とするマルチプロセッサシステム。
【請求項9】
上記メモリをSRAMとした請求項8記載のマルチプロセッサシステム。
【請求項10】
上記制御回路は、内蔵SRAMアクセスモードと内蔵SRAMブートモードとを含み、上記内蔵SRAMアクセスモードにおいて上記SRAMへの書き込み用アドレスを生成することによって上記イニシャルプログラムを上記SRAMに書き込み、上記内蔵SRAMブートモードにおいて上記SRAM内のイニシャルプログラムを上記CPUに実行させる請求項9記載のマルチプロセッサシステム。
【請求項11】
上記スレーブプロセッサは、リセット状態を指定可能な第2外部端子と、
動作モード設定用の第3外部端子と、を更に含み、
上記第2外部端子を介して指定されたリセット状態が解除されたときの上記第3外部端子の論理状態に応じて上記内蔵SRAMアクセスモード、又は上記内蔵SRAMブートモードが指定される請求項10記載のマルチプロセッサシステム。
【請求項12】
上記制御回路は、上記マスタプロセッサから上記SRAMへのダイレクトアクセスを制御するためのダイレクトアクセスモジュールと、
上記ダイレクトアクセスモジュールを上記SRAMに選択的に結合させるための切り替え回路と、を含み、
上記ダイレクトアクセスモジュールは、上記内蔵SRAMアクセスモードにおいて上記切り替え回路によって上記SRAMに選択的に結合された状態で上記SRAMの書き込み用アドレスを生成する請求項11記載のマルチプロセッサシステム。
【請求項13】
上記ダイレクトアクセスモジュールは、上記SRAMへの書き込み用アドレス及び上記SRAMからの読み出し用アドレスをシーケンシャルに生成するアドレス生成回路を含む請求項12記載のマルチプロセッサシステム。
【請求項14】
上記アドレス生成回路は、上記SRAMへの書き込み用アドレス及び上記SRAMからの読み出し用アドレスを、上記SRAMの先頭番地を初期値とするインクリメント動作によってシーケンシャルに生成する請求項13記載のマルチプロセッサシステム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate


【公開番号】特開2011−81700(P2011−81700A)
【公開日】平成23年4月21日(2011.4.21)
【国際特許分類】
【出願番号】特願2009−235119(P2009−235119)
【出願日】平成21年10月9日(2009.10.9)
【出願人】(302062931)ルネサスエレクトロニクス株式会社 (8,021)
【Fターム(参考)】