Fork me on GitHub

Project Notes

#144 Ring Oscillator

Test a ring oscillator built with a 74LS14 Inverter chip

The Build

Notes

A Ring Oscillator is constructed with an odd number of inverters in series, with the output feeding back to the input.

Since an odd number of inverters, the output is logically the complement of the input. This conflict results in oscillation.

The frequency of oscillation is governed by the inherent propagation delay of the inverter:

f = 1 / (2 * t * n)

Where:

2 : since two oscillations make a complete cycle
t : propagation delay of a single inverter
n : number of inverters

The propagation delay is subject to a range of instabilities:

  • jitter (noise)
  • temperature
  • voltage

The frequency of the oscillator may be controlled in a number of ways:

  • vary voltage within the limits supported by the inverter
  • add more inverters to the ring
  • add an RC network to the circuit to further slow the oscillation according the the RC time constant

Test Results

The demo circuit is built with 3 inverters in a 74LS14 chip. An RC network is added to the output to test control of the oscillation.

The follow table lists my frequency measurements with various resistor/capacitor values.

R1 C1 Frequency
c/c o/c 11502 kHz
1kΩ o/c 1860 kHz
1kΩ 100pF 1302 kHz
1kΩ 1nF 547 kHz
1kΩ 10nF 87 kHz
1kΩ 100nF 9.3 kHz

Here’s an example waveform (10nF case):

scope_10nF

Using a 74HC14

A 74HC14 can be used in the circuit, however:

  • R1 needs to be increased significantly in order to oscillate: at least 10kΩ, 100kΩ
  • frequency stability is very poor compared to 74LS14

Construction

Breadboard

The Schematic

Credits and References

About LEAP#144 CMOS/TTLOscillators
Project Source on GitHub Project Gallery Return to the LEAP Catalog

This page is a web-friendly rendering of my project notes shared in the LEAP GitHub repository.

LEAP is just my personal collection of projects. Two main themes have emerged in recent years, sometimes combined:

  • electronics - usually involving an Arduino or other microprocessor in one way or another. Some are full-blown projects, while many are trivial breadboard experiments, intended to learn and explore something interesting
  • scale modelling - I caught the bug after deciding to build a Harrier during covid to demonstrate an electronic jet engine simulation. Let the fun begin..
To be honest, I haven't quite figured out if these two interests belong in the same GitHub repo or not. But for now - they are all here!

Projects are often inspired by things found wild on the net, or ideas from the many great electronics and scale modelling podcasts and YouTube channels. Feel free to borrow liberally, and if you spot any issues do let me know (or send a PR!). See the individual projects for credits where due.