JP2005193543A - 印刷装置及び印刷方法 - Google Patents

印刷装置及び印刷方法 Download PDF

Info

Publication number
JP2005193543A
JP2005193543A JP2004002383A JP2004002383A JP2005193543A JP 2005193543 A JP2005193543 A JP 2005193543A JP 2004002383 A JP2004002383 A JP 2004002383A JP 2004002383 A JP2004002383 A JP 2004002383A JP 2005193543 A JP2005193543 A JP 2005193543A
Authority
JP
Japan
Prior art keywords
data
dma controller
dma
printing apparatus
memory
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.)
Pending
Application number
JP2004002383A
Other languages
English (en)
Inventor
Toshihiko Katayama
敏彦 片山
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
Priority to JP2004002383A priority Critical patent/JP2005193543A/ja
Publication of JP2005193543A publication Critical patent/JP2005193543A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Record Information Processing For Printing (AREA)

Abstract

【課題】CPUの重複する読み出し動作を減らし、処理速度を速くする。
【解決手段】本発明の印刷装置は、データを記憶するメモリと、受信したデータを前記メモリにDMA転送するためのDMAコントローラと、前記DMAコントローラの設定を行う処理装置と、を備える。そして、前記DMAコントローラが受信するデータは、ヘッダ部とデータ部とを含み、前記DMAコントローラは、受信したデータを蓄積するバッファを有し、前記DMAコントローラは、前記データのヘッダ部を前記バッファに蓄積し、前記処理装置は、前記バッファに蓄積された前記ヘッダ部を読み出し、前記処理装置は、前記ヘッダ部に基づいて、前記DMAコントローラを設定し、前記DMAコントローラは、設定に従って、前記データの前記データ部を前記メモリにDMA転送する。
【選択図】 図13

Description

