Научная статья на тему 'Модели инфраструктуры сервисного обслуживания цифровых систем на кристаллах'

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

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

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Парфентий Александр Николаевич, Хаханов Владимир Иванович, Литвинова Евгения Ивановна

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

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

Похожие темы научных работ по компьютерным и информационным наукам , автор научной работы — Парфентий Александр Николаевич, Хаханов Владимир Иванович, Литвинова Евгения Ивановна

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

MODELS OF THE INFRASTRUCTURE OF SERVICE MAINTENANCE OF DIGITAL SYSTEMS ON CRYSTALS

Algebra-logical method of built-in service maintenance of digital system functions on crystals is proposed. The method is oriented to solving problems of diagnosing defects of digital modules and restoring the efficiency of memory matrices. The method is characterized by the matrix specification of the fault coverage model by the test and makes it possible to obtain a complete and minimal set of defects in SoC functionality.

Текст научной работы на тему «Модели инфраструктуры сервисного обслуживания цифровых систем на кристаллах»

Список литературы: 1. А.С. 1126946 5G06F 5/02. Преобразователь двоично-К-ичного кода в двоичный код / А.Н. Слобожанин // Открытия, изобретения. 1984. №44. C.250. 2.А.С. 1647908 5НОЗМ 7/12. Преобразователь двоично-К-ичного кода в двоичный код /Н.Я.Какурин, Ю.К. Кирьяков, А.Н. Макаренко // Открытия, изобретения. 1991. № 17. C. 262-263. 3. Какурин Н.Я., МакаренкоА.Н., СтарчевскийД.Л. Проектирование алгоритмов функционирования преобразователей двоично-десятичных кодов последовательного типа. Часть 1. Проектирование алгоритмов преобразования // АСУ и приборы автоматики. 2005. Вып. 128. С.76-182. 4. Какурин Н.Я., Макаренко А.Н., Старчевский Д.Л. Проектирование алгоритмов функционирования преобразователей двоично-десятичных кодов последовательного типа. Часть 2. Проектирование схемных реализаций // АСУ и приборы автоматики. 2005. Вып. 131. С.167-175. 5. Бондарев В.М. Программирование на С++. Харьков. «Компания СМИТ». 2004. 284 с.

Поступила в редколлегию 02.11.2007 Какурин Николай Яковлевич, канд. техн. наук, профессор кафедры автоматизации проектирования вычислительной техники ХНУРЭ. Научные интересы: прикладная теория цифровых автоматов, автоматизация проектирования цифровых устройств. Адрес: Украина, 61166, Харьков, пр.Ленина, 14, тел. 70-21-326.

Вареца Виталий Викторович, студент группы КСС-04-2 ХНУРЭ. Научные интересы: проектирование программного обеспечения, автоматизация проектирования цифровых устройств. Адрес: Украина, 61166, Харьков, пр.Ленина, 14, тел. 70-21-326.

Коваленко Сергей Николаевич, соискатель кафедры АПВТ ХНУРЭ. Научные интересы: цифровые датчики, устройства преобразования кодов, автоматизации проектирования цифровых устройств. Адрес: Украина, 61166, Харьков, пр.Ленина, 14, тел. 70-21-326.

УДК 681.326:519.713

А.Н. ПАРФЕНТИЙ, В.И. ХАХАНОВ, Е.И. ЛИТВИНОВА

МОДЕЛИ ИНФРАСТРУКТУРЫ СЕРВИСНОГО ОБСЛУЖИВАНИЯ ЦИФРОВЫХ СИСТЕМ НА КРИСТАЛЛАХ

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

1. Архитектура инфраструктуры сервисного обслуживания

Сервисное обслуживание функциональных (F-IP) блоков цифровой системы на кристалле предполагает интегрированное взаимодействие технологий граничного сканирования на основе стандарта IEEE 1500 [1,2] с дополнительными нефункциональными инфраструктурными I-IP-модулями [3-6], которое гарантирует прозрачность и робастность выполнения функций SoC, технологичность изготовления, надежность и встроенный ремонт изделия в процессе его эксплуатации. Инфраструктура всключает следующие I-IP-модули [5]: 1) наблюдение за состоянием внутренних линий в процессе функционирования и сервисного обслуживания; 2) тестирование функциональных модулей путем подачи проверяющих наборов; 3) диагностирование отказов и дефектов путем анализа информации, полученной на стадии тестирования; 4) восстановление работоспособности функциональных модулей при диагностировании дефектов; 5) измерение характеристик и определение параметров функционирования изделия; 6) надежность и отказоустройчивость функционирования изделия в процессе эксплуатации.

Однако реализация всех компонентов инфраструктуры не всегда оправдана экономически по причине высокой стоимости разработки. Поэтому конкретная реализация компонентов из шестерки упомянутого выше полного множества является функцией от обслуживаемой функциональности и сервисных свойств, необходимых для обеспечения работоспособности SoC. На рис. 1 предложена инфраструктура SoC [3-5], ориентированная на решение задач [7,8]: 1) моделирование одиночных дефектов; 2) построение и хранение таблицы неисправностей; 3) логический и сигнатурный анализ состояний линий; 4) безусловное

диагностирование дефектов в компоненентах системы на кристалле; 5) сервисная оболочка граничного сканирования состояний линий в целях поиска дефектов; 6) встроенное диагностирование и ремонт памяти путем переадресации дефектных элементов на основе использования резервных компонентов (строк и столбцов).

Рис. 1. Инфраструктура цифровой системы на кристалле

Все функциональности, принадлежащие инфраструктуре, реализованы в кристалле программируемой логики FPGA. Для этого используется плата аппаратного ускорения Hardware Embedded System (HES) фирмы Alatek, подключенная к PCI разъему компьютера. Модель функциональности, описанная на HDL-языке [9,10] обрабатывается программами синтеза и имплементации. Сформированный битовый файл конфигурации загружается в кристалл FPGA. Управление процессом моделирования и верификации осуществляется с помощью программы Active-HDL [www.aldec.com] и специально созданного TestBench.

Учитывая широкие функциональные и структурные возможности современных систем на кристалле, особенно возможность размещения более одного специализированного процессора для управления процедурами сервисного обслуживания, следует проектировать универсальные алгоритмы, инвариантные по отношению к программной или аппаратной реализации на кристалле. Конкретная имплементация алгоритма или метода в аппаратуру или в программу определяется требованиями заказчика, который склонен или иметь гибкую систему в целях доработки, или высокое быстродействие. Истина - всегда посредине. Поэтому далее предлагаются гибридные (программно-аппаратные) решения моделей и алгоритмов, относящихся к I-IP. Следует заметить, что аппаратные решения все более приобретают статус гибкости по отношению к быстрым изменениям функциональностей. Это связано с тем, что абсолютное доминирование памяти в масштабе кристалле предполагает размещение управляющих программ в матрице памяти. Тогда как на долю reusable logic остаются считанные проценты, ориентированные на разработку высокопроизводительных параллельных вычислителей, критичных по отношению к быстродействию.

