JP3253115B2 - プリンタ - Google Patents

プリンタ

Info

Publication number
JP3253115B2
JP3253115B2 JP35752491A JP35752491A JP3253115B2 JP 3253115 B2 JP3253115 B2 JP 3253115B2 JP 35752491 A JP35752491 A JP 35752491A JP 35752491 A JP35752491 A JP 35752491A JP 3253115 B2 JP3253115 B2 JP 3253115B2
Authority
JP
Japan
Prior art keywords
dma
size
data
printer
buffer
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 - Fee Related
Application number
JP35752491A
Other languages
English (en)
Other versions
JPH05181622A (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.)
Ricoh Co Ltd
Original Assignee
Ricoh Co Ltd
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 Ricoh Co Ltd filed Critical Ricoh Co Ltd
Priority to JP35752491A priority Critical patent/JP3253115B2/ja
Publication of JPH05181622A publication Critical patent/JPH05181622A/ja
Application granted granted Critical
Publication of JP3253115B2 publication Critical patent/JP3253115B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】この発明は外部処理装置と通信す
る手段を備えたプリンタに関し、特にその外部処理装置
からのデータ入力を制御する技術に関する。
【0002】
【従来の技術】コンピュータやワードプロセッサあるい
はその他の情報処理装置の出力装置としてのプリンタ
印刷手段として不可欠の装置である一般にレーザ
プリンタのような高級機種は高価であるため、一台のプ
リンタを複数の情報処理装置で共用することが多い。ま
プリンタは内部にCPUを搭載して必要なデータ処理
を行い、外部に接続される外部処理装置としての情報処
理装置のCPUに負担をかけないようにしているのが一
般的である。従って、プリンタは一般に外部処理装置
データ通信を行う機能と、外部処理装置との間信号授
を行うためのインタフェース手段を有している
【0003】このインタフェース手段としては、セント
ロニクス仕様やRS232C仕様が一般的であり、デー
タ授受の高速化のために従来から種々の試みがなされて
いる。例えば従来の高速化の一手段としては、データ送
受信の際のハンドシェイクを速くすることや、プリンタ
のコントローラと外部処理装置のコントローラのメモリ
との間のアクセスを直接行うDMA(Direct M
emory Access)方式を採用することが考え
られる。
【0004】前者のハンドシェイクを速くする手段で
は、転送相手先又はデータ送信元のハンドシェイクのス
ピードによる要因が大きく、接続する機器によってハン
ドシェイクのスピードが異なるので、コントローラの速
度を上げても大幅なスピードアップは望めないことがあ
った。
【0005】また後者のDMA方式では従来、ポーリン
グ方式あるいは割り込み方式によるコマンド、レスポン
スのやりとりによって転送されるデータのブロックサイ
ズを決定し、その決定後にDMA方式に切り替えて転送
を行うものであった。そのため、双方の同期設定が必要
とされることから、比較的ビット数の多いブロック転送
のみの場合は高速転送が可能であるものの、キャラクタ
転送のようにひとつづつのキャラクタ毎に同期をとると
きはオーバーヘッドが発生し、却って速度が遅くなる
があった。
【0006】
【発明が解決しようとする課題】 しかし 、常に割り込み
によるキューバッファを生成し、ホスト側と非同期にア
クセスする、DMA方式を採用しないプリンタでは、キ
ャラクタ転送時には比較的高速転送が可能であるが、ブ
ロック転送時には割り込み処理がネックとなって、ある
一定以上の高速化ができなかった。
【0007】この点に関し具体的な例を示せば、STR
OBE〜BUSYコントロールのセントロニクスI/F
では、8ビットにて1データを表す場合のハンドシェイ
ク時間はDMA方式の場合だと2.5μS〜5μSであ
。ところが、割り込み処理でこのデータを取り込むと
30μS〜60μSの割り込み処理時間が必要となり、
データ転送時間が割り込み処理時間とブロックサイズ
積でほぼ決定されてしまい、高速データアクセスが不可
能であった。
【0008】この発明は上述したような問題に鑑みその
解決を図るべくなされたもので、キューバッファを使用
した非同期のデータ受信自体をDMA方式によって実行
することによって、割り込み時間を極力短縮し、キャラ
クタ転送においてもブロック転送においても高速デー
タ転送を可能としたプリンタを提供することを目的とす
るものである。
【0009】
【課題を解決するための手段】この目的を達成するた
め、この発明は、セントロニクスI/Fを使用して外部
処理装置と通信する手段を備えたプリンタであって、上
記セントロニクスI/Fから受信した受信データのDM
方式の転送を制御するDMA制御手段と、上記DMA
制御手段による受信データのDMA方式の転送に対応し
て定義されたキューバッファとなる記憶手段とを設け、
上記記憶手段に定義されたキューバッファを使用した非
同期のデータ受信を上記DMA制御手段により実行し
て、上記外部処理装置との間の受信データ処理を非同期
かつ高速に実行するように構成したものである。
【0010】
【実施例】 以下、添付図面によりこの発明によるプリン
の一実施例について詳細に説明する。図1はこの発明
によるプリンタのプリンタコントローラの構成を示すブ
ロック図である。この図において、符号1はCPUであ
ってプリンタコントローラ全体を制御するマイクロプロ
セッサである。2は制御用プログラムを書き込んだ読み
出し専用のプログラムROMであり、3はDMAコント
ローラ、4はキャラクタ用フォントを記憶したフォント
ROMである。5はタイマでありバッファメモリの空
きサイズがFULL SIZEより小さくなったときセ
ントロニクスの受信タイミングを遅くするために使用す
るもので、サイクリックに割り込みを発生させ、その
り込みの時間はバッファフル時の1文字の受信時間が設
定されている。
【0011】また、6は外部処理装置であるホストと接
続して通信するためのセントロニクスインタフェースで
あり、受信データの転送にDMA方式を使用したもの
で、STROBE―ACK−BUSYのコントロールを
プログラマブルに設定可能なものである。更に、7はデ
ータRAMでCPUの制御下におかれるデータ記憶領
である。8はフレームバッファでプリンタエンジン
1により印刷されるイメージデータのRAM領域であ
る。また、9はビデオI/Fでありフレームバッファ
よりプリンタエンジン11に対し転送されるイメージ
データをビデオ信号に変換するものである。
【0012】以上9つの各構成要素は全てバスライン1
0を介して接続されている。またビデオI/F9にはプ
リンタの印字機構を直接駆動するプリンタエンジン11
が接続されている。
【0013】このブロック図に示した構成において制御
上重要なことは、上記DMAコントローラ3のDMA
御機能により、セントロニクスI/F6のリードバッフ
ァから受信した外部処理装置の1バイト分の受信データ
データRAM7に直接転送されることである。その
送サイズはCPU1により決定される。DMAコントロ
ーラはDMAスタート時に転送サイズを設定して受信
データが転送される毎にデクリメントし、0になると完
了割り込み発生させる。このDMAコントローラ
LSIとして一般に市販されたものを使用することがで
きる。
【0014】なお、この発明の実施のため、上記データ
RAM7には図2に示すようにCPU1のバッファとな
領域をアロケートしている。即ち、図2はデータRA
M7に定義されたCPU1のバッファとなるデータ領域
の定義内容の概要を示す図であり、(a)はデータ領域
の定義内容を示したもの、(b)はバッファサイズを示
したものである。
【0015】図2の(a)においてAはGET−poi
nter(GETポインタ)でバッファに受信したデー
タの取り出しを示すもので、データを取り出す毎にイン
クリメントされる。BはDMA−pointer(DM
Aポインタ)でDMAコントローラ(DMAC)にス
タートをかけた時点での転送先の先頭を示すものであ
る。また、CはDMA−size(DMAサイズ)を示
すもので、DMACにセットした転送サイズをセーブす
る。
【0016】DはYOBI−size(YOBIサイ
ズ)で空き領域を示す。実際のバッファサイズ(BUF
FERSIZE)はFで示されるDMACOUNT
ER(DMAカウンタ)とYOBI−sizeとの和
なる。EはFULL−flag(FULLフラッグ)
示しており、ONのときはバッファフル状態、即ちバッ
ファの空きサイズがFULL−SIZEより小さくなっ
た状態を表す。FはDMACの中のDMA−COUN
TERである。
【0017】また同図2(b)は受信バッファのフルサ
イズを示すもので、受信バッファはキューバッファとな
っている。FIRST−POINT(FIRSTポイン
タ)は受信バッファのスタート位置を示し、またLAS
T−POINT(LASTポインタ)受信バッファの
終了位置を示している。バッファサイズ(BUFFER
SIZE)はキューバッファのサイズ示すことにな
る。従ってLASTPOINTはFIRSTPOI
NTとBUFFERSIZEとの和になる。
【0018】図3〜図7は各種制御を示すフローチャ
ートである。まず、図3は初期化の手順を示すフローチ
ャートである。初期化はプリンタコントローラの電源
オンした時やリセット時に実行するもので、GETポイ
ンタ、DMAポインタ、YOBIサイズ、DMAサイズ
を設定して各ポインタの設定とサイズの設定を行い、そ
の後にFULLフラッグをリセットしてSET−DMA
進み、DMAをスタートさせる。
【0019】図4はDMA割り込みの手順を示すフロー
チャートで、DMAの完了割り込みルーチンを示してい
る。なお、この図4においてステップを「ST」と略記
している。スタートするとまず、DMAポインタをDM
AポインタとDMAサイズの和に設定し、DMAサイズ
0にする(ST1)。次にDMAポインタの大きさを
判定して(ST2)、それがLASTポインタより大き
いときは、DMAポインタFIRSTポインタに設定
(ST3)、DMAポインタがLASTポインタより
小さい場合はST4に進むST4では、YOBIサイ
ズとFULLサイズとを比較して、YOBIサイズが
きいときはST5に進み、そうでないときはST9に進
んで、FULLフラッグをセットして処理を終了する。
【0020】ST5ではDMAポインタとYOBIサイ
ズの和からFULLサイズを引いたものがLASTポイ
ンタより大きいか小さいかを判定し、大きいときはST
6、小さいときはST10を経てST7にそれぞれ進
。ST6はDMAサイズをLASTポインタとDMA
ポインタの差とし、次のST7ではYOBIサイズをY
OBIサイズ−DMAサイズに設定した後、ST8に
んでDMAをスタートする。
【0021】図5はフルタイマ処理でバッファフル用の
タイマの割り込みルーチンを示すフローチャートであ
る。このルーチンがスタートすると、まずFULLフラ
ッグのオン・オフを判定しオンの場合はYOBIサイ
ズが0か否かを判定する。YOBIサイズが0の場合は
処理を終了するが、0でない場合は、YOBIサイズを
1だけ減算してDMAサイズを1に設定し、DMAをス
タートさせる。DMAが終了するとFULLフラッグを
リセットして処理を終了する。
【0022】図6はGET−CHARのフローチャー
を示したもので、GET−1CHARは、バッファよ
データを1文字取り出すプログラムである。なお、
のプログラムを書き換えブロックで取り出すように制
御すればブロック転送にも対応することができる。C
URRENT−SIZEは現在の受信中のデータサイズ
を示す。このCURRENT−SIZEは、レジスタな
どテンポラリィのデータとして使用するので、データ領
域としては定義していない。このようにすればキューバ
ッファに対して最小の割合でデータを受信することがで
きるまた取り出しにおいても非同期にアクセスするこ
とができる。
【0023】なお図7は上述した各フローチャートに
おけるSET−DMAの部分の処理である。ここでは、
図2に示したようなメモリ領域の定義に従って、DMA
スタートアドレスにDMAポインタをセットすると共
に、DMAカウンタにDMAサイズをセットしDMA
をスタートさせる
【0024】以上この発明の一実施例について説明した
が、この発明の実施に際しては上述の実施例に限定され
ることなく種々変形が可能である。装置の構成やフロ
ーチャートを部分的に変形することによって、広範囲に
利用応用が可能である。
【0025】
【発明の効果】この発明は、以上説明したように、プリ
ンタにおけるキューバッファを用いた非同期のデータ受
信をDMA方式によって実行することにより割り込み
時間を限りなく少なくしたものであり、キャラクタ転送
においてもブロック転送においても高速データ転送を
可能とすることができる。
【0026】具体的な数値を示せば、上記BUFFER
−SIZE(バッファサイズ)を64KBとしバッファ
フルのデータサイズを1KBとするとき、バッファフル
が一度も発生しないタイミングでデータ受信したとす
れば、この発明によれば割り込み回数一回であるの
対して、従来の一般的な方法によれば受信割り込みは
よそ63回発生する。従って、この割り込み時間をnμ
Sとすると、この発明を実施することにより、(63・
1024−1)・nμSの時間短縮効果がある。通
割り込み時間nは60μS程度であるから、63K
Bのデータ転送について約4秒間の時間短縮となる。こ
のようにこの発明によれば非同期にデータ転送ができ、
しかも大幅な高速データ転送を行うことが可能となる。
【図面の簡単な説明】
【図1】この発明によるプリンタのプリンタコントロー
ラの内部構成を示すブロック図である。
【図2】図1のプリンタコントローラの動作及び制御方
法を説明するための図で、(a)はデータ領域の定義
を示す図、(b)は受信バッファのサイズを示す図で
ある。
【図3】この発明によるプリンタにおける初期化の手順
の制御内容を示すフローチャートである。
【図4】この発明によるプリンタにおけるDMA割り込
みの手順の内容を示すフローチャートである。
【図5】この発明によるプリンタにおけるフルタイマ処
理の手順の内容を示すフローチャートである。
【図6】この発明によるプリンタにおけるGET−1
HAR処理の手順の内容を示すフローチャートである。
【図7】この発明によるプリンタにおけるDMAスター
トの手順の内容を示すフローチャートである。
【符号の説明】
1 CPU、2 プログラムROM、3 DMAコント
ローラ、4 フォントROM、5 タイマ(TIME
R)、6 セントロニクスインタフェース、7 データ
RAM、8 フレームバッファ、9 ビデオインターフ
ェース、10 バスライン、11 プリンタエンジン

