JP2013097715A - Electronic device and program - Google Patents
Electronic device and program Download PDFInfo
- Publication number
- JP2013097715A JP2013097715A JP2011242417A JP2011242417A JP2013097715A JP 2013097715 A JP2013097715 A JP 2013097715A JP 2011242417 A JP2011242417 A JP 2011242417A JP 2011242417 A JP2011242417 A JP 2011242417A JP 2013097715 A JP2013097715 A JP 2013097715A
- Authority
- JP
- Japan
- Prior art keywords
- processor
- program
- memory
- unit
- volatile memory
- 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.)
- Pending
Links
Images
Landscapes
- Camera Bodies And Camera Details Or Accessories (AREA)
- Stored Programmes (AREA)
- Studio Devices (AREA)
Abstract
Description
本発明は、電子機器およびプログラムに関する。 The present invention relates to an electronic device and a program.
ハイバネートしたメモリイメージの一部をシステムRAMに先行転送してからオペレーティングシステムの実行を開始し、オペレーティングシステムの実行と並行して、先行転送されなかったメモリイメージを転送する情報処理装置が知られている(例えば、特許文献1参照)。
[先行技術文献]
[特許文献]
[特許文献1]特開2007−334383号公報
An information processing apparatus is known in which a part of a hibernated memory image is transferred in advance to the system RAM and then the execution of the operating system is started, and in parallel with the execution of the operating system, the memory image that has not been transferred in advance is transferred. (For example, refer to Patent Document 1).
[Prior art documents]
[Patent Literature]
[Patent Document 1] JP 2007-334383 A
プログラムをRAMに転送してからプログラムを実行することで、プログラムの実行時間を短縮することができる。しかし、RAMへの転送完了を待たなければ、RAM上に転送したプログラムを実行することができない。従来、プログラムの実行時間を短縮しつつ、プログラムの実行を開始するまでの時間を短縮することができないという課題があった。 By executing the program after transferring the program to the RAM, the execution time of the program can be shortened. However, the program transferred to the RAM cannot be executed without waiting for the completion of the transfer to the RAM. Conventionally, there has been a problem that it is not possible to shorten the time until the program execution is started while shortening the program execution time.
本発明の第1の態様においては、電子機器は、プログラムを格納する不揮発性メモリと、不揮発性メモリよりも読み出し速度が速い揮発性メモリと、動作を開始した場合に、プログラムに含まれる命令を不揮発性メモリから逐次に読み出して実行するプロセッサ部とを備え、プロセッサ部は、不揮発性メモリから読み出した命令の実行に並行して不揮発性メモリから揮発性メモリへプログラムを転送し、不揮発性メモリへの転送が完了した場合に、実行すべき命令の読み出し先を、不揮発性メモリから揮発性メモリに切り替える。 In the first aspect of the present invention, the electronic device transmits a nonvolatile memory storing the program, a volatile memory having a faster reading speed than the nonvolatile memory, and an instruction included in the program when the operation is started. A processor unit that sequentially reads out and executes from the non-volatile memory, and the processor unit transfers the program from the non-volatile memory to the volatile memory in parallel with the execution of the instruction read from the non-volatile memory. When the transfer is completed, the read destination of the instruction to be executed is switched from the nonvolatile memory to the volatile memory.
本発明の第2の態様においては、プログラムは、動作を開始した場合に、不揮発性メモリに格納されたコンピュータプログラムに含まれる命令を、不揮発性メモリから逐次に読み出して実行するステップと、不揮発性メモリから読み出した命令の実行に並行して、不揮発性メモリよりも読み出し速度が速い揮発性メモリへ不揮発性メモリからコンピュータプログラムを転送するステップと、不揮発性メモリへの転送が完了した場合に、実行すべき命令の読み出し先を、不揮発性メモリから揮発性メモリに切り替えるステップとをコンピュータに実行させる。 In the second aspect of the present invention, when the program starts operation, the program sequentially reads out the instructions included in the computer program stored in the nonvolatile memory from the nonvolatile memory, and executes the instructions. In parallel with the execution of the instruction read from the memory, execute the step of transferring the computer program from the nonvolatile memory to the volatile memory that has a faster reading speed than the nonvolatile memory, and when the transfer to the nonvolatile memory is completed And causing the computer to execute a step of switching from a nonvolatile memory to a volatile memory.
なお、上記の発明の概要は、本発明の必要な特徴の全てを列挙したものではない。また、これらの特徴群のサブコンビネーションもまた、発明となりうる。 It should be noted that the above summary of the invention does not enumerate all the necessary features of the present invention. In addition, a sub-combination of these feature groups can also be an invention.
以下、発明の実施の形態を通じて本発明を説明するが、以下の実施形態は特許請求の範囲にかかる発明を限定するものではない。また、実施形態の中で説明されている特徴の組み合わせの全てが発明の解決手段に必須であるとは限らない。 Hereinafter, the present invention will be described through embodiments of the invention, but the following embodiments do not limit the invention according to the claims. In addition, not all the combinations of features described in the embodiments are essential for the solving means of the invention.
図1は、撮像装置10の要部の模式断面を示す。撮像装置10は、レンズ交換式カメラの一例としての一眼レフレックスカメラである。撮像装置10は、カメラユニット30、一眼レンズユニット20および発光ユニット60を備える。一眼レンズユニット20および発光ユニット60は、カメラユニット30に装着される。
FIG. 1 shows a schematic cross section of the main part of the
カメラユニット30には、焦点距離、開放F値等の異なる複数のレンズユニット20が、交換レンズとして交換可能に装着される。レンズユニット20は、光軸11に沿って配列され鏡筒26に支持されたレンズ系21を備える。撮像レンズの一例としてのレンズ系21は、入射される被写体光束をカメラユニット30へ導く。図においては、レンズ系21を構成するレンズとして、前玉22と、フォーカスおよびズームを担うレンズ群23とを含む。レンズ群23は、焦点調整、画角調整の指示に応じて、レンズ群23に含まれる1以上のレンズが光軸方向に移動できるように構成されている。カメラユニット30は、焦点調整および画角調整の指示をレンズユニット20に送信することができる。
A plurality of
鏡筒26は、レンズ回路基板27を支持する。レンズ回路基板27は、レンズユニット20を制御する各種回路、電子素子等を搭載している。レンズユニット20は、カメラユニット30との接続部にレンズマウント29を備え、カメラユニット30が備えるカメラマウント31と係合して、カメラユニット30と一体化する。レンズマウント29とカメラマウント31とはそれぞれ通信端子を備えており、マウント同士が係合したときに互いの通信端子が接続される。これにより、レンズ回路基板27に搭載された各種回路、電子素子等は、カメラユニット30側と電気的に接続される。
The
カメラユニット30は、レンズユニット20から入射される被写体光束を反射するメインミラー32と、メインミラー32で反射された被写体光束が結像するピント板33を備える。メインミラー32は、ミラーボックス内でメインミラー回転軸34周りに揺動して、光軸11を中心とする被写体光束中に斜設される斜設状態と、被写体光束から退避する退避状態を取り得る。サブミラー40は、メインミラー32が被写体光束から退避する場合は、メインミラー32に連動して被写体光束から退避する。メインミラー回転軸34は、ミラーボックスの側壁に支持される。
The
ライブビューボタンが押し下げられた場合、または、レリーズボタンが最下部まで押し下げられた場合、破線で示した退避状態を取る。例えば、メインミラー32が被写体光束中に斜設された状態で、ライブビューボタンが押し下げられた場合またはレリーズボタンが最下部まで押し下げられた場合、メインミラー32は破線で示した退避位置に移動する。ライブビューボタンが押し下げられた場合、メインミラー32は再度ライブビューボタンが押し下げられるまで退避位置に留まる。一方、レリーズボタンが押し下げられた場合は、所定の撮像動作を終えると、メインミラー32はダウンされ元の斜設状態の位置に戻される。
When the live view button is pressed down or when the release button is pressed down to the lowest position, the retracted state indicated by the broken line is taken. For example, when the live view button is pressed down or the release button is pressed down to the lowest position while the
フォーカルプレーンシャッタ43および撮像素子36は、光軸11に沿って配列されている。メインミラー32およびサブミラー40が退避状態である場合に、被写体光束は、レンズ系21を透過してカメラユニット30へ入射し、ミラーボックス内部と開放状態のフォーカルプレーンシャッタ43を通過して、撮像素子36の受光面で結像する。
The
撮像素子36は、撮像素子36は、受光面で結像した被写体像を電気信号として出力する複数の光電変換素子を有する。光電変換素子としては、例えばCMOSセンサ、CCDセンサ等を例示することができる。撮像素子36は、カメラ処理部50と接続される。カメラ処理部50には、撮像素子36で光電変換された電気信号を処理するASIC、カメラユニット30の全体を制御するプロセッサ等の電気素子が搭載されている。
The
カメラユニット30の背面には液晶モニタ等による表示ユニット53が配設されている。表示ユニット53は、撮像素子36に含まれる光電変換素子が出力した画像信号から生成された画像を表示する。表示ユニット53は、カメラ処理部50内のASICによって被写体像の電気信号から生成された表示用画像データを用いて、被写体像を表示する。表示ユニット53は、撮像後の静止画像に限らず、各種メニュー情報、撮像情報、告知情報等を表示する。ライブビュー時には、被写体に対して焦点調節をしながら、撮像素子36の受光面に結像した被写体像の電気信号からカメラ処理部50内のASICによって表示用画像データが生成され、生成された表示用画像データを用いて表示ユニット53が被写体像を表示する。
A
ピント板33は、撮像素子36の受光面と共役の位置に配置されている。ピント板33で結像した被写体像は、ペンタプリズム37で正立像に変換され、接眼光学系38を介してユーザに観察される。ペンタプリズム37の射出面上方には、測光素子39が配置される。測光素子39は、測光光学系35を介して、被写体像の輝度分布を検出するための光電変換素子である。測光素子39により検出された被写体像の輝度分布は、シャッタスピード、絞り値等を決定するためにカメラ処理部50において使用される。また、測光素子39により検出された被写体像の輝度分布は、人物の顔等を検出するためにカメラ処理部50内のASIC等において使用される。
The
斜設状態におけるメインミラー32の光軸11の近傍領域は、ハーフミラーとして形成されており、入射される被写体光束の一部が透過する。透過した被写体光束は、メインミラー32と連動して揺動するサブミラー40で反射されて、合焦ユニット42へ導かれる。合焦ユニット42に導かれた被写体光束は、合焦光学系を通じて合焦センサへ入射される。合焦センサは、複数の焦点調整領域のそれぞれにおいて合焦状態、前ピン状態、後ピン状態を示す位相差検出信号を出力する。前ピン状態、後ピン状態の場合には、位相差検出信号は合焦状態からのずれ量も示す。カメラ処理部50は、位相差検出方式による位相差AF(自動フォーカス)によって、レンズユニット20の焦点調節を行う。
A region near the optical axis 11 of the
カメラユニット30には着脱可能な二次電池54が収容される。二次電池54は、カメラユニット30に限らず、レンズユニット20にも電力を供給する。電源がONされた場合に、二次電池54から電力がカメラ処理部50等に供給される。
The
発光ユニット60は、被写体を照明する照明光を発光する。発光ユニット60とカメラユニット30とは、発光ユニット60が有するマウント部69とカメラユニット30が有するマウント部41とを介して接続される。発光ユニット60は、キセノンランプ等の発光部61、反射板62、フレネルレンズ63、電池等のバッテリ65、および、発光ユニット制御部66を有する。発光ユニット制御部66は、バッテリ65から電力を供給して発光部61を発光させることにより、反射板62およびフレネルレンズ63を介して照明光を閃光させる。発光ユニット制御部66は、カメラ処理部50からの発光指示信号に基づき発光等の制御を行う。
The light emitting unit 60 emits illumination light that illuminates the subject. The light emitting unit 60 and the
図2は、撮像装置10のシステム構成を概略的に示すブロック図である。撮像装置10におけるシステムは、レンズユニット20、カメラユニット30および発光ユニット60のそれぞれに対応して、レンズシステム制御部71を中心とするレンズ制御系と、制御ユニット52を中心とするカメラ制御系と、発光ユニット制御部66を中心とする発光制御系とにより構成される。レンズ制御系とカメラ制御系とは、レンズマウント29とカメラマウント31とによって接続される通信端子を介して、相互に各種データ、制御信号の授受を行う。発光制御系とカメラ制御系とは、マウント部69とマウント部41とによって接続される通信端子を介して、相互に各種データ、制御信号の授受を行う。
FIG. 2 is a block diagram schematically showing the system configuration of the
カメラ制御系に含まれる画像処理部51は、例えばASICにより実現される。画像処理部51は、制御ユニット52からの指令に従って、撮像素子36から出力された被写体像の電気信号を処理して画像データを生成する。生成された画像データは、表示制御部55へ送られて、例えば撮像後の一定時間の間、表示ユニット53に表示される。これに並行して、画像処理部51は、生成した画像データを、予め定められた画像フォーマットに加工する。例えば、画像処理部51は、静止画用の画像フォーマットとしてのJPEGファイル、動画用の画像フォーマットとしてのMPEGファイル等に画像データを加工する。
The
外部接続IF56は、記録媒体とのデータ伝送を担う記録媒体IFと、外部接続IF56のうち外部機器との間の通信を担う外部機器IFとを有する。画像処理部51において生成された画像データは、記録媒体IFを介して記録媒体に記録される。また、画像データは、外部機器IFを介して外部機器に伝送され、外部機器において記録または処理される。外部機器としては、パーソナルコンピュータ、デジタルフォトスタンド等を例示することができる。外部機器が映像機器である場合、映像データとしての画像データは、外部機器IFを介して映像信号として送信される。
The external connection IF 56 includes a recording medium IF that is responsible for data transmission with the recording medium, and an external device IF that is responsible for communication with an external device of the external connection IF 56. The image data generated in the
また、画像処理部51は、制御ユニット52からの指令に従って、撮像素子36から出力された被写体像の電気信号を処理して、被写体像のコントラスト量を示すコントラスト評価値を生成する。制御ユニット52は、コントラスト評価値および合焦ユニット42から出力された位相差検出信号の少なくとも一方に基づき、焦点調節用の制御信号を生成して、レンズシステム制御部71に供給する。
Further, the
システムメモリ57は、例えばフラッシュメモリである。システムメモリ57は、NOR型フラッシュメモリであってよい。システムメモリ57は、不揮発性メモリの一例であり、撮像装置10を制御するプログラム、各種パラメータなどを格納する役割を担う。プログラムには、オペレーティングシステム(OS)を含む。OSは、カーネルイメージの他、各種の基本的なアプリケーション等のソフトウェアコンポーネントを含んでよい。
The
SDRAM58は、揮発性メモリの一例である。SDRAM58は、システムメモリ57よりも、高速にアクセスできるメモリである。例えば、SDRAM58は、システムメモリ57よりも読み出し速度が速い。制御ユニット52は、システムメモリ57に格納された情報よりも、SDRAM58に記憶された情報に短時間でアクセスすることができる。SDRAM58は、システムメモリ57から転送されたOSを記憶する。SDRAM58は、画像処理部51による処理中の画像データを一時的に保管するワークメモリとしての役割も担う。
The
駆動制御部59は、制御ユニット52からの指令に従って、メインミラー32、サブミラー40、フォーカルプレーンシャッタ43等を駆動する。操作入力部47は、レリーズボタン、ライブビューボタン、撮像モードスイッチ、動画撮影ボタン、電源ボタン等を含む。制御ユニット52は、操作入力部47に対するユーザ操作を示す信号を取得する。
The
レンズシステム制御部71は、制御ユニット52からの制御信号を受けて、レンズユニット20における各種動作を制御する。レンズメモリ72は、レンズ固有情報およびレンズシステム制御部71が実行するプログラム等を記憶している。レンズ駆動部73は、レンズシステム制御部71が制御ユニット52から受け取った制御信号に従って、フォーカスレンズ、ズームレンズ、絞り28等を駆動する。また、レンズシステム制御部71は、制御ユニット52からの要求に応じて、レンズ固有情報を制御ユニット52に送信する。
The lens
発光ユニット制御部66は、制御ユニット52からの制御信号を受けて、発光ユニット60の全体を制御する。発光ユニット制御部66は、制御ユニット52から受け取った制御信号に従って発光部61を駆動する。また、66は、レンズシステム制御部71は、制御ユニット52からの要求に応じて、発光ユニット60の固有情報を制御ユニット52に送信する。
The light emitting
図3は、制御ユニット52のブロック構成の一例を示す。本例において、制御ユニット52は、プロセッサの論理アドレス空間を物理メモリアドレス空間にマッピングするメモリ管理ユニットを有する。物理アドレスとしては、システムメモリ57のアドレス、SDRAM58のアドレスを例示することができる。
FIG. 3 shows an example of a block configuration of the
本例において、制御ユニット52はマルチプロセッサユニットである。制御ユニット52は、第1プロセッサ310および第2プロセッサ320を有する。第1プロセッサ310および第2プロセッサ320は、割り込みライン330を介して相互に割り込みを行う。第1プロセッサ310および第2プロセッサ320は、SDRAM58の少なくとも一部のメモリ領域を共有する。
In this example, the
第1プロセッサ310は、命令を実行する実行部314と、メモリ管理ユニット312と、キャッシュ316とを有する。メモリ管理ユニット312は、第1プロセッサ310の論理アドレス空間を物理メモリ空間にマッピングする。メモリ管理ユニット312は、第1プロセッサ310の論理アドレスを物理アドレスに変換する。実行部314は、論理アドレスを通じて、メモリ管理ユニット312がマッピングしたシステムメモリ57またはSDRAM58のアドレスにアクセスすることができる。キャッシュ316は、システムメモリ57またはSDRAM58から転送された命令およびデータをキャッシュする。また、キャッシュ316は、実行部314から転送されたデータをキャッシュする。実行部314が要求した論理アドレスに対応する命令およびデータがキャッシュ316に存在する場合、実行部314は、キャッシュ316に対してアクセスする。
The
第2プロセッサ320は、実行部324と、メモリ管理ユニット322と、キャッシュ326とを有する。実行部324、メモリ管理ユニット322およびキャッシュ326は、それぞれ実行部314、メモリ管理ユニット312およびキャッシュ316と同様の機能および構成を有するので、動作の詳細について説明を省略する。
The
第1プロセッサ310は、動作を開始した場合に、システムメモリ57に格納されたOSに含まれる命令を、システムメモリ57から逐次に読み出して実行する。具体的には、操作入力部47の一部としての電源ボタンがONされた場合に、命令をシステムメモリ57から逐次に読み出して実行する。具体的には、実行部314が、システムメモリ57から読み出した命令を実行する。電源ボタンがONされた場合に、実行部314がシステムメモリ57から命令を読み出して実行するので、撮像装置10を制御するための動作を速やかに開始することができる。
When the
なお、命令をシステムメモリ57から逐次に読み出して実行するとは、実行部314がシステムメモリ57のアドレスを指定して読み出しを行うことを示す。したがって、実行部314が要求した命令がキャッシュ316に存在する場合に、実行部314がキャッシュ316から提供された命令を実行することも、命令をシステムメモリ57から逐次に読み出して実行することに該当する。命令をSDRAM58から逐次に読み出して実行することについても同様である。
Note that “reading and executing instructions sequentially from the
第2プロセッサ320は、第1プロセッサ310における命令の実行に並行して、システムメモリ57からSDRAM58へOSを転送する。第1プロセッサ310は、第2プロセッサ320によるシステムメモリ57への転送が完了した場合に、実行すべき命令の読み出し先を、システムメモリ57からSDRAM58に切り替える。具体的には、第1プロセッサ310は、SDRAM58へのOSの転送が完了した場合に、第1プロセッサ310のメモリ空間のうち、OSが格納されているシステムメモリ57に対応するメモリ空間を、SDRAM58内のOSが転送されたメモリ空間に切り替える。より具体的には、SDRAM58へのOSの転送が完了した場合に、メモリ管理ユニット312が、プロセッサにマッピングされた論理的なアドレス空間のうち、OSが格納されているシステムメモリ57に対応するアドレス空間を、SDRAM58内のOSが転送されたアドレス空間にアドレス変換する。
このように、制御ユニット52は、動作を開始した場合に、システムメモリ57に格納されたOSに含まれる命令を、システムメモリ57から逐次に読み出して実行する。制御ユニット52は、システムメモリ57から読み出した命令の実行に並行してシステムメモリ57からSDRAM58へOSを転送し、システムメモリ57への転送が完了した場合に、実行すべき命令の読み出し先を、システムメモリ57からSDRAM58に切り替える。具体的には、制御ユニット52は、SDRAM58への転送が完了した場合に、制御ユニット52のメモリ空間のうち、OSが格納されているシステムメモリ57に対応するメモリ空間を、SDRAM58内のOSが転送されたメモリ空間に切り替える。より具体的には、メモリ管理ユニットが、SDRAM58へのOSの転送が完了した場合に、制御ユニット52にマッピングされた論理的なアドレス空間のうち、OSが格納されているシステムメモリ57に対応するアドレス空間を、SDRAM58内のOSが転送されたアドレス空間にアドレス変換する。
The
As described above, when the operation starts, the
以上に説明した制御により、第1プロセッサ310は、撮像装置10の起動時にシステムメモリ57上でOSの実行を開始するので、速やかに撮像装置10の制御を開始することができる。そして、第1プロセッサ310がシステムメモリ57上でOSの命令を実行している間に、第2プロセッサ320がバックグランドでOSをSDRAM58に転送することができる。そして、SDRAM58への転送が完了した場合に、第1プロセッサ310の論理的なアドレス空間が、システムメモリ57からSDRAM58のOSがロードされたアドレス空間へ切り替わる。このため、第1プロセッサ310は、切り替え前に実行した命令に引き続き、当該命令の次に実行すべき命令をSDRAM58から読み出して実行することができる。例えば、第1プロセッサ310は、切り替え前後でプログラムカウンタの値を変化させることなく、単に動作を再開するだけでよい。したがって、第1プロセッサ310は、システムメモリ57上での実行からSDRAM58上での実行へと、いわばシームレスに切り替えることができる。
With the control described above, the
図4は、論理アドレス空間にマッピングされる物理アドレス空間の一例を模式的に示す。本例において、論理アドレス空間400は、第1プロセッサ310の論理アドレス空間である。本例は、第1プロセッサ310がシステムメモリ57上でOSを実行している場合におけるマッピング例である。
FIG. 4 schematically shows an example of a physical address space mapped to the logical address space. In this example, the
システムメモリ57の物理アドレス空間450には、第1プロセッサ310および第2プロセッサ320が実行する初期化コード、OSイメージ等が格納されている。第1プロセッサ310の論理アドレス空間410は、システムメモリ57の物理アドレス空間450にマッピングされている。したがって、第1プロセッサ310は、論理アドレス空間410に含まれるページにアクセスした場合、システムメモリ57の物理アドレス空間450の対応するページがアクセスされる。第1プロセッサ310の論理アドレス空間420は、SDRAM58の物理アドレス空間460にマッピングされている。したがって、第1プロセッサ310は、論理アドレス空間420に含まれるページにアクセスした場合、SDRAM58の物理アドレス空間460の対応するページがアクセスされる。
The
OSイメージには、機械語の命令を格納するテキストセクション、初期値を持つ変数を格納するデータセクション、初期値を持たない変数の情報が格納されるBSSセクション等が含まれる。テキストセクションは、システムメモリ57内の物理アドレス空間452に格納されている。第1プロセッサ310は、物理アドレス空間452に対応する論理アドレス空間412にアクセスすることで、OSの命令を物理アドレス空間452から読み出すことができる。
The OS image includes a text section for storing machine language instructions, a data section for storing variables having initial values, a BSS section for storing information on variables having no initial values, and the like. The text section is stored in the
データセクションは、起動時にシステムメモリ57からSDRAM58に転送される。また、BSSセクションの情報に基づいて、OSで使用される変数がSDRAM58に展開される。SDRAM58の変数セクションには、これらOSの実行によって値が変更される可能性がある変数が格納される。変数セクションはSDRAM58の物理アドレス空間462に記憶される。第1プロセッサ310は、物理アドレス空間462に対応する論理アドレス空間422のページにアクセスすることで、変数にアクセスすることができる。
The data section is transferred from the
第1プロセッサ310は、論理アドレス空間412から機械語の命令を逐次に読み出して実行する。第1プロセッサ310は、カーネルを実行中に変数等のデータの読み書きをする場合に、論理アドレス422を介して、SDRAM58の物理アドレス空間462に対して読み書きを行う。
The
図5は、論理アドレス空間にマッピングされる物理アドレス空間の一例を模式的に示す。本例は、第1プロセッサ310がSDRAM58上でOSを実行している場合におけるマッピング例である。
FIG. 5 schematically shows an example of a physical address space mapped to the logical address space. This example is a mapping example when the
第2プロセッサ320がシステムメモリ57からSDRAM58に転送したテキストセクションは、SDRAM58の物理アドレス空間464に記憶されている。そして、第1プロセッサ310の論理アドレス空間412は、メモリ管理ユニット312によるアドレス変換によって、物理アドレス空間464にマッピングされる。したがって、第1プロセッサ310は、論理アドレス空間412のページを介して、SDRAM58の物理アドレス空間464の対応するページから命令を読み出すことができる。
The text section transferred from the
このため、第1プロセッサ310は、SDRAM58上でOSを実行している場合でも、論理アドレス空間412を指定して命令を読み出すことができる。このため、メモリ管理ユニット312がマッピングを切り替えることで、命令の読み出し先をシステムメモリ57からSDRAM58へとシームレスに切り替えることができる。
For this reason, even when the
なお、物理アドレス空間464および物理アドレス空間462は、第1プロセッサ310および第2プロセッサ320に共有されるアドレス空間である。したがって、第2プロセッサ320も、第1プロセッサ310と同一のOSを実行することができる。OSがSMP(Symmetric Multiprocessing)型のOSである場合、制御ユニット52は並列してOSを実行することができる。
The
図6は、制御ユニット52における動作シーケンスの一例を示す。本フローは、操作入力部47の一部としての電源ボタンがONされた場合に、開始される。
FIG. 6 shows an example of an operation sequence in the
第1プロセッサ310は、システムメモリ57から初期化コードを読み出して実行する(ステップS602)。具体的には、第1プロセッサ310は、電源ONされた場合にハードウェアリセットされ、リセットが解除されると、システムメモリ57の予め定められたアドレス、例えば初期化コードの先頭アドレスが、第1プロセッサ310のプログラムカウンタに設定される。第1プロセッサ310は、当該アドレスから命令の読み出しを開始して、初期化コードの命令をシステムメモリ57から逐次に読み出して実行する。第1プロセッサ310は、初期化コードに従って、ハードウェアの初期化、スタックポインタの設定等を実行する。
The
また、第1プロセッサ310は、初期化コードに従って、OSイメージのデータセクションおよびBSSセクションから、変数セクションをSDRAM58に生成して、初期化する。第1プロセッサ310は、OSの実行によって値が変更されない部分は、SDRAM58には転送しない。例えば、テキストセクションはSDRAM58に転送しない。
Further, the
なお、第1プロセッサ310は、上記の処理を実行する間、第2プロセッサ320に対してリセット信号を出力することで、第2プロセッサ320のリセット状態に維持してよい。第1プロセッサ310は、上記の初期化処理を実行後に、第2プロセッサ320のリセット状態を解除してよい。第2プロセッサ320のリセット状態を解除する動作については、後述する。
Note that the
続いて、第1プロセッサ310は、OSのスタートアップルーチンが格納されたシステムメモリ57内のアドレスにジャンプして、OSの実行を開始する(ステップS604)。具体的には、第1プロセッサ310は、システムメモリ57から逐次にOSの命令を読み出して、OSの実行を開始する。
Subsequently, the
第1プロセッサ310がOSを実行することで、カメラユニット30、レンズユニット20および発光ユニット60の各部が動作する。例えば、ユーザがレリーズボタンを押し込むと、静止画の撮像動作を実行する。また、動画撮影ボタンを操作すると、動画像の撮像動作を実行する。また、ユーザが再生ボタンを押し込むと、静止画像データまたは動画像データを再生する動作を実行する。また、ユーザが設定ボタンを押し込むと、撮像装置10を設定する動作を実行する。
When the
第2プロセッサ320の動作について説明する。第2プロセッサ320のリセットが解除されると、第2プロセッサ320は、第1プロセッサ310と同様に、システムメモリ57から第2プロセッサ320用の初期化コードを読み出して実行する(ステップS622)。なお、第2プロセッサ320のリセット解除は、第1プロセッサ310によって制御されてよい。第2プロセッサ320は、第2プロセッサ320用の初期化コードに従って、ハードウェアの初期化、スタックポインタの設定等を実行する。システムメモリ57から命令を読み出して実行する動作は、第1プロセッサ310と同様であるので、説明を省略する。
The operation of the
続いて、第2プロセッサ320は、初期化コードに含まれるOS転送コードに従って、システムメモリ57に格納されたOSをSDRAM58に転送する(ステップS624)。具体的には、第2プロセッサ320は、システムメモリ57に格納されたOSを1ページずつSDRAM58に転送する。より具体的には、第2プロセッサ320は、テキストセクションを1ページずつSDRAM58に転送する。ここで、第2プロセッサ320は、SDRAM58のうち第1プロセッサ310と共有するメモリ領域に、テキストセクションを転送する。
Subsequently, the
このように、第1プロセッサ310は、撮像装置10の起動時に、OSに含まれる命令をシステムメモリ57から逐次に読み出して実行する。一方、第2プロセッサ320は、第1プロセッサ310による命令の実行に並行して、SDRAM58のうち第1プロセッサ310と共有するメモリ領域に、OSを転送する。
As described above, the
続いて、第2プロセッサ320は、OSの転送が完了すると、転送が完了した旨を第1プロセッサ310に通知する(ステップS626)。例えば、第2プロセッサ320は、転送完了を割り込みにより通知する。割り込みが完了すると、第2プロセッサ320はアイドル状態に遷移する(ステップS628)。
Subsequently, when the transfer of the OS is completed, the
第1プロセッサ310は、第2プロセッサ320から割り込みを受けると、割り込みに対して予め定められたアドレスにジャンプして、物理アドレス空間へのマッピングを切り替える切替コードを実行する(ステップS606)。第1プロセッサ310が切替コードを実行することで、メモリ管理ユニット312のアドレス変換テーブルが変更され、OSの命令がSDRAM58から読み出されるようになる。これにより、第1プロセッサ310の論理アドレス空間412が、SDRAM58の物理アドレス空間464にマッピングされる。
When receiving an interrupt from the
続いて、第1プロセッサ310は、第2プロセッサ320がOSを実行できるように制御する(ステップS608)。具体的には、OSがSMP型のOSである場合、第2プロセッサ320をOSのディスパッチャに登録する。これにより、第2プロセッサ320は、タスクの割り当てを待つ状態となる(ステップS630)。
Subsequently, the
続いて、第1プロセッサ310は、OSの実行に戻る(ステップS610)。ステップS610においては、メモリ管理ユニット312によるアドレス変換により、OSの命令はSDRAM58の物理アドレス空間464から読み出される。また、第2プロセッサ320は、OSからタスクが割り当てられると、当該タスクを実行する(ステップS632)。これにより、第1プロセッサ310および第2プロセッサ320は並列にOSの命令を実行することができる。
Subsequently, the
図7は、初期化コード実行時の第1プロセッサ310の動作フローの一例を示す。本図は、ステップS602の一部の処理フローを示す。本処理フローが実行される前に、ハードウェアの初期化、SDRAM58上への変数セクションの生成等の処理が完了しているとする。本処理フローは、例えば初期化の最終段階において実行される。
FIG. 7 shows an example of the operation flow of the
第1プロセッサ310は、第2プロセッサ320のリセット状態を解除する(ステップS702)。図6に関連して説明したように、第2プロセッサ320のリセット状態が解除されると、第2プロセッサ320は、初期化コードの実行を開始して、続いてSDRAM58へOSを転送する処理を開始する。
The
続いて、第1プロセッサ310は、撮像モードを切り替える撮像モードスイッチの位置を示す値を取得する(ステップS704)。例えば、第1プロセッサ310は、撮像モードスイッチの出力に対応するIOアドレスにアクセスして、撮像モードスイッチの位置を示す値を取得する。続いて、第1プロセッサ310は、当該値を判断して、インターバル撮影が指示されているか否かを判断する(ステップS706)。インターバル撮影は、予め設定されたインターバルでの撮像を繰り返す撮像方法である。
Subsequently, the
インターバル撮影が指示されていない場合、OSのスタートアップルーチンを呼び(ステップS712)、初期化コードの実行を終了する。この場合、図6のステップS604において、第1プロセッサ310はシステムメモリ57上でOSを実行するので、撮像装置10は高速に起動することができる。したがって、例えばユーザがシャッタチャンスを逃す可能性を低減することができる。
If interval shooting is not instructed, the OS startup routine is called (step S712), and the execution of the initialization code is terminated. In this case, in step S604 in FIG. 6, the
インターバル撮影が指示されている場合、第1プロセッサ310は、OSの実行を開始せずに、OSがSDRAM58に転送されるのを待つ(ステップS708)。第2プロセッサ320から割り込みを受けると、ステップS606と同様に、メモリ空間の割り当てを変更する(ステップS710)。ステップS710の処理が完了すると、OSのスタートアップルーチンを呼び(ステップS712)、初期化コードの実行を終了する。この場合、ステップS604においては、第1プロセッサ310はSDRAM58上でOSを実行するので、命令を高速にフェッチすることができる。したがって、システムメモリ57上で動作させる場合と比較して、OSを高速に動作することができ、撮像装置10を高速に動作させることができる。
If interval shooting is instructed, the
なお、インターバル撮影とは、通常の動画撮影とは異なり、再生のフレームレートと、表示のフレームレートが異なる画像群を取得する撮像方法である。インターバル撮影では、例えば3分間隔で1フレームの被写体像を撮影して、動画像データが生成される。生成された動画像データは、例えば1秒あたり30フレームなどのように通常のフレームレートで表示される。したがって、動画像データをデフォルトで再生した場合、インターバル撮影を開始してから終了するまでの時間よりも短い時間で再生される。 Note that interval shooting is an imaging method that acquires a group of images having different playback frame rates and display frame rates, unlike normal movie shooting. In interval shooting, for example, one frame of a subject image is shot at intervals of 3 minutes, and moving image data is generated. The generated moving image data is displayed at a normal frame rate such as 30 frames per second. Therefore, when moving image data is played back by default, it is played back in a time shorter than the time from the start to the end of interval shooting.
インターバル撮影は、シャッタチャンスよりも、比較的に長期にわたる被写体変化を重視した撮影方法といえる。インターバル撮影では、比較的に長期にわたって被写体を撮影することになるので、撮影インターバル、インターバル撮影を終了するまでの時間、自動露出にするか否か等、多くの撮影パラメータを事前に設定することが多い。したがって、撮像装置10が起動してすぐにインターバル撮影を開始するケースは少ない。一方、ユーザにとっては多くの撮影パラメータをレスポンス良く設定できることが望ましい。本制御によれば、撮像モードがインターバル撮影に設定されている場合、SDRAM58にOSを転送してから実行するので、ユーザが撮影パラメータをレスポンス良く設定できる環境を提供することができる。
Interval shooting can be said to be a shooting method that emphasizes a subject change over a relatively long period rather than a photo opportunity. In interval shooting, the subject is shot for a relatively long period of time, so it is possible to set many shooting parameters in advance, such as the shooting interval, the time until the interval shooting ends, and whether to use automatic exposure. Many. Therefore, there are few cases in which interval shooting starts immediately after the
このように、制御ユニット52は、撮像モードが、予め設定されたインターバルで撮像を繰り返すインターバル撮影を行う撮像モードである場合に、OSに含まれる命令の実行に優先してOSをSDRAM58へ転送し、インターバル撮影を行う撮像モードでない場合に、OSに含まれる命令を、SDRAM58へのプログラムの転送に優先して実行する。なお、SDRAM58へのOSの転送を優先すべき撮像モードとしては、インターバル撮影の他、風景を撮影する風景モード等を例示することができる。すなわち、制御ユニット52は、撮像装置10の起動時に、撮像モードを示す情報を取得し、SDRAM58へのOSの転送を優先させるか否かを取得した撮像モードに基づいて判断し、OSの転送を優先させるべき場合に、プログラムに含まれる命令の実行に優先して、OSをSDRAM58へ転送する。
As described above, the
また、SDRAM58へのOSの転送を優先すべきか否かを、動作モードに基づいて決定してもよい。例えば、動作モードの一部としての再生モードにおいては、例えば動画データ等をレスポンス良く再生できることが望ましい。したがって、第1プロセッサ310は、例えば再生ボタンが押し込まれて再生モードで起動した場合、SDRAM58へのOSの転送を優先してよい。すなわち、制御ユニット52は、撮像装置10の起動時に、撮像装置10の動作モードを示す情報を取得し、SDRAM58へのOSの転送を優先させるか否かを取得した動作モードに基づいて判断し、OSの転送を優先させるべき場合に、OSに含まれる命令の実行に優先して、OSをSDRAM58へ転送してよい。
Further, whether to give priority to the transfer of the OS to the
なお、本動作フローでは、第1プロセッサ310は、SDRAM58へのOSの転送を優先すべきか否かを、システムメモリ57上でOSを実行する前に判断するとした。しかし、OSの実行コード内に、本動作フローに関する動作を実現するためのコードが含まれていてよい。この場合、第1プロセッサ310がOSを実行することにより、SDRAM58へのOSの転送を優先すべきと判断した場合、第1プロセッサ310よりも、第2プロセッサ320の実行を優先させるようにしてもよい。例えば、第1プロセッサ310における命令の実行を停止してよい。また、第1プロセッサ310における命令の実行を継続しつつ、第1プロセッサ310よりも高い優先度で第2プロセッサ320を動作させてもよい。
In this operation flow, the
図8は、撮像装置10の起動から終了までの処理フローを示す。本フローは、操作入力部47の一部としての電源ボタンがONされた場合に、開始される。本フローは、制御ユニット52が主体となって撮像装置10の各部を制御することにより実行される。例えば、OSがSDRAM58に転送されるまでは、第1プロセッサ310が主体となって撮像装置10の各部を制御し、OSがSDRAM58に転送された後は、第1プロセッサ310および第2プロセッサ320が主体となって実行する。したがって、特に断らない限り、制御の主体を制御ユニット52と総称して説明する。
FIG. 8 shows a processing flow from the start to the end of the
ステップS800において、制御ユニット52は、初期設定を開始する。例えば、制御ユニット52は、撮像装置10を制御するための各種パラメータ等を、システムメモリ57からSDRAM58に展開する。そして、制御ユニット52は、例えば撮像モードスイッチ等を含む操作入力部47の状態、および、展開された各種パラメータに基づき、撮像装置10の各部の動作条件を設定する。例えば、撮像モードスイッチの位置に応じて、撮像モードを設定する。また、撮像モードに応じて、撮像条件や画像処理条件を設定する。例えば、撮像モードがポートレートモードの場合、人物が際立つように比較的開放に近い露出値が設定され、柔らかい表情が表現されるように画像処理においてエッジ強調を若干弱く適用するためのエッジ強調パラメータが設定される。また、赤目処理をするための赤目処理パラメータが設定される。
In step S800, the
続いて、ステップS802において、表示ユニット53への表示を行う。例えば、制御ユニット52は、表示制御部55を制御して、ステップS800で設定した撮像モード、撮像条件および画像処理条件等を識別する設定情報を、表示ユニット53に表示させる。したがって、ユーザは、現在設定されている撮像モード、撮像条件および画像処理条件等を、表示ユニット53を介して一目で理解することができる。ここで、撮像装置10の起動時には、OSはシステムメモリ57からスタートアップするので、OSをSDRAM58に転送してからスタートアップさせる場合と比較して、撮像装置10の設定を速やかにユーザに提示することができる。例えばユーザが現在の設定を単に確認するために電源をONした場合、ユーザは速やかに設定を確認することができる。
Subsequently, in step S802, display on the
続いて、ステップS804において、制御ユニット52は、操作入力部47に対するユーザ指示を判断する。ユーザ指示が諸設定を実行する指示である場合、制御ユニット52が主体となって、指示された設定処理を行う(ステップS806)。設定処理としては、撮像モードを設定する処理、撮像条件を設定する処理、画像処理条件を設定する処理等を例示することができる。
Subsequently, in step S804, the
また、制御ユニット52は、測光素子39の出力に基づいて、撮像時に発光ユニット60から発光させるべきか否かを決定する。その他、絞り値、シャッタスピード等の撮像条件がユーザから指示された場合、ユーザ指示に従って撮像条件の設定を行う。
Further, the
ステップS804において、ユーザ指示が撮影実行に関する指示であると判断された場合、撮像実行に関する処理を行う(ステップS812)。撮影実行に関する指示としては、ライブビューボタン、動画撮影ボタン、レリーズボタンに対する操作等を例示することができる。ステップS804におけるユーザ指示が画像の再生を実行する指示である場合、再生処理を実行する(ステップS822)。再生処理としては、記録媒体に記録された画像をサムネイル表示する処理、ユーザにより指示された画像を表示する処理等を例示することができる。 If it is determined in step S804 that the user instruction is an instruction relating to shooting execution, processing relating to imaging execution is performed (step S812). Examples of instructions related to shooting execution include operations on a live view button, a moving image shooting button, and a release button. If the user instruction in step S804 is an instruction to execute image reproduction, reproduction processing is executed (step S822). Examples of the reproduction process include a process for displaying an image recorded on a recording medium as a thumbnail, a process for displaying an image instructed by a user, and the like.
ステップS806、ステップS812、ステップS822の処理が完了すると、ステップS808に進み、電源をOFFするか否かを判断する。例えば、電源ボタンがOFF位置に切り替えられた場合や、電源がONされてから予め定められた期間、ユーザ指示無しの状態が継続した場合等に、電源をOFFすると判断する。電源をOFFすると判断した場合は動作を終了し、電源をOFFしないと判断した場合はステップ804に処理を移行させる。 When the processes of step S806, step S812, and step S822 are completed, the process proceeds to step S808, and it is determined whether or not to turn off the power. For example, it is determined that the power is turned off when the power button is switched to the OFF position, or when there is no user instruction for a predetermined period after the power is turned on. If it is determined that the power is to be turned off, the operation is terminated. If it is determined that the power is not to be turned off, the process proceeds to step 804.
図3から図8に関連して、制御ユニット52が2つのプロセッサを有するとして説明した。しかし、制御ユニット52は3以上のプロセッサを有してよい。すなわち、制御ユニット52は、複数のプロセッサを有してよい。制御ユニット52が3以上のプロセッサを有する場合、1つのプロセッサを、システムメモリ57からSDRAM58へOSを転送するプロセッサとして適用し、他の2以上のプロセッサには、システムメモリ57上でOSの命令を実行させてよい。
3 to 8, the
また、図3から図8において、特に図6において、制御ユニット52がSMP型のOSを動作させる場合を例示した。しかし、OSはAMP型であってもよい。この場合、第2プロセッサ320は、第1プロセッサ310用のOSを転送した後に、第1プロセッサ310が実行するOSとは異なるOSまたはプログラムを実行してよい。例えば、第2プロセッサ320は、画像データの符号化を実行するためのプログラム、外部接続IF56を通じてデータを記録媒体や外部機器等に出力するためのプログラムを実行してよい。
3 to 8, particularly in FIG. 6, the case where the
一方、第1プロセッサ310は、OSの実行によって、撮像装置10における撮像動作を制御してよい。また、第1プロセッサ310は、表示ユニット53への表示を制御するなど、ユーザIFに関する動作を制御してよい。撮像動作の制御としては、レンズユニット20の制御、駆動制御部59、発光ユニット60の制御等を例示することができる。このように、システムメモリ57からOSを駆動する第1プロセッサ310が、高速なレスポンス性が要求される制御を担当することで、ユーザに対して高速な応答性を提供することができる。
On the other hand, the
図9は、OSをSDRAM58に転送する動作フローの他の一例を示す。本例では、第1プロセッサ310が、OSの実行だけでなく、システムメモリ57からSDRAM58へOSを転送する処理を担う。例えば、OSがマルチタスクOSである場合、SDRAM58の実行をメインタスクとは異なるタスクで実行する。具体的には、第1プロセッサ310は、システムメモリ57上でOSを動作させながら、システムメモリ57からSDRAM58へOSを転送する転送タスクを実行する。第1プロセッサ310は、OSの実行を担当するメインタスクと転送タスクとを切り替えて、両タスクを並行して実行する。
FIG. 9 shows another example of an operation flow for transferring the OS to the
本動作フローは、電源ボタンがONされた場合に開始する。まず、第1プロセッサ310が、システムメモリ57から初期化コードを読み出して実行する(ステップS902)。具体的には、第2プロセッサ320のリセットを解除するなど、第2プロセッサ320に対する処理を除いて、ステップS602における動作と同様に動作する。ステップS902では、第1プロセッサ310は、ハードウェアの初期化、スタックポインタの設定、SDRAM58上への変数セクションの生成等の初期化を行う。
This operation flow starts when the power button is turned on. First, the
続いて、第1プロセッサ310は、OSのスタートアップルーチンが格納されたシステムメモリ57内のアドレスにジャンプして、OSの実行を開始する(ステップS904)。具体的には、第1プロセッサ310は、システムメモリ57から逐次にOSの命令を読み出して、OSの実行を開始する。ここではOSの実行をするタスクを、メインタスクと呼ぶ。
Subsequently, the
ここで、ステップS904内の処理として、第1プロセッサ310は転送タスクを生成する。そして、第1プロセッサ310は、転送タスクの動作を開始し(ステップS922)、ステップS904の処理と並行して実行する(ステップS924)。具体的には、第1プロセッサ310は、メインタスクとの間でタスク切り替えをしながら、バックグランドで転送タスクを実行する。
Here, as the processing in step S904, the
続いて、第1プロセッサ310は、転送タスクによるOSの転送が完了すると、転送が完了した旨をメインタスクに通知する(ステップS926)。例えば、転送完了をタスク間通信により通知する。通知が完了すると、転送タスクは停止する(ステップS928)。
Subsequently, when the transfer of the OS by the transfer task is completed, the
メインタスクにおいて転送完了の通知を受けた場合に、第1プロセッサ310は、第1プロセッサ310の物理アドレス空間へのマッピングを切り替える切替コードを実行する(ステップS906)。具体的には、ステップS606と同様に、メモリ管理ユニット312のアドレス変換テーブルを変更する。そして、第1プロセッサ310は、ステップS908に進み、OSの実行を継続する。ステップS908においては、メモリ管理ユニット312によるアドレス変換により、OSの命令はSDRAM58の物理アドレス空間464から読み出される。
When receiving a transfer completion notification in the main task, the
なお、ステップS924において、第1プロセッサ310は、メインタスクよりも低い優先度で転送タスクを実行してよい。しかし、撮像モードがインターバル撮影に設定されている場合には、メインタスクよりも高い優先度で転送タスクを実行してもよい。その他、撮像モードが風景モードの場合等に、メインタスクよりも高い優先度で転送タスクを実行してもよい。このように、撮像装置10の撮像モードに応じた優先度で、転送タスクを実行してよい。なお、OSの転送には、DMA(Direct Memory Access)を適用してよい。
In step S924, the
本図において第1プロセッサ310がメインタスクおよび転送タスクを実行するとした。しかし、第1プロセッサ310は、メインタスクおよび転送タスク以外の他のタスクを並列に実行してよい。
In the figure, the
また、第1プロセッサ310が、OSの実行と、SDRAM58へOSを転送する処理とを実行するとした。この場合、第2プロセッサ320は、第1プロセッサ310が実行するOSとは異なるOSを動作してよい。第2プロセッサ320が実行するOSは、第1プロセッサ310が実行するOSとは異なる機能を提供してよい。
In addition, the
以上の説明において、制御ユニット52がマルチプロセッサであるとした。しかし、制御ユニット52は、マルチコアプロセッサであってよい。マルチコアプロセッサの第1プロセッサコアが、上述した第1プロセッサ310の処理を実行し、マルチコアプロセッサの第2プロセッサコアが、上述した第2プロセッサ320の処理を実行してよい。
In the above description, the
また、制御ユニット52は、シングルプロセッサであってよい。例えば制御ユニット52が、OSを実行するプロセッサを一つ有する場合、当該プロセッサは、OSの命令を実行するタスクと、SDRAM58へOSを転送するタスクとを順次に切り替えて実行してよい。
The
以上の説明においては、メモリ管理ユニット312によるアドレス変換によって、制御ユニット52のメモリ空間を切り替えるとした。しかし、メモリ空間を、バンク切り替えによって切り替えてもよい。すなわち、メモリ管理ユニット312は、SDRAM58へのOSの転送が完了した場合に、プロセッサのメモリ空間のうち、OSが格納されているシステムメモリ57に対応するメモリ空間を、バンク切り替えによりSDRAM58内のOSが転送されたメモリ空間に切り替えてよい。
In the above description, the memory space of the
また、システムメモリ57も同様に、外部バスに接続された外部メモリであるとした。しかし、システムメモリ57は、制御ユニット52の内部に設けられた内部メモリであってよい。また、SDRAM58へ転送されるOSを格納する不揮発性メモリを、システムメモリ57とは別個に設けてもよい。
Similarly, the
本実施形態の撮像装置10に関連して説明した処理は、撮像装置10の各部、例えばプロセッサ等が、コンピュータプログラムに従って動作することにより、実現することができる。すなわち、当該処理を、いわゆるコンピュータ装置によって実現することができる。コンピュータ装置は、上述した処理の実行を制御するコンピュータプログラムをロードして、読み込んだコンピュータプログラムに従って動作して、当該処理を実行してよい。コンピュータ装置は、当該コンピュータプログラムを記憶しているコンピュータ読取可能な記録媒体を読み込むことによって、当該コンピュータプログラムをロードすることができる。
The processing described in relation to the
本実施形態において、撮像装置10を取り上げて電子機器の一例を説明した。撮像装置としては、レンズ交換式の一眼レフレックスカメラ、コンパクトデジタルカメラ、ミラーレス一眼カメラ、ビデオカメラ、撮像機能付きの携帯電話機、撮像機能付きの携帯情報端末、撮像機能付きのゲーム機器等の娯楽装置、スキャナ、ファクシミリ等、撮像機能を有する機器を適用の対象とすることができる。また、電子機器は、例えば、テレビ、ビデオ、デジタルフォトフレーム、プロジェクタ装置、ゲーム機器等の娯楽装置等、画像の表示等を行う電子画像装置として実現されてよい。
In the present embodiment, an example of the electronic apparatus has been described by taking up the
以上、本発明を実施の形態を用いて説明したが、本発明の技術的範囲は上記実施の形態に記載の範囲には限定されない。上記実施の形態に、多様な変更または改良を加えることが可能であることが当業者に明らかである。その様な変更または改良を加えた形態も本発明の技術的範囲に含まれ得ることが、特許請求の範囲の記載から明らかである。 As mentioned above, although this invention was demonstrated using embodiment, the technical scope of this invention is not limited to the range as described in the said embodiment. It will be apparent to those skilled in the art that various modifications or improvements can be added to the above-described embodiment. It is apparent from the scope of the claims that the embodiments added with such changes or improvements can be included in the technical scope of the present invention.
特許請求の範囲、明細書、および図面中において示した装置、システム、プログラム、および方法における動作、手順、ステップ、および段階等の各処理の実行順序は、特段「より前に」、「先立って」等と明示しておらず、また、前の処理の出力を後の処理で用いるのでない限り、任意の順序で実現しうることに留意すべきである。特許請求の範囲、明細書、および図面中の動作フローに関して、便宜上「まず、」、「次に、」等を用いて説明したとしても、この順で実施することが必須であることを意味するものではない。 The order of execution of each process such as operations, procedures, steps, and stages in the apparatus, system, program, and method shown in the claims, the description, and the drawings is particularly “before” or “prior to”. It should be noted that the output can be realized in any order unless the output of the previous process is used in the subsequent process. Regarding the operation flow in the claims, the description, and the drawings, even if it is described using “first”, “next”, etc. for convenience, it means that it is essential to carry out in this order. It is not a thing.
10 撮像装置、11 光軸、20 レンズユニット、21 レンズ系、22 前玉、23 レンズ群、26 鏡筒、27 レンズ回路基板、29 レンズマウント、30 カメラユニット、31 カメラマウント、32 メインミラー、33 ピント板、34 メインミラー回転軸、35 測光光学系、36 撮像素子、37 ペンタプリズム、38 接眼光学系、39 測光素子、40 サブミラー、41 マウント部、42 合焦ユニット、43 フォーカルプレーンシャッタ、47 操作入力部、50 カメラ処理部、51 画像処理部、52 制御ユニット、53 表示ユニット、54 二次電池、55 表示制御部、56 外部接続IF、57 システムメモリ、58 SDRAM、59 駆動制御部、60 発光ユニット、61 発光部、62 反射板、63 フレネルレンズ、65 バッテリ、66 発光ユニット制御部、69 マウント部、71 レンズシステム制御部、72 レンズメモリ、73 レンズ駆動部、310 第1プロセッサ、320 第2プロセッサ、312、322 メモリ管理ユニット、314、324 実行部、316、326 キャッシュ、330 割り込みライン、410、412、420、422 論理アドレス空間、450、452、460、462、464 物理アドレス空間
DESCRIPTION OF
Claims (14)
前記不揮発性メモリよりも読み出し速度が速い揮発性メモリと、
動作を開始した場合に、前記プログラムに含まれる命令を前記不揮発性メモリから逐次に読み出して実行するプロセッサ部と
を備え、
前記プロセッサ部は、前記不揮発性メモリから読み出した前記命令の実行に並行して前記不揮発性メモリから前記揮発性メモリへ前記プログラムを転送し、前記不揮発性メモリへの転送が完了した場合に、実行すべき命令の読み出し先を、前記不揮発性メモリから前記揮発性メモリに切り替える
電子機器。 A non-volatile memory for storing the program;
A volatile memory having a faster reading speed than the nonvolatile memory;
A processor unit that sequentially reads out and executes instructions included in the program from the nonvolatile memory when the operation is started;
The processor unit transfers the program from the nonvolatile memory to the volatile memory in parallel with the execution of the instruction read from the nonvolatile memory, and is executed when the transfer to the nonvolatile memory is completed. An electronic device that switches a read destination of an instruction to be transferred from the nonvolatile memory to the volatile memory.
請求項1に記載の電子機器。 When the transfer to the volatile memory is completed, the processor unit allocates a memory space corresponding to the nonvolatile memory in which the program is stored in the memory space of the processor unit in the volatile memory. The electronic device according to claim 1, wherein the electronic device is switched to a memory space to which the program is transferred.
前記命令を実行するプロセッサと、
前記揮発性メモリへの前記プログラムの転送が完了した場合に、前記プロセッサにマッピングされた論理的なメモリ空間のうち、前記プログラムが格納されている前記不揮発性メモリに対応するメモリ空間を、前記揮発性メモリ内の前記プログラムが転送されたメモリ空間にアドレス変換するメモリ管理部と
を有する請求項2に記載の電子機器。 The processor unit is
A processor for executing the instructions;
When the transfer of the program to the volatile memory is completed, out of the logical memory space mapped to the processor, the memory space corresponding to the nonvolatile memory in which the program is stored is changed to the volatile memory. The electronic device according to claim 2, further comprising: a memory management unit that converts an address into a memory space to which the program in the volatile memory is transferred.
前記プロセッサ部は、前記電子機器の起動時に、前記オペレーティングシステムに含まれる命令を前記不揮発性メモリから逐次に読み出して実行する
請求項1から3のいずれか一項に記載の電子機器。 The program is an operating system;
The electronic device according to any one of claims 1 to 3, wherein the processor unit sequentially reads and executes instructions included in the operating system from the nonvolatile memory when the electronic device is activated.
をさらに備え、
前記プログラムは、前記プロセッサ部が前記撮像部を制御するための命令を含む
請求項4に記載の電子機器。 An imaging unit;
The electronic device according to claim 4, wherein the program includes an instruction for the processor unit to control the imaging unit.
をさらに備え、
前記プログラムは、前記レンズ装置が有する1以上のレンズを前記プロセッサ部が制御するための命令を含む
請求項5に記載の電子機器。 A lens device;
The electronic apparatus according to claim 5, wherein the program includes an instruction for the processor unit to control one or more lenses included in the lens device.
請求項5または6に記載の電子機器。 The processor unit acquires information indicating an operation mode of the electronic device when the electronic device is activated, and based on the operation mode acquired whether to prioritize transfer of the program to the volatile memory. The electronic device according to claim 5, wherein when the determination is to give priority to transfer of the program, the program is transferred to the volatile memory in preference to execution of an instruction included in the program.
請求項7に記載の電子機器。 The processor unit acquires information indicating an imaging mode of the imaging unit when the electronic device is activated, and based on the imaging mode acquired whether to prioritize transfer of the program to the volatile memory. The electronic device according to claim 7, wherein when the determination is to give priority to transfer of the program, the program is transferred to the volatile memory in preference to execution of an instruction included in the program.
請求項8に記載の電子機器。 When the imaging mode of the imaging unit is an imaging mode for performing interval shooting in which imaging is repeated at a preset interval, the processor unit prioritizes execution of an instruction included in the program and volatiles the program. The electronic device according to claim 8, wherein the instruction included in the program is executed in preference to the transfer of the program to the volatile memory, when the mode is not an imaging mode in which the interval shooting is performed.
前記第1プロセッサは、前記電子機器の起動時に、前記オペレーティングシステムに含まれる命令を前記不揮発性メモリから逐次に読み出して実行し、
前記第2プロセッサは、前記第1プロセッサによる前記命令の実行に並行して、前記揮発性メモリのうち前記第1プロセッサと共有するメモリ領域に、前記オペレーティングシステムを転送する
請求項4から9のいずれか一項に記載の電子機器。 The processor unit includes a first processor and a second processor,
The first processor sequentially reads and executes instructions included in the operating system from the non-volatile memory when the electronic device is activated.
The said 2nd processor transfers the said operating system to the memory area shared with the said 1st processor among the said volatile memories in parallel with execution of the said instruction | indication by the said 1st processor. An electronic device according to any one of the above.
請求項10に記載の電子機器。 The electronic device according to claim 10, wherein the processor unit is a multi-core processor, the first processor is a first processor core of the multi-core processor, and the second processor is a second processor core of the multi-core processor. machine.
前記オペレーティングシステムは、マルチタスク・オペレーティングシステムであり、
前記プロセッサは、前記オペレーティングシステムの命令を実行するタスクと、前記揮発性メモリへ前記オペレーティングシステムを転送するタスクとを順次に切り替えて実行する
請求項4から9のいずれか一項に記載の電子機器。 The processor unit has one processor that executes the operating system,
The operating system is a multitasking operating system;
The electronic device according to any one of claims 4 to 9, wherein the processor sequentially switches and executes a task for executing an instruction of the operating system and a task for transferring the operating system to the volatile memory. .
プロセッサと、
前記揮発性メモリへの前記プログラムの転送が完了した場合に、前記プロセッサのメモリ空間のうち、前記プログラムが格納されている前記不揮発性メモリに対応するメモリ空間を、バンク切り替えにより前記揮発性メモリ内の前記プログラムが転送されたメモリ空間に切り替えるメモリ管理部と
を有する請求項1から3のいずれか一項に記載の電子機器。 The processor unit is
A processor;
When the transfer of the program to the volatile memory is completed, a memory space corresponding to the nonvolatile memory in which the program is stored in the memory space of the processor is changed in the volatile memory by bank switching. The electronic device according to claim 1, further comprising: a memory management unit that switches to a memory space to which the program is transferred.
前記不揮発性メモリから読み出した前記命令の実行に並行して、前記不揮発性メモリよりも読み出し速度が速い揮発性メモリへ前記不揮発性メモリから前記コンピュータプログラムを転送するステップと、
前記不揮発性メモリへの転送が完了した場合に、実行すべき命令の読み出し先を、前記不揮発性メモリから前記揮発性メモリに切り替えるステップと
をコンピュータに実行させるためのプログラム。 A step of sequentially reading out and executing instructions contained in the computer program stored in the nonvolatile memory from the nonvolatile memory when the operation is started;
Transferring the computer program from the non-volatile memory to a volatile memory having a higher read speed than the non-volatile memory in parallel with the execution of the instructions read from the non-volatile memory;
A program for causing a computer to execute a step of switching a read destination of an instruction to be executed from the nonvolatile memory to the volatile memory when the transfer to the nonvolatile memory is completed.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011242417A JP2013097715A (en) | 2011-11-04 | 2011-11-04 | Electronic device and program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011242417A JP2013097715A (en) | 2011-11-04 | 2011-11-04 | Electronic device and program |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2013097715A true JP2013097715A (en) | 2013-05-20 |
Family
ID=48619559
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2011242417A Pending JP2013097715A (en) | 2011-11-04 | 2011-11-04 | Electronic device and program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2013097715A (en) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2016042351A (en) * | 2014-08-13 | 2016-03-31 | ザ・ボーイング・カンパニーTheBoeing Company | Dynamic memory address remapping in computing systems |
US10341500B2 (en) | 2016-12-14 | 2019-07-02 | Canon Kabushiki Kaisha | Information processing apparatus and image reading apparatus |
JP2021004031A (en) * | 2020-09-04 | 2021-01-14 | 日立オートモティブシステムズ株式会社 | Automotive electronic control device |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000293433A (en) * | 1999-04-12 | 2000-10-20 | Nec Niigata Ltd | Program execution system |
JP2004078847A (en) * | 2002-08-22 | 2004-03-11 | Tamura Electric Works Ltd | Equipment with memory-switching means |
JP2006163714A (en) * | 2004-12-06 | 2006-06-22 | Fuji Photo Film Co Ltd | Imaging device |
JP2008015725A (en) * | 2006-07-05 | 2008-01-24 | Alpine Electronics Inc | Information processor and program activating method |
JP2010146142A (en) * | 2008-12-17 | 2010-07-01 | Nec Corp | Information processing apparatus, method of controlling startup of program, and startup control program |
-
2011
- 2011-11-04 JP JP2011242417A patent/JP2013097715A/en active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000293433A (en) * | 1999-04-12 | 2000-10-20 | Nec Niigata Ltd | Program execution system |
JP2004078847A (en) * | 2002-08-22 | 2004-03-11 | Tamura Electric Works Ltd | Equipment with memory-switching means |
JP2006163714A (en) * | 2004-12-06 | 2006-06-22 | Fuji Photo Film Co Ltd | Imaging device |
JP2008015725A (en) * | 2006-07-05 | 2008-01-24 | Alpine Electronics Inc | Information processor and program activating method |
JP2010146142A (en) * | 2008-12-17 | 2010-07-01 | Nec Corp | Information processing apparatus, method of controlling startup of program, and startup control program |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2016042351A (en) * | 2014-08-13 | 2016-03-31 | ザ・ボーイング・カンパニーTheBoeing Company | Dynamic memory address remapping in computing systems |
US10341500B2 (en) | 2016-12-14 | 2019-07-02 | Canon Kabushiki Kaisha | Information processing apparatus and image reading apparatus |
JP2021004031A (en) * | 2020-09-04 | 2021-01-14 | 日立オートモティブシステムズ株式会社 | Automotive electronic control device |
JP6998434B2 (en) | 2020-09-04 | 2022-01-18 | 日立Astemo株式会社 | Electronic control device for automobiles |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI241135B (en) | Camera, starting method of camera and program | |
JP4164202B2 (en) | Electronic device, driving method of electronic device, and computer-readable storage medium | |
US9871970B2 (en) | Imaging apparatus, control method, and storage medium storing program | |
KR101274558B1 (en) | Image capturing apparatus | |
JP2008261983A (en) | Camera | |
US10225482B2 (en) | Method of controlling photographing device including flash, and the photographing device | |
US20170324902A1 (en) | Interchangeable lens operable in reduced power modes, image capturing apparatus and storage medium storing control program | |
JP2013097715A (en) | Electronic device and program | |
JP2012159581A (en) | Imaging apparatus | |
JP2015210427A (en) | Imaging device, imaging system, automatic irradiation direction control method and program | |
JP6889566B2 (en) | Recording device and its control method | |
JP6032967B2 (en) | IMAGING DEVICE, LENS DEVICE, AND IMAGING DEVICE CONTROL METHOD | |
JP5751069B2 (en) | Electronic equipment | |
JP2018148692A (en) | Power reception device | |
JP2006171145A (en) | Camera | |
JP2013097728A (en) | Electronic device and program | |
JP2013030949A (en) | Electronic apparatus, imaging device, and program | |
JP2012147058A (en) | Imaging system, imaging device, and program | |
JP4940072B2 (en) | Imaging apparatus, control method, and program | |
JP2006201568A (en) | Camera detectable of hand shake | |
JP2012244303A (en) | Electronic device, imaging apparatus, imaging system, and program | |
JP2006173975A (en) | Layout structure of camera | |
JP2011041110A (en) | Imaging apparatus and lens | |
JP2008076511A (en) | Imaging apparatus | |
JP2006201569A (en) | Collapsible camera |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20141104 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20150611 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20150616 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20151104 |