Saturday 28 July 2012

Emulator


An emulator is a piece of hardware that is placed into application circuit to run and observe that operation of the system without developing stimulus files.

Types of emulators 

Software emulators: 

A software emulator allows computer programs to run on a platform (computer architecture and/ or operating system) other than the one for which they were originally written. Unlike simulation, which only attempts to reproduce a program’s behavior, emulation attempts to model to various degrees the state of the device being emulated. High- level emulation uses a combination of the two approaches in an attempt to retain as much accuracy as possible while having the advantages of simplicity and speed provided by simulation. 

Hardware emulator:

A hardware emulator is an emulator which takes the form of a hardware device. Examples include printer emulators inside the ROM of the printer, and FPGA based emulators.

A popular use of emulators is to mimic the experience of running arcade games or console games on personal computers. Emulating these on modern desktop computers is usually less cumbersome and more reliable than relaying on the original machines, which are often old and hard to find. Emulation of arcade and console systems on home PCs usually includes the practice of illegally downloading software from various electronic distribution sources. 

In a theoretical sense, any operating environment can be emulated within any other. In practice, it can be quite difficult, particularly when the exact behavior of the system to be emulated is not documented and has to be deduced through reverse engineering. It also says nothing about timing constraints; if the emulator does not perform as quickly as the original hardware, the emulated software may run much more slowly than it would have on the original hardware, or it may run too fast to be usable.

Tuesday 10 July 2012

Simulators


A simulator is a program that simulates the functioning of electronic circuits. Simulator allows the designer to determine the correctness and efficiency of a design before the system is actually constructed.
 
A stimulus file is used for simulating input from external hardware. The stimulus file provides a series of inputs to the simulator to observe the overall behavior of system. The stimulus file for micro controller process consists for cycle counter and pin states.

An important consideration while selecting a simulator is its execution speed i.e. how fast it can execute the application’s instructions. If the execution speed of simulator is less compare to the processor then the simulator may take hours in a simulated environment. The delay may be due to complex interactions within the system being simulated. Therefore the simulator’s result are deviated from the actual operation.