Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Memory failure detection #31

Open
dariosb opened this issue Jun 30, 2020 · 0 comments
Open

Memory failure detection #31

dariosb opened this issue Jun 30, 2020 · 0 comments
Assignees

Comments

@dariosb
Copy link
Member

dariosb commented Jun 30, 2020

Ante fallas de hardware en el acceso a las memoria dataflash y eeprom se vuelve complicado detectar el mal funcionamiento, dado que las tramas se siguen reportando pero parcialmente y ante cortes de energía se pierde o duplica la info reportada.

Por tal motivo es preciso realizar una verificación del correcto funcionamiento de las memorias al momento del arranque que permita contextualizar la situación y así hacer mas evidente la falla.

El acceso a dataflash ya se está verificando en el arranque dentro de flash_init, que devuelve un código de error. Se podría levantar desde ffile_init y retornarlo capturandolo en el main y tomar decisiones en el arranque, o bien levantar el estado del acceso a la memoria mediante flash_verify_device que serviría para contextualizar la situación desde alguno de los automatas, por ejemplo Collector, no se si es el mas indicado.

Por el lado de la eeprom hoy no hay nada armado que verifique el acceso read/write. Como alternativa planteo utilizar una zona de memoria libre (1byte) y realizar una secuencia de comprobación en el arranque. Por ejemplo
escritura (xAA)/ lectura / verificación / escritura (x55) / lectura / verificación

Por otro lado y pensando en la puesta en marcha en producción sería interesante reflejar si hay error en memorias también en los leds, lo que permitiría facilitaría la detección de la falla.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants