Alpha HOWTO pl 8 (2)


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 pl
Alpha HOWTO pl 7 (2)
Alpha HOWTO pl 4 (2)
alpha howto pl
Alpha 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 8
PPP HOWTO pl 6 (2)
NIS HOWTO pl 1 (2)
cdrom howto pl 1

więcej podobnych podstron