Инфраструктура диагностического обслуживания SoC | Вестник Томского государственного университета. Управление, вычислительная техника и информатика. 2008. № 4 (5).

Инфраструктура диагностического обслуживания SoC

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

Infrastructure IP for SoC diagnosis and repair service .pdf 1. Инфраструктура I-IPВычислительная и аппаратная сложность современных цифровых систем на кристаллах (System-on-Chip - SoC) характеризуется миллионами эквивалентных вентилей и требует создания и внедрения новых высокоуровневых технологий проектирования - Electronic System Level (ESL) Design, моделинга - Transaction Level Modeling (TLM) и встроенного сервисного обслуживания - Infrastructure Intellectual Property (I-IP). Это означает, что поиск быстродействующих методов и средств [1 - 17] приводит всех исследователей к необходимости повышения уровня абстракции моделей создаваемых функциональностей - Functional Intellectual Property (F-IP), встраиваемых в кристалл. Рынок программных продуктов EDA уже предлагает инструменты для автоматизации процессов моделинга и верификации устройств системного уровня, начиная с компиляторов HDL-языков (C++, SystemC, SystemVerilog, UML, SDL) [12] и заканчивая графическими оболочками (Simulink, LabView, Xilinx EDK). Данные средства позволяют создавать проекты из существующих библиотечных компонентов путем использования ESL-мэппинга и создания TLM-интерфейсов [13, 14]. Рыночная привлекательность имплементации цифровой системы в кристалл FPGA определяется применением сравнительно дешевых чипов вместо универсальных процессоров, малой потребляемой мощностью, габаритными размерами, качественным и надежным выполнением основных функций, благодаря встроенной I-IP-инфраструктуре, что является актуальным в век мобильных вычислительных устройств.Проблема диагностирования и ремонта памяти связана с тенденцией на постоянное уменьшение площади кристалла, отводимой для оригинальной и стандартизованной логики с одновременным увеличением встроенной памяти. Как показано на рис. 1, увеличение удельного веса памяти на кристалле приводит к ее полномудоминированию для хранения данных и программ, которое к 2014 году достигнет 94% [2]. Это обеспечит не только высокое быстродействие выполнения функциональности, но и гибкость, свойственную программному продукту в части коррекции ошибок проектирования. Особенностью элементов памяти является тот факт, что в процессе их изготовления и эксплуатации отдельные ячейки под воздействием неисправностей могут выходить из состояния работоспособности. Данное обстоятельство не всегда приводит матрицу памяти к критическому состоянию, когда восстановление работоспособности невозможно. Поэтому далее рассматривается такое техническое состояние памяти, когда суммарное количество дефектных ячеек не превышает резервных возможностей изделия, предназначенных для ремонта.Цель исследования - разработка алгебро-логического метода встроенного сервисного обслуживания функциональности цифровой системы на кристалле, предназначенного для диагностирования компонентов SoC и ремонта встроенной матричной памяти в реальном масштабе времени.Задачи: 1) Анализ состояния рынка технологий сервисного обслуживания SoC; 2) Разработка алгебро-логического (AL) метода встроенного сервисного обслуживания на основе матрицы покрытия; 3) Применение AL-метода для диагностирования компонентов SoC; 4) Адаптация AL-метода для ремонта встроенной памяти; 5) Практические результаты исследования.Современные технологии проектирования цифровых систем на кристаллах предлагают, наряду с созданием функциональных блоков F-IP, разработку сервисных модулей I-IP, ориентированных на комплексное решение проблемы качества проекта и повышение выхода годной продукции (Yield) в процессе производства, которое определяется внедрением в кристалл следующих сервисов [13]:Наблюдение за состоянием внутренних и выходных линий в процессе функционирования, верификации и тестирования штатных блоков на основе использования стандарта граничного сканирования IEEE 1500 [15, 17]; Тестирование функциональных модулей путем подачи проверяющих наборов от различных тестовых генераторов, ориентированных на проверку дефектов или исправного поведения; Диагностирование отказов и дефектов путем анализа информации, полученной на стадии тестирования и использования специальных методов встроенного поиска неисправностей на основе стандарта IEEE 1500 [15, 17]; Восстановление работоспособности функциональных модулей и памяти после фиксации отрицательного результата тестирования и определения места и вида дефекта при выполнении фазы диагностирования; Измерение основных характеристик и параметров функционирования изделия на основе встроенных средств, позволяющих производить временные и вольт-амперные измерения; Надежность и отказоустойчивость функционирования изделия в процессе эксплуатации, которая достигается диверсификацией функциональных блоков, их дублированием и восстановлением работоспособности SoC в реальном масштабе времени. На рис. 2 представлена усеченная структура [6, 8, 11, 13], ориентированная на выполнение задач: 1) тестирования функциональностей на основе генерируемых входных последовательностей (Automated Test Pattern Generator) и анализа выходных реакций; 2) моделирования (Fault Simulator) неисправностей [9] в целях обеспечения диагностирования и ремонта на основе таблицы неисправностей (Fault Detection Table); 3) диагностирования дефектов с заданной глубиной путем использования мультизонда стандарта IEEE 1500; 4) встроенного ремонта матричной памяти на основе использования запасных компонентов (spare) [6 - 8]. Первые два пункта далее рассматриваются концептуально, а вторые два - формально составляют сущность предложенного исследования.Infrastucture IPFault SimulatorFault Detection TableF-IP: Functional Intellectual PropertytAnalyser (signature)DiagnosisSoCIEEE 1500 StandardРис. 2. Инфраструктура сервисов SoC DSP1. Модуль синтеза тестов (см. рис.1) для проверки функциональностей и одиночных неисправностей состоит из набора генераторов входных последовательностей, которые обеспечивают создание следующих тестов [1, 2]: PRTG - псевдослучайный генератор входных стимулов с равномерным законом распределения нулевых и единичных сигналов по входным переменным; SATG - тестовый генератор шестнадцатеричных кодов на основе сигнатурного анализа; SPTG - алгоритмический генератор тестовых векторов, активизирующих одномерные логические пути, ориентированные на проверку заданных одиночных неисправностей; ADTG - тестовый генератор, предназначенный для проверки сумматорных схем АЛУ; BSTG - тестовый генератор для шинных структур приема и передачи данных; METG - генератор тестов, ориентированный на проверку матричной памяти;DFTG - синтезатор тестов для автоматов, заданных в виде граф-схем алгоритмов; RCTG - тестовый генератор для последовательностных счетно-регистровых структур и триггерных схем.Модуль-генератор анализирует структурно-функциональную модель блока, подлежащего тестированию, и назначает подмножество таких синтезаторов, которые обеспечивают заданное качество покрытия дефектов (Fc) и функциональных режимов (Pc):min min V \j * i / - ± mm ' V \j i / - ± mm '(1)T _ tTPR TSA TSP TAD TBS TME TDF TRC xОбобщенная структура синтеза Testbench [1], представленная на рис. 3, включает также генератор HDL-кода, который предназначен для тестирования и верификации функциональностей на стадии разработки проекта.ATPGGiG2G3G4G5G7G8Gi60Рис. 3. Структура процесса синтеза Testbench для F-IPКоличество тестовых генераторов на стадии проектирования SoC может быть существенно большим, чем то подмножество, которое далее встраивается в кристалл. Поэтому на стадии моделирования и верификации выполняется анализ покрывающих свойств каждого тест-генератора в целях поиска их минимальной совокупной конфигурации, которая удовлетворяет выражению (1). Важно отметить, что в ближайшие 5 лет идеология синтеза тестов для цифровых систем на кристаллах будет заимствовать лучшие традиции, идущие от ESL-, TLM-проектиро-вания [12, 16].Это означает: 1) Использование библиотек тестов (Testbench) ведущих компаний планеты для тестирования и верификации стандартизованных функциональ-ностей, обозначенных в качестве F-IP. 2) Применение стандартных решений сервисного обслуживания I-IP для встроенного тестирования компонентов системы на кристалле. 3) Создание собственных библиотек тестов для вновь разрабатываемых функциональностей. 4) Внедрение новой технологии синтеза тестов для цифровой системы, основанной на дискретном мэппинге [16] (рис. 4) покрытия функциональностей и дефектов исходной спецификации с помощью минимальной совокупности Testbench, из библиотеки тестов. 5) Применение встроенных средств тестопригодности, таких как IEEE boundary scan - средства граничного сканирования, и шести компонентов I-IP для повышения технологичности процедур синтеза тестов.Mapping - Complete Test of F-IPРис. 4. Mapping модели синтеза тестов для F-IP2. Модуль анализа неисправностей. Использует дедуктивный алгоритм, который ориентирован на проверку одиночных дефектов, генерируемых на основе аналитического или табличного описаний функциональностей SoC. Это означает, что дедуктивное моделирование может обрабатывать проекты, представленные как на вентильном, так и на любом другом, более высоком уровне абстракции (регистровом, системном). Основная идея метода заключается в создании дедуктивной модели функциональности на основе использования известного выражения [9]:f = Л№ фт),(х2 фт2),...,(Xj фTj),...,(хщ фт,)]©t, (2)где дедуктивная функция f на тест-векторе t есть модифицированное описание исправного поведения, позволяющее вычислять списки входных неисправностей, транспортируемые на выход схемы под воздействием входных сигналов. На примере функции Xor демонстрируется синтез дедуктивной функции по карте Карно:(3)Переменные xy - булевы, а сигналы ab - (регистровые) для записи списков дефектов:L = f (x, y, a, b) = ab v ab. (4)Аппаратная реализация дедуктивной функции, представленной формулой (4), изображена на рис. 5.a I b &1L4ПЛРис. 5. Дедуктивный примитив функции XorСхемный примитив является универсальным по отношению к различным тестовым последовательностям. Стратегия, предложенная в работе относительно синтеза моделей, основывается на создании библиотеки дедуктивных элементов, покрывающих все стандартизованные конструктивы функциональностей, котоПредложенный подход к дедуктивному анализу предполагает создание на кристалле еще одной встроенной модели, которая должна обеспечивать практически все шесть сервисов, предусмотренных стандартом инфраструктуры I-IP [13]. Платой за качество диагностического и тестового обслуживания является достаточно высокая стоимость дополнительных аппаратурных затрат, которые превышают штатную функциональность в 10 - 15 раз. При этом выигрыш в быстродействии по сравнению с внешней программной реализацией дедуктивного анализа составляет 2 - 3 порядка, что практически обеспечивает сервисное обслуживание в реальном масштабе времени. Другое, более экономичное решение проблемы связано с интерактивной модификацией схемной структуры дедуктивной модели для каждого тест-вектора. Для этого используется внутренняя память кристалла, где формируется модель по правилам, определенным в (2). Мэппинг (см. рис. 6) дает дедуктивную функцию, где аппаратные затраты равны стоимости функциональности F-IP.2. Алгебро-логический метод диагностирования неисправностейОсновная роль отводится технологии граничного сканирования [15,17], которая в настоящее время, внедренная в кристалл, призвана облегчать решение практически всех задач сервисного обслуживания функциональных модулей системы на кристалле. Контроллер доступа к внутренним линиям и портам регистра граничного сканирования использует ячейку или разряд регистра. В совокупности число таких ячеек, обеспечивающих в данном случае мониторинг, должно быть равно количеству проблемных наблюдаемых линий проекта, которые необходимы для точного установления диагноза. Основанная на регистре граничного сканирования процедура диагностирования использует также информацию из таблицы неисправностей (ТН), которая представляет собой множество дефектов, покрываемых тестовыми наборами. Используя информацию о результате проведения диагностического эксперимента, которая представлена в виде вектора экспериментальной проверки (ВЭП) V = (VbV2,..., V,-,...,V„), а также таблицу [9] неисправностей F, выполняется процедура установления диагноза по выражению, записанному в форме произведения дизъюнкций всех дефектов [10], которые могут дать экспериментальную реакцию в виде v, определенном единичными и нулевыми значениями:n j=1,mF = Л ( vWj -1 ум*=1(5)Полученная из таблицы неисправностей конъюнктивная нормальная форма трансформируется к ДНФ с помощью эквивалентных преобразований (логическое умножение, минимизация и поглощение) [10, 11]. В результате получается булева функция, где термы - логические произведения - представляют полное множество решений в виде сочетания дефектов (дающих по выходам SoC или ее компоненту вектор экспериментальной проверки V):i=l,n j=1,mЛ ( v Fj ) =VV=1 vm„=1 j2m mfavab=b 1 = kjFj ), kj = {0,1}.\_ava=a J i 1 j 1(6)Представленная процедура в общем случае диагностирует некоторое подмножество дефектов, которое в дальнейшем нуждается в уточнении путем применения дополнительного зондирования внутренних точек с помощью регистра граничного сканирования. Пример поиска дефектов рассматривается на основе следующей ниже таблицы неисправностей (столбцы - дефекты, строки - тестовые последовательности), которая является продуктом дедуктивного анализа дефектов и вектора экспериментальной проверки [18]:Количество единиц в векторе экспериментальной проверки V формирует число дизъюнктивных термов КНФ (6). Каждый терм - построчная запись дефектов (через логическую операцию ИЛИ), оказывающих влияние на выходы функциональности. Уже само представление таблицы в виде аналитической записи - конъюнктивной нормальной формы - дает потенциальную возможность существенно сократить объем диагностической информации для поиска дефектов. Тем более, последующее преобразование КНФ к ДНФ на основе тождеств алгебры логики позволяет существенно уменьшить булеву функцию, что иллюстрируется следующим результатом:F = (F V F4 )(F2 V F5 )(F v F4 v F5 )(F v F3 )(F2 v F5 v F6 ) = = (Fi v F4 )(F2 v F5 )(F3 v F4 v F5)(Fl v F3) == (FiF2 v F2F4 v F1F5 v F4F5 )(F1F3 v F1F4 v F1F5 v F3F3 v F3p, v F3F5 ) = (FiF2 v F2F4 v FiF5 v F4F5 ) (FiF4 v FiF5 v F3 ) = (FiF2FiF4 v F2F4FiF4 v FiF5FiF4 v F4F5FiF4 ) (F!F2F!F5 v F2F4F!F5 v F!F5v F4F5F!F5 )(F1F2 F3 v F2 F4 F3 v F1F5 F3 v F4 F5 F3 ) == Fl F2 F3 v F2 F3 F4vF3F4F545'FF5 =F1F5 v F1F2 F3 v F2 F3 F4 vF3 F4 F5 v F1F2 F4 Для уменьшения количества вычислений при выполнении логического умножения в первой строке (7) исходную запись можно упростить согласно законам булевой алгебры:(F2 V F5) л (F2 v F5 v F6) = (F2 v F5).F = F1F5 v F^2F3 v F2F3F4 v F3F4F5 v F^2F4 предос-Полученный результаттавляет все возможные решения - покрытия дефектами строк таблицы неисправностей в функциональности SoC, при условии, что вектор экспериментальной проверки имеет все единичные координаты V=(11111). Принимая во внимание фактическое значение вектора экспериментальной проверки, равное V=(11011), выполняется моделирование функции F путем подстановки нулевых значений дефектов, которые теоретически проверяются, но дают в векторе V нулевую координату. Такими являются дефекты: F = F3 v F4 v F5 Окончательный результат определяется следующей функцией:F = FlF5 VFlF2F, vF2F3F4 vF3F4F5 vFlF2F4 LVf4 VF5 =00.Любое сочетание - конъюнктивный терм ДНФ, приведенный в решенииF = F1F5 v F1F2 F3 V F2 F3 F4 V F3 F4 F5 V F1F2 F4 ,покрывает все строки таблицы неисправностей по определению, поэтому введение любой нулевой строки обязательно обращает в ноль функцию F. Поэтому корректное решение, соответствующее вектору экспериментальной проверки, должно изначально учитывать нулевые координаты вектора V. С учетом сказанного из выражения (7) на стадии записи КНФ необходимо исключить терм(F, v F4 v F5 ) :F = (F v F4 )(F2 v F5 )(Fl v F3 )(F2 v F5 v F6 ) = = (F v F4 )(F2 v F5 )(Ft v F3) == (F1F2 v F2 F4 v F1F5 v F4 F5 )(F1 v F3 ) =: FiF2 v FiF2F4 v FiF5 v FiF4F5 v FiF2F3 vF2F3F4'Fl F3 F5 v F3 F4 F5 == F1F2 v F1F5 v F2 F3 F4 v F3 F4 F5 Результат представляет все возможные решения, которые приводят к реакции изделия, определенного заданным вектором экспериментальной проверки:F ■■FlF2 V F!F5 V F2F3F,'■F3 F4 F5.Дополнительное моделирование последней булевой функции дает окончательное решение в виде сочетания двух дефектов:: F!F2 v F!F5 v F2F3F4 v F3F4F5 f3 v f4 v f5 =0Алгебро-логический метод может быть формально рассмотрен на примере следующей таблицы неисправностей Mj и представлен в виде пяти пунктов алгоритма:Определение всех строк, соответствующих нулевым значениям вектора экспериментальной проверки в целях обнуления всех единичных координат найденных строк. В данном случае - это одна строка T5. Нахождение всех столбцов, которые имеют нулевые значения координат строк с нулевым состоянием ВЭП. Обнуление единичных значений найденных столбцов. В данном случае: F2, F5, F6. Удаление из таблицы неисправностей строк и столбцов, имеющих только нулевые значения координат (найденные в пунктах 1 и 2). %FjF3F4Vj111Т311141114. Построение конъюнктивной нормальной формы (КНФ) по единичным значениям ВЭП:F = (F V F4 ) л (F V F ) л (F V F3) == (FjF3 V F3 F4 v FjF4 v F4 F4 ) л (F v F3) == F1F1F3 vv F3 F3 F4 v 'F1F1Fl-F3F4F4=F1F3F3V=F1F3VF1F3F4VF1F4VF3F4VF1F3F4VF3F4= = F1F3 v F1F4 v F3F4.5. Преобразование КНФ к ДНФ с последующей минимизацией функции. В данном случае это приводит к получению искомого результата в виде сочетания неисправностей:F = FXF3 V F1F4 v F3F4.Предложенный алгоритм ориентирован на предварительный анализ таблицы неисправностей в целях уменьшения объема и последующих вычислений, связанных с построением ДНФ, которая формирует все решения по установлению диагноза функциональностей SoC. Дальнейшее уточнение диагноза возможно только с применением мультизонда на основе регистра граничного сканирования данных [15].3. Алгебро-логическая модель диагностирования F-IPСтруктура модулей сервисного обслуживания I-IP для диагностирования дефектов в функциональных блоках F-IP представлена на рис. 7. Компаратор (Ф) анализирует выходные реакции модели и реального устройства на входные тестовые векторы, поступающие от генератора тестов. Несовпадения модельных и экспериментальных реакций на тесте формируют единичные координаты вектора экспериментальной проверки (ВЭП) V(T) = (Vl,V2,--,Vi,...,Vn) для каждого входного набора. Взаимодействие ВЭП с таблицей неисправностей (T = [Ttr ], t = 1, p; r = 1, q + n размерностью p x n , p - число тест-векторов, n - количество разрядов boundary scan регистра) и схемной структурой дают множество линий и элементов, которые подозреваются дефектными на текущем тест-векторе.Для организации вычислительных процессов, приводящих к точному диагнозу, чрезвычайно важна метрика или форма представления исходной информации.ATPG±£1±MUSDUTо)с о.е)с >(Я.о ОBoundary Scan RegisterScoreboardDiagnosis GoodРис. 7. Модель процесса диагностирования F-IPИнтересное решение задачи диагностирования может быть получено путем применения булевой алгебры и таблицы неисправностей m, представляющей собой декартово произведение теста Т на множество заданных дефектов F, в совокупности с вектором экспериментальной проверки v, где выполнение задачи покрытия дает максимально точный результат в виде ДНФ, а каждый терм есть возможный вариант наличия в устройстве дефектов. Итак, модель процесса диагностирования представлена компонентами:A =< T,F,M,V >, Т = (Ti,T2 ,-,Ti ,--;Тп);Ii - (9)m = |mj.|, i = 1, n; j = 1, m; v 'v = (ViV ,,v ,~,Vn);{v,t,mj,Fj} e {0,l}Решение задачи диагностирования сводится к анализу таблицы неисправностей, полученной в результате моделирования дефектов, путем записи логического произведения дизъюнкций (КНФ), записанных по единичным значениям строк таблицы неисправностей (5). Далее КНФ трансформируется к ДНФ (6) с помощью эквивалентных преобразований. В результате получается булева функция, где термы - логические произведения - есть полное множество решений, представляющее собой сочетания дефектов, дающие по выходам функциональности вектор экспериментальной проверки, полученный в результате выполнения диагностического эксперимента.Следующая матрица M = T х F является примером алгебро-логического анализа дефектов на основе таблицы неисправностей в функциональных блоках системы на кристалле, число которых равно 10. Тест, длиной 11 входных наборов, проверяет все введенные в таблицу неисправности. Вектор экспериментальной проверки цифрового устройства V=(10001001001), полученный при выполнении диагностического эксперимента, фиксирует несовпадения выходов устройства по сравнению с моделью (золотым эталоном) на четырех (1, 5, 8 и 11) тестовых наборах.В соответствии с числом единиц в векторе экспериментальной проверки V формируется количество дизъюнктивных термов КНФ, равное 4. Каждый терм есть построчная запись дефектов через логическую операцию ИЛИ, оказывающих влияние на искажение выходных сигналов функциональности. Далее осуществляется преобразование КНФ к ДНФ на основе правил алгебры логики, что дает возможность получить результат:F = (F4 V Fw )(F5 v F8 XF4 )(F8 v F9 v Fw ) == (F5 v F8 )(F4 )(F8 v F9 v F10 ) = (F4 F5 v F4 F8 ) (F8 v F9 v F10 ) = (F4 F5 F8 v F4 F5 F9 v F4 F5 F10 v'F4 F8 F9 v F4 F8 F10 ) = (F4 F5 F8 v F4 F5 F9 v ' F4 F8 v F4 F8 F9 v F4 F8 F10 ) = = (F4F5 F9 v F4F5 F10 v F4F8 ).Полученный результатF = (F4 F5 F9 v F4 F5 F10 v F4 F8) (11)содержит во всех термах дефект F4, означающий его обязательное присутствие в функциональности SoC. Если принять гипотезу о существовании одиночного или минимального числа кратных дефектов, то предпочтительным является решение, определяемое третьим термом F = F4F8 - в схеме существует два дефекта, которые формируют на выходах вектор экспериментальной проверки, равный V = (10001001001).4. Моделирование для уточнения диагноза F-IPПолученная дизъюнктивная форма (6) является основной моделью для поиска дефектов. Она не всегда однозначно определяет дефект функциональности, поэтому нуждается в процедурах, уточняющих диагноз. Прежде всего, следует заметить, что все строки M = T х F, которые отмечены нулевыми значениями вектора экспериментальной проверки, можно объединить в дизъюнкцию неисправностей (6), которые не могут присутствовать в схеме:Получение формы (5) из рассматриваемой таблицы неисправностей дает возможность определить все дефекты, которые не могут присутствовать в схеме:F = (F2 v F7 ) v (F3 v F6 v F9 ) v (F1) v (F1 v F2 ) vV(F3 ) v (F5 v F6 ) v (F7 ) = (12)= (F2 v F7 v F3 v F6 v F9 v F1 v F5) = = (F1 v F2 v F3 v F5 v F6 v F7 v F9).Анализ выражений, представленных формулами (11) и (12) приводит к интересным выводам: 1) Дефекты, которые не могут присутствовать в схеме, определяются в термах ДНФ, полученных по нулевым строкам относительно вектора экспериментальной проверки; 2) Дефекты, которые имеются в ДНФ (14), должны быть удалены из функции (12); 3) Исключение в данном случае дефекта F5 приводит к разрушению двух термов F4F5F9 v F4F5F10, поскольку без неисправности F5каждый из них в отдельности не сможет сформировать заданный вектор экспериментальной проверки; 4) Таким образом, делается единственный вывод - в схеме присутствует двукратная ошибка, определяемая термом F = (F4F8); 5) Вычислительная сложность получения точного и полного множества решений определяется выражением Q = 2m+1 (2m +1), m - число дефектов.Обозначив отсутствие конкретной неисправности Ft = 0, можно сформировать входные условия для ДНФ (11) в целях последующей эмуляции (моделирования) функции при следующих начальных условиях:(Fi,F2,F3,Fs,Fe,F,F) = (0000000).Тогда результат моделирования функции F = (F4F5F9 v F4F5F10 v F4F8) становится равным F = (F4 0F9 v F4 0F10 v F4 F8) = F4F8.В самом деле, если неисправности (Fx,F2,F3,F5,F6,F7,F9), теоретически проверяемые на тестовых наборах, дают отрицательный результат - все они не искажают состояния выходов, то значит - они отсутствуют в схеме. Обоснование данного факта подтверждается следующими доказательствами.Лемма 1. Полное множество всех возможных сочетаний дефектов, проверяемых тестом T, определяется как ДНФ, полученная преобразованием конъюнктивной формыn j=1,m 2m mF = Л ( V Fj ) = V(A kjFj ),каждый терм которой записан по единичным значениям строки таблицы неисправностей [18] M = T x F, имеющей состояние ВЭП Vt = 1.Исходная информация, записанная в соответствии с единичными значениями ВЭП, представляет собой полную модель неисправного поведения реального объекта, которая формирует вектор экспериментальной проверки с фиксированным числом единиц (строк таблицы неисправностей), равным k. Каждая строка формирует дизъюнкцию дефектов, записанную по ИЛИ. Число таких дизъюнкций равно k, которые логически перемножаются, образуя полное и непротиворечивое множество событий - дефектов, одновременно присутствующих в схеме. Путем перемножения элементарных дизъюнкций с последующим упрощением выражений, используя аксиомы (a v ab = b; a v a = a), получается ДНФ, которая создаетвсе возможные сочетания, записанные в виде элементарных конъюнкций. Ввиду тождественности выполненных преобразований полученная функция по логике эквивалентна исходной КНФ, а по сути есть технологичная форма записи всех решений - сочетаний дефектов, имеющих место быть в схеме.Лемма 2. Все проверяемые в строках таблицы неисправностей M = T x F дефекты, отмеченные нулевыми значениями вектора экспериментальной проверки V' = 0, в реальном объекте отсутствуют.В самом деле, таблица неисправностей M =TxF имеет два типа строк: единичные и нулевые относительно значения вектора экспериментальной проверки:Mр (0110) -- Vp = 1;Mq (0101) - Vq = 0.Строка p выявляет наличие в схеме двух дефектов F2 v F3. Строка q свидетельствует о теоретической проверке неисправностей F2 v F4, если бы вектор был равен 1: Vq = 1. Но фактически сигнал Vq = 0 идентифицирует несущественность дефектов F2v F4 для искажения выходов схемы. Или данные дефекты отсутствуют в тестируемом изделии. Подставив в функцию F = F2 v F3 нулевые сигналы для F2 v F4, получаем результат: F = F2 v F3| Fj = F4 =0 = F3. Аналогично, все дефекты, которые определены в строках, имеющих нулевое значение ВЭП, будут отсутствовать в схеме. Но если это так, то их следует исключить из ДНФ, записанной по единичным значениям ВЭП. Следовательно, имея термы ДНФ и множество дефектов, которые не могут существовать в схеме для заданного ВЭП, можно выполнить процедуру подстановки нулевых сигналов в переменные элементарных конъюнкций функции ДНФ. Но с учетом того факта, что 0 л a л b л c... = 0 , результат подстановки и последующих преобразований в целях получения минимальной функции будет иметь только те термы, которые не имеют переменных - дефектов с нулевым значением сигналов. Это означает, что из ДНФ будут исключены все дефекты, относящиеся к нулевым, относительно ВЭП, строкам таблицы неисправностей.Теорема 1. Минимальное множество всех возможных сочетаний дефектов, определяемых по таблице неисправностей M =TxF, вычисляется путем моделирования ДНФ на множестве начальных условий2m mопределенных нулевыми значениями всех проверяемых дефектов, соответствующих нулевым сигналам вектора экспериментальной проверки.В соответствии с леммой 1 полное множество всех возможных сочетаний дефектов, проверяемых тестом, определяется в виде ДНФ2m mF = V(A kj Fj),i=i j=i j jкоторая формирует все решения, удовлетворяющие единичным значениям вектора экспериментальной проверки Vq = 1. Оно может быть уменьшено за счет исключения тех дефектов, которые теоретически проверяются тестом, но фактически, на тестовых наборах они не искажают состояний выходов, что означает их отсутствие в реальной схеме. Следовательно, их можно исключить из термов ДНФ, образующих полное множество всех возможных сочетаний. Механизм такого исключения, согласно лемме 2, заключается в подстановке нулевых значений переменных в термы ДНФ с последующим моделированием (упрощением) функции. Если терм имеет 0-компонент некоторой переменной Fh то, согласно алгебре логики, весь терм обращается в 0, что означает его исключение из ДНФ. Таким образом, в результате минимизации на основе учета условий леммы 2 остается минимальная ДНФ, содержащая наименьшее число возможных сочетаний дефектов (одиночных и кратных), которое невозможно сократить без использования дополнительной диагностической информации, поступающей от мультизонда на основе boundary scan-регистра.Таким образом, предложенный алгебро-логический метод диагностирования использует булево исчисление в качестве базового аппарата для решения задачи покрытия путем получения дизъюнктивной формы, которая далее минимизируется путем исключения термов, имеющих переменные дефектов, относящиеся к строкам, с нулевыми значениями ВЭП. Для незначительного числа дефектов в цифровой системе на кристалле вычислительная сложность позволяет осуществлять поиск неисправностей в реальном масштабе времени.5. Условное диагностирование F-IP на основе ДНФВ целях существенного уменьшения области подозреваемых дефектов на практике используется метод половинного деления [10], основанный на использовании интерактивной процедуры зондирования внутренних точек контроля, которые обеспечивают полученную ДНФ дефектов дополнительной информацией для уменьшения множества дефектов. В данном случае таким зондом может быть регистр граничного сканирования, который способен определить состояние внутренней линии в целях исключения дефектов или их подтверждения. Стратегия выбора контрольной точки ориентирована на примерно половинное деление подозреваемого множества - исключение на каждом шаге половины дефектов путем моделирования - упрощения исходной ДНФ. Суть метода половинного деления на дизъюнктивной нормальной форме, представляющей все возможные сочетания дефектов в схеме, можно продемонстрировать на следующем примере:F = (F,F5F9 v F,F5Fl0 v F,F8).Если же F9 = 1, что означает подтверждение дефекта на линии, то уменьшения размерности ДНФ не происходит. Необходимо ориентировать алгоритм выбора точек контроля на максимальное уменьшение исходной ДНФ после введения начальных условий (Fj = {0,1}) для моделирования. Критерием выбора точки контроля может служить взвешенность мощностей ДНФ, полученных после моделирования обоих состояний проверки.Правила выбора контрольной точки регламентируются следующими утверждениями.Утверждение 1. Если Fj присутствует во всех термах ДНФ, то данный дефект существует обязательно в схеме - его не следует тестировать. В противном случае, если предположить, что проверка будет равна нулю, то все термы обращаются в нуль, а это противоречит условию существования ненулевых значений вектора экспериментальной проверки V.Утверждение 2. В схеме присутствует только одно сочетание дефектов, определенное одним термом ДНФ. Если найдено одно подтвержденное решение в виде терма ДНФ, то остальные термы следует исключить из рассмотрения путем их обращения в нуль.Поэтому задача минимизации точек контроля сводится к выполнению двух альтернативных стратегий: 1) рассмотрение переменных в термах минимальной длины для подтверждения всех дефектов в терме путем их зондирования; 2) проверка таких переменных, которые обращают в нуль максимальное число термовДНФ.В случае существования функции F = (F4F5F9 v F4F5F10 v F4F8), которая имеет терм минимальной длины 2, а также переменную F4 во всех термах, единственно лучшим решением будет проверка F8, которая дает при положительном результате искомое множество дефектов, а при отрицательном - оставшиеся два терма, подлежащие зондированию:F = {F = 0 -- (F4F5F9 v F4F5Fl0); \FS = 1 - (F4F8).Проверка F5 дает следующие результаты послезондового моделирования двух вариантов функций:FF5 = 0 -- F4 F8;F5 = 1 - F4 F5 F9 V F4 F5 F10 V F4 F8 Далее, после (F5 = 1), должны последовать две проверки из трех (F9,F10,F8), которые убирают все термы, кроме одного, определяющего решение:F jF = 0 - F4F5Fio v F4F8; \fg = 1 - F4 F5 F9.FFw = 1 - F4 F5 F9.Критерием окончания процедуры диагностирования является получение одного терма ДНФ, которое идентифицирует наличие кратного дефекта в функциональности цифровой системы на кристалле.Далее предлагается еще один пример выполнения интерактивной процедуры диагностирования на основе анализа ДНФ:F = (F3F4F5F9 v F2F5F6F10 V F1F4F8F9 V F2F4F8F9 V F1F4F8F10 ) .В устройстве существует кратная неисправность F = FXF2F8F10.1) Выполняется подсчет весов каждой переменной, входящей в ДНФ:FFi F2 F3 F4 F5 F6 F8 F9 FtW (F)2 2 1 4 2 1 3 3 22) Вероятность присутствия в схеме дефектов коррелируется с их весовыми коэффициентами. Следовательно, в целях получения единственного решения в виде терма ДНФ необходимо выбирать в качестве точек контроля переменные, имеющие минимальный вес, которые будут обращать термы в нулевые составляющие. Следуя сказанному, первая и вторая точки контроля есть (F3, F6), имеющие минимальный вес:F = (F3F,F5F9 vF2F5F6Fl0 vFxF4F8F9 vF2F4F8F9 vFlF4F8F10)\№== F2 F5 F6 F10 v F1F4 F8 F9 v F2 F4 F8 F9 v F1F4 F8 F10 ; F = (F2 F5 F6 F10 V F1F4 F8 F9 V F2 F4 F8 F9 V F1F4 F8 F10 )\( F6 =0) =0)■ F1F4 F8 F9 V F2 F4 F8 F9 V F1F4 F8 F10 3) После каждого шага выполняется перерасчет весовых коэффициентов, который дает возможность скорректировать последующие шаги:F1 F2 F3 F4 F5 F6 F8 F9 F1CW (Fj)2 11Здесь установлен факт наличия в схеме дефектов (F4, F8), которые уже не подлежат зондированию в соответствии с условием утверждения 1. Проверка дефекта F2 дает следующий результат:Пересчет коэффициентов:предполагает наличие в схеме дефектов (Fi, F4, F8) и дополнительную проверку одной из линий (F9, F10):F = (F1F4F8F9 V F1F4F8F10 )\(F9 =0) = F1F4F8F10 Таким образом, в результате выполнения четырех зондирований, представленных линиями (F3, F6, F2, F9), был получен точный диагноз - в схеме присутствует кратный дефект: F = (Fl, F4, F8, F10).6. Алгебро-логический метод для диагностирования и ремонта памятиПредставлен точный метод диагностирования и ремонта элементов памяти с помощью резервных элементов, который позволяет покрыть множество дефектных ячеек минимально возможным количеством избыточных компонентов. Метод ориентирован на имплементацию в инфраструктуру сервисного обслуживания для функциональности цифровой системы на кристалле. Предложены структурированные решения для реализации метода диагностирования и ремонта дефектных ячеек матрицы памяти [6, 8, 14, 19].В процессе производства и эксплуатации любых видов памяти необходимы гарантии ее соответствия техническим условиям. Для этого предусмотрено выполнение трех процедур: 1) Тестирование памяти, заключающееся в подаче тестовых воздействий, ориентированных на выявление определенных классов дефектов [1, 5]; 2) В случае возникновения неисправности необходима дополнительная процедура диагностирования, которая позволяет определить место, причину и вид дефекта; 3) После определения множества дефектов, которые препятствуют выполнению функции памяти, необходимо активизировать процесс восстановления работоспособности - замену дефектных элементов избыточными резервными компонентами, изначально находящимися на силиконовом кристалле [6,7]. Таким образом, упомянутые действия ориентированы на повышение выхода годных изделий (Yield) без существенных дополнительных временных и материальных затрат. Для восстановления работоспособности необходим специальный механизм ремонта памяти путем замены дефектных компонентов на исправные из резерва силиконового кристалла.Процедура тестирования, как правило, осуществляется с помощью BIST-блока (Built-In Self Test), который представляет аппаратный быстродействующий генератор тестовых наборов, а также анализатор (сигнатурный) реакций выходов памяти на тестовые последовательности. Анализ восстановления (Repair Analysis) заключается в определении возможности покрытия дефектных элементов памяти существующими в наличии резервными компонентами. Модуль памяти представлен двумя частями: 1) функциональные ячейки, которые непосредственно применяются для хранения данных и программ при использовании модуля в системе на кристалле; 2) резервные или запасные ячейки, которые предназначены для восстановления работоспособности памяти в случае отказов функциональных ячеек. Функциональные и резервные ячейки объединяются в столбцы и строки. При обнаружении дефекта строка (столбец), содержащая дефектный элемент, отключается от функциональной структуры ячеек памяти, а на ее место подключается строка (столбец) из резерва кристалла. Поскольку количество резервных компонентов ограничено, необходим специальный механизм, позволяющий эффективно распределять ресурсы восстановления работоспособности в целях обеспечения покрытия дефектных элементов памяти минимально возможным количеством избыточных столбцов и строк.Описанная выше процедура поиска покрытия дефектных ячеек минимальным количеством резервных строк и столбцов может быть реализована как в качестве встроенного модуля восстановления работоспособности, так и внешнего по отношению к кристаллу. Во втором случае данные об ошибках поступают извне, обрабатываются и передаются контроллеру, обеспечивающему восстановление памяти. Это приводит к значительным потерям времени. Поэтому предпочтение отдается on-chip реализации модуля, когда данные об ошибках передаются непосредственно из BIST. Такой механизм носит название BIRA [6, 11] (Built-In Repair Analysis) - встроенный анализ восстановления работоспособности.Ремонт памяти осуществляется с помощью отключения дефектных элементов (строк и столбцов матрицы) путем электрического плавления перемычек и подключения резервных. Процесс пайки может быть электрическим или лазерным [9]. Устройство электрической пайки имеет меньшие габаритные размеры, чем лазерной, и применяется чаще. Пайка перемычек выполняется с помощью набора инструкций, которые могут храниться в постоянной памяти внутри чипа (hard repair) или в оперативной памяти (soft repair) [6,7,8]. Soft re

