Echa un vistazo a Joint Test Action Group. En todos los procesadores que tienen un puerto JTAG, hay una máquina de estado JTAG estandarizada incorporada. Esta máquina de estado tiene la capacidad de acceder a registros / datos dentro del procesador, detener la ejecución, restablecer la CPU, etc. También se pueden establecer puntos de interrupción para el código (que creo que básicamente se detienen en la coincidencia de direcciones), que están limitados ya que coinciden con una dirección , los circuitos integrados de lógica combinatoria se utilizan como comparador. (alguien que sepa más sobre los puntos de interrupción del hardware puede aclarar esto para nosotros) JTAG también se puede usar para la ejecución de código arbitrario, esto a veces se usa como un medio para escribir código en flash u otros tipos de memoria desde la cual la CPU ejecuta el código.
GDB depura el hardware conectándose a un servidor GDB, que debe proporcionarse para el hardware en particular, ya que GDB solo conoce los comandos de depuración como detener, cargar, continuar, paso, etc. La interfaz del servidor GDB debe implementar estos comandos haciendo uso de La interfaz JTAG.
Por ejemplo, su hardware es un stm32, con JTAG.
- ¿Qué debo hacer si tengo interés en la incrustación y la robótica, pero estoy en mi tercer año en E&TC?
- ¿Alguien puede ayudarme a encontrar la dirección de Pc0-Pc5? La hoja de datos: http://www.pmt-fl.com/downloads/picocap/DB_PCap01Ax_0301_en.pdf
- ¿Qué significa 4 UART en un microcontrolador (Arduino)?
- ¿Es posible saltar del dominio del PLC del sistema de control a los sistemas integrados?
- Mirando el SOC de los microprocesadores y microcontroladores, creo que no hay diferencia entre los dos, ya que ambos pueden reemplazarse entre sí. ¿Es correcto este entendimiento?
- El hardware al que se ha conectado es una herramienta basada en, por ejemplo, FTDI FT232H (que es un chip USB que puede hacer muchos tipos de interfaces seriales síncronas / asíncronas como SPI, JTAG y GPIO)
- Esto está conectado a su PC con un cable USB
- Está ejecutando OpenOCD en su PC que admite el protocolo GDB remoto y puede usar este chip FT232H para realizar funciones JTAG como establecer / desarmar puntos de interrupción, pasos, etc.
- Y finalmente ejecuta GDB (para armar), y su objetivo es telnet en algún puerto que fue abierto por OpenOCD. Ahora GDB solo envía los comandos que conoce y recibe los datos que comprende.
(Espero que lo que dije sea realmente correcto)