# Gvd and Gid derivation of Buck converter

Ming Sun / November 29, 2022

15 min read • ––– views

## Step 1 - construct small-signal equations

^{[1~2]}

### Voltage-second balance equation

**Fig. 1** shows a synchronous Buck power stage, where it contains a high side switch **S _{1}** and a low side switch

**S**.

_{2}For the inductor, we can write the voltage-second balance as^{[1]}:

Where, **I** is the inductor current, **V _{g}** is the Buck converter's input voltage, and

**V**is Buck converter's output voltage

**V**. Next, let us perturb and linearize

_{out}**Eq. 1**by introducting the small signal perturbation as:

Here we are trying to derive the transfer function of **G _{vd}**. As a result, we can assume

**V**is constant. Removing the DC terms from

_{g}**Eq. 2**, we have:

**Eq. 3** can be written in `s`

domain as:

### charge balance equation

For the capacitor, we can write the charge balance as^{[1]}:

Next, let us perturb and linearize **Eq. 5** by introducting the small signal perturbation as:

Removing the DC terms from **Eq. 6**, we have:

**Eq. 7** can be written in `s`

domain as:

## Step 2 - solve the **G**_{vd} in Matlab

_{vd}

The Matlab script used to derive the **G _{vd}** transfer function is as shown below:

```
clc; clear; close all;
syms s
syms v i d
syms R L C Vg
syms Gvd Gid
eqn1 = s*L*i == d*Vg - v;
eqn2 = s*C*v == i - v/R;
eqn3 = Gvd == v/d;
eqn4 = Gid == i/d;
results = solve(eqn1, eqn2, eqn3, eqn4, [v i Gvd Gid]);
Gvd = simplify(results.Gvd)
Gid = simplify(results.Gid)
```

**Fig. 2** shows the **G _{vd}** derived result from Matlab.

^{}

From **Fig. 2**, we have:

Compared with the **G _{vd}** transfer function we previously derived in the averaged switch model blog post

^{[3]}, the result matches with each other.

## Simplis for verification of Gvd transfer function

In **Ref. [4]**, we have created an open-loop Buck converter model in Simplis. In that tutorial, we use `POP`

and `AC`

analysis in Simplis to plot the **G _{vd}** transfer function within Simplis and then we export the simulation data into a

`csv`

file. Next, we use Matlab to compare the mathematical `s`

domain transfer function Bode plot with the simulation results from Simplis.In this tutorial, we are going to do the comparison within the Simplis. Simplis provides a `Laplace Transfer Function`

block, which can be used for this purpose.

^{}

The updated open-loop Buck converter model is as shown in **Fig. 4**.

^{}

To set the property of the `Laplace Transfer Function`

block, **Eq. 9** can be re-written as:

We can plug in the inductor, capacitor, resistor and Vg values into **Eq. 10**. We have:

Based on **Eq. 11**, the property of the `2nd-order Laplace Transfer Function`

is as shown in **Fig. 5**.

^{}

The Simplis simulation results are as shown in **Fig. 6**. From **Fig. 6**, we can see that the mathematical Laplace transfer function matches with the `AC`

simulation results of **G _{vd}**.

^{}

## Gid verification

From **Fig. 2**, the **G _{id}** transfer function can be written as:

To verify the **G _{id}** transfer function, the Simplis test bench can be modified as shown in

**Fig. 7**.

^{}

To set the property of the `Laplace Transfer Function`

block, **Eq. 12** can be re-written as:

We can plug in the inductor, capacitor, resistor and Vg values into **Eq. 13**. We have:

Based on **Eq. 14**, the property of the `2nd-order Laplace Transfer Function`

is as shown in **Fig. 8**.

^{}

The Simplis simulation results are as shown in **Fig. 9**. From **Fig. 9**, we can see that the mathematical Laplace transfer function matches with the `AC`

simulation results of **G _{id}**.

^{}

## References and downloads

[1] Fundamentals of power electronics - Chapter 2

[2] Popular converters and the conversion ratio derivation

[3] Average Switch Model of Buck Power Stage

[4] POP and AC simulation in Simplis

[5] Open-loop Buck converter model for Gvd simulation in Simplis - pdf

[6] Open-loop Buck converter model for Gvd simulation in Simplis - download

[7] Open-loop Buck converter model for Gid simulation in Simplis - pdf

[8] Open-loop Buck converter model for Gid simulation in Simplis - download