JP2003196041A - Printer, data transfer device and method - Google Patents

Printer, data transfer device and method

Info

Publication number
JP2003196041A
JP2003196041A JP2001399801A JP2001399801A JP2003196041A JP 2003196041 A JP2003196041 A JP 2003196041A JP 2001399801 A JP2001399801 A JP 2001399801A JP 2001399801 A JP2001399801 A JP 2001399801A JP 2003196041 A JP2003196041 A JP 2003196041A
Authority
JP
Japan
Prior art keywords
data
bit width
unit
bits
predetermined
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
JP2001399801A
Other languages
Japanese (ja)
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 JP2001399801A priority Critical patent/JP2003196041A/en
Publication of JP2003196041A publication Critical patent/JP2003196041A/en
Pending legal-status Critical Current

Links

Landscapes

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

Abstract

<P>PROBLEM TO BE SOLVED: To provide a technology for transferring data in a bus width in a system even if there is a difference between a bit width of a bus for constituting the system and the bit number of a minimum unit of the data treated by a transmitter. <P>SOLUTION: An FIFO buffer 12C is constituted by using respectively independent four RAM modules 12C1, 12C2, 12C3, and 12C4 of an 8-bit width to a data bus of a 32-bit width, and the bus width is converted via a data bus selector. For example, since access can be simultaneously made to 4 bites (an oblique line part) with a third bit as the forefront from a start of reception, even if the minimum unit of the data treated by the transmitter is 8 bits, the data can be transferred in the 32-bit width of the data bus. <P>COPYRIGHT: (C)2003,JPO

Description

【発明の詳細な説明】Detailed Description of the Invention

【0001】[0001]

【発明の属する技術分野】本発明は、データ転送技術に
関し、例えば、プリンタがホストコンピュータからデー
タを受信して印刷を行うまでのデータフローの中で効率
的にデータ転送を行う技術に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a data transfer technique, for example, a technique for efficiently transferring data in a data flow from a printer receiving data from a host computer to printing.

【0002】[0002]

【従来の技術】プリンタがホストコンピュータからデー
タを受信し、印刷データを生成して印刷を行うまでのデ
ータフローにおいて、データを受信してから印刷データ
を生成するまでの過程で送信元のデータを受信側でコピ
ーを行う場合がある。このような場合、データ転送を効
率よく行う為に、CPUに依らず、いわゆるダイレクト
メモリーアクセス(以下、DMAと呼ぶ)を用いる場合
がある。DMAによる転送では転送元から読み出しを行
ってそのデータを書き込むという2サイクルの転送では
なく、転送元に出力させたデータを受信側が直接取り込
む1サイクルの転送の方が効率がよい。例えば、ホスト
コンピュータからの受信データのように、送信元が送信
を行う最小単位が8ビットである場合、一般的に8ビッ
トの単位で2サイクルあるいは1サイクルのDMAで転
送を行う。このような転送が発生する顕著な例が、ホス
トコンピュータから受信したデータをプリンタの記憶装
置に転送する場合である。
2. Description of the Related Art In a data flow in which a printer receives data from a host computer, generates print data, and prints data, the data of the transmission source is transmitted in the process from receiving data to generating print data. Copying may be performed on the receiving side. In such a case, so-called direct memory access (hereinafter referred to as DMA) may be used regardless of the CPU in order to efficiently perform data transfer. In the transfer by DMA, the one-cycle transfer in which the data output to the transfer source is directly taken in by the receiving side is more efficient than the two-cycle transfer in which the data is read from the transfer source and the data is written. For example, when the minimum unit for transmission by the transmission source is 8 bits as in the case of data received from the host computer, generally, transfer is performed by 2-cycle or 1-cycle DMA in 8-bit units. A prominent example of such a transfer occurs when the data received from the host computer is transferred to the storage device of the printer.

【0003】[0003]

【発明が解決しようとする課題】プリンタを構成するシ
ステムにおけるバス幅が、例えば32ビットである場合
には、データの移動を効率的に行う為に32ビット幅で
転送を行う必要がある。一方の側で扱うデータの最小単
位が8ビットである為、仮に送信元が送信開始から4バ
イトずつを32ビット幅で出力したとしても、例えば、
その中の1バイトがコピーされず制御データとして処理
され、その次のバイトから再びコピーの必要が発生した
場合、送信側の送信開始からの4バイトと受信側の受信
開始からの4バイトでは食い違いが発生してしまう。従
って、この場合には32ビット幅での転送ができなくな
るという問題があった。
When the bus width in the system that constitutes the printer is, for example, 32 bits, it is necessary to transfer the data in a 32-bit width in order to efficiently move the data. Since the minimum unit of data handled on one side is 8 bits, even if the transmission source outputs 4 bytes each with a 32-bit width from the start of transmission, for example,
If one byte is not copied and is processed as control data, and it is necessary to copy again from the next byte, there is a discrepancy between 4 bytes from the transmission start of the sending side and 4 bytes from the reception start of the receiving side. Will occur. Therefore, in this case, there is a problem that the transfer with a 32-bit width cannot be performed.

【0004】本発明の目的は、システムを構成するバス
のビット幅と送信元が扱うデータの最小単位のビット数
とに食い違いがあっても、システムにおけるバス幅で転
送が行える為の技術を提供することにある。
An object of the present invention is to provide a technique for enabling transfer with the bus width in the system even if there is a discrepancy between the bit width of the bus that constitutes the system and the minimum number of bits of data handled by the transmission source. To do.

【0005】[0005]

