JP2011081700A - Semiconductor device and multiprocessor system - Google Patents
Semiconductor device and multiprocessor system Download PDFInfo
- Publication number
- JP2011081700A JP2011081700A JP2009235119A JP2009235119A JP2011081700A JP 2011081700 A JP2011081700 A JP 2011081700A JP 2009235119 A JP2009235119 A JP 2009235119A JP 2009235119 A JP2009235119 A JP 2009235119A JP 2011081700 A JP2011081700 A JP 2011081700A
- Authority
- JP
- Japan
- Prior art keywords
- sram
- address
- built
- external terminal
- mode
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Withdrawn
Links
Images
Landscapes
- Microcomputers (AREA)
- Stored Programmes (AREA)
Abstract
Description
本発明は、半導体装置や、複数のプロセッサを有するマルチプロセッサシステムに関するもので、特に、上記半導体装置や上記マルチプロセッサシステムに含まれるメモリのダイレクトアクセス技術に関するものである。 The present invention relates to a semiconductor device and a multiprocessor system having a plurality of processors, and more particularly to a direct access technology for a memory included in the semiconductor device or the multiprocessor system.
デジタルスチルカメラ(Digital Still Camera)には、カメラシステムを構成する上で必要となる静止画又は動画撮影、画像処理、各種メディア制御、表示制御機能等を備えたプロセッサが搭載される。また、上記プロセッサをマスタプロセッサとして、このマスタプロセッサの制御下でそれぞれ独自の機能を実現するための各種スレーブプロセッサが搭載される場合がある。例えばデジタルオーディオの録音再生を行うためのオーディオコーデック、撮影したイメージを液晶ディスプレイ(LCD)に表示させるためのLCDコントローラ、デジタルビデオのエンコードやデコード機能を備えた動画コーデック等は、上記スレーブプロセッサの一例とされる。上記スレーブプロセッサは、半導体装置の一例とされるSoC(System-on-a-chip)として提供される。 A digital still camera is equipped with a processor having still image or moving image shooting, image processing, various media controls, display control functions, and the like necessary for configuring a camera system. In some cases, the above-mentioned processor is used as a master processor, and various slave processors for realizing unique functions under the control of the master processor are mounted. For example, an audio codec for recording and reproducing digital audio, an LCD controller for displaying captured images on a liquid crystal display (LCD), a moving image codec having a digital video encoding and decoding function, and the like are examples of the slave processor. It is said. The slave processor is provided as an SoC (System-on-a-chip) which is an example of a semiconductor device.
例えば上記動画コーデックは、動画のエンコード/デコードを行うエンジンや、動画コーデックの動作制御を司るCPU(Central Processing Unit)、及び上記CPUによってランダムアクセス可能なSRAM(Static Random Access Memory)等を含んで成る。そのような動画コーデックは、符号データ用バスやIPL用バスを介して上記マスタプロセッサに結合される。上記符号データ用バスは、上記動画コーデックと上記マスタプロセッサとの間でデータストリーム(シリアルに出力されるデジタルデータ)のやり取りを行うために用いられる。上記IPL用バスは、上記マスタプロセッサから上記動画コーデック内のSRAMにイニシャルプログラム(IPL:Initial Program Loader)を書き込むのに用いられる。IPLは、システムの電源が投入された後に一番最初に起動するプログラムであり、動画コーデックでは内蔵SRAMに納められる。上記動画コーデックにおいては、上記IPL用バスを介して上記マスタプロセッサから上記動画コーデック内のSRAMにイニシャルプログラムを変更することができるようになっている。 For example, the moving image codec includes an engine for encoding / decoding moving images, a CPU (Central Processing Unit) that controls the operation of the moving image codec, an SRAM (Static Random Access Memory) that can be randomly accessed by the CPU, and the like. . Such a moving image codec is coupled to the master processor via a code data bus or an IPL bus. The code data bus is used to exchange a data stream (serially output digital data) between the moving image codec and the master processor. The IPL bus is used to write an initial program (IPL: Initial Program Loader) from the master processor to the SRAM in the moving image codec. The IPL is a program that is activated first after the system power is turned on, and is stored in a built-in SRAM in the moving image codec. In the moving image codec, the initial program can be changed from the master processor to the SRAM in the moving image codec via the IPL bus.
本願発明に関連する技術が記載された文献として、特許文献1,2を挙げることができる。
特許文献1には、プロセッサシステムにおいて、イニシャルプログラムを簡単に変更できるようにした技術が記載されている。 Japanese Patent Application Laid-Open No. 2004-151561 describes a technique that allows an initial program to be easily changed in a processor system.
特許文献2には、簡単な構成で部品点数を低減できるマルチプロセッサシステム及びスレーブシステムの起動方法が記載されている。 Patent Document 2 describes a multiprocessor system and a slave system activation method that can reduce the number of components with a simple configuration.
従来の動画コーデックに内蔵されるSRAMにおいては、符号データ用バスに対応する外部端子と、IPL用バスに対応する外部端子が必要とされる。符号データ用バスに対応する外部端子には、データ、チップセレクト信号、ライトイネーブル信号、出力イネーブル信号などの各信号に対応する端子が含まれる。また、IPL用バスに対応する外部端子には、アドレス信号、データ、チップセレクト信号、ライトイネーブル信号、出力イネーブル信号の各信号に対応する端子が含まれる。このように従来の動画コーデックにおいては多数の外部端子が必要とされる。 In an SRAM incorporated in a conventional moving image codec, an external terminal corresponding to a code data bus and an external terminal corresponding to an IPL bus are required. The external terminals corresponding to the code data bus include terminals corresponding to signals such as data, a chip select signal, a write enable signal, and an output enable signal. The external terminals corresponding to the IPL bus include terminals corresponding to the address signal, data, chip select signal, write enable signal, and output enable signal. Thus, a large number of external terminals are required in the conventional moving image codec.
本願発明者は、動画コーデックにおける外部端子を低減することについて検討した。そして符号データ用バスを使用して、イニシャルプログラムの書き込みと、データの転送とを行うようにすれば、IPL用バスが不要となるため、当該バスに対応する外部端子の省略が可能になることを見出した。 The inventor of the present application examined reducing external terminals in a moving image codec. If the initial data write and data transfer are performed using the code data bus, the IPL bus is not required, and the external terminal corresponding to the bus can be omitted. I found.
しかしながら、符号データ用バスは、上記マスタプロセッサから上記動画コーデックに対してシリアルに出力されるデジタルデータ専用とされており、元々アドレス信号が不要とされることから、アドレス信号の伝達については考慮されていない。このため、符号データ用バスを使用して、上記動画コーデック内のSRAMにイニシャルプログラムと、当該プログラムの書き込み用アドレス信号との双方を伝達することができない。 However, since the code data bus is dedicated to digital data output serially from the master processor to the video codec and originally does not require an address signal, transmission of the address signal is considered. Not. For this reason, it is impossible to transmit both the initial program and the write address signal of the program to the SRAM in the moving image codec using the code data bus.
尚、特許文献1,2には、符号データ用バスを使用してイニシャルプログラムの書き込みを可能にすることで、IPL用バスに対応する外部端子を省略することについて記載も示唆もされていない。
In
本発明の目的は、符号データ用バスを使用してイニシャルプログラムの書き込みを可能にすることで、IPL用バスに対応する外部端子を省略するための技術を提供することにある。 An object of the present invention is to provide a technique for omitting an external terminal corresponding to an IPL bus by enabling an initial program to be written using a code data bus.
本発明の前記並びにその他の目的と新規な特徴は本明細書の記述及び添付図面から明らかになるであろう。 The above and other objects and novel features of the present invention will be apparent from the description of this specification and the accompanying drawings.
本願において開示される発明のうち代表的なものの概要を簡単に説明すれば下記の通りである。 The following is a brief description of an outline of typical inventions disclosed in the present application.
すなわち、プログラムを格納可能なメモリと、上記メモリに格納されているプログラムを実行可能なCPUと、データストリームを伝達可能な符号データ用バスに結合される第1外部端子とを含んで半導体装置が形成される。このとき、半導体装置には、上記第1外部端子を介して上記メモリにイニシャルプログラムを書き込むための動作を制御可能な制御回路を設ける。この制御回路は、上記イニシャルプログラムを上記メモリに書き込むための書き込み用アドレス信号を生成する回路を含む。 That is, a semiconductor device includes a memory capable of storing a program, a CPU capable of executing a program stored in the memory, and a first external terminal coupled to a code data bus capable of transmitting a data stream. It is formed. At this time, the semiconductor device is provided with a control circuit capable of controlling the operation for writing the initial program to the memory via the first external terminal. The control circuit includes a circuit that generates a write address signal for writing the initial program into the memory.
上記の構成によれば、制御回路は、上記第1外部端子を介して上記メモリにイニシャルプログラムを書き込むための動作を制御し、しかも上記イニシャルプログラムを上記メモリに書き込むための書き込み用アドレス信号を生成する。これにより、符号データ用バスを使用したイニシャルプログラムの書き込みが可能になる。このことが、IPL用バスを不要とし、IPL用バスに対応する外部端子の省略を達成する。 According to the above configuration, the control circuit controls an operation for writing the initial program to the memory via the first external terminal, and generates a write address signal for writing the initial program to the memory. To do. As a result, the initial program can be written using the code data bus. This eliminates the need for the IPL bus and achieves the omission of external terminals corresponding to the IPL bus.
本願において開示される発明のうち代表的なものによって得られる効果を簡単に説明すれば下記のとおりである。 The effects obtained by the representative ones of the inventions disclosed in the present application will be briefly described as follows.
すなわち、符号データ用バスを使用してイニシャルプログラムの書き込みを可能にすることで、IPL用バスに対応する外部端子を省略することができる。 That is, by allowing the initial program to be written using the code data bus, an external terminal corresponding to the IPL bus can be omitted.
1.実施の形態の概要
先ず、本願において開示される発明の代表的な実施の形態について概要を説明する。代表的な実施の形態についての概要説明で括弧を付して参照する図面中の参照符号はそれが付された構成要素の概念に含まれるものを例示するに過ぎない。
1. First, an outline of a typical embodiment of the invention disclosed in the present application will be described. Reference numerals in the drawings referred to in parentheses in the outline description of the representative embodiments merely exemplify what are included in the concept of the components to which the reference numerals are attached.
〔1〕本発明の代表的な実施の形態に係る半導体装置(210)は、プログラムを格納可能なメモリ(102)と、上記メモリに格納されているプログラムを実行可能なCPU(101)と、データストリームを伝達可能な符号データ用バスに結合される第1外部端子(EX_D、EX_CS、EX_WE、EX_OE)とを含み、上記データストリームの処理を行う。この半導体装置(210)は、上記第1外部端子を介して上記メモリにイニシャルプログラムを書き込むための動作を制御可能な制御回路(103)を含む。この制御回路は、上記イニシャルプログラムを上記メモリに書き込むための書き込み用アドレス信号を生成する回路を含む。 [1] A semiconductor device (210) according to a representative embodiment of the present invention includes a memory (102) capable of storing a program, a CPU (101) capable of executing a program stored in the memory, Including a first external terminal (EX_D, EX_CS, EX_WE, EX_OE) coupled to a code data bus capable of transmitting the data stream, and performs processing of the data stream. The semiconductor device (210) includes a control circuit (103) capable of controlling an operation for writing an initial program to the memory via the first external terminal. The control circuit includes a circuit that generates a write address signal for writing the initial program into the memory.
〔2〕上記〔1〕において、上記メモリをSRAMとすることができる。 [2] In the above [1], the memory can be an SRAM.
〔3〕上記〔2〕において、上記制御回路(103)は、内蔵SRAMアクセスモードと内蔵SRAMブートモードとを有する。そして上記制御回路(103)は、上記内蔵SRAMアクセスモードにおいて上記SRAM(102)への書き込み用アドレスを生成することによって上記イニシャルプログラムを上記SRAMに書き込み、上記内蔵SRAMブートモードにおいて上記SRAM内のイニシャルプログラムを上記CPU(101)に実行させる。 [3] In the above [2], the control circuit (103) has a built-in SRAM access mode and a built-in SRAM boot mode. The control circuit (103) writes the initial program to the SRAM by generating an address for writing to the SRAM (102) in the built-in SRAM access mode, and the initial in the SRAM in the built-in SRAM boot mode. The CPU (101) is caused to execute the program.
〔4〕上記〔3〕において、上記半導体装置(210)には、リセット状態を指定可能な第2外部端子(RESET)と、動作モード設定用の第3外部端子(MODE0,1)とを設けることができる。このとき、上記第2外部端子を介して指定されたリセット状態が解除されたときの上記第3外部端子の論理状態に応じて上記内蔵SRAMアクセスモード、又は上記内蔵SRAMブートモードが指定される。 [4] In the above [3], the semiconductor device (210) is provided with a second external terminal (RESET) capable of designating a reset state and a third external terminal (MODE0, MODE) for setting an operation mode. be able to. At this time, the built-in SRAM access mode or the built-in SRAM boot mode is designated according to the logic state of the third external terminal when the reset state designated via the second external terminal is released.
〔5〕上記〔4〕において、上記制御回路(103)は、上記マスタプロセッサから上記SRAMへのダイレクトアクセスを制御するためのダイレクトアクセスモジュール(301)と、上記ダイレクトアクセスモジュールを上記SRAMに選択的に結合させるための切り替え回路(302)とを含んで構成することができる。このとき、上記ダイレクトアクセスモジュールは、上記内蔵SRAMアクセスモードにおいて上記切り替え回路によって上記SRAM(102)に選択的に結合された状態で上記SRAMへの書き込み用アドレスを生成する。 [5] In the above [4], the control circuit (103) selectively selects the direct access module (301) for controlling direct access from the master processor to the SRAM, and the direct access module as the SRAM. And a switching circuit (302) for coupling to the circuit. At this time, the direct access module generates an address for writing to the SRAM while being selectively coupled to the SRAM (102) by the switching circuit in the built-in SRAM access mode.
〔6〕上記〔5〕において、上記ダイレクトアクセスモジュール(301)は、上記SRAM(102)への書き込み用アドレス及び上記SRAMからの読み出し用アドレスをシーケンシャルに生成するアドレス生成回路(301A)を含んで構成することができる。 [6] In the above [5], the direct access module (301) includes an address generation circuit (301A) that sequentially generates an address for writing to the SRAM (102) and an address for reading from the SRAM. Can be configured.
〔7〕上記〔6〕において、上記アドレス生成回路(301A)は、上記SRAM(102)への書き込み用アドレス及び上記SRAMからの読み出し用アドレスを、上記SRAMの先頭番地を初期値とするインクリメント動作によってシーケンシャルに生成するように構成することができる。 [7] In the above [6], the address generation circuit (301A) increments the address for writing to the SRAM (102) and the address for reading from the SRAM with the initial address of the SRAM as an initial value. Can be configured to generate sequentially.
〔8〕本発明の代表的な実施の形態に係るマルチプロセッサシステム(200)は、マスタプロセッサ(203)と、上記マスタプロセッサに従属するスレーブプロセッサ(210)と、上記マスタプロセッサと上記スレーブプロセッサとの間でデータストリームのやり取りを可能とする符号データ用バスとを含む。上記スレーブプロセッサは、プログラムを格納可能なメモリ(102)と、上記メモリに格納されているプログラムを実行可能なCPU(101)と、上記符号データ用バスに結合された第1外部端子(EX_D、EX_CS、EX_WE、EX_OE)と、上記マスタプロセッサから上記符号データ用バス及び上記第1外部端子を介して上記メモリにイニシャルプログラムを書き込むための動作を制御可能な制御回路(103)とを含む。そして上記制御回路は、上記イニシャルプログラムを上記メモリに書き込むための書き込み用アドレス信号を生成する回路を含む。 [8] A multiprocessor system (200) according to a representative embodiment of the present invention includes a master processor (203), a slave processor (210) subordinate to the master processor, the master processor, and the slave processor. And a code data bus that enables exchange of data streams between them. The slave processor includes a memory (102) capable of storing a program, a CPU (101) capable of executing a program stored in the memory, and a first external terminal (EX_D, EX_CS, EX_WE, EX_OE) and a control circuit (103) capable of controlling an operation for writing an initial program from the master processor to the memory via the code data bus and the first external terminal. The control circuit includes a circuit that generates a write address signal for writing the initial program to the memory.
〔9〕上記〔8〕において、上記メモリをSRAMとすることができる。 [9] In the above [8], the memory can be an SRAM.
〔10〕上記〔9〕において、上記制御回路(103)は、内蔵SRAMアクセスモードと内蔵SRAMブートモードとを含む。このとき上記制御回路(103)は、上記内蔵SRAMアクセスモードにおいて上記SRAM(102)への書き込み用アドレスを生成することによって上記イニシャルプログラムを上記SRAMに書き込み、上記内蔵SRAMブートモードにおいて上記SRAM内のイニシャルプログラムを上記CPU(101)に実行させる。 [10] In the above [9], the control circuit (103) includes a built-in SRAM access mode and a built-in SRAM boot mode. At this time, the control circuit (103) writes the initial program to the SRAM by generating an address for writing to the SRAM (102) in the built-in SRAM access mode, and stores the internal program in the SRAM in the built-in SRAM boot mode. The CPU (101) is made to execute an initial program.
〔11〕上記〔10〕において、上記スレーブプロセッサ(210)には、リセット状態を指定可能な第2外部端子(RESET)と、動作モード設定用の第3外部端子(MODE0,1)とを設けることができる。このとき上記第2外部端子を介して指定されたリセット状態が解除されたときの上記第3外部端子の論理状態に応じて上記内蔵SRAMアクセスモード、又は上記内蔵SRAMブートモードが指定される。 [11] In the above [10], the slave processor (210) is provided with a second external terminal (RESET) capable of designating a reset state and a third external terminal (MODE0, 1) for setting an operation mode. be able to. At this time, the built-in SRAM access mode or the built-in SRAM boot mode is designated according to the logic state of the third external terminal when the reset state designated via the second external terminal is released.
〔12〕上記〔11〕において、上記制御回路(103)は、上記マスタプロセッサから上記SRAMへのダイレクトアクセスを制御するためのダイレクトアクセスモジュール(301)と、上記ダイレクトアクセスモジュールを上記SRAMに選択的に結合させるための切り替え回路(302)とを含んで構成することができる。このとき、上記ダイレクトアクセスモジュールは、上記内蔵SRAMアクセスモードにおいて上記切り替え回路によって上記SRAM(102)に選択的に結合された状態で上記SRAMの書き込みアドレスを生成する。 [12] In the above [11], the control circuit (103) selectively selects the direct access module (301) for controlling direct access from the master processor to the SRAM, and the direct access module as the SRAM. And a switching circuit (302) for coupling to the circuit. At this time, the direct access module generates the write address of the SRAM while being selectively coupled to the SRAM (102) by the switching circuit in the built-in SRAM access mode.
〔13〕上記〔12〕において、上記ダイレクトアクセスモジュール(301)は、上記内蔵SRAMアクセスモードにおいて上記SRAM(102)への書き込み用アドレス及び上記SRAMからの読み出し用アドレスをシーケンシャルに生成するアドレス生成回路(301A)を含んで構成することができる。 [13] In [12], the direct access module (301) sequentially generates a write address to the SRAM (102) and a read address from the SRAM in the built-in SRAM access mode. (301A) can be included.
〔14〕上記〔13〕において、上記アドレス生成回路(301A)は、上記SRAM(102)への書き込み用アドレス及び上記SRAMからの読み出し用アドレスを、上記SRAMの先頭番地を初期値とするインクリメント動作によってシーケンシャルに生成するように構成することができる。 [14] In the above [13], the address generation circuit (301A) increments the address for writing to the SRAM (102) and the address for reading from the SRAM with the initial address of the SRAM as an initial value. Can be configured to generate sequentially.
2.実施の形態の詳細
実施の形態について更に詳述する。
2. Details of Embodiments Embodiments will be further described in detail.
図2には、本発明にかかるマルチプロセッサシステムの一例とされるデジタルスチルカメラ(DSC)の全体的な構成例が示される。 FIG. 2 shows an overall configuration example of a digital still camera (DSC) as an example of a multiprocessor system according to the present invention.
このデジタルスチルカメラ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に結合可能とされる。
The digital
図1には、上記動画コーデック210の構成例が示される。
FIG. 1 shows a configuration example of the moving
上記動画コーデック210は、特に制限されないが、CPU101、SRAM(Static Random Access Memory)102、ダイレクトアクセスコントロール回路(DACC)103、ROM104、コーデックエンジン(Codec Eng)105、符号入出力回路106、及び画像入出力回路107を含み、公知の半導体集積回路製造技術により、単結晶シリコン基板などの一つの半導体基板に形成される。CPU101、コーデックエンジン105、符号入出力回路106、及び画像入出力回路107は、内部バス109に結合される。SRAM102、及びROM104はダイレクトアクセスコントロール回路103に結合される。
The
上記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を介してシステムプログラムが転送される。
The
図3には、上記ダイレクトアクセスコントロール回路103の構成例が示される。
FIG. 3 shows a configuration example of the direct
上記ダイレクトアクセスコントロール回路103は、SRAMダイレクトアクセスモジュール301、アクセス元切り替え回路302、及びブートアドレス制御回路303を含む。
The direct
SRAMダイレクトアクセスモジュール301は、SRAM102のアドレス信号を生成するアドレス生成回路301Aと、メインプロセッサ203からSRAM102へのアクセスをCPU101の介在なしに行うためのアクセス制御回路301Bとを有する。アドレス生成回路301Aは、SRAM102への書き込み用アドレス信号を生成する。この書き込み用アドレス信号は、上記SRAM102の先頭番地からシーケンシャルに生成される。アドレス生成回路301Aにより生成されたアドレス信号、及びアクセス制御回路301Bからの制御信号は、アクセス元切り替え回路302を介してSRAM102に伝達される。
The SRAM
上記ブートアドレス制御回路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をアクセスすることができる。
The boot
上記構成の動画コーデック210は、複数の動作モードとして、例えば図4に示されるように、CS空間ブートモード、内蔵ROMブートモード、内蔵SRAMブートモード、内蔵SRAMアクセスモードを有する。各動作モードはメインプロセッサ203によって指定される。上記CS空間ブートモードでは、動画コーデック210の外部に配置されたROMなどに格納されているイニシャルプログラムから起動される。内蔵ROMブートモードでは、ROM104に格納されているイニシャルプログラムから起動される。内蔵SRAMブートモードでは、SRAM102に格納されているイニシャルプログラムから起動される。内蔵SRAMアクセスモードでは、SRAM102へのイニシャルプログラムの書き込みを行うことができる。
The moving
次に、図3に示される動画コーデック210における外部端子仕様を図5に基づいて説明する。
Next, external terminal specifications in the
動作モード設定に用いられる外部端子として、TEST、MODE0,1、RESETを挙げることができる。TEST、MODE0,1は入力専用の動作モード設定端子とされる。RESETはSoC全体を初期化するためのリセット端子であり、このリセット端子も入力専用端子とされる。 Examples of external terminals used for setting the operation mode include TEST, MODE0, 1, and RESET. TEST, MODE0, 1 are input-only operation mode setting terminals. RESET is a reset terminal for initializing the entire SoC, and this reset terminal is also an input-only terminal.
メインプロセッサ203と動作コーデック210との間でデータストリームのやり取りを可能とする符号データ用バスに結合される外部端子として、EX_D、EX_CS、EX_WE、EX_OEを挙げることができる。EX_Dはデータ入出力に用いられる。EX_CSは入力専用端子であり、チップセレクト信号の取り込みに用いられる。EX_WEは入力専用端子であり、ライトイネーブル信号の取り込みに用いられる。EX_OEは入力専用端子であり、アウトプットイネーブル信号の取り込みに用いられる。
EX_D, EX_CS, EX_WE, and EX_OE can be listed as external terminals coupled to the code data bus that enables the data stream to be exchanged between the
尚、図3に示される動画コーデック210においては、後述するようにIPLバスに接続される外部端子が不要とされる。
Note that the moving
次に、動画コーデック210における動作モードの遷移について説明する。
Next, transition of operation modes in the moving
動画コーデック210における動作モードは、当該動画コーデック210における複数の外部端子(TEST、MODE0,1、RESET)の論理の組み合わせによって指定される。この指定はメインプロセッサ203によって行われる。
The operation mode in the moving
例えば図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へのイニシャルプログラムの転送が行われる。
For example, as shown in FIG. 6, the
次に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との間でデータストリームのやり取りを行う。
Next, the
尚、アドレス生成回路301でSRAM102の読み出し用アドレスを生成することで、SRAM102の記憶情報を符号データ用バス経由でメインプロセッサ203に伝達することができる。このとき、外部端子は、EX_WEに代えてEX_OEがアサートされる。
The
ここで従来の技術に従えば、上記マスタプロセッサから上記動画コーデック内のSRAMに、イニシャルプログラムを書き込むための専用バスとしてIPL用バスが設けられ、このIPL用バスを介してイニシャルプログラムの伝達が行われることから、従来の動画コーデックには上記IPL用バスに対応する外部端子として、図5に示されるような各種外部端子A、D、CS、WE、OEを設ける必要があった。 According to the conventional technology, an IPL bus is provided as a dedicated bus for writing an initial program from the master processor to the SRAM in the moving image codec, and the initial program is transmitted via the IPL bus. Therefore, the conventional video codec has to be provided with various external terminals A, D, CS, WE, and OE as shown in FIG. 5 as external terminals corresponding to the IPL bus.
これに対して図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の外部端子数を低減することができる。
On the other hand, according to the configuration shown in FIG. 3, by setting the built-in SRAM access mode, the SRAM
この実施の形態によれば以下の作用効果が得られる。 According to this embodiment, the following effects can be obtained.
(1)図6に示されるように、RESETがハイ(H)レベルにネゲートされた状態で、TEST、MODE0がローレベル、MODE1がハイレベルにされている場合には、内蔵SRAMアクセスモードが指定され、これにより動画コーデック210は、リセット状態から内蔵SRAMアクセスモードに遷移される。この内蔵SRAMアクセスモードにおいては、CPU101の介在無しに、アクセス元切り替え回路302によってSRAMダイレクトアクセスモジュール301とSRAM102とが導通され、SRAMダイレクトアクセスモジュール301によってSRAM102の書き込み用アドレス信号の生成やSRAM102へのアクセス制御が行われる。このようなイニシャルプログラムの書き込みは、従来例のようにIPL用バスを用いてCPUを介在させて行うのに比べると、短時間で完了することができるので、イニシャルプログラムの書き込みから起動までの時間短縮を図ることができる。
(1) As shown in FIG. 6, when TEST and MODE0 are at low level and MODE1 is at high level while RESET is negated to high (H) level, the built-in SRAM access mode is designated. As a result, the moving
(2)メインプロセッサ203と動画コーデック210との間でデータストリームのやり取りを行うための符号データ用バスを、動作モードの切り替えによりイニシャルプログラムの伝達に使用することにより、IPL用バスが不要となるため、当該IPL用バスに結合するための各種外部端子A、D、CS、WE、OEを省略することができる。これにより、従来例に比べて動画コーデック210の外部端子数を低減することができる。
(2) By using the code data bus for exchanging the data stream between the
(3)上記ダイレクトアクセスコントロール回路103は、上記マスタプロセッサから上記SRAMへのダイレクトアクセスを制御するためのダイレクトアクセスモジュール301と、上記ダイレクトアクセスモジュールを上記SRAMに選択的に結合させるための切り替え回路302とを設けることで、容易に形成することができる。
(3) The direct
(4)上記アドレス生成回路301Aは、上記SRAM102への書き込み用アドレスを上記SRAM102の先頭番地からシーケンシャルに生成するが、このようなアドレス生成は、上記SRAM102の先頭番地を初期値として所定のアドレス単位でインクリメント動作を行うことで容易に実現できる。
(4) The
以上本発明者によってなされた発明を実施形態に基づいて具体的に説明したが、本発明はそれに限定されるものではなく、その要旨を逸脱しない範囲において種々変更可能であることは言うまでもない。 Although the invention made by the present inventor has been specifically described based on the embodiments, it is needless to say that the present invention is not limited thereto and can be variously modified without departing from the gist thereof.
例えば、データストリームのやり取りを行うための符号データ用バスなどのインタフェースが単方向の場合には、内蔵SRAMアクセスモードの設定により、データストリームのやり取りを行うための符号データ用バスなどのインタフェースを双方向に伝達することができように切り替えるようにしても良い。データストリームのやり取りを行うための符号データ用バスなどのインタフェースが双方向に伝達可能であれば、アドレス生成回路301でSRAM102の読み出し用アドレスを生成することで、SRAM102の記憶情報を符号データ用バス経由でメインプロセッサ203に伝達することができる。
For example, when an interface such as a code data bus for exchanging data streams is unidirectional, both interfaces such as a code data bus for exchanging data streams are set by setting the built-in SRAM access mode. It is also possible to switch so that it can be transmitted in the opposite direction. If an interface such as a code data bus for exchanging data streams can be transmitted bi-directionally, the
ダイレクトアクセスコントロール回路(DACC)103内のデータ伝送経路におけるデータ幅(32,16,8)は固定でも良いが、モード切り換えに連動してデータ幅を適宜に変更するようにしても良い。 The data width (32, 16, 8) in the data transmission path in the direct access control circuit (DACC) 103 may be fixed, but the data width may be appropriately changed in conjunction with mode switching.
101 CPU
102 SRAM
103 ダイレクトアクセスコントロール回路
104 ROM
105 コーデックエンジン
106 符号入出力回路
107 画像入出力回路
108 モバイルRAM
203 メインプロセッサ
210 動画コーデック
301 SRAMダイレクトアクセスモジュール
301A アドレス生成回路
301B アクセス制御回路
302 アクセス元切り替え回路
303 ブートアドレス制御回路
303A 経路選択回路
303B 選択制御回路
101 CPU
102 SRAM
103 Direct
105
203
Claims (14)
上記メモリに格納されているプログラムを実行可能なCPUと、
データストリームを伝達可能な符号データ用バスに結合される第1外部端子と、を含み、
上記符号データ用バスを介して上記第1外部端子から取り込まれたデータストリームを処理可能な半導体装置であって、
上記第1外部端子を介して上記メモリにイニシャルプログラムを書き込むための動作を制御可能な制御回路を含み、
上記制御回路は、上記イニシャルプログラムを上記メモリに書き込むための書き込み用アドレス信号を生成する回路を含むことを特徴とする半導体装置。 Memory that can store programs;
A CPU capable of executing a program stored in the memory;
A first external terminal coupled to a code data bus capable of transmitting a data stream,
A semiconductor device capable of processing a data stream captured from the first external terminal via the code data bus,
A control circuit capable of controlling an operation for writing an initial program to the memory via the first external terminal;
The semiconductor device, wherein the control circuit includes a circuit that generates a write address signal for writing the initial program into the memory.
動作モード設定用の第3外部端子と、を更に含み、
上記第2外部端子を介して指定されたリセット状態が解除されたときの上記第3外部端子の論理状態に応じて上記内蔵SRAMアクセスモード、又は上記内蔵SRAMブートモードが指定される請求項3記載の半導体装置。 The semiconductor device includes a second external terminal that can specify a reset state;
A third external terminal for setting the operation mode,
4. The built-in SRAM access mode or the built-in SRAM boot mode is designated according to the logic state of the third external terminal when the reset state designated via the second external terminal is released. Semiconductor device.
上記ダイレクトアクセスモジュールを上記SRAMに選択的に結合させるための切り替え回路と、を含み、
上記ダイレクトアクセスモジュールは、上記内蔵SRAMアクセスモードにおいて上記切り替え回路によって上記SRAMに選択的に結合された状態で上記SRAMへの書き込み用アドレスを生成する請求項4記載の半導体装置。 The control circuit includes a direct access module for controlling direct access from the master processor to the SRAM;
A switching circuit for selectively coupling the direct access module to the SRAM,
5. The semiconductor device according to claim 4, wherein the direct access module generates an address for writing to the SRAM while being selectively coupled to the SRAM by the switching circuit in the built-in SRAM access mode.
上記マスタプロセッサに従属するスレーブプロセッサと、
上記マスタプロセッサと上記スレーブプロセッサとの間でデータストリームのやり取りを可能とする符号データ用バスと、を含むマルチプロセッサシステムであって、
上記スレーブプロセッサは、プログラムを格納可能なメモリと、
上記メモリに格納されているプログラムを実行可能なCPUと、
上記符号データ用バスに結合された第1外部端子と、
上記マスタプロセッサから上記符号データ用バス及び上記第1外部端子を介して上記メモリにイニシャルプログラムを書き込むための動作を制御可能な制御回路と、を含み、
上記制御回路は、上記イニシャルプログラムを上記メモリに書き込むための書き込み用アドレス信号を生成する回路を含むことを特徴とするマルチプロセッサシステム。 A master processor;
A slave processor subordinate to the master processor;
A multi-processor system including a coded data bus that enables exchange of a data stream between the master processor and the slave processor,
The slave processor includes a memory capable of storing a program,
A CPU capable of executing a program stored in the memory;
A first external terminal coupled to the code data bus;
A control circuit capable of controlling an operation for writing an initial program to the memory from the master processor via the code data bus and the first external terminal,
The multiprocessor system, wherein the control circuit includes a circuit that generates a write address signal for writing the initial program into the memory.
動作モード設定用の第3外部端子と、を更に含み、
上記第2外部端子を介して指定されたリセット状態が解除されたときの上記第3外部端子の論理状態に応じて上記内蔵SRAMアクセスモード、又は上記内蔵SRAMブートモードが指定される請求項10記載のマルチプロセッサシステム。 The slave processor includes a second external terminal that can specify a reset state;
A third external terminal for setting the operation mode,
11. The built-in SRAM access mode or the built-in SRAM boot mode is designated according to the logic state of the third external terminal when the reset state designated via the second external terminal is released. Multiprocessor system.
上記ダイレクトアクセスモジュールを上記SRAMに選択的に結合させるための切り替え回路と、を含み、
上記ダイレクトアクセスモジュールは、上記内蔵SRAMアクセスモードにおいて上記切り替え回路によって上記SRAMに選択的に結合された状態で上記SRAMの書き込み用アドレスを生成する請求項11記載のマルチプロセッサシステム。 The control circuit includes a direct access module for controlling direct access from the master processor to the SRAM;
A switching circuit for selectively coupling the direct access module to the SRAM,
12. The multiprocessor system according to claim 11, wherein the direct access module generates a write address of the SRAM in a state in which the direct access module is selectively coupled to the SRAM by the switching circuit in the built-in SRAM access mode.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009235119A JP2011081700A (en) | 2009-10-09 | 2009-10-09 | Semiconductor device and multiprocessor system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009235119A JP2011081700A (en) | 2009-10-09 | 2009-10-09 | Semiconductor device and multiprocessor system |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2011081700A true JP2011081700A (en) | 2011-04-21 |
Family
ID=44075674
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2009235119A Withdrawn JP2011081700A (en) | 2009-10-09 | 2009-10-09 | Semiconductor device and multiprocessor system |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2011081700A (en) |
-
2009
- 2009-10-09 JP JP2009235119A patent/JP2011081700A/en not_active Withdrawn
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7900035B2 (en) | Electronic appliance and startup method | |
US7573504B2 (en) | Image recording apparatus, image recording method, and image compressing apparatus processing moving or still images | |
JP7022866B2 (en) | Image sensor, image sensor, operation method of image sensor, and program | |
CN106657763B (en) | Image processing apparatus and method | |
US9363440B2 (en) | Imaging device and imaging method that sets a phase difference between first and second synchronization signals | |
KR100663380B1 (en) | Imaging device and method for transferring image signal | |
KR20160008846A (en) | Image Device and method for operating the same | |
WO2010044175A1 (en) | Semiconductor device and semiconductor integrated circuit | |
US10771681B2 (en) | Imaging pickup apparatus of which display start timing and display quality are selectable, method of controlling the same | |
KR20080043102A (en) | Photograph apparatus and initialization method thereof | |
JP2013211715A (en) | Imaging device | |
JP4416315B2 (en) | Imaging device and method for controlling imaging device | |
JP2003224768A (en) | Digital camera | |
JP2013211724A (en) | Imaging apparatus | |
JP2011081700A (en) | Semiconductor device and multiprocessor system | |
JP6447595B2 (en) | Control device, process execution device, control method, process execution method, and control system | |
JP5906846B2 (en) | Electronic camera | |
JP2019092223A (en) | Electronic camera | |
KR100715522B1 (en) | Camera control apparatus, image data displaying apparatus and method thereof | |
JP2021082878A (en) | Imaging device | |
JPH10174048A (en) | Digital camera | |
US20080091966A1 (en) | Structure and method for booting an image signal processor | |
JP2021125748A (en) | Information processing device, imaging device, information processing method, and program | |
US8514324B2 (en) | Image input apparatus, a method of controlling thereof and a computer-readable storage medium | |
JP2021111803A (en) | Communication device and processing method for communication device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A300 | Withdrawal of application because of no request for examination |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20130108 |