(57)【要約】【課題】  搭載するメモリ数を少なくしてコスト削減を図る。【解決手段】  プリンタコントローラでは、セキュリティ情報を記憶し、予め決められたコマンドによってのみアクセス可能なセキュリティエリア（特殊領域）を備えたプログラム用フラッシュメモリ（不揮発性記憶手段）２を備えている。制御部１は、プログラム用フラッシュメモリ２のセキュリティエリアに予め記憶されたヘッド駆動Ｉ／Ｆ１７の補正値等の機器固有情報を参照して動作する。【選択図】        図１
2014059713.tif 000002
【特許請求の範囲】
【請求項１】
セキュリティ情報を記憶し、予め決められたコマンドによってのみアクセス可能な特殊領域を備えた不揮発性記憶手段を備え、前記不揮発性記憶手段の前記特殊領域に予め記憶された機器固有情報を参照して動作することを特徴とする情報処理装置。
【請求項２】
記憶内容を恒久的にロック可能な特殊領域を備えた不揮発性記憶手段を備え、前記不揮発性記憶手段の前記特殊領域に予め記憶された機器固有情報を参照して動作することを特徴とする情報処理装置。
【請求項３】
請求項１又は２に記載の情報処理装置の修理方法であって、
前記機器固有情報は、前記情報処理装置に搭載する部品の特性を示す情報であって、
前記部品を交換する場合、前記不揮発性記憶手段の前記特殊領域に記憶された機器固有情報に合った特性を持つ部品に交換することを特徴とする情報処理装置の修理方法。
【請求項４】
請求項１又は２に記載の情報処理装置であって、
前記機器固有情報は、前記情報処理装置に搭載する部品の特性を示す情報であって、
前記不揮発性記憶手段の前記特殊領域は、各領域に前記機器固有情報を記憶可能なように複数の領域に分割されており、
前記機器固有情報を参照する場合、前記分割された複数の領域のうち、最後に機器固有情報が書き込まれた領域の機器固有情報を参照することを特徴とする情報処理装置。
【請求項５】
請求項４に記載の情報処理装置の修理方法であって、
前記部品を交換する場合、前記特殊領域の前記分割された複数の領域であってまだ機器固有情報が書き込まれていない領域の中で、前記情報処理装置によって最後に参照される領域に、該交換後の部品の特性を示す機器固有情報を書き込むことを特徴とする情報処理装置の修理方法。
【請求項６】
請求項１又は２に記載の情報処理装置であって、
前記不揮発性記憶手段は省電力モードにおいて給電されない第１の記憶手段であり、
他に前記省電力モードにおいて給電される第２の記憶手段を備え、
前記省電力モードに移行する前の任意のタイミングで、前記不揮発性記憶手段の前記特殊領域に予め記憶された機器固有情報を、前記第２の記憶手段にコピーし、該予め記憶された機器固有情報に代えて、前記第２の記憶手段が記憶している機器固有情報を参照して動作することを特徴とする情報処理装置。
【請求項７】
請求項１又は２に記載の情報処理装置であって、
前記不揮発性記憶手段よりも高速にデータを読み出し可能な第２の記憶手段を備え、
前記不揮発性記憶手段の前記特殊領域に予め記憶された機器固有情報を、前記第２の記憶手段にコピーし、該予め記憶された機器固有情報に代えて、前記第２の記憶手段が記憶している機器固有情報を参照して動作することを特徴とする情報処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、情報処理装置、およびその修理方法に関する。
【背景技術】
【０００２】
ファクシミリ装置、プリンタ、複写機、複合機、パーソナルコンピュータ等の情報処理装置では、内蔵されている電子基板には様々な種類のメモリが搭載されている。
上記メモリは、揮発性メモリと不揮発性メモリに分類され、それぞれさらに用途毎のメモリが搭載されている。
不揮発性メモリでは、プログラムの格納にはフラッシュメモリが、装置固有のデータの格納にはＥＥＰＲＯＭがそれぞれ多く用いられている。
従来、通信制御プログラムを記憶した不揮発性メモリを設けた情報処理装置（例えば、特許文献１参照）があった。
【発明の概要】
【発明が解決しようとする課題】
【０００３】
しかしながら、従来の情報処理装置では、用途毎にメモリを搭載することになる。
したがって、多くのメモリが搭載されることとなり、情報処理装置の製造コストを上昇させるという問題があった。
この発明は上記の点に鑑みてなされたものであり、搭載するメモリ数を少なくしてコスト削減を図ることを目的とする。
【課題を解決するための手段】
【０００４】
この発明は上記の目的を達成するため、セキュリティ情報を記憶し、予め決められたコマンドによってのみアクセス可能な特殊領域を備えた不揮発性記憶手段を備え、上記不揮発性記憶手段の上記特殊領域に予め記憶された機器固有情報を参照して動作するものである。
【発明の効果】
【０００５】
この発明による情報処理装置によれば、搭載するメモリ数を少なくしてコスト削減を図ることができる。
【図面の簡単な説明】
【０００６】
【図１】この発明による情報処理装置の第１実施形態であるプリンタコントローラの機能構成を示すブロック図である。
【図２】図１に示すプログラム用フラッシュメモリのエリア内容を示す説明図である。
【図３】図１に示す制御部が図２に示すプログラム用フラッシュメモリのセキュリティエリアに書き込みを行う処理を示すフローチャート図である。
【図４】図１に示す制御部が図２に示すプログラム用フラッシュメモリのセキュリティエリアをロックする処理を示すフローチャート図である。
【図５】図１に示す制御部が図２に示すプログラム用フラッシュメモリのセキュリティエリアをリードする処理を示すフローチャート図である。
【図６】この発明による情報処理装置の第２実施形態であるコントローラの機能構成を示すブロック図である。
【図７】この発明による情報処理装置の第３実施形態であるプリンタコントローラの機能構成を示すブロック図である。
【図８】図１又は図７に示すプリンタコントローラに搭載しているヘッド駆動Ｉ／Ｆの補正値の一例を示す図である。
【図９】図１又は図７に示すプログラム用フラッシュメモリのデバイス特性値の一覧を示す説明図である。
【図１０】図１又は図７に示すプログラム用フラッシュメモリの動作のタイミングチャート図である。
【図１１】図１、図６、図７にそれぞれ示す制御部がプログラム用フラッシュメモリにアクセスするタイミングチャート図である。
【図１２】図１１に示すアクセスタイミングの各期間の詳細の説明図である。
【図１３】図１、図６、図７にそれぞれ示す制御部におけるプログラム用フラッシュメモリのアクセスに関する設定レジスタの詳細を示す説明図である。
【図１４】図１に示したプリンタコントローラの修理方法を説明するためのブロック図である。
【図１５】図２に示したプログラム用フラッシュメモリのセキュリティエリアのマッピングについて説明するための図である。
【図１６】図１に示した制御部１が図１５に示したセキュリティエリアをリードする処理を示すフローチャート図である。
【図１７】この発明による情報処理装置の第９実施形態であるプリンタコントローラの機能構成を示すブロック図である。
【発明を実施するための形態】
【０００７】
以下、この発明を実施するための形態を図面に基づいて具体的に説明する。
図１は、この発明による情報処理装置の第１実施形態であるプリンタコントローラの機能構成を示すブロック図である。
このプリンタコントローラは、ファクシミリ装置、プリンタ、複写機、及び複合機を含む画像形成装置に設けられ、その画像形成装置におけるプリントを制御する情報処理装置である。
【０００８】
このプリンタコントローラは、制御部１、プログラム用フラッシュメモリ２、発振器（ＸＴＬ）３と８、ＳＳＣＧ（Spread Spectrum Clock Generator）４、ＣＰＵ５、クロックドライバ（ＣＬＫドライバ）６、ＤＤＲＳＤＲＡＭ（Double-Data-Rate Synchronous Dynamic Random Access Memory）７、パーソナルコンピュータインタフェース（ＰＣ＿Ｉ／Ｆ）９、ローカルエリアネットワークコントローラ（ＬＡＮ＿Ｃｔｌ）１０を備えている。
【０００９】
また、このプリンタコントローラは、フォント用マスクＲＯＭ１１、インクカートリッジＥＥＰＲＯＭ（Electrically Erasable Programmable Read-Only Memory）インタフェース（Ｉ／Ｆ）１２、本体ＥＥＰＲＯＭ１３、操作パネルＩ／Ｆ１４、各センサＩ／Ｆ１５、各アクチュエータＩ／Ｆ１６、及びヘッド駆動Ｉ／Ｆ１７を備えている。
制御部１は、プリンタコントローラの全体の制御を司り、不揮発性記憶手段の恒久的にロック可能な特殊領域に情報を記憶する手段の機能を果たす。
【００１０】
プログラム用フラッシュメモリ２は、恒久的にロック可能な特殊領域を備えた不揮発性メモリ（不揮発性記憶手段）であり、プリンタコントローラで実行されるプログラムを記憶する。また、恒久的にロック可能な領域に、機器固有情報（「装置固有情報」ともいう）として、ＭＡＣアドレス、プリンタコントローラの制御基板（以下単に「プリンタコントローラ」，「制御基板」，「ＰＣＢ」，又は「プリント基板」ともいう）に搭載している回路の補正値、プリンタコントローラに搭載しているヘッド駆動Ｉ／Ｆ１７の補正値、プログラム用フラッシュメモリ２の特性値等を記憶する。
【００１１】
ＸＴＬ３と８は、基準クロックを発生する。
ＳＳＣＧ４は、ＸＴＬ３の発生する基準クロックの周波数に対して微小な範囲でゆっくりした周期で周波数変調をしてＥＭＩスペクトラムを積分的に平坦化し、必要なタイミング信号を生成する。
ＣＰＵ５は、ＳＳＣＧ４が生成するタイミング信号に基づいて印刷動作を制御する。
ＣＬＫドライバ６は、ＳＳＣＧ４が生成するタイミング信号に基づいてＤＤＲＳＤＲＡＭ７への読み書きを制御する。
【００１２】
ＤＤＲＳＤＲＡＭ７は、各種の情報を記憶する読み書き可能なメモリである。
ＰＣ＿Ｉ／Ｆ９は、図示を省略したＰＣと接続し、そのＰＣとのデータ通信を司る。
ＬＡＮ＿Ｃｔｌ１０は、図示を省略したＬＡＮ上のＰＣ、画像形成装置と接続し、そのＰＣ、画像形成装置とのデータ通信を司る。
フォント用マスクＲＯＭ１１は、印刷に使用される文字のデータを記憶した不揮発性メモリである。
【００１３】
インクカートリッジＥＥＰＲＯＭ＿Ｉ／Ｆ１２は、ＫＣＹＭの各インクカートリッジに設けられたＥＥＰＲＯＭの読み書きを行うためのインタフェースである。
本体ＥＥＰＲＯＭ１３は、ＫＣＹＭの各インクカートリッジに設けられたＥＥＰＲＯＭに記憶されている情報を取り込んで所定の処理が行われた後に記憶する不揮発性メモリである。
操作パネルＩ／Ｆ１４は、図示を省略した操作パネルから入力された操作情報と操作パネルに表示する表示情報を操作パネルとの間でやり取りする。
【００１４】
各センサＩ／Ｆ１５は、画像形成装置の各所に設けられたセンサの情報の入力を制御する。
各アクチュエータＩ／Ｆ１６は、図示を省略した記録ヘッドの各インクジェットヘッドにおける、圧電素子，気泡発生用ヒータを含むアクチュエータを選択的に駆動する制御を司る。
ヘッド駆動Ｉ／Ｆ１７は、記録ヘッドを用紙に対して主走査方向及び副走査方向に駆動する制御を司る。
【００１５】
図２は、図１に示したプログラム用フラッシュメモリ２のエリア内容を示す説明図である。
プログラム用フラッシュメモリ２は、通常エリア（通常領域）１８とセキュリティエリア（セキュリティ領域）１９とを備えている。
通常エリア１８は、数メガバイト（ＭＢ）〜数十メガバイト（ＭＢ）の容量（サイズ）であり、この容量は製品の仕様によって決定される。
【００１６】
すなわち、通常エリア１８は、フラッシュメモリの一般的な仕様が適用されるエリアである。
例えば、フラッシュメモリの４メガバイト品とは、通常エリアの容量が４メガバイトということになる。
この通常エリア１８にはプログラムを記憶する。
この通常エリア１８は不揮発性であり、ソフトウェア、ハードウェアによって書き込みと消去を禁止するプロテクト機能を備えている。
【００１７】
また、電気的な一括消去、プログラムができる。
そして、コマンドやデバイスの端子処理等でロックをかけることは可能であるが、ソフト暴走、電源のオン時又はオフ時の電圧の乱れ等の原因で書き替わりの可能性はゼロではない。
すなわち、恒久的にロック可能な領域ではないため、情報の書き替えの条件が発生すると書き替えられる可能性がある領域である。
【００１８】
一方、セキュリティエリア１９は、通常エリア１８とは異なる特殊領域である。
このセキュリティエリア１９にアクセスする際には予め決められたコマンド（特殊コマンド）が必要であり、恒久的なロックをかけることができる。
すなわち、このセキュリティエリア１９は、恒久的にロック可能な領域であり、通常は書き替えが発生しない。
【００１９】
そして、本来はデバイスのシリアル番号、課金情報等のセキュリティ情報の記憶を目的としたエリアである。
このセキュリティ情報は、装置の出荷後に出荷元を特定するのに使用されたり、利用許可を得ずして使用できないようにするために使用される。
例えば、利用制限をする場合、コントローラ処理の際に読み出したセキュリティ情報が想定外の値の場合には動作しないように停止させる制御を行うようにすることができる。
【００２０】
ただし、デバイスのシリアル番号の格納として使用するのではなく、一般ユーザも使用可能であり、任意のデータの書き込みを行い、恒久的なロックをかけることが可能な領域でもある。
容量は一般的に小さい。例えば、２５６バイトの容量（サイズ）である。
そのため、シリアル番号用のエリアというイメージが強く、ユーザが活用可能なことはあまり知られていない。
セキュリティエリア１９は、ソフト的にプログラムが可能なのでＰＣＢのアセンブリ後、製品ファームを書き込むタイミングで任意の値を書き込むことができる。
しかも、恒久的なロックが可能である。
【００２１】
通常、マスクＲＯＭのような恒久的に保持するデバイスはソフトで任意に情報を書き込むことができない。
また、通常エリア１８とは異なるエリアとして独立して存在しているため、通常エリア１８が仮にファームのバージョンアップをした際にプログラムの容量が変わったとしても影響を受けないというメリットもある。
したがって、コントローラの組立時に任意の数値を書き込みたい場合や、独立して恒久的な保護が要求されるような情報の記憶に最適なエリアである。
【００２２】
そこで、プログラム用フラッシュメモリ２の今まで使用していなかったセキュリティエリア１９に機器固有情報を予め記憶し、その機器固有情報を参照して動作することにより、従来使用していたＥＥＰＲＯＭを削減することができる。
この機器固有情報とは、上述したセキュリティ情報が重要な情報であるのに対して、プリンタコントローラと一対一の情報であり、この情報が無くても動作は可能であるが、プリンタコントローラを最適な状態で動作させるために必要な情報である。
【００２３】
例えば、後述するＭＡＣアドレス、プリンタコントローラの制御基板に搭載している回路の特性値、ヘッド駆動Ｉ／Ｆ１７の補正値などである。
まず、プログラム用フラッシュメモリ２のセキュリティエリア１９に機器固有情報の１つであるプログラムを書き込む処理を説明する。
このプログラムは、情報処理装置で実行されるプログラムである。
【００２４】
図３は、図１に示した制御部１が図２に示したプログラム用フラッシュメモリ２のセキュリティエリア１９に書き込みを行う処理を示すフローチャート図である。
図１の制御部１は、図２のセキュリティエリア１９にデータの書き込みを行う（プログラムする）場合、セキュリティエリア１９に対してアクセス状態にする必要があり、図３のステップ（図中「Ｓ」で示す）１で、セキュリティエリア開始コマンドを発行し、ステップ２へ進む。
ステップ２では、プログラムコマンドシーケンスのライトを行い、ステップ３へ進む。
このプログラムコマンドシーケンスのライトの処理は、図２の通常エリア１８へのプログラムの書き込みと同じである。
【００２５】
ステップ３では、システムからのベリファイデータのポーリングを行い、ステップ４へ進む。
ステップ４では、ベリファイデータＯＫか否かを判断し、ＯＫと判断したら（Ｙの場合）、ステップ５へ進む。
上記ステップ３と４の処理は、自動プログラムアルゴリズムで実行することができる。
一方、ステップ４でベリファイデータＯＫではないと判断したら（Ｎの場合）、ステップ３へ戻る。
【００２６】
ステップ５では、ラストアドレスか否かを判断し、ラストアドレスと判断したら（Ｙの場合）、ステップ６に進む。
また、ステップ５でラストアドレスではないと判断したら（Ｎの場合）、ステップ８に進み、次アドレスに移行し、ステップ２へ戻って次のプログラムの書き込みに進む。
ステップ６では、書き込み完了で、書き込む全てのアドレスに書き込みが完了したら、ステップ７で最後にセキュリティエリア終了コマンドを発行して通常状態に戻り、この処理を終了する。
【００２７】
このようにして、プログラム用フラッシュメモリ２のセキュリティエリア１９に機器固有情報を書き込むことができる。
また、このようにして、ＥＥＰＲＯＭで記憶していた情報をフラッシュメモリのセキュリティエリアに予め記憶しておき、その機器固有情報を後述のように読み出し、参照して動作することにより、ＥＥＰＲＯＭの削減によるコントローラ製造のコストダウンを図ることができる。
【００２８】
図４は、図１に示した制御部１が図２に示したプログラム用フラッシュメモリ２のセキュリティエリア１９をロックする処理を示すフローチャート図である。
図１の制御部１は、図２のセキュリティエリア１９をロックする場合、セキュリティエリア１９に対してアクセス状態にする必要があり、図４のステップ（図中「Ｓ」で示す）１１で、セキュリティエリア開始コマンドを発行し、ステップ１２へ進む。
ステップ１２では、ロックコマンドを発行し、ステップ１３へ進む。
このロックコマンドの発行からの処理は、図２の通常エリア１８へのロックの場合と同じである。
【００２９】
ステップ１３では、ロック完了確認のポーリングを行い、ステップ１４へ進む。
ステップ１４では、ロック完了か否かを判断し、ロック完了と判断したら（Ｙの場合）、ステップ１５へ進む。
一方、ステップ１４でロック完了ではないと判断したら（Ｎの場合）、ステップ１３へ戻ってロック完了確認のポーリングを再実行する。
【００３０】
ステップ１５では、ロック完了で、ステップ１６へ進む。
ステップ１６では、最後にセキュリティエリア終了コマンドを発行して通常状態に戻り、この処理を終了する。
上述した機器固有情報の書き込みとロックの処理は、ＰＣＢの製造工程もしくはそれを備えた製品である画像形成装置の製造工程で行うと良い。
【００３１】
図５は、図１に示した制御部１が図２に示したプログラム用フラッシュメモリ２のセキュリティエリア１９をリードする処理を示すフローチャート図である。
図１の制御部１は、図２のセキュリティエリア１９のデータリードをする場合、セキュリティエリア１９に対してアクセス状態にする必要があり、図５のステップ（図中「Ｓ」で示す）２１で、セキュリティエリア開始コマンドを発行し、ステップ２２へ進む。
ステップ２２では、リードコマンドを発行し、ステップ２３へ進む。
【００３２】
ステップ２３では、ラストアドレスか否かを判断し、ラストアドレスと判断したら（Ｙの場合）、ステップ２４に進む。
また、ステップ２３でラストアドレスではないと判断したら（Ｎの場合）、ステップ２６に進み、次アドレスに移行し、ステップ２２へ戻って次のデータリードに進む。
ステップ２４では、データリード完了で、読み出す全てのデータの読み出しが完了したら、ステップ２５で最後にセキュリティエリア終了コマンドを発行して通常状態に戻り、この処理を終了する。
【００３３】
次に、第２実施形態を説明する。
図６は、この発明による情報処理装置の第２実施形態であるコントローラの機能構成を示すブロック図である。
図６のコントローラにおいて、ＸＴＬ２３と２８、ＳＳＣＧ２４、ＣＰＵ２５、ＣＬＫドライバ２６、ＤＤＲＳＤＲＡＭ２７、ＰＣ＿Ｉ／Ｆ２９、及びＬＡＮ＿Ｃｔｌ３０は、それぞれ図１に示したＸＴＬ３と８、ＳＳＣＧ４、ＣＰＵ５、ＣＬＫドライバ６、ＤＤＲＳＤＲＡＭ７、ＰＣ＿Ｉ／Ｆ９、及びＬＡＮ＿Ｃｔｌ１０と同じ機能を果たすので、それらの説明を省略する。
ホストＩ／Ｆ３１は、ホスト装置とのデータのやり取りのインタフェースである。
【００３４】
このコントローラは、ファクシミリ装置、プリンタ、複写機、及び複合機を含む画像形成装置に設けられ、その画像形成装置におけるネットワーク通信を制御する情報処理装置である。
上記機器固有情報の他の例として、ネットワーク通信に使用するＭＡＣアドレスがある。
従来のコントローラでは、ネットワーク通信に使用するＭＡＣアドレスを固有情報として記憶するためのＥＥＰＲＯＭを設けている。
ＭＡＣアドレスはアップデートする必要がなく、なるべく書き替わりが起こらないようなメモリで保持する必要がある。
【００３５】
そこで、図６に示したコントローラでは、プログラム用フラッシュメモリ２１のセキュリティエリア（図２のセキュリティエリア１９）にＭＡＣアドレス２２を記憶する。
このように、ＭＡＣアドレスを格納するために専用に設けるＥＥＰＲＯＭを削減することが可能になる。
プログラム用フラッシュメモリ２１のセキュリティエリア１９へのＭＡＣアドレスの書き込み、その書き込み後のロック、およびセキュリティエリア１９に書き込まれたＭＡＣアドレス２２のリードの処理は、制御部２０が、図３〜図５にそれぞれ示した処理と同様にして実行する。
【００３６】
次に、第３実施形態を説明する。
図７は、この発明による情報処理装置の第３実施形態であるプリンタコントローラの機能構成を示すブロック図である。
図７に示すプリンタコントローラにおいて、図１と共通する部分には同一符号を付し、それらの説明を省略する。
上記機器固有情報の他の例として、プリンタコントローラの制御基板に搭載している回路の特性値がある。
その制御基板に搭載しているアナログＩＣを含む回路はその特性値にバラツキがあり、その精度を上げることはコストアップにつながる。
【００３７】
そこで、回路の特性値を測定し、それらの特性値に基づき、回路にアクセスするための動作の補正に用いる補正値を定め、その補正値によって補正を行うことにより、回路の特性に合ったアクセス処理を可能とする方式をとる場合がある。
このような方式を採らず一律の動作で回路にアクセスするとすると、応答性等の観点で回路の定格範囲で最も性能の悪い個体に合わせてアクセスシーケンスを設計する必要が生じ、パフォーマンスの低下につながる。しかし、このように回路の個体の特性に応じた補正を可能とすることにより、個体の特性に応じて最適なパフォーマンスを実現することができる。この点は、後述の第５実施形態についても同様である。
【００３８】
ここで、上記補正値は制御基板に実装されたＩＣと一対一の情報となる。
そして、従来のプリンタコントローラでは、上記補正値を固有情報として記憶するためのＥＥＰＲＯＭを設けている。
上記補正値はアップデートする必要がなく、なるべく書き替わりが起こらないようなメモリで保持する必要がある。
【００３９】
そこで、図７に示したプリンタコントローラでは、プログラム用フラッシュメモリ２′のセキュリティエリア（図２のセキュリティエリア１９）に回路の補正値３２を記憶する。
このように、回路の補正値を格納するために専用に設けるＥＥＰＲＯＭを削減することが可能になる。
プログラム用フラッシュメモリ２′のセキュリティエリア１９への回路の補正値の書き込み、その書き込み後のロック、およびセキュリティエリア１９に書き込まれた回路の補正値のリードの処理は、制御部１′が、図３〜図５にそれぞれ示した処理と同様にして実行する。
【００４０】
次に、第４実施形態を説明する。
上記回路の特性値として、ヘッド駆動Ｉ／Ｆの特性値を用いた場合を説明する。
図１又は図７に示したプリンタコントローラを搭載した画像形成装置では、インクを吐出するのにアナログ駆動波形を用いる。
例えば、その駆動波形を生成するＤＡコンバータのバラツキ（このバラツキの特性として出力のオフセット電圧がある。）を抑えることで印刷時の画質の向上につながる。
まず、プリンタコントローラの制御基板（ＰＣＢ）が実装された時点で検査を行い、制御基板上の各回路を補正値毎にランク分けする。
【００４１】
図８は、図１又は図７に示したプリンタコントローラに搭載しているヘッド駆動Ｉ／Ｆ１７の補正値の一例を示す図である。
図８には、１〜５のランク毎にヘッド駆動Ｉ／Ｆ１７の出力電圧の補正値の一例を示している。
図１のプログラム用フラッシュメモリ２又は図７のプログラム用フラッシュメモリ２′のセキュリティエリア（図２のセキュリティエリア１９）に、図８に示した補正値の一覧を記録したテーブルデータを記憶する。
【００４２】
プログラム用フラッシュメモリ２又は２′のセキュリティエリア１９への補正値の書き込み、その書き込み後のロック、およびセキュリティエリア１９に書き込まれた補正値のリードの処理は、制御部１又は１′が、図３〜図５にそれぞれ示した処理と同様にして実行する。
【００４３】
上記補正値は、ヘッド駆動Ｉ／Ｆ１７の部品がプリント基板（ＰＣＢ）に実装されて初めて決定されるものであり、その決定後はすぐにプログラム用フラッシュメモリ２又は２′のセキュリティエリア１９へ書き込むようにすると良い。この書き込み後は、補正値を書き替わらないようにすると良い。
図８において、例えば、ランク１の回路の場合、制御部１又は１′は、その回路の出力電圧に−４Ｖの補正を行う。
【００４４】
こうして、プリンタコントローラの制御基板上の各回路についてそれぞれ出力電圧の補正を行うことにより、各回路の特性にバラツキのない印刷を実行することができ、高画質の印刷を実現できる。
このように、図８に示した補正値の一覧をプログラム用フラッシュメモリ２又は２′に記憶することにより、専用のＥＥＰＲＯＭの廃止が可能になる。
【００４５】
次に、第５実施形態を説明する。
図９は、図１に示したプログラム用フラッシュメモリ２又は図７に示したプログラム用フラッシュメモリ２′のデバイス特性値の一覧を示す説明図である。
この実施形態では、図１に示したプログラム用フラッシュメモリ２又は図７に示したプログラム用フラッシュメモリ２′の図２に示したセキュリティエリア１９をデバイス特性記憶領域として利用する。
【００４６】
そして、図９に示した図１に示したプログラム用フラッシュメモリ２又は図７に示したプログラム用フラッシュメモリ２′の特性値を記憶し、図１の制御部１又は図７の制御部１′は、デバイス特性記憶領域に記憶した特性値に基づいてプログラム用フラッシュメモリ２又は２′の読み書きを行う。
このようにすれば、プログラム用フラッシュメモリ２又は２′毎にそれぞれの特性値にあわせたアクセスを行うことでデータの読み書きについて最適なパフォーマンスが実現できる。
【００４７】
図９の各特性値の内容については次の通りである。
１．アドレス０に格納した「ｔＲＣ」はリードサイクルタイムである。
２．アドレス１に格納した「ｔＡＣＣ」はアドレスアクセスタイムである。
３．アドレス２に格納した「ｔＣＥ」はチップイネーブルからデータ出力までのタイムである。
４．アドレス３に格納した「ｔＰＡＣＣ」はページアクセスタイムである。
５．アドレス４に格納した「ｔＯＥ」はアウトプットイネーブルからデータ出力までのタイムである。
６．アドレス５に格納した「ｔＤＦ」はチップイネーブルから出力フローティングまでのタイムである。
７．アドレス６に格納した「ｔＯＨ」は前サイクルデータの出力保持タイムである。
８．アドレス７に格納した「ｔＯＥＨ」は出力イネーブルホールドタイムである。
【００４８】
図１０は、図１に示したプログラム用フラッシュメモリ２又は図７に示したプログラム用フラッシュメモリ２′の動作のタイミングチャート図である。
図１０に示したタイミングチャート図には、それぞれのＡＣ特性値が記載してある。
例えば、ｔＡＣＣは図１に示したプログラム用フラッシュメモリ２又は図７に示したプログラム用フラッシュメモリ２′へのアクセスが開始されてデータが出力されるまでの特性値である。
この特性値の数値が小さいほど応答性がよく、アクセススピード向上につなげることができる。
【００４９】
この特性値には個別のバラツキが存在する。例えば、１２０ｎｓかかるものもあれば７０ｎｓのものもある。
そこで、図９に示した図１に示したプログラム用フラッシュメモリ２又は図７に示したプログラム用フラッシュメモリ２′の特性値を測定する。
また、プログラム用フラッシュメモリ２又はプログラム用フラッシュメモリ２′のセキュリティエリア１９をデバイス特性記憶領域に割り当てる。
そして、上記デバイス特性記憶領域に図９に示した各特性値を記憶する。
【００５０】
上記デバイス特性記憶領域への特性値の書き込み、その書き込み後のロック、およびセキュリティエリア１９に書き込まれた特性値のリードの処理は、制御部１又は１′が、図３〜図５にそれぞれ示した処理と同様にして実行する。
また、制御部１又は１′は、それぞれのプログラム用フラッシュメモリ２又はプログラム用フラッシュメモリ２′に対する読み書きの際、デバイス特性記憶領域に記録されている特性値に基づいて制御を実行する。
【００５１】
このようにして、プログラム用フラッシュメモリの個別の特性値をプログラム用フラッシュメモリのロック可能な領域であるセキュリティエリア（デバイス特性記憶領域）に記憶することにより、専用の不揮発性メモリを搭載する必要がなくなる。
したがって、メモリ数を削減して装置製造のコストを低減することができる。
また、プログラム用フラッシュメモリに読み書きする際、個別の特性値に応じた動作を行えるので、データ読み書きについて最適なパフォーマンスが実現できる。
【００５２】
次に、第６実施形態を説明する。
図１１は、図１に示した制御部１、図６に示した制御部２０、又は図７に示した制御部１′がプログラム用フラッシュメモリにアクセスするタイミングチャート図である。
図１２は、図１１に示したアクセスタイミングの各期間の詳細の説明図である。
図１３は、図１に示した制御部１、図６に示した制御部２０、又は図７に示した制御部１′におけるプログラム用フラッシュメモリのアクセスに関する設定レジスタの詳細を示す説明図である。
【００５３】
図１に示した制御部１、図６に示した制御部２０、又は図７に示した制御部１′は、それぞれ図１１に示したタイミングでそれぞれのプログラム用フラッシュメモリ２、２１、２′にアクセスする。
図１１中のｔＡ２Ｃ、ｔＣ２Ｏ、ｔＷＯＥ、ｔＲＥＬの各期間は、図１２に示すように設計されている。
上記ｔＷＯＥは、制御部１、２０、１′内の図示を省略した設定レジスタで設定をすることにより、自由に期間を変えられる部分である。
【００５４】
そこで、プログラム用フラッシュメモリ２、２１、２′が応答速度の速いデバイスの場合、上記ｔＷＯＥの期間を短く設定する。
また、プログラム用フラッシュメモリ２、２１、２′が応答速度の遅いデバイスの場合、上記ｔＷＯＥの期間を長く設定する。
このように設定することにより、制御部１、２０、１′が、それぞれのプログラム用フラッシュメモリ２、２１、２′を読み書きする際、メモリ毎の特性値のバラツキに応じた最適な読み書き動作を行うことができ、処理効率を向上させることができる。
【００５５】
次に、制御部１、２０、１′によるｔＷＯＥの設定処理について説明する。
制御部１、２０、１′は、それぞれ図１３に示した設定レジスタのビット（Ｂｉｔ）０７〜０４に数値を設定することによってｔＷＯＥの期間を設定する。
例えば、ｔＷＯＥを７０ｎｓに設定する時は、設定レジスタのビット０７〜０４にそれぞれ“０”“１”“１”“０”の各ビットを設定する。
そうすると、図１２に示したように、ｔＷＯＥの期間はＲＣＳＦＴＩＭ設定値（設定値：６）＋１クロックとなり、合計７クロックで７０ｎｓとなる。
これは、１００ＭＨｚの時、１クロック１０ｎｓとなるためである。
【００５６】
このようにして、プログラム用フラッシュメモリ２、２１、２′のセキュリティエリアに記憶されているデバイスの固有の特性値でレジスタを設定し、個別のバラツキに対して最適な動作を行うことができる。
すなわち、プログラム用フラッシュメモリ２、２１、２′のセキュリティエリアでそれぞれプログラム用フラッシュメモリ２、２１、２′の特性値を記憶して、その特性値に応じて読み書き動作を行えるので、データの読み書き速度のパフォーマンスの最適化を図ることができる。
【００５７】
この実施形態のプリンタコントローラ及びコントローラは、今まで使用していなかったフラッシュメモリのセキュリティエリアに機器固有情報を格納する。
したがって、従来使用していたＥＥＰＲＯＭを削減することができるのでメモリの集約化ができる。
このようにして、搭載するメモリ数を少なくして、プリンタコントローラ及びコントローラの製造コストの削減を図ることができる。
また、最悪の固体の特性値に合わせた固定の動作タイミングで動作することなく、デバイスそれぞれの特性値に合わせた動作タイミングで動作することができるので、メモリの個別の特性値に合わせた動作で最適なパフォーマンスが実現できる。
【００５８】
次に、第７実施形態を説明する。
図１４は、図１に示したプリンタコントローラの修理方法を説明するためのブロック図である。
この実施形態では、そのプリンタコントローラを修理する際の検査対象部品をそのプリンタコントローラに搭載されているヘッド駆動Ｉ／Ｆ１７とするが、そのプリンタコントローラに搭載されている他の部品（ＩＣ等）や、図７に示したプリンタコントローラ又は図６に示したコントローラに搭載されている各部品を検査対象部品とすることも勿論できる。
【００５９】
図１に示したプリンタコントローラにおいて、ヘッド駆動Ｉ／Ｆ１７の個別の特性値を制御基板上に設けたプログラム用フラッシュメモリ２の特殊領域に記憶させる場合には、プリンタコントローラをリサイクルする際等、その修理が必要な場合でも、その情報とマッチさせた状態にする必要がある。具体的には、ヘッド駆動Ｉ／Ｆ１７を交換する場合でも、交換後のヘッド駆動Ｉ／Ｆ１７の特性が、プログラム用フラッシュメモリ２の特殊領域に記憶させた特性値とマッチするようにする必要がある。
そこで、その方法について説明する。
【００６０】
まず、オペレータが、所定の情報取得機器をリサイクル対象の図１に示したプリンタコントローラに接続する。
そして、情報取得機器からの指示入力により、プリンタコントローラの制御部１は、図５に示した処理と同様にしてプログラム用フラッシュメモリ２のセキュリティエリア１９をリードする処理を行い、そのセキュリティエリア１９内の機器固有情報を情報取得機器へ送信してその表示部に表示させる。それによって、プリンタコントローラに現在搭載されているヘッド駆動Ｉ／Ｆ１７の補正値（例えば図８）を確認することができる。
【００６１】
一方、ヘッド駆動Ｉ／Ｆ１７を交換するため、交換用の新たに実装するヘッド駆動Ｉ／Ｆを図１４の検査対象回路５１とし、その入力側に回路検査装置５２を、出力側に計測器５３をそれぞれ接続して、検査対象回路５１としてのヘッド駆動Ｉ／Ｆの特性を示す情報（特性値）の計測（測定）を行わせる。
この場合、回路検査装置５２からヘッド駆動Ｉ／Ｆに対して必要な指示を与え、そのヘッド駆動Ｉ／Ｆから出力される特性値を計測器５３に計測させてその表示部に表示させることにより、そのヘッド駆動Ｉ／Ｆの特性値を確認する。
【００６２】
オペレータは、以上の作業を繰り返すことにより、元々プリンタコントローラの制御基板に書き込まれていた特性値にあった特性を持つヘッド駆動Ｉ／Ｆを特定できる。そして、そのヘッド駆動Ｉ／Ｆをプリンタコントローラの制御基板にヘッド駆動Ｉ／Ｆ１７の交換部品として実装する。それによって、プリンタコントローラの制御基板に書き込まれていた特性値と実装したヘッド駆動Ｉ／Ｆの特性値とをマッチさせることができる。
【００６３】
次に、第８実施形態を説明する。
図１５は、図２に示したプログラム用フラッシュメモリ２のセキュリティエリア１９のマッピングについて説明するための図である。
図１６は、図１に示した制御部１が図１５に示したセキュリティエリア１９をリードする処理を示すフローチャート図である。なお、図７に示した制御部１′や図６に示した制御部２０も同様の処理を行うことができることは勿論である。
【００６４】
図１に示したコントローラをリサイクルする際に、その修理が発生した場合の対処方法として、セキュリティエリア（特殊領域）１９を予めリサイクルを想定したマッピングにしておくことも考えられる。
図１５は、５回のリサイクルを想定してセキュリティエリア１９を６つのエリアに分割してマッピングを行う例を示している。この例では、６つのエリアを１回目エリア，２回目エリア，３回目エリア，４回目エリア，５回目エリア，６回目エリアとしている。なお、６つ以外の複数のエリア（領域）に分割してマッピングを行うこともできる。
【００６５】
まず、オペレータが、図１に示したプリンタコントローラをリサイクルする際に、その修理が発生して部品を交換する場合、任意の部品をプリンタコントローラに実装する。
次に、所定の情報取得機器をリサイクル対象のプリンタコントローラに接続する。
そして、情報取得機器からの指示入力により、プリンタコントローラの制御部１は、そのプリンタコントローラに実装された部品の特性値を計測してセキュリティエリア１９の分割された６つのエリアのうち空いているエリアに書き込む。このとき、まだ特性値（機器固有情報）が書き込まれていないエリアの中で、後述する順序に従って（番号の逆順で）各エリアを参照した場合に最後に参照されるエリアに、交換後の部品の特性を示す特性値を書き込む。部品の特性値は第７実施形態で図１４を用いて説明した方式で取得してもよい。
【００６６】
上述したようにマッピングした際のセキュリティエリア１９を図１の制御部１がリードする処理は、以下に示すようになる。この処理は、プリンタコントローラが画像形成装置に搭載され製品の一部となった状態の処理である。
図１の制御部１は、図１５に示したセキュリティエリア１９のデータリードをする場合、セキュリティエリア１９に対してアクセス状態にする必要があり、図１６のステップ（図中「Ｓ」で示す）３１で、セキュリティエリア開始コマンドを発行し、ステップ３２へ進む。
【００６７】
ステップ３２では、セキュリティエリア１９の分割エリア数を（この例では「６」）をエリア番号Ｎとしてワークエリアに記憶し、ステップ３３へ進む。
そして、ステップ３３以降で、エリア番号Ｎ（＝６）に対応する図１５の６回目エリアから順番に、特性値の書き込まれているアドレスを読み込んでいき、データが“０”でない最初のエリアの内容を特性値として扱い、製品動作を行うものとする。
【００６８】
すなわち、ステップ３３では、リードコマンドの発行により、エリア番号Ｎ（＝６）に対応する６回目エリアの特性値の書き込まれているアドレスからデータを読み出す（参照する）処理を行う。
ステップ３４では、そのデータが“０”か否かを判断し、“０”でないと判断したら（Ｎの場合）、ステップ３５に進む。
また、ステップ３４でデータが“０”と判断したら（Ｙの場合）、ステップ３７に進み、エリア番号Ｎをデクリメント（−１）し、ステップ３３へ戻って次のエリア番号Ｎ（＝５）に対応する５回目エリアからのデータを読み出す処理に進む。
【００６９】
ステップ３５では、データリード完了で、読み出す全てのデータの読み出しが完了したら、ステップ３６で最後にセキュリティエリア終了コマンドを発行して通常状態に戻り、この処理を終了する。
ここで、まだ特性値が書き込まれていないエリアの中で最後に参照されるエリアに交換後の部品の特性値を書き込みつつ、各エリアを所定の順序で参照して最初の“０”でないエリアのデータを採用するのは、最後に書き込まれた特性値を検出する手法の一例である。他の手法を用いることも勿論できる。
【００７０】
なお、図１６の処理において、各エリアが複数のアドレスからなる場合、図５のステップ２２，２３，２６のように、各アドレスと対応するリードコマンドを発行する。ただし、この場合でも、各エリアのデータが“０”か否かを判断するのは、初めのいくつかのアドレスのデータに基づいて行い、“０”でない場合のみ、残りのアドレスのデータを読み出すことも考えられる。
【００７１】
次に、第９実施形態を説明する。
図１７は、この発明による情報処理装置の第８実施形態であるプリンタコントローラの機能構成を示すブロック図であり、図１とは省電力モード（以下「省エネモード」ともいう）時の制御を行う点が追加されていることだけが異なる。
【００７２】
このプリンタコントローラにおいて、破線で囲んで示すプログラム用フラッシュメモリ２を含むエリアが省エネモード時に給電されなくなる省エネ非活電エリアとなる。
よって、省エネ非活電エリア内のプログラム用フラッシュメモリ２は省エネモードにおいて給電されない第１の記憶手段に相当する。省エネ非活電エリア外の本体ＥＥＰＲＯＭ１３等のメモリは、省エネモードにおいて給電される第２の記憶手段に相当する。
【００７３】
このような省エネモードの機能を有するプリンタコントローラでは、補正値等の機器固有情報をプログラム用フラッシュメモリ２のセキュリティエリア１９に保持する場合の弊害として、プログラム用フラッシュメモリ２が省エネモード時に給電されなくなり、アクセスできないという問題がある。
パフォーマンスを向上させるために省エネモード中に印刷起動がかけられた場合、省エネ非活電エリアに給電される前に機器固有情報にアクセスを行うため、それができないと性能が落ちることになる。
【００７４】
こうした問題の解消として、このプリンタコントローラでは以下に示す省エネモード対応制御を行う。
すなわち、電源オン時に、制御部１が、プログラム用フラッシュメモリ２のセキュリティエリア１９に予め記憶された機器固有情報を本体ＥＥＰＲＯＭ１３にコピーする。そして、上記予め記憶された機器固有情報に代えて、本体ＥＥＰＲＯＭ１３が記憶している機器固有情報を参照して動作する。
それによって、上記問題が回避可能となる。
【００７５】
なお、機器固有情報のコピー先は、本体ＥＥＰＲＯＭ１３に限らず、省エネ非活電エリア外の他の記憶手段、例えばＤＤＲＳＤＲＡＭ７等でもよい。また、制御部１が上記省エネモード対応制御を行うタイミングは、電源オン時に限らず、省エネモードに移行する前の任意のタイミングで行うとよい。また、図７に示したプリンタコントローラや図６に示したコントローラ等でも省エネ非活電エリアを設けて、上述と同様の制御を行うことができる。
【００７６】
次に、第１０実施形態を説明する。この実施形態でも、図１７に示したプリンタコントローラの構成を前提とするが、図７に示したプリンタコントローラや図６に示したコントローラの構成でも勿論よい。
【００７７】
第１０実施形態のプリンタコントローラにおいて、一般的な部品を用いるとすると、ＤＤＲＳＤＲＡＭ７のアクセススピードは１２Ｇｂｐｓ（ギガビット毎秒）、プログラム用フラッシュメモリ２のアクセススピードは１６０Ｍｂｐｓ（メガビット毎秒）程度となる。
よって、ＤＤＲＳＤＲＡＭ７はプログラム用フラッシュメモリ２よりも高速にデータを読み出し可能な第２の記憶手段に相当する。
【００７８】
このプリンタコントローラにおいて、補正値等の機器固有情報をプログラム用フラッシュメモリ２のセキュリティエリア１９に保持する場合の弊害として、機器固有情報の読み出しの速度が低いという問題がある。プログラム用フラッシュメモリ２のアクセススピードは１６０Ｍｂｐｓ程度であり、更にセキュリティエリア１９の読み出しには専用のコマンドが必要となる。
そこで、回路全体をみると、ＤＤＲＳＤＲＡＭ７のようにアクセススピードが速いデバイスがあるため、それを活用することを考える。
【００７９】
すなわち、電源オン時又はその後適当なタイミングに、制御部１が、プログラム用フラッシュメモリ２のセキュリティエリア１９に予め記憶された機器固有情報をＤＤＲＳＤＲＡＭ７にコピーする。そして、上記予め記憶された機器固有情報に代えて、ＤＤＲＳＤＲＡＭ７が記憶している機器固有情報を参照して動作する。
それによって、コピー後は機器固有情報を高速に読み出し可能となり、上記問題が回避可能となる。
【００８０】
なお、機器固有情報のコピー先は、ＤＤＲＳＤＲＡＭ７に限らず、プログラム用フラッシュメモリ２よりアクセススピードが速いメモリであれば、どのメモリでもよい。また、図７に示したプリンタコントローラや図６に示したコントローラ等でも上述と同様の制御を行うことができる。
【００８１】
以上で実施形態の説明を終了するが、この発明において、各部の具体的な構成や処理の内容等は、実施形態で説明したものに限るものではない。
例えば、情報処理装置としては、プリンタコントローラ等の画像形成装置に搭載可能なコントローラに限られず、他の電子機器に搭載可能なコントローラや、パーソナルコンピュータ等のコンピュータであっても勿論よい。
【００８２】
また、この発明は上述した実施形態に限定されるものではなく、特許請求の範囲に記載された技術思想に含まれる技術的事項の全てが対象となることは言うまでもない。
また、以上説明してきた実施形態、動作例及び変形例の構成は、相互に矛盾しない限り任意に組み合わせて実施可能であることは勿論である。
【符号の説明】
【００８３】
１、１′、２０：制御部    ２、２′、２１：プログラム用フラッシュメモリ
３、８、２３、２８：ＸＴＬ    ４、２４：ＳＳＣＧ    ５、２５：ＣＰＵ
６、２６：ＣＬＫドライバ    ７、２７：ＤＤＲＳＤＲＡＭ
９、２９：ＰＣ＿Ｉ／Ｆ    １０、３０：ＬＡＮ＿Ｃｔｌ
１１：フォント用マスクＲＯＭ    １２：インクカートリッジＥＥＰＲＯＭ＿Ｉ／Ｆ
１３：本体ＥＥＰＲＯＭ    １４：操作パネルＩ／Ｆ    １５：各センサＩ／Ｆ
１６：各アクチュエータＩ／Ｆ    １７：ヘッド駆動Ｉ／Ｆ    １８：通常エリア
１９：セキュリティエリア    ２２：ＭＡＣアドレス    ３１：ホストＩ／Ｆ
３２：補正値    ５１：検査対象回路    ５２：回路検査装置    ５３：計測器
【先行技術文献】
【特許文献】
【００８４】
【特許文献１】特開２００８−１８６４７６号公報
【図１】
2014059713.tif 000003
【図２】
2014059713.tif 000004
【図３】
2014059713.tif 000005
【図４】
2014059713.tif 000006
【図５】
2014059713.tif 000007
【図６】
2014059713.tif 000008
【図７】
2014059713.tif 000009
【図８】
2014059713.tif 000010
【図９】
2014059713.tif 000011
【図１０】
2014059713.tif 000012
【図１１】
2014059713.tif 000013
【図１２】
2014059713.tif 000014
【図１３】
2014059713.tif 000015
【図１４】
2014059713.tif 000016
【図１５】
2014059713.tif 000017
【図１６】
2014059713.tif 000018
【図１７】
2014059713.tif 000019