Арбитр ы в мультипроцессорных системах

28
Арбитры в мультипроцессорных системах

Upload: carol-ferguson

Post on 15-Mar-2016

54 views

Category:

Documents


6 download

DESCRIPTION

Арбитр ы в мультипроцессорных системах. Арбитры. Используются для разрешения конфликтных ситуаций на аппаратном уровне Арбитры принимают от процессоров сигналы требования доступа ri и формируют сигналы предоставление доступа qi . - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Арбитр ы в мультипроцессорных системах

Арбитры в мультипроцессорных системах

Page 2: Арбитр ы в мультипроцессорных системах

Арбитры• Используются для разрешения конфликтных

ситуаций на аппаратном уровне• Арбитры принимают от процессоров сигналы

требования доступа ri и формируют сигналы предоставление доступа qi.

• Основная задача при получении нескольких сигналов требования доступа сформировать один сигнал предоставление доступа.

• Арбитры:• Децентрализованные – отдельные блоки, входящие

в состав ПМ.• Централизованные – реализованы в виде одного

устройства.

Page 3: Арбитр ы в мультипроцессорных системах

• Централизованные арбитры реализуют различные дисциплины обслуживания очередей.

• Каждый ПМ связан с арбитром собственными линиями требования/предоставления доступа.

• Преимущество – высокие функциональные возможности.• Недостатки • высокая аппаратурная сложность устройства, большое

количество линий связи, • большая длительность цикла арбитража, • сложности с масштабированием системы, • наращивание количества процессоров влечет за собой

изменение аппаратурных средств и алгоритма управления устройства.

A

ПМ1

r1 g1

ПМn

rn gn

ПМ2

r2 g2

...

Page 4: Арбитр ы в мультипроцессорных системах

• Распределенный арбитр представляет собой отдельные блоки встроенные в ПМ, функционирование основано на принципе приоритетных цепочек.

• Преимущества• простота реализации, • простота наращивания процессорных модулей, • соответствие концепции модульной архитектуры.• Недостатки• высокое время обслуживания требований доступа, • невозможность реализации дисциплин обслуживания очередей. • реализация географических приоритетов, т.е. чем дальше ПМ расположен от

начала цепочки, тем меньше шансов обслуживания, при высокой интенсивности требований доступа наиболее удаленные П могут оказаться в тупиковой ситуации и не получить доступа вообще.

• Повышение производительности – реализация динамических приоритетов

A

ПМ1 ПМnПМ2 ...A A

Page 5: Арбитр ы в мультипроцессорных системах

Организация приоритетной цепочки

ПМ1 ПМnПМ2

...

r1 g1 rn gnr2 g2ТД

ПД

Page 6: Арбитр ы в мультипроцессорных системах

Распределенный арбитр с фиксированными приоритетами

A

ПМ1

r1 g1

&

&

bs

A

ПМ2

r2 g2

&

&

A

ПМn

rn gn

&

&“1”

Page 7: Арбитр ы в мультипроцессорных системах

Синтез

A

ПМ1

r1 g1

БА

&

bso

“1”

bsi

di do

A

ПМ1

r1 g1

БА

&

bsobsi

di do

ri

ri, di, bsi

ri

ria1 a2

bso, qi

Ожидание

Захват шиныПередача данных

Принцип функционированияri – требование доступа. bsi – входной сигнал, 1 – шина занята, 0 – шина свободнаbso – выходной сигнал, 1 – захвачена, 0 – свободнаdi / do - входной / выходной сигнал цепочкиqi – предоставление доступа

Page 8: Арбитр ы в мультипроцессорных системах

Распределенный арбитр с динамическими

приоритетами

A

ПМ1

r1 g1

БА

&

bsobsi

di do1

A

ПМ1

r1 g1

БА

&

bsobsi

di do1

st1 st2

...

...

«1»

1

0

ri

ri, di, bsi

ri

ri

a1

a2

bso, qi

a3

st

ri, bsibsi

А1 – пассивное состояние, ожидание сигнала ТД, или ожидание обслуживания по цепочке. А2 – захват шины, передача данных через системную шину.А3 – процессор сбрасывает сигнал ТД и переходит в состояние – максимальный приоритет (начало цепочки).

st – установка максимального приоритета

Page 9: Арбитр ы в мультипроцессорных системах

Управляющий автомат

