JP2005182290A - Data transfer control device and data transfer control method - Google Patents
Data transfer control device and data transfer control method Download PDFInfo
- 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
Links
Images
Landscapes
- Information Transfer Systems (AREA)
Abstract
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,
図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
また、現在実用化が進んでいる次世代高速インターフェイスであるシリアル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を送信する。
しかしながら、特許文献1に記載された技術においては、FIFOの容量は最低の場合でもパケットの最大長を必要とする。このため回路規模は大きくなると共に、データの書き込み及び読み出し中の空き領域も大きくなるので、メモリの利用効率は低下する。また、容量が大きいほど、書き込み又は読み出しのうち一方の動作中における他方の動作の待機時間が大きくなり、データ転送の効率も低下する。逆に、送受信されるパケットが最大のパケット長以下の場合には、メモリに不使用領域を生じて、この場合にもメモリの利用効率は低下する等の問題が生じる。
However, in the technique described in
更に、データの転送元の転送レートと、データの転送先の転送レートとが異なる場合には、実際の転送レートは遅い側の転送レートに合わせざるを得ない為、パケットのように連続したデータを送る場合において、パケット間には転送していない長い期間を含み、効率の悪い転送になってしまうという問題が生じる。 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
請求項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
請求項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
請求項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
請求項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
請求項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
請求項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
更に、請求項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
更に、請求項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
また、請求項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
また、請求項14記載の発明では、受信TERM信号の出力は、同信号の出力後に受信できるデータ数とリンクさせることにより、FIFOを効率的に使用することができると共に容易に制御を行うことが可能となる。
In the invention according to
更に、請求項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
更に、請求項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
送信制御回路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
送信書き込み制御部12は、容量ポインタ11d又は11eの値と送信書き込みポインタ11aの示すカウント値との比較により得られた書き込みデータ量の情報を受け、それにより、更に書き込みが可能であると判断した場合、すなわち、容量ポインタ11d又は11eの値よりも送信書き込みポインタ11aの示すカウント値が小さい場合には送信転送元に送信書き込み許可信号(送信書き込み可能信号)をアサートし、書き込み不可能の場合、すなわち、送信書き込みポインタ11aのカウント値がFIFOブロック10a又は10bの最大容量に等しくなった場合には送信書き込み許可信号をネゲートする。送信書き込み許可信号がアサートされている場合において、送信転送元から送信書き込み要求信号が送信されれば、送信書き込み制御部12は書き込みをさせる制御信号を送信制御回路11に出力する。
The transmission
また、送信読み出し制御部13は、容量ポインタ11d又は11eの値と送信読み出しポインタ11cの示すカウント値との比較により得られた読み出しデータ量の情報を受け、それにより、更に読み出しが可能であると判断した場合、すなわち、データ書き込み中ではなく、且つ、容量ポインタ11d又は11eの値よりも送信読み出しポインタ11cの示すカウント値が小さいような、データが格納されている場合には、送信転送先に送信読み出し許可信号(送信読み出し可能信号)をアサートし、読み出しが不可能の場合、すなわち、読み出しポインタ11cのカウント値がFIFOブロック10a又は10bの最大容量に等しくなった場合には送信読み出し許可信号をネゲートする。送信読み出し許可信号がアサートされている場合において、送信転送先から送信読み出し要求信号が送信されれば、送信読み出し制御部13は読み出しをさせる制御信号を送信制御回路11に出力する。
In addition, the transmission /
送信TERM制御部14は、FIFOブロック10a又は10bのいずれにもデータが格納されていない状態、又は、データが格納されていても書き込み中であり、その書き込み中のFIFOブロック10a又は10b以外にはデータが格納されていない状態のような、読み出し不可能な場合のデータ格納情報を送信制御回路11から受けたとき、送信転送先へのデータ送信を一時停止させる送信TERM信号を出力する。
The transmission
以下に、図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
以上述べたように、本実施の形態におけるデータ転送制御装置及びその方法によれは、パケットの最大サイズよりも小さい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
送信制御回路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
送信書き込み制御部12は、送信制御回路11からの書き込み情報を受け、書き込み可能又は不可能に応じて送信書き込み許可信号をアサート又はネゲートし、更に、送信転送元からの送信書き込み要求信号を受けたときには、書き込みを行わせるか否かの制御信号を送信制御回路11に出力する構成は第1の実施の形態と同様である。しかし、本実施の形態では、書き込み情報は送信書き込みポインタ11aと送信読み出しポインタ11cとのカウント値の差を容量ポインタ11fの値と比較することにより得られる点で異なっている。
The transmission
また、送信読み出し制御部13においても、上述の送信書き込み制御部12と同様に、書き込み情報が送信書き込みポインタ11aと送信読み出しポインタ11cとのカウント値の差を容量ポインタ11fの値と比較することにより得られる点で第1の実施の形態と異なる。
Also in the transmission /
送信TERM制御部14は、本実施の形態では送信許可設定レジスタ14aを備えており、送信制御回路11から得られた送信書き込みポインタ11aと送信読み出しポインタ11cとのカウント値の差が、送信許可設定レジスタ14aの値(所定値)よりも小さいとき、すなわち、読み出される格納データが少なくなったとき、送信転送先へのデータ送信を一時停止させる送信TERM信号を出力する。また、前記差が、送信許可設定レジスタ14aの値よりも大きいときは、読み出せるデータが十分に格納されていると判断して、送信読み出し制御部13は、送信転送先に送信読み出し許可信号をアサートする。このとき、送信転送先から読み出し要求信号が送信されていれば、送信読み出し制御部13は、送信制御回路11に読み出しをさせる読み出し制御信号を出力する。
In this embodiment, the transmission
以下に、図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
以上述べたように、本実施の形態におけるデータ転送制御装置及びその方法によれば、上述のように、読み出しと書き込みとを同時に行うことができる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
本実施の形態で用いられるデータ転送制御装置は受信用であるので、受信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
以下に、図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
以上述べたように、本実施の形態におけるデータ転送制御装置及びその方法によれば、受信書き込みポインタ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
尚、本実施の形態においては、送信時の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
また、受信書き込み制御部22は、受信制御回路21からの書き込み情報を受け、書き込み可能又は不可能に応じて受信書き込み許可信号をアサート又はネゲートし、更に、受信転送元からの送信書き込み要求信号を受けたときには、書き込みを行わせるか否かの制御信号を受信制御回路21に出力する構成は第3の実施の形態と同様である。しかし、本実施の形態では、書き込み情報は受信書き込みポインタ21fの値と比較することにより得られる点において異なっている。
The reception
更に、受信読み出し制御部23においても、上述の受信書き込み制御部22と同様に、書き込み情報が受信書き込みポインタ21aと受信読み出しポインタ21cとのカウント値の差を容量ポインタ21fの値と比較することにより得られる点において第3の実施の形態と異なる。
Further, in the reception /
続いて、本実施の形態で用いられるデータ転送制御装置は受信用であるので、受信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
以下に、図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
以上述べたように、本実施の形態におけるデータ転送制御装置及びその方法によれば、読み出しと書き込みとを同時に行うことができる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
また、オーバーランデータを受信できるように、受信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.
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 /
21d, 21e,
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.
データの読み出しが不可能な状態であるとき、データ読み出しを一時停止させる送信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.
データの書き込みが不可能な状態であるとき、データ書き込みを一時停止させる受信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.
データの読み出しが不可能な状態であるとき、データ読み出しを一時停止させる送信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.
データの書き込みが不可能な状態であるとき、データ書き込みを一時停止させる受信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.
前記送信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.
前記受信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
前記受信制御回路は、前記受信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.
前記受信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.
前記連続データはパケットデータである
ことを特徴とするデータ転送制御装置。 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.
前記連続データはパケットデータである
ことを特徴とするデータ転送制御方法。
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.
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)
| 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 |
-
2003
- 2003-12-17 JP JP2003419606A patent/JP2005182290A/en active Pending
Cited By (1)
| 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 |