User Tools

Site Tools


naivety_core

This is an old revision of the document!


Naivety Core

This is the custom 16-bit CPU design used in Naivety Project.

Overview

This processor is a 16-bit data / address design, with fixed-width instructions. The processor is based around a finite state machine, with most instructions completing in four cycles. Most operations (math, logic) are register-register only and do not support operation with immediates due to limited instruction width. At the moment, the processor does not support flags of any sort. Conditionals are done only via direct register comparison.

Registers

The processor has 16x 16-bit wide registers, shown in the following table:

Register Name Register Number Description
r0 0 General purpose
r1 1
r2 2
r3 3
r4 4
r5 5
r6 6
r7 7
r8 8
r9 9
r10 10
r11 11
rpc 12 Program counter
rsp 13 Stack pointer
rlr 14 Link register
rir N/A Instruction register
naivety_core.1778694663.txt.gz · Last modified: by iliketech