【事件の表示】
　特許第３３３４２５８号「プリンタ制御装置および方法」の請求項１ないし３に係る特許に対する特許異議の申立てについて、次のとおり決定する。
【結　論】
　訂正を認める。
　特許第３３３４２５８号の請求項１ないし３に係る特許を取り消す。
【理　由】
１．手続の経緯 
　本件特許第３３３４２５８号の請求項１乃至３に係る発明についての出願は、平成５年６月８日の出願であって、平成１４年８月２日にその請求項１乃至３に係る発明について特許権の設定登録がなされ、その後、その特許について、神田泰貴により特許異議の申し立てがなされ、取消理由通知がなされ、その指定期間内である平成１５年１０月２１日に訂正請求がなされ、さらに、申立人に対して審尋がなされ、その指定期間内である平成１５年１２月２２日に意見陳述書が提出されたものである。 
 　　　 
２．訂正の適否 
（１）訂正の内容 
　特許権者の求めている訂正の内容は、以下のとおりである（訂正箇所にアンダーラインを付した。）。 
　ア．訂正事項ア 
　特許請求の範囲の 
「【請求項１】 バスを介して与えられるイメージデータを連続した記憶領域に記憶するシステムメモリと、前記システムメモリのイメージデータをＦＩＦＯメモリにＤＭＡ転送するＤＭＡ転送手段と、前記ＦＩＦＯメモリを介して前記バスに接続され、前記ＦＩＦＯに記憶されたデータを読み出してプリンタへ出力するプリント出力制御手段とを備え、前記ＤＭＡ転送手段は、所定量の前記イメージデータの継続したＤＭＡ転送中に、前記ＦＩＦＯメモリにおける空き領域の有無を検出し、前記ＦＩＦＯメモリに空き領域が無い場合は空き領域が生じるまで前記ＤＭＡ転送を一時停止することを特徴とするプリンタ制御装置。
【請求項２】 前記プリント出力制御手段は、前記イメージデータをプリント出力の態様に合わせて加工することを特徴とする請求項１記載のプリンタ制御装置。
【請求項３】 バスを介して与えられるイメージデータを連続した記憶領域に記憶するシステムメモリと、前記システムメモリのイメージデータをＦＩＦＯメモリにＤＭＡ転送するＤＭＡ転送手段と、前記ＦＩＦＯメモリを介して前記バスに接続され、前記ＦＩＦＯに記憶されたデータを読み出してプリンタへ出力するプリント出力制御手段とを備えたプリント制御装置のプリンタ制御方法であって、所定量の前記イメージデータの継続したＤＭＡ転送中に、前記ＦＩＦＯメモリにおける空き領域の有無を検出する工程と、前記空き領域検出工程の検出結果により前記ＦＩＦＯメモリに空き領域が無い場合は空き領域が生じるまで前記ＤＭＡ転送を一時停止する前記ＤＭＡ転送手段の転送制御工程とを有していることを特徴とするプリンタ制御方法。」
 を、 
「【請求項１】 バスを介して与えられるイメージデータを連続した記憶領域に記憶するシステムメモリと、
　前記システムメモリのイメージデータをＦＩＦＯメモリにＤＭＡ転送するＤＭＡ転送手段と、
　前記ＦＩＦＯメモリを介して前記バスに接続され、前記ＦＩＦＯに記憶されたデータを読み出してプリンタへ出力するプリント出力制御手段とを備え、
　前記ＤＭＡ転送手段は、所定量の前記イメージデータの継続したＤＭＡ転送中に、前記ＦＩＦＯメモリにおける空き領域の有無を検出し、前記ＦＩＦＯメモリに空き領域が無い場合は空き領域が生じるまで前記ＤＭＡ転送を一時停止
し、前記プリント出力制御手段は、印刷すべきライン数を監視するライン数制御手段を有する
【請求項２】 
バスを介して与えられるイメージデータを連続した記憶領域に記憶するシステムメモリと、
前記システムメモリのイメージデータをＦＩＦＯメモリにＤＭＡ転送するＤＭＡ転送手段と、前記ＦＩＦＯメモリを介して前記バスに接続され、前記ＦＩＦＯに記憶されたデータを読み出してプリンタへ出力するプリント出力制御手段とを備え、
前記ＤＭＡ転送手段は、所定量の前記イメージデータの継続したＤＭＡ転送中に、前記ＦＩＦＯメモリにおける空き領域の有無を検出し、前記ＦＩＦＯメモリに空き領域が無い場合は空き領域が生じるまで前記ＤＭＡ転送を一時停止し、
ライン幅を超える部分の前記イメージデータは印刷を行わないデータ値に変更する
【請求項３】 バスを介して与えられるイメージデータを連続した記憶領域に記憶するシステムメモリと、前記システムメモリのイメージデータをＦＩＦＯメモリにＤＭＡ転送するＤＭＡ転送手段と、前記ＦＩＦＯメモリを介して前記バスに接続され、前記ＦＩＦＯに記憶されたデータを読み出してプリンタへ出力するプリント出力制御手段とを備えたプリント制御装置のプリンタ制御方法であって、
　所定量の前記イメージデータの継続したＤＭＡ転送中に、前記ＦＩＦＯメモリにおける空き領域の有無を検出する工程と、
　前記空き領域検出工程の検出結果により前記ＦＩＦＯメモリに空き領域が無い場合は空き領域が生じるまで前記ＤＭＡ転送を一時停止する前記ＤＭＡ転送手段の転送制御工程
と、
前記プリンタからの同期信号が来ているとき前記ＦＩＦＯメモリにデータがあるかどうかを調べる工程と、
該工程で前記ＦＩＦＯメモリにデータがあれば前記プリンタへ出力し前記ＦＩＦＯメモリにデータが存在しないときエラーであるとの処理を行う工程
 と訂正する。 
