Motorola 68040 - Motorola 68040

Motorola 68040
Generell informasjon
Lanserte 1990
Designet av Motorola
Opptreden
Maks. CPU- klokkehastighet 25 MHz til 40 MHz
Databredde 32 biter
Adressebredde 32 biter
Cache
L1 cache 4096 byte hver for instruksjon og data med uavhengig MMU og TLB
Arkitektur og klassifisering
Instruksjonssett Motorola 68000-serien
Fysiske spesifikasjoner
Transistorer
Pakke (r)
Produkter, modeller, varianter
Variant (er)
Historie
Forgjenger Motorola 68030
Etterfølger Motorola 68060
En Motorola 68040 mikroprosessor
Motorola 68040 dø skutt med FPU til venstre

Den Motorola 68040 ( " sekstiåtte-oh-førti ") er en 32-bit mikroprosessor i Motorola 68000 serie , utgitt i 1990. Det er etterfølgeren til 68.030 og er etterfulgt av 68060 . Det var ingen 68050. I tråd med generell Motorola-navngivning, blir 68040 ofte referert til som ganske enkelt '040 (uttalt oh-fire-oh eller oh-førti ).

68040 var det første 680x0 familiemedlemmet med en flytende punkt enhet (FPU). Den inkluderte dermed all funksjonaliteten som tidligere krevde eksterne sjetonger, nemlig FPU og Memory Management Unit (MMU), som ble lagt til i 68030. Den hadde også delt instruksjon og datacacher på 4 kilobyte hver. Det var helt rørledning , med seks trinn.

Versjoner av 68040 ble opprettet for bestemte markedssegmenter, inkludert 68LC040 , som fjernet FPU, og 68EC040 , som fjernet både FPU og MMU. Motorola hadde ment EF-varianten for innebygd bruk, men innebygde prosessorer i løpet av 68040-tiden trengte ikke kraften fra 68040, så EF-varianter av 68020 og 68030 fortsatte å være vanlige i design.

Motorola produserte flere fartsgrader. 16 MHz og 20 MHz delene ble aldri kvalifisert (XC betegnelse) og brukt som prototyping prøver. 25 MHz og 33 MHz karakterer ble omtalt over hele linjen, men frem til 2000 var 40 MHz-karakteren bare for "full" 68040. En planlagt 50 MHz-grad ble kansellert etter at den overskredet den termiske designkonvolutten .

Bruk

Apple Macintosh- datamaskiner ble 68040 introdusert i Macintosh Quadra , som ble oppkalt etter brikken. Den raskeste 68040-prosessoren ble klokket på 40 MHz, og den ble bare brukt i Quadra 840AV. De dyrere modellene i (kortvarige) Macintosh Centris- linjen brukte også 68040, mens billigere Quadra, Centris og Macintosh Performa brukte 68LC040 . 68040 ble også brukt i andre personlige datamaskiner , for eksempel Amiga 4000 og Amiga 4000T , samt en rekke arbeidsstasjoner , Alpha Microsystems- servere, HP 9000 /400-serien og senere versjoner av NeXT- datamaskinen.

Design

68040 løp inn i transistorbudsjettgrensen tidlig i design. Mens MMU ikke tok mange transistorer - ja, å ha den på samme dør som CPUen faktisk lagret på transistorer - gjorde FPU absolutt. Motorolas 68882 eksterne FPU var kjent som en enhet med veldig høy ytelse, og Motorola ønsket ikke å risikere integratorer ved å bruke "LC" -versjonen med en 68882 i stedet for den mer lønnsomme fullstendige "RC" -enheten. (For informasjon om Motorolas flerbehandlingsmodell med 680x0-serien, se Motorola 68020. ) FPU i 68040 ble dermed gjort ute av stand til IEEE transcendentale funksjoner , som hadde blitt støttet av både 68881 og 68882 og ble brukt av den populære programvaren for fraktalgenerering. av tiden og lite annet. Motorola floating point support package (FPSP) emulerte disse instruksjonene i programvare under avbrudd. Siden dette var en unntakshåndterer, forårsaket tung bruk av de transcendentale funksjonene alvorlige ytelsesstraffer.

Varme var alltid et problem gjennom hele 68040-årene. Mens den leverte over fire ganger ytelse per klokke til 68020 og 68030, kom brikkens kompleksitet og kraftbehov fra en stor dør og store cacher. Dette påvirket skaleringen av prosessoren, og den klarte aldri å kjøre med en klokkehastighet på mer enn 40 MHz. En 50 MHz-variant var planlagt, men avlyst. Overklokkingsentusiaster rapporterte suksess når de oppnådde 50 MHz ved hjelp av en 100 MHz oscillator i stedet for en 80 MHz del og den daværende nye teknikken for å legge til store kjølevæsker med fans.

68040 tilbød de samme funksjonene som Intel 80486 , men på klokke-for-klokke-basis kunne det overgå Intel-brikken betydelig i instruksjoner om heltall og flytende punkt.

Varianter

68EC040

Den 68EC040 er en versjon av Motorola 68040 mikroprosessor, beregnet for innebygde kontrollere (EC). Den skiller seg fra 68040 ved at den verken har en FPU eller en MMU. Dette gjør det billigere og trekker mindre strøm. 68EC040 ble brukt i Cisco switch Supervisor Engine I som er hjertet til modellene 2900, 2948G, 2980G, 4000, 4500, 5000, 5500, 6000, 6500 og 7600.

68LC040

Dø av en Motorola 68LC040

Den 68LC040 er en lav kostnad versjon av Motorola 68040 mikroprosessor uten FPU. Dette gjør det billigere og trekker mindre strøm. Selv om CPU nå passer inn i et funksjonsdiagram som Motorola 68030, fortsetter den å inkludere 68040s cacher og rørledninger og er dermed betydelig raskere enn 68030.

Noen maske revisjoner av 68LC040 inneholdt en feil som hindrer chip fra fungerer riktig når en programvare FPU emulator brukes. Ifølge Motorolas feil, inneholder ikke en chip med et maskesett 2E71M eller nyere feilen. Denne nye masken ble introdusert i midten av 1995 og konverterte 68LC040-brikken til MC-status.

Buggy-revisjonene finnes vanligvis på 68LC040-baserte Apple Macintosh- datamaskiner. Chips med maskesett 2E23G (som brukt i LC 475) er bekreftet å være feil. Feilen er relatert til ventende skriving som går tapt når F-line unntaket utløses. 68040 kan ikke oppdatere mikrokoden på samme måte som moderne x86-brikker. Dette betyr at den eneste måten å bruke programvare som krever flytende punkt-funksjonalitet, er å erstatte buggy 68LC040 med en senere revisjon, eller en full 68040.

Funksjonstabell

Variant MMU FPU
68040 Ja Ja
68 LC 040 Ja Nei
68 EC 040 Nei Nei

Tekniske data

CPU- klokkehastighet 25, 33, 40 MHz
Produksjonsprosess statisk CMOS 0,8 μm , 0,65 μm , Freescale 0,57 μm
Chipbærer 179 keramiske PGA og 184 QFP
Adressebuss 32 bit
Data buss 32 bit
Instruksjonssett CISC
Transistorer ~ 1.200.000

ATC = Adresseoversettingsbuffer

Referanser

Videre lesning

Eksterne linker