JPH05307516A - Data transfer controller and semiconductor integrated circuit device - Google Patents

Data transfer controller and semiconductor integrated circuit device

Info

Publication number
JPH05307516A
JPH05307516A JP4137954A JP13795492A JPH05307516A JP H05307516 A JPH05307516 A JP H05307516A JP 4137954 A JP4137954 A JP 4137954A JP 13795492 A JP13795492 A JP 13795492A JP H05307516 A JPH05307516 A JP H05307516A
Authority
JP
Japan
Prior art keywords
transfer
data
data transfer
register
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.)
Granted
Application number
JP4137954A
Other languages
Japanese (ja)
Other versions
JP3490101B2 (en
Inventor
Toshimasa Ikeuchi
敏真 池内
Tatsuhiko Kono
辰彦 河野
Teruichi Watanabe
照一 渡辺
Naomiki Mitsuishi
直幹 三ツ石
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.)
Hitachi Microcomputer System Ltd
Hitachi Ltd
Original Assignee
Hitachi Microcomputer System Ltd
Hitachi Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Microcomputer System Ltd, Hitachi Ltd filed Critical Hitachi Microcomputer System Ltd
Priority to JP13795492A priority Critical patent/JP3490101B2/en
Publication of JPH05307516A publication Critical patent/JPH05307516A/en
Application granted granted Critical
Publication of JP3490101B2 publication Critical patent/JP3490101B2/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Abstract

PURPOSE:To improve the utilization efficiency of resources for the transfer control of a register, etc., for designating a transfer origin and a transfer destination. CONSTITUTION:To resources (transfer destination/transfer origin designation address registers MARA, MARB, transfer counter constitution registers ETCRA, ETCRB, and control registers DTCRA, DTCRB) by one channel in the case of executing a data transfer between memories minimum resources (I/O address registers IOARA, IOARB) are added and as for a data transfer channel actuated by an interruption requested by an input/output circuit, as well it can be used as a 2-channel portion. Whether the resources are utilized by one channel or two channels is determined by the value of bits TRSA1, TRSA2. The respective MARA, MARB have the number of bits corresponding to an address space and the IOARA and the IOARB have the number of bits being smaller than the number of bits corresponding to the address space.

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 control device and, for example, to a technique effective when used in a single-chip microcomputer incorporating the data transfer control device.

【0002】[0002]

【従来の技術】シングルチップマイクロコンピュータ
は、昭和59年11月30日オーム社発行の『LSIハ
ンドブック』P540およびP541に記載されるよう
に、中央処理装置(CPU)を中心にしてプログラム保
持用のROM(リードオンリメモリ)、データ保持用の
RAM(ランダムアクセスメモリ)、およびデータの入
出力を行うための入出力回路などの機能ブロックが1つ
の半導体基板上に形成されてなる。本発明者らは、かか
るシングルチップマイクロコンピュータに前記CPUと
は独立にデータ転送を行なうダイレクトメモリアクセス
コントローラ(DMAC)を内蔵することを検討した。
かかるDMACについて記載された文献の例として、昭
和62年9月(株)日立製作所発行の『日立16ビット
マイクロプロセッサHD641016』P169乃至P
206がある。
2. Description of the Related Art Single-chip microcomputers, as described in "LSI Handbook" P540 and P541 issued by Ohmsha, Ltd. on November 30, 1984, have a central processing unit (CPU) as a center for holding programs. Functional blocks such as a ROM (read only memory), a data holding RAM (random access memory), and an input / output circuit for inputting / outputting data are formed on one semiconductor substrate. The present inventors have considered incorporating a direct memory access controller (DMAC) that transfers data independently of the CPU in such a single-chip microcomputer.
As an example of a document describing such a DMAC, "Hitachi 16-bit Microprocessor HD641016" P169 to P, published by Hitachi, Ltd. in September 1987
There is 206.

【0003】かかるDMACは、CPUのソフトウエア
による起動あるいは外部端子による起動によってメモリ
−メモリ間のデータ転送を行なうほか、タイマあるいは
シリアルコミュニケーションインタフェース(SCI)
などの入出力回路の要求する割込みによっても起動する
ことが可能である。また、DMACはメモリ−メモリ間
のデータ転送を行なうための2本のアドレスレジスタ
(転送元アドレスと転送先アドレスを指定する)を、例
えば4チャネル分内蔵している。前記アドレスレジスタ
はマイクロコンピュータのアドレス空間に相当するビッ
ト数、例えば、アドレス空間が16Mバイトであれば2
4ビットを有する。
Such a DMAC transfers data between memories by activation by CPU software or activation by an external terminal, and also by a timer or serial communication interface (SCI).
It can also be activated by an interrupt requested by an input / output circuit such as. Further, the DMAC incorporates two address registers (designating a transfer source address and a transfer destination address) for performing data transfer between memories, for example, for four channels. The address register has a bit number corresponding to the address space of the microcomputer, for example, 2 if the address space is 16 Mbytes.
It has 4 bits.

【0004】[0004]

【発明が解決しようとする課題】しかしながら、本発明
者らの検討によれば、かかるDMACについて以下の問
題点のあることが明らかにされた。即ち、第1に、前記
CPUのソフトウエアによる起動あるいは外部端子によ
る起動によってメモリ−メモリ間のデータ転送を行なう
場合には、転送元・転送先のアドレスを任意に選択でき
るように、アドレスレジスタはアドレス空間に対応した
ビット数、例えばアドレス空間が16Mバイトの場合は
24ビットが必要であるが、前記割込みによってDMA
Cを起動する場合には、前記データ転送の一方は前記入
出力回路のいずれかであることが大部分であり、かかる
入出力回路のアドレスの領域は多くの場合、アドレス空
間に比較して小さく、例えば256バイトのような連続
した領域とされる。このため、メモリ−入出力回路間な
どのデータ転送の場合には、データ転送元或はデータ転
送先を指定する一方のアドレスの上位ビットは常に同一
とされ、これによって、アドレスレジスタの上位ビット
は無駄になっている。
However, the studies by the present inventors have revealed that the DMAC has the following problems. That is, first, when the data transfer between the memories is performed by the activation by the software of the CPU or the activation by the external terminal, the address register is set so that the source and destination addresses can be arbitrarily selected. The number of bits corresponding to the address space, for example, 24 bits are required when the address space is 16 Mbytes.
When C is activated, one of the data transfers is mostly one of the input / output circuits, and the address area of such an input / output circuit is often smaller than the address space. , A continuous area such as 256 bytes. Therefore, in the case of data transfer between the memory and the input / output circuit, the upper bit of one address that specifies the data transfer source or the data transfer destination is always the same, and the upper bit of the address register is It is in vain.

【0005】第2に、割込みによってDMACを起動す
る要因は前記入出力回路の割込み要因に相応して多く必
要とされることである。例えば、前記SCIの送信完了
割込みによってDMACを起動し、CPUのソフトウエ
アの介在なく連続送信を行なう場合、転送先のアドレス
はSCIの出力データレジスタであり、転送元はCPU
のソフトウエアが予め用意しておく、例えばRAMのア
ドレスである。また、SCIを2チャネル内蔵している
場合にはそれぞれのチャネルについて連続送信・連続受
信を行なうようにすると、前記DMACの4チャネルす
べてが必要となってしまい、タイマの割込みによるデー
タ転送やCPUのソフトウエア・外部端子によるデータ
転送を行なうことができなくなってしまう。
Secondly, a large number of factors are required to activate the DMAC by an interrupt in accordance with the interrupt factors of the input / output circuit. For example, when the DMAC is activated by the SCI transmission completion interrupt and continuous transmission is performed without CPU software intervention, the transfer destination address is the SCI output data register and the transfer source is the CPU.
Is prepared in advance by the software of, for example, the address of RAM. If two channels of SCI are built-in, if continuous transmission / reception is performed for each channel, all four channels of the DMAC are required, and data transfer by a timer interrupt or CPU It becomes impossible to transfer data by software / external pin.

【0006】また、第3に、一つの割込み要因によって
1チャネルの転送しか行なうことができない。このた
め、例えば、タイマの割込みによって、データの出力値
の変更と次のタイマ割込みの設定時間の変更を同時に行
なうことはできず、CPUによりいずれかの変更を行な
わなければならなかった。
Thirdly, only one channel can be transferred due to one interrupt factor. Therefore, for example, it is impossible to change the output value of data and the set time of the next timer interrupt at the same time by the interrupt of the timer, and any change must be made by the CPU.

【0007】第4に、転送元・転送先のアドレスはイン
クリメント・デクリメントあるいは固定であって、固定
の場合はDMACのデータ転送単位である1バイトまた
は1ワードのアドレスに対してリードまたはライトを行
なうことになる。したがって、任意のデータブロックに
対してくり返しデータ転送を行なうようなことはできな
い。
Fourth, the transfer source / transfer destination address is incremented / decremented or fixed, and in the case of being fixed, a read or write is performed with respect to an address of 1 byte or 1 word which is a DMAC data transfer unit. It will be. Therefore, repeated data transfer cannot be performed for any data block.

【0008】本発明の目的は、転送元並びに転送先を指
定するレジスタなどの転送制御のための資源の利用効率
を向上させることができるデータ転送制御装置を提供す
ることにある。本発明の別の目的は、多数の割込み要因
によるデータ転送制御を可能にすることができるデータ
転送制御装置を提供することにある。本発明のその他の
目的は、データ単位以上の任意のデータブロックに対し
て繰返しデータ転送を行うことができるデータ転送制御
装置を提供することにある。
An object of the present invention is to provide a data transfer control device capable of improving the utilization efficiency of resources for transfer control such as a register designating a transfer source and a transfer destination. Another object of the present invention is to provide a data transfer control device capable of controlling data transfer by a large number of interrupt factors. Another object of the present invention is to provide a data transfer control device capable of repeatedly carrying out data transfer to an arbitrary data block of a data unit or more.

【0009】本発明の前記並びにその他の目的と新規な
特徴は本明細書の記述及び添付図面から明らかになるで
あろう。
The above and other objects and novel features of the present invention will be apparent from the description of this specification and the accompanying drawings.

【0010】[0010]

【課題を解決するための手段】本願において開示される
発明のうち代表的なものの概要を簡単に説明すれば下記
の通りである。
The outline of a typical one of the inventions disclosed in the present application will be briefly described as follows.

【0011】すなわち、メモリ−メモリ間のデータ転送
を行なう場合の1チャネル分の資源に、最低限の資源を
追加し、入出力回路の要求する割込みによっても起動す
るデータ転送チャネルとしては、2チャネル分として使
用可能にする。このとき、入出力回路の割込みによって
も起動する2チャンネル分の各データ転送チャネルにお
いて、入出力回路を転送元・転送先として特定するため
のレジスタは、アドレス空間に相応するビット数よりも
少ないビット数を有するようにされる。
That is, the minimum resources are added to the resources for one channel when data is transferred between memories, and there are two data transfer channels that are activated by an interrupt requested by the input / output circuit. Enable as minutes. At this time, in each of the two data transfer channels for two channels which are also activated by the interrupt of the input / output circuit, the register for specifying the input / output circuit as the transfer source / transfer destination has less bits than the number of bits corresponding to the address space. Made to have a number.

【0012】前記入出力回路の要求する割込みによって
も起動する2つのデータ転送チャネルの一方のデータ転
送チャネルの転送カウンタをデータブロック内の転送カ
ウンタとし、他方のデータ転送チャネルの転送カウンタ
をデータブロックの転送カウンタとして利用して、メモ
リ−メモリ間でのデータブロック転送を実現する。
The transfer counter of one data transfer channel of the two data transfer channels, which is also activated by the interrupt requested by the input / output circuit, is used as the transfer counter of the data block, and the transfer counter of the other data transfer channel is used of the data block. It is used as a transfer counter to realize data block transfer between memories.

【0013】前記入出力回路の要求する割込みによって
も起動するようなデータ転送チャネルを利用したデータ
転送モードであって、転送カウンタを、転送回数を計数
するためのカウンタと、転送回数を指定する手段とし、
これによって指定された回数のデータ転送を転送カウン
タとメモリアドレスレジスタとにおける計数動作を利用
して行うデータ転送動作を単位動作とし、単位動作を完
了する毎に、前記メモリアドレスレジスタのアドレスと
カウンタの値を設定値に復帰させて、その単位動作を複
数回繰返すリピート転送モードを実現する。
In a data transfer mode using a data transfer channel that is activated by an interrupt requested by the input / output circuit, a transfer counter, a counter for counting the number of transfers, and means for designating the number of transfers age,
As a unit operation, the data transfer operation of performing the specified number of times of data transfer by using the counting operation of the transfer counter and the memory address register is performed as a unit operation. A repeat transfer mode is realized in which the value is returned to the set value and the unit operation is repeated a plurality of times.

【0014】前記入出力回路の要求する割込みによって
も起動するようなデータ転送チャネルの起動を指示する
ための外部からの単一信号によって与えられる起動要因
を保持する保持手段を設け、前記単一信号によって与え
られる起動要因を前記保持手段に保持することにより、
単一の起動要因に従って、前記複数のデータ転送チャネ
ルを介して複数のデータ転送を行なうマルチ転送モード
を実現する。
Holding means for holding an activation factor given by an external single signal for instructing activation of a data transfer channel that is activated by an interrupt requested by the input / output circuit is provided, and the single signal is provided. By holding the activation factor given by the holding means,
A multi-transfer mode is realized in which a plurality of data transfers are performed via the plurality of data transfer channels according to a single activation factor.

【0015】[0015]

【作用】上記下手段によれば、メモリ−メモリ間のデー
タ転送を行なう場合の1チャネル分の資源に、最低限の
資源を追加し、入出力回路の要求する割込みによっても
起動するデータ転送チャネルとして2チャネル分として
使用可能なデータ転送制御装置は、転送元並びに転送先
を指定するレジスタなどの転送制御のための資源の利用
効率を向上させ、さらに、多数の割込み要因への対応を
容易化する。前記メモリ−メモリ間でのデータブロック
転送、メモリ−入出力回路間でのリピート転送モードや
マルチ転送モードは、データ転送制御装置の応用範囲を
広げる。
According to the above means, the minimum resource is added to the resources for one channel when data is transferred between memories, and the data transfer channel is activated by the interrupt requested by the input / output circuit. The data transfer control device that can be used for two channels as the above improves the utilization efficiency of the resources for transfer control such as the register that specifies the transfer source and the transfer destination, and facilitates the handling of many interrupt factors. To do. The data block transfer between the memories and the repeat transfer mode or the multi-transfer mode between the memory and the input / output circuit broadens the application range of the data transfer control device.

【0016】[0016]

【実施例】図1には本発明にかかるデータ転送制御装置
を内蔵したシングルチップマイクロコンピュータの一実
施例が示される。
DESCRIPTION OF THE PREFERRED EMBODIMENTS FIG. 1 shows an embodiment of a single chip microcomputer incorporating a data transfer control device according to the present invention.

【0017】同図に示されるシングルチップマイクロコ
ンピュータ100は、特に制限はされないものの、本発
明にかかるデータ転送制御装置の一実施例であるDMA
C1、全体の制御を司るCPU(中央処理装置)2、バ
スコントローラ3、ROM4、RAM5、タイマ6、S
CI7、パルス出力装置(PSO)8、及び入出力ポー
ト(IOP)91〜97などの機能ブロックからから構
成され、公知の半導体製造技術により1つの半導体基板
上に形成される。かかるシングルチップマイクロコンピ
ュータの機能ブロックは相互に、アドレス・データ・リ
ード信号・ライト信号・システムクロックなどを含む内
部バス69によって相互に接続されている。CPU2,
DMAC1はバスコントローラ3を介して内部バス69
に接続されている。バスサイクルによるリードおよびラ
イト動作は、CPU2,DMAC1のいずれか一方が行
う。このための調停機能をバスコントローラ3が有して
いる。前記タイマ6は、特に制限されないが、タイマ
A、タイマB、タイマC、及びタイマDによって構成さ
れ、前記SCI7は、特に制限されないが、SCIA及
びSCIBによって構成される。シングルチップマイク
ロコンピュータ100はクロックパルスジェネレータC
PGの端子XTAL,EXTALに接続される水晶発振
子又は外部から入力される外部クロックに基づいて生成
される基準クロックに同期して動作を行なう。この基準
クロックの最小単位をステートと呼ぶ。尚、図において
Vss,Vccは電源端子である。
The single chip microcomputer 100 shown in the figure is not particularly limited, but is a DMA which is an embodiment of the data transfer control device according to the present invention.
C1, CPU (Central Processing Unit) 2, which controls overall control, bus controller 3, ROM 4, RAM 5, timer 6, S
It is composed of functional blocks such as CI 7, pulse output device (PSO) 8 and input / output ports (IOP) 91 to 97, and is formed on one semiconductor substrate by a known semiconductor manufacturing technique. The functional blocks of such a single-chip microcomputer are mutually connected by an internal bus 69 including address, data, read signal, write signal, system clock and the like. CPU2
The DMAC 1 is an internal bus 69 via the bus controller 3.
It is connected to the. Either the CPU 2 or the DMAC 1 performs the read and write operations in the bus cycle. The bus controller 3 has an arbitration function for this purpose. The timer 6 is composed of a timer A, a timer B, a timer C, and a timer D, although not particularly limited, and the SCI 7 is composed of SCIA and SCIB, although not particularly limited. The single chip microcomputer 100 is a clock pulse generator C
The operation is performed in synchronization with a crystal oscillator connected to the terminals XTAL and EXTAL of PG or a reference clock generated based on an external clock input from the outside. The minimum unit of this reference clock is called a state. In the figure, Vss and Vcc are power supply terminals.

【0018】特に制限はされないものの、CPU2のア
ドレス空間は16Mバイトであり、アドレスバスは24
ビットである。ROM3、RAM4、およびDMAC
1、タイマ5、SCI6、パルス出力装置8、入出力ポ
ート91〜97などの機能ブロックのレジスタはCPU
2のアドレス空間上に配置されている。図示はされない
モード信号によって、シングルチップマイクロコンピュ
ータの動作モードが選択され、入出力ポートの一部をア
ドレスバス,データバス,制御信号として使用し、外部
バスを拡張することもできる。そのほかの入出力ポート
もタイマ6,SCI7,DMAC1の入出力端子と兼用
され、ソフトウェアによって端子機能が切り替わるよう
になっている。。
Although not particularly limited, the address space of the CPU 2 is 16 Mbytes and the address bus is 24
Is a bit. ROM3, RAM4, and DMAC
1, the timer 5, the SCI 6, the pulse output device 8, the input / output ports 91 to 97, etc. are registers of the CPU.
It is arranged in two address spaces. An operation mode of the single-chip microcomputer is selected by a mode signal (not shown), and a part of the input / output port can be used as an address bus, a data bus and a control signal to expand the external bus. The other input / output ports are also used as the input / output terminals of the timer 6, SCI7 and DMAC1, and the terminal functions are switched by software. ..

