Если имеешь в виду "Standard ARM Test/Debug Interface" (который придумал филипс дабы не писать на каждом углу, что в LPC2000 BS нет), то не путай святое с праведным. Если производитель контроллера укладывает отладочную машину (в AVR обзываемую, например, OnchipDebugController, в ARM же вроде ко всему ядру доступ даётся), то управление этой машиной тоже осуществляется через доступ к регистрам управления (обычно практически также, как к пинам) - через цепочки Scan Chain. Например, в DDI0029G_7TDMI_R3_trm.pdf - раздел Appendix B описывает это достаточно внятно. BS же это сдвиговый регистр ахрененного сайза, подключенный именно к пинам. Вон у LPC не было BS, а в LPC2378 уже положили. Ядро и периферия - разные вещи. Обычно в программе для доступа к одним периферийным регистрам нужно прописать что-то в другие, чего-то ждать не более или не менее, а то и контроллер какой запустить. Получается, что все регистры, к которым нужен доступ, должны быть окольцованы сдвиговыми регистрами. Не слишком ли дорогая отладочка для производителя получается? Они на ОЗУ жмутся, а на FLASH меньше во сколько раз из-за количества транзисторов, а тут гимор ещё тот, и не только в количестве. Т.е. "протокол шитья FLASH" есть описание регистра BoundaryScan - файл BSDL. И никакое ядро ARM для доступа к этим регистрам нафиг не нужно - достаточно JTAG с его TAP-контроллером, сделанным или по стандарту, или это не JTAG;)