JP3332625B2 - 記録装置 - Google Patents

記録装置

Info

Publication number
JP3332625B2
JP3332625B2 JP30641894A JP30641894A JP3332625B2 JP 3332625 B2 JP3332625 B2 JP 3332625B2 JP 30641894 A JP30641894 A JP 30641894A JP 30641894 A JP30641894 A JP 30641894A JP 3332625 B2 JP3332625 B2 JP 3332625B2
Authority
JP
Japan
Prior art keywords
data
interface
reception buffer
processing
dma
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
JP30641894A
Other languages
English (en)
Other versions
JPH08156345A (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.)
Canon Inc
Original Assignee
Canon Inc
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 Canon Inc filed Critical Canon Inc
Priority to JP30641894A priority Critical patent/JP3332625B2/ja
Publication of JPH08156345A publication Critical patent/JPH08156345A/ja
Application granted granted Critical
Publication of JP3332625B2 publication Critical patent/JP3332625B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Record Information Processing For Printing (AREA)
  • Bus Control (AREA)

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、記録装置に関するもの
あり、特に、受信データをインタフェースからメモリ上
の受信バッファにハードウェアで転送する機能を持つ記
録装置に関するものである。
【0002】
【従来の技術】従来、記録装置において、受信データを
インタフェースからメモリ上の受信バッファにDMA
(Direct Memory Access) 等のハードウェアで転送する
場合、プログラムで制御された制御部は、1バイト毎に
データ転送を認識するか、あるいはあらかじめ決められ
たバイト数の受信データが転送されたことを認識してい
た。
【0003】
【発明が解決しようとする課題】しかしながら上記従来
例では、制御部が1バイト毎にデータ転送を認識する場
合、ハードウェアで転送することによる速度向上が余り
望めないという欠点があった。また、あらかじめ決めら
れたバイト数の受信データが転送されたことを制御部が
認識する場合、ホストコンピュータ側から記録装置への
転送データは、その決められたバイト数の整数倍のサイ
ズでなければ、正確な受信データのカウントができない
という欠点があった。また、その決められたバイト数未
満のデータが転送されても、制御部が送られたことを認
識できないという欠点があった。
【0004】
【課題を解決するための手段】請求項1の発明は、ホス
トコンピュータからのデータを受信するためのインタフ
ェースと、受信バッファ等を有する記憶手段と、受信デ
ータを前記インタフェースから前記記憶手段上の受信バ
ッファにDMA転送するDMA転送手段と、該DMA転
送手段により所定サイズのデータの転送が完了したこと
に応じて発生する割り込み処理において、該所定サイズ
に基づいて前記受信バッファのポインタを更新する更新
手段と、所定間隔ごとに発生するタイマ割り込み処理に
おいて、前記受信バッファのポインタを補正する補正手
段とを備えたことを特徴とする。
【0005】
【0006】
【0007】
【0008】
【0009】
【0010】
【実施例】以下、図面を参照して本発明の実施例を詳細
に説明する。
【0011】[第1実施例]図1,図4は本発明の第1
の実施例を示している。
【0012】図1は本実施例の構成を示すブロック図で
ある。図1は記録装置としてプリンタを示しており、1
はそのプリンタである。プリンタ1において、11は図
4に示すようなプログラムに従って一連のデータ処理の
切れ目に正確に受信データを引き継ぐ動作を実行するC
PU等で構成された制御部、12は受信バッファおよび
受信バッファ制御用の変数あるいはプリンタ1の動作制
御に必要な変数を確保するためのRAM、13はホスト
コンピュータからの受信データをハードウェアで受信バ
ッファに転送するためのDMA、14はホストコンピュ
ータからのデータ転送を制御するインタフェース、15
は図4に示すようなプログラムあるいはその他のプリン
タ1の動作制御に必要なプログラムを格納しているRO
M、16はプリンタの印字環境の設定あるいはステータ
スの表示を行うための操作パネル、17は印字データを
印字出力するためのエンジンである。18はバスでデー
タやアドレス、割り込み等の制御信号が伝えられる。
【0013】図1の構成からなるプリンタの本実施例に
おける動作を図4を参照しながら、以下に説明する。
【0014】なお、ホストコンピュータからのデータ転
送制御、データ処理の制御、ビットマップへの展開、ビ
ットマップの出力処理などは、公知の通常の処理を行っ
ているので、その説明を省略する。
【0015】また、例えば32バイトなど決まったバイ
ト数の受信データがDMA13により受信バッファに転
送された時の割り込み処理は、後で説明する。
【0016】図4のフローチャートは、何らかのデータ
処理を行った後に、呼出す処理のフローを説明してい
る。この処理フローが呼出されると、まずステップS1
1でRAM12上の受信バッファの書き込みポインタと
DMA13による転送先アドレスを比較する。転送先ア
ドレスの方が進んでいれば転送されているので、ステッ
プS12に進み受信バッファの書き込みポインタとカウ
ンタを更新する。そして、ステップ13において、カウ
ンタを更新したバイト数を補正用の変数に格納して、ス
テップS14に進む。書き込みポインタと転送先アドレ
スが一致していれば転送されていないので、そのままス
テップS14に進む。ステップS14では受信バッファ
のカウンタを調べ、0の場合は残りデータがないので、
RAM12上の受信バッファおよびその制御用の変数を
含む印字環境の初期化を行った後(ステップS16)も
との処理フローに戻る。カウンタが0でない場合は、次
のデータ処理のためのデータが受信バッファに入ってい
るので、その受信データおよび書き込みポインタ、カウ
ントなどの受信バッファ制御用の変数を初期化しないで
そのまま次のデータ処理に引き継ぐ。そして、もとの処
理フローに戻り、受信バッファにデータがあれば処理さ
れる。
【0017】さて、DMA13が例えば32バイトなど
決まったバイト数の受信データを転送したときの割り込
み処理を図7に示したフローチャートで説明する。
【0018】DMA13が例えば32バイトをインタフ
ェース14からRAM22に転送後、割り込みを制御部
11にかけ、制御部11は図7に示した割り込み処理の
フローに入る。まず、ステップS41において、受信バ
ッファの更新即ち受信バッファのポインタとカウンタに
例えば32バイトを加算する。そして、補正用変数が0
であるかをステップS42で調べる。補正用変数が0で
ない場合は、もう先に説明した図4に示したフローの処
理で補正用変数に示された受信データ分の受信バッファ
やカウンタの処理が終了しているので、その分を補正す
る必要がある。したがって、ステップS43で受信バッ
ファのポインタやカウンタを、補正用変数分戻すことで
補正する。そして、補正用変数を0として、この割り込
み処理を終了する。補正用変数が0の場合は、先の処理
が行われていないので補正せずに、この割り込み処理を
終了する。
【0019】[第2実施例]図2は本実施例の構成を示
すブロック図であり、図中2はプリンタである。プリン
タ2において、21は図5に示すようなプログラムに従
って転送データがあらかじめ決められたサイズでなくて
も正確に受信データをカウントアップする動作を実行す
る制御部、22は受信バッファおよび受信バッファ制御
用の変数あるいはプリンタ2の動作制御に必要な変数を
確保するためのRAM、23はホストコンピュータから
の受信データをハードウェアで受信バッファに転送する
ためのDMA、24はホストコンピュータからのデータ
転送を制御するインタフェース、25は図5に示すよう
なプログラムあるいはその他のプリンタ2の動作制御に
必要なプログラムを格納しているROM、26はプリン
タの印字環境の設定あるいはステータスの表示を行うた
めの操作パネル、27は印字データを印字出力するため
のエンジン、28はある一定時間毎に実行する決まった
処理の開始のタイミングを制御するタイマである。
【0020】図2の構成からなるプリンタの本実施例に
おける動作を図5を参照しながら、以下に説明する。
【0021】なお、ホストコンピュータからのデータ転
送制御、データ処理の制御、ビットマップへの展開、ビ
ットマップの出力処理などは、公知の事実であるため、
その説明を省略する。
【0022】また、例えば32バイトなど、決まったバ
イト数ごとのDMA23により受信データが受信バッフ
ァに転送された時の割り込み処理は、図7に示したフロ
ーチャートと同様に行われる。
【0023】さらに、本実施例では説明を簡単にするた
めに、タイマ28により一定時間毎に実行する決まった
処理は、受信バッファの書き込みポインタとDMA23
による転送先のアドレスを比較し、転送先アドレスの方
が進んでいれば受信バッファの書き込みポインタとカウ
ンタを更新する処理のみとする。
【0024】図5において、タイマ28からの割り込み
による通知で、このフローの処理に入る。ステップS2
1では、RAM22上の受信バッファの書き込みポイン
タとDMA23による転送先アドレスを比較し、転送先
アドレスの方が進んでいれば、ステップS22に進み受
信バッファの書き込みポインタとカウンタを更新する。
そして、ステップS23でカウンタを更新したバイト数
をRAM22にある補正用の変数に格納して、この割り
込み処理を終了する。ポインタと転送先アドレスが一致
していればそのまま割り込み処理を終了する。
【0025】[第3実施例]図3は本実施例の構成を示
すブロック図であり、図中3はプリンタである。プリン
タ3において、31は図6に示すようなプログラムに正
確な受信バッファのカウントに基づいてインタフェース
の切換える動作を実行する制御部、32は受信バッファ
および受信バッファ制御用の変数あるいはプリンタ3の
動作制御に必要な変数を確保するためのRAM、33は
インタフェース34から受信したホストコンピュータか
らの受信データをハードウェアで受信バッファに転送す
るためのDMA、34はホストコンピュータからのデー
タ転送を制御するインタフェース1、35は図6に示す
ようなプログラムあるいはその他のプリンタ3の動作制
御に必要なプログラムを格納しているROM、36はプ
リンタの印字環境の設定あるいはステータスの表示を行
うための操作パネル、37は印字データを印字出力する
ためのエンジン、38はホストコンピュータからのデー
タ転送を制御するインタフェース2である。
【0026】図3の構成からなるプリンタの本実施例に
おける動作を図6を参照しながら、以下に説明する。
【0027】なお、ホストコンピュータからのデータ転
送制御、データ処理の制御、ビットマップへの展開、ビ
ットマップの出力処理などは、公知の事実であるため、
その説明を省略する。
【0028】また、例えば32バイトなど、決まったバ
イト数ごとのDMA23により受信データが受信バッフ
ァに転送された時の割り込み処理は、図7に示したフロ
ーチャートと同様に行われる。
【0029】さらに、インタフェース34としてはセン
トロニクスインタフェースのようなDMA33による転
送を生かせる高速のインタフェース、インタフェース3
8としてはRS−232CのようなDMA33による転
送を使う必要のないインタフェースとし、ここでは、説
明を簡単にするために、例えば、インタフェース38か
ら受信したデータのデータ処理が終了したときに、すで
にインタフェース34からデータを受信していればイン
タフェース34に切換え、そうでなければ次にデータを
受信した方のインタフェースに切換え可能な状態になる
場合を考える。
【0030】図6において、インタフェース38やイン
タフェース34から受信したデータについて何らかのデ
ータ処理が行われ、その処理フローの終了した場合に行
われる処理を説明するフローチャートである。インタフ
ェースから受信した処理が終了するとこの処理が呼ば
れ、ステップS31において、RAM32上のインタフ
ェース34の受信バッファの書き込みポインタとDMA
33による転送先アドレスを比較する。転送先アドレス
の方が進んでいれば、ステップS32に進み受信バッフ
ァの書き込みポインタとカウンタを更新する。ステップ
S33でカウンタを更新したバイト数をRAM22にあ
る補正用の変数に格納して、ステップS34に進む。書
き込みポインタと転送先アドレスが一致していればその
ままステップS34に進む。ステップS34では、イン
タフェース34の受信バッファのカウンタを調べる。0
の場合にはステップS35に進み、インタフェース切換
え可能状態に移行する処理を行う。カウンタが0でない
場合には、インタフェース34に切換える。そして、イ
ンタフェース38から受信したデータについての処理が
呼ばれたもとの処理フローに戻る。もとの処理フローで
は、受信バッファにデータがあれば、それについての処
理を行う。切換え可能状態のときは、次に受信したイン
タフェースのデータの処理を行う。
【0031】なお、上記の図4〜図7に示したフローチ
ャートは、本発明に関連する処理の部分を示したもので
ある。
【0032】
【発明の効果】以上説明したように、第1の発明では、
受信データをインタフェースから受信バッファにDMA
転送する際に、データ処理の切れ目に、定まった数未満
の受信したデータを正確な受信バッファのカウントに基
づいて、受信バッファを引き継ぐことができ、処理が速
くなるという効果がある。また、第2の発明では、転送
データが決められたサイズでない場合にも、正確に受信
データをカウントアップし処理することができるという
効果がある。さらに、第3の発明では、正確な受信デー
タのカウントに基づいて、インタフェースを切換えるこ
とができるという効果がある。
【図面の簡単な説明】
【図1】本発明の第1の実施例を示すブロック図であ
る。
【図2】第2の実施例を示すブロック図である。
【図3】第3の実施例を示すブロック図である。
【図4】第1の実施例の制御手順を示すフローチャート
である。
【図5】第2の実施例の制御手順を示すフローチャート
である。
【図6】第3の実施例の制御手順を示すフローチャート
である。
【図7】ハードウェアにより定数転送されたときの制御
手順を示すフローチャートである。
【符号の説明】
1 プリンタ 2 プリンタ 3 プリンタ 11 制御部 12 RAM 13 DMA 14 インタフェース 15 ROM 16 操作パネル 17 エンジン 21 制御部 22 RAM 23 DMA 24 インタフェース 25 ROM 26 操作パネル 27 エンジン 28 タイマ 31 制御部 32 RAM 33 DMA 34 インタフェース1 35 ROM 36 操作パネル 37 エンジン 38 インタフェース2
───────────────────────────────────────────────────── フロントページの続き (58)調査した分野(Int.Cl.7,DB名) B41J 5/30 G06F 3/12 G06F 13/28 310

