МИНИСТЕРСТВО ОБРАЗОВАНИЯ РФ САНКТ-ПЕТЕРБУРГСКИЙ ГОСУДАРСТВЕННЫЙ ЭЛЕКТРОТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ «ЛЭТИ»
Кафедра МО ЭВМ
РЕФЕРАТ
по учебной дисциплине « Архитектура Вычислительных Систем »
на тему « ПАРАЛЛЕЛЬНОСТЬ ЗАПОМИНАЮЩЕЙ СРЕДЫ И ДОСТУПА К ДАННЫМ »
Выполнили:
студенты группы 1352
Красильщик В.
Сосульников А.
Преподаватель:
Горячёв Г.А.
Санкт-Петербург
2004 Г.
1. Параллельность запоминающей среды и доступа к данным
До сих пор, рассматривая параллельность, многомерность и многоформатность информационных сред, структур данных и структур их хранения, мы исходили из некоторых абстрактных представлений, основывающихся на соответствующих моделях. В качестве основной модели информационной среды принималась пространственная точечная решетка. Элемент решетки (точка) сопоставлялся с узлом информационной структуры (элементом данных). Теперь необходимо рассмотреть комплекс вопросов, связанных с реализацией соответствующей запоминающей среды на физическом уровне, т. е. из тех конкретных элементов памяти, логических и переключающих схем, которые собственно и составляют элементную базу современной вычислительной техники.
Запоминающая среда составляет основу устройства памяти, но конечно, средства управления средой, определяющие многомерность и многоформатность доступа к данным, формирование совокупности элементов данных, представленной нами как геометрический формат, также входят в структуру параллельной памяти. В связи с этим обратимся вновь к базовым вариантам структурного параллелизма памяти, а также рассмотрим вопрос о связи памяти с операционными элементами и требования к структуре памяти в различных случаях.
В системах, где параллелизм реализуется на основе использования независимых блоков памяти, каждый блок связан с собственным абонентом (процессором). Для того чтобы обеспечить согласованное по данным взаимодействие между процессорами, организуются межпроцессорные связи. Они могут быть жесткими или перестраиваемыми и реализуются в общем случае некоторой коммутационной сетью (рис. 1).
Рис. 1 Структура параллельной системы с независимыми блоками памяти
Структура на рис. 1 показывает, что каждый процессор, являясь единственным абонентом своего блока памяти, работает с ней независимо. Конфликтов при обращении к памяти не происходит, а проблема доступа i-гo процессора к данным, размещенным в j-м блоке памяти (i!=j), решается на уровне управления системой в целом, т. е. путем передачи данных через коммутирующую сеть с участием процессоров. Таким образом, c точки зрения взаимодействия память-процессор к памяти на предъявляется каких-либо специфических требований. Она может иметь обычную организацию (запоминающую среду, управление и т. п.).
Другое дело в системах, использующих параллелизм над общим полем памяти (рис. 2). Здесь одна память взаимодействует с множеством абонентов, и внутри такой памяти должны
Рис. 2. Структура системы с параллельной памятью
разрешаться все конфликты: и связанные с установлением физической связи абонента с памятью, и порождаемые необходимостью доступа к произвольно адресуемым данным.
Собственно говоря, именно такая память является действительно параллельной, так как все вопросы, связанные с параллелизмом доступа, должны решаться в самой памяти. Устройства и системы памяти такого типа и являются предметом данной книги. Какими же средствами (пока на структурном уровне) могут быть достигнуты желаемые свойства параллельной памяти?
Очевидно, что обеспечение независимой физической связи памяти с множественными абонентами возможно в двух случаях. Во-первых, если для времени доступа к памяти Т и периода обращения к памяти любого из абонентов τi (i = 1, 2, ..., L) справедливо соотношение
T < Στi(1)
При выполнении (1) память успевает обслужить множество абонентов, разделяя их во времени. Задержка в доступе к памяти не ощущается абонентом. Имеет место масштабирование параллелизма памяти с р<1. К сожалению, подобные ситуации, относительно просто реализуемые в структуре памяти, так как сама память работает, по существу, как последовательная, нечасто встречаются на практике.
Другим, более важным, случаем является такое соотношение T и τi, когда
T ~ τi(2)
T > τi (3)
При выполнении и (2), и (3) необходимо устанавливать одновременно множественную связь с абонентами памяти, применяя в случае (3) еще и масштабирование параллелизма с р > 1. Именно такие ситуации требуют специальных структурных решений и должны быть рассмотрены особо. Причем в случае (3) память должна быть внутренне параллельной даже при единственном внешне последовательном абоненте.
Структурное решение подсказывается рассмотренной выше организацией параллелизма с независимыми блоками памяти. Для того чтобы обеспечить одновременное установление физической связи с множеством внешних абонентов, память должна быть внутренне многоблочной, а для обеспечения общего по отношению к внешним абонентам поля памяти она должна быть внутренне коммутируема, т. е. должна существовать возможность передачи данных из любого блока памяти любому внешнему абоненту. Исходя из этого, можно представить структуру параллельной памяти (рис. 3).
Рис. 3. Структура параллельной памяти
Основу структурной организации параллельной памяти составляют три основные части: запоминающая среда (блок хранения), адресный блок и коммутационная сеть.
Запоминающая среда построена из множества блоков (модулей) памяти. Общая емкость параллельной памяти образуется как сумма объемов всех блоков. Организация блоков должна обеспечивать возможность формирования требуемой виртуальной конфигурации общего поля памяти (по размерности, набору геометрических форматов и др.).
Адресный блок реализует функции формирования по входному описанию структуры данных адресов для блоков запоминающей среды.
Коммутационная сеть предназначена для осуществления связей абонентов параллельной памяти с блоками, в которых хранятся запрашиваемые данные. Она наряду со специально организованными блоками хранения и адресным блоком обеспечивает формирование виртуального единого поля памяти.
Па первый взгляд структура устройства параллельной памяти схожа со структурой обычной памяти. Во всяком случая она включает примерно те же компоненты, что и обычная. Действительно, классическая последовательная память также содержит в своей структуре блок хранения, адресный блок и формирователи, обеспечивающие выдачу требуемой порции информации на внешнюю шину данных. Однако, являясь аналогами соответствующих блоков последовательной памяти, компоненты структуры параллельной памяти выполняют значительно более сложные функции. Эти новые функции, связанные с обеспечением параллельности, многомерности и многоформатности доступа, выдвигают и новые требования к проектированию блоков параллельной памяти.
При проектировании устройства памяти с параллельным многомерным и многоформатным доступом к данным необходимо решить три основные задачи: 1) размещение элементов многомерных данных по модулям (блокам) памяти, обеспечивающее бесконфликтный доступ для всех предусмотренных видов обращения; 2) вычисление физических адресов в модулях, соответствующих месту хранения параллельно выбираемых данных; 3) определение необходимых видов коммутации шин данных, обеспечивающих требования бесконфликтной маршрутизации параллельных данных.
Сохраняя определенную самостоятельность, все эти задачи, конечно, тесно взаимосвязаны. В данном разделе мы только кратко остановимся на содержании соответствующих проблем и введем некоторые понятия и определения.