【課題を解決するための手段】インターフェイス送受信
モジュールに受信データFIFO、送信データFIFO
を構成する場合、FIFOをRAMモジュールでなくフ
リップフロップを用いても実現できるがゲート規模が大
きくなる為、RAMを用いる方が一般的である。その場
合、例えばシステムのバス幅が32ビットであれば32
ビット幅のRAMモジュールでFIFOを構成するのが
一般的であるが、上記課題を解決するために、本発明で
は8ビット幅の独立したRAMモジュールを4つ用いて
バスセレクタを介してバス幅変換を実現できるようにし
た。
[MEANS FOR SOLVING THE PROBLEMS] A reception data FIFO and a transmission data FIFO are provided in an interface transmission / reception module.
In the case of configuring, the FIFO can be realized by using a flip-flop instead of the RAM module, but since the gate scale becomes large, it is general to use the RAM. In that case, for example, if the bus width of the system is 32 bits, 32
Although it is general to construct a FIFO with a bit width RAM module, in order to solve the above problem, the present invention uses four 8-bit width independent RAM modules to convert the bus width via a bus selector. Was made possible.

【0006】32ビット幅のRAMを用いると例えば受
信の場合、RAMモジュールの一回の読み出しでは必ず
受信開始から4バイトずつのデータが32ビットとなっ
て出力される為、例えば受信開始から3バイト目を先頭
とする4バイトつまり3、4、5、6バイトを32ビッ
トバスに出力させる為にはインターフェイスRAMモジ
ュールをアドレスを変えて2回読み出さなければなら
ず、読み出しタイミングに間に合わなくなる。
When a RAM having a 32-bit width is used, for example, in the case of reception, one read of the RAM module always outputs data of 4 bytes each as 32 bits from the start of reception, so that, for example, 3 bytes from the start of reception. In order to output 4 bytes starting from the eye, that is, 3, 4, 5, and 6 bytes to the 32-bit bus, the interface RAM module must be read twice by changing the address, and the read timing cannot be met.

【0007】送信FIFOも同様で送信データが既に1
バイト送信FIFO用RAMモジュールに存在した状態
で32ビットの幅で送信FIFOに書き込む場合32ビ
ットRAMを用いた場合はRAMモジュールへの書き込
みがアドレスを変えて2回に分けて行う必要が有るが、
8ビットRAMを4つ用いることでこれを解決すること
が出来る。これにデータバスセレクタを設けることで上
記課題を解決できる。
Similarly to the transmission FIFO, the transmission data is already 1
When writing to the transmission FIFO with a width of 32 bits while existing in the RAM module for byte transmission FIFO When using a 32-bit RAM, it is necessary to write to the RAM module in two steps by changing the address.
This can be solved by using four 8-bit RAMs. The above problem can be solved by providing a data bus selector to this.

【0008】しかして、本発明の第1の様相によれば、
ホストからの所定のビット数(Nビット)単位のデータ
を受信するインタフェース部と、前記ホストから受信し
たデータに基づいて所定の印刷処理を行う印刷部とを備
えるプリンタにおいて、前記ホストから受信した所定の
ビット数(Nビット)単位のデータを前記インタフェー
ス部内に保存する第1のデータ保存手段と、前記第1の
データ保存手段に保存されたデータを所定のビット幅
(Mビット幅)で前記印刷部に転送する転送手段と、前
記転送手段により前記所定のビット幅(Mビット幅)で
転送されるデータを前記印刷部内に保存する第2のデー
タ保存手段とを備え、前記第1のデータ保存手段を、前
記Nビットの幅のそれぞれ独立したM/N個のメモリモ
ジュールを用いて構成したことを特徴とするプリンタが
得られる。
According to the first aspect of the present invention, however,
In a printer including an interface unit that receives data in units of a predetermined number of bits (N bits) from a host and a printing unit that performs a predetermined printing process based on the data received from the host, the predetermined unit received from the host First data storage means for storing data in units of the number of bits (N bits) in the interface section, and the data stored in the first data storage means with the predetermined bit width (M bit width). And a second data storage unit for storing the data transferred by the transfer unit with the predetermined bit width (M bit width) in the printing unit, the first data storage unit. A printer is obtained in which the means is configured by using M / N memory modules each having the N-bit width and independent of each other.

【0009】ここに、前記転送手段は、転送制御手段及
び前記所定のビット幅(Mビット幅)のバスから成るよ
うにしてもよい。
Here, the transfer means may include a transfer control means and a bus having the predetermined bit width (M bit width).

【0010】また、前記転送手段は、CPU及び/又は
DMAコントローラから成るようにしてもよい。
The transfer means may be composed of a CPU and / or a DMA controller.

【0011】また、前記転送手段は、更に、前記第1の
データ保存手段に保存されたデータを前記所定のビット
数(Nビット)単位で前記所定のビット幅(Mビット
幅)のバスに割り当てて前記第2のデータ保存手段に転
送するためのバスセレクタを含んでもよい。
Further, the transfer means further allocates the data stored in the first data storage means to the bus having the predetermined bit width (M bit width) in units of the predetermined number of bits (N bits). And a bus selector for transferring to the second data storage means.

【0012】更に、前記第1のデータ保存手段は、先入
れ先出し(FIFO)バッファにより構成することもで
きる。
Further, the first data storage means may be composed of a first-in first-out (FIFO) buffer.

【0013】尚、前記所定のビット幅(Mビット幅)に
割り当てられたデータが前記第1のデータ保存手段から
前記第2のデータ保存手段にDMA転送されるようにし
てもよい。
The data allocated to the predetermined bit width (M bit width) may be DMA-transferred from the first data storage means to the second data storage means.

【0014】一方、本発明の第2の様相によれば、転送
されてきた所定のビット数(Nビット)単位のデータを
受信し、所定の受信処理を行う受信部と、該受信部によ
り所定の受信処理が行われたデータが出力される出力部
とを有するデータ転送装置であって、前記受信した所定
のビット数(Nビット)単位のデータを保存する第1の
データ保存手段と、前記第1のデータ保存手段に保存さ
れたデータを所定のビット幅(Mビット幅)で前記出力
部に転送する転送手段と、前記転送手段により前記所定
のビット幅(Mビット幅)で転送されるデータを保存す
る第2のデータ保存手段とを備え、前記第1のデータ保
存手段を、前記Nビットの幅のそれぞれ独立したM/N
個のメモリモジュールを用いて構成したことを特徴とす
るデータ転送装置が得られる。
On the other hand, according to the second aspect of the present invention, a receiving section for receiving the transferred data of a predetermined number of bits (N bits) and performing a predetermined receiving process, and a predetermined section by the receiving section. A data transfer device for outputting the data subjected to the reception process of 1., the first data storage means for storing the received data of a predetermined bit number (N bits) unit; Transfer means for transferring the data stored in the first data storage means to the output unit with a predetermined bit width (M bit width), and transfer with the predetermined bit width (M bit width) by the transfer means. A second data storage means for storing data, wherein the first data storage means is provided with an independent M / N of the N-bit width.
There is obtained a data transfer device characterized by being configured using a plurality of memory modules.

【0015】ここで、前記転送手段は、前記所定のビッ
ト幅(Mビット幅)のバスと、前記第1のデータ保存手
段に保存されたデータを前記所定のビット数(Nビッ
ト)単位で前記所定のビット幅(Mビット幅)のバスに
割り当てて前記第2のデータ保存手段に転送するための
バスセレクタとを含んでもよい。
Here, the transfer means stores the bus having the predetermined bit width (M bit width) and the data stored in the first data storage means in units of the predetermined number of bits (N bits). A bus selector for allocating to a bus having a predetermined bit width (M bit width) and transferring the bus to the second data storage means may be included.

【0016】また一方、本発明の第3の様相によれば、
転送されてきた所定のビット数(Nビット)単位のデー
タを受信し、所定の受信処理を行う受信部と、該受信部
により所定の受信処理が行われたデータが所定のビット
幅(Mビット幅)で出力される出力部とを有するシステ
ムにおけるデータ転送方法であって、前記受信したNビ
ット単位のデータをそれぞれ独立したM/N個のメモリ
モジュールに前記Mビット幅で保存する第1のデータ保
存ステップと、前記第1のデータ保存ステップにより保
存されたデータを前記Mビット幅のバスを介して前記出
力部に転送する転送ステップと、前記転送ステップによ
り前記Mビット幅で転送されるデータを前記Mビット幅
で保存する第2のデータ保存ステップと、前記第1のデ
ータ保存ステップにより保存されたデータを前記Nビッ
ト単位で前記Mビット幅のバスに割り当てるためのバス
選択ステップとを有することを特徴とするデータ転送方
法が得られる。
On the other hand, according to the third aspect of the present invention,
The receiving unit that receives the transferred data of a predetermined number of bits (N bits) and performs a predetermined receiving process, and the data that has been subjected to the predetermined receiving process by the receiving unit have a predetermined bit width (M bits). A data transfer method in a system having an output unit for outputting in a width), wherein the received N-bit unit data is stored in M / N memory modules independent of each other with the M-bit width. A data storage step, a transfer step of transferring the data stored in the first data storage step to the output unit via the M-bit width bus, and data transferred in the M-bit width by the transfer step. Is stored in the M bit width, and the data stored in the first data storing step is stored in the M bit unit in the M bit unit. Data transfer method and having a bus selection step for assigning the bus-wide is obtained.

【0017】[0017]

【発明の実施の形態】以下、図面を参照して、本発明の
実施形態について説明する。図1は、本発明の第1の実
施形態にかかるプリンタ200の全体構成を示すブロッ
ク図である。
BEST MODE FOR CARRYING OUT THE INVENTION Embodiments of the present invention will be described below with reference to the drawings. FIG. 1 is a block diagram showing the overall configuration of a printer 200 according to the first embodiment of the present invention.

【0018】図示のプリンタ200は、プリンタコント
ローラ10とプリントエンジン20とから構成されてい
る。プリンタコントローラ10は、ホストコンピュータ
100からの印刷データ等を受信するインターフェース
(以下「ホストI/F」という)11と、プリンタ20
0に入力された印刷データを一時的に蓄えておくための
入力バッファ12A、入力バッファ12Aに蓄えられた
印刷データが解釈され印刷用イメージデータとして展開
される出力(イメージ)バッファ12B、各種データ処
理のためのルーチン等を記憶したROM13と、CPU
14と、プリント(印字)ヘッド22側へヘッドデータ
等を送り出すための印字制御回路や各種のモータドライ
バ等を含む特定用途向半導体集積回路(Applied
Semiconductor Integrated
Circuit、以下、「ASIC」という)から成
る印字制御ASIC15と、イメージデータ及び駆動信
号等をプリントエンジン20に送信するためのインター
フェース(以下「メカI/F」という)16とを備えて
いる。ホストI/F11、入力バッファ12A、出力
(イメージ)バッファ12B、ROM13、CPU1
4、印字制御ASIC15、メカI/F16等は、バス
17により相互に接続されている。
The illustrated printer 200 comprises a printer controller 10 and a print engine 20. The printer controller 10 includes an interface (hereinafter referred to as “host I / F”) 11 that receives print data and the like from the host computer 100, and a printer 20.
An input buffer 12A for temporarily storing print data input to 0, an output (image) buffer 12B for interpreting the print data stored in the input buffer 12A and developing it as image data for printing, various data processing ROM 13 storing routines for CPU and CPU
14 and a semiconductor integrated circuit (Applied) for a specific application including a print control circuit for sending head data and the like to the print head 22 side, various motor drivers, and the like.
Semiconductor integrated
A print control ASIC 15 including a circuit, hereinafter referred to as “ASIC”, and an interface (hereinafter referred to as “mechanical I / F”) 16 for transmitting image data, drive signals, and the like to the print engine 20. Host I / F 11, input buffer 12A, output (image) buffer 12B, ROM 13, CPU 1
4, the print control ASIC 15, the mechanical I / F 16 and the like are connected to each other by a bus 17.

