dsPIC33 Code Protection, ¿cómo funciona?

3

Tengo un micro serie dsPIC33 que creo que está "protegido por código" porque cuando intento leer los datos del micro, obtengo todos los ceros con un programador PICKit2. El programador de PICKit2 es uno que compré de Microchip y sé que funciona ya que he programado otros micros con él.

Soy bastante nuevo en el campo de los dispositivos integrados y micro, y estoy tratando de aprender. Así que tengo varios dispositivos en mi poder, he tocado con éxito el micro y leí su código, pero los dsPIC no puedo obtener nada más que ceros.

Tengo dos preguntas:

  1. Si el micro está, de hecho, protegido por código, ¿hay alguna forma de desproteger y extraer la imagen? Según el sitio web de Microchip, afirma que podría ser posible, pero tales métodos implican someter sus productos más allá de sus límites operativos normales. Supongo que se refieren a meterse con los niveles de voltaje y qué no.

  2. ¿Qué está sucediendo realmente cuando codifico la protección de un micro?

Como una nota al margen interesante, este dsPIC33 particular que tengo está programado en claro a través del bus USB. En teoría, podría detectar la salida del chip FTDI que se encuentra frente al Micro y obtener el código de esa manera, pero estoy más interesado en saber si leer todos los ceros significa que el chip está protegido por código y, si es así, si Es posible romper la protección y cómo se logra esta protección.

Planeo trabajar en un pequeño gaget como prueba de concepto y me gustaría asegurarme de que el código que escribo y flasheo en mi propio dispositivo esté protegido, por lo que estoy tratando de entender qué tan seguro es esto.

Y para los puristas, me doy cuenta de que se puede entrar en algo, solo intento ver qué tipo de esfuerzo implica este caso en particular.

El número de pieza exacto es dsPIC33FJ256GP710A de Microchip.

¡Gracias por leer!

    
pregunta Eric M

1 respuesta

3

El código de protección se establece (opcionalmente) utilizando un bit de configuración al programar. Si no está configurado, puede volver a leer normalmente, si lo está, volver a leer todos los ceros y la única forma de borrarlo es borrando el chip.
El bit controlará algo así como un par de puertas AND para controlar el acceso a las líneas de memoria flash: esta página se encuentra en Flylogic discute la estructura de bits de seguridad de un PIC16 (cómo derrotarlo aquí )
Para vencerlo, por lo general se requiere acceso al dado, por ejemplo, al destape del chip, un microscopio potente y una idea de qué buscar.
Este enlace describe el proceso de borrado del bit de seguridad en un PIC18F.

    
respondido por el Oli Glaser

Lea otras preguntas en las etiquetas