【0019】前記DMAC1は、CPU2によって指定
される起動要因・転送アドレス・転送データ数などに基
づいて、特に制限はされないものの、メモリ−メモリ
間、またはメモリ−入出力回路間でデータ転送制御を行
う。このときのメモリとしては、前記ROM4,RAM
5の他に、図示はされないシングルチップコンピュータ
外部のメモリをも含む。また、入出力回路としては、特
に制限はされないものの、前記タイマ5、SCI6、パ
ルス出力装置8、入出力ポート91〜97などの内蔵レ
ジスタとされる。
The DMAC 1 controls data transfer between the memory and the memory or between the memory and the input / output circuit, although not particularly limited, based on the activation factor, the transfer address, the number of transfer data, etc. designated by the CPU 2. .. The memories at this time are the ROM4 and the RAM.
5, a memory external to the single chip computer (not shown) is also included. Although the input / output circuit is not particularly limited, it is a built-in register such as the timer 5, the SCI 6, the pulse output device 8, and the input / output ports 91 to 97.

【0020】図2には前記DMAC1の一実施例ブロッ
ク図が示される。
FIG. 2 shows a block diagram of an embodiment of the DMAC 1.

【0021】このDMAC1は、メモリ−入出力回路の
データ転送を行なうときはチャネルA,Bの合計2チャ
ネルとして利用され、メモリ−メモリ間のデータ転送を
行なうときは1チャネルとして使用される。チャンネル
Aは、24ビットのメモリアドレスレジスタMARA
(MARA−L,MARA−H,MARA−E)、8ビ
ットのI/OアドレスレジスタIOARA、8ビットの
実行転送カウントレジスタETCRA、8ビットの転送
カウントレジスタTCRA、8ビットの制御レジスタD
TCRAを含む。チャンネルBは、24ビットのメモリ
アドレスレジスタMARB(MARB−L,MARB−
H,MARB−E)、8ビットのI/Oアドレスレジス
タIOARB、8ビットの実行転送カウントレジスタE
TCRB、8ビットの転送カウントレジスタTCRB、
8ビットの制御レジスタDTCRBを含む。これら2チ
ャネルに共通して、24ビットの算術論理演算器ALU
(ALU−L,ALU−H,ALU−E)、アドレスバ
ッファAB(AB−L,AB−H,AB−E)、データ
バッファDB(DB−L,DB−H)、メモリインタフ
ェースMIF(MIF−L,MIF−H,MIF−E,
MIF−C)、そして制御部CONTを備える。制御部
CONTは制御レジスタDTCRA,DTCRBの内容
と、DMAC1外部から与えられる起動要因などに基づ
いて動作し、DMAC1各部の制御を行なう。なお、前
記メモリアドレスレジスタMARA,MARBを総称し
て或はその何れか一方を単んにメモリアドレスレジスタ
MARとも称する。同様に、I/OアドレスレジスタI
OARA,IOARBを単にI/OアドレスレジスタI
OARと、実行転送カウントレジスタETCRA,ET
CRBを単に実行転送カウントレジスタETCRと、転
送カウントレジスタTCRA,TCRBを単に転送カウ
ントレジスタTCRと、そして制御レジスタDTCR
A,DTCRBを単に制御レジスタDTCRとも称す
る。
The DMAC 1 is used as a total of 2 channels of channels A and B when data is transferred from the memory-input / output circuit, and is used as 1 channel when data is transferred from memory to memory. Channel A is a 24-bit memory address register MARA
(MARA-L, MARA-H, MARA-E), 8-bit I / O address register IOARA, 8-bit execution transfer count register ETCRA, 8-bit transfer count register TCRA, 8-bit control register D
Includes TCRA. Channel B is a 24-bit memory address register MARB (MARB-L, MARB-
H, MARB-E), 8-bit I / O address register IOARB, 8-bit execution transfer count register E
TCRB, 8-bit transfer count register TCRB,
It includes an 8-bit control register DTCRB. A 24-bit arithmetic logic unit ALU common to these two channels
(ALU-L, ALU-H, ALU-E), address buffer AB (AB-L, AB-H, AB-E), data buffer DB (DB-L, DB-H), memory interface MIF (MIF- L, MIF-H, MIF-E,
MIF-C), and a control unit CONT. The control unit CONT operates based on the contents of the control registers DTCRA and DTCRB and the activation factor given from the outside of the DMAC1 to control each unit of the DMAC1. The memory address registers MARA and MARB are generically referred to, or one of them is also referred to as a memory address register MAR. Similarly, I / O address register I
OARA and IOARB are simply I / O address registers I
OAR and execution transfer count registers ETCRA, ET
CRB simply executes transfer count register ETCR, transfer count registers TCRA, TCRB simply transfer count register TCR, and control register DTCR
A and DTCRB are also simply referred to as a control register DTCR.

【0022】前記各レジスタ、算術論理演算器ALU、
メモリインタフェースMIFは、DMAC内部バスとし
てのAバス,Bバス等を介して接続されている。さらに
Aバスのビット23〜0はアドレスバッファABに接続
されている。アドレスバッファAB−L,AB−H,A
B−Eは内部バス69に含まれる24ビットのアドレス
バスに接続される。データバッファDB−L,DB−H
は内部バス69に含まれる16ビットのデータバスに接
続される。
Each of the above registers, arithmetic logic unit ALU,
The memory interface MIF is connected via the A bus, the B bus, etc. as the DMAC internal bus. Further, bits 23 to 0 of the A bus are connected to the address buffer AB. Address buffers AB-L, AB-H, A
B-E are connected to a 24-bit address bus included in the internal bus 69. Data buffer DB-L, DB-H
Is connected to a 16-bit data bus included in internal bus 69.

【0023】各レジスタはAバスにデータを出力し、そ
のデータは、アドレスバッファAB、算術論理演算器A
LU、又はメモリインタフェースMIFに転される。算
術論理演算器ALU、メモリインタフェースMIFはB
バスにデータを出力し、そのデータは、各レジスタに転
送可能にされる。CPU2がライトしたデータは、バス
69に含まれる内部データバス,メモリインタフェース
MIF,及びBバスを経由して、各レジスタに書き込み
可能にされる。CPU2がリードすべきデータは、Aバ
ス,メモリインタフェースMIF,及びシングルチップ
マイクロコンピュータ100のバス69に含まれる内部
データバスを経由して、CPU2に読み込まれる。さら
に、転送カウントレジスタTCRはCバスにデータを出
力することができ、実行転送カウントレジスタETCR
と算術論理演算器ALUの下位8ビット(ALU−L)
に転送することができる。算術論理演算器ALUは、A
バスの入力と、Cバスまたは定数値との演算が可能であ
る。なお、図2においてSFTはシフタであり、SEL
はセレクタである。
Each register outputs data to the A bus, and the data is stored in the address buffer AB and the arithmetic logic unit A.
Converted to LU or memory interface MIF. Arithmetic and logic unit ALU, memory interface MIF is B
Data is output to the bus, and the data can be transferred to each register. The data written by the CPU 2 is made writable in each register via the internal data bus included in the bus 69, the memory interface MIF, and the B bus. The data to be read by the CPU 2 is read by the CPU 2 via the A bus, the memory interface MIF, and the internal data bus included in the bus 69 of the single-chip microcomputer 100. Further, the transfer count register TCR can output data to the C bus, and the transfer count register ETCR
And the lower 8 bits of the arithmetic and logic unit ALU (ALU-L)
Can be transferred to. The arithmetic logic unit ALU is A
It is possible to operate the input of the bus and the C bus or a constant value. In FIG. 2, SFT is a shifter and SEL
Is a selector.

【0024】図3には前記DMAC1のレジスタ構成が
チャネルA,チャネルBに分けて示されている。
In FIG. 3, the register configuration of the DMAC 1 is shown separately for channel A and channel B.

【0025】前述の通り、24ビットのメモリアドレス
レジスタMAR、8ビットのI/OアドレスレジスタI
OAR、実行転送カウントレジスタETCR、転送カウ
ントレジスタTCR、制御レジスタDTCRをそれぞれ
2本ずつ有している。制御レジスタDTCRA,DTC
RBにはそれぞれ機能の異なる制御ビットが割り当てら
れる。
As described above, the 24-bit memory address register MAR and the 8-bit I / O address register I
It has two OARs, two execution transfer count registers ETCRs, two transfer count registers TCRs, and two control registers DTCRs. Control registers DTCRA, DTC
Control bits having different functions are assigned to the RBs.

