simulators versus emulators
Having difficulty with seeing any difference between the two terms.Can
anyone offer definitions, both generally and in relation to, say, microprocessors. |
"steve marchant" writes:
Having difficulty with seeing any difference between the two terms.Can anyone offer definitions, both generally and in relation to, say, microprocessors. A simulator is usually a software model of hardware running a program. An emulator is usually a hardware model of hardware running a program. A software model can assume, for example, that you have a good clock signal getting to the processor. It can assume that any input logic levels have sufficient voltage and current, don't bounce, all the usual things you might assume to be true. The free PIC simulator provided by Microchip is a good example. It assumes a variety of things and your code can seem to run fine. Then when you toast a part and drop it into your board it doesn't run, because one of those assumptions wasn't valid. Software models may also run at a tiny fraction of the real speed of the actual hardware, but this doesn't always have to be the case. That can cause grief when you are attempting to deal with real-time signals, timing constraints, interrupts that must be serviced in a fixed small amount of time, etc. A hardware model should act exactly like your real hardware processor does. In reality there can be tiny differences there too. But it usually is able to run at full speed and deal with more of the ugly reality of the signals that you are connecting directly to the hardware. But by being built out of more complicated hardware than the bare processor it can also allow you to set breakpoints, record execution for hundreds or even millions of clock cycles, observe internal processor state, all without your needing to have your program be modified to attempt to provide this. |
"steve marchant" schrieb
Having difficulty with seeing any difference between the two terms.Can anyone offer definitions, both generally and in relation to, say, microprocessors. http://dictionary.reference.com/search?q=emulator tells me (among other definitions): Computer Science. To imitate the function of (another system), as by modifications to hardware or software that allow the imitating system to accept the same data, execute the same programs, and achieve the same results as the imitated system. whereas the search for simulator returns: One that simulates, especially an apparatus that generates test conditions approximating actual or operational conditions. For me, the important thing that the emulator tries to have the same usefulnesss to an user as the "real" thing. For example, think of a terminal that ***emulates*** a VT-100 terminal. Nobody has a VT-100 simulator. HTH Martin |
All times are GMT +1. The time now is 03:44 PM. |
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Copyright ©2004 - 2014 DIYbanter