| 11 | | The goal of our project is to build a 8-bit computer from scratch on a breadboard using different electrical components like Integrated Circuits, LEDs, Wires, etc. 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. |
| | 11 | {{{#!html |
| | 12 | <h1 style="font-size: 35px; margin-bottom: 10px; margin-left: 5px;"> |
| | 13 | Overview |
| | 14 | </h1> |
| | 15 | <p style="font-size: 20px;">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.<p> |
| | 16 | <h1 style="font-size: 35px; margin-bottom: 10px; margin-left: 5px;"> |
| | 17 | Specific Goals: |
| | 18 | </h1> |
| | 19 | <ul style="font-size: 20px;"> |
| | 20 | <li><b>Construction:</b> Build a fully functional 8-bit computer using discrete components.</li> |
| | 21 | <li><b>Documentation:</b> 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.</li> |
| | 22 | </ul> |
| | 23 | }}} |
| 17 | | **Summary:** |
| 18 | | * Read and familiarize ourselves with the components of the breadboard computer. |
| 19 | | * Learned about the components of computers |
| 20 | | * Fetch-Execute cycle |
| 21 | | * CPU |
| 22 | | * Random Access Memory (RAM) |
| 23 | | * ALU |
| 24 | | * BUS |
| | 29 | {{{#!html |
| | 30 | <h2 style="font-size: 22px; margin-bottom: 10px; margin-left: 25px;"> |
| | 31 | Summary |
| | 32 | </h2> |
| | 33 | <ul style="font-size: 20px; margin-left: 35px;"> |
| | 34 | <li>Read and familiarize ourselves with the components of the breadboard computer.</li> |
| | 35 | <li>Learned about the components of computers |
| | 36 | <ul style="font-size: 20px; margin-left: 45px;"> |
| | 37 | <li>Fetch-Execute Cycle</li> |
| | 38 | <li>CPU</li> |
| | 39 | <li>Random Access Memory (RAM)</li> |
| | 40 | <li>Arithmetic Logic Unit (ALU)</li> |
| | 41 | <li>BUS</li> |
| | 42 | </ul> |
| | 43 | </li> |
| | 44 | </ul> |
| | 45 | <h1 style="font-size: 35px; margin-bottom: 10px; margin-left: 5px;"> |
| | 46 | What We Worked On |
| | 47 | </h1> |
| | 48 | <h2 style="font-size: 25px; margin-bottom: 10px; margin-left: 25px;"> |
| | 49 | Component Familiarization |
| | 50 | </h2> |
| | 51 | <p style="font-size: 20px; margin-left: 25px;">We began by reading and familiarizing ourselves with the various components required for the breadboard computer, such as:</p> |
| | 52 | <ul style="font-size: 20px; margin-left: 35px;"> |
| | 53 | <li>Integrated Circuits (ICs)</li> |
| | 54 | <li>Logic gates (AND, OR, NOT, etc.)</li> |
| | 55 | <li>Registers</li> |
| | 56 | <li>Breadboards</li> |
| | 57 | <li>Wires and Connectors</li> |
| | 58 | </ul> |
| 26 | | [[Image(https://cdn.shopify.com/s/files/1/0089/0647/3536/products/computer-hero-42_550x825.png?v=1544158524)]] |
| | 60 | <h2 style="font-size: 25px; margin-bottom: 10px; margin-left: 25px;"> |
| | 61 | Computer Components Learning |
| | 62 | </h2> |
| | 63 | <p style="font-size: 20px; margin-left: 25px;">We delved into understanding the fundamental components of computers and their functions. This included studying:</p> |
| | 64 | <br></br> |
| | 65 | <h2 style="font-size: 22px; margin-bottom: 10px; margin-left: 25px;"> |
| | 66 | Fetch-Execute Cycle |
| | 67 | </h2> |
| | 68 | <p style="font-size: 20px; margin-left: 25px;">Understanding the core cycle through which a CPU processes instructions:</p> |
| | 69 | <ul style="font-size: 20px; margin-left: 35px;"> |
| | 70 | <li><b>Fetch: </b> CPU loads instructions into the registers from RAM.</li> |
| | 71 | <li><b>Decode: </b> Instruction and its address are sent to the instruction register to be interpreted.</li> |
| | 72 | <li><b>Execute: </b> The CPU executes the instruction and stores the result in the accumulator.</li> |
| | 73 | </ul> |
| 28 | | [[Image(https://i.ibb.co/WpkQK6k/high-level-1.png)]] |
| | 75 | <h2 style="font-size: 22px; margin-bottom: 10px; margin-left: 25px;"> |
| | 76 | Central Processing Unit (CPU) |
| | 77 | </h2> |
| | 78 | <ul style="font-size: 20px; margin-left: 35px;"> |
| | 79 | <li><b>Function:</b> Executes instructions from programs by performing basic arithmetic, logic, control, and input/output operations.</li> |
| | 80 | <li><b>Parts: </b> |
| | 81 | <ul style="font-size: 20px; margin-left: 45px;"> |
| | 82 | <li><b>Clock:</b> Generates timing signals to coordinate CPU activities. With each tick, the CPU performs steps of the fetch-execute cycle.</li> |
| | 83 | <li><b>Registers:</b> Temporary storage for data and instructions within the CPU.</li> |
| | 84 | <li><b>ALU:</b> Executes arithmetic and logical operations.</li> |
| | 85 | </ul> |
| | 86 | </li> |
| | 87 | </ul> |
| 30 | | == Week 2 |
| | 89 | <h2 style="font-size: 22px; margin-bottom: 10px; margin-left: 25px;"> |
| | 90 | Random Access Memory (RAM) |
| | 91 | </h2> |
| | 92 | <ul style="font-size: 20px; margin-left: 35px;"> |
| | 93 | <li><b>Function:</b> Stores data and machine code currently being used. It allows for quick read and write operations.</li> |
| | 94 | <li><b>Characteristics: </b> |
| | 95 | <ul style="font-size: 20px; margin-left: 45px;"> |
| | 96 | <li><b>Volatile Memory:</b> Data is lost when power is turned off.</li> |
| | 97 | <li><b>Direct Access:</b> Any memory location can be accessed directly and quickly.</li> |
| | 98 | </ul> |
| | 99 | </li> |
| | 100 | </ul> |
| 32 | | [https://docs.google.com/presentation/d/1rOCvDj2A00DrVsliciAL2aQvi_JLKicKCPpr9zzMZoU/edit?usp=sharing Week 2 Presentation] |
| | 102 | <h2 style="font-size: 22px; margin-bottom: 10px; margin-left: 25px;"> |
| | 103 | Arithmetic Logic Unit (ALU) & BUS |
| | 104 | </h2> |
| | 105 | <h2 style="font-size: 22px; margin-bottom: 10px; margin-left: 25px;"> |
| | 106 | ALU |
| | 107 | </h2> |
| | 108 | <ul style="font-size: 20px; margin-left: 35px;"> |
| | 109 | <li><b>Functions:</b> |
| | 110 | <ul style="font-size: 20px; margin-left: 45px;"> |
| | 111 | <li>Performs arithmetic operations: Addition, Subtraction, Multiplication, Division.</li> |
| | 112 | <li>Executes logical operations: NOT, OR, AND.</li> |
| | 113 | </ul> |
| | 114 | </li> |
| | 115 | <li><b>Importance: </b> Central to performing computations required by programs.</li> |
| | 116 | </ul> |
| 34 | | [[Image(https://i.ibb.co/WP0pjxs/p8.png)]] |
| | 118 | <h2 style="font-size: 22px; margin-bottom: 10px; margin-left: 25px;"> |
| | 119 | BUS |
| | 120 | </h2> |
| | 121 | <ul style="font-size: 20px; margin-left: 35px;"> |
| | 122 | <li><b>Purpose: </b> Facilitates communication between the CPU, memory, and other peripherals.</li> |
| | 123 | <li><b>Types: </b> |
| | 124 | <ul style="font-size: 20px; margin-left: 45px;"> |
| | 125 | <li><b>Data Bus: </b> Carries data between components.</li> |
| | 126 | <li><b>Address Bus: </b> Carries memory addresses that the CPU wants to access.</li> |
| | 127 | <li><b>Control Bus: </b> Carries control signals from the CPU to other components.</li> |
| | 128 | </ul> |
| | 129 | </li> |
| | 130 | </ul> |
| 36 | | [[Image(https://i.ibb.co/YfZm13K/p9.jpg)]] |
| | 132 | <h1 style="font-size: 35px; margin-bottom: 10px; margin-left: 5px;"> |
| | 133 | Goals For Next Week |
| | 134 | </h1> |
| | 135 | <h2 style="font-size: 25px; margin-bottom: 10px; margin-left: 25px;"> |
| | 136 | Tasks |
| | 137 | </h2> |
| | 138 | <ul style="font-size: 20px; margin-left: 35px;"> |
| | 139 | <li><b>Model and Test ALU:</b> |
| | 140 | <ul style="font-size: 20px; margin-left: 45px;"> |
| | 141 | <li>Utilize TinkerCad to model and simulate the ALU component of the computer.</li> |
| | 142 | <li>Ensure correct functioning through testing various arithmetic and logical operations.</li> |
| | 143 | </ul> |
| | 144 | </li> |