Claims (1)

    (57)【特許請求の範囲】
  1. 【請求項1】 ホストコンピュータからのデータを受信
    するためのインタフェースと、 受信バッファ等を有する記憶手段と、 受信データを前記インタフェースから前記記憶手段上の
    受信バッファにDMA転送するDMA転送手段と、該DMA転送手段により所定サイズのデータの転送が完
    了したことに応じて発生する割り込み処理において、該
    所定サイズに基づいて前記受信バッファのポインタを更
    新する更新手段と、 所定間隔ごとに発生するタイマ割り込み処理において、
    前記受信バッファのポインタを補正する補正手段と を備
    えたことを特徴とする記録装置。
JP30641894A 1994-12-09 1994-12-09 記録装置 Expired - Fee Related JP3332625B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP30641894A JP3332625B2 (ja) 1994-12-09 1994-12-09 記録装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP30641894A JP3332625B2 (ja) 1994-12-09 1994-12-09 記録装置

Publications (2)

Publication Number Publication Date
JPH08156345A JPH08156345A (ja) 1996-06-18
JP3332625B2 true JP3332625B2 (ja) 2002-10-07

Family

ID=17956786

Family Applications (1)

Application Number Title Priority Date Filing Date
JP30641894A Expired - Fee Related JP3332625B2 (ja) 1994-12-09 1994-12-09 記録装置

