



Feb 12 · 29 min read · Arithmetic is the beating heart of every processor. Whether your machine is rendering 3-D graphics, training a neural network, or simply incrementing a loop counter, the ALU (Arithmetic Logic Unit) is doing the heavy lifting. In this deep-dive, I wan...
Join discussionFeb 3 · 8 min read · Introduction In the previous two posts, I explored why execution-driven simulation is essential for modeling modern processors and analyzed Issue #14 from the Olympia repository, which calls for adding execution-driven support. That discussion reveal...
Join discussion
Feb 2 · 23 min read · Table of Contents Introduction What is a Compiler? The Compilation Process Overview Phases of a Compiler Lexical Analysis (Scanner) Syntax Analysis (Parser) Semantic Analysis Intermediate Code Generation Code Optimization Code Generation S...
Join discussion
Feb 2 · 16 min read · In this article, I'll go over how to design a pipelined processor. The processor implements a Hennessy & Patterson-style MIPS RISC instruction set architecture. I provide some parts of the implementation in SystemVerilog. You can browse the full sour...
Join discussion
Jan 31 · 7 min read · Introduction In my previous post, I explored the motivation behind execution-driven performance modeling and how Olympia currently operates as a trace-driven simulator. This post builds directly on that foundation by analyzing Issue #14: “Add executi...
Join discussion
Jan 27 · 10 min read · Introduction Performance modeling plays a critical role in modern processor design. Before committing designs to silicon, architects rely on performance models to explore micro-architectural trade-offs, evaluate bottlenecks, and predict behavior unde...
Join discussion
Jan 7 · 70 min read · The performance gap between processors and main memory has been widening for decades. Modern processors can execute billions of instructions per second, but accessing data from main memory takes hundreds of processor cycles. This disparity creates a ...
Join discussionDec 29, 2025 · 9 min read · Prerequisites Basic Boolean algebra Basic understanding of logic gates [!NOTE] This blog explains these concepts in a simple way. Real CPUs are advanced and complex; to avoid confusion, I have used a simple "Adder" circuit as an example. How We...
Join discussion
Dec 3, 2025 · 19 min read · If you've ever wondered what happens between writing x = a + b in C and your processor actually computing that sum, you're about to find out. This guide breaks down Instruction Set Architecture (ISA) — the critical interface between software and hard...
Join discussion