JP3506335B2 - 制御方法 - Google Patents

制御方法

Info

Publication number
JP3506335B2
JP3506335B2 JP2003081879A JP2003081879A JP3506335B2 JP 3506335 B2 JP3506335 B2 JP 3506335B2 JP 2003081879 A JP2003081879 A JP 2003081879A JP 2003081879 A JP2003081879 A JP 2003081879A JP 3506335 B2 JP3506335 B2 JP 3506335B2
Authority
JP
Japan
Prior art keywords
data
printer
memory
scan
address
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.)
Expired - Lifetime
Application number
JP2003081879A
Other languages
English (en)
Other versions
JP2003335007A (ja
Inventor
ジェイ レンツ,デレク
エム ヤング,リンレイ
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Seiko Epson Corp
Original Assignee
Seiko Epson Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Seiko Epson Corp filed Critical Seiko Epson Corp
Publication of JP2003335007A publication Critical patent/JP2003335007A/ja
Application granted granted Critical
Publication of JP3506335B2 publication Critical patent/JP3506335B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K15/00Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K2215/00Arrangements for producing a permanent visual presentation of the output data
    • G06K2215/0082Architecture adapted for a particular function
    • G06K2215/0091Outputting only video data, e.g. Hard copy of CRT display
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K2215/00Arrangements for producing a permanent visual presentation of the output data
    • G06K2215/0082Architecture adapted for a particular function
    • G06K2215/0094Colour printing

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Record Information Processing For Printing (AREA)
  • Multi Processors (AREA)
  • Accessory Devices And Overall Control Thereof (AREA)

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は制御対象ヘのスキャ
ン・データを同期させる処理等を行う制御方法に関す
る。
【0002】
【従来の技術及び発明が解決しようとする課題】本特許
出願は、1991年7月8日出願され、係属中の米国特
許出願第07/726,929号、発明の名称「シング
ル・チップ・ページ・プリンタ・コントローラ」(Si
ngle Chip Page Printer Co
ntroller)に関連するものであり、当該米国特
許出願の番号を参照することによって当該米国特許出願
の明細書の記載内容が本明細書の一部分を構成するもの
とする。
【0003】本発明は新規なプロセッサを有し、コンピ
ュータ・システムにかかる処理負担を最小限に抑えるこ
とができるプロセッサを有する装置及び制御方法を提供
しようとするものである。
【0004】
【課題を解決するための手段】本発明は、少なくとも命
令を発行する第1のプロセッサと、メモリと通信する第
2のプロセッサを有し、スキャン・データ・フェツチ、
シリアル化並びに制御対象との同期化を実行する制御方
法であって、第1のプロセッサからのコマンドを受信
し、第2のプロセッサの制御と監視に関する情報を保持
するとともに、制御対象の動作モードを設定するステッ
プと、フレーム・バツファ・アドレス及びフォーマット
定数を格納するステップと、メモリ・アドレス及び制御
信号を生成するために前記フレーム・バッファ・アドレ
ス並びに前記フォーマット定数に対して算術演算を実行
するステップと、前記メモリにアクセスする前に前記メ
モリ・アドレスを一時的にラッチするステップと、前記
メモリから並列スキャン・データを受信するステップ
と、ぺージ・スキャン中にフレーム・バッファ内の前記
スキャン・データをクリアするステップと、前記スキャ
ン・データを制御対象にシリアル化して送るステップ
と、を有することを特徴とする。
【0005】
【発明の実施の形態】以下、本発明の実施の形態につい
て説明する。本発明よる好適な実施例は以下に詳述する
ものであるが、当業者は、本発明が新たに教えるところ
並びに利点から本質的に外れることなく、多くの修正変
更を加えることができることを容易に認識するであろ
う。従って、そうした修正変更もすべて特許請求の範囲
に記載されている通り、本発明の請求範囲内に含まれる
ものである。図1に示すように、ページ・プリンタ・シ
ステムは、典型として、命令用マイクロプロセッサ(i
nstruction microprecesso
r)102、プリンタ・ビデオ・プロセッサ(PVP)
104、ページ・メモリ106(「フレーム・バッフ
ァ」としても知られる)、シリアル通信インタフェース
108、並びにプリンタ・エンジン110を備えてい
る。一般的に、命令用マイクロプロセッサ102は、命
令セットを実行し、それによって用紙のページ上に印刷
されるべきデータを生成する。生成されたデータは、ぺ
一ジ・メモリ106に送られ、そこでプリンタ・ビデオ
・プロセッサ104によって検索される。双方向矢印1
16が示すように、命令用マイクロプロセッサ102は
またプリンタ・ビデオ・プロセッサ104とステータス
信号の交換もする。
【0006】プリンタ・ビデオ・プロセッサ104とプ
リンタ・エンジン110は、プリンタ・ビデオ・プロセ
ッサ104からプリンタ・エンジン110に送られたス
キャン・データの周波数並びにタイミングを制御するた
めに、ハンドシェイク制御信号及びクロックを介して通
信する。汎用非同期送受信器(UART)などのシリア
ル通信インタフェース108は、命令用マイクロプロセ
ッサ102がステータス情報を直接プリンタ・エンジン
110に通信するのを可能にする。
【0007】同時係属出願中の、米国特許出願第07/
726,929号、発明の名称「シングル・チップ・ペ
ージ・プリンタ・コントローラ」(Single Ch
ipPage Printer Controlle
r)において、超大規模集積回路(VLSIC)半導体
チップの形をしたページ・プリンタ・コントローラをプ
リンタ・エンジン110の制御用として提案している。
【0008】図2はページ・プリンタ・システムの具体
的な実現方法を示す図であり、それにおいて、ページ・
プリンタ・コントローラはコンピュータ・システムから
離れているが、プリンタ・エンジンに極めて近い位置に
置かれている。また、ページ・プリンタ・コントローラ
は、コンピュータ・システムに掛かる処理負担を最小限
に抑さえるように、画像操作を行うための周辺構成要素
を内蔵している。
【0009】図2に示すように、ページ・プリンタ・コ
ントローラ202はホスト・コンピュータ・システム2
03から遠く離れた位置でプリンタ・エンジン110に
きわめて接近したところに設置されている。一般的に、
ページ・プリンタ・コントローラ202は、システム・
メモリ204内に格納されたスキャン・データにアクセ
スし、且つ実際の印刷のためにそのデータをプリンタ・
エンジン110に送るように設計されている。
【0010】VLSICのページ・プリンタ・コントロ
ーラ202は、命令用マイクロプロセッサ102、プリ
ンタ・ビデオ・プロセッサ104、シリアル通信インタ
フェース108、入出力インタフェース206並びにメ
モリ・システム208を備えている。命令用マイクロプ
ロセッサ102は、診断を実行するだけでなく、スキャ
ン・データの座標変換、クリッピング、スケーリング、
ラスタ化を実現することができる。入出力インタフェー
ス206は、210から216までの種々の矢印が示す
ように、本質的にページ・プリンタ・コントローラ20
2の内部構成要素のすべてに対するインタフェースであ
るが、それ以外に入出力バス・ネットワーク217に接
続された全ての外部周辺機器に対するインタフェースと
しての役割ももつ。さらに、メモリ・システム208
は、システム・メモリ204内のページ・メモリ106
からのデータがロードされている高速キャシュを含んで
いる。
【0011】オペレーションでは、プリンタ・ビデオ・
プロセッサ104は、入出力インタフェース206に対
し要求を出すことによって、外部ページ・メモリ106
内のデータにアクセスする。要求の度に、プリンタ・ビ
デオ・プロセッサ104は、外部ページ・メモリ106
内のアドレス位置とデータ・サイズを入出力インタフェ
ース206に送る。要求を出したら、プリンタ・ビデオ
・プロセッサ104は次の要求のためにアドレスとデー
タ・サイズを更新する。その一方、入出力インタフェー
ス206は、メモリ・システム208による使用のため
の準備が完了するまで、そのアドレスとデータ・サイズ
を格納しておく。メモリ・システム208は、この情報
を使って、外部ページ・メモリ106から正しいスキャ
ン・データにアクセスして、プリンタ・ビデオ・プロセ
ッサ104にデータを戻す。プリンタ・ビデオ・プロセ
ッサ104は、その後、そのデータを格納して、プリン
タ・エンジン110にそのデータを直列に送り出す。そ
のシリアル通信はプリンタ・エンジン110のクロック
と同期をなす。スキャン・データを割り込みのない流れ
(uninterrupted stream)でプリ
ンタ・エンジン110に送るためには、プリンタ・ビデ
オ・プロセッサ104は、ページ・メモリ106に対す
るデータ要求の処理に伴う待ち時間に見合う十分なスキ
ャン・データを待ち行列(queue)に入れなければ
ならない。
【0012】ページ・プリンタ・コントローラ202の
使用には多くの重要な利点がある。ページ・プリンタ・
コントローラ202は、ページ・メモリ106からスキ
ャン・データヘの直接メモリ・アクセス(direct
memory access:DMA)に対応するこ
とができる。データがアクセスされてから、もしそうし
たければ、システム・メモリ204の外部に位置する命
令用マイクロプロセッサ102によって操作することが
できる。そうすることによって、コンピュータ・システ
ム203に掛かる処理負担を軽減する。さらに、命令用
マイクロプロセッサ102は、コンピュータ・システム
203に関連するプロセッサ同様、簡略命令セット・コ
ンピュータ(reduced instruction
setcomputer:RISC)型のアーキテク
チャの一つであることを明示しているかもしれない。R
ISC型アーキテクチャでは命令数が限られる。そのよ
うな構成はさらに性能を向上させる。
【0013】本発明は新規のビデオ・プロセッサを有す
る装置であり、特にプリンタを制御するためのプロセッ
サである。ビデオ・プロセッサはプリンタと局所的に連
結され、命令プロセッサおよびメモリと通信する。ビデ
オ・プロセッサはタイミング信号を生成し、スキャン・
データ・フェッチ、シリアル化、そしてプリンタの同期
化を行う。
【0014】ビデオ・プロセッサは、レジスタ・ファイ
ル、加算減算器(adder/subtracto
r)、シリアル化、制御のそれぞれの手段を備え持って
いる。レジスタ・ファイル手段はフレーム・バッファ・
アドレスおよびフォーマット定数を格納する。
【0015】加算器手段は、メモリ・アドレスならびに
プリンタ制御信号を生成するために、フレーム・バッフ
ァ・アドレスとフォマット定数に対し算術演算(ari
thmetic operation)を実行する。
【0016】シリアル化手段はメモリから並列データを
受信して、そのデータをシリアル化してプリンタへ送
る。
【0017】最後に、制御手段は命令プロセッサから制
御信号を受信する。制御手段は、レジスタ・ファイル手
段にアクセスする。さらに、加算器手段とシリアル化手
段を制御するのもこの制御手段である。
【0018】特に、ビデオ・プロセッサは、ブリンタに
局所的に置かれるべきプリンタ・コントローラとして提
供されている。プリンタ・コントローラ内のマイクロプ
ロセッサが命令を実行し画像処理を行い、一方ビデオ・
ブロセッサは、スキャン・ステータス及び割り込み信号
の生成以外にスキャン・データのフェッチ、シリアル化
並びにプリンタ・エンジンの同期化を実現するのに必要
な機構を備えている。ビデオ・プロセッサは、入出カイ
ンタフェースに要求を出すことによって、フレーム・バ
ッファとも呼ばれる外部ぺ一ジ・メモリ内のデータにア
クセスする、各要求は相当するデータ・サイズをもつア
ドレスから成り立っている。スキャン・データ要求が出
されたら、ビデオ・プロセッサは次の要求のためにアド
レスおよびデータ・サイズを更新する。要求データを受
信すると、ビデオ・プロセッサはスキャン・データを直
列にプリンタ・エンジンに送信する。スキャン・データ
を割り込みのない流れでプリンタ・エンジンに送るため
には、プリンタ・ビデオ・プロセッサは、ぺ一ジ・メモ
リヘのデータ要求を処理するのに掛かる待ち時問に見合
うのに十分なスキャン・データを待ち行列に入れなけれ
ばならない。I.アーキテクチャ本発明によるプリンタ
・ビデオ・プロセッサ300のアーキテクチャは図3に
例を挙げて説明されている。プリンタ・ビデオ・プロセ
ッサ300は、メモリからのスキャン・データのフェッ
チ、プリンタへのスキャン・データのシリアル化、プリ
ンタとの同期化、スキャン状況信号の生成、そして割り
込み生成を実現するのに必要な機構を備えている。
【0019】一般的に、プリンタ・ビデオ・プロセッサ
300は2つのサブシステムに分けることができる。第
1のサブシステムはI/Oインタフェース206及びプ
リンタ・エンジン110と通信し、第2のサブシステム
はメモリ・システム208並びにプリンタ・エンジン1
10と通信する。
【0020】図3において、第1サブシステムは、PV
P−IOUインタフェース302、ピクセル・カウンタ
304、レジスタ・ファイル306、読み出し専用メモ
リ(ROM)308、加算器310、アドレス・ラッチ
312、命令/ステータス/モード・レジスタ314・
並びにコントローラ316で構成されている。PVP−
IOUインタフェース302はI/OアドレスとI/O
データバスのフロー(流れ)を制御するためのトライス
テート・バッファを備えている。ピクセル・カウンタ3
04は、印刷されたテキストに関する、左マージンとピ
クセル・スキャンのドット・クロックをカウントするた
めに使われる。レジスタ・ファイル306は、1書き込
み/2読み出しのポート・レジスタ・ファイルである
が、そこにはフレーム・バッファ・アドレスとフォーマ
ットに関する情報が収められており、タイミングとメモ
リ・アドレスを生成するために使用される。レジスタ・
ファイル306に収められているレジスタを以下の表A
に示す。 <表A>レジスタ 目的 Base フレーム・バッファ開始アドレス(バイト・アドレス) Pbase 旧ベース・レジスタ(バンド・バッファ・モード) X max フレーム・バッファ・スキャンの幅 (バイト数で、8の最寄りの倍数に切り上げ) Y step メモリ・アドレス・インクリメント(バイト数) Y max フレーム内のスキャン数 T margin フレーム上部のスキャン数 Bsize バンド・バッファ・サイズ(行数) V mit 垂直方向割り込みスキャン番号 Base current 現ベース・レジスタ(内部使用) Current 現スキャン・メモリ・アドレス(内部使用) X current スキャン内の現Xアドレス(内部使用) Y current 現スキャン番号(内部使用) Data size メモリ・アクセス・サイズ(内部使用) Bcnt 現バンド・バッファ内の現在位置(内部使用) Tmp 0 一時レジスタ(内部使用) Tmp l 一時レジスタ(内部使用) Tmp 2 一時レジスタ(内部使用) さらに、タイミング計算用に2個の別のレジスタが使わ
れているが、レジスタ・ファイルのスペース節約のた
め、レジスタ・ファイル306には含まれていない。そ
の2個のレジスタを以下の表Bに示すが、好適な実施例
ではピクセル・カウンタ304の中に収められている。 <表B>レジスタ 目的 margin 最初のドットの左側までのビデオ・クロック数 マイナス(−)2 X maxl スキャン・ライン内のバイト数マイナス(−)1 レジスタ・ファイル306と密接に関連する読み出し専
用メモリ(ROM)308はフォマット定数セットから
成る。好適な実施例において、ROM308は0、1、
4、8、16の定数から成っている。
【0021】加算器310はレジスタ・ファイル・デー
タ及び/又はROM定数に対して算術演算を行う。その
計算結果は、レジスタ・ファイル306に書き戻すこと
ができるが、アドレス、制御、さらにステータス信号を
生成するために、コントローラ316によって使用され
る。具体的には、加算器310は「キャリー・アウト」
フラグと「ゼロ」フラグを生成し、その2つのフラグは
コントローラ316によって大きさを比較するために使
われる。「キャリー・アウト」フラグは、最初のオペラ
ンドの大きさが2番目のオペランドより大きいか小さい
かのどちらかであるかどうかを示す。一方、「ゼロ」フ
ラグは、最初のオペランドの大きさが2番目のオペラン
ドと同じであるかどうかを示す。例を挙げると、ゼロ・
フラグは、現アドレスが旧アドレスに一致していると、
加算器310によってコントローラ316に送られる。
【0022】アドレス・ラッチ312は現アドレスを格
納する。アドレス・ラッチ312内の現アドレスは、メ
モリ読み出し/書き込み要求時に、PVP―IOUイン
タフェース302に転送される。アドレス・ラッチ31
2は、コントローラ316がI/Oアドレス・バスをコ
ントロールする周期の回数を減らすために必要である。
性能上の理由から、メモリ読み出し/書き込み要求時
に、コントローラ316は、レジスタ・ファイル306
から現アドレスを読み出するのではなく、アドレス・ラ
ッチ312内の現アドレスがI/Oアドレス・バス上に
送り出せるようにトライステート・バッファをイネーブ
ルにする。
【0023】コマンド/ステータス/モード・レジスタ
は、集合的に参照番号314で表示されているが、ソフ
トウエアによるスキャン変換制御、ソフトウエアによる
スキャン変換の監視、並びにソフトウエアによるPVP
割り込みの制御を可能にするために、命令用マイクロプ
ロセッサ102によって読み出しまたは書き込みができ
る場合がある。命令用マイクロプロセッサ102は、診
断を実行する以外に、座標変換、クリッピング、スケー
リング、スキャン・データのラスタ化を実現できる。
【0024】オペレーションでは、コントローラ316
はコマンド・レジスタ314の制御の下でプリンタ・ビ
デオ・プロセッサ300のシーケンスを進めさせる。命
令用マイクロプロセッサ102は、コマンド・レジスタ
314の開始フレーム・ビットをセットすることによっ
て、スキャン・コマンドをロードし、その情報を受けて
コントローラ316はスキャンを開始する。コントロー
ラ316はスキャンを初期設定し、シーケンス従ってペ
ージをスキャンしていく。コントローラ316は、ペー
ジが完了するまで、一連の計算を行ない、シリアライザ
にロードするためのメモリ・アドレスとプリンタ・エン
ジン110に対するタイミングを生成する。ページ完了
時に、コマンド・レジスタ314のスキャン保留ビット
がリセツトされていれば、新しいアドレスからスキャン
が再開される。
【0025】モード・レジスタ314は、以下にコマン
ド・レジスタ314について説明するように、ページ・
オペレーションに先立ってプログラムされている、読み
出し/書き込みのレジスタである。モード・レジスタ3
14はダブル・バッファ方式ではない。さらに、PVP
300が作動している間、モード・レジスタ314をダ
イナミックにプログラムすることは好適な実施例におい
ては許可されていない。モード・レジスタ314の内容
は以下の表Cに記載の通りである。 <表C>モード・ビット リセット・レベル 機能 <0> TMDE 0 タイミング・モード <1> JBMS 0 JBMSモード <2> BBE 0 バンド・バッファ・イネーブル <3> CINT 0 印刷完了割り込みイネーブル <4> VINT 0 垂直方向割り込みイネーブル <5> PRDY 0 PRDY割り込みイネーブル <6> VSREQ 0 VSREQ割り込みイネーブル <7> BBI バンド・バッファ割り込み イネーブル <8> DIV 0 ビデオ・クロック分割選択 <9> BLV 0 ブラック・レベル <31:10> 予備 0 「0」にプログラムする 「タイミング・モード」ビットと「JBMS」ビットは
一緒に、PVP300がモードのI、II、あるいはI
IIのどれでオペレートするかを選択する。この3つの
モードは対話特性が異なる従来型の別々のプリンタに各
々対応している。言い換えれば、本発明によるプリンタ
・ビデオ・プロセッサ300は、ソフトウエアによる初
期設定によって従来型のプリンタ3タイプの1つとの対
話処理が可能になる、変更可能型のシステムである。
【0026】もっと具体的に説明すれば、本明細書に記
載されているモードIでオペレートする従来型のプリン
タでほ、ステータス・レジスタ314の垂直方向同期化
(VSync)ビットをソフトウエアによりセツトする
ことによって、ページ・オペレーションが開始される。
さらに、プリンタ・クロックは高速でのフリー・ランニ
ングである。VSync信号は、プリンタ・エンジン1
10からのFSYNC信号に応えてソフトウェアによっ
て生成されることに注意していただきたい。本明細書に
記載されているモードIIでオペレートする従来型のプ
リンタでは、プリンタのFSYNC信号がプリンタ・ビ
デオ・プロセッサ300をトリガしてページ・オペレー
ションが開始される。さらに、プリンタ・クロックはフ
リー・ランニングである。最後に、本明細書に記載され
ているモードIIIでオペレートする従来型のプリンタ
では、プリンタのFSYNC信号がプリンタ・ビデオ・
プロセツサ300をトリガしてページ・オペレーション
が始まるが、この場合プリンタ・クロックはフリー・ラ
ンニングではない。
【0027】好適な実施例における、JBMS及びTM
DEビットに対するデコーディング・スキームを以下の
表Dに示す。ここに記載した以外にも数多くのデコード
表が考えられ、またプリンタ・モードも3種類以外に定
義並びにエンコード可能なことが理解されるはずであ
る。 <表D>IBMSビット TMDEビット モード 0 1 I 0 0 II 1 1or0 III JBMS及びTMDEビットにより定義されているよう
に、プリンタ・ビデオ・プロセッサ300がモードIで
オペレートするようにプログラムされいている場合、D
IVビットが「0」ならばビデオ入力クロックを8分割
し、「1」ならば16分割にするようにPVPクロック
・ジェネレータ(図4の参照番号408、410)に通
報する。プリンタ・ビデオ・プロセッサ300が、モー
ドIIもしくはモードIIIでオペレートするようにプ
ログラムされている場合、PVPクロック・ジェネレー
タはビデオ入力クロックの分割を行なわない。
【0028】さらに、好適な実施例においては、「バン
ド・バッファ・モード」を実現できるので、それによっ
てメモリ管理が変更可能になっている。BBEビットが
ロジック・ハイ(「1」)であれば、バンド・バッファ
・モードが選択されるが、それ以外は通常の全ページ・
モードが選択される。本明細書において、バンド・バッ
ファ・モードはオペレーションの一つのモードである。
そのモード時、プリンタ・ビデオ・プロセッサ300
は、テキスト・ページを印刷するためにページ・メモリ
内の異なるフレ一ム・バッファを交互に使用する。バン
ド・バッファは各々がBサイズ・スキャン・ラインのメ
モリ・ブロックである。最初のバンド・バッファに属す
る第1アドレスは「ベース」アドレスのことを指してい
る。それ以外のバンド・バッファに属する第1アドレス
は以降「Pベース」アドレスと呼ぶ。
【0029】さらに、モード・レジスタ314におい
て、CINT、VINT、PRDY及びVSREQのビ
ットはそれぞれの割り込み発生源が割り込み可能である
ことを表す。これらのビットのどれかがロジック・ハイ
にセットされていれば、そのときその関連割り込み発生
源は特定のPVP割り込みの生成をイネーブルにする。
好適な実施例においては、一度に複数の割り込みがアク
ティブになる場合がある。
【0030】モード・レジスタ314のPRDYビット
がロジック・ハイにセットされており、そのとき、もし
プリンタ・エンジン110からのプリンク準備完了(P
RDY)信号がインアクティブ(inactive)か
らアクティブ(active)に遷移すれば、割り込み
が通知される。さらに、モード・レジスタ314のビデ
オ・スキャン要求(VSREQ)ビットがロジック・ハ
イにセットされており、そのとき、もしプリンタ・エン
ジン110からのVSREQ信号がインアクティブから
アクティブに遷移すれば、割り込みが通知される。
【0031】BLVビットはロジック・ハイかローのど
ちらかによって、「ホワイト・レベル」か「ブラック・
レベル」のいずれであるかを示す。前記のレベルは、本
発明のプリンタ・ビデオ・プロセッサ300によって可
能になる、別の特徴によるスキャン・データの反転に関
連する。通常、プリンタ・エンジン110に送られたロ
ジック・ロー(「0」)はページのホワイトに相当して
おり、ロジック・ハイ(「1」)はページのブラックに
相当する。好適な実施例においては、ブラック・レベル
がデフォルトのレベルである。反転が選択されていれ
ば、ロジック・ローはブラックに相当し、ハイはホワイ
トに相当する。ただし、マージンは例外で常にホワイト
のまま変わらない。図6に関し後に詳述しているよう
に、スキャン・データはマージンで「ブランキング(b
lanking)」されると言う(ロジック347に送
り込まれたブラック・レベル信号634とブランク信号
636)。
【0032】表Cに示す予備ビットは、望ましくない副
作用が引き起こされるのを防止するためにゼロにプログ
ラムしておく必要がある。予備ビットは生産テスト機構
か将来の性能強化を実現するために備えられている。
【0033】コマンド・レジスタ314は、命令用マイ
クロプロセッサ102内の制御用ソフトウエアからのコ
マンドを受信する書き込み専用のレジスタである。その
内容はステータス・レジスタ314を通じて読み取るこ
とができる。コマンド・レジスタ314の内容を以下の
表Eに示す。 <表E>コマンド・ビット リセット・レベル 機能 <0> STF 0 フレーム開始 <1> RSET 0 リセットPVP(診断用) <2> BKRL 0 裏面印刷、右から左へ <3> ERASE 0 印刷後消去 <31:4> 予備 0 「0」にプログラム コマンド・レジスタ314は、PVPオペレーションを
開始し、ある種のテスト機能をサポートするために使用
される。コマンド・レジスタ314による以外、どんな
オペレーションも開始されない。コマンド・レジスタ3
14は、性能上の理由と変更可能な仕様にするためにダ
ブル・バッファ方式になっている。コマンド・レジスタ
314の最初のローディングによって、PVP300に
よるフレーム生成が許可される。コマンド・レジスタ3
14が2度目にロードされると、2番目のフレームがリ
セット(RSET)もしくはテスト機能でない限り、最
初のフレーム完了後に開始される。続いて、最初のフレ
ームが完了する前に、もしコマンド・レジスタ314が
3度目にロードされると、その結果は予測不能になる場
合がある。ただし、RSETビットがセットされている
場合は例外で、その場合全てのオペレーションが打ち切
られる。
【0034】表EのSTFビットは「開始フレーム」コ
マンドに相当しており、通常のシステム・オペレーショ
ン時にPVP300が実行するタイミングとDMAのオ
ペレーションを開始する。プリンタ・コントローラ・リ
セット信号が要求されると、コマンド・レジスタ314
はクリアされ、全てのオペレーションが中止される。コ
マンド・レジスタ314のRSETビットをセットする
ことによっても、全てのオペレーションを中断すること
ができる。基本的に、RSETビットはコマンド・レジ
スタ314内の他のビットに優先する。
【0035】BKRLビットは、「裏面印刷」が行われ
ようとしているかどうかを表す。裏面印刷がセットされ
ている場合、ページは逆の順序でスキャンされ。即ち、
下から上に、右から左へ。
【0036】ERASEビットはフレーム・バッファが
印刷後消去されるかどうかを表す。より具体的には、メ
モリ・ワードが印刷のためにプリンタ・ビデオ・プロセ
ッサ300によって読み出されてから、そのメモリ・ワ
ードは消去される。この特徴により性能をさらに向上さ
せることができる。
【0037】表Eに示す予備ビットは、望ましくない副
作用が引き起こされるのを防止するためにゼロにプログ
ラムしておかなければならない。この予備ビットは生産
テスト機構か将来の性能強化を実現するために使われる
ことがある。
【0038】ステータス・レジスタ314は、PVP3
00の制御と監視に関する情報を保持している。ステー
タス・レジスタ314は読み出し/書き込み用のレジス
タで、その内容は以下の表Fに示す通りである。 <表F〉ステータス・ビット 読み/書き 機能 <0> FIP 読み出し フレーム進行中 <1> FPD 読み出し フレーム保留中 <2> CINTA 読み出し ページ完了 <3> VINTA 読み出し/クリア 垂直方向タイム完了 <4> BBIA 読み出し/クリア (バンド)バツファ完了 <5> PRDYAP 読み出し/クリア PRDY正エッジ遷移受信 <6> PRDYAN 読み出し/クリア PRDY負エッジ遷移受信 <7> VSREQA 読み出し/クリア VSREQ遷移受信 <8> LSYNC 読み出し LSYNCピン・レベル <9> FSYNC 読み出し FSYNCピン・レベル <10> PRDY 読み出し PRDYピン・レベル <11> PPRDY 読み出し PPRDYピン・レベル <12> Prnt 読み出し/書き込み 印刷ピン・レベル <13> CPrdy 読み出し/書き込み CPrdyピン・レベル <14> MREQ 読み出し メモリ要求保留中 <15> BLANK 読み出し 水平ブランキング状況 (Horizontal bianking ststus) <16> FIFOE 読み出し FIFO空 <17> FIFOEB 読み出し FIFOブロック空 <18> FIFOF 読み出し FIFOフル <19> FIFORE 読み出し/クリア FIFO再充填 (refill)エラー <20> ERASE 読み出し 印刷許可後フレーム・ バッファ消去 <21> BKRL 読み出し 裏面印刷、右から左へ <22> VSync 読み出し/書き込み VSyncピン・レベル FIPビットは、フレームが既に開始されてはいるが、
まだ完了していないことを示す。FPDビットは2番目
のフレームがすでにロードされてはいるが、リセット・
コマンドの場合を除いて、まだ開始されていないことを
示している。リセット・コマンドは全てのオペレーショ
ンを中断してこれらのビットをクリアする。
【0039】状態遷移(state transiti
on)ビット(CINTA、VINTA、BBIA、P
RDYA、VSREQA〉はそれぞれに関連する事象が
発生し、それがまだクリアされていないことを表す。そ
れぞれに関連する割り込みイネーブルがセットされてい
れば、アクティブのとき割り込みを引き起こす。ステー
タス・レジスタのステート・ビットをロジック・ハイに
セットすることによってこれらのビットがクリアされる
と、割り込みがクリアされる。ステート・ビットにロジ
ック・ローを書き込んでも好適な実施例においてはこれ
らのビットは何も変化しない。ハードウエアで1度セッ
トされると、関連するステート・ビットは、PVP30
0のRSETビットがアクティブになるかまたはPVP
のリセット・コマンドが実行されると、上述の場合を除
きリセットされない。
【0040】ピン・レベル・ビットは入出力ピンのレベ
ルを保持する。LSYNC、FSYNC、PRDY及び
PPRDYの各ビットはすべて入力である(故に、読み
出し専用)のに対し、VSYNC、PRNT及びCPR
DYのビットは出力である。VSYNC、PRNT及び
CPRDYのビットは、リセット・オペレーションによ
ってロジック・ローにクリアされ、プロセッサのステー
タス・レジスタ314への書き込みによってどのレベル
にもダイナミックにプログラムすることが可能である。
【0041】TMDE、BBE並びに割り込みイネーブ
ル・ビットはモード・レジスタ314に最後にプログラ
ムされた値を保持している。
【0042】中にはテスト専用に備えられたビットもあ
る。例えば、以下のビットについて考察してみよう。M
REQステート・ビットは、PVP300に未処理のメ
モリ要求が1つ以上残っていることを示す。BLANK
ビットは水平ブランキング(horizontal b
lanking)が現在行われていることを示す。FI
FOステート・ビットは、図3に示すスキャン・データ
待ち行列344の種々のFIFO制御状態を保持してい
る。
【0043】PVP300内の割り込みをリセットする
ために、リセット命令がPVPコマンド・レジスタ31
4に送られるか、あるいは、個別の割り込みビットがス
テータス・レジスタ314にリセットされるかする。
【0044】V intレジスタがロードされると、各
ラインがリセットされる毎にデクリメントされていく
(X currentがX maxからロードされると
き)。V intがゼロ(0)以下になると、VINT
A状況ビットがセットされる。VINT割り込みイネー
ブル・ビットがセットされていれは、割り込みが命令用
マイクロプロセッサ102に送られる。V intは、
ポイントされているスキャン・ライン内のデータがプリ
ンタ・エンジン110に送られた後で、生成される。
【0045】C1NT(印刷完了割り込み)ビットはデ
ータの最後のスキャンがプリンタ・エンジン110に送
られてからセットされる。状況ビットと割り込みイネー
ブルが共にセットされていれば、印刷完了割り込みが通
知される。
【0046】PRDY割り込みがイネーブルになってい
れば、PRDYビットがインアクティブからアクティブ
に遷移する(PRDYAP遷移ビットがステータス・レ
ジスタ314内でセットされる)と、PRDY割り込み
がセットされる。PRDY割り込みがイネーブルになっ
ていれば、PRDYビットがアクティブからインアクテ
ィブに遷移する(PRDYAN遷移ビットがステータス
・レジスタ314内でセットされる)ことによってもP
RDY割り込みがセットされる。
【0047】PVP300がバンド・バッファ・モード
で、BBI割り込みがイネーブルになっており、現バッ
ファが印刷済み(BBI状況ビットがセットされてい
る)で、さらにベース・レジスタが既に交換(swa
p)されていると、BBI割り込みがセットされる。バ
ンド・バッファ・モードが選択されていないと、BBI
ステート・ビットは常にクリアされている。
【0048】図4に示すのはコントローラ316の好適
な実施例である。コントローラ316は、デコーダ40
2、ステート・マシン404、ロジック/バッファ40
6、クロック・ディバイダ408、クロック・バッファ
410、割り込みロジック412、並びにデコーダ/マ
ルチプレクサ414から成る。本明細書に記載した機能
性を実現するには、当業者によって他に数多くの回路構
成が考えられ得ることを強調しておく必要がある。
【0049】デコーダ402は、プリンタ・ビデオ・プ
ロセッサ300内でラッチ及び/又はレジスタ用の読み
出し・書き込みイネーブルを発生させるために、入出力
アドレス、読み出し/書き込み信号、チップ・セレク
ト、アドレス・ストローブをデコードする。デコーダ4
02は、またPVP−IOUインタフェース302にハ
ンドシェイク制御信号を生成する。好適な実施例におけ
る、ハンドシェイク制御信号は「準備完了」及び「読み
出し/書き込み」の信号を含んでいる。
【0050】ロジック/バッファ406は、現アドレス
がアドレス・ラッチ312によって入出力アドレス・バ
スに送り出されると同時に、PVP4−IOUインタフ
ェース302に転送されるメモリの読み出し/書き込み
要求のサイズを作成する。さらに、ロジック/バッファ
406は、ステート・マシン404による制御によっ
て、スキャン・ライン終了計算のために加算器出力の最
後の4ビットをマスクする。しかもロジック/バッファ
406は、2本のスキャン・ラインがオーバラップして
いれば、ステート・マシン404による制御によってメ
モリの書き込み要求時に、現アドレスの2ビットをマス
クし、クロック・ジェネレータはプリンタ・クロックか
らドット・クロックを発生させる。前記オペレーション
は本発明が提供する、この機能を明確にするのに必要で
ある。
【0051】クロック・バッファ410は、プリンタ・
エンジン110からのプリンタ・クロックと同期して、
プリンタ・ビデオ・プロセッサ300にビデオ・クロッ
クを供給する。クロック・ディバイダ408は、クロッ
ク・バッフア414からのプリンタ・クロックを受信し
て、その周波数を8分割もしくは16分割のいずれかに
分割するか、あるいは本発明の特徴によって全く分割を
行わないかのどちらかを行う。分割のオプションはモー
ド・レジスタ314を介して選択できる。
【0052】割り込みロジック412は、プリンタ・ビ
デオ・プロセッサ300の状態を監視するために使う割
り込み信号を生成するために、ステータス・レジスタの
事象ビットとモード・レジスタの割り込みイネーブル・
ビットで組み合わせ論理を行う。好適な実施例には、次
の5つの割り込みがある: (1) ある特定のスキャン・ラインに達したときの垂
直方向割り込み。 (2) バンド・バッファ終了を示すバンド・バッファ
割り込み。 (3) ページの完了を表すための割り込み。 (4) プリンタ・ビデオ・プロセッサ300に新規ペ
ージを開始させるための、プリンタ・エンジン110か
らのフレーム同期割り込み。 (5) プリンタ・エンジン110からの準備完了信号
の受信を知らせる割り込み。
【0053】デコーダ/マルチプレクサ414は、入出
力アドレスをPVP−IOUインタフェース206から
レジスタ・ファイル書き込みアドレスにデコードしてイ
ネーブルにする。デコーダ/マルチプレクサ414は、
入出力アドレスかプリンタ・ビデオ・プロセッサ・アド
レスのいずれかを選択し、レジスタ・ファイル書き込み
信号をイネーブルにする。
【0054】ステート・マシン404は、レジスタ・フ
ァイル306とROM308内の定数に関わる計算の噸
序を制御する。計算の順序は、プリンタ・エンジン11
0からのタイミング信号と、レジスタ314内に包含さ
れている事象の順序つけ(sequencing)とト
リガリング(triggering)のためのコマンド
/ステータス/モード・レジスタ・ビットに依存する。
プリンタ・ビデオ・プロセッサ内で発生する事象のシー
ケンスと、ステート・マシン404によって実行される
アルゴリズムについては、この後図7〜図14において
説明する。
【0055】図3に戻るが、本発明によるプリンタ・ビ
デオ・プロセッサの第2サブシステムは、メモリ・シス
テム208及びプリンタ・エンジン110と通信する。
図3に示すように、第2サブシステムは、PVP−MC
Uインタフェース342、スキャン・データ待ち行列
(FIFO)344、並列ー直列シフト・レジスタ(シ
リアライザ)345並びにコントローラ346から成
る。
【0056】PVP−MCUインタフェース342には
MCUバスからのデータを格納するためのラッチが含ま
れている。
【0057】スキャン・データ待ち行列344は、本質
的にはFIFOバッファで、スペースがある限りPVP
−MCUインタフェース342からのデータがロードさ
れる。PVP−MCUインタフェース342とともに、
スキャン・データ待ち行列へのスキャン・データの格納
によって、ページ進行中、プリンタ・エンジン110へ
のビデオ・ビットの割り込みのない流れが可能になる。
具体的には、スキャン.データ待ち行列344は、一杯
(full)信号並びに空(empty)信号をコント
ローラ314に送る。それに応答して、コントローラ3
46は、データの損失を防止し、或いはスキャン終了前
に待ち行列344が空になるのを防ぐために、データの
フローを制御する。待ち行列344の深さはインプリメ
ンテーションに依存しており、メモリ・システム内の予
想される最悪のケースの待ち時間と目標とする最大ビデ
オ・クロック・レートによってセットされるが、好適な
実施例においては最低8ワードになっている。
【0058】シリアライザ345には、スキャン・デー
タ待ち行列344からのスキャン・データ・バイトがロ
ードされている。スキャン・データ・バイトは、プリン
タ・エンジン110に送られる前に、ロジック347を
介してコントローラ346によって操作できる。ロジッ
ク347については本明細書において後で説明する。好
適な実施例において、シリアライザ345は、8ビット
のデータをドット・クロック(DCLK)当たり1ビッ
トの割合で直列に出力する。PVP300からプリンタ
・エンジン110に出力されるプリンタ・ビデオ・デー
タ370を本明細書ではWDATAと称する。
【0059】図5に示すのは、図3に示したコントロー
ラ346の低レベルのブロック図である。図5におけ
る、コントローラ346は、MCUのバス・データが有
効な時に適切なラッチ・イネーブルをアサートするため
に、カウンタ502、ラッチ/ロジック504並びにロ
ジック502を備えている。本発明の別の特徴により、
前記ハードウエアは、メモリ・システム208からのラ
ンダムなデータのリターンとともに、前面モードおよび
裏面モード両方との互換性を実現するのに必要な機構を
備えている。
【0060】前述したように、ページ進行中スキャン・
データのスキャン・データ待ち行列への格納によって、
プリンタ・エンジン110へのビデオ・ビットの割り込
みのない流れが可能になる。図5に示すように、コント
ローラ346内のロジック508はビデオ待ち行列の書
き込み信号を生成する。さらに、ロジック508は、ス
キャン・データ待ち行列344に書き込まれるべきPV
P−MCUインタフェース・データを選択する。
【0061】並列ー直列シフト・レジスタ346のロー
ディングにおいて、カウンタ514並びにデコーダ51
6はスキャン・データ待ち行列344に対してバイト・
セレクトを生成する。カウンタ514は、前面モードと
裏面モードの両方との互換性を実現するのに必要な機構
を備えるために、アップ/ダウン・カウンタになってい
る。前面モードでは、バイト・セレクトはバイト・アド
レス増加中に発生しなければならないのに対し、裏面モ
ードではバイト・アドレス減少中にバイト・セレクトが
発生しなければならない。
【0062】ラッチ/ロジック520、カウンタ522
及びデコーダ524はプリンタ・エンジン110へのス
キャン・データに対するビット・セレクトを生成する。
カウンタ514同様、カウンタ512も前面・裏面両モ
ードとの互換性をもたらすために、アップ/ダウン・カ
ウンタになっている。前面モードでは、最下位のビット
(LSB)から先にシリアル化される。逆に、裏面モー
ドでは最上位のビット(MSB)から先にシリアル化さ
れる。スキャン・データ待行列内の1ワード中の全バイ
トがシリアライザ345にロードされたら、新規のワー
ドのシリアル化を可能にするため、スキャン・データ待
ち行列344からそのワードが除去されなければならな
い。
【0063】コントローラ346はさらにシンクロナイ
ザ/ロジック526を備えている。前面モードでオペレ
ートしているときのシンクロナイザ/ロジック526
は、最上位のバイトがシリアライザ345にロードされ
たことを検出し、スキャン・データ待ち行列344に読
み出し信号を生成する。裏面モードのシンクロナイザ/
ロジック526は、最下位のバイトがシリアライザ34
5にロードされたことを検出してスキャン・データ待ち
行列344に読み出し信号を生成する。
【0064】本発明の別の重要な特徴は、プリンタ・エ
ンジン110に送られたデータが、ワード・アドレスで
はなくて、バイトから始まってシリアル化されることで
ある。現アドレスがスキャン・ライン開始アドレスで初
期設定される度に、現アドレスの最下位3ビットが図5
のカウンタ514にプリ・ロードされる。従って、図5
のテコーダ516は、スキャン・データ待ち行列344
のスキャン・データ・バイトのどれでも各スキャン・ラ
インの開始バイトとして選択することができる。
【0065】図6は、図3の中に破線で示したFIFO
ブロック380の低レベルのブロック図である。FIF
Oブロック380は、PVP−MCUインタフェース3
42、ビデオ・データ待ち行列344、シリアライザ3
45及びロジック347で構成されている。
【0066】図6に示すように、PVP−MCUインタ
フェース342の好適な実施例は、ビデオ・データ待ち
行列344内に収納された64*4ビットの先入れ先出
し(FIFO)バッファ610内にデータを指図するた
めに、4個の32ビット・レジスタ(602〜608)
を含んでいる。インタフェース342はまた、どの組の
レジスタ(602と604の組か、606と608の
組)がFIFOバッファ610にロードされるべきかを
選択するために64ビットのマルチプレクサ(MUX)
を1個備えている。2ビットのアップ・カウンタ614
は、デコード・ロジック(DEC)616と共に、レジ
スタ602〜608にイネーブル信号を出す。さらに、
デコード・ロジック(DEC)620は、フリップ・フ
ロップ622〜626と組み合って、602〜608の
最後のレジスタが先にロード(preload)された
ら、FIFOプッシュ信号を生成する。
【0067】FIFOバッファ610の出力における8
入力のマルチプレクサ628は、FlFOバッファ61
0からの8バイトのどれがシフト・レジスタ(シリアラ
イザ)345にロードされるべきかを選択する。3ビッ
トのアップ/ダウン・カウンタ630は、デコード(D
EC)632と組んで、マルチプレクサ628にセレク
ト信号を生成する。さらに、双方向の8ビット・シフト
・レジスタ345はプリンタ・ビデオ・データをシリア
ル化する。
【0068】ドット・クロック(DCLK)656は、
プリンタ・エンジン110のクロックとして使われるの
であるが、PVPシステム・クロック(SCLK)とは
非同期になっている場合があることに注意すべきであ
る。しかし、図6に示すように、FIFOブロック38
0へのポップ命令は、DCLK656に同期しており、
ロジック640及びデコード642を介してPVPシス
テム・クロック(SCLK)と再同期化される。
【0069】FIFOバッファ610は、幅64ビッ
ト、深さ4ビットである。但し、本発明によるFIFO
バッファ610は、前面・裏面両モード対応になってい
る以外に、32・64両ビットのMCUスイッチ・モー
ドにも対応していなければならない。システムが32ビ
ット・モードでオペレートしている場合、FIFOバッ
ファ610への入力として外部から与えられるデータは
32ビットのブロックで送られて来るのに対し、64ビ
ットでのオペレーションの場合はデータは64ビットの
ブロックで来る。さらに、FIFOデータがロードされ
る順序は前面モードと裏面モードでは異なる。その理由
は、前面モードは左から右へのページ・スキャンを必要
とし、その場合アドレスは増加していくためである。逆
に、裏面モードは右から左にページ・スキャンが行われ
る必要があり、その場合アドレスは減少していく。従っ
て、前面モード・裏面モードに対応するとともに、32
ビットおよび64ビットの両ビット・モードにも対応で
きるようにするためには、メモリ要求が実行されるとき
にはいつでも図6に示す回路が一連のFIFOローディ
ング手続きを経るようにしなければならない。
【0070】32ビット・モードでは、下の表Gに示す
ように、2ビットのアップ・カウンタ614が先にロー
ドされる。 〈表G〉カウンタ・ステート メモリ要求 00 4ワード(ショート)要求の場合 10 2ワード要求の場合 11 1ワード要求の場合 64ビット・モードでは、下の表Hに示すように、2ビ
ットのアップ・カウンタ614が先にロードされる。 〈表H〉カウンタ・ステート メモリ要求 00 4ワード要求の場合 01 1もしくは2ワード要求の場合 可能な4つのオペレーション・シナリオをそれぞれ個々
に解析することによって、FIFOブロック380のロ
ーディング手続きを以下に説明する。具体的には、以下
の4つのケースである: (1)32ビット・モード/前面モード(左から右に走
査) (2)32ビット・モード/裏面モード(右から左に走
査) (3)64ビット・モード/前面モード(左から右に走
査) (4)64ビット・モード/裏面モード(右から左に走
査) 下記の論考において、DO、D1、D2及びD3は、F
IFOブロック380に戻されるデータ・ワードで、そ
の中のD0が最下位順序のアドレス、D3が最優先のア
ドレスであると仮定する。
【0071】オペレーション・シナリオ(1)、即ち、
32ビット・モード且つ前面モード(左から右に走査)
の場合、レジスタ602〜608は、ある特定の開始バ
イトSTB[1:0]及びカウンタ614の状態に対
し、以下の表IからKに示すように、ロードされる。 〈表I〉 ケース1:4ワード要求STB[1:0] CTR=00 CTR=01 CTR=10 CTR=11 00 R2=Dl R3=Dl R0=D2 R1=D3 01 R3=Dl R0=D2 R1=D3 R2=D0 10 R0=D2 R1=D3 R2=D0 R3=D1 11 R1=D3 R2=D0 R3=D1 R0=D2 2つのFIFOプッシュ信号が生成される: PUSH1:{R3,R2} PUSH2:{R1,R0 } オペレーション・シナリオ(2)、即ち、32ビット・
モードかつ裏面モード(右から左に走査)では、レジス
タ602〜608は、ある特定の開始バイトSTB
[1:0]及びカウンタ614の状態に対し、以下の表
LからNに示すように、ロードされる。 〈表L〉 ケース3:4ワード要求STB[1:0CTR=00 CTR=01 CTR=10 CTR=11 00 R0=D0 R1=D1 R2=D2 R3=D3 01 R1=D1 R2=D2 R3=D3 R0=D0 10 R2=D2 R3=D3 R0=D0 R1=D1 11 R3=D3 R0=D0 R1=D1 R2=D2 2つのFIFOプッシュ信号が生成される: PUSH1:{R3,R2} PUSH2:{R1,R0 } オペレーション・シナリオ(3)、即ち、64ビット・
モードかつ前面モード(左から右に走査)の場合、レジ
スタ602〜608は、ある特定の開始バイトSTB
[1:0]及びカウンタ614の状態に対し、以下の表
OからQに示すように、ロードされる。 〈表O〉 ケース1:4ワード(ショート)要求STB[1:0] CTR=10 CTR=11 00 {R3 R2 }={D1,D0 }{R1 =R0 }={D3,D2 } 01 {R1 =R0 }={D3,D2 }{R2 =R0 }={D1,D0 } 2つのFIFOプッシュ信号が生成される PUSH1:{R3,R2} PUSH2:{R1,R0} オペレーション・シナリオ(4)、即ち、64ビット・
モードかつ裏面モード(右から左に走査)の場合、レジ
スタ602〜608は、以下の表RからTに示すよう
に、ある特定の開始バイトSTB[1:0]及びカウン
タ614の状態に対し、ロードされる。 〈表R〉 ケース1:4ワード要求STB[1:0] CTR=10 CTR=11 00 {R1=R0}={D1,D0}{R3=R2}={D3,D2} 01 {R3=R2}={D3,D2}{R1=R0}={D1,D0} 2つのFIFOプッシュ信号が生成される PUSH1:{R3,R2} PUSH2:{R1,R0} 前述のごと<、FIFOバッファ610からシフト・レ
ジスタ345に読み込まれるべき8バイトの1個を選択
するロジックは、3ビットのアップ/ダウン・カウンタ
630を含んでいる。アップ/ダウン・カウンタ630
は、ビットCURRENT[2:0]の付いた各スキャ
ン・ラインの始まりでのみロードされる。ビットCUR
RENT[2:0]がスキャンの開始バイトSTB
[1:0]を定める。シフト・レジスタ345がロード
されるたびに、アップ/ダウン・カウンタ630は、マ
ルチプレクサ628に対してセレクトを出力し、クロッ
クが取られる。好適な実施例においてカウンタ630の
状態に相当するバイト・シーケンスを以下の表Uに示
す。 〈表U〉CTR BYTE 000 0 001 1 010 2 011 3 100 4 101 5 110 6 111 7 前面モード(左から右に走査)の場合、カウンタ630
はアップ・カウンタで、シフト・レジスタ345は右に
シフトする(LSBが最初)。CTR=111で、FI
FOポップもしくはトリガであればいつでも、信号が生
成される。シフト・レジスタ345が最終バイトのデー
タすべてをシフトする前に、この状態になっていなけれ
ほならない。
【0072】裏面モード(右から左に走査)では、カウ
ンタ630はダウン・カウンタで、シフト・レジスタ3
45は左にシフトする(MSBが最初)。CTR=00
0になるといつでも、FIFOポップ信号が生成され
る。
【0073】さらに、ロジック347に送り込まれるブ
ラック・レベル(BLV)信号634は、プリンタ/ビ
デオ・データ(WDATA)370がブラックとホワイ
トのいずれに相当するのかを決定する。図3のモード・
レジスタ314においてBLV=0であれば、WDAT
A=1はブラックに相当し、BLV=1であれば、WD
ATA=0はホワイトに相当する。
【0074】その上、BLANK信号636がロジック
347に対してアサートされていれは、その時プリンタ
・ビデオ・データ(WDATA)はホワイトで(BLV
=0ならば0で、BLV=1ならば1)、ページ・マー
ジンが使用可能である。
【0075】上述の如く、本発明によって多種のプリン
タが使えるようになるだろう。モード・レジスタ314
内のビットは、プリンタ・ビデオ・プロセッサ300と
インタフェースする3タイプのプリンタ・エンジン11
0の1つを選択するために、初期設定される。本書にお
けるモードIでオペレートする従来型のプリンタでは、
ステータス・レジスタのフレーム同期化(VSync)
ビットをソフトウエアにより設定することによって、ペ
ージ・オペレーションが引き起こされる。さらに、プリ
ンタのクロックは非常に高速でのフリー・ランニングで
ある。本明細書におけるモードIIでオペレートする従
来型のプリンタでは、プリンタのFSYNC信号がプリ
ンタ・ビデオ・プロセッサ300をトリガしてページ・
オペレーションが開始される。さらに、プリンタ・クロ
ックはフリー・ランニングである。最後に、本明細書に
おけるモードIIIでオペレートする従来型のプリンタ
では、プリンタのFSYNC信号がプリンタ・ビデオ・
プロセッサ300をトリガしてページ・オペレーション
が開始される。この場合、プリンタ・クロックはフリー
・ランニングではない。
【0076】前記の3モードでのオペレーションを可能
にするために、図4のクロック・ディバイダ408を実
現した好適な実施例を以下の図7に示す。
【0077】図7は、図4のディバイダ408の低レベ
ルのブロツク図である。図7において、ディバイダ40
8の出力は、「ドット・クロック」と呼ばれるが、基本
的にデータをプリンタ・エンジン110にクロック・ア
ウトする。ライン同期化(LSYNC)信号は、プリン
タのタイプに関係なく、プリンタ・エンジン110によ
って送られる。LSYNC信号が受信されると、エッジ
検出器702は「LSYNC」のリーディング・エッジ
を検出し、フラグ704をロジック・ハイにする。ロジ
ック・ハイになると、フラグ704はディバイダ408
がドット・クロックを生成するようにする。シンクロナ
イザ706は、出力されたドット・クロックが入力され
たプリンタ・クロックと同期をとってオペレートするよ
うにする。ロジック708は、マルチプレクサ(MU
X)712に入力信号710を送るために、シンクロナ
イザ706の出力と入力されたプリンタ・クロックとの
間にAND関数を形成する。前記の信号は、信号714
と716により制御されるので、モードII及びIII
の場合はマルチプレクサ712を通って伝播するように
なっている。
【0078】ディバイダ718によって、モードIのプ
リンタとの適切なオペレーションが可能になる。ディバ
イダ718はプリンタ・クロックを8分割か16分割の
いずれかに分割し、分割された信号をロジック708に
送り込む。ロジック708は、マルチプレクサ712に
対する入力信号720を生み出すため、プリンタ・クロ
ックと分割された信号とに対してAND関数を行う。デ
ィバイダ408がモードIでオペレートしている場合、
マルチプレクサ712は、信号720が制御722に従
ってドット・クロックを出力するようにする。
【0079】プリンタ・エンジン110がスキャン・ラ
インの終端までくると、ブランク信号がラッチ724に
入力される。ブランク信号はフラグ704がロジック・
ローになるようにし、それによってディバイダ408に
よるドット・クロックの出力を停止させる。 II.オペレーション プリンタ・ビデオ・プロセッサ300で起きる事象のシ
ーケンスを以下に記載する。 1.図3のビデオ・レジスタ・ファイル306のパラメ
ータはプリ・ロードされ、その中にベース・レジスタが
含まれる。前記オペレーションは、ページ・サイズ、フ
レーム・バッファ・アドレスもしくはマージンがオペレ
ーションの途中で動的に変更されない限り、通常、プリ
ンタおよび関連周辺機器の初期設定中に行われる。 2.プリンタ・エンジン110はPVP300に対して
データ受け入れ準備が完了しているとアサート(ass
ert)する。 3.印刷信号が命令用マイクロプロセッサ(instr
uction microprocessor)102
内の制御用ソフトウエアによってプリンタ・エンジン1
10に対してアサートされる。 4.印刷コマンドが命令用マイクロプロセッサ102内
の制御用ソフトウエアによってPVP300のコマンド
・レジスタにロードされる。 5.FSYNC信号がプリンタからPVP300に対し
てアサートされる。図4に示すように、FSYNC信号
がステートマシン404に対してアサートされる。 6.ステート・マシン404は上部マージンのタイミン
グをとり始める。PVP300の前面モードでのオペレ
ーション時にステート・マシン404によって上部マー
ジンのタイミングをとるために使われる「上部マージン
計数アルゴリズム」については、図8及び図9において
詳述している。一方、PVP300が裏面モードでオペ
レートしているときに、ステート・マシン404によっ
て上部マージンのタイミングをとるために使われる上部
マージン計数アルゴリズムについては、図9並びに図1
3において詳しく説明する。 7.上部マージン・タイマ(レジスタT margin
によってプログラムされている)がカウントを完了する
と、ピクセル・カウンタ304はプリンタ・エンジン1
10からのLSYNC信号を待つ。 8.LSYNC信号の入力がPVP300によって受信
されると、ピクセル・カウンタ304は左マージン・タ
イマ(レジスタL marginによってプログラムさ
れている)をスタートさせ、シリアライザ345はプリ
ンタ・エンジン110に送るべき最初のフレーム・バッ
ファ・データをフェッチする。 9.左マージン・タイマL marginが完了する
と、スキャン・データが、プリンタ・クロックと同期を
とって、PVP300のコントローラ346から流れ始
める。PVP300の前面モードでのオペレーション時
にスキャン・データをシリアル化するためにステート・
マシン404によって使われる「シリアル化アルゴリズ
ム」については、図10に詳述している。一方、PVP
300が裏面モードでオペレートしているときに、スキ
ャン・データをシリアル化するためにステート・マシン
404によって使われる「シリアル化アルゴリズム」に
ついては、図14に詳述している。スキャンの終了はL
marginカウンタによって決定されるが、X
axレジスタ・データが使われる。 10.各スキャン・ラインの終わりにくると、ピクセル
・カウンタ304は、画像フレ一ムの最後のスキャンが
完了するまで、LSYNCとL marginタイマを
待つよう強いられる。PVP300が前面モードでオぺ
レートしているときに、各スキャン・ラインの終端で、
即ちページの右マージンで、ステート・マシン404に
よって使われる「ポスト・スキャン・ライン・アルゴリ
ズム」については、図11、図12に詳述している。一
方、PVP300が裏面モードでオペレートしていると
きに、ステート・マシン404によって各スキャン・ラ
インの終端で使われる「ポスト・スキャン・ライン・ア
ルゴリズム」については、図15、図16に詳述してい
る。 11.画像フレームの最後のスキャンが完了すると、P
VP300はコマンド・レジスタ314から次の印刷コ
マンドが送られて来るのを待つ。保留中の印刷コマンド
が存在していれば、新しいフレームがただちに開始され
る。 III.特徴と利点 要するに、本発明は数多くの特徴と利点を備えている。
例をあげて、いくつかの機能特徴について次に論じる。
【0080】プリンタ・ビデオ・プロセッサ300は、
効率的且つ高速な直接メモリ・アクセス(DMA)を実
現するのに必要な機構を備えている。
【0081】プリンタ・ビデオ・プロセッサ300は、
各スキャン・ラインの始まりと終わりでデータのバイト
・アラインメントを実現するのに必要な機構を備えてい
る。言い換えれば、ワード・アドレスからではなく、バ
イト・アドレスから始まるデータのシリアル化が行なえ
るということである。
【0082】本発明によって、ページを印刷するため
に、プリンタ・ビデオ・プロセッサがページ・メモリ内
の異なるフレーム・バッファを交互に使用するバンド・
バッファ・モードの実現が可能になる。より具体的に
は、バンド・バッファ・モードで、ベース及びPベース
・アドレスに相当するデータがブランク・オペレーショ
ン時と同様、上部ページ(top−of−page)・
オペレーション時にも交換される。プリンタ・ビデオ・
プロセッサ300は、ベース及びPベース・アドレスか
ら始まるBサイズ・スキャン・ラインのバンド・バッフ
ァを交互に使用する。ページのスキャンに2つのバンド
・バッファ・アドレスだけしか必要でない場合は、ベー
スおよびPベース・レジスタはページ・スキャンに先立
って1回だけしか初期設定されない。しかしながら、2
つ以上のバンド・バッファ・アドレスを必要とする場
合、プリンタ・ビデオ・プロセッサ300は割り込み信
号とステート・ビットを出してバンド・バッファの完了
を知らせ、それによってベース及びPベース・アドレス
が動的(dynamically)に変更されることが
ある。
【0083】プリンタ・ビデオ・プロセッサによって、
前面かまたは裏面どちらのモードでもオペレートするこ
とが可能になる。
【0084】本発明のもう一つの特徴は、プリンタ・ビ
デオ・プロセッサ300はプリンタ・エンジンに出力さ
れたスキャン・データを反転することができ、それによ
って用紙上に物理的に印刷されるべき画像が反転される
ことである。
【0085】ページ・スキャン中にフレーム・バッファ
を部分的にクリアにする機能は、本発明のプリンタ・ビ
デオ・プロセッサ300が備えた、また別の特徴であ
る。もっと具体的に述べれば、プリンタ・ビデオ・プロ
セッサ300は、通常各メモリ読み出し要求のあとにメ
モリ書き込み要求を発信する。読み出し要求と書き取り
要求のサイズは、スキャン・ラインの終端近くか始まり
でのデータ・バイト要求の場合を除き、通常同じであ
る。各メモリ要求後、データがPVP300によってシ
リアル化されてプリンタ・エンジン110に送られてい
る間に、PVP300のステート・マシン404は、加
算器310を介して次に要求されたバイトも次のスキャ
ン・ラインにあるかどうかを確認する。もしそうなら
ば、プリンタ・ビデオ・プロセッサ300はオーバラッ
プ・フラグをヒットしてそのバイトが次のスキャン・ラ
インに書き込まれないようにする。最初のメモリ読み出
し要求が次のスキャン・ラインに対して発信されると、
オーバラップ・フラグは、ワードを完全にクリアするた
めに、要求されたアドレス及びデータ・サイズのマスキ
ング(masking)を実行することもできる。
【0086】最後に、プリンタ・ビデオ・プロセッサ3
00は多種のプリンタとも互換性を維持している。プリ
ンタ・ビデオ・プロセッサのモード・レジスタ内のビッ
トは初期設定され、それによって、オペレーション特性
が各々異なる従来型のプリンタの1つを選択することが
できる。
【0087】本発明の今までに述べた以外の特徴や利点
は、本明細書に記載されている図面並びに文面を吟味す
ることにより、当業者には明らかになるであろう。ここ
に論じた以外のいかなる付加的な特徴ならびに利点につ
いても本明細書に組み込まれているものとする。IV.
図17、図18、図19が示すのは、前面モード及び
裏面モードそれぞれに対しプリンタ・ピデ才・プロセッ
サによって生成される入出力アドレス指定の例である。
これらの例は、本発明の特徴並びに利点の数多くの特質
を明らかにしている。これらの図における例のレイアウ
トは大体同じであるから、ここでは図17、図18に示
す例についてだけ論じることにするが、以下に述べる考
察は図19にも等しく適用できるものである。
【0088】図17において、レジェンド・ブロック1
502はレジスタ・ファイル306内の様々なパラメー
タの初期値を表している。これらのパラメータは前記の
表Aに示され記述されている。要するに、ブロック15
02のパラメータは次のような機能を果たす。Y ma
xは図17、図18に示す仮想ページ上のスキャン・ラ
イン数である。ベースは最初のバイト・アドレスで、P
ベースは次のバンド・バッファのアドレスのことを表し
ている。Bサイズはベース・アドレスに相当するバンド
・バッファのサイズである。この例において、Bサイズ
は3にセットされているから、バンド・バッファ割り込
みは3番目のスキャン・ライン1540の後に発生す
る。X maxは、スキャン・ラインがいつ完了するか
を確認するのに使われる。Y stepは、各スキャン
・ライン上でどのアドレスから開始するのかを示すため
に使われる。X max1は、バイト数から1バイトを
引いた数と等価である。X max1はいつスキャン・
データがシリアル化されるかを確認するために使われ
る。
【0089】FSYNC信号1504は、ページを開始
する時を知らせるためにプリンタ・エンジン110から
送られる。ブランク信号1506はデータがブランクに
される時を知らせる。データがブランクにされると、プ
リンタ・エンジン110はページに何も印刷しない、即
ちページはホワイトである。
【0090】初め、X currentはX maxと
等価である。X currentは、いつレジスタ・フ
ァイル306内の現アドレスが次のスキャン・ラインの
開始アドレス(bace−current)に比較され
るべきかを判定するためにPVP300によって使われ
るフラグである。X−currentが1以下であれ
ば、PVP300はオーバラップがあるかチェックす
る。
【0091】X maxはスキャン・ラインで許可され
る最大バイト数を表す。基本的に、X maxはある特
定の値にセットされ、その後、バイトがプリンタ・エン
ジン110に送られるにつれて、その値はカウンタのよ
うにオペレートするようにデクリメントされていく。好
適な実施例において、X maxは96バイト(60
h)にセットされている。しかし実際には、スキャン・
ラインは89バイト以上にはならないのだが、好適な実
施例においてX maxは一番近い8バイトの倍数に切
り上げてある。
【0092】メモリ読み出し要求は、プリンタ・エンジ
ン110の印刷中のメカニズム(本明細書には示されて
いない)が上部マージンのスキャンを行っている間に、
PVP300によってメモリに送られる。参照番号15
10によって図17に示すのは、レジスタ・ファイル3
06内に格納された現アドレスである、ベース・アドレ
ス「7ffffddh」(末尾の「h」は16進のこと
である)が、入出力アドレス「7ffffddh」とし
てメモリに送られるのを示したものである。基本的に、
メモリに送られた入出力アドレスは最後の2ビットがゼ
ロでマスクされた現アドレスである。従って、PVP3
00によってメモリに送られた入出力アドレスは全てが
バイト・アドレスではなく、ワード・アドレスである。
【0093】入出力アドレスがメモリに書き込まれる
と、本発明の別の特徴によって、書き込み信号は、コマ
ンド・レジスタ314内のERASEビットのコマンド
による各読み出し要求の後に、送られるようになる。読
み出し要求によってデータがメモリからPVP300に
送られる。その次の書き込み要求は、メモリ内のメモリ
・ロケーションにゼロを書き込むようメモリに通知する
ことによってメモリ内のそのロケーションをクリアにす
る。
【0094】前記のアドレス「7ffffdch」に宛
てられたメモリの読み出し要求の結果、例えば、1ワー
ド(4バイト)がスキャン・データ待ち行列344の中
にロードされる。PVP300によって要求されたデー
タの量は、メモリに送られ一た特定の入出力アドレスに
よって確定される。次に、検索されたデータは、列(コ
ラム:column)1510に示すように、メモリの
中でクリアされる。さらに、4バイトからなる1ワード
がPVP300の中にロードされているから、X ma
xは60hから5chにデクリメントされるのである
が、その60hは96バイトを表し、5chは92バイ
トを表している。
【0095】参照番号1512で表示した列は、PVP
300からメモリに送られた別の読み出し要求を表して
いる。レジスタ・ファイル306内の現アドレスは「7
ffffelh」である。最後の2ビットは、入出力ア
ドレス「7ffffe0h」を生成するようゼロにマス
クされている。入出力アドレス「7ffffe0h」に
宛てられたメモリ読み出し要求の結果、例えば、4ワー
ドがスキャン・データ待ち行列344の中にロードされ
る。参照番号1512で示した列に表すように、同じ4
ワードがメモリ内でクリアされる。さらに、16バイト
からなる4ワードがPVP300の中にロードされてい
るから、X maxは5chから4chにデクリメント
されるのであるが、その5chは92バイトを表し、4
chは76バイトを表している。
【0096】参照番号1514で表示した列は、ピクセ
ル・シリアル化開始後、PVP300からメモリに送ら
れるべき別の読み出し要求を表している。レジスタ・フ
ァイル306内の現アドレスは「7fffff1h」
で、その関連入出力アドレスは「7fffff0h」で
ある。現時点においてはこれ以上ワードはスキャン・デ
ータ待ち行列344にロードされない、それは何故なら
ば、好適な実施例におけるスキャン・データ待ち行列
(FIFO)344は32バイトしか格納しないからで
ある。スキャン・データ待ち行列344にワードがロー
ドされないから、クリア機能は発生しない。しかしなが
ら、X currentは3chにデクリメントされ
る。
【0097】ブランク信号がデアサート(deasse
rt)される時点で、スキャン・データ待ち行列344
にはすでに印刷するデータを持っているから、PVP3
00はただちにデータをシリアル化してプリンタ・エン
ジン110に送ることができる。最初のスキャン・ライ
ン1516に示すように、プリンタ・エンジン110は
列1510に送られトたアドレスから3バイトを印刷す
ることができる。その上、プリンタ・エンジン110
は、最初のスキャン・ライン1516に示されているよ
うに、列1512に送られたアドレスからさらに16バ
イトを印刷することができる。
【0098】スキャン・データ待ち行列344はデータ
量が低くなると、列1518が示しているように、もっ
とデータを送り込んでもらうためにメモリにさらに読み
出し要求を発信する。
【0099】さらに、メモリ内のワードがスキャン・ラ
インの終わりでクリアされない場合がある(ブランク信
号がリアサート(reassert)されている時)。
図17の列1520を考察してみよう。検索されたその
4ワードは列1522ではクリアされない。それは何故
ならば次のアドレス・セットがオーバラップするからで
ある。具体的には、「80000036h」が「800
00030h」とオーバラップする。明らかなように、
3つのメモリ読み出し要求は、プリンタ・エンジン11
0が次のスキャン・ライン1528を印刷する準備を完
了する前に、実行可能である。
【0100】
【発明の効果】以上のように本発明により、新規なプロ
セッサを有し、コンピュータ・システムにかかる処理負
担を最小限に抑えることができる制御方法が提供され
る。
【図面の簡単な説明】
【図1】 典型的なページ・プリンタ・システムのブロ
ック図である。
【図2】 ページ・プリンタ・システムの具体的な実現
方法を示す図である。
【図3】 図2に示すプリンタ・ビデオ・プロセッサの
高レベルのブロック図である。
【図4】 図3の示すコントローラ1の低レベルのブロ
ック図である。
【図5】 図3に示すコントローラ2の低レベルのブロ
ック図である。
【図6】 図3のビデオ・データ待ち行列の低レベルの
ブロツク図である。
【図7】 図3に示すクロック・ディバイダの低レベル
のブロック図である。
【図8】 図3に示すコントローラ1内のステート・マ
シンによって実現される方法論を説明する図である。
【図9】 図3に示すコントローラ1内のステート・マ
シンによって実現される方法論を説明する図である。
【図10】 図3に示すコントローラ1内のステート・
マシンによって実現される方法論を説明する図である。
【図11】 図3に示すコントローラ1内のステート・
マシンによって実現される方法論を説明する図である。
【図12】 図3に示すコントローラ1内のステート・
マシンによって実現される方法論を説明する図である。
【図13】 図3に示すコントローラ1内のステート・
マシンによって実現される方法論を説明する図である。
【図14】 図3に示すコントローラ1内のステート・
マシンによって実現される方法論を説明する図である。
【図15】 図3に示すコントローラ1内のステート・
マシンによって実現される方法論を説明する図である。
【図16】 図3に示すコントローラ1内のステート・
マシンによって実現される方法論を説明する図である。
【図17】 前面モード用にプリンタ・ビデオ・プロセ
ッサによって生成されるI/Oアドレス指定の一例を示
す図である。
【図18】 前面モード用にプリンタ・ビデオ・プロセ
ッサによって生成されるI/Oアドレス指定の一例を示
す図である。
【図19】 裏面モード用にプリンタ・ビデオ・プロセ
ッサによって生成されるI/Oアドレス指定の一例を示
す図である。
【符号の説明】
102…命令用マイクロプロセッサ、104…プリンタ
・ビデオ・プロセッサ、106…ページメモリ、108
…シリアル通信インターフェース、110…プリンタ・
エンジン、 200…ページプリンタコントローラ、2
04…システム・メモリ、206…I/0インターフェ
ース、208…メモリ・システム。
───────────────────────────────────────────────────── フロントページの続き (56)参考文献 特開 平3−264368(JP,A) 特開 平2−156325(JP,A) 特開 平1−249352(JP,A) 特開 昭63−155321(JP,A) 特開 昭62−74663(JP,A) 特開 平3−285456(JP,A) 特開 平4−140163(JP,A) 特開 平5−278304(JP,A) (58)調査した分野(Int.Cl.7,DB名) B41J 5/30 B41J 2/44 G06F 12/00 580 G06F 15/177 681

Claims (5)

    (57)【特許請求の範囲】
  1. 【請求項1】 少なくとも命令を発行する第1のプロセ
    ッサと、メモリと通信する第2のプロセッサを有し、ス
    キャン・データ・フェツチ、シリアル化並びに制御対象
    との同期化を実行する制御方法であって、第1のプロセ
    ッサからのコマンドを受信し、第2のプロセッサの制御
    と監視に関する情報を保持するとともに、制御対象の動
    作モードを設定するステップと、フレーム・バツファ・
    アドレス及びフォーマット定数を格納するステップと、
    メモリ・アドレス及び制御信号を生成するために前記フ
    レーム・バッファ・アドレス並びに前記フォーマット定
    数に対して算術演算を実行するステップと、前記メモリ
    にアクセスする前に前記メモリ・アドレスを一時的にラ
    ッチするステップと、前記メモリから並列スキャン・デ
    ータを受信するステップと、ぺージ・スキャン中にフレ
    ーム・バッファ内の前記スキャン・データをクリアする
    ステップと、前記スキャン・データを制御対象にシリア
    ル化して送るステップと、を有することを特徴とする制
    御方法。
  2. 【請求項2】 制御対象に前記スキャン・データを反転
    して送るステップをさらに備えることを特徴とする請求
    項1記載の制御方法。
  3. 【請求項3】 前記スキャン・データの検索中に前記メ
    モリ内に異なるフレーム・バッファをアドレス指定する
    ステップをさらに備えることを特徴とする請求項1記載
    の制御方法。
  4. 【請求項4】 データ・バイトにあてられたメモリ・ア
    ドレスを前記の第2のプロセッサに提供するステップ
    と、前記第2のプロセッサにて前記メモリ・アドレスを
    データ・ワードにあてられた入出力アドレスに変換する
    ステップと、前記メモリに前記データ・ワードの転送を
    要求するステップと、さらに前記データ・ワードから前
    記データ・バイトを前記第2のプロセッサにて抽出する
    ステップとを備えることを特徴とする請求項1記載の制
    御方法。
  5. 【請求項5】 前記データ・バイトを前記データ・ワー
    ドに変換するステップを備えることを特徴とする請求項
    1記載の制御方法。
JP2003081879A 1991-11-27 2003-03-25 制御方法 Expired - Lifetime JP3506335B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US79891791A 1991-11-27 1991-11-27
US798,917 1991-11-27

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2002040517A Division JP3429296B2 (ja) 1991-11-27 2002-02-18 プリンタの制御方法

Publications (2)

Publication Number Publication Date
JP2003335007A JP2003335007A (ja) 2003-11-25
JP3506335B2 true JP3506335B2 (ja) 2004-03-15

Family

ID=25174587

Family Applications (3)

Application Number Title Priority Date Filing Date
JP51000193A Expired - Lifetime JP3310287B2 (ja) 1991-11-27 1992-11-27 プリンタ・プロセッサ
JP2002040517A Expired - Lifetime JP3429296B2 (ja) 1991-11-27 2002-02-18 プリンタの制御方法
JP2003081879A Expired - Lifetime JP3506335B2 (ja) 1991-11-27 2003-03-25 制御方法

Family Applications Before (2)

Application Number Title Priority Date Filing Date
JP51000193A Expired - Lifetime JP3310287B2 (ja) 1991-11-27 1992-11-27 プリンタ・プロセッサ
JP2002040517A Expired - Lifetime JP3429296B2 (ja) 1991-11-27 2002-02-18 プリンタの制御方法

Country Status (2)

Country Link
JP (3) JP3310287B2 (ja)
WO (1) WO1993011508A1 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7359082B2 (en) * 2003-10-20 2008-04-15 Marvell International Technology Ltd. Independent video hardware blocks to support laser printers

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4044335A (en) * 1974-09-23 1977-08-23 Rockwell International Corporation Memory cell output driver
NL8502640A (nl) * 1985-09-27 1986-04-01 Oce Nederland Bv Front-end systeem.
JPH01277928A (ja) * 1988-04-30 1989-11-08 Oki Electric Ind Co Ltd 印刷装置

Also Published As

Publication number Publication date
JPH07501498A (ja) 1995-02-16
JP2003335007A (ja) 2003-11-25
WO1993011508A1 (en) 1993-06-10
JP2002358294A (ja) 2002-12-13
JP3310287B2 (ja) 2002-08-05
JP3429296B2 (ja) 2003-07-22

Similar Documents

Publication Publication Date Title
JP3669576B2 (ja) コンピュータシステム
US5509115A (en) Method and apparatus for displaying a page with graphics information on a continuous synchronous raster output device
EP0470782B1 (en) Image rendering process and apparatus
US6112267A (en) Hierarchical ring buffers for buffering data between processor and I/O device permitting data writes by processor and data reads by I/O device simultaneously directed at different buffers at different levels
US5671445A (en) Interface for transmitting graphics data to a printer from a host computer system in rasterized form
TW310410B (ja)
JPH0255808B2 (ja)
US4646259A (en) Strip map memory controller
JPH01156845A (ja) メモリ・システム
US4891768A (en) Raster image processor
US6618157B2 (en) Interface card for coupling a computer to an external device
EP0100853A2 (en) Character generator for raster printers
US5276781A (en) Laser printer controller flexible frame buffer architecture which allows hardware assisted memory erase
JP3506335B2 (ja) 制御方法
US6628289B1 (en) Rendering apparatus and method, and storage medium
CA1329431C (en) Single bus graphics data processing pipeline
JP2907826B2 (ja) 文字フォント管理装置
JPH11115258A (ja) 出力制御装置及び方法
JPS59123987A (ja) イメ−ジ・メモリのプリント・デ−タ展開方法
JPS60134334A (ja) 印字制御方式
JP2000135822A (ja) コンピュ―タシステム
JPH11254760A (ja) 印刷方法及び装置
JP2000330747A (ja) 印刷装置及びそのメモリ制御方法ならびに記録媒体
JPH02188063A (ja) 文字コードのデータ転送装置
JPS62257563A (ja) デ−タ転送制御装置

Legal Events

Date Code Title Description
A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20031211

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20081226

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20091226

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20101226

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20101226

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111226

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111226

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121226

Year of fee payment: 9

EXPY Cancellation because of completion of term