(57)【要約】【課題】ファームウェアの更新において、プリンターが備えるＲＡＭを効率よく利用し、また更新処理に要する時間を抑える。【解決手段】プリンターは、メイン制御部、及びＲＡＭを有するメイン回路基板と、サブ制御部、及びファームウェアを記憶するＲＯＭを有する複数のサブ回路基板とを備え、メイン回路基板とサブ回路基板とは通信可能に接続され、メイン制御部は、サブ回路基板を制御する際、複数のサブ回路基板のそれぞれに対しＲＡＭの異なるメモリー領域を割り当て、メイン制御部は、複数のサブ制御部がファームウェアを更新する際、複数のサブ回路基板のそれぞれに対しＲＡＭの共通のメモリー領域を割り当て、共通のメモリー領域に書換用ファームウェアを格納し、複数のサブ制御部のそれぞれは対応するＲＯＭに格納されたファームウェアを共通のメモリー領域に格納された書換用ファームウェアに基づいて更新する。【選択図】図１
2019185507.tif 000002
【特許請求の範囲】
【請求項１】
第１制御部、及び揮発性メモリーを有する第１回路基板と、
第２制御部、及びファームウェアを記憶する不揮発性メモリーを有する複数の第２回路基板と、を備え、
前記第１回路基板と前記第２回路基板とは、通信可能に接続され、
前記第１制御部は、前記第２回路基板を制御する際、複数の前記第２回路基板のそれぞれに対し、前記揮発性メモリーの異なるメモリー領域を割り当て、
前記第１制御部は、複数の前記第２制御部が前記ファームウェアを更新する際、複数の前記第２回路基板のそれぞれに対し、前記揮発性メモリーの共通のメモリー領域を割り当て、前記共通のメモリー領域に書き換え用のファームウェアを格納し、
複数の前記第２制御部のそれぞれは、対応する前記不揮発性メモリーに格納された前記ファームウェアを、前記共通のメモリー領域に格納された前記書き換え用のファームウェアに基づいて更新する、
印刷装置。
【請求項２】
複数のノズル群に分割された印刷ヘッドを備え、
前記第２回路基板は、前記印刷ヘッドを制御するための制御基板であり、
複数の前記第２回路基板は、複数の前記ノズル群に対応して設けられている、
請求項１に記載の印刷装置。
【請求項３】
複数の前記第２制御部は、並行して前記不揮発性メモリーに格納された前記ファームウェアを更新する、
請求項１又は２に記載の印刷装置。
【請求項４】
第１制御部、及び揮発性メモリーを有する第１回路基板と、第２制御部、及びファームウェアを記憶する不揮発性メモリーを有し、前記第１回路基板と通信可能に接続される複数の第２回路基板と、複数の前記第２回路基板により駆動制御される印刷ヘッドとを備え、前記印刷ヘッドを駆動制御する際、前記第１制御部は、複数の前記第２回路基板のそれぞれに対して、前記揮発性メモリーの異なるメモリー領域を割り当てて、前記第２回路基板を制御する印刷装置のファームウェア更新方法であって、
前記第１制御部は、複数の前記第２回路基板のそれぞれに対して、前記揮発性メモリーの共通のメモリー領域を割り当て、前記共通のメモリー領域に書き換え用のファームウェアを格納し、
複数の前記第２制御部のそれぞれは、対応する前記不揮発性メモリーに格納された前記ファームウェアを、前記共通のメモリー領域に格納された前記書き換え用のファームウェアに基づいて更新する、
印刷装置のファームウェア更新方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、印刷装置、及び、印刷装置のファームウェア更新方法に関する。
【背景技術】
【０００２】
従来、ファームウェア更新を行う印刷装置が知られている（例えば、特許文献１参照）。特許文献１では、一時的にＲＡＭに格納した書き換え用のファームウェアをＲＯＭに転移し、ＲＯＭに転移したファームウェアを複数の同一種のオプション機器に送信して各オプション機器のファームウェア更新を行うプリンターを開示する。各オプション機器は、受信したファームウェアを一旦ＲＡＭに記憶させた後、ＲＯＭに保存されているファームウェアを書き換える。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１６−２０６８５３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
特許文献１に記載の印刷装置では、ファームウェアを更新するオプション機器のそれぞれが、書き換え用のファームウェアを一時記憶可能な容量を有するＲＡＭを備えている必要があった。
本発明は、上述した事情に鑑みてなされたものであり、印刷装置が備える複数の同一のファームウェアの更新において、印刷装置が備える揮発性メモリーを効率よく利用し、また更新処理に要する時間を抑えることを目的とする。
【課題を解決するための手段】
【０００５】
上記課題を解決するために、本発明の印刷装置は、第１制御部、及び揮発性メモリーを有する第１回路基板と、第２制御部、及びファームウェアを記憶する不揮発性メモリーを有する複数の第２回路基板と、を備え、前記第１回路基板と前記第２回路基板とは、通信可能に接続され、前記第１制御部は、前記第２回路基板を制御する際、複数の前記第２回路基板のそれぞれに対し、前記揮発性メモリーの異なるメモリー領域を割り当て、前記第１制御部は、複数の前記第２制御部が前記ファームウェアを更新する際、複数の前記第２回路基板のそれぞれに対し、前記揮発性メモリーの共通のメモリー領域を割り当て、前記共通のメモリー領域に書き換え用のファームウェアを格納し、複数の前記第２制御部のそれぞれは、対応する前記不揮発性メモリーに格納された前記ファームウェアを、前記共通のメモリー領域に格納された前記書き換え用のファームウェアに基づいて更新する。
本発明によれば、複数の第２回路基板のファームウェアを更新する際、第１制御部は、揮発性メモリーの異なるメモリー領域のそれぞれに、書き換え用のファームウェアを格納する必要がない。そのため、書き換え用のファームウェアを揮発性メモリーに格納するのに要する時間、延いてはファームウェアの更新に要する時間を抑えることができる。また、複数の第２回路基板のそれぞれに、書き換え用のファームウェアを格納可能な容量を有する揮発性メモリーを設ける必要がない。したがって印刷装置は、第１回路基板の揮発性メモリーを効率よく利用して、ファームウェアの更新を行うことができる。
【０００６】
また、本発明は、複数のノズル群に分割された印刷ヘッドを備え、前記第２回路基板は、前記印刷ヘッドを制御するための制御基板であり、複数の前記第２回路基板は、複数の前記ノズル群に対応して設けられている。
本発明によれば、印刷ヘッドを制御する制御基板のファームウェア更新において、第１回路基板の揮発性メモリー有効に利用することができる。
【０００７】
また、本発明は、複数の前記第２制御部は、並行して前記不揮発性メモリーに格納された前記ファームウェアを更新する。
本発明によれば、複数の第２制御部が並行してファームウェアの更新を行うため、ファームウェア更新に要する時間を抑えることができる。
【０００８】
また、上記課題を解決するために、本発明は、第１制御部、及び揮発性メモリーを有する第１回路基板と、第２制御部、及びファームウェアを記憶する不揮発性メモリーを有し、前記第１回路基板と通信可能に接続される複数の第２回路基板と、複数の前記第２回路基板により駆動制御される印刷ヘッドとを備え、前記印刷ヘッドを駆動制御する際、前記第１制御部は、複数の前記第２回路基板のそれぞれに対して、前記揮発性メモリーの異なるメモリー領域を割り当てて、前記第２回路基板を制御する印刷装置のファームウェア更新方法であって、前記第１制御部は、複数の前記第２回路基板のそれぞれに対して、前記揮発性メモリーの共通のメモリー領域を割り当て、前記共通のメモリー領域に書き換え用のファームウェアを格納し、複数の前記第２制御部のそれぞれは、対応する前記不揮発性メモリーに格納された前記ファームウェアを、前記共通のメモリー領域に格納された前記書き換え用のファームウェアに基づいて更新する。
【図面の簡単な説明】
【０００９】
【図１】プリンターの構成を示す図。
【図２】プリンターの動作を示すフローチャート。
【図３】ＲＡＭのメモリー領域の割り当てを説明するための図。
【図４】ＲＡＭのメモリー領域の割り当てを説明するための図。
【発明を実施するための形態】
【００１０】
以下、本発明の好適な実施形態について、図面を用いて詳細に説明する。なお、以下に説明する実施形態は、特許請求の範囲に記載された本発明の内容を限定するものではない。また、以下で説明される構成の全てが本発明の必須構成要件であるとは限らない。
【００１１】
図１は、プリンター１（印刷装置）の構成を示す図である。
プリンター１は、図示せぬ外部装置から受信する画像データに基づいて、インクを吐出することにより印刷媒体に画像を印刷するインクジェット方式の印刷装置である。特に、本実施形態のプリンター１は、印刷媒体の搬送方向と交差する方向（例えば、直交する方向）に配列されたノズル列を有するライン型のインクジェットヘッド１２（印刷ヘッド）を備えるラインプリンターである。
【００１２】
プリンター１は、メイン回路基板１０（第１回路基板）と、複数のサブ回路基板１１（第２回路基板）とを備える。本実施形態のプリンター１は、２４個のサブ回路基板１１を備える。
【００１３】
メイン回路基板１０は、プリンター１の全体を制御する主基板であり、メイン制御部１００（第１制御部）と、外部通信部１０１と、メイン基板通信部１０２と、を搭載する。
【００１４】
メイン制御部１００は、ＣＰＵ１００Ａ、ＲＯＭ１００Ｂ、及びＲＡＭ１００Ｃ（揮発性メモリー）を備える。ＣＰＵ１００Ａは、ＲＯＭ１００Ｂに記憶された制御プログラムを実行することにより、ハードウェア及びソフトウェアの協働で各種の処理を実行する。ＲＯＭ１００ＢとＲＡＭ１００Ｃとは、種々のデータを記憶する記憶部を構成する。
【００１５】
ＣＰＵ１００Ａは、演算処理を実行するプロセッサーであり、ＲＯＭ１００Ｂに記憶されたファームウェア等の制御プログラムを読み出して実行することによりプリンター１の各部を制御する。
【００１６】
ＲＯＭ１００Ｂは、ＣＰＵ１００Ａが実行する制御プログラムの他、各種のデータを不揮発に記憶する。
【００１７】
ＲＡＭ１００Ｃは、ＣＰＵ１００Ａのワークエリアとして機能し、各種データを一時的に記憶する。
【００１８】
外部通信部１０１は、メイン制御部１００の制御で、所定の通信規格に従って、ホストコンピューター等の外部装置と通信する。外部通信部１０１は、コネクターやインターフェース回路等の所定の通信規格に従った通信に必要なハードウェアを備える。
【００１９】
メイン基板通信部１０２は、メイン制御部１００の制御で、所定の通信規格に従って各サブ回路基板１１と通信する。メイン基板通信部１０２は、コネクターやインターフェース回路等の所定の通信規格に従った通信に必要なハードウェアを備える。本実施形態のメイン基板通信部１０２は、ＰＣＩ  Ｅｘｐｒｅｓｓ規格に従ったコネクターやインターフェース回路等のハードウェアを備える。
【００２０】
サブ回路基板１１は、メイン回路基板１０に対する周辺基板であり、インクジェットヘッド１２を駆動制御する。各サブ回路基板１１には、インクジェットヘッド１２を構成する単位ヘッド１２１が２つずつ接続される。そして、サブ回路基板１１は、接続された単位ヘッド１２１によるインクの吐出を制御する。サブ回路基板１１はヘッドコントローラーとして機能する。
【００２１】
インクジェットヘッド１２を構成する各単位ヘッド１２１（ノズル群）は、複数のノズルが１列に並ぶノズル列１２ａを備えている。インクジェットヘッド１２は、ライン型のインクジェットヘッドであり、ノズル列１２ａが印刷媒体の搬送方向と交差する方向に並ぶように、プリンター１に配置される。各単位ヘッド１２１は、印刷媒体の搬送方向と交差する方向にジグザグ状に配置（いわゆる、千鳥配置）されている。インクジェットヘッド１２は、複数の単位ヘッド１２１（ノズル列１２ａ）によって、１ラインに相当するインク吐出領域を形成している。
【００２２】
１のサブ回路基板１１は、２つのサブ制御部１１１（第２制御部）と、サブ基板通信部１１２と、ヘッド通信部１１３とを搭載する。
【００２３】
１のサブ制御部１１１は、例えば１のＳｏＣ（System-on-a-Chip）により構成され、ＣＰＵ１１１Ａ、ＲＯＭ１１１Ｂ（不揮発性メモリー）、及びＲＡＭ１１１Ｃを備える。ＣＰＵ１１１Ａは、ＲＯＭ１１１Ｂに記憶されたプログラムを実行することにより、ハードウェア及びソフトウェアの協働で各種の処理を実行する。ＲＯＭ１１１ＢとＲＡＭ１１１Ｃとは、各種データを記憶する記憶部を構成する。
【００２４】
ＣＰＵ１１１Ａは、演算処理を実行するプロセッサーであり、ＲＯＭ１１１Ｂに記憶されたファームウェア等の制御プログラムを読み出して実行することにより１の単位ヘッド１２１のインクの吐出を制御する。
【００２５】
ＲＯＭ１１１Ｂは、ＣＰＵ１１１Ａが実行する制御プログラムの他、各種のデータを不揮発に記憶する。ＲＯＭ１１１Ｂは、ＣＰＵ１１１Ａが実行可能なプログラムであるファームウェア１１Ｂ１を不揮発に記憶する。
ファームウェア１１Ｂ１は、１の単位ヘッド１２１を制御するためのプログラムである。ＲＯＭ１１１Ｂには、ファームウェア１１Ｂ１をＲＯＭ１１１Ｂから消去する機能と、書き換え用のファームウェア（アップデート用のファームウェア）をＲＯＭ１１１Ｂに書き込む機能とを有するファームウェア更新プログラムが格納されている。
【００２６】
本実施形態では、サブ制御部１１１の各ＲＯＭ１１１Ｂには、同一のファームウェアが格納されている。
【００２７】
ＲＡＭ１１１Ｃは、ＣＰＵ１１１Ａのワークエリアとして機能し、各種データを一時的に記憶する。
【００２８】
サブ基板通信部１１２は、サブ制御部１１１の制御で、所定の通信規格に従ってメイン回路基板１０と通信する。サブ基板通信部１１２は、コネクターやインターフェース回路等の所定の通信規格に従った通信に必要なハードウェアを備える。本実施形態のサブ基板通信部１１２は、ＰＣＩ  Ｅｘｐｒｅｓｓ規格に従ったコネクターやインターフェース回路等のハードウェアを備える。
【００２９】
ヘッド通信部１１３は、サブ制御部１１１の制御で、サブ回路基板１１に接続された単位ヘッド１２１にインクを吐出するための駆動信号を出力する。単位ヘッド１２１は、ヘッド通信部１１３から入力された信号に基づいてインクを吐出し、印刷媒体にドットを形成する。
【００３０】
次に、ファームウェア１１Ｂ１の更新について説明する。
ファームウェア１１Ｂ１は、例えば、機能の追加やプログラムの修正等を目的としてバージョンアップされる。
【００３１】
サブ回路基板１１のサブ制御部１１１は、ファームウェア１１Ｂ１の更新の指示があると、ＲＯＭ１１１Ｂに格納されたファームウェア更新プログラムを読み出して実行し、ＲＯＭ１１１Ｂに書き込まれているファームウェア１１Ｂ１を新たなファームウェア１１Ｂ１に書き替える。サブ制御部１１１は、現在のファームウェア１１Ｂ１をＲＯＭ１１１Ｂから消去し、書換用ファームウェアをメイン回路基板１０から取得してＲＯＭ１００Ｂに書き込む。このように、ＲＯＭ１１１Ｂに格納されたファームウェア１１Ｂ１の更新が行われる。
【００３２】
図２は、プリンター１の動作を示すフローチャートである。
図２のフローチャートにおける処理の開始時点では、複数のサブ回路基板１１のそれぞれに対し、ＲＡＭ１００Ｃのメモリー領域が図３に示すように割り当てられているものとする。メイン制御部１００は、ＲＡＭ１００Ｃに、サブ回路基板１１に係る処理において使用されるメモリー領域をサブ回路基板１１毎に割り当てる。
【００３３】
図３は、各サブ回路基板１１に対するＲＡＭ１００Ｃのメモリー領域の割り当てを説明するための図である。
図３では、説明便宜のため、複数のサブ回路基板１１のうち、４個のサブ回路基板１１ａ、１１ｂ、１１ｃ、１１ｄを代表して図示する。サブ回路基板１１ａには、単位ヘッド１２１ａ、１２１ｂが接続し、サブ回路基板１１ｂには、単位ヘッド１２１ｃ、１２１ｄが接続し、サブ回路基板１１ｃには、単位ヘッド１２１ｅ、１２１ｆが接続し、サブ回路基板１１ｄには、単位ヘッド１２１ｇ、１２１ｈが接続する。
【００３４】
図３に示すように、サブ回路基板１１ａ、１１ｂ、１１ｃ、１１ｄのそれぞれには、メイン回路基板１０のＲＡＭ１００Ｃのメモリー領域ＭＲにおいて異なるメモリー領域が割り当てられている。サブ回路基板１１ａにはメモリー領域ＭＲａが割り当てられ、サブ回路基板１１ｂにはメモリー領域ＭＲｂが割り当てられ、サブ回路基板１１ｃにはメモリー領域ＭＲｃが割り当てられ、サブ回路基板１１ｄにはメモリー領域ＭＲｄが割り当てられている。
このメモリー領域の割り当ては、プリンター１による印刷時（通常動作時）におけるものであり、インクジェットヘッド１２を駆動制御するためのデータ等が、割り当てられたメモリー領域に格納される。
【００３５】
図２において、メイン制御部１００は、各サブ回路基板１１のファームウェア１１Ｂ１を更新するか否かを判別する（ステップＳ１）。例えば、メイン制御部１００は、外部通信部１０１により、外部装置から、ファームウェアの書き替えを指示する情報、または、書換用ファームウェアの送信開始を指示する情報を受信した場合、ファームウェア１１Ｂ１を更新すると判別する。また、例えば、メイン制御部１００は、ユーザーの操作を受け付ける操作部（不図示）が、ファームウェア１１Ｂ１の更新を指示する操作を受け付けた場合に、ファームウェア１１Ｂ１を更新すると判別する。
【００３６】
メイン制御部１００は、各サブ回路基板１１のファームウェア１１Ｂ１を更新しないと判別した場合（ステップＳ１：ＮＯ）、インクジェットヘッド１２により印刷を行うか否かを判別する（ステップＳ２）。例えば、メイン制御部１００は、外部通信部１０１により、外部装置から印刷媒体に印刷する画像を示す画像データを受信した場合、インクジェットヘッド１２により印刷を行うと判別する。
【００３７】
メイン制御部１００は、ステップＳ２において肯定判別すると（ステップＳ２：ＹＥＳ）、外部装置から受信した画像データに基づいて印刷データを生成し、生成した印刷データに基づいてインクジェットヘッド１２により印刷媒体に印刷を行う（ステップＳ３）。
【００３８】
メイン制御部１００は、生成した印刷データを分割して対応する各単位ヘッド１２１に割り当てる。以下、単位ヘッド１２１毎のインク吐出に係る印刷データを「単位印刷データ」という。すなわち、単位印刷データを、対応する単位ヘッド１２１を駆動制御するサブ回路基板１１に割り当てたＲＡＭ１００Ｃのメモリー領域ＭＲに格納する。そして、メイン制御部１００は、メモリー領域ＭＲに格納した単位印刷データを、対応するサブ回路基板１１に送信する。例えば、メイン制御部１００は、単位ヘッド１２１ａ用の単位印刷データと単位ヘッド１２１ｂ用の単位印刷データを、メモリー領域ＭＲａに格納し、メモリー領域ＭＲａに格納した単位印刷データを、サブ回路基板１１ａに送信する。メイン制御部１００がメモリー領域ＭＲに単位印刷データを格納した後、サブ制御部１１１が対応するメモリー領域ＭＲから単位印刷データを読み出してもよい。
【００３９】
このように、メイン制御部１００は、サブ回路基板１１を制御する際、各サブ回路基板１１に対してＲＡＭ１００Ｃの異なるメモリー領域を割り当てているため、サブ回路基板１１のそれぞれに対して単位印刷データを適切に出力できる。
【００４０】
なお、外部装置から受信したデータが印刷データである場合、メイン制御部１００は、印刷データの生成を行わず、受信した印刷データを分割して各単位ヘッド１２１に割り当てて、対応するメモリー領域ＭＲに格納する。
【００４１】
ステップＳ１の説明に戻り、メイン制御部１００は、各サブ回路基板１１のファームウェア１１Ｂ１を更新すると判別した場合（ステップＳ１：ＹＥＳ）、各サブ回路基板１１に対して、ＲＡＭ１００Ｃのメモリー領域ＭＲのうち、あるメモリー領域を共通に割り当てる（ステップＳ４）。以下の説明では、各サブ回路基板１１に対して共通に割り当てるメモリー領域を、「共通メモリー領域」という。
【００４２】
図４は、各サブ回路基板１１に対するＲＡＭ１００Ｃのメモリー領域の割り当てを説明するための図である。
図４では、図３と同様に説明便宜のため、サブ回路基板１１として、サブ回路基板１１ａ、１１ｂ、１１ｃ、１１ｄを代表して図示する。
【００４３】
図４に示すように、メイン制御部１００は、サブ回路基板１１ａ、１１ｂ、１１ｃ、１１ｄのそれぞれに対して、ＲＡＭ１００Ｃの共通メモリー領域ＭＲｚを割り当てる。
【００４４】
共通メモリー領域ＭＲｚは、ステップＳ４の処理前に各サブ回路基板１１に割り当てていた各メモリー領域ＭＲａ〜ＭＲｄとは独立した異なるメモリー領域でもよいし、同じ、或いは、一部が同じメモリー領域でもよい。例えば、共通メモリー領域ＭＲｚは、メモリー領域ＭＲａ、ＭＲｂ、ＭＲｃ、ＭＲｄと併存するように設けてもよいし、メモリー領域ＭＲａ、ＭＲｂ、ＭＲｃ、ＭＲｄのいずれか１又は２と同じ領域を共通メモリー領域ＭＲｚとしてもよい。なお、共通メモリー領域ＭＲｚは、少なくとも１の書換用ファームウェアを格納可能な容量に設定される。
【００４５】
メイン制御部１００は、ステップＳ４において、サブ回路基板１１のそれぞれについて、割り当てるメモリー領域の先頭アドレスを共通メモリー領域ＭＲｚの先頭アドレスに変更し、また、割り当てるメモリー領域の容量を共通メモリー領域ＭＲｚの容量に変更する。例えば、メイン制御部１００は、サブ回路基板１１ａについて、割り当てるメモリー領域の先頭アドレスをメモリー領域ＭＲａからメモリー領域ＭＲｚの先頭アドレスに変更し、割り当てるメモリー領域の容量をメモリー領域ＭＲａの容量からメモリー領域ＭＲｚの容量に変更する。
【００４６】
メイン制御部１００は、ステップＳ４において、各サブ回路基板１１に対し、ＲＡＭ１００Ｃの共通メモリー領域ＭＲｚを割り当てると、外部装置から受信する書換用ファームウェアを共通メモリー領域ＭＲｚに格納する（ステップＳ５）。
【００４７】
各サブ回路基板１１の各サブ制御部１１１は、ＲＡＭ１００Ｃの共通メモリー領域ＭＲｚに格納された書換用ファームウェアに基づいて、ＲＯＭ１１１Ｂに格納されたファームウェア１１Ｂ１を更新する（ステップＳ６）。前述した通り、サブ回路基板１１のＲＯＭ１１１Ｂに格納されるファームウェア１１Ｂ１のそれぞれは、同じファームウェアである。そのため、各サブ制御部１１１は、共通メモリー領域ＭＲｚに格納された書換用ファームウェアを共有し、同じ書換用ファームウェアに基づいて自身のファームウェア１１Ｂ１を更新する。
【００４８】
各サブ回路基板１１の各サブ制御部１１１が、ＲＡＭ１００Ｃの共通メモリー領域ＭＲｚから書換用ファームウェアを読み出す場合、メイン制御部１００は、共通メモリー領域ＭＲｚの先頭アドレスと、共通メモリー領域ＭＲｚの容量を示す情報とが対応付いた情報を、各サブ制御部１１１に送信する。そして、各サブ制御部１１１は、受信した情報に基づいてＲＡＭ１００Ｃの共通メモリー領域にアクセスし、同じ書換用ファームウェアを読み出して、対応するＲＯＭ１１１Ｂが格納するファームウェア１１Ｂ１を更新する。各サブ制御部１１１は、ＲＡＭ１００Ｃの共通メモリー領域ＭＲｚから書換用ファームウェアを読み出すため、ファームウェア更新時に一時的に書換用ファームウェアを格納する容量を自身のＲＡＭ１１１Ｃに確保する必要がない。したがって、各サブ回路基板１１は、ファームウェア更新に必要な容量のＲＡＭ１１１Ｃを具備する必要がなく、コストダウンを図ることができる。
【００４９】
このように、メイン制御部１００は、各サブ回路基板１１のファームウェア１１Ｂ１を更新する際に、複数のサブ回路基板１１に対して、ＲＡＭ１００Ｃのあるメモリー領域を共通に割り当てる。そして、メイン制御部１００は、共通メモリー領域に書換用ファームウェアを格納する。各サブ制御部１１１は、共通メモリー領域に格納された書換用ファームウェアに基づいてファームウェア１１Ｂ１を更新する。
ここで、図３に示すように、各サブ回路基板１１に対し、ＲＡＭ１００Ｃの異なるメモリー領域が割り当てられているとする。この場合、メイン制御部１００は、異なるメモリー領域のそれぞれに書換用ファームウェアを格納する必要がある。これでは、各サブ回路基板１１が同じ書換用ファームウェアでファームウェア更新を行うにも関わらず、ＲＡＭ１００Ｃに同じ書換用ファームウェアが複数格納されてしまい、ＲＡＭ１００Ｃが無駄に使用されることになる。
本実施形態のプリンター１は、上述したように、各サブ回路基板１１のファームウェア更新に際し、ＲＡＭ１００Ｃに同じ書換用ファームウェアを複数格納することがなく、ＲＡＭ１００Ｃの無駄な使用を抑えることができ、また、書換用ファームウェアの格納に要する時間を短縮できる。
【００５０】
ステップＳ６では、複数のサブ制御部１１１は、並行してＲＯＭ１１１Ｂに格納されたファームウェア１１Ｂ１の更新を行う。これにより、プリンター１は、複数のサブ回路基板１１のファームウェアの更新を、１つずつ順に行う場合に比して短時間で行うことができる。
【００５１】
なお、共通メモリー領域ＭＲｚが、印刷制御で使用されるメモリー領域ＭＲａ〜ＭＲｄと併存して常に設定されている場合には、予め書換用ファームウェアを共通メモリー領域ＭＲｚに格納しておくことができる。例えば、印刷処理をしていない間に、ネットワーク接続されたホストコンピューターから受信した書換用ファームウェアを共通メモリー領域ＭＲｚに格納し、ファームウェア更新の準備をしておくことができる。これにより、プリンター１は、ファームウェア更新の指示を受けた後、直ちに共通メモリー領域ＭＲｚに格納されている書換用ファームウェアに基づいてファームウェア１１Ｂ１の更新を行うことができ、ファームウェア更新に要する時間を短縮することができる。
【００５２】
メイン制御部１００は、各サブ回路基板１１のファームウェア更新が終了したか否かを判別する（ステップＳ７）。例えば、メイン制御部１００は、全てのサブ制御部１１１から、ファームウェア更新の終了を示す情報を受信した場合、各サブ回路基板１１のファームウェア更新が終了したと判別する。
【００５３】
メイン制御部１００は、各サブ回路基板１１のファームウェア更新が終了したと判別した場合（ステップＳ７：ＹＥＳ）、各サブ回路基板１１に対するＲＡＭ１００Ｃのメモリー領域ＭＲの割り当てを、図３に示す印刷処理用の割り当てに戻す（ステップＳ８）。すなわち、メイン制御部１００は、ファームウェア１１Ｂ１の更新が終了すると、サブ回路基板１１のそれぞれに対して、ＲＡＭ１００Ｃの異なるメモリー領域を割り当てる。これにより、メイン制御部１００は、ファームウェア更新後、インクジェットヘッド１２により印刷を実行する場合でも、各サブ回路基板１１を適切に制御できる。
【００５４】
以上、説明したように、プリンター１（印刷装置）は、メイン制御部１００（第１制御部）、及びＲＡＭ１００Ｃ（揮発性メモリー）を有するメイン回路基板１０（第１回路基板）と、サブ制御部１１１（第２制御部）、及びファームウェア１１Ｂ１を記憶するＲＯＭ１１１Ｂ（不揮発性メモリー）を有する複数のサブ回路基板１１（第２回路基板）と、を備える。メイン回路基板１０とサブ回路基板１１とは、ＰＣＩ  Ｅｘｐｒｅｓｓ規格で通信可能に接続されている。メイン制御部１００は、サブ回路基板１１を制御する際、複数のサブ回路基板１１のそれぞれに対し、ＲＡＭ１００Ｃの異なるメモリー領域を割り当てる。また、メイン制御部１００は、複数のサブ制御部１１１がファームウェア１１Ｂ１を更新する際、複数のサブ回路基板１１のそれぞれに対し、ＲＡＭ１００Ｃの共通メモリー領域を割り当て、共通メモリー領域に書換用ファームウェアを格納する。複数のサブ制御部１１１のそれぞれは、自身のＲＯＭ１１１Ｂに格納されたファームウェア１１Ｂ１を、共通メモリー領域に格納された書換用ファームウェアに基づいて更新する。
【００５５】
この構成によれば、複数のサブ回路基板１１のファームウェア１１Ｂ１を更新する際、メイン制御部１００は、ＲＡＭ１００Ｃの複数のメモリー領域のそれぞれに、書換用ファームウェアを格納する必要がない。そのため、書換用ファームウェアをＲＡＭ１００Ｃに格納するのに要する時間、延いてはファームウェアの更新に要する時間を抑えることができる。また、書換用ファームウェアをサブ回路基板１１の個数分だけ格納するのに必要な容量のＲＡＭ１００Ｃを設ける必要がない。また、書換用ファームウェアを一時的に格納するのに十分な容量のＲＡＭ１１１Ｃをサブ回路基板１１に設ける必要がない。したがって、プリンター１は、ＲＡＭ１００ＣやＲＡＭ１１１Ｃを無駄に使用することなく、ファームウェアの更新を行うことができる。
【００５６】
また、プリンター１は、複数の単位ヘッド１２１（ノズル群）に分割されたインクジェットヘッド１２（印刷ヘッド）を備える。サブ回路基板１１は、インクジェットヘッド１２を制御するための制御基板である。複数のサブ回路基板１１は、複数の単位ヘッド１２１に対応して設けられている。
【００５７】
この構成によれば、インクジェットヘッド１２を制御するサブ回路基板１１のファームウェア１１Ｂ１の更新に際し、メイン回路基板１０のＲＡＭ１００Ｃを有効に利用することができる。
【００５８】
また、複数のサブ制御部１１１は、並行して、ＲＯＭ１１１Ｂに格納されたファームウェア１１Ｂ１を更新する。
【００５９】
この構成によれば、複数のサブ制御部１１１が並行してファームウェア１１Ｂ１の更新を行うため、更新処理に要する時間を抑えることができる。
【００６０】
上述した実施形態は、あくまでも本発明の一態様を示すものであり、本発明の範囲内で任意に変形および応用が可能である。
【００６１】
例えば、サブ回路基板１１のそれぞれは、完全同一な回路基板でなくてもよい。サブ回路基板１１のそれぞれは、同じファームウェア１１Ｂ１に基づいて動作する回路基板であればよい。
【００６２】
また、例えば、上述したプリンター１は、ライン型のインクジェットヘッド１２を備えるラインプリンターを例示したが、シリアル型のインクジェットヘッドを備えるシリアルプリンターでもよい。この場合、シリアル型のインクジェットヘッドは、複数のノズル群から構成されており、このノズル群を制御し、且つ、同じファームウェアに基づいて動作する回路基板を複数具備する。
【００６３】
また、例えば、上述した実施形態では、サブ回路基板１１を、単位ヘッド１２１を制御する制御基板として例示した。しかしながら、サブ回路基板１１の制御対象は、単位ヘッド１２１に限定されない。例えば、サブ回路基板１１は、ラインセンサーのような読取デバイスを制御対象とする制御基板でもよい。この場合、上述した実施形態のインクジェットヘッド１２と同様に、複数のラインセンサーにより１の画像読取ヘッドが構成され、プリンター１やスキャナー等の装置に具備される。
【００６４】
また、例えば、上述したプリンター１のファームウェア更新方法（印刷装置のファームウェア更新方法）が、プリンター１が備えるコンピューター、又は、プリンター１に接続される外部装置を用いて実現される場合、本発明を、当該方法を実現するためにコンピューターが実行するプログラム、このプログラムをコンピューターで読み取り可能に記録した記録媒体、或いは、このプログラムを伝送する伝送媒体の態様で構成することも可能である。
【００６５】
また、メイン制御部１００、及び、サブ制御部１１１の機能は、複数のプロセッサー、又は、半導体チップにより実現してもよい。例えば、メイン制御部１００、及び、サブ制御部１１１が、ＳｏＣやＭＣＵ（Micro Control Unit）、ＦＰＧＡ（Field-Programmable Gate Array）等の副処理装置（co-processor）をさらに備える構成であってもよい。また、メイン制御部１００、及び、サブ制御部１１１は、ＣＰＵ及び副処理装置の双方を協働させるか、あるいは双方のうちの一方を選択的に用いて各種の制御を行ってもよい。
【００６６】
また、図１に示した各機能部は機能的構成を示すものであって、具体的な実装形態は特に限定されない。つまり、必ずしも各機能部に個別に対応するハードウェアが実装される必要はなく、一つのプロセッサーがプログラムを実行することで複数の機能部の機能を実現する構成とすることも勿論可能である。また、上述した実施形態においてソフトウェアで実現される機能の一部をハードウェアとしてもよく、或いは、ハードウェアで実現される機能の一部をソフトウェアで実現してもよい。その他、プリンター１の他の各部の具体的な細部構成についても、本発明の趣旨を逸脱しない範囲で任意に変更可能である。
【００６７】
また、例えば、図２の処理単位は、プリンター１の処理を理解容易にするために、主な処理内容に応じて分割したものであり、処理単位の分割の仕方や名称によって、本発明が限定されることはない。処理内容に応じて、さらに多くの処理単位に分割してもよい。また、１つの処理単位がさらに多くの処理を含むように分割してもよい。また、その処理の順番は、本発明の趣旨に支障のない範囲で適宜に入れ替えてもよい。
【符号の説明】
【００６８】
１…プリンター（印刷装置）、１０…メイン回路基板（第１回路基板）、１１、１１ａ、１１ｂ、１１ｃ、１１ｄ…サブ回路基板（第２回路基板）、１１Ｂ１…ファームウェア、１２…インクジェットヘッド（印刷ヘッド）、１２ａ…ノズル列、１００…メイン制御部（第１制御部）、１００Ａ…ＣＰＵ、１００Ｂ…ＲＯＭ、１００Ｃ…ＲＡＭ（揮発性メモリー）、１０１…外部通信部、１０２…メイン基板通信部、１１１…サブ制御部（第２制御部）、１１１Ａ…ＣＰＵ、１１１Ｂ…ＲＯＭ（不揮発性メモリー）、１１１Ｃ…ＲＡＭ、１１２…サブ基板通信部、１１３…ヘッド通信部、１２１…単位ヘッド（ノズル群）。
【図１】
2019185507.tif 000003
【図２】
2019185507.tif 000004
【図３】
2019185507.tif 000005
【図４】
2019185507.tif 000006