Pobieranie prezentacji. Proszę czekać

Pobieranie prezentacji. Proszę czekać

Architektura komputerów Wykład nr 12: Architektury superskalarne Piotr Bilski.

Podobne prezentacje


Prezentacja na temat: "Architektura komputerów Wykład nr 12: Architektury superskalarne Piotr Bilski."— Zapis prezentacji:

1 Architektura komputerów Wykład nr 12: Architektury superskalarne Piotr Bilski

2 Organizacja superskalarna Zwielokrotnienie potoków Za każdy potok odpowiedzialna jest inna jednostka funkcjonalna Potokowe jednostki funkcjonalne Rejestry całkowitoliczbowe Rejestry zmiennopozycyjne Operacje na pamięci

3 Przetwarzanie superpotokowe Pobranie Dekod. Exec.Zapis Architektura superskalarna stopnia 2 Architektura superpotokowa stopnia 2 czas

4 Ograniczenia architektury superskalarnej Paralelizm na poziomie rozkazu Paralelizm na poziomie maszyny Ograniczenia: –Prawdziwa zależność danych –Zależność proceduralna –Konflikt zasobów –Zależność wyjściowa –Antyzależność

5 Wpływ zależności na wykonanie programu czas i1i2i1i2 i1i1 i2i2 i3i3 i4i4 i5i5 i6i6 Zależność danych lub konflikt zasobów Zależność proceduralna

6 Prawdziwa zależność danych Obie instrukcje mogą zostać pobrane i zdekodowane jednocześnie I2 nie może być wykonana zanim I1 nie zostanie wykonana I1Addr1, r2 I2 Mover3, r1

7 Paralelizm na poziomie rozkazu Wymaga niezależności między następującymi po sobie instrukcjami Możliwa do osiągnięcia, jeśli istnieje niezależność proceduralna i danych Na przykład: Load R1 R2 AddR3 R3, 1 AddR4 R4, R2 Add R3 R3, 1 AddR4 R3, R2 Store[R4] R0

8 Strategie wydawania rozkazów Kolejne wydawanie/kolejne kończenie Kolejne wydawanie/inna kolejność kończenia Inna kolejność wydawania/inna kolejność kończenia

9 I1I2 I3I4 I3I4 I5I6 I1I2 I1 I3 I4 I5 I6 I1I2 I3I4 I5I6 Kolejne wydawanie/kolejne kończenie Dekodowanie wykonywanie zapis I1 – dwa cykle na wykonanie I3 i I4 – ta sama ALU I5 zależy od I4 I5 i I6 – ta sama ALU

10 Kolejne wydawanie/inna kolejność kończenia I1I2 I3I4 I5I6 I1I2 I1I3 I4 I5 I6 I2 I1I3 I4 I5 I6 Dekodowanie wykonywanie zapis I1 – dwa cykle na wykonanie I3 i I4 – ta sama ALU I5 zależy od I4 I5 i I6 – ta sama ALU

11 Zależność wyjściowa I3 nie może być ukończona przed I1 Zmiana kolejności wykonywania rozkazów jest trudna i wymaga rozwiązań sprzętowych I1:R3 R3 op R5 I2:R4 R3 + 1 I3:R3 R5 + 1 I4:R7 R3 op R4

12 Inna kolejność wydawania/inna kolejność kończenia I1I2 I3I4 I5I6 I1I2 I1I3 I6I4 I5 I2 I1I3 I4I6 I5 I1, I2 I3, I4 I4,I5,I6 I5 Dekodowanie okno wykonywanie zapis I1 – dwa cykle na wykonanie I3 i I4 – ta sama ALU I5 zależy od I4 I5 i I6 – ta sama ALU

13 Antyzależność I1: R3 R3 op R5 I2:R4 R3 + 1 I3:R3 R5 + 1 I4:R7 R3 op R4 I3 nie może być zakończona, zanim I2 jest wykonana Zależność jest odwrócona

14 Przemianowanie rejestrów Zmiana sekwencji wykonywania rozkazów uniemożliwia określenie zawartości rejestrów w dowolnej chwili Nowym danym procesor przypisuje wolne rejestry Rozkazy sięgają do danej poprzez numer/nazwę odpowiadającego jej rejestru

15 Paralelizm maszynowy Powielanie jednostek funkcjonalnych ma sens tylko, gdy przemianuje się rejestry Okno rozkazu powinno być dostatecznie duże, aby pomieścić efektywnie dużo rozkazów (>16) Konieczna jest skuteczna predykcja rozgałęzień

16 Przyspieszenie architektur superskalarnych (bez przemianowania rejestrów)

17 Przyspieszenie architektur superskalarnych (z przemianowaniem rejestrów)

18 Przetwarzanie superskalarne

19 Przykład superskalarności – P4 Procesor pobiera rozkazy sekwencyjnie Rozkaz tłumaczony jest na mikrooperacje (rozkazy RISC) Mikrooperacje są przetwarzane superskalarnie w 20-elementowych potokach Wyniki mikrooperacji są wysyłane do wewnętrznych rejestrów i porządkowane

20 Architektura Pentium 4

21 Działanie Pentium 4 Pobranie instrukcji z pamięci w porządku programu statycznego Tłumaczenie instrukcji na jedną lub więcej instrukcji RISC o ustalonej długości (mikrooperacji) Wykonywanie mikrooperacji w potoku superskalarnym –Mikrooperacje mogą być wykonywane w innej kolejności! Umieszczenie wyników mikrooperacji w zbiorze rejestrów w oryginalnym porządku programu Zewnętrzna powłoka CISC z wewnętrznym rdzeniem RISC Wewnętrzny rdzeń RISC o długości co najmniej 20 etapów

22 Potok Pentium 4

23 Architektura PowerPC Procesor składa się z trzech niezależnych jednostek wykonawczych (wykonanie trzech rozkazów jednocześnie): –Jednostka przetwarzania rozgałęzień –Jednostka zmiennopozycyjna –Jednostka całkowitoliczbowa

24 Schemat PowerPC 601

25 Potok PowerPC 601


Pobierz ppt "Architektura komputerów Wykład nr 12: Architektury superskalarne Piotr Bilski."

Podobne prezentacje


Reklamy Google