　イ．訂正事項イ  
　段落【００１１】の末尾の「有している。」を、「有している。
前記プリント出力制御手段は、印刷すべきライン数を監視するライン数制御手段を有している。
　ウ．訂正事項ウ
　段落【００１２】における「上記プリント出力制御手段は、上記イメージデータをプリント出力の態様に合わせて加工する」を、「上記プリント出力制御手段は、
ライン幅を超える部分の上記イメージデータは印刷を行わないデータ値に変更する
　エ．段落【００１３】の末尾の「転送制御工程とを有している。」を、「転送制御工程
と、前記プリンタからの同期信号が来ているとき前記ＦＩＦＯメモリにデータがあるかどうかを調べる工程と、該工程で前記ＦＩＦＯメモリにデータがあれば前記プリンタへ出力し前記ＦＩＦＯメモリにデータが存在しないときエラーであるとの処理を行う工程
　 　　　 　 　　　　 
（２）訂正の目的の適否、新規事項の有無及び拡張・変更の存否 
　上記訂正事項アは、以下の訂正事項を含んでいる。
　ａ．請求項１において、「プリント出力制御手段は、印刷すべきライン数を監視するライン数制御手段を有する」の記載を追加することにより、プリント出力制御手段を限定する。
　ｂ．請求項２において、「前記プリント出力制御手段は、前記イメージデータをプリント出力の態様に合わせて加工する」の記載を「前記プリント出力制御手段は、ライン幅を超える部分の前記イメージデータは印刷を行わないデータ値に変更する」とすることによりプリント出力制御手段（そのイメージデータの加工内容）を限定すると共に、上記ａで請求項１が限定されたことにより、新請求項１が引用できなくなり、請求項１を引用する形式から、元の請求項１の内容をそのまま記載する独立形式の請求項に変更する。
　ｃ．請求項３において、「前記プリンタからの同期信号が来ているとき前記ＦＩＦＯメモリにデータがあるかどうかを調べる工程と、該工程で前記ＦＩＦＯメモリにデータがあれば前記プリンタへ出力し前記ＦＩＦＯメモリにデータが存在しないときエラーであるとの処理を行う工程」の記載を追加することにより、プリンタ制御方法を限定する。
　上記ａについては、願書に添付された明細書（以下、これと、同じく願書に添付された図面とを併せて「特許明細書等」という。）には、「シフタ９からプリンタ１２への出力は、プリント出力制御部１０によって制御される。図５の従来例に比べると、ライン数制御部１０３が新たに設けられているが、このライン数制御部１０３は、印刷すべきラインはあと何ライン残っているかを監視する。最初に、１ページに印刷すべきライン数が、ＣＰＵ４によりセットされ、１ライン分のイメージデータがプリンタ１２に送られる毎に１つづつカウントダウンされる。ライン数制御部１０３は必須のものではなく、必要に応じて設けられる。これを設けておき、１ページのライン数をプリンタ１２に出力し終えたところで、プリントインターフェース制御部２の動作を終了させる。」（段落【００１９】〜【００２０】参照）と記載されている。
　また、上記ｂについては、特許明細書等には、「シフタ９からプリンタ１２への出力の制御はプリント出力制御部１０によって行われるが、その際、ライン幅制御部１０４で設定したライン幅を超える部分のデータは、印刷を行わないデータ値（例えば、ゼロ）に強制的に変更されて出力される。」（段落【００２８】参照）と記載されている。
　さらに、上記ｃについては、特許明細書等には、「図２（ロ）のフローチャートに従って、プリントインターフェース制御部２からプリンタ１２へのデータ転送動作を説明する。ステップ１…プリンタ１２からのページ同期信号（垂直同期信号）が来ているかどうかチェックする。ステップ２…来ていれば、ライン同期信号（水平同期信号）も来ているかどうかチェックする。ステップ３…両方の同期信号が来ていれば、プリンタ１２へデータを出力しなければならないが、ＦＩＦＯ１４にデータがあるかどうか調べる。ステップ４…ＦＩＦＯ１４にデータがなければ、出力すべきなのにデータが存在しないという状態になっているので、エラーであるとの処理をする。ステップ５…ＦＩＦＯ１４にデータがあれば、シフタ９を介してプリンタ１２へ出力する。」（段落【００２３】〜【００２４】参照）と記載されている。
　そうすると、上記ａ〜ｃを含む訂正事項アは、特許明細書等の記載の範囲内において、特許請求の範囲の減縮を目的とするものである。
　上記イ〜エは、上記アに伴い、特許請求の範囲と発明の詳細な説明の両記載を整合させたもので、明りようでない記載の釈明を目的とするものである。
　そして、上記訂正事項ア〜エは、いずれも、新規事項の追加に該当せず、実質上特許請求の範囲を拡張し、又は変更するものでない。
　　　
（３）むすび 
　以上のとおりであるから、上記訂正は、特許法等の一部を改正する法律（平成６年法律第１１６号）附則第６条第１項の規定によりなお従前の例によるとされる、平成１１年改正前の特許法第１２０条の４第３項で準用する平成６年法律第１１６号による改正前の特許法第１２６条第１項ただし書、第２項及び第３項の規定に適合するので、当該訂正を認める。　 
 　　　　 
３．特許異議申し立てについての判断 
（１）本件発明 
　本件請求項１乃至３に係る発明（以下、「本件発明１乃至３」という。）は、上記訂正によって訂正された明細書の特許請求の範囲の請求項１乃至３に記載された事項により特定されるとおりのものである（上記訂正事項ア参照。）。
　　
（２）刊行物に記載された発明 
　当審で通知した取消理由に引用した特開平２−２０１６７８号公報（＝甲第３号証、以下、「刊行物」という。）には、本件発明１乃至３に関連する事項として、以下のような事項が記載されている。
　ア．「第１図はこの発明のチャネル装置を備えた情報処理システムの一実施例を示すブロック構成図である。同図において、１０はシステムの中心を成すＣＰＵ、２０は各種プログラム、データ等が格納される主記憶装置、３０はＣＰＵｌ０から発行された入出力命令をもとに主記憶装置２０から転送情報を取出し、この転送情報に従って入出力装置（図示せず）の起動、入出力装置と主記憶装置２０との間のデータ転送を行うチャネル装置３０である。上記転送情報は、リード／ライトの種別、転送ブロックのサイズ（転送サイズ）、転送ブロックの先頭の主記憶アドレス（先頭主記憶データアドレス）等を含む。ＣＰＵ１０、主記憶装置２０およびチャネル装置３０はシステムバス４０に接続されている。チャネル装置３０において、３１は装置３０全体を制御するマイクロプロセッサ、３２は主記憶装置２０とチャネル装置８０との間のデータ転送と、チャネル装置３０と入出力装置との間のデータ転送とを非同期で行うために設けられた緩衝用のＦＩＦＯスタックメモリ（先入れ先出しスタックメモリ）である。このＦＩＦＯスタックメモリ３２は、入出力装置へのデータ転送のために主記憶装置２０から先読みされた主記憶データを一時格納するのに用いられ、その記憶領域がフル（満杯）となるとその旨のステータス（以下、フル・ステータスと称する）ａを出力するようになっている。」（３頁左下欄１１行〜右下欄１６行）
　イ．「３３はチャネル装置３０（内のＦＩＦＯスタックメモリ３２）と入出力装置との間のデータ転送（ＤＭＡ転送）を行うＤＭＡコントローラ、３４はマイクロプロセッサ３１の制御のためのマイクロプログラム、更にはＤＭＡコントローラ３３を制御するための転送情報テーブル等の格納に供されるローカルメモリ、３５はマイクロプロセッサ３１のバス（以下、ローカルバスと称する）である。」（３頁右下欄１６行〜４頁左上欄４行）
　ウ．「３６は主記憶装置２０をアクセスするための主記憶データアドレスを指定するアドレスカウンタ（ＡＣ）、３７は上記転送ブロックの最終位置に対応する最終主記憶データアドレスが設定される最終転送アドレスレジスタ（ＲＥＧ）である。３８はアドレスカウンタ３６の内容とレジスタ３７の内容とを比較し、両内容が一致している場合にその旨のステータス（以下、先読み終了ステータスと称する）ｂを出力するコンパレータ（ＣＯＭＰ）、３９はマイクロプロセッサ３１からローカルバス３５を介して与えられる指示ｃに応じて主記憶装置２０に対する主記憶読出し要求をシステムバス４０を介して繰返し発行する読出し要求回路である。読出し要求回路３９は、ＦＩＦＯスタックメモリ３２からのフル・ステータスａまたはコンパレータ３８からの先読み終了ステータスｂにより主記憶読出し要求発行を一時停止または禁止されるようになっている。アドレスカウンタ３６及び読み出し要求回路３９は、入出力装置へ転送すべき主記憶データを主記憶装置２０からＦＩＦＯスタックメモリ３２に先読みするための先読み部５０を構成している。」（４頁左上欄５行〜右上欄５行）
　エ．「チャネル装置３０内のマイクロプロセッサ３１は、ＣＰＵ１０から発行された入出力命令を受取ると、この入出力命令を解読し、データ転送要求に対する転送情報を主記憶装置２０から読出す。次にマイクロプロセッサ３１は、読出した転送情報を解読し、この例のように主記憶装置２０から入出力装置へのデータ転送の場合には、転送情報に含まれている転送すべきブロックの先頭主記憶データアドレスをローカルバス３５経由でアドレスカウンタ（ＡＣ）３６に設定する。またマイクロプロセッサ３１は、転送情報に含まれている転送すべきブロックのサイズ（転送サイズ）と上記先頭主記憶データアドレスとから、ブロックの最終位置に対応するアドレス（最終主記憶データアドレス、ここではブロックの次のアドレス）を算出し、この最終主記憶データアドレスをローカルバス３５経由でレジスタ３７に設定する。更にマイクロプロセッサ３１は、上記の設定により主記憶装置２０からＦＩＦＯスタックメモリ３２へのデータ転送（主記憶データ先読み）が行われた場合に、ＦＩＦＯスタックメモリ３２のデータがＤＭＡコントローラ３３によって入出力装置に転送されるように、同コントローラ３３を制御するための転送情報テーブルをローカルメモリ３４上に生成する。以上の動作を終了すると、マイクロプロセッサ３１は読出し要求回路３９に対し主記憶読出し要求の発行指示ｃをローカルバス３５を介して与え、ＤＭＡ転送を開始させる。・・・アドレスカウンタ３６の指定する主記憶装置２０のアドレスの主記憶データ（送信データ）がシステムバス４０上に読出される。システムバス４０上に読出された送信データはチャネル装置３０において受信され、ＦＩＦＯスタックメモリ３２に一時記憶される。もし、ＦＩＦＯスタックメモリ３２がフルでなければ、フル・ステータスａは偽となっており、この場合アドレスカウンタ３６はカウントアツプされ、且つ読出し要求回路３９から次の主記憶データアドレスに対応する主記憶データの読出し要求が主記憶装置２０に対して発行される。この結果、次の主記憶データアドレス、即ちアドレスカウンタ３６のカウントアップ値で指定される主記憶装置２０のデータがシステムバス４０に読出される。このシステムバス４０に読出されたデータはチャネル装置３０において受信され、前の主記憶データアドレスの主記憶データ（送信データ）に積み重なるようにＦＩＦＯスタックメモリ３２に記憶される。以下、同様にして、上述した主記憶装置２０からＦＩＦＯスタックメモリ３２へのＤＭＡ転送が自動的に連続的に行われる。そして、ＦＩＦＯスタックメモリ３２にデータが存在するならば、ＦＩＦＯスタックメモリ３２に一時格納された主記憶データ（送信データ）をその記憶順に入出力装置に転送する動作が、ＤＭＡコントローラ３３によって上記のＤＭＡ転送と並行して行われる。・・・やがてアドレスカウンタ３６の値がレジスタ３７の値に一致するようになると、即ちアドレスカウンタ３６の示す主記憶データアドレスがレジスタ３７の示す最終主記憶データアドレスに等しくなると、・・・指定転送サイズの１ブロックの転送が終了したものとして次の主記憶読出し要求の発行を停止する。・・・主記憶装置２０からＦＩＦＯスタックメモリ３２への先読みが停止された後も、ＤＭＡコントローラ３３によるＦＩＦＯスタックメモリ３２から入出力装置へのデータ転送は継続され、やがてその転送量が、ローカルメモリ３４上に生成された転送情報テーブルに設定されている１ブロックの転送サイズに達すると、ＤＭＡコントローラ３３はマイクロプロセッサ３１に対してローカルバス３５を介して転送終了割込みを発生する。」（４頁右上欄１２行〜５頁左下欄１２行）
　オ．「転送サイズがＦＩＦＯスタックメモリ３２のサイズより大きく、主記憶装置２０からＦＩＦＯスタックメモリ３２への先読みが終了する前にＦＩＦＯスタックメモリ３２がフルとなった場合には、その旨を示すフル・ステータスａが読出し要求回路３９に通知される。読出し要求回路３９は、ＦＩＦＯスタックメモリ３２からのフル・ステータスａ通知により、主記憶装置２０に対する主記憶読出し要求の発行を一時停止する。この状態で、ＤＭＡコントローラ３３によるＦＩＦＯスタックメモリ３２から入出力装置へのデータ転送が進んでＦＩＦＯスタックメモリ３２に空きが生じるようになると、フル・ステータスａは真から偽に変わり、これにより読出し要求回路３９は主記憶読出し要求の発行を再開する。」（５頁左下欄１６行〜右下欄１０行）
　カ．第１図に情報処理システムのブロック構成図が示されている。
　以上の記載を含む上記刊行物には、以下の発明が記載されている。
　「データを記憶するシステムバス４０に接続される主記憶装置２０と、前記主記憶装置２０のデータをＦＩＦＯスタックメモリ３２にＤＭＡ転送するためのアドレスカウンタ（ＡＣ）３６、レジスタ（ＲＥＧ）３７、コンパレータ（ＣＯＭＰ）３８及び読出し要求回路３９等からなる手段と、前記ＦＩＦＯスタックメモリ３２に記憶されたデータを読み出して入出力装置へ出力するためのマイクロプロセッサ３１、ＤＭＡコントローラ３３及びローカルメモリ３４等とからなる手段とを備え、
　前記ＦＩＦＯスタックメモリ３２にＤＭＡ転送するためのアドレスカウンタ（ＡＣ）３６、レジスタ（ＲＥＧ）３７、コンパレータ（ＣＯＭＰ）３８及び読出し要求回路３９等からなる手段は、前記データの継続したＤＭＡ転送中に、前記ＦＩＦＯスタックメモリ３２における空き領域の有無を検出し、前記ＦＩＦＯスタックメモリ３２に空き領域が無い場合は空き領域が生じるまで前記ＤＭＡ転送を一時停止し、前記入出力装置へ出力するためのマイクロプロセッサ３１、ＤＭＡコントローラ３３及びローカルメモリ３４等とからなる手段は、ＦＩＦＯスタックメモリ３２にデータが存在するならば、ＦＩＦＯスタックメモリ３２に一時格納されたデータを入出力装置に転送（出力）し、ローカルメモリ３４上に生成された転送情報テーブルに設定されている１ブロックの転送サイズに達すると転送終了割り込みを発生する情報処理システム」（以下、「刊行物発明」という。）
（３）対比判断 
　ア．本件発明１について、
　本件発明１と刊行物発明とを対比する。
　ａ．刊行物発明の「ＦＩＦＯスタックメモリ３２」及び「ＤＭＡ転送するためのアドレスカウンタ（ＡＣ）３６、レジスタ（ＲＥＧ）３７、コンパレータ（ＣＯＭＰ）３８及び読出し要求回路３９等からなる手段」は、それぞれ、本件発明１の「ＦＩＦＯメモリ」及び「ＤＭＡ転送手段」に対応している。
　ｂ．刊行物発明において、アドレスカウンタ３６はカウントアツプされ、且つ読出し要求回路３９から次の主記憶データアドレスに対応する主記憶データの読出し要求が主記憶装置２０に対して発行され、次の主記憶データアドレス、即ちアドレスカウンタ３６のカウントアップ値で指定される主記憶装置２０のデータがシステムバス４０に読出されるものである（上記（２）エ．参照）から、刊行物発明の「主記憶装置２０」は、データを連続した記憶領域に記憶するシステムメモリということができる。
　ｃ．本件発明１の「プリンタ」は、データを入力し該データに基づいて印刷（出力）するものであるから、刊行物１発明の「入出力装置」とは、出力装置である点で共通している。
　ｄ．刊行物発明の「入出力装置へ出力するためのマイクロプロセッサ３１、ＤＭＡコントローラ３３及びローカルメモリ３４等とからなる手段」は、システムバス４０及びＦＩＦＯスタックメモリ３２（ＦＩＦＯメモリ）に対する接続関係（上記（２）カ．参照）から、本件発明１と同様に、ＦＩＦＯメモリを介してバスに接続され、ＦＩＦＯに記憶されたデータを読み出して出力装置へ出力する出力制御手段といえる。
　ｅ．刊行物発明の「入出力装置へ出力するためのマイクロプロセッサ３１、ＤＭＡコントローラ３３及びローカルメモリ３４等とからなる手段」は、ローカルメモリ３４上に生成された転送情報テーブルに設定されている１ブロックの転送サイズに達すると転送終了割り込みを発生するものであるから、出力装置に出力すべきデータ量を監視する手段を有していることは明らかであり、したがって、本件発明１とは、出力装置に出力すべきデータ量を監視する手段を有している点で共通している。
　ｆ．本件発明１の「プリンタ制御装置」と刊行物発明の「情報処理システム」とは、装置である点で共通している。
　以上のことから、両者の一致点と相違点は以下のとおりである。
　［一致点］
　データを連続した記憶領域に記憶するシステムメモリと、前記システムメモリのデータをＦＩＦＯメモリにＤＭＡ転送するＤＭＡ転送手段と、前記ＦＩＦＯメモリを介してバスに接続され、前記ＦＩＦＯに記憶されたデータを読み出して出力装置へ出力する出力制御手段とを備え、前記ＤＭＡ転送手段は、所定量の前記データの継続したＤＭＡ転送中に、前記ＦＩＦＯメモリにおける空き領域の有無を検出し、前記ＦＩＦＯメモリに空き領域が無い場合は空き領域が生じるまで前記ＤＭＡ転送を一時停止し、前記出力制御手段は、出力装置に出力すべきデータ量を監視する手段を有する装置。」
　［相違点］
　Ａ．本件発明１では、出力装置がプリンタであると特定されると共に装置をプリンタ制御装置と称しているのに対して、刊行物発明では、出力装置が特定されていなく、装置を情報処理システムと称している点、
　Ｂ．システムメモリに記憶されるデータが、本件発明１では、バスを介して与えられるイメージデータであるのに対して、刊行物発明では、いかなるデータであるか定かでない点、
　Ｃ．出力装置に出力すべきデータ量を監視する手段が、本件発明１では、ライン数を監視するものであるに対して、刊行物発明では、ライン数を監視しているか否か定かでない点。
　［相違点の判断］
　相違点Ａについて、
　刊行物発明において、その出力装置として、相違点Ａのように、出力装置として周知のプリンタを採用することは、格別阻害要因がなく、当業者が想到容易であり、また、その採用に伴い、装置をプリンタ制御装置と称することも適宜である。
　相違点Ｂについて、
　刊行物発明の出力装置として、プリンタを採用することは、上述のとおり、当業者が想到容易であって、その際、プリンタ制御装置のシステムメモリに記憶されるデータを、バスを介して与えられるイメージデータとすることも、当業者が普通に考えることである。
　相違点Ｃについて、
  プリンタ出力制御部に対して、ライン同期信号を送出するプリンタは、例を挙げるまでもなく周知であるから、当該周知のプリンタを刊行物発明の出力装置として採用することも当業者が容易であり、当該周知のプリンタへのデータの出力は、ライン同期信号の到来毎になされるものであるから、上記採用に際して、当該プリンタに出力すべきデータ量を監視する手段を、ライン数を監視する手段（該手段を「ライン数制御手段」と称することも適宜である。）とすることも当業者が容易に想到できることである。
