SE502892C2 - Anordning för omvandling av ett binärt flyttal till en 2-logaritm i binär form eller omvänt - Google Patents

Anordning för omvandling av ett binärt flyttal till en 2-logaritm i binär form eller omvänt

Info

Publication number
SE502892C2
SE502892C2 SE9401882A SE9401882A SE502892C2 SE 502892 C2 SE502892 C2 SE 502892C2 SE 9401882 A SE9401882 A SE 9401882A SE 9401882 A SE9401882 A SE 9401882A SE 502892 C2 SE502892 C2 SE 502892C2
Authority
SE
Sweden
Prior art keywords
circuit
sub
logarithm
mantissa
led
Prior art date
Application number
SE9401882A
Other languages
English (en)
Other versions
SE9401882D0 (sv
SE9401882L (sv
Inventor
Erik Hertz
Original Assignee
Foersvarets Forskningsanstalt
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Foersvarets Forskningsanstalt filed Critical Foersvarets Forskningsanstalt
Priority to SE9401882A priority Critical patent/SE502892C2/sv
Publication of SE9401882D0 publication Critical patent/SE9401882D0/sv
Priority to PCT/SE1995/000620 priority patent/WO1995033308A1/en
Publication of SE9401882L publication Critical patent/SE9401882L/sv
Publication of SE502892C2 publication Critical patent/SE502892C2/sv

Links

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
    • H03M7/14Conversion to or from non-weighted codes
    • H03M7/24Conversion to or from floating-point codes

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Complex Calculations (AREA)
  • Analogue/Digital Conversion (AREA)

Description

bUZ 892 MSB följt av de övriga bitarna som bråkdeïar. I det föïjande kommer endast tai utan tecken att diskuteras, det är emeïïertid inte svårt att utvidga resonemangen också ti11 tai med tecken, viïket omedelbart inses av fackmannen.
Exempeïz 1 1 1 0 1 1 0 6 5 4 3 2 1 0 Binärt tai 0 Position 9 1 0 8 7 MSB finns i position 8 och ger exponenten 8dec= 1000b¿n. Mantissan bïir 1.01110110b¿n.
En ïogaritm har formen en heitaisdeï, karakteristikan, och en bråk- talsdei, iogaritmens mantissa, varvid såväï karakteristikan som mantissan i de föijande beräkningarna består av ett förutbestämt antaï bitar.
Den kända 1injärapproximationsmetoden bygger på iikheter meïian ett binärt fïyttai och en 2-ïogaritm i binär form, se fig 1. Såïunda är fïyttaïets exponent och iogaritmens heltaïsdei 1ika. Vidare kan bråkdeien av fïyttaiets mantissa användas som en approximation av ïogaritmens mantissa.
Exempeiz Fiymi decimait 9 so -101 - " - binärt 1.1__o 101-19 approximation av iogaritmen 119 lQ_ I fig 2 visas grafen för 2109 (x) och den ïinjära approximationen som erhâ11s om man använder den kända metoden. Det kan noteras att approx- imationen bara ger rätt värde i punkterna x = 2". Vidare framgår det att det approximativa värdet på iogaritmens he1ta1sde1 a11tid har rätt värde under det att bråkdeien aïitid är mindre e11er iika med det rätta värdet. Eftersom approximationen således aiïtid är mindre eiier ïika med det rätta värdet, är denna kända approximationsmetod mindre ïämpiig i aritmetiska sammanhang. 502 892 Föreliggande uppfinning bygger på den senare metoden och innebär att denna korrigeras så att felet minskas och, vid lämpligt val av ingåen- de systemkonstanter, fördelas i huvudsak lika mycket på ömse sidor om rätt värde, vilket ju är vad man önskar. Detta sker genom att uppfin- ningen får den utformning som framgår av det efterföljande självstän- diga patentkravet. Vidare kan i en speciellt fördelaktig utföringsform uppfinningen direkt implementeras i en digital VLSI-krets.
I det följande kommer uppfinningen att närmare beskrivas under hänvisning till bifogade ritningar, där fig 1 fig 2 fig 3 fig 4 fig 5 fig 6 fig 7 fig 8 fig 9 fig visar principiellt hur omvandlingen sker från binärt flyttal till 2-logaritm i binär form, visar ett diagram över funktionen f(x) = Zlog (x) och en känd linjärapproximation av denna funktion, visar en principiell utformning enligt uppfinningen av hur omvandlingen från flyttalets mantissa till bråkde- len av den förbättrade approximationen av logaritmen kan ske med parallella tillägg, visar en principiell utformning enligt uppfinningen av hur omvandlingen från flyttalets mantissa till bråkde- len av den förbättrade approximationen av logaritmen kan ske med seriella tillägg, visar den principiella utformningen enligt uppfinning en av en delkrets för beräkning av ett tillägg enligt fig 3, 4, 11 och 12, visar en konkret utföringsform av uppfinningen för om vandling från binärt flyttal till 2-logaritm i binär form, vid vilken används ett tillskott och konstanten= = Û'25dec' 2 visar ett diagram över funktionen f(x) = log (x) och en approximation enligt uppfinningen av denna, varvid används gt; tillskott och konstanten = 0,25dec, visar ett förenklat flödesdiagram över ett uppfin- ningsenligt utförande av beräkningen A = zlog VI2+ Q2, visar hur felet fördelades vid en beräkning enligt fig 8, 10 visar principiellt hur omvandlingen sker från den rik- bUZ 892 fig fig fig fig fig fig fig fig fig fig fig fig 12 13 14 15 16 17 18 19 20 21 22 tiga 2-logaritmen i binär form eller den förbättrade approximationen av densamma till binärt flyttal, visar en principiell utformning enligt uppfinningen av hur omvandlingen från logaritmens mantissa till flyt- talets mantissa kan ske med parallella tillägg, visar en principiell utformning enligt uppfinningen av hur omvandlingen från logaritmens mantissa till flyt- talets mantissa kan ske med seriella tillägg, visar en konkret utföringsform av uppfinningen för om vandling från 2-logaritm i binär form till binärt flyttal, vid vilken används ett tillskott och kons- tanten = - 0,25deC. visar hur man kan variera höjden på sågtandsfunktionen i en första förbättring av uppfinningen, visar den principiella utformningen av en förbättrad delkrets för beräkning av ett tillägg enligt uppfin- ningen, visar hur man kan klippa toppen av sågtandsfunktionen vid beräkningen av tillägg (sista) i en andra förbätt- ring av uppfinningen, visar hur man kan använda en trappstegsformad klipp- ning av toppen av sågtandsfunktionen vid beräkningen av tillägg (sista) i en tredje förbättring av uppfin- ningen, visar en variant av fig 3 med en särskild delkrets för att beräkna tillägg (sista), visar den principiella utformningen av en förbättrad delkrets för beräkning av ett tillägg (sista) enligt uppfinningen, visar en förbättrad konkret utföringsform av uppfin- ningen för omvandling från binärt flyttal till 2- logaritm i binär form, visar en första förbättrad konkret utföringsform av uppfinningen för omvandling från 2-logaritm i binär form till binärt flyttal, visar en andra förbättrad konkret utföringsform av uppfinningen för omvandling från 2-logaritm i binär form till binärt flyttal, 502 892 Direkt ur fig 2 kan konstateras att eftersom heltalsdelen i den kända approximationen alltid har rätt värde, är det bråkdelen som behöver förbättras. Detta kan ske genom addition av ett eller flera tillägg T i form av ytterligare linjära approximationer, se fig 3 och 4.
Av fig 2 kan man se, att om en sågtandsliknande funktion adderas till approximationen, såkan felet i förhållande till det rätta värdet minskas avsevärt. Föreliggande uppfinning utnyttjar denna idé. Om man betraktar den kända approximationen av logaritmen i ett intervall där bråkdelen går från 0 till 1 (dvs. heltalsdelen ökar från n till n+1), så ser man att man kan skapa den sökta sågtandsfunktionen genom att den mest signifikanta biten i bråkdelen får styra ett antal XOR- grindar, se fig 5. XOR-grindarnas insignaler är de övriga bitarna i bråkdelen. Detta betyder att när den mest signifikanta biten i bråkde- len av den kända approximationen av logaritmen är en etta kommer de resterande bitarna i bråkdelen att inverteras. Den konkreta implemen- teringen av idén kommer att närmare presenteras nedan.
Först skall dock idén presenteras i mer matematisk form på följande vis. Sågtandsfunktionen sn genereras från bråkdelen xf av den kända approximationen enligt (f-'sl xf - ---1T--- , m jämnt 2 sn = zn 'zn _ m+1> - xf + L _ïr_ , m udda Zn där Eæïï 5 xf < milï , m = o, 1, 2, ..., 2"*1- 1. 2fl+ Sâgtandsfunktionen multipliceras sedan med koefficienter En på ett sådant sätt att summan av tillägget eller tilläggen och den ursprung- liga linjärapproximationen kommer så nära logaritmens rätta värde som man önskar. Noggrannheten för den sålunda skapade approximationen av OUZ ÖYZ logaritmen bestäms av hur många tillskott i form av sågtandsfunktioner som används, liksom av hur väl koefficienterna väljs.
Den generella ekvationen för den enligt uppfinningen förbättrade app- roximationen av logaritmen 2logap(x) visas nedan. Den kända approximationen av 2-logaritmen kallas 2logex(x) och dess heltalsdel xí och dess bråkdel xf. 2logex(x) = xi + xf k 2logap(x) = xi + xf«+%:%Cn-sn, k är antalet använda termer.
Omvändningen till det ovanstående, dvs. omvandlingen från 2-logaritm i binär form till binärt flyttal, i form av en antilog-funktion, sker på snarlikt sätt. Man subtraherar ett eller flera "tillskott" i form av sågtandsfunktioner från den riktiga logaritmen eller, i förekommande fall, den enligt tidigare beräkningar framställda förbättrade approxi- mationen av logaritmen och får då den kända enkla linjärapproximatio- nen av logaritmen enligt fig 2. Sedan kan man gå baklänges från hel- talsdel i den kända approximationen till exponent i det binära flyt- talet och från bråkdel i den kända approximationen till bråkdel i flyttalets mantissa, vilken bråkdel, efter komplettering med en heltals-etta, blir ett uttryck för flyttalets hela mantissa.
Sâgtandsfunktionen an genereras från brákdelen, mantissan, logf(x) av den riktiga eller, enligt uppfinningen beräknade, förbättrade logaritmen enligt logf(x) - , m jämnt Zn _ (zh _ m+1) , m udda zn - logf(x) + W m m+1 _ n+1_ daršíïïíl0gf(X)<-z-ïr+~ï, lll-Û, 1,2, 1. 502 892 Den generella ekvationen för den enligt uppfinningen förbättrade app- roximationen av bråkdelen xf i antilogaritmen antilogap(x) visas nedan. k x = log (x) - Zff C -a , k är antalet använda termer. f f n=0 n n antilogap(x) = (1.0 + xf) - Zxï Som framgår från ekvationerna för sn och an kan samma koefficienter Cn användas.
En stor fördel med föreliggande uppfinning är att den lätt kan över- föras till hårdvara i form av en användarspecifik integrerad krets, en ASIC. Denna digitala krets blir såväl mindre (och mindre komplicerad) som snabbare och exaktare än tidigare kända kretsar för samma ändamål.
Uppbyggnaden kan ske med hjälp av register, XDR-grindar, multiplikatorer och adderare.
Utgångsvis finns flyttalets exponent och mantissa i ett register, se fig 1. Exponenten leds från detta till ett register som skall lagra den förbättrade approximationen av logaritmen efter omvandlingen och lagras där direkt som denna approximations heltalsdel. Bråkdelen av flyttalets mantissa leds, dels direkt till en adderare, dels till en eller flera delkretsar som bildar tillägg 1, 2, 3, _.. . Till den första delkretsen leds alla bråkdelens bitar, till den andra delkretsen leds bråkdelens bit nummer två och följande, till den tredje delkretsen leds bråkdelens bit nummer tre och följande o.s v.
I fig 3 visas hur flera sådana tillägg adderas parallellt under det att fig 4 visar seriell addition av tilläggen. Normalt torde det vara lämpligast att utföra additionen parallellt.
Dessa delkretsar, se fig 5, innefattar ett antal XOR-grindar. Till dessa XOR-grindar leds på den ena ingången den mest signifikanta biten av de bitar som leds till varje delkrets och på den andra ingången, för varje XOR-grind, olika följande bitar ur bråkdelen, vilket medför 502 892 att de följande bitarna inverteras när den mest signifikanta biten är 1 och förblir oförändrade när denna är 0.
Utsignalerna från XOR-grindarna skall multipliceras med en lämplig skalfaktor, konstanterna Cl, C2, ..., så att felet minimeras. Detta kan, som visas i fig 5, ske genom en multiplikation i en multiplika- tor.
I adderaren resp. adderarna adderas sedan bråkdelen av flyttalets mantissa med de olika tilläggen, varvid på deoanslutna ingångarna lägges fasta nollor, även CIN (carry-in) är noll. Bakgrunden till att CIN sätts till noll är att man kan se att approximationen förbättras något om den andra flanken av sågtandsfunktionen kan sänkas lite. Ett enkelt sätt att göra detta är att sätta CIN till noll i stället för det normala värdet ett.
Resultatet av additionen leds till registret som skall lagra den förbättrade approximationen av logaritmen efter omvandlingen, där det utgör denna approximations bråkdel.
Det har visat sig att det för praktiska behov dels ofta inte behövs mer än ett tillägg, dels att felet blir mycket litet om konstanten väljs till 0,25deC. Detta är mycket lyckligt ty, eftersom 0,25dec är lika med 0,01b¿n, motsvarar detta ett skift två steg för tilläggets ingång i adderaren, se fig 6. Man behöver alltså i detta fall inte använda sig av en speciell multiplikator, utan kan låta multiplikatio- nen ske med hjälp av ledningsdragningen. På samma sätt skulle multi- plikationen kunna utföras genom ledningsdragningen vid andra kons- tanter, i de fall dessa är en jämn potens av två. Kretsen blir alltså i alla dessa fall enklare.
I fig 7 visas grafen för zlog (x) och den förbättrade approximationen av denna som erhålls vid föreliggande uppfinning, om man enligt ovan använder ett tillskott och konstanten = 0,25dec. Man kan direkt genom jämförelse mellan fig 7 och fig 2 se hur mycket bättre den förbättrade omvandlingsmetoden är än den kända. ” “i 502 892 Dmvandlingsmetoden enligt uppfinningen har också provats genom simule- rade beräkningar av en vanlig radaralgoritm som bestämmer amplituden A ur amplitudens realdel I och imagimärdel Q, A = ziogv 12 + 02.
Processorns insignal och utsignal var 11 resp. 8 bitar.
I fig 8 visas ett förenklat flödesdiagram över utförandet av beräk- ningarna. De inkommande signalerna I och Q är redan i flyttalsform.
Exponenten har 4 bitar och mantissan (utan tecken) 7 bitar. I de första blocken FLC omvandlas flyttal till logaritmform i enlighet med den uppfinningsenliga metoden. Därpå sker kvadreringen i form av ett enkelt skift i logaritmform. I nästa block LFC omvandlas logaritmerna tillbaka till flyttal, eftersom nästa beräkningssteg är en addition.
Efter additionen sker ånyo en omvandling till logaritmform i ett block FLC, varpå kvadratroten beräknas som ett enkelt skift. Såväl heltals- delen som brâkdelen av den logaritmiska utsignalen har fyra bitar.
Simuleringen skedde med 400000 olika komplexa tal, alla från den första kvadranten av det komplexa talplanet. Resultatet av beräkningen enligt ovan jämfördes med det korrekta beräknade och avrundade värdet på amplituden. Fig 9 visar hur felen fördelades. Det framgår att den uppfinningsenligt beräkningen aldrig skapade ett större fel än en bit i logaritmens mantissa och att det i ca 80 % av fallen inte finns något fel alls. Vidare framgår att de fel som finns, är relativt jämnt fördelade på ömse sidor om rätt värde.
Det är möjligt att genom enkla förändringar i den principiella utform- ningen ytterligare förbättra resultaten.
En första typ av förbättring, man kan genomföra, är att variera höjden på sâgtandsfunktionen i de olika intervallen, se fig 14. Detta kan man göra genom att man använder olika konstanter vid multiplikationen i de olika intervallen. I fig 15 visas en variant av en delkrets enligt fig 5 för att beräkna ett tillägg. I kretsens minne är olika konstanter lagrade för olika intervall. Information om aktuellt intervall styr minnet att ge rätt konstant. :v 502 892 I praktisk tillämpning är det viktigt att minnet innehåller så få konstanter som möjligt, annars blir minnet långsamt. Antalet konst- anter för de olika tilläggen är 2"r_1, där nr är tilläggets nummer.
En andra typ av förbättring är att man klipper toppen av tänderna i sågtandsfunktionen vid beräkning av det sista tillägget, kallat tillägg (sista), se fig 16. Förutom som en ren klippning, kan klipp- ningen ske på olika speciella sätt. Man kan ersätta toppen av såg- tandskurvan mellan gränserna för klippning med vilken som helst önskad kurvform med hjälp av information lagrad i någon form av minne. I praktiken är det troligt att någon form av trappstegsvis utformad klippning kommer att användas. Fig 17 visar en sådan klippning med tvâ steg.
I båda dessa senare fall krävs det således en speciell delkrets för att beräkna tillägg (sista), se fig 18. I fig 19 visas ett exempel på en sådan krets.
Delkretsen för tillägg (sista) skiljer sig från övriga delkretsar genom att den mellan XOR-grindarna och multiplikatorn är försedd med en MUX, som är anordnad att styras av en logikkrets. Med MUX:en klipper man bort toppen på sågtandsfunktionen som delkretsen annars skulle ha skapat. MUX:en kan förutom av logikkretsen också vara styrd av ett minne, som kan ge det efterfrågade utseendet på kurvan inom klippningsintervallet, exempelvis trappstegsform.
I fig 20 visas en förbättrad konkret utföringsform av uppfinningen för omvandling från binärt flyttal till 2-logaritm i binär form, i vilken man använder sig av klippning av sâgtandsfunktionens toppar vid beräk- ning av tillägg (sista). MUX:en styrs av OCH-grinden, vilken gör att tillägget blir konstant då de mest signifikanta bitarna i tillägget är ettor. För att lyfta upp ytterligare bitar av approximationen har en exklusiv-ELLER-grind kopplats till Carry-in (CIN). Denna grind ökar resultatet med ett då endast en av de tvâ mest signifikanta bitarna i tillägget är ett.
II 502 892 Om vi sedan ser på omvändningen, dvs. omvandlingen från 2-logaritm i binär form till binärt flyttal, ser kretsen i princip likadan ut som ovan beskrivits.
Utgångsvis finns logaritmens karakteristika och mantissa i ett register, se fig 10. Karakteristikan, heltalsdelen, leds från detta till ett register som skall lagra flyttalet efter omvandlingen och lagras där direkt som dettas exponent. Logaritmens mantissa leds, se fig 11 och 12, dels direkt till en adderare, dels till en eller flera delkretsar som bildar tillägg 1, 2, 3, ... . Till den första delkretsen leds alla bråkdelens bitar, till den andra delkretsen leds bråkdelens bit nummer tvâ och följande, till den tredje delkretsen leds bråkdelens bit nummer tre och följande o.s.v.
I fig 11 visas hur flera sådana tillägg adderas parallellt under det att fig 12 visar seriell addition av tilläggen. Normalt torde det vara lämpligast att utföra additionen parallellt.
Dessa delkretsar är exakt likadana som de som används i omvandlingen från flyttal till logaritm, se fig 5, och innefattar ett antal XOR- grindar. Till dessa XOR-grindar leds på den ena ingången den mest signifikanta biten av de bitar som leds till varje delkrets och på den andra ingången, för varje XOR-grind, olika följande bitar ur bråk- delen, vilket medför att de följande bitarna inverteras när den mest signigikanta biten är 1 och förblir oförändrade när denna är O.
Utsignalerna från XOR-grindarna skall multipliceras med en lämplig skalfaktor, konstanterna Cl, CZ, ..., så att felet minimeras. Obser- vera att konstanterna i detta fall är negativa. Detta kan, som visas i fig 5, ske genom en multiplikation i en multiplikator.
I adderaren resp. adderarna adderas sedan en inledande etta, som skall bli det resulterande binära flyttalets heltals-etta (det binära talets MSB) med brâkdelen av den riktiga logaritmen eller den förbättrade approximationen av densamma, och de olika tilläggen (som har negativt tecken), varvid på de oanslutna ingângarna lägges fasta ettor, även CIN (carry-in) är ett. Bakgrunden till att CIN sätts till ett är att man kan se att approximationen förbättras något om den andra flanken 502 892 “ av sågtandsfunktionen kan höjas lite. Ett enkelt sätt att göra detta är att sätta CIN till ett i stället för det normala värdet noll.
Resultatet leds till registret som skall lagra flyttalet efter omvandlingen, där det bildar flyttalets mantissa.
Det har visat sig att det för praktiska behov dels ofta inte behövs mer än ett tillägg, dels att felet blir mycket litet om konstanten väljs till -0,25¿ec. Detta är mycket lyckligt ty, eftersom 0,25deC = = 0,01bin, motsvarar detta ett skift två steg för tilläggets ingång i adderaren, se fig 13. Man behöver alltså i detta fall inte använda sig av en speciell multiplikator, utan kan låta multiplikaitonen ske med hjälp av ledningsdragningen. På samma sätt skulle multiplikationen kunna utföras genom ledningsdragningen vid andra konstanter, i de fall dessa är en jämn potens av två. Kretsen blir alltså i alla dessa fall enklare.
Det negativa tecknet på konstanten erhålles här genom att man använder sig av en inverterare. I fig 13 visas detta genom den inverterare som är placerad i ledningen för den mest signifikanta biten, den bit som leds till varje XDR-grind inom en delkrets, vid beräkningen av de olika tilläggen.
Det är, också i detta fall vid omvandling till binärt flyttal, möjligt att, genom enkla förändringar i den principiella utformningen, ytterligare förbättra resultaten.
En första typ av förbättring, man kan genomföra, är att variera höjden på sâgtandsfunktionen i de olika intervallen, se fig 14. Detta kan man göra genom att man använder olika konstanter vid multiplikationen i de olika intervallen. Den variant av delkrets för beräkning av tillägg som härvid används är exakt likadan som den som används vid omvandling från flyttal till logaritm och som visas i fig Lš.
En andra typ av förbättring är att man klipper toppen av tänderna i sågtandsfunktionen vid beräkning av det sista tillägget, kallat tillägg (sista), se fig 16. Förutom som en ren klippning, kan klipp- 13 502 892 ningen ske på olika speciella sätt. Man kan ersätta toppen av såg- tandskurvan mellan gränserna för klippning med vilken som helst önskad kurvform med hjälp av information lagrad i någon form av minne. I praktiken är det troligt att någon form av trappstegsvis utformad klippning kommer att användas. Fig 17 visar en sådan klippning med två steg.
I båda dessa senare fall krävs det således, på samma sätt som beskri- vits i anslutning till omvandling från flyttal till logaritm, en speciell delkrets för att beräkna tillägg (sista). Den variant av delkrets för beräkning av tillägg (sista) som härvid används är exakt likadan som den som används vid omvandling från flyttal till logaritm och som visas i fig 19.
I fig 21 visas en första förbättrad konkret utföringsform av uppfin- ningen för omvandling frân 2-logaritm i binär form till binärt flyt- tal, i vilken man använder sig av klippning av sâgtandsfunktionens toppar vid beräkning av tillägg (sista). MUX:en styrs av NELLER- grinden, vilken gör att tillägget blir konstant dâ de mest signifikan- ta bitarna i tillägget är ettor. För att lyfta upp ytterligare bitar av approximationen har det inverterade värdet av utresultatet av en exklusiv-ELLER-grind kopplats till Carry-in (CIN). Denna grind minskar resultatet med ett då endast en av de två mest signifikanta bitarna i tillägget är noll.
I vissa tillämpningar kan det vara bättre att utesluta exklusiv-ELLER- grinden och inverteraren på det sätt som visas i fig 22.

Claims (9)

502 892 n Patentkrav:
1. Anordning för omvandling av ett binärt flyttal till en 2-logaritm i binär form innefattande ett ingângsregister där flyttalet är lagrat, ett utgångsregister för den beräknade 2-logaritmen, en anordning som överför flyttalets exponent från ingångsregistret till utgångsregist- ret, där den direkt utgör logaritmens karakteristika, en anordning som överför bråkdelen av flyttalets mantissa från ingångsregistret, dels till en adderare, dels till en eller flera deikretsar som bildar till- lägg, varvid alla bitar i bråkdelen av flyttalets mantissa är anordna- de att ledas till den första deikretsen, bit nummer tvâ och följande är anordnade att ledas till den eventuellt existerande andra delkret- sen, bit nummer tre och följande är anordnade att ledas till den even- tueilt existerande tredje deikretsen o.s.v. och där varje delkrets innefattar ett antal XOR-grindar, till antalet en färre än det antal bitar som leds till den aktuella deikretsen, varvid den mest signifi- kanta biten av de bitar som leds till varje delkrets är anordnad att ledas till denna delkrets samtliga XOR-grindars ena ingång och bit två är anordnad att ledas till denna delkrets första XOR-grinds andra ingång, bit tre till denna delkrets andra XOR-grinds andra ingång, bit fyra till denna delkrets tredje XOR-grinds andra ingång o.s.v. och där utsignalerna från XOR-grindarna är anordnade att multipliceras med en lämplig skalfaktor, en anordning som överför tilläggen till adderaren, nämnda adderare som adderar bråkdelen av flyttalets mantissa och nämnda tillägg och en anordning som överför summan från adderaren till utgångsregistret där den utgör 2-iogaritmens mantissa, k ä n n e - t e c k n a d a v att deikretsen eller delkretsarna är anordnade att kunna använda olika skalfaktorer i olika beräkningsintervall.
2. Anordning enligt patentkraven 1, k ä n n e t e c k n a d a v att varje delkrets innefattar ett minne som är anordnat att styras av information om aktuellt intervall och till följd därav tillföra en i deikretsen belägen multiplikator den aktuella skalfaktorn.
3. Anordning för omvandling av en 2-logaritm i binär form till ett binärt flyttal innefattande ett ingångsregister där 2-logaritmen är lagrad, ett utgångsregister för det beräknade flyttalet, en anordning som överför logaritmens karakteristika från ingångsregistret till 502 892 utgångsregistret, där den direkt utgör flyttalets exponent, en anord- ning som överför logaritmens mantissa från ingångsregistret, dels till en adderare, dels till en eller flera delkretsar som bildar tillägg, varvid alla bitar i logaritmens mantissa är anordnade att ledas till den första delkretsen, bit nummer två och följande är anordnade att ledas till den eventuellt existerande andra delkretsen, bit nummer tre och följande är anordnade att ledas till den eventuellt existerande tredje delkretsen o.s.v. och där varje delkrets innefattar ett antal XOR-grindar, till antalet en färre än det antal bitar som leds till den aktuella delkretsen, varvid den mest signifikanta biten av de bitar som leds till varje delkrets är anordnad att ledas till en inverterare och därefter till denna delkrets samtliga XOR-grindars ena ingång och bit tvâ är anordnad att ledas till denna delkrets första XOR-grinds andra ingång, bit tre till denna delkrets andra XOR-grinds andra ingång, bit fyra till denna delkrets tredje XOR-grinds andra ingång o.s.v. och där utsignalerna från XOR-grindarna är anordnade att multipliceras med en lämplig skalfaktor, en anordning som överför tilläggen till adderaren, nämnda adderare som adderar logaritmens mantissa och nämnda tillägg till bildande av bråkdelen av flyttalets mantissa och adderar denna till en heltals-etta och en anordning som överför summan från adderaren till utgångsregistret där den utgör flyttalets mantissa, k ä n n e t e c k n a d a v att delkretsen eller delkretsarna är anordnade att kunna använda olika skalfaktorer i olika beräkningsintervall.
4. Anordning enligt patentkraven 3, k ä n n e t e c k n a d a v att varje delkrets innefattar ett minne som är anordnat att styras av information om aktuellt intervall och till följd därav tillföra en i delkretsen belägen multiplikator den aktuella skalfaktorn.
5. Anordning enligt något av de tidigare patentkraven, k ä n n e - t e c k n a d a v att den delkrets som beräknar det sista tillägget, tillägg (sista), mellan XOR-grindarna och multiplikatorn är försedd med en MUX som är anordnad att styras av en logikkrets så att toppen av den sågtandsfunktion som kretsen i övrigt skapar, klipps av.
6. Anordning enligt patentkravet 5, k ä n n e t e c k n a d a v att delkretsen innefattar ett minne som är kopplat till MUX:en och 502 892 m anordnat att tiïïsammans med iogikkretsen styra MUX:en så att den bortkïippta kurvdeien ersätts med en godtyckïig funktion, som är lagrad i minnet.
7. Anordning enïigt patentkravet 6, k ä n n e t e c k n a d a v att minnet är anordnat att tiiïsammans med ïogikkretsen styra MUX:en så att klippningen sker trappstegsformat.
8. Anordning eniigt patentkravet 7, k ä n n e t e c k n a d a v att minnet är anordnat att tiiïsammans med ïogikkretsen styra MUX:en så att kiippningen sker i två steg.
9. Anordning eniigt något av de tidigare patentkraven, k ä n n e - t e c k n a d a v att den är utförd som en användarspecifik inte- grerad krets.
SE9401882A 1994-06-01 1994-06-01 Anordning för omvandling av ett binärt flyttal till en 2-logaritm i binär form eller omvänt SE502892C2 (sv)

Priority Applications (2)

Application Number Priority Date Filing Date Title
SE9401882A SE502892C2 (sv) 1994-06-01 1994-06-01 Anordning för omvandling av ett binärt flyttal till en 2-logaritm i binär form eller omvänt
PCT/SE1995/000620 WO1995033308A1 (en) 1994-06-01 1995-05-31 A device for conversion of a binary floating-point number into a binary 2-logarithm or the opposite

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
SE9401882A SE502892C2 (sv) 1994-06-01 1994-06-01 Anordning för omvandling av ett binärt flyttal till en 2-logaritm i binär form eller omvänt

Publications (3)

Publication Number Publication Date
SE9401882D0 SE9401882D0 (sv) 1994-06-01
SE9401882L SE9401882L (sv) 1995-12-02
SE502892C2 true SE502892C2 (sv) 1996-02-12

Family

ID=20394197

Family Applications (1)

Application Number Title Priority Date Filing Date
SE9401882A SE502892C2 (sv) 1994-06-01 1994-06-01 Anordning för omvandling av ett binärt flyttal till en 2-logaritm i binär form eller omvänt

Country Status (2)

Country Link
SE (1) SE502892C2 (sv)
WO (1) WO1995033308A1 (sv)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7284027B2 (en) 2000-05-15 2007-10-16 Qsigma, Inc. Method and apparatus for high speed calculation of non-linear functions and networks using non-linear function calculations for digital signal processing

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5365465A (en) * 1991-12-26 1994-11-15 Texas Instruments Incorporated Floating point to logarithm converter
SE470542B (sv) * 1992-12-07 1994-07-25 Foersvarets Forskningsanstalt Anordning för omvandling av ett binärt flyttal till en 2- logaritm i binär form eller omvänt
FI96810C (sv) * 1993-05-26 1996-08-26 Nokia Oy Ab Förfarande och anordning för att omvandla en analog signal till ett digitalt flyttal och för att omvandla ett digitalt flyttal till en analog signal

Also Published As

Publication number Publication date
WO1995033308A1 (en) 1995-12-07
SE9401882D0 (sv) 1994-06-01
SE9401882L (sv) 1995-12-02

Similar Documents

Publication Publication Date Title
Cho et al. Design of low-error fixed-width modified booth multiplier
CA1041212A (en) Fast fourier transform stage using floating point numbers
EP3447634B1 (en) Non-linear function computing device and method
KR900002169A (ko) 부동 소수점 연산장치
Kanhe et al. Design and implementation of floating point multiplier based on vedic multiplication technique
Sohn et al. A fused floating-point three-term adder
US4928259A (en) Sticky bit predictor for floating-point multiplication
KR930700904A (ko) 수치표현 변환장치 및 그것을 사용한 벡터·프로세서·유니트
Rawat et al. Design and analysis of ALU: Vedic mathematics approach
KR100465371B1 (ko) 덧셈 및 반올림 연산을 동시에 수행하는 부동 소수점alu 연산 장치
US5337266A (en) Method and apparatus for fast logarithmic addition and subtraction
KR970073162A (ko) 단일명령사이클에서 2정수의 절대차 산출방법 및 장치(Calculating the absolute difference of two integer numbers in a single instruction cycle)
Bhoyar et al. Design and implementation of goldschmidts algorithm for floating point division and square root
SE470542B (sv) Anordning för omvandling av ett binärt flyttal till en 2- logaritm i binär form eller omvänt
Gowreesrinivas et al. Comparative study on performance of single precision floating point multiplier using vedic multiplier and different types of adders
SE502892C2 (sv) Anordning för omvandling av ett binärt flyttal till en 2-logaritm i binär form eller omvänt
KR100290906B1 (ko) 부동소수점곱셈기에서반올림과덧셈을동시에수행하는장치및방법
US4956802A (en) Method and apparatus for a parallel carry generation adder
Zhu et al. Error flatten logarithm approximation for graphics processing unit
San et al. Hardware implementation of floating-point operating devices by using IEEE-754 binary arithmetic standard
Arun et al. A binary high speed floating point multiplier
KR20010067226A (ko) 인터폴레이션 방법 및 장치
Mounika et al. FPGA Implementation of Power Efficient Floating Point Fused Multiply-Add Unit
Bärthel Application of Alternative Number Formats for Digital Signal Processing-An Evaluation on Sets Of Real Numbers
Krstić et al. BINARY TO RNS ENCODER FOR THE MODULI SET {2n− 1, 2n, 2n+ 1} WITH EMBEDDED DIMINISHED-1 CHANNEL FOR DSP APPLICATION

Legal Events

Date Code Title Description
NUG Patent has lapsed

Ref document number: 9401882-7

Format of ref document f/p: F