Оп с многоканальным доступом
Ресурсы ОП используются несколькими устройствами – процессором и каналами ввода-вывода (КВВ). Эти устройства функционируют одновременно и независимо друг от друга, генерируя обращение к памяти с целью записи слов информации. Поскольку в каждый момент времени память может обслуживать только одно обращение, т.е. только одно устройство, возникает задача распределения ресурсов памяти между несколькими устройствами. Память, ресурсы которой распределяются между несколькими потребителями (каналами), называется памятью с многоканальным доступом.
Правило выбора канала, которому будет предоставлено обслуживание, определяется дисциплиной обслуживания. Наиболее естественной является дисциплина обслуживания в порядке поступления запросов, при которой первым обслуживается запрос, поступивший ранее других запросов. Конфликтная ситуация, возникающая при одновременном поступлении запросов от нескольких каналов, разрешаетсяпутём присваивания каналам различных приоритетов. Приоритет задаётся числом.
Обозначим сигналы запросов к памяти от каналов 1, ... М переменными λ1, ... , λmи сигналы, разрешающие соответствующим каналам доступ к памяти, переменными р1, ... рм. Сигнал рк может принять единичное значение, если одновременно выполняются следующие три условия:
1. имеется запрос λкк памяти от канала;
2. отсутствуют запросы λ1, ... , λк-1 от каналов с более высокими приоритетами;
3. не начато обслуживание каналов k+1, …, M,т.е. отсутствуют сигналы pk+1,…,pM.
Таким образом, переменные рк являются следующими формами других переменных:
рк =
В случае четырёх каналов доступа к ОП имеем:
Меньшее значение числа рiсоответствует более высокому приоритету, т.е. большему праву на предоставление обслуживания. Такая процедура обслуживания называется обслуживанием с относительным приоритетом.
Принцип построения памяти с многоканальным доступом и схемой анализа приоритетов (САП) на рисунке 6.12.
Рисунок 6.12 – Принцип построения ОП с многоканальным доступом
Совокупность цепей, составляющих интерфейс ОП, поступает с каналов К1, К2, К3 и от процессора К4. Каналы генерируют запросы λк, принимающие значение 1 в момент обращения к памяти с целью записи или чтения слова информации. Эти сигналы обрабатываются схемой анализа приоритетов (САП), реализующей систему функций 6.1. В любой момент времени только один сигнал Рк может принять значение 1. Этот сигнал подключает один канал к ОП. Канал будет связан с памятью до тех пор, пока λк = 1, т.е. до конца обслуживания соответствующего моменту окончания цикла записи-чтения. В этот период все остальные запросыожидают момента окончания обслуживания, после которого схема выберет на обслуживание очередной запрос с наивысшим приоритетом.
Приоритеты разделяются следующим образом. Низший приоритет присваивается процессору, более высокие – каналам ввода-вывода, причём каналу с большим быстродействием присваивается больший приоритет. Такое распределение приоритетов между процессором и каналом объясняется тем, что каналы, к которым подключены ВЗУ, не могут долго ждать – большое время ожидания приводит к потере информации, записанной или считываемой с непрерывно движущегося носителя. Процессор может ожидать обслуживания сколь угодно долго, в результате этого уменьшается лишь его быстродействие. Указанное распределение приоритетов приводит к тому, что процессор работает в режиме приостановок: в моменты обмена информацией между внешним устройством и ОП процессор простаивает. В результате этого быстродействие процессора зависит от интенсивности потока информации между ОП и внешними устройствами и уменьшается с ростом интенсивности потока.
ОП с расслоением сообщений
Многоблочная ОП, в которой допускается совместное выполнение нескольких обращений к разным блокам ОЗУ, называется ОП с расслоением сообщений. В такой ОП блоки ОЗУ функционируют параллельно во времени, что возможно, если последующие обращения к ОП адресованы к блокам, не занятым обслуживанием предшествующих запросов.
N –блочная память с расслоением обращений и M-канальным доступом функционирует во времени следующим образом:
1. Путём анализа приоритетов каналов и состояний блоков памяти выделяется канал К с наивысшим приоритетом, обращающийся к блоку В, свободному в данный момент времени.
2. Информация с шин канала К передаётся в блок памяти В, который начинает выполнять операцию записи или чтения слова с заданным адресом.Если канал К инициирует запись слова, то после приема адреса и слова блок В посылает в канал сигнал об окончании обслуживания, не дожидаясь конца цикла записи. Если канал К инициирует операцию чтения слова, то после передачи адреса слова в ЗУ память прекращает связь с данным каналом и переходит к следующему действию.
3. Путём анализа состояний блоков памяти выделяется блок В, закончивший операцию чтения и хранящий выбранное слово на своём выходном регистре. Определяется канал К, инициировавший операцию чтения в блоке В. Слово из блока В передаётся в канал К, после чего блок В считается свободным. Если такие блоки отсутствуют, то память начинает выполнять действие 1.
Указанные действия реализуются устройством управления ОП, которое содержит схемы, анализирующие приоритеты запросов и состояния блоков, и схемы коммутации шин каналов и блоков.
Степень расслоения обращений характеризуется характером расслоения, равным среднему числу обращений к памяти. Коэффициент расслоения имеет максимальное значение, равное N, если последовательность обращений адресуется блокам в следующем порядке:
0, 1, .., N-1, 0, 1, …,N-1, 0, 1, …
Коэффициент расслоения принимает минимальное значение равное 1, если все обращения адресуется к одному блоку.
Следовательно, для увеличения производительности памяти необходимо распределить информацию по блокам таким образом, чтобы обращения к ОП со стороны процессора и КВВ были в максимальной степени расслоены.
Значение коэффициента расслоения и, следовательно, степень увеличения производительности ОП зависит от класса решаемых машинных задач, порождающего определённый характер распределения адресов в последовательных обращениях к памяти. Для универсальных ЭВМ коэффициенты расслоения при использовании 2-, 4- и 8-блочной памяти обычно лежат в пределах 1,2...1,3, 1,7...2,2 и 3,4...4,2 соответственно.