Ключевые слова

диагностирование дефектов , моделирование неисправностей , диагностика в реальном времени , fault detection , fault simulator , diagnosis in the real time

Авторы

ФИООрганизацияДополнительноE-mail
Хаханов Владимир Иванович Харьковский национальный университет радиоэлектроники (г. Харьков, Украина) профессор, доктор технических наук, декан факультета КИУ hahanov@kture.kharkov.ua
Всего: 1

Ссылки

Автоматизация диагностирования электронных устройств / Ю.В. Малышенко и др. / Под ред. В.П. Чипулиса. М.: Энергоатомиздат, 1986.
Francisco DaSilva, Yervant Zorian, Lee Whetsel, Karim Arabi, Rohit Kapur. Overview of the IEEE P1500 Standard // ITC International Test Conference. 2003. P. 988 - 997.
IEEE 1500 Web Site. http://grouper.ieee.org/groups/1500/.16. Douglas Densmore, Roberto Passerone, Alberto Sangiovanni-Vincentelli. A Platform-Based taxonomy for ESL design, Design&Test of computers, september-october 2006. P. 359 - 373.
Zorian Y., Gizopoulos D. Gest editors' introduction: Design for Yield and reliability // IEEE Design & Test of Computers. May-June 2004. P. 177 - 182.
Zorian Y. What is Infrastructure IP // IEEE Design & Test of Computers. May-June 2002. P. 5 - 7.
Хаханов В.И., Хаханова И.В. VHDL + Verilog = Синтез за минуты. Харьков: СМИТ, 2007.
Парфентий А.Н., Хаханов В.И., Литвинова Е.И. Модели инфраструктуры сервисного обслуживания цифровых систем на кристаллах // АСУ и приборы автоматики. 2007. Вып. 138. С. 83 - 99.
Hahanov V., Kteaman H., Ghribi W., Fomina E. HEDEFS - Hardware embedded deductive fault simulation // Proc. volume from the 3rd IFAC Workshop, Rydzyna, Poland, 2006. P. 25 - 29.
Rossen K. Discrete Mathematics and its Applications. McGraw Hill, 2003.
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.
Youngs L., Paramanandam S. Mapping and Repairing Embedded-Memory Defects // IEEE Design and Test of Computers. 1997. P. 18 - 24.
Zorian Y., Shoukourian S. Embedded-Memory Test and Repair: Infrastructure IP for SoC Yield // IEEE Design and Test of Computers. 2003. P. 58 - 66.
Hamdioui S., Gaydadjiev G.N., Van de Goor A.J. The State-of-the-art and Future Trends in Testing Embedded Memories // Records IEEE Intern. Workshop on Memory Technology, Design, and Testing, San Jose, CA, August 2004. P. 54 - 59.
Zhong Y., Dropsho S.G., Shen X., Studer A., Ding C. Miss Rate Prediction Across Program Inputs and Cache Configurations // IEEE Trans. on Computers. 2007. P. 328 - 343.
Bergeron J. Writing testbenches: functional verification of HDL models. Springer, 2003.
Rashinkar P., Paterson P., Singh L. System-on-chip Verification: Methodology and Techniques, Kluwer Academic Publishers, 2002.
IEEE-1800 IEEE Standard for System Verilog Language, 2005.
Бондаренко М.Ф., Кривуля Г.Ф., Рябцев В.Г., Фрадков С.А., Хаханов В.И. Проектирование и диагностика компьютерных систем и сетей. К.: НМЦ ВО, 2000.
 Инфраструктура диагностического обслуживания SoC             | Вестник Томского государственного университета. Управление, вычислительная техника и информатика. 2008. № 4 (5).

Инфраструктура диагностического обслуживания SoC | Вестник Томского государственного университета. Управление, вычислительная техника и информатика. 2008. № 4 (5).

Полнотекстовая версия