JP3442099B2 - Data transfer storage device - Google Patents

Data transfer storage device

Info

Publication number
JP3442099B2
JP3442099B2 JP35784592A JP35784592A JP3442099B2 JP 3442099 B2 JP3442099 B2 JP 3442099B2 JP 35784592 A JP35784592 A JP 35784592A JP 35784592 A JP35784592 A JP 35784592A JP 3442099 B2 JP3442099 B2 JP 3442099B2
Authority
JP
Japan
Prior art keywords
data
transfer
register
storage means
storage
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.)
Expired - Fee Related
Application number
JP35784592A
Other languages
Japanese (ja)
Other versions
JPH06195303A (en
Inventor
祐吉 森
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 Communication Technologies Ltd
Original Assignee
Hitachi Communication Technologies 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 Communication Technologies Ltd filed Critical Hitachi Communication Technologies Ltd
Priority to JP35784592A priority Critical patent/JP3442099B2/en
Publication of JPH06195303A publication Critical patent/JPH06195303A/en
Application granted granted Critical
Publication of JP3442099B2 publication Critical patent/JP3442099B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

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 storage device for storing data transferred from a host device in accordance with a command from the host device or reading the stored data and transferring the data to the host device.

【0002】[0002]

【従来の技術】従来のデータ転送記憶装置は、上位装置
とバッファメモリ間及びバッファメモリとI/O装置間
の両方にDMA転送によるデータ転送を行っていた。
2. Description of the Related Art A conventional data transfer storage device performs data transfer by DMA transfer between a host device and a buffer memory and between a buffer memory and an I / O device.

【0003】[0003]

【発明が解決しようとする課題】しかしながら、従来の
データ転送記憶装置は、バッファメモリを介した上位側
と下位側の両方にDMA転送を行う回路を有しているた
め、ハードウェアとしての回路の規模が大きくな、装
置が高価となる上、装置の小型化を図るのが困難で
り、また、上位側から該上位側が転送するデータ転送量
を予め通知してもらう必要があるという問題があった。
However, since the conventional data transfer storage device has a circuit for performing the DMA transfer on both the upper side and the lower side via the buffer memory, the circuit of the hardware is Ri is Na large scale, on which device is expensive, Oh is difficult to reduce the size of the device
And the amount of data transferred from the host to the host
There was a problem that it was necessary to notify in advance .

【0004】本発明はこのような従来の問題を解決する
ものであり、ソフトウェアの制御により装置構成を簡素
化し、また、例えば上位側とハンドシェーク手順でやり
とりしているため、該上位側から予めデータ転送量を得
ることができなくてもDMA動作と同等の高速処理を行
うデータ転送記憶装置を提供することを目的とする。
The present invention solves such a conventional problem, simplifies the device configuration by controlling software, and performs the handshake procedure with, for example, the host side.
Therefore, the data transfer amount is obtained in advance from the upper side.
An object of the present invention is to provide a data transfer storage device that can perform high-speed processing equivalent to a DMA operation even if it is not possible .

【0005】[0005]

【課題を解決するための手段】本発明は上記目的を達成
するために、第1に、上位装置からの命令を受信し、当
該上位装置へ転送するデータをnビット(但し、nは2
以上の自然数)毎に送信を行う上位装置処理手段と、前
記データを一時的に蓄積する第1の記憶手段と、前記デ
ータを記憶する少なくとも一つの第2の記憶手段と、前
記第1の記憶手段及び第2の記憶手段間で所定の転送指
示によりデータのDMA転送を行う転送処理手段と、前
記上位装置処理手段が受信した前記命令を読解し、前記
転送処理手段に前記転送指示を与える制御手段とを備え
たデータ転送記憶装置において、前記上位装置処理手段
は、前記制御手段が読み書き可能なn×mビット(但
し、mは2以上の自然数)から構成される複数のデータ
レジスタと、前記複数のデータレジスタ内のデータの有
無状態を表示するステータスレジスタと、前記複数のデ
ータレジスタにデータが書き込まれると、n×mビット
データをnビットデータに分割し、その分割されたnビ
ットデータをm回に分けて前記上位装置へ転送するデー
タ転送制御手段とを備え、前記制御手段は、前記上位装
置からの前記命令を読解する命令認識手段と、前記命令
認識手段が、前記第の記憶手段から前記上位装置への
転送命令と認識すると、前記転送処理手段に前記第2の
記憶手段から前記第1の記憶手段にDAM転送を指示を
行う転送指示手段と、前記第1の記憶手段内のデータ
を、前記複数のデータレジスタにn×mビット単位で
き込むデータ書込手段であって、前記複数のデータレジ
スタのうち、一つのデータレジスタのデータを前記デー
タ転送制御手段が転送中に、前記複数のデータレジスタ
のうち、他のデータレジスタの状態を前記ステータスレ
ジスタから読み取り、前記ステータスレジスタの状態が
「データ無」のとき、前記第1の記憶手段内のデータを
前記他のデータレジスタへ書き込むデータ書込手段と、
を備えた構成となっており、第2に、上位装置からの命
令を受信し、当該上位装置から転送されるnビット(但
し、nは2以上の自然数)毎のデータを受信する上位装
置処理手段と、前記データを一時的に蓄積する第1の記
憶手段と、前記データを記憶する少なくとも一つの第2
の記憶手段と、前記第1の記憶手段及び第2の記憶手段
間で所定の転送指示によりデータのDMA転送を行う転
送処理手段と、前記上位装置処理手段が受信した前記命
令を読解し、前記転送処理手段に前記転送指示を与える
制御手段とを備えたデータ転送記憶装置において、前記
上位装置処理手段は、前記上位装置からのデータを受信
するデータ受信制御手段と、前記制御手段が読み書き可
能なn×mビット(但し、mは2以上の自然数)から構
成される複数のデータレジスタと、前記データ受信制御
手段が受信した前記nビットデータをm回に分けて、前
データレジスタへ転送するデータ転送制御手段と、前
記複数のデータレジスタ内のデータの有無状態を表示す
るステータスレジスタとを備え、前記制御手段は、前記
上位装置からの前記命令を読解する命令認識手段と、前
記命令認識手段が、前記上位装置から前記第2の記憶手
段への転送命令と認識すると、前記複数のデータレジス
タに転送された前記データをn×mビットデータとして
読み取り、これをn×mビット単位で前記第1の記憶手
段に書き込むデータ転送手段であって、前記複数のデー
タレジスタのうち、一つのデータレジスタのn×mビッ
データを前記データ転送制御手段が転送中に、前記複
数のデータレジスタのうち、他のデータレジスタの状態
を前記ステータスレジスタから読み取り、前記ステータ
スレジスタの状態が「データ有」のとき、前記他のデー
タレジスタ内のn×mビットデータを読み取るデータ転
送手段と、前記転送処理手段に前記第1の記憶手段から
前記第2の記憶手段にDAM転送指示を行う転送指示手
段と、を備えた構成となっている。
In order to achieve the above-mentioned object, the present invention firstly, receives an instruction from a host device and transfers data to the host device in n bits (where n is 2).
Upper device processing means for transmitting each of the above natural numbers, first storage means for temporarily storing the data, at least one second storage means for storing the data, and the first storage Control means for performing DMA transfer of data according to a predetermined transfer instruction between the means and the second storage means, and a command for interpreting the command received by the host device processing means and giving the transfer instruction to the transfer processing means. In the data transfer storage device, the upper device processing means is capable of reading and writing n × m bits ( however, by the control means).
However , m is a natural number of 2 or more) , a plurality of data registers, a status register for displaying the presence / absence of data in the plurality of data registers, and when data is written in the plurality of data registers, n × m bit
Divide the data into n-bit data, and divide the divided n-bit data.
The Ttodeta divided into m times a data transfer control means for transferring to the host system, wherein the control means includes a command recognition means for reading the instruction from the host system, said command recognition unit, the second And a transfer instruction means for instructing the transfer processing means to perform DAM transfer from the second storage means to the first storage means, Data writing means for writing data in the means to the plurality of data registers in units of n × m bits , wherein data of one data register among the plurality of data registers is used as the data during the transfer control means transfers, among the plurality of data registers, read the status of the other data registers from the status register, the state of the status register is "data Mu" Noto Data writing means for writing the data in the first storage means to the other data register,
Secondly, it receives the command from the higher-level device and transfers n bits (however,
Where n is a natural number of 2 or more), a host device processing means for receiving data for each, a first storage means for temporarily storing the data, and at least one second storage means for storing the data.
Storage means, transfer processing means for performing DMA transfer of data between the first storage means and the second storage means in accordance with a predetermined transfer instruction, and the instruction received by the host device processing means, In a data transfer storage device comprising a transfer processing means and a control means for giving the transfer instruction, the host device processing means is a data reception control means for receiving data from the host device, and the control means is readable and writable. Constructed from n × m bits (where m is a natural number of 2 or more)
A plurality of data registers and the n-bit data received by the data reception control means are divided into m times,
Serial data transfer control means for transferring to the data register, and a status register indicates whether the state of the data in said plurality of data registers, said control means, command recognition means for reading said instructions from said host device And when the command recognition means recognizes a transfer command from the host device to the second storage means, the data transferred to the plurality of data registers is read as n × m bit data, This was a data transfer means for writing in said first memory means in n × m bits among the plurality of data registers, n × m bits of one data register
The door data during transfer said data transfer control means, among the plurality of data registers, the other data register state
Read from the status register
When the status of the register is “with data”, the data transfer means for reading n × m bit data in the other data register and the transfer processing means from the first storage means to the second storage means DAM. And a transfer instruction means for giving a transfer instruction.

