Przedmiotem wynalazku jest cyfrowy uklad binarny do obliczania wartosci funkcji wykladniczej o ustalonej podstawie, przeznaczony do zastosowania w szybkich specjalizowanych procesorach do obliczen numerycznych, wchodzacych w sklad komputerów i systemów komputerowych, oraz w innych szybkich urzadzeniach cyfro¬ wych obliczajacych wartosci funkcji z duza dokladnoscia.Znane sa cyfrowe uklady binarne do obliczania wartosci funkcji wykladniczej charakteryzujace sie tym, ze wyznaczana wartosc funkcji wykladniczej otrzymuje sie po wykonaniu dodawan lub odejmowan od argumentu funkcji wykladniczej niewielkiej liczby stalych oraz w wyniku dodawan i odejmowan przesunietych wzgledem siebie odpowiednio dobranych liczb. W sklad takich cyfrowych ukladów wchodzi maly szybki zespól pamiecio¬ wy zawierajacy przewaznie kilkadziesiat stalych, kilka rejestrów pamietajacych przetwarzane liczby i sumator lub kilka sumatorów. Struktura logiczna i dzialanie takich i podobnych ukladów opisane sa miedzy innymi w naste¬ pujacych publikacjach: - J.E. Meggit, „Pseudo Division and Pseudo Multiplication Processes", IBM J. Res. Develop. 6, 21.0-226 (1962).- W.H. Specker, „A Class of Algorithms for In x, exp x, sin x, cos x, tan"1 x, and cot"1 x", IEEE Trans.Electronic Computers, EC-14, 85-86 (1965).- Tien Chi Chen, „Automatic Computation of Exponentials, Logarithms, Rations and Sauare Roots", IBM J. Res. Develop. No. 4, 380-388, My 1972.- P.W.Baker, „More Efficient Radix-2 Algorithms for Some Elementary Functions", IEEE Trans. Computers, C-24,1049-1054, November 1975.- A.M. Oranskij, „Apparaturnye metody v cifrovoj vycislitel'noj technike", 1977, Izdatelstvo BGU im.-Lenina, Minsk.Znany jest równiez uklad cyfrowy dzielenia binarnego przedstawiony w polskim opisie patentowym nr 121732, w którym zamiast kolejnych dodawan lub odejmowan wystepujacych w wiekszosci znanych cyfro¬ wych ukladów dzielenia, zastosowano redukcje równolegla trójek liczb do par liczb. Opisane tam zespoly cyfrowe do wyboru cyfr ilorazu na podstawie par liczb otrzymywanych w wyniku redukcji równoleglej adapto-2 132094 wane zostaly w niniejszym wynalazku jako zespoly cyfrowe wchodzace miedzy innymi w sklad cyfrowego ukladu binarnego do obliczania wartosci funkcji wykladniczej.Zgodnie z wynalazkiem w sklad cyfrowego ukladu binarnego do obliczania wartosci funkcji wykladniczej wchodzi zespól pamieciowy stalych, zespól rejestrów równoleglych pamietajacych liczby przetwarzane w tra¬ kcie wyznaczania wartosci funkcji wykladniczej, zespól przetwarzajacy równolegle liczby pobierane ze wspo¬ mnianego zespolu rejestrów oraz zespól generujacy cyfry, od których zalezy wybór liczb z zespolu rejestrów, które sa przetwarzane we wspomnianym zespole przetwarzania. W szczególnosci wspomniane zespoly przetwarza¬ jacy i generujacy moga tworzyc lacznie jeden zespól wykonujacy na przemian funkcje obu tych zespolów.Zespól pamieciowy stalych polaczony jest z zespolem generujacym cyfry i z zespolem rejestrów równoleglych, w celu równoleglego przesylania wybranych stalych do zespolu generujacego i zespolu rejestrów. Zespól reje¬ strów równoleglych polaczony jest z zespolem generujacym cyfry, w celu równoleglego dwukierunkowego prze¬ sylania informacji, przetwarzanych w zespole generujacym. Zespól rejestrów równoleglych polaczony jest równiez z zespolem przetwarzajacym, w celu równoleglego dwukierunkowego przesylania informacji, przetwa¬ rzanych w zespole przetwarzajacym. Zespól przetwarzajacy polapzony jest takze z zespolem generujacym cyfry, w celu przesylania tych cyfr do zespolu przetwarzajacego, gdzie sa one wykorzystywane do sterowania przetwa¬ rzaniem informacji. Cyfrowy uklad binarny wedlug wynalazku charakteryzuje sie tym, ze jego zespól generujacy cyfry zawiera podzespól redukujacy i podzespól dekodujacy. Podzespól redukujacy dostosowany jest do równo¬ leglego redukowania, w kolejnych krokach wyznaczania wartosci funkcji wykladniczej, trójek liczb do par liczb z zachowaniem ich sum. Podzespól redukujacy polaczony jest z podzespolem dekodujacym, w celu przesylania do podzespolu dekodujacego grup bitów pobieranych z pieciu, czterechJub trzech bardziej znaczacych pozycji bina¬ rnych z liczb redukowanych w podzespole redukujacym. Te grupy bitów dekodowane sa nastepnie w podzespole dekodujacym na cyfry 0,1,2 lub cyfry-1,0,+1,które steruja przetwarzaniem informacji w zespole przetwarzajacym.Dzieki zastosowaniu omówionego cyfrowego ukladu binarnego do obliczania wartosci funkcji wykladniczej, w którym przez zastosowanie równoleglej redukcji trójek liczb i czwórek liczb do par liczb unika sie wielu dodawan lub odejmowan, czasochlonnych ze wzgledu na propagacje przeniesien, uzyskuje sie znaczne skrócenie czasu wyznaczania wartosci funkcji wykladniczej, zwlaszcza w tych przypadkach gdy wymagana jest bardzo wysoka dokladnosc obliczen.W szczególnosci cyfrowym ukladem wedlug wynalazku jest opisany uklad, w którym w sklad pozdespolu redukujacego wchodzi szereg jednopozycyjnych sumatorów binarnych, z których kazdy redukuje trójke bitów do pary bitów, przy czym sumatory te nie maja miedzy soba polaczen sluzacych do przesylania informacji.Cyfrowym ukladem wedlug wynalazku jest równiez nizej opisany cyfrowy uklad binarny do obliczania wartosci funkcji wykladniczej w sklad którego wchodzi zespól pamieciowy stalych, zespól rejestrów równole¬ glych pamietajacych liczby przetwarzane w trakcie wyznaczania wartosci funkcji wykladniczej, zespól przetwa¬ rzajacy równolegle liczby pobierane ze wspomnianego zespolu rejestrów oraz zespól generujacy cyfry, od których zalezy wybór liczb z zespolu rejestrów, które sa przetwarzane we wspomnianym zespole przetwarzania.Zespól pamieciowy stalych polaczony jest z zespolem generujacym cyfry i z zespolem rejestrów równoleglych w celu równoleglego przesylania wybranych stalych do zespolu generujacego i zespolu rejestrów. Zespól reje¬ strów równoleglych polaczony jest z zespolem generujacym cyfry, w celu równoleglego dwukierunkowego prze¬ sylania informacji, przetwarzanych w zespole generujacym. Zespól rejestrów równoleglych polaczonyjest równiez z zespolem przetwarzajacym, w celu równoleglego dwukierunkowego przesylania informacji przetwarzanych wzespo- le przetwarzajacym. Zespól przetwarzajacy polaczony jest takie z zespolem generujacym cyfry, w celu przesylania tych cyfr do zespolu przetwarzajacego, gdzie sa one wykorzystywane do sterowania przetwarzaniem informacji.Cyfrowy uklad binarny wedlug wynalazku charakteryzuje sie tym, ze wspomniany zespól przetwarzajacy majacy strukture logiczna dostosowana do równoleglego redukowania czwórek liczb do par liczb z zachowaniem ich sum jest polaczony równolegle i dwukierunkowo z zespolem rejestrów w celu równoczesnego przesylania równoleglego czwórek liczb lub par liczb miedzy tymi zespolami. Dzieki zastosowaniu omówionego cyfrowego ukladu binarnego do obliczania wartosci funkcji wykladniczej, w którym przez zastosowanie równoleglej reduk¬ cji trójek liczb i czwórek liczb do par liczb unika sie wielu dodawan lub odejmowan czasochlonnych ze wzgledu na propagacje przeniesien, uzyskuje sie znaczne skrócenie czasu wyznaczania wartosci funkcji wykladniczej, zwlaszcza w tych przypadkach gdy wymagana jest bardzo wysoka dokladnosc obliczen.W szczególnosci cyfrowym ukladem wedlug wynalazku jest opisany ostatnio uklad, w którym w sklad zespolu przetwarzajacego wchodza dwa szeregi jednopozycyjnych sumatorów binarnych redukujacych trójki bitów do par bitów, przy czym sumatory nalezace do tego samego szeregu nie maja miedzy soba polaczen sluzacych do przesylania informagi.Strukture cyfrowego ukladu wedlug wynalazku wyjasnia dokladniej nastepujace rozumowanie.Obliczanie wartosci z = a^ dla ustalonej dodatniej liczby a i dodatniej liczby y majacej w zapisie binarnym postac y=x,xxx..., gdzie x oznacza bit 0 lub 1, mozna przeprowadzic nastepujaco. Majac dany ciag stalych loga(l+2"1), dla kolejnych liczb calkowitych i mozna wybrac z nich taki ciag liczb loga(l +qj2_1), gdzie cyfry132094 ' * 3 q^ e {0,1,2} , aby liczba y byla suma wyrazów tego ciaga. Wybór taki odbywa sie przez próby odejjnowan * kolejnych stalych loga(l+2_1) i wyznaczenie na tej podstawie wartosci q^ dla kolejnych liczb calkowitych i, w sposób analogiczny do prób odejmowania lub dodawania przesuwanego dzielnika w trakcie wykonywania dzielenia i wyznaczania na tej podstawie kolejnych cyfr ilorazu. Na podstawie otrzymanej z wzorów 2 =3^ y = S log^l+aj?-1) (1) równosci logaz = ?lag^l+a^-*) (2) mozna, z wyznaczonego ciagu cyfr qi wyliczyc szukana wartosc z =n(l+qi2-i) (3) Kazde z wynikajacych z ostatniego wzoru mnozen przez kolejne czynniki 1 +qj2_1, gdzie q. e {0,1,2}, sprowadza sie do przesuniecia i dodania jednej, poprzednio otrzymanej liczby.Gag kolejnych odejmowan lub dodawan prowadzacy do wyznaczania cyfr q^ mozna zastapic przez ciag kolejnych redukcji równoleglych trójek liczb do par liczb z zachowaniem ich sum. Cyfry q^ wyznacza sie wówczas na podstawie grup bitów wzietych z trzech lub czterech pozycji binarnych ze zredukowanych par liczb.Analogicznie ciag kolejnych dodawan, wymaganych dla wykonania ciagu kolanych mnozen przez czynniki l+qj2-1, mozna zastapic przez ciag kolejnych redukcji równoleglych czwórek liczb do par liczb z zachowaniem ich sum. Suma liczb ostatniej otrzymanej w ten sposób pary zredukowanych liczb stanowi szukana wartosc funkcji wykladniczej.Analogiczne rozumowanie mozna przeprowadzic równiez dla czynników postaci 1—qj2_1 gdzie q. e { 0,1,2/ i odpowiadajacych im stalych loga(l-2"1), jak równiez przy zalozeniu ze qj e £-1,0,+1}-. W ostatnim przypad¬ ku potrzebne sa zarówno stale postaci loga(l+2"1)jak i stale postaci loga(l-2"1).W cyfrowym ukladzie binarnym wedlug wynalazku, o strukturze logicznej dla której przyjeto, ze a^e ^0,1,2) stalymi zapisanymi w zespole pamieciowym sa liczby -loga(l+2_1) lub liczby -loga(l-2_I) dla ustalonej wartosci a, oraz i= 1,2,...,m, gdzie m nie przekracza liczby bitów wyznaczanej liczby a^.Struktura logiczna cyfrowego ukladu binarnego wedlug wynalazku moze byc równiez dostosowana do cyfr q. e {-1,0,+!} zamiast cyfr q. e {0,1,2} • W przypadku takim przeprowadzone wyzej rozumowanie ulega tylko niewielkim modyfikacjom. O wyborze kolejnej cyfry q. decyduje wtedy grupa bitów branych z trzech lub czte¬ rech pozycji binarnych z dwóch skladników otrzymanych w wyniku redukcji. Dla cyfr q^ e {-1,0,+1} stalymi zapisanymi w zespole pamieciowym sa zarówno liczby —loga(l+2_1) jak i liczby -loga(l-2_1) dla ustalonej wartosci a oraz i=l,2,...,m, gdzie m nie przekracza liczby bitów wyznaczonej liczby a^.Liczba pozycji binarnych, z których sa brane* grupy bitów dekodowanych na cyfry q- moze byc zwiekszona do pieciu, w przypadkach gdy bity te sa pobierane nie z liczb zredukowanych, ale z liczb redukowanych. Stoso¬ wanie odpowiadajacych takiemu przypadkowi rozwiazan ukladu moze skrócic czas wyznaczania wartosci funkcji wykladniczej kosztem rozbudowy ukladu.Przedmiot wynalazku zostal pokazany w przykladzie wykonania na rysunku przedstawiajacym schemat blokowy cyfrowego ukladu binarnego do obliczania wartosci funkcji wykladniczej.Cyfrowy uklad binarny do obliczania wartosci funkcji wykladniczej obejmuje nastepujace zespoly cyfrowe: zespól pamieciowy stalych M zawierajacy kilkadziesiat stalych -log2(l+2"1) oraz niewielka liczbe innych stalych; zespól rejestrów R obejmujacy siedem rejestrów równoleglych; zespól przetwarzajacy P zawierajacy dwa szeregi jednopozycyjnych sumatorów binarnych nie polaczonych ze soba w ramach tego samego szeregu; zespól generujacy G, który generuje cyfry a^e {0,1,2}-, zawierajacy podzespól redukujacy S, który redukuje trójki liczb do par liczb, oraz podzespól dekodujacy D, który dekoduje grupy bitów wzietych z czterech pozycji binarnych z par liczb zredukowanych w podzespole S na kodowane binarnie cyfry 0,1,2. Podzespól S obejmuje szereg nie polaczonych ze soba jednopozycyjnych sumatorów binarnych, z których kazdy redukuje trójke bitów do pary bitów. Podzespól dekodujacy D zawiera szybki czteropozycyjny binarny sumator równolegly dodajacy modulo 24 dwie czterobitowe liczby oraz zawiera dekoder, dekodujacy czwórki bitów otrzymane w wyniku tego dodawania na zakodowane binarnie cyfry 0,1,2, przy czym czwórkom bitów 00xx, 01xx, lxxx przyporzadko¬ wuje sie odpowiednio cyfry 0,1,2, gdzie x oznacza dowolny bit. Poszczególne zespoly i podzespoly cyfrowego ukladu polaczone sa ze soba w sposób nastepujacy: wyjscie 1 zespolu M ma polaczenie z wejsciem 2 podzespolu S i z wejsciem 3 zespolu R sluzace do równoleglego przesylania stalych -log2(l+2_i) dla kolejnych wartosci i; wyjscie 4 zespolu R ma polaczenie z wejsciem 5 podzespolu S sluzace do równoczesnego równoleglego przesy¬ lania trzech liczb; wyjscie 6 podzespolu S ma polaczenie z wejsciem 7 zespolu R sluzace do równoczesnego równoleglego przesylania dwóch liczb; wyjscie 8 podzespolu S ma polaczenie z wejsciem 9 podzespolu D sluzace do równoleglego przesylania dwóch czwórek bitów; wyjscie 10 podzespolu D ma polaczenie z wejsciem 11 podzespolu Si z wejsciem 12 zespolu P sluzace do przesylania zakodowanych binarnie cyfr 0,1,2; wyjscie 13 zespolu R ma polaczenie z wejsciem 14 zespolu P sluzace do równoczesnego równoleglego przesylania czterech liczb; wyjscie 15 zespolu P ma polaczenie z wejsciem 16 zespolu R sluzace do równoczesnego równoleglego przesylania dwóch liczb.4 132094 Dzialanie omawianego cyfrowego ukladu binarnego do obliczania wartosci funkcji wykladniczej obejmuje wykonanie nizej opisanych czynnosci. Dodatnia liczba y z zakresu 1 wprowadzona do jednego z rejestrów zespolu R, przy czym do drugiego i trzeciego rejestru zespolu R zostaje wprowadzona jedna ze stalych z zespolu M lub zero, w zaleznosci od pierwszych dwóch bitów po przecinku liczby y. Od tych dwóch bitów liczby y zaleza równiez pierwsze cyfry qi i pierwszy czynnik postaci 1+2"1 liczby z=a^, który wprowadzony zostaje do czwartego i szóstego rejestru zespolu R. Na tym zakonczony zostaje wstepny krok wyznaczania liczby z=ay. Kazdy z dalszych kroków obejmuje: redukcje równolegla w podzespole 5 trójki liczb, wprowadzonych z trzech pierwszych rejestrów zespolu R i/lub z zespolu M, do pary liczb; wpro¬ wadzenie pary zredukowanych w podzespole S liczb do drugiego i trzeciego rejestru zespolu R; redukcje równo¬ legla w zespole P czwórki liczb wprowadzonych z rejestrów zespolu R do pary liczb; wprowadzenie pary zredu¬ kowanych w zespole P liczb do czwartego i piatego rejestru zespolu R i tej samej ale odpowiednio przesunietej pary liczb do szóstego i siódmego rejestru zespolu R; dekodowanie w podzespole D dwóch czwórek bitów, wybranych z pary zredukowanych liczb w podzespole S, na dwubitowo kodowana cyfre 0,1 lub 2, która steruje wyborem z zespolów R i M trójki liczb redukowanych w podzespole S, oraz wyborem czwórki liczb z czwartego, piatego, szóstego i siódmego rejestru zespolu R lub zer, które redukowane sa do pary liczb w zespole P. Po ostatnim takim kroku otrzymuje sie w zespole P dwa skladniki koncowego wyniku, które moga byc zsumowane badz w tym samym zespole P, badz w dowolnym sumatorze znajdujacym sie poza omówionym cyfrowym ukladem binarnym do wyznaczania wartosci funkcji wykladniczej.Zastrzezenia patentowe 1. Cyfrowy uklad binarny do obliczania wartosci funkcji wykladniczej, w którym zespól pamieciowy stalych polaczony jest z zespolem generujacym cyfry i z zespolem rejestrów równoleglych w celu równoleglego przesylania wybranych stalych do zespolu generujacego i zespolu rejestrów, oraz w którym zespól rejestrów równoleglych polaczony jest z zespolem generujacym cyfjy, w celu równoleglego dwukierunkowego przesylania informacji, przetwarzanych w zespole generujacym, jak równiez w którym zespól rejestrów równoleglych pola¬ czony jest z zespolem przetwarzajacym, w celu równoleglego dwukierunkowego przesylania informacji, przetwa¬ rzanych w zespole przetwarzajacym, pizy czym zespól przetwarzajacy polaczony jest takze z zespolem generuja¬ cym cyfry, w celu przesylania tych cyfr do zespolu przetwarzajacego, gdzie sa one wykorzystywane do sterowa¬ nia przetwarzaniem informacji, przy czym w szczególnosci zespoly przetwarzajacy i generujacy moga stanowic lacznie równiez jeden zespól wykonujacy na przemian funkcje obu tych zespolów, znamienny tym, ze podzespól redukujacy (S) zespolu generujacego (G), dostosowany do równoleglego bezprzeniesieniowego redukowania trójek liczb do par liczb z zachowaniem ich sum, polaczony jest z po4zespolem dekodujacym (D) zespolu generujacego (G), w celu przesylania grup bitów pobieranych z pieciu, czterech, lub trzech bardziej znaczacych pozycji binarnych z liczb redukowanych w podzespole redukujacym (S), dla dekodowania tych grup bitów w podzespole dekodujacym (D) na cyfry 0,1,2 lub cyfry -1,0,+1, które steruja przetwarzaniem informacji w zespole przetwarzajacym (P). 2. Cyfrowy uklad binarny wedlug zastrz. 1, .znamienny tym, ze w sklad podzespolu redukujacego (S) wchodzi szereg jednopozycyjnych sumatorów binarnych, z których kazdy redukuje trójke bitów do pary bitów, przy czym sumatory te nie maja miedzy soba polaczen sluzacych do przesylania informacji. 3. Cyfrowy uklad binarny do obliczania wartosci funkcji wykladniczej, w którym zespól pamieciowy sta¬ lych polaczony jest z zespolem generujacym cyfry i z zespolem rejestrów równoleglych w celu równoleglego przesylania wybranych stalych do zespolu generujacego i zespolu rejestrów, oraz w którym zespól rejestrów równoleglych polaczonyjest z zespolem generujacym cyfry, w celu równoleglego dwukierunkowego przesylania informacji, przetwarzanych wzespole generujacym, jakrówniez w którym zespól rejestrów równoleglych polaczo¬ ny jest z zespolem przetwarzajacym, w celu równoleglego dwukierunkowego przesylania informacji, przetwarza¬ nych w zespole przetwarzajacym, przy czym zespól przetwarzajacy polaczony jest takze z zespolem generuja¬ cym cyfry, w celu przesylania tych cyfr do zespolu przetwarzajacego, gdzie sa one wykorzystywane do sterowa¬ nia przetwarzaniem informacji, pizy czym w szczególnosci zespoly przetwarzajacy i generujacy moga stanowic lacznie równiez jeden zespól wykonujacy na przemian funkcje obu tych zespolów, znamienny tym, ze zespól przetwarzajacy (P) majacy strukture logiczna dostosowana do równoleglego redukowania czwórek liczb do par liczb z zachowaniem ich sum, jest polaczony równolegle i dwukierunkowo z zespolem rejestrów (R) w celu równoczesnego przesylania równoleglego czwórek liczb lub par liczb miedzy tymi zespolami. 4. Cyfrowy uklad binarny wedlug zastrz. 39 znamienny t y m, ze w sklad zespolu przetwarzajacego (P) wchodza dwa szeregi jednopozycyjnych sumatorów binarnych, redukujacych trójki bitów, przy czym sumatory na¬ lezace do tego samego szeregu nie maja tniedzy soba polaczen sluzacych do przesylania informacji. «132 094 M G Tl 2\ S w R 31 1 1 1 \ 5\ Pi 6 T— S dl 9{f B Al t 10 ) l 131 iz\ 1 16\ \ 15\ k P PL