Актуальность работы. Курс на модернизацию отечественной экономики, перевод её на рельсы инновационного развития невозможен без создания современной элементной базы для вычислительных систем и систем управления различного назначения на основе новейших достижений микроэлектронной технологии. Наличие такой элементной базы является необходимым условием развития высокотехнологичных отраслей промышленного производства, и предоставляет конкурентные преимущества как в коммерческом, так и в военно-стратегическом плане.
Существующий в мире уровень разработок микроэлектронной элементной базы в настоящее время очень высок, и достижения лидеров в этой области, таких, как компании Intel, Texas Instruments, Analog Devices предоставляют широчайшее возможности для создания систем управления и обработки информации самого различного назначения. Однако не является секретом, что, как и в прежние годы, странами северо-атлантического альянса проводится политика ограничения поставок на российский рынок новейшей элементной базы, которая могла бы быть использована для создания систем вооружений, в связи с чем всё большую остроту приобретает проблема импортозамещения.
Ключевыми элементами, на базе которых создаются современные вычислительные и управляющие системы, являются микропроцессоры — программируемые вычислительные устройства различной архитектуры и назначения, в том числе цифровые процессоры обработки сигналов — DSP (Digital Signal Processors).
В разработку теории и практики построения вычислительных систем и микропроцессорной техники существенный вклад внесли известные российские ученые: С. А. Лебедев, В. М. Глушков, В. С. Бурцев, Б. А. Бабаян, Л. Н. Преснухин,.
A.И.Галушкин, В. А. Шахнов, В. П. Корячко и другие. В создании новейших архитектур процессоров, а также в области практической реализации процессоров в виде интегральных схем участвовали отечественные предприятия: ИТМ ВТ им. С. А. Лебедева, НИИСИ РАН, НИИМА «Прогресс», НТЦ «Модуль», ЗАО МЦСТ, ГУП НПЦ «ЭЛВИС» и другие. Достигнутые в этой области успехи связаны с именами таких ученых, как Ю. В. Гуляев, В. Б. Бетелин, К. А. Валиев, Г. Я. Гуськов,.
B.Г.Немудров, Г. Я. Красников, А. Л. Стемпковский и многие другие.
Со времени появления первых вычислительных машин важнейшим направлением их совершенствования является повышение скорости вычислений, т. е. производительности. При этом уже на первых порах стало понятно^ что повышение производительности достигается не только за счёт лучшей элементной базы и технологии производства, но также и за счёт совершенствования принципов их построения, их архитектуры.
Одним из наиболее эффективных архитектурных методов повышения производительности микропроцессоров является конвейеризация. Конвейерная обработка команд применяется практически во всех современных микропроцессорах.
Общая идея конвейера связана с разбиением процесса обработки данных на этапы и организацией их параллельного во времени выполнения. Тем самым реализуется принцип параллелизма (или «совмещение операций») на уровне команд. Принцип совмещения операций был выдвинут академиком С. А. Лебедевым и впервые реализован в машине М20 в 1956 году. В дальнейшем эта идея получила развитие и была успешно реализована в многочисленных устройствах цифровой обработки данных. При конвейерной обработке увеличение числа фаз конвейера, в принципе, должно приводить к увеличению производительности. Однако на практике существуют программные ограничения, из-за которых увеличение глубины конвейера выше некоторого предела становится неэффективным. Эти ограничения связаны с наличием в исполняемых приложениях зависимостей по данным и программных переходов, что приводит к конфликтам между операциями в конвейере и вынужденным его остановкам, вызывающим падение производительности.
Анализируя структуру конвейера популярных семейств современных DSP-процессоров ведущих мировых фирм-производителей (Texas Instruments, Analog Devices и других), можно отметить следующее:
— современные DSP-процессоры (особенно процессоры с плавающей точкой) имеют достаточно большую глубину конвейера (10−11 фаз), которая влияет на скорость исполения тех или иных программных приложений в зависимости от их статистических характеристик;
— у пользователя нет возможности оптимизировать структуру конвейера выбранного им DSP-процессора под свое конкретное приложение, он вынужден использовать его «так, как есть».
В связи с этим при разработке новых микропроцессоров, и особенно DSP-процессоров, назначение которых состоит в массовой высокопроизводительной обработке данных, актуальной является задача построения оптимального по производительности конвейера инструкций с учетом статистических характеристик тех исполняемых программ.
Задача оптимизации конвейера становится ещё более актуальной при проектировании DSP-ядер для многоядерных систем на кристалле в связи со всё более возрастающей сложностью таких систем и повышающимися требованиями к производительности DSP-ядер в их составе, а также усложнением самого процесса проектирования. Сложность задачи возрастает в связи с необходимостью учета в этом случае временных характеристик используемого технологического базиса (библиотеки элементов) и связанных с этим ограничений.
Нахождение оптимальной глубины конвейера может выполняться либо математическими методами, либо путем прямого моделирования работы конвейера, причем на практике чаще используется именно второй метод, несмотря на то, что достоинства математического подхода к оптимизации достаточно очевидны. Точная аналитическая формула, выражающая зависимость производительности проектируемого DSP-ядра от глубины его конвейера и статистических характеристик исполняемой программы, позволяет заранее предсказать поведение конвейера при различных значениях указанных характеристик и аналитически определить оптимальную глубину конвейера, тем самым облегчив и ускорив процесс проектирования. Однако представленные к настоящему времени в научно-технической литературе математические модели, описывающие работу конвейера с учётом статистических характеристик исполняемой программы и позволяющие произвести его оптимизацию, имеют лишь приближённый характер.
Поэтому объектом исследования в данной работе являются ядра процессоров сигнальной обработки (DSP-ядра) для многоядерных систем на кристалле, а предметом исследования — принципы построения и разработка DSP-ядер с оптимальным по производительности конвейером инструкций.
Исходя из анализа существующих проблем, связанных с реализацией высокопроизводительных DSP-ядер для многоядерных систем на кристалле, были I сформулированы следующие цели и задачи диссертационной работы.
Целью диссертационной работы является разработка принципов построения оптимального по производительности конвейера DSP-ядра с учётом как стати стических характеристик исполняемых программ, так и временных характеристик используемого технологического базиса, и создание на этой основе серии масштабируемых DSP-ядер для вычислительных и управляющих систем.
Для достижения этой цели необходимо решить следующие задачи:
1. Вывести математическую зависимость производительности DSP-ядра от числа фаз (глубины) его конвейера при наличии в исполняемом приложении программных переходов и зависимостей по данным, а также соотношения для расчета оптимальной по производительности глубины конвейера.
2. Разработать методику определения статистических характеристик программной трассы (относительных частот программных переходов и зависимостей по данным) посредством построения и редукции графа зависимостей по данным.
3. Разработать комплексную методику оптимизации конвейера DSP-ядра по производительности с учётом статистических характеристик исполняемых программ и временных характеристик используемого технологического базиса. «.
4. На основе комплексной методики выполнить. разработку серии масштабируемых DSP-ядер с оптимальным по производительности конвейером для различных задач сигнальной обработки и различных технологических базисов.
5. Провести анализ и разработать принципы и способы построения многоядерных систем на кристалле с реконфигурируемыми потоками данных и управления на основе разработанных DSP-ядер, внедрить разработанные ядра в состав многоядерных систем на кристалле и экспериментально определить достигаемую ими производительность.
Методы исследования. Для решения поставленных задач использовались теория и методы оптимизации, теория программирования, теория графов, теория параллельных вычислительных систем, теория и алгоритмы цифровой обработки сигналов, теория и методы проектирования интегральных схем.
Научная новизна. При выполнении диссертационной работы получены следующие новые научные результаты.
1. Выведены математические соотношения, выражающие зависимость производительности DSP-ядра от глубины его конвейера при наличии в исполняемом приложении программных переходов и зависимостей по данным.
2. Выведены математические соотношения для расчета оптимальной по производительности глубины конвейера. .
3. Разработана методика определения статистических характеристик программной трассы посредством построения и редукции графа зависимостей по данным. Предложены и теоретически обоснованы правила редукции графа зависимостей.
4. Впервые разработана комплексная методика оптимизации конвейера DSP-ядра по производительности с учётом как статистических характеристик исполняемых программ, так и временных характеристик технологического базиса, предназначенная для практического проектирования DSP-ядер.
5. Проведен анализ, предложены принципы и способы построения многоядерных систем на кристалле с реконфигурируемыми потоками данных и управления и аппаратными средствами синхронизации вычислительных потоков на основе разработанных DSP-ядер.
Практическая значимость работы состоит в следующих достижениях.
1. Применение полученных в работе теоретических результатов позволило повысить, по сравнению с известными ранее методами, точность определения оптимальной глубины конвейера DSP-ядра. Для отдельных приложений повышение точности достигает 50%, что позволяет соответственно уменьшить аппаратные затраты на конвейеризацию при одновременном росте производительности на 10% и более.
2. Разработанная методика позволяет определить оптимальную глубину конвейера DSP-ядра аналитическими методами, не прибегая к ресурсоемкому моделированию, тем самым сокращая сроки проектирования на 20−25%.
3. Разработанная автором серия DSP-ядер ELcore-xx™ представляет собой библиотеку процессорных IP-ядер, многократно применяемых при проектировании многоядерных систем на кристалле различного назначения.
4. Внедрение разработанных DSP-ядер в состав многоядерных микросхем сигнальных процессоров позволило обеспечить их производительность на уровне сопоставимом или превосходящем лучшие мировые аналоги. В частности, DSP-кластер QELcore-09™ на частоте 500 МГц обеспечивает производительность 12 Гфлоп/с.
5. Предложенные принципы и способы построения многоядерных систем на кристалле обеспечивают объединение DSP-ядер в многоядерные кластеры с высокой скоростью обмена данными и аппаратной синхронизацией вычислительных потоков. В 4-ядерном DSP-кластере QELcore-09™ обеспечивается скорость обмена 80 Гбайт/с внутри кластера и 8 Гбайт/с — с центральными процессором.
В соответствии с Государственной стратегией импортозамещения микроэлектронных компонентов проведенное исследование является критически важнымввиду его направленности на создание высокопроизводительной отечественной элементной базы. Исследования проводились автором в рамках «Стратегии развития электронной промышленности России на период до 2025 года», утвержденной министром промышленности и энергетики РФ в 2007 г., а также «Приоритетных направлений развития науки, технологий и техники РФ».
Достоверность результатов работы обусловлена применением общепринятых математических методов оптимизации, математического моделирования, использованием систем автоматизированного проектирования, и подтверждается многолетним опытом эксплуатации DSP-ядер ELcore-xx™ в составе систем на кристалле, разработанных на основе теоретических и технических идей данной работы.
Внедрение результатов работы.
На основе полученных научных результатов автором была разработана серия DSP-ядер ELcore-xx™, на базе которой созданы микросхемы сигнальных процессоров семейства «Мультикор»: 1892ВМЗТ, 1892ВМ2Я, 1892ВМ4Я, 1892ВМ5Я, 1892ВМ7Я и др. Микросхемы сигнальных процессоров 1892ВМЗТ, 1892ВМ4Я, 1892ВМ5Я включены в «Перечень электрорадиоизделий, разрешенных к применению при разработке (модернизации), производстве и эксплуатации аппаратуры, приборов, устройств и оборудования военного назначения» (МОП 44 001.02−2009) МО РФ. Микросхемы семейства «Мультикор» были внедрены при разработке аппаратуры на 51 предприятии (см. Приложение 4). Среди них можно выделить системные концерны российской оборонной промышленности: ФГУП «НПО машиностроения», ОАО «Концерн «Созвездие», ОАО НПО «Алмаз» им. академика Расплетина, ОАО Концерн радиостроения «Вега», ФГУП ЦНИИ «Комета», ФГУП «НИИ «Вектор», ФГУП НПО «Орион», ФНПЦ «Раменское приборостроительное конструкторское бюро» и другие.
11 i.
Основные научно-технические результаты работы, основанные на исследованиях автора, использованы при выполнении 11-ти ОКР и НИР, проводившихся на предприятии ГУЛ НПЦ «ЭЛВИС» в течение ряда лет (см. Приложение 2).
Личный вклад автора. Все выносимые на защиту научные положения, проведенные в рамках диссертационной работы теоретические и экспериментальные исследования, разработка и внедрение выполнены автором лично.
Кроме того, автор участвовал в подготовке и проведении приемо-сдаточных испытаний изготовленных микросхем, в разработке программной, текстовой и конструкторской документации, а также проводил сопроводительные работы в местах эксплуатации изделий, созданных на базе изготовленных микросхем.
На защиту выносятся:
— математические соотношения, выражающие зависимость производительности DSP-ядра от глубины конвейера и статистических характеристик (относительных частот программных переходов и зависимостей по данным) программной трассы;
— математические соотношения для расчета оптимальной по производительности глубины конвейера DSP-ядра;
— методика определения статистических характеристик программной трассы посредством построения и редукции графа зависимостей по данным;
— комплексная методика оптимизации конвейера DSP-ядра по производительности с учётом статистических характеристик прикладных программ и временных характеристик технологического базиса и разработанная на ее основе серия масштабируемых DSP-ядер для обработки данных в форматах 8/16/32/64/128 разрядов для различных задач сигнальной обработки и технологических базисов;
— принципы и способы построения многоядерных систем на кристалле с реконфи-гурируемыми потоками данных и управления и аппаратными средствами синхронизации вычислительных потоков на основе разработанных DSP-ядер и внедрение разработанных ядер в состав ряда многоядерных систем на кристалле.
Апробация работы. Основные результаты работы докладывались и обсуждались на: международной научно-технической конференции «Современные телевизионные технологии. Состояние и направления развития», Москва, 2004; Всероссийской научно-технической конференции «Проблемы разработки перспективных микроэлектронных систем — 2005», Истрамеждународной научно-технической конференции «Современные телевизионные технологии. Состояние и направления развития», Москва, 2006; Всероссийской научно-технической конференции «Проблемы разработки перспективных микроэлектронных систем — 2006», Истра, 2006; Всероссийской научно-технической конференции «Проблемы разработки перспективных микрои наноэлектронных систем — 2008», Истра.
По теме диссертации опубликовано 24 научных работы. Из них в ведущих рецензируемых журналах, входящих в перечень, утвержденный ВАК — 7, тезисов докладов всероссийских конференций -10,1 авторское свидетельство об изобретении. Без соавторов опубликовано 8 работ.
Структура и объем диссертации
Диссертационная работа состоит из введения, четырех глав, заключения, списка использованной литературы и приложений. Объем основного текста диссертации — 170 страниц. В работе содержится 77 рисунков и 15 таблиц.
Список литературы
содержит 93 наименования.
Выводы.
1. В соответствии с предложенной комплексной методикой была определена оптимальная глубина конвейера DSP-ядра с учетом статистических характеристик реальных приложений сигнальной обработки и рассчитанной при помощи схемотехнического синтеза параметра у, характеризующего свойства используемого технологического базиса.
2. На основе выполненных оценок в рамках работ по созданию библиотеки процессорных ядер аппаратно-программной платформы «Мультикор» автором была разработана серия DSP-ядер ELcore-xx™ с различной структурой конвейера, для различных задач сигнальной обработки.
3. Разработанные DSP-ядра серии ELcore-xx™ имеют сравнительно короткий конвейер инструкций — от 3 до 7 фаз, с исполнительной частью от 1 до 3 фаз (для сравнения, конвейер процессора TS201 имеет 10 фаз с исполнительной частью 5 фаз). Это позволяет сократить потери, связанные с торможением конвейера при наличии в исполняемом приложении программных переходов и зависимостей по данным.
4. На основе DSP-ядер серии ELcore-xx™ в рамках платформы «Мультикор» было разработано и внедрено в серийное производство семейство многоядерных гетерогенных систем на кристалле — сигнальных процессоров 1892ВМЗТ (МС-12), 1892ВМ2Я (МС-24), 1892ВМ4Я (М-ЦОС), 1892ВМ5Я (ЦПОС), 1892ВМ7Я (МС-0428), NVCom-01. Микросхемы сигнальных процессоров 1892ВМЗТ, 1892ВМ4Я, 1892ВМ5Я включены в «Перечень электрорадиоизделий, разрешенных к применению при разработке (модернизации), производстве и эксплуатации аппаратуры, приборов, устройств и оборудования военного назначения» (МОП 44 001.02−2009) Министерства Обороны РФ.
5. Применение DSP-ядер серии ELcore-xx™ при создании перечисленных микросхем сигнальных процессоров позволило обеспечить их производительность на уровне ведущих мировых производителей — фирм Analog Devices и Texas Instruments. Так, изготовленный по 0,13-мкм технологии процессор NVCom-01 дает такую же производительность при вычислениях в формате плавающей точки, что и процессор TS201 фирмы Analog Devices — 3,6 Гфлоп/са при вычислениях в 16-разрядном формате фиксированной точки даже превосходит его -19,2 млрд. оп/с против 14,4 млрд. оп/с.
6. Рассмотрены проблемы, предложены принципы и способы построения многоядерных вычислительных систем на кристалле с реконфигурируемыми потоками данных и управления на основе разработанных DSP-ядер. К основным принципам построения таких систем можно отнести: 1) масштабируемость- 2) высокую скорость обмена данными, соответствующую скорости выполнения вычислений- 3) аппаратную поддержку синхронизации вычислительных потоков в DSP-ядрах.
7. В результате применения предложенных принципов и способов построения многоядерных вычислительных систем были спроектированы 4-ядерный DSP-кластер QELcore-28™ для 5-ядерной системы на кристалле 1892ВМ7Я и QELcore-091M для 6-ядерной системы на кристалле СБИС МП. В DSP-кластере QELcore-09 ш на тактовой частоте 500 МГц обеспечивается скорость обмена 80 Гбайт/с внутри кластера и 8 Гбайт/с — с центральным процессором.
8. В разработанных DSP-кластерах используется метод аппаратной поддержки синхронизации вычислительных потоков, основанный на использовании буфера обмена XBUF. Буфер обмена XBUF представляет собой многопортовый регистровый файл и допускает одновременное чтение одной и той же ячейки со стороны нескольких абонентов. Механизм синхронизации основан на том, что каждая ячейка XBUF снабжена дополнительным битом состояния для сохранения информации о типе последней транзакции. В синхронном режиме для конкретного регистра XBUF обязательно должны чередоваться операции чтения записи, если какое-либо ядро пытается осуществить запись после записи или чтение после чтения — оно блокируется.
9. DSP-кластер QELcore-09™, спроектированный по технологическим нормам 90 нм, работая на тактовой частоте 500 МГц, обеспечивают производительность 12 млрд. операций с плавающей точкой в секунду, что является на сегодняшний день наивысшим достижением среди отечественных сигнальных процессоров.
Заключение
.
В работе изложен комплекс научно обоснованных разработок, направленных на повышение производительности процессорных ядер сигнальной обработки (DSP-ядер) в составе многоядерных систем на кристалле путем построения оптимального по производительности конвейера инструкций с учётом как статистических характеристик исполняемых прикладных программ, так и временных характеристик используемого технологического базиса.
Наиболее значимые результаты работы состоят в следующем.
1. Выведены математические соотношения, выражающие зависимость производительности DSP-ядра от числа фаз его конвейера при наличии в исполняемом приложении программных переходов и зависимостей по данным, и позволяющие произвести расчет оптимальной по производительности глубины конвейера. Полученные соотношения являются более точными, чем известные ранее. Для отдельных приложений повышение точности достигает 50%, что позволяет соответственно уменьшить аппаратные затраты на конвейеризацию при одновременном росте производительности 10% и более.
2. Разработана методика определения статистических характеристик программной трассы, влияющих на производительность конвейера DSP-ядра (относительных частот программных переходов и зависимостей по данным), посредством построения и редукции графа зависимостей по данным. Предложены и теоретически обоснованы правила редукции графа зависимостей.
3. Впервые разработана комплексная методика оптимизации конвейера DSP-ядра по производительности с учётом как статистических характеристик исполняемых программ, так и временных характеристик технологического базиса, предназначенная для практического проектирования DSP-ядер. Разработанная методика позволяет определить оптимальную глубину конвейера DSP-ядра аналитическими методами, не прибегая к ресурсоемкому моделированию, тем самым сокращая сроки проектирования на 20−25%.
4. На основе предложенной методики разработана серия масштабируемых DSP-ядер ELcore-xx™ для обработки данных в форматах 8/16/32/64/128 разрядов с оптимальным по производительности конвейером для различных задач сигнальной обработки и технологических базисов. Разработанная серия DSP-ядер представляет собой библиотеку процессорных IP-ядер, многократно применяемых при проектировании многоядерных систем на кристалле различного назначения.
5. Внедрение разработанных DSP-ядер в состав многоядерных микросхем сигнальных процессоров обеспечивает их производительность на уровне сопоставимом или превосходящем лучшие мировые аналоги. В частности, DSP-кластер QELcore-09rM на частоте 500 МГц обеспечивает производительность 12 Гфлоп/с.
6. Проведен анализ и предложены способы построения многоядерных систем на кристалле с реконфигурируемыми потоками данных и управления на основе разработанных DSP-ядер, обеспечивающие возможность объединения DSP-ядер в многоядерные кластеры с аппаратными средствами синхронизации вычислительных потоков и высокой скоростью обмена данными. Так, в 4-ядерном DSP-кластере QELcore-091M обеспечивается скорость обмена 80 Гбайт/с внутри кластера и 8 Гбайт/с — с центральным процессором.
7. На основе разработанной автором серии DSP-ядер ELcoreXX™ были созданы микросхемы сигнальных процессоров семейства «Мультикор»: 1892ВМЗТ, 1892ВМ2Я, 1892ВМ4Я, 1892ВМ5Я, 1892ВМ7Яи др. Микросхемы сигнальных процессоров 1892ВМЗТ, 1892ВМ4Я, 1892ВМ5Я включены в «Перечень электрорадиоизделий, разрешенных к применению при разработке (модернизации), производстве и эксплуатации аппаратуры, приборов, устройств и оборудования военного назначения» (МОП 44 001.02−2009) Министерства Обороны РФ. Микросхемы семейства «Мультикор» внедрены на 51 предприятии.