Krojenie bitów
Szerokości bitowe architektury komputera |
---|
Bit |
Aplikacja |
precyzja zmiennoprzecinkowa |
precyzja zmiennoprzecinkowa |
Krojenie bitów to technika konstruowania procesora z modułów procesorów o mniejszej szerokości bitowej w celu zwiększenia długości słowa; teoretycznie stworzyć dowolną n -bitową jednostkę centralną (CPU). Każdy z tych modułów składowych przetwarza jedno pole bitowe lub „wycinek” operandu . Zgrupowane komponenty przetwarzające miałyby wtedy możliwość przetworzenia wybranej pełnej długości słowa danego projektu oprogramowania.
Krojenie bitów mniej więcej wymarło z powodu pojawienia się mikroprocesora . Ostatnio był używany w arytmetycznych jednostkach logicznych (ALU) dla komputerów kwantowych oraz jako technika oprogramowania, np. do kryptografii w procesorach x86 .
Szczegóły operacyjne
Procesory bit-slice (BSP) zwykle zawierają 1- , 2- , 4- , 8- lub 16-bitowe jednostki arytmetyczne (ALU) i linie sterujące (w tym sygnały przeniesienia lub przepełnienia , które są wewnętrzne dla procesora w procesorach nie-bitowych projekty).
Na przykład dwa 4-bitowe układy ALU mogą być ustawione obok siebie, z liniami sterującymi między nimi, tworząc 8-bitowy układ ALU (wynik nie musi być potęgą dwójki, np. trzy 1-bitowe jednostki mogą utworzyć układ 3-bitowy ALU, czyli 3-bitowy (lub n -bitowy) procesor, podczas gdy 3-bitowy lub jakikolwiek inny procesor o większej nieparzystej liczbie bitów nie był produkowany i sprzedawany masowo). Cztery 4-bitowe chipy ALU mogą być użyte do zbudowania 16-bitowego ALU. Zbudowanie 32-bitowego słowa ALU wymagałoby ośmiu chipów. Projektant mógł dodać dowolną liczbę plasterków, aby manipulować dłuższymi słowami.
Mikrosekwencer lub kontrolna pamięć ROM byłaby używana do wykonywania logiki w celu dostarczania danych i sygnałów sterujących w celu regulacji funkcji składowych jednostek ALU .
Znane mikroprocesory typu bit-slice:
- plasterek 2-bitowy:
- Intel 3000 (1974, obecnie wycofana), np. Intel 3002 z Intel 3001, pochodzący z drugiego źródła przez Signetics i Intersil
- Signetics 8X02 (1977, obecnie wycofana)
- 4-bitowy wycinek:
-
Krajowa rodzina IMP, składająca się głównie z IMP-00A / 520 RALU (znanego również jako MM5750) oraz różnych zamaskowanych mikrokodów ROM i układów kontrolnych (CROM, znanych również jako MM5751)
- National GPC/P / IMP-4 (1973), drugie źródło pochodzi od Rockwell
- National IMP-8, 8-bitowy procesor oparty na chipsecie IMP, wykorzystujący dwa układy RALU i jeden układ CROM
- National IMP-16 , 16-bitowy procesor oparty na chipsecie IMP, np. cztery układy RALU, po jednym na układy IMP16A/521D i IMP16A/522D CROM (dodatkowe opcjonalne układy CROM mogą zapewniać dodatkowy zestaw instrukcji)
- AMD Am2900 (1975), np. AM2901, AM2901A, AM2903
- Monolithic Memories 5700/6700 (1974), np. MMI 5701 / MMI 6701, drugie źródło pochodzi od ITT Semiconductors
- Texas Instruments SBP0400 (1975) i SBP0401, kaskadowe do 16 bitów
- Texas Instruments SN74181 (1970)
- Texas Instruments SN74S281 z SN74S282
- Texas Instruments SN74S481 z SN74S482 (1976)
- Fairchild 33705
- Fairchild 9400 (MAKROLOGICZNY), 4700
- Motorola M10800 (1979), np. MC10800
- Raytheon RP-16, 16-bitowy procesor składający się z siedmiu układów scalonych, wykorzystujący cztery układy RALU i trzy układy CROM.
-
Krajowa rodzina IMP, składająca się głównie z IMP-00A / 520 RALU (znanego również jako MM5750) oraz różnych zamaskowanych mikrokodów ROM i układów kontrolnych (CROM, znanych również jako MM5751)
- plasterek 8-bitowy:
- Systemy czterofazowe AL1 (1969, uważany za pierwszy mikroprocesor zastosowany w produkcie komercyjnym, obecnie wycofany)
- Texas Instruments SN54AS888 / SN74AS888
- Fairchild 100 tys
- ZMD U830C (1978/1981), kaskadowe do 32 bitów
- plasterek 16-bitowy:
- Rodzina AMD Am29100
- Streszczenie 49C402
- ZFT Robotron / ZFTM Dresden U840 (1979/1982), niepublikowane
Konieczność historyczna
Krojenie bitów, choć wtedy nie było tak nazywane, było również stosowane w komputerach przed wielkoskalowymi układami scalonymi (LSI, poprzednik dzisiejszego VLSI lub obwody integracyjne o bardzo dużej skali). Pierwszą maszyną bit-plasterkową była EDSAC 2 , zbudowana w Laboratorium Matematycznym Uniwersytetu Cambridge w latach 1956–1958.
Przed połową lat siedemdziesiątych i późnymi osiemdziesiątymi toczyła się debata na temat tego, jaka szerokość magistrali jest potrzebna w danym systemie komputerowym, aby działał. Technologia chipów krzemowych i części były znacznie droższe niż obecnie. Używanie wielu prostszych, a tym samym tańszych jednostek ALU było postrzegane jako sposób na zwiększenie mocy obliczeniowej w opłacalny sposób. Podczas gdy w tamtym czasie dyskutowano o 32-bitowych mikroprocesorach, niewiele z nich było w produkcji.
Komputery mainframe z serii UNIVAC 1100 (jedna z najstarszych serii, pochodząca z lat 50 . obwody scalone.
W tamtym czasie procesory 16-bitowe były powszechne, ale drogie, a procesory 8-bitowe, takie jak Z80 , były szeroko stosowane na rodzącym się rynku komputerów domowych.
Łączenie komponentów w celu wytworzenia produktów typu bit-slice umożliwiło inżynierom i studentom tworzenie bardziej wydajnych i złożonych komputerów po bardziej rozsądnych kosztach, przy użyciu gotowych komponentów, które można było konfigurować na zamówienie. Złożoność tworzenia nowej architektury komputera została znacznie zmniejszona, gdy szczegóły jednostki ALU zostały już określone (i debugowane ).
Główną zaletą było to, że cięcie bitów umożliwiło ekonomicznie w mniejszych procesorach użycie tranzystorów bipolarnych , które przełączają się znacznie szybciej niż tranzystory NMOS lub CMOS . Pozwoliło to na znacznie wyższe częstotliwości taktowania tam, gdzie wymagana była szybkość — na przykład dla funkcji DSP lub transformacji macierzy — lub, jak w Xerox Alto , połączenie elastyczności i szybkości, zanim dyskretne procesory były w stanie to zapewnić.
Nowoczesne zastosowanie
Użycie oprogramowania na sprzęcie innym niż bit-slice
W ostatnich czasach Matthew Kwan ponownie użył terminu „przecinanie bitów” w odniesieniu do techniki wykorzystania procesora ogólnego przeznaczenia do implementacji wielu równoległych prostych maszyn wirtualnych przy użyciu ogólnych instrukcji logicznych do wykonywania operacji SIMD (single-instruction multiple-data ). Ta technika jest również znana jako SIMD w rejestrze (SWAR).
Początkowo odnosiło się to do artykułu Eli Bihama z 1997 r. A Fast New DES Implementation in Software , w którym osiągnięto znaczny wzrost wydajności DES przy użyciu tej metody.
Komputery kwantowe podzielone na bity
Aby uprościć strukturę obwodu i zmniejszyć koszt sprzętu komputerów kwantowych (proponowanych do obsługi zestawu instrukcji MIPS32 ), nadprzewodnikowa jednostka arytmetyczna (ALU) 50 GHz z 4-bitowym plasterkiem bitów dla 32-bitowych szybkich mikroprocesorów kwantowych o pojedynczym strumieniu wykazano".
Zobacz też
Linki zewnętrzne
- „Nieskręcony: czas TEA w plasterkach” . Zarchiwizowane od oryginału w dniu 2013-10-21. – elementarz do krojenia bitów przedstawiający pedagogiczną implementację bitowego algorytmu Tiny Encryption Algorithm (TEA), szyfru blokowego