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

Современные достижения в области полупроводниковых технологий за последнее десятилетие оказали большое влияние на стратегии в области проектирования микросхем. Хотя увеличение плотности транзисторов на чипе привело к снижению стоимости одного вентиля, затраты на тестирование микросхемы стали существенной частью общей стоимости микросхемы. Чтобы удержать затраты на тестирование микросхемы в разумных пределах, были предложены методы обеспечения тестопригодности (Design For Test (DFT)), преобразующие последовательную схему в комбинационную для целей тестирования. Также, для обеспечения процесса тестирования микросхем СБИС были разработаны инструменты САПР для автоматического создания тестовых последовательностей (Automatic Test Pattern Generation (ATPG)) и моделирования неисправностей. Однако даже для комбинационных схем вычислительные ресурсы, необходимые как для автоматической генерации тестовых таблиц, так и для моделирования неисправностей, становятся огромными, если принимать во внимание схемы с десятками тысяч вентилей.

Проблема моделирования неисправностей в комбинационных схемах обсуждалась в ряде работ в течение последних нескольких лет. Разработаны эффективные методы моделирования неисправностей на базе различных моделей ошибок. В работах рассматривалось два уровня параллелизации – на уровне последовательностей, и на уровне ошибок.

Современное развитие аппаратных вычислительных средств формирует новую парадигму для существующих параллельных алгоритмов. В частности, графические процессоры (GPU), имеющие архитектуру SIMD с одной инструкцией и множеством данных могут иметь тысячи потоков, выполняемых одновременно. Это открывает новые перспективы для более эффективной реализации процедур в области верификации и моделирования неисправностей. Однако простой перенос существующих алгоритмов на новые аппаратные платформы невозможен – требуется разработка существенно новых подходов и написание новых программных средств. Использование предлагаемых методов и подходов позволит достичь ускорения отдельных процедур до нескольких десятков раз по сравнению с традиционными однопоточными реализациями.