Архитектура машин управляемых потоком данных


Сети трактов передачи пакетов



бет5/9
Дата16.10.2023
өлшемі0,54 Mb.
#185870
түріРеферат
1   2   3   4   5   6   7   8   9
Байланысты:
prorobot.ru-19-0101

2.4. Сети трактов передачи пакетов

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


Селекторная, распределительная и управляющая сети, показанные в приложении 1, представляют собой сети трактов передачи пакетов. Когда команда готова к выполнению, формируется пакет операций, посылаемый в селекторную сеть. В функции этой сети входит направлять пакеты операций из большого числа ячеек команд в меньшее число блоков выполнения операций и принятия решения, обеспечивая при этом поступление пакета к соответствующему блоку. Выполнение команды приводит к формированию одного или нескольких пакетов данных или управляющих пакетов (один пакет для каждого адреса). Эти пакеты проходят через распределительную и управляющую сети и направляются к указанным ячейкам команд. Все три сети могут быть построены на основе элементов двух типов рис. 4. Один из них – селектор, передающий пакет с одного из своих входов на выход. Селектор обслуживает свои входы по очереди, так что каждый вход рано или поздно будет опрошен. Другой элемент – переключатель – направляет пакет со своего единственного входа на один из выходов, при этом выбор нужного выхода производится на основе некоторых характеристик пакета. В селекторной сети в качестве такой характеристики переключатель использует код операции, в распределительной или управляющей сети – адрес пункта назначения пакета. Сети включают в себя элементы еще трех типов: буферы – для временного хранения информации, а также преобразователи кодов из последовательного в параллельный и из параллельного в последовательный.


Рис. 4. Основные элементы сетей


На рис. 5 показана функциональная схема простой селекторной сети. Эта небольшая сеть принимает операционные пакеты из 16 ячеек команд и направляет их к четырем процессорам. Селекторную сеть можно представить себе в виде черного ящика с небольшим количеством входов (по одному на каждую ячейку команды) и меньшим количеством выходов (по одному на процессор). Вследствие большого количества входов возникает проблема минимизации числа соединений между селекторной сетью и памятью команд. Поэтому указанная сеть принимает информацию из ячеек команд в виде последовательности битов. В то время со стороны выходов желательно минимизировать время, в течении которого процессор занят выполнением команд, и, следовательно, целесообразно передавать пакет в процессор весь сразу. Таким образом, в процессе прохождения пакетов по селекторной сети осуществляется преобразование информации пакетов из последовательного кода в параллельный.


П араллелизм функционирования сети возможен благодаря использованию буферов, обеспечивающих временное хранение командных пакетов на входах каждого переключателя и селектора. Так, в небольшой селекторной сети, показанной на рис. 5, могло бы находиться до 30 пакетов команд. Селекторы и переключатели функционируют асинхронно, поэтому асинхронно и продвижение пакетов через сеть, за исключением случаев «конкуренции».
Управляющая и распределительная сети строятся на тех же элементах, что и селекторная сеть, но отличаются от последней конфигурацией схемы соединения этих элементов рис. 6. Распределительная и управляющая сети имеют малое количество входов и большое количество выходов. По причинам, рассмотренным выше, эти сети получают пакеты в параллельном коде, а затем по мере их прохождения выполняют преобразование параллельного кода в последовательный, в результате чего в ячейки команд пакеты поступают в виде последовательности битов.
Анализ времени, необходимый для выполнения команды, показывает, что оно является суммой временной задержки пребывания команды в селекторной сети, времени выполнения команды в процессоре и временной задержки в распределительной или управляющей сети. Время работы процессора фиксировано, а задержки в сетях носят стохастический характер. Эти задержки являются функцией количества уровней в сети и числа других пакетов в этой сети. Поскольку число пакетов в сети в каждый момент времени зависит от особенностей конкретной программы, анализ производительности представляет собой непростую задачу.






Продвижение пакетов через сеть может увеличить суммарное время выполнения каждой отдельной команды (до десятков микросекунд), но это не обязательно приведет к заметному снижению производительности машины, поскольку в движении одновременно находится большое число пакетов. Длительность продвижения становится «узким местом» только в тех случаях, когда готовым к выполнению оказывается лишь небольшое количество команд. (Предположим, программа достигла состояния, когда готова к выполнению только одна команда.) Например, если в машине 20 процессоров – блоков выполнения операций и принятия решения, - каждый из которых может обработать командный пакет в среднем за 200 нс., то в целом производительность машины может быть оценена быстродействием, равным 100млн. операций в секунду. Такая скорость достижима даже в условиях чрезвычайно медленного прохождения отдельного пакета по сетям, если в любой момент времени найдется, по меньшей мере, 20 готовых к выполнению команд, если селекторная сеть может поставлять 20 командных пакетов каждые 200 нс. и если распределительная и управляющая сети обладают примерно такими же возможностями. Последнее необходимо для того, чтобы поддерживать максимальное число готовых к выполнению команд.


Еще одним свойством машин потоков данных является высокая степень однородности логической структуры машины. Уже ячейка команды содержит значительную часть различных элементов, определяющих структуру машины в целом. Каждая ячейка включает запоминающее устройство и логические схемы проверки состояния готовности команды к выполнению. Другой формой проявления однородности логической структуры машины потоков данных является наличие большого количества блоков выполнения операций и принятия решения. А также, сетям трактов передачи пакетов присуща высокая степень однородности структуры, поскольку они состоят из большого числа селекторов, переключателей, буферов и преобразователей.


Достарыңызбен бөлісу:
1   2   3   4   5   6   7   8   9




©engime.org 2024
әкімшілігінің қараңыз

    Басты бет