本発明は、受信したデータをメモリにDMA転送する印刷装置及び印刷方法に関する。
外部のコンピュータと接続されたプリンタ(印刷装置)は、コンピュータから受信したデータに基づいて、印刷を行う。プリンタの印刷速度を高めるためには、外部からデータを受信した後、そのデータに対応する処理をプリンタが速く行う必要がある。また、印刷を行う場合でなくとも、プリンタは、データを受信した後、そのデータに応じた処理を高速に行うことが望ましい。
一方、プリンタが受信したデータをメモリに高速に転送するために、DMA(Direct Memory Access)転送技術を用いることがある。DMA転送を用いれば、CPUを介することなくデータを転送ができるので、CPUの処理が軽減し、プリンタの処理速度が速くなる。
特開平11−157142号公報
DMA転送により、受信したデータをメモリに転送した場合、受信したデータを処理するため、CPUは、まずデータのヘッダ部をメモリから読み出し、ヘッダ部の内容に応じてデータのデータ部を読み出し、このデータ部を処理することになる。このため、CPUがメモリに対して重複して読み出し動作を行うため、CPUからメモリへのアクセス速度が遅いと、受信したデータに対応する処理を開始するまで時間がかかり、プリンタの処理速度が遅くなる。
そこで、本発明は、重複する読み出し動作を減らし、処理速度を速くすることを目的とする。
上記目的を達成するための主たる発明は、データを記憶するメモリと、受信したデータを前記メモリにDMA転送するためのDMAコントローラと、前記DMAコントローラの設定を行う処理装置と、を備え、前記DMAコントローラが受信するデータは、ヘッダ部とデータ部とを含み、前記DMAコントローラは、受信したデータを蓄積するバッファを有し、前記DMAコントローラは、前記データのヘッダ部を前記バッファに蓄積し、前記処理装置は、前記バッファに蓄積された前記ヘッダ部を読み出し、前記処理装置は、前記ヘッダ部に基づいて、前記DMAコントローラを設定し、前記DMAコントローラは、設定に従って、前記データの前記データ部を前記メモリにDMA転送することを特徴とする。
本発明の他の特徴については、本明細書及び添付図面の記載により明らかにする。
本発明の印刷装置によれば、処理速度を速くすることができる。
===開示の概要===
本明細書及び添付図面の記載により、少なくとも、以下の事項が明らかとなる。
データを記憶するメモリと、
受信したデータを前記メモリにDMA転送するためのDMAコントローラと、
前記DMAコントローラの設定を行う処理装置と、
を備え、
前記DMAコントローラが受信するデータは、ヘッダ部とデータ部とを含み、
前記DMAコントローラは、受信したデータを蓄積するバッファを有し、
前記DMAコントローラは、前記データのヘッダ部を前記バッファに蓄積し、
前記処理装置は、前記バッファに蓄積された前記ヘッダ部を読み出し、
前記処理装置は、前記ヘッダ部に基づいて、前記DMAコントローラを設定し、
前記DMAコントローラは、設定に従って、前記データの前記データ部を前記メモリにDMA転送する
ことを特徴とする印刷装置。
このような印刷装置によれば、処理速度を速くすることができる。
かかる印刷装置であって、前記処理装置と前記DMAコントローラの間に設けられた第1バスと、前記DMAコントローラと前記メモリとの間に設けられた第2バスと、を更に備え、前記処理装置は、前記メモリに転送されたデータを読み出すとき、前記第1バス及び前記第2バスを利用することが望ましい。処理装置がメモリに記憶されたデータを読み出すときに時間がかかる構成であるが、処理装置に重複する読み出し動作を軽減できるので、処理速度を速くすることができる。
かかる印刷装置であって、前記DMAコントローラは、受信したデータのデータ長を計数するカウンタを有し、カウンタの設定に基づいて、所定のデータ長の前記ヘッダ部を前記バッファに蓄積することが望ましい。受信したデータをSDRAMにDMA転送する前に、処理装置がヘッダ部を読み出すことができる。
かかる印刷装置であって、前記ヘッダ部は、前記データ部の長さに関するデータ長情報を有し、前記処理装置は、前記データ長情報に基づいて、前記カウンタを設定する
ことが望ましい。データ部の長さに応じてDMA転送するように処理装置がDMAコントローラを設定できるので、効率よくデータ部をDMA転送することができる。
かかる印刷装置であって、前記処理装置は、転送先を前記DMAコントローラに設定し、前記DMAコントローラは、設定された前記転送先に従って、前記データの前記データ部を前記メモリにDMA転送することが望ましい。これにより、処理装置の重複する読み出し動作を減らし、処理速度を速くすることができる。
かかる印刷装置であって、前記ヘッダ部は、前記データ部の種類に関する種別情報を有し、前記処理装置は、前記種別情報に基づいて、前記転送先を決定することが望ましい。これにより、データの種類に応じてDMA転送するように処理装置がDMAコントローラを設定することができる。
かかる印刷装置であって、前記印刷装置は、印刷データに基づいて媒体に画像を形成するものであり、前記データ部は、前記印刷データを含むことが望ましい。これにより、印刷装置は、印刷データに基づく印刷処理を早く開始することができる。
かかる印刷装置であって、前記印刷データは、前記媒体に前記画像を形成するときの制御情報と、前記画像に関する情報とを含むことが望ましい。これにより、印刷装置は、印刷データに基づく印刷処理を早く開始することができる。
かかる印刷装置であって、前記データ部は、前記印刷装置の状況を問い合わせる問い合わせ情報を含み、前記印刷装置は、前記問い合わせ情報を受信した後、前記問い合わせ情報の発信元に前記印刷装置の状況に関する情報を送信することが望ましい。これにより、問い合わせ情報を受信してから印刷装置の状況に関する情報を送信するまでの時間を短くすることができる。
かかる印刷装置であって、前記データ部が前記メモリにDMA転送された後、前記処理装置は、前記メモリにDMA転送された前記データ部を読み出すことが望ましい。このように、メモリに転送されたデータを処理装置が読み出す場合に、処理装置の重複する読み出し動作を回避することができるので有効である。
受信したデータをメモリにDMA転送し、印刷を行う印刷装置であって、
データのヘッダ部をDMAコントローラが受信し、
受信した前記ヘッダ部を前記DMAコントローラ内のバッファが蓄積し、
DMAコントローラを制御する処理装置が、前記バッファに蓄積された前記ヘッダ部を読み出し、
前記処理装置が、前記ヘッダ部に基づいて、前記DMAコントローラを設定し、
前記DMAコントローラが、設定に従って、前記データの前記データ部を前記メモリにDMA転送する
ことを特徴とする印刷方法。
このような印刷方法によれば、処理速度を速くすることができる。
===印刷装置の概略構成===
図1〜図5を参照して本実施の形態に係る印刷装置の概略構成について説明する。図1は本実施の形態に係る印刷装置の概略構成を示した斜視図、図2はスキャナ部10のカバーを開いた状態を示す斜視図、図3は印刷装置の内部構成を示す説明図、図4はプリンタ部の内部を露出させた状態を示す斜視図、図5は操作パネル部の一例を示す図である。
本実施形態の印刷装置は、原稿画像を入力するためのスキャナ機能、画像データに基づいて画像を用紙等の媒体に印刷するプリンタ機能、スキャナ機能により入力した画像を用紙等に印刷するローカルコピー機能を有するスキャナ・プリンタ・コピー複合装置(以下、SPC複合装置という)である。
SPC複合装置1は、スキャナ部10と、プリンタ部30と、制御回路50と、操作パネル部70とを有している。スキャナ部10は、原稿5の画像を読み取って、画像データを取得する。プリンタ部30は、画像データに基づいて画像を用紙等の媒体に印刷する。制御回路50は、SPC複合装置1全体の制御を司る。操作パネル70は、ユーザーインターフェースとしての入力手段をなす。SPC複合装置1は、制御回路50によって各構成要素を制御し、スキャナ機能、プリンタ機能、及び、スキャナ部10から入力されたデータをプリンタ部30にて印刷するローカルコピー機能を実現する。
図4に示すように、プリンタ部30とスキャナ部10とは、背面側にてヒンジ機構41により結合されており、ヒンジ機構41の回動部を中心としてユニット化されたスキャナ部10が手前側から持ち上げられる。スキャナ部10を持ち上げた状態では、プリンタ部30を覆うカバーの上部に設けられた開口301からプリンタ部30の内部が露出される構成となっている。このようにプリンタ部30の内部を露出させることにより、インクカートリッジ等の交換や、用紙詰まりの処理等を容易に行える構成としている。
また、本SPC複合装置1への電源部はプリンタ部30側に設けられている。前記ヒンジ機構41の近傍に、スキャナ部10へ電源を供給するための給電ケーブル43が設けられている。さらに、このSPC複合装置1には、USBインターフェイス52が設けられている。USBインターフェイスは、スキャナ機能時にはホストコンピュータ3への画像の送信し、プリンタ機能時にはホストコンピュータ3から画像データを受信するのに用いられる。
SPC複合装置1の前面上側には、操作パネル70が設けられている。この操作パネルの各種ボタンの操作によって、SPC複合装置のスキャナ機能・コピー機能の各種設定を行うことができる。なお、プリンタ機能の各種設定は、操作パネル70上ではなく、USBインターフェイス52を介してSPC複合装置1と接続されたコンピュータのプリンタドライバの設定により、行われる。制御回路50は、設定内容に応じて、装置内の各構成要素を制御する。
===スキャナ部10の構成===
スキャナ部10は、原稿台ガラス12と、原稿台カバー14と、読取キャリッジ16と、駆動手段18と、規制ガイド20とを有する。原稿台ガラスは、原稿5を載置する透明なガラス製の板である。原稿台カバー14は、原稿台ガラス12に載置された原稿5の読み取り面を原稿台ガラス12側に押圧する。読取キャリッジ16は、原稿台ガラス12を介して対向し、原稿5と一定の間隔を保ちながら原稿5に沿って走査する。駆動手段18は、読取キャリッジ16を走査するための駆動力を発生する。規制ガイド20は、読取キャリッジ16を安定した状態にて走査させるための案内である。
読取キャリッジ16は、光源22と、レンズ24と、ミラー26と、CCDセンサ28と、ガイド受け部29とを有する。光源22は、原稿台ガラス12を介して原稿5に光を照射する。この光源22は、RGBの3色の発光ダイオードを有し、各発光ダイオードを切り替えて、原稿5に光を照射する。レンズ24は、原稿5による反射光を集光させる。ミラー26は、4枚設けられており、原稿5からの反射光をレンズ24に導く。CCDセンサ28は、レンズを透過した反射光を受光する。ガイド受け部29は、規制ガイド20と係合している。
CCDセンサ28は、光信号を電気信号に変換するフォトダイオードが列状に配置されたリニアセンサで構成される。このリニアセンサは、読取キャリッジの移動方向と垂直な方向に、配置される。光源22がRGBの3色の光を順に発するので、CCDセンサ28は、RGBの反射光を順に受光することになる。それぞれの反射光を受光する毎にCCDセンサ28の電荷を検出すれば、それぞれの反射光の光量を検出することができる。
駆動手段18は、タイミングベルト181と、プーリ182と、パルスモータ183と、アイドラプーリ184とを有する。タイミングベルトは、読取キャリッジ16に固定された環状のベルトである。プーリ182は、このタイミングベルト181と噛み合う。パルスモータ183は、プーリ182を回転駆動し、タイミングベルトを駆動する。アイドラプーリ184は、プーリ182の反対側に配置され、タイミングベルト181に張力を付与する。パルスモータは、制御回路50のスキャナコントロールユニット(後述)により、制御される。
スキャナ部10は、光源22の光を原稿5に照射し、その反射光をCCDセンサ28上に結像させつつ、読取キャリッジ16を原稿5に沿って移動させる。このとき、CCDセンサ28が受光した光量を示す電圧値として所定の周期で読み込むことにより、1周期の間に読み取りキャリッジ16が移動した距離分の画像を、出力する画像の1ライン分のデータとして取り込んでいく。但し、CCDセンサ28は、RGBの反射光の光量を順に検出するので、RGBの3色の反射光を同時に検出することができず、検出位置にズレが生じる。このズレは、スキャナ制御ユニット(後述)により補正される。スキャナ制御ユニットの補正により、1ライン分のR成分、G成分、B成分の3つのデータが取得できる。
===プリンタ部30の構成===
<全体構成について>
プリンタ部30は、印刷用紙にインクを吐出してドットを形成して画像を形成するインクジェット方式を採用している。本プリンタ部30は、カラー画像出力が可能であり、シアン(C)、マゼンタ(M)、イエロ(Y)、ブラック(K)の4色の色インクを用いて画像を形成する。
次に、図3、図6、図7を参照してプリンタ部30について説明する。図6は印刷ヘッド周辺の構成要素の配置を示した説明図、図7は印刷用紙搬送機構の駆動部を説明するための説明図である。
プリンタ部30は、図示するように、印刷ヘッド38を駆動してインクを吐出する機構と、この書込キャリッジ36をキャリッジモータ40によって移動方向(用紙7の搬送方向と直交する方向)に往復動させる機構と、搬送モータ(以下、PFモータともいう)42によって用紙7を搬送する機構とを有している。
インクを吐出する機構は、複数のノズルを備えた印刷ヘッド38を有する。印刷ヘッドは、ヘッド制御ユニット(後述)から送られてくるヘッド駆動データに基づいて、所定のノズルからインクを吐出する。印刷ヘッド38の下面381には、複数のノズル列が書込キャリッジ36の移動方向に並んでいる。各ノズル列には、複数のノズルが用紙7の搬送方向に沿って並んでいる。印刷ヘッド38は、各ノズルに対応させて記憶素子を備えている。この記憶素子は、ヘッド制御ユニット(後述)から送られてくるヘッド駆動データ(後述)を記憶する。
書込キャリッジ36を往復動させる機構は、キャリッジモータ(以下、CRモータともいう)40と、軸44と、リニア式エンコーダ46と、リニア式エンコーダ用符号板461と、プーリ48と、タイミングベルト49とを有する。キャリッジモータ40は、書込キャリッジ36を駆動する。軸44は、用紙7の搬送方向と直交する方向に設けられ、書込キャリッジ36を往復移動可能に保持する。リニア式エンコーダ46は、所定の間隔のスリットが形成された符号板461を用いて、書込キャリッジの位置を検出する。プーリ48は、キャリッジモータ40の回転軸に取付けられ、タイミングベルト49を駆動する。キャリッジモータ40が駆動すると、タイミングベルト49が駆動され、書込キャリッジ36が軸44に案内されながら移動する。
書込キャリッジ36には、印刷ヘッド38と、この印刷ヘッド38と一体に設けられたカートリッジ装着部が固定されている。このカートリッジ装着部には、黒(K)、シアン(C)、マゼンタ(M)、イエロ(Y)等のインクが収容されたインクカートリッジが装着される。
用紙7を搬送する機構は、プラテン35と、搬送ローラ37と、排紙ローラ39と、搬送モータ42と、ロータリ式エンコーダ47と、用紙検出センサ45とを有する。プラテン35は、印刷ヘッド38と対向して配置され、用紙7と印刷ヘッド38とが適切な距離となるように用紙7を案内する案内部材である。搬送ローラ37は、プラテン35に対し用紙7の搬送方向の上流側に設けられ、プラテン35に所定の角度にて用紙7が接触するように用紙7を搬送する。排紙ローラ39は、プラテン35に対し用紙7の搬送方向の下流側に設けられ、搬送ローラ37から外れた用紙7を排紙する。搬送モータ42は、搬送ローラ37及び排紙ローラ39を駆動する。搬送ローラ37及び排紙ローラ39は、両ローラの搬送量が一致するようにギア列31により繋げられ、搬送モータ42の回転が伝達されて駆動される。ロータリ式エンコーダ47は、用紙7の搬送量を検出する。なお、用紙検出センサ45は、用紙7の有無及び用紙7の先端・後端を検出する。
<ノズルの構成について>
図8は、印刷ヘッド38の下面381におけるノズルの配列を示す説明図である。
印刷ヘッド38の下面381には、ブラックインクノズル列33(K)と、シアンインクノズル列33(C)と、マゼンタインクノズル列33(M)と、イエローインクノズル列33(Y)が形成されている。各ノズル列33は、各色のインクを吐出するための吐出口であるノズルを複数個(本実施形態では180個)備えている。
各ノズル列33の複数のノズルは、紙搬送方向に沿って、一定の間隔(ノズルピッチ:k・D)でそれぞれ整列している。ここで、Dは、紙搬送方向における最小のドットピッチ(つまり、用紙に形成されるドットの最高解像度での間隔)であり、例えば、解像度が720dpiであれば1/720インチ(約35.3μm)である。また、kは、1以上の整数である。
また、各ノズル列のノズルは、下流側のノズルほど小さい番号が付される。ノズル♯1は、搬送方向最下流のノズルであり、ノズル♯180は、搬送方向最上流のノズルになる。各ノズルには、各ノズルを駆動してインク滴を吐出させるための駆動素子としてピエゾ素子(不図示)が設けられている。このピエゾ素子は、ヘッド駆動データに基づいて駆動される。この結果、ヘッド駆動データに応じて、印刷用紙にドットが形成される。
なお、印刷時には、用紙7が搬送ローラ37及び排紙ローラ39によって間欠的に所定の搬送量Fで搬送され、その間欠的な搬送の間に書込キャリッジ36が走査方向に移動して各ノズルからインク滴が吐出される。
===制御回路50の内部構造===
図9は、制御回路50の説明図である。
制御回路50には、ROM53及びカードインターフェイス54がCPUバス501を介して繋がっている。このROM53にプログラムが記憶されており、制御回路50は、このプログラムに従って、装置全体の制御を行う。また、CPUバス501とは独立しているローカルバス502には、SDRAM69が繋がっている。なお、CPUバス501は32ビット幅のデータバスであり、ローカルバス502は16ビット幅のデータバスである。また、制御回路50には、操作パネル70及びモータドライバ503がシリアルインターフェイス(不図示)を介して繋がっている。この、モータドライバ503は、スキャナ部10の駆動手段18、プリンタ部30のキャリッジモータ40と、搬送モータ42とを駆動するときに用いられる。また、SPC複合装置は、USBインターフェイス55を介して、外部のコンピュータ3と接続されている。
制御回路50は、CPU52と、SDRAMコントローラ68と、複数のユニット(56〜66)と、を有する。制御回路50は、CPU52を内蔵した専用回路として構成されている。CPU52は、ROM53に記憶されたプログラムに従って、各ユニットの設定等を行うことによって、装置全体の制御を行う。SDRAMコントローラ68は、制御回路50内のユニットからの指示に応じて、SDRAMへデータの書き込みや読み出しを行う。また、制御回路50には、USB制御ユニット56と、スキャナ制御ユニット58と、2値化ユニット60と、インターレース処理ユニット61と、イメージバッファユニット62と、ヘッド制御ユニット64と、CPUインターフェイスユニット66が設けられている。
USB制御ユニット56は、USBインターフェイス55を介して、受信したデータをSDRAM59へ格納し、SDRAM内のデータを送信する際に用いられる。
スキャナ制御ユニット58は、スキャナ部10が備える光源22、CCDセンサ28、パルスモータ183等を制御する。スキャナ制御ユニット58は、CCDセンサ28を介して読み込んだ画像データを送出する機能を有する。なお、スキャナ制御ユニット58は、原稿から画像を読み取った後に画素間の補間を行うことにより、所定の解像度の画像データを生成することができる。例えば、通常コピー時(後述)にはプリンタ部の解像度(例えば1440dpi×720dpi)の解像度の画像データを生成することができる。スキャナコントロールユニット58が生成する画像データは、256階調のRGB色空間の画像データ(256階調RGBデータ)である。スキャナコントロールユニット58は、生成した256階調RGBデータを、SDRAM69内に割り当てられたラインバッファに記憶する。
2値化処理ユニット60は、256階調RGBデータを2階調(又は4階調)のCMYK系のデータに変換する。まず、2値化ユニット60は、256階調RGBデータを、SDRAM69に格納されたルックアップテーブル(LUT)を参照して256階調のCMYKデータに変換する(この処理を、色変換処理ともいう)。そして、2値化ユニット60は、誤差拡散法等の手法によって、256階調CMYKデータを2階調CMYKデータに変換する(この処理を、ハーフトーン処理ともいう)。2値化処理ユニット60は、生成した2階調CMYKデータを、SDRAM内に割り当てられた2値化バッファに記憶する。
インターレース処理ユニット61は、1ラスタライン(印刷画像における主走査方向の1ライン)を複数回の書込キャリッジ36の走査にて印刷する所謂オーバーラップ印刷する際に、1ラスタラインのCMYKのデータを書込キャリッジ36の走査毎に印刷するデータに振り分けてオーバーラップ印刷対応データ(以下、OL対応データという)を生成する。インターレース処理ユニット61は、生成したOL対応データを、SDRAM69内に割り当てられたインターレースバッファに記憶する。また、インターレース処理ユニット61では、インターレースバッファに記憶されたデータを所定のサイズ毎に読み出して、ノズル配列に対応させるべく並び替える。
イメージバッファユニット62は、インターレース処理ユニット61から送出されたデータを、書込キャリッジ36の走査毎の各ノズルにインクを吐出させるためのヘッド駆動データを生成する。イメージバッファユニット62は、生成したヘッド駆動データを、SDRAM内に割り当てられたイメージバッファに記憶する。
ヘッド制御ユニット64は、イメージバッファのヘッド駆動データを印刷ヘッド38へ送り出す。イメージバッファにはヘッド駆動データが順次記憶され、書込キャリッジ36の1回の走査中に必要なヘッド駆動データが蓄積されたときに、書込キャリッジ36の駆動が始まる。そして、書込キャリッジ36の移動中に、ヘッド制御ユニット64は、ヘッド駆動データを順次印刷ヘッド38へ送り出す。印刷ヘッド38は、ヘッド制御ユニット64から送られてくるヘッド駆動データに基づいて、所定のノズルからインクを吐出する。
CPUインターフェイスユニット66は、CPU52がSDRAM69へアクセスを可能とする機能を有している。
===SDRAMのデータ転送===
本実施形態のSDRAMコントローラは、制御回路内の各ユニットに応じて、又は、制御回路内の各ユニットからの指示に応じて、以下に説明する4バースト転送又は8バースト転送を行う。なお、以下の説明では、読み出しに対するレイテンシを2とする(書き込みに対するレイテンシは0である)。
<読み出し時>
図10Aは、4バースト転送による読み出し時の動作説明図である。図10Bは、8バースト転送による読み出し時の動作説明図である。
図中の一番上の信号は、同期のためのクロックである。コマンド信号は、SDRAMへの動作命令のための信号である。このコマンド信号は、コントロール信号(RAS、CAS、WE等)の論理レベルの組み合わせによるものである。アドレス信号は、データの入出力先を指定するための信号である。データ信号は、SDRAMのデータピンに入出力する信号である。
まず、SDRAMコントローラは、各ユニットからの指示に応じて、SDRAMに対してACTコマンド(行アドレス・ストローブ信号(RAS)も含まれる)を与える。また、SDRAMコントローラは、行アドレスをSDRAMに与える。説明上、SDRAMに与えられる行アドレスを行Aとする。次に、SDRAMコントローラは、SDRAMに対してREADコマンド(列アドレス・ストローブ信号(CAS)も含まれる)を与える。また、SDRAMコントローラは、列アドレスをSDRAMに与える。説明上、SDRAMに与えられる列アドレスを列a1とする。これにより、レイテンシが2なので、2クロック後から行A列a1のデータが出力される。また、SDRAMは、4バースト長に設定されており、4つの連続したアドレス(行A列a1〜列a4)のデータを1クロック毎に順に出力する。
SDRAMは、入力された行アドレスに応じてその行のデータを全てラッチし、その後の列アドレスに応じて、ラッチしたデータの中から出力するデータを選択している。そのため、SDRAMは、同じ行のデータであれば、ACTコマンド等を出さずに、連続してデータを出力できる。上記の4バースト転送は、これを利用したものである。
8バースト転送の場合、SDRAMコントローラは、最初のREADコマンドから4クロック後に、更にREADコマンドをSDRAMへ与える。また、SDRAMコントローラは、最初に与えた列アドレス(列a1)の4アドレス後の列アドレス(列a5)をSDRAMに与える。これにより、このREADコマンドの2クロック後から、行A列a5〜a8のデータが出力される。行A列a5のデータが、最初のREADコマンドによる行A列a4からのデータの読み出し直後に、読み出される。したがって、この場合、SDRAMは、4バースト長に設定されているが、8つの連続したアドレス(行A列a1〜a8)のデータを1クロック毎に順に読み出すことになる。
8バースト転送の場合、ACTコマンドを2度出すことなく、4バースト転送を連続して2回行っている。これにより、読み出し速度を速くすることができる。
<書き込み時>
図11Aは、4バースト転送による書き込み時の動作説明図である。図11Bは、8バースト転送による書き込み時の動作説明図である。
まず、SDRAMコントローラは、各ユニットからの指示に応じて、SDRAMに対してACTコマンド(行アドレス・ストローブ信号(RAS)も含まれる)を与える。また、SDRAMコントローラは、行アドレスをSDRAMに与える。説明上、SDRAMに与えられる行アドレスを行Aとする。次に、SDRAMコントローラは、SDRAMに対してWRITEコマンド(列アドレス・ストローブ信号(CAS)も含まれる)を与える。また、SDRAMコントローラは、列アドレスをSDRAMに与える。説明上、SDRAMに与えられる列アドレスを列a1とする。
書き込まれるデータは、1クロック毎に連続してSDRAMへデータ信号として入力される。SDRAMは、入力されたアドレスから連続する4つのアドレス(行A列a1〜a4)に、1クロック毎にデータを取り込み、順に書き込んでいく。
図中のDQM信号は、書き込みデータに対してマスクを行うための信号である。書き込みに対するレイテンシはゼロであるので、DMQにHレベルが入力されたサイクルの書き込みデータは、SDRAMには書き込まれない。
8バースト転送の場合、SDRAMコントローラは、最初のWRITEコマンドから4クロック後に、更にWRITEコマンドをSDRAMへ与える。また、SDRAMコントローラは、最初に与えた列アドレス(列a1)の4アドレス後の列アドレス(列a5)をSDRAMに与える。これにより、2度目のWRITEコマンドに対する最初のデータが、最初のWRITEコマンドによる行A列a4へのデータの書き込み直後に、行A例a5へ書き込まれる。したがって、この場合、SDRAMは、4バースト長に設定されているが、8つの連続したアドレス(行A列a1〜a8)へのデータを1クロック毎に順に書き込むことになる。
===SDRAMコントローラへの指示===
図12Aは、読み出し時におけるユニットとSDRAMコントローラ間での信号の受け渡しの説明図である。図12Bは、書き込み時におけるユニットとSDRAMコントローラ間での信号の受け渡しの説明図である。
ユニットがSDRAMからデータを読み出すとき、ユニットは、SDRAMコントローラへ、読み出し要求を行うと共に、読み出し先のアドレスを指示する。また、ユニットによっては、SDRAMコントローラに対して、バースト長を指定する信号を出すこともある。SDRAMコントローラは、ユニットから読み出し要求を受けた後、そのユニットに対してRACK信号を出す。4バースト転送のみ行うユニットから読み出し要求があった場合、SDRAMコントローラは、4バースト転送によりSDRAMからデータを読み出す。8バースト転送のみ行うユニットから読み出し要求があった場合、SDRAMコントローラは、8バースト転送によりSDRAMからデータを読み出す。4バースト転送及び8バースト転送の両方を行うユニットから読み出し要求がある場合、バースト長を指定する信号に従って、SDRAMコントローラはSDRAMからデータを読み出す。SDRAMコントローラは、SDRAMからデータを取り出した後、ACK信号と共にデータを送り出す。これにより、ユニットは、指定したアドレス先のデータを読み出すことができる。
本実施形態では、ユニットがバースト長指定信号を出さない場合、SDRAMコントローラは、どのバースト長にて読み出し動作を行うのかを、読み出し要求元のユニットに応じて決定する。例えば、本実施形態では、ヘッド駆動ユニットから読み出し要求があった場合、SDRAMコントローラは、8バースト転送にてSDRAMからデータを読み出す。また、CPUインターフェイスユニットから読み出し要求があった場合、SDRAMコントローラは、4バースト転送にてSDRAMからデータを読み出す。
ユニットがSDRAMへデータを書き込むとき、ユニットは、SDRAMコントローラへ、書き込み要求を行うと共に、アドレスと書き込むデータとDQM信号を指示する。SDRAMコントローラは、ユニットから書き込み要求を受けた後、ユニットから指示されたデータに応じて4バースト転送又は8バースト転送にて、SDRAMへデータの書き込みを開始する。また、SDRAMコントローラは、SDRAMへのデータの書き込みを開始すると共に、ユニットへACK信号を送り出す。これにより、ユニットは、指定したアドレス先へのデータの書き込みを終了する。
本実施形態では、DRAMコントローラは、ユニットから指示されたデータが4バースト転送相当分であれば、SDRAMに対して4バースト転送にてデータを書き込む。また、SDRAMコントローラは、ユニットから指示されたデータが8バースト転送相当分であれば、SDRAMに対して8バースト転送にてデータを書き込む。具体的には、ローカルバス502は16ビットバスなので、SDRAMコントローラは、ユニットから64ビットのデータの書き込みを指示されたとき、4バースト転送にてデータをSDRAMに書き込む。また、SDRAMコントローラは、ユニットから128ビットのデータの書き込みを指示されたとき、8バースト転送にてデータをSDRAMに書き込む。
以下に各ユニットの動作が説明されるが、説明の簡略化のため、特別な場合を除き、SDRAMコントローラの存在を無視し、ユニットがSDRAMへデータを書き込む等と表現する。
===プリンタ機能時のデータの流れ===
まず、外部のコンピュータ3からUSBインターフェイスを介して印刷データを受信し、SPC複合装置1のプリンタ部30が印刷を行う場合のデータの流れを説明する。
<USBコントローラからSDRAM(受信バッファ)へ>
図13Aは、USBコントローラがDMAコントローラへ送るデータの説明図である。図13Bは、USBコントローラから受信したデータをSDRAMの受信バッファへ記憶するときの説明図である。図13Bには、DMAコントローラの概念図も示されている。
本実施形態のUSB制御ユニット56(前述)は、USBコントローラ561とDMAコントローラ562を含んでいる。USBコントローラ561は、USBインターフェイス55から受信したデータをDMAコントローラ562へ送る。
USBコントローラ561がDMAコントローラへ送るデータは、6バイトのヘッダと、可変長のデータ部とからなる。ヘッダは、6バイトに固定されたデータ長である。このヘッダは、その後に続くデータ部の種類を示す種別情報と、データ部のデータ長を示すデータ長情報とを含んでいる。DMAコントローラ562は、USBコントローラから、ヘッダを受け取った後、データ部を受け取ることになる。
データ部の種類は、2種類ある。一つが印刷データであり、もう一つがコマンドデータである。印刷データは、制御情報と画像情報とからなる。制御情報は、画像情報のデータ長さを示す情報、画像情報の圧縮タイプを示す情報、プリンタ部の構成要素を制御するための情報等からなる。画像情報は、プリンタ部が印刷するときの各画素の情報である。本実施形態では、画像情報は、2階調CMYKデータである。コマンドデータは、例えば、外部のコンピュータがプリンタへステータス情報を問い合わせるときに発行される問い合わせ情報である。
DMAコントローラは、カウンタ付ゲート564と、DMAバッファ565と、スイッチ566とを有する。カウンタ付ゲート564は、USBコントローラからのデータの転送を制御するゲートであり、また、USBから転送されるデータ長をカウントするカウンタでもある。これにより、カウンタの値に応じてゲートを開閉することができる。DMAバッファが蓄積できるデータ長は、カウンタで設定されるデータ長よりも、はるかに小さい。例えば、DMAバッファのサイズは8バイトであり、カウンタで設定できるデータ長は64kバイトである。
ゲート564が閉じている場合、USBコントローラからDMAコントローラにデータは流れてこない。スイッチ566がオープン状態でゲート564を開いた場合、DMAバッファ565にデータが蓄積され、DMAバッファ565にデータが蓄積できなくなるとUSBコントローラ561からDMAコントローラ562にデータが流れなくなる。スイッチ566がクローズ状態でゲート564を開いた場合、DMAコントローラからSDRAMへ(SDRAMコントローラを介して)データが転送される。
SDRAM69には、2つの受信バッファが割り当てられている。一方の受信バッファは、印刷データを記憶するための領域として使用される。また、もう一方の受信バッファは、コマンドデータを記憶するための領域として使用される。
図14は、DMAコントローラの動作のフロー図である。以下に、DMAコントローラの動作について説明する。
まず、DMAコントローラ562は、ゲート564を閉じ、スイッチ566をオープンにしておく(S101)。次に、DMAコントローラ562は、カウンタ付ゲート564のカウンタを6バイトに設定する(S102)。設定された6バイトのデータ長は、ヘッドのデータ長と同じ長さである。次に、DMAコントローラ562は、ゲートを開き、ゲートを通過するデータが6バイトに達したら、ゲートを閉じる(S103)。これにより、DMAバッファ565には6バイトのデータが蓄積される。すなわち、DMAバッファ565にヘッダが蓄積される。
次に、DMAコントローラ562は、CPU52へ割り込みを発生させる(S104)。割り込み待ち後、DMAコントローラ562は、DMAバッファ内のデータをCPU52へ送信する。CPU52がヘッダの情報を取得した後、DMAコントローラ562は、DMAバッファのデータをクリアする(S105)。これにより、CPU52は、ヘッダの情報を取得することにより、ヘッダに続くデータ部の種類・データ長に関する情報を取得する。本実施形態では、ヘッダは、データ部の種類として印刷データを示し、データ部の長さとして56kバイトを示すものとする。
次に、DMAコントローラ562は、CPU52の指示に基づいて、カウンタを設定する。また、DMAコントローラ562は、CPU52の指示に基づいて、ヘッダに続くデータ部の転送先を設定する(S106)。なお、CPU52は、先ほど取得したヘッダの情報に基づいて、DMAコントローラ562に対してカウンタの設定や転送先の設定を行っている。したがって、カウンタは56kバイトに設定され、転送先は受信バッファ♯1が設定される。
次に、DMAコントローラ562は、スイッチ566をクローズ状態にし、ゲート564を開く(S107)。これにより、ヘッダに続くデータ部が、SDRAMの設定された転送先へ転送される。この転送時、カウンタは、通過したデータをカウントしている。そして、設定されたカウント分のデータ転送が完了した後(S108)、DMAコントローラ562はCPUへ割り込みを発生し、割り込み待ち後、再度ステップ101からの処理を行う。
印刷データがSDRAM69へDMA転送された場合、後述するように、CPU54によって受信バッファの印刷データがイメージバッファへヘッド駆動データとして置き換えられ、ヘッド制御ユニット64によって印刷ヘッドへヘッド駆動データが送信される。一方、コマンドデータがSDRAM69へDMA転送された場合、CPU54がそのコマンドデータを読み出して、コマンドデータに従ってSPC複合装置1を処理する。例えば、コマンドデータが問い合わせ情報である場合、CPU54は、コマンドデータの発信元に対して、SPC複合装置1の状況(例えば、「印刷待機中」など)を示すステータスデータを送信する。
ところで、仮に、外部のコンピュータから送られてきたデータ(ヘッダを含む)を全てSDRAMへ一旦記憶させ、その後にCPU52がSDRAM69に記憶されたヘッダの情報を読み込むとすると、CPU52がヘッダの情報を取得するまでに時間がかかる。なぜなら、この場合、USB制御ユニット56がSDRAM69へヘッダの情報を書き込む時間、その書き込みの後にCPU52がCPUインターフェイスユニット66へヘッダの情報を読み出す指令を出す時間、CPUインターフェイスユニット66がSDRAM69からヘッダの情報を読み出す時間等がかかるからである。
本実施形態によれば、DMAバッファ565に蓄積されたヘッダの情報をCPU52が取得しているので、CPU52がヘッダの情報を取得する時間が短縮する。
また、本実施形態によれば、ヘッダに続くデータ部をCPU52が読み出す時間も短縮できる。これにより、例えば、外部のコンピュータが印刷データを送信したとき、印刷開始時間を早めることができる。仮に、外部のコンピュータから送られてきたデータ(ヘッダを含む)を全てSDRAMへ一旦記憶させた場合、まず、CPU52は、送られてきたデータのヘッダの情報を取得し、データ部がコマンドデータではなく印刷データであることをCPU52が認識した後、CPU52は、再度印刷データを読み出さなければならない。そして、これらの重複する処理は、いずれもCPUインターフェイスユニット66やSDRAMコントローラを介する処理なので、時間がかかるので、印刷開始が遅れてしまう。一方、本実施形態によれば、DMAバッファに蓄積されたヘッダの情報をCPU52が取得し、CPU52は、その情報に基づいて、データ部の転送先を設定している。このとき、CPU52は、既に、データ部が印刷データであることと、その転送先(アドレス)とを取得している。そのため、CPU52の次の処理は、SDRAM69から印刷データを読み出すだけでよい。
なお、本実施形態によれば、ヘッダに続くデータ部がコマンドデータの場合、例えば、外部のコンピュータがプリンタのステータスを問い合わせた場合、CPU52は、外部のコンピュータに対して素早くステータス情報を送信することができる。
また、本実施形態によれば、8バースト転送にて、DMAコントローラ562からSDRAM69へデータが転送される。これにより、外部から受信したデータを素早くSDRAM69へ記憶することができる。
<SDRAM内のデータの置き換え(受信バッファからイメージバッファへ)>
外部のコンピュータから受信した印刷データは、SDRAMの受信バッファに記憶される。本実施形態では、この印刷データは、色変換処理や2値化処理等を終えたヘッド駆動データである。但し、データが圧縮されているため、ヘッド制御ユニット64は、そのデータをそのままの状態でヘッドへ転送することができない。また、データの内容が同じヘッド駆動データであっても、データの形式が異なる場合、ヘッド制御ユニット64は、そのデータをそのままの状態でヘッドへ転送することができない。そこで、CPU52は、SDRAMの受信バッファの印刷データを演算し、ヘッド制御ユニット64がヘッドへ転送できる形式にて、SDRAMのイメージバッファにヘッド駆動データを記憶させる。
CPU54がSDRAM内のデータを演算する場合、SDRAM内のまとまった領域のデータではなく、個々のアドレスデータを必要とすることが多い(CPU54が、SDRAMに対して、ランダムアクセスしたいことが多い)。このような場合、8バースト転送を行っても、CPU54が必要とするデータは、転送されたデータのうちの一部のデータだけである。むしろ、8バースト転送を行うと、CPU54が必要とするデータを取得するまでの時間が長くなる。また、このような場合に単に4バースト転送を行っても、CPU54が必要とするデータは、転送されたデータのうちの一部のデータだけである。
例えば、CPU54が2バースト転送分のデータ(32ビット分のデータ)を必要としている場合、CPUインターフェイスユニット66がSDRAM69から4バースト転送された全データ(64ビット分のデータ)をCPU52へ送っても、そのうちの半分のデータしか使われない。この使われない分のデータの転送を待ってからCPUインターフェイスユニット66がCPU54へデータを送ったのでは、データの処理時間が長くなってしまう。
そこで、本実施形態では、以下のように、CPUインターフェイスユニット66は、CPU54との間でデータを受け渡している。
図15は、CPUインターフェイスやSDRAMコントローラ等の信号の受け渡しの説明図である。
CLKは、CPU側のクロックである。本実施形態では、CPU側のクロックの周波数は、SDRAM側のクロックの周波数の半分である。DT信号は、CPUインターフェイスユニット66とCPU54との間のデータ線に流れるデータ信号である。REQ信号は、CPUインターフェイスユニット66からSDRAMコントローラ68へ送られる要求信号である。ACK信号は、SDRAMコントローラからCPUインターフェイスユニット66へ送られるACK信号である。REQ信号(要求信号)及びACK信号については、図12Aにおいて説明した。
XWAIT信号は、CPUインターフェイスユニット66がCPU54に送る信号である。XWAIT信号がLレベルのとき、CPUインターフェイスユニット66がSDRAMから読み出したデータをCPU54は読み出すことができない(待機状態)。XWAIT信号がLレベルからHレベルへ立ち上がってから1クロック後、CPU54は、CPUインターフェイスユニット66が読み出したデータを利用することができる。
DT信号とXWAIT信号は、CPU54とCPUインターフェイスとの間で受け渡される(CPUバスを使う)信号である。REQ信号とACK信号は、CPUインターフェイスユニット66とSDRAMコントローラ68との間で受け渡される信号である。なお、図中の「クロック」・「コマンド」・「アドレス」・「データ」は、既に説明された通り、SDRAMコントローラ68とSDRAM69との間で受け渡される信号である。
本実施形態では、CPUインターフェイスユニット66は、SDRAMコントローラ68からACK信号を受けた後、1クロック後にXWAIT信号をLレベルからHレベルへ立ち上げている。このため、CPU54は、CPUコントローラ66がACK信号を受けてから2クロック後に、CPUインターフェイスユニット66が読み出したデータを利用することができる。一方、CPUインターフェイスユニット66は、XWAIT信号が立ち上がったとき、未だSDRAMコントローラ68から4バースト分の全てのデータを受けていない。このため、本実施形態では、4バースト転送分のデータのうちの2バースト転送分のデータ(32ビット分のデータ)をCPUインターフェイスユニット66がSDRAMコントローラから受け取ったときに、CPU54は、その2バースト転送分のデータを利用可能になる。
したがって、CPU54は、データの読み出しをCPUインターフェイスユニット66に指示してから、速やかにそのデータデータを読み出すことができる。これにより、データの処理時間を短縮することができる。
例えば、本実施形態によれば、CPU54は、SDRAM69の受信バッファの印刷データを、速やかにSDRAM69のイメージバッファにヘッド駆動データとして記憶することができる。
なお、CPU54が2バースト転送分ではなく4バースト転送分のデータを必要とする場合、CPUインターフェイスユニット66は、SDRAMコントローラ68からACK信号を受けた後1クロック後ではなく、2クロック後にXWAIT信号をLレベルからHレベルへ立ち上げる。すなわち、CPUインターフェイスユニットは、図中の待機時間Tを制御することによって、SDRAM69から読み出したデータをCPU54が利用するタイミングを制御している。
<SDRAM(イメージバッファ)から印刷ヘッドへ>
SDRAM69のイメージバッファには、ヘッド駆動データが順次記憶される。そして、書込キャリッジ36の1回の走査中に必要なヘッド駆動データがイメージバッファに蓄積されたときに、書込キャリッジ36の駆動が始まる。そして、書込キャリッジ36の移動中に、ヘッド制御ユニット64は、ヘッド駆動データを順次印刷ヘッド38へ送り出す。印刷ヘッド38は、ヘッド制御ユニット64から送られてくるヘッド駆動データに基づいて、所定のノズルからインクを吐出する。
書込キャリッジ36が一旦移動した後は、印刷ヘッド38からインクを断続的に吐出しなければならない。そのため、ヘッド制御ユニット64は、印刷ヘッド38が断続的にインクを吐出できるように、印刷ヘッド38へヘッド駆動データを送り出す必要がある。
仮に、ヘッド制御ユニット64によるヘッド駆動データの供給が間に合わないと、印刷ヘッド38は、インクを吐出すべきときに、必要なヘッド駆動データがないためインクを吐出することができなくなる。例えば、4バースト転送にて、SDRAM69のイメージバッファからヘッド制御ユニット64がヘッド駆動データを読み出すと、読み出し時間が長くなり、ヘッド駆動データの供給が間に合わないことがある。
そこで、本実施形態では、ヘッド制御ユニット64は、8バースト転送にて、SDRAM69のイメージバッファからヘッド駆動データを読み出し、ヘッド駆動データを印刷ヘッド38へ供給する。これにより、ヘッド制御ユニット64は、速やかに、SDRAM69のヘッド駆動データを印刷ヘッド38へ転送することができる。この結果、印刷ヘッド38がインクを吐出すべきとき、既に印刷ヘッド38にはヘッド駆動データが供給されている状態になる。つまり、本実施形態によれば、ヘッド制御ユニット64が8バースト転送にてヘッド駆動データを読み出すので、印刷ヘッド38へのヘッド駆動データの供給が間に合わない事態を回避することができる。
===その他の実施の形態===
上記の実施形態は、主としてSPC複合装置について記載されているが、その中には、印刷装置、印刷方法、印刷システム、プログラム、プログラムを記憶した記憶媒体、印刷物の製造方法、等の開示が含まれていることは言うまでもない。
また、一実施形態としてのSPC複合装置等を説明したが、上記の実施形態は、本発明の理解を容易にするためのものであり、本発明を限定して解釈するためのものではない。本発明は、その趣旨を逸脱することなく、変更、改良され得ると共に、本発明にはその等価物が含まれることは言うまでもない。特に、以下に述べる実施形態であっても、本発明に含まれるものである。
<DMAコントローラについて>
前述の実施形態によれば、USB制御ユニット56にDMAコントローラが設けられていた。しかし、スキャナ制御ユニット58に同様のDMAコントローラを設けても良い。そして、このDMAコントローラが、スキャナ部10から送られてくるデータを、同様の手法により、SDRAM69へDMA転送するようにしても良い。
<SPC複合装置について>
前述の実施形態では、SPC複合装置が説明されていたが、これに限られるものではない。例えば、複合装置ではなくインクジェットプリンタ単体であっても良い。また、レーザープリンタ等の他の印刷装置であっても良い。
<インクについて>
前述の実施形態は、プリンタの実施形態だったので、染料インク又は顔料インクをノズルから吐出していた。しかし、ノズルから吐出する液体は、このようなインクに限られるものではない。
<ノズルについて>
前述の実施形態では、圧電素子を用いてインクを吐出していた。しかし、液体を吐出する方式は、これに限られるものではない。例えば、熱によりノズル内に泡を発生させる方式など、他の方式を用いてもよい。
===まとめ===
(1)前述の実施形態のSPC複合装置(印刷装置)は、データを記憶するSDRAM(メモリ)と、受信したデータをSDRAMにDMA転送するためのDMAコントローラと、DMAコントローラの設定を行うCPU(処理装置)と、を備えている。
このようなSPC複合装置の構成であって、受信したデータを単にDMA転送によりSDRAMに転送したのでは、受信したデータを処理するときに、CPUは、まずデータのヘッダ部をSDRAMから読み出し、ヘッダ部の内容に応じてデータのデータ部を読み出し、このデータ部を処理することになる。しかし、これでは、CPUは、重複してSDRAMへ読み出し動作をする必要があり、受信したデータに対応する処理を開始するまで時間がかかり、SPC複合装置の処理速度が遅くなる。
そこで、本実施形態のSPC複合装置では、DMAコントローラは、受信したデータを蓄積するDMAバッファを有し、DMAコントローラはヘッダ部をDMAバッファに蓄積し、CPUは、DMAバッファに蓄積されたヘッダ部を読み出して、このヘッダ部に基づいてDMAコントローラを設定し、DMAコントローラは、設定に従って、データ部をSDRAMにDMA転送することにしている。
これにより、DMAコントローラがデータ部をDMA転送した後、CPUは、既に、データ部の種類や転送先(アドレス)に関する情報を取得している。そのため、CPUの次の処理は、SDRAMから印刷データを読み出すだけでよくなり、重複した読み出し動作が無くなり、処理速度を速くすることができる。
(2)前述の実施形態のSPC複合装置(印刷装置)は、CPU(処理装置)とDMAコントローラの間に設けられたCPUバス(第1バス)と、DMAコントローラとSDRAM(メモリ)との間に設けられたローカルバス(第2バス)と、を更に備えている。そして、CPUは、SDRAMに転送されたデータを読み出すとき、CPUインターフェイスユニットを介して、CPUバスとローカルバスとを利用している。このような構成では、CPUがSDRAMに記憶されたデータを読み出すときに時間がかかる。
しかし、本SPC複合装置は、CPUの重複する読み出し動作を無くしているので、このような構成であっても処理速度を速くすることができる。
(3)前述の実施形態のSPC複合装置(印刷装置)では、DMAコントローラは、受信したデータのデータ長を計数するカウンタを有している。そして、DMAコントローラは、カウンタの設定に基づいて、所定のデータ長のヘッダ部をDMAバッファに蓄積する。具体的には、DMAコントローラは、まずカウンタを6バイトに設定することにより、6バイトのヘッダ部をDMAバッファに蓄積している。これにより、受信したデータをSDRAMにDMA転送する前に、CPUがヘッダ部を読み出すことができる。
(4)前述の実施形態では、ヘッダ部はデータ部の長さに関するデータ長情報を有する。これにより、DMAバッファに蓄積されたヘッダ部をCPUが読み出せば、CPUは、ヘッダ部の後に続くデータ部の長さを認識することができる。そして前述の実施形態では、CPU(処理装置)は、データ長情報に基づいてカウンタを設定する。これにより、データ部の長さに応じてDMA転送するようにCPUがDMAコントローラを設定することができるので、効率よくデータ部をDMA転送することができる。
(5)前述の実施形態では、CPU(処理装置)は、転送先をDMAコントローラに設定し、DMAコントローラは、設定された転送先に従って、データ部をメモリにDMA転送する。これにより、CPUの重複する読み出し動作を減らし、処理速度を速くすることができる。
(6)前記ヘッダ部は、前記データ部の種類に関する種別情報を有する。これにより、DMAバッファに蓄積されたヘッダ部をCPUが読み出せば、CPUは、ヘッダ部の後に続くデータ部の種類を認識することができる。そして前述の実施形態では、CPU(処理装置)は、種別情報に基づいて、転送先を決定する。これにより、データの種類に応じてDMA転送するようにCPUがDMAコントローラを設定することができる。
(7)前述の実施形態のSPC複合装置(印刷装置)は、印刷データに基づいて印刷用紙(媒体)に画像を形成するものである。そして、DMAコントローラが受信するデータのデータ部には、印刷データが含まれる。これにより、SPC複合装置は、印刷データに基づく印刷処理を早く開始することができる。
(8)前述の実施形態では、印刷データは、印刷用紙(媒体)に画像を形成するときの制御情報と、画像に関する画像情報とを含んでいる。そのため、CPUが制御情報に基づいて例えばモータドライバを制御すれば、キャリッジモータ40や搬送モータ42の駆動開始を早めることができる。また、CPUは、画像情報からヘッド駆動データを生成する処理を速くすることができ、印刷開始を早めることができる。
(9)前述の実施形態では、データ部は、前記印刷装置の状況を問い合わせる問い合わせ情報を含んでいる。そして、SPC複合装置(印刷装置)は、問い合わせ情報を受信した後、問い合わせ情報の発信元にSPC複合装置のステータス情報を送信する。本実施形態によれば、問い合わせ情報を受信してからステータス情報を送信するまでの時間を短くすることができる。
(10)前述の実施形態では、データ部がSDRAM(メモリ)にDMA転送された後、CPU(処理装置)は、SDRAMにDMA転送された前記データ部を読み出している。このように、SDRAMに転送されたデータをCPUが読み出す場合に、CPUの重複する読み出し動作を回避することができるのである。
SPC印刷装置の斜視図である。 スキャナ部のカバーを開いた状態を示す斜視図である。 印刷装置の内部構成を示す説明図である。 プリンタ部の内部を露出させた状態を示す斜視図である。 操作パネル部の一例を示す図である。 印刷ヘッド周辺の構成要素配置を示す説明図である。 搬送機構の駆動部の説明図である。 ノズルの配列の説明図である。 制御回路の説明図である。 図10Aは、4バースト転送による読み出し時の動作説明図である。図10Bは、8バースト転送による読み出し時の説明図である。 4バースト転送による書き込み時の動作説明図である。図11Bは、8バースト転送による書き込み時の動作説明図である。 図12Aは、読み出し時におけるユニットとSDRAMコントローラ間での信号の受け渡しの説明図である。図12Bは、書き込み時におけるユニットとSDRAMコントローラ間での信号の受け渡しの説明図である。 図13Aは、USBコントローラがDMAコントローラへ送るデータの説明図である。図13Bは、USBコントローラから受信したデータをSDRAMの受信バッファへ記憶するときの説明図である。 DMAコントローラの動作のフロー図である。 CPUインターフェイスやSDRAMコントローラ等の信号の受け渡しの説明図である。
符号の説明
1 SPC複合装置、3 コンピュータ、5 原稿、7 印刷用紙、
10 スキャナ部、12 原稿台ガラス、14 原稿台カバー、
16 読取キャリッジ、18 駆動手段、20 規制ガイド、
22 光源、24 レンズ、26 ミラー、
28 CCDセンサ、29 ガイド受け部、
30 プリンタ部、37 搬送ローラ、38 印刷ヘッド、
40 キャリッジモータ、42 搬送モータ、
50 制御回路、52 CPU、53 ROM、54 カードインターフェイス、
501 CPUバス、502 ローカルバス、
56 USB制御ユニット、
561 USBコントローラ、562 DMAコントローラ、
564 カウンタ付ゲート、565 DMAバッファ、566 スイッチ、
58 スキャナ制御ユニット、60 2値化ユニット、
61 インターレース処理ユニット、62 イメージバッファユニット、
64 ヘッド制御ユニット、66 CPUインターフェイスユニット、
68 SDRAMコントローラ、69 SDRAM、
70 操作パネル部

