SE440562B - MULTIPLICATOR CIRCUIT FOR MULTIPLICATING A FIRST BINER NUMBER WITHOUT SIGN WITH ANOTHER BINERIC NUMBER WITHOUT SIGN AND CREATING A CODED BINER PRODUCT WITHOUT SIGN - Google Patents

MULTIPLICATOR CIRCUIT FOR MULTIPLICATING A FIRST BINER NUMBER WITHOUT SIGN WITH ANOTHER BINERIC NUMBER WITHOUT SIGN AND CREATING A CODED BINER PRODUCT WITHOUT SIGN

Info

Publication number
SE440562B
SE440562B SE7903354A SE7903354A SE440562B SE 440562 B SE440562 B SE 440562B SE 7903354 A SE7903354 A SE 7903354A SE 7903354 A SE7903354 A SE 7903354A SE 440562 B SE440562 B SE 440562B
Authority
SE
Sweden
Prior art keywords
bits
bit
register
binary
significant
Prior art date
Application number
SE7903354A
Other languages
Swedish (sv)
Other versions
SE7903354L (en
Inventor
E A Munter
C Ciancibello
Original Assignee
Northern Telecom Ltd
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 Northern Telecom Ltd filed Critical Northern Telecom Ltd
Publication of SE7903354L publication Critical patent/SE7903354L/en
Publication of SE440562B publication Critical patent/SE440562B/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/38Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06F7/48Methods 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/49Computations with a radix, other than binary, 8, 16 or decimal, e.g. ternary, negative or imaginary radices, mixed radix non-linear PCM
    • 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/30Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
    • H03M7/50Conversion to or from non-linear codes, e.g. companding

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Pure & Applied Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Nonlinear Science (AREA)
  • Computing Systems (AREA)
  • Computational Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Image Processing (AREA)
  • Transmission Systems Not Characterized By The Medium Used For Transmission (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Facsimile Image Signal Circuits (AREA)
  • Error Detection And Correction (AREA)
  • Complex Calculations (AREA)

Description

79033544; den resulterande linjära produkten att innefatta 24 binära bitar. Denna 24-bitars linjära produkt måste sedan trans- formeras tilldet sju bitars kodade PCH-formatet. 79033544; the resulting linear product to include 24 binary bits. This 24-bit linear product must then be transformed to the seven-bit encoded PCH format.

Enligt känd teknik utnyttjas kretsar som multiplice- rar två linjära digitala ord och alstrar en linjär digital produkt. I det amerikanska patentet 4 027 147 beskrivs ett exempel på en sådan krets. Den kända tekniken innefattar även kretsar som expanderar eller komprimerar eller på annat sätt modifierar ett digitalt ord. Det amerikanska patentet 3 594 560 anger en sådan krets för expandering av ett digi- talt órd. Det amerikanska patentet 4 07l 743 anger en skalom- vandlande krets för ett digitalt ord. Det amerikanska pa- tentet 4 069 478 hänför sig till en binär/binär-kodad deci- malomvandlare.According to known technology, circuits are used that multiply two linear digital words and generate a linear digital product. U.S. Patent 4,027,147 discloses an example of such a circuit. The prior art also includes circuits that expand or compress or otherwise modify a digital word. U.S. Patent 3,594,560 discloses such a circuit for expanding a digital word. U.S. Patent 4,071,774 discloses a scale conversion circuit for a digital word. U.S. Patent 4,069,478 relates to a binary / binary coded decimal converter.

Ett problem med sådana anordningar då de utnyttjas i tandem, dvs en multiplikatorkrets följd av en kodningskrets, är att dyrbar tid går förlorad vid genomförande av de tvâ beräkningarna konsekutivt, först utföres multiplikationen och sedan då multiplikationen är fullbordad kodas det digi- tala talet. För att spara tid vid utförandet av beräkningar- na är det önskvärt att utföra multiplikationen och kodningen samtidigt.A problem with such devices when used in tandem, i.e. a multiplier circuit followed by a coding circuit, is that precious time is lost in performing the two calculations consecutively, first the multiplication is performed and then when the multiplication is completed the digital number is coded. To save time when performing the calculations, it is desirable to perform the multiplication and coding simultaneously.

Enligt föreliggande uppfinning åstadkommes en multi- plikator/kodningskrets i vilken den kodade binära produkten är tillgänglig vid utgången omedelbart då multiplikationen har utförts.According to the present invention there is provided a multiplier / coding circuit in which the coded binary product is available at the output immediately after the multiplication has been performed.

Mer detaljerat innefattar föreliggande uppfinning ett 25 bitars skiftregister för lagring av ett första l2 bitars binärt tal (utan förtecken) och ett l2 bitars skift- register för lagring av ett andra l2 bitars binärt tal (utan förtecken). Utsignalen från varje skiftregister till- föres en ingång hos en OCH-grind med två ingångar, vilken utför den verkliga multiplikationen. En första klocka styr skiftningen i det första skiftregistret. Det första skift- registret har sin utgång återkopplad till dess ingång, så att efter 25 pulser från den första klockan är det första registret åter i sitt utgångsläge. Det andra skiftregist- v9o3ss4Fa ret styrs av en andra klocka, som har en pulshastighet som motsvarar l/24 av den första klockans pulshastighet.In more detail, the present invention includes a 25 bit shift register for storing a first 12 bit binary number (without sign) and a 12 bit shift register for storing a second 12 bit binary number (without sign). The output of each shift register is applied to an input of an AND gate with two inputs, which performs the actual multiplication. A first clock controls the shift in the first shift register. The first shift register has its output fed back to its input, so that after 25 pulses from the first clock, the first register is again in its initial position. The second shift register v9o3ss4Fa ret is controlled by a second clock, which has a pulse rate corresponding to l / 24 of the pulse rate of the first clock.

Utsignalen från OCH-grinden tillföres en ackumulator, som innefattar ett 24 bitars skiftregister. Ackumulatorn summerar delprodukterna från multiplikationsprocessen (er- hållna frân OCH-grinden) och lagrar den resulterande summan i dess 24 bitars skiftregister. Vid start av processen ini- tialinställes det 24 bitars skiftregistret på 33-211 i bi- dvs O00000Ol0000lO000000O000. En tre bitars binär räknare räknar antalet logiska nollor som inmatas till det när form, 24 bitars skiftregistret, varvid räknaren återställes till O vid uppträdandet av varje logisk l som inmatas till skift- registret. Då den mest signifikanta logiska l i den slutliga linjära binära produkten befinner sig vid ingången till det 24 bitars skiftregistret återställes räknaren till 0 för sista gången. Följaktligen motsvarar det slutliga värdet i räknaren antalet ledande nollor i den linjära produkten utan förtecken. Det binära värdet inverteras sedan (bit för bit) och resultatet blir de tre mest signifikanta bitarna i den kodade produkten (utan förtecken).The output signal from the AND gate is applied to an accumulator, which comprises a 24-bit shift register. The accumulator sums the sub-products from the multiplication process (obtained from the AND gate) and stores the resulting sum in its 24-bit shift register. At the start of the process, the 24-bit shift register is initially set to 33-211 in, for example, O00000Ol0000lO000000O000. A three-bit binary counter counts the number of logic zeros input to the when form, the 24-bit shift register, whereby the counter is reset to 0 at the occurrence of each logic 1 input to the shift register. When the most significant logic 1 in the final linear binary product is at the input of the 24-bit shift register, the counter is reset to 0 for the last time. Consequently, the final value in the counter corresponds to the number of leading zeros in the linear product without signs. The binary value is then inverted (bit by bit) and the result is the three most significant bits in the coded product (without sign).

Dessutom är ett fyra bitars temporärt minne kopplat till de fyra mest signifikanta bitpositionerna i det 24 bitars registret. Vid uppträdandet av varje logisk l vid ingången till skiftregistret laddas innehållet i de fyra mest signifikanta bitpositionerna i skiftregistret in i det fyra bitars temporära minnet. Då den mest signifikanta logiska l i den slutliga linjära binära produkten befinner sig vid ingången till det 24 bitars skfitregistret laddas det fyra bitars temporära minnet för sista gången. De fyra logiska bitarna som är lagrade i det temporära minnet blir de fyra minst signifikanta bitarna i den kodade produkten.In addition, a four-bit temporary memory is connected to the four most significant bit positions in the 24-bit register. When each logic 1 occurs at the input to the shift register, the contents of the four most significant bit positions in the shift register are loaded into the four-bit temporary memory. When the most significant logic 1 in the final linear binary product is located at the input of the 24-bit shift register, the four-bit temporary memory is loaded for the last time. The four logical bits stored in the temporary memory become the four least significant bits in the encoded product.

Den kodade produkten befinner sig nu i parallellform och en teckenbit (erhållen på i och för sig känt sätt) kan in- föras före den minst signifikanta biten i den kodade pro- dukten.The coded product is now in parallel form and a character bit (obtained in a manner known per se) can be inserted before the least significant bit in the coded product.

Uttryckt i andra ord avser föreliggande uppfinning en krets för transformering av ett n+m bitars binärt tal utan förtecken till ett 7-bitars binärt tal 7903354-læ I utan förtecken, varvid n, m och q är positiva heltal med n + m 2213 och q ¿_n+m, vilken krets innefattar: organ för att addera ett konstant tal i binär form till nämnda tal med n+n1bitar därvid alstrande ett förstärkt binärt tal, organ för räkning av antalet ledande nollor i det förstärkta binära talet och för bildande av radix-minus- ett-komplementet av räknevärdet, vilket komplement bildar de q-p mest signifikanta bitarna av det q bitars kodade binära talet, varvid p är ett positivt heltal och så valt att 04.p<¿q samt organ för extraktion av de p minst signi- fikanta logiska bitarna omedelbart intill den mest signifi- kanta logiska l från det förstärkta talet och utnyttjande av dessa som de p minst signifikanta bitarna i den kodade produkten. Vid en utföringsform är n+m = 24, q = 7, p = 4 och det konstanta talet är: - . _ (q"p) (zxzpJrnxzßnfln) (2 +p_+1fl Uttryckt på ytterligare ett annat sätt avser före- liggande uppfinning en multiplikatorkrets för multiplicering av ett första binärt tal utan förtecken med maximalt n bi- Anära bitar med ett andra binärt tal utan förtecken med maxi- malt m binära bitar och alstring av en kodad binär produkt utan förtecken med maximalt q binära bitar, varvid n, m och q samtliga är psoitiva heltal med n + m >_q, vilken multi- likatorkrets innefattar: ett ackumulatororgan innefattande ett skiftregister med n + m bitpositioner för lagring av både delprodukterna och den slutliga icke kodade produkten av de första och andra binära talen, vilket register förin- ställes till ett initiellt binärt Märde,en q-p bitars binär räknare inkopplad för att öka dess räknevärde med ett för varje logisk 0 som inmatas till registret, vilken räknare återställes till 0 vid uppträdandet av varje logisk l vid ingången till registret, där p är ett positivt heltal och så valt att 0<.p¿_q, samt en temporär minneskrets inkopplad för att mottaga bitarna lagrade i de p mest signifikanta bit- positionerna i registret, vilket temporära minne är mottag- ligt för ingångssignalen till registret för att ladda bi- tarna från registret i minneskretsen vid varje uppträdande vsoázšl-4 av en logisk l vid ingången till registret, varvid de mest signifikanta bitarna av den kodade produkten utgör radix-minus-ett-komplementet till det slutliga räknevärdet lagrat i räknaren och de minst signifikanta bitarna av den kodade produkten utgör det slutliga binära talet lagrat i det temporära minnet, Vid en utföringsform är n = l2, m = l2, q = 7 och p = 4 och nämnda initiella binära värde är 0000000l000Ol0OOO0000000.In other words, the present invention relates to a circuit for transforming an n + m bit binary without a sign into a 7-bit binary number 7903354-læ I without a sign, wherein n, m and q are positive integers with n + m 2213 and q ¿_n + m, which circuit comprises: means for adding a constant number in binary form to said number with n + n1 bits thereby generating an amplified binary number, means for counting the number of conductive zeros in the amplified binary number and for forming the radix-minus-one-complement of the count value, which complement forms the qp most significant bits of the q-bit coded binary number, where p is a positive integer and so chosen that 04.p <¿q and means for extracting the p least significant logical bits immediately adjacent to the most significant logical 1 from the amplified number and utilizing these as the least significant bits in the encoded product. In one embodiment, n + m = 24, q = 7, p = 4 and the constant number is:. (q "p) (zxzpJrnxzßn fl n) (2 + p_ + 1 fl Expressed in yet another manner, the present invention relates to a multiplier circuit for multiplying a first binary number without a sign by a maximum of n b. Other bits with a second binary number without signs with maximum m binary bits and generating an encoded binary product without signs with maximum q binary bits, n, m and q all being positive integers with n + m> _q, which multicilator circuit comprises: an accumulator means comprising a shift register with n + m bit positions for storing both the sub-products and the final uncoded product of the first and second binary numbers, which register is preset to an initial binary Cage, a qp bit binary counter connected to increase its count value by one for each logic 0 input to the register, which counter is reset to 0 at the occurrence of each logic l at the input to the register, where p is a positive integer and so selected that 0 <.p¿_q, and a temporary memory circuit connected to receive the bits stored in the p most significant bit positions in the register, which temporary memory is receptive for the input signal to the register to charge the bits from the register in the memory circuit at each occurrence vsoázšl-4 of a logic l at the input to the register, the most significant bits of the coded product being the radix-minus-one complement to the final count value stored in the counter and the least significant bits of the coded product being the final binary number stored in the temporary memory. an embodiment is n = l2, m = l2, q = 7 and p = 4 and said initial binary value is 0000000l000Ol0OOO0000000.

En föredragen utföringsform av uppfinningen kommer nu att beskrivas mer i detalj under hänvisning till bi- fogade ritningar.A preferred embodiment of the invention will now be described in more detail with reference to the accompanying drawings.

Fig. l är ett förenklat blockschema över en multi- plikator- och kodningskrets enligt uppfinningen.Fig. 1 is a simplified block diagram of a multiplier and coding circuit according to the invention.

Pig. 2 är en grafisk representation av de manipula- tioner som utföres på den icke kodade produkten för erhål- lande av den kodade produkten.Pig. 2 is a graphical representation of the manipulations performed on the uncoded product to obtain the coded product.

Den inbördes förbindningen av de olika komponenterna visas i figur l till vilken nu hänvisas. Skiftregistret l0 innehåller 25 bitpositioner och kommer följaktligen att benämnas såsom ett 25 bitars skiftregister. Vid den i figur l visade utföringsformen innehåller det binära talet J, som skall lagras i skiftregisteret l0, maximalt l2 bitar och då skiftregistret initialiseras är dessa 12 bitar beläg- na vid den högra sidan av registret 10, dvs i dettas 12 minst signifikanta bitpositioner. Återstående bitpositioner, dvs de l3 mest signifikanta positionerna, är samtliga O.The interconnection of the various components is shown in Figure 1, to which reference is now made. The shift register 10 contains 25 bit positions and will consequently be referred to as a 25-bit shift register. In the embodiment shown in Figure 1, the binary number J to be stored in the shift register 10 contains a maximum of 12 bits and when the shift register is initialized, these 12 bits are located on the right side of the register 10, i.e. in its 12 least significant bit positions. The remaining bit positions, i.e. the l3 most significant positions, are all 0.

Eftersom utgången (vid den högra eller minst signifikanta bit-positionen) hos registret 10 är återkopplad till in- gången (vid den vänstra eller mest signifikanta bitposi- tionen) hos registret l0 skiftas vid varje klockpuls från klocka A (klockfrekvens 2,56 MHz)den mest signifikanta biten av informationen i registret 10 till den mest signi- fikanta bitpositionen och alla övriga bitar skiftas en bitposition till höger (dvs varje bit skiftas till en bit- position som är en bit mindre signifikant än dennas tidigare position). ßetta förfarande upprepas vid varje puls från 79033544* klocka A, varvid följaktligen efter 25 klockpulser regist- ret 10 åter befinner sig i sitt utgångsläge. Förutom att vara återkopplad till ingången hos registret 10 är dettas utgång även kopplad till en ingång hos en OCH-grind ll.Since the output (at the right or least significant bit position) of register 10 is fed back to the input (at the left or most significant bit position) of register 10, at each clock pulse it changes from clock A (clock frequency 2.56 MHz) the most significant bit of the information in register 10 to the most significant bit position and all other bits are shifted one bit position to the right (ie each bit is shifted to a bit position which is one bit less significant than its previous position). this procedure is repeated at each pulse from 79033544 * clock A, whereby consequently after 25 clock pulses the register 10 is again in its initial position. In addition to being fed back to the input of register 10, its output is also connected to an input of an AND gate 11.

Ett skiftregister l2 utgöres av ett 12 bitars bi- närt skiftregister och innehåller ett binärt tal K med ma- ximalt l2 bitar. Utgången hos registret l2 är kopplad till en ingång hos OCH-grinden ll såsom visas. En klocka B ger en klockpuls till registret 12 vid en hastighet av en puls för vardera 24 pulser från klockan A. Varje gång klockan B avger en puls skiftas bitarna i register 12 till en bitposition som är en bit mindre signifikant än dessas tidigare position, dvs en bitposition till höger.A shift register l2 consists of a 12-bit binary shift register and contains a binary number K with a maximum of l2 bits. The output of register 12 is connected to an input of AND gate 11 as shown. A clock B provides a clock pulse to the register 12 at a rate of one pulse for each 24 pulses from the clock A. Each time the clock B emits a pulse, the bits in register 12 are shifted to a bit position which is a bit less significant than their previous position, i.e. a bit position to the right.

Det bör observeras att talen J och K är utan förtecken, varvid tecknet för multiplikationen bestäms medelst kon- ventionella metoder och följaktligen ej kommer att beskri- vas här.It should be noted that the numbers J and K are without signs, the sign for multiplication being determined by conventional methods and consequently will not be described here.

OCH-grinden ll arbetar som en multiplikator i den visade kretsen. Om båda ingångarna till OCH-grinden ll mot- tar logiska l utgör utsignalen från OCH-grinden ll en logisk l. För alla andra ingångstillstånd är utsignalen en logisk O. Denna verkan är välkänd.AND gate ll acts as a multiplier in the circuit shown. If both inputs to the AND gate l1 receive logic l, the output signal from the AND gate ll is a logic l. For all other input states, the output signal is a logic O. This effect is well known.

Eftersom klockan A pulserar vid en hastighet som är 24 gånger snabbare än den för klockan B multipliceras den minst signifikanta biten i talet K Ylagrat i register l2) successivt med bitarna lagrade i den minst signifikanta bit- positionen i registret l0, vilka givetvis är de successiva logiska bitarna som utgör talet 5 med början med den minst signifikanta och löpande mot den mest signifikanta biten för att sedan följas av 12 logiska nollor. Då klockan A alstrar sin 24:e puls producerar klockan B sin första puls, dvs klockan B räknar iwerkligheten pulserna som alstras av klocka A och då räknaren når 24 avger den en logisk l och återställs till 0 för att börja förnyad räkning. Pulsen från klockan B bringar varje bit lagrad i registret 12 att skiftas en position till höger, dvs till en bit mindre signi- fikant bitposition. veeassß-4 Avsikten med detta är att bringa den näst minst signifikanta biten i talet K (vilken nu är lagrad i den högra bitpositionen i register 12) att successivt multi- pliceras (via OCH-grind ll) med en logisk 0, sedan med bitarna i talet J med början med den minst signifikanta biten och löpande mot den mest signifikanta biten och följt av en rad logiska nollor. Det bör noteras, att efter 25 pulser från klockan A har registret 10 fullgjort en komplett cykel och är tillbaka i dess utgångsläge, men efter endast 24 pulser från klockan A har registret 10 ej helt fullgjort en komplett cykel och effekten blir att samtliga bitar i registret l0 befinner sig en bitposition till vänster om dessas ursprungliga startposition, dvs en signifikant bit högre. Det inses således, att ändamålet med införandet av de 13 extra logiska 0-bitarna (förutom de 12 bitarna som erfordras för talet J) är att åstadkomma denna skiftning avseende bitposition i talet J. Teorin bakom denna skift- ning är basen för teorin för multiplikation och kommer ej att beskrivas mer detaljerat.Since the clock A pulsates at a speed which is 24 times faster than that of the clock B, the least significant bit in the number K Y stored in register l2) is successively multiplied by the bits stored in the least significant bit position in register 10, which are of course the successive the logical bits that make up the number 5 starting with the least significant and running toward the most significant bit and then followed by 12 logical zeros. When the clock A generates its 24th pulse, the clock B produces its first pulse, ie the clock B actually counts the pulses generated by the clock A and when the counter reaches 24 it outputs a logic 1 and resets to 0 to start counting again. The pulse from the clock B causes each bit stored in the register 12 to shift one position to the right, ie to a bit less significant bit position. veeassß-4 The purpose of this is to cause the next least significant bit in the number K (which is now stored in the right bit position in register 12) to be successively multiplied (via AND gate ll) by a logic 0, then by the bits in the number J starting with the least significant bit and running towards the most significant bit and followed by a series of logical zeros. It should be noted that after 25 pulses from clock A, register 10 has completed a complete cycle and is back in its initial position, but after only 24 pulses from clock A, register 10 has not fully completed a complete cycle and the effect is that all bits in the register l0 is a bit position to the left of their original starting position, i.e. a significant bit higher. It will thus be appreciated that the purpose of introducing the 13 extra logical 0-bits (in addition to the 12 bits required for the number J) is to effect this shift regarding bit position in the number J. The theory behind this shift is the basis of the theory of multiplication and will not be described in more detail.

Såsom angivits tidigare är utsignalen från OCH-grinden ll produkten av de logiska bitarna vid dess ingång. Följakt- ligen består utsignalen från OCH-grinden ll av en sekvens binära siffror. Utsignalen från OCH-grinden tillföres en ingång 16 hos en enbitsadderare 13. Summautgången 14 hos adderaren 13 är förbunden med en ingång 17 (mest signifi- kant bit) hos ett 24 bitars skiftregister 15. Utgången 22 från skiftregistret 15 är kopplad till en annan ingång 18 hos adderaren 13. Överföringsutgången 19 hos adderaren 13 är kopplad till en överföringsingång 20 hos adderaren 13 via en vippa 21. Klockan A är inkopplad för styrning av funktionen hos skiftregistret 15. Vid varje klockpuls från klockan A adderar registret 15 en delprodukt till dess innehåll mottaget från enbitsadderaren 13. Vid slutet av 288 klockpulser från klockan A innehåller registret 15 den 24 bitars produkten av det binära talet J utan för- tecken multiplicerat med det binära talet K utan förtecken, 790335441. varvid den mest signifikanta biten befinner sig till vänster i registret 15 och den minst signifikanta biten till höger i registret 15. Det bör observeras, att då registret 15 initieras för att börja sin del av produkt- bildningen av tvâ tal är det ej inställt på 0 utan i stället börjar registret 15 vid värdet 33-211 lagrad i binär form, dvs 0000000l0000100000O0000O. Signifikansen av detta kommer att beskrivas senare. Det bör även noteras att adderaren 13, vippan 21 och registret 15 tillsammans bildar en ackumulator 38.As stated earlier, the output of the AND gate 11 is the product of the logic bits at its input. Consequently, the output of AND gate ll consists of a sequence of binary digits. The output signal from the AND gate is applied to an input 16 of a one-bit adder 13. The sum output 14 of the adder 13 is connected to an input 17 (most significant bit) of a 24-bit shift register 15. The output 22 from the shift register 15 is connected to another input. 18 of the adder 13. The transfer output 19 of the adder 13 is connected to a transfer input 20 of the adder 13 via a flip-flop 21. The clock A is switched on to control the function of the shift register 15. At each clock pulse from the clock A, the register 15 adds a sub-product to its contents received from the one-bit adder 13. At the end of 288 clock pulses from the clock A, the register 15 contains the 24-bit product of the binary number J without a sign multiplied by the binary number K without a sign, 790335441. the most significant bit being located to the left in register 15 and the least significant bit to the right of register 15. It should be noted that when register 15 is initialized to begin its part of the product formation of two numbers, it is not set to 0 but instead the register 15 starts at the value 33-211 stored in binary form, ie 0000000l0000100000O0000O. The significance of this will be described later. It should also be noted that the adder 13, the flip-flop 21 and the register 15 together form an accumulator 38.

En tre bitars binär räknare 23 har sin åsterställ- ningsingång 24 kopplad till utgången 14 hos adderaren 13.A three-bit binary counter 23 has its reset input 24 connected to the output 14 of the adder 13.

Räknaren 23 arbetar för räkning av klockpulserna som till- föres dess klockingång 25 från klockan A. Varje gång en logisk 1-puls mottages vid en återställningsingång 24 återställes räknaren 23 till 0 och börjar räkna på nytt.The counter 23 operates to count the clock pulses applied to its clock input 25 from the clock A. Each time a logic 1 pulse is received at a reset input 24, the counter 23 is reset to 0 and begins counting again.

Slutresultatet av detta blir att efter 288 pulser från klockan A är den linjära produkten av J och K lagrad i registret 15 och den tre bitarsbinära räknaren 23 innehål- ler ett värde motsvarande antalet nollor till vänster om den mest signifikanta logiska 1 lagrad i registret 15, dvs de ledande nollorna i produkten. ' Till utgången 14 hos adderaren 13 är även laddnings- ingângen 28 hos ett fyra bitars temporärt minne 26 kopplad.The end result of this is that after 288 pulses from the clock A, the linear product of J and K is stored in the register 15 and the three-bit binary counter 23 contains a value corresponding to the number of zeros to the left of the most significant logic 1 stored in the register 15. ie the leading zeros in the product. The charging input 28 of a four-bit temporary memory 26 is also connected to the output 14 of the adder 13.

Minnet 26 har sina fyra ingångar 27a, 27b, 27c och 27d kopplade till de fyra mest signifikanta bitpositionerna i registret 15, såsom visas i figur 1. Då en logisk 1 uppträder på summautgången 14 hos adderaren 13 och följ- _aktligen vid laddningsingången 28 hos minnet 26 laddas informationen i de fyra mest signifikanta bitpositionerna i registret 15 i minnet 26. Denna laddning (och följande urladdningar) kan ske många gånger under multiplikations- processen tills den sista logiska 1 som skall skiftas till registret 15 uppträder vid summautgången 14 hos adde- raren 13 och minnet 26 laddas för sista gången. Denna sista logiska 1 kommer att vara den mest signifikanta logiska 1 i det slutliga resultatet lagrat i registret 15. 7903354-4 Vid denna tidpunkt innehåller minnet 26 de fyra bitarna omedelbart till höger om den mest signifikanta logiska l i den slutliga, icke kodade produkten lagrad i regist- ret 15, dvs de fyra minst signifikanta logiska bitarna omedelbart intill den mest signifikanta logiska l i den slutliga, icke kodade produkten.The memory 26 has its four inputs 27a, 27b, 27c and 27d connected to the four most significant bit positions in the register 15, as shown in Figure 1. When a logic 1 appears at the sum output 14 of the adder 13 and consequently at the charge input 28 of the memory 26, the information in the four most significant bit positions in the register 15 is loaded in the memory 26. This charging (and the following discharges) can take place many times during the multiplication process until the last logic 1 to be shifted to the register 15 appears at the sum output 14 of the adder. 13 and memory 26 are loaded for the last time. This last logic 1 will be the most significant logic 1 in the final result stored in register 15. At this time, the memory 26 contains the four bits immediately to the right of the most significant logic in the final, non-coded product stored in register 15, i.e. the four least significant logical bits immediately adjacent to the most significant logical one in the final, non-coded product.

För att summera så långt har de ledande nollorna i den slutliga icke kodade produkten (dvs antalet konseku- tiva nollor i de mest signifikanta bitpositionerna i register 15) räknats och det resulterande värdet lagrats i den tre bitars räknaren 23. Den mest signifikanta lo- giska l i den slutliga icke kodade produkten utnyttjas både för återställning av räknaren 23 till O för sista gången och för laddning av minnet 26 för sista gången.To sum up so far, the leading zeros in the final non-coded product (ie the number of consecutive zeros in the most significant bit positions in register 15) have been counted and the resulting value stored in the three bit counter 23. The most significant logical The final uncoded product is used both to reset the counter 23 to 0 for the last time and to load the memory 26 for the last time.

De fyra minst signifikanta logiska bitarna omedelbart in- till den mest signifikanta logiska l lagras i minnet 26.The four least significant logical bits immediately adjacent to the most significant logical 1 are stored in memory 26.

Utgångar 29, 30, 31 från räknaren 23 är kopplade till ingångar hos inverterane32, 33 respektive 34. Det bör noteras, att utnyttjandet av räknaren 23 och inverterna 32, 33 och 34 är ekvivalent med utnyttjandet av en nedräknare, vilket är välkänt inom området. Det bör även noteras, att inverterarna 32, 33 och 34 ger radix-minus-ett-komplementet av värdet lagrat i räknaren 23. Utgångarna från inverterar- na 32, 33 och 34 är kopplade till ett 8 bitars parallell- serie-skiftregister 35. Utgångar 36a, 36b, 36c och 36d från minnet 26 är också kopplade till skiftregistret 35.Outputs 29, 30, 31 from the counter 23 are connected to inputs of the inverters 32, 33 and 34, respectively. It should be noted that the use of the counter 23 and the inverters 32, 33 and 34 is equivalent to the use of a counter, which is well known in the art. It should also be noted that the inverters 32, 33 and 34 provide the radix-minus-one complement of the value stored in the counter 23. The outputs of the inverters 32, 33 and 34 are connected to an 8-bit parallel-series shift register 35. Outputs 36a, 36b, 36c and 36d from the memory 26 are also connected to the shift register 35.

En teckenbit 37 tillföres skiftregistret 35 till vänster om biten från inverteraren 32. Formatet för den resulteran- de komprimerade (enligt /4255 PCM) PCM-signalen är följan- de (med början med den mest signifikanta biten och löpande mot den minst signifikanta biten): teckenbit, bit från in- verteraren 32, bit från inverteraren 33, bit från invertera- ren 34, bit från utgången 36a, bit från utgången 36b, bit från utgången 36c, och bit från utgången 36d.A character bit 37 is applied to the shift register 35 to the left of the bit from the inverter 32. The format of the resulting compressed (according to / 4255 PCM) PCM signal is as follows (starting with the most significant bit and running towards the least significant bit) : character bit, bit from inverter 32, bit from inverter 33, bit from inverter 34, bit from output 36a, bit from output 36b, bit from output 36c, and bit from output 36d.

Den föregående beskrivningen har avsett en före- dragen utföringsform av uppfinningen för en speciell till- lämpning. Nedan följer nu en kort beskrivning av den teori 790335114! lO som ligger till grund för kretsens operation enligt figur l.The foregoing description has referred to a preferred embodiment of the invention for a particular application. Below now follows a brief description of the theory 790335114! 10 which forms the basis for the operation of the circuit according to Figure 1.

Med början med ett 24 bitars linjärt (dvs icke kodat)binärt tal Z utan förtsfiensouskall omvandlas till en 7 bitars PCM-kod utan förtecken kan det binära talet Z beskrivas såsom: där; Y = ett 24 bitars binärt tal utan förtecken; Yl = de 13 mest signifikanta bitarna hos talet Y (heltal, omrâde från 0 till 8158); och YF = de ll minst signifikanta bitarna hos talet Y (bråk, område från 0 till g§1_ ) 2048 I korthet har med divisionen av Z med faktorn 211 (dvs 2048) en binär punkt införts till höger om den l3:e mest signifikanta biten i talet Z.Beginning with a 24-bit linear (ie, non-coded) binary number Z without being converted, it will be converted to a 7-bit PCM code without a sign, the binary number Z can be described as: where; Y = a 24-bit binary number without a sign; Y1 = the 13 most significant bits of the number Y (integer, range from 0 to 8158); and YF = the ll least significant bits of the number Y (fraction, range from 0 to g§1_) 2048 In short, with the division of Z by the factor 211 (ie 2048) a binary point has been introduced to the right of the l3th most significant bit in the number Z.

C antages nu beteckna det motsvarande PCM- kodordet utan förtecken så att: c = 16 L + v = 24. L + v,_ där L är det tre bitars segmentvärdet och V är det fyra bitars stegvärdet.C is now assumed to denote the corresponding PCM codeword without a sign so that: c = 16 L + v = 24. L + v, _ where L is the three-bit segment value and V is the four-bit step value.

Nästa steg är att jämföra talet Y med alla möjliga tröskelvärden X, där X definieras enligt följande: x = zL(2v + 32) - 33 Så att xnéy< Xn +l Detta uppnås enligt följande procedur: Både talet Y och tröskelvärdena X förstärks med 33 Y' = Y + 33 YF Enligt ovan är Y = Yl + ' YF 2048 ., Y' = Yl + 33 + 2048 X'=X+33 790335h~4 ll L (zv + 32) -33 L Enligt ovan är X = 2 .Z x' = 2L(2v + 32) - 33 + 33 = 2 Det modifierade talet (dvs Y') uttryckes sedan så- (2V + 32) som ett flyttal, (notera att Y“ > 0 och att Y' ligger in- om området från 33 till 8l9l+2047) 2048 Y' = 2L + Y”(uttryckt såsom ett flyttal med Y" inom området 33 till 63 + 218-1 zla och L inom området 0-7.The next step is to compare the number Y with all possible threshold values X, where X is defined as follows: x = zL (2v + 32) - 33 So that xnéy <Xn + l This is achieved according to the following procedure: Both the number Y and the threshold values X are amplified by 33 Y '= Y + 33 YF As above, Y = Yl +' YF 2048., Y '= Yl + 33 + 2048 X' = X + 33 790335h ~ 4 ll L (zv + 32) -33 L As above, X = 2 .Z x '= 2L (2v + 32) - 33 + 33 = 2 The modified number (ie Y') is then expressed as- (2V + 32) as a floating point number, (note that Y Y 'is within the range from 33 to 81l + 2047) 2048 Y' = 2L + Y "(expressed as a floating point number with Y" in the range 33 to 63 + 218-1 zla and L in the range 0-7.

Detta är ekvivalent med att skifta talet lagrat i registret 15 till vänster, med 7-L positioner, för att eliminera de ledande nollorna och placera det imaginära binärkommat efter vad som nu är den sjätte biten. Detta ger segmentbitarna L. sedan divideras både Y' den x' med 2L för erhållande av: Y' L Y" -- = 2 x 2L 2L 0.0 Y" = å; 2L I Låt X" = 'Xi-T- 2 L Följaktligen §l~ = 3-133-i-33) = x" L L 2 2 ,C x" = zv + 32 Genom att göra Y" = X" kan vi erhålla stegbitarna V: Y" = V + 32 + X" 2V = Y" -32 v = (Y" - 32) 2 Att subtrahera 32 från Y" har verkan av att elimi- nera den mest signifikanta biten och division med 2 har verkan av skiftning av det imaginära binärkommat en posi- 7903354-4 12 tion till vänster. Om talet V förkortas (dvs eliminera bitarna till höger om det imagninära binärkommat)utgör de fyra bitarna som återstår stegbitarna V i PCM-koden.This is equivalent to shifting the number stored in register 15 to the left, with 7-L positions, to eliminate the leading zeros and place the imaginary binary comma after what is now the sixth bit. This gives the segment bits L. then divide both Y 'the x' by 2L to obtain: Y 'L Y "- = 2 x 2L 2L 0.0 Y" = å; 2L I Let X "= 'Xi-T- 2 L Consequently §l ~ = 3-133-i-33) = x" LL 2 2, C x "= zv + 32 By doing Y" = X "we can obtain the step bits V: Y "= V + 32 + X" 2V = Y "-32 v = (Y" - 32) 2 Subtracting 32 from Y "has the effect of eliminating the most significant bit and division by 2 has effect of shifting the imaginary binary comma a position to the left. If the number V is abbreviated (ie, eliminate the bits to the right of the imaginary binary comma), the remaining four bits constitute the step bits V in the PCM code.

Figur 2 är en grafisk represenatation av de teore- tiska manipulationerna som utföres avseende den slutliga icke kodade produkten lagrad i registret 15. Det bör note- ras, att dessa manipulationer ej uppträder i ett faktiskt fall utan här endast visas för att underlätta förståelsen av teorin bakom de olika stegen som tidigare beskrivits i sxmband med figur l, vilka uppträder i praktiken.Figure 2 is a graphical representation of the theoretical manipulations performed regarding the final uncoded product stored in register 15. It should be noted that these manipulations do not occur in an actual case but are only shown here to facilitate understanding of the theory. behind the various steps previously described in connection with Figure 1, which appear in practice.

Figur 2A äen representation av registret l5 sedan ensåsom exempel vald multiplikation har genomförts.Figure 2A shows a representation of the register l5 after multiplication as an example has been carried out.

Figur 2B anger införandet av ett imaginärt binär- komma efter de tretton mest signifikanta bitarna. Delarna YI och ¥F av talet Y visas, varvid YI består av de 13 mest signifikanta bitarna och YF består av de ll minst signifi- kanta bitarna.Figure 2B shows the insertion of an imaginary binary comma after the thirteen most significant bits. The parts YI and ¥ F of the number Y are shown, whereby YI consists of the 13 most significant bits and YF consists of the ll least significant bits.

Figur 2C är en representation av talet 33 (i binär form) och visar hur detta adderas (i lämplig position) till talet Y i figur 2B.Figure 2C is a representation of the number 33 (in binary form) and shows how this is added (in a suitable position) to the number Y in Figure 2B.

Figur 2D är resultatet av additionen av de två binära talen Y och 33 angivna i figur 2B respektive 2C.Figure 2D is the result of the addition of the two binary numbers Y and 33 given in Figures 2B and 2C, respectively.

Figur 2E är en representation av innehållet i räkna- ren 23, se figur l, efter den kompletta multiplikationen.Figure 2E is a representation of the contents of the counter 23, see Figure 1, after the complete multiplication.

Räknaren 23 innehåller värdet för antalet ledande nollor i .den linjära produkten (fyra i detta-exempel).The counter 23 contains the value of the number of leading zeros in the linear product (four in this example).

Figur 2F är en representation av inverteringen av varje bit från räknaren 23 som utföres av inverterarna 32, 33 och 34 i figur l.Figure 2F is a representation of the inversion of each bit from the counter 23 performed by the inverters 32, 33 and 34 of Figure 1.

Figur 2G anger det binära talet (från figur 2D) skiftat tillräckligt långt till vänster för att det ej längre skall finnas några ledande nollor (de ledande nol- lorna har skiftats till de minst signifikanta bitpositio- nerna).Figure 2G indicates the binary number (from Figure 2D) shifted far enough to the left so that there are no longer any leading zeros (the leading zeros have been shifted to the least significant bit positions).

Figur 2G anger hur den mest signifikanta logiska l förkastas och hur de följande fyra bitarna blir det fyra bitars stegvärdet V och hur återstående bitar förkastas. '79Û335lvfi 13 Figur 2H visar hur segmentvärdet L, stegvärdet V och teckenbiten kombineras för bildande av den kodade produkten C med tecken.Figure 2G shows how the most significant logic 1 is rejected and how the next four bits become the four bit step value V and how the remaining bits are rejected. '79 Û335lv fi 13 Figure 2H shows how the segment value L, the step value V and the character bit are combined to form the coded product C with characters.

Om man i mer generella termer betraktar ett kodat binärt tal, kodat enligt en /4~lag kod, bestående av totalt q bitar (exklusive teckenbiten), kan detta kodade tal på q bitar anges ha q - p segmentbitar (L) och p stegbitar (V).If one considers in more general terms an encoded binary number, encoded according to a / 4 ~ law code, consisting of a total of q bits (excluding the character bit), this encoded number of q bits can be stated to have q - p segment bits (L) and p step bits (V).

För den teckenlösa /U255 koden som tidigare diskuterats no- teras q = 7, p = 4 och q - p = 3. Beslutsnivåerna X nedre för/H-koden (ellerfl-lagen) definieras enligt följande: xnedre = 2(2L(v + 29) - 29) -l =2L(zv+2x2p>-2x2P-1 varvid Xnedre är den nedre gränsen för nivån i fråga; p är antalet stegbitar i det kodade binära talet; L är heltalet (värdet) uttryckt av de q-p-segment- bitarna i koden; och V är heltalet (dvs värdet) uttryckt av de p steg- bitarna i koden; och q är totala antalet bitar i det kodade talet utan förtecken.For the characterless / U255 code previously discussed, q = 7, p = 4 and q - p = 3 are noted. The decision levels X lower for the / H code (or fl-law) are defined as follows: x lower = 2 (2L (v + 29) - 29) -l = 2L (zv + 2x2p> -2x2P-1 where Xnedre is the lower limit of the level in question; p is the number of step bits in the coded binary number; L is the integer (value) expressed by the qp -segment- bits in the code; and V is the integer (ie the value) expressed by the p step bits in the code; and q is the total number of bits in the encoded number without a sign.

Förskjutningen för ett sådant kodat binärt tal är således 2x2p+l, vilket utgör 33 för ett normalt (7-bitars ßÅ255 PCM-tal (med p=4). Detta är det tal som adderades till skiftregistret l5 (figur l) i lämplig position innan multiplikationen, (se även figur 2C).The offset for such an encoded binary number is thus 2x2p + 1, which is 33 for a normal (7-bit ßÅ255 PCM number (with p = 4) .This is the number added to the shift register l5 (Figure 1) in the appropriate position before the multiplication, (see also Figure 2C).

Den linjäriserade koden för denna generella PCM /J-koa innehåller p+z(q"p) + l biter, vilket blir 13 (dvs 4 + 23 + l)för@tnormalt sjubitars ,M255 PCM-tal. Det ima- ginära binärkommat (vid bestämningen av lämplig position för förskjutningen) måste införas i den slutliga linjära produkten efter antalet bitar (räknat från den mest signi- fikanta biten, se figur 2B). Följaktligen är talet som måste adderas till den linjära produkten (lagrad i registret l5, figur l) för att koda denna: 7903354-4 14 (zxzP+l)xzf(n+m)"(2(q_p)+P+1Ü I det allmänna fallet har vid binär multiplikation (dvs JJXKK) det binära talet JJ utan förtecken p+2(q_p)+l bitar (dvs 4 + 23 + l = 13 bitar för /4255-kod). Det binära talet KK utan förtecken kan även ha samma antal bitar som talet JJ. Beroende på tillämpningen kan antalet bitar i talen JJ och KK variera och antalet bitar i JJ behöver ej vara detsamma som antalet bitar i talet KK.The linearized code for this general PCM / J koa contains p + z (q "p) + 1 bits, which becomes 13 (ie 4 + 23 + 1) for the normal seven-bit, M255 PCM number. (in determining the appropriate position for the displacement) must be entered in the final linear product according to the number of bits (calculated from the most significant bit, see Figure 2B) Consequently, the number that must be added to the linear product (stored in register l5, figure l) to code this: 7903354-4 14 (zxzP + l) xzf (n + m) "(2 (q_p) + P + 1Ü In the general case, in binary multiplication (ie JJXKK) the binary number JJ without sign p + 2 (q_p) + l bits (ie 4 + 23 + l = 13 bits for / 4255 code) The binary number KK without sign can also have the same number of bits as the number JJ. Depending on the application, the number of bits in the numbers JJ and KK vary and the number of bits in JJ need not be the same as the number of bits in the number KK.

Figur l och 2 visar en krets för användning vid en digital tongenerator. I detta sammanhang utnyttjades 12 bitar för varje tal J och K (figur l), eftersom dessa tal ej ursprungligen erhölls från PCM och 12 bitar var lämpliga- re för den då tillgängliga hårdvaran.Figures 1 and 2 show a circuit for use with a digital tone generator. In this context, 12 bits were used for each number J and K (Figure 1), since these numbers were not originally obtained from PCM and 12 bits were more suitable for the hardware then available.

En annan kodningslag som ibland utnyttjas är A-lagen.Another coding law that is sometimes used is the A-law.

I motsats till /U-lagen är A-lagen ej en regulär kod. Det första segmentet i A-lagen (närmast 0) beskrivs av en annan ekvation än övriga segment. Följaktligen förekommer ingen förskjutning i samband med A-lag, så att den slutliga lin- jära produkten är förstärkt med värdet 0, Detta innebär, att möjligheten finns att kapaciteten för den tre bitars räknare som utnyttjas i figur l överskrides. För 0-segmen- tet i A-koden krävs dessutom en speciell utgång (nämligen de 8:e till ll:e mest signifikanta bitarna av den linjära produkten). Om överskridandet av den tre bitars räknaren negligeras och om nollsegmentet i A-lagen negligeras kommer kretsen enligt figur l att vara tillämplig för A-lag. Mindre modifikationer (ej angivna häri) kan utföras i kretsen enligt figur 1 för att ta hänsyn till överskridandet av räknarens kapacitet och 0-segmentet i A-koden.In contrast to the I / O law, the A law is not a regular code. The first segment in the A-law (closest to 0) is described by a different equation than the other segments. Consequently, there is no shift in connection with A-law, so that the final linear product is amplified by the value 0. This means that there is a possibility that the capacity of the three-bit counter used in Figure 1 is exceeded. The 0-segment in the A-code also requires a special output (namely the 8th to 11th most significant bits of the linear product). If the exceedance of the three-bit counter is neglected and if the zero segment in the A-law is neglected, the circuit according to Figure 1 will be applicable to the A-law. Minor modifications (not specified herein) may be made in the circuit of Figure 1 to account for exceeding the capacity of the counter and the 0-segment of the A-code.

Claims (8)

7903354144 15 PatentkravClaim 7903354144 1. l. Multiplikatorkrets för multiplicering av ett första binärt tal (J) utanförtecken med maximalt n bi- nära bitar med ett andra binärt tal (K) utan förtecken med maximalt m binära bitar och alstring av en kodad bi- när produkt utan förtecken med maximalt q binära bitar, varvid n, m och q samtliga är positiva heltal, varvid n + nx 7 q, k ä n n e t e c k n a d av att den innefat- tar ackumulatororgan (38) innefattande ett skiftregister (15) med n + m bitpositioner för lagring av både de par- tiella produkterna och den slutliga, icke kodade produk- ten av nämnda första (J) och andra (K) binära tal, vilket register (15) förinställes till ett initiellt binärt värde, en q-p bitars binär räknare (23) inkopplad för att öka dess räknevärde med l för varje logisk O, som inmatas till nämn- da register (l5), vilken räknare (23) återställes till O vid uppträdandet av varje logisk l vid ingången (17) hos nämnda register (15), varvid p är ett positivt heltal och så valt att 0<,p 4 q, samt en temporär minneskrets (26) inkopplad för att mottaga bitarna lagrade i de p mest signifikanta bitpositionerna i nämnda register (l5), vilken minneskrets (26) är mottaglig för insignalen till nämnda register (15) för att lagra bitarna från nämnda register (15) i nämnda minneskrets (26) vid varje uppträ- dande av en logisk l vid ingången (17) till nämnda register (l5), varvid de mest signifikanta bitarna i nämnda kodade produkt utgör radix-minus-ett-komplementet för det slutliga värdet lagrat i nämnda räknare (23) och de minst signifi- kanta bitarna i nämnda kodade produkt utgör det slutliga binära talet lagrat i nämnda minneskrets (26).1. l. Multiplier circuit for multiplying a first binary number (J) outside characters with a maximum of n bi- near bits with a second binary number (K) without signs with a maximum of m binary bits and generating an encoded binary product without signs with maximum q binary bits, wherein n, m and q are all positive integers, wherein n + nx 7 q, characterized in that it comprises accumulator means (38) comprising a shift register (15) with n + m bit positions for storing both the partial products and the final, non-coded product of said first (J) and second (K) binary numbers, which register (15) is preset to an initial binary value, a qp bit binary counter (23) connected to increase its count value by 1 for each logic 0 input to said register (15), which counter (23) is reset to 0 at the occurrence of each logic 1 at the input (17) of said register (15), p is a positive integer and so chosen that 0 <, p 4 q, and a tempo memory circuit (26) is connected to receive the bits stored in the p most significant bit positions in said register (15), which memory circuit (26) is receptive to the input signal to said register (15) for storing the bits from said register (15) in said memory circuit (26) at each occurrence of a logic l at the input (17) of said register (l5), the most significant bits in said coded product constituting the radix-minus-one complement of the final value stored in said counter (23) and the least significant bits in said coded product constitute the final binary number stored in said memory circuit (26). 2. Krets enligt krav l, k ä n n e t e c k n a d av att nämnda initiella binära värde till vilket nämnda re- gister (15) förinställes är: (2x2P+1) x2[(11+m) - URI-p) +P+1l7 79033544! 16Circuit according to claim 1, characterized in that said initial binary value to which said register (15) is preset is: (2x2P + 1) x2 [(11 + m) - URI-p) + P + 117 79033544 ! 16 3. Krets enligt krav l eller 2, k ä n n e t e c k - nad avaü n=lL m=lL q=7od1p=4.Circuit according to Claim 1 or 2, characterized by avaü n = lL m = lL q = 7od1p = 4. 4. Krets enligt krav l eller 2, k ä n n e t e c k - nad avattn=l3,m=l3,q=7ochp=4.Circuit according to Claim 1 or 2, characterized by avattn = l3, m = l3, q = 7 and p = 4. 5. Krets enligt krav 1, k ä n n e t e c k n a d av att nämnda initiella binära värde för nämnda register (15) är 000O000l0000l000O0000O00 i notation med basen två, varvid n = 12, nx= 12, q = 7 och p = 4.A circuit according to claim 1, characterized in that said initial binary value of said register (15) is 000O000l0000l000O0000O00 in notation with base two, where n = 12, nx = 12, q = 7 and p = 4. 6. Krets enligt krav 1för multiplicering av ett förs- ta binärt tal (J) med n bitar utan förtecken med ett andra binärt tal (K) med m bitar utan förtecken och lagring av både de mellanliggande och slutliga resultaten i ett ackumulatororgan (38) innefattande ett skiftregister (15) med n + m bitpositíoner och en kodningskrets för transfor- mering av den slutliga linjära produkten till en kodad produkt med q bitar utan förtecken, varvid n, m och q samt- liga är positiva heltal med n + m > q, k ä n n e t e c k - _ n a d av att den innefattar organ för addering av ett konstant binärt värde till innehållet i nämnda skiftregis- ter (15), en q-p bitars binär räknare (23) för räkning av antalet ledande nollor i nämnda slutliga linjära produkt, varvid p är ett positivt heltal och så valt att p<: q, inverterarorgan (32, 33, 34) för invertering av räknevärdet lagrat i nämnda räknare (27) på bit-för-bit-basis för att därigenom åstadkomma radhc-minus-ett-komplementet för räknevärdet, samt en p bitars temporär minneskrets (26) för mottagande av de p minst signifikanta bitarna i nämnda slutliga linjära produkt omedelbart intill den mest signi- fikanta logiska l, varvid de mest signifikanta bitarna i nämnda kodade produkt utgör utsignalen från nämnda inverte- rarorgan (32, 33, 34) och de minst signifikanta bitarna i nämnda kodade produkt utgör utsignalen (36a, 36b, 36c, 36d) från nämnda p bitars temporära minneskrets (26).A circuit according to claim 1 for multiplying a first binary number (J) by n bits without a sign by a second binary number (K) by m bits without a sign and storing both the intermediate and final results in an accumulator means (38). comprising a shift register (15) with n + m bit positions and a coding circuit for transforming the final linear product into a coded product with q bits without signs, wherein n, m and q are all positive integers with n + m> characterized in that it comprises means for adding a constant binary value to the contents of said shift register (15), a qp bit binary counter (23) for counting the number of conductive zeros in said final linear product. , where p is a positive integer and so selected that p <: q, inverter means (32, 33, 34) for inverting the count value stored in said counter (27) on a bit-by-bit basis to thereby produce radhc-minus -a complement to the count value, as well as a p bits s temporary memory circuit (26) for receiving the p least significant bits in said final linear product immediately adjacent to the most significant logic 1, the most significant bits in said coded product constituting the output of said inverter means (32, 33, 34) and the least significant bits in said coded product constitute the output signal (36a, 36b, 36c, 36d) from said p bit temporary memory circuit (26). 7. Krets enligt krav 6, k ä n n e t e c k n a d av att det konstanta binära värdet är: (q_p) (zxzP+1)x2f-(“+m)'(2 *P+IÜ' :fun 790335ls~4 17Circuit according to Claim 6, characterized in that the constant binary value is: (q_p) (zxzP + 1) x2f - (“+ m) '(2 * P + IÜ': fun 790335ls ~ 4 17 8. Krets enligt krav 6 eller 7, k ä n n e- t e c k n a d av att n = 13, m = 13, q = 7 och p = 4.Circuit according to Claim 6 or 7, characterized in that n = 13, m = 13, q = 7 and p = 4.
SE7903354A 1978-04-18 1979-04-17 MULTIPLICATOR CIRCUIT FOR MULTIPLICATING A FIRST BINER NUMBER WITHOUT SIGN WITH ANOTHER BINERIC NUMBER WITHOUT SIGN AND CREATING A CODED BINER PRODUCT WITHOUT SIGN SE440562B (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CA301,370A CA1089569A (en) 1978-04-18 1978-04-18 Binary multiplier circuit including coding circuit

Publications (2)

Publication Number Publication Date
SE7903354L SE7903354L (en) 1979-10-19
SE440562B true SE440562B (en) 1985-08-05

Family

ID=4111272

Family Applications (1)

Application Number Title Priority Date Filing Date
SE7903354A SE440562B (en) 1978-04-18 1979-04-17 MULTIPLICATOR CIRCUIT FOR MULTIPLICATING A FIRST BINER NUMBER WITHOUT SIGN WITH ANOTHER BINERIC NUMBER WITHOUT SIGN AND CREATING A CODED BINER PRODUCT WITHOUT SIGN

Country Status (5)

Country Link
JP (1) JPS583252B2 (en)
CA (1) CA1089569A (en)
FR (1) FR2423821A1 (en)
GB (1) GB2020068B (en)
SE (1) SE440562B (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0452064U (en) * 1990-09-10 1992-05-01

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR1086043A (en) * 1953-07-02 1955-02-09 Electronique & Automatisme Sa Improvements to multipliers for digital electric calculators
FR2276635A1 (en) * 1974-06-28 1976-01-23 Jeumont Schneider FAST DIGITAL MULTIPLIER AND ITS APPLICATIONS
GB1597468A (en) * 1977-06-02 1981-09-09 Post Office Conversion between linear pcm representation and compressed pcm

Also Published As

Publication number Publication date
CA1089569A (en) 1980-11-11
SE7903354L (en) 1979-10-19
FR2423821A1 (en) 1979-11-16
JPS583252B2 (en) 1983-01-20
JPS54140434A (en) 1979-10-31
GB2020068A (en) 1979-11-07
FR2423821B1 (en) 1984-11-02
GB2020068B (en) 1982-09-02

Similar Documents

Publication Publication Date Title
US4994997A (en) Pipeline-type serial multiplier circuit
US3983382A (en) Adder with fast detection of sum equal to zeroes or radix minus one
JPS6059470A (en) Basic cell suitable for multiplication- accumulation processor and said processor
JP2000259394A (en) Floating point multiplier
US3515344A (en) Apparatus for accumulating the sum of a plurality of operands
EP0356153B1 (en) Radix-2**n divider method and apparatus using overlapped quotient bit selection and concurrent quotient rounding and correction
US5132925A (en) Radix-16 divider using overlapped quotient bit selection and concurrent quotient rounding and correction
US3247365A (en) Digital function generator including simultaneous multiplication and division
CN110377267B (en) Signed number adder/subtracter based on probability calculation concentrated sequence
JPS588009B2 (en) digital multiplier
US3878985A (en) Serial-parallel multiplier using booth{3 s algorithm with combined carry-borrow feature
US3816732A (en) Apparatus and method for serial-parallel binary multiplication
US4374427A (en) Divisor transform type high-speed electronic division system
US4163287A (en) Binary multiplier circuit including coding circuit
US4142242A (en) Multiplier accumulator
US5680516A (en) Multiple pulse series generating device and method applicable to random pulse series generating apparatus
US6127863A (en) Efficient fractional divider
SE440562B (en) MULTIPLICATOR CIRCUIT FOR MULTIPLICATING A FIRST BINER NUMBER WITHOUT SIGN WITH ANOTHER BINERIC NUMBER WITHOUT SIGN AND CREATING A CODED BINER PRODUCT WITHOUT SIGN
US5379244A (en) Small-sized, low power consumption multiplication processing device with a rounding recoding circuit for performing high speed iterative multiplication
US3373269A (en) Binary to decimal conversion method and apparatus
SE429080B (en) DIGITAL FILTER DEVICE FOR OWN-SIZED QUANTIZED Pulse Code Modulated Signals
US5499202A (en) Residue circuit
US3579267A (en) Decimal to binary conversion
US5258945A (en) Method and apparatus for generating multiples of BCD number
EP0281094B1 (en) Counter

Legal Events

Date Code Title Description
NUG Patent has lapsed

Ref document number: 7903354-4

Effective date: 19911108

Format of ref document f/p: F