【0006】[0006]

【作用】本発明によれば、上位装置からの命令により、
ライト時における上位装置から第1の記憶手段へのデー
タの書き込み動作、および、リード時における第1の記
憶手段から上位装置へのデータの読み出し動作を、上位
装置から該上位装置が要求するデータ転送量を予め通知
してもらえずDMA転送を用いることができなくても、
高速に処理することができる。
According to the present invention, by the instruction from the host device,
The data write operation from the host device to the first storage means at the time of writing, and the operation of reading data from the first storage means at the time of read to the upper apparatus, the upper
Informs the amount of data transfer required by the host device from the device in advance
Even if you can not use DMA transfer without being asked,
It can be processed at high speed.

【0007】[0007]

【実施例】以下、本発明について図面を参照して説明す
る。
DESCRIPTION OF THE PREFERRED EMBODIMENTS The present invention will be described below with reference to the drawings.

【0008】図1は本発明の一実施例を示すブロック図
である。図1において、データ転送記憶装置8は、上位
装置1と信号線9で接続されている。このデータ転送記
憶装置8の内部には、制御手段であるCPU2と、この
CPU2とCPUバス10を介して接続され、上位装置
からの命令を受信すると共に、上位装置との間でデータ
の送受信を行う上位装置処理部3を有している。また、
データを一時的に蓄積する第1の記憶手段であるバッフ
ァメモリ6及びその制御を行うバッファメモリ処理部4
を有している。さらに、SCSI(Small Com
puter System Interface)準拠
の第2の記憶手段である複数のI/O装置7(7a、7
b、7c)、バッファメモリ処理部4とI/O装置7と
の間で、CPU2の転送指示によるデータのDMA転送
を行う転送処理手段としてのSCSI処理部5を具備し
ている。
FIG. 1 is a block diagram showing an embodiment of the present invention. In FIG. 1, the data transfer storage device 8 is connected to the host device 1 by a signal line 9. The data transfer storage device 8 is internally connected to the CPU 2 serving as a control unit via the CPU 2 and the CPU bus 10, receives commands from the host device, and transmits / receives data to / from the host device. It has a higher-level device processing unit 3 for performing the operation. Also,
A buffer memory 6 that is a first storage unit that temporarily stores data and a buffer memory processing unit 4 that controls the buffer memory 6.
have. In addition, SCSI (Small Com
a plurality of I / O devices 7 (7a, 7) that are second storage means conforming to the computer system interface.
b, 7c), the buffer memory processing unit 4 and the I / O device 7 are provided with a SCSI processing unit 5 as a transfer processing unit that performs DMA transfer of data according to a transfer instruction of the CPU 2.

