РефератыКоммуникации и связьМеМетод граничного сканирования Boundary-Scan

Метод граничного сканирования Boundary-Scan

Метод граничного сканирования - Boundary-Scan


(стандарт IEEE 1149.1)


С середины 70-х годов структурное тестирование печатных плат основывалось на физическом доступе к устройствам и межсоединениям на плате с помощью так называемого «ложа из гвоздей» (рис. 1). С развитием технологии изготовления печатных плат, стали уменьшаться расстояния между соседними медными дорожками – стало более рискованно каждый раз класть плату на гвозди. Появились двухсторонние платы, и инженерам пришлось прикладывать гвозди с двух сторон. Вопрос о физическом доступе был исчерпан с появлением многослойных печатных плат.



Рисунок 1


С такими проблемами столкнулись в середине 80-х большинство производителей. Для поиска возможных решений была создана группа JTAG (Joint Test Action Group), которая с помощью 200 ведущих фирм в течение 5 лет разработала стандарт Boundary-Scan IEEE 1149.1 (IEEE – Institute of Electrical and Electronic Engineers).


В основу принципа была положена концепция размещения последовательного сдвигового регистра по границам устройства (рис. 2) Причем, сами ячейки такого регистра располагаются непосредственно между первичными входами/выходами устройства и логическим ядром.




Рисунок 2


Таким образом, в устройство добавляется 4 контакта: TDI (Test Data In – вход тестовых данных), TDO (Test Data Out – выход тестовых данных), TMS (Test Mode Select – выбор тестового режима) и TCK (Test Clock – тестовая синхронизация).



Рисунок 3.


Сущность механизма сканирования сходна с методом Scan Path. Однако, есть существенные различия. Во-первых, логика ядра может быть любой, в том числе содержать последовательностные структуры (не нужно разбивать устройство на комбинационную часть и память). Во-вторых, ячейки сканирования располагаются как до, так и после логики.


Несколько устройств на плате могут быть объединены в единый последовательный путь сканирования (рис. 3). Это можно сделать путем соединения TDO с TDI следующего устройства. Таким образом, на плате появляется также 4 дополнительных вывода: TDI и TDO, и общие для всех устройств TCK и TMS.


Таким образом, технология граничного сканирования при относительно небольших аппаратурных затратах позволила реализовать нечто вроде «виртуальных гвоздей», что обеспечивает не только 100% наблюдаемость, но и 100% управляемость входов/выходов устройств.


Несомненно, технология Boundary-Scan является значительным прорывом вперед в DFT. Рассмотрим архитектуру устройства, которую описывает стандарт IEEE 1149.1.


Общая схема устройства представлена на рис. 4.



Рисунок 4.


Само устройство, реализующее требуемые функции (которое, как мы видим, может содержать и некие внутренние регистры), помещается в обрамление из тестовой логики, которое составляют:


- Набор из 4 обязательных тестовых ножек: TDI, TDO, TMS и TCK. Также возможно добавление еще одной необязательной тестовой ножки – TR (Test Reset – сброс тестовой логики). Все вместе они называются TAP (Test Access Port – тестовый порт доступа).


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


- Однобитный регистр обхода (Bypass register).


- Необязательный 32-битный идентификационный регистр, с возможностью хранения в нем неизменяемого кода устройства.


- Регистр команд (Instruction Register), в котором хранится текущая команда. Разрядность регистра команд должна быть больше или равна 2.


- TAP controller. По сути, это конечный управляющий автомат для тестовой логики.


Как видно из схемы, тестовая логика предоставляет возможность выбирать путь прохождения данных от TDI к TDO: либо через регистр команд (Instruction Register), либо через регистр данных (Data Register). Регистром данных в каждый момент времени может быть один из следующих регистров:


- Последовательный сдвиговый регистр граничного сканирования (Boundary-Scan register).


- Какой-либо внутренний регистр, предусмотренный разработчиком устройства (Internal register).


- Регистр обхода (Bypass register).


- Идентификационный регистр (Identification register).


Рассмотрим регистр сканирования. Ячейки граничного сканирования (Boundary-Scan cells) подразделяются на два типа: входные (размещаются на тех первичных входах устройства, где временной фактор критичен – например, на входе синхронизации) и обычные. Схема входной ячейки показана на рис. 5.



Рисунок 5.


Как видно из этой схемы, сигнал проходит по линии данных без задержек. Однако, там где это возможно на входных линиях, а также на всех выходных линиях располагают обычные ячейки. Структура типичной ячейки граничного сканирования представлена на рис. 6.



Рисунок 6


Рассматриваемая ячейка состоит из двух D-триггеров, работающих по прямому фронту, двух мультиплексоров “2-в-1”, четырех входов и двух выходов. Назначение структурных элементов схемы:


