Skip to content

Commit

Permalink
Added description of repository and its goals
Browse files Browse the repository at this point in the history
  • Loading branch information
aofarmakis authored Nov 30, 2024
1 parent fbecda3 commit 4c0ac78
Showing 1 changed file with 21 additions and 0 deletions.
21 changes: 21 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
# NibbleBuddy
This repository contains the design and documentation for a very simple 4-bit processor named NibbleBuddy. It's an educational tool meant to show how one defines an Instruction Set Architecture (ISA), builds it using discrete gates and MSI components (multiplexers, flip-flops etc), examines N-operand machines and develops a rudimentary ecosystem for said processor, that being an HDL-based design and an assembler to transform Assembly code into machine code.

## Processor diagram
![NibbleBuddy's Architecture Diagram](Images/CPU%20all.png)
*Figure 1: NibbleBuddy's Architecture Diagram.*

## Instructions
NibbleBuddy supports immediate and direct addressing modes wherever applicable, and is an accumulator-based architecture. The instructions supported are as follows:
- HALT
- STA
- LDA
- ADC
- NOR
- SETC
- JNZ
- JNC
- JMP

## Memory
NibbleBuddy is a 4-bit Harvard memory architecture processor with a 5-bit program counter and a 4-bit data memory address bus. Thus, it is limited to 32 instructions at most and 16 4-bit data memory addresses.

0 comments on commit 4c0ac78

Please sign in to comment.