Como este , que hace 1.49 DMIPS / MHz. Incluso con la canalización, solo hay 1 etapa de ejecución por ciclo, ¿no?
Como este , que hace 1.49 DMIPS / MHz. Incluso con la canalización, solo hay 1 etapa de ejecución por ciclo, ¿no?
Respuestas:
DMIPS y MIPS no son lo mismo. DMIPS significa "Dhrystone MIPS", y es un estándar para comparar diferentes rendimientos de microcontroladores / microprocesadores en diferentes conjuntos de instrucciones. El estándar ya no es tan nuevo (*), por lo que lo que el procesador de referencia podría hacer a 1 DMIPS / MHz en 1 segundo puede requerir un controlador más avanzado de 670 ms a la misma velocidad de reloj, solo porque hará algunas acciones en 1 instrucción mientras que el otro controlador puede necesitar 2 instrucciones, o una instrucción que requiera más ciclos de máquina.
Una arquitectura de 16 bits, por ejemplo, normalmente tendrá un mejor rendimiento de Dhrystone que una arquitectura de 8 bits, y una de 32 bits, como la que se refiere, aún más.
(*) m.Alin se refiere al benchmark CoreMark más reciente . Tenga en cuenta que esto está escrito en C, por lo que en realidad también está incluyendo el rendimiento del compilador en el resultado (al igual que Dhrystone, BTW).
DMIPS es una medida relativa en lugar de absoluta. A diferencia de MIPS, en realidad mide qué tan rápido el uC puede hacer algo útil en lugar de cuán rápido ejecuta las instrucciones.
Al igual que cualquier punto de referencia, tiene sus limitaciones, pero una forma simple de verlo es qué tan rápido puede completar el código de referencia en comparación con un VAX 11/780 (una máquina de 1 MIPS).
Así, por ejemplo, si su uC completa el punto de referencia 100 veces más rápido que un VAX 11/780, tiene una máquina 100DMIPS. Si funciona a 100MHz, entonces está clasificado a 1 DMIPS / MHz.
Tenga en cuenta que el DMIPS anunciado generalmente es inalcanzable en el uso normal, especialmente en uC grandes con velocidad de flash, captación previa, tiempos de espera / fallas, etc. Aquí hay una buena discusión sobre el rendimiento del DMIPS PIC32. Este enlace tiene un código Dhrystone para microcontroladores.