Alpha HOWTO: O bajtach
Następna strona
Poprzednia strona
Spis treści
8. O bajtach
Kiedy architektura Alpha została przedstawiona, była unikalna pośród innych
architektur RISC z powodu przetwarzania 8 i 16-bitowych obciążeń i zmiennych.
Wspomagała też 32 i 64-bitowe. (,,longword'' i ,,quadword'' wg. nomenklatury
Digitala). Projektanci (Dick Sites, Rich Witek) wyjaśnili tą decyzję następującymi
zaletami:
Obsługa bajtów w pamięci podręcznej i podsystemie pamięci zwykle zwalnia dostęp
do 32 i 64-bitowych danych.
Obsługa bajtów czyni ciężkim zbudowanie układu korekcji błędów cache/pamięci o
dużej prędkości.
Alpha kompensuje to przez zapewnienie silnych instrukcji manipulujących grupami
bajtów w rejestrach 64-bitowych. Standardowe programy testujące operacje na
łańcuchach (strings) (np. programy testujące magazynu ,,Byte'') pokazują,
że wydajność Alphy jest bardzo wysoka przy operacjach na bajtach.
Absencja bajtowych obciążeń i ładunków zmienia działanie przełączników (semaphores)
w oprogramowaniu, oraz podsystemów wejścia/wyjścia. Rozwiązanie problemu I/O
Digitala, to użycie kilku niskopoziomowych linii adresowych do zdefiniowania
rozmiaru danych podczas przesyłania I/O, oraz do dekodowania tych danych jako
bajtów. Jest to tzw. rozproszone adresowanie (sparse addressing). Marnuje ono
przestrzeń adresową i powoduje fragmentację pamięci I/O (więcej o skutkach
rozproszonego adresowania kiedy uda mi się coś o tym napisać). Zauważ, że pamięć
I/O w tym kontekście odnosi się do wszystkich zasobów systemowych PCI i dlatego
odnosi się zarówno do pamięci PCI, jak i do przestrzeni adresowej PCI.
Kiedy na rynek wyszedł 21164A, architektura Alphy musiała już zawierać adresowanie
bajtów. Wykonywanie tych nowych instrukcji na wcześniejszych procesorach spowoduje
wyjątek ,,OPCDEC'' kodu PAL, a wtedy kod będzie obsługiwał ten wyjątek, co będzie
miało wpływ na wydajność. Skutkiem tego powninno być (wg. mnie) ograniczenie
korzystania z tych instrukcji do sterowników urządzeń, a nie kodu aplikacji.
Te nowe bajtowe obciążenia i ładunki znaczą, że przyszłe chipsety będą w stanie
obsługiwać zdefragmentowaną przestrzeń I/O.
Następna strona
Poprzednia strona
Spis treści
Wyszukiwarka
Podobne podstrony:
Alpha HOWTO plAlpha HOWTO pl 7 (2)Alpha HOWTO pl 4 (2)alpha howto plAlpha HOWTO pl (2)Alpha HOWTO pl 12 (2)Alpha HOWTO pl 10 (2)Alpha HOWTO pl 6 (2)Alpha HOWTO pl 13 (2)Alpha HOWTO pl 5 (2)Alpha HOWTO pl 1 (2)Alpha HOWTO pl 11 (2)Alpha HOWTO pl 3 (2)bootdisk howto pl 8PPP HOWTO pl 6 (2)NIS HOWTO pl 1 (2)cdrom howto pl 1więcej podobnych podstron