Содержание к диссертации
Введение
1. Анализ основных вопросов синтеза архитектуры многопроцессорной СЦОС 11
1.1. Анализ основных тенденций развития бортовых вычислительных систем и комплексов зарубежных летательных аппаратов 11
1.2. Анализ архитектур существующих и перспективных зарубежных специализированных ВС 14
1.3. Анализ архитектур модулей цифровой обработки сигналов, применяемых в зарубежных вычислительных средствах 17
2. Синтез архитектуры многопроцессорной системы цифровой обработки сигналов 21
2.1. Анализ основных задач, решаемых при синтезе архитектуры многопроцессорной СЦОС 21
2.2. Анализ особенностей типовых алгоритмов цифровой обработки сигналов 25
2.3. Основные характерные особенности архитектуры СЦОС 29
2.4. Синтез открытой масштабируемой архитектуры СЦОС 36
2.5. Синтезированные архитектуры базовых модулей ОМА СЦОС 39
3. Оптимизация укладки графов программ для эффективного использования регистровой памяти ЦСП 50
3.1. Архитектурно-структурная организация памяти вычислительных систем 50
3.2. Эквивалентное преобразование программ 51
3.3. Укладки графов программ и модели распределения загрузки регистровой памяти 52
3.4. Сетевая модель определения эффективной загрузки сверхбыстрой памяти ЦСП 58
3.5. Задача эффективной загрузки регистровой памяти ЦСП при выполнении
программы группой взаимодействующих процессоров 61
4. Конкретизация принципов функционирования ОМА СЦОС и структуры ее базовых модулей в привязке к ЦСП 1В577 70
4.1. Особенности архитектуры отечественного цифрового сигнального процессора 1В577 70
4.2. Конкретизация структурной схемы МОС ОМА СЦОС в привязке к архитектуре и характеристикам ЦСП 1В577 74
4.3. Конкретизация структурной схемы и принципов функционирования модуля буфера данных ОМА СЦОС 82
4.4. Конкретизация принципов функционирования и структурной схемы многопроцессорной СЦОС, использующей базовые модули на ЦСП 1В577 85
4.5. Привязка СЦВМ «Багет-х5» и ЭВМ «Прибор 16» к ОМА СЦОС 87
4.6. Сравнительные характеристики СЦВМ «Багет-55» и зарубежных ВС, решающих аналогичные задачи в современных БРЛС ЛА 92
Заключение 95
Литература 96
- Анализ архитектур существующих и перспективных зарубежных специализированных ВС
- Анализ особенностей типовых алгоритмов цифровой обработки сигналов
- Укладки графов программ и модели распределения загрузки регистровой памяти
- Конкретизация структурной схемы и принципов функционирования модуля буфера данных ОМА СЦОС
Введение к работе
Актуальность темы. Системы цифровой обработки сигналов (СЦОС) являются составной частью изделий во многих областях: медицине, экспериментальной физике, военной технике (ВТ), гражданской авиации, и т.д.
Отличительными особенностями СЦОС являются:
многофункциональность, например, в авионике - обработка в СЦОС сигналов систем предупреждения и обнаружения угрозы, РЛС системы борьбы с воздушными целями, РЛС системы борьбы с наземными целями и т.п.;
многорежимность, например, в СЦОС локационных изделий - работа с различными типами сигналов и методами их обработки, с различной частотой следования зондирующих сигналов и т.п.;
обработка сигналов в реальном масштабе времени;
характерные времена переключения задач или режимов порядка десятков-сотен мкс;
широкий динамический диапазон обрабатываемых сигналов (до 80-100 дБ в СЦОС изделий ВТ);
необходимость обеспечения малых массогабаритных характеристик, низкого энергопотребления, высокой надежности.
Наибольшее распространение в настоящее время СЦОС получили в изделиях военной техники, использующих радиоэлектронные и оптоэлектрон-ные системы и комплексы локации, радиоэлектронной борьбы и т.п.
К середине 1990-х г.г. возникла насущная необходимость разрешения следующих противоречий:
в экономической сфере - между объективными потребностями вооруженных сил страны в новом поколении систем цифровой обработки сигналов изделий ВТ и ограниченными возможностями финансирования развития и эксплуатации изделий ВТ;
в технической сфере - между объективно требуемым уровнем технических характеристик нового поколения СЦОС изделий ВТ и техническим уровнем предшествующего поколения систем.
В рамках существовавших архитектур функциональная специализация СЦОС изделий ВТ обусловливала необходимость заново осуществлять аппаратно-программную разработку системы для каждого нового изделия. Разработка таких СЦОС - дорогостоящий, сложный и трудоемкий процесс с типовой продолжительностью до принятия изделия на вооружение порядка 7 - 10 лет.
При больших массогабаритных характеристиках и энергопотреблении, отечественные СЦОС предшествующего поколения обладали пиковой производительностью порядка десятков МФлопс и реализовывали узкий круг алгоритмов. Вычисления выполнялись с фиксированной точкой, что создавало проблемы для обеспечения необходимого динамического диапазона обрабатываемых сигналов.
Типичным примером такой системы может служить программируемый процессор сигналов (ППС) Ц-200 разработки конца 1980-х г.г., используемый в СЦОС изделий ВТ в ПВО и авиационных комплексах. ППС Ц200 обладает производительностью порядка 200 млн. оп/с (7,1 млн. операций типа «бабочка» процедуры БПФ в секунду) при массе 50 кг, объеме 53 дм3 и потребляемой мощности 1,8 КВт. Удельное быстродействие ППС Ц200 равно 3,77 хЮ6 оп/с дм3, а удельное энергопотребление - 1,11хЮ8 оп/с КВт. Формат обрабатываемых чисел - 12 разрядов с фиксированной точкой.
При требуемой к середине 1990-х г.г. производительности СЦОС изделий ВТ на уровне 1 - 10 ГФлопс их реализация на базе средств типа ППС Ц200 практически не возможна.
Объективной предпосылкой для возможности разрешения возникших противоречий стало появление соответствующей элементной базы с требуемым уровнем технических характеристик, в том числе - программируемых цифровых сигнальных процессоров (ЦСП). В нашей стране в настоящее время единственным серийно выпускаемым программируемым ЦСП является процессор 1В577. Обоснование выбора зарубежного аналога-прототипа для этого процессора и решение основных вопросов его разработки и воспроизводства (данные вопросы выходят за рамки диссертации) были осуществлены автором данной работы.
Исходя из выше изложенного, исходная постановка задачи в данной работе формулируется следующим образом: необходим синтез архитектуры многопроцессорной СЦОС как базиса построения унифицированного ряда специализированных вычислительных машин для использования в различных областях техники, в том числе, в перспективных изделиях ВТ. Архитектура должна была обеспечить построение СЦОС с требуемыми техническими характеристиками при минимальной стоимости и сроках разработки изделий. Работы по решению этой задачи в середине 1990-х годов в нашей стране были пионерскими.
Цель диссертационной работы. Целью данной диссертационной работы является синтез архитектуры многопроцессорной системы цифровой обработки сигналов и ее составных частей, оптимизированной под задачи изделий ВТ в привязке к отечественному ЦСП 1В577.
Основные задачи исследований. Для достижения поставленных целей потребовалось:
выполнить анализ архитектур существующих и перспективных зарубежных специализированных вычислительных систем (ВС) в военных приложениях и основных тенденций их развития;
выполнить анализ характерных особенностей типовых алгоритмов цифровой обработки сигналов;
осуществить анализ основных задач, решаемых при синтезе архитектуры отечественной многопроцессорной СЦОС;
осуществить синтез архитектуры многопроцессорной СЦОС, инвариантной к типу программируемого цифрового сигнального процес-
сора, а также синтез архитектуры ее базовых модулей, с учетом характерных особенностей типовых алгоритмов цифровой обработки сигналов и задач, решаемых СЦОС в составе локационных изделий ВТ;
произвести разработку методик обеспечения эффективного использования регистровой памяти процессоров системы для оптимизации программ обработки;
осуществить анализ особенностей архитектуры ЦСП 1В577;
осуществить конкретизацию основных принципов построения и функционирования базовых модулей СЦОС в привязке к архитектуре и характеристикам отечественного ЦСП 1В577, а также принципов построения и функционирования многопроцессорной СЦОС, использующей базовые модули на ЦСП 1В577.
Методы исследований. При решении задач данной диссертационной работы анализ материалов, предопределяющий завершенность и оптимальность синтеза архитектуры многопроцессорной СЦОС изделий ВТ, базировался на следующих положениях:
синтез трактовался как метод научного исследования объекта, состоящий в его восприятии и построении как единого целого, в единстве и взаимной связи его частей как между собой, так и с окружением;
термин «архитектура» трактовался в широком смысле. Согласно определению, сформулированному в стандарте ANSI/IEEE 1471, архитектура - фундаментальный способ организации системы, продиктованный ее компонентами, их взаимным отношением, а также принципами, в соответствии с которыми осуществляется ее проектирование и развитие;
синтез архитектуры рассматривался как поиск и установление оптимального способа организации системы и оптимального построения ее составных частей с исследованием, анализом и решением комплекса вопросов, предопределяющих облик системы, принципы ее построения и функционирования как единого целого при условии достижения требуемых пользователю характеристик и свойств.
При разработке методик обеспечения эффективного использования регистровой памяти процессоров для оптимизации программ обработки были использованы сетевые модели и аппарат теории графов.
Научная новизна работы. К основным научным результатам диссертационной работы относятся:
1) Синтезированная архитектура многопроцессорной системы цифровой обработки сигналов и ее базовых модулей, характеризующаяся:
- ориентированностью на применение программируемого ЦСП, под
держивающего крупномасштабный метод распараллеливания про
цедуры цифровой обработки сигналов, при инвариантности к типу
ЦСП;
открытостью, базирующейся на применении стандартизованных решений;
многошинной структурой межмодульных связей, обеспечившей необходимый и достаточный уровень предсказуемости временной диаграммы функционирования системы в реальном масштабе времени, с разделением функционального назначения шин;
двунаправленной кольцевой сегментированной топологией информационных шин с организацией связи между соседними модулями системы по принципу «точка-точка», обеспечившей отсутствие технических ограничений на количество модулей, вводимых в состав системы и более высокую результирующую пропускную способность шин;
использованием потокового принципа ввода и распределения первичной информации, поддерживающего многоканальность ввода;
комплектованием в потоке первичной информации данных различных источников за счет их «цветовой» маркировки с возможностью их дальнейшего разделения по процессорам системы на проходе без участия процессоров;
применением многомерной формы представления потока первичной информации в канале, используемой для программно управляемого распределения потока по процессорам системы на проходе без участия процессоров
применением буферной памяти для согласования производительности процессоров и модулей системы с пропускной способностью каналов для поддержки обработки в реальном масштабе времени;
минимизацией номенклатуры базовых функциональных модулей архитектуры до трех типов;
поддержкой модульного принципа построения функционального программного обеспечения (ПО) при возможности использования сертифицированных библиотек стандартных, функционально завершенных программных модулей, обеспечивающих реализацию типовых алгоритмов сигнальной обработки;
поддержкой многопроцессорной параллельной обработки сигналов при крупномасштабном методе распараллеливания вычислений с поддержкой возможности «крупноблочной» синхронизации с использованием аппарата глобальных событий:
- на уровне процессоров в модуле с возможностью организации
как «слабой», так и «сильной» связи процессоров через общую память модуля,
- на уровне модулей с возможностью взаимодействия через общие
памяти модулей с использованием механизма удаленного прямого доступа в память;
- поддержкой гибкого масштабирования, расширения и реконфигу
рации систем для соответствия текущим потребностям пользовате
лей в течение всего жизненного цикла изделий без конструктивного
изменения систем за счет программной адаптируемости систем к
решаемым задачам. 2) Разработанные методики обеспечения эффективного использования регистровой памяти процессоров для оптимизации программ обработки. Практическая ценность работы заключается:
1) в разработке на основе синтезированной автором открытой масшта
бируемой архитектуры (ОМА) специализированных цифровых вычислитель
ных машин (СЦВМ) типа «Багет-х5» и «Прибор 16», обеспечивающих реали
зацию систем цифровой обработки сигналов в современных самолетных ра
диолокационных комплексах, в системах и комплексах ПВО, в гидроакусти
ческих системах и комплексах надводных кораблей (НК) и подводных лодок
(ПЛ):
при 32-разрядном формате представления обрабатываемых данных с плавающей точкой;
при многоканальности ввода при пропускной способности канала порядка 1 Гбит/с;
при пиковой производительности СЦВМ на уровне 1-10 ГФлопс;
при гибкой масштабируемости, расширяемости и реконфигурации систем на всех стадиях жизненного цикла;
в сведении к минимуму финансовых и временных затрат на разработку исполнений СЦВМ «Багет-х5» и «Прибор-16» для новых изделий ВТ за счет возможности их проектирования путем простого набора необходимого числа модулей из базового ряда и использования библиотек функционального ПО;
в преемственности базовых принципов архитектуры в СЦОС нового поколения СЦВМ типа «Соло-хх», разрабатываемых в настоящее время для перспективных изделий ВТ, в том числе:
по ориентации на ЦСП, поддерживающий крупномасштабный метод распараллеливания обработки при модульном построении функционального ПО;
по открытости архитектуры с поддержкой модульного принципа построения аппаратуры при минимизации типов базовых функциональных модулей, с поддержкой гибкого масштабирования, расширения и реконфигурации систем за счет их программной адаптации к решаемым задачам;
по многошинной структуре с разделенными функциями по вводу, распределению и передаче различных типов данных;
по синхронизации вычислений с использованием аппарата глобальных событий;
по эффективности организации связи между модулями системы по принципу «точка-точка».
Внедрение результатов диссертационной работы. Основные результаты диссертационной работы применены в современных изделиях ВТ, разработанных или разрабатываемых в ряде организаций РФ, в том числе - в
ОАО «НИИ Приборостроения им. В. В Тихомирова» (ОАО «НИИП»), г. Жуковский; ФГУП «Нижегородский научно-исследовательский институт радиотехники» (ФГУП «ННИИРТ»), г. Нижний Новгород; ФГУП «ЦНИИ «Мор-физприбор» (ОАО «Концерн «Океанприбор»), г. Санкт-Петербург. Внедрение результатов подтверждено соответствующими документами (Приложение Г).
Апробация работы. Основные результаты работы докладывались при проведении конференций по цифровой обработке сигналов, в том числе на XVIII научно-технической конференции в НИИП (г. Жуковский, 2006 г.), а также на заседаниях НТС Научно-исследовательского института системных исследований РАН, ЦНИИ «Морфизприбор», НИИП, Государственного Рязанского приборного завода и приемочных Комиссий МО РФ при рассмотрении результатов соответствующих НИР и ОКР по созданию унифицированных средств ЦВТ для МО РФ, выполнявшихся в том числе в рамках Межведомственной целевой программы «Интеграция-СВТ».
Публикации. По материалам диссертационных исследований опубликовано четырнадцать печатных работ и разработано более тридцати научно-технических отчетов и пояснительных записок по НИР и ОКР.
Структура и объем работы. Диссертация состоит из введения, четырех глав, заключения, списка литературы и четырех приложений. Она изложена на 100 страницах основного машинописного текста, 29 страниц занимают приложения, содержит 30 рисунков, 3 таблицы, включает библиографию из 66 наименований. Общий объем диссертации составляет 129 страниц.
В первой главе диссертации выполнен анализ архитектур существующих и перспективных зарубежных специализированных вычислительных систем и основных тенденций их развития, а также анализ архитектур модулей цифровой обработки сигналов ряда ведущих зарубежных фирм. Исходные материалы в привязке к началу выполнения работ по синтезу архитектуры многопроцессорной СЦОС - середине 1990-х г.г. - приведены в Приложениях А и Б.
Во второй главе представлены:
основные проблемные вопросы создания СЦОС изделий ВТ МО РФ и анализ основных задач, решение которых при синтезе архитектуры отечественной многопроцессорной системы цифровой обработки сигналов обеспечивает разрешение проблемных вопросов;
анализ особенностей типовых алгоритмов цифровой обработки сигналов. Исходные материалы приведены в Приложении В;
основные характерные особенности архитектуры СЦОС;
результаты синтеза архитектуры многопроцессорной СЦОС, являющейся открытой масштабируемой архитектурой, инвариантной к типу программируемого ЦСП, поддерживающему крупномасштабный метод распараллеливании процедуры цифровой обработки сигналов, а также результаты синтеза архитектуры базовых функциональных модулей СЦОС ОМА.
В третьей главе изложены результаты разработки методов оптимизации укладки графов программ для эффективного использования сверхбыстрой и регистровой памяти процессоров системы при обработке данных.
В четвертой главе приведены:
анализ особенностей архитектуры отечественного программируемого ЦСП1В577;
основные результаты конкретизации структурных схем и принципов функционирования модуля обработки сигналов и модуля буфера данных СЦОС ОМА в привязке к архитектуре и характеристикам ЦСП 1В577;
основные результаты конкретизации принципов функционирования многопроцессорной СЦОС, использующей базовые модули на ЦСП 1В577;
привязка СЦВМ «Багет-х5» и ЭВМ «Прибор 16» к ОМА СЦОС, подтверждающая открытость и масштабируемость этой архитектуры, а также расширяемость и реконфигурируемость систем без конструктивных доработок, а также сведения о практическом внедрении этих средств в изделия ВТ;
сравнительные характеристики СЦВМ «Багет-55» и зарубежных образцов.
В заключении изложены основные результаты работы, полученные автором на основе выполненных исследований.
Анализ архитектур существующих и перспективных зарубежных специализированных ВС
Выбор в качестве анализируемых средств вычислительных систем (ВС) и комплексов (ВК) бортовых радиолокационных станций (БРЛС) и комплексов (БРЛК) летательных аппаратов (ЛА) обусловлен тем, что традиционно эти вычислительные системы характеризуются решениями, концентрирующими в себе последние достижения в области идеологии построения изделий ВТ, архитектур их систем, применении новейшей элементной базы и технологий.
Анализ осуществлен по данным [1 - 12] (см. Приложение А) о бортовых вычислительных средствах современных и перспективных летательных аппаратов ведущих в данной области зарубежных стран - США и Франции: - ВК БРЛС истребителей F-16 C/D и F-14/15 ВВС США; - ВК бортового комплекса RDY истребителя Mirage 2000-5 ВВС Франции; - универсальном интегрированном процессоре CIP (Common Integrated Processor) бортового вычислительного комплекса URR ЛА F-22 ВВС США. Рассмотрены также основные тенденции разработки специализированных вычислительных средств авионики для перспективных ударных вооружений США по программе JAST (Joint Advanced Strike Technology). По результатам анализа принципов построения и характеристик ВС и ВК зарубежных БРЛК летательных аппаратов в привязке к началу выполнения работ по синтезу универсальной архитектуры СЦОС - середине 1990-х г.г., особенности и тенденции развития этих средств заключаются в следующем: - рост за относительно короткий промежуток времени (порядка деся ти лет) производительности специализированных ВС ЛА прибли женно на два порядка при сохранении в первом приближении габа ритов и энергопотребления аппаратуры (с 34x10б оп/с в процессоре обработки сигналов РЛС APG-70 истребителя F-14 до 8x109 оп/с в процессоре CIP ЛА F-22) с одновременным улучшением таких ха рактеристик, как удельное быстродействие (с 6.85x106 оп/(с дм3) для F-16 до 69хОб оп/(с дм3) для F-22) и удельное энергопотребле ние (с 64x106 оп/(с КВт) для F-16 до 3.68x109 оп/(с КВт) для F-22). Данное улучшение объективно обусловлено развитием и совершен ствованием характеристик используемой элементной базы, техно логии производства и конструктивов аппаратуры. Для специализи рованных ВС ЛА это обусловило существенное расширение круга решаемых задач с возможностью их совмещения во времени при реализации интегрированной обработки сигналов от различных систем ЛА (работа по воздушным, наземным и надводным целям, комплексирование и обработка информации от различных систем ЛА: РЛС, инфракрасной системы обнаружения и слежения и т.д.); - применение модульного принципа построения, обеспечивающего возможность создания (на этапе проектирования) системы оптимальной конфигурации и производительности под конкретную задачу путем комплектации изделия из доступной номенклатуры необходимым набором модулей, а также возможность оптимизации конфигурации и производительности ВС при ее модернизации под заданный набор решаемых задач; - сведение номенклатуры используемых в архитектуре специализированных ВС базовых функциональных модулей с достаточно простыми принципами построения, функционирования и обслуживания к минимуму с исключением или ограничением применения узко специализированных устройств (типа матричного процессора и т. п.) с уникальными характеристиками. Переход от использования специализированных устройств (матричный процессор в APG-68) к универсальным вычислительным модулям (модули CIP), обеспечивающим возможность решения широкого круга разнородных задач одной и той же системой и осуществления (при необходимости) реконфигурации системы без изменения ее конструкции; - поддержка в конструкции ВС изделий ВТ возможности расширения ВС (резервирование посадочных мест для установки дополнительных модулей, резервирование мощности систем жизнеобеспечения типа систем электропитания, охлаждения, и т.д.) для обеспечения возможности модернизации ВС и изделий ВТ в течение их жизненного цикла. Согласно основным положениям [13] комплексной программы создания перспективного ударного вооружения США (Joint Advanced Strike Technology Program - JAST) в области авионики (в том числе - вычислительных комплексов БРЛК), основные цели, преследуемые этой программой, заключаются в следующем. 1) Минимизация обобщенных стоимостных характеристик авионики. Данное требование является доминирующим в рамках комплексной программы построения авионики перспективного ударного вооружения США и направлено на достижение минимально возможной стоимости жизненного цикла авионики, и в первую очередь - стадии опытно-конструкторской разработки. Основные условия для выполнения этого требования: - использование концепции открытой архитектуры при построении систем; - внедрение и использование в разработке и производстве систем хорошо освоенных и совершенных коммерческих и военных технологий; - поддержка концепции использования в системах сертифицированных библиотек программного обеспечения (ПО) для решения типовых задач (фильтрация, свертка сигналов, пороговая обработка и т.д.). 2) Обеспечение расширяемости и масштабируемости авионики. Вы полнение условий расширяемости и масштабируемости требуют особого внимания при проектировании изделия как к принципам деления, так и мо дульности построения аппаратуры и программного обеспечения систем. Принципы построения авионики должны обеспечить возможный рост выполняемой ею функциональной нагрузки за счет ее модернизации без разрушения принципов построения изделия или ограничения необходимых потребностей. 3) Обеспечение открытости архитектуры авионики. Открытость архитектуры базируется на применении в системе строго определенных интерфейсов и обеспечивает возможность использования и совместной работы в системе модулей различных производителей. 4) Обеспечение технологической независимости и условий эволюции авионики. Архитектура авионики должна минимизировать ее зависимость от применения специфических технологий и избегать применения уникальных технических решений и технологий. Конструкция и ПО авионики должны обеспечивать возможность повышения качественных характеристик изделия без его переконструирования. Согласно данным [13] прогнозируемые на уровень 2010 года данные по интенсивности информационных потоков и необходимой производительности для зарубежных вычислительных систем авионики находятся на уровне: - для инфракрасных электронно-оптических систем наблюдения, обнаружения и сопровождения, решающих задачи ночного видения и задачи обнаружения пуска ракет «воздух - воздух» или «земля-воздух» как малого, так и большого радиуса действия для обеспечения защиты ЛА: интенсивность информационного потока - 120-700 Мбит/с на канал при необходимой производительности до 4-Ю ГФлопс; - для БРЛК ЛА, включающих БРЛС с адаптивным подавлением боковых лепестков характеристики направленности антенны и решающих задачи борьбы с воздушными целями в передней и задней полусферах ЛА, а также БРЛС с синтезированием апертуры антенны для обнаружения наземных целей: интенсивность информационного потока - 200-800 Мбит/с на канал при необходимой производительности от 2 до 15 ГФлопс.
Анализ особенностей типовых алгоритмов цифровой обработки сигналов
Основные проблемные вопросы, которые должны быть разрешены в ходе синтеза архитектуры отечественной многопроцессорной системы цифровой обработки сигналов при ее ориентации на преимущественное применение в изделиях ВТ, заключаются: - в минимизации сроков разработки СЦОС, предназначенных для применения в изделиях ВТ МО РФ различного функционального назначения, и стоимости их жизненного цикла, в первую очередь -на стадиях разработки и эксплуатации; - в обеспечении условий для реализации максимально достижимого уровня производительности систем при цифровой обработке. Эти проблемные вопросы обусловлены возникшими к началу - середине 1990-х г.г. противоречиями: - в экономической сфере - между объективными потребностями вооруженных сил страны в новом поколении систем цифровой обработки сигналов изделий ВТ и сложившейся ситуацией по ограниченным возможностям финансирования развития и эксплуатации изделий ВТ; - в технической сфере - между объективно требуемым уровнем технических характеристик нового поколения СЦОС изделий ВТ и техническим уровнем предшествующего поколения систем С учетом обобщения результатов анализа, проведенного в первой главе работы, основные задачи, которые должны разрешить проблемные вопросы, выглядят следующим образом: - архитектура СЦОС должна быть ориентирована на применение программируемого ЦСП, поддерживающего крупномасштабный метод распараллеливания процедуры цифровой обработки сигналов, при инвариантности к типу ЦСП; - в архитектуре СЦОС должна быть использована концепция ее открытости при модульном принципе построения аппаратной части; - в архитектуру должны быть заложены решения, обеспечивающие простую расширяемость и масштабируемость СЦОС с минимальными техническими ограничениями на реализацию этих действий; - в архитектуре должно быть исключено применение узко специализированных уникальных вычислительных модулей, уникальных, сложных и трудоемких методов разработки их программного обеспечения, уникальных технологий производства и применена ориентация на максимальное использование стандартных освоенных решений, методов и технологий; - номенклатура базовых функциональных модулей, обеспечивающих функционирование архитектуры, должна быть сведена к минимуму; - архитектура как системы в целом, так и ее базовых функциональных модулей (в первую очередь - модуля обработки сигналов) должны быть оптимизирована с учетом результатов анализа особенностей типовых алгоритмов цифровой обработки сигналов; - для практического внедрения результатов синтеза архитектура как системы в целом, так и ее базовых модулей должна быть конкретизирована под архитектуру и характеристики единственного серийно выпускаемого отечественного программируемого цифрового сигнального процессора 1В577. Анализ решаемых при синтезе архитектуры задач показал следующее. 1) Ориентация архитектуры СЦОС на применение программируемого цифрового сигнального процессора, поддерживающего крупномасштабное распараллеливание вычислений при обработке сигналов, обеспечивает необ ходимые условия по поддержке модульного принципа построения аппарату ры и прикладного ПО. Как следствие, это приводит к упрощению и миними зации трудоемкости разработки прикладного ПО, возможности применения программных библиотек, упрощению требований к топологии связей и про токолам обмена данными. Условие инвариантности архитектуры к типу используемого в СЦОС ЦСП изначально предполагает сохранение принципа преемственности наработанных в архитектуре решений к моменту разработки новых типов отечественных ЦСП 2) Открытость архитектуры СЦОС предполагает возможность приме нения в системе модулей различных производителей, соответствующих ус ловию возможности их ввода и совместного функционирования в составе СЦОС. Открытость архитектуры обеспечивается поддержкой модульного принципа построения архитектуры и базируется на применении строго определенных интерфейсов, реализация которых в модулях различных производителей обязательна для поддержки их совместной работы в системе. Открытость архитектуры позволяет: - повысить обобщенные качественные характеристики изделия за счет его комплектации наиболее совершенными модулями с использованием критерия «стоимость-эффективность»; - снизить уровень конкуренции между разработчиками с уровня изделия на уровень модулей. Последний фактор обеспечивает: - стимулирование разработчиков и производителей модулей к дальнейшему совершенствованию своей продукции в тех областях применения, в которых они конкурентоспособны; - возможность использования и совместной работы в системе модулей различных производителей, что позволит повысить обобщенные качественные характеристики изделия за счет его комплектации наиболее совершенными модулями и уменьшить затраты на разработку и производство изделий за счет повышения уровня кооперации. В конечном итоге концепция открытости архитектуры и модульный принцип ее реализации предопределяют возможность модернизации СЦОС без их конструктивных изменений и создает предпосылки по возможности применения в системах наиболее совершенных технических решений не только на стадии разработки, но и в течение всего их жизненного цикла. Благодаря этому продлевается срок, в течение которого системы остаются конкурентоспособны. Требование открытости архитектуры обусловлено необходимостью эффективного решения проблемы морального старения применяемой в изделиях электроники. По формуле, предложенной VME International Trade Association (VITA) [16,17], среднее значение времени морального старения электронного модуля на плате VME-конструктива определяется следующим эмпирическим выражением: где N - количество типов базовых ИМС, предопределяющих основные технические характеристики модуля (как правило, для модулей СЦОС - это 4 ...6 типов ИМС: ЦСП; программируемые логические интегральные схемы; микросхемы памяти типа SRAM, SDRAM и т.п.; микросхемы FLASH-памяти); Т СР ТЕХН - среднее значение длительности жизненного цикла (до 10-12 лет) технологии производства ИМС; Тсвмс - среднее значение времени морального старения модуля. Вместо среднего значения длительности жизненного цикла технологии производства ИМС можно использовать [15] данные по технологии (точностным характеристикам) ее разработки. По этому соотношению среднее значение времени морального старения модулей цифровой обработки находится на уровне от 3 до 5 лет, что делает крайне актуальным как вопрос открытости архитектуры систем цифровой обработки, так и своевременной модификации ее модулей.
Укладки графов программ и модели распределения загрузки регистровой памяти
Высокопроизводительные вычислительные системы обычно строят с использованием распределенной разделяемой (совместно используемой) памяти (Distributed Shared Memory - DSM) - виртуального адресного пространства, доступного всем процессорам вычислительной системы.
Вычислительные системы с DSM можно распределить на два класса: системы с единой разделяемой памятью и компьютерные системы с физически распределенной по вычислительным модулям разделяемой памятью.
Системы с физически единой разделяемой памятью в основном представлены симметричными многопроцессорными архитектурами (Symmetrical Multiprocessing - SMP), которые обычно состоят из небольшого числа процессоров, объединенных с памятью коммуникационной средой. Пропускная способность такой среды, как правило, достаточна для поддержания быстрого доступа в память. Время обращения к физически единой разделяемой памяти одинаково для всех процессоров, отсюда происходит еще одно название таких систем - Uniform Memory Architecture (UMA).
Системы с физически распределенной разделяемой памятью, в свою очередь, могут быть реализованы как системы с архитектурой типа: - NUMA (Non-Uniform Memory Architecture); - СОМА (Cache-Only Memory Architecture); - с рефлективной памятью - Reflective Memory (RM). К другим разновидностям организации архитектур памяти в составе вычислительных систем можно отнести архитектуры типа Network-Attached Stored (NAS), Storage Area Networks (SAN), Enterprise Network Storage Architecture (ENSA) [50]. Следует отметить достаточно большое количество иных разновидностей систем памяти, однако практически все эти системы так или иначе основываются на вышеприведенных типах. Память современных универсальных вычислительных систем строится, как правило, по иерархическому принципу. В общепринятой для универсальных процессоров терминологии используется следующая классификация устройств иерархической памяти. 1) В составе процессоров системы может иметься сверхоперативное запоминающее устройство (СОЗУ), образованное несколькими десятками или сотнями регистров общего назначения (РОН или иначе - регистровая память) с временем доступа, составляющим один командный такт процессора. В регистровой памяти обычно хранятся данные, непосредственно используемые в обработке. Как правило, это промежуточные результаты вычислений. 2) Следующий типовой уровень иерархической памяти представляет буферное запоминающее устройство - КЭШ-память, или память блокнотного типа, предназначенная для хранения активных страниц. Типовая общепринятая классификация такой буферной памяти: КЭШ L] (объем 16-32 Кбайта с временем доступа 1-2 такта процессора); КЭШ L2 (объем 128-512 Кбайта с временем доступа 3-5 тактов) и КЭШ L3 (объем 2-4 Мбайта с временем доступа 8 - 10 тактов). КЭШ-память предназначается для ускорения выборки команд программы и обрабатываемых данных. КЭШ - память первого уровня (L() обычно размешается на кристалле процессора, КЭШ - память второго уровня (Ьг) выполняется, как правило, в виде отдельной микросхемы. 3) Основной объем программ пользователя и данных при необходимости размещается в оперативной памяти процессора/модуля/системы (объем -десятки-сотни Мбайт, время выборки - 10 - 20 тактов процессора). 4) Часть данных-констант, необходимых для вычислений и используемых наиболее часто, может размещаться в постоянном запоминающем устройстве, в том числе - накристальных ПЗУ процессоров. В привязке к вопросам функционирования СЦОС, использующей цифровые сигнальные процессоры, и типовой архитектуре ЦСП (например - ЦСП 1В577), в дальнейшем будем трактовать блок РОН ЦСП как сверхоперативную (регистровую) память, накристальные блоки памяти данных (далее - накристальная память) ЦСП - как аналог (по назначению, но не по принципам функционирования) в обще принятой для универсальных процессоров терминологии КЭШ-памяти уровня Lj. При этом, согласно иерархическому построению системы памяти, накристальную память данных ЦСП будем рассматривать как буфер между регистровой памятью и оперативной памятью. Кроме того, в привязке к терминологии работы [51], под сверхбыстрой памятью будем понимать систему «регистровая намять - накристальная память ЦСП».
Одной из задач, возникающих при проектировании проблемно-ориентированных вычислительных систем, является задача определения системы эквивалентных преобразований программ, реализуемых в ВС, обеспечивающей такой порядок выполнения операторов, при котором гарантируется наиболее эффективное использование иерархии памяти в процессе реализации алгоритмов. Для этого, в соответствии с теоретическими наработками, существующими на настоящий момент, эквивалентное преобразование программ осуществляется по укладкам графов при использовании заданных критериев оптимизации.
Известно, что графовые модели программ можно представлять в виде графов зависимостей по данным и графов зависимостей по управлению, образующих граф программных зависимостей [52].
Понятие схем программ принадлежит А.А. Ляпунову, и было введено им в 1953 г. В работе Ю.И. Янова [53] впервые выделены и формализованы основные компоненты теории схем и, в первую очередь, понятие схемы программ и отношение эквивалентности. В работе А.П. Ершова [54] было введено представление схем Янова в виде графов. Н.А. Криницкий в работе [55] исследовал проблему эквивалентности и эквивалентных преобразований стандартных схем, причем для подкласса схем без циклов им был найден алгоритм распознавания эквивалентности, и была построена полная система эквивалентных преобразований. Графовая форма схем была предложена Л.А. Калужниным [56]. В работе [57] С.С. Лавровым был получен первый результат теории схем программ, а именно - решена задача минимизации числа переменных в программе (задача экономии памяти). Построение обшей теории перераспределения и экономии памяти опубликовано в работах А.П. Ершова [54, 58]. Довольно подробный исторический обзор работ по эквивалентным преобразованиям программ приведен в фундаментальной монографии В.Н. Касьянова и В.А. Евстигнеева [52].
Одной из ветвей работ по эквивалентным преобразованиям программ являются работы по определению укладок графов по разным критериям. Разнообразные укладки графов программ позволяют получить множество допустимых последовательностей выполнения операторов. В.П. Корячко и В.А. Курчидис в работе [59] обосновали методику и описали алгоритмы построения укладки графа программы по критерию максимума соседней связности операторов, что позволяет минимизировать число обращений процессора к оперативной памяти за промежуточными результатами вычислений. Определение таких уоадок графов программ позволяет существенно сократить время реализации программ за счет более интенсивного использования регистровой памяти процессора.
Конкретизация структурной схемы и принципов функционирования модуля буфера данных ОМА СЦОС
Последовательность начального пуска модуля заключается в следующем: - по снятию сигнала RESET загружается конфигурация в программируемые микросхемы типа FPGA, на которых реализуются контроллеры модуля, из последовательных конфигурационных ПЗУ; - сигнал сброса процессоров ЦСП-RESET формируется отдельно и устанавливается по появлению сигнала RESET, а снимается - по завершению конфигурации FPGA; - по снятию сигнала ЦСП-RESET процессор ЦСП_А (Мастер - процессор модуля обработки сигналов) загружает по своему порту В из ПЗУ общей шины программу начального загрузчика в свою накристальную программную память с адреса Oh и выполняет ее. Остальные процессоры, в это время находятся в ожидании загрузки по HOST-интерфейсу. Произвольная запись в SRAMGL общей шины разблокирует шину от загрузочного режима; - Мастер - процессор МОС ЦСП_А загружает по HOST - интерфейсу процессоры ЦСП_В...ЦСП_0. Более детально выше изложенное выглядит следующим образом. При помощи внешних сигналов, подводимых к ЦСП 1В577, можно задать содержание регистра режима работы процессора. Запускаемая по сигналу RESET из накристального ПЗУ ЦСП программа-предзагрузчик, анализируя содержание этого регистра, определяет источник первоначальной загрузки - будет ли это память или HOST-интерфейс процессора (HOST -интерфейс - особенность ЦСП 1В577, позволяющая другому внешнему процессору работать как устройство ввода-вывода данных в ЦСП). Далее предзагрузчик из указанного источника переписывает программу-загрузчик в накристальную память программ ЦСП и передает управление по нулевому адресу. Возможность управлять выбором источника первоначальной загрузки ЦСП 1В577 внешними сигналами позволила организовать в модуле обработки сигналов СЦОС загрузку процессоров модуля различными способами: процессора ЦСП_А - из ПЗУ, а остальных процессоров платы - по HOST -интерфейсу. Вследствие этого процессор ЦСП_А МОС становится ведущим (Мастер - процессором) по загрузке остальных («рядовых») процессоров модуля. Аналогичным образом процессор ЦСП_А МПД, имеющий также связь с HOST-ЭВМ изделия и доступ к FLASH-памяти МПД, становится Мастер-процессором СЦОС по загрузке прикладного ПО, так, как это изложено в п.п. 14 подраздела 4 второй главы диссертации. В заключение рассмотрим процедуру нумерации процессоров в системе. Как уже отмечалось при описании процедуры начальной загрузки, загрузчик процессора ЦСП_А МОС отличается от загрузчиков «рядовых» процессоров. Он и берет на себя инициативу прописывания номеров процессора: своего - по локальной шине, а номеров остальных - по общей шине модуля через HOST-интерфейс одновременно с загрузкой образа загрузчика «рядового» процессора. При этом по локальной шине загрузчиком процессору ЦСП_А прописывается номер «О», а по HOST -интерфейсу - номера «1», «2» и «3» соответственно для ЦСП_В, ЦСП_С и ЦСП_Б.. Процедуру присвоения номеров платам осуществляет программа загрузки/инициализации, работающая на процессоре ЦСП_А МПД. Инициализация контроллера HS-шины платы МПД с присвоением ему 0-го номера осуществляется по общей внутримодульной шине прямой записью в регистры контроллера. Перед началом инициализации остальных контроллеров HS-шины, в HS-контроллере МПД блокируется прием с одной стороны HS - шины (условно - слева), чтобы при дальнейшей отсылке пакетов направо предотвратить полный обход ими кольца. Остальная работа по инициализации осуществляется с участием HS-шины. Программа процессора ЦСП_А МПД запускает цикл последовательной инициализации, начиная с ближайшего соседа по HS-шине справа. Инициализация осуществляется отсылкой инициализирующего пакета, который содержит новый, еще не задействованный номер платы. Уже инициализированные HS-контроллеры модулей пропускают этот пакет сквозь себя, а первый же встретившийся неинициализированный контроллер, если такой еще остался, инициализирует себя под этим номером. Далее процессор ЦСП_А МПД начинает этап опознания платы: действительно ли инициализирующий пакет нашел свою цель, т.е. действительно ли эта плата существует. Попутно выясняется тип платы. Проверяется гипотеза - не является ли эта плата платой модуля буфера данных. Признаком МБД служит наличие по конкретному адресу на «общей шине» платы регистра с прошитым значением сигнатуры платы МБД. Если считанное значение совпадает с предполагаемым значением сигнатуры, делается вывод об инициализации платы МБД. Если нет, то предпринимается попытка записать в ячейку глобальной памяти инициализируемого модуля и проконтролировать считыванием записанное значение. Если считанное и записанное значение совпадают, это служит признаком, что данная ячейка памяти физически существует и, следовательно, существует и сама плата (она является либо платой МОС, либо еще одной платой МПД). Если оба теста (на МБД и МПД/МОС) закончились неудачей, платы под исследуемым номером не существует и, следовательно, перебор всех плат завершен, т.е. инициализированы и пронумерованы все платы модулей на HS-шине. Количество плат модулей, включаемых и программно поддерживаемых HS-шиной, равно 32. Информация о номере платы и номере процессора хранится в последнем слове локальной памяти SRAM каждого процессора МОС и помещается туда на этапе инициализации в процессе начальной загрузки. Знание ЦСП своего места в СЦОС позволяет с одной стороны использовать идентичные копии программных компонент для решения идентичных задач на разных процессорах, а с другой - каждому процессору реализовывать свое функцио нальное поведение адекватно своему положению в рамках заданной конфигурации системы. Модуль содержит следующие функциональные устройства: - входной интерфейс; - буферную память FIFO-1 на входе от АЦП; - программируемый коммутатор потоков данных (ПКП); - буферную память FIFO-2 на входе от HS-шины; - контроллер HS-шины (HS-контр). Буферная память FIFO-1 наряду с буферной памятью входных данных в модулях МОС предназначена для обеспечения режима работы СЦОС в реальном масштабе времени, когда накопление данных осуществляется одновременно с процессом обработки ранее полученной информации. Буферная память FIFO-2 располагается между контроллером HS-шины и программируемым коммутатором потоков и позволяет передавать инфор мацию с HS-шины на 1-шину (через ПКП), а также с HS-шины и 1-шины в интерфейс выходного канала. Как опция, в модуле предусмотрен интерфейс внешнего выходного канала для вывода данных из ППС внешним потребителям. Основной функцией модуля буфера данных, помимо приема и буферизации данных, является коммутация информационных потоков. Модуль позволяет принимать и распределять потоки, одновременно поступающие по нескольким портам ПКП. ПКП имеет 4 порта, по которым передаются и/или поступают потоки, подлежащие коммутации: А - двунаправленный порт 1-шины; В - двунаправленный порт 1-шины; порт ввода данных от АЦП; порт ввода данных через FIFO-2 от HS - шины. Программируемый коммутатор потоков МБД выполняет следующие функции: - принимает и «окрашивает» потоки данных и направляет их в заранее определенный порт или порты; - мультиплексирует потоки разного «цвета», направляющиеся в один и тот же выходной порт, если их прохождение через указанный порт программно разрешено; - блокирует потоки определенного «цвета» (при помощи «цветовых фильтров»), прохождение которых через указанный порт программно запрещено.