　したがって、本件発明１は、刊行物発明と周知技術から、当業者が容易に発明をすることができたものである。
　イ．本件発明２について、
　本件発明２と刊行物発明とを対比する。
　ａ．刊行物発明の「ＦＩＦＯスタックメモリ３２」及び「ＤＭＡ転送するためのアドレスカウンタ（ＡＣ）３６、レジスタ（ＲＥＧ）３７、コンパレータ（ＣＯＭＰ）３８及び読出し要求回路３９等からなる手段」は、それぞれ、本件発明２の「ＦＩＦＯメモリ」及び「ＤＭＡ転送手段」に対応している。
　ｂ．刊行物発明において、アドレスカウンタ３６はカウントアツプされ、且つ読出し要求回路３９から次の主記憶データアドレスに対応する主記憶データの読出し要求が主記憶装置２０に対して発行され、次の主記憶データアドレス、即ちアドレスカウンタ３６のカウントアップ値で指定される主記憶装置２０のデータがシステムバス４０に読出されるものである（上記（２）エ．参照）から、刊行物発明の「主記憶装置２０」は、データを連続した記憶領域に記憶するシステムメモリということができる。
　ｃ．本件発明２の「プリンタ」は、データを入力し該データに基づいて印刷（出力）するものであるから、刊行物１発明の「入出力装置」とは、出力装置である点で共通している。
　ｄ．刊行物発明の「入出力装置へ出力するためのマイクロプロセッサ３１、ＤＭＡコントローラ３３及びローカルメモリ３４等とからなる手段」は、システムバス４０及びＦＩＦＯスタックメモリ３２（ＦＩＦＯメモリ）に対する接続関係（上記（２）カ．参照）から、本件発明１と同様に、ＦＩＦＯメモリを介してバスに接続され、ＦＩＦＯに記憶されたデータを読み出して出力装置へ出力する出力制御手段といえる。
　ｆ．本件発明２の「プリンタ制御装置」と刊行物発明の「情報処理システム」とは、装置である点で共通している。
　以上のことから、両者の一致点と相違点は以下のとおりである。
　［一致点］
　データを連続した記憶領域に記憶するシステムメモリと、前記システムメモリのデータをＦＩＦＯメモリにＤＭＡ転送するＤＭＡ転送手段と、前記ＦＩＦＯメモリを介してバスに接続され、前記ＦＩＦＯに記憶されたデータを読み出して出力装置へ出力する出力制御手段とを備え、前記ＤＭＡ転送手段は、所定量の前記データの継続したＤＭＡ転送中に、前記ＦＩＦＯメモリにおける空き領域の有無を検出し、前記ＦＩＦＯメモリに空き領域が無い場合は空き領域が生じるまで前記ＤＭＡ転送を一時停止する装置。」
　［相違点］
　Ａ．本件発明１では、出力装置がプリンタであると特定されると共に装置をプリンタ制御装置と称しているのに対して、刊行物発明では、出力装置が特定されていなく、装置を情報処理システムと称している点、
　Ｂ．システムメモリに記憶されるデータが、本件発明１では、バスを介して与えられるイメージデータであるのに対して、刊行物発明では、いかなるデータであるか定かでない点、
　Ｄ．ＦＩＦＯに記憶されたデータを読み出して出力装置へ出力する出力制御手段が、本件発明２では、ライン幅を超える部分のイメージデータは印刷を行わないデータ値に変更するものであるのに対して、刊行物発明では、その点が定かでない点。」
　［相違点の判断］
　相違点Ａ及びＢについて、
　上記相違点Ａ及びＢについての判断と同じである。
　相違点Ｄについて、
　刊行物発明の入出力装置として、プリンタを採用することは、上述のとおり、当業者が想到容易であって、その際、相違点Ｄのように、プリント出力制御手段が、ライン幅を超える部分のイメージデータは印刷を行わないデータ値に変更することは、例えば、本件の審査時に既に提示されている、特開平４−８３６７４号公報の「実際に記録される紙幅（Ａ４判サイズ）のＤＭＡ転送時になると、アジヤストカウンタ４のレフトビデオ許可信号１５がハイレベルになって、ビデオ信号２０が出力される。この後、Ａ４判の紙サイズに相当する長さ（ｚ）部分のＤＭＡ転送が終了すると、ライトマージンカウンタ５の出力であるライトビデオ終了信号１６がロウレベルになる。これにより、ビデオ信号の出力がオフされる。」（４頁左下欄１８行〜右下欄６行）という明細書の記載及び第１〜４図の記載にみられるように周知であるから、当業者が想到容易である。
　したがって、本件発明２は、刊行物発明と周知技術から、当業者が容易に発明をすることができたものである。
　ウ．本件発明３について、
　本件発明３と刊行物発明とを対比する。
　ａ．刊行物発明の「ＦＩＦＯスタックメモリ３２」及び「ＤＭＡ転送するためのアドレスカウンタ（ＡＣ）３６、レジスタ（ＲＥＧ）３７、コンパレータ（ＣＯＭＰ）３８及び読出し要求回路３９等からなる手段」は、それぞれ、本件発明３の「ＦＩＦＯメモリ」及び「ＤＭＡ転送手段」に対応している。
　ｂ．刊行物発明において、アドレスカウンタ３６はカウントアツプされ、且つ読出し要求回路３９から次の主記憶データアドレスに対応する主記憶データの読出し要求が主記憶装置２０に対して発行され、次の主記憶データアドレス、即ちアドレスカウンタ３６のカウントアップ値で指定される主記憶装置２０のデータがシステムバス４０に読出されるものである（上記（２）エ．参照）から、刊行物発明の「主記憶装置２０」は、データを連続した記憶領域に記憶するシステムメモリということができる。
　ｃ．本件発明３の「プリンタ」は、データを入力し該データに基づいて印刷（出力）するものであるから、刊行物１発明の「入出力装置」とは、出力装置である点で共通している。
　ｄ．刊行物発明の「入出力装置へ出力するためのマイクロプロセッサ３１、ＤＭＡコントローラ３３及びローカルメモリ３４等とからなる手段」は、システムバス４０及びＦＩＦＯスタックメモリ３２（ＦＩＦＯメモリ）に対する接続関係（上記（２）カ．参照）から、本件発明１と同様に、ＦＩＦＯメモリを介してバスに接続され、ＦＩＦＯに記憶されたデータを読み出して出力装置へ出力する出力制御手段といえる。
　以上のことから、両者の一致点と相違点は以下のとおりである。
　［一致点］
　データを連続した記憶領域に記憶するシステムメモリと、前記システムメモリのデータをＦＩＦＯメモリにＤＭＡ転送するＤＭＡ転送手段と、前記ＦＩＦＯメモリを介して前記バスに接続され、前記ＦＩＦＯに記憶されたデータを読み出して出力装置へ出力する出力制御手段とを備えた制御方法であって、所定量の前記データの継続したＤＭＡ転送中に、前記ＦＩＦＯメモリにおける空き領域の有無を検出する工程と、前記空き領域検出工程の検出結果により前記ＦＩＦＯメモリに空き領域が無い場合は空き領域が生じるまで前記ＤＭＡ転送を一時停止する前記ＤＭＡ転送手段の転送検出工程とを有している制御方法。」
　［相違点］
　Ａ′．本件発明３では、出力装置がプリンタであると特定されると共にプリンタ制御方法と称しているのに対して、刊行物発明では、出力装置が特定されていなく、情報処理システムと称している点、
　Ｂ．システムメモリに記憶されるデータが、本件発明３では、バスを介して与えられるイメージデータであるのに対して、刊行物発明では、いかなるデータであるか定かでない点、
　Ｅ．本件発明３では、プリンタからの同期信号が来ているときＦＩＦＯメモリにデータがあるかどうかを調べる工程と、該工程で前記ＦＩＦＯメモリにデータがあれば前記プリンタへ出力し前記ＦＩＦＯメモリにデータが存在しないときエラーであるとの処理を行う工程を有しているのに対して、刊行物発明では、その点が定かでない点。
　［相違点の判断］
　相違点Ａ′及びＢについて、
　相違点Ａと相違点Ａ′の違いは、物と方法という発明のカテゴリーの違い以上のものでないから、結局、相違点Ａ′及びＢの判断は、上記相違点Ａ及びＢについての判断と同じである。
　相違点Ｅについて、
　上述のとおり、プリンタ出力制御部に対してライン同期信号を送出する周知のプリンタを刊行物発明の入出力装置として採用することは、当業者が容易であり、また、例えば、実願昭６３−１４６５９５号（実開平２−６８１３９号）のマイクロフィルム（申立人の提出した甲第６号証）の「ホワイトライン情報（第２図ｅ）が存在しない場合（例えば印字領域Ｒ３）には当然印字用画素信号（同図ｃ）が存在することになるから、印字用画素信号がカウントされなければ（つまりゼロであれば）これも異常であると判断して・・・異常検出信号を発生する」（１０頁９〜１４行）という明細書の記載及び第１〜３図の記載にみられるように、プリンタ出力制御部に対してライン同期信号を送出するプリンタにおいて、プリンタからの同期信号が来ているときに、印刷すべきデータが存在しないときエラーであるとの処理を行うことは周知であるから、これを上記採用に伴い適用して、相違点Ｅのように、プリンタからの同期信号が来ているときＦＩＦＯメモリにデータがあるかどうかを調べる工程と、該工程で前記ＦＩＦＯメモリにデータがあれば前記プリンタへ出力し前記ＦＩＦＯメモリにデータが存在しないときエラーであるとの処理を行う工程を有するようにすることは当業者が想到容易である。
　したがって、本件発明３は、刊行物発明と周知技術から、当業者が容易に発明をすることができたものである。
　　
（４）むすび 
 以上のとおり、本件請求項１乃至３に係る発明は、上記刊行物に記載された発明及び周知技術に基づいて当業者が容易に発明をすることができたものであるから、特許法第２９条第２項の規定により特許を受けることができない。