2. Структурная модель тестирования F-IP

Модель тестирования функциональности блока SoC не может использовать только тесты для определенного класса неисправностей, как и анализаторы выходных значений. Современные технологии рассматривают данную проблему в комплексе, как тестирование и верификацию программно-аппаратного комплекса - F-IP или всей SoC, с применением механизма ассерций, функционального покрытия тестом всех маршрутов вычислительных процессов на четырех уровнях иерархии, представленных на рис. 2.

Самым нижним в данной структуре является уровень сигналов, который включает тестируемое устройство (DUT) и сигналы, соединяющие его с TestBench (драйверы и мониторы). Следующий уровень - командный (command layer). Входы DUT управляются драйвером (driver), который выполняет отдельные команды, такие как чтение и запись данных по шине. Выходы DUT наблюдаются монитором (monitor), фиксирующим изменения сигналов, на основании которых формируются команды для управления модулем контроля. Ас^рции (Assertions) [11] принадлежат обоим уровням (command/signal layer), они наблюдают за отдельными сигналами и отслеживают их изменения в течение выполнения всей команды. Механизм ассерций достаточно популярен на рынке EDA для тестиро-

вания цифровых проектов на ранних стадиях проектирования, определяемых как ESL -Electronic System Level, TLM - Transaction Level Modeling [12].

Рис. 2. Структура оборудования для тестирования F-IP

Ассерция - есть высказывание системного уровня, определяющее корректность преобразований в процессе проектирования относительно входного описания текущего этапа или требований спецификации. Механизм ассерций - есть полная система высказываний и средств их анализа, предназначенных для тестирования, верификации и валидации изделия в процессе проектирования. Процесс верификации проектируемого изделия включает создание: 1) Testbench на одном из системных или HDL-языков; 2) специфицированной модели проекта, обрабатываемой в среде моделирования; 3) модели ассерций, представленной на специализированном языке или языке описания аппаратуры, помещенной в механизм (среду) для анализа ассерций. Избыточность, структурная, аппаратная и программная, создают определенные преимущества, для повышения качества проекта: 1) Применение ассерций сокращает объем кода, создаваемого непосредственно человеком для создания testbench, существенно сокращает время ручного проектирования, которое является наиболее дорогостоящим компонентом любого проекта. Сокращение объема кода в модели ассерций в несколько раз уменьшает вероятность возникновения ошибок. 2) Взаимодействие компиляторов моделирования и анализа ассерций создают условия для автоматического размещения внутри моделей устройств доступа к значениям всех внутренних сигналов. Это дает возможность оперативной идентификации места и вида дефекта и уменьшения времени обнаружения регрессий при нисходящем проектировании. 3) Сообщение о нарушении ассерции указывает место в иерархии устройства, а также момент времени, когда произошел сбой, не требуя при этом дополнительных затрат для точной локализации возникшей проблемы. 4) Момент нарушения ассерции может быть использован в среде верификации как дополнительная точка остановки (breakpoint), а также для запуска специальных алгоритмов обработки, повышающих глубину диагностирования, что переводит testbench на более высокий уровень абстракции. 5) При условии, что ассерции максимально адекватно отражают спецификацию устройства, статистика процесса их моделирования используется для анализа качества покрытия функциональностей тестовыми наборами. 6) На основе практики применения ассерций наработаны специальные библиотеки верификации: OVL (Open Verification Library), обобщающие наиболее востребуе-мые темпоральные ограничения, которые могут найти применение при верификации широкого класса цифровых изделий.

Блок-агент (agent block), называемый транзактором (см. рис. 2), получает высокоуровневые транзакции, такие как прямое чтение и запись в память, и разбивает их на отдельные команды. Последние также посылаются в анализатор (scoreboard), который предсказывает результат транзакции. Проверочный блок сравнивает команды от монитора с полученными из scoreboard. Анализатор (scoreboard) предназначен для динамического предсказания реакции проекта путем логического моделирования укрупненной модели. Стимулы подаются на устройство и одновременно на модель, представленную функциями преобразования, уровня транзакций (TLM). Последние формируют значения сигналов, соответствующие выполнению основных операций устройства для последующего их сравнения с выходами тестируемого изделия. Блок data structure сохраняет ожидаемые реакции выхо-

дов в целях последующего сравнения с состояниями выходов DUT модуля. Функциональный слой управляется генератором сценарного уровня. Здесь формируются задания с параметрами ограничений для псевдослучайной генерации тестов. Имеется в виду совокупность генераторов, ориентированных на проверку типовых компонентов: сумматоры, шинные структуры, дешифраторы, мультиплексоры, счетчики, регистры, триггеры, память. Другой тип генераторов является перенастраиваемым в процессе тестирования. Блоки, выделенные пунктиром, создаются в начале этапа разработки. Они могут изменяться, дополняться функциями, но они никогда не меняются для отдельного конкретного теста. Именно перенастраиваемые генераторы псевдослучайных тестов задают определенную моду в процессах тестирования и верификации, ввиду своей технологичности, определенной универсальности и быстродействия. Они дают возможность на 15-20% сократить время проверки функциональности устройства. Концепция - Feedback from functional coverage to stimulus - псевдослучайный тест с обратной связью - позволяет оценить полноту покрытия функциональности тестом и скорректировать генерирование последующих наборов путем выбора других стратегий и направлений в рамках проекта. Аналогично тому, что существует coverage-driven verification, создается технология coverage-driven test generation. Подобные обратные связи используются в формальном анализе, например, в инструменте Magellan (Synopsys).

На рис. 3 представлена модель генератора тестов [13] покрытия дефектов и функцио-нальностей, ориентированная на имплементацию в кристалл. Структура фактически пред-сталяет ядро F-IP, поскольку она решает комплекс основных задач, связанных с синтезом тестов, их верификацией, моделированием исправного поведения и неисправностей, верификацией функциональности, диагностированием дефектов в реальном масштабе времени. Отличительной особенностью представленной модели является обратная связь, влияющая на качество решения задачи тестирования в целом. Она позволяет влиять на быстродействие тестирования и на качество покрытия функциональностей (неисправностей) путем выбора тех тестовых генераторов, которые способны решить задачи покрытия еще не охваченных областей структуры (fault coverage, functional coverage) тестируемого изделия.

ATPG

Рис. 3. Модель процесса тестирования F-IP Особенности функционирования подсистемы тестирования заключаются в следующем: 1) Одновременно на функциональный блок и его модель подаются тестовые наборы, генерируемые одним из восьми синтезаторов. Модель заключена в оболочку симулятора, который ориентирован на выполнение функций: fault-free and fault simulation. Первая функция оценивает полноту покрытия функциональностей тестируемого блока, вторая - качество покрытия неисправностей. 2) С помощью монитор-компонента выполняется формирование реакций выходных линий и внутренних, сканированных с помощью boundary scan регистра. Состояния линий сравниваются с модельными в целях формирования вектора экспериментальной проверки, который сохраняется в модуле-анализаторе (scoreboard). Последний, при наличии всех нулевых значений, идентифицирует исправность объекта и его пригодность для выполнения функций. 3) Симулятор неисправностей на выходе формирует оценку качества покрытия наперед заданных дефектов и функциональностей, Если хотя бы один компонент не удовлетворяет минимальной оценке покрытия указанных свойств, осуществляется выбор другого генератора, как правило, ориентированного на генерирование тестов для еще не покрытых зон тестируемого устройства. 4) При наличии

