# Analysis and Modeling of Mueller-Muller Clock and Data Recovery Circuits
## 2 Mueller-Muller Phase Detector  
### Working Principle of MMPD  
The traditional oversampling design samples the input data more than once per unit interval, which has a large frequency capture range and fast capture speed. However, as the data transfer rate increases, oversampling designs encounter performance bottlenecks in terms of clocking and power consumption, and the Mueller-Muller baud rate sampling becomes the sampling method at high speed. Compared to the classical oversampling technique (e.g., BBPD), MMPD requires only half of the sampling clock and half of the high-speed front-end sampling circuitry in the same case, which can effectively reduce the area and power consumption. Figure 1 shows the block diagram of the MMPD structure.  
As shown in Figure 1, the MMPD mainly consists of error sampler, data sampler, and digital logic circuit [12]. The error sampler first compares the input data stream (\(D_{\text{in}}\)) with the threshold voltages \"\(+V_{\text{ref}}\)\" and \"\(-V_{\text{ref}}\)\" to generate the signals of Errp and Errp. The judgment principle is as follows. When \(D_{\text{in}}>+V_{\text{ref}}\), Errp = 1; otherwise Errp = 0. When \(D_{\text{in}}<-V_{\text{ref}}\), Errn = 1; otherwise Errn = 0. The signals' Errp and Errn are refined by the recovery clock (CK) and exclusive OR to get the error information (Err). The data sampler determines the data bits (\(D_{\text{in}}\)) using the threshold voltage \"0\". Then, it utilizes the three adjacent data and error information through the digital logic circuit to produce the early/late decisions. Compared to BBPD, MMPD reduces the time axis constraint but adds two voltage thresholds to obtain the amplitude information of the sampling points (namely Errp and Errn), which detects the phase of the input data applying the amplitude information together with the waveform.  
The MMPD provides updates only on data transition and requires waveform screening. As shown in Figure 2, we give four waveforms that can update the phase information,  
Figure 1: Mueller–Muller PD structure.  
each of which gives the early and late situation. For example, during 0-0-1 data transition, when recovering the clock lag input data, the clock sampling is denoted by green arrows, according to the previous judgment principle, the error information is \(\times 10\); when recovering the clock overrun input data, the clock sampling is represented by blue arrows, and the error information is \(10\times\). Therefore, the early/late clock sampling information can be uniquely determined by the difference in the error information obtained during a specific data transition [13]. Based on the principles of the MMPD mentioned above, we find that the MMPD does not have a unique locking point, and will be free to wander depending on flatness of the received square wave pulse.  
Table 1 provides a truth table of the four data transition of waveforms in Figure 2. Therefore, with the Nth-order PRBS codes commonly used to simulate real data streams such as PRBS7, PRBS23, PRBS31, etc., the probability of four data transition waveforms appearing in a 2N-1 bit cycle sequence length is 0.5. In other words, the detection density of MMPD is 0.5, which is the same as BBPD. It is worth noting that different data encoding methods may have different detection densities.