¿Puede la memoria de la MCU estar sujeta a errores de bit y fallas?

4

Uno de mis prototipos más antiguos para Super OSD siempre tuvo un pequeño error. Un solo píxel en el video, aproximadamente a mitad de camino en el cuadro, siempre estaría apagado. Realmente no afectó a nada, ya que la mayoría de los píxeles normalmente permanecían en modo apagado, pero se notaba durante los patrones de prueba. Nunca pude reducir la causa.

Pensando en ello ahora, ¿podría haber sido un bit fallido en la matriz de memoria? ¿Es esto en absoluto común con MCU con SRAM? El prototipo no fue objeto de abuso: un fijo de + 3,38 V (dentro de la clasificación de 3,0 V - 3,6 V), funcionamiento a temperatura ambiente, carga mínima en las salidas. Fue un dsPIC33FJ128GP802.

Estoy diseñando un nuevo prototipo ahora y creo que es el mismo chip que usé la última vez, así que veré si el problema vuelve a ocurrir. ¿Alguien sabe si es prudente ejecutar una "prueba de memoria" en un chip?

    
pregunta Thomas O

4 respuestas

4

sí, pueden, pero cualquier programador decente verifica la programación.

Esto normalmente se hace tomando una suma de verificación del programa. Realmente supongo que si es repetible, lo reprogramaría solo para asegurarme, y si aún es repetible, su software tiene un pequeño error. Este tipo de error puede ser un infierno de encontrar.

Para verificar el ram, debe escribir los caracteres de prueba y leerlos en voz alta, un byte en un tipo y ver si no coincide.

    
respondido por el Kortuk
2

Siempre es prudente realizar la comprobación de la memoria. Normalmente pongo una rutina de prueba de memoria simple como parte de la secuencia de inicio para mi código de firmware. Si bien una prueba completa puede llevar más tiempo dependiendo del tamaño de la memoria, se puede hacer una prueba más rápida para detectar errores graves.

Este artículo en embedded.com tiene una buena explicación y algún código de ejemplo sobre cómo hacerlo simple pruebas de memoria en un dispositivo integrado.

    
respondido por el sybreon
1

También es bueno observar que, para las memorias (DRAM, SRAM), los errores de bits transitorios suelen ser algunos órdenes de magnitud más probables que los errores permanentes. Las sumas de comprobación no son efectivas contra los errores de bit transitorios, por lo que para resolver estos problemas de detección y corrección (EDC) se requiere.

La buena noticia para los sistemas no relacionados con la seguridad con una pequeña cantidad de RAM es que las tasas de fallas son todavía bastante bajas (500-5000 FIT por Mbit).

    
respondido por el Schedler
0

Muy poco probable. La memoria en chip en las MCU no falla. Las pruebas de RAM solo son necesarias para la memoria RAM externa. Es mucho más probable que sea un problema de código que coloca algo en la RAM donde no debería hacerlo - mal puntero, etc.

    
respondido por el mikeselectricstuff

Lea otras preguntas en las etiquetas