Version 17 (modified by 4 months ago) ( diff ) | ,
---|
Breadboard Computer Project
WINLAB Summer Internship 2024
Advisors: Dr. Richard Howard, Dr. Richard Martin
Group Members: Dilan Gandhi, Rithvik Madiraju
Project Objective
Overview
The goal of our project is to build an 8-bit computer from scratch on a breadboard using different electrical components like Integrated Circuits, LEDs, Wires, etc.
Specific Goals:
- Construction: Build a fully functional 8-bit computer using discrete components.
- Documentation: Create comprehensive documentation covering each step, allowing others to replicate the process. Our aim is to document the step-by-step process, including schematics, notes, and procedures so that others can replicate the creation of their own Breadboard Computer.
Week 1
Summary
- Read and familiarize ourselves with the components of the breadboard computer.
- Learned about the components of computers
- Fetch-Execute Cycle
- CPU
- Random Access Memory (RAM)
- Arithmetic Logic Unit (ALU)
- BUS
What We Worked On
Component Familiarization
We began by reading and familiarizing ourselves with the various components required for the breadboard computer, such as:
- Integrated Circuits (ICs)
- Logic gates (AND, OR, NOT, etc.)
- Registers
- Breadboards
- Wires and Connectors
Computer Components Learning
We delved into understanding the fundamental components of computers and their functions. This included studying:
Fetch-Execute Cycle
Understanding the core cycle through which a CPU processes instructions:
- Fetch: CPU loads instructions into the registers from RAM.
- Decode: Instruction and its address are sent to the instruction register to be interpreted.
- Execute: The CPU executes the instruction and stores the result in the accumulator.
Central Processing Unit (CPU)
- Function: Executes instructions from programs by performing basic arithmetic, logic, control, and input/output operations.
- Parts:
- Clock: Generates timing signals to coordinate CPU activities. With each tick, the CPU performs steps of the fetch-execute cycle.
- Registers: Temporary storage for data and instructions within the CPU.
- ALU: Executes arithmetic and logical operations.
Random Access Memory (RAM)
- Function: Stores data and machine code currently being used. It allows for quick read and write operations.
- Characteristics:
- Volatile Memory: Data is lost when power is turned off.
- Direct Access: Any memory location can be accessed directly and quickly.
Arithmetic Logic Unit (ALU) & BUS
ALU
- Functions:
- Performs arithmetic operations: Addition, Subtraction, Multiplication, Division.
- Executes logical operations: NOT, OR, AND.
- Importance: Central to performing computations required by programs.
BUS
- Purpose: Facilitates communication between the CPU, memory, and other peripherals.
- Types:
- Data Bus: Carries data between components.
- Address Bus: Carries memory addresses that the CPU wants to access.
- Control Bus: Carries control signals from the CPU to other components.
Goals For Next Week
Tasks
- Model and Test ALU:
- Utilize TinkerCad to model and simulate the ALU component of the computer.
- Ensure correct functioning through testing various arithmetic and logical operations.
- Documentation:
- Begin detailed documentation of each part of the computer.
- Include schematics, notes, and images for clarity.
- Clock Monitor:
- Start and complete the construction of the clock monitor, which will manage the timing signals within the CPU.
- Registers
- Initiate the building of the registers, essential for temporary data storage within the CPU.
Note:
See TracWiki
for help on using the wiki.