All About Circuits

Exploring the Bode Plots of PLLs With a Lag-Lead Loop Filter

In this article, we derive design equations for a second-order PLL with a lag-lead filter by examining its Bode plots.


Technical Article January 18, 2026 by Dr. Steve Arar

As we learned in the previous article, a lag-lead filter offers enhanced control over the properties of phase-locked loops (PLLs) when compared to a basic first-order filter. More specifically, the lag-lead filter allows for the independent adjustment of DC gain, loop bandwidth, and damping factor. This flexibility has been a key reason for the widespread use of passive lag-lead filters, particularly in the early days of second-order PLLs.

In this article, we'll analyze the Bode plots of PLLs with a lag-lead filter and derive some basic design equations. These will allow us to select the pole and zero frequencies for a specified damping factor and loop bandwidth.

 

Second-Order PLL With Lag-Lead Filter

Figure 1 shows the linear model of a basic second-order PLL.

 

Linear model of a basic PLL.

Figure 1. Linear model of a basic PLL.

 

The transfer function of the lag-lead loop filter may be described by:

$$G(s) ~=~ \frac{1~+~ s / \omega_z}{1~+~ s / \omega_p}$$

Equation 1.

 

where ωz and ωp denote the zero and pole frequency, respectively.

In PLL design, we typically choose ωp to be less than ωz. By performing some algebraic manipulations on the PLL in Figure 1, we can readily derive the transfer function from the input phase (ϕin) to the output phase (ϕvco):

$$H(s) ~=~ \frac{\phi_{vco}}{\phi_{in}} ~=~ K_0 \omega_p ~\times~ \frac{1~+~s/\omega_z}{s^2 ~+~ \omega_p (1~+~ K_0/ \omega_z)s ~+~ K_0 \omega_p}$$

Equation 2.

 

where K0 = kdkvco and denotes the loop gain.

When working with second-order systems, we usually express the denominator in the standard control theory form, producing the following equation:

$$H(s) ~=~ \frac{\omega_n^2(1~+~s/\omega_z)}{s^2 ~+~ 2 \zeta \omega_n s ~+~ \omega_n^2}$$

Equation 3.

 

where ζ, the loop natural frequency, is:

$$\omega_n ~=~ \sqrt{K_0 \omega_p}$$

Equation 4.

 

and the damping factor, ωn, is given by:

$$\zeta ~=~ \frac{1}{2} \frac{\omega_p}{\omega_n} (1~+~\frac{K_0}{\omega_z})$$

Equation 5.

 

By applying Equation 4 to Equation 5, we can rewrite the damping factor in a more useful form:

$$\zeta ~=~ \frac{1}{2} \frac{\omega_p}{\omega_n} (1~+~\frac{\omega_n^2}{\omega_z \omega_p}) \quad \Rightarrow \quad \zeta ~=~ \frac{1}{2} (\frac{\omega_p}{\omega_n} ~+~ \frac{\omega_n}{\omega_z})$$

Equation 6.

 

Deriving the Bode Plots

For a second-order PLL with a lag-lead filter, the open-loop transfer function is:

$$F(s) ~=~ \frac{K_0}{s} ~\times~ \frac{1+ s / \omega_z}{1~+~ s / \omega_p}$$

Equation 7.

 

One important scenario is when the pole frequency is less than the zero frequency (ωp < ωz) and the zero frequency is less than the gain crossover frequency (ωz < ωc). The condition ωp < ωz guarantees a lowpass magnitude response, while ωz < ωc ensures that the positive phase shift introduced by the zero enhances stability at the crossover frequency. Figure 2 shows the typical Bode diagram for ωp < ωz < ωc.

 

Bode plots of a PLL with a lag-lead loop filter.

Figure 2. [click to enlarge] Bode plots of a PLL with a lag-lead loop filter.

 

At low frequencies, the integration action of the VCO results in an asymptotic amplitude slope of –20 dB per decade and a phase angle of –90 degrees. The pole of the loop filter creates an additional breakpoint in the asymptotic gain plot. At the pole frequency, the asymptotic amplitude slope changes to –40 dB per decade and the phase angle reaches –135 degrees. Note that this phase value requires the pole and zero to be far enough apart in frequency.

At some frequency between ωp and ωz, the phase angle attains its most negative value, potentially approaching –180 degrees if the pole and zero are sufficiently separated. As we approach and exceed ωz, the zero contributes a positive phase to the transfer function, causing the overall phase to approach –90 degrees at high frequencies. The zero also introduces a breakpoint in the asymptotic gain plot, changing the slope from –40 to –20 dB per decade.

 

Identifying the Natural Frequency in Bode Plots

