JPS6235950A - Inter-memory data transfer system - Google Patents

Inter-memory data transfer system

Info

Publication number
JPS6235950A
JPS6235950A JP17549585A JP17549585A JPS6235950A JP S6235950 A JPS6235950 A JP S6235950A JP 17549585 A JP17549585 A JP 17549585A JP 17549585 A JP17549585 A JP 17549585A JP S6235950 A JPS6235950 A JP S6235950A
Authority
JP
Japan
Prior art keywords
signal
address
cpu
memory
data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP17549585A
Other languages
Japanese (ja)
Inventor
Masato Soshi
正人 曽雌
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.)
Casio Computer Co Ltd
Original Assignee
Casio Computer Co 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 Casio Computer Co Ltd filed Critical Casio Computer Co Ltd
Priority to JP17549585A priority Critical patent/JPS6235950A/en
Publication of JPS6235950A publication Critical patent/JPS6235950A/en
Pending legal-status Critical Current

Links

Abstract

PURPOSE:To transfer a large quantity of data between memories directly at a high speed by supplying a NOP code to the CPU side in the data transfer mode. CONSTITUTION:Various devices (a ROM 2 and RAMs 1 and 2) are coupled to a CPU 1 through a system data bus SDB. A data bus switch/NOP generating part 5 is provided with a tri-state buffer, which is used to disconnect the CPU 1 from the bus SDB when the direction of the bidirectional system data bus SDB is controlled and data is transferred at a high speed, and a NOP generating part which supplies the NOP code to the CPU side in the disconnection state. An address bus AB is connected to a device selecting logic part of a control signal control part 6. The address bus AB is connected to other various devices, and the address of the address bus is given from an address counter of the CPU 1 through the AB output.

Description

【発明の詳細な説明】 [発明の技術分野] この発明はメモリ間のデータ転送方式に関する。[Detailed description of the invention] [Technical field of invention] The present invention relates to a data transfer method between memories.

[従来技術と問題点] 一般にCPUは、プログラム転送の場合、メモリからデ
ータを一度読み込んでから他のメモリにデータを書き込
むことによってデータを転送する。しかし、この転送方
式だと10命令程度を実行しなければならないので非常
に時間がかかる(特に大量のデータ転送の場合)。
[Prior Art and Problems] Generally, in the case of program transfer, a CPU transfers data by once reading data from a memory and then writing the data to another memory. However, this transfer method requires about 10 instructions to be executed, which takes a very long time (especially when transferring a large amount of data).

