情報処理装置
【課題】 搭載するメモリ数を少なくしてコスト削減を図る。
【解決手段】 プログラム用フラッシュメモリ2は、特殊コマンドによってのみアクセス可能な特殊領域であるセキュリティエリアを備えた不揮発性メモリである。制御部1は、上記セキュリティエリアに対して機器固有情報を記憶する。上記機器固有情報としては、装置上で実行されるプログラム、ネットワーク通信をするときに使用するMACアドレス、制御基板に搭載している回路の補正値、プリンタコントローラに搭載しているヘッド駆動I/Fの補正値がある。さらに、セキュリティエリアに記憶した特性値に基いてプログラム用フラッシュメモリに読み書きを行う制御を行う。
【解決手段】 プログラム用フラッシュメモリ2は、特殊コマンドによってのみアクセス可能な特殊領域であるセキュリティエリアを備えた不揮発性メモリである。制御部1は、上記セキュリティエリアに対して機器固有情報を記憶する。上記機器固有情報としては、装置上で実行されるプログラム、ネットワーク通信をするときに使用するMACアドレス、制御基板に搭載している回路の補正値、プリンタコントローラに搭載しているヘッド駆動I/Fの補正値がある。さらに、セキュリティエリアに記憶した特性値に基いてプログラム用フラッシュメモリに読み書きを行う制御を行う。
【発明の詳細な説明】
【技術分野】
【0001】
この発明は、ファクシミリ装置、プリンタ、複写機、複合機、パーソナルコンピュータ等を含む情報処理装置に関する。
【背景技術】
【0002】
ファクシミリ装置、プリンタ、複写機、複合機、パーソナルコンピュータ等を含む情報処理装置では、内蔵されている電子基板には様々な種類のメモリが搭載されている。
上記メモリは、揮発性メモリと不揮発性メモリに分類され、それぞれさらに用途毎のメモリが搭載されている。
不揮発性メモリでは、プログラムの格納にはフラッシュメモリが、装置固有のデータの格納にはEEPROMがそれぞれ多く用いられている。
従来、通信制御プログラムを記憶した不揮発性メモリを設けた情報処理装置(例えば、特許文献1参照)があった。
【発明の概要】
【発明が解決しようとする課題】
【0003】
しかしながら、従来の情報処理装置では、用途毎にメモリを搭載することになる。
したがって、多くのメモリが搭載されることとなり、情報処理装置の製造コストを上昇させるという問題があった。
この発明は上記の点に鑑みてなされたものであり、搭載するメモリ数を少なくしてコスト削減を図ることを目的とする。
【課題を解決するための手段】
【0004】
この発明は上記の目的を達成するため、セキュリティ情報を記憶し、予め決められたコマンドによってのみアクセス可能な特殊領域を備えた不揮発性記憶手段に対して、上記予め決められたコマンドによって上記不揮発性記憶手段の上記特殊領域にアクセスし、上記特殊領域の空き領域に機器固有情報を書き込む手段を備えた情報処理装置を提供する。
【発明の効果】
【0005】
この発明による情報処理装置は、搭載するメモリ数を少なくしてコスト削減を図ることができる。
【図面の簡単な説明】
【0006】
【図1】発明の一実施形態であるプリンタコントローラの機能構成を示すブロック図である。
【図2】図1に示すプログラム用フラッシュメモリのエリア内容を示す説明図である。
【図3】図1に示す制御部が図2に示すプログラム用フラッシュメモリのセキュリティエリアに書き込みを行う処理を示すフローチャート図である。
【図4】図1に示す制御部が図2に示すプログラム用フラッシュメモリのセキュリティエリアをロックする処理を示すフローチャート図である。
【図5】図1に示す制御部が図2に示したプログラム用フラッシュメモリのセキュリティエリアをリードする処理を示すフローチャート図である。
【図6】発明の他の実施形態であるコントローラの機能構成を示すブロック図である。
【図7】発明のまた他の実施形態であるプリンタコントローラの機能構成を示すブロック図である。
【0007】
【図8】図1又は図7に示すプリンタコントローラに搭載しているヘッド駆動I/Fの補正値の一例を示す図である。
【図9】図1又は図7に示すプログラム用フラッシュメモリのデバイス特性値の一覧を示す説明図である。
【図10】図1又は図7に示すプログラム用フラッシュメモリの動作のタイミングチャート図である。
【図11】図1、図6、図7にそれぞれ示す制御部がプログラム用フラッシュメモリにアクセスするタイミングチャート図である。
【図12】図11に示すアクセスタイミングの各期間の詳細の説明図である。
【図13】図1、図6、図7にそれぞれ示す制御部におけるプログラム用フラッシュメモリのアクセスに関する設定レジスタの詳細を示す説明図である。
【発明を実施するための形態】
【0008】
以下、この発明を実施するための形態を図面に基づいて具体的に説明する。
図1は、発明の一実施形態であるプリンタコントローラの機能構成を示すブロック図である。
このプリンタコントローラは、ファクシミリ装置、プリンタ、複写機、及び複合機を含む画像形成装置に設けられ、その画像形成装置におけるプリントを制御する情報処理装置である。
【0009】
このプリンタコントローラは、制御部1、プログラム用フラッシュメモリ2、発振器(XTL)3と8、エスエスシージー(Spread Spectrum Clock Generator:SSCG)4、CPU5、クロックドライバ(CLKドライバ)6、ディーディーアールエスディーラム(Double−Data−Rate Synchronous Dynamic Random Access Memory:DDR SDRAM)7、パーソナルコンピュータインタフェース(PC I/F)9、ローカルエリアネットワークコントローラ(LAN Ctl)10を備えている。
【0010】
また、このプリンタコントローラは、フォント用マスクROM11、インクカートリッジイーイーピーロムインタフェース((Electrically Erasable Programmable Read−Only Memory:EEPROM)I/F)12、本体EEPROM13、操作パネルI/F14、各センサI/F15、各アクチュエータI/F16、及びヘッド駆動I/F17を備えている。
【0011】
制御部1は、プリンタコントローラの全体の制御を司り、不揮発性記憶手段の恒久的にロック可能な領域に情報を記憶する手段の機能を果たす。
プログラム用フラッシュメモリ2は、恒久的にロック可能な領域を備えた不揮発性メモリであり、プリンタコントローラで実行されるプログラムを記憶する。また、恒久的にロック可能な領域に、機器固有情報(「装置固有情報」ともいう)、MACアドレス、プリンタコントローラに搭載している回路の補正値、プリンタコントローラに搭載しているヘッド駆動I/Fの補正値、プログラム用フラッシュメモリ2の特性値を記憶する。
【0012】
XTL3と8は、基準クロックを発生する。
SSCG4は、XTL3の発生する基準クロックの周波数に対して微小な範囲でゆっくりした周期で周波数変調をしてEMIスペクトラムを積分的に平坦化し、必要なタイミング信号を生成する。
CPU5は、SSCG4が生成するタイミング信号に基いて印刷動作を制御する。
CLKドライバ6は、SSCG4が生成するタイミング信号に基いてDDR SDRAM7への読み書きを制御する。
【0013】
DDR SDRAM7は、各種の情報を記憶する読み書き可能なメモリである。
PC I/F9は、図示を省略したPCと接続し、そのPCとのデータ通信を司る。
LAN Ctl10は、図示を省略したLAN上のPC、画像形成装置と接続し、そのPC、画像形成装置とのデータ通信を司る。
フォント用マスクROM11は、印刷に使用される文字のデータを記憶した不揮発性メモリである。
【0014】
インクカートリッジEEPROM I/F12は、KCYMの各インクカートリッジに設けられたEEPROMとの読み書きを行う。
本体EEPROM13は、KCYMの各インクカートリッジに設けられたEEPROMに記憶されている情報を取り込んで所定の処理が行われた後に記憶する不揮発性メモリである。
操作パネルI/F14は、図示を省略した操作パネルから入力された操作情報と操作パネルに表示する表示情報を操作パネルとの間でやり取りする。
【0015】
各センサI/F15は、画像形成装置の各所に設けられたセンサの情報の入力を制御する。
各アクチュエータI/F16は、図示を省略した記録ヘッドの各インクジェットヘッドにおける、圧電素子,気泡発生用ヒータを含むアクチュエータを選択的に駆動する制御を司る。
ヘッド駆動I/F17は、記録ヘッドを用紙に対して主走査方向及び副走査方向に駆動する制御を司る。
【0016】
図2は、図1に示したプログラム用フラッシュメモリ2のエリア内容を示す説明図である。
プログラム用フラッシュメモリ2は、通常エリア(通常領域)18とセキュリティエリア(セキュリティ領域)19とを備えている。
通常エリア18は、数メガバイト(MB)〜数十メガバイト(MB)の容量(サイズ)であり、この容量は製品の使用によって決定される。
【0017】
すなわち、通常エリア18は、フラッシュメモリの一般的な仕様が適用されるエリアである。
例えば、フラッシュメモリの4メガバイト品とは、通常エリアの容量が4メガバイトということになる。
この通常エリア18にはプログラムを記憶する。
この通常エリア18は不揮発性であり、ソフトウェア、ハードウェアによって書き込みと消去を禁止するプロテクト機能を備えている。
【0018】
また、電気的な一括消去、プログラムができる。
そして、コマンドやデバイスの端子処理等でロックをかけることは可能であるが、ソフト暴走、電源のオン時又はオフ時の電圧の乱れ等の原因で書き換わりの可能性はゼロではない。
すなわち、恒久的にロック可能な領域ではないため、情報の書き替えの条件が発生すると書替えられる可能性がある領域である。
【0019】
一方、セキュリティエリア19は、通常エリア18とは異なる特殊な領域である。
このセキュリティエリア19にアクセスする際には特殊なコマンドが必要であり、恒久的なロックをかけることができる。
すなわち、このセキュリティエリア19は、恒久的にロック可能な領域であり、通常は書き換えが発生しない。
【0020】
そして、本来はデバイスのシリアルNo、課金情報等のセキュリティ情報の記憶を目的としたエリアである。
このセキュリティ情報は、装置の出荷後に出荷元を特定するのに使用されたり、利用許可を得ずして使用できないようにするために使用される。
例えば、利用制限をする場合、コントローラ処理の際に読み出したセキュリティ情報が想定外の値の場合には動作しないように停止させる制御を行うようにすることができる。
【0021】
ただし、デバイスのシリアルNoの格納として使用するのではなく、一般ユーザも使用可能であり、任意のデータの書き込みを行い、恒久的なロックをかけることが可能な領域でもある。
容量は一般的に小さい。例えば、256バイトの容量(サイズ)である。
そのため、シリアルNo用のエリアというイメージが強く、ユーザが活用可能なことはあまり知られていない。
セキュリティエリア19は、ソフト的にプログラムが可能なのでPCBのアセンブリ後、製品ファームを書き込むタイミングで任意の値を書き込むことができる。
しかも、恒久的なロックが可能である。
【0022】
通常、マスクロム(MASK ROM)のような恒久的に保持するデバイスはソフトで任意に情報を書き込むことができない。
また、通常エリア18とは異なるエリアとして独立して存在しているため、通常エリア18が仮にファームのバージョンアップをした際にプログラムの容量が変わったとしても影響を受けないというメリットもある。
したがって、コントローラの組立時に任意の数値を書き込みたい場合や、独立して恒久的な保護が要求されるような情報の記憶に最適なエリアである。
【0023】
そこで、プログラム用フラッシュメモリ2の今まで使用していなかったセキュリティエリア19に機器固有情報を記憶することにより、従来使用していたEEPROMを削減することができる。
この機器固有情報とは、上述したセキュリティ情報が重要な情報であるのに対して、プリンタコントローラと一対一の情報であり、この情報が無くても動作は可能であるが、プリンタコントローラを最適な状態で動作させるために必要な情報である。
【0024】
例えば、後述するMACアドレス、画像形成装置の制御基板に搭載している回路の特性値、ヘッド駆動I/Fの補正値などである。
まず、プログラム用フラッシュメモリ2のセキュリティエリア19に機器固有情報の1つであるプログラムを書き込む処理を説明する。
このプログラムは、情報処理装置で実行されるプログラムである。
【0025】
図3は、図1に示した制御部1が図2に示したプログラム用フラッシュメモリのセキュリティエリア19に書き込みを行う処理を示すフローチャート図である。
図1の制御部1は、図2のセキュリティエリア19にプログラムを書き込む場合、セキュリティエリア19に対してアクセス状態にする必要があり、図3のステップ(図中「S」で示す)1で、セキュリティエリア開始コマンドを発行し、ステップ2へ進む。
ステップ2では、プログラムコマンドシーケンスのライトを行い、ステップ3へ進む。
このプログラムコマンドシーケンスのライトの処理は、図2の通常エリア18へのプログラムの書き込みと同じである。
【0026】
ステップ3では、システムからのベリファイデータのポーリングを行い、ステップ4へ進む。
ステップ4では、ベリファイデータOKか否かを判断し、OKと判断したら(Yの場合)、ステップ5へ進む。
上記ステップ3と4の処理は、自動プログラムアルゴリズムで実行することができる。
一方、ステップ4でベリファイデータOKではないと判断したら(Nの場合)、ステップ3へ戻る。
【0027】
ステップ5では、ラストアドレスか否かを判断し、ラストアドレスと判断したら(Yの場合)、ステップ6に進む。
また、ステップ5でラストアドレスではないと判断したら(Nの場合)、ステップ8に進み、次アドレスに移行し、ステップ2へ戻って次のプログラムの書き込みに進む。
ステップ6では、プログラム書き込み完了で、書き込む全てのアドレスに書き込みが完了したら、ステップ7で最後にセキュリティエリア終了コマンドを発行して通常状態に戻り、この処理を終了する。
【0028】
このように、プログラム用フラッシュメモリ2のセキュリティエリア19にその他の機器固有情報を書き込む場合も、上述と同様にして書き込むことができる。
このようにして、EEPROMで記憶していた情報をフラッシュメモリのセキュリティエリアで記憶することにより、EEPROMの削減によるコントローラ製造のコストダウンを図ることができる。
【0029】
図4は、図1に示した制御部1が図2に示したプログラム用フラッシュメモリのセキュリティエリア19をロックする処理を示すフローチャート図である。
図1の制御部1は、図2のセキュリティエリア19をロックする場合、セキュリティエリア19に対してアクセス状態にする必要があり、図4のステップ(図中「S」で示す)11で、セキュリティエリア開始コマンドを発行し、ステップ12へ進む。
ステップ12では、ロックコマンドを発行し、ステップ13へ進む。
このロックコマンドの発行からの処理は、図2の通常エリア18へのロックの場合と同じである。
【0030】
ステップ13では、ロック完了確認のポーリングを行い、ステップ14へ進む。
ステップ14では、ロック完了か否かを判断し、ロック完了と判断したら(Yの場合)、ステップ15へ進む。
一方、ステップ14でロック完了ではないと判断したら(Nの場合)、ステップ13へ戻ってロック完了確認のポーリングを再実行する。
【0031】
ステップ15では、ロック完了で、ステップ16へ進む。
ステップ16では、最後にセキュリティエリア終了コマンドを発行して通常状態に戻り、この処理を終了する。
上述した機器固有情報の書き込みとロックの処理は、PCBの製造工程もしくはコントローラの製造工程で行うと良い。
【0032】
図5は、図1に示した制御部1が図2に示したプログラム用フラッシュメモリのセキュリティエリア19をリードする処理を示すフローチャート図である。
図1の制御部1は、図2のセキュリティエリア19のデータリードをする場合、セキュリティエリア19に対してアクセス状態にする必要があり、図5のステップ(図中「S」で示す)21で、セキュリティエリア開始コマンドを発行し、ステップ22へ進む。
ステップ22では、リードコマンドを発行し、ステップ23へ進む。
【0033】
ステップ23では、ラストアドレスか否かを判断し、ラストアドレスと判断したら(Yの場合)、ステップ24に進む。
また、ステップ23でラストアドレスではないと判断したら(Nの場合)、ステップ26に進み、次アドレスに移行し、ステップ22へ戻って次のデータリードに進む。
ステップ24では、データリード完了で、読み出す全てのデータの読み出しが完了したら、ステップ25で最後にセキュリティエリア終了コマンドを発行して通常状態に戻り、この処理を終了する。
【0034】
次に、他の実施形態を説明する。
図6は、発明の他の実施形態であるコントローラの機能構成を示すブロック図である。
図6のコントローラにおいて、XTL23と28、SSCG24、CPU25、CLKドライバ26、DDR SDRAM27、PC I/F29、及びLAN Ctl30は、それぞれ図1に示したXTL3と8、SSCG4、CPU5、CLKドライバ6、DDR SDRAM7、PC I/F9、及びLAN Ctl10と同じ機能を果たすので、それらの説明を省略する。
ホストI/F31は、ホスト装置とのデータのやり取りのインタフェースを司る。
【0035】
このコントローラは、ファクシミリ装置、プリンタ、複写機、及び複合機を含む画像形成装置に設けられ、その画像形成装置におけるネットワーク通信を制御する情報処理装置である。
上記機器固有情報の他の例として、ネットワーク通信に使用するMACアドレスがある。
従来のコントローラでは、ネットワーク通信に使用するMACアドレスを固有情報として記憶するためのEEPROMを設けている。
MACアドレスはアップデートする必要がなく、なるべく書き換わりが起こらないようなメモリで保持する必要がある。
【0036】
そこで、図6に示したコントローラでは、プログラム用フラッシュメモリ21のセキュリティエリア(図2のセキュリティエリア19)にMACアドレス22を記憶する。
このように、MACアドレスを格納するために専用に設けるEEPROMを削減することが可能になる。
プログラム用フラッシュメモリ21のセキュリティエリア19へのMACアドレスの書き込み、その書き込み後のロック、およびセキュリティエリア19に書き込まれたMACアドレスのリードの処理は、制御部20が、図3〜図5にそれぞれ示した処理と同様にして実行する。
【0037】
次に、また他の実施形態を説明する。
図7は、この発明のさらに他の実施形態であるプリンタコントローラの機能構成を示すブロック図である。
図7に示すプリンタコントローラにおいて、図1と共通する部分には同一符号を付し、それらの説明を省略する。
上記機器固有情報の他の例として、画像形成装置の制御基板に搭載している回路の特性値がある。
画像形成装置の制御基板に搭載しているアナログICを含む回路はその特性値にばらつきがあり、その精度を上げることはコストアップにつながる。
【0038】
そこで、回路の特性値を測定し、それらの特性値を上げるための補正値を求め、その補正値によって補正を行うことにより、回路に必要な精度を確保する方式をとる場合がある。
上記補正値は制御基板に実装されたICと1対1の情報となる。
従来のプリンタコントローラでは、上記補正値を固有情報として記憶するためのEEPROMを設けている。
上記補正値はアップデートする必要がなく、なるべく書き換わりが起こらないようなメモリで保持する必要がある。
【0039】
そこで、図7に示したプリンタコントローラでは、プログラム用フラッシュメモリ2′のセキュリティエリア(図2のセキュリティエリア19)に回路の補正値32を記憶する。
このように、回路の補正値を格納するために専用に設けるEEPROMを削減することが可能になる。
プログラム用フラッシュメモリ2′のセキュリティエリア19への回路の補正値の書き込み、その書き込み後のロック、およびセキュリティエリア19に書き込まれた回路の補正値のリードの処理は、制御部1′が、図3〜図5にそれぞれ示した処理と同様にして実行する。
【0040】
次に、さらに他の実施形態を説明する。
上記回路の特性値として、ヘッド駆動I/Fの特性値を用いた場合を説明する。
図1又は図7に示したプリンタコントローラを搭載した画像形成装置では、インクを吐出するのにアナログ駆動波形を用いる。
例えば、その駆動波形を生成するDAコンバータのばらつき(このばらつきの特性として出力のオフセット電圧がある。)を抑えることで印刷時の画質の向上につながる。
まず、画像形成装置の制御基板(PCB)が実装された時点で検査を行い、制御基板上の各回路を補正値毎にランク分けする。
【0041】
図8は、図1又は図7に示したプリンタコントローラに搭載しているヘッド駆動I/Fの補正値の一例を示す図である。
図8には、1〜5のランク毎にヘッド駆動I/Fの出力電圧の補正値の一例を示している。
図1のプログラム用フラッシュメモリ2又は図7のプログラム用フラッシュメモリ2′のセキュリティエリア(図2のセキュリティエリア19)に、図8に示した補正値の一覧を記録したテーブルデータを記憶する。
【0042】
プログラム用フラッシュメモリ2又は2′のセキュリティエリア19への補正値の書き込み、その書き込み後のロック、およびセキュリティエリア19に書き込まれた補正値のリードの処理は、制御部1又は1′が、図3〜図5にそれぞれ示した処理と同様にして実行する。
【0043】
上記補正値は、ヘッド駆動I/Fの部品がプリント基板(PWB)に実装されて初めて決定されるものであり、その決定後はすぐにプログラム用フラッシュメモリ2又は2′のセキュリティエリア19へ書き込むようにすると良い。この書き込み後は、補正値を書き換わらないようにすると良い。
図8において、例えば、ランク1の回路の場合、制御部1又は1′は、その回路の出力電圧に−4Vの補正を行う。
【0044】
こうして、画像形成装置の制御基板上の各回路についてそれぞれ出力電圧の補正を行うことにより、各回路の特性にバラツキのない印刷を実行することができ、高画質の印刷を実現できる。
このように、図8に示した補正値の一覧をプログラム用フラッシュメモリ2又は2′に記憶することにより、専用のEEPROMの廃止が可能になる。
【0045】
次に、さらにまた他の実施形態を説明する。
図9は、図1に示したプログラム用フラッシュメモリ2又は図7に示したプログラム用フラッシュメモリ2′のデバイス特性値の一覧を示す説明図である。
この実施形態では、図1に示したプログラム用フラッシュメモリ2又は図7に示したプログラム用フラッシュメモリ2′の図2に示したセキュリティエリア19をデバイス特性記憶領域として利用する。
【0046】
そして、図9に示した図1に示したプログラム用フラッシュメモリ2又は図7に示したプログラム用フラッシュメモリ2′の特性値を記憶し、図1の制御部1又は図7の制御部1′は、デバイス特性記憶領域に記憶した特性値に基いてプログラム用フラッシュメモリ2又は2′の読み書きを行う。
このようにすれば、プログラム用フラッシュメモリ2又は2′毎にそれぞれの特性値にあわせたアクセスを行うことでデータの読み書きについて最適なパフォーマンスが実現できる。
【0047】
図9の各特性値の内容については公知なので次に簡単に説明する。
1.アドレス0に格納した「tRC」はリードサイクルタイムである。
2.アドレス1に格納した「tACC」はアドレスアクセスタイムである。
3.アドレス2に格納した「tCE」はチップイネーブルからデータ出力までのタイムである。
4.アドレス3に格納した「tPACC」はページアクセスタイムである。
5.アドレス4に格納した「tOE」はアウトプットイネーブルからデータ出力までのタイムである。
6.アドレス5に格納した「tDF」はチップイネーブルから出力フローティングまでのタイムである。
7.アドレス6に格納した「tOH」は前サイクルデータの出力保持タイムである。
8.アドレス7に格納した「tOEH」は出力イネーブルホールドタイムである。
【0048】
図10は、図1に示したプログラム用フラッシュメモリ2又は図7に示したプログラム用フラッシュメモリ2′の動作のタイミングチャート図である。
図10に示したタイミングチャート図には、それぞれのAC特性値が記載している。
例えば、tACCは図1に示したプログラム用フラッシュメモリ2又は図7に示したプログラム用フラッシュメモリ2′へのアクセスが開始されてデータが出力されるまでの特性値である。
この特性値の数値が小さいほど応答性がよく、アクセススピード向上につなげることができる。
【0049】
この特性値には個別のバラツキが存在する。例えば、120nsかかるものもあれば70nsのものもある。
そこで、図9に示した図1に示したプログラム用フラッシュメモリ2又は図7に示したプログラム用フラッシュメモリ2′の特性値を測定する。
また、プログラム用フラッシュメモリ2又はプログラム用フラッシュメモリ2′のセキュリティエリア19をデバイス特性記憶領域に割り当てる。
そして、上記デバイス特性記憶領域に図9に示した各特性値を記憶する。
【0050】
上記デバイス特性記憶領域への特性値の書き込み、その書き込み後のロック、およびセキュリティエリア19に書き込まれた特性値のリードの処理は、制御部1又は1′が、図3〜図5にそれぞれ示した処理と同様にして実行する。
また、制御部1又は1′は、それぞれのプログラム用フラッシュメモリ2又はプログラム用フラッシュメモリ2′に対する読み書きの際、デバイス特性記憶領域に記録されている特性値に基いて制御を実行する。
【0051】
このようにして、プログラム用フラッシュメモリの個別の特性値をプログラム用フラッシュメモリのロック可能な領域であるセキュリティエリア(デバイス特性記憶領域)に記憶することにより、専用の不揮発性メモリを搭載する必要がなくなる。
したがって、メモリ数を削減して装置製造のコストを低減することができる。
また、プログラム用フラッシュメモリに読み書きする際、個別の特性値に応じた動作を行えるので、データ読み書きについて最適なパフォーマンスが実現できる。
【0052】
次に、さらにまた他の実施形態を説明する。
図11は、図1に示した制御部1、図6に示した制御部20、又は図7に示した制御部1′がプログラム用フラッシュメモリにアクセスするタイミングチャート図である。
図12は、図11に示したアクセスタイミングの各期間の詳細の説明図である。
図13は、図1に示した制御部1、図6に示した制御部20、又は図7に示した制御部1′におけるプログラム用フラッシュメモリのアクセスに関する設定レジスタの詳細を示す説明図である。
【0053】
図1に示した制御部1、図6に示した制御部20、又は図7に示した制御部1′は、それぞれ図11に示したタイミングでそれぞれのプログラム用フラッシュメモリ2、21、2′にアクセスする。
図11中のtA2C、tC2O、tWOE、tRELの各期間は、図12に示すように設計されている。
上記tWOEは、制御部1、20、1′内の図示を省略した設定レジスタで設定をすることにより、自由に期間を変えられる部分である。
【0054】
そこで、プログラム用フラッシュメモリ2、21、2′が応答速度の速いデバイスの場合、上記tWOEの期間を短く設定する。
また、プログラム用フラッシュメモリ2、21、2′が応答速度の遅いデバイスの場合、上記tWOEの期間を長く設定する。
このように設定することにより、制御部1、20、1′が、それぞれのプログラム用フラッシュメモリ2、21、2′を読み書きする際、メモリ毎の特性値のバラツキに応じた最適な読み書き動作を行うことができ、処理効率を向上させることができる。
【0055】
次に、制御部1、20、1′によるtWOEの設定処理について説明する。
制御部1、20、1′は、それぞれ図13に示した設定レジスタのビット(Bit)07〜04に数値を設定することによってtWOEの期間を設定する。
例えば、tWOEを70nsに設定する時は、設定レジスタのビット07〜04にそれぞれ“0”“1”“1”“0”の各ビットを設定する。
そうすると、図12に示したように、tWOEの期間はRCSFTIM設定値(設定値:6)+1クロックとなり、合計7クロックで70nsとなる。
これは、100MHzの時、1クロック10nsとなるためである。
【0056】
このようにして、プログラム用フラッシュメモリ2、21、2′のセキュリティエリアに記憶されているデバイスの固有の特性値でレジスタを設定し、個別のバラツキに対して最適な動作を行うことができる。
すなわち、プログラム用フラッシュメモリ2、21、2′のセキュリティエリアでそれぞれプログラム用フラッシュメモリ2、21、2′の特性値を記憶して、その特性値に応じて読み書き動作を行えるので、データの読み書き速度のパフォーマンスの最適化を図ることができる。
【0057】
この実施形態のプリンタコントローラ及びコントローラは、今まで使用していなかったフラッシュメモリのセキュリティエリアに機器固有情報を格納する。
したがって、従来使用していたEEPROMを削減することができるのでメモリの集約化ができる。
このようにして、搭載するメモリ数を少なくして、プリンタコントローラ及びコントローラの製造コストの削減を図ることができる。
また、最悪の固体の特性値に合わせた固定の動作タイミングで動作することなく、デバイスそれぞれの特性値に合わせた動作タイミングで動作することができるので、メモリの個別の特性値に合わせた動作で最適なパフォーマンスが実現できる。
【符号の説明】
【0058】
1、1′、20:制御部 2、2′、21:プログラム用フラッシュメモリ 3、8、23、28:XTL 4、24:SSCG 5、25:CPU 6、26:CLKドライバ 7、27:DDR SDRAM 9、29:PC I/F 10、30:LAN Ctl 11:フォント用マスクROM 12:インクカートリッジEEPROM I/F 13:本体EEPROM 14:操作パネルI/F 15:各センサI/F 16:各アクチュエータI/F 17:ヘッド駆動I/F 18:通常エリア 19:セキュリティエリア 22:MACアドレス 31:ホストI/F 32:補正値
【先行技術文献】
【特許文献】
【0059】
【特許文献1】特開2008−186476号公報
【技術分野】
【0001】
この発明は、ファクシミリ装置、プリンタ、複写機、複合機、パーソナルコンピュータ等を含む情報処理装置に関する。
【背景技術】
【0002】
ファクシミリ装置、プリンタ、複写機、複合機、パーソナルコンピュータ等を含む情報処理装置では、内蔵されている電子基板には様々な種類のメモリが搭載されている。
上記メモリは、揮発性メモリと不揮発性メモリに分類され、それぞれさらに用途毎のメモリが搭載されている。
不揮発性メモリでは、プログラムの格納にはフラッシュメモリが、装置固有のデータの格納にはEEPROMがそれぞれ多く用いられている。
従来、通信制御プログラムを記憶した不揮発性メモリを設けた情報処理装置(例えば、特許文献1参照)があった。
【発明の概要】
【発明が解決しようとする課題】
【0003】
しかしながら、従来の情報処理装置では、用途毎にメモリを搭載することになる。
したがって、多くのメモリが搭載されることとなり、情報処理装置の製造コストを上昇させるという問題があった。
この発明は上記の点に鑑みてなされたものであり、搭載するメモリ数を少なくしてコスト削減を図ることを目的とする。
【課題を解決するための手段】
【0004】
この発明は上記の目的を達成するため、セキュリティ情報を記憶し、予め決められたコマンドによってのみアクセス可能な特殊領域を備えた不揮発性記憶手段に対して、上記予め決められたコマンドによって上記不揮発性記憶手段の上記特殊領域にアクセスし、上記特殊領域の空き領域に機器固有情報を書き込む手段を備えた情報処理装置を提供する。
【発明の効果】
【0005】
この発明による情報処理装置は、搭載するメモリ数を少なくしてコスト削減を図ることができる。
【図面の簡単な説明】
【0006】
【図1】発明の一実施形態であるプリンタコントローラの機能構成を示すブロック図である。
【図2】図1に示すプログラム用フラッシュメモリのエリア内容を示す説明図である。
【図3】図1に示す制御部が図2に示すプログラム用フラッシュメモリのセキュリティエリアに書き込みを行う処理を示すフローチャート図である。
【図4】図1に示す制御部が図2に示すプログラム用フラッシュメモリのセキュリティエリアをロックする処理を示すフローチャート図である。
【図5】図1に示す制御部が図2に示したプログラム用フラッシュメモリのセキュリティエリアをリードする処理を示すフローチャート図である。
【図6】発明の他の実施形態であるコントローラの機能構成を示すブロック図である。
【図7】発明のまた他の実施形態であるプリンタコントローラの機能構成を示すブロック図である。
【0007】
【図8】図1又は図7に示すプリンタコントローラに搭載しているヘッド駆動I/Fの補正値の一例を示す図である。
【図9】図1又は図7に示すプログラム用フラッシュメモリのデバイス特性値の一覧を示す説明図である。
【図10】図1又は図7に示すプログラム用フラッシュメモリの動作のタイミングチャート図である。
【図11】図1、図6、図7にそれぞれ示す制御部がプログラム用フラッシュメモリにアクセスするタイミングチャート図である。
【図12】図11に示すアクセスタイミングの各期間の詳細の説明図である。
【図13】図1、図6、図7にそれぞれ示す制御部におけるプログラム用フラッシュメモリのアクセスに関する設定レジスタの詳細を示す説明図である。
【発明を実施するための形態】
【0008】
以下、この発明を実施するための形態を図面に基づいて具体的に説明する。
図1は、発明の一実施形態であるプリンタコントローラの機能構成を示すブロック図である。
このプリンタコントローラは、ファクシミリ装置、プリンタ、複写機、及び複合機を含む画像形成装置に設けられ、その画像形成装置におけるプリントを制御する情報処理装置である。
【0009】
このプリンタコントローラは、制御部1、プログラム用フラッシュメモリ2、発振器(XTL)3と8、エスエスシージー(Spread Spectrum Clock Generator:SSCG)4、CPU5、クロックドライバ(CLKドライバ)6、ディーディーアールエスディーラム(Double−Data−Rate Synchronous Dynamic Random Access Memory:DDR SDRAM)7、パーソナルコンピュータインタフェース(PC I/F)9、ローカルエリアネットワークコントローラ(LAN Ctl)10を備えている。
【0010】
また、このプリンタコントローラは、フォント用マスクROM11、インクカートリッジイーイーピーロムインタフェース((Electrically Erasable Programmable Read−Only Memory:EEPROM)I/F)12、本体EEPROM13、操作パネルI/F14、各センサI/F15、各アクチュエータI/F16、及びヘッド駆動I/F17を備えている。
【0011】
制御部1は、プリンタコントローラの全体の制御を司り、不揮発性記憶手段の恒久的にロック可能な領域に情報を記憶する手段の機能を果たす。
プログラム用フラッシュメモリ2は、恒久的にロック可能な領域を備えた不揮発性メモリであり、プリンタコントローラで実行されるプログラムを記憶する。また、恒久的にロック可能な領域に、機器固有情報(「装置固有情報」ともいう)、MACアドレス、プリンタコントローラに搭載している回路の補正値、プリンタコントローラに搭載しているヘッド駆動I/Fの補正値、プログラム用フラッシュメモリ2の特性値を記憶する。
【0012】
XTL3と8は、基準クロックを発生する。
SSCG4は、XTL3の発生する基準クロックの周波数に対して微小な範囲でゆっくりした周期で周波数変調をしてEMIスペクトラムを積分的に平坦化し、必要なタイミング信号を生成する。
CPU5は、SSCG4が生成するタイミング信号に基いて印刷動作を制御する。
CLKドライバ6は、SSCG4が生成するタイミング信号に基いてDDR SDRAM7への読み書きを制御する。
【0013】
DDR SDRAM7は、各種の情報を記憶する読み書き可能なメモリである。
PC I/F9は、図示を省略したPCと接続し、そのPCとのデータ通信を司る。
LAN Ctl10は、図示を省略したLAN上のPC、画像形成装置と接続し、そのPC、画像形成装置とのデータ通信を司る。
フォント用マスクROM11は、印刷に使用される文字のデータを記憶した不揮発性メモリである。
【0014】
インクカートリッジEEPROM I/F12は、KCYMの各インクカートリッジに設けられたEEPROMとの読み書きを行う。
本体EEPROM13は、KCYMの各インクカートリッジに設けられたEEPROMに記憶されている情報を取り込んで所定の処理が行われた後に記憶する不揮発性メモリである。
操作パネルI/F14は、図示を省略した操作パネルから入力された操作情報と操作パネルに表示する表示情報を操作パネルとの間でやり取りする。
【0015】
各センサI/F15は、画像形成装置の各所に設けられたセンサの情報の入力を制御する。
各アクチュエータI/F16は、図示を省略した記録ヘッドの各インクジェットヘッドにおける、圧電素子,気泡発生用ヒータを含むアクチュエータを選択的に駆動する制御を司る。
ヘッド駆動I/F17は、記録ヘッドを用紙に対して主走査方向及び副走査方向に駆動する制御を司る。
【0016】
図2は、図1に示したプログラム用フラッシュメモリ2のエリア内容を示す説明図である。
プログラム用フラッシュメモリ2は、通常エリア(通常領域)18とセキュリティエリア(セキュリティ領域)19とを備えている。
通常エリア18は、数メガバイト(MB)〜数十メガバイト(MB)の容量(サイズ)であり、この容量は製品の使用によって決定される。
【0017】
すなわち、通常エリア18は、フラッシュメモリの一般的な仕様が適用されるエリアである。
例えば、フラッシュメモリの4メガバイト品とは、通常エリアの容量が4メガバイトということになる。
この通常エリア18にはプログラムを記憶する。
この通常エリア18は不揮発性であり、ソフトウェア、ハードウェアによって書き込みと消去を禁止するプロテクト機能を備えている。
【0018】
また、電気的な一括消去、プログラムができる。
そして、コマンドやデバイスの端子処理等でロックをかけることは可能であるが、ソフト暴走、電源のオン時又はオフ時の電圧の乱れ等の原因で書き換わりの可能性はゼロではない。
すなわち、恒久的にロック可能な領域ではないため、情報の書き替えの条件が発生すると書替えられる可能性がある領域である。
【0019】
一方、セキュリティエリア19は、通常エリア18とは異なる特殊な領域である。
このセキュリティエリア19にアクセスする際には特殊なコマンドが必要であり、恒久的なロックをかけることができる。
すなわち、このセキュリティエリア19は、恒久的にロック可能な領域であり、通常は書き換えが発生しない。
【0020】
そして、本来はデバイスのシリアルNo、課金情報等のセキュリティ情報の記憶を目的としたエリアである。
このセキュリティ情報は、装置の出荷後に出荷元を特定するのに使用されたり、利用許可を得ずして使用できないようにするために使用される。
例えば、利用制限をする場合、コントローラ処理の際に読み出したセキュリティ情報が想定外の値の場合には動作しないように停止させる制御を行うようにすることができる。
【0021】
ただし、デバイスのシリアルNoの格納として使用するのではなく、一般ユーザも使用可能であり、任意のデータの書き込みを行い、恒久的なロックをかけることが可能な領域でもある。
容量は一般的に小さい。例えば、256バイトの容量(サイズ)である。
そのため、シリアルNo用のエリアというイメージが強く、ユーザが活用可能なことはあまり知られていない。
セキュリティエリア19は、ソフト的にプログラムが可能なのでPCBのアセンブリ後、製品ファームを書き込むタイミングで任意の値を書き込むことができる。
しかも、恒久的なロックが可能である。
【0022】
通常、マスクロム(MASK ROM)のような恒久的に保持するデバイスはソフトで任意に情報を書き込むことができない。
また、通常エリア18とは異なるエリアとして独立して存在しているため、通常エリア18が仮にファームのバージョンアップをした際にプログラムの容量が変わったとしても影響を受けないというメリットもある。
したがって、コントローラの組立時に任意の数値を書き込みたい場合や、独立して恒久的な保護が要求されるような情報の記憶に最適なエリアである。
【0023】
そこで、プログラム用フラッシュメモリ2の今まで使用していなかったセキュリティエリア19に機器固有情報を記憶することにより、従来使用していたEEPROMを削減することができる。
この機器固有情報とは、上述したセキュリティ情報が重要な情報であるのに対して、プリンタコントローラと一対一の情報であり、この情報が無くても動作は可能であるが、プリンタコントローラを最適な状態で動作させるために必要な情報である。
【0024】
例えば、後述するMACアドレス、画像形成装置の制御基板に搭載している回路の特性値、ヘッド駆動I/Fの補正値などである。
まず、プログラム用フラッシュメモリ2のセキュリティエリア19に機器固有情報の1つであるプログラムを書き込む処理を説明する。
このプログラムは、情報処理装置で実行されるプログラムである。
【0025】
図3は、図1に示した制御部1が図2に示したプログラム用フラッシュメモリのセキュリティエリア19に書き込みを行う処理を示すフローチャート図である。
図1の制御部1は、図2のセキュリティエリア19にプログラムを書き込む場合、セキュリティエリア19に対してアクセス状態にする必要があり、図3のステップ(図中「S」で示す)1で、セキュリティエリア開始コマンドを発行し、ステップ2へ進む。
ステップ2では、プログラムコマンドシーケンスのライトを行い、ステップ3へ進む。
このプログラムコマンドシーケンスのライトの処理は、図2の通常エリア18へのプログラムの書き込みと同じである。
【0026】
ステップ3では、システムからのベリファイデータのポーリングを行い、ステップ4へ進む。
ステップ4では、ベリファイデータOKか否かを判断し、OKと判断したら(Yの場合)、ステップ5へ進む。
上記ステップ3と4の処理は、自動プログラムアルゴリズムで実行することができる。
一方、ステップ4でベリファイデータOKではないと判断したら(Nの場合)、ステップ3へ戻る。
【0027】
ステップ5では、ラストアドレスか否かを判断し、ラストアドレスと判断したら(Yの場合)、ステップ6に進む。
また、ステップ5でラストアドレスではないと判断したら(Nの場合)、ステップ8に進み、次アドレスに移行し、ステップ2へ戻って次のプログラムの書き込みに進む。
ステップ6では、プログラム書き込み完了で、書き込む全てのアドレスに書き込みが完了したら、ステップ7で最後にセキュリティエリア終了コマンドを発行して通常状態に戻り、この処理を終了する。
【0028】
このように、プログラム用フラッシュメモリ2のセキュリティエリア19にその他の機器固有情報を書き込む場合も、上述と同様にして書き込むことができる。
このようにして、EEPROMで記憶していた情報をフラッシュメモリのセキュリティエリアで記憶することにより、EEPROMの削減によるコントローラ製造のコストダウンを図ることができる。
【0029】
図4は、図1に示した制御部1が図2に示したプログラム用フラッシュメモリのセキュリティエリア19をロックする処理を示すフローチャート図である。
図1の制御部1は、図2のセキュリティエリア19をロックする場合、セキュリティエリア19に対してアクセス状態にする必要があり、図4のステップ(図中「S」で示す)11で、セキュリティエリア開始コマンドを発行し、ステップ12へ進む。
ステップ12では、ロックコマンドを発行し、ステップ13へ進む。
このロックコマンドの発行からの処理は、図2の通常エリア18へのロックの場合と同じである。
【0030】
ステップ13では、ロック完了確認のポーリングを行い、ステップ14へ進む。
ステップ14では、ロック完了か否かを判断し、ロック完了と判断したら(Yの場合)、ステップ15へ進む。
一方、ステップ14でロック完了ではないと判断したら(Nの場合)、ステップ13へ戻ってロック完了確認のポーリングを再実行する。
【0031】
ステップ15では、ロック完了で、ステップ16へ進む。
ステップ16では、最後にセキュリティエリア終了コマンドを発行して通常状態に戻り、この処理を終了する。
上述した機器固有情報の書き込みとロックの処理は、PCBの製造工程もしくはコントローラの製造工程で行うと良い。
【0032】
図5は、図1に示した制御部1が図2に示したプログラム用フラッシュメモリのセキュリティエリア19をリードする処理を示すフローチャート図である。
図1の制御部1は、図2のセキュリティエリア19のデータリードをする場合、セキュリティエリア19に対してアクセス状態にする必要があり、図5のステップ(図中「S」で示す)21で、セキュリティエリア開始コマンドを発行し、ステップ22へ進む。
ステップ22では、リードコマンドを発行し、ステップ23へ進む。
【0033】
ステップ23では、ラストアドレスか否かを判断し、ラストアドレスと判断したら(Yの場合)、ステップ24に進む。
また、ステップ23でラストアドレスではないと判断したら(Nの場合)、ステップ26に進み、次アドレスに移行し、ステップ22へ戻って次のデータリードに進む。
ステップ24では、データリード完了で、読み出す全てのデータの読み出しが完了したら、ステップ25で最後にセキュリティエリア終了コマンドを発行して通常状態に戻り、この処理を終了する。
【0034】
次に、他の実施形態を説明する。
図6は、発明の他の実施形態であるコントローラの機能構成を示すブロック図である。
図6のコントローラにおいて、XTL23と28、SSCG24、CPU25、CLKドライバ26、DDR SDRAM27、PC I/F29、及びLAN Ctl30は、それぞれ図1に示したXTL3と8、SSCG4、CPU5、CLKドライバ6、DDR SDRAM7、PC I/F9、及びLAN Ctl10と同じ機能を果たすので、それらの説明を省略する。
ホストI/F31は、ホスト装置とのデータのやり取りのインタフェースを司る。
【0035】
このコントローラは、ファクシミリ装置、プリンタ、複写機、及び複合機を含む画像形成装置に設けられ、その画像形成装置におけるネットワーク通信を制御する情報処理装置である。
上記機器固有情報の他の例として、ネットワーク通信に使用するMACアドレスがある。
従来のコントローラでは、ネットワーク通信に使用するMACアドレスを固有情報として記憶するためのEEPROMを設けている。
MACアドレスはアップデートする必要がなく、なるべく書き換わりが起こらないようなメモリで保持する必要がある。
【0036】
そこで、図6に示したコントローラでは、プログラム用フラッシュメモリ21のセキュリティエリア(図2のセキュリティエリア19)にMACアドレス22を記憶する。
このように、MACアドレスを格納するために専用に設けるEEPROMを削減することが可能になる。
プログラム用フラッシュメモリ21のセキュリティエリア19へのMACアドレスの書き込み、その書き込み後のロック、およびセキュリティエリア19に書き込まれたMACアドレスのリードの処理は、制御部20が、図3〜図5にそれぞれ示した処理と同様にして実行する。
【0037】
次に、また他の実施形態を説明する。
図7は、この発明のさらに他の実施形態であるプリンタコントローラの機能構成を示すブロック図である。
図7に示すプリンタコントローラにおいて、図1と共通する部分には同一符号を付し、それらの説明を省略する。
上記機器固有情報の他の例として、画像形成装置の制御基板に搭載している回路の特性値がある。
画像形成装置の制御基板に搭載しているアナログICを含む回路はその特性値にばらつきがあり、その精度を上げることはコストアップにつながる。
【0038】
そこで、回路の特性値を測定し、それらの特性値を上げるための補正値を求め、その補正値によって補正を行うことにより、回路に必要な精度を確保する方式をとる場合がある。
上記補正値は制御基板に実装されたICと1対1の情報となる。
従来のプリンタコントローラでは、上記補正値を固有情報として記憶するためのEEPROMを設けている。
上記補正値はアップデートする必要がなく、なるべく書き換わりが起こらないようなメモリで保持する必要がある。
【0039】
そこで、図7に示したプリンタコントローラでは、プログラム用フラッシュメモリ2′のセキュリティエリア(図2のセキュリティエリア19)に回路の補正値32を記憶する。
このように、回路の補正値を格納するために専用に設けるEEPROMを削減することが可能になる。
プログラム用フラッシュメモリ2′のセキュリティエリア19への回路の補正値の書き込み、その書き込み後のロック、およびセキュリティエリア19に書き込まれた回路の補正値のリードの処理は、制御部1′が、図3〜図5にそれぞれ示した処理と同様にして実行する。
【0040】
次に、さらに他の実施形態を説明する。
上記回路の特性値として、ヘッド駆動I/Fの特性値を用いた場合を説明する。
図1又は図7に示したプリンタコントローラを搭載した画像形成装置では、インクを吐出するのにアナログ駆動波形を用いる。
例えば、その駆動波形を生成するDAコンバータのばらつき(このばらつきの特性として出力のオフセット電圧がある。)を抑えることで印刷時の画質の向上につながる。
まず、画像形成装置の制御基板(PCB)が実装された時点で検査を行い、制御基板上の各回路を補正値毎にランク分けする。
【0041】
図8は、図1又は図7に示したプリンタコントローラに搭載しているヘッド駆動I/Fの補正値の一例を示す図である。
図8には、1〜5のランク毎にヘッド駆動I/Fの出力電圧の補正値の一例を示している。
図1のプログラム用フラッシュメモリ2又は図7のプログラム用フラッシュメモリ2′のセキュリティエリア(図2のセキュリティエリア19)に、図8に示した補正値の一覧を記録したテーブルデータを記憶する。
【0042】
プログラム用フラッシュメモリ2又は2′のセキュリティエリア19への補正値の書き込み、その書き込み後のロック、およびセキュリティエリア19に書き込まれた補正値のリードの処理は、制御部1又は1′が、図3〜図5にそれぞれ示した処理と同様にして実行する。
【0043】
上記補正値は、ヘッド駆動I/Fの部品がプリント基板(PWB)に実装されて初めて決定されるものであり、その決定後はすぐにプログラム用フラッシュメモリ2又は2′のセキュリティエリア19へ書き込むようにすると良い。この書き込み後は、補正値を書き換わらないようにすると良い。
図8において、例えば、ランク1の回路の場合、制御部1又は1′は、その回路の出力電圧に−4Vの補正を行う。
【0044】
こうして、画像形成装置の制御基板上の各回路についてそれぞれ出力電圧の補正を行うことにより、各回路の特性にバラツキのない印刷を実行することができ、高画質の印刷を実現できる。
このように、図8に示した補正値の一覧をプログラム用フラッシュメモリ2又は2′に記憶することにより、専用のEEPROMの廃止が可能になる。
【0045】
次に、さらにまた他の実施形態を説明する。
図9は、図1に示したプログラム用フラッシュメモリ2又は図7に示したプログラム用フラッシュメモリ2′のデバイス特性値の一覧を示す説明図である。
この実施形態では、図1に示したプログラム用フラッシュメモリ2又は図7に示したプログラム用フラッシュメモリ2′の図2に示したセキュリティエリア19をデバイス特性記憶領域として利用する。
【0046】
そして、図9に示した図1に示したプログラム用フラッシュメモリ2又は図7に示したプログラム用フラッシュメモリ2′の特性値を記憶し、図1の制御部1又は図7の制御部1′は、デバイス特性記憶領域に記憶した特性値に基いてプログラム用フラッシュメモリ2又は2′の読み書きを行う。
このようにすれば、プログラム用フラッシュメモリ2又は2′毎にそれぞれの特性値にあわせたアクセスを行うことでデータの読み書きについて最適なパフォーマンスが実現できる。
【0047】
図9の各特性値の内容については公知なので次に簡単に説明する。
1.アドレス0に格納した「tRC」はリードサイクルタイムである。
2.アドレス1に格納した「tACC」はアドレスアクセスタイムである。
3.アドレス2に格納した「tCE」はチップイネーブルからデータ出力までのタイムである。
4.アドレス3に格納した「tPACC」はページアクセスタイムである。
5.アドレス4に格納した「tOE」はアウトプットイネーブルからデータ出力までのタイムである。
6.アドレス5に格納した「tDF」はチップイネーブルから出力フローティングまでのタイムである。
7.アドレス6に格納した「tOH」は前サイクルデータの出力保持タイムである。
8.アドレス7に格納した「tOEH」は出力イネーブルホールドタイムである。
【0048】
図10は、図1に示したプログラム用フラッシュメモリ2又は図7に示したプログラム用フラッシュメモリ2′の動作のタイミングチャート図である。
図10に示したタイミングチャート図には、それぞれのAC特性値が記載している。
例えば、tACCは図1に示したプログラム用フラッシュメモリ2又は図7に示したプログラム用フラッシュメモリ2′へのアクセスが開始されてデータが出力されるまでの特性値である。
この特性値の数値が小さいほど応答性がよく、アクセススピード向上につなげることができる。
【0049】
この特性値には個別のバラツキが存在する。例えば、120nsかかるものもあれば70nsのものもある。
そこで、図9に示した図1に示したプログラム用フラッシュメモリ2又は図7に示したプログラム用フラッシュメモリ2′の特性値を測定する。
また、プログラム用フラッシュメモリ2又はプログラム用フラッシュメモリ2′のセキュリティエリア19をデバイス特性記憶領域に割り当てる。
そして、上記デバイス特性記憶領域に図9に示した各特性値を記憶する。
【0050】
上記デバイス特性記憶領域への特性値の書き込み、その書き込み後のロック、およびセキュリティエリア19に書き込まれた特性値のリードの処理は、制御部1又は1′が、図3〜図5にそれぞれ示した処理と同様にして実行する。
また、制御部1又は1′は、それぞれのプログラム用フラッシュメモリ2又はプログラム用フラッシュメモリ2′に対する読み書きの際、デバイス特性記憶領域に記録されている特性値に基いて制御を実行する。
【0051】
このようにして、プログラム用フラッシュメモリの個別の特性値をプログラム用フラッシュメモリのロック可能な領域であるセキュリティエリア(デバイス特性記憶領域)に記憶することにより、専用の不揮発性メモリを搭載する必要がなくなる。
したがって、メモリ数を削減して装置製造のコストを低減することができる。
また、プログラム用フラッシュメモリに読み書きする際、個別の特性値に応じた動作を行えるので、データ読み書きについて最適なパフォーマンスが実現できる。
【0052】
次に、さらにまた他の実施形態を説明する。
図11は、図1に示した制御部1、図6に示した制御部20、又は図7に示した制御部1′がプログラム用フラッシュメモリにアクセスするタイミングチャート図である。
図12は、図11に示したアクセスタイミングの各期間の詳細の説明図である。
図13は、図1に示した制御部1、図6に示した制御部20、又は図7に示した制御部1′におけるプログラム用フラッシュメモリのアクセスに関する設定レジスタの詳細を示す説明図である。
【0053】
図1に示した制御部1、図6に示した制御部20、又は図7に示した制御部1′は、それぞれ図11に示したタイミングでそれぞれのプログラム用フラッシュメモリ2、21、2′にアクセスする。
図11中のtA2C、tC2O、tWOE、tRELの各期間は、図12に示すように設計されている。
上記tWOEは、制御部1、20、1′内の図示を省略した設定レジスタで設定をすることにより、自由に期間を変えられる部分である。
【0054】
そこで、プログラム用フラッシュメモリ2、21、2′が応答速度の速いデバイスの場合、上記tWOEの期間を短く設定する。
また、プログラム用フラッシュメモリ2、21、2′が応答速度の遅いデバイスの場合、上記tWOEの期間を長く設定する。
このように設定することにより、制御部1、20、1′が、それぞれのプログラム用フラッシュメモリ2、21、2′を読み書きする際、メモリ毎の特性値のバラツキに応じた最適な読み書き動作を行うことができ、処理効率を向上させることができる。
【0055】
次に、制御部1、20、1′によるtWOEの設定処理について説明する。
制御部1、20、1′は、それぞれ図13に示した設定レジスタのビット(Bit)07〜04に数値を設定することによってtWOEの期間を設定する。
例えば、tWOEを70nsに設定する時は、設定レジスタのビット07〜04にそれぞれ“0”“1”“1”“0”の各ビットを設定する。
そうすると、図12に示したように、tWOEの期間はRCSFTIM設定値(設定値:6)+1クロックとなり、合計7クロックで70nsとなる。
これは、100MHzの時、1クロック10nsとなるためである。
【0056】
このようにして、プログラム用フラッシュメモリ2、21、2′のセキュリティエリアに記憶されているデバイスの固有の特性値でレジスタを設定し、個別のバラツキに対して最適な動作を行うことができる。
すなわち、プログラム用フラッシュメモリ2、21、2′のセキュリティエリアでそれぞれプログラム用フラッシュメモリ2、21、2′の特性値を記憶して、その特性値に応じて読み書き動作を行えるので、データの読み書き速度のパフォーマンスの最適化を図ることができる。
【0057】
この実施形態のプリンタコントローラ及びコントローラは、今まで使用していなかったフラッシュメモリのセキュリティエリアに機器固有情報を格納する。
したがって、従来使用していたEEPROMを削減することができるのでメモリの集約化ができる。
このようにして、搭載するメモリ数を少なくして、プリンタコントローラ及びコントローラの製造コストの削減を図ることができる。
また、最悪の固体の特性値に合わせた固定の動作タイミングで動作することなく、デバイスそれぞれの特性値に合わせた動作タイミングで動作することができるので、メモリの個別の特性値に合わせた動作で最適なパフォーマンスが実現できる。
【符号の説明】
【0058】
1、1′、20:制御部 2、2′、21:プログラム用フラッシュメモリ 3、8、23、28:XTL 4、24:SSCG 5、25:CPU 6、26:CLKドライバ 7、27:DDR SDRAM 9、29:PC I/F 10、30:LAN Ctl 11:フォント用マスクROM 12:インクカートリッジEEPROM I/F 13:本体EEPROM 14:操作パネルI/F 15:各センサI/F 16:各アクチュエータI/F 17:ヘッド駆動I/F 18:通常エリア 19:セキュリティエリア 22:MACアドレス 31:ホストI/F 32:補正値
【先行技術文献】
【特許文献】
【0059】
【特許文献1】特開2008−186476号公報
【特許請求の範囲】
【請求項1】
セキュリティ情報を記憶し、予め決められたコマンドによってのみアクセス可能な特殊領域を備えた不揮発性記憶手段に対して、前記予め決められたコマンドによって前記不揮発性記憶手段の前記特殊領域にアクセスし、前記特殊領域の空き領域に機器固有情報を書き込む手段を備えたことを特徴とする情報処理装置。
【請求項2】
前記機器固有情報は、情報処理装置で実行されるプログラムであることを特徴とする請求項1記載の情報処理装置。
【請求項3】
前記機器固有情報は、情報処理装置がネットワーク通信をするときに使用するMACアドレスであることを特徴とする請求項1記載の情報処理装置。
【請求項4】
前記機器固有情報は、情報処理装置の制御基板に搭載している回路の補正値であることを特徴とする請求項1記載の情報処理装置。
【請求項5】
前記機器固有情報は、情報処理装置のプリンタコントローラに搭載しているヘッド駆動回路の補正値であることを特徴とする請求項1記載の情報処理装置。
【請求項6】
前記機器固有情報は前記不揮発性記憶手段の特性値であり、該特性値に基いて前記不揮発性記憶手段に読み書きを行う手段を有することを特徴とする請求項1記載の情報処理装置。
【請求項1】
セキュリティ情報を記憶し、予め決められたコマンドによってのみアクセス可能な特殊領域を備えた不揮発性記憶手段に対して、前記予め決められたコマンドによって前記不揮発性記憶手段の前記特殊領域にアクセスし、前記特殊領域の空き領域に機器固有情報を書き込む手段を備えたことを特徴とする情報処理装置。
【請求項2】
前記機器固有情報は、情報処理装置で実行されるプログラムであることを特徴とする請求項1記載の情報処理装置。
【請求項3】
前記機器固有情報は、情報処理装置がネットワーク通信をするときに使用するMACアドレスであることを特徴とする請求項1記載の情報処理装置。
【請求項4】
前記機器固有情報は、情報処理装置の制御基板に搭載している回路の補正値であることを特徴とする請求項1記載の情報処理装置。
【請求項5】
前記機器固有情報は、情報処理装置のプリンタコントローラに搭載しているヘッド駆動回路の補正値であることを特徴とする請求項1記載の情報処理装置。
【請求項6】
前記機器固有情報は前記不揮発性記憶手段の特性値であり、該特性値に基いて前記不揮発性記憶手段に読み書きを行う手段を有することを特徴とする請求項1記載の情報処理装置。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【公開番号】特開2013−41450(P2013−41450A)
【公開日】平成25年2月28日(2013.2.28)
【国際特許分類】
【出願番号】特願2011−178363(P2011−178363)
【出願日】平成23年8月17日(2011.8.17)
【出願人】(000006747)株式会社リコー (37,907)
【Fターム(参考)】
【公開日】平成25年2月28日(2013.2.28)
【国際特許分類】
【出願日】平成23年8月17日(2011.8.17)
【出願人】(000006747)株式会社リコー (37,907)
【Fターム(参考)】
[ Back to top ]