(57)【要約】【課題】  条件文を使用しないシンプルでかつ共通利用できる汎用的な機能構成により、機能追加、従来装置からの互換性確保並びに異なる機種間でのファームウェアの共通化を容易に実現できるメモリ装置及びメモリ装置のアクセス方法を提供する。【解決手段】  ベクタテーブルが配置された起動領域と、実行されるプログラムが記述されるプログラム領域とよりなるメモリ装置において、  前記プログラム領域内に生成され、前記ベクタテーブルのアドレス情報でアクセスされる機能実行手段と、  前記プログラム領域内に生成され、前記プログラムの先頭アドレス情報を保有すると共に前記機能実行手段より参照されるテーブルと、を備え、  前記機能実行手段は、前記テーブルの参照で取得したアドレス情報に基づき前記プログラムを実行する。【選択図】                    図１
2005173746.tif 000002
【特許請求の範囲】
【請求項１】
ベクタテーブルが配置される起動領域と、実行されるプログラムが記述されるプログラム領域とよりなるメモリ装置において、
前記プログラム領域内に生成され、前記ベクタテーブルのアドレス情報でアクセスされる機能実行手段と、
前記プログラム領域内に生成され、前記プログラムの先頭アドレス情報を保有すると共に前記機能実行手段より参照されるテーブルと、
を備え、
前記機能実行手段は、前記テーブルの参照で取得したアドレス情報に基づき前記プログラムを実行することを特徴とするメモリ装置。
【請求項２】
前記プログラム領域において、前記プログラムとそのプログラムの先頭アドレス情報を保有する前記テーブルを１つの機能グループとした領域を形成したことを特徴とする請求項１に記載のメモリ装置。
【請求項３】
前記機能グループは、前記プログラム領域に確保された専用機能領域内に形成されることを特徴とする請求項１又は２に記載のメモリ装置。
【請求項４】
前記専用機能領域内において前記機能グループの追加又は削除が実行されることを特徴とする請求項２又は３に記載のメモリ装置。
【請求項５】
システムの起動又は割り込みにより起動領域のベクタテーブルが参照されるステップと、
ベクタテーブルのアドレス情報に基づいてプログラム領域に生成された機能実行手段にアクセスするステップと、
機能実行手段が実行すべきプログラムの先頭アドレス情報を保有するテーブルを参照するステップと、
参照されたテーブルのアドレス情報に基づきプログラムが実行されるステップと、
を有することを特徴とするメモリ装置のアクセス方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、オンラインで書き替え及び消去ができる、フラッシュＲＯＭ等で代表される不揮発性のメモリ装置及びメモリ装置へのアクセス方法に関する。
【背景技術】
【０００２】
不揮発性のメモリ装置とそのアクセス方法に関連する先行技術文献としては次のようなものがある。
【０００３】
【特許文献１】特開２０００−３５０５０４号公報
【０００４】
図６は、例えば工業計器分野に用いられる差圧計、流量計、温度計等の各種フィールド機器に実装されるメモリの機能構成図である。１はメモリであり、起動領域Ｘ及びプログラム領域Ｐよりなる。２はベクタテーブルであり、起動領域Ｘに配置されている。３はプログラム領域に記述された実行対象のプログラムである。
【０００５】
システムが起動すると、常に固定の起動領域Ｘからアクセスが開始される。通常、この起動領域にはベクタテーブル２が配置されており、このテーブルには、起動直後および割り込み発生直後に実行すべきプログラムの実体が存在するアドレス先一覧が示されている。
【０００６】
図６の構成では、起動直後および割り込み発生直後には、指定のベクタテーブル２にアクセスし、プログラム領域Ｐに存在する実行対象のプログラム３の先頭アドレスが取得され、このアドレス情報に基づいてプログラム３の処理が始まる。
【発明の開示】
【発明が解決しようとする課題】
【０００７】
図６の構成は、単純な１個のプログラム処理であるが、プログラムが複数の機能を保有し機能毎に処理内容が異なる場合、従来構成では機能毎に条件を課し、場合分けをすることで各機能処理に対応しなければならない。
【０００８】
図７は、プログラム３が複数の機能（機能Ａ，Ｂ，Ｃ）を搭載している場合（または追加された場合）を示す。このようなプログラムでは、条件によってＡ機能の代わりにＢ、若しくはＣ機能を実行するため、条件文を含むプログラムの処理が必要となる。そのため、機能が増すごとに課される条件も増し、プログラムは複雑化する。その上、機能追加時における開発工数の増加及び互換性の確保が困難であった。
【０００９】
又、機能追加時においては、プログラム領域の内容すべてを機能追加バージョンに対応させるよう更新しなくてはならない。例えば、フィールド機器のような許容される消費電流が制限されているシステムの場合、専用のフィールドバス通信（３１．２５kbps）を介してのソフトウェアダウンロードを実施しても、10数分の時間が必要となる（３００kByteのデータ更新の場合）。従って、機能追加や改善を行った場合に更新時間が多く必要であるということも問題点の一つである。
【００１０】
従って本発明が解決しようとする課題は、条件文を使用しないシンプルでかつ共通利用できる汎用的な機能構成により、機能追加、従来装置からの互換性確保並びに異なる機種間でのファームウェアの共通化を容易に実現できるメモリ装置及びメモリ装置のアクセス方法を提供することにある。
【課題を解決するための手段】
【００１１】
このような課題を達成するために、本発明の構成は次の通りである。
（１）ベクタテーブルが配置される起動領域と、実行されるプログラムが記述されるプログラム領域とよりなるメモリ装置において、
前記プログラム領域内に生成され、前記ベクタテーブルのアドレス情報でアクセスされる機能実行手段と、
前記プログラム領域内に生成され、前記プログラムの先頭アドレス情報を保有すると共に前記機能実行手段より参照されるテーブルと、
を備え、
前記機能実行手段は、前記テーブルの参照で取得したアドレス情報に基づき前記プログラムを実行することを特徴とするメモリ装置。
【００１２】
（２）前記プログラム領域において、前記プログラムとそのプログラムの先頭アドレス情報を保有する前記テーブルを１つの機能グループとした領域を形成したことを特徴とする請求項１に記載のメモリ装置。
【００１３】
（３）前記機能グループは、前記プログラム領域に確保された専用機能領域内に形成されることを特徴とする（１）又は（２）に記載のメモリ装置。
【００１４】
（４）前記専用機能領域内において前記機能グループの追加又は削除が実行されることを特徴とする（２）又は（３）に記載のメモリ装置。
【００１５】
（５）システムの起動又は割り込みにより起動領域のベクタテーブルが参照されるステップと、
ベクタテーブルのアドレス情報に基づいてプログラム領域に生成された機能実行手段にアクセスするステップと、
機能実行手段が実行すべきプログラムの先頭アドレス情報を保有するテーブルを参照するステップと、
参照されたテーブルのアドレス情報に基づきプログラムが実行されるステップと、
を有することを特徴とするメモリ装置のアクセス方法
【発明の効果】
【００１６】
以上説明したことから明らかなように、本発明によれば次のような効果がある。
（１）実行すべきプログラム毎にテーブルを設けることで、条件文を使用しないシンプルでかつ共通利用できる汎用的な機能構成が実現する。これにより、機能追加、従来装置からの互換性確保並びに異なる機種間でのファームウェアの共通化を容易に実現できる。
【００１７】
（２）又、機能追加や改善をした際の更新手段として用いられるソフトウェアのダウンロードでは、機能毎の部分的なプログラムのダウンロードが可能となるので、更新時間の短縮を図ることができる。
【発明を実施するための最良の形態】
【００１８】
以下、本発明の実施形態を図面により詳細に説明する。図１は、本発明を適用したメモリ装置の一実施形態を示す機能構成図である。図６及び図７で説明した従来装置と同一要素には同一符号を付し、説明を省略する。以下、本発明の特徴部につき説明する。
【００１９】
図１において、４はプログラム領域Ｐ内に生成されたアドレステーブルであり、実行すべきプログラム３の先頭アドレス情報を保有する。５は同じくプログラム領域Ｐ内に生成された、機能実行手段である。
【００２０】
この機能実行手段５は、ベクタテーブル２のアドレス情報でアクセスされて起動し、実行すべきプログラム３の先頭アドレス情報をアドレステーブル４の参照により取得し、このアドレス情報に基づいてプログラム３の処理を実行する。
【００２１】
図２は、本発明の他の実施形態を示す機能構成図であり、機能追加によりプログラム３が３Ａ，３Ｂ，３Ｃの３機能になった例を示す。４Ａ，４Ｂ，４Ｃは、夫々プログラム３Ａ，３Ｂ，３Ｃの先頭アドレス情報を保有するアドレステーブルである。
【００２２】
機能実行手段５は、実行すべきプログラム３Ａ，３Ｂ，３Ｃの先頭アドレス情報をアドレステーブル４Ａ，４Ｂ，４Ｃの参照により取得し、このアドレス情報に基づいてプログラム３Ａ，３Ｂ，３Ｃの処理を所定の順に実行する。
【００２３】
図３は、本発明のメモリ装置のアクセス方法を説明するフローチャートである。ステップＳ１では、システムの起動又は割り込みにより起動領域Ｘのベクタテーブル２が参照される。ステップＳ２では、ベクタテーブル２のアドレス情報に基づいてプログラム領域Ｐに生成された機能実行手段５にアクセスする。
【００２４】
ステップＳ３では、機能実行手段５が実行すべきプログラムの先頭アドレス情報を保有するアドレステーブルを参照する。ステップＳ４Ａ，Ｓ４Ｂ，Ｓ４Ｃ，…Ｓ４Ｎは、Ｎ個のプログラムＡ，Ｂ，Ｃ，…Ｎに対するアドレステーブルの参照有無のチェック処理ステップである。
【００２５】
ステップＳ５Ａ，Ｓ５Ｂ，Ｓ５Ｃ，…Ｓ５Ｎは、ステップＳ４Ａ，Ｓ４Ｂ，Ｓ４Ｃ，…Ｓ４Ｎのチェック結果がＹとなった場合のＮ個のプログラムＡ，Ｂ，Ｃ，…Ｎに対する実行処理ステップであり、夫々アドレステーブルより実行すべきプログラムの先頭アドレス情報を取得し、当該プログラムを実行し、ステップＳ６で終了する。
【００２６】
以上説明した本発明の特徴をまとめると、次の通りである。
（１）起動領域Ｘに配置されたベクタテーブル２からアクセスされる機能実行手段５は、見かけ上、図６で示した従来装置のプログラム３と同様に1個であり、この機能実行手段の処理において、目的に応じたプログラムのみを実行する。
【００２７】
（２）機能実行手段５の処理により、各プログラムは各アドレステーブルの先頭アドレス情報に基づいてアクセスされるため、図７で示した従来装置のプログラム３のような条件文を必要としない。
【００２８】
（３）即ち、本発明では機能実行手段５を実行する際に、予めどの機能を使用するか定めておけば、対応したアドレステーブルのアドレス情報のみを参照して該当プログラムが実行されるので、複雑な条件文を課す必要はなくなる。
【００２９】
（４）更に、本発明は機能が増すほどに効果が期待でき、現時点での機能が多岐にわたっていなくとも、将来充実した機能を搭載する見込みのある製品であれば機能更新や追加毎にその効果を発揮する。具体的な効果としては下記３点があげられる。
（ａ）機能Ｃのみを更新若しくは変更した場合、本発明ではプログラム３Ｃ及び対応する        アドレステーブル４Ｃのみを変更すればよく、他の機能に関わるプログラム、アド        レステーブル、共通に使用する機能実行手段５の変更は必要ない。
【００３０】
（ｂ）新たに機能Ｄの追加を行う場合には、プログラム領域ＰにＤ機能専用のアドレステ        ーブル５ＤとＤ機能を実行するプログラム５Ｄを追加すればよく、他の機能に関わ        るプログラム及びアドレステーブルには影響を及ぼさない。
【００３１】
（ｃ）機能追加や機能削除及び改善によるソフトウェアの更新を行う場合には、該当する        ソフトウェアの部分的ダウンロードを行えば対応が可能となり、ダウンロード時間        の短縮が図れる。
【００３２】
図４は、本発明の他の実施形態を示す機能構成図である。６Ａ，６Ｂ，６Ｃは、夫々プログラム領域Ｐ内に、起動領域Ｘと同様に形成されたＡ機能領域，Ｂ機能領域，Ｃ機能領域であり、Ａ機能領域６Ａ内にはプログラム３Ａとその先頭アドレス情報を保有するアドレステーブル４Ａが１つのグループを形成して配置されている。
【００３３】
同様に、Ｂ機能領域６Ｂ内にはプログラム３Ｂとその先頭アドレス情報を保有するアドレステーブル４Ｂが１つのグループを形成して配置され、Ｃ機能領域６Ｃ内にはプログラム３Ｃとその先頭アドレス情報を保有するアドレステーブル４Ｃが１つのグループを形成して配置されている。
【００３４】
このように、機能毎にその機能を実行するプログラムとアドレステーブルを持つ領域を夫々独立したグループ群として配置すれば、メモリ装置１の領域を、プログラム領域Ｐの全機能共通領域と、領域６Ａ，６Ｂ，６Ｃよりなる各機能の専用領域６とに分類することができる。全機能共通領域には、工業計器の種類に隔たりなく実行可能なプログラム及びアドレステーブルを配置すれば、ファームの共通化を図ることができる。
【００３５】
専用領域６に関しても、共通領域の機能実行手段５からアドレステーブルを介してアクセスするという形式で統一化を図れば、アクセス方法を容易に確定でき、機能更新や追加にも対応しやすい上、更新の手段として用いられるソフトウェアのダウンロードを実施する際には部分的なダウンロードも容易に実現が可能となる。
【００３６】
図５は、他の実施形態を示す機能構成図であり、図４の実施形態を更に発展させた形態である。この実施形態の特徴は、プログラム領域Ｐ内に将来の追加予測を含めた専用機能領域６を予め確保した点にある。
【００３７】
図５（イ）は、Ａ機能及びＢ機能のみが存在するシステムを示す。これにＣ機能を追加して図５（ロ）に示すシステムを構築する場合には、Ｃ機能を実現するためのプログラムとアドレステーブルを配置したＣ機能領域６Ｃのグループのみを追加すれば可能となる。
【００３８】
従来構成のメモリ装置において同様な機能追加をする場合には、図７に示すようにプログラム３に条件文を追加する必要があり、周辺の関数や変数等のアドレス値が変更するため、メモリ内をすべて更新させなければならない。
【００３９】
しかし、本発明の機能構成によれば、専用機能領域６が予め確保されているために、ある機能領域の追加を行っても他の機能領域、および共通機能領域に影響を及ぼすことがないので、機能領域のみの部分的追加作業で更新が可能となる。従って、更新作業の簡素化、更新時間の短縮化、プログラム修正の簡易化等が期待できる。
【００４０】
更に、専用機能領域６が予め確保されている構成により、必要な機能のみを選択して搭載することが可能なため、メモリ容量に全機能搭載の余裕がなくなった場合や、不要になった場合にも不要な機能を削除することで容易に対応が可能となる。
【００４１】
以上説明した実施形態におけるプログラム３Ａ，３Ｂ，３Ｃ（個数は任意）は、夫々が独立した機能を実現するプログラムであっても良いし、互いに関連して一つのプログラムの部分的な機能を実現するプログラムであってもよい。
【００４２】
本発明の適用対象は、工業計器分野のフィールド機器に実装されるメモリ装置の例を説明したが、これに限定されるものではなく、本発明は不揮発性のメモリ装置が実装される機器一般に適用できる汎用性を有するものである。
【図面の簡単な説明】
【００４３】
【図１】本発明を適用したメモリ装置の一実施形態を示す機能構成図である。
【図２】本発明の他の実施形態を示す機能構成図である。
【図３】本発明のメモリ装置のアクセス方法による処理ステップを示すフローチャートである。
【図４】本発明の他の実施形態を示す機能構成図である。
【図５】本発明の更に他の実施形態を示す機能構成図である。
【図６】各種フィールド機器に実装される従来のメモリ装置の機能構成図である。
【図７】条件文を有するプログラムが実装された従来のメモリ装置の機能構成図である。
【符号の説明】
【００４４】
Ｐ  プログラム領域
Ｘ  起動領域
１  メモリ
２  ベクタテーブル
３  プログラム
４  アドレステーブル
５  機能実行手段
【図１】
2005173746.tif 000003
【図２】
2005173746.tif 000004
【図３】
2005173746.tif 000005
【図４】
2005173746.tif 000006
【図５】
2005173746.tif 000007
【図６】
2005173746.tif 000008
【図７】
2005173746.tif 000009