- Data_In и Data_Out – вход и выход (относительно ячейки) линии данных, на которую эта ячейка и помещена. (PI – parallel input, PO – parallel output).


- Scan In и Scan Out – соответственно, вход и выход сканируемых данных (SI – serial scan input, SO – serial scan output). Т.е. на SI данные приходят с SO предыдущей ячейки (либо с TDI, если это первая ячейка в пути), проходят через первый D-триггер и выходят на SO, чтобы попасть на SI следующей ячейки (или на TDO, если это последняя ячейка в пути).


- ShiftDR – определяет источник информации для первого D-триггера: Data_In (режим Capture) либо Scan In (режим Shift).


- Mode – определяет, что пропускать на линию данных Data_Out: сигнал с Data_In (режим Normal) либо сигнал со второго D-триггера (режим Update).


- ClockDR – синхронизирующий вход первого D-триггера, т.е. для режимов Capture и Shift.


- UpdateDR – синхронизирующий вход второго D-триггера (режим Update)


Ниже приведена таблица режимов функционирования ячейки:



























Режим


ShiftDR


Mode


Функционирование


NORMAL


-


0


PI ® PO


CAPTURE


0


-


PI ® SO по фронту на ClockDR


SHIFT


1


-


SI ® SO по фронту на ClockDR


UPDATE


-


1


SO ® PO по фронту на UpdateDR



Как видно из структуры ячейки, путь сканирования TDI ® SI1
® SO1
® ¼® SOi-1
® SIi
® SOi
® SIi+1
® ¼ ® TDO физически не пересекается с линиями данных PI®PO ячеек граничного сканирования. Таким образом, регистр граничного сканирования является “прозрачным” для самого устройства. Для осуществления операций сканирования отсутствует необходимость переключаться в специальный тестовый режим. Влияние тестовой логики на функционирование устройства сведено к минимуму. На входных линиях задержка прохождения сигнала может отсутствовать вообще, а на выходных – равна задержке выходного мультиплексора (Output Mux).


Внутренний регистр (Internal register), предусмотренный разработчиком устройства, например, для хран

ения результирующей сигнатуры проверки устройства, если в нем реализованы средства встроенного самотестирования.


Регистр обхода (Bypass register) – простой, но очень важный элемент в рассматриваемой архитектуре. Он создает кратчайший путь между TDI и TDO, не затрагивая при этом все остальные регистры. Необходимость такого регистра обусловлена ранее оговоренной возможностью соединения нескольких устройств в последовательный путь сканирования. Если нам необходимо иметь доступ не ко всем, а только к некоторым устройствам в цепочке, то остальные устройства устанавливаются в режим Bypass, образуя минимальные задержки прохождения сканируемых данных. Bypass register состоит из одного мультиплексора “2 в 1” и одного D-триггера, синхронизированного прямым фронтом (рис. 7). Отсутствует параллельный вывод данных (в связи с чем, сигнал Update_DR отсутствует в схеме), но есть некоторая особенность с операцией Capture – в регистр может записываться аппаратно реализованное значение 0 (т.е. производится захват значения 0).



Рисунок 7


Регистр Идентификации (Identification register) – необязательный 32-битый регистр с режимами сбора данных и сдвига (рис. 8). 32 бита идентифицируют устройство через следующие поля:


–Бит 0 (младший разряд) всегда равен 1.


–Биты 1 – 11 идентифицируют фирму-изготовителя устройства. Используется краткая форма кода идентификации JEDEC.


–Биты 12 – 27 обеспечивают 16-битное поле свободного формата с серийным номером устройства.


–Биты 28 – 31 обеспечивают 4-битное поле свободного формата, чтобы описать до 16 различных версий того же основного устройства.


Регистр команд (Instruction Register) состоит из собственно сдвигового регистра, некоторой декодирующей логики (в зависимости от количества и типов реализуемых команд) и секции хранения декодированной команды, в которую как только команда поступает, она сразу же поступает на выполнение (рис. 9). Стандарт IEEE 1149.1, во-первых, предписывает, что есть только 3 обязательные команды, необходимые для функционирования аппарата Boundary-Scan, а все остальные являются необязательными (дополнительными), во-вторых, обязательные и дополнительные команды в стандарте только описываются функционально, а их реализация на аппаратном уровне оставлена полностью на усмотрение разработчика. Последнее, кстати, относится ко всему тестовому обрамлению устройства.


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


- BYPASS (обход) – команда, устанавливающая Bypass register между TDI и TDO. Код команды – все единицы (число разрядов регистра команд ≥2, поэтому для регистра минимальной длины код команды – 11). Режимы Shift и Capture с «0».



Рисунок 8



Рисунок 9.


- EXTEST (внешнее тестирование) – команда, выбирающая сдвиговый регистр и предназначенная для тестирования внешних соединений между устройствами на плате. Режимы Update (для ячеек, находящихся на первичных выходах устройства), Capture и Shift. Код команды – все нули (00).


