Computer design goals:
RISC-like – inspired by MIPS, but is quite different. This is Load/Store architecture, meaning that ALU operations are only applied on data in registers, and for using data from memory it should be first loaded to these registers, or stored from them back to memory, in separate instruction cycle.
16-bit computer, 16-bit wide registers, 16-bit wide ALU and 16-bit bus.
Memory consists of 16-bit words.
Up to 16M words can be addressed.
Component base: 74HCxx SSI and MSI chips.
Input: keyboard, serial interface from magnetic tape (this is still very speculative).
Output: Monitor (TV) characters, pseudographics, bitmap. Serial to tape recorder(?). Or Compact Flash card(?).
Mass storage: CF or tape.
Register file: 8 16-bit registers, 2-address/3-address
First address read-write access, provides A operand for ALU and is overwritten by ALU (when write-enabled), gets written to from bus and enabled to bus.
Second address is read-only, provides B operand for ALU.
First address (A operand) is written with result of ALU operation on 2 registers (B and C operands). C operand has restriction that it cannot be GPR0 or GPR1.
Program counter: presettable synchronous counter – 24 bits
Instruction register: holds running instruction.
Memory address register – 24 bits, can address up to 16M locations
Stack pointer: presettable synchronous up/down counter – 24 bits
Functions: ADD, SUB, AND, NOR, XOR, SHIFT, ROTATE
B operand modifications: no, invert (1-complement), twos complement, replace with: 0, 1-255.
Adder: fast adder (with carry look-ahead) for high speed.