Claims (1)

    (57)【特許請求の範囲】
  1. 【請求項1】 セントロニクスI/Fを使用して外部処
    理装置と通信する手段を備えたプリンタであって、 前記セントロニクスI/Fから受信した受信データのD
    MA方式の転送を制御するDMA制御手段と、前記DMA制御手段による受信データのDMA方式の転
    送に対応して定義された キューバッファとなる記憶手段
    とを設け、 前記記憶手段に定義されたキューバッファを使用した非
    同期のデータ受信を前記DMA制御手段により実行し
    て、前記外部処理装置との間の受信データ処理を非同期
    かつ高速に実行するように構成したことを特徴とするプ
    リンタ。
JP35752491A 1991-12-26 1991-12-26 プリンタ Expired - Fee Related JP3253115B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP35752491A JP3253115B2 (ja) 1991-12-26 1991-12-26 プリンタ

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP35752491A JP3253115B2 (ja) 1991-12-26 1991-12-26 プリンタ

Publications (2)

Publication Number Publication Date
JPH05181622A JPH05181622A (ja) 1993-07-23
JP3253115B2 true JP3253115B2 (ja) 2002-02-04

Family

ID=18454572

Family Applications (1)

Application Number Title Priority Date Filing Date
JP35752491A Expired - Fee Related JP3253115B2 (ja) 1991-12-26 1991-12-26 プリンタ

