<?xml version="1.0" encoding="UTF-8"?>

<rss version="2.0"
 xmlns:blogChannel="http://backend.userland.com/blogChannelModule"
>

<channel>
<title><![CDATA[Dobrica Pavlinušić's random unstructured stuff: cfu-playground]]></title>
<link>https://saturn.ffzg.hr/rot13/index.cgi?cfu_playground</link>
<description></description>
<pubDate>Fri, 03 Dec 2021 20:24:27 -0000</pubDate>
<webMaster>root@saturn.ffzg.hr</webMaster>
<generator>Socialtext Workspace v2.19.0.2</generator>

<item>
<title><![CDATA[cfu-playground]]></title>
<link>https://saturn.ffzg.hr/rot13/index.cgi?cfu_playground</link>
<description><![CDATA[<div>Creator: Dobrica Pavlinušić</div><hr/><div>Tags: FPGA</div><hr/><div class="wiki">
<div class="nlw_phrase"><table class="wafl_container">
  <tr>
    <td>
      <div class="wafl_box">
        
          <div class="wafl_titlebox">
            <div class="wafl_title">
              
                Contents: [Dobrica Pavlinušić's random unstructured stuff]
              
            </div>
          </div>
          <div class="wafl_items">
            
              <div class="wiki">
<ul>
<li><span class="nlw_phrase"><a title="section link" href="https://saturn.ffzg.hr/rot13/index.cgi?dobrica_pavlinu%C5%A1i%C4%87_s_random_unstructured_stuff#video">Dobrica Pavlinušić's random unstructured stuff (video)</a><!-- wiki: {link: [Dobrica Pavlinušić's random unstructured stuff] video} --></span></li>
<li><span class="nlw_phrase"><a title="section link" href="https://saturn.ffzg.hr/rot13/index.cgi?dobrica_pavlinu%C5%A1i%C4%87_s_random_unstructured_stuff#git">Dobrica Pavlinušić's random unstructured stuff (git)</a><!-- wiki: {link: [Dobrica Pavlinušić's random unstructured stuff] git} --></span></li>
<li><span class="nlw_phrase"><a title="section link" href="https://saturn.ffzg.hr/rot13/index.cgi?dobrica_pavlinu%C5%A1i%C4%87_s_random_unstructured_stuff#ulx3s_board">Dobrica Pavlinušić's random unstructured stuff (ulx3s board)</a><!-- wiki: {link: [Dobrica Pavlinušić's random unstructured stuff] ulx3s board} --></span></li>
<li><span class="nlw_phrase"><a title="section link" href="https://saturn.ffzg.hr/rot13/index.cgi?dobrica_pavlinu%C5%A1i%C4%87_s_random_unstructured_stuff#build">Dobrica Pavlinušić's random unstructured stuff (build)</a><!-- wiki: {link: [Dobrica Pavlinušić's random unstructured stuff] build} --></span></li>

<ul>
<li><span class="nlw_phrase"><a title="section link" href="https://saturn.ffzg.hr/rot13/index.cgi?dobrica_pavlinu%C5%A1i%C4%87_s_random_unstructured_stuff#sumulation">Dobrica Pavlinušić's random unstructured stuff (sumulation)</a><!-- wiki: {link: [Dobrica Pavlinušić's random unstructured stuff] sumulation} --></span></li>
<li><span class="nlw_phrase"><a title="section link" href="https://saturn.ffzg.hr/rot13/index.cgi?dobrica_pavlinu%C5%A1i%C4%87_s_random_unstructured_stuff#boot_over_serial_using_network">Dobrica Pavlinušić's random unstructured stuff (boot over serial using network)</a><!-- wiki: {link: [Dobrica Pavlinušić's random unstructured stuff] boot over serial using network} --></span></li>

<ul>
<li><span class="nlw_phrase"><a title="section link" href="https://saturn.ffzg.hr/rot13/index.cgi?dobrica_pavlinu%C5%A1i%C4%87_s_random_unstructured_stuff#host_with_ulx3s_connected">Dobrica Pavlinušić's random unstructured stuff (host with ulx3s connected)</a><!-- wiki: {link: [Dobrica Pavlinušić's random unstructured stuff] host with ulx3s connected} --></span></li>
<li><span class="nlw_phrase"><a title="section link" href="https://saturn.ffzg.hr/rot13/index.cgi?dobrica_pavlinu%C5%A1i%C4%87_s_random_unstructured_stuff#machine_running_litex">Dobrica Pavlinušić's random unstructured stuff (machine running litex)</a><!-- wiki: {link: [Dobrica Pavlinušić's random unstructured stuff] machine running litex} --></span></li>
</ul></ul></ul>
</div>

            
            
          </div>
        
      </div>
    </td>
  </tr>
