Многие привычны со словом «JTAG», но знакомство это скорее всего поверхностное. В данной статье я желаю перевести Вас на новый уровень, так сообщить «во френдзону». Быть может, для многих я не открою ничего нового, но сохраняю надежду тем, кто в далеком прошлом желал ознакомиться, будет весьма интересно почитать. Итак, от винта.
Смотрите кроме этого: HTC готовит Sense 5.5?
Похоже, создание собственной ОС стало актуальным занятием. В сети оказались слухи о том, что как HTC, так и Xiaomi решили создать собственные ОС. По этому поводу было довольно много споров, в особенности, при HTC.
Мало кто осознавал, для чего делать совокупность, тратить на нее ресурсы, в то время, когда компания находится в не самом благоприятном положении?Сейчас же, благодаря китайским источникам в сети показалось изображение новой операционки, которая на диагностику была поменянным интерфейсом, а правильнее, BlinkFeed.
ВведениеВ 1985 сформировалась несколько производителей электроники — JTAG (Joint Test Action Group). Для решения проблем тестирования в 1990 был выдвинут промышленный стандарт — спецификация IEEE Std 1149.1-1990 (IEEE Standard Test Access Port and Boundary-Scan Architecture). В этом же году Intel вывел в свет первый процессор с JTAG — 80486. С того времени стандарт неизменно модифицируется и, сейчас, последняя версия датируется 2013 годом. «А какие конкретно же это неприятности с тестированием?»,- спросите Вы.
Ну как же! Мало наслаждения прыгать с осциллографом по выводам микросхемы, в особенности в случае если их большое количество больше двух! Стандарт разрешает существенно упростить жизнь за счет встраивание особой архитектуры в современные чипы, снабжающей доступ к выводам (правильнее, к особым блокам ввода-вывода) посредством 4-х проводного последовательного интерфейса. Эта архитектура разрешает не только осуществлять контроль их состояние, но и руководить ими.
Так возможно обойтись без громоздких пробников с физическим контактом и насладиться всей красотой этапа отладки цифровых микросхем либо устройств уровня печатной платы.Стандарт применяют как для целей отладки программ и внутрисхемного программирования, так и при работе с корпусированными микросхемами. Он же употребляется для проверки на уровень качества припайки микросхем к плате, межплатного и внутристоечного монтажа плат и блоков.
Кроме этого нужно сообщить ему благодарю за восстановление закирпиченных по неосторожности мобильных устройств.И как же трудится?Механизм граничного сканирования заключен, всего лишь, в сдвиговом регистре (Boundary Scan), подключенном между ядром и выводами микросхемы, и мультиплексоре что подключает в необходимый момент данный регистр. Каждому конкретному выводу соответствуют так именуемые «ячейки».В ячейку входит один триггер регистра мультиплексора выбора и граничного сканирования данных.
Ячейки смогут быть различных типов в зависимости от команд интерфейса и вывода микросхемы, т.е. зависит от производителя той либо другой микросхемы. Производители не придерживаются строго стандарта и, исходя из этого, развелось множество модификаций. На рисунке представлена одна из разновидностей ячейки.
PI, PO — параллельные выход и вход, SI,SO — последовательные.Сигналы на регистр микросхемы попадают через мультиплексор, что разрешает считывать как состояния выводов ядра микросхемы (инструкция INTEST), так и эти, поступающие извне на сдвиговый регистр (инструкция EXTEST). Разновидности руководств и их функциональность снова же изменяются от жажд производителя, но существуют так именуемые необходимые:
- EXTEST — инструкция, разрешающая за счет установки логических значений на рабочих контактах электронных компонентов проверить внешние цепи, имеющие яркое отношение к тестируемому компоненту.
- INTEST — инструкция снабжает возможность установки логических значений в микросхемы, другими словами на входах ядра, тем самым контролируя его.
- SAMPLE_PRELOAD — разрешает тестировать ядро электронного элемента в статическом режиме, устанавливая значения логических уровней на границе его выходных буферов.
- BYPASS — инструкция, при которой отечественный регистр граничного сканирования «схлопывается» в один триггер. Наряду с этим эти со входа (TDI) на выход (TDO) передаются с задержкой в один такт частоты синхронизации интерфейса (TCK). Данный режим разрешает действенно применять возможности последовательного интерфейса при организации долгих последовательно объединенных цепочек.
- IDCODE — инструкция выдвигает на выход значение встроенного 32-битного регистра с идентификаторами производителя, версии и модели устройства.
Сигнальные линии интерфейсаКак уже говорилось выше, интерфейс JTAG имеет следующие сигнальные линии:
- TDI — Test Data Input — сигнал данных на вход, эти задвигаются по переднему фронту TCK.
- TDO — Test Data Output — выход последовательных данных JTAG, выдвигаются по заднему фронту TCK, обязан быть в третьем состоянии — Z — в то время, когда эти не передаются.
- TMS — Test Mode Select — сигнал управления TAP — контроллером.
- TRST — Test Reset — не всегда имеется, поскольку ресета возможно добиться удерживая некое время TMS = 1, деятельный уровень сигнала — 0.
- TCK — Test Clock — тактовая частота.
JTAG — синхронный интерфейс, сигналы принимаются по переднему фронту синхроимпульсов младшими битами вперед и лишь в течении состояний TAP — контроллера Shift-DR \ Shift-IR. Выходные эти выдвигаются по заднему фронту.TAP — контроллерМы добрались до самой сути JTAG, в частности — управляющий работой автомат. С его помощью фактически и живет всё около. Автомат имеет 16 состояний.
Управление интерфейсом осуществляется методом действия на автомат при помощи сигнала TMS. Переходы происходят по переднему фронту сигнала TCK. запись и Чтение данных происходят в один момент. Ниже привожу иллюстрацию работы, забранную из документации микросхем компании Altera.Диаграмма переходов автомата, управляющего режимами TAPСостояния диаграммы переходов:
- Test-Logic-Reset – исходное состояние;
- Run-Test/Idle – переходное состояние контроллера при исполнении тестов либо ожидании следующей
- команды;
- Select-IR, Select-DR – состояние, по окончании которого будет производиться тестирование команд, данных;
- Capture-IR, Capture-DR – состояние приёма команд, данных;
- Shift-IR, Shift-DR – состояние сдвига команд, данных;
- Exit1-IR, Exit2-IR – выход из режима работы с командами;
- Exit1-DR, Exit2-DR – выход из режима работы с данными;
- Pause-IR, Pause-DR – состояние паузы;
- Update-IR, Update-DR – состояние перезаписи данных в выходные регистры.
DR — действия происходят над данными, IR — соответственно над руководствами.Исходное состояние, в котором находится автомат по окончании включения, это Test-Logic Reset. До тех пор пока сигнал TMS имеет значение «лог.1», состояние автомата остается неизменным. В этом состоянии, по умолчанию, выбрана инструкция IDCODE либо BYPASS.Сигнал сброса TRST не есть необходимым, исходя из этого для сброса автомата в исходное состояние используют следующую процедуру.
Нужно подать на вход TMS сигнал большого уровня и удерживать его не меньше 5 тактов частоты TCK. В случае если сигнал TMS будет установлен хостом в низкий уровень, то автомат перейдёт к состоянию Run-Test/Idle (активное состояни, в котором ничего не происходит). В большинстве случаев из этого состояния возможно перейти в состояние Select-IR, чтобы загрузить в контроллер новую инструкцию.
Но в случае если на вход сигнала TMS подействует не сигнал, подаваемый от хоста, а помеха низкого уровня, то, как и в прошлом случае, автомат перейдёт в состояние Run-Test/Idle. В случае если же краткосрочная помеха (длительностью не более одного периода синхрочастоты) закончится, то автомат через три такта опять возвратится в исходное состояние – Test-Logic Reset.Дабы загрузить в контроллер новую команду, нужно из состояния Run-Test/Idle перевести автомат в состояние Select-IR, Capture-IR, Shift-IR.
После этого нужно «продвинуть» в цепочку данных новую команду, а позже перевести автомат через состояния Exit1-IR, Update-IR и опять в Run-Test/Idle. Логика работы с данными такая же.
Необходимо учитывать, что сигнал большого уровня при переходе из состояний Shift-IR\DR подается вместе с последним битом информации.Диаграмма сигналов при исполнении переходов для загрузки командыЕсли применяя специальный САПР написать код работы JTAG на Verilog, то результирующая диаграмма будет смотреться приблизительно так:Сылка на дропбокс, картина в полный размерНаконец возможно продемонстрировать полную структурную схему устройства JTAG и Вы в полной мере должны в ней разобраться:… И напоследок…Применение JTAG и технологии граничного сканирования в микросхеме, на плате либо в устройстве додаёт цена и увеличивает время разработки проекта. Но, однако эти затраты легко окупаются при проведении тестирования, которое обеспечивается на каждой стадии цикла судьбы изделия.
То, что было первоначально создано как производственный испытательный инструмент, употребляется до начала производства, на протяжении серийного производства и по окончании производства, другими словами на этапе эксплуатации конечным пользователем. Не считая конкретно граничного тестирования, проектировщики применяют разработку JTAG чтобы создавать самотестирование (BIST) (в тех компонентах, где оно реализовано) и загружать внутренние значения в регистры устройства либо программировать микросхемы ПЗУ.
Тесты, каковые были созданы и использованы на этапе проектирования, смогут быть переданы производству, чтобы обеспечить дополнительное понижение цены и времени на диагностику изделий при выходном контроле.Главные хорошие эффекты от применения разработки JTAG в производственной фазе – экономия времени при разработке испытательных тестов, улучшенный «охват» тестируемого изделия при диагностировании и поиске ошибки и улучшенная производительность опробований при одновременном уменьшении времени опробования.Использование граничного сканирования при эксплуатации изделия кроме этого даёт определённый хороший эффект. Отказы при эксплуатации довольно часто происходят из-за структурных отказов, каковые вызываются повышенной температурой, влажностью, вибрацией. Применяя граничное сканирование, техники имеют возможность скоро проверить изделие на структурные неточности вплоть до отметки компонентов без трудоёмкого изучения либо возвращения платы изготовителю на завод.Литература: WikiBoundary-scan in Altera devicesофф. страница коммисии стандарта IEEE 1149.11149.1-2013 — IEEE Standard for Test Access Port and Boundary-Scan ArchitectureХорошая хабро-статья, в которой затронуто JTAG тестированиевыпуск EEVblog про JTAG от KillyВ статье употреблялись кое-какие эти из издания «Современная электроника» выпуск №2 2007.
Случайная статья:
Знакомимся с STM32F2XX
Похожие статьи:
-
Rooti climate: маленькая, но очень практичная метеостанция
Метеостанциями на данный момент никого не поразишь. Современные устройства для того чтобы типа весьма функциональны, плюс не занимают много места. Но…
-
Не все так просто: как рестораны фотографируют еду
Ранее в отечественном блоге мы говорили о том, какие конкретно дизайн-техники употребляются для меню в ресторанах. В комментариях кое-какие читатели…
-
Ati меняет интерфейс драйвера: встречаем catalyst control center
Видео В закладке настроек видео дешёвы пара профилей. И снова в расширенном режиме доступно больше настроек: к примеру, для яркости и цвета, как видно на…