Learning Tracks
Digital
Design
Write combinational and clocked logic. Simulate each design and inspect the gates it becomes.
What hardware does this become?
RTL Design
Write the RTL the chip is made of: combinational and clocked logic that synthesizes, resets, state machines, pipelines, FIFOs and clock domain crossing, each design simulated and synthesized on the page.
48 lessons-
R1
From Spec to Gates
8 lessonsCombinational logic that synthesizes: what survives synthesis and what vanishes, the design brief, the latch an incomplete assignment creates, widths and sign, case statements and the logic they become, arithmetic that fits, parameters and generate, and an ALU built to a budget.
-
R2
Registers, Resets and Time
7 lessonsClocked logic that synthesizes: what a flop is and why registers use nonblocking assignments, reset assertion and release and what RTL cannot show, enables instead of gated clocks, counters and the wrap, the three circuits for synchronizing, debouncing and detecting an edge, load and clear priority, and a programmable timer built from a brief.
-
R3
Finite State Machines
6 lessonsState machines that synthesize: Moore and Mealy outputs, state encodings and the default arm, handshakes without combinational loops, sequence detectors that overlap, a protocol controller for APB on the Protocols track's checker, and a UART transmitter with a baud counter.
-
R4
Timing and Pipelining
7 lessonsWhy levels of logic bound the clock and what this flow can and cannot measure, latency against throughput and registered outputs, pipelining a datapath with a valid pipe, stalls and the skid buffer, multipliers and MACs on the long path, retiming by hand, and a pipelined CRC engine built to a levels budget.
- R4.1Clock period, setup and hold in one picture
- R4.2Latency, throughput and registered outputs
- R4.3Pipelining a datapath and the valid pipe
- R4.4Stalls, backpressure and the skid buffer
- R4.5Multipliers, MACs and the long path
- R4.6Where the register goes: retiming by hand
- R4.7Capstone: a pipelined CRC engine with a levels budget
-
R5
Memories, FIFOs and Arbiters
6 lessonsMemories and what they become in gates, the synchronous FIFO the verification tracks test, FIFO depth from burst arithmetic, round-robin and priority arbiters, the cost of muxes and crossbars at scale, and a two-input packet merger built from all of them.
-
R6
Clock Domain Crossing
6 lessonsMetastability and what a simulation can show, the two-flop synchronizer and what it cannot carry, pulse, toggle and handshake synchronizers, Gray codes and the asynchronous FIFO, resetting two domains, and the async FIFO with an assertion suite bound to it.
-
R7
RTL That Others Can Read and Verify
4 lessonsInterfaces and modports from the design side, assertions inside RTL and the guards that keep them out of synthesis, coding for review and debug with a lint-clean design, and the Verilog-2001 spellings a designer meets in older code.
-
R8
Capstones
4 lessonsFour designs built from everything before: an APB peripheral with a register map on the Protocols track's checker, a UART with FIFOs and a synchronizer, an AXI-Stream filter with a skid buffer, and the fault list, stimulus and checker that break a design on purpose.
No lessons match that search. Try a shorter topic or clear the search.