Jonas Maebe wrote:
Hi,

In the 90s, a professor and a PhD student at our department developed a simulator for pipelined and microprogrammed architectures (based on the Hennessy and Patterson DLX architecture), in Delphi. We've used it since then every year in the lab sessions for our computer architecuture classes. In 2010, I ported the program to FPC and Lazarus and we use it compiled for Linux/Qt in a VM nowadays. I did not have any Lazarus experience when I started that port (and I'm still far from an expert), but the process still went fairly smooth.

I recently asked for and got permission to publish the source code under the GPLv3, so here it is: https://github.com/jmaebe/ESCAPE

Jonas, if you're watching I wonder whether I could run one thought past you (and possibly your colleagues- with apologies in advance if the obvious answer is buried in the source, which I've not gone deeply into yet).

For a demo computer built using this sort of thing, it's obviously trivial to arrange it such that the simulator can load microcode from persistent storage, and can do something comparable for a boot loader.

What would be the comparable facility for the pipelined variant? Loading lookup tables to decode opcodes to VLIW, and then clocking those words through the pipeline?

--
Mark Morgan Lloyd
markMLl .AT. telemetry.co .DOT. uk

[Opinions above are the author's, not those of his employers or colleagues]
_______________________________________________
fpc-other maillist  -  fpc-other@lists.freepascal.org
http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-other

Reply via email to