управляющих сигналов от обратной связи (0) и от анализатора scoreboard (1) выполняется процедура диагностирования - определение места и вида дефекта - по информации, полученной от блока моделирования и монитора. 5) Линейка тестовых генераторов представлена восемью модулями: PRTG - псевдослучайный генератор входных стимулов с равномерным законом распределения нулей и единиц по входным переменным; SATG -тест-генератор шестнадцатиразрядных кодов на основе сигнатурного анализа; SPTG -алгоритмический генератор тест-векторов активизации одномерных путей, ориентированный на проверку заданных неисправностей; ADTG - тест-генератор, ориентированный на проверку сумматорных структур; BSTG - тестовый генератор для шинных структур передачи информации; METG - генератор тестов для матричной памяти; DFTG - генератор тестов для устройств, заданных в виде граф-схем алгоритмов; RCTG - тестовый генератор для последовательностных структур, типа счетчик, регистр, триггер.

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

3. Алгебро-логическая модель диагностирования F-IP

Структура модулей сервисного обслуживания I-IP для диагностирования дефектов в функциональных блоках F-IP представлена на рис. 4. Компаратор анализирует выходные реакции модели и реального устройства на входные тестовые векторы, поступающие от генератора тестов. Несовпадения реакций формируют единичные координаты вектора экспериментальной проверки (ВЭП) для каждого входного набора. Пересечение ВЭП с таблицей неисправностей (тест-дефекты) и со схемной структурой дают множество линий и элементов, которые подозреваются дефектными на текущем тест-векторе. Пересечение подозреваемых подмножеств, определенных для каждого входного набора, дает минимальное множество подозреваемых одиночных неисправностей, мощность которого в общем случае -больше 1. Поэтому для полученного множества определяется минимальное число точек контроля, которое повышает глубину диагностирования до дефектной линии или элемента. Реакции теста в определенных ранее точках контроля сканируются с помощью boundary scan регистра, который служит в данном случае мультизондом для получения точного диагноза. Таким образом, основная интеллектуальная нагрузка приходится на scoreboard, который по сути является анализатором-контроллером, управяющим процессом поиска дефектов, после фиксации наличия неисправностей в функциональности SoC.

Рис. 4. Модель процесса диагностирования F-IP Интересное решение задачи диагностирования может быть получено путем применения булевой алгебры и таблицы неисправностей М, представляющей собой декартово произведение теста Т на множество заданных дефектов Б, в совокупности с вектором экспериментальной проверки V, где выполнение задачи покрытия дает максимально точный результат в виде ДНФ, а каждый терм есть возможный вариант наличия в устройстве дефектов. Итак, модель процесса диагностирования представлена компонентами:

А =< Т,Б,М, V>, Т = (ТЬТ2,...,Ть...Дп);Б = (Б^,...,Бт);

М = |Му|д = 1п;} = 1т; V = ,...,^,...^п); е{0,1}. (1)

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

i=1,n ]=1,т

F = А ( V ^). (2)

=1 УМу =1 -1 у '

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

i=1,n ]=1,ш

F = А ( V Fj) =

=1 УМу =1

avab=b ava=а

= {0,1>. (3)

Следующая матрица М = Т х Б является примером алгебро-логического анализа дефектов на основе таблицы неисправностей в функциональных блоках системы на кристалле, число которых равно 10. Тест, длиной 11 входных наборов, проверяет все введенные в таблицу неисправности. Вектор экспериментальной проверки цифрового устройства V= (10001001001), полученный при выполнении диагностического эксперимента, фиксирует несовпадения выходов устройства по сравнению с моделью (золотым эталоном) на четырех (1, 5, 8 и 11) тестовых наборах.

М = Т х Б =

% Р1 Р2 Рз Р4 Р5 Рб Р7 Р8 Р9 Р10 V

Т1 1 1 1

Т2 1 1 0

Тз 1 1 1 0

Т4 1 0

Т5 1 1 1

Тб 1 1 0

Т7 1 0

Т8 1 1

Т9 1 1 0

Т10 1 0

Т11 1 1 1 1

В соответствии с числом единиц (4) в векторе экспериментальной проверки V формируется количество дизъюнктивных термов КНФ (4). Каждый терм есть построчная запись дефектов (через логическую операцию ИЛИ), оказывающих влияние на искажение выходных сигналов функциональности. Далее осуществляется преобразование КНФ к ДНФ на основе правил алгебры логики, что дает возможность получить результат:

Р = (Р4 V%)(Б5 VБ8)(Р4)(Р8 VР9 V%) =

= (Р5 V Б8)(Б4)(Б8 V Р9 V % ) = (Р4Р5 V Р4Р8ХР8 V Р9 V % ) =

= (Р4Р5Р8 Р4Р5Р9 Р4Р5Р10 Р4Р8Р8 Р4Р8Р9 v Р4Р8Р10) = (4)

= (Р4Р5Р8 V Р4Р5Р9 V Р4Р5Р10 V Р4Р8 V Р4Р8Р9 V Р4Р8Р10) = (4)

= (Р4Р5Р9 VР4Р5Р10 VР4Р8).

Полученный результат Р = (Р4Р5Р9 V Р4Р5Р10 V Р4Р8) содержит во всех термах дефект Р4, означающий его обязательное присутствие в функциональности SoC. Если принять гипотезу о существовании одиночного или минимального числа кратных дефектов, то предпочтительным является решение, определяемое третьим термом Р = Р4Р8 - в схеме существует два дефекта, которые формируют на выходах вектор экспериментальной проверки, равный V= (10001001001).

Интересный результат может дать аналогичный анализ таблицы неисправностей М = Т х Р, выполненный по нулевым координатам вектора экспериментальной проверки:

i=1,n ]=1,ш

Р = А ( V Р). (5)

УХ=0 УМу =1 -1 4 '

Последующие преобразования, связанные с получением из первоначальной КНФ дизъюнктивной нормальной формы, дают следующую ДНФ:

Р = (Р2 V Ру )(Рз V Рб V Р9 )(Р1 )(Р1 V Р2 )(Рз )(Р5 V Рб)(Р7 ) = (б)

= Р1Р3Р5Р7 V Р1Р3Р6Р7. ( )

Анализ выражений, представленных формулами (4) и (б), приводит к интересным выводам: 1) Дефекты, которые не могут присутствовать в схеме, определяются в термах ДНФ, полученных по нулевым строкам относительно вектора экспериментальной проверки. 2) Дефекты, которые имеются в ДНФ (б), должны быть удалены из функции (4). 3) Исключение в данном случае дефекта Р5 приводит к разрушению двух термов Р4Р5Р9 V Р4Р5Р10, поскольку без неисправности Р5 каждый из них в отдельности не сможет сформировать заданный вектор экспериментальной проверки. 4) Таким образом, делается единственный

вывод - в схеме присутствует двукратная ошибка, определяемая термом Р = (Р4Р8). 5) Вычислительная сложность получения точного и полного множества решений определяется выражением Q = 2т+1(2т +1). Данный метод дает возможность получить точное решение, составленное из одиночного или кратных дефектов путем решения задачи покрытия.

4. Моделирование для уточнения диагноза F-IP

Полученная дизъюнктивная форма (5) является основной моделью для поиска дефектов. Она не всегда однозначно определяет дефект функциональности, поэтому нуждается в процедурах, уточняющих диагноз. Прежде всего следует заметить, что все строки М = Т х Р, которые отмечены нулевыми значениями вектора экспериментальной проверки, можно объединить в дизъюнкцию неисправностей, которые не могут присутствовать в схеме:

Р = (Р2 V Р7 ) V (Р3 V Рб V Р9) V (Р1) V (Р1 V Р2 ) V (Р3) V (Р5 V Рб) V (Р7 ) = = (Р2 V Р7 V Р3 V Рб V Р9 V Р1 V Р5) = = (Р1 V Р2 V Р3 V Р5 V Рб V Р7 V Р9).

Обозначив отсутствие конкретной неисправности Ру = 0, можно сформировать входные условия для ДНФ (5) в целях последующей эмуляции (моделирования) функции при следующих начальных условиях:

(Р1 ,Р2 ,Р3,Р5,Рб,Р7 ,Р9) = (0000000).

Тогда результат моделирования функции Р = (Р4Р5Р9 V Р4Р5Р10 V Р4Р8) становится равным: Р = (Р4 А 0 А Р9 V Р4 А 0 А Р10 V Р4Р8) = Р4Р8 .

В самом деле, если неисправности (Р1, Р2 ,Р3,Р5, Рб,Р7, Р9), теоретически проверяемые на тестовых наборах, дают отрицательный результат - все они не искажают состояния выходов, то значит - они отсутствуют в схеме. Обоснование данного факта подтверждается следующими доказательствами.

Лемма 1. Полное множество всех возможных сочетаний дефектов, проверяемых тестом Т, определяется как ДНФ, полученная преобразованием конъюнктивной формы

1=й ]=1,ш 2т т

Р = А ( V ^) ^ (А к ^),

У^ =1 УМу =1 1=1 ]=1

каждый терм которой записан по единичным значениям строки таблицы неисправностей М = Т х Р, имеющей состояние ВЭП VI = 1.

Исходная информация, записанная в соответствии с единичными значениями ВЭП, представляет собой полную модель неисправного поведения реального объекта, которая формирует вектор экспериментальной проверки с фиксированным числом единиц (строк таблицы неисправностей), равным к. Каждая строка формирует дизъюнкцию дефектов, записанную по ИЛИ. Число таких дизъюнкций равно к, которые логически перемножаются, образуя полное и непротиворечивое множество событий - дефектов, одновременно присутствующих в схеме. Путем перемножения элементарных дизъюнкций с последующим упрощением выражений, используя аксиомы (аVаЬ = Ь; аVа = а), получаем ДНФ, которая создает все возможные сочетания, записанные в виде элементарных конъюнкций. Ввиду тождественности выполненных преобразований полученная функция по логике эквивалентна исходной КНФ, а по сути есть технологичная форма записи всех решений - сочетаний дефектов, имеющих место быть в схеме.

Лемма 2. Все проверяемые в строках таблицы неисправностей М = Т х F дефекты, отмеченные нулевыми значениями вектора экспериментальной проверки у^ = 0, в реальном объекте остутствуют.

В самом деле таблица неисправностей М = Т х F имеет два типа строк: единичные и нулевые относительно значения вектора экспериментальной проверки:

Мр(0110) ^ Ур = 1; М^0101) ^ у1 = 0.

Строка р выявляет наличие в схеме двух дефектов F2 V Fз. Строка q свидетельствует о теоретической проверке неисправностей F2 V F4, если бы вектор Уq = 1. Но фактически

сигнал Vq = 0 идентифицирует несущественность дефектов F2 V F4 для искажения выходов схемы. Или данные дефекты отсутствую в тестируемом изделии. Подставив в функцию F = F2 V Fз нулевые сигналы для F2 V F4, получаем результат: F = F2 V Fз | F2 =F4 =0 = Fз .

Аналогично, все дефекты, которые определены в строках, имеющих нулевое значение ВЭП, будут отсутствовать в схеме. Но если они отсутствуют в схеме, то их следует исключить из ДНФ, записанной по единичным значениям ВЭП. Следовательно, имея термы ДНФ и множество дефектов, которые не могут существовать в схеме для заданного ВЭП, можно выполнить процедуру подстановки нулевых сигналов в переменные элементарных конъюнкций функции ДНФ. Но с учетом того факта, что 0 л а лЬ л с. .. = 0, результат подстановки и последующих преобразований в целях получения минимальной функции будет иметь только те термы, которые не имеют переменных - дефектов с нулевым значением сигналов. Это означает, что из ДНФ будут исключены все дефекты, относящиеся к нулевым, относительно ВЭП, строкам таблицы неисправностей.

Теорема. Минимальное множество всех возможных сочетаний дефектов, определяемых по таблице неисправностей М = Т х F, вычисляется путем моделирования ДНФ на множестве начальных условий

2т т

F = V'(Лк^) =1)&(Ур =0) ,

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

В соответствии с леммой 1 полное множество всех возможных сочетаний дефектов, проверяемых тестом, определяется в виде ДНФ

2т т

F ^ (Л к ^),

1=1 ]=1

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

которая формирует все решения, удовлетворяющие единичным значениям вектора экспериментальной проверки Уq = 1. Оно может быть уменьшено за счет исключения тех

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

Следовательно, их можно исключить из термов ДНФ, образующих полное множество всех возможных сочетаний. Механизм такого исключения, согласно лемме 2, заключается в подстановке нулевых значений переменных в термы ДНФ с последующим моделированием (упрощением) функции. Если терм имеет 0-компонент некоторой переменной Fi, то, согласно алгебре логики, весь терм обращается в 0, что означает его исключение из ДНФ. Таким образом, в результате минимизации на основе учета условий леммы 2 остается минимальная ДНФ, содержащая наименьшее число возможных сочетаний дефектов (одиночных и кратных), которое невозможно сократить без использования дополнительной диагностической информации, поступающей от мультизонда на основе boundary scan регистра.

Таким образом, предложенный алгебро-логический метод диагностирования использует булеву алгебру в качестве базового аппарата, на основе которого решается задача покрытия, путем получения дизъюнктивной формы, которая далее минимизируется путем исключения термов, имеющих переменные дефектов, относящиеся к строкам, которые идентифицированы нулевым значением ВЭП. Для незначительного числа дефектов в цифровой системе на кристалле вычислительная сложность позволяет осуществлять поиск неисправностей в реальном масштабе времени.

