Научная статья на тему 'Стандарт тестопригодного проектирования IEEE p1687'

Стандарт тестопригодного проектирования IEEE p1687 Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
203
50
i Надоели баннеры? Вы всегда можете отключить рекламу.

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Городецкий Ами

Впервые о разработке нового JTAG-стандарта IEEE Р1687, который обещает стать, в сущности, первым стандартом тестопригодного проектирования (DFT), было упомянуто в начальной колонке рубрики «JTAG-тестирование» в [КиТ. 2009. № 2] более года назад, где на рис. 1 была приведена схема взрывообразного развития технологий JTAG-тестирования, а вкратце рас- сказано об этом стандарте в [КиТ. 2009. № 3]. Разработка Р1687 еще не окончена, так что буква Р (preliminary) в его номере означает, что это пока лишь предварительная версия, а не официальный стандарт.

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Текст научной работы на тему «Стандарт тестопригодного проектирования IEEE p1687»

Ами ГОРОДЕЦКИЙ, к. т. н. (JTAG.TECT)

amigo@jtag-test.ru

Стандарт тестопригодного

проектирования IEEE P1687

Впервые о разработке нового JTAG-стандарта IEEE Р1687, который обещает стать, в сущности, первым стандартом тестопригодного проектирования (DFT), было упомянуто в начальной колонке рубрики «JTAG-тестирование» в [КиТ. 2009. № 2] более года назад, где на рис. 1 была приведена схема взрывообразного развития технологий JTAG-тестирования, а вкратце рассказано об этом стандарте в [КиТ. 2009. № 3]. Разработка Р1687 еще не окончена, так что буква Р (preliminary) в его номере означает, что это пока лишь предварительная версия, а не официальный стандарт.

Идея разработки этого стандарта отражена в его названии — «Инструменты, встроенные в полупроводниковые микросхемы: структура и управление». Задача стандарта заключается в определении правил встраивания во вновь разрабатываемые СБИС и в «системы на кристалле» (СнК) специальных инструментов, взаимодействие которых и с которыми в рамках той или иной модификации общеизвестного JTAG-протокола стандарта IEEE 1149.1 обеспечит как тестопригодность сложных ИС самих по себе, так и возможность тестирования исправности их монтажа на поверхности ПП. Именно поэтому стандарт иногда представляется как шаг к стандартизации тестопригодного проектирования ИС.

Первым словом в названии и, как станет ясно в дальнейшем, ключевым термином в самом рассматриваемом стандарте является понятие инструмента. Инструментом в стандарте Р1687 называется любая размещаемая на чипе ИС структура или схема, предназначенная для поддержки тех или иных функциональных характеристик ИС, тестирования, диагностики, настройки и отладки всей ИС или любых ее составляющих, мониторинга, конфигурирования и любых других целей, доступ к которой и связь с которой осуществляются посредством порта и контроллера ТАР, поддерживающего традиционный стандарт JTAG [ПЭ. 2007. № 5]. Иными словами, понятие инструмента в стандарте довольно широкое и охватывает любую составляющую структуры ИС, являющуюся интеллектуальной собственностью (Intellectual Property, IP) и снабженную портом ТАР. Примерами инструментов в понимании стандарта Р1687 могут быть любые встроенные структуры со сканируемой архитектурой, структуры встроенного самотестирования (BIST) памяти и логики, контроллеры синхросигналов, накопительные буферы данных, встроенные логические анализаторы и вообще что угодно.

Основная причина начала разработки стандарта IEEE Р1687, которая еще далека от завершения, — это отсутствие как общепринятого языка описания, так и стандартного интерфейса для множества уже существующих, однако разрозненных инструментов, а также желание тест-инженеров применять для тестирования ИС, смонтированных на ПП, уже разработанные и отлаженные тесты для отдельных встроенных инструментов этих ИС, используемые в настоящее время только на уровне чипов. Желание, следует признать, вполне естественное: зачем вторично изобретать велосипед, не лучше ли просто приобрести и использовать для тестирования ПП уже готовые тесты, разработанные для отдельных ИС, смонтированных на этой плате? Встречное желание сообщества инженеров, тестирующих чипы, заключается в следующем: зачем для тестирования отдельных инструментов всякий раз разрабатывать новые специализированные тесты? Не лучше ли стандартизовать тестовую оболочку таких инструментов с тем, чтобы подход к их тестированию был универсальным, разработкой самих тестов занимались бы эксперты, а применимость таких тестов была бы максимально широкой — от отдельных чипов до смонтированных плат?

Попросту говоря, существует значительный разрыв между имеющимися средствами тестирования и отладки чипов и возможностями повторного применения этих средств на более высоком уровне — для тестирования смонтированных плат и узлов. Что подразумевается под центральным для рассматриваемого стандарта понятием «повторное применение тестов»?

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

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

Задача стандарта Р1687, таким образом, — преодоление упомянутого разрыва, обусловленного целым рядом причин, среди которых — широкое разнообразие фирм-разработчиков ИС, наличие различных методик структурного и функционального тестирования, множества платформ автоматизированного тестового оборудования и целого ассортимента языков тестирования. Инициатива, направленная на преодоление такого разрыва, получила название «встроенный (internal) JTAG», или IJTAG, и стала началом разработки стандарта IEEE Р1687. При этом следует отметить, что стандарт никак

КОМПОНЕНТЫ И ТЕХНОЛОГИИ • № 7 '2010