• Тип автомата: Мили • Мура • Способ управления: Синхронный • Асинхронный• Метод синтеза: • Временные функции• Декомпозиция триггеров

Page 10: Арбитр ы в мультипроцессорных системах

Централизованные арбитры

• метод приоритетной цепочки• метод индивидуального обслуживания

заявок• метод циклического обслуживания

заявок

Page 11: Арбитр ы в мультипроцессорных системах

Метод приоритетной цепочки• Преимущества, малое количество связей простота

наращивания процессорных модулей, концепция модульной архитектуры

• Недостатки, географические приоритеты

A

ПМ1

r1 bs

ПМn

rn bs

ПМ2

r2 bs

...

rbs

q

Page 12: Арбитр ы в мультипроцессорных системах

Метод циклического обслуживания запросов

• Решает проблему уменьшения количества линий связи, уменьшает длительность процесса арбитража, по отношению к распределенными арбитрами, возможна реализация как фиксированных так и динамических приоритетов.

A

ПМ1

r1 bs

ПМn

rn bs

ПМ2

r2 bs

...

rbsq

s

q1 q2 qn

CT

r – монтажное И, линия требования прерывания ТП, поступает на вход арбитра;

bs – монтажное И, линия блокирования СШ

q – s-розрядный код.

Page 13: Арбитр ы в мультипроцессорных системах

Синтез централизованного арбитра

• Реализация по методу циклического опроса запросов. • Тип управляющего автомата - синхронный, Мура• Метод временных функций / метод декомпозиции триггеров

ri, bs

ri, bs

bs

bs

a1

a2

CT+1

a3

CT=0

Состояние ожидания(нет запроса или шина

занята)

Есть запрос, шина свободна

Состояние счета и выдачи кода ПМ, пока шина свободна. ПМ узнает свой код и захватывает шину

При захвате шины, сброс счетчика

Page 14: Арбитр ы в мультипроцессорных системах

Кодирование состояний

ri, bs

ri, bs

bs

bsa1 a2

CT+1

a3

CT=0α

, c

, c

c

c

c

c

00 01

1110

Page 15: Арбитр ы в мультипроцессорных системах

Комбинационная схема автомата

&

&

&

&

&

&Reset

Clk

bs

r

&Q2

&Q1

&

&

CT+1

CT=0

Page 16: Арбитр ы в мультипроцессорных системах

Синтез счетчика

ACT s

qReset

Clk

bs

rQ2

Q1

CT+1

CT=0

&

CT=0

CT+1

Page 17: Арбитр ы в мультипроцессорных системах

Счетчик считает в коде Грея01326754

12131514101198

0110011001100110

0011110000111100

0000111111110000

0000000011111111

Page 18: Арбитр ы в мультипроцессорных системах

Реализация управления в арбитрах

Распределенныеарбитры

Централизованныеарбитры

Синхронныеавтоматы

Асинхронныеавтоматы

–+

++

Метод временных

функций

Метод декомпозиции

триггеров

Синхронизация в каждом арбитре своя, необходимость общей

синхронизации

Page 19: Арбитр ы в мультипроцессорных системах

Реализация динамического приоритета в централизованных арбитрах

ri, bs

ri, bs

bs

bs, a1 a2

CT+1

a3

α

, c

, c

c

c

c

00 01 11

10

bs, c

Состояние счета

• Динамический приоритет реализован за счет отсутствия сброса счетчика, при выдаче очередного запроса на прерывание на линию ТП – последнее обслуженное устройство имеет максимальный приоритет

• Реализация по методу циклического опроса запросов. • Тип управляющего автомата - синхронный, Мура• Метод временных функций

Дополнительная вершина

Page 20: Арбитр ы в мультипроцессорных системах

Синтез централизованного арбитра• Альтернативный способ эффективный при небольшом

количестве процессоров, имеет низкие аппаратурные затраты за счет отсутствия счетчика

• Реализация по методу циклического опроса запросов. • Тип управляющего автомата - асинхронный, Мура• Метод временных функций

ri, bs

ri, bs

bs

a2 a3

011

a4

010

Начальное состояние, сброс счетчика

Шина занята, запроса нет

Захват шины, сброс счетчика

a1

000

001

a4

110

ri, bs

ri, bs

ri, bs

bs

bsbs

Page 21: Арбитр ы в мультипроцессорных системах

