<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Module 10: Capstone Projects on Circuit Quest</title>
    <link>https://circuit.quest/courses/digital-design-verilog/module-10/</link>
    <description>Recent content in Module 10: Capstone Projects on Circuit Quest</description>
    <generator>Hugo</generator>
    <language>en-us</language>
    <lastBuildDate>Mon, 01 Jun 2026 00:00:00 +0000</lastBuildDate>
    <atom:link href="https://circuit.quest/courses/digital-design-verilog/module-10/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Project 1, Part 1: The Instruction Set</title>
      <link>https://circuit.quest/courses/digital-design-verilog/module-10/10-01-risc-processor-core/01-instruction-set-and-architecture/</link>
      <pubDate>Mon, 01 Jun 2026 00:00:00 +0000</pubDate>
      <guid>https://circuit.quest/courses/digital-design-verilog/module-10/10-01-risc-processor-core/01-instruction-set-and-architecture/</guid>
      <description>Every processor design starts with a decision that has nothing to do with gates: what can this machine do? Get the instruction set wrong and no amount of clever RTL saves you. A minimal, complete 8-bit ISA, designed deliberately.</description>
    </item>
    <item>
      <title>Project 1, Part 2: The Datapath</title>
      <link>https://circuit.quest/courses/digital-design-verilog/module-10/10-01-risc-processor-core/02-datapath-design/</link>
      <pubDate>Mon, 01 Jun 2026 00:00:00 +0000</pubDate>
      <guid>https://circuit.quest/courses/digital-design-verilog/module-10/10-01-risc-processor-core/02-datapath-design/</guid>
      <description>The datapath for this processor is not new hardware. It is the ALU from Module 2, the register file from Module 3 and the memory model from Module 7, wired together the way the ISA from the previous article requires.</description>
    </item>
    <item>
      <title>Project 1, Part 3: The Control Unit</title>
      <link>https://circuit.quest/courses/digital-design-verilog/module-10/10-01-risc-processor-core/03-control-unit-and-fsm/</link>
      <pubDate>Mon, 01 Jun 2026 00:00:00 +0000</pubDate>
      <guid>https://circuit.quest/courses/digital-design-verilog/module-10/10-01-risc-processor-core/03-control-unit-and-fsm/</guid>
      <description>Every mux select the previous article left undriven becomes one output of one FSM, in the two-block style from Section 5.6. This is where fetch, decode and execute stop being three words in a spec and become three states.</description>
    </item>
    <item>
      <title>Project 1, Part 4: Assembly and Verification</title>
      <link>https://circuit.quest/courses/digital-design-verilog/module-10/10-01-risc-processor-core/04-full-implementation-and-testbench/</link>
      <pubDate>Mon, 01 Jun 2026 00:00:00 +0000</pubDate>
      <guid>https://circuit.quest/courses/digital-design-verilog/module-10/10-01-risc-processor-core/04-full-implementation-and-testbench/</guid>
      <description>Datapath and control unit wired into one processor, then the hardest part of any processor project: proving it is right, by checking its results against an independent software model of the same program rather than by eyeballing a waveform.</description>
    </item>
    <item>
      <title>Project 2, Part 1: The UART Protocol</title>
      <link>https://circuit.quest/courses/digital-design-verilog/module-10/10-02-uart-controller/01-uart-protocol-and-specification/</link>
      <pubDate>Mon, 01 Jun 2026 00:00:00 +0000</pubDate>
      <guid>https://circuit.quest/courses/digital-design-verilog/module-10/10-02-uart-controller/01-uart-protocol-and-specification/</guid>
      <description>UART is the protocol referenced constantly since Module 3 without its timing ever being pinned down. Before any RTL, this article does that: frame format, bit timing, and the edge cases a real implementation has to handle.</description>
    </item>
    <item>
      <title>Project 2, Part 2: The Baud Rate Generator</title>
      <link>https://circuit.quest/courses/digital-design-verilog/module-10/10-02-uart-controller/02-baud-rate-generator/</link>
      <pubDate>Mon, 01 Jun 2026 00:00:00 +0000</pubDate>
      <guid>https://circuit.quest/courses/digital-design-verilog/module-10/10-02-uart-controller/02-baud-rate-generator/</guid>
      <description>One parameterized modulo-N counter from Section 3.5, sized to turn a system clock into UART bit timing, and for the receiver a second tick running 16 times faster to give the centre-sampling strategy real resolution.</description>
    </item>
    <item>
      <title>Project 2, Part 3: The Transmitter and Receiver FSMs</title>
      <link>https://circuit.quest/courses/digital-design-verilog/module-10/10-02-uart-controller/03-transmitter-and-receiver-fsms/</link>
      <pubDate>Mon, 01 Jun 2026 00:00:00 +0000</pubDate>
      <guid>https://circuit.quest/courses/digital-design-verilog/module-10/10-02-uart-controller/03-transmitter-and-receiver-fsms/</guid>
      <description>The transmitter is the Section 3.4 PISO shift register wearing a UART frame. The receiver is the harder half: an FSM that has to find a start bit it was never told was coming, then sample eight data bits with no shared clock to help.</description>
    </item>
    <item>
      <title>Project 2, Part 4: The Loopback Test</title>
      <link>https://circuit.quest/courses/digital-design-verilog/module-10/10-02-uart-controller/04-full-implementation-and-testbench/</link>
      <pubDate>Mon, 01 Jun 2026 00:00:00 +0000</pubDate>
      <guid>https://circuit.quest/courses/digital-design-verilog/module-10/10-02-uart-controller/04-full-implementation-and-testbench/</guid>
      <description>Wire the transmitter&amp;rsquo;s output to the receiver&amp;rsquo;s input, send a byte, and check what comes out. Simple to describe, and exactly the kind of test that benefits from Module 9&amp;rsquo;s randomization to build real confidence rather than proving one lucky byte works.</description>
    </item>
    <item>
      <title>Project 3, Part 1: SPI and Its Four Modes</title>
      <link>https://circuit.quest/courses/digital-design-verilog/module-10/10-03-spi-master-controller/01-spi-protocol-and-modes/</link>
      <pubDate>Mon, 01 Jun 2026 00:00:00 +0000</pubDate>
      <guid>https://circuit.quest/courses/digital-design-verilog/module-10/10-03-spi-master-controller/01-spi-protocol-and-modes/</guid>
      <description>UART avoided a shared clock and paid for it with fragile timing. SPI shares a clock and gets solid timing in return, but that clock has two independent configuration choices, and getting either wrong means both sides sample garbage.</description>
    </item>
    <item>
      <title>Project 3, Part 2: The Shift Register and Chip Select</title>
      <link>https://circuit.quest/courses/digital-design-verilog/module-10/10-03-spi-master-controller/02-shift-register-datapath-and-cs/</link>
      <pubDate>Mon, 01 Jun 2026 00:00:00 +0000</pubDate>
      <guid>https://circuit.quest/courses/digital-design-verilog/module-10/10-03-spi-master-controller/02-shift-register-datapath-and-cs/</guid>
      <description>SPI transmits and receives at the same time, every clock edge, which means one shift register, wired the right way, does the work Section 3.4 split across separate PISO and SIPO structures for UART.</description>
    </item>
    <item>
      <title>Project 3, Part 3: The Mode-Configurable Master, Verified</title>
      <link>https://circuit.quest/courses/digital-design-verilog/module-10/10-03-spi-master-controller/03-full-implementation-and-testbench/</link>
      <pubDate>Mon, 01 Jun 2026 00:00:00 +0000</pubDate>
      <guid>https://circuit.quest/courses/digital-design-verilog/module-10/10-03-spi-master-controller/03-full-implementation-and-testbench/</guid>
      <description>The controller FSM that generates SCLK for whichever CPOL/CPHA combination is configured, and a loopback test that proves all four modes independently, because a test that checks one mode has verified a quarter of the claim.</description>
    </item>
    <item>
      <title>Project 4, Part 1: What an SRAM Datasheet Demands</title>
      <link>https://circuit.quest/courses/digital-design-verilog/module-10/10-04-sram-controller/01-sram-timing-and-specification/</link>
      <pubDate>Mon, 01 Jun 2026 00:00:00 +0000</pubDate>
      <guid>https://circuit.quest/courses/digital-design-verilog/module-10/10-04-sram-controller/01-sram-timing-and-specification/</guid>
      <description>The first project where the datapath, the memory itself, is simple, and the whole engineering challenge is timing discipline: reading a memory datasheet&amp;rsquo;s setup and hold demands and translating them, correctly, into an FSM&amp;rsquo;s cycle count.</description>
    </item>
    <item>
      <title>Project 4, Part 2: An FSM Built From Wait States</title>
      <link>https://circuit.quest/courses/digital-design-verilog/module-10/10-04-sram-controller/02-address-decoding-and-fsm/</link>
      <pubDate>Mon, 01 Jun 2026 00:00:00 +0000</pubDate>
      <guid>https://circuit.quest/courses/digital-design-verilog/module-10/10-04-sram-controller/02-address-decoding-and-fsm/</guid>
      <description>Every other FSM in this course sequenced distinct operations. This one is unusual in an instructive way: most of its states exist to count cycles, enforcing the datasheet timing from the previous article.</description>
    </item>
    <item>
      <title>Project 4, Part 3: A Testbench That Enforces the Timing</title>
      <link>https://circuit.quest/courses/digital-design-verilog/module-10/10-04-sram-controller/03-full-implementation-and-testbench/</link>
      <pubDate>Mon, 01 Jun 2026 00:00:00 +0000</pubDate>
      <guid>https://circuit.quest/courses/digital-design-verilog/module-10/10-04-sram-controller/03-full-implementation-and-testbench/</guid>
      <description>A memory model that always returns correct data, however early you read it, lets a broken controller pass every test. This article builds the alternative: a model that returns X if you cheat, and a testbench that confirms the controller never does.</description>
    </item>
    <item>
      <title>Project 5, Part 1: AXI4-Lite, Five Independent Handshakes</title>
      <link>https://circuit.quest/courses/digital-design-verilog/module-10/10-05-axi4-lite-slave/01-axi4-lite-protocol-basics/</link>
      <pubDate>Mon, 01 Jun 2026 00:00:00 +0000</pubDate>
      <guid>https://circuit.quest/courses/digital-design-verilog/module-10/10-05-axi4-lite-slave/01-axi4-lite-protocol-basics/</guid>
      <description>Every bus protocol in real SoC design descends from the idea introduced here: independent, decoupled ready/valid channels rather than one monolithic transaction. AXI4-Lite is where you meet it in its standardized form.</description>
    </item>
    <item>
      <title>Project 5, Part 2: A Register File Behind Five Handshakes</title>
      <link>https://circuit.quest/courses/digital-design-verilog/module-10/10-05-axi4-lite-slave/02-register-file-and-handshake-fsm/</link>
      <pubDate>Mon, 01 Jun 2026 00:00:00 +0000</pubDate>
      <guid>https://circuit.quest/courses/digital-design-verilog/module-10/10-05-axi4-lite-slave/02-register-file-and-handshake-fsm/</guid>
      <description>The register file behind this interface is nothing new: Section 3.6&amp;rsquo;s storage, addressed and gated by the five-channel handshake logic Part 1 specified. The new engineering is managing five channels&amp;rsquo; worth of state at once.</description>
    </item>
    <item>
      <title>Project 5, Part 3: The Complete Slave, and the End of the Course</title>
      <link>https://circuit.quest/courses/digital-design-verilog/module-10/10-05-axi4-lite-slave/03-full-implementation-and-testbench/</link>
      <pubDate>Mon, 01 Jun 2026 00:00:00 +0000</pubDate>
      <guid>https://circuit.quest/courses/digital-design-verilog/module-10/10-05-axi4-lite-slave/03-full-implementation-and-testbench/</guid>
      <description>The complete AXI4-Lite slave, verified with a directed test, a randomized independent-timing test, and a concurrent assertion checking the ordering rule from Part 1. Then a look back over what ten modules built toward.</description>
    </item>
  </channel>
</rss>