これを解決するために、DMA (直接メモリアクセス
)コントローラによる直接メモリアクセス方式が使用さ
れている。この方式は高速転送を可能とするものではあ
るが、DMAコントローラ自体が小型のCPUのような
論理を必要とするため、種々のデバイス(典型的には、
アドレスレジスタ、カウンタレジスタ、制御レジスタ、
状態レジスタ等々)を必要とし、構成が複雑であり、コ
ストも高い。
To solve this problem, a direct memory access method using a DMA (direct memory access) controller is used. Although this method enables high-speed transfer, the DMA controller itself requires logic such as a small CPU, so various devices (typically
address register, counter register, control register,
(status registers, etc.), the configuration is complex, and the cost is high.

[発明の目的] そこでこの発明はDMAコントローラを使用することな
く、簡単な構成でしかも高速で(DMAコントローラに
よる方式具」−の高速)メモリ間の大量データ転送を行
うことのできる転送方式を提供することを目的とするも
のである。
[Purpose of the Invention] Therefore, the present invention provides a transfer method that can transfer a large amount of data between memories with a simple configuration and at high speed (a method using a DMA controller) without using a DMA controller. The purpose is to

[発明の要点] この発明は、NOP (NO0PERATION)コー
ドをCPUが読みとった場合、CPUは内部のアドレス
カウンタを歩進させる(インクリメント/デクリメント
)ことに着目したもので、読み出し側のメモリと書き込
み側のメモリを選択する手段と、CPUに備えられるア
ドレスカウンタと、CPUよりシステム・データバスを
切り離しNOPコードをCPUへ供給する手段と、CP
UにおけるNOP判断で歩進させられるアドレスカウン
タが同一アドレスを保持している間に、書き込み側のメ
モリと読み出し側のメモリを夫々、書き込み、読み出し
状態に制御する手段とを有することを要旨とするもので
ある。
[Summary of the Invention] This invention focuses on the fact that when the CPU reads a NOP (NO0PERATION) code, the CPU increments (increments/decrements) an internal address counter. an address counter provided in the CPU; a means for disconnecting the system data bus from the CPU and supplying a NOP code to the CPU;
The gist of the present invention is to have means for controlling the writing side memory and the reading side memory to write and read states, respectively, while the address counter incremented by the NOP judgment in U holds the same address. It is something.

[実施例] 第1図はこの発明を用いた最小中位の実施例の構成ブロ
ック図である。1はCPUで、11はCPUに備えられ
たアドレスカウンタで、プログラムに従い指定すべきア
ドレスを発生する。2はCPUの動作のためのプログラ
ムを記憶するROM (基本メモリ)で、3と4はRA
MI、RAM2で、CPUでの演算結果や(図示しない
入力装置を介して入力された)各種のデータやプログラ
ム等が格納される。
[Embodiment] FIG. 1 is a block diagram of a minimum-medium embodiment using the present invention. 1 is a CPU, and 11 is an address counter provided in the CPU, which generates an address to be specified according to a program. 2 is a ROM (basic memory) that stores programs for CPU operation, and 3 and 4 are RA
The MI and RAM 2 store calculation results by the CPU, various data (input via an input device not shown), programs, and the like.

通常の場合、各種のデバイス(ここではROM2と、R
AMIとRAM2)はシステムデータバスSDRを介し
てCPUと結合している。
Normally, various devices (here ROM2 and R
AMI and RAM2) are coupled to the CPU via a system data bus SDR.

5はデータバススイッチ/NOP発生部で、後述するよ
うに両方向性システム・データバスSDBの方向制御、
及びCPUをシステムSDRから切り離す(これはこの
実施例での高速データ転送のときに行なわれる)ための
3ステートバッファと、切り離しの状態においてNOP
コードをCPU側に供給するNOP発生部を有している
5 is a data bus switch/NOP generation unit, which controls the direction of the bidirectional system data bus SDB as described later;
and a 3-state buffer for isolating the CPU from the system SDR (which is done during high-speed data transfers in this embodiment) and a NOP in the disconnected state.
It has a NOP generation section that supplies code to the CPU side.

6はコントロール信号制御部でアドレスバスABがデバ
イス選択論理部と結合している。アドレスバスhBは、
その他、各種のデバイスここではRAMI、RAM2、
ROMと結合しており、アドレスバス上のアドレスはC
PUIのアドレスカウンタよりAB小出力介して与えら
れる。
Reference numeral 6 denotes a control signal control section to which an address bus AB is coupled to a device selection logic section. The address bus hB is
Other various devices include RAMI, RAM2,
It is connected to ROM, and the address on the address bus is C.
It is given via the AB small output from the address counter of the PUI.

種々の制御信号がデバイス間を結合しており、説明の便
宜」二、図示の制御信号を列挙してその意味を説明する
Various control signals are coupled between devices, and for the sake of explanation, the illustrated control signals will be listed and their meanings explained.

C31: RAMIの選択信号。CPUIよりコントロ
ール信号制御部6に送られ る。通常はハイレベルにあり、 RAMIを読み出し側メモリとして データ転送を行う場合にはロウレベ ル(データ転送を可能にするための アクティブ状態)になる。
C31: RAMI selection signal. The control signal is sent to the control signal controller 6 from the CPUI. Normally, it is at high level, and when data is transferred using RAMI as a read-side memory, it becomes low level (active state to enable data transfer).

CS 2 : R,AM2の選択信号。以下はCStと
同様。
CS2: R, AM2 selection signal. The following is the same as CSt.

INT:データ転送終了時にコントロール信号制御部6
よりCPUに割込みをか ける信号。割込み信号(ロウレベ ル)が発生するとCPUは通常の動 作に戻る。
INT: Control signal controller 6 at the end of data transfer
A signal that interrupts the CPU. When an interrupt signal (low level) is generated, the CPU returns to normal operation.

RD  :CPUの出力するリード信号(ロウレベルで
アクティブ)。デバイス5 と6に送られる。
RD: Read signal output by the CPU (active at low level). Sent to devices 5 and 6.

WR:CPUの出すライト信号(ロウレベルでアクティ
ブ)。デバイス5と6 に送られる。
WR: Write signal issued by the CPU (active at low level). Sent to devices 5 and 6.

R/W1.デバイス6より、第1メモリここではRAM
Iに供給される読み出し/ 書込み信号(ロウレベルで書込、ハ イレベルで読み出し)。
R/W1. From device 6, the first memory is RAM.
Read/write signal supplied to I (write at low level, read at high level).

R/W2:デバイス6より第2メモリここではRMA2
に供給される読み出し/書 込み信号。以下はR/Wlと同じ。
R/W2: Second memory from device 6, here RMA2
read/write signals provided to The following is the same as R/Wl.

MGSI  :デバイス6よりRAMIに供給されるメ
モリ選択信号(ロウレベルでイ ネーブル)。
MGSI: Memory selection signal supplied to RAMI from device 6 (enabled at low level).

MC52:デバイス6よりRAM2に供給されるメモリ
選択信号。
MC52: Memory selection signal supplied from device 6 to RAM2.

C5ROM :デバイス6よりROM2に送られるメモ
リ選択信号。
C5ROM: Memory selection signal sent from device 6 to ROM2.

C:データ転送信号。CPUよリデータパススイッチ/
Nor発生部6に入 力される信号で、データ転送モード ではハイレベルとなり、データバス スイッチ/No?発生部よりNOP コードを発生させる。通常はローレ ベル。
C: Data transfer signal. CPU to redata path switch/
This is a signal input to the Nor generating section 6, which is at a high level in the data transfer mode, and the data bus switch /No? Generate a NOP code from the generator. Usually low level.

次に第2図を参照してデータバスイスイッチ/NOP発
生部5について詳述する。図示のようにデータバススイ
ッチ/No?発生部5は、2つの3ステートバツフア5
1と52を有している。3ステートバツフア51は、周
辺デバイスよりCPU1へのデータ読み込み制御のスイ
ッチでCPU1のプログラム転送における読み込みの際
に、RD倍信号ローレベル)がORゲート54を介して
入力され導通状態となる。また3ステートバツフア52
はCPUIより周辺デバイスへのデータ転送を制御する
スイッチで、CPUIのプログラム転送における書込の
際に、WR倍信号ローレベル)がORゲート53を介し
て入力され導通状態(スイッチオン)になる。しかし、
この実施例による高速データ転送モードでは、ハイレベ
ルのC信号が2人力ORゲート53と54の第2人力に
加えられるため、WR倍信号RD倍信号レベルにかかわ
らず両スイッチ、即ち3ステートバツフア51と52は
開の状態(出力インピーダンス高)となり、CPUIは
システムデータバスSDRから切り離されることになる
Next, the data bus switch/NOP generating section 5 will be described in detail with reference to FIG. As shown, data bus switch/No? The generation unit 5 includes two 3-state buffers 5
1 and 52. The 3-state buffer 51 is a switch for controlling data reading from a peripheral device to the CPU 1, and becomes conductive when the RD double signal (low level) is inputted through the OR gate 54 during reading during program transfer from the CPU 1. Also 3 state buffer 52
is a switch that controls data transfer from the CPU to peripheral devices, and when writing in program transfer by the CPU, the WR multiplied signal (low level) is inputted via the OR gate 53 and becomes conductive (switched on). but,
In the high-speed data transfer mode according to this embodiment, since the high-level C signal is applied to the second input of the two-operated OR gates 53 and 54, both switches, that is, the three-state buffer, are 51 and 52 are in an open state (output impedance is high), and the CPUI is separated from the system data bus SDR.

