JP2004013462A - Memory rewriting device, memory rewriting method, information processing device, information processing system, and storage medium - Google Patents
Memory rewriting device, memory rewriting method, information processing device, information processing system, and storage medium Download PDFInfo
- Publication number
- JP2004013462A JP2004013462A JP2002165136A JP2002165136A JP2004013462A JP 2004013462 A JP2004013462 A JP 2004013462A JP 2002165136 A JP2002165136 A JP 2002165136A JP 2002165136 A JP2002165136 A JP 2002165136A JP 2004013462 A JP2004013462 A JP 2004013462A
- Authority
- JP
- Japan
- Prior art keywords
- memory
- communication
- rewriting
- program
- copy
- 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
- Computer And Data Communications (AREA)
- Stored Programmes (AREA)
Abstract
Description
【0001】
【発明の属する技術分野】
本発明は、通信割込に応じて起動される通信プログラムに従って通信先から新規データを受信し、その新規データによりメモリを書き換えるメモリ書換装置、メモリ書換方法、情報処理装置、情報処理システム並びに記憶媒体に関する。
【0002】
【従来の技術】
パソコンやワープロ等を初めとして、小型のテープ印刷装置や印章作成装置等を含む情報処理装置では、一般的に、各種の割込発生に応じて起動される割込処理プログラムやそれらの起動のために割込発生時に参照される割込ベクタ(ベクタテーブル等)などが、書換不可能ROM(マスクROM等)や外部から書換可能な書換可能ROM(フラッシュROM等)等に記憶されて用意される。ここで、後者の書換可能ROMは、仕様変更や論理的不具合(バグ)対策や機種毎のカスタマイズ等に対応しやすく、かつ近年の低価格化もあって、多用される傾向にある。また、通信機能を有する装置では、通信要求の割込(通信割込)に応じて起動された通信プログラムに従って通信が行われるが、この通信機能を利用して受信した新規データにより書換可能であることが要望されている。
【0003】
【発明が解決しようとする課題】
ところが、通信割込用の割込ベクタ(通信割込ベクタ)自体や通信プログラム自体を通信先よりロード(受信)して書き換えたい場合、通信中に書き換えてしまうと、その通信中に複数回の通信割込が必要なときに通信割込ベクタの内容(指定アドレス)が異なって通信プログラムの正常起動ができなくなったり、通信プログラムの処理フローが途中で途切れて正常動作しないなどの不具合が発生する可能性がある。
【0004】
この場合、通信割込ベクタや通信プログラムを書き換えるための書換モードを設定し、その書換モードにおいて、不正動作防止のため単に通信割込ベクタ等の読出しを禁止したのでは、書換モード時には通信割込による通信プログラムの起動ができなくなるので、通信による書換えができなくなる。また、一般に、アドレス空間上、割込ベクタ等をアクセスするためのアドレスは固定なので、単に通信割込ベクタ等をワークメモリにコピーしただけでは、それを利用することはできない。また、受信した新規データを一時格納するワーク用のエリアを確保するのでは、その新規データ用のエリアの他、通信終了後にそれを元来のエリアに移し替えるためのプログラムのエリアなど、余分なメモリ容量を要し、かつ、移し替えのための余分な処理時間を要する。
【0005】
本発明は、通信割込ベクタにより指定された通信プログラムに従って受信した新規データにより通信割込ベクタ自体を書換可能で、かつ、通信中に書き換えても正常に通信できるメモリ書換装置、メモリ書換方法、情報処理装置、情報処理システム並びに記憶媒体を提供することを目的とする。
【0006】
【課題を解決するための手段】
本発明の請求項1のメモリ書換装置は、通信割込に応じて通信プログラムを起動するために参照される通信割込ベクタを記憶する書換対象メモリの内容を、前記通信プログラムに従って通信先から受信した新規データにより書換可能なメモリ書換装置であって、前記書換対象メモリ以外のメモリから成り、前記通信割込ベクタのコピーであるコピーベクタを記憶するワークメモリと、前記書換対象メモリを書き換えるための書換モードを設定する書換モード設定手段と、前記書換モードが設定されていないときの前記通信割込ベクタへのアクセスと、設定されているときの前記コピーベクタへのアクセスが、アドレス空間上、互いに同一アドレスへのアクセスとなるように、メモリアクセスを切り換えるメモリアクセス切換手段と、を備えたことを特徴とする。
【0007】
また、請求項16のメモリ書換方法は、通信割込が発生したときに通信プログラムを起動するために参照される通信割込ベクタを記憶するメモリを書換対象メモリとして、前記通信プログラムに従って通信先から受信した新規データを書き込むことにより、前記書換対象メモリの内容を書換可能なメモリ書換方法であって、前記書換対象メモリ以外のワークメモリに前記通信割込ベクタのコピーであるコピーベクタを記憶しておき、前記書換対象メモリを書き換えるための書換モードを設定し、設定されていないときの通信割込ベクタへのアクセスと設定されているときのコピーベクタへのアクセスとが、アドレス空間上、互いに同一アドレスへのアクセスとなるように、書換モードの設定の有無に従ってメモリアクセスを切り換えることを特徴とする。
【0008】
このメモリ書換装置およびメモリ書換方法では、通信割込が発生したときに通信プログラムを起動するために参照される通信割込ベクタを書込対象メモリに記憶し、通信プログラムに従って受信した新規データを書き込むことにより、書換対象メモリの内容を書換可能なので、通信割込ベクタ自体を書き換えることもできる。ただし、コピーベクタ(通信割込ベクタのコピー)をワークメモリに記憶し、書換モードが設定されていないときの通信割込ベクタへのアクセスと、設定されているときのコピーベクタへのアクセスとが、アドレス空間上、互いに同一アドレスへのアクセスとなるように、書換モードの設定の有無に従ってメモリアクセスを切り換える。このため、書換モードが設定されている場合に、通信割込が発生すると、書換対象メモリに記憶された通信割込ベクタでなく、ワークメモリに記憶されたコピーベクタが参照(アクセス)され、この結果、通信割込ベクタ自体を通信中に書き換えても、正常に通信できる。なお、この場合、受信した新規データを一時格納するワーク用のエリア等を要しないので、一時格納用のエリア等を確保したり、一旦格納した新規データを元来の通信割込ベクタ等のエリアに移し替えるための余分なメモリ容量や余分な処理時間は不要である。
【0009】
また、請求項1のメモリ書換装置において、前記書換対象メモリはフラッシュROMであることが好ましい。
【0010】
このメモリ書換装置では、書換対象メモリはフラッシュROMなので、割込処理プログラムや割込ベクタ等を記憶するためには、RAMより安定した記憶ができて適している一方、書換可能なので、RAMと同様に書換えができる。
【0011】
また、請求項1または2のメモリ書換装置において、前記書換モードが設定されたときに、前記通信割込ベクタをコピーして前記コピーベクタとして前記ワークメモリに記憶させるベクタコピー手段をさらに備えたことが好ましい。
【0012】
このメモリ書換装置では、書換モードが設定されたときに、通信割込ベクタをコピーしてコピーベクタとしてワークメモリに記憶させるので、書換モードを設定することにより、ワークメモリ内にコピーベクタを用意することができる。
【0013】
また、請求項1ないし3のいずれかのメモリ書換装置において、前記通信プログラムは前記書換対象メモリに記憶されており、前記書換モードが設定されたときに、前記通信プログラムをコピーしてコピープログラムとして前記ワークメモリに記憶させるプログラムコピー手段をさらに備えたことが好ましい。
【0014】
このメモリ書換装置では、通信プログラムは書換対象メモリに記憶されていて、書換モードが設定されたときに、通信プログラムをコピーしてコピープログラムとしてワークメモリに記憶させる。このため、通信により書換対象メモリ内の通信プログラムが書き換えられても、元の通信プログラムの内容を確保しておくことができる。すなわち、ここで、書換モードが設定されたときには、通信割込が発生すると、通信割込ベクタに代わってそのコピーであるコピーベクタを参照するが、このコピーベクタの参照により、書換対象メモリ内の通信プログラムでなく、ワークメモリ内のコピープログラムが起動されるようにすれば、新規データにより通信プログラム自体を書換可能で、かつ、通信中に書き換えられても正常に通信可能となる。
【0015】
また、請求項4のメモリ書換装置において、前記通信割込ベクタは相対アドレスに基づいており、前記プログラムコピー手段は、前記通信割込ベクタに対する前記通信プログラムの相対アドレスに、前記コピーベクタに対する前記コピープログラムの相対アドレスが合うように、前記コピープログラムを記憶させることが好ましい。
【0016】
このメモリ書換装置では、通信割込ベクタは相対アドレスに基づいていて、通信割込ベクタに対する通信プログラムの相対アドレスに、コピーベクタに対するコピープログラムの相対アドレスが合うように、コピープログラムを記憶させるので、コピーベクタによる指定アドレスをコピープログラムの格納アドレスに合うように調整する必要がない。
【0017】
また、請求項4のメモリ書換装置において、前記コピーベクタによる指定アドレスを前記コピープログラムの格納アドレスに合うように調整するコピーベクタ調整手段をさらに備えたことが好ましい。
【0018】
このメモリ書換装置では、コピーベクタによる指定アドレスをコピープログラムの格納アドレスに合うように調整するので、コピープログラムの格納アドレスを任意にできる。
【0019】
また、請求項1ないし6のいずれかのメモリ書換装置において、前記ワークメモリの先頭アドレスと前記コピーベクタのアドレスとの相対関係が、前記書換対象メモリの先頭アドレスと前記通信割込ベクタのアドレスとの相対関係に一致し、前記メモリアクセス切換手段は、前記書換対象メモリと前記ワークメモリとのメモリ切換手段を有することが好ましい。
【0020】
このメモリ書換装置では、ワークメモリの先頭アドレスとコピーベクタのアドレスとの相対関係が、書換対象メモリの先頭アドレスと通信割込ベクタのアドレスとの相対関係に一致するので、書換対象メモリとワークメモリとのメモリ切換をしてから、通信割込ベクタを参照するためのメモリアクセスをすれば、ワークメモリ内のコピーベクタを参照するためのメモリアクセスとなる。すなわち、書換モードの設定の有無に従ってメモリ切換を行うだけで、書換モードが設定されていないときの通信割込ベクタへのアクセスと、設定されているときのコピーベクタへのアクセスが、アドレス空間上、互いに同一アドレスへのアクセスとなるように、メモリアクセスを切り換えることができる。
【0021】
また、請求項7のメモリ書換装置において、前記書換対象メモリと前記ワークメモリは、それぞれ1チップで構成され、前記メモリ切換手段は、チップセレクトによって各チップを切り換える手段であることが好ましい。
【0022】
このメモリ書換装置では、書換対象メモリとワークメモリは、それぞれ1チップで構成されるので、チップセレクトによって各チップを切り換えることにより、メモリ切換ができる。
【0023】
また、請求項1ないし8のいずれかのメモリ書換装置において、前記通信プログラムによる通信は、RS−232C、USB、IEEE1394またはセントロニクスの規格に従ったものであることが好ましい。
【0024】
このメモリ書換装置では、通信プログラムによる通信は、RS−232C、USB、IEEE1394またはセントロニクスの規格に従ったものなので、その規格に従って通信して受信した新規データにより書換対象メモリを書き換えることができる。
【0025】
また、請求項10の情報処理装置は、請求項1ないし9のいずれか1項に記載の各手段と、前記書換対象メモリに記憶されたプログラムに従って処理を行うプログラム処理手段と、を備えたことを特徴とする。
【0026】
この情報処理装置は、上述したメモリ書換装置(の各手段)を備え、書換対象メモリに記憶されたプログラムに従って処理を行うので、各種処理が可能なほか、通信プログラムに従った通信により各種プログラムを新規データとして受信して格納できるので、アップデートしやすい情報処理装置となる。
【0027】
また、請求項10の情報処理装置において、所定の印刷対象物に印刷を行う印刷手段をさらに備え、前記複数の割込プログラムには、前記印刷手段に前記印刷を行わせるプログラムが含まれることが好ましい。
【0028】
この情報処理装置は、所定の印刷対象物に印刷を行う印刷手段をさらに備え、複数の割込プログラムには、印刷手段に印刷を行わせるプログラムが含まれるので、印刷装置に適用できる。
【0029】
また、請求項11の情報処理装置において、前記印刷対象物は、テープであることが好ましい。
【0030】
この情報処理装置は、印刷対象物は、テープなので、テープ印刷装置に適用できる。
【0031】
また、請求項13の情報処理システムは、請求項10ないし12のいずれかに記載の情報処理装置と、前記通信先として前記新規データを送信する供給装置と、を備えたことを特徴とする。
【0032】
この情報処理システムでは、10ないし12のいずれかに記載の情報処理装置と、通信先として新規データを送信する供給装置と、を備えるので、供給装置側に格納する新規データを変更したり追加したりすることにより、情報処理装置側に送信する新規データを種々変更できる。
【0033】
また、請求項13の情報処理システムにおいて、前記供給装置は、前記新規データおよびそれを送信するためのプログラムを記憶した記憶媒体を装着可能な装着手段と、装着された前記記憶媒体内に記憶された前記プログラムに従って前記新規データを送信するプログラム実行手段と、を有することが好ましい。
【0034】
この情報処理システムでは、供給装置は、新規データおよびそれを送信するためのプログラムを記憶した記憶媒体を装着し、その記憶媒体内に記憶されたプログラムに従って新規データを送信することができるので、各種の新規データを記憶したその種の記憶媒体を装着するだけで、プログラムを実行して情報処理装置に新規データを送信でき、それによるアップデートができる。
【0035】
また、請求項13または14の情報処理システムにおいて、前記供給装置は、所定のネットワークを介して他の装置と接続され、前記他の装置から前記新規データを受信する上位通信手段を有することが好ましい。
【0036】
この情報処理システムでは、供給装置は、所定のネットワークを介して他の装置と接続され、他の装置から新規データを受信できるので、種々の新規データを受信して、情報処理装置側に送信することにより、情報処理装置を種々アップデートできる。
【0037】
また、請求項17の記憶媒体は、請求項1ないし9のいずれかに記載のメモリ書換装置の各手段の機能を実行可能なプログラムを記憶することを特徴とする。
【0038】
また、請求項18の記憶媒体は、請求項16に記載のメモリ書換方法を実行可能なプログラムを記憶することを特徴とする。
【0039】
これらの記憶媒体に記憶されたプログラムを読み出して実行することにより、通信プログラムに従って通信先から受信した新規データを書き込むことができ、書換対象メモリの内容を書き換えることができる。
【0040】
【発明の実施の形態】
以下、本発明の一実施形態に係るテープ印刷装置について、添付図面を参照しながら詳細に説明する。
【0041】
図1に示すように、まず、本実施形態のテープ印刷装置(情報処理装置)1は、データサーバDSとインタフェースIFを介して接続され、全体として印刷システム(情報処理システム)PSYSを構成している。データサーバDSは、テープ印刷装置1に対して、メモリ書換用の新規データ(ダウンロードデータ)を供給するものである。同図は単純な構成の例を示していて(後述の図10参照)、スタンドアロンのパソコンPCをデータサーバDSとし、そのパソコンPCとテープ印刷装置1とを、USB等のインタフェースIFで接続するだけで、印刷システムPSYSを構成する。
【0042】
ここで、テープ印刷装置1は、同図に示すように、装置ケース2により外殻が形成され、装置ケース2の前部上面には各種入力キーから成るキーボード3を備えている。後部上面には、その左部に開閉蓋21が取り付けられ、その右部にディスプレイ4が配設され、その側面には、図外の内部電源部に接続するACアダプタ接続口24(アダプタ省略)の他、(USBケーブルによる)インタフェースIFが接続されるUSBコネクタ25が配置されている。
【0043】
この場合、例えば図2に示すように、メモリに書き込むための新規データとしてパソコンPCに記憶されたデータをダウンロードする構成となる。もちろん、これらの場合、新規データを外部からコンパクトディスク(CD、CD−ROM)501等により供給することもできる。なお、インタフェースIFとしては、シリアルデータ通信(RS−232C、USB、IEEE1394等)でも、パラレルデータ通信(セントロニクス等)でも良い。また、これらは有線通信の規格であるが、無線通信を利用することも可能である。
【0044】
テープ印刷装置1は、メモリに関連する構成として、図3に示すように、各種制御の中枢となるCPU10と、インタフェースIFからUSBコネクタ25を介してデータサーバDSとCPU10との通信を司るUSBドライバ用のIC等から成るUSBインタフェースドライバ(USBドライバ)IFDと、メモリとして書換可能なフラッシュROM(本実施形態では16Mバイトを想定:以下単に「ROM」)20と、スタティックRAM(SRAM:以下単に「RAM」)30と、ROM20とRAM30との役割(メモリアクセス)を切り換えるメモリアクセス切換回路40と、を備えている。
【0045】
メモリアクセス切換回路40は、図4(a)に示すように、論理回路として構成され、メモリ切換情報記憶回路401と、各論理ゲートU1〜U8と、を有して、いわゆる選択回路(セレクタ)として構成されている。メモリ切換情報記憶回路401は、ROM30を書き換える書換モードか否かを記憶する回路であり、具体的には1ビットのフリップフロップやレジスタ内の1ビット等で構成でき、いわゆるフラグ等と呼ばれる回路で構成される。
【0046】
以下では、これを単に「書換モードフラグ」とし、書換モードフラグCF(の出力)=1のときに「書換モード」、0のときに「通常モード」とする。この書換モードフラグは、図6で後述のアドレスマップ上、I/Oマップ等と同様にアドレスが割り振られ、書換モードフラグCFへの例えば「1」の書込(セット)または「0」の書込(リセット)は、オペレーティングシステム(OS)上、その指定アドレスへの「1」または「0」の書込として扱われる。同図のチップセレクト信号CSSはその書込等の時に有効(イネーブル)となる信号である。
【0047】
この場合、同図のメモリアクセス切換回路40は、4個のアンド(AND)ゲートU1〜U4、2個のオア(OR)ゲートU5〜U6、2個のノット(NOT)ゲートU7〜U8により、図5に示すように、書換モードフラグCF=0の通常モードのときには、CPU10からのチップセレクト信号CS0がCSA(CS0→CSA)、チップセレクト信号CS1がCSB(CS1→CSB)となるように、チップセレクト信号(すなわちメモリアクセス)を切り換え、書換モードフラグCF=1の書換モードのときには、CS0→CSB、CS1→CSAとなるように、切り換える。
【0048】
なお、図4(b)は同一論理を実現する別の構成例を示し、同様のメモリ切換情報記憶回路401(書換モードフラグCF)と、ナンド(NAND)ゲートU1s〜U7sとアンド(AND)ゲートU8sを有する。ここで、アンドゲートU8sは論理上は省略可能であり、また、ナンドゲートU7sとアンドゲートU8sの代わりに、これらを合わせた論理のアンドナンドゲートU9sを使用しても良い。
【0049】
図3に示すように、テープ印刷装置1のメモリは、ROM20+RAM30により構成され、図2および図6に示すように、アドレス空間(アドレスマップ)上、プログラム等や制御用のデータを記憶する制御メモリエリア201と、ワーク用のワークメモリエリア301とに分けて使用される。
【0050】
図3〜図5で前述のCPU10からのチップセレクト信号CS0は、制御メモリエリア201へのメモリアクセス時にイネーブルとなる信号であり、チップセレクト信号CS1は、ワークメモリエリア301へのメモリアクセス時にイネーブルとなる信号である。また、メモリアクセス切換回路40から出力されるチップセレクト信号CSAは、ROM20へのメモリアクセスをイネーブルにする信号であり、チップセレクト信号CSBは、RAM30へのメモリアクセスをイネーブルにする信号である。
【0051】
通常モード時には、前述のように、CS0→CSA、CS1→CSBとなるので(図5参照)、ROM20が制御メモリエリア201を、RAM30がワークメモリエリア301を担当する。
【0052】
これらのうち、通信により書き込まれる対象エリアは、RAM30が担当するワークメモリエリア301側であり、図2に示すように、パソコンPC(すなわちデータDS)では、例えば書換用の新規データを記憶したCD−ROM501を装着(挿入)し、ダウンロード用の専用アプリケーション502を駆動して、テープ印刷装置1のワークメモリエリア301内の指定アドレスにより指定されたダウンロードデータ領域に新規データ(ダウンロードデータ)をダウンロードする。
【0053】
ところで、テープ印刷装置1では、図7に示すように、電源キーを押すこと(電源オン)等により処理が開始すると、まず、前回の電源オフ時の状態に戻すために、退避していた各制御フラグを復旧するなどの初期設定を行い(S1)、次に、前回の表示画面を初期画面として表示する(S2)。
【0054】
図7のその後の処理、すなわちキー入力か否かの判断分岐(S3)および各種割込処理(S4)は、概念的に示した処理である。実際には、テープ印刷装置1では、初期画面表示(S2)が終了すると、キー入力割込を許可し、キー入力割込が発生するまでは、そのままの状態を維持し(S3:No)、何らかのキー入力割込が発生すると(S3:Yes)、それぞれの割込処理に移行して(S4)、その割込処理が終了すると、再度、その状態を維持する(S3:No)。
【0055】
すなわち、テープ印刷装置1では、主な処理を割込処理により行う。例えば印刷画像作成などの準備ができていれば、ユーザが任意の時点で印刷キーを押すことにより、印刷処理割込が発生して、印刷処理が起動され、印刷画像データに基づいて印刷画像の印刷ができる。
【0056】
そして、図6に示すように、これら各種の割込の発生に応じて起動される割込処理プログラムおよびそれらの起動のために割込発生時に参照される割込ベクタ(ベクタテーブル等)V20などは、通常モード時にROM20が担当する制御メモリエリア201側に記憶されている。
【0057】
例えば図2で前述のダウンロード用の専用アプリケーションからの通信要求等は、図3で前述のUSBドライバIFDを介して通信割込としてCPU10の端子INTに入力され、CPU10では、その入力(割込要求)を受けて、割込ベクタV20を参照し、該当する通信プログラムP20の先頭アドレスを検出して、それを起動する。
【0058】
テープ印刷装置1では、大きなデータをダウンロードする場合、例えば64Kバイト毎程度に分割して送受信するので、一回(まとまった1個のデータ)の通信の間にも複数回の通信割込が発生し、通信プログラムP20が起動される。
【0059】
ところで、本実施形態のテープ印刷装置1では、通常はRAM30用に使用される上記のダウンロードにより、ROM20を書き換えることができるので、以下、この点について説明する。
【0060】
テープ印刷装置1のキーボード3は、ROM20を書き換える書換モードをセット(設定)するための書換モードキーを有し、この書換モードキーが押下されると、書換モード設定割込が発生して、図8に示すように、書換モード設定処理(S10)が起動され、まず、割込ベクタV20のコピーを行う(S11)。すなわち、図6に示す通常モード時において、制御メモリエリア201内にある割込ベクタV20を、ワークメモリエリア301内の対応アドレスにコピーして、コピーベクタV30とする(S11)。
【0061】
割込ベクタV20のコピー(S10)が終了すると、次に、必要プログラムのコピーを行う(S12)。ここでは、図6に示す通常モード時において制御メモリエリア201内にあり且つ通信中に起動させる必要のあるプログラム、例えば前述の通信プログラムP20などのプログラムを、ワークメモリエリア301内の対応アドレスにコピーして、コピープログラムP30とする(S12)。ここでは、説明の都合上、単に通信プログラムP20のみコピーしてコピープログラムP30とする。
【0062】
必要プログラムのコピー(S12)が終了すると、次に、書換モードをセットして(S13)、書換モード設定処理(S10)を終了する(S14)。具体的には、アドレス空間上、所定アドレスに設定された書換モードフラグCFへの「1」の書込(書換モードフラグCF←1)を行って(S13)、処理(S10)を終了する(S14)。
【0063】
書換モードが設定されると、すなわち書換モード時には、前述のように、CS0→CSB、CS1→CSAとなるので(図5参照)、図6に示すように、RAM30が制御メモリエリア201を、ROM20がワークメモリエリア301を担当する。
【0064】
これらのうち、通信により書き込まれる対象エリアは、ワークメモリエリア301側、すなわちROM20が担当する側であり、図2で前述のダウンロードは、テープ印刷装置1のワークメモリエリア301内の指定アドレスにより指定されたダウンロードデータ領域に新規データをダウンロードする。
【0065】
この場合、テープ印刷装置1側で起動される通信プログラムは、図6の書換モード時に制御メモリエリア内にあり且つ通信プログラムP20と同内容のコピープログラムP30であり、それを起動する割込ベクタは、同じく図6の書換モード時に制御メモリエリア内にあり且つ割込ベクタV20と同内容のコピーベクタV30である。
【0066】
すなわち、通常モード時にRAM30内にダウンロードして新規データで書き換えることができたのと同様に、書換モード時には、ワークメモリエリア301として割り当てられたアドレスを指定して、ROM20内にダウンロードして新規データで書き換えることができる。また、これらが通信中に書き換えられても、この通信中は書換モード時であり、コピーベクタV30およびコピープログラムP30に従って通信が行われるので、正常に通信できる。
【0067】
上述のように、本実施形態のテープ印刷装置1では、書換モードキーの押下によりROM20を書き換える書換モードをセット(設定)でき、これにより、ROM20とRAM30へのメモリアクセスを相互に切り換えられるので、RAM30のエリア(ワークメモリエリア)を対象エリアとしてダウンロードするための専用アプリケーションなどのデータベースDS側の書込プログラムと、それに応答して通信を行うテープ印刷装置1側の通信プログラムP20とを利用して、ROM20への書込みができる。
【0068】
また、この場合、データサーバDSからの通信に応答する通信プログラムP20やそれを起動するための通信割込ベクタを含む割込ベクタV20は、書換モード設定時の通信割込(および通信プログラムの起動)以前に、ROM20からRAM30へコピーされ、書換モード時の通信では、メモリアクセスの交換によりRAM30内のコピー側(コピープログラムP30、コピーベクタV30)が参照されるので、その通信中にROM20内の通信プログラムP20や割込ベクタV20等が書き換えられても、正常に通信できる。
【0069】
また、この場合、通信プログラムP20で対象エリアとしていたワークエリア301のアドレスの範囲への書込みなので、書込のために指定可能なアドレスの範囲を広げることなく、通信プログラムP20を利用できる。また、この場合、受信した新規データを一時格納するワーク用のエリア等を要しないので、一時格納用のエリア等を確保したり、一旦格納した新規データを元来の通信割込ベクタ等のエリアに移し替えるための余分なメモリ容量や余分な処理時間は必要としない。
【0070】
なお、上述のダウンロードが終了した時点、すなわち通信プログラムP20のコピーであるコピープログラムP30が通信終了を検出した時点で、書換モードをリセット(書換モードフラグCF←0)しても良いし、書換モードキー以外に例えば書換モード解除キー等を設けて、そのキーの押下により書換モードをリセットしても良い。また、例えば同一の書換モードキーを押す毎に、書換モードと通常モードを交互に切り換えるように、すなわち押す毎に、書換モードフラグのセットとリセットを交互に繰り返すようにしても良い。
【0071】
この場合、書換モードキーを押す毎に、例えば書換モード切換割込が発生し、例えば図9に示すように、書換モード切換処理(S20)が起動され、まず、そのときのモードが書換モード(書換モードフラグCF=1)か否かを判別し(S21)、通常モードのときには(S21:No)、図8で前述の書換モード設定処理(S10)と同様の書換モード設定処理を行って(S22)、処理(S20)を終了する(S23)。ただし、この場合、通信中にも本処理(S20:本割込処理プログラム)を起動するので、書換モード設定処理(S22)におけるコピープログラムには本プログラムを含める。
【0072】
そして、次に書換モードキーが押されて書換モード切換割込が発生し、書換モード切換処理(S20)が起動されると、このときには書換モードなので(S21:Yes)、書換モードをリセット(書換モードフラグCF←0)して(S24)、処理(S20)を終了する(S23)。これらにより、同一の書換モードキーを押す毎に、書換モードと通常モードを交互に切り換えることができる。
【0073】
なお、上述の実施形態では、書換モードキーの押下後、書換モードを設定する前に、割込ベクタV20と通信プログラムP20とを、制御メモリエリア201内からワークメモリエリア301内の対応アドレスにコピーして、コピーベクタV30とコピープログラムP30にするので、コピーベクタV30とコピープログラムP30の相対関係は、割込ベクタV20と通信プログラムP20の相対関係と一致する(図6参照)。このため、割込ベクタV20により参照される通信プログラムP20のアドレスを相対アドレスとしておくことにより、コピー後に、コピーベクタV30による指定(参照)アドレス(相対アドレス)を、コピープログラムP30の格納アドレスに合うように調整する必要がない。
【0074】
ただし、逆に、コピーベクタV30による指定アドレスを、コピー後に、コピープログラムP30の格納アドレスに合うように調整するようにしておいて、コピープログラムP30の格納アドレス、すなわち通信プログラムP20をコピーするアドレスを任意にできる。例えば図10に示すように、コンパクトに隣接してコピーした後、コピープログラムP30の格納アドレスに合わせて、コピーベクタV30による指定アドレスを調整できる。
【0075】
また、図11に示すように、ROM20やRAM30以外のメモリとして例えばROM25を用意して、通信プログラムP25を記憶させておき、割込ベクタV20による通信プログラムP25を指定する指定アドレスを、一般的な絶対アドレスとすることもできる。この場合、割込ベクタV20を任意のアドレスにコピーしても、指定アドレスの調整を要しない。また、書込対象とならないので、通信に際して通信プログラムP25のコピーは必要としない。
【0076】
また、図12に示すように、コピーベクタV30とコピープログラムP30を別々のRAM30とRAM35にコピーして、コピーベクタV30による指定アドレスを調整しても良い。また、この場合、コピーベクタV30のサイズは予め確定できるので、図13に示すように、メモリアクセス切換回路40とともに1チップに組み込んで、専用IC50としても良い。また、図14に示すように、コピーして使うためのコピー通信プログラムP20sを予め用意しておき、それをコピーしてコピープログラムP30とした後、コピーベクタV30による指定アドレスを調整しても良い。なお、この場合のコピー先は、図6や図10と同様にコピーベクタV30とともにRAM30でも良いし、図12と同様に別のRAM35でも良く、この場合のROM30は、専用IC50でも良い。
【0077】
また、上述の実施形態では、RAM30内の先頭アドレスとコピーベクタV30との相対関係は、ROM20内の先頭アドレスと割込ベクタV20との相対関係に一致する。
【0078】
このため、書換モードの設定の有無に従って、ROM20とRAM30とのメモリ切換を行うだけで、書換モードが設定されていないときの割込ベクタV20へのアクセスと、設定されているときのコピーベクタV30へのアクセスが、アドレス空間上、互いに同一アドレスへのアクセスとなるように、メモリアクセスを切り換えることができる。さらに、ROM20とRAM30はそれぞれ1チップなので、チップセレクトによって各チップを切り換えることにより、メモリ切換、すなわちメモリアクセスの切換えができる。なお、この場合のチップセレクトには、図4や図5等で前述の純然たるチップセレクト信号ばかりでなく、ROM20やRAM30に配られるアドレスの一部を、書換モードか否かによりアドレス変換するなど、結果としてチップ選択となるものも含む。
【0079】
なお、上述の実施形態では、上記のように、書換モード設定により、ROM20とRAM30に対するメモリアクセスを、チップ単位で(チップセレクトにより)切り換えた(交換した)が、上述の割込ベクタV20や通信プログラムP20などのように、通信時にも必要で且つ通信により書き換えられる可能性のある情報(通信コア情報)のみを対象として、書換モードの設定の有無により、通信コア情報の本体とそのコピーに関するメモリアクセスのみを切り換えて、交換するようにしても良い。
【0080】
また、上述の実施形態では、書換可能なROM20としてフラッシュROMの例を挙げたが、プログラム等をスタティックに記憶可能な書換対象メモリとしては、このほか、EEPROM(electrically eraseable programmableROM)、不揮発性RAM、FRAM(ferric RAM)などでも良い。
【0081】
また、上述の実施形態では、より単純な構成として、データサーバDSを、スタンドアロンタイプの装置(PC)としたが、データサーバDSは、例えば図15に示すように、ネットワークNWを中心に、端末となる複数のワークステーションWS(パソコンPC等)1〜3やターミナルアダプタ(ルータ、リピータ、ハブ等を含む)TA等を接続して構成し、これらの端末のいずれかからインタフェースIFを介してテープ印刷装置1を接続しても良い。すなわち、同図の構成では、データサーバDS内の各装置(WS1〜3、TA等)に記憶された新規データをダウンロードする構成となる。
【0082】
また、この場合のネットワークNWとしては、IEEE標準LAN準拠の通信プロトコルに従ったもの、例えばいわゆるインターネットや各種のローカルエリアネットワーク(LAN:イーサネット(登録商標)、10/100ベース(Base)等)が採用できる。なお、これらは有線通信の規格であるが、無線通信を利用することも可能である。
【0083】
また、上述の実施形態では、図1で前述のパソコンPC(データサーバDS)に、新規データを記憶したCD−ROM501を挿入し、ダウンロード用の専用アプリケーション502を駆動したが、この専用アプリケーション502は、パソコンPC内に元から準備しておいても良いし、このアプリケーションプログラム自体も新規データと共にCD−ROM501内に記憶しておき、それを起動できるようにしても良い。前者の場合、CD−ROMを入れ替えるだけで種々の新規データに変更できる。また、後者の場合、一般的なオペレーションシステム(OS)で実行可能なアプリケーションにしておけば、そのOSを有するパソコン等に、各種の新規データを記憶したその種のCD−ROMを装着するだけで、プログラムを実行してダウンロードにより新規データを送信でき、テープ印刷装置1を種々アップデートできる。
【0084】
なお、上述の実施形態では、CD−ROMを例に挙げたが、FD、MO、DVD等、その他の記憶媒体を利用しても良い。また、図1の構成でなく、図10のようにネットワークを利用する場合には、テープ印刷装置1の上位機(図示の例ではPC1またはTA)を介して、そのネットワークに接続された各種の他の装置(図示の例ではWS2やWS3等)から新規データを受信できるので、種々の新規データをダウンロードして、ROM20の内容を種々変更して、テープ印刷装置1をアップデートできる。
【0085】
また、上述の実施形態では、テープ印刷装置の例を挙げたが、通信機能を利用して新規データを受信して書換可能ROMを書き換えるものであれば、印刷対象物がテープではない他のタイプの印刷装置にも適用できるし、印刷装置以外の情報処理装置にも適用できる。また、上述の新規データのダウンロード等を実行するプログラムをCD等を初めとする記憶媒体に記憶しておけば、それを実行可能な任意の印刷装置あるいは情報処理装置に実装(装着)して、記憶されたプログラムを読み出して実行することにより、受信した新規データによる書換可能ROMの書換えが容易にできる。もちろん、その他、種々の形態を採用でき、本発明の要旨を逸脱しない範囲で、適宜変更も可能である。
【0086】
【発明の効果】
上述のように、本発明のメモリ書換装置、メモリ書換方法、情報処理装置、情報処理システム並びに記憶媒体によれば、通信割込ベクタにより指定された通信プログラムに従って新規データを受信し、その新規データにより通信割込ベクタ自体を書換可能で、かつ、通信中に書き換えても正常に通信できる、などの効果がある。
【図面の簡単な説明】
【図1】本発明の一実施形態に係るテープ印刷装置を構成要素とする印刷システムの構成の一例を示す説明図である。
【図2】図1の印刷システムにおけるテープ印刷装置のメモリマップイメージおよびパソコンからのダウンロードイメージを示す説明図である。
【図3】図1のテープ印刷装置1のメモリ関連の概略構成を示すブロック図である。
【図4】図3のメモリアクセス切換回路の回路構成の例を示す説明図である。
【図5】図3のメモリアクセス切換回路の各モード時における切換イメージを示す説明図である。
【図6】図5に対応して、各モード時におけるアドレス空間と担当メモリと記憶内容の説明図である。
【図7】テープ印刷装置の制御全体の概略処理を示すフローチャートである。
【図8】書換モード設定処理を示すフローチャートである。
【図9】同一の書換モードキーの押下毎に書換モードのセットとリセットを交互に繰り返す例における書換モード切換処理を示すフローチャートである。
【図10】割込ベクタ、通信プログラム、コピーベクタおよびコピープログラムの格納イメージの図6とは別の一例を示す説明図である。
【図11】コピープログラムが不要な場合の、割込ベクタ、通信プログラムおよびコピーベクタの格納イメージの一例を示す説明図である。
【図12】コピーベクタとコピープログラムを別メモリに格納する別の一例の示す、図10と同様の説明図である。
【図13】メモリアクセス切換回路をRAMとともに1チップ化した専用ICのイメージを示す説明図である。
【図14】通信プログラム以外にコピーのためのコピー通信プログラムを用意したさらに別の一例の示す、図10と同様の説明図である。
【図15】他の構成の一例を示す、図1と同様の説明図である。
【符号の説明】
1 …… テープ印刷装置
10 …… CPU
20 …… ROM(書換可能ROM、フラッシュROM)
30 …… RAM(スタティックRAM)
40 …… メモリアクセス切換回路
201 …… 制御メモリエリア
301 …… ワークメモリエリア
501 …… CD−ROM
CF …… 書換モードフラグ
CS0、CS1、CSA、CSB、CSS …… チップセレクト信号
DS …… データサーバ
IF …… インタフェース
IFD …… USBドライバ
NW …… ネットワーク
P20 …… 通信プログラム(通信コア情報)
P30 …… コピープログラム(コピーコア情報)
PC …… パソコン
PSYS …… 印刷システム
TA …… ターミナルアダプタ
V20 …… 割込ベクタ(通信コア情報)
V30 …… コピーベクタ(コピーコア情報)
WS1〜WS3 …… ワークステーション[0001]
TECHNICAL FIELD OF THE INVENTION
The present invention relates to a memory rewriting device, a memory rewriting method, an information processing device, an information processing system, and a storage medium that receive new data from a communication destination according to a communication program started in response to a communication interrupt and rewrite a memory with the new data. About.
[0002]
[Prior art]
In general, information processing devices such as personal computers and word processors, including small tape printers and seal making devices, require an interrupt processing program that is started in response to various interrupts, An interrupt vector (such as a vector table) referred to when an interrupt occurs is stored and prepared in a non-rewritable ROM (such as a mask ROM) or an externally rewritable ROM (such as a flash ROM). . Here, the latter rewritable ROM tends to be used frequently because it is easy to cope with specification changes, countermeasures against logical defects (bugs), customization for each model, etc., and there is a recent trend toward lower prices. Further, in an apparatus having a communication function, communication is performed in accordance with a communication program started in response to a communication request interruption (communication interruption), and the apparatus can be rewritten by new data received using this communication function. It is desired.
[0003]
[Problems to be solved by the invention]
However, when the communication interrupt vector (communication interrupt vector) itself or the communication program itself is to be loaded (received) from a communication destination and rewritten, if rewritten during communication, a plurality of times are required during the communication. When a communication interrupt is required, the contents (designated address) of the communication interrupt vector are different, so that the communication program cannot be started normally, or the processing flow of the communication program is interrupted in the middle and malfunctions occur. there is a possibility.
[0004]
In this case, if the rewrite mode for rewriting the communication interrupt vector and the communication program is set and the reading of the communication interrupt vector and the like is simply prohibited in the rewrite mode in order to prevent unauthorized operation, the communication interrupt in the rewrite mode Cannot start the communication program, so that rewriting by communication cannot be performed. In general, an address for accessing an interrupt vector or the like is fixed in an address space. Therefore, simply copying a communication interrupt vector or the like into a work memory cannot be used. In addition, securing a work area for temporarily storing received new data requires an extra area, such as an area for the new data, and an area for a program for transferring it to the original area after the end of communication. A memory capacity is required and extra processing time for transfer is required.
[0005]
The present invention provides a memory rewriting device, a memory rewriting method and a memory rewriting device capable of rewriting a communication interrupt vector itself with new data received in accordance with a communication program specified by the communication interrupt vector, and capable of normally communicating even if rewritten during communication. It is an object to provide an information processing device, an information processing system, and a storage medium.
[0006]
[Means for Solving the Problems]
According to a first aspect of the present invention, there is provided a memory rewriting device for receiving, from a communication destination, a content of a rewriting target memory storing a communication interrupt vector referred to for starting a communication program in response to a communication interrupt in accordance with the communication program. A memory rewriting device rewritable by the new data, comprising a memory other than the memory to be rewritten, a work memory for storing a copy vector which is a copy of the communication interrupt vector, and a memory for rewriting the memory to be rewritten. Rewriting mode setting means for setting a rewriting mode, access to the communication interrupt vector when the rewriting mode is not set, and access to the copy vector when the rewriting mode is set, are mutually different in an address space. Memory access switching means for switching memory access so as to access the same address. And wherein the door.
[0007]
A memory rewriting method according to a sixteenth aspect of the present invention provides a memory rewriting method, wherein a memory storing a communication interrupt vector referred to for starting a communication program when a communication interrupt occurs is set as a memory to be rewritten from a communication destination according to the communication program. A memory rewriting method capable of rewriting the content of the rewriting target memory by writing the received new data, wherein a copy vector that is a copy of the communication interrupt vector is stored in a work memory other than the rewriting target memory. A rewrite mode for rewriting the memory to be rewritten, the access to the communication interrupt vector when not set and the access to the copy vector when set are the same in the address space. It is necessary to switch memory access according to the presence or absence of the rewrite mode so that the address is accessed. And butterflies.
[0008]
In the memory rewriting device and the memory rewriting method, a communication interrupt vector referred to for starting a communication program when a communication interrupt occurs is stored in a write target memory, and new data received according to the communication program is written. As a result, the contents of the rewriting target memory can be rewritten, so that the communication interrupt vector itself can be rewritten. However, the copy vector (copy of the communication interrupt vector) is stored in the work memory, and the access to the communication interrupt vector when the rewrite mode is not set and the access to the copy vector when the rewrite mode is set. The memory access is switched according to the setting of the rewrite mode so that the same address is accessed in the address space. For this reason, when a communication interrupt occurs when the rewrite mode is set, the copy vector stored in the work memory is referenced (accessed) instead of the communication interrupt vector stored in the memory to be rewritten. As a result, normal communication can be performed even if the communication interrupt vector itself is rewritten during communication. In this case, since there is no need for a work area or the like for temporarily storing the received new data, an area or the like for temporary storage can be secured, or the newly stored once can be stored in an area such as the original communication interrupt vector. No extra memory capacity or extra processing time is required to transfer to.
[0009]
Further, in the memory rewriting device according to
[0010]
In this memory rewriting device, since the rewriting target memory is a flash ROM, it is more suitable for storing an interrupt processing program, an interrupt vector, and the like than a RAM. Can be rewritten.
[0011]
3. The memory rewriting device according to
[0012]
In this memory rewriting device, when the rewriting mode is set, the communication interrupt vector is copied and stored in the work memory as a copy vector. Therefore, by setting the rewriting mode, the copy vector is prepared in the work memory. be able to.
[0013]
Further, in the memory rewriting device according to any one of
[0014]
In this memory rewriting device, the communication program is stored in the memory to be rewritten, and when the rewriting mode is set, the communication program is copied and stored in the work memory as a copy program. Therefore, even if the communication program in the rewrite target memory is rewritten by communication, the contents of the original communication program can be secured. That is, when the rewrite mode is set, when a communication interrupt occurs, the copy vector which is a copy thereof is referred to instead of the communication interrupt vector. If the copy program in the work memory is activated instead of the communication program, the communication program itself can be rewritten with new data, and normal communication can be performed even if rewritten during communication.
[0015]
5. The memory rewriting device according to
[0016]
In this memory rewriting device, the communication interrupt vector is based on the relative address, and the copy program is stored such that the relative address of the copy program with respect to the copy vector matches the relative address of the communication program with respect to the communication interrupt vector. There is no need to adjust the address specified by the copy vector to match the storage address of the copy program.
[0017]
It is preferable that the memory rewriting device of the fourth aspect further includes a copy vector adjusting unit that adjusts an address specified by the copy vector so as to match a storage address of the copy program.
[0018]
In this memory rewriting device, the address specified by the copy vector is adjusted to match the storage address of the copy program, so that the storage address of the copy program can be set arbitrarily.
[0019]
7. The memory rewriting device according to
[0020]
In this memory rewriting device, the relative relationship between the start address of the work memory and the address of the copy vector matches the relative relationship between the start address of the rewrite target memory and the address of the communication interrupt vector. If memory access for referring to the communication interrupt vector is performed after the memory is switched, the memory access for referring to the copy vector in the work memory is performed. That is, by simply performing memory switching according to the setting of the rewrite mode, access to the communication interrupt vector when the rewrite mode is not set and access to the copy vector when the rewrite mode is set are not performed in the address space. The memory access can be switched so that accesses to the same address are made mutually.
[0021]
Further, in the memory rewriting device according to claim 7, it is preferable that each of the rewriting target memory and the work memory is formed of one chip, and the memory switching means is means for switching each chip by chip select.
[0022]
In this memory rewriting device, the rewriting target memory and the work memory are each configured by one chip, so that the memory can be switched by switching each chip by chip select.
[0023]
Further, in the memory rewriting device according to any one of
[0024]
In this memory rewriting device, the communication by the communication program conforms to the standard of RS-232C, USB, IEEE1394 or Centronics. Therefore, the memory to be rewritten can be rewritten by new data received by communication according to the standard.
[0025]
According to a tenth aspect of the present invention, there is provided an information processing apparatus comprising: each of the means according to any one of the first to ninth aspects; and a program processing means for performing a process in accordance with a program stored in the memory to be rewritten. It is characterized by.
[0026]
This information processing apparatus includes the above-described memory rewriting device (each means thereof), and performs processing in accordance with the program stored in the memory to be rewritten. Since the data can be received and stored as new data, the information processing apparatus can be easily updated.
[0027]
The information processing apparatus according to
[0028]
The information processing apparatus further includes a printing unit that prints on a predetermined print target, and the plurality of interrupt programs include a program that causes the printing unit to perform printing, and thus can be applied to the printing apparatus.
[0029]
In the information processing apparatus according to the eleventh aspect, it is preferable that the print target is a tape.
[0030]
This information processing apparatus can be applied to a tape printing apparatus because the print target is a tape.
[0031]
An information processing system according to a thirteenth aspect includes the information processing device according to any one of the tenth to twelfth aspects, and a supply device that transmits the new data as the communication destination.
[0032]
Since this information processing system includes the information processing device according to any one of 10 to 12 and a supply device that transmits new data as a communication destination, new data to be stored in the supply device is changed or added. Thus, new data to be transmitted to the information processing apparatus can be variously changed.
[0033]
14. The information processing system according to claim 13, wherein the supply device includes: a mounting unit capable of mounting a storage medium storing the new data and a program for transmitting the new data; and a storage unit stored in the mounted storage medium. Program transmitting means for transmitting the new data according to the program.
[0034]
In this information processing system, the supply device can attach a storage medium storing new data and a program for transmitting the new data, and can transmit new data in accordance with the program stored in the storage medium. The new data can be transmitted to the information processing apparatus by executing the program, and the update can be performed simply by mounting the storage medium of the type storing the new data.
[0035]
Further, in the information processing system according to claim 13 or 14, it is preferable that the supply device is connected to another device via a predetermined network, and has a higher-level communication unit that receives the new data from the other device. .
[0036]
In this information processing system, the supply device is connected to another device via a predetermined network and can receive new data from the other device. Therefore, the supply device receives various new data and transmits it to the information processing device side. Thereby, the information processing apparatus can be variously updated.
[0037]
A storage medium according to a seventeenth aspect stores a program capable of executing the function of each unit of the memory rewriting device according to any one of the first to ninth aspects.
[0038]
Further, a storage medium according to claim 18 stores a program capable of executing the memory rewriting method according to claim 16.
[0039]
By reading and executing the programs stored in these storage media, new data received from the communication destination can be written according to the communication program, and the contents of the memory to be rewritten can be rewritten.
[0040]
BEST MODE FOR CARRYING OUT THE INVENTION
Hereinafter, a tape printer according to an embodiment of the present invention will be described in detail with reference to the accompanying drawings.
[0041]
As shown in FIG. 1, first, a tape printing apparatus (information processing apparatus) 1 of the present embodiment is connected to a data server DS via an interface IF, and configures a printing system (information processing system) PSYS as a whole. I have. The data server DS supplies the
[0042]
Here, as shown in FIG. 1, the
[0043]
In this case, for example, as shown in FIG. 2, the configuration is such that data stored in the personal computer PC is downloaded as new data to be written to the memory. Of course, in these cases, the new data can be supplied from the outside by a compact disk (CD, CD-ROM) 501 or the like. The interface IF may be serial data communication (RS-232C, USB, IEEE1394, etc.) or parallel data communication (Centronics, etc.). These are standards for wired communication, but wireless communication can also be used.
[0044]
As shown in FIG. 3, the
[0045]
As shown in FIG. 4A, the memory
[0046]
Hereinafter, this is simply referred to as “rewrite mode flag”, and when (the output of) the rewrite mode flag CF = 1, “rewrite mode” is set, and when it is 0, “normal mode” is set. The rewrite mode flag is assigned an address in the same manner as an I / O map or the like on an address map described later in FIG. 6, and writes (sets), for example, “1” or writes “0” to the rewrite mode flag CF. The write (reset) is treated as writing “1” or “0” to the specified address on the operating system (OS). The chip select signal CSS shown in FIG. 3 is a signal that is enabled (enabled) at the time of writing or the like.
[0047]
In this case, the memory
[0048]
FIG. 4B shows another configuration example for realizing the same logic. Similar memory switching information storage circuit 401 (rewrite mode flag CF), NAND (NAND) gates U1s to U7s, and AND gates U8s. Here, the AND gate U8s can be logically omitted, and instead of the NAND gate U7s and the AND gate U8s, an AND gate U9s of a combination of these may be used.
[0049]
As shown in FIG. 3, the memory of the
[0050]
The chip select signal CS0 from the
[0051]
In the normal mode, since CS0 → CSA and CS1 → CSB as described above (see FIG. 5), the
[0052]
Of these, the target area to be written by communication is the
[0053]
By the way, in the
[0054]
The subsequent processes of FIG. 7, that is, the branch for determining whether or not a key input is made (S3) and the various interrupt processes (S4) are conceptual processes. Actually, in the
[0055]
That is, in the
[0056]
As shown in FIG. 6, an interrupt processing program started in response to the occurrence of these various interrupts, and an interrupt vector (vector table or the like) V20 referred to at the time of the occurrence of the interrupt for activating them, and the like. Are stored in the control memory area 201 which the
[0057]
For example, a communication request from the dedicated application for download described above in FIG. 2 is input to the terminal INT of the
[0058]
In the case of downloading large data, the
[0059]
By the way, in the
[0060]
The
[0061]
When the copying of the interrupt vector V20 (S10) is completed, the necessary program is copied (S12). Here, in the normal mode shown in FIG. 6, a program which is in the control memory area 201 and needs to be started during communication, for example, a program such as the communication program P20 described above is copied to a corresponding address in the
[0062]
When the copying of the necessary program (S12) is completed, the rewriting mode is set (S13), and the rewriting mode setting process (S10) is completed (S14). Specifically, "1" is written into the rewrite mode flag CF set at a predetermined address in the address space (rewrite mode flag CF ← 1) (S13), and the process (S10) ends (S10). S14).
[0063]
When the rewrite mode is set, that is, in the rewrite mode, as described above, CS0 → CSB and CS1 → CSA (see FIG. 5), so that the
[0064]
Of these, the target area written by communication is the
[0065]
In this case, the communication program started on the
[0066]
In other words, in the rewrite mode, the address assigned as the
[0067]
As described above, in the
[0068]
Further, in this case, the communication program P20 responding to the communication from the data server DS and the interrupt vector V20 including the communication interrupt vector for activating the communication program P20 are used for the communication interrupt (and the activation of the communication program) when the rewrite mode is set. In the communication in the rewrite mode, the copy side (copy program P30, copy vector V30) in the
[0069]
Further, in this case, since the writing is performed in the address range of the
[0070]
Note that the rewriting mode may be reset (rewriting mode flag CF ← 0) or the rewriting mode may be reset when the above download is completed, that is, when the copy program P30 which is a copy of the communication program P20 detects the end of communication. For example, a rewrite mode release key may be provided in addition to the key, and the rewrite mode may be reset by pressing the key. Further, for example, each time the same rewriting mode key is pressed, the rewriting mode and the normal mode may be alternately switched, that is, each time the same rewriting mode key is pressed, the setting and resetting of the rewriting mode flag may be alternately repeated.
[0071]
In this case, every time the rewrite mode key is pressed, for example, a rewrite mode switching interrupt is generated, and, for example, as shown in FIG. 9, the rewrite mode switching process (S20) is started. It is determined whether or not the rewrite mode flag CF = 1) (S21). If the mode is the normal mode (S21: No), a rewrite mode setting process similar to the rewrite mode setting process (S10) described above with reference to FIG. (S22), the process (S20) ends (S23). However, in this case, since the main process (S20: main interrupt processing program) is started even during communication, the main program is included in the copy program in the rewrite mode setting process (S22).
[0072]
Then, when the rewrite mode key is pressed next to cause a rewrite mode switching interrupt and the rewrite mode switching process (S20) is started, the rewrite mode is reset at this time (S21: Yes), and the rewrite mode is reset (rewrite). The mode flag CF ← 0) (S24), and the process (S20) ends (S23). Thus, every time the same rewrite mode key is pressed, the rewrite mode and the normal mode can be alternately switched.
[0073]
In the above-described embodiment, after the rewrite mode key is pressed and before the rewrite mode is set, the interrupt vector V20 and the communication program P20 are copied from the control memory area 201 to the corresponding address in the
[0074]
However, conversely, the address specified by the copy vector V30 is adjusted after copying so as to match the storage address of the copy program P30, and the storage address of the copy program P30, that is, the address at which the communication program P20 is copied, is changed. Can be any. For example, as shown in FIG. 10, after compactly adjacently copied, the designated address by the copy vector V30 can be adjusted according to the storage address of the copy program P30.
[0075]
Further, as shown in FIG. 11, for example, a
[0076]
As shown in FIG. 12, the copy vector V30 and the copy program P30 may be copied to separate
[0077]
In the above-described embodiment, the relative relationship between the start address in the
[0078]
Therefore, only by switching the memory between the
[0079]
In the above-described embodiment, as described above, the memory access to the
[0080]
In the above-described embodiment, an example of a flash ROM has been described as the
[0081]
In the above-described embodiment, as a simpler configuration, the data server DS is a stand-alone type device (PC). However, as shown in FIG. 15, for example, as shown in FIG. A plurality of workstations WS (personal computers PC, etc.) 1-3 and terminal adapters (including routers, repeaters, hubs, etc.) TA are connected, and tapes are sent from any of these terminals via an interface IF. The
[0082]
In this case, the network NW conforms to a communication protocol conforming to the IEEE standard LAN, for example, the so-called Internet or various local area networks (LAN: Ethernet (registered trademark), 10/100 base (Base), etc.). Can be adopted. Note that these are standards for wired communication, but wireless communication can also be used.
[0083]
In the above-described embodiment, the CD-
[0084]
In the above-described embodiment, a CD-ROM is described as an example, but other storage media such as an FD, an MO, and a DVD may be used. When a network is used as shown in FIG. 10 instead of the configuration shown in FIG. 1, various types of devices connected to the network are connected via a host machine (PC1 or TA in the illustrated example) of the
[0085]
In the above-described embodiment, an example of the tape printing apparatus has been described. However, as long as new data is received using a communication function and the rewritable ROM is rewritten, another type of printing object other than a tape is used. Of the present invention, and can be applied to information processing apparatuses other than the printing apparatus. In addition, if a program for executing the above-described download of new data and the like is stored in a storage medium such as a CD, the program can be mounted (mounted) on any printing apparatus or information processing apparatus capable of executing the program. By reading and executing the stored program, the rewritable ROM can be easily rewritten with the received new data. Of course, other various forms can be adopted, and appropriate changes can be made without departing from the scope of the present invention.
[0086]
【The invention's effect】
As described above, according to the memory rewriting device, the memory rewriting method, the information processing device, the information processing system, and the storage medium of the present invention, new data is received according to a communication program specified by a communication interrupt vector, and the new data is received. Thus, the communication interrupt vector itself can be rewritten, and even if rewritten during communication, communication can be performed normally.
[Brief description of the drawings]
FIG. 1 is an explanatory diagram illustrating an example of a configuration of a printing system including a tape printing apparatus according to an embodiment of the present invention as a component.
FIG. 2 is an explanatory diagram showing a memory map image of a tape printer and a download image from a personal computer in the printing system of FIG. 1;
FIG. 3 is a block diagram illustrating a schematic configuration related to a memory of the
4 is an explanatory diagram illustrating an example of a circuit configuration of a memory access switching circuit in FIG. 3;
FIG. 5 is an explanatory diagram showing a switching image in each mode of the memory access switching circuit of FIG. 3;
6 is an explanatory diagram of an address space, a memory in charge, and storage contents in each mode, corresponding to FIG. 5;
FIG. 7 is a flowchart illustrating a schematic process of overall control of the tape printing apparatus.
FIG. 8 is a flowchart illustrating a rewrite mode setting process.
FIG. 9 is a flowchart illustrating a rewriting mode switching process in an example in which the rewriting mode is repeatedly set and reset every time the same rewriting mode key is pressed.
FIG. 10 is an explanatory diagram showing another example of the storage image of the interrupt vector, the communication program, the copy vector, and the copy program different from FIG. 6;
FIG. 11 is an explanatory diagram showing an example of a storage image of an interrupt vector, a communication program, and a copy vector when a copy program is unnecessary.
FIG. 12 is an explanatory diagram similar to FIG. 10, showing another example of storing a copy vector and a copy program in separate memories.
FIG. 13 is an explanatory diagram showing an image of a dedicated IC in which a memory access switching circuit is integrated with a RAM into one chip.
FIG. 14 is an explanatory view similar to FIG. 10, showing another example in which a copy communication program for copying is prepared in addition to the communication program.
FIG. 15 is an explanatory view similar to FIG. 1, showing an example of another configuration.
[Explanation of symbols]
1 ... tape printing device
10 ... CPU
20 ROM (rewritable ROM, flash ROM)
30 …… RAM (static RAM)
40 memory access switching circuit
201 ...... Control memory area
301… Work memory area
501 CD-ROM
CF ...... Rewrite mode flag
CS0, CS1, CSA, CSB, CSS ... Chip select signal
DS …… Data server
IF ...... Interface
IFD ...... USB driver
NW ...... Network
P20 Communication program (communication core information)
P30 Copy program (copy core information)
PC ...... PC
PSYS …… Printing system
TA ...... Terminal adapter
V20 ...... Interrupt vector (communication core information)
V30 ...... Copy vector (copy core information)
WS1 to WS3 ...... Workstation
Claims (18)
前記書換対象メモリ以外のメモリから成り、前記通信割込ベクタのコピーであるコピーベクタを記憶するワークメモリと、
前記書換対象メモリを書き換えるための書換モードを設定する書換モード設定手段と、
前記書換モードが設定されていないときの前記通信割込ベクタへのアクセスと、設定されているときの前記コピーベクタへのアクセスが、アドレス空間上、互いに同一アドレスへのアクセスとなるように、メモリアクセスを切り換えるメモリアクセス切換手段と、
を備えたことを特徴とするメモリ書換装置。A memory rewriting device capable of rewriting the contents of a rewriting target memory for storing a communication interrupt vector referred to for starting a communication program in response to a communication interrupt with new data received from a communication destination according to the communication program. hand,
A work memory comprising a memory other than the rewriting target memory and storing a copy vector which is a copy of the communication interrupt vector;
Rewriting mode setting means for setting a rewriting mode for rewriting the memory to be rewritten,
The memory so that access to the communication interrupt vector when the rewrite mode is not set and access to the copy vector when the rewrite mode is set are accesses to the same address in an address space. Memory access switching means for switching access;
A memory rewriting device comprising:
前記書換モードが設定されたときに、前記通信プログラムをコピーしてコピープログラムとして前記ワークメモリに記憶させるプログラムコピー手段をさらに備えたことを特徴とする、請求項1ないし3のいずれかに記載のメモリ書換装置。The communication program is stored in the rewrite target memory,
4. The apparatus according to claim 1, further comprising a program copy unit that copies the communication program and stores the communication program in the work memory as a copy program when the rewrite mode is set. Memory rewriting device.
前記プログラムコピー手段は、前記通信割込ベクタに対する前記通信プログラムの相対アドレスに、前記コピーベクタに対する前記コピープログラムの相対アドレスが合うように、前記コピープログラムを記憶させることを特徴とする、請求項4に記載のメモリ書換装置。The communication interrupt vector is based on a relative address,
5. The program copy unit according to claim 4, wherein the copy program is stored such that a relative address of the communication program with respect to the communication interrupt vector matches a relative address of the copy program with respect to the copy vector. 3. The memory rewriting device according to claim 1.
前記メモリアクセス切換手段は、前記書換対象メモリと前記ワークメモリとのメモリ切換手段を有することを特徴とする、請求項1ないし6のいずれかに記載のメモリ書換装置。The relative relationship between the start address of the work memory and the address of the copy vector matches the relative relationship between the start address of the rewrite target memory and the address of the communication interrupt vector,
7. The memory rewriting device according to claim 1, wherein said memory access switching means has a memory switching means for switching between said rewriting target memory and said work memory.
前記メモリ切換手段は、チップセレクトによって各チップを切り換える手段であることを特徴とする、請求項7に記載のメモリ書換装置。The rewrite target memory and the work memory are each configured by one chip,
8. The memory rewriting device according to claim 7, wherein said memory switching means is means for switching each chip by a chip select.
前記書換対象メモリに記憶されたプログラムに従って処理を行うプログラム処理手段と、
を備えたことを特徴とする情報処理装置。Each means according to any one of claims 1 to 9,
Program processing means for performing processing according to a program stored in the rewrite target memory;
An information processing apparatus comprising:
前記複数の割込プログラムには、前記印刷手段に前記印刷を行わせるプログラムが含まれることを特徴とする、請求項10に記載の情報処理装置。Further comprising a printing means for printing on a predetermined print target,
The information processing apparatus according to claim 10, wherein the plurality of interrupt programs include a program for causing the printing unit to perform the printing.
前記通信先として前記新規データを送信する供給装置と、
を備えたことを特徴とする情報処理システム。An information processing apparatus according to any one of claims 10 to 12,
A supply device for transmitting the new data as the communication destination,
An information processing system comprising:
前記新規データおよびそれを送信するためのプログラムを記憶した記憶媒体を装着可能な装着手段と、
装着された前記記憶媒体内に記憶された前記プログラムに従って前記新規データを送信するプログラム実行手段と、
を有することを特徴とする、請求項13に記載の情報処理システム。The supply device,
Mounting means capable of mounting a storage medium storing the new data and a program for transmitting the new data,
Program execution means for transmitting the new data according to the program stored in the mounted storage medium,
The information processing system according to claim 13, comprising:
前記書換対象メモリ以外のワークメモリに前記通信割込ベクタのコピーであるコピーベクタを記憶しておき、前記書換対象メモリを書き換えるための書換モードを設定し、設定されていないときの通信割込ベクタへのアクセスと設定されているときのコピーベクタへのアクセスとが、アドレス空間上、互いに同一アドレスへのアクセスとなるように、書換モードの設定の有無に従ってメモリアクセスを切り換えることを特徴とするメモリ書換方法。The rewriting is performed by writing new data received from a communication destination in accordance with the communication program, with a memory storing a communication interrupt vector referred to for starting a communication program when a communication interrupt occurs as a rewriting target memory. A memory rewriting method capable of rewriting the contents of a target memory,
A copy vector that is a copy of the communication interrupt vector is stored in a work memory other than the memory to be rewritten, a rewrite mode for rewriting the memory to be rewritten is set, and a communication interrupt vector when not set is set. A memory access is switched according to whether or not a rewrite mode is set so that access to a copy vector and access to a copy vector when set are access to the same address in an address space. Rewriting method.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002165136A JP2004013462A (en) | 2002-06-06 | 2002-06-06 | Memory rewriting device, memory rewriting method, information processing device, information processing system, and storage medium |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002165136A JP2004013462A (en) | 2002-06-06 | 2002-06-06 | Memory rewriting device, memory rewriting method, information processing device, information processing system, and storage medium |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2004013462A true JP2004013462A (en) | 2004-01-15 |
JP2004013462A5 JP2004013462A5 (en) | 2005-10-13 |
Family
ID=30433045
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002165136A Withdrawn JP2004013462A (en) | 2002-06-06 | 2002-06-06 | Memory rewriting device, memory rewriting method, information processing device, information processing system, and storage medium |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2004013462A (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005242621A (en) * | 2004-02-26 | 2005-09-08 | Toshiba Lsi System Support Kk | Semiconductor device and its interrupt processing method |
US20120137053A1 (en) * | 2010-11-29 | 2012-05-31 | Mitsumi Electric Co., Ltd. | Microprocessor |
-
2002
- 2002-06-06 JP JP2002165136A patent/JP2004013462A/en not_active Withdrawn
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005242621A (en) * | 2004-02-26 | 2005-09-08 | Toshiba Lsi System Support Kk | Semiconductor device and its interrupt processing method |
US20120137053A1 (en) * | 2010-11-29 | 2012-05-31 | Mitsumi Electric Co., Ltd. | Microprocessor |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7614050B2 (en) | Machine and method for deployment of OS image | |
JP5326918B2 (en) | Electronic device, software update method, program, and recording medium | |
JP2000148465A (en) | Firmware changing method | |
WO2018054261A1 (en) | Storage medium, data processing method and cartridge chip using this method | |
CN101373433A (en) | Method for updating BIOS and computer and system using the same | |
TWI625672B (en) | Updatable integrated-circuit radio | |
JP2006195565A (en) | Control method for semiconductor storage device, memory card, and host apparatus | |
JP2012216014A (en) | Information processor and data protection method | |
JP2000245681A (en) | Version updating method for firmware for electronic endoscope device and electronic endoscope device | |
JP2009075923A (en) | File system, data processor, file reference method, program, and storage medium | |
JP2004013463A (en) | Memory rewriting system, memory rewriting method, information processing device, information processing system, and storage medium | |
JP2004013462A (en) | Memory rewriting device, memory rewriting method, information processing device, information processing system, and storage medium | |
JP2007011944A (en) | Image processor and firmware upgrading method | |
JP5062687B2 (en) | Information processing device | |
JP2004021867A (en) | Information processing system | |
KR100503484B1 (en) | Image forming device | |
JP4840553B2 (en) | Wireless communication apparatus, boot program rewriting method and program | |
JP2004220575A (en) | Interface circuit of card type memory, asic carrying its circuit and image forming apparatus carrying asic | |
TW522311B (en) | Auxiliary processor manages firmware personalities while borrowing host system resources | |
JP4900805B2 (en) | OS image deployment machine and method | |
JP2002007152A (en) | Download method and download device | |
JP2000245682A (en) | Electronic endoscope device | |
JP3308920B2 (en) | Information processing device | |
JP2001053891A (en) | Method and device for updating program of portable terminal equipment | |
JP7273188B2 (en) | VEHICLE CONTROL DEVICE AND PROGRAM MANAGEMENT METHOD |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20050603 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20050603 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20070904 |
|
A761 | Written withdrawal of application |
Free format text: JAPANESE INTERMEDIATE CODE: A761 Effective date: 20071005 |