Country Status (1)

Country Link
JP (1) JP3332625B2 (ja)

Also Published As

Publication number Publication date
JPH08156345A (ja) 1996-06-18

Similar Documents

Publication Publication Date Title
EP0386935B1 (en) Apparatus capable of varying number of wait states for access
JP3332625B2 (ja) 記録装置
JP3707509B2 (ja) 多機能並行処理型電子装置
JPH1083314A (ja) 多機能並行処理型電子装置
US6628289B1 (en) Rendering apparatus and method, and storage medium
JP3055999B2 (ja) マイクロプログラム制御装置群
JP3007923B2 (ja) データ転送方法およびシステム
JPS62173526A (ja) ペ−ジバツフア制御方式
JP3292447B2 (ja) 多機能並行処理型情報処理装置
JP2001331440A (ja) データ受信処理装置
JPH1029477A (ja) 電子制御装置及びその制御方法
JP2002281259A (ja) 画像形成装置
JP3250118B2 (ja) 印刷装置のデータ管理方式
JP2814849B2 (ja) 通信制御装置
JP2793258B2 (ja) 位置決め制御装置のデータ設定方法
JP2012032702A (ja) 制御装置、その制御方法、及び制御プログラム、並びに記録媒体
JP3248796B2 (ja) ネットワークプリンタシステム
JPH09131948A (ja) プリンタ装置
JPH05294549A (ja) 印刷装置
JPH0247078A (ja) 印刷装置
JPH10105417A (ja) 多機能並行処理型電子装置
JPH07262082A (ja) メモリ制御装置
JPH0417454B2 (ja)
JPH01180038A (ja) 印字装置
JPH0911555A (ja) 記録装置

Legal Events

Date Code Title Description
FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080726

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20080726

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20090726

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20090726

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20100726

Year of fee payment: 8

LAPS Cancellation because of no payment of annual fees