1 1969
rok XI
JiOHOCNIK RZĄDU D/S BI.KKTRONICZHBJ TECHNIKI OBLICZENIOWEJ
P R A C E
Instytutu Maszyn Bat a nat y o sny ci
Rok XI Zeszyt 1
Warszawa 1969
INSTYTUT MASZYN MATEMATYCZNYCH DZIAŁOWY OŚRODEK EJTB
Copyright © 1969 - by Instytut Maszyn Matematycznych Polani
Wszelkie prawa zastrzeżone
Komitet Redakcyjny
Bartłomiej GŁOWACKI, Jerzy GRADOWSKI /redaktor naczelny/, Andrzej K0JEK5KI, 'Włodzimierz MARDAL /z-ca redaktora/, Jan RELUGA
Sekretarz redakcji) Romana NUROWSKA
Adres redakcji» Warszawa, ul. Krzywickiego 34, tel. 28-37-29.
W.D.N - Zam. 168/0/69. Nakł. 320+20 egz.
PEACE IHJi Zeszyt 1
© 1969.01
681.325.55.023.001.24
NIEKTÓRE METODY ZMNIEJSZANIA EFEKTYWNEGO CZASU PROPAGACJI PRZENIESIEŃ W SUMATORACH RÓWNOLEGŁYCH
Stanisław MAJERSKI Pracę złożono 17.02.1968 r.
RÓWNOLEGŁYCH
Przedmiotem opracowania jest zagadnienie minimalizacji efektywnego czasu propagacji przeniesień w binarnych sumatorach równoległych. Czas ten decyduje w dużym stopniu o szybkości działań arytmetycznych równoleg
łych maszyn cyfrowych. Przegląd ważniejszych metod zmniejszania czasu propagacji przeniesień przeprowa
dzono w części I opracowania.
Do najkorzystniejszych metod zmniejszania maksymalnego czasu propagacji należy stosowanie układów przeskoków przeniesień. W częśoi II opracowania przedstawiono me
tody wyznaczania optymalnych rozkładów przeskoków przeniesień w sumatorach, w zakresie rozkładów o nie
wielkiej liczbie przeskoków.
Tematem części III są metody wykrywania zakończenia propagacji przeniesień. Omówiono ni.ektóre niedociąg
nięcia kilku znanych z literatury rozwiązań wykrywania i przedstawiono metody odpowiednio zmodyfikowane.
SPIS TREŚCI
w s t ę p... 7
Część I. PRZEGLĄD METOD ZMNIEJSZANIA EFEKTYWNEGO CZASU PROPAGACJI PRZENIESIEŃ ... 13
1. WPROWADZENIE ... 13
2. METODA PAMIĘTANIA PRZENIESIEŃ ... 16
3. METODA RÓWNOCZESNYCH PRZENIESIEŃ ... 20
4. METODA PRZESKOKÓW PRZENIESIEŃ ... 21
5. METODA RÓŻNIC SYMETRYCZNYCH... /... 23
6 . METODA PIRAMIDY PRZENIESIEŃ ... 24
7. METODA SUM WARUNKOWYCH... 27
8 . ZAKOŃCZENIE ... 30
Część II.’DOBÓR OPTYMALNYCH ROZKŁADÓW PRZESKOKÓW PRZENIESIEŃ W SU
MATORZE ... ... ... 31
1. WPROWADZENIE.... ... •••••.... ... . 31
2 . DEFINICJE I OZNACZENIA... ... ... 36
3. PRZESKOKI JEDNOWARSTWOWE W SUMATORZE S1 BEZ PRZENIESIEŃ CYK LICZNYCH ... ... 42
4 . PRZESKOKI JEDNOWARSTWOWE W SUMATORZE S2 BEZ PRZENIESIEŃ CYK LICZNYCH ... ... .... 45
5 . PRZESKOKI DWUWARSTWOWE W SUMATORZE S1 BEZ PRZENIESIEŃ CYKLICZ NYCH ... . 47
6 . PRZESKOKI DWUWARSTWOWE W SUMATORZE S2 BEZ PRZENIESIEŃ CYKLICZ NYCH ... ... ... 50
7. PRZESKOKI JEDNOWARSTWOWE W SUMATORZE S1 Z PRZENIESIENIAMI CYK LICZNYMI -... . 54
3. PRZESKOKI JEDNOWARSTWOWE W SUMATORZE S2 Z PRZENIESIENIAMI CYK LICZNYMI ... ... ... ... 58
9. PRZESKOKI DWUWARSTWOWE W SUMATORZE S1 Z BIZZNIESIENIAMI CYKLICZ NYMI ... ... ... ... o 62 10. PRZESKOKI DWUWARSTWOWE W SUMATORZE S2 Z PRZENIESIENIAMI CYK- LICZNYMI ... 69
11. ZAKOŃCZENIE ... 75
Część I H . WYKRYWANIE ZAKOŃCZENIA PROPAGACJI PRZENIESIEŃ W SUMATO RACH RÓWNOLEGŁYCH... ... ... 78
1. WPROWADZENIE... <■. 78 2. ZAŁOŻENIA, DEFINICJE I OZNACZENIA ... ... 81
3 o METODA BLOKOWANIA UKŁADU PRZENIESIEŃ... ... 85
4. METODA LINII OPÓŹNIAJĄCYCH ... 104
5. METODA UKŁADÓW RÓŻNICZKUJĄCYCH... ... ... 103
6 . ZAKOŃCZENIE ... 110
Dodatek I. UZASADNIENIE METODY WYZNACZANIA OPTYMALNEGO DWUWARSTWO WEGO ROZKŁADU PRZESKOKÓW PRZENIESIEŃ DLA n' '-POZYCYJ NEGO SUMATORA 31 BEZ PRZENIESIEŃ CYKLICZNYCH 1 . MAKSYMALNY CZAS PROPAGACJI PRZENIESIEŃ W SUMATORZB Si Z DWUWAR STWOWYM ROZKŁADEM PRZESKOKÓW ... ... 113
2. MAKSYMA INA LICZBA POZYCJI SUMATORA DLA DANEGO CZASU PROPAGACJI PRZENIESIEŃ PRZY ZAŁOŻENIU M - T ... 116
3. UZASADNIENIE ESZY JĘCIA ZAŁOŻENIA U - T ... *... 123
Dodatek II. ROZKŁADY PRZESKOKÓW PRZENIESIEŃ O OGRANICZGNBJ LICZBIE POZYCJI W GP.UPACH I SEKCJACH 1. PRZESKOKI JBDNOWARSTWOWB W SUMATORACH BEZ PRZENIESIEŃ CYKLICZ NYCH ... ... ... 133
2. PRZESKOKI DWUWARSTWOWE W SUMATORACH BEZ PRZENIESIEŃ CYKLICZ
NYCH ... 134 3. PRZESKOKI JEDNOWARSTWOWE W SUMATORACH Z PRZENIESIENIAMI CYK
LICZNYMI ... 136
4. PRZESKOKI DWUWARSTWOWE W SUMATORACH Z PRZENIESIENIAMI CYKLICZ
NYMI ... 136
Literatura ... 139 Pe3BMe ...
Suninary ... ... . 143
WSTĘP
Szybkość wykonywania operacji arytmetycznych jest jednym z głównych czynników decydujących o efektywnośoi działania maszyn cyfrowyoh. Zwiększenie Jej można uzyskaó zarówno przez stosowa
nie szybszych elementów elektronicznych Jak również przez odpo
wiednią strukturę logiozną układów arytmetycznych.
Szybki rozwój elektroniki w ostatnich latach umożliwił osiąg
nięcie wielokrotnie większego wzrostu szybkości operacji wewnę- trznyoh w maszynach cyfrowych niż wzrost szybkości wprowadzania i wyprowadzania informacji. Pomimo tego, wymagania na zwiększe
nie szybkości operaoji wewnętrznych, a zwłaszcza operaoji aryt
metycznych, znacznie wzrosły. Jest to wynikiem równie szybkiego rozwoju organizacji maszyn i metod programowania, umożliwiają
cych budowę takioh sy3temów przetwarzania informacji, w których wiele urządzeń o znacznie różniących się szybkościach działania może praoować ze sobą bardzo efektywnie, wyrazem tego rozwoju są nowoczesne, wielo programowe i praoujące w podziale ozasu ma
szyny i systemy maszyn, takie jak IBM 360, EELM 4, Spectra 70, CDC 6000. Powszechne w tych systemaoh stosowanie wielokrotnych układów arytmetycznych może świadczyć, że nawet przy najszyb
szych istniejących obecnie elementach elektronioznych istnieje potrzeba zwiększania szybkośoi operacji arytmetycznych. Przema
wia za tym także stosowanie w wielu systemach przetwarzania in
formacji po kilka jednostek arytmetycznych. Jako przykład mogą tu służyć maszyny IBM 360/91 i 9020, a zwłaszcza maszyny CDC 6600 i 6800, posiadające wiele Jednostek arytmetyoznyoh.
Również panująoe obeonie tendencje rozwoju "architektury ma
szyn" zakładają stosowanie dużej ilości układów arytmetycznych przy równoczesnym znaoznya skróceniu czasu wykonania operacji arytmetycznych. Przykładem tego mogą być perspektywiczne opra
cowania takich przyszłościowych systemów przetwarzania infor
macji jak Solomon, czy systemy iteracyjne Hollanda i Gonzalesa.
Istnieje zatem poważny problem zmniejszania czasu wykonywa
nia operacji arytmetycznych nie tylko na drodze zwiększani,a szybkości elementów elektronicznych, ale również poprzez bar
dziej efektywne rozwiązania struktury logicznej układów aryt-
metyoznyoh. Uwzględniając, że w większości lstnlejąoyoh obeonie typów maszyn oyfrowyoh operaoje arytmetyczne sprowadzają się do wykonania dodawania względnie określonej sekwenoji dodawań, roz
wiązanie tego problemu polega najozęśoiej na skróceniu w sumato
rach ozasu dodawania. O ozasie wykonania dodawania deoyduje z ko
lei głównie ozas propagaoji przeniesień w sumatorze, a śoiślej tzw. " e f . e k t y w n y ozas propagaoji przeniesień". Pod po
jęciem tym rozumiemy ozas p r z e z n a o z o n y w sumatorze na propagaoję przeniesień, przekraozająoy często znaoznie r z e c z y w i s t y ozas propagaoji przeniesień.
Minimalizacja efektywnego ozaau propagaoji przeniesień Jest Jednym z podstawowych problemów projektowania szybkioh Jednostek arytmetycznych, a zdaniem niektórych autorów nawet problemem*oen-
tralnym /patrz praoe [15J, Dotyczy to oozy^śole projekto
wania takich Jednostek, w któryoh, ze względu na wymaganą szyb
kość działania konleozne jest stosowanie sumatorów równoległyoh.
W zależności od struktury logicznej sumatora e f e k t y w- n y ozas propagaoji przeniesień może być wielkością stałą lub zmienną.
W sumatoraoh równoległyoh, nie wyposażonych w układ wykrywa
nia zakońozenia propagaoji przeniesień efektywnym czasem propa
gaoji jest maksymalny ozas propagaoji przeniesień uwzględniają
cy ponadto możliwe wahania ozasów propagacji elementów zastosowa
nych w układzie przeniesień sumatora. Efektywny ozas propagaoji przeniesień, Jak również ozas oyklu pojedynczego dodawania w ta- kioh sumatoraoh, Jest wielkośoią stałą.
W sumatoraoh równoległyoh, wyposażonych w układ wykrywania zakońozenia propagaoji przeniesień, efektywnym oząsem propagaoji Jest rzeozywisty ozas propagaoji przeniesień, zwiększony tylko o ozas opóźnienia wprowadzonego przez układ wykrywania. Efektywny ozas propagaoji przeniesień, Jak również ozas oyklu pojedynozego dodawania w takioh sumatoraoh podlega dużym wahaniom, zależnym od składników dodawania. 0 wielkości tyoh wahań w sumatorze n - pozyoyjnym świadczyć może średnia długość najdłuższego z łańou- ohów propagaoji w układzie przeniesień wynosząca w przybliżeniu log2 n pozyoji w porównaniu z długośoią maksymalną wynosząoą n /względnie n-1/ pozyoji.
- 8 -
Umniejszenie efektywnego czasu propagacji przeniesień w sumato
rach równoległych uzyskuje się zatem przez skrócenie maksymalnego cza3u propagacji przeniesień w przypadkach, gdy wymagana jest sta
ła długość pojedynczego cyklu dodawania, względnie przez zastoso
wanie układu wykrywania zakończenia propagacji przeniesień, gdy chodzi o zmniejszenie średniej statystycznej długości cyklu dodawa
nia.
Zagadnienie minimalizacji efektywnego czasu propagacji przenie
sień w równoległych sumatorach binarnych stanowi zasadniczy temat niniejszego opracowania. Opracowanie to składa się z trzech części, z których każda może być traktowana Jako odrębna całość.
Część I stanowi przegląd znanych z literatury metod zmniejsza
nia e f e k t y w n e g o czasu propagacji przeniesień. W części tej omówio- nn jednak bardzo p o b i e ż n i e metodę przeskoków przeniesień oraz nie uwzględniono metody wykrywania zakończenia propagacji przeniesień.
Metodom tym, ze Yłzględu na ich duże znaczenie, poświęcono dwie po
z o s t a ł e części niniejszego opracowania.
Metoda przeskoków przeniesień jest jedną z najbardziej korzyst
nych metod zmniejszania maksymalnego czasu propagacji przeniesień, a zdaniem niektórych autorów nawet metodą najkorzystniejszą /patrz
¡15], [1 S j A Może byó ona stosowana w praktycznie nieograniczo
nej ilości różnych wariantów zależnych od ilości pozycji sumatora, wymaganego czasu propagacji przeniesień, dopuszczalnych kosztów su
matora 1 wielu innych czynników. Spośród wielu możliwych wariantów rozkładów przeskoków przeniesień, na szczególną uwagę zasługują te, które przy niewielkiej ilości układó?/ przeskoków, a więc przy nie
wielkich kosztach, pozwalają na uzyskanie stosunkowo krótkich cza
sów propagacji przeniesień. Optymalizacja takich rozkładów przesko
ków jest tematem części II niniejszego opracowania. Część ta stano
wi tłumaczenie opublikowanej w IEEE Transactions on Electronic Com
puters pracy autora "On Determination of Optimal Distributions of Carry Skips in Adders" /patrz [łSj/. W stosunku do pracy oryginal
nej zmieniony i rozszerzony został Jedynie rozdział 1 części II.
Metody proponowane w części II pozwalają na wyznaczenie rozkładów przeskoków przeniesień o minimalnym czasie propagacji oraz rozkła
dów o minimalnej liczbie przeskokôv? przęniesień dla danego czasu propagacji, przy założeniu, że:
-10 -
* K ażda pozycja sumatora objęta jest oo najwyżej Jednym przesko
kiem przeniesień,
• każda pozyoja 3umatora objęta Jest oo najwyżej dwoma przeskokami przeniesień.
Metody opracowano dla dwóoh typów sumatorów różnląoyoh się struk
tury pozycji, a mianowicie dla klasycznego typu sumatora równoleg
łego oraz dla bardzo oszozędnego sumatora na bramkach NOR, ale o strukturze narzuoająoej pewna dodatkowe warunki na rozkłady przesko
ków. Rozpatrzone przy tym oddzielnie sumatory bez przeniesień cyk
licznych i sumatory z przeniesieniami cyklioznyml. Uwzględnienie me
tod optymallzaoji rozkładów przeskoków dla wszystkich wymienionyoh przypadków /16 różnych wariantów oplsanyoh w rozda. 3 - 1 0 ozęśoi II/ narzuciło konieczność bardzo zwięzłego opisu poszozególnych me
tod. 2 tego względu nie przedstawiono dowodów uzasadniająoyoh te metody, a w przypadku Istnienia wielu równoważnych rozkładów przes
koków ograniczono się do podania jednego z niob. Uzasadnienie, ze opisane metody prowadzą do rozwiązań optymalnych zwiększyłoby około trzykrotnie objętość częśoi II. Dla przykładu, uzasadnienie Jednej z omówionyoh metod podano w Dodatku I. W przedstawionych w ozęśoi II metodaoh nie uwzględniono ograniczeń na maksymalną ilość pozycji objętych wspólnym przeskokiem. Uwzględnienie ioh nie nastręoza spe
cjalnych trudnośoi, ale wymaga modyfikacji wielu wzorów i przekra
cza zakres niniejszej pracy. Z tego względu zagadnienie to omówio
no jedynie w zarysie w Dodatku II.
Dobór rozkładów przeskoków przeniesień w aunatoraoh omawiany był między innymi w praoaoh [16] i [i 9]. Część II niniejszego opracowa
nia można traktować jako kontynuację i obszerne rozwinięcie tych rozważań z praoy ¡jl 6], które dotyozyły rozkładów przeskoków oharak- teryzująoyoh się stosunkowo krótkimi ozasami propagaoji przeniesień uzyskiwanymi przy niewielkiej liozbie przeskoków. Zastosowanie po
danych w ozęśoi II metod do sumatorów o różnej strukturze opartyoh na dwuwarstwowyoh elementaoh logiosnyoh N-OR-AND omówiono w [29] • Doboru przeskoków przeniesień w sumatorze dotyozy również praoa au
tora [30].
Tematom ozęśoi III niniejszego opracowania są metody wykrywania zakońozenia propagaoji przeniesień w sumatorach równoległyoh umoż
liwiające zmniejszenie średniego statyotyoznego ozasu propagaoji.
- 11 -
Część ta 8tanowi rozszerzony i przeredagowany referat autora wygło
szony na Sympozjum Przetwarzania Danych w Pradze [26J i opublikowa
ny następnie w "Pracach IMM". Omówiono w niej trzy metody wykrywa
nia zakończenia propagacji przeniesień.
Pierwszą z tych metod, nazwaną metodą blokowania układu przenie
sień, można w zasadzie traktować jako szczególny przypadek klasycz
nej metody Gilchrisfa, Pomerene’a i Wong’a opisanej w [21J . Mimo tego uznano w niniejszej pracy za celowe obszerne jej omówienie i wyraźne sprecyzowanie dla niej warunków zapewniająoyoh poprawność wykrywania zakońozenla propagacji przeniesień. Powodem tego było stwierdzenie, że spotyka się w literaturze rozwiązania sumatorów z układami wykrywania nie zapewniającymi w każdym przypadku popraw
nej sygnalizacji końoa propagacji. Rozwiązania takie, nie realizu- jąoe konsekwentnie zasady wykrywania podanej w [2lj , a powołująoe się na tę zasadę, opublikowano w praoaoh [19], [20] i [23]. Pakt ten wskazuje na oelowośó zwrócenia większej uwagi na sprecyzowanie warunków poprawnego działania układów wykrywania, niż uozynlono to w praoy [21] .
Dla.uzasadnienia powyższych stwierdzeń wykazano w niniejszym opraoowanlu, że przy pewnych niekorzystnych komblnaojaoh ozasów propagacji elementów sumatora, podane w [j9], [20J i [23^ rozwią
zania wykrywania zakończenia propagacji przeniesień nie 3ą popraw
ne. Rozwiązania te można jednak łatwo zmodyfikować w oparoiu o me
todę blokowania w sposób pokazany na rys. 3.2b, 3.4b i 3.7b. Mody
fikacja taka zapewnia poprawność działania układów wykrywania prak
tycznie bez zwiększenia wyposażenia, a ozasem nawet umożliwia jego zmniejszenie.
Poza metodą blokowania układu przeniesień przedstawiono w częś
ci III niniejszego opracowania dwie inne metody wykrywania zakończe
nia propagacji przeniesień, a mianowioie metodę linii opóźniających i metodę układów różniczkujących. Polegają one na badaniu, ozy w oią- gu maksymalnego okresu propagacji sygnału przez Jedną pozycję suma
tora nie uległ zmianie stan wyjść jego pozycji. W metodzie linii opóźniających badanie to polega na porównaniu aktualnego stanu wyjźć sumatora ze stanem opóźnionym o określony okres czasu, w me
todzie układów różniczkujących na wykrywaniu skokowych zmian napięć.
- 1,2 -
Dla większośoi znanyoh rozwiązań sumatorów obie omawiane metody wy
dają się mniej korzystne niż metoda blokowania. Niemniej mogą ist
nieć pewne rozwiązania sumatorów, w których korzystniejsze będzie stosowanie jednej z tych metod.
Każda z omówionyoh w częśoi III metod wykrywania zakończenia pro
pagacji przeniesień wymaga dołączenia do sumatora układu wykrywania 0 odpowiedniej strukturze, kontrolującego stany wyjść pozycji suma
tora. Układy wykrywania dołącza się zazwyczaj do wszystkioh pozyoji sumatora. Można jednak, kosztem niewielkiego zwiększenia efektywnego czasu propagacji przeniesień, układy te znacznie uprościć 1 kontrolo
wać kilkakrotnie mniejszą ilość pozycji sumatora. Problem ten omówio
no również w części III w odniesieniu do każdej z trzech metod wykry
wania.
Zastosowanie metody blokowania układu przeniesień do sumatorów o różnej strukturze, opartych na dwuwarstwowych elementach logioznyoh N-OR-AND omówiono w praoy [29], Przykładem uproszczonego rozwiązania wykrywania zakońozenia propagacji przeniesień, opartego na metodzie blokowania może być przedstawione w pracy [27] rozwiązanie sumatora na bramkach NOR z układem wykrywania kontrolującym co drugą pozyoję sumatora I zawierającym w przybliżeniu dwukrotnie mniej bramek NOR niż ilość pozycji sumatora.
Zagadnienia omawiane w niniejszym opraoowanlu i w publikowanych wcześniej ertykułaoh autora wykorzystanyoh w tym opracowaniu, dysku
towane były na zebraniach 1 spotkaniach z praoownikami naukowymi In
stytutu Maszyn Matematycznyoh, Instytutu Matematycznego PAN i Kate
dry Budowy Maszyn Matematyoznyoh Politechniki Warszawskiej. Za wiele cennyoh uwag i sugestii, ktćre w dużym stopniu wpłynęły na zakres, treść i formę niniejszego opraoowania autor pragnie złożyć podzięko
wanie prof. A. Kilińskiemu, prof. dr 1. Łukaszewiczowi, doo. dr K.
Fiałkowskiemu i doo. dr Z. Pawlakowi. Autor dziękuje rćwnież Dyrek
cji Instytutu Maszyn Matematyoznyoh za umożliwienie mu opraoowania 1 opublikowania niniejszej pracy.
C z ę ś ć
PRZEGLĄD METOD ZMNIEJSZANIA EFEKTYWNEGO CZASU PROPAGACJI PRZENIESIEŃ
1. WPROWADZENIE
Zmniejszenie efektywnego czasu propagacji przeniesień w równole
głych sumatorach binarnych uzyskać można, Jak wspomniano we wstępie, zarówno przez stosowanie odpowiednio szybkich elementów elektronicz
nych, Jak również przez odpowiednią strukturę logiczną sumatorów.
Do pierwszej grupy rozwiązań należą te sumatory, w któryoh op
rócz elementów stanaartowych, występujących również w innyoh sie
ciach przełączających maszyny cyfrowej, stosowane są także odpowied
nio szybkie elementy specjalne. Elementy takie spotyka się najczęś
ciej w układach przeniesień sumatorów. Zalicza się do nich zwykle również elementy standartowe, specjalnie selekcjonowane ze względu na ozas propagacji.
Do drugiej grupy rozwiązań należą sumatory o strukturze logicz
nej pozwalającej na uzyskanie mniejszego efektywnego ozasu propsga- cji przeniesień niż to wynika z iloozynu maksymalnego czasu propaga
cji przeniesień pojedynczej pozycji sumatora I ilości pozycji suma
tora.
Istnieje wiele metod zwiększania szybkości < amatorów równoległych, polegających na odpowiednim doborze ich struktury logicznej. W zależ
ności od zasady działania układu propagacji przeniesień sumatora,, względnie zasady działania dodatkowych układów przyspieszających dołączonych do sumatora, można wyróżnić wśród nich następujące me
tody:
a metoda pamiętania przeniesień [1] - [&],
® metoda równoczesnych przeniesień [7] - [9] ,
©metoda przeskoków przeniesień M 5] - [20], [28j - [30], i> motoda różnic symetrycznych M 0] - [12],
o metoda piramidy przeniesień [i3]>
a metoda sum warunkowych [14 ),
- 14 -
Istnieje również wiele modyfikacji powyższych metod, powstałych w wyniku poszukiwania optyaalnyoh rozwiązań sumatorów przy określo
nych wymaganiach na szybkość, ilość pozyoji sumatora, rodzaj stoso- wanyoh elementów elektronieznyoh i wiele innych czynników.
Niektóre z wymienionych metod mogą być wykorzystane łąoznie w Jednym rozwiązaniu sumatora. Można mianowicie, niezależnie od sie
bie, z powodzeniem stosować dowolną z metod zmniejszania maksymal
nego ozasu propagaoji przeniesień /a tym sacym czasu średniego/ z równoozesnym wykrywaniem końca propagaoji przeniesień. Przykładem takiego rozwiązania jest sumator przedstawiony w [1SQ str. 71. Moż
na również 3tosować w układzie przeniesień sumatora szybsze od standartowych elementy specjalne przy odpowiednio "szybkiej" struk
turze logicznej tego układu. Rozwiązaniem takim jest sumator Kilbur- na opisany w [10^ 1 [j1]«
Omówimy w zarysie poszczególne metody, uwzględniając również niektóre oiekawsze ich modyflkaoJe. Opis metod poprzedzimy przypom
nieniem kilku relaoji związanych z wykonywaniem dodawania w suma
torach binarnyoh.
Y/eźmy pod uwagę dwie liczby całkowite dodatnie przedstawione w postaol rozwinięć binarnyoh
n n
a * 2 ] ai 21 , b - y * bŁ 21
Dla wyznaczenia ich sumy
n
/1.2/
i»0 można posłużyć się wzorem rekurencyjnym
aŁ + ^ + o± » sŁ + 2oi+1 (i * 0,1,2, ..., n) /1.3/
- ni -
przy założeniu, że °0 ” 0 oraE że si> °i przyjmują wyłąoznie
•wartości zerojedynkowe. Wyrazy we wzorze /1.3/ oznaczają prze
niesienie. Wyróżniony wyraz oQ+1 we wzorze /1.2/ wiąże się z ayg- nalizaoją nadmiaru w maszynie cyfrowej /jak wynika a /1.1/ 1 /1.3/
zachodzi równość °n+-i " aB+i/»
Algorytm dodawraia określony przez /1.3/ może byó zrealizowany w sumatorze równoległym złożonym z n+1 sumatorów Jednopozyoyj- nyoh o strukturze opisanej wzorami boolowskimi
S^ ** D^O^ + D i^l \ D, 1 ,2, • • • t •
m aj^i + ( ^* ** •••» /1 b 5/
gdzie
Di " *1^1 + aA /1,6/
W miejsoe /1.5/ korzystać można również s wzoru
ci+1 « + (^ai + ^i)°l ( ■*" " °»1 »2 * n ) /1 «7/
2 układu k równań boo3.owskioh
^ • ai^l + ^1^*1 ^ i “ 1+1, 1+2, #Gop 1+k ) /1:&f
/porównaj /1.5// wynika, ża
°l+k+1 B al+k ^1+k
t. « ti /t.9/
+ Dl+k ^L+k-1 l+k-1
+ Di .1+k l+k-1 ^l+k-S 1+k—2 i. D
oo można zapisać krócej w postaci
°l+k+i “ al+k Dl+k + i al+mbl+m F I Dl*j)"'
m=1 \ J*m-1 /
/1.1 O k
+ °i+i F I d i+j
Należy podkreślić, że wzory /1.4/ - /1.10/ są wzorami boolcwskimi w któryoh symbole + i X dotyczą sumowania logicznego.
Przy omawianiu wzoru /1.3/ przyjęto, że c0 * O. W systemach cyfrowyoh opartych na binarnej arytmetyoe uzupełnieniowej k o r z y s tne może być również dysponowanie szybkim sumatorem z przeniesie
niami oyklicznymi, umożliwiającymi wykonanie dodawania przy zało
żeniu c q * cn+-< • Uwaga ta ma z tego względu znaczenie dla przy
spieszania działania sumatorów, że w zależności od zastosoT/eneJ metody, skrócenie czasu wykonania pojedynczego cyklu dodawania może być zupełnie inne dla cc * °n+-| n c o =
Z wzorów /1.1/ - /1.10/ korzystać będziemy przy omawianiu posz csególnyoh metod.
2. METODA PAMIĘTANIA PRZENIESIEŃ
Weźmy pod uwagę p + 1 całkowitych dodatnioh liczb blnarnyoh
a ( i ) . ^ ; . u ) 2i , j „ 0 ,1 ,2 , p ) /1 .1 1 / 1“ 0
1 oznaczmy ich sumę przaz s. Liczbę s można zawsze przedstawić w postaci
n+q 'r~*
s 55 2L*
i»n+l
s1 2- + '■
i = 0 3i 2 / 1
.
1 2/
gdzie q jest dowolną liczbą całkowitą spełniającą warunt- 2q » P > 1 -
Dodawanie stałoprzecinkowe n+1—bitowyoh liczb dodatnich rQx ("i) /p\
a > a ll/, ..., e.[pl polega na wyznaczeniu wartości bitów s< dla i - 0.1,2, .... n oraz na zbadaniu czy . +s„ _+. ... +s > 0
7 7 n+i n-f*2 n-ł-o
/zbadaniu czy występuje nadmiar/. Dodawanie takie można wykonać stosująo algorytm opisany wzorami
n
. W ♦ ■ * * • & /1..13/
, < » . ci /1..14/
c (2)
ci + ati . (3> - s “ * ^ /i. 15/
s p - % c p - 0 + a W = ♦ 2 o (P) /I.16/
_ 18 -
DI
„ + 0i(p) - a ^ +1l 2 C ^ 1) /1.1T/
8i(P+1) + 0iCp+1) - B<P+Zl Z c ^ 71.18/
8 0>+r-1) + Ci(p+r-1) . , ^ 2 0^ 71.19/
dla 1 - 0,1,2, ..., n. W powyższych wzoraoh przyjmujemy r - n, ewentualnie przyjmujemy taką liczbę r mniejszą niż n, dla któ
rej spełniony Je3t warunek
X °i?rr) “ 0 /1.20/
i*=o
W maszynie cyfrowej, reallzaoję powyższego algorytmu dodawania można przeprowadzi<5 w układzie złożonym z n+1-pozycyjnego sumato
ra o strukturze logioznej opisanej wzorami boolowskimi /1.4/ - /1.6/ i trzeoh n+1 pozyoyjnyoh rejestrów, które nazwiemy rejes
trami A, C, P. Wykonanie dodawania wymaga czasu p+r taktów ze
garowych, odpowiadających kolejnym równaniom /1.13/ - /1.19/.
Zawartość i-tej pozycji rejestrów A, C, P w kolejnych taktaoh odpowiada kolejnym wartościom w trzech kolumnach wyrazów lewej stro
ny układu równań /1.13/ - /1.19/. W rejestrze A jest zatem naj
pierw pamiętany pierwszy składnik dodawania, a następnie otrzymywa
ne na wyjściach sumatora sumy częśolowe i suma końoowa. W rejes - trze C pamiętane 3ą wyprowadzane z sumatora przeniesienia, skąd wynika nazwa metody. Z rejestru P /ewentualnie wprost z pamięci/
wprowadzane są natomiast do sumatora kolejno liczby a ^ l a «..,
• • • f » a(P)*
W przypadku dodawania tylko dwóoh liczb /tj. dla p * 1/ potrzeb
ne jest Jedynie r+1 taktów zegarowych, którym odpowiada r+1 rów
nań należąoyoh do grup I 1 III układu równań /1.13/ - /1.19/. W przypadku takim można zastosować uproszczony sumator złożony z n+1 półsumatorów posiadających tylko po dwa wejścia odpowiadające dwóm wyrazom lewej strony każdego z równań grupy I i III,
Z powyższego opisu metody pamiętania przeniesień można wysnuć następujące wnioski:
- 19 -
• metoda nadaje się szozególnle dla maszyn cyfrowyoh o synchronicz
nej technloe impulsowej,
• metoda pozwala, przy użyoiu niewielkich środków, na stosunkowo szybkie wykonanie dodawania wielu składników, a więo umożliwia również odpowiednio szybkie wykonanie mnożenia i dzielenia,
• metoda oharakteryzuja się dużym maksymalnym czasem propagacji przeniesień, a śoiślej maksymalnym czasem asymilacji pamiętanych przeniesień, wymagającej w sumatorze n+1 pozycyjnym n+1 tak
tów zegarowych.
Ostatnia cecha rzutuje w dużym stopniu na maksymalny czas wyko
nania dodawania dwóoh llozb i w znaoznie mniejszym stopniu na ozas dodawania dużej ilości liczb.
Stosowane są następująoe modyflkaoje metody pamiętania przenie
sień:
1. Modyfikaoja uwzględniaJąoa wykrywanie końoa asymilaoji prze
niesień polegające na sygnalizacji samyoh zer w rejestrze przenie
sień. Zaletą Jej jest prosty układ sumatora dla dodawania dwóoh llozb i krótki średni czas dodawania, a wadą zmienna długość cza
su dodawania.
2. Modyfikaoja polegająca na takim rozwiązaniu sumatora, w któ
rym dwie pozyoje binarne traktowane są jako jedna pozyoja rozwinię
cia czwórkowego. IV rejestrze przeniesień pamiętane jest wówczas oo drugie przeniesienie binarne. Rozwiązanie takie wymaga nieco bar
dziej złożonego sumatora, ale w zamian za to rejestru przeniesień o dwukrotnie mniejszej ilośoi pozycji. Zaletą jego jest dwukrotne zmniejszenie maksymalnego czasu asymilacji przeniesień.
3. Modyfikacja analogiczna do omówionej poprzednio, z tym, że k cyfr binarnyoh traktowane są jako jedna cyfra rozwinięcia przy zasadzie 2k , Pamiętania wymaga wówczas Jedynie co k-te przenie
sienie binarne. Wewnętrz k-pozycyjnych grup, przeniesienia dodawa
ne są bezpośrednio przy użyciu układów przeskoków przeniesień, względnie innymi metodami. Zmniejszenie ozasu asymilaoji przenie
sień w takim rozwiązaniu można oszacować przyjmując, że prawdopo
dobieństwo wystąpienia przeniesień na więcej niż k kolejnych po
zy o Jach. sumatora wynosi W praktycznych rozwiązaniach su
- 20 -
matorów, uwzględniających ponadto 'badanie zerowego stanu rejestru .przeniesień C, asymilacja przeniesień zajmuje zwykle jeden do
dwóoh taktów zegarowych.
4. Modyfikacja polegająca na pamiętaniu jedynie przeniesień pro
pagujących /na tych pozycjach, dla których a^b^ + ai \ = 1 bezpośrednim dodawaniu do sumy osęśoiowej przeniesień generowanych /gdy a±b1 * 1/.
Metoda pamiętania przeniesień opisana została po raz pierwszy w praoy [ij, a niektóre jej modyfikacje w [2^ - i,Ietoda ta nada
je się zarówno dla sumatorów bez przeniesień cyklioznych jak i dla sumatorów z przeniesieniami cyklicznymi.
3. METODA RÓWNOCZESNYCH PRZENIESIEŃ
Z wzoru /1 .9/ wynika, że
°i+1 “ albi
+ Diai-Ibi-1 + DiDi-1 ai—2 bi-2
+ 1 ••• ^2 ^1^1 + Di Di-1 *** D1D1 ao bo + D1_1 ••• D2 D1 D 0 °o
Równanie boolowskie /1.21/ opisuje strukturę i-tej pozyoji uk
ładu przeniesień sumatora, w którym przeniesienia na poszozegól- nych pozycjaoh mogą byó realizowane równooześnie i niezależnie od si?bie. Takie rozwiązanie sumatora umożliwia szybkie wykonanie do
dawania, Jest jednak bardzo kosztowne szczególnie dla sumatorów o dużej ilośoi pozyoji. Dodatkowym czynnikiem powodującym zwiększe
nie wyposażenia sumatora i równooześnie zmniejszającym jego szyb
kość działania Jest ograniczenie spływu i wzmocnienia logicznego /fan-in,u i fan-out’u/ elementów stosowanych w sumatorze.
- 21 ~
Opisana metoda równoczesnych przeniesień może być stosowana w wielu różnych wariantach zależnych od parametrów technicznych 'ele
mentów logloznyoh stosowanych w sumatorze,
W przypadkach, gdy wymagany czas działania sumatora umożliwia stosowanie wielowarstwowych sieoi przełąozających realizujących funkcje 0^,0,, ...» o ^ , możliwe jest wspólne wykorzystanie nle- któryoh elementów w kilku sieciach.
W przypadkach, gdy parametry elementów logicznych narzuoają ko
nieczność szeregowego łączenia odpow.l . :niej liczb, elementów do realizacji najbardziej złożonej funkcji cn+1, :uożna łączyć sze
regowo również elementy w mniejszych sieciach przełąozająoych i w ten sposób uzyskiwać prostsze układy funkcji o± dla mniejszych wartości i.
umawiana metoda jest również tematem prac [7"] - [9~], Stosowa
nie jej może być korzystne jedynie- w przypadku sumatorów bez prze
niesień oyklioznyoh, o niezbyt dużej ilośoi pozyojl. Metoda wyma
ga bardzo złożonej struktury sumatora, pozwala jednak na uzyskiwa
nie dużych szybkości działania.
4. METODA PHZESKOKÓW PRZENIESIEŃ
Y/prowadzimy oznaczenia
°l,k “ Dl+k Dl+k-1 *** D l+2 D 1.1 °1+1 /-1.22/
°l,k “ D l+k Dl+k-1 •** Dl+3 Dl+2 a l+1 bl+1 /1 *23/
Iloczyny te, jak wynika z /i,S/» są składnikami boolowakimi prze-
; l ezienia Można je zawsze sumować logicznie z dowolnym 'wyrażeniem boolowskim przedstawiająoym przeniesienie °x+k+l nie zmieniająo jego wartości. Obowiązują zatem wzory boolowskie
°i+k+i M °i+k+i + °!,k Z1 *24/
°l+k+1 ° °l+k+1 + °l,k /1.25/
- 22 -
Funkoje o^ k 1 °£ ^ nazywać będziemy funkcjami przeskoków przeniesień, a*układy elektroniczne o strukturze opisanej przez /1.22/ i /1.23/ układami przeskoków przeniesień obejmująoyml k pozyoji sumatora od pozycji 1+1 do 1+k. Do realizaoji jednego układu przeskoku przeniesień wystarcza jedna bramka iloczynu o odpowiedniej ilości argumentów. Sposób dołączania układów przes
koków do sumatora wynika z wzorów /1.22/ - /1.25/.
W miejsoe różnio symetrycznych Di = ajpi + we wzora°ń /1.22/, /1.23/ można przyjmować również sumy logiczne a., + b ^ 0 wyborze odpowiedniej fumkoji przeskoków przeniesień decydować powinna w konkretnyoh przypadkach prostsza struktura sumatora.
W zależności od liozby i ndługośoin przeskoków przeniesień oraz rozkładu tyoh przeskoków w sumatorach o określonej liczbie pozyoji uzyskuje się rozwiązania sumatorów o różnych maksymal- nyoh czasach propagaoji przeniesień. Stosowane są przy tym zarów
no 3umatory bardziej ekonomiczne c niewielkiej liozbie przeskoków przeniesień Jak i sumatory bardzo szybkie o znacznej liozbie prze
skoków.
Zagadnieniu optymalizacji rozkładów przeskoków o niewielkiej liozbie przeskoków poświęoona jest ozęść II niniejszej pracy. Roz
kłady o dużej liozbie przeskoków omawiane są natomiast między in
nymi w praoaoh [16] i [19], Również opisana poprzednio metoda rów- noozesnyoh przeniesień może byó uważana za szozególny przypadek metody przeskoków, wykorzystujący maksymalną możliwą liozbę prze
skoków w sumatorze. Zagadnienie stosowania przeskoków przeniesień w sumatorze Jest omawiane w praoaoh [15] - [20J , a również w pra
oaoh autora [28j - p o ] .
Przeskoki przeniesień mogą byó stosowane zarówno w sumatoraoh bez przeniesień oykllcznyoh jak i w sumatoraoh z przeniesieniami oyklloznymi. W obu wymienionych przypadkach korzystne jest jednak stosowanie różnyoh typów rozkładów przeskoków. Uzyskanie określo
nego maksymalnego ozasu propagaoji przeniesień dla sumatorów z przeniesieniami oyklioznymi wymaga przy tym zwykle stosowania większej liozby przeskoków.
Stosowanie układów przeskoków przeniesień uważane jest zazwy
czaj za jedną z najkorzystniejszych metod zmniejszania maksymalne
go czasu propagacji przeniesień.
- 23 -
5. METODA RÓŻNIC SYMETRYCZNYCH
W klasyoznym rozwiązaniu n+1— pozyoyjnego sumatora równoległe
go o jednakowej strukturze pozyoji, układ przeniesień sumatora złożony Jest z 2(n+l) szeregowo połączonych hramek, na przemian iloozynów i sum.
Metoda różnio symatryoznyoh, podana przez Kil h u m a [10], pole
ga na usunięciu z układu przeniesień hramek sumy i pozostawieniu wyłącznie hramek iloczynu o bardzo krótkim ozasie propagacji. Me
toda stanowi zatem połąozenie odpowiedniego doboru struktury suma
tora i zastosowania odpowiednio szybkich elementów. Powyższe okreś
lenie metody nie Jest zupełnie śoisłe, gdyż funkcje hramek sumy spełniają w sumatorze Kil h u m a zwarcia przewodów, Jest jednak z tego względu wygodne, że bramoe sumy nie odpowiada żaden układ elektroniczny.
Zasadę praoy sumatora K i l h u m a wyjaśnia rys. 1.1, ilustrująoy działanie jednej pozyoji sumatora.
5.
Rys. 1.1. Schemat ilustrujący działanie jednej pozycji sumatora Kilhuma.
ZaznaozoEi na rysunku "przełączniki" są zamknięte, gdy odpowiada
jąca im funkcja hoolowska przyjmuje wartość 1 i otwarte, gdy przyjmuje wartość 0. Symbole c «« 0 i o « 1 oznaozają pozio
my napięć odpowiadające wartośoiom logicznym 0 1 1 /brakowi
- 24 -
przeniesienia i przeniesieniu/, syiabol / oznacza różnicę syme
tryczną.
2asadniozą cechą rozwiązania jest niezależne zamykanie i otwie
ranie odpowiednich połączeń równocześnie na wszystkich pozycjach sumatora. 0 czasie propagacji układu przeniesień decydują zatem nie czasy dokonywania odpowiednich przełączeń, równoozesnych na wszystkich pozyojach i wliczanych w czas ustalania się stanu po- jedynozej pozycji sumatora, ale czas przejścia sygnału przez po
łączone szeregowo zamknięte "przełączniki''. Dla każdej kombinacji stanów wejśó a, ,b^ dokładnie jedna z funkcji aih^ , S^b^-*- + aj^b^ przyjmuje dla określonej pozycji sumatora wartość 1, a pozostałe dwie wartość 0. V,' każdej pozyoji sumatora jeden z trzech "przełączników" jest zatem zawsze zamknięty, a pozostałe dwa otwarte.
Nazwę metody przyjęto /na podstawie pracy ■ ? względu na strukturę układu przeniesień złożonego z szeregu "przełączników"
przełączanych w zależności od funkcji różnioy symetrycznej + + a 1 ^ 1 *■
Sumator oparty na przedstawionej metodzie zastosowany został w maszynie Atlas. Układ przeniesień tego sumatora składa się z łańoucha przełączników tranzystorowych.
Metoda różnic symetrycznych opisana została w praoach K i l h u m a
□ oj , [li]] 1 Saltera (ji2~\. Metoda zapewnia możliv/ość uzyskania bardzo krótkich czasów propagacji przeniesień zarówno w sumatorach bez przeniesień cyklicznych jak i w sumatoraoh z przeniesieniami oyklicznymi.
Na uwagę zasługuje także modyfikacja metody różnio symetrycz
nych uwzględniająca stosowanie układów przeskoków przeniesień.
Struktura układów przeskoków musi być wówczas specjalnie dobrana do struktury podstawowego układu przeniesień, opisanego powyżej.
0 modyfikacji tego typu wspomniano w pracy Ql fj str. 672.
6. METODA PIRAMIDY PRZENIESIEŃ
Nazwa metody związana Jest ze strukturą logiczną sumatora opi
saną przez Nadlera w pracy [l3j. Rys. 1.2 przedstawia 8 początko-
/
Rys. 1.2. 8~pozycyjny sumator Radiera
- 26 -
wyoh pozyoji takiego sumatora przy założeniu, że o q = 0. Dla uproszczenia schematu układy realizująoe funkcje różnioy symetrycz
nej przedstawiono za pomooą prostokąta zawierającego symbol ^ . Grubszymi liniami oznaczono drogi przeniesieri.
Sumator Nadlera ma strukturę warstwową. Podział sumatora na warstwy zaznaczono na rysunku U n i a m i przerywanymi. Liczba warstw rożnie logarytmicznie wraz z liozbą pozycji sumatora. Logarytmicz
nie z liczbą pozycji wzrasta również liczba szeregowo łączonych ele
mentów sumatora, a zatem 1 czas ustalania się stanu sumatora. ’Wypły
wa stąd wniosek, że sumator nadaje się szczególnie do stosowania w szybkich jednostkach arytmetycznych o bardzo długioh słowach.
Prooes ustalania się stanu sumatora przebiega w ten sposób, że w kolejnych etapach działania sumatora ustalają się stany kolejnych warstw sumatora pokazanych na rys. 1.2 i asymllowane są przeniesie
nia w niezależnych od siebie parach pozycji sumatora, czwórkach po
zycji, ósemkach itd. Ustalanie się stanu kolejnych warstw sumatora oznacza równocześnie, jak łatwo wywnioskować z rysunku, ustalanie się kolejno stanu najmniej znaczącej pary pozyoji sumatora, ozwór- ki pozyoji, ósemki itd.
Rozwiązanie Nadlera nadaje się wyłącznie do sumatorów bez prze
niesień cyklloznyoh.
0 pewnej modyfikacji rozwiązania Nadlera wspomniano w pracy fl5]. Modyfikacja ta polega na uwzględnieniu asymilacji przeniesień
•generowanych w pierwszej warstwie sumatora 1 dołączeniu układu wy
krywającego zakończenie asymilacji przeniesień do jednej z wyższych warstw sumatora. Układ taki może być bardzo prosty, gdyż badania wymaga tylko co 2k-ta pozycja sumatora, gdzie k jest numerem warstwy, do której dołączono układ wykrywania. Modyfikaoja taka nie wydaje się jednak speojalnie korzystna, gdyż ozas ustalania się stanu sumatora Nadlera nie zależy głównie od długośoi łańou- oha propagacji, jak to sugeruje się w pracy [1 > ale przede wszyst
kim od numerów pozyoji, na któryoh występują przeniesienia. By to uzasadnić wystarozy przeanalizować na podstawie rys. 1.2 przypadek ustalania się stanu sumatora Nadlera dla a^ * 1, b^ «* 1.
- 27 -
7. METODA SUM WARUNKOWYCH
Dodavfanie metodą sum warunkowych oraz odpowiednia struktura su
matora binarnego /condltional-sum adder/ opisana została przez Sklansky’ego w praoy [jl4]. Metodę tę wyjaśnimy na podanym przez Sklansky,ego przykładzie dodawania dwóoh liczb 16-bitowyoh
a = 1 0 1 1 1 0 1 1 0 1 1 0 1 1 0 1 b » 0 0 0 1 1 0 0 1 1 0 1 1 0 1 1 0 przedstawionym w tabeli 1,1.
Przez <t0 , , t2 , tt-j, oznaczono w tabeli przedziały ozasu odpowiadająoe kolejnym krokom dodawania.
W przedziale <t wszystkie pozycje binarne liozb a i b trak
tujemy jako niezależne od siebie, wyliczając dla każdej z nich dwu
krotnie bit sumy i przeniesienia, najpierw przy założeniu, że prze
niesienie wejściowe pozycji jest zerem, a następnie, że jest jedyn
ką. Jedynie dla najmniej znaczącej, zerowej pozyoji sumatora wyli
czamy bit sumy i przeniesienia Jednokrotnie przyjmując cQ = 0.
Otrzymujemy w ten sposób cztery pierwsze wiersze tabeli. Najmniej znaczący bit w wierszu pierwszym Jest bitem sumy końcowej.
W przedziale z1 traktujemy pary pozycji przedziału r Q nieza
leżnie od siebie i Jeśli przeniesienie wyjściowe pozyoji mniej zna- oząoej w parze /przeniesienie podkreślone w drugim i czwartym wier
szu przedziału t jjest równe 0 przepisujemy z przedziału <cQ bity z dwóch pierwszych wierszy pozyoji bardziej znaczącej, a Jeśli równe 1 przepisujemy bity dwóoh ostatnich wierszy pozycji bar
dziej znacząoej. Podkreślone w tabeli bity przeniesienia w wier
szu drugim przedziału icQ deoydują przy tym o bardziej znaozą- cyoh bitach w parze w wierszach 1 i 2 przedziału , a podkreś
lone bity przeniesienia w wierszu czwartym przedziału t:0 decy
dują o bardziej znaczącyoh bitach w wierszach 3 1 4 przedziału T.j. W ten sposób otrzymujemy oztery wiersze tabeli dla przedzia
łu t.j , w tym dla pary pozycji najmniej znacząoej tylko dwa wier
sze. Najmniej znaoząca para bitów w wierszu pierwszym przedziału Tj jest parą bitów sumy końcowej.
- 2 8 -
(' 15M13 12 11 10 9 a 7 B 5 A 3 2 1 0 •— Qi
<*> £ * -*w CJ w
■8 i i N to Qi 1 0 1 1 1 0 1 1 0 1 1 0 .1 1 0 1 S -S «•
o S b i? ® Qł fsj N O bi 0 0 0 1 1 0 0 1 1 0 1 1 0 1 1 0 <s
s 1 0 1 0 0 0 1 c 1 1 0 1 1 0 1 1 r\
c 0 0 0 1 1 0 0 1 0 ę 1 0 0 1 0 ę
Tc
s 0 1 0 1 1 1 0 1 0 0 1 0 0 1 0
c 1 0 1 1 1 0 1 1 1 1 1 1 1 1 1 s 1 0 0 0 0 0 0 1 1 0 1 0 0 1 1
c 0 1 1 1 0 1 1
T, s 1 1 0 1 0 1 0 1 0 0 1 0 0 1
c 0 1 1 1 1 1 1
s 1 1 0 0 0 1 0 c 0 0 0 1 0 u 1 1
c 0 1 1 1
T,
s 1 1 0 1 0 1 0 1 c n 1 0
1
c 0 l 1
s 1 1 0 1 0 1 0 0 0 0 1 c 0 0 1 1
c 0 1 0
r,
s 1 1 0 1 0 1 0 1 c 0 1
Si 1 1 0 1 0 1 0 1 0 0 1 0 0 c 1 1
0 Ti
Ci*t 0
Tabl. 1.1. Przykład dodawania metodą sum warunkowych.
- 29 -
W przedziale traktujemy czwórki pozyoji niezależnie od sie
bie i postępujemy z nimi analogioznie jak poprzednio z parami pozy
cji. Bierzemy mianowicie pod uwagę przeniesienia wyjściowe raniej znaczących par pozycji należących do odpowiednich ozwórek /przenie
sienia podkreślone przedziału %^/ i w zależnośoi od nich przepisu
jemy bity sumy i przeniesienia par bardziej znaczących z pierwszych dwóoh lub ostatnich dwóoh wierszy przedziału . Otrzymujemy w ten sposób cztery wiersze tabeli dla przedziału Tg, w tym dla czwórki pozyoji najmniej znaczącej tylko dwa wiersze. Najmniej zna
cząca czwórka bitów w wierszu pierwszym przedziału Tg je3t czwór
ką bitów sumy końcowej.
W przedzlałaoh t,, T^ postępujemy analogioznie z ósemkami i szesnastkami pozycji jak w przedziale Tg z czwórkami, otrzymująo w wyniku 16 bitów sumy i przeniesienie wyjśoiowe pozyoji najbardziej
znaoząoej.
Z omawianego przykładu dodawania dwóch llozb binarnych wynika, że dwukrotne zwiększenie liczby pozyoji sumatora pociąga za 3obą konieoznośó zwiększenia czasu o Jeden przedział T. Oznaoza to, że czas dodawania metodą sum warunkowyoh jest proporcjonalny do loga- rytrau ilości pozyoji sumatora analogicznie Jak w przypadku sumato
ra Nadlera. Oba te sumatory posiadają zresztą więoej cech podobień
stwa. Należy do nich piramidowa struktura sumatora, jak również ko
nieczność przyjęcia założenia oQ * 0. Również w sumatorze Sklan- sky’ego nie mogą być zatem realizowane przeniesienia oykllozne.
Mimo pewnego podobieństwa struktury sumatorów Nadlera 1 Sklan- sky’ego, oparte są one, jak łatwo wnioskować z przytoozonyoh opi
sów, na odmiennej zasadzie działania, mianowicie:
- V/ sumatorze Nadlera tworzone są najpierw bity sumy ozęśoiowej i bity przeniesienia. Przeniesienia te są następnie asymilowane w szeregu kroków, przy czym w pierwszym kroku asymilowane są przeniesienia na oo drugiej pozyoji sumatora, a w każdym następnym kroku uwzględnione są przeniesienia z dwukrotnie mniejszej licz
by pozyoji niż w kroku poprzednim.
- W sumatorze Sklansky’ego tworzone są na poszozególnyoh pozycjach niezależnie od siehie alternatywne bity sumy i przeniesienia
- 30 -
przy założeniu dwóoh różnych możliwyoh wartości przeniesień wej- śoiowyoh pozyoji sumatora. Następnie w kolejnyoh krokaoh wybie
rane są z nich odpowiednie hity sumy łączone w ooraz dłuższe sek- wenoje hitów, aż do uzyskania oatateoznego wyniku.
Sumator Sklansky’ego złożony jest z szeregu warstw, praoująoyoh kolejno w przedzlałaoh ozasów ’cQ , , tg, ..., w sposób wynika- jąoy z tabeli 1.1. Taka struktura sumatora umożliwia szybkie doda
wanie wielu liozb dzięki temu, że kolejne llozby mogą być wprowa
dzone do pierwszej warstwy przed zakońozeniem poprzedniego dodawa
nia, z częstotliwością wynikająoą z okresu pracy pojedynczej wars
twy. Sumator nadaje się do realizaoji zwłaszcza v? synohronioznej teohnioe impulsowej i może znaleźć zastosowanie w szybkioh jednoa- tkaoh arytmetycznych o odpowiednio długloh słowach.
8. ZAKOŃCZENIE
O celowośoi zastosowania poszczególnych metod zmniejszania efek
tywnego ozasu propagacji przeniesień w określonych przypadkaoh de- oydują głównie wymagania na sumator, zależne w dużym stopniu od przeznaczenia maszyny i stosowanej teohniki oyfrowej. Niemniej w większości zastosowań do najkorzystniejszych metod zalioza się zwykle:
» metodę przeskoków przeniesień, gdy ohodzl o zmniejszenie maksymal
nego ozasu propagaoji,
0 metodę wykrywania zakońozenia propagaoji przeniesień, gdy wymaga
ne Jest tylko zmniejszenie średniego ozasu propagaoji.
Pierwsza z wymienionych metod omówiona została w niniejszej ozęś- 01 praoy bardzo pobieżnie, a druga w ogóle pominięta. Metodom tym, ze względu na ioh duże znaozenle poświęcono, jak wspomniano we wstę
pie, dwie pozostałe ozęśoi niniejszego opracowania.
Oceną i porównaniem różnych metod przyspieszania działania rów- noległyoh sumatorów binarnyoh zajmowano się między innymi w praoaoh
[15], [16], [19], [20l
- 31 -
C z ę ś ć II
DOBÓR OPTYMALNYCH ROZKŁADÓW PRZESKOKÓW PRZENIESIE!? W SUMATORZE
1. WPROWADZENIE
Wśród omówionyoh w pierwszej ozęśoi niniejszej praoy metod zmniejszania maksymalnego oza3u propagaoji przeniesień na szoze- gólną uwagę zasługuje 3tosowanic układów przeskoków przeniesień.
Przyozyny tego są następująoe;
e Układy przeskoków przeniesień są układami o bardzo prostej struk
turze.
© Już przy niewielkiej liczbie układów przeskoków można uzyskać w sumatorze znaczne zmniejszenie maksymalnego czasu propagaoji przeniesień.
® Zmniejszenie maksymalnego ozasu propagaoji przeniesień jest za
leżne w szerokie* granioaoh od liczby zastosowanych przeskoków przeniesień i lob rozmieszczenia w sumatorze.
© Stosowanie odpowiedniej liozhy odpowiednio rozmieszczonych przes
koków przeniesień w sumatorze umożliwia uzyskanie bardzo małych czasów propagaoji przeniesień.
© Przeskoki przeniesień mogą być stosowane w sumatoraoh niezależ
nie od niektórych innych metod zmniejszania efektywnego ozasu propagacji przeniesień,
© Stosowanie przeskoków przeniesień jest metodą bardzo ekonomioz- ną. Uzasadnieniem tego stwierdzenia może byó porównanie kosztów 1 szybkości różnyoh rozwiązań sumatorów przeprowadzone w praoy [15] /patrz str. 675 tabela 2/, jak również wykresy efektywnoś
ci różnyoh typów sumatorów przedstawione w praoy [20]. W niektó
rych publikaojaoh /patrz [16] str. 698/ wyrażany Jest nawet po
gląd, że stosowanie przeskoków przeniesień jest najefektywniej
szą metodą zmniejszania maksymalnego ozasu propagaoji przeniesień.
Istnieje praktycznie nie ogranie z ona ilość różnych możliwyoh roz
kładów przeskoków przeniesień w sumatorach. Poszukiwanie rozwiązań najbardziej korzystnych sprowadza się do wyznaozenia odpowiedniego rozkładu przeskoków, zapewniającego wymaganą szybkość propagaoji przeniesień dla danej llozby pozycji sumatora i określonych właści- wośoi elementów logicznych użytyoh w sumatorze.
Znalezienie najkorzystniejszych rozkładów przeskoków przeniesień nastręcza zwykle duże trudności. Y/ynikaJą one głównie stąd, że czas propagaoji przeniesień jest bardzo złożoną funkcją ilości, "długo
ści" i rozmieszczenia przeskoków przeniesień w sumatorze. Łatwym do uwzględnienia czynnikiem, decydującym o szybkości działania sumato
ra, jest jedynie szybkość przełączania elementów logicznych. Uwzglę
dnienie jej wpływu sprowadza się zwykle do wyrażania wymaganego cza
su propagaoji przeniesień w jednostkach czasu równych maksymalnemu opóźnieniu sygnału przez jedną pozycję układu przeniesień sumatora, względnie przez jeden układ przeskoku przeniesienia. Oba te opóźnie
nia są zresztą w większośoi przypadków sobie równe. Przyjmując je za jednostkę, można wyrazić maksymalny czas propagacji przeniesień w sumatorze jako maksymalną liczbę pozyoji sumatora i układów prze
skoków przeniesień, przez które szeregowo propaguje przeniesienie przy najbardziej niekorzystnej korabinaoji bitów liczb dodawanych w sumatorze.
Sumatory z układami przeskoków przeniesień omawiane są między innymi w pracach [15] - [20], jak również w praoaoh autora niniej
szego opracowania [28] - [30], Poświęcimy obeonle kilka uwag nie
którym z tych prac.
MaoSorley w pracy [19] omawia rozkład przeskoków przeniesień polegająoy na podziale sumatora n$. k-pozyoyjne grupy. W każdej z grup stosuje ^g^ przeskoków wyczerpując wszystkie kombinacje prze
skoków dla kolejnych 2,3, • •«, k pozyoji w grupie. Grupy k-pozy- cyjne mogą być z kolei łączone w większe sekcje, 00 pozwala na u- zyskanie bardzo krótkich maksymalnych czasów propagacji przenie
sień, Rozwiązanie takie zalioza się do bardzo szybkioh, wymaga jed
nak dużej llozby układów przeskoków przeniesień i z tego względu jest mało ekonomiczne, zwłaszcza dla niezbyt wielkich maszyn cyf
rowy oh.
- 33 -
Kilka interesujących przypadków rozkładów przeskoków przeniesień w sumatorach przedstawili Lehman i Burla w pracy [16] . W szozegól- nośoi w praoy tej omówiono:
• rozkłady przeskoków przeniesień polegające na podziale sumatora na jednakowe grupy pozycji objęte pojedynczymi przeskokami prze
niesień. Dla takich rozkładów wyznaozono zależność czasu propaga- oji przeniesień od liczby pozycji w grupach oraz podano optymal
ną liczbę i optymalny rozmiar grup ze względu na najmniejszy czas propagacji w funkcji ilości pozyoji sumatora. Rozkłady o stałej liczbie pozycji w grupach charakteryzują się takim samym maksymal
nym czasem propagaoji w przypadkach sumatorów z przeniesieniami cyklicznymi jak i dla sumatorów bez przeniesień cyklioznych.
• rozkłady przeskoków, w których sumator podzielony jest na różnej długości grupy pozyoji objęte pojedynczymi przeskokami przeniesień, przy czym liczba pozyoji w grupach stopniowo maleje z oddalaniem się od środka sumatora. 'Dla sumatorów bez przeniesień cyklioznyoh rozkłady takie są korzystniejsze od rozkładów o stałej liczbie pozyoji w grupaoh, dla sumatorów z przeniesieniami cyklioznymi są one mniej korzystne.
• kilka przykładów sumatorów o stosunkowo dużej liczbie przeskoków i bardzo krótkich ozasaoh propagacji przeniesień. Sumatory te cha
rakteryzują się tym, że niektóre ich pozycje objęte są wieloma przeskokami, przeniesień.
Omówione w pracy \j 6] rozkłady przeskoków przeniesień w sumato
rach podzielić można na rozkłady prostsze o niewielkiej liczbie przeskoków, pozwalająoe jednak na uzyskanie znacznego zmniejszenia czasu propagacji przeniesień, oraz na rozkłady bardziej złożone o stosunkowo dużej llozbie przeskoków i bardzo krótkioh czasach pro
pagacji przeniesień. Podział taki uzasadnić można w sposób nastę
pu jąoy:
• Rozkłady o niewielkiej liczbie przeskoków przeniesień nadają się szozególnie do zastosowania w sumatorach niezbyt wielkich maszyn cyfrowyoh, w któryoh bardzo ekonomiczne rozwiązanie Jednostki arytmetyoznej jest równie ważne, jak uzyskanie stosunkowo krót
kiego ozasu propagaoji przeniesień. Rozkłady bardziej złożone na
_ J i -
dają się natomiast głównie do sumatorów wielkich maszyn cyfro
wych, w któryoh do uzyskania bardzo dużej szybkości wykonywania działań arytmetycznych można pozwolić sobie na mniej oszczędne rozwiązania sumatorów.
0 W zakresie stosunkowo prostych, a równocześnie dość szybkioh rozkładów przeskoków przeniesień istnieje praktyczna możliwość przeprowadzenia szczegółowej analizy wpływu rozkładu przeskoków na ozas propagacji przeniesień i dokonania wyboru odpowiedniego rozkładu przeskoków. W przypadku konieczności uzyskania bardzo szybkioh, a zatem i odpowiednio skomplikowanych rozwiązań suma
tora, wnikliwa analiza i wybór najkorzystniejszego rozkładu prze
skoków przeniesień mogą być bardzo utrudnione lub wręcz niewyko
nalne. Potrzeba optymalizacji rozkładów przeskoków przeniesień i uzyskania rozwiązań bardzo ekonomicznych Jest jednak w ostat
nim przypadku znacznie mniejsza niż dla sumatorów wolniejszych stosowanyoh w maszynach niezbyt wielkich, rozwiązanych bardziej oszczędnie.
Powyższe uwagi wyjaśniają dlaozego w pracy Lehmana i Burli Ql <f]
prostsze rozkłady przeskoków omówiono bardziej szozegćłowo, łącz
nie z przeprowadzeniem analizy wpływu długośoi przeskoków na ozas propagaoji przeniesień, a ograniczono się Jedynie do przedstawie
nia kilku przykładów rozkładów przeskoków bardziej złożonych. Wy
mienione uwagi uzasadniają również celowość opracowania metod op
tymalizacji rozkładów przeskoków charakteryzująoyoh 3ię niewielką liozbą przeskoków przeniesień. Zagadnienie to stanowi zasadniczy temat niniejszej ozęśoi praoy. Metody wyznaczania optymalnych roz
kładów przeskoków przeniesień, przedstawione w dalszych rozdzia
łach, można uważać za kontynuację i obszerne rozwinięcie rozważań dotyoząoyoh tyoh rozwiązań z praoy Lehmana i Burli [■>&]» które cha
rakteryzują się stosunkowo małymi ozasami propagaoji przeniesień uzyskanymi przy użyoiu niewielkiej liozby układów przeskoków. Uza
sadnieniem wyboru tego tematu, opróoz rozważań przeprowadzonych powyżej, może być tendencja budovy w warunkaoh krajowych raoaej maszyn niezbyt wielkich, a możliwie najbardziej ekonomicznych.
Nawet zresztą w przodująoyoh gospodarozo krajach świata zapotrze
bowanie na takie maszyny jest znacznie wyższe, niż na maszyny wiel-' kie o bardzo dużych szybkośoiach działania.
- 35 -
W niniejszej części prao.y ograniczono się do przedstawienia me
tod wyznaozania rozkładów przeskoków przeniesień o minimalnych cza
sach propagacji przeniesień i minimalnych ilościach przeskoków prze
niesień przy założeniu, że każda pozycja sumatora objęta jest co najwyżej jednym przeskokiem /jednowarstwowe rozkłady przeskoków/
oraz oo najwyżej dwoma przeskokami /dwuwarstwowe rozkłady przesko
ków/. Metody te przedstawiono dla sumatorów z przeniesieniami cyk
licznymi i bez przeniesień cyklicznyoh. Wzięto również pod uwagę wpływ struktury logioznej pozycji sumatora na dobór optymalnych pa
rametrów rozkładów przeskoków. Podano mianowicie metody wyznaczania rozkładów przeskoków dla dwóoh typów sumatorów. Pierwszym z nich jest sumator nazwany S1 o klasycznej strukturze układu przenie
sień. Metody wyznaczania rozkładów przeskoków przeniesień dla tego sumatora obowiązują w zasadzie dla większości znanych rozwiązań su
matorów o JednakoweJ strukturze pozyoji. Drugim sumatorem nazwanym S2 Jest sumator oparty wyłącznie na bramkach NOR. Jego głównymi ceoharai są: tylko 6 bramek NOR na jedną pozyoję sumatora i tylko 1 bramka NOR na jedną pozycję układu przeniesień. Dane te świad
czą o walorach ekonomicznych i stosunkowo małym czasie propagacji przeniesień w porównaniu z wieloma innymi rozwiązaniami sumatorów.
Struktura tego sumatora narzuca jednak dodatkowe warunki na roz
kład przeskoków przeniesień. Przeskoki mogą mianowicie obejmować tylko nieparzyste liczby pozyoji sumatora i mogą byó przesunięte względem siebie tylko o parzystą liczbę pozyoji. Stosowanie prze
skoków nie spełniających tyoh warunków jest w sumatorze S2 nie- ekonomlczne.
Wyznaczenie rozkładów przeskoków dla danej liczby pozyoji suma
tora wymagało wcześniejszego wyznaczenia rozkładu przeskoków w su
matorze o maksymalnej możliwej do uzyskania liozbie pozyoji dla danego maksymalnego ozasu propagacji przeniesień. Z tego względu, w każdym z rozdziałów 3 do 1D niniejszej ozęści pracy, przedsta
wiono najpierw metodę wyznaczania takiego rozkładu przeskoków.
Celem zmniejszenia objętości niniejszej ozęści pracy wszystkie metody przedstawiono bez dowodów, a w przypadku istnienia wielu rozwiązań równoważnyoh ograniczono się tylko do podania jednego z nich. Pełne uzasadnienie, że podane metody prowadzą do optymal—
- % -
nych rozkładów jednowarstwowych i dwuwarstwowych, zwiększyłoby oko
ło trzykrotnie objętość niniejszej ozęśoi praoy. Dla przykładu, w Dodatku I podano uzasadnienie dla jednej z przedstawionyoh metod z rozdz. 5, a mianowicie "Uzasadnienie metody wyznaozania optymalne- go dwuwarstwowego rozkładu przeskoków przeniesień dla n v '-pozyoyj- (T) nego sumatora S1 bez przeniesień cyklicznych".
2. DEFINICJE' I OZNACZENIA
Układ przeskoku przeniesień w sumatorze S1
Definicja 1 S u m a t o r S1 jest to równoległy sumator binarny złożony z jednakowych sumatorów jednopozycyjnych, w którym struktura i-tej pozycji układu przeniesień jest opisana wzorami boo- lowskimi
Propagacja przeniesień w sumatorze rozpoczyna się od momentu zmia
ny zerowego stanu wejść sumatora w stan odpowiadający bitom składni
ków dodawania, a kończy się w momenoie ustalenia się stanu wszyst
kich bramek układu przeniesień sumatora.
Definicja 2 U k ł a d p r z e s k o k u p r z e n i e s i e ń Cl obejmujący k pozyoji układu przeniesień sumatora S1 od pozyoji 1 + 1 do 1 + k jest to układ opisany funkcją boo- lowską przeskoku przeniesienia
Układ przeskoku C1 dołąozony jest do układu przeniesień suma-
ci+1 =
/
2.
1/
= "** ai^ l /2.2/
°l,k = °1+1 Dl+1 Dl+2 **• Dl+k /2.3/
tora S1 w sposób pokazany na rys. 2.1 dla k = 3.
Układ przeskoku przeniesień w sumatorze S2
Definicja 3 S u m a t o r S2 jest to równoległy sumator bi
narny zbudowany na bramkaoh NOR, złożony z sumatorów jednopozyoyj- nych, któryoh strukturę przedstawiają następująoe wzory boolowskie:
Układ przenie
sień sumat ora
Rys. 2.1. Układ przeniesień sumatora S1 z układem przeskoku C1.
Układ przeskoku przenie
sień
Układ przeskoku przenie
sień Układ przenie
sień sumatora
Rys, 2.2. Układ* przeniesień sumatora S2 z układem przeskoku C2.
- 32 -
dla nieparzystych pozycji sumatora
si “ Di°i + ai-1 Di-1 + Si-1 51-1 + albi + aibi + Di°i /2.h7 /2.5/
dla parzystych pozycji sumatora
72.6/
bi-1 + Di-1 °i-1 72.7/
gdzie
72.8/
Propagacja przeniesień w sumatorze rozpoczyna się, przy ustalo
nym stanie wejść sumatora, od momentu zmiany sygnału sterującego h ze stanu 1 w stan 0, a końozy się w momencie ustalenia się stanu wszystkich bramek układu przeniesień sumatora /wszystkioh bramek Dioi i D^c^/.
Definicja 4 U k ł a d p r z e s k o k u p r z e n i e s i e ń C2 obejmujący k pozyoji układu przeniesień sumatora S2 od pozyoji 1 + 1 do 1 + k jest to układ opisany funkcją boo- lowską przeskoku przeniesienia
gdzie 1 jest liozbą parzystą, a k liczbą nieparzystą /warunki na 1 i k wynikają z wzorów /2.5/ i /2.7//.
tora S2 w sposób pokazany na rys. 2.2 dla k *• 3.
Dla sumatora S2 bez przeniesień cyklicznych będziemy zawsze zakładać, że c^ = 0.
°l,k * D151 + albl + al+1 1+k bl+k 72.9/
Układ przeskoku C2 dołąozony jest do układu przeniesień suma-