Depurador de sniffer de protocolo de memoria SD

0

Estamos tratando de depurar una interfaz de tarjeta SD (4bit SDIO) y estoy teniendo problemas para encontrar un analizador lógico que pueda hacer una decodificación de pila completa.

Entonces, mi dispositivo 'soñado' sería un analizador lógico que puede emular cualquier marca de tarjeta de memoria SD en formato FAT32 o exfat, con una reproducción completa de todas las lecturas y escrituras de datos, y cómo eso afectó el sistema de archivos.

El problema que tenemos es que la tabla FAT de los sistemas de archivos está dañada después de varias horas de escritura en una tarjeta SD.

Hay soluciones como esta enlace (a un precio de $ 8k) . pero parece que solo descodifica la capa de datos, pero no te da el contexto de cómo se verán afectados los archivos de datos y FAT en la tarjeta.

¿Alguien sabe de una solución?

    
pregunta labnet

1 respuesta

3

Hay varios proyectos de bajo costo que emulan dispositivos SDIO; de hecho, SDIO es un estándar que puede utilizar para implementar sus propias clases de dispositivos, por lo que no es sorprendente.

Un esfuerzo reciente es el generación de archivos FAT sobre la marcha de scanlime (video aquí ).

Nunca se puede saber qué hay almacenado dentro de una tarjeta SD, ya que la interfaz del dispositivo de bloque externo solo se vincula a través de firmware a los bloques de memoria interna (que generalmente son de un tamaño diferente y se intercambian al vuelo). , Copiar en escrito). Entonces, si bien el "emulador" de su tarjeta SD puede detectar un error en su sistema operativo, es posible que no detecte un error en el firmware del controlador de memoria de su tarjeta SD o un defecto de flash.

Desde un punto de vista personal, parece que desea un analizador lógico conectado a la PC (p. ej. sigrok + fx2lafw + FX2 evalboard) que captura las transacciones SD (posiblemente ralentizadas por el hardware) y las interpreta en el software de la PC. , modificando una imagen del sistema de archivos en RAM que debería ser consistente con lo que sucede en la tarjeta SD. De esa manera, podría tomar "instantáneas" en cualquier momento, y con suficiente conocimiento del sistema de archivos FAT (afortunadamente, muy simple), analizar dónde ocurren los errores.

Yo diría que eso es solo un poco mejor que depurar directamente el controlador del sistema de archivos de lo que se escriba en la tarjeta SD, y la depuración del software es mucho, mucho más fácil. Si puede estar a mitad de camino, el controlador del sistema de archivos está libre de errores (por ejemplo, si utiliza la gran implementación de Linux, o VXworks o las ventanas integradas), trataría de descartar errores en la parte del controlador SDIO del sistema operativo, y si se muestra no hay errores, entonces, bueno, tienes hardware roto.

    
respondido por el Marcus Müller

Lea otras preguntas en las etiquetas