【0019】ホストI/F11は、後述するインターフ
ェース制御部内で、ホストコンピュータ100との間の
送受信のためにデータを一時的に蓄えるFIFOバッフ
ァ12Cと、データバスセレクタ11aとを備えてい
る。ホストI/F11は、そのFIFOバッファ12C
内にホストコンピュータ100からの印刷コマンド乃至
データを受信する。入力バッファ12Aは、ホストI/
F11内のFIFOバッファ12Cが受信した印刷デー
タ等が一時的に記憶される。出力(イメージ)バッファ
12Bには、印刷コマンド乃至データを解析した後の、
例えば、ラスタグラフィックス形式のイメージデータが
展開される。ROM13は、CPU14等によって実行
される各種制御プログラム等を記憶している。また、R
OM13は、図示しないフォントデータ及びグラフィッ
ク関数、各種手続き等も記憶している。CPU14は、
本実施形態のプリンタ200における各種制御の中心的
役割を担うものであり、本実施形態では、その内部にD
MAコントローラ14aを備えている。
The host I / F 11 includes a FIFO buffer 12C for temporarily storing data for transmission / reception with the host computer 100 and a data bus selector 11a in an interface control unit described later. The host I / F 11 has its FIFO buffer 12C.
A print command or data is received from the host computer 100. The input buffer 12A is a host I /
The print data received by the FIFO buffer 12C in the F11 is temporarily stored. In the output (image) buffer 12B, after analyzing the print command or data,
For example, raster graphics format image data is developed. The ROM 13 stores various control programs executed by the CPU 14 and the like. Also, R
The OM 13 also stores font data and graphic functions (not shown), various procedures, and the like. CPU14
It plays a central role in various controls in the printer 200 of the present embodiment.
The MA controller 14a is provided.

【0020】プリントエンジン20は、印字ヘッド22
と、キャリッジ機構24と、紙送り機構26とを備えて
いる。紙送り機構26は、紙送りモータ及び紙送りロー
ラ等からなり、記録紙等の印刷記憶媒体を順次送りだし
て副走査を行うものである。キャリッジ機構24は、印
字ヘッド22を搭載するキャリッジと、該キャリッジを
タイミングベルト等を介して走行させるキャリッジモー
タ等からなり、印字ヘッド22を主走査させるものであ
る。印字ヘッド22は、副走査方向に、例えば96個の
多数のノズルから成る各色毎のインクジェットノズル列
を有し、所定のタイミングで各ノズルからインク滴を吐
出させる。
The print engine 20 includes a print head 22.
A carriage mechanism 24 and a paper feed mechanism 26. The paper feed mechanism 26 includes a paper feed motor, a paper feed roller, and the like, and sequentially feeds a print storage medium such as recording paper to perform sub scanning. The carriage mechanism 24 includes a carriage on which the print head 22 is mounted and a carriage motor that runs the carriage via a timing belt or the like, and causes the print head 22 to perform main scanning. The print head 22 has an inkjet nozzle row for each color, which is composed of a large number of 96 nozzles, for example, in the sub-scanning direction, and ejects ink droplets from each nozzle at a predetermined timing.

【0021】図2は、ホストコンピュータ100と本実
施形態のプリンタ200とを接続してなる一般的な印刷
システムを示す。図示しないイメージスキャナ等を介し
てホストコンピュータ100に取り込まれたグラフィッ
クスデータは、図2に示すように、ホストコンピュータ
100上のプリンタドライバ102によりプリンタ20
0が解釈可能なデータ(制御コマンド及び印刷データ)
に変換される。この変換されたデータは、ホストコンピ
ュータ100上のオペレーティングシステム(以下、O
Sという)104が管理しながらホストコンピュータ1
00のインタフェース部(以下、I/F部という)10
6から接続ケーブル115を介してプリンタ200に送
られる。
FIG. 2 shows a general printing system in which the host computer 100 and the printer 200 of this embodiment are connected. The graphics data captured by the host computer 100 via an image scanner (not shown) is transferred to the printer 20 by the printer driver 102 on the host computer 100 as shown in FIG.
Data that can be interpreted as 0 (control command and print data)
Is converted to. The converted data is stored in the operating system (hereinafter, referred to as “O”) on the host computer 100.
Host computer 1 managed by S) 104
00 interface unit (hereinafter referred to as I / F unit) 10
6 to the printer 200 via the connection cable 115.

【0022】プリンタ200では、まず、そのインタフ
ェース制御部(以下、I/F制御部という)220内の
データ受信部222が受信し、印刷部230の受信バッ
ファメモリ部231に蓄積された後、その制御コマンド
及び印刷データがコマンド解釈部233により解釈され
て、イメージデータ展開部235にて印刷用イメージデ
ータに展開され、印刷処理実行部237により印刷が実
行される。尚、プリンタステータス等のプリンタの状態
は、印刷部230内の状態確認部239によりリアルタ
イムに管理されており、I/F制御部220内のデータ
送信部224を介してホストとしてのホストコンピュー
タ100に伝達される。I/F制御部220(データ受
信部222及びデータ送信部224)は、主として、F
IFOバッファ12C及びデータバスセレクタ11aの
他、図示しないコネクタ及びトランシーバ等を含むホス
トI/F11、並びにCPU14から構成される。印刷
部230内の受信バッファメモリ部231は、主とし
て、入力バッファ12A及びCPU14から構成され
る。また、コマンド解釈部233は、主として、CPU
14及びこのCPU14によって実行されるROM13
内に格納されたコマンド解釈プログラム等から構成され
る。イメージデータ展開部235は、主として、CPU
14及び出力(イメージ)バッファ12B等から構成さ
れる。印刷処理実行部237は、主として、プリンタコ
ントローラ10内のCPU14、印字制御ASIC15
及びメカI/F16、並びに、プリントエンジン20内
の印字ヘッド22、キャリッジ機構24及び紙送り機構
26等から構成される。状態確認部239は、CPU1
4及びこのCPU14によって実行されるROM13内
に格納されたプリンタステータス送信等の制御プログラ
ム等から構成される。
In the printer 200, first, the data receiving section 222 in the interface control section (hereinafter referred to as the I / F control section) 220 receives the data, the data is stored in the reception buffer memory section 231 of the printing section 230, and then the data is received. The command interpreting unit 233 interprets the control command and the print data, the image data developing unit 235 develops the image data for printing, and the print processing execution unit 237 executes printing. The status of the printer such as the printer status is managed in real time by the status confirmation unit 239 in the printing unit 230, and is transferred to the host computer 100 as a host via the data transmission unit 224 in the I / F control unit 220. Transmitted. The I / F control unit 220 (the data receiving unit 222 and the data transmitting unit 224) mainly uses the F
In addition to the IFO buffer 12C and the data bus selector 11a, the host I / F 11 including a connector and a transceiver (not shown) and the CPU 14 are included. The reception buffer memory unit 231 in the printing unit 230 mainly includes the input buffer 12A and the CPU 14. The command interpreting unit 233 is mainly composed of a CPU.
14 and ROM 13 executed by the CPU 14
It is composed of a command interpreting program stored in. The image data expansion unit 235 is mainly composed of a CPU.
14 and an output (image) buffer 12B. The print processing execution unit 237 mainly includes the CPU 14 and the print control ASIC 15 in the printer controller 10.
And a mechanical I / F 16, a print head 22 in the print engine 20, a carriage mechanism 24, a paper feed mechanism 26, and the like. The state confirmation unit 239 is the CPU 1
4 and a control program executed by the CPU 14 and stored in the ROM 13 for printer status transmission and the like.

