<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Module 3: Sequential Circuit Design on Circuit Quest</title>
    <link>https://circuit.quest/courses/digital-design-verilog/module-03/</link>
    <description>Recent content in Module 3: Sequential Circuit Design on Circuit Quest</description>
    <generator>Hugo</generator>
    <language>en-us</language>
    <lastBuildDate>Sun, 01 Mar 2026 00:00:00 +0000</lastBuildDate>
    <atom:link href="https://circuit.quest/courses/digital-design-verilog/module-03/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>How Silicon Remembers</title>
      <link>https://circuit.quest/courses/digital-design-verilog/module-03/03-01-latches-flip-flops/01-the-memory-problem/</link>
      <pubDate>Sun, 01 Mar 2026 00:00:00 +0000</pubDate>
      <guid>https://circuit.quest/courses/digital-design-verilog/module-03/03-01-latches-flip-flops/01-the-memory-problem/</guid>
      <description>Why combinational circuits cannot remember, and how one feedback connection gives a circuit two stable states and therefore one bit of memory.</description>
    </item>
    <item>
      <title>The SR Latch</title>
      <link>https://circuit.quest/courses/digital-design-verilog/module-03/03-01-latches-flip-flops/02-sr-latch/</link>
      <pubDate>Sun, 01 Mar 2026 00:00:00 +0000</pubDate>
      <guid>https://circuit.quest/courses/digital-design-verilog/module-03/03-01-latches-flip-flops/02-sr-latch/</guid>
      <description>Two NAND gates with their outputs crossed: set, reset, hold, and the forbidden state, with a switch debouncer as the application.</description>
    </item>
    <item>
      <title>The D Latch</title>
      <link>https://circuit.quest/courses/digital-design-verilog/module-03/03-01-latches-flip-flops/03-d-latch/</link>
      <pubDate>Sun, 01 Mar 2026 00:00:00 +0000</pubDate>
      <guid>https://circuit.quest/courses/digital-design-verilog/module-03/03-01-latches-flip-flops/03-d-latch/</guid>
      <description>One data input and an enable: the D latch removes the forbidden state, but its transparency causes a timing problem that leads to the flip-flop.</description>
    </item>
    <item>
      <title>The D Flip-Flop</title>
      <link>https://circuit.quest/courses/digital-design-verilog/module-03/03-01-latches-flip-flops/04-d-flip-flop/</link>
      <pubDate>Sun, 01 Mar 2026 00:00:00 +0000</pubDate>
      <guid>https://circuit.quest/courses/digital-design-verilog/module-03/03-01-latches-flip-flops/04-d-flip-flop/</guid>
      <description>Two D latches with opposite enables make an edge-triggered flip-flop, the element every synchronous design is built from. Also: synchronous and asynchronous reset, and the enable input.</description>
    </item>
    <item>
      <title>JK and T Flip-Flops</title>
      <link>https://circuit.quest/courses/digital-design-verilog/module-03/03-01-latches-flip-flops/05-jk-t-flip-flops/</link>
      <pubDate>Sun, 01 Mar 2026 00:00:00 +0000</pubDate>
      <guid>https://circuit.quest/courses/digital-design-verilog/module-03/03-01-latches-flip-flops/05-jk-t-flip-flops/</guid>
      <description>The JK and T flip-flops, their characteristic equations, how to build them from a D flip-flop, and the excitation tables that make counter and state machine design systematic.</description>
    </item>
    <item>
      <title>Setup, Hold and Clock-to-Q</title>
      <link>https://circuit.quest/courses/digital-design-verilog/module-03/03-01-latches-flip-flops/06-timing-parameters/</link>
      <pubDate>Sun, 01 Mar 2026 00:00:00 +0000</pubDate>
      <guid>https://circuit.quest/courses/digital-design-verilog/module-03/03-01-latches-flip-flops/06-timing-parameters/</guid>
      <description>The four timing parameters of a flip-flop, the two constraint equations they give, maximum clock frequency, and why timing has to be met at every process, voltage and temperature corner.</description>
    </item>
    <item>
      <title>Synchronous and Asynchronous Design</title>
      <link>https://circuit.quest/courses/digital-design-verilog/module-03/03-02-synchronous-asynchronous/01-two-worlds-of-sequential-design/</link>
      <pubDate>Sun, 01 Mar 2026 00:00:00 +0000</pubDate>
      <guid>https://circuit.quest/courses/digital-design-verilog/module-03/03-02-synchronous-asynchronous/01-two-worlds-of-sequential-design/</guid>
      <description>The two ways a sequential circuit can decide when to change state, why the industry settled on the clocked one, and the contract a synchronous design has to keep.</description>
    </item>
    <item>
      <title>Clock Signals and How They Are Distributed</title>
      <link>https://circuit.quest/courses/digital-design-verilog/module-03/03-02-synchronous-asynchronous/02-clock-signals-and-distribution/</link>
      <pubDate>Sun, 01 Mar 2026 00:00:00 +0000</pubDate>
      <guid>https://circuit.quest/courses/digital-design-verilog/module-03/03-02-synchronous-asynchronous/02-clock-signals-and-distribution/</guid>
      <description>What makes a good clock, how it is generated from a crystal and a PLL, and how a clock tree delivers it to millions of flip-flops with only a few tens of picoseconds of skew.</description>
    </item>
    <item>
      <title>The Synchronous Design Discipline</title>
      <link>https://circuit.quest/courses/digital-design-verilog/module-03/03-02-synchronous-asynchronous/03-synchronous-design-discipline/</link>
      <pubDate>Sun, 01 Mar 2026 00:00:00 +0000</pubDate>
      <guid>https://circuit.quest/courses/digital-design-verilog/module-03/03-02-synchronous-asynchronous/03-synchronous-design-discipline/</guid>
      <description>Six rules that keep a design analysable, and the specific failure each one prevents: state in flip-flops, no combinational loops, synchronised inputs, managed resets, proper clock gating.</description>
    </item>
    <item>
      <title>How Asynchronous Designs Fail</title>
      <link>https://circuit.quest/courses/digital-design-verilog/module-03/03-02-synchronous-asynchronous/04-dangers-of-asynchronous-design/</link>
      <pubDate>Sun, 01 Mar 2026 00:00:00 +0000</pubDate>
      <guid>https://circuit.quest/courses/digital-design-verilog/module-03/03-02-synchronous-asynchronous/04-dangers-of-asynchronous-design/</guid>
      <description>Critical races, essential hazards and the reset release problem: the failures that appear when state changes are not serialised by a clock.</description>
    </item>
    <item>
      <title>Metastability</title>
      <link>https://circuit.quest/courses/digital-design-verilog/module-03/03-02-synchronous-asynchronous/05-metastability/</link>
      <pubDate>Sun, 01 Mar 2026 00:00:00 +0000</pubDate>
      <guid>https://circuit.quest/courses/digital-design-verilog/module-03/03-02-synchronous-asynchronous/05-metastability/</guid>
      <description>Every flip-flop can get stuck between 0 and 1. It cannot be prevented, only made rare: the physics, the MTBF calculation, and the synchroniser.</description>
    </item>
    <item>
      <title>What a State Machine Is</title>
      <link>https://circuit.quest/courses/digital-design-verilog/module-03/03-03-finite-state-machines/01-what-is-a-state-machine/</link>
      <pubDate>Sun, 01 Mar 2026 00:00:00 +0000</pubDate>
      <guid>https://circuit.quest/courses/digital-design-verilog/module-03/03-03-finite-state-machines/01-what-is-a-state-machine/</guid>
      <description>The formal definition of a finite state machine, the hardware it maps onto, and where you meet them, from traffic lights to the control unit of a processor.</description>
    </item>
    <item>
      <title>Moore and Mealy Machines</title>
      <link>https://circuit.quest/courses/digital-design-verilog/module-03/03-03-finite-state-machines/02-mealy-vs-moore/</link>
      <pubDate>Sun, 01 Mar 2026 00:00:00 +0000</pubDate>
      <guid>https://circuit.quest/courses/digital-design-verilog/module-03/03-03-finite-state-machines/02-mealy-vs-moore/</guid>
      <description>The single structural difference between Moore and Mealy machines, and what it does to state count, output timing and glitches.</description>
    </item>
    <item>
      <title>State Diagrams and State Tables</title>
      <link>https://circuit.quest/courses/digital-design-verilog/module-03/03-03-finite-state-machines/03-state-diagrams-tables/</link>
      <pubDate>Sun, 01 Mar 2026 00:00:00 +0000</pubDate>
      <guid>https://circuit.quest/courses/digital-design-verilog/module-03/03-03-finite-state-machines/03-state-diagrams-tables/</guid>
      <description>The two notations for a state machine, the conventions for drawing one, a sequence detector worked out state by state, and the mistakes to look for.</description>
    </item>
    <item>
      <title>State Encoding</title>
      <link>https://circuit.quest/courses/digital-design-verilog/module-03/03-03-finite-state-machines/04-state-encoding/</link>
      <pubDate>Sun, 01 Mar 2026 00:00:00 +0000</pubDate>
      <guid>https://circuit.quest/courses/digital-design-verilog/module-03/03-03-finite-state-machines/04-state-encoding/</guid>
      <description>Binary, one-hot, Gray and output-coded state assignments, what each does to area and speed, and why FPGA tools default to one-hot.</description>
    </item>
    <item>
      <title>The FSM Design Flow</title>
      <link>https://circuit.quest/courses/digital-design-verilog/module-03/03-03-finite-state-machines/05-fsm-design-flow/</link>
      <pubDate>Sun, 01 Mar 2026 00:00:00 +0000</pubDate>
      <guid>https://circuit.quest/courses/digital-design-verilog/module-03/03-03-finite-state-machines/05-fsm-design-flow/</guid>
      <description>Eight steps from a written specification to a gate-level state machine, with a small example carried all the way through and state minimisation by the implication table.</description>
    </item>
    <item>
      <title>Worked Example: A Traffic Light Controller</title>
      <link>https://circuit.quest/courses/digital-design-verilog/module-03/03-03-finite-state-machines/06-fsm-worked-example-traffic-light/</link>
      <pubDate>Sun, 01 Mar 2026 00:00:00 +0000</pubDate>
      <guid>https://circuit.quest/courses/digital-design-verilog/module-03/03-03-finite-state-machines/06-fsm-worked-example-traffic-light/</guid>
      <description>The eight-step flow applied to a traffic light with a pedestrian request, from specification to next-state equations and a simulated cycle.</description>
    </item>
    <item>
      <title>Worked Example: A Serial Pattern Detector</title>
      <link>https://circuit.quest/courses/digital-design-verilog/module-03/03-03-finite-state-machines/07-fsm-worked-example-serial-detector/</link>
      <pubDate>Sun, 01 Mar 2026 00:00:00 +0000</pubDate>
      <guid>https://circuit.quest/courses/digital-design-verilog/module-03/03-03-finite-state-machines/07-fsm-worked-example-serial-detector/</guid>
      <description>A detector for the bit sequence 1011 in a serial stream, with overlapping matches, worked through to equations, plus the Mealy version and a simulation.</description>
    </item>
    <item>
      <title>Worked Example: A Vending Machine Controller</title>
      <link>https://circuit.quest/courses/digital-design-verilog/module-03/03-03-finite-state-machines/08-fsm-worked-example-vending-machine/</link>
      <pubDate>Sun, 01 Mar 2026 00:00:00 +0000</pubDate>
      <guid>https://circuit.quest/courses/digital-design-verilog/module-03/03-03-finite-state-machines/08-fsm-worked-example-vending-machine/</guid>
      <description>A vending machine done as a pure state machine and then as a small state machine with a datapath, to show where one approach stops scaling and the other begins.</description>
    </item>
    <item>
      <title>Registers</title>
      <link>https://circuit.quest/courses/digital-design-verilog/module-03/03-04-registers-shift-registers/01-registers-parallel-load/</link>
      <pubDate>Sun, 01 Mar 2026 00:00:00 +0000</pubDate>
      <guid>https://circuit.quest/courses/digital-design-verilog/module-03/03-04-registers-shift-registers/01-registers-parallel-load/</guid>
      <description>N flip-flops on one clock make a register. Adding enable, clear and load turns it into the block that every datapath is made of.</description>
    </item>
    <item>
      <title>Shift Registers</title>
      <link>https://circuit.quest/courses/digital-design-verilog/module-03/03-04-registers-shift-registers/02-shift-register-types/</link>
      <pubDate>Sun, 01 Mar 2026 00:00:00 +0000</pubDate>
      <guid>https://circuit.quest/courses/digital-design-verilog/module-03/03-04-registers-shift-registers/02-shift-register-types/</guid>
      <description>A chain of flip-flops that moves data one place per clock, in its four forms, and how they turn a serial wire into a byte and back.</description>
    </item>
    <item>
      <title>Shift Register Applications</title>
      <link>https://circuit.quest/courses/digital-design-verilog/module-03/03-04-registers-shift-registers/03-shift-register-applications/</link>
      <pubDate>Sun, 01 Mar 2026 00:00:00 +0000</pubDate>
      <guid>https://circuit.quest/courses/digital-design-verilog/module-03/03-04-registers-shift-registers/03-shift-register-applications/</guid>
      <description>Five things a chain of flip-flops does in real designs: delay lines, UART frames, ring counters, linear-feedback sequences and CRCs, and the scan chains used to test chips.</description>
    </item>
    <item>
      <title>The Universal Shift Register</title>
      <link>https://circuit.quest/courses/digital-design-verilog/module-03/03-04-registers-shift-registers/04-universal-shift-register/</link>
      <pubDate>Sun, 01 Mar 2026 00:00:00 +0000</pubDate>
      <guid>https://circuit.quest/courses/digital-design-verilog/module-03/03-04-registers-shift-registers/04-universal-shift-register/</guid>
      <description>Hold, shift right, shift left and parallel load in one register with a two-bit mode input: the design, the 74HC194 that implements it, and how to cascade them.</description>
    </item>
    <item>
      <title>The Ripple Counter</title>
      <link>https://circuit.quest/courses/digital-design-verilog/module-03/03-05-counters/01-ripple-counters/</link>
      <pubDate>Sun, 01 Mar 2026 00:00:00 +0000</pubDate>
      <guid>https://circuit.quest/courses/digital-design-verilog/module-03/03-05-counters/01-ripple-counters/</guid>
      <description>The cheapest counter there is, a chain of toggle flip-flops, and the timing problem that makes it unsuitable for most of what counters are used for.</description>
    </item>
    <item>
      <title>Synchronous Counters</title>
      <link>https://circuit.quest/courses/digital-design-verilog/module-03/03-05-counters/02-synchronous-counters/</link>
      <pubDate>Sun, 01 Mar 2026 00:00:00 +0000</pubDate>
      <guid>https://circuit.quest/courses/digital-design-verilog/module-03/03-05-counters/02-synchronous-counters/</guid>
      <description>Clock every flip-flop from the same clock and compute the toggles in advance. Enable, clear, load, terminal count for cascading, and the fact that a counter is an adder.</description>
    </item>
    <item>
      <title>Modulo-N Counters</title>
      <link>https://circuit.quest/courses/digital-design-verilog/module-03/03-05-counters/03-modulo-n-counters/</link>
      <pubDate>Sun, 01 Mar 2026 00:00:00 +0000</pubDate>
      <guid>https://circuit.quest/courses/digital-design-verilog/module-03/03-05-counters/03-modulo-n-counters/</guid>
      <description>Counting to 6, 10, 12 or 60 with a binary counter: synchronous clear on N-1, preload, or a custom state machine, and why decoding N with an asynchronous reset is a mistake.</description>
    </item>
    <item>
      <title>Up/Down, Gray, Johnson and Ring Counters</title>
      <link>https://circuit.quest/courses/digital-design-verilog/module-03/03-05-counters/04-up-down-and-special-counters/</link>
      <pubDate>Sun, 01 Mar 2026 00:00:00 +0000</pubDate>
      <guid>https://circuit.quest/courses/digital-design-verilog/module-03/03-05-counters/04-up-down-and-special-counters/</guid>
      <description>Four counters for specific jobs: up/down for bidirectional counting, Gray code for pointers that cross clock domains, Johnson for cheap decoding and phase generation, ring for one-hot sequencing.</description>
    </item>
    <item>
      <title>Counters at Work</title>
      <link>https://circuit.quest/courses/digital-design-verilog/module-03/03-05-counters/05-counter-applications/</link>
      <pubDate>Sun, 01 Mar 2026 00:00:00 +0000</pubDate>
      <guid>https://circuit.quest/courses/digital-design-verilog/module-03/03-05-counters/05-counter-applications/</guid>
      <description>Five things counters do in real designs: divide a clock, generate PWM, run a stopwatch, walk through memory addresses, and time the bits of a UART.</description>
    </item>
    <item>
      <title>Register Files</title>
      <link>https://circuit.quest/courses/digital-design-verilog/module-03/03-06-memory-elements/01-register-files/</link>
      <pubDate>Sun, 01 Mar 2026 00:00:00 +0000</pubDate>
      <guid>https://circuit.quest/courses/digital-design-verilog/module-03/03-06-memory-elements/01-register-files/</guid>
      <description>Thirty-two registers, two reads and a write every cycle: a decoder on the write side, a mux per read port, and what happens when the same register is read and written at once.</description>
    </item>
    <item>
      <title>SRAM</title>
      <link>https://circuit.quest/courses/digital-design-verilog/module-03/03-06-memory-elements/02-sram-architecture/</link>
      <pubDate>Sun, 01 Mar 2026 00:00:00 +0000</pubDate>
      <guid>https://circuit.quest/courses/digital-design-verilog/module-03/03-06-memory-elements/02-sram-architecture/</guid>
      <description>The six-transistor SRAM cell, how it is read and written through a pair of bitlines, and how millions of them are organised into an array with decoders and sense amplifiers.</description>
    </item>
    <item>
      <title>DRAM and the Memory Hierarchy</title>
      <link>https://circuit.quest/courses/digital-design-verilog/module-03/03-06-memory-elements/03-dram-and-memory-hierarchy/</link>
      <pubDate>Sun, 01 Mar 2026 00:00:00 +0000</pubDate>
      <guid>https://circuit.quest/courses/digital-design-verilog/module-03/03-06-memory-elements/03-dram-and-memory-hierarchy/</guid>
      <description>The one-transistor DRAM cell, why reading it destroys the data, why it needs refreshing, the row buffer and the timing parameters, and where it all sits in the memory hierarchy.</description>
    </item>
    <item>
      <title>ROM and Lookup Tables</title>
      <link>https://circuit.quest/courses/digital-design-verilog/module-03/03-06-memory-elements/04-rom-and-lookup-tables/</link>
      <pubDate>Sun, 01 Mar 2026 00:00:00 +0000</pubDate>
      <guid>https://circuit.quest/courses/digital-design-verilog/module-03/03-06-memory-elements/04-rom-and-lookup-tables/</guid>
      <description>A ROM is a truth table in hardware. Mask ROM, PROM, EPROM, EEPROM and flash, the FPGA lookup table as a 16-by-1 ROM, and a look back over Module 3.</description>
    </item>
  </channel>
</rss>
