<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>SpinalHDL on Giovanni Nicosia</title>
    <link>https://giovanninicosia.dev/tags/spinalhdl/</link>
    <description>Recent content in SpinalHDL on Giovanni Nicosia</description>
    <generator>Hugo</generator>
    <language>en</language>
    <lastBuildDate>Fri, 27 Mar 2026 00:00:00 +0200</lastBuildDate>
    <atom:link href="https://giovanninicosia.dev/tags/spinalhdl/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Reproducible TRNG Integration in a RISC-V SoC</title>
      <link>https://giovanninicosia.dev/projects/thesis/</link>
      <pubDate>Fri, 27 Mar 2026 00:00:00 +0200</pubDate>
      <guid>https://giovanninicosia.dev/projects/thesis/</guid>
      <description>&lt;p&gt;This master&amp;rsquo;s thesis was developed in the context of the &lt;strong&gt;VE-HEP&lt;/strong&gt; (Versatile Hardware Execution Platform) project, a research initiative aimed at building a flexible and secure RISC-V-based SoC. The core contribution is the integration of a physical True Random Number Generator (TRNG) — designed following the &lt;strong&gt;OpenTRNG&lt;/strong&gt; open-source framework — directly into the SoC&amp;rsquo;s peripheral bus.&lt;/p&gt;&#xA;&lt;p&gt;The TRNG IP is exposed to the processor via an &lt;strong&gt;APB3 wrapper&lt;/strong&gt; written in SpinalHDL, with a well-defined register map that allows firmware to configure the entropy source, read raw samples, and monitor health-test status. A lightweight C firmware driver was implemented to exercise the peripheral and validated end-to-end through functional simulation. The hardware description was also cross-verified at the Verilog netlist level to ensure correctness after synthesis.&lt;/p&gt;</description>
    </item>
  </channel>
</rss>
