WO2013175598A1 - パラメータ調整方法、パラメータ調整装置、及びデータ処理装置 - Google Patents

パラメータ調整方法、パラメータ調整装置、及びデータ処理装置 Download PDF

Info

Publication number
WO2013175598A1
WO2013175598A1 PCT/JP2012/063234 JP2012063234W WO2013175598A1 WO 2013175598 A1 WO2013175598 A1 WO 2013175598A1 JP 2012063234 W JP2012063234 W JP 2012063234W WO 2013175598 A1 WO2013175598 A1 WO 2013175598A1
Authority
WO
WIPO (PCT)
Prior art keywords
data
parameter value
circuit
setting
parameter
Prior art date
Application number
PCT/JP2012/063234
Other languages
English (en)
French (fr)
Inventor
瀬見井昌人
藏本昌宏
Original Assignee
富士通株式会社
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 富士通株式会社 filed Critical 富士通株式会社
Priority to PCT/JP2012/063234 priority Critical patent/WO2013175598A1/ja
Publication of WO2013175598A1 publication Critical patent/WO2013175598A1/ja

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04BTRANSMISSION
    • H04B3/00Line transmission systems
    • H04B3/02Details
    • H04B3/04Control of transmission; Equalising
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L25/00Baseband systems
    • H04L25/02Details ; arrangements for supplying electrical power along data transmission lines
    • H04L25/0264Arrangements for coupling to transmission lines
    • H04L25/0272Arrangements for coupling to multiple lines, e.g. for differential transmission
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L25/00Baseband systems
    • H04L25/02Details ; arrangements for supplying electrical power along data transmission lines
    • H04L25/03Shaping networks in transmitter or receiver, e.g. adaptive shaping networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L25/00Baseband systems
    • H04L25/02Details ; arrangements for supplying electrical power along data transmission lines
    • H04L25/03Shaping networks in transmitter or receiver, e.g. adaptive shaping networks
    • H04L25/03006Arrangements for removing intersymbol interference
    • H04L25/03012Arrangements for removing intersymbol interference operating in the time domain
    • H04L25/03019Arrangements for removing intersymbol interference operating in the time domain adaptive, i.e. capable of adjustment during data reception
    • H04L25/03057Arrangements for removing intersymbol interference operating in the time domain adaptive, i.e. capable of adjustment during data reception with a recursive structure

