Поиск по сайту:

 


По базе:  

микроэлектроника, микросхема, микроконтроллер, память, msp430, MSP430, Atmel, Maxim, LCD, hd44780, t6963, sed1335, SED1335, mega128, avr, mega128  
  Главная страница > Обзоры по типам > Микроконтроллеры > MAXQ

реклама

 




Мероприятия:




Раздел 15

Порт доступа для тестирования (TEST ACCESS PORT - TAP)

Микроконтроллеры семейства MAXQ содержат порт доступа для тестирования (Test Access Port - TAP) и контроллер TAP для связи с хост прибором через четырехпроводный синхронный последовательный интерфейс. TAP может использоваться микроконтроллерами семейства MAXQ для выполнения внутрисистемного программирования и/или внутрисхемной отладки. TAP совместим с JTAG IEEE стандарта 1149 и образован четырьмя интерфейсными сигналами, описанными в приведенной ниже таблице. Для получения более детальной информации о TAP и TAP контроллере рекомендуется обратиться к IEEE STD 1149.1 "IEEE Standard Test Access Port and Boundary-Scan Architecture."

Сигнал на внешнем выводе Функция
TDO (Test Data Output) Выход последовательных данных. Этот сигнал используется для последовательной передачи данных внешнему хосту. Данные передаются младшим значащим битом вперед. Данные выставляются по спадающему фронту сигнала TCK и только в течение Shift-IR или Shift-DR состояния TAP, а в остальных случаях они неактивны.
TDI (Test Data Input) Вход последовательных данных. Этот сигнал используется для принятия последовательных данных от внешнего хоста. Данные поступают младшим значащим битом вперед и выбираются по нарастающему фронту сигнала TCK. Когда TAP = 1, то вывод TDI подтянут к линии питания при помощи встроенного слаботочного источника.
TCK (Test Clock Input) Вход синхроимпульсов, формируемых внешним хостом. Когда этот сигнал остановлен в 0, то запоминающие данные элементы логики TAP должны сохранять свои данные. Когда TAP = 1, то вывод TCK подтянут к линии питания при помощи встроенного слаботочного источника.
TMS (Test Mode Select Input) Вход выбора режима. Этот сигнал выбирается по нарастающему фронту сигнала TCK и управляет движением между состояниями TAP. Когда TAP = 1, то вывод TMS подтянут к линии питания при помощи встроенного слаботочного источника.

Контроллер TAP

Контроллер TAP - синхронный конечный автомат, который реагирует на изменения сигналов TCK и TMS. Основанный на изменении состояния, контроллер формирует необходимые для работы ТАР последовательности синхронизации и управления. Параметры TAP зависят от частоты синхроимпульсов TCK. Частота синхроимпульсов TCK не должна частота превышать 1/8 частоты системных синхроимпульсов. В данном разделе приведено краткое описание конечного автомата и его изменений состояния. Диаграмма состояний в рисунке 50 суммирует переключения, вызванные сигналом TMS, выборка сигнала осуществляется по нарастающему фронту сигнала TCK. НА рисунке значение сигнала TMS представлено смежным с каждым изменением состояния.

Диаграмма состояний контроллера TAP
Рисунок 50. Диаграмма состояний контроллера TAP

Управление состоянием TAP

TAP обеспечивает независимый последовательный канал для синхронного обмена данными с хост системой. Управление состоянием TAP осуществляется путем манипуляции хостом сигналами TMS и TCK. Сигнал TMS выбирается по нарастающему фронту сигнала TCK и декодирован контроллером TAP, обеспечивая переход между состояниями TAP. Вход TDI и выход TDO обслуживаются только когда TAP находится в состоянии последовательного сдвига (то есть, Shift-IR или Shift-DR).

Состояние Test-Logic-Reset

При сбросе при включении питания контроллер TAP инициализируется в состояние Test-Logic-Reset, а в регистр команд (IR2:0) записывается команда By-Pass, что позволяет не затрагивать нормальный режим работы системы. Не зависимо от состояния, контроллер переходит в состояние Test-Logic-Reset, если на выводе TMS удерживается высокий логический сигнал в течении не менее пяти нарастающих фронтов сигнала TCK. Контроллер остается в состоянии Test-Logic-Reset, если сигнал на выводе TMS остается высоким. Ошибочный низкий сигнал на выводе TMS может заставить контроллер перейти в состояние Run-Test-Idle, но никакая помеха не повлияет на режим работы системы, если сигнал TMS возвращен в исходное состояние и остается в высоком состоянии три нарастающих фронта сигнала TCK, так как это приведет к переходу контроллера в состояние Test-Logic-Reset.

