Course overview

From Simple Circuits to SoCs and Multi-Die Systems

42 modules
181 lessons
—
Part 1

Course Setup and the Incremental Ladder

  1. Course Setup and the Incremental LadderSign in

  2. Why "Wires to Systems"Sign in

  3. How to Use This CourseSign in

  4. The Incremental Ladder (Step 0 to Step 7)Sign in

  5. The Course LensesSign in

  6. Diagram Legend and Notation TypesSign in

Part 2

General

  1. Appendix A - Diagram Templates by StepSign in

  2. Appendix B - Technology Mapping GuideSign in

  3. Appendix C - Readiness AssessmentsSign in

  4. Appendix D - GlossarySign in

Part 3

Mental Models: Signals, Time, and Abstraction

  1. Mental Models: Signals, Time, and AbstractionSign in

  2. Signals and QuantitiesSign in

  3. Analog vs DigitalSign in

  4. Time as a First-Class ConstraintSign in

Part 4

Layers of Chip Design

  1. Layers of Chip DesignSign in

  2. The Layer StackSign in

  3. Leakage Between LayersSign in

  4. Why You Don't Skip RungsSign in

Part 5

Diagramming and Notation

  1. Diagramming and NotationSign in

  2. Schematics and Logic SymbolsSign in

  3. Timing DiagramsSign in

  4. Block, Bus, and NoC DiagramsSign in

  5. Floorplans and Layout SnippetsSign in

Part 6

Step 0 Circuits: Wires, Components, DC Behavior

  1. Step 0 Circuits: Wires, Components, DC BehaviorSign in

  2. Wires, Nodes, NetsSign in

  3. Ohm's Law in PracticeSign in

  4. Voltage Dividers and SwitchingSign in

Part 7

Step 0 Power Integrity: Power, Ground, and Noise

  1. Step 0 Power Integrity: Power, Ground, and NoiseSign in

  2. Power Rails and Ground ReferencesSign in

  3. Decoupling and TransientsSign in

  4. Noise and Crosstalk BasicsSign in

Part 8

Step 1 Logic Foundations: Levels, Gates, Boolean Algebra

  1. Step 1 Logic Foundations: Levels, Gates, Boolean AlgebraSign in

  2. Logic Levels and Thresholds: noise margins, transfer curves, and why "1" and "0" are rangesSign in

  3. Gates as Transfer Functions: AND/OR/NOT and the compositional view of logic networksSign in

  4. Boolean Algebra and Minimization: algebraic reduction and Karnaugh maps as area/timing toolsSign in

Part 9

Step 1 Combinational Blocks: Building Useful Logic

  1. Step 1 Combinational Blocks: Building Useful LogicSign in

  2. Encoders, Decoders, Multiplexers: selection as a structural pattern for datapathsSign in

  3. Adders and Arithmetic Basics: half/full adders, ripple-carry behavior, and propagation delay as a design constraintSign in

  4. Hazards and Glitches: why correct truth tables can still fail in time, and how to design against spurious transitionsSign in

Part 10

Step 1 Implementation: From Transistors to Standard Cells

  1. Step 1 Implementation: From Transistors to Standard CellsSign in

  2. CMOS Primitives: inverter, NAND, NOR at the transistor level, and why NAND/NOR dominate librariesSign in

  3. Logic Families and Trade-offs: CMOS vs TTL as an object lesson in power, speed, and interfacingSign in

  4. Standard Cell Libraries: abstraction boundaries, characterization, and why "library choice" shapes feasible timingSign in

Part 11

Step 2 State Elements: Latches, Flip-Flops, and Clocks

  1. Step 2 State Elements: Latches, Flip-Flops, and ClocksSign in

  2. Storage Elements: level-sensitive vs edge-triggered state and how sampling creates discrete timeSign in

  3. Setup/Hold and Metastability: why synchronizers exist and what they can and cannot guaranteeSign in

  4. Clock Generation and Distribution: clock trees as a physical network with architectural consequencesSign in

Part 12

Step 2 Controllers: FSMs and Control Logic

  1. Step 2 Controllers: FSMs and Control LogicSign in

  2. Moore vs Mealy Machines: output timing, stability, and why the distinction matters for interfacesSign in

  3. State Encoding Strategies: binary vs one-hot vs gray as a trade among area, speed, and verificationSign in

  4. From Spec to Verified FSM: designing control from requirements and proving coverage of corner casesSign in

