Files
nand2tetris/project-5-computer-architecture/hdl/Computer.hdl
2026-02-10 22:25:41 +01:00

44 lines
1.2 KiB
Plaintext

// This file is part of www.nand2tetris.org
// and the book "The Elements of Computing Systems"
// by Nisan and Schocken, MIT Press.
// File name: projects/5/Computer.hdl
/**
* The Hack computer, consisting of CPU, ROM and RAM.
* When reset = 0, the program stored in the ROM executes.
* When reset = 1, the program's execution restarts.
* Thus, to start running the currently loaded program,
* set reset to 1, and then set it to 0.
* From this point onwards, the user is at the mercy of the software.
* Depending on the program's code, and whether the code is correct,
* the screen may show some output, the user may be expected to enter
* some input using the keyboard, or the program may do some procerssing.
*/
CHIP Computer {
IN reset;
PARTS:
ROM32K(
address=pcOut,
out=romInstructionOut
);
CPU(
inM=memoryOut,
instruction=romInstructionOut,
reset=reset,
outM=cpuOutMOut,
writeM= cpuWriteMOut,
addressM= cpuAddressMOut,
pc=pcOut
);
Memory(
in= cpuOutMOut,
load= cpuWriteMOut,
address= cpuAddressMOut,
out=memoryOut
);
}