5. Условное диагностирование F-IP на основе ДНФ

В целях существенного уменьшения области позозреваемых дефектов на практике используется метод половинного деления, основанный на использовании интерактивной процедуры зондирования внутренних точек контроля, которые обеспечивают полученную ДНФ дефектов дополнительной информацией, которая уменьшает множество дефектов. В данном случае таким зондом может быть регистр граничного сканирования, который способен определить состояние внутренней линии в целях исключения дефектов или их подтверждения. Стратегия выбора контрольной точки ориентирована на половинное деление подозреваемого множества, - исключение на каждом шаге половины дефектов путем моделирования - упрощения исходной ДНФ. Суть метода половинного деления на дизъюнктивной нормальной форме, представляющей все возможные сочетания дефектов в схеме, можно продемонстрировать на следующем примере:

F = (F4F5F9 v F4F5F10 v F4F8) .

Выбор первой точки контроля, например, F9 = 0 превращает функцию в выражение:

F = (F9 = 0 ^ (F4F5F9 v F4F5F10 v F4F8) = F4F5F10 v F4F8;

[F9 = 1 ^ (F4F5F9 v F4F5F10 v F4F8) = F4F5F9 v F4F5F10 v F4F8.

Если же F9 = 1, что означает подтверждение дефекта на линии, не уменьшает размерность ДНФ. Следовательно, необходимо ориентировать алгритм выбора точек контроля на максимальное уменьшение исходной ДНФ после введения начальных условий (Fj = {0,1}) для моделирования. Критерием выбора точки контроля может служить взвешенность мощностей ДНФ, полученных после моделирования обоих состояний проверки.

Правила выбора контрольной точки:

Утверждение 1. Если Fj присутствует во всех термах ДНФ, то данный дефект существует обязательно в схеме, а данную линию не следует тестировать. В противном случае, если предположить, что она будет равна нулю, все термы обращаются в нуль, а это противоречит условию существования ненулевых значений вектора экспериментальной проверки V.

Утверждение 2. В схеме присутствует только одно сочетание дефектов, определенное одним термом ДНФ. Если найдено одно подтвержденное решение в виде терма ДНФ, то остальные термы следует исключить из рассмотрения путем их обращения в нуль.

Поэтому задача минимизации точек контроля сводится к выполнению двух альтернативных стратегий: 1) рассмотрение переменных в термах минимальной длины для подтверждения всех дефектов в терме путем их зондирования; 2) проверка таких переменных, которые обращают в нуль максимальное число термов ДНФ.

В случае существования функции F = (F4F5F9 v F4F5F10 v F4F8), которая имеет терм минимальной длины 2, а также переменную F4, присутствующую во всех термах, то един-

ственно лучшим решением будет проверка F8, которая дает при положительном результате искомое множество дефектов, а при отрицательном оставшиеся два терма, подлежащие зондированию:

Р = |Р8 = 0 ^ (Р4Р5Р9 V^ВДо);

^8 = 1 ^ (F4F8).

Проверка F5 дает следующие результаты послезондового моделирования двух вариантов функций:

Р = JF5 = 0 ^ F4F8;

[Р5 = 1 ^ F4F5F9 V F4F5Flо VF4F8. Далее, после (Р5 = 1), должны последовать две проверки из трех (Р9,Р10,Р8), которые убирают все термы, кроме одного, определяющего решение:

Р = Г^ = 0 ^ Б,4Б'5р'1о V Р4Р8; р. = /Р'ю = 0 ^ F4F8;

[Р9 = 1 ^ Р4Р5Р9. [1^0 = 1 ^ Р4Р5Р9.

Критерием окончания процедуры диагностирования является получение одного терма ДНФ, которое идентифицирует наличие кратного дефекта в функциональности цифровой системы на кристалле.

Далее предлагается еще один пример выполнения интерактивной процедуры диагностирования на основе анализа ДНФ:

Б = (Р3Р4Р5Р9 V Р2Р5?бР10 V Р1Р4Р8Р9 V Р2Р4Р8Р9 V Р1Р4Р8Р10 ) . В устройстве существует кратная неисправность Р = Р1Р2Р8Р10 . 1) Выполняется подсчет весов каждой переменной, входящей в ДНФ:

Р1 Р2 Р3 Р4 Р5 Р6 Р8 Р9 Р10

W(F1) 2 2 1 4 2 1 3 3 2

2) Вероятность присутствия в схеме дефектов коррелируется с их весовыми коэффициентами. Следовательно, в целях получения единственного решения в виде терма ДНФ необходимо выбирать в качестве точек контроля переменные, имеющие минимальный вес, которые будут обращать термы в нулевые составляющие. Следуя сказанному, первая и вторая точки контроля есть (Р3, Р6), имеющие минимальный вес:

Р = (РзР4Р5Р9 VР2Р5РбРю VР1Р4Р'Р9 VР2Р4Р'Р9 VР^'Рю)|(Р3 =0) =

= Р2Р5РбРю V Р1Р4Р'Р9 V Р2Р4Р'Р9 V Р^Р'Рю.

Р = (Р2Р5Р6Р10 V Р1Р4Р8Р9 V Р2Р4Р8Р9 V Р1Р4Р8Р10 ^ =0) =

= Р1Р4Р'Р9 V Р2Р4Р'Р9 V Р^Р'Рю.

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

Р1 Р2 Р3 Р4 Р5 Р6 Р8 Р9 Р10

Ш(^) 2 1 - 3 - - 3 2 1

Здесь установлен факт наличия в схеме дефектов (Р4, Р8), которые уже не подлежат зондированию в соответствии с условием утверждения 1. Проверка дефекта Р2 дает следующий результат:

Р = (Р1Р4Р8Р9 V Р2Р4Р8Р9 V Р1Р4Р8Р10 )|(Р2 =0) = Р1Р4Р8Р9 V Р1Р4Р8Р10. Пересчет коэффициентов:

Р1 Р2 Р3 Р4 Р5 Р6 Р8 Р9 Р10

Ш(^) 2 - - 2 - - 2 1 1

предполагает наличие в схеме дефектов (Р1, Р4, Р8) и дополнительную проверку одной из линий (Р9, Р10):

Р = (Р1Р4Р8Р9 V Р1Р4Р8Р10 )(Е3 =0) = Р1Р4Р8Р10.

Таким образом, в результате выполнения четырех зондирований, представленных линиями (F3, F6, F2, F9), был получен точный диагноз - в схеме присутствует кратный дефект:

F = (F1,F4,F8,F10) .

6. Матричный метод восстановления работоспособности памяти

Память SoC в ближайшем будущем, через 5 лет, будет занимать более 90% объема кристалла [14], ориентированного на использование гибких программных средств. Актуальной представляется разработка не только моделей и методов быстрого и точного диагностирования, но и создание технологий для осуществления ремонта дефектных ячеек встроенными средствами сервисного обслуживания в реальном времени и на всех стадиях жизненного цикла изделия [15-21]. Это позволит существенно уменьшить число выводов чипа, повысить выход годной продукции, уменьшить время проектирования - time-to-market, сократить затраты на сервисное обслуживание, а также исключить внешние средства диагностирования и ремонта.

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

Классическая задача покрытия оперирует двумя одномерными векторами (X, F), когда оператор покрытия P позволяет найти минимальное подмножество компонентов X, покрывающих своей совокупной функциональностью все элементы из F: Xmin = P(X, F) ^ X n F = Xmin . Формулировка проблемы покрытия свойств одномерного

вектора F двумерной матрицей M = (C х R) нуждается в приведении обоих компонентов к единой метрике - такой системе координат, которая является общим знаменателем для обеих структур. Естественно, что такой метрикой для матрицы M = (C х R) и вектора F является одномерная структура. Поэтому в данном случае априори необходимо выполнить преобразование двумерной структуры (матрицы дефектов памяти) M = (C х R) к

одномерной путем выполнения конкатенации X = (C*R) в целях последующего решения классической задачи покрытия путем применения формальных действий, определяемых оператором Xmin = P(X, F).

Функция цели определяется как минимизация резервных компонентов матрицы памяти (S - spare), необходимых для восстановления ее работоспособности в процессе функционирования цифровой системы на кристалле путем синтеза дизъюнктивной нормальной формы покрытия дефектных элементов с последующим выбором минимального конъюнктивного

терма X1 (R*, C) е Y , удовлетворяющего ограничениям по числу резервных строк и столбцов smax, smax , входящих в состав логического произведения:

Z = mini t=1,n

Xt e Y = {X1,X2,...,Xt,....,Xn},Xt = (X| &Xt&,....,&Xt&,....,&Xt ),

1 ' ' ' ' ' v 1 2 ' ' i ' ' mt ''

где каждый результирующий конъюнктивный терм функции Y составлен из идентификаторов строк и столбцов Xt = (Rt,Ct), покрывающих все дефекты в матрице памяти. Лучшее решение есть терм минимальной длины по Квайну, в котором содержатся как строки, так и столбцы, покрывающие все дефекты. В частности, решение может не содержать строки (столбцы), когда для ремонта памяти достаточно только существующих столбцов (строк) из резерва матриицы памяти. Основные пункты модели процесса определения минималь-

X1

)

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

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

Г1 ^ Т © f = 1;

м = 1мч|'мч =\0 ^ Т © f = 0.

Здесь координата матрицы отмечается 1, если функция исправного поведения ячейки на тесте дает единичное значение, координата идентифицируется дефектной. После фиксации

всех дефектов выполняется построение таблицы покрытия дефектов Y = |У;]|,1 = 1,п;. = 1,т,

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

