PL106470B1 - Uklad cyfrowy do obliczania wartosci zlozonych wyrazen arytmetycznych - Google Patents
Uklad cyfrowy do obliczania wartosci zlozonych wyrazen arytmetycznych Download PDFInfo
- Publication number
- PL106470B1 PL106470B1 PL1977195731A PL19573177A PL106470B1 PL 106470 B1 PL106470 B1 PL 106470B1 PL 1977195731 A PL1977195731 A PL 1977195731A PL 19573177 A PL19573177 A PL 19573177A PL 106470 B1 PL106470 B1 PL 106470B1
- Authority
- PL
- Poland
- Prior art keywords
- components
- parallel
- registers
- processing unit
- multiplier
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/38—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
- G06F7/48—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
- G06F7/544—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices for evaluating functions by calculation
- G06F7/5443—Sum of products
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/38—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
- G06F7/48—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
- G06F7/544—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices for evaluating functions by calculation
- G06F7/552—Powers or roots, e.g. Pythagorean sums
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2207/00—Indexing scheme relating to methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F2207/552—Indexing scheme relating to groups G06F7/552 - G06F7/5525
- G06F2207/5523—Calculates a power, e.g. the square, of a number or a function, e.g. polynomials
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computational Mathematics (AREA)
- Mathematical Analysis (AREA)
- Pure & Applied Mathematics (AREA)
- Computing Systems (AREA)
- Mathematical Optimization (AREA)
- General Engineering & Computer Science (AREA)
- Complex Calculations (AREA)
- Advance Control (AREA)
Description
Przedmiotem wynalazku jest uklad cyfrowy do
obliczania wartosci zlozonych wyrazen arytmetycz¬
nych, na liczbach przedstawionych w zapisie bi¬
narnym, w szczególnosci do obliczania wartosci
n ki
wyrazen wielomianowych 21 jt xi;j, zwlaszcza
i=l j=l
dla liczb Xij o wielu bitach znaczacych i dla du¬
zych wartosci n. Uklad jest przeznaczony glównie
do zastosowania w duzych komputerach i syste¬
mach komputerowych, zwlaszcza w szybkich spe¬
cjalizowanych procesorach do obliczen numerycz¬
nych, oraz innych szybkich urzadzeniach cyfro¬
wych realizujacych operacje arytmetyczne. Uklad
moze byc stosowany do równoczesnego oblicza¬
nia kilku niezaleznych wyrazen arytmetycznych
oraz dostosowany jako oddzielny modul cyfrowy
do wielozadaniowej bezkolizyjnej wspólpracy z
kilkoma komputerami.
W znanych rozwiazaniach elektronicznych ma¬
szyn i urzadzen cyfrowych obliczanie wartosci zlo¬
zonych wyrazen arytmetycznych sprowadza sie
zwykle do wykonywania kolejnych dzialan aryt¬
metycznych, których wyniki stanowia z kolei ar
gumenty nastepnych dzialan wystepujacych w tych
wyrazeniach, az do uzyskania wyniku koncowego.
Znane sa elektroniczne uklady cyfrowe, do szyb¬
kiego wykonywania dzialan mnozenia i dodawa¬
nia. Dzialania te stanowia podstawowe operacje
przy obliczaniu wartosci wielu wyrazen arytme-
19
tycznych, a w szczególnosci wyrazen wielomiano-
* * n k.
wych 2 jt xir Szczególnie istotna jest ta szyb-
,-1,-1
• kosc wykonywania mnozenia jako dzialania znacz¬
nie bardziej czasochlonnego niz dodawanie.
Znane sa uklady cyfrowa o strukturze dostoso¬
wanej do potokowego przetwarzania /pipeline
processing/ informacji, zapewniajace bardzo duza
!• efektywna szybkosc przetwarzania informacji, a w
szczególnosci bardzo szybkie wykonywanie dlu¬
gich sekwencji mnozen i dodawan. W znanym
elektronicznym ukladzie cyfrowym do bardzo
szybkiego mnozenia dwóch liczb binarnych, sa do
siebie równolegle dodawane równoczesnie wszyst¬
kie, przyporzadkowane kolejnym grupom bitów
mnoznika, iloczyny czesciowe potrzebne do wy¬
znaczania iloczynu koncowego.
W ukladzie mnozenia liczb 48-bitowych, w któ¬
rym pojedyncze iloczyny czesciowe przyporzadko¬
wane sa parom kolejnych bitów mnoznika, do¬
dawane sa równoczesnie 24 takie iloczyny. Zespól
cyfrowy wykonujacy to dodawanie zlozony jest
z 22 sumatorów z zachowaniem przeniesien /carry-
-save adders/ i 1 sumatora z propagacja przenie¬
sien /carry prapagating adder/. Sumatory te sa
polaczone w wielowarstwowa kaskade zawieraja¬
ca w 7 warstwach kolejno 8, 5, 3, 2, 2, 1, 1 su¬
matorów z zachowaniem przeniesien i w ósmej
warstwie i sumator z propagacja przeniesien.
106 470106 470
Wszystkie te sumatory tworza zespól cyfrowy sta¬
nowiacy jedna laczna kombinacyjna siec przela¬
czajaca bez elementów pamietajacych. Czas wy¬
konania dodawania 24 iloczynów czesciowych
pagacji przeniesien przez 1 sumator okolo 90 po-
w takim zespole sumatorów jest suma maksymal¬
nego czasu propagacji sygnalów .przez 7 polaczo¬
nych w szeref sumatorów jednopozycyjnych i pro¬
pagacji przeniesien przez 1 sumatoT okolo 90 po¬
zycyjny. Ten ostatni sumator posiada rozbudowa¬
ne obwody przeskoków przeniesien /carry skips,
lub carry loofc-ahead/ dla zminimalizowania mak¬
symalnego czasu propagacji przeniesien.
Iloczyny czesciowe, dodawane w omówionym ze-
s^aMe suffiatóiT^^SIanowia wzajemnie przesunie¬
te wieToftfotnosciraloznej, przyporzadkowane pa-
rfcm bitów mnoznikaJreprezentujacym liczby calko-
» ^ZLJKJft™^SAJ1 do 3- Dla unikniecia czaso-
lonnego *wy2naoa5arjia 3-krotnej mnoznej, wyma-
Jcego dodatEbwego dodawania mnoznej i prze¬
sunietej mnoznej, omawiany uklad mnozenia zawie¬
ra siec przelaczajaca, przeksztalcajaca równolegle
mnoznik. Sygnaly wyjsciowe tej sieci przyporzad¬
kowane kolejnym grupom bitów mnoznika, repre¬
zentuja, zamiast liczb 0, 1, 2, 3 liczby —2, —1, 0,
1, 2. Dwukrotna mnozna otrzymuje sie w oma¬
wianym ukladzie mnozenia przez przesuniecie
mnoznej o jeden bit w lewo, a wielokrotnosci
ujemne — przez zanegowanie bitów wielokrotnosci
dodatnich i korekcyjna jedynke na najmniej zna¬
czacej pozycji binarnej.
Uklad mnozenia zawierajacy omówiony zestaw
sumatorów opisany zostal w pracach: C. S. Wallace
„A Suggestion for a Fast Multiplier", The Insti-
tute of Electrical and Electronics Engineers, Tran-
sactions on Electronics Computers, tom EC-13,
strony 14—17, luty 1964; T. G. Hallin, M. J. Flynn
„Pipelining of Arithmetic Functions", The Insti-
tute of Electrical and Electronics Engineers, Tran-
sactions on Electronic Computers, tom EC-21,
strony 880—-886, sierpien 1972; J. W. Gawrilow,
A. N. Puczko „Arifmeticzeskije ustrojstwa bystro-
diejstwujuszczich elektronnych cifrowych wyczisli-
tielnych maszin". Izdatielstwo: Sowietskoje radio,
Moskwa 1970, strony 133—180, a obwody przesko¬
ków przeniesien /carry look-ahead/ w pracy: O. L.
MacSorley „High Speed Arithmetic in Binary
Computers", Proceedings of The Institute of Radio
Engineers, tom 49, numer 1, 1961, strony 67—91.
W znanych ukladach cyfrowych o strukturze
dostosowanej do potokowego przetwarzania infor¬
macji, warstwy sieci przelaczajacych przetwarza¬
jace informacje sa, rozdzielone od siebie warstwa¬
mi rejestrów, dla zapewnienia w poszczególnych
warstwach sieci przelaczajacych stopniowego wy¬
konywania, w tym samym czasie, czesci róznych
operacji Przetwarzanie kolejnych informacji od¬
bywa sie w poszczególnych warstwach takich u-
kladów z jednakowa czestotliwoscia dostosowana
do maksymalnego opóznienia warstwy. Potokowe
przetwarzanie informacji opisane zostalo miedzy
Innymi w pracach: M. J. Flynn „Pipelining of
Arithmetic Functions", The Institute of Electrical
and Electronics Engineers, Transactions on Elec¬
tronic ., Computers, tom EC-21, strony 880—886,
sierpien 1972; T. C. Chen i inni „Introduction to
Computer Architecture" rozdzial 9, strona 417,
Wydanie: Science Research Associates, Chicago
USA 1975.
• Wada znanych ukladów cyfrowych, zwlaszcza
przeznaczonych do zlozonych obliczen na liczbach
o duzej dokladnosci, jest stosunkowo dlugi czas
wykonywania poszczególnych mnozen i dodawan.
Znaczna czesc tego czasu przypada na propagacje
przeniesien, co ma miejsce nawet w przypadku
bardzo szybkich sumatorów. Czas propagacji prze¬
niesien jako czas opóznienia wystepujacego przy
wielu dzialaniach wykonywanych w trakcie obli¬
czania zlozonych wyrazen arytmetycznych ma po¬
il wazny wplyw na czas trwania calego obliczania.
Celem niniejszego wynalazku jest usuniecie tej
wady i wyeliminowanie, w maksymalnym stopniu
wszelkich procesów przetwarzania informacji ma¬
jacych charakter procesów szeregowych, w tym
» procesów propagacji przeniesien konczacych dzia¬
lania dodawania i mnozenia.
Cel ten uzyskuje sie przez zastosowanie takiej
struktury logicznej ukladu cyfrowego, która za¬
pewnia potokowe przetwarzanie /pipeline proces-
sing/ informacji tylko w poczatkowej i srodkowej
fazie wykonywania poszczególnych dzialan mnoze¬
nia i dodawania, wchodzacych w sklad obliczanych
wyrazen arytmetycznych oraz przez wykorzysta¬
nie nie do konca obliczonych wyników tych dzialan,
39 jako operandów nastepnych dzialan mnozenia i
dodawania, wchodzacych w sklad tych obliczen.
Eliminuje sie dzieki temu w urzadzeniu czaso¬
chlonne procesy propagacji przeniesien, stanowia¬
ce zazwyczaj koncowa faze mnozenia i dodawa-
M nia.
Zgodnie z wynalazkiem uklad cyfrowy do obli¬
czania wartosci zlozonych wyrazen arytmetycznych
jest przeznaczony do obliczania wartosci wielo¬
mianów dowolnego stopnia jednej i wielu zmien-
* nych, szeregów funkcyjnych, iloczynów skalarnych
i do obliczen róznych innych wyrazen arytmetycz¬
nych, szczególnie obliczen na danych zwektory-
zowanych dla wektorów o duzej liczbie sklado¬
wych, gdzie operandy i wyniki obliczen sa licz¬
bami przedstawionymi w zapisie binarnym, zwykle
w zapisie binarnym uzupelnieniowym lub w po¬
staci znnk-modul, staloprzecinkowym lub zmien¬
noprzecinkowym. Uklad ten zawiera zestaw reje¬
strów równoleglych przeznaczony do pamietania
50 zarówno operandów wystepujacych w obliczanych
wyrazeniach jak i wyników posrednich otrzy¬
mywanych w trakcie obliczania calego wyraze¬
nia. Uklad zawiera równiez cyfrowy zespól prze¬
twarzania równoleglego wspomnianych operandów,
M polaczony równolegle ze wspomnianymi rejestra¬
mi
Struktura zespolu przetwarzania Jest dostoso¬
wana do równoleglego wytwarzania iloczynów
m czesciowych, korzystnie w postaci wzajemnie prze¬
sunietych wielokrotnosci mnoznej, stanowiacych
skladniki pelnego iloczynu dwóch czynników, z
których pierwszy czynnik jest umozna, a drugi
czynnik Jest mnoznikiem zlozonym z co najmniej
m dwóch skladników mnoznika. Wspomniane Iloczy-106 470
ny czesciowe sa tworzone bez wykonywania efek¬
tywnego dodawania skladników mnoznika.
Struktura zespolu przetwarzania jest dostosowa¬
na równiez do zredukowania liczby skladników
pelnego iloczynu i innych skladników dodawanych
do tego iloczynu do mniejszej liczby skladników
o takiej samej ich lacznej sumie. W sklad zesta¬
wu rejestrów równoleglych wchodza co najmniej
dwa równolegle pierwsze rejestry pamietajace
skladniki mnoznika oraz co najmniej dwa rów¬
nolegle drugie rejestry pamietajace zredukowane
skladniki wyniku posredniego przeznaczone albo
do dodania ip kolejnego iloczynu wystepujacego
w obliczanym wyrazeniu albo do dodania do in¬
nych skladników obliczonego wyrazenia. Niektóre
operandy wystepujace w obliczonym wyrazeniu
moga byc pamietane albo w rejestrach zestawu
rejestrów wchodzacych w sklad ukladu albo w
rejestrach lub pamieciach nalezacych do innych
ukladów cyfrowych.
W pierwszym przypadku zestaw rejestrów oma¬
wianego ukladu cyfrowego zawiera rejestry rów¬
nolegle pamietajace mnozna i skladniki dodawa¬
nia, w drugim ich nie zawiera. W obu przypad¬
kach zespól przetwarzania posiada niezalezne rów¬
nolegle wejscia dla wprowadzenia mnoznej, sklad¬
ników mnoznika i skladników przeznaczonych do
dodania do iloczynu lub do innych skladników
dodawania jak równiez posiada równolegle wyjs¬
cia do wyprowadzania zredukowanych skladni¬
ków wyjsciowych stanowiacych skladniki wyniku
posredniego lub koncowego.
Wyjscia zespolu przetwarzania sa polaczone rów¬
nolegle z wejsciami wspomnianych równoleglych
pierwszych rejestrów, a wyjscia tych rejestrów sa
polaczone równolegle z wejsciami przeznaczonymi
do wyprowadzenia skladników mnoznika do
wspomnianego zespolu przetwarzania, w celu u-
tworzenia razem co najmniej dwóch równoleglych
petli, przez które zredukowane skladniki otrzy¬
mywane na wyjsciach zespolu przetwarzania sa
wyprowadzane równoczesnie i równolegle, jako
skladniki posredniego wyniku znów na wejscia
zespolu przetwarzania.
Wyjscia zespolu przetwarzania sa polaczone rów¬
nolegle równiez z wejsciami wspomnianych rów¬
noleglych drugich rejestrów, a wyjscia tych re¬
jestrów sa polaczone równolegle z wejsciami ze¬
spolu przetwarzania, przeznaczonymi do wypro¬
wadzania skladników dla dodawania, w celu u-
tworzenia razem co najmniej dwóch innych rów¬
noleglych petli, przez które zredukowane skladni¬
ki otrzymywane na wyjsciach zespolu przetwarza¬
nia sa wyprowadzane równoczesnie i równolegle
jako skladniki posredniego wyniku znów na wejs¬
cia zespolu przetwarzania. Pod pojeciem objetego
niniejszym zgloszeniem ukladu rozumie sie nie
oddzielna jednostke konstrukcyjna, ale zestaw
wspólpracujacych ze soba elementów logicznych,
które moga obejmowac jeden lub wiecej modulów
konstrukcyjnych albo stanowic czesc jednego mo¬
dulu konstrukcyjnego.
Dla zwiekszenia efektywnosci dzialania ukladu
cyfrowego wedlug wynalazku, zespól przetwarza¬
nia ma strukture waTstwowa i zawiera warstwy
sieci przelaczajacych rozdzielone warstwami reje¬
strów równoleglych dla umozliwienia w kolejnych
warstwach sieci przelaczajacych stopniowego poto¬
kowego przetwarzania liczb wprowadzonych do ze-
spolu przetwarzania. Jedna warstwa sieci prze¬
laczajacych dostosowana jest do równoleglego
przetwarzania mnoznej i skladników mnoznika w
iloczyny czesciowe stanowiace skladniki pelnego
iloczynu, a pozostale warstwy sieci przelaczajacych
dostosowane sa do stopniowego redukowania licz¬
by tych skladników do mniejszej liczby skladni¬
ków o takiej samej ich lacznej sumie.
Wspomniane redukujace warstwy sieci przela¬
czajacych ilozone sa z koderów posiadajacych po
p jednobitowych wejsc i po r jednobitowych wyjsc,
takich, ze kombinacja sygnalów zero-jedynkowych
na r wyjsciach kodera przedstawia binarnie zako¬
dowana sume Jednak reprezentowanych przez syg¬
naly zero-jedynkowe na p wejsciach kodera, gdzie
n 3
ca zespolu przetwarzania jest zlozona z 1 do 4
warstw takich koderów, nie polaczonych miedzy
soba w ramach jednej warstwy koderów.
Pojedynczy szereg koderów nie polaczonych
M miedzy soba, gdzie kazdy z koderów posiada p
wejsc i r wyjsc, redukuje równolegle p sklad¬
ników do r skladnlkdw przedstawionych w zapi¬
sie binarnym, z zachowaniem ich lacznej sumy.
Korzystne jest stosowanie w redukujacych war*
u stwaeh koderów o 3 wejsciach i 2 wyjseiach, czyli
sumatorów jednopozycyjnych. Szereg takich nie
polaczonych ze soba sumatrów jednopozycyjnych,
redukuje trzy sklastoiki do dwóch o tej samej
sumie.
x Uklad cyfrowy pracuje synchronicznie z usta¬
lona czestotliwoscia, dostosowana do struktury lo-
gieznej zespolu przetwarzania i szybkosci dziala¬
nia jego skladowych elementów logicznych. Cze¬
stotliwosc ta zalezy od maksymalnego lacznego o-
40 póznienia wprowadzanego przez jedna warstwe za¬
wierajaca sieci przelaczajace i jedna warstwe re¬
jestrów zespolu przetwarzania/ Z czestotliwoscia
ta wprowadzane sa, równoczesnie da wszystkichc
warstw rejestrów zespolu przetwarzania, redfcko~
45 wane skladniki z poprzedzajacych je warstw sie¬
ci przelaczajacych tego zespolu. W kolejnych war¬
stwach zespolu przetwarzania zawierajacych sie¬
ci przelaczajace wystepuje zatem potokowe prze¬
twarzanie informacji.
W szczególnosci zespól przetwarzania ma struk¬
ture logiczna dostosowana do redukowania licz¬
by skladników do dwóch z zachowaniem ich lacz¬
nej sumy, a jego warstwa sieci przelaczajacych,
sluzaca do wytwarzania iloczynów czesciowych, do¬
stosowana jest do równoleglego wytworzenia rów¬
noczesnie wszystkich Uoczynów czesciowych po¬
trzebnych do wyznaczania pelnego iloczynu jednej
licaby precz sume dwóch liczty a dokladniej pel¬
nego iloczynu mnoznej przez dwa skladniki mnoi-
Wspomniane iloczyny czesciowe stanowia albo
wzajemnie przesuniete wielokrotnosci mnoznej q
krotnosciach wyrazonych liczbami calkowitymi
—1, 0, +1, z których kazda wielokrotnosc mnez-
^ nej przyporzadkowana jest jednej parze glowia¬
sci
55106 470
dajacych sofcie bitów wzietych z obu skladników
mnoznika, albo wzajemnie przesuniete wielokrot¬
nosci mnoznej o krotnosciach —2, —1, 0, +1, +2,
z których kfczda wielokrotnosc mnoznej przypo¬
rzadkowana jest jednej parze odpowiadajacych
sobie grup dwuibitowych wzietych z obu skladni¬
ków mnoznika. Korzystne przy tym jest stosowa¬
nie rozwiazania zapewniajacego wyznaczenie wlas¬
ciwej krotnosci mnoznej dla kazdego iloczynu
czesciowego, przyporzadkowanego pojedynczej pa¬
rze bitów z obu skladników mnoznika, na podsta¬
wie tej pary bitów i ewentualnie bitów znakowych
obu skladników mnoznika, oraz przyporzadkowa¬
nego pojedynczej parze grup dwubitowych z obu
skladników mnoznika, na podstawie pary grup
pieciobitowych i ewentualnie bitów znakowych otou
skladników mnoznika.
W przypadku zapisu binarnego uzupelniajacego
bity znakowe sa konieczne tylko do wyznaczenia
iloczynu czesciowego przyporzadkowanego pozycji
znakowej mnoznika lub przyporzadkowanego gru¬
pie pozycji zawierajacych pozycje znakowa. Wie¬
lokrotnosci mnoznejj odpowiadajace liczbom —2,
—1, 0, +1, +2, uzyskuje sie na podstawie poje¬
dynczej mnoznej w ten sposób, ze dwukrotna
mnozna uzyskuje sie przez przesuniecie mnoznej
o jedna pozycje binarna w lewo, a ujemne wie¬
lokrotnosci mnoznej uzyskuje sie przez zanego¬
wanie bitów wielokrotnosci dodatnich z uwzgled¬
nieniem korekcyjnej jedynki na najmniej znacza¬
cej pozycji binarnej.
Korzystne jest, jesli w ukladzie cyfrowym we¬
dlug wynalazku, petle utworzone przez zespól prze¬
twarzania i dwa równolegle drugie rejestry obej¬
muja jedna, a mianowicie ostatnia warstwe sieci
przelaczajacych zespolu przetwarzania. Wyniki po¬
srednie, w postaci par zredukowanych skladni¬
ków, redukowane sa wówczas ponownie wraz z
innymi skladnikami, w ostatniej warstwie zespolu
przetwarzania, do dwóch skladników o takiej sa¬
mej lacznej sumie. Objecie petlaimi tylko jednej
warstwy sieci przelaczajacych zespolu przetwarza¬
nia umozliwia obliczanie wartosci wielomianów
n ¦¦ Jq
2 n xu dla duzych wartosci n, z taka szyb-
i-lj-1
koscia, ze sredni czas jednego mnozenia jest nie¬
wiele wiekszy od jednego cyklu potokowego prze¬
twarzania w jednej warstwie zespolu przetwarza¬
nia, a wystepujace w wielomianie dodawania w
wiekszosci przypadków w ogóle nie wplywaja na
laczny czas obliczania.
Ukladem wedlug wynalazku jest równiez inny
uklad cyfrowy do obliczania wartosci zlozonych
wyrazen arytmetycznych przeznaczony do oblicza¬
nia wartosci wielomianów dowolnego stopnia jed¬
nej i wielu zmiennych, szeregów funkcyjnych, ilo¬
czynów skalarnych i do obliczen róznych innych
wyrazen arytmetycznych, szczególnie obliczen na
danych zwektoryzowanych dla wektorów o duzej
liczbie skladowych, gdziel operandy i wyniki obli¬
czen sa liczbami przedstawionymi w zapisie binar¬
nym, zwykle w zapisie binarnym uzupelnienio¬
wym lub w postaci znak-modul, staloprzeeinko-
wym lub zmieimopi&ecinkowym.
Uklad ten zawiera zastaw rejestrów równoleg¬
lych przeznaczonych do pamietania zarówno ope-
randów wystepujacych w obliczanych wyrazeniach
jak i wyników posrednich otrzymywanych w trak-
cie obliczania calego wyrazenia. Uklad zawiera
równiez cyfrowy zespól przetwarzania równolegle¬
go wspomnianych operandów polaczony równolegle
ze wspomnianymi rejestrami oraz sumator rów¬
nolegly dolaczony równolegle do wyjsc zespolu
przetwarzania lub rejestrów. Struktura zespolu
przetwarzania jest dostosowana do równoleglego
wytwarzania iloczynów czesciowych, korzystnie w
postaci wzajemnie przesunietych wielokrotnosci
mnoznej, stanowiacych skladniki pelnego iloczynu
dwóch czynników, z których pierwszy czynnik jest
mnozna, a drugi czynnik jest mnoznikiem zlozo¬
nym z co najmniej dwóch skladników mnoznika.
Wspomniane iloczyny czesciowe sa tworzone bez
wykonywania efektywnego dodawania skladników
mnoznika.
Struktura zespolu przetwarzania jest dostoso¬
wana równiez do zredukowania liczby skladni¬
ków polnego iloczynu i innych skladników doda¬
wanych do tego iloczynu do mniejszej liczby
skladników o takiej samej ich lacznej sumie. W
sklad zestawu rejestrów równoleglych wchodza co
najmniej dwa równolegle pierwsze rejestry pa¬
mietajace skladniki mnoznika, co najmniej dwa
równolegle drugie rejestry pamietajace zreduko¬
wane skladniki wyniku posredniego przeznaczone
albo do dodania do kolejnego iloczynu wystepu¬
jacego w obliczanym wyrazeniu, albo do dodania
do innych skladników obliczanego wyrazenia, rów¬
nolegly rejestr mnoznej i/lub równolegle trzecie
rejestry pamietajace skladniki dodawania.
Zespól przetwarzania posiada niezaleznie rów¬
nolegle wejscia dla wyprowadzania mnoznej z re¬
jestru mnoznej, skladników mnoznika z ich pier¬
wszych rejestrów i skladników przeznaczonych do
dodania do iloczynu lub do innych skladników z
40 trzecich rejestrów pamietajacych skladniki do¬
dawania i z drugiej rejestrów pamietajacych zre¬
dukowane skladniki dodawania, jak równiez po¬
siada równolegle wyjscia do wyprowadzania zre¬
dukowanych skladników wyjsciowych stanowia-
45 cych skladniki wyniku posredniego lub koncowego.
Wyjscia zespolu przetwarzania sa polaczone rów¬
nolegle z wejsciami wspomnianych równoleglych
pierwszych rejestrów, a wyjsoia tych rejestrów
sa polaczone równolegle z wejsciami przeznaczo-
50 nymi do wprowadzania skladników mnoznika do
wspomnianego zespolu przetwarzania, w celu u-
tworzenia razem co najmniej dwóch równoleglych
petli, przez które zredukowane skladniki otrzy¬
mywane na wyjsciach zespolu przetwarzania sa
55 wyprowadzane równoczesnie i równolegle, jako
skladniki posredniego wyniku znów na wejscia
zespolu przetwarzania.
Wyjscia zespolu przetwarzania sa polaczone rów¬
nolegle równiez z wejsciami wspomnianych rów-
noleglych drugich rejestrów, a wyjscia tych re¬
jestrów sa polaczone równolegle z wejsciami ze¬
spolu, przetwarzania, przeznaczonymi do wypro¬
wadzenia skladników dla dodawania, w celu utwo-
m rzenia razem co najmniej dwóch innych równo-
55106 470
I 10
leglych petli, przez które zredukowane skladniki
otrzymywane na wyjsciach zespolu przetwarza¬
nia sa wyprowadzane równoczesnie i równolegle
jako skladniki posredniego wyniku znów na wejs¬
cia zespolu przetwarzania. Pod pojeciem objetego
niniejszym zgloszeniem ukladu rozumie sie nie od¬
dzielna jednostke konstrukcyjna, ale zestaw wspól¬
pracujacych ze sdba elementów logicznych, które
moga obejmowac jeden lub wiecej modulów kon¬
strukcyjnych albo stanowic czesc jednego modulu
konstrukcyjnego.
Dla zwiekszenia efektywnosci dzialania ukladu
cyfrowego wedlug wynalazku omówionego ostatnio,
zespól przetwarzania ma strukture warstwowa i
zawiera warstwy sieci przelaczajacych rozdzielone
warstwami rejestrów równoleglych dla umozli¬
wienia w kolejnych warstwach sieci przelaczaja¬
cych stopniowego potokowego przetwarzania liczb
wprowadzanych do zespolu przetwarzania. Jedna
warstwa sieci przelaczajacych dostosowana jest
do równoleglego przetwarzania mnoznej i sklad¬
ników mnoznika w iloczyny czesciowe stanowiace
skladniki pelnego iloczynu, a pozostale warstwy
sieci przelaczajacych dostosowane sa do stopnio¬
wego redukowania liczby tych skladników do
mniejszej liczby skladników o takiej samej ich
lacznej sumie.
Wspomniane redukujace warstwy sieci przela¬
czajacych zlozone sa z koderów posiadajacych po
p jednobitowych wejsc i po r jednobitowych wyjsc,
takich, ze kombinacje sygnalów zero-jedynkowych
na r wyjsciach kodera przedstawia binarnie zako¬
dowana sume jedynek reprezentowanych przez
sygnaly zero-jedynkowe na p wejsciach kodera,
gdzie 3
redukujaca zespolu przetwarzania jest zlozona z
1 do 4 warstw takich koderów, nie polaczonych
miedzy soba w ramach jednej waTstwy koderów.
Pojedynczy szereg koderów nie polaczonych mie¬
dzy soba, gdzie kazdy z koderów posiada p wejsc
i r wyjsc, redukuje równolegle p skladników do
r skladników przedstawionych w zapisie binar¬
nym, z zachowaniem ich lacznej sumy. Korzyst¬
ne jest stosowanie w redukujacych warstwach
koderów o 3 wejsciach i 2 wyjsciach, czyli suma¬
torów jednopozycyjnych. Szereg takich nie pola¬
czonych ze soba sumatorów jednopozycyjnych, re¬
dukuje trzy skladniki do dwóch o tej samej su¬
mie.
Równolegly szybki sumator wielopozycyjny wcho¬
dzacy w sklad omawianego ukladu cyfrowego,
przeznaczony do dodawania zredukowanych w ze¬
spole przetwarzania skladników, dolaczony jest
albo do wyjsc zespolu przetwarzania, albo do
wyjsc drugich rejestrów pamietajacych zreduko¬
wane skladniki dodawania. Korzystne jest przy
tym zastosowanie sumatora posiadajacego struk¬
ture warstwowa, o warstwach zawierajacych sieci
przelaczajace rozdzielonych warstwami rejestrów,
dostosowana do potokowego wykonywania kolej¬
nych dodawan, zsynchronizowanego z potokowym
przetwarzaniem liczb w zespole przetwarzania.
Uklad cyfrowy pracuje synchronicznie z ustalona
czestotliwoscia, dostosowana do struktury logicz¬
nej zespolu przetwarzania i szybkosci dzialania
jego skladowych elementów logicznych.
Czestotliwosc ta zalezy od maksymalnego lacz¬
nego opóznienia wprowadzanego przez jedna war¬
stwe zawierajaca sieci przelaczajace i jedna war¬
stwe rejestrów zespolu przetwarzania. Z czestotli¬
woscia ta wprowadzane sa, równoczesnie do wszy¬
stkich warstw rejestrów zespolu przetwarzania,
redukowane skladniki z poprzedzajacych je warstw
sieci przelaczajacych tego zespolu. W kolejnych
warstwach zespolu przetwarzania zawierajacych
sieci przelaczajace wystepuje zatem potokowe
przetwarzanie informacji.
W szczególnosci korzystne jest, gdy wyjscie rów¬
noleglego szybkiego sumatora wielopozycyjnego,
dostosowanego do potokowego przetwarzania liczb,
polaczone jest przez rejestr mnoznej z zespolem
przetwarzania, w celu utworzenia petli przez któ¬
ra suma otrzymanych na wyjsciach zespolu prze¬
twarzania zredukowanych skladników wyniku po¬
sredniego jest ponownie wprowadzana na wejscia
zespolu przetwarzania jako mnozna.
Zgodnie z wynalazkiem wchodzace w sklad ze¬
stawu rejestrów równolegle trzecie rejestry two¬
rza w szczególnosci 2 do 6 par rejestrów, które
sluza do pamietania wprowadzanych z zespolu
przetwarzania 2 do 6 róznych wyników posrednich,
kazdy wynik posredni w postaci pary skladników
dodawania. Z rejestrów tych pary skladników
wprowadzane sa ponownie do zespolu przetwarza¬
nia lub do pary równoleglych pierwszych reje¬
strów pamietajacych skladniki mnoznika.
Wprowadzanie tych skladników do równoleglych
pierwszych rejestrów pamietajacych skladniki
mnoznika odbywa sie przy tym albo bezposrednio
albo poprzez jedna lub wiecej warstw zespolu
przetwarzajacego, w którym skladniki te sa redu¬
kowane wraz z innymi skladnikami z zachowa¬
niem icji lacznej sumy. Zapamietanie równoczes¬
nie kilku wyników posrednich w postaci par zre¬
dukowanych skladników i wprowadzanie ich po¬
nownie do zespolu przetwarzania i/lub do reje¬
strów pamietajacych skladniki mnoznika umozli¬
wia obliczanie róznych wyrazen wielomianowych
z róznym rozkladem nawiasów.
Ukladem cyfrowym wedlug wynalazku jest tak¬
ze uklad, w którym wszystkie petle, utworzone
przez zespól przetwarzania i rejestry z zestawu
rejestrów, obejmuja jednakowa liczbe k lacznie
warstw rejestrów równoleglych i pojedynczych re¬
jestrów równoleglych, przez które kolejno przesy¬
lane sa potokowo przetwarzane liczby, dla umoz¬
liwienia równoczesnego, niezaleznego obliczania k
wyrazen arytmetycznych.
Czas obiegu informacji w petlach, utworzonych
przez zespól przetwarzania i rejestry zestawu re¬
jestrów, jest k krotnie dluzszy od czasu potoko¬
wego przetwarzania, przypadajacego na jedna
warstwe zawierajaca sieci przelaczajace w zespole
przetwarzania. O wyborze liczby k decyduje glów¬
nie liczba warstw sieci przelaczajacych zespolu
przetwarzania. W przypadku, gdy przetwarzanie
liczb odbywa sie wylacznie w zespole przetwarza¬
nia, korzystnie jest przyjac Jako liczbe- k liczbe
ii
u
31
40
45
*
5511
106 470
12
warstw zawierajacych sieci przelaczajace w tym
zespole.
Obliczane w ukladzie cyfrowym wyrazenia aryt¬
metyczne moga wchodzic zaTÓwno w sklad jedne¬
go zagadnienia rozwiazywanego w ramach jednego
programu, jak równiez nalezec do wielu róznych
zadan rozwiazywanych bezkolizyjnie, na przyklad
w czasie wspólpracy omawianego ukladu cyfro¬
wego z k róznymi komputerami wykonujacymi od¬
dzielne programy. Jednym z celów ostatniego z
wymienionych zastosowan ukladu cyfrowego jest
zmniejszenie szybkosci obliczania kazdego z k wy¬
razen arytmetycznych, co pozwala zlagodzic wy¬
magania na szybkosc pamieci wspólpracujacych z
omawianym ukladem cyfrowym.
W omawianym ukladzie cyfrowym wedlug wy¬
nalazku równolegly sumator dostosowany do po¬
tokowego wykonywania kolejnych dodawan, two¬
rzy w szczególnosci wraz z zespolem przetwarza¬
nia i rejestrami zestawu rejestrów dodatkowa pet¬
la, obejmujaca 2k lacznie warstw rejestrów rów¬
noleglych i pojedynczych rejestrów równoleglych,
przez które kolejno przesylane sa potokowo prze¬
twarzane informacje. Czas obiegu informacji w tej
dodatkowej petli jest dwukrotnie dluzszy niz w
innych petlach omawianego ukladu cyfrowego.
Korzystne jest gdy petla ta obejmuje rejestr
mnoznej. Pozwala to na wykonanie mnozen, w
których oboma czynnikami sa sumy dwóch i wie¬
cej skladników, a przy duzej liczbie rejestrów pa¬
mietajacych zredukowane skladniki, zapewnia to
mozliwosc obliczania wartosci wyrazen praktycz¬
nie z dowolnie rozmieszczonymi nawiasami.
Dzialanie ukladu cyfrowego wedlug wynalazku,
w kiótym zespól przetwarzania zawierajacy war¬
stwy sieci przelaczajacych rozdzielone warstwami
rejestrów redukuje do dwóch laczna liczbe sklad¬
ników, oraz w którym ckwa zredukowane sklad¬
niki wyniku koncowego dodawane sa w sumato¬
rze dolaczonym do wyjsc zespolu przetwarzania,
opisano ponizej.
Uklad cyfrowy pracuje synchronicznie z ustalo¬
na czestotliwoscia, przetwarzajac liczby potokowo
^pipelkie processing/ w kolejnych warstwach sie¬
ci przelaczajacych zespolu przetwarzania. Syn¬
chronicznie z ta czestotliwoscia, w kolejnosci za¬
leznej od postaci obliczanego wyrazenia arytme¬
tycznego, wprowadzane sa na okreslone wejscia
ukladu cyfrowego operandy tego wyrazenia, a
mianowicie czynniki iloczynów i skladniki sum.
Obliczenie iloczynu dwóch czynników wymaga
równoczesnego równoleglego wprowadzenia mnoz¬
nej i mnoznika na wejscia tej warstwy sieci
przelaczajacych zespolu przetwarzania, w której
przygotowywane sa w sposób równolegly iloczy¬
ny czesciowe, stanowiace skladniki iloczynu. Mnoz¬
na wprowadzana jest do zespolu przetwarzania
przez rejestr mnoznej, a mnoznik poprzez jeden z
pierwszych rejestrów pamietajacych skladniki
mnoznika.
We wspomnianej warstwie zespolu przetwarza¬
nia nastepuje zamiana mnozenia na sumowanie
wielu skladników — iloczynów czesciowych obli¬
czanego iloczynu. Synchroniczne wprowadzanie do
zespolu przetwarzania ewentualnych dodatkowych
skladników, które nalezy dodac do tego iloczynu,
zwieksza tylko laczna liczbe skladników dodawa¬
nia. W kolejnych warstwach zespolu przetwa¬
rzania nastepuje stopniowa redukcja liczby sklad-
ników z zachowaniem ich sumy.
Zredukowane w zespole przetwarzania do dwóch
skladniki obliczanego iloczynu wprowadzane sa
nastepnie albo do drugich rejestrów pamietaja¬
cych zredukowane skladniki,, jesli maja byc do¬
lo dane do innych skladników obliczanego wyraze¬
nia, albo do pierwszych rejestrów pamietajacych
skladniki mnoznika, jesli ich suma ma byc po¬
mnozona przez kolejny czynnik. W ostatnim przy¬
padku, ten kolejny czynnik mnozenia wprowadza¬
li ny jest do zespolu przetwarzania jako mnozna
równoczesnie z pamietanymi we wspomnianych
pierwszych rejestrach skladnikami mnoznika.
W wyniku dzialania zespolu przetwarzania otrzy¬
muja sie na jego wyjsciach dwa zredukowane
w skladniki kolejnego wyniku posredniego, które
wprowadzane sa znowu albo do drugich rejestrów
pamietajacych zredukowane skladniki, albo do
pierwszych rejestrów pamietajacych skladniki
mnoznika, zaleznie od tego czy ich suma stanowi
skladnik obliczanego wyrazenia arytmetycznego,
czy ma byc pomnozona przez dalsze czynniki. W
przypadku, gdy obliczany wynik posredni ma byc
dodany do wczesniejszej zawartosci drugich reje¬
strów pamietajacych zredukowane skladniki, wpro-
wadza sie zawartosc tych rejestrów do zespolu
przetwarzania w trakcie redukowania w nim sklad¬
ników tego wyniku posredniego.
Wartosc calego obliczonego wyrazenia arytme¬
tycznego otrzymuje sie równiez w postaci dwóch
skladników na wyjsciach zespolu przetwarzania.
Po zsumowaniu tych skladników w sumatorze,
otrzymuje sie na jego wyjsciu koncowy wynik
obliczenia. Opisany sposób obliczania wartosci
wielomianu, lub wyrazenia wielomianowego z na-
40 wiasami, wymaga wykonania tylko jednego efek¬
tywnego dodawania z propagacja" przeniesien.
Podstawowa zaleta ukladu cyfrowego do obli¬
czania wartosci zlozonych wyrazen arytmetycz¬
nych, stanowiacego przedmiot wynalazku, jest jego
45 bardzo duza szybkosc dzialania, uzyskana przez
zastosowanie potokowego przetwarzania liczb tyl¬
ko w poczatkowej i srodkowej fazie wykonywa¬
nia mnozen i dodawan, wchodzacych w sklad
obliczanych wyrazen arytmetycznych, oraz przez
50 wykorzystanie nie do konca obliczonych wyni¬
ków tych dzialan, w postaci kilku skladników,
najczesciej dwóch skladników, jako óperandów
nastepnych dzialan. Dzieki temu w ukladzie cy¬
frowym wyeliminowano czasochlonne procesy pro-
55 pagacji przeniesien stanowiace zazwyczaj konco¬
wa faze dzialan mnozenia i dodawania.
Obliczanie zlozonych wyrazen arytmetycznych
odbywa sie zatem albo w ogóle bez propagacji
przeniesien wzdluz przetwarzania liczb, jesli kon-
69 cowy wynik obliczenia moze byc przedstawiony w
formie dwóch skladników dodawania, albo wyma¬
ga tylko jednokrotnego procesu propagacji prze¬
niesien w trakcie wykonania koncowego dodawa¬
nia dwóch skladników, gdy wymagany jest wynik
65 w postaci jednej liczby w okreslonym jednoznacz-13
106 470
14
nie zapisie binarnym, na przyklad w zapisie bi¬
narnym uzupelnieniowym lub w postaci znak-
-modul.
Wynalazek zastanie blizej wyjasniony w dwóch
przykladach wykonania, pokazanych na rysunku,
na fig. 1 przedstawia uklad cyfrowy w schemacie
blokowym opisany w I przykladzie, a fig. 2 —
uklad cyfrowy w schemacie blokowym opisany
w II przykladzie wykonania.
Pirzyklad I. Uklad cyfrowy przedstawiony
na fig. 1 zawiera zespól przetwarzania P, dwa
rejestry równolegle A, B pamietajace skladniki
mnoznika, rejestr równolegly mnoznej C, dwa re¬
jestry równolegle D, E pamietajace skladniki do¬
dawania, dwa rejestry równolegle F, H pamieta¬
jace skladniki zredukowane w zespole P, oTaz
sumator równolegly S»
Zespól przetwarzania P posiada piec warstw 1,
3, 5, 7, 9 zawierajacych sieci przelaczajace, roz¬
dzielonych czterema warstwami 2fat;l-6f 8 zawiera¬
jacymi Tejestry równolegle. Sumator S jest dwu¬
skladnikowym sumatorem równoleglym o struktu¬
rze warstwowej, posiadajacym trzy warstwy H M,
zawierajace sieci przelaczajace, rozdzielone od
siebie dwiema warstwami 12/* 14 zawierajacymi
rejestry równolegle. Wszystkie rejestry ukladu cy¬
frowego, a wiec zarówno rejestry A, B, C, D, B,
F, H jak i rejestry 'tworzace warstwy 2, 4, i, 3,
12, 14 sa podwójnymi rejestrami /typu master-slave
registers/ dostosowanymi do potokowego przetwa¬
rzania liczb.
Dostarczone z zewnatrz ukladu cyfrowego syg¬
naly sterujace powoduja zapamietanie w tych re¬
jestrach zero-jedynkowych sygnalów podanych na
ich wejscia. Do zespolu P wprowadzane sa ope-
randy z zewnatrz urzadzenia przez rejestry A, B,
C, D, E. Rejestry A, B tworza wraz z zespolem
P petle, przez które otrzymywane na wyjsciach
warstwy 7 zespolu P wyniki posrednie, w postaci
par zredukowanych skladników, wprowadzane sa
jako pary skladników mnoznika, ponownie do ze¬
spolu P na wejscia warstwy 1. Rejestry F, H
tworza równiez z zespolem P petle.
Otrzymywane na wyjsciach warstwy 9 zespolu P
wyniki posrednie wprowadzane sa przez te re¬
jestry ponownie na wejscia warstwy 9* jako pary
skladników dodawanych do nastepnych reduko¬
wanych w zespole P skladników. Do wyjsc re¬
jestrów F, H dolaczony jest równiez sumator S,
W którym dodawane sa, wprowadzane do niego,
z zespolu P, przez te rejestry, dwa skladniki wy¬
niku koncowego. Wyjscie sumatora S jest rów¬
noleglym wyjsciem zewnetrznym ukladu cyfrowe¬
go. Kazde z wejsc i wyjsc wymienionych reje¬
strów i zespolów cyfrowych ukladu dostosowane
jest do równoleglego wprowadzania lub wypro¬
wadzania wszystkich bitów jednej liczby binar¬
nej.
Uklad cyfrowy dostosowany jest do obliczen na
liczbach 32-bitowych. W kolejnych warstwach 1,
S, 5, 7, 9 zespolu przetwarzania P, zawierajacych
sieci przelaczajace, nastepuje potokowe przetwa¬
rzanie /pipeline processing/ liczb, a mianowicie:
przygotowanie iloczynów czesciowych w warstwie
1, oraz stopniowa redukcja skladników dodawa¬
nia w warstwach 3, 5, 7; 9. Warstwa 1 zespolu
P zlozona jest z prostych sieci przelaczajacych,
ne wyjsciach których otrzymuje sie równolegle
równoczesnie wszystkie bity 17 iloczynów czescio-
wych stanowiacych skladniki iloczynu 32-bitowej
mnoznej i sumy dwóch 32-bitowych skladników
mnoznika. Poszczególne iloczyny czesciowo przy¬
porzadkowane sa parom pozycji binarnych mnoz¬
nika i stanowia wzajemnie przesuniete wielokrot¬
nosci mnoznej, o krotnosciach —2, —1, 0, +1, +X.
Kazda z warstw 3, 5, 7, 9 sklada sie z dwóch
warstw, nie polaczonych beaposrednio ze soba w
ramach pojedynczej warstwy, niezaleznie dziala¬
jacych jedmopozycyjnych sumatorów, posiadaja¬
cych po 3 wejscia i 2 wyjscia jednobitowe. Suma¬
tory te uporzadkowane sa w szeregi, z których
kazdy szereg redukuje 3 skladniki do 2 skladni¬
ków o takiej samej sumie.
W szczególnosci warstwa 3 sklada sie z dwóch
warstw sumatorów jednopozycyjnych zawieraja¬
cych odpowiednio 6 i 4 szeregi sumator6w, war¬
stwa 5 sklada sie z 3 i 2 szeregów takich suma¬
torów, a kazda z warstw 7 i 9 sklada sie z dwóch
pojedynczych szeregów sumatorów jednopozycyj¬
nych. Warstwa 3 redukuje 17 iloczynów czescio¬
wych plus 2 skladniki dodawania do 9 skladników
0 takiej samej sumie, .warstwa 5 redukuje liczbe
skladników z 9 do 4, a kazda z warstw 7 i 9 re¬
dukuje liczbe skladników z 4 dp 2. Warstwy 1,
3, 5, 7, 9 rozdzielone sa od siebie warstwami 2,
4, 6, 8 zawierajacymi kolejno .17, 9, 4, 2 rejestry
równolegle pamietajace 17 iloczynów czesciowych
oraz 9, 4 i 2 redukowane skladniki.
Dzialanie ukladu cyfrowego pokazanego na fig.
1 przedstawione zostanie na przykladzie oblicza-
100
nia wyrazenia arytmetycznego 2 [(x,-yiZi+Wi)vi+
« +Uiti+Pi+qi+rj+Si] wymagajacego wykonania
400 mnozen i 699 dodawan. Na czas obliczania
wartosci tego wyrazenia, sklada sie czas przejs¬
cia sygnalów informacji binarnych 400-krotnie
przez jedna warstwe sieci przelaczajacych i jedna
45 warstwe rejestrów oraz czas jednokrotnego przejs¬
cia sygnalów informacji przez wszystkie warstwy
zespolu przetwarzania P i sumatora 5. Jesli za
jednostke czasu przyjmie sie je4en okres T poto¬
kowego przetwarzania informacji w jednej war-
50 stwie, równy w omawianym ukladzie cyfrowym
maksymalnemu czasowi przejscia informacji bi¬
narnych przez dwa polaczone szeregowo sumato¬
ry jednopozycyjne i jeden rejestr równolegly /ty¬
pu master-slave register/, to czas obliczania war-
55 tosci podanego wyzej wyrazenia wyniesie 400 T+
+ 5 T+3 T= 403 T.
Przebieg obliczenia jest nastepujacy. Na wejs¬
cia warstwy 1 zespolu P wprowadza sie przez re¬
jestry A, C w czterech kolejnych okresach T ozna-
so czonych przez Tlf T«, T,, T4 pary czynników xu
y*;«xt, y* x* y,; x4, y4. Otrzymywane kolejno w
wyniku dzialania zespolu P na wyjsciach jego
warstwy 7 skladniki iloczynów X{yit xtyf, X|yt,
XaYa wprowadzane sa ponownie, w okresach T5,
•s Tf, T>, T«, jako skladniki mnoznika, przez rejestry
21
3015
106 470
16
A, B do zespolu P na wejscia warstwy 1. Równo¬
czesnie z niimi wprowadzane sa kolejno, przez re¬
jestr C, liczby zt, z* z«, z* jako mnozne, a o je¬
den okres T pózniej, kolejno, przez rejestr D, na
wejscia warstwy 3 zespolu P, liczby Wi, wf, w8,
w4 jako skladniki dodawania.
W wyniku dzialania zespolu P otrzymuje sie na
wyjsciach jego warstwy 7 kolejno pary skladni¬
ków wyników iposrednich xiyizi+'Wit Xiyfzi+Wf,
SsyaZi+ws, X4y4Z4+W4. Te pary skladników wpro¬
wadza sie ponownie do zespolu P na wejscia war¬
stwy 1, w okresach T9, T10, Tu, TM przez rejestry
A, B jako skladniki mnoznika. Równoczesnie z
nimi sa wprowadzane kolejno przez rejestr C licz¬
by vi, v2, vfc v4 jako mnozne, a o jeden okres T
pózniej, przez rejestry D, E sa wprowadzane ko¬
lejno do zespolu P pary liczb pi, qi, 'Pt, qt, pa, a9t
Vi, Q4» jako skladniki dodawania.
W wyniku, dzialania zespolu P otrzymuje sie na
wyjsciach jego warstwy 7 pary skladników wy¬
ników posrednich (xjyiZi+Wi) • vi+pi+qi kolejno
dla i"5!, 2, 3, 4. Te pary skladników wprowadza
sie kolejno do warstw 8 i 9 zespolu P w okresach
Tu, T14, Tis, T16, a z nich nastepnie do rejestrów
F, H, przy czym do warstwy 9 wprowadza sie
równoczesnie w okresach Ti4, Tl6, Tie, kolejno za¬
wartosci rejestrów F, H. W wyniku tego, w reje¬
strach F, H, w okresie T17, otrzymuje sie dwa
4
skladniki o sumie równej 2 [(xjyjzi+Wi) • v\+
i-i
-+Pi+QiI. Niezaleznie od tego w okresach' Tlf, T14,
Tis, T18 wprowadza sie kolejno, przez rejestry A
i C, na wejscia warstwy 1 zespolu P pary czyn¬
ników mnozenia Ui, ti, uf, tf, u8, t8, u4, t4, a o
jeden okres T pózniej, przez rejestry D, E, na
wejscia warstwy 3, sa wiprówadzane pary sklad¬
ników dodawania ri, slf r2, st, r8, s8, r4, s4.
W wyniku dzialania zespolu P otrzymuje sie na
wyjsciach jego warstwy 7 pary skladników wyni¬
ków posrednich Ujti+Ti+si, kolejno dla i=l, 2, 3, 4.
Te pary skladników wprowadza sie kolejno do
warstw 8 i 9 zespolu P w okresach T17, T18, Tw,
T20, a z nich nastepnie do rejestrów F, H, przy
czym do warstwy 9 wprowadza sie równoczesnie
w okresach T17, T18, Tw, Tw kolejno zawartosci
rejestrów F, H. W wyniku tego w rejestrach F, H
w okresie Tti otrzymuje sie dwa skladniki o su-
4
mie równej 2 {(xiyiZi+Wi)vi+Uiti+pH-qi+ri+si]
i=i
W podobny sposób, wprowadzajac do zespolu
P w okresach od T17 do Ttt dalsze operandy od
xj do Si dla i—5, 6, 7, 8, otrzymuje sie w reje*
strach F, H w okresie TS7 dwa skladniki o sumie
8
równej 2 (
i=i
Analogicznie dwa skladniki koncowego wyniku
100
2 [{xjyiZi+wi)vi4uiti+Pi+qi+ri+Si] otrzymuje
i=i «
sie w rejestrach F, H w okresie T^j. Po zsumo¬
waniu tych dwóch skladników w sumatorze S*
zawierajacym 3 warstwy sieci przelaczajacych 11,
13, 15, otrzymuje sie na jego wyjsciu, w okresie
T^ koncowy wynik w postaci jednej liczby w wy¬
maganym zapisie binarnym.
Przyklad II. Uklad cyfrowy przedstawiony
na fig. 2 dostosowany jest do równoczesnego, nie¬
zaleznego obliczania 4 wyrazen arytmetycznych.
Uklad zawiera zespól przetwarzania P, zestaw re¬
jestrów równoleglych R oraz sumator równolegly
S. Zespól przetwarzania P posiada cztery war¬
stwy 1, 3, 5, 7 zawierajace sieci przelaczajace roz¬
dzielone trzema warstwami 2, 4, 6 zawierajacy¬
mi rejestry równolegle. Zestaw rejestrów równo¬
leglych R zawiera dwa pierwsze rejestry pamie¬
tajace skladniki mnoznika, rejestr mnoznej oraz
dwie warstwy rejestrów pamietajacych skladniki
dodawania.
Sumator S jest dwuskladnikowym sumatorem
równoleglym o strukturze warstwowej, posiadaja¬
cym cztery warstwy 11, 13, 15, 17 zawierajace
sieci przelaczajace rozdzielone trzema warstwami
12, 14, 16 zawierajacymi rejestry równolegle.
Wszystkie rejestry ukladu cyfrowego dostosowane
sa podobnie jak w opisanym przykladzie I - wy*
konania do potokowego przetwarzania informacji.
Zespól przetwarzania P jest zbudowany identycz¬
nie, jak siedem warstw 1, 2, 3, 4, 5, 6, 7 zespolu
P w ukladzie cyfrowym opisanym w I przykladzie
wykonania.
Uklad cyfrowy posiada polaczenia umozliwia¬
jace równolegle przesylanie wyników posrednich,
w postaci par zredukowanych skladników, z wyjsc
warstwy 7 zespolu P do pierwszych rejestrów pa¬
mietajacych skladniki mnoznika i do pierwszej
warstwy rejestrów skladników dodawania, wcho¬
dzacych w sklad zestawu rejestrów R, jak rów¬
niez" polaczenia umozliwiajace przesylanie tych
wyników posrednich i wyniku koncowego z wyjsc
warstwy 7 zespolu P do sumatora S. Z sumatora
S wyniki posrednie sa przesylane do rejestru
mnoznej w zestawie rejestrów R, a wynik kon¬
cowy na zewnatrz ukladu cyfrowego.
Operandy z zewnatrz ukladu cyfrowego wpro¬
wadzane sa do rejestrów równoleglych zestawu
rejestrów R. Z rejestru mnoznej i rejestrów sklad¬
ników mnoznika w zestawie R, wprowadza sie
operandy jak równiez wyniki posrednie na wejs¬
cia warstwy 1 zespolu P, a z rejestrów skladni¬
ków dodawania pierwszej warstwy zestawu reje¬
strów R, przez rejestry skladników dodawania
drugiej jego warstwy, na wejiscia warstwy 3 ze¬
spolu P. Druga warstwa rejestrów pamietajacych
skladniki dodawania w zestawie R stanowi wiec
warstwe buforowa, wprowadzajaca opóznienie
równe opóznieniu jednej warstwy przetwarzania
potokowego w zespole przetwarzania P.
Dzialanie ukladu cyfrowego pokazanego na fig.
2 przedstawione zostanie na przykladzie równo¬
czesnego obliczania 4 niezaleznych wyrazen aryt¬
metycznych, z których jednym Jest, to samo co
100
w I przykladzie, wyrazenie 2 ((xiyizi+wi) • vi +
i-i
+Uitj+Pi+qj+ri+Si], wymagajace wykonania 400
mnozen i 699 dodawan. Na czas obliczania war¬
tosci tego wyrazenia sklada sie czas 400 obiegów
*5
3l
40
45
90
55
60106 470
M 18
sygnalów informacji w petli, obejmujacej wszy-
stwie warstwy zespolu przetwarzania P oraz czas
jednokrotnego przejscia sygnalów informacji przez
wszystkie warstwy zespolu P i sumatora S. Przy
przyjeciu jako jednostki czasu poprzednio zdefi¬
niowanego okresu T, czas obliczania wartosci po¬
danego wyzej wyrazenia wynosi 400 • 4T+4T+4T=
= 1608T.
Operandy obliczanego wyrazenia wprowadza sie
do zespolu przetwarzania P co 4 okresy T wyko¬
rzystujac do obliczania tego wyrazenia, w sposób
potokowy, w kazdym okresie T tylko jedna war¬
stwe sieci przelaczajacych. Pozostale warstwy sie¬
ci przelaczajacych zespolu P mozna wykorzystac
analogicznie, obliczajac równoczesnie, w sposób
potokowy, 3 inne niezalezne wyrazenia artyme-
tyczne. Wyrazenia te moga wchodzic na przyklad
w sklad róznych zadan, rozwiazywanych bezkoli¬
zyjnie we wspólpracy omawianego ukladu cyfro¬
wego z kilkoma róznymi komputerami, Z uwagi
na to, ze w omawianym rozwiazaniu ukladu cy¬
frowego, kolejne grupy operandów wprowadza sie
do zespolu P okresowo co 4T, czyli z czestotli¬
woscia pelnych cykli dzialania zespolu P, poszcze¬
gólne operandy moga byc wprowadzane zgodnie
z kolejnoscia ich indeksów, tzn. kolejno dla
i=l, 2, 3,...
Upraszcza to sterowanie strumienia informacji
wejsciowych w stosunku do ukladu cyfrowego z
I przykladu. Srednia szybkosc wykonywania dzia¬
lan arytmetycznych w obu przykladach ukladu
cyfrowego wynosi okolo 1 okresu T na jedno
mnozenie. Do czasu tego wliczony jest juz takze
czas dodawania. Oszacowanie to nie dotyczy przy¬
padków o bardzo duzej liczbie dodawan w sto¬
sunku do liczby mnozen.
Claims (10)
1. Uklad cyfrowy do obliczania wartosci zlozo¬ nych wyrazen arytmetycznych, sluzacy do oblicza¬ nia wartosci wielomianów dowolnego stopnia jed¬ nej i wielu zmiennych, szeregów funkcyjnych, iloczynów skalarnych i do innych obliczen na da¬ nych zwektoryzowanych, wykonywanych na licz¬ bach przedstawionych w zapisie binarnym, zawie¬ rajacy zestaw rejestrów równoleglych dla zapa¬ mietania zarówno operandów wystepujacych w obliczanych wyrazeniach jak i wyników posred¬ nich oraz zawierajacy cyfrowy zespól przetwarza¬ nia równoleglego operandów i wyników posred¬ nich, znamienny tym, ze struktura zespolu prze¬ twarzania (P) jest dostosowana do równoleglego wytwarzania równoczesnie wielu iloczynów czes¬ ciowych stanowiacych skladniki pelnego iloczynu dwóch czynników, z których pierwszy czynnik jest mnozna a drugi czynnik jest mnoznikiem zlozonym^co najmniej z dwóch skladników mnoz¬ nika, przy czym wspomniane iloczyny czesciowe sa tworzone bez wykonywania efektywnego doda¬ wania skladników mnoznika, jak równiez jest do¬ stosowana do zredukowania liczby skladników pel¬ nego iloczynu i innych skladników dodawanych do tego iloczynu do mniejszej liczby skladników o takiej samej ich lacznej sumie; podczas gdy w sklad zestawu rejestrów (R) wchodza co najmniej dwa równolegle pierwsze rejestry (A, B) pamieta¬ jace skladniki mnoznika i co najmniej dwa rów¬ nolegle drugie rejestry (F, H) pamietajace zredu¬ kowane skladniki przeznaczone do dodania do I iloczynu lub do dodania do innych skladników; przy czym zespól przetwarzania (P) ma niezalez¬ ne równolegle wejscia dla wprowadzania mnoz¬ nej, skladników mnoznika i skladników przezna¬ czonych do dodania do iloczynu lub do innych M skladników, jak równiez równolegle wyjscia do wyprowadzania zredukowanych skladników wyjs¬ ciowych stanowiacych skladniki wyniku posred¬ niego lub koncowego; gdzie wyjscia zespolu prze¬ twarzania (P) sa polaczone równolegle z wejscia¬ mi mi wspomnianych równoleglych pierwszych reje¬ strów (A, B), a wyjscia tych rejestrów (A, B) sa polaczone równolegle z wejsciami przeznaczonymi do wprowadzania skladników mnoznika do wspom¬ nianego zespolu przetwarzania (P), w celu utwo- 2t rzenia razem co najmniej dwóch równoleglych petli, przez które zredukowane skladniki otrzy¬ mywane na wyjsciach zespolu przetwarzania (P) sa wprowadzane równolegle i równoczesnie jako skladniki posredniego wyniku znów na wejscia 25 zespolu przetwarzania (P); gdzie równiez wyjscia zespolu przetwarzania (P) sa polaczone równoleg¬ le z wejsciami wspomnianych równoleglych dru¬ gich rejestrów (F, H), a wyjscia tych rejestrów (F, H) sa polaczone równolegle z wejsciami st zespolu przetwarzania do wprowadzania skladników dla dodawa¬ na, w celu utworzenia razem co najmniej dwóch innych równoleglych petli, przez które zre¬ dukowane skladniki otrzymywane na wyjsciach U zespolu przetwarzania (P) sa wprowadzane rów¬ noczesnie i równolegle jako skladniki posrednie¬ go wyniku znów na wejscia zespolu przetwarza¬ nia (P).
2. Uklad wedlug zastrz. 1, znamienny tym, ze 49 zespól przetwarzania (P) ma strukture warstwowa i zawiera warstwy (1, 3, 5, 7, 9) sieci przelaczaja¬ cych rozdzielone przez warstwy (2, 4, 6, 8) reje¬ strów równoleglych dla umozliwienia w kolejnych warstwach (1, 3, 5, 7, 9) sieci przelaczajacych stop- 45 niowego potokowego przetwarzania liczb wprowa¬ dzonych do zespolu przetwarzania (P); przy czym jedna warstwa (1) sieci przelaczajacych dostoso¬ wana jest do równoleglego przetwarzania mnoz¬ nej i skladników mnoznika w iloczyny czesciowe
3. II stanowiace skladniki pelnego iloczynu, a pozosta¬ le warstwy (3, 5, 7, 9) sieoi przelaczajacych dosto¬ sowane sa do stopniowego redukowania liczby skladników do mniejszej liczby skladników o ta¬ kiej samej lacznej sumie; gdzie wspomniane re- w dukujace warstwy (3, 5, 7, 9) sieci przelaczajacych zlozone sa z 'koderów posiadajacych po p jedno- bitowych wejsc i po r jednobitowych wyjsc, ta¬ kich, ze kombinacja sygnalów zero-jedynkowych na r wyjsciach kodera przedstawia binarnie zako¬ li dowana sume jedynek reprezentowanych przez sygnaly zero-jedynkowe na p wejsciach kodera, gdzie 3 warstwa redukujaca zespolu przetwarzania (P) jest zlozona z 1 do 4 warstw takich koderdw, nie po¬ la laczonych miedzy soba w ramach jednej warstwy106476 1* 20 koderów, w której pojedynczy szereg koderów nie polaczonych miedzy soba, gdzie kazdy z koderów posiada ip wejsc i r wyjsc, redukuje równolegle p skladników do r skladników z zachowaniem ich lacznej sumy. 3L Uklad wedlug zastrz. 2, znamienny tym, ze zespól przetwarzania (P) ma strukture logiczna dostosowana do redukowania liczby skladników do dwóch z zachowaniem ich lacznej sumy, a jego warstwa U> sieci przelaczajacych, sluzaca do wy¬ twarzania iloczynów czesciowych dostosowana jest dc równoleglego wytwarzania równoczesnie wszy¬ stkich iloczynów czesciowych potrzebnych do wy¬ znaczania iloczynu jednej liczfoy przez sume -dwóch licsdb przy czym wspomniane iloczyny czesciowe stanowia albo wzajemnie przesuniete wielokrot¬ nosci mnoznej o krotnosciach —1, 0, +1, z któ¬ rych kazda przyporzadkowana jest jednej parze bitów wzietych z obu skladników mnoznika, albo wzajemnie przesuniete wielokrotnosci mnoznej o krotnosciach —2, —1, 0, +1, +2, z których kazda przyporzadkowana jest jednej parze grup dwu- bitowych wzietych z obu skladników mnoznika.
4. Uklad wedlug zastrz. 3, znamienny tym, ze petle utworzone pr*ei zespól przetwarzania (P) i dwa równolegle drugie rejestry (F, H) obejmuja jedna, a mianowicie ostatnia warstwe W sieci przelaczajacych zespolu przetwarzania
5. Uklad cyfrowy do obliczania wartosci zlozo¬ nych wyrazen arytmetycznych, sluzacy tio oblicza¬ nia wartosci wielomianów dowolnego stopnia jed¬ nej i wielu zmiennych, szeregów funkcyjnych, ilo¬ czynów skalarnych i do innych obliczen na danych zwektoryzowanych, wykonywanych na 'liczbach przedstawionych w zapisie binarnym, zawierajacy zestaw rejestrów równoleglych dla zapamietania zarówno operandów wystepujacych w obliczanych wyrazeniach jak i wyników posrednich, cyfrowy zespól przetwarzania równoleglego wspomnianych operandów i wyników posrednich oraz sumator równolegly, znamienny tym, ze struktura zespolu przetwarzania (P) jest dostosowana do równoleg¬ lego wytwarzania równoczesnie wielu iloczynów czesciowych stanowiacych skladniki pelnego iloczy- mi dwóch czynników, z których pierwszy czynnik jest mnozna a drugi czynnik jest mnoznikiem zlo¬ zonym z co najmniej dwóch skladników mnozni¬ ka, przy czym wspomniane iloczyny czesciowe sa tworzone bez wykonywania efektywnego dodawa¬ nia skladników mnoznika, jak równiez jest dosto¬ sowana do zredukowania liczby skladników pelne¬ go iloczynu i innych skladników dodawanych do tego iloczynu do mniejszej (liczby skladników o takiej samej ich lacznej sumie; podczas gdy w sktog zestawu rejestrów (R) wchodza co najmniej dwa równolegle pierwsze rejestry (A, B) pamie¬ tajace skladniki mnoznika, co najmniej dwa rów¬ nolegle drugie rejestry fF% H) pamietajace zredu¬ kowane skladniki przeznaczone do dodania do ilo¬ czynu lub do dodania do innych skladników, rów¬ nolegly regestr mnoznej (C) i/toJb równolegle trze¬ cie rejestry (D» E) pamietajace Skladniki dodawa¬ nia; przy czym zespól przetwarzania {P) ma nie¬ zalezne równolegle wejscia dia wprowadzania mnoznej z rejestru mnoznej (O, skladników mnoz¬ nika z lich rejestrów czonych do dodania do iloczynu lub do innych skladników, z rejestrów (D, E) pamietajacych skladniki dodawania i z rejestrów (F, H) pamieta- ! jacych zredukowane skladniki, jak równiez rów¬ nolegle wyjscia do wyprowadzenia zredukowanych skladników wyjsciowych istanowiacych skladniki wyniku posredniego lulb koncowego; gdzie wyjscia zespolu przetwarzania (P) sa polaczone równolegle ^ z wejsciami wspomnianych równoleglych pierw¬ szych rejestrów (A, B), a wyjscia tych rejestrów (A, B) sa polaczone równolegle z wejsciami prze¬ znaczonymi do wyprowadzania skladników mnoz¬ nika do wspomnianego zespolu przetwarzania (P), tt w celu utworzenia razem co najmniej dwóch równoleglych petli, przez które zredukowane sklad¬ niki otrzymywane na wyjsciach zespolu przetwa¬ rzania (P) sa wprowadzone równoczesnie i rów¬ nolegle jako skladniki posredniego wyniku znów a na wejscia zespolu przetwarzania (P); gdzie rów¬ niej wyjscia zespolu przetwarzania (P) sa pola¬ czone równolegle z wejsciami wspomnianych rów¬ noleglych drugich rejestrów (FM H), a wyjscia tych rejestrów (F, H) sa polaczone równolegle z a* wejsciami zespolu przetwarzania (P) przeznaczo¬ nymi do wrpowadzania skladników dla dodawa¬ nia, w celu utworzenia razem takze co najmniej dwóch równoleglych petli, przez które zreduko¬ wane skladniki otrzymywane na wyjsciach zespo- 3* lu przetwarzania (P) sa wprowadzane równoczes¬ nie i Tównolegle jako skladniki posredniego wy¬ niku znów na wejscia zespolu przetwarzania (P).
6. Uklad wedlug zastrz. 5, znamienny tym, ze zespól przetwarzania (P) ma strukture warstwo- 35 wa i zawiera warstwy (1, 3, 5, 7, 9) sieci przela¬ czajacych rozdzielone przez warstwy (2, 4, 6, 8) rejestrów równoleglych dla umozliwienia w ko¬ lejnych warstwach (1, 3, 5, 7, 9) sieci przelaczaja¬ cych stopniowego potokowego przetwarzania liczb 4» wyprowadzonych do zespolu przetwarzania (P); przy czym jedna warstwa (1) sieci przelaczajacych dostosowana jest do równoleglego przetwarzania mnoznej i skladników mnoznika w iloczyny czes¬ ciowe stanowiace skladniki pelnego iloczynu, a 4& pozostale warstwy (3, 5, 7, 9) sieci przelaczajacych dostosowane sa do stopniowego redukowania licz¬ by skladników do mniejszej liczby skladników o takiej samej ich lacznej sumie: gdzie wspom¬ niane redukujace warstwy (3, 5, 7, 9> sieci prze- 50. laczajacych zlozone sa z koderów 'posiadajacych po p jednobitowych wejsc i po r jednobitowych wyjsc, takich, ze kombinacja sygnalów zero-je- dynkowych na r wyjsciach kodera przedstawia bi¬ narnie zakodowana sume jedynek reprezentowa- 55 nych przez sygnaly zerojedynkowe na p wejsciach kodera, gdzie 3^p^9 i 2^r^4; przy czym po¬ jedyncza warstwa redukujaca zespolu przetwarza¬ nia (P) jest zlozona z 1 do 4 warstw takich ko¬ derów, nie polaczonych imiedzy soba w ramach 60 jednej warstwy koderów, w której pojedynczy szereg koderów nie polaczonych miedzy soba, gdzie kazdy z koderów posiada p wejsc i r wyjsc, redukuje równolegle p skladników do r skladni¬ ków z zachowaniem ich lacznej sumy; podczas ii gdy równolegly sumator (S)> przeznaczony do do-106 470 II dawania zredukowanych w zespole przetwarzania (P) skladników, dolaczony jest albo do wyjsc ze¬ spolu przetwarzania (P), albo do wyjsc rejestrów pamietajacych zredukowane skladniki dodawania, przy czym jest korzystne, gdy sumator posiada strukture warstwowa, o warstwach (11, 13, 15) za¬ wierajacych sieci przelaczajace rozdzielonych war¬ stwami rejestrów (12, 14), dostosowana do poto¬ kowego wykonywania kolejnych dodawan, zsyn¬ chronizowanego z potokowym przetwarzaniem liczb w zespole przetwarzania (P).
7. Uklad wedlug zastrz. 6, znamienny tym, ze wyjscie równoleglego sumatora (S), dostosowane¬ go do potokowego przetwarzania liczb, polaczone jest przez rejestr mnoznej (C) z zespolem prze¬ twarzania (P), w celu utworzenia petli, przez któ¬ ra suma otrzymanych na wyjsciach zespolu prze¬ twarzania (P) zredukowanych skladników wyniku posredniego jest ponownie wyprowadzana na wejs¬ cia zespolu przetwarzania (P) jako mnozna.
8. Uklad wedlug zastrz. 6, znamienny tym, ze wchodzace w sklad zestawu rejestrów (B) równo¬ legle trzecie rejestry tworza 2 do 6 par rejestrów, które sluza do pamietania wprowadzanych z ze¬ spolu przetwarzania (P) 2 do 6 róznych wyników posrednich, kazdy wynik posredni w postaci pary skladników, oraz z których te pary skladników wprowadzane sa ponownie do zespolu przetwa¬ rzania (P) lub do pary równoleglych pierwszych l rejestrów (A, B) pamietajacych skladniki mnozni¬ ka.
9. Uklad wedlug zastrz. 6, znamienny tym, ze wszystkie petle, utworzone przez zespól przetwa¬ rzania (P) i rejestry z zestawu rejestrów (B), if obejmuja jednakowa liczbe k lacznie warstw re¬ jestrów równoleglych i pojedynczych rejestrów równoleglych, przez które kolejno przesylane sa potokowo przetwarzane liczby, dla umozliwienia równoczesnego, niezaleznego obliczania k wyrazen ii arytmetycznych.
10. Uklad wedlug zastrz. 9, znamienny tym, ze równolegly sumator (S) dostosowany do potoko¬ wego wykonywania kolejnych dodawan tworzy wraz z zespolem przetwarzania (P) i rejestrami m zestawu rejestrów (B) petle obejmujaca 2 k lacz¬ nie warstw rejestrów równoleglych i pojedynczych rejestrów równoleglych, przez które kolejno prze¬ sylane sa potokowo przetwarzane liczby, przy czym korzystne jest gdy petla ta obejmuje rejestr mnoznej (C). fig l106 470 fig Z Bltk 375/80 r. 110 egz. A4 Cena zl 45 J
Priority Applications (6)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PL1977195731A PL106470B1 (pl) | 1977-02-01 | 1977-02-01 | Uklad cyfrowy do obliczania wartosci zlozonych wyrazen arytmetycznych |
FR7801399A FR2379116A1 (fr) | 1977-02-01 | 1978-01-18 | Dispositif numerique pour le calcul de la valeur d'expressions arithmetiques complexes |
GB2765/78A GB1595381A (en) | 1977-02-01 | 1978-01-24 | Digital system for computation of the values of composite arithmetic expressions |
DE19782803425 DE2803425A1 (de) | 1977-02-01 | 1978-01-26 | Digitaleinrichtung zur ermittlung des wertes von komplexen arithmetischen ausdruecken |
US05/873,423 US4156922A (en) | 1977-02-01 | 1978-01-27 | Digital system for computation of the values of composite arithmetic expressions |
DD78203474A DD134148A5 (de) | 1977-02-01 | 1978-01-30 | Digitaleinrichtung zur ermittlung des wertes von komplexen arithmetischen ausdruecken |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PL1977195731A PL106470B1 (pl) | 1977-02-01 | 1977-02-01 | Uklad cyfrowy do obliczania wartosci zlozonych wyrazen arytmetycznych |
Publications (2)
Publication Number | Publication Date |
---|---|
PL195731A1 PL195731A1 (pl) | 1978-08-14 |
PL106470B1 true PL106470B1 (pl) | 1979-12-31 |
Family
ID=19980766
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PL1977195731A PL106470B1 (pl) | 1977-02-01 | 1977-02-01 | Uklad cyfrowy do obliczania wartosci zlozonych wyrazen arytmetycznych |
Country Status (6)
Country | Link |
---|---|
US (1) | US4156922A (pl) |
DD (1) | DD134148A5 (pl) |
DE (1) | DE2803425A1 (pl) |
FR (1) | FR2379116A1 (pl) |
GB (1) | GB1595381A (pl) |
PL (1) | PL106470B1 (pl) |
Families Citing this family (28)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS6053907B2 (ja) * | 1978-01-27 | 1985-11-27 | 日本電気株式会社 | 二項ベクトル乗算回路 |
EP0218971A3 (de) * | 1985-09-30 | 1990-04-11 | Siemens Aktiengesellschaft | Arbeitsverfahren zur Lösung der Gleichungen des Typs z = k x1 y1 op x2 y2 op ... op xn ym |
JPS6347874A (ja) * | 1986-08-16 | 1988-02-29 | Nec Corp | 算術演算装置 |
US5031134A (en) * | 1989-05-30 | 1991-07-09 | The University Of Michigan | System for evaluating multiple integrals |
US5390136A (en) * | 1993-06-14 | 1995-02-14 | Motorola, Inc. | Artificial neuron and method of using same |
US5517667A (en) * | 1993-06-14 | 1996-05-14 | Motorola, Inc. | Neural network that does not require repetitive training |
CA2135857A1 (en) * | 1994-01-03 | 1995-07-04 | Shay-Ping Thomas Wang | Neural network utilizing logarithmic function and method of using same |
US5619664A (en) * | 1994-01-04 | 1997-04-08 | Intel Corporation | Processor with architecture for improved pipelining of arithmetic instructions by forwarding redundant intermediate data forms |
US5553012A (en) * | 1995-03-10 | 1996-09-03 | Motorola, Inc. | Exponentiation circuit utilizing shift means and method of using same |
US5685008A (en) * | 1995-03-13 | 1997-11-04 | Motorola, Inc. | Computer Processor utilizing logarithmic conversion and method of use thereof |
US5644520A (en) * | 1995-05-31 | 1997-07-01 | Pan; Shao Wei | Accumulator circuit and method of use thereof |
US5771391A (en) * | 1995-08-28 | 1998-06-23 | Motorola Inc. | Computer processor having a pipelined architecture and method of using same |
US6952823B2 (en) * | 1998-09-01 | 2005-10-04 | Pkware, Inc. | Software patch generator using compression techniques |
US6318156B1 (en) * | 1999-10-28 | 2001-11-20 | Micro Motion, Inc. | Multiphase flow measurement system |
US20060173847A1 (en) * | 2000-03-09 | 2006-08-03 | Pkware, Inc. | System and method for manipulating and managing computer archive files |
US20060143199A1 (en) * | 2000-03-09 | 2006-06-29 | Pkware, Inc. | System and method for manipulating and managing computer archive files |
US20060155788A1 (en) * | 2000-03-09 | 2006-07-13 | Pkware, Inc. | System and method for manipulating and managing computer archive files |
US20060143180A1 (en) * | 2000-03-09 | 2006-06-29 | Pkware, Inc. | System and method for manipulating and managing computer archive files |
US20050015608A1 (en) * | 2003-07-16 | 2005-01-20 | Pkware, Inc. | Method for strongly encrypting .ZIP files |
US20060173848A1 (en) * | 2000-03-09 | 2006-08-03 | Pkware, Inc. | System and method for manipulating and managing computer archive files |
US6879988B2 (en) * | 2000-03-09 | 2005-04-12 | Pkware | System and method for manipulating and managing computer archive files |
US7844579B2 (en) * | 2000-03-09 | 2010-11-30 | Pkware, Inc. | System and method for manipulating and managing computer archive files |
US20060143253A1 (en) * | 2000-03-09 | 2006-06-29 | Pkware, Inc. | System and method for manipulating and managing computer archive files |
US20060143249A1 (en) * | 2000-03-09 | 2006-06-29 | Pkware, Inc. | System and method for manipulating and managing computer archive files |
US20060143237A1 (en) * | 2000-03-09 | 2006-06-29 | Pkware, Inc. | System and method for manipulating and managing computer archive files |
US8959582B2 (en) | 2000-03-09 | 2015-02-17 | Pkware, Inc. | System and method for manipulating and managing computer archive files |
US8230482B2 (en) | 2000-03-09 | 2012-07-24 | Pkware, Inc. | System and method for manipulating and managing computer archive files |
US8938590B2 (en) * | 2008-10-18 | 2015-01-20 | Micron Technology, Inc. | Indirect register access method and system |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3253131A (en) * | 1961-06-30 | 1966-05-24 | Ibm | Adder |
US3115574A (en) * | 1961-11-29 | 1963-12-24 | Ibm | High-speed multiplier |
US3515344A (en) * | 1966-08-31 | 1970-06-02 | Ibm | Apparatus for accumulating the sum of a plurality of operands |
US3761698A (en) * | 1972-04-24 | 1973-09-25 | Texas Instruments Inc | Combined digital multiplication summation |
US3922536A (en) * | 1974-05-31 | 1975-11-25 | Rca Corp | Multionomial processor system |
-
1977
- 1977-02-01 PL PL1977195731A patent/PL106470B1/pl unknown
-
1978
- 1978-01-18 FR FR7801399A patent/FR2379116A1/fr not_active Withdrawn
- 1978-01-24 GB GB2765/78A patent/GB1595381A/en not_active Expired
- 1978-01-26 DE DE19782803425 patent/DE2803425A1/de not_active Withdrawn
- 1978-01-27 US US05/873,423 patent/US4156922A/en not_active Expired - Lifetime
- 1978-01-30 DD DD78203474A patent/DD134148A5/xx unknown
Also Published As
Publication number | Publication date |
---|---|
DE2803425A1 (de) | 1978-08-03 |
US4156922A (en) | 1979-05-29 |
DD134148A5 (de) | 1979-02-07 |
FR2379116A1 (fr) | 1978-08-25 |
GB1595381A (en) | 1981-08-12 |
PL195731A1 (pl) | 1978-08-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
PL106470B1 (pl) | Uklad cyfrowy do obliczania wartosci zlozonych wyrazen arytmetycznych | |
KR100336266B1 (ko) | 신경 프로세서, 포화 유니트, 계산 유니트 및 가산기 회로 | |
US3515344A (en) | Apparatus for accumulating the sum of a plurality of operands | |
JPS62286307A (ja) | 多重ステージデジタル信号乗算加算装置 | |
JPH05189471A (ja) | バタフライ形演算装置 | |
JP2007234004A (ja) | ブース乗算の装置および方法 | |
CN108845828A (zh) | 一种协处理器、矩阵运算加速方法及系统 | |
KR940008616B1 (ko) | 고속승산기 | |
EP0137386B1 (en) | Digital multiplying circuit | |
Premkumar | A formal framework for conversion from binary to residue numbers | |
US4638449A (en) | Multiplier architecture | |
US5987638A (en) | Apparatus and method for computing the result of a viterbi equation in a single cycle | |
JPH05181896A (ja) | 離散コサイン変換処理装置 | |
US4811270A (en) | Merged CCD/MOS integrated circuit | |
US5262975A (en) | Serial input multiplier apparatus | |
JPH01233909A (ja) | ディジタル乗算器及びこれを用いたディジタルフィルタ | |
Wyrzykowski et al. | One-dimensional processor arrays for linear algebraic problems | |
Singh et al. | High performance VLSI architecture for wave digital filtering | |
JPS6222178A (ja) | 2つの複素数の乗算のための乗算器 | |
Alia et al. | A fast near optimum VLSI implementation of FFT using residue number systems | |
Lin et al. | Constant time inner product and matrix computations on permutation network processors | |
US3300627A (en) | Apparatus for real-time multiplication | |
JP2864597B2 (ja) | ディジタル演算回路 | |
SU1086438A1 (ru) | Процессор быстрого преобразовани Фурье | |
PL107341B1 (pl) | Uklad cyfrowy do obliczania iloczynu skalarnego wektorow o skladowych binarnych |