Skip to content

KARAN-D05/8-Bit-Computer

Repository files navigation

πŸ—οΈ 8-Bit Computer


βš™οΈ System Integration - Registers, Memory, ALU, Program Counter and Display Connected (Performing Addition [A] ← [A] + [B])

🧠 About

  • This project is my attempt to explore how computers work fundamentally at the gate level.
    I aim to design and build a fully functional 8-bit CPU from scratch.

🎯My Approach:

  • Before simulation, each module is designed conceptually using hand-drawn block diagrams and written reasoning to validate the logic flow through mental simulation and small example cases.
  • The block diagram is then refined into a rough structural, gate-level representation before being implemented, debugged, and rigorously tested in digital logic simulators such as Logisim Evolution and Falstad.
  • Where possible, I explore multiple design approaches to achieve the same functionality, comparing behavior, complexity, and design trade-offs before finalizing an implementation.

βš™οΈ Implementation Stack

Verilog Logisim Circuits

βœ… Modules Validated


πŸ’Ύ Registers & Bus System

πŸ” Verilog Implementations


Clock Module

πŸ“‚ Project Structure

Each module will have its own folder containing:

  • A dedicated README.md explaining design, features, and usage
  • Images of schematics, simulations, and hardware builds

🎯 Goals

  • Understand computation from the ground up
  • Document the full design and build process
  • Share schematics, notes, and experiments for others to learn from

⬇️ Download This Repository

πŸͺŸ Windows

Download β†’ download_repos.bat

Double-click it and pick the repo(s) you want.

🐧 Linux / macOS

Download β†’ download_repos.sh

bash

chmod +x download_repos.sh
./download_repos.sh

Always downloads the latest version.

πŸ› οΈ Toolchain & Repo Utilities - Built to make navigating and interacting with this repo easier

πŸ”§ portmap - Verilog Port Extractor

portmap is a lightweight CLI tool that extracts port definitions (input, output, inout) from Verilog modules and presents them in a clean table or Markdown format.

πŸ”— Source

https://github.com/KARAN-D05/portmap-HDL/blob/main/portmap.nim

πŸ“¦ Release (Download Binary)

https://github.com/KARAN-D05/portmap-HDL/releases/tag/v1.0.0

πŸš€ Usage

portmap file.v
portmap file.v --md

🧰 Repo Filetree Generator

Filetree - A repository file tree generator that prints a visual directory tree with file-type icons and a file count breakdown by extension (.v, .circ, .md, .py and more).

Utils (Portmap + Filetree)- Fetched automatically as a utils package alongside any repo download - includes portmap binaries, filetree, and source code via download_repos.bat / download_repos.sh.

πŸ“œ License

  • Source code, HDL, and Logisim circuit files are licensed under the MIT License.
  • Documentation, diagrams, images, and PDFs are licensed under Creative Commons Attribution 4.0 (CC BY 4.0).

About

Independently designing, testing and building an 8-Bit computer to explore how computers work fundamentally at gate level. Implemented various digital modules like Programmable ROM, address decoders, RAM, ALU from discrete logic gates πŸ”§.

Topics

Resources

License

Stars

Watchers

Forks

Contributors