PowerPC


PowerPC w encyklopedii

Z Wikipedii, wolnej encyklopedii Przejdź do nawigacji Przejdź do wyszukiwania Mikroprocesor PowerPC 604e firmy Motorola

PowerPCarchitektura mikroprocesorów typu RISC oraz nazwa handlowa mikroprocesorów zgodnych z tą architekturą.

Architektura mikroprocesora PowerPC została stworzona przez konsorcjum firm Apple-IBM-Motorola znane pod skrótem AIM. Z początku mikroprocesory tej architektury przeznaczone były na rynek komputerów osobistych, z czasem stały się często używanymi w zastosowaniach serwerowych, klastrowych oraz w systemach wbudowanych. Mikroprocesor stał się podstawą opublikowanych przez AIM specyfikacji platform referencyjnych PReP oraz CHRP. Popularność przyniósł mu wybór na CPU komputerów osobistych Macintosh produkowanych przez firmę Apple w latach 1994-2006.

Mikroprocesor stosowany jest także w komputerach Pegasos, AmigaOne (uprzednio w kartach procesorowych dla komputera Amiga), również w kilku projektach komputerów zgodnych Atari Falcon. Na bazie mikroprocesora PowerPC oraz jego sieciowej wersji PowerQUICC oparte były niektóre serie urządzeń sieciowych firmy Cisco. Stosowany jest chętnie w systemach wbudowanych, gdzie używana jest specjalna, nieznacznie różniąca się od oryginalnej w zakresie specyfikacji mikroarchitektury, wersja mikroprocesora.

Spis treści

Historia | edytuj kod

Mikroprocesor PowerPC 601 firmy IBM

IBM | edytuj kod

Historia PowerPC zaczęła się od prototypowego układu IBM 801, który implementował pomysły uważanego przez wielu za ojca mikroarchitektury RISCJohna Cocke'a. Pochodne układu IBM 801 stosowane były w systemach wbudowanych produkowanych przez IBM. Niewystarczająca wydajność mikroprocesorów wytwarzanych przez IBM skłoniła firmę do uruchomienia projektu budowy najszybszego procesora na rynku. W rezultacie prac otrzymano architekturę POWER wprowadzoną po raz pierwszy do użytku na początku lat 90. XX wieku w systemach RISC System/6000.

Oryginalny mikroprocesor POWER, jedna z pierwszych implementacji superskalarnego procesora RISC, był konstrukcją wieloukładową. Inżynierowie firmy IBM szybko doszli do wniosku, że warto skupić się na budowie jednostki jednoukładowej przy jednoczesnej rezygnacji z kilku nadmiarowych instrukcji procesora.

AIM Alliance | edytuj kod

Niedługo potem firma Apple została włączona do projektu rozwoju rodziny jednoukładowego mikroprocesora opartego o mikroarchitekturę POWER. Apple, jako jeden z największych klientów firmy Motorola zaprosił ją do wspólnych rozmów nad rozwojem mikroarchitektury POWER, co było podyktowane uprzednią, długą współpracą obydwu firm. Powstałe konsorcjum nazwano AIM od początkowych liter nazw Apple-IBM-Motorola.

W tym czasie Motorola posiadała własną architekturę RISC w postaci serii 88000, która jednak nie zdobyła uznania na rynku. Z drugiej strony mikroprocesory serii 88000 były już w produkcji; Data General dostarczał komputery z 88k a Apple posiadał prototypowe wersje maszyn pracujących na bazie tego mikroprocesora.

W rezultacie prac nad architekturą nowego procesora stworzono specyfikację PowerPC (Performance Computing), dzięki której:

  • IBM uzyskał wiarygodnego i doświadczonego producenta układów,
  • Apple zdobyło dla swoich komputerów jeden z najszybszych procesorów RISC na rynku i wsparcie marketingowe ze względu na światową znajomość marki IBM,
  • Motorola uzyskała nowoczesną architekturę procesora RISC i pomoc technologiczną ze strony IBM

Pierwsze urządzenia oparte o PowerPC zostały przyjęte przez rynek z entuzjazmem. Oprócz komputerów Apple Macintosh, zarówno Motorola jak i IBM dostarczały systemy zbudowane na jego podstawie. Microsoft stworzył wersję Windows NT przeznaczoną dla architektury PowerPC, który był sprzedawany w zestawie z serwerami produkowanymi przez Motorolę, zaś Sun Microsystems wprowadził do sprzedaży przeznaczoną pod ten procesor wersję swojego sztandarowego systemu Solaris OS. IBM przeportował swój system AIX i planował wydać działającą na komputerach z zainstalowanym procesorem PowerPC wersję OS/2. W połowie lat 90. wyniki benchmarków odnoszących się do procesorów architektury PowerPC dawały lepsze rezultaty niż te przeprowadzane dla najszybszych procesorów architektury IA-32.

Zapotrzebowanie na mikroprocesory nowej architektury na maszynach desktopowych nigdy nie osiągnęło spodziewanego poziomu. Po krótkiej obecności na rynku zniknęły napisane pod PowerPC wersje systemów: Windows NT, Solaris OS, OS/2. Fakt ten był spowodowany brakiem dostępności aplikacji możliwych do uruchomienia przy użyciu nowej architektury procesora. Jedynie komputery Macintosh produkowane przez Apple pozostawały wierne mikroprocesorom PowerPC.

W 2004 roku Motorola zaprzestała produkcji układów mikroprocesorowych przenosząc dział rozwoju i produkcji do wydzielonej spółki pod nazwą Freescale Semiconductor. W tym samym czasie IBM zaprzestał całkowicie produkcji komputerów osobistych (opartych o procesory architektury IA-32) na rzecz chińskiego producenta Lenovo. IBM skupił się na przeprojektowaniu układu PowerPC zgodnie z oczekiwaniami producentów konsoli do gier takich jak: Sony PlayStation 3, Nintendo Wii oraz Xbox 360 produkcji Microsoftu.

Na konferencji WWDC 6 czerwca 2005 roku Apple zapowiedziało, że w następnych wersjach komputerów Macintosh będą stosowane jedynie procesory marki Intel w architekturze IA-32. Przejście rozpoczęło się 12 stycznia roku 2006 wraz z ukazaniem się pierwszych iMaców i MacBooków Pro z procesorami Intel Core Duo, a zakończyło się wydaniem systemu 10.6 Snow Leopard w sierpniu 2009, który jako ostatni obsługuje programy dla procesorów PowerPC przy użyciu narzędzia Rosetta.

 Osobny artykuł: Przejście Apple na procesory firmy Intel.

Charakterystyka | edytuj kod

PowerPC został zaprojektowany zgodnie z filozofią RISC. Mikroarchitektura procesora pozwoliła na zastosowanie superskalarności. Obecnie w użyciu znajdują się zarówno wersje 64-bitowe, jak i 32-bitowe procesora. W stosunku do architektury POWER w PowerPC wprowadzono:

  • Obsługa trybów Big Endian oraz Little Endian, które mogą być przełączane w trakcie pracy procesora. Obsługa ta została zarzucona w PowerPC G5,
  • Uzupełnienie operacji na danych zmiennoprzecinkowych podwójnej precyzji o operacje na danych zmiennoprzecinkowych pojedynczej precyzji,
  • Kompletna specyfikacja 64-bitowej architektury,
  • Usunięcie niektórych, rzadko używanych, instrukcji procesora POWER.

Big endian/Little endian | edytuj kod

Niektóre z układów PowerPC produkcji IBM przeznaczonych na rynek systemów wbudowanych posiadają bit kolejności bajtowej dla każdej obsługiwanej strony pamięci. Poniższy opis nie odnosi się do tych układów.

Większość z dostępnych układów PowerPC może przełączać tryb kolejności bajtów pamięci (ang. endianess) za pomocą bitu w rejestrze MSR. Osobny bit w tym rejestrze odpowiada za kolejność bajtów w przypadku pracy procesora w trybie nadzorcy. Procesor po inicjalizacji startuje w trybie big endian, a tablica stron pamięci dla TLB zawsze przechowuje dane w trybie big endian.

Systemy komputerowe firm Matrox oraz Mercury Computer Systems wykorzystują PowerPC działający w trybie little endian. Wynika to z faktu, że układ PowerPC pracuje w tych systemach jako koprocesor na szynie PCI i współdzieli dane z głównym procesorem zgodnym z mikroarchitekturą IA-32. Zarówno systemy Sun Solaris jak i Windows NT w wersji dla układów PowerPC używały tego procesora w trybie little endian.

Rejestry wewnętrzne | edytuj kod

Poniższa tabela prezentuje rejestry jednostki stałopozycyjnej mikroprocesora PowerPC (wspólne dla wszystkich wersji)

Licencjobiorcy | edytuj kod

Firmy, które produkowały lub wykorzystywały na licencji układy zgodne z architekturą PowerPC.

i inni.

Procesory ogólnego przeznaczenia | edytuj kod

  • PowerPC G1
  • PowerPC G2
  • x704 implementacja w technologii BiCMOS zaprojektowana przez Exponential Technologies
  • PowerPC G3
    • 740
    • 745
    • 750 (1997) 233 MHz oraz 266 MHz
    • 755
    • 750CX, 750CXe (2000) 366 MHz – 600 MHz
    • 750FX (2002) 600 MHz – 900 MHz
    • 750GX (2003) 733 MHz – 1,1 GHz
    • 750CL (2006) 400 MHz – 1 GHz, energooszczędna wersja 750GX, według plotek jest to procesor zastosowany w Wii
  • PowerPC G4
    • 7400/7410 (PowerPC G4) (1999) do 550 MHz, wyposażona w układ AltiVec, rozszerzenie typu SIMD oryginalnej specyfikacji PowerPC
    • 7450 rodzina procesorów z zegarem do 1,5 GHz i 256 KiB Cache L2 oraz z ulepszonym układem AltiVec (PowerPC G4)
    • 7447/7457 rodzina procesorów z zegarem do 1,8 GHz oraz 512 KiB Cache L2 (PowerPC G4)
    • 7448 rodzina procesorów produkowana w technologii 90nm z 1 MiB Cache L2 (PowerPC G4)
    • 8641S i 8641D jedno- i dwurdzeniowe procesory zbudowane na bazie jądra e600, użytego wcześniej w 7448.
  • PowerPC G5 Płyta główna komputera AmigaOne X1000 z zainstalowanym procesorem PA Semi PA6T-1682M
    • 970 (2003) 64-bitowa implementacja oparta na mikroprocesorze IBM POWER4 rozszerzona o jednostkę VMX (kompatybilna z AltiVec jednostka wykonawcza typu SIMD) z 512 KiB Cache L2 z zegarami pracującymi z częstotliwościami 1,4 GHz, 1,6 GHz, 1,8 GHz, 1,9 GHz, 2,0 GHz, 2,1 GHz, 2,3 GHz, 2,5 GHz oraz 2,7 GHz wykonana w technologii 130 nm.
    • 970FX (2001) 512 KiB Cache L2, produkowany w technologii 90 nm.
    • 970GX (2003) 1 MiB Cache L2, nigdy nie wydany.
    • 970MP (2005) z zegarem 1,6-2,5 GHz z 1 MiB Cache L2, pierwszy dwurdzeniowy procesor PowerPC ogólnego przeznaczenia
  • Gekko 485 MHz (używany w Nintendo GameCube)
  • PA6T-1682M (PWRficient) dwurdzeniowa jednostka pracująca z zegarem 2 GHz

Nowa generacja procesorów PowerPC, o planowanej nazwie POWER6, jest projektowana do pracy z zegarami z zakresu 4-5 GHz oraz udostępni funkcjonalność Simultaneous MultiThreading.

Procesory dla systemów wbudowanych | edytuj kod

PowerPC IBM 970

AMCC | edytuj kod

BAE Systems | edytuj kod

  • RAD750: wersja do celów militarnych i misji kosmicznych, oparta na mikroprocesorze PowerPC 750 ze zwiększoną odpornością na promieniowanie elektromagnetyczne

Culturecom | edytuj kod

IBM (obecnie AMCC) | edytuj kod

Motorola (obecnie NXP Semiconductors) | edytuj kod

  • MPC 860/8xx (PowerQUICC): kontrolery sieciowe i telekomunikacyjne
  • MPC 550/5xx (rdzeń 8xx): kontrolery przemysłowe
  • MPC 5200/5200B (rdzeń 603e): kontrolery przemysłowe
  • MPC 8260/82xx (PowerQUICC II) rdzeń 603, kontrolery sieciowe i telekomunikacyjne z wbudowaną w układ wysokowydajną, przełączaną szyną danych.
  • MPC 8560/85xx (PowerQUICC III) rdzeń procesora PowerPC Book E, kontrolery sieciowe i telekomunikacyjne z wbudowaną w układ wysokowydajną, przełączaną szyną danych.

PA Semi | edytuj kod

  • PA6T-1682M (PWRficient): dwurdzeniowa jednostka pracująca z częstotliwością zegara 2 GHz (nigdy nie wprowadzona do sprzedaży)

Xilinx | edytuj kod

Zobacz też | edytuj kod

Linki zewnętrzne | edytuj kod

Na podstawie artykułu: "PowerPC" pochodzącego z Wikipedii
OryginałEdytujHistoria i autorzy