Таблица переходов автоматаПС -> СП ПС СП ri bs F3 G3 F2 G2 F1 G1

a1 -> a2 000 001 1 0 0 0 0 0 1 0

a2 -> a3 001 011 1 0 0 0 1 0 0 0

a3 -> a1 011 000 – 1 0 0 0 1 0 1

a3 -> a4 011 010 1 0 0 0 0 0 0 1

a4 -> a1 010 000 – 1 0 0 0 1 0 0

a4 -> a5 010 110 1 0 1 0 0 0 0 0

a5 -> a1 110 000 – 1 0 1 0 1 0 0

a5 -> a2 110 001 1 0 0 1 0 1 1 0

a2 -> a1 001 000 – 1 0 0 0 0 0 0

bsriQQQF 3233 set)GiQ(FiQ tt Re1

Page 22: Арбитр ы в мультипроцессорных системах

Синтез централизованного арбитра с динамическими приоритетами

• Реализация по методу циклического опроса запросов. • Тип управляющего автомата - синхронный, Мура• Метод временных функций / метод декомпозиции триггеров

ri, bs

bs

a1 a2

10

a3

01

00

ri, bs

ri, bs

ri, bs

bsbs

a3

11

ri

ri

bs

ri

ri

Page 23: Арбитр ы в мультипроцессорных системах

Арбитры с индивидуальным обслуживанием запросов

A

ПМ1

r1 bs

ПМn

rn bs

ПМ2

r2 bs

...

rbs

q1

q2

qn

...

Программная реализация алгоритмов

обслуживания очередей

Аппаратная реализация алгоритмов

обслуживания очередей

КонтроллерыСпециализированные схемы на ПЛИС

Page 24: Арбитр ы в мультипроцессорных системах

Пример аппаратной реализации арбитра с индивидуальным обслуживанием

запросовRG

{q}

Q

CD38 3

DC8

MS

3

1

УА

rа rа

Q

{r}

w

Есть запрос прерывания

Cнято требование прерывания

Приоритетныйшифратор

ra

ra, rc

rca1 a2

W=1

Ожиданиенет требования

прерыванияЗапись в регистр

ra

W=0

Управление записью в регистр

Page 25: Арбитр ы в мультипроцессорных системах

МНОГОМАГИСТРАЛЬНЫЕ СИСТЕМЫ

• повышение эффективности обмена информацией, • большие возможности в плане реконфигурации систем,• требует больших аппаратурных затрат.

ЛМ1

ЛМ2

ЛМn

СМ1 СМ2 СМn

I/O I/O I/O

LM1

LM2

LMn

CPU1

CPU2

CPUn

...

...GM1 GM2 GMn

Page 26: Арбитр ы в мультипроцессорных системах

• Основные особенности мультипроцессорной системы – обеспечение доступа к системной магистрали и средства коммутации обеспечивающие отключение устройств от системной шины – реконфигурацию системы.

Арбитры + селектор адреса

Специальные управляющие регистры (запись команды) + коммутаторы управляемые этими командами

Page 27: Арбитр ы в мультипроцессорных системах

Реконфигурация системы

Интерфейс

РС

РУК

УДСМ УДЛМ Окно

К

КПЛПЦПКППТП

СМ

ЛМ

РУ

Бит отключения процессорного блока

Бит отключения ЦП

Page 28: Арбитр ы в мультипроцессорных системах

P

1

1

AR1

ARn...

RDM1

RDMn...

AR

RDM

LMi

AE

W

R

GMj

AR

RDM

CA GMk

GMi

...

&

ri

giАрбитр... GMi

AE

W

R

AR

RDM

1

1

1

&

&

&

...

...

...

AE

W

R

AEm

W(i+1)

R(i+1)

r(i+1)

... rm

g(i+1)

... gm

PM(i+1)

GBi

GBj

GBk

...

VCS

VCSg(i+1)

VCSgm

...

GMj

СА GMk

GMi

...

r(i+1)

R

LBi LB(i+1)

PMm

GMj

СА GMk

GMi

...

rm

LBm

&

AE(i+1)

&

AE

PMiAE(i+1)

W(i+1)

R(i+1)

Rm

Wm

AE(i+1)

...

...

...

AE(i+1)

W(i+1)

R(i+1)

Фрагмент вычислительной системы для курсового проекта