Motorola 68020 - Motorola 68020
Informacje ogólne | |
---|---|
Wystrzelony | 1984 |
Zaprojektowany przez | Motorola |
Wydajność | |
Maks. Częstotliwość taktowania procesora | 12,5 MHz do 33 MHz |
Szerokość danych | 32 bity |
Szerokość adresu | 32 bity |
Pamięć podręczna | |
Pamięć podręczna L1 | 256 bajtów Icache |
Architektura i klasyfikacja | |
Zestaw instrukcji | Seria Motorola 68000 |
Specyfikacje fizyczne | |
Tranzystory | |
Pakiet(y) | |
Produkty, modele, warianty | |
Warianty | |
Historia | |
Poprzednik | Motorola 68010 |
Następca | Motorola 68030 |
Motorola 68020 ( " sześćdziesiąt osiem oh dwadzieścia ", " sześćdziesiąt osiem-OH-dwu-OH " lub " sześć osiem-OH-dwu-OH ") jest 32-bitowy mikroprocesor z firmy Motorola , wydany w 1984 roku Udostępniono również tańszą wersję, znaną jako 68EC020 . Zgodnie z praktykami nazewnictwa powszechnymi w projektach Motoroli, model 68020 jest zwykle określany jako „020”, wymawiane „oh-dwa-oh” lub „oh-dwadzieścia”.
Opis
Model 68020 ma 32-bitowe wewnętrzne i zewnętrzne magistrale danych i adresowe, w porównaniu z wczesnymi modelami 680x0 z 16-bitowymi magistralami danych i 24-bitowymi magistralami adresowymi. Jednostka ALU 68020 jest również natywnie 32-bitowa, więc może wykonywać operacje 32-bitowe w jednym cyklu zegara, podczas gdy 68000 zajęło minimum dwa cykle zegara ze względu na 16-bitową jednostkę ALU. Nowsze metody pakowania pozwoliły na to, aby '020 był wyposażony w więcej zewnętrznych szpilek bez dużego rozmiaru, którego wymagała wcześniejsza metoda podwójnego pakowania w linii . 68EC020 obniżył koszt dzięki 24-bitowej magistrali adresowej. 68020 był produkowany z prędkością od 12 MHz do 33 MHz.
Ulepszenia w stosunku do 68010
68020 ma 32-bitową jednostkę arytmetyczno-logiczną (ALU), 32-bitowe zewnętrzne szyny danych i adresowe. Dodaje dodatkowe instrukcje i dodatkowe tryby adresowania. 68020 (i 68030) ma odpowiedni trójstopniowy rurociąg. Chociaż 68010 miał „tryb pętli”, który przyspieszał pętle przez tak naprawdę małą pamięć podręczną instrukcji, zawierał tylko dwie krótkie instrukcje, przez co był mało używany. 68020 zastąpił to odpowiednią pamięcią podręczną instrukcji o pojemności 256 bajtów, pierwszym procesorem z serii 68k z prawdziwą pamięcią podręczną typu on-chip.
Poprzednie procesory 68000 i 68010 miały dostęp tylko do danych słów (16-bitowych) i długich słów (32-bitowych) w pamięci, jeśli były one wyrównane do słów (umieszczone pod parzystym adresem). 68020 nie ma ograniczeń wyrównania w dostępie do danych. Oczywiście dostępy niewyrównane są wolniejsze niż dostępy wyrównane, ponieważ wymagały dodatkowego dostępu do pamięci.
68020 ma małą 256-bajtową bezpośrednio mapowaną pamięć podręczną instrukcji, ułożoną jako 64 czterobajtowe wpisy. Choć niewielki, to jednak znacząco wpływał na wydajność wielu aplikacji. Wynikający z tego spadek ruchu autobusowego był szczególnie istotny w systemach, które w dużej mierze opierają się na DMA .
Obsługa koprocesora
68020 ma interfejs koprocesora obsługujący do ośmiu koprocesorów. Główny procesor rozpoznaje instrukcje „linii F” (z czterema najważniejszymi bitami kodu operacji wszystkie jako jeden) i używa specjalnych cykli magistrali do interakcji z koprocesorem w celu wykonania tych instrukcji. Zdefiniowano dwa typy koprocesorów: jednostki zmiennoprzecinkowe ( MC68881 lub MC68882 FPU ) oraz jednostkę zarządzania pamięcią stronicowaną ( MC68851 PMMU ). Tylko jedno PMMU może być używane z procesorem. W zasadzie wiele jednostek FPU może być używanych z procesorem, ale nie było to powszechnie stosowane. Interfejs koprocesora jest asynchroniczny, więc możliwe jest uruchamianie koprocesorów z inną częstotliwością zegara niż procesor.
Funkcje wieloprocesowe
Obsługa wieloprocesorowości jest zaimplementowana zewnętrznie za pomocą pinu RMC wskazującego trwający niepodzielny cykl odczytu-modyfikacji-zapisu . Wszystkie inne procesory muszą wstrzymywać dostęp do pamięci aż do zakończenia cyklu. Wsparcie programowe dla przetwarzania wieloprocesowego obejmuje instrukcje TAS , CAS i CAS2 .
W systemie wieloprocesorowym koprocesory nie mogą być współdzielone między procesorami. Aby uniknąć problemów ze zwrotami z koprocesora, błędów magistrali i wyjątków błędów adresów, w systemie wieloprocesorowym ogólnie konieczne było, aby wszystkie procesory były tym samym modelem, a wszystkie jednostki FPU również były tym samym modelem.
Zestaw instrukcji
Nowe instrukcje zawierają kilka drobnych usprawnień i rozszerzeń stanu nadzorcy, kilka instrukcji do zarządzania oprogramowaniem systemu wieloprocesowego (które zostały usunięte w 68060), pewne wsparcie dla języków wysokiego poziomu, które nie były zbyt często używane (i zostały usunięte z przyszłych procesorów 680x0), większe instrukcje mnożenia (32×32→64 bity) i dzielenia (iloraz 64÷32→32 bity i reszta 32 bity) oraz manipulacje polami bitowymi.
Nowe tryby adresowania dodają skalowane indeksowanie i kolejny poziom niebezpośredniości do wielu istniejących wcześniej trybów.
Chociaż 68000 miał „tryb nadzorcy”, nie spełniał wymagań wirtualizacji Popka i Goldberga, ponieważ pojedyncza instrukcja „MOVE from SR” była nieuprzywilejowana, ale czuła. Pod 68010 i nowszymi stało się to uprzywilejowane, aby lepiej obsługiwać oprogramowanie do wirtualizacji.
Architektura
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Z pełnymi 32-bitowymi wewnętrznymi i zewnętrznymi magistralami adresowymi, rejestry adresowe (od A0 do A7) mogły wykorzystywać swoją pełną 32-bitową szerokość i były w stanie zaadresować całą 4 GB przestrzeń adresową.
Większe efektywne szerokości rejestrów adresowych stanowiły pewien problem w przypadku wcześniejszych programów, które nie były uważane za „ czyste 32-bitowe ”. Niektóre programy wykorzystywały wysokie 8 bitów (bity 24-31) adresów do przechowywania różnych bitów flagi, przy założeniu, że wcześniejsze procesory 680x0 bezpiecznie zignorowałyby te wysokie bity. Takie oprogramowanie musiało zostać napisane od nowa, aby dostosować się do większej fizycznej przestrzeni adresowej dostępnej dla procesorów 68020 i nowszych.
Stosowanie
68020 był używany w komputerach osobistych Apple Macintosh II i Macintosh LC , stacjach roboczych Sun 3 , Amiga 1200 (uwaga: Amiga 1200 używała tańszego wariantu 68EC020), analizatorach sieciowych Hewlett-Packard 8711 i późniejszych członków HP 9000 /300 rodzina i Alpha Microsystems AM-2000. Również 68020 był alternatywą dla 68008 komputera Sinclair QL w interfejsie Super Gold Card firmy Miracle Systems .
Amiga 2500 i A2500UX zostały dostarczone z akceleratorem A2620 wykorzystującym 68020, jednostkę zmiennoprzecinkową 68881 i jednostkę zarządzania pamięcią 68851. 2500UX jest dostarczany z Amiga Unix, wymaga procesora '020 lub '030.
Szereg cyfrowych oscyloskopów od połowy lat 80. do późnych lat 90. używało modelu 68020, w tym serii LeCroy 9300 (modele z wyższej półki , w tym modele z przyrostkiem „C”, używały mocniejszego 68EC030 ; modele 9300 z procesorem 68020 można zaktualizować do 68EC030 ze zmianą płyty procesora) i wcześniejszej serii LeCroy 9400 (wszystkie modele z wyjątkiem 9400/9400A, która używała 68000 ), wraz z niektórymi modelami serii Tektronix TDS. HP 54520, 54522, 54540 i 54542 również używają 68020 wraz z koprocesorem matematycznym 68882.
Jest to również procesor używany na pokładach pociągów TGV do dekodowania informacji sygnalizacyjnych, które są przesyłane do pociągów przez szyny. Jest on dalej wykorzystywany w systemach kontroli lotu i radarów samolotów bojowych Eurofighter Typhoon .
Przełącznik centrali telefonicznej Nortel Networks DMS-100 również wykorzystywał 68020 jako pierwszy mikroprocesor rdzenia obliczeniowego SuperNode.
Wariant
68EC020 jest niższa wersja koszt Motorola 68020. Główną różnicą między nimi jest, że 68EC020 ma tylko adres 24-bitowy autobusu, zamiast adresu 32-bitowej magistrali pełnego 68020, a więc jest tylko w stanie adres 16 MB pamięci.
Komputer Amiga 1200 i konsola do gier Amiga CD32 wykorzystują obniżoną cenę 68EC020; systemu Namco 22 , Taito F3 i Konami GX zręcznościowe deski wykorzystywane również ten procesor. Atari prototyp Jaguar II wyróżniona również to, aby zastąpić 68000 oryginalnego Atari Jaguar konsoli. Znalazł również zastosowanie w drukarkach laserowych. Apple użył go w LaserWriter IIɴᴛx. Kodak użył go w Ektaplus 7016PS, a Dataproducts użył go w LZR 1260.
W 2014 roku firma Rochester Electronics przywróciła zdolność produkcyjną mikroprocesora 68020 i jest on nadal dostępny.
Dane techniczne
Imie formalne | MC68020 |
Częstotliwość taktowania procesora | 12,5, 16,67, 20, 25, 33 MHz (minimum 8 MHz, brak generowania zegara na chipie) |
Napięcie zasilające | 5 V |
Maksymalna moc | 1,75 W |
Proces produkcji | HCMOS, element silikonowy 3/8" |
Nośnik wiórów | PGA 169 (używane 114 pinów) 34,16 mm × 34,16 mm (53 °C/W bez radiatora) |
Szyna adresowa | 32-bitowy (4 GB bezpośrednio liniowy dostęp) |
Magistrala danych | 32-bitowy |
Zestaw instrukcji | 101 instrukcji CISC |
Pamięć podręczna | 256 bajtów Icache |
Zarejestrować |
|
Obsługa oddziałów | Przewidywanie gałęzi:
|
Tranzystory | ~200 000 |
Wydajność | 10 MIPS przy 33 MHz |