NL8901631A - Inrichting voor het bufferen van data voor de duur van cyclisch repeterende buffertijden. - Google Patents
Inrichting voor het bufferen van data voor de duur van cyclisch repeterende buffertijden. Download PDFInfo
- Publication number
- NL8901631A NL8901631A NL8901631A NL8901631A NL8901631A NL 8901631 A NL8901631 A NL 8901631A NL 8901631 A NL8901631 A NL 8901631A NL 8901631 A NL8901631 A NL 8901631A NL 8901631 A NL8901631 A NL 8901631A
- Authority
- NL
- Netherlands
- Prior art keywords
- address
- register
- addresses
- current
- buffering
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B20/00—Signal processing not specific to the method of recording or reproducing; Circuits therefor
- G11B20/10—Digital recording or reproducing
- G11B20/18—Error detection or correction; Testing, e.g. of drop-outs
- G11B20/1806—Pulse code modulation systems for audio signals
- G11B20/1809—Pulse code modulation systems for audio signals by interleaving
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B20/00—Signal processing not specific to the method of recording or reproducing; Circuits therefor
- G11B20/10—Digital recording or reproducing
- G11B20/10527—Audio or video recording; Data buffering arrangements
- G11B2020/1062—Data buffering arrangements, e.g. recording or playback buffers
- G11B2020/10629—Data buffering arrangements, e.g. recording or playback buffers the buffer having a specific structure
- G11B2020/10666—Ring buffers, e.g. buffers wherein an iteratively progressing read or write pointer moves back to the beginning of the buffer when reaching the last storage cell
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Error Detection And Correction (AREA)
- Signal Processing For Digital Recording And Reproducing (AREA)
- Transmission Systems Not Characterized By The Medium Used For Transmission (AREA)
- Information Transfer Systems (AREA)
Description
De uitvinding betreft een inrichting met geheugenlocaties voor het bufferen van in achtereenvolgende fasen aangeboden groepen data-eenheden voor de duur van zich met elke groep herhalende buffertijden.
Een voorbeeld van een dergelijke inrichting als onderdeel van een compact-disc-speler, voorzien van codeurs en decodeurs ten behoeve van fout-correctie, staat schetsmatig beschreven in: "The Compact Disc Formats: Technology and Applications", K. Pohlmann, J.
Audio Eng. Soc., Vol. 36, Nr. 4, 1988 April, bladzijden 250-287. De codeurs en decodeurs zijn beide gebaseerd op de "cross-interleaved Reed-Solomon code", en omvatten daartoe elk een zogenaamde "interleaver” met achtentwintig vertragingslijnen voor het vertragen van telkens evenzoveel data-eenheden, elk voor de duur van onderling verschillende buffertijden.
Het verdient aanbeveling om een dergelijke inrichting met een zo klein mogelijk geheugen te realiseren. Het verdient verder aanbeveling om daarbij de adressering van het geheugen zo eenvoudig mogelijk te houden met het oog op de benodigde rekencapaciteit ten behoeve van de besturing van de inrichting. De uitvinding beoogt daarom mede te voorzien in een inrichting van de in de aanhef vermelde soort met een efficiënt geheugengebruik en een simpele adressering.
Een inrichting volgens de uitvinding wordt daartoe gekenmerkt, doordat de inrichting een modulo-adresgenerator omvat voor het ten behoeve van elke groep genereren van een reeks adressen voor selectie van de geheugenlocaties, waarbij respectievelijke logische adresafstanden tussen opeenvolgende adressen in de betreffende reeks indicatief zijn voor de respectievelijke buffertijden, en waarbij de adressen in twee opeenvolgende reeksen een adresafstand-eenheid ten opzichte van elkaar zijn verschoven.
De uitvinding maakt gebruik van het afbeelden van buffertijden op adresafstanden in een actuele reeks adressen voor het aanspreken van geselecteerde geheugenlocaties. De adresafstand tussen een tweetal adressen, die in een reeks achtereenvolgend zijn, is indicatief voor (bijvoorbeeld numeriek gelijk aan) de buffertijd toegekend aan de data-eenheid op het hoogste (of het laagste) adres van het tweetal.
Opgemerkt zij dat onder data-eenheid wordt verstaan een entiteit van gegevens (een bit, een byte, een record, een file, etcetera), die minstens ten behoeve van het bufferen als een geheel wordt beschouwd. Opeenvolgende reeksen worden ten opzichte van elkaar over een adresafstand-eenheid verschoven. Dit impliceert dat eenzelfde adres van een tweetal adressen geselecteerd in een eerdere reeks pas in een latere reeks opnieuw wordt geselecteerd als de totale verschuiving de oorspronkelijke adresafstand heeft overbrugd. Haar omdat de oorspronkelijke adresafstand gerelateerd is aan de betreffende buffertijd is dat adres reeds beschikbaar gekomen voor nieuwe data na de betreffende laatste leesoperatie.
Met bovenstaande adressering betreffen de schrijfoperaties precies die geheugenlocaties, waarin data-groepen uit voorafgaande fasen reeds hun buffertijd hebben uitgezeten. Het is daarom gunstig om de door de adresgenerator gegenereerde adressen ten behoeve van het schrijven van de actuele groep data-eenheden, te gebruiken als leesadressen alvorens te schrijven. Het is daarbij van voordeel om per actueel adres eerst een leesoperatie en dan een schrijfoperatie uit te voeren. Het schakelen tussen lezen en schrijven per adres is eenvoudiger en goedkoper dan het genereren van tweemaal een reeks adressen ten behoeve van het achtereenvolgend lezen en daarna achtereenvolgend schrijven van de geselecteerde locaties. De actuele adressen zouden eventueel ook kunnen worden gebufferd in een afzonderlijk geheugen, maar dit gaat ten koste van de geheugenruimte.
Een uitvoeringsvorm van een inrichting volgens de uitvinding wordt gekenmerkt, doordat elke buffertijd een betreffend eerste aantal van de opeenvolgende fasen bedraagt, en de met de betreffende buffertijd geassocieerde adresafstand een respectievelijk tweede aantal adresafstand-eenheden bedraagt, waarbij het eerste aantal gelijk is aan het tweede aantal.
De adresafstanden zijn nu de kleinst mogelijke zodat het aantal benodigde geheugenlocaties minimaal is. Dit aantal is gelijk aan de som van de per groep toegekende buffertijden, die elk zijn uitgedrukt in het betreffende aantal fasen.
Een groter geheugen kan worden gebruikt om de onderlinge adresafstanden per reeks groter te nemen dan de kortst mogelijke zoals boven is vermeld. Een andere uitvoeringsvorm van een inrichting volgens de uitvinding wordt daarom gekenmerkt, doordat elke buffertijd een betreffend eerste aantal van de opeenvolgende fasen bedraagt, en de met de betreffende buffertijd geassocieerde adresafstand een respectievelijk tweede aantal adresafstand-eenheden bedraagt, waarbij het tweede aantal gelijk is aan de som van het betreffende eerste aantal en een respectievelijke offset.
Dit geeft weliswaar een minder dichte bezetting van het geheugen maar heeft als gevolg dat met betrekking tot één geheugenlocatie per fase hooguit één lees-operatie of één schrijfoperatie hoeft te worden verricht hetgeen de besturing eenvoudiger maakt. Het is gunstig om het aantal benutte geheugenlocaties gelijk te kiezen aan een gehele macht van twee omdat digitale circuits eenvoudiger met binaire getallen rekenen, zoals bijvoorbeeld met betrekking tot de modulo-operatie, dan met getallen gerepresenteerd op een andere basis dan twee.
Er zij opgemerkt dat de inrichting behalve als interleaver of de-interleaver in een CD-speler bijvoorbeeld ook toepassing kan vinden in parallelle en cyclische databewerkingen. In toepassingen op dit laatstgenoemde gebied worden parallelle stromen van achtereenvolgende data getransformeerd tot nieuwe stromen achtereenvolgende data. Alvorens de data van de nieuwe stromen opnieuw bewerkingen te laten ondergaan, dienen data uit verscheidene stromen ten opzichte van elkaar te worden vertraagd opdat deze data op het juiste moment op de juiste wijze met elkaar kunnen worden gecombineerd.
FIGUREN
De uitvinding zal worden toegelicht aan de hand van een tekening, waarin: figuur 1 een eerste voorbeeld van een databezetting geeft in een geheugen verkregen via een inrichting volgens de uitvinding; figuur 2 een tweede voorbeeld van een databezetting geeft; figuur 3 een derde voorbeeld van een databezetting geeft; figuur 4 een eerste voorbeeld van een adresgenerator voor toepassing in een inrichting volgens de uitvinding geeft; figuur 5 een tweede voorbeeld van een adresgenerator geeft; figuur 6 een derde voorbeeld van een dergelijke adresgenerator geeft; en figuur 7 de formules toont ter ondersteuning van de toelichting bij de adresgenerator van figuur 6.
DATABEZETTING, EERSTE VOORBEELD
In figuur 1 is een eerste voorbeeld gegeven van een databezetting verkregen met een inrichting volgens de uitvinding. Horizontaal staan de adressen m1 tot en met m10 van tien geheugenlocaties uitgezet. Verticaal staan de achtereenvolgende fasen f0, f1, f2, f6, ... uitgezet waarin de respectievelijke actuele data worden geschreven nadat de relevante reeds opgeslagen data voor het laatst zijn uitgelezen. In fase f0 worden de data die zijn aangeduid met 1, 2, 3 en 4, geschreven, waaraan een buffertijd gelijk aan respectievelijk één fase, twee fasen, drie fasen en vier fasen wordt toegekend. Bijgevolg zullen deze data elk voor de duur van de betreffende buffertijd in het geheugen worden opgeslagen. De bezetting in fase f0 wordt nu als volgt gekozen. Data-eenheid 1 wordt geschreven op adres m1. Data-eenheid 2, die gedurende de buffertijd van twee fasen wordt gebufferd, wordt geschreven op een adres dat een adresafstand gelijk aan twee adresafstand-eenheden heeft ten opzichte van het voorgaande adres m1. Dit aantal adresafstand-eenheden is gelijk aan het aantal fasen buffertijd toegekend aan data-eenheid 2. Het betreffende adres is dus adres m3. Data-eenheid 3 zal gedurende drie fasen worden gebufferd en wordt dus geschreven op een volgend adres m6, dat op drie adresafstand-eenheden van het voorgaande adres m3 ligt. Data-eenheid 4 zal gedurende vier fasen worden gebufferd en wordt dus geschreven op adres m10, dat vier adresafstand-eenheden verschilt van adres m6. Het totaal aantal geheugenlocaties is gelijk aan de som van de per fase toegekende buffertijden en is dus gelijk aan tien.
In fase f1 worden nieuwe data-eenheden 1', 2', 3' en 4' geschreven, die voor de duur van respectievelijk één, twee, drie en vier fasen worden gebufferd. De adressen van de geheugenlocaties waarop de nieuwe data-eenheden worden geschreven, zijn elk een adresafstand-eenheid verschoven ten opzichte van het adres, waarop in de voorgaande fase de data-eenheid is geschreven met eenzelfde buffertijd.
Data-eenheden 1', 2', 3' en 4' worden geschreven op adressen m2, m4, m7 en m1. Data-eenheid 4' wordt dus geschreven op de locatie, waar juist van tevoren data-eenheid 1 is uitgelezen.
In fase f2 worden data-eenheden 1", 2", 3" en 4" geschreven waaraan buffertijden van respectievelijk één, twee, drie en vier fasen worden toegekend. De schrijfadressen zijn weer één adresafstand-eenheid verschoven ten opzichte van de schrijfadressen van de vorige groep data-eenheden. Zodoende wordt data-eenheid 1" geschreven in de locatie met adres ra3 waar zojuist data-eenheid 2 voor de laatste maal is uitgelezen. Data-eenheden 2" en 3" worden geschreven op de adressen m5 en m8. Data-eenheid 4" wordt geschreven op adres m2, waar zojuist data-eenheid 1' is uitgelezen.
In fase f3 worden data-eenheden 1' ·', 2"', 3" ' en 4"' geschreven op adressen m4, m6, m9 en m3. Data-eenheden 1''', 2"', 3'11 en 4'11 worden geschreven in die geheugenlocaties die net zijn vrijgekomen omdat de betreffende eerdere data-eenheden hun buffertijd hebben uitgezeten. In de tekening zijn tevens de nieuwe data-eenheden van volgende fasen f4, f5 en f6 weergegeven.
Omdat de aantallen adresafstand-eenheden tussen de adressen van een actuele groep data-eenheden gelijk zijn aan de betreffende aantallen fasen buffertijd, kunnen de achtereenvolgende groepen op de getoonde manier door elkaar heen worden geweven. Bijgevolg is een dichte geheugenbezetting gerealiseerd met een systematische, eenvoudige adressering.
DATABEZETTING, TWEEDE VOORBEELD
In figuur 2 is een tweede voorbeeld van een databezetting gegeven in een geheugen met meer locaties dan strikt noodzakelijk is. De gebruikte notatie komt overeen met die van figuur 1. Het geheugen omvat nu zestien geheugenlocaties met adressen m1 tot en met m16. Nadat een data-eenheid het laatste adres heeft bereikt, in dit geval data-eenheid 4^ in fase f6, wordt van de eerstvolgende groep, fase f7 de overeenkomstige data-eenheid, in dit geval 4^ weer op het eerste adres m1 neergezet volgens de modulo-16-adresgenerator. Ofschoon de bezetting niet optimaal is ten aanzien van de grootte van het geheugen, is het voordeel hiervan gelegen in de eenvoudige adressering ingeval het aantal benutte locaties een macht is van twee. In digitale rekencircuits is eenvoudiger met machten van twee te werken dan met andere getallen.
DATABEZETTING, DERDE VOORBEELD
In figuur 3 is een derde voorbeeld gegeven van een databezetting in een geheugen met een aantal geheugenlocaties groter dan strikt noodzakelijk. Ook hier correspondeert de gebruikte notatie met die van de voorafgaande figuren. De onderlinge adresafstanden zijn nu elk numeriek gelijk aan de betreffende buffertijden plus een constante offset, in dit voorbeeld gelijk aan één adresafstand-eenheid voor alle buffertijden. De adresafstand tussen twee actuele opeenvolgende adressen (bijvoorbeeld in fase f2 adressen m6 en 10) is nu groter dan de daarmee geassocieerde buffertijd (ter grootte van drie fasen voor data-eenheid 3" in dit voorbeeld). Bijgevolg treedt tussen het voor de laatste maal uitlezen van een adres en het schrijven op datzelfde adres een loze fase op (voor geheugenlocatie m10 is fase f5 een loze fase).
Dit schept de mogelijkheid om leesoperaties en schrijfoperaties met betrekking tot eenzelfde geheugenlocatie over verscheidene fases te spreiden, zodat bijvoorbeeld met eenvoudigere of langzamere besturingen kan worden volstaan. In de voorafgaande figuren zijn de lengtes van de buffertijden enkel bij wijze van voorbeeld aaneensluitend gekozen. Het zal duidelijk zijn dat met andere keuzes voor de buffertijden soortgelijke bezettingen van het geheugen zijn te realiseren. Evenzo zijn de offsets, geassocieerd met elk van de adressen in figuur 3, onderling gelijk gekozen bij wijze van voorbeeld. Het staat de gebruiker vrij om onderling verschillende offsets te kiezen. De offsets zouden bijvoorbeeld zodanig kunnen worden gekozen, dat per fase een schrijfoperatie of een leesoperatie alleen hetzij even, hetzij oneven adressen betreft. Door per fase een subgroep van de adressen met een voorafbepaalde eigenschap (bijvoorbeeld even/oneven) aan te spreken, kan het geheugen bijvoorbeeld eenvoudiger, kleiner of sneller worden uitgevoerd, bijvoorbeeld met een leesversterker gemeenschappelijk voor een even en een oneven kolom in een geïntegreerd geheugencircuit.
Evenzo kan met de offsets de spreiding in de bezetting van de geheugenlocaties worden geregeld.
ADRESGENERATOR, EERSTE VOORBEELD
In figuur 4 is een eerste voorbeeld gegeven voor een adresgenerator geschikt voor gebruik in een inrichting volgens de uitvinding met N geheugenlocaties. De adresgenerator 30 selecteert per fase de geheugenadressen voor de geheugenlocaties 36 met onderlinge afstanden indicatief voor de betreffende buffertijden. De adresreeksen gegenereerd ten behoeve van twee opeenvolgende fasen verschillen onderling een adresafstand-eenheid.
De onderlinge adresafstanden in een reeks worden bepaald door de afstand-generator 40. Afstand-generator 40 omvat een geheugen 42, bijvoorbeeld een ROM, waarin op opeenvolgende adressen, hierna te noemen R0M-adressen, de adressen voor geselecteerde geheugenlocaties 36, hierna te noemen RAM-adressen, zijn opgeslagen ten behoeve van een RAM-adresreferentiereeks. Met behulp van selectieschakeling 44 worden de ROM-adressen achtereenvolgend aangesproken. Daartoe bevat selectieschakeling 44 bijvoorbeeld een register 46, dat via een incrementeer-eenheid 48 cyclisch de ROM-adressen aanspreekt. De uitgang van afstand-generator 40 is gekoppeld met een ingang van een modulo-N-opteller 50.
De andere ingang van modulo-N-opteller 50 is gekoppeld met de uitgang van de sprong-generator 52, die ten behoeve van elke volgende reeks de verschuiving over één adresafstand-eenheid genereert en modulo het aantal benutte geheugenlocaties rekent. Sprong-generator 52 omvat daartoe bijvoorbeeld een register 54 waarvan een uitgang via een incrementeer-eenheid 56 is teruggekoppeld. Per fase wordt aldus een stapgrootte gegenereerd die in modulo-N-opteller 50 bij de adreswaarden uit ROM 42 wordt opgeteld. De referentiewaarde wordt modulo N berekend. Aldus wordt met behulp van de referentiereeks en de stapgrootte een actuele RAM-adresreeks gegenereerd.
ADRESGENERATOR, TWEEDE VOORBEELD
In figuur 5 is een tweede voorbeeld gegeven van een adresgenerator geschikt voor gebruik in een inrichting volgens de uitvinding met N geheugenlocaties.
De adresgenerator omvat een geheugen 60, bijvoorbeeld een ROM, waarin op achtereenvolgende ROM-adressen de RAM-adressen zijn opgeslagen van een referentiereeks voor de N geheugenlocaties 62. De adresgenerator omvat verder een programmeerbare modulo-N-opteller 64, die voor de berekening van de ROM-adressen de RAM-adressen, en voor de berekening van de stapgrootte van volgende RAM-adres-reeksen ten opzichte van de referentiereeks wordt gebruikt, analoog aan de berekeningen volgens de adresgenerator van figuur 4. De voordelen van deze op zich bekende schakeling zijn gelegen in de besparing van chip-oppervlak van een implementatie in de vorm van een geïntegreerde schakeling, doordat eenzelfde schakeling voor verscheidene operaties wordt gebruikt.
De programmeerbare modulo-N-opteller 64 is ingangszijdig gekoppeld met een drietal registers 66, 68 en 70. Onder besturing van een eerste stuursignaal op stuurbus 72 wordt bij de inhoud van register 70 een eerste increment opgeteld en deze som weer gebufferd in register 70. De inhoud representeert de actuele stapgrootte zoals is besproken aan de hand van figuur 4. Onder besturing van een tweede stuursignaal op stuurbus 72 wordt door opteller 64 een tweede increment opgeteld bij de inhoud van register 66. Deze som representeert het actuele ROM-adres voor aanspreken van ROM 60, waarin de referentiereeks is opgeslagen, zoals eerder is beschreven aan de hand van figuur 4. Bij aanspreken van ROM 60 met de betreffende som als ROM-adres wordt de inhoud van dit ROM-adres in register 68 geladen. Onder besturing van een derde stuursignaal op stuurbus 72 worden de inhoud van register 68 (dit is het referentie-adres) en de inhoud van register 70 (dit is de actuele stapgrootte) bij elkaar opgeteld. Het resultaat representeert een actueel RAM-adres voor selectie van één van de geheugenlocaties van geheugen 62.
ADRESGENERATOR, DERDE VOORBEELD
In figuur 6 is een derde voorbeeld gegeven van een adresgenerator geschikt voor een inrichting volgens de uitvinding. De adresgenerator is uitgevoerd als een op zich bekende cascade van optellers. Getoond is een cascade met twee trappen 90 en 92. Bij de vorige uitvoeringsvoorbeelden zijn ten behoeve van de referentiereeks de betreffende adressen voor de geheugenlocaties van RAM 94 opgeslagen in een afzonderlijk ROM-geheugen. In dit voorbeeld worden alle RAM-adressen berekend door de adresgenerator.
De eerste trap 90 omvat een register 94 waarvan de uitgang via een optelschakeling 96 naar de ingang is gekoppeld. Optelschakeling telt bij bij de voorgaande registerinhoud een eerste constante c^ op en levert deze som als nieuwe registerinhoud.
De tweede trap 92 omvat een register 98 dat over een optelschakeling 100 is teruggekoppeld. Optelschakeling 100 telt bij een voorafgaande registerinhoud van register 98 de actuele registerinhoud van register 94 plus een tweede constante C2 op. De nieuwe registerinhoud van register 98 representeert dan een adres voor selectie van de geheugenlocaties 102.
FORMULES VOOR UITLEG VAN ADFESGENERATOR UIT FIGUUR 6
De werking van het voorbeeld uit figuur 6 zal worden verduidelijkt aan de hand van de formules in figuur 7. Formule (i) geeft de recursieve betrekking die geldt voor de uitgangsgrootheid a^ van trap 90 voor de k-de iteratie. Formule (ii) representeert de uitgangsgrootheid bk van trap 92 eveneens voor de k-de iteratie. Het is eenvoudig na te gaan dat door formule (iii) de uitgangsgrootheid a^ gegeven wordt, uitgedrukt in het aantal iteraties k, de beginstand aQ in register 94 en de eerste constante c^. Door het verschil van twee partiële sommen te vormen met betrekking tot b^ zoals in formule (iv) is eveneens een eenvoudige uitdrukking (v) af te leiden voor uitgangsgrootheid b^ in afhankelijkheid van het aantal iteraties k, de beginwaarden a0 en bQ voor registers 94 en 98, en van de constantes c1 en C2*
In afhankelijkheid van de waarden voor de parameters ao' ^o' C1 en c2f as een wül^eurige tweede-graads-functie van k te creëren. Door de cascade met nog meer trappen zoals 92 uit te breiden, zijn hogere-graads-functies van k te maken.
Eenvoudig is na te gaan dat met de keuze: aQ=0, bQ=1, c^=1 en C2=2 de adressen voor de begin-reeks in fase fQ in het diagram van figuur 3 zijn te genereren. Door op het eind van elke fase de registerinhoud van 94 op 0 en de registerinhoud van register 98 op bQ+1 terug te zetten, en voorts bij het bepalen van b^ modulo N te rekenen, zijn de volgende gewenste geheugenadressen voor RAM 102 te genereren. Een verdere mogelijkheid zou zijn om op het eind van elke fase de registerinhouden van registers 94 en 98 op aQ, respectievelijk bQ te zetten en bij uitkomst b^ een getal 1 op te tellen in een modulo-N-teller.
Claims (9)
1. Inrichting met geheugenlocaties voor het bufferen van in achtereenvolgende fasen aangeboden groepen data-eenheden voor de duur van zich met elke groep herhalende buffertijden, gekenmerkt, doordat de inrichting een modulo-adresgenerator omvat voor het ten behoeve van elke groep genereren van een reeks adressen voor selectie van de geheugenlocaties, waarbij respectievelijke logische adresafstanden tussen opeenvolgende adressen in de betreffende reeks indicatief zijn voor de respectievelijke buffertijden, en waarbij de adressen in twee opeenvolgende reeksen een adresafstand-eenheid ten opzichte van elkaar zijn verschoven.
2. Inrichting volgens conclusie 1, gekenmerkt, doordat op basis van een actueel adres eerst een leesoperatie en dan een schrijfoperatie uitvoerbaar is.
3. Inrichting volgens conclusie 1, gekenmerkt, doordat elke buffertijd een betreffend eerste aantal van de opeenvolgende fasen bedraagt, en de met de betreffende buffertijd geassocieerde adresafstand een respectievelijk tweede aantal adresafstand-eenheden bedraagt, waarbij het eerste aantal gelijk is aan het tweede aantal.
4. Inrichting volgens conclusie 1, gekenmerkt, doordat elke buffertijd een betreffend eerste aantal van de opeenvolgende fasen bedraagt, en de met de betreffende buffertijd geassocieerde adresafstand een respectievelijk tweede aantal adresafstand-eenheden bedraagt, waarbij het tweede aantal gelijk is aan de som van het betreffende eerste aantal en een respectievelijke offset.
5. Inrichting volgens conclusie 1, 3 of 4, gekenmerkt, doordat een verder aantal geheugenlocaties voor het bufferen van de groepen data-eenheden gelijk is aan een gehele macht van twee.
6. Inrichting volgens conclusie 1 of 5, gekenmerkt, doordat de adresgenerator omvat: - een referentie-adresgenerator voor het genereren van een cyclische serie referentie-adressen; - een incrementeer-eenheid voor het per volgende serie afgeven van een met een éénheidsstap geincrementeerde stapgrootte; - een optelIer voor het optellen van een actueel referentie-adres en een actuele stapgrootte en afgifte van een actueel adres.
7. Inrichting volgens conclusie 1 of 5, gekenmerkt, doordat de adresgenerator omvat: - een eerste incrementeer-eenheid voor het genereren van een eerste actueel getal door sommeren van een voorafgaand eerste getal en een eerste constante; - minstens een tweede incrementeer-eenheid voor het genereren van een tweede actueel getal door telkens sommeren van een voorafgaand tweede getal, een actueel eerste getal en een tweede constante.
8. Inrichting volgens conclusie 1 of 5, gekenmerkt, doordat de adresgenerator omvat: - een referentiegeheugen voor opslag van een serie referentie-adressen; - een eerste register en een tweede register; - een programmeerbare optelIer voor het uitvoeren van de volgende stappen: . onder besturing van een eerste signaal optellen van een eerste increment bij een inhoud van het eerste register en bufferen van een resulterende eerste som in het eerste register; . onder besturing van een tweede signaal optellen van een tweede increment bij een inhoud van het tweede register en bufferen van een resulterende tweede som in het tweede register; . onder besturing van een derde signaal ophalen van een referentie-inhoud uit een locatie van het referentiegeheugen, aangewezen door de actuele inhoud van het tweede register, en vervolgens optellen van de actuele referentie-inhoud bij de actuele inhoud van het eerste register voor het genereren van een actueel adres.
9. CD-speler omvattende een inrichting volgens één der voorgaande conclusies.
Priority Applications (6)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
NL8901631A NL8901631A (nl) | 1989-06-28 | 1989-06-28 | Inrichting voor het bufferen van data voor de duur van cyclisch repeterende buffertijden. |
US07/527,997 US5276827A (en) | 1989-06-28 | 1990-05-22 | Data buffer for the duration of cyclically recurrent buffer periods |
KR1019900009378A KR100196599B1 (ko) | 1989-06-28 | 1990-06-25 | 데이터 단위 군의 버퍼링을 위한 장치 |
EP90201649A EP0405673B1 (en) | 1989-06-28 | 1990-06-25 | Device for buffering data for the duration of cyclically recurrent buffer periods |
DE69017767T DE69017767T2 (de) | 1989-06-28 | 1990-06-25 | Anordnung zum Zwischenspeichern von Daten für die Dauer sich zyklisch wiederholender Zwischenspeicherzeiten. |
JP2168615A JP3064338B2 (ja) | 1989-06-28 | 1990-06-28 | データ単位群のバッファ装置 |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
NL8901631A NL8901631A (nl) | 1989-06-28 | 1989-06-28 | Inrichting voor het bufferen van data voor de duur van cyclisch repeterende buffertijden. |
NL8901631 | 1989-06-28 |
Publications (1)
Publication Number | Publication Date |
---|---|
NL8901631A true NL8901631A (nl) | 1991-01-16 |
Family
ID=19854917
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
NL8901631A NL8901631A (nl) | 1989-06-28 | 1989-06-28 | Inrichting voor het bufferen van data voor de duur van cyclisch repeterende buffertijden. |
Country Status (6)
Country | Link |
---|---|
US (1) | US5276827A (nl) |
EP (1) | EP0405673B1 (nl) |
JP (1) | JP3064338B2 (nl) |
KR (1) | KR100196599B1 (nl) |
DE (1) | DE69017767T2 (nl) |
NL (1) | NL8901631A (nl) |
Families Citing this family (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5463749A (en) * | 1993-01-13 | 1995-10-31 | Dsp Semiconductors Ltd | Simplified cyclical buffer |
KR950009386B1 (ko) * | 1993-04-21 | 1995-08-21 | 삼성전자주식회사 | 어드레스 생성회로 |
FR2713845B1 (fr) * | 1993-12-07 | 1996-01-19 | Thomson Consumer Electronics | Procédé d'entrelacement et de désentrelacement en bloc et dispositif de mise en Óoeuvre. |
US5572532A (en) * | 1993-12-29 | 1996-11-05 | Zenith Electronics Corp. | Convolutional interleaver and deinterleaver |
WO1996020536A1 (en) | 1994-12-23 | 1996-07-04 | Philips Electronics N.V. | Interleaving with low-speed memory |
US5765219A (en) * | 1995-02-23 | 1998-06-09 | Sony Corporation | Apparatus and method for incrementally accessing a system memory |
JPH10505451A (ja) * | 1995-06-29 | 1998-05-26 | フィリップス エレクトロニクス ネムローゼ フェンノートシャップ | リアルタイムファイルをインターリーブする方法及び装置 |
KR100186627B1 (ko) * | 1996-09-21 | 1999-05-15 | 삼성전자 주식회사 | 베이스 밴드 인터리버 |
WO1998021832A1 (en) * | 1996-11-11 | 1998-05-22 | Philips Electronics N.V. | A receiver, de-interleaving means and a method for a reduced time de-interleaving memory |
KR100236536B1 (ko) * | 1997-01-10 | 1999-12-15 | 윤종용 | 모듈로 주소발생기 및 그 방법 |
US5983333A (en) * | 1997-08-27 | 1999-11-09 | Lucent Technologies Inc. | High speed module address generator |
US6047364A (en) * | 1997-08-27 | 2000-04-04 | Lucent Technologies Inc. | True modulo addressing generator |
US6049858A (en) * | 1997-08-27 | 2000-04-11 | Lucent Technologies Inc. | Modulo address generator with precomputed comparison and correction terms |
JP3399904B2 (ja) * | 2000-03-17 | 2003-04-28 | 松下電器産業株式会社 | インタリーブアドレス生成装置 |
KR100833880B1 (ko) * | 2001-11-06 | 2008-06-02 | 엘지전자 주식회사 | 유자 형상의 스캔을 이용한 광디스크 데이터기록장치/방법 및 재생장치/방법 |
US7774676B2 (en) * | 2005-06-16 | 2010-08-10 | Mediatek Inc. | Methods and apparatuses for generating error correction codes |
US7430701B2 (en) * | 2005-06-16 | 2008-09-30 | Mediatek Incorporation | Methods and systems for generating error correction codes |
US20070067702A1 (en) * | 2005-09-05 | 2007-03-22 | Kuo-Lung Chien | Method and apparatus for syndrome generation |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4281355A (en) * | 1978-02-01 | 1981-07-28 | Matsushita Electric Industrial Co., Ltd. | Digital audio signal recorder |
JPS5538617A (en) * | 1978-09-04 | 1980-03-18 | Matsushita Electric Ind Co Ltd | Pcm recording and reproducing device |
US4333160A (en) * | 1978-11-20 | 1982-06-01 | Victor Company Of Japan, Ltd. | Memory control system |
JPS574629A (en) * | 1980-05-21 | 1982-01-11 | Sony Corp | Data transmitting method capable of correction of error |
JPS58198935A (ja) * | 1982-05-15 | 1983-11-19 | Sony Corp | デ−タ伝送方法 |
JPS59198513A (ja) * | 1983-04-26 | 1984-11-10 | Nec Corp | デイジタル信号処理装置 |
JPS60217565A (ja) * | 1984-04-12 | 1985-10-31 | Ricoh Co Ltd | インタリ−ブ回路 |
KR930009534B1 (ko) * | 1984-07-21 | 1993-10-06 | 소니 가부시끼가이샤 | 광 카드의 기록 재생장치 |
JPS61154227A (ja) * | 1984-12-26 | 1986-07-12 | Mitsubishi Electric Corp | 2段符号化方法 |
JPS6356022A (ja) * | 1986-08-26 | 1988-03-10 | Victor Co Of Japan Ltd | デイジタル記録再生装置 |
JP2829963B2 (ja) * | 1988-05-16 | 1998-12-02 | ソニー株式会社 | ディジタルデータ記録/再生装置 |
-
1989
- 1989-06-28 NL NL8901631A patent/NL8901631A/nl not_active Application Discontinuation
-
1990
- 1990-05-22 US US07/527,997 patent/US5276827A/en not_active Expired - Fee Related
- 1990-06-25 EP EP90201649A patent/EP0405673B1/en not_active Expired - Lifetime
- 1990-06-25 DE DE69017767T patent/DE69017767T2/de not_active Expired - Fee Related
- 1990-06-25 KR KR1019900009378A patent/KR100196599B1/ko not_active IP Right Cessation
- 1990-06-28 JP JP2168615A patent/JP3064338B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
EP0405673B1 (en) | 1995-03-15 |
JP3064338B2 (ja) | 2000-07-12 |
JPH0338125A (ja) | 1991-02-19 |
KR910001546A (ko) | 1991-01-31 |
EP0405673A1 (en) | 1991-01-02 |
DE69017767T2 (de) | 1995-10-12 |
US5276827A (en) | 1994-01-04 |
KR100196599B1 (ko) | 1999-06-15 |
DE69017767D1 (de) | 1995-04-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
NL8901631A (nl) | Inrichting voor het bufferen van data voor de duur van cyclisch repeterende buffertijden. | |
KR970702520A (ko) | 순열 유닛이 포함된 회로 및 아이템 군 처리방법(Circuit arrangement comprising a permutation unit and method of processing a batch of items) | |
US6353910B1 (en) | Method and apparatus for implementing error correction coding (ECC) in a dynamic random access memory utilizing vertical ECC storage | |
EP0003182B1 (en) | Method of and apparatus for enabling different parts of an input television signal to be made available simultaneously,and television standards converter incorporating said apparatus | |
US5938763A (en) | System for transposing data from column order to row order | |
US5274469A (en) | Sample rate converter circuit for image data | |
EP0113032A2 (en) | An apparatus for performing hashing operations using galois field multiplication | |
JP3361812B2 (ja) | ブロック毎のインターリービング及びデインターリービング処理及び装置 | |
EP1105967A1 (en) | Multiplierless digital filtering | |
KR100233284B1 (ko) | 어드레스 발생장치 | |
US6516402B2 (en) | Information processing apparatus with parallel accumulation capability | |
US5548752A (en) | Method and system for storing data in a memory device | |
US20040225861A1 (en) | Method and circuit for generating memory addresses for a memory buffer | |
JPH0767063B2 (ja) | デジタル信号処理回路 | |
US5291457A (en) | Sequentially accessible non-volatile circuit for storing data | |
NL8800801A (nl) | Data-verwerkend systeem met cyclische data-buffering, selektiemiddelen voor het selekteren van geheugenadressen, geschikt voor toepassing in een dergelijk systeem. | |
NL8500526A (nl) | Werkwijze voor het als vertragingslijn adresseren van een geheugen met willekeurige toegankelijkheid en signaalverwerkingsinrichting voorzien van zo een vertragingslijn. | |
US6714606B1 (en) | Integrated services digital broadcasting deinterleaver architecture | |
US5945657A (en) | Constant divider | |
JP3257811B2 (ja) | シンドローム生成回路 | |
JP2827978B2 (ja) | インターリーブ装置 | |
JP3252421B2 (ja) | ユークリッドの互除回路 | |
SU1153320A1 (ru) | Устройство дл воспроизведени функций табличным методом | |
CN106603085A (zh) | 生成多项式的生成方法、其装置、编码器、控制器及电子设备 | |
JP3134398B2 (ja) | 可変長符号化回路 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A1B | A search report has been drawn up | ||
BV | The patent application has lapsed |