Преобразование последовательной программы в параллельно-конвейерную форму для многокристальных реконфигурируемых вычислительных систем

Статья: Преобразование последовательной программы в параллельно-конвейерную форму для многокристальных реконфигурируемых вычислительных систем

Илья Израилевич Левин Алексей Игоревич Дордопуло Вячеслав Александрович Гудков Андрей Александрович Гуленок

Журнал: Вестник Южно-Уральского государственного университета. Серия: Вычислительная математика и информатика @vestnik-susu-cmi

Статья в выпуске: 3 т.15, 2026 года.

Бесплатный доступ

Для многокристальных реконфигурируемых вычислительных систем (РВС) на базе программируемых логических интегральных схем (ПЛИС) необходимы новые средства создания и масштабирования параллельно-конвейерных программ с автоматическим согласованием информационных потоков данных. Средства масштабирования должны автоматически, без использования специализированных директив трансляции, синтезировать эффективные для многокристальных РВС формы организации вычислений, такие как конвейер в конвейере и макроконвейер, которые ранее могли быть реализованы только инженером-схемотехником. В статье описываются разработанные методы преобразования последовательной программы в параллельно-конвейерную форму, которая позволяет реализовать эффективные формы организации вычислений и может быть адаптирована к различным архитектурам и конфигурациям РВС без корректировки исходного текста программы. Ресурсонезависимая параллельно-конвейерная форма программы обеспечивает гибкое и согласованное масштабирование вычислительной структуры и информационных потоков данных в зависимости от доступного вычислительного ресурса РВС на множестве ПЛИС. Представлено сравнение эффективности созданных параллельно-конвейерных программ комплексом "Тесей" с наиболее популярным средством высокоуровневого синтеза Xilinx Vivado HLS на примере решения задач линейной алгебры.

высокоуровневый синтез \ HLS \ трансляция программ \ язык C \ реконфигурируемая вычислительная система \ программирование многопроцессорных вычислительных систем \ последовательные программы \ параллельно-конвейерные вычисления

Короткий адрес: https://sciup.org/147255447

IDS: 147255447   |   УДК: 004.4.242, 004.382.2   |   DOI: 10.14529/cmse260305

Transforming a Sequential Program into a Parallel Pipeline Form for Multi-Chip Reconfigurable Computing Systems

Multi-chip reconfigurable computing systems (RCS) based on field-programmable gate arrays (FPGAs) require novel design tools capable of creating and scaling parallel pipelined programs with automatic dataflow synchronization. Such scaling tools should automatically synthesize efficient computational organizations—such as pipeline-within-pipeline and macropipeline architectures-without relying on specialized compiler directives. Previously, these forms could only be implemented manually by hardware engineers. This paper presents developed transformation techniques that convert sequential programs into a parallel pipelined form. This representation supports efficient computational structures and can be adapted to various RCS architectures and configurations without any changes to the source code. The resource-independent parallel pipelined program representation ensures flexible and coordinated scaling of both the computational fabric and the data streams, depending on the available computational resources across a multi-FPGA system. The performance of parallel pipelined programs generated by the Teseus framework is compared against the widely used Xilinx Vivado HLS high-level synthesis tool on a set of linear algebra benchmarks.