Skip to content

Commit a850cd0

Browse files
committed
Deploying to gh-pages from @ 485f6b3 🚀
1 parent af8d7ca commit a850cd0

File tree

2,062 files changed

+44224
-42540
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

2,062 files changed

+44224
-42540
lines changed

dev/.buildinfo

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
11
# Sphinx build info version 1
22
# This file hashes the configuration used when building these files. When it is not found, a full rebuild will be done.
3-
config: 3e80880ca8a0a009995afd61e34ffdbc
3+
config: 26101f30f32034a54b7b82094a7274bf
44
tags: 645f666f9bcd5a90fca523b33c5a78b7
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
0 Bytes
Binary file not shown.
0 Bytes
Binary file not shown.
Binary file not shown.
0 Bytes
Binary file not shown.
0 Bytes
Binary file not shown.
0 Bytes
Binary file not shown.
0 Bytes
Binary file not shown.
Binary file not shown.
0 Bytes
Binary file not shown.
0 Bytes
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
0 Bytes
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
0 Bytes
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
0 Bytes
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
0 Bytes
Binary file not shown.
0 Bytes
Binary file not shown.
Binary file not shown.
0 Bytes
Binary file not shown.
0 Bytes
Binary file not shown.
0 Bytes
Binary file not shown.
0 Bytes
Binary file not shown.
0 Bytes
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
0 Bytes
Binary file not shown.
0 Bytes
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
0 Bytes
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
0 Bytes
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
0 Bytes
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
0 Bytes
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.

dev/.doctrees/environment.pickle

-12 Bytes
Binary file not shown.

dev/.doctrees/index.doctree

0 Bytes
Binary file not shown.

dev/SpinalHDL/About SpinalHDL/faq.html

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1198,9 +1198,9 @@ <h2>Why develop a new language when there is VHDL/Verilog/SystemVerilog?<a class
11981198
<section id="how-to-use-an-unreleased-version-of-spinalhdl-but-committed-on-git">
11991199
<h2>How to use an unreleased version of SpinalHDL (but committed on git)?<a class="headerlink" href="#how-to-use-an-unreleased-version-of-spinalhdl-but-committed-on-git" title="Permalink to this heading"></a></h2>
12001200
<p>For instance, if you want to try the <code class="docutils literal notranslate"><span class="pre">dev</span></code> branch, do the following in a dummy folder :</p>
1201-
<div class="highlight-sh notranslate"><div class="highlight"><pre><span></span>git<span class="w"> </span>clone<span class="w"> </span>https://github.com/SpinalHDL/SpinalHDL.git<span class="w"> </span>-b<span class="w"> </span>dev
1202-
<span class="nb">cd</span><span class="w"> </span>SpinalHDL
1203-
sbt<span class="w"> </span>clean<span class="w"> </span>publishLocal
1201+
<div class="highlight-sh notranslate"><div class="highlight"><pre><span></span>git clone https://github.com/SpinalHDL/SpinalHDL.git -b dev
1202+
<span class="nb">cd</span> SpinalHDL
1203+
sbt clean publishLocal
12041204
</pre></div>
12051205
</div>
12061206
<div class="line-block">

dev/SpinalHDL/Data types/AFix.html

Lines changed: 31 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -1194,7 +1194,7 @@ <h2>Declaration<a class="headerlink" href="#declaration" title="Permalink to thi
11941194
<p><code class="docutils literal notranslate"><span class="pre">AFix.SQ(8</span> <span class="pre">bits,</span> <span class="pre">4</span> <span class="pre">bits)</span></code> will have a range of -4096 (-256) to 4095 (255.9375)</p>
11951195
<p><code class="docutils literal notranslate"><span class="pre">AFix.U(8</span> <span class="pre">exp,</span> <span class="pre">4</span> <span class="pre">exp)</span></code> will have a range of 0 to 256</p>
11961196
<p>Custom range <code class="docutils literal notranslate"><span class="pre">AFix</span></code> values can be created be directly instantiating the class.</p>
1197-
<div class="highlight-scala notranslate"><div class="highlight"><pre><span></span><span class="k">class</span><span class="w"> </span><span class="nc">AFix</span><span class="p">(</span><span class="kd">val</span><span class="w"> </span><span class="n">maxValue</span><span class="p">:</span><span class="w"> </span><span class="nc">BigInt</span><span class="p">,</span><span class="w"> </span><span class="kd">val</span><span class="w"> </span><span class="n">minValue</span><span class="p">:</span><span class="w"> </span><span class="nc">BigInt</span><span class="p">,</span><span class="w"> </span><span class="kd">val</span><span class="w"> </span><span class="n">exp</span><span class="p">:</span><span class="w"> </span><span class="nc">ExpNumber</span><span class="p">)</span>
1197+
<div class="highlight-scala notranslate"><div class="highlight"><pre><span></span><span class="k">class</span><span class="w"> </span><span class="nc">AFix</span><span class="p">(</span><span class="kd">val</span><span class="w"> </span><span class="n">maxValue</span><span class="p">:</span><span class="w"> </span><span class="nc">BigInt</span><span class="p">,</span><span class="w"> </span><span class="kd">val</span><span class="w"> </span><span class="n">minValue</span><span class="p">:</span><span class="w"> </span><span class="nc">BigInt</span><span class="p">,</span><span class="w"> </span><span class="kd">val</span><span class="w"> </span><span class="n">exp</span><span class="p">:</span><span class="w"> </span><span class="nc">ExpNumber</span><span class="p">)</span><span class="w"></span>
11981198