【0023】図3は、上記実施形態において、バス17
を介してI/F制御部220内のFIFOバッファ12
Cと入力バッファ12Aの間でデータが転送される様子
を説明するための図である。図3に示すように、本実施
形態におけるI/F制御部220は、データバス173
に対する直接の窓口となるFIFOバッファ12Cに加
え、データバスセレクタ11aを備えている。このデー
タバスセレクタ11aは、入力バッファ12AとFIF
Oバッファ12Cとの間に介在し、FIFOバッファ1
2Cの先入れ先出し制御を行なうことにより、例えば1
バイト毎に接続先を変更させる機能ブロックである。
FIG. 3 shows the bus 17 in the above embodiment.
Via the I / F control unit 220 via the FIFO buffer 12
FIG. 6 is a diagram for explaining how data is transferred between C and an input buffer 12A. As shown in FIG. 3, the I / F control unit 220 according to the present embodiment uses the data bus 173.
In addition to the FIFO buffer 12C serving as a direct contact point for the data bus selector, the data bus selector 11a is provided. The data bus selector 11a includes an input buffer 12A and a FIF.
FIFO buffer 1 is provided between O buffer 12C and
By performing the first-in first-out control of 2C, for example, 1
It is a functional block that changes the connection destination for each byte.

【0024】また、バス17は、アドレスバス171及
びコントロールバス172も備えている。
The bus 17 also includes an address bus 171 and a control bus 172.

【0025】図4は、上記要素を備えて構成されるプリ
ンタ200において、どのようにデータが転送されてい
くかについて説明するための図である。図4(a)は、
FIFOバッファ12C´を32ビット幅のRAMモジ
ュール1個で構成する場合、図4(b)は、FIFOバ
ッファ12Cを8ビット幅のそれぞれ独立した4つのR
AMモジュール12C1、12C2、12C3、12C
4を用いて構成する場合、をそれぞれ示す。
FIG. 4 is a diagram for explaining how data is transferred in the printer 200 having the above elements. Figure 4 (a)
When the FIFO buffer 12C ′ is composed of one RAM module having a 32-bit width, FIG. 4B shows that the FIFO buffer 12C has four 8-bit width independent Rs.
AM modules 12C1, 12C2, 12C3, 12C
In the case of the configuration using 4, the following are respectively shown.

【0026】I/F制御部220内にデータ受信用のF
IFOバッファをRAMモジュールを用いて構成する場
合、例えば、システムのバス幅、ここでは、プリンタコ
ントローラ10内のバス17(データバス173)(図
1及び図2をも参照)が32ビット幅であれば、従来
は、図4(a)に示すように、32ビット幅のRAMモ
ジュール1個でFIFOバッファ12C´を構成するの
が一般的であるが、本実施形態では、図4(b)に示す
ように、8ビット幅のそれぞれ独立した4つのRAMモ
ジュール12C1、12C2、12C3、12C4を用
いてFIFOバッファ12Cを構成し、図3に示したデ
ータバスセレクタ11aを介してバス幅変換を実現でき
るようにした。
An F for data reception is provided in the I / F control unit 220.
When the IFO buffer is configured using a RAM module, for example, if the bus width of the system, here, the bus 17 (data bus 173) in the printer controller 10 (see also FIGS. 1 and 2) is 32 bits wide. For example, conventionally, as shown in FIG. 4A, it is general to configure the FIFO buffer 12C ′ with one RAM module having a 32-bit width, but in the present embodiment, as shown in FIG. As shown, the FIFO buffer 12C is configured by using four RAM modules 12C1, 12C2, 12C3, 12C4 each having an 8-bit width, and the bus width conversion can be realized via the data bus selector 11a shown in FIG. I did it.