не определяет функциональные характеристики тех или иных инструментов, а сосредоточен только и исключительно на деталях стандартизованного доступа к ним: языке описания характеристик инструментов, языке протокола доступа, а также интерфейсных структурах и методах. Разумеется, наиболее естественный кандидат на роль аппаратного и программного протокола связи с этими инструментами и между ними — это стандартный протокол JTAG, широко применяемый для тестирования как ПП, так и отдельных ИС.

Три источника и три составные части, на которых базируется стандарт Р1687, следующие:

• архитектурные описания;

• инструментальные процедуры;

• инструментальный интерфейс.

Назначение архитектурных описаний —

определить наименования инструментов и регистров, указать на порядок цепочек сканирования и определить позиции отдельных существенных битов, определить наименования портов и их связность с контактами ИС. Как указывалось выше, стандарт никак не затрагивает никакие функциональные описания. Связи между инструментами, однако, описываются весьма подробно, и для этого используется язык, подобный языку BSDL [ПЭ. 2007. № 7], но имеющий иерархическую структуру.

Назначение инструментальных процедур — это описание структуры инструмента на двух уровнях: список поддерживаемых инструментом операций (верхний уровень) и действия на портах инструмента (нижний уровень). На основе этих описаний строится программный интерфейс взаимодействия с инструментом (API), при этом разработчик инструмента обязан поставлять описания обоих уровней, а пользователь инструмента (разработчик чипа) занимается адаптацией инструмента к структуре чипа лишь на верхнем уровне.

Инструментальный интерфейс должен обеспечивать аппаратное подключение инструмента к тому или иному порту ТАР, а также может (это необязательная опция) подключать его к контактам чипа и/или к другим инструментам. Именно наличие такого интерфейса поддерживает иерархический доступ к каждому из встроенных в чип инструментов и позволяет применять тестовые процедуры для инструмента с более высокого уровня, например от JTAG-разъема смонтированной ПП.

Пример простейшей структуры интерфейса в стандарте Р1687 приведен на рис. 1. Здесь SDR — это сдвиговые регистры данных, входящие в JTAG-структуру данного инструмента, посредством которых происходит передача информации в регистры данных, состояния и конфигурации каждого из инструментов.

В так называемой «плоской» структуре все инструменты подключаются «звездой»

JTAG SDR

Параллельная передача данных

1 Config Reg | /

JTAG ТАР

1 JTAG SDR 1 1 JTAG SDR 1 1 JTAG SDR 1

■j Config Reg |—| Status Reg |—| Data Reg

Инструмент

рис. 1. Пример простейшей структуры интерфейса в стандарте Р1687

к внешнему порту ТАР: сигналы TDI, TMS, TCK параллельно ветвятся ко всем инструментам, а выходные цепи TDO каждого из инструментов пропускаются через демультиплексор. Здесь, разумеется, есть широкий простор для применения нового JTAG-стандарта IEEE 1149.7 [КиТ. 2010. № 4].

Более сложная концепция интерфейса в стандарте Р1687, построенного по принципу «клиент-сервер», показана на рис. 2. Здесь наружный порт ТАР чипа работает как 1687-сервер, а каждый из встроенных инструментов является либо только клиентом, либо также представляет собой 1687-сервер более низкого уровня, одновременно являясь клиентом для 1687-сервера более высокого уровня. Клиент может также представлять собой, например, JTAG-оболочку (wrapper), определяемую стандартом IEEE 1500 [www. jtag-test.ru/JTAGUniversity/basic.php].

Структура ИС, таким образом, подразделяется на три зоны: JTAG-зона 1149.1, шлюзовая и инструментальная зоны. Шлюзовая зона предназначена для обеспечения интерфейса между портом ТАР хорошо известных JTAG-структур, для управления которыми существует множество давно и основательно разработанных средств, и собственно инструментальной зоной. Доступ к инструментальной зоне как от порта ТАР верхнего уровня, так и от всех последующих 1687-серверов должен обеспечиваться специализированными JTAG-командами, предназначенными для управления переходом из протокола 1149.1 в протокол 1687.

Стандарт Р1687 определяет три класса встроенных инструментов. Первый из них содержит JTAG-совместимые инструменты, имеющие те или иные регистры данных фиксированной длины, описываемые в файлах BSDL, доступ к которым формализован стандартным протоколом JTAG. Второй класс ин-

ТАР

1687 сервер

1 1687 сервер I

I 1687 клиент I

рис. 2. Концепция интерфейса в стандарте Р1687, построенного по принципу «клиент-сервер»

струментов согласуется с оболочками и механизмами управления, совместимыми как с протоколом JTAG 1149.1, так и с протоколом 1ЕЕЕ 1500. Инструменты этого класса могут иметь одну или более цепочек сканирования, находящихся в определенной иерархии по отношению друг к другу. Контроль над инструментами третьего класса характеризуется наличием хотя бы одного сигнала или их последовательности, не управляемых непосредственно из протокола JTAG, что предусматривает необходимость в некоторой дополнительной иерархии управления этими сигналами. Примером таких сигналов могут служить высокочастотные синхросигналы, источником которых не может являться низкочастотный JTAG-сигнал ТСК. ■

КОМПОНЕНТЫ И ТЕХНОЛОГИИ • № 7 '2010

www.kit-e.ru

i Надоели баннеры? Вы всегда можете отключить рекламу.