Skip to content
Snippets Groups Projects
notes.html 2.03 KiB
Newer Older
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>iCE40 Ring Oscillation Test Notes</title>
</head>
<body link="black" alink="black" vlink="black">
<font face="bitstream vera sans,arial,helvetica,sans-serif"></font>

<div style="margin-left:2.5%;margin-right:2.5%">


<center>
<h1>iCE40 Ring Oscillation Test Notes</h1>
</center>


<center>
<h2>Dependencies</h2>
</center>

<ul>
    <li><a href="https://github.com/YosysHQ/icestorm">IceStorm tools</a></li>
    <li><a href="http://www.clifford.at/yosys/download.html">yosys</a></li>
    <li><a href="https://github.com/YosysHQ/nextpnr">nextpnr</a></li>
</ul>

<p>
Install instructions for all of the above tools can be found on the
<a href="http://bygone.clairexen.net/icestorm/">IceStorm website</a>.
</p>



<center>
<h2>Building</h2>
</center>

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


<center>
<h2>Results</h2>
</center>

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

<center>
<img src="./img/ring_12mhz.png" alt="12MHz">
</center>

<p>
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.
</p>

<center>
<img src="./img/ring_55mhz.png" alt="55.5MHz">
</center>

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

<center>
<img src="./img/ring_60mhz.png" alt="60MHz">
</center>

<p>
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.
</p>

<center>
<img src="./img/ring_64mhz.png" alt="64.5MHz">
</center>

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

</div>
</body>