Definitions

  • the present invention relates to a technique for transmitting and receiving data between a data transmission device and a data reception device via a transmission line.
  • the data transmission device normally adds an error detection code for error detection to the data to be transmitted so that the receiving side can detect an error that has occurred in the data reception.
  • CRC Cyclic Redundancy Check
  • the error detection code is usually generated using all data to be transmitted. Therefore, the reception side generates an error detection code using received data other than the error detection code, and compares the generated error detection code with the received error detection code. As a result of this comparison, if the two error detection codes match, it is considered that no error has occurred, that is, the signal has been received normally. If the two error detection codes do not match, an error is considered to have occurred. When it is assumed that an error has occurred, the receiving side must discard the received data and request the transmitting side to retransmit the data. For this reason, both the data transmitting device and the data receiving device are usually part of a data transmitting / receiving device capable of transmitting and receiving data.
  • the receiving side can set a parameter value that can receive data normally or can receive data normally by changing the parameter value to be used according to the occurrence of an error. is there.
  • a parameter value that can receive data normally or can receive data normally by changing the parameter value to be used according to the occurrence of an error. is there.
  • the parameter value on the transmission side can be changed by notifying the transmission side of the reception result from the reception side.
  • data transmission / reception between the transmission side and the reception side cannot be performed well, there is a high possibility that the transmission side cannot correctly recognize the notification.
  • the notification is data transmission / reception performed on the transmission side on the reception side and the reception side on behalf of the transmission side.
  • improvement in conditions for data transmission / reception cannot be expected much.
  • an object of the present invention is to provide a technique for appropriately setting parameter values for a data transmission apparatus and a data reception apparatus using another apparatus.
  • One system to which the present invention is applied includes a data transmitting device and a data receiving device that transmit and receive data via a transmission line, and parameter values used by at least one of the data transmitting device and the data receiving device are externally set.
  • a setting circuit that can be changed from the data receiving device, an acquisition circuit that acquires a data reception result from the data receiving device, and at least one of the data transmitting device and the data receiving device is used as a parameter value setting target, and the setting target is used
  • a change control circuit for sequentially changing the parameter value by the setting circuit, and performing a control for acquiring the reception result by the data receiving device receiving the data by the acquisition circuit in response to the change of the parameter value; Parameter value to be set as the setting target based on the reception result acquired by the acquisition circuit by control by the circuit Having a determination circuit for determining a setting control circuit for determining circuit to set the determined parameter value to the setting target by setting circuit.
  • the parameter values targeted by the data transmission device and the data reception device can be appropriately set using another device.
  • FIG. 1 is a diagram illustrating a hardware configuration example of the data processing apparatus according to the present embodiment.
  • a data processing apparatus 1 includes a system board (SB) 11, an I / O (Input / Output) board (IOB) 12, and a GSPB (Giga-LAN / SAS / PCI-Box interface). Board) 13, PCI box 14, and MP (Middle Plane) 15.
  • LAN is an abbreviation for Local Area Network
  • SAS is an abbreviation for Serial Attached SCSI (Small Computer System Interface)
  • PCI Peripheral Components Interconnect bus.
  • the system board 11 includes a plurality of CPUs 21, a plurality of memory modules 22 represented by “DIMM” (Dual Inline Memory Module) in FIG. 1, and an IOH (I / O Hub) 23. It is.
  • the IOH 23 converts an I / O request transmitted from the CPU 21 via a QPI (Quick Path Interconnect: high-speed system bus) into a data signal of the PCI Express standard and outputs the data signal.
  • QPI Quadrat Path Interconnect: high-speed system bus
  • the IOB 12 is a unit that controls input / output.
  • the IOB 12 mounts PCI express switches 31 (31-1) and 34, and provides a plurality of PCI express slots 35.
  • Each of the PCI express switches 31 and 34 has a function of distributing the I / O processing command from the CPU 21 to a transmission destination.
  • the IOB 12 mounts a CPLD (Complex Programmable Logic Device) 32.
  • GSPB13 implements various interfaces. As interfaces, a GbE (Gigabit Ethernet) interface 36 and a SAS interface 37 are mounted. In addition, the CPLD 32 (32-2) is mounted on the GSPB 13.
  • GbE Gigabit Ethernet
  • SAS SAS interface
  • the PCI box 14 is a housing that mounts the PCI express switch 31 (31-3) and provides a plurality of PCI express slots 35.
  • the PCI box 14 is provided as necessary.
  • MP15 is a connector unit for connecting the system board 11 and the IOB 12, and connecting the IOB 12 and the GSPB 13.
  • An MPB 15 is connected to an MMB (Management Board) 2 that is an external device.
  • the MMB 2 is a management device that performs hardware configuration management, partition configuration management, hardware monitoring, power supply control, and the like of the data processing device 1.
  • One or more are mounted.
  • the PCI express switch 31-2 and the PCI express switch 31-2 and the PCI express switch 31-2 and the PCI express switch 31-2 and the PCI express are determined from the data transmission speed, the transmission line length, and the like. It is difficult to perform data transmission between the switches 31-3 satisfactorily.
  • the length of the transmission line greatly affects the attenuation of the high frequency component of the data signal waveform. Therefore, in the present embodiment, one data transmission / reception device 40, two data transmission / reception devices 40, and one data transmission / reception device 40 mounted on the PCI express switches 31-1, 31-2, and 31-3, respectively.
  • the target parameter setting is performed by external control.
  • “S” and “R” respectively represent a data transmission device 41 and a data reception device 42 that constitute the data transmission / reception device 40.
  • a transmission line group for which it is difficult to perform data transmission satisfactorily is denoted by “51”.
  • CPLDs 32-1 and 32-2 are provided for external parameter adjustment control.
  • the reason why the CPLD 32 is adopted as the control device is that it has advantages such as high flexibility and quick design.
  • a transmission line group connecting the CPLD 32 and the PCI express switch 31 is denoted by “52”.
  • the data processing device 1 according to the present embodiment is realized by mounting one or more CPLDs 32 and setting parameters of the data transmission device 41 and the data reception device 42 included in each of the two data transmission / reception devices 40. Has been.
  • Each CPLD 32 is a parameter adjustment device according to the present embodiment.
  • FIG. 2 is a diagram illustrating a configuration example of a data transmission device and a data reception device provided in the data transmission / reception device, and a functional configuration example mounted on the CPLD.
  • the data transmission / reception devices 40 mounted on the PCI express switches 31-1 to 31-3 have the same configuration
  • the data transmission device 41 and the data reception device mounted on different PCI express switches 31. 42 shows a configuration example.
  • the data transmission device 41 includes a packet generation circuit 101, a packet CRC addition circuit 102, a parallel-serial conversion circuit 103, a controller 104, and a register 105.
  • the packet generation circuit 101 receives data to be transmitted and a transmission instruction from the mounted PCI express switch 31, and generates a packet storing the input data.
  • the packet CRC adding circuit 102 receives the packet generated by the packet generating circuit 101, calculates a CRC code that is one of error detection codes using the entire input packet, and adds the obtained CRC code to the packet. . As a result, the packet CRC adding circuit 102 outputs the packet to which the CRC code is added.
  • There are many types of algorithms for obtaining a CRC code but the types are not particularly limited.
  • the error detection code itself is not limited to the CRC code. That is, another type of error detection code such as a parity code or a checksum may be employed.
  • the packet to which the CRC code is added by the packet CRC adding circuit 102 is output in parallel to, for example, an 8-byte transmission line group. This 8-byte data is input to the parallel-serial conversion circuit 103.
  • the parallel-serial conversion circuit 103 divides 8-byte data into 1-byte data, scrambles each divided data, and performs parallel-serial conversion on the scrambled data. As a result, data is serially transmitted for each transmission line 51 a constituting the transmission line group 51.
  • the controller 104 is equipped with a communication function with the CPLD 32 and a function for changing parameter values used for data transmission of the data transmission device 41.
  • the parameter value is changed by rewriting data stored in the register 105.
  • the parallel-serial conversion circuit 103 performs data transmission using the data stored in the register 105.
  • the number of parameters whose values can be changed by the data transmission device 41 is not necessarily one. Therefore, the parameter value is used here to indicate a combination of values of one or more parameters. The same applies to the data receiving device 42.
  • the controller 104 is represented as a component of the data transmission device 41 for convenience, but the controller 104 may control the entire data transmission / reception device 40. That is, the controller 104 may be the same as the controller 204 of the data receiving device 42 described later. The controller 104 may also perform control of the PCI express switch 31 together. However, for convenience, it is assumed here that the controller 104 is different from the controller 204.
  • the transmission line 51a is hereinafter referred to as [lane].
  • a lane is a differential transmission path including two differentially driven transmission lines. This lane requires two transmission lines for serial connection with a data width of 1 bit, but has an advantage that it is relatively low in noise and suitable for high speed.
  • the data receiving apparatus 42 includes a serial-parallel conversion circuit 201, a CRC calculation circuit 202, and a comparison circuit 203.
  • the serial-parallel conversion circuit 201 receives data for each lane 51a, performs serial-parallel conversion, and descrambles the converted data.
  • the 8-byte data thus obtained is output in parallel.
  • the 8-byte data output in parallel from the serial-parallel conversion circuit 201 is input to the CRC calculation circuit 202.
  • the CRC calculation circuit 202 calculates a CRC code using the input 8-byte data.
  • the calculated CRC code is output to the comparison circuit 203.
  • the comparison circuit 203 compares the CRC code input from the CRC calculation circuit 202 with the CRC code output from the serial-parallel conversion circuit 201, and outputs the comparison result to the controller 204.
  • the comparison result indicates whether or not an error has occurred in data reception. From this, the controller 204 can recognize whether or not the data is normally received based on the comparison result input from the comparison circuit 203.
  • the controller 204 is equipped with a function for changing a parameter value used for communication with the CPLD 32 and data reception of the data reception device 42.
  • the parameter value is changed by rewriting data stored in the register 205.
  • the serial-parallel conversion circuit 201 performs data reception using the data stored in the register 205.
  • FIG. 3 is a diagram for explaining the details of the transmission system.
  • the parallel-serial conversion circuit 103 in FIG. 2 includes a Serdes (SERializer / DESerializer) Macro circuit 110 for each lane 51a.
  • the serial-parallel conversion circuit 201 of FIG. 2 includes a Serdes-Macro circuit 210 for each lane 51a.
  • the components mounted on the parallel-serial conversion circuit 103 and the serial-parallel conversion circuit 201 for each lane 51a are basically the same. Therefore, in FIG. 3, only one Serdes / Macro circuit 110 and Serdes / Macro circuit 210 are shown for convenience.
  • the Serdes / Macro circuit 110 of the parallel-serial conversion circuit 103 includes a serializer 111 that converts parallel data into serial data, and a transmission circuit 112 that serially outputs the data onto the lane 51a.
  • the transmission circuit 112 includes a data output circuit that outputs data, and a pre-emphasis component generation circuit that amplifies the pre-emphasis component of data output from the data output circuit according to the parameter value. ing. As a result, data whose components change in accordance with the data stored in the register 105 is output from the transmission circuit 112.
  • the Serdes-Macro circuit 210 of one serial-parallel conversion circuit 201 includes an LE (Linear-Equalizer) 211, a DFE (Decision Feedback-Equalizer) 212, and a deserializer 213.
  • LE Linear-Equalizer
  • DFE Decision Feedback-Equalizer
  • the LE 211 amplifies the high-frequency component attenuated in the serial data received via lane 51a according to polarity according to the setting of the amplification factor for each polarity, thereby improving the signal quality.
  • the DFE 212 improves signal quality using past received data (signal).
  • the deserializer 213 converts the serial data output from the DFE 212 into parallel data. As a result, the serial-parallel conversion circuit 201 outputs 8-byte parallel data.
  • FIG. 4 is a diagram illustrating a configuration example of DFE.
  • the DFE 212 includes a subtractor 221, three buffers 222 to 224, and three amplifiers 225 to 227.
  • each of the buffers 222 to 224 the subtraction results of the subtracters 221 having different times are stored.
  • Each of the amplifiers 225 to 227 multiplies the subtraction results stored in the buffers 222 to 224 by a tap coefficient (denoted as “DFE gain / tap” in FIG. 4), which is a set amplification factor.
  • the subtracter 221 subtracts the multiplication results output from the amplifiers 225 to 227 from the 1-bit value input from the LE 211.
  • the subtraction result becomes an output signal of the DFE 212 and is stored in the buffer 222.
  • the DFE 212 removes interference components due to past received data from the current received data.
  • the data stored in the register 205 in FIG. 2 is the data for controlling the amplification factors of the LE 211 and the DFE 212.
  • the parameter value will be specified. Thereby, in the data receiving apparatus 42, the parameter value indicates a combination of parameter values for controlling the LE 211 and the DFE 212.
  • the types of parameters used for data transmission of the data transmission device 41 and the parameters used for data reception of the data reception device 42 are not limited to the above. This is because the type of parameter varies depending on the configuration employed. Thereby, the type of parameter may be appropriately selected according to the configuration.
  • the CPLD 32 is connected to the PCI express switch 31 on which the data transmission device 41 is mounted and the PCI express switch 31 on which the data reception device 42 is mounted via a transmission line group 52, respectively.
  • Transmission / reception of data via the transmission line group 52 is performed using a method having a relatively low transmission speed so that the reception side can receive data satisfactorily.
  • An example of this method is I2C (Inter-Integrated Circuit).
  • the CPLD 32 can perform very good data transmission / reception between the controller 104 of the data transmission device 41 and the controller 204 of the data reception device 42 as a result. Thereby, adjustment of the parameter value of at least one of the data transmission device 41 and the data reception device 42 is realized so as to be more optimal.
  • the CPLD 32 includes two range holding circuits 301 and 302, two setting circuits 303 and 304, and a result holding circuit 305 so that parameter values can be adjusted for at least one of the data transmission device 41 and the data reception device 42.
  • Each of the circuits 301 to 308 has the following functions.
  • the range holding circuit 301 and the setting circuit 303 are circuits intended for the data transmission device 41.
  • the range holding circuit 301 holds a value representing a range of parameter values that can be set in the data transmission device 41, for example, a lower limit value and an upper limit value.
  • the setting circuit 303 sets parameter values within a range that can be set in the data transmission device 41 in the data transmission device 41.
  • the range holding circuit 302 and the setting circuit 304 are circuits intended for the data receiving device 42.
  • the range holding circuit 302 holds a value representing a parameter value range that can be set in the data receiving device 42.
  • the setting circuit 304 sets parameter values within a range that can be set in the data receiving device 42 in the data receiving device 42.
  • the values held in the range holding circuits 301 and 302 may be designated externally, for example, by the MMB 2, but may be acquired from the data transmission device 41 and the data reception device 42, respectively.
  • Both the setting circuits 303 and 304 change the parameter value and then instruct the data transmission device 41 to transmit data.
  • the parameter value is not changed simultaneously for both the data transmission device 41 and the data reception device 42. Thereby, when the parameter value of one of the data transmission device 41 and the data reception device 42 is changed, the data transmission device 41 performs data transmission for confirming the change result of the parameter value.
  • the acquisition circuit 306 acquires a data reception result from the data reception device 42 every time data transmission is performed by the data transmission device 41, and holds it in the result holding circuit 305. In this embodiment, at this time, together with the reception result, the parameter value set immediately before by the setting circuit 303 or 304 is held in the result holding circuit 305.
  • the reason why the reception result is acquired from the data reception device 42 every time the data transmission device 41 performs data transmission is that the data reception device 42 cannot always hold many reception results.
  • the parameter value is changed in a settable range for one of the data transmission device 41 and the data reception device 42.
  • the result holding circuit 305 holds the number of reception results obtained by changing the parameter value within one settable range of the data transmission device 41 and the data reception device 42.
  • the determination circuit 307 refers to each reception result stored in the result holding circuit 305 after the reception results of the number of parameter values changed are stored in the result holding circuit 305, and the data transmission device 41 and the data reception device 42.
  • the parameter value to be set to one of the above is determined.
  • the parameter value is determined by specifying a range of parameter values for which data has been successfully received, and calculating a value at or near the center of the specified range. As such, the decision circuit 307 selects a parameter value that is deemed more appropriate.
  • the decision circuit 307 notifies the adjustment control circuit 308 that the parameter value to be set cannot be set.
  • the adjustment control circuit 308 performs control according to the situation in which the notification is performed. In other words, when the data transmission confirmation is not performed with the combination of the parameter values obtained by changing the other parameter values of the data transmission device 41 and the data reception device 42, the adjustment control circuit 308 determines the other parameter value. The corresponding setting circuit 303 or 304 is changed. When there is no combination of parameter values obtained by changing the other parameter value of the data transmission device 41 and the data reception device 42 that does not allow data transmission, the adjustment control circuit 308 performs good data reception. It is assumed that there is no combination of parameter values that can be used. Thereby, the adjustment control circuit 308 ends the control for adjusting the parameter value.
  • 5 and 6 are flowcharts showing the flow of processing executed by each CPLD for adjusting parameter values. This process is executed when a reset signal output from the MMB 2 is input.
  • the operation of the CPLD 32 will be described in detail with reference to FIGS.
  • the operations of the data transmission device 41 denoted as “transmission side” and the data reception device denoted as “reception side” realized by the control of the CPLD 32 will be specifically described together.
  • the CPLD 32 sets a parameter value set in advance as a default value in the data receiving device 42 (S1). In the next SB2, the CPLD 32 instructs the data reception device 42 to cope with data reception (S2), and the data transmission device 41 changes to the specified parameter value and transmits data using the changed parameter value. (S3).
  • the parameter value initially set in the data transmission device 41 is, for example, a maximum value or a minimum value. Subsequent setting is performed by subtracting the current parameter value or using the parameter value after addition.
  • the controller 104 of the data transmission device 41 stores the instructed parameter value in the register 105 and then performs control for causing the parallel-serial conversion circuit 103 to transmit data. As a result, the data transmission device 41 performs data transmission (S4).
  • Data transmission is performed, for example, by causing the data transmission device 41 to transmit predetermined pattern data. From this, the CPLD 32 shifts to SB3 at the timing when the data transmission is finished, acquires the reception result from the controller 204 of the data reception device 42 (S5), and sends it to the result holding circuit 305 and the data transmission circuit 41. Store with the set parameter value.
  • the CPLD 32 determines whether or not the parameter value change to the data transmission device 41 has been completed. When all the parameter values within the settable range are set in the data transmission device 41, the determination of SB4 is Yes and the process proceeds to SB5. If parameter values to be set in the data transmission device 41 remain, the determination of SB4 is No and the process returns to SB2. Thereby, another parameter value is set in the data transmission device 41.
  • the CPLD 32 refers to the reception result held in the result holding circuit 305 and the associated parameter value, and determines whether the parameter value to be set can be determined. As described above, when there is no parameter value that has received data satisfactorily or there are few parameter values that have received data satisfactorily, the determination of SB5 is No and the process proceeds to SB7. If there are more than the necessary parameter values that have successfully received data, the determination in SB5 is Yes and the process proceeds to SB6.
  • the CPLD 32 calculates a parameter value to be set from the range of parameter values that have been successfully received, and sets the calculated parameter value in the data transmission device 41. Thereafter, a series of processing ends.
  • the data receiving device 42 is set as a parameter value change target, a parameter value to be set in the data receiving device 42 is determined, and a process for setting the determined parameter value in the data receiving device 42 is performed. .
  • the CPLD 32 sets a parameter value set in advance as a default value in the data transmission device 41 (S7).
  • the CPLD 32 instructs the data receiving device 42 to change to the specified parameter value, and further supports the data reception (S8), and instructs the data transmitting device 41 to transmit data (S9).
  • the data transmission device 41 performs data transmission according to the instruction of the CPLD 32 (S10).
  • the CPLD 32 shifts to SB9 at the timing when the data transmission is completed, acquires the reception result from the data reception device 42 (S11), and stores it in the result holding circuit 305 together with the parameter value set in the data reception circuit 42. .
  • the CPLD 32 determines whether or not the parameter value change to the data receiving device 42 has been completed. When all parameter values within the settable range are set in the data receiving device 42, the determination in SB10 is Yes and the process proceeds to SB11. If parameter values to be set in the data receiving device 42 remain, the determination of SB10 is No and the process returns to SB8. Thereby, another parameter value is set in the data receiving device 42.
  • the CPLD 32 refers to the reception result held in the result holding circuit 305 and the associated parameter value, and determines whether the parameter value to be set can be determined. If there is no parameter value at which data can be satisfactorily received or there are few parameter values at which data can be satisfactorily received, the determination at SB11 is No and the process proceeds to SB13 in FIG. If there are more parameter values than the required number of parameters that can be received satisfactorily, the determination of SB11 is Yes and the process proceeds to SB12.
  • the CPLD 32 calculates a parameter value to be set from the range of parameter values where data can be satisfactorily received, and sets the calculated parameter value in the data receiving device 42. Thereafter, a series of processing ends.
  • the data transmitting apparatus 41 and the data receiving apparatus 42 are both set as parameter value change targets, and processing for setting the parameter values to be set in the data transmitting apparatus 41 and the data receiving apparatus 42, respectively, is performed. Is called.
  • the CPLD 32 sets the maximum value or the minimum value of the parameter value in the data transmission device 41 (S13). In the next SB14, the CPLD 32 instructs the data receiving device 42 to change to the specified parameter value and further supports the data reception (S14), and instructs the data transmitting device 41 to transmit data (S15).
  • the first parameter value set in the data receiver 42 in SB14 is the maximum value or the minimum value of the parameter value.
  • the parameter value set thereafter is a value obtained by subtracting the current parameter value or a value obtained by adding the current parameter value.
  • the data transmission device 41 performs data transmission according to the instruction of the CPLD 32 (S16).
  • the CPLD 32 shifts to SB15 at the timing when the data transmission is completed, acquires the reception result from the data receiving device 42 (S17), and stores it in the result holding circuit 305 together with the parameter value set in the data receiving circuit 42. .
  • the parameter value stored at this time is a parameter value set in the data receiving device 42. This is because, when it is determined Yes in SB17 described later, the parameter value set in the data transmission device 41 in SB13 executed immediately before can be regarded as the parameter value to be set.
  • the CPLD 32 determines whether or not the parameter value change to the data receiving device 42 has been completed. When all the parameter values within the settable range are set in the data receiving device 42, the determination of SB16 is Yes and the process proceeds to SB17. If parameter values to be set in the data receiving device 42 remain, the determination in SB16 is No and the process returns to SB14. Thereby, another parameter value is set in the data receiving device 42.
  • the CPLD 32 refers to the reception result held in the result holding circuit 305 and the associated parameter value, and determines whether or not the parameter value to be set can be determined. If there is no parameter value at which data can be received satisfactorily or there are few parameter values at which data can be received satisfactorily, the determination at SB17 is No and the process proceeds to SB19. If there are more than the necessary parameter values that have successfully received data, the determination in SB17 is Yes and the process proceeds to SB18.
  • the CPLD 32 calculates a parameter value to be set from the range of parameter values for which data can be received satisfactorily, and sets the calculated parameter value in the data receiving device 42. Thereafter, a series of processing ends.
  • the CPLD 32 determines whether or not the parameter value change to the data transmission device 41 is completed. When all the parameter values within the settable range are set in the data transmission device 41, the determination of SB19 is Yes, and a series of processing ends here. If parameter values to be set in the data transmission device 41 remain, the determination in SB19 is No and the process returns to SB13. As a result, another parameter value is set in the data transmitting device 41, and the reception result of the data receiving device 42 is stored while only the parameter value set in the data receiving device 42 is changed.
  • SB1, SB8, and SB14 are realized by the setting circuit 304, for example.
  • the SB12 and SB18 are realized by, for example, the setting circuit 304 and the determination circuit 307.
  • the above SB2, SB7, and SB13 are realized by the setting circuit 303, for example.
  • the SB6 is realized for the setting circuit 303 and the determination circuit 307, for example.
  • the above SB3, SB9, and SB15 are realized by the acquisition circuit 306 and the result holding circuit 305.
  • SB4 and SB19 are realized by, for example, a range holding circuit 301, a setting circuit 303, and an adjustment control circuit 308.
  • the SB10 and SB16 are realized by, for example, the range holding circuit 302, the setting circuit 304, and the adjustment control circuit 308.
  • the above SB5, SB11, and SB17 are realized by, for example, the determination circuit 307 and the adjustment control circuit 308.
  • the parameter adjustment when the parameter values to be set are determined as a result of changing the parameter values of the data transmission device 41 or the data reception device 42 within the settable range, the parameter adjustment is terminated. It has become. As a result, the parameter adjustment is terminated when a condition set in advance as a reference is satisfied. However, the parameter adjustment may be terminated by specifying the optimum parameter value among the combinations of the parameter values of the data transmission device 41 and the data reception device 42. This is because, for example, the SB 17 is first updated with the number of parameter values that have been successfully received in the reception result stored in the result holding circuit 305 and the two parameter values to be set that are specified at this time. Change the process to save the combination.
  • the maximum value among the number of stored parameter values is specified, and the setting of the data transmission device 41 and the data reception device 42 is performed by combining the two parameter values at the specified maximum value. It can be realized by adding a process to perform.
  • the CPLD 32 performs parameter adjustment for improving data transmission via the transmission line group 51 in the data processing apparatus 1.
  • the parameter adjustment device such as the CPLD 32 performs parameter adjustment so that data transmission in a data processing device different from the data processing device 1 or data transmission between different data processing devices can be performed satisfactorily. It may be for

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Power Engineering (AREA)
  • Information Transfer Systems (AREA)