The low-frequency region of the magnitude plot with a –20 dB per decade slope corresponds to the term K0/jω from the open-loop transfer function shown in Equation 7. The slope of this region is inversely proportional to frequency. As a result, the extension of this line intersects the horizontal axis, which corresponds to a gain of unity (or 0 dB), at ω = K0. This is illustrated in Figure 3.

 

The extension of the first section of the plot intersects the horizontal axis at the point where the frequency equals the loop gain.

Figure 3. The extension of the first section of the plot intersects the horizontal axis at ω = K0.

 

Now, consider the part of the magnitude plot characterized by a –40 dB per decade slope. Extending this line will result in an intersection with the horizontal axis at a specific frequency, denoted by ωx in the above figure. Since the slope of the line going through ωx is twice that of the green line going through ω = K0, we can conclude that ωx is midway between ωp and ω = K0 on a logarithmic plot. In other words, we have:

$$\log(\omega_x) ~-~ \log(\omega_p) ~=~ \log(K_0) ~-~ \log(\omega_x)$$

Equation 8.

 

By applying some logarithmic manipulations, the expression above can be simplified as follows:

$$\begin{eqnarray} 2\log(\omega_x) &~=~& \log(K_0) ~+~ \log(\omega_p) \\ \omega_x^2 &~=~& K_0 \omega_p \\ \end{eqnarray}$$

Equation 9.

 

Comparing the final result with the definition of the natural frequency (ωn) as given in Equation 4, we observe that ωx = ωn. Thus, the extension of the line with a –40 dB per decade slope intersects the horizontal axis at ω = ωn.

 

Determining the Gain Crossover Frequency

Let's take another look at the open-loop Bode plot (Figure 4).

 

While the purple line has a slope of negative 40 dB per decade, the line going through the crossover frequency has a slope of negative 20 dB per decade.

Figure 4. While the purple line has a slope of –40 dB per decade, the line going through ωc has a slope of –20 dB per decade.

 

The key observation here is that the purple line going through ωn has a slope of –40 dB per decade, whereas the line going through ωc has a slope of –20 dB per decade. By applying a similar logic to that discussed in the previous section, we can conclude that ωn is also positioned midway between ωz and ωc on a logarithmic plot. This results in the following expression:

$$\omega_n^2 ~=~ \omega_z \omega_c$$

Equation 10.

 

Substituting for ωn from Equation 4, we obtain an expression for the gain crossover frequency:

$$\omega_c ~=~ K_0 \frac{\omega_p}{\omega_z}$$

Equation 11.

 

Estimating the Damping Factor

Based on the Bode plot presented in Figure 4, we may infer that ωn is much greater than ωp. Under this assumption, we can proceed to simplify the damping factor defined in Equation 6 as follows:

$$\zeta ~=~ \frac{1}{2} (\frac{\omega_p}{\omega_n} ~+~ \frac{\omega_n}{\omega_z}) ~\approx~ \frac{\omega_n}{2 \omega_z}$$

Equation 12.

 

Considering the logarithmic nature of the Bode diagram's x-axis, the above relationship can be transformed into logarithmic terms as follows:

$$\log(\omega_n) ~\approx~ \log(\omega_z) ~+~ \log(2 \zeta)$$

Equation 13.

 

In other words, if we add log(2ζ) to the zero frequency, we obtain the loop natural frequency on the Bode plot. Figure 5 helps us to visualize this relationship.

 

Illustrating the relationship between the zero frequency, the natural frequency, and the damping factor.

Figure 5. Illustrating the relationship between ωz, ωn, and ζ.

 

For example, if we choose ζ = 0.5, we obtain log(2ζ) = 0. We therefore have ωz ≈ ωn. In this scenario, the breakpoint introduced by the zero occurs at ωn, which is also identified as the gain crossover frequency. This is illustrated in Figure 6.

 

The typical Bode plot when the damping factor equals 0.5.

Figure 6. The typical Bode diagram when ζ = 0.5.

 

When ζ exceeds 0.5, the term log(2ζ) becomes positive, placing ωn and ωc to the right of the zero, as illustrated in Figure 5. As the zero appears before the crossover frequency, we can take advantage of its stabilizing effect. We saw that for ζ = 0.5, ωz coincides with ωn = ωc (Figure 6 above).

When ζ decreases to below 0.5, the term log(2ζ) becomes positive, indicating that the zero appears after ωn = ωc. In this case, illustrated in Figure 7, the zero cannot exert a significant stabilizing effect on the system.

 

The typical Bode diagram when the damping factor is less than 0.5.

Figure 7. The typical Bode diagram when ζ is less than 0.5.

 

As previously noted, the pole-zero configuration of practical significance is typically the one where ζ is greater than 0.5. The Bode diagram presented in Figure 5 therefore holds greater importance for our analysis. Before we move on, it's also worth mentioning that by combining Equations 10 and 12, we can express the unity-gain frequency as:

