← Back to context

Comment by throwawaylinux

5 years ago

I wonder why not software emulated.

Because it had to be cycle accurate to work with the existing hardware, something you can't guarantee in software.

  • You definitely can, we use cycle accurate simulators to model logic. These models can be tied in to emulators to give them cycle accurate timing information.

    In terms of expressiveness, digital logic can't "do" anything that software can not (including drive real electrical / analog IOs provided the software and the digital logic have interfaces for). Whether you implement the pdp11 in software or logic, either way you still have to create it to take into account all the timing details of the original hardware.

    It's just some operations can be done much faster in hardware, but I doubt any part of the pdp11 can't easily be emulated in software on modern CPUs with a lot of timing margin to achieve real-time cycle accuracy. I could be wrong because pdp11 I don't know much about, but for an early simple RISC pipeline of similar performance it is certainly possible.

    I assume this is just a solution that works and is supported and they've been using for a long time. It would

    • As soon as you try to interact with real hardware you'll hit latencies that your simulator can't deal with. Modern processors of the sort you'd use for such a system are designed around intermediary busses that don't provide the sort of timing guarantees legacy hardware needs.

      1 reply →

    • And this works in real time?

      In simulation it's sufficient to compute accurate cycle information, yet slower than real time, or with jitter.

      In contrast to that "cycle accurate modelling" the goal here was to replace a pdp11 in operation.

      3 replies →