[go: up one dir, main page]

JP2005182290A - Data transfer control device and data transfer control method - Google Patents

Data transfer control device and data transfer control method Download PDF

Info

Publication number
JP2005182290A
JP2005182290A JP2003419606A JP2003419606A JP2005182290A JP 2005182290 A JP2005182290 A JP 2005182290A JP 2003419606 A JP2003419606 A JP 2003419606A JP 2003419606 A JP2003419606 A JP 2003419606A JP 2005182290 A JP2005182290 A JP 2005182290A
Authority
JP
Japan
Prior art keywords
data
transmission
reception
fifo
read
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
JP2003419606A
Other languages
Japanese (ja)
Inventor
Hirotaka Ito
裕隆 伊藤
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.)
Panasonic Holdings Corp
Original Assignee
Matsushita Electric Industrial 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 Matsushita Electric Industrial Co Ltd filed Critical Matsushita Electric Industrial Co Ltd
Priority to JP2003419606A priority Critical patent/JP2005182290A/en
Publication of JP2005182290A publication Critical patent/JP2005182290A/en
Pending legal-status Critical Current

Links

Images

Landscapes

  • Information Transfer Systems (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To execute data transfer control by using an FIFO having a data capacity which is smaller than the maximum transfer length of a packet at the time of transmitting/receiving continuous data such as a packet. <P>SOLUTION: An FIFO 10 has a capacity which is smaller than the maximum transfer length of a packet. A transmission control circuit 11 is composed of a transmission writing pointer 11a and a transmission reading pointer 11c representing data write quantity and data reading quantity corresponding to FIFO blocks 10a and 10b and an FIFO block switching control part 11b for switching the FIFO blocks 10a and 10b according to storage data quantity represented by them. A transmission write control part 12 or a transmission reading control part 13 acquires data storage information from the transmission control circuit 11, and outputs a permission signal to a transmission transfer origin or transmission transfer destination when writing or reading is possible. Also, when reading is impossible, a transmission TERM control part outputs a transmission TERM signal to temporarily stop data transmission to the transmission transfer destination. <P>COPYRIGHT: (C)2005,JPO&NCIPI

Description

本発明は、先入れ先出しメモリ(FIFO:First In First Out)を用いるものであって、パケットのように単位毎に処理が必要なデータ転送システムにおけるデータ転送制御装置及びデータ転送制御方法に関する。   The present invention relates to a data transfer control device and a data transfer control method in a data transfer system that uses a first-in first-out memory (FIFO) and requires processing for each unit such as a packet.

近年、DVDに代表されるようなPC周辺機器のインターフェースは、高速化に伴い、パラレルインターフェースから、例えば、図9に示すフォーマットによりパケット単位の処理を行うIEEE1394/USB2.0に代表されるようなシリアルインターフェースへの移行が進んでいる。このようなシリアルデータを処理するものとして、データ転送要求の処理を滞らせることなく、また、メモリを効率的に利用できるデータ転送制御装置が特許文献1に開示されている。以下に、図9及び10を用いてこのデータ転送制御装置を説明する。   In recent years, the interface of a PC peripheral device represented by a DVD has been developed from a parallel interface as represented by, for example, IEEE 1394 / USB 2.0 that performs processing in units of packets in the format shown in FIG. Transition to serial interface is progressing. As a method for processing such serial data, Patent Document 1 discloses a data transfer control device that can efficiently use a memory without delaying processing of a data transfer request. The data transfer control device will be described below with reference to FIGS.

図10は、1つのバッファメモリを仮想的に2つのメモリとして機能させるFIFOを示している。バッファコントローラ2は、バッファメモリ2aを2つのFIFO第1ブロック及び第2ブロックとして機能させ、データ書き込み及び読み出しを制御する。境界コントローラ5はFIFO第1ブロック及び第2ブロックの境界を制御し、データコントローラ4は境界コントローラ5により制御された境界値と格納されているデータとに基づいてメモリ残存量を算出し、このメモリ残存量と、書き込み制御部3A及び3Bから得られたデータのパケットサイズA及びBの情報とを比較することにより、転送元から送信されるデータ書き込みの可能/不可能を判断する。また、データコントローラ4は、バッファメモリ2aの格納データを読み出しする際の可能/不可能を判断し、読み出し制御部1A及び1Bへ結果を送信する。このように、バッファメモリを2つのFIFOとして機能させ、それぞれのFIFOに対して事前に書き込み可能/不可能の判断を行うことにより、オーバーフローの防止を可能とする。更に、2つのFIFOブロックの境界を動的に変化させることができることを特徴とする。   FIG. 10 shows a FIFO that allows one buffer memory to function virtually as two memories. The buffer controller 2 causes the buffer memory 2a to function as two FIFO first blocks and second blocks, and controls data writing and reading. The boundary controller 5 controls the boundary between the first block and the second block of the FIFO, and the data controller 4 calculates the remaining memory amount based on the boundary value controlled by the boundary controller 5 and the stored data. By comparing the remaining amount with the information on the packet sizes A and B of the data obtained from the write control units 3A and 3B, it is determined whether data writing transmitted from the transfer source is possible / impossible. Further, the data controller 4 determines whether or not data stored in the buffer memory 2a can be read, and transmits the result to the read control units 1A and 1B. In this way, the buffer memory functions as two FIFOs, and it is possible to prevent overflow by making a write / non-writable determination in advance for each FIFO. Furthermore, the boundary between two FIFO blocks can be changed dynamically.

また、現在実用化が進んでいる次世代高速インターフェイスであるシリアルATAはパケット単位で転送を行うシリアルインターフェイスであるが、パケット転送における連続したデータの途中でHOLDという特殊なパターンを挿入することができる。しかし、このような方法でパケットを転送するためのシステムはまだ確立されていない。   Serial ATA, which is a next-generation high-speed interface that is currently in practical use, is a serial interface that performs transfer in units of packets. A special pattern called HOLD can be inserted in the middle of continuous data in packet transfer. . However, a system for transferring packets in this way has not been established yet.

図9(a)に通常の転送例を示す。送信側はファイルの開始信号SOF(Start Of Frame)を送信し、連続してDATAを送信する。次に、DATA送信が終了した直後に確認信号CRC(Cyclic Redundancy Check)を送信し、続いて、ファイルの終了信号EOF(End Of Frame)を送信する。   FIG. 9A shows an example of normal transfer. The transmitting side transmits a file start signal SOF (Start Of Frame) and continuously transmits DATA. Next, immediately after the DATA transmission ends, a confirmation signal CRC (Cyclic Redundancy Check) is transmitted, and then a file end signal EOF (End Of Frame) is transmitted.

また、図9(b)に送信側がHOLDを使ったときの転送例を示す。送信側は、パケットの始めにSOFを出力し、続けてDATAを送信する。データ送信の途中でHOLDという特殊なパターンを挿入して、データ転送を一時停止し、HOLD解除後に残りのデータを送信し、更に、最後のデータの直後にCRCを送信し、最後にEOFを送信する。受信側はHOLDパターンの受信に対してHOLDAを送信側へ返す。   FIG. 9B shows a transfer example when the transmission side uses HOLD. The transmission side outputs SOF at the beginning of the packet, and then transmits DATA. A special pattern called HOLD is inserted in the middle of data transmission, data transfer is suspended, the remaining data is transmitted after HOLD is canceled, CRC is transmitted immediately after the last data, and EOF is transmitted finally. To do. The reception side returns HOLDA to the transmission side in response to reception of the HOLD pattern.

図9(c)は受信側がHOLDを出す場合を示している。送信側は、パケットの始めにSOFを出力し、続いて、DATAを連続して送信する。データ送信の途中でHOLDを受信すると、データ送信を一時停止すると共にHOLDAという特殊なパターンを挿入する。そして、HOLD解除後に残りのデータを送信し、最後のデータの直後にCRCを送信し、最後にEOFを送信する。
特開平11−161467号公報(第2−7頁、第1図)
FIG. 9C shows a case where the receiving side issues HOLD. The transmission side outputs SOF at the beginning of the packet, and then continuously transmits DATA. When HOLD is received in the middle of data transmission, the data transmission is temporarily stopped and a special pattern called HOLDA is inserted. Then, after the HOLD is released, the remaining data is transmitted, a CRC is transmitted immediately after the last data, and an EOF is transmitted finally.
Japanese Patent Laid-Open No. 11-161467 (page 2-7, FIG. 1)

しかしながら、特許文献1に記載された技術においては、FIFOの容量は最低の場合でもパケットの最大長を必要とする。このため回路規模は大きくなると共に、データの書き込み及び読み出し中の空き領域も大きくなるので、メモリの利用効率は低下する。また、容量が大きいほど、書き込み又は読み出しのうち一方の動作中における他方の動作の待機時間が大きくなり、データ転送の効率も低下する。逆に、送受信されるパケットが最大のパケット長以下の場合には、メモリに不使用領域を生じて、この場合にもメモリの利用効率は低下する等の問題が生じる。   However, in the technique described in Patent Document 1, the maximum packet length is required even when the FIFO capacity is minimum. As a result, the circuit scale increases, and the free space during data writing and reading also increases, so the memory utilization efficiency decreases. In addition, as the capacity increases, the waiting time for the other operation during one operation of writing or reading increases, and the efficiency of data transfer also decreases. On the other hand, when the transmitted / received packet is shorter than the maximum packet length, a non-use area is generated in the memory, and in this case as well, there arises a problem that the use efficiency of the memory is lowered.

更に、データの転送元の転送レートと、データの転送先の転送レートとが異なる場合には、実際の転送レートは遅い側の転送レートに合わせざるを得ない為、パケットのように連続したデータを送る場合において、パケット間には転送していない長い期間を含み、効率の悪い転送になってしまうという問題が生じる。   Furthermore, if the transfer rate of the data transfer source and the transfer rate of the data transfer destination are different, the actual transfer rate must be matched to the transfer rate on the slow side, so continuous data like packets When a packet is transmitted, there is a problem that a long period during which packets are not transferred is included, resulting in inefficient transfer.

本発明は上記従来の問題を解決するものであり、その目的は、回路規模を小さく抑え、且つ効率的にデータ転送を行うデータ転送制御装置及びデータ転送制御方法を提供することにある。   The present invention solves the above-described conventional problems, and an object of the present invention is to provide a data transfer control device and a data transfer control method for efficiently transferring data while reducing the circuit scale.

上記問題を解決するために、本発明では上述の(書き込み及び読み出し動作中の空き領域と、書き込み又は読み出しのうち一方の動作中における他方の動作の待機時間とは、容量が小さくなるほど削減される)点に着目し、扱う連続データよりも小さい容量を持つFIFOブロックを用いて転送を行えるようにする。これにより、回路規模を大幅に低減できると共に、上述の空き領域が削減されてメモリの利用効率を高めることができ、同時に、上述の待機時間も削減されて転送効率をも高めることができる。   In order to solve the above problem, in the present invention, the above-described free space during writing and reading operations and the waiting time of the other operation during one of writing and reading operations are reduced as the capacity decreases. Focusing on this point, the transfer can be performed using a FIFO block having a smaller capacity than the continuous data to be handled. As a result, the circuit scale can be greatly reduced, and the above-described free space can be reduced to increase the memory utilization efficiency. At the same time, the above-described standby time can also be reduced to increase the transfer efficiency.

すなわち、請求項1記載の発明のデータ転送制御装置は、所定長を有する連続データを転送先に転送するデータ転送制御装置において、前記連続データの最大サイズよりも記憶容量が小さいFIFOブロックを複数有するFIFOと、前記FIFOブロックに格納されているデータ量を検出し、データの格納が終了した前記FIFOブロックを、データの格納が可能な前記FIFOブロックに切替えて順次書き込みを行わせる書き込み制御部と、前記データの格納が終了した前記FIFOブロックがある場合には、他のFIFOブロックへのデータの書き込みが前記書き込み制御部により制御されているときにも、前記データの格納が終了したFIFOブロックからデータの読み出しを行う読み出し制御部とを備えることを特徴とする。   In other words, the data transfer control device according to claim 1 is a data transfer control device for transferring continuous data having a predetermined length to a transfer destination, and has a plurality of FIFO blocks having a storage capacity smaller than the maximum size of the continuous data. A FIFO and a write control unit that detects the amount of data stored in the FIFO block, switches the FIFO block that has completed storing data to the FIFO block that can store data, and sequentially writes the FIFO block; In the case where there is the FIFO block in which the data storage is completed, the data from the FIFO block in which the data storage has been completed is stored even when the data writing to another FIFO block is controlled by the write control unit. And a read control unit for reading the data.

請求項2記載の発明は、請求項1記載のデータ転送制御装置において、データの読み出しが不可能な状態であるとき、データ読み出しを一時停止させる送信TERM信号を転送先に出力する送信TERM制御回路を備えることを特徴とする。   According to a second aspect of the present invention, in the data transfer control device according to the first aspect, the transmission TERM control circuit for outputting a transmission TERM signal for temporarily stopping the data reading to the transfer destination when the data cannot be read. It is characterized by providing.

請求項3記載の発明は、請求項1記載のデータ転送制御装置において、データの書き込みが不可能な状態であるとき、データ書き込みを一時停止させる受信TERM信号を転送元に出力する受信TERM制御回路を備えることを特徴とする。   According to a third aspect of the present invention, in the data transfer control device according to the first aspect, a reception TERM control circuit for outputting a reception TERM signal for temporarily stopping data writing to a transfer source when data writing is impossible. It is characterized by providing.

請求項4記載の発明のデータ転送制御装置は、所定長を有する連続データを転送先に転送するデータ転送制御装置において、前記連続データの最大サイズよりも記憶容量が小さいFIFOブロックを有するFIFOと、前記FIFOブロックへ書き込んだデータの総量に対して、前記FIFOから読み出したデータの総量を減算した差に基づいて前記FIFOブロックのデータ残量を検出し、前記データ残量に応じて前記FIFOブロックに対するデータの書き込み及び読み出しを制御する制御回路とを備えることを特徴とする。   The data transfer control device according to claim 4 is a data transfer control device for transferring continuous data having a predetermined length to a transfer destination, a FIFO having a FIFO block having a storage capacity smaller than the maximum size of the continuous data; The remaining amount of data in the FIFO block is detected based on the difference obtained by subtracting the total amount of data read from the FIFO from the total amount of data written to the FIFO block, and the FIFO block is detected according to the remaining amount of data. And a control circuit for controlling writing and reading of data.

請求項5記載の発明は、請求項4記載のデータ転送制御装置において、データの読み出しが不可能な状態であるとき、データ読み出しを一時停止させる送信TERM信号を転送先に出力する送信TERM制御回路を備えることを特徴とする。   According to a fifth aspect of the present invention, in the data transfer control device according to the fourth aspect, a transmission TERM control circuit for outputting a transmission TERM signal for temporarily stopping data reading to a transfer destination when data cannot be read. It is characterized by providing.

請求項6記載の発明は、請求項4記載のデータ転送制御装置において、データの書き込みが不可能な状態であるとき、データ書き込みを一時停止させる受信TERM信号を転送元に出力する受信TERM制御回路を備えることを特徴とする。   According to a sixth aspect of the present invention, in the data transfer control device according to the fourth aspect, when a data write is impossible, a receive TERM control circuit that outputs a received TERM signal for temporarily stopping the data write to the transfer source It is characterized by providing.

請求項7記載の発明のデータ転送制御装置は、所定長を有する連続データを送信転送先に転送するデータ転送制御装置において、前記連続データの最大サイズよりも記憶容量が小さいFIFOブロックを複数有するFIFOと、データの書き込み時に、前記FIFOブロックにその最大容量分のデータが格納されたとき、空き領域を有する他の前記FIFOブロックに切替え、データの読み出し時に、前記FIFOブロックにデータがなくなったとき、データが格納されている他の前記FIFOブロックに切替えるFIFOブロック切替制御部と、データが書き込まれると共にインクリメントされるカウント値により書き込まれたデータ量を示し、FIFOブロック切替時にクリアされる送信書き込みポインタと、データが読み出されると共にインクリメントされるカウント値により読み出されたデータ量を示し、FIFOブロック切替時にクリアされる送信読み出しポインタとを備える送信制御回路と、前記FIFOブロック切替制御部が有する前記FIFOブロックの最大容量を示す容量ポインタの値よりも前記送信書き込みポインタの示すカウント値が小さく、且つ読み出し中でない前記FIFOブロックがあるとき、前記送信転送先に送信書き込み可能信号を出力する一方で、書き込みを行わせるか否かの書き込み制御信号を前記送信制御回路に送信する送信書き込み制御部と、データが格納され、且つ書き込み中でない格納済みの前記FIFOブロックが少なくとも1つあるとき、前記送信転送先に送信読み出し可能信号を出力する一方で、読み出しを行わせるか否かの読み出し制御信号を前記送信制御回路に送信する送信読み出し制御部と、いずれの前記FIFOブロックからもデータの読み出しが不可能な場合、前記送信転送先へのデータ送信を一時停止させる送信TERM信号を出力する送信TERM制御部とを備えることを特徴とする。   The data transfer control device according to claim 7 is a data transfer control device for transferring continuous data having a predetermined length to a transmission transfer destination, wherein the FIFO has a plurality of FIFO blocks having a storage capacity smaller than the maximum size of the continuous data. When the data for the maximum capacity is stored in the FIFO block at the time of data writing, the FIFO block is switched to another FIFO block having a free area, and when there is no data in the FIFO block at the time of data reading, A FIFO block switching control unit for switching to another FIFO block in which data is stored, a transmission write pointer that indicates the amount of data written by a count value that is written and incremented, and that is cleared when the FIFO block is switched; When data is read, A transmission control circuit that includes a transmission read pointer that indicates the amount of data read by the incremented count value and is cleared when the FIFO block is switched, and a capacity that indicates the maximum capacity of the FIFO block included in the FIFO block switching control unit Whether or not to write data while outputting a transmit write enable signal to the transmission transfer destination when there is a FIFO block whose count value indicated by the transmission write pointer is smaller than the pointer value and is not being read. A transmission write control unit that transmits a write control signal to the transmission control circuit, and a transmission read enable signal is output to the transmission transfer destination when there is at least one FIFO block that stores data and is not being written. On the other hand, whether or not to read A transmission read control unit that transmits a read control signal to the transmission control circuit, and a transmission TERM signal that temporarily stops data transmission to the transmission transfer destination when data cannot be read from any of the FIFO blocks And a transmission TERM control unit for outputting.

請求項8記載の発明のデータ転送制御装置は、所定長を有する連続データを送信転送先に転送するデータ転送制御装置において、前記連続データの最大サイズよりも記憶容量が小さいFIFOと、データが書き込まれると共にインクリメントされるカウント値により書き込まれたデータ量を示す送信書き込みポインタと、データが読み出されると共にインクリメントされるカウント値により読み出されたデータ量を示す送信読み出しポインタと、前記FIFOの最大容量を示す容量ポインタとを備える送信制御回路と、前記FIFOにデータが格納可能であるときに送信書き込み可能信号を出力する一方で、書き込みを行わせるか否かの書き込み制御信号を前記送信制御回路に送信する送信書き込み制御部と、前記送信書き込みポインタのカウント値から前記送信読み出しポインタのカウント値を減算した差が所定値よりも大きいとき、送信転送先に送信読み出し可能信号を出力する一方で、読み出しを行わせるか否かの読み出し制御信号を前記送信制御回路に送信する送信読み出し制御部と、前記所定値を保持する送信許可設定レジスタを有し、前記差が前記所定値よりも小さいとき、前記送信転送先へのデータ送信を一時停止させる送信TERM信号を出力する送信TERM制御部とを備えることを特徴とする。   A data transfer control device according to an eighth aspect of the invention is a data transfer control device for transferring continuous data having a predetermined length to a transmission destination, a FIFO having a storage capacity smaller than the maximum size of the continuous data, and data writing The transmission write pointer indicating the amount of data written by the count value incremented and incremented, the transmission read pointer indicating the data amount read by the count value incremented and read, and the maximum capacity of the FIFO A transmission control circuit including a capacity pointer, and a transmission write enable signal when the data can be stored in the FIFO, and a write control signal indicating whether or not to write is transmitted to the transmission control circuit. Transmit write controller and the transmit write pointer When the difference obtained by subtracting the count value of the transmission read pointer from the event value is greater than a predetermined value, a transmission read enable signal is output to the transmission transfer destination, while a read control signal indicating whether or not to perform the read is transmitted. A transmission TERM that includes a transmission read control unit that transmits to the control circuit and a transmission permission setting register that holds the predetermined value, and temporarily stops data transmission to the transmission transfer destination when the difference is smaller than the predetermined value And a transmission TERM control unit that outputs a signal.

請求項9記載の発明は、請求項7記載のデータ転送制御装置において、前記送信TERM制御回路は、データ書き込み時間及びデータ読み出し時間に基づく情報を前記送信制御回路から受けて、前記データ書き込み時間とデータ読み出し時間との差を埋めるように前記送信TERM信号の幅を自動的に変化させることを特徴とする。   The invention according to claim 9 is the data transfer control device according to claim 7, wherein the transmission TERM control circuit receives information based on a data write time and a data read time from the transmission control circuit, and the data write time It is characterized in that the width of the transmission TERM signal is automatically changed so as to fill the difference with the data reading time.

請求項10記載の発明のデータ転送制御装置は、所定長を有する連続データを受信転送先に転送するデータ転送制御装置において、前記連続データの最大サイズよりも記憶容量が小さいFIFOブロックを複数有するFIFOと、データ書き込み時に、前記FIFOブロックにその最大容量分のデータが格納されたとき、空き領域を有する他の前記FIFOブロックに切替え、データの読み出し時に、前記FIFOブロックにデータがなくなったとき、データが格納されている他の前記FIFOブロックに切替えるFIFO切替制御部と、データが書き込まれると共にインクリメントされるカウント値により書き込まれたデータ量を示し、FIFOブロック切替時にクリアされる受信書き込みポインタと、データが読み出されると共にインクリメントされるカウント値により読み出されたデータ量を示し、FIFOブロック切替時にクリアされる受信読み出しポインタとを備える受信制御回路と、前記FIFOブロック切替制御部が有する前記FIFOブロックの最大容量を示す容量ポインタの値よりも前記送信書き込みポインタの示すカウント値が小さく、且つ読み出し中でない前記FIFOブロックがあるとき、受信転送先に受信書き込み可能信号を出力する一方で、書き込みを行わせるか否かの書き込み制御信号を前記受信制御回路に送信する受信書き込み制御部と、データが格納され、且つ書き込み中でない前記FIFOブロックが少なくとも1つあるとき、前記受信転送先に受信読み出し可能信号を出力する一方で、読み出しを行わせるか否かの読み出し制御信号を前記受信制御回路に送信する受信読み出し制御部と、いずれの前記FIFOブロックへもデータの書き込みが不可能な場合、前記受信転送元からのデータ受信を一時停止させる受信TERM信号を出力する受信TERM制御部とを備えることを特徴とする。   The data transfer control device according to claim 10 is a data transfer control device for transferring continuous data having a predetermined length to a reception transfer destination, wherein the FIFO has a plurality of FIFO blocks having a storage capacity smaller than the maximum size of the continuous data. When the data of the maximum capacity is stored in the FIFO block at the time of data writing, the data is switched to another FIFO block having a free area, and when the data is read from the FIFO block at the time of data reading, the data A FIFO switching control unit that switches to the other FIFO block in which is stored, a data write amount that is written and incremented by a count value that is written, a reception write pointer that is cleared when the FIFO block is switched, and data Is read and ink A reception control circuit including a reception read pointer that is cleared when the FIFO block is switched, and a capacity that indicates a maximum capacity of the FIFO block included in the FIFO block switching control unit When the count value indicated by the transmission write pointer is smaller than the pointer value and there is the FIFO block that is not being read, the reception write enable signal is output to the reception transfer destination while writing whether or not writing is to be performed. When there is at least one FIFO block in which data is stored and data is not being written, the reception write control unit that transmits a control signal to the reception control circuit outputs a reception readable signal to the reception transfer destination, The read control signal indicating whether or not to perform the read A reception read control unit for transmitting to a communication control circuit, and a reception TERM control unit for outputting a reception TERM signal for temporarily stopping data reception from the reception transfer source when data cannot be written to any of the FIFO blocks It is characterized by providing.

請求項11記載の発明のデータ転送制御装置は、所定長を有する連続データを受信転送先に転送するデータ転送制御装置において、前記連続データの最大サイズよりも記憶容量が小さいFIFOと、データが書き込まれると共にインクリメントされるカウント値により書き込まれたデータ量を示す受信書き込みポインタと、データが読み出されると共にインクリメントされるカウント値により読み出されたデータ量を示す受信読み出しポインタと、前記FIFOの最大容量を示す容量ポインタとを備える受信制御回路と、前記受信書き込みポインタと前記受信読み出しポインタとのカウント値の差が所定値よりも小さいとき、受信転送元に受信書き込み可能信号を出力する一方で、書き込みを行わせるか否かの書き込み制御信号を前記受信制御回路に送信する受信書き込み制御部と、前記FIFOにデータが格納され、且つ書き込みが行われていないときに、受信転送先に受信読み出し可能信号を出力する一方で、読み出しを行わせるか否かの読み出し制御信号を前記受信制御回路に送信する受信読み出し制御部と、前記所定値を保持する受信許可設定レジスタを有し、前記差が前記所定値よりも大きいとき、前記受信転送元からのデータ受信を一時停止させる受信TERM信号を出力する受信TERM制御部とを備えることを特徴とする。   A data transfer control device according to an eleventh aspect of the present invention is a data transfer control device for transferring continuous data having a predetermined length to a reception transfer destination, a FIFO having a storage capacity smaller than the maximum size of the continuous data, and data writing The received write pointer indicating the amount of data written by the count value incremented and incremented, the received read pointer indicating the amount of data read by the count value incremented and read, and the maximum capacity of the FIFO When the difference between the count values of the reception control circuit and the reception write pointer and the reception read pointer is smaller than a predetermined value, a reception write enable signal is output to the reception transfer source while writing is performed. A write control signal indicating whether or not to perform the reception control. A reception write control unit to be transmitted to the circuit, and whether data is stored in the FIFO and whether or not reading is performed while outputting a reception readable signal to the reception transfer destination when data is not written. A reception read control unit that transmits a read control signal to the reception control circuit, and a reception permission setting register that holds the predetermined value. When the difference is larger than the predetermined value, data reception from the reception transfer source And a reception TERM control unit for outputting a reception TERM signal for temporarily stopping the transmission.

請求項12記載の発明は、請求項10記載のデータ転送制御装置において、前記受信TERM制御回路は、データ書き込み時間及びデータ読み出し時間に基づく情報を前記受信制御回路から受けて、前記データ書き込み時間とデータ読み出し時間との差を埋めるように前記受信TERM信号の幅を自動的に変化させることを特徴とする。   According to a twelfth aspect of the present invention, in the data transfer control device according to the tenth aspect, the reception TERM control circuit receives information based on a data write time and a data read time from the reception control circuit, and receives the data write time. It is characterized in that the width of the received TERM signal is automatically changed so as to fill the difference with the data reading time.

請求項13記載の発明は、請求項11記載のデータ転送制御装置において、前記受信制御回路は、前記受信TERM信号が出力された後においても、前記所定値に相当するデータ数から、さらにデータ受信することを特徴とする。   According to a thirteenth aspect of the present invention, in the data transfer control device according to the eleventh aspect, the reception control circuit further receives data from the number of data corresponding to the predetermined value even after the reception TERM signal is output. It is characterized by doing.

請求項14記載の発明は、請求項11記載のデータ転送制御装置において、前記受信TERM制御部は、前記受信TERM信号の出力を決定する基準値、及び、前記受信TERM信号の出力後の受信可能データ数を決定する許容値を有するフル許可レジスタを備えることを特徴とする。   According to a fourteenth aspect of the present invention, in the data transfer control device according to the eleventh aspect, the reception TERM control unit is configured to receive a reference value for determining the output of the reception TERM signal and the output after the reception TERM signal is output. A full permission register having a tolerance value for determining the number of data is provided.

請求項15記載の発明のデータ転送制御方法は、所定長を有する連続データを送信転送先に転送するデータ転送制御方法において、前記連続データの最大サイズよりも記憶容量が小さい複数のFIFOブロックに前記連続データを順次格納するステップと、データの書き込み時に、前記FIFOブロックがその最大容量分のデータを格納したとき、空き領域を有する他の前記FIFOブロックに切替えるステップと、データの読み出し時に、前記FIFOブロックにデータがなくなったとき、データが格納されている他の前記FIFOブロックに切替えるステップと、前記FIFOブロックの最大容量よりも書き込まれたデータ量が少なく、且つ読み出しが行われていないとき、送信転送元に送信書き込み可能信号を出力するステップと、前記FIFOブロックにデータが格納されており、且つ、書き込みが行われていないとき、送信転送先に送信読み出し可能信号を出力するステップと、いずれの前記FIFOブロックからもデータの読み出しが不可能な場合、前記送信転送先へのデータ送信を一時停止させる送信TERM信号を出力するステップとを含むことを特徴とする。   The data transfer control method according to claim 15 is a data transfer control method for transferring continuous data having a predetermined length to a transmission transfer destination, wherein the FIFO block has a storage capacity smaller than the maximum size of the continuous data. A step of sequentially storing continuous data; a step of switching to another FIFO block having a free area when the FIFO block stores data of the maximum capacity at the time of data writing; and a step of switching the FIFO at the time of data reading. When there is no data in the block, the step of switching to the other FIFO block in which data is stored, and when the amount of data written is smaller than the maximum capacity of the FIFO block and reading is not performed, transmission Output the transmit writable signal to the transfer source and before When data is stored in the FIFO block and writing is not performed, a step of outputting a transmission readable signal to the transmission transfer destination and when reading of data from any of the FIFO blocks is impossible, And a step of outputting a transmission TERM signal for temporarily stopping data transmission to the transmission transfer destination.

請求項16記載の発明のデータ転送制御方法は、所定長を有する連続データを転送先に転送するデータ転送制御方法において、前記連続データの最大サイズよりも記憶容量が小さいFIFOに前記連続データを書き込むステップと、前記FIFOに格納されたデータを読み出すステップと、前記FIFOにデータが格納可能であるときに送信書き込み可能信号を出力するステップと、書き込みを行わせるか否かの書き込み制御信号を送信転送元に送信するステップと、前記書き込みを行ったデータ総量と前記読み出しを行ったデータ総量との差が所定値よりも大きいとき、送信読み出し可能信号を出力するステップと、読み出しを行わせるか否かの読み出し制御信号を送信転送先に送信するステップと、前記差が前記所定値よりも小さいとき、前記送信転送先へのデータ送信を一時停止させる送信TERM信号を出力するステップとを含むことを特徴とする。   The data transfer control method according to claim 16 is a data transfer control method for transferring continuous data having a predetermined length to a transfer destination, wherein the continuous data is written in a FIFO having a storage capacity smaller than the maximum size of the continuous data. A step of reading the data stored in the FIFO, a step of outputting a transmission writable signal when the data can be stored in the FIFO, and a transmission control signal indicating whether or not writing is performed A step of transmitting the original, a step of outputting a transmission readable signal when the difference between the total amount of data written and the total amount of data read is larger than a predetermined value, and whether or not to perform the reading When the read control signal is transmitted to the transmission destination, and when the difference is smaller than the predetermined value Characterized in that it comprises a step of outputting a transmission TERM signal to suspend data transmission to the transmission destination.

請求項17記載の発明のデータ転送制御方法は、所定長を有する連続データを受信転送先に転送するデータ転送制御方法において、前記連続データの最大サイズよりも記憶容量が小さい複数のFIFOブロックに前記連続データを順次格納するステップと、データの書き込み時に、前記FIFOブロックがその最大容量分のデータを格納したとき、空き領域を有する他の前記FIFOブロックに切替えるステップと、データの読み出し時に、前記FIFOブロックにデータがなくなったとき、データが格納されている他の前記FIFOブロックに切替えるステップと、前記FIFOブロックの最大容量よりも書き込まれたデータ量が少なく、且つ読み出しが行われていないとき、受信転送先に受信書き込み可能信号を出力するステップと、前記FIFOブロックにデータが格納されており、且つ、書き込みが行われていないとき、受信転送先に受信読み出し可能信号を出力するステップと、いずれの前記FIFOブロックへもデータの書き込みが不可能な場合、前記受信転送元からのデータ受信を一時停止させる受信TERM信号を出力するステップとを含むことを特徴とする。   The data transfer control method according to claim 17 is a data transfer control method for transferring continuous data having a predetermined length to a reception transfer destination, wherein the FIFO block has a storage capacity smaller than the maximum size of the continuous data. A step of sequentially storing continuous data; a step of switching to another FIFO block having a free area when the FIFO block stores data of the maximum capacity at the time of data writing; and a step of switching the FIFO at the time of data reading. When there is no more data in the block, switching to another FIFO block in which data is stored, and when the amount of data written is less than the maximum capacity of the FIFO block and reading is not being performed Output the reception writable signal to the transfer destination and the previous When data is stored in the FIFO block and writing is not performed, a step of outputting a reception readable signal to the reception transfer destination, and when writing of data to any of the FIFO blocks is impossible, And a step of outputting a reception TERM signal for temporarily stopping data reception from the reception transfer source.

請求項18記載の発明のデータ転送制御方法は、所定長を有する連続データを受信転送先に転送するデータ転送制御方法において、前記連続データの最大サイズよりも記憶容量が小さいFIFOに前記連続データを書き込むステップと、前記FIFOに格納されたデータを読み出すステップと、前記FIFOにデータが格納可能であるときに受信書き込み可能信号を出力するステップと、書き込みを行わせるか否かの書き込み制御信号を受信転送元に送信するステップと、前記書き込みを行ったデータ総量と前記読み出しを行ったデータ総量との差が所定値よりも大きいとき、受信読み出し可能信号を出力するステップと、前記読み出しを行わせるか否かの読み出し制御信号を受信転送先に送信するステップと、前記差が前記所定値よりも大きいとき、前記受信転送元からのデータ受信を一時停止させる受信TERM信号を出力するステップとを含むことを特徴とする。   The data transfer control method according to claim 18 is a data transfer control method for transferring continuous data having a predetermined length to a reception transfer destination, wherein the continuous data is stored in a FIFO having a storage capacity smaller than the maximum size of the continuous data. A step of writing, a step of reading data stored in the FIFO, a step of outputting a reception writable signal when data can be stored in the FIFO, and a write control signal indicating whether or not to perform writing A step of transmitting to a transfer source, a step of outputting a reception readable signal when the difference between the total amount of data written and the total amount of data read is greater than a predetermined value, and whether to perform the reading A step of transmitting a read control signal indicating whether or not to the reception transfer destination, and the difference is larger than the predetermined value. Itoki, characterized in that it comprises a step of outputting a reception TERM signal to suspend data reception from the reception transfer source.

請求項19記載の発明は、請求項1、2、3、4、5、6、7、8、9、10、11、12、13又は14記載のデータ転送制御装置において、前記連続データはパケットデータであることを特徴とする。   The invention according to claim 19 is the data transfer control device according to claim 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13 or 14, wherein the continuous data is a packet. It is characterized by being data.

請求項20記載の発明は、請求項15、16、17又は18記載のデータ転送制御方法において、前記連続データはパケットデータであることを特徴とする。   According to a twentieth aspect of the present invention, in the data transfer control method according to the fifteenth, sixteenth, seventeenth or eighteenth aspect, the continuous data is packet data.

以上により、請求項1記載の発明では、連続したデータの最大サイズよりも小さい複数のFIFOブロックを切替えることにより、書き込み又は読み出し動作中における次の動作のための待機時間を削減すると共に、不要なメモリ領域も削減することができる。   As described above, according to the first aspect of the present invention, the standby time for the next operation during the write or read operation is reduced and unnecessary by switching a plurality of FIFO blocks smaller than the maximum continuous data size. Memory area can also be reduced.

また、請求項2、3、5及び6記載の発明では、転送元と転送先との間に転送レートの差が生じた時、転送途中でTERM信号を出力し、転送レートが高い側の動作を一時停止させることにより、転送元と転送先との転送レートを合わせて転送することができるので、最大サイズのFIFOを持たずとも、全体の転送レートを落とさない転送を行うことが可能となる。   Further, in the inventions according to claims 2, 3, 5 and 6, when a transfer rate difference occurs between the transfer source and the transfer destination, the TERM signal is output during the transfer, and the operation on the higher transfer rate side is performed. Since the transfer rate of the transfer source and the transfer destination can be transferred together by temporarily stopping the transfer, it is possible to perform transfer without reducing the overall transfer rate even without having the maximum size FIFO. .

更に、請求項4記載の発明では、書き込んだデータの総量から読み出したデータの総量を減算した差によりFIFOブロック内のデータ残量を検出して、連続データの最大サイズよりも小さいFIFOブロックに対して、そのデータ残量により判断して、書き込み及び読み出しを制御するので、小さいFIFOを用いて転送制御することが可能となる。   Further, in the present invention, the remaining amount of data in the FIFO block is detected by a difference obtained by subtracting the total amount of read data from the total amount of written data, and the FIFO block smaller than the maximum size of continuous data is detected. Thus, since writing and reading are controlled based on the remaining data amount, transfer control can be performed using a small FIFO.

請求項7記載の発明では、連続したデータの最大サイズよりも小さい複数のFIFOブロックを切替えることにより、書き込み又は読み出し動作中における次の動作の待機時間を削減すると共に、不要なメモリ領域も削減でき、更に、転送元と転送先との間に転送レートの差が生じた時、転送途中で送信TERM信号を出力し、FIFOからの読み出しを適当な時間だけ停止させることにより、転送元と転送先との転送レートを合わせて転送することができるので、最大サイズのFIFOを持たずとも、全体の転送レートを落とさない転送を行うことが可能となる。   According to the seventh aspect of the invention, by switching a plurality of FIFO blocks smaller than the maximum size of continuous data, it is possible to reduce the waiting time for the next operation during the write or read operation and also reduce unnecessary memory areas. Furthermore, when a difference in transfer rate occurs between the transfer source and the transfer destination, a transmission TERM signal is output during transfer, and reading from the FIFO is stopped for an appropriate time, so that the transfer source and transfer destination are stopped. Therefore, it is possible to perform transfer without reducing the overall transfer rate without having a FIFO of the maximum size.

また、請求項8記載の発明では、送信書き込みポインタと送信読み出しポインタとのカウント値の差により、格納されているデータ量を検出して、連続したデータの最大サイズよりも小さいFIFOブロックに対して、データの書き込み及び読み出しを行い、その格納されているデータ量を示す前記差の値が送信許可設定レジスタの値よりも小さいとき、すなわち、読み出し動作を正常に行えない状態にあるとき、読み出し不可を示す送信TERM信号を転送先に出力し、転送を一時停止させるので、転送元と転送先との転送レートの差を効果的に合わせながら、且つ、小さいFIFOを用いて転送制御することが可能となる。   In the invention according to claim 8, the amount of stored data is detected based on the difference between the count values of the transmission write pointer and the transmission read pointer, and the FIFO block smaller than the maximum size of continuous data is detected. When data is written and read, and the difference value indicating the amount of stored data is smaller than the value of the transmission permission setting register, that is, when the read operation cannot be performed normally, reading is impossible. Since the transmission TERM signal indicating the signal is output to the transfer destination and the transfer is temporarily stopped, it is possible to control transfer using a small FIFO while effectively matching the difference in transfer rate between the transfer source and the transfer destination. It becomes.

更に、請求項9記載の発明では、データの書き込み時間とそのデータの読み込み時間との差に応じた信号が送信制御回路から送信TERM制御回路へ送られ、それに基づいて送信TERM信号の幅が調節されるので、最適な転送レートにより転送することが可能となる。   Further, in the present invention, a signal corresponding to the difference between the data writing time and the data reading time is sent from the transmission control circuit to the transmission TERM control circuit, and the width of the transmission TERM signal is adjusted based on the signal. Therefore, it becomes possible to transfer at an optimum transfer rate.

続いて、請求項10記載の発明では、連続したデータの最大サイズよりも小さい複数のFIFOブロックを切替えることにより、書き込み又は読み出し動作中における次の動作の待機時間を削減すると共に、不要なメモリ領域も削減でき、更に、転送元と転送先との間に転送レートの差が生じた時、転送途中で受信TERM信号を出力し、FIFOへの書き込みを適当な時間だけ停止させることにより、転送元と転送先とも転送レートを合わせて転送することができるので、最大サイズのFIFOを持たずとも、全体の転送レートを落とさない転送を行うことが可能となる。   Subsequently, in the invention according to claim 10, by switching a plurality of FIFO blocks smaller than the maximum size of continuous data, the waiting time for the next operation during the write or read operation is reduced, and an unnecessary memory area Further, when a difference in transfer rate occurs between the transfer source and the transfer destination, the transfer source is output by outputting a received TERM signal in the middle of transfer and stopping writing to the FIFO for an appropriate time. Therefore, it is possible to perform transfer without reducing the overall transfer rate without having the maximum size FIFO.

また、請求項11記載の発明では、受信書き込みポインタと受信読み出しポインタとのカウント値の差により、格納されているデータ量を検出して、連続したデータの最大サイズよりも小さいFIFOブロックに対して、データの書き込み及び読み出しを行い、その格納されているデータ量を示す前記差の値が受信許可設定レジスタの値よりも大きいとき、すなわち、書き込み動作を正常に行えない状態にあるとき、書き込み不可を示す受信TERM信号を転送元に出力し、転送を一時停止させるので、転送元と転送先との転送レートの差を効果的に合わせながら、且つ、小さいFIFOを用いて転送制御することが可能となる。   According to the eleventh aspect of the present invention, the amount of stored data is detected based on the difference between the count values of the reception write pointer and the reception read pointer, and the FIFO block smaller than the maximum size of continuous data is detected. When data is written and read, and the difference value indicating the stored data amount is larger than the value of the reception permission setting register, that is, when the write operation cannot be normally performed, writing is impossible. Is output to the transfer source and the transfer is temporarily stopped. Therefore, it is possible to control transfer using a small FIFO while effectively matching the difference in transfer rate between the transfer source and the transfer destination. It becomes.

更に、請求項12記載の発明では、データの書き込み時間とそのデータの読み込み時間との差に応じた信号が受信制御回路から受信TERM制御回路へ送られ、それに基づいて受信TERM信号の幅が調節されるので、最適な転送レートにより転送することが可能となる。   According to the twelfth aspect of the present invention, a signal corresponding to the difference between the data writing time and the data reading time is sent from the reception control circuit to the reception TERM control circuit, and the width of the reception TERM signal is adjusted based on the signal. Therefore, it becomes possible to transfer at an optimum transfer rate.

続いて、請求項13記載の発明では、受信TERM信号を出力した後も受信許可設定レジスタに相当するデータ数を超えて更に受信することができるので、オーバーランした分のデータを受信することが可能となる。   Subsequently, in the invention described in claim 13, since the number of data corresponding to the reception permission setting register can be further received even after the reception TERM signal is output, the overrun data can be received. It becomes possible.

また、請求項14記載の発明では、受信TERM信号の出力は、同信号の出力後に受信できるデータ数とリンクさせることにより、FIFOを効率的に使用することができると共に容易に制御を行うことが可能となる。   In the invention according to claim 14, the output of the received TERM signal is linked with the number of data that can be received after the output of the signal so that the FIFO can be used efficiently and easily controlled. It becomes possible.

更に、請求項15記載の発明では、連続したデータの最大サイズに相当するFIFO容量を必要としないで、送信制御を行うことが可能となる。   Furthermore, in the invention described in claim 15, transmission control can be performed without requiring a FIFO capacity corresponding to the maximum size of continuous data.

続いて、請求項16記載の発明では、連続したデータの最大サイズに相当するFIFO容量を必要としないで、受信制御を行うことが可能となる。   Subsequently, in the invention described in claim 16, it is possible to perform reception control without requiring a FIFO capacity corresponding to the maximum size of continuous data.

上記の構成によれば、パケットの最大長を持たないFIFOを使用して、効率的にデータ転送制御を行うことができ、FIFO容量の大幅な削減を実現することが可能となる。   According to the above configuration, it is possible to efficiently perform data transfer control using a FIFO that does not have the maximum packet length, and it is possible to realize a significant reduction in FIFO capacity.

特に、請求項2、3、5、6、7、8、9、10、11、12、13、14、15、16、17及び18記載の発明によれば、パケット転送のように連続してデータを送受信するようなシステムにおいてパケットデータの途中で停止させるようなシステムを確立することができる。   In particular, according to the inventions of claims 2, 3, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17 and 18, the packet transfer is continuously performed. It is possible to establish a system that stops in the middle of packet data in a system that transmits and receives data.

更に、請求項13記載の発明によれば、受信時には、オーバーランを考慮に入れた受信TERM信号の制御を行うことにより、システムの安定性及び拡張性を実現することが可能となる。   Furthermore, according to the thirteenth aspect of the present invention, it is possible to realize system stability and expandability by controlling the received TERM signal in consideration of overrun during reception.

以下、本発明の実施の形態を図面に基づいて説明する。尚、本実施の形態では、本発明であるデータ転送制御装置及びその方法としてシリアルATAインターフェイスを利用するが、本発明はシリアルATAに限定されるものではない。   Hereinafter, embodiments of the present invention will be described with reference to the drawings. In this embodiment, a serial ATA interface is used as the data transfer control device and method according to the present invention. However, the present invention is not limited to serial ATA.

(第1の実施の形態)
図1は、連続したデータを送受信するシステムにおける第1の実施の形態のデータ転送制御装置を示す。本実施の形態では、連続したデータとしてパケットデータを扱う例を示す。図1において、FIFO10は、最大パケット長より小さい容量を持つ2つのFIFOブロック10a、10bからなり、送信制御回路11の制御により、送信データの書き込み及び読み出しが制御される。ただし、FIFOブロック10a、10bは読み出しと書き込みとは同時に処理できない。
(First embodiment)
FIG. 1 shows a data transfer control device of a first embodiment in a system for transmitting and receiving continuous data. In this embodiment, an example of handling packet data as continuous data is shown. In FIG. 1, the FIFO 10 includes two FIFO blocks 10 a and 10 b having a capacity smaller than the maximum packet length, and writing and reading of transmission data are controlled by the control of the transmission control circuit 11. However, the FIFO blocks 10a and 10b cannot process reading and writing simultaneously.

送信制御回路11は、書き込まれたデータ量に応じてインクリメントされるカウント値により、格納されたデータ量を示す送信書き込みポインタ11aと、読み出されたデータ量に応じてインクリメントされるカウント値により、その読み出されたデータ量を示す送信読み出しポインタ11cと、FIFOブロック切替制御部11bとを備える。このFIFOブロック切替制御部11bはFIFOブロック10aの最大容量を示す容量ポインタ11dとFIFOブロック10bの最大容量を示す容量ポインタ11eとを有しており、送信書き込みポインタ11aのカウント値が容量ポインタ11dに等しくなると、FIFOブロック10aに最大容量分のデータが格納されたと判断し、FIFOブロックを10aから空いている10bに切替える。それと共に、送信書き込みポインタ11aのカウント値はクリアされ、FIFOブロック10bのデータ格納が開始されると同時に、再度インクリメントが開始される。また、読み出しの場合も同様に、容量ポインタの値と送信読み出しポインタ11cのカウント値とを比較することにより、FIFOブロック切替制御部11bは、FIFOブロックの切替えを行う。   The transmission control circuit 11 uses a transmission write pointer 11a indicating the stored data amount by a count value incremented according to the written data amount and a count value incremented according to the read data amount. A transmission read pointer 11c indicating the read data amount and a FIFO block switching control unit 11b are provided. The FIFO block switching control unit 11b has a capacity pointer 11d indicating the maximum capacity of the FIFO block 10a and a capacity pointer 11e indicating the maximum capacity of the FIFO block 10b. The count value of the transmission write pointer 11a is stored in the capacity pointer 11d. If they are equal, it is determined that the maximum capacity of data has been stored in the FIFO block 10a, and the FIFO block is switched from 10a to an empty 10b. At the same time, the count value of the transmission write pointer 11a is cleared, and at the same time as the data storage of the FIFO block 10b is started, the increment is started again. Similarly, in the case of reading, the FIFO block switching control unit 11b switches the FIFO block by comparing the value of the capacity pointer with the count value of the transmission read pointer 11c.

送信書き込み制御部12は、容量ポインタ11d又は11eの値と送信書き込みポインタ11aの示すカウント値との比較により得られた書き込みデータ量の情報を受け、それにより、更に書き込みが可能であると判断した場合、すなわち、容量ポインタ11d又は11eの値よりも送信書き込みポインタ11aの示すカウント値が小さい場合には送信転送元に送信書き込み許可信号(送信書き込み可能信号)をアサートし、書き込み不可能の場合、すなわち、送信書き込みポインタ11aのカウント値がFIFOブロック10a又は10bの最大容量に等しくなった場合には送信書き込み許可信号をネゲートする。送信書き込み許可信号がアサートされている場合において、送信転送元から送信書き込み要求信号が送信されれば、送信書き込み制御部12は書き込みをさせる制御信号を送信制御回路11に出力する。   The transmission write control unit 12 receives information on the amount of write data obtained by comparing the value of the capacity pointer 11d or 11e with the count value indicated by the transmission write pointer 11a, and thereby determines that further writing is possible. In this case, that is, when the count value indicated by the transmission write pointer 11a is smaller than the value of the capacity pointer 11d or 11e, a transmission write permission signal (transmission write enable signal) is asserted to the transmission transfer source. That is, when the count value of the transmission write pointer 11a becomes equal to the maximum capacity of the FIFO block 10a or 10b, the transmission write permission signal is negated. If the transmission write request signal is transmitted from the transmission transfer source when the transmission write permission signal is asserted, the transmission write control unit 12 outputs a control signal for writing to the transmission control circuit 11.

また、送信読み出し制御部13は、容量ポインタ11d又は11eの値と送信読み出しポインタ11cの示すカウント値との比較により得られた読み出しデータ量の情報を受け、それにより、更に読み出しが可能であると判断した場合、すなわち、データ書き込み中ではなく、且つ、容量ポインタ11d又は11eの値よりも送信読み出しポインタ11cの示すカウント値が小さいような、データが格納されている場合には、送信転送先に送信読み出し許可信号(送信読み出し可能信号)をアサートし、読み出しが不可能の場合、すなわち、読み出しポインタ11cのカウント値がFIFOブロック10a又は10bの最大容量に等しくなった場合には送信読み出し許可信号をネゲートする。送信読み出し許可信号がアサートされている場合において、送信転送先から送信読み出し要求信号が送信されれば、送信読み出し制御部13は読み出しをさせる制御信号を送信制御回路11に出力する。   In addition, the transmission / reading control unit 13 receives information on the amount of read data obtained by comparing the value of the capacity pointer 11d or 11e with the count value indicated by the transmission / reading pointer 11c, thereby further reading is possible. When it is determined, that is, when data is not being written and data is stored such that the count value indicated by the transmission read pointer 11c is smaller than the value of the capacity pointer 11d or 11e, the data is stored in the transmission transfer destination. When the transmission read permission signal (transmission read enable signal) is asserted and reading is impossible, that is, when the count value of the read pointer 11c becomes equal to the maximum capacity of the FIFO block 10a or 10b, the transmission read permission signal is Negate. If the transmission read request signal is transmitted from the transmission transfer destination when the transmission read permission signal is asserted, the transmission read control unit 13 outputs a control signal for reading to the transmission control circuit 11.

送信TERM制御部14は、FIFOブロック10a又は10bのいずれにもデータが格納されていない状態、又は、データが格納されていても書き込み中であり、その書き込み中のFIFOブロック10a又は10b以外にはデータが格納されていない状態のような、読み出し不可能な場合のデータ格納情報を送信制御回路11から受けたとき、送信転送先へのデータ送信を一時停止させる送信TERM信号を出力する。   The transmission TERM control unit 14 is in a state where no data is stored in any of the FIFO blocks 10a or 10b, or is being written even if data is stored, and other than the FIFO block 10a or 10b being written, When data storage information is received from the transmission control circuit 11 when reading is not possible, such as when data is not stored, a transmission TERM signal for temporarily stopping data transmission to the transmission transfer destination is output.

以下に、図2のタイミングチャートを用いて、図1のデータ転送制御装置の動作を説明する。図2では、送信書き込み制御部12の送信書き込み許可信号がアサートされているときに、転送元から送信書き込み要求許可信号がアサートされている様子を示している。この場合において、送信されてきたデータがFIFOブロック10aの最大容量分(図中の♯1)だけ格納されると、データの読み出しが可能となるので、送信読み出し制御部13から送信読み出し許可信号がアサートされる。ここで、転送先から送信読み出し要求信号が送信されているので、FIFOブロック10aからデータの読み出し及び転送が開始される。このFIFOブロック10aからデータが読み出されている間に、FIFOブロック10bには送信されてきたデータが格納されて行く(図中の♯2)。本実施の形態では、図2に示すように、FIFOブロック10bにデータ♯2が格納されるよりも、FIFOブロック10aからデータ♯1が出力される方が早いので、FIFOブロック10aから全てデータが出力された後は、まだ、FIFOブロック10bにデータを書き込み中となる。すなわち、データの読み出し可能なFIFOブロックが存在しない状態が生じる。そこで、送信転送先へのデータ送信を一時停止させる送信TERM信号が送信TERM制御部14から出力される。この送信TERM信号が出力されているとき、FIFOからの読み出しは停止され、転送先データにはHOLDが挿入される。本実施の形態では、送信TERM信号が出力されているときのデータはSerialATAにおけるHOLDという特殊パターンであるが、これが別のパターンであっても有効であることに変わりはない。   The operation of the data transfer control device of FIG. 1 will be described below using the timing chart of FIG. FIG. 2 shows a state in which the transmission write request permission signal is asserted from the transfer source when the transmission write permission signal of the transmission write control unit 12 is asserted. In this case, when the transmitted data is stored for the maximum capacity (# 1 in the figure) of the FIFO block 10a, the data can be read, so that a transmission read permission signal is sent from the transmission read control unit 13. Asserted. Here, since a transmission read request signal is transmitted from the transfer destination, data read and transfer are started from the FIFO block 10a. While data is being read from the FIFO block 10a, the transmitted data is stored in the FIFO block 10b (# 2 in the figure). In the present embodiment, as shown in FIG. 2, since data # 1 is output from the FIFO block 10a earlier than data # 2 is stored in the FIFO block 10b, all data is output from the FIFO block 10a. After being output, data is still being written to the FIFO block 10b. That is, there is a state where there is no FIFO block from which data can be read. Therefore, a transmission TERM signal for temporarily stopping data transmission to the transmission transfer destination is output from the transmission TERM control unit 14. When this transmission TERM signal is output, reading from the FIFO is stopped, and HOLD is inserted into the transfer destination data. In the present embodiment, the data when the transmission TERM signal is output is a special pattern called HOLD in SerialATA, but it is still effective even if this is another pattern.

以上述べたように、本実施の形態におけるデータ転送制御装置及びその方法によれは、パケットの最大サイズよりも小さいFIFOを用いることによりデータ転送することが可能であり、FIFO容量の大幅な削減が可能となる。   As described above, according to the data transfer control device and the method thereof in the present embodiment, it is possible to transfer data by using a FIFO smaller than the maximum packet size, and the FIFO capacity can be greatly reduced. It becomes possible.

更に、送信書き込みポインタ11aと送信読み出しポインタ11cとのカウント値から得られる転送レートに基づき、出力する送信TERM信号の幅を調節することにより転送先の転送レートを転送元に合わせてHOLD期間を自動調節することが可能であり、転送レートの差を吸収して、効果的にデータ転送を行うことが可能となる。   Further, based on the transfer rate obtained from the count values of the transmission write pointer 11a and the transmission read pointer 11c, the HOLD period is automatically adjusted by adjusting the width of the transmission TERM signal to be output to match the transfer rate of the transfer destination with the transfer source. It is possible to adjust, and it is possible to effectively transfer data by absorbing the difference in transfer rate.

(第2の実施の形態)
以下、第2の実施の形態について、図3に基づいて説明する。
(Second Embodiment)
Hereinafter, a second embodiment will be described with reference to FIG.

図3は、連続したデータを送受信するシステムにおける第2の実施の形態のデータ転送制御装置を示す。本実施の形態では、連続したデータとしてパケットデータを扱う例を示す。   FIG. 3 shows a data transfer control device of a second embodiment in a system for transmitting and receiving continuous data. In this embodiment, an example of handling packet data as continuous data is shown.

本実施の形態におけるFIFOは、書き込みと読み出しとを同時に行うことができるものである。図3において、FIFO10は、最大パケット長より小さい容量をもつFIFOブロック10cを有している。   The FIFO in this embodiment can perform writing and reading simultaneously. In FIG. 3, the FIFO 10 has a FIFO block 10c having a capacity smaller than the maximum packet length.

送信制御回路11は、第1の実施の形態において示した図1のデータ転送制御装置と同様に、送信書き込みポインタ11aと送信読み出しポインタ11cとを有し、書き込み及び読み出しに応じてカウント値をインクリメントするそれらの機能は同様である。しかし、本実施の形態では、FIFOブロックは1つであり、送信制御回路11は、そのFIFOブロック10cの最大容量を示す容量ポインタ11fを1つ備える。   The transmission control circuit 11 has a transmission write pointer 11a and a transmission read pointer 11c as in the data transfer control device of FIG. 1 shown in the first embodiment, and increments the count value according to writing and reading. Their function to do is similar. However, in the present embodiment, there is one FIFO block, and the transmission control circuit 11 includes one capacity pointer 11f indicating the maximum capacity of the FIFO block 10c.

送信書き込み制御部12は、送信制御回路11からの書き込み情報を受け、書き込み可能又は不可能に応じて送信書き込み許可信号をアサート又はネゲートし、更に、送信転送元からの送信書き込み要求信号を受けたときには、書き込みを行わせるか否かの制御信号を送信制御回路11に出力する構成は第1の実施の形態と同様である。しかし、本実施の形態では、書き込み情報は送信書き込みポインタ11aと送信読み出しポインタ11cとのカウント値の差を容量ポインタ11fの値と比較することにより得られる点で異なっている。   The transmission write control unit 12 receives write information from the transmission control circuit 11, asserts or negates a transmission write enable signal according to whether writing is possible or impossible, and further receives a transmission write request signal from the transmission transfer source. In some cases, the configuration for outputting a control signal as to whether or not to perform writing to the transmission control circuit 11 is the same as in the first embodiment. However, in the present embodiment, the write information is different in that it is obtained by comparing the difference in count value between the transmission write pointer 11a and the transmission read pointer 11c with the value of the capacity pointer 11f.

また、送信読み出し制御部13においても、上述の送信書き込み制御部12と同様に、書き込み情報が送信書き込みポインタ11aと送信読み出しポインタ11cとのカウント値の差を容量ポインタ11fの値と比較することにより得られる点で第1の実施の形態と異なる。   Also in the transmission / reading control unit 13, as in the transmission / writing control unit 12 described above, the write information is obtained by comparing the count value difference between the transmission / writing pointer 11a and the transmission / reading pointer 11c with the value of the capacity pointer 11f. It differs from the first embodiment in that it is obtained.

送信TERM制御部14は、本実施の形態では送信許可設定レジスタ14aを備えており、送信制御回路11から得られた送信書き込みポインタ11aと送信読み出しポインタ11cとのカウント値の差が、送信許可設定レジスタ14aの値(所定値)よりも小さいとき、すなわち、読み出される格納データが少なくなったとき、送信転送先へのデータ送信を一時停止させる送信TERM信号を出力する。また、前記差が、送信許可設定レジスタ14aの値よりも大きいときは、読み出せるデータが十分に格納されていると判断して、送信読み出し制御部13は、送信転送先に送信読み出し許可信号をアサートする。このとき、送信転送先から読み出し要求信号が送信されていれば、送信読み出し制御部13は、送信制御回路11に読み出しをさせる読み出し制御信号を出力する。   In this embodiment, the transmission TERM control unit 14 includes a transmission permission setting register 14a, and the difference between the count values of the transmission write pointer 11a and the transmission read pointer 11c obtained from the transmission control circuit 11 is the transmission permission setting. When the value is smaller than the value (predetermined value) of the register 14a, that is, when the stored data to be read is small, a transmission TERM signal for temporarily stopping data transmission to the transmission transfer destination is output. When the difference is larger than the value of the transmission permission setting register 14a, it is determined that the data that can be read is sufficiently stored, and the transmission read control unit 13 sends a transmission read permission signal to the transmission transfer destination. Assert. At this time, if a read request signal is transmitted from the transmission transfer destination, the transmission read control unit 13 outputs a read control signal that causes the transmission control circuit 11 to perform reading.

以下に、図4のタイミングチャートを用いて、図3のデータ転送制御装置の動作を説明する。本実施の形態では、送信許可設定レジスタ14aの値が3に設定されている例について説明する。この設定値のもと、図4では、送信書き込みポインタ11aの値が♯3になったとき、送信書き込みポインタ11aと送信読み出しポインタ11cとのカウント値の差が3になるので、送信読み出し許可信号がアサートされる。しかし、送信書き込みポインタ11aのカウント値が♯4になる時点で、送信読み出しポインタ11cのカウント値は♯2となっており、それらの差は送信許可設定レジスタ14aの3よりも小さい2となる。したがって、送信読み出し許可信号はネゲートされ、同時に、送信TERM信号が出力される。続いて、読み出しが一時停止されている間に、書き込みが行われ、送信書き込みポインタ11aのカウント値が♯5になったとき、送信書き込みポインタ11aと送信読み出しポインタ11cとの差は3になるので、再び読み出しが可能となり、送信読み出し許可信号がアサートされ、同時に、送信TERM信号の出力が停止される。   The operation of the data transfer control device of FIG. 3 will be described below using the timing chart of FIG. In the present embodiment, an example in which the value of the transmission permission setting register 14a is set to 3 will be described. Under this set value, in FIG. 4, when the value of the transmission write pointer 11a becomes # 3, the difference between the count values of the transmission write pointer 11a and the transmission read pointer 11c becomes 3, so the transmission read permission signal Is asserted. However, when the count value of the transmission write pointer 11a becomes # 4, the count value of the transmission read pointer 11c is # 2, and the difference between them is 2 which is smaller than 3 of the transmission permission setting register 14a. Therefore, the transmission read permission signal is negated, and at the same time, the transmission TERM signal is output. Subsequently, while reading is temporarily suspended, writing is performed, and when the count value of the transmission write pointer 11a becomes # 5, the difference between the transmission write pointer 11a and the transmission read pointer 11c is 3. Reading is enabled again, the transmission read permission signal is asserted, and at the same time, output of the transmission TERM signal is stopped.

以上述べたように、本実施の形態におけるデータ転送制御装置及びその方法によれば、上述のように、読み出しと書き込みとを同時に行うことができるFIFOを用いてデータ転送制御をすることにより、FIFO容量を更に削減することが可能となる。   As described above, according to the data transfer control device and the method thereof in the present embodiment, as described above, by performing data transfer control using the FIFO that can perform reading and writing simultaneously, the FIFO can be controlled. The capacity can be further reduced.

(第3の実施の形態)
以下、第3の実施の形態について、図5に基づいて説明する。
(Third embodiment)
Hereinafter, a third embodiment will be described with reference to FIG.

図5は、連続したデータを送受信するシステムにおける第3の実施の形態のデータ転送制御装置を示す。本実施の形態では、連続したデータとしてパケットデータを扱う例を示す。   FIG. 5 shows a data transfer control device of a third embodiment in a system for transmitting and receiving continuous data. In this embodiment, an example of handling packet data as continuous data is shown.

FIFO20、受信制御回路21、受信書き込み制御部22及び受信読み出し制御部23からなる構成については、第1の実施の形態において図1に示した送信用のデータ転送制御装置と同様であるので説明を省略する。   The configuration including the FIFO 20, the reception control circuit 21, the reception write control unit 22, and the reception read control unit 23 is the same as that of the data transfer control device for transmission shown in FIG. Omitted.

本実施の形態で用いられるデータ転送制御装置は受信用であるので、受信TERM制御部24は、FIFO20に最大容量分のデータが格納されている場合、又は、読み出し中のFIFOブロック以外のFIFOブロックの格納データが最大容量になっている場合、すなわち、いずれのFIFOブロックにも書き込みが不可能である場合、更に言い換えれば、いずれのFIFOブロックにも最大容量のデータが格納されている状態、又は、空き領域を有するFIFOブロックは読み出し中であり、且つ、それ以外のFIFOブロックには最大容量のデータが格納されている状態であるような場合には、受信転送元からのデータ送信を一時停止させる受信TERM信号を出力する。   Since the data transfer control device used in the present embodiment is for reception, the reception TERM control unit 24 uses the FIFO block other than the FIFO block being read when the FIFO 20 stores data for the maximum capacity. Is stored in the maximum capacity, that is, when writing to any FIFO block is impossible, in other words, the state where the maximum capacity data is stored in any FIFO block, or When a FIFO block having a free area is being read and the maximum capacity of data is stored in other FIFO blocks, data transmission from the reception transfer source is temporarily stopped. The received TERM signal is output.

以下に、図6のタイミングチャートを用いて、図5のデータ転送制御装置の動作を説明する。図6では、受信書き込み制御部22の受信書き込み許可信号がアサートされているときに、転送元から受信書き込み要求許可信号がアサートされている様子を示している。この場合において、送信されてきたデータがFIFOブロック20aの容量分(図中の♯1)だけ格納されると、受信読み出し制御部23から受信読み出し許可信号がアサートされる。そして、転送先から受信読み出し要求信号が送信されているので、FIFOブロック20aからデータが出力され、転送される。また、このFIFOブロック20aからデータが出力されている間に、FIFOブロック20bには受信データが格納されて行く(図中の♯2)。本実施の形態では、図6に示すように、FIFOブロック20aのデータ♯1が全て読み出される前にFIFOブロック20bにデータ♯2が充填されるので、データ♯2の格納が終了した直後は、書き込み可能なFIFOブロックが存在しない状態となる。したがって、受信転送元からのデータ送信を一時停止させる受信TERM信号が受信TERM制御部24から出力される。この受信TERM信号が出力されているとき、FIFOへの書き込みは停止され、転送元データにはHOLDが挿入される。このHOLDは、第1の実施の形態と同様に、別のパターンであっても有効であることに変わりはない。   The operation of the data transfer control device of FIG. 5 will be described below using the timing chart of FIG. FIG. 6 shows a state in which the reception write request permission signal is asserted from the transfer source when the reception write permission signal of the reception write control unit 22 is asserted. In this case, when the transmitted data is stored by the capacity of the FIFO block 20a (# 1 in the figure), the reception read control signal is asserted from the reception read control unit 23. Since the reception read request signal is transmitted from the transfer destination, data is output from the FIFO block 20a and transferred. While data is being output from the FIFO block 20a, received data is stored in the FIFO block 20b (# 2 in the figure). In the present embodiment, as shown in FIG. 6, the FIFO block 20b is filled with the data # 2 before all the data # 1 of the FIFO block 20a is read. Therefore, immediately after the storage of the data # 2 is completed, There is no writable FIFO block. Therefore, a reception TERM signal that temporarily stops data transmission from the reception transfer source is output from the reception TERM control unit 24. When this received TERM signal is output, writing to the FIFO is stopped and HOLD is inserted into the transfer source data. As in the first embodiment, this HOLD is still effective even with another pattern.

以上述べたように、本実施の形態におけるデータ転送制御装置及びその方法によれば、受信書き込みポインタ21aと受信読み出しポインタ21cとのカウント値から得られる転送レートに基づき、出力する受信TERM信号の幅を調節することにより転送元の転送レートを転送先に合わせてHOLD期間を自動調節することが可能であり、転送レートの差を吸収して、効果的にデータ転送を行うことが可能となる。   As described above, according to the data transfer control device and method of the present embodiment, the width of the received TERM signal to be output based on the transfer rate obtained from the count values of the reception write pointer 21a and the reception read pointer 21c. By adjusting the transfer rate, it is possible to automatically adjust the HOLD period in accordance with the transfer rate of the transfer source in accordance with the transfer destination, and it is possible to effectively transfer data by absorbing the difference in transfer rate.

尚、本実施の形態においては、送信時のFIFOと受信時のFIFOとは別々になっているが、それらを兼用することが可能であることはいうまでもない。   In this embodiment, the FIFO at the time of transmission and the FIFO at the time of reception are separate, but it goes without saying that they can be used together.

(第4の実施の形態)
以下、第4の実施の形態について、図7に基づいて説明する。
(Fourth embodiment)
Hereinafter, a fourth embodiment will be described with reference to FIG.

図7は、連続したデータを送受信するシステムにおける第4の実施の形態のデータ転送制御装置を示す。本実施の形態では、連続したデータとしてパケットデータを扱う例を示す。   FIG. 7 shows a data transfer control device of a fourth embodiment in a system for transmitting and receiving continuous data. In this embodiment, an example of handling packet data as continuous data is shown.

本実施の形態におけるFIFOは、第2の実施の形態において図3に示したデータ転送制御装置と同様に、書き込みと読み出しとを同時に行うことができるものである。   The FIFO in this embodiment can perform writing and reading at the same time as in the data transfer control device shown in FIG. 3 in the second embodiment.

図7において、FIFOブロック20、受信制御回路21、受信書き込み制御部22及び受信読み出し制御部23は、図3のデータ転送制御装置と同様である。また、本実施の形態では、FIFOブロックは1つであり、受信制御回路21は、そのFIFOブロック20cの最大容量を示す容量ポインタ21fを1つ備える。   In FIG. 7, the FIFO block 20, the reception control circuit 21, the reception write control unit 22, and the reception read control unit 23 are the same as those of the data transfer control device of FIG. In the present embodiment, there is one FIFO block, and the reception control circuit 21 includes one capacity pointer 21f indicating the maximum capacity of the FIFO block 20c.

また、受信書き込み制御部22は、受信制御回路21からの書き込み情報を受け、書き込み可能又は不可能に応じて受信書き込み許可信号をアサート又はネゲートし、更に、受信転送元からの送信書き込み要求信号を受けたときには、書き込みを行わせるか否かの制御信号を受信制御回路21に出力する構成は第3の実施の形態と同様である。しかし、本実施の形態では、書き込み情報は受信書き込みポインタ21fの値と比較することにより得られる点において異なっている。   The reception write control unit 22 receives write information from the reception control circuit 21, asserts or negates a reception write permission signal according to whether writing is possible or impossible, and further transmits a transmission write request signal from the reception transfer source. When received, the configuration for outputting a control signal as to whether or not to perform writing to the reception control circuit 21 is the same as in the third embodiment. However, the present embodiment is different in that the write information is obtained by comparing with the value of the reception write pointer 21f.

更に、受信読み出し制御部23においても、上述の受信書き込み制御部22と同様に、書き込み情報が受信書き込みポインタ21aと受信読み出しポインタ21cとのカウント値の差を容量ポインタ21fの値と比較することにより得られる点において第3の実施の形態と異なる。   Further, in the reception / reading control unit 23, similarly to the above-described reception / writing control unit 22, the write information is obtained by comparing the count value difference between the reception / writing pointer 21a and the reception / reading pointer 21c with the value of the capacity pointer 21f. It differs from the third embodiment in that it is obtained.

続いて、本実施の形態で用いられるデータ転送制御装置は受信用であるので、受信TERM制御部24は、FIFO20へのデータ書き込みが不可能である場合に、転送元からのデータ送信を一時停止させる受信TERM信号を出力する。具体的には、本実施の形態では、受信TERM制御部24には受信TERM信号を出力する際の基準値を有する受信許可設定レジスタ24aが備えられており、受信制御回路21から得られた受信書き込みポインタ21aと受信読み出しポインタ21cとのカウント値の差が、受信許可設定レジスタ24aの値よりも大きいとき、すなわち、書き込まれた格納データが所定値以上になったとき、受信転送元からのデータ送信を一時停止させる受信TERM信号を出力する。   Subsequently, since the data transfer control device used in the present embodiment is for reception, the reception TERM control unit 24 temporarily stops data transmission from the transfer source when data writing to the FIFO 20 is impossible. The received TERM signal is output. Specifically, in the present embodiment, the reception TERM control unit 24 is provided with a reception permission setting register 24 a having a reference value for outputting a reception TERM signal. When the difference between the count values of the write pointer 21a and the reception read pointer 21c is larger than the value of the reception permission setting register 24a, that is, when the stored data that has been written exceeds a predetermined value, the data from the reception transfer source A reception TERM signal for temporarily stopping transmission is output.

以下に、図8のタイミングチャートを用いて、図7のデータ転送制御装置の動作を説明する。本実施の形態では、受信許可設定レジスタ24aの値が6に設定されている例について説明する。この設定値のもと、図8では、受信書き込みポインタ21aの値が♯5になった時、受信書き込みポインタ21aと受信読み出しポインタ21cとのカウント値の差が5になり、受信読み出し許可信号がアサートされる。そして、受信書き込みポインタ21cのカウント値が♯7になる時点で、受信読み出しポインタ21cのカウント値は♯1となり、それらの差は受信許可設定レジスタ24aの6に等しくなる。したがって、書き込みを一時停止する必要が生じ、受信TERM信号が出力される。続いて、書き込みが一時停止されている間に、読み出しが行われ、データ♯2の読み出し中に前記差が6よりも小さくなった時、再び書き込みが可能となり、受信TERM信号は解除され、データ♯8の書き込みが開始される。   The operation of the data transfer control device of FIG. 7 will be described below using the timing chart of FIG. In the present embodiment, an example in which the value of the reception permission setting register 24a is set to 6 will be described. Under this set value, in FIG. 8, when the value of the reception write pointer 21a becomes # 5, the difference between the count values of the reception write pointer 21a and the reception read pointer 21c becomes 5, and the reception read permission signal is Asserted. When the count value of the reception write pointer 21c becomes # 7, the count value of the reception read pointer 21c becomes # 1, and the difference between them is equal to 6 in the reception permission setting register 24a. Therefore, it is necessary to temporarily stop writing, and the received TERM signal is output. Subsequently, while writing is paused, reading is performed. When the difference becomes smaller than 6 during reading of data # 2, writing can be performed again, the received TERM signal is released, and data Writing of # 8 is started.

以上述べたように、本実施の形態におけるデータ転送制御装置及びその方法によれば、読み出しと書き込みとを同時に行うことができるFIFOを用いて受信制御をするので、FIFO容量を更に削減することが可能となる。   As described above, according to the data transfer control device and method of the present embodiment, the reception control is performed using the FIFO that can perform reading and writing at the same time, so that the FIFO capacity can be further reduced. It becomes possible.

更に、受信TERM信号の出力を決定する基準値を持ち、受信TERM信号を出力後においても、続けて受信することができるデータ数(許容値)を設定するフル許可設定レジスタ(図示せず)を受信許可設定レジスタ24aとは別に備えることも可能である。このような構成とすることにより、転送元のデータが受信TERM信号によって停止しない場合にも対応することができ、システムの安定性及び拡張性を向上させることが可能である。   Further, a full permission setting register (not shown) has a reference value for determining the output of the received TERM signal and sets the number of data (allowable value) that can be continuously received even after the received TERM signal is output. It may be provided separately from the reception permission setting register 24a. By adopting such a configuration, it is possible to cope with the case where the transfer source data is not stopped by the received TERM signal, and the stability and expandability of the system can be improved.

また、オーバーランデータを受信できるように、受信TERM信号の出力タイミングを受信許可設定レジスタで制御することにより、FIFOを有効に使用することが可能となる。   Further, the FIFO can be used effectively by controlling the output timing of the reception TERM signal by the reception permission setting register so that the overrun data can be received.

本発明にかかるデータ転送制御装置及びデータ転送制御方法は、FIFOを用いるパケット等の連続したデータ転送において、その連続データの途中で停止でき、FIFO容量を大幅に削減でき、しかもシステムの安定性と拡張性とを実現できる効果を有し、パケットのように単位毎に処理が必要なデータ転送システム等として有用である。   The data transfer control device and the data transfer control method according to the present invention can stop in the middle of continuous data transfer such as a packet using a FIFO, greatly reduce the FIFO capacity, and improve the stability of the system. It has the effect of realizing extensibility, and is useful as a data transfer system that requires processing for each unit, such as a packet.

本発明の第1の実施の形態のデータ転送制御装置の構成図である。It is a block diagram of the data transfer control apparatus of the 1st Embodiment of this invention. 第1の実施の形態におけるデータ転送制御方法を示したタイミングチャート図である。It is a timing chart figure showing a data transfer control method in a 1st embodiment. 本発明の第2の実施の形態のデータ転送制御装置の構成図である。It is a block diagram of the data transfer control apparatus of the 2nd Embodiment of this invention. 第2の実施の形態におけるデータ転送制御方法を示したタイミングチャート図である。FIG. 6 is a timing chart illustrating a data transfer control method according to a second embodiment. 本発明の第3の実施の形態のデータ転送制御装置の構成図である。It is a block diagram of the data transfer control apparatus of the 3rd Embodiment of this invention. 第3の実施の形態におけるデータ転送制御方法を示したタイミングチャート図である。FIG. 9 is a timing chart illustrating a data transfer control method according to a third embodiment. 本発明の第4の実施の形態のデータ転送制御装置の構成図である。It is a block diagram of the data transfer control apparatus of the 4th Embodiment of this invention. 第4の実施の形態におけるデータ転送制御方法を示したタイミングチャート図である。It is a timing chart figure showing a data transfer control method in a 4th embodiment. (a)は、SerialATAにおけるパケットの転送例を示した図、(b)は、SerialATAにおけるパケットの別の転送例を示した図、(c)は、SerialATAにおけるパケットの更に別の転送例を示した図である。(A) is a diagram showing an example of packet transfer in Serial ATA, (b) is a diagram showing another example of packet transfer in Serial ATA, and (c) is a further example of packet transfer in Serial ATA. It is a figure. 従来のデータ転送制御装置の構成図である。It is a block diagram of the conventional data transfer control apparatus.

符号の説明Explanation of symbols

10、20 FIFO
10a、10b、20a、20b FIFOブロック
11、21 送受信制御回路
11a、21a 書き込みポインタ
11b、21b FIFOブロック切替制御部
11c、21c 読み出しポインタ
11d、11e、11f、
21d、21e、21f 容量ポインタ
12、22 書き込み制御部
13、23 読み出し制御部
14、24 TERM制御部(TERM制御回路)
14a、24a 送受信許可設定レジスタ
10, 20 FIFO
10a, 10b, 20a, 20b FIFO block 11, 21 Transmission / reception control circuit 11a, 21a Write pointer 11b, 21b FIFO block switching control unit 11c, 21c Read pointer 11d, 11e, 11f,
21d, 21e, 21f Capacity pointers 12, 22 Write control unit 13, 23 Read control unit 14, 24 TERM control unit (TERM control circuit)
14a, 24a Transmission / reception permission setting register

Claims (20)

所定長を有する連続データを転送先に転送するデータ転送制御装置において、
前記連続データの最大サイズよりも記憶容量が小さいFIFOブロックを複数有する
FIFOと、
前記FIFOブロックに格納されているデータ量を検出し、データの格納が終了した前記FIFOブロックを、データの格納が可能な前記FIFOブロックに切替えて順次書き込みを行わせる書き込み制御部と、
前記データの格納が終了した前記FIFOブロックがある場合には、他のFIFOブロックへのデータの書き込みが前記書き込み制御部により制御されているときにも、前記データの格納が終了したFIFOブロックからデータの読み出しを行う読み出し制御部とを備える
ことを特徴とするデータ転送制御装置。
In a data transfer control device for transferring continuous data having a predetermined length to a transfer destination,
A FIFO having a plurality of FIFO blocks having a storage capacity smaller than the maximum size of the continuous data;
A write control unit that detects the amount of data stored in the FIFO block, switches the FIFO block that has completed storing data to the FIFO block that can store data, and sequentially writes data;
In the case where there is the FIFO block in which the data storage is completed, the data from the FIFO block in which the data storage has been completed is stored even when the data writing to another FIFO block is controlled by the write control unit. A data transfer control device comprising: a read control unit that reads the data.
請求項1記載のデータ転送制御装置において、
データの読み出しが不可能な状態であるとき、データ読み出しを一時停止させる送信TERM信号を転送先に出力する送信TERM制御回路を備える
ことを特徴とするデータ転送制御装置。
The data transfer control device according to claim 1, wherein
A data transfer control device comprising: a transmission TERM control circuit that outputs a transmission TERM signal for temporarily stopping data reading to a transfer destination when data cannot be read.
請求項1記載のデータ転送制御装置において、
データの書き込みが不可能な状態であるとき、データ書き込みを一時停止させる受信TERM信号を転送元に出力する受信TERM制御回路を備える
ことを特徴とするデータ転送制御装置。
The data transfer control device according to claim 1, wherein
A data transfer control device comprising: a reception TERM control circuit that outputs a reception TERM signal for temporarily stopping data writing to a transfer source when data cannot be written.
所定長を有する連続データを転送先に転送するデータ転送制御装置において、
前記連続データの最大サイズよりも記憶容量が小さいFIFOブロックを有するFIFOと、
前記FIFOブロックへ書き込んだデータの総量に対して、前記FIFOから読み出したデータの総量を減算した差に基づいて前記FIFOブロックのデータ残量を検出し、前記データ残量に応じて前記FIFOブロックに対するデータの書き込み及び読み出しを制御する制御回路とを備える
ことを特徴とするデータ転送制御装置。
In a data transfer control device for transferring continuous data having a predetermined length to a transfer destination,
A FIFO having a FIFO block with a storage capacity smaller than the maximum size of the continuous data;
The remaining amount of data in the FIFO block is detected based on the difference obtained by subtracting the total amount of data read from the FIFO from the total amount of data written to the FIFO block, and the FIFO block is detected according to the remaining amount of data. A data transfer control device comprising: a control circuit that controls writing and reading of data.
請求項4記載のデータ転送制御装置において、
データの読み出しが不可能な状態であるとき、データ読み出しを一時停止させる送信TERM信号を転送先に出力する送信TERM制御回路を備える
ことを特徴とするデータ転送制御装置。
The data transfer control device according to claim 4, wherein
A data transfer control device comprising: a transmission TERM control circuit that outputs a transmission TERM signal for temporarily stopping data reading to a transfer destination when data cannot be read.
請求項4記載のデータ転送制御装置において、
データの書き込みが不可能な状態であるとき、データ書き込みを一時停止させる受信TERM信号を転送元に出力する受信TERM制御回路を備える
ことを特徴とするデータ転送制御装置。
The data transfer control device according to claim 4, wherein
A data transfer control device comprising: a reception TERM control circuit that outputs a reception TERM signal for temporarily stopping data writing to a transfer source when data cannot be written.
所定長を有する連続データを送信転送先に転送するデータ転送制御装置において、
前記連続データの最大サイズよりも記憶容量が小さいFIFOブロックを複数有するFIFOと、
データの書き込み時に、前記FIFOブロックにその最大容量分のデータが格納されたとき、空き領域を有する他の前記FIFOブロックに切替え、データの読み出し時に、前記FIFOブロックにデータがなくなったとき、データが格納されている他の前記FIFOブロックに切替えるFIFOブロック切替制御部と、
データが書き込まれると共にインクリメントされるカウント値により書き込まれたデータ量を示し、FIFOブロック切替時にクリアされる送信書き込みポインタと、
データが読み出されると共にインクリメントされるカウント値により読み出されたデータ量を示し、FIFOブロック切替時にクリアされる送信読み出しポインタと
を備える送信制御回路と、
前記FIFOブロック切替制御部が有する前記FIFOブロックの最大容量を示す容量ポインタの値よりも前記送信書き込みポインタの示すカウント値が小さく、且つ読み出し中でない前記FIFOブロックがあるとき、前記送信転送先に送信書き込み可能信号を出力する一方で、書き込みを行わせるか否かの書き込み制御信号を前記送信制御回路に送信する送信書き込み制御部と、データが格納され、且つ書き込み中でない格納済みの前記FIFOブロックが少なくとも1つあるとき、前記送信転送先に送信読み出し可能信号を出力する一方で、読み出しを行わせるか否かの読み出し制御信号を前記送信制御回路に送信する送信読み出し制御部と、
いずれの前記FIFOブロックからもデータの読み出しが不可能な場合、前記送信転送先へのデータ送信を一時停止させる送信TERM信号を出力する送信TERM制御部とを備える
ことを特徴とするデータ転送制御装置。
In a data transfer control device for transferring continuous data having a predetermined length to a transmission transfer destination,
A FIFO having a plurality of FIFO blocks having a storage capacity smaller than the maximum size of the continuous data;
When data of the maximum capacity is stored in the FIFO block at the time of data writing, the data is switched to another FIFO block having a free area, and when data is lost in the FIFO block at the time of data reading, A FIFO block switching control unit for switching to the other FIFO block stored;
A transmission write pointer that indicates the amount of data written by a count value that is incremented as data is written and is cleared when the FIFO block is switched,
A transmission control circuit comprising: a transmission read pointer that indicates a data amount read by a count value that is incremented when data is read and is cleared when the FIFO block is switched;
When the count value indicated by the transmission write pointer is smaller than the value of the capacity pointer indicating the maximum capacity of the FIFO block included in the FIFO block switching control unit and there is the FIFO block that is not being read, the transmission is transmitted to the transmission transfer destination. A transmit / write controller that transmits a write control signal indicating whether or not to perform writing to the transmission control circuit while outputting a writable signal, and the stored FIFO block in which data is stored and not being written A transmission read control unit that, when there is at least one, outputs a transmission read enable signal to the transmission transfer destination, and transmits a read control signal as to whether or not to perform reading to the transmission control circuit;
A data transfer control device comprising: a transmission TERM control unit that outputs a transmission TERM signal for temporarily stopping data transmission to the transmission transfer destination when data cannot be read from any of the FIFO blocks .
所定長を有する連続データを送信転送先に転送するデータ転送制御装置において、
前記連続データの最大サイズよりも記憶容量が小さいFIFOと、
データが書き込まれると共にインクリメントされるカウント値により書き込まれたデータ量を示す送信書き込みポインタと、
データが読み出されると共にインクリメントされるカウント値により読み出されたデータ量を示す送信読み出しポインタと、前記FIFOの最大容量を示す容量ポインタとを備える送信制御回路と、
前記FIFOにデータが格納可能であるときに送信書き込み可能信号を出力する一方で、書き込みを行わせるか否かの書き込み制御信号を前記送信制御回路に送信する送信書き込み制御部と、
前記送信書き込みポインタのカウント値から前記送信読み出しポインタのカウント値を減算した差が所定値よりも大きいとき、送信転送先に送信読み出し可能信号を出力する一方で、読み出しを行わせるか否かの読み出し制御信号を前記送信制御回路に送信する送信読み出し制御部と、
前記所定値を保持する送信許可設定レジスタを有し、前記差が前記所定値よりも小さいとき、前記送信転送先へのデータ送信を一時停止させる送信TERM信号を出力する送信TERM制御部とを備える
ことを特徴とするデータ転送制御装置。
In a data transfer control device for transferring continuous data having a predetermined length to a transmission transfer destination,
A FIFO having a storage capacity smaller than the maximum size of the continuous data;
A transmission write pointer indicating the amount of data written by a count value that is incremented as data is written;
A transmission control circuit comprising a transmission read pointer indicating the amount of data read by the count value incremented when data is read, and a capacity pointer indicating the maximum capacity of the FIFO;
A transmission write control unit for transmitting a write control signal as to whether or not to perform writing while outputting a transmission writable signal when data can be stored in the FIFO;
When the difference obtained by subtracting the count value of the transmission read pointer from the count value of the transmission write pointer is larger than a predetermined value, the transmission read enable signal is output to the transmission transfer destination, while reading whether or not to perform reading is performed. A transmission readout control unit for transmitting a control signal to the transmission control circuit;
A transmission permission setting register for holding the predetermined value, and a transmission TERM control unit for outputting a transmission TERM signal for temporarily stopping data transmission to the transmission transfer destination when the difference is smaller than the predetermined value. A data transfer control device.
請求項7記載のデータ転送制御装置において、
前記送信TERM制御回路は、データ書き込み時間及びデータ読み出し時間に基づく情報を前記送信制御回路から受けて、前記データ書き込み時間とデータ読み出し時間との差を埋めるように前記送信TERM信号の幅を自動的に変化させる
ことを特徴とするデータ転送制御装置。
The data transfer control device according to claim 7, wherein
The transmission TERM control circuit receives information based on the data write time and the data read time from the transmission control circuit, and automatically sets the width of the transmission TERM signal so as to fill the difference between the data write time and the data read time. A data transfer control device characterized by being changed to
所定長を有する連続データを受信転送先に転送するデータ転送制御装置において、
前記連続データの最大サイズよりも記憶容量が小さいFIFOブロックを複数有するFIFOと、
データ書き込み時に、前記FIFOブロックにその最大容量分のデータが格納されたとき、空き領域を有する他の前記FIFOブロックに切替え、データの読み出し時に、前記FIFOブロックにデータがなくなったとき、データが格納されている他の前記FIFOブロックに切替えるFIFO切替制御部と、データが書き込まれると共にインクリメントされるカウント値により書き込まれたデータ量を示し、FIFOブロック切替時にクリアされる受信書き込みポインタと、データが読み出されると共にインクリメントされるカウント値により読み出されたデータ量を示し、FIFOブロック切替時にクリアされる受信読み出しポインタとを備える受信制御回路と、
前記FIFOブロック切替制御部が有する前記FIFOブロックの最大容量を示す容量ポインタの値よりも前記送信書き込みポインタの示すカウント値が小さく、且つ読み出し中でない前記FIFOブロックがあるとき、受信転送先に受信書き込み可能信号を出力する一方で、書き込みを行わせるか否かの書き込み制御信号を前記受信制御回路に送信する受信書き込み制御部と、データが格納され、且つ書き込み中でない前記FIFOブロックが少なくとも1つあるとき、前記受信転送先に受信読み出し可能信号を出力する一方で、読み出しを行わせるか否かの読み出し制御信号を前記受信制御回路に送信する受信読み出し制御部と、
いずれの前記FIFOブロックへもデータの書き込みが不可能な場合、前記受信転送元からのデータ受信を一時停止させる受信TERM信号を出力する受信TERM制御部とを備える
ことを特徴とするデータ転送制御装置。
In a data transfer control device for transferring continuous data having a predetermined length to a reception transfer destination,
A FIFO having a plurality of FIFO blocks having a storage capacity smaller than the maximum size of the continuous data;
When data for the maximum capacity is stored in the FIFO block at the time of data writing, switching to another FIFO block having a free area is performed, and data is stored when there is no data in the FIFO block at the time of data reading. A FIFO switching control unit that switches to another FIFO block that has been written, a data write amount that is written and incremented by a count value that is written, a reception write pointer that is cleared when the FIFO block is switched, and data is read A reception control circuit including a reception read pointer that indicates a data amount read by a count value that is read and incremented and is cleared when the FIFO block is switched;
When there is a FIFO block in which the count value indicated by the transmission write pointer is smaller than the value of the capacity pointer indicating the maximum capacity of the FIFO block included in the FIFO block switching control unit and there is the FIFO block that is not being read, the reception write is received at the reception transfer destination There is at least one FIFO block that outputs a enable signal while transmitting a write control signal indicating whether or not to perform writing to the reception control circuit and the FIFO block in which data is stored and not being written. A reception read control unit that outputs a read control signal to the reception control circuit as to whether or not to perform reading while outputting a reception readable signal to the reception transfer destination,
A data transfer control device comprising: a reception TERM control unit that outputs a reception TERM signal for temporarily stopping data reception from the reception transfer source when data cannot be written to any of the FIFO blocks .
所定長を有する連続データを受信転送先に転送するデータ転送制御装置において、
前記連続データの最大サイズよりも記憶容量が小さいFIFOと、
データが書き込まれると共にインクリメントされるカウント値により書き込まれたデータ量を示す受信書き込みポインタと、データが読み出されると共にインクリメントされるカウント値により読み出されたデータ量を示す受信読み出しポインタと、前記FIFOの最大容量を示す容量ポインタとを備える受信制御回路と、
前記受信書き込みポインタと前記受信読み出しポインタとのカウント値の差が所定値よりも小さいとき、受信転送元に受信書き込み可能信号を出力する一方で、書き込みを行わせるか否かの書き込み制御信号を前記受信制御回路に送信する受信書き込み制御部と、
前記FIFOにデータが格納され、且つ書き込みが行われていないときに、受信転送先に受信読み出し可能信号を出力する一方で、読み出しを行わせるか否かの読み出し制御信号を前記受信制御回路に送信する受信読み出し制御部と、
前記所定値を保持する受信許可設定レジスタを有し、前記差が前記所定値よりも大きいとき、前記受信転送元からのデータ受信を一時停止させる受信TERM信号を出力する受信TERM制御部とを備える
ことを特徴とするデータ転送制御装置。
In a data transfer control device for transferring continuous data having a predetermined length to a reception transfer destination,
A FIFO having a storage capacity smaller than the maximum size of the continuous data;
A reception write pointer indicating the amount of data written by the count value to which data is written and incremented, a reception read pointer indicating the amount of data read by the count value to be read and incremented, and the FIFO A reception control circuit comprising a capacity pointer indicating the maximum capacity;
When the difference between the count values of the reception write pointer and the reception read pointer is smaller than a predetermined value, a write control signal indicating whether or not to write is output while a reception write enable signal is output to the reception transfer source. A reception write control unit for transmitting to the reception control circuit;
When data is stored in the FIFO and writing is not performed, a reception readable signal is output to the reception transfer destination, while a read control signal indicating whether to perform reading is transmitted to the reception control circuit. Receiving and reading control unit,
A reception permission setting register for holding the predetermined value, and a reception TERM control unit for outputting a reception TERM signal for temporarily stopping data reception from the reception transfer source when the difference is larger than the predetermined value. A data transfer control device.
請求項10記載のデータ転送制御装置において、
前記受信TERM制御回路は、データ書き込み時間及びデータ読み出し時間に基づく情報を前記受信制御回路から受けて、前記データ書き込み時間とデータ読み出し時間との差を埋めるように前記受信TERM信号の幅を自動的に変化させる
ことを特徴とするデータ転送制御装置。
The data transfer control device according to claim 10, wherein
The reception TERM control circuit receives information based on the data write time and the data read time from the reception control circuit, and automatically sets the width of the reception TERM signal so as to fill the difference between the data write time and the data read time. A data transfer control device characterized by being changed to
請求項11記載のデータ転送制御装置において、
前記受信制御回路は、前記受信TERM信号が出力された後においても、前記所定値に相当するデータ数から、さらにデータ受信する
ことを特徴とするデータ転送制御装置。
The data transfer control device according to claim 11, wherein
The data transfer control device, wherein the reception control circuit further receives data from the number of data corresponding to the predetermined value even after the reception TERM signal is output.
請求項11記載のデータ転送制御装置において、
前記受信TERM制御部は、前記受信TERM信号の出力を決定する基準値、及び、前記受信TERM信号の出力後の受信可能データ数を決定する許容値を有するフル許可レジスタを備える
ことを特徴とするデータ転送制御装置。
The data transfer control device according to claim 11, wherein
The reception TERM control unit includes a full permission register having a reference value for determining the output of the reception TERM signal and an allowable value for determining the number of receivable data after the output of the reception TERM signal. Data transfer control device.
所定長を有する連続データを送信転送先に転送するデータ転送制御方法において、
前記連続データの最大サイズよりも記憶容量が小さい複数のFIFOブロックに前記連続データを順次格納するステップと、
データの書き込み時に、前記FIFOブロックがその最大容量分のデータを格納したとき、空き領域を有する他の前記FIFOブロックに切替えるステップと、
データの読み出し時に、前記FIFOブロックにデータがなくなったとき、データが格納されている他の前記FIFOブロックに切替えるステップと、
前記FIFOブロックの最大容量よりも書き込まれたデータ量が少なく、且つ読み出しが行われていないとき、送信転送元に送信書き込み可能信号を出力するステップと、
前記FIFOブロックにデータが格納されており、且つ、書き込みが行われていないとき、送信転送先に送信読み出し可能信号を出力するステップと、
いずれの前記FIFOブロックからもデータの読み出しが不可能な場合、前記送信転送先へのデータ送信を一時停止させる送信TERM信号を出力するステップとを含む
ことを特徴とするデータ転送制御方法。
In a data transfer control method for transferring continuous data having a predetermined length to a transmission transfer destination,
Sequentially storing the continuous data in a plurality of FIFO blocks having a storage capacity smaller than the maximum size of the continuous data;
When the FIFO block stores data of the maximum capacity at the time of data writing, switching to another FIFO block having a free area;
When there is no more data in the FIFO block at the time of data reading, switching to another FIFO block in which data is stored;
Outputting a transmission writable signal to the transmission transfer source when the amount of data written is less than the maximum capacity of the FIFO block and reading is not performed;
A step of outputting a transmission readable signal to a transmission transfer destination when data is stored in the FIFO block and writing is not performed;
A step of outputting a transmission TERM signal for temporarily stopping data transmission to the transmission transfer destination when data cannot be read from any of the FIFO blocks.
所定長を有する連続データを転送先に転送するデータ転送制御方法において、
前記連続データの最大サイズよりも記憶容量が小さいFIFOに前記連続データを書き込むステップと、
前記FIFOに格納されたデータを読み出すステップと、
前記FIFOにデータが格納可能であるときに送信書き込み可能信号を出力するステップと、
書き込みを行わせるか否かの書き込み制御信号を送信転送元に送信するステップと、
前記書き込みを行ったデータ総量と前記読み出しを行ったデータ総量との差が所定値よりも大きいとき、送信読み出し可能信号を出力するステップと、
読み出しを行わせるか否かの読み出し制御信号を送信転送先に送信するステップと、
前記差が前記所定値よりも小さいとき、前記送信転送先へのデータ送信を一時停止させる送信TERM信号を出力するステップとを含む
ことを特徴とするデータ転送制御方法。
In a data transfer control method for transferring continuous data having a predetermined length to a transfer destination,
Writing the continuous data in a FIFO having a smaller storage capacity than the maximum size of the continuous data;
Reading the data stored in the FIFO;
Outputting a transmission writable signal when data can be stored in the FIFO;
Transmitting a write control signal indicating whether or not to perform writing to a transmission transfer source; and
When a difference between the total amount of data that has been written and the total amount of data that has been read is greater than a predetermined value, outputting a transmission readable signal;
Transmitting a read control signal indicating whether or not to perform reading to a transmission transfer destination;
And a step of outputting a transmission TERM signal for temporarily stopping data transmission to the transmission and transfer destination when the difference is smaller than the predetermined value.
所定長を有する連続データを受信転送先に転送するデータ転送制御方法において、
前記連続データの最大サイズよりも記憶容量が小さい複数のFIFOブロックに前記連続データを順次格納するステップと、
データの書き込み時に、前記FIFOブロックがその最大容量分のデータを格納したとき、空き領域を有する他の前記FIFOブロックに切替えるステップと、
データの読み出し時に、前記FIFOブロックにデータがなくなったとき、データが格納されている他の前記FIFOブロックに切替えるステップと、
前記FIFOブロックの最大容量よりも書き込まれたデータ量が少なく、且つ読み出しが行われていないとき、受信転送先に受信書き込み可能信号を出力するステップと、
前記FIFOブロックにデータが格納されており、且つ、書き込みが行われていないとき、受信転送先に受信読み出し可能信号を出力するステップと、
いずれの前記FIFOブロックへもデータの書き込みが不可能な場合、前記受信転送元からのデータ受信を一時停止させる受信TERM信号を出力するステップとを含む
ことを特徴とするデータ転送制御方法。
In a data transfer control method for transferring continuous data having a predetermined length to a reception transfer destination,
Sequentially storing the continuous data in a plurality of FIFO blocks having a storage capacity smaller than the maximum size of the continuous data;
When the FIFO block stores data of the maximum capacity at the time of data writing, switching to another FIFO block having a free area;
When there is no more data in the FIFO block at the time of data reading, switching to another FIFO block in which data is stored;
Outputting a reception writable signal to a reception transfer destination when the amount of data written is smaller than the maximum capacity of the FIFO block and reading is not performed;
Outputting a reception readable signal to a reception transfer destination when data is stored in the FIFO block and writing is not performed;
And a step of outputting a reception TERM signal for temporarily stopping data reception from the reception transfer source when data cannot be written to any of the FIFO blocks.
所定長を有する連続データを受信転送先に転送するデータ転送制御方法において、
前記連続データの最大サイズよりも記憶容量が小さいFIFOに前記連続データを書き込むステップと、
前記FIFOに格納されたデータを読み出すステップと、
前記FIFOにデータが格納可能であるときに受信書き込み可能信号を出力するステップと、
書き込みを行わせるか否かの書き込み制御信号を受信転送元に送信するステップと、
前記書き込みを行ったデータ総量と前記読み出しを行ったデータ総量との差が所定値よりも大きいとき、受信読み出し可能信号を出力するステップと、
前記読み出しを行わせるか否かの読み出し制御信号を受信転送先に送信するステップと、
前記差が前記所定値よりも大きいとき、前記受信転送元からのデータ受信を一時停止させる受信TERM信号を出力するステップとを含む
ことを特徴とするデータ転送制御方法。
In a data transfer control method for transferring continuous data having a predetermined length to a reception transfer destination,
Writing the continuous data in a FIFO having a smaller storage capacity than the maximum size of the continuous data;
Reading the data stored in the FIFO;
Outputting a reception writable signal when data can be stored in the FIFO;
Transmitting a write control signal indicating whether or not to perform writing to the reception transfer source;
When the difference between the total amount of data that has been written and the total amount of data that has been read is greater than a predetermined value, outputting a reception readable signal;
Transmitting a read control signal indicating whether or not to perform the reading to a reception transfer destination;
And a step of outputting a reception TERM signal for temporarily stopping data reception from the reception transfer source when the difference is larger than the predetermined value.
請求項1、2、3、4、5、6、7、8、9、10、11、12、13又は14記載のデータ転送制御装置において、
前記連続データはパケットデータである
ことを特徴とするデータ転送制御装置。
The data transfer control device according to claim 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, or 14.
The data transfer control device, wherein the continuous data is packet data.
請求項15、16、17又は18記載のデータ転送制御方法において、
前記連続データはパケットデータである
ことを特徴とするデータ転送制御方法。

The data transfer control method according to claim 15, 16, 17 or 18,
The data transfer control method, wherein the continuous data is packet data.

JP2003419606A 2003-12-17 2003-12-17 Data transfer control device and data transfer control method Pending JP2005182290A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2003419606A JP2005182290A (en) 2003-12-17 2003-12-17 Data transfer control device and data transfer control method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003419606A JP2005182290A (en) 2003-12-17 2003-12-17 Data transfer control device and data transfer control method

Publications (1)

Publication Number Publication Date
JP2005182290A true JP2005182290A (en) 2005-07-07

Family

ID=34781455

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003419606A Pending JP2005182290A (en) 2003-12-17 2003-12-17 Data transfer control device and data transfer control method

Country Status (1)

Country Link
JP (1) JP2005182290A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008164563A (en) * 2007-01-05 2008-07-17 Yokogawa Electric Corp Data transfer circuit and semiconductor test apparatus

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008164563A (en) * 2007-01-05 2008-07-17 Yokogawa Electric Corp Data transfer circuit and semiconductor test apparatus

Similar Documents

Publication Publication Date Title
US6925512B2 (en) Communication between two embedded processors
US20130013825A1 (en) Usb device controller and power control method thereof
TWI528183B (en) Method, computer readable medium and system for performing data transfers for serial ata connections using data transfer rate throttling
JP2003316731A (en) Data transfer control device, electronic device, and data transfer control method
US7616566B2 (en) Data flow control apparatus and method of mobile terminal for reverse communication from high speed communication device to wireless network
US20120084469A1 (en) Usb transaction translator and a bulk transaction method
JP2005275538A (en) Direct memory access control apparatus and method
CN1109980C (en) Communication DMA device
JP2005182290A (en) Data transfer control device and data transfer control method
CN101616068B (en) Data access device and method applied to communication system
US20060236001A1 (en) Direct memory access controller
US20080104286A1 (en) Data transfer apparatus and data transfer method
JP2004227501A (en) Data transfer controller and method
KR100487199B1 (en) Apparatus and method for data transmission in dma
EP2096551A1 (en) Channel device, information processing system and data transfer method
CN115604210A (en) Expandable queue
JP2006018642A (en) Dma transfer controller
US6865654B2 (en) Device for interfacing asynchronous data using first-in-first-out
JP2000003332A (en) Bi-directional bus size conversion circuit
KR100974914B1 (en) USB data transmission method using DM suitable for smart card
JP7442025B2 (en) interface conversion device
JP2005174145A (en) Data processing method, data processing apparatus, program, and storage medium
JP4496935B2 (en) Audio / video output device and audio / video output method
JPH10105488A (en) Communication controller
JP2004355041A (en) Dma transfer relay device, dma transfer method and dma transfer system