КОМПЛЕКС СРЕДСТВ ТРАНСЛЯЦИИ ПРОГРАММ НА ЯЗЫКЕ C В ПРОГРАММЫ НА ЯЗЫКЕ ПОТОКА ДАННЫХ COLAMO
Рассматриваются программные средства трансляции последовательных программ на языке C в масштабируемые параллельно-конвейерные программы на языке программирования реконфигурируемых вычислительных систем COLAMO. В отличие от существующих средств высокоуровневого синтеза, результатом трансляции является не IP-ядро фрагмента задачи, а комплексное решение задачи для многокристальных реконфигурируемых вычислительных систем с автоматической синхронизацией информационных и управляющих сигналов. Рассмотрены основные этапы трансляции последовательной программы на языке C: преобразование в информационный граф, анализ информационных зависимостей и выделение функциональных подграфов, преобразование в масштабируемую ресурсонезависимую параллельно-конвейерную форму и масштабирование программы на языке COLAMO для заданной многокристальной реконфигурируемой вычислительной системы. Масштабирование программы осуществляется с помощью методов редукции производительности абсолютно-параллельной формы задачи - информационного графа, который адаптируется под архитектуру реконфигурируемой вычислительной системы. Разработан ряд правил, позволяющих существенно сократить число шагов преобразований при масштабировании задачи и обеспечить плотный поток обработки данных в функциональных подграфах задачи. Созданный комплекс средств трансляции программ на языке C в конфигурационные файлы ПЛИС позволяет существенно сократить время синтеза вычислительной структуры задачи для многокристальных РВС и обеспечить сокращение общего времени решения задачи.