Был инженером по проверке дизайна ASIC в Qualcomm. Самым простым способом я могу объяснить это:
Тестирование: Убедитесь, что продукт работает, после того, как вы его создали (подумайте QA).
Проверка: Убедитесь, что продукт работает, прежде чем вы создали его.
Они оба тестируют, просто эта проверка более сложна, потому что вам нужно найти способ протестировать продукт до того, как он появится, и вы должны быть в состоянии убедиться, что он работает как задумано, и определить, когда он действительно выйдет.
Например, Intel разрабатывает свой следующий процессор, у них есть спецификации, у них есть схемы и симуляции. Они тратят 1 млрд. Долларов на изготовление и изготовление. Затем чип возвращается, и они проверяют его и обнаруживают, что он не работает. Они просто выбросили много денег в окно.
Добавьте проверку. Инженеры-верификаторы создают модели, имитирующие поведение чипа, они создают испытательный стенд, который будет тестировать эти конкретные модели. Они получают результаты этих моделей, а затем сравнивают их с результатами RTL (модели записи схем на языке проектирования аппаратуры). Если они совпадают, все (обычно) в порядке.
Существует ряд различных методологий для процесса проверки, популярной из которых является Универсальная методология проверки (UVM) .
В этой области много глубины, и люди могут потратить на нее всю свою карьеру.
Еще одна случайная информация: обычно вам требуется 3 инженера-верификатора на 1 инженера-конструктора. Это то, что все в области говорят в любом случае.
РЕДАКТИРОВАТЬ: Многие люди думают о проверке как о роли тестирования, но это не так; это сама по себе роль проектирования, потому что вы должны понимать все тонкости вашей IC, как это делает дизайнер, а затем вы должны знать, как проектировать модели, испытательные стенды и все тестовые случаи, которые будут охватывать все функциональные возможности вашей IC , а также пытаясь поразить каждую строку кода RTL для всех возможных битовых комбинаций. Помните, что в настоящее время процессор имеет миллиарды транзисторов благодаря процессу изготовления, позволяющему все меньше и меньше (теперь 14 нм).
Кроме того, в крупных корпорациях, таких как Intel, AMD, Qualcomm и т. Д., Дизайнеры на самом деле не проектируют чип. Обычно архитектор определяет все спецификации, размечает типы частей, которые должны объединяться, чтобы получить определенную функцию с определенным требованием (например, скорость, разрешение и т. Д.), А затем дизайнер кодирует это в RTL. Это ни в коем случае не простая работа, это просто не столько проектирование, сколько многие инженеры, выходящие из школы, думают, что это так. Каждый хочет быть архитектором, но для этого нужно много образования и опыта. Многие архитекторы имеют докторскую степень и 15-20-летний опыт работы в этой области в качестве дизайнера. Это замечательные люди (а иногда и безумные), которые заслуживают того, чтобы делать то, что делают, и у них это хорошо получается. Архитектор самого первого чипа, над которым я работал, был немного неуклюжим и не следовал некоторым социальным нормам, но он мог решить все, что вы застряли в отношении чипа, и иногда он решал это в своей голове и говорил вам посмотреть на один сигнал, и вы будете как, «как, черт возьми, он это сделал?». Затем вы просите его объяснить, и он делает, и это выходит за рамки вашей головы. На самом деле вдохновил меня на чтение учебников, хотя я уже закончил.