Skip to content
Sahithyan's S2
Sahithyan's S2 — Computer Organization and Digital Design

Introduction to Computer Organization

Computer organization defines the internal details of operational units, their interconnection, & control. Defined by the internal registers, timing and control structures, and the set of instructions.

Bus

A communication channel that connects different components of a computer system. Provides a way for these components to exchange data and control signals.

Address Bus

The bus that carries the memory addresses between the CPU and the memory.

Data Bus

The bus that carries the data between the CPU and the memory.

Control Bus

The bus that carries control signals between the CPU and the memory.

Register

Capable of storing a set of bits. Built using flip flops. Has a set of data input and output lines.

General purpose registers are used for temporary storage of data and instructions during program execution. Special purpose registers are used for specific tasks such as program counter, stack pointer, and status register.

Parallel-in Parallel-out Register

A type of register where all bits of data can be loaded/reaqd simultaneously through parallel lines. Commonly used in applications requiring rapid data access and manipulation, such as in CPU design and digital signal processing.

Serial-in Serial-out Register

A type of register where data bits are loaded and read one bit at a time in a sequential manner. Data is shifted through the register 1 bit position at a time with each clock pulse. Commonly used in applications where data transmission bandwidth is limited, such as in serial communication interfaces and data conversion between parallel and serial formats.

Special Purpose Registers

RegisterDescription
Program Counter (PC)Holds the memory address of the next instruction to be executed
Instruction Register (IR)Holds the current instruction being executed
Memory Address Register (MAR)Holds the address of the memory location to be accessed
Memory Data Register (MDR)Holds the data being read from or written to memory
Accumulator (ACC)Stores intermediate arithmetic and logic results
Status Register / Flag RegisterContains flags that indicate the status of operations (zero, carry, overflow, etc.)
Stack Pointer (SP)Points to the top of the stack in memory
Index RegisterUsed for addressing techniques such as indexed addressing

Memory organization

Memory cell

Basic element of a semiconductor memory. Carries two stable states: 1 and 0. State can be read or written.

Memory types

RAM

Volatile. High-speed read and write. Can either be dynamic (built using capacitors) or static (built using flip flops). SRAM is used for caching. DRAM is used for main memory.

ROM

Non-volatile memory.

PROM

Can be programmed using special tools.

Memory controller