
Build the CPU circuit described in Project 5:
N2T: Project 5
Chapter 5 provides the contract for each circuit, i.e. description of its behavior, names and number inputs, names and state of outputs. The API is available here:
The Hack Chipset
a0,b0,out0)projects/5/a9Loader [not in the book, combinational gate]:
Chip name: Loader
Inputs: d1, d2, d3, // same meaning as Figure 4.4, p.68
ctype // is this ctype instruction
Outputs: loadA, loadD, loadM // set to 1 if inputs indicate a value
// should be loaded in respective destination
// any subset of these may be 1
This is similar to the Jumper and allows us to decide whether A, D, or M should load a new value:
CPU Setup (1):
ALU, Jumper, PC, Loader, ...This will allow you to drag your own circuits as boxed components onto the CPU Canvas. It essentially creates a small library similar to Wiring, Arithmetic, etc:
CPU Setup (2) - this step is optional:
projects/5/a9:
nand2tetris.jar
nand2tetris that contains ALU, PCCPU:
CPU Testing - short test session is available here:
CPU Testing
Loader:
Loader:
CPU: