Analog10y

PROBLEM 093 · Medium · The ring oscillator

Lucky Seven

A seven-stage ring near 400 MHz

The problem

Build a ring oscillator: 7 CMOS inverters in a loop, the output of each feeding the input of the next and the last feeding the first. Name the output nets “n1”, “n2”, …, “n7” (the output of the first stage is “n1”). Choose the transistor sizes for an oscillation frequency between 250 MHz and 600 MHz.

An odd number of inverting stages has no stable state: the signal chases itself round the loop. One trip round the loop through all the stages takes half a period (a rising edge goes round once to become a falling edge), so f = 1/(2·N·tp), where tp is the delay of one stage. Wider transistors drive their loads harder and speed up the ring, but also load the previous stage.

The test bench

Numbers to hit

Design it yourself

Draw the circuit on a schematic canvas, size every transistor, and see it simulated in your browser with ngspice and the SkyWater SKY130 models. Every transistor lights up green, gold or red by operating region as you move the sliders.

Sign in or create a free account →

More on oscillators