$$\omega_c ~=~ 2 \zeta \omega_n$$

Equation 14.

 

Let's see how the insights from the above discussion can be utilized when designing a PLL that incorporates a lag-lead loop filter.

 

Example: Designing a PLL With a Lag-Lead Filter

Assume the loop gain of a PLL is K0 = kdkvco = 105 rad/s. By employing a lag-lead loop filter, we aim to achieve a damping factor of ζ = 1 and a 3 dB bandwidth of approximately 200 rad/s. Determine the filter's pole and zero frequencies, as well as the loop's phase margin.

 

Solution

There are several approximations for estimating the closed-loop bandwidth from the open-loop frequency response. The simplest is to assume that the closed-loop bandwidth is the same as the open-loop crossover frequency. Using this approximation, we can take the crossover frequency to be ωc = 200 rad/s.

We'll now apply the equations derived in the article to determine ωz and ωp. Make sure to check the final results to ensure that the assumptions of the analysis, such as ωp < ωz < ωc and ωp ≪ ωn, are not violated.

Substituting ζ = 1 and ωc = 200 rad/s into Equation 14, we first find the loop natural frequency:

$$\omega_c ~=~ 2 \zeta \omega_n \quad \Rightarrow \quad 200 ~=~ 2 ~\times~ 1 ~\times~ \omega_n \quad \Rightarrow \quad \omega_n ~=~ 100 ~ \text{rad/s}$$

Equation 15.

 

With ωn determined, we can use Equation 12 to find the zero frequency:

$$\zeta ~=~ \frac{\omega_n}{2 \omega_z} \quad \Rightarrow \quad 1 ~=~ \frac{100}{2 \omega_z} \quad \Rightarrow \quad \omega_z ~=~ 50 \ \text{rad/s}$$

Equation 16.

 

Finally, we use Equation 11 to determine the pole frequency:

$$\omega_c ~=~ K_0 \frac{\omega_p}{\omega_z} \quad \Rightarrow \quad 200 ~=~ 10^5 ~\times~ \frac{\omega_p}{50} \quad \Rightarrow \quad \omega_p ~=~ 0.1 \ \text{rad/s}$$

Equation 17.

 

Note that the assumptions ωp < ωz < ωc and ωp ≪ ωn remain valid.

Having determined ωp and ωz, we can utilize Matlab to generate the magnitude response of the closed-loop system without any approximations, as provided in Equation 8. The resulting Bode plot is shown in Figure 8.

 

Magnitude response of the closed-loop system.

Figure 8. The magnitude response of the closed-loop system.

 

The 3 dB bandwidth is approximately 248 rad/s, which is close to the target value of 200 rad/s. This indicates that our simplified analysis, which incorporates various approximations, is accurate enough to be used as a rapid analysis method. To determine the phase margin, we use Matlab to calculate the magnitude and phase of the open-loop transfer function (Equation 7). The result is shown in Figure 9.

 

Bode plots of the open-loop system generated in Matlab.

Figure 9. Bode plots of the open-loop system generated using Matlab.

 

The phase angle at the crossover frequency is about –104 degrees, which corresponds to a phase margin of 76 degrees, indicating that the system is stable.

 

Wrapping Up

Using a basic first-order loop filter, it's not possible to independently control the damping factor and loop bandwidth. To address this limitation, we can employ a filter that includes both a pole and a zero, commonly referred to as a lag-lead filter in the context of PLLs. In this article, we analyzed the Bode plots of this PLL configuration to derive straightforward design equations that allow us to select the pole and zero frequencies for a specified damping factor and loop bandwidth.

 

This article is Part 9 of a 12-part series on loop filters in PLL design. All articles in this series are listed below in order of publication:

  1. Foundations for PLL Nonlinear Analysis: Modeling the Phase Detector and VCO
  2. Analyzing a First-Order PLL in Acquisition Mode With a Nonlinear Model
  3. Analyzing First-Order PLLs Using Linear Models
  4. Understanding the Limitations of the First-Order PLL
  5. Introduction to Second-Order Type-1 PLLs
  6. Understanding the Limitations of the Second-Order Type-1 PLL With a Lag Filter
  7. Analyzing the Lag Filter’s Effect on PLL Performance
  8. Introducing the Lag-Lead Filter
  9. Exploring the Bode Plots of PLLs With a Lag-Lead Loop Filter
  10. Understanding the Time-Domain Response of PLLs With Lag-Lead Filters
  11. Introduction to Second-Order Type-2 PLLs
  12. Second-Order Type-2 PLLs: Bode Diagrams, Bandwidth, and Overshoot

 

All images used courtesy of Steve Arar