11991199
<span class="k">new</span><span class="w"> </span><span class="nc">AFix</span><span class="p">(</span><span class="mi">4096</span><span class="p">,</span><span class="w"> </span><span class="mi">0</span><span class="p">,</span><span class="w"> </span><span class="mi">0</span><span class="w"> </span><span class="n">exp</span><span class="p">)</span><span class="w"> </span><span class="c1">// [0 to 4096, 2^0]</span>
12001200
<span class="k">new</span><span class="w"> </span><span class="nc">AFix</span><span class="p">(</span><span class="mi">256</span><span class="p">,</span><span class="w"> </span><span class="o">-</span><span class="mi">256</span><span class="p">,</span><span class="w"> </span><span class="o">-</span><span class="mi">2</span><span class="w"> </span><span class="n">exp</span><span class="p">)</span><span class="w"> </span><span class="c1">// [-256 to 256, 2^-2]</span>
@@ -1241,12 +1241,12 @@ <h2>Mathematical Operations<a class="headerlink" href="#mathematical-operations"
12411241
<section id="inequality-operations">
12421242
<h2>Inequality Operations<a class="headerlink" href="#inequality-operations" title="Permalink to this heading"></a></h2>
12431243
<p><code class="docutils literal notranslate"><span class="pre">AFix</span></code> supports standard inequality operations.</p>
1244-
<div class="highlight-scala notranslate"><div class="highlight"><pre><span></span><span class="nc">A</span><span class="w"> </span><span class="o">===</span><span class="w"> </span><span class="nc">B</span>
1245-
<span class="nc">A</span><span class="w"> </span><span class="o">=\=</span><span class="w"> </span><span class="nc">B</span>
1246-
<span class="nc">A</span><span class="w"> </span><span class="o">&lt;</span><span class="w"> </span><span class="nc">B</span>
1247-
<span class="nc">A</span><span class="w"> </span><span class="o">&lt;=</span><span class="w"> </span><span class="nc">B</span>
1248-
<span class="nc">A</span><span class="w"> </span><span class="o">&gt;</span><span class="w"> </span><span class="nc">B</span>
1249-
<span class="nc">A</span><span class="w"> </span><span class="o">&gt;=</span><span class="w"> </span><span class="nc">B</span>
1244+
<div class="highlight-scala notranslate"><div class="highlight"><pre><span></span><span class="nc">A</span><span class="w"> </span><span class="o">===</span><span class="w"> </span><span class="nc">B</span><span class="w"></span>
1245+
<span class="nc">A</span><span class="w"> </span><span class="o">=\=</span><span class="w"> </span><span class="nc">B</span><span class="w"></span>
1246+
<span class="nc">A</span><span class="w"> </span><span class="o">&lt;</span><span class="w"> </span><span class="nc">B</span><span class="w"></span>
1247+
<span class="nc">A</span><span class="w"> </span><span class="o">&lt;=</span><span class="w"> </span><span class="nc">B</span><span class="w"></span>
1248+
<span class="nc">A</span><span class="w"> </span><span class="o">&gt;</span><span class="w"> </span><span class="nc">B</span><span class="w"></span>
1249+
<span class="nc">A</span><span class="w"> </span><span class="o">&gt;=</span><span class="w"> </span><span class="nc">B</span><span class="w"></span>
12501250
</pre></div>
12511251
</div>
12521252
<p>Warning: Operations which are out of range at compile time will be optimized out!</p>
@@ -1272,17 +1272,17 @@ <h2>Saturation and Rounding<a class="headerlink" href="#saturation-and-rounding"
12721272
</div>
12731273
<p><code class="docutils literal notranslate"><span class="pre">AFix</span></code> rounding modes:</p>
12741274
<div class="highlight-scala notranslate"><div class="highlight"><pre><span></span><span class="c1">// The following require exp &lt; 0</span>
1275-
<span class="p">.</span><span class="n">floor</span><span class="p">()</span><span class="w"> </span><span class="n">or</span><span class="w"> </span><span class="p">.</span><span class="n">truncate</span><span class="p">()</span>
1276-
<span class="p">.</span><span class="n">ceil</span><span class="p">()</span>
1277-
<span class="p">.</span><span class="n">floorToZero</span><span class="p">()</span>
1278-
<span class="p">.</span><span class="n">ceilToInf</span><span class="p">()</span>
1275+
<span class="p">.</span><span class="n">floor</span><span class="p">()</span><span class="w"> </span><span class="n">or</span><span class="w"> </span><span class="p">.</span><span class="n">truncate</span><span class="p">()</span><span class="w"></span>
1276+
<span class="p">.</span><span class="n">ceil</span><span class="p">()</span><span class="w"></span>
1277+
<span class="p">.</span><span class="n">floorToZero</span><span class="p">()</span><span class="w"></span>
1278+
<span class="p">.</span><span class="n">ceilToInf</span><span class="p">()</span><span class="w"></span>
12791279
<span class="c1">// The following require exp &lt; -1</span>
1280-
<span class="p">.</span><span class="n">roundHalfUp</span><span class="p">()</span>
1281-
<span class="p">.</span><span class="n">roundHalfDown</span><span class="p">()</span>
1282-
<span class="p">.</span><span class="n">roundHalfToZero</span><span class="p">()</span>
1283-
<span class="p">.</span><span class="n">roundHalfToInf</span><span class="p">()</span>
1284-
<span class="p">.</span><span class="n">roundHalfToEven</span><span class="p">()</span>
1285-
<span class="p">.</span><span class="n">roundHalfToOdd</span><span class="p">()</span>
1280+
<span class="p">.</span><span class="n">roundHalfUp</span><span class="p">()</span><span class="w"></span>
1281+
<span class="p">.</span><span class="n">roundHalfDown</span><span class="p">()</span><span class="w"></span>
1282+
<span class="p">.</span><span class="n">roundHalfToZero</span><span class="p">()</span><span class="w"></span>
1283+
<span class="p">.</span><span class="n">roundHalfToInf</span><span class="p">()</span><span class="w"></span>
1284+
<span class="p">.</span><span class="n">roundHalfToEven</span><span class="p">()</span><span class="w"></span>
1285+
<span class="p">.</span><span class="n">roundHalfToOdd</span><span class="p">()</span><span class="w"></span>
12861286
</pre></div>
12871287
</div>
12881288
<p>An mathematical example of these rounding modes is better explained here: <a class="reference external" href="https://en.wikipedia.org/wiki/Rounding">Rounding - Wikipedia</a></p>
@@ -1294,24 +1294,24 @@ <h2>Assignment<a class="headerlink" href="#assignment" title="Permalink to this
12941294
<p><code class="docutils literal notranslate"><span class="pre">AFix</span></code> will automatically check and expand range and precision during assignment. By default, it is an error to assign
12951295
an <code class="docutils literal notranslate"><span class="pre">AFix</span></code> value to another <code class="docutils literal notranslate"><span class="pre">AFix</span></code> value with smaller range or precision.</p>
12961296
<p>The <code class="docutils literal notranslate"><span class="pre">.truncated</span></code> function is used to control how assignments to smaller types.</p>
1297-
<div class="highlight-scala notranslate"><div class="highlight"><pre><span></span><span class="k">def</span><span class="w"> </span><span class="nf">truncated</span><span class="p">(</span><span class="n">saturation</span><span class="p">:</span><span class="w"> </span><span class="nc">Boolean</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="kc">false</span><span class="p">,</span>
1298-
<span class="w"> </span><span class="n">overflow</span><span class="w"> </span><span class="p">:</span><span class="w"> </span><span class="nc">Boolean</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="kc">true</span><span class="p">,</span>
1299-
<span class="w"> </span><span class="n">rounding</span><span class="w"> </span><span class="p">:</span><span class="w"> </span><span class="nc">RoundType</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="nc">RoundType</span><span class="p">.</span><span class="nc">FLOOR</span><span class="p">)</span>
1297+
<div class="highlight-scala notranslate"><div class="highlight"><pre><span></span><span class="k">def</span><span class="w"> </span><span class="nf">truncated</span><span class="p">(</span><span class="n">saturation</span><span class="p">:</span><span class="w"> </span><span class="nc">Boolean</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="kc">false</span><span class="p">,</span><span class="w"></span>
1298+
<span class="w"> </span><span class="n">overflow</span><span class="w"> </span><span class="p">:</span><span class="w"> </span><span class="nc">Boolean</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="kc">true</span><span class="p">,</span><span class="w"></span>
1299+
<span class="w"> </span><span class="n">rounding</span><span class="w"> </span><span class="p">:</span><span class="w"> </span><span class="nc">RoundType</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="nc">RoundType</span><span class="p">.</span><span class="nc">FLOOR</span><span class="p">)</span><span class="w"></span>
13001300

