Architektura komputerów Tydzień 8

Magistrale systemowe

Magistrala

● Układy składające się na komputer (procesor, pamięć, układy we/wy)

muszą się ze sobą komunikować, czyli być połączone.

● Układy łączymy ze sobą ścieżkami zapewniającymi przesyłanie danych między nimi.

● Magistrala to zestaw ścieżek łączących różne układy. Jest ona wspólna dla wszystkich lub części układów.

Struktura magistrali

● Magistrala systemowa składa się z kilkudziesięciu lub nawet kilkuset oddzielnych linii.

● Linie te dzielimy na trzy zasadnicze grupy:

– danych – ścieżki do przesyłania danych

– adresowe – określają źródło lub przeznaczenie dla danych (adres pamięci lub urządzenie wejścia/wyjścia)

– sterowania – regulują dostęp do magistrali

Linie sterowania

– Zapis w pamięci

– Odczyt z pamięci

– Zapis do wyjścia

– Odczyt z wejścia

– Potwierdzenie przesłania

– Zapotrzebowanie na magistralę

– Rezygnacja z magistrali

– Żądanie przerwania

– Potwierdzenie przerwania

– Zegar

Hierarchiczne struktury wielomagistralowe

● Im więcej urządzeń dołączonych do magistrali, tym większe opóźnienia propagacji, co może zauważalnie

zmniejszyć wydajność.

● Jeśli zapotrzebowanie na przesyłanie danych jest bliskie pojemności

magistrali, staje się ona wąskim

gardłem – wprowadza opóźnienia.

● Rozwiązaniem jest stosowanie wielu magistral odpowiednio połączonych.

Szybkie magistrale

hierarchiczne

Pamięć

Sterownik

Pamięć

Procesor

podręczna

pamięci

główna

Magistrala

Magistrala

lokalna

systemowa

SCSI

IEEE 1394

Grafika

LAN

Magistrala szybkiego przesyłania

Porty

Porty

Interfejs

Porty

szeregowe

równoległe

szyny

PS/2

Szyna rozszerzeń

Rodzaje magistral

● Linie magistrali można podzielić na dwa rodzaje:

– specjalizowane

– multipleksowane

● Linie specjalizowane są przeznaczine do realizowania jednej, wyznaczonej funkcji, np. linia adresowa lub danych.

● Linie multipleksowane mogą spełniać różne role, np. podanie adresu w jednej jednostce czasu, a w następnej danych.

Arbitraż

● Jeśli do magistrali może być

przyłączonych więcej niż dwa układy musi istnieć sterownik zwany arbitrem.

● Arbiter przydziela czas magistrali poszczególnym układom zgłaszającym zapotrzebowanie na przesłanie danych.

● Czas przydzielony może być

koordynowany asynchronicznie lub

synchronicznie.

Magistrala PCI

● PCI to skrót od Peripheral Component Interconnect

● Magistrala PCI może mieć 32 lub 64 linie danych.

● Może pracować z częstotliwością 33 lub 66 MHz.

● Magistrala PCI jest zestandaryzowana i może być używana w komputerach o

różnych architekturach (Intel x86, PowerPC i innych).

PCI w komputerach biurowych Pamięć

Procesor

podręczna

Sterownik

Pamięć

pamięci

główna

Magistrala PCI

Most szyny

LAN

IDE

Grafika

rozszerzeń

Magistrala rozszerzeń

Porty

Port

szeregowe

równoległy

PCI w serwerach

Pamięć

główna

Procesor 0

Procesor 1

Pamięć

Pamięć

Sterownik

podręczna

podręczna

pamięci

Magistrala systemowa

Most PCI

Most PCI

Magistrala PCI

Magistrala PCI

Most szyny

Porty

Port

rozszerzeń szeregowe równoległy

LAN

SCSI

Grafika

Magistrala rozszerzeń

Struktura magistrali PCI

● Linie magistrali PCI można podzielić na następujące grupy:

– systemowe (zegar, zerowanie)

– adresu i danych (32 multipleksowane linie dla adresów i danych)

– sterowania interfejsu

– arbitrażowe

– informacje o błędach

– opcjonalne linie przerwań

– opcjonalne rozszerzenia 64 bitowe (dodatkowe 32 multipleksowane linie adresów i danych)

– opcjonalne obsługi pamięci podręcznej

– opcjonalne testowania

Działanie magistrali PCI

● Przesyłanie danych odbywa się w formie transakcji między inicjatorem

transmisji a celem.

● Inicjator domagając się sterowania magistralą określa typ transakcji do przeprowadzenia wysyłając jeden z rozkazów PCI.

● Każde przesłanie danych to jedna transakcja składająca się z jednego cyklu adresowego i jednego lub więcej faz przesyłania danych.

Rozkazy PCI

– potwierdzenie przerwania

– cykl specjalny

– odczyt wejścia-wyjścia

– zapis wejścia-wyjścia

– odczyt pamięci

– linia odczytu pamięci

– zwielokrotniony odczyt pamięci

– zapis w pamięci

– zapis w pamięci i unieważnienie

– odczyt konfiguracji

– zapis konfiguracji

– cykl podwójnego adresu

Arbitraż PCI

● Każdy moduł ma przypisane oddzielne sygnały zapotrzebowania (REQ) i

udostępniania (GNT) do arbitra.

Arbiter

GNT REQ

GNT REQ

GNT REQ

GNT REQ

PCI

Urządzenie Urządzenie Urządzenie Urządzenie PCI

PCI

PCI

PCI