Попов И.И., Матвеев А.А., Максимов Н.В. Архитектура электронно-вычислительных машин и систем (2004) (1186255), страница 28
Текст из файла (страница 28)
Следует заметить, однако, что со временемдаже самая передовая архитектура неизбежно устаревает и возникаетпотребность внесения радикальных изменений архитектуру и способыорганизации вычислительных систем.В настоящее время одним из наиболее важных факторов,определяющих современные тенденции в развитии информационныхтехнологий,являетсяориентациякомпаний-поставщиковкомпьютерного оборудования на рынок прикладных программныхсредств. Это объясняется, прежде всего, тем, что для конечногопользователя, в конце концов, важно программное обеспечение,позволяющее решить его задачи, а не выбор той или иной аппаратнойплатформы.
Переход от однородных сетей программно совместимыхкомпьютеров к построению неоднородных сетей, включающихкомпьютеры разных фирм-производителей, в корне изменил и точкузрения на саму сеть: из сравнительно простого средства обменаинформацией она превратилась в средство интеграции отдельныхресурсов — мощную распределенную вычислительную систему, каждыйэлемент которой (сервер или рабочая станция) лучше всегосоответствует требованиям конкретной прикладной задачи.Этот переход выдвинул ряд новых требований.
Прежде всего,такая вычислительная среда должна позволять гибко менять количествои состав аппаратных средств и программного обеспечения всоответствии с меняющимися требованиями решаемых задач. Вовторых, она должна обеспечивать возможность запуска одних и тех жепрограммных систем на различных аппаратных платформах, т.е.обеспечивать мобильность программного обеспечения.
В третьих, этасреда должна гарантировать возможность применения одних и тех жечеловеко-машинных интерфейсов на всех компьютерах, входящих в162неоднородную сеть. В условиях жесткой конкуренции производителейаппаратных платформ и программного обеспечения сформироваласьконцепция открытых систем, представляющая собой совокупностьстандартов на различные компоненты вычислительной среды,предназначенных для обеспечения мобильности программных средств врамках неоднородной, распределенной вычислительной системы.Одним из вариантов моделей открытой среды является модельOSE (Open System Environment), предложенная комитетом IEEE POSIX.На основе этой модели национальный институт стандартов и технологииСША выпустил документ «Application Portability Profile (APP).
The U.S.Government's Open System Environment Profile OSE/1 Version 2.0»,который определяет рекомендуемые для федеральных учреждений СШАспецификации в области информационных технологий, обеспечивающиемобильность системного и прикладного программного обеспечения. Всеведущие производители компьютеров и программного обеспечения вСША в настоящее время придерживаются требований этого документа.Рассмотрим далее по порядку процессоры, коммуникационные икоммутационные среды, блоки памяти.Перспективные типы процессоров ЭВМАссоциативные процессорыСуществующие в настоящее время алгоритмы прикладных задач,системное программное обеспечение и аппаратные средствапреимущественно ориентированы на традиционную адреснуюобработку данных.
Данные должны быть представлены в видеограниченного количества форматов (например, массивы, списки,записи), должна быть явно создана структура связей между элементамиданных посредством указателей на адреса элементов памяти, приобработке этих данных должна быть выполнена совокупность операций,обеспечивающих доступ к данным по указателям. Такой подходобуславливает громоздкость операционных систем и системпрограммирования, а также служит препятствием к созданиювычислительных средств с архитектурой, ориентированной на болееэффективное использование параллелизма обработки данных.163Ассоциативный способ обработки данных позволяет преодолетьмногие ограничения, присущие адресному доступу к памяти, за счетзадания некоторого критерия отбора и проведение требуемыхпреобразований, только над теми данными, которые удовлетворяютэтому критерию.
Критерием отбора может быть совпадение с любымэлементом данных, достаточным для выделения искомых данных извсех данных. Поиск данных может происходить по фрагменту,имеющему большую или меньшую корреляцию с заданным элементомданных.Исследованы и в разной степени используются несколькоподходов, различающихся полнотой реализации модели ассоциативнойобработки. Если реализуется только ассоциативная выборка данных споследующим поочередным использованием найденных данных, тоговорят об ассоциативной памяти или памяти, адресуемой посодержимому. При достаточно полной реализации всех свойствассоциативной обработки, используется термин «ассоциативныйпроцессор».Ассоциативные системы относятся к классу: один поток команд множество потоков данных (SIMD = Single Instruction Multiple Data).
Этисистемы включают большое число операционных устройств, способныходновременно по командам управляющего устройства вести обработкунескольких потоков данных. В ассоциативных вычислительныхсистемах информация на обработку поступает от ассоциативныхзапоминающих устройств (АЗУ), характеризующиеся тем, чтоинформация в них выбирается не по определенному адресу, а по еесодержанию.Конвейерные процессорыПроцессоры современных компьютеров используют особеннуютехнологию - конвейеры, которые позволяют обрабатывать более однойкоманды одновременно.164Обработка команды может быть разделена на несколько основныхэтапов, которые можно назвать микрокомандами.
Известны следующиеосновные типы микрокоманд:• Выборка команды• Расшифровка команды• Выборка необходимых операндов• Выполнение команды• Сохранение результатовВсе этапы команды задействуются только один раз и всегда водном и том же порядке: одна за другой. Это, в частности означает, чтоесли первая микрокоманда выполнила свою работу и передаларезультаты второй, то для выполнения текущей команды она больше непонадобиться, и, следовательно, может приступить к выполнениюследующей команды. Выделим каждую команду в отдельную частьустройства и расположим их в порядке выполнения. В первый моментвремени выполняется первая микрокоманда. Она завершает свою работуи начинает выполняться вторая микрокоманда, в то время как перваяготова для выполнения следующей инструкции. Первая инструкцияможет считаться выполненной, когда завершать работу все пятьмикрокоманд.Такая технология обработки команд носит название конвейернойобработки.
Каждая часть устройства называется ступенью конвейера, аобщее число ступеней – длиной конвейера.Во многих вычислительных системах, наряду с конвейеромкоманд, используются и конвейеры данных.Сочетание этих двух конвейеров дает возможность достичь оченьвысокой производительности на определенных классах задач, особенноесли используется несколько различных конвейерных процессоров,способных работать одновременно и независимо друг от друга.Одной из наиболее высокопроизводительных вычислительныхконвейерных систем считается СRАY. В этой системе конвейерныйпринцип обработки используется в максимальной степени. Имеется иконвейер команд, и конвейер арифметических и логических операций.
Всистеме широко применяется совмещенная обработка информациинесколькими устройствами. Максимальная пиковая производительностьпроцессора может составлять 12 GFLOPS.В настоящее время созданы однокристальные векторноконвейерные процессоры, такие как SX-6. Основными компонентамимикропроцессора являются скалярный процессор и 8 идентичныхвекторных устройств, суммарная производительность которыхсоставляет 64 GFLOPS.165Матричные процессорыНаиболее распространенными из систем, класса: один потоккоманд - множество - потоков данных (SIMD), являются матричныесистемы, которые лучше всего приспособлены для решения задач,характеризующихся параллелизмом независимых объектов или данных.Организация систем подобного типа на первый взгляд достаточнопроста.
Они имеют общее управляющее устройство, генерирующеепоток команд и большое число процессорных элементов, работающихпараллельно и обрабатывающих каждая свой поток данных. Такимобразом, производительность системы оказывается равной суммепроизводительностей всех процессорных элементов. Однако напрактике, чтобы обеспечить достаточную эффективность системы прирешении широкого круга задач необходимо организовать связи междупроцессорными элементами с тем, чтобы наиболее полно загрузить ихработой. Именно характер связей между процессорными элементами иопределяет разные свойства системы.Одним из первых матричных процессоров был SОLОМОN (60-егоды).Рис.
14. Структура матричной вычислительной системы "SOLOMON"Система SОLOМОN содержит 1024 процессорных элемента,соединены в виде матрицы: 32х32. Каждый процессорный элементматрицы включает в себя процессор, обеспечивающий выполнениепоследовательных поразрядных арифметических и логическихопераций, а также оперативное ЗУ, емкостью 16 Кбайт.
Длина слова переменная от 1 до 128 разрядов. Разрядность слов устанавливаетсяпрограммно. По каналам связи от устройства управления передаютсякоманды и общие константы. В процессорном элементе используется,так называемая, многомодальная логика, которая позволяет каждомупроцессорному элементу выполнять или не выполнять общую операцию166в зависимости от значений обрабатываемых данных. В каждый моментвсе активные процессорные элементы выполняют одну и ту жеоперацию над данными, хранящимися в собственной памяти иимеющими один и тот же адрес.Идея многомодальности заключается в том, что в каждомпроцессорном элементе имеется специальный регистр на 4 состояния регистр моды.
Мода (модальность) заносится в этот регистр отустройства управления. При выполнении последовательности командмодальность передается в коде операции и сравнивается с содержимымрегистра моды. Если есть совпадения, то операция выполняется. Вдругих случаях процессорный элемент не выполняет операцию, номожет, в зависимости от кода, пересылать свои операнды соседнемупроцессорному элементу.