Bellmac 32
Bellmac 32 är en mikroprocessor som utvecklades av Bell Labs processoravdelning 1980 , implementerad med CMOS -teknik och var den första mikroprocessorn som kunde flytta 32 bitar i en klockcykel. Mikroprocessorn innehåller 150 000 transistorer och har förbättrat hastigheten för CMOS -design genom att använda "dominokretsar". Det designades med programmeringsspråket C i åtanke. Efter skapandet producerades en förbättrad version kallad Bellmac 32A , som sedan avbröts tillsammans med sin efterträdare, " Hobbit" C-språkig processor för reducerad instruktionsuppsättning (CRISP).
Historia
Bellmac 32-processorn utvecklades av AT&T-ingenjörer på tre olika Bell Labs- platser: Indian Hill , Homdel och Murray Hill .
Eftersom formgivarna inte hade automatiseringsverktyg, var varje chipdesigner tvungen att använda färgpennor för att slutföra den ursprungliga designen. Senare utvecklade Steve Law ett datorprogram som hjälpte till vid digitaliseringen av de första designerna.
Utvecklingen av Bellmac 32 producerade en ny kretsdesignteknik som kallas dominologik , som anses vara ett genombrott för produktionen av mikroprocessorn. Tester som utfördes under tillverkningen visade att en klockfrekvens som var ännu högre än målhastigheten på 4 MHz var möjlig. Att implementera kontrolllogiken visade sig dock oväntat komplicerat. Dessa komplikationer begränsade sluthastigheten, när hela chippet var färdigt och testat, till 2 MHz. Teamet ansåg det som ett framsteg, men inte lika framgångsrikt, eftersom det inte kunde uppfylla de ursprungliga AT&T-designmålen.
Uppföljande designmöten resulterade i Bellmac 32A-projektet, som en andra generation av Bellmacs mikroprocessor. Projektet valde återigen CMOS- teknik och fastställde målklockfrekvensen till 6,2 MHz. Justeringar för att maximera storleken på transistorer och resistorer och minimera sammankopplingar var grundläggande för att uppfylla specifikationerna. Ingenjörerna placerade en 20 fot-x20-fots teknisk ritning av chiplayouten på golvet i ett stort rum. Testning av chips producerade från den färdiga kretsen överskred designhastigheten och nådde klockfrekvenser på 7, 8 och till och med 9 MHz.
Efter upplösningen av AT&T blev Bell Labs en del av Western Electric . Med denna förändring döptes Bellmac 32 om till WE 32000 . Uppdaterade versioner av chipet inkluderade WE 32100- och WE 32200 -processorerna.
Arkitektur
Bellmac 32 har en pipelined arkitektur med en instruktionshämtningsenhet som tjänar till att kontrollera åtkomst till huvudminnet och en exekveringsenhet som tjänar till att övervaka processen och manipulera data.
Instruktionskön är fylld med instruktionerna hämtade från minnet. Den aritmetiska adressenheten tjänar till adressberäkningar.
Bellmac 32 hårdvara kan lagra alla instruktioner, data och registerinnehåll associerat med en process under en kontextväxling.
Register
Bellmac 32 har sexton 32-bitars register. Tre av dessa (ISP, PCBP, PSW) är privilegierade, används för att stödja operativsystemet och kan endast skrivas när mikroprocessorn är i kärnläge. Det finns tre andra register (SP, AP, FP) som används av vissa instruktioner som stackpekare. Exekveringsnivån, som ställs in i Processor Status Word, kan vara ett av fyra tillstånd: Kärna, Executive, Supervisor, User. Det finns ytterligare sexton register i WE 32200.
|
Processorstatusord
Processstatusordet är en del av registerfilen och har alias som R11.
Oanvänd | CFD | QIE | CD | OE | N | Z | V | C | TE | IPL | CENTIMETER | PM | R | jag | ISC | TM | ET |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
31 | 25 | 24 | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 | 12 | 10 | 8 | 7 | 6 | 2 | 1 |
Bits | Menande |
---|---|
31:26 | Oanvänd |
25 | Cache-tömning avaktivera |
24 | Snabbavbrottsaktivering |
23 | Cache inaktivera |
22 | Aktivera bräddfälla |
21 | Negativ |
20 | Noll |
19 | Svämma över |
18 | Bära |
17 | Spåra aktivera |
16:13 | Avbryt prioritetsnivå |
12:11 | Aktuell exekveringsnivå |
10:9 | Tidigare utförandenivå |
8:7 | Register-Initial Context |
6:3 | Inre statlig kod |
2 | Spårmask |
1:0 | Undantagstyp |
Instruktioner
Denna mikroprocessor har 169 instruktioner, som är optimerade för att köra program skrivna i programmeringsspråket C. Följaktligen är formatet på teckensträngar anpassat till exempelvis C-språkspecifikationer.
Instruktionerna kan ha upp till tre operander. Processorn har inga aritmetiska instruktioner med flyttal eller decimal, som senare tillhandahölls av samprocessorerna WE 32106 och WE 32206.
Minne
Bellmac 32 implementerar flera typer av minnesadressering, såsom linjär, omedelbar 8, 16 eller 32 bitar, registrering, registerindirekt, kortskiftning, absolut och indirekt förskjutning på 8, 16 eller 32 bitar.
Användande
WE 32x00-processorerna användes i AT&T Computer Systems datorer i 3B-serien .
Stödjande marker
AT&T hade en uppsättning av WE 32x00 stödjande chips och kringutrustning, inklusive:
- WE 32101 / 32201 Minneshanteringsenhet
- WE 32102 klocka (10, 14, 18 eller 24 MHz)
- WE 32103 DRAM Controller
- WE 32104 / 32204 DMA Controller
- WE 32106 / 32206 Math Acceleration Unit
- WE 321SB VMEbus Enkelkortsdator
- WE 321EB utvärderingsnämnd
externa länkar
- Första hand: AT&T BELLMAC-32 mikroprocessorutveckling. http://www.ieeeghn.org/wiki/index.php/First-Hand:The_AT%26T_BELLMAC-32_Microprocessor_Development
- Personliga datorer. Mot en värld av datormaskiner. Bilaga B: Om mikroprocessorer. Författare: Fernando Sáez Cows. http://www.quadernsdigitals.net/datos_web/biblioteca/l_516/enLinea/8.pdf
- AT&T Tech Channel Archives: Microprocessor for the Information Age (video)