Несколько слов об управлении требованиями к проектам FPGA
Если мы слышим что-то об «управлении требованиями», возможно, на ум приходят такие навороченные инструменты, как IBM Rational “DOORS,” или что-то типа Serena или Polarion из мира программирования. Но что, если речь идет об управлении требованиями к проектам ПЛИС или СБИС, с кодом на языках HDL (VHDL или Verilog) и с тестовыми векторами, файлами диаграмм входных воздействий, и другими не мене важными элементами, поддерживающими верификацию проектов? Что если требуется подтверждение соответствия стандартам для критически важных проектов, таким как КТ-254 в авионике?
Да, в целом управление системными требованиями хорошо реализовано в DOORS или Polarion, но для обеспечения прослеживаемости требований в ПЛИС или СБИС нужно гораздо больше деталей и нюансов. В контексте стандарта КТ-254 требования должны быть прослежены «сверху вниз» через проект и реализацию вплоть до результатов верификации.
Это невозможно реализовать в системах типа DOORS. Допустим, эти системы имеют довольно мощные возможности по кастомизации и могут быть теоретически расширены, чтобы обеспечить такой требуемый для ПЛИС уровень детализации. Однако усилия, затраченные на такую кастомизацию, будут слишком большими, более эффективным было бы потратить это время и силы на выполнение реальной работы по проектированию и верификации ваших проектов ПЛИС. Лучшим сценарием, пожалуй, будет использование инструмента, изначально предназначенного именно для управления требованиями для проектов ПЛИС – и разумеется, снабженного возможностью для импорта и экспорта информации в DOORS, равно как и в документы Word или Excel.
Компания ALDEC предлагает такое решение, под названием Spec-TRACER – это инструмент, который интегрирует систему управления требованиями к проектам ПЛИС в существующие возможности популярного универсального симулятора HDL-кода Active-HDL. Инструмент содержит центр администрирования требований и менеджер отчетов. Центр администрирования – это набор общих функций для совместной разработки: настройка и управление репозиториями и проектами, создание и управление пользователями, группами и правами, а также создание и управление исходными данными. Менеджер отчетов основан на использовании шаблонов, с возможностью кастомизации отчетов под корпоративные стандарты.
Ключевая особенность Spec-TRACER – это возможность сопоставления исходных требований и исходного кода HDL. Первый шаг процесса работы в этом инструменте – это внесение исходных требований, и разработчики могут либо напрямую вносить их в редактор, либо импортировать их из DOORS, Excel или Word и модифицировать необходимым образом уже в редакторе Spec-TRACER. Интересно, что можно отслеживать и проверять множественные версии требований, и вести историю изменений.
Каждое конкретное требование к функционалу ПЛИС может быть отслежено непосредственно к конкретному коду HDL, конкретным тестовым сценариям, и к результатам тестирования. Метки отслеживания (tag) можно перетаскивать в необходимое место, и они не являются привязанными к конкретному проекту, что позволяет повторно использовать проекты HDL. Это позволяет получить возможность анализа влияния изменений, который показывает в точности, какие элементы проекта будут затронуты в том случае, если изменится определенное требование. Также имеется маршрут обзора (review), так что требования и результаты тестирования могут быть просмотрены и одобрены.
Очень важна возможность двунаправленной прослеживаемости, особенно когда изменения в проекте начинают оказывать эффект в момент разворачивания проекта. Прослеживаемость сверху вниз важна, т.к. позволяет показать требования, которые не покрыты, что упрощает для разработчиков возможность увидеть, что именно осталось реализовать или протестировать. Прослеживаемость снизу вверх высвечивает те требования, которые не трассируются назад к родительским требованиям, а это является ключевым элементом в анализе критических с точки зрения безопасности систем, чтобы гарантировать, что в системе нет ничего лишнего, что могло бы вызвать непредвиденное поведение.
Резюмируя, можно отметить, что если вы разрабатываете критически важную с точки зрения безопасности систему на ПЛИС или СБИС, или вам необходимо сертифицировать ваш проект по стандарту КТ-254 для авионики, инструмент Spec-TRACER может быть очень удобным и полезным для отслеживания требований, обеспечения надежности, и, что немаловажно, для подтверждения сертификации КТ-254 на основании реального автоматизированного анализа вашего проекта «сверху вниз» и «снизу вверх».