Перейти к содержанию
    

MT-Link и JTAG Chain

Возник вопрос о поддержке MT-Link (через RDI в IAR) работы с цепочкой JTAG.

Железо уходит в разводку не хочется нарваться

на проблемы. Кто-то имел опыт?

Автор MT-Link не смог ответить однозначно.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Работоспособно настолько же, как в оригинальном JLinke. С поправкой на версию ДЛЛ. Вся логика формирования битстрима JTAG сидит в JlinkARM.dll. Там же храниться допустимое число устройств в цепочке. Для 2.72 версии это кажется 3 ( плюс-минус 1).

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Работоспособно настолько же, как в оригинальном JLinke.

Спасибо!

 

А это практика или умозаключения? Меня, например, смутила работоспособность

и отсуттствие каких-либо предупреждений при указании любых произвольных

значений "Position" и "IR len" при наличии одного единственного устройства.

Прошивка MT-Link 1.5 DLL 2.74c

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Пробовал MT-Link на OMAP5912 (ARM926 и TI55 объединены в одну цепочку) - работало корректно.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Пробовал MT-Link на OMAP5912 (ARM926 и TI55 объединены в одну цепочку) - работало корректно.

Отлично!

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

А это практика или умозаключения?

Результат дизассемблирования JlinkARM.dll и реверс-инжиниринга протокола Jlink.

Команды 0CDh и 0CEh передают готовую сформированную битовую последовательность, соответсвенно процессор JLinka (MT_linka) ретранслирует ее в Jtag. Вся логика упрятана внутри длл.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

А это практика или умозаключения?

Результат дизассемблирования JlinkARM.dll и реверс-инжиниринга протокола Jlink.

Команды 0CDh и 0CEh передают готовую сформированную битовую последовательность, соответсвенно процессор JLinka (MT_linka) ретранслирует ее в Jtag. Вся логика упрятана внутри длл.

А Вы отличие CD и CE заметили ?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

А Вы отличие CD и CE заметили ?

Отличие видно стразу, а вот условие принятия решения использовать CD или CE неочень.

Похоже, что это какаято ошибка, т.к в переменную Case_CD_CE запись никогда непроисходит.

Этот код практически неменяеться очень давно. В 2.14 версии Case_CD_CE был связан с апгрейдом фирмвари. И что за странное число 2C88h?

Вот кусок от 2.72:

.text:1000EBA7                 mov     ecx, Case_CD_CE
.text:1000EBAD                 mov     MaxBitOff, edx
.text:1000EBB3                 cmp     ecx, 2C88h
.text:1000EBB9                 jge     short Use_CE
.text:1000EBBB
.text:1000EBBB Use_CD:
.text:1000EBBB                 mov     word ptr [esp+10D8h+lpWriteBuffer+1], ax

У меня маловато статистики (логов) чтобы окончательно разобраться в этом вопросе. Надо-бы запустить длл под отладчиком и разобраться с содержимым Case_CD_CE

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

они с версии 274dll полностью перешли на выдачу CE хидера ( раньше был CD только) Похоже они еще инфу об ожидаемом времени исполнении пакета в проце толкают через CE хидер (он длиннее на один байт)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
К сожалению, ваш контент содержит запрещённые слова. Пожалуйста, отредактируйте контент, чтобы удалить выделенные ниже слова.
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...