Determining Sigma-n According to the PCIe Gen6 Standard
This describes the derivation for computing the noise parameter, σn, for PAM4 waveforms according to the PCIe 6.0 standard. The parameter σn measures the uncorrelated RMS amplitude noise of each symbol level (including random noise RN and bounded uncorrelated noise BUN effects), while not including ISI (inter-symbol interference) and jitter effects. To measure σn, compute the noise variance at each voltage level, j, in the waveform, where j=1:4. The (population) variance for level j is:
Where Ai is a set of N waveform samples from bits at voltage level j, and μ is their mean. The specification restricts waveform samples to flat areas in the waveform. These flat areas are currently defined as the 5 bits, 57 through 61, in the data pattern. Define b1 to be the waveform sample nearest the center of bit 57, b2 to be the sample nearest the center of bit 58, etc. Or, in general bk is the center of bit 57+k-1.
Sample these same spots from each pattern. The total collection of points is [b1p, b2p, b3p, b4p, b5p], where p denotes the pattern number. We can define a specific point as bkp, where k=1:5 refers to the defined bit position, and p=1:Np, where Np is the number of patterns. For example, b23 is the 2nd defined bit from the 3rd pattern.
We can break up Equation (1) into partial sums using the 5 defined bits:
Or:
The reason for computing variance is to get an estimate of the noise. To do that, we have to subtract the signal from the noise. Equation (3) does that, but it assumes the "signal" is just a constant, equal to the mean of all points, μ, which is why that particular term is subtracted out. If all the defined bits were truly flat, this would be sufficient. But if there is any slope, or bias in the flat regions, then (3) will overestimate the noise. To solve that problem, we can define the "signal" to be the mean value of all samples from a specific bit location in the pattern:
For example, μ2 is the mean of all samples from the second defined bit location. With this new definition for the signal, Equation (3) becomes:
Note that equation (5) will eliminate ISI, because ISI is defined by the average noise at each bit in the pattern, which is just μk. So, ISI will be subtracted out.
We can write each of the sums in (5) as separate variances:
Which is the variance of all samples from a specific bit location in the pattern. Plugging (6) into (5), and noting that the total number of points, N, is equal to 5*Np (5 samples from Np patterns), we get:
In equation (7), the final variance at level j, is just the average of the variances from each of the 5 defined bit locations.
In combining the results from the different PAM4 levels, we will assume that each of them has a different noise value. In which case, we must combine noise levels using a root-square sum. This gives the final noise value, σn, as:
Where σj2 is the variance from level j. However, to be compatible with IEEE, Equation (8) is approximated as: