Как стать автором
Обновить

Комментарии 15

Честно говоря показалось, что какая-то поверхностная статья. Хотя бы пример какого нибудь тестбенча… Хоть вот такой www.marsohod.org/index.php/11-blog/113-icarus
Нельзя не согласится, но хотелось бы для начала сделать этакое «введение» в предметную область.

В следующих статьях обязательно подробнее коснусь разработки тестбенчей.
Правильно ли я понял, что верификация — это набор testbenchей, который формально описан в виде документа. Верификация выполняется только на этапе симуляции?
Верификация — это весь процесс в целом. Начиная от создания ТЗ до успешного окончания всех тестов.
И с самого начала меня поражало малочисленность информации по данному вопросу.

Не соглашусь.

Прошивка FPGA является программным обеспечением (хотя тут можно поспорить, но в данном контексте сравнение уместно), следовательно её верификация сходна с верификацией любого другого ПО. По тестированию ПО есть достаточное количество статей, книг, методологий и пр.

Однако прошивка является «необычной» программой, и у нее есть нюансы, как её тестировать. И здесь нам помогают книги типа «SystemVerilog for Verification» и «Writing testbenches using systemverilog», а так же сайты типа testbench.in, ну и такие методологии верификации как UVM, которые заточены под RTL.

Так что, на мой взгляд, информация есть в сети есть :)

Мне кажется, полезнее для сообщества будет показать свой тестбенч (или его часть), рассказав, что, как и почему вы делаете, т.к. реальная жизнь в большом серьезном проекте очень часто расходится с советами из книжек и статей в интернете)
Тут моя промашка. В уме писалось «русскоязычной информации», а было написано просто «информации». Безусловно на английском хватает литературы, однако в сравнении с литературой для тестирования «обычного» ПО, информации крайне мало.

Изначально я планировал серию статей. Так что в будущих статьях я обязательно коснусь каких-либо практических решений.
Сперва Вы приводите определение:
Функциональная верификация на ПЛИС — это процесс поиска и исправления ошибок

А потом:
потому как процессы верификации и поиска ошибок

Ни то, ни другое не является верным.
Верификация — это не поиск и устранение ошибок, а доказательство соответствия функционирования продукта согласно ТЗ.

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

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

Это я поправил.
Функциональная верификация на ПЛИС — это процесс поиска и исправления ошибок

Здесь мне хотелось описать данное определение более понятными словами, передать суть.

Верификация — это не поиск и устранение ошибок, а доказательство соответствия функционирования продукта согласно ТЗ.

Тут слово «доказательство» неуместно, на мой взгляд. То есть мне, как верификатору, дали продукт и я должен доказать, что продукт правильно работает? Так не годится. Верификатор должен проверить соответствие продукта ТЗ, а если продукт не соответствует, то сообщить тому, кто это исправит.
Статья похожа на перевод рекламного буклета. А литература по этой, несомненно, важной теме имеется. Нпример, вот эта книжечка
По поводу наличия информации я уже в комментариях поправился на отсутствие русскоязычной литературы.
А по поводу рекламного буклета. Сожалею, что вам так показалось. Надеюсь следующие статьи не будут создавать такое впечатление.
Так же можно посетовать на отсутствие русскоязычного ПО (((
Данная профессия подразумевает знание английского хотя бы на уровне технической терминологии в области дизайна FPGA.
Есть огромная разница в усвоении информации для русскоязычного специалиста на английском и на русском. Даже для того, кто неплохо знает технический английский. Надеюсь с этим вы согласитесь?
ПО на русском совсем уж неуместно, потому как большинство терминов все-таки англоязычны.
Так что тут бессмысленно сравнивать ПО и литературу.
Можно ведь посетовать еще на англоязычные операторы «while», «for» итп. Вряд ли это кого-то будет напрягать.
Те, «кто неплохо знает технический английский» как правило предпочитают оригинал на английском. Ибо русскоязычная литература в своем подавляющем большинстве — перевод тех же английских источников, причем довольно часто — перевод некачественный.
Как-то «верификация» в заголовке плавно перетекла в «функциональную верификацию» в тексте. Про другие виды верификации вы нам не расскажете?
Не могу не согласится с данной критикой. Изначально стоило в заголовке указать функциональную верификацию.
О формальной верификации можно было упомянуть, однако, к сожалению, ей уделяется намного меньше времени. Незаслуженно.
А если и уделяется, то данный термин не фигурирует.
Зарегистрируйтесь на Хабре , чтобы оставить комментарий

Публикации

Истории