Part 13

Step 2 Registers and Block Timing Closure

  1. Step 2 Registers and Block Timing ClosureSign in

  2. Registers and Register Files: structuring state and understanding read/write timingSign in

  3. Counters, Timers, and Sequencers: building time-based behavior and control rhythmsSign in

  4. Critical Paths and Timing Analysis: timing closure "by hand" at block scale and why pipelining is inevitableSign in

Part 14

Datapath Primitives: ALUs, Shifters, Multipliers

  1. Datapath Primitives: ALUs, Shifters, MultipliersSign in

  2. Fast Adders: carry lookahead and carry select as structured shortcuts around ripple delaySign in

  3. Shifts, Compares, and Multiplication: datapath operators and their area/timing/power profilesSign in

  4. Buses and Multiplexing: building datapath connectivity without drowning in wiringSign in

Part 15

Control Path vs Datapath

  1. Control Path vs DatapathSign in

  2. Micro-Operations and Control Signals: decomposing instructions into register transfersSign in

  3. Hardwired vs microcoded control: when sequencing is logic and when it is stored controlSign in

  4. Microsequencers and formats: how microinstructions represent control intent and constrain datapath designSign in

Part 16

Building a Simple Processor

  1. Building a Simple ProcessorSign in

  2. Defining a minimal ISA: choosing instructions that make hardware explainable and verifiableSign in

  3. Fetch-Decode-Execute in hardware: wiring the instruction cycle into time and controlSign in

  4. Integrating the core: unifying datapath and control into a coherent CPU with testable boundariesSign in

Part 17

Implementation Paths: FPGA vs ASIC

  1. Implementation Paths: FPGA vs ASICSign in

  2. FPGA mapping: LUTs, block RAM, DSP slices, and what "architecture" means on a programmable fabricSign in

  3. ASIC synthesis: standard cell mapping, constraints, and the cost of committing to siliconSign in

  4. Constraints and trade-offs: timing, area, and power trade space for a simple CPU in each flowSign in

Part 18

ISA, Microarchitecture, and Pipeline Basics

  1. ISA, Microarchitecture, and Pipeline BasicsSign in

  2. ISA vs Microarchitecture: what the contract is, and what the implementation is allowed to changeSign in

  3. Single-Cycle vs Multi-Cycle: where time goes and how it limits frequencySign in

  4. A Basic Pipeline: the 5-stage mental model and what it optimizesSign in

Part 19

Pipeline Hazards and Performance

  1. Pipeline Hazards and PerformanceSign in

  2. Hazard Taxonomy: data, control, and structural hazards as boundary conflictsSign in

  3. Forwarding and Stalls: paying complexity to buy throughputSign in

  4. Branch Prediction Basics: why speculation exists and what it costsSign in

Part 20

Memory Interface, MMUs, and Exceptions

  1. Memory Interface, MMUs, and ExceptionsSign in

  2. Load/Store and Cache-Line Transfers: how memory bandwidth becomes a microarchitectural limiterSign in

  3. Translation and TLBs: virtual memory support as both performance and protection machinerySign in

  4. Interrupts and Exceptions: precise state, context switching implications, and pipeline interactionSign in

Part 21

Clocking, Timing, and Floorplanning for a Single Core

  1. Clocking, Timing, and Floorplanning for a Single CoreSign in

  2. Clock Trees, Skew, and Jitter: why "clocking" is a distributed system on siliconSign in

  3. Static Timing Analysis: interpreting slack, constraints, and what timing closure provesSign in

  4. Floorplanning the Core: placing caches and I/O, managing wire delay, and aligning physical and logical boundariesSign in

Part 22

Why Multi-Core Exists

  1. Why Multi-Core ExistsSign in

  2. Power and Frequency Limits: why single-core scaling ended and what replaced itSign in

  3. SMP vs Manycore: shared-memory multiprocessors and throughput-oriented designsSign in

  4. Symmetric vs Asymmetric Designs: heterogeneity as a performance and power strategySign in

Part 23

