Documents, summary and starting instruction set.

This commit is contained in:
Ulysse Cura 2026-07-05 16:03:14 +02:00
parent 617fcce334
commit 85d6b4b221
4 changed files with 33 additions and 8 deletions

Binary file not shown.

Binary file not shown.

BIN
Documents/UM61256.pdf Normal file

Binary file not shown.

View File

@ -1,24 +1,49 @@
# Computer # Computer
----------
## Summary
1. [Aims and challenges](#aims-and-challenges)
2. [Architecture choices](#architecture-choices)
3. [Design](#design)
1. [The instruction set.](#the-instruction-set)
## Aims and challenges ## Aims and challenges
Make a fully functionnal computer from scratch. Make a turing complete computer from scratch.
The computer will be composed of : The computer will be composed of :
- A CPU - A CPU
- Some RAM - Some RAM
- Some ROM - Some ROM
- A controller to the system, a "bios".
At first every part will be the "industrial" version : At first every part will be the "industrial" version :
- The CPU made with an (2) ALU IC (74181 ?) - The CPU from logic gates.
- The RAM a chip (UM61256BK-20 from 1993) - The RAM a [SRAM](https://en.wikipedia.org/wiki/Static_random-access_memory) chip (*[UM61256BK-20](/Documents/UM61256.pdf) from 1993*)
- The ROM another chip (D27C010 from 1986 !) - The ROM another chip (*[D27C010](/Documents/D27C010-200V10.pdf) from 1986 !*)
Then the aim is to replace them with made from scratch versions. Then the aim is to replace them with made from scratch versions.
For the moment only the RAM is meant to be replaced with homemade magnetic core RAM. For the moment only the RAM is meant to be replaced with homemade magnetic core RAM.
## Architecture choices ## Architecture choices
The computer is in 8 bits since the ALU, RAM and ROM are meant to be in 8 bits. The computer will be in 8 bits since the RAM and ROM are meant to be in 8 bits.
The CPU have ports for inputs / outputs. The CPU will have ports for inputs / outputs.
## Design
The design is inspired of great people hard work :
- [Ben Eater's 8 bits breadboard computer](https://eater.net/8bit)
- [Mattbatwings's minecraft computer tutorial](https://youtu.be/hAZEXqWLTmY?si=qgic0b28PMeOPs_l)
### The instruction set.
Every instruction is 8 bits long. And there is 3 bytes of data after the instruction.
Because the ROM is 8 bits, every instruction will take 4 bytes.
This property might help for [instruction pipelining](https://en.wikipedia.org/wiki/Instruction_pipelining) in the future.
These are only real instructions. Pseudoinstruction will be defined later.
| Mnemonic | Description | Pseudocode |
| :-------: | :------------ | :------------ |