Claims (12)

  1. データを記憶するメモリと、
    受信したデータを前記メモリにDMA転送するためのDMAコントローラと、
    前記DMAコントローラの設定を行う処理装置と、
    を備え、
    前記DMAコントローラが受信するデータは、ヘッダ部とデータ部とを含み、
    前記DMAコントローラは、受信したデータを蓄積するバッファを有し、
    前記DMAコントローラは、前記データのヘッダ部を前記バッファに蓄積し、
    前記処理装置は、前記バッファに蓄積された前記ヘッダ部を読み出し、
    前記処理装置は、前記ヘッダ部に基づいて、前記DMAコントローラを設定し、
    前記DMAコントローラは、設定に従って、前記データの前記データ部を前記メモリにDMA転送する
    ことを特徴とする印刷装置。
  2. 請求項1に記載の印刷装置であって、
    前記処理装置と前記DMAコントローラの間に設けられた第1バスと、
    前記DMAコントローラと前記メモリとの間に設けられた第2バスと、
    を更に備え、
    前記処理装置は、前記メモリに転送されたデータを読み出すとき、前記第1バス及び前記第2バスを利用する
    ことを特徴とする印刷装置。
  3. 請求項1又は2に記載の印刷装置であって、
    前記DMAコントローラは、受信したデータのデータ長を計数するカウンタを有し、
    カウンタの設定に基づいて、所定のデータ長の前記ヘッダ部を前記バッファに蓄積する
    ことを特徴とする印刷装置。
  4. 請求項3に記載の印刷装置であって、
    前記ヘッダ部は、前記データ部の長さに関するデータ長情報を有し、
    前記処理装置は、前記データ長情報に基づいて、前記カウンタを設定する
    ことを特徴とする印刷装置。
  5. 請求項1〜4のいずれかに記載の印刷装置であって、
    前記処理装置は、転送先を前記DMAコントローラに設定し、
    前記DMAコントローラは、設定された前記転送先に従って、前記データの前記データ部を前記メモリにDMA転送する
    ことを特徴とする印刷装置。
  6. 請求項5に記載の印刷装置であって、
    前記ヘッダ部は、前記データ部の種類に関する種別情報を有し、
    前記処理装置は、前記種別情報に基づいて、前記転送先を決定する
    ことを特徴とする印刷装置。
  7. 請求項6に記載の印刷装置であって、
    前記印刷装置は、印刷データに基づいて媒体に画像を形成するものであり、
    前記データ部は、前記印刷データを含む
    ことを特徴とする印刷装置。
  8. 請求項7に記載の印刷装置であって、
    前記印刷データは、前記媒体に前記画像を形成するときの制御情報と、前記画像に関する情報とを含むことを特徴とする印刷装置。
  9. 請求項6〜8のいずれかに記載の印刷装置であって、
    前記データ部は、前記印刷装置の状況を問い合わせる問い合わせ情報を含み、
    前記印刷装置は、前記問い合わせ情報を受信した後、前記問い合わせ情報の発信元に前記印刷装置の状況に関する情報を送信する
    ことを特徴とする印刷装置。
  10. 請求項1〜9のいずれかに記載の印刷装置であって、
    前記データ部が前記メモリにDMA転送された後、前記処理装置は、前記メモリにDMA転送された前記データ部を読み出すことを特徴とする印刷装置。
  11. データを記憶するメモリと、
    受信したデータを前記メモリにDMA転送するためのDMAコントローラと、
    前記DMAコントローラの設定を行う処理装置と、
    を備え、
    前記DMAコントローラが受信するデータは、ヘッダ部とデータ部とを含み、
    前記DMAコントローラは、受信したデータを蓄積するバッファを有し、
    前記DMAコントローラは、前記データのヘッダ部を前記バッファに蓄積し、
    前記処理装置は、前記バッファに蓄積された前記ヘッダ部を読み出し、
    前記処理装置は、前記ヘッダ部に基づいて、前記DMAコントローラを設定し、
    前記DMAコントローラは、設定に従って、前記データの前記データ部を前記メモリにDMA転送し、
    前記処理装置と前記DMAコントローラの間に設けられた第1バスと、前記DMAコントローラと前記メモリとの間に設けられた第2バスと、を更に備え、前記処理装置は、前記メモリに転送されたデータを読み出すとき、前記第1バス及び前記第2バスを利用し、
    前記DMAコントローラは、受信したデータのデータ長を計数するカウンタを有し、
    カウンタの設定に基づいて、所定のデータ長の前記ヘッダ部を前記バッファに蓄積し、
    前記ヘッダ部は、前記データ部の長さに関するデータ長情報を有し、
    前記処理装置は、前記データ長情報に基づいて、前記カウンタを設定し、
    前記処理装置は、転送先を前記DMAコントローラに設定し、
    前記DMAコントローラは、設定された前記転送先に従って、前記データの前記データ部を前記メモリにDMA転送し、
    前記ヘッダ部は、前記データ部の種類に関する種別情報を有し、
    前記処理装置は、前記種別情報に基づいて、前記転送先を決定し、
    前記印刷装置は、印刷データに基づいて媒体に画像を形成するものであり、
    前記データ部は、前記印刷データを含み、
    前記印刷データは、前記媒体に前記画像を形成するときの制御情報と、前記画像に関する情報とを含み、
    前記データ部は、前記印刷装置の状況を問い合わせる問い合わせ情報を含み、
    前記印刷装置は、前記問い合わせ情報を受信した後、前記問い合わせ情報の発信元に前記印刷装置の状況に関する情報を送信し、
    前記データ部が前記メモリにDMA転送された後、前記処理装置は、前記メモリにDMA転送された前記データ部を読み出す
    ことを特徴とする印刷装置。
  12. 受信したデータをメモリにDMA転送し、印刷を行う印刷装置であって、
    データのヘッダ部をDMAコントローラが受信し、
    受信した前記ヘッダ部を前記DMAコントローラ内のバッファが蓄積し、
    DMAコントローラを制御する処理装置が、前記バッファに蓄積された前記ヘッダ部を読み出し、
    前記処理装置が、前記ヘッダ部に基づいて、前記DMAコントローラを設定し、
    前記DMAコントローラが、設定に従って、前記データの前記データ部を前記メモリにDMA転送する
    ことを特徴とする印刷方法。

