JP3945616B2 - 同型cpuを備えた複数ユニットから成る紙幣処理機の初期化方法 - Google Patents

同型cpuを備えた複数ユニットから成る紙幣処理機の初期化方法 Download PDF

Info

Publication number
JP3945616B2
JP3945616B2 JP2000299349A JP2000299349A JP3945616B2 JP 3945616 B2 JP3945616 B2 JP 3945616B2 JP 2000299349 A JP2000299349 A JP 2000299349A JP 2000299349 A JP2000299349 A JP 2000299349A JP 3945616 B2 JP3945616 B2 JP 3945616B2
Authority
JP
Japan
Prior art keywords
program
cpu
unit
storage unit
units
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.)
Expired - Fee Related
Application number
JP2000299349A
Other languages
English (en)
Other versions
JP2002108477A (ja
Inventor
勇男 三木
浩和 後藤
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Glory Ltd
Original Assignee
Glory Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Glory Ltd filed Critical Glory Ltd
Priority to JP2000299349A priority Critical patent/JP3945616B2/ja
Publication of JP2002108477A publication Critical patent/JP2002108477A/ja
Application granted granted Critical
Publication of JP3945616B2 publication Critical patent/JP3945616B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Description

【0001】
【発明の属する技術分野】
本発明は、実行する機械語が同一の同型CPUを備えた複数ユニットから成る装置の初期化方法に関し、特に、プログラムの初期書込み時やその後の書込み時に同型CPUの内蔵メモリに誤ったプログラムが書込まれて実行されるのを回避するようにした、同型CPUを備えた複数ユニットから成る装置の初期化方法に関する。
【0002】
【従来の技術】
プログラムを通信によりダウンロードする場合には、ダウンロード時にダウンロード先のIDをチェックして不都合があればダウンロードをしないというものが一般的である。また、1つの通信ポートを用いて、複数のCPUのプログラムをダウンロードする場合には、どのCPUのプログラムをダウンロードするのかという情報によりダウンロードする場所を決定しているのが通常である。
【0003】
ところで、従来よりプログラムを格納するフラッシュメモリ及びデータを格納するRAMを内蔵するワンチップCPUが用いられているが、ワンチップCPUの場合、外部からのデータを無条件にフラッシュメモリに書込むことができるものが一般的である。このようなワンチップCPUの場合、例えば外部とワンチップCPUの基板とを通信アダプタ等を介して接続し、外部からプログラムをダウンロードしてフラッシュメモリに書込むようにしているが、誤ったプログラムを書込んでしまった時の考慮がされていないのが現状である。
【0004】
【発明が解決しようとする課題】
上述したように、ワンチップCPUの場合、内蔵メモリへのプログラムの初期書込みやその後の書込み時(更新時)に、外部から誤ったプログラムをダウンロードしてしまう危険がある。特に、同型CPU(実行する機械語が同一のCPU)を備えた複数ユニットから成る装置の場合、他のユニット用のプログラムをダウンロードする危険性がある。その場合、他のユニット用のプログラムを実行すると、動作が正規のものと異なるタイミングで行われるので、I/Oポートに接続されている周辺機器の部品の破壊を招くことがある。このような誤ったプログラムの実行に伴うトラブルは、例えばあるユニットに搭載されているワンチップCPU内のプログラムを書込む際に、上記のように異なる基板用のプログラムを外部からダウンロードするなど誤ったプログラムをダウンロードした場合、或いは、誤ったプログラムが記録されているROMを差した場合に発生する。個々のユニットに同型CPUを備えた複数ユニットから成る装置の場合、該当プログラムはそのメモリの配置が同じため暴走せずに実行されるが、I/Oの構成が異なるために駆動部品を異なったタイミングで駆動してしまい、装置を破壊してしまうという不具合が生じる。従来は、このように間違えて他のユニットのプログラムを実行するなど、誤ったプログラムの実行に伴う機器の破損を防止するような対策が施されていなかった。
【0005】
本発明は上述のような事情から成されたものであり、本発明の目的は、同型CPUを備えた複数ユニットから成る装置において個々のユニットに誤ったプログラムを書込んで実行した場合、特に間違えて他のユニットのプログラムを書込んで実行した場合に生じる部品の破壊を未然に防ぐことができる方法を提供することにある。
【0006】
【課題を解決するための手段】
本発明は、同型CPUを備えた複数ユニットから成る紙幣処理機の初期化方法に関するものであり、本発明の上記目的は、紙幣の繰出部,搬送部,識別部,及び一時保留部等から成る処理機構をブロック化して複数ユニットで装置を構成した紙幣処理機で、且つ、前記ユニットのそれぞれに、少なくともメモリ領域及び一部のI/O領域のアドレスが同一に構成されたCPUを含むと共に外部から前記メモリ領域にプログラムを書込むことができる制御用電気回路基板を搭載した紙幣処理機に適用される方法であって、前記ユニットに搭載される前記制御用電気回路基板のI/Oポートには、他の制御用電気回路基板とはI/Oの構成が異なるセンサ,アクチュエータ類が接続されており、前記制御用電気回路基板には、CPUからは書換えることができない読出ポートに他の基板とは異なって割り当てられている基板認識用のID番号を記憶するID番号記憶部を持ち、前記プログラムを実行するにあたり前記ID番号記憶部に記憶しているID番号を読出し、該ID番号と前記プログラムが有しているプログラム内のID番号とを比較し、一致する場合は、前記センサ,アクチュエータ類を対象としたI/Oポートの初期化処理を実行し、一致しない場合は、前記プログラムが、前記制御用電気回路基板が搭載されているユニット用のプログラムではないと判定し、前記I/Oポートの初期化処理を実行しないようにすることによって達成される。
【0007】
また、前記ID番号記憶部が前記CPUの内蔵メモリの記憶領域のうち、前記プログラムの書換え処理を制御するダウンロード制御プログラムが記憶されている領域の一部に設けられていること;前記ID番号記憶部が前記CPUのI/Oポートを介して接続される外部メモリに設けられていること;前記ID番号記憶部が、前記CPUの内蔵メモリを介しての間接的なアクセスが可能な外部記録媒体に設けられていること;前記ID番号記憶部の読出しアドレスが前記CPUのメモリ領域にある場合に前記プログラムの書換え処理を制御するダウンロード制御プログラムの領域内にあるID番号とダウンロードしたプログラム領域内にあるID番号とを比較すること;前記ID番号記憶部の読出しアドレスが前記CPUのメモリ領域内若しくは外部の書換え可能なメモリ領域内にあること;によってそれぞれ一層効果的に達成される。
【0008】
さらに、前記ID番号記憶部が前記CPUの内蔵メモリ及び前記CPUのI/Oポートを介して接続される外部メモリにある場合、前記内蔵メモリに記憶しているID番号と、前記外部メモリにあるID番号と、新たに書込んだプログラム内のID番号とを比較し、互換性の無いプログラムがロードされたと判断した時には前記プログラムを実行しないようにすること;前記読出ポートを用いて前記ID番号記憶部を読出すものであって、前記ID番号記憶部が前記CPUを搭載した回路基板ではなく、ユニット本体側に設けられていること;によってそれぞれ一層効果的に達成される。
【0009】
【発明の実施の形態】
本発明は、実行する機械語が同一の同型CPUを備えた複数ユニットから成る装置に適用され、詳しくは、各々にプログラムが必要なCPU、いわゆる“セントラルプロセッサーユニット”又は“マイクロコンピュータ”と呼ばれ、特に、メモリや周辺回路を含んだ“ワンチップマイクロコンピュータ”若しくは“ワンチップCPU”と呼ばれるもの(以下「ワンチップCPU」とし、ワンチップCPU又は単にCPUと呼ぶ)を搭載した基板(制御用電気回路基板)を設けた複数のユニットから構成される装置で、且つ各ユニットのCPUが同一のもので構成される装置に適用される。そして、CPUのメモリ領域が同等で且つI/O(入出力)構成が異なっている回路基板を備えたユニットを複数具備し、CPU内のプログラムの書込みが通信データによるプログラム用メモリの書換え又はROMの差替えによって成されるものに好適に適用される。
【0010】
上記のような装置において、本発明では、例えば基板認識用のコード(以下、「ID番号」とする)を記憶したID番号記憶部を各ユニットの基板に設けておき、当該ユニットのCPU内のプログラムを実行するにあたり、上記のID番号記憶部からID情報を読出してプログラム中のID情報と比較し、該当プログラムがそのユニット用のプログラムであると判断したときのみ、センサ/アクチュエータ類を対象とした当該ポートの初期化処理を実行し、それ以外は、上記ポートの初期化処理を実行しないようにすることで、誤ったプログラムの実行に伴う部品の破壊等のトラブルが生じるのを未然に防ぐようにしている。
【0011】
上記のようなポートの初期化制御は、ダウンロード(上位からの通信によるダウンロード、ICメモリーカードから読出した当該プログラムの書込みによるフラッシュメモリ書換え後)若しくは、交換したROMのプログラムにより起動されるプログラムにより行い、ID情報に基づくプログラムの検証は、上記プログラム若しくはコンパレータ等のハードウエアにより行う。
【0012】
以下、図面に基づいて本発明の好適な実施例について詳細に説明する。なお、上記のような同型CPUを備えた複数ユニットから成る装置として、紙幣入金機を例として説明する。
【0013】
図1は本発明を適用した紙幣入金機の外観構成を示し、図2はその内部構成をブロック図で示している。本例での紙幣入金機10は、筐体正面に設けられている取込口10aに挿入された紙幣を受け付け、繰出部11aで筐体内に繰出して全体制御部(搬送部)16a内の搬送手段により識別部12aへと搬送し、識別部12aでその入金紙幣を識別して入金額を確定させ、一時保留部14aに収納させる。この一時保留部14aに収納させた紙幣は入金の確認の指示(上位コンピュータからの指示)を得ることにより、回収部15aヘ収納される。また、返却の指示がされたされた場合には一時保留部14aから払出部13aに紙幣を搬送し、重積した状態で返却口10bから一括返却を行うように構成されている。
【0014】
この紙幣入金機10は、上記のような処理機構をブロック化して複数ユニットで装置を構成し、各々のユニットに制御用CPUを設けている。図3は各ユニットの構成例を示しており、本例での紙幣入金機は、ワンチップCPUが搭載された基板等から成る制御部を有する複数のユニット11〜17で構成されており、ユニット名で言うと、繰出ユニット(入金繰出ユニット)11,認識ユニット(識別部)12,払出ユニット13,一時保留ユニット14、金庫ユニット15,全体制御ユニット(全体制御部,搬送部)16,及びスイッチング電源等から成る電源ユニット17で構成されている。
【0015】
ここでは、CPUが同一のものを採用(例えば、日立製作所製のH8/300HCPUをコアに用いた16ビットワンチップマイクロコンピュータのHD64F3048を使用)した場合を例に説明する。該当CPUはメモリを内蔵しており、フラッシュメモリ,RAM,割り込みコントローラ,タイマカウンタ、SCI(シリアル通信インターフェース),PIO(パラレル入出力インターフェース)及びADコンバータを備えている。
【0016】
紙幣入金機10は、同一CPUを採用するということから、必然的にプログラム領域、I/Oの空間、メモリ領域は各ユニットで共通となる。そこで、プログラムのダウンロードを間違えた場合には、プログラムのコードはどの基板にあるCPUにも理解でき実行可能なのでプログラムは実行できるが、I/Oポート(PIO)の先に接続されるセンサ、アクチュエータが異なるので、入力と出力とが入れ替わることには深刻な問題は生じないが、アクチュエータ同志が入れ替わることになると駆動タイミングがでたらめとなるために不具合が生じる。図4は、紙幣入金機の内部構造とセンサ/アクチュエータ類の配置構成の一例で、符号“P…”はセンサを示し、符号“M…”及び“S…”はアクチュエータを示しており、アクチュエータ同志が入れ替わることになると、例えば、紙幣の収納モータ“MG1”が回りっぱなしとか、搬送モータ“MM1”が回りっぱなしになってしまうとか、ソレノイド“SDM1”と“SDM2”の切り替え位置がでたらめであるとかといった問題が発生する。
【0017】
例として一時保留ユニット14と、繰出ユニット11とを例に取って説明する。図5,図6はそれぞれ一時保留ユニット14の構成例と繰出ユニット11の構成例をブロック図で示しており、各ユニットに搭載される制御用電気回路基板のI/Oポートには、図中に示すような周辺機器が接続されると共に、通信ケーブル(本例ではRS−232Cインターフェース)45を介して全体制御ユニット16と接続されている。
【0018】
図7,図8は、各ポートの接続状況や設定値等を記憶するポートテーブルの構成例を示しており、図7は一時保留ユニット14のポートテーブルPT4、図8は繰出ユニット11のポートテーブルPT1をそれぞれ示している。これらの図5〜図8に示すような構成において、ワンチップCPUの「メモリマップ」は各ユニット共通であるが、I/Oポートの利用形態はユニットによって異なっている。例えば、図8中に示す繰出ユニットのポート1のFFFC2H番地のビットD2は「出力モード」に設定されているのに対し、一時保留ユニットの同一番地のビットD2は「入カモード」に設定されており、仮に一時保留ユニット14に繰出ユニット11のプログラムがロードされた場合には周辺が入力となっているポートに対して出力にセットされるので、出力同志がぶつかり合うことになり回路によっては壊れる可能性がある。
【0019】
このような回路の破壊等のトラブルを回避するため、本例では、ポートアドレスが各基板共通のI/Oポートで、CPUからは書換えることができない読出ポートを基板認識用の専用ポート(以下、「基板認識ポート」と言う)とし、この基板認識ポートに、少なくとも基板認識コード(例えば基板(本例では、ユニットとCPUと基板とは1対1の対応)を特定するID番号)を含むID情報を記憶したID番号記憶部を設ける構成とし、以下に説明する処理によって上記基板認識コードとプログラム内のコードに基づいてプログラムの正当性を検証するようにしている。なお、図7及び図8の例では、I/Oポート1とI/Oポート5を基板認識ポートとし、I/Oポート5内のビットD0〜D3、I/Oポート1内のビットD6〜D7をID情報の読出しアドレスとしている。
【0020】
以下、本発明に係るプログラムの正当性検証方法とI/Oポートの初期化方法について説明する。
【0021】
図9(A)及び(B)は、CPUに内蔵されるフラッシュメモリの構成を示しており、フラッシュメモリ1のユーザプログラム領域は、フラッシュメモリ書換え用のプログラム(以下、書込みプログラム若しくは書換えプログラムと言う)等の基本プログラムを格納する領域(以下「IPL部」と言う)1Aと、ユーザプログラム(ミドル/アプリケーションプログラム)を格納する書込み領域(以下「プログラム部」と言う)1Bとから構成される。CPUの基板には、この他にブートプログラムエリア,ユーザプログラム転送エリア,リザーブ領域から成るRAM5と、ブート時にRAM内にハードウェア転送されるプログラムが格納されたマスクROM6が設けられている。初期書込み時は、IPL部1A及びプログラム部1Bの全体の書込み、プログラム更新時は、変更対象のプログラムを含む領域(プログラム部1B,IPL部1A,又は両者)に書込んで更新する。本発明では、図9(B)に示すように、プログラム部1Bのプログラム内、及びIPL部1Aの書換えプログラム内にそれぞれID情報を設定しておき、後述するID番号記憶部のID情報と照合することで、プログラムの正当性を検査するようにしている。
【0022】
上記フラッシュメモリ1の書換え,消去は、CPUの動作モードを所定のモード(本例ではブートモード又はユーザプログラムモード)に設定することで可能となる。ここでは、ユーザプログラムモードに設定してプログラムの書換えを行う場合を例として図10のフローチャートに沿って説明する。なお、紙幣入金機の各ユニットに搭載される各種基板に対する書換え形態や具体的な操作手順については後述するものとし、ここでは、フラッシュメモリの書換え時のユーザプログラムの実行手順を説明する。
【0023】
フラッシュメモリの書換えを行う場合は、先ず、CPUの動作モードをユーザプログラムモードに設定する。この動作モードの設定はCPUのモード端子によって設定する(ステップS1)。この状態でリセットによりCPUを起動すると(ステップS2)、フラッシュメモリ上の書込みプログラムがCPUのRAM内部に転送されて(ステップS3)、書込みプログラムが実行される。なお、フラッシュメモリ内のIPL部をRAMに移して実行させるのはフラッシュメモリの書込みモードに設定するとプログラムの読出しができなくなるためである(ステップS4)。そして、この書込みプログラムによりフラッシュメモリの書換えを実行する。書換え対象となるプログラムの転送元は、通信媒体又はメモリカード等の外部記録媒体であり、書込みプログラムでは、当該プログラムを外部からダウンロード若しくは外部記録媒体から転送してフラッシュメモリの書換えを行う。
【0024】
なお、プログラムの書込み時は、書込みコマンドによりCPUのモードを書込みモードとし、消去コマンドにより書込み領域(プログラム部)を消去した後、プログラムデータを所定の分割ブロック単位でCPUに送信して当該CPUの書込み領域内に転送する。その際、書込みプログラム等の基本プログラムが格納される領域(IPL部1A)も変更する場合は、例えば基本プログラムをプログラム部1Bに転送し、IPL部1Aを消去した後にプログラム部1Bの基本プログラムをIPL部1Aに書込み、その後にプログラム部1Bを書込む(ステップS5)。この方法では、IPL部1Aも、プログラム部1Bの書換えも元のIPLプログラムに依存するが書換え可能である。この場合、IPL部のプログラムはユーザの設計によるものなので、プログラムID、バージョンのチェックは可能である。
【0025】
フラッシュメモリの書換え終了後、プログラム部のユーザプログラムが起動されるが、本発明では、この時点でプログラムの正当性の検証処理等を実施する(ステップS6)。なお、ブートモードに設定された場合は、リセット解除後に予め組込まれているブートプログラムが起動され、所定の初期化処理が行われた後、外部からのプログラムデータの受信が可能となり、上記ステップS4以降の処理(全領域の書換え処理)が実行される。このブートモードでは受信データのチェックを行うことなくフラッシュメモリに順次書込みがされる。
【0026】
以下に、上記ステップS6におけるプログラムの正当性の検証処理とI/Oポートの初期化処理について、図11のフローチャートの流れに沿って詳細に説明する。なお、以下の処理は、プログラム部1Bのプログラム内に組み込まれる。
【0027】
フラッシュメモリの書換え後に起動されたプログラムでは、先ず、基板認識ポート(ID読出ポート)のモードの初期設定(入力モード、出力モード、出力の箇所は初期値を設定)をして(ステップS11)、基板認識ポートを介して上記ID番号記憶部に記憶されている内容を読込む。この基板認識ポートのアドレスは全ての基板とも同一アドレスが設定されており、図7,図8の例では、CPUの内蔵ポートでアドレスFFFC2H番地(Hは16進表記を示す符号:以下同様)のビットD6,D7と、FFFCAH番地の下4ビットD0〜D3を読出して、合計6ビットから成る基板認識コードを読込む。本例では、ID番号記憶部に記憶されている基板認識コードは、各基板(各ワンチップCPU)を特定するID番号であり、例えば、紙幣繰出ユニットであれば“06H”が、一時保留ユニットであれば“03H”となっている(ステップS12)。
【0028】
ここで、上記ID番号記憶部の設置場所とプログラムの検証形態について説明する。図12(A)は、ID番号記憶部の存在する場所の例を概念図で示しており、フラッシュメモリ1のメモリ空間のIPL部(ユーザ作成のダウンロード制御プログラム等の書換えプログラム領域内)1AにID番号記憶部2を設けた例である。この場合、ID番号記憶部2のメモリアドレスの内容2aを読出してプログラム部1Bに書込まれたプログラム中の特定アドレスに設定されているID情報(後述するプログラム種類コード)1bと比較することにより当該プログラムの正当性を検証する。図12(B)は、I/O空間(外部メモリ等)にID番号記憶部2を設けた例である。この場合、基板認識ポート4を介して読出したID番号記憶部2のID情報2aと、IPL部1A及びプログラム部1Bの各プログラム中のID情報1a,1bとを比較して検証する。また、図12(C)は、ワンチップCPUが直接アクセスすることができない領域のメモリ空間、例えば読出し及び書込みの方法が通常とは異なっている領域のメモリ空間に設けた例であり、本例ではシリアル通信のポート4aを経由した外部記録媒体2AにID番号記憶部2を設けた例を示している。この場合、外部記録媒体2Aとしては、例えば書込みが1回のみ可能で以降は読出しオンリーとなる“ワンタイムROM”又は“EEPROM”を使用するのが好ましい。なお、I/Oポートに接続される外部記憶部を基板の外に設けずに、基板上に設けるようにしても良い。
【0029】
図12(D)は、メモリ空間とI/O空間の両者にID番号記憶部2を設けた例を示している。この場合は、次のステップS13において、メモリ空間のID番号記憶部2に記憶されている内容2a’と、I/O空間のID番号記憶部に記憶されている内容2a”と、プログラム中のプログラム種類コード1bとをそれぞれ比較して検証する。なお、比較処理は本例ではソフトウェアで行う形態としているが、ハードウェア(コンパレータ)で行うようにしても良い。さらに、図12(E)に示すように、各ユニットの基板の外部にID番号記憶部2を設けて、コネクタケーブル5等を介して読出すようにしてもよい。
【0030】
上記のID番号記憶部2をメモリ空間或いは、外部の書換え可能なメモリ空間に設けた場合は、プログラムの版数(バージョン)情報をID番号と共に記憶しておくのが望ましい。以下に説明するステップS13,S14の処理においては、プログラム中の特定アドレスに格納されている版数情報とID番号記憶部内の版数情報とを比較し、異なる場合は、互換性の無いプログラムと判断して当該プログラムを実行しないようにすることで、互換性の無いプログラムがロードされた時にはプログラムを実行しないようにしている。
【0031】
続いて、ステップS13以降の処理を説明する。上記ステップS12でのID番号記憶部の内容の読込みに続いて、フラッシュメモリに書込まれたプログラム内のプログラム種類コード(ID番号,バージョン情報)を読込む。このプログラム種類コードは、プログラム中の一定アドレスに格納されており、複数のプログラムが存在する場合は、各プログラム中のプログラム種類コードを全て読込む(ステップS13)。そして、ID番号記憶部に記憶されている内容と、全てのプログラム種類コードとを比較し、全プログラムが現在の基板で動作可能か否かを検証する。本例では、ID番号及びバージョン情報が全て一致する場合に動作可能と判定するようにしている(ステップS14,S15)。全プログラムが現在の基板で動作可能と判定した場合は、センサ/アクチュエータ類を対象としたI/Oポートの初期化処理を実行し(ステップ16)、通常の処理を続行する。
【0032】
これ以降の処理は従来と同様であり、例えば、当該ポートに接続されている機器のリセット動作,各センサのチェック等による動作確認を行い、異常が無ければ待機状態とする(ステップ17)。上記ステップS16において、いずれかのプログラム種類コードが基板認識コードとは異なる場合、すなわち、現在の基板で動作不能と判定した場合は、センサ/アクチュエータ類のI/Oポートの初期化処理をせずに、例えば全体制御ユニットのエラー処理部を介して外部コンピュータ側でエラー表示するなど、所定のエラー処理を行い(ステップ18)、プログラムを停止する(ステップ19)。なお、上記ステップS11〜S19の処理は、プログラム書換え時以外の動作確認時にも実施される。例えば、紙幣入金機の場合は、紙幣入金機のパワーオン時に、選択されたCPUの動作モードに従って上記処理が実行される。
【0033】
次に、紙幣入金機の各ユニットに搭載される各種基板に対する書換え形態と、具体的な操作手順について説明する。
【0034】
各種基板に対する書換え形態としては、大別すると次の(a),(b)に示す形態がある。
(a)外部コンピュータから通信によりダウンロードして書換える形態
この形態は、外部コンピュータ(本例ではPC:パーソナルコンピュータ)から通信により該当プログラムをダウンロードして書換える形態であり、主に、工場で基板の実装組立が完了した時点で行うものである。すなわち、この形態(a)によってフラッシュメモリへのプログラム初期書込みを行い、後に行うプログラムの書込みは通常は次に示す(b)の形態で行うことになる。形態(a)では、PCと基板とを通信媒体(例えばRS−232Cケーブル)を介して通信により1対1で接続し、書換え対象のCPUの選択メニューをPC側で表示し、選択されたCPUのIPL部とプログラム部のプログラムをフロッピ−ディスク等の記録媒体から読込み、PCから紙幣入金機側にダウンロードして基板単体に書込む。この場合、本体制御基板と接続し、本体制御基板経由で他の基板に当該プログラムを転送して各基板のフラッシュメモリに書込むようにしても良い。
【0035】
(b)メモリカードを基板に装填して書換える形態
この形態は、メモリカードから該当プログラムをCPUのメモリに転送して書換える形態であり、IPL部を書換えることも可能であるが、主に装置搬入後の現地でのプログラム部のバージョンアップ時に使用する。
(b−1)本体制御基板の書換え
本体の全体制御ユニット16に搭載されている本体制御基板の場合、メモリカード1を本体制御基板に装填して、本体制御基板のCPUのフラッシュメモリを書換える。
(b−2)本体制御基板以外の各種基板の書換え
本体基板以外の基板は、メモリカードを本体制御基板に装填して本体制御基板から各種基板にダウンロードする。例えば紙幣入金機のパネル操作で基板を選択し、本体制御基板のCPUでメモリカードの当該データ(IPL部又はプログラム部)を該当のCPUのメモリに転送して書換える。
【0036】
次に、前記(a)の形態、すなわち外部コンピュータから通信によりダウンロードして該当のCPUのプログラムを書換える形態(以下、第1の書換え形態と言う)と、前記(b)の形態、すなわち基板に装填可能な外部記録媒体(本例ではメモリカード)を全体制御ユニットの制御基板に装填して各CPUのプログラムを書換える形態(以下、第2の書換え形態と言う)について、それぞれ書換え時の操作手順の具体例を示して全体の流れを説明する。以下、貨幣処理システムに適用した場合を例として説明する。
【0037】
図13は、貨幣処理システムの構成の一例を示しており、例えば銀行の窓口などで使用されるテラーズマシンに適用される。この貨幣処理システムは、紙幣入金機10と紙幣出金機20とが紙幣処理機の筐体内に設けられ、筐体の正面には、扉開閉インターロックスイッチにより開閉される扉が設けられている。上記紙幣入金機10と紙幣出金機20、及び硬貨処理機30は、それぞれ通信ケーブル45を介して上位PC(外部コンピュータ)40と接続され、上位PC40には、CRT41,キーボード42,プリンタ43,通信I/F装置44等の周辺機器が接続されている。
【0038】
このような構成において、第1の書換え形態におけるプログラム書換え手順を、図14のフローチャートの流れに沿って説明する。ここでは、各装置のうち、紙幣入金機10を例として、基板の工場内での実装組立が完了した直後の作業手順について説明する。
【0039】
先ず、図15に示すように、上位PC40と各制御基板(10A〜16Aのうちの1枚)とを通信アダプタ45aを介して接続し、ブートモードに設定した後(ステップS21)、接続した制御基板をパワーオンする(ステップS22)。次に、上位PC40側のCRT41に表示される図16に示すようなプログラム選択メニューの中から、書換え対象のCPUを選択する。書換え対象のCPU,すなわちプログラムが選択されると(ステップS23)、上位PC40ではFD等の記憶媒体から当該プログラムを読込んでそのプログラム名と版数(バージョン)をCRT41に表示した後、前述のプログラム書換え手順により上位PC40から当該プログラムをCPUのメモリに転送し、当該メモリ(IPL部,プログラム部)への書込みを行う(ステップS24)。
【0040】
そして、フラッシュメモリへの書込みが完了した基板を紙幣入金機10の当該ユニットに実装し(ステップS25,S26)、動作確認を行う。この動作確認では当該ユニットに接続される周辺機器の動作確認が行われるが、その前の時点で前述の正当性の検証処理とI/Oポートの初期化処理が実行される。すなわち、フラッシュメモリ1のIPL部及びプログラム部の各プログラム内のID番号(及びバージョン情報)と、ID番号記憶部2のID番号(及びバージョン情報)とが照合され、正当と判断されたのであれば、前述のI/Oポートの初期化処理に続いて動作確認が実行されるようにしている。そして、動作確認がOKであれば、処理を終了して待機状態とする(ステップS27)。
【0041】
次に、第2の書換え形態におけるプログラム書換え手順を、図17のフローチャートの流れに沿って説明する。
【0042】
第2の書換え形態は、メモリカード等のプログラムを記録した外部記録媒体を本体制御基板16Aに装着し、外部記録媒体から各CPUのプログラムを本体制御基板16Aから転送して各CPUのプログラムを書換える形態であり、以下、基板に装填可能なメモリカードを用いた場合を例として説明する。
【0043】
図18は、各CPUのプログラムを記録したメモリカードのメモリマップを示しており、紙幣入金機の各ユニットに対応して当該プログラムが配置された構成となっている。この例では、メモリカード3には、紙幣入金機10を構成する本体(全体制御ユニット)16,繰出ユニット11,リサイクル(一時保留)ユニット14,回収(金庫)ユニット15,及び払出ユニット13の順に各CPUのプログラムが格納されており、各プログラム中には前述のプログラム種類コード(ID番号,バージョン情報)が記録されている。
【0044】
先ず、上記のような各CPUのプログラムが書込まれたメモリカード3を、紙幣入金機本体の制御基板のソケットに差し込んで装着した後(ステップS31,S32)、紙幣入金機本体の電源を投入する(ステップS33)。次に、紙幣入金機10の操作パネルを操作して書換えた対象のユニット(CPU)を選択する(ステップS34)。全体制御ユニット16のCPUでは、選択された書換え対象のプログラム名とその版数(バージョン)を表示して確認を促す(ステップS35)。確認OKであれば、前述のプログラム書換え手順によりメモリカードから当該プログラムをCPUのメモリに転送し、旧プログラムを消去して新プログラムの当該メモリ(IPL部又はプログラム部)への書込みを行う。
【0045】
その際、本体基板以外の基板は、本体制御基板のCPUの制御により各種基板のCPU内のフラッシュメモリにダウンロードする(ステップS36)。そして、フラッシュメモリの書換え完了後、前述の正当性の検証処理を実行し(ステップS37)、正常であればセンサ/アクチュエータ類を対象としたI/Oポートの初期化処理を実行し(ステップS38)、周辺機器の動作確認を行う(ステップS39)。そして、正常であれば紙幣入金機本体の電源をオフしてメモリカードを抜取り(S40,S41)、プログラムの書込み作業を終了する。上記ステップS37で書換え後のプログラムが誤っている場合は、エラー表示が表示されるので、その表示内容等により原因(メモリカードの内容の誤り、基板への装填ミス等)を追求し、判明して対処したのであれば、ステップS31から再度実施する。なお、フラッシュメモリのIPL部1Aに格納されている書換えプログラム(IPL部)の書込みを行う場合でも上記と同様の流れとなる。
【0046】
上述した実施の形態では、紙幣入金機を例として説明したが、同型CPUを備えた複数ユニットから成る装置であれば本発明を適用することができる。なお、フラッシュメモリを例として説明したが、書換え可能なフラッシュメモリを使わず従来のROMを用いる場合には、ユーザプログラム内のIDと外部ボートのIDとの一致を見ることにより、誤まって他のCPU用のROMを差した場合でも部品の破損を招くことなく対処できる。
【0047】
【発明の効果】
以上に説明したように本発明によれば、実行する機械語が同一の同型CPUが搭載されるユニットを複数備えた装置において、個々のユニットのプログラムを書換えた場合で、特に、間違えて他のユニットのプログラムで書換えてしまった場合に、書換えたプログラムの実行前に間違えを検出してI/Oポートのモードセット等の初期化を行わないようにしたので、機器の損傷を防止することができる。さらに、I/Oポートに接続される外部記憶部を基板の外に設け、ID番号記憶部が基板の取替えに関係無くIDの設定が保持されるものであれば、基板の交換が有ってプログラムの変更を忘れていても当該ユニットの破損を防止することができる。
【図面の簡単な説明】
【図1】本発明を適用した紙幣入金機の外観構成の一例を示す斜視図である。
【図2】紙幣入金機の内部構成の一例を示すブロック図である。
【図3】紙幣入金機のユニット構成の一例を示すブロック図である。
【図4】紙幣入金機の内部構造とセンサ/アクチュエータ類の配置構成の一例を示す構造図である。
【図5】一時保留ユニットの構成例を示すブロック図である。
【図6】繰出ユニットの構成例を示すブロック図である。
【図7】一時保留ユニットのポートテーブルの構成例を示す図である。
【図8】繰出ユニットのポートテーブルの構成例を示す図である。
【図9】CPUに内蔵されるフラッシュメモリの構成を示す図である。
【図10】フラッシュメモリの書換え時の実行手順を説明するためのフローチャートである。
【図11】本発明に係るプログラムの正当性の検証処理とI/Oポートの初期化処理を説明するためのフローチャートである。
【図12】本発明に係るID番号記憶部の設置場所を示す模式図である。
【図13】本発明を適用した貨幣処理システムの構成の一例を示すブロック図である。
【図14】本発明に係る第1の書換え形態におけるプログラム書換え手順を説明するためのフローチャートである。
【図15】上位PCと紙幣出金機側の本体制御基板との接続形態を示す模式図である。
【図16】書換え対象の選択画面の一例を示す図である。
【図17】本発明に係る第2の書換え形態におけるプログラム書換え手順を説明するためのフローチャートである。
【図18】本発明に係るメモリカードのメモリマップを示す図である。
【符号の説明】
1 フラッシュメモリ
1A IPL部
1a ID情報
1B プログラム部
1b ID情報
2 ID番号記憶部
2A 外部記録媒体
2a ID情報
2a’ ID情報
2a” ID情報
3 メモリカード
4 基板認識ポート
4a シリアル通信ポート
5 RAM
6 マスクROM
10 紙幣入金機
10a 取込口
10b 返却口
11 繰出ユニット
11a 繰出部
12 認識ユニット
12a 識別部
13 払出ユニット
13a 払出部
14 一時保留ユニット
14a 一時保留部
15 金庫ユニット
15a 回収部
16 全体制御ユニット(全体制御部,搬送部)
16A 本体制御基板
17 電源ユニット
20 紙幣出金機
30 紙幣処理機
40 上位PC
41 CRT
42 キーボード
43 プリンタ
44 通信I/F装置
45 通信ケーブル
45a 通信アダプタ
PT1 繰出ユニットのポートテーブル
PT4 一時保留ユニットのポートテーブル

Claims (8)

  1. 紙幣の繰出部,搬送部,識別部,及び一時保留部等から成る処理機構をブロック化して複数ユニットで装置を構成した紙幣処理機で、且つ、前記ユニットのそれぞれに、少なくともメモリ領域及び一部のI/O領域のアドレスが同一に構成されたCPUを含むと共に外部から前記メモリ領域にプログラムを書込むことができる制御用電気回路基板を搭載した紙幣処理機に適用される方法であって、
    前記ユニットに搭載される前記制御用電気回路基板のI/Oポートには、他の制御用電気回路基板とはI/Oの構成が異なるセンサ,アクチュエータ類が接続されており、
    前記制御用電気回路基板には、CPUからは書換えることができない読出ポートに他の基板とは異なって割り当てられている基板認識用のID番号を記憶するID番号記憶部を持ち、
    前記プログラムを実行するにあたり前記ID番号記憶部に記憶しているID番号を読出し、該ID番号と前記プログラムが有しているプログラム内のID番号とを比較し、
    一致する場合は、前記センサ,アクチュエータ類を対象としたI/Oポートの初期化処理を実行し、
    一致しない場合は、前記プログラムが、前記制御用電気回路基板が搭載されているユニット用のプログラムではないと判定し、前記I/Oポートの初期化処理を実行しないようにしたことを特徴とする同型CPUを備えた複数ユニットから成る紙幣処理機の初期化方法。
  2. 前記ID番号記憶部が前記CPUの内蔵メモリの記憶領域のうち、前記プログラムの書換え処理を制御するダウンロード制御プログラムが記憶されている領域の一部に設けられていることを特徴とする請求項1に記載の同型CPUを備えた複数ユニットから成る紙幣処理機の初期化方法。
  3. 前記ID番号記憶部が前記CPUのI/Oポートを介して接続される外部メモリに設けられていることを特徴とする請求項1に記載の同型CPUを備えた複数ユニットから成る紙幣処理機の初期化方法。
  4. 前記ID番号記憶部が、前記CPUの内蔵メモリを介しての間接的なアクセスが可能な外部記録媒体に設けられていることを特徴とする請求項1に記載の同型CPUを備えた複数ユニットから成る紙幣処理機の初期化方法。
  5. 前記ID番号記憶部の読出しアドレスが前記CPUのメモリ領域にある場合に前記プログラムの書換え処理を制御するダウンロード制御プログラムの領域内にあるID番号とダウンロードしたプログラム領域内にあるID番号とを比較するようになっている請求項1に記載の同型CPUを備えた複数ユニットから成る紙幣処理機の初期化方法。
  6. 前記ID番号記憶部の読出しアドレスが前記CPUのメモリ領域内若しくは外部の書換え可能なメモリ領域内にある請求項1に記載の同型CPUを備えた複数ユニットから成る紙幣処理機の初期化方法。
  7. 前記ID番号記憶部が前記CPUの内蔵メモリ及び前記CPUのI/Oポートを介して接続される外部メモリにある場合、前記内蔵メモリに記憶しているID番号と、前記外部メモリにあるID番号と、新たに書込んだプログラム内のID番号とを比較し、互換性の無いプログラムがロードされたと判断した時には前記プログラムを実行しないようになっている請求項1に記載の同型CPUを備えた複数ユニットから成る紙幣処理機の初期化方法。
  8. 前記読出ポートを用いて前記ID番号記憶部を読出すものであって、前記ID番号記憶部が前記CPUを搭載した回路基板ではなく、ユニット本体側に設けられていることを特徴とする請求項1に記載の同型CPUを備えた複数ユニットから成る紙幣処理機の初期化方法。
JP2000299349A 2000-09-29 2000-09-29 同型cpuを備えた複数ユニットから成る紙幣処理機の初期化方法 Expired - Fee Related JP3945616B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2000299349A JP3945616B2 (ja) 2000-09-29 2000-09-29 同型cpuを備えた複数ユニットから成る紙幣処理機の初期化方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2000299349A JP3945616B2 (ja) 2000-09-29 2000-09-29 同型cpuを備えた複数ユニットから成る紙幣処理機の初期化方法

Publications (2)

Publication Number Publication Date
JP2002108477A JP2002108477A (ja) 2002-04-10
JP3945616B2 true JP3945616B2 (ja) 2007-07-18

Family

ID=18781166

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000299349A Expired - Fee Related JP3945616B2 (ja) 2000-09-29 2000-09-29 同型cpuを備えた複数ユニットから成る紙幣処理機の初期化方法

Country Status (1)

Country Link
JP (1) JP3945616B2 (ja)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3881942B2 (ja) 2002-09-04 2007-02-14 松下電器産業株式会社 暗号化部を有する半導体装置
JP2007249748A (ja) * 2006-03-17 2007-09-27 Fujitsu Access Ltd バージョン管理機能を有するネットワーク機器
JP5298795B2 (ja) * 2008-11-18 2013-09-25 富士ゼロックス株式会社 画像形成装置
JP4676547B2 (ja) * 2009-08-21 2011-04-27 パナソニック株式会社 半導体装置およびそのブート方法
JP6191334B2 (ja) * 2013-08-27 2017-09-06 セイコーエプソン株式会社 印刷装置、印刷装置の制御方法、及び、プログラム
WO2018150523A1 (ja) 2017-02-16 2018-08-23 富士通フロンテック株式会社 紙葉類取扱装置および紙葉類取扱装置における通信方法
JP2023173160A (ja) * 2022-05-25 2023-12-07 グローリー株式会社 貨幣処理装置、貨幣処理システムおよび貨幣処理装置の製造方法

Also Published As

Publication number Publication date
JP2002108477A (ja) 2002-04-10

Similar Documents

Publication Publication Date Title
RU2159467C2 (ru) Система и способ загрузки прикладных задач на интеллектуальную карточку
US6488585B1 (en) Gaming device identification method and apparatus
TW480443B (en) Virus resistant and hardware independent method of flashing system BIOS
US20010036866A1 (en) Standard peripheral communications
US7404028B2 (en) ECU identification retention across reprogramming events
US8078540B2 (en) Gaming machine, gaming information authentication and acquisition device, and gaming information acquisition device
EP0788115B1 (en) Electronic apparatus including a memory device and method of reprogramming the memory device
JP3945616B2 (ja) 同型cpuを備えた複数ユニットから成る紙幣処理機の初期化方法
US5039850A (en) IC card
JPH04315253A (ja) 電子機器
JP2003523025A (ja) 取り外し可能なフラッシュメモリを備えた紙幣鑑定機
JP3093541B2 (ja) プログラムおよびデータの版数管理を行う端末装置およびオンラインシステム
US7305710B2 (en) Method for securely loading and executing software in a secure device that cannot retain software after a loss of power
US7428635B2 (en) Method of writing non-volatile memory that avoids corrupting the vital initialization code
JPH07191841A (ja) コンピュータのプログラム更新方法
JP4734582B2 (ja) 不揮発性メモリのデータ更新方法、制御装置、及びデータ更新プログラム
JP2003022425A (ja) Icカード自己診断装置および診断方法
JP3936176B2 (ja) 遊技機
JP4440908B2 (ja) 遊技機
JPH03147086A (ja) Icカード
US7299315B2 (en) Control device including connecting device for rewriting memory region
JP3750494B2 (ja) 半導体装置
WO2001016873A1 (en) Smart card patch manager
JP3570842B2 (ja) 読出し専用メモリのデータ書換え装置
JP3633812B2 (ja) フラッシュファームダウンロードによるフラッシュメモリ制御システム

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20060815

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20061016

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20070403

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20070404

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100420

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110420

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120420

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120420

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130420

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130420

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140420

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140420

Year of fee payment: 7

LAPS Cancellation because of no payment of annual fees