ll/34 is a circuit-level emulator for the PDP-11/34A (1976), running a virtual CPU reverse-engineered from the schematics, microcode, and logic captures of an actual PDP-11/34A.
It was originally designed as a digital replica of the real CPU to assist with troubleshooting at the signal level. The virtual KD11-EA CPU essentially consists of a C translation of the schematics, and lookups to the ROM tables. All combinational ROMs are reverse-engineered, and the clock generator is precisely modeled.
Circuit-level (ROM truth tables + combinatorial logic) was chosen other gate-level (Verilog) because it is low-level enough to reproduce hardware bugs, yet fast enough to run programs.
Emulated devices
UNIBUS backplane (timing and signal accurate)
KD11-EA CPU (circuit-level)
M9301 boot card with original boot and diagnostic ROMs
DL11 serial card (timing accurate)
KW11 line clock (50/60 Hz)
Programmer Console (including maintenance mode for CPU troubleshooting)
... continue reading