【0009】SCSI処理部5と、バッファメモリ処理
部4とは信号線11aを介して接続され、SCSI処理
部5とI/O装置7とはSCSIバス12を介して接続
される。このI/O装置7は最大7台まで接続すること
ができる。
The SCSI processing unit 5 and the buffer memory processing unit 4 are connected via a signal line 11a, and the SCSI processing unit 5 and the I / O device 7 are connected via a SCSI bus 12. Up to seven I / O devices 7 can be connected.

【0010】次にデータ転送記憶装置8の動作について
説明する。
Next, the operation of the data transfer storage device 8 will be described.

【0011】上位装置1と上位装置処理部3とを接続し
ている信号線9のインタフェースは、上り、下りの8ビ
ットのデータ線と制御線を持ち、ハンドシェーク手順で
動作し、コマンド起動、転送、報告の3段階で遷移する
ものである。また、信号線9の最大転送速度は、上位装
置1の制約から500KByte/秒である。
The interface of the signal line 9 connecting the higher-level device 1 and the higher-level device processing section 3 has an 8-bit data line and a control line of up and down, operates in a handshake procedure, and activates and transfers commands. , Transitions in three stages of reporting. The maximum transfer rate of the signal line 9 is 500 KByte / sec due to the restriction of the host device 1.

【0012】まず、上位装置1からI/O装置7aへデ
ータを書き込む動作(ライト動作)について説明する。
上位装置1よりコマンド起動シーケンスにおいて、コマ
ンドすなわち命令を信号線9を介して上位装置処理部3
で受信する。受信完了は、割り込み信号でCPU2へ知
らせ、CPU2が上位装置処理部3からコマンドを読み
出す。そのコマンドにより、CPU2は上位装置処理部
3へデータ転送要求を出す。上位装置処理部3は上位装
置1に対し転送シーケンスを要求する。
First, the operation (write operation) of writing data from the host device 1 to the I / O device 7a will be described.
In the command activation sequence from the host device 1, a command, that is, an instruction, is sent via the signal line 9 to the host device processing unit 3
To receive. The reception completion is notified to the CPU 2 by an interrupt signal, and the CPU 2 reads the command from the higher-level device processing section 3. In response to the command, the CPU 2 issues a data transfer request to the host device processing unit 3. The host device processing unit 3 requests the transfer sequence from the host device 1.

【0013】転送シーケンス状態になると、上位装置1
から8ビットのデータを上位装置処理部3が受信し、4
バイト分のデータが蓄積されると、CPU2は上位装置
処理部3から32ビットデータとして読み出し、バッフ
ァメモリ処理部4を経由してバッファメモリ6へ書き込
む。この上位装置1からバッファメモリ6にデータを書
き込む処理を、上位装置1が要求する転送量まで繰り返
す。
When in the transfer sequence state, the host device 1
8 bits of data from the
When the data for bytes is accumulated, the CPU 2 reads it as 32-bit data from the higher-level device processing unit 3 and writes it in the buffer memory 6 via the buffer memory processing unit 4. The process of writing data from the host device 1 to the buffer memory 6 is repeated until the transfer amount requested by the host device 1.

