NL9001128A - Kodeerinrichting bevattende een subbandkoder, en een zender voorzien van de kodeerinrichting. - Google Patents

Kodeerinrichting bevattende een subbandkoder, en een zender voorzien van de kodeerinrichting. Download PDF

Info

Publication number
NL9001128A
NL9001128A NL9001128A NL9001128A NL9001128A NL 9001128 A NL9001128 A NL 9001128A NL 9001128 A NL9001128 A NL 9001128A NL 9001128 A NL9001128 A NL 9001128A NL 9001128 A NL9001128 A NL 9001128A
Authority
NL
Netherlands
Prior art keywords
subband
bit
signal
samples
bits
Prior art date
Application number
NL9001128A
Other languages
English (en)
Original Assignee
Philips Nv
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 Philips Nv filed Critical Philips Nv
Priority to NL9001128A priority Critical patent/NL9001128A/nl
Priority to DE69107511T priority patent/DE69107511T2/de
Priority to EP91201088A priority patent/EP0457391B1/en
Priority to AT91201088T priority patent/ATE118933T1/de
Priority to KR1019910007538A priority patent/KR0186000B1/ko
Priority to SK1382-91A priority patent/SK138291A3/sk
Priority to JP3138388A priority patent/JP2931697B2/ja
Publication of NL9001128A publication Critical patent/NL9001128A/nl
Priority to HK61696A priority patent/HK61696A/xx

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04BTRANSMISSION
    • H04B1/00Details of transmission systems, not covered by a single one of groups H04B3/00 - H04B13/00; Details of transmission systems not characterised by the medium used for transmission
    • H04B1/66Details of transmission systems, not covered by a single one of groups H04B3/00 - H04B13/00; Details of transmission systems not characterised by the medium used for transmission for reducing bandwidth of signals; for improving efficiency of transmission
    • H04B1/667Details of transmission systems, not covered by a single one of groups H04B3/00 - H04B13/00; Details of transmission systems not characterised by the medium used for transmission for reducing bandwidth of signals; for improving efficiency of transmission using a division in frequency subbands
    • 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/02Conversion to or from weighted codes, i.e. the weight given to a digit depending on the position of the digit within the block or code word

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Transmission Systems Not Characterized By The Medium Used For Transmission (AREA)
  • Reduction Or Emphasis Of Bandwidth Of Signals (AREA)

Description

