Программирование DSP ADSP-BF538: внутрисхемное тестирование через JTAG Thu, November 21 2024  

Поделиться

Нашли опечатку?

Пожалуйста, сообщите об этом - просто выделите ошибочное слово или фразу и нажмите Shift Enter.


ADSP-BF538: внутрисхемное тестирование через JTAG Печать
Добавил(а) microsin   

В этом разделе документации обсуждаются возможности тестирования печатной платы системы, которые предоставляет процессор Blackfin ADSP-BF538 [2].

Процессор Blackfin полностью совместим со стандартом IEEE 1149.1, который также известен как стандарт Joint Test Action Group (JTAG). В этой врезке приведена общая справка, кратко объясняющая работу интерфейса JTAG применимо к любой JTAG-микросхеме.

Стандарт JTAG обозначает принципы схемотехники, которые могут использоваться для тестирования, обслуживания и поддержки собранных печатных плат. Эта схемотехника включает стандартный интерфейс, через который передаются инструкции и данные тестирования. Определен набор функций тестирования, включая регистр пограничного тестирования (boundary-scan register), так что компонент может отвечать на минимальный набор инструкций, чтобы помочь проверить целостность цепей печатных плат.

Стандарт определяет логику тестирования, которая может быть включена в схему, чтобы выполнить следующие тесты:

• Проверка соединений между компонентом JTAG (в нашем случае это процессор Blackfin) и микросхемами, которые установлены на печатную плату.
• Тестирование самого процессора Blackfin.
• Отслеживание или модификация активности схемы во время нормального функционирования компонента JTAG.

Логика тестирования основана на регистре пограничного сканирования (boundary-scan register) и других функциональных блоках. К логике тестирования осуществляется доступ через порт тестирования (test access port, TAP).

Полное описание стандарта JTAG можно найти в документации "IEEE Standard Test Access Port and Boundary-Scan Architecture", ISBN 1-55937-350-4 [1].

[Архитектура системы пограничного сканирования (boundary-scan)]

Логика тестирования boundary-scan состоит из следующих узлов:

• Интерфейс TAP, состоящий из 5 сигнальных выводов (см. таблицу C-1). Также в интерфейс входит общий провод (GND) и напряжение питания системы (в таблице эти сигналы не показаны).
• Контроллер TAP, который через регистры тестирования управляет всей последовательностью событий тестирования.
• Регистр инструкций (instruction register, IR), из которого 5-разрядные коды инструкции выбирают режим тестирования, который выполняет нужную операцию тестирования.
• Несколько регистров данных, определенных в стандарте JTAG.

Таблица C-1. Выводы интерфейса Test Access Port (TAP).

Сигнал JTAG Тип Описание
TDI Вход Test Data Input, вход данных тестирования.
TMS Test Mode Select, выбор режима тестирования.
TCK Test Clock, такты тестирования.
~TRST Test Reset, сброс логики тестирования.
TDO Выход Test Data Out, выход данных тестирования.

Контроллер TAP это синхронный конечный автомат (finite-state machine) с 16 состояниями, управляемый выводами TCK и TMS. Переходы между состояниями автомата происходят по фронту нарастания импульса TCK, и определены состоянием вывода TMS (может находиться либо в состоянии лог. 1, либо в состоянии лог. 0). Полное описание процесса работы см. в стандарте JTAG. На рис. C-1 показана диаграмма перехода состояний контроллера TAP.

ADSP BF538 JTAG TAP Controller State Diagram

Рис. C-1. Диаграмма состояний контроллера TAP.

Пояснения к рис. C-1:

DR Data Register, регистр данных.

IR Instruction Register, регистр команды.

Test-Logic_Reset состояние сброса логики тестирования JTAG (исходное состояние).

Run-Test/Idle состояние начала тестирования, ожидание. Переходное состояние контроллера при выполнении тестов или ожидании следующей команды.

Select-DR-Scan, Select-IR-Scan состояние, после которого будет производиться тестирование команд, данных.

Capture-DRCapture-IR состояние приёма команд, данных.

Shift-DRShift-IR состояние сдвига команд, данных.

Exit1-DR, Exit2-DR выход из режима работы с данными.