55はNor発生部であり、CPUI側のデータバスD
BIと結合しており、高速データ転送において、CPU
IへNOPコードを供給するものである。ここでは、N
OP発生部55はデータバスDBIの各線を抵抗を介し
て設置する構成(いわゆるプルダウン構成)をとってい
る。したがって、3ステートバツフア51.52で構成
される両スイッチが開となる高速データ転送モードでは
、NOP発生部55により入力データバスDB11−に
は、all”0” (OOH)(7):l−ドが発生し
、CPUIに供給される。この場合、OOHのコードが
CPUIにとって、NOPコードとなっているわけであ
る。CPUIの機種によっては他のパターン例えばal
l “l” (IIH)をNOPコードとして使用する
ものもある。その場合には、そのパータンを発生するよ
うにNOP発生部55を構成すればよい。例えば、CP
UIが11HをNOPコードとして使用する場合には、
プルアップ構成にする。
55 is a Nor generation section, which is connected to the data bus D on the CPUI side.
It is combined with BI, and in high-speed data transfer, the CPU
It supplies a NOP code to I. Here, N
The OP generating section 55 has a configuration in which each line of the data bus DBI is connected via a resistor (a so-called pull-down configuration). Therefore, in the high-speed data transfer mode in which both switches constituted by the 3-state buffers 51 and 52 are open, the NOP generator 55 inputs all "0" (OOH) (7):l to the input data bus DB11-. - code is generated and provided to the CPUI. In this case, the OOH code becomes a NOP code for the CPUI. Depending on the CPU model, other patterns such as al
l Some use “l” (IIH) as a NOP code. In that case, the NOP generating section 55 may be configured to generate that pattern. For example, C.P.
If the UI uses 11H as the NOP code,
Make it a pull-up configuration.

次に第3図を参照してコントロール信号制御部6につい
て詳述する。66はメモリ選択論理部で、ここでは、ア
ドレスバスABからのアドレスの一部をデコードしてメ
モリ選択の信号を発生するアドレスデコーダで構成され
る。メモリ(デバイス)選択論理部は一般にマイクロコ
ンピュータにおいてCPUIがプログラム転送の際1周
辺メモリ(デバイス)の選択のために使用する素子であ
るが、この実施例においては、高速データ転送の肥し一
ム壬)1田16丁お41  つ才番1着田1.でいスh
t十である。
Next, the control signal controller 6 will be described in detail with reference to FIG. Reference numeral 66 denotes a memory selection logic unit, which is comprised of an address decoder that decodes a part of the address from the address bus AB to generate a memory selection signal. The memory (device) selection logic section is generally an element used by the CPU in a microcomputer to select one peripheral memory (device) when transferring a program.壬) 1 field 16 chome 41 tsusaiban 1 arrival field 1. Deis h
It is t ten.

67 (END  Ad)は、高速データ転送の最終ア
ドレスを記憶するものであり、アドレスバス上に最終ア
ドレスが発生したときに比較部68より高速データ転送
完了を表わすINT出力(ロウレベル)がでる。
67 (END Ad) is for storing the final address of high-speed data transfer, and when the final address is generated on the address bus, the comparator 68 outputs an INT output (low level) indicating the completion of high-speed data transfer.

