Междисциплинарный характер разработок средств вычислительной техники наиболее четко проявляется в проектах суперкомпьютеров всех поколений, требования к которым постоянно ужесточались. Последняя в этой области программа DARPA HPCS (high productivity computing systems) предусматривает, что перспективные суперкомпьютеры должны обеспечить реальную производительность в несколько петафлопc, а их глобально адресуемая оперативная память должна на 7-8 порядков превосходить существующую по интегральному показателю качества, из которой на пропускную способность приходится 4-5 порядков, а на емкость 3 порядка, которая должна быть доведена до нескольких пета-байт. При этом ужесточаются и требования к технологиям разработки параллельных программ и к простоте поддерживающих их платформ.
Данная программа должна позволить США:
устранить нарушенный паритет с Японией в области высокопроизводительных вычислений;
создать суперкомпьютеры с перспективной архитектурой для решения стратегически важных государственных задач обеспечения национальной безопасности;
продвинуть на военный и коммерческий рынок качественно новые технологии изготовления элементной базы и аппаратуры.
В современных условиях в России невозможно воспроизвести подобного рода глобальный междисциплинарный проект, требующий скоординированных усилий сотен проектных, научных и промышленных организаций и предприятий. Но у России не менее стратегически важные и масштабные государственные задачи обеспечения национальной безопасности, которые невозможно решить без создания программно-аппаратных платформ с сопоставимыми характеристиками.
Аналогичная ситуация складывалась в середине 80-х годов прошлого столетия в рамках программ СОИ и анти-СОИ, когда СССР вынужден был компенсировать технологическое отставание от США за счет гибких вычислительных технологий проектирования и работы алгоритмически ориентированных субпроцессоров с микропрограммным уровнем доступа, который обеспечивал (сверх)высокие по тем временам коэффициенты распараллеливания вычислений и повышал почти на порядок "время жизни" системы по сравнению с комплектующими СБИС.
Полученный в этот период опыт раскрывается в этой книге, где вскрыты основные источники повышения производительности, отказоустойчивости и эффективного микропрограммного конструирования алгоритмически ориентированных субпроцессоров. В рамках этих проектов пришлось отказаться от целого ряда традиционных подходов и оценок. В частности, пришлось перейти:
от оценки производительности к расчету пропускной способности (сверх)многопроцессорной системы по потокам команд и данных;
от традиционных системных платформ программирования к платформам микропрограммного конструирования, сходным с системными средствами кремниевой компиляции;
от традиционных систем подстановки "горячего резерва" к системам перераспределения исполняемых (бит)инструкций согласно действующей в бит-матрице карте отказов.
В [лекции 1 проанализированы апробированные на практике методы оценки вычислительных характеристик задач предметной области, которые служат базой разработки (Б)ВС, ориентированных на решение "критических" задач. Этот класс задач по своим требованиям превосходит не менее чем на порядок физические возможности существующей вычислительной техники, что вынуждает разработчиков (Б)ВС:]
задействовать в информационных технологиях "собственных нужд" комплекс интенсивных и экстенсивных факторов повышения производительности;
снижать системные аппаратно-временные издержки на управление ходом вычислительного процесса, в том числе и за счет выбора или модификации вычислительных алгоритмов и их параметров.
Показано:
Метрологические проблемы вычислительной техники носят как фундаментальный, так и чисто методический характер, и они неразрешимы в принципе. Фундаментальная составляющая связана с отсутствием единой метрики, определяющей количество информации, а значит, и объем выполненной ЭВМ работы. Методическая составляющая связана с отсутствием эталонных ЭВМ, эталонных алгоритмов преобразования данных и стандартных процедур пересчета реальных алгоритмических затрат в затраты эталонного алгоритма. В итоге нарушается базовый принцип любого измерения, когда измерительный прибор является неотъемлемой частью измеряемого объекта (в данном случае операционной системы) и поэтому постоянно изменяет свою структурно-функциональную схему.
Все без исключения инженерные методики оценки производительности фактически отталкиваются от измерения времени, затраченного на решение "хорошо известной пользователю" задачи. В результате сопоставление двух ЭВМ весьма и весьма субъективно, так как и замер времени, и оценка выполненных машиной инструкций, и распределение времени между системными и прикладными задачами носят достаточно субъективный характер.
Стандартные программные платформы оценки производительности и пропускной способности ЭВМ предоставляют пользователю только возможность создания тестовых программ, которые способны воспроизвести стабильную вычислительную нагрузку реальных задач только при использовании в них циклов for, так как при использовании циклов if вычислительная нагрузка зависит от содержимого преобразуемых данных.
Дальнейшее развитие программных платформ оценки производительности ЭВМ, скорее всего, будет связано с созданием адаптивных средств, оперативно реагирующих и на специфику алгоритма решения задачи, и на специфику архитектуры ЭВМ, и на содержимое преобразуемых потоков данных.
Снижение трудозатрат на адаптацию испытательных и исследовательских программ требует структурного подхода, в рамках которого программные модули представительных задач выступают в качестве неделимых единиц.
Совокупность таких структурных единиц инструментальной платформы оценки качества ВС должна обеспечить управляемое перераспределение вычислительной нагрузки на операционные, коммутационные и управляющие ресурсы, а также ресурс памяти исследуемой ВС, для чего требуется точная априорная оценка этих же видов ресурсов, затребованных вычислительными алгоритмами представительных задач. Поэтому операционное ядро каждой представительной задачи должно быть алгоритмически прозрачным, чтобы на его основе можно было априорно и достоверно оценить требуемую нагрузку на все виды используемых ресурсов.
В [лекции 2 раскрыты особенности построения и использования программных инструментальных платформ параллельных вычислительных систем общего назначения. Показано, что методы и средства конструирования программ
являются не только прерогативой параллельных ней-рокомпьютерных технологий и технологий с микропрограммным уровнем поддержки, но и широко используются при создании программных продуктов для ВС общего назначения. При этом надо отличать инструментальные платформы, которые ориентированы на использование уже существующих аппаратных платформ, от инструментальных платформ, ориентированных на их создание. В первом случае допускается только специфицированная реконфигурация аппаратной платформы под требования вычислительного алгоритма
пользователя, что было апробировано в транспьютерных и многопроцессорных ЦПОС
-проектах, а во втором случае вычислительный алгоритм известен и требуется методами и средствами (полу)заказного проектирования синтезировать аппаратуру его поддержки, что характерно для систолических матриц.]
Центральная проблема создания таких инструментальных платформ - это формализованные средства
представления и поддержки параллелизма, использование которых требует углубленного знания возможностей целевой аппаратной платформы, призванной воплотить в жизнь затребованный программным конструктором
параллелизм. Решить в общем виде задачу формализованного представления параллелизма пока не удалось, что вынуждает:
использовать интерактивный
режим (микро)программного конструирования либо на всех стадиях проекта, как это имеет место в систолических и бит-потоковых технологиях, либо на отдельных, но самых ответственных этапах декомпозиции проекта и распределения (конфигурирования) затребованных ресурсов между коллективом вычислителей, как это имеет место в транспьютерных и многопроцессорных ЦПОС- и RISC-технологиях;
инструментальные платформы "собственных нужд" строить по иерархическому принципу, поэтапно решая задачи извлечения из вычислительного алгоритма потенциально достижимого коэффициента распараллеливания вычислений, представления граф-потока сигнала в "терминах" целевой аппаратной платформы, устранения синонимии, возникающей из-за ограниченных размеров целевой аппаратной платформы.
В [лекции 3 раскрыты особенности работы одной из возможных аппаратных платформ ВС с микропрограммным уровнем доступа. За основу взята МКМД-бит-потоковая СБИС Н1841 ВФ1, которая была разработана в СССР в 1988 году и планировалась к использованию в широком спектре субпроцессорных трактов, ориентированных на решение "критических" задач аэрокосмических (Б)ВС двойного назначения. На ее основе показано:]
Широко разрекламированные на Западе (возможно, и с подрывной целью) систолические вычислительные структуры ориентированы на ОКМД-режим распараллеливания вычислений и требуют интеллектуальных оболочек для приведения алгоритма пользователя к систолическому виду и кремниевых компиляторов для быстрого бездефектного проектирования специализированных систолических СБИС достаточно широкой номенклатуры, покрывающей потребности (Б)ВС во всем спектре решаемых задач. Поэтому в рамках систолических технологий преимущество получал не тот, кто разрабатывал алгоритмы систолического типа, а тот, кто имел более эффективную СБИС-реализацию. (ОКМД - организация вычислений по типу "одиночный поток команд - множественный поток данных".)
Структурно-функциональный и схемотехнический синтез МКМД-бит-процессорных матричных СБИС, УБИС и систем на кремниевой пластине по сложности проекта и вытекающим из него требованиям к поддерживающим инструментальным программно-аппаратным платформам находится на уровне схем средней степени интеграции, содержащих не более 1000 логических вентилей. Это делает прозрачным
процесс проектирования аппаратных платформ для таких вычислительных технологий как в структурно-функциональной, так и в диагностической плоскости. Такое кардинальное снижение размерности задач быстрого бездефектного проектирования и изготовления бит-матричных структур, давно уже не уступающих по уровню функциональной интеграции УБИС, приводит к существенному возрастанию сложности задач микропрограммного конструирования алгоритмически ориентированных субпроцессоров на их основе.
Различные варианты построения бит-процессорных матричных СБИС в основном разнятся средствами управления и коммутации, которые играют решающую роль в обеспечении отказоустойчивости СБИС и субпроцессоров на их основе. При этом зависящая от области применения система реализуемых бит-инструкций мало влияет на структурно-функциональную схему бит-процессора, которая в большей степени определяется принципами и методами организации вычислений.
Принципы и методы МКМД-бит-потоковой организации вычислений таковы, что их реализация приводит к естественной структурно-функциональной избыточности бит-процессоров, которая повышает отказоустойчивость аппаратных платформ. Во-первых, отказавший вентиль может оказаться неиспользуемым при реализации заданной бит-инструкции, а во-вторых, под воздействием отказа в бит-процессоре все же реализуется некоторая бит-инструкция, которая может принадлежать системе ее бит-операций и при сдвигах микропрограмм на бит-матрице может оказаться востребованной именно в данном месте бит-матрицы.
Одну из центральных проблем технологии прототипирования в рамках МКМД-бит-потоковых технологий можно решить на основе методов и средств многоуровневого имитационного моделирования,
что позволяет уже на самых ранних этапах проектирования оценить влияние принимаемых конструктивных и технических решений на отказоустойчивость создаваемого программно-аппаратного продукта.
В результате удается сделать весь процесс проектирования полностью отечественных субпроцессорных трактов управляемым по фактору отказоустойчивости. При этом появляется достаточно уникальная возможность сбалансированного управления вводимой на этапе проектирования и используемой в процессе эксплуатации естественной структурно-функциональной и топологической избыточностью бит-процессоров и соответственно матриц на их основе. Это увеличивает степень связности проекта (суб)про-цессорного тракта в структурно-функциональной и диагностической плоскостях, так как с ростом структурно-функциональной избыточности возрастает и устойчивость к отказам бит-матриц, а значит, и накапливаемая в латентном периоде карта отказов, что негативно сказывается на эффективности работы подсистем диагностики и парирования карт отказов. Отсюда следует, что с ростом отказоустойчивости бит-матриц необходимо увеличивать частоту принудительного тестового контроля, что негативно сказывается на пропускной способности МКМД-бит-потоковых субпроцессорных трактов.
В [лекции 4 раскрыты особенности микропрограммного конструирования
МКМД-бит-потоковых субпроцессоров или, что одно и то же, особенности перехода с микрокомандного на ассемблерный уровень организации вычислений в (Б)ВС с микрокомандным уровнем доступа, которые сводятся к следующему.]
Какие бы методы и средства распараллеливания вычислений ни применялись на различных уровнях управления ходом вычислительного процесса, рано или поздно архитектура (Б)ВС или ее отдельных компонент будет сведена к фон-неймановскому типу, который предполагает последовательный характер перечисления (микро) программных конструкций, описывающих либо бит-инструкцию, либо слов-инструкцию, либо поток-оператор, либо подпрограмму, либо программу, либо задачу, либо комплекс задач и т. д. В таких условиях МКМД-бит-потоковые вычислительные технологии удобны тем, что позволяют в едином операционном и аппаратном базисе оценить аппаратно-временные затраты на организацию вычислений на всех уровнях начиная со слов-командного.
Принципиальное отличие МКМД-бит-потоковых вычислительных технологий состоит в том, что обработка в них осуществляется в распределенной, PD
-ассоциативной памяти (бит)инструкций, а не данных, как это имеет место в классических ассоциативных архитектурах, и не в сосредоточенных операционных устройствах с фиксированной системой ассемблерных инструкций, как это имеет место в наиболее распространенных современных RISC
-архитектурах.
Основным источником повышения пропускной способности МКМД-бит-потоковых субпроцессоров по потокам команд и данных является совмещение во времени и пространстве процессов передачи и обработки данных, что позволяет создавать структурно-функциональные схемы, адекватные графу связности операторов решаемой задачи, причем на всех уровнях организации вычислений начиная с бит-процессорного.
Технология микропрограммного конструирования
МКМД-бит-потоковых субпроцессоров по объективным причинам носит итеративный и интерактивный характер. В таком процессе структурно-функциональная схема субпроцессора синтезируется декомпозицией задач пользователя, нисходящей до микропрограммных алгоритмов реализации отдельных операционных, управляющих, адресных и интерфейсных процедур, а оценку качества принятого технического решения можно получить на основе восходящего конструирования топологии всей микропрограммы, реализующей поток-оператор пользователя.
В процессе микропрограммного конструирования
МКМД-бит-потоковых субпроцессоров можно применять практически все известные алгоритмические, структурно-функциональные, конструктивно-технологические и т. д. методы и средства компенсации системных временных издержек с той разницей, что в этом случае в качестве неделимой единицы проекта служит пространственно фиксированный поток бит-инструкций и пространственно-временной поток данных.
Несмотря на определенные неудачи в области оптоэлектронной вычислительной техники, исследования в этой области показали принципиальную возможность создания нетрадиционных вычислительных технологий, которые по максимуму используют функциональные возможности физических процессов, используемых в качестве вычислительных. В частности, в оптоэлектронных вычислителях можно отказаться от "священной коровы" традиционной вычислительной техники в виде регистровых схем управления, передачи и хранения информации и весь вычислительный процесс реализовать на основе распределенной ассоциативной памяти данных, связанной с произвольно коммутируемой вентильной матрицей разветвленной системой связей прямого доступа.
В лекции 5 показано, что проблемы интерактивного синтеза сверх- и гиперпараллельных микропрограммных конструкций можно преодолеть за счет формализованного синтеза
библиотечных слов- и поток-инструкций на основе рекуррентных процедур, оперирующих не бит-процессорами, а термами, характерными для этих слов- и поток-инструкций. Методика термального синтеза фактически базируется на методах и средствах инструктированного синтеза сложных молекулярно-биологических соединений более простых. На первом шаге этой методики необходимо осуществить выбор между традиционными DD -ассоциативными и перспективными PD -ассоциативными конструкциями или, что одно и то же, между методами адаптации, который зависит от "времени жизни" гетероструктуры:
если "время жизни" велико, то предпочтение следует отдавать DD-ассоциативным конструкциям, конформационные преобразования которых позволяют настроить их на реализацию требуемой функции;
если "время жизни" мало, то предпочтение следует отдавать PD-ассоциативным конструкциям, настройка которых на реализуемую функцию и содержимое одного из преобразуемых операндов требует структурной адаптации.
В рамках этой методики интерактивный характер выбора топологии формально сохраняется только для термов, но фактически он предопределен линейными размерами матриц, априори выделяемых на реализацию топологии слов- и поток-инструкций. При этом, как и в молекулярной биологии, следует отличать функционально значимые и промежуточные (вставочные) термы, первые из которых задают правила и циклы взаимодействия между слов-инструкциями, а вторые обеспечивают рекуррентное наращивание по какому-либо параметру однородной функции. Характерно также, что в "активных зонах" DD -и PD -ассоциативные конструкции взаимодействуют не только между собой, но и с потоками управляющих данных, которые задают циклы такого взаимодействия.
Показательно, что в МКМД-бит-потоковых матрицах "фронт вычислительной волны" распространяется по бит-матрице с помощью механизмов, сходных "пробоям" в реальных аксонно-коллатеральных связях, что наиболее четко проявляется в интерфейсах. Это указывает на то, что в реальных нейросетях преобразование информации может осуществляться не только в соме нейрона, но и в процессе распространения возбуждения по аксонно-коллатеральным связям,
реализующим функции алгоритмически ориентированных PD -ассоциативных субпроцессоров.
В [лекции 6 раскрыты особенности построения и работы реально существующих и не имеющих зарубежных аналогов программных инструментальных платформ бит-потоковых информационных технологий "собственных нужд". Как и в кремниевой компиляции, в бит-потоковых технологиях необходимо поддержать проект в трех плоскостях: структурно-функциональной, программно-аппаратной и диагностической, а само развитие проекта должно осуществляется по иерархии от выбора физико-технического процесса, закладываемого в основу бит-матричной СБИС и до задач пользователя (сверх)многопро-цессорной (Б)ВС. В результате:]
Эффективность объектно-ориентированного подхода к созданию инструментальных платформ МКМД-бит-потоковых технологий предопределяют два фактора: отношение иерархии между "объектами" проекта и множественность "вложений" одних и тех же компонент в программно-аппаратную и диагностическую плоскости проекта.
В структурно-функциональной и программно-аппаратной плоскости бит-процессор является неделимой единицей проекта, но при переходе в диагностическую плоскость его необходимо раскрыть, включив в иерархию описания блоки, узлы, вентили и физико-технические процессы, нарушение условий правильной работы которых и служит источником "расширения" библиотеки бит-инструкций бит-процессора.
Интерактивный режим, а с ним и графический интерфейс инструментальных платформ пока остаются атрибутом бит-потоковых технологий, так как они поддерживают завершающий этап проектирования субпроцессоров. На этом этапе решается узловая задача всего проекта, связанная с компоновкой библиотечных модулей на бит-матрице, или, что одно и то же, на плоской ортогональной FIFO -регистровой коммутационной решетке, где сдвиг на один дискрет всегда сопровождается изменением времени задержки на 1 такт. ( FIFO
- "первый вошел - первый вышел".)
Главная особенность МКМД-бит-потоковых технологий состоит в том, что объектом диагностики на схемотехническом уровне является относительно простая схема бит-процессора (порядка 800-1000 вентилей), которая к тому же достаточно просто разбивается на блоки с разным последействием отказов: регистр команды, операционный канал, канал транзита, средства коммутации и т. п. Вместе с тем функциональные возможности программно-аппаратной плоскости проекта, как правило, отвечают ультравысокой степени интеграции (порядка 8-20 миллионов вентилей и выше) за счет наращивания "площади" бит-матрицы (от 1000 до 10000 бит-процессоров).
Средства эксплуатационной диагностики
МКМД-бит-потоковых субпроцессоров являются продолжением средств промышленной диагностики, используемых для генерации эталонных тестов и эталонных тестовых воздействий для первой. Незнание производственных методов и средств обнаружения отказов в бит-матричных СБИС и положенных в их основу физических моделей отказов приводит к неоправданному увеличению пространства диагностики, делая само изделие диагностонепригодным. Данный вывод справедлив для всех изделий микроэлектроники, и поэтому стратегия их заимствования третьих стран чревата высокой вероятностью необнаружения отказов, особенно в современных процессорах RISC - и ЦПОС
-архитектуры, которые по степени функциональной интеграции уже давно относятся к УБИС.
В [лекции 7 раскрыты специфические особенности обеспечения живучести и восстановления работоспособности (фактически микропрограммного "ремонта" без отключения источников питания) МКМД-бит-потоковых субпроцессоров, которые вытекают из возможности использования некратного (по отношению ко всей бит-матрице) резерва. Приведенные данные позволяют утверждать:]
В МКМД-бит-потоковых вычислительных технологиях на основе микроэлектронных СБИС или УБИС основная ставка сделана на структурно-функциональный полиморфизм
бит-процессоров, который поддерживает как технологию восходящего микропрограммного конструирования потоковых (суб)процессоров, так и технологию достаточно быстрого парирования карт отказов за счет параметрической адаптации
исходного "рабочего тела" микропрограммы пользователя. При этом используется как скрытый, почти 2-кратный структурно-функциональный резерв каждого бит-процессора, так и централизованный и существенно меньший по отношению к рабочей области бит-матрицы "горячий" аппаратный резерв, дифференцированно "перемещаемый" по всей бит-матрице.
Наибольших интеллектуальных и временных затрат требует этап интерактивного микропрограммного конструирования проблемно-или алгоритмически ориентированных (суб)процессоров, который завершается созданием индивидуальной вторичной топологической структуры для каждого поток-оператора пользователя. При переходе вычислительной техники в супрамолекулярную или нано-метровую область этот этап трансформируется в синтез
"рабочего тела", для которого специфицированы
(био)химические модальности и уровни "сигналов", кодирующих управляющие, тестовые и обрабатываемые потоки информации.
Этап синтеза
тестовых микропрограмм достаточно просто формализовать
и свести к размещению ограниченного количества термов на бит-матрице с учетом ограничений на конструкцию гальванических программных шин и шин данных ( P
- и D -шины соответственно), обеспечивающих доступ к периферийным бит-процессорам.
Основная проблема, препятствующая кардинальному снижению времени локализации и идентификации отказов в бит-матрице, связана с опосредованным доступом к "внутренним" бит-процессорам по FIFO
-регистровым P - и D -шинам, и решать ее приходится в основном конструктивно-технологическими методами, напрямую зависящими от используемых физико-химических процессов управления, передачи и обработки информации. Сам процесс диагностики приобретает корректирующий характер,
по крайней мере на отдельных фазах и этапах.
Удовлетворить темп реального времени при решении задач локализации и идентификации отказов можно только с использованием комплекса системотехнических, схемотехнических и конструктивно-технологических мер, которые минимизируют временные издержки на программирование бит-матрицы, снижают размеры контролируемых подматриц и повышают эффективность парирования обнаруженных карт отказов непосредственно во время диагностики.
Парирование карт отказов сводится к индивидуальной, толерантной перекомпоновке вторичной топологической структуры каждого поток-оператора пользователя. При этом локальные и глобальные аффинные преобразования
"рабочего тела" микропрограммы по максимуму сохраняют условия пространственно-временного взаимодействия бит-инструкций. Но это требует трансформации части "функциональных" бит-процессоров в "коммутационные" и пространственного "сдвига" бит-инструкций по бит-матрице.
Выбор системы локальных, толерантных, аффинных преобразований представляет собой достаточно сложную, двухкритериальную оптимизационную задачу, которая в супрамолекулярных вычислителях может оказаться соизмеримой по временным и энергетическим затратам с повторным синтезом (структурной регенерацией) исходного "рабочего тела", в процессе которого нерелевантные молекулы замещаются релевантными. Это указывает на то, что в супрамолекулярных технологиях прежде всего необходимо осуществить выбор между ОКМД-схемой парирования отказов, которая основана на прямой подстановке резерва ( структурная адаптация
), и МКМД-схемой, которая основана на параметрической адаптации
структурно-функциональной схемы вычислителя.
В [лекции 8 синтезирован МКМД-бит-потоковый субпроцессор, ориентированный на решение задач астронавигации космических летательных аппаратов, и на его основе проиллюстрированы особенности использования информационных технологий "собственных нужд" с использованием микропрограммного уровня доступа. На этой основе показано:]
В МКМД-бит-потоковых вычислительных технологиях структурно-функциональная декомпозиция заданий пользователя представляет
собой многокритериальную задачу, в которой необходимо учесть:минимум аппаратных затрат и максимум неоднородности составляющих модулей, повышающий устойчивость к отказам,
минимум информационных связей между модулями, снижающий затраты на редактирование этих связей после проведения над телом микропрограммы толерантных аффинных преобразований,
и целый ряд других требований к топологии микропрограммы, обеспечивающих удобство работы всей системы обеспечения живучести субпроцессора.
Естественная структурно-функциональная избыточность МКМД-бит-потоковых субпроцессоров используется комплексно, обеспечивая не только (сверх)высокие коэффициенты распараллеливания вычислений, но и повышая более чем на порядок их отказоустойчивость в сравнении с параллельными системами на основе процессоров традиционной архитектуры, а также вычислительную устойчивость, гарантируя нулевую абсолютную погрешность за счет вариации разрядной сетки по ходу вычислений.
Чем выше МКМД-уровень распараллеливания вычислений, тем большему количеству процессоров необходимо задать управляющие параметры и начальные условия, что в пределе, когда вычисления организованы по принципу "одна (бит)инструкция - один (бит)процессор" приводит к работе всей (Б)ВС в режиме интерпретации, а не компиляции программ.
Работа МКМД-бит-потокового субпроцессора в режиме интерпретации, а не трансляции или компиляции программ:сопряжена с временными издержками, которые сгруппированы в отдельный этап ввода микропрограммы в бит-матрицу и которые
окупаются при выполнении системообразующего неравенства за счет большого количества циклов обработки "больших" потоков данных;
требует приведения исходного вычислительного алгоритма к потоковому виду с явным указанием всех управляющих, интерфейсных и диагностических процедур;
приводит к росту в основном аппаратных, а не временных затрат на реализацию индивидуальных управляющих, интерфейсных и диагностических процедур, что повышает "мобильность" модуля при парировании карт отказов.
Чем больше имеющийся естественный структурно-функциональный и топологический резерв у бит-процессоров и соответственно матриц на их основе, тем более устойчив к отказам поток-оператор и тем больше карта отказов, накапливаемая в латентном периоде. Отсюда следует, что с ростом отказоустойчивости бит-матриц необходимо увеличивать частоту принудительного тестового контроля, что негативно сказывается на пропускной способности МКМД-бит-потоковых субпроцессорных трактов.
С проектных позиций МКМД-бит-потоковые вычислительные технологии удобны тем, что на самых ранних этапах создания субпроцессоров здесь можно получить достоверные оценки достижимой пропускной способности по потокам инструкций и данных, массо-габаритам, потребляемой энергии, отказоустойчивости и времени задержки, которые играют решающую роль в оценке летно-технических и боевых характеристик космических ЛА и их БЭО.
Методы и средства обеспечения живучести МКМД-бит-потоковых субпроцессоров не исключают, а только дополняют традиционные методы и средства, основанные на введении дополнительной аппаратной, информационной и временной избыточности. При этом возможность проведения в темпе реального времени фактически ремонтно-восстановительных работ позволяет снизить необходимый аппаратный резерв до десятков процентов и сохранить живучесть субпроцессорного тракта при наличии в нем карт, насчитывающих десятки отказов. В результате удельные аппаратные затраты на парирование одного отказа в МКМД-бит-потоковых субпроцессорах не менее чем на порядок меньше аналогичных затрат в традиционных фон-неймановских схемах мажоритарного резервирования, которые по-прежнему доминируют в зарубежной авионике.
Даже на отсталой по современным меркам элементной базе разработки середины 80-х годов прошлого столетия в МКМД-бит-потоковых технологиях удается достичь
производительности не менее 3,6*103 MIPS и пропускной способности по потокам данных порядка 500 Мбит/сек, что более характерно для современных персональных ЭВМ, работающих на частотах порядка единиц ГГц.
Авторы отдают себе отчет в том, что с целым рядом базовых положений могут не согласиться глубокие и авторитетные специалисты из более узких областей научной деятельности. Но такова цена междисциплинарного подхода к решению сложных проблем, в рамках которого трудно договориться даже по терминологии и тем более по "незыблемым истинам", закладываемым в систематику научно-технических исследований и разработок.
Поэтому авторы руководствовались не бесспорностью базовых положений и предложенной системы ценностей при создании сложных технотронных комплексов, а полнотой охвата всей проблематики их сквозного системного проектирования, в рамках которого нет и не может быть научных и организационно-технических "мелочей", пренебрежение которыми, как правило, и приводит к провалу всего проекта.
Разделы 3.4, 6.4 написаны А.А. Поповым, а разделы 7.5 и 8.4 совместно А.А. Поповым и Г.М. Алакозом. Разделы 1.2 и 1.3 написаны А.П. Сериковым, а раздел 2.2 - М.В. Кураком. Остальной материал книги написан Г.М. Алакозом.
В отработку технологии микропрограммного конструирования и в создание инструментальных платформ МКМД-бит-потоковых технологий кроме авторов учебного пособия внесли вклад П. Авдошкин, А. Костин и А. Добротворский. При этом за основу была взята более ранняя разработка НИИ Космического приборостроения, решающий вклад в которую внес М.А. Глазков.
Аппаратная платформа МКМД-бит-потоковых технологий в виде СБИС Н1841 ВФ1 реализована на производственном объединении "Альфа" (г. Рига, 1988 г.) большим коллективом разработчиков, среди которых в первую очередь необходимо отметить Л. Вольперта, И. Михайлова, И. Луцкого, В. Горохова, Г. Страутманиса, А. Лейниекса, П. Малахса, Т. Барютину, О. Кузьмина и целый ряд инженеров, обеспечивших комплекс измерительных и испытательных мероприятий при подготовке и выпуске этой СБИС.
Эффективность аффинных преобразований в МКМД-бит-потоковых технологиях исследована совместно Г.М. Алакозом, А.П. Сериковым и В.В. Ткачевым. "Нечисленные" модели формальных нейронов разработаны и исследованы Г.М. Алакозом совместно с И. Клейменовым и А.А. Саломатовым.
После распада СССР исследования технологий микропрограммного конструирования были поддержаны командованием Военно-воздушной инженерной академии им. проф. Н.Е. Жуковского, и в первую очередь генерал-полковником авиации, дважды Героем Советского Союза, летчиком-космонавтом В.В. Коваленком, генерал-лейтенантом В.П. Кутаховым, генерал-лейтенантом В.А. Ефимовым, генерал-майором Ю.Б. Кулифеевым, полковником В.П. Харьковым и коллективом кафедры электронной автоматики.
Междисциплинарный характер разработок средств вычислительной техники наиболее четко проявляется в проектах суперкомпьютеров всех поколений, требования к которым постоянно ужесточались. Последняя в этой области программа DARPA HPCS (high productivity computing systems) предусматривает, что перспективные суперкомпьютеры должны обеспечить реальную производительность в несколько петафлопc, а их глобально адресуемая оперативная память должна на 7-8 порядков превосходить существующую по интегральному показателю качества, из которой на пропускную способность приходится 4-5 порядков, а на емкость 3 порядка, которая должна быть доведена до нескольких пета-байт. При этом ужесточаются и требования к технологиям разработки параллельных программ и к простоте поддерживающих их платформ.
Данная программа должна позволить США:
устранить нарушенный паритет с Японией в области высокопроизводительных вычислений;
создать суперкомпьютеры с перспективной архитектурой для решения стратегически важных государственных задач обеспечения национальной безопасности;
продвинуть на военный и коммерческий рынок качественно новые технологии изготовления элементной базы и аппаратуры.
В современных условиях в России невозможно воспроизвести подобного рода глобальный междисциплинарный проект, требующий скоординированных усилий сотен проектных, научных и промышленных организаций и предприятий. Но у России не менее стратегически важные и масштабные государственные задачи обеспечения национальной безопасности, которые невозможно решить без создания программно-аппаратных платформ с сопоставимыми характеристиками.
Аналогичная ситуация складывалась в середине 80-х годов прошлого столетия в рамках программ СОИ и анти-СОИ, когда СССР вынужден был компенсировать технологическое отставание от США за счет гибких вычислительных технологий проектирования и работы алгоритмически ориентированных субпроцессоров с микропрограммным уровнем доступа, который обеспечивал (сверх)высокие по тем временам коэффициенты распараллеливания вычислений и повышал почти на порядок "время жизни" системы по сравнению с комплектующими СБИС.
Полученный в этот период опыт раскрывается в этой книге, где вскрыты основные источники повышения производительности, отказоустойчивости и эффективного микропрограммного конструирования алгоритмически ориентированных субпроцессоров. В рамках этих проектов пришлось отказаться от целого ряда традиционных подходов и оценок. В частности, пришлось перейти:
от оценки производительности к расчету пропускной способности (сверх)многопроцессорной системы по потокам команд и данных;
от традиционных системных платформ программирования к платформам микропрограммного конструирования, сходным с системными средствами кремниевой компиляции;
от традиционных систем подстановки "горячего резерва" к системам перераспределения исполняемых (бит)инструкций согласно действующей в бит-матрице карте отказов.
В [лекции 1 проанализированы апробированные на практике методы оценки вычислительных характеристик задач предметной области, которые служат базой разработки (Б)ВС, ориентированных на решение "критических" задач. Этот класс задач по своим требованиям превосходит не менее чем на порядок физические возможности существующей вычислительной техники, что вынуждает разработчиков (Б)ВС:]
задействовать в информационных технологиях "собственных нужд" комплекс интенсивных и экстенсивных факторов повышения производительности;
снижать системные аппаратно-временные издержки на управление ходом вычислительного процесса, в том числе и за счет выбора или модификации вычислительных алгоритмов и их параметров.
Показано:
Метрологические проблемы вычислительной техники носят как фундаментальный, так и чисто методический характер, и они неразрешимы в принципе. Фундаментальная составляющая связана с отсутствием единой метрики, определяющей количество информации, а значит, и объем выполненной ЭВМ работы. Методическая составляющая связана с отсутствием эталонных ЭВМ, эталонных алгоритмов преобразования данных и стандартных процедур пересчета реальных алгоритмических затрат в затраты эталонного алгоритма. В итоге нарушается базовый принцип любого измерения, когда измерительный прибор является неотъемлемой частью измеряемого объекта (в данном случае операционной системы) и поэтому постоянно изменяет свою структурно-функциональную схему.
Все без исключения инженерные методики оценки производительности фактически отталкиваются от измерения времени, затраченного на решение "хорошо известной пользователю" задачи. В результате сопоставление двух ЭВМ весьма и весьма субъективно, так как и замер времени, и оценка выполненных машиной инструкций, и распределение времени между системными и прикладными задачами носят достаточно субъективный характер.
Стандартные программные платформы оценки производительности и пропускной способности ЭВМ предоставляют пользователю только возможность создания тестовых программ, которые способны воспроизвести стабильную вычислительную нагрузку реальных задач только при использовании в них циклов for, так как при использовании циклов if вычислительная нагрузка зависит от содержимого преобразуемых данных.
Дальнейшее развитие программных платформ оценки производительности ЭВМ, скорее всего, будет связано с созданием адаптивных средств, оперативно реагирующих и на специфику алгоритма решения задачи, и на специфику архитектуры ЭВМ, и на содержимое преобразуемых потоков данных.
Снижение трудозатрат на адаптацию испытательных и исследовательских программ требует структурного подхода, в рамках которого программные модули представительных задач выступают в качестве неделимых единиц.
Совокупность таких структурных единиц инструментальной платформы оценки качества ВС должна обеспечить управляемое перераспределение вычислительной нагрузки на операционные, коммутационные и управляющие ресурсы, а также ресурс памяти исследуемой ВС, для чего требуется точная априорная оценка этих же видов ресурсов, затребованных вычислительными алгоритмами представительных задач. Поэтому операционное ядро каждой представительной задачи должно быть алгоритмически прозрачным, чтобы на его основе можно было априорно и достоверно оценить требуемую нагрузку на все виды используемых ресурсов.
В [лекции 2 раскрыты особенности построения и использования программных инструментальных платформ параллельных вычислительных систем общего назначения. Показано, что методы и средства конструирования программ
являются не только прерогативой параллельных ней-рокомпьютерных технологий и технологий с микропрограммным уровнем поддержки, но и широко используются при создании программных продуктов для ВС общего назначения. При этом надо отличать инструментальные платформы, которые ориентированы на использование уже существующих аппаратных платформ, от инструментальных платформ, ориентированных на их создание. В первом случае допускается только специфицированная реконфигурация аппаратной платформы под требования вычислительного алгоритма
пользователя, что было апробировано в транспьютерных и многопроцессорных ЦПОС
-проектах, а во втором случае вычислительный алгоритм известен и требуется методами и средствами (полу)заказного проектирования синтезировать аппаратуру его поддержки, что характерно для систолических матриц.]
Центральная проблема создания таких инструментальных платформ - это формализованные средства
представления и поддержки параллелизма, использование которых требует углубленного знания возможностей целевой аппаратной платформы, призванной воплотить в жизнь затребованный программным конструктором
параллелизм. Решить в общем виде задачу формализованного представления параллелизма пока не удалось, что вынуждает:
использовать интерактивный
режим (микро)программного конструирования либо на всех стадиях проекта, как это имеет место в систолических и бит-потоковых технологиях, либо на отдельных, но самых ответственных этапах декомпозиции проекта и распределения (конфигурирования) затребованных ресурсов между коллективом вычислителей, как это имеет место в транспьютерных и многопроцессорных ЦПОС- и RISC-технологиях;
инструментальные платформы "собственных нужд" строить по иерархическому принципу, поэтапно решая задачи извлечения из вычислительного алгоритма потенциально достижимого коэффициента распараллеливания вычислений, представления граф-потока сигнала в "терминах" целевой аппаратной платформы, устранения синонимии, возникающей из-за ограниченных размеров целевой аппаратной платформы.
В [лекции 3 раскрыты особенности работы одной из возможных аппаратных платформ ВС с микропрограммным уровнем доступа. За основу взята МКМД-бит-потоковая СБИС Н1841 ВФ1, которая была разработана в СССР в 1988 году и планировалась к использованию в широком спектре субпроцессорных трактов, ориентированных на решение "критических" задач аэрокосмических (Б)ВС двойного назначения. На ее основе показано:]
Широко разрекламированные на Западе (возможно, и с подрывной целью) систолические вычислительные структуры ориентированы на ОКМД-режим распараллеливания вычислений и требуют интеллектуальных оболочек для приведения алгоритма пользователя к систолическому виду и кремниевых компиляторов для быстрого бездефектного проектирования специализированных систолических СБИС достаточно широкой номенклатуры, покрывающей потребности (Б)ВС во всем спектре решаемых задач. Поэтому в рамках систолических технологий преимущество получал не тот, кто разрабатывал алгоритмы систолического типа, а тот, кто имел более эффективную СБИС-реализацию. (ОКМД - организация вычислений по типу "одиночный поток команд - множественный поток данных".)
Структурно-функциональный и схемотехнический синтез МКМД-бит-процессорных матричных СБИС, УБИС и систем на кремниевой пластине по сложности проекта и вытекающим из него требованиям к поддерживающим инструментальным программно-аппаратным платформам находится на уровне схем средней степени интеграции, содержащих не более 1000 логических вентилей. Это делает прозрачным
процесс проектирования аппаратных платформ для таких вычислительных технологий как в структурно-функциональной, так и в диагностической плоскости. Такое кардинальное снижение размерности задач быстрого бездефектного проектирования и изготовления бит-матричных структур, давно уже не уступающих по уровню функциональной интеграции УБИС, приводит к существенному возрастанию сложности задач микропрограммного конструирования алгоритмически ориентированных субпроцессоров на их основе.
Различные варианты построения бит-процессорных матричных СБИС в основном разнятся средствами управления и коммутации, которые играют решающую роль в обеспечении отказоустойчивости СБИС и субпроцессоров на их основе. При этом зависящая от области применения система реализуемых бит-инструкций мало влияет на структурно-функциональную схему бит-процессора, которая в большей степени определяется принципами и методами организации вычислений.
Принципы и методы МКМД-бит-потоковой организации вычислений таковы, что их реализация приводит к естественной структурно-функциональной избыточности бит-процессоров, которая повышает отказоустойчивость аппаратных платформ. Во-первых, отказавший вентиль может оказаться неиспользуемым при реализации заданной бит-инструкции, а во-вторых, под воздействием отказа в бит-процессоре все же реализуется некоторая бит-инструкция, которая может принадлежать системе ее бит-операций и при сдвигах микропрограмм на бит-матрице может оказаться востребованной именно в данном месте бит-матрицы.
Одну из центральных проблем технологии прототипирования в рамках МКМД-бит-потоковых технологий можно решить на основе методов и средств многоуровневого имитационного моделирования,
что позволяет уже на самых ранних этапах проектирования оценить влияние принимаемых конструктивных и технических решений на отказоустойчивость создаваемого программно-аппаратного продукта.
В результате удается сделать весь процесс проектирования полностью отечественных субпроцессорных трактов управляемым по фактору отказоустойчивости. При этом появляется достаточно уникальная возможность сбалансированного управления вводимой на этапе проектирования и используемой в процессе эксплуатации естественной структурно-функциональной и топологической избыточностью бит-процессоров и соответственно матриц на их основе. Это увеличивает степень связности проекта (суб)про-цессорного тракта в структурно-функциональной и диагностической плоскостях, так как с ростом структурно-функциональной избыточности возрастает и устойчивость к отказам бит-матриц, а значит, и накапливаемая в латентном периоде карта отказов, что негативно сказывается на эффективности работы подсистем диагностики и парирования карт отказов. Отсюда следует, что с ростом отказоустойчивости бит-матриц необходимо увеличивать частоту принудительного тестового контроля, что негативно сказывается на пропускной способности МКМД-бит-потоковых субпроцессорных трактов.
В [лекции 4 раскрыты особенности микропрограммного конструирования
МКМД-бит-потоковых субпроцессоров или, что одно и то же, особенности перехода с микрокомандного на ассемблерный уровень организации вычислений в (Б)ВС с микрокомандным уровнем доступа, которые сводятся к следующему.]
Какие бы методы и средства распараллеливания вычислений ни применялись на различных уровнях управления ходом вычислительного процесса, рано или поздно архитектура (Б)ВС или ее отдельных компонент будет сведена к фон-неймановскому типу, который предполагает последовательный характер перечисления (микро) программных конструкций, описывающих либо бит-инструкцию, либо слов-инструкцию, либо поток-оператор, либо подпрограмму, либо программу, либо задачу, либо комплекс задач и т. д. В таких условиях МКМД-бит-потоковые вычислительные технологии удобны тем, что позволяют в едином операционном и аппаратном базисе оценить аппаратно-временные затраты на организацию вычислений на всех уровнях начиная со слов-командного.
Принципиальное отличие МКМД-бит-потоковых вычислительных технологий состоит в том, что обработка в них осуществляется в распределенной, PD
-ассоциативной памяти (бит)инструкций, а не данных, как это имеет место в классических ассоциативных архитектурах, и не в сосредоточенных операционных устройствах с фиксированной системой ассемблерных инструкций, как это имеет место в наиболее распространенных современных RISC
-архитектурах.
Основным источником повышения пропускной способности МКМД-бит-потоковых субпроцессоров по потокам команд и данных является совмещение во времени и пространстве процессов передачи и обработки данных, что позволяет создавать структурно-функциональные схемы, адекватные графу связности операторов решаемой задачи, причем на всех уровнях организации вычислений начиная с бит-процессорного.
Технология микропрограммного конструирования
МКМД-бит-потоковых субпроцессоров по объективным причинам носит итеративный и интерактивный характер. В таком процессе структурно-функциональная схема субпроцессора синтезируется декомпозицией задач пользователя, нисходящей до микропрограммных алгоритмов реализации отдельных операционных, управляющих, адресных и интерфейсных процедур, а оценку качества принятого технического решения можно получить на основе восходящего конструирования топологии всей микропрограммы, реализующей поток-оператор пользователя.
В процессе микропрограммного конструирования
МКМД-бит-потоковых субпроцессоров можно применять практически все известные алгоритмические, структурно-функциональные, конструктивно-технологические и т. д. методы и средства компенсации системных временных издержек с той разницей, что в этом случае в качестве неделимой единицы проекта служит пространственно фиксированный поток бит-инструкций и пространственно-временной поток данных.
Несмотря на определенные неудачи в области оптоэлектронной вычислительной техники, исследования в этой области показали принципиальную возможность создания нетрадиционных вычислительных технологий, которые по максимуму используют функциональные возможности физических процессов, используемых в качестве вычислительных. В частности, в оптоэлектронных вычислителях можно отказаться от "священной коровы" традиционной вычислительной техники в виде регистровых схем управления, передачи и хранения информации и весь вычислительный процесс реализовать на основе распределенной ассоциативной памяти данных, связанной с произвольно коммутируемой вентильной матрицей разветвленной системой связей прямого доступа.
В лекции 5 показано, что проблемы интерактивного синтеза сверх- и гиперпараллельных микропрограммных конструкций можно преодолеть за счет формализованного синтеза
библиотечных слов- и поток-инструкций на основе рекуррентных процедур, оперирующих не бит-процессорами, а термами, характерными для этих слов- и поток-инструкций. Методика термального синтеза фактически базируется на методах и средствах инструктированного синтеза сложных молекулярно-биологических соединений более простых. На первом шаге этой методики необходимо осуществить выбор между традиционными DD -ассоциативными и перспективными PD -ассоциативными конструкциями или, что одно и то же, между методами адаптации, который зависит от "времени жизни" гетероструктуры:
если "время жизни" велико, то предпочтение следует отдавать DD-ассоциативным конструкциям, конформационные преобразования которых позволяют настроить их на реализацию требуемой функции;
если "время жизни" мало, то предпочтение следует отдавать PD-ассоциативным конструкциям, настройка которых на реализуемую функцию и содержимое одного из преобразуемых операндов требует структурной адаптации.
В рамках этой методики интерактивный характер выбора топологии формально сохраняется только для термов, но фактически он предопределен линейными размерами матриц, априори выделяемых на реализацию топологии слов- и поток-инструкций. При этом, как и в молекулярной биологии, следует отличать функционально значимые и промежуточные (вставочные) термы, первые из которых задают правила и циклы взаимодействия между слов-инструкциями, а вторые обеспечивают рекуррентное наращивание по какому-либо параметру однородной функции. Характерно также, что в "активных зонах" DD -и PD -ассоциативные конструкции взаимодействуют не только между собой, но и с потоками управляющих данных, которые задают циклы такого взаимодействия.
Показательно, что в МКМД-бит-потоковых матрицах "фронт вычислительной волны" распространяется по бит-матрице с помощью механизмов, сходных "пробоям" в реальных аксонно-коллатеральных связях, что наиболее четко проявляется в интерфейсах. Это указывает на то, что в реальных нейросетях преобразование информации может осуществляться не только в соме нейрона, но и в процессе распространения возбуждения по аксонно-коллатеральным связям,
реализующим функции алгоритмически ориентированных PD -ассоциативных субпроцессоров.
В [лекции 6 раскрыты особенности построения и работы реально существующих и не имеющих зарубежных аналогов программных инструментальных платформ бит-потоковых информационных технологий "собственных нужд". Как и в кремниевой компиляции, в бит-потоковых технологиях необходимо поддержать проект в трех плоскостях: структурно-функциональной, программно-аппаратной и диагностической, а само развитие проекта должно осуществляется по иерархии от выбора физико-технического процесса, закладываемого в основу бит-матричной СБИС и до задач пользователя (сверх)многопро-цессорной (Б)ВС. В результате:]
Эффективность объектно-ориентированного подхода к созданию инструментальных платформ МКМД-бит-потоковых технологий предопределяют два фактора: отношение иерархии между "объектами" проекта и множественность "вложений" одних и тех же компонент в программно-аппаратную и диагностическую плоскости проекта.
В структурно-функциональной и программно-аппаратной плоскости бит-процессор является неделимой единицей проекта, но при переходе в диагностическую плоскость его необходимо раскрыть, включив в иерархию описания блоки, узлы, вентили и физико-технические процессы, нарушение условий правильной работы которых и служит источником "расширения" библиотеки бит-инструкций бит-процессора.
Интерактивный режим, а с ним и графический интерфейс инструментальных платформ пока остаются атрибутом бит-потоковых технологий, так как они поддерживают завершающий этап проектирования субпроцессоров. На этом этапе решается узловая задача всего проекта, связанная с компоновкой библиотечных модулей на бит-матрице, или, что одно и то же, на плоской ортогональной FIFO -регистровой коммутационной решетке, где сдвиг на один дискрет всегда сопровождается изменением времени задержки на 1 такт. ( FIFO
- "первый вошел - первый вышел".)
Главная особенность МКМД-бит-потоковых технологий состоит в том, что объектом диагностики на схемотехническом уровне является относительно простая схема бит-процессора (порядка 800-1000 вентилей), которая к тому же достаточно просто разбивается на блоки с разным последействием отказов: регистр команды, операционный канал, канал транзита, средства коммутации и т. п. Вместе с тем функциональные возможности программно-аппаратной плоскости проекта, как правило, отвечают ультравысокой степени интеграции (порядка 8-20 миллионов вентилей и выше) за счет наращивания "площади" бит-матрицы (от 1000 до 10000 бит-процессоров).
Средства эксплуатационной диагностики
МКМД-бит-потоковых субпроцессоров являются продолжением средств промышленной диагностики, используемых для генерации эталонных тестов и эталонных тестовых воздействий для первой. Незнание производственных методов и средств обнаружения отказов в бит-матричных СБИС и положенных в их основу физических моделей отказов приводит к неоправданному увеличению пространства диагностики, делая само изделие диагностонепригодным. Данный вывод справедлив для всех изделий микроэлектроники, и поэтому стратегия их заимствования третьих стран чревата высокой вероятностью необнаружения отказов, особенно в современных процессорах RISC - и ЦПОС
-архитектуры, которые по степени функциональной интеграции уже давно относятся к УБИС.
В [лекции 7 раскрыты специфические особенности обеспечения живучести и восстановления работоспособности (фактически микропрограммного "ремонта" без отключения источников питания) МКМД-бит-потоковых субпроцессоров, которые вытекают из возможности использования некратного (по отношению ко всей бит-матрице) резерва. Приведенные данные позволяют утверждать:]
В МКМД-бит-потоковых вычислительных технологиях на основе микроэлектронных СБИС или УБИС основная ставка сделана на структурно-функциональный полиморфизм
бит-процессоров, который поддерживает как технологию восходящего микропрограммного конструирования потоковых (суб)процессоров, так и технологию достаточно быстрого парирования карт отказов за счет параметрической адаптации
исходного "рабочего тела" микропрограммы пользователя. При этом используется как скрытый, почти 2-кратный структурно-функциональный резерв каждого бит-процессора, так и централизованный и существенно меньший по отношению к рабочей области бит-матрицы "горячий" аппаратный резерв, дифференцированно "перемещаемый" по всей бит-матрице.
Наибольших интеллектуальных и временных затрат требует этап интерактивного микропрограммного конструирования проблемно-или алгоритмически ориентированных (суб)процессоров, который завершается созданием индивидуальной вторичной топологической структуры для каждого поток-оператора пользователя. При переходе вычислительной техники в супрамолекулярную или нано-метровую область этот этап трансформируется в синтез
"рабочего тела", для которого специфицированы
(био)химические модальности и уровни "сигналов", кодирующих управляющие, тестовые и обрабатываемые потоки информации.
Этап синтеза
тестовых микропрограмм достаточно просто формализовать
и свести к размещению ограниченного количества термов на бит-матрице с учетом ограничений на конструкцию гальванических программных шин и шин данных ( P
- и D -шины соответственно), обеспечивающих доступ к периферийным бит-процессорам.
Основная проблема, препятствующая кардинальному снижению времени локализации и идентификации отказов в бит-матрице, связана с опосредованным доступом к "внутренним" бит-процессорам по FIFO
-регистровым P - и D -шинам, и решать ее приходится в основном конструктивно-технологическими методами, напрямую зависящими от используемых физико-химических процессов управления, передачи и обработки информации. Сам процесс диагностики приобретает корректирующий характер,
по крайней мере на отдельных фазах и этапах.
Удовлетворить темп реального времени при решении задач локализации и идентификации отказов можно только с использованием комплекса системотехнических, схемотехнических и конструктивно-технологических мер, которые минимизируют временные издержки на программирование бит-матрицы, снижают размеры контролируемых подматриц и повышают эффективность парирования обнаруженных карт отказов непосредственно во время диагностики.
Парирование карт отказов сводится к индивидуальной, толерантной перекомпоновке вторичной топологической структуры каждого поток-оператора пользователя. При этом локальные и глобальные аффинные преобразования
"рабочего тела" микропрограммы по максимуму сохраняют условия пространственно-временного взаимодействия бит-инструкций. Но это требует трансформации части "функциональных" бит-процессоров в "коммутационные" и пространственного "сдвига" бит-инструкций по бит-матрице.
Выбор системы локальных, толерантных, аффинных преобразований представляет собой достаточно сложную, двухкритериальную оптимизационную задачу, которая в супрамолекулярных вычислителях может оказаться соизмеримой по временным и энергетическим затратам с повторным синтезом (структурной регенерацией) исходного "рабочего тела", в процессе которого нерелевантные молекулы замещаются релевантными. Это указывает на то, что в супрамолекулярных технологиях прежде всего необходимо осуществить выбор между ОКМД-схемой парирования отказов, которая основана на прямой подстановке резерва ( структурная адаптация
), и МКМД-схемой, которая основана на параметрической адаптации
структурно-функциональной схемы вычислителя.
В [лекции 8 синтезирован МКМД-бит-потоковый субпроцессор, ориентированный на решение задач астронавигации космических летательных аппаратов, и на его основе проиллюстрированы особенности использования информационных технологий "собственных нужд" с использованием микропрограммного уровня доступа. На этой основе показано:]
В МКМД-бит-потоковых вычислительных технологиях структурно-функциональная декомпозиция заданий пользователя представляет
собой многокритериальную задачу, в которой необходимо учесть:минимум аппаратных затрат и максимум неоднородности составляющих модулей, повышающий устойчивость к отказам,
минимум информационных связей между модулями, снижающий затраты на редактирование этих связей после проведения над телом микропрограммы толерантных аффинных преобразований,
и целый ряд других требований к топологии микропрограммы, обеспечивающих удобство работы всей системы обеспечения живучести субпроцессора.
Естественная структурно-функциональная избыточность МКМД-бит-потоковых субпроцессоров используется комплексно, обеспечивая не только (сверх)высокие коэффициенты распараллеливания вычислений, но и повышая более чем на порядок их отказоустойчивость в сравнении с параллельными системами на основе процессоров традиционной архитектуры, а также вычислительную устойчивость, гарантируя нулевую абсолютную погрешность за счет вариации разрядной сетки по ходу вычислений.
Чем выше МКМД-уровень распараллеливания вычислений, тем большему количеству процессоров необходимо задать управляющие параметры и начальные условия, что в пределе, когда вычисления организованы по принципу "одна (бит)инструкция - один (бит)процессор" приводит к работе всей (Б)ВС в режиме интерпретации, а не компиляции программ.
Работа МКМД-бит-потокового субпроцессора в режиме интерпретации, а не трансляции или компиляции программ:сопряжена с временными издержками, которые сгруппированы в отдельный этап ввода микропрограммы в бит-матрицу и которые
окупаются при выполнении системообразующего неравенства за счет большого количества циклов обработки "больших" потоков данных;
требует приведения исходного вычислительного алгоритма к потоковому виду с явным указанием всех управляющих, интерфейсных и диагностических процедур;
приводит к росту в основном аппаратных, а не временных затрат на реализацию индивидуальных управляющих, интерфейсных и диагностических процедур, что повышает "мобильность" модуля при парировании карт отказов.
Чем больше имеющийся естественный структурно-функциональный и топологический резерв у бит-процессоров и соответственно матриц на их основе, тем более устойчив к отказам поток-оператор и тем больше карта отказов, накапливаемая в латентном периоде. Отсюда следует, что с ростом отказоустойчивости бит-матриц необходимо увеличивать частоту принудительного тестового контроля, что негативно сказывается на пропускной способности МКМД-бит-потоковых субпроцессорных трактов.
С проектных позиций МКМД-бит-потоковые вычислительные технологии удобны тем, что на самых ранних этапах создания субпроцессоров здесь можно получить достоверные оценки достижимой пропускной способности по потокам инструкций и данных, массо-габаритам, потребляемой энергии, отказоустойчивости и времени задержки, которые играют решающую роль в оценке летно-технических и боевых характеристик космических ЛА и их БЭО.
Методы и средства обеспечения живучести МКМД-бит-потоковых субпроцессоров не исключают, а только дополняют традиционные методы и средства, основанные на введении дополнительной аппаратной, информационной и временной избыточности. При этом возможность проведения в темпе реального времени фактически ремонтно-восстановительных работ позволяет снизить необходимый аппаратный резерв до десятков процентов и сохранить живучесть субпроцессорного тракта при наличии в нем карт, насчитывающих десятки отказов. В результате удельные аппаратные затраты на парирование одного отказа в МКМД-бит-потоковых субпроцессорах не менее чем на порядок меньше аналогичных затрат в традиционных фон-неймановских схемах мажоритарного резервирования, которые по-прежнему доминируют в зарубежной авионике.
Даже на отсталой по современным меркам элементной базе разработки середины 80-х годов прошлого столетия в МКМД-бит-потоковых технологиях удается достичь
производительности не менее 3,6*103 MIPS и пропускной способности по потокам данных порядка 500 Мбит/сек, что более характерно для современных персональных ЭВМ, работающих на частотах порядка единиц ГГц.
Авторы отдают себе отчет в том, что с целым рядом базовых положений могут не согласиться глубокие и авторитетные специалисты из более узких областей научной деятельности. Но такова цена междисциплинарного подхода к решению сложных проблем, в рамках которого трудно договориться даже по терминологии и тем более по "незыблемым истинам", закладываемым в систематику научно-технических исследований и разработок.
Поэтому авторы руководствовались не бесспорностью базовых положений и предложенной системы ценностей при создании сложных технотронных комплексов, а полнотой охвата всей проблематики их сквозного системного проектирования, в рамках которого нет и не может быть научных и организационно-технических "мелочей", пренебрежение которыми, как правило, и приводит к провалу всего проекта.
Разделы 3.4, 6.4 написаны А.А. Поповым, а разделы 7.5 и 8.4 совместно А.А. Поповым и Г.М. Алакозом. Разделы 1.2 и 1.3 написаны А.П. Сериковым, а раздел 2.2 - М.В. Кураком. Остальной материал книги написан Г.М. Алакозом.
В отработку технологии микропрограммного конструирования и в создание инструментальных платформ МКМД-бит-потоковых технологий кроме авторов учебного пособия внесли вклад П. Авдошкин, А. Костин и А. Добротворский. При этом за основу была взята более ранняя разработка НИИ Космического приборостроения, решающий вклад в которую внес М.А. Глазков.
Аппаратная платформа МКМД-бит-потоковых технологий в виде СБИС Н1841 ВФ1 реализована на производственном объединении "Альфа" (г. Рига, 1988 г.) большим коллективом разработчиков, среди которых в первую очередь необходимо отметить Л. Вольперта, И. Михайлова, И. Луцкого, В. Горохова, Г. Страутманиса, А. Лейниекса, П. Малахса, Т. Барютину, О. Кузьмина и целый ряд инженеров, обеспечивших комплекс измерительных и испытательных мероприятий при подготовке и выпуске этой СБИС.
Эффективность аффинных преобразований в МКМД-бит-потоковых технологиях исследована совместно Г.М. Алакозом, А.П. Сериковым и В.В. Ткачевым. "Нечисленные" модели формальных нейронов разработаны и исследованы Г.М. Алакозом совместно с И. Клейменовым и А.А. Саломатовым.
После распада СССР исследования технологий микропрограммного конструирования были поддержаны командованием Военно-воздушной инженерной академии им. проф. Н.Е. Жуковского, и в первую очередь генерал-полковником авиации, дважды Героем Советского Союза, летчиком-космонавтом В.В. Коваленком, генерал-лейтенантом В.П. Кутаховым, генерал-лейтенантом В.А. Ефимовым, генерал-майором Ю.Б. Кулифеевым, полковником В.П. Харьковым и коллективом кафедры электронной автоматики.