Exit1-IR, Exit2-IR выход из режима работы с командами.

Pause-DRPause-IR состояние паузы.

Update-DRUpdate-IR состояние перезаписи данных в выходные регистры данных и команд (обновление данных и команд).

Примечание: контроллер TAP входит в состояния сброса логики тестирования (test-logic-reset), когда TMS уделживается в лог. 1 после 5 тактов TCK. То же самое происходит, когда асинхронно выставлен сигнал сброса TRST. Внешний сброс системы не влияет на состояние контроллера TAP, и состояние контроллера TAP также не влияет на внешний системный сброс.

[Регистр инструкций JTAG]

В регистре инструкций (IR) имеет ширину 5 бит, так что его содержимое может передавать до 32 различных инструкций пограничного сканирования (boundary-scan).

IR содержит как публичные, так и приватные инструкции. Стандарт JTAG требует наличия определенного количества публичных инструкций; другие публичные инструкции не являются обязательными. Приватные инструкции зарезервированы для использования производителем микросхемы.

Столбец "Двоичный код" таблицы C-2 перечисляет декодированные публичные инструкции. Столбец "Регистр" перечисляет пути последовательного сканирования (the serial scan path).

Таблица C-2. Декодирование инструкций Public JTAG-Scan.

Имя инструкции Двоичный код (разряды 01234) Регистр
EXTEST 00000 Boundary-scan
SAMPLE/PRELOAD 10000 Boundary-scan
BYPASS 11111 Bypass

На рис. C-2 показана последовательность сканирования бита инструкции для путей, показанных в таблице C-2.

ADSP BF538 JTAG Serial Scan Paths

Рис. C-2. Пути Serial Scan.

В последующих врезках описаны публичные инструкции сканирования JTAG.

Инструкция EXTEST выбирает регистр пограничного сканирования (boundary-scan register), чтобы он был подключен между выводами TDI и TDO. Эта инструкция позволяет тестировать расположенные на плате схемы с помощью внешнего подключения к системе.

Инструкция EXTEST позволяет внутренним данным переходить на пограничные выходы микросхемы, и захватывать внешние данные на пограничных выходах микросхемы (в нашем случае пограничные входы и выходы это ножки процессора).

Чтобы защитить внутреннюю логику, не допускайте ситуаций, когда работают пограничные выходы, и на эти же выводы приходят внешние сигналы. Т. е. не должно быть параллельного подключения/конфликта двух выходов - ножки процессора и прочих выходных сигналов, приходящих снаружи на тестируемую микросхему.

Инструкция SAMPLE/PRELOAD выполняет две функции, и выбирает регистр пограничного сканирования (boundary-scan register), чтобы он был подключен между выводами TDI и TDO. Инструкция не оказывает никакого эффекта на внутреннюю логику.

Часть SAMPLE инструкции позволяет сделать снимок состояния входов и выходов, захваченного в ячейки пограничного сканирования. Данные считываются по фронту нарастания сигнала TCK.

Часть PRELOAD инструкции позволяет данным быть загруженными на выводы устройства, и выведены наружу с помощью инструкции EXTEST. Загруженные данные попадают в выводы по спаду уровня TCK.

Инструкция BYPASS выбирает регистр BYPASS, чтобы он был подключен к TDI и TDO. Эта инструкция не оказывает никакого эффекта на внутреннюю логику. Между TDI и TDO не должно происходить инверсии данных.

[Регистр пограничного сканирования]

Регистр пограничного сканирования выбирается инструкциями EXTEST и SAMPLE/PRELOAD. Эти инструкции позволяют выводам процессора быть управляемыми и прочитанными при тестировании печатной платы.

[Ссылки]

1. IEEE Standard Test Access Port and Boundary-Scan Architecture, ISBN 1-55937-350-4.
2Blackfin ADSP-BF538.
3. 170118ADSP-BF538-JTAG.zip.
4. OpenOCD: руководство пользователя, начало.
5. Периферийное сканирование site:wikipedia.org.
6. Техническое описание интерфейса эмуляции JTAG Analog Devices.
7Эмулятор Blackfin ICE-100B.

 

Добавить комментарий


Защитный код
Обновить

Top of Page