wiki:Other/Summer/2024/bC

Version 28 (modified by rmadiraju, 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

Week 1 Presentation

Summary

  • Familiarized with breadboard computer components: ICs, logic gates, registers, breadboards, wires, and connectors.
  • Learned about fundamental computer components: Fetch-Execute Cycle, CPU, RAM, ALU, and BUS.
  • Explored the Fetch-Execute Cycle: Fetch, Decode, Execute.
  • Studied the CPU: functions, clock, registers, and ALU.
  • Understood RAM: its function, volatility, and direct access capabilities.
  • Examined the ALU: performs arithmetic and logical operations.
  • Investigated the BUS: facilitates communication between CPU, memory, and peripherals.
  • Planned tasks for next week: model and test the ALU using TinkerCad, begin detailed documentation, construct the clock monitor, and build the registers.


Week 2

Week 2 Presentation

Summary

  • Started and Finished building different components of the clock module
  • Started building the A register
  • Added more pictures and videos of testing to the documentation
  • Tested and troubleshooted problems related to the Clock Module
    • First LED wasn't blinking
    • Connectivity issues
    • Push button wasn't functioning
      • Fixed issue due to the different pins on the push button


Week 3

Week 3 Presentation

Summary

  • Continued and restarted building of the Clock Module
    • Used Oscilloscope to reassure connection
    • Fixed the push button to be powered by 555 chip
    • Technical issue with Blinking LED
    • Fixed response delay from Switch
  • Finished building the A-Register
    • Used 2 74LS173 chips and 1 7LS245 chip
  • Started building the Random Access Memory (RAM)
    • Used Inverting Chips, Signal Inversion, and Flip-Flop Chips


    Week 4

    Week 4 Presentation

    Summary

    • Continued and restarted building of the Clock Module
    • Completed the construction of the B-Register
      • Used as temporary data storage, one of the operands for the ALU, and holds data during transfers
      • Contains 2 4-bit registers, each storing 4-bits of data
      • Includes bidirectional bus transceivers to facilitate data flow between the B-Register and BUS
    • Continued building the Random Access Memory (RAM)
      • Uses flip-flop chips to store 4 1-bit data units
      • A multiplexer (Quad 2-to-1) is employed to channel multiple data lines into a single line
      • The BUS transceiver chip is an 8-bit tri-state buffer that allows data to flow bidirectionally between two buses
    • Continued documentation, focusing on schematics


    Week 5

    Week 5 Presentation

    Summary

    • Rebuilt the A and B Registers.
    • Completed the construction of the Program Counter.
      • Counts in binary to track which instruction the computer is executing
      • Utilizes JK flip-flops, which are storage elements that count binary numbers
      • Connected to the Clock Module to test counter inputs
    • Nearly finished building the RAM.
    • Successfully completed the Clock Module.
      • Resolved connection issues in all three uses of the 555 Chip: Switch, Button, and Flicker
      • Incorporated three logic gates to connect to the clock signal:
        • NOT Gate: Inverts input signal
        • NAND Gate: Controls clock signal
        • AND Gate: Combines signals
      • Conducted tests with the RAM and Program Counter.
    • Tested RAM through the Clock Module.
    • Continued work on the Instruction Manual.


Week 6

<a href="https://docs.google.com/presentation/d/1tN7HuYSwqhuVFvUYlu-1NXA8xH9VNKNShkUADYqspUQ/edit?usp=sharing" target="_blank" style="font-size: 20px; color: #5F9EA0; font-weight: bold;">Week 6 Presentation</a>

Note: See TracWiki for help on using the wiki.