Simulador de arquitectura de computadores

Un simulador de arquitectura de computadora es un programa que simula la ejecución de la arquitectura de computadora .

Los simuladores de arquitectura de computadoras se utilizan para los siguientes fines:

  • Reducción de costos mediante la evaluación de diseños de hardware sin construir sistemas de hardware físicos.
  • Permitir el acceso a hardware inalcanzable.
  • Aumentar la precisión y el volumen de los datos sobre el rendimiento de la computadora.
  • Introducción de capacidades que normalmente no son posibles en hardware real, como ejecutar código al revés cuando se detecta un error o ejecutarlo en tiempo más rápido que el real .

Categorías

Los simuladores de arquitectura de computadoras se pueden clasificar en muchas categorías diferentes según el contexto.

  • Alcance : Los simuladores de microarquitectura modelan el microprocesador y sus componentes. Los simuladores de sistemas completos también modelan el procesador, los sistemas de memoria y los dispositivos de E/S.
  • Detalle : Los simuladores funcionales, como los simuladores de conjuntos de instrucciones , logran la misma función que los componentes modelados. Se pueden simular más rápido si no se considera la sincronización. Los simuladores de sincronización son simuladores funcionales que también reproducen la sincronización. Los simuladores de sincronización se pueden clasificar además en simuladores de ciclos digitales precisos y simuladores de subciclos analógicos.
  • Carga de trabajo : Los simuladores basados ​​en trazas (también llamados simuladores basados ​​en eventos) reaccionan a secuencias de instrucciones pregrabadas con una entrada fija. Los simuladores basados ​​en ejecución permiten un cambio dinámico de las instrucciones que se ejecutarán en función de diferentes datos de entrada.

Simuladores de sistema completo

Un simulador de sistema completo es una simulación de arquitectura basada en la ejecución con un nivel de detalle tal que se pueden ejecutar pilas de software completas de sistemas reales en el simulador sin ninguna modificación. Un simulador de sistema completo proporciona hardware virtual que es independiente de la naturaleza de la computadora host. El modelo de sistema completo generalmente incluye núcleos de procesador , dispositivos periféricos , memorias , buses de interconexión y conexiones de red . Los emuladores son simuladores de sistema completo que imitan hardware obsoleto en lugar de hardware en desarrollo.

La propiedad que define la simulación de sistemas completos en comparación con un simulador de conjuntos de instrucciones es que el modelo permite ejecutar controladores de dispositivos y sistemas operativos reales, no solo programas individuales. Por lo tanto, la simulación de sistemas completos permite simular computadoras individuales y nodos de computadoras en red con todo su software , desde controladores de dispositivos de red hasta sistemas operativos, pilas de red , middleware , servidores y programas de aplicación .

La simulación completa del sistema puede acelerar el proceso de desarrollo del sistema al facilitar la detección, recreación y reparación de fallas. El uso de procesadores multinúcleo está impulsando la necesidad de una simulación completa del sistema, porque puede resultar extremadamente difícil y requerir mucho tiempo recrear y depurar errores sin el entorno controlado que proporciona el hardware virtual. [1] Esto también permite que el desarrollo del software se realice antes de que el hardware esté listo, [2] lo que ayuda a validar las decisiones de diseño.

Simulador de ciclo preciso

Un simulador con precisión de ciclo es un programa informático que simula una microarquitectura ciclo por ciclo. Por el contrario, un simulador de conjunto de instrucciones simula una arquitectura de conjunto de instrucciones que, por lo general, es más rápida pero no precisa en cuanto a ciclos para una implementación específica de esta arquitectura; a menudo se utilizan para emular hardware antiguo, donde la precisión en el tiempo es importante por razones heredadas. A menudo, un simulador con precisión de ciclo se utiliza al diseñar nuevos microprocesadores: se pueden probar y comparar con precisión (incluso ejecutando un sistema operativo completo o compiladores) sin tener que construir realmente un chip físico, y se puede cambiar el diseño muchas veces para cumplir con el plan esperado.

Los simuladores con precisión de ciclo deben garantizar que todas las operaciones se ejecuten en el tiempo virtual (o real, si es posible) adecuado: predicción de bifurcaciones, errores de caché, recuperaciones, bloqueos de canalización, cambio de contexto de subprocesos y muchos otros aspectos sutiles de los microprocesadores.

Véase también

Referencias

  1. ^ Depuración y simulación completa del sistema
  2. ^ Vania Joloboff (2009). «Simulación completa de sistemas embebidos» (PDF) . Archivado desde el original (PDF) el 2014-02-09 . Consultado el 2013-03-06 .
  • La infraestructura virtual Archer para la simulación de la arquitectura informática
  • "Mikrocodesimulator MikroSim 2010". 0/1-SimWare . Consultado el 6 de diciembre de 2010 .
Obtenido de "https://es.wikipedia.org/w/index.php?title=Simulador_de_arquitectura_informática&oldid=1170631307"