【0014】バッファメモリ6への転送が終了すると、
CPU2は、バッファメモリ処理部4とSCSI処理部
5へDMA(ダイレクトメモリアクセス)動作を指示
し、バッファメモリ6の32ビットデータをバッファメ
モリ処理部4で8ビットに変換し、SCSI処理部5を
経てI/O装置7aへDMA転送する。この転送シーケ
ンスが終了すると、CPU2は上位装置処理部3へ報告
要求を送出し、上位装置処理部3は上位装置1に対し報
告シーケンスを要求する。報告シーケンス状態になる
と、CPU2は、正常書き込み動作終了を示すステータ
ス情報を上位装置処理部3へ書き込むと、このステータ
ス情報が上位装置処理部3より上位装置1へ転送され、
ライト動作が終了する。
When the transfer to the buffer memory 6 is completed,
The CPU 2 instructs the buffer memory processing unit 4 and the SCSI processing unit 5 to perform a DMA (direct memory access) operation, converts the 32-bit data in the buffer memory 6 into 8 bits in the buffer memory processing unit 4, and causes the SCSI processing unit 5 to operate. Then, DMA transfer is performed to the I / O device 7a. When this transfer sequence ends, the CPU 2 sends a report request to the higher-level device processing unit 3, and the higher-level device processing unit 3 requests the higher-level device 1 for the report sequence. In the report sequence state, the CPU 2 writes the status information indicating the normal writing operation end to the higher-level device processing unit 3, and this status information is transferred from the higher-level device processing unit 3 to the higher-level device 1.
The write operation ends.

【0015】次に、上位装置1へI/O装置7aからデ
ータを読み出す動作(リード動作)について説明する。
ライト動作と同様に、上位装置1よりコマンド起動シー
ケンスにおいてコマンドを信号線9を介して上位装置処
理部3で受信する。受信完了は、割り込み信号でCPU
2へ知らせ、CPU2が上位装置処理部3からコマンド
を読み出す。そのコマンドにより、CPU2は、バッフ
ァメモリ処理部5とSCSI処理部5へDMA動作を指
示し、I/O装置7aから読み出された8ビットデータ
をSCSI処理部5を経てバッファメモリ処理部4で3
2ビットに変換し、バッファメモリ6へDMA転送す
る。DMA転送が終了すると、CPU2は上位装置処理
部3へデータ転送要求を出す。上位装置処理部3は上位
装置1に対し転送シーケンスを要求する。転送シーケン
スになると、CPU2は、32ビットデータをバッファ
メモリ処理部4を経由してバッファメモリ6から読み取
り、上位装置処理部3へ書き込む。書き込まれたデータ
は、8ビットのデータとして上位装置1へ送信され、4
バイト分のデータを送信終了すると、CPU2は、バッ
ファメモリ6から上位装置1へ転送する処理を上位装置
1が要求する転送量まで繰り返す。転送シーケンスが終
了すると、CPU2は上位装置処理部3へ報告要求を出
す。
Next, the operation (read operation) of reading data from the I / O device 7a to the host device 1 will be described.
Similar to the write operation, in the command activation sequence, the command is received by the host device processing unit 3 from the host device 1 via the signal line 9. When the reception is completed, the CPU sends an interrupt signal
2 is notified, and the CPU 2 reads the command from the higher-level device processing unit 3. In response to the command, the CPU 2 instructs the buffer memory processing unit 5 and the SCSI processing unit 5 to perform a DMA operation, and the 8-bit data read from the I / O device 7a is processed by the buffer memory processing unit 4 via the SCSI processing unit 5. Three
It is converted into 2 bits and DMA-transferred to the buffer memory 6. When the DMA transfer is completed, the CPU 2 issues a data transfer request to the host device processing unit 3. The host device processing unit 3 requests the transfer sequence from the host device 1. In the transfer sequence, the CPU 2 reads the 32-bit data from the buffer memory 6 via the buffer memory processing unit 4 and writes the 32-bit data to the higher-level device processing unit 3. The written data is transmitted to the higher-level device 1 as 8-bit data and 4
When the transmission of the data of bytes is completed, the CPU 2 repeats the process of transferring from the buffer memory 6 to the higher-level device 1 up to the transfer amount requested by the higher-level device 1. When the transfer sequence ends, the CPU 2 issues a report request to the higher-level device processing unit 3.

【0016】上位装置処理部3は上位装置1に対し報告
シーケンスを要求する。
The host device processing unit 3 requests the report sequence from the host device 1.

【0017】報告シーケンス状態になると、CPU2
は、正常読み取り動作終了を示すステータス情報を上位
装置処理部3へ書き込む。このステータス情報は上位装
置処理部3より上位装置1へ転送され、リード動作が終
了する。
In the report sequence state, the CPU 2
Writes status information indicating the end of the normal reading operation in the higher-level device processing unit 3. This status information is transferred from the host device processing unit 3 to the host device 1, and the read operation is completed.

【0018】次に、本実施例における高速処理につい
て、図2、図3、図4を参照して説明する。図2は上位
装置処理部3の動作を示すブロック図である。また、図
3はリード転送処理のフローチャートである。また、図
4はライト転送処理のフローチャートである。
Next, the high speed processing in this embodiment will be described with reference to FIGS. 2, 3 and 4. FIG. 2 is a block diagram showing the operation of the higher-level device processing section 3. FIG. 3 is a flowchart of the read transfer process. FIG. 4 is a flowchart of the write transfer process.

【0019】図2において、上位装置処理部3は、図1
に示したように、CPU2と上位装置1へ接続されてお
り、その内部構成は以下のようになっている。すなわ
ち、上位装置処理部3をCPU2から制御するためのレ
ジスタであるコントロールレジスタ13と、上位装置処
理部3のステータス情報をCPU2から読み出すための
レジスタであるステータスレジスタ14と、リード/ラ
イトデータを保持するデータレジスタA15及び、デー
タレジスタB16と、これらのレジスタの中から特定す
るレジスタをCPU2より選択するためのレジスタセレ
クタ17と、上位装置1との転送シーケンスを制御する
I/Oシーケンス制御部18と、上位装置1との転送シ
ーケンスにおいてデータ転送を制御するデータ転送制御
部19と、上位装置1へ送信するための出力信号バッフ
ァ20と、上位装置1より受信するための入力信号バッ
ファ21とで構成される。
In FIG. 2, the host device processing section 3 is the same as that of FIG.
As shown in FIG. 3, the CPU 2 and the host device 1 are connected, and the internal configuration is as follows. That is, the control register 13 that is a register for controlling the higher-level device processing unit 3 from the CPU 2, the status register 14 that is a register for reading the status information of the higher-level device processing unit 3 from the CPU 2, and the read / write data are held. A data register A15 and a data register B16, a register selector 17 for selecting a register to be specified from these registers by the CPU 2, and an I / O sequence controller 18 for controlling a transfer sequence with the higher-level device 1. , A data transfer control unit 19 for controlling data transfer in a transfer sequence with the host device 1, an output signal buffer 20 for sending to the host device 1, and an input signal buffer 21 for receiving from the host device 1. To be done.

【0020】まず、リード動作を図3に基き、図2の上
位装置処理部3の動作を示すブロック図を参照して説明
する。
First, the read operation will be described based on FIG. 3 with reference to the block diagram showing the operation of the host device processing section 3 in FIG.

【0021】図2のCPU2は、転送シーケンスになる
と、リード動作に必要な設定をコントロールレジスタ1
3へライトする。次にデータレジスタA15へバッファ
メモリ処理部4を経由してバッファメモリ6から読み取
った32ビットデータをライトし(ステップS1)、続
いてデータレジスタB16へバッファメモリ処理部4を
経由してバッファメモリ6から読み取った32ビットデ
ータをライトする(ステップS2)。このことによっ
て、最初にデータレジスタA15にライトした32ビッ
トデータを、データ転送制御部19で8ビットのデータ
に分割し、I/Oシーケンス制御部18と出力信号バッ
ファ20を経由して上位装置1へ1バイトずつ4バイト
転送し、次に、データレジスタB16にライトされた3
2ビットデータもデータレジスタA15と同様に上位装
置1へ1バイトずつ4バイト転送する。
In the transfer sequence, the CPU 2 of FIG. 2 sets the settings required for the read operation in the control register 1
Write to 3. Then buffer to data register A15
Read from the buffer memory 6 via the memory processing unit 4
The 32-bit data is written (step S1), and then the buffer memory processing unit 4 is loaded into the data register B16.
The 32-bit data read from the buffer memory 6 via the via is written (step S2). As a result, the 32-bit data first written to the data register A15 is divided into 8-bit data by the data transfer control unit 19, and the higher-level device 1 is passed through the I / O sequence control unit 18 and the output signal buffer 20. 4 bytes for each 1 byte, and then 3 written to the data register B16
Similarly to the data register A15, 2-bit data is transferred to the higher-level device 1 by 4 bytes one byte at a time.

【0022】データレジスタA15とデータレジスタB
16にライト後、CPU2は、ステータスレジスタ14
をリードし、データレジスタA15が空になったか否
か、すなわち32ビットデータの転送が終了したか否か
を調べ(ステップS3)、空になっていればデータレジ
スタA15へバッファメモリ処理部4を経由してバッフ
ァメモリ6から読み取った次の新たな32ビットデータ
をライトする(ステップS4)。その後、ステータスレ
ジスタ14をリードし、データレジスタB16が空にな
ったか否かを調べ(ステップS5)、空になっていれば
データレジスタB16へバッファメモリ処理部4を経由
してバッファメモリ6から読み取った次の32ビットデ
ータをライトする(ステップS6)。続いて、転送終了
か否かを調べ(ステップS7)、転送終了でなければス
テップS3に戻り、転送終了であれば処理を終了する。
Data register A15 and data register B
After writing to 16, the CPU 2 sets the status register 14
Is read, and it is checked whether or not the data register A15 is empty, that is, whether or not the transfer of 32-bit data is completed (step S3). If it is empty, the buffer memory processing unit 4 is transferred to the data register A15. Via buff
The next new 32-bit data read from the memory 6 is written (step S4). After that, the status register 14 is read and it is checked whether or not the data register B16 is empty (step S5). If the data register B16 is empty, the data register B16 is passed to the buffer memory processing unit 4.
Then, the next 32-bit data read from the buffer memory 6 is written (step S6). Then, it is checked whether or not the transfer is completed (step S7). If the transfer is not completed, the process returns to step S3, and if the transfer is completed, the process is completed.

【0023】このように、リード動作時には、B面のレ
ジスタのデータを上位装置1へ転送している間に、A面
のレジスタへデータをライトし、また、A面のレジスタ
のデータを上位装置1へ転送している間に、B面のレジ
スタへデータをライトすることにより高速処理をするこ
とができる。
As described above, during the read operation, while the data in the B-side register is being transferred to the host device 1, the data is written in the A-side register, and the data in the A-side register is transferred to the host device. High-speed processing can be performed by writing data to the B-side register while transferring to 1.

【0024】次に、ライト動作を図4に基き、図2の上
位装置処理部3の動作を示すブロック図を参照して説明
する。
Next, the write operation will be described based on FIG. 4 with reference to the block diagram showing the operation of the host device processing section 3 in FIG.

