Lidt skiver - Bit slicing
| Computer arkitektur bit bredder |
|---|
| Bit |
| Ansøgning |
| Binær flydende præcision |
| Decimal flydende præcision |
Bitskæring er en teknik til at konstruere en processor fra moduler af processorer med mindre bitbredde med det formål at øge ordlængden; i teorien at lave en vilkårlig n-bit CPU. Hver af disse komponentmoduler behandler ét bitfelt eller "skive" af en operand . De grupperede behandlingskomponenter ville derefter have evnen til at behandle den valgte fulde ordlængde for et bestemt softwaredesign.
Bitskæring døde mere eller mindre ud på grund af fremkomsten af mikroprocessoren . For nylig er det blevet brugt i ALU'er til kvantecomputere og er blevet brugt som en softwareteknik (f.eks. I x86 CPU'er, til kryptografi ).
Operationelle detaljer
Bit-slice processorer indbefatter sædvanligvis en aritmetisk logikenhed (ALU) af 1 , 2 , 4 , 8 eller 16 bits og styreledninger (herunder carry eller overløb signaler, der er internt i processoren i ikke-bitsliced CPU design).
F.eks. Kunne to 4-bit ALU-chips arrangeres side om side, med kontrollinjer imellem dem, for at danne en 8-bit ALU (resultatet behøver ikke være effekt af to, f.eks. Tre 1-bit kan lave en 3-bit ALU , således 3-bit (eller n-bit) CPU, mens 3-bit eller enhver CPU med højere ulige antal bits ikke er blevet fremstillet og solgt i volumen). Fire 4-bit ALU-chips kunne bruges til at bygge en 16-bit ALU. Det ville tage otte chips at bygge et 32-bit ord ALU. Designeren kunne tilføje så mange skiver som nødvendigt for at manipulere længere ordlængder.
En microsequencer eller kontrol -ROM ville blive brugt til at eksekvere logik til at tilvejebringe data og styresignaler til at regulere funktionen af komponent -ALU'erne.
Kendte bit-slice-mikroprocessorer:
- 2-bit skive:
- 4-bit skive:
-
National IMP-familie, der primært består af IMP-00A/520 RALU (også kendt som MM5750) og forskellige maskerede ROM-mikrokode- og kontrolchips (CROM'er, også kendt som MM5751)
- National GPC / P / IMP-4 (1973), anden indkøbt af Rockwell
- National IMP-8 , en 8-bit processor baseret på IMP-chipsættet, der bruger to RALU-chips og en CROM-chip
- National IMP-16 , en 16-bit processor baseret på IMP-chipsættet, f.eks. Fire RALU-chips med en hver IMP16A/521D og IMP16A/522D CROM-chips (ekstra CROM-chips (ekstraudstyr) kan give yderligere instruktionssæt)
- AMD Am2900 familie (1975), fx AM2901, AM2901A, AM2903
- Monolitiske erindringer 5700/6700 familie (1974) f.eks. MMI 5701 / MMI 6701, andet indkøbt af ITT Semiconductors
- Texas Instruments SBP0400 (1975) og SBP0401, cascadable op til 16 bit
- Texas Instruments SN74181 (1970)
- Texas Instruments SN74S281 med SN74S282
- Texas Instruments SN74S481 med SN74S482 (1976)
- Fairchild 33705
- Fairchild 9400 (MACROLOGIC), 4700
- Motorola M10800 familie (1979), fx MC10800
- Raytheon RP-16, en 16-bit processor, der består af syv integrerede kredsløb, der bruger fire RALU-chips og tre CROM-chips.
-
National IMP-familie, der primært består af IMP-00A/520 RALU (også kendt som MM5750) og forskellige maskerede ROM-mikrokode- og kontrolchips (CROM'er, også kendt som MM5751)
- 8-bit skive:
- Firefasede systemer AL1
- Texas Instruments SN54AS888 / SN74AS888
- Fairchild 100K
- ZMD U830C (1978/1981), cascadable op til 32 bit
Historisk nødvendighed
Bitskæring, selvom det ikke blev kaldt det dengang, blev også brugt i computere før integrerede kredsløb i stor skala (LSI, forgængeren til nutidens VLSI eller meget store integrationskredsløb). Den første bitskårne maskine var EDSAC 2 , bygget på University of Cambridge Mathematical Laboratory i 1956–1958.
Før midten af 1970'erne og slutningen af 1980'erne var der en vis debat om, hvor meget busbredde der var nødvendig i et givet computersystem for at få det til at fungere. Siliciumchipteknologi og dele var meget dyrere end i dag. Brug af flere, enklere og dermed billigere ALU'er blev set som en måde at øge computerkraften på en omkostningseffektiv måde. Mens 32-bit arkitektur mikroprocessorer blev diskuteret på det tidspunkt, var der få i produktion.
De UNIVAC 1100 -serien mainframes (en af de ældste serie, med oprindelse i 1950'erne) har en 36-bit arkitektur og 1100/60 indført i 1979 brugte ni Motorola MC10800 4-bit ALU chips til at gennemføre den nødvendige ord bredde, mens du bruger moderne integreret kredsløb.
På det tidspunkt var 16-bit processorer almindelige, men dyre, og 8-bit processorer, såsom Z80 , blev meget udbredt på det spirende hjemmecomputermarked.
Kombination af komponenter til at producere bit-slice-produkter gjorde det muligt for ingeniører og studerende at oprette mere kraftfulde og komplekse computere til en mere rimelig pris ved hjælp af komponenter på hylden, der kunne tilpasses konfigureret. Kompleksiteten ved at oprette en ny computerarkitektur blev stærkt reduceret, da detaljerne i ALU allerede var specificeret (og debugged ).
Den største fordel var, at bitskæring gjorde det økonomisk muligt i mindre processorer at bruge bipolare transistorer , som skifter meget hurtigere end NMOS- eller CMOS -transistorer. Dette gav mulighed for meget højere urfrekvenser, hvor hastighed var nødvendig; for eksempel DSP -funktioner eller matrix -transformation , eller som i Xerox Alto , kombinationen af fleksibilitet og hastighed, før diskrete CPU'er var i stand til at levere det.
Moderne brug
Softwarebrug på ikke-bit-slice hardware
I nyere tid blev udtrykket bitskæring genopfundet af Matthew Kwan for at henvise til teknikken til at bruge en CPU til generelle formål til at implementere flere parallelle simple virtuelle maskiner ved hjælp af generelle logiske instruktioner til at udføre Single Instruction Multiple Data (SIMD) operationer. Denne teknik er også kendt som SIMD Within A Register (SWAR).
Dette var oprindeligt i henvisning til Eli Bihams papir fra 1997 A Fast New DES Implementation in Software , som opnåede betydelige gevinster i ydelsen af DES ved hjælp af denne metode.
Bitskårne kvantecomputere
For at forenkle kredsløbets struktur og reducere hardwareomkostningerne ved kvantecomputere (foreslået at køre MIPS32 instruktionssæt ) en 50 GHz superledende "4-bit bit-slice aritmetisk logisk enhed (ALU) til 32-bit hurtige single-flux-kvante mikroprocessorer blev demonstreret. "
Se også
Referencer
eksterne links
- "Untwisted: Bit-skiver TEA-tid" . Arkiveret fra originalen 2013-10-21. - en bitslicing -primer, der præsenterer en pædagogisk bitsliced -implementering af Tiny Encryption Algorithm (TEA), en blokchiffer