реклама на сайте
подробности

 
 
 
Reply to this topicStart new topic
> подключить в одну JTAG цепочку несколько устройств (процессоры, ПЛИС)?, будут ли работать (обнаружат ли) тулзы (IspVM, IAR, CCS) "свое"
yes
сообщение Nov 18 2009, 16:07
Сообщение #1


Гуру
******

Группа: Свой
Сообщений: 2 198
Регистрация: 23-12-04
Пользователь №: 1 640



мне кажется, что я должен знать длину BYPASS регистра до и после нужного устройства
например, если у меня плисина стоит между DSP и ARM-ом, то нужно соответственно задать два устройства с соответствующей длинной BYPASS регистра, а ПЛИС между ними
но что-то не нахожу эту длину в доках, для каких-то устройств есть, для каких-то нету

возможно ли "измерить" эту цепочку автоматически?
может есть какие-то тулзы или методы для этого?

вообще, каких проблем ожидать от:
CCS (в цепочке ОМАР с двумя ядрами ARM/DSP)
IAR (еще один ARM для house-keeping-а, ну и ОМАР-ский АРМ хотелось бы адекватным тулом дебажить)
IspVM (ECP2 и, возможно, XP2)

если возможно, то имеет ли значение порядок - например, с DSP предполагается много работы (debug), а остальное меньше - имеет ли смысл ставить его в конец цепочки (TDO наружу), предполагаю, что читать из него больше чем писать
или без разницы?
Go to the top of the page
 
+Quote Post
SM
сообщение Nov 18 2009, 16:44
Сообщение #2


Гуру
******

Группа: Свой
Сообщений: 7 946
Регистрация: 25-02-05
Из: Moscow, Russia
Пользователь №: 2 881



Цитата(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 там еще куча всего проприетарного.
Go to the top of the page
 
+Quote Post
yes
сообщение Nov 18 2009, 17:00
Сообщение #3


Гуру
******

Группа: Свой
Сообщений: 2 198
Регистрация: 23-12-04
Пользователь №: 1 640



спасибо

BSDL есть (то есть я нашел для своего железа) для всего.

а как там найти длину? или CCS/IspVM понимают файл и его можно не разбирать

я уже забыл (да не особо и знал smile.gif JTAG) - сам BYPASS один бит, то есть DATA цепочка не сильно удлинняется, а длинней становится IR и его надо полностью, поэтому последовательность без разницы?

это она ==6 ?
attribute INSTRUCTION_OPCODE of TMS320OMAPL138: entity is
"EXTEST (011000), " &
"BYPASS (111111), " &

---------------

правильно ли я понимаю, что если IcePick-C не трогать, то он находится в режиме компатибилити (fake ?) и всякие IspVM его обходят?
Go to the top of the page
 
+Quote Post
SM
сообщение Nov 18 2009, 17:23
Сообщение #4


Гуру
******

Группа: Свой
Сообщений: 7 946
Регистрация: 25-02-05
Из: Moscow, Russia
Пользователь №: 2 881



Цитата(yes @ Nov 18 2009, 20:00) *
а как там найти длину? или CCS/IspVM понимают файл и его можно не разбирать

Не, не понимают.

Цитата(yes @ Nov 18 2009, 20:00) *
это она ==6 ?
attribute INSTRUCTION_OPCODE of TMS320OMAPL138: entity is
"EXTEST (011000), " &
"BYPASS (111111), " &


Почти. Там должно быть нечто типа

attribute INSTRUCTION_LENGTH of TMS320OMAPL138 : entity is 6;

Только учтите, что это валидно в режиме пограничного сканирования, в который техасские ребята как правило вводятся нулем по TRST при EMU0=EMU1=0. В режиме эмуляции/отладки там все не так (например 55-ое ядро 38 бит, старые 6000-ки кажется 46 бит, ARMы то ли 4, то ли 8, ну это в описании эмуляции армов есть, ну и т.д.). Большинство длин в режиме эмуляции, для девайсов, в которых они фиксированы, найдете в xdsfamily.cfg, который есть внутри композера, там параметр "irbits".

В порядке информации (что-то мне подсказывает, что у Вас OMAP-L138), он устроен так:
IcePick-C (irbits=6)
@icepick port 0x11 -> TMS320C674x (debug core tms320c64_plus, irbits=38)
@icepick port 0x12 -> ARM9 (irbits = 4)
@icepick port 0x13 -> ETB11 (irbits = 4)

соотв. 6 бит самого ICEPICK-а всегда болтаются в IR, а остальные подключаются по мере необходимости Icepick-ом в зависимости от того, как его запрограммировали.


Цитата(yes @ Nov 18 2009, 20:00) *
правильно ли я понимаю, что если IcePick-C не трогать, то он находится в режиме компатибилити (fake ?) и всякие IspVM его обходят?


По идее, он просто 6-битный байпас, а все дерево, что "под ним", отключено и отсутствует. Но если захочется подебажить ARM, то Icepick не удастся "не трогать".


Цитата(yes @ Nov 18 2009, 20:00) *
я уже забыл (да не особо и знал smile.gif JTAG) - сам BYPASS один бит, то есть DATA цепочка не сильно удлинняется, а длинней становится IR и его надо полностью, поэтому последовательность без разницы?

Верно. Только не совсем без разницы smile.gif Не надо путать тех, кто до интересующего девайса и тех, кто после smile.gif smile.gif
Go to the top of the page
 
+Quote Post
iosifk
сообщение Nov 19 2009, 06:46
Сообщение #5


Гуру
******

Группа: Модераторы
Сообщений: 4 011
Регистрация: 8-09-05
Из: спб
Пользователь №: 8 369



Цитата(yes @ Nov 18 2009, 20:07) *
мне кажется, что я должен знать длину BYPASS регистра до и после нужного устройства
и т.д.

Могу предложить кое что с моей страницы о JTAG и статьи на эту тему.
Еще рекомендую попробовать любую программу по сканированию, они там перечислены. Программы зачтут ID. И там сразу видно, что и как происходит...


--------------------
www.iosifk.narod.ru
Go to the top of the page
 
+Quote Post
yes
сообщение Nov 19 2009, 12:48
Сообщение #6


Гуру
******

Группа: Свой
Сообщений: 2 198
Регистрация: 23-12-04
Пользователь №: 1 640



Цитата(iosifk @ Nov 19 2009, 09:46) *
Могу предложить кое что с моей страницы о JTAG и статьи на эту тему.
Еще рекомендую попробовать любую программу по сканированию, они там перечислены. Программы зачтут ID. И там сразу видно, что и как происходит...

спасибо, железа пока нет
Go to the top of the page
 
+Quote Post
iosifk
сообщение Nov 19 2009, 13:13
Сообщение #7


Гуру
******

Группа: Модераторы
Сообщений: 4 011
Регистрация: 8-09-05
Из: спб
Пользователь №: 8 369



Цитата(yes @ Nov 19 2009, 16:48) *
спасибо, железа пока нет

можно всзять любой стартовый набор...
я последний раз тренировался на блэкфине...


--------------------
www.iosifk.narod.ru
Go to the top of the page
 
+Quote Post

Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 13th July 2025 - 17:24
Рейтинг@Mail.ru


Страница сгенерированна за 0.01409 секунд с 7
ELECTRONIX ©2004-2016