Abstract

 本発明を適用した1システムは、伝送線を介してデータの送受信を行うデータ送信装置、及びデータ受信装置を備え、データ送信装置、及びデータ受信装置のうちの少なくとも一方が使用するパラメータ値を外部から変更可能な設定回路と、データ受信装置からデータの受信結果を取得する取得回路と、データ送信装置、及びデータ受信装置のうちの少なくとも一方をパラメータ値の設定対象として、該設定対象の使用するパラメータ値を設定回路に順次、変更させると共に、該パラメータ値の変更に対応させて、データ受信装置がデータを受信することによる受信結果を取得回路に取得させる制御を行う変更制御回路と、変更制御回路による制御によって取得回路が取得した受信結果を基に、設定対象に設定すべきパラメータ値を決定する決定回路と、決定回路が決定したパラメータ値を設定回路により設定対象に設定させる設定制御回路と、を具備する。

Description

パラメータ調整方法、パラメータ調整装置、及びデータ処理装置
 本発明は、伝送線を介してデータ送信装置とデータ受信装置との間でデータの送受信を行わせるための技術に関する。
 近年、コンピュータ等のデータ処理装置間、及びデータ処理装置内の伝送線を介したデータの伝送速度は非常に高速となっている。データ伝送速度が高速になるほど、ノイズの影響は大きくなり、データの良好な受信は困難となる。このことからも、データの送信を行うデータ送信装置、及びデータを受信するデータ受信装置では、設定するパラメータ値の微調整が強く要請されるようになってきている。
 データ送信装置は、データの受信に発生したエラーを受信側が検出できるように、送信対象とするデータにエラー検出用のエラー検出符号を付加するのが普通である。エラー検出符号としては、CRC(Cyclic Redundancy Check)が広く用いられている。
 エラー検出符号は、通常、送信対象とするデータ全てを用いて生成される。このため、受信側は、エラー検出符号以外の受信データを用いてエラー検出符号を生成し、生成したエラー検出符号を受信したエラー検出符号と比較する。この比較の結果、2つのエラー検出符号が一致した場合、エラーが発生していない、つまり正常に受信されたと見なされる。2つのエラー検出符号が一致していない場合、エラーが発生したと見なされる。エラーが発生したと見なした場合、受信側は受信データを破棄し、送信側にデータの再送を要求しなければならない。このようなことから、データ送信装置、及びデータ受信装置は共に、データの送受信を行えるデータ送受信装置の一部となっているのが普通である。
 受信側は、エラーの発生の有無に応じて、使用するパラメータ値を変更することにより、データを正常に受信できる、或いはデータを正常に受信できる可能性の高いパラメータ値を設定することが可能である。しかし、上記要請が強くなっている現在、受信側でのパラメータ値の変更のみでは、良好なデータの受信を実現できるとは限らない。このことから、送信側でのパラメータ値の変更も対象とする必要がある。
 送信側でのパラメータ値の変更は、受信側から受信結果を送信側に通知することで行わせることができる。しかし、送信側と受信側との間でデータの送受信が良好に行えないのであれば、送信側が通知を正しく認識できない可能性は高い。なぜなら、通知は、送信側が受信側に、受信側は送信側にそれぞれ代わって行われるデータの送受信だからである。データの送受信に用いる伝送線が例え異なっていても、データの送受信を行ううえでの条件の改善はあまり期待できないからである。このようなことから、データの送受信を良好に行うのが困難と考えられるデータ送信装置とデータ受信装置が対象になるパラメータ値の設定では、データ送信装置、及びデータ受信装置とそれぞれ通信を行える別の装置を用いるのが望ましいと思われる。