N.V. Philips' Gloeilampenfabrieken te Eindhoven.
Kodeerinrichting bevattende een subbandkoder, en een zender voorzien van de kodeerinrichting.
De uitvinding heeft betrekking op een kodeerinrichting bevattende een subbandkoder, voor het subbandkoderen van een breedband digitaal signaal, bijvoorbeeld een digitaal audiosignaal, met een zekere bemonsteringsfrekwentie Fs, waarbij de subbandkoder is voorzien van signaalsplitsingsmiddelen voor het in responsie op het breedbandige digitale signaal genereren van een aantal van M subbandsignalen met bemonsterfrekwentieverlaging, waartoe de splitsingsmiddelen het breedbandige digitale signaal opsplitsen in opeenvolgende subbanden met bandnummers m die toenemen met de frekwentie waarbij voor m geldt 1<m<M, en waarbij de kodeerinrichting verder bevat kwantiseringsmiddelen voor het bloksgewijs kwantiseren van de respektieve subbandsignalen, een gekwantiseerd subbandsignaal zijnde opgebouwd uit opvolgende blokken, elk signaalblok in een subband SBffl bevattende q bemonsteringen, waarbij de q bemonsteringen in een signaalblok elk met nm bits zijn gerepresenteerd, de kwantiseringsmiddelen bevattende bitbehoeftebepalingsmiddelen voor het voor overeenkomstige signaalblokken in de subbanden per signaalblok bepalen van een bitbehoefte bffl, die in relatie staat tot het aantal bits waarmee bemonsteringen in een signaalblok in de subband SBm zouden moeten worden gerepresenteerd, en bevattende bitverdelingsmiddelen voor het toekennen van de beschikbare hoeveelheid bits B aan de verschillende subbanden in afhankelijkheid van de bitbehoefte zoals die is bepaald door de bitbehoeftebepalingsmiddelen, ter verkrijging van de waardes nm, waarbij m loopt van 1 tot en met M, de kodeerinrichting verder bevattende middelen voor het onderbrengen van de met een zekere hoeveelheid bits gekwantiseerde bemonsteringen in een signaalblok, in een frame van een tweede digitale signaal, bevattende op elkaar volgende frames, waarbij de middelen verder zijn ingericht voor het in een frame onderbrengen van schaalfaktorinformatie, de enliaal fnVfnrinfnrmaf îû Kmraffûnilû v-Viifc unrtrilon ûûti v—Vil 4* unnrfl representerende een schaalfaktor behorende bij de bemonsteringen van een signaalblok, en op een zender voorzien van de kodeerinrichting.
De kodeerinrichting van de in de aanhef genoemde soort is bekend uit de Europese oktrooiaanvrage nr. 289.080, prior art dokument (1) in de lijst met dokumenten die aan het eind van de figuurbeschrijving is terug te vinden.
De uitvinding richt zich in het bijzonder op de bitbehoeftebepalingsmiddelen die, uitgaande van de uitgangssignalen van de subbandfliters de bitbehoeftes b^ tot en met Ity voor overeenkomstige signaalblokken in de subbanden SB^ tot en met SBjj bepalen.
De uitvinding beoogt daarbij om door middel van een nieuwe methode de bitbehoeftes af te leiden.
De kodeerinrichting volgens de uitvinding heeft daartoe het kenmerk, dat de bitbehoeftebepalingsmiddelen zijn ingericht voor het voor overeenkomstige signaalblokken in de subbanden schatten van het vermogen vm in een signaalblok in een subband SBm, het bepalen van de bemonstering SFm met de grootste absolute waarde in het signaalblok, - voor het berekenen van de grootheid wm volgens de formule
Figure NL9001128AD00031
- voor het berekenen van bm volgens de formule bB = K,. 2log (SF2/wmHK2 dat dffl een matrixkoefficient is in een MxM matrix [D], welke matrixkoefficient aangeeft de vermenigvuldigingsfaktor waarmee het vermogen Vj, in de subband i wordt vermenigvuldigd om te berekenen wat het gemaskeerde vermogen in de subband m is ten gevolge van het signaal in het signaalblok in de subband i, wr m een maat is voor de maskeringsdrempel in de subband m en en K2 konstantes zijn.
Nu zij hier vermeld dat in de prior art ook al een bitbehoefte voor de overeenkomstige signaalblokken in de verschillende subbanden werd bepaald. Daarbij worden echter andere algorithmen gebruikt en gaat men van andere uitgangspunten uit.
Zo wordt in het prior art dokument (3) per subband een signaal-ruis verhouding bepaald. Deze signaal-ruis verhouding, in dB uitgedrukt, en gedeeld door 6, levert dan de bitbehoefte in een subband.
De koefficienten en K2 kiest men bij voorkeur gelijk aan 0,5 respektievelijk -0.5 2log3.
Bij het berekenen van de bitbehoeftes wordt bij voorkeur gebruik gemaakt van een logarithmische representatie voor de diverse grootheden. Dit heeft als voordeel dat men in de berekening kan volstaan met een relatief kleine woordbreedte (aantal bits waarmee de diverse grootheden worden gerepresenteerd) voor de diverse grootheden terwijl toch een voldoende grote relatieve nauwkeurigheid voor de bitbehoeftes kan worden gerealiseerd. Dit betekent dat de elektronika voor het realiseren van de bitbehoeftebepalingsmiddelen eenvoudiger kan zijn.
De uitvinding zal aan de hand van een aantal uitvoeringsvoorbeelden in de hierna volgende figuurbeschrijving nader worden uiteengezet. Hierin toont figuur 1 de kodeerinrichting volgens de uitvinding, figuur 1a de overeenkomstige signaalblokken in de subbandsignalen SB^ tot en met SBM, elk signaalblok bevattende q bemonsteringen, figuur 2 de kwantisatie naar een drie bits binaire representatie, figuur 3 de ligging van de bitbehoeftes b^, b2, ... langs de waardeas, figuur 4 de werkwijze van het bepalen van de bitbehoeftes b-ji ···» by, figuur 5 de werkwijze van het verdelen van de bits over de subbanden, figuur 6 de initiële toewijzing van de bits, figuur 7 de korrektietabel te gebruiken bij optellingen van getallen, gebruikmakend van een logarithmische representatie van deze getallen, figuur 8 een hardware uitvoering van de bitbehoeftebepalingsmiddelen, figuur 9 een hardware uitvoering van de bitverdelingsmiddelen, figuur 10 de toepassing in een zender in de vorm van een optekeninrichting voor het optekenen van de gekwantiseerde subbandsignalen op een magnetische registratiedrager, figuur 11, 12 en 13 de verschillende allocatiefases in afhankelijkheid van de waarde van het vermogen v^, en figuur 14 een uitwerking van de eenheid voor het genereren van de stuursignalen, kenmerkende de verschillende allocatiefases.
Figuur 1 toont de kodeerinrichting volgens de uitvinding. Aan de ingangsklem 1 wordt een breedbandig digitaal signaal aangeboden. Te denken valt daarbij aan een audiosignaal dat een bandbreedte van ongeveer 20 kHz bezit. Het audiosignaal kan een stereo audiosignaal zijn. In dat geval zal verder slechts één van de twee signaaldelen (het linker of het rechter signaaldeel) van het stereo audiosignaal besproken worden. Voor het andere signaaldeel gebeurt dan hetzelfde.
Aan de ingang 1 worden bijvoorbeeld 16 bits bemonsteringen van het audiosignaal met een bemonsteringsfrekwentie van 44 kHz aangeboden. Het audiosignaal wordt aangeboden aan een subbandcoder 2, die is voorzien van signaalsplitsingsmiddelen. De subbandcoder 2 verdeelt het audiosignaal over M subbanden door middel van een M-tal filters, te weten een laagdoorlaatfilter LP, M-2 bandpasfliters BP en een hoogdoorlaatfilter HP. M is bijvoorbeeld gelijk aan 32. De M subbandsignalen worden in bemonsterfrekwentie verlaagd in de met het referentienummer 9 aangegeven blokken. Daarin wordt de bemonsteringsfrekwentie met een faktor M verlaagd. De aldus verkregen signalen worden aangeboden aan de uitgangen 3.1, 3.2, ..., 3.M. Aan de uitgang 3.1 wordt het signaal in de laagste subband SB^ aangeboden.
Aan de uitgang 3.2 wordt het signaal in de op één na laagste subband SB2 aangeboden. Aan de uitgang 3.M wordt het signaal in de hoogste subband SBM aangeboden. De signalen aan de uitgangen 3.1 tot en met 3.M zijn in de vorm van opvolgende bemonsteringen die zijn uitgedrukt in 16 of meer, bijvoorbeeld 24, bits getallen. In het huidige uitvoeringsvoorbeeld hebben de subbanden SB^ tot en met SBM alle eenzelfde breedte. Noodzakelijk is dit echter niet.
In de prior art publikatie (5), Krasner, is bijvoorbeeld een opdeling in een aantal subbanden gegeven, waarvan de bandbreedten bij benadering korresponderen met de bandbreedten van de kritieke banden van het menselijk oor in de respektieve frekwentiegebieden. De werking van de subbandcoder 2 zal niet verder worden uitgelegd aangezien de werking van een subbandcoder reeds eerder uitgebreid is beschreven. Daartoe zij verwezen naar de prior art documenten (1), (5) en (7), die waar nodig worden geacht in deze aanvrage te zijn opgenomen.
De subbandsignalen worden in opvolgende signaalblokken van q opvolgende bemonsteringen samengenomen, zie figuur 1a, en worden toegevoerd aan een bijbehorende kwantisator tot en met QM. In een kwantisator Qm worden de bemonsteringen gekwantiseerd tot gekwantiseerde bemonsteringen met een aantal bits n^ dat kleiner is dan 16.
Figuur 2 toont een kwantisering naar een 3 bits binaire representatie. Tijdens het kwantiseren worden telkens de signaalblokken (groepen) van q opvolgende bemonsteringen van de subbandsignalen gekwantiseerd naar een aantal bits (van 3 in het voorbeeld van figuur 2). q is bijvoorbeeld gelijk aan 12. Daarbij worden de q bemonsteringen in een signaalblok eerst genormeerd. Dit normeren vindt plaats door de amplitudes van de q bemonsteringen te delen door de amplitude van de bemonstering met de grootste absolute waarde in het signaalblok. De amplitude van de bemonstering met de grootste amplitude in het signaalblok van de subband SBffl levert de schaalfaktor SFm, zie document (2a), (2b). Vervolgens worden de amplitudes van de genormeerde bemonsteringen, die nu liggen in een amplitudebereik van -1 tot +1, gekwantiseerd volgens figuur 2.
Dat betekent dat bemonsteringen in het amplitudebereik tussen -1 en -0.71 worden gekwantiseerd naar het 3 bits getal 000, bemonsteringen in het amplitudebereik van -0.71 tot -0.42 naar 001, bemonsteringen in het amplitudebereik van -0.42 tot -0.14 naar 010, bemonsteringen in het amplitudebereik van -0.14 tot 0.14 naar 001, bemonsteringen in het amplitudebereik van 0.14 tot 0.42 naar 100, bemonsteringen in het amplitudebereik van 0.42 tot 0.71 naar 101 en bemonsteringen in het amplitudebereik van 0.71 tot 1.00 naar 110.
In het prior art document (2b) staat deze drie bits kwantisatie uitvoerig beschreven, zie de figuren 24, 25 en 26 en de bijbehorende beschrijving in dit document.
De gekwantiseerde bemonsteringen in de subbanden SB^ tot en met SB^ worden vervolgens aan de respektievelijk uitgangen 4.1 tot en met 4.M aangeboden.
De uitgangen 3.1 tot en met 3.M zijn verder gekoppeld met de respektievelijke ingangen 5.1 tot en met 5.M van bitbehoeftebepalingsmiddelen 6. De bitbehoeftebepalingsmiddelen 6 bepalen voor in de tijd gezien overeenkomstige signaalblokken van q bemonsteringen in de subbanden SB^ tot en met SBM de bitbehoefte bffl. De bitbehoefte bffi is een getal dat in relatie staat tot het aantal bits waarmee de q bemonsteringen in een signaalblok van q bemonsteringen in een subbandsignaal zouden moeten worden gekwantiseerd.
De bitbehoeftes b^ tot en met bM, door de bitbehoeftebepalingsmiddelen 6 afgeleid, worden toegevoerd aan bitverdelingsmiddelen 7. De bitverdelingsmiddelen 7 bepalen uitgaande van de bitbehoeftes b^ tot en met bM het werkelijke aantal bits n^ tot en met waarmee de q bemonsteringen van de overeenkomstige signaalblokken in de subbandsignalen SB^ tot en met SB^ worden gekwantiseerd. Stuursignalen overeenkomende met de getallen n^ tot en met njj worden via de leidingen 8.1 tot en met 8.M naar de respektievelijke kwantisatoren tot en met toegevoerd, zodat de kwantisatoren de bemonsteringen met het juiste aantal bits kunnen kwantiseren.
Hierna zal worden uiteengezet hoe de bitbehoeftebepalingsmiddelen 6 en de bitverdelingsmiddelen 7 funktioneren. De bitbehoeftes voor in de tijd overeenkomstige signaalblokken van q bemonsteringen in de subbandsignalen SB^ tot en met SBm worden afgeleid uit schattingen voor het vermogen vm en de schaalfaktor SFm in een signaalblok in een subbandsignaal SBm.
Het vermogen vm kan bijvoorbeeld worden verkregen met de volgende formule:
Figure NL9001128AD00081
waarbij s^ de amplitude van de i-de bemonstering is in het signaalblok van q bemonsteringen in de subband SBm. De schaalfaktor SFm was, zoals reeds eerder gezegd, gelijk aan de amplitude van de bemonstering in het signaalblok met de grootste absolute waarde.
Er zij hier vermeld dat de schatting voor het vermogen vm in een signaalblok in de subband SBm ook verkregen had kunnen worden door vm gelijk te nemen aan het kwadraat van de schaalfaktor SFm·
Voor alle overeenkomstige signaalblokken in de subbandsignalen SB^ tot en met SBjj worden zo het vermogen vm en de schaalfaktor SFm bepaald. De vermogens worden gerangschikt in een vektor {v}. Door de vektor {v} te vermenigvuldigen met een Μ x M matrix [D] verkrijgt men, gebruikmakend van de volgende formule een vektor {w}: iw} = [D] {v} + {wr>
Hierin is [D] een matrix waarvan de koefficienten d^j aangeven de vermenigvuldigingsfaktor waarmee het vermogen Vj van het signaalblok van q bemonsteringen in het subbandsignaal SBj vermenigvuldigd moet worden om het gemaskeerde vermogen te berekenen in de subband SB^, ten gevolge van het signaal in het signaalblok van q bemonsteringen in het subbandsignaal SBj, en is wr ^ de koefficient in de vektor {wr} die aangeeft de maskeringsdrempel in de subband SB^. wr m staat dus in relatie tot het maximale signaalvermogen in een subband SBm dat je niet kunt horen.
De vektor {w> bevat nu koefficienten w^ die schattingen zijn voor het vermogen van de gemaskeerde kwantiseringsruis in elke subband SB^. Kwantiseringsruis in subband SB^ met een vermogen kleiner dan w^ is dus onhoorbaar. De koefficienten d^j van de matrix [D] zijn uit de literatuur te berekenen, zie daarvoor het prior art document (4). De bitbehoefte b-j tot en met bM kunnen nu berekend worden met de volgende formule bn = 0.5 2log (SFm2/3wm) of meer algemeen: bm = K1 2log (SFm2/wm)+K2
De eerste formule is eenvoudig uit de tweede formule af te leiden door te stellen: = 0,5 en K2 = -K.|2log3 K1 en K2 zijn konstantes.
De koefficienten (bitbehoeftes) b1 tot en met bM die op deze wijze zijn verkregen liggen in een zeker amplitudebereik. De koefficienten kunnen niet gehele getallen, en kunnen negatief zijn. Een koefficient bffl heeft een zodanige relatie met het aantal bits waarmee de bemonsteringen in een signaalblok van q bemonsteringen van een subband signaal SBm zouden moeten worden gekwantiseerd dat geldt dat indien b^ voor subbandsignaal SB^ groter is dan bm2 voor het subbandsignaal SBm2, het aantal bits waarmee de q bemonsteringen in een signaalblok in het subbandsignaal SBm^ zouden moeten worden gekwantiseerd groter zal moeten zijn dan het aantal bits waarmee de q bemonsteringen van een in de tijd gezien overeenkomstige signaalblok in het subbandsignaal SBm2 zouden moeten worden gekwantiseerd.
Dit is kwalitatief aan de hand van figuur 3 getoond. In figuur 3 zijn een zevental bitbehoeftes b1 tot en met b5, bmax en bmin langs de waardeas uitgezet. bmax is de bitbehoefte met de grootste waarde en bm^n is de bitbehoefte met de kleinste waarde. Zichtbaar is dat bmin, b2 en b5 negatief zijn en dat verder geldt bmin<b5<b2<b^<bi<b3<bmaX. Kwalitatief kan nu gesteld worden dat het subbandsignaal SBm met bm=bmin met het minste aantal bits gekwantiseerd zou moeten/kunnen worden en het subbandsignaal SBm met bm=bmax met het meeste aantal bits.
Figuur 4 toont een stroomdiagram van de werking van de bitbehoeftebepalingsmiddelen 6.
Figuur 4 toont het programma voor het bepalen van de bitbehoeftes b^ tot en met b^ voor in de tijd gezien overeenkomstige signaalblokken van q bemonsteringen in de subbandsignalen SB^ tot en met SBjj. Daarbij gaat het dus om slechts één signaalblok van q bemonsteringen in een subbandsignaal. Voor een direkt opvolgende signaalblok van q bemonsteringen in het subbandsignaal, en de (bij een parallelle aanvoer van de subbandsignalen, in de tijd gezien) met het signaalblok overeenkomstige signaalblokken in de andere subbandsignalen wordt de werkwijze van figuur 4 dus opnieuw uitgevoerd.
De werkwijze start bij blok 10. Eerst wordt de lopende variabele n op 1 gezet (blok 12). Vervolgens worden de q bemonsteringen S-μ Sg van een signaalblok in een subbandsignaal SBm ingelezen (blok 14) en wordt het vermogen Vffl berekend (blok 16).
Eveneens wordt de schaalfaktor SFm (blok 18) bepaald.
De blokken 14, 16 en 18 worden herhaald voor alle subbandsignalen via de lus met de blokken 20 en 22. Zijn voor alle overeenkomstige signaalblokken de waardes Vm en SFm bepaald dan wordt de matrixberekening uitgevoerd ter verkrijging van de vektor (w) (blok 24).
Vervolgens wordt m opnieuw gelijk aan 1 genomen (blok 26) en wordt de bitbehoefte bm bepaald (blok 28) voor alle subbanden, via de lus met de blokken 30 en 32, waarna de werkwijze wordt beëindigd (blok 34).
De werkwijze van figuur 4 toont het in de tijd gezien na elkaar bepalen van de koefficienten vm in de vektor (v), zie de lus in het programma via het blok 22 en het in de tijd na elkaar uitrekenen van de bitbehoeftes b, tot en met by, zie de lus via het blok 32. Dit is een goed bruikbare werkwijze, in het bijzonder indien de overeenkomstige signaalblokken met de bemonsteringen s, tot en met s voor de opvolgende subbanden SB.,, SB2, ... SBM_1r SBM, serieel worden aangeboden.
Worden de signaalblokken parallel en op hetzelfde moment aangeboden, dan zou de berekening van de koefficienten vffl in de tijd gezien parallel voor alle subbanden kunnen worden uitgevoerd en is de lus met het blok 22 dus niet nodig. Evenzo kunnen de bitbehoeftes b, tot en met bM in de tijd gezien parallel naast elkaar worden uitgerekend en is de lus met het blok 32 overbodig.
De werking van de bitverdelingsmiddelen 7 zal nu worden uiteengezet. Daarbij zal gebruik gemaakt worden van het stroomdiagram van figuur 5. Het programma bepaalt voor in de tijd gezien overeenkomstige signaalblokken van q bemonsteringen in de subbandsignalen SB, tot en SBM de waardes n, tot en met njj uit de bitbehoeftes b, tot en met bM. Ook hier gaat het om slechts één signaalblok van bemonsteringen in een subbandsignaal. Voor een direkt opvolgend signaalblok van q bemonsteringen in het subbandsignaal en de in de tijd gezien met signaalblok overeenkomstige signaalblokken in de andere subbandsignalen wordt de werkwijze van figuur 5 dus opnieuw uitgevoerd.
Er wordt nu aangenomen dat, voor het overzenden van de totale informatie verband houdende met de M signaalblokken van q bemonsteringen van bijvoorbeeld 24 bits elk, na kwantisatie Bq bits ter beschikking staan. Stel dat men na kwantisatie, gemiddeld over de subbanden, R bits per bemonstering beschikbaar heeft, dan geldt dat Bq gelijk is aan het grootste gehele getal kleiner dan M.q.R.
In de prior art documenten (2a) en (2b) is aangegeven dat niet alleen de gekwantiseerde bemonsteringen worden overgezonden, doch ook de schaalfaktoren SF^ tot en met SFM (de schaalfaktorinformatie) en de bitallocatieinformatie (dat wil zeggen informatie die in relatie staat tot het aantal bits waarmee de bemonsteringen van een signaalblok in een subbandsignaal zijn gekwantiseerd, dat zijn de waardes n^ tot en met nM). De bitallocatieinformatie wordt daarbij met y=4 bits voor elke nm aangegeven. Dit betekent dus dat feitelijk voor het overzenden van de M signaalblokken van gekwantiseerde subbandsignalen en de schaalfaktorinformatie, er slechts B=Bq-y.M bits beschikbaar zijn.
Verder is in de documenten (2a) en (2b) beschreven dat het y(=4) bits getal 0000 in de bitallocatieinformatie betekent dat er geen bemonsteringen in de bijbehorende subband worden overgezonden. In dat geval wordt er voor die subband ook geen schaalfaktorinformatie overgezonden. De schaalfaktorinformatie wordt voor een subband door middel van een x(=6) bits getal weergegeven.
De werkwijze voor het toekennen van de bits is nu als volgt. De werkwijze start in blok 14, figuur 5. Daarna worden eerst alle getallen nm op nul gezet. Vervolgens wordt een initiële bittoekenning in blok 44 uitgevoerd. Deze initiële bittoekenning wordt later aan de hand van figuur 5 nog uitgelegd. Vervolgens wordt de bitbehoefte met de grootste waarde bepaald. Dat is de bitbehoefte bj.
In het voorbeeld van figuur 3 zou dit bmax zijn. Vervolgens wordt gekeken of nj groter is dan of gelijk aan een zekere waarde nfflax (blok 48). nmqx is in het huidige voorbeeld gelijk aan 16. Dat betekent dat de gekwantiseerde bemonsteringen dus slechts door binaire getallen van maximaal 16 bits kunnen worden gerepresenteerd.
Als nj groter is dan of gelijk aan η^χ, dan wordt het signaalblok van q bemonsteringen in de subband j voor de toekenning van verdere bits uitgesloten. Daartoe wordt de bitbehoefte bj gelijk gemaakt aan een zogenaamde "vlagwaarde" (blok 66). De vlagwaarde is in figuur 3 aangegeven en is een waarde die kleiner is dan de kleinste bitbehoefte bm^n. Indien in het nog later te bespreken blok 56 groter is dan 1, dan zou nj mogelijk groter dan kunnen zijn. In het blok 66 zal dan bovendien nj nog gelijk aan nmax genomen worden.
Als nj gelijk is aan nul (blok 50), dan loopt het programma via de blokken 52 en 54 verder. In het blok 54 wordt nu voor de eerste maal a^ bits toegekend aan de subband SBj. Dat wil zeggen nj = a1. Het totaal aantal B nog beschikbare bits verlaagt nu met a^.q+x. De q gekwantiseerde bemonsteringen van het signaalblok in het subbandsignaal SBj worden namelijk elk met a1 bits gerepresenteeerd, en bovendien moet een schaalfaktor SFj, die x bits lang is, worden toegevoegd. Verder wordt in blok 54 de bitbehoefte bj met een waarde a2 verlaagd. Is nj ongelijk aan nul, dan loopt het programma via het blok 56. Het aantal bits nj wordt nu verhoogd met c-j. Het totaal aantal B nog beschikbare bits verlaagt nu met c^.q, vanwege het feit dat de q gekwantiseerde bemonsteringen van een signaalblok nu met een extra aantal van c^ bits worden gerepresenteerd.
Toekenning vindt natuurlijk alleen plaats indien er nog voldoende beschikbare bits zijn. Vandaar de aanwezigheid van het blok 52. Zijn er namelijk niet voldoende beschikbare bits aanwezig, dan loopt het programma via het blok 66 waarin de bijbehorende bitbehoefte bj weer gelijk wordt gemaakt met de vlagwaarde. Het signaalblok in de bewuste subband is dan voor verdere toekenning van bits uitgesloten.
Zolang er nog bitbehoeftes zijn met een waarde groter dan de vlagwaarde (blok 58) en er nog voldoende beschikbare bits over zijn (blok 60) loopt het programma via de keten 62 terug naar het blok 46 voor een volgende bepaling van de grootste bitbehoefte. Zijn alle bitbehoeftes bffl kleiner dan of gelijk aan de vlagwaarde, dan eindigt het programma. Het programma eindigt ook als er onvoldoende bits nog te verdelen zijn (blok 60).
Kenmerkend in de werkwijze is dat bij een eerste toekenning van een aantal bits (blok 54), dit aantal (a^) groter is dan bij één of meer volgende toekenningen (blok 56) (c-j), ofwel a^Cj. Verder geldt dat a2 groter is dan of gelijk is aan 1. Bij voorkeur is a1 gelijk aan a2 en is c1 gelijk aan c2. a^, a2, en C2 zijn getallen groter dan nul. a^ en zijn bij voorkeur gehele getallen. Doch noodzakelijk is het niet. Daartoe een voorbeeld.
Neem aan dat men de q bemonsteringen in een signaalblok in vijf niveaus wil kwantiseren. Daartoe heeft men 3 bits per bemonstering nodig. Dit is echter geen efficiente kodering, aangezien met 3 bits een opdeling in zeven niveaus mogelijk is.
Neemt men echter drie bemonsteringen samen, dan leveren deze drie bemonsteringen bij vijf signaalniveaus 125 mogelijkheden. Deze 125 mogelijkheden kan men door middel van een 7 bits binair getal representeren. Per bemonstering dus slechts 7/3 bits. nm zou in dit geval gelijk zijn aan 7/3. Dit levert een efficientere kodering op.
In het voorgaande is aangegeven dat bij het verzenden van de gekwantiseerde bemonsteringen zowel schaalfaktorinformatie als bitallocatieinformatie wordt meegezonden. De schaalfaktorinformatie is daarbij in de vorm van x-bits woorden, elk x-bits woord representerende een schaalfaktor SFm behorende bij de q bemonsteringen in een signaalblok in de subband SBm. De bitallocatieinformatie is daarbij in de vorm van y-bits woorden, elk y-bits woord representerende het aantal bits nffl waarmee elke bemonstering in een signaalblok in de subband SBm is weergegeven. In een eerdere instantie is daarvoor al verwezen naar de prior art documenten (2a) en (2b).
Is bij de berekening van de vermogens vm in de bitbehoeftebepalingsmiddelen 6 enkel gebruik gemaakt van de schaalfaktoren SFm, namelijk doordat vm gelijk genomen wordt aan het kwadraat van SFffl, dan hoeft de bitallocatieinformatie niet te worden meegezonden.
Aan de ontvangerzijde kan namelijk uitgaande van de overgezonden schaalfaktoren SFffl weer de bitbehoeftes b^ tot en met bM worden afgeleid en uitgaande daarvan weer de grootheden n^ tot en met nM, en wel gebruikmakend van de berekenwijze zoals hiervoor is aangegeven. De ontvanger bevat dan dus eveneens bitbehoeftebepalingsmiddelen, die uit de schaalfaktoren SFm de vermogens vm afleiden, en daaruit weer de bitbehoeftes bm afleiden, en bitverdelingsmiddelen, die uitgaande van de bitbehoeftes bm en de beschikbare hoeveelheid bits, die in dit geval gelijk is aan Bq, de grootheden n1 tot en met nM kunnen berekenen. Daar, zoals eerder vermeld, geldt dat B=B0~y.M heeft de laatst beschreven methode het voordeel dat er meer bits over de subbanden verdeeld kunnen worden.
Soms kan het nodig of zinvol zijn vooraf reeds aan een signaalblok in een subband SBm een aantal bits toe te kennen.Bijvoorbeeld in het geval dat er signaalblokken zijn die, ongeacht hun bitbehoefte niet met nul bits gekwantiseerd mogen worden.
De reden hiervoor is dat signaalblokken niet zonder meer aangeschakeld of uitgeschakeld mogen worden. Dit zou namelijk hoorbare effekten opleveren.
Uit het voorgaande volgt ook dat het soms nodig of zinvol kan zijn vooraf reeds een signaalblok van toekenning van bits uit te sluiten. Daarvoor is het blok 44 in het programma van figuur 5 ingevoerd. Figuur 6 toont een verdere uitwerking van het blok 44. Daarin zijn twee signaalblokken aangegeven, te weten de signaalblokken in de subbanden SBk en SB·^ die vooraf reeds een aantal bits Ak0 respektievelijk A·^ krijgen toegewezen. Dit betekent dat nk = A^q en n^ = A^q. Van de bitbehoeftes bk en b^ worden nu waardes Ajçi respektievelijk A^ afgetrokken en het nog beschikbare aantal bits B wordt verlaagd met Ak0.q-x respektievelijk A10.q-x. Voor Akg en A^g geldt feitelijke hetzelfde als voor a^. Bij voorkeur geldt Akg = A10 = a-j. Voor Ak1 en A^-j geldt weer hetzelfde als voor a2. Bij voorkeur geldt Akl = A11 = a2.
De signaalblokken in de subbanden SBk en SB^ kunnen natuurlijk in het blok 56 in de werkwijze van figuur 5 eventueel nog meer bits toegewezen krijgen.
Verder is in blok 44 in figuur 6 aangegeven dat het signaalblok in de subband SB^ van de toekenning van bits wordt uitgesloten. De bitbehoefte bj voor dit signaalblok wordt daartoe gelijk gemaakt aan de vlagwaarde.
Figuur 11, 12 en 13 geven aan de situaties waarbij al dan niet initieel bits aan een subband worden toegekend. De figuren tonen de opvolgende tijdintervallen ΔΤ waarbinnen een groep van M overeenkomstige signaalblokken uit de M subbanden wordt verwerkt. In elk tijdinterval wordt voor elke subband SB^ het vermogen v^(t) en de grootheid Wj^(t) bepaald. Is v^(t) groter dan w^(t) dan wordt er aan de subband SB^ initieel bits toegekend. Zoals uit figuur 11 duidelijk is, geldt dit voor tijden liggend vóór t=t^. Figuur 14 toont een schakeling waarmee, uitgaande van de grootheden en w^, stuursignalen kunnen worden afgeleid die aangeven of er een initiële bitallocatie moet plaats vinden, in dat geval is de uitgang van de SR flipflop 140 “hoog" ofwel "logisch 1", of er geen bitallocatie plaatsvindt, in dat geval is de uitgang van de SR flipflop 141 "hoog", of dat er geen initiële bitallocatie plaatsvindt, in dat geval is de uitgang van een teller 142 "hoog". In dat laatste geval kunnen nog wel bits worden toegekend aan de bewuste subband, doch die toekenning vindt dan plaats, in het blok 54 en eventueel ook in het blok 56, in de werkwijze van figuur 5. Deze stuursignalen kunnen dus naar het blok 44 in figuur 6 worden toegevoerd en geven aan welke funkties in dit blok moeten worden uitgevoerd.
Op het tijdstip t=t^ wordt v^(t) kleiner dan Wj^(t). De uitgang 144 van de komparator 143 wordt nu "laag", terwijl de uitgang 145 van deze komparator "hoog" wordt. Via de OF-poort 147 wordt dit "hoge" signaal toegevoerd aan de EN-poort 148, zodat klokimpulsen met een frekwentie f gelijk aan 1/ΔΤ worden doorgelaten naar de EN-poort 149. Daar via de inverter 150 een "hoog" signaal wordt toegevoerd aan de andere ingang van de EN-poort 149 worden de klokpulsen doorgelaten naar de ingang 151. De teller 142 telt nu onder invloed van de klokpulsen omlaag vanaf de beginstand 5 (decimaal), zie figuur 11. Aangezien de uitgang van de teller 142 laag blijft verandert de stand van de flipflop 140 niet, zodat de initiële bitallocatie gehandhaafd blijft.
Een tijdinterval later is v^(t) weer groter dan Wj^(t). De uitgang 144 van de komparator 143 wordt weer hoog, wat betekent dat de opgaande flank via de OF-poort 152 wordt toegevoerd aan de setingang van de teller 142. De tellerstand van de teller 142 wordt weer op 5 (decimaal) gezet. Op het tijdstip t2, zie figuur 11, wordt v^(t) weer kleiner dan w^t). v^(t) blijft nu voldoende lang kleiner dan w^(t) om de teller 142 geheel te laten terugtellen tot de tellerstand 0 (decimaal) is bereikt. Dat is op het tijdstip t=t3, zie figuur 11. Op dit moment wordt de uitgang van de teller 142 "hoog". De flipflop 140 wordt nu gereset. Via de inverter 150 en de EN-poort 149 wordt het tellen 142 van de teller geblokkeerd, zodat deze de tellerstand 0 behoudt.
Er wordt nu voor deze subband niet meer initieel bitten toegekend. Op het tijdstip t=t^ wordt v^(t) weer groter dan wjjt). De teller 142 wordt weer op de tellerstand 5 gezet en bovendien wordt de flipflop 140 gezet, zodat er weer initieel bits worden toegekend.
Figuur 12a geeft een situatie weer waarbij v^(t), nog vóórdat de teller 142 naar "0" is geteld, al lager wordt dan een zekere drempelwaarde Vy^. °P hei tijdstip t=tg wordt dus de uitgang 145 van de komparator 143 weer "laag“ en wordt de uitgang 146 "hoog". Doordat de inverter 153 een "hoog" signaal aan de ene ingang van de EN-poort 154 levert wordt het "hoge" signaal aan de uitgang 146 via de EN-poort 154 en de OF-poort 147 doorgegeven aan de EN-poort 148. De teller 142 blijft dus doortellen. De initiële bitallocatiefase blijft dus gehandhaafd, totdat de tellerstand 0 (decimaal) bereikt wordt. De uitgang van de teller 142 gaat nu kortstondig omhoog. Dit heeft tot gevolg dat via de En-poort 155 de flipflop 141 wordt gezet. Het hoge uitgangssignaal van de flipflop 141 wordt via de EN-poort 156 en de OF-poort 152 toegevoerd aan de setingang van de teller 142, die dus direkt daarna op de stand 5 (decimaal) springt. Bovendien wordt nu het verder omlaag tellen van de teller 142 geblokkeerd doordat de inverter 153 nu een "laag" signaal toevoert aan de ene ingang van de EN-poort 154. Er worden nu vanaf het tijdstip tg in het geheel geen bits toegekend aan de betreffende subband.
Figuur 12b geeft de situatie aan waarbij Vjjt) voldoende lang in het gebied tussen ν^χ en w^(t) heeft gezeten zodat de "niet-initiële bitallocatie" fase is ingetreden. Op het tijdstip tη wordt v^ kleiner dan Vy^. Op dit ogenblik wordt de uitgang 145 "laag" en de uitgang 146 "hoog".
Op dit moment wordt via de EN-poort 155 de flipflop 141 gezet en wordt via de EN-poort 156 en de OF-poort 152 de teller 142 weer op de tellerstand 5 gezet. De uitgang van de teller 142 wordt dus “laag" en de uitgang van de flipflop 141 wordt "hoog". Er worden geen bits toegekend.
Figuur 13 toont de situatie waarbij v^(t) weer groter wordt. Op het tijdstip t8 wordt v^(t) groter dan Vy^.. De uitgang 145 wordt nu "hoog" zodat de teller 142 nu omlaag kan tellen. Een tijdinterval later is v^(t) weer kleiner dan Vy^. De uitgang 146 wordt weer "hoog" zodat via de EN-poort 156 en de OF-poort 152 de teller weer op de stand 5 wordt gezet. Is v^(t) voldoende lang groter dan vthr, dan kan de teller 142 terugtellen tot de stand nul. Op t=tg wordt de uitgang van de teller 142 "hoog". Via de EN-poort 159 die via de inverter 158 een "hoog" signaal krijgt toegevoerd wordt de flipflop 141 gereset, zodat op dit moment de "geen-bit allocatie" fase wordt beëindigd en overgaat in de "geen-initiêle bitallocatie" fase.
Hierna zal een vereenvoudigde berekening van de bitbehoefte bm worden uiteengezet. In deze berekening wordt gebruik gemaakt van een logarithmische representatie voor de diverse grootheden die in de berekening een rol spelen. Dit is mogelijk omdat het bij de berekening van de bitbehoeftes b^ tot en met b^ niet om de absolute nauwkeurigheid van de bitbehoeftes gaat, doch om hun relatieve nauwkeurigheid.
In de logaritmische representatie wordt een getal g 1- benaderd met g=r*· waarbij r een vast grondtal is dat groter is dan 1 en de macht k geheel wordt gekozen. Het getal g wordt zo goed mogelijk benaderd door een juiste keuze van k. Het gehele getal k wordt gebruikt als representatie van g. In de berekening voor de bitbehoefte bm komen zowel vermenigvuldigingen tussen twee getallen, als optellingen van twee getallen voor. Vermenigvuldigingen komen in de logarithmische representatie overeen met optelling van de machten. Dat wil zeggen: is g-prn en g2=rA2, dan is de logarithmische representatie van g.j.g2 gelijk aan k1+k2.
Voor de logarithmische representatie van optellingen van deze twee getallen g^ en g2 geldt het volgende. Nemen wij aan dat g.,>g2, dan geldt g1+g2 = rk1 + T(krk2*. De logaritmische representatie voor g-j+g2 is dus gelijk aan k.j + T(k^-k2) .T(k-|-k2) is een korrektiefaktor in de vorm van een geheel getal dat uit een tabel kan worden afgeleid. Figuur 7 toont een dergelijke tabel voor r=2^®. De waarde voor r gelijk aan 2^® kan worden verkregen uit een nauwkeurigheidsanalyse op de bitbehoeftes ^m*
Verder kan gekonkludeerd worden dat de berekening van de behoeftes bm in een logarithmische representatie met een juist gekozen grondtal r, in plaats van de gebruikelijke berekeningen in een lineaire fixed-point representatie, de woordbreedte van de getallen aanzienlijk reduceert. Bovendien is geen vermenigvuldiger-accumulator nodig voor het berekenen van de vektor {w}, maar slechts een eenvoudige accumulator en een tabel met een beperkt aantal entries. De tabel van figuur 7 komt bijvoorbeeld neer op een ROM met een inhoud kleiner dan 0,5 kbit. De in het ROM opgeslagen aantal getallen is betrekkelijk gering. Bovendien zijn deze getallen geordend. Het is daarom mogelijk om, ten koste van enige logika, de opzoektabel nog kleiner te maken.
Het zij hier vermeld dat de logarithmische representatie voor de optelling van twee getallen zoals hiervoor beschreven, op zich bekend staat onder de naam Zech logaritme, en is beschreven in document (6), zie in het bijzonder hoofdstuk 3, paragraaf 4, pagina 91.
De bitbehoeftebepalingsmiddelen 6 en de bitverdelingsmiddelen 7 kunnen in software uitgevoerd worden. Doch ook uitvoeringen in hardware zijn mogelijk. Zo toont figuur 8 een hardware uitvoering van de bitbehoeftebepalingsmiddelen 6.
Figuur 8 toont de overeenkomstige signaalblokken in de subbandsignalen SB^ tot en met SBM, die hier serieel aan een ingang 70 worden aangeboden. Het eerste monster s^ van de subband SB-j het eerst en het laatste monster sq van de subband SBM het laatst.
In de grootste waardebepaler 71 wordt voor elk signaalblok de grootste bemonstering SFffi bepaald, die vervolgens wordt opgeslagen in een geheugen 72. In een kwadrateereenheid 73 worden de bemonsteringen gekwadrateerd en vervolgens toegevoerd aan een ingang van een opteleenheid 74. De uitgang van de opteleenheid 74 is gekoppeld met een ingang van een geheugen 75. De uitgang van dat geheugen 75 is zowel gekoppeld met een tweede ingang van de opteleenheid 74 en een ingang van een deler 76. De met 74, 75 en 76 aangegeven onderdelen bepalen voor elk signaalblok de grootheid vm, zie het blok 16 in figuur 4. Daartoe wordt de eerste bemonstering s^ van een signaalblok 3 in het subbandsignal SBffl gekwadrateerd in de kwadrateereenheid 73 en in de opteller 74 opgeteld bij de waarde die is opgeslagen in het geheugen 75, welke waarde op dit moment nul is, en vervolgens opgeslagen in het geheugen 75. Vervolgens wordt de tweede bemonstering S2 gekwadrateerd, opgeteld bij de in het geheugen 75 opgeslagen waarde, en daar vervolgens in opgeslagen. Dit gaat zo door, totdat de laatste bemonstering Sg is gekwadrateerd en is opgeteld bij de in het geheugen 75 opgeslagen waarde. De aldus verkregen som in het geheugen 75 is gelijk aan q E Sj2 i=1 die vervolgens na deling door q in de deler 76, als koefficient vffl in het geheugen 77 wordt opgeslagen. Eenzelfde berekening wordt doorgevoerd voor de overeenkomstige signaalblokken van de andere subbanden totdat alle koefficienten van de vektor {v} in het geheugen 77 zijn opgeslagen. De bitbehoeftebepalingsmiddelen 6 bevatten verder een geheugen 78 voor het opslaan van de matrixkoefficient dffl^ van de matrix [D] en een geheugen 79 voor het opslaan van de koefficienten wr m van de vektor {wrh Uitgangen van de geheugens 77 en 78 zijn gekoppeld met ingangen van een vermenigvuldiger 80. Een uitgang van de vermenigvuldiger 80 is gekoppeld met een eerste ingang van een opteller 81, waarvan een uitgang is gekoppeld met de ingang van een geheugen 82. De uitgang van het geheugen 82 is zowel gekoppeld met een tweede ingang van de opteller 81 als met een eerste ingang van een opteller 83.
De elementen met referentiecijfer 80, 81 en 82 zijn bedoeld om de matrixvermenigvuldiging [D]{v> uit te voeren.
Daarbij worden voor een zekere subband m de waarden dm1 en v^ uit de geheugens 78 en 77 met elkaar vermenigvuldigd en via de opteleenheid 81 opgeteld bij de op dat moment in het geheugen 82 opgeslagen waarde, die nul en vervolgens in het geheugen 82 opgeslagen. Vervolgens worden dffl2 en V2 met elkaar vermènigvuldigd en opgeteld bij de in het geheugen 82 opgeslagen waarde. Dit gaat zo door totdat d^ en vM met elkaar zijn vermenigvuldigd en is opgeteld bij de in het geheugen 82 opgeslagen waarde. Op dat moment is in het geheugen 82 de waarde
M
r dnd vi i=1 opgeslagen. In de opteller 83 wordt daarbij nog de waarde wr m die in het geheugen 79 is opgeslagen, opgeteld. De aldus verkregen waarde wm wordt in het geheugen 84 opgeslagen. Deze werkwijze wordt herhaald voor de overeenkomstige signaalblokken in de andere subbanden, totdat alle koefficienten van de vektor {w} in het geheugen 84 zijn opgeslagen.
Vervolgens wordt voor elke subband SBffi de grootheden SFm en Wjj uit de geheugens 72 en 84 uitgelezen en toegevoerd naar de berekeneenheid, die uiteindelijk de bitbehoefte bm bepaald. Deze bitbehoefte wordt in een geheugen 86 opgeslagen. Deze berekening wordt ook voor de andere subbanden doorgevoerd, totdat alle bitbehoeftes b^ tot en met bjj in het geheugen 86 zijn opgeslagen.
Vervolgens kan voor een opvolgende reeks van M signaalblokken de werkwijze worden herhaald. Ook de inrichting van figuur 8 maakt gebruik van het feit dat de informatie serieel wordt aangevoerd. Zouden de signaalblokken parallel worden toegevoerd, dan zou de berekening grotendeels parallel kunnen plaatsvinden. Dat betekent bijvoorbeeld dat de schakeling met de elementen 71, 73, 74, 75 en 76 M maal in de schakeling aanwezig kunnen zijn. Evenzo zou dan de schakeling met de elementen 80, 81, 82 en 83 M maal aanwezig kunnen zijn.
Figuur 9 toont een hardware uitvoeringsvorm van de bitverdelingsmiddelen 7. De bitverdelingsmiddelen bevatten een geheugen 90 waarin het nog te verdelen aantal bits B is opgeslagen, een geheugen 91 waarin de waardes n^ tot en met n^ worden opgeslagen, en een geheugen 92 waarin de bitbehoeften b^ tot en met b^ zijn opgeslagen. Dit geheugen 92 zou overeen kunnen komen met het geheugen 86 in figuur 8. Aan het begin van een toekenningscyclus wordt in het geheugen 90 de initiële waarde voor B opgeslagen, die aanwezig is aan de klem 94. Verder zijn in het geheugen 92 de initiële waardes voor de bitbehoeftes bm opgeslagen en worden in het geheugen 91 allemaal nullen opgeslagen, door middel van een resetsignaal toegevoerd aan de klem 93.
Vervolgens bepaalt de detektor 95 de grootste waarde van de bitbehoeftes die zijn opgeslagen in het geheugen 92. Dit kan bijvoorbeeld gerealiseerd worden door alle bitbehoeftes b1 tot en met bM nu elkaar uit te lezen aan de uitgang 96 en deze bitbehoeftes via de leiding 97 toe te voeren aan de ingang 98 van de detektor 95. Aan de uitgang 99 levert de detektor 95 de index van de bitbehoefte bj met de grootste waarde. Deze index j wordt als adres gebruikt voor het via de leiding 100 adresseren van de geheugenplaatsen in de geheugens 91 en 92 waarin de waardes voor nj respektievelijk bj zijn opgeslagen, zodat deze waardes aan de uitgangen 101 respektievelijk 96 worden aangeboden.
De uitgang 101 is gekoppeld met een ingang van een nj=0 detektor 102. Detekteert de detektor 102 dat nj=0, dan levert de detektor aan de uitgang 103 een stuursignaal dat wordt toegevoerd aan stuursignaalingangen van stuurbare schakelaars S^, ^ en S3. Deze schakelaars komen daarop in de andere dan de getekende stand te staan. Dit betekent dat in de aftrekker 105 van de waarde B aanwezig aan de uitgang 106 van het geheugen 90, de waarde a^q+k afgetrokken wordt, en deze nieuwe waarde wordt via de leiding 104 weer toegevoerd aan de ingang 107 van dit geheugen, zodat de nieuwe waarde in het geheugen 90 wordt opgeslagen. Verder wordt via de leidingen 108 en 109 de waarde a^, die wordt aangeboden aan de klem 110, toegevoerd aan de ingang 111 van het geheugen 91. De schakelaar S4 staat namelijk in de getekende stand. Deze waarde a^ wordt als nieuwe waarde voor nj in het geheugen 91 opgeslagen. In de aftrekker 112 wordt van de waarde bj, aanwezig aan de uitgang 96 van het geheugen 92, de waarde afgetrokken. De aldus verkregen waarde wordt via de leidingen 113 en 114, de schakelaar Sg staat in de getekende stand, toegevoerd aan de ingang 115, zodat de nieuwe waarde voor bj in de geheugenplaats voor bj in het geheugen 92 kan worden opgeslagen.
De hiervoor beschreven werkwijze is de werkwijze zoals in blok 54 in figuur 5 aangegeven.
Detekteert de detektor 102 dat nj ongelijk nul is, dan wordt geen (of een ander) stuursignaal gegenereerd. De schakelaars S^, S2 en S3 staan dan in de getekende stand. Van de in het geheugen 90 opgeslagen waarde B wordt nu de waarde c^q afgetrokken en de aldus verkregen waarde weer in het geheugen 90 opgeslagen. Bij de waarde nj die uit het geheugen 91 via de uitgang 101 wordt uitgelezen, wordt de waarde c^ opgeteld in de opteller 117. De nieuwe waarde voor nj wordt vervolgens weer via de leidingen 108 en 109 aan de ingang 111 van het geheugen 91 toegevoerd, voor opslag in het geheugen 91.
Verder wordt van de waarde bj aanwezig aan de uitgang 96, in de aftrekker 112 de waarde C2 afgetrokken en de aldus verkregen waarde via de leidingen 113 en 114 aan de ingang 115 toegevoerd, voor opslag in het geheugen 92. De hier beschreven werkwijze komt in feite overeen met het blok 56 in de werkwijze van figuur 5.
In de werkwijze van figuur 5 is verder het beslisser blok 48 aangegeven dat, voor het geval nj > η^χ is er voor zorgt dat bj gelijk gemaakt wordt aan de vlagwaarde (blok 66 in figuur 5), en nj gelijk aan n^^ maakt (indien dat nodig zou blijken te zijn). In de schakeling van figuur 9 is daarmee rekening gehouden door middel van de nj > nmax detektor 118. Detekteert de detektor 118 een situatie waarbij nj > nmax, dan genereert de detektor 118 aan zijn uitgang 119 een stuursignaal dat wordt toegevoerd aan de stuuringang van de stuurbare schakelaar en, via een OF-poort 120, aan de stuuringang van de stuurbare schakelaar S^, die daar op in de andere dan de getekende stand komen te staan. De waarde nmax, toegevoerd aan de klem 121, wordt nu toegevoerd aan de ingang 111 van het geheugen 91 toegevoerd. ηιηλχ wordt nu in de geheugenplaats voor nj in het geheugen 91 opgeslagen. Evenzo wordt de vlagwaarde, zie het blok 122 aan de ingang 115 toegevoerd, zodat de vlagwaarde in de geheugenplaats voor bj in het geheugen 92 wordt opgeslagen.
Het spreekt natuurlijk voor zich dat er een centrale besturingseenheid (niet getekend) is die het uitgangssignaal van de detektor 118 detekteert, en op de detektie van dit signaal, alleen laadpulsen toevoert aan de geheugens 91 en 92 voor het opslaan van nmax en de vlagwaarde in de geheugens 91 en 92. Er wordt in dit geval geen laadpuls toegevoerd aan het geheugen 90, aangezien de waarde B in het geheugen onveranderd dient te blijven.
Verder wordt aan bj de vlagwaarde toegekend indien zowel nj gelijk is aan nul en B > a^q+x, zie de blokken 50, 52 en 66 in figuur 5. Daartoe is in de schakeling van figuur 9 de detektor 123 en de EN-poort 124 aangebracht. Op de aanwezigheid van de detektiesignalen van zowel de detektor 103 als de detektor 123 wordt de schakelaar Sg weer in de andere dan de getekende stand gezet en wordt de vlagwaarde bp in het geheugen 92 op de plaats j opgeslagen. In dit geval genereert de centrale besturingseenheid alleen een laadpuls voor het geheugen 92 en geen laadpulsen voor de geheugens 90 en 91.
Het spreekt natuurlijk voor zich dat de initiële toewijzing van bits zoals die aan de hand van figuur 6 reeds is beschreven, ook hier kan worden doorgevoerd, bijvoorbeeld aangestuurd door de daarvoor benodigde stuur- en adressignalen van de centrale besturingseenheid. Dit wordt niet verder uitgelegd aangezien aangenomen mag worden dat dit na de voorgaande uitleg voor de vakman duidelijk is.
Figuur 10 toont de toepassing van de subbandkoder zoals in het voorgaande beschreven, in een zender, in het bijzonder een zender in de vorm van een optekeninrichting voor het optekenen van de gekwantiseerde subbandsignalen in één of meer sporen op een magnetische registratiedrager.
Het met 130 aangewezen deel is de hier voorbesproken subbandkoder die de gekwantiseerde subbandsignalen afgeeft aan de uitgangen 4.1 tot en met 4.M.
Het met 131 aangegeven deel zet deze signalen om in een tweede digitale signaal, dat aan de uitgang 132 wordt aangeboden. Dit tweede digitale signaal is opgebouwd uit opvolgende frames, waarvan het formaat uitgebreid is beschreven in de prior art dokumenten (2a) en (2b). Ook de opbouw van het blok 131 is in deze dokumenten aangegeven.
Het met 133 aangegeven deel maakt het tweede digitale signaal geschikt om op een registratiedrager, bijvoorbeeld een magnetische registratiedrager 134, te worden opgetekend. De eenheid 133 bevat daartoe een 8 naar 10 omzetter. In een dergelijke omzetter worden datawoorden van 8 bits in de seriële informatiestroom omgezet naar kodewoorden van 10 bits. Verder kan een vervlechting (interleaving) plaatsvinden. Dit alles heeft ten doel aan de ontvangstkant (bij weergave van de registratiedrager) een foutenkorrektie op de ontvangen informatie mogelijk te maken.
Het uitgangssignaal van het blok 133 wordt toegevoerd aan schrijfmiddelen 135 waarmee het signaal in één of meer longitudinale sporen op de registratiedrager 134 wordt opgetekend. De schrijfmiddelen 135 bevatten daartoe één of meer schrijfkoppen 136.
Voor een verdere uitleg van de inrichting van figuur 10 zij verwezen naar prior art dokument (8), die eveneens waar nodig wordt geacht in deze aanvrage te zijn opgenomen.
Het zij hier verder nog vermeld dat de uitvinding niet is beperkt tot enkel de getoonde uitvoeringsvoorbeelden. Verschillende modifikaties van de beschreven uitvoeringsvoorbeelden zijn mogelijk zonder dat wordt afgeweken van de uitvinding, zoals die is gedefinieerd in de konklusies.
PRIOR ART
(1) Europese oktrooiaanvrage nr. 289.080 (PHN 12.108) (2a) Nederlandse oktrooiaanvrage nr. 89.01.401 (PHN 12.967) (2b) Nederlandse oktrooiaanvrage nr. 90.00.338 (PHN 13.241) (3) EBU Techn. Review nr. 230, Aug. 1988 G. Theile et al "Low bit rate coding of high-quality audio signals. An introduction to the MASCAM system".
(4) Philips Journal of Research 44, 329-343, 1989 R.N.J. Veldhuis et al "Subband coding of digital audio signals".
(5) IEEE ICASSP 80, Vol. 1, 327-331, April 9-11, 1980 M.A. Krasner "The critical band coder ... Digital encoding of speech signals based on the perceptual requirements of the auditory system".
(6) F.J. MacWilliams et al, "The theory of error correcting codes", North Holland publishing comp. 1983 (7) Europese oktrooiaanvrage nr. 89201408.5 (PHQ 89.018) (8) Nederlandse oktrooiaanvrage nr. 90.00.635 (PHN 13.281)

Claims (9)

1. Kodeerinrichting bevattende een subbandkoder, voor het subbandkoderen van een breedband digitaal signaal, bijvoorbeeld een digitaal audiosignaal, met een zekere bemonsteringsfrekwentie Fs, waarbij de subbandkoder is voorzien van signaalsplitsingsmiddelen voor het in responsie op het breedbandige digitale signaal genereren van een aantal van M subbandsignalen met bemonstertrekwentieverlaging, waartoe de splitsingsmiddelen het breedbandige digitale signaal opsplitsen in opeenvolgende subbanden met bandnummers m die toenemen met de frekwentie waarbij voor m geldt 1<m<M, en waarbij de kodeerinrichting verder bevat kwantiseringsmiddelen voor het bloksgewijs kwantiseren van de respektieve subbandsignalen, een gekwantiseerd subbandsignaal zijnde opgebouwd uit opvolgende blokken, elk signaalblok in een subband SBm bevattende q bemonsteringen, waarbij de q bemonsteringen in een signaalblok elk met bits zijn gerepresenteerd, de kwantiseringsmiddelen bevattende bitbehoeftebepalingsmiddelen voor het voor overeenkomstige signaalblokken in de subbanden per signaalblok bepalen van een bitbehoefte bm, die in relatie staat tot het aantal bits waarmee bemonsteringen in een signaalblok in de subband SBffl zouden moeten worden gerepresenteerd, en bevattende bitverdelingsmiddelen voor het toekennen van de beschikbare hoeveelheid bits B aan de verschillende subbanden in afhankelijkheid van de bitbehoefte zoals die is bepaald door de bitbehoeftebepalingsmiddelen, ter verkrijging van de waardes nm, waarbij m loopt van 1 tot en met M, de kodeerinrichting verder bevattende middelen voor het onderbrengen van de met een zekere hoeveelheid bits gekwantiseerde bemonsteringen in een signaalblok, in een frame van een tweede digitale signaal, bevattende op elkaar volgende frames, waarbij de middelen verder zijn ingericht voor het in een frame onderbrengen van schaalfaktorinformatie, de schaalfaktorinformatie bevattende x-bits woorden, een x-bit woord representerende een schaalfaktor behorende bij de bemonsteringen van een signaalblok, met het kenmerk, dat de bitbehoeftebepalingsmiddelen zijn ingericht voor het voor overeenkomstige signaalblokken in de subbanden schatten van het vermogen vm in een signaalblok in een subband SBm, het bepalen van de bemonstering SFm met de grootste absolute waarde in het signaalblok, - voor het berekenen van de grootheid wm volgens de formule
Figure NL9001128AC00261
- voor het berekenen van bm volgens de formule b„ = K,. 2log (SF2/wm)+K2 dat dm ^ een matrixkoefficient is in een MxM matrix [D], welke matrixkoefficient aangeeft de vermenigvuldigingsfaktor waarmee het vermogen v^ in de subband i wordt vermenigvuldigd om te berekenen wat het gemaskeerde vermogen in de subband m is ten gevolge van het signaal in het signaalblok in de subband i, wr m een maat is voor de maskeringsdrempel in de subband m en K1 en K2 konstantes zijn.
2. Kodeerinrichting volgens konklusie 1, met het kenmerk, dat de bitbehoeftebepalingsmiddelen, voor het berekenen van wm volgens de formule
Figure NL9001128AC00262
gebruik maken van een logarithmische representatie voor de grootheden 'Vi' vi' "m en wr.m·
3. Kodeerinrichting volgens konklusie 2, met het kenmerk, dat de bitbehoeftebepalingsmiddelen daartoe middelen bevatten voor het optellen en vermenigvuldigen van getallen die in een logarithmische representatie zijn weergegeven.
4. Kodeerinrichting volgens konklusie 1, 2 of 3, met het kenmerk, dat K2 = -K^ ^log 3.
5. Kodeerinrichting volgens konklusie 4, met het kenmerk, dat K1 = 0,5.
6. Kodeerinrichting volgens één der konklusies 1 tot en met 5, met het kenmerk, dat de bitbehoeftebepalingsmiddelen zijn ingericht voor het voor overeenkomstige signaalblokken in de subbanden schatten van het vermogen vm in een signaalblok in een subband SBffl volgens de formule:
Figure NL9001128AC00271
waarbij s^ de amplitudes van de q bemonsteringen in een signaalblok van de subband SBm zijn.
7. Zender voorzien van de kodeerinrichting volgens één der konklusies 1 tot en met 6.
8. Zender volgens konklusie 7, met het kenmerk, dat de zender is in de vorm van een inrichting voor het optekenen van de gekwantiseerde subbandsignalen in een spoor op een registratiedrager,
9. Zender volgens konklusie 8, met het kenmerk, dat de registratiedrager een magnetische registratiedrager is.
NL9001128A 1990-05-14 1990-05-14 Kodeerinrichting bevattende een subbandkoder, en een zender voorzien van de kodeerinrichting. NL9001128A (nl)

Priority Applications (8)

Application Number Priority Date Filing Date Title
NL9001128A NL9001128A (nl) 1990-05-14 1990-05-14 Kodeerinrichting bevattende een subbandkoder, en een zender voorzien van de kodeerinrichting.
DE69107511T DE69107511T2 (de) 1990-05-14 1991-05-07 Codierverfahren und Codieranordnung mit einem Unterbandcoder und Sender mit der Codieranordnung.
EP91201088A EP0457391B1 (en) 1990-05-14 1991-05-07 Encoding method and encoding system comprising a subband coder, and a transmitter comprising an encoding system
AT91201088T ATE118933T1 (de) 1990-05-14 1991-05-07 Codierverfahren und codieranordnung mit einem unterbandcoder und sender mit der codieranordnung.
KR1019910007538A KR0186000B1 (ko) 1990-05-14 1991-05-10 인코딩 시스템 및 이를 구비한 트랜스미터
SK1382-91A SK138291A3 (en) 1990-05-14 1991-05-10 Coding mechanism
JP3138388A JP2931697B2 (ja) 1990-05-14 1991-05-14 サブバンドコーダを有するエンコーディングシステム及びエンコーディングシステムを有するトランスミッタ
HK61696A HK61696A (en) 1990-05-14 1996-04-11 Encoding method and encoding system comprising a subband coder and a transmitter comprising an encoding system

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
NL9001128 1990-05-14
NL9001128A NL9001128A (nl) 1990-05-14 1990-05-14 Kodeerinrichting bevattende een subbandkoder, en een zender voorzien van de kodeerinrichting.

Publications (1)

Publication Number Publication Date
NL9001128A true NL9001128A (nl) 1991-12-02

Family

ID=19857093

Family Applications (1)

Application Number Title Priority Date Filing Date
NL9001128A NL9001128A (nl) 1990-05-14 1990-05-14 Kodeerinrichting bevattende een subbandkoder, en een zender voorzien van de kodeerinrichting.

Country Status (8)

Country Link
EP (1) EP0457391B1 (nl)
JP (1) JP2931697B2 (nl)
KR (1) KR0186000B1 (nl)
AT (1) ATE118933T1 (nl)
DE (1) DE69107511T2 (nl)
HK (1) HK61696A (nl)
NL (1) NL9001128A (nl)
SK (1) SK138291A3 (nl)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5375171A (en) * 1992-02-03 1994-12-20 U. S. Philips Corporation Transmission system, and transmitter and receiver used in the transmission system for transmitting and receiving digital signals containing modulated bit allocation information

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0554934B1 (en) * 1992-02-03 2001-11-21 Koninklijke Philips Electronics N.V. Transmission of digital wideband signals
EP0573103B1 (en) * 1992-06-02 1999-08-11 Koninklijke Philips Electronics N.V. Digital transmission system
TW221836B (nl) * 1992-06-09 1994-03-21 Philips Electronics Nv
JP3188013B2 (ja) 1993-02-19 2001-07-16 松下電器産業株式会社 変換符号化装置のビット配分方法
KR100321015B1 (ko) * 1993-10-27 2002-06-20 요트.게.아. 롤페즈 제1및제2주신호성분을송수신하는송수신기
EP0775389B1 (en) * 1994-05-02 2002-12-18 Koninklijke Philips Electronics N.V. Encoding system and encoding method for encoding a digital signal having at least a first and a second digital signal component
JP3830106B2 (ja) * 1994-05-19 2006-10-04 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴイ 広帯域ディジタル信号の信号スペクトルを規定し、かつこの信号スペクトルに応じてビット配置情報を得る機構
EP0717392B1 (en) * 1994-05-25 2001-08-16 Sony Corporation Encoding method, decoding method, encoding-decoding method, encoder, decoder, and encoder-decoder
US5818943A (en) * 1994-10-25 1998-10-06 U.S. Philips Corporation Transmission and reception of a first and a second main signal component
DE69525836T2 (de) * 1994-11-04 2002-11-21 Koninkl Philips Electronics Nv Kodierung und dekodierung eines breitbandigen digitalen informationssignals
EP0749647B1 (en) * 1995-01-09 2003-02-12 Koninklijke Philips Electronics N.V. Method and apparatus for determining a masked threshold
JPH10512131A (ja) 1995-10-24 1998-11-17 フィリップス エレクトロニクス ネムローゼ フェンノートシャップ サブバンドエンコーダ/デコーダにおける反復復号化および符号化
JPH11502394A (ja) * 1996-01-12 1999-02-23 フィリップス、エレクトロニクス、ネムローゼ、フェンノートシャップ 広帯域デジタル情報信号を送信するための送信機とその方法、及び受信機
JP3793235B2 (ja) * 1996-02-08 2006-07-05 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ 2チャネル伝送及び1チャネル伝送に適合するnチャネル伝送
ES2217385T3 (es) * 1996-02-08 2004-11-01 Koninklijke Philips Electronics N.V. Transmision de 7 canales compatible con la transmision de 5 canale.
DE19613643A1 (de) * 1996-04-04 1997-10-09 Fraunhofer Ges Forschung Verfahren zum Codieren eines mit einer niedrigen Abtastrate digitalisierten Audiosignals
WO1997038493A1 (en) * 1996-04-10 1997-10-16 Philips Electronics N.V. Encoding of a plurality of information signals

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
NL9000635A (nl) 1990-03-20 1991-10-16 Philips Nv Digitaal opteken- en weergavesysteem.

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5375171A (en) * 1992-02-03 1994-12-20 U. S. Philips Corporation Transmission system, and transmitter and receiver used in the transmission system for transmitting and receiving digital signals containing modulated bit allocation information
US5488663A (en) * 1992-02-03 1996-01-30 U.S. Philips Corporation Encoding methods for generating a digital signal containing modulated bit allocation information, and record carriers containing that signal

Also Published As

Publication number Publication date
HK61696A (en) 1996-04-19
EP0457391B1 (en) 1995-02-22
JPH04250723A (ja) 1992-09-07
SK138291A3 (en) 1995-07-11
KR910021052A (ko) 1991-12-20
KR0186000B1 (ko) 1999-04-15
DE69107511D1 (de) 1995-03-30
ATE118933T1 (de) 1995-03-15
EP0457391A1 (en) 1991-11-21
JP2931697B2 (ja) 1999-08-09
DE69107511T2 (de) 1995-09-07

Similar Documents

Publication Publication Date Title
NL9001128A (nl) Kodeerinrichting bevattende een subbandkoder, en een zender voorzien van de kodeerinrichting.
NL9001127A (nl) Kodeerinrichting bevattende een subbandkoder, en een zender voorzien van de kodeerinrichting.
US5367608A (en) Transmitter, encoding system and method employing use of a bit allocation unit for subband coding a digital signal
US4142071A (en) Quantizing process with dynamic allocation of the available bit resources and device for implementing said process
US5365553A (en) Transmitter, encoding system and method employing use of a bit need determiner for subband coding a digital signal
JP3940165B2 (ja) オーディオ用低ビットレート高分解能スペクトル包絡線符号化
NL9100173A (nl) Subbandkodeerinrichting, en een zender voorzien van de kodeerinrichting.
US5613035A (en) Apparatus for adaptively encoding input digital audio signals from a plurality of channels
KR101019678B1 (ko) 저비트율 오디오 코딩
EP0560413B2 (en) Adaptive bit allocation for audio encoder and decoder
JP3336618B2 (ja) 高能率符号化方法及び高能率符号化信号の復号化方法
EP1072036B1 (en) Fast frame optimisation in an audio encoder
JP3297240B2 (ja) 適応的符号化システム
KR100263599B1 (ko) 인코딩 시스템
KR0144011B1 (ko) 엠펙 오디오 데이타 고속 비트 할당 및 최적 비트 할당 방법
EP0665547B1 (en) Encoding and decoding system
US5440596A (en) Transmitter, receiver and record carrier in a digital transmission system
MXPA01010447A (es) Utilizacion de cuantificacion adaptativa de ganancia y longitudes de simbolos no uniformes para codificacion de audio.
US6775587B1 (en) Method of encoding frequency coefficients in an AC-3 encoder
JPH07504539A (ja) N個の信号源からの信号の同時伝送方法
JP3093178B2 (ja) 高品質オーディオ用低ビットレート変換エンコーダ及びデコーダ
KR0181054B1 (ko) 다수개의 채널들로부터의 입력 디지탈 오디오 신호들을 적응적으로 부호화하는 장치
JP3725876B2 (ja) オーディオ符号化器とその符号化処理プログラム
KR0181061B1 (ko) 적응 디지탈 오디오 부호화 장치 및 그의 비트 할당방법
KR950003627B1 (ko) 디지탈 오디오 기기의 가청 임계점을 이용한 비트 할당방법

Legal Events

Date Code Title Description
A1B A search report has been drawn up
BV The patent application has lapsed