, , Г1 ^ С;(И;)п^ Ф 0;

Y = У-- Y■■ =1 -1

У Гч|,у] |о ^ C1(R1) пFJ =0.

Вместо компонентов двумерной метрики Си R используется одномерный вектор, сконкатенированный из двух последовательностей С и И, мощность которого равна n=p+q:

X = С*И = (С1,С2 ,...,СЬ...,Ср)*(Я1Д 2 ,...,И J =

= х° *хГ = (Х1,Х2,...,х1,...,Хр,Хр+1,Хр+2,...,Xp+J,...,Xp+q).

При этом между элементами исходных наборов (С, И) и результирующим вектором Х существует взаимно-однозначное соответствие, установленное в первом столбце матрицы Y. Следует заметить, что преобразование X = выполняется лишь для удобства рассмотрения и последующего построения дизъюнктивной нормальной формы в рамках единообразия переменных, формирующих булеву функцию. Если данную процедуру не выполнять, то функция будет определена на двух типах переменных, содержащих столбцы и строки матрицы памяти.

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

т т

У = Л (Ур] V Yq]){YpJ,Yq]}=l = Л (хр] Vх]

j=l " к j=l

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

3. Преобразование КНФ к ДНФ, дающей возможность увидеть все решения задачи покрытия. Для этого к конъюнктивной нормальной форме необходимо применить операцию логического умножения и правила минимизации (поглощения) для получения дизьюнктив-ной нормальной формы:

w . . . . .

У = V (к1х1 л к 2 X 2 л ... л к.Х1 л ... л кП Хп),к. = {0,1}.

.=1

Здесь представлена обобщенная запись ДНФ, где в пределе число термов равно w = 2П , п - число строк в обобщенном множестве (С, И) или количество переменных Х в матрице У, на множестве которых формируются все решения - покрытия дефектов резервными

компонентами; если к- при Х1 принимает значение нуля, то переменная Х; превращается в несущественную.

4. Выбор минимальных и точных решений задачи покрытия. Связан с определением конъюнкций минимальной длины в полученной ДНФ. Последующее преобразование к строкам и столбцам матрицы памяти на основе использования ранее введенного соответствия дает возможность записать минимальное покрытие или их совокупность в двумерной метрике строк и столбцов, отвечающие условиям (ограничениям) функции цели на количество резервных компонентов.

Далее предлагается иллюстрация модели процесса восстановления работоспособности матрицы памяти в части определения минимального числа резервных компонентов, покрывающих все дефекты. Матрица памяти с дефектными ячейками и резервом представлена на рис. 5 [16].

и и

\

п

п

11 10 9 8 7 6 5 4 3 2 1

1 2 3 45 6 7 89 10

Рис. 5. Матрица памяти с дефектными ячейками и резервом Матрица имеет ограничения на возможность диагностирования и восстановление работоспособности десяти дефектных ячеек, которые определяются двумя строками и пятью столбцами. В соответствии с пунктом 1 модели процесса определения минимального числа резервных компонентов, покрывающих все обнаруженные дефекты в матрице памяти,

строится таблица покрытия десяти дефектов F = ^ , Fз,F4,F5,F6,F7 ^^9^0) одиннадцатью строками, представленными в виде конкатенации подмножеств С и Я., находяшихся во взаимно-однозначном соответствии с вектором переменных Х:

С*Я = (С2,Сз,С5,С7,С8)*(Кз,К4,К5,Я7ДвДю) * * х = (Х1,Х2,Х3,Х4,Х5,Х6,Х7,Х8,Х9,Х10,х11).

Y =

XI/ Л F2 Fз F4 F5 F6 F7 F8 F9 ^0

С 2 ^ Х1 1 1

Сз ^ X2 1 1

С5 ^ Хз 1 1 1

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

С7 ^ Х4 1

С8 ^ Х5 1 1

Яз ^ Х6 1 1

Я4 ^ X7 1

Я5 ^ Х8 1

Я7 ^ Х9 1 1

Я8 ^ Х10 1

Я10 ^ хп 1 1 1

В соответствии с таблицей покрытия выполняется построение КНФ, термы которой записаны по единичным значениям столбцов:

У = (Х4 V Хб)(Х2 V Хб)(Хз V Ху )(Х1 V Х8)(Х5 V Х9) & & (Х3 VХ9)(Х2 VХю)(Х5 VХп)(Хз VХП)(Х1 VХп).

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

У = Х1Х2 Х3Х4Х5 V Х2 Х3Х4Х5Х8Х11V Х1Х2 Х4Х9Х3Х11V

V Х1 Хз Х2 Х4 Х9Х10 Х11V Х1Х7 Х10 Х11 Хб Х9 V Хб Х9 Х7 Х8Х10 Х11V

V Х2 Х4 Х9 Хз Х8Х11V Х1Х2 Х4 Х9 Х7 Х11V Х2 Х4 Х9 Х7 Х8Х11V

V Х3Х2 Х4Х9Х8Х10 Х11V Х1Х2 Х4Х9Х7 Х10 Х11V Х1Х2 Х3Х5Х6 V

V Х1 Хз Х5 Х6Х10 V Х2 Хз Х5 Хб Х8Х11V Хз Х5 Хб Х8Х10 Х11V

V Х1Х2 ХзХцХбХ9 V Х1 ХзХю Х11Х6Х9 V Х2 ХзХ8ХцХбХ9 V

V Х1Х2 Ху Х11Х6Х9 V Х2 Ху Х8Х11Х6Х9 V ХзХ8Х10 Х11Х6Х9.

Выбор термов минимальной длины, содержащих 5 переменных, формирует множество оптимальных решений, имеющих вид:

У = Х1Х2ХзХ4Х5 VХ1Х2ХзХ5Хб VХ1ХзХ5ХбХ10.

Трансформирование полученной функции к покрытию, содержащему обозначения переменных в виде строк и столбцов матрицы памяти, позволяет представить решения в следующей форме:

У = С2СзС5С7С8 V С2СзС5С8Из V С2С5С8ИзИ8.

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

на число резервных компонентов, определенных числами: (СГ < 5) & (К/ < 2). Другие решения, определенные в ДНФ, не представляют интереса, поскольку они имеют неоптимальное покрытие дефектных ячеек, определяемое числом переменных (строки + столбцы) в термах, более пяти. Последующая технология встроенного ремонта дефектных ячеек заключается в электрическом перепрограммировании дешифратора адреса столбца или строки матрицы памяти. Применительно к памяти, процедура записи или считывания информации при обращении к любой ячейке столбца 2 будет переадресована к резервному столбцу 11. Соответственно последнему полученному решению в виде первого терма ДНФ функции У будут заменены и другие дефектные столбцы на исправные из резерва памяти: з - на 12; 5 - на 1з; 7 - на 14; 8 - на 15.

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

Q = 2^1 + |С + х 2^1,

где 2 ^ - затраты, связанные с синтезом ДНФ путем логического перемножения исключительно двухкомпонентных дизъюнкций (координата дефекта определяется номером строки и столбца), число которых равно количеству дефектных ячеек; |С + х 2 ^ - верхняя граница вычислительных затрат, необходимых для минимизации полученной ДНФ на предельном множестве переменных, равном суммарному числу строк и столбцов |С + К .

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

о=2 + с+К х 2 |С+К| <2х ^ = 2 Р1 + 2 х х 2 = 2 Р1 х (1+2 х |Б|) .

Если вместо мощности множества дефектов записать их число, равное m, тогда предыдущее выражение представляется в более простой форме:

Q = 2m х (1 + 2 х m) = 2m(2m +1).

Согласно технологии встроенного сервисного обслуживания функциональных модулей цифровых систем на кристаллах, матричный метод восстановления работоспособности на основе решения задачи покрытия имплементируется в кристалл в качестве одного из компонентов I-IP (Infrastructure Intellectual Property), нацеленного на поддержание работоспособности матричной памяти SoC.

7. Аппаратная и программная имплементация I-IP

Инфраструктура сервисного обслуживания функциональности, представленной в SoC, включает шесть основных компонентов: 1) монитор наблюдения внутренних линий в процессе функционирования и тестирования; 2) модуль генерации проверяющих наборов; 3) блок диагностирования отказов и дефектов; 4) модуль восстановления работоспособности функциональных компонентов; 5) блок измерения параметров функционирования изделия; 6) блок обеспечения надежности и отказоустройчивости изделия. Далее рассматривается реализация первых трех блоков, ориентированных на решение следующих четырех задач: 1) снятие информации о состоянии внутренних линий с помощью boundary scan регистра; 2) моделирование исправного поведения и неисправностей для построения таблицы неисправностей в модуле генерации тестов; 3) диагностирование дефектов в цифровых компонентах на основе таблицы неисправностей; 4) восстановление работоспособности матрицы памяти цифровой системы на кристалле.

Все упомянутые компоненты сервисной инфраструктуры были имплементированы в аппаратную плату компании Aldec-Alatec, которая представляет собой аппаратный акселератор программных моделей, методов и алгоритмов. Иначе, все что можно сделать программно, выполняется в аппаратном исполнении на основе языков HDL, если необходимо получить более высокое (на 2-3 порядка) быстродействие. Процесс получения аппаратного решения достаточно технологичен и представлен структурой на рис. 6. Тестовые эксперименты и верификация программно-аппаратного комплекса для реализации методов и моделей сервисного обслуживания цифровых комбинационных и последовательностных схем дают хорошие результаты увеличения быстродействия по сравнению с программными алгоритмами тестирования, моделирования и диагностирования.

Active-HDL

г- Ввод модели

Компилятор VHDL —

Компилятор Verilog

Симулятор VHDL

з:

Симулятор Verilog £

DVM

Формирователь

данных для моделирования

Генератор скриптов

PCI

Программа на Си для вычисления времени моделирования, DLL i

Си-программа для связи с HES через PLI-интерфейс, DLL

*

PC таймер

Xilinx ISE

* Синтезатор схемы

Имплементатор

Генератор файла прошивки

Рис. 6. Структура средств имплементации I-IP Примеры сравнительного анализа быстродействия аппаратурной (I-IP) и программной (ATPG Sigetest) реализации модулей сервисного обслуживания функциональностей DSP

SoC, реализующих компоненты программно-аппаратного комплекса, ориентированного на реализацию стандарта JPEG 2000, показаны на рис. 7.

12:58 11:31 10:05 08:38 07:12 05:46 04:19 02:53 01:26 00:00

DSP 0,85 DSP 1,5

DSP 22

DSP 90

DSP 240 DSP 560

DSP 670

Рис. 7. Анализ быстродействия средств I-IP

Ускорение вычислительных процессов (моделирование, диагностирование) в зависимости от вентильной сложности проекта на кристалле может достигать одного - трех порядков. Выигрыш в быстродействии средств сервисного обслуживания более существенен для SoC большой размерности. Вычислительная сложность предложенного метода диагностирования экспоненциально зависит от числа неисправностей, одновременно присутствующих в цифровом изделии. Аппаратурные затраты на реализацию I-IP (генерация тестов, моделирование, диагностирование и ремонт) составляют не более 15% от общей функциональности F-IP, реализующей DSP SoC, которая имеет аппаратурные затраты около 1 000 000 эквивалентных вентилей. Большая часть кристалла, порядка 80% приходится на память для хранения программ и данных, что соответствует общей тенденции к увеличению процентного отношения память - логика при реализации функциональностей в SoC.