特開2006-60808号公報
 1側面では、本発明は、データ送信装置とデータ受信装置が対象になるパラメータ値の設定を、別の装置を用いて適切に行うための技術を提供することを目的とする。
 本発明を適用した1システムは、伝送線を介してデータの送受信を行うデータ送信装置、及びデータ受信装置を備え、データ送信装置、及びデータ受信装置のうちの少なくとも一方が使用するパラメータ値を外部から変更可能な設定回路と、データ受信装置からデータの受信結果を取得する取得回路と、データ送信装置、及びデータ受信装置のうちの少なくとも一方をパラメータ値の設定対象として、該設定対象の使用するパラメータ値を設定回路により順次、変更させると共に、該パラメータ値の変更に対応させて、データ受信装置がデータを受信することによる受信結果を取得回路により取得させる制御を行う変更制御回路と、変更制御回路による制御によって取得回路が取得した受信結果を基に、設定対象に設定すべきパラメータ値を決定する決定回路と、決定回路が決定したパラメータ値を設定回路により設定対象に設定させる設定制御回路と、を有する。
 本発明を適用した1システムでは、データ送信装置とデータ受信装置が対象になるパラメータ値の設定を、別の装置を用いて適切に行うことができる。
本実施形態によるデータ処理装置のハードウェア構成例を表す図である。 データ送受信装置が備えたデータ送信装置、及びデータ受信装置の構成例、並びにCPLDに搭載された機能構成例を説明する図である。 伝送系の詳細を説明する図である。 DFEの構成例を説明する図である。 各CPLDがパラメータ値の調整のために実行する処理の流れを表すフローチャートである。 各CPLDがパラメータ値の調整のために実行する処理の流れを表すフローチャートである(続き)。
 以下、本発明の実施形態について、図面を参照しながら詳細に説明する。
 図1は、本実施形態によるデータ処理装置のハードウェア構成例を表す図である。図1に表すように、本実施形態によるデータ処理装置1は、システムボード(SB)11、I/O(Input/Output)ボード(IOB)12、GSPB(Giga-LAN/SAS/PCI-Boxインターフェイスボード)13、PCIボックス14、及びMP (Middle Plane)15を備えている。LANはLocal Area Networkの略記、SASはSerial Attached SCSI(Small Computer System Interface)の略記、PCIはPeripheral Components Interconnect busの略記である。
 システムボード11は、複数のCPU21、図1中「DIMM」(Dual Inline Memory Module)と表記の複数のメモリモジュール22、及びIOH(I/O Hub)23を搭載し、CPU21によるデータ処理を行うボードである。IOH23は、CPU21からQPI(Quick Path Interconnect:高速システムバス)を介して送信されるI/O要求をPCIエキスプレス規格のデータ信号に変換して出力する。
 IOB12は、入出力を制御するユニットである。IOB12は、PCIエクスプレス・スイッチ31(31-1)、及び34を実装し、複数のPCIエクスプレス・スロット35を提供する。各PCIエクスプレス・スイッチ31及び34は、CPU21からのI/O処理命令を送信すべき送信先に振り分ける機能を備えている。IOB12は、他にCPLD(Complex Programmable Logic Device)32を実装する。
 GSPB13は、各種インターフェースを実装する。インターフェースとして、GbE(Gigabit Ethernet)インターフェース36、及びSASインターフェース37が実装されている。GSPB13には、他にCPLD32(32-2)が実装されている。
 PCIボックス14は、PCIエクスプレス・スイッチ31(31-3)を実装し、複数のPCIエクスプレス・スロット35を提供する筐体である。PCIボックス14は、必要に応じて設けられる。
 MP15は、システムボード11とIOB12の接続、IOB12とGSPB13の接続のためのコネクターユニットである。MP15には、外部装置であるMMB(Management Board)2が接続されている。MMB2は、データ処理装置1のハードウェア構成管理、パーティション構成管理、ハードウェア監視、及び電源制御などを行う管理装置である。
 上記のような構成のデータ処理装置1では、異なる構成要素間でのデータ伝送の実現のために、各構成要素にはデータ送受信装置が1つ以上、搭載されている。つまり、各CPU21、各メモリモジュール22、IOH23、各PCIエクスプレス・スイッチ31-1~31-3及び34、GbEインターフェース36、SASインターフェース37、各CPLD32-1~32-2にはそれぞれ、データ送受信装置が1つ以上、搭載されている。
 図1に表すデータ処理装置1では、データの伝送速度、伝送線の長さ等から、PCIエクスプレス・スイッチ31-1とPCIエクスプレス・スイッチ31-2間、PCIエクスプレス・スイッチ31-2とPCIエクスプレス・スイッチ31-3間のデータ伝送を良好に行うのが困難である。伝送線の長さは、データの信号波形の高周波成分の減衰に大きく影響を及ぼす。このことから、本実施形態では、PCIエクスプレス・スイッチ31-1、31-2及び31-3にそれぞれ搭載された1つのデータ送受信装置40、2つのデータ送受信装置40及び1つのデータ送受信装置40を対象にしたパラメータ設定を外部からの制御により行うようにしている。図1中に表記の「S」「R」はそれぞれ、データ送受信装置40を構成するデータ送信装置41、データ受信装置42を表している。データ伝送を良好に行うのが困難な伝送線群には符号として「51」を付している。
 CPLD32-1及び32-2は、外部からのパラメータ調整制御のために設けている。制御用の装置としてCPLD32を採用したのは、高い柔軟性を備えている、迅速な設計が可能である、といった利点を備えているためである。CPLD32とPCIエクスプレス・スイッチ31とを接続する伝送線群には符号として「52」を付している。本実施形態によるデータ処理装置1は、CPLD32を1つ以上、搭載し、2つのデータ送受信装置40がそれぞれ備えるデータ送信装置41、及びデータ受信装置42のパラメータ設定を行わせるようにしたことで実現されている。各CPLD32は、本実施形態によるパラメータ調整装置である。
 図2は、データ送受信装置が備えたデータ送信装置、及びデータ受信装置の構成例、並びにCPLDに搭載された機能構成例を説明する図である。図2では、各PCIエクスプレス・スイッチ31-1~31-3に搭載されたデータ送受信装置40は全て同じ構成と想定し、異なるPCIエクスプレス・スイッチ31に搭載されたデータ送信装置41とデータ受信装置42の構成例を表している。
 データ送信装置41は、図2に表すように、パケット生成回路101、パケットCRC付与回路102、パラレル-シリアル変換回路103、コントローラ104、及びレジスタ105を備える。
 パケット生成回路101は、搭載されたPCIエクスプレス・スイッチ31から送信対象とするデータ、及び送信指示を入力し、入力したデータを格納させたパケットを生成する。パケットCRC付与回路102は、パケット生成回路101が生成したパケットを入力し、入力したパケット全体を用いてエラー検出符号の一つであるCRC符号を計算し、得られたCRC符号をパケットに付加する。それにより、パケットCRC付与回路102は、CRC符号が付加されたパケットを出力する。なお、CRC符号を得るアルゴリズムには多くの種類が存在するが、種類は特に限定されるものではない。また、エラー検出符号自体もCRC符号に限定されるものではない。つまりパリティ符号、或いはチェックサム等の他の種類のエラー検出符号を採用しても良い。
 パケットCRC付与回路102によりCRC符号が付加されたパケットは、例えば8バイトの伝送線群にパラレルに出力される。この8バイト単位のデータはパラレル-シリアル変換回路103に入力される。
 パラレル-シリアル変換回路103は、8バイトのデータを1バイトのデータに分割し、分割後の各データにスクランブルを行い、スクランブルを行った後のデータに対してパラレル-シリアル変換を行う。それにより、伝送線群51を構成する伝送線51a毎にデータをシリアル送信する。
 コントローラ104は、CPLD32との通信機能、データ送信装置41のデータ送信に用いるパラメータ値を変更する機能を搭載している。パラメータ値の変更は、レジスタ105に格納するデータを書き換えることで行われる。パラレル-シリアル変換回路103は、レジスタ105に格納されたデータを用いたデータ送信を行う。
 データ送信装置41で値を変更可能なパラメータ数が1であるとは限らない。このことから、ここでは、パラメータ値とは、1つ以上のパラメータの各値の組み合わせを指す意味で用いる。これは、データ受信装置42でも同様である。
 図2では、便宜的にコントローラ104をデータ送信装置41の構成要素として表しているが、コントローラ104はデータ送受信装置40全体を制御するものであっても良い。つまりコントローラ104は、後述するデータ受信装置42のコントローラ204と同一であっても良い。また、コントローラ104は、PCIエクスプレス・スイッチ31の制御も合わせて行うものであっても良い。しかし、ここでは、便宜的にコントローラ104はコントローラ204とは異なるものと想定する。
 伝送線51aについては以降[レーン」と表記する。レーンは、2本の差動駆動される伝送線を備えた差動伝送路である。このレーンは、データ幅が1ビットのシリアル接続に2本の伝送線を必要とするが、比較的にノイズ発生が少なく、高速化に適しているという利点を備えている。
 一方、データ受信装置42は、図2に表すように、シリアル-パラレル変換回路201、CRC計算回路202、及び比較回路203を備えている。
 シリアル-パラレル変換回路201は、レーン51a毎にデータを受信してシリアル-パラレル変換を行い、変換後のデータをデスクランブルする。そのようにして得られた8バイトのデータをパラレルに出力する。
 シリアル-パラレル変換回路201からパラレルに出力される8バイトのデータは、CRC計算回路202に入力される。CRC計算回路202は、入力した8バイトのデータを用いてCRC符号を計算する。計算されたCRC符号は、比較回路203に出力される。
 比較回路203は、CRC計算回路202から入力したCRC符号を、シリアル-パラレル変換回路201から出力されるCRC符号と比較し、その比較結果をコントローラ204に出力する。比較結果は、データの受信にエラーが発生しているか否かを表す。このことから、コントローラ204は、比較回路203から入力する比較結果により、データが正常に受信されたか否かを認識することができる。
 コントローラ204は、コントローラ104と同様に、CPLD32との通信機能、データ受信装置42のデータ受信に用いるパラメータ値を変更する機能を搭載している。パラメータ値の変更は、レジスタ205に格納されたデータを書き換えることで行われる。シリアル-パラレル変換回路201は、レジスタ205に格納されたデータを用いたデータ受信を行う。
 図3は、伝送系の詳細を説明する図である。図3に表すように、図2のパラレル-シリアル変換回路103は、レーン51a毎に、Serdes (SERializer/DESerializer) Macro回路110を備えている。図2のシリアル-パラレル変換回路201も同様に、レーン51a毎に、Serdes Macro回路210を備えている。
 1つのレーン51a毎にパラレル-シリアル変換回路103、及びシリアル-パラレル変換回路201にそれぞれ搭載される構成部分は基本的に同じである。このことから、図3では、便宜的に、Serdes Macro回路110、及びSerdes Macro回路210は共に一つのみ表している。
 パラレル-シリアル変換回路103のSerdes Macro回路110は、パラレルのデータをシリアルのデータに変換するシリアライザ(Serializer)111、及びシリアルでデータをレーン51a上に出力する送信回路112を含む。
 送信回路112は、特には図示していないが、データを出力するデータ出力回路と、データ出力回路が出力するデータのプリエンファシス成分をパラメータ値に従って増幅するためのプリエンファシス成分生成回路と、を備えている。それにより、レジスタ105に格納されたデータに応じて成分が変化するデータが送信回路112から出力される。
 一方のシリアル-パラレル変換回路201のSerdes Macro回路210は、LE(Linear Equalizer)211、DFE(Decision Feedback Equalizer)212、及びデシリアライザ(Deserializer)213を含む。
 LE211は、極性毎の増幅率の設定に従い、レーン51aを介して受信したシリアルデータの減衰した高周波成分を極性別に増幅して信号品質を向上させる。DFE212は、過去の受信データ(信号)を用いて信号品質を向上させる。デシリアライザ213は、DFE212から出力されたシリアルデータをパラレルデータに変換する。それにより、シリアル-パラレル変換回路201は、8バイトのパラレルデータを出力する。
 図4は、DFEの構成例を説明する図である。図4に表すように、DFE212は、減算器221、3つのバッファ222~224、及び3つの増幅器225~227を備える。
 各バッファ222~224には、それぞれ時間が異なる減算器221の減算結果が格納される。各増幅器225~227は、それぞれバッファ222~224に格納された減算結果に対し、設定された増幅率であるタップ係数(図4中「DFE gain/tap」と表記)を乗算する。減算器221は、LE211から入力した1ビットの値から、各増幅器225~227の出力する乗算結果を減算する。この減算結果が、DFE212の出力信号となり、バッファ222に格納される。そのようにしてDFE212は、現在の受信データから過去の受信データによる干渉成分を除去する。
 図4に表すようなDFE212を備えたSerdes Macro回路210をシリアル-パラレル変換回路201が搭載していた場合、図2のレジスタ205に格納されるデータは、LE211及びDFE212の増幅率を制御する各パラメータ値を指定することとなる。それにより、データ受信装置42では、パラメータ値は、LE211及びDFE212の制御用の各パラメータ値の組み合わせを指すことになる。
 なお、データ送信装置41のデータ送信に用いられるパラメータ、及びデータ受信装置42のデータ受信に用いられるパラメータの各種類は、上記のようなものに限定されない。これは、パラメータの種類は、採用する構成によって変化するものだからである。それにより、パラメータの種類は構成に応じて適宜、選択すれば良い。
 図2の説明に戻る。
 CPLD32は、データ送信装置41を搭載したPCIエクスプレス・スイッチ31、データ受信装置42を搭載したPCIエクスプレス・スイッチ31とそれぞれ伝送線群52を介して接続されている。伝送線群52を介したデータの送受信は、受信側でデータを良好に受信できるように、比較的に伝送速度の低い方式を用いて行うようになっている。この方式としては、例えばI2C(Inter-Integrated Circuit)を挙げることができる。
 CPLD32は、上記のようなことから、結果として、データ送信装置41のコントローラ104、及びデータ受信装置42のコントローラ204との間で非常に良好なデータの送受信を行うことができる。それにより、より最適となるように、データ送信装置41及びデータ受信装置42の少なくとも一方のパラメータ値の調整を実現させる。
 データ送信装置41及びデータ受信装置42の少なくとも一方を対象にしたパラメータ値の調整を行えるように、CPLD32には、2つの範囲保持回路301及び302、2つの設定回路303及び304、結果保持回路305、取得回路306、決定回路307、及び調整制御回路308を備えている。各回路301~308は、以下のような機能を備えている。
 範囲保持回路301、設定回路303は、データ送信装置41を対象にした回路である。範囲保持回路301は、データ送信装置41に設定可能なパラメータ値の範囲を表す値、例えば下限値、及び上限値を保持する。設定回路303は、データ送信装置41に設定可能な範囲内のパラメータ値をデータ送信装置41に設定する。
 一方、範囲保持回路302、設定回路304は、データ受信装置42を対象にした回路である。範囲保持回路302は、データ受信装置42に設定可能なパラメータ値の範囲を表す値を保持する。設定回路304は、データ受信装置42に設定可能な範囲内のパラメータ値をデータ受信装置42に設定する。
 範囲保持回路301及び302にそれぞれ保持させる値は、外部、例えばMMB2に指定させても良いが、データ送信装置41及びデータ受信装置42からそれぞれ取得するようにしても良い。
 設定回路303及び304は共に、パラメータ値の変更を行った後、データ送信装置41にデータの送信を指示する。パラメータ値の変更は、データ送信装置41、及びデータ受信装置42の両方に同時には行われない。それにより、データ送信装置41、及びデータ受信装置42のうちの一方のパラメータ値の変更を行った場合、パラメータ値の変更結果を確認するためのデータ送信がデータ送信装置41により行われる。
 取得回路306は、データ送信装置41によるデータ送信が行われる度に、データ受信装置42からデータの受信結果を取得し、結果保持回路305に保持する。本実施形態では、このとき、受信結果と併せ、設定回路303或いは304が直前に設定したパラメータ値を結果保持回路305に保持させる。データ送信装置41にデータ送信を行わせる度にデータ受信装置42から受信結果を取得するのは、データ受信装置42が多くの受信結果を保持できるとは限らないからである。
 パラメータ値の変更は、データ送信装置41,及びデータ受信装置42の一方を対象に、設定可能な範囲内で一通り行われる。それにより、結果保持回路305には、データ送信装置41,及びデータ受信装置42の一方の設定可能な範囲内でパラメータ値を変更した数の受信結果が保持される。決定回路307は、パラメータ値を変更した数の受信結果が結果保持回路305に格納された後、結果保持回路305に格納された各受信結果を参照し、データ送信装置41,及びデータ受信装置42の一方に設定すべきパラメータ値を決定する。パラメータ値の決定は、良好にデータを受信したパラメータ値の範囲を特定し、特定した範囲の中央、或いは中央付近の値を算出することで行われる。そのようにして、決定回路307は、より適切と考えられるパラメータ値を選択する。
 良好にデータを受信したパラメータ値が存在しない、或いはパラメータ値が少ないような場合、決定回路307は、設定すべきパラメータ値は設定できない旨を調整制御回路308に通知する。調整制御回路308は、その通知が行われた状況に応じた制御を行う。つまりデータ送信装置41、及びデータ受信装置42の他方のパラメータ値を変更して得られるパラメータ値の組み合わせでデータ送信の確認を行わせていなかった場合、調整制御回路308は、他方のパラメータ値の変更を対応する設定回路303或いは304に行わせる。データ送信装置41、及びデータ受信装置42の他方のパラメータ値を変更して得られるパラメータ値の組み合わせにデータ送信を行わせていないものが存在しない場合、調整制御回路308は、データの受信を良好に行えるパラメータ値の組み合わせは存在しないと見なす。それにより、調整制御回路308は、パラメータ値の調整のための制御を終了する。
 図5及び図6は、各CPLDがパラメータ値の調整のために実行する処理の流れを表すフローチャートである。この処理は、MMB2から出力されるリセット信号の入力を契機に実行される。次に図5及び図6を参照し、CPLD32の動作について詳細に説明する。理解を容易とするために、CPLD32の制御によって実現される「送信側」と表記のデータ送信装置41、及び「受信側」と表記のデータ受信装置42の動作も併せて具体的に説明する。ここでは、各設定回路301及び302には必要な値は既に保持されていると想定する。
 先ず、SB1では、CPLD32は、データ受信装置42に予めデフォルト値として設定されたパラメータ値を設定する(S1)。次のSB2では、CPLD32は、データ受信装置42にデータ受信への対応を指示し(S2)、データ送信装置41には指定したパラメータ値への変更、及び変更後のパラメータ値を用いたデータ送信を指示する(S3)。
 データ送信装置41に最初に設定するパラメータ値は、例えば最大値、或いは最小値である。その後の設定は、現在のパラメータ値を減算、或いは加算した後のパラメータ値を用いて行われる。
 データ送信装置41のコントローラ104は、指示されたパラメータ値をレジスタ105に格納した後、パラレル-シリアル変換回路103からデータ送信させるための制御を行う。この結果、データ送信装置41はデータ送信を行う(S4)。
 データ送信は、例えば予め決定したパターンデータをデータ送信装置41に送信させることで行われる。このことから、CPLD32は、データの送信が終わっているタイミングでSB3に移行して、データ受信装置42のコントローラ204から受信結果を取得し(S5)、結果保持回路305に、データ送信回路41に設定したパラメータ値と共に格納する。
 その後に移行するSB4では、CPLD32は、データ送信装置41へのパラメータ値の変更が終了したか否か判定する。データ送信装置41に設定可能範囲内のパラメータ値を一通り設定した場合、SB4の判定はYesとなってSB5に移行する。データ送信装置41に設定すべきパラメータ値が残っている場合、SB4の判定はNoとなって上記SB2に戻る。それにより、データ送信装置41への別のパラメータ値の設定が行われる。
 SB5では、CPLD32は、結果保持回路305に保持されている受信結果、及び対応付けられたパラメータ値を参照し、設定すべきパラメータ値を決定できるか否か判定する。上記のように、良好にデータを受信できたパラメータ値が存在しない、或いは良好にデータを受信できたパラメータ値が少ないような場合、SB5の判定はNoとなってSB7に移行する。良好にデータを受信できたパラメータ値が必要数以上、存在する場合、SB5の判定はYesとなってSB6に移行する。
 SB6では、CPLD32は、良好にデータを受信できたパラメータ値の範囲から設定すべきパラメータ値を算出し、算出したパラメータ値をデータ送信装置41に設定する。その後、一連の処理が終了する。
 SB7~SB12では、データ受信装置42をパラメータ値の変更対象にして、データ受信装置42に設定すべきパラメータ値を決定し、決定したパラメータ値をデータ受信装置42に設定するための処理が行われる。
 先ず、SB7では、CPLD32は、データ送信装置41に予めデフォルト値として設定されたパラメータ値を設定する(S7)。次のSB8では、CPLD32は、データ受信装置42に指定したパラメータ値への変更、更にはデータ受信への対応を指示し(S8)、データ送信装置41にはデータ送信を指示する(S9)。
 データ送信装置41は、CPLD32の指示に従ってデータ送信を行う(S10)。CPLD32は、データの送信が終わっているタイミングでSB9に移行して、データ受信装置42から受信結果を取得し(S11)、結果保持回路305に、データ受信回路42に設定したパラメータ値と共に格納する。
 その後に移行するSB10では、CPLD32は、データ受信装置42へのパラメータ値の変更が終了したか否か判定する。データ受信装置42に設定可能範囲内のパラメータ値を一通り設定した場合、SB10の判定はYesとなってSB11に移行する。データ受信装置42に設定すべきパラメータ値が残っている場合、SB10の判定はNoとなって上記SB8に戻る。それにより、データ受信装置42への別のパラメータ値の設定が行われる。
 SB11では、CPLD32は、結果保持回路305に保持されている受信結果、及び対応付けられたパラメータ値を参照し、設定すべきパラメータ値を決定できるか否か判定する。良好にデータを受信できたパラメータ値が存在しない、或いは良好にデータを受信できたパラメータ値が少ないような場合、SB11の判定はNoとなって図6のSB13に移行する。良好にデータを受信できたパラメータ値が必要数以上、存在する場合、SB11の判定はYesとなってSB12に移行する。
 SB12では、CPLD32は、良好にデータを受信できたパラメータ値の範囲から設定すべきパラメータ値を算出し、算出したパラメータ値をデータ受信装置42に設定する。その後、一連の処理が終了する。
 図6のSB13~SB18では、データ送信装置41及びデータ受信装置42が共にパラメータ値の変更対象にし、データ送信装置41及びデータ受信装置42にそれぞれ設定すべきパラメータ値を設定するための処理が行われる。
 先ず、SB13では、CPLD32は、データ送信装置41にパラメータ値の最大値、或いは最小値を設定する(S13)。次のSB14では、CPLD32は、データ受信装置42に指定したパラメータ値への変更、更にはデータ受信への対応を指示し(S14)、データ送信装置41にはデータ送信を指示する(S15)。
 SB14でデータ受信装置42に最初に設定されるのは、パラメータ値の最大値、或いは最小値である。その後に設定されるパラメータ値は、現在のパラメータ値を減算して得られる値、或いは現在のパラメータ値を加算して得られる値である。
 データ送信装置41は、CPLD32の指示に従ってデータ送信を行う(S16)。CPLD32は、データの送信が終わっているタイミングでSB15に移行して、データ受信装置42から受信結果を取得し(S17)、結果保持回路305に、データ受信回路42に設定したパラメータ値と共に格納する。このとき格納されるパラメータ値は、データ受信装置42に設定したパラメータ値である。これは、後述するSB17でYesと判定された場合、直前に実行したSB13でデータ送信装置41に設定したパラメータ値が設定すべきパラメータ値と見なせるからである。
 SB15に続くSB16では、CPLD32は、データ受信装置42へのパラメータ値の変更が終了したか否か判定する。データ受信装置42に設定可能範囲内のパラメータ値を一通り設定した場合、SB16の判定はYesとなってSB17に移行する。データ受信装置42に設定すべきパラメータ値が残っている場合、SB16の判定はNoとなって上記SB14に戻る。それにより、データ受信装置42への別のパラメータ値の設定が行われる。
 SB17では、CPLD32は、結果保持回路305に保持されている受信結果、及び対応付けられたパラメータ値を参照し、設定すべきパラメータ値を決定できるか否か判定する。良好にデータを受信できたパラメータ値が存在しない、或いは良好にデータを受信できたパラメータ値が少ないような場合、SB17の判定はNoとなってSB19に移行する。良好にデータを受信できたパラメータ値が必要数以上、存在する場合、SB17の判定はYesとなってSB18に移行する。
 SB18では、CPLD32は、良好にデータを受信できたパラメータ値の範囲から設定すべきパラメータ値を算出し、算出したパラメータ値をデータ受信装置42に設定する。その後、一連の処理が終了する。
 SB19では、CPLD32は、データ送信装置41へのパラメータ値の変更が終了したか否か判定する。データ送信装置41に設定可能範囲内のパラメータ値を一通り設定した場合、SB19の判定はYesとなり、ここで一連の処理が終了する。データ送信装置41に設定すべきパラメータ値が残っている場合、SB19の判定はNoとなって上記SB13に戻る。それにより、データ送信装置41への別のパラメータ値の設定が行われ、データ受信装置42に設定するパラメータ値のみを変更しながら、データ受信装置42の受信結果の保存が行われることとなる。
 上記SB6、SB12及びSB18の何れかの処理の実行により、一連の処理を終了した場合、データの受信が良好に行えるパラメータ値がデータ送信装置41及びデータ受信装置42に共に設定されていることとなる。このことから、CPLD32は、パラメータ調整が良好に完了した旨をMMB2に通知する。しかし、SB19でのYesの判定は、データ送信装置41及びデータ受信装置42にそれぞれ設定可能なパラメータ値の組み合わせでは、データの受信が良好に行えないことを意味する。このことから、CPLD32は、MMB2に対し、パラメータ調整が良好に行えなかったことを通知することになる。それにより、図6にはSB19でYesと判定された場合の移行先に「エラー終了」と表記している。
 上記SB1、SB8、SB14は、例えば設定回路304によって実現される。上記SB12、SB18は、例えば設定回路304、及び決定回路307によって実現される。上記SB2、SB7、SB13は、例えば設定回路303によって実現される。上記SB6は、例えば設定回路303,及び決定回路307にとって実現される。上記SB3、SB9、SB15は、取得回路306及び結果保持回路305によって実現される。上記SB4、SB19は、例えば範囲保持回路301、設定回路303、及び調整制御回路308によって実現される。上記SB10、SB16は、例えば範囲保持回路302、設定回路304、及び調整制御回路308によって実現される。上記SB5、SB11、SB17は、例えば決定回路307、及び調整制御回路308によって実現される。
 なお、本実施形態では、データ送信装置41、或いはデータ受信装置42のパラメータ値を設定可能範囲内で一通り変更した結果、設定すべきパラメータ値が決定できた場合、パラメータ調整を終了するようになっている。それにより、予め基準として設定した条件が満たされた場合、パラメータ調整を終了する形となっている。しかし、パラメータ調整は、データ送信装置41及びデータ受信装置42の各パラメータ値の組み合わせのなかで最適なものを特定することで終了させても良い。これは、例えば先ず、SB17を、結果保持回路305に格納された受信結果のなかでデータの受信が良好に行えたパラメータ値の数、及びこのときに特定される設定すべき2つのパラメータ値の組み合わせを保存しておく処理に変更する。次に、SB19のYesの判定により、保存されたパラメータ値の数のなかの最大値を特定し、特定した最大値での2つのパラメータ値の組み合わせでデータ送信装置41及びデータ受信装置42の設定を行う処理を追加することで実現できる。
 また、本実施形態では、CPLD32は、データ処理装置1内での伝送線群51を介したデータ伝送を良好にするためのパラメータ調整を行っている。しかし、CPLD32のようなパラメータ調整装置にパラメータ調整を行わせる対象は、データ処理装置1とは異なるデータ処理装置内でのデータ伝送、或いは異なるデータ処理装置間でのデータ伝送等を良好に行えるようにするためのものであっても良い。

Claims (7)

  1.  データ送信用の第1のパラメータ値を変更可能なデータ送信装置と、データ受信用の第2のパラメータ値を変更可能なデータ受信装置との間の伝送線を介したデータの送受信のために適用されるパラメータ調整方法であって、
     前記データ送信装置、及び前記データ受信装置を、前記第1のパラメータ値、及び前記第2のパラメータ値のうちの少なくとも一方の調整用のパラメータ調整装置と他の伝送線を介して接続し、
     前記パラメータ調整装置によって、前記データ送信装置、及び前記データ受信装置のうちの少なくとも一方を設定対象として、該設定対象が使用するパラメータ値を順次、変更させると共に、該パラメータ値の変更に対応させて、前記データ受信装置がデータを受信することによる受信結果を取得し、
     前記パラメータ調整装置によって、前記受信結果を基に、前記設定対象に設定すべきパラメータ値を決定し、該決定したパラメータ値を該設定対象に設定する、
     ことを特徴とするパラメータ調整方法。
  2.  前記パラメータ調整装置によって、最初に、前記データ送信装置、及び前記データ受信装置のうちの一方を前記設定対象に設定し、該一方を該設定対象とした後は、前記受信結果を基に、該設定対象を、該データ送信装置、及び該データ受信装置のうちの他方、該データ送信装置、及び該データ受信装置の両方、に順次、変更する、
     ことを特徴とする請求項1記載のパラメータ調整方法。
  3.  前記パラメータ調整装置によって、前記受信結果を前記設定対象に設定していたパラメータ値と対応付けて保存することにより、前記データ受信装置がデータを正常に受信できたパラメータ値の範囲内から前記設定すべきパラメータ値を決定する、
     ことを特徴とする請求項1、または2記載のパラメータ調整方法。
  4.  伝送線を介してデータの送受信を行うデータ送信装置、及びデータ受信装置のうちの少なくとも一方が使用するパラメータ値を変更可能な設定回路と、
     前記データ受信装置によるデータの受信結果を取得する取得回路と、
     前記データ送信装置、及び前記データ受信装置のうちの少なくとも一方を前記パラメータ値の設定対象として、該設定対象の使用するパラメータ値を前記設定回路に順次、変更させると共に、該パラメータ値の変更に対応させて、前記データ受信装置がデータを受信することによる受信結果を前記取得回路に取得させる制御を行う変更制御回路と、
     前記変更制御回路による制御によって前記取得回路が取得した受信結果を基に、前記設定対象に設定すべきパラメータ値を決定する決定回路と、
     前記決定回路が決定したパラメータ値を前記設定回路により前記設定対象に設定させる設定制御回路と、
     を有することを特徴とするパラメータ調整装置。
  5.  前記変更制御回路は、最初に、前記データ送信装置、及び前記データ受信装置のうちの一方を前記設定対象に設定し、該一方を該設定対象とした後は、前記決定回路による決定結果を基に、該設定対象を、該データ送信装置、及び該データ受信装置のうちの他方、該データ送信装置、及び該データ受信装置の両方、に順次、変更する、
     ことを特徴とする請求項4記載のパラメータ調整装置。
  6.  前記取得回路によって前記データ受信装置から取得する受信結果を前記設定回路が前記設定対象に設定したパラメータ値と対応付けて格納する格納回路、を備え、
     前記決定回路は、前記格納回路に対応付けて格納された受信結果、及びパラメータ値を参照することにより、前記データ受信装置がデータを正常に受信できたパラメータ値の範囲内から前記設定すべきパラメータ値を決定する、
     ことを特徴とする請求項4、または5記載のパラメータ調整装置。
  7.  伝送線を介してデータの送受信を行うデータ送信装置、及びデータ受信装置を備えたデータ処理装置において、
     前記データ送信装置、及び前記データ受信装置のうちの少なくとも一方が使用するパラメータ値を外部から変更可能な設定回路と、
     前記データ受信装置からデータの受信結果を取得する取得回路と、
     前記データ送信装置、及び前記データ受信装置のうちの少なくとも一方を前記パラメータ値の設定対象として、該設定対象の使用するパラメータ値を前記設定回路に順次、変更させると共に、該パラメータ値の変更に対応させて、前記データ受信装置がデータを受信することによる受信結果を前記取得回路に取得させる制御を行う変更制御回路と、
     前記変更制御回路による制御によって前記取得回路が取得した受信結果を基に、前記設定対象に設定すべきパラメータ値を決定する決定回路と、
     前記決定回路が決定したパラメータ値を前記設定回路により前記設定対象に設定させる設定制御回路と、
     を有することを特徴とするデータ処理装置。
PCT/JP2012/063234 2012-05-23 2012-05-23 パラメータ調整方法、パラメータ調整装置、及びデータ処理装置 WO2013175598A1 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
PCT/JP2012/063234 WO2013175598A1 (ja) 2012-05-23 2012-05-23 パラメータ調整方法、パラメータ調整装置、及びデータ処理装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2012/063234 WO2013175598A1 (ja) 2012-05-23 2012-05-23 パラメータ調整方法、パラメータ調整装置、及びデータ処理装置

Publications (1)

Publication Number Publication Date
WO2013175598A1 true WO2013175598A1 (ja) 2013-11-28

Family

ID=49623329

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2012/063234 WO2013175598A1 (ja) 2012-05-23 2012-05-23 パラメータ調整方法、パラメータ調整装置、及びデータ処理装置

Country Status (1)

Country Link
WO (1) WO2013175598A1 (ja)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005020494A (ja) * 2003-06-27 2005-01-20 Hitachi Ltd 信号伝送回路
JP2006060808A (ja) * 2004-08-16 2006-03-02 Samsung Electronics Co Ltd 適応型プリエンファシスデータ伝送をループバックするための方法、及び送信機
JP2007053648A (ja) * 2005-08-19 2007-03-01 Fujitsu Ltd 通信機能を有する装置、送信器自動調整方法、システム及びプログラム

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005020494A (ja) * 2003-06-27 2005-01-20 Hitachi Ltd 信号伝送回路
JP2006060808A (ja) * 2004-08-16 2006-03-02 Samsung Electronics Co Ltd 適応型プリエンファシスデータ伝送をループバックするための方法、及び送信機
JP2007053648A (ja) * 2005-08-19 2007-03-01 Fujitsu Ltd 通信機能を有する装置、送信器自動調整方法、システム及びプログラム

Similar Documents

Publication Publication Date Title
US10958413B2 (en) Signal transmission method and system and retimer
US9325539B2 (en) Requalization effort-balancing of transmit finite impulse response and receive linear equalizer or receive decision feedback equalizer structures in high-speed serial interconnects
US10114786B2 (en) Back channel support for systems with split lane swap
EP2503745B1 (en) Error detection in a network device
US9106467B2 (en) Backchannel communications for initialization of high-speed networks
US10728061B2 (en) Electronic devices including equalizers operating based on coefficients adjusted in training operations
CN109818886B (zh) 一种配置均衡参数的方法及装置
US10404623B2 (en) Multiple ethernet ports and port types using a shared data path
US10108574B2 (en) Electronic device, communication control circuit, and communication control method
US20190044760A1 (en) Technologies for optimizing transmitter equalization with high-speed retimer
CN107241160B (zh) 确定参数的方法和装置
US20240104048A1 (en) Transmitting Apparatus, Receiving Apparatus, Parameter Adjustment Method, SerDes Circuit, and Electronic Device
WO2013175598A1 (ja) パラメータ調整方法、パラメータ調整装置、及びデータ処理装置
CN114513407B (zh) 一种参数确定方法、集成电路及网络设备
WO2015081530A1 (en) Pattern-based coefficient adaptation operation for decision feedback equalization
CN112835752A (zh) 芯片的控制方法、控制装置和电子设备
US20240146585A1 (en) Electronic device and operation method thereof
WO2024109014A1 (zh) 误码检测方法以及相关设备
WO2024136941A1 (en) Precoding during link establishment
TWI466460B (zh) 訊號接收裝置及監測與補償符碼間干擾的方法
CN117255006A (zh) 路径恢复方法、装置、设备、系统及计算机可读存储介质

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 12877105

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 12877105

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: JP