ANDゲート65はCPUIからのC32信号とアドレ
スデコーダ66からのAC32信号と結合しており、そ
の出力信号MC52はRAM2のチップ選択入力(ロウ
レベルでアクティブ)に加えられる。同様にANDゲー
ト64にはCPLTIからのC3I信号とアドレスデコ
ーダ66からのAC3I信号が入力され、その出力信号
MC3IはRAMIのチップ選択入力に加えられる。O
Rゲート63はCPUIからのC52信号とHD倍信号
入力され、その出力はCPUIからのWR倍信号第1人
力とする2人力ANDゲート62の第2人力に加えられ
る。ANDゲート62の出力信号はRAM2の読出/書
込入力に加えられる。同様に、ORゲート61はCPU
IからのC3I信号とRD倍信号入力され、その出力は
CPUIからのWR倍信号第1人力とする2人力AND
ゲー)60の第2人力に加えられ、ANDゲート62の
出力はRAMIの読出/書込入力に加えられる。
AND gate 65 is coupled with the C32 signal from the CPUI and the AC32 signal from address decoder 66, and its output signal MC52 is applied to the chip select input (active at low level) of RAM2. Similarly, the C3I signal from the CPLTI and the AC3I signal from the address decoder 66 are input to the AND gate 64, and its output signal MC3I is applied to the chip selection input of the RAMI. O
The R gate 63 receives the C52 signal and the HD multiplied signal from the CPUI, and its output is added to the second signal of the AND gate 62 which uses the WR multiplied signal from the CPUI as the first signal. The output signal of AND gate 62 is applied to the read/write input of RAM2. Similarly, the OR gate 61
The C3I signal from I and the RD multiplied signal are input, and the output is the WR multiplied signal from the CPUI.
The output of AND gate 62 is applied to the read/write input of RAMI.

CPUIからのC3I信号とC32信号は高速データ転
送のために使用する信号で、CPUIの通常動作では(
メモリ選択信号として)使用しない。すなわち、通常は
ハイレベルに固定されており、CPUIはもっばらアド
レスバスAB、アドレスデコーダ66を介してメモリを
選択する。例えば、RAM2を選択する場合には、アド
レスデコーダよりローレベルのRAM2選択信号AC3
2が出て、これがゲート65(負論理ORゲート)を通
ってRAM2の選択が行なわれる(MC82信号がロー
レベル)。高速データ転送モードでのC81、C32信
号の使用のしかたについては以下の動作説明〒明らかに
する。
The C3I signal and C32 signal from the CPUI are signals used for high-speed data transfer.
Do not use (as memory selection signal). That is, it is normally fixed at a high level, and the CPU selects the memory mainly via the address bus AB and the address decoder 66. For example, when selecting RAM2, the address decoder outputs a low-level RAM2 selection signal AC3.
2 is output, which passes through gate 65 (negative logic OR gate) to select RAM2 (MC82 signal is at low level). How to use the C81 and C32 signals in the high-speed data transfer mode will be explained in the following operational description.

以下、高速データ転送の動作について説明する。便宜上
、RAM1からRAM2にデータ転送するものとし、第
4図、第5図及びその他の図を参照して説明する。
The operation of high-speed data transfer will be explained below. For convenience, it is assumed that data is transferred from RAM1 to RAM2, and the explanation will be given with reference to FIGS. 4, 5, and other figures.

