Skip to main content

Computer Engineering

This section covers the hardware-level foundations of how computers work — from individual transistors up through the operating system.

Understanding these topics makes you a better engineer: you'll write faster code, reason clearly about performance bottlenecks, and understand why systems behave the way they do.

Topics

TopicWhat you'll learn
CPU Pipeline StagesHow modern CPUs overlap instruction execution for throughput
Cache HierarchyWhy memory latency varies 100,000× and how CPUs hide it
Branch PredictionHow CPUs speculatively fetch before knowing which path executes
  • Basic understanding of binary / hexadecimal numbers
  • Familiarity with variables and loops in any programming language

No prior hardware or assembly experience is required. All pages have interactive simulators.


Adding a New Topic

Each interactive page is built from three reusable primitives in src/components/ce/:

PrimitiveWhat it does
CEBlockOuter card with a title bar and labeled sub-sections
StepControlsPrev / Next / Reset buttons + cycle counter
ColorLegendRow of color swatches with hover tooltips

Steps

  1. Copy the component template

    src/components/ce/_template.js → src/components/MyTopicSimulator.js

    Fill in ITEMS, STEPS, and replace the placeholder visualization.

  2. Copy the page template

    computer-engineering/lesson-notes/_template.mdx → lesson-notes/my-topic.mdx

    Update the sidebar_position, title, import path, and prose sections.

  3. Add a navbar link in docusaurus.config.js under the Computer Eng dropdown:

    { to: '/computer-engineering/lesson-notes/my-topic', label: 'My Topic' }

That's the full workflow — the data definition and visualization logic are the only custom parts.

Common visualization patterns

PatternUse forKey trick
Space-time gridPipelines, schedulingCSS grid rows=entities, cols=time
Pyramid / hierarchyCache, memory, OSI modelwidth: ${20 + i*13}% per level
State machine nodesBranch predictor, MESI protocolFlex row of boxes + arrows, highlight active state
Timeline barsProcess scheduling, GanttAbsolute-positioned divs inside a fixed-height row