Simulators/Emulators

Jules Richardson julesrichardsonuk at yahoo.co.uk
Wed Nov 22 10:57:02 CST 2006


Roger Holmes wrote:
> There is another class of simulation I have been considering
> lately. For machines like my ICT 1301, which I would guess
> has about ten thousand gates, it would be possible to write a
> program which does a gate level simulation on a fast machine
> like my 2GHz Mac. You could even simulate the signals in
> the machine, hook up a simulated oscilloscope and look at
> the waveforms. The slow rise times and overshooting might
> not be possible to show of course, but maybe even this could
> be added. You could even simulate logic faults for educational
> purposes and show how they used to be tracked down via the
> console, the logic diagrams and an oscilloscope. Now that
> really would be a historical/educational tool. Or am I just dreaming?

Certainly I don't see why you couldn't implement this at the gate level; I 
suppose it's just a massive data structure of signal lines and logic 
functions. Maybe for it to work accurately you have to simulate the 
propagation delays of the various logic gates - but assuming it's all straight 
digital logic I would have thought it would work.

> Could I OCR the old line printer listings of the interconnection lists
> and use them to build the simulator?

Gah. Possibly, depending on quality. At least something that old should be in 
a pretty regular typeface, so if the OCR procedures get any of it right then 
they stand a good chance of doing the whole lot. It'll still be a pain to 
proof-read though!

> Simulating the audio output (which is pulsed on most conditional
> branch instructions) is another issue I am thinking about. Modern
> computers can obviously make the sounds, but how do I convert
> from a live stream of speaker reversals into what a modern
> machine needs?

Well I suppose on a lot of Unix systems it's just a case of opening /dev/audio 
and spitting data down the line - maybe the mac's no different?

cheers

Jules



More information about the cctech mailing list