A First-Principles Approach to Computer Architecture
omnivore hardware computer-architecture good-read!
Read on Omnivore | Read Original
Highlights
A real-world processor consists of multiple different kinds of computational circuits for operations such as addition, subtraction, multiplication, division, and also logical operations (
AND,OR,NOT). These circuits are combined in the form of an arithmetic logical unit (ALU) and the various computational circuits within it are called functional units. ⤴️
Dynamic RAM (DRAM): The most common type of main memory. Each cell is composed of a capacitor and a transistor. The capacitor holds a charge to represent a 1 or 0, but the charge leaks over time, so the cells must be periodically refreshed. This makes DRAM relatively slower compared to registers. ⤴️
Static RAM (SRAM): Used primarily for CPU caches. Each cell is made from flip-flops instead of capacitors, making it faster and more reliable but also more expensive and power-hungry. ⤴️
multiple buses between the processor and the memory. These are
- Control Bus: Specifies whether the operation is read or write.
- Address Bus: Carries the memory address specifying where to read from or write to.
- Data Bus: Transfers the actual data between the processor and the memory. ⤴️