Simulador d'arquitectura d'ordinador
Un simulador d'arquitectura d'ordinador és un programa que simula l'execució de l'arquitectura d'ordinadors.[1]
Els simuladors d'arquitectura d'ordinadors s'utilitzen amb les finalitats següents:
- Reducció de costos mitjançant l'avaluació dels dissenys de maquinari sense construir sistemes físics de maquinari.
- Habilitació de l'accés a maquinari inaccessible.
- Augment de la precisió i el volum de les dades de rendiment de l'ordinador.
- Introduir habilitats que normalment no són possibles al maquinari real, com ara executar codi cap enrere quan es detecta un error o executar-se en temps més ràpid que real.[2]
Categories
[modifica]Els simuladors d'arquitectura d'ordinadors es poden classificar en moltes categories diferents segons el context.[3]
- Àmbit: els simuladors de microarquitectura modelen el microprocessador i els seus components. Els simuladors de sistema complet també modelen el processador, els sistemes de memòria i els dispositius d'E/S.
- Detall: els simuladors funcionals, com els simuladors de conjunt d'instruccions, aconsegueixen la mateixa funció que els components modelats. Es poden simular més ràpidament si no es té en compte el temps. Els simuladors de cronometratge són simuladors funcionals que també reprodueixen el temps. Els simuladors de cronometratge es poden classificar encara més en simuladors de cicles digitals precisos i analògics de subcicles.
- Càrrega de treball: els simuladors basats en traça (també anomenats simuladors basats en esdeveniments) reaccionen a fluxos d'instruccions pregravats amb alguna entrada fixa. Els simuladors basats en l'execució permeten executar canvis dinàmics d'instruccions en funció de diferents dades d'entrada.[4]
Simuladors de sistema complet
[modifica]Un simulador de sistema complet és una simulació d'arquitectura basada en l'execució amb un nivell de detall tal que les piles de programari completes de sistemes reals es poden executar al simulador sense cap modificació. Un simulador de sistema complet proporciona maquinari virtual que és independent de la naturalesa de l'ordinador amfitrió. El model de sistema complet inclou normalment nuclis de processador, dispositius perifèrics, memòries, busos d'interconnexió i connexions de xarxa. Els emuladors són simuladors de sistema complets que imiten maquinari obsolet en lloc de maquinari en desenvolupament.
La propietat definitòria de la simulació del sistema complet en comparació amb un simulador de conjunt d'instruccions és que el model permet executar controladors de dispositius i sistemes operatius reals, no només programes únics. Així, la simulació del sistema complet permet simular ordinadors individuals i nodes informàtics en xarxa amb tot el seu programari, des de controladors de dispositius de xarxa fins a sistemes operatius, piles de xarxa, middleware, servidors i programes d'aplicació.
Simulador precís de cicle
[modifica]Un simulador de precisió de cicle és un programa informàtic que simula una microarquitectura cicle per cicle. En canvi, un simulador de conjunt d'instruccions simula una arquitectura de conjunt d'instruccions generalment més ràpida però no precisa del cicle per a una implementació específica d'aquesta arquitectura; sovint s'utilitzen quan s'emulen maquinari més antic, on la precisió del temps és important per raons d'herència. Sovint, s'utilitza un simulador de precisió del cicle quan es dissenyen nous microprocessadors – es poden provar i comparar amb precisió (incloent-hi l'execució del sistema operatiu complet o compiladors) sense construir realment un xip físic, i canviar fàcilment el disseny moltes vegades per complir el pla previst.[5]
Referències
[modifica]- ↑ Ltd, Vayavya Labs Pvt; Kumar, Siva. «Vayavya Labs Pvt. Ltd. - Introducing gem5 : An Open-Source Computer Architecture Simulator» (en anglès americà), 09-01-2025. [Consulta: 30 març 2025].
- ↑ Hwang, Inseong; Lee, Junghyeok; Kang, Huibeom; Lee, Gilhyeon; Kim, Hyun «Survey of CPU and memory simulators in computer architecture: A comprehensive analysis including compiler integration and emerging technology applications». Simulation Modelling Practice and Theory, 138, 01-01-2025, p. 103032. DOI: 10.1016/j.simpat.2024.103032. ISSN: 1569-190X.
- ↑ Akram, Ayaz; Sawalha, Lina «A Survey of Computer Architecture Simulation Techniques and Tools». IEEE Access, 7, 2019, p. 78120–78145. DOI: 10.1109/ACCESS.2019.2917698. ISSN: 2169-3536.
- ↑ «Simulation of computer architectures: Simulators, benchmarks, methodologies, and recommendations» (en anglès). [Consulta: 30 març 2025].
- ↑ Yi, Joshua J.; Lilja, David J. «Simulation of Computer Architectures: Simulators, Benchmarks, Methodologies, and Recommendations». IEEE Trans. Comput., 55, 3, 01-03-2006, p. 268–280. DOI: 10.1109/TC.2006.44. ISSN: 0018-9340.