Country Status (1)

Country Link
JP (1) JP3253115B2 (ja)

Also Published As

Publication number Publication date
JPH05181622A (ja) 1993-07-23

Similar Documents

Publication Publication Date Title
CN101634975B (zh) 一种实现dma数据传输的方法及装置
US20040117516A1 (en) System controller using plural CPU's
JP2000085211A (ja) 印刷制御方法および印刷システム
JP3253115B2 (ja) プリンタ
JPH10334037A (ja) 通信dma装置
US7187385B2 (en) Image processing apparatus
JP3478519B2 (ja) プリンタ装置
JP2999662B2 (ja) 印刷制御装置および印刷制御方法
JPH10254721A (ja) 印刷装置、その割込要求処理方法、及び記憶媒体
JP3268644B2 (ja) Dma制御装置
JP2000347989A (ja) データ転送方式
JP3483913B2 (ja) データ転送制御方式
JP3700410B2 (ja) プリンタシステムおよびプリント制御方法
JPH0229357A (ja) プリンタのインターフェース
JP2001225515A (ja) 印刷装置およびそのメモリクリア方法
JP2004094494A (ja) 記憶媒体処理装置およびその制御方法
JP3272890B2 (ja) メモリアクセス制御回路及び出力装置
JP2839160B2 (ja) プリンタ装置のデータ転送方法
JP2003122701A (ja) インターフェース及び入出力デバイス
JPH10278390A (ja) プリンタ装置
JP2003285476A (ja) 印刷システム
JPH09179813A (ja) Dma転送装置
JPH11115258A (ja) 出力制御装置及び方法
JP2001282709A (ja) 電子印刷装置用の画像処理コントローラ及びそれを有する電子印刷装置。
JP2002318781A (ja) 画像データ転送装置

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees