Препроцессор языка программирования высокого уровня для реконфигурируемых вычислительных систем тема диссертации и автореферата по ВАК РФ 05.13.11, кандидат технических наук Коваленко, Алексей Геннадьевич

  • Коваленко, Алексей Геннадьевич
  • кандидат технических науккандидат технических наук
  • 2013, Таганрог
  • Специальность ВАК РФ05.13.11
  • Количество страниц 180
Коваленко, Алексей Геннадьевич. Препроцессор языка программирования высокого уровня для реконфигурируемых вычислительных систем: дис. кандидат технических наук: 05.13.11 - Математическое и программное обеспечение вычислительных машин, комплексов и компьютерных сетей. Таганрог. 2013. 180 с.

Оглавление диссертации кандидат технических наук Коваленко, Алексей Геннадьевич

ВВЕДЕНИЕ

1. МЕТОДЫ И СРЕДСТВА ПРОГРАММИРОВАНИЯ РЕКОНФИГУРИРУЕМЫХ ВЫЧИСЛИТЕЛЬНЫХ СИСТЕМ

1.1. Реконфигурируемые вычислительные системы

1.2. Языки программирования реконфигурируемых вычислительных систем

1.3. Язык программирования высокого уровня COLAMO

1.4. Препроцессоры

1.5. Принципы построения и задачи препроцессора языка COLAMO

1.6. Выводы

2. МЕТОДЫ ПРЕОБРАЗОВАНИЯ ПАРАЛЛЕЛЬНО-КОНВЕЙЕРНЫХ ПРОГРАММ ДЛЯ РЕКОНФИГУРИРУЕМЫХ ВЫЧИСЛИТЕЛЬНЫХ СИСТЕМ

2.1. Метод преобразования параллельно-конвейерных программ к структурной или мультипроцедурной реализации вычислений

2.2. Метод преобразования параллельно-конвейерных программ, содержащих большое число условных операторов

2.3. Метод преобразования параллельно-конвейерных программ, соответствующих связанным изоморфным информационным подграфам

2.4. Метод преобразования параллельно-конвейерных программ, содержащих последовательность ассоциативных операций

2.5. Выводы

3. СТРУКТУРА И АЛГОРИТМЫ ПРЕПРОЦЕССОРА ЯЗЫКА COLAMO

3.1. Общая структура препроцессора

3.2. Команды препроцессора

3.3. Алгоритмы препроцессора языка COLAMO

3.3.1. Алгоритм автоматического преобразования текста параллельной программы при использовании конструкции Implicit

3.3.2. Алгоритм автоматического преобразования текста параллельной программы, содержащей большое число условных операторов

3.3.3. Алгоритм автоматического преобразования текста параллельной программы, соответствующей связанным изоморфным информационным подграфам

3.3.4. Алгоритм автоматического преобразования текста параллельной программы, содержащей цепочку ассоциативных операций

3.4. Использование препроцессора языка COLAMO в интегрированной среде разработки прикладных программ

3.5. Выводы 117 4. РЕШЕНИЕ ПРИКЛАДНЫХ ЗАДАЧ С ИСПОЛЬЗОВАНИЕМ ПРЕПРОЦЕССОРА ЯЗЫКА COLAMO

4.1. Реализация задачи томографического исследования приповерхностных слоев Земли акустическими и электромагнитными волнами

4.2. Реализация задачи оптимизации расхода топлива турбовинтовентиляторного двигателя

4.3. Реализация задачи диагностики дорожных покрытий и аэродромных взлетно-посадочных полос

4.4. Выводы 156 ЗАКЛЮЧЕНИЕ 158 СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ 160 ПРИЛОЖЕНИЕ. Акты о внедрении результатов диссертации

Рекомендованный список диссертаций по специальности «Математическое и программное обеспечение вычислительных машин, комплексов и компьютерных сетей», 05.13.11 шифр ВАК

Введение диссертации (часть автореферата) на тему «Препроцессор языка программирования высокого уровня для реконфигурируемых вычислительных систем»

Актуальность темы. Научно-технический прогресс требует все более высоких вычислительных мощностей от современных многопроцессорных вычислительных систем, способных решать сложные задачи за приемлемое время. Дешевизна составных компонентов и высокий уровень развития средств и методов программирования универсальных процессоров сделали популярными кластерные многопроцессорные системы [1, 2], узлы которых построены по классической фон-неймановской архитектуре. Однако практика показала, что использование в решении задачи большого числа процессоров кластерных систем не только не приводит к линейному росту производительности системы, но и зачастую значительно увеличивает время решения даже по сравнению с использованием однопроцессорной вычислительной системы. В особенности это характерно для сильносвязанных задач, для которых число межпроцессорных обменов информацией, необходимых для корректного решения задачи, соизмеримо или даже превышает собственно вычисления. В итоге производительность кластерных систем не превышает 10-20% от заявленной пиковой производительности.

Указанного недостатка лишены реконфигурируемые вычислительные системы (РВС) [3, 4]. Адаптация архитектуры таких систем под вычислительную структуру решаемой задачи позволяет достигать высоких показателей производительности, которые для некоторых классов задач превышают 90% от значения пиковой производительности.

В последнее время большое распространение получили реконфигурируемые вычислительные системы, использующие в качестве основного аппаратного элемента программируемые логические интегральные схемы (ПЛИС), называемые в зарубежной литературе FPGA (Field-Programmable Gate Array) [5]. Можно выделить два направления использования ресурса ПЛИС. Первый предусматривает применение ПЛИС в качестве сопроцессора, выполняющего наиболее трудоемкие вычисления, в то время как остальная подготовительная работа, не требующая больших вычислительных мощностей, выполняется на обычном универсальном процессоре. Однако подобные гибридные системы хоть и повышают реальную производительность при решении задач, но их потенциальная реальная производительность ограничена, поскольку они используют процессоры фон-неймановской архитектуры, связанные между собой ограниченной коммутационной системой.

Второе направление предполагает применение ПЛИС в качестве основного вычислителя. При таком подходе универсальный процессор управляет работой вычислительной структуры, реализованной в ПЛИС, не выполняя никаких вычислительных функций. Аппаратный ресурс вычислительных полей ПЛИС позволяет многократно увеличить реальную производительность РВС при решении различных задач, включая сильносвязанные.

Широкое распространение РВС сдерживается долгим процессом программирования, поскольку программы, созданные для одной архитектуры, приходится полностью перерабатывать для другой архитектуры. Иногда это необходимо даже при изменении конфигурации системы - наращивании или уменьшения аппаратного ресурса, например, при выходе из строя определенной части оборудования.

Для программирования РВС в настоящее время используются языки описания аппаратуры, так называемые языки НОЬ-группы [6, 7]. Подобные языки ориентированы больше на схемотехников, чем на программистов. Имеющиеся у фирм-изготовителей ПЛИС системные средства предназначены для создания однокристальных проектов, поэтому разработка и отладка задач, требующих использования нескольких ПЛИС, занимает длительное время, достигая нескольких месяцев.

Для высокоуровневого программирования РВС в качестве альтернативы языкам НОЬ-группы также используются системы программирования, которые используют синтаксис и семантику популярного языка программирования традиционного типа С (Catapult С, Mitrion-C, ImpulseC, Handle-C) для создания в ПЛИС виртуальных процессов или наложения на ПЛИС промежуточных архитектурных решений [8, 9]. При этом подобные системы не отображают информационно-вычислительную структуру задачи непосредственно в логические ячейки ПЛИС и связи между ними, что приводит к значительному снижению (в несколько раз) реальной производительности РВС.

Особую позицию в системах программирования РВС занимает язык высокого уровня COLAMO [4, 10]. Программист с помощью конструкций языка описывает виртуальный информационный граф задачи, который транслируется на уровень логических ячеек ПЛИС синтезатором Fire ¡Constructor, поддерживающим укладку элементов графа между несколькими ПЛИС [11]. В языке COLAMO отсутствуют явные формы описания параллелизма. Язык позволяет быстро и просто описывать различные параллельно-конвейерные организации вычислений.

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

Целью работы является сокращение времени портации прикладных параллельно-конвейерных программ для РВС различных архитектур и конфигураций.

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

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

Научная задача, решаемая в диссертации, - создание методов и алгоритмов препроцессора языка программирования высокого уровня, минимизирующих время портации параллельно-конвейерных программ для различных архитектур и конфигураций РВС при заданном уровне реальной производительности системы.

Для достижения указанной цели решены следующие задачи:

1) проведен анализ методов и средств описания параллельных вычислений для РВС;

2) разработан метод преобразования параллельно-конвейерных программ к структурной или мультипроцедурной реализации вычислений в соответствии с архитектурой и конфигурацией РВС;

3) разработан метод преобразования параллельно-конвейерных программ для РВС, содержащих большое число условных операторов;

4) разработан метод преобразования параллельно-конвейерных программ для РВС, соответствующих связанным изоморфным информационным подграфам;

5) создан препроцессор языка программирования высокого уровня СОЬАМО для реконфигурируемых вычислительных систем;

6) выполнен анализ эффективности реализации задач различных предметных областей.

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

Научная новизна диссертационной работы определяется тем, что в ней разработаны:

1) метод преобразования прикладных параллельно-конвейерных программ к структурной или мультипроцедурной реализации вычислений в соответствии с конфигурацией РВС, отличающийся от известных наличием процедуры расчета аппаратных затрат для различных организаций параллельно-конвейерных вычислений и процедурой модификации исходного текста программы под наиболее эффективный вариант распараллеливания;

2) метод преобразования параллельно-конвейерных программ, содержащих большое число условных операторов, отличающийся от известных автоматической процедурой оценки эффективности структурной реализации условных операторов;

3) метод преобразования параллельно-конвейерных программ, соответствующих связанным изоморфным информационным подграфам, отличающийся от известных наличием процедуры выделения конструкций, описывающих связанные изоморфные подграфы, и процедуры модификации исходного текста программы для организации эффективных параллельных вычислений;

4) структура препроцессора языка программирования высокого уровня COLAMO, отличающаяся наличием процедур, изменяющих организацию вычислений - от структурной к мультипроцедурной, от конвейера к вложенному конвейеру с организацией обратной связи.

Практическая значимость. На основании предложенных методов и алгоритмов создан препроцессор языка программирования высокого уровня COLAMO для реконфигурируемых вычислительных систем. Применение препроцессора позволяет сократить время портации параллельно-конвейерных программ с РВС одной конфигурации на РВС другой конфигурации в 1,2-4 раза по сравнению с ручной переработкой исходных текстов программ на языке COLAMO. В частности, для задачи томографического исследования приповерхностных слоев Земли акустическими и электромагнитными волнами время портации было сокращено в 4 раза, для задачи оптимизации расхода топлива турбовинтовентиляторного двигателя - в 2 раза, для задачи диагностики дорожных покрытий и аэродромных взлетно-посадочных полос - в 1,2 раза.

Использование результатов работы. Материалы диссертации использовались при выполнении ряда НИОКР, среди которых можно выделить следующие:

- «Модульно-наращиваемая многопроцессорная вычислительная система с программируемой архитектурой на основе реконфигурируемой элементной базы», итоговый отчет об ОКР, № гос. per. 0122.0510630, инв. № 0220.0601017,Таганрог, НИИ МВС ТРТУ, 2006 г.;

- «Создание семейства высокопроизводительных многопроцессорных вычислительных систем с динамически перестраиваемой архитектурой на основе реконфигурируемой элементной базы и их математического обеспечения для решения вычислительно трудоемких задач», итоговый отчет об ОКР, № гос. per. 01.2.007 05707, инв. № 0220.0900079, Таганрог, НИИМВСЮФУ, 2007 г.;

- «Разработка научно-технических основ создания многопроцессорных вычислительных систем сверхпетафлопсной производительности и подготовка кадров высшей квалификации в области распределенных вычислений», отчет о НИР, № гос. per. 01200958384, инв. № 03.ШЦ.2009, Таганрог, НИИ МВС ЮФУ, шифр «2009-1.1-215-002-013», 2010 г.;

- «Разработка методов и инструментальных систем для анализа эффективности работы параллельных программ и суперкомпьютеров. Этап 1», отчет о НИР, № гос. per. 01201164294, инв. № 01.РМК.2011, Таганрог, НИИ МВС ЮФУ, 2011 г.;

- «Разработка теоретических основ построения сверхвысокопроизводительных реконфигурируемых вычислительных систем», отчет о НИР, № гос. per. 01201153442, Таганрог, НИИ МВС ЮФУ, 2012 г.

Апробация работы. Основные результаты, представленные в диссертации, докладывались и обсуждались на всероссийских и международных научно-технических конференциях: III, IV, VI, VII, VIII, IX ежегодных научных конференциях студентов и аспирантов базовых кафедр ЮНЦ РАН, Ростов-на-Дону; всероссийской научной конференции «Научный сервис в сети ИНТЕРНЕТ», Москва, 2007 г., 2009 г.; международной научно-технической конференции «Многопроцессорные вычислительные и управляющие системы - 2007», Таганрог, 2007 г.; международной молодежной научно-технической конференции и Пятой международной молодежной школе «Высокопроизводительные вычислительные системы (ВПВС-2008)», Таганрог, 2008 г.; международной научно-технической конференции «Суперкомпьютерные технологии (СКТ-2010)» и Седьмой международной научной молодежной школе «Высокопроизводительные вычислительные системы», с. Дивноморское, Геленджик, 2010 г.; 2-ой

Всероссийской научно-технической конференции «Суперкомпьютерные технологии (СКТ-2012)», с. Дивноморское, Геленджик, 2012 г.

Наиболее значительными публикациями по теме диссертации являются:

1. Коваленко, А.Г. Макроконвейерная реализация алгоритмов аутентификации на языке высокого уровня COLAMO [Текст] / А.Г. Коваленко // Известия ЮФУ. Технические науки. - Таганрог: Изд-во ТТИ ЮФУ, 2012. - №4. - С. 210-215 (ведущий рецензируемый журнал, входит в перечень ВАК);

2. Коваленко, А.Г. Оптимизация информационного графа задачи для ассоциативных операций с помощью препроцессора языка COLAMO [Текст] / А.Г. Коваленко, И.И. Левин, В.А. Гудков // Вестник компьютерных и информационных технологий. - М.: Машиностроение, 2013. - №1. - С. 47-51 (ведущий рецензируемый журнал, входит в перечень ВАК);

3. Коваленко, А.Г. Автоматизация построения параллельно-конвейерных программ для реконфигурируемых вычислительных систем [Текст] / А.Г. Коваленко, И.И. Левин, А.К. Мельников // Вестник компьютерных и информационных технологий. - М.: Машиностроение, 2013. - №5. - С. 50-56 (ведущий рецензируемый журнал, входит в перечень ВАК);

4. Коваленко, А.Г. Решение обратной задачи диагностики дорог на реконфигурируемой вычислительной системе с применением языка COLAMO [Текст] / А.Г. Коваленко, С.Л. Овчинников, С.Ю. Романов // Труды Всероссийской суперкомпьютерной конференции «Научный сервис в сети ИНТЕРНЕТ: масштабируемость, параллельность, эффективность». - М.:Изд-во МГУ, 2009. - С.217-223;

5. Коваленко, А.Г. Решение задачи томографии приповерхностных слоев земли с использованием языка COLAMO на реконфигурируемой вычислительной системе [Текст] / А.Г. Коваленко, Е.Е. Семерникова // Материалы Международной научно-технической конференции

Суперкомпьютерные технологии: разработка, программирование, применение (СКТ-2010)». Т.2. - Таганрог: Изд-во ТТИ ЮФУ, 2010. - С.207-211;

6. Коваленко, А.Г. Процедура автоматического преобразования параллельно-конвейерных программ для реконфигурируемых вычислительных систем [Текст] / А.Г. Коваленко // Материалы 2-й Всероссийской научно-технической конференции «Суперкомпьютерные технологии (СКТ-2012)». Ростов-на-Дону: Изд-во Южного федерального университета, 2012. - С. 120-125;

7. Коваленко, А.Г. Оптимизации информационного графа задачи, содержащего ассоциативные операции, с использованием препроцессора транслятора языка COLAMO [Текст] / А.Г. Коваленко // Высокопроизводительные вычислительные системы: Сборник научных трудов, Выпуск 2. - Таганрог: Изд-во ЮФУ, 2012. - С. 33-37.

8. Коваленко, А.Г. Автоматический выбор эффективной организации вычислений при использовании конструкции Implicit для реконфигурируемых вычислительных систем [Текст] / А.Г. Коваленко // Сборник научных трудов по материалам Международной научно-практической конференции «Современные тенденции в образовании и науке». - Тамбов: Изд-во ТРОО «Бизнес-Наука-Общество», 2013. - Часть 3. -С.81-86;

9. Коваленко, А.Г. Автоматический выбор эффективной организации вычислений при решении задач, содержащих большое число условных операторов, для реконфигурируемых вычислительных систем [Текст] / А.Г. Коваленко // Сборник научных трудов по материалам Международной научно-практической конференции «Образование и наука: современное состояние и перспективы развития». - Тамбов: Изд-во ТРОО «Бизнес-Наука-Общество», 2013. - Часть 3. - С. 91-97.

По результатам исследований также получено 3 свидетельства о государственной регистрации программ для ЭВМ:

1. Коваленко, А.Г. Программа обработки данных томографического исследования приповерхностных слоев Земли акустическими и электромагнитными волнами на реконфигурируемых вычислительных системах / А.Г. Коваленко, И.И. Левин // Свидетельство об официальной регистрации программы для ЭВМ № 2009612743, РФ. Зарегистр. в Реестре программ для ЭВМ 10.09.2009 г. Правообладатель: НИИ МВС ЮФУ;

2. Коваленко, А.Г. Программа обработки данных диагностики дорожных покрытий и аэродромных взлетно-посадочных полос на реконфигурируемых вычислительных системах / А.Г. Коваленко, И.И. Левин // Свидетельство об официальной регистрации программы для ЭВМ № 2009615979, РФ. Зарегистр. в Реестре программ для ЭВМ 28.10.2009 г. Правообладатель: НИИ МВС ЮФУ;

3. Коваленко, А.Г. Препроцессор транслятора языка СОЬАМО для реконфигурируемых вычислительных систем / А.Г. Коваленко, И.И. Левин, В.А. Гудков // Свидетельство о государственной регистрации программы для ЭВМ № 2013611485, РФ. Зарегистр. в Реестре программ для ЭВМ 22.01.2013 г. Правообладатель: Южный федеральный университет.

Структура работы. Диссертационная работа состоит из введения, четырех глав, заключения, списка использованных источников и приложения.

Похожие диссертационные работы по специальности «Математическое и программное обеспечение вычислительных машин, комплексов и компьютерных сетей», 05.13.11 шифр ВАК

Заключение диссертации по теме «Математическое и программное обеспечение вычислительных машин, комплексов и компьютерных сетей», Коваленко, Алексей Геннадьевич

4.4 Выводы

1) На основе методов и алгоритмов, описанных в главах 2 и 3, был разработан препроцессор языка COLAMO для автоматической портации параллельно-конвейерных программ на РВС различных архитектур и конфигураций. Входными данными для препроцессора являются исходные тексты программ на языке COLAMO. Результатом работы препроцессора являются модифицированные тексты программ на языке COLAMO, описывающие более эффективную организацию вычислений для выбранной РВС.

2) Разработанный алгоритм автоматического преобразования текста параллельной программы по схеме конвейера конвейеров позволяет в 4 раза сократить время портации исходного проекта с РВС одной конфигурации на РВС другой конфигурации без существенного снижения эффективности реализации для новой РВС.

3) Разработанный алгоритм автоматического преобразования текста параллельной программы при использовании конструкции Implicit позволяет, по меньшей мере, в два раза сократить время портации исходного проекта с РВС одной конфигурации на РВС другой конфигурации без существенного снижения эффективности реализации для новой РВС.

4) Разработанный алгоритм автоматического преобразования текста параллельной программы для задач, содержащих большое число условных переходов, позволяет в 1,2 раза сократить время портации исходного проекта с РВС одной конфигурации на РВС другой конфигурации без существенного снижения эффективности реализации для новой РВС.

5) Разработанные методы и алгоритмы для автоматической портации программ на языке СОЬАМО позволили в 2-3 раза сократить время переноса проекта с одной РВС на другую по сравнению с ручным изменением исходного текста программы. При этом не наблюдается существенного снижения эффективности реализации для новой РВС.

158

ЗАКЛЮЧЕНИЕ

Основные полученные результаты диссертационной работы заключаются в разработке методов и алгоритмов автоматического преобразования параллельно-конвейерных программ для реконфигурируемых вычислительных систем, минимизирующих время портации с РВС одной конфигурации на РВС другой конфигурации в 2-3 раза по сравнению с ручной переработкой исходных текстов программ на языке СОЬАМО. На основании предложенных методов и алгоритмов создан препроцессор транслятора языка СОЬАМО.

При проведении исследований и разработок в диссертационной работе получены следующие теоретические и прикладные результаты:

1) метод преобразования прикладных параллельно-конвейерных программ к структурной или мультипроцедурной реализации вычислений в соответствии с конфигурацией РВС, отличающийся от известных наличием процедуры расчета аппаратных затрат для различных организаций параллельно-конвейерных вычислений и процедурой модификации исходного текста программы под наиболее эффективный вариант распараллеливания;

2) метод преобразования параллельно-конвейерных программ, содержащих большое число условных операторов, отличающийся от известных автоматической процедурой оценки эффективности структурной реализации условных операторов;

3) метод преобразования параллельно-конвейерных программ, соответствующих связанным изоморфным информационным подграфам, отличающийся от известных наличием процедуры выделения конструкций, описывающих связанные изоморфные подграфы, и процедуры модификации исходного текста программы для организации эффективных параллельных вычислений;

4) структура препроцессора языка программирования высокого уровня СОЬАМО, отличающаяся наличием процедур, изменяющих организацию вычислений.

Основные научные результаты диссертационной работы опубликованы в работах [69, 71, 73, 77, 78, 87].

Предложенные в диссертации новые результаты строго аргументированы и оценены по сравнению с известными работами в рассматриваемой области. Полученные научные результаты используются в различных организациях РФ, что подтверждается соответствующими актами о внедрении.

Все научные результаты, полученные при решении научной задачи создания методов и алгоритмов препроцессора языка программирования высокого уровня, минимизирующих время портации параллельно-конвейерных программ для различных архитектур и конфигураций РВС при заданном уровне реальной производительности системы, получены автором лично.

Таким образом, в диссертации решена новая научная задача, которая является актуальной и имеет существенное научно-практическое значение для системного программного обеспечения высокопроизводительных вычислительных систем.

Список литературы диссертационного исследования кандидат технических наук Коваленко, Алексей Геннадьевич, 2013 год

1. Гергель, В.П. Технологии построения и использования кластерных систем / Интернет университет информационных технологий intuit.ru -электронный ресурс. http://www.intuit.ru/department/supercomputing/tbucs/

2. Воеводин, Вл.В. «Вычислительное дело и кластерные системы» Текст.: монография / Вл.В. Воеводин, С.А. Жуматий. М.: Изд-во МГУ, 2007.- 150 с.

3. Каляев, A.B. Многопроцессорные системы с перестраиваемой архитектурой: концепции развития и применения Текст. / A.B. Каляев, И.И. Левин // Наука производству, 1999. - № 11. - С. 11-19.

4. Грушвицкий Р. И., Мурсаев А. X., Угрюмов Е. П. Проектирование систем на микросхемах с программируемой структурой. С-Пб.: БХВ-Петербург, 2006. - С. 736.

5. Система CATAPULT С SYNTESIS. С++ FPGA Текст. / А. Лохов, И. Селиванов // ЭЛЕКТРОНИКА: Наука, Технология, Бизнес «Системы проектирования». - Выпуск № 5/2005.9. http://fpga.parallel.ru/lang.html.10. http://colamo.parallel.ru/

6. Смирнов А. Д. Архитектура вычислительных систем : Учебное пособие для вузов. М.: Наука, 1990. - С. 104. - 320 с.

7. Скотт Мюллер. Модернизация и ремонт ПК = Upgrading and Repairing PCs. 17-е изд. - М.: Вильяме, 2007. - С. 59-241.

8. Зиатдинов С.И., Осипов Л.А. Проектирование специализированных вычислителей цифровой обработки сигналов: Учеб. пособие / СПбГУАП. СПб, 2002. 75 с.

9. Жан М. Рабаи, Ананта Чандракасан, Боривож Николич. Цифровые интегральные схемы. Методология проектирования = Digital Integrated Circuits. 2-е изд. - М.: Вильяме, 2007. - 912 с.

10. Лысаков К.Ф, Малько В.В. Современные подходы для создания высокопроизводительных вычислительных систем Электронный ресурс. / http://www.ict.nsc.ru/wsAnS/I2005/9276/Lysakov.htm

11. Э. Парр. Программируемые контроллеры: руководство для инженера. М.: БИНОМ. Лаборатория знаний, 2007. - 516 с.

12. Минаев И.Г. Программируемые логические контроллеры. Практическое руководство для начинающего инженера. /И.Г. Минаев, В.В. Самойленко Ставрополь: АГРУС, 2009. - 100 с.22. http://www.chipinfo.ru/literature/chipnews/200006/18.html

13. Солонина А. И., Улахович Д. А., Яковлев JI. А. Алгоритмы и процессоры цифровой обработки сигналов. СПб: БХВ-Петербург, 2001. -464 с.

14. Бродин В. Б., Калинин А. В. Системы на микроконтроллерах и БИС программируемой логики. М.: ЭКОМ, 2002.

15. Суворова Е., Шейнин Ю. Проектирование цифровых систем на VHDL. СПб.: BHV, 2003. - С. 576.44. http://www.allhdl.ru/verilog.php45. http://ru.wikipedia.org/wiki/AHDL

16. Рубанов В.В. Обзор методов описания встраиваемой аппаратуры и построения инструментария кросс-разработки Электронный ресурс. -http://citforum.ru/programming/embedded/languages/2. shtml

17. Open SystemC Initiative, http://www.systemc.org.48. http://www.sai.msu.su/sal/Z/1 /СYNLIB.html49. http://www.impulseaccelerated.com50. http://agilityds.com/products/cbasedproducts/dkdesignsuite/handelc.aspx51. http://www.mitrionics.com

18. Xoap 4., Взаимодействующие последовательные процессы. M: Мир, 1989-264 с.53. http://www.mentor.com

19. Левин, И.И. Язык программирования высокого уровня для многопроцессорной системы с программируемой архитектурой Текст.: сборник трудов / И.И. Левин, В.Ф. Гузик, О.О. Сафронов // Распределенная обработка информации. Новосибирск, 1991.

20. Левин, И.И. Язык параллельного программирования высокого уровня для структурно-процедурной организации вычислений Текст. / И.И.

21. Левин // Труды Всероссийской научной конференции "Высокопроизводительные вычисления и их приложения", Черноголовка. -М.: Изд-во МГУ, 2000. С. 108-112.

22. Левин, И.И. О языке макроассемблера комплекта БИС с программно-перестраиваемой структурой Текст. / И.И. Левин, О.О. Сафронов // Архитектура ЭВМ и машинное моделирование. Таганрог: Изд-во ТРТИ, 1989.

23. Хювёнен Э., Сеппянен Й. Мир Лиспа. В 2-х т. / Пер. с финск. М.: Мир, 1990.65. http://caml.inria.fr

24. Браун П. Дж. Макропроцессоры и мобильность программного обеспечения. Серия: Математическое обеспечение ЭВМ. М. Мир 1978 г. 215с.67. http://lib.custis.ru/M4

25. Коваленко, А.Г. Макроконвейерная реализация алгоритмов аутентификации на языке высокого уровня COLAMO Текст. / А.Г. Коваленко // Известия ЮФУ. Технические науки. Таганрог: Изд-во ТТИ ЮФУ, 2012. - №4. - С. 210-215.

26. Глушков В. М, Погребинский С. Б, Рабинович 3. Л. О развитии структур многопроцессорных вычислительных машин, интерпретирующих языки высокого уровня. Управляющие системы и машины. 1978 г. № 6 -с.61-66.

27. Глушков В. М. Об архитектуре высокопроизводительных машин. -Препринт Института Кибернетики № 78-65, Киев, 1978. 41 с.

28. Иванов А.И., Коновальчик П.М. Методы организации параллельно-конвейерных вычислений для решения расчетоемких задач // Информационные технологии. Москва, 2004. № 12. - С. 38-43.82. http://ru.wikipedia.org/wiki/THCTorpaMMa(cTaTHCTHKa)

29. Федотов, И.Е. Некоторые приемы параллельного программирования: Текст.: учебное пособие / И.Е. Федотов. М.: Изд-во МГИРЭА (ТУ), 2008. - 188 с.

30. Карпов, Ю.Г. Теория и технология программирования. Основы построения трансляторов Текст.: монография / Ю.Г. Карпов. СПб.: БХВ-Петербург, 2005. - 272 с.

31. Хантер, Р. Проектирование и конструирование компиляторов Текст.: монография / Р. Хантер; пер. с англ. М.: Финансы и статистика, 1984.-232 с.

32. Вайнгартен, Ф. Трансляция языков программирования Текст.: монография / Ф. Вайнгартен. М.: Мир, 1977.

33. Ахо, А. Теория синтаксического анализа, перевода и компиляции Текст.: монография / А. Ахо, Дж. Ульман. М.: Мир, 1978.

34. Агаян Г.М., Виноградов Н.С., Гончарский A.B., Овчинников С.Л., Романов С.Ю. Диагностика трехмерных сред методами синтезированной апертуры // Вычислительные методы и программирование. 2007. 8, №2, С. 510.

35. Самарский А. А., Николаев Е. С. Методы решения сеточных уравнений / Главная редакция физико-математической литературы изд-ва «Наука», М., 1978. 592 с.

36. Мэтьюз Д., Финк К. Численные методы. Использование MATLAB, 3-е изд.,пер. с англ. М.:изд. Дом Вильяме, 2001. - 720с.

37. Данилин О. Е., Бадамшин Б. И. Задача оптимизации удельного расхода топлива ТВВД на основе интеллектуальных методов управления // Электронные устройства и системы: Межвуз. науч. сб. Уфа: УГАТУ, 2008. С. 103-106.

38. Гусев Ю.М., Данилин О. Е., Бадамшин Б. И. Система автоматического управления ТВВД с оптимизацией удельного расхода топлива // Вестник УГАТУ: Системный анализ, управление и обработка информации. Уфа: УГАТУ, 2011. Е.15, № 5. С. 12-21.

39. Гладков JI. А., Курейчик В. В., Курейчик В. М. Генетические алгоритмы: Учебное пособие. 2-е изд. - М: Физматлит, 2006. - С. 320.

40. Рутковская Д., Пилиньский М., Рутковский Л. Нейронные сети, генетические алгоритмы и нечеткие системы 2-е изд. - М: Горячая линия-Телеком, 2008. - С. 452.

41. Кулижников A.M., Шабашева М.А. Георадары в дорожном строительстве. М., 2000. - 52 с. - (Автомобильные дороги: Обзор, информ. / Информавтодор; Вып.2).

42. Коваленко, А.Г. Решение задачи диагностики дорожных покрытий на реконфигурируемой вычислительной системе с применением языка COLAMO Текст. / А.Г. Коваленко // Искусственный интеллект. Донецк: Наука i осв1та, 2009. - №.3 - С.64-67.

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