8. Заключение

Рассмотрены вопросы аппаратной имплементации и тестовой верификации моделей, методов и алгоритмов, реализующих функциональности (генерирование тестов и моделирование неисправностей, поиск дефектов и ремонт памяти) сервисного обслуживания F-IP в силиконовом кристалле FPGA.

Научная новизна. 1) Разработана структурная и автоматная модели инфраструктуры сервисного обслуживания функциональных блоков цифровой системы на кристалле, ориентированные на решение задач генерирования тестов, моделирования неисправностей, диагностирования дефектов и восстановления работоспособности матричной памяти, которые характеризуются решением задач встроенного тестирования без использования внешних средств в реальном масштабе времени, что позволяет существенно (на 15%) повысить выход годной продукции. 2) Предложен новый матричный метод диагностирования дефектов в SoC, который характеризуется использованием дизъюнктиной нормальной формы таблицы покрытия неисправностей, что дает возможность получать полные и минимальные сочетания кратных неисправностей на основе использования процедур мультизондиро-вания. 3) Разработан матричный метод оптимального восстановления работоспособности дефектов памяти, который отличается от аналогов применением технологии покрытия неисправностей двумерной топологией матрицы памяти, что позволяет получать минимальные и полные решения для ремонта в реальном масштабе времени, основанного на использовании резервных компонентов в виде строк и столбцов памяти.

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

выход годной продукции. 2) Метод ремонта памяти имплементирован в качестве компонента инфраструктуры сервисного обслуживания функциональных блоков цифровой системы на кристалле, что позволяет существенно (на 5-10%) повысить процент выхода годной продукции на рынке электронных технологий путем восстановления работоспособности дефектных кристаллов памяти в процессе производства и эксплуатации, а также увеличить длительность жизненного цикла матриц памяти путем восстановления их работоспособности в реальном масштабе времени. 3) Дальнейшие исследования ориентированы на разработку аппаратного модуля BIRA тестирования и восстановления работоспособности памяти при возникновении дефектов на стадии производства и эксплуатации SoC. Список литературы: 1. IEEE 1500 Web Site. http://grouper.ieee.org/groups/1500/. 2. IEEE P1500/D11. January 2005. Draft Standard Testability Method for Embedded Core-based Integrated Circuits. New York. 2005. 138p. 3. Zorian Yervant. What is Infrastructure IP? // IEEE Design & Test of Computers. May-June

2002. P. 5-7. 4. Zorian Yervant. Advances in Infrastructure IP // IEEE Design & Test of Computers. May-June

2003. 49 p. 5. Zorian Yervant and Shoukourian Samvel. Embedded-Memory Test and Repair Infrastructure IP for SoC Yield // IEEE Design & Test of Computers. May-June 2003. P. 58-68. 6. Zorian Yervant, Gizopoulos Dmytris. Gest editors' introduction: Design for Yield and reliability // IEEE Design & Test of Computers.-May-June 2004. P. 177-182. 7. Abramovici M., Breuer M.A., Friedman A.D. Digital systems testing and testable design // Computer Science Press, 1998. 652 p. 8. Bergeron Janick. Writing testbenches: functional verification of HDL models. - Boston: Kluwer Academic Publishers, 2001. 354 c. 9. Хаханов В.И., Хаханова И.В. VHDL+Verilog = синтез за минуты. Харьков: ХНУРЭ, 2006. 264 с. 10.ХахановВ.И., ХахановаИ.В. Проектирование цифровых систем с использованием языка VHDL. Харьков: ХНУРЭ, 2003. 492 с. 11. OpenVera Language Reference Manual: Assertions. Version 1.4 // Synopsys Inc., 2004. 136 p. 12. Pasricha S. Transaction Level Modeling of SoC with SystemC 2.0 // Proc. Synopsys User Group Conference (SNUG).-San Jose: Synopsys Inc., 2002. P. 35-39. 13. Charles E. Stroud. A Designers Guide to Built-In Self-Test. -Kluwer Academic Publishers, 2002. 319 p. 14. Hamdioui S., Gaydadjiev G. N., A. J. van de Goor. The State-of-the-art and Future Trends in Testing Embedded Memories // Records IEEE International Workshop on Memory Technology, Design, and Testing, San Jose, CA, August 2004. 2004. P. 54-59. 15. Shoukourian S., Vardanian V., Zorian Y. SoC Yield Optimization via an Embedded-Memory Test and Repair Infrastructure / / IEEE Design and Test of Computers. 2004. P.200-207. 16. Memory Repair Primer - A guide to understanding embedded memory Repair options and issues, Logic Vision. 2007. 17. Youngs L., Paramanandam S. Mapping and Repairing Embedded-Memory Defects // IEEE Design and Test of Computers.- 1997. P. 18-24. 18. Zorian Y., Shoukourian S. Embedded-Memory Test and Repair: Infrastructure IP for SoC Yield // IEEE Design and Test of Computers. 2003. P.58-66. 19. OhlerPh., HellebrandS., WunderlichH.-J. An Integrated Built-In Test and Repair Approach for Memories with 2D Redundancy // 12th IEEE European Test Symposium (ETS'07). 2007. P. 91-96. 20. ChoiM, Park N, LombardiF, Kim Y.B., Piuri V. Optimal Spare Utilization in Repairable and Reliable Memory Cores // 2003 International Workshop on Memory Technology, Design and Testing (MTDT'03). 2003. P. 64-71. 21. Aitken Robert. A Modular Wrapper Enabling High Speed BIST and Repair for Small Memories // Proceedings of IEEE ITC. April 2004. P. 997-1005.

Поступила в редколлегию 29.08.2007

Парфентий Александр Николаевич, аспирант кафедры автоматизации проектирования вычислительной техники. Научные интересы: автоматизация моделирования, верификации и тестирования систем на кристаллах. Адрес: Украина, 61166, Харьков, пр. Ленина, 14, тел. 70-21-326.

Хаханов Владимир Иванович, д-р техн. наук, профессор, декан факультета компьютерной инженерии и управления ХНУРЭ. Научные интересы: проектирование и диагностика цифровых систем и сетей. Адрес: Украина, 61166, Харьков, пр. Ленина,14, тел. 70-21421, 70-21-326.

Литвинова Евгения Ивановна, канд. техн. наук, доцент кафедры технологии и автоматизации производства РЭС и ЭВС ХНУРЭ. Научные интересы: алгоритмизация задач автоматизированного проектирования электронных вычислительных средств, проектирование автоматизированных информационных систем. Адрес: Украина, 61166, Харьков, пр. Ленина, 14, тел. 70-21-486.

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