La aplicacion de boundary scan se desarrollo en su momento para la verificacion de PCB montados con sus componentes. Como podes saber, en un PCB montado, si todas las patitas de los CIs hacen buen contacto con las pistas? Como saber si no hay cortos entre patas? Como saber si las pistas del PCB estan intactas (sobre todo en un PCB multicapa), o hay una desconexion entre dos dispositivos?
En una epoca esas pruebas se realizaban electricamente a traves de sensores que hacian contacto en distintos puntos del PCB. Con la reduccion del tamanio de los dispositivos se definio el boundary scan que es un sistema por el cual se puede controlar cada una de las patitas del dispositivo, si controlo dos dispositivos en el PCB puedo ver si variando el estado de una salida, varia la entrada del otro dispositivo conectado a el.
Con el tiempo el tema se fue haciendo mas complejo y se escribieron completas bibliotecas de funciones para acceder a aquellos dispositivos (como las memorias) que de por si no tienen puerto JTAG, pero que en general estan conectadas a algun dispositivo que si lo tiene.
Los equipos que hacen las verificaciones de tipo boundary scan no son baratos (los que yo conozco), por muchas razones: Son de alta confiabilidad, incluyen bibliotecas para acceder a miles de dispositivos, etc. Yo NO conozco ningun equipo de verif. JTAG que este debajo de los 10 mil dolares.
Lo que pasa es que, a traves del conector de JTAG, tambien se conectan muchos programadores y emuladores. Para programar y hacer debug de FPGA, microprocesadores, etc. Pero esos equipos de programacion y debug por JTAG que a veces pueden valer poquisimo, NO tienen las capacidades de boundary scan ni tienen capacidades para "hablar" con miles de dispositivos, sino, normalmente, con unos pocos de un solo fabricante.