On-Chip Interconnect Topologies

  1. On-Chip Interconnect TopologiesSign in

  2. Bus, Crossbar, Ring, Mesh: topologies as latency/bandwidth trade-offsSign in

  3. Scalability and Contention: how traffic patterns create hotspots and collapse throughputSign in

  4. QoS and Traffic Classes: fairness, isolation, and real-time constraints on-chipSign in

Part 24

Cache Coherence Protocols

  1. Cache Coherence ProtocolsSign in

  2. Coherence Goals and Invariants: what coherence preserves and why it is expensiveSign in

  3. Snooping vs Directory: scaling trade-offs and topology interactionsSign in

  4. Example Transactions and State Diagrams: walking through coherence events to reason about corner casesSign in

Part 25

Memory Consistency and Synchronization

  1. Memory Consistency and SynchronizationSign in

  2. Memory Models: strong vs weak ordering and what software can assumeSign in

  3. Fences and Atomics: how ordering is enforced in hardware and exposed to compilersSign in

  4. Locks and Advanced Primitives: hardware support for locks, semaphores, and transactional memorySign in

Part 26

Verification and Validation for Multi-Core

  1. Verification and Validation for Multi-CoreSign in

  2. State Explosion: why concurrency makes verification qualitatively harderSign in

  3. Formal vs Simulation: selecting tools that match the failure modes you fearSign in

  4. Post-Silicon Validation: bring-up, debug strategy, and learning from first siliconSign in

Part 27

What Is an SoC?

  1. What Is an SoC?Sign in

  2. SoC Building Blocks: cores, accelerators, memories, and peripheral IP as reusable unitsSign in

  3. Platform vs Application-Specific SoCs: architectural latitude and ecosystem constraintsSign in

  4. IP Reuse and Integration Risk: where integration fails and how boundaries reduce blast radiusSign in

Part 28

On-Chip Networks (NoCs) and System Topology

  1. On-Chip Networks (NoCs) and System TopologySign in

  2. Bus Fabrics vs Packet NoCs: why scaling forces a networked viewSign in

  3. Routing and Flow Control: congestion behavior, buffering, and latency determinismSign in

  4. Virtual Channels and Real-Time: prioritization as an isolation mechanismSign in

Part 29

Memory Subsystems in SoCs

  1. Memory Subsystems in SoCsSign in

  2. Caches vs Scratchpads: choosing managed vs explicit localitySign in

  3. DRAM Controllers and PHYs: timing constraints, training, and bandwidth ceilingsSign in

  4. Address Spaces and IOMMUs: isolation for devices and coherent integration trade-offsSign in

Part 30

Peripherals, I/O, and External Interfaces

  1. Peripherals, I/O, and External InterfacesSign in

  2. Peripheral Buses: why on-chip protocols exist and what they optimize forSign in

  3. High-Speed I/O Interfaces: storage, display, camera, and connectivity from a boundary perspectiveSign in

  4. Pins, SI, and Power: managing pin count, signal integrity, and I/O power budgetsSign in

Part 31

Power, Clock, and Reset Architecture

  1. Power, Clock, and Reset ArchitectureSign in

  2. Power Domains and Gating: turning blocks off safely without breaking system invariantsSign in

  3. Clock Domains and CDC: crossings as failure boundaries and the patterns that make them safeSign in

  4. Reset Distribution: sequencing, dependency graphs, and why reset is an integration problemSign in

Part 32

SoC Design Flow and Integration

  1. SoC Design Flow and IntegrationSign in

  2. Top-Level Integration: IP selection, interface contracts, and system assemblySign in

  3. From RTL to Signoff: synthesis, place-and-route, and closure on timing/power/signal integritySign in

  4. Tapeout Readiness and Bring-Up: what "ready" means and how first silicon changes your planSign in

Part 33

Packaging Fundamentals

  1. Packaging FundamentalsSign in

  2. Package Types: QFP, BGA, CSP, WLCSP as electrical and manufacturing choicesSign in

  3. Thermal, Mechanical, Electrical Constraints: what packages must dissipate, withstand, and preserveSign in

  4. Package PDNs: delivering power through the package and why inductance dominates transient behaviorSign in

Part 34

Chiplets, 2.5D, and 3D Integration

  1. Chiplets, 2.5D, and 3D IntegrationSign in

  2. Why Chiplets: yield, modularity, and mixing processes as economic and technical driversSign in

  3. Interposers, TSVs, and 3D Stacks: what extra dimensions buy you and what they costSign in

  4. On-Package Interconnects: standards, trade-offs, and modeling latency/bandwidth across diesSign in