【0027】即ち、図4(a)に示したように、32ビ
ット幅のRAMを用いると、例えば受信の場合、RAM
モジュールの一回の読み出しでは必ず受信開始から4バ
イトずつのデータが32ビットとなって出力されるた
め、例えば、受信開始から3バイト目を先頭とする4バ
イト、即ち、#3、#4、#5、#6バイトを32ビッ
ト幅のデータバス173に出力させる為には、図5
(a)と(b)に示すように、インターフェイスRAM
モジュール(FIFOバッファ12C´)をアドレスを
変えて2回読み出さなければならず、読み出しタイミン
グに間に合わなくなるという問題を生じる。
That is, as shown in FIG. 4A, if a 32-bit width RAM is used, for example, in the case of reception, the RAM
Since data of 4 bytes each from the start of reception is always output as 32 bits in one read of the module, for example, 4 bytes starting from the 3rd byte from the start of reception, that is, # 3, # 4, To output the # 5 and # 6 bytes to the data bus 173 having a width of 32 bits, refer to FIG.
As shown in (a) and (b), the interface RAM
The module (FIFO buffer 12C ') must be read twice by changing the address, which causes a problem that the read timing cannot be met in time.

【0028】これに対し、本実施形態では、8ビット幅
のそれぞれ独立した4つのRAMモジュール12C1、
12C2、12C3、12C4を用い、これにデータバ
スセレクタ11aを設けることで、図4(b)に示した
ように、受信開始から3バイト目を先頭とする4バイ
ト、即ち、#3、#4、#5、#6バイトに同時にアク
セスし得るので、図6に示すように、インターフェイス
RAMモジュール(FIFOバッファ12C)に1回ア
クセスするだけで済むので、読み出しタイミングに間に
合わなくなるという問題を生じることがない。
On the other hand, in this embodiment, four independent RAM modules 12C1 each having an 8-bit width,
By using 12C2, 12C3, and 12C4 and providing the data bus selector 11a thereto, as shown in FIG. 4B, four bytes starting from the third byte from the start of reception, that is, # 3, # 4. , # 5, # 6 bytes can be accessed at the same time, the interface RAM module (FIFO buffer 12C) only needs to be accessed once, as shown in FIG. Absent.

【0029】以上、本発明を特定の実施形態について述
べたが、本発明はこれらに限られるものではなく、特許
請求の範囲に記載された発明の範囲内で、他の実施形態
についても適用される。
Although the present invention has been described above with reference to specific embodiments, the present invention is not limited to these, and other embodiments are also applicable within the scope of the invention described in the claims. It

【0030】例えば、上述した実施形態では、FIFO
バッファ12Cに一時的に格納されたデータは、FIF
Oバッファ12Cから入力バッファ12AにDMA転送
されるようにしたが、CPU14がFIFOバッファ1
2Cから読み出して入力バッファ12Aに書き込むよう
にしても良い。
For example, in the above-described embodiment, the FIFO
The data temporarily stored in the buffer 12C is FIF.
Although the DMA transfer is performed from the O buffer 12C to the input buffer 12A, the CPU 14 uses the FIFO buffer 1
It is also possible to read from 2C and write to the input buffer 12A.

【0031】また、上記実施形態では、インターフェイ
ス送受信モジュールに受信データFIFOを設ける場合
について説明した。しかし、本発明は、インターフェイ
ス送受信モジュールに送信データFIFOを構成する場
合についても同様に適用可能である。この場合、本発明
は、プリンタ内の主記憶装置等から送信データFIFO
に、例えば32ビット幅のデータバス等を介してデータ
転送される場合に関して適用される。
In the above embodiment, the case where the interface transmission / reception module is provided with the reception data FIFO has been described. However, the present invention can be similarly applied to the case where the transmission data FIFO is configured in the interface transmission / reception module. In this case, the present invention uses the transmission data FIFO from the main storage device or the like in the printer.
The present invention is applied to the case where data is transferred via, for example, a 32-bit wide data bus.

【0032】更に、以上のような例に限らず、プリンタ
とホスト(プリンタへのデータ入力装置等の意味で、ホ
ストコンピュータだけでなく、イメージスキャナやデジ
タルカメラ等も含む)との間における様々なデータ転送
に関して適用可能である。
Further, the present invention is not limited to the above examples, and various printers and hosts (in the sense of a data input device to the printer, not only the host computer but also an image scanner, a digital camera, etc.) can be used. Applicable for data transfer.

【0033】[0033]

【発明の効果】以上の説明から明らかなように、本発明
によれば、32ビットのデータバス幅を有するシステム
において、データやコマンドの8ビット転送や16ビッ
ト転送が行なわれた後においても、いつでも32ビット
幅でのデータ転送を行なうことができる。
As is apparent from the above description, according to the present invention, even in a system having a data bus width of 32 bits, even after 8-bit transfer or 16-bit transfer of data or command is performed, Data can be transferred in a 32-bit width at any time.

【0034】しかも、その際には、CPU内においてデ
ータを32ビットに揃えるための加工を要せず、コンピ
ュータの入出力制御装置と内部記憶装置との間で、直接
データ転送を行なわせることが可能となった。
In addition, in that case, it is possible to directly perform data transfer between the input / output control device of the computer and the internal storage device without processing for aligning the data to 32 bits in the CPU. It has become possible.

【図面の簡単な説明】[Brief description of drawings]

【図1】本発明の実施形態に係るプリンタの全体構成を
示すブロック図である。
FIG. 1 is a block diagram showing an overall configuration of a printer according to an embodiment of the present invention.

【図2】図1に示したプリンタとホストコンピュータか
ら成る印刷システムにおけるホスト−プリンタ間を含む
データ処理の流れを示す機能ブロック図である。
FIG. 2 is a functional block diagram showing a flow of data processing including between a host and a printer in the printing system including the printer and the host computer shown in FIG.

【図3】本発明の実施形態におけるバス17を介してI
/F制御部220内のFIFOバッファ12Cと入力バ
ッファ12Aの間でデータが転送される様子を説明する
ための図である。
FIG. 3 is a block diagram of a bus I according to an embodiment of the present invention.
FIG. 6 is a diagram for explaining how data is transferred between a FIFO buffer 12C and an input buffer 12A in the / F control unit 220.

【図4】本発明の実施形態に係るプリンタにおいて、ど
のようにデータが転送されていくかについて説明するた
めの図であり、(a)は、FIFOバッファを32ビッ
ト幅のRAMモジュール1個で構成する場合、(b)
は、FIFOバッファを8ビット幅のそれぞれ独立した
4つのRAMモジュールを用いて構成する場合をそれぞ
れ示す。
FIG. 4 is a diagram for explaining how data is transferred in the printer according to the embodiment of the present invention. FIG. 4A shows a FIFO buffer with one 32-bit wide RAM module. If configured, (b)
Shows the case where the FIFO buffer is configured by using four independent RAM modules each having an 8-bit width.

【図5】従来例において、4バイトのデータが2回に分
けてFIFOバッファから入力バッファに転送される様
子を説明するための図であり、(a)は、まず1回目の
アクセスで#3の1バイトのデータがFIFOバッファ
から入力バッファに転送される場合、(b)は、2回目
のアクセスで#4〜#6の3バイトのデータがFIFO
バッファから入力バッファに転送される場合をそれぞれ
示す。
FIG. 5 is a diagram for explaining how 4-byte data is transferred twice from a FIFO buffer to an input buffer in a conventional example. FIG. 5A is a first access to # 3. When the 1-byte data of # 3 is transferred from the FIFO buffer to the input buffer, (b) shows that the 3-byte data of # 4 to # 6 is FIFO by the second access.
The case where data is transferred from the buffer to the input buffer is shown.

【図6】本発明の実施形態において、#3〜#6の4バ
イトのデータが1回でFIFOバッファから入力バッフ
ァに転送される様子を説明するための図である。
FIG. 6 is a diagram for explaining how 4-byte data # 3 to # 6 is transferred from the FIFO buffer to the input buffer at one time in the embodiment of the present invention.

【符号の説明】[Explanation of symbols]

10 プリンタコントローラ 11 ホストI/F 11a データバスセレクタ 12A 入力バッファ 12B 出力(イメージ)バッファ 12C FIFOバッファ 13 ROM 14 CPU 14a DMAコントローラ 15 印字制御ASIC 16 メカI/F 17 バス 20 プリントエンジン 22 印字ヘッド 24 キャリッジ機構 26 紙送り機構 100 ホストコンピュータ 102 プリンタドライバ 104 オペレーティングシステム(OS) 106 ホストコンピュータ100のI/F部 171 アドレスバス 172 コントロールバス 173 データバス 200 プリンタ 220 I/F制御部 222 データ受信部 224 データ送信部 230 印刷部 231 受信バッファメモリ部 233 コマンド解釈部 235 イメージデータ展開部 237 印刷処理実行部 239 状態確認部 10 Printer controller 11 Host I / F 11a Data bus selector 12A input buffer 12B output (image) buffer 12C FIFO buffer 13 ROM 14 CPU 14a DMA controller 15 Print control ASIC 16 Mechanical I / F 17 bus 20 print engine 22 Print head 24 Carriage mechanism 26 Paper feed mechanism 100 host computer 102 printer driver 104 Operating System (OS) 106 I / F section of host computer 100 171 address bus 172 control bus 173 data bus 200 printers 220 I / F control unit 222 Data receiver 224 Data transmission unit 230 Printing Department 231 Receive buffer memory unit 233 Command interpreter 235 Image data development unit 237 Print processing execution unit 239 Status confirmation section

───────────────────────────────────────────────────── フロントページの続き (51)Int.Cl.7 識別記号 FI テーマコート゛(参考) G06F 13/38 310 G06F 13/38 310F ─────────────────────────────────────────────────── ─── Continued Front Page (51) Int.Cl. 7 Identification Code FI Theme Coat (Reference) G06F 13/38 310 G06F 13/38 310F

Claims (9)

【特許請求の範囲】[Claims] 【請求項1】 ホストからの所定のビット数(Nビッ
ト)単位のデータを受信するインタフェース部と、前記
ホストから受信したデータに基づいて所定の印刷処理を
行う印刷部とを備えるプリンタにおいて、 前記ホストから受信した所定のビット数(Nビット)単
位のデータを前記インタフェース部内に保存する第1の
データ保存手段と、 前記第1のデータ保存手段に保存されたデータを所定の
ビット幅(Mビット幅)で前記印刷部に転送する転送手
段と、 前記転送手段により前記所定のビット幅(Mビット幅)
で転送されるデータを前記印刷部内に保存する第2のデ
ータ保存手段とを備え、 前記第1のデータ保存手段を、前記Nビットの幅のそれ
ぞれ独立したM/N個のメモリモジュールを用いて構成
したことを特徴とするプリンタ。
1. A printer comprising: an interface unit for receiving data of a predetermined number of bits (N bits) from a host; and a printing unit for performing a predetermined printing process based on the data received from the host, A first data storage unit for storing data in a predetermined number of bits (N bits) unit received from the host in the interface unit; and data stored in the first data storage unit for a predetermined bit width (M bits). Width) to the printing unit, and the predetermined bit width (M bit width) by the transfer unit.
Second data storage means for storing the data transferred in the printing section in the printing section, the first data storage means using M / N memory modules each having the N-bit width and independent of each other. A printer characterized by being configured.
【請求項2】 請求項1記載のプリンタにおいて、前記
転送手段は、転送制御手段及び前記所定のビット幅(M
ビット幅)のバスから成ることを特徴とするプリンタ。
2. The printer according to claim 1, wherein the transfer unit includes a transfer control unit and the predetermined bit width (M
A printer characterized by comprising a bus (bit width).
【請求項3】 請求項2記載のプリンタにおいて、前記
転送手段は、CPU及び/又はDMAコントローラから
成ることを特徴とするプリンタ。
3. The printer according to claim 2, wherein the transfer means comprises a CPU and / or a DMA controller.
【請求項4】 請求項3記載のプリンタにおいて、前記
転送手段は、更に、前記第1のデータ保存手段に保存さ
れたデータを前記所定のビット数(Nビット)単位で前
記所定のビット幅(Mビット幅)のバスに割り当てて前
記第2のデータ保存手段に転送するためのバスセレクタ
を含むことを特徴とするプリンタ。
4. The printer according to claim 3, wherein the transfer unit further sets the predetermined bit width (N bits) of the data stored in the first data storage unit to the predetermined bit width (N bits). A printer comprising: a bus selector for allocating to a bus of M bit width and transferring to the second data storage means.
【請求項5】 請求項1乃至4記載のプリンタにおい
て、前記第1のデータ保存手段は、先入れ先出し(FI
FO)バッファにより構成されることを特徴とするプリ
ンタ。
5. The printer according to claim 1, wherein the first data storage means is a first-in first-out (FI).
A printer comprising a FO) buffer.
【請求項6】 請求項4又は5記載のプリンタにおい
て、前記所定のビット幅(Mビット幅)に割り当てられ
たデータが前記第1のデータ保存手段から前記第2のデ
ータ保存手段にDMA転送されることを特徴とするプリ
ンタ。
6. The printer according to claim 4, wherein the data allocated to the predetermined bit width (M bit width) is DMA-transferred from the first data storage means to the second data storage means. A printer characterized in that
【請求項7】 転送されてきた所定のビット数(Nビッ
ト)単位のデータを受信し、所定の受信処理を行う受信
部と、該受信部により所定の受信処理が行われたデータ
が出力される出力部とを有するデータ転送装置であっ
て、 前記受信した所定のビット数(Nビット)単位のデータ
を保存する第1のデータ保存手段と、 前記第1のデータ保存手段に保存されたデータを所定の
ビット幅(Mビット幅)で前記出力部に転送する転送手
段と、 前記転送手段により前記所定のビット幅(Mビット幅)
で転送されるデータを保存する第2のデータ保存手段と
を備え、 前記第1のデータ保存手段を、前記Nビットの幅のそれ
ぞれ独立したM/N個のメモリモジュールを用いて構成
したことを特徴とするデータ転送装置。
7. A receiving unit for receiving the transferred data of a predetermined number of bits (N bits) and performing a predetermined receiving process, and data for which the predetermined receiving process is performed by the receiving unit are output. A data transfer device having an output unit for storing the received data in units of a predetermined number of bits (N bits), and data stored in the first data storage device. And a transfer means for transferring to the output unit with a predetermined bit width (M bit width), and the predetermined bit width (M bit width) by the transfer means.
Second data storage means for storing the data transferred by the above method, wherein the first data storage means is configured by using M / N memory modules each having the N-bit width and independent of each other. Characteristic data transfer device.
【請求項8】 請求項7記載のにおいて、前記転送手段
は、前記所定のビット幅(Mビット幅)のバスと、前記
第1のデータ保存手段に保存されたデータを前記所定の
ビット数(Nビット)単位で前記所定のビット幅(Mビ
ット幅)のバスに割り当てて前記第2のデータ保存手段
に転送するためのバスセレクタとを含むことを特徴とす
るデータ転送装置。
8. The transfer means according to claim 7, wherein the transfer means transfers the data stored in the bus of the predetermined bit width (M bit width) and the first data storage means to the predetermined number of bits ( A data transfer device comprising: a bus selector for allocating to the bus of the predetermined bit width (M bit width) in units of N bits and transferring the bus to the second data storage means.
【請求項9】 転送されてきた所定のビット数(Nビッ
ト)単位のデータを受信し、所定の受信処理を行う受信
部と、該受信部により所定の受信処理が行われたデータ
が所定のビット幅(Mビット幅)で出力される出力部と
を有するシステムにおけるデータ転送方法であって、 前記受信したNビット単位のデータをそれぞれ独立した
M/N個のメモリモジュールに前記Mビット幅で保存す
る第1のデータ保存ステップと、 前記第1のデータ保存ステップにより保存されたデータ
を前記Mビット幅のバスを介して前記出力部に転送する
転送ステップと、 前記転送ステップにより前記Mビット幅で転送されるデ
ータを前記Mビット幅で保存する第2のデータ保存ステ
ップと、 前記第1のデータ保存ステップにより保存されたデータ
を前記Nビット単位で前記Mビット幅のバスに割り当て
るためのバス選択ステップとを有することを特徴とする
データ転送方法。
9. A receiving unit that receives transferred data in units of a predetermined number of bits (N bits) and performs a predetermined receiving process, and a data that has been subjected to a predetermined receiving process by the receiving unit are predetermined. A data transfer method in a system having an output unit for outputting a bit width (M bit width), wherein the received N-bit unit data is transferred to the independent M / N memory modules at the M bit width. A first data storage step of storing, a transfer step of transferring the data stored by the first data storage step to the output unit via the M-bit width bus, and the M-bit width by the transfer step. The second data storage step of storing the data transferred by the M-bit width, and the data stored in the first data storage step by the N-bit width. Data transfer method and having a bus selection step for assigning the bus of said M bit wide units.
JP2001399801A 2001-12-28 2001-12-28 Printer, data transfer device and method Pending JP2003196041A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2001399801A JP2003196041A (en) 2001-12-28 2001-12-28 Printer, data transfer device and method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2001399801A JP2003196041A (en) 2001-12-28 2001-12-28 Printer, data transfer device and method

Publications (1)

Publication Number Publication Date
JP2003196041A true JP2003196041A (en) 2003-07-11

Family

ID=27604678

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001399801A Pending JP2003196041A (en) 2001-12-28 2001-12-28 Printer, data transfer device and method

Country Status (1)

Country Link
JP (1) JP2003196041A (en)

Similar Documents

Publication Publication Date Title
US7200685B2 (en) Communication apparatus for communicating data between separate toplogies, and related method, storage medium, and program
US5355441A (en) Printing control apparatus
US6753903B1 (en) Adaptor for direct connection between USB digital still camera and use color printer
JP2003196041A (en) Printer, data transfer device and method
JP5057548B2 (en) Image data transfer apparatus and image data transfer method
JP2861586B2 (en) Printing control device
JP3427975B2 (en) Printer control circuit, printer and print system
JP2842010B2 (en) Printing control device
JPH09265367A (en) Device and method for printer control
JP3184544B2 (en) Image processing device
JP2913977B2 (en) Printing control device
JP3700410B2 (en) Printer system and print control method
JP3226841B2 (en) Printer device
JP3257902B2 (en) Printing apparatus and data transfer control method for printing apparatus
JP6123865B2 (en) Image forming apparatus and image forming system
JPH11179975A (en) Color printer control device
JP2000047976A (en) Printer control unit
US7046386B2 (en) Bandwidth booster for aging printer ASICs
JP2005071329A (en) Computer system, integrated circuit and printing method
JPH11187227A (en) Image forming device
JP2000172630A (en) Semiconductor device, image processor and printer
JP2009064342A (en) Data transfer system
JP2003326808A (en) Data communication system
JP2008262471A (en) Image output device
JP2009059018A (en) Information processing system, information processor and data transfer method for information processing system