Pregunta

¿Cómo puedo encontrar el tamaño de flash (ROM) y memoria RAM utilizada por el firmware? El firmware se implementa utilizando C ++. También tengo Keil microvision4; va a ser muy útil para encontrar el tamaño de ROM y RAM?

¿O tengo que mirar el archivo MAP (.M51) del firmware para encontrar los tamaños de memoria?

O simplemente contando el tamaño del archivo hexadecimal archivos (hex) es suficiente para localizar el tamaño de ROM?

¿Fue útil?

Solución

Algunos comentarios:

  1. El tamaño del archivo hex no proporciona una gran cantidad de información. Por ejemplo: no proporcionará ningún uso de memoria RAM. Puede incluso no le dirá el tamaño de la imagen, ya que reside en el dispositivo (estás escribiendo a NOR y NAND flash? ¿Cuáles son los tamaños de bloque de flash, etc.)
  2. El archivo de mapa es una buena herramienta para entender el diseño de memoria y tamaños. Se debe proporcionar toda la información de asignaciones de segmentos. El director del proyecto Keil es bastante bueno, a fin de comprobar sus opciones de construcción para asegurarse de que está generando un archivo de mapa detallado.
  3. Tome un vistazo a su archivo de directiva enlazador para asegurarse de que entiende cómo se asignan y se presentarán en la memoria aquellos segmentos (BSS, datos, etc.).
  4. Tenga en cuenta que el archivo de mapa no contendrá toda la información relativa a dinámica (heap) la asignación de memoria.
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top