1301-
<span class="k">def</span><span class="w"> </span><span class="nf">saturated</span><span class="p">():</span><span class="w"> </span><span class="nc">AFix</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="bp">this</span><span class="p">.</span><span class="n">truncated</span><span class="p">(</span><span class="n">saturation</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="kc">true</span><span class="p">,</span><span class="w"> </span><span class="n">overflow</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="kc">false</span><span class="p">)</span>
1301+
<span class="k">def</span><span class="w"> </span><span class="nf">saturated</span><span class="p">():</span><span class="w"> </span><span class="nc">AFix</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="bp">this</span><span class="p">.</span><span class="n">truncated</span><span class="p">(</span><span class="n">saturation</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="kc">true</span><span class="p">,</span><span class="w"> </span><span class="n">overflow</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="kc">false</span><span class="p">)</span><span class="w"></span>
13021302
</pre></div>
13031303
</div>
13041304
<p><code class="docutils literal notranslate"><span class="pre">RoundType</span></code>:</p>
1305-
<div class="highlight-scala notranslate"><div class="highlight"><pre><span></span><span class="nc">RoundType</span><span class="p">.</span><span class="nc">FLOOR</span>
1306-
<span class="nc">RoundType</span><span class="p">.</span><span class="nc">CEIL</span>
1307-
<span class="nc">RoundType</span><span class="p">.</span><span class="nc">FLOORTOZERO</span>
1308-
<span class="nc">RoundType</span><span class="p">.</span><span class="nc">CEILTOINF</span>
1309-
<span class="nc">RoundType</span><span class="p">.</span><span class="nc">ROUNDUP</span>
1310-
<span class="nc">RoundType</span><span class="p">.</span><span class="nc">ROUNDDOWN</span>
1311-
<span class="nc">RoundType</span><span class="p">.</span><span class="nc">ROUNDTOZERO</span>
1312-
<span class="nc">RoundType</span><span class="p">.</span><span class="nc">ROUNDTOINF</span>
1313-
<span class="nc">RoundType</span><span class="p">.</span><span class="nc">ROUNDTOEVEN</span>
1314-
<span class="nc">RoundType</span><span class="p">.</span><span class="nc">ROUNDTOODD</span>
1305+
<div class="highlight-scala notranslate"><div class="highlight"><pre><span></span><span class="nc">RoundType</span><span class="p">.</span><span class="nc">FLOOR</span><span class="w"></span>
1306+
<span class="nc">RoundType</span><span class="p">.</span><span class="nc">CEIL</span><span class="w"></span>
1307+
<span class="nc">RoundType</span><span class="p">.</span><span class="nc">FLOORTOZERO</span><span class="w"></span>
1308+
<span class="nc">RoundType</span><span class="p">.</span><span class="nc">CEILTOINF</span><span class="w"></span>
1309+
<span class="nc">RoundType</span><span class="p">.</span><span class="nc">ROUNDUP</span><span class="w"></span>
1310+
<span class="nc">RoundType</span><span class="p">.</span><span class="nc">ROUNDDOWN</span><span class="w"></span>
1311+
<span class="nc">RoundType</span><span class="p">.</span><span class="nc">ROUNDTOZERO</span><span class="w"></span>
1312+
<span class="nc">RoundType</span><span class="p">.</span><span class="nc">ROUNDTOINF</span><span class="w"></span>
1313+
<span class="nc">RoundType</span><span class="p">.</span><span class="nc">ROUNDTOEVEN</span><span class="w"></span>
1314+
<span class="nc">RoundType</span><span class="p">.</span><span class="nc">ROUNDTOODD</span><span class="w"></span>
13151315
</pre></div>
13161316
</div>
13171317
<p>The <code class="docutils literal notranslate"><span class="pre">saturation</span></code> flag will add logic to saturate to the assigned datatype range.</p>

0 commit comments

Comments
 (0)