　したがって、本件請求項１乃至３に係る発明についての特許は、拒絶の査定をしなければならない特許出願に対してされたものと認める。
　よって、特許法等の一部を改正する法律（平成６年法律第１１６号）附則第１４条の規定に基づく、特許法等の一部を改正する法律の施行に伴う経過措置を定める政令（平成７年政令第２０５号）第４条第２項の規定により、結論のとおり決定する。
【異議決定日】
平成１８年１月２３日（２００６．１．２３）
【訂正の要旨】
審決（決定）の【理由】欄参照。
（５４）【発明の名称】
プリンタ制御装置および方法
（５７）【特許請求の範囲】
　【請求項１】バスを介して与えられるイメージデータを連続した記憶領域に記憶するシステムメモリと、
　前記システムメモリのイメージデータをＦＩＦＯメモリにＤＭＡ転送するＤＭＡ転送手段と、
　前記ＦＩＦＯメモリを介して前記バスに接続され、前記ＦＩＦＯに記憶されたデータを読み出してプリンタへ出力するプリント出力制御手段とを備え、
　前記ＤＭＡ転送手段は、所定量の前記イメージデータの継続したＤＭＡ転送中に、前記ＦＩＦＯメモリにおける空き領域の有無を検出し、前記ＦＩＦＯメモリに空き領域が無い場合は空き領域が生じるまで前記ＤＭＡ転送を一時停止し、前記プリント出力制御手段は、印刷すべきライン数を監視するライン数制御手段を有する
　ことを特徴とするプリンタ制御装置。
　【請求項２】バスを介して与えられるイメージデータを連続した記憶領域に記憶するシステムメモリと、
　前記システムメモリのイメージデータをＦＩＦＯメモリにＤＭＡ転送するＤＭＡ転送手段と、
　前記ＦＩＦＯメモリを介して前記バスに接続され、前記ＦＩＦＯに記憶されたデータを読み出してプリンタへ出力するプリント出力制御手段とを備え、
　前記ＤＭＡ転送手段は、所定量の前記イメージデータの継続したＤＭＡ転送中に、前記ＦＩＦＯメモリにおける空き領域の有無を検出し、前記ＦＩＦＯメモリに空き領域が無い場合は空き領域が生じるまで前記ＤＭＡ転送を一時停止し、前記プリント出力制御手段は、ライン幅を超える部分の前記イメージデータは印刷を行わないデータ値に変更する
　ことを特徴とするプリンタ制御装置。
　【請求項３】バスを介して与えられるイメージデータを連続した記憶領域に記憶するシステムメモリと、前記システムメモリのイメージデータをＦＩＦＯメモリにＤＭＡ転送するＤＭＡ転送手段と、前記ＦＩＦＯメモリを介して前記バスに接続され、前記ＦＩＦＯに記憶されたデータを読み出してプリンタへ出力するプリント出力制御手段とを備えたプリント制御装置のプリンタ制御方法であって、
　所定量の前記イメージデータの継続したＤＭＡ転送中に、前記ＦＩＦＯメモリにおける空き領域の有無を検出する工程と、
　前記空き領域検出工程の検出結果により前記ＦＩＦＯメモリに空き領域が無い場合は空き領域が生じるまで前記ＤＭＡ転送を一時停止する前記ＤＭＡ転送手段の転送制御工程と、
　前記プリンタからの同期信号が来ているとき前記ＦＩＦＯメモリにデータがあるかどうかを調べる工程と、
　該工程で前記ＦＩＦＯメモリにデータがあれば前記プリンタへ出力し前記ＦＩＦＯメモリにデータが存在しないときエラーであるとの処理を行う工程
　を有していることを特徴とするプリンタ制御方法。
【発明の詳細な説明】
　【０００１】
　【産業上の利用分野】
　本発明は、メモリ上にイメージデータ（ビットマップデータ）を展開し、それをプリンタに出力して印刷させるプリンタ制御装置および方法に関するものである。
　【０００２】
　【従来の技術】
（第１の従来例）
　ホストコンピュータ等からのプリントデータを基にメモリ上にイメージデータを展開し、それをプリンタに出力して印刷させるプリンタ制御装置がある。
　図５は、従来のそのようなプリンタ制御装置を示す図である。図５において、１はプリンタ制御装置、２はプリントインターフェース制御部、３はバス、４はＣＰＵ（中央演算処理装置）、５はシステムメモリ、６はイメージデータ、７はイメージメモリ、８はラインバッファ、９はデータの単位を変換するデータ変換手段としてのシフタ、１０はプリント出力制御部、１０１は左マージン制御部、１０２は上マージン制御部、１１は外部記憶装置、１２はプリンタである。
　【０００３】
　ＣＰＵ４は、システムメモリ５に、印刷しようとするイメージデータを展開するが、イメージデータの展開は、用紙の１ページに印刷される状態がそのまま現出されるように行われる。展開するに際して補助的に必要とされる情報やデータ（例、フォントデータ）は、外部記憶装置１１から提供される。イメージデータ６は、そのようにして展開されたイメージデータである。
　【０００４】
　Ｄ１１，Ｄ１２等は、ＤＭＡ転送のアクセス単位（例えば８画素とか１６画素とか）のイメージデータである。Ｄ１１〜Ｄ１Ｎは１ライン目のイメージデータ、Ｄ２１〜Ｄ２Ｎは２ライン目のイメージデータ、ＤＭ１〜ＤＭＮは最終ラインであるＭライン目のイメージデータである。
　【０００５】
　プリントインターフェース制御部２にはイメージメモリ７が設けられ、システムメモリ５のイメージデータ６が、バス３を通って転送される。ラインバッファ８は、イメージメモリ７から１ライン分のデータを取り出しておくためのものであり、ここからシフタ９へ、ＤＭＡ転送のアクセス単位分のデータが送られる。
　【０００６】
　図６は、シフタ９の動作を説明する図である。ＤＭＡ転送でのアクセス単位データを８画素分のデータであるとすると、シフタ９は、Ｄ１１などの８画素分のデータをまとめて受け取り、１画素分づつプリンタ１２へ出力する。
　プリント出力制御部１０は、ラインバッファ８からシフタ９への出力、およびシフタ９からプリンタ１２への出力を制御する。例えば、出力タイミングは、プリンタ１２からプリント出力制御部１０へ送られて来るページ同期信号，ライン同期信号を基にして制御される。また、左マージン，上マージンは、予め左マージン制御部１０１，上マージン制御部１０２に設定されており、それらによって制御される。
　なお、１ページのライン数，ライン幅は、システムメモリ５ないしはイメージメモリ７に展開されたイメージデータ６のライン数，ライン幅に一致する。ライン幅は、アクセス単位データの画素数の倍数となる。アクセス単位データＤ１１等を８画素とすると、図５の場合、ライン幅は８×Ｎ画素となる。
　【０００７】
　図７は、ライン幅がＤＭＡ転送のアクセス単位データの画素数の倍数とされているプリント状態を示す図である。図７において、２０は用紙、２１は印刷されたイメージ、２２はライン同期信号、２３は上マージン、２４はイメージのライン数、２５はページ同期信号、２６は左マージン、２７はイメージの印刷ライン幅である。
　【０００８】
（第２の従来例）
　本発明に関連する他の従来技術としては、特開昭６３−１６３２４号公報の「印刷制御方式」がある。これは、展開したイメージデータの各ラインの先頭アドレスを記録したテーブルを設けておき、ライン毎にＤＭＡアドレス（ＤＭＡ…ダイレクト・メモリ・アクセス）の再設定を行いながら、イメージデータをＤＭＡ転送するものである。
　【０００９】
（第３の従来例）
　更に、他の従来技術として、特開平２−４８９６６号公報がある。これは、プリントインターフェース制御部にイメージメモリは持たず、システムメモリからラインバッファに１ライン分づつＤＭＡ転送するようにしたものである。このＤＭＡ転送は、プリンタからのライン同期信号に同期して行われる。
　【００１０】
　【発明が解決しようとする課題】
　しかしながら、前記した従来例には、次のような問題点があった。
　第１の従来例には、１ページのイメージデータを展開しておくことが出来るメモリとして、システムメモリ５の他にイメージメモリ７をも持つ必要があり、コスト高になるという問題点があった。
　第２の従来例には、ＤＭＡ転送をライン毎に行うので、各ラインの先頭アドレスを記録するためのテーブルを作成しておかなければならず、そのために回路の数が多くなるという問題点があった。
　第３の従来例には、プリンタからライン同期信号が来た時、バスが他の処理のために使用されていると、次のラインのイメージデータを転送することが出来ず、プリントするタイミングにイメージデータが間に合わなくなるという問題点があった。
　本発明は、以上のような問題点を解決することを課題とするものである。
　【００１１】
　【課題を解決するための手段】
　上記課題を解決するために、本発明によるプリンタ制御装置は、バスを介して与えられるイメージデータを連続した記憶領域に記憶するシステムメモリと、前記システムメモリのイメージデータをＦＩＦＯメモリにＤＭＡ転送するＤＭＡ転送手段と、前記ＦＩＦＯメモリを介して前記バスに接続され、前記ＦＩＦＯに記憶されたデータを読み出してプリンタへ出力するプリント出力制御手段とを備え、上記ＤＭＡ転送手段は、所定量の上記イメージデータの継続したＤＭＡ転送中に、上記ＦＩＦＯメモリにおける空き領域の有無を検出し、上記ＦＩＦＯメモリに空き領域が無い場合は空き領域が生じるまで上記ＤＭＡ転送を一時停止する構成を有している。前記プリント出力制御手段は、印刷すべきライン数を監視するライン数制御手段を有している。
　【００１２】
　また、上記プリント出力制御手段は、ライン幅を超える部分の上記イメージデータは印刷を行わないデータ値に変更するようにしても良い。
　【００１３】
　また、本発明によるプリンタ制御方法は、バスを介して与えられるイメージデータを連続した記憶領域に記憶するシステムメモリと、前記システムメモリのイメージデータをＦＩＦＯメモリにＤＭＡ転送するＤＭＡ転送手段と、前記ＦＩＦＯメモリを介して前記バスに接続され、前記ＦＩＦＯに記憶されたデータを読み出してプリンタへ出力するプリント出力制御手段とを備えたプリント制御装置のプリンタ制御方法であって、所定量の上記イメージデータの継続したＤＭＡ転送中に、上記ＦＩＦＯメモリにおける空き領域の有無を検出する工程と、上記空き領域検出工程の検出結果により上記ＦＩＦＯメモリに空き領域が無い場合は空き領域が生じるまで上記ＤＭＡ転送を一時停止する上記ＤＭＡ転送手段の転送制御工程と、前記プリンタからの同期信号が来ているとき前記ＦＩＦＯメモリにデータがあるかどうかを調べる工程と、該工程で前記ＦＩＦＯメモリにデータがあれば前記プリンタへ出力し前記ＦＩＦＯメモリにデータが存在しないときエラーであるとの処理を行う工程を有している。
　【００１４】
　【作用】
　本発明による、プリンタ制御装置および方法によれば、プリンタ制御装置のプリントインターフェース制御部に、ＦＩＦＯのような一時記憶手段を設け、システムメモリからのイメージデータの転送を、その一時記憶手段へのＤＭＡ転送によって行う。一方、イメージデータのシステムメモリでの展開を、連続アドレス領域にて行っておく。ＤＭＡ転送は、バスが空いていれば随時行うことが出来るから、一時記憶手段には、プリンタへの出力が途切れないようにイメージデータが供給される。そのため、プリントインターフェース制御部内に、印刷ページ全体のイメージデータを格納し得る大容量のメモリを設ける必要がなくなる。また、ＤＭＡ転送は、各ライン毎にではなく、ページ全体のイメージデータを連続的に行うので、ラインの先頭アドレスを記録しておくテーブルを設ける必要がない。従って、コストが安くなる。
　【００１５】
　【実施例】以下、本発明の実施例を図面に基づいて詳細に説明する。図１は、本発明の第１の実施例にかかわるプリンタ制御装置および方法を示す図である。符号は図５のものに対応し、１３はＤＭＡ制御部、１３１はＤＭＡアドレス制御部、１３２はＤＭＡカウント制御部、１４は一時記憶手段としてのＦＩＦＯ（Ｆｉｒｓｔ　Ｉｎ　Ｆｉｒｓｔ　Ｏｕｔ）、１５は一時記憶データ出力制御手段としてのＦＩＦＯ制御部、１０３はライン数制御部である。図５の従来例と同じ符号の部分は、同様の機能を果たす。
　【００１６】
　第５図の従来例と異なる第１の点は、プリントインターフェース制御部２の内部構成が変えられたという点である。即ち、イメージメモリ７とラインバッファ８が無くなり、その代わりに、ＤＭＡ制御部１３と、イメージデータを一時的に記憶する手段であるＦＩＦＯ１４と、ＦＩＦＯ１４からシフタ９への出力を制御するＦＩＦＯ制御部１５（一時記憶制御手段）とが設けられている。
　第５図の従来例と異なる第２の点は、システムメモリ５にイメージデータ６を展開する仕方が変えられたという点である。即ち、第５図の従来例では、ページに印刷する状態で展開していたが、第１の実施例では、ページに印刷する状態とは関係なく、メモリの連続した領域に展開している。
　【００１７】
　システムメモリ５には、イメージデータが、１ラインの先頭のデータＤ１１から最終ラインの末端のデータＤＭＮまで、ＤＭＡ転送のアクセス単位で連続して展開される。例えば、１ラインの最終データＤ１Ｎを展開したからといって改行することはせず、直ぐその後に２ラインの先頭データＤ２１を展開する。この展開は、ＣＰＵ４によってなされる。
　イメージデータ６は、ＤＭＡ制御部１３により制御されるＤＭＡ転送により、ＦＩＦＯ１４に順次転送される。その制御に先立ち、ＣＰＵ４は、システムメモリ５に展開したイメージデータ６の先頭アドレス、つまりＤＭＡ転送開始アドレスをＤＭＡアドレス制御部１３１にセットし、イメージデータ６のデータ量、つまり転送サイズをＤＭＡカウント制御部１３２にセットする。
　【００１８】
　シフタ９からプリンタ１２への出力は、プリンタ１２からのライン同期信号とかページ同期信号とかに同期して行われる。しかし、イメージデータ６のＦＩＦＯ１４へのＤＭＡ転送は、バス３が空いており、ＦＩＦＯ１４に空きがある限り随時行うことが出来る。従って、ＦＩＦＯ１４へのＤＭＡ転送は、シフタ９からプリンタ１２への転送動作とは独立して行うことが出来る。
　【００１９】
　ＦＩＦＯ制御部１５は、ＦＩＦＯ１４からシフタ９への出力を制御する。ライン幅は予めＣＰＵ４によりＦＩＦＯ制御部１５に設定されており、プリンタ１２からのライン同期信号を受けると、シフタ９へデータを送出し始める。ライン幅分のデータを送出し終わると停止して、次のライン同期信号を待つ。
　シフタ９からプリンタ１２への出力は、プリント出力制御部１０によって制御される。図５の従来例に比べると、ライン数制御部１０３が新たに設けられているが、このライン数制御部１０３は、印刷すべきラインはあと何ライン残っているかを監視する。最初に、１ページに印刷すべきライン数が、ＣＰＵ４によりセットされ、１ライン分のイメージデータがプリンタ１２に送られる毎に１つづつカウントダウンされる。
　【００２０】
　ライン数制御部１０３は必須のものではなく、必要に応じて設けられる。これを設けておき、１ページのライン数をプリンタ１２に出力し終えたところで、プリントインターフェース制御部２の動作を終了させる。
　プリンタの種類によっては、１ページに印刷すべきライン数の印刷を終了したにもかかわらず、ライン同期信号を送って来るものがあるが、その場合にプリントインターフェース制御部２がまだ通常の動作状態にあると、シフタ９やＦＩＦＯ１４にはもはやデータが無いのをみて、印刷不能とか印刷不良とかの表示を出して動作を停止する等のエラー処理をすることになる。ライン数制御部１０３を設けて上記のように利用すれば、このようなエラー処理に至るのを防ぐことが出来る。
　【００２１】
　図２は、本発明におけるデータ転送動作およびプリンタ出力動作を説明するフローチャートである。まず図２（イ）のフローチャートに従ってデータ転送動作を説明する。
ステップ１…システムメモリ５内に、イメージデータを展開するための領域を、連続アドレスにて確保する。
ステップ２…そこにイメージデータを展開する。
ステップ３…展開されたイメージデータ６の先頭アドレスを、ＤＭＡ転送の開始アドレスとしてＤＭＡアドレス制御部１３１にセットする。展開されたデータ量を、転送サイズとしてＤＭＡカウント制御部１３２にセットする。
　【００２２】
　ステップ４…ＦＩＦＯ１４に空き領域があり、且つバス３が使用できれば、イメージデータ６をＦＩＦＯ１４へＤＭＡ転送する。
ステップ５…ＤＭＡカウント制御部１３２の値から、ＤＭＡ転送したデータサイズをカウントダウンする。ＤＭＡカウント制御部１３２の新しい値は、まだＤＭＡ転送されないで残っているデータ量を示す。また、ＤＭＡアドレス制御部１３１の開始アドレスを、転送されずに残っているイメージデータ６の先頭アドレスの値に変える。
ステップ６…ＤＭＡ転送が終了したかどうかチェックする。ＤＭＡカウント制御部１３２の値がゼロであれば、予定したＤＭＡ転送は終了したことになる。
ステップ７…まだ終了していなければ、ＦＩＦＯ１４が満杯になったかどうか調べる。まだ空きがあれば、ステップ４に戻り、ＤＭＡ転送を続ける。
　【００２３】
　次に、図２（ロ）のフローチャートに従って、プリントインターフェース制御部２からプリンタ１２へのデータ転送動作を説明する。
ステップ１…プリンタ１２からのページ同期信号（垂直同期信号）が来ているかどうかチェックする。
ステップ２…来ていれば、ライン同期信号（水平同期信号）も来ているかどうかチェックする。
ステップ３…両方の同期信号が来ていれば、プリンタ１２へデータを出力しなければならないが、ＦＩＦＯ１４にデータがあるかどうか調べる。
　【００２４】
　ステップ４…ＦＩＦＯ１４にデータがなければ、出力すべきなのにデータが存在しないという状態になっているので、エラーであるとの処理をする。
ステップ５…ＦＩＦＯ１４にデータがあれば、シフタ９を介してプリンタ１２へ出力する。
ステップ６…ＦＩＦＯ１４からシフタ９へは、予めＣＰＵ４により設定されたライン幅分のデータが送られるよう、ＦＩＦＯ制御部１５で制御されるが、そのデータ量が転送されたかどうかをチェックする。１ライン分転送されると、ライン数制御部１０３の値が、１だけカウントダウンされる。
ステップ７…設定されたライン数分だけ転送したかどうかチェックする。ライン数制御部１０３の値がゼロとなっていれば、転送は終了している。転送終了していれば、プリントインターフェース制御部２の動作を終了させる。
　用紙にプリントされた状態は、従来と同じで、図７のようになる。
　【００２５】
（第２の実施例）図３は、本発明の第２の実施例にかかわるプリンタ制御装置および方法を示す図である。符号は図１のものに対応し、１０４はライン幅制御部である。第１の実施例と異なる点は、プリント出力制御部１０にライン幅制御部１０４を追加した点である。第１の実施例では、ライン幅がＤＭＡ転送のアクセス単位（例、８画素単位）でしか設定できなかったが、第２の実施例では、イメージデータが上記アクセス単位でしか用意されていなくっても、ライン幅は１画素単位の精度で印刷できるようにしたものである。
　【００２６】
　図９は、第２の実施例によるプリント状態を示す図である。符号は図７のものに対応し、２７はイメージの印刷ライン幅、２８はイメージの設定ライン幅である。Ｋの添字の付いたＤ１Ｋ，Ｄ２Ｋ，ＤＭＫは、ＤＭＡ転送のアクセス単位の画素数（例、８画素）より少ない画素数（例、１画素）のデータである。
　【００２７】
　イメージデータ上でのライン幅の設定は、第１の実施例（図１）と同様にして、ＣＰＵ４によってＦＩＦＯ制御部１５に対して行われる。ここでの設定は、前記アクセス単位データ幾つで１ラインとするかというように、アクセス単位データを単位として行われる。
　もし、ここで設定されたライン幅のイメージデータを全てプリンタ１２に送って印刷すると、最初のラインは、図９のＤ１１からＤ１Ｎまでが印刷されるというように、図９に図示したイメージの設定ライン幅２８の幅に印刷される。これは第１の実施例と同様である（図７参照）。
　【００２８】
　一方、ライン幅制御部１０４には、実際に印刷するライン幅を、ＦＩＦＯ制御部１５に設定されたライン幅より短い範囲で、１画素単位で設定する。シフタ９からプリンタ１２への出力の制御はプリント出力制御部１０によって行われるが、その際、ライン幅制御部１０４で設定したライン幅を超える部分のデータは、印刷を行わないデータ値（例えば、ゼロ）に強制的に変更されて出力される。従って、実際に印刷されるライン幅は、図９に図示するイメージの印刷ライン幅２７となる。ライン幅制御部１０４での設定は１画素単位で行うから、ライン幅を１画素単位で調節できる。
　なお、イメージデータ値の強制的変更は、ＦＩＦＯ１４からシフタ９へ出力する時に行ってもよい。
　【００２９】
（第３の実施例）
図４は、本発明の第３の実施例にかかわるプリンタ制御装置および方法を示す図である。符号は図１のものに対応し、１６は拡張ＦＩＦＯ制御部である。拡張ＦＩＦＯ制御部１６は、ＦＩＦＯ１４からシフタ９への出力を制御すると共に、シフタ９からプリンタ１２への出力の制御にも関与する。即ち、シフタ９からプリンタ１２へ出力している時、１画素単位で所定のライン幅分だけ出力すると、出力を一旦停止する。そして、次のライン同期信号が来た時、出力を再開する。
　【００３０】
　一方、システムメモリ５にイメージデータ６を展開する際、実際に印刷しようとしているライン幅に合わせ、それに必要なデータを展開する。即ち、第２の実施例では、図９の最初のラインに例をとれば、データＤ１Ｋの次のデータから最後のＤ１Ｎまでのデータは、ライン幅を超える位置のデータであったために印刷されず、無駄なデータとして終わってしまったが、第３の実施例では、そのような無駄なデータの展開は最初からしない。
　【００３１】
　第３の実施例（図４）のシステムメモリ５では、１ライン目のデータとしてＤ１１〜Ｄ１Ｋまでが展開されているが、印刷しようとしているライン幅がＤＭＡ転送のアクセス単位データの倍数ではない場合には、１ラインの末端のデータＤ１Ｋは該アクセス単位以下のデータ（例えば、３画素とか２画素）となる。２ライン目の最初の部分のデータＤ２１のデータサイズは、１ライン目の末端のデータＤ１Ｋと合わせて１つのアクセス単位データとなるようなデータサイズとされる。他のラインの末端および先頭も、同様に展開される。
　【００３２】
　ＦＩＦＯ１４へ転送されたＤ１ＫとＤ２１は、やがてシフタ９へ出力されるが、シフタ９から１画素単位でプリンタ１２へ出力して行き、Ｄ１Ｋのデータを送り終えたところで、拡張ＦＩＦＯ制御部１６はライン幅分だけ送出したことを知る。そこでプリンタ１２への出力を停止する。Ｄ２１のデータの送出は、プリンタ１２から次のライン同期信号が来てから開始されるが、そのデータは２ライン目の先頭からの印刷に使用される。
　【００３３】
　図８は、第３の実施例によるプリント状態を示す図である。符号は、図７のものに対応している。前記した動作により、データＤ１１〜Ｄ１Ｋで１ライン目が印刷され、データＤ２１〜Ｄ２Ｋで２ライン目が印刷されている。Ｄ１ＫはＤＭＡ転送のアクセス単位以下のデータであるから、イメージの印刷ライン幅２７は、任意の画素数の長さとすることが出来る。
　【００３４】
　図１０は、ＤＭＡ制御部１３の他の構成例を示す図である。現アドレス検知部３１は、ＤＭＡ転送中の現在のアドレスを検知する。アドレス比較部３０は、その現在のアドレスと比較アドレス提供部３２のアドレスとを比較する。比較アドレス提供部３２には、ＤＭＡ転送開始アドレス３２１とＤＭＡ転送終了アドレス３２２とが設定されており、それらとの比較により、転送の開始と終了とを判断する。
　【００３５】
　【発明の効果】
以上述べた如く、本発明のプリンタ制御装置および方法によれば、システムメモリに展開されたイメージデータは、ＤＭＡ転送によりプリントインターフェース制御部内の一時記憶手段（ＦＩＦＯ）に随時送られる。このＤＭＡ転送は、プリンタのプリントするタイミング（例、ライン同期信号等）とは無関係に、バスが空いている時に随時行えるので、プリントするタイミングにイメージデータが間に合わなくなることはない。従って、１ページのイメージデータを保持しておけるメモリを、プリントインターフェース制御部内に持つ必要がない。また、イメージデータをシステムメモリの連続アドレス領域に展開しておき、ＤＭＡ転送を各ライン毎ではなく連続的に行うので、各ラインの先頭アドレスを記録するためのテーブルなどは設ける必要がない。従って、コストが安くなる。
【図面の簡単な説明】
　【図１】本発明の第１の実施例にかかわるプリンタ制御装置および方法を示す図
　【図２】本発明におけるデータ転送動作およびプリンタ出力動作を説明するフローチャート
　【図３】本発明の第２の実施例にかかわるプリンタ制御装置および方法を示す図
　【図４】本発明の第３の実施例にかかわるプリンタ制御装置および方法を示す図
　【図５】従来のプリンタ制御装置を示す図
　【図６】シフタの動作を説明する図
　【図７】ライン幅がＤＭＡ転送のアクセス単位の画素数の倍数とされているプリント状態を示す図
　【図８】第３の実施例によるプリント状態を示す図
　【図９】第２の実施例によるプリント状態を示す図
　【図１０】ＤＭＡ制御部の他の構成例を示す図