Тестирование компонент памяти
в технологии JTAG. Часть 2
Нынешняя колонка завершает тему, начатую в предыдущем номере. _ В ней продолжено рассмотрение современных и перспективных аспектов
Ами ГородЕцкиИ, к. т. н. (JTAG.TECT) 1ТД/, г г г г г
JTAG-тестирования компонент памяти (ЗУ), применяемого для проверки исправности их монтажа на ПП.
На практике в большинстве случаев тестированием вообще и JTAG-тестированием ЗУ в частности занимаются контрактные производители электроники, оборудующие свои линии монтажа ПП теми или иными средствами тестирования. При этом аппаратные средства прогона JTAG-тестов [ПЭ. 2009. № 2, 6-7], применяемые на контрактном производстве, могут отличаться от тех, которые использовались разработчиками тестов при их отладке. Такие отличия обуславливают наиболее сложные ситуации при переносе JTAG-тестов ЗУ от разработчика теста к производителю ПП: тест, устойчиво работающий на одном стенде, не работает или неустойчив на другом. Наиболее чувствительны к отличиям в аппаратном интерфейсе именно JTAG-тесты ЗУ, эмулирующие функциональный тест. Это, очевидно, связано с отклонениями в точности обеспечения тайминга при чтении и записи и, что более важно, в поддержании требуемых интервалов времени между циклами регенерации для SDRAM.
Важную роль в обеспечении эффективной частоты JTAG-сканирования (TCK) и поддержании требуемых временных параметров при тестировании ЗУ может играть также тип аппаратного интерфейса стенда тестирования. Скорость передачи данных интерфейсом USB 2.0, к примеру, составляет 480 Мбит/с, тогда как тот же параметр для интерфейса USB 1.1 составляет всего 12 Мбит/с, то есть в 40 раз медленнее!
В одной из предыдущих колонок [КиТ. 2010. № 1] рассматривались кластерные аспекты JTAG-тестирования карточек памяти типов DIMM/SODIMM с печатными контактами. Одной из дополнительных причин, делающих невозможным непосредственное тестирование таких карточек без их замены на специальные тестовые модули (например, www.jtag-test.ru/SoftAndHard/ SODIMM.php), является то, что карточки DIMM содержат схему PLL, не прозрачную для сравнительно низкочастотных JTAG-сигналов. Некоторые карточки DIMM, одна-
ко, снабжаются средствами обхода схемы PLL (контакт AVdd), необходимо лишь вовремя позаботиться о JTAG-управляемости этого контакта при проектировании схемы ПП.
Тестирование ЗУ при помощи окружающих ИС JTAG [КиТ. 2010. № 2] в цифровом протоколе IEEE 1149.1 — весьма эффективный и прекрасно зарекомендовавший себя метод, хотя и имеющий свои ограничения, как и любой другой метод тестирования. Некоторые производители ИС ЗУ в поисках решения проблем, возникающих при таком подходе, снабжают свои ИС встроенными JTAG-структурами. Очевидно, что при JTAG-тестировании ИС ЗУ, поддерживающей протокол 1149.1, можно совершенно не принимать во внимание никакие функциональные особенности этой ИС и ее тайминг и тестировать правильность ее монтажа на ПП в рамках обычного теста межэлементных связей [ПЭ. 2007. № 8]. Характерным примером подобного подхода является пара функционально идентичных ИС SSRAM 256Кх36 в одинаковых корпусах. В версии 71V67602S166, выпускаемой фирмой IDT, эта ИС не имеет JTAG-структуры и тестируется при помощи окружающих ее ИС JTAG. В версии GS88136BD, выпускаемой фирмой GSI, микросхема полностью поддерживает протокол JTAG, что значительно упрощает JTAG-тест.
Своеобразная технология тестирования микросхем памяти, прежде всего SDRAM, разработана фирмами Fujitsu и Philips не столько как альтернатива JTAG-стандарту 1149.1, но скорее как дополнение к нему. Эта технология известна под названием SCITT (Static Component Interconnection Test Technology) или как стандарт IEEE Р1581. Буква Р (preliminary) в названии стандарта означает, что это пока лишь предварительная версия, а не официальный стандарт. Технология SCITT основана на встраивании в ИС ЗУ хорошо известных вентилей «исключающее ИЛИ» (XNOR) (рис. 1). Применение именно этих вентилей вызвано стремлением минимизиро-
вать количество тестовых векторов и максимизировать диагностическое разрешение при обнаружении дефектов монтажа ИС ЗУ.
Идея метода заключается во встраивании в ИС ЗУ некоей дополнительной структуры, позволяющей управлять переключением контактов ИС ЗУ в два режима — обычный функциональный режим, как микросхема памяти, и тестовый режим. Для управления переключением режимов к ИС можно добавить один специальный контакт, хотя это и не обязательно, так как существуют методы переключения режимов SCITT и без введения дополнительного контакта. Как переключение режимов, так и работа в тестовом режиме происходят под управлением внешних по отношению к ИС ЗУ микросхем JTAG на тестируемой ПП, а сам тестовый режим представляет собой разновидность кластерного JTAG-теста.
На рис. 2 схематично показана концепция технологии SCITT. ИС ЗУ, поддерживающая Р1581, полностью управляема со стороны некоторого контроллера, снабженного структурой JTAG. Функциональные особенности этого контроллера совершенно безразличны с точки зрения Р1581, это может быть микропроцессор, DSP, FPGA — что угодно, важно лишь, чтобы JTAG-управляемость ИС ЗУ с его стороны была полной. Шина адреса в параллель с ячейками памяти постоянно подключена к входам тестовых вентилей XNOR. Выходы
КОМПОНЕНТЫ И ТЕХНОЛОГИИ • № 3 '2010
вентилей XNOR, а также шина данных ячеек памяти ИС могут коммутироваться специальным блоком «Режим» на внешние контакты данных ИС ЗУ. Этот блок обычно представляет собой простую комбинационную функцию сигналов /WE и /CS без каких-либо особых доработок схемы.
В функциональном режиме выходы тестовых вентилей XNOR отключены от шины данных, и ИС ЗУ работает как обычно. При переключении в тестовый режим сложная структура памяти превращается в простой логический кластер, содержащий только вентили XNOR, что позволяет автоматически получить набор коротких и, что более существенно, статических тестовых векторов, это, собственно, и подчеркивает первое слово в названии технологии. Как управляемость, так и наблюдаемость тест-векторов SCITT осуществляется одной или несколькими ИС JTAG, подключенными к шинам адреса и данных. Тестовые векторы для матрицы вентилей XNOR представляют собой «бегущие единицы» и «бегущие нули», плюс два дополнительных вектора, содержащих все «лог. 1» и все «лог. 0». Размер теста, таким образом, очень небольшой: для адресной шины шириной n бит (включая, возможно, некоторые из цепей управления) число тестовых векторов можно оценить как 2n+2. Столь короткий тест, не имеющий к тому же никаких частотных ограничений, позволяет обнаруживать все дефекты монтажа контактов шин адреса и данных, а также некоторых управляющих цепей. Эти дефекты проявляются как одиночные константные неисправности типов s-a-1 (зависание в «лог. 1») и s-a-0 (зависание в «лог. 0»), а также все короткие замыкания между этими контактами, возникающие как результат дефектов монтажа ИС ЗУ.
Примером ИС ЗУ, поддерживающей технологию SCITT, является 64 Мбит SDRAM типа MB81F64324B фирмы Fujitsu Microelectronics. Здесь SCITT-тест выполняется непосредственно после включения питания ИС и перед выполнением команды Precharge. После выдачи этой команды блок «Режим» уже не может переключиться в тестовый режим, что является защитой от несанкционированного вхождения ИС в этот режим.
Таким образом, преимущества стандарта IEEE Р1581 при тестировании ИС ЗУ следующие:
• автоматическая и простая генерация теста;
• небольшой размер теста и короткое время его прогона;
• статический характер теста, обход функционального ядра памяти, исключение временных параметров как фактора генерации теста и его стабильности;
• тестовый доступ от ИС JTAG или даже посредством иголок ICT;
• отсутствие дополнительных контактов в корпусе ИС (например, четырех контактов порта ТАР) при незначительном увеличении населенности чипа микросхемы (по оценке фирмы Fujitsu — менее 1%).
В заключение обзора методов тестирования компонент памяти приведем краткое сравнение четырех основных подходов, охватывающих как структурное, так и функциональное тестирование ИС ЗУ. При сравнении будем исходить из предположения, что к микропроцессору, длина РГС которого [ПЭ. 2007. № 6] равна 385, подключены две ИС SDRAM, организованные как 4x512 Kx32. Временем, затрачиваемым на циклы управления контроллером ТАР микропроцессора, пренебрежем.
Первый метод
Первый метод заключается в том, что ИС SDRAM снабжена JTAG-структурой, РГС которой содержит ячейки, подключенные к 32 двунаправленным контактам шины данных (как минимум 64 ячейки), и ячейки, подключенные к 12 контактам шины адреса (12 ячеек). Кроме того, 11 контактов управления обслуживаются 11 JTAG-ячейками, что обуславливает длину РГС одной ИС ЗУ в 87 ячеек. Длина JTAG-цепочки в фазе сдвига в таком случае составляет 385+87+87 = 559 ячеек. Для тестирования такой ИС ЗУ в рамках JTAG-теста межэлементных связей понадобится как минимум 16 тест-векторов*, число циклов ТСК для их сдвига к тестируемым контактам ИС ЗУ равно 559x16 = 8944, так что при частоте ТСК = 10 МГц время выполнения теста составит 0,9 мс. Диагностика неисправностей в этом методе — с точностью до контакта ИС ЗУ.
Второй метод
Второй метод использует встроенную в ИС SDRAM структуру SCITT. Длина JTAG-цепочки в фазе сдвига в этом случае составит только 385 ячеек, а для JTAG-тестирования понадобится 3 вектора для входа в тест (если дополнительный контакт управления режимом SCITT отсутствует), 84 вектора* потребуются для тестирования двух ИС ЗУ, и один вектор — для выхода из теста. Итого — 88 тест-векторов. Число циклов ТСК при сдвиге
этих векторов к тестируемым контактам ИС ЗУ равно 385x88 = 33 880, что при той же частоте ТСК приведет ко времени выполнения теста, равному 3,4 мс. Уровень диагностики неисправностей — не ниже, чем в предыдущем случае.
Третий метод Третий метод — это традиционное тестирование ИС ЗУ при помощи окружающих микросхем JTAG, при этом реализуется эмуляция функционального алгоритма SDRAM. Число тестовых векторов при такой эмуляции [КиТ. 2010. № 2] составит примерно 564* на одну ИС ЗУ, так что общее число циклов ТСК будет равно 2x385x564 = 434 280. Время прогона такого теста — около 43,4 мс при той же частоте ТСК. Уровень диагностики неисправностей ниже, чем в предыдущих двух методах.
Четвертый метод Четвертый метод — полное функциональное тестирование ИС ЗУ без использования JTAG-теста. Применяется тот же алгоритм доступа к SDRAM, что и в третьем методе. Число тестовых векторов — только 168*, что при рабочей частоте тестирования 100 МГц дает время выполнения теста, равное 0,2 мкс. Диагностические возможности такого подхода значительно слабее, чем в первых двух, и ниже, чем в третьем методе. Кроме того, следует учитывать дополнительные ограничения структуры тестируемой ПП:
• Программа тестирования должна быть доступна из ПЗУ или флэш-памяти.
• Процессор должен иметь возможность выполнения программы без использования тестируемой ИС SDRAM, и даже в тех случаях, когда на контактах SDRAM существуют неисправности, например, короткие замыкания.
• Необходим дополнительный канал доступа
к процессору для поддержки диагностики теста. ■
* Frans de Jong, at al. “Static Component Interconnection Test Technology in Practice”.
КОМПОНЕНТЫ И ТЕХНОЛОГИИ • № 3 ’2010
www.kit-e.ru