Цитата(yes @ Nov 18 2009, 19:07)

мне кажется, что я должен знать длину BYPASS регистра до и после нужного устройства
Верно. И кроме их длин, а именно длин IR, еще их количество (нельзя два байпаснутых девайса определить как один более длинный)
Цитата(yes @ Nov 18 2009, 19:07)

например, если у меня плисина стоит между DSP и ARM-ом, то нужно соответственно задать два устройства с соответствующей длинной BYPASS регистра, а ПЛИС между ними
но что-то не нахожу эту длину в доках, для каких-то устройств есть, для каких-то нету
Это не в доках, а в BSDL-моделях. Они есть для всех поголовно девайсов, у которых JTAG.
Цитата(yes @ Nov 18 2009, 19:07)

возможно ли "измерить" эту цепочку автоматически?
может есть какие-то тулзы или методы для этого?
Возможно, но для этого нужно знать IDCODE-ы всех потенциально возможных девайсов. Тулзы есть, тот же альтерский IDCODE Reader, на JAM STAPL писанный.
Цитата(yes @ Nov 18 2009, 19:07)

CCS (в цепочке ОМАР с двумя ядрами ARM/DSP)
Никаких проблем. CCS и оба ядра на раз подцепит, и еще и тот "еще один АРМ" в синхронную отладку. В сетапе только конкретно прописать все байпасы, в количестве, реально соответствующем истине (1 байпас = 1 бит DR-а в байпасе). Ну и OMAP наверное там не просто два девайса, а целое дерево на JTAG-роутере ICEPICK-C. Касаемо ARM-ов современный CCS дебажит все и вся, от ARM7 до Cortex-A8 с NEON-ом. В CCS даже драйвер ETB есть, который отдельным девайсом на JTAG-маршрутизаторе бывает.
Цитата(yes @ Nov 18 2009, 19:07)

IAR (еще один ARM для house-keeping-а, ну и ОМАР-ский АРМ хотелось бы адекватным тулом дебажить)
Понятия не имею. Особенно в части поддержки всяких продвинутых IcePick-ов.
Цитата(yes @ Nov 18 2009, 19:07)

IspVM (ECP2 и, возможно, XP2)
Нормально, без проблем. Ему, разумеется, не надо весь омап расписывать всем деревом, ему от него одного маршрутизатора в байпасе хватит.
Цитата(yes @ Nov 18 2009, 19:07)

если возможно, то имеет ли значение порядок - например, с DSP предполагается много работы (debug), а остальное меньше - имеет ли смысл ставить его в конец цепочки (TDO наружу), предполагаю, что читать из него больше чем писать
или без разницы?
Без разницы, все равно полностью весь круг вычитывается/пишется, преамбула, данные и постамбула.
Вот некий полезный документ в части хардверных возможностей отладчика CCS.
http://tiexpressdsp.com/images/9/90/Dbjtag_users_guide.pdfА вот оттуда пример, что понапихано на маршрутизатор в одном из Davinci:
Код
# The DaVinci device has an IcePick-C
# router plus one DSP and one ARM.
@ router family=icepick_c subpaths=10
# These are the debug subpaths.
& sub_9 address=19 default=no
@ fake family=bypass irbits=8
& sub_8 address=18 default=no
@ c64 family=tms320c64plus
& sub_7 address=17 default=no
@ etb family=bypass irbits=4
& sub_6 address=16 default=no
@ arm9 family=arm9xx
# These are the test subpaths.
& sub_5 address=5 default=no
@ plldft family=bypass irbits=8
& sub_4 address=4 default=no
@ pllcatscan family=bypass irbits=7
& sub_3 address=3 default=no
@ secmodule family=bypass irbits=1
& sub_2 address=2 default=no
@ gemp1500 family=bypass irbits=18
& sub_1 address=1 default=no
@ dftp1500 family=bypass irbits=50
& sub_0 address=0 default=no
@ efuse family=bypass irbits=4
& /
видно, что кроме ARM, C64 и ETB там еще куча всего проприетарного.