iCE40 Ring Oscillation Test Notes

Dependencies

Install instructions for all of the above tools can be found on the IceStorm website.

Building

The default make target synthesizes the design and runs a timing analysis. The target prog programs an available iCEBreaker via USB.

Results

When clocking the FPGA at 24MHz, the resulting ring oscillation is still identifiable as a square wave.

12MHz

By 111MHz, it's more of a triangle wave. But still stable and nearly rail to rail. This is the fastest clock speed that `icetime` approves.

55.5MHz

Despite not passing the timing analysis, when the FPGA is clocked at 120MHz no problems seems to occur.

60MHz

Even at 129MHz, stable ring oscillation can occur. I (Erik) thought that the first time I ran it I got a chaotic, aperiodic signal. But I haven't been able to reproduce this so I might have made a mistake. Still, I'll hold off on declaring this result official.

64.5MHz

At faster clock speeds things start to go wrong. Usually there's still a periodic ring oscillation, just much slower than one would hope.