Published: Sep 26 2010 / 13:51
Now that's what I call "reverse engineering"
And it puts "virtual machine" into context.
With a system like this in place; if it really is 100% accurate, it should put an end to the sloppy and inaccurate software emulations I've seen on the XBOX 360 and PS3. Plus they shouldn't need to keep creating all those emulation profiles for each game they should just run the code against the emulated hardware. Amazing stuff.
Ah.. hidden deep in the discussion is a small comment about only being able to do chips with a certain construction.
My guess is that modern i.e. XBOX and PS3 chips are too complicated in the sense that they have too many layers.
But... just because they can't do it at the moment doesn't mean its impossible.
Even if it currently does have its limitations it is, as you say, amazing stuff.
Amazing stuff, although it would be nice to see some performance measures. Many hand coded 6502 emulators already exist. What't the minimum CPU you need to emulate a 6502 at the original speed for a hand coded one vs this one?
Anyway, this is one of the most remarkable pieces of emulation news I've EVER read, period. Truly amazing!
Indeed, I agree. It would be VERY interesting if this kind of simulation can be easily targeted to run on GPUs or other multi-core systems.
I have a little experience with building CPU emulators (build a MIPS R4000 emulator some time ago, which was a relatively easy task), and I remember that taking advantage of parallel hardware was quite hard. I'm not sure how modern 'normal' emulators currently handle this. The last I read about this, which is admittedly a couple of years ago, very few could take advantage of parallel computing.
So even if this vector based transistor simulation is theoretically much and much slower, it will still be a winner if it can easily take advantage of the 2000+ cores that future GPUs may have and if the traditional emulators can only use something like 2 or 4 cores.
Exactly the point.
This algorithm should be very easy to transfer to a GPU and language extensions like Cuda make it much easier than it used to be.
Also there is the point that the group make which is that you can process the vector model to recognise higher level structures - two transistors make a flip flop, a group make a gate, gates make something bigger - then emulation at the next stage up would be logic emulation. Presumably this would be faster.
Html tags not supported. Reply is editable for 5 minutes. Use [code lang="java|ruby|sql|css|xml"][/code] to post code snippets.