まず、ステップ100でデータ受信側(即ち書き込み側
)のメモリであるRAM2 (第1図)に対して、選択
信号C92をイネーブルする(ローレベルにする)、こ
れによりRAM2にはローレベルのMCS信号が送られ
RAM2はチップイネーブルされる(第3図、第1図、
第5図)。ただし、CSI信号はハイレベルのままであ
る。ステップ101でデータ転送制御信号Cをイネーブ
ル゛H″にしてCPUIをシステムデータバスSDRか
ら切り離す。これによりCPUI側のデータバスDBI
にはNOPコードが発生する(第2図参照)。次にCP
UIはデータ転送の先頭アドレス(データ送信側のメモ
リであるRAMIの領域内のアドレス)にジャンプする
(ステップ102)。これにより、アドレスバスA B
−l二にはこのアドレスが発生し、その一部はメモリ選
択論理部であるアドレスデコーダ66(第3図)に送ら
れる。このため、RAMIの選択信号AC3Iがイネー
ブル゛L′′となりゲート64を介してデータ送信側(
読み出し側)のメモリであるRAMJがチップイネーブ
ルされる。ここにおいて、データ送信側と受信側のメモ
リ、RAMIとRAM2は選択された状態にあって、各
メモリのアドレス入力には、同一のアドレスが入力され
ており(同一アドレスによるアドレス指定がされている
)、CPUI側のデータバスDBI上にはNOPコード
が現われている。ここでCPUIはOFコツー(オペレ
ーションコード)を読み込もうとしてRD倍信号出力す
る。しかし、実際に読み込むのはOPコツーではなくN
orコードである。したがってCPUIは何も実行せず
、次のクロックφの際にアドレスカウンタがインクリメ
ントされ、次のアドレスに移行する。一方、RD倍信号
ローレベル)の発生により、この信号がデバイス6のゲ
ート63.62を介してRAM2の書込/読出入力端子
R/W2に書込信号(ローレベル信号)として入力され
るため、RAM2はデータ入力状態r 車;入Jl’ 
ffl )L”、 trス−* f= RA M 1 
tT+婁;入/ u出入力端子R/Wlはハイレベル(
C5I信号”°H′、WR信号11H”)のままである
ため、データ出力状態(読出状態)になる。このため、
先頭アドレスで指定されるRAMI内の記憶場所よりデ
ータが出力され、同じく先頭アドレスで指定されるRA
M2内の記憶場所へ直接転送され、1個分のデータ転送
が行なわれる。この後CPUIは同じようにしてNOP
コードを読み込み、アドレスだけをカウントアツプして
いき、RAMIよりRAM2へのデータ転送がRDクロ
ック信号の発生ごとに行なわれていく。やがてアドレス
バスAB上のアドレスが最終アドレス記憶部67(第3
図)のアドレスデータと一致すると(データ転送完了)
、比較部68により割込信号INTがCPUIに入力さ
れる。これによりCPUIは、C82信号をハイレベル
に戻しくステップ104)、データ転送信号Cをローレ
ベルに戻すことにより(ステップ105)、CPU1と
システムバスとの接続を復帰させ、アドレスをROMZ
内の所定アドレスにジャ、ツブさせることにより(ステ
ップ106)、アドレスバス上にROM2の所定アドレ
スが出力され、その」−位アドレスがアドレスデコーダ
66を介してデコードされてC5ROM信号が出てRO
M2がチップイネーブルされるとともに、残りの下位ア
ドレスによりROMZ内の所定の記憶場所が指定される
。このため、ROM2の同記憶場所より、オペレーショ
ンコードが取り出されシステムデータバス上に出力され
る。CPUIはRD倍信号出力して(ステップ107)
このオペレーションコードを読み取り(108)、通常
の動作に復帰する。通常のプログラム転送では、CPU
Iはアドレスバス及びドレスデコーダ66を介してメモ
リの選択及び選択メモリ内の記憶場所の指定を行ない、
WR倍信号より、メモリの読出/書込信号R/W 、 
R/Wlが制御される(WR−R/W1= R/W2 
:第3図参照)。
First, in step 100, the selection signal C92 is enabled (set to low level) for RAM2 (FIG. 1), which is the memory on the data receiving side (that is, the writing side). is sent and RAM2 is chip-enabled (Fig. 3, Fig. 1,
Figure 5). However, the CSI signal remains at high level. In step 101, the data transfer control signal C is enabled "H" to disconnect the CPU from the system data bus SDR.
A NOP code is generated (see Figure 2). Next, CP
The UI jumps to the start address of the data transfer (address within the RAMI area, which is the memory on the data sending side) (step 102). This allows address bus A B
This address is generated at -l2, a portion of which is sent to address decoder 66 (FIG. 3), which is the memory selection logic. Therefore, the selection signal AC3I of RAMI becomes enabled "L" and is passed through the gate 64 to the data transmitting side (
RAMJ, which is a memory on the read side), is chip-enabled. Here, the memories on the data sending side and the receiving side, RAMI and RAM2, are in the selected state, and the same address is input to the address input of each memory (addressing is done by the same address). ), a NOP code appears on the data bus DBI on the CPUI side. Here, the CPU outputs an RD double signal in an attempt to read the OF code (operation code). However, what is actually read is not OP Kotsu but N
It is an or code. Therefore, the CPUI does not execute anything, and the address counter is incremented at the next clock φ and moves to the next address. On the other hand, due to the generation of the RD double signal (low level), this signal is input as a write signal (low level signal) to the write/read input terminal R/W2 of RAM2 via the gate 63.62 of device 6. , RAM2 is in data input state r car; input Jl'
ffl)L”, trS-*f=RAM 1
tT+婁; input/u output/input terminal R/Wl is at high level (
Since the C5I signal remains at "°H', the WR signal 11H"), the data output state (read state) is reached. For this reason,
Data is output from the storage location in RAMI specified by the start address, and the data is output from the storage location in RAMI specified by the start address.
The data is transferred directly to the storage location in M2, and one piece of data is transferred. After this, CPUI does the same and NOPs
The code is read, only the address is counted up, and data is transferred from RAMI to RAM2 every time the RD clock signal is generated. Eventually, the address on the address bus AB is transferred to the final address storage section 67 (third
If it matches the address data in the figure) (data transfer complete)
, the comparator 68 inputs the interrupt signal INT to the CPUI. As a result, the CPU 1 restores the connection between the CPU 1 and the system bus by returning the C82 signal to high level (step 104) and returning the data transfer signal C to low level (step 105), and sets the address to ROMZ.
(step 106), the predetermined address of ROM2 is outputted onto the address bus, and the minus address is decoded via the address decoder 66 to output the C5ROM signal, which is output to the RO.
M2 is chip-enabled and the remaining lower address specifies a predetermined storage location within the ROMZ. Therefore, the operation code is extracted from the same storage location in the ROM 2 and output onto the system data bus. The CPU outputs the RD multiplied signal (step 107).
This operation code is read (108) and normal operation is resumed. In normal program transfer, the CPU
I selects a memory and specifies a storage location within the selected memory via the address bus and address decoder 66;
From the WR double signal, the memory read/write signal R/W,
R/Wl is controlled (WR-R/W1=R/W2
:See Figure 3).

RAM2よりRAMIへの高速、直接データ転送を行う
場合は、RAM1よりRAM2への転送の場合と反対の
ことを行なえばよい。
When performing high-speed, direct data transfer from RAM2 to RAMI, it is sufficient to do the opposite of the transfer from RAM1 to RAM2.

