SNLS779A July 2025 – November 2025 DP83TC815-Q1
PRODUCTION DATA
DP83TC815-Q1 has an in-built PPM monitor to calculate frequency offset between any two internal clock sources or between an external clock source and any internal clock source. The PPM monitor is a continuous monitor which provides real-time frequency offset between the two clock sources.
PPM Monitor takes in a reference clock and compares the frequency offset with a monitor clock. Both reference clock and monitor clock can be selected from options of:
Following software sequence can be used to read out frequency offset
Calculating PPM offset between 12.5MHz external clock (on GPIO5), XI input clock of 25MHz for a refresh period of 10ms
| STEP | DESCRIPTION | PROGRAMMING | NOTES |
|---|---|---|---|
| 1 | Disable PPM Monitor | 0x01AF = 0x0000 | |
| 2 | Selecting reference clock (GPIO5 input) and monitor clock (XI clock input) | 0x01AF = 0xC800 | Enable PPM monitor and clock selection use the same register. Care must be taken not to overwrite other fields of the register |
| 3 | Select refresh period = 10ms | - | |
| 4 | Program monitor clock count and reference clock count |
0x01A4 = 0x0003 0x01A3 = 0xD090 0x01A6 = 0x0001 0x01A5 = 0xE848 |
For 10ms refresh period, count for
|
| 5 | Enable PPM monitor | 0x01AF = 0xE800 | Enable PPM monitor and clock selection use the same register. Take care not to overwrite other fields of the register |
| 6 | Latch PPM value after at least one refresh period | 0x01AF = 0xE810 | To latch the PPM value to read registers. |
| 7 | Read PPM offset value registers |
Read 0x01AE,0x01AD |
For external clock of 12.5MHz + 0ppm, XI input of 25MHz+ 100ppm, read out values are 0x01AE = 0x8000 and 0x01AD = 0x0019 |
| 8 | Calculate PPM offset | - | PPM offset = 0x0019/0x0003D090 = 1e-4 (100ppm) |
PPM monitor can also be used to give an unlock interrupt if the PPM of the monitor clock goes beyond configured thresholds.
Following software sequence can be used to configure interrupt thresholds
Enabling Interrupt for previous example in Table 7-9 with PPM threshold chosen as 200ppm
| STEP | DESCRIPTION | PROGRAMMING | NOTES |
|---|---|---|---|
| 1 | Disable PPM Monitor | 0x01AF[13] = 0 | |
| 2 | Choose PPM threshold | - | Choosing 200ppm for this example |
| 3 | Calculate counter register threshold | - | Counter register threshold = 200*10-6* 250000 = 50 |
| 4 | Program clock counter register thresholds |
0x01A8 = 0x0000 0x01A7 = 0x0032 0x01AA = 0x0003 0x01A9 = 0xD090 |
Loading counter threshold in registers {0x01A8,0x01A7} and {0x01AA,0x01A9} |
| 5 | Enable PPM interrupt indication on INT_N pin | 0x0017 = 0x0008 | |
| 6 | Enable PPM Monitor | 0x01AF[13] =1 | |
| 7 | Wait for at least 1 refresh period and read status | Read 0x0017[11] |