【0026】DMAC1は、メモリ−メモリ間のデータ
転送を行なう1チャネルとして使用するか、それぞれメ
モリ−入出力回路のデータ転送を行なう2チャネルとし
て使用するかを選択することができる。この選択は制御
レジスタDTCRAのビット1、2(TRSA1、TR
SA2ビット)で行ない、前記ビットがすべて1にセッ
トされていると、メモリ−メモリ間のデータ転送を行な
う1チャネルとなり、それ以外の設定ではメモリ−入出
力回路のデータ転送を行なう2チャネルとなる。
The DMAC 1 can be selected to be used as one channel for data transfer between memories or two channels for each data transfer between memory and input / output circuits. This selection is made by bits 1 and 2 of the control register DTCRA (TRSA1, TR
(SA2 bit), and if all the bits are set to 1, it becomes one channel for data transfer between memory and memory, and otherwise, it becomes two channels for data transfer between memory and input / output circuit. ..

【0027】メモリ−メモリ間のデータ転送が選択され
たとき、メモリアドレスレジスタMARAは転送元アド
レスを指定し、メモリアドレスレジスタMARBは転送
先のアドレスを指定するアドレスレジスタとして使用さ
れる。
When the memory-to-memory data transfer is selected, the memory address register MARA is used as an address register for designating a transfer source address, and the memory address register MARB is used as an address register for designating an address of a transfer destination.

【0028】メモリ−入出力回路のデータ転送が選択さ
れたときは、各チャネルにおいて、メモリアドレスレジ
スタMARとI/OアドレスレジスタIOARが転送元
と転送元を指定するアドレスレジスタとして使用され
る。このとき、I/OアドレスレジスタIOARは、必
ず入出力回路のアドレスを指定するアドレスレジスタと
なる。すなわち、転送元が入出力回路のとき、I/Oア
ドレスレジスタIOARが転送元を指定し、メモリアド
レスレジスタMARが転送先のアドレスを指定する。ま
た、転送先が入出力回路のときは、メモリアドレスレジ
スタMARが転送元、I/OアドレスレジスタIOAR
が転送先のアドレスを指定するアドレスレジスタとして
使用される。I/OアドレスレジスタIOARは8ビッ
トであるため、上位16ビットのアドレスは固定値とさ
れ、特に制限はされないものの上位16ビットはすべて
1とされる。この場合、I/OアドレスレジスタIOA
Rで指定できるアドレスはH’FFFF00〜H’FF
FFFF(H’は16進数を意味する)の256バイト
である。従って、斯るアドレスに入出力回路のアドレス
が割り当てられている。
When the data transfer of the memory-input / output circuit is selected, the memory address register MAR and the I / O address register IOAR are used as address registers for designating the transfer source and the transfer source in each channel. At this time, the I / O address register IOAR is always an address register that specifies the address of the input / output circuit. That is, when the transfer source is an input / output circuit, the I / O address register IOAR specifies the transfer source and the memory address register MAR specifies the transfer destination address. When the transfer destination is the input / output circuit, the memory address register MAR is the transfer source, and the I / O address register IOAR.
Is used as an address register that specifies the transfer destination address. Since the I / O address register IOAR has 8 bits, the address of the upper 16 bits is a fixed value, and the upper 16 bits are all 1 although not particularly limited. In this case, I / O address register IOA
Addresses that can be specified by R are H'FFFF00 to H'FF
It is 256 bytes of FFFF (H 'means a hexadecimal number). Therefore, the address of the input / output circuit is assigned to such an address.

【0029】図4にはシングルチップマイクロコンピュ
ータ100のアドレスマップが示される。
FIG. 4 shows an address map of the single chip microcomputer 100.

【0030】特に制限ははされないものの、内蔵ROM
4は32kバイト、内蔵RAM5は1kバイトとされ、
それぞれ、アドレスH’000000〜H’007FF
F、H’FFFB00〜H’FFFEFFに配置され、
タイマ6、SCI7、などの入出力回路及びDMAC1
の各レジスタはアドレスはH’FFFF00〜H’FF
FFFFに配置されている。このとき前記メモリアドレ
スレジスタMARはアドレス空間の全てを指定可能であ
るが、8ビットのI/OアドレスレジスタIOARは内
蔵入出力回路だけをを指定可能であることが理解されよ
う。なお、アドレスH’FFFF00〜H’FFFFF
Fに外部空間を一部設けてもよい。
Built-in ROM, although not particularly limited
4 is 32 kbytes, internal RAM 5 is 1 kbyte,
Addresses H'000000 to H'007FF respectively
It is arranged in F, H'FFFB00-H'FFFEFF,
Input / output circuits such as timer 6 and SCI 7 and DMAC1
The address of each register is H'FFFF00 to H'FF
It is located in FFFF. At this time, it is understood that the memory address register MAR can specify the entire address space, but the 8-bit I / O address register IOAR can specify only the internal input / output circuit. The addresses H'FFFF00 to H'FFFFF
Part of the external space may be provided in F.

【0031】図5乃至図7にはメモリ−入出力回路間で
のデータ転送を行なう場合の制御レジスタDTCRの機
能が示される。
FIGS. 5 to 7 show the function of the control register DTCR when data is transferred between the memory and the input / output circuit.

【0032】制御レジスタDTCRは、転送を許可する
DTEビット、転送終了時に割込みを要求するかしない
かを選択するDIEビット、転送をくり返すか終了する
かを選択するRPEビット、転送サイズを選択するSZ
ビット、転送後にMARのインクリメントを行うかデク
リメントを行うかを選択するIDビット、起動要因を選
択するTRS0〜2ビットによって構成されている。
The control register DTCR selects a DTE bit for permitting transfer, a DIE bit for selecting whether to request an interrupt at the end of transfer, an RPE bit for selecting whether to repeat or end the transfer, and a transfer size. SZ
Bits, an ID bit for selecting whether to increment or decrement MAR after transfer, and TRS0 to 2 bits for selecting an activation factor.

【0033】DTEビットを0にクリアした状態ではD
MAC1の該当チャネルは停止状態とされる。DTEビ
ットを1にセットすると、図7に示されるTRS0〜2
ビットで指定した起動要因が発生したときにデータ転送
が行われる。ここで、TRSA2,TRSA1に夫々1
が設定されているときはメモリ−メモリ間の転送とされ
るので、図7にも示されるように、メモリ−入出力回路
間での転送では、各チャネルにおけるTRS2,TRS
1の双方が共に1に設定される状態は除外されている。
RPEビットが0にクリアされているときには、所定回
の転送が終了して、ETCR:TCR(実行転送カウン
トレジスタETCRと転送カウントレジスタTCRとを
連結して16ビットレジスタとして利用することを意味
する)の内容が0になるとDTEビットは0にクリアさ
れる。
When the DTE bit is cleared to 0, D
The corresponding channel of MAC1 is stopped. When the DTE bit is set to 1, TRS0-2 shown in FIG.
Data transfer is performed when the activation factor specified by the bit occurs. Here, 1 for TRSA2 and 1 for TRSA1, respectively
Since the transfer between the memory and the memory is performed when is set, as shown in FIG. 7, in the transfer between the memory and the input / output circuit, TRS2 and TRS in each channel are set.
A state in which both 1s are set to 1s is excluded.
When the RPE bit is cleared to 0, a predetermined number of transfers are completed and ETCR: TCR (meaning that the execution transfer count register ETCR and the transfer count register TCR are linked and used as a 16-bit register). The DTE bit is cleared to 0 when the content of is 0.

【0034】DTEビットが0にクリアされていると
き、DIEビットが1にセットされていれば、CPU1
に対して転送終了割込みを要求する。DIEビットが0
にクリアされていれば、DTEビットの状態によらず、
CPU1に対しては割込みを要求しない。SZビットビ
ットが0にクリアされている場合にはバイトデータの転
送を行い、SZビットが1にセットされている場合には
ワードデータの転送を行う。RPEビットとDIEビッ
トは、図5に示されるように動作モードを指定する。
When the DTE bit is cleared to 0 and the DIE bit is set to 1, CPU1
Request a transfer end interrupt. DIE bit is 0
If cleared to, regardless of the state of the DTE bit,
No interrupt is requested to the CPU1. If the SZ bit is cleared to 0, byte data is transferred, and if the SZ bit is set to 1, word data is transferred. The RPE bit and the DIE bit specify the operation mode as shown in FIG.

【0035】まず、転送カウンタを実行転送カウントレ
ジスタETCRだけで8ビットレジスタとするか、実行
転送カウントレジスタETCRと転送カウントレジスタ
TCRを連結して16ビットレジスタETCR:TCR
とするかを指定する。RPEビットが0にクリアまたは
DTIEビットが1にセットされているとき、転送カウ
ンタを16ビットレジスタETCR:TCRとし、RP
Eビットが1にセットかつDTIEビットが0にクリア
されているとき、転送カウンタを8ビットレジスタET
CRとし、TCRは転送回数保持に使用される。
First, the transfer counter is made to be an 8-bit register only by the execution transfer count register ETCR, or the execution transfer count register ETCR and the transfer count register TCR are connected to each other to make a 16-bit register ETCR: TCR.
Specify whether or not. When the RPE bit is cleared to 0 or the DTIE bit is set to 1, the transfer counter is a 16-bit register ETCR: TCR, and RP
When the E bit is set to 1 and the DTIE bit is cleared to 0, the transfer counter is set to the 8-bit register ET.
CR and TCR are used to hold the number of transfers.

【0036】1回の転送終了後にはETCRまたはET
CR:TCRのデクリメントが行われると共に、RPE
ビットとDIEビットの設定状態に応じて、メモリアド
レスレジスタMARの保持アドレスがインクリメントま
たはデクリメントされる。このときのメモリアドレスレ
ジスタMARのインクリメントまたはデクリメントの指
定はIDビットで行なう。インクリメントまたはデクリ
メントの値はSZビットによって指定され、バイトサイ
ズのとき1、ワードサイズのとき2がインクリメントま
たはデクリメントされる。
ETCR or ET after completion of one transfer
CR: Decrement of TCR and RPE
The holding address of the memory address register MAR is incremented or decremented according to the setting state of the bit and the DIE bit. The increment or decrement of the memory address register MAR at this time is designated by the ID bit. The increment or decrement value is specified by the SZ bit, and 1 is incremented or decremented when the size is byte and 2 when the size is word.

【0037】転送カウンタとして利用されるETCRま
たはETCR:TCRの前記デクリメント結果が0でな
ければ、次に起動要因が発生するまで、該当チャネルは
待機状態となる。デクリメント結果が0になったとき、
RPEビットが0にクリアまたはDIEビットが1にセ
ットされていれば、DTEビットを自動的に0にクリア
して該当チャネルは停止状態となる。RPEビットが1
にセットかつDIEビットが0にクリアされていれば、
転送カウントレジスタTCRの内容を実行転送カウント
レジスタETCRに転送し、メモリアドレスレジスタM
ARの内容に転送カウントレジスタTCRの内容を加算
または減算して、該当チャネルは待機状態となり、さら
に転送をくり返す。
If the decrement result of ETCR or ETCR: TCR used as a transfer counter is not 0, the corresponding channel will be in a standby state until the next activation factor occurs. When the decrement result becomes 0,
If the RPE bit is cleared to 0 or the DIE bit is set to 1, the DTE bit is automatically cleared to 0 and the corresponding channel is stopped. RPE bit is 1
Set to 0 and the DIE bit is cleared to 0,
The contents of the transfer count register TCR are transferred to the execution transfer count register ETCR, and the memory address register M
The contents of the transfer count register TCR are added to or subtracted from the contents of AR, the corresponding channel enters the standby state, and the transfer is repeated.

【0038】TRS0〜2ビットによって指定される起
動要因は、とくに制限はされないものの、図7に示され
るように、タイマA、タイマB、タイマC、タイマDの
コンペアマッチおよびSCIの送信終了、受信終了であ
る。タイマA〜Dのコンペアマッチ、SCIの送信終了
を起動要因に指定した場合には、メモリアドレスレジス
タMARで示されるアドレスからI/Oアドレスレジス
タIOARで示されるアドレスへの転送が行われる。S
CIの受信終了を起動要因に指定した場合には、I/O
アドレスレジスタIOARで示されるアドレスからメモ
リアドレスレジスタMARで示されるアドレスへの転送
が行われる。これらの起動要因については、前記昭和6
2年9月(株)日立製作所発行の『日立16ビットマイ
クロプロセッサHD641016』などによって公知で
あるので更に詳細な説明は省略する。なお、図5におい
て、記号−は任意値を意味する。
Although the activation factor designated by bits 0 to 2 of TRS is not particularly limited, as shown in FIG. 7, compare match of timer A, timer B, timer C and timer D and transmission end / reception of SCI are performed. That is the end. When the compare match of the timers A to D and the SCI transmission end are designated as the activation factors, the transfer from the address indicated by the memory address register MAR to the address indicated by the I / O address register IOAR is performed. S
When the end of CI reception is specified as the activation factor, I / O
Transfer from the address indicated by the address register IOAR to the address indicated by the memory address register MAR is performed. For these activation factors, refer to Showa 6 above.
Since it is publicly known as "Hitachi 16-bit microprocessor HD641016" issued by Hitachi, Ltd. in September 2000, further detailed description will be omitted. In addition, in FIG. 5, the symbol − means an arbitrary value.

【0039】図8にはメモリ−入出力回路間のデータ転
送における、各レジスタの動作モード毎の機能が示され
る。
FIG. 8 shows the function of each register in each operation mode in the data transfer between the memory and the input / output circuit.

【0040】起動要因がSCI7の受信完了かそれ以外
かによって、メモリアドレスレジスタMARとI/Oア
ドレスレジスタIOARの何れが転送元アドレスを指定
するか転送先アドレスを指定するかが相違される。ノー
マルモード2ではメモリアドレスレジスタMARの内容
が固定値とされる。また、リピートモードでは転送カウ
ンタは8ビット長の実行転送カウントレジスタETCR
とされ、ノーマルモードでは転送カウンタは16ビット
長のETCR:TCRとされる。
Which of the memory address register MAR and the I / O address register IOAR designates the transfer source address or the transfer destination address differs depending on whether the activation factor is the completion of receiving the SCI7 or not. In the normal mode 2, the content of the memory address register MAR is set to a fixed value. In the repeat mode, the transfer counter has an 8-bit execution transfer count register ETCR.
In the normal mode, the transfer counter is 16-bit long ETCR: TCR.

【0041】図9にはDMAC1のメモリ−入出力回路
間のデータ転送におけるノーマルモード1の一例フロー
チャートが示され、図10にはノーマルモード1による
データ転送の一例タイミングチャートが示される。
FIG. 9 shows an example flow chart of the normal mode 1 in the data transfer between the memory and the input / output circuit of the DMAC 1, and FIG. 10 shows an example timing chart of the data transfer in the normal mode 1.

【0042】ノーマルモード1は、連続したメモリ上の
データを、固定した1バイトまたは1ワードの入出力回
路のレジスタとの間でデータ転送を行なうことができ
る。起動要因はタイマのコンペアマッチまたはSCIの
受信完了・送信完了から選択できる。チャネルBは、さ
らに外部端子による起動を選択できる。これらの起動要
因が発生したときに1回(1バイトまたは1ワード)の
転送が行なわれ、転送が終了すると、再び起動要因が発
生するまで待機状態とされる。これを転送カウンタ(E
TCR:TCR)で指定した回数だけ繰り返す。
In the normal mode 1, continuous data on the memory can be transferred between a fixed 1-byte or 1-word register of the input / output circuit. The activation factor can be selected from timer compare match or SCI reception completion / transmission completion. Channel B can also select to be activated by an external terminal. When these activation factors occur, the transfer is performed once (1 byte or 1 word), and when the transfer is completed, the system waits until the activation factor occurs again. This is the transfer counter (E
(TCR: TCR) repeats the number of times specified.

【0043】例えば、SCI7で複数バイトのデータを
送信する場合に応用することができる。この場合、送信
すべきデータをRAM上に用意し、制御レジスタDTC
RのRPEビットを0にクリア、SZビットを0にクリ
ア、IDビットを0にクリア、DIEビットを1にセッ
トし、ETCR:TCRに送信データのバイト数(n)
を、メモリアドレスレジスタMARに前記RAMの先頭
アドレス(e)、I/OアドレスレジスタIOARにS
CI7の送信データレジスタのアドレス(m)をライト
する。この後にDTEビットを1にセットし、SCI7
の送信完了割込みを許可する。SCI7が待機状態であ
ればただちに、送信中であれば、送信完了後に、SCI
送信完了割込みが発生して、DMAC1に起動が要求さ
れる。
For example, it can be applied to the case of transmitting a plurality of bytes of data by SCI7. In this case, the data to be transmitted is prepared on the RAM and the control register DTC
The RPE bit of R is cleared to 0, the SZ bit is cleared to 0, the ID bit is cleared to 0, the DIE bit is set to 1, and the byte number (n) of the transmission data is set in ETCR: TCR.
To the memory address register MAR, the start address (e) of the RAM, and the I / O address register IOAR.
The address (m) of the transmission data register of CI7 is written. After this, the DTE bit is set to 1 and SCI7
Enable the transmission completion interrupt of. If the SCI7 is in the standby state, immediately
A transmission completion interrupt occurs and the DMAC 1 is requested to start.

【0044】DMACに起動が要求されると、第1ステ
ップS1で、DMAC1は起動要因をDMAC1の内部
に保持するとともに、BSC3にバス権要求を行なう。
バス権が獲得できれば、第2ステップS2で、メモリア
ドレスレジスタMARの内容をAバスに出力し、アドレ
スバッファABと算術論理演算器ALUに転送する。算
術論理演算器ALUではSZビットとIDビットで指定
した演算(上記例では+1)を行ない、その結果をメモ
リアドレスレジスタMARに格納する。
When the DMAC is requested to be activated, the DMAC1 holds the activation factor inside the DMAC1 and requests the bus right to the BSC3 in a first step S1.
If the bus right can be acquired, in a second step S2, the contents of the memory address register MAR are output to the A bus and transferred to the address buffer AB and the arithmetic logic unit ALU. The arithmetic and logic unit ALU performs an operation (+1 in the above example) designated by the SZ bit and the ID bit, and stores the result in the memory address register MAR.

【0045】第3ステップS3ではアドレスバッファA
Bのアドレスに従ってメモリリード動作を開始する。ま
た、転送カウンタETCR:TCRの内容をAバスに出
力して、算術論理演算器ALUに転送し、デクリメント
を行なう。第4ステップS4ではI/Oアドレスレジス
タIOARの内容をAバスに出力し、アドレスバッファ
ABに転送する。さらに前記リードしたメモリデータを
データバスからデータバッファDBに格納する。
In the third step S3, the address buffer A
The memory read operation is started according to the address of B. The contents of the transfer counter ETCR: TCR are output to the A bus, transferred to the arithmetic and logic unit ALU, and decremented. In the fourth step S4, the contents of the I / O address register IOAR are output to the A bus and transferred to the address buffer AB. Further, the read memory data is stored in the data buffer DB from the data bus.

【0046】前記デクリメント結果が0であれば、第5
ステップS5でDTEビットをクリアする。また、前記
第4ステップS4でアドレスバッファABに転送された
アドレスにしたがってSCI内蔵レジスタに対するライ
ト動作を開始し、前記データバッファDBの内容をデー
タバスに出力する。第6ステップS6ではライトを完了
してDMAC1は停止する。DIEビットが1にセット
されていれば、CPU2に対してDMAC1の転送完了
割込みを発生する。
If the decrement result is 0, the fifth
In step S5, the DTE bit is cleared. Also, the write operation to the SCI internal register is started according to the address transferred to the address buffer AB in the fourth step S4, and the contents of the data buffer DB are output to the data bus. In the sixth step S6, the write is completed and the DMAC1 is stopped. If the DIE bit is set to 1, a DMAC1 transfer completion interrupt is generated for the CPU2.

【0047】前記デクリメント結果が0でなければ、第
7ステップでは前記第4ステップS4でアドレスバッフ
ァABに転送されたアドレスにしたがってSCI内蔵レ
ジスタに対するライト動作を開始し、前記データバッフ
ァDBの内容をデータバスに出力する。これに続く第8
ステップではライトを完了してDMAC1は待機状態と
なり、再度起動要因が発生するまで停止する。
If the decrement result is not 0, in the seventh step, the write operation to the SCI built-in register is started according to the address transferred to the address buffer AB in the fourth step S4, and the contents of the data buffer DB are written into the data. Output to the bus. 8th following this
In the step, the write is completed and the DMAC 1 enters the standby state, and stops until the activation factor occurs again.

【0048】転送終了時には、メモリアドレスレジスタ
MARは最後のデータの次のアドレスとされ、転送カウ
ンタETCR:TCRは0とされている。転送カウンタ
ETCR:TCRの最大値は65536である。なお、
特に制限はされないものの、メモリ・入出力回路のリー
ドライトは2ステートで行なうものとした。
At the end of the transfer, the memory address register MAR is set to the address next to the last data, and the transfer counter ETCR: TCR is set to 0. The maximum value of the transfer counter ETCR: TCR is 65536. In addition,
Although not particularly limited, the read / write of the memory / input / output circuit is performed in two states.

【0049】図11にはDMAC1のメモリ−入出力回
路間のデータ転送としてノーマルモード1によるSCI
受信のフローチャートが示される。
FIG. 11 shows the SCI in the normal mode 1 as the data transfer between the memory and the input / output circuit of the DMAC1.
A reception flow chart is shown.

【0050】このフローチャートにおいて、第2ステッ
プS2ではI/OアドレスレジスタIOARの内容をA
バスを経由してアドレスバッファABに転送し、第3ス
テップS3ではそのアドレスにしたがってSCI内蔵レ
ジスタのリードを開始し、第4ステップS4ではメモリ
アドレスレジスタMARの内容をAバスを介してアドレ
スバッファABに転送すると共に算術論理演算器ALU
でそのメモリアドレスを更新してこれを再度これをメモ
リアドレスレジスタMARに格納し、第5ステップS5
及び第7ステップS7では前記SCI内蔵レジスタから
リードしたデータをアドレスバッファABのメモリアド
レスにしたがって書込みを行い、その外は図9の処理と
同様とされる。
In this flowchart, in the second step S2, the contents of the I / O address register IOAR are set to A
The data is transferred to the address buffer AB via the bus, the reading of the SCI built-in register is started according to the address in the third step S3, and the content of the memory address register MAR is written in the address buffer AB via the A bus in the fourth step S4. To the arithmetic logic unit ALU
Then, the memory address is updated and stored again in the memory address register MAR, and the fifth step S5
Then, in the seventh step S7, the data read from the SCI built-in register is written according to the memory address of the address buffer AB, and other than that is the same as the processing of FIG.

【0051】図12にはDMAC1のメモリ−入出力回
路間のデータ転送としてノーマルモード2による動作の
一例フローチャートが示される。
FIG. 12 is a flowchart showing an example of the operation in the normal mode 2 for data transfer between the memory and the input / output circuit of the DMAC1.

【0052】ノーマルモード2は、固定した1バイトま
たは1ワードのメモリ上のデータと、入出力回路のレジ
スタ間でデータ転送を行なうことができる。起動要因は
タイマのコンペアマッチまたはSCIの受信完了・送信
完了から選択できる。これらの起動要因が発生した時1
回(1バイトまたは1ワード)の転送を行ない、転送が
終了すると、再び起動要因が発生するまで待機状態とさ
れる。これを転送カウンタ(ETCR:TCR)で指定
した回数だけ繰り返す。メモリアドレスレジスタMAR
の値が固定値とされる他はノーマルモード1と同様であ
る。DIEビットが1にセットされているため、転送カ
ウンタ(ETCR:TCR)で指定した回数の転送が終
了すると、CPU2に割込みが要求される。
In normal mode 2, data can be transferred between fixed 1-byte or 1-word data on the memory and the register of the input / output circuit. The activation factor can be selected from timer compare match or SCI reception completion / transmission completion. When these activation factors occur 1
The transfer is performed once (1 byte or 1 word), and when the transfer is completed, it is put in a standby state until the activation factor occurs again. This is repeated the number of times specified by the transfer counter (ETCR: TCR). Memory address register MAR
Is the same as the normal mode 1 except that the value of is fixed. Since the DIE bit is set to 1, when the transfer for the number of times specified by the transfer counter (ETCR: TCR) is completed, the CPU 2 is requested to make an interrupt.

【0053】DMAC1に起動が要求されると、第1ス
テップS1では、DMAC1は起動要因をDMAC1の
内部に保持するとともに、BSC3にバス権要求を行な
う。バス権が獲得できれば、第2ステップS2で、メモ
リアドレスレジスタMARの内容をAバスに出力し、ア
ドレスバッファABに転送する。
When the DMAC1 is requested to be activated, in the first step S1, the DMAC1 holds the activation factor inside the DMAC1 and makes a bus right request to the BSC3. If the bus right can be acquired, the content of the memory address register MAR is output to the A bus and transferred to the address buffer AB in the second step S2.

【0054】第3ステップS3ではアドレスバッファA
Bが保持するアドレスでリード動作を開始する。また、
転送カウンタETCR:TCRの内容をAバスに出力
し、算術論理演算器ALUに転送し、デクリメントを行
なう。第4ステップS4ではI/OアドレスレジスタI
OARの内容をAバスに出力し、アドレスバッファAB
に転送する。第3ステップを介してリードしたデータを
データバスからデータバッファDBに格納する。
In the third step S3, the address buffer A
The read operation is started at the address held by B. Also,
Transfer counter ETCR: The contents of TCR are output to the A bus, transferred to the arithmetic and logic unit ALU, and decremented. In the fourth step S4, the I / O address register I
Outputs the contents of OAR to the A bus and outputs the address buffer AB
Transfer to. The data read through the third step is stored in the data buffer DB from the data bus.

【0055】前記デクリメント結果が0であれば、第5
ステップS5ではDTEビットをクリアする。また、ア
ドレスバッファABのアドレスにしたがってライト動作
を開始し、前記データバッファDBの内容をデータバス
に出力する。これに続く第6ステップS6ではライトを
完了してDMAC1は停止する。DIEビットが1にセ
ットされていれば、CPU2に対してDMAC1の転送
完了割込みを発生する。
If the decrement result is 0, the fifth
In step S5, the DTE bit is cleared. Further, the write operation is started according to the address of the address buffer AB, and the content of the data buffer DB is output to the data bus. In the subsequent sixth step S6, the write is completed and the DMAC1 is stopped. If the DIE bit is set to 1, a DMAC1 transfer completion interrupt is generated for the CPU2.

【0056】前記デクリメント結果が0でなければ、第
7ステップS7ではアドレスバッファABのアドレスに
したがってライト動作を開始し、前記データバッファD
Bの内容をデータバスに出力する。これに続く第8ステ
ップS8でライト動作を完了してDMAC1は待機状態
となり、起動要因が発生するまで停止される。
If the decrement result is not 0, in the seventh step S7, the write operation is started according to the address of the address buffer AB, and the data buffer D
The contents of B are output to the data bus. In the eighth step S8 subsequent to this, the write operation is completed and the DMAC1 enters the standby state and is stopped until the activation factor occurs.

【0057】転送終了時に転送カウンタETCR:TC
Rは0となっている。なお、転送カウンタETCR:T
CRの最大値は前記同様に65536であり、また、メ
モリ・入出力回路間のリードライトも2ステートで行わ
れる。
At the end of transfer, transfer counter ETCR: TC
R is 0. The transfer counter ETCR: T
The maximum value of CR is 65536 as described above, and read / write between the memory and the input / output circuit is also performed in two states.

【0058】図13にはDMAC1のメモリ−入出力回
路間のデータ転送におけるリピートモードの一例動作フ
ローチャートが示され、図14にはそのリピートモード
によるデータ転送動作の一例タイミングチャートが示さ
れる。
FIG. 13 is a flow chart showing an example of the repeat mode in data transfer between the memory and the input / output circuit of the DMAC 1, and FIG. 14 is a timing chart showing an example of the data transfer operation in the repeat mode.

【0059】リピートモードは、連続したメモリ上のデ
ータと、固定した1バイトまたは1ワードの入出力回路
のレジスタとの間で繰り返しデータ転送を行なうことが
できる動作モードである。起動要因はタイマ6のコンペ
アマッチまたはSCI7の受信完了・送信完了から選択
できる。これらの起動要因が発生した時1回(1バイト
または1ワード)の転送を行ない、転送が終了すると、
再び起動要因が発生するまで待機状態とされる。これを
転送カウンタ(ETCR)で指定した回数だけ繰り返す
と、メモリアドレスレジスタMARと実行転送カウント
レジスタETCRの内容を回復し、さらに転送を繰り返
す。
The repeat mode is an operation mode in which data can be repeatedly transferred between continuous data on the memory and a fixed register of 1 byte or 1 word of the input / output circuit. The activation factor can be selected from compare match of timer 6 or reception completion / transmission completion of SCI7. When these activation factors occur, transfer is performed once (1 byte or 1 word), and when the transfer ends,
It is in a standby state until the activation factor occurs again. When this is repeated the number of times specified by the transfer counter (ETCR), the contents of the memory address register MAR and the execution transfer count register ETCR are restored, and the transfer is further repeated.

【0060】例えば、シングルチップマイクロコンピュ
ータ100が制御するステッピングモータの励磁データ
をパルス出力装置8を介して出力する場合に適用するこ
とができる。この場合、例えば、タイマAのコンペアマ
ッチを起動要因に選択する。出力すべきデータをRAM
5上に用意する。このデータは、例えばステッピングモ
ータの1回転分の励磁データである。
For example, it can be applied when the excitation data of the stepping motor controlled by the single chip microcomputer 100 is output through the pulse output device 8. In this case, for example, compare match of timer A is selected as the activation factor. RAM to output data
Prepare on top of 5. This data is, for example, excitation data for one rotation of the stepping motor.

【0061】制御レジスタDTCRのRPEビットを1
にセット、SZビットを0にクリアし、IDビットを0
にクリアし、DIEビットを0にクリアし、実行転送カ
ウントレジスタETCR及び転送カウントレジスタTC
Rに送信データのバイト数(n)を、メモリアドレスレ
ジスタMARに前記RAM5の先頭アドレス(e)、I
/OアドレスレジスタIOARにパルス出力装置8内蔵
の出力データレジスタのアドレス(m)をライトする。
この後にDTEビットを1にセットし、タイマAのコン
ペアマッチ割込みを許可する。タイマAのコンペアマッ
チが発生すると、パルス出力装置8からパルスが出力さ
れるとともに、DMAC1に起動が要求される。
Set the RPE bit of the control register DTCR to 1
Set to 0, clear SZ bit to 0, and set ID bit to 0
, The DIE bit is cleared to 0, and the execution transfer count register ETCR and transfer count register TC
The number of bytes of transmission data (n) is stored in R, and the start address (e) of the RAM 5 is stored in the memory address register MAR
The address (m) of the output data register built in the pulse output device 8 is written in the / O address register IOAR.
After this, the DTE bit is set to 1 to enable the timer A compare match interrupt. When the compare match of the timer A occurs, the pulse output device 8 outputs a pulse and the DMAC 1 is requested to start.

【0062】DMAC1に起動が要求されると、第1ス
テップS1では、DMAC1は起動要因をDMAC1内
部に保持するとともに、BSC3にバス権要求を行な
う。バス権が獲得できれば、第2ステップS2で、メモ
リアドレスレジスタMARの内容をAバスに出力し、こ
れをアドレスバッファABと算術論理演算器ALUに転
送する。算術論理演算器ALUではSZビットとIDビ
ットで指定した演算(この例では+1)を行ない、その
結果をメモリアドレスレジスタMARに書き戻す。
When the DMAC1 is requested to be activated, in the first step S1, the DMAC1 holds the activation factor inside the DMAC1 and makes a bus right request to the BSC3. If the bus right can be acquired, in a second step S2, the contents of the memory address register MAR are output to the A bus and transferred to the address buffer AB and the arithmetic logic unit ALU. The arithmetic logic unit ALU performs an operation (+1 in this example) designated by the SZ bit and the ID bit, and writes the result back to the memory address register MAR.

【0063】第3ステップS3では、アドレスバッファ
ABの保持アドレスにしたがってリード動作を開始す
る。また、転送カウンタETCRの内容をAバスに出力
して、算術論理演算器ALUに転送し、デクリメントを
行なう。第4ステップS4ではI/Oアドレスレジスタ
IOARの内容をAバスに出力し、アドレスバッファA
Bに転送する。また、前記リードを開始したデータをデ
ータバスからデータバッファDBに格納する。
In the third step S3, the read operation is started according to the address held in the address buffer AB. Further, the contents of the transfer counter ETCR are output to the A bus, transferred to the arithmetic logic unit ALU, and decremented. In the fourth step S4, the contents of the I / O address register IOAR are output to the A bus and the address buffer A
Transfer to B. Further, the data which has started the reading is stored in the data buffer DB from the data bus.

【0064】前記デクリメントの結果が0であれば、第
5ステップS5に進み、転送カウントレジスタTCRの
内容をCバスに出力して、実行転送カウントレジスタE
TCRに転送するとともに、算術論理演算器ALUに入
力する。一方、メモリアドレスレジスタMARの内容を
Aバスに出力して、算術論理演算器ALUに与え、SZ
ビットとIDビットに基づいく演算を行って、メモリア
ドレスレジスタMARの内容を初期値(e)に戻す。ま
た、前記ABの保持アドレスにしたがってライト動作を
開始し、前記データバッファDBの内容をデータバスに
出力する。
If the result of the decrement is 0, the process proceeds to the fifth step S5, the contents of the transfer count register TCR are output to the C bus, and the execution transfer count register E is output.
The data is transferred to the TCR and also input to the arithmetic logic unit ALU. On the other hand, the contents of the memory address register MAR are output to the A bus and given to the arithmetic and logic unit ALU, and SZ
An operation is performed based on the bit and the ID bit to return the content of the memory address register MAR to the initial value (e). Further, the write operation is started according to the address held in the AB, and the content of the data buffer DB is output to the data bus.

【0065】前記デクリメント結果が0でなければ、第
6ステップS6へ進み、アドレスバッファABの保持ア
ドレスにしたがってライト動作を開始し、前記データバ
ッファDBの内容をデータバスに出力する
If the decrement result is not 0, the process proceeds to the sixth step S6, the write operation is started according to the address held in the address buffer AB, and the contents of the data buffer DB are output to the data bus.

【0066】第7ステップS7ではライトを完了してD
MAC1は待機状態となり、起動要因が発生するまで転
送動作が停止される。実行転送カウントレジスタETC
Rと転送カウントレジスタTCRの最大値は256であ
る。なお、前記同様に、メモリ・入出力回路間でのリー
ド・ライトは2ステートで行なうものとした。タイマの
コンペアマッチ及びパルス出力装置については、昭和6
3年2月(株)日立製作所発行の『日立8/16ビット
マイクロコンピュータ周辺LSI』P538乃至P59
3などにより公知であるのでその詳細な説明は省略す
る。
In the seventh step S7, the writing is completed and D
MAC1 is in a standby state, and the transfer operation is stopped until an activation factor occurs. Execution transfer count register ETC
The maximum value of R and the transfer count register TCR is 256. As in the above, the read / write between the memory and the input / output circuit is performed in two states. For timer compare match and pulse output device, see 6
February, "Hitachi 8 / 16-bit microcomputer peripheral LSI" published by Hitachi, Ltd. P538 to P59
Since it is publicly known, the detailed description thereof will be omitted.

【0067】図15乃至図18にはメモリ−メモリ間の
データ転送を行なう場合の制御レジスタDTCRA,D
TCRBの機能が示される。
FIGS. 15 to 18 show control registers DTCRA and DTC for memory-to-memory data transfer.
The function of TCRB is shown.

【0068】メモリ−メモリ間のデータ転送はTRSA
1,TRAS2をいずれも1にセットすることによって
選択される。メモリアドレスレジスタMARAで示され
るアドレスとメモリアドレスレジスタMARBで示され
るアドレスとの間でデータ転送が行なわれる。このとき
I/OアドレスレジスタIOARA及びIOARBは使
用されない。
Data transfer between memories is TRSA.
Both 1 and TRAS2 are selected by setting them to 1. Data transfer is performed between the address indicated by memory address register MARA and the address indicated by memory address register MARB. At this time, the I / O address registers IOARA and IOARB are not used.

【0069】メモリ−メモリ間におけるデータ転送のた
めの制御レジスタは、転送を許可するDTEAビット、
転送終了時に割込みを要求するかしないかを選択するD
IEAビット、転送サイズを選択するSZAビット、転
送後にMARA,MARBのインクリメントを行うかデ
クリメントを行うかまたは固定とするかを選択するRP
EA,RPEB及びIDA,IDBの各ビット、転送モ
ードを選択するTRSA0ビット、転送中断を示すDT
EBビット、メモリ−メモリ転送モード2(ブロック転
送モード)のとき、転送元・転送先のいずれをブロック
領域とするかを選択するDIEBビット、起動要因を選
択するTRSB0〜TRSB2ビットから構成されてい
る。
The control register for data transfer between the memories is a DTEA bit which permits the transfer,
Select whether to request an interrupt at the end of transfer D
IEA bit, SZA bit for selecting transfer size, and RP for selecting whether to increment, decrement, or fix MARA and MARB after transfer
Each bit of EA, RPEB and IDA, IDB, TRSA0 bit for selecting transfer mode, DT indicating transfer interruption
In the memory-memory transfer mode 2 (block transfer mode), the EB bit is composed of a DIEB bit for selecting which of a transfer source and a transfer destination is a block area, and TRSB0 to TRSB2 bits for selecting an activation factor. ..

【0070】DTEAビットを0にクリアした状態では
DMAC1は停止状態とされる。DTEAビットを1に
セットすると、TRSB0〜2ビットで指定した起動要
因が発生したときにデータ転送が行われる。所定回数の
転送が終了して、転送カウンタETCRA:TCRAの
内容が0になると、DTEAビットは0にクリアされ
る。
When the DTEA bit is cleared to 0, the DMAC1 is stopped. When the DTEA bit is set to 1, data transfer is performed when the activation factor designated by the bits TRSB0 to 2 occurs. When the content of the transfer counter ETCRA: TCRA becomes 0 after the transfer of a predetermined number of times is completed, the DTEA bit is cleared to 0.

【0071】DTEAビットが0にクリアされていると
き、DIEAビットが1にセットされていれば、CPU
1に対して転送終了割込みを要求する。DIEAビット
が0にクリアされていれば、DTEAビットの状態によ
らず、CPU1に対しては割込みを要求しない。
If the DIEA bit is set to 1 when the DTEA bit is cleared to 0, the CPU
Request a transfer end interrupt to 1. If the DIEA bit is cleared to 0, no interrupt is requested to the CPU 1 regardless of the state of the DTEA bit.

【0072】前記SZAビットが0にクリアされている
場合にはバイトデータの転送が行われ、SZAビットが
1にセットされている場合にはワードデータの転送が行
われる。
If the SZA bit is cleared to 0, byte data is transferred, and if the SZA bit is set to 1, word data is transferred.

【0073】RPEA,RPEBビットとIDA,ID
Bビットは、メモリアドレスレジスタMARA,MAR
Bの動作を指定する。RPEA,PREBビットが0に
クリアされているときはメモリアドレスレジスタMAR
A,MARBの値は固定値とされる。RPEA,RPE
Bビットが1にセットされているときに、IDA,ID
Bビットが0にクリアされていればメモリアドレスレジ
スタMARA,MARBはインクリメントされ、またそ
のときIDA,IDBビットが1にセットされているれ
ば、メモリアドレスレジスタMARA,MARBはデク
リメントされる。インクリメントまたはデクリメントの
値はSZAビットによって指定され、バイトサイズのと
きは1、ワードサイズのときは2がインクリメントまた
はデクリメントされる。メモリアドレスレジスタMAR
A,MARBの動作はそれぞれ独立に指定できる。
RPEA, RPEB bits and IDA, ID
B bit is a memory address register MARA, MAR
Specify the operation of B. When the RPEA and PREB bits are cleared to 0, the memory address register MAR
The values of A and MARB are fixed values. RPEA, RPE
IDA, ID when B bit is set to 1
If the B bit is cleared to 0, the memory address registers MARA and MARB are incremented, and if the IDA and IDB bits are set to 1 at that time, the memory address registers MARA and MARB are decremented. The increment or decrement value is designated by the SZA bit, and 1 is incremented or decremented when the size is byte and 2 when the size is word. Memory address register MAR
The operations of A and MARB can be designated independently.

【0074】TRSA0ビットは、図17に示されるよ
うに、メモリ−メモリ転送モード1とするか、メモリ−
メモリ転送モード2(ブロック転送モード)とするかを
選択する。TRSB0〜2ビットによって指定される起
動要因は、とくに制限はされないものの、図18に示さ
れるように、オートリクエスト、外部端子、及び前記タ
イマA、タイマB、タイマC、タイマDのコンペアマッ
チである。但し、メモリ−メモリ転送モード1とメモリ
−メモリ転送モード2(ブロック転送モード)では選択
できる起動要因が異なっている。
The TRSA0 bit is set to the memory-memory transfer mode 1 as shown in FIG.
The memory transfer mode 2 (block transfer mode) is selected. The activation factor designated by bits 0 to 2 of TRSB is not particularly limited, but as shown in FIG. 18, it is an auto request, an external terminal, and a compare match of the timer A, timer B, timer C, and timer D. .. However, the start factors that can be selected are different between the memory-memory transfer mode 1 and the memory-memory transfer mode 2 (block transfer mode).

【0075】図19にはメモリ−メモリ間のデータ転送
における各レジスタの動作モード毎の機能が示される。
FIG. 19 shows the function of each register for each operation mode in data transfer between memories.

【0076】メモリ−メモリ間転送におけるモード1及
びメモリ−メモリ間転送におけるモード2(ブロック転
送モード)はともに、メモリアドレスレジスタMAR
A,MARBがそれぞれ転送先・転送元を指定するため
のアドレスレジスタとされ、ETCRA:TCRAが転
送カウンタになる。メモリ−メモリ転送モード2(ブロ
ック転送モード)ではさらに、ブロックサイズを指定す
るためにレジスタTCRBを使用し、ブロック内のデー
タをカウントするためにレジスタETCRBを使用す
る。I/OアドレスレジスタIOARA,IOARBは
使用しない。特に制限されないが、ブロックの最大値は
256(バイトまたはワード)である。
Both the mode 1 in the memory-memory transfer and the mode 2 (block transfer mode) in the memory-memory transfer are the memory address register MAR.
A and MARB are respectively address registers for designating a transfer destination and a transfer source, and ETCRA: TCRA serves as a transfer counter. The memory-memory transfer mode 2 (block transfer mode) further uses the register TCRB to specify the block size and the register ETCRB to count the data in the block. The I / O address registers IOARA and IOARB are not used. Although not particularly limited, the maximum value of the block is 256 (byte or word).

【0077】図20にはメモリ−メモリ転送モード1の
一例動作フローチャートが示され、図21にはメモリ−
メモリ転送モード1の一例動作タイミングチャートが示
される。
FIG. 20 shows an example operation flowchart of the memory-memory transfer mode 1, and FIG.
An example operation timing chart of the memory transfer mode 1 is shown.

【0078】メモリ−メモリ転送モード1のオートリク
エストは、CPU1がDTEAビットを1にセットする
と自動的に転送要求が発生して、転送を行なう動作モー
ドである。バーストモードでは一旦DMAC1がバス権
を獲得すると、転送カウンタETCRA:TCRAで指
定した回数の転送を終了するまで転送を行ない、サイク
ルスチールモードでは一回の転送毎にCPU2にバス権
を開放しつつ、転送を行なう。なお、バーストモードで
は、外部端子による最優先の割込み要求(NMI)が発
生すると、DTEAビットを1にセットしたまま、DT
EBビットを0にクリアして、転送を中断し、CPU2
にバス権を開放する。その後、CPU2がDTEAビッ
トまたはDTEBビットを1にセットすると、これに基
づいて転送を再開する。
The memory-memory transfer mode 1 auto request is an operation mode in which when the CPU 1 sets the DTEA bit to 1, a transfer request is automatically generated and transfer is performed. In the burst mode, once the DMAC1 acquires the bus right, the transfer is performed until the transfer specified by the transfer counter ETCRA: TCRA is completed. In the cycle steal mode, the bus right is released to the CPU2 at each transfer. Transfer. In the burst mode, when the highest priority interrupt request (NMI) from the external terminal occurs, the DTEA bit remains set to 1 and the DT
The EB bit is cleared to 0, the transfer is interrupted, and the CPU2
Open the bus right to. After that, when the CPU 2 sets the DTEA bit or the DTEB bit to 1, the transfer is restarted based on this.

【0079】外部端子による転送要求ではDTEAビッ
トを1にセットした後、TRSB0〜2で指定した信号
が外部端子(DREQ)に発生すると、転送を一回行な
い、一回の転送が終了すると、指定した信号が外部端子
(DREQ)に発生するまで待機状態となる。これを転
送カウンタETCRA:TCRAで指定された回数だけ
繰り返す。
In the transfer request from the external terminal, after the DTEA bit is set to 1 and the signal specified by TRSB0 to 2 is generated in the external terminal (DREQ), the transfer is performed once, and when the one transfer ends, the transfer is designated. It goes into a standby state until the generated signal is generated at the external terminal (DREQ). This is repeated the number of times designated by the transfer counter ETCRA: TCRA.

【0080】DMAC1のこのような動作については、
前記昭和62年9月(株)日立製作所発行『日立16ビ
ットマイクロプロセッサHD641016』P169乃
至P206などによって公知であるので更に詳細な説明
は省略する。
Regarding such operation of the DMAC1,
Since it is known from "Hitachi 16-bit Microprocessor HD641016" P169 to P206, etc., issued by Hitachi, Ltd. in September 1987, detailed description thereof will be omitted.

【0081】図22にはメモリ−メモリ転送モード2の
一例動作フローチャートが示される。
FIG. 22 shows an example operation flowchart of the memory-memory transfer mode 2.

【0082】メモリ−メモリ転送モード2(ブロック転
送モード)では、データブロックサイズをレジスタTC
RB,ETCRBに格納し、データ転送の回数を転送カ
ウンタETCRA:TCRAに指定する。
In the memory-memory transfer mode 2 (block transfer mode), the data block size is set in the register TC.
It is stored in RB and ETCRB, and the number of times of data transfer is designated in the transfer counter ETCRA: TCRA.

【0083】メモリ−メモリ転送モード2(ブロック転
送モード)では、転送要因が発生すると、メモリアドレ
スレジスタMARAで示されるアドレスから、メモリア
ドレスレジスタMARBで示されるアドレスへデータ転
送を行ない、そのメモリアドレスレジスタMARA,M
ARBの保持値を、RPEA,IDA,SZA,RPE
B,IDB,SZBビットの指定に従ってインクリメン
トまたはデクリメントまたは固定とされる。さらに、レ
ジスタETCRBの値をデクリメントする。これをレジ
スタETCRBの値が0になるまで繰り返す。レジスタ
ETCRBの値が0になると、リピートモード同様にレ
ジスタTCRBの内容をレジスタETCRBに転送し、
メモリアドレスレジスタMARBの内容を初期状態に戻
すとともに、転送カウンタETCRA:TCRAの内容
をデクリメントする。デクリメント結果が0でなければ
起動要因が発生するまで待機状態となる。起動要因が発
生する毎に上記動作を転送カウンタETCRA:TCR
Aが0になるまで繰り返していく。
In the memory-memory transfer mode 2 (block transfer mode), when a transfer factor occurs, data transfer is performed from the address indicated by the memory address register MARA to the address indicated by the memory address register MARB. MARA, M
ARB holding value is RPEA, IDA, SZA, RPE
It is incremented, decremented, or fixed according to the designation of B, IDB, and SZB bits. Further, the value of the register ETCRB is decremented. This is repeated until the value of the register ETCRB becomes 0. When the value of the register ETCRB becomes 0, the contents of the register TCRB are transferred to the register ETCRB as in the repeat mode,
The contents of the memory address register MARB are returned to the initial state, and the contents of the transfer counter ETCRA: TCRA are decremented. If the decrement result is not 0, the process waits until an activation factor occurs. The above operation is performed every time an activation factor occurs. Transfer counter ETCRA: TCR
Repeat until A becomes 0.

【0084】図23には前記算術論理演算器ALU、シ
フタSFT、及びセレクタSELの具体的な一例回路図
が示される。
FIG. 23 shows a specific example circuit diagram of the arithmetic and logic unit ALU, the shifter SFT, and the selector SEL.

【0085】算術論理演算器ALUは、特に制限されな
いが、デクリメンタDECRMT、加算回路ADD、及
びゼロ検出回路ZEROによって構成される。算術論理
演算器ALUは24ビットで構成され、下位8ビット
(ALU−L)は、Aバス(A0〜A7)からのデー
タ、さらに定数値またはCバス(C0〜C7)からの入
力が選択され、かつこれらを上位に1ビットシフトする
かしないか、反転するかしないかが選択されて、この選
択結果が入力される。上位16ビット(ALU−H、A
LU−E)はAバス(A8〜A23)からのデータと、
定数値を入力する。定数値は反転するかしないかが選択
される。ビット8はビット7からのシフト出力と定数値
のいずれかが選択される。
The arithmetic and logic unit ALU is composed of a decrementer DECRMT, an adder circuit ADD, and a zero detection circuit ZERO, although not particularly limited thereto. The arithmetic and logic unit ALU is composed of 24 bits, and the lower 8 bits (ALU-L) are selected from the data from the A bus (A0 to A7), the constant value or the input from the C bus (C0 to C7). , And whether or not to shift them by 1 bit to the upper side or invert them is selected, and the selection result is input. Upper 16 bits (ALU-H, A
LU-E) contains data from the A bus (A8 to A23),
Enter a constant value. Whether or not to invert the constant value is selected. For bit 8, either the shift output from bit 7 or a constant value is selected.

【0086】定数値は、メモリアドレスレジスタMAR
の演算のときビット0に、転送カウンタETCR:TC
Rの演算のときビット8に、転送カウンタTCRの演算
のときにビット16に、それぞれ1が入力され、それ以
外の場合またはそれ以外のビットには0が入力される。
Cバスからの入力は、リピートモードでETCRが0に
なったとき、またはブロック転送モードでETCRBが
0になったときに選択されてTCRまたはTCRBの内
容が入力され、Aバスから入力されるメモリアドレスレ
ジスタMARAまたはMARBの内容と演算される。ワ
ードサイズデータを転送している場合の、メモリアドレ
スレジスタMARのインクリメント・デクリメント及び
上記演算時に、シフトが選択される。デクリメントまた
は減算を行なう場合に反転が選択される。ゼロ検出回路
ZEROは上位8ビットが0であり、かつ転送カウンタ
を8ビット長としているとき、または上位16ビットが
0であるとき、1を出力して、転送終了を検出する。
The constant value is stored in the memory address register MAR.
, The transfer counter ETCR: TC
1 is input to the bit 8 during the operation of R, 1 is input into the bit 16 when the operation of the transfer counter TCR is performed, and 0 is input to the bit 16 in other cases or other bits.
Memory input from the C bus is selected when the ETCR becomes 0 in the repeat mode or when the ETCRB becomes 0 in the block transfer mode and the contents of the TCR or TCRB are input, and the memory input from the A bus. It is calculated with the contents of the address register MARA or MARB. When the word size data is being transferred, the shift is selected during the increment / decrement of the memory address register MAR and the above calculation. Inversion is selected when decrementing or subtracting. The zero detection circuit ZERO outputs 1 when the upper 8 bits are 0 and the transfer counter has an 8-bit length, or when the upper 16 bits are 0, to detect the end of the transfer.

【0087】図24にはレジスタの具体的な一例回路図
が示される。
FIG. 24 shows a concrete example circuit diagram of the register.

【0088】I/OアドレスレジスタIOARは8ビッ
トのレジスタであり、システムクロックφが1レベルの
期間にAバスに出力可能であり、システムクロックφが
0レベルの期間にBバスから入力可能である。I/Oア
ドレスレジスタIOARをAバスに出力する場合、上位
16ビットのAバスには1レベルを出力するように構成
している。これによってI/OアドレスレジスタIOA
Rの指定アドレスはH’FFFF00〜H’FFFFF
Fとなる。特に制限はされないものの、Aバスをシステ
ムクロックφが0レベルの期間にPチャネル型MOSに
よってプリチャージするようにしてもよい。このように
すればクロックゲートを削除できる。
The I / O address register IOAR is an 8-bit register and can be output to the A bus while the system clock φ is 1 level and can be input from the B bus while the system clock φ is 0 level. .. When the I / O address register IOAR is output to the A bus, one level is output to the upper 16 bits of the A bus. This allows the I / O address register IOA
The designated address of R is H'FFFF00 to H'FFFFF
It becomes F. Although not particularly limited, the A bus may be precharged by the P channel type MOS during the period when the system clock φ is 0 level. In this way, the clock gate can be deleted.

【0089】転送カウントレジスタTCRは8ビットの
レジスタであり、システムクロックφが1レベルの期間
にAバスに出力可能であり、システムクロックφが0レ
ベルの期間にBバスから入力可能であり、さらにでシス
テムクロックφが1レベルの期間にCバスに出力可能あ
る。
The transfer count register TCR is an 8-bit register and can be output to the A bus while the system clock φ is at 1 level, and can be input from the B bus while the system clock φ is at 0 level. Therefore, the system clock φ can be output to the C bus during the period of 1 level.

【0090】実行転送カウントレジスタETCRは8ビ
ットのレジスタであり、システムクロックφが1レベル
の期間にAバスに出力可能であり、システムクロックφ
が0レベルの期間にBバスから入力可能であり、さらに
でシステムクロックφが1レベルの期間にCバスから入
力可能ある。
The execution transfer count register ETCR is an 8-bit register and can output to the A bus while the system clock φ is at 1 level.
Can be input from the B bus during the 0 level period, and can be input from the C bus during the 1 level level of the system clock φ.

【0091】図示はされないものの、メモリアドレスレ
ジスタMARはI/OアドレスレジスタIOARと同じ
構成のものが24ビット分設けられている。クロックゲ
ートに相当するものは必要ない。
Although not shown, the memory address register MAR has the same structure as the I / O address register IOAR for 24 bits. No clock gate equivalent is required.

【0092】図25にはデータバッファ及びメモリイン
タフェースの具体的な一例回路図が示される。
FIG. 25 shows a specific example circuit diagram of the data buffer and the memory interface.

【0093】本実施例においては、特に制限はされない
ものの、CPU2がDMAC1のレジスタをリードライ
トする場合には、8ビットバス即ち内部データバスの上
位8ビットD15〜8を使用するものとした。従って、
データバッファDBの下位側(DB−L)はDMAC1
内部バスとは接続されていない。CPU2からライトさ
れるデータは8ビットずつデータバッファDB−Hを介
して、Bバスに出力され、下位アドレスを判定して選択
されたレジスタに書き込まれる。CPU2がリードした
場合には、下位アドレスを判定して、選択されたレジス
タからAバスにデータが出力され、前記Aバスの内容が
メモリインタフェースMIFで選択される。かかるデー
タはデータバッファDB−Hを介して、内部データバス
に出力され、CPU2に読み込まれる。
In the present embodiment, although not particularly limited, when the CPU 2 reads / writes the register of the DMAC 1, the 8-bit bus, that is, the upper 8 bits D15-8 of the internal data bus is used. Therefore,
The lower side (DB-L) of the data buffer DB is DMAC1.
Not connected to the internal bus. The data written from the CPU 2 is output to the B bus via the data buffer DB-H by 8 bits, and is written to the selected register by determining the lower address. When the CPU 2 reads, the lower address is determined, data is output from the selected register to the A bus, and the contents of the A bus are selected by the memory interface MIF. Such data is output to the internal data bus via the data buffer DB-H and read by the CPU 2.

【0094】DMAC1がデータ転送時にリードしたデ
ータは、内部データバスから一旦データバッファDBに
格納され、その後ライトデータとして内部データバスに
出力する。リード時に内部データバスの上位・下位のい
ずれに有効データが出力されているか、およびライト時
に内部データバスの上位・下位のいずれに有効データを
出力するかは、バスコントローラ3が指示する。例え
ば、16ビットのメモリまたは入出力回路をバイトサイ
ズでリード・ライトした場合、偶数アドレスであれば内
部データバス上位に、奇数アドレスであれば下位にデー
タを出力するものとする。また、8ビットのメモリまた
は入出力回路をリード・ライトした場合にはかならず、
内部データバス上位にデータを出力するものとする。か
かる8ビットのメモリまたは入出力回路をワードサイズ
でリードした場合には偶数アドレス・奇数アドレスの順
にリードを連続して2回行なう。ライトについても同様
である。特に制限はされないものの、ワードデータは偶
数アドレスから始まるものに限定する。なお、DMAC
1はバイトサイズデータはデータバッファの上位に、ワ
ードサイズデータは上位・下位に格納するものとする。
The data read by the DMAC 1 at the time of data transfer is temporarily stored in the data buffer DB from the internal data bus and then output as write data to the internal data bus. The bus controller 3 indicates whether the valid data is output to the upper or lower portion of the internal data bus at the time of reading, and to the upper or lower portion of the internal data bus at the time of writing. For example, when a 16-bit memory or an input / output circuit is read / written in byte size, data is output to the upper part of the internal data bus if the address is even, and to the lower part if the address is odd. In addition, when reading / writing 8-bit memory or input / output circuit,
Data shall be output to the upper part of the internal data bus. When such an 8-bit memory or an input / output circuit is read in word size, the reading is continuously performed twice in the order of even addresses and odd addresses. The same applies to lights. Although not particularly limited, word data is limited to data starting from an even address. The DMAC
1 stores byte size data in the upper part of the data buffer and word size data in the upper and lower parts.

【0095】図26にはDMAC1の制御部CONTに
含まれる要因保持手段の具体的な一例回路図が示され
る。
FIG. 26 shows a specific example circuit diagram of the factor holding means included in the control unit CONT of the DMAC 1.

【0096】要因保持手段は、要因選択回路(セレク
タ)201,202、要因保持回路(フリップフロッ
プ)211,212、優先順位判定回路(エンコーダ)
221、タイミング制御回路231、及びクリア制御回
路241によって構成される。要因選択回路201,2
02、要因保持回路211,212、優先順位判定回路
221はDMAC1の起動を制御する。タイミング制御
回路231は前記動作タイミングを生成する。なお、同
図において記号*はそれが付されていない信号の反転信
号であることを意味する。
The factor holding means includes factor selection circuits (selectors) 201 and 202, factor holding circuits (flip-flops) 211 and 212, and priority determination circuits (encoders).
221, a timing control circuit 231, and a clear control circuit 241. Factor selection circuits 201, 201
02, the factor holding circuits 211 and 212, and the priority determination circuit 221 control the activation of the DMAC1. The timing control circuit 231 generates the operation timing. In the figure, the symbol * means that it is an inversion signal of the signal without it.

【0097】選択可能な起動要因はDMAC1の外部か
ら、要因選択回路201,202に入力される。前記T
RS0〜TRS0ビットに基づいて、これらの起動要因
が選択されて、要因保持回路211,212に入力され
る。DTEビットが0にクリアされている場合には、要
因保持回路211,212は常にリセットされている。
また、メモリ−メモリ転送モードのとき、チャネルBの
要因保持回路212はリセットされている。
The selectable activation factors are input to the factor selection circuits 201 and 202 from outside the DMAC 1. The T
These activation factors are selected based on the RS0 to TRS0 bits and input to the factor holding circuits 211 and 212. When the DTE bit is cleared to 0, the factor holding circuits 211 and 212 are always reset.
In the memory-memory transfer mode, the channel B factor holding circuit 212 is reset.

【0098】要因保持回路211,212のいずれかが
1にセットされれば、優先順位判定回路221はバスコ
ントローラ3にバス要求を行ない、タイミング制御回路
231に動作指示を行なう。さらに、チャネルA、Bと
もに要因保持回路211,212が1にセットされてい
れば、チャネルAを優先する。
If any of the factor holding circuits 211 and 212 is set to 1, the priority determination circuit 221 makes a bus request to the bus controller 3 and gives an operation instruction to the timing control circuit 231. Furthermore, if the factor holding circuits 211 and 212 of both channels A and B are set to 1, channel A is prioritized.

【0099】タイミング制御回路231はバス権アクノ
リッジ信号が1レベルになると、レジスタDTCRA,
DTCRBの値に基づいて、前記の動作フローチャート
の動作を制御する。クリア制御回路241は、タイミン
グ制御回路231から指示される起動要因クリア信号
と、優先順位判定回路221が指示するチャネル、及び
TRS2〜TRS0ビットに基づいて、各起動要求元
(タイマ・SCI)に起動要因のクリア信号を与える。
また、実行中の要因保持回路211,212をリセット
する。
The timing control circuit 231 receives the register DTCRA, when the bus right acknowledge signal becomes 1 level.
The operation of the above operation flowchart is controlled based on the value of DTCRB. The clear control circuit 241 is activated by each activation request source (timer / SCI) based on the activation factor clear signal instructed by the timing control circuit 231, the channel instructed by the priority determination circuit 221, and the TRS2 to TRS0 bits. Give a clear signal of the factor.
In addition, the factor holding circuits 211 and 212 that are being executed are reset.

【0100】チャネルA,Bが同一の起動要因を選択し
た場合には、2つの要因保持回路211,212がセッ
トされ、優先度の高いチャネルAが最初に実行され、実
行中に起動要因とチャネルAの要因保持回路211をク
リアするが、チャネルBの要因保持回路212はセット
されたままであり、チャネルAの実行終了後にチャネル
Bのデータ転送を実行することができる。
When the same activation factor is selected for the channels A and B, the two factor holding circuits 211 and 212 are set, the channel A with the higher priority is executed first, and the activation factor and the channel are executed during execution. Although the factor holding circuit 211 of A is cleared, the factor holding circuit 212 of channel B remains set and the data transfer of channel B can be executed after the execution of channel A is completed.

【0101】図27にはDMAC1の他の実施例が示さ
れる。
FIG. 27 shows another embodiment of the DMAC1.

【0102】同図に示されるDMAC1は、夫々チャネ
ルA、Bからなるレジスタ群を2組み有し、これらに共
通のデータバッファDB(DB−L,DB−H)、算術
論理演算器ALU(ALU−L,ALU−H,ALU−
E)、シフタSFT、セレクタSEL、メモリインタフ
ェースMIF(MIF−L,MIF−H,MIF−E,
MIF−C)、及びアドレスバッファAB(AB−L,
AB−H,AB−E)を有している。図2のDMAC1
を2組設ける場合に比べて、ALUなどの回路を共通化
できる分だけ、DMAC1の論理的・物理的な規模を縮
小できる。
The DMAC 1 shown in the figure has two sets of register groups each consisting of channels A and B, and has a data buffer DB (DB-L, DB-H) and an arithmetic logic unit ALU (ALU) common to them. -L, ALU-H, ALU-
E), shifter SFT, selector SEL, memory interface MIF (MIF-L, MIF-H, MIF-E,
MIF-C) and address buffers AB (AB-L,
AB-H, AB-E). DMAC1 of FIG.
As compared with the case where two sets are provided, the logical and physical scale of the DMAC 1 can be reduced by the amount that the circuits such as the ALU can be shared.

【0103】図27のDMAC1において各チャネルの
優先順位は、チャネル1A>1B>2A>2Bの順に高
くする。このとき、制御部CONTの要因保持手段は、
図26で説明したような要因選択回路と要因保持回路を
4個設け、これに応じて優先順位判定回路の論理を変更
すれば、容易に実現できる。
In the DMAC1 of FIG. 27, the priority of each channel is set higher in the order of channels 1A>1B>2A> 2B. At this time, the factor holding means of the control unit CONT is
This can be easily realized by providing four factor selection circuits and factor holding circuits as described with reference to FIG. 26 and changing the logic of the priority determination circuit accordingly.

【0104】図28にはDMAC1の状態遷移図が示さ
れる。
FIG. 28 shows a state transition diagram of the DMAC1.

【0105】前記動作タイミングチャートの説明では、
メモリ及び入出力回路共に2ステートでリード・ライト
するものとしたが、外部に接続するメモリや入出力回路
などからウェイトが要求される場合がある。ウェイトが
要求されているか否かはバスコントローラ3が判定し
て、DMAC1に指示する。DMAC1の制御部CON
Tはウェイトが指示されると、リードサイクルであれば
TR1とTR2の間にTRWを挿入し、ライトサイクル
であればTW1とTW2の間にTWWを挿入する。TR
WおよびTWWでは、データバッファDB以外のDMA
C1の各部は無操作状態とされる。また、8ビットのメ
モリまたは入出力回路をワードサイズでリード・ライト
した場合に、偶数アドレス・奇数アドレス順にリード・
ライトを連続して2回行なう場合などは、1回目のリー
ド・ライトの最初のサイクルをTR1・TW1とし、2
回めのリード・ライトの最後のサイクルをTR2・TW
2とし、その他のサイクルは全てTRW・TWWとし
て、DMAC1が認識する。
In the explanation of the operation timing chart,
Although both the memory and the input / output circuit are read / written in two states, the wait may be requested from the externally connected memory or input / output circuit. The bus controller 3 determines whether or not the wait is requested, and instructs the DMAC 1. Control unit CON of DMAC1
When T is instructed to wait, TRW is inserted between TR1 and TR2 in the read cycle, and TWW is inserted between TW1 and TW2 in the write cycle. TR
For W and TWW, DMA other than data buffer DB
Each part of C1 is in a non-operation state. When an 8-bit memory or input / output circuit is read / written in word size, it is read / written in order of even addresses and odd addresses.
When writing is performed twice consecutively, the first cycle of the first read / write is set to TR1 · TW1 and 2
TR2 TW for the last cycle of the second read / write
2, and all other cycles are recognized as TRW / TWW, and the DMAC 1 recognizes them.

【0106】図29には前記バスコントローラ3の一例
ブロック図が示される。
FIG. 29 shows an example block diagram of the bus controller 3.

【0107】このバスコントローラ3は、アドレスデコ
ーダADRDEC、論理積回路ANDLOG、制御レジ
スタCONTREG、ウェイト制御回路WSCONT、
及びアクセス制御回路ACSCONTによって構成され
る。アドレスデコーダADRDECはCPU2又はDM
AC1が出力するアドレス信号を入力し、内蔵機能ブロ
ックの選択信号を生成すると共に、アドレス信号を出力
する。制御レジスタCONTREGは、前記バス幅指定
レジスタBSWCR、アクセスステート指定レジスタA
STCR、ウェイトステートコントロール許可指定レジ
スタWSCER、及びアドレスマルチプレクス指定レジ
スタMPXCRを備え、CPU2の制御でその内容が任
意に設定されるようになっている。論理積回路ANDL
OGは、アドレスデコーダADRDECを通して供給さ
れるアドレス信号と制御レジスタCONTREGに含ま
れるレジスタBSWCR,ASTCR,WSCER,M
PXCRの値の基づいて、ウェイト許可、バス幅、アク
セスステート、及びアドレスマルチプレクスに関する制
御信号を生成して、アクセス制御回路ACSCONTに
与える。ウェイト制御回路WSCONTは内蔵機能ブロ
ックなどから発せられるウェイト信号を受けて所要ステ
ート数に応ずるウェイト要求をアクセス制御回路ACS
CONTに与える。アクセス制御回路ACSCONT
は、前記論理積回路ANDLOG及びウェイト制御回路
WSCONTなどから与えられる信号を受けて、アクセ
ス制御のための各種ストローブ信号AS,HRD,LR
D,HWR,LWR、並びにCPU2やDMAC1のた
めのバッファ制御信号などを生成する。
The bus controller 3 includes an address decoder ADRDEC, an AND circuit ANDLOG, a control register CONTREG, a wait control circuit WSCONT,
And an access control circuit ACSCONT. Address decoder ADRDEC is CPU2 or DM
The address signal output from AC1 is input, a selection signal for the built-in functional block is generated, and the address signal is output. The control register CONTREG includes the bus width designation register BSWCR and the access state designation register A.
An STCR, a wait state control permission designation register WSCER, and an address multiplex designation register MPXCR are provided, and their contents can be arbitrarily set under the control of the CPU 2. AND circuit ANDL
The OG is an address signal supplied through the address decoder ADRDEC and the registers BSWCR, ASTCR, WSCER, M included in the control register CONTREG.
Based on the value of PXCR, control signals relating to wait permission, bus width, access state, and address multiplex are generated and given to the access control circuit ACSCONT. The wait control circuit WSCONT receives a wait signal issued from a built-in functional block or the like and issues a wait request corresponding to the required number of states to the access control circuit ACS.
Give to CONT. Access control circuit ACSCONT
Receives various signals provided from the AND circuit ANDLOG, the wait control circuit WSCONT, etc., and various strobe signals AS, HRD, LR for access control.
It generates D, HWR, LWR, and buffer control signals for the CPU 2 and the DMAC 1.

【0108】DMAC1にデータ転送起動要因が発生す
ると、DMACバス要求の信号が1レベルにされる。こ
のバス要求に対して、所定のタイミングでバスコントロ
ーラ3はDMAC1にバス使用を許可して、DMACバ
ス許可の信号を1レベルとする。それ以外の時はCPU
2がバスを使用できる。バスの起動信号やアドレス入力
は、CPU2の出力とDMAC1の出力との間でマルチ
プレクスされている。すなわち、DMACバス許可の信
号が1レベルであれば、DMAC1からのバスの起動信
号やアドレス入力を受付け、それ以外はCPU2からの
バスの起動信号やアドレス入力を受付ける。バスコント
ローラ3の内部の動作は、CPU2によるアクセスとD
MAC1によるアクセスの何れの場合も同一とされる。
リード/ライト中にCPU2/DMAC1に与えられる
べきバッファ制御信号もマルチプレクスされる。
When a data transfer activation factor occurs in DMAC1, the DMAC bus request signal is set to 1 level. In response to this bus request, the bus controller 3 permits the DMAC 1 to use the bus at a predetermined timing, and sets the DMAC bus permission signal to 1 level. CPU otherwise
2 can use the bus. The bus activation signal and address input are multiplexed between the output of the CPU 2 and the output of the DMAC 1. That is, if the DMAC bus permission signal is at the 1 level, the bus activation signal or address input from the DMAC 1 is accepted, and otherwise the bus activation signal or address input from the CPU 2 is accepted. The internal operation of the bus controller 3 includes access by the CPU 2 and D
It is the same in both cases of access by MAC1.
The buffer control signal to be given to the CPU2 / DMAC1 during read / write is also multiplexed.

【0109】図30乃至図34には前記制御信号HH、
LH、HL、LLの出力仕様が示される。
30 to 34, the control signal HH,
The output specifications of LH, HL, and LL are shown.

【0110】サイズはSZビットで指定される転送デー
タのサイズであり、また、バス幅は転送の対象となるメ
モリまたは入出力回路のデータ幅である。T1は第1ス
テート、T2は第2ステート、T3は第3ステート、T
wはウェイトステートである。図において記号−は対応
ステートが無いことを意味する。ステートは特に制限は
されないものの2ステートと、3ステート以上でリード
またはライトを行う2種類とされる。なお、4ステート
以上は3ステートにウェイトを要求することによって実
現する。A0はアドレスバスのビット0である。特に制
限はされないものの、ワードサイズデータは必ず偶数ア
ドレスから始まるものとされる。DMAC1のリード及
びライト時には、かかる制御信号HH、LH、HL、L
Lに基づいて、図25のデータバッファDB−L,DB
−Hの制御が行われる。CPU2のデータバッファも同
様に構成することができる。
The size is the size of transfer data designated by SZ bits, and the bus width is the data width of the memory or input / output circuit to be transferred. T1 is the first state, T2 is the second state, T3 is the third state, T
w is a wait state. In the figure, the symbol − means that there is no corresponding state. The states are not particularly limited, but there are two states and two types of reading or writing with three or more states. In addition, 4 states or more are realized by requesting a wait for 3 states. A0 is bit 0 of the address bus. Although not particularly limited, word size data always starts with an even address. At the time of reading and writing of the DMAC1, the control signals HH, LH, HL, L
Based on L, the data buffers DB-L, DB of FIG.
-H control is performed. The data buffer of the CPU 2 can be similarly configured.

【0111】図35には本発明に係るデータ転送制御装
置を適用したシングルチップマイクロコンピュータの他
の実施例ブロック図が示される。
FIG. 35 is a block diagram of another embodiment of a single chip microcomputer to which the data transfer control device according to the present invention is applied.

【0112】図35に示されるシングルチップマイクロ
コンピュータ101は、図1のシングルチップマイクロ
コンピュータに対して、上記説明に係るDMAC1を2
個設けた点が相違される。便宜上双方のDMAC1をD
MAC1−1とDMAC1−2に分けて記す。このと
き、バスコントローラ33は、前記バスコントローラ3
に対して、DMACバス要求信号、DMACバス許可信
号を2組とし、マルチプレクサの入力を増加すれば、容
易に実現することができる。バス権調停における優先順
位は、例えばDMAC1−1>DMAC1−2とされ
る。斯る優先順位の制御は、バスコントローラ33の調
停機能に含まれる。
The single chip microcomputer 101 shown in FIG. 35 is different from the single chip microcomputer of FIG.
The difference is that they are provided individually. For convenience, both DMAC1 are D
It is described separately for MAC1-1 and DMAC1-2. At this time, the bus controller 33 uses the bus controller 3
On the other hand, if two sets of the DMAC bus request signal and the DMAC bus permission signal are provided and the number of inputs of the multiplexer is increased, this can be easily realized. The priority order in bus arbitration is, for example, DMAC1-1> DMAC1-2. Such priority control is included in the arbitration function of the bus controller 33.

【0113】図36には図35のシングルチップマイク
ロコンピュータ101を応用した制御システムの一例と
してプリンタ制御システムが示される。
FIG. 36 shows a printer control system as an example of a control system to which the single chip microcomputer 101 of FIG. 35 is applied.

【0114】プリンタ制御システムは、シングルチップ
マイクロコンピュータ101、セントロニクスインタフ
ェース回路301、バッファRAM302、キャラクタ
ジェネレートROM(CGROM)303、印字データ
出力用バッファとされる出力バッファRAM304、プ
リンタの印字ヘッド305含み、それらがシングルチッ
プマイクロコンピュータ101の外部バス306を介し
て接続され、さらに印字ヘッドを機械的に移動させるた
めのラインフィードモータ307及びキャリッジリター
ンモータ308を含んで構成される。これらのモータ3
07及び308は、それぞれタイマ6の出力並びにパル
ス出力装置8の出力によって駆動制御される。ラインフ
ィードモータ307及びキャリッジリターンモータ30
8は、特に制限はされないものの、ステッピングモータ
である。
The printer control system includes a single-chip microcomputer 101, a Centronics interface circuit 301, a buffer RAM 302, a character generate ROM (CGROM) 303, an output buffer RAM 304 serving as a print data output buffer, and a print head 305 of the printer. They are connected via an external bus 306 of the single-chip microcomputer 101, and further include a line feed motor 307 and a carriage return motor 308 for mechanically moving the print head. These motors 3
07 and 308 are driven and controlled by the output of the timer 6 and the output of the pulse output device 8, respectively. Line feed motor 307 and carriage return motor 30
Reference numeral 8 is a stepping motor, although not particularly limited.

【0115】図示しないホストプロセッサから送られて
くるデータはセントロニクスインタフェース回路301
を経由して、バッファRAM302に転送される。かか
る転送にDMAC1−1のチャネル1(チャネル1Aと
1Bを併せた構成)をメモリ−メモリ転送モード1の外
部端子による起動によって使用することができる。セン
トロニクスインタフェース回路301のアドレスをメモ
リアドレスレジスタMARAに設定し、バッファRAM
302のアドレスをメモリアドレスレジスタMARBに
設定し、転送回数を転送カウンタETCRB:TCRB
に設定する。例えば、メモリアドレスレジスタMARA
は固定、メモリアドレスレジスタMARBはインクリメ
ントモードとし、セントロニクスインタフェース回路3
01のストローブ信号をDREQ1端子に入力すればよ
い。
Data sent from a host processor (not shown) is the Centronics interface circuit 301.
Is transferred to the buffer RAM 302 via. The channel 1 of the DMAC 1-1 (a configuration in which the channels 1A and 1B are combined) can be used for such a transfer by starting the external terminal of the memory-memory transfer mode 1. The address of the Centronics interface circuit 301 is set in the memory address register MARA, and the buffer RAM
The address of 302 is set in the memory address register MARB, and the transfer count is set to the transfer counter ETCRB: TCRB.
Set to. For example, the memory address register MARA
Is fixed, the memory address register MARB is set to the increment mode, and the Centronics interface circuit 3
The 01 strobe signal may be input to the DREQ1 terminal.

【0116】CPU2は、前記バッファRAM302に
格納されたデータに基づいてキャラクタジェネレートR
OM303を参照し、前記データをフォントデータに変
換する。データを例えば、一行分変換し、印字データバ
ッファRAM304に格納する。
The CPU 2 generates a character R based on the data stored in the buffer RAM 302.
The OM 303 is referred to and the data is converted into font data. For example, the data is converted for one line and stored in the print data buffer RAM 304.

【0117】その後タイマA61とDMAC1−1のチ
ャネル2A、2Bに起動をかけ、パルス出力を行ない、
キャリッジリターンモータ308を駆動する。キャリッ
ジリターンモータ308の回転によって、印字ヘッド3
05が移動する。印字ヘッド305の移動に合わせて、
印字データバッファ304から印字データヘッド305
へのデータ転送を行なう。印字データは1フォントの各
列のデータを1ブロックとして転送する。例えば1フォ
ントが24×24ドットであれば、前記1ブロックは2
4ビット即ち3バイトである。かかる転送にDMAC1
−2のチャネル1をメモリ−メモリ転送モード2(ブロ
ック転送モード)で、特に制限はされないものの、タイ
マB62のコンペアマッチによって使用することができ
る。
After that, the timer A61 and the channels 2A and 2B of the DMAC1-1 are activated and pulse output is performed.
The carriage return motor 308 is driven. The print head 3 is rotated by the rotation of the carriage return motor 308.
05 moves. As the print head 305 moves,
Print data buffer 304 to print data head 305
Data transfer to. As the print data, the data of each column of one font is transferred as one block. For example, if one font has 24 × 24 dots, one block has 2
There are 4 bits or 3 bytes. DMAC1 for such transfer
The channel-1 of -2 can be used in the memory-memory transfer mode 2 (block transfer mode) by the compare match of the timer B62, although not particularly limited thereto.

【0118】図37にはステッピングモータの制御方法
の一例が示される。
FIG. 37 shows an example of a stepping motor control method.

【0119】本実施例では、DMAC1−1のチャネル
2A、2B共にタイマAのコンペアマッチ信号によって
起動する。チャネルAは内蔵RAM5からタイマAの比
較レジスタTCMRへの転送を行なう。チャネル2Bは
内蔵RAM5からパルス出力装置8の出力バッファレジ
スタNDRへの転送を行なう。パルス出力装置8は、タ
イマAのコンペアマッチ信号が発生すると、NDRの内
容をパルス出力するものである。従って、タイマAのコ
ンペアマッチ毎にチャネル2Aの転送により、タイマA
の比較レジスタTCMRを書替え、コンペアマッチ周期
即ち、パルス出力の間隔を変化させている。これによっ
て、ステッピングモータの加速または減速を行なうこと
ができる。モータの加速時には第1の比較レジスタの内
容を次第に小さくして、パルス出力間隔を短くすれば良
い。逆にモータの減速時には第1の比較レジスタの内容
を次第に大きくして、パルス出力間隔を短くすれば良
い。なお、タイマAのカウンタは、比較レジスタの内容
と一致すると0にクリアされるように設定する。
In this embodiment, both channels 2A and 2B of the DMAC 1-1 are activated by the compare match signal of the timer A. The channel A transfers from the built-in RAM 5 to the comparison register TCMR of the timer A. The channel 2B transfers from the built-in RAM 5 to the output buffer register NDR of the pulse output device 8. The pulse output device 8 outputs the content of NDR as a pulse when the compare match signal of the timer A is generated. Therefore, the timer A is transferred by the transfer of the channel 2A for each compare match of the timer A.
The comparison register TCMR is rewritten to change the compare match period, that is, the pulse output interval. As a result, the stepping motor can be accelerated or decelerated. When accelerating the motor, the content of the first comparison register may be gradually reduced to shorten the pulse output interval. On the contrary, when the motor is decelerated, the content of the first comparison register may be gradually increased to shorten the pulse output interval. The counter of timer A is set so that it is cleared to 0 when the contents of the comparison register match.

【0120】チャネル2Bは、位相1〜位相3を通じて
リピートモードで、内蔵RAM5に格納した、ステッピ
ングモータモータの励磁データをNDRへ転送する。チ
ャネル2Aでは、位相1及び位相3がノーマルモード1
で、位相2がノーマルモード2で動作し、いずれも内蔵
RAM5に格納したコンペアマッチ周期を比較レジスタ
TCMRへ転送する。
The channel 2B transfers the excitation data of the stepping motor motor stored in the internal RAM 5 to the NDR in the repeat mode through the phases 1 to 3. In channel 2A, phase 1 and phase 3 are normal mode 1
Then, the phase 2 operates in the normal mode 2 and transfers the compare match cycle stored in the internal RAM 5 to the comparison register TCMR.

【0121】図38にはステッピングモータの制御時に
おけるメモリマップの一例が示される。
FIG. 38 shows an example of a memory map when controlling the stepping motor.

【0122】コンペアマッチ周期は、内蔵RAM5上
に、アドレスRAMA1を先頭として、m2+1ワード
を格納しておく。特に制限はされないものの比較レジス
タは16ビットとし、コンペアマッチ周期の大きい順に
格納しておく。励磁データはアドレスRAMA0を先頭
として、nバイト格納しておく。
In the compare match cycle, m2 + 1 words are stored in the internal RAM 5 starting from the address RAMA1. Although not particularly limited, the comparison register has 16 bits and is stored in descending order of the compare match period. The excitation data is stored in n bytes starting from the address RAMA0.

【0123】チャネル2BのレジスタETCR及びTC
Rにnを設定し、メモリアドレスレジスタMARに励磁
データの先頭アドレスRAMA0を設定する。SZビッ
トを0にクリア、IDビットを0にクリア、RPEビッ
トを1にクリア、DIEビットを0にクリア、TRS2
〜0ビットを全て0にクリアする。
Channel 2B registers ETCR and TC
R is set to n, and the start address RAMA0 of excitation data is set to the memory address register MAR. Clear SZ bit to 0, ID bit to 0, RPE bit to 1, DIE bit to 0, TRS2
~ Clear all 0 bits to 0.

【0124】全体の回転数をm1、加速・減速時の回転
数をm2とすると、位相1では、チャネル2AのETC
R:TCRにm2−1を設定し、メモリアドレスレジス
タMARAにコンペアマッチ周期の先頭アドレスRAM
1+2を設定する。SZビットを1にセット、IDビッ
トを0にクリア、RPEビットを0にクリア、DIEビ
ットを1にセット、TRS2〜0ビットを全て0にクリ
アする。その後、DTEビットを1にセットして、CP
U2がアドレスRAMA0の内容を比較レジスタに書き
込んで、タイマAを動作させ、コンペアマッチ信号を発
生させればよい。かかるコンペアマッチ毎に1ワードず
つRAM5の内容を比較レジスタに転送を行ない、コン
ペアマッチがm2回発生するとETCR:TCRが0に
なって、DTEビットが0にクリアされ、CPU2に割
込みを要求して、チャネル2Aは停止状態になる。
If the total number of revolutions is m1 and the number of revolutions during acceleration / deceleration is m2, the ETC of channel 2A in phase 1 is assumed.
R: TCR is set to m2-1 and the memory address register MARA is set to the start address RAM of the compare match cycle.
Set 1 + 2. The SZ bit is set to 1, the ID bit is cleared to 0, the RPE bit is cleared to 0, the DIE bit is set to 1, and the TRS2-0 bits are all cleared to 0. After that, set the DTE bit to 1 and set CP
It suffices that U2 write the contents of the address RAMA0 in the comparison register, operate the timer A, and generate a compare match signal. The contents of the RAM 5 are transferred to the comparison register one word for each compare match, and when the compare match occurs m2 times, ETCR: TCR becomes 0, the DTE bit is cleared to 0, and an interrupt request is sent to the CPU 2. , Channel 2A is stopped.

【0125】位相2では、前記割込み要求により、CP
U2は割込み処理ルーチンを実行して、ETCR:TC
Rにm1−m2×2を設定し、RPEビットを1にセッ
トした後、DTEビットを1にセットする。コンペアマ
ッチが発生すると、RAM1+(m2−1)×2番地の
内容を比較レジスタに転送する。コンペアマッチがm1
−m2×2回発生するとETCR:TCRが0になっ
て、DTEビットが0にクリアされ、CPU2に割込み
を要求して、チャネル2Aは停止状態になる。
In phase 2, the CP request causes CP
U2 executes the interrupt processing routine, and ETCR: TC
After setting m1-m2 × 2 to R, setting the RPE bit to 1, and then setting the DTE bit to 1. When a compare match occurs, the contents of RAM1 + (m2-1) × 2 are transferred to the comparison register. Compare match is m1
When -m2 × 2 times occur, ETCR: TCR becomes 0, the DTE bit is cleared to 0, an interrupt is requested to the CPU 2, and the channel 2A is stopped.

【0126】位相3では、前記割込み要求によって、C
PU2は割込み処理ルーチンを実行して、ETCR:T
CRにm2を設定し、RPEビットを0にクリア、ID
ビットを1にセットした後、DTEビットを1にセット
する。コンペアマッチが発生すると、RAM1+(m2
−1)×2番地の内容からアドレスを順次を減算しつ
つ、RAM5の内容を比較レジスタに転送する。コンペ
アマッチがm2回発生するとETCR:TCRが0にな
って、DTEビットが0にクリアされ、CPU2に割込
みを要求して、チャネル2Aは停止状態になる。
In phase 3, the interrupt request causes C
PU2 executes the interrupt processing routine to execute ETCR: T
Set m2 in CR, clear RPE bit to 0, ID
After setting the bit to 1, set the DTE bit to 1. When a compare match occurs, RAM1 + (m2
-1) The contents of the RAM 5 are transferred to the comparison register while sequentially subtracting the address from the contents of the address 2. When a compare match occurs m2 times, ETCR: TCR becomes 0, the DTE bit is cleared to 0, an interrupt is requested to the CPU 2, and the channel 2A is stopped.

【0127】この割込み要求によって、CPU2は割込
み処理ルーチンを実行して、m1回のコンペアマッチが
発生し、ステッピングモータが所定回数回転し、印字ヘ
ッド305が所定量移動したものとして、タイマAを停
止し、またチャネルBのDTEビットを0にクリアし
て、停止する。パルス出力装置も最後の出力値を保持し
つつ停止する。さらにパルス出力装置8の出力を0にク
リアするようにしてもよい。
In response to this interrupt request, the CPU 2 executes the interrupt processing routine to generate the compare match m1 times, rotate the stepping motor a predetermined number of times, and stop the timer A assuming that the print head 305 has moved a predetermined amount. Then, the DTE bit of channel B is cleared to 0 and the operation is stopped. The pulse output device also stops while holding the last output value. Further, the output of the pulse output device 8 may be cleared to zero.

【0128】この後、ステッピングモータを逆回転する
場合には、チャネル2Bは、メモリアドレスレジスタM
ARに励磁データの最後のアドレスRAM0+n−1を
設定、IDビットを1にセットする。チャネルAは、上
記動作をくり返せばよい。タイマAの比較レジスタの内
容はアドレスRAMA0の内容となっているのでCPU
2が転送を行なう必要はない。
After that, when the stepping motor is rotated in the reverse direction, the channel 2B has the memory address register M
The last address RAM0 + n-1 of the excitation data is set in AR, and the ID bit is set to 1. The channel A may repeat the above operation. Since the contents of the comparison register of timer A are the contents of address RAMA0, the CPU
2 need not perform the transfer.

【0129】あるいは、モータの停止した位置から逆回
転する場合には、MARB、ETCRBの最後のデータ
を判定して、MARはRAMA0〜RAMA0+n−
1、ETCRは1〜nの範囲で再設定すればよい。
Alternatively, when the motor rotates in the reverse direction from the stopped position, the last data of MARB and ETCRB is determined, and MAR is RAMA0 to RAMA0 + n-.
1, ETCR may be reset within the range of 1 to n.

【0130】図39にはステッピングモータの制御時に
おける一例タイミングチャートが示される。
FIG. 39 shows an example timing chart at the time of controlling the stepping motor.

【0131】コンペアマッチの発生により、チャネル2
A、2Bの両方の起動が要求されるが、チャネル2Aが
優先度が高く、先に実行される。チャネル2Aが前記の
通り1ワードの転送を行ない、比較レジスタの書き替え
を行なったあと、チャネル2Bが1バイトの転送を行な
い、励磁データの書き替えを行なう。この励磁データは
次のコンペアマッチ時にパルス出力装置8から出力され
る。次のコンペアマッチは新しい比較レジスタの値によ
って行なわれる。
Channel 2 is generated by the occurrence of compare match.
Although activation of both A and 2B is required, channel 2A has a high priority and is executed first. The channel 2A transfers 1 word as described above and rewrites the comparison register, and then the channel 2B transfers 1 byte and rewrites the excitation data. This excitation data is output from the pulse output device 8 at the next compare match. The next compare match is done with the new compare register value.

【0132】図40には前記パルス出力装置8の具体的
な一例回路図が示される。
FIG. 40 shows a specific example circuit diagram of the pulse output device 8.

【0133】パルス出力装置8は、バッファレジスタN
DR、出力データレジスタDR、バッファ許可レジスタ
NDER、データ方向レジスタDDRから構成される。
パルス出力を行なう場合には、データ方向レジスタDD
Rを1にセットし、バッファ許可レジスタNDERを1
にセットする。出力データレジスタDRの内部バスから
のライトは禁止され、バッファレジスタNDRの内容が
コンペアマッチ発生時に出力データレジスタDRに転送
される。この内容は出力データレジスタDRで保持され
ると共に、端子Pから出力される。バッファレジスタN
DRは常に内部バスからライト可能である。かかるライ
トはCPU2またはDMAC1のいずれであるかにはよ
らない。
The pulse output device 8 has a buffer register N.
It comprises a DR, an output data register DR, a buffer permission register NDER, and a data direction register DDR.
When performing pulse output, the data direction register DD
Set R to 1 and set buffer enable register NDER to 1
Set to. Writing from the internal bus of the output data register DR is prohibited, and the content of the buffer register NDR is transferred to the output data register DR when a compare match occurs. This content is held in the output data register DR and is output from the terminal P. Buffer register N
DR can always be written from the internal bus. Such a write does not depend on whether the CPU2 or the DMAC1.

【0134】図41には前記ステッピングモータ駆動回
路の一例ブロック図が示される。
FIG. 41 is a block diagram showing an example of the stepping motor drive circuit.

【0135】特に制限はされないものの、8極4相ステ
ッピングモータに対して、パルス出力装置8のパルス出
力信号をパワードライブ素子を介して与えている。例え
ば、パルス出力0、4にそれぞれ1、0レベルを出力す
ることによって、パワードライブ素子を介して、ステッ
ピングモータの極間に電流を流し、モータを駆動するも
のである。例えば、励磁データはH’1E、H’2D、
H’4B、H’87を出力することによって、ステッピ
ングモータは左方向に回転する。パワードライブ素子
は、例えば、コンプリメンタリパワーMOSFETを用
いることができる。
Although not particularly limited, the pulse output signal of the pulse output device 8 is applied to the 8-pole 4-phase stepping motor via the power drive element. For example, by outputting 1 and 0 levels to the pulse outputs 0 and 4, respectively, a current is caused to flow between the poles of the stepping motor through the power drive element to drive the motor. For example, the excitation data is H'1E, H'2D,
By outputting H'4B and H'87, the stepping motor rotates leftward. As the power drive element, for example, a complementary power MOSFET can be used.

【0136】図42には印字データ出力時のメモリマッ
プの一例が示される。
FIG. 42 shows an example of a memory map when print data is output.

【0137】特に制限はされないものの、一行分のデー
タm×nバイトをアドレスBFR0を先頭とする印字デ
ータバッファに格納しておく。前記24×24ドットの
フォントデータが、一行あたり40であれば、m=3、
n=24×40であり、2880(3×24×40)バ
イトである。これを、印字データヘッドに対して一回に
3バイトずつ転送する。
Although not particularly limited, one row of data m × n bytes is stored in the print data buffer starting at the address BFR0. If the font data of 24 × 24 dots is 40 per line, m = 3,
n = 24 × 40, which is 2880 (3 × 24 × 40) bytes. This is transferred to the print data head 3 bytes at a time.

【0138】図43には印字データ出力時の一例タイミ
ングチャートが示される。
FIG. 43 shows an example timing chart when printing data is output.

【0139】印字データのタイミングはタイマBによっ
て指定する。特に制限はされないものの、タイマBは第
一、第二の比較レジスタを有し、第一のコンペアマッチ
によって、DMACを起動すると共に、図示はされない
が入出力ポートと兼用されたタイマ出力端子に0レベル
を出力する。また、第二のコンペアマッチによって、前
記タイマ出力端子に1レベルを出力する。印字データは
第二のコンペアマッチ時、即ち前記タイマ出力端子の0
レベルから1レベルへの変化時に24ドット一括して印
字され、第一のコンペアマッチ発生後、次の印字データ
がDMACによって転送される。
The timing of print data is designated by the timer B. Although not particularly limited, the timer B has first and second comparison registers, starts the DMAC by the first compare match, and outputs 0 to the timer output terminal that is also used as the input / output port (not shown). Output level. Also, one level is output to the timer output terminal by the second compare match. The print data is at the time of the second compare match, that is, 0 at the timer output terminal.
When the level changes to 1 level, 24 dots are printed collectively, and after the first compare match occurs, the next print data is transferred by the DMAC.

【0140】本実施例では、ラインフィードモータの駆
動をタイマAで、印字タイミングをタイマBで発生した
ため、印字は前記位相2の定速回転の間に行なうことが
望ましい。ラインフィードモータの駆動と印字タイミン
グの発生を、同一のタイマで行なえば、上記制約は発生
しない。
In this embodiment, the line feed motor is driven by the timer A and the print timing is generated by the timer B. Therefore, it is desirable that the printing is performed during the constant speed rotation of the phase 2. If the same timer is used to drive the line feed motor and generate the print timing, the above restriction does not occur.

【0141】図44には印字データの一例が示される。FIG. 44 shows an example of print data.

【0142】文字データは特に制限はされないものの、
ホストプロセッサから1文字2バイトで送られる。これ
をキャラクタジェネレートROMでフォントデータ96
(3×24)バイトに展開する。1列分の3バイトデー
タを3バイトの印字ヘッドに割り当てている。
Although the character data is not particularly limited,
It is sent from the host processor in 2 bytes per character. Font data 96 in character generation ROM
Expands to (3 x 24) bytes. The 3-byte data for one column is assigned to the 3-byte print head.

【0143】上記実施例では、印字ヘッドを互いに異な
る連続した3バイトのアドレスとしたが、ファーストイ
ンファーストアウトのバッファとして、1バイトのアド
レスとすることもできる。この場合は、RPEBビット
を0にクリアして、MARBを固定とすればよい。
In the above embodiment, the print head has a continuous 3-byte address different from each other, but it may have a 1-byte address as a first-in first-out buffer. In this case, the RPEB bit may be cleared to 0 and MARB may be fixed.

【0144】以上本発明者によってなされた発明を実施
例に基づいて具体的に説明したが、本発明はそれに限定
されるものではなく、その要旨を逸脱しない範囲におい
て種々変更可能であることは言うまでもない。
Although the invention made by the present inventor has been specifically described based on the embodiments, the present invention is not limited to the embodiments and various modifications can be made without departing from the scope of the invention. Yes.

【0145】例えば例えば、DMACの詳細な構成は、
2チャネル(1組)あるいは4チャネル(2組)のほか
任意のチャネル数でよい。DMACの内部バスの構成な
どは種々変更が可能である。また、シングルチップマイ
クロコンピュータの内部構成などにもなんら限定されな
い。タイマのチャネル数、タイマの機能、起動要因の種
類等変更可能である。例えばチャネル毎に選択できる起
動要因を変更することもできる。
For example, the detailed structure of the DMAC is as follows.
Any number of channels other than 2 channels (1 set) or 4 channels (2 sets) may be used. The configuration of the internal bus of the DMAC can be changed in various ways. Further, the internal configuration of the single-chip microcomputer is not limited at all. It is possible to change the number of timer channels, timer functions, types of activation factors, etc. For example, the activation factor that can be selected can be changed for each channel.

【0146】以上の説明では主として本発明者によって
なされた発明をその背景となった利用分野であるシング
ルチップマイクロコンピュータ及びプリンタ制御システ
ムに適用した場合について説明したが、それに限定され
るものではなく、その他の半導体集積回路装置あるいあ
は制御システムにも適用可能であり、本発明は少なくと
もデータ転送を行なう機能を有する半導体集積回路装置
及び斯る半導体集積回路装置を使用した制御システムに
適用することができる。例えば、FAXの読み取り・記
録・搬出の3つのモータ駆動に、それぞれ2チャネル
(1組)ずつのデータ転送制御装置で制御することがで
きる。
In the above explanation, the case where the invention made by the present inventor is mainly applied to the single-chip microcomputer and the printer control system which are the fields of application in the background has been explained, but the invention is not limited thereto. The present invention can be applied to other semiconductor integrated circuit devices or control systems, and the present invention can be applied to a semiconductor integrated circuit device having at least a function of performing data transfer and a control system using such a semiconductor integrated circuit device. it can. For example, it is possible to control the driving of three motors for reading, recording, and unloading the FAX by using the data transfer control device for each two channels (one set).

【0147】[0147]

【発明の効果】本願において開示される発明のうち代表
的なものによって得られる効果を簡単に説明すれば下記
の通りである。
The effects obtained by the typical ones of the inventions disclosed in the present application will be briefly described as follows.

【0148】すなわち、メモリ−メモリ間のデータ転送
を行なう場合の1チャネル分の資源に、最低限の資源を
追加して入出力回路の要求する割込みによっても起動す
るデータ転送の2チャネル分として使用可能にすること
により、転送元並びに転送先を指定するレジスタなどの
転送制御のための資源の利用効率を向上させることがで
き、更に、多数の割込み要因への対応も容易に行うこと
ができるという効果がある。また、メモリ−メモリ間で
のデータブロック転送、メモリ−入出力回路間でのリピ
ート転送モードやマルチ転送モードをデータ転送制御装
置のハードウェアでサポートできるようにすることによ
り、データ転送制御装置の応用範囲を容易に広げること
が可能になる。
That is, the minimum resources are added to the resources for one channel in the case of memory-to-memory data transfer, and the data is used as two channels for data transfer activated by an interrupt requested by the input / output circuit. By making it possible, it is possible to improve the utilization efficiency of resources for transfer control such as registers that specify the transfer source and the transfer destination, and it is possible to easily deal with many interrupt factors. effective. In addition, the hardware of the data transfer control device can support the data block transfer between the memory and the memory, and the repeat transfer mode or the multi transfer mode between the memory and the input / output circuit. The range can be easily expanded.

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

【図1】本発明に係るデータ転送制御装置を適用したシ
ングルチップマイクロコンピュータの一実施例ブロック
図である。
FIG. 1 is a block diagram of an embodiment of a single chip microcomputer to which a data transfer control device according to the present invention is applied.

【図2】本発明に係るデータ転送制御装置の一実施例で
あるDMACのブロック図である。
FIG. 2 is a block diagram of a DMAC which is an embodiment of a data transfer control device according to the present invention.

【図3】DMACの一例レジスタ構成図である。FIG. 3 is a register configuration diagram of an example of a DMAC.

【図4】シングルチップマイクロコンピュータの一例ア
ドレスマップである。
FIG. 4 is an example address map of a single-chip microcomputer.

【図5】メモリ−入出力回路転送時の制御レジスタの機
能説明図その1である。
FIG. 5 is a first functional explanatory diagram of the control register at the time of memory-input / output circuit transfer.

【図6】メモリ−入出力回路転送時の制御レジスタの機
能説明図その2である。
FIG. 6 is a second functional explanatory diagram of the control register at the time of memory-input / output circuit transfer.

【図7】メモリ−入出力回路転送時の制御レジスタの機
能説明図その3である。
FIG. 7 is a third functional explanatory diagram of the control register at the time of memory-input / output circuit transfer.

【図8】メモリ−入出力回路転送時の制御レジスタの機
能説明図その4である。
FIG. 8 is a fourth functional explanatory diagram of the control register at the time of memory-input / output circuit transfer.

【図9】メモリ−入出力回路転送(ノーマルモード1)
の一例動作フローチャートである。
FIG. 9: Memory-input / output circuit transfer (normal mode 1)
It is an example operation flowchart.

【図10】図9の一例動作タイミングチャートである。FIG. 10 is an example operation timing chart of FIG. 9;

【図11】メモリ−入出力回路転送(ノーマルモード
1)の別の動作フローチャートである。
FIG. 11 is another operation flowchart of memory-input / output circuit transfer (normal mode 1).

【図12】メモリ−入出力回路転送(ノーマルモード
2)の一例動作フローチャートである。
FIG. 12 is an operation flowchart of an example of memory-input / output circuit transfer (normal mode 2).

【図13】メモリ−入出力回路転送(リピートモード)
の一例動作フローチャートである。
FIG. 13: Memory-input / output circuit transfer (repeat mode)
It is an example operation flowchart.

【図14】図13の一例タイミングチャートである。FIG. 14 is an example timing chart of FIG. 13;

【図15】メモリ−メモリ転送時の制御レジスタの機能
説明図その1である。
FIG. 15 is a first functional explanatory diagram of a memory-memory control register.

【図16】メモリ−メモリ転送時の制御レジスタの機能
説明図その2である。
16 is a second functional explanatory diagram of the control register at the time of memory-memory transfer. FIG.

【図17】メモリ−メモリ転送時の制御レジスタの機能
説明図その3である。
FIG. 17 is a third functional explanatory diagram of the control register at the time of memory-memory transfer.

【図18】メモリ−メモリ転送時の制御レジスタの機能
説明図その4である。
FIG. 18 is a fourth functional explanatory diagram of the control register at the time of memory-memory transfer.

【図19】メモリ−メモリ転送時のモード別のレジスタ
の機能説明図である。
FIG. 19 is a functional explanatory diagram of registers for each mode during memory-memory transfer.

【図20】メモリ−メモリ転送(ノーマルモード)の一
例動作フローチャートである。
FIG. 20 is an operation flowchart of an example of memory-memory transfer (normal mode).

【図21】図20の一例タイミングチャートである。FIG. 21 is an example timing chart of FIG. 20.

【図22】メモリ−メモリ転送(ブロック転送モード)
の一例動作フローチャートである。
FIG. 22: Memory-memory transfer (block transfer mode)
It is an example operation flowchart.

【図23】算術論理演算器の具体的な一例回路図であ
る。
FIG. 23 is a specific example circuit diagram of an arithmetic logic unit.

【図24】レジスタの具体的な一例回路図である。FIG. 24 is a specific example circuit diagram of a register.

【図25】データバッファ及びメモリインタフェースの
具体的な一例回路図である。
FIG. 25 is a specific example circuit diagram of a data buffer and a memory interface.

【図26】制御部に含まれる要因保持手段の具体的な一
例回路図である。
FIG. 26 is a specific example circuit diagram of a factor holding unit included in the control unit.

【図27】DMACの他の実施例ブロック図である。FIG. 27 is a block diagram of another embodiment of the DMAC.

【図28】DMACの一例状態遷移図である。FIG. 28 is a state transition diagram of an example of the DMAC.

【図29】バスコントローラの一例ブロック図である。FIG. 29 is a block diagram of an example of a bus controller.

【図30】バスコントローラの動作仕様説明図その1で
ある。
FIG. 30 is an explanatory diagram 1 of an operation specification of the bus controller.

【図31】バスコントローラの動作仕様説明図その2で
ある。
FIG. 31 is a second explanatory diagram of the operation specifications of the bus controller.

【図32】バスコントローラの動作仕様説明図その3で
ある。
FIG. 32 is a third explanatory diagram of the operation specifications of the bus controller.

【図33】バスコントローラの動作仕様説明図その4で
ある。
FIG. 33 is an explanatory diagram 4 of an operation specification of the bus controller.

【図34】バスコントローラの動作仕様説明図その5で
ある。
FIG. 34 is a fifth explanatory diagram of the operation specifications of the bus controller.

【図35】シングルチップマイクロコンピュータの実施
例ブロック図である。
FIG. 35 is a block diagram of an embodiment of a single chip microcomputer.

【図36】シングルチップマイクロコンピュータを応用
したプリンタ制御システムの一例ブロック図である。
FIG. 36 is a block diagram of an example of a printer control system to which a single chip microcomputer is applied.

【図37】プリンタ制御システムに採用可能なステッピ
ングモータの制御手法説明図である。
FIG. 37 is an explanatory diagram of a stepping motor control method that can be adopted in the printer control system.

【図38】ステッピングモータ制御時におけるメモリマ
ップの一例説明図である。
FIG. 38 is an explanatory diagram showing an example of a memory map during stepping motor control.

【図39】ステッピングモータ制御時の一例タイミング
チャートである。
FIG. 39 is an example timing chart when controlling a stepping motor.

【図40】パルス出力装置の具体的な一例回路図であ
る。
FIG. 40 is a specific example circuit diagram of a pulse output device.

【図41】ステッピングモータ駆動回路の一例ブロック
図である。
FIG. 41 is a block diagram showing an example of a stepping motor drive circuit.

【図42】印字データ出力時の一例メモリマップであ
る。
FIG. 42 is an example memory map when print data is output.

【図43】印字データ出力時における一例タイミングチ
ャートである。
FIG. 43 is an example timing chart when printing data is output.

【図44】印字データの一例説明図である。FIG. 44 is a diagram illustrating an example of print data.

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

1 DMAC(ダイレクトメモリアクセスコン
トローラ) 1−1 DMAC 1−2 DMAC 2 CPU(中央処理装置) 3 BSC(バスコントローラ) 4 ROM 5 RAM 6 タイマ 7 SCI(シリアルコミュニケーションイン
タフェース) 8 PSO(パルス出力装置) MAR メモリアドレスレジスタ IOAR I/Oアドレスレジスタ ETCR 実行転送カウントレジスタ TCR 転送カウントレジスタ DTCR 制御レジスタ TRSA1,TRSA2 1チャネル/2チャネルの指
定ビット ALU 算術論理演算器 AB アドレスバッファ DB データバッファ MIF メモリインタフェース CONT 制御部 100 シングルチップマイクロコンピュータ 101 シングルチップマイクロコンピュータ
1 DMAC (Direct Memory Access Controller) 1-1 DMAC 1-2 DMAC 2 CPU (Central Processing Unit) 3 BSC (Bus Controller) 4 ROM 5 RAM 6 Timer 7 SCI (Serial Communication Interface) 8 PSO (Pulse Output Device) MAR Memory address register IOAR I / O address register ETCR Execution transfer count register TCR Transfer count register DTCR control register TRSA1, TRSA2 1 channel / 2 channel designation bit ALU Arithmetic and logic unit AB address buffer DB data buffer MIF memory interface CONT control unit 100 Single Chip Microcomputer 101 Single Chip Microcomputer

───────────────────────────────────────────────────── フロントページの続き (72)発明者 渡辺 照一 東京都小平市上水本町5丁目22番1号 株 式会社日立マイコンシステム内 (72)発明者 三ツ石 直幹 東京都小平市上水本町5丁目20番1号 株 式会社日立製作所武蔵工場内 ─────────────────────────────────────────────────── ─── Continuation of the front page (72) Inventor Teruichi Watanabe 5-22-1, Josuihoncho, Kodaira-shi, Tokyo Inside Hitachi Microcomputer System Co., Ltd. 20-1 No. 1 In stock company Hitachi Ltd. Musashi factory

Claims (9)

【特許請求の範囲】[Claims] 【請求項1】 アドレス空間上に配置された記憶装置間
でのデータ転送制御を行うデータ転送制御装置であっ
て、データ転送元またはデータ転送先のアドレスを指定
するレジスタ手段と、該レジスタ手段のビット数を前記
アドレス空間に相応したビット数とするか、前記ビット
数より少ないビット数とするかを選択する手段を有する
データ転送制御装置。
1. A data transfer control device for controlling data transfer between storage devices arranged in an address space, comprising: register means for designating an address of a data transfer source or a data transfer destination; and a register means of the register means. A data transfer control device having means for selecting whether the number of bits is a number of bits corresponding to the address space or a number of bits smaller than the number of bits.
【請求項2】 アドレス空間上に配置された記憶装置間
で複数のデータ転送を行うための複数のデータ転送チャ
ネルを構成可能なデータ転送制御装置であって、前記複
数のデータ転送を行なうための複数のデータ転送チャネ
ルの資源は、単一のデータ転送を行うための単一のデー
タ転送チャネルを構成可能であるデータ転送制御装置。
2. A data transfer control device capable of configuring a plurality of data transfer channels for performing a plurality of data transfers between storage devices arranged in an address space, the data transfer control device comprising: A data transfer control device, wherein resources of a plurality of data transfer channels can constitute a single data transfer channel for performing a single data transfer.
【請求項3】 前記単一のデータ転送を行なうための前
記単一のデータ転送チャネルにおいて、転送元及び転送
先のアドレスを指定するレジスタ手段のビット数は、前
記アドレス空間に相応したビット数とされ、前記複数の
データ転送を行なうための前記複数のデータ転送チャネ
ルにおいて、転送元またはデータ転送先のアドレスを指
定するレジスタ手段のビット数は、前記アドレス空間に
相応したビット数より少ないビット数とされるものであ
る請求項2記載のデータ転送制御装置。
3. In the single data transfer channel for performing the single data transfer, the number of bits of register means for designating addresses of a transfer source and a transfer destination is a bit number corresponding to the address space. In the plurality of data transfer channels for performing the plurality of data transfers, the number of bits of register means for designating an address of a transfer source or a data transfer destination is smaller than the number of bits corresponding to the address space. The data transfer control device according to claim 2, wherein
【請求項4】 前記複数のデータ転送を行なうための各
データ転送チャネルは、前記アドレス空間に相応したビ
ット数の第1のレジスタ手段と、前記ビット数より少な
いビット数の第2のレジスタ手段と、転送カウント手段
とを含むものである請求項3記載のデータ転送制御装
置。
4. Each data transfer channel for performing the plurality of data transfers includes a first register means having a bit number corresponding to the address space and a second register means having a bit number smaller than the bit number. 4. The data transfer control device according to claim 3, further comprising:
【請求項5】 前記単一のデータ転送を行なう場合に、
前記複数のデータ転送用の各データ転送チャネルの前記
第1のレジスタ手段を転送元・転送先のアドレス指定手
段とし、前記複数のデータ転送用の複数のデータ転送チ
ャネルの一方の前記転送カウント手段を転送回数を計数
するための転送カウント手段に使用し、前記複数のデー
タ転送用の複数のデータ転送チャネルの他方の転送カウ
ント手段を、データブロックサイズの指定手段と、デー
タブロックを単位とする単位数指定手段とし、指定され
たデータブロックサイズのデータ転送を、単位指定手段
で指定された回数だけ繰返し行なうブロック転送モード
を有する請求項4記載のデータ転送制御装置。
5. When performing the single data transfer,
The first register means of each of the plurality of data transfer channels for data transfer is used as a transfer source / transfer destination addressing means, and the transfer count means of one of the plurality of data transfer channels for the plurality of data transfers is used. Used as a transfer count means for counting the number of transfers, the other transfer count means of the plurality of data transfer channels for the plurality of data transfers is a data block size designating means and a unit number in units of data blocks. 5. The data transfer control device according to claim 4, further comprising a block transfer mode as the specifying means, wherein the data transfer of the specified data block size is repeated a number of times specified by the unit specifying means.
【請求項6】 前記複数のデータ転送を行なうための一
つのデータ転送チャネルを利用したデータ転送モードで
あって、前記転送カウント手段を、転送回数を計数する
ための転送カウンタと、転送回数指定手段とし、前記転
送回数指定手段で指定された回数のデータ転送を転送カ
ウンタと前記第1のレジスタ手段との計数動作を利用し
て行うデータ転送動作を単位動作とし、単位動作を完了
する毎に、前記第1のレジスタ手段のアドレスと転送カ
ウンタの値を設定値に復帰させて、単位動作を複数回繰
返すリピート転送モードを有する請求項4又は5記載の
データ転送制御装置。
6. A data transfer mode using one data transfer channel for performing the plurality of data transfers, wherein the transfer counting means includes a transfer counter for counting the number of transfers and a transfer number designating means. The data transfer operation is performed by using the counting operation of the transfer counter and the first register means for the data transfer of the number of times designated by the transfer number designating means, and each time the unit operation is completed, 6. The data transfer control device according to claim 4, further comprising a repeat transfer mode in which the address of the first register means and the value of the transfer counter are returned to the set values and the unit operation is repeated a plurality of times.
【請求項7】 並行した3本のバスにそれぞれ接続され
たレジスタ手段と演算器を有し、前記レジスタ手段の1
つの内容を、別のレジスタ手段に転送し、さらに演算器
に転送するためのローカルバスを設けた請求項6記載の
データ転送制御装置。
7. A register means and an arithmetic unit respectively connected to three parallel buses are provided, and one of the register means is provided.
7. The data transfer control device according to claim 6, further comprising a local bus for transferring one content to another register means and further to an arithmetic unit.
【請求項8】 前記複数のデータ転送を行うための前記
データ転送チャネルの起動を指示するための外部からの
単一信号によって与えられる起動要因を保持する保持手
段を設け、前記単一信号によって与えられる起動要因を
前記保持手段に保持して、前記複数のデータ転送チャネ
ルを介して複数のデータ転送を行なうマルチ転送モード
を有する請求項2乃至7の何れか1項記載のデータ転送
制御装置。
8. Holding means for holding an activation factor given by an external single signal for instructing the activation of the data transfer channel for performing the plurality of data transfers, is provided by the single signal. 8. The data transfer control device according to claim 2, further comprising a multi-transfer mode in which a plurality of activation factors are held in the holding means and a plurality of data are transferred via the plurality of data transfer channels.
【請求項9】 請求項1乃至7の何れか1項記載のデー
タ転送制御装置と、パルス出力端子、パルス出力端子に
接続された第1のデータ保持手段、及び第1のデータ保
持手段に接続された第2のデータ保持手段を含むパルス
出力手段と、計時手段と、を有する半導体集積回路装置
であって、 前記計時手段の発生する信号によって、前記データ転送
制御装置の転送を行ない、前記第2のデータ保持手段へ
のデータ転送を行うとともに、前記第2のデータ保持手
段から第1のデータ保持手段へのデータ転送を行なうこ
とが可能な半導体集積回路装置。
9. A data transfer control device according to claim 1, a pulse output terminal, a first data holding means connected to the pulse output terminal, and a first data holding means. A semiconductor integrated circuit device having a pulse output means including the second data holding means and a clocking means, wherein the data transfer control device transfers data according to a signal generated by the clocking means. A semiconductor integrated circuit device capable of performing data transfer to the second data holding means and data transfer from the second data holding means to the first data holding means.
JP13795492A 1992-04-30 1992-04-30 Data transfer control device and semiconductor integrated circuit device Expired - Lifetime JP3490101B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP13795492A JP3490101B2 (en) 1992-04-30 1992-04-30 Data transfer control device and semiconductor integrated circuit device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP13795492A JP3490101B2 (en) 1992-04-30 1992-04-30 Data transfer control device and semiconductor integrated circuit device

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2002265192A Division JP3825729B2 (en) 2002-09-11 2002-09-11 Semiconductor integrated circuit device

Publications (2)

Publication Number Publication Date
JPH05307516A true JPH05307516A (en) 1993-11-19
JP3490101B2 JP3490101B2 (en) 2004-01-26

Family

ID=15210605

Family Applications (1)

Application Number Title Priority Date Filing Date
JP13795492A Expired - Lifetime JP3490101B2 (en) 1992-04-30 1992-04-30 Data transfer control device and semiconductor integrated circuit device

Country Status (1)

Country Link
JP (1) JP3490101B2 (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6763448B1 (en) 1999-02-16 2004-07-13 Renesas Technology Corp. Microcomputer and microcomputer system
US8032793B2 (en) 2005-01-14 2011-10-04 Fujitsu Limited Method of controlling information processing system, information processing system, direct memory access control device and program
US9652229B2 (en) 2013-12-25 2017-05-16 Renesas Electronics Corporation Semiconductor device
US10049063B2 (en) 2014-01-07 2018-08-14 Renesas Electronics Corporation Semiconductor apparatus

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6763448B1 (en) 1999-02-16 2004-07-13 Renesas Technology Corp. Microcomputer and microcomputer system
US6907514B2 (en) 1999-02-16 2005-06-14 Renesas Technology Corp. Microcomputer and microcomputer system
US8032793B2 (en) 2005-01-14 2011-10-04 Fujitsu Limited Method of controlling information processing system, information processing system, direct memory access control device and program
US9652229B2 (en) 2013-12-25 2017-05-16 Renesas Electronics Corporation Semiconductor device
US9977753B2 (en) 2013-12-25 2018-05-22 Renesas Electronics Corporation Semiconductor device
US10049063B2 (en) 2014-01-07 2018-08-14 Renesas Electronics Corporation Semiconductor apparatus

Also Published As

Publication number Publication date
JP3490101B2 (en) 2004-01-26

Similar Documents

Publication Publication Date Title
US5685005A (en) Digital signal processor configured for multiprocessing
US4967398A (en) Read/write random access memory with data prefetch
US5619720A (en) Digital signal processor having link ports for point-to-point communication
JP3573614B2 (en) Image processing apparatus and image processing system
US5634076A (en) DMA controller responsive to transition of a request signal between first state and second state and maintaining of second state for controlling data transfer
JP3619532B2 (en) Semiconductor integrated circuit device
JPS6035696B2 (en) Bus control device in data processing equipment
JPH09185514A (en) Interruption device
JP3490101B2 (en) Data transfer control device and semiconductor integrated circuit device
JP2004227049A (en) Data transfer device, semiconductor integrated circuit and microcomputer
US20030236941A1 (en) Data processor
JP3825729B2 (en) Semiconductor integrated circuit device
JP7468112B2 (en) INTERFACE CIRCUIT AND METHOD FOR CONTROLLING INTERFACE CIRCUIT - Patent application
JPH0855097A (en) Data processing system and its memory access method
JPH04134551A (en) Method of informing second agent of necessity of service from first agent in bus for transferring data between a lurality of data processing agents
JPH09153009A (en) Arbitration method for hierarchical constitution bus
JP3206656B2 (en) Prefetch device and prefetch method on bus
JP3936694B2 (en) Semiconductor integrated circuit device and data transfer method for semiconductor integrated circuit device
JP3839068B2 (en) Semiconductor integrated circuit device
JPH07271654A (en) Controller
US20030049897A1 (en) Semiconductor device
JP4190969B2 (en) Bus arbitration system in bus system and AMBA
JPH05307519A (en) Data processor
JP3266610B2 (en) DMA transfer method
JP3201439B2 (en) Direct memory access control circuit

Legal Events

Date Code Title Description
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20031028

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313117

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

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

Free format text: PAYMENT UNTIL: 20071107

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20081107

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20081107

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20091107

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20101107

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20101107

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20121107

Year of fee payment: 9

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

Free format text: PAYMENT UNTIL: 20121107

Year of fee payment: 9

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

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

Free format text: PAYMENT UNTIL: 20121107

Year of fee payment: 9

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

EXPY Cancellation because of completion of term
FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121107

Year of fee payment: 9