XSC – eXtremely Simple Computer

ClusoXSC1 Comment

This is my take on an “eXtremely Simple Computer design.

The design will start out in what I consider to be the most “minimalistic” designs possible.

As the project continues, it will evolve into a more complete implementation, while still maintaining the “simple” design mantra.

Every computer design has a few basic building blocks. They are…

  • Control Sequencer / State Machine

    This steps the computer through its sequences for each instruction to be executed. This is commonly referred to as a “state machine sequencer”.

  • Program Counter

    This is the block that supplies the Memory Address for fetching the next Instruction. After each instruction fetch, the Program Counter will increment to the next address. Sometimes, the instruction fetched will modify the Program Counter directly by loading a new value into the Program Counter. This is commonly referred to as a Jump Instruction and may take a number of forms.

  • ALU - Arithmetic Logic Unit

    All computers have an ALU. This is where an instruction will modify Data according to the Instruction Type. Simple Arithmetic Operations such as ADD and SUBTRACT, and Logical Operations such as AND, OR and XOR will be performed on Data supplied to the ALU according to the Instruction Type being executed.

  • Memory - ROM and/or RAM

    This is the computers’ local memory storage. ROM contains fixed Read-Only-Memory and RAM contains read/write Random-Access-Memory. ROM can be though of as the hardware Bootstrap or BIOS Program, and RAM will be loaded with the User Program(s), and possibly the Operating System program(s) too.

  • Input & Output

    Every computer must communicate with the outside world. This is done by Inputing (reading) and/or Outputting (writing) Information/Data.

One Comment on “XSC – eXtremely Simple Computer”

  1. Implementation
    Initially I will implement the entire design using a single microprocessor with 8 cores, namely the Parallax P8X32A, and an LCD to simulate a Front Panel to display the values of registers etc.

Leave a Reply

Your email address will not be published. Required fields are marked *