【0025】図2のCPU2は、転送シーケンスになる
と、ライト動作に必要な設定をコントロールレジスタ1
3へライトする。続いて、ステータスレジスタ14をリ
ードし、データレジスタA15が一杯になったか否か、
すなわち32ビットデータがデータレジスタA15にす
べて格納されたか否かを調べ(ステップS8)、一杯に
なっていればデータレジスタA15より32ビットデー
タをリードし、バッファメモリ処理部4を経由してバッ
ファメモリ6へ書き込む(ステップS9)。その後、ス
テータスレジスタ14をリードし、データレジスタB1
6が一杯になったか否かを調べ(ステップS10)、一
杯になっていればデータレジスタB16より32ビット
データをリードし、バッファメモリ処理部4を経由して
バッファメモリ6へ書き込む(ステップS11)。続い
て、転送終了か否かを調べ(ステップS12)、転送終
了でなければステップS8に戻り、転送終了であれば、
処理を終了する。
In the transfer sequence, the CPU 2 of FIG. 2 sets the settings necessary for the write operation in the control register 1
Write to 3. Then, the status register 14 is read to determine whether the data register A15 is full,
That is, it is checked whether or not all the 32-bit data is stored in the data register A15 (step S8). If the 32-bit data is full, the 32-bit data is read from the data register A15 and the buffer memory processor 4 is used to read the data.
Write to the far memory 6 (step S9). After that, the status register 14 is read and the data register B1
6 is checked to see if it is full (step S10). If it is full, 32-bit data is read from the data register B16 and passed through the buffer memory processing unit 4.
Write to the buffer memory 6 (step S11). Then, it is checked whether or not the transfer is completed (step S12). If the transfer is not completed, the process returns to step S8, and if the transfer is completed,
The process ends.

【0026】以上のライト動作の処理において、上位装
置1より転送された1バイトずつのデータは図2の入力
信号バッファ21とI/Oシーケンス制御部18を経由
してデータ転送制御部19で4バイトのデータに合成
し、32ビットデータとしてデータレジスタA15また
はデータレジスタB16へライトする。
In the above-described write operation processing, the data of 1 byte transferred from the host device 1 is transferred to the data transfer control unit 19 via the input signal buffer 21 and the I / O sequence control unit 18 of FIG. The data is combined into byte data and written as 32-bit data in the data register A15 or the data register B16.

【0027】このように、ライト動作時には、上位装置
1からB面のレジスタへデータを転送している間に、A
面のレジスタよりデータをリードし、また、上位装置1
からA面のレジスタへデータを転送している間に、B面
のレジスタよりデータをリードすることにより高速処理
をすることできる。
As described above, during the write operation, while the data is being transferred from the higher-level device 1 to the register on the B side, A
Data is read from the register on the screen, and the host device 1
While transferring data to the register A plane from, it can be a high-speed processing by reading the more data registers B surface.

【0028】この場合、上位装置1とデータ転送記憶装
置8との間の転送速度は、500KByte/秒である
ので、32ビットデータすなわち4バイトの転送時間は
8マイクロ秒となる。また、CPU2が32ビットデー
タをデータレジスタA又はBにセットする時間は1マイ
クロ秒以下であるので、一方のデータレジスタが32ビ
ットデータの転送を終了するまでには、空きになってい
る他方のデータレジスタに32ビットデータをセットす
る時間はほとんど無視することができる。
In this case, since the transfer rate between the host device 1 and the data transfer storage device 8 is 500 KByte / sec, the transfer time of 32-bit data, that is, 4 bytes is 8 microseconds. Further, since the time for which the CPU 2 sets the 32-bit data in the data register A or B is 1 microsecond or less, one of the data registers is vacant until the transfer of the 32-bit data is completed. The time to set 32-bit data in the data register can be almost ignored.

【0029】なお、上記実施例においては、I/O装置
をSCSI準拠の装置としたが、他のデータ伝送のイン
ターフェースにも本発明を適用することができる。
Although the I / O device is a device conforming to SCSI in the above embodiment, the present invention can be applied to other data transmission interfaces.

【0030】[0030]

【発明の効果】このように、本発明によれば、上位装置
が要求するデータ転送量を予め認識しなくても、上位装
置の命令に従って、ライト時には、上位装置からのデー
タをI/O装置へ書き込み、また、リード時には上位装
置へI/O装置からデータを読み出す処理を高速にで
き、さらに、DMA転送処理のためのハードウェアの構
成を簡素化できるので、装置のコストダウン及び装置の
小型化を実現する効果がある。
As described above, according to the present invention, the host device
Even if the data transfer amount required by the device is not recognized in advance, the data from the host device is written to the I / O device at the time of writing and the data from the I / O device to the host device at the time of reading according to the command of the host device. Since the reading process can be performed at high speed and the hardware configuration for the DMA transfer process can be simplified, the cost of the device can be reduced and the device can be downsized.

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

【図1】本発明のデータ転送記憶装置の一実施例を示す
ブロック図である。
FIG. 1 is a block diagram showing an embodiment of a data transfer storage device of the present invention.

【図2】図1に示す上位装置処理部のブロック図であ
る。
FIG. 2 is a block diagram of a host device processing unit shown in FIG.

【図3】図2のリード転送処理を示すフローチャートで
ある。
FIG. 3 is a flowchart showing a read transfer process of FIG.

【図4】図2のライト転送処理を示すフローチャートで
ある。
FIG. 4 is a flowchart showing a write transfer process of FIG.

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

