JP2004237667A - データ転送方法 - Google Patents
データ転送方法 Download PDFInfo
- Publication number
- JP2004237667A JP2004237667A JP2003031315A JP2003031315A JP2004237667A JP 2004237667 A JP2004237667 A JP 2004237667A JP 2003031315 A JP2003031315 A JP 2003031315A JP 2003031315 A JP2003031315 A JP 2003031315A JP 2004237667 A JP2004237667 A JP 2004237667A
- Authority
- JP
- Japan
- Prior art keywords
- data
- unit
- engine
- signal
- controller
- 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
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N1/00—Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
- H04N1/00962—Input arrangements for operating instructions or parameters, e.g. updating internal software
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N1/00—Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
- H04N1/32—Circuits or arrangements for control or supervision between transmitter and receiver or between image input and image output device, e.g. between a still-image camera and its memory or between a still-image camera and a printer device
- H04N1/32561—Circuits or arrangements for control or supervision between transmitter and receiver or between image input and image output device, e.g. between a still-image camera and its memory or between a still-image camera and a printer device using a programmed control device, e.g. a microprocessor
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N1/00—Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
- H04N1/32—Circuits or arrangements for control or supervision between transmitter and receiver or between image input and image output device, e.g. between a still-image camera and its memory or between a still-image camera and a printer device
- H04N1/32561—Circuits or arrangements for control or supervision between transmitter and receiver or between image input and image output device, e.g. between a still-image camera and its memory or between a still-image camera and a printer device using a programmed control device, e.g. a microprocessor
- H04N1/32571—Details of system components
- H04N1/32582—Output interface
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N1/00—Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
- H04N1/32—Circuits or arrangements for control or supervision between transmitter and receiver or between image input and image output device, e.g. between a still-image camera and its memory or between a still-image camera and a printer device
- H04N1/32561—Circuits or arrangements for control or supervision between transmitter and receiver or between image input and image output device, e.g. between a still-image camera and its memory or between a still-image camera and a printer device using a programmed control device, e.g. a microprocessor
- H04N1/32571—Details of system components
- H04N1/32587—Controller
Landscapes
- Engineering & Computer Science (AREA)
- Signal Processing (AREA)
- Multimedia (AREA)
- Computer Hardware Design (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Accessory Devices And Overall Control Thereof (AREA)
- Record Information Processing For Printing (AREA)
- Facsimiles In General (AREA)
- Storing Facsimile Image Data (AREA)
Abstract
【課題】画像形成装置のコントローラ部とエンジン部との間のシリアル通信におけるデータ転送時間を短縮する。
【解決手段】不揮発性メモリを備え、画像形成を行うエンジン部320と、エンジン部320へビデオインターフェース340を介して画像データを送信するコントローラ部310とで構成される画像形成装置において、コントローラ部310からエンジン部320へデータを転送して不揮発性メモリを書き換える際に、シリアル通信を制御する所定の制御信号によりデータ転送の同期を取り、同期して転送されたデータで不揮発性メモリを書き換える。
【選択図】 図3
【解決手段】不揮発性メモリを備え、画像形成を行うエンジン部320と、エンジン部320へビデオインターフェース340を介して画像データを送信するコントローラ部310とで構成される画像形成装置において、コントローラ部310からエンジン部320へデータを転送して不揮発性メモリを書き換える際に、シリアル通信を制御する所定の制御信号によりデータ転送の同期を取り、同期して転送されたデータで不揮発性メモリを書き換える。
【選択図】 図3
Description
【0001】
【発明の属する技術分野】
本発明は、シリアル通信によりデータの転送を行い、不揮発性メモリに格納されたデータを転送されたデータで書き換える技術に関する。
【0002】
【従来の技術】
近年、記録媒体としてROM(Read Only Memory)やEPROM(ElectricalProgrammable Read Only Memory)に代わる不揮発性メモリのフラッシュROMが使用されるようになってきた。このフラッシュROMは、不揮発性メモリでありながら、電気的に消去及び書き込みが可能であるため、ROMやEPROMと異なり、素子を交換することなく、書き込まれているデータの書き換えが可能である。この書換方法としては、フラッシュライタを接続し、フラッシュROMを書き換える方法と、専用の書換プログラムによって書き換える方法とが一般的である。
【0003】
通常の印刷装置を一例として、専用のフラッシュROM書換プログラムによる書換方法について説明する。通常の印刷装置は、画像情報をビットマップデータに変換するビデオコントローラと、その画素データに基づいて画像を形成し記録媒体上に転写定着するプリンタエンジンとから構成されている。ここで、ビデオコントローラとプリンタエンジンとの間のインターフェースの一例を以下に説明する。
【0004】
図1は、印刷装置におけるビデオコントローラ10とプリンタエンジン20とを接続するインターフェース(以下、ビデオインターフェース)を示すブロック図である。また、図2はビデオインターフェースの信号の一覧を示す図である。図2において、“出力”はプリンタエンジン20よりビデオコントローラ10への出力を示し、“入力”はビデオコントローラ10よりプリンタエンジン20への入力を示す。
【0005】
尚、プリンタエンジン20は、それを制御するエンジンコントローラ(CPU30、RAM31、フラッシュROM32)を含み、ビデオコントローラ10との信号の交換やプリンタエンジン20の制御はこのエンジンコントローラにより行われる。
【0006】
図2に示すビーム検知(/BD)信号は、プリンタエンジン20の主走査方向の水平同期信号であり、ビデオコントローラ10は、/BD信号の立ち下がりに同期して主走査1ライン分のビデオ(/VDO)信号を送出する。
【0007】
レディ(/RDY)信号は、プリンタエンジン20がビデオコントローラ10からプリント開始指令(/PRNT信号が「真」)によりプリント動作が可能になったことを示す信号である。この/RDY信号が「真」になる条件としては、定着ユニット内の加熱ローラの温度が適正(トナー像の紙への定着に十分な温度)、記録紙がジャム状態でない、ポリゴンミラーが既定回転数で正常に回転している、/BD信号が既定周期で正常に出力されているなどがある。
【0008】
トップオブページ(/TOP)信号は、プリンタエンジン20における副走査方向の印刷同期信号であり、ビデオコントローラ10はこの/TOP信号の立ち下がりに同期して副走査方向の画像書き出し位置を設定する。この例では、給紙センサによって記録紙の先端を検知した後、この記録紙が転写ローラに到達するまでの時間と、レーザ光により感光体上に形成された潜像が感光体ドラムの回転により転写ローラに到達するまでの時間とが等しくなるように給紙センサを配置している。このため、プリンタエンジン20は給紙センサからの給紙センサ信号(PFSNS)が「真」になったのを検知すると、直ちに/TOP信号を1秒間、「真」にしている。
【0009】
ステータス(/STS)信号は、プリンタエンジン20がビデオコントローラ10に送信する16ビット単位のシリアル情報であり、この信号はステータスと呼ばれる。
【0010】
コンディションチェンジレポート(/CCRT)信号は、予め指定されているプリンタ内部のステータスが変化したことをビデオコントローラ10に通知する信号である。
【0011】
プリント(/PRNT)信号は、ビデオコントローラ10がプリンタエンジン20に対してプリント動作の開始を指令する信号である。但し、連続プリントの場合は、プリント動作の継続を意味することになる。
【0012】
コントローラパワーレディ(/CPRDY)信号は、ビデオコントローラ10に電源が供給され、ビデオコントローラ10のイニシャライズが完了し、プリンタエンジン20との間でコマンドとステータスの通信が可能になったことを示す信号である。
【0013】
ビデオ(/VDO)信号は、プリンタエンジン20が印刷すべき画像信号を示している。この画像信号は、ビデオコントローラ10がホストコンピュータより受け取った画像コードデータをドットデータに変換して送出した信号である。
【0014】
コマンド(/CMD)信号は、ビデオコントローラ10よりプリンタエンジン20に送信される16ビット単位のシリアル情報であり、コマンドと呼ばれる。
【0015】
クロック(/SCLK)信号は、/CMD信号及び/STS信号の送信を行う場合の、シリアルデータの同期クロックである。
【0016】
リセット(/RESET)信号は、ビデオコントローラ10からプリンタエンジン20へプリンタの初期化を要求する信号である。この信号が既定時間以上、LOWレベルであれば、プリンタエンジン20はエンジンを初期化する。
【0017】
次に、上述のシリアル通信により送受信される、ビデオコントローラ10からプリンタエンジン20へのコマンド及びプリンタエンジン20からビデオコントローラ10へのステータスについて説明する。
【0018】
まず、シリアル通信により送受信される16ビットデータは、MSBを送受信データの最上位ビットとし、そのMSBから15番目のビットを送受信データの最下位ビットとし、LSBを奇数パリティビットとして定義する。
【0019】
上述したデータ形式で、1ワード(16ビット)のコマンドが/SCLK信号に同期してビデオコントローラ10からプリンタエンジン20ヘ与えられると、プリンタエンジン20は1ワードのステータスをビデオコントローラ10へ返送する。このコマンドには、プリンタエンジン20のステータス(状態)を調べるためのステータス要求コマンドと、プリンタエンジン20へ何らかの動作を行うように指令する実行コマンドとが含まれている。
【0020】
フラッシュROMを書き換える動作では、上記/CMD信号、/STS信号、/SCLKを使用し、シリアル通信によりビデオコントローラ10からプリンタエンジン20のRAM31に書き換えを行うデータを転送し、プリンタエンジン20のCPU30が書換プログラムに従って、フラッシュROM32のデータをRAM31のデータで書き換える方法が一般的である。
【0021】
【発明が解決しようとする課題】
しかしながら、上記従来例では、フラッシュROM32を書き換えるときに、プリンタエンジン20に搭載されるフラッシュROM32は通常の画像形成動作を行うプログラムが消去されていること、書き換えを行うフラッシュROM上のプログラムは書き換え時に実行できないため、書き換えを行うためのプログラムは書き換えを行わないROM上にあるプログラムを実行する、或いは書換プログラムをRAM31上に展開し、RAM31上でプログラムを実行し、フラッシュROMを書き換える方法を取る必要がある。
【0022】
一般的に、プリンタエンジン20に搭載されるRAM31の容量はROM容量に比べて少ないため、一度に全ての書換プログラムをRAM31にダウンロードして書き換えることはできず、プログラムをRAM31上にダウンロードしながらプログラムを書き換えていくという動作が必要になる。そのため、通常の画像形成動作とは異なる特殊な動作を行う必要がある。
【0023】
また、フラッシュROM32の書き換えにかかる時間は、書き換えに用いられるデータをプリンタエンジン20のRAM31に転送する時間と、プログラムによる書き換え時間であり、一般的に書き換えに用いるデータをプリンタエンジン20へ転送する時間が多くを占めている。
【0024】
本発明は、上記課題を解決するためになされたもので、画像形成装置のコントローラ部とエンジン部との間のシリアル通信におけるデータ転送時間を短縮することを目的とする。
【0025】
【課題を解決するための手段】
上記目的を達成するために、本発明は、不揮発性メモリを備え、画像形成を行うエンジン部と、前記エンジン部へシリアル通信により画像データを送信するコントローラ部とで構成される画像形成装置におけるデータ転送方法であって、前記コントローラ部からエンジン部へデータを転送して前記不揮発性メモリを書き換える際に、前記シリアル通信の所定の制御信号によりデータ転送の同期を取る工程と、同期して転送されたデータで前記不揮発性メモリを書き換える工程とを有することを特徴とする。
【0026】
【発明の実施の形態】
以下、図面を参照しながら本発明に係る実施の形態を詳細に説明する。
【0027】
本実施形態に記載されている構成要素の大きさ、配置、処理のフローチャート等は、特に特定的な記載がない限り、本発明の範囲をそれらのみに限定する主旨のものではない。
【0028】
尚、本実施形態では、画像形成装置として印刷装置を例に説明するが、本発明はこれだけに限らず、コントローラ部とエンジン部との間でシリアル通信によりデータ転送を行う複写機やファクシミリ装置などに適用しても良い。
【0029】
図3は、本実施形態における印刷装置の構成を示すブロック図である。図3に示すように、印刷装置はコントローラ部310とエンジン部320とを有する。コントローラ部310において、CPU301はROM303に格納されている制御プログラムを実行し、外部装置(ホストコンピュータ等)との外部インターフェース330を介して外部装置からページ記述言語(PDL)等で記述された画像情報(コードデータ)を受信する。受信された画像情報は画像処理部304へと入力される。画像処理部304では、その画像情報をRAM305に格納し、画像情報の解析を行う。一方、RAM302は、CPU301が処理を実行時に使用するワークエリアやレジスタなどが定義されているメモリである。また、ROM306には画像情報の値に対応したフォントデータが格納されている。
【0030】
画像処理部304は、対応するフォントデータをROM306から読み出し、受信した画像情報をエンジン部320で印字されるドットのビデオデータに変換し、フレームメモリ307に格納する。このフレームメモリ307に1ページ分のビデオデータが格納されると、CPU301はビデオインターフェース340を介してエンジン部320に印字指令を送出すると共にエンジン部320からの主走査及び副走査同期信号に同期してフレームメモリ307に格納されたビデオデータをエンジン部320に送出する。
【0031】
一方、エンジン部320は、図1に示したプリンタエンジンと同様に、内部にCPU或いはマイクロプロセッサ(MPU)、RAM、フラッシュROMなどで構成された制御部321を含み、マイクロプロセッサがフラッシュROMに格納されたエンジン部の制御プログラムに従って画像形成プロセスを制御するものである。また、フラッシュROMに書き込まれている制御プログラムは、エンジン部320の制御に変更が発生した場合、その制御プログラムの変更が行われる。このフラッシュROMの書き換えについては更に後述する。
【0032】
尚、本実施形態における印刷装置のコントローラ部310とエンジン部320とを接続するビデオインターフェース340は、図1に示したインターフェースと同様であり、またコントローラ部310とエンジン部320との間で授受される信号も図2に示したものと同様であり、その説明は省略する。
【0033】
図4は、本実施形態における印刷装置の構造を示す断面図である。尚、図3と同一の機能を有するものは同じ符号を付けている。また、印刷装置本体400として、本実施形態ではレーザビームプリンタの場合を示している。
【0034】
図4において、401は光学ユニットであり、ビデオインターフェース340を介して送出されたビデオデータに従ってレーザ光を変調する。402は折返しミラーであり、光学ユニット401から照射されたレーザ光を反射する。403は感光体ドラムであり、折返しミラー402で反射されたレーザ光が回転多面鏡(図示せず)によって走査され、感光体ドラム403上に静電画像を形成する。404は帯電器であり、感光体ドラム403を一様に帯電させる。405は現像器であり、感光体ドラム403上の静電画像をトナー像に現像する。
【0035】
406は転写帯電器であり、感光体ドラム403上のトナー像を記録紙に転写する。407はクリーナであり、転写後に感光体ドラム403上に残留しているトナーを回収する。409aは上段給紙ローラであり、408aの上段カセットに収容された記録紙を給紙する。409bは下段給紙ローラであり、408bの下段用紙カセットに収容された記録紙を給紙する。410は給紙搬送ローラであり、給紙された記録紙を転写位置まで搬送する。411はTOPセンサであり、給紙された記録紙の有無を検知する。412は定着器であり、記録紙に転写されたトナー像を加熱加圧することで、記録紙に定着させる。413は排紙センサであり、定着器412から排紙された用紙の有無を検知する。414は配置トレイであり、排出される記録用紙を受ける。
【0036】
[第1の実施形態]
ここで、上述の印刷装置のコントローラ部310とエンジン部320とを接続するビデオインターフェース340を経由し、エンジン部320内のフラッシュROMに格納されている制御プログラムのコード(以下、プログラムコード)を書き換える手順について説明する。
【0037】
図5は、エンジン部320内のフラッシュROMに格納されているプログラムコードを書き換える動作を示すフローチャートである。まず、ステップS501において、コントローラ部310の外部インターフェース330を介してホストコンピュータから或いはコントローラ部310の操作パネル(図示せず)から、エンジン部320のプログラムコードを書き換える指示があると、コントローラ部310のCPU301は、エンジン部320の制御部321にビデオインターフェース340を介してプログラムコードの書き換えモードを指定するコマンドを送出する。
【0038】
次に、ステップS502において、エンジン部320の制御部321からプログラムコードの書き換えモードに移行した旨のステータスを受信すると、CPU301は制御部321に対して実際にプログラムコードを書き換えるフラッシュROMの書込み開始アドレスを指定するコマンドを送出する。そして、ステップS503において、コントローラ部310のCPU301はホストコンピュータから送信されたプログラムコードのデータを、エンジン部320の制御部321に対してシリアル通信によるコマンドとして送信する。
【0039】
尚、プログラムコードのデータは、フラッシュROM内のプログラムコードのデータ1つに対して1つのアドレスを指定して送信されるのではなく、上述したステップS502で指定したアドレスを先頭として、予め決められたデータ数分が送信されるものとする。
【0040】
次に、ステップS504では、予め決められた所定のデータ数分を送信したか否かを判定する。その結果、予め決められた所定のデータ数分を送信していない場合はステップS503に戻り、プログラムコードのデータを送信し、その後、予め決められた所定のデータ数分のデータを送信するまで上述の動作を繰り返す。そして、予め決められた所定のデータ数分を送信したと判定した場合は、このプログラムコードのデータ送信を完了する。
【0041】
尚、上述のデータ送信は、シリアル通信路(ビデオインターフェース340)を介して行われ、そのシリアル通信の同期を取る信号として、/CCRT信号を用いる。この/CCRT信号は、通常の画像形成動作時はエンジン部320内部の状態が変化したことをエンジン部320の制御部321がコントローラ部310に通知するための信号である。具体的には、コントローラ部310がデータ送信時に、/CCRT信号がオフ(HIGHレベル)であれば、エンジン部320がデータを受信できない状態にあると判断してデータ送信を行わず、またオン(LOWレベル)であればエンジン部320がデータを受信できる状態にあると判断してデータ送信を行うように制御することで、シリアル通信の同期を取るものである。
【0042】
次に、上述した図5のステップS503及びS504でコントローラ部310とエンジン部320とがシリアル通信により同期を取りながら、コントローラ部310がフラッシュROMのプログラムコードの書込みデータをコマンドとして送信し、エンジン部320の制御部321が受信したデータでフラッシュROMのプログラムコードを書き換える動作について説明する。
【0043】
まず、コントローラ部310のCPU301が上述した図5に示したステップS501でプログラムコード書き換えモードを指定し、続くステップS502でプログラムコード書込み開始アドレスを指定した後、プログラムコードのデータを送信するステップS503及びS504の詳細な処理について説明する。尚、上述の/CCRT信号によるデータ送信時の同期制御については、上述した通りであり、ここでは省略する。
【0044】
図6は、第1の実施形態におけるコントローラ部310でのデータ送信処理を示すフローチャートである。まず、ステップS601において、コントローラ部310のCPU301はエンジン部320の制御部321にフラッシュROMを消去するコマンドを送信する。そして、ステップS602において、エンジン部320の制御部321から消去するコマンドに対するステータスを受け取る。
【0045】
次に、ステップS603において、CPU301はフラッシュROMを書き換えるプログラムコードのデータをコマンドとして送信し、続くステップS604において、制御部321からコマンドに対するステータスを受信する。そして、ステップS605〜S608において、受信したステータスに記録されたエラー発生情報によりエラーリカバリー処理を行う。
【0046】
ステップS605で、転送エラー情報を受信した場合にはステップS606へ進み、コマンドの再送処理を行う。この時、転送エラー情報を受信した回数が、所定のリトライ回数を超えない場合はステップS603に戻り、コマンドの再送を行い、リトライ回数が所定の回数を超えた場合はこの処理を終了する。
【0047】
また、ステップS607で、書込みエラー情報を受信した場合にはステップS608へ進み、所定のリトライ回数を超えない場合はステップS601に戻り、書込みデータを送信し直す処理を行い、所定のリトライ回数を超えた場合はこの処理を終了する。
【0048】
そして、ステップS609において、予め決められた所定のデータ数分、書込みデータをコマンドとして送信したか否かを判断する。ここで、所定のデータ数分、送信していなければステップS603に戻り、全てのデータを送信するまで上述した処理を繰り返す。
【0049】
次に、エンジン部320の制御部321において、コントローラ部310からシリアル通信により送られてくるフラッシュROMのプログラムコードをRAMに格納することなく、コントローラ部310とシリアル通信の同期を取りながら書き換える処理について説明する。
【0050】
尚、この処理は、上述の図6に示したコントローラ部310のデータ送信処理に対応するエンジン部320の制御部321が実行するフラッシュROMの書き換え処理である。また、上述した/CCRT信号は、初期状態ではオン(LOWレベル)で、コントローラ部310からプログラムコード書き換えモードを指定するコマンドを受信すると、上述した同期処理を行いながらアドレス、データの受信を制御するものである。
【0051】
図7は、エンジン部320でのフラッシュROMの書き換え処理を示すフローチャートである。まず、ステップS701において、エンジン部320の制御部321はコントローラ部310からシリアル通信でコマンドとして送られてきたプログラムコードのデータを受信する。次に、ステップS702において、上述した/CCRT信号をオフ(HIGHレベル)にして、次のコマンドを受信する準備ができていないことを通知する。そして、ステップS703において、ステータスをコントローラ部310へ返信する。次に、ステップS704において、上述のステップS701で受信したコマンドに応じてプログラムコードデータの消去又は書き込み処理を実行する。
【0052】
尚、第1の実施形態では、転送エラーや書き込みエラーなどのエラー発生情報をステータスに記録して返信するものである。
【0053】
次に、ステップS705において、/CCRT信号をオン(LOWレベル)にして、次のシリアル通信のコマンドを受信する準備ができたことをコントローラ部310に通知する。そして、所定のデータ数分、書き換えデータを受信したか判定し、受信していなければステップS701に戻り、全てのデータを受信するまで上述した処理を繰り返す。
【0054】
このように、/CCRT信号を同期制御に使用することにより、コントローラ部310はエンジン部320が確実に受信可能であることを判断することができ、次のシリアル通信までのウェイト時間を短縮することができる。
【0055】
従って、フラッシュROMの制御プログラムのコードを転送する際の通信速度を向上させることが可能となる。
【0056】
図8は、画像形成動作とフラッシュROMの書き換え動作とを示すタイミングチャートである。ここでは、2つの動作時におけるシリアル通信によるコマンド及びステータスの送受信と/CCRT信号とのタイミングチャートを示しており、コントローラ部310からのコマンドに対するエンジン部320のステータスが返信される構成である。
【0057】
図8に示すように、通常の画像形成動作時では、エンジン部320の内部状態に変化が生じると、上述の/CCRT信号がオフ(HIGHレベル)状態になり、/CCRT信号がオフの状態を受け取ったコントローラ部310はエンジン部320の状態を要求するコマンドを送信する。そして、エンジン部310の制御部321が要求されたコマンドに対する、エンジン部320の状態をステータスに記録して返信する。
【0058】
一方、フラッシュROM書込み動作時では、エンジン部320の制御部321は/CCRT信号をコントローラ部310からのシリアル通信のデータ受信準備完了通知信号として使用し、コントローラ部310は/CCRT信号がオフからオンになったタイミングでコマンドを送出し、エンジン部320では所定のプログラムコードデータをコマンドとして受信し、そのデータのフラッシュROMへの書き込みを実行する。
【0059】
[第2の実施形態]
次に、図面を参照しながら本発明に係る第2の実施形態を詳細に説明する。
【0060】
前述した第1の実施形態では、コントローラ部310はエンジン部320からのステータスにより、転送エラーや書き込みエラーなどのエラー発生情報を取得していたが、第2の実施形態では上述した/CCRT信号をエラー検知にも使用するものである。
【0061】
尚、第2の実施形態における印刷装置の構成は、図3及び図4に示した第1の実施形態の構成と同様であり、その説明は省略する。
【0062】
また、コントローラ部310とエンジン部320とを接続するビデオインターフェース340を経由し、エンジン部320内のフラッシュROMに格納されている制御プログラムのコード(以下、プログラムコード)を書き換える、図5に示したステップS501及びS502までの処理は第1の実施形態と同様であり、その説明は省略する。また、/CCRT信号をシリアル通信の同期を制御する信号として用いることは第1の実施形態と同様である。
【0063】
ここでは、第2の実施形態の特徴である、コントローラ部310からエンジン部320へ送信したコマンドに対してエンジン部320がステータスを返送する代わりにシリアル通信の同期制御に用いる/CCRT信号を、更にエラー発生をコントローラ部310に通知するエラー発生情報として機能させる処理について説明する。
【0064】
図9は、エンジン部320でのフラッシュROMの書き換え処理を示すフローチャートである。まず、ステップS901において、エンジン部320の制御部321はコントローラ部310からシリアル通信によりコマンドとして送られてきたプログラムコードのデータを受信する。そして、ステップS902において、上述した/CCRT信号をオフ(HIGHレベル)にして、データを受信したこと、次のデータの受信準備ができていない状態であることをコントローラ部310に通知する。次に、ステップS903において、受信したコマンドにデータの誤りがあるか否かを通常のパリティチェックにより判定する。ここで、データの誤りがあればステップS904へ進み、コントローラ部310が通信エラーと検知する時間の間待ち、時間が経過すると、ステップS907へ進む。
【0065】
また、上述のステップS903において、受信したコマンドにデータの誤りがなければステップS905へ進み、上述のステップS901で受信したコマンドに応じてプログラムコードデータの消去又は書き込み処理を実行する。そして、ステップS906において、上述のステップS905で消去又は書き込みエラーなどが発生したか否かを判定し、エラーが発生していれば、ステップS909へ進み、コントローラ部310がエラー発生と検知する時間待ち、時間が経過するとステップS907へ進む。また、エラーが発生していなければステップS907へ進み、/CCRT信号をオン(LOWレベル)にして、次のコマンドを受信する準備ができたことをコントローラ部310に通知する。そして、ステップS908において、所定のデータ数分、書き換えデータを受信したか判定し、受信していなければステップS901に戻り、全てのデータを受信するまで上述した処理を繰り返す。
【0066】
このように、/CCRT信号をシリアル通信の同期信号に用いることにより、コントローラ部310のコマンドに対してエンジン部320がステータスを返信する処理を省くことができるため、通常のシリアル通信のみによるデータ転送に比較して、データ通信量を削減し高速にデータを転送することができる。
【0067】
次に、コントローラ部310からエンジン部320へフラッシュROMの書き換えデータを送信時に、エンジン部320で発生したエラーを/CCRT信号を用いて検知する処理について説明する。第2の実施形態では、フラッシュROM書換えモードにおいて、コントローラ部310はエンジン部320でプログラムを書き換える処理が正常に行われているか否かを/CCRT信号が変化する時間をモニタすることにより検知するものである。
【0068】
図10は、コントローラ部310によるエラー検知処理を示すフローチャートである。まず、ステップS1001において、コントローラ部のCPU301はコマンドをエンジン部320の制御部321へ送信する。そして、ステップS1002及びS1003において、エンジン部320の制御部321からの/CCRT信号が規定時間1以内にオン(LOWレベル)になるのを待つ。尚、規定時間1とは、エンジン部320でフラッシュROMの消去/書込みにかかる時間が個々のフラッシュROMにより規定されていることから、データの送受信に必要な時間と、フラッシュROMの消去/書換えの場合はフラッシュROMの消去/書換え動作にかかる最低の時間とを合計した時間である。
【0069】
ここで、規定時間1以内にエンジン部320の制御部321が/CCRT信号をオンにすると、コントローラ部310はコマンド送信にデータ誤りが発生したと判断し、ステップS1001に戻り、同じコマンドを再送信する。また、ステップS1003において、/CCRT信号が規定時間1を超過してもオンにならなければステップS1004へ進み、続くステップS1005と共に/CCRT信号が/CCRT信号の変化をモニタする最大の待ち時間である規定時間2以内にオンになるのを待つ。ここで、/CCRT信号が規定時間2を超過してもオンにならなければ、エンジン部320の制御が正しく行われていないと判断し、この処理を終了する。
【0070】
また、ステップS1005において、/CCRT信号が規定時間2以内にオンになればステップS1006へ進み、データの送受信に必要な時間とフラッシュROMの消去/書換え動作にかかる最大の時間とを合計した時間である規定時間3以内かをチェックする。ここで、規定時間3を超過していれば、フラッシュROMの消去/書込み動作の場合はフラッシュROMの消去/書込みに失敗した、制御コマンド、データ、アドレスの受取り動作の場合は、コマンド送信にデータ誤りが発生したと判断し、ステップS1001に戻り、同じコマンドを再送信する。また、規定時間3以内であれば、データ転送及びコマンドの処理が正常に終了したと判断し、ステップS1007へ進み、全てのコマンドを送信したかチェックし、全てのコマンドを送信し終わっていなければステップS1001に戻り、次のコマンドを送信する、上述した処理を繰り返す。
【0071】
このように、コントローラ部310は/CCRT信号によりエンジン部320で発生したデータ通信エラーやデータ処理エラーを検知することができる。
【0072】
尚、/CCRT信号によってコントローラ部310がモニタする規定時間は、フラッシュROMに書き込むデータサイズ、消去を行うブロックサイズ、書換えデータの転送中かどうかにより、それぞれモニタする時間を変更しても良いことは言うまでもない。
【0073】
図11は、第2の実施形態におけるエンジン部320のフラッシュROMを書換える場合のコントローラ部310とエンジン部320のシリアル通信のタイミングチャートである。
【0074】
以上説明したように、実施形態によれば、コントローラ部310からエンジン部320にプログラムコードデータを転送し、エンジン部310の制御部321のフラッシュROM(不揮発性メモリ)の書き換えを行うような場合、シリアル通信における書き換えデータの転送に関する処理を簡略化し、不揮発性メモリの書き換えを高速に実行することができる。
【0075】
[他の実施形態]
尚、本発明は複数の機器(例えば、ホストコンピュータ,インターフェース機器,リーダ,プリンタなど)から構成されるシステムに適用しても、1つの機器からなる装置(例えば、複写機,ファクシミリ装置など)に適用しても良い。
【0076】
また、本発明の目的は前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記録媒体を、システム或いは装置に供給し、そのシステム或いは装置のコンピュータ(CPU若しくはMPU)が記録媒体に格納されたプログラムコードを読出し実行することによっても、達成されることは言うまでもない。
【0077】
この場合、記録媒体から読出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記録媒体は本発明を構成することになる。
【0078】
このプログラムコードを供給するための記録媒体としては、例えばフロッピー(登録商標)ディスク,ハードディスク,光ディスク,光磁気ディスク,CD−ROM,CD−R,磁気テープ,不揮発性のメモリカード,ROMなどを用いることができる。
【0079】
また、コンピュータが読出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているOS(オペレーティングシステム)などが実際の処理の一部又は全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【0080】
更に、記録媒体から読出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPUなどが実際の処理の一部又は全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【0081】
【発明の効果】
以上説明したように、本発明によれば、画像形成装置のコントローラ部とエンジン部との間のシリアル通信におけるデータ転送時間を短縮することができる。
【図面の簡単な説明】
【図1】印刷装置におけるビデオコントローラ10とプリンタエンジン20とを接続するインターフェースを示すブロック図である。
【図2】ビデオインターフェースの信号の一覧を示す図である。
【図3】本実施形態における印刷装置の構成を示すブロック図である。
【図4】本実施形態における印刷装置の構造を示す断面図である。
【図5】エンジン部320内のフラッシュROMに格納されているプログラムコードを書き換える動作を示すフローチャートである。
【図6】第1の実施形態におけるコントローラ部310でのデータ送信処理を示すフローチャートである。
【図7】エンジン部320でのフラッシュROMの書き換え処理を示すフローチャートである。
【図8】画像形成動作とフラッシュROMの書き換え動作とを示すタイミングチャートである。
【図9】第2の実施形態におけるエンジン部320でのフラッシュROMの書換処理を示すフローチャートである。
【図10】コントローラ部310によるエラー検知処理を示すフローチャートである。
【図11】第2の実施形態におけるエンジン部320のフラッシュROMを書換える場合のコントローラ部310とエンジン部320のシリアル通信のタイミングチャートである。
【符号の説明】
301 CPU
302 RAM
303 ROM
304 画像処理部
305 RAM
306 ROM
307 フレームメモリ
310 コントローラ部
320 エンジン部
321 制御部
330 外部インターフェース(I/F)
340 ビデオインターフェース(I/F)
【発明の属する技術分野】
本発明は、シリアル通信によりデータの転送を行い、不揮発性メモリに格納されたデータを転送されたデータで書き換える技術に関する。
【0002】
【従来の技術】
近年、記録媒体としてROM(Read Only Memory)やEPROM(ElectricalProgrammable Read Only Memory)に代わる不揮発性メモリのフラッシュROMが使用されるようになってきた。このフラッシュROMは、不揮発性メモリでありながら、電気的に消去及び書き込みが可能であるため、ROMやEPROMと異なり、素子を交換することなく、書き込まれているデータの書き換えが可能である。この書換方法としては、フラッシュライタを接続し、フラッシュROMを書き換える方法と、専用の書換プログラムによって書き換える方法とが一般的である。
【0003】
通常の印刷装置を一例として、専用のフラッシュROM書換プログラムによる書換方法について説明する。通常の印刷装置は、画像情報をビットマップデータに変換するビデオコントローラと、その画素データに基づいて画像を形成し記録媒体上に転写定着するプリンタエンジンとから構成されている。ここで、ビデオコントローラとプリンタエンジンとの間のインターフェースの一例を以下に説明する。
【0004】
図1は、印刷装置におけるビデオコントローラ10とプリンタエンジン20とを接続するインターフェース(以下、ビデオインターフェース)を示すブロック図である。また、図2はビデオインターフェースの信号の一覧を示す図である。図2において、“出力”はプリンタエンジン20よりビデオコントローラ10への出力を示し、“入力”はビデオコントローラ10よりプリンタエンジン20への入力を示す。
【0005】
尚、プリンタエンジン20は、それを制御するエンジンコントローラ(CPU30、RAM31、フラッシュROM32)を含み、ビデオコントローラ10との信号の交換やプリンタエンジン20の制御はこのエンジンコントローラにより行われる。
【0006】
図2に示すビーム検知(/BD)信号は、プリンタエンジン20の主走査方向の水平同期信号であり、ビデオコントローラ10は、/BD信号の立ち下がりに同期して主走査1ライン分のビデオ(/VDO)信号を送出する。
【0007】
レディ(/RDY)信号は、プリンタエンジン20がビデオコントローラ10からプリント開始指令(/PRNT信号が「真」)によりプリント動作が可能になったことを示す信号である。この/RDY信号が「真」になる条件としては、定着ユニット内の加熱ローラの温度が適正(トナー像の紙への定着に十分な温度)、記録紙がジャム状態でない、ポリゴンミラーが既定回転数で正常に回転している、/BD信号が既定周期で正常に出力されているなどがある。
【0008】
トップオブページ(/TOP)信号は、プリンタエンジン20における副走査方向の印刷同期信号であり、ビデオコントローラ10はこの/TOP信号の立ち下がりに同期して副走査方向の画像書き出し位置を設定する。この例では、給紙センサによって記録紙の先端を検知した後、この記録紙が転写ローラに到達するまでの時間と、レーザ光により感光体上に形成された潜像が感光体ドラムの回転により転写ローラに到達するまでの時間とが等しくなるように給紙センサを配置している。このため、プリンタエンジン20は給紙センサからの給紙センサ信号(PFSNS)が「真」になったのを検知すると、直ちに/TOP信号を1秒間、「真」にしている。
【0009】
ステータス(/STS)信号は、プリンタエンジン20がビデオコントローラ10に送信する16ビット単位のシリアル情報であり、この信号はステータスと呼ばれる。
【0010】
コンディションチェンジレポート(/CCRT)信号は、予め指定されているプリンタ内部のステータスが変化したことをビデオコントローラ10に通知する信号である。
【0011】
プリント(/PRNT)信号は、ビデオコントローラ10がプリンタエンジン20に対してプリント動作の開始を指令する信号である。但し、連続プリントの場合は、プリント動作の継続を意味することになる。
【0012】
コントローラパワーレディ(/CPRDY)信号は、ビデオコントローラ10に電源が供給され、ビデオコントローラ10のイニシャライズが完了し、プリンタエンジン20との間でコマンドとステータスの通信が可能になったことを示す信号である。
【0013】
ビデオ(/VDO)信号は、プリンタエンジン20が印刷すべき画像信号を示している。この画像信号は、ビデオコントローラ10がホストコンピュータより受け取った画像コードデータをドットデータに変換して送出した信号である。
【0014】
コマンド(/CMD)信号は、ビデオコントローラ10よりプリンタエンジン20に送信される16ビット単位のシリアル情報であり、コマンドと呼ばれる。
【0015】
クロック(/SCLK)信号は、/CMD信号及び/STS信号の送信を行う場合の、シリアルデータの同期クロックである。
【0016】
リセット(/RESET)信号は、ビデオコントローラ10からプリンタエンジン20へプリンタの初期化を要求する信号である。この信号が既定時間以上、LOWレベルであれば、プリンタエンジン20はエンジンを初期化する。
【0017】
次に、上述のシリアル通信により送受信される、ビデオコントローラ10からプリンタエンジン20へのコマンド及びプリンタエンジン20からビデオコントローラ10へのステータスについて説明する。
【0018】
まず、シリアル通信により送受信される16ビットデータは、MSBを送受信データの最上位ビットとし、そのMSBから15番目のビットを送受信データの最下位ビットとし、LSBを奇数パリティビットとして定義する。
【0019】
上述したデータ形式で、1ワード(16ビット)のコマンドが/SCLK信号に同期してビデオコントローラ10からプリンタエンジン20ヘ与えられると、プリンタエンジン20は1ワードのステータスをビデオコントローラ10へ返送する。このコマンドには、プリンタエンジン20のステータス(状態)を調べるためのステータス要求コマンドと、プリンタエンジン20へ何らかの動作を行うように指令する実行コマンドとが含まれている。
【0020】
フラッシュROMを書き換える動作では、上記/CMD信号、/STS信号、/SCLKを使用し、シリアル通信によりビデオコントローラ10からプリンタエンジン20のRAM31に書き換えを行うデータを転送し、プリンタエンジン20のCPU30が書換プログラムに従って、フラッシュROM32のデータをRAM31のデータで書き換える方法が一般的である。
【0021】
【発明が解決しようとする課題】
しかしながら、上記従来例では、フラッシュROM32を書き換えるときに、プリンタエンジン20に搭載されるフラッシュROM32は通常の画像形成動作を行うプログラムが消去されていること、書き換えを行うフラッシュROM上のプログラムは書き換え時に実行できないため、書き換えを行うためのプログラムは書き換えを行わないROM上にあるプログラムを実行する、或いは書換プログラムをRAM31上に展開し、RAM31上でプログラムを実行し、フラッシュROMを書き換える方法を取る必要がある。
【0022】
一般的に、プリンタエンジン20に搭載されるRAM31の容量はROM容量に比べて少ないため、一度に全ての書換プログラムをRAM31にダウンロードして書き換えることはできず、プログラムをRAM31上にダウンロードしながらプログラムを書き換えていくという動作が必要になる。そのため、通常の画像形成動作とは異なる特殊な動作を行う必要がある。
【0023】
また、フラッシュROM32の書き換えにかかる時間は、書き換えに用いられるデータをプリンタエンジン20のRAM31に転送する時間と、プログラムによる書き換え時間であり、一般的に書き換えに用いるデータをプリンタエンジン20へ転送する時間が多くを占めている。
【0024】
本発明は、上記課題を解決するためになされたもので、画像形成装置のコントローラ部とエンジン部との間のシリアル通信におけるデータ転送時間を短縮することを目的とする。
【0025】
【課題を解決するための手段】
上記目的を達成するために、本発明は、不揮発性メモリを備え、画像形成を行うエンジン部と、前記エンジン部へシリアル通信により画像データを送信するコントローラ部とで構成される画像形成装置におけるデータ転送方法であって、前記コントローラ部からエンジン部へデータを転送して前記不揮発性メモリを書き換える際に、前記シリアル通信の所定の制御信号によりデータ転送の同期を取る工程と、同期して転送されたデータで前記不揮発性メモリを書き換える工程とを有することを特徴とする。
【0026】
【発明の実施の形態】
以下、図面を参照しながら本発明に係る実施の形態を詳細に説明する。
【0027】
本実施形態に記載されている構成要素の大きさ、配置、処理のフローチャート等は、特に特定的な記載がない限り、本発明の範囲をそれらのみに限定する主旨のものではない。
【0028】
尚、本実施形態では、画像形成装置として印刷装置を例に説明するが、本発明はこれだけに限らず、コントローラ部とエンジン部との間でシリアル通信によりデータ転送を行う複写機やファクシミリ装置などに適用しても良い。
【0029】
図3は、本実施形態における印刷装置の構成を示すブロック図である。図3に示すように、印刷装置はコントローラ部310とエンジン部320とを有する。コントローラ部310において、CPU301はROM303に格納されている制御プログラムを実行し、外部装置(ホストコンピュータ等)との外部インターフェース330を介して外部装置からページ記述言語(PDL)等で記述された画像情報(コードデータ)を受信する。受信された画像情報は画像処理部304へと入力される。画像処理部304では、その画像情報をRAM305に格納し、画像情報の解析を行う。一方、RAM302は、CPU301が処理を実行時に使用するワークエリアやレジスタなどが定義されているメモリである。また、ROM306には画像情報の値に対応したフォントデータが格納されている。
【0030】
画像処理部304は、対応するフォントデータをROM306から読み出し、受信した画像情報をエンジン部320で印字されるドットのビデオデータに変換し、フレームメモリ307に格納する。このフレームメモリ307に1ページ分のビデオデータが格納されると、CPU301はビデオインターフェース340を介してエンジン部320に印字指令を送出すると共にエンジン部320からの主走査及び副走査同期信号に同期してフレームメモリ307に格納されたビデオデータをエンジン部320に送出する。
【0031】
一方、エンジン部320は、図1に示したプリンタエンジンと同様に、内部にCPU或いはマイクロプロセッサ(MPU)、RAM、フラッシュROMなどで構成された制御部321を含み、マイクロプロセッサがフラッシュROMに格納されたエンジン部の制御プログラムに従って画像形成プロセスを制御するものである。また、フラッシュROMに書き込まれている制御プログラムは、エンジン部320の制御に変更が発生した場合、その制御プログラムの変更が行われる。このフラッシュROMの書き換えについては更に後述する。
【0032】
尚、本実施形態における印刷装置のコントローラ部310とエンジン部320とを接続するビデオインターフェース340は、図1に示したインターフェースと同様であり、またコントローラ部310とエンジン部320との間で授受される信号も図2に示したものと同様であり、その説明は省略する。
【0033】
図4は、本実施形態における印刷装置の構造を示す断面図である。尚、図3と同一の機能を有するものは同じ符号を付けている。また、印刷装置本体400として、本実施形態ではレーザビームプリンタの場合を示している。
【0034】
図4において、401は光学ユニットであり、ビデオインターフェース340を介して送出されたビデオデータに従ってレーザ光を変調する。402は折返しミラーであり、光学ユニット401から照射されたレーザ光を反射する。403は感光体ドラムであり、折返しミラー402で反射されたレーザ光が回転多面鏡(図示せず)によって走査され、感光体ドラム403上に静電画像を形成する。404は帯電器であり、感光体ドラム403を一様に帯電させる。405は現像器であり、感光体ドラム403上の静電画像をトナー像に現像する。
【0035】
406は転写帯電器であり、感光体ドラム403上のトナー像を記録紙に転写する。407はクリーナであり、転写後に感光体ドラム403上に残留しているトナーを回収する。409aは上段給紙ローラであり、408aの上段カセットに収容された記録紙を給紙する。409bは下段給紙ローラであり、408bの下段用紙カセットに収容された記録紙を給紙する。410は給紙搬送ローラであり、給紙された記録紙を転写位置まで搬送する。411はTOPセンサであり、給紙された記録紙の有無を検知する。412は定着器であり、記録紙に転写されたトナー像を加熱加圧することで、記録紙に定着させる。413は排紙センサであり、定着器412から排紙された用紙の有無を検知する。414は配置トレイであり、排出される記録用紙を受ける。
【0036】
[第1の実施形態]
ここで、上述の印刷装置のコントローラ部310とエンジン部320とを接続するビデオインターフェース340を経由し、エンジン部320内のフラッシュROMに格納されている制御プログラムのコード(以下、プログラムコード)を書き換える手順について説明する。
【0037】
図5は、エンジン部320内のフラッシュROMに格納されているプログラムコードを書き換える動作を示すフローチャートである。まず、ステップS501において、コントローラ部310の外部インターフェース330を介してホストコンピュータから或いはコントローラ部310の操作パネル(図示せず)から、エンジン部320のプログラムコードを書き換える指示があると、コントローラ部310のCPU301は、エンジン部320の制御部321にビデオインターフェース340を介してプログラムコードの書き換えモードを指定するコマンドを送出する。
【0038】
次に、ステップS502において、エンジン部320の制御部321からプログラムコードの書き換えモードに移行した旨のステータスを受信すると、CPU301は制御部321に対して実際にプログラムコードを書き換えるフラッシュROMの書込み開始アドレスを指定するコマンドを送出する。そして、ステップS503において、コントローラ部310のCPU301はホストコンピュータから送信されたプログラムコードのデータを、エンジン部320の制御部321に対してシリアル通信によるコマンドとして送信する。
【0039】
尚、プログラムコードのデータは、フラッシュROM内のプログラムコードのデータ1つに対して1つのアドレスを指定して送信されるのではなく、上述したステップS502で指定したアドレスを先頭として、予め決められたデータ数分が送信されるものとする。
【0040】
次に、ステップS504では、予め決められた所定のデータ数分を送信したか否かを判定する。その結果、予め決められた所定のデータ数分を送信していない場合はステップS503に戻り、プログラムコードのデータを送信し、その後、予め決められた所定のデータ数分のデータを送信するまで上述の動作を繰り返す。そして、予め決められた所定のデータ数分を送信したと判定した場合は、このプログラムコードのデータ送信を完了する。
【0041】
尚、上述のデータ送信は、シリアル通信路(ビデオインターフェース340)を介して行われ、そのシリアル通信の同期を取る信号として、/CCRT信号を用いる。この/CCRT信号は、通常の画像形成動作時はエンジン部320内部の状態が変化したことをエンジン部320の制御部321がコントローラ部310に通知するための信号である。具体的には、コントローラ部310がデータ送信時に、/CCRT信号がオフ(HIGHレベル)であれば、エンジン部320がデータを受信できない状態にあると判断してデータ送信を行わず、またオン(LOWレベル)であればエンジン部320がデータを受信できる状態にあると判断してデータ送信を行うように制御することで、シリアル通信の同期を取るものである。
【0042】
次に、上述した図5のステップS503及びS504でコントローラ部310とエンジン部320とがシリアル通信により同期を取りながら、コントローラ部310がフラッシュROMのプログラムコードの書込みデータをコマンドとして送信し、エンジン部320の制御部321が受信したデータでフラッシュROMのプログラムコードを書き換える動作について説明する。
【0043】
まず、コントローラ部310のCPU301が上述した図5に示したステップS501でプログラムコード書き換えモードを指定し、続くステップS502でプログラムコード書込み開始アドレスを指定した後、プログラムコードのデータを送信するステップS503及びS504の詳細な処理について説明する。尚、上述の/CCRT信号によるデータ送信時の同期制御については、上述した通りであり、ここでは省略する。
【0044】
図6は、第1の実施形態におけるコントローラ部310でのデータ送信処理を示すフローチャートである。まず、ステップS601において、コントローラ部310のCPU301はエンジン部320の制御部321にフラッシュROMを消去するコマンドを送信する。そして、ステップS602において、エンジン部320の制御部321から消去するコマンドに対するステータスを受け取る。
【0045】
次に、ステップS603において、CPU301はフラッシュROMを書き換えるプログラムコードのデータをコマンドとして送信し、続くステップS604において、制御部321からコマンドに対するステータスを受信する。そして、ステップS605〜S608において、受信したステータスに記録されたエラー発生情報によりエラーリカバリー処理を行う。
【0046】
ステップS605で、転送エラー情報を受信した場合にはステップS606へ進み、コマンドの再送処理を行う。この時、転送エラー情報を受信した回数が、所定のリトライ回数を超えない場合はステップS603に戻り、コマンドの再送を行い、リトライ回数が所定の回数を超えた場合はこの処理を終了する。
【0047】
また、ステップS607で、書込みエラー情報を受信した場合にはステップS608へ進み、所定のリトライ回数を超えない場合はステップS601に戻り、書込みデータを送信し直す処理を行い、所定のリトライ回数を超えた場合はこの処理を終了する。
【0048】
そして、ステップS609において、予め決められた所定のデータ数分、書込みデータをコマンドとして送信したか否かを判断する。ここで、所定のデータ数分、送信していなければステップS603に戻り、全てのデータを送信するまで上述した処理を繰り返す。
【0049】
次に、エンジン部320の制御部321において、コントローラ部310からシリアル通信により送られてくるフラッシュROMのプログラムコードをRAMに格納することなく、コントローラ部310とシリアル通信の同期を取りながら書き換える処理について説明する。
【0050】
尚、この処理は、上述の図6に示したコントローラ部310のデータ送信処理に対応するエンジン部320の制御部321が実行するフラッシュROMの書き換え処理である。また、上述した/CCRT信号は、初期状態ではオン(LOWレベル)で、コントローラ部310からプログラムコード書き換えモードを指定するコマンドを受信すると、上述した同期処理を行いながらアドレス、データの受信を制御するものである。
【0051】
図7は、エンジン部320でのフラッシュROMの書き換え処理を示すフローチャートである。まず、ステップS701において、エンジン部320の制御部321はコントローラ部310からシリアル通信でコマンドとして送られてきたプログラムコードのデータを受信する。次に、ステップS702において、上述した/CCRT信号をオフ(HIGHレベル)にして、次のコマンドを受信する準備ができていないことを通知する。そして、ステップS703において、ステータスをコントローラ部310へ返信する。次に、ステップS704において、上述のステップS701で受信したコマンドに応じてプログラムコードデータの消去又は書き込み処理を実行する。
【0052】
尚、第1の実施形態では、転送エラーや書き込みエラーなどのエラー発生情報をステータスに記録して返信するものである。
【0053】
次に、ステップS705において、/CCRT信号をオン(LOWレベル)にして、次のシリアル通信のコマンドを受信する準備ができたことをコントローラ部310に通知する。そして、所定のデータ数分、書き換えデータを受信したか判定し、受信していなければステップS701に戻り、全てのデータを受信するまで上述した処理を繰り返す。
【0054】
このように、/CCRT信号を同期制御に使用することにより、コントローラ部310はエンジン部320が確実に受信可能であることを判断することができ、次のシリアル通信までのウェイト時間を短縮することができる。
【0055】
従って、フラッシュROMの制御プログラムのコードを転送する際の通信速度を向上させることが可能となる。
【0056】
図8は、画像形成動作とフラッシュROMの書き換え動作とを示すタイミングチャートである。ここでは、2つの動作時におけるシリアル通信によるコマンド及びステータスの送受信と/CCRT信号とのタイミングチャートを示しており、コントローラ部310からのコマンドに対するエンジン部320のステータスが返信される構成である。
【0057】
図8に示すように、通常の画像形成動作時では、エンジン部320の内部状態に変化が生じると、上述の/CCRT信号がオフ(HIGHレベル)状態になり、/CCRT信号がオフの状態を受け取ったコントローラ部310はエンジン部320の状態を要求するコマンドを送信する。そして、エンジン部310の制御部321が要求されたコマンドに対する、エンジン部320の状態をステータスに記録して返信する。
【0058】
一方、フラッシュROM書込み動作時では、エンジン部320の制御部321は/CCRT信号をコントローラ部310からのシリアル通信のデータ受信準備完了通知信号として使用し、コントローラ部310は/CCRT信号がオフからオンになったタイミングでコマンドを送出し、エンジン部320では所定のプログラムコードデータをコマンドとして受信し、そのデータのフラッシュROMへの書き込みを実行する。
【0059】
[第2の実施形態]
次に、図面を参照しながら本発明に係る第2の実施形態を詳細に説明する。
【0060】
前述した第1の実施形態では、コントローラ部310はエンジン部320からのステータスにより、転送エラーや書き込みエラーなどのエラー発生情報を取得していたが、第2の実施形態では上述した/CCRT信号をエラー検知にも使用するものである。
【0061】
尚、第2の実施形態における印刷装置の構成は、図3及び図4に示した第1の実施形態の構成と同様であり、その説明は省略する。
【0062】
また、コントローラ部310とエンジン部320とを接続するビデオインターフェース340を経由し、エンジン部320内のフラッシュROMに格納されている制御プログラムのコード(以下、プログラムコード)を書き換える、図5に示したステップS501及びS502までの処理は第1の実施形態と同様であり、その説明は省略する。また、/CCRT信号をシリアル通信の同期を制御する信号として用いることは第1の実施形態と同様である。
【0063】
ここでは、第2の実施形態の特徴である、コントローラ部310からエンジン部320へ送信したコマンドに対してエンジン部320がステータスを返送する代わりにシリアル通信の同期制御に用いる/CCRT信号を、更にエラー発生をコントローラ部310に通知するエラー発生情報として機能させる処理について説明する。
【0064】
図9は、エンジン部320でのフラッシュROMの書き換え処理を示すフローチャートである。まず、ステップS901において、エンジン部320の制御部321はコントローラ部310からシリアル通信によりコマンドとして送られてきたプログラムコードのデータを受信する。そして、ステップS902において、上述した/CCRT信号をオフ(HIGHレベル)にして、データを受信したこと、次のデータの受信準備ができていない状態であることをコントローラ部310に通知する。次に、ステップS903において、受信したコマンドにデータの誤りがあるか否かを通常のパリティチェックにより判定する。ここで、データの誤りがあればステップS904へ進み、コントローラ部310が通信エラーと検知する時間の間待ち、時間が経過すると、ステップS907へ進む。
【0065】
また、上述のステップS903において、受信したコマンドにデータの誤りがなければステップS905へ進み、上述のステップS901で受信したコマンドに応じてプログラムコードデータの消去又は書き込み処理を実行する。そして、ステップS906において、上述のステップS905で消去又は書き込みエラーなどが発生したか否かを判定し、エラーが発生していれば、ステップS909へ進み、コントローラ部310がエラー発生と検知する時間待ち、時間が経過するとステップS907へ進む。また、エラーが発生していなければステップS907へ進み、/CCRT信号をオン(LOWレベル)にして、次のコマンドを受信する準備ができたことをコントローラ部310に通知する。そして、ステップS908において、所定のデータ数分、書き換えデータを受信したか判定し、受信していなければステップS901に戻り、全てのデータを受信するまで上述した処理を繰り返す。
【0066】
このように、/CCRT信号をシリアル通信の同期信号に用いることにより、コントローラ部310のコマンドに対してエンジン部320がステータスを返信する処理を省くことができるため、通常のシリアル通信のみによるデータ転送に比較して、データ通信量を削減し高速にデータを転送することができる。
【0067】
次に、コントローラ部310からエンジン部320へフラッシュROMの書き換えデータを送信時に、エンジン部320で発生したエラーを/CCRT信号を用いて検知する処理について説明する。第2の実施形態では、フラッシュROM書換えモードにおいて、コントローラ部310はエンジン部320でプログラムを書き換える処理が正常に行われているか否かを/CCRT信号が変化する時間をモニタすることにより検知するものである。
【0068】
図10は、コントローラ部310によるエラー検知処理を示すフローチャートである。まず、ステップS1001において、コントローラ部のCPU301はコマンドをエンジン部320の制御部321へ送信する。そして、ステップS1002及びS1003において、エンジン部320の制御部321からの/CCRT信号が規定時間1以内にオン(LOWレベル)になるのを待つ。尚、規定時間1とは、エンジン部320でフラッシュROMの消去/書込みにかかる時間が個々のフラッシュROMにより規定されていることから、データの送受信に必要な時間と、フラッシュROMの消去/書換えの場合はフラッシュROMの消去/書換え動作にかかる最低の時間とを合計した時間である。
【0069】
ここで、規定時間1以内にエンジン部320の制御部321が/CCRT信号をオンにすると、コントローラ部310はコマンド送信にデータ誤りが発生したと判断し、ステップS1001に戻り、同じコマンドを再送信する。また、ステップS1003において、/CCRT信号が規定時間1を超過してもオンにならなければステップS1004へ進み、続くステップS1005と共に/CCRT信号が/CCRT信号の変化をモニタする最大の待ち時間である規定時間2以内にオンになるのを待つ。ここで、/CCRT信号が規定時間2を超過してもオンにならなければ、エンジン部320の制御が正しく行われていないと判断し、この処理を終了する。
【0070】
また、ステップS1005において、/CCRT信号が規定時間2以内にオンになればステップS1006へ進み、データの送受信に必要な時間とフラッシュROMの消去/書換え動作にかかる最大の時間とを合計した時間である規定時間3以内かをチェックする。ここで、規定時間3を超過していれば、フラッシュROMの消去/書込み動作の場合はフラッシュROMの消去/書込みに失敗した、制御コマンド、データ、アドレスの受取り動作の場合は、コマンド送信にデータ誤りが発生したと判断し、ステップS1001に戻り、同じコマンドを再送信する。また、規定時間3以内であれば、データ転送及びコマンドの処理が正常に終了したと判断し、ステップS1007へ進み、全てのコマンドを送信したかチェックし、全てのコマンドを送信し終わっていなければステップS1001に戻り、次のコマンドを送信する、上述した処理を繰り返す。
【0071】
このように、コントローラ部310は/CCRT信号によりエンジン部320で発生したデータ通信エラーやデータ処理エラーを検知することができる。
【0072】
尚、/CCRT信号によってコントローラ部310がモニタする規定時間は、フラッシュROMに書き込むデータサイズ、消去を行うブロックサイズ、書換えデータの転送中かどうかにより、それぞれモニタする時間を変更しても良いことは言うまでもない。
【0073】
図11は、第2の実施形態におけるエンジン部320のフラッシュROMを書換える場合のコントローラ部310とエンジン部320のシリアル通信のタイミングチャートである。
【0074】
以上説明したように、実施形態によれば、コントローラ部310からエンジン部320にプログラムコードデータを転送し、エンジン部310の制御部321のフラッシュROM(不揮発性メモリ)の書き換えを行うような場合、シリアル通信における書き換えデータの転送に関する処理を簡略化し、不揮発性メモリの書き換えを高速に実行することができる。
【0075】
[他の実施形態]
尚、本発明は複数の機器(例えば、ホストコンピュータ,インターフェース機器,リーダ,プリンタなど)から構成されるシステムに適用しても、1つの機器からなる装置(例えば、複写機,ファクシミリ装置など)に適用しても良い。
【0076】
また、本発明の目的は前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記録媒体を、システム或いは装置に供給し、そのシステム或いは装置のコンピュータ(CPU若しくはMPU)が記録媒体に格納されたプログラムコードを読出し実行することによっても、達成されることは言うまでもない。
【0077】
この場合、記録媒体から読出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記録媒体は本発明を構成することになる。
【0078】
このプログラムコードを供給するための記録媒体としては、例えばフロッピー(登録商標)ディスク,ハードディスク,光ディスク,光磁気ディスク,CD−ROM,CD−R,磁気テープ,不揮発性のメモリカード,ROMなどを用いることができる。
【0079】
また、コンピュータが読出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているOS(オペレーティングシステム)などが実際の処理の一部又は全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【0080】
更に、記録媒体から読出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPUなどが実際の処理の一部又は全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【0081】
【発明の効果】
以上説明したように、本発明によれば、画像形成装置のコントローラ部とエンジン部との間のシリアル通信におけるデータ転送時間を短縮することができる。
【図面の簡単な説明】
【図1】印刷装置におけるビデオコントローラ10とプリンタエンジン20とを接続するインターフェースを示すブロック図である。
【図2】ビデオインターフェースの信号の一覧を示す図である。
【図3】本実施形態における印刷装置の構成を示すブロック図である。
【図4】本実施形態における印刷装置の構造を示す断面図である。
【図5】エンジン部320内のフラッシュROMに格納されているプログラムコードを書き換える動作を示すフローチャートである。
【図6】第1の実施形態におけるコントローラ部310でのデータ送信処理を示すフローチャートである。
【図7】エンジン部320でのフラッシュROMの書き換え処理を示すフローチャートである。
【図8】画像形成動作とフラッシュROMの書き換え動作とを示すタイミングチャートである。
【図9】第2の実施形態におけるエンジン部320でのフラッシュROMの書換処理を示すフローチャートである。
【図10】コントローラ部310によるエラー検知処理を示すフローチャートである。
【図11】第2の実施形態におけるエンジン部320のフラッシュROMを書換える場合のコントローラ部310とエンジン部320のシリアル通信のタイミングチャートである。
【符号の説明】
301 CPU
302 RAM
303 ROM
304 画像処理部
305 RAM
306 ROM
307 フレームメモリ
310 コントローラ部
320 エンジン部
321 制御部
330 外部インターフェース(I/F)
340 ビデオインターフェース(I/F)
Claims (1)
- 不揮発性メモリを備え、画像形成を行うエンジン部と、前記エンジン部へシリアル通信により画像データを送信するコントローラ部とで構成される画像形成装置におけるデータ転送方法であって、
前記コントローラ部からエンジン部へデータを転送して前記不揮発性メモリを書き換える際に、前記シリアル通信の所定の制御信号によりデータ転送の同期を取る工程と、
同期して転送されたデータで前記不揮発性メモリを書き換える工程とを有することを特徴とするデータ転送方法。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003031315A JP2004237667A (ja) | 2003-02-07 | 2003-02-07 | データ転送方法 |
EP04002554A EP1445931A3 (en) | 2003-02-07 | 2004-02-05 | Data transfer method |
CNB200410003801XA CN100340413C (zh) | 2003-02-07 | 2004-02-06 | 数据传送方法 |
US10/772,360 US20040160639A1 (en) | 2003-02-07 | 2004-02-06 | Data transfer method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003031315A JP2004237667A (ja) | 2003-02-07 | 2003-02-07 | データ転送方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2004237667A true JP2004237667A (ja) | 2004-08-26 |
Family
ID=32653020
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003031315A Withdrawn JP2004237667A (ja) | 2003-02-07 | 2003-02-07 | データ転送方法 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20040160639A1 (ja) |
EP (1) | EP1445931A3 (ja) |
JP (1) | JP2004237667A (ja) |
CN (1) | CN100340413C (ja) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100594287B1 (ko) | 2004-07-05 | 2006-06-30 | 삼성전자주식회사 | 넓은 범위의 입력 전압에 대응 가능한 입력 버퍼 |
JP4665605B2 (ja) * | 2005-05-20 | 2011-04-06 | 富士ゼロックス株式会社 | 信号伝送装置及び信号伝送システム |
JP5383294B2 (ja) | 2008-04-25 | 2014-01-08 | キヤノン株式会社 | 画像形成装置 |
Family Cites Families (25)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TW231343B (ja) * | 1992-03-17 | 1994-10-01 | Hitachi Seisakusyo Kk | |
JP2863686B2 (ja) * | 1992-11-05 | 1999-03-03 | 株式会社テック | 印字装置 |
JPH07271699A (ja) * | 1994-03-31 | 1995-10-20 | Canon Inc | ネットワークを介して接続される周辺処理装置と情報処理装置並びにその周辺処理装置における制御方法とその周辺処理装置の制御方法 |
JPH08152978A (ja) * | 1994-11-29 | 1996-06-11 | Oki Data:Kk | プリンタエンジンの制御装置 |
JP3628738B2 (ja) | 1994-12-08 | 2005-03-16 | 株式会社リコー | 画像形成装置 |
JPH09118038A (ja) * | 1995-10-25 | 1997-05-06 | Canon Inc | 画像形成装置 |
JP3135205B2 (ja) * | 1995-11-01 | 2001-02-13 | シャープ株式会社 | 画像形成装置のメンテナンスシステム |
JPH1021026A (ja) * | 1996-07-01 | 1998-01-23 | Canon Inc | 画像形成装置 |
US6108492A (en) * | 1997-02-14 | 2000-08-22 | Toshiba America Information Systems | Remote monitoring system |
US6218954B1 (en) * | 1997-06-10 | 2001-04-17 | Honda Giken Kogyo Kabushiki Kaisha | Communication control device |
JPH11157746A (ja) * | 1997-11-27 | 1999-06-15 | Canon Inc | 画像処理装置 |
JPH11165450A (ja) * | 1997-12-03 | 1999-06-22 | Fuji Xerox Co Ltd | 印刷制御装置 |
JPH11272498A (ja) * | 1998-03-25 | 1999-10-08 | Denso Corp | 電子制御装置 |
JP2000089615A (ja) * | 1998-07-17 | 2000-03-31 | Canon Inc | 画像形成装置および画像形成装置の制御方法 |
JP4314702B2 (ja) * | 1998-11-26 | 2009-08-19 | セイコーエプソン株式会社 | 印刷装置、書込方法およびプリンタ |
TW436734B (en) * | 1998-12-24 | 2001-05-28 | Destiny Technology Corp | Printer firmware updating method |
JP3559724B2 (ja) * | 1999-06-24 | 2004-09-02 | キヤノン株式会社 | 画像形成装置と該画像形成装置の制御方法 |
JP4630453B2 (ja) | 1999-12-22 | 2011-02-09 | キヤノン株式会社 | 画像形成装置 |
JP2001306328A (ja) * | 2000-04-25 | 2001-11-02 | Kyocera Corp | ファームウエア更新履歴管理システム及び方法 |
JP3852738B2 (ja) * | 2000-05-01 | 2006-12-06 | 株式会社リコー | 画像処理装置 |
JP2002175194A (ja) | 2000-12-07 | 2002-06-21 | Ricoh Co Ltd | プログラムダウンロードシステム、プログラムダウンロード装置、画像形成装置、プログラムダウンロード方法およびその方法をコンピュータに実行させるプログラムを記録したコンピュータ読み取り可能な記録媒体 |
JP4242572B2 (ja) * | 2001-02-15 | 2009-03-25 | 株式会社リコー | 画像形成装置 |
JP3823777B2 (ja) * | 2001-08-14 | 2006-09-20 | コニカミノルタビジネステクノロジーズ株式会社 | 画像処理装置および画像処理方法 |
JP4136359B2 (ja) * | 2001-11-15 | 2008-08-20 | 株式会社ルネサステクノロジ | マイクロコンピュータ |
EP1376344A3 (en) * | 2002-06-17 | 2005-08-24 | Seiko Epson Corporation | Apparatus and method of rewriting firmware |
-
2003
- 2003-02-07 JP JP2003031315A patent/JP2004237667A/ja not_active Withdrawn
-
2004
- 2004-02-05 EP EP04002554A patent/EP1445931A3/en not_active Withdrawn
- 2004-02-06 US US10/772,360 patent/US20040160639A1/en not_active Abandoned
- 2004-02-06 CN CNB200410003801XA patent/CN100340413C/zh not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
EP1445931A3 (en) | 2005-12-28 |
US20040160639A1 (en) | 2004-08-19 |
CN1526564A (zh) | 2004-09-08 |
CN100340413C (zh) | 2007-10-03 |
EP1445931A2 (en) | 2004-08-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5512929A (en) | Image forming apparatus with fixer temperature control | |
JP4630453B2 (ja) | 画像形成装置 | |
US6099181A (en) | Printing control apparatus, printing method with the printing control apparatus, and storage medium storing a computer readable program | |
JP6406219B2 (ja) | 通信装置及び画像形成装置 | |
JP2004237667A (ja) | データ転送方法 | |
JP3466803B2 (ja) | レーザビームプリンタと印刷制御方法及びその装置 | |
JP2885924B2 (ja) | 画像形成装置 | |
US20020021914A1 (en) | Image forming apparatus and method of controlling image forming apparatus | |
JPH1063047A (ja) | 画像形成装置及びその制御装置及びその制御方法 | |
US11842064B2 (en) | Information processing apparatus, control device, and control method of control device | |
JPH02157926A (ja) | プリンタ装置 | |
JP2773120B2 (ja) | ページプリンタ | |
JP2008262439A (ja) | 情報処理装置、印刷文書調整処理プログラム及び記録媒体 | |
JP2001130084A (ja) | 画像処理方法及び画像処理装置 | |
JP2744463B2 (ja) | 印刷装置 | |
JP4095296B2 (ja) | 印刷装置およびその印刷制御方法 | |
JP2005085220A (ja) | インターフェース装置およびそれを用いた画像形成装置 | |
JP2000187567A (ja) | 印刷制御方法及び装置 | |
JP2001075453A (ja) | 画像処理システムおよび画像処理方法 | |
JPH077610A (ja) | 情報記録装置 | |
JP2000103533A (ja) | 画像形成装置およびその被記録材搬送制御方法 | |
JP2002014595A (ja) | 画像形成装置および画像形成方法 | |
JPH11296438A (ja) | メモリ制御装置及び方法 | |
JPH09277646A (ja) | 印刷装置とその制御方法及び印刷システム及びコンピュータ可読メモリ | |
JPH11268370A (ja) | 印刷制御装置、印刷制御方法、及び記録媒体 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A300 | Application deemed to be withdrawn because no request for examination was validly filed |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20060509 |