С ростом масштабов и сложности проектирования полупроводников процесс отладки (Debugging) становится все более серьезным препятствием для скорости инноваций. Технические оценки показывают, что процесс отладки потребляет около 44% от общего объема усилий по верификации (Verification), а поскольку современные проекты достигают миллионов логических вентилей, традиционные методы больше не способны справляться с такой сложностью.
Проблемы отладки: ось сложности и ось количества
Сложность процесса отладки расширяется по двум основным осям, требующим радикальных решений:
- Сложность ошибки (Bug Difficulty): некоторые ошибки требуют глубокого отслеживания через несколько уровней проектирования, длинных временных цепочек и сложных взаимодействий между компонентами, что делает определение первопричины трудоемким процессом.
- Количество ошибок (Bug Quantity): в ходе комплексного регрессионного тестирования (Regression) могут одновременно возникать сотни сбоев, которые могут быть вызваны разными ошибками или же все они могут иметь одну первопричину, что сбивает инженеров с толку при расстановке приоритетов.
Подход ИИ к анализу первопричин (RCA)
Вместо того чтобы рассматривать отладку как процесс ответов на простые вопросы, подход «ChipAgents RCA» предлагает рассматривать ее как «задачу поиска» (Search Problem). Система исследует наиболее вероятные пути, тестирует различные гипотезы, а затем ранжирует объяснения и предоставляет инженеру показатели достоверности (Confidence Scores), что помогает сократить время поиска сложных ошибок.
Повышение эффективности процессов посредством интеллектуальной сортировки
Основная проблема заключается в «сортировке регрессионных тестов» (Regression Triage); запуск каждой неудачной симуляции и генерация полных данных для нее (Waveforms) обходятся крайне дорого с точки зрения времени и вычислительных мощностей. Для решения этой дилеммы новый подход опирается на две стратегии:
Во-первых: интеллектуальное группирование (Intelligent Binning): выход за рамки традиционного сопоставления шаблонов для группировки сбоев, имеющих одну и ту же первопричину, даже если видимые журналы ошибок (Logs) различаются.
Во-вторых: выбор свидетелей (Witness Selection): определение минимального количества симуляций, способных объяснить сбой, и их повторный запуск только с активацией функции генерации данных (Waveform dumping), что значительно снижает вычислительные потери.
Что меняется на практике для инженеров?
Конечная цель состоит в том, чтобы изменить роль инженера с «начала процесса сортировки ошибок» на «проверку результатов сортировки». Вместо того чтобы тратить часы на ручной поиск, система выполняет автоматизированный рабочий цикл, который включает: Тестирование ← Интеллектуальное группирование ← Выбор свидетелей ← Повторный запуск симуляции ← Анализ первопричины ← Предложение исправления ← Верификация ← Финальное тестирование.
К тому времени, когда инженер вернется для проверки результатов, система может уже решить некоторые ошибки или предоставить точный отчет, показывающий, что было исправлено, а что все еще требует человеческого вмешательства.
Баланс между точностью и экономической эффективностью
Эти системы полагаются на «мультиагентные системы» (Multi-agent systems) для повышения точности за счет параллельного исследования. Однако проблемой остается поддержание эффективности затрат (Token and cost efficiency). Эксперименты показывают возможность достижения передовых результатов при затратах, близких к традиционным одноагентным системам, что делает автоматизацию коммерчески устойчивым процессом в крупномасштабных средах разработки полупроводников.