</table>
<!-- wiki: {toc: }
--></div><br /><br /><h1 id="video">video</h1>
<ul>
<li><a target="_blank" title="(external link)" href="https://www.youtube.com/watch?v=_1yrxrl61o4">https://www.youtube.com/watch?v=_1yrxrl61o4</a></li>
<li><a target="_blank" title="(external link)" href="https://www.youtube.com/watch?v=kRTs6B-kEOE">https://www.youtube.com/watch?v=kRTs6B-kEOE</a></li>
</ul>
<h1 id="git">git</h1>
<pre>
dpavlin@klin:/klin/FPGA/CFU-Playground$ git remote -v
origin  https://github.com/google/CFU-Playground.git (fetch)
origin  https://github.com/google/CFU-Playground.git (push)
dpavlin@klin:/klin/FPGA/CFU-Playground$ git submodule init
dpavlin@klin:/klin/FPGA/CFU-Playground$ git submodule update
</pre>
<br /><h1 id="ulx3s_board">ulx3s board</h1>
<p>
<a target="_blank" title="(external link)" href="https://github.com/litex-hub/litex-boards/blob/master/litex_boards/targets/radiona_ulx3s.py">https://github.com/litex-hub/litex-boards/blob/master/litex_boards/targets/radiona_ulx3s.py</a></p>
<pre>
dpavlin@klin:/klin/FPGA/CFU-Playground$ find . -name radiona_ulx3s.py
./third_party/python/litex_boards/litex_boards/targets/radiona_ulx3s.py
./third_party/python/litex_boards/litex_boards/platforms/radiona_ulx3s.py
# edit fpga settings here
dpavlin@klin:/klin/FPGA/CFU-Playground$ vi ./third_party/python/litex_boards/litex_boards/targets/radiona_ulx3s.py
</pre>
<br /><p>
modifications for 85F <span class="nlw_phrase"><a href="https://saturn.ffzg.hr/rot13/index.cgi/litex-85f.diff?action=attachments_download;page_name=cfu_playground;id=20210722074538-0-29873">litex-85f.diff</a><!-- wiki: {file: litex-=85f.diff} --></span></p>
<h1 id="build">build</h1>
<p>
you really need riscv64 toolchain from <a target="_blank" title="(external link)" href="https://github.com/sifive/freedom-tools/releases/tag/v2020.04.0-Toolchain.Only">https://github.com/sifive/freedom-tools/releases/tag/v2020.04.0-Toolchain.Only</a></p>
<pre>
dpavlin@klin:/klin/FPGA/CFU-Playground/proj$ cat build.sh
#!/bin/sh -xe

echo https://github.com/google/CFU-Playground

export PATH=/opt/riscv64-unknown-elf-gcc-8.3.0-2020.04.1-x86_64-linux-ubuntu14/bin/:$PATH
export TARGET=radiona_ulx3s
export UART_SPEED=115200
time make prog load
</pre>
<br /><h2 id="sumulation">sumulation</h2>
<pre>
dpavlin@klin:/klin/FPGA/CFU-Playground/proj/avg_pdti8$ time make PLATFORM=sim load -j 4
</pre>
<br /><h2 id="boot_over_serial_using_network">boot over serial using network</h2>
<h3 id="host_with_ulx3s_connected">host with ulx3s connected</h3>
<p>
root@pihdmi:/home/pi# socat /dev/ttyUSB0,b115200,raw,echo=0 TCP:10.60.0.92:2003</p>
<h3 id="machine_running_litex">machine running litex</h3>
<p>
dpavlin@klin:/klin/FPGA/CFU-Playground/proj/hps_accel$ socat TCP-LISTEN:2003 PTY,link=ttyV2,raw</p>
<ol>
<li>re-run terminal with new virtal ttyV2</li>
</ol>
<pre>
dpavlin@klin:/klin/FPGA/CFU-Playground/proj/hps_accel$ /klin/FPGA/CFU-Playground/soc/bin/litex_term --speed 115200  --serial-boot --kernel /klin/FPGA/CFU-Playground/proj/hps_accel/build/software.bin ttyV2

litex&gt; serialboot
Booting from serial...
Press Q or ESC to abort boot completely.
sL5DdSMmkekro
[LXTERM] Received firmware download request from the device.
[LXTERM] Uploading /klin/FPGA/CFU-Playground/proj/hps_accel/build/software.bin to 0x40000000 (1313688 bytes)...
[LXTERM] Upload complete (9.9KB/s).
[LXTERM] Booting the device.
[LXTERM] Done.
Executing booted program at 0x40000000

--============= Liftoff! ===============--
Hello, World!
</pre>
</div>
<hr/><div>Attachments: litex-85f.diff</div>]]></description>
<author>Dobrica Pavlinu&#x161;i&#x107;</author>
<category>FPGA</category>
<guid isPermaLink="true">https://saturn.ffzg.hr/rot13/index.cgi?cfu_playground</guid>
<pubDate>Fri, 03 Dec 2021 20:24:27 -0000</pubDate>
</item>
</channel>
</rss>