Texas Instruments (далее для сокращения TI) поддерживает несколько контроллеров JTAG для системы отладки (eXtended Development System, XDS), с разными возможностями. В этой статье (перевод [1]) описаны требования по интеграции коннектора XDS на плату, поддерживающего различные функции отладки. Эта информация поможет, если Ваш процессор поддерживает экспорт трассировки ядра (core trace) или системной трассировки (system trace) через ножки EMU, и нужно сделать свое целевое отлаживаемое устройство совместимым с продуктами XDS. См. также руководство TRM [2].
Примечание: аббревиатура TRM означает Technical Reference Manual.
Для всех прочих функций отладки, независимо от типа продукта XDS, здесь описываются требования к цели отладки. Если следовать им, то допускается совместимость функционирования с большинством продуктов XDS. Даже когда определенный XDS поддерживает другой собственный коннектор, имеются адаптеры, которые позволяют переключаться между различными эмуляторами XDS.
• JTAG Connectors and Pinout site:ti.com. • JTAG Adapters site:ti.com. • Designing for JTAG Emulation Reference Guide site:ti.com. Этот документ описывает 14-выводный коннектор JTAG и электрические требования к целевой плате для поддержки XDS510 JTAG (независимо от заголовка документа, руководство может быть применено и к другим процессорам, не обязательно только к TMS320C6000 DSP). • XDS560 Emulator Technical Reference site:ti.com. • Common Trace Transmission Problems and Solutions site:ti.com. Этот документ поможет решить общие проблемы трассировки сигналов. • Emulation Fundamentals for TI's DSP Solutions site:ti.com.
Существуют следующие эмуляторы XDS:
XDS100v1(1) (только для процессоров DSP) XDS100v2 (для этого эмулятора существует открытая документация - схема, печатная плата, прошивка CPLD [8, 9]) XDS100v3 (для этого эмулятора существует открытая документация - схема, печатная плата, прошивка CPLD [9]) XDS110(2) XDS200 XDS510(1, 3) XDS560(1) XDS560T(4) XDS560v2 System Trace XDS560v2 Pro Trace
Примечания:
(1) XDS100v1, XDS510 и XDS560 сняты с производства и не поддерживаются. (2) XDS110 доступен также на некоторых отладочных платах Simplelink MCU Launchpad: MSP432P401, CC1310, CC2640R2, CC2650, Hercules RM46 и т. п., а также на обоих CC1310 и CC2650 SensorTag. (3) Некоторые модели XDS510 не поддерживают уровни 1.8V JTAG. Существуют адаптеры, которые при необходимости могут осуществить трансляцию уровней. Для специфичных требований по рабочим напряжениям и частотам см. документацию производителя. (4) XDS560T устарел.
В следующей таблице показана взаимосвязь со специальными фунциями для различных типов эмуляторов XDS и коннекторов.
Модель XDS
XDS100v1
XDS100v2
XDS100v3
XDS110
XDS200
XDS510
XDS560
XDS560 Rev D cable
XDS560T
XDS560v2 System Trace
XDS560v2
Функция(1)
Тип коннектора
14-pin TI 20-pin TI
14-pin TI 20-pin TI 20-pin ARM
14-pin TI 20-pin TI 20-pin ARM
20-pin TI
20-pin TI
14-pin TI 20-pin TI
14-pin TI 20-pin TI
20-pin TI
60-pin TI
60-pin MIPI HPST
60-pin MIPI HPST
Адаптивное тактирование(2)
нет
ЕСТЬ
ЕСТЬ
нет
ЕСТЬ
ЕСТЬ(5)
ЕСТЬ(5)
ЕСТЬ
ЕСТЬ
ЕСТЬ
ЕСТЬ
Core Pin Trace(3)
нет
нет
нет
нет
нет
нет
нет
ЕСТЬ (только DSP)
нет
нет
ЕСТЬ
System Pin Trace(3)
нет
нет
нет
нет
нет
нет
нет
нет
нет
ЕСТЬ
ЕСТЬ
Отладка SWD + SWO Trace
нет
нет
нет
ЕСТЬ
ЕСТЬ
нет
нет
нет
нет
нет
нет
IEEE1149.7 (cJTAG)
нет
нет
ЕСТЬ
ЕСТЬ
ЕСТЬ
нет
нет
нет
нет
ЕСТЬ
ЕСТЬ
TVRef
ЕСТЬ
ЕСТЬ
ЕСТЬ
ЕСТЬ
ЕСТЬ
ЕСТЬ
ЕСТЬ
ЕСТЬ
ЕСТЬ
ЕСТЬ
ЕСТЬ
System Reset (nReset)
ЕСТЬ(4)
ЕСТЬ(4)
нет
ЕСТЬ
ЕСТЬ
ЕСТЬ(4)
ЕСТЬ(4)
ЕСТЬ
нет
ЕСТЬ
ЕСТЬ
Emulation Boot Modes
ЕСТЬ
ЕСТЬ
ЕСТЬ
ЕСТЬ
ЕСТЬ
ЕСТЬ
ЕСТЬ
ЕСТЬ
ЕСТЬ
ЕСТЬ
ЕСТЬ
HS-RTDX
нет
нет
нет
нет
нет
нет
ЕСТЬ
ЕСТЬ
нет
нет
нет
Примечания:
(1) Для полной информации по функциям и совместимым уровням напряжений см. документацию производителя на эмулятор. (2) Используется только для процессоров с ядрами ARM9 и ARM11. (3) Если Ваш процессор поддерживает трассировку core trace или system trace через ножки EMU, и необходимо, чтобы целевое отлаживаемое устройство было совместимо с эмуляторами XDS, способными получить любой тип трассировки, см. рекомендации TRM [2]. (4) Эти отладчики могут в некоторых моделях быть произведены с несколькими коннекторами. Если Ваш эмулятор поддерживает 20-выводный коннектор цоколевки TI и/или цоколевки ARM [10], то он также может поддерживать функцию сброса системы (System Reset). Подробности см. в документации производителя. (5) Эти отладчики могут в некоторых моделях быть произведены с несколькими коннекторами. Если Ваш эмулятор поддерживает 20-выводный коннектор цоколевки TI и/или цоколевки ARM [10], то он также может поддерживать функцию адаптивного тактирования. Подробности см. в документации производителя.
[Адаптивное тактирование]
Микроконтроллеры и процессоры TI могут использовать ядро ARM, которое требует поддержки адаптивного тактирования (Adaptive Clocking) на выводе RTCK коннектора JTAG. Сигнал RTCK используется отладчиком XDS (если он поддерживает Adaptive Clocking), чтобы управлять прохождением TCK, пока XDS не определит перепад RTCK в ответ на предыдущий перепад TCK. Задержка RTCK позволяет ядру ARM синхронизировать входные сигналы JTAG с функциональной частотой тактов ядра, что автоматически подстраивает TCK для функциональной частоты тактов ARM.
Использование Adaptive Clocking с процессорами, которые поддерживают ножку RTCK, дает повышенную производительность отладки (ускоряется загрузка, поддержка пошаговой отладки) и повышает стабильность работы отладчика.
Режима адаптивного тактирования должен быть разрешен для XDS через отладчик.
Если у Вашего процессора TI есть ножка RTCK, то она должна быть соединена с сигналом RTCK коннектора XDS, независимо от используемого типа разъема на отлаживаемом целевом устройстве. Если Ваш эмулятор XDS поддерживает адаптивное тактирование, то оно должно быть разрешено через IDE (CCS). Если эмулятор XDS не поддерживает адаптивное тактирование, то может понадобиться адаптер, чтобы достичь полной скорости JTAG. Как вариант можно использовать XDS с частотой TCK меньше 1/8 от тактовой частоты ARM, если эмулятор XDS не поддерживает адаптивное тактирование.
Для дополнительных требований к целевым картам, рассчитанным на несколько процессоров TI, которые поддерживают RTCK, см. раздел "Адаптивное тактирование с несколькими процессорами".
[Описание сигналов интерфейса JTAG]
В описании сигналов EMU приведена информация по трассировке Core Trace и System Trace. Также см. описание стандарта IEEE1149.7(cJTAG) [3].
TVRef. Сигнал TVRef (иногда на коннекторе он называется TVDD или PD) поддерживается на всех коннекторах, и он используется эмулятором XDS, чтобы определить наличие или отсутствие питания на целевом отлаживаемом устройстве, и чтобы установить соответствующую трансляцию уровней сигналов JTAG (1.8V или 3.3V), если это поддерживает эмулятор XDS (дополнительную информацию по поддерживаемым уровням сигналов JTAG см. в документации производителя XDS).
TVRef рекомендуется подключать к отлаживаемому устройству через токоограничивающий резистор 100 Ом.
Если цепочка сканирования содержит устройства, которые требуют нескольких уровней напряжения IO (TVRef может быть установлен только на один уровень напряжения), то Вы должны использовать буферы преобразования уровней, чтобы привести к одному уровню сигналы JTAG всех микросхем в цепочке. Все сигналы, которые поступают на разъем XDS, должны быть приведены к уровню TVRef.
nRESET. Сигнал nRESET (который иногда называют SRST) это сигнал сброса системы (System Reset), и он поддерживается всеми современными отладчиками XDS. Сигнал nRESET предоставляет механизм удаленного сброса всей системы, если nReset разъема присутствует на разъеме отладчика и должен образом аппаратно интегрирован в аппаратуру сброса по питанию (power-up-reset).
• Для некоторых процессоров при отладке кода загрузки (boot code) функция Wait in Reset (см. врезку) может использовать этот сигнал. • См. врезку System Reset (Emulation), где подробнее описано, как использовать эту функцию в CCS. • Эмуляторы XDS, которые не поддерживают nRESET, обычно могут сбросить только устройства TI, включенные в цепочку сканирования JTAG.
Когда используется отладчик XDS, который поддерживает сигнал nRESET, есть возможность сбросить всю аппаратуру отлаживаемой системы, если это интегрировано в её аппаратуру. Этот сброс будет аналогичен полному сбросу при включении питания (power-up-reset, POR).
nRESET это выходной сигнал с открытым стоком от XDS, так что nRESET должен быть подтянут к верхнему уровню резистором 4.7 кОм в целевой системе.
Сигнал nRESET переводится эмулятором XDS в активный уровень лог. 0 минимум на 500 мкс.
Функция ожидания на сбросе (Wait-In-Reset) должна поместить процессор под контроль отладчика на первой инструкции, которую выполняет процессор. Это дает возможность пошагового выполнения кода, начиная с самых первых выполняемых команд. Функция Wait-In-Reset очень полезна для отладки такого ПО, как код загрузки (boot code) или код инициализации процессора.
Режим Wait-In-Reset обычно детектируется на основе состояния ножек EMU0 и EMU1 при включении питания, и их состояние может быть захвачено во время сброса по питанию. Для некоторых процессоров режим Wait-In-Reset реализован модулем ICEPICK [4].
Для некоторых процессоров, если плата использует правильные коннекторы JTAG с сигналом сброса системы, управляемым отладчиком, то функция ожидания при сбросе может быть выполнена отладчиком.
Некоторые процессоры на ядре ARM были разработаны для реализации подобного механизма без поддержки EMU0/EMU1. Этот механизм вовлекает установку встроенной в чип аппаратуры захвата вектора, чтобы была предоставлена точка останова на сбросе процессора, затем выдать сброс и обработать эту точку останова. Это может не работать на всех ядрах для начального включения питания.
Некоторые коннекторы JTAG и эмуляторы (такие как XDS560 ревизии D) поддерживают System Reset. Когда этот сигнал правильно подключен к коннектору JTAG, который его поддерживает, пользователь может сбросить целевую отлаживаемую плату из ПО отладчика.
Когда используется XDS560 ревизии D, Code Composer Studio v4 может передернуть ножку системного сброса на подходящем коннекторе JTAG, такую как ножка 20 разъема Compact TI или ножку 20 коннектора ARM.
TDIS. Сигнал TDIS (Target Disconnect) это сигнал отключения целевого отлаживаемого процессора, и он поддерживается только на разъемах TI. Он используется для детектирования момента, когда целевой процессор отключен от эмулятора путем анализа отключения GND от целевой платы.
Когда используется эмулятор XDS с разъемом TI, сигнал TDIS используется для детектирования, подключен ли физически кабель отладки к целевой системе. Обычно для этой цели в эмуляторе находится pull-up резистор, обеспечивающий лог. 1 на TDIS, когда кабель не подключен. При подключении кабеля к плате уровень TDIS просаживается в 0, что дает возможность эмулятору определить наличие подключения к целевой отлаживаемой системе.
Примечание: pull-down или ограничивающий ток резистор на TDIS не будут работать на всех моделях эмуляторов XDS. Когда TDIS соединен с GND напрямую, некоторые модели XDS будут сливать через TDIS небольшой ток через pull-up резистор в схеме эмулятора XDS. Резистор pull-down или токоограничивающий резистор, подключенный к TDIS на целевой плате, может привести к тому, что XDS не определит подключенное отлаживаемое устройство, в результате будет выдана ошибка повреждения кабеля "cable break far-from itself" [7].
EMU. Выводы EMU двунаправленные, и они поддерживают следующие функции:
В случае Boot Modes состояние ножек EMU0/EMU1 управляется эмулятором XDS. HS-RTDX предоставляет двунаправленный транспорт данных. И Core Trace, и System Trace передают историю событий и данные времени от целевого отлаживаемого процессора в эмулятор XDS. Cross Triggers это двунаправленные триггеры, которые дают возможность ситуации, когда событие в одном устройстве приводит к действию отладки в другом устройстве. Для того, чтобы определить, какие ножки EMU используются для каждой из перечисленных функций, обратитесь к даташиту на используемый процессор.
В случаях, когда у процессора больше ножек EMU, чем поддерживает XDS, должно использоваться основное правило - соединить максимально возможное количество сигналов EMU с коннектором XDS. Даже в случаях, когда определенный XDS поддерживает только подмножество функциональности EMU, предоставленное специфичным процессором, компания TI рекомендует соединение максимально возможного количества ножек EMU между процессором и разъемом XDS, чтобы обеспечить совместимость с другими эмуляторами XDS, которые предоставляют дополнительный функционал.
Внутренняя подтяжка pull-up на EMU0 и EMU1 обычно слаботочная (в диапазоне 20 кОм .. 30 кОм) и поэтому рекомендуется использовать внешние резисторы pull-up на EMU0 и EMU1. Если Ваш процессор содержит больше ножек EMU, чем на эмуляторе, их не нужно подтягивать резисторами.
Если Ваш процессор поддерживает режимы загрузки (boot modes) на ножках EMU0 и EMU1, то эти уровни этих выводов защелкиваются во время POR, чтобы установить boot mode. По умолчанию нормальный рабочий режим выбирается, когда оба сигнала EMU0 и EMU1 подтянуты к лог. 1. Другие режимы обычно включают Boundary Scan и Wait-In-Reset. См. даташит на используемый процессор для получения информации по поддерживаемым режимам загрузки и состоянию ножек EMU, требуемому при POR для выбора boot mode.
Все ножки EMU процессора должны быть снаружи подтянуты к лог. 1, когда в самом процессоре нет встроенных верхних подтягивающих резисторов.
Если на эмуляторе XDS больше ножек EMU, чем в процессоре, то можно оставить не используемые ножки EMU не подключенными.
Обычно не рекомендуется буферизировать EMU0 и EMU1, так как часто эти сигналы двунаправленные.
Если Ваш процессор не поддерживает HS-RTDX, то требуется только гарантировать, чтобы переходы уровней на сигналах EMU были достаточно быстрыми, чтобы поддерживать требования кросс-триггеров.
• Время спада - меньше 100 нс. • Время нарастания - меньше 1 мкс.
Чтобы вычислить время спада, нужно использовать ток драйвера контакта EMU одного процессора, разницу между минимальным и максимальным уровнями (от VMAX до VOL) ножки EMU, управляемой в массиве, и емкостную нагрузку для всех процессоров, в следующей формуле:
Tfall = (Vdelta x Ci x Ndevices-1) / Io
Здесь Vdelta это VOH(MAX) – VOL. Значения Io, VOH(MAX), VOL и Ci можно узнать из даташита на процессор.
Для вычисления времени нарастания используйте формулу:
tr = 1.5 x (Rpullup x Ndevices x Ci_per_device)
Примечание: это базовая константа постоянной времени RC схемы, где 1.5T указывает на ~80% времени нарастания. Для точности, если Ваш процессор содержит встроенные pull-up резисторы на ножках EMU (см. даташит на процессор), то обычно они слаботочные (~ 30 кОм). Это должно учитываться при расчете Rpullup.
Для процессоров, которые поддерживают HS-RTDX, требования более жесткие, потому что перепады уровней на ножках EMU, в обоих направлениях, могут происходить в пределах периода тактов TCK. Если Вы не можете удовлетворить эти требования, то нужно снизить частоту TCK эмулятора XDS до значения, которая обеспечит требование. Рекомендуется установить частоту TCK на 10% ниже максимальной, чтобы обеспечить некоторый защитный запас для изменения рабочих условий.
Режимы загрузки (Boot Modes). Уровни режима загрузки, которые устанавливает для целевого процессора на ножках EMU эмулятор XDS, считываются по фронту нарастания nTRST, или при включении питания процессора. Режимы загрузки могут также использоваться для принудительного перевода некоторых процессоров в состояние Wait-in-Reset. Ножки EMU, которые используются для режимов загрузки, также могут использоваться для других функций, как только загрузка завершена или сигнал сброса снят, таких как трассировка или HS-RTDX.
Кросс-триггеры. Когда ножка EMU используется для кросс-триггера (Cross Trigger), не нужно выделять ножку EMU как входной или выходной триггер, поскольку ножки EMU двунаправленные. События, запускающие выход триггера ножки EMU, могут быть установлены на нескольких устройствах. В то же время все эти процессоры также могут быть установлены для реакции на ввод триггера на той же самой ножке EMU.
HS-RTDX - устаревшая функция. HS-RTDX передает двунаправленные данные через ножку EMU, обычно через EMU0 или EMU1, на частоте JTAG TCK с максимальной частотой 35 МГц. Если Ваш дизайн использует несколько процессоров TI, которые поддерживают HS-RTDX, и эмулятор XDS также поддерживает несколько каналов HS-RTDX (XDS560 поддерживает HS-RTDX через EMU0 и EMU1), то можно запустить HS-RTDX одновременно с двумя процессорами. HS-RTDX требует интеграции с целевой библиотекой. Также требуется эмулятор XDS, такой как XDS560, поддерживающий HS-RTDX.
Core Trace и System Trace. Трассировка ядра (Core Trace) обычно предоставляет, как минимум, трассировку счетчика команд (PC) процессора и, в зависимости от реализации кристалла, может также предоставлять трассировку данных процессора (data trace) и трассировку событий (event trace). Системная трассировка это (System Trace) это основанная на сообщениях технология, которая, будучи разрешенной, может экспортировать инструменты приложения и генерируемые аппаратно сообщения от мониторов системного уровня. Многие процессоры поддерживают встроенные буферы трассировки (Embedded Trace Buffers, ETB) либо исключительно, либо в комбинации с экспортом данных трассировки через ножки EMU процессора. В случаях, когда процессор исключительно использует ETB, коннекторы с функцией трассировки (либо от TI либо от MIPI 60-выводные) не требуются для замены традиционных 14-выводных или 20-выводных коннекторов на плате, но буферы ETB только позволяют увидеть только ограниченные снимки данных (обычно в диапазоне от 4 до 32 килобайт). Чтобы определить, поддерживает ли Ваш процессор экспорт трассировки ядра или системной трассировки через ножки EMU, и/или поддерживается ли один или несколько буферов ETB, см. даташит на процессор. Достоинство экспорта данных Core Trace и System Trace через ножки EMU в эмулятор XDS с поддержкой захвата трассировки, такой как XDS560T или XDS560v2 System Trace, состоит в том, что глубина захвата получается намного больше, захватывая большой регион видимости, и можно делать точный профайлинг и анализ работы кода.
В случае, когда процессором TI поддерживается экспорт трассировки ядра, или если одновременно поддерживается как трассировка ядра, так и системная трассировка, потребуется применить 60-выводный разъем вместо традиционных 14-выводных или 20-выводных коннекторов эмулятора. В случае, когда процессор поддерживает только экспорт данных системной трассировки, может использоваться 20-выводный коннектор цоколевки TI CTI. Независимо от выбранного коннектора, когда разрабатывается система для core trace или system trace, требуется учитывать дополнительные вопроса дизайна, выходящие за рамки рассмотрения этого документа. При разработке системы с поддержкой трассировки ядра или системной трассировки рекомендуется следовать указаниям руководства [2].
Не все комбинации XDS, кабелей отладки и целевых отлаживаемых процессоров поддерживают все функции эмуляции.
[Адаптеры]
Адаптеры преобразования цоколевок позволяют большинству эмуляторов XDS подключаться к одному из стандартных поддерживаемых коннекторов JTAG на отлаживаемой системе. Использование неподходящего адаптера может отрицательно повлиять на производительность отладки.
Дополнительно имеются адаптеры, чтобы преобразовать уровни 3.3V XDS к более низким уровням логики отлаживаемых систем, с поддержкой адаптивного тактирования, требуемого для большинства ядер ARM.
Дополнительную информацию по адаптерам и моделям JTAG см. в статье [5].
Каждый эмулятор XDS и соответствующий коннектор на плате отлаживаемой системы поддерживает следующие стандартные сигналы IEEE 1149.1.
Мнем.
Тип сигнала XDS(1)
Тип сигнала процессора
Имя
Описание
TRST
O
I
Test Logic Reset
Когда этот сигнал установлен (активный уровень лог. 0), в процессоре сбрасывается вся логика отладки вместе с IEEE 1149.1 TAP.
TCK
O
I
Text Clock
Это такты тестирования, используемые для перехода по состояниям и логике машины ячейки IEEE 1149.1 TAP. В зависимости от подключенного эмулятора XDS, здесь присутствует либо постоянно формируемая частота тактов, либо управляемые пачки импульсов, требующие мониторинга сигнала возврата тактов RTCK(2).
TMS
O
I
Test Mode Select
Направляет на следующий переход по машине состояний IEEE 1149.1 TAP.
TDI
O
I
Test Data Input
Данные сканирования IEEE 1149.1, вводимые в процессор.
TDO
I
O
Test Data Output
Данные сканирования IEEE 1149.1, выводимые из процессора.
RTCK(5)
I
O
Return TCK
В зависимости от XDS подключенные сигналы JTAG тактируются с RTCK(3). Эмулятор XDS, который поддерживает адаптивное тактирование, мониторит RTCK, чтобы определить, когда надо управлять выдачей тактов TCK.
Примечания:
(1) I вход (Input), O выход (output) по отношению к XDS. (2) Если подключен процессор с ядром ARM, то может потребоваться адаптивное тактирование (управление TCK требует мониторинга RTCK эмулятором XDS), чтобы частота TCK могла увеличиться сверх 4 МГц. (3) XDS100v1 не поддерживает RTCK, но TI рекомендует соединить его на секцию N, чтобы сохранить совместимость с другими эмуляторами XDS. (4) Если Ваш процессор поддерживает ножку RTCK, подключите её к соответствующему выводу коннектора эмуляции (см. выше раздел "Адаптивное тактирование"). (5) В других документах TI сигнал RTCK может называться TCK_RET или TCLKRTN.
Во многих эмуляторах XDS на кабеле для подключения к отлаживаемому процессору также могут присутствовать следующие сигналы:
Мнем.
Тип сигнала XDS
Тип сигнала процессора
Имя
Описание
TVRef(2)
I
O
Target Voltage Reference
Должен быть соединен с напряжением ввода/вывода на целевом отлаживаемом устройстве. При активном питании этот сигнал используется для определения необходимой трансляцией уровней логики JTAG, если это поддерживает эмулятор XDS(1).
TDIS
I
O
Target Disconnect
Эмулятор XDS, который поддерживает этот сигнал, может определить различие в ситуациях, когда на отлаживаемой системе выключено питание, и когда кабель отладки физически не подключен.
EMU
I/O(1)
Emulation Port
В зависимости от используемого процессора и отладчика XDS, ножки EMU поддерживают несколько функций: управление режимами загрузки (boot modes), кросс-триггеры (cross triggers), HS-RTDX, Core Trace и System Trace. Информацию о поддержке этих функций в процессоре и в эмуляторе XDS см. в документации.
nRESET(5)
O
I
Target Reset
Это опциональный (не обязательный) сигнал, который с интеграцией со схемой сброса по питанию (power-up-reset, POR) может использоваться для удаленного сброса из отладчика всей целевой отлаживаемой платы.
Примечания:
(1) Чтобы подтвердить совместимость эмулятора XDS с имеющимися на отлаживаемой плате/процессоре типами сигналов и их уровнями напряжений, обратитесь к даташиту на используемый процессор. (2) В других документах TI сигнал TVRef может называться как TVD, VREF_DEBUG и VTRef (система именования в цоколевке ARM). (3) В других документах TI сигнал nRESET может называться как nSYSRST или nTGTRST.
Информацию о коннекторах JTAG и их цоколевке см. на страничке [6]. С помощью информации на этой страничке проще выбрать разъем/коннектор для каждого семейства процессоров и получить информацию об именовании эмуляторов и процессоров.
[Разработка соединения с эмуляторов JTAG]
Исключительно важно предоставить высококачественные соединения для сигналов между эмулятором XDS и целевым отлаживаемым устройствам (с процессором, установленным на плате разрабатываемой системы). В некоторых случаях может потребоваться соединить в одну цепочку JTAG несколько устройств/процессоров на плате, чтобы к ним можно было обращаться через один коннектор, или может потребоваться установить на плате коннектор эмулятора дальше, чем это рекомендуется для работы без буферизации. В зависимости от ситуации, может потребоваться применить корректную буферизацию сигналов и выполнить соединения между несколькими процессорами, чтобы гарантировать правильную работу эмулятора XDS и целевой отлаживаемой системы.
Текущие эмуляторы XDS работают на тактовой частоте JTAG в диапазоне от 10 до 50 МГц, однако будущие эмуляторы XDS будут работать на еще более высоких частотах. Таким образом, чтобы обеспечить совместимость дизайна с будущими эмуляторами, компания TI рекомендует разработать прохождение сигналов JTAG для частот 100 МГц.
Также требования к соединению с целевым процессором зависят от поддерживаемых функций отладки как в процессоре, так и в эмуляторе XDS. Для процессоров и эмуляторов XDS, которые поддерживают трассировку ядра (core trace) или системную трассировку (system trace), требования к дизайну платы более жесткие, потому что эти функции работают на повышенных частотах. Если Ваш процессор поддерживает трассировку ядра или системную трассировку через выводы EMU, обращайтесь к рекомендациям по разработке в руководстве [2].
В случаях, когда эмулятор XDS не поддерживает определенную функцию, такую как Core Trace или System Trace, но целевой отлаживаемый процессор поддерживает её, рекомендуется тщательно оценить компромисс дизайна схемы отладки на плате, чтобы правильно выбрать совместимость как с текущим используемым эмулятором, так и с более современными эмуляторами, которые могут потребоваться для решения сложных проблем отладки.
[Один процессор, без использования буферизации]
Если ножки EMU не поддерживают трассировку ядра или системную трассировку, и если длина дорожек всех сигналов JTAG и EMU между процессором и разъемом отладки меньше 6 дюймов (меньше 15.24 сантиметров), то буферизация сигналов JTAG не нужна. Указания по терминированию и разводке соединений, если ножки EMU процессора поддерживают экспорт трассировки ядра или системной трассировки, см. в руководстве [2].
На схеме рис. 1 показаны стандартные не буферизированные соединения сигналов.
Замечание: эта схема отличается от предыдущей документации TI в том смысле, что теперь TI предлагает использовать последовательные терминирующие резисторы на сигналах тактов JTAG и сигнале TDO. Причина этого изменения в том, что последние контроллеры XDS используют драйверы сигналов с более крутыми фронтами нарастания и спада, чем предыдущие версии эмуляторов XDS, что увеличивает шансы отражений этих критических сигналов.
Рис. 1. Соединение одного коннектора эмуляции с одним отлаживаемым процессором, с небуферизированными сигналами JTAG и EMU(1).
Примечания:
(1) Все расстояния трассировки от этих выводов до пробника отладки должны быть меньше 6 дюймов (15.24 сантиметров). Если отладчик XDS560v2 или XDS ProTrace, то в них есть встроенные буферы, усиливающие сигналы на кабеле, и для этого случая длина трасс может быть увеличена. (2) Если Ваш процессор не имеет ножки RTCK, тогда используйте Configuration 1. Для требований к терминированию сигналов JTAG в этой конфигурации см. далее секцию "Терминирование не буферизированных сигналов". (3) Если Ваш процессор имеет ножку RTCK, то используйте Configuration 2. Для требований к терминированию сигналов JTAG в этой конфигурации см. далее секцию "Терминирование не буферизированных сигналов". (4) DVDD это ножка JTAG/EMU, предоставляющее опорное напряжение для уровня ввода/вывода сигналов JTAG. (5) Для требований к терминированию сигналов JTAG см. далее секцию "Терминирование не буферизированных сигналов". (6) Требования для сигналов EMU см. выше в секции с описанием сигналов EMU. (7) На сигнале TRST требуется нижний подтягивающий резистор (pull-down). Дополнительную информацию см. во врезке "Специальные замечания по сигналам JTAG и nTRST (включая TMS и TDI)". (8) Если у Вашего процессора больше двух ножек EMU, то вероятно, что он поддерживает core trace или system trace (или обе этих трассировки). Эти высокоскоростные функции добавляют дополнительные требования к целевой плате (подробности см. в [2]).
Если в Вашем процессоре нет внутренних верхних подтягивающих резисторов (pull-up) на TMS и TDI или внутреннего нижнего подтягивающего (pull-down) резистора на TCK, то требуется эти резисторы установить на плате отлаживаемой системы. Большинство современных процессоров имеют эти резисторы.
Поскольку TDO и RTCK выходы, внешние pull-up или pull-down резисторы не требуются.
Большинство процессоров TI требуют одновременных сигналов nTRST и сброса процессора, чтобы правильно инициализировался процессор. Сигнал nTRST может оставаться установленным, когда сброс процессора деактивирован, чтобы процессор мог нормально работать. Для любых отклонений от этих требований см. даташит на используемый процессор. Поскольку внутренние резисторы pull-up и pull-down обычно слаботочные (в диапазоне 20 кОм .. ~30 кОм), чтобы увеличить помехозащищенность, когда кабель эмулятора XDS не подключен, рекомендуется применять внешний резистор pull-down, как показано на рис. 1.
Если Вы используете не XDS-эмулятор, а другой адаптер для пограничного сканирования (Boundary Scan, JTAG-тестирование схемы), то поскольку сигнал TRST это опциональная функция по стандарту IEEE 1149.1, обратитесь к документации производителя на предмет информации по поддержке nTRST. Если это не поддерживается, то у Вас должна быть возможность подтянуть на плате сигнал nTRST к лог. 1 (в неактивный уровень), чтобы работала технология Boundary Scan. В большинстве процессоров TI используется внутренний pull-down на nTRST, чтобы удерживать логику эмуляции в сбросе процессора при включении питания, чтобы гарантировать работу процессора в нормальном режиме. Чтобы узнать, имеется ли в процессоре TI на сигнале nTRST внутренняя подтяжка pull-down, обратитесь к его даташиту.
Примечание: приложения с низким потреблением энергии могут потребовать уменьшенных значений внешних резисторов pull-up или pull-down, чтобы улучшить помехозащищенность на входных сигналах JTAG (TMS, TDI, TCK и nTRST), когда кабель эмулятора не подключен.
Терминирование небуферизированных сигналов. Рис. 1 показывает минимальные требования для терминирования сигналов тактов JTAG.
• Если у Вашего целевого процессора нет сигнала RTCK: соедините TCK и RTCK, как показано для JTAG-конфигурации 1 на рис. 1. Возврат сигнала TCK на реализован на сигнал RTCK через разъем эмулятора. В этой конфигурации требуются резисторы терминирования 22 Ом для обоих сигналов TCK и RTCK, резисторы должны быть установлены максимально близко к коннектору эмулятора.
• Если у Вашего целевого процессора есть сигнал RTCK: соедините TCK и RTCK, как показано для JTAG-конфигурации 2 на рис. 1. Здесь сигнал RTCK процессора соединен с RTCK на коннекторе эмулятора. Терминирующий последовательный резистор 22 Ом на сигнале TCK должен быть расположен максимально близко к коннектору эмулятора. Терминирующий резистор на сигнале RTCK должен быть расположен максимально близко к процессору. Величина терминирующего резистора RTCK обычно должна быть в диапазоне 22 .. 42 Ом. Эта величина должна соответствовать волновому импедансу кабеля производителя целевой отлаживаемой системы (обычно 50 Ом) минус импеданс выходного буфера RTCK процессора. Этот выходной импеданс буфера процессора обычно можно определить по модели IBIS процессора. Документ [2] TI в приложении содержит инструкции для получения выходного импеданса буфера RTCK из модели IBIS процессора.
• Для сигналов JTAG, не относящихся к тактам: на входных сигналах JTAG, которые не являются тактами, последовательные терминирующие резисторы обычно не требуются. На выходном сигнале JTAG (TDO) терминирующий резистор нужно поместить максимально близко к процессору. Чтобы определить номинал этого резистора для TDO, следуйте тем же инструкциям, что и при определении номинала терминирующиего последовательного резистора для RTCK.
Замечания по 14-выводному коннектору эмуляторов XDS100/XDS510/XDS560. Если Ваш процессор имеет больше двух ножек EMU, то все еще можно использовать 14-выводный разъем, но нельзя будет экспортировать трассировку ядра (Core Trace), и в большинстве случаев нельзя будет экспортировать системную трассировку (System Trace), если какая-то из этих трассировок поддерживается процессором. В обоих случаях требуется коннектор с большим количеством контактов: 60-выводный для трассировки ядра и 20-выводный для системной трассировки. Если Ваш процессор имеет только одну ножку EMU, то соедините её с контактом EMU0 на 14-выводном разъеме JTAG. Все ножки EMU процессора должны быть подтянуты снаружи кроме случаев, когда в процессоре есть достаточная внутренняя pull-up подтяжка ножек EMU.
Для новых разработок 14-выводный разъем больше не рекомендуется. TI рекомендует использовать 20-выводный коннектор CTI с цоколевкой TI с шагом выводов 1.27 мм, у которого размер значительно меньше 14-выводного коннектора с шагом выводов 2.54 мм.
Замечания по 20-выводному коннектору XDS560. Если Ваш процессор поддерживает системную трассировку (System Trace), тогда для платы нужно использовать 20-выводный коннектор CTI с цоколевкой TI, см. [2].
Если процессор имеет больше пяти ножек EMU, то Вы все еще можете использовать 20-выводный коннектор, но не получится экспортировать трассировку ядра (Core Trace) если процессор поддерживает эту трассировку. Для трассировки ядра требуется 60-выводный коннектор. Если у процессора меньше пяти ножек EMU, то соедините эти ножки, которые доступны на процессоре, с одноименными ножками на коннекторе JTAG (EMU0 процессора соедините с EMU0 на коннекторе, и так далее).
Замечания по 20-выводному коннектору с цоколевкой ARM. В тех случаях, когда используется процессор TI с цоколевкой ARM 20-выводного коннектора JTAG, для отладчика XDS нужно использовать адаптер для преобразования цоколевки.
При соединении 20-выводного коннектора ARM с процессором TI две ножки разъема DBGRQ и DBGACK остаются не подключенными, потому что эти сигналы не поддерживаются процессорами TI. Если Вы используете адаптер-переходник с 20-выводного разъема ARM на кабель эмулятора XDS, то сигнал Vsupply кабеля может использоваться на некоторых адаптеров в качестве альтернативного опорного напряжения, но XDS не использует его в качестве источника тока.
20-выводный коннектор ARM не поддерживает ножки EMU, так что не будет доступна любая функциональность, предоставляемая отладчиком XDS через выводы EMU (такая как режимы загрузки). В этом случае, если процессор не содержит внутренние подтяжки pull-up на ножках EMU, то эти ножки EMU процессора должны быть подтянуты резисторами pulled-up снаружи. Если на отлаживаемой плате находится несколько процессоров с ядрами ARM, соединенные в одну последовательную цепочку сканирования JTAG, и все Ваши процессоры поддерживают ножки EMU, то все еще можно соединить ножки EMU между процессорами, чтобы поддерживать функционал кросс-триггеров (cross triggers), если это поддерживается используемыми процессорами. Режимы загрузки (если это поддерживается используемым процессором) также могут быть модифицированы от значения по умолчанию через pull-up/pull-down резисторов на плате, но нельзя будет поменять значение режима загрузки через XDS. Необходимо будет убедиться, что когда произойдет переход к продажам, то правильно будет выбран режим загрузки по умолчанию (оба сигнала EMU0 и EMU1 подтянуты к лог. 1) для всех процессоров, которые поддерживают режимы загрузки.
Для процессоров с ядрами ARM обычно требуется адаптивное тактирование. Если у процессора есть ножка RTCK, то она должны быть соединена с сигналом кабеля отладки, независимо от используемого коннектора JTAG. Для дополнительной информации см. раздел "Адаптивное тактирование".
Для дополнительных требований и потенциальных ограничений, если соединяются несколько процессоров, когда у них у всех ядра ARM, см. раздел "Адаптивное тактирование с несколькими процессорами".
Для требований по дизайну 60-выводного коннектора XDS560T/XDS560v2 System Trace/XDS ProTrace см. [2].
[Буферизация сигналов]
Если расстояние между отладчиком и процессором больше 6 дюймов (15.24 сантиметров), то рекомендуется усиливать сигналы JTAG буферами, см. рис. 2. Для информации по не JTAG сигналам см. выше раздел "Один процессор, без использования буферизации".
Если используется отладчик XDS560v2 или XDS ProTrace, то в них уже встроены буферы, поэтому длина соединений может быть больше.
Замечание: рис. 2 отличается от предыдущей документации TI тем, что теперь рекомендуется использовать терминирующие резисторы на входе буфера TCK и последовательное терминирование на других критических сигналах. Причина этого изменения в том, что последние контроллеры XDS используют драйверы с более быстрыми перепадами сигнала на выходе, чем раньше, что увеличивается шансы отражений этих критических сигналов.
Рис. 2. Один коннектор эмуляции с одним процессором и буферами сигналов JTAG.
Примечания:
(1) Если у Вашего процессора нет ножки RTCK, то используйте конфигурацию 1. (2) Если у Вашего процессора есть ножка RTCK, то используйте конфигурацию 2. (3) DVDD это ножка JTAG/EMU для предоставления опорного напряжения уровней ввода/вывода. (4) Номинал 33 Ом последовательного терминирующего резистора на этой схеме был выбран на основе использования 74LVC1G32 (драйвера) в качестве не инвертирующего буфера. Значение терминирующих резисторов выбирается на основе выходного сопротивления применяемого буфера. (5) Необходимы верхние подтягивающие резисторы (pull-up) на сигналах EMU0 и EMU1. Дополнительную информацию см. в описании сигналов EMU. (6) На сигнале TRST требуется нижний подтягивающий резистор (pull-down). См. описание описание JTAG и сигнала nTRST во врезке "Специальные замечания по сигналам JTAG и nTRST (включая TMS и TDI)". (7) Если у процессора больше двух ножек EMU, то скорее всего он поддерживает экспорт трассировки ядра (core trace) или системной трассировки (system trace), или поддерживает обе эти трассировки. Это высокоскоростные функции, которые предъявляют к плате дополнительные требования (подробнее см. [2]). (8) Верхние подтягивающие (pull-up) резисторы рекомендуется поставить на всех входах буферов, чтобы уменьшить вероятность появления импульсов помех на выходах буферов, когда кабель XDS не подключен.
Для конфигураций с буферами (см. раздел "Диаграмма сигналов JTAG") сигнал TDO должен распространяться обратно от процессора к эмулятору в пределах 1/2 периода TCK, так что если Вы применили буфер RTCK в том же месте на плате, что и буфер TCK, то максимальная задержка не включает задержку TCK, и включает только задержку TDO. Если Вы передаете TCK обратно в RTCK на коннекторе JTAG и не буферизируете его, то должны учесть задержку TCK плюс задержку TDO, чтобы определить максимальную задержку.
[Несколько процессоров в цепочке JTAG]
Если на плате находится несколько устройств, совместимых со стандартом JTAG 1149.1, то можно применить один коннектор эмулятора, соединив все эти устройства в так называемую цепочку сканирования JTAG (scan chain). Ножки EMU процессоров TI при этом соединяются параллельно, как показано на рис. 3. Эта конфигурация позволяет использовать следующие функции, специально предоставляемые для отладки в системах с несколькими процессорами:
• Синхронное управление выполнением кода. • Глобальные точки останова. • Кросс-триггеры на выводах EMU.
Рис. 3. Один коннектор эмуляции с несколькими процессорами и буферами сигналов JTAG.
Примечания:
(1) Если у Ваших процессоров есть ножка RTCK, см. "Адаптивное тактирование с несколькими процессорами". (2) Если последний процессор в цепочке сканирования находится на расстоянии в пределах 6 дюймов (15.24 сантиметров) от коннектора эмулятора, то буфер для TDO может не понадобиться. (3) DVDD это ножка JTAG/EMU для предоставления опорного напряжения уровней ввода/вывода. (4) Эта конфигурация подразумевает, что процессоры находятся на расстоянии в пределах 6 дюймов (15.24 сантиметров) друг от друга. Может потребоваться дополнительная буферизация TDO и TDI между процессорами, если расстояние между ними превышает 6 дюймов. (5) Номинал 33 Ом последовательного терминирующего резистора на этой схеме был выбран на основе использования SN74VC1G32 (драйвера) в качестве не инвертирующего буфера. Значение терминирующих резисторов выбирается на основе выходного сопротивления применяемого буфера. (6) Необходимы верхние подтягивающие резисторы (pull-up) на сигналах EMU0 и EMU1. Дополнительную информацию см. в описании сигналов EMU. (7) На сигнале TRST требуется нижний подтягивающий резистор (pull-down). См. описание описание JTAG и сигнала nTRST во врезке "Специальные замечания по сигналам JTAG и nTRST (включая TMS и TDI)". (8) Если у процессора больше двух ножек EMU, то скорее всего он поддерживает экспорт трассировки ядра (core trace) или системной трассировки (system trace), или поддерживает обе эти трассировки. Это высокоскоростные функции, которые предъявляют к плате дополнительные требования (подробнее см. [2]). (9) Верхние подтягивающие (pull-up) резисторы рекомендуется поставить на всех входах буферов, чтобы уменьшить вероятность появления импульсов помех на выходах буферов, когда кабель XDS не подключен.
Обычно требуется буферизация сигналов TCK, TMS, TDI и TDO, чтобы обеспечить адекватное управление уровнями между массивом процессоров и эмулятором XDS. Рекомендуется, чтобы TCK, TMS и TDI буферизировались драйверами из одного и того же физического корпуса, чтобы лучше управлять эффектами гонки сигналов. Если последний процессор в цепочке сканирования находится на расстоянии меньше 6 дюймов (15.24 сантиметров) от коннектора XDS, то буфер TDO может не понадобиться.
Входы буферов TMS, TDI и TCK должны быть снабжены верхними (pull-up) подтягивающими резисторами, подключенными к опорному напряжению ввода/вывода DVDD, чтобы эти сигналы находились в правильных уровнях, когда кабель XDS не подключен. Для этой цели рекомендуется использовать резисторы номинала 4.7 кОм или несколько больше.
В случаях, когда Ваш дизайн содержит только несколько устройств (не больше 3) на цепочке сканирования, и разводка сигналов JTAG (TCK, TMS, TDO и TDI) получается длиной меньше 6 6 дюймов (15.24 сантиметров), то буферизация сигналов JTAG может не потребоваться. Если Вы решите, что дизайн не требует буферов, то все еще рекомендуется применить последовательные терминирующие резисторы, в конфигурации с одним процессором (см. выше раздел "Один процессор, без использования буферизации").
Если дизайн использует больше 3 процессоров, то рекомендуется провести симуляцию как минимум путей распространения TCK и TMS. TI не рекомендует соединять больше 30 устройств в одну цепочку сканирования JTAG.
Замечания по сигналам EMU в конфигурациях с несколькими процессорами см. во врезке "Использование EMU в конфигурациях с несколькими процессорами".
[Диаграмма сигналов JTAG]
Рис. 4 показывает базовую диаграмму изменения сигналов JTAG относительно друг друга. Особенность эмулятора XDS - он экспортирует TMS и TDI по фронту нарастания RTCK. TDO выводится из процессора по спаду уровня TCK, и это должно происходить только в пределах 1/2 периода TCK для распространения до XDS, где TDO защелкивается на следующем фронте нарастания RTCK. Многие модели XDS поддерживают опциональный захват TDO по спаду уровня RTCK, предоставляя больше времени для установки уровня, но потенциально меньше времени удержания уровня. Подробности по параметрам времени см. документацию производителя XDS.
Рис. 4. Тайминг сигналов JTAG.
[Адаптивное тактирование с несколькими процессорами]
Если Ваш дизайн содержит несколько процессоров с сигналами RTCK, которые требуют адаптивного тактирования, то необходимо выбрать либо последовательную, либо параллельную топологию. Параллельная топология предоставляет большее быстродействие, чем последовательная, однако она более сложная в реализации.
Для дополнительной информации см. выше раздел "Адаптивное тактирование".
Последовательная топология. Как показано на рис. 5, в этой топологии сигналы RTCK между процессорами каскадируются в последовательную цепочку сканирования. Это заставляет следующее устройство в цепочке сканирования синхронизировать TCK от RTCK предыдущего устройства в цепочке, что оказывает два влияния на систему:
• RTCK появляющийся на контакте эмулятора XDS будет переключаться медленнее, чем самое медленное устройство в последовательной цепочке сканирования. • Даже если все устройства в цепочке работают на одинаковой функциональной частоте тактов, задеркжи в логике синхронизации будут замедлять конечный сигнал RTCK.
С использованием последовательной топологии все еще можно применять эмулятор XDS, который не поддерживает адаптивное тактирование, если Вы установите частоту TCLK в 8 раз меньше, чем самая низкая функциональная частота тактов ядра из всех используемых процессоров в цепочке.
Рис. 5. Последовательная топология сигнала RTCK.
Примечание: рис. 5 показывает только соединения, не обращая внимание на буферизирование или терминирование, которое также может потребоваться (подробнее см. выше раздел "Несколько процессоров в цепочке JTAG").
Параллельная топология. Как показано на рис. 6, эта топология может быть использована, чтобы избежать деградации тактов RTCK из-за каскадирования RTCK между процессорами, как это было реализовано в последовательной топологии. Параллельная топология требует использования внешней микросхемы программируемой логики CPLD, чтобы реализовать избирательную логику тактов (clock voting logic). Clock voting logic представляет TCK для всех устройств параллельно, но затем ждет генерации следующего перепада RTCK для XDS, пока все процессоры в цепочке отвечают с ожидаемым перепадом RTCK. С последовательной топологией RTCK доходит до XDS с пониженной частотой, зависящей от самого медленного устройства в цепочке, в параллельной топологии удается избежать этой добавленной задержки RTCK, вызванной каскадированием.
При параллельной топологии все еще можно использовать XDS, который не поддерживает адаптивное тактирование, в этом случае следует установить частоту TCLK в 8 раз меньше, чем тактовая частота самого медленного процессора в системе.
Рис. 6. Параллельная топология сигнала RTCK.
Примечание: рис. 6 показывает только соединения, не обращая внимание на буферизирование или терминирование, которое также может потребоваться (подробнее см. выше раздел "Несколько процессоров в цепочке JTAG").
Пример реализации избирательной логики сигналов уровня платы см. выше в разделе "Адаптивное тактирование".
Смесь "RTCK / нет RTCK". Если дизайн содержит процессоры как с сигналом RTCK, так и без него, независимо от топологии сигнал TCK процессоров без RTCK должен управляться от сигнала RTCK процессоров, у которых есть сигнал RTCK, так ка кэти процессоры должны управлять уровнем RTCK эмулятора XDS.
Рис. 7 показывает микширование в системе процессоров с RTCK в последовательную топологию вместе с процессорами без RTCK. Процессоры без RTCK группируются друг с другом в конце цепочки сканирования, и их сигналы TCK управляются от RTCK последнего процессора цепочки сканирования, у которого есть поддержка RTCK.
Рис. 7. Последовательная топология с процессорами разных типов (с RTCK и без RTCK).
Примечание: рис. 7 показывает только соединения, не обращая внимание на буферизирование или терминирование, которое также может потребоваться (подробнее см. выше раздел "Несколько процессоров в цепочке JTAG").
Рис. 8 показывает микширование процессоров с RTCK в параллельную топологию вместь с процессорами без RTCK. Здесь процессоры без RTCK сгруппированы друг с другом в конец цепочки сканирования, и их сигналы TCK управляются от RTCK, который генерирует избирательная логика.
Рис. 8. Параллельная топология с процессорами разных типов (с RTCK и без RTCK).
Примечание: рис. 8 показывает только соединения, не обращая внимание на буферизирование или терминирование, которое также может потребоваться (подробнее см. выше раздел "Несколько процессоров в цепочке JTAG").
Специальные замечания для HS-RTDX. Двунаправленные транзакции данных HS-RTDX используют комбинацию ножек EMU для транспортирования данных, и TCK для тактирования этих данных. Используйте HS-RTDX с выводом EMU взаимоисключающее с другими функциями вывода EMU, кроме режимов загрузки. XDS560 поддерживает два канала транспорта данных HS-RTDX, где каждый канал использует одну ножку EMU (обычно EMU0 или EMU1). Вы можете выбрать, какая ножка EMU используется в транспорте данных HS-RTDX в процессоре, используя настройку отладчика. Поскольку транспорт HS-RTDX широкополосный (TCK работает на частоте 35 МГц при типовой скорости передачи 2 MB/s), нужно уделить особое внимание разводке сигналов EMU на плате системы.
Если Ваша разработка использует несколько процессоров, которые поддерживают HS-RTDX, см. врезку "Использование EMU в конфигурациях с несколькими процессорами".
Решение проблем, возникающих при работе JTAG, см. в статье [7].