Биография Диссертация Содержание библиотеки Ресурсы Intenet

Источник: Программируемые логические ИМС на К-МОП структурах и их применение / П.П. Мальцев, Н.И. Гарбузов, А.П. и др. - М.: Энергоатомиздат, 1998. - 160 с.

Глава 10

ПЕРИФЕРИЙНОЕ СКАНИРОВАНИЕ

Под периферийным сканированием (ПС - от англ. Boundary Scan) понимается программно-аппаратный метод задания тестовых воздей­ствий на входы проверяемого устройства и считывания сигналов с его выходов, предусматривающий использование специального регистра данных ПС, включаемого между входами/выходами проверяемого устройства и внешними выводами.

Метод ПС был специально разработан для обеспечения тестируе­мости БИС с использованием минимального количества дополни­тельных выводов корпуса МС.

Метод ПС позволяет:

проверять сами МС;

проверять межсоединения после монтажа МС на плату;

считывать или управлять сигналами на выводах МС во время ра­боты.

Основой использования ПС является стандарт IEEE Std. 1149.1 [б], разработанный объединённой группой по тестам (Joint Test Action Group - JTAG).

Приведем лишь минимальные сведения из стандарта IEEE Std. 1149.1, необходимые для понимания метода ПС.

10.1. Предложения JTAG по организации периферийного скани­рования

Упрощенная схема включения регистра данных ПС в МС показана на рис. 10.1.

Рисунок

Регистр данных ПС представляет собой сдвиговый регистр, спо­собный также кроме сдвига выполнять ещё две дополнительные функции:

параллельную загрузку (захват - от англ. Capture) данных во все разряды;

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

В неактивном состоянии регистр данных ПС не влияет на функ­ционирование основных схем кристалла, т.е. свободно пропускает входные и выходные сигналы МС.

Упрощенная схема одного разряда регистра данных ПС приведена на рис.10.2.

Рисунок

Стандарт JTAG предусматривает, что на выводе МС, выполняю­щем функции ВХОД или ВЫХОД, должен быть один разряд регистра данных ПС; на выходах с тремя состояниями - по два разряда (один на информационном входе выходного буфера, а втоагрузку (захват - от англ. Capture) данных во все разряды;

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

В неактивном состоянии регистр данных ПС не влияет на функ­ционирование основных схем кристалла, т.е. свободно пропускает входные и выходные сигналы МС.

Упрощенная схема одного разряда регистра данных ПС приведена на рис.10.2.

Стандарт JTAG предусматривает, что на выводе МС, выполняю­щем функции ВХОД или ВЫХОД, должен быть один разряд регистра данных ПС; на выходах с тремя состояниями - по два разряда (один на информационном входе выходного буфера, а второй на входе управления третьим состоянием). На двунаправленном же выводе МС с тремя состояниями (как в большинстве БВВ ПМЛЭ) должно быть по три разряда регистра данных (на входе, выходе и в цепи управления третьим состоянием), что и показано на рис. 10.1.

Порт тестирования (ПТ - от англ. ТАР - Test Access Port) пред­ставляет собой четыре или пять выделенных (т. е. неиспользуемых в других целях) выводов МС, через которые производится реализация метода ПС. Эти выводы имеют следующие наименования и функции:

     ТСК (Test ClocK input) - синхронизация передачи данных и команд;

TMS (Test Mode Select) - выбор режима тестирования (считывается на переднем фронте ТСК);

TDI (Test Data Input) - вход данных и команд (считывается на пе­реднем фронте ТСК);

TDO (Test Data Output) - выходные данные (изменение данных по заднему фронту ТСК);

~TRST (Test ReSeT) - инициализация ПТ ( знак "~" означает, что активным является низкий уровень). Сигнал -TRST является необязательным для организации ПС, так как инициализация может осущест­вляться подачей специальной последовательности сигналов на вход TMS.

Периферийное сканирование выполняется в следующей последовательности:

загрузка кода команды;

загрузка данных (выборочно);

исполнение команды;

считывание результата. Второй и четвертый шаги могут производиться одновременно.

Если на печатной плате установлено несколько МС с ПС, то, объединив ПТ этих микросхем, можно:

загрузить данные в выходные ячейки одной МС и считать их из входных ячеек другой МС (проверить межсоединения);

изолировать выводы МС на время проведения внутреннего теста от остальных МС (проверить ее функционирование).

При этом для тестирования всей платы будут использоваться все­го 4 ... 5 тех же сигналов ПТ.

Структурная схема аппаратуры ПС показана на рис. 10.3.

 

Аппарат для реализации метода периферийного сканирования должен включать в себя:                                      )

порт тестирования (пять выводов: TDI, -TRST, TMS, TCK, TDO);

устройство управления ПС (ТАР Controller);                     ' ;

регистр команд IR (Instruction Register) и дешифратор команд;

группу регистров данных DR (Data Registers).

Регистр команд и регистры данных должны быть отдельными сдвиговыми регистрами, соединенными параллельно, и имеющими общие последовательные вход TDI и выход TDO. Выбор между этими регистрами для записи или считывания должен осуществляться уст­ройством управления ПС, которое принимает тактовые сигналы TCK и интерпретирует команды на входе TMS, синхронизируя и управляя работой регистров команд и данных и другими схемами ПС.

