2011-07-20 17 views
6

Zadaję to pytanie w kontekście komputerów i mikrokontrolerów. Potrzebuję zwięzłej odpowiedzi. Te słowa wydają się mieszać, nie wiem, czy są wymienialne, ale mają poczucie, że tak nie jest. Dzięki. Nie znalazłem rozróżnienia między nimi w moich badaniach, a tym samym publikuję pytanie tutaj.Jaka jest różnica między emulacją i symulacją?

Odpowiedz

6

Nie wiem, czy to wystarczy zwięzły dla Ciebie, ale moje rozumienie jest takie:

emulatory - Mimic sprzętu.
Symulatory - oprogramowanie Mimic.

Proszę spojrzeć na this post na przyzwoitą dyskusję na ten temat.

A oto cytat z this strony:

emulacji kontra symulacji

Słowo "emulator" został ukuty w 1963 roku w IBM [12] w trakcie rozwoju NPL (IBM 360) linii produktów, używając "nowej kombinacji oprogramowania, mikrokodu i sprzętu" [13]. Odkryli, że używanie oprogramowania mikrokodowego zamiast symulacji oprogramowania do wykonania programów napisanych dla wcześniejszych komputerów IBM znacznie przyspieszyło symulację. Wcześniej w 1957 r. IBM dostarczył komputerowi IBM 709 program (oprogramowanie) do translacji w wersji w celu uruchomienia starszych programów napisanych dla IBM 704 do uruchomienia na IBM 709 i nowszych w IBM 7090 [14] W 1963 r., Kiedy mikrokod został po raz pierwszy użyty do przyspieszenia tego procesu symulacji, inżynierowie IBM ukuł termin "emulator", aby opisać koncepcję.

Niedawno powszechne stało się używanie słowa "emulować" w kontekście oprogramowania . Jednak przed 1980 r. "Emulacja" odnosiła się tylko do emulacji sprzętowej lub mikrokodowej, podczas gdy "symulacja" odnosiła się do emulacji czystego oprogramowania. [15] Na przykład komputer specjalnie zaprojektowany do uruchamiania programów zaprojektowanych dla innej architektury jest emulatorem. W przeciwieństwie do tego, symulator może być programem, który działa na komputerze PC w wersji , dzięki czemu można symulować stare gry Atari. Purists dalej nalegać na to rozróżnienie, ale obecnie termin emulacja " " często oznacza pełną imitację maszyny wykonującej kod binarny .

2

Emulacja następuje, gdy oprogramowanie przechodzi i przetwarza każde wejście dokładnie w taki sposób, w jaki mikrokontroler/procesor przetwarzałby instrukcję.

Symulacja polega na tym, że oprogramowanie pobiera dane wejściowe i za pomocą różnych procesów wytwarza oczekiwane wyniki.

Emulacja to wyjątkowo precyzyjne modelowanie operacji wewnętrznych, natomiast symulacja koncentruje się bardziej na koncepcji czarnej skrzynki wejściowej.