(57)【特許請求の範囲】
【請求項１】
被記録体に対して印字される印字データを格納する格納領域を有するとともに、各種データ処理のための作業領域を有するメモリと、
前記メモリに印字データを書き込む書込手段と、
前記メモリから印字データを読み出す読出手段と、
前記読出手段により読み出された印字データを前記被記録体に印字する印字手段とを備えた印字装置であって、
前記読出手段は、前記印字手段により印字される印字データのうち、前記書込手段による所定量分の印字データの前記メモリへの書き込みが完了する毎に、この書き込まれた印字データを読出すように構成されており、
前記書込手段により前記所定量分全ての印字データの書き込み完了前に、当該印字データが前記メモリの作業領域に書き込まれると判断されると、前記所定量分の印字データの書き込みを停止させ、その所定量分の印字データに関しては前記読出手段により読み出されることなく、次の書込み処理に移行する書込停止手段を有することを特徴とする印字装置。
【請求項２】
被記録体に対して印字される印字データを格納する格納領域を有するとともに、この格納領域とパーティションで仕切られた各種データ処理のための作業領域を有するメモリと、
前記メモリに印字データを書き込む書込手段と、
前記メモリから印字データを読み出す読出手段と、
前記読出手段により読み出された印字データを前記被記録体に印字する印字手段とを備えた印字装置であって、
前記読出手段は、前記印字手段により印字される印字データのうち、前記書込手段による所定量分の印字データの前記メモリへの書き込みが完了する毎に、この書き込まれた印字データを読出すように構成されており、
前記書込手段により印字データが書き込まれるとき、その書込領域が前記メモリの格納領域であるか作業領域であるかを前記パーティションに基づいて判断する書込領域判断手段と、
前記書込領域判断手段により前記所定量分全ての印字データの書き込み完了前に、当該印字データが前記メモリの作業領域に書き込まれると判断されると、前記所定量分の書き込みを停止させ、その所定量分の印字データに関しては前記読出手段により読み出されることなく、次の書込み処理に移行する書込停止手段とを有することを特徴とする印字装置。
【請求項３】
圧縮された印字データを解凍しつつ前記書込手段に印字データを受け渡すデータ解凍手段を有している、請求項１または請求項２に記載の印字装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、メモリを介して印字データを印字する印字装置に関する。
【０００２】
【従来技術】
通信装置の一例としてのファクシミリ装置には、パーソナルコンピュータなどのコンピュータと接続可能で、コンピュータから圧縮されて送信されてくる文字や図形などの印字データを印字するように、これらの印字データを解凍しつつ用紙に印字可能なシリアル式の印字装置が備えられているものが存在する。この印字装置は、たとえば、装置全体を制御するＣＰＵ、圧縮された印字データを解凍する解凍部、解凍された印字データなどをメモリに対して直接転送制御するＤＭＡコントローラ、１バンド分の印字データを記憶可能な格納領域を有するとともに、ＣＰＵによる各種データ処理のための作業領域を有するメモリ、および印字ヘッドを駆動することにより印字データを用紙に印字する印字部を有している。
【０００３】
このような従来の構成の印字装置では、受信した印字データを解凍部において自動的に解凍しつつ、ＤＭＡコントローラを介して直接上記メモリの格納領域に対して書き込んだ後、上記格納領域から印字データを読み出しながら印字ヘッドを駆動することにより印字動作が行われる。そして、１バンド分の印字動作が終了すると、ＤＭＡコントローラが次バンド分の印字データをメモリの格納領域に直接書き込み、上記と同様にして次バンドの印字動作を行うようになっている。
【０００４】
【発明が解決しようとする課題】
しかし、上記従来の印字装置では、印字データが、解凍部において自動的に解凍された後、直接メモリに書き込まれるので、転送におけるノイズなどの外的要因により解凍前に印字データが改変されてしまった場合、改変された印字データがそのまま解凍された後、直接メモリに書き込まれると、場合によってはＣＰＵの作業領域にまで印字データが展開されてしまうことがあり、このような場合、装置全体を制御するＣＰＵの処理動作に異常な挙動が現れ、その結果、装置に異常な動作が発生してしまう可能性があるという課題があった。
【０００５】
本発明は、上記の点に鑑みて提案されたものであって、ＣＰＵの作業領域に対する印字データの展開を回避できる印字装置を提供することを目的としている。
【０００６】
【課題を解決するための手段】
上記目的を達成するため、請求項１に記載した発明の印字装置は、被記録体に対して印字される印字データを格納する格納領域を有するとともに、各種データ処理のための作業領域を有するメモリと、前記メモリに印字データを書き込む書込手段と、前記メモリから印字データを読み出す読出手段と、前記読出手段により読み出された印字データを前記被記録体に印字する印字手段とを備えた印字装置であって、前記読出手段は、前記印字手段により印字される印字データのうち、前記書込手段による所定量分の印字データの前記メモリへの書き込みが完了する毎に、この書き込まれた印字データを読出すように構成されており、前記書込手段により前記所定量分全ての印字データの書き込み完了前に、当該印字データが前記メモリの作業領域に書き込まれると判断されると、前記所定量分の印字データの書き込みを停止させ、その所定量分の印字データに関しては前記読出手段により読み出されることなく、次の書込み処理に移行する書込停止手段を有している。
【０００７】
この印字装置によれば、所定量分全ての印字データの書き込み完了前に、当該印字データがメモリの作業領域に書き込まれる場合、その所定量分の印字データの書き込みが停止され、その所定量分の印字データに関しては読出手段により読み出されることなく、次の書込み処理に移行するので、印字データが改変されてしまってこの作業領域に書き込まれようとしても、その印字データのメモリへの展開が回避されることから、メモリの作業領域において各種データ処理を行うＣＰＵの処理動作に異常をきたすことがなく、装置における異常動作の発生を防止することができる。
【０００８】
また、請求項２に記載した発明の印字装置は、被記録体に対して印字される印字データを格納する格納領域を有するとともに、この格納領域とパーティションで仕切られた各種データ処理のための作業領域を有するメモリと、前記メモリに印字データを書き込む書込手段と、前記メモリから印字データを読み出す読出手段と、前記読出手段により読み出された印字データを前記被記録体に印字する印字手段とを備えた印字装置であって、前記読出手段は、前記印字手段により印字される印字データのうち、前記書込手段による所定量分の印字データの前記メモリへの書き込みが完了する毎に、この書き込まれた印字データを読出すように構成されており、前記書込手段により印字データが書き込まれるとき、その書込領域が前記メモリの格納領域であるか作業領域であるかを前記パーティションに基づいて判断する書込領域判断手段と、前記書込領域判断手段により前記所定量分全ての印字データの書き込み完了前に、当該印字データが前記メモリの作業領域に書き込まれると判断されると、前記所定量分の印字データの書き込みを停止させ、その所定量分の印字データに関しては前記読出手段により読み出されることなく、次の書込み処理に移行する書込停止手段とを有している。
【０００９】
この印字装置によれば、所定量分全ての印字データの書き込み完了前に、当該印字データがメモリの作業領域に書き込まれるか否かをパーティションに基づいて判断し、作業領域に書き込まれる場合は、印字データのメモリへの書き込みが停止され、その所定量分の印字データに関しては読出手段により読み出されることなく、次の書込み処理に移行するので、その印字データのメモリへの展開が回避されることから、メモリの作業領域において各種データ処理を行うＣＰＵの処理動作に異常をきたすことがなく、装置における異常動作の発生を防止することができる。
【００１０】
さらに、請求項３に記載した発明の印字装置は、請求項１または請求項２に記載の印字装置であって、圧縮された印字データを解凍しつつ前記書込手段に印字データを受け渡すデータ解凍手段を有している。
【００１１】
この印字装置によれば、請求項１または請求項２に記載の印字装置による効果に加えて、圧縮された印字データが解凍されつつ書込手段に受け渡されているので、解凍結果が予測できないような改変のなされた印字データであっても、確実に作業領域に対する印字データの展開が禁止される。
【００１２】
【発明の実施形態】
以下、本発明の好ましい実施の形態を、図面を参照しつつ具体的に説明する。
【００１３】
図１は、本発明に係る印字装置を備えたファクシミリ装置のブロック図であり、このファクシミリ装置は、ＣＰＵ１、ＮＣＵ２、ＲＡＭ３、モデム４、ＲＯＭ５、ＥＥＰＲＯＭ６、ゲートアレイ７、コーデック８、およびインターフェース９を備えている。ＣＰＵ１、ＮＣＵ２、ＲＡＭ３、モデム４、ＲＯＭ５、ＥＥＰＲＯＭ６、ゲートアレイ７、コーデック８、およびインターフェース９は、バス線により相互に接続されている。バス線には、アドレスバス、データバス、および制御信号線が含まれる。ゲートアレイ７には、読取部１１、印字部１２、操作部１３、および表示部１４が接続されている。ＮＣＵ２には、通信回線の一例としての電話回線１５が接続されている。インターフェース９には、パーソナルコンピュータ３１が接続可能である。
【００１４】
ＣＰＵ１は、ファクシミリ装置全体を制御する。ＮＣＵ２は、電話回線１５に接続されて網制御を行う。ＲＡＭ３は、各種のデータを格納する一方、ＣＰＵ１に対してワークエリアを提供する。モデム４は、送信データの変調や受信データの復調などを行う。ＲＯＭ５は、ＣＰＵ１により実行される各種のプログラムなどを記憶している。ＥＥＰＲＯＭ６は、各種のデータやフラグなどを記憶する。ゲートアレイ７は、ＣＰＵ１に対する入出力インターフェースとして機能するとともに、印字処理などを行う。コーデック８は、送信ファクシミリデータの符号化などを行う。読取部１１は、読取原稿から読取データを取り込む。印字部１２は、印字データを印字ヘッドなどにより被記録体としての記録用紙上に印字する。操作部１３は、キースイッチ群などからなり、使用者の操作に応じた信号を出力する。表示部１４は、ＬＣＤなどからなり、ＣＰＵ２１により制御されて各種の表示を行う。
【００１５】
図２は、図１におけるゲートアレイ７により実現されている印字処理部のブロック図であって、この図に基づいて本発明に係る印字装置の要点について説明すると、ＲＡＭ３は、印字ヘッドにより印字される１バンド分の印字データを格納する格納領域を有するとともに、ＣＰＵ１による各種データ処理のためのワークエリアとなる作業領域を有しており、これら両領域は、１バイト毎にアドレスが割り当てられてポインタに基づくパーティションで仕切られた構成となっている。
【００１６】
すなわち、ＤＭＡコントローラ２３は、レジスタなどからなるポインタを有しており、ポインタの値に基づいて、ＲＡＭ３に対する書込アドレスおよび読出アドレスを生成するとともに、印字データの書き込みが格納領域の最終アドレスに至ったか否かを判断する。このポインタの初期値は、ＣＰＵ１により設定されるものであって、格納領域の最初の実アドレスであってもよいし、たとえば０あるいは１であってもよい。この初期値は、たとえばカラー印字用に、シアン、マゼンタ、イエロー、黒の４色に対応して４つの格納領域が設定されている場合、それぞれの格納領域に対応するポインタにＣＰＵ１によりそれぞれ設定される。また、モノクロ印字用に１つの格納領域が設定されている場合には、ポインタも１つだけ設けられる。以下の説明では、内容の理解を容易にするために、モノクロ印字の場合について述べる。
【００１７】
そして、印字データの書き込み時には、１バイトすなわち８ビットの書き込み毎にＤＭＡコントローラ２３はポインタを１ずつインクリメントしていく。この書き込みにより、格納領域が全部使用されると、ポインタが所定値に達するので、これ以上の書き込みを行うと印字データが作業領域に書き込まれてしまうと判断できる。印字データが正しければ、１バンド分の印字データは全て格納領域に書き込むことができるはずであり、格納領域から溢れるということは、印字データが異常であるということなので、ＤＭＡコントローラ２３は、ポインタが所定値に達すると、そのバンドについては、それ以降の印字データをＲＡＭ３に書き込まない。すなわち、この固定された格納領域と作業領域との境界がパーティションである。
【００１８】
印字データの読み出し時には、１バイトすなわち８ビットの読み出し毎にＤＭＡコントローラ２３はポインタを所定数ずつインクリメントしていく。この所定数は、主走査方向すなわちラスタ方向の画素数によって決定され、たとえば画素数が１７２８の場合、２１６バイトのデータ数であるので、２１６ずつインクリメントされる。これにより、印字ヘッドの副走査方向すなわち印字ヘッドの配列方向の印字データが読み出され、印字制御部２４のレジスタに格納される。印字ヘッドは、黒色に対応するインクジェットノズルが６４個副走査方向に配列されたものであって、１回の主走査により６４ライン分の画素が印字され、これが１バンドに相当する。
【００１９】
ＣＰＵ１は、ＲＯＭ５に格納されたプログラムに基づいてＲＡＭ３のアドレス管理を行っており、このＲＡＭ３に対してＤＭＡコントローラ２３を介してアドレスを指定しつつ、作業領域に格納されたプログラムやデータを呼び出して各種のデータ処理を実行している。
【００２０】
ゲートアレイ７は、Ｉ／Ｆ制御部２１、データ解凍部２２、ＤＭＡコントローラ２３、および印字制御部２４を有するハードロジック回路として概略構成されている。このゲートアレイ７の内部バス線には、ＣＰＵ１が接続されている。
【００２１】
Ｉ／Ｆ制御部２１は、インターフェース９を介してパーソナルコンピュータ３１と接続されており、インターフェース９を経由した圧縮データをデータ解凍部２２に対して転送制御する。
【００２２】
データ解凍部２２は、ＴＩＦＦ形式により圧縮された印字データを自動的に解凍しつつ、タイミング信号に基づいてＤＭＡコントローラ２３に転送する。
【００２３】
ＤＭＡコントローラ２３は、データ解凍部２２から転送されてきた印字データを、直接ＲＡＭ３に対して書き込みまたは読み出すものであり、ＲＡＭ３の各領域に割り当てられたアドレスを生成しつつ、１バンド分毎に印字データの書き込みまたは読み出しを行う。また、ＲＡＭ３に対して印字データを書き込むときに、その書込領域が格納領域であるか作業領域であるかを、パーティションで区切られたポインタに基づいて判断し、作業領域への印字データの書き込みであると判断すると、書き込みを停止する。
【００２４】
印字制御部２４は、ＤＭＡコントローラ２３によってＲＡＭ３から読み出された１バンド分の印字データに基づいて、印字部１２の印字ヘッドを駆動制御する。これにより用紙上に文字や図形などの１バンド分の印字データが印字されることとなり、この１バンド分の印字動作が繰り返されることで用紙全体に文字や図形が表されることとなる。
【００２５】
すなわち、ＤＭＡコントローラ２３は、印字データの書込領域がメモリの格納領域であるか作業領域であるかをパーティションに基づいて判断する書込領域判断手段を実現しているとともに、作業領域への印字データの書き込みと判断されたとき、書き込みを停止させる書込停止手段を実現している。また、ＤＭＡコントローラ２３は、メモリに印字データを書き込む書込手段およびメモリから印字データを読み出す読出手段を実現している。データ解凍部２２は、圧縮された印字データを解凍しつつ書込手段に印字データを受け渡すデータ解凍手段を実現している。印字制御部２４および印字部１２は、印字データを被記録体に印字する印字手段を実現している。
【００２６】
次に、このように構成された印字装置の動作の要点について、図３を参照しつつ説明する。
【００２７】
図３は、本発明に係る印字装置の印字動作を示したフローチャートであり、この図に示すように、まず、圧縮された印字データがパーソナルコンピュータ３１からインターフェース９とＩ／Ｆ制御部２１とを経由してデータ解凍部２２に転送されてくると、データ解凍部２２は、その圧縮形式に基づく復元化により印字データを解凍しつつ、ＤＭＡコントローラ２３に転送する（Ｓ１）。
【００２８】
ＤＭＡコントローラ２３は、印字データが転送されてくると、ＲＡＭ３の書込領域を指定するための書込アドレスをポインタに基づいて生成する（Ｓ２）。
【００２９】
さらにＤＭＡコントローラ２３は、このＤＭＡコントローラ２３によって生成された書込アドレスが、ＲＡＭ３の格納領域に割り当てられた格納アドレスに存在するかどうかをポインタに基づいて判断する（Ｓ３）。
【００３０】
書込アドレスが格納アドレスに存在する場合（Ｓ３：ＹＥＳ）、ＤＭＡコントローラ２３は、書込アドレスで指定された格納領域に印字データを書き込む（Ｓ４）。
【００３１】
このような処理を経て、ＤＭＡコントローラ２３からのコマンドにより、ＣＰＵ１が１バンド分の印字データの書き込みを完了したと判断すると（Ｓ５：ＹＥＳ）、ＤＭＡコントローラ２３に対して読出要求信号を送出し、ＤＭＡコントローラ２３が、ＲＡＭ３の格納領域からタイミング信号に基づいて１バンド分の印字データを順次読み出す（Ｓ６）。
【００３２】
順次読み出された印字データに基づいて印字制御部２４が印字ヘッドを駆動させることにより、この印字ヘッドが用紙に対して主走査方向に移動しながら１バンド分の印字データを印字する（Ｓ７）。
【００３３】
１バンド分の印字動作が完了すると、ＣＰＵ１は、ＤＭＡコントローラ２３による次バンド分の印字データの書込待ちがないかどうかを判断し（Ｓ８）、書込待ちの印字データがない場合（Ｓ８：ＹＥＳ）、この印字処理のメインルーチンを終了する。
【００３４】
Ｓ８において、ＤＭＡコントローラ２３による次バンド分の印字データの書込待ちがある場合（Ｓ８：ＮＯ）、Ｓ２に戻って処理を継続する。
【００３５】
Ｓ５において、１バンド分の印字データの書き込みを完了していないとき（Ｓ５：ＮＯ）、Ｓ２に戻って処理を継続する。
【００３６】
Ｓ３において、ＤＭＡコントローラ２３によって生成された書込アドレスが、格納アドレスに存在せず、ＣＰＵ１のワークエリアとして提供されたＲＡＭ３の作業領域を指定するアドレスであると（Ｓ３：ＮＯ）、次のＳ４のステップにおいて実行されるべきＤＭＡコントローラ２３によるＲＡＭ３への印字データの書き込みを停止する（Ｓ９）。書込停止後、Ｓ２のステップに戻って処理を継続する。すなわち、オーバーフローした印字データはＲＡＭ３に書き込まれない。
【００３７】
したがって、このような印字装置によれば、インターフェース９からの解凍前の印字データにノイズなどの外的要因が加わり、ＲＡＭ３に対してどのように展開されるか予測できないような改変されたデータとなってしまっても、このＲＡＭ３に割り当てられた作業領域へのデータ書込が回避されているので、作業領域において各種データ処理を行うＣＰＵ１などの処理動作に異常をきたすことがなく、装置の異常動作の発生を防止することができる。
【００３８】
また、一部の印字データがＣＰＵ１の作業領域に対して書き込まれようとする場合であっても、他の印字データは、上記作業領域に展開されることなく正常に格納領域に書き込まれるので、正常に格納領域に書き込まれた印字データに基づいて、印字動作を停止させることなくそのまま続行することができる。
【００３９】
なお、本実施形態において印字データは、ＴＩＦＦ形式により圧縮されているとしたが、特にこれに限定することはなく、ＪＰＥＧやＧＩＦ形式で圧縮されているものとしても良い。
【００４０】
また上記実施形態では、モノクロ印字の場合について説明したが、カラー印字の場合も同様であって、作業領域に隣接する格納領域ポインタによりパーティションを超えるか否かを判断すればよい。
【００４１】
また上記実施形態では、パーティションを設定して格納領域および作業領域を固定化したが、格納領域と作業領域との境界をＣＰＵ１によりフレキシブルに設定するように構成してもよい。
【００４２】
【発明の効果】
以上説明したように、請求項１に記載した発明の印字装置によれば、所定量分全ての印字データの書き込み完了前に、当該印字データがメモリの作業領域に書き込まれる場合、その所定量分の印字データの書き込みが停止され、その所定量分の印字データに関しては読出手段により読み出されることなく、次の書込み処理に移行するので、印字データが改変されてしまってこの作業領域に書き込まれようとしても、その印字データのメモリへの展開が回避されることから、メモリの作業領域において各種データ処理を行うＣＰＵの処理動作に異常をきたすことがなく、装置における異常動作の発生を防止することができる。
【００４３】
また、請求項２に記載した発明の印字装置によれば、所定量分全ての印字データの書き込み完了前に、当該印字データがメモリの作業領域に書き込まれるか否かをパーティションに基づいて判断し、作業領域に書き込まれる場合は、印字データのメモリへの書き込みが停止され、その所定量分の印字データに関しては読出手段により読み出されることなく、次の書込み処理に移行するので、その印字データのメモリへの展開が回避されることから、メモリの作業領域において各種データ処理を行うＣＰＵの処理動作に異常をきたすことがなく、装置における異常動作の発生を防止することができる。
【００４４】
さらに、請求項３に記載した発明の印字装置によれば、請求項１または請求項２に記載の印字装置による効果に加えて、圧縮された印字データが解凍されつつ書込手段に受け渡されているので、解凍結果が予測できないような改変のなされた印字データであっても、確実に作業領域に対する印字データの展開が禁止される。
【図面の簡単な説明】
【図１】  本発明に係る印字装置を備えたファクシミリ装置のブロック図である。
【図２】  図１に示すファクシミリ装置に備えられた印字処理部のブロック図である。
【図３】  本発明に係る印字装置の印字動作を示したフローチャートである。
【符号の説明】
１  ＣＰＵ
３  ＲＡＭ
５  ＲＯＭ
７  ゲートアレイ
１６  印字処理部
２２  データ解凍部
２３  ＤＭＡコントローラ
【図１】
0003978805.tif 000002
【図２】
0003978805.tif 000003
【図３】
0003978805.tif 000004