Состояние Run-Test-Idle

Как показано на рисунке 50, состояние Run-Test-Idle - это просто промежуточное состояние для того, чтобы попасть в одну из двух последовательностей состояний, в которых контроллер выполняет значимые действия:

  • последовательность состояния контроллера (IR-Scan), или
  • последовательность состояния регистра данных (DR-Scan)

Последовательность IR-Scan

Последовательность состояния контроллера позволяет командам (например, 'Debug' и 'System Programming') быть смещенными в регистр команд, начинающийся с состояния Select-IR-Scan. В TAP регистр команд включен между входом TDI и выходом TDO. В последовательности IR-Scan состояние Capture_IR загружает фиксированное двоичное число (001b) в 3- битный регистр сдвига, а состояние Shift-IR сдвигает данные TDI в регистр сдвига и последовательно выводит на TDO, начиная с младшего значащего бита. Как только необходимая команда находится в регистре сдвига, команду можно защелкнуть в параллельный регистр команд (IR2:0) по спадающему фронту сигнала TCK, находясь в состоянии Update-IR. Содержимое последовательного 3- битного сдвигового регистра команд и 3- битного параллельного регистра команд (IR2:0), полученные в результате состояний контроллера TAP приведены в таблице 21.

Таблица 21. Содержимое регистра команд в зависимости от состояния контроллера TAP

Состояние контроллера TAP Регистр сдвига команды Параллельный (3- битный) регистр команд (IR2:0)
Test-Logic-Reset Не определено Команда Set to By-pass (011b)
Capture-IR Загрузка 001b по нарастающему фронту TCK Сохраняется последнее состояние
Shift-IR Входные данные через TDI и регистр сдвига поступают на выход TDO по нарастающему фронту сигнала TCK Сохраняется последнее состояние
Exit1-IR, Exit2-IR, Pause-IR Сохраняется последнее состояние Сохраняется последнее состояние
Update-IR Сохраняется последнее состояние Загрузка из регистра сдвига по спадающему фронту сигнала TCK
Все остальные состояния Не определено Сохраняется последнее состояние

Когда параллельный регистр команд (IR2:0) обновляется, то контроллер TAP декодирует команду и выполняет любые необходимые действия, включая активизацию регистра сдвига данных, который используется для специфической команды в течение последовательностей сдвига регистра данных (DR-Scan). Разрядность активизированного регистра сдвига зависит от значения, загруженного в регистр команд (IR2:0). Поддерживаемые коды регистра команд и связанные с ними выборки регистра данных приведены в таблице 22.

Таблица 22. Коды регистра команд (IR2:0)

IR2:0 Команда Функция Выборка последовательного регистра сдвига данных
000 Extest Нет операции Не изменяется (сохраняется предыдущая выборка)
001 Sample/Preload Нет операции Не изменяется (сохраняется предыдущая выборка)
010 Debug Режим внутрисхемной отладки 10- битный регистр сдвига
011 By-pass Нет операции (по умолчанию) 1- битный регистр сдвига
100 System Programming Осуществление начальной загрузки 3- битный регистр сдвига
101 By-pass Нет операции (по умолчанию) 1- битный регистр сдвига
110 Зарезервировано
111 By-pass Нет операции (по умолчанию) 1- битный регистр сдвига

Команды Exteset (IR2:0 = 000b) и Sample/Preload (IR2:0 = 001b) команды передаются в соответствии со стандартом JTAG, однако, микроконтроллеры семейства MAXQ не предназначены для практического использования этих команд. Следовательно, по этим командам не выполняется никаких действий, но они могут быть введены в регистр команд без затрагивания встроенной системной логики или состояния выводов и без изменения выбранного регистра сдвига данных между TDI и TDO.

Команда By-pass (IR2:0 = 011b, 101b, или 111b) также передается в соответствии со стандартом JTAG. Команда By-pass полностью реализована в микроконтроллерах семейства MAXQ, позволяя обеспечить для последовательно поступающих данных минимальный тракт между выводами TDI и TDO. Это достигнуто за счет единственной ячейки обхода регистра сдвига данных. Когда регистр команд обновляется командой By-pass, то в состоянии Shift-DR между выводами TDI и TDO подключается одноэлементный регистр. Регистр команд автоматически заполняется значением по умолчанию при выполнении команды By-pass, когда TAP находится в состоянии Test-Logic-Reset. Команда By-pass не оказывает никакого влияния на работу встроенной системной логики.

