Рассматриваются проблемы обеспечения качества проектных решений при высокоуровневом синтезе сверхбольших интегральных схем (СБИС). Показано, что использование императивной модели вычислений и соответствующих языков в современных подходах не обеспечивает эффективного распараллеливания алгоритмов и переносимости. Это обусловлено спецификой СБИС, которая по существу представляет собой схему параллельной обработки информационных потоков. Представлен оригинальный метод синтеза, базирующийся на функционально-потоковой парадигме параллельных вычислений, позволяющий обеспечить архитектурную независимость и максимальный охват вариантов реализации. Изложен маршрут проектирования СБИС при функционально- потоковом подходе. Для маршрута выделена задача оценки требуемых аппаратных ресурсов и производительности СБИС-проекта на ранних этапах проектирования. Предложен метод оценки ресурсов в процессе ФПП-синтеза. В основу метода положено использование дополнительного мета-слоя HDL-графа, при этом, с учетом полиморфизма решения задачи оценки ресурсов, в новом методе предложено использовать технологии машинного обучения. Показано, что применение означенного метода в процесс синтеза позволяет обеспечить максимально точную оценку ресурсов. Это возможно, поскольку HDL-граф представляет собой типизированный и структурированный в соответствии с функционально- потоковой моделью параллельных вычислений граф потока данных, а машинное обучение позволяет максимально эффективно получать решение задачи оптимального выбора требуемых ресурсов. Выделены классы ресурсов, для которых требуется оценка. Отобраны параметры для построения модели оценки ресурсов. Выполнена программная реализация и сравнение предложенного метода оценки ресурсов на основе моделей линейной регрессии, нейронных сетей и градиентного бустинга с известными подходами. Показано, что при использовании технологии функционально-потокового синтеза при применении предложенного метода для оценки требуемых ресурсов и производительности достигается увеличение точности оценки на высокоуровневом этапе.
Ключевые слова
программное обеспечение, теория программирования, функциональное программирование, цифровая интегральная схема, оценка ресурсов, машинное обучение, высокоуровневый синтез