JPH08258346A - Data processor - Google Patents
Data processorInfo
- Publication number
- JPH08258346A JPH08258346A JP6040195A JP6040195A JPH08258346A JP H08258346 A JPH08258346 A JP H08258346A JP 6040195 A JP6040195 A JP 6040195A JP 6040195 A JP6040195 A JP 6040195A JP H08258346 A JPH08258346 A JP H08258346A
- Authority
- JP
- Japan
- Prior art keywords
- memory
- data
- signal
- processor
- address
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Withdrawn
Links
Landscapes
- Record Information Processing For Printing (AREA)
- Bus Control (AREA)
Abstract
Description
【0001】[0001]
【産業上の利用分野】本発明は、或るメモリ上に展開さ
れたデータを、他のメモリへ高速転送するデータ処理装
置に関する。BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a data processing device for transferring data expanded in a memory to another memory at high speed.
【0002】例えば、レーザプリンタ、発光ダイオード
などのプリンタ装置(ページプリンタ)のデータ処理装
置では、ホストマシンから送信されたデータを或るメモ
リ(第1メモリ)にビットマップ展開し、前記ビットマ
ップ展開したデータをページメモリ(第2メモリ)へ転
送したのち、プリンタエンジンに印刷データとして出力
することが行われる。For example, in a data processing device of a printer device (page printer) such as a laser printer or a light emitting diode, data transmitted from a host machine is bit-mapped in a certain memory (first memory), and the bit-map development is performed. After the transferred data is transferred to the page memory (second memory), it is output to the printer engine as print data.
【0003】なお、この印刷を高速で実行するために
は、第1メモリから第2メモリへのデータ転送を高速で
実現することが必要になる。In order to execute this printing at high speed, it is necessary to realize high-speed data transfer from the first memory to the second memory.
【0004】[0004]
【従来の技術】以下、プリンタ装置に使用されるデータ
処理装置(単に、プリンタ制御装置と称す)を例に取
り、説明を行うものとする。2. Description of the Related Art A data processing device (simply called a printer control device) used in a printer device will be described below as an example.
【0005】図4は従来の一実施例のプリンタ制御装置
の回路構成を示す図である。図中、1はプリンタ制御装
置であり、2はホストコンピュータであり、3はコンソ
ールであり、4はプリンタ・エンジンである。FIG. 4 is a diagram showing a circuit configuration of a printer controller of a conventional embodiment. In the figure, 1 is a printer control device, 2 is a host computer, 3 is a console, and 4 is a printer engine.
【0006】なお、プリンタ制御装置1は、プロセッサ
11とリードオンリメモリ(ROM)12とランダムアクセ
スメモリ(RAM)13およびフォントROM14、並びに
第1メモリ15(ビットマップメモリに対応)と第2メモ
リ16(ページメモリに対応)と周辺インタフェース(I
/F)部17とプリンタI/F部18およびプロセッサ・バ
ス19により構成される。The printer control device 1 is a processor.
11, read only memory (ROM) 12, random access memory (RAM) 13, font ROM 14, first memory 15 (corresponding to bitmap memory), second memory 16 (corresponding to page memory) and peripheral interface (I
/ F) unit 17, printer I / F unit 18, and processor bus 19.
【0007】以下、各回路の個別動作と全体動作の2つ
に分けて説明する。 1.各回路の個別動作 プロセッサ11はプリンタ制御装置1の全体制御を行う。
その制御には、ホストコンピュータ2が出力するデー
タの解析、該データのビットマップ展開、該ビット
マップ展開データの転送、プリンタの制御、マンマ
シンインタフェース制御、等がある。The individual operation and overall operation of each circuit will be described below separately. 1. Individual operation of each circuit The processor 11 controls the printer controller 1 as a whole.
The control includes analysis of data output from the host computer 2, bit map expansion of the data, transfer of the bit map expanded data, printer control, man-machine interface control, and the like.
【0008】ROM12はプロセッサ11の命令を格納し、
RAM13はホストコンピュータ2が出力するデータつま
り文字情報とイメージ情報等を格納し、フォントROM
14は常駐するフォント・データを格納する。The ROM 12 stores the instructions of the processor 11,
The RAM 13 stores data output by the host computer 2, that is, character information and image information, and is a font ROM.
14 stores resident font data.
【0009】第1メモリ15はプロセッサ11の配下で動作
するメモリである。なお、第1メモリでは、ホストコン
ピュータ2からの文字情報とイメージ情報を所定フォー
マットにビットマップ展開し、該ビットマップ展開デー
タは第2メモリ16へ頁単位で転送して格納される。The first memory 15 is a memory that operates under the control of the processor 11. In the first memory, the character information and the image information from the host computer 2 are bit-mapped in a predetermined format, and the bit-mapped data is transferred to and stored in the second memory 16 page by page.
【0010】第2メモリ16では、前記格納データをプリ
ンタI/F18の制御で読み出し、印刷データとして用い
る。なお、第1メモリ15と第2メモリ16の2つのメモリ
を設ける理由は、データのビットマップ展開と印刷を並
行して実行できるようにするためである。The second memory 16 reads the stored data under the control of the printer I / F 18 and uses it as print data. The reason for providing the two memories of the first memory 15 and the second memory 16 is to enable the bitmap development of data and the printing to be executed in parallel.
【0011】さらに、周辺I/F部17はホストコンピュ
ータ2とコンソール3とのインタフェースをとり、プリ
ンタI/F部18は第2メモリ16の読み出し制御ならびに
プンリタ・エンジン4とのインタフェースをとる。 2.全体動作 2.1 初期設定 電源が投入されたら、プロセッサ11は初期アドレスを出
力し、プロセッサ・バス19を介しROM12中の所定アド
レスのデータ(命令)を読み出し(リード)、この命令
に続く処理ルーチンに従って初期化を開始する。Further, the peripheral I / F unit 17 interfaces the host computer 2 and the console 3, and the printer I / F unit 18 controls the reading of the second memory 16 and interfaces with the printer engine 4. 2. Overall operation 2.1 Initialization When the power is turned on, the processor 11 outputs the initial address, reads the data (instruction) of the predetermined address in the ROM 12 via the processor bus 19, and reads the data according to the processing routine following this instruction. Start conversion.
【0012】この処理ルーチンに従い、プロセッサ11は
RAM13と第1メモリ15と第2メモリ16と周辺I/F部
17およびプリンタI/F部18のそれぞれを初期化し、第
1メモリ15と第2メモリ16に白(“0”)を書き込み
(ライト)、初期化の準備を完了する。According to this processing routine, the processor 11 includes the RAM 13, the first memory 15, the second memory 16, and the peripheral I / F section.
Each of the printer 17 and the printer I / F unit 18 is initialized, white (“0”) is written (written) in the first memory 15 and the second memory 16, and the initialization preparation is completed.
【0013】2.2 モード設定 初期設定が完了したら、プロセッサ11はROM12の命令
に従ってプリンタI/F18を介してコンソール3が指定
するコマンド/ステータス情報(複数のプリンタ中の出
力先や用紙サイズの指定などの情報)をプリンタ・エン
ジン4に送り、プリンタ・エンジン4の印刷準備を整え
る。2.2 Mode Setting Upon completion of the initial setting, the processor 11 follows the instruction of the ROM 12 and issues command / status information (such as designation of output destinations and paper sizes among a plurality of printers) designated by the console 3 via the printer I / F 18. Information) to the printer engine 4 to prepare the printer engine 4 for printing.
【0014】2.3 第1メモリのライト モード設定が完了したら、プロセッサ11はROM12の命
令に従ってホストコンピュータ2から情報が流れてくる
かを監視し、情報が流れてきたら該情報をRAM13に蓄
積する。2.3 When the write mode setting of the first memory is completed, the processor 11 monitors whether information flows from the host computer 2 according to the instruction of the ROM 12, and stores the information in the RAM 13 when the information flows.
【0015】つぎに、プロセッサ11はどんな処理が必要
かをRAM13の蓄積データから判断し、該蓄積情報が文
字の指定であれば該指定文字をフォントROM14からリ
ードし、このリード結果のデータを第1メモリ15に送
り、該蓄積情報が指定する位置にランダム動作でライト
する。Next, the processor 11 determines what kind of processing is required from the accumulated data in the RAM 13, and if the accumulated information designates a character, the designated character is read from the font ROM 14, and this read result data is The data is sent to one memory 15 and written to the position designated by the accumulated information by a random operation.
【0016】また、該蓄積情報がイメージの指定であれ
ばそのまま第1メモリ15に送り、指定されたイメージ情
報を該蓄積情報の指定位置にランダム動作でライトす
る。以上の処理を順次繰り返し、プロセッサ11はROM
12の命令に従って、ホストコンピュータ2から流れてく
るデータをビットデータとしてランダムに第1メモリ15
上に展開する。If the stored information is an image designation, it is sent to the first memory 15 as it is, and the designated image information is written at a designated position of the stored information by a random operation. The above processing is repeated in sequence, and the processor 11 is
In accordance with the instruction of 12, the first memory 15 randomly receives the data flowing from the host computer 2 as bit data.
Expand to the top.
【0017】2.4 第1メモリのリードとデータの印刷 所定量のデータが第1メモリ15上にランダム展開された
ら、プロセッサ11は該データをシーケンシャルに第1メ
モリ15から第2メモリ16に対してサイクルスチール(フ
ライバイ転送とも称する)し、頁単位で第2メモリ16上
に書き込む。2.4 Reading First Memory and Printing Data When a predetermined amount of data is randomly expanded on the first memory 15, the processor 11 sequentially cycles the data from the first memory 15 to the second memory 16. Steal (also referred to as fly-by transfer), and write to the second memory 16 in page units.
【0018】第2メモリ16はプリンタI/F18の制御に
より、第2メモリ16上にシーケンシャルに書き込まれた
データの1頁分づつをプリンタ・エンジン4へ吐き出し
て印刷を行う。Under the control of the printer I / F 18, the second memory 16 discharges page by page the data sequentially written in the second memory 16 to the printer engine 4 for printing.
【0019】以上の処理2.3 、処理2.4 を繰り返しなが
ら、第1メモリ15へのランダムデータのビットマップ展
開と並行して、第2メモリ16にシーケンシャルに書き込
まれたデータの印刷が実行される。While repeating the processing 2.3 and the processing 2.4 described above, the printing of the data sequentially written in the second memory 16 is executed in parallel with the bit map development of the random data in the first memory 15.
【0020】従来、プリンタ制御装置1においては、A
4サイズ/300dpi(dpi:1インチ当たりのド
ット数)のデータ量を第1メモリ15から第2メモリ16へ
転送するためには約870万ドット/ページ、バイト換
算で約1Mバイトの転送を必要とする。Conventionally, in the printer control device 1, A
To transfer a data amount of 4 sizes / 300 dpi (dpi: the number of dots per inch) from the first memory 15 to the second memory 16, it is necessary to transfer about 8.7 million dots / page, or about 1 MB in bytes. And
【0021】また、印刷時に「白」となるデータはプリ
ンタ・エンジン4としては必要であるが、この「白」の
データはプリンタ制御装置1の内部にある第1メモリと
第2メモリ間では転送する必要のないデータであるにも
かかわらず、第2メモリ16の領域をビットマップ展開し
たデータで満たすため、全ページ・データについて転送
を実行しなければならない。Data that becomes "white" at the time of printing is necessary for the printer engine 4, but this "white" data is transferred between the first memory and the second memory inside the printer control device 1. Although the data does not need to be written, the area of the second memory 16 is filled with the bit-mapped data, so that the transfer must be executed for all page data.
【0022】また、一般的な印刷内容では、黒ドットの
出現比率は白ドット出現比率に対して非常に小さく、こ
の不要な白ドット部分のデータ転送をプロセッサの制御
により実行することは、結果として印字処理速度の向上
を妨げることになる。Further, in general print contents, the appearance ratio of black dots is very small compared to the appearance ratio of white dots, so that the data transfer of this unnecessary white dot portion is executed under the control of the processor. This will hinder the improvement of the print processing speed.
【0023】[0023]
【発明が解決しようとする課題】従って、不要部分の白
ドットの転送はプロセッサの処理速度の向上を妨げるよ
うになるという課題がある。Therefore, there is a problem in that the transfer of white dots in unnecessary portions will hinder the improvement of the processing speed of the processor.
【0024】本発明は、白データ実現時のデータ転送時
間を極力小さくし、プロセッサ自身に余裕時間の生成と
処理速度の向上を図ることを目的とする。It is an object of the present invention to minimize the data transfer time when white data is realized and to generate a margin time in the processor itself and improve the processing speed.
【0025】[0025]
【課題を解決するための手段】上記の目的を達成するた
め、本発明では図1に示すごとく、ビットマップ展開さ
れたデータを記憶する第1メモリ15から該データを頁単
位に記憶するために設けた第2メモリ16へ、プロセッサ
のサイクルスチール動作を適用してデータ転送を行うデ
ータ処理装置において、前記プロセッサ11のサイクルス
チール動作をサイクルスチール検出回路24で検出し、該
検出結果から前記プロセッサ11の基本クロックと同一周
期の歩進クロックを生成するアドレス歩進回路23と、前
記サイクルスチール動作の間、前記歩進クロックのカウ
ントアップを行うカウンタ28と、データの転送単位の全
白を検出し、全白検出の際には前記第1メモリ15のアド
レスバスをプロセッサ11側からカウンタ28の出力側に切
替えるための切替え信号を出力する白データ検出回路26
と、該切替え信号が出力された際には、前記プロセッサ
11側のアドレスバスをウエイト状態にすると同時に、前
記カウンタ28の出力を第1メモリ15のアドレスとして選
択するセレクタ29を設けるよう構成する。In order to achieve the above object, according to the present invention, as shown in FIG. 1, in order to store the data in page units from the first memory 15 which stores the bit-mapped data. In a data processing device that transfers data by applying the cycle steal operation of the processor to the second memory 16 provided, the cycle steal operation of the processor 11 is detected by the cycle steal detection circuit 24, and the processor 11 is detected from the detection result. The address stepping circuit 23 that generates a stepping clock having the same cycle as the basic clock, the counter 28 that counts up the stepping clock during the cycle steal operation, and the all white of the data transfer unit is detected. , A switching signal for switching the address bus of the first memory 15 from the processor 11 side to the output side of the counter 28 when detecting all white White data detection circuit 26 which outputs
And when the switching signal is output, the processor
At the same time that the address bus on the 11th side is put into the wait state, a selector 29 is provided for selecting the output of the counter 28 as the address of the first memory 15.
【0026】[0026]
【作用】本発明は図1に示すように、第1メモリ15にビ
ットマップ展開されたデータを頁単位に記憶するために
設けた第2メモリ16へのデータ転送を、プロセッサ11の
制御でデータ転送する場合、アドレス歩進回路23では前
記プロセッサ11のサイクルスチール動作をサイクルスチ
ール検出回路24で検出して、当該検出結果から前記プロ
セッサ11の基本クロックと同一周期の歩進クロックを生
成するようにし、カウンタ28では前記サイクルスチール
動作の間、前記歩進クロックのカウントアップを行うよ
うにし、白データ検出回路26では全白検出の際には前記
第1メモリ15のアドレスバスをプロセッサ11側からカウ
ンタ28の出力側に切替えるための切替え信号を出力する
ようにする。According to the present invention, as shown in FIG. 1, the data transfer to the second memory 16 provided to store the bit map expanded data in the first memory 15 in page units is controlled by the processor 11. When transferring, in the address step circuit 23, the cycle steal operation of the processor 11 is detected by the cycle steal detection circuit 24, and a step clock having the same cycle as the basic clock of the processor 11 is generated from the detection result. The counter 28 counts up the stepping clock during the cycle steal operation, and the white data detection circuit 26 counts the address bus of the first memory 15 from the processor 11 side when detecting all white. Output a switching signal for switching to the 28 output side.
【0027】従って、セレクタ29が切替え信号を受けと
った場合、カウンタ28の出力は第1メモリ15のアドレス
として加わるようになり、第1メモリ15から第2メモリ
16へのデータ転送が基本クロックと同一周期の高速状態
で行うことが可能になる。Therefore, when the selector 29 receives the switching signal, the output of the counter 28 is added as the address of the first memory 15, and the first memory 15 to the second memory 15 are added.
Data transfer to 16 can be performed in the high-speed state with the same cycle as the basic clock.
【0028】[0028]
【実施例】以下、図1〜図2を用いて本発明の一実施例
のデータ処理装置を説明する。また、図3は、図1と図
2に示すサイクルスチールをより具体的に説明する図で
ある。以下、まずサイクルスチールを具体的に説明し、
続いて本発明の実施例を説明する。 〔サイクルスチール動作〕プリンタ制御装置のデータ転
送には、所謂、サイクルスチールが使用される。また、
サイクルスチールのデータ転送を司るプロセッサには、
バスクロックの2サイクルを一組のバスサイクルとして
動作するもの、バスクロックの4サイクルを一組のバス
サイクルとして動作するもの等がある。本例では2サイ
クルを一組のバスサイクルとして動作するプロセッサを
使用するものとする。DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS A data processing apparatus according to an embodiment of the present invention will be described below with reference to FIGS. Further, FIG. 3 is a diagram for more specifically explaining the cycle steal shown in FIGS. 1 and 2. In the following, first, cycle steel will be explained in detail,
Next, examples of the present invention will be described. [Cycle Steal Operation] The so-called cycle steal is used for data transfer of the printer control device. Also,
The processor that controls the data transfer of cycle steal,
There are ones that operate two cycles of the bus clock as one set of bus cycles, ones that operate four cycles of the bus clock as one set of bus cycles, and the like. In this example, a processor that operates two cycles as a set of bus cycles is used.
【0029】図3に示す信号(A) 〜信号(E) はプロセッ
サが扱う信号であり、(A) はバスクロック、信号(B) は
アドレス、信号(C) は転送開始信号(TS)である。ま
た、信号(D)、(E) は転送肯定信号(TA)であって、
信号(D) は待機(ウエイト)無しの場合を示し、信号
(E) は1クロックウエイトの場合を示す。Signals (A) to (E) shown in FIG. 3 are signals handled by the processor. (A) is a bus clock, signal (B) is an address, and signal (C) is a transfer start signal (TS). is there. Further, the signals (D) and (E) are transfer acknowledgment signals (TA),
Signal (D) shows the case without waiting (wait)
(E) shows the case of one clock wait.
【0030】プロセッサは、バスクロック(A) の2サイ
クル(C1,C2) を一組のバスサイクルとして動作する。そ
して、転送開始に先立ち第1クロック部分(C1)で信号
(C) を有効(“L”)にし、信号(D),(E) の有効
(“L”)でバスサクルを終了する。The processor operates with two cycles (C1, C2) of the bus clock (A) as a set of bus cycles. Then, the signal is sent at the first clock part (C1) prior to the start of transfer.
The (C) is enabled ("L"), and the bus cycle is ended when the signals (D) and (E) are enabled ("L").
【0031】信号(E) の場合、プロセッサはバスクロッ
ク(A) によるサンプリング結果が無効状態(“H”)な
らばウエイト状態となり、続くクロック(C12,C21, ・・
・)の立上がりごとにサンプリングし続ける。In the case of the signal (E), the processor is in the wait state if the sampling result by the bus clock (A) is in the invalid state ("H"), and the following clocks (C12, C21, ...).
・) Sampling continues at every rising edge.
【0032】そして、信号(E) が有効(“L”)なる時
点でウエイトサイクルを終了し、新たなバスサイクル
を開始する。 〔実施例の説明〕以下、図1と図2の説明を、(1) 各回
路とその信号、(2) 全般動作、(3) 第1メモリから第2
メモリへのサイクルスチール、(4) 第2メモリのR/W
動作、の4つに分けて行う。When the signal (E) becomes valid ("L"), the wait cycle is ended and a new bus cycle is started. [Explanation of Embodiments] The explanation of FIGS. 1 and 2 is as follows. (1) Each circuit and its signal, (2) General operation, (3) First memory to second
Cycle steal to memory, (4) R / W of second memory
The operation is divided into four.
【0033】なお、第1メモリ15への通常の書き込みは
従来と同一であり、その説明は省略するものとする。 (1) 各回路とその信号 図1において、21〜29の各回路は本実施例で追加した回
路であり、その他回路11〜18および19a,19b は従来例の
回路と同一である。Note that the normal writing to the first memory 15 is the same as the conventional one, and the description thereof will be omitted. (1) Circuits and their signals In FIG. 1, circuits 21 to 29 are circuits added in this embodiment, and the other circuits 11 to 18 and 19a and 19b are the same as those of the conventional example.
【0034】21はクロック回路であり、22は論理積回路
(AND)である。そして、クロック回路21とAND22
によりロードパルス生成回路を形成する。23はサイクル
スチール検出回路24とAND25とを備えたアドレス歩進
回路であり、26は白データ検出回路であり、27はフリッ
プ・フロップ回路(F/F)であり、28はカウンタであ
り、29はセレクタである。Reference numeral 21 is a clock circuit, and 22 is an AND circuit (AND). Then, the clock circuit 21 and the AND 22
To form a load pulse generation circuit. 23 is an address advancing circuit including a cycle steal detecting circuit 24 and AND 25, 26 is a white data detecting circuit, 27 is a flip-flop circuit (F / F), 28 is a counter, 29 Is a selector.
【0035】また、30〜34はプリンタI/F 部18の構成回
路であり、30はアドレス発生回路、31はラッチ回路、32
はバッファ、33はリード/ライト(R/W) 制御回路であ
る。そして、19a はアドレスバスであり、19b はデータ
バスであり、それぞれのバス19a,19b は、図4に記載し
たプロセッサ・バス19をアドレス系とデータ系に分けた
ものである。なお、回路11〜18については、その説明を
省略する。Further, 30 to 34 are constituent circuits of the printer I / F unit 18, 30 is an address generating circuit, 31 is a latch circuit, and 32 is a circuit.
Is a buffer, and 33 is a read / write (R / W) control circuit. 19a is an address bus, 19b is a data bus, and each of the buses 19a and 19b is a division of the processor bus 19 shown in FIG. 4 into an address system and a data system. The description of the circuits 11 to 18 will be omitted.
【0036】図2に示す信号(a) 〜信号(l) は、図1に
記載された信号と同一である。信号(a) はプロセッサ11
に対してクロック回路21が出力する基準時間信号として
のバスクロックBCLKであり、信号(b) はプロセッサ11が
アドレスバス19a 上に出力するアドレスであり、信号
(c) はプロセッサ11が出力する転送開始信号TSであ
る。Signals (a) to (l) shown in FIG. 2 are the same as the signals shown in FIG. Signal (a) is processor 11
Is the bus clock BCLK as the reference time signal output by the clock circuit 21, and the signal (b) is the address output by the processor 11 on the address bus 19a.
(c) is a transfer start signal TS output by the processor 11.
【0037】信号(d) はプロセッサ11が出力するサイク
ルスチール信号であり、信号(e) はサイクルスチール検
出回路24が出力するサイクルスチール検出信号である。
信号(f) はAND22が出力するカウンタ28のロードパル
スであり、信号(g) はアドレス歩進回路23が出力する歩
進クロック(PMWR)であり、信号(h) はカウンタ28が出力
するカウンタ信号である。The signal (d) is a cycle steal signal output from the processor 11, and the signal (e) is a cycle steal detection signal output from the cycle steal detection circuit 24.
The signal (f) is the load pulse of the counter 28 output by the AND 22, the signal (g) is the step clock (PMWR) output by the address step circuit 23, and the signal (h) is the counter output by the counter 28. It is a signal.
【0038】また、信号(i) はセレクタ29が出力する第
1メモリ15のアドレスであり、信号(j) はプロセッサ11
がデータバス19a 上に出力される、例えば32ビットを1
区間とするデータであり、信号(k) は白データ検出回路
26から出力される転送肯定信号TAとしての白データ検
出信号である。そして、信号(l) はF/F27が出力する
F/F出力である。 (2) 全般動作 電源がオンされるとクロック回路21は動作を開始して信
号(a) を出力し、プロセッサ11は該信号(a) の入力によ
りアドレスバス19a に対して、例えばアドレスM、アド
レスN、アドレスP・・・と続くアドレスおよび、信号
(d) 、R/W信号を出力する。The signal (i) is the address of the first memory 15 output by the selector 29, and the signal (j) is the processor 11
Is output on the data bus 19a, for example, 32 bits is 1
This is the data for the section, and the signal (k) is the white data detection circuit.
It is a white data detection signal output from 26 as a transfer positive signal TA. The signal (l) is the F / F output output by the F / F 27. (2) General operation When the power supply is turned on, the clock circuit 21 starts operating and outputs the signal (a), and the processor 11 receives the signal (a), for example, addresses M, to the address bus 19a. Address N, address P ... Addresses and signals
(d) Output the R / W signal.
【0039】また、サイクルスチール検出回路24には、
信号(a) および信号(k) およびプロセッサ11からの信号
(d) とR/W信号の4信号が入力する。第1メモリ15か
ら第2メモリ16へのサイクルスチールに際し、信号(e)
は信号(d) の有効を示す“H”(例えば、B点とG点)
を信号(a) の第1サイクルのクロックC2の立ち上がりエ
ッジにより検出されて“H”にセットされ、信号(k) の
有効(“L”)(データ中に1ビット以上の黒が混在す
るE点)を該当時の信号(a) の立ち上がりエッジ(図2
では、第3サイクルのクロック11) により検出されて
“L”にリセットされる信号である。Further, the cycle steal detection circuit 24 includes
Signal (a) and signal (k) and signal from processor 11
4 signals of (d) and R / W signal are input. Signal (e) when cycle stealing from the first memory 15 to the second memory 16
Is "H" indicating the validity of the signal (d) (for example, B point and G point)
Is detected by the rising edge of the clock C2 in the first cycle of the signal (a) and is set to "H", and the signal (k) is valid ("L") (1 or more bits of black are mixed in the data E The rising edge of the signal (a) (Fig. 2)
Then, it is a signal detected by the clock 11) of the third cycle and reset to "L".
【0040】この信号(e) は後段のAND25で信号(a)
との間で論理積がとられ、論理積結果の信号(g) をカウ
ンタ28の歩進クロック(CK)とバッファ32およびR/W制
御回路33のライト信号として加え、第1メモリ15から第
2メモリ16へサイクルスチールされるデータ(j) のライ
ト制御を行う。This signal (e) is the signal (a) in the AND25 in the subsequent stage.
And the logical product of the signals (g) is added as a stepping clock (CK) of the counter 28 and a write signal of the buffer 32 and the R / W control circuit 33. 2 The write control of the data (j) to be cycle stealed to the memory 16 is performed.
【0041】カウンタ28には、信号(c) の有効
(“L”)(例えば、A点)を信号(a) の第1サイクル
のクロックC1の立ち下がりエッジにより検出された信号
(f) がロードパルス(LD)として入力している。The counter 28 detects the signal (c) valid ("L") (for example, point A) by the falling edge of the clock C1 of the first cycle of the signal (a).
(f) is input as load pulse (LD).
【0042】そして、該カウンタ28は信号(f) の立ち上
がりエッジにおいてアドレスバス19a からのアドレス
Nをロードし、以後、アドレス歩進回路23からの信号
(g) の立ち上がりエッジ、、・・・により、アド
レスN+1、アドレスN+2、アドレスN+3、・・・
と順次歩進されていく。Then, the counter 28 loads the address N from the address bus 19a at the rising edge of the signal (f), and thereafter, the signal from the address stepping circuit 23.
Depending on the rising edge of (g), ..., Address N + 1, address N + 2, address N + 3, ...
And step by step.
【0043】白データ検出回路26は、データ転送時のデ
ータバス19b の状態を検出するものであり、第1メモリ
15からリードしたデータ(j)(例えば、D0) の所定区間
(32ビット)の全てが白(“0”)なら、信号(k) は
“H”( 例えば、C点)になる。The white data detection circuit 26 detects the state of the data bus 19b during data transfer, and
If all of the predetermined section (32 bits) of the data (j) (eg D0) read from 15 are white (“0”), the signal (k) becomes “H” (eg C point).
【0044】F/F27は、信号(k) を信号(a) の立ち上
がりエッジ(図2では、第2サイクルのクロックCW1)ご
とにサンプリングし、信号(k) が“H”(点C)の全白
の際は“H”になる信号(l) を出力する。The F / F 27 samples the signal (k) at each rising edge (clock CW1 of the second cycle in FIG. 2) of the signal (a), and the signal (k) becomes "H" (point C). When it is all white, it outputs a signal (l) that becomes "H".
【0045】もし、ある時間の経過後に、データ(j) 中
に1ビット以上の黒が混在するようになれば信号(K) は
“L”(E点)になり、F/F27は“L”になる信号
(l) を出力する。If one or more bits of black are mixed in the data (j) after a certain period of time, the signal (K) becomes "L" (point E) and the F / F27 becomes "L". Signal that becomes
Output (l).
【0046】セレクタ29は、アドレスバス19a 側の信号
(b) かカウンタ28側からの信号(h)かのいずれかを選択
するものであり、F/F27からの信号(l) が“L”なら
ば信号(b)(アドレスバス19a 側) を選択し、該信号(l)
が“H”ならば信号(h)(カウンタ28側)を選択する。The selector 29 is a signal on the side of the address bus 19a.
Either (b) or the signal (h) from the counter 28 side is selected. If the signal (l) from the F / F 27 is "L", the signal (b) (address bus 19a side) is selected. Select the signal (l)
If is "H", the signal (h) (counter 28 side) is selected.
【0047】なお、サイクルスチールを行わない場合、
白データ検出回路26に加わるサイクルスチール検出信号
(e) は“L”であり、信号(k) は信号(j) の状態によら
ずに“L”であり、F/F27の出力も“L”である。When cycle stealing is not performed,
Cycle steal detection signal applied to the white data detection circuit 26
(e) is "L", the signal (k) is "L" regardless of the state of the signal (j), and the output of the F / F27 is also "L".
【0048】従って、セレクタ29はアドレスバス19a 側
を選択するようになり、カウンタ28側は無効になる。 (3) 第1メモリから第2メモリへのサイクルスチール プロセッサ11がサイクルスチールを実行する場合、ま
ず、信号(e) が“H”に転ずる。Therefore, the selector 29 comes to select the address bus 19a side, and the counter 28 side becomes invalid. (3) Cycle steal from the first memory to the second memory When the processor 11 executes the cycle steal, the signal (e) first shifts to "H".
【0049】AND25は該信号(e) と信号(a) の論理積
をとり、カウンタ28の歩進クロック(CK)になる信号(g)
とバッファ32経由で第2メモリ16にリードされるデータ
(j)のライト信号になる信号(g) を出力する。The AND 25 takes the logical product of the signal (e) and the signal (a) and becomes the step clock (CK) of the counter 28 (g)
And the data read to the second memory 16 via the buffer 32
Output the signal (g) that becomes the write signal of (j).
【0050】カウンタ28は、信号(f) の時点でアドレ
スNのロード状態なので、信号(g)の立上がりエッジ
で信号(h) を+1カウントアップする。この+1された
アドレスN+1の信号(h) はセレクタ29を経由し、信号
(i) として第1メモリ15に加わる。Since the counter 28 is in the loaded state of the address N at the time of the signal (f), the counter 28 increments the signal (h) by +1 at the rising edge of the signal (g). The signal (h) of the address N + 1 which has been incremented by +1 passes through the selector 29 and
It is added to the first memory 15 as (i).
【0051】第1メモリ15は、該信号(i) をリードアド
レスとして用いて信号(g) の立上がりエッジでアドレ
スN対応のデータ(j)(D0)をリードし、該データ(j)(D
0)を第2メモリ16にライトする。The first memory 15 reads the data (j) (D0) corresponding to the address N at the rising edge of the signal (g) by using the signal (i) as a read address, and the data (j) (D).
Write 0) to the second memory 16.
【0052】ここで、プロセッサ11のアドレスバス19a
側から読みだした32ビット構成のデータ(j) のビット状
態が全て白(“H”)であることを白データ検出回路26
が検出すると、信号(k) は否定論理の“H”(C点)に
なりプロセッサ11はウエイト状態に切替えられる。Here, the address bus 19a of the processor 11
The white data detection circuit 26 indicates that the bit states of the 32-bit data (j) read from the side are all white (“H”).
When the signal is detected, the signal (k) becomes a negative logic "H" (point C) and the processor 11 is switched to the wait state.
【0053】F/F27は、信号(a) の第2サイクルのク
ロックCW1 の立ち上がりエッジで信号(k) をラッチして
信号(l) を“H”にし、同時に、セレクタ29はプロセッ
サ側(アドレスバス19a)からカウンタ出力側(カウンタ
28側) に切り替えられる。The F / F 27 latches the signal (k) at the rising edge of the clock CW1 in the second cycle of the signal (a) and sets the signal (l) to "H", and at the same time, the selector 29 causes the processor side (address Bus 19a) to counter output side (counter
28 side).
【0054】この時、カウンタ信号(h) は第2サイクル
のクロックCW1 の立上がりエッジでアドレスN+1にカ
ウントアップされているので、セレクタ29が信号(h) を
選択した際は第1メモリアドレスの信号(i) は+1され
てアドレスN+1になり、該アドレスN+1が第1メモ
リ15に指示される。At this time, since the counter signal (h) is counted up to the address N + 1 at the rising edge of the clock CW1 in the second cycle, when the selector 29 selects the signal (h), the signal of the first memory address is output. (i) is incremented by 1 to become the address N + 1, and the address N + 1 is designated to the first memory 15.
【0055】プロセッサ11はカウンタ出力側なので第1
メモリ15は引き続きリード状態のままであり、セレクタ
29が信号(h) を選択したことによる新たなアドレスN+
1に対するアクセス・タイムT経過後に、第1メモリ15
は次アドレスN+1対応のデータ(j)(D1) をリードし、
該データ(j)(D1)を第2メモリ16にライトする。Since the processor 11 is on the counter output side,
Memory 15 is still in the read state and the selector
New address N + due to 29 selecting signal (h)
After the access time T for 1 has elapsed, the first memory 15
Reads the data (j) (D1) corresponding to the next address N + 1,
The data (j) (D1) is written in the second memory 16.
【0056】続く第2サイクルのクロックCW1 の期間中
でも、第1メモリ15から読みだした32ビット構成のデー
タ(j) がオール・ゼロ(全白)(例えば、点D)ならば
前述のウエイト動作が繰り返され、プロセッサ11は第2
サイクルのクロックCW2 に入り、第1メモリ15のアドレ
スはさらに+1されてN+2となり、第1メモリ15はア
ドレスN+2対応のデータ(j)(D2) をリードして第2メ
モリ16にライトする。Even during the subsequent clock CW1 of the second cycle, if the 32-bit data (j) read from the first memory 15 is all zero (all white) (for example, point D), the wait operation described above is performed. Is repeated, and the processor 11 uses the second
When the clock CW2 of the cycle is entered, the address of the first memory 15 is further incremented by 1 to become N + 2, and the first memory 15 reads the data (j) (D2) corresponding to the address N + 2 and writes it to the second memory 16.
【0057】次の第3サイクルのクロックCW2 におい
て、読みだされたデータ(j) に1ビットでも黒(例え
ば、点E)があれば信号(k) は“L”となり、信号(e)
は“L”に転じ、F/F27が出力する信号(l) も“L”
に転じ、プロセッサ11のウエイト状態は終了する。At the clock CW2 of the next third cycle, if even one bit of black (for example, point E) is present in the read data (j), the signal (k) becomes "L" and the signal (e).
Turns to "L", and the signal (l) output from F / F27 is also "L"
Then, the wait state of the processor 11 ends.
【0058】この結果、第3サイクルのクロックCW2 の
終了時点において、カウンタ28が出力するアドレスN+
3は無視され、セレクタの29はプロセッサ11側に戻って
アドレスバス19a 側を選択してアドレスPに切り替わ
り、以後、プロセッサ11は2サイクルを一組とするバス
サイクルに入る。As a result, at the end of the clock CW2 in the third cycle, the address N + output from the counter 28 is output.
3 is ignored, the selector 29 returns to the processor 11 side, selects the address bus 19a side and switches to the address P, and thereafter, the processor 11 enters a bus cycle of a set of two cycles.
【0059】以上に記載したごとく、プロセッサ11で
は、データ(j) が全白であればバスクロック(a) の1サ
イクルでサイクルスチールを実行し、データ(j) が全白
でなければバスクロック(a) の2サイクルでサイクルス
チールを実行する。 (4) 第2メモリのR/W動作 第2メモリ16において、前記プロセッサ11のウエイトサ
イクル中においてもデータ(j) をライトし、アドレスを
歩進することが必要になる。As described above, in the processor 11, if the data (j) is all white, the cycle steal is executed in one cycle of the bus clock (a), and if the data (j) is not all white, the bus clock is executed. Cycle steal is executed in two cycles of (a). (4) R / W operation of the second memory In the second memory 16, it is necessary to write the data (j) and increment the address even during the wait cycle of the processor 11.
【0060】信号(g) は第2メモリ16のR/W制御回路
33とバッファ32とに供給され、バスクロックである信号
(a) がR/W制御回路33にも供給されている。R/W制
御回路33は、信号(a) と信号(g) の入力によりアドレス
発生回路30へライトクロックを出力するとともに、第2
メモリ16にはリード信号とライト信号を出力する。The signal (g) is the R / W control circuit of the second memory 16.
Signal that is supplied to 33 and buffer 32 and is the bus clock
(a) is also supplied to the R / W control circuit 33. The R / W control circuit 33 outputs a write clock to the address generation circuit 30 in response to the input of the signal (a) and the signal (g), and
A read signal and a write signal are output to the memory 16.
【0061】アドレス発生回路30はR/W制御回路33が
出力するライトクロックで動作を開始し、データ(j) を
初期アドレスライト信号でライトすることにより、第2
メモリ16の初期アドレスの指定を行う。The address generating circuit 30 starts its operation with the write clock output from the R / W control circuit 33, and writes the data (j) with the initial address write signal, so that the second
Specify the initial address of the memory 16.
【0062】つぎに、R/W制御回路33の第2メモリ16
へのライト処理は前記ライト信号により行い、アドレス
発生回路30が指定するアドレスの位置に、信号(g) によ
り制御されてバッファ32を通過したデータ(j) が第2メ
モリ16にライトされる。Next, the second memory 16 of the R / W control circuit 33 is
The write processing is performed by the write signal, and the data (j) that has passed through the buffer 32 and is controlled by the signal (g) is written to the second memory 16 at the address position designated by the address generation circuit 30.
【0063】また、第2メモリ16からのリードは、R/
W制御回路33が出力するリード信号により行い、該リー
ドデータをラッチ回路31に一時記憶した後、印刷データ
として記載していないプリンタ・エンジンへ送出し、印
刷を実行する。The read from the second memory 16 is R /
This is performed by a read signal output from the W control circuit 33, the read data is temporarily stored in the latch circuit 31, and then sent to a printer engine not described as print data to execute printing.
【0064】なお、レジスタ部34は、プロセッサ11とプ
リンタ・エンジン間のコマンド/ ステータスの授受を行
い、R/W制御回路33のスタート/ストップ制御を行
う。The register unit 34 sends and receives commands / status between the processor 11 and the printer engine, and controls the start / stop of the R / W control circuit 33.
【0065】[0065]
【発明の効果】以上の説明から明らかなように本発明に
よれば、黒ビットの存在しないデータが読みだされた時
は、データ転送のクロックと基本クロックの周期とを同
一にすることで白データ実現時のデータ転送時間を極力
小さくできるので、プロセッサ自身の余裕時間の生成と
処理速度の向上に寄与するという効果を奏する。As is apparent from the above description, according to the present invention, when the data without the black bit is read, the period of the data transfer clock and the basic clock are made to be the same. Since the data transfer time at the time of data realization can be made as small as possible, it is possible to produce the margin time of the processor itself and contribute to the improvement of the processing speed.
【図1】 本発明の一実施例のプリンタ制御装置の回路
構成を示す図FIG. 1 is a diagram showing a circuit configuration of a printer controller according to an embodiment of the present invention.
【図2】 図1に示す回路のタイミングを表す図FIG. 2 is a diagram showing timing of the circuit shown in FIG.
【図3】 プロセッサが行うサイクルスチールの動作を
説明する図FIG. 3 is a diagram illustrating a cycle stealing operation performed by a processor.
【図4】 従来の一実施例のプリンタ制御装置の回路構
成を示す図FIG. 4 is a diagram showing a circuit configuration of a printer control device of a conventional example.
1 プリンタ制御装置 2 ホストコン
ピュータ 3 コンソール 4 プリンタ・
エンジン 11 プロセッサ 12 リードオン
リメモリ(ROM) 13 ランダムアクセスメモリ(RAM) 14 フォントRO
M 15 第1メモリ 16 第2メモリ 17 周辺インタフェース(I/F) 部 18 プリンタI/F 部 19 プロセッサ
・バス 19a アドレスバス 19b データバス 21 クロック回路 22,25 論理積ゲ
ート(AND) 23 アドレス歩進回路 24 サイクルス
チール検出回路 26 白データ検出回路 27 フリップ・
フロップ回路(F/F) 28 カウンタ 29 セレクタ 30 アドレス発生回路 31 ラッチ回
路 32 バッファ 33 リード/
ライト制御回路 34 レジスタ部1 printer control device 2 host computer 3 console 4 printer
Engine 11 Processor 12 Read only memory (ROM) 13 Random access memory (RAM) 14 Font RO
M 15 First memory 16 Second memory 17 Peripheral interface (I / F) section 18 Printer I / F section 19 Processor bus 19a Address bus 19b Data bus 21 Clock circuit 22,25 Logical AND gate (AND) 23 Address increment Circuit 24 Cycle steal detection circuit 26 White data detection circuit 27 Flip
Flop circuit (F / F) 28 Counter 29 Selector 30 Address generation circuit 31 Latch circuit 32 Buffer 33 Read /
Write control circuit 34 Register section
Claims (1)
る第1メモリから該データを頁単位に記憶するために設
けた第2メモリへ、プロセッサのサイクルスチール動作
を適用してデータ転送を行うデータ処理装置において、 前記プロセッサのサイクルスチール動作をサイクルスチ
ール検出回路で検出し、該検出結果から前記プロセッサ
の基本クロックと同一周期の歩進クロックを生成するア
ドレス歩進回路と、 前記サイクルスチール動作の間、前記歩進クロックのカ
ウントアップを行うカウンタと、 データの転送単位の全白を検出し、全白検出の際には前
記第1メモリのアドレスバスをプロセッサ側からカウン
タの出力側に切替えるための切替え信号を出力する白デ
ータ検出回路と、 該切替え信号が出力された際には、前記プロセッサ側の
アドレスバスをウエイト状態にすると同時に、前記カウ
ンタの出力を第1メモリのアドレスとして選択するセレ
クタと、 を設けたことを特徴とするデータ処理装置。1. A data process for transferring data by applying a cycle steal operation of a processor from a first memory for storing bit-mapped data to a second memory provided for storing the data in page units. In the device, the cycle steal operation of the processor is detected by a cycle steal detection circuit, and an address step circuit that generates a step clock having the same cycle as the basic clock of the processor from the detection result, and during the cycle steal operation, A counter that counts up the stepping clock and a switch for detecting all white in the data transfer unit and switching the address bus of the first memory from the processor side to the output side of the counter when detecting all white A white data detection circuit that outputs a signal, and when the switching signal is output, At the same time when the address bus to the wait state, the data processing apparatus characterized in that a, a selector for selecting the output of said counter as an address of the first memory.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP6040195A JPH08258346A (en) | 1995-03-20 | 1995-03-20 | Data processor |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP6040195A JPH08258346A (en) | 1995-03-20 | 1995-03-20 | Data processor |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH08258346A true JPH08258346A (en) | 1996-10-08 |
Family
ID=13141116
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP6040195A Withdrawn JPH08258346A (en) | 1995-03-20 | 1995-03-20 | Data processor |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH08258346A (en) |
-
1995
- 1995-03-20 JP JP6040195A patent/JPH08258346A/en not_active Withdrawn
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3337684B2 (en) | Printer control system | |
JPH01136770A (en) | Printer | |
JP3656370B2 (en) | Image processing apparatus, information processing apparatus, and printer | |
JPH08258346A (en) | Data processor | |
JPS60141573A (en) | Page printer | |
JP3039503B2 (en) | Control device and control method in printer system | |
JPS58117036A (en) | Print controller | |
JPS6372556A (en) | Scaled-up printing system | |
JPS61129969A (en) | Printing control device | |
JPH0616764Y2 (en) | Dot matrix printer | |
JPS6349824A (en) | Printer control system | |
JPS61193864A (en) | Controlling system for dot printer | |
JP4323622B2 (en) | Recording device | |
JP2664215B2 (en) | Printing system | |
KR200146385Y1 (en) | Inkjet printer system of dual bus structure for bus switch | |
JPH0533913B2 (en) | ||
JPH04336261A (en) | Page printer | |
JP2500136B2 (en) | Double memory type dot printer | |
JPH06149735A (en) | Data reception controller | |
JPH09179813A (en) | Dma transfer device | |
JPS63224952A (en) | Printer of raster scan system | |
JPH0467964A (en) | Page printer printing control method | |
JPH082021A (en) | Page printer device | |
JPH08123749A (en) | Bus controller | |
JPH0361570A (en) | Printer controller |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A300 | Withdrawal of application because of no request for examination |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20020604 |