Регистр команд и дешифратор используются для выбора типа теста или регистров данных, подключаемых через мультиплексор к выходу TDO.

Группа регистров данных должна включать одноразрядный регистр обхода (BYPASS-регистр) и собственно регистр данных периферий­ного сканирования RD (Boundary Scan Data Register), а также может содержать регистр идентификации и др.

Устройство управления аппаратурой ПС (ТАР Controller) - син­хронный конечный автомат, управляемый сигналами TCK и TMS и, в свою очередь, управляющий другими узлами, обеспечивающими ПС. Диаграмма состояний устройства управления ПС приведена на рис. 10.4. Цифра рядом с каждым состоянием - значение сигнала на вы­воде TMS на переднем фронте очередного импульса TCK.

Пояснения к диаграмме состояний:

TEST-LOGIC-RESET - сброс устройства управления ПС. Для вхо­ждения в этот режим существует несколько путей:

в регистр команд надо записать команды INCODE или BYPASS;

держать высокий уровень на выводе TMS по крайней мере в течение пяти тактов TCK;

сбросить устройство управления ПС (ТАР Controller) подачей низкого уровня на вход -TRST.

Устройство управления ПС сбрасывается также при включении пи­тания. Схемы ПС в этом состоянии неактивны.

RUN-TEST/IDLE - выполнение теста/ожидание - состояние между операциями сканирования. Схемы ПС при нахождении в этом состоя­нии активны только при наличии определённой команды (например, RUNBIST), иначе содержимое регистров данных и команд останется без изменения.

SELECT-DR-SCAN - выбор сканирования регистра данных - про­межуточное состояние (содержимое регистров данных и команд не изменяется).

SELECT-IR-SCAN - выбор сканирования регистра команд - про­межуточное состояние (содержимое регистров данных и команд не изменяется).

CAPTURE-DR - загрузка регистра данных. В этом состоянии дан­ные по приходу переднего фронта TCK параллельно загружаются ("захватываются") в сдвиговую часть регистра данных, выбранного те­кущей командой.

SHIFT-DR - сдвиг регистра данных. По приходу переднего фронта каждого следующего TCK данные в выбранном текущей командой ре­гистре данных сдвигаются на один разряд от TDI к TDO.

EXIT1-DR - выход 1-регистр данных - промежуточное состояние (содержимое регистров данных и команд не изменяется).

PAUSE-DR - пауза-регистр данных. В этом состоянии временно приостанавливается сдвиг в регистре данных от TDI к TDO (содержимое регистров данных и команд не изменяется).

EXIT2-DR - выход 2-регистр данных - промежуточное состояние (содержимое регистров данных и команд не изменяется).

UPDATE-DR - обновить регистр данных. У некоторых регистров данных может присутствовать параллельный защелкиваемый выход­ной буфер, данные на выходах которого не изменяются во время сдвига и загрузки ("захвата") новых, а в состоянии UPDATE-DR дан­ные из сдвигового регистра параллельно переписываются в выходной

буфер. Содержимое сдвиговых регистров данных и команд не изме­няется.

CAPTURE-IR - загрузка регистра команд. В сдвигаемую часть ре­гистра команд по переднему фронту ТСК загружается код, опреде­ляемый изготовителем МС. Содержимое регистров данных и защелк­нутая команда не изменяются.

SHIFT-IR - сдвиг регистра команд. По приходу переднего фронта каждого следующего ТСК код команды в сдвигаемой части регистра команд сдвигается на один разряд от TDI к ТОО. Команда подается младшим разрядом вперед. Содержимое регистров данных и защелк­нутая команда не изменяются.

EXIT1-IR - выход 1-регистр команд - промежуточное состояние (содержимое регистров данных и команд не изменяется).

PAUSE-IR - пауза-регистр команд. В этом состоянии временно приостанавливается сдвиг в регистре команд от TDI к TDO (содержимое регистров данных и команд не изменяется).

EXIT2-IR - выход 2-регистр команд - промежуточное состояние (содержимое регистров данных и команд не изменяется).

UPDATE-IR - обновить регистр команд. Код, находящийся в сдви­гаемой части регистра команд, защелкивается в параллельном вы­ходном буфере на заднем фронте ТСК. С этого момента защелкнутая команда становится текущей и подается на дешифратор команд. Со­держимое регистров данных не изменяется.

Три состояния устройства управления ПС (ТАР Controller) являют­ся главными:

UPDATE-DR - задание входных воздействий на тестируемую схе­му;

RUN-TEST/IDLE - выполнение теста или ожидание.

CAPTURE-DR - считывание результата тестирования с выходов схемы в сдвиговый регистр данных ПС.

Команды периферийного сканирования. Для выполнения раз­личных операций ПС используется регистр команд, состоящий из двух частей - сдвиговой и, подключенной параллельно ей, защелкиваемой, где собственно и находится текущая команда, определяющая вид ис­полняемого теста или регистр данных.

Каждая команда в регистре команд определяет набор регистров данных, относящихся к этой команде и путь или цепочку регистров данных между TDI и TDO.