なお、」1記の第1実施例では、第1メモリとしてRA
MIを第2メモリとしてRAM2を使用しているが、こ
れに限らず、例えば第1メモリとしてROMを使用して
もよい(この場合、第3図に示す構成は全く変える必要
はない。ROMが常にデータ送信側のメモリになるだけ
である)。
In addition, in the first embodiment described in 1, RA is used as the first memory.
Although RAM2 is used as the MI as the second memory, the present invention is not limited to this, and for example, a ROM may be used as the first memory (in this case, there is no need to change the configuration shown in FIG. 3 at all. (It is always just the memory of the data sender).

また、直接データ転送すべきメモリとして第3のメモリ
を追加してもよい。この場合は、CPU1側にC33信
号を発生する手段を設け、その信号線をコントロール信
号制御部に接続し、コントロール信号制御部6側には、
アドレスデコーダ回路に、アドレス信号をデコードして
、AC33信号を生成する手段を設け、また、R/W3
.14C93信号を生成するための回路(即ち、ACS
3とC33と結合し、MC33を出力するANDゲート
、RDとC33と結合するORゲート及びこのORゲー
トの出力とWRと結合し、R/W3を出力するANDゲ
ート)を付加するだけでよい。同様にして、任意の多数
のメモリを追加しても、上記と同様の手段をその分だけ
追加すれば、簡単に対応でき、その多数のメモリの中か
ら任意に選んだ2つのメモリ間でこの発明による高速、
直接データ転送を行うことが可能である。
Further, a third memory may be added as a memory to which data is directly transferred. In this case, a means for generating the C33 signal is provided on the CPU 1 side, the signal line is connected to the control signal controller, and the control signal controller 6 side is provided with a means for generating the C33 signal.
The address decoder circuit is provided with means for decoding the address signal to generate an AC33 signal, and the R/W3
.. A circuit for generating 14C93 signals (i.e. ACS
It is only necessary to add an AND gate that connects RD and C33 and outputs MC33, an OR gate that connects RD and C33, and an AND gate that connects the output of this OR gate with WR and outputs R/W3. Similarly, even if an arbitrary number of memories are added, it can be easily handled by adding the same means as above, and this can be easily handled by adding the same number of memories as above. High speed by invention,
It is possible to perform direct data transfer.

第6図は、この発明の第2実施例で使用するコントロー
ル信号制御部6′の構成を示す。
FIG. 6 shows the configuration of a control signal controller 6' used in a second embodiment of the invention.

−I−品温1の実施例(第1図〜第5図)と異なる点は
、選択信号C3Iにより、データ転送モードで使用する
メモリを選択させ、受信側メモリと送信側メモリとを区
別する制御信号としてDlとD2信号を使用したことで
ある。
- I- Product temperature The difference from the embodiment 1 (Figures 1 to 5) is that the selection signal C3I selects the memory to be used in the data transfer mode and distinguishes between the receiving side memory and the transmitting side memory. The reason is that the Dl and D2 signals are used as control signals.

CP U 1よりコントロール信号制御部6′に供給さ
れる制御信号のうち、C3I、CS2.Dl、D2につ
いてその論理レベルを示す表を下にかかげる(その他の
制御信号の論理レベルは第1実施例と同じである)。
Among the control signals supplied from the CPU 1 to the control signal control unit 6', C3I, CS2. A table showing the logic levels of D1 and D2 is shown below (the logic levels of other control signals are the same as in the first embodiment).

第6図において、6AはNANDゲートでデータ転送信
号“HIIでD1信号が“H”のときその出力II L
 IIでORゲー)6Cをイネーブルして、リード信号
RD(またはこれと同期するCLOCK信号)を通す。
In FIG. 6, 6A is a NAND gate and when the data transfer signal is "HII" and the D1 signal is "H", its output II L
(OR game) 6C is enabled in II, and the read signal RD (or the CLOCK signal synchronized with this) is passed.

こうして通った信号は第1メモリの直接ライト信号nw
itとしてANDゲート62に供給される。第2メモリ
の直接ライト信臭nWR9小)I:品り一ついイ叫 T
’5WT)1の井渚辻と同様であるのでその構成の説明
を省略する。要するに、第6図の回路では、直接データ
転送モード中は、第1メモリの読出/書込信号R/Wl
は直接ライト信号DWRlで制御され(R/W1= D
 W R1)、第2メモリの読出/書込信号R/W2は
直接ライト信号DWR2で制御される(R/W1=DW
R2)。同じく直接データ転送モード中は第1メモリ選
択信号MC5Iは選択信号C81のみにより制御され(
MC31=CS 1)、同様にMC32=C52で制御
される。
The signal passed in this way is the direct write signal nw of the first memory.
It is supplied to AND gate 62 as it. 2nd memory direct write credit nWR 9th grade) I: Good quality shout T
Since it is the same as that of Inagitsuji in '5WT) 1, the explanation of its configuration will be omitted. In short, in the circuit of FIG. 6, during the direct data transfer mode, the read/write signal R/Wl of the first memory is
is directly controlled by the write signal DWRl (R/W1=D
W R1), the read/write signal R/W2 of the second memory is directly controlled by the write signal DWR2 (R/W1=DW
R2). Similarly, during the direct data transfer mode, the first memory selection signal MC5I is controlled only by the selection signal C81 (
MC31=CS 1), similarly MC32=C52.

