SNLA386 May 2021 DS250DF810 , DS280DF810
All trademarks are the property of their respective owners.
A key parameter when using the DS2X0DF810 25-28G retimers is the temperature lock range (TLR) of the device. The TLR refers to the CDR stay-in-lock ambient temperature range that can be supported without any loss-of-lock event. In the data sheet, TLR is specified in the Electrical Characteristics in terms of both TEMPLOCK– (maximum temperature change when ramping down below the initial CDR lock acquisition ambient temperature) and TEMPLOCK+ (maximum temperature change when ramping up above the initial CDR lock acquisition ambient temperature).
The DS2X0DF810 25-28G retimers offer a method through I2C programming to extend the TLR to approximately 150°C (typical) in applications where the device junction temperature may vary beyond the default TLR range mentioned in the DS2X0DF810 data sheet. This is made possible by reading back the internal junction temperature through an on-die temperature sensor and then configuring the CDR loop filter control voltage accordingly. This method allows for the maximum change in the loop filter control voltage to tolerate all supported temperature scenarios, including worst-case scenarios when the device locks at extreme temperatures such as –40°C ambient or 110°C junction temperature.
This application note addresses the I2C programming procedure regarding how to read back the junction temperature and how to extend the device TLR based on the junction temperature readback.
Table 2-1 provides a programming procedure to read the junction temperature from the DS2X0DF810 25-28G retimers. This procedure is beneficial for occasional debug and link monitoring.
STEP | REGISTER SET | OPERATION |
REGISTER ADDRESS [HEX] |
REGISTER VALUE [HEX] |
WRITE MASK [HEX] |
COMMENT |
---|---|---|---|---|---|---|
Normal Retimer configuration | ||||||
Perform all steps to configure the Retimer as normal. Junction temperature measurements are the most useful when the device is operating in a configuration which mimics the mission-mode configuration. | ||||||
Configure Retimer for temperature readback | ||||||
1 | Shared | Write | FF | 10 | FF | Select Channel 0 – Channel 3 shared registers |
2 | Shared | Write | 04 | 40 | 40 | Reset Channel 0 – Channel 3 shared registers |
3 | Shared | Write | FF | 20 | FF | Select Channel 4 – Channel 7 shared registers |
4 | Shared | Write | 04 | 40 | 40 | Reset Channel 4 – Channel 7 shared registers |
5 | Shared | Write | FF | 10 | FF | Select Channel 0 – Channel 3 shared registers |
6 | Shared | Write | 0F | 00 | FF | Enable temperature detection CH0-CH3 |
7 | Shared | Write | FF | 20 | FF | Select Channel 4 – Channel 7 shared registers |
8 | Shared | Write | 0F | 00 | FF | Enable temperature detection CH4-CH7 |
9 | Shared | Write | FF | 01 | FF | Disable broadcast write to all channels, read from channel selected in Shared Reg_0xFC |
10 | Shared | Write | FC | 04 | 0F | Select single channel |
11 | Channel | Write | 19 | 01 | C1 | Enable channel temperature detection |
12 | Channel | Write | 18 | 01 | 03 | Enable channel temperature detection |
13 | Shared | Write | FF | 10 | FF | Select Channel 0 – Channel 3 shared registers |
14 | Shared | Write | 0C | 00 | 38 | Configure the input to the analog-to-digital converter (ADC) |
15 | Shared | Write | 0C | 02 | 03 | Enable ADC |
16 | Shared | Write | 0C | 04 | 04 | Reset ADC |
17 | Shared | Write | 0C | 00 | 04 | Set ADC to capture Analog Voltage |
18 | Wait 200 µs | |||||
19 | Shared | Write | 0C | 00 | 02 | Disable ADC to freeze value |
Temperature readback | ||||||
20 | Shared | Read | 0D | -- | -- | DSAR[7:0] = Reg_0x0E[7:0] |
21 | Shared | Read | 0E | -- | -- | DSAR[9:8] = Reg_0x0E[1:0] |
|
||||||
22 | Shared | Write | FF | 10 | FF | Select Channel 0 – Channel 3 shared registers |
23 | Shared | Write | 04 | 40 | 40 | Reset Channel 0 – Channel 3 shared registers |
24 | Shared | Write | FF | 20 | FF | Select Channel 4 – Channel 7 shared registers |
25 | Shared | Write | 04 | 40 | 40 | Reset Channel 4 – Channel 7 shared registers |
26 | Shared | Write | FF | 01 | FF | Enable read/write from/to channel selected in Reg_0xFC |
27 | Shared | Write | FC | 04 | 0F | Select single channel |
28 | Channel | Write | 19 | 00 | C1 | Disable channel temperature detection |
29 | Channel | Write | 18 | 00 | 03 | Disable channel temperature detection |
The DS2X0DF810 retimer TLR can be extended to support CDR stay-in-lock between -40°C ambient temperature to 110°C junction temperature. This is accomplished by expanding on the internal junction temperature readback procedure shown in Section 2.
To extend TLR based on the internal junction temperature readback, the complete programming procedure in Table 3-1 should be included as part of the normal retimer programming procedure. For simplicity, this procedure is written assuming all channels in the retimer are being configured at the same time. Refer to the Common Device Configurations section of the DS2X0DF810 Programming Guide for example programming procedures.
STEP | REGISTER SET | OPERATION |
REGISTER ADDRESS [HEX] |
REGISTER VALUE [HEX] |
WRITE MASK [HEX] |
COMMENT |
---|---|---|---|---|---|---|
Normal Retimer configuration | ||||||
Perform all steps to configure the Retimer as normal, except for the final step, which is to assert and de-assert the CDR reset. This step will be performed at the conclusion of this Extended TLR programming procedure. | ||||||
Configure Retimer for temperature readback | ||||||
1 | Shared | Write | FF | 10 | FF | Select Channel 0 – Channel 3 shared registers |
2 | Shared | Write | 04 | 40 | 40 | Reset Channel 0 – Channel 3 shared registers |
3 | Shared | Write | FF | 20 | FF | Select Channel 4 – Channel 7 shared registers |
4 | Shared | Write | 04 | 40 | 40 | Reset Channel 4 – Channel 7 shared registers |
5 | Shared | Write | FF | 10 | FF | Select Channel 0 – Channel 3 shared registers |
6 | Shared | Write | 0F | 00 | FF | Enable temperature detection CH0-CH3 |
7 | Shared | Write | FF | 20 | FF | Select Channel 4 – Channel 7 shared registers |
8 | Shared | Write | 0F | 00 | FF | Enable temperature detection CH4-CH7 |
9 | Shared | Write | FF | 03 | FF | Enable broadcast write to all channels, read from channel selected in Shared Reg_0xFC |
10 | Shared | Write | FC | 04 | 0F | Select single channel |
11 | Channel | Write | 0A | 00 | 0C | Release CDR from reset |
12 | Channel | Write | 14 | 80 | 80 | Force-enable signal detect to ensure all channels are powered on prior to reading device temperature |
13 | Channel | Write | 19 | 01 | C1 | Enable channel temperature detection |
14 | Channel | Write | 18 | 01 | 03 | Enable channel temperature detection |
15 | Shared | Write | FF | 10 | FF | Select Channel 0 – Channel 3 shared registers |
16 | Shared | Write | 0C | 00 | 38 | Configure the input to the analog-to-digital converter (ADC) |
17 | Shared | Write | 0C | 02 | 03 | Enable ADC |
18 | Shared | Write | 0C | 04 | 04 | Reset ADC |
19 | Shared | Write | 0C | 00 | 04 | Set ADC to capture Analog Voltage |
20 | Wait 200 µs | |||||
21 | Shared | Write | 0C | 00 | 02 | Disable ADC to freeze value |
Temperature readback and Loop Filter Voltage calculation | ||||||
22 | Shared | Read | 0D | -- | -- | DSAR[7:0] = Reg_0x0E[7:0] |
23 | Shared | Read | 0E | -- | -- | DSAR[9:8] = Reg_0x0E[1:0] |
|
||||||
Configure Loop Filter Voltage | ||||||
24 | Shared | Write | FF | 03 | 03 | Enable broadcast write to all channels, read from channel selected in Shared Reg_0xFC |
25 | Channel | Write | 9D | LPF_ Setting | FF | Configures the Loop Filter Voltage based on the results of the previous equation |
26 | Channel | Write | 17 | 25 | FF | Enable extended temperature lock range |
De-activate device temperature sensing | ||||||
27 | Shared | Write | FF | 10 | FF | Select Channel 0 – Channel 3 shared registers |
28 | Shared | Write | 04 | 40 | 40 | Reset Channel 0 – Channel 3 shared registers |
29 | Shared | Write | FF | 20 | FF | Select Channel 4 – Channel 7 shared registers |
30 | Shared | Write | 04 | 40 | 40 | Reset Channel 4 – Channel 7 shared registers |
31 | Shared | Write | FF | 03 | FF | Enable writing to all channels |
32 | Channel | Write | 19 | 00 | C1 | Disable channel temperature detection |
33 | Channel | Write | 18 | 00 | 03 | Disable channel temperature detection |
34 | Channel | Write | 14 | 00 | 80 | Undo force-enable of signal detect |
Conclude normal Retimer configuration | ||||||
35 | Channel | Write | 0A | 0C | 0C | Assert CDR reset |
36 | Channel | Write | 0A | 00 | 0C | De-assert CDR reset |
37 | Shared | Write | FF | 01 | 01 | Disable Broadcast write operation |