1 上位装置 2 CPU(制御手段) 3 上位装置処理部 4 バッファメモリ処理部 5 SCSI処理部(転送処理手段) 6 バッファメモリ(第1の記憶手段) 7a〜7c I/O装置(第2の記憶手段) 8 データ転送記憶装置 9,11,11a 信号線 10 CPUバス 12 SCSIバス 13 コントロールレジスタ 14 ステータスレジスタ 15 データレジスタA 16 データレジスタB 17 レジスタセレクタ 18 I/Oシーケンス制御部 19 データ転送制御部 20 出力信号バッファ 21 入力信号バッファ 1 Upper device 2 CPU (control means) 3 Upper device processing unit 4 Buffer memory processing unit 5 SCSI processing unit (transfer processing means) 6 Buffer memory (first storage means) 7a to 7c I / O device (second storage means) 8 Data transfer storage device 9, 11, 11a signal line 10 CPU bus 12 SCSI bus 13 Control register 14 Status register 15 Data register A 16 Data register B 17 register selector 18 I / O sequence controller 19 Data transfer control unit 20 output signal buffer 21 Input signal buffer

───────────────────────────────────────────────────── フロントページの続き (56)参考文献 特開 平2−284251(JP,A) 特開 昭63−271563(JP,A) 特開 昭63−137358(JP,A) 特開 平4−148268(JP,A) 特開 平3−14157(JP,A) 特開 平1−123318(JP,A)   ─────────────────────────────────────────────────── ─── Continued front page       (56) References JP-A-2-284251 (JP, A)                 Japanese Patent Laid-Open No. 63-271563 (JP, A)                 JP 63-137358 (JP, A)                 JP-A-4-148268 (JP, A)                 JP-A-3-14157 (JP, A)                 JP-A-1-123318 (JP, A)

Claims (2)

(57)【特許請求の範囲】(57) [Claims] 【請求項1】 上位装置からの命令を受信し、当該上位
装置へ転送するデータをnビット(但し、nは2以上の
自然数)毎に送信を行う上位装置処理手段と、前記デー
タを一時的に蓄積する第1の記憶手段と、前記データを
記憶する少なくとも一つの第2の記憶手段と、前記第1
の記憶手段及び第2の記憶手段間で所定の転送指示によ
りデータのDMA転送を行う転送処理手段と、 前記上位装置処理手段が受信した前記命令を読解し、前
記転送処理手段に前記転送指示を与える制御手段とを備
えたデータ転送記憶装置において、 前記上位装置処理手段は、 前記制御手段が読み書き可能なn×mビット(但し、m
は2以上の自然数)から構成される複数のデータレジス
タと、 前記複数のデータレジスタ内のデータの有無状態を表示
するステータスレジスタと、 前記複数のデータレジスタにデータが書き込まれると、
n×mビットデータをnビットデータに分割し、その分
割されたnビットデータをm回に分けて前記上位装置へ
転送するデータ転送制御手段とを備え、 前記制御手段は、 前記上位装置からの前記命令を読解する命令認識手段
と、 前記命令認識手段が、前記第の記憶手段から前記上位
装置への転送命令と認識すると、前記転送処理手段に前
記第2の記憶手段から前記第1の記憶手段にDAM転送
を指示を行う転送指示手段と、 前記第1の記憶手段内のデータを、前記複数のデータレ
ジスタにn×mビット単位で書き込むデータ書込手段で
あって、前記複数のデータレジスタのうち、一つのデー
タレジスタのデータを前記データ転送制御手段が転送
、前記複数のデータレジスタのうち、他のデータレジ
スタの状態を前記ステータスレジスタから読み取り、前
記ステータスレジスタの状態が「データ無」のとき、前
記第1の記憶手段内のデータを前記他のデータレジスタ
へ書き込むデータ書込手段と、を備えたことを特徴とす
るデータ転送記憶装置。
1. An n-bit data (where n is 2 or more) data which is received from a higher-level device and is transferred to the higher-level device.
Host device processing means for transmitting every natural number), first storage means for temporarily storing the data, at least one second storage means for storing the data, and the first storage means.
Transfer processing means for performing DMA transfer of data according to a predetermined transfer instruction between the storage means and the second storage means, and the instruction received by the higher-level device processing means, and read the transfer instruction to the transfer processing means. In the data transfer storage device having a control means for giving, the higher-order device processing means can read and write n × m bits (however, m
Is a natural number of 2 or more), a status register that indicates the presence / absence of data in the plurality of data registers, and data is written to the plurality of data registers.
Divide n × m bit data into n bit data,
Data transfer control means for dividing the divided n-bit data into m times and transferring the data to the upper device, the control means comprising: an instruction recognizing means for reading and understanding the instruction from the upper device; and the instruction recognizing means. Recognizes a transfer command from the second storage means to the higher-level device, transfer instruction means for instructing the transfer processing means to perform DAM transfer from the second storage means to the first storage means, Data writing means for writing data in the first storage means to the plurality of data registers in units of n × m bits , wherein data of one data register of the plurality of data registers is transferred to the data transfer means. control means during the transfer
To, among the plurality of data registers, read the status of the other data register from said status register, when the state of the status register is "Data Mu", the first of said other data the data in the storage means A data transfer storage device comprising: a data writing unit that writes data to a register.
【請求項2】 上位装置からの命令を受信し、当該上位
装置から転送される ビット(但し、nは2以上の自然
数)毎のデータを受信する上位装置処理手段と、前記デ
ータを一時的に蓄積する第1の記憶手段と、前記データ
を記憶する少なくとも一つの第2の記憶手段と、前記第
1の記憶手段及び第2の記憶手段間で所定の転送指示に
よりデータのDMA転送を行う転送処理手段と、前記上
位装置処理手段が受信した前記命令を読解し、前記転送
処理手段に前記転送指示を与える制御手段とを備えたデ
ータ転送記憶装置において、 前記上位装置処理手段は、 前記上位装置からのデータを受信するデータ受信制御手
段と、 前記制御手段が読み書き可能なn×mビット(但し、m
は2以上の自然数)から構成される複数のデータレジス
タと、 前記データ受信制御手段が受信した前記nビットデータ
をm回に分けて、前記データレジスタへ転送するデータ
転送制御手段と、 前記複数のデータレジスタ内のデータの有無状態を表示
するステータスレジスタとを備え、 前記制御手段は、 前記上位装置からの前記命令を読解する命令認識手段
と、 前記命令認識手段が、前記上位装置から前記第2の記憶
手段への転送命令と認識すると、前記複数のデータレジ
スタに転送された前記データをn×mビットデータとし
読み取り、これをn×mビット単位で前記第1の記憶
手段に書き込むデータ転送手段であって、前記複数のデ
ータレジスタのうち、一つのデータレジスタのn×mビ
ットデータを前記データ転送制御手段が転送中に、前記
複数のデータレジスタのうち、他のデータレジスタの状
を前記ステータスレジスタから読み取り、前記ステー
タスレジスタの状態が「データ有」のとき、前記他のデ
ータレジスタ内のn×mビットデータを読み取るデータ
転送手段と、 前記転送処理手段に前記第1の記憶手段から前記第2の
記憶手段にDAM転送指示を行う転送指示手段と、を備
えたことを特徴とするデータ転送記憶装置。
2. An n- bit (where n is a natural number of 2 or more) received from a higher-level device and transferred from the higher-level device.
Host device processing means for receiving data for each number, first storage means for temporarily storing the data, at least one second storage means for storing the data, and the first storage means And a transfer processing means for performing DMA transfer of data between the second storage means and a predetermined transfer instruction, and a control means for interpreting the command received by the host device processing means and giving the transfer instruction to the transfer processing means. In the data transfer storage device, the upper device processing means includes a data reception control means for receiving data from the upper device, and n × m bits (where m is readable / writable by the control means ).
Is a natural number of 2 or more), and the n-bit data received by the data reception control means.
Data transfer control means for transferring the data to the data register in m times, and a status register for displaying the presence / absence state of data in the plurality of data registers, the control means comprising: When the command recognition means for reading the command and the command recognition means recognize the transfer command from the higher-level device to the second storage means, the data transferred to the plurality of data registers is n × m bit data. age
Te read, which a data transfer means for writing in said first memory means in n × m bits among the plurality of data registers, n × m-bi of one data register
The Tsu Miyako data during transfer said data transfer control means, among the plurality of data registers, read the status of the other data registers from the status register, the stay
When the status of the status register is “with data”, data transfer means for reading n × m bit data in the other data register, and the transfer processing means from the first storage means to the second storage means. A data transfer storage device, comprising: a transfer instruction means for issuing a DAM transfer instruction.
JP35784592A 1992-12-25 1992-12-25 Data transfer storage device Expired - Fee Related JP3442099B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP35784592A JP3442099B2 (en) 1992-12-25 1992-12-25 Data transfer storage device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP35784592A JP3442099B2 (en) 1992-12-25 1992-12-25 Data transfer storage device