一方、通常ノモードでは、R/Wl、R/W2はライト
信号WRで制御きれ(W R= R/W1= R/W2
)、MC5I、MC32はアドレスデコーダ6′から出
力される選択信号AC31、AC32により夫々制御さ
れる(MC5l=AC51,MC52=ACS2)。
On the other hand, in the normal mode, R/Wl and R/W2 cannot be controlled by the write signal WR (W R= R/W1= R/W2
), MC5I, and MC32 are respectively controlled by selection signals AC31 and AC32 output from the address decoder 6' (MC5l=AC51, MC52=ACS2).

例えば、第1メモリ(RAMI)から第2メモリ(RA
M2)に直接データ転送を行う場合には、C3I ”L
”、CS2 ’“L”に指定されるため、MC31”L
” 、MCS 2 ’“L 11となり、RAMIとR
AM2はともにチップイネーブルされる。またD2はH
”に指定され(受信メモリRAM2に関連するものであ
るから)、DIはtt L 11のままである。この結
果、転送制御信号がL”から“H”になったタイミング
(データ転送の開始タイミング)で、RD又はCLOC
K信号がゲート6Dを通り、さらに、ゲート62を通っ
て受信メモリであるRAM2を書込制御する。一方、D
WRlは“H11であるため、第1メモリは、R/Wl
がH”で読出状態におかれる。
For example, from the first memory (RAMI) to the second memory (RAMI)
When transferring data directly to M2), C3I “L”
", CS2 ' is specified as "L", so MC31"L
", MCS 2 '"L becomes 11, RAMI and R
Both AM2 are chip enabled. Also, D2 is H
” (because it is related to the reception memory RAM2), and DI remains at tt L 11. As a result, the timing at which the transfer control signal changes from “L” to “H” (data transfer start timing ), RD or CLOC
The K signal passes through gate 6D and further passes through gate 62 to control writing into RAM2, which is a receiving memory. On the other hand, D
Since WRl is “H11,” the first memory is R/Wl.
is placed in the read state at "H".

以降のデータ転送の実行は第1実施例の動作で説明した
ものと同じである。
The subsequent execution of data transfer is the same as that described in the operation of the first embodiment.

アドレスバスAB上のアドレス(CPUI内のアドレス
カウンタから出力されるアドレス)が、RAM2 (ま
たはRAMI)の領域を越える(データ転送完了)と、
アドレスデコーダ66′はアクティブ゛L″の割込信号
INTを出力する(っよりINTを発生させるアドレス
範囲は、いずれのメモリの選択のためのアドレス領域と
も異なる範囲(メモリ不使用範囲)としているのである
)。以降は第4図に関連して説明したのと同様な復帰処
理がなされる(ステップ4での処理がrcsl、C32
の選択解除、及び、D2のリード指定解除」とする処理
に変更されるだけである)。
When the address on the address bus AB (the address output from the address counter in the CPUI) exceeds the area of RAM2 (or RAMI) (data transfer is completed),
The address decoder 66' outputs an active "L" interrupt signal INT (because the address range in which INT is generated is a range different from the address range for selecting any memory (memory unused range)). Thereafter, the same recovery process as explained in connection with FIG.
, and the lead designation of D2.)

この第2実施例も、第1実施例と同様に拡張性を有し、
第3、第4メモリ・・・とメモリを追加して使用するこ
とができる。
This second embodiment also has expandability like the first embodiment,
Additional memories such as third and fourth memories can be used.

最後に、上記第1と第2実施例では、RAM1.2とし
て、ひとつの端子(R/W )で書込/読出制御するタ
イプのメモリを使用しているが、これに限らず、書込と
読出が別の端子を介して行なわれるタイプのメモリにも
本発明を適用することができ、そのために必要な変更は
当業者が容易に実施し得る範囲内である。
Finally, in the first and second embodiments, a type of memory in which writing/reading is controlled by one terminal (R/W) is used as the RAM 1.2, but this is not limited to this. The present invention can also be applied to a type of memory in which readout is carried out through separate terminals, and the necessary modifications therefor are within the scope of those skilled in the art.

[発明の効果] 以上の説明から明らかなように、この発明によれば、デ
ータ転送モードでNOPコードがCPU1側に供給され
るように1−1CPUIがNOPコードを読み込むごと
に歩進させられるアドレスカウンタが同一アドレスを保
持している間に読み出し側のメモリをデータ送信状態に
し、書き込み側のメモ1)k7’−夕受信状態にしてい
るので、メモリ間(RAMMRAM、RAMカード4−
ThRAM、ROM−+RAM等々)の大量のデータ転
送が直接かつ高速に行なえ、しかも構成が簡単であって
、小型のCPUレベルの論理を必要とする従来のDMA
コントローラのようなものは一切不要である。
[Effects of the Invention] As is clear from the above description, according to the present invention, the address is incremented each time the 1-1 CPUI reads a NOP code so that the NOP code is supplied to the CPU 1 side in the data transfer mode. While the counter holds the same address, the memory on the read side is in the data transmission state, and the memory on the write side is in the memo 1) k7' - evening reception state, so between the memories (RAMMRAM, RAM card 4 -
Conventional DMA, which can directly and quickly transfer large amounts of data (ThRAM, ROM-+RAM, etc.), has a simple configuration, and requires small CPU-level logic.
There is no need for anything like a controller.

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