Выполнение команды предполагает отключение ядра кристалла от внешних контактов (Mode=1).


- SAMPLE/PRELOAD (последовательность/предварительная загрузка) используется для сканирования значений сигналов, захваченных с внешних контактов устройств в штатном режиме (параллельно выполнению обычных функций устройств), а также для загрузки в регистр сканирования информации, используемой в дальнейшем для тестирования внешних соединений или других функций. Код команды не фиксирован. Режимы Capture и Shift.


Выполнение команды не предполагает отключение ядра кристалла от внешних контактов (Mode=0).


TAP контроллер (TAP controller) (рис. 10 и 11) – необычный автомат. Он имеет вход синхронизации TCK, вход данных TMS и 16 внутренних состояний. Также он имеет 9 выходов (3 – для управления регистром команд, 4 -для управления регистром данных и 2 – общего назначения). Причем переход в некоторое состояние активизируется последовательностью двоичных сигналов на входе TMS.



Рисунок 10 - TAP контроллер



Рисунок 11 – двоичный граф переходов TAP контроллера


Рассмотрим пример использования архитектуры Boundary-Scan для тестирования межсоединений. Пусть дана схема из 3-х устройств с BS-архитектурой (рис. 12), необходимо протестировать целостность линий между 2-м и 3-м устройствами. Последовательность действий состоит из 3-х этапов:


1) Устанавливаем Instruction Register (IR), между TDI и TDO каждого устройства. Это достигается с помощью подачи определенной последовательности на вход TMS TAP контроллеров.


2) Предполагая, что размер IR = 2 бит, вводим последовательность “110000”. Это означает, что в IR 1-го устройства будет загружена команда BYPASS (“11”), а в IR 2-го и 3-го – команда EXTEST (“00”).


3) Подаем очередную последовательность на TMS, которая инициирует выполнение загруженных команд. Таким образом, в 1-м устройстве между TDI и TDO будет включен регистр Bypass, а в двух других - Boundary-Scan register. После этого устройства готовы к выполнению команды EXTEST. Фазы выполнения команды EXTEST:


Shift – задвигается входная тестовая последовательность на Chip2 (SI ® SO).


Update – задвинутые в ячейки значения фиксируются на выходах Chip2 (SO ® PO).


Capture – отклик на тестовую последовательность записывается на Chip3 PI(Chip3) = PO(Chip2), PI(Chip3) ® SO(Chip3).


Shift – сдвигается отклик с Chip3 (SI ® SO) и одновременно задвигается новая тестовая последовательность на Chip2 и т.д..


Хотя EXTEST позволяет производить тестирование без привлечения каких-либо дополнительных команд, чаще всего она используется совместно с SAMPLE/PRELOAD, выполняющей роль команды, загружающей информацию в регистр сканирования (в режимах Shift (SI ® SO) или Capture (PI ® SO)).



Рисунок 12


Следует заметить, что прежде чем тестировать систему, необходимо проверить исправность тестера, т.е. целостность регистра сдвига и остальных регистров данных.


Необходимо понимать, что Boundary-Scan является новым подходом к тестированию систем в том смысле, что с развитием технологии надежность устройств стала гораздо выше, чем надежность соединений между ними. Поэтому основной задачей такой архитектуры, согласно стандарту IEEE 1149.1 является тестирование межсоединений (проверка наличия, размещения и связи соединенных компонентов, а также обнаружение обрывов соединений и замыканий между устройствами).


Преимущества технологии Boundary-Scan:


- при современном уровне интеграции ИС, затраты на реализацию метода в среднем составляют около 2% площади кристалла;


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


- позволяет организовывать on-line тестирование;


- обеспечивает доступ к регистрам, шинам, выводам;


- простой доступ к BIST возможностям устройств;


- облегчает тестирование не приспособленных к сканированию устройств, памяти.


Стандарт IEEE 1149.1 принят в 1990 году, а его усовершенствованная версия IEEE 1149.1а – в 1993. В стандарт IEEE 1149.1 входит BSDL – Boundary Scan Description Language – язык описания организации и архитектуры граничного сканирования в рамках одиночной БИС. Он построен как подмножество языка VHDL. Одной из основных задач, возлагаемых на язык, является созданием программных средств, автоматизирующих процесс создания тестов. HSDL – Hierarchical Scan Description Language (разработка фирмы Texas Instrument) – язык, ориентированный на описание потоков в группе БИС, объединенных JTAG интерфейсом. HSDL является расширением языка BSDL, полностью с ним совместим, входит в состав стандарта IEEE 1149.1а и построен как подмножество языка VHDL.

Сохранить в соц. сетях:
Обсуждение:
comments powered by Disqus

Название реферата: Метод граничного сканирования Boundary-Scan

Слов:2001
Символов:16173
Размер:31.59 Кб.