(57)【特許請求の範囲】
【請求項１】
被印刷媒体に画像を形成する画像形成装置であって、
メイン基板と、
前記メイン基板とは所定距離離れた位置であり、前記画像形成装置の取替え可能な消耗品とは前記所定距離未満の近い位置に配置されたサブ基板と、
電源のオンオフ操作を行うための電源スイッチと、
を備え、
前記サブ基板は、
前記メイン基板と通信するための第１インターフェースと、
前記消耗品に備え付けられた基板と通信するための第２インターフェースと、
前記メイン基板から受信したファームウェアが格納された不揮発性メモリーと、
前記電源スイッチがオン状態となったときに、前記不揮発性メモリーのファームウェア領域のデータのメッセージ認証コードを計算して、前記ファームウェアの正当性をチェックする演算部と、
を有することを特徴とする画像形成装置。
【請求項２】
請求項１に記載の画像形成装置であって、
前記ファームウェアが正当でないと判断した場合には、前記ファームウェアを書き換えるモードを実行する
ことを特徴とする画像形成装置。
【請求項３】
請求項１または２に記載の画像形成装置であって、
複数の前記消耗品に対応して複数の前記サブ基板を有し、
各サブ基板は、前記電源スイッチがオン状態となったときに、それぞれの前記不揮発性メモリーに格納された前記ファームウェアの種類についての情報を取得し、
各サブ基板の前記ファームウェアが正当であっても、前記ファームウェアの種類についての情報が一致しない場合は、各ファームウェアを書き換えるモードを実行する、
ことを特徴とする画像形成装置。
【請求項４】
請求項３に記載の画像形成装置であって、
前記ファームウェアの種類についての情報は、バージョン情報である
ことを特徴とする画像形成装置。
【請求項５】
請求項１〜４の何れかに記載の画像形成装置であって、
前記サブ基板は、前記消耗品の前記基板に設けられた記憶素子に対してデータの読み書きをさせるための基板である
ことを特徴とする画像形成装置。
【請求項６】
請求項１〜５の何れかに記載の画像形成装置であって、
前記サブ基板は、前記ファームウェアのデータ量よりも記憶容量の小さい揮発性メモリーを有し、前記ファームウェアの所定量のデータを前記揮発性メモリーに記憶させた後、前記揮発性メモリーに記憶された前記所定量のデータを前記不揮発性メモリーに書き込むことを繰り返すことによって、前記ファームウェアを前記不揮発性メモリーに格納する
ことを特徴とする画像形成装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像形成装置に関する。
【背景技術】
【０００２】
画像形成装置として、消耗品（例えばインク）を被印刷媒体（例えば紙）に吐出して画像を形成するプリンターが知られている。このようなプリンターには、例えば、装置の各ユニットを制御する制御回路などが設けられた基板（以下、メイン基板とよぶ）が配置されている。また、インクの種類、インクの残量等のユーザーに有用な情報を記憶する記憶素子（ＣＳＩＣ：Customer Service Integrated Circuit）を有する基板をインクカートリッジに設け、メイン基板とインクカートリッジのＣＳＩＣとの間で通信を行うようにしたものが知られている。
【０００３】
また、このような通信の際に、データの改ざんなどが行われていないこと（すなわちデータの正当性）を確認するためにメッセージ認証コード（ＭＡＣ：Message Authentication code）を用いるものが知られている（例えば、特許文献１参照）。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００６-３９２０６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
産業用プリンターなどの大型のプリンターでは、メイン基板とＣＳＩＣとが物理的にかなり離れた位置に配置されることがある。この場合、メイン基板とＣＳＩＣとの間で信号が正常に伝達できなくなるおそれがあった。つまり、ＣＳＩＣのデータの読み書きを正確に行えなくなるおそれがあった。
【０００６】
また、通常、基板の不揮発性メモリー（例えば、フラッシュメモリー）に格納されるファームウェアを書き換えるときには、ファームウェアを、一時的に揮発性メモリー（例えばＲＡＭ）に記憶させ、その後、フラッシュメモリーなどの不揮発性メモリーに格納するようになっている。従来では、不揮発性メモリーに書き込む際にデータの正当性の確認を行っていたが、不揮発性メモリーに格納されたデータの正当性は確認していなかった。つまり、不揮発性メモリーに格納されたデータが改ざんされているおそれがあった。
【０００７】
本発明は、メイン基板と消耗品との間の信号の伝達の正確化を図るとともに、ファームウェアの正当性を確実に確認することを目的とする。
【課題を解決するための手段】
【０００８】
上記目的を達成するための主たる発明は、被印刷媒体に画像を形成する画像形成装置であって、メイン基板と、前記メイン基板とは所定距離離れた位置であり、前記画像形成装置の取替え可能な消耗品とは前記所定距離未満の近い位置に配置されたサブ基板と、電源のオンオフ操作を行うための電源スイッチと、を備え、前記サブ基板は、前記メイン基板と通信するための第１インターフェースと、前記消耗品に備え付けられた基板と通信するための第２インターフェースと、前記メイン基板から受信したファームウェアが格納された不揮発性メモリーと、前記電源スイッチがオン状態となったときに、前記不揮発性メモリーのファームウェア領域のデータのメッセージ認証コードを計算して、前記ファームウェアの正当性をチェックする演算部と、を有することを特徴とする画像形成装置である。
【０００９】
本発明の他の特徴については、本明細書及び添付図面の記載により明らかにする。
【図面の簡単な説明】
【００１０】
【図１】プリンター１のブロック図である。
【図２】プリンター１の装置本体２の概略断面図である。
【図３】４パスで印刷するケースにおいて各パスで形成されるラスタラインを示した模式図である。
【図４】ヘッドの移動を説明するための模式図である。
【図５】サブ基板３００の構成を示すブロック図である。
【図６】ＭＡＣの使用方法についての概念図である。
【図７】フラッシュメモリー３０６のファームウェア領域のメモリーマップを示す図である。
【図８】サブ基板３００のファームウェアの書き換え時の処理を示すフロー図である。
【図９】本実施形態におけるサブ基板３００の動作について説明するためのフロー図である。
【発明を実施するための形態】
【００１１】
本明細書及び添付図面の記載により、少なくとも、以下の事項が明らかとなる。
【００１２】
被印刷媒体に画像を形成する画像形成装置であって、メイン基板と、前記メイン基板とは所定距離離れた位置であり、前記画像形成装置の取替え可能な消耗品とは前記所定距離未満の近い位置に配置されたサブ基板と、電源のオンオフ操作を行うための電源スイッチと、を備え、前記サブ基板は、前記メイン基板と通信するための第１インターフェースと、前記消耗品に備え付けられた基板と通信するための第２インターフェースと、前記メイン基板から受信したファームウェアが格納された不揮発性メモリーと、前記電源スイッチがオン状態となったときに、前記不揮発性メモリーのファームウェア領域のデータのメッセージ認証コードを計算して、前記ファームウェアの正当性をチェックする演算部と、を有することを特徴とする画像形成装置が明らかとなる。  
このような画像形成装置によれは、メイン基板と消耗品との間の信号の伝達の正確化を図るとともに、ファームウェアの正当性を確実に確認することができる。
【００１３】
かかる画像形成装置であって、前記ファームウェアが正当でないと判断した場合には、前記ファームウェアを書き換えるモードを実行することが望ましい。  
このような画像形成装置によれば、正当でないファームウェアを実行しないようにすることができる。
【００１４】
かかる画像形成装置であって、複数の前記消耗品に対応して複数の前記サブ基板を有し、各サブ基板は、前記電源スイッチがオン状態となったときに、それぞれの前記不揮発性メモリーに格納された前記ファームウェアの種類についての情報を取得し、各サブ基板の前記ファームウェアが正当であっても、前記ファームウェアの種類についての情報が一致しない場合は、各ファームウェアを書き換えるモードを実行することが望ましい。  
このような画像形成装置によれば、複数のサブ基板が設けられている場合に、より正当性を高めることができる。
【００１５】
また、前記ファームウェアの種類についての情報は、バージョン情報であることが望ましい。  
このような画像形成装置によれば、各基板について同じバージョンのファームウェアを適用することができる。
【００１６】
かかる画像形成装置であって、前記サブ基板は、前記消耗品の前記基板に設けられた記憶素子に対してデータの読み書きをさせるための基板であることが望ましい。  
このような画像形成装置によれば、メイン基板と消耗品との間の距離に関わらず、メイン基板と消耗品との間の信号の伝達を正確に行うようにすることができる。
【００１７】
かかる画像形成装置であって、前記サブ基板は、前記ファームウェアのデータ量よりも記憶容量の小さい揮発性メモリーを有し、前記ファームウェアの所定量のデータを前記揮発性メモリーに記憶させた後、前記揮発性メモリーに記憶された前記所定量のデータを前記不揮発性メモリーに書き込むことを繰り返すことによって、前記ファームウェアを前記不揮発性メモリーに格納することが望ましい。  
このような画像形成装置によれば、揮発性メモリーの容量が小さくてもサブ基板のファームウェアを書き換えることができる。
【００１８】
以下の実施形態では、画像形成装置としてラテラル方式のインクジェットプリンター（以下、プリンター１ともいう）を例に挙げて説明する。なお、プリンター１は、産業用の大型プリンターである。
【００１９】
＝＝＝第１実施形態＝＝＝
まず、図１及び図２を用いてプリンター１の構成例について説明する。図１は、プリンター１のブロック図である。図２は、プリンター１の装置本体２の概略断面図である。  
なお、以下の説明において、「上下方向」、「前後方向」をいう場合は、図２に矢印で示した方向を基準として示すものとする。また、「左右方向」をいう場合は、図２において紙面に直交する方向を示すものとする。  
また、本実施形態においては、プリンター１が画像を記録する媒体としてロール紙Ｓ（連続紙）を用いて説明する。  
本実施形態に係るプリンター１は、図１に示すように、装置本体２と、装置本体２の右隣に配置されたインクカートリッジホルダーユニット３とを備えている。
【００２０】
≪装置本体側の構成例について≫
図１及び図２に示すように、プリンター１の装置本体２は、搬送ユニット２０と、及び、該搬送ユニット２０がロール紙Ｓを搬送する搬送経路に沿って、給送ユニット１０と、プラテン２９と、巻き取りユニット７０と、を有し、さらに、ヘッドユニット３０と、キャリッジユニット４０と、これらのユニット等を制御しプリンター１としての動作を司るコントローラー６０と、検出器群５０と、電源ユニット８０とを有している。
【００２１】
給送ユニット１０は、ロール紙Ｓを搬送ユニット２０に給送するものである。この給送ユニット１０は、ロール紙Ｓが巻かれ回転可能に支持される巻軸１８と、巻軸１８から繰り出されたロール紙Ｓを巻き掛けて搬送ユニット２０に導くための中継ローラー１９と、を有している。
【００２２】
搬送ユニット２０は、給送ユニット１０により送られたロール紙Ｓを、予め設定された搬送経路に沿って搬送するものである。この搬送ユニット２０は、図２に示すように、中継ローラー１９に対して水平後方に位置する中継ローラー２１と、中継ローラー２１から見て後斜め下方に位置する中継ローラー２２と、中継ローラー２２から見て後斜め上方（ロール紙Ｓが搬送される方向において、プラテン２９から見て上流側）に位置する第一搬送ローラー２３と、第一搬送ローラー２３から見て後方（ロール紙Ｓが搬送される方向において、プラテン２９から見て下流側）に位置する第二搬送ローラー２４と、第二搬送ローラー２４から見て鉛直下方に位置する反転ローラー２５と、反転ローラー２５から見て後方に位置する中継ローラー２６と、中継ローラー２６から見て上方に位置する送り出しローラー２７と、を有している。
【００２３】
中継ローラー２１は、中継ローラー１９から送られたロール紙Ｓを、前方から巻き掛けて下方に向かって弛ませるローラーである。  
中継ローラー２２は、中継ローラー２１から送られたロール紙Ｓを、前方から巻き掛けて後斜め上方に向かって搬送するローラーである。
【００２４】
第一搬送ローラー２３は、不図示のモーターにより駆動される第一駆動ローラー２３ａと、該第一駆動ローラー２３ａに対してロール紙Ｓを挟んで対向するように配置された第一従動ローラー２３ｂとを有している。この第一搬送ローラー２３は、下方に弛ませたロール紙Ｓを上方に引き上げ、プラテン２９に対向する印刷領域Ｒへ搬送するローラーである。第一搬送ローラー２３は、印刷領域Ｒ上のロール紙Ｓの部位に対して画像記録がなされている期間、一時的に搬送を停止させるようになっている。なお、コントローラー６０の駆動制御により、第一駆動ローラー２３ａの回転駆動に伴って第一従動ローラー２３ｂが回転することによって、プラテン２９上に位置させるロール紙Ｓの搬送量（ロール紙の部位の長さ）が調整される。
【００２５】
搬送ユニット２０は、上述したとおり、中継ローラー２１、２２と第一搬送ローラー２３との間に巻き掛けたロール紙Ｓの部位を下方に弛ませて搬送する機構を有している。このロール紙Ｓの弛みは、コントローラー６０により、不図示の弛み検出用センサーからの検出信号に基づき監視される。具体的には、中継ローラー２１、２２と第一搬送ローラー２３との間において弛ませたロール紙Ｓの部位を、弛み検出用センサーが検出した場合には、該部位に適切な大きさの張力が与えられていることになるため、搬送ユニット２０はロール紙Ｓを弛ませた状態で搬送することが可能となる。一方、弛み検出用センサーが弛ませたロール紙Ｓの部位検出しない場合は、該部位に過剰な大きさの張力が与えられていることになるため、搬送ユニット２０によるロール紙Ｓの搬送が一時的に停止され、張力が適切な大きさに調整される。
【００２６】
第二搬送ローラー２４は、不図示のモーターにより駆動される第二駆動ローラー２４ａと、該第二駆動ローラー２４ａに対してロール紙Ｓを挟んで対向するように配置された第二従動ローラー２４ｂとを有している。この第二搬送ローラー２４は、ヘッドユニット３０により画像が記録された後のロール紙Ｓの部位を、プラテン２９の支持面に沿って水平後方向に搬送した後に鉛直下方に搬送するローラーである。これにより、ロール紙Ｓの搬送方向が転換されることになる。なお、コントローラー６０の駆動制御により、第二駆動ローラー２４ａの回転駆動に伴って第二従動ローラー２４ｂが回転することによって、プラテン２９上に位置するロール紙Ｓの部位に対して付与される所定の張力が調整される。
【００２７】
反転ローラー２５は、第二搬送ローラー２４から送られたロール紙Ｓを、前側上方から巻き掛けて後斜め上方に向かって搬送するローラーである。  
中継ローラー２６は、反転ローラー２５から送られたロール紙Ｓを、前側下方から巻き掛けて上方に向かって搬送するローラーである。  
送り出しローラー２７は、中継ローラー２６から送られたロール紙Ｓを、前側下方から巻き掛けて巻き取りユニット７０に送り出すようになっている。
【００２８】
このように、ロール紙Ｓが各ローラーを順次経由して移動することにより、ロール紙Ｓを搬送するための搬送経路が形成されることになる。なお、ロール紙Ｓは、搬送ユニット２０により、印刷領域Ｒと対応した領域単位で間欠的にその搬送経路に沿って搬送される（すなわち、印刷領域Ｒ上のロール紙Ｓの部位に１ページ分の画像記録が成される毎に、間欠的な当該搬送が行なわれる）。
【００２９】
プラテン２９は、搬送経路上の印刷領域Ｒに位置するロール紙Ｓの部位を支持するものである。このプラテン２９は、図２に示すように、搬送経路上の印刷領域Ｒに対応させて設けられ、かつ、第一搬送ローラー２３と第二搬送ローラー２４との間の搬送経路に沿った領域に配置されている。
【００３０】
ヘッドユニット３０は、搬送ユニット２０により搬送経路上の印刷領域Ｒに（プラテン２９上に）送り込まれたロール紙Ｓの部位に、液体の一例としてのインクを吐出するためのものである。このヘッドユニット３０は、ヘッド３１と、バルブユニット３４と、クリーニングユニット３５とを有している。
【００３１】
ヘッド３１は、その下面に、列方向にノズルが並んだノズル列を有している。本実施形態においては、イエロー（Ｙ）、マゼンタ（Ｍ）、シアン（Ｃ）、ブラック（Ｋ）等の色ごとにそれぞれ複数のノズル♯１〜♯Ｎからなるノズル列を有している。各ノズル列の各ノズル♯１〜♯Ｎは、ロール紙Ｓの搬送方向に交差する交差方向（つまり、当該交差方向が前述した列方向である）に直線状に配列されている。各ノズル列は、当該搬送方向に沿って相互に間隔をあけて平行に配置されている。
【００３２】
各ノズル♯１〜♯Ｎには、インク滴を吐出するための駆動素子としてピエゾ素子（不図示）が設けられている。ピエゾ素子は、その両端に設けられた電極間に所定時間幅の電圧を印加すると、電圧の印加時間に応じて伸張し、インクの流路の側壁を変形させる。これによって、インクの流路の体積がピエゾ素子の伸縮に応じて収縮し、この収縮分に相当するインクが、インク滴となって各色の各ノズル♯１〜♯Ｎから吐出される。
【００３３】
また、ヘッド３１は、後述するように、前記搬送方向（すなわち、前記前後方向）と前記列方向（すなわち、前記左右方向）に往復移動することができるようになっている。
【００３４】
バルブユニット３４は、インクを一時貯留するためのものであり、後述するインクカートリッジホルダーユニット３のカートリッジホルダー部３１０に装着されたインクカートリッジからインクが供給される。また、バルブユニット３４は、不図示のインク供給チューブを介してヘッド３１に接続されている。このため、ヘッド３１は、バルブユニット３４から供給されたインクをノズルからプラテン２９上に搬送されて停止された状態のロール紙Ｓの部位に向けて吐出することにより、画像記録を行なうことができる。
【００３５】
クリーニングユニット３５は、ヘッド３１をクリーニングするためのものである。このクリーニングユニット３５は、ホームポジション（以下、ＨＰと呼ぶ。図２参照）に設けられており、キャップと、吸引ポンプ等とを有している。ヘッド３１（キャリッジ４２）が搬送方向（前後方向）に移動してＨＰに位置すると、ヘッド３１の下面（ノズル面）に不図示のキャップが密着するようになっている。このようにキャップが密着した状態で吸引ポンプが作動すると、ヘッド３１内のインクが、増粘したインクや紙粉と共に吸引される。このようにして、目詰まりしたノズルが不吐出状態から回復することによってヘッドのクリーニングが完了する。
【００３６】
キャリッジユニット４０は、ヘッド３１を移動させるためのものである。このキャリッジユニット４０は、搬送方向（前後方向）に延びるキャリッジガイドレール４１と（図２に二点鎖線で示す）、キャリッジガイドレール４１に沿って搬送方向（前後方向）へ往復移動可能に支持されたキャリッジ４２と、不図示のモーターとを有する。
【００３７】
キャリッジ４２は、不図示のモーターの駆動により、ヘッド３１と一体となって搬送方向（前後方向）へ移動するよう構成されている。また、キャリッジ４２には、列方向（左右方向）に延びる不図示のヘッドガイドレールが設けられており、ヘッド３１は、前記モーターの駆動により、当該ヘッドガイドレールに沿って列方向（左右方向）へ移動するよう構成されている。
【００３８】
巻き取りユニット７０は、搬送ユニット２０により送られたロール紙Ｓ（画像記録済みのロール紙）を巻き取るためのものである。この巻き取りユニット７０は、送り出しローラー２７から送られたロール紙Ｓを、前側上方から巻き掛けて後斜め下方へ搬送するための中継ローラー７１と、回転可能に支持され中継ローラー７１から送られたロール紙Ｓを巻き取る巻き取り駆動軸７２と、を有している。
【００３９】
コントローラー６０は、プリンター１の制御を行なうための制御ユニットである。このコントローラー６０は、図１に示すように、インターフェース部６１Ａ、６１Ｂと、ＣＰＵ６２と、メモリー６３と、ユニット制御回路６４と、を有している。インターフェース部６１Ａは、外部装置であるホストコンピューター１１０とプリンター１との間でデータの送受信を行なうためのものである。インターフェース部６１Ｂは、インクカートリッジホルダーユニット３のサブ基板３００との間でデータの送受信を行なうためのものである。ＣＰＵ６２は、プリンター１全体の制御を行なうための演算処理装置である。メモリー６３は、ＣＰＵ６２のプログラムを格納する領域や作業領域等を確保するためのものである。ＣＰＵ６２は、メモリー６３に格納されているプログラムに従ってユニット制御回路６４により各ユニットを制御する。なお、コントローラー６０は、メイン基板２００上に設けられている。
【００４０】
検出器群５０は、プリンター１内の状況を監視するものであり、例えば、搬送ローラーに取り付けられて媒体の搬送などの制御に利用されるロータリー式エンコーダー、搬送される媒体の有無を検出する用紙検出センサー、キャリッジ４２（又はヘッド３１）の搬送方向（前後方向）の位置を検出するためのリニア式エンコーダーなどがある。
【００４１】
電源ユニット８０は、装置本体２に固設されている。そして、不図示の電気コード等を介してコンセント等に接続されている。なお、電源ユニット８０は、電源のオンオフ操作を行う電源スイッチ８１を備えている。この電源スイッチ８１がオン状態になることにより、プリンター１に電力が供給される。
【００４２】
≪プリンター１の動作例について≫
上述した通り、本実施形態に係るプリンター１には、列方向（左右方向）にノズルが並んだノズル列を有するヘッド３１が設けられている。そして、コントローラー６０が、当該ヘッド３１を搬送方向（前後方向）に移動させながら、ノズルからインクを吐出させ、搬送方向（前後方向）に沿ったラスタラインを形成することにより、印刷領域Ｒ上のロール紙Ｓの部位に１ページ分の画像記録を行なう。
【００４３】
ここで、本実施形態に係るコントローラー６０は、複数パス（２パス、４パス等）の印刷を実行する。すなわち、列方向における画像の解像度を高くするために、パス毎に列方向におけるヘッド３１の位置を少しずつ変えて印刷を行なう。本実施形態では４パスの印刷を実行することとする。また、画像形成方法としては、例えば、公知のインターレース（マイクロウィーブ）印刷が実行される。  
これについて、図３を用いてより具体的に説明する。図３は、４パスで印刷するケースにおいて各パスで形成されるラスタラインを示した模式図である。
【００４４】
図３の左側にはヘッド３１のノズル列（ノズル）が表されており、当該ヘッド３１（ノズル列）が搬送方向に移動しながらノズルからインクが吐出されることにより、ラスタラインが形成される。図に表されているヘッド３１（ノズル列）の列方向における位置は、１パス目のときの位置であり、かかる位置を維持したままヘッド３１（ノズル列）が搬送方向に移動すると、１パス目の印刷が実行され、図に表された５つのラスタライン（図の右端にパス１と書かれているラスタラインＬ１）が形成される。
【００４５】
そして、次に、ヘッド３１（ノズル列）が列方向に移動して、移動後の位置を維持したままヘッド３１（ノズル列）が搬送方向に移動すると、２パス目の印刷が実行され、図に表された４つのラスタライン（右端にパス２と書かれているラスタラインＬ２）が形成される。なお、インターレース（マイクロウィーブ）印刷が採用されているため、前記ラスタラインＬ１に隣接するラスタラインＬ２は、ラスタラインＬ１を形成するインクが吐出されたノズルとは異なるノズルから吐出されたインクにより形成されることとなる。そのため、ヘッド３１（ノズル列）の列方向への移動距離は、ノズル間距離（例えば、１／１８０インチ）の１／４分（１／１８０×１／４＝１／７２０インチ）ではなく、これより大きな距離となる。
【００４６】
以下、同様の動作が行なわれることにより、３パス目、４パス目の印刷が実行されて、図に表された残りのラスタライン（右端にパス３と書かれているラスタラインＬ３及びパス４と書かれているラスタラインＬ４）が形成される。このように、４パスでラスタラインが形成されることにより、列方向における画像の解像度を４倍（＝７２０÷１８０）の解像度とすることが可能となる。
【００４７】
なお、本実施形態においては、所謂双方向印刷が行なわれる。すなわち、１パス、３パス目の印刷が行なわれるときのヘッド３１（ノズル列）の移動方向と２パス、４パス、目の印刷が行なわれるときのヘッド３１（ノズル列）の移動方向は互いに逆方向となる（後に、詳述する）。
【００４８】
以下では、プリンター１の動作例としてプリンター１の画像形成動作（換言すれば、インク吐出動作）を説明するが、上述した４パスで印刷する図４のケースを例に挙げて説明する（以下の説明で、図３も随時参照する）。
【００４９】
＜プリンター１の画像形成動作例について＞
ここでは、プリンター１の印刷動作例について、図３、図４を用いて説明する。図４は、ヘッドの移動を説明するための模式図である。印刷動作を説明する前に、先ず、図４（の見方）について説明する。
【００５０】
図４には、印刷処理（すなわち、画像形成に係る一連の処理）が行なわれている間に、ヘッドがどのように移動するかが示されている。ここでは、説明を分かり易くするために、ヘッド３１（およびノズル列）の数は、複数個ではなく１つであることとして、説明を行なう。
【００５１】
ヘッド３１は、便宜上、丸印で表され（図には、大きな丸と小さな丸があるが、双方の区別に意味は無い）、ヘッドの移動が矢印で表されている。ここで、図中前後方向に向いた矢印は、搬送方向におけるヘッドの移動を表し、左右方向に向いた矢印は、列方向におけるヘッドの移動を表している。また、各矢印には、Ｓ１〜Ｓ１０の符号が付けられているが、これは、以降の印刷処理の説明で用いられるステップ番号である。  
また、パス１乃至パス４が付されているステップ番号があるが、これらのステップ番号はインクが吐出されることにより画像形成動作が実行されるステップを表している。
【００５２】
以下、図３、図４を参照しつつ、印刷処理について説明する。なお、当該印刷処理は、主としてコントローラー６０により実現される。特に、本実施形態においては、メモリー６３に格納されたプログラムをＣＰＵ６２が処理することにより実現される。そして、このプログラムは、以下に説明する各種の動作を行なうためのコードから構成されている。
【００５３】
前述した間欠的なロール紙Ｓの搬送が行なわれてロール紙Ｓが停止すると、印刷領域Ｒ上のロール紙Ｓの部位に１ページ分の画像形成を行なうための印刷処理が開始される。  
先ず、コントローラー６０は、キャリッジ４２（すなわち各ヘッド）をＨＰ位置から往方向（ロール紙Ｓが搬送される方向において、上流側から下流側へ向かう方向）へ移動させる（ステップＳ１）。  
コントローラー６０は、ヘッド３１の往方向への移動を継続しつつ、ヘッドにインクを吐出させて、１パス目の印刷を実行する（ステップＳ２）。そして、このことにより、図６に示されたラスタラインＬ１（パス１のラスタライン）が形成される。
【００５４】
ヘッドが第一折り返し位置へ至ると、コントローラー６０は、ヘッドを列方向へ移動させる（ステップＳ３）。本実施形態においては、前記距離ｄだけヘッドを移動させる。  
その後、コントローラー６０は、ヘッドを復方向（ロール紙Ｓが搬送される方向において、下流側から上流側へ向かう方向）へ移動させながら、ヘッドにインクを吐出させて、２パス目の印刷を実行する（ステップＳ４）。そして、このことにより、図３に示されたラスタラインＬ２（パス２のラスタライン）が形成される。  
ヘッドが第二折り返し位置へ至ると、コントローラー６０は、ヘッドを列方向へ移動させる（ステップＳ５）。本実施形態においては、前記距離ｄだけヘッドを移動させる。
【００５５】
次に、コントローラー６０は、ステップＳ２乃至ステップＳ４の処理と同じ処理をさらになう（ステップＳ６乃至ステップＳ８）。この処理において、３パス目の印刷（ステップＳ６）により図６に示されたラスタラインＬ３（パス３のラスタライン）が、４パス目の印刷（ステップＳ８）により図６に示されたラスタラインＬ４（パス４のラスタライン）が、それぞれ形成される。コントローラー６０は、ヘッドの列方向における位置を元に戻す（ステップＳ９）。すなわち、ステップＳ３、Ｓ５、Ｓ７でヘッドが移動した方向とは逆方向に、距離３ｄだけヘッドを移動させる。
【００５６】
そして、コントローラー６０は、ヘッドをＨＰ位置へ移動させることにより（ステップＳ１０）、１ページ分の画像形成を行なうための印刷処理を終了させる。なお、本実施形態では、１ページ分の画像形成を４パスで行うこととしたがこれには限られない。例えば２パスで１ページ分の画像形成を行うようにしてもよい。また、本実施形態ではインターレース（マイクロウィーブ）印刷を行うこととしたがこれには限られない。例えばバンド印刷を行ってもよい。
【００５７】
≪インクカートリッジホルダーユニットの構成例について≫
図１に示すように、インクカートリッジホルダーユニット３は、サブ基板３００とカートリッジホルダー部３１０を備えている。
【００５８】
＜カートリッジホルダー部について＞
カートリッジホルダー部３１０には、インクが収容されたインクカートリッジを着脱可能に装着するためのカートリッジホルダーＨ１〜Ｈ４が設けられている。なお、インク、及び、インクが収容されたインクカートリッジは、プリンター１の消耗品に相当する。このカートリッジホルダーＨ１〜Ｈ４には、各種類（色）のインクのインクカートリッジがそれぞれ着脱可能に装着される。なお、カートリッジホルダーＨ１〜Ｈ４は、ヘッド３１の各色のノズル列と対応している。そして、カートリッジホルダーＨ１〜Ｈ４に装着された各インクカートリッジのインクは不図示のインク供給チューブを通じてバルブユニット３４に供給され、さらに不図示のインク供給チューブを介してヘッド３１に供給される。例えば、カートリッジホルダーＨ１がヘッド３１のシアンのノズル列に対応している場合、カートリッジホルダーＨ１にシアンのインクカートリッジが装着されることによって、シアンのノズル列にシアンのインクが供給されることになる。
【００５９】
こうして、ヘッド３１は各カートリッジホルダーから供給されたインクを吐出する。本実施形態では、前述したようにイエロー（Ｙ）、マゼンタ（Ｍ）、シアン（Ｃ）、ブラック（Ｋ）の４色のインクを使用して画像を印刷する。すなわちカートリッジホルダーＨ１〜Ｈ４には、上記４色のインクカートリッジの何れかが装着される。
【００６０】
なお、インクカートリッジ（不図示）は、内部にインクを収容するカートリッジ本体、カートリッジ本体に備えつけられた基板、当該基板に設けられた記憶素子（ＣＳＩＣともいう）を備えている。ＣＳＩＣは、インクカートリッジをカートリッジホルダー部３１０のカートリッジホルダーＨ１〜Ｈ４に装着したときに、プリンター１（コントローラー６０）との間で各種のデータを授受するための素子であり、不揮発性メモリー（例えばフラッシュメモリー）などの各種データの格納可能な素子により構成される。ＣＳＩＣには、例えば、当該カートリッジに収容されているインクの色、濃度、粘性などの特性を示す情報や、各種の印刷制御プログラムなどが記憶されている。また、インクカートリッジには、この記憶素子と電気的に接続された複数の接続端子が露出して形成されている。
【００６１】
これに対して、カートリッジホルダー部３１０のカートリッジホルダーＨ１〜Ｈ４には、インクカートリッジを装着したときにインクカートリッジの複数の接続端子とそれぞれ電気的に接続するための複数の接続端子（不図示）が形成されている。
【００６２】
インクカートリッジがカートリッジホルダー部３１０のカートリッジホルダーＨ１〜Ｈ４に装着されると、インクカートリッジからプリンターの装置本体２のヘッド３１へのインクの供給が可能になる。また、インクカートリッジがカートリッジホルダーＨ１〜Ｈ４に装着されるとインクカートリッジの複数の接続端子と、カートリッジホルダーＨ１〜Ｈ４の複数の接続端子とがそれぞれ電気的に接続して、サブ基板３００を介して、プリンター１のメイン基板２００（コントローラー６０）とインクカートリッジの記憶素子（ＣＳＩＣ）との間においてデータの授受が可能となる。
【００６３】
このように、インクカートリッジホルダーユニット３のカートリッジホルダー部３１０にインクカートリッジが装着されることにより、メイン基板２００（コントローラー６０）は、サブ基板３００を介してインクカートリッジの記憶素子からのデータの読み出しや、インクカートリッジの記憶素子へのデータの書き込みを行うことができる。
【００６４】
＜サブ基板について＞
本実施形態のプリンター１のような大型のプリンターの場合、メイン基板２００とカートリッジホルダー部３１０の位置がかなり離れていることがある。この場合、仮に、メイン基板２００とカートリッジホルダー部３１０とを直接電気的に接続すると、信号の伝送距離が非常に長くなってしまう。このため、例えば、信号がなまってしまい、正確な通信が行えなくなる可能性がある。そこで本実施形態では、メイン基板２００とカートリッジホルダー部３１０との間にサブ基板３００を設けている。そして、メイン基板２００からサブ基板３００を介して、カートリッジの記憶素子（ＣＳＩＣ）の読み取りや書き込みを行うようにしている。このようにサブ基板３００を設けることによって、メイン基板２００とインクカートリッジのＣＳＩＣ間の信号の伝達の正確化を図っている。
【００６５】
図５はサブ基板３００の構成の一例を示すブロック図である。  
図５に示すサブ基板３００は、インターフェース部３０１、インターフェース部３０２、ＣＰＵ３０３を備えている。また、ＣＰＵ３０３は、演算部３０４、ＲＡＭ３０５、フラッシュメモリー３０６を有している。本実施形態ではサブ基板３００は、インクカートリッジホルダーユニット３に設けられている。言い換えると、メイン基板２００とは一定距離離れた位置であり、カートリッジホルダー部３１０（言い換えるとインクカートリッジ）とは近い（上記一定距離より短い）位置に設けられている。
【００６６】
インターフェース部３０１（第１インターフェースに相当する）は、装置本体２のメイン基板２００と通信するためのものである。  
インターフェース部３０２（第２インターフェースに相当する）は、インクカートリッジに備え付けられた基板（より具体的にはＣＳＩＣ）と通信するためのものであり、カートリッジホルダー部３１０の複数の接続端子（不図示）と接続されている。  
演算部３０４は、例えばフラッシュメモリー３０６に格納されたプログラム等を実行し、各種の演算を行う。
【００６７】
ＲＡＭ（Random Access Memory）３０５は、データの書き込みと読み出しが随時可能なメモリーである。なお、ＲＡＭ３０５は揮発性メモリーの一種であり、ＲＡＭ３０５に記憶されたデータは、プリンター１の電源（すなわち電源スイッチ８１）がオフ状態になると消去される。なお、本実施形態のＲＡＭ３０５は、メイン基板２００から受信するファームウェア（後述する）を全て記憶することができないような小さい記憶容量で構成されている。
【００６８】
フラッシュメモリー３０６は、不揮発性メモリーの一種であり、データの書き換えが可能であり電源を切っても（電源スイッチ８１がオフ状態になっても）データが消えない。なお、フラッシュメモリー３０６のデータの消去は、チップ単位または後述するセクター（ブロック）単位で行われる。フラッシュメモリー３０６には、各種のデータ（秘密鍵等）やプログラム（ブートプログラム、ファームウェア等）が格納される。
【００６９】
＜ファームウェアについて＞
ファームウェアとは、ハードウェアの基本的な制御を行うために機器に組み込まれたソフトウェア（プログラム）のことである。機器に固定的に搭載され、あまり変更が加えられないことから、ハードウェアとソフトウェアの中間的な存在としてファームウェアと呼ばれている。パソコンや周辺機器、家電製品等の機器に搭載されており、機器に内蔵された不揮発性メモリーに格納されている。ファームウェアは、機能の追加や不具合の修正のため、後から変更できるようになっているものが多い。プリンター１の場合、ファームウェアは、例えばホストコンピューター１１０のアプリケーションで生成されてプリンター１に伝送される。この伝送において、データの改ざんやノイズ等により正当なデータが送られていないおそれがある。そこで、ファームウェアの正当性を確認することが必要になる。
【００７０】
プリンター１の場合、メイン基板２００とサブ基板３００に対してそれぞれファームウェアが設けられているが、以下の実施形態では、サブ基板３００のファームウェアの正当性を確認する場合について説明する。本実施形態ではサブ基板３００のファームウェアの正当性をチェックする際に、「メッセージ認証コード」（ＭＡＣ）を使用する。
【００７１】
＜ＭＡＣについて＞
異なる機器間などのデータ伝送において、秘密鍵に基づいて、伝送された情報（データ）の整合性（正当性）をチェックする仕組みをＭＡＣと呼ぶ。通常、ＭＡＣは、秘密鍵を共有する２つの組織（機器）の間で送られる情報を認証するために使用される。なお、本実施形態ではＭＡＣの生成にはハッシュ関数が使われている。ハッシュ関数とは、入力値の長い情報を圧縮（要約）して短い情報にするための関数である。そのハッシュ関数を使って秘密鍵と組み合わせて計算したものをＨＭＡＣという。
【００７２】
まず、ＭＡＣの使用方法の概念について説明する。  
図６は、ＭＡＣの使用方法についての概念図である。送信側は送信データにハッシュ関数を使って秘密鍵（ｋｅｙＸ）と組み合わせてＨＭＡＣを生成し、送信データにＨＭＡＣを付与してデータを送出する。次に、そのデータの受信側は、まず受信したデータに対して送信側と同じ手順で独自のＨＭＡＣ（ＨＭＡＣ´とする）を生成する。そのＨＭＡＣ´と、送信側が付与したＨＭＡＣを比較して、両者が一致すればデータは正常であると判断できることになる。
【００７３】
図７は、フラッシュメモリー３０６のファームウェア領域のメモリーマップの一例を示す図である。なお、メモリーマップとは、どのアドレスに何のデータがあるかを示すものであり、図において、右にいくほど、また、下にいくほどアドレスが大きくなっている。例えば、図の一番上の段の左端は最もアドレスが小さい（先頭アドレスである）。
【００７４】
図の一つのライン（例えばＡ１で示すライン）は２５６バイトである。また４ライン（２５６バイト×４）分のデータを１セクター（ブロックともいう）という。すなわち図に示すファームウェアは、３セクター分のデータで構成されている。そして、その３セクター分のデータに対して前述のＨＭＡＣが計算されて付与されている。
【００７５】
本実施形態のメイン基板２００は、例えば、ホストコンピューター１１０のアプリケーションからファームウェアを受信して、その受信したファームウェアをサブ基板３００に伝送する。サブ基板３００は、メイン基板２００から受信したファームウェアをフラッシュメモリー３０６に格納する。  
なお、フラッシュメモリー３０６において、或るセクターに書き込みを行う際には、最初にそのセクター全てのデータを消去する必要がある。
【００７６】
＜ファームウェア書き換え時の処理について＞
図８は、サブ基板３００のファームウェアの書き換え時の処理を示すフロー図である。まず、メイン基板２００は、例えば、ホストコンピューター１１０のアプリケーションからファームウェアを受信し、そのファームウェアをサブ基板３００に送信する。このとき、メイン基板２００は、サブ基板３００にファームウェアのデータを３２バイトずつ送信する。サブ基板３００のＣＰＵ３０３は、インターフェース部３０１を介して３２バイトのデータを受信し（Ｓ１０１）、ＲＡＭ３０５に記憶させる（Ｓ１０２）。
【００７７】
そして、ＣＰＵ３０３は、受信したデータが２５６バイトか否かを判断する（Ｓ１０３）。受信したデータが２５６バイトでないと判断した場合（Ｓ１０３でＮＯ）は、ステップＳ１０１に戻る。一方、受信したデータが２５６バイトであると判断した場合（Ｓ１０３でＹＥＳ）は、書き込みを行うフラッシュメモリー３０６のアドレスが各セクターの先頭アドレスか否かを判断する（Ｓ１０４）。
【００７８】
先頭アドレスと判断した場合（Ｓ１０４でＹＥＳ）は、フラッシュメモリー３０６の該当するセクターのデータを全て消去する（Ｓ１０５）。例えばセクターＡの先頭アドレスの場合、セクターＡ（Ａ１、Ａ２、Ａ３、Ａ４）の全データを消去する。そして、ＲＡＭ３０５に記憶された２５６バイトのデータをフラッシュメモリー３０６に書きこむ（Ｓ１０６）。一方、ステップＳ１０４で先頭アドレスではないと判断した場合は、フラッシュメモリー３０６にデータを書き込むステップＳ１０６を実行する。
【００７９】
ステップＳ１０６の後、ＣＰＵ３０３は、全データの書き込みが終わったか否かの判断を行う（Ｓ１０７）。全データの書き込みが終わっていないと判断した場合（Ｓ１０７でＮＯ）は、ステップＳ１０１に戻る。全データの書き込みが終了したと判断した場合（Ｓ１０７でＹＥＳ）は、ファームウェアの書き換え処理を終了する。
【００８０】
＜本実施形態のサブ基板３００の動作について＞
図９は、本実施形態におけるサブ基板３００の動作について説明するためのフロー図である。  
装置本体２の電源スイッチ８１がオン状態になると（Ｓ２０１）、ＣＰＵ０３０は、フラッシュメモリー３０６に格納されたブートプログラムを実行し、ブートモードで起動する（Ｓ２０２）。このとき、サブ基板３００の演算部３０４は、ハッシュ関数と秘密鍵（ｋｅｙＸ）を用いて、フラッシュメモリー３０６のワームウェア領域のＨＭＡＣ（図６におけるＨＭＡＣ´）を計算し（Ｓ２０３）、算出されたＨＭＡＣが正しいか（ＨＭＡＣ＝ＨＭＡＣ´であるか）を判断する（Ｓ２０４）。ＨＭＡＣが正しいと判断した場合（Ｓ２０４でＹＥＳ）、ＣＰＵ３０３は、ブートモードから通常モードに切り替える。この通常モードは全コマンドを受け付けるモードである。例えば、ＣＰＵ３０３は、ＣＳＩＣのデータを読み出すコマンドや、ＣＳＩＣにデータを書き込むコマンドを受けてＣＳＩＣの読み書きを行う。
【００８１】
その後、ファームウェアアップデートコマンドを受け付けたかの判断を行う（Ｓ２０６）。ファームウェアアップデートコマンドを受け付けてないと判断した場合（Ｓ２０６でＮＯ）、再度ステップＳ２０６を実行する。
【００８２】
一方、ファームウェアアップデートコマンドを受け付けたと判断した場合（Ｓ２０６でＹＥＳ）、及び、ステップＳ２０４でＨＭＡＣが正しくないと判断した場合（Ｓ２０４でＮＯ）は、ファームウェア書き換えモードを実行する（Ｓ２０７）。なお、ファームウェア書き換えモードは、フラッシュメモリー３０６に格納されたファームウェアを書き換えるためのモードであり、このモードを実行する際には、フラッシュメモリー３０６にはアクセスせず、ＲＡＭ３０５上で動くことになる。そして、ファームウェアの書き換え用のコマンドを受信することによってフラッシュメモリー３０６のデータの書き換えを行う。このため、フラッシュメモリー３０６に格納されたファームウェアが正当でない場合に、そのファームウェアを実行しないようにできる。ＣＰＵ３０３は、ファームウェアの書き換えを行ったか否かの判断を行う（Ｓ２０８）。ファームウェアの書き換え処理を行っていなければ（Ｓ２０８でＮＯ）、再度ステップＳ２１０を実行する。ファームウェアの書き換え処理を行っていれば（Ｓ２０８でＹＥＳ）、電源をオフとする（Ｓ２０９）。その後、電源がオンとなることによって（ステップＳ２０１に戻り）、ブートモードで起動する。
【００８３】
以上、説明したように、本実施形態のプリンター１は、装置本体２のメイン基板２００とは一定距離離れた位置であり、且つ、インクカートリッジが装着されるカートリッジホルダー部３１０に近い位置にサブ基板３００を設けている。さらにサブ基板３００は、メイン基板２００と通信するためのインターフェース部３０１とインクカートリッジに備え付けられた基板と通信するためのインターフェース部３０２と、メイン基板２００から受信したファームウェアが格納されたフラッシュメモリー３０６と、電源スイッチ８１がオン状態となったときに、フラッシュメモリー３０６のファームウェア領域のデータのＨＭＡＣを計算して、ファームウェアの正当性をチェックする演算部３０４とを有している。
【００８４】
このようにサブ基板３００を設けているので、メイン基板２００とインクカートリッジに備え付けられた基板の記憶素子(ＣＳＩＣ)との間の信号の伝達の正確化を図ることができる。また、電源がオンとなる毎にブートモードを実行し、サブ基板３００のフラッシュメモリー３０６に格納されたファームウェアのＨＭＡＣを計算して正当性を確認しているので、ファームウェアの正当性を確実に確認することができる。
【００８５】
＝＝＝第２実施形態＝＝＝
第１実施形態では、メイン基板２００に対してサブ基板が１つ設けられていたが、第２実施形態では、メイン基板２００に対して２つのサブ基板が設けられている。また、第２実施形態のプリンター１のインクカートリッジホルダー部３１０には、インクカートリッジホルダーＨ１〜Ｈ８が備えられている。つまり第２実施形態のプリンター１は、８色のインクを吐出する。なお、これ以外の構成は第１実施形態と同じであるので説明を省略する。
【００８６】
第２実施形態のプリンター１は、２つのサブ基板（サブ基板３００Ａ、サブ基板３００Ｂとする）を有している。なお、サブ基板３００Ａとサブ基板３００Ｂは第１実施形態のサブ基板３００と同じ構成であり、サブ基板３００ＡはインクカートリッジホルダーＨ１〜Ｈ４と対応し、サブ基板３００ＢはインクカートリッジホルダーＨ５〜Ｈ８と対応している。そして、各サブ基板のフラッシュメモリー３０６にはそれぞれ個々にファームウェアが格納されている。
【００８７】
この第２実施形態では、ブートモードにおいて、サブ基板３００Ａとサブ基板３００ＢについてのファームウェアのＨＭＡＣ（ＨＭＡＣ´）をそれぞれ算出し、ファームウェアの正当性をそれぞれ確認する。ただし、この場合、各サブ基板のファームウェア領域のＨＭＡＣの正当性が確認されても、サブ基板３００Ａのファームウェアのバージョンと、サブ基板３００Ｂのファームウェアのバージョンが一致しなければ、通常モードは実行せず、ファームウェア書き換えモードを実行する。
【００８８】
例えば、サブ基板３００Ａとサブ基板３００Ｂの正当性が共に確認されたにも関わらず、サブ基板３００Ａのファームウェアが最新バージョンであり、サブ基板３００Ｂのファームウェアが旧バージョンであれば、通常モードを実行せずに、ファームウェア書き換えモードを実行する。
【００８９】
こうすることにより、サブ基板が２つ設けられている場合のファームウェアの正当性をより確実に確認することができる。なお、この第２実施形態では、サブ基板を２つ設けるようにしていたが、これには限られず、サブ基板の数が３つ以上であってもよい。この場合も同様に、ブートモードにおいて各サブ基板についてのファームウェアの正当性が確認されても、ファームウェアのバージョンが一致しなければ、通常モードを行わずに、ファームウェア書き換えモードを行うようにすればよい。
【００９０】
＝＝＝その他の実施の形態＝＝＝
一実施形態としてのプリンター等を説明したが、上記の実施形態は、本発明の理解を容易にするためのものであり、本発明を限定して解釈するためのものではない。本発明は、その趣旨を逸脱することなく、変更、改良され得ると共に、本発明にはその等価物が含まれることは言うまでもない。特に、以下に述べる実施形態であっても、本発明に含まれるものである。
【００９１】
＜プリンターについて＞
前述の実施形態では、ラテラル式のプリンターであったが、これには限らない。例えば、被印刷媒体を搬送方向に搬送する搬送動作と、ヘッドを移動方向（搬送方向と交差する方向）に移動しつつ、ヘッドのノズルからインクを吐出して被印刷媒体にドットを形成するドット形成動作とを繰り返して画像を形成するプリンター（いわゆるシリアルプリンター）であってもよい。また、例えば、被印刷媒体を搬送方向に搬送しつつ搬送経路上に設けられたヘッドからＵＶインクを吐出して画像を形成するプリンター（いわゆるラインプリンター）であってもよい。
【００９２】
また、前述の実施形態では、消耗品としてのインクを吐出して画像を形成するプリンターであったが、これには限られない。例えば消耗品としてのトナーを被印刷媒体に付着させ、その後、熱により定着させることで画像を形成するプリンターであってもよい。
【００９３】
＜ノズルについて＞
前述の実施形態では、圧電素子（ピエゾ素子）を用いてインクを吐出していた。しかし、液体を吐出する方式は、これに限られるものではない。例えば、熱によりノズル内に泡を発生させる方式など、他の方式を用いてもよい。
【００９４】
＜サブ基板について＞
前述の実施形態では、１つのサブ基板が４つのインクカートリッジ（言い換えるとＣＳＩＣ）と対応していたが、これには限らない。例えば３つ以下のインクカートリッジと対応していてもよいし、５つ以上のインクカートリッジと対応していてもよい。
【００９５】
＜フラッシュメモリーについて＞
前述の実施形態では、サブ基板３００の不揮発性メモリーとしてフラッシュメモリー３０６を用いていたがこれには限られない。例えばＥＥＰＲＯＭ（Electrically Erasable Programmable Read-Only Memory）を用いても良い。
【００９６】
＜ＲＡＭについて＞
前述の実施形態ではフラッシュメモリー３０６のファームウェアを書き換える際、ＲＡＭ３０５は２５６バイト記憶した段階でフラッシュメモリー３０６にデータを送信していたが、このとき送信するデータは２５６バイト以外であってもよい。例えば、ファームウェア全体を記憶してからフラッシュメモリー３０６にファームウェアを送信してもよい。ただし、前述の実施形態のように、ファームウェアのデータを所定バイトずつに分けて送信することによってＲＡＭ３０５に記憶容量の小さいものを用いることができる。
【符号の説明】
【００９７】
１  プリンター、２  装置本体、３  インクカートリッジホルダーユニット、
１０  給送ユニット、１８  巻軸、１９  中継ローラー、
２０  搬送ユニット、２１  中継ローラー、２２  中継ローラー、
２３  第一搬送ローラー、２３ａ  第一駆動ローラー、２３ｂ  第一従動ローラー、
２４  第二搬送ローラー、２４ａ  第二駆動ローラー、２４ｂ  第二従動ローラー、
２５  反転ローラー、２６  中継ローラー、２７  送り出しローラー、２９  プラテン、
３０  ヘッドユニット、３１  ヘッド、３４  バルブユニット、
３５  クリーニングユニット、４０  キャリッジユニット、４１  ガイドレール、
４２  キャリッジ、５０  検出器群、６０  コントローラー、
６１  インターフェース部、６２  ＣＰＵ、６３  メモリー、６４  ユニット制御回路、
７０  巻き取りユニット、７１  中継ローラー、７２  巻き取り駆動軸、
８０  電源ユニット、８１  電源スイッチ、
１１０  ホストコンピューター、２００  メイン基板、３００  サブ基板、
３０１  インターフェース部、３０２  インターフェース部、３０３  ＣＰＵ、
３０４  演算部、３０５  ＲＡＭ、３０６  フラッシュメモリー、
３１０  カートリッジホルダー部
【図１】
0005810855.tif 000002
【図２】
0005810855.tif 000003
【図３】
0005810855.tif 000004
【図４】
0005810855.tif 000005
【図５】
0005810855.tif 000006
【図６】
0005810855.tif 000007
【図７】
0005810855.tif 000008
【図８】
0005810855.tif 000009
【図９】
0005810855.tif 000010