(57)【要約】【課題】コンピュータを用いて処理を実行する機器において、プログラムを格納したフラッシュメモリ（ＲＯＭ）に故障が発生するのを抑制すること。【解決手段】フラッシュメモリに格納されたプログラムをＲＡＭに記憶（ダウンロード）し、かつＲＡＭに記憶された前記プログラムによって機器の処理を実行する。その場合、ＲＡＭに記憶されたプログラムにエラーが発生したときは、再度フラッシュメモリに格納されたプログラムをＲＡＭに記憶させ、再度ＲＡＭに記憶されたプログラムにエラーがあれば、フラッシュメモリに格納されたプログラムを用いて機器の処理を行うよう、メモリーを切り替える切替手段を前記機器に備えた。【選択図】　　　　図２
2004078847.tif 000002
【特許請求の範囲】
【請求項１】
ＣＰＵ、及び該ＣＰＵとアドレスバス及びデータバスを介して接続されるＲＡＭ及びＲＯＭを備え、前記ＲＯＭに格納されたプログラムをＲＡＭに切り替えるメモリ切替手段を備えた機器において、
ＲＯＭに格納されたプログラム、該プログラムをＲＡＭに記憶する手段、
前記ＲＡＭに記憶されたプログラムのエラーを検出する手段、エラーが検出されたとき、ＲＯＭに格納された該プログラムを再度ＲＡＭに記憶する手段、
該ＲＡＭに記憶された前記プログラムに基づき処理を実行する手段を備えたことを特徴とするメモリ切替手段を備えた機器。
【請求項２】
請求項１に記載されたメモリ切替手段を備えた機器において、
前記再度記憶された前記プログラムのエラーが検出されたとき、ＲＯＭに格納された前記プログラムに基づき処理を実行する手段を備えたことを特徴とするメモリ切替手段を備えた機器。
【請求項３】
請求項２に記載されたメモリ切替手段を備えた機器において、
ＲＯＭのプログラムエリアのバンクを前記ＲＡＭのプログラムエリアのバンクに切り替える手段を備えたことを特徴とするメモリ切替手段を備えた機器。
【発明の詳細な説明】
【０００１】
【産業上の利用分野】
本発明は、ＲＯＭに格納されたアプリケーションプログラムを読み出してＲＡＭに書き込み、ＲＡＭに書き込んだアプリケーションプログラムにアクセスして各種の機能動作を実現するようにしたメモリ切替手段を備えた機器に関するものである。
【０００２】
【従来の技術】
コンピュータを用いて動作制御を行う機器がごく身近に多数存在するが、このような機器のコンピュータはアプリケーションプログラム等を格納したＲＯＭ（フラッシュメモリ）とワーク用メモリとしてＲＡＭを備え、各種のアプリケーションプログラムを実行する場合には、コンピュータのＣＰＵは、ＲＯＭに格納したアプリケーションプログラムにアクセスして装置の各種の動作制御のための処理を行っている。
ところが、例えばＲＯＭに格納されているアプリケーションにプログラムアクセスを繰り返す内にビット化け等の不具合が発生する可能性があり、現状では一定の故障率は避けられないものとなっている。例えばＲＯＭとして一般に使用されているフラッシュメモリの場合では、メーカーの参考値によっても故障率は数１００ＦＩＴ（つまり、数１００時間に１回の確率）とされており、これらは製品出荷前の検査では問題が現れず、出荷後、つまり使用中に現れ、しかもその原因は明らかになっていないため、故障が生じたときはその製品は不良となる、出荷側では補修対応を迫られるためそのためのコストは無視し得ないものとなっている。
【０００３】
【発明が解決しようとする課題】
本発明は、ＲＯＭに格納されているプログラムを直接読み出して動作させると、アクセス回数が多くなる結果、ＲＯＭエリアが故障を起こす割合が高くなり製品出荷後における製品故障率が高くなることに鑑み、ＲＯＭに対するＣＰＵによるアクセスの回数を出来る限り減らして故障の発生を防止すると共に、万一故障が発生した場合にも容易に修復できるようにし、或いは修復出来ない場合でも、アプリケーションプログラムへのアクセスを可能にすることである。
【０００４】
【課題を解決するための手段】
請求項１の発明は、ＣＰＵ、及び該ＣＰＵとアドレスバス及びデータバスを介して接続されるＲＡＭ及びＲＯＭを備え、前記ＲＯＭに格納されたプログラムをＲＡＭに切り替えるメモリ切替手段を備えた機器においてＲＯＭに格納されたプログラム、該プログラムをＲＡＭに記憶する手段、前記ＲＡＭに記憶されたプログラムのエラーを検出する手段、エラーが検出されたとき、ＲＯＭに格納された該プログラムを再度ＲＡＭに記憶する手段、該ＲＡＭに記憶された前記プログラムに基づき処理を実行する手段を備えたことを特徴とするメモリ切替手段を備えた機器である。
【０００５】
請求項２の発明は、請求項１に記載されたメモリ切替手段を備えた機器において、前記再度記憶された前記プログラムのエラーが検出されたとき、ＲＯＭに格納された前記プログラムに基づき処理を実行する手段を備えたことを特徴とするメモリ切替手段を備えた機器である。
【０００６】
請求項３の発明は、請求項２に記載されたメモリ切替手段を備えた機器において、ＲＯＭの前記プログラムエリアのバンクを前記ＲＡＭのプログラムエリアのバンクに切り替える手段を備えたことを特徴とするメモリ切替手段を備えた機器である。
【０００７】
（作用）
アプリケーションプログラムを読み出して機器の動作制御を行う場合に、ＲＯＭに格納された同プログラムをＲＡＭにコピーすることでＲＯＭに対するアクセス回数を大幅に減らすことができ、また、万一ＲＡＭが故障した場合には同プログラムをＲＯＭから再度コピーすることで容易に同プログラムの修復が可能である。更に、再コピーしたプログラムにビット化けなどの故障が発生したときは、バンク切替を行うことで、直接ＲＯＭに格納されたアプリケーションプログラムを読み出して動作制御のための処理を行うことができる。
【０００８】
【発明の実施の形態】
以下、本発明について図面を参照して説明する。
図１は本発明に係るメモリ切替手段を備えた機器（装置）の一実施形態を示す公衆電話機の構成を概略的に示すブロック図である。
同図において、１は局線であって、着信検出回路２は課金信号受信回路４と切替自在に接続され、着信信号により鳴動するブザー３がこれに接続されている。局線１から到来する課金信号は課金信号受信回路４で受信され、かつＤＴＭＦ信号受信回路５は局線１から到来するＤＴＭＦ信号を受信する。６はダイオードブリッジ、７はオフフック時に局線１から供給される局電源を公衆電話機の各部へ与える電源回路である。電源回路７は通話回路８及びダイアル信号等を発生する信号発生器１０に接続され、通話回路８はさらに送受器９に接続されている。１１はテンキー（１０キー）、１２は表示器を示している。
１３，１４は入出力回路（Ｉ／Ｏ）であり、バス１５を介して各種の制御を行うＣＰＵ１９、プログラムが格納されるフラッシュメモリ（ＲＯＭ）２０、ＲＡＭ２１と接続されている。また入出力回路１４はカード読取装置１６にも接続されている。
１７はフックスイッチ、１８はオフフックによるフックスイッチのオンにより起動しＧＳリレーを駆動するスタート回路である。
【０００９】
このような公衆電話機のＣＰＵ１９は、アドレスバス及びデータバス等のバス１５を介してフラッシュメモリ（ＲＯＭ）２０，ＲＡＭ２１にアクセスできるようになっていると共に、入出力回路（Ｉ／Ｏ）１３，１４を介して各部の制御が行えるようになっている。
【００１０】
図２は、本発明のメモリ切替方式を説明するための図である。図中第１段階とは故障が発生していない状態を示す。
即ち、例えば上述の電話システムにおいてＣＰＵ１９がフラッシュメモリ２０内に格納されているプログラムを使用してシステムの動作制御を行う場合には、まず、フラッシュメモリ２０内に格納されたプログラムをＲＡＭ２１にダウンロード（書き込み）する。これにより以後の動作制御はＲＡＭ２１に記憶したプログラムにアクセスし、その処理手順を読み出して実行する。
第２段階は、ＲＡＭ２１にダウンロードしたプログラムの読み出しデータにビット化け等の不具合が発生した場合の処理について説明した図である。
即ち、ＲＡＭ２１にダウンロードしたプログラムに不具合が生じたとき、
故障の有無はデータ読み出しエラーおよびチェックサムにより検出し、故障と判断されると、その場合再度フラッシュメモリ２０中のプログラムをＲＡＭ２１にダウンロードし直す、つまり上書きを行う。これによって前記の不具合が容易に修復できる。
【００１１】
第３段階は、第２段階で再度フラッシュメモリ２０中のプログラムをＲＡＭ２１にダウンロードし直しそれでも故障が修復されない場合を示すものである。
つまり、ＲＡＭ２１に上書きしたプログラムの不具合を前記と同様の手段でチェックし、故障と判断されたときには、ＣＰＵがフラッシュメモリ２０に格納されたプログラムに直接アクセスできるようバンクの切替を行う。なお、フラッシュメモリ２０が故障した場合はメーカの修理を必要とする。
【００１２】
図３は、図２で示す第３段階におけるバンクの切替を説明したフラッシュメモリ及びＲＡＭのメモリマップを具体的に示した図であって、図３ＡはＲＡＭにプログラムを格納する場合、図３ＢはＲＡＭの故障によりフラッシュメモリ内のプログラムエリアのバンク切替を行ったときのメモリマップである。
即ち、通常時は図３Ａに示すように１０００００〜１３ＦＦＦＦ番地にフラッシュメモリ（ＲＯＭ）、２０００００〜２７ＦＦＦＦ番地にＳＲＡＭ（ＲＡＭ）を配置する。
ここで、フラッシュメモリ（１０００００〜１３ＦＦＦＦ番地）から読み出してしたアプリケーションプログラムはＳＲＡＭ（２０００００〜２３ＦＦＦＦ）にダウンロードし、ＳＲＡＭ（２４００００〜２７ＦＦＦＦ番地）をワークエリアとしている。
この状態において、通常はＳＲＡＭ（２０００００〜２３ＦＦＦＦ番地）内でプログラムを実行し、プログラム異常が発生した場合は、電源投入時にフラッシュメモリ（１０００００〜１３ＦＦＦＦ番地）からＳＲＡＭ（２０００００〜２３ＦＦＦＦ番地）にプログラムを再度ダウンロード（上書き）する。
しかし、ＳＲＡＭ（２０００００〜２３ＦＦＦＦ番地）に修復不可能な不具合が発生したときは図３Ｂに示すように、フラッシュメモリエリア（１０００００〜１３ＦＦＦＦ番地）を通常プログラム動作エリア（２０００００〜２３ＦＦＦＦ番地）に移動つまりバンクの切替を行い、フラッシュメモリ内に格納されたプログラムでシステムの動作を行う。
【００１３】
プログラムエリアの切り替えはＣＰＵのポート出力により制御する。つまり、通常時はＣＰＵポート＝０とし、ＳＲＡＭ復旧不可能な不具合が発生したときには、ＣＰＵポート＝１とすることで前記エリアの切替を行う。
【００１４】
【発明の効果】
本発明によれば、ＲＯＭに格納されているアプリケーションプログラムをＲＡＭに記憶（ダウンロード）し、前記ＲＡＭに記憶されたプログラムのエラーが検出されたとき、ＲＯＭに格納された該プログラムを再度ＲＡＭに記憶するようにし、かつＲＡＭエリアで前記プログラムを動作させるようにしたため、ＣＰＵの処理動作中ＲＯＭエリアに格納されているアプリケーションへのアクセスを大幅に減らすことができ、ＲＯＭエリアにおいて故障が発生することを抑止できる。また、ＲＡＭエリアで故障が発生した場合でも、故障状態を容易に修復することができる。
また、前記再度のコピー（ダウンロード）でも故障状態が修復されないときは、ＲＡＭエリアの故障と判断してＲＯＭエリアをプログラムエリアして使用することができる。
また本発明は、以上の三段階でメモリを切り替えることにより、製品故障の大幅な発生抑制が可能であるから、従来のような補修のためのコストを大幅に削減することができる。
【図面の簡単な説明】
【図１】本発明のメモリ切替手段を備えた製品例を示す概略構成図である。
【図２】プログラムの格納エリアの変遷の各段階を示す図である。
【図３】プログラム格納エリア及びプログラムのワークエリアを示すメモリマップであって、図３Ａは、ＲＡＭにプログラムを格納する場合、図３ＢはＲＡＭの故障によりＲＯＭ（フラッシュメモリ）内のプログラムエリアのバンク切替を行ったときのメモリマップである。
【符号の説明】
１…局線、１９…ＣＰＵ、２０…ＲＯＭ、２１…ＲＡＭ。
【図１】
2004078847.tif 000003
【図２】
2004078847.tif 000004
【図３】
2004078847.tif 000005