JP2010218103A - Electronic apparatus - Google Patents
Electronic apparatus Download PDFInfo
- Publication number
- JP2010218103A JP2010218103A JP2009062760A JP2009062760A JP2010218103A JP 2010218103 A JP2010218103 A JP 2010218103A JP 2009062760 A JP2009062760 A JP 2009062760A JP 2009062760 A JP2009062760 A JP 2009062760A JP 2010218103 A JP2010218103 A JP 2010218103A
- Authority
- JP
- Japan
- Prior art keywords
- address
- program
- storage area
- application software
- bank
- 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
- Stored Programmes (AREA)
Abstract
Description
本発明は、例えば組み込みシステムなどによって制御される電子機器に関する。 The present invention relates to an electronic device controlled by, for example, an embedded system.
互いに異なるOS(オペレーティングシステム)がローディングされた複数のメモリバンクと、各メモリバンクをCPUがアクセス可能な任意のアドレスに接続するメモリバンク接続回路と、を用いることで、同一計算機上で複数のOSを実行しかつ複数のOS間のデータ交換を可能としたOS切替方式が知られている(例えば特許文献1参照)。 By using a plurality of memory banks loaded with different OSs (operating systems) and a memory bank connection circuit for connecting each memory bank to an arbitrary address accessible by the CPU, a plurality of OSs are executed on the same computer. An OS switching method that executes data and exchanges data among a plurality of OSs is known (see, for example, Patent Document 1).
また、単一の装置上で複数のOSを動作させる他の方式としては、電源投入時などにローダがゲストOSをローディングすると共に、アドレス情報に従いホストOSを所定位置に配置した後、ホストOSがゲストOSをタスクとして生成することで、両OSの各種機能を使用可能とする方式なども提案されている(例えば特許文献2参照)。 As another method for operating a plurality of OSs on a single device, the loader loads the guest OS when the power is turned on and the host OS is arranged at a predetermined position according to the address information. There has also been proposed a method in which various functions of both OSs can be used by generating a guest OS as a task (see, for example, Patent Document 2).
ここで、例えばμITRONなどのリアルタイムOSを適用する装置において、互いにバージョンの異なる同一系統の複数のアプリケーションソフトを管理する場合、プログラム格納メモリ上の互いに異なる物理アドレスに、それぞれアプリケーションソフトとOSとの組を配置する形態などが例示される。 Here, for example, when managing a plurality of application software of the same system having different versions in a device to which a real-time OS such as μITRON is applied, a combination of the application software and the OS is assigned to different physical addresses on the program storage memory. The form etc. which arrange | position are illustrated.
より具体的には、一方のバージョンのアプリケーションソフトと共に格納されるOS(OSブートローダ)をプログラム格納メモリ上の物理アドレスの0番地に配置し、さらに他方のバージョンのアプリケーションソフトと共に格納されるOSをプログラム格納メモリ上の0番地以外の他の物理アドレスに配置する。
More specifically, an OS (OS boot loader) stored with one version of the application software is arranged at
すなわち、上述したμITRONなどと併用されるCPUは、一般に演算開始アドレスが0番地スタートなので、一方のバージョンのアプリケーションソフトは、装置本体への電源投入時にOSと共にそのまま起動させることが可能である。
That is, since the CPU used in combination with the above-described μITRON or the like generally has a calculation start address starting at
しかしながら、他方のバージョンのアプリケーションソフトは、共に格納されたOSのブートローダがCPUの演算開始アドレス上に配置されていないことになるため、その起動には、それなりに複雑な起動シーケンスが必要となる。 However, in the other version of the application software, the boot loader of the OS stored together is not arranged on the calculation start address of the CPU, so that its startup requires a complicated startup sequence.
また、一般に、仮想記憶(仮想アドレス)などを使用しないリアルタイムOSは、プログラムをローディングする場合において、極力無駄のないように最適なメモリ配置を考慮したコンパイル、リンクが要求される。つまり、このようなコンパイルやリンクに留意したメモリ配置の最適化のための配慮は、アプリケーションソフトの新規バージョンアップの度に必要となる。 In general, a real-time OS that does not use a virtual memory (virtual address) is required to be compiled and linked in consideration of an optimal memory arrangement so as not to waste as much as possible when loading a program. In other words, considerations for optimizing the memory arrangement in consideration of such compilation and linking are required every time a new version of application software is upgraded.
本発明は、このような事情を考慮してなされたものであり、比較的簡易な構成により複数のプログラムを選択的に起動させることができる電子機器の提供を目的とする。 SUMMARY An advantage of some aspects of the invention is that it provides an electronic device that can selectively start a plurality of programs with a relatively simple configuration.
上記目的を達成するために、本発明の電子機器は、第1のプログラムを格納する第1記憶領域と第2のプログラムを格納する第2記憶領域とを有する記憶部と、既定の演算開始アドレスから前記第1及び第2のプログラムのいずれかを起動させる演算部と、前記第1記憶領域内の前記第1のプログラムの起動アドレス又は前記第2記憶領域内の前記第2のプログラムの起動アドレスを、前記演算開始アドレスに一致させるようにしてアドレス変換を行うアドレス変換部と、を具備することを特徴とする。 To achieve the above object, an electronic apparatus according to the present invention includes a storage unit having a first storage area for storing a first program and a second storage area for storing a second program, and a predetermined calculation start address. And a calculation unit that activates one of the first and second programs, and an activation address of the first program in the first storage area or an activation address of the second program in the second storage area And an address conversion unit that performs address conversion so as to match the calculation start address.
すなわち、本発明では、第1又は第2のプログラムの起動アドレスを、演算部の演算開始アドレスに一致させるようにしてアドレス変換を行うので、上記演算部の固定的な演算開始アドレスなどに制約されることなく、複数のプログラムを個別に切り替えて起動させることができる。 That is, in the present invention, since the address conversion is performed so that the start address of the first or second program matches the calculation start address of the calculation unit, it is restricted by the fixed calculation start address of the calculation unit. It is possible to individually switch and start a plurality of programs.
本発明によれば、比較的簡易な構成により複数のプログラムを選択的に起動させることが可能な電子機器を提供することができる。 ADVANTAGE OF THE INVENTION According to this invention, the electronic device which can selectively start a some program with a comparatively simple structure can be provided.
以下、本発明を実施するための形態を図面に基づき説明する。
図1に示すように、本実施形態の電子機器3は、いわゆる組み込みシステムによってその動作が制御されるものであって、演算部として機能するCPU5、メインメモリ(RAM)6、アドレスバス14、データバス15、モード設定スイッチ7、USBインタフェース8、アドレス変換部として機能するバンク切替部9、調整用シリアルポート10、フラッシュROM(記憶部)12を備えている。
Hereinafter, embodiments for carrying out the present invention will be described with reference to the drawings.
As shown in FIG. 1, the operation of the electronic device 3 according to the present embodiment is controlled by a so-called embedded system. The
図1、図3に示すように、プログラム(ソフト)格納メモリとして機能するフラッシュROM12は、電源バックアップ不要でかつ書き換え可能なEEPROMなどで構成されており、第1記憶領域、第2記憶領域及び第3記憶領域を有する。第1記憶領域には、第1のプログラムである第1のリアルタイムOS(μITRONなどのリアルタイムオペレーティングシステム)と、第1のリアルタイムOSの起動に伴って起動する第1のアプリケーションソフトと、がインストールされている。
As shown in FIGS. 1 and 3, the
フラッシュROM12の第2記憶領域には、図3に示すように、第2のプログラムとしてのμITRONなどの第2のリアルタイムOSと、上記第1のアプリケーションソフトとはバージョンが異なる同一系統(同じソフト名)のアプリケーションソフトであってかつ第2のリアルタイムOSの起動に伴って起動する第2のアプリケーションソフトと、がインストールされている。ここで、第1、第2のアプリケーションソフトは、それらの実行ファイルが第1、第2のリアルタイムOSの起動時に読み込まれるように設定されていることで、当該OSの起動時に起動される。
In the second storage area of the
また、フラッシュROM12の第1記憶領域及び第2記憶領域には、図3に示すように、第1及び第2のアプリケーションソフトのバージョンをそれぞれ表すバージョン情報が格納されている。本実施形態では、第1のアプリケーションソフトが旧バージョンであり、第2のアプリケーションソフトが最新バージョンであるため、図3に示すように、第1記憶領域には、バージョン1を表す情報が格納され、一方、第2記憶領域には、バージョン2を表す情報が格納されている。
In addition, in the first storage area and the second storage area of the
また、フラッシュROM12の第3記憶領域には、図3に示すように、第3のプログラムであるローダソフト(バンク切替用のローダプログラム)が格納されている。ローダソフトは、第1及び第2のリアルタイムOS(第1及び第2のアプリケーションソフト)のうち、起動すべきプログラムを特定するための後述する起動プログラム特定情報を取得する。ローダソフトは、第1記憶領域及び第2記憶領域にそれぞれ格納された第1及び第2のアプリケーションソフトのバージョンを表す情報を検出することなどによって、上記起動プログラム特定情報を取得する。さらに、ローダソフトは、取得したこの起動プログラム特定情報に基づいてバンク切替部9の動作を制御する。
Further, as shown in FIG. 3, loader software (bank switching loader program) as a third program is stored in the third storage area of the
モード設定スイッチ7は、例えばディップスイッチなどで構成されており、電子機器3本体の起動時の後述する動作モードを設定するためのスイッチである。このモード設定スイッチ7は、4種類の動作モードを選択的に設定することが可能である。また、ローダソフトは、電子機器3本体の起動時に、このモード設定スイッチ7の設定値を読み込む。
The
図1に示すように、USBインタフェース8は、フラッシュROM12に格納されたアプリケーションソフトのバージョンアップの際に、USBメモリなどの記憶媒体から新バージョンのアプリケーションソフトのデータを読出して、フラッシュROM12に書き込むためのポートである。
As shown in FIG. 1, the
調整用シリアルポート10は、図1に示すように、プログラムのデバッグなどの調整に使用する例えばIEEE1394やその他のシリアルインタフェースである。例えばフラッシュROM12にアプリケーションソフトが格納されていない場合、ローダソフトは、この調整用シリアルポート10を介してアプリケーションソフトをフラッシュROM12に書き込む機能などを有する。
As shown in FIG. 1, the adjustment
上述した調整用シリアルポート10、USBインタフェース8、モード設定スイッチ7、フラッシュROM12や、バンク切替部9、メインメモリ6は、図1に示すように、アドレスバス14及びデータバス15を介してCPU5と接続されている。
The above-described adjustment
次に、本実施形態の電子機器3が備えるCPU5及びバンク切替部9、並びにフラッシュROM12に格納されたリアルタイムOS及びローダソフトの構成について詳述する。本実施形態のCPU5は、演算開始アドレスが0番地であり、フラッシュROM12に格納された第1及び第2のリアルタイムOSを0番地スタートで選択的に起動させることが可能である。
Next, the configuration of the
つまり、バンク切替部9は、図3に示すように、フラッシュROM12の第1記憶領域内の第1のリアルタイムOSの起動アドレス又は第2記憶領域内の第2のプログラムの起動アドレスを、演算開始アドレスに一致させるようにしてアドレス変換を行う。より具体的には、第1記憶領域及び第2記憶領域は、第1のメモリバンク及び第2のメモリバンクとしてそれぞれ構成(管理)されている。さらに、バンク切替部9は、第1及び第2のメモリバンクを対象としたバンク切り替えによってアドレス変換を行う。
That is, as shown in FIG. 3, the
さらに詳述すると、図3に示すように、第1のリアルタイムOSは、そのOSブートローダが、フラッシュROM12の物理アドレスの1000H番地に格納されるように、第1記憶領域(第1のメモリバンク)に予め記憶されている。一方、第2のリアルタイムOSは、そのOSブートローダが、フラッシュROM12の物理アドレスの2000H番地に格納されるように、第2記憶領域(第2のメモリバンク)に予め記憶されている。さらに、バンク切替用のローダソフトは、CPU5の演算開始アドレス(0番地)と、ローダプログラムの起動アドレスを割り当てた物理アドレスと、を予め一致させるようにして、フラッシュROM12の第3記憶領域に格納されている。つまり、ローダソフトは、図3に示すように、その起動アドレスが、フラッシュROM12の物理アドレスの0番地になるように格納されている。
More specifically, as shown in FIG. 3, the first real-time OS has a first storage area (first memory bank) so that its OS boot loader is stored at address 1000H of the physical address of the
一方、ハードウェアとして構成されるバンク切替部9は、図2に示すように、アドレス非置換え部9a、アドレス第1置換え部9b、アドレス第2置換え部9c、バンク切替レジスタ9d、マルチプレクサ(MUX)9eを備えている。このバンク切替部9は、CPU5からのアクセス要求に伴い指定されたアドレス(CPU・ADR)と、フラッシュROM12内を実際にアクセスするアドレス(F・ADR)と、を置き換えることを可能にするものである。
On the other hand, as shown in FIG. 2, the
具体的には、アドレス第1置換え部9bは、図2に示すように、CPU5からの指定アドレス例えば「0000〜0FFFH」を、アドレス「1000〜1FFFH」に、置き換えてマルチプレクサ9e側に出力する。アドレス第2置換え部9cは、CPU5からの指定アドレス例えば「0000〜0FFFH」を、アドレス「2000〜2FFFH」に、置き換えてマルチプレクサ9e側に出力する。
Specifically, as shown in FIG. 2, the address
また、アドレス非置換え部9aは、CPU5からの指定アドレスを置き換えることなく、マルチプレクサ9e側に出力する。ローダソフトによって動作を制御されるバンク切替レジスタ9dは、バンクの切り替えをマルチプレクサ9e対して指示する。マルチプレクサ9eは、バンク切替レジスタ9dからの切り替えの指示に基づいて、アドレス非置換え部9a、アドレス第1置換え部9b、アドレス第2置換え部9cから出力されるいずれかのアドレスを選択し、選択したアドレスでフラッシュROM12側にアクセスする。
Further, the address
さらに、このバンク切替部9(バンク切替レジスタ9d)を制御するローダソフトは、次のような機能を備えている。すなわち、電子機器3本体の電源投入直後に0番地からCPU5によりメインメモリ6上にローディングされて実行されるローダソフトは、モード設定スイッチ7の設定値を読み込んで電子機器3本体の起動時の動作モードを認識する。動作モードには、通常モード(最新バージョン起動モード)、旧バージョン起動モード、第1バンク固定起動モード、第2バンク固定起動モードの4種類が用意されている。
Furthermore, the loader software for controlling the bank switching unit 9 (
通常モードでは、ローダソフトは、第1及び第2のメモリバンクにそれぞれ格納された第1及び第2のアプリケーションソフトのバージョン情報を検出することによって上述した起動プログラム特定情報を取得し、取得したこの情報を基に、バージョンの新しいアプリケーションソフトが格納されたメモリバンクに切り替わるようにバンク切替部9を制御する。
In the normal mode, the loader software acquires the above-described startup program specifying information by detecting the version information of the first and second application software stored in the first and second memory banks, respectively. Based on the information, the
本実施形態では、第2のメモリバンクにバージョンの新しいアプリケーションソフト(バージョン2のアプリ)が格納されていることから、図2に示すように、ローダソフトは、アドレス第2置換え部9cで置き換えられたアドレスが選択されるようにバンク切替部9を制御する。この際、図3、図4(b)に示すように、第2のリアルタイムOSのOSブートローダのアドレスは、バンク切替前に2000H番地であったものが0番地に切り替わってCPU5の演算開始アドレスと一致する。これにより、第2のリアルタイムOS及び第2のアプリケーションソフトはCPU5の制御下で起動される。
In this embodiment, since the new version of application software (version 2 application) is stored in the second memory bank, the loader software is replaced by the address second replacement unit 9c as shown in FIG. The
旧バージョン起動モードでは、ローダソフトは、第1及び第2のメモリバンクにそれぞれ格納された第1及び第2のアプリケーションソフトのバージョン情報を検出することによって起動プログラム特定情報を取得し、取得したこの情報を基に、バージョンの古いアプリケーションソフトが格納されたメモリバンクに切り替わるようにバンク切替部9を制御する。
In the old version activation mode, the loader software acquires the activation program specifying information by detecting the version information of the first and second application software stored in the first and second memory banks, respectively. Based on the information, the
本実施形態では、第1のメモリバンクにバージョンの古い第1のアプリケーションソフト(バージョン1のアプリ)が格納されていることから、図2に示すように、ローダソフトは、アドレス第1置換え部9bで置き換えられたアドレスが選択されるようにバンク切替部9を制御する。この際、図3、図4(a)に示すように、第1のリアルタイムOSのOSブートローダのアドレスは、バンク切替前に1000H番地であったものが0番地に切り替わってCPU5の演算開始アドレスと一致する。これにより、第1のリアルタイムOS及び第1のアプリケーションソフトはCPU5の制御下で起動される。
In the present embodiment, since the first version of the first application software (version 1 application) is stored in the first memory bank, as shown in FIG. 2, the loader software includes the address
第1バンク固定起動モードでは、ローダソフトは、モード設定スイッチ7の設定値自体を起動プログラム特定情報として取得し、取得したこの情報に基づき、強制的に第1のメモリバンクに切り替わるようにバンク切替部9を制御する。つまり、第1バンク固定起動モードの場合、ローダソフトは、上述した旧バージョン起動モードと同様にバンク切替部9の動作を制御する。
In the first bank fixed start mode, the loader software acquires the set value itself of the
第2バンク固定起動モードでは、ローダソフトは、モード設定スイッチ7の設定値自体を起動プログラム特定情報として取得し、取得したこの情報に基づき、強制的に第2のメモリバンクに切り替わるようにバンク切替部9を制御する。すなわち、第2バンク固定起動モードの場合、ローダソフトは、上記した通常モードと同様にバンク切替部9の動作を制御する。
In the second bank fixed start mode, the loader software acquires the set value itself of the
次に、アプリケーションソフトのバージョンアップについて説明する。バージョンアップ対象のアプリケーションソフトは、リアルタイムOSの制御化で動作するインストーラなどを備えており、例えばUSBメモリなどに記憶されたかたちで提供される。アプリケーションソフトのバージョンアップは、図1に示すように、上記USBメモリ内の新バージョンのアプリケーションソフトのデータをUSBインタフェース8を介して読み込み、読み込んだデータをフラッシュROM12内の第1及び第2のメモリバンクのうちのいずれかの記憶領域にインストールすることで実現される。
Next, application software version upgrade will be described. The application software to be upgraded includes an installer that operates under the control of a real-time OS, and is provided in a form stored in, for example, a USB memory. As shown in FIG. 1, the version of the application software is upgraded by reading the data of the new version of the application software in the USB memory via the
上記アプリケーションソフトのインストールは、旧バージョンを上書きするアップグレードによるインストールであってもよいし、旧バージョンを削除した後、新しいバージョンのアプリケーションソフトを新規インストールするようにしてもよい。ここで、本実施形態の電子機器3では、リアルタイムOS及びアプリケーションソフトの組を個別に切り替えて起動させることができるので、アプリケーションソフトの例えばバージョンアップに失敗して、一方のメモリバンクからOSを起動できなくなった場合でも、他方のメモリバンクからOSを起動させることで、システムを復旧することが可能となる。 The installation of the application software may be an upgrade installation overwriting the old version, or after deleting the old version, a new version of the application software may be newly installed. Here, in the electronic device 3 of the present embodiment, since the combination of the real-time OS and application software can be switched individually and activated, for example, the upgrade of the application software fails and the OS is activated from one memory bank. Even if it becomes impossible, the system can be recovered by starting the OS from the other memory bank.
また、本実施形態の電子機器3では、図3、図4(a)、図4(b)に示すように、第1、第2のメモリバンクのいずれであっても、アプリケーションソフトが実際に立ち上がっているメモリバンクの先頭アドレス(OSブートローダの位置するアドレス)は0番地であり、一方、アプリケーションソフトが立ち上がっていない他方のメモリバンクの先頭アドレスは、0番地以外の同じアドレスになる(本実施形態の図4(a)、図4(b)の例では、必ず1000H番地となる)。これにより、アプリケーションソフトが現在動作中のメモリバンクが、第1、第2のいずれのメモリバンクであるのかといったことなどを考慮することなく、常に同じ基準アドレスから、フラッシュROM12内のアプリケーションソフトを新バージョンに更新すればよいことになる。
In the electronic device 3 of the present embodiment, as shown in FIGS. 3, 4A, and 4B, the application software is actually installed in any of the first and second memory banks. The leading address of the memory bank that is rising (address where the OS boot loader is located) is
次に、このように構成された電子機器3の起動時の動作を、上述した図1〜図4に加え、図5〜図7に示すフローチャートに基づき説明する。
図3、図5に示すように、電子機器3への電源投入によって電子機器3本体が初期化されると、CPU5の演算開始アドレスであるフラッシュROM12の物理アドレス0番地に格納されたローダソフトが、メインメモリ6上にローディングされて起動する(S1)。
Next, the startup operation of the electronic apparatus 3 configured as described above will be described based on the flowcharts shown in FIGS. 5 to 7 in addition to FIGS. 1 to 4 described above.
As shown in FIGS. 3 and 5, when the electronic device 3 is initialized by powering on the electronic device 3, the loader software stored at the
起動したローダソフトは、図5に示すように、モード設定スイッチ7の設定値を読み込み(S2)、電子機器3本体の起動時の動作モードとして、通常モード、旧バージョン起動モード、第1バンク固定起動モード、第2バンク固定起動モードのうちのいずれの動作モードが要求されているかを検出する(S3〜S6)。 As shown in FIG. 5, the activated loader software reads the set value of the mode setting switch 7 (S2), and the normal mode, the old version activation mode, and the first bank are fixed as the operation mode when the electronic device 3 is activated. It is detected which operation mode of the start mode or the second bank fixed start mode is requested (S3 to S6).
例えば、モード設定スイッチ7の設定値が通常モードでの起動を要求するものであった場合、ローダソフトは、図6に示すように、既定の(有効な)アプリケーションソフトが、第1、第2のメモリバンクのいずれかにインストールされているか否かを検出する(S11)。既定のアプリケーションソフトが、第1、第2のメモリバンクのいずれにも格納されていない場合(S11のNO)、ローダソフトは、調整用シリアルポート10を介して接続された所定の記憶装置内のアプリケーションソフトをフラッシュROM12内のいずれかのメモリバンクに書き込む処理(ダウンロード)を開始し(S12)、書き込み完了を待つ(S13)。
For example, when the setting value of the
次に、ローダソフトは、図3、図6に示すように、フラッシュROM12内の第1及び第2のメモリバンクに例えば各々格納された第1及び第2のアプリケーションソフトのバージョン情報を検出し、例えば第2のメモリバンクに格納された第2のアプリケーションソフトが、第1のメモリバンクに格納された第1のアプリケーションソフトよりも新しいバージョン(最新バージョン)であるか否かを検出する(S14)。
Next, as shown in FIGS. 3 and 6, the loader software detects the version information of the first and second application software stored in the first and second memory banks in the
第2のメモリバンクに格納された第2のアプリケーションソフトのバージョンのほうが新しい場合(又は調整用シリアルポート10を介して第2のメモリバンクに例えばアプリケーションソフトが格納された場合)には(S14のYES)、図2に示すように、ローダソフトは、第2のメモリバンクへのバンク切り替えが行われるように、バンク切替部9を制御する(S15)。この場合、図3、図4(b)に示すように、第2のリアルタイムOSのOSブートローダのアドレスは、バンク切替前に2000H番地であったものが0番地に切り替わる。
If the version of the second application software stored in the second memory bank is newer (or if, for example, application software is stored in the second memory bank via the adjustment serial port 10) (S14 As shown in FIG. 2, the loader software controls the
一方、第2のメモリバンクに格納された第2のアプリケーションソフトのバージョンのほうが古い場合(S14のNO)、図2に示すように、ローダソフトは、第1のメモリバンクへのバンク切り替えが行われるようにバンク切替部9を制御する(S16)。この場合、図3、図4(a)に示すように、第1のリアルタイムOSのOSブートローダのアドレスは、バンク切替前に1000H番地であったものが0番地に切り替わる。
On the other hand, if the version of the second application software stored in the second memory bank is older (NO in S14), the loader software switches the bank to the first memory bank as shown in FIG. The
この後、ローダソフトは、0番地に切り替わったいずれかのバンクのリアルタイムOSのOSブートローダに制御(起動処理)を受け渡し、ローダソフト自身は2000H番地に移行されて処理を終了する(S17)。さらに、CPU5の演算開始アドレス(0番地)とリアルタイムOSのOSブートローダの位置するアドレスとが一致したことにより、バンク切り替えで選択された側のメモリバンク内のリアルタイムOSの起動に伴って、新しいバージョンのアプリケーションソフトが起動する(S18)。
Thereafter, the loader software transfers control (startup process) to the OS boot loader of the real-time OS in any bank that has been switched to address 0, and the loader software itself is transferred to address 2000H and ends the process (S17). In addition, since the calculation start address (address 0) of the
また例えば、上述したモード設定スイッチ7の設定値が通常モードでの起動を要求するものであった場合、ローダソフトは、図7に示すように、S21〜S23において、図6に示す通常モードのS11〜S13と同一の処理を行う。さらに、ローダソフトは、強制的に第1のメモリバンクに切り替わるようにバンク切替部9を制御する(S24)。これにより、図3、図4(a)に示すように、第1のリアルタイムOSのOSブートローダのアドレスは、バンク切替前に1000H番地であったものが0番地に切り替わる。
Further, for example, when the set value of the
この後、ローダソフトは、0番地に切り替わった第1のリアルタイムOSのOSブートローダに制御を受け渡す(S25)。さらに、CPU5の演算開始アドレスから0番地に切り替えられたOSブートローダが読み出され、これにより、第1のリアルタイムOSの起動に伴って第1のアプリケーションソフトが起動する(S26)。
Thereafter, the loader software transfers control to the OS boot loader of the first real-time OS that has been switched to address 0 (S25). Further, the OS boot loader switched from the calculation start address of the
既述したように、本実施形態の電子機器3によれば、第1のメモリバンク内の第1のリアルタイムOSのOSブートローダを格納したアドレス又は第1のメモリバンク内の第1のリアルタイムOSのOSブートローダを格納したアドレスを、CPUの演算開始アドレスに、一致させるようにバンクを切り替えてアドレス変換を行うので、CPU5の固定的な演算開始アドレスなどに制約されることなく複数のOS及びアプリケーションソフトを選択的に起動させることができる。
As described above, according to the electronic device 3 of the present embodiment, the address storing the OS boot loader of the first real-time OS in the first memory bank or the first real-time OS in the first memory bank. Since the address conversion is performed by switching the bank so that the address storing the OS boot loader matches the calculation start address of the CPU, a plurality of OSs and application softwares are not restricted by the fixed calculation start address of the
ここで、本実施形態の電子機器3が適用するリアルタイムOSは、一般に、仮想記憶(仮想アドレス)などを使用しないことから、プログラムをローディングする場合において、極力無駄のないように最適なメモリ配置を考慮したコンパイル、リンクが要求される。そこで、本実施形態の電子機器3では、上述したバンク切り替えによってCPU5の演算開始アドレスに合わせたアドレス変換を行えるようにすることで、アプリケーションソフトのバージョンアップ時などに、プログラムのコンパイルやリンクに留意したメモリ配置の最適化のための配慮などが不要となる。
Here, since the real-time OS applied by the electronic device 3 of the present embodiment generally does not use virtual memory (virtual address) or the like, when loading a program, an optimal memory arrangement is provided so as not to waste as much as possible. Considering compilation and linking is required. Therefore, in the electronic device 3 of the present embodiment, attention is paid to program compilation and linking when the application software is upgraded by enabling address conversion in accordance with the calculation start address of the
以上、本発明を実施の形態により具体的に説明したが、本発明はこれらの実施形態にのみ限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能である。つまり、上記実施形態では、本発明の電子機器の用途などについては具体的に例示しなかったが、例えば、有線又は無線で動画配信を行う例えば地上デジタルテレビジョン放送、BSアナログ/デジタル放送、CSアナログ/デジタル放送、インターネット対応テレビ放送などに利用する放送機器に本発明の構成を適用することが可能である。 Although the present invention has been specifically described with the embodiments, the present invention is not limited to these embodiments, and various modifications can be made without departing from the scope of the invention. That is, in the above embodiment, the application of the electronic device of the present invention has not been specifically exemplified. For example, for example, terrestrial digital television broadcasting, BS analog / digital broadcasting, CS that performs video distribution by wire or wireless, CS The configuration of the present invention can be applied to broadcasting equipment used for analog / digital broadcasting, Internet-compatible television broadcasting, and the like.
また、この他、携帯電話やPDAなどの携帯情報端末、デジタルカメラ、テレビ、DVDレコーダ、電子レンジなどの家電機器、フラッシュメモリレコーダ、ネットワーク機器、電子計測機器、工業用自動機、自動車の制御システム、カーナビゲーションシステム、エレベータ、自動販売機、医療機器といった、組み込みシステムを用いるあらゆる電子機器に本発明の構成を適用することができる。 In addition, portable information terminals such as mobile phones and PDAs, digital cameras, televisions, DVD recorders, home appliances such as microwave ovens, flash memory recorders, network devices, electronic measuring devices, industrial automatic machines, automobile control systems The configuration of the present invention can be applied to any electronic device using an embedded system such as a car navigation system, an elevator, a vending machine, or a medical device.
3…電子機器、5…CPU(演算部)、6…メインメモリ(RAM)、7…モード設定スイッチ、8…USBインタフェース、9…バンク切替部(アドレス変換部)、9a…アドレス非置換え部、9b…アドレス第1置換え部、9c…アドレス第2置換え部、9d…バンク切替レジスタ、9e…マルチプレクサ(MUX)、10…調整用シリアルポート、12…フラッシュROM(ソフト格納メモリ)。 DESCRIPTION OF SYMBOLS 3 ... Electronic device, 5 ... CPU (calculation part), 6 ... Main memory (RAM), 7 ... Mode setting switch, 8 ... USB interface, 9 ... Bank switching part (address conversion part), 9a ... Address non-replacement part, 9b: Address first replacement unit, 9c: Address second replacement unit, 9d: Bank switching register, 9e: Multiplexer (MUX), 10: Adjustment serial port, 12: Flash ROM (software storage memory)
Claims (7)
既定の演算開始アドレスから前記第1及び第2のプログラムのいずれかを起動させる演算部と、
前記第1記憶領域内の前記第1のプログラムの起動アドレス又は前記第2記憶領域内の前記第2のプログラムの起動アドレスを、前記演算開始アドレスに一致させるようにしてアドレス変換を行うアドレス変換部と、
を具備することを特徴とする電子機器。 A storage unit having a first storage area for storing a first program and a second storage area for storing a second program;
A calculation unit that activates one of the first and second programs from a predetermined calculation start address;
An address conversion unit that performs address conversion so that the start address of the first program in the first storage area or the start address of the second program in the second storage area matches the calculation start address When,
An electronic apparatus comprising:
さらに、前記アドレス変換部は、前記第1及び第2のメモリバンクを対象としたバンク切り替えによってアドレス変換を行う、
ことを特徴とする請求項1記載の電子機器。 The first storage area and the second storage area are configured as first and second memory banks, respectively.
Further, the address conversion unit performs address conversion by bank switching for the first and second memory banks.
The electronic device according to claim 1.
をさらに具備することを特徴とする請求項1又は2記載の電子機器。 As a third program for acquiring start program specifying information for specifying a program to be started out of the first and second programs, and for controlling the operation of the address conversion unit based on the acquired start program specifying information. Loader program,
The electronic apparatus according to claim 1, further comprising:
をさらに具備することを特徴とする請求項3記載の電子機器。 The storage unit stores a third storage area in which the loader program is stored so that the calculation start address and the physical address to which the start address of the loader program is assigned are matched in advance.
The electronic device according to claim 3, further comprising:
前記第2記憶領域には、前記第2のプログラムである第2のオペレーティングシステムと、前記第1のアプリケーションソフトとはバージョンが異なる同一系統のアプリケーションソフトでありかつ前記第2のオペレーティングシステムの起動に伴って起動する第2のアプリケーションソフトと、が格納されている、
ことを特徴とする請求項1ないし4のいずれか1項に記載の電子機器。 The first storage area stores a first operating system, which is the first program, and first application software that is started when the first operating system is started.
In the second storage area, the second operating system, which is the second program, and application software of the same system whose versions are different from those of the first application software, and for starting the second operating system. Second application software to be started is stored,
The electronic device according to claim 1, wherein the electronic device is an electronic device.
ことを特徴とする請求項5又は6記載の電子機器。 The loader program obtains the activation program specifying information by detecting information representing versions of the first and second application software stored in the first storage area and the second storage area, respectively.
The electronic apparatus according to claim 5 or 6, wherein
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009062760A JP2010218103A (en) | 2009-03-16 | 2009-03-16 | Electronic apparatus |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009062760A JP2010218103A (en) | 2009-03-16 | 2009-03-16 | Electronic apparatus |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2010218103A true JP2010218103A (en) | 2010-09-30 |
Family
ID=42976910
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2009062760A Withdrawn JP2010218103A (en) | 2009-03-16 | 2009-03-16 | Electronic apparatus |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2010218103A (en) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2013047883A (en) * | 2011-08-29 | 2013-03-07 | Jvc Kenwood Corp | Information processor and starting method therefor |
WO2013040852A1 (en) * | 2011-09-20 | 2013-03-28 | Jiang Yongdong | Cloud computing-based system and method for management and control of elevator apparatus |
WO2014049798A1 (en) * | 2012-09-27 | 2014-04-03 | 富士通株式会社 | Conversion device, conversion method, and information processing system |
CN110782981A (en) * | 2018-07-27 | 2020-02-11 | 希尔-罗姆服务公司 | Apparatus and method for updating software in a patient support device using a memory switch |
-
2009
- 2009-03-16 JP JP2009062760A patent/JP2010218103A/en not_active Withdrawn
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2013047883A (en) * | 2011-08-29 | 2013-03-07 | Jvc Kenwood Corp | Information processor and starting method therefor |
WO2013040852A1 (en) * | 2011-09-20 | 2013-03-28 | Jiang Yongdong | Cloud computing-based system and method for management and control of elevator apparatus |
WO2014049798A1 (en) * | 2012-09-27 | 2014-04-03 | 富士通株式会社 | Conversion device, conversion method, and information processing system |
US9170862B2 (en) | 2012-09-27 | 2015-10-27 | Fujitsu Limited | Converting apparatus, conversion method, and information processing system |
JPWO2014049798A1 (en) * | 2012-09-27 | 2016-08-22 | 富士通株式会社 | CONVERSION DEVICE, CONVERSION METHOD, AND INFORMATION PROCESSING SYSTEM |
CN110782981A (en) * | 2018-07-27 | 2020-02-11 | 希尔-罗姆服务公司 | Apparatus and method for updating software in a patient support device using a memory switch |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7750676B2 (en) | Embedded system and control method therefor | |
TWI363298B (en) | Communication device and firmware update method thereof | |
JP5220747B2 (en) | Nonvolatile storage device and nonvolatile storage system | |
JP4810172B2 (en) | Control device, version upgrade method, and program | |
EP1873638A1 (en) | Portable apparatus supporting multiple operating systems and supporting method therefor | |
KR100415371B1 (en) | Computer | |
JP5821393B2 (en) | Information processing apparatus, activation method, program | |
WO2012071852A1 (en) | Method and apparatus for upgrading bootstrap program | |
JPWO2008117520A1 (en) | MEMORY CONTROLLER, NONVOLATILE MEMORY SYSTEM, AND HOST DEVICE | |
JP2007052519A (en) | Information processor, method, and program | |
TWI498822B (en) | Electronic device for bios updatable and bios updating method thereof | |
JP2003345730A (en) | Interface device, method for updating firmware in interface device and program therefor | |
JP2011095952A (en) | Method for updating firmware and electronic equipment | |
JP2010218103A (en) | Electronic apparatus | |
TWI431530B (en) | Embedded system and program updating method of the same | |
CN101615129A (en) | Be applied to upgrade method and edition management client end in the distributed system | |
CN109976958B (en) | Method and device for improving firmware test efficiency and storage medium | |
JP6526357B2 (en) | CONTROL DEVICE AND PROGRAM UPDATE METHOD | |
CN115658157A (en) | Firmware program starting method, system, storage medium and equipment | |
JP5197159B2 (en) | Program start device and program start method | |
JP7491765B2 (en) | Firmware update system and firmware update method | |
JP2006126987A (en) | Image processor | |
JP2003122575A (en) | Information processing unit | |
JP2011039825A (en) | Firmware updating method and firmware updating device | |
KR20090120740A (en) | Upgrade method and device of car a/v system |
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: 20120605 |