JP2004002383A 2004-01-07 2004-01-07 印刷装置及び印刷方法 Pending JP2005193543A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2004002383A JP2005193543A (ja) 2004-01-07 2004-01-07 印刷装置及び印刷方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004002383A JP2005193543A (ja) 2004-01-07 2004-01-07 印刷装置及び印刷方法

Publications (1)

Publication Number Publication Date
JP2005193543A true JP2005193543A (ja) 2005-07-21

Family

ID=34817615

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004002383A Pending JP2005193543A (ja) 2004-01-07 2004-01-07 印刷装置及び印刷方法

Country Status (1)

Country Link
JP (1) JP2005193543A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007228227A (ja) * 2006-02-23 2007-09-06 Fujitsu Ltd 通信装置
KR100933698B1 (ko) 2007-02-27 2009-12-24 세이코 엡슨 가부시키가이샤 프린터 및 그 제어 방법

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007228227A (ja) * 2006-02-23 2007-09-06 Fujitsu Ltd 通信装置
KR100933698B1 (ko) 2007-02-27 2009-12-24 세이코 엡슨 가부시키가이샤 프린터 및 그 제어 방법

Similar Documents

Publication Publication Date Title
US20050007404A1 (en) Printing apparatus comprising scanner and adjustment method therefor
US7463370B2 (en) Recording apparatus
JP4631278B2 (ja) 印刷装置及び印刷方法
US7532350B2 (en) Printing method and printing apparatus
JP2005193543A (ja) 印刷装置及び印刷方法
JP4439207B2 (ja) 画像形成方法および装置
JP4775500B2 (ja) 印刷方法、印刷装置及びプログラム
JP4321032B2 (ja) 印刷装置、印刷方法、プログラムおよびコンピュータシステム
JP2004142435A (ja) 印刷装置、印刷方法、プログラムおよび印刷システム
JP4586930B2 (ja) 印刷方法、印刷装置及びプログラム
JP4360079B2 (ja) 印刷装置、印刷方法、コンピュータシステム、およびコンピュータプログラム
JP2002321342A (ja) プリント装置
JP4760990B2 (ja) 印刷方法、印刷装置及びプログラム
JP4348926B2 (ja) 記録装置、コンピュータシステム、及び、記録方法
JP4457616B2 (ja) 印刷装置、印刷方法及び印刷システム
JP2004082488A (ja) 印刷制御装置、印刷方法、プログラム及びコンピュータシステム
JP2004126957A (ja) 吐出装置、この装置におけるメモリ管理方法、この装置で実行されるプログラム、およびコンピュータシステム
JP4582240B2 (ja) 印刷方法、印刷装置及びプログラム
JP2004127033A (ja) 記録装置、コンピュータシステム、及び、記録方法
JP2010099921A (ja) プリンタ
JP2004128895A (ja) 記録装置、及び記録装置の制御方法
JP4151552B2 (ja) 記録装置
JP2006190035A (ja) コンピュータ装置および印刷装置
JP2004155102A (ja) 印刷装置およびこの装置で実行されるプログラム並びに印刷方法
JP2004127032A (ja) 記録装置、コンピュータシステム、及び、記録方法

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20081104

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20081204

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20090428