Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JP7711968B2 - COMMUNICATION DEVICE, COMMUNICATION METHOD, AND PROGRAM - Google Patents
[go: Go Back, main page]

JP7711968B2 - COMMUNICATION DEVICE, COMMUNICATION METHOD, AND PROGRAM - Google Patents

COMMUNICATION DEVICE, COMMUNICATION METHOD, AND PROGRAM

Info

Publication number
JP7711968B2
JP7711968B2 JP2023043261A JP2023043261A JP7711968B2 JP 7711968 B2 JP7711968 B2 JP 7711968B2 JP 2023043261 A JP2023043261 A JP 2023043261A JP 2023043261 A JP2023043261 A JP 2023043261A JP 7711968 B2 JP7711968 B2 JP 7711968B2
Authority
JP
Japan
Prior art keywords
data
unit
transmission
buffer
timing
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.)
Active
Application number
JP2023043261A
Other languages
Japanese (ja)
Other versions
JP2024132486A (en
Inventor
智純 森本
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Platforms Ltd
Original Assignee
NEC Platforms 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 NEC Platforms Ltd filed Critical NEC Platforms Ltd
Priority to JP2023043261A priority Critical patent/JP7711968B2/en
Publication of JP2024132486A publication Critical patent/JP2024132486A/en
Application granted granted Critical
Publication of JP7711968B2 publication Critical patent/JP7711968B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Description

本開示は、通信装置、通信方法、およびプログラムに関する。 The present disclosure relates to a communication device, a communication method, and a program.

さまざまな分野で通信装置による通信が行われている。特許文献1には、関連する技術として、通信速度が可変である通信ポートを装備したターミナルアダプタに関する技術が開示されている。 Communications are carried out using communication devices in a variety of fields. Patent Document 1 discloses a related technology, which is a terminal adapter equipped with a communication port with a variable communication speed.

特開2003-249954号公報JP 2003-249954 A

ところで、通信装置に使用されるXFIインターフェースなどの高速シリアル通信において、回線側の通信速度を低速に変更した場合、XFIインターフェースにより接続されているデバイス間での通信速度が、回線における通信速度よりも低くなってしまうことがある。その結果、通信装置から回線側へのデータの通信速度が低下する可能性がある。そのため、シリアル通信を行う通信装置から回線側へのデータの通信速度の低下を抑制することのできる技術が求められている。 However, in high-speed serial communication such as an XFI interface used in a communication device, if the communication speed on the line side is changed to a lower speed, the communication speed between devices connected by the XFI interface may become lower than the communication speed on the line. As a result, the communication speed of data from the communication device to the line side may decrease. Therefore, there is a demand for technology that can suppress the decrease in the communication speed of data from a communication device performing serial communication to the line side.

本開示の各態様は、上記の課題を解決することのできる通信装置、通信方法、およびプログラムを提供することを目的の1つとしている。 One of the objectives of each aspect of the present disclosure is to provide a communication device, a communication method, and a program that can solve the above problems.

上記目的を達成するために、本開示の一態様によれば、通信装置は、制御用バッファがオーバーフローする前に、フロー制御により回線側へ送信するデータを制御する第1処理手段と、前記データの送信タイミングを示すタイミング信号に基づいて、前記制御用バッファにおけるデータを、高速シリアル通信を行う受信部に送信する第2処理手段と、送信バッファの内部の状態に基づいて、前記データを送信可能なタイミングと前記データを送信不可能なタイミングとを示す前記タイミング信号を生成する第3処理手段と、を備える In order to achieve the above-mentioned object, according to one aspect of the present disclosure, a communication device comprises a first processing means for controlling data to be transmitted to a line side by flow control before a control buffer overflows, a second processing means for transmitting data in the control buffer to a receiving unit which performs high-speed serial communication based on a timing signal indicating the transmission timing of the data, and a third processing means for generating the timing signal indicating the timing when the data can be transmitted and the timing when the data cannot be transmitted based on an internal state of the transmission buffer .

上記目的を達成するために、本開示の別の態様によれば、通信方法は、通信装置が実行する通信方法であって、前記通信装置が、制御用バッファがオーバーフローする前に、フロー制御により回線側へ送信するデータを制御することと、前記通信装置が、前記データの送信タイミングを示すタイミング信号に基づいて、前記制御用バッファにおけるデータを、高速シリアル通信を行う受信部に送信することと、前記通信装置が、送信バッファの内部の状態に基づいて、前記データを送信可能なタイミングと前記データを送信不可能なタイミングとを示す前記タイミング信号を生成することと、を含む In order to achieve the above object, according to another aspect of the present disclosure, a communication method is executed by a communication device, and includes: the communication device controlling data to be transmitted to a line side by flow control before a control buffer overflows; the communication device transmitting data in the control buffer to a receiving unit that performs high-speed serial communication based on a timing signal indicating a transmission timing of the data; and the communication device generating the timing signal indicating a timing at which the data can be transmitted and a timing at which the data cannot be transmitted based on an internal state of a transmission buffer .

上記目的を達成するために、本開示の別の態様によれば、プログラムは、制御用バッファがオーバーフローする前に、フロー制御により回線側へ送信するデータを制御することと、前記データの送信タイミングを示すタイミング信号に基づいて、前記制御用バッファにおけるデータを、高速シリアル通信を行う受信部に送信することと、送信バッファの内部の状態に基づいて、前記データを送信可能なタイミングと前記データを送信不可能なタイミングとを示す前記タイミング信号を生成することと、をコンピュータに実行させる In order to achieve the above object, according to another aspect of the present disclosure, a program causes a computer to perform the following operations: control data to be transmitted to the line side using flow control before a control buffer overflows; transmit data in the control buffer to a receiving unit that performs high-speed serial communication based on a timing signal indicating the timing of transmitting the data; and generate the timing signal indicating the timing when the data can be transmitted and the timing when the data cannot be transmitted based on an internal state of the transmission buffer .

本開示の各態様によれば、通信装置において、シリアル通信を行う通信装置から回線側へのデータの通信速度の低下を抑制することができる。 According to each aspect of the present disclosure, in a communication device, it is possible to suppress a decrease in the data communication speed from the communication device performing serial communication to the line side.

本開示の一実施形態による通信装置の構成の一例を示す図である。FIG. 1 is a diagram illustrating an example of a configuration of a communication device according to an embodiment of the present disclosure. 本開示の一実施形態による制御部の構成の一例を示す図である。FIG. 2 is a diagram illustrating an example of a configuration of a control unit according to an embodiment of the present disclosure. 本開示の一実施形態による送信部の構成の一例を示す図である。FIG. 2 is a diagram illustrating an example of a configuration of a transmission unit according to an embodiment of the present disclosure. 本開示の一実施形態による通信装置における信号の一例を示す図である。FIG. 2 is a diagram illustrating an example of a signal in a communication device according to an embodiment of the present disclosure. 本開示の一実施形態による通信装置の処理フローの第1の例を示す図である。FIG. 2 is a diagram illustrating a first example of a processing flow of a communication device according to an embodiment of the present disclosure. 本開示の一実施形態による通信装置の処理フローの第2の例を示す図である。FIG. 11 is a diagram illustrating a second example of a processing flow of a communication device according to an embodiment of the present disclosure. 本開示の一実施形態による通信装置の処理フローの第3の例を示す図である。FIG. 11 is a diagram illustrating a third example of a processing flow of a communication device according to an embodiment of the present disclosure. 本開示の一実施形態による通信装置の処理フローの第4の例を示す図である。FIG. 11 is a diagram illustrating a fourth example of a processing flow of a communication device according to an embodiment of the present disclosure. 本開示の別の実施形態による通信装置が備える制御部の構成の一例を示す図である。FIG. 13 is a diagram illustrating an example of a configuration of a control unit included in a communication device according to another embodiment of the present disclosure. 本開示の別の実施形態による通信装置が備える受信部の構成の一例を示す図である。FIG. 13 is a diagram illustrating an example of a configuration of a receiving unit included in a communication device according to another embodiment of the present disclosure. 本開示の別の実施形態による送信部および制御部の構成の一例を示す図である。FIG. 13 is a diagram illustrating an example of a configuration of a transmission unit and a control unit according to another embodiment of the present disclosure. 本開示の実施形態による通信装置の最小構成を示す図である。FIG. 2 is a diagram illustrating a minimum configuration of a communication device according to an embodiment of the present disclosure. 本開示の実施形態による最小構成の通信装置の処理フローの一例を示す図である。FIG. 11 is a diagram illustrating an example of a processing flow of a communication device having a minimum configuration according to an embodiment of the present disclosure. 少なくとも1つの実施形態に係るコンピュータの構成を示す概略ブロック図である。FIG. 1 is a schematic block diagram illustrating a configuration of a computer according to at least one embodiment.

以下、図面を参照しながら実施形態について詳しく説明する。
<実施形態>
本開示の一実施形態による通信装置1は、回線クロックや高速シリアルクロックから送信タイミングを生成する機能、送信バッファの状態を考慮して送信タイミングを適正化する機能、生成された送信タイミングに基づいて制御用バッファ上のデータを高速シリアルへ送信する機能、および、制御用バッファがオーバーフローする前にフロー制御によりデータを制御する機能を有する。
Hereinafter, the embodiments will be described in detail with reference to the drawings.
<Embodiment>
A communication device 1 according to one embodiment of the present disclosure has a function of generating transmission timing from a line clock or a high-speed serial clock, a function of optimizing the transmission timing by taking into account the state of the transmission buffer, a function of transmitting data in the control buffer to a high-speed serial based on the generated transmission timing, and a function of controlling data by flow control before the control buffer overflows.

図1は、本開示の一実施形態による通信装置1の構成の一例を示す図である。通信装置1は、図1に示すように、高速シリアル通信の送信部10(以下、送信部10と記載)、制御部20(第1処理手段の一例、第2処理手段の一例、)、制御用バッファ部30、高速シリアル通信の受信部40(以下、受信部40と記載)、および回線出力部50を備える。 FIG. 1 is a diagram showing an example of the configuration of a communication device 1 according to an embodiment of the present disclosure. As shown in FIG. 1, the communication device 1 includes a high-speed serial communication transmitter 10 (hereinafter referred to as transmitter 10), a controller 20 (an example of a first processing means, an example of a second processing means), a control buffer unit 30, a high-speed serial communication receiver 40 (hereinafter referred to as receiver 40), and a line output unit 50.

送信部10は、制御部20にデータAを送信する。また、送信部10は、制御用バッファ部30においてオーバーフロー(すなわち、データの桁あふれ)が発生する前に、制御部20から受信する後述するフロー制御信号によりデータAの送信を一時的に停止する。 The transmitting unit 10 transmits data A to the control unit 20. In addition, the transmitting unit 10 temporarily stops transmitting data A in response to a flow control signal (described later) received from the control unit 20 before an overflow (i.e., data overflow) occurs in the control buffer unit 30.

制御部20は、送信部10からデータAを受信する。制御部20は、受信したデータAをデータBとして制御用バッファ部30へ送信する。なお、データAとデータBのペイロード部分は全て同じデータである。データAとデータBの違いは、ヘッダ等である。これは、各ブロックでの制御のため、ヘッダ等が付加されるケースを想定して名前を使い分けている。そして、制御部20は、制御用バッファ部30からデータBを受信する。制御部20は、受信したデータBをデータCとして受信部40に送信する。なお、データBとデータCのペイロード部分は全て同じデータである。データBとデータCの違いは、ヘッダ等である。これは、各ブロックでの制御のため、ヘッダ等が付加されるケースを想定して名前を使い分けている。 The control unit 20 receives data A from the transmission unit 10. The control unit 20 transmits the received data A as data B to the control buffer unit 30. Note that the payload portions of data A and data B are all the same data. The difference between data A and data B is the header, etc. This is because different names are used assuming that a header, etc. will be added for control in each block. The control unit 20 then receives data B from the control buffer unit 30. The control unit 20 transmits the received data B to the reception unit 40 as data C. Note that the payload portions of data B and data C are all the same data. The difference between data B and data C is the header, etc. This is because different names are used assuming that a header, etc. will be added for control in each block.

また、制御部20は、受信部40からタイミング信号を受信する。タイミング信号の詳細については、後述する。制御部20は、受信したタイミング信号に基づいて、制御部20から受信部40にデータCを送信するタイミングを制御する。 The control unit 20 also receives a timing signal from the receiving unit 40. Details of the timing signal will be described later. The control unit 20 controls the timing of transmitting data C from the control unit 20 to the receiving unit 40 based on the received timing signal.

また、制御部20は、制御用バッファ部30の内部の状態を示すバッファ状態信号を制御用バッファ部30から受信する。制御部20は、バッファ状態信号により示される制御用バッファ部30の内部の状態が所定の状態(例えば、制御用バッファ部30内部のバッファが所定のしきい値を超えている状態)となっていると判定した場合、オーバーフローしそうであると判定し、送信部10にフロー制御信号を送信する。 The control unit 20 also receives a buffer status signal from the control buffer unit 30, which indicates the internal state of the control buffer unit 30. When the control unit 20 determines that the internal state of the control buffer unit 30 indicated by the buffer status signal is in a predetermined state (for example, the buffer inside the control buffer unit 30 exceeds a predetermined threshold), it determines that an overflow is imminent and transmits a flow control signal to the transmission unit 10.

ここで、制御部20の具体的な構成について説明する。図2は、本開示の一実施形態による制御部20の構成の一例を示す図である。制御部20は、図2に示すように、高速シリアル受信部201、制御用バッファ送受信部202、高速シリアル送信部203、フロー制御送信部204、および送信タイミング受信部205を備える。 Here, a specific configuration of the control unit 20 will be described. FIG. 2 is a diagram showing an example of the configuration of the control unit 20 according to one embodiment of the present disclosure. As shown in FIG. 2, the control unit 20 includes a high-speed serial receiving unit 201, a control buffer transmitting/receiving unit 202, a high-speed serial transmitting unit 203, a flow control transmitting unit 204, and a transmission timing receiving unit 205.

高速シリアル受信部201は、送信部10からデータAを受信する。高速シリアル受信部201は、受信したデータAを制御用バッファ送受信部202へ送信する。 The high-speed serial receiver 201 receives data A from the transmitter 10. The high-speed serial receiver 201 transmits the received data A to the control buffer transmitter/receiver 202.

制御用バッファ送受信部202は、高速シリアル受信部201からデータAを受信する。制御用バッファ送受信部202は、受信したデータAをデータBとして制御用バッファ部30との間で送受信する。また、制御用バッファ送受信部202は、データBを高速シリアル送信部203へ送信する。 The control buffer transmission/reception unit 202 receives data A from the high-speed serial reception unit 201. The control buffer transmission/reception unit 202 transmits and receives the received data A as data B between the control buffer unit 30. The control buffer transmission/reception unit 202 also transmits data B to the high-speed serial transmission unit 203.

また、制御用バッファ送受信部202は、送信タイミング受信部205からタイミング信号を受信する。そして、制御用バッファ送受信部202は、タイミング信号に基づいて、データBを送信するタイミングを制御する。この制御により、後述する高速シリアル送信部203がデータBをデータCとして受信部40へ送信するタイミングを制御することができる。 The control buffer transceiver 202 also receives a timing signal from the transmission timing receiver 205. The control buffer transceiver 202 then controls the timing of transmitting data B based on the timing signal. This control makes it possible to control the timing at which the high-speed serial transmitter 203, described later, transmits data B to the receiver 40 as data C.

高速シリアル送信部203は、制御用バッファ送受信部202からデータBを受信する。高速シリアル送信部203は、受信したデータBをデータCとして受信部40へ送信する。 The high-speed serial transmission unit 203 receives data B from the control buffer transceiver unit 202. The high-speed serial transmission unit 203 transmits the received data B to the receiving unit 40 as data C.

フロー制御送信部204は、制御用バッファ部30からバッファ状態信号を受信する。フロー制御送信部204は、受信したバッファ状態信号をフロー制御信号として送信部10へ送信する。フロー制御送信部204は、バッファ状態信号に基づいてバッファ状態を監視し、オーバーフローが発生する前にフロー制御信号を使用して送信部10に通知する。なお、バッファ状態信号は、バッファの詰まり具合を示す信号である。また、フロー制御信号は、フロー制御送信部204でその状態を基にフロー制御を行うかどうかを判断した結果を示す信号である。 The flow control transmission unit 204 receives a buffer status signal from the control buffer unit 30. The flow control transmission unit 204 transmits the received buffer status signal to the transmission unit 10 as a flow control signal. The flow control transmission unit 204 monitors the buffer status based on the buffer status signal, and notifies the transmission unit 10 using a flow control signal before an overflow occurs. The buffer status signal is a signal that indicates the degree of congestion in the buffer. The flow control signal is a signal that indicates the result of the flow control transmission unit 204 deciding whether or not to perform flow control based on that status.

送信タイミング受信部205は、受信部40からタイミング信号を受信する。送信タイミング受信部205は、受信したタイミング信号を制御用バッファ送受信部202および高速シリアル送信部203に送信する。以上が制御部20の具体的な構成である。 The transmission timing receiving unit 205 receives a timing signal from the receiving unit 40. The transmission timing receiving unit 205 transmits the received timing signal to the control buffer transmitting/receiving unit 202 and the high-speed serial transmitting unit 203. The above is a specific configuration of the control unit 20.

制御用バッファ部30は、制御部20との間でデータBを送受信する。そして、制御用バッファ部30は、一時的に、データBをバッファリングする。また、制御用バッファ部30は、制御用バッファ部30内部のバッファ内にどの程度の量のデータBが滞留しているのかを示すバッファ状態信号を制御部20に送信することにより、制御用バッファ部30内部のバッファ内に滞留しているデータBの量を制御部20に通知する。 The control buffer unit 30 transmits and receives data B to and from the control unit 20. The control buffer unit 30 temporarily buffers data B. The control buffer unit 30 also notifies the control unit 20 of the amount of data B that is stored in the buffer within the control buffer unit 30 by transmitting a buffer status signal to the control unit 20 that indicates how much data B is stored in the buffer within the control buffer unit 30.

受信部40は、制御部20からデータCを受信する。そして、受信部40は、データCを受信すると、回線出力部50にデータDを送信する。受信部40としては、EthernetのPHY、すなわち、OSI階層モデルにおける最下層の物理層(physical layer)を想定している。そのため、データDのペイロード部分は、データCのペイロード部分と同一であるが、データDには、データ回線上の制御信号が付加されている。 The receiving unit 40 receives data C from the control unit 20. Then, when the receiving unit 40 receives data C, it transmits data D to the line output unit 50. The receiving unit 40 is assumed to be an Ethernet PHY, i.e., the lowest physical layer in the OSI hierarchical model. Therefore, the payload portion of data D is the same as the payload portion of data C, but a control signal on the data line is added to data D.

また、受信部40は、タイミング信号を生成する。受信部40は、生成したタイミング信号を制御部20へ送信する。 The receiving unit 40 also generates a timing signal. The receiving unit 40 transmits the generated timing signal to the control unit 20.

ここで、受信部40の具体的な構成について説明する。図3は、本開示の一実施形態による受信部40の構成の一例を示す図である。受信部40は、図3に示すように、高速シリアル受信部401、送信バッファ部402、回線データ送信部403、高速シリアルクロック抽出部404、回線速度設定部405、送信タイミング送信部406、送信タイミング生成部407(第3処理手段の一例、第4処理手段の一例)、および回線クロック生成部408を備える。 Here, a specific configuration of the receiving unit 40 will be described. FIG. 3 is a diagram showing an example of the configuration of the receiving unit 40 according to an embodiment of the present disclosure. As shown in FIG. 3, the receiving unit 40 includes a high-speed serial receiving unit 401, a transmission buffer unit 402, a line data transmitting unit 403, a high-speed serial clock extracting unit 404, a line speed setting unit 405, a transmission timing transmitting unit 406, a transmission timing generating unit 407 (an example of a third processing means, an example of a fourth processing means), and a line clock generating unit 408.

高速シリアル受信部401は、高速シリアル送信部203からデータCを受信する。高速シリアル受信部401は、受信したデータCを送信バッファ部402および高速シリアルクロック抽出部404へ送信する。 The high-speed serial receiving unit 401 receives data C from the high-speed serial transmitting unit 203. The high-speed serial receiving unit 401 transmits the received data C to the transmitting buffer unit 402 and the high-speed serial clock extraction unit 404.

送信バッファ部402は、高速シリアル受信部401からデータCを受信する。送信バッファ部402は、受信したデータCを一旦バッファリングする。そして、送信バッファ部402は、バッファリングしたデータCを回線データ送信部403へ送信する。 The transmission buffer unit 402 receives data C from the high-speed serial receiving unit 401. The transmission buffer unit 402 temporarily buffers the received data C. The transmission buffer unit 402 then transmits the buffered data C to the line data transmitting unit 403.

また、送信バッファ部402は、送信バッファ部402の内部のバッファの状態を示す状態信号を送信タイミング生成部407へ送信する。 In addition, the transmission buffer unit 402 transmits a status signal indicating the status of the buffer inside the transmission buffer unit 402 to the transmission timing generation unit 407.

回線データ送信部403は、回線クロック生成部408から回線クロックを受信する。回線クロックは、回線データ送信部403からデータDを出力するタイミングを生成するために使用されるクロック信号である。 The line data transmission unit 403 receives the line clock from the line clock generation unit 408. The line clock is a clock signal used to generate the timing for outputting data D from the line data transmission unit 403.

また、回線データ送信部403は、送信バッファ部402からデータCを受信する。そして、回線データ送信部403は、データCを受信すると、回線クロックのタイミングに応じて、回線出力部50にデータDを送信する。 The line data transmission unit 403 also receives data C from the transmission buffer unit 402. Then, upon receiving data C, the line data transmission unit 403 transmits data D to the line output unit 50 in accordance with the timing of the line clock.

高速シリアルクロック抽出部404は、高速シリアル受信部401からデータCを受信する。高速シリアルクロック抽出部404は、受信したデータCから高速シリアルクロックを抽出する。高速シリアルクロック抽出部404は、抽出した高速シリアルクロックを送信タイミング生成部407へ送信する。 The high-speed serial clock extraction unit 404 receives data C from the high-speed serial receiving unit 401. The high-speed serial clock extraction unit 404 extracts the high-speed serial clock from the received data C. The high-speed serial clock extraction unit 404 transmits the extracted high-speed serial clock to the transmission timing generation unit 407.

回線速度設定部405は、回線速度の情報を回線速度設定部405自身に設定する。回線速度の情報は、回線速度をいくつ(例えば、10M、100M、1Gなど)に設定するかという情報である。回線速度設定部405は、設定した回線速度の情報を回線クロック生成部408へ送信する。 The line speed setting unit 405 sets the line speed information in the line speed setting unit 405 itself. The line speed information is information on what line speed to set (for example, 10M, 100M, 1G, etc.). The line speed setting unit 405 transmits the set line speed information to the line clock generation unit 408.

送信タイミング送信部406は、送信タイミング生成部407からタイミング信号を受信する。送信タイミング送信部406は、受信したタイミング信号を制御部20へ送信する。 The transmission timing transmission unit 406 receives a timing signal from the transmission timing generation unit 407. The transmission timing transmission unit 406 transmits the received timing signal to the control unit 20.

送信タイミング生成部407は、送信バッファ部402から状態信号を受信する。また、送信タイミング生成部407は、高速シリアルクロック抽出部404から高速シリアルクロックを受信する。また、送信タイミング生成部407は、回線クロック生成部408から回線クロックを受信する。そして、送信タイミング生成部407は、受信した状態信号、高速シリアルクロック、および回線クロックに基づいて、タイミング信号を生成する。送信タイミング生成部407によるこの生成の詳細については、後述する。送信タイミング生成部407は、生成したタイミング信号を送信タイミング送信部406へ送信する。 The transmission timing generation unit 407 receives a status signal from the transmission buffer unit 402. The transmission timing generation unit 407 also receives a high-speed serial clock from the high-speed serial clock extraction unit 404. The transmission timing generation unit 407 also receives a line clock from the line clock generation unit 408. The transmission timing generation unit 407 then generates a timing signal based on the received status signal, high-speed serial clock, and line clock. Details of this generation by the transmission timing generation unit 407 will be described later. The transmission timing generation unit 407 transmits the generated timing signal to the transmission timing transmission unit 406.

回線クロック生成部408は、回線速度設定部405から回線速度の情報を受信する。そして、回線クロック生成部408は、回線速度の情報を受信すると、外部から基準クロックを受信し、その基準クロック逓倍することにより回線クロックを生成する。回線クロック生成部408は、生成した回線クロックを回線データ送信部403および送信タイミング生成部407へ送信する。以上が受信部40の具体的な構成である。 The line clock generating unit 408 receives line speed information from the line speed setting unit 405. Then, when the line clock generating unit 408 receives the line speed information, it receives a reference clock from the outside and generates a line clock by multiplying the reference clock. The line clock generating unit 408 transmits the generated line clock to the line data transmitting unit 403 and the transmission timing generating unit 407. The above is the specific configuration of the receiving unit 40.

回線出力部50は、受信部40からデータDを受信する。回線出力部50は、受信したデータDを通信回線へ出力する。 The line output unit 50 receives data D from the receiving unit 40. The line output unit 50 outputs the received data D to the communication line.

図4は、本開示の一実施形態による通信装置1における信号の一例を示す図である。図5は、本開示の一実施形態による通信装置1の処理フローの第1の例を示す図である。図6は、本開示の一実施形態による通信装置1の処理フローの第2の例を示す図である。まず、通信装置1が行う処理として、送信タイミング生成部407が行うタイミング信号を生成する処理について、図4および図5を参照して説明する。図4に示す信号は、イメージ図であり、遅延などを考慮した厳密な信号ではない。また、図4は、送信ビット数が2ビットであり、回線クロックが高速シリアルクロックの10分の1の速度(波長が10倍)である場合の信号の例である。なお、高速シリアルクロック抽出部404は、データCから抽出した高速シリアルクロックを送信タイミング生成部407へ送信しているものとする。また、回線クロック生成部408は、回線速度設定部405から受信した回線速度を回線データ送信部403および送信タイミング生成部407へ送信しているものとする。 Figure 4 is a diagram showing an example of a signal in the communication device 1 according to an embodiment of the present disclosure. Figure 5 is a diagram showing a first example of a processing flow of the communication device 1 according to an embodiment of the present disclosure. Figure 6 is a diagram showing a second example of a processing flow of the communication device 1 according to an embodiment of the present disclosure. First, as a process performed by the communication device 1, the process of generating a timing signal performed by the transmission timing generation unit 407 will be described with reference to Figures 4 and 5. The signal shown in Figure 4 is an image diagram and is not a strict signal taking into account delays and the like. Also, Figure 4 is an example of a signal when the number of transmission bits is 2 bits and the line clock is one-tenth the speed (10 times the wavelength) of the high-speed serial clock. Note that the high-speed serial clock extraction unit 404 is assumed to transmit the high-speed serial clock extracted from data C to the transmission timing generation unit 407. Also, the line clock generation unit 408 is assumed to transmit the line speed received from the line speed setting unit 405 to the line data transmission unit 403 and the transmission timing generation unit 407.

受信部40は、タイミング信号を以下のように生成する。送信タイミング生成部407は、送信ビット数を決定する(ステップS1)。この送信ビット数は、予め送信タイミング生成部407に固定値として設定されるものであってよい。また、この送信ビット数は、後述するように、動的に変化するものであってもよい。 The receiving unit 40 generates a timing signal as follows: The transmission timing generating unit 407 determines the number of transmission bits (step S1). This number of transmission bits may be set in advance as a fixed value in the transmission timing generating unit 407. In addition, this number of transmission bits may be dynamically changed, as described later.

送信タイミング生成部407は、回線クロック生成部408から受信する回線クロックを送信ビット数ごとに分断する(ステップS2)。そして、送信タイミング生成部407は、高速シリアルクロック抽出部404から受信する高速シリアルクロック上に、分断した回線クロックのビット数と同じビット数を割り当てる(ステップS3)。 The transmission timing generation unit 407 divides the line clock received from the line clock generation unit 408 into transmission bit numbers (step S2). The transmission timing generation unit 407 then assigns the same number of bits as the number of bits of the divided line clock to the high-speed serial clock received from the high-speed serial clock extraction unit 404 (step S3).

送信タイミング生成部407は、分断した回線クロックのビット数と同じビット数を割り当てた高速シリアルクロックの部分を、データを送信可能な期間とし、その期間においてデータを送信可能にする信号を生成する(ステップS4)。また、送信タイミング生成部407は、分断した次の回線クロックに対応するビット数が割り当てられるまでの高速シリアルクロック上の部分を、データを送信不可能な期間とし、その期間においてデータを送信不可能にする信号を生成する(ステップS5)。ステップS4およびステップS5の処理により生成される信号が適正化されたタイミングを示すタイミング信号である。 The transmission timing generation unit 407 sets the portion of the high-speed serial clock to which the same number of bits as the number of bits of the divided line clock is assigned as a period during which data can be transmitted, and generates a signal that enables data transmission during that period (step S4). The transmission timing generation unit 407 also sets the portion of the high-speed serial clock until the number of bits corresponding to the next divided line clock is assigned as a period during which data cannot be transmitted, and generates a signal that disables data transmission during that period (step S5). The signal generated by the processing of steps S4 and S5 is a timing signal that indicates the optimized timing.

次に、通信装置1が行う処理として、制御用バッファ送受信部202がデータCを送信する処理について、図6を参照して説明する。なお、図6に示す処理は、図5に示した処理に続けて行われる処理である。 Next, the process performed by the communication device 1, in which the control buffer transceiver 202 transmits data C, will be described with reference to FIG. 6. Note that the process shown in FIG. 6 is a process that is performed following the process shown in FIG. 5.

制御部20は、データCを以下のように受信部40に送信する。制御用バッファ送受信部202は、送信タイミング受信部205からタイミング信号を受信する。制御用バッファ送受信部202は、受信したタイミング信号に基づいて、制御用バッファ部30から送信に必要な分のデータBを引き取る(ステップS11)。例えば、制御用バッファ送受信部202は、送信タイミング受信部205から受信したタイミング信号から必要なデータ送信量が分かる。制御用バッファ送受信部202は、そのデータを都度制御用バッファ部30から能動的に得ればよい。その後、制御用バッファ送受信部202は、タイミング信号に合わせてデータBを高速シリアル送信部203へ送信する。例えば、制御用バッファ送受信部202は、図4における「送信可」の部分に送信データ(すなわちデータB)を入れる。そして、制御用バッファ送受信部202は、その送信データを高速シリアル送信部203へ送信する。 The control unit 20 transmits data C to the receiving unit 40 as follows. The control buffer transmitting/receiving unit 202 receives a timing signal from the transmission timing receiving unit 205. Based on the received timing signal, the control buffer transmitting/receiving unit 202 receives the amount of data B required for transmission from the control buffer unit 30 (step S11). For example, the control buffer transmitting/receiving unit 202 knows the amount of data required for transmission from the timing signal received from the transmission timing receiving unit 205. The control buffer transmitting/receiving unit 202 can actively obtain the data from the control buffer unit 30 each time. After that, the control buffer transmitting/receiving unit 202 transmits data B to the high-speed serial transmitting unit 203 in accordance with the timing signal. For example, the control buffer transmitting/receiving unit 202 puts the transmission data (i.e., data B) in the "transmittable" portion in FIG. 4. Then, the control buffer transmitting/receiving unit 202 transmits the transmission data to the high-speed serial transmitting unit 203.

高速シリアル送信部203は、制御用バッファ送受信部202からデータBを受信する。高速シリアル送信部203は、送信可能なタイミングのみに予め決められたプリアンブルデータを受信部40に送信する(ステップS12)。制御用バッファ送受信部202および高速シリアル送信部203は、バッファを備えている。高速シリアル送信部203は、そのバッファを用いて、データBを受信したタイミングを送信可能なタイミングとすればよい。そして、高速シリアル送信部203は、受信したデータBをデータCとして受信部40に送信する(ステップS13)。なお、ここでのプリアンブルデータは一般的なものである。すなわち、通信線には必ずしも常に有効データが流れているわけではなく、有効データが存在しない間は空データが流れている。有効データの直前にプリアンブルデータを流すことにより有効または空の判別が可能となる。 The high-speed serial transmission unit 203 receives data B from the control buffer transmission/reception unit 202. The high-speed serial transmission unit 203 transmits predetermined preamble data to the reception unit 40 only at the timing when it is possible to transmit (step S12). The control buffer transmission/reception unit 202 and the high-speed serial transmission unit 203 are provided with a buffer. The high-speed serial transmission unit 203 can use the buffer to set the timing when it receives data B as the timing when it is possible to transmit. The high-speed serial transmission unit 203 then transmits the received data B as data C to the reception unit 40 (step S13). Note that the preamble data used here is general. In other words, valid data is not always flowing on the communication line, and null data flows while valid data is not present. By sending preamble data immediately before valid data, it is possible to determine whether the data is valid or null.

高速シリアル受信部401は、高速シリアル送信部203からプリアンブルデータを受信する。そして、高速シリアル受信部401は、高速シリアル送信部203からデータCを受信する。高速シリアル受信部401は、プリアンブルデータの受信により、送信可能なタイミングを知ることができる。その結果(つまり、送信部20がステップS11からステップS13までの処理を行うことにより)、高速シリアル受信部401は、データCが送信可能なタイミングに送信されたデータであるか否かを判定することができる。 The high-speed serial receiving unit 401 receives preamble data from the high-speed serial transmitting unit 203. The high-speed serial receiving unit 401 then receives data C from the high-speed serial transmitting unit 203. By receiving the preamble data, the high-speed serial receiving unit 401 can know the timing at which transmission is possible. As a result (i.e., by the transmitting unit 20 performing the processes from step S11 to step S13), the high-speed serial receiving unit 401 can determine whether data C was transmitted at a timing at which it is possible to transmit.

図7は、本開示の一実施形態による通信装置1の処理フローの第3の例を示す図である。ここで、送信ビット数が動的に変化する例として、通信装置1が送信バッファの状態に応じて送信ビット数を決定する処理について、図7を参照して説明する。 Figure 7 is a diagram illustrating a third example of a processing flow of a communication device 1 according to an embodiment of the present disclosure. Here, as an example in which the number of transmission bits changes dynamically, a process in which the communication device 1 determines the number of transmission bits depending on the state of the transmission buffer will be described with reference to Figure 7.

送信バッファ部402は、送信バッファ部402の内部の状態を常に監視する。具体的には、送信バッファ部402は、内部のバッファに蓄積されているデータ量が予め設定された第1しきい値以上であるか否かを判定する(ステップS21)。送信バッファ部402は、データ量が第1しきい値以上であると判定した場合(ステップS21においてYES)、送信ビット数を所定のビット数だけ減らす(ステップS22)。そして、送信バッファ部402は、ステップS21の処理に戻す。また、送信バッファ部402は、データ量が第1しきい値未満であると判定した場合(ステップS21においてNO)、データ量が第1しきい値よりも小さな値を有する第2しきい値以上であるか否かを判定する(ステップS23)。 The transmission buffer unit 402 constantly monitors the internal state of the transmission buffer unit 402. Specifically, the transmission buffer unit 402 determines whether the amount of data stored in the internal buffer is equal to or greater than a first threshold value set in advance (step S21). If the transmission buffer unit 402 determines that the amount of data is equal to or greater than the first threshold value (YES in step S21), it reduces the number of transmission bits by a predetermined number of bits (step S22). Then, the transmission buffer unit 402 returns to the process of step S21. Furthermore, if the transmission buffer unit 402 determines that the amount of data is less than the first threshold value (NO in step S21), it determines whether the amount of data is equal to or greater than a second threshold value that is smaller than the first threshold value (step S23).

送信バッファ部402は、データ量が第2しきい値以上であると判定した場合(ステップS23においてYES)、ステップS21の処理に戻す。また、送信バッファ部402は、データ量が第2しきい値未満であると判定した場合(ステップS23においてNO)、送信ビット数を所定のビット数だけ増やす(ステップS24)。そして、送信バッファ部402は、ステップS23の処理に戻す。このステップS24の処理における所定のビット数は、ステップS22の処理における所定のビット数と同一であっても、異なっていてもよい。 If the transmission buffer unit 402 determines that the amount of data is equal to or greater than the second threshold (YES in step S23), it returns to the process of step S21. If the transmission buffer unit 402 determines that the amount of data is less than the second threshold (NO in step S23), it increases the number of transmission bits by a predetermined number of bits (step S24). Then, the transmission buffer unit 402 returns to the process of step S23. The predetermined number of bits in the process of step S24 may be the same as or different from the predetermined number of bits in the process of step S22.

上述のステップS21からステップS24までの処理により、送信バッファ部402の内部のバッファに蓄積されているデータ量は、第1しきい値未満であり、第2しきい値以上である適切なデータ量の範囲内に調整される。その結果、制御用バッファ部30におけるオーバーフローを抑制することができ、データDの送信レートを安定的かつ低遅延にすることができる。なお、送信バッファ部402の内部のバッファに蓄積されているデータ量は、バッファの入出力レート差とバッファへ一度に入力されるデータ量とによって決定される。バッファの入出力レート差とは、送信バッファ部402の内部のバッファに入力するレートとそのバッファから出力するレートの差のことである。バッファに入力するレートがバッファから出力するレートよりも大きい場合、オーバーフローしてしまう。ただし、本開示の一実施形態では、図4から図6を用いて説明した通信装置1が行う処理により、バッファの入出力レート差はほぼなくなる。そのため、上記ステップS21からステップS24の処理では、バッファへ一度に入力される量を抑制している。 By the above-mentioned processing from step S21 to step S24, the amount of data stored in the buffer inside the transmission buffer unit 402 is adjusted to within an appropriate data amount range that is less than the first threshold and equal to or greater than the second threshold. As a result, overflow in the control buffer unit 30 can be suppressed, and the transmission rate of data D can be made stable and low-delay. The amount of data stored in the buffer inside the transmission buffer unit 402 is determined by the input/output rate difference of the buffer and the amount of data input to the buffer at one time. The input/output rate difference of the buffer is the difference between the rate of input to the buffer inside the transmission buffer unit 402 and the rate of output from the buffer. If the rate of input to the buffer is greater than the rate of output from the buffer, overflow will occur. However, in one embodiment of the present disclosure, the input/output rate difference of the buffer is almost eliminated by the processing performed by the communication device 1 described using FIG. 4 to FIG. 6. Therefore, the amount of data input to the buffer at one time is suppressed in the processing from step S21 to step S24.

図8は、本開示の一実施形態による通信装置1の処理フローの第4の例を示す図である。次に、制御用バッファがオーバーフローする前にデータAの送信を制御する制御用バッファ部30が行う処理について、図8を参照して説明する。 Figure 8 is a diagram illustrating a fourth example of a processing flow of a communication device 1 according to an embodiment of the present disclosure. Next, the processing performed by the control buffer unit 30 that controls the transmission of data A before the control buffer overflows will be described with reference to Figure 8.

制御用バッファ部30は、制御用バッファ部30の内部の状態を常に監視する。具体的には、制御用バッファ部30は、内部のバッファに蓄積されているデータ量が予め設定された第3しきい値以上であるか否かを判定する(ステップS31)。制御用バッファ部30は、データ量が第3しきい値以上であると判定した場合(ステップS31においてYES)、送信部10にフロー制御信号を送信する(ステップS32)。 The control buffer unit 30 constantly monitors the internal state of the control buffer unit 30. Specifically, the control buffer unit 30 determines whether the amount of data stored in the internal buffer is equal to or greater than a preset third threshold value (step S31). If the control buffer unit 30 determines that the amount of data is equal to or greater than the third threshold value (YES in step S31), it transmits a flow control signal to the transmission unit 10 (step S32).

送信部10は、制御用バッファ部30からフロー制御信号を受信する。送信部10は、受信したフロー制御信号に応じて、データAの送信レートを低下させたり、一時的にデータAの送信を停止させる(ステップS33)。なお、通信装置1としてレート低下と停止についての明確な定義はない。ここでは、送信部10は、フロー制御信号が有効になっている間、データAの送信を停止する。フロー制御信号が頻繁に切り替われば、送信部10による送信の停止は、一時的なものとなる。そのため、使用者から見ると送信レートが低下しているように見える。また、フロー制御信号が暫く有効になっていれば、使用者から見ると送信の停止が継続しているように見える。そして、送信部10は、ステップS31の処理に戻す。 The transmitting unit 10 receives a flow control signal from the control buffer unit 30. Depending on the received flow control signal, the transmitting unit 10 reduces the transmission rate of data A or temporarily stops the transmission of data A (step S33). Note that there is no clear definition of rate reduction and stop in the communication device 1. Here, the transmitting unit 10 stops the transmission of data A while the flow control signal is valid. If the flow control signal is frequently switched, the stop of transmission by the transmitting unit 10 will be temporary. Therefore, from the user's perspective, it appears that the transmission rate is decreasing. Also, if the flow control signal remains valid for a while, it appears that the stop of transmission continues from the user's perspective. Then, the transmitting unit 10 returns to the process of step S31.

また、制御用バッファ部30は、データ量が第3しきい値未満であると判定した場合(ステップS31においてNO)、送信部10へのフロー制御信号の送信を停止する(ステップS34)。 If the control buffer unit 30 determines that the amount of data is less than the third threshold (NO in step S31), it stops sending the flow control signal to the transmission unit 10 (step S34).

送信部10は、制御用バッファ部30からフロー制御信号を受信しない場合、データAの送信レートを所定のレート(元のレート)としたり、データAの送信を開始させる(ステップS35)。そして、送信部10は、ステップS31の処理に戻す。 If the transmission unit 10 does not receive a flow control signal from the control buffer unit 30, it sets the transmission rate of data A to a predetermined rate (original rate) and starts transmitting data A (step S35). Then, the transmission unit 10 returns to the process of step S31.

上述のステップS31からステップS35までの処理により、制御用バッファ部30の内部のバッファに蓄積されているデータ量は、第3しきい値以上の場合にフロー制御により調整され、第3しきい値未満である場合に所定のレート(元のレート)に調整される。その結果、制御用バッファ部30におけるオーバーフローを抑制することができ、データDの送信レートを安定的かつ低遅延にすることができる。 By the above-mentioned processes from step S31 to step S35, the amount of data stored in the internal buffer of the control buffer unit 30 is adjusted by flow control when it is equal to or greater than the third threshold, and is adjusted to a predetermined rate (original rate) when it is less than the third threshold. As a result, overflow in the control buffer unit 30 can be suppressed, and the transmission rate of data D can be made stable and low-latency.

以上、本開示の一実施形態による通信装置1について説明した。通信装置1において、制御部20(第1処理手段の一例)は、バッファ状態信号により示される制御用バッファ部30の内部の状態が所定の状態(例えば、制御用バッファ部30内部のバッファ(制御用バッファの一例)が所定のしきい値を超えている状態)となっていると判定した場合、オーバーフローしそう(オーバーフローする前の一例)であると判定し、送信部10にフロー制御信号を送信する(フロー制御の一例)。つまり、制御部20は、制御用バッファがオーバーフローする前に、フロー制御により回線側へ送信するデータを制御する。この通信装置1により、シリアル通信を行う通信装置から回線側へのデータの通信速度の低下を抑制することができる。 The above describes the communication device 1 according to an embodiment of the present disclosure. In the communication device 1, when the control unit 20 (an example of a first processing means) determines that the internal state of the control buffer unit 30 indicated by the buffer state signal is in a predetermined state (for example, a state in which the buffer (an example of a control buffer) inside the control buffer unit 30 exceeds a predetermined threshold), it determines that overflow is imminent (an example of a state before overflow occurs) and transmits a flow control signal to the transmission unit 10 (an example of flow control). In other words, the control unit 20 controls the data to be transmitted to the line side by flow control before the control buffer overflows. This communication device 1 makes it possible to suppress a decrease in the communication speed of data from a communication device performing serial communication to the line side.

なお、本開示の別の実施形態による通信装置1が備える制御部20および受信部40は、図2に示した制御部20および図3に示した受信部40に限定されない。図9は、本開示の別の実施形態による通信装置1が備える制御部20の構成の一例を示す図である。図10は、本開示の別の実施形態による通信装置1が備える受信部40の構成の一例を示す図である。 Note that the control unit 20 and the receiving unit 40 provided in the communication device 1 according to another embodiment of the present disclosure are not limited to the control unit 20 shown in FIG. 2 and the receiving unit 40 shown in FIG. 3. FIG. 9 is a diagram showing an example of the configuration of the control unit 20 provided in the communication device 1 according to another embodiment of the present disclosure. FIG. 10 is a diagram showing an example of the configuration of the receiving unit 40 provided in the communication device 1 according to another embodiment of the present disclosure.

本開示の別の実施形態において、制御部20は、図9に示すように、高速シリアル受信部201、制御用バッファ送受信部202、高速シリアル送信部203、フロー制御送信部204、高速シリアルクロック抽出部206、および送信タイミング生成部207を備える。受信部40は、図10に示すように、高速シリアル受信部401、送信バッファ部402、回線データ送信部403、回線速度設定部405、および回線クロック生成部408を備える。つまり、本開示の別の実施形態による通信装置1では、本開示の一実施形態による受信部40における高速シリアルクロック抽出部404、送信タイミング送信部406、および送信タイミング生成部407が行う処理を、制御部20が備える高速シリアルクロック抽出部206および送信タイミング生成部207に実行させるものであってもよい。なお、この場合、送信バッファ部402の状態を通知する機能を削除するか、または回線クロック以外の送信バッファ部402から送信タイミング生成部207への信号線を追加して状態信号を送信タイミング生成部207に通知する必要がある。この本開示の別の実施形態による通信装置1により、本開示の一実施形態による通信装置1と同様に、シリアル通信を行う通信装置から回線側へのデータの通信速度の低下を抑制することが可能となる。 In another embodiment of the present disclosure, the control unit 20 includes a high-speed serial receiver 201, a control buffer transceiver 202, a high-speed serial transmitter 203, a flow control transmitter 204, a high-speed serial clock extractor 206, and a transmission timing generator 207, as shown in FIG. 9. The receiver 40 includes a high-speed serial receiver 401, a transmission buffer 402, a line data transmitter 403, a line speed setting unit 405, and a line clock generator 408, as shown in FIG. 10. In other words, in the communication device 1 according to another embodiment of the present disclosure, the processing performed by the high-speed serial clock extractor 404, the transmission timing transmitter 406, and the transmission timing generator 407 in the receiver 40 according to one embodiment of the present disclosure may be performed by the high-speed serial clock extractor 206 and the transmission timing generator 207 provided in the control unit 20. In this case, it is necessary to either remove the function of notifying the state of the transmission buffer unit 402, or add a signal line from the transmission buffer unit 402 to the transmission timing generation unit 207 other than the line clock to notify the transmission timing generation unit 207 of the state signal. The communication device 1 according to another embodiment of this disclosure makes it possible to suppress a decrease in the data communication speed from the communication device performing serial communication to the line side, similar to the communication device 1 according to one embodiment of this disclosure.

なお、本開示の別の実施形態による通信装置1の構成は、図1に示した本開示の一実施形態による通信装置1の構成と異なるものであってもよい。図11は、本開示の別の実施形態による送信部10および制御部20の構成の一例を示す図である。送信部10は、図11に示すように、高速シリアル制御部/送信部101を備える。制御部20は、図11に示すように、高速シリアル受信部201、制御用バッファ送受信部202、高速シリアル送信部203、および送信タイミング受信部205を備える。本開示の別の実施形態による通信装置1では、受信部40から制御部20へ送信されるタイミング信号を、送信部10にも送信することにより、制御部20内で行われる処理と同様の処理を高速シリアル制御部/送信部101において実現する。 Note that the configuration of the communication device 1 according to another embodiment of the present disclosure may be different from the configuration of the communication device 1 according to the embodiment of the present disclosure shown in FIG. 1. FIG. 11 is a diagram showing an example of the configuration of the transmission unit 10 and the control unit 20 according to another embodiment of the present disclosure. As shown in FIG. 11, the transmission unit 10 includes a high-speed serial control unit/transmission unit 101. As shown in FIG. 11, the control unit 20 includes a high-speed serial reception unit 201, a control buffer transmission/reception unit 202, a high-speed serial transmission unit 203, and a transmission timing reception unit 205. In the communication device 1 according to another embodiment of the present disclosure, a timing signal transmitted from the reception unit 40 to the control unit 20 is also transmitted to the transmission unit 10, thereby realizing a process similar to the process performed in the control unit 20 in the high-speed serial control unit/transmission unit 101.

制御部20は、データCを以下のように受信部40に送信する。制御用バッファ送受信部202は、送信タイミング受信部205からタイミング信号を受信する。制御用バッファ送受信部202は、受信したタイミング信号に基づいて、高速シリアル制御部/送信部101の内部のバッファから送信に必要な分のデータBを引き取る。例えば、制御用バッファ送受信部202は、送信タイミング受信部205から受信したタイミング信号から必要なデータ送信量が分かる。制御用バッファ送受信部202は、そのデータを都度制御用バッファ部30から能動的に得ればよい。その後、制御用バッファ送受信部202は、タイミング信号に合わせてデータBを高速シリアル送信部203へ送信する。例えば、制御用バッファ送受信部202は、図4における「送信可」の部分に送信データ(すなわちデータB)を入れる。そして、制御用バッファ送受信部202は、その送信データを高速シリアル受信部201へ送信する。 The control unit 20 transmits data C to the receiving unit 40 as follows. The control buffer transmitting/receiving unit 202 receives a timing signal from the transmission timing receiving unit 205. Based on the received timing signal, the control buffer transmitting/receiving unit 202 retrieves the amount of data B required for transmission from the internal buffer of the high-speed serial control unit/transmitting unit 101. For example, the control buffer transmitting/receiving unit 202 knows the required amount of data transmission from the timing signal received from the transmission timing receiving unit 205. The control buffer transmitting/receiving unit 202 can actively obtain the data from the control buffer unit 30 each time. After that, the control buffer transmitting/receiving unit 202 transmits data B to the high-speed serial transmitting unit 203 in accordance with the timing signal. For example, the control buffer transmitting/receiving unit 202 puts the transmission data (i.e., data B) in the "transmittable" portion in FIG. 4. Then, the control buffer transmitting/receiving unit 202 transmits the transmission data to the high-speed serial receiving unit 201.

この本開示の別の実施形態による通信装置1により、本開示の一実施形態による通信装置1と同様に、シリアル通信を行う通信装置から回線側へのデータの通信速度の低下を抑制することが可能となる。 The communication device 1 according to another embodiment of the present disclosure makes it possible to suppress a decrease in the data communication speed from the communication device performing serial communication to the line side, similar to the communication device 1 according to one embodiment of the present disclosure.

図12は、本開示の実施形態による通信装置1の最小構成を示す図である。通信装置1は、第1処理手段100を備える。第1処理手段100は、制御用バッファがオーバーフローする前に、フロー制御により回線側へ送信するデータを制御する。第1処理手段100は、例えば、図1に例示されている制御部20が有する機能を用いて実現することができる。 FIG. 12 is a diagram showing a minimum configuration of a communication device 1 according to an embodiment of the present disclosure. The communication device 1 includes a first processing means 100. The first processing means 100 controls data to be sent to the line side by flow control before the control buffer overflows. The first processing means 100 can be realized, for example, by using the functions of the control unit 20 illustrated in FIG. 1.

図13は、本開示の実施形態による最小構成の通信装置1の処理フローの一例を示す図である。次に、本開示の実施形態による最小構成の通信装置1の処理について図13を参照して説明する。 FIG. 13 is a diagram illustrating an example of a processing flow of a communication device 1 having a minimum configuration according to an embodiment of the present disclosure. Next, the processing of a communication device 1 having a minimum configuration according to an embodiment of the present disclosure will be described with reference to FIG. 13.

通信装置1において、第1処理手段100は、制御用バッファがオーバーフローする前に、フロー制御により回線側へ送信するデータを制御する(ステップS101)。 In the communication device 1, the first processing means 100 controls the data to be sent to the line side by flow control before the control buffer overflows (step S101).

以上、本開示の実施形態による最小構成の通信装置1について説明した。この通信装置1により、シリアル通信を行う通信装置から回線側へのデータの通信速度の低下を抑制することができる。 The above describes a communication device 1 with a minimum configuration according to an embodiment of the present disclosure. This communication device 1 can suppress a decrease in the data communication speed from a communication device performing serial communication to the line side.

なお、本開示の実施形態における処理は、適切な処理が行われる範囲において、処理の順番が入れ替わってもよい。 The order of the processes in the embodiments of the present disclosure may be changed as long as appropriate processing is performed.

本開示の実施形態について説明したが、上述の通信装置1、送信部10、制御部20、制御用バッファ部30、受信部40、回線出力部50、その他の制御装置は内部に、コンピュータシステムを有していてもよい。そして、上述した処理の過程は、プログラムの形式でコンピュータ読み取り可能な記録媒体に記憶されており、このプログラムをコンピュータが読み出して実行することによって、上記処理が行われる。コンピュータの具体例を以下に示す。 Although an embodiment of the present disclosure has been described, the above-mentioned communication device 1, transmitting unit 10, control unit 20, control buffer unit 30, receiving unit 40, line output unit 50, and other control devices may have a computer system inside. The above-mentioned process steps are stored in the form of a program on a computer-readable recording medium, and the above-mentioned process is performed by the computer reading and executing this program. Specific examples of computers are shown below.

図14は、少なくとも1つの実施形態に係るコンピュータの構成を示す概略ブロック図である。コンピュータ5は、図14に示すように、CPU6、メインメモリ7、ストレージ8、インターフェース9を備える。例えば、上述の通信装置1、送信部10、制御部20、制御用バッファ部30、受信部40、回線出力部50、その他の制御装置のそれぞれは、コンピュータ5に実装される。そして、上述した各処理部の動作は、プログラムの形式でストレージ8に記憶されている。CPU6は、プログラムをストレージ8から読み出してメインメモリ7に展開し、当該プログラムに従って上記処理を実行する。また、CPU6は、プログラムに従って、上述した各記憶部に対応する記憶領域をメインメモリ7に確保する。 Figure 14 is a schematic block diagram showing the configuration of a computer according to at least one embodiment. As shown in Figure 14, the computer 5 includes a CPU 6, a main memory 7, a storage 8, and an interface 9. For example, the communication device 1, the transmission unit 10, the control unit 20, the control buffer unit 30, the reception unit 40, the line output unit 50, and other control devices are each implemented in the computer 5. The operation of each of the above-mentioned processing units is stored in the storage 8 in the form of a program. The CPU 6 reads the program from the storage 8 and expands it in the main memory 7, and executes the above-mentioned processing according to the program. The CPU 6 also secures storage areas in the main memory 7 corresponding to each of the above-mentioned storage units according to the program.

ストレージ8の例としては、HDD(Hard Disk Drive)、SSD(Solid State Drive)、磁気ディスク、光磁気ディスク、CD-ROM(Compact Disc Read Only Memory)、DVD-ROM(Digital Versatile Disc Read Only Memory)、半導体メモリ等が挙げられる。ストレージ8は、コンピュータ5のバスに直接接続された内部メディアであってもよいし、インターフェース9または通信回線を介してコンピュータ5に接続される外部メディアであってもよい。また、このプログラムが通信回線によってコンピュータ5に配信される場合、配信を受けたコンピュータ5が当該プログラムをメインメモリ7に展開し、上記処理を実行してもよい。少なくとも1つの実施形態において、ストレージ8は、一時的でない有形の記憶媒体である。 Examples of storage 8 include HDD (Hard Disk Drive), SSD (Solid State Drive), magnetic disk, magneto-optical disk, CD-ROM (Compact Disc Read Only Memory), DVD-ROM (Digital Versatile Disc Read Only Memory), and semiconductor memory. Storage 8 may be an internal medium directly connected to the bus of computer 5, or an external medium connected to computer 5 via interface 9 or a communication line. In addition, when this program is distributed to computer 5 via a communication line, computer 5 that receives the program may expand the program in main memory 7 and execute the above-mentioned process. In at least one embodiment, storage 8 is a non-transitory tangible storage medium.

また、上記プログラムは、前述した機能の一部を実現してもよい。さらに、上記プログラムは、前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるファイル、いわゆる差分ファイル(差分プログラム)であってもよい。 The program may also realize some of the functions described above. Furthermore, the program may be a file that can realize the functions described above in combination with a program already recorded in the computer system, a so-called differential file (differential program).

本開示のいくつかの実施形態を説明したが、これらの実施形態は、例であり、開示の範囲を限定しない。これらの実施形態は、開示の要旨を逸脱しない範囲で、種々の追加、省略、置き換え、変更を行ってよい。 Although several embodiments of the present disclosure have been described, these embodiments are merely examples and do not limit the scope of the disclosure. Various additions, omissions, substitutions, and modifications may be made to these embodiments without departing from the spirit and scope of the disclosure.

なお、上記の実施形態の一部又は全部は、以下の付記のようにも記載されうるが、以下には限られない。 In addition, some or all of the above embodiments can be described as follows, but are not limited to the following:

(付記1)
制御用バッファがオーバーフローする前に、フロー制御により回線側へ送信するデータを制御する第1処理手段、
を備える通信装置。
(Appendix 1)
a first processing means for controlling data to be transmitted to a line side by flow control before the control buffer overflows;
A communication device comprising:

(付記2)
前記データの送信タイミングを示すタイミング信号に基づいて、前記制御用バッファにおけるデータを、高速シリアル通信を行う受信部に送信する第2処理手段、
を備える付記1に記載の通信装置。
(Appendix 2)
a second processing means for transmitting the data in the control buffer to a receiving section performing high-speed serial communication based on a timing signal indicating a transmission timing of the data;
2. The communication device of claim 1, comprising:

(付記3)
送信バッファの内部の状態に基づいて、前記データを送信可能なタイミングと前記データを送信不可能なタイミングとを示す前記タイミング信号を生成する第3処理手段、
を備える付記2に記載の通信装置。
(Appendix 3)
a third processing means for generating the timing signal indicating a timing when the data can be transmitted and a timing when the data cannot be transmitted based on an internal state of a transmission buffer;
3. The communication device of claim 2, comprising:

(付記4)
回線クロックおよび高速シリアルクロックの少なくとも一方に基づいて、前記タイミング信号を生成する第4処理手段、
を備える付記2または付記3に記載の通信装置。
(Appendix 4)
a fourth processing means for generating the timing signal based on at least one of a line clock and a high-speed serial clock;
4. The communication device according to claim 2 or 3, comprising:

(付記5)
制御用バッファがオーバーフローする前に、フロー制御により回線側へ送信するデータを制御すること、
を含む通信方法。
(Appendix 5)
Controlling data to be sent to the line side by flow control before the control buffer overflows;
A communication method including:

(付記6)
制御用バッファがオーバーフローする前に、フロー制御により回線側へ送信するデータを制御すること、
をコンピュータに実行させるプログラム。
(Appendix 6)
Controlling data to be sent to the line side by flow control before the control buffer overflows;
A program that causes a computer to execute the following.

1・・・通信装置
5・・・コンピュータ
6・・・CPU
7・・・メインメモリ
8・・・ストレージ
9・・・インターフェース
10・・・送信部
20・・・制御部
30・・・制御用バッファ部
40・・・受信部
50・・・回線出力部
101・・・高速シリアル制御部/送信部
201、401・・・高速シリアル受信部
202・・・制御用バッファ送受信部
203・・・高速シリアル送信部
204・・・フロー制御送信部
205・・・送信タイミング受信部
206・・・高速シリアルクロック抽出部
207、407・・・送信タイミング生成部
402・・・送信バッファ部
403・・・回線データ送信部
404・・・高速シリアルクロック抽出部
405・・・回線速度設定部
406・・・送信タイミング送信部
408・・・回線クロック生成部
1: Communication device 5: Computer 6: CPU
7...Main memory 8...Storage 9...Interface 10...Transmitter 20...Controller 30...Control buffer 40...Receiver 50...Line output unit 101...High-speed serial controller/transmitter 201, 401...High-speed serial receiver 202...Control buffer transmitter/receiver 203...High-speed serial transmitter 204...Flow control transmitter 205...Transmission timing receiver 206...High-speed serial clock extractor 207, 407...Transmission timing generator 402...Transmission buffer 403...Line data transmitter 404...High-speed serial clock extractor 405...Line speed setting unit 406...Transmission timing transmitter 408...Line clock generator

Claims (4)

制御用バッファがオーバーフローする前に、フロー制御により回線側へ送信するデータを制御する第1処理手段と、
前記データの送信タイミングを示すタイミング信号に基づいて、前記制御用バッファにおけるデータを、高速シリアル通信を行う受信部に送信する第2処理手段と、
送信バッファの内部の状態に基づいて、前記データを送信可能なタイミングと前記データを送信不可能なタイミングとを示す前記タイミング信号を生成する第3処理手段と
を備える通信装置。
a first processing means for controlling data to be transmitted to a line side by flow control before the control buffer overflows ;
a second processing means for transmitting the data in the control buffer to a receiving section that performs high-speed serial communication based on a timing signal indicating a transmission timing of the data;
a third processing means for generating the timing signal indicating a timing when the data can be transmitted and a timing when the data cannot be transmitted based on an internal state of a transmission buffer;
A communication device comprising:
回線クロックおよび高速シリアルクロックの少なくとも一方に基づいて、前記タイミング信号を生成する第4処理手段、
を備える請求項に記載の通信装置。
a fourth processing means for generating the timing signal based on at least one of a line clock and a high-speed serial clock;
The communication device of claim 1 .
通信装置が実行する通信方法であって、
前記通信装置が、制御用バッファがオーバーフローする前に、フロー制御により回線側へ送信するデータを制御することと、
前記通信装置が、前記データの送信タイミングを示すタイミング信号に基づいて、前記制御用バッファにおけるデータを、高速シリアル通信を行う受信部に送信することと、
前記通信装置が、送信バッファの内部の状態に基づいて、前記データを送信可能なタイミングと前記データを送信不可能なタイミングとを示す前記タイミング信号を生成することと
を含む通信方法。
A communication method performed by a communication device, comprising:
the communication device controls data to be transmitted to a line side by flow control before a control buffer overflows ;
the communication device transmits the data in the control buffer to a receiving section that performs high-speed serial communication based on a timing signal indicating a transmission timing of the data;
generating the timing signal indicating a timing when the data can be transmitted and a timing when the data cannot be transmitted based on an internal state of a transmission buffer;
A communication method including:
制御用バッファがオーバーフローする前に、フロー制御により回線側へ送信するデータを制御することと、
前記データの送信タイミングを示すタイミング信号に基づいて、前記制御用バッファにおけるデータを、高速シリアル通信を行う受信部に送信することと、
送信バッファの内部の状態に基づいて、前記データを送信可能なタイミングと前記データを送信不可能なタイミングとを示す前記タイミング信号を生成することと
をコンピュータに実行させるプログラム。
Controlling data to be transmitted to the line side by flow control before the control buffer overflows ;
transmitting the data in the control buffer to a receiving section that performs high-speed serial communication based on a timing signal indicating a transmission timing of the data;
generating the timing signal indicating a timing when the data can be transmitted and a timing when the data cannot be transmitted based on an internal state of a transmission buffer;
A program that causes a computer to execute the following.
JP2023043261A 2023-03-17 2023-03-17 COMMUNICATION DEVICE, COMMUNICATION METHOD, AND PROGRAM Active JP7711968B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2023043261A JP7711968B2 (en) 2023-03-17 2023-03-17 COMMUNICATION DEVICE, COMMUNICATION METHOD, AND PROGRAM

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2023043261A JP7711968B2 (en) 2023-03-17 2023-03-17 COMMUNICATION DEVICE, COMMUNICATION METHOD, AND PROGRAM

Publications (2)

Publication Number Publication Date
JP2024132486A JP2024132486A (en) 2024-10-01
JP7711968B2 true JP7711968B2 (en) 2025-07-23

Family

ID=92909194

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2023043261A Active JP7711968B2 (en) 2023-03-17 2023-03-17 COMMUNICATION DEVICE, COMMUNICATION METHOD, AND PROGRAM

Country Status (1)

Country Link
JP (1) JP7711968B2 (en)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000196620A (en) 1998-12-28 2000-07-14 Oki Electric Ind Co Ltd Tdm one link transmission system
JP2003304301A (en) 2002-04-12 2003-10-24 Matsushita Electric Ind Co Ltd Line terminating apparatus, its line side flow control method and terminal side flow control method
JP2008167416A (en) 2006-12-04 2008-07-17 Shinko Electric Ind Co Ltd Serial data transmission method, transmission / reception device, and serial data transmission method for a pair of transmission / reception devices

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH02117245A (en) * 1988-10-27 1990-05-01 Toshiba Corp Transmission speed change device
JPH08288946A (en) * 1995-02-16 1996-11-01 Komatsu Ltd Multi-terminal connection device
JP2850817B2 (en) * 1995-12-20 1999-01-27 日本電気株式会社 Signal speed conversion circuit for data highway
JPH1198561A (en) * 1997-09-17 1999-04-09 Toshiba Corp Communication device, communication method, and communication system
JPH11234313A (en) * 1998-02-13 1999-08-27 Nec Corp Multi-media exchange

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000196620A (en) 1998-12-28 2000-07-14 Oki Electric Ind Co Ltd Tdm one link transmission system
JP2003304301A (en) 2002-04-12 2003-10-24 Matsushita Electric Ind Co Ltd Line terminating apparatus, its line side flow control method and terminal side flow control method
JP2008167416A (en) 2006-12-04 2008-07-17 Shinko Electric Ind Co Ltd Serial data transmission method, transmission / reception device, and serial data transmission method for a pair of transmission / reception devices

Also Published As

Publication number Publication date
JP2024132486A (en) 2024-10-01

Similar Documents

Publication Publication Date Title
EP2466824B1 (en) Service scheduling method and device
US6757348B1 (en) High-speed coordinated multi-channel elastic buffer
JPWO2009147785A1 (en) Data communication system, data communication request device, and data communication response device
EP2546758B1 (en) Data transfer apparatus and image forming system
JP7374849B2 (en) Communication systems, communication methods and programs
JP6808104B2 (en) Communication device, communication method and communication program
US20090323728A1 (en) Asynchronous data fifo that provides uninterrupted data flow
US8199648B2 (en) Flow control in a variable latency system
CN112511455B (en) Method, device, system and storage medium for adjusting cell stream characteristic values
JP7711968B2 (en) COMMUNICATION DEVICE, COMMUNICATION METHOD, AND PROGRAM
WO2015188495A1 (en) Data transmission method and device
JP5958019B2 (en) Image processing device
EP1525722B1 (en) Packet signal processing architecture
CN109743263B (en) Dynamic jitter buffering method and device and computer equipment
US7321593B1 (en) Fibre channel SERDES with elastic transmitter FIFO
CN112073325B (en) Data congestion control and bandwidth estimation method
JP7537769B2 (en) Serial interface circuit, control method thereof, program, communication module, and communication device
JP4228850B2 (en) Packet relay device
JP2003152761A (en) LAN repeater, adaptive flow control method used therefor, and program therefor
CN107087010B (en) Intermediate data transmission method and system, distributed system
JP4995304B2 (en) Method and apparatus for controlling packet transfer apparatus
JP2000286855A (en) Communication system and communication equipment
JP5796654B1 (en) Signal transmission system, transmission device, signal transmission method, and transmission device control program
JP4673697B2 (en) Digital delay buffer and related method
JP4422159B2 (en) Bridge type packet communication record relay device

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20240704

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20250414

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20250507

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20250519

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20250610

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20250703

R150 Certificate of patent or registration of utility model

Ref document number: 7711968

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150