Команды Debug (IR2:0 = 010b) и System Programming (IR2:0 = 100b) - специальные команды, которые предназначены исключительно для внутрисхемной отладки и внутрисистемного программирования, соответственно. Если регистр команд обновляется с командой Debug, то в состоянии Shift-DR между выводами TDI и TDO включается 10- битный регистр. Если в регистр команд (IR2:0) введена команда System Programming, то в состоянии Shift-DR между выводами TDI и TDO подключается 3- битный регистр сдвига данных.

Остальные команды регистра команд (IR2:0), за исключением описанных выше, зарезервированы для внутреннего использования. Как видно из рисунка 51, регистр команд используется для выбора разрядности регистра последовательных данных, включенного между выводами TDI и TDO в состоянии Shift-DR.

TAP и контроллер TAP
Рисунок 51. TAP и контроллер TAP

Последовательность DR-Scan

Сразу после настройки регистра команд в необходимое значение начинает выполняться транзакция через буферный регистр данных, связанный с этим режимом. Эти транзакции данных выполняются последовательно способом, аналогичным процессу, используемому для загрузки регистра команд, и группируются в последовательности состояния контроллера TAP, начинающиеся с состояния Select-DR-Scan. В последовательности состояния контроллера TAP состояние Shift-DR позволяет внутренним данным быть смещенным через вывод TDO, а внешним данным быть одновременно смещенным через вывод TDI. Сразу после окончания смещения данные могут быть защелкнуты в параллельный буферный регистр выбранного регистра по спадающему фронту сигнала TCK в состоянии Update-DR. По этому же спадающему фронту TCK в состоянии Update-DR внутренний параллельный буферный регистр загружается в регистр сдвига данных для передачи их внешнему хосту. Этот процесс Shift-DR/Update-DR предназначен для обмена данными между внешним ведущим хостом и микроконтроллером семейства MAXQ. Эти транзакции регистра данных происходят в разделе регистра данных последовательности состояний контроллера ТАР и не оказывают никакого влияния на регистр команд.

Связь через TAP

После сброса при включении питания контроллер TAP находится в состоянии Test-Logic-Reset. В этом начальном состоянии регистр команд содержит команду By-pass, а последовательный тракт между выводами TDI и TDO для состояния Shift-DR состоит из 1- битного обходного регистра. При любом сбросе весь сигнальные выводы TAP (TCK, TMS, TDI и TDO) по умолчанию подтянуты к линии питания при помощи слаботочных встроенных источников. Контроллер TAP остается в состоянии Test-Logic-Reset до тех пор, пока на выводе TMS присутствует высокий логический уровень. Сигналы TCK и TMS могут формироваться хостом и приводить к переходу TAP к другим состояниям. Контроллер TAP остается в данном состоянии всякий раз, когда на TCK удерживается низкий уровень.

Для того чтобы хосту установить определенную линию связи, необходимо загрузить специальную команду в регистр команд IR2:0. Как только в состоянии Update-IR команда защелкивается в параллельный буферный регистр, то она распознается контроллером TAP и канал связи устанавливается. Команды In-Circuit Debug или In-System Programming и данные могут быть загружены хостом в микроконтроллер семейства MAXQ при нахождении в части регистра данных состояния последовательности (то есть, DR-Scan). TAP сохраняет специальную команду, которая была загружена в IR2:0, до тех пор, пока новая команда не будет помещена в регистр или до сброса контроллера TAP в состояние Test-Logic-Reset.

Пример обмена данными по ТАР - IR-Scan и DR-Scan

На рисунках 52 и 53 приведены примеры связи между ведущим JTAG контроллером и портом доступа для тестирования (TAP) микроконтроллера семейства MAXQ. Хост формирует сигналы TCK и TMS, осуществляя управление переходом между необходимыми состояниями TAP, получая доступ к регистру сдвига через выводы TDI и TDO.

Пример режима отладки IR-Scan ТАР контроллера
Рисунок 52. Пример режима отладки IR-Scan ТАР контроллера

Пример режима отладки DR-Scan ТАР контроллера
Рисунок 53. Пример режима отладки DR-Scan ТАР контроллера



<-- Предыдущая страница Оглавление Следующая страница -->





 
Впервые? | Реклама на сайте | О проекте | Карта портала
тел. редакции: +7 (995) 900 6254. e-mail:info@eust.ru
©1998-2023 Рынок Микроэлектроники