第1図はこの発明の第1実施例を示す全体構成ブロック
図、第2図はデータバススイッチ/N。 P発生部の構成図、第3図はコントロール信号制御部の
構成図、第4図はデータ転送のフローチャート、第5図
はデータ転送のタイミングチャート、第6図は第2実施
例で使用するコントロール信号制御部の構成図である。 ■・・・・・・CPU、 2・・・・・・ROM、3・
・・・・・RAM1.4・・・・・・RAM2.5・・
・・・・データバススイッチ/NOP発生部、6.6′
・・・・・・コントロール信号制御部。
FIG. 1 is an overall configuration block diagram showing a first embodiment of the present invention, and FIG. 2 is a data bus switch/N. Figure 3 is a diagram of the configuration of the P generation section, Figure 3 is a diagram of the configuration of the control signal controller, Figure 4 is a flowchart of data transfer, Figure 5 is a timing chart of data transfer, and Figure 6 is a control used in the second embodiment. FIG. 3 is a configuration diagram of a signal control section. ■...CPU, 2...ROM, 3.
...RAM1.4...RAM2.5...
...Data bus switch/NOP generation section, 6.6'
...Control signal control section.

Claims (1)

【特許請求の範囲】[Claims] 読み出し側のメモリと書き込み側のメモリを選択する手
段と、CPUに備えられるアドレスカウンタと、CPU
よりシステムデータバスを切り離し、NOPコードをC
PUへ供給する手段と、CPUにおけるNOP判断で歩
進させられる上記アドレスカウンタが同一アドレスを保
持している間に書き込み側のメモリと読み出し側のメモ
リを夫々、書き込み、読み出しの状態に制御する手段と
を有することを特徴とするメモリ間のデータ転送方式。
means for selecting memory on the read side and memory on the write side, an address counter provided in the CPU, and a CPU
Disconnect the system data bus and write the NOP code to C.
means for supplying the data to the PU, and means for controlling the memory on the write side and the memory on the read side to write and read states, respectively, while the address counter, which is incremented by a NOP judgment in the CPU, holds the same address. An inter-memory data transfer method characterized by comprising:
JP17549585A 1985-08-09 1985-08-09 Inter-memory data transfer system Pending JPS6235950A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP17549585A JPS6235950A (en) 1985-08-09 1985-08-09 Inter-memory data transfer system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP17549585A JPS6235950A (en) 1985-08-09 1985-08-09 Inter-memory data transfer system

Publications (1)

Publication Number Publication Date
JPS6235950A true JPS6235950A (en) 1987-02-16

Family

ID=15997038

Family Applications (1)

Application Number Title Priority Date Filing Date
JP17549585A Pending JPS6235950A (en) 1985-08-09 1985-08-09 Inter-memory data transfer system

Country Status (1)

Country Link
JP (1) JPS6235950A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63204352A (en) * 1987-02-19 1988-08-24 Fujitsu Ltd Data transfer system
JPH01166152A (en) * 1987-12-22 1989-06-30 Fujitsu Ltd Program storage control system

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS57127259A (en) * 1981-01-29 1982-08-07 Toyo Electric Mfg Co Ltd System for high-speed data transfer
JPS5972532A (en) * 1982-10-20 1984-04-24 Hitachi Ltd Data transfer control method

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS57127259A (en) * 1981-01-29 1982-08-07 Toyo Electric Mfg Co Ltd System for high-speed data transfer
JPS5972532A (en) * 1982-10-20 1984-04-24 Hitachi Ltd Data transfer control method

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63204352A (en) * 1987-02-19 1988-08-24 Fujitsu Ltd Data transfer system
JPH01166152A (en) * 1987-12-22 1989-06-30 Fujitsu Ltd Program storage control system

Similar Documents

Publication Publication Date Title
US7233541B2 (en) Storage device
US7411859B2 (en) Multi-port memory device for buffering between hosts
KR101105489B1 (en) Command-based control of nand flash memory
US8310897B2 (en) Semiconductor memory device and data processing system including the semiconductor memory device
CN100419901C (en) Memory device having different burst order addressing for read and write operations
US20120089770A1 (en) Flash memory devices with high data transmission rates and memory systems including such flash memory devices
GB2430512A (en) Controller for NAND flash memory
US6721840B1 (en) Method and system for interfacing an integrated circuit to synchronous dynamic memory and static memory
US6357015B1 (en) Data interface and high-speed communication system using the same
US7725621B2 (en) Semiconductor device and data transfer method
CN110659231B (en) Memory system and method for accessing memory system
CA1178378A (en) High-speed external memory system
US5444852A (en) I/O device interface having buffer mapped in processor memory addressing space and control registers mapped in processor I/O addressing space
WO2007114676A1 (en) Device having shared memory and method for providing access status information by shared memory
JP3406444B2 (en) Bus controller for data transfer system
JPS6235950A (en) Inter-memory data transfer system
EP3968332A1 (en) Spi nor memory with optimized read and program operation
US6952750B2 (en) Method and device for providing a low power embedded system bus architecture
JP3092116B2 (en) Program change method
US11626149B2 (en) SPI NOR memory with optimized read and program operation
US20120124272A1 (en) Flash memory apparatus
JPH0715670B2 (en) Data processing device
US7920433B2 (en) Method and apparatus for storage device with a logic unit and method for manufacturing same
KR101285883B1 (en) signal processing method and apparatus for transmitting multiful processor signals to a shared memory
EP0814412B1 (en) A digital signal processor and a method for interfacing a digital signal processor