Все бессмысленные наборы 0 и 1 в регистре команд должны соот­ветствовать команде BYPASS.

Общие команды BYPASS, SAMPLE/PRELOAD и EXTEST доступны всем пользователям МС с JTAG , и результаты их выполнения не за­висят от типа МС.

Особенные команды используются в целях производителя МС и их код должен быть приведен в описании во избежание нежелательных результатов их исполнения.

Рассмотрим описание команд ПС, определенных в стандарте JTAG.

Команда BYPASS. Регистр BYPASS - одна ячейка между TDI и TDO, требующаяся при отсутствии тестирования (для сквозного про­пуска данных через МС). Двоичный код для BYPASS - {111...1} (все единицы). Выполнение команды BYPASS не влияет на работу схем на кристалле и состояния регистров данных.

Команда SAMPLE/PRELOAD позволяет:

в состоянии CAPTURE-DR зафиксировать ("захватить") в сдвиго­вый регистр ПС сигналы, присутствующие на параллельных входах регистра ПС (по переднему фронту ТСК);

в состоянии UPDATE-DR загрузить данные, находящиеся в данный момент в сдвиговой части регистра данных, в параллельный регистр-защелку и, таким образом, обновить сигналы на параллельных выхо­дах этого регистра данных (по заднему фронту ТСК).

Команда EXTEST используется для тестирования внешних по от­ношению к данной МС соединений на печатной плате и задания вход­ных воздействий для других МС. Двоичный код для EXTEST - {000..0} (все нули). Данные, записываемые в ячейки регистра ПС выходных выводов МС, считываются ячейками входных выводов (может быть другой МС), отражая правильное или неправильное их соединение. Выполнение этой команды отключает внутреннюю часть кристалла МС от внешних выводов, и поэтому:

сигналы на выходных внешних выводах МС определяются данны­ми на параллельных выходах регистра ПС, обычно загружаемыми ту­да при выполнении команды SAMPLE/PRELOAD, и должны изменять­ся в соответствии с новым содержимым сдвигового регистра по зад­нему фронту ТСК в состоянии UPDATE-DR.

сигналы, получаемые с внешних входов, должны запоминаться в регистре ПС (в его сдвиговой части) по переднему фронту сигнала ТСК в состоянии CAPTURE-DR.

Команда INTEST тестирует функционирование схем на самом кри­сталле МС. Данные по сдвиговому регистру данных загружаются в ячейки ПС входов МС и, пройдя через схемы на кристалле, записы­ваются в ячейки ПС выходов этой же МС.

Команда RUNBIST осуществляет внутреннее самотестирование компонента, не требующее загрузки исходных данных. Результатом выполнения является определяемая производителем для каждой МС комбинация в выходном регистре данных.

Команда CLAMP устанавливает на выводах МС сигналы в соот­ветствии с данными, "защелкнутыми" на параллельных выходах реги­стра ПС, и помещает регистр BYPASS между TDI и TDO.

 

Команды регистра идентификации предусматривают наличие дополнительных регистров данных и позволяют считать идентифика­тор производителя МС (IDCODE), серийный номер и номер версии прошивки (USERCODE).

Команда HIGHZ переводит все выводы МС в третье состояние и помещает регистр BYPASS между TDI и TDO.

10.2. Организация периферийного сканирования в ПМЛЭ серии ХС4000

Аппаратура периферийного сканирования ПМЛЭ серии ХС4000 в соответствии со стандартом IEEE Std. 1149.1 содержит регистр дан­ных, регистр обхода и устройство управления (контроллер), а также регистр и дешифратор команд.

Для каждого вывода ПМЛЭ, связанного с программируемым БВВ, регистр данных ПС (рис. 10.5) содержит три разряда сдвигового реги­стра и три разряда регистра-защелки (для входа, выхода и управле­ния третьим состоянием). Сигнал Обновление подается на входы разрешения защелкивания LE (Latch Enable) триггеров регистра-защелки.

Выводы, не программируемые пользователем, имеют только по одному разряду в регистре данных ПС (для входа или выхода). Исключение составляют лишь три вывода ПМЛЭ: CCLK, -PROGRAM и DONE, которые не имеют ячеек в регистре данных ПС.

Определенные стандартом JTAG три входа и один выход порта ПС используют четыре специально выделенные выводы корпуса ПМЛЭ, соединенные также с программируемыми БВВ. Если же ПС не ис­пользуется в создаваемом проекте, то эти БВВ могут использоваться для обычных целей.

Устройство управления ПС обеспечивает выполнение семи команд (табл. 10.1): трех команд, определенных в стандарте JTAG (SAMPLE/PRELOAD, EXTEST и BYPASS), двух команд пользователя USER1 и USER2, а также специальных команд CONFIGURE и READBACK, позволяющих через порт ПС производить конфигуриро­вание ПМЛЭ и обратное считывание конфигурации из "теневого" ЗУ.

Регистр команд может использоваться для определения включения ПС в проект: в состоянии CAPTURE-IR в него заносится код 001, если предусмотрено использование ПС, и 101 - если не пре­дусмотрено.


Назад