Publications (2)

Publication Number Publication Date
JPH06195303A JPH06195303A (en) 1994-07-15
JP3442099B2 true JP3442099B2 (en) 2003-09-02

Family

ID=18456223

Family Applications (1)

Application Number Title Priority Date Filing Date
JP35784592A Expired - Fee Related JP3442099B2 (en) 1992-12-25 1992-12-25 Data transfer storage device

Country Status (1)

Country Link
JP (1) JP3442099B2 (en)

Also Published As

Publication number Publication date
JPH06195303A (en) 1994-07-15

Similar Documents

Publication Publication Date Title
US4860244A (en) Buffer system for input/output portion of digital data processing system
EP0009678B1 (en) Computer input/output apparatus
US5062073A (en) Input output control system using a fifo to record access information of control registers by a master device
EP0772831B1 (en) Bidirectional parallel signal interface
JPH06110617A (en) Disk control method
EP0844566A1 (en) Interface apparatus for adapting data width to system bus width
CA2289192C (en) Communication dma device
EP0473059B1 (en) Communication control system
JP3442099B2 (en) Data transfer storage device
JP3079956B2 (en) Printer
JP2502932B2 (en) Data transfer method and data processing system
JPS6027976A (en) First-in first-out memory device
JPH1063617A (en) Serial communication device
JP2826780B2 (en) Data transfer method
JP2539517B2 (en) Communication control method
JPS63292356A (en) Dma controller
JP3259095B2 (en) Data transfer method
JPS6019023B2 (en) data processing equipment
JP2552025B2 (en) Data transfer method
JP2752834B2 (en) Data transfer device
JPH07334453A (en) Memory access system
JP2820054B2 (en) Bus interface device
JPS5953929A (en) Data transfer device
JPS6378257A (en) Input-output controller
JPH06105922B2 (en) Communication control device

Legal Events

Date Code Title Description
R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees
S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350