Part 35

High-Speed Links and Off-Chip Interfaces

  1. High-Speed Links and Off-Chip InterfacesSign in

  2. SerDes and Differential Signaling: encoding, equalization, and the physics behind eye diagramsSign in

  3. Protocol Stacks Over Links: layering, reliability, and what is handled in hardware vs firmwareSign in

  4. Channel Modeling and SI Basics: why interconnect modeling is required to hit performance targetsSign in

Part 36

Boards, Systems, and Reference Designs

  1. Boards, Systems, and Reference DesignsSign in

  2. SoC on PCB: placement, routing, and layer stacks as constraints on signal integritySign in

  3. Integrating Memory and Power: PDNs on the board, connectors, and system-level stabilitySign in

  4. Reference Designs: turning an SoC into a reproducible system architecture for productsSign in

Part 37

Reliability, Testing, and Lifetime Concerns

  1. Reliability, Testing, and Lifetime ConcernsSign in

  2. Design for Test: scan chains, BIST, boundary scan, and what they enable post-manufactureSign in

  3. Burn-In and Aging: reliability testing and the mechanisms that cause lifetime driftSign in

  4. Field Failures and Monitoring: resilience strategies, telemetry limits, and feedback into redesignSign in

Part 38

Pipelining, Parallelism, and Performance Patterns

  1. Pipelining, Parallelism, and Performance PatternsSign in

  2. Parallelism Types: ILP, DLP, and TLP as distinct levers with different costsSign in

  3. Deep vs Shallow Pipelines: frequency, hazards, and verification complexitySign in

  4. Superscalar and Speculation: throughput gains and power/verification consequencesSign in

  5. Hardware Acceleration Patterns: vector units, GPUs, and AI accelerators as datapath specializationSign in

  6. Measuring Performance: CPI, bandwidth ceilings, and bottleneck-driven reasoningSign in

Part 39

Power Management Patterns

  1. Power Management PatternsSign in

  2. Clock Gating: reducing dynamic power without breaking timing assumptionsSign in

  3. Power Gating: domain shutdown, retention, and safe sequencingSign in

  4. DVFS: trading frequency/voltage for energy, and the stability limits it introducesSign in

  5. Energy vs Performance Trade-offs: modeling power, performance, and thermal envelopesSign in

  6. Power-Aware Architectures: low-power microarchitecture and SoC-level patternsSign in

Part 40

Timing, Synchronization, and Clocking Patterns

  1. Timing, Synchronization, and Clocking PatternsSign in

  2. Useful Skew and Multi-Cycle Paths: intentional timing as a design techniqueSign in

  3. GALS Systems: globally async, locally sync as a boundary strategySign in

  4. Synchronizers and CDC Patterns: metastability management and correctness boundariesSign in

  5. FIFOs and Elastic Buffers: rate matching between domains without global timing assumptionsSign in

  6. Clock Architecture for Complex Chips: robustness patterns for multi-domain clocks and resetsSign in

Part 41

Security in Hardware Architectures

  1. Security in Hardware ArchitecturesSign in

  2. Secure Boot and Roots of Trust: establishing an initial trusted stateSign in

  3. Trusted Execution and Isolation: privilege, enclaves, and what hardware can enforceSign in

  4. Secure Debug and Lifecycle: provisioning, debug access control, and decommissioningSign in

  5. Side-Channels: leakage sources and architecture-level mitigationsSign in

  6. Fault Injection and Robustness: threat models, detection, and hardening trade-offsSign in

Part 42

Verification, Validation, and Tool Flows

  1. Verification, Validation, and Tool FlowsSign in

  2. Simulation, Emulation, Formal, Prototyping: choosing the right tool for the failure modeSign in

  3. Coverage and Closure: what it means to "finish" verification and why it is never absoluteSign in

  4. Toolchain Overview: HDL entry, synthesis, place-and-route, signoff, and where each can break assumptionsSign in

  5. Constraints and Signoff Thinking: timing, power, SI, and DRC/LVS as distinct closure criteriaSign in

  6. Post-Silicon Validation Loops: bring-up, debug instrumentation, and learning cycles back into designSign in