RO121883B1 - Aparat şi metodă de modulare/demodulare, cu limitarea lungimii minime consecutive de rulare, precum şi suport de prezentare a programului pentru acestea - Google Patents
Aparat şi metodă de modulare/demodulare, cu limitarea lungimii minime consecutive de rulare, precum şi suport de prezentare a programului pentru acestea Download PDFInfo
- Publication number
- RO121883B1 RO121883B1 ROA200000085A RO200000085A RO121883B1 RO 121883 B1 RO121883 B1 RO 121883B1 RO A200000085 A ROA200000085 A RO A200000085A RO 200000085 A RO200000085 A RO 200000085A RO 121883 B1 RO121883 B1 RO 121883B1
- Authority
- RO
- Romania
- Prior art keywords
- code
- conversion
- length
- codes
- bits
- Prior art date
Links
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M5/00—Conversion of the form of the representation of individual digits
- H03M5/02—Conversion to or from representation by pulses
- H03M5/04—Conversion to or from representation by pulses the pulses having two levels
- H03M5/14—Code representation, e.g. transition, for a given bit cell depending on the information in one or more adjacent bit cells, e.g. delay modulation code, double density code
-
- 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/14—Digital recording or reproducing using self-clocking codes
- G11B20/1403—Digital recording or reproducing using self-clocking codes characterised by the use of two levels
- G11B20/1423—Code representation depending on subsequent bits, e.g. delay modulation, double density code, Miller code
- G11B20/1426—Code representation depending on subsequent bits, e.g. delay modulation, double density code, Miller code conversion to or from block codes or representations thereof
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M5/00—Conversion of the form of the representation of individual digits
- H03M5/02—Conversion to or from representation by pulses
- H03M5/04—Conversion to or from representation by pulses the pulses having two levels
- H03M5/14—Code representation, e.g. transition, for a given bit cell depending on the information in one or more adjacent bit cells, e.g. delay modulation code, double density code
- H03M5/145—Conversion to or from block codes or representations thereof
-
- 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/14—Digital recording or reproducing using self-clocking codes
- G11B20/1403—Digital recording or reproducing using self-clocking codes characterised by the use of two levels
- G11B20/1423—Code representation depending on subsequent bits, e.g. delay modulation, double density code, Miller code
- G11B20/1426—Code representation depending on subsequent bits, e.g. delay modulation, double density code, Miller code conversion to or from block codes or representations thereof
- G11B2020/1453—17PP modulation, i.e. the parity preserving RLL(1,7) code with rate 2/3 used on Blu-Ray discs
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Signal Processing (AREA)
- Signal Processing For Digital Recording And Reproducing (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
- Dc Digital Transmission (AREA)
- Facsimile Image Signal Circuits (AREA)
Abstract
Invenţia se referă la un aparat ?i o metodă de modulare/demodulare. Problema invenţiei este înregistrarea ?i redarea datelor cu o densitate delinie mare. Aparatul conform invenţiei cuprinde un bloc de determinare/inserare a bitului de control DSV (11), care inserează biţi de control DSV pentru efectuarea controlului DSV, într-o secvenţă de date de intrare ?i alimentează un bloc demodulare (12) cu secvenţa de date, inclusiv biţide control DSV. Blocul de modulare (12) converte?te secvenţa de date cu o lungime de bază de 2 biţi în coduri cu lungime variabilă, cu o lungime a unui cod de bază de 3 biţi, conform unui tabel de conversie ?i transmite codul rezultat din conversie către un bloc de conversie NRZI (13). Metoda conform invenţiei cuprinde etape de conversie pentru conversia datelor de intrare în coduri,conform unui tabel de conversie utilizat de blocul de modulare (12) ?i care cuprinde coduri de substituţie pentru limitarea numărului de apariţiiconsecutive a numărului minim de rulări la o valoare predeterminată ?i coduri de substituţie pentru păstrarea unei limite a lungimii de rulare.Adiţional, tabelul de conversie stabile?te o regulă de conversie, conform căreia, restul divizării cu 2 a numărului valorilor "1" ale unui element din secvenţa de date, având o valoare de 0 sau 1, va fi întotdeauna egal cu restul divizăriicu 2 a numărului valorilor "1" ale unui element în secvenţa de cuvinte cod, rezultată din conversia secvenţei de date.
Description
Invenția se referă la un aparat de modulare și la o metodă de modulare, la un aparat de demodulare și la o metodă de demodulare, cât și la un semnal și un suport de prezentare program, pentru acestea. în particular, invenția se referă la un aparat de modulare preferat și la o metodă de modulare preferată, la un aparat de demodulare preferat și la o metodă de demodulare preferată, la un semnal pentru acestea, cât și la un suport de prezentare a programului folosit în operațiile de înregistrare a datelor pe un suport de înregistrare cu densitate mare de înregistrare și redare a datelor înregistrate de pe un suport de înregistrare cu densitate mare de înregistrare.
Când datele sunt transmise printr-o linie de transmisie sau sunt înregistrate pe un suport de înregistrare, cum ar fi un disc magnetic, un disc optic sau un disc magneto-optic, înainte de transmitere sau înregistrare, datele sunt modulate în coduri corespunzătoare liniei de transmisie sau suportului de înregistrare. Ca tehnică de modulare, este cunoscută codarea cu blocuri. în codarea cu blocuri, o secvență de date este împărțită în unități, fiecare cuprinzând m x i biți. Fiecare dintre unități este denumită în continuare cuvânt data și este apoi convertită într-un cuvânt cod, cuprinzând n x i biți, în conformitate cu o regulă de codare adecvată. Pentru i=1, acest cuvânt cod este un cod cu lungime fixă. în cazul în care i ia valori multiple, fiecare valoare fiind selectată dintr-un domeniu de la 1 la i max, care reprezintă valoarea maximă a lui i, codul rezultat este un cod de lungime variabilă. în general, un cod rezultat din codarea cu blocuri, este exprimat ca un cod de lungime variabilă (d, k; m, n; r).
Aici, i este denumit lungime impusă și r este i max, lungimea maximă impusă, d, este numărul minim de valori 0 dintre două valori 1 consecutive, și este denumit numărul minim de rulări ale valorii 0 sau lungimea de rulare minimă. Pe de altă parte, k este numărul maxim de valori 0 dintre două valori 1 consecutive, și este denumit în continuare numărul maxim de rulări sau lungimea de rulare maximă.
în operația de înregistrare a unui cod de lungime variabilă, obținut prin codarea în blocuri, descrisă mai sus, pe un suport de înregistrare, cum ar fi un disc optic sau un disc magneto-optic, spre exemplu pe un compact disc (CD) sau un minidisc (MD), codul de lungime variabilă este supus unei modulări NRZI(Non return to Zero Inverted), în care fiecare valoare 1 a codului de lungime variabilă este interpretată ca inversie, în timp ce valoarea 0” este interpretată ca non-inversie. Codul de lungime variabilă, ce rezultă după modularea NRZI, este apoi înregistrat. Codul de lungime variabilă, ce rezultă din modularea NRZI, este denumit tren de undă de înregistrat. în cazul discurilor magneto-optice corespunzătoare specificațiilor ISO de început, care prevăd o densitate de înregistrare nu prea mare, un tren de biți ce rezultă din modularea de înregistrare este înregistrat ca atare, fără a fi supus modulării NRZI.
Tmin și Tmax reprezintă perioadele de inversie minimă și maximă ale unui tren de unde de înregistrat. în acest caz, în scopul înregistrării trenului de unde de înregistrat cu o mare densitate de înregistrare, în direcția vitezei liniare, este preferată o perioadă de inversie minimă Tmin mare sau un număr d mare. în plus, din punctul de vedere al generării ceasului, este de dorit să existe o perioadă scurtă de inversie maximă Tmax sau o lungime de rulare maximă k scurtă. Pentru satisfacerea acestor cerințe, se propune o gamă variată de tehnici de modulare.
Pentru concretizare, pentru un disc optic, un disc magnetic sau un disc magnetooptic, sunt propuse sau sunt folosite, în prezent, tehnici de modulare care generează un cod de lungime variabilă RLL(1-7), care este exprimat ca (1, 7; m, n; r) și un cod de lungime variabilă RLL(2-7), exprimat ca (2, 7; m, n; r) și de asemenea un cod de lungime fixă RLL(17), exprimat ca (1, 7; m, n; 1), folosit într-o specificație ISO- MO. Pentru un aparat cu disc
RO 121883 Β1 ce se află în mod curent în faza de cercetare și dezvoltare, cum ar fi un disc optic și un disc 1 magneto-optic, având o densitate mare de înregistrare, este curent utilizat un cod RLL (cod cu lungime de rulare limitată), cu rularea minimă d egală cu 1. în continuare, se dă un 3 exemplu de tabel de conversie pentru codul de lungime variabilă RLL (1-7).
Tabelul 1 _______________________________________ 7 RLL(1,7; 2,3; 2)
Date Cod 9
i=1 | 11 | OOx | 11 | |
10 | 010 | |||
01 | 10x | 13 | ||
i=2 | 0011 | 000 | OOx | |
0010 | 000 | 010 | 15 | |
0001 | 100 | OOx | ||
0000 | 100 | 010 | 17 |
Simbolul x folosit în tabelul de conversie are valoarea 1, când bitul canal care urmează este 0, sau are valoarea 00, când bitul canal care urmează este “1. Lungimea 21 impusă maximă r este 2.
Parametrii codului de lungime variabilă RLL (1-7) sunt (1, 7; 2, 3; 2). Perioada de 23 inversie minimă Tmin, care poate fi exprimată de (d+1 )T, este astfel egală cu 2 (=1+1 )T, unde T este intervalul bit în trenul de unde. Perioada minimă de inversie Tmin, care poate 25 fi exprimată de asemenea prin (m/n)x2Tdata, este egală cu 1,33(=2/3x2)Tdata, unde Tdata este intervalul bit în secvența de date. Perioada maximă de inversie Tmax, care poate fi 27 exprimată prin (k+1 )T, este egală cu (7+1)T=8 x (m/n)Tdata = 8x2/3Tdata=5,33Tdata. Lățimea ferestrei de detecție Tw, care poate fi, de asemenea, exprimată prin (m/n)Tdata, 29 este astfel egală cu 0,67(=2/3)Tdata.
într-un tren de biți canal ce finalizează modularea RLL(1-7) arătată în tabelul 1, se 31 observă că o frecvență generată, corespunzătoare unei perioade 2T, care este egală cu perioada minimă de inversie Tmin, este urmată de frecvențe generatoare corespunzătoare 33 perioadelor 3T și 4T. Faptul că o serie de informații de front sunt generate la intervale scurte, cum ar fi 2T sau 3T, în multe cazuri, este avantajos pentru generarea unui semnal de ceas. 35
Odată cu creșterea densității liniei de înregistrare, rularea minimă devine o problemă. Adică, dacă rulările minime 2T sunt generate consecutiv, trenul de unde de înregistrat este 37 afectat de distorsiuni generate de acestea. Aceasta se datorează faptului că unda 2T emisă este mai mică decât alte unde emise, și astfel este mai ușor afectată de factori cum ar fi 39 distorsiunile tangențiale și de defocalizare. în plus, înregistrarea marcajului minim 2T, la o densitate de linie mare, poate fi afectată foarte ușor de perturbări cum ar fi zgomotul. Astfel, 41 operațiunea de redare va fi de asemenea vulnerabilă la erori. în acest caz, în reproducerea datelor se observă o configurație de erori cum sunt alunecări ale fronturilor de început și de 43 sfârșit ale marcajului minim. Ca rezultat, lungimea erorilor de bit generate crește.
Așa cum a fost descris mai sus, când datele sunt transmise printr-o linie de 45 transmisie sau sunt înregistrate pe un suport de înregistrare, acestea sunt modulate, înainte de a fi transmise sau înregistrate, într-un cod corespunzător transmisiei de linie sau 47
RO 121883 Β1 suportului de înregistrare. Dacă codul rezultat din modulare conține o componentă de curent continuu, se generează ușor o varietate de semnale de eroare, cum ar fi erori de urmărire în controlul unui driver de disc sau servo, ce devin vulnerabile la variații sau jittere. Din acest motiv, este de dorit să se facă eforturi pentru obținerea codului modulat fără componente de curent continuu, dacă este posibil.
Pentru a obține un cod modulat fără componente de curent continuu, se propune controlul DSV (Valoarea Sumei Digitale). DSV este o sumă totală, obținută prin adunarea valorilor trenului de biți (simboluri de date), unde valorile +1 și -1 sunt atribuite valorilor 1 și 0 din trenul respectiv, rezultat dintr-o modulare NRZI (adică codare de nivel) a trenului de biți canal, DSV-ul este un indicator al componentei de curent continuu, conținută într-un tren de coduri. Reducerea valorii absolute a DSV prin control DSV este echivalentă cu suprimarea magnitudinii unei componente de curent continuu, conținută într-un tren de coduri.
Controlul DVS nu este aplicat pentru un cod modulat generat în conformitate cu tabelul cu lungimi variabile RLL(1-7) din tabelul 1 dat mai sus. Controlul DSV pentru astfel de cazuri este realizat prin calcularea DSV pentru un tren de biți codați (un tren de biți canal) după modularea pentru o perioadă predeterminată de timp și inserarea unui număr predeterminat de biți de control DSV în trenul codat de biți (trenul de biți canal).
La orice viteză, biții de control DSV sunt practic biți redundanți. Dacă este luată în considerare eficiența conversiei de cod, este de dorit să se reducă numărul de biți de control DSV la cea mai mică valoare posibilă.
în plus, dacă sunt inserați biți de control DSV, este de asemenea de dorit să se păstreze neschimbate valorile numărului minim de rulări d și al numărului maxim de rulări k. Acest lucru este de dorit, deoarece o schimbare a valorilor lui d și k va afecta caracteristicile de înregistrare/redare.
Așa cum este descris mai sus, în operația de înregistrare a unui cod RLL la o densitate de linie mare sau în operația de redare a codului RLL ce a fost înregistrat la o densitate de linie mare, se ridică problema că un eșantion cu rulări minime d consecutive poate determina generarea cu ușurință a unor erori mari.
în plus, în cazul unui cod RLL, cum ar fi codul RLL(1-7), controlul DSV necesită inserții de biți de control DSV într-o parte arbitrară a unei secvențe de cuvinte cod (un tren de biți canal). Din moment ce biții de control DSV sunt practic biți redundanți, este de dorit să se reducă numărul de biți de control DSV inserați, la cea mai mică valoare posibilă. Pentru a păstra lungimea de rulare minimă și numărul maxim de rulări la valori constante, numărul de biți de control DSV este de cel puțin 2 biți. Este de altfel de dorit să se reducă numărul de biți de control DSV la o valoare și mai mică.
Invenția se referă la problema descrisă mai sus. Prezenta invenție are ca obiect efectuarea controlului DSV, pentru obținerea unor biți de control de eficiență mare în codul RLL (d, k; m, n), unde rularea minimă d = 1, acesta fiind codul RLL(1, 7; 2, 3), astfel încât numărul de rulări minime consecutive este redus, în timp ce rularea minimă și rularea maximă sunt păstrate neschimbate.
Un alt obiectiv al prezentei invenții este acela de a preveni creșterea propagării erorii de demodulare prin utilizarea unui tabel de conversie având cea mai simplă configurație.
Mijloacele pentru rezolvarea acestor probleme sunt:
Un aparat de modulare pentru conversia datelor cu o lungime a datelor de bază de m biți în coduri de lungime variabilă (d, k; m, n; r), cu o lungime a codului de bază de n*i biți, unde d este lungimea de rulare minimă și k este lungimea de rulare maximă, i este o lungime impusă, iar r este lungimea impusă maximă, aparat care are mijloace de conversie
RO 121883 Β1 pentru conversia datelor de intrare în coduri, conform unui tabel de conversie care stabilește 1 o regulă de conversie, conform căreia restul divizării cu 2 a numărului valorilor '1' ale unui element din secvența de date, având o valoare de 0 sau 1, va fi întotdeauna egal cu restul 3 divizării cu 2 a numărului valorilor '1' ale unui element din secvența de cuvinte cod rezultată din conversia secvenței de date și codurile de conversie ale tabelului de conversie cuprind: 5
- coduri de bază pentru d=1, k=7, m=2 și n=3;
- coduri de substituție primare pentru limitarea numărului de apariții consecutive ale 7 numitei rulări minime d; și
- coduri de substituție secundare pentru păstrarea lungimii limită de rulare k. 9
O metodă de modulare destinată a fi utilizată într-un aparat de modulare pentru conversia datelor cu o lungime a datelor de bază de m biți, în coduri de lungime variabilă (d, 11 k; m, n; r), cu o lungime a codului de bază de n*i biți, unde d este numărul minum de rulări și k este rularea maximă, o lungime impusă i este număr întreg și r este lungimea impusă 13 maximă, care cuprinde următoarele etape:
- o etapă de conversie pentru conversia datelor de intrare în coduri, conform unui 15 tabel de conversie care stabilește o regulă de conversie, conform căreia restul divizării cu a numărului valorilor '1' ale unui element din secvența de date, având o valoare de 0 sau 17 1, va fi totdeauna egal cu restul divizării cu 2 a numărului valorilor '1' ale unui element din secvența de cuvinte rezultată din conversia secvenței de date și codurile de conversie ale 19 tabelului de conversie cuprind:
- coduri de bază pentru d=1, k=7, m=2 și n=3; 21
- coduri de substituție primare pentru limitarea numărului de apariții consecutive ale numitului număr minim de rulări d; și 23
- coduri de substituție secundare pentru păstrarea lungimii limită de rulare k.
Un aparat de demodulare pentru conversia unui cod cu lungime variabilă (d, k; m, n; 25 r), cu o lungime a codului de bază de n*i biți, în date cu o lungime a datelor de bază de m biți, unde d este lungimea de rulare minimă și k este rularea maximă, i este o lungime 27 impusă, număr întreg, și r este lungimea impusă maximă, caracterizat prin aceea că are mijloace de conversie pentru conversia codurilor de intrare în date, conform unui tabel de 29 conversie care stabilește o regulă de conversie, conform căreia restul divizării cu 2 a numărului valorilor '1' ale unui element din secvența de date, având o valoare de 0 sau 1, va 31 fi întotdeauna egal cu restul divizării cu 2 a numărului valorilor '1' ale unui element din secvența de cuvinte cod rezultată din conversia secvenței de date, și codurile de conversie 33 ale tabelului de conversie cuprind:
- coduri de bază pentru d=1, k=7, m=2 și n=3;35
- coduri de substituție primare pentru limitarea numărului de apariții consecutive ale numitului număr minim de rulări d numit; și37
- coduri de substituție secundare pentru păstrarea lungimii limită de rulare k.
O metodă de demodulare destinată a fi utilizată într-un aparat de demodulare pentru39 conversia codurilor de lungime variabilă (d, k; m, n; r), cu o lungime a codului de bază de n*i biți, în date cu o lungime a datelor de bază de m biți, unde d este rularea minimă și k este41 rularea maximă, i este o lungime impusă și r este o lungime impusă maximă, având următoarele etape:43
- o etapă de conversie pentru conversia codului de intrare în date, conform unui tabel de conversie care stabilește o regulă de conversie, conform căreia restul divizării cu 2 a 45 numărului valorilor '11 ale unui element din secvența de date, având o valoare de 0 sau 1, va fi totdeauna egal cu restul divizării cu 2 a numărului valorilor'!' ale unui element din secvența 47
RO 121883 Β1 de cuvinte cod rezultată din conversia secvenței de date, și codurile de conversie ale numitului tabel de conversie cuprind:
- coduri de bază pentru d=1, k=7, m=2 și n=3;
- coduri de substituție primare pentru limitarea numărului de apariții consecutive ale numitei rulări minime d; și
- coduri de substituție secundare pentru păstrarea limitei lungimii de rulare k.
Un semnal modulat produs prin metoda de modulare enunțată mai sus.
Un semnal conținând:
- elemente cod ale unui cod cu lungime variabilă (d, k; m, n; r), cu o lungime a codului de bază de n*i biți, o lungime de rulare minimă de d biți, o rulare maximă de k biți, și o lungime impusă maximă r, lungimea impusă i fiind număr întreg, fiecare element cod reprezentând respectiv o porțiune de date în care restul divizării cu 2 a numărului valorilor '1' ale porțiunii de date, având o valoare de 0 sau 1, va fi întotdeauna egal cu restul divizării cu 2 a numărului valorilor '1' ale elementului cod care reprezintă porțiunea de date.
Elementele cod incluzând:
- coduri de bază pentru d=1, k=7, m=2 și n=3;
- coduri de substituție primare pentru limitarea numărului de apariții consecutive ale rulării minime d; și
- coduri de substituție secundare pentru păstrarea limitei lungimii de rulare k=7 când sunt utilizate codurile de substituție primare.
Precum și un suport de înregistrare conținând unul din semnalele expuse mai sus.
Aparatul de modulare, metoda de modulare, aparatul de demodulare, metoda de demodulare, semnalul modulat și suportul de prezentare program, conform invenției, permit derularea procesului de conversie ce se realizează pe baza unui tabel de conversie ce stabilește o regulă de conversie, conform căreia restul divizării cu 2 a numărului valorilor 1 ale unui element din secvența de date, având o valoare de 0 sau 1, va fi întotdeauna egal cu restul divizării cu 2 a numărului valorilor 1 ale unui element din secvența de cuvinte cod rezultată din conversia secvenței de date, și codurile de conversie ale tabelului de conversie ce cuprind:
- coduri de bază pentru d=1, k=7, m=2 și n=3;
- coduri de substituție primare pentru limitarea numărului de apariții consecutive a numărului minim de rulări d; și
- coduri de substituție secundare pentru păstrarea limitei lungimii de rulare.
Invenția de față este descrisă cu referire la fig. 1... 11, care reprezintă:
- fig. 1 este o schemă bloc care arată configurația tipică pentru implementarea unui aparat de modulare furnizat de prezenta invenție;
- fig. 2 este o diagramă explicativă folosită pentru descrierea procesării efectuate de un bloc de determinare/inserare a bitului de control DSV 11, folosit în aparatul de modulare arătat în fig. 1;
- fig. 3 este o schemă bloc care arată o configurație tipică a unui bloc de modulare 12, folosit în aparatul de modulare arătat în fig. 1;
- fig. 4 este o diagramă pentru exemplificarea procesării efectuate de blocul de modulare 12, arătat în fig. 3;
- fig. 5 este o schemă bloc care arată o configurație tipică pentru implementarea unui aparat de modulare furnizat de prezenta invenție;
- fig. 6 este o schemă bloc care arată o configurație tipică a unui bloc de demodulare 111, folosit în aparatul de demodulare din fig. 5;
RO 121883 Β1
- fig. 7 este o diagramă explicativă folosită pentru descrierea procesării efectuate de1 blocul de demodulare 111, arătat în fig. 6;
- fig. 8 este o diagramă folosită ca referință pentru explicarea operațiilor efectuate 3 de blocul de eliminare a bitului de control DSV112, folosit în aparatul de demodulare arătat în fig. 5;5
- fig. 9 este o schemă bloc care arată o altă configurație tipică de implementare a unui aparat de modulare furnizat de prezenta invenție.7
- fig. 10 este o schemă bloc care arată o altă configurație tipică de implementare a unui aparat de demodulare furnizat de prezenta invenție; și9
- fig. 11 este o diagramă care arată un exemplu de cod pentru înregistrare cu sincronizarea semnalelor și biții de control DSV inserați în acesta.11
In descrierea invenției au fost utilizate următoarele semne de referință: | ||
11 | Bloc de determinare/inserare a bitului de control DSV | 13 |
12 | Bloc de modulare | |
13 | Bloc de codare NRZI | 15 |
31 | Registru de deplasare | |
32 | Bloc de evaluare a lungimii impuse | 17 |
33 | Bloc de detecție a codului de limitare a apariției consecutive a valorii minime de rulare | 19 |
34 | Bloc de detecție a codului de asigurare a lungimii limită de rulare | |
35-1 la 35-4 Blocuri de conversie | 21 | |
36 | Multiplexor | |
37 | Buffer | 23 |
111 | Blod de demodulare | |
112 | Bloc de eliminare a bitului de control DSV | 25 |
121 | Comparator | |
122 | Bloc de evaluare a lungimii impuse | 27 |
123 | Bloc de detecție a codului de limitare a apariției consecutive a rulării minime | |
124 | Bloc de detecție a codului de asigurare a lungimii limită de rulare | 29 |
125-1 la 125-4 Blocuri de conversie inversă | ||
126 | Multiplexor înainte de a începe descrierea câtorva exemple preferate de realizare a invenției, | 31 |
pentru a clarifica mijloacele de asociere a relațiilor prezentei invenții, descrise în revendicări, cu aplicații descrise în exemplele de realizare, în descrierea ce urmează, fiecare dintre | 33 |
mijloace este urmat de un exemplu de aplicare, scris între paranteze, sub forma un mijloc 35 (implementat spre exemplu printr-o implementare tipică)”. Nu este nevoie să se amintească faptul că implementarea tipică nu este redată în scop limitativ. Astfel, un mijloc nu este în 37 mod necesar limitat la o implementare tipică, asociată cu mijlocul.
Exemplele preferate de realizare a prezentei invenții sunt descrise după cum 39 urmează. Pentru a simplifica explicațiile, în descrierea ce urmează, un vector de biți cu valori '0' și '1' de date înainte de conversie, care este o secvență de date pre-conversie, este 41 reprezentat ca un tren de biți inclus între paranteze () cum ar fi spre exemplu (000011). Pe de altă parte, un vector de biți cu valori “0 și “1 ” al unui cod rezultat din conversie, care este 43 o secvență de cuvinte secvență post-conversie, este reprezentat ca un tren de biți delimitat de o pereche de simboluri cum ar fi spre exemplu 000100100. 45
Tabelele 2 și 3 date mai jos sunt exemple de tabele de conversie pentru conversia datelor în coduri conform cu invenția de față. 47
RO 121883 Β1
Tabelul 2
17PP.RML.32
Date | Cod |
11 | *0* |
10 | 001 |
01 | 010 |
0011 | 010 100 |
0010 | 010 000 |
0001 | 000 100 |
000011 | 000 100 100 |
000010 | 000 100 000 |
000001 | 010 100 100 |
000000 | 010 100 000 |
110111 | 001 000 000 (următorul 010). |
00001000 | 000 100 100 100 |
00000000 | 010 100 100 100 |
Dacă xx1 atunci *0* = 000 | |
xxO atunci *0* = 101 | |
Sincronizare & Terminație | |
#01 000 000 001 (12 biți canal) | |
sau | |
#01 001 000 000 001 000 000 001 (24 de biți canal) | |
# = 0: Reluare buclă | |
# = 1: Ieșire din buclă | |
Tabel Terminație | |
00 | 000 |
0000 | 010 100 |
“110111 | 001 000 000 (următorul 010) |
Când următorii biți canal sunt “010, se convertește '11 01 1T în '001 000 000' după utilizarea tabelului principal și a tabelului terminație.
Așa cum se vede în tabelul 2, tabelul de conversie arată codurile rezultate din conversie, incluzând codurile de bază, codurile de substituție și codurile terminație. Procesul de conversie nu poate fi realizat fără un cod de bază. în tabelul de conversie, codurile de bază sunt coduri rezultate din conversia secvențelor de date (11) în (000000). Procesul de conversie poate fi realizat chiar dacă nu există un cod de substituție. Dacă există un cod de substituție, procesul este eficientizat. în tabelul de conversie, codurile de substituție sunt coduri rezultate din conversia secvențelor de date (110111), (00001000) și (00000000). Codul terminație este utilizat pentru terminarea codului rezultat din conversie, în orice poziție arbitrară. Codurile terminație din tabel sunt coduri rezultate din conversia secvențelor de date (00) și (0000). Tabelul de conversie conține de asemenea semnale de sincronizare.
în tabelul 2, lungimea de rulare minimă d este 1, în timp ce lungimea de rulare maximă k este 7. Unul dintre elementele codurilor de bază include un cod nedeterminat, care
RO 121883 Β1 este un cod indicat de simbolul Bitul reprezentat prin simbolul al codului nedeterminat 1 poate fi determinat ca fiind fie 0 fie 1, pentru a ține valorile numărului minim de rulări d și ale numărului maxim de rulări k, fără referire la o succesiune de cuvinte cod imediat 3 anterioară sau imediat următoare. Pentru a detalia, dacă secvența de date de 2 biți, ce trebuie convertită, este (11), un cod rezultat din conversie poate fi 000 sau 101, 5 depinzând de secvența de cuvinte cod imediat anterioară. Mai în detaliu, dacă bitul canal singular al secvenței de cuvinte cod imediat precedente este 1, secvența de date de 2 biți 7 (11) este convertită în codul Ό00, pentru a se păstra numărul minim de rulări d. Dacă bitul canal singular al secvenței de cuvinte cod imediat anterioare este 0, secvența de date de 9 biți (11) este convertită în codul 101, pentru a se păstra lungimea de rulare maximă k.
Codurile de bază arătate în tabelul de conversie al tabelului 2 au o structură de 11 lungime variabilă. Numărul de coduri de bază cu o lungime impusă i de 1 este 3, o valoare care este mai mică decât un număr necesar de 4 (=2Am = 2Λ2). Aceste trei coduri de bază 13 sunt *0*, 001 și 010. Ca rezultat, în operația de convertire a secvenței de date se întâlnesc secvențe de date ce nu pot fi convertite numai cu o lungime impusă i de 1. Din 15 acest motiv, este necesar să ne referim la coduri de bază cu o lungime impusă i de până la în tabelul 2, în operația de conversie a tuturor secvențelor de date. Astfel, coduri de bază 17 cu o lungime impusă i de până la 3 sunt incluse în tabelul 2, astfel încât să permită tabelului să fie un tabel de conversie suficient. 19 în plus, tabelul de conversie din tabelul 2 include de asemenea coduri de substituție pentru limitarea apariției consecutive a numărului minim de rulări d. Dacă secvența de date 21 este (110111) și o secvență de cuvinte cod ce urmează unui cod ce rezultă din conversia secvenței de date este 010, secvența de date este convertită într-un cuvânt cod 23 010 000 000. Dacă secvența de cuvinte cod, ce urmează unui cod ce rezultă din conversia secvenței de date, este alta decât 010, secvența de date (110111) este convertită în unități 25 de 2 biți. Pentru a detalia, trenurile de 2 biți (11), (01) și (11) din secvența de date sunt convertite într-o secvență de cuvinte cod *0* 010 și *0*. Ca rezultat, aparițiile consecutive 27 ale numărului minim de rulări d din secvența de cuvinte cod rezultată din conversia secvenței de date, pot fi restrânse, prin limitarea repetării numărului minim de rulări, la maximum 6. 29
Mai mult, tabelul de conversie din tabelul 2 stabilește o regulă de conversie, conform căreia restul divizării cu 2 a numărului valorilor 1 ale unui element din secvența de date, 31 având o valoare de 0 sau 1, este întotdeauna egal cu restul divizării cu 2 a numărului valorilor 1 ale unui element din secvența de cuvinte cod rezultată din conversia secvenței 33 de date. Dacă numărul valorilor 1 ale unui element din secvența de date este par, numărul valorilor 1 ale unui element din secvența de cuvinte cod este de asemenea par, și dacă 35 numărul valorilor 1 ale unui element din secvența de date este impar, și numărul valorilor 1 ale unui element din secvența de cuvinte cod este de asemenea impar. Spre exemplu, 37 secvența de date (000001) este convertită într-o secvență de cuvinte cod 010 100 100. în acest caz, restul divizării la 2 a numărului valorilor 1 ale unui element din secvența de date 39 este 1, acesta fiind egal cu restul divizării cu 2 a numărului valorilor 1 ale unui element din secvența de cuvinte cod rezultată din conversia secvenței de date. Astfel, numărul valorilor 41 1 ale secvenței de date și numărul valorilor 1 ale secvenței de cuvinte cod sunt ambele impare. Un alt exemplu, o secvență de date (000000) este convertită într-o secvență de 43 cuvinte cod 010100 000”. în acest caz, restul divizării cu 2 a numărului valorilor 1 ale unui element din secvența de date este 1 și este egal cu restul divizării la 2 a numărului valorilor 45 1 ale unui element din secvența de cuvinte cod rezultată din conversia secvenței de date. Astfel, numărul valorilor 1 ale secvenței de date și numărul valorilor Ί ale secvenței de 47 cuvinte cod sunt ambele pare.
RO 121883 Β1 în mod adițional, lungimea maximă impusă r din tabelul de conversie din tabelul 2 este 4. Codurile din tabel cu o lungime impusă i egală cu 4 sunt coduri de substituție pentru atribuirea valorii 7 numărului maxim de rulări k. Un asemenea cod de substituție este considerat cod de asigurare a numărului maxim de rulări. Astfel, o secvență de date (00001000) este convertită într-o secvență de cuvinte cod 000100 100100, iar o secvență de date (00000000) este convertită într-o secvență de cuvinte cod “010 100 100 100. Trebuie remarcat faptul că, în acest caz, valoarea numărului minim de rulări d este menținută și ea la valoarea 1.
Dacă tabelul de conversie din tabelul 2 nu include coduri de substituție ce au o lungime impusă i egală cu 4, lungimea maximă impusă r pentru tabel este 3, permițând generarea unui cod cu un număr maxim de rulări k egal cu 8. Din moment ce tabelul include coduri de bază cu o lungime impusă i egală cu 4, pot fi generate coduri cu un număr maxim de rulări k egal cu 7.
în general, cu cât lungimea de rulare maximă k este mai mare, cu atât este mai neconvenabilă generarea unui semnal de ceas, și astfel, cu atât este mai mică stabilitatea sistemului. Astfel, prin reducerea valorii numărului maxim de rulări k de la 8 la 7, caracteristicile sistemului se pot înbunătăți în măsură corespunzătoare cu reducerea numărului maxim de rulări k.
Astfel, dacă tabelul de conversie din tabelul 2 este creat să cuprindă numai coduri de bază, lungimea maximă impusă r pentru un astfel de tabel este egală cu 3. în acest caz, este posibil să se genereze un cod ce are lungimea de rulare minimă d egală cu 1 și numărul maxim de rulări k egal cu 8, iar numărul minim de rulări d consecutive este limitat la o valoare ridicată. Adițional, restul divizării cu 2 a numărului valorilor 1 ale unui element din secvența de date, având o valoare de 0 sau 1, va fi întotdeauna egal cu restul divizării cu 2 a numărului valorilor 1 ale unui element din secvența de cuvinte cod rezultată din conversia secvenței de date.
Dacă tabelul de conversie este creat pentru a include și codurile de substituție pentru limitarea aparițiilor consecutive ale numărului minim de rulări d, adițional la codurile de bază, lungimea maximă impusă r, pentru un astfel de tabel, este de asemenea egală cu 3. în acest caz, este posibilă generarea unui cod ce are lungimea de rulare minimă d egală cu 1 și numărul maxim de rulări k egal cu 8, iar numărul minim de rulări d consecutive este limitat la o valoare superioară. Adițional, restul divizării cu 2 a numărului valorilor 1 ale unui element din secvența de date, având o valoare de 0 sau 1, va fi întotdeauna egal cu restul divizării cu 2 a numărului valorilor 1 ale unui element din secvența de cuvinte cod rezultată din conversia secvenței de date.
Dacă tabelul de conversie este creat pentru a include și codurile de substituție pentru asigurarea numărului de rulări maxime k egal cu 7, adițional codurilor de bază, lungimea maximă impusă r pentru un astfel de tabel este 4. în acest caz, este posibilă generarea unui cod, ce are numărul minim de rulări d egal cu 1, iar numărul maxim de rulări k egal cu 7, iar numărul minim de rulări d consecutive este limitat la o valoare superioară. în plus, restul divizării cu 2 a numărului valorilor 1 ale unui element din secvența de date, având o valoare de 0 sau 1, va fi întotdeauna egal cu restul divizării cu 2 a numărului valorilor 1 ale unui element din secvența de cuvinte cod rezultată din conversia secvenței de date.
în general, totuși, cu cât lungimea maximă impusă r este mai mare, cu atât sunt mai slabe caracteristicile de propagare ale erorii de demodulare, generate în cazul deplasării unui bit, adică o eroare generată, deoarece un bit marginal este deplasat înainte sau înapoi față de poziția sa normală, cu un bit.
RO 121883 Β1
Compararea tabelului 1 cu tabelul 2 arată că lungimea maximă impusă r a primului 1 este 2, în timp ce lungimea maximă impusă r a celui de-al doilea este 4. Astfel, tabelul 2 ar trebui să prezinte caracteristici mai slabe decât tabelul 1. Totuși, rezultatele simulării ce va 3 fi descrisă mai târziu, cu referire la tabelul 7, indică faptul că caracteristicile tabelului 2 nu sunt foarte slabe în comparație cu caracteristicile tabelului 1. Spre exemplu, așa cum se 5 arată în tabelul 7, valoarea medie a erorii de bit din tabelul 1 este 1,014 biți, în timp ce pentru tabelul 2 este de 1,67 biți, o valoare ce nu este cu mult mai mare decât cea a tabelului 1. 7
Diferența valorilor medii ale erorii de bit poate fi considerată a fi atribuită faptului că numărul de grupuri de coduri de conversie din tabelul 1 este mai mic decât acela din tabelul 1, printr-o 9 diferență egală cu 2.
în cazul în care un semnal de sincronizare este inserat într-o poziție arbitrară într-o 11 secvență de cuvinte cod (care este un tren de biți canal), generată ca urmare a conversiei realizate conform tabelului de conversie din tabelul 2, tabelul de conversie produce coduri 13 cu o structură de lungime variabilă. Acest lucru se datorează faptului că tabelul de conversie cuprinde un tabel terminație ce are coduri terminație pentru terminarea codului rezultat din 15 conversie la orice poziție arbitrară.
Să presupunem, spre exemplu că un semnal de sincronizare este inserat într-o 17 poziție bine determinată în codul rezultat din conversie. în acest caz, în primul rând, la un punct de joncțiune dintre o secvență de cuvinte cod ce preced poziția bine determinată și o 19 secvență de cuvinte cod ce urmează poziției bine determinate, biții de joncțiune sunt setați pentru menținerea unui număr minim de rulări d și un număr maxim de rulări k și un eșantion 21 unic ce reprezintă semnalul de sincronizare este setat între biții de joncțiune. Se consideră un eșantion de semnal de sincronizare ce nu respectă valoarea 7 a numărului maxim de 23 rulări k. în acest caz, eșantionul de semnal de sincronizare cu lungime minimă este un cuvânt cod de 12 biți (adică 12 biți canal), dat după cum urmează: 25 #01 000 000 001
Simbolul # de la începutul eșantionului de semnal de sincronizare este un bit de 27 joncțiune care poate fi 0 sau ”1, așa cum va fi descris mai târziu. Cel de-al doilea bit canal ce urmează bitului # este 0, pentru a se păstra valoarea minimă de rulare d. Cel de-al 29 treilea bit canal și biții următori sunt setați la valori ce formează un eșantion unic 9T, un eșantion de cod care nu este descris în tabelul 2, pentru a se obține un număr maxim de 31 rulări k egal cu 8. Așa cum se arată în eșantionul de mai sus, cel de-al treilea bit canal și ultimul bit canal cuprind între ei 8 biți 0 consecutivi. Trebuie menționat faptul că, chiar dacă 33 ultimul bit canal din eșantionul de semnal de sincronizare este setat la valoarea 1, prin utilizarea tabelului de conversie al tabelului 2, se poate păstra lungimea de rulare minimă d. 35 în continuare, se explică tabelul terminație și bitul de joncțiune # din eșantionul bit al semnalului de sincronizare. Așa cum este arătat în tabelul 2, tabelul terminație este 37 construit după cum urmează:
00 000 41
0000 010 100
----------------------------------- 43
Tabelul terminație este necesar pentru codurile de bază cu o lungime impusă i, care 45 asigură un număr de perechi, fiecare cuprinzând o secvență de date și o secvență de cuvinte cod mai mici decât numărul necesar 4 (=2Am=2A2). 47
RO 121883 Β1
Pentru a detalia, în cazul tabelului 2, pentru lungimea impusă i = 1, întrucât numărul de perechi, fiecare cuprinzând o secvență de date și o secvență de cuvinte cod, este egal cu 3, tabelul terminație este necesar. Tabelul terminație este necesar pentru lungimea impusă i = 2, întrucât numărul de perechi, fiecare cuprinzând o secvență de date și o secvență de cuvinte cod, este de asemenea egal cu 3. Pentru lungimea impusă i = 3, numărul de perechi, fiecare cuprinzând o secvență de date și o secvență de cuvinte cod egale cu 5, incluzând o pereche ce are un cod de substituție. Restul de 4 perechi cuprinde fiecare un cod de bază. întrucât numărul necesar 4 este atins, tabelul terminație nu mai este necesar. Pentru lungimea impusă i = 4, întrucât secvențele de cuvinte cod sunt toate coduri de substituție, nu este necesar să se ia în considerare un cod terminație. Astfel, tabelul terminație este necesar pentru lungimea impusă i = 1, unde este utilizat un cod terminație pentru secvența de date (00). De asemenea, tabelul terminație este utilizat pentru lungimea impusă i = 2, unde este utilizat un cod terminație pentru secvența de date (0000). Conform cu tabelul terminație, secvențele de date (00) și (0000) sunt convertite în secvențe de cuvinte cod 000 și 010100. Ca rezultat, într-o operație de inserare a unui semnal de sincronizare, este posibil să se evite situația în care datele ce preced eșantionul de semnal de sincronizare nu mai pot fi convertite. Astfel, sistemul de conversie este capabil să elimine o situație în care nu mai este posibil să lase codul imediat precedent semnalului de sincronizare să servească drept terminație.
Bitul # din eșantionul de semnal de sincronizare este utilizat pentru a distinge cazul în care tabelul terminație este utilizat, de cazul în care tabelul terminație nu este utilizat. Pentru a fi mai clar, primul bit canal # de la începutul eșantionului de semnal de sincronizare este setat la valoarea '1' pentru a indica faptul că este utilizat codul terminație, sau este setat la valoarea '0' pentru a indica faptul că nu este utilizat un cod terminație. în felul acesta este posibil să se determine corect dacă tabelul terminație este utilizat sau nu, adică dacă codul terminație este utilizat sau nu.
Așa cum este descris mai sus, eșantionul de semnal de sincronizare cu o lungime minimă este un cuvânt cod de 12 biți (adică 12 biți biți canal). întrucât este acceptabil un eșantion de semnal de sincronizare ce nu respectă valoarea 7 a numărului maxim de rulări k, dar asigură un număr maxim de rulări k egal cu 8 (9T), poate fi construit orice eșantion de semnal de sincronizare ce formează un cuvânt cod de cel puțin 12 biți. în cazul formării unui cuvânt cod de 15 biți, spre exemplu, se pot obține următoarele semnale de sincronizare:
#01 000 000 001 010 #01 000 000 001 001 în cazul formării unui cuvânt cod de 21 de biți, se poate obține următorul semnal de sincronizare:
#01 000 000 001 000 000 001
Semnalul de sincronizare de 21 de biți de mai sus cuprinde 2 eșantioane consecutive, care asigură fiecare o lungime maximă de rulare k egală cu 8 (9T). Un asemenea semnal de sincronizare poate fi detectat cu un grad ridicat de siguranță. Apoi, în cazul formării unui cuvânt cod de 24 de biți, se poate obține următorul semnal de sincronizare:
#01 001 000 000 001 000 000 001
Semnalul de sincronizare de mai sus, care este un eșantion având forma 3T-9T-9T, reduce probabilitatea de apariție a unei rulări (T) mari, înainte sau după două eșantioane consecutive, fiecare asigurând un număr maxim de rulări k egal cu 8 (9T), crescând în același timp puterea de detecție. Este posibil să se selecteze ce putere de detecție să fie asigurată de semnalul de sincronizare în conformitate cu cerințele sistemului.
RO 121883 Β1
Tabelul 3 este un alt tabel de conversie tipic, furnizat de prezenta invenție.
Tabelul 3
17PP.RML.525
Date Cod i = 1 Tabelul principal: 00101
1009
10001
00011 i = 2 Tabelul de substituție A (Limitează d la valoarea 1)
0000 100 01013
0001 101010
1000 000 01015
1001 001010 i = 3 Tabelul de substituție B (limitează k la valoarea 8) 111111 000010010
111110 001 010010
011110 101010010
011111 100010010 i = 4 Tabelul de substituție C (limitează RMTR la 6)
00010001 100 010 010 010 canal-0 10010001 100 000 010 010 canal-1 10010001 000 010 010 010 i = 4 Tabelul de substituție
canal 010 | 11100000 |
canal 010 | 11100010 |
canal 010 | 11100001 |
canal 010 | 11100011 |
Sincronizare:
(limitează k la valoarea 7)
000 001 010 010
100 001 010 010
001 010 010 010
101 010 010 010 date: x1
Ox ch: xxO 100 000 000 10x (12 biți canal) date: x1 Ox ch: xxO 100 000 000 100 000 000 10x (24 biți canal) Terminație:
adaugă biți de date ΌΓ sau ' 1Γ la început, și '00' sau ΌΓ la sfârșit.
Tabelul de conversie din tabelul 3 are o structură în care pentru numărul minim de rulări d = 1, lungimea de rulare maximă k = 7 și lungimea impusă i = 1, sunt asigurate 41 4(=2Am=2A2) coduri de bază. Astfel, pentru lungimea impusă i = 1, cele 4 coduri de bază sunt așezate într-un tabel principal. Pentru lungimea impusă i = 2 sau mai mare, sunt date 43 tabele de coduri de substituție, pentru limitarea parametrilor, cum sunt numărul minim de rulări d și lungimea de rulare maximă k. Mai precis, tabelul A pentru lungimea impusă i = 2, 45 prezintă coduri de substituție pentru a limita numărul minim de rulări d la valoarea 1. Tabelul
B pentru lungimea impusă i = 3 prezintă coduri de substituție, pentru a limita lungimea de 47
RO 121883 Β1 rulare maximă k la o valoare limită superioară egală cu 8. Tabelul C pentru lungimea impusă i = 4 prezintă coduri de substituție, pentru limitarea aparițiilor consecutive ale numărului minim de rulări d cu valoarea 1. Tabelul d pentru lungimea impusă i = 4 prezintă coduri pentru a limita lungimea de rulare maximă k la o valoare limită superioară egală cu 7. Astfel, în tabelul de conversie din tabelul 3, lungimea maximă impusă r = 4. Așa cum este descris mai sus, tabelul de conversie din tabelul 3 cuprinde coduri de substituție, pentru limitarea aparițiilor consecutive ale numărului minim de rulări d. Spre exemplu, o secvență de date (0001001) este convertită într-o secvență de cuvinte cod 100 010 010 010. Pentru o secvență de date (10010001), se ia ca referință cuvântul cod imediat precedent, pentru a se determina dacă bitul canal imediat precedent are valoarea 0 sau 1. Dacă bitul canal imediat precedent are valoarea 0, secvența de date este convertită în secvența de cuvinte cod 100 000 010 010. Dacă bitul canal imediat precedent ia valoarea 1, secvența de date este convertită în secvența de cuvinte cod 000 010 010 010. Ca rezultat, secvența de cuvinte cod rezultată din conversia datelor are numărul de rulări minime repetate consecutiv, limitat la o valoare maximă 6.
Adițional, tabelul de conversie din tabelul 3 stabilește o regulă de conversie, conform căreia restul divizării la 2 a numărului valorilor 1 ale unui element din secvența de date, având o valoare de 0 sau 1, va fi întotdeauna egal cu restul divizării cu 2 a numărului valorilor 1 ale unui element din secvența de cuvinte cod rezultată din conversia secvenței de date. Astfel, dacă numărul valorilor 1 ale unui element din secvența de date este par, numărul valorilor 1 ale unui element din secvența de cuvinte cod este de asemenea par, și dacă numărul valorilor 1 ale unui element din secvența de date este impar, și numărul valorilor 1 ale unui element din secvența de cuvinte cod este de asemenea impar. Spre exemplu, o secvență de date (1000) este convertită din secvența de cuvinte cod 000 010. în acest caz, restul divizării la 2 a numărului valorilor 1 ale unui element din secvența de date este egal cu 1 și este egal cu restul divizării cu 2 a numărului valorilor 1 ale unui element din secvența de cuvinte cod rezultată din conversia secvenței de date. Astfel, numărul valorilor 1 ale secvenței de date și ale secvenței de cuvinte cod sunt ambele pare, într-un alt exemplu, o secvență de date (111111) este convertită din secvența de cuvinte cod 000 010 010. în acest caz, restul divizării la 2 a numărului valorilor 1 ale unui element din secvența de date este egal cu 0 și este egal cu restul divizării cu 2 a numărului valorilor 1 ale unui element din secvența de cuvinte cod rezultată din conversia secvenței de date. Astfel, numărul valorilor 1 ale secvenței de date și ale secvenței de cuvinte cod sunt amblele impare.
în plus, codurile din tabelul de conversie din tabelul 3, cu o lungime impusă i = 4, egală cu lungimea maximă impusă r, sunt coduri de substituție pentru asigurarea valorii 7 pentru lungimea de rulare maximă k. în cazul în care conversia utilizează un asemenea cod de substituție, se ia ca referință o secvență de cuvinte cod imediat precedentă. Pentru a detalia, dacă secvența de cuvinte cod imediat precedentă este 010, conversia este realizată. Dacă secvența de date este (11100000) și secvența de cuvinte cod imediat precedentă este 010, spre exemplu, conversia este realizată pentru a rezulta secvența de cuvinte cod 000 001 010 010”. într-un alt exemplu, dacă secvența de date este (11100010) și secvența de cuvinte cod imediat precedentă este 010, secvența de date este convertită în secvența de cuvinte cod 100 001 010 010.
Tabelul de conversie din tabelul 3 ce este dat mai sus, nu poate fi alcătuit numai din coduri de bază pentru a realiza conversia RLL. Codul RLL cu un anumit număr minim de rulări d și un anumit număr maxim de rulări k poate fi produs prin utilizarea codurilor de bază din
RO 121883 Β1 tabelul principal sau prin utilizarea codurilor de substituție din tabelul A pentru o lungime1 impusă i = 2 și din tabelul B pentru o lungime impusă i = 3. în acest caz, lungimea maximă impusă r este egală cu 3 și este posibil să se genereze un cod ce are un număr minim de3 rulări d egal cu 1 și un număr maxim de rulări k egal cu 8. Astfel, restul divizării cu 2 a numărului valorilor 1 ale unui element din secvența de date, având o valoare de 0 sau 1,5 va fi întotdeauna egal cu restul divizării cu 2 a numărului valorilor 1 ale unui element din secvența de cuvinte cod rezultată din conversia secvenței de date.7
Dacă tabelul C, care prezintă coduri de substituție pentru limitarea aparițiilor consecutive ale numărului minin de rulări d, este inclus în configurația tabelului de conversie 9 din tabelul 3, adițional tabelului principal și tabelelor A și B, lungimea maximă impusă r este egală cu 4 și este posibil să se genereze un cod ce are un număr minim de rulări d egal cu 11
1, un număr maxim de rulări k egal cu 8 și un număr limitat de apariții consecutive a numărului minim de rulări d. în plus, restul divizării cu 2 a numărului valorilor 1 ale unui 13 element din secvența de date, având o valoare de 0 sau 1, va fi întotdeauna egal cu restul divizării cu 2 a numărului valorilor 1 ale unui element din secvența de cuvinte cod rezultată 15 din conversia secvenței de date. Trebuie subliniat faptul că, în acest caz, nu este întotdeauna necesar să se facă referire la secvența de cuvinte cod imediat precedentă, așa 17 cum se procedează în cazul utilizării tabelului C al tabelului 3.
Dacă tabelul D, conținând coduri de substituție pentru asigurarea unui număr maxim 19 de rulări k egal cu 7, este inclus în configurația tabelului 3, adițional tabelului principal și tabelelor A, B și C ce conțin coduri de substituție pentru limitarea aparițiilor consecutive ale 21 numărului minim de rulări d, lungimea maximă impusă r este egală cu 4 și este posibil să se genereze un cod ce are un număr minim de rulări d egal cu 1, un număr maxim de rulări k 23 egal cu Ί și un număr limitat de apariții consecutive ale numărului minim de rulări d. în plus, restul divizării cu 2 a numărului valorilor 1 ale unui element din secvența de date, având 25 o valoare de 0 sau 1, va fi întotdeauna egal cu restul divizării cu 2 a numărului valorilor Γ ale unui element din secvența de cuvinte cod rezultată din conversia secvenței de date. 27 Tabelul terminație din tabelul 2 nu este necesarîn procesul de inserare a unui semnal de sincronizare într-o poziție particulară într-o secvență de cuvinte cod (sau un tren de biți 29 canal), rezultând din conversia ce utilizează tabelul de conversie din tabelul 3. Aceasta se datorează faptului că, în conformitate cu tabelul de conversie din tabelul 3, un cod poate fi 31 terminat la o lungime impusă i egală cu 1.
Pentru a se insera un eșantion al unui semnal de sincronizare într-un mod cât mai 33 eficient, eșantionul este determinat după cum urmează. Cuvântul cod de 3 biți imediat precedent unui eșantion unic (sau o secvență de cuvite cod) ce servește ca semnal de 35 sincronizare și un cuvânt cod de 3 biți, imediat următor eșantionului unic, sunt cuvinte cod, rezultate din conversia conform tabelului 3. Cei 3 biți ai cuvintelor cod imediat precedent și 37 imediat următor eșantionului unic, fiecare are un format în care biții de date și biții joncțiune sunt amestecați după cum urmează. 39 în primul rând, cei trei biți ai cuvântului cod imediat precedent sunt determinați după cum urmează. înainte de conversie este examinată o unitate de m biți de cuvinte data, unde 41 m=2. Primul bit al unității de 2 biți de la începutul cuvântului data, înainte de conversie, este un bit informație, în timp ce al doilea bit are valoarea 1, pentru a indica un semnal de 43 sincronizare. Unitatea de 2 biți de la începutul cuvântului data este convertită în cuvânt cod (biți canal) conform tabelului 3. Altfel spus, cei m biți (2 biți) ai cuvântului data (x1) sunt 45 convertiți în n biți (3 biți) ai unui cuvânt cod xxO.
RO 121883 Β1
Apoi, cei trei biți ai cuvântului cod imediat următor sunt determinați după cum urmează. în același fel, este examinată înainte de conversie o unitate de m biți de cuvinte data unde m = 2. în acest caz, primul bit al unității de 2 biți de la începutul cuvântului cod, înainte de conversie are valoarea Ό', pentru a indica un semnal de sincronizare, în timp ce cel de-al doilea bit este un bit informație. Unitatea de 2 biți de la începutul cuvântului data este convertită într-un cuvânt cod (biți canal) conform tabelului 3. Altfel spus, cei m biți (2 biți) ai cuvântului data (Ox) sunt convertiți în n biți (3 biți) ai cuvântului cod 10x.
Când un eșantion unic al semnalului de sincronizare este setat ca eșantion ce nu respectă valoarea 7 pentru lungimea de rulare maximă k, un eșantion de semnal de sincronizare ce poate fi realizat cu lungimea cea mai scurtă posibilă include eșantionul unic al cuvântului cod de cel puțin 12 biți (12 biți canal) dați după cum urmează:
xxO 100 000 000 10x unde valoarea lui x depinde de tabelul de conversie. Cuvântul cod de 15 biți de mai sus cuprinde 3 biți x. 2 biți x se află la începutul cuvântului cod, în timp ce 1 bit x se află la sfârșitul cuvântului cod. Cei 3 biți x reprezintă unitatea de 2 biți a cuvântului dată înainte de conversie. Cei 12 biți canal ai cuvântului cod rămași reprezintă o porțiune redundantă, care de fapt reprezintă eșantionul de semnal de sincronizare. Cel de-al treilea bit canal al cuvântului cod este setat la 0”, pentru a păstra numărul minim de rulări d. Cât privește restul, ce începe cu cel de-al patrulea bit canal, 9T este setat ca eșantion al semnalului de sincronizare, pentru a se asigura numărul maxim de rulări k egal cu 8. în detaliu, 8 valori 0 sunt aranjate consecutiv între valorile 1 și 1.
Așa cum este descris mai sus, eșantionul unic de semnal de sincronizare cu o lungime minimă de 12 biți este un cuvânt cod (ce sunt 12 biți canal). Din moment ce eșantionul de semnal de sincronizare ce nu respectă valoarea 7 pentru lungimea de rulare maximă k, dar asigură un număr maxim de rulări k egal cu 8 (9T), este acceptabil, poate fi construit orice alt eșantion de semnal de sincronizare ce formează un eșantion unic de cuvânt cod de cel puți 12 biți. în cazul formării unui eșantion unic de cuvânt cod de 15 biți, spre exemplu, se poate obține semnalul de sincronizare următor:
xxO 100 000 000 100 10x în cazul formării unui cuvânt cod de 21 de biți, se poate obține semnalul de sincronizare următor:
xxO 100 000 000 100 000 000 10x
Semnalul de sincronizare de mai sus de 24 de biți cuprinde două eșantioane consecutive, fiecare dintre ele asigurând un număr maxim de rulări consecutive k egal cu 8 (9T). Conform semnalului de sincronizare, poate fi mărită puterea de detecție. Este posibil să se selecteze ce putere de detecție trebuie să asigure un semnal de sincronizare, în funcție de cerințele sistemului.
Conform metodei convenționale, după ce secvența de date este convertită prin utilizarea unui tabel de conversie cum este tabelul 2 sau tabelul 3, controlul DSV poate fi executat prin adăugarea biților de control DSV la intervale predeterminate într-un tren de biți canal, rezultați din conversie. Prin utilizarea relației dintre secvența de date și secvența de cuvinte cod, rezultate din conversia bazată pe tabelele 2 și 3, controlul DSV poate fi realizat cu un grad de eficiență și mai ridicat.
Pentru a detalia, regula de conversie este urmată astfel încât restul divizării cu 2 a numărului valorilor 1 ale unui element din secvența de date, având o valoare de 0 sau 1, va fi întotdeauna egal cu restul divizării cu 2 a numărului valorilor 1 ale unui element din secvența de cuvinte cod rezultată din conversia secvenței de date. Astfel, inserarea biților de control DSV, având o valoare ”1, ce indică inversia și o valoare 0, ce indică noninversia într-un tren de biți canal, este echivalentă cu inserarea biților de control DSV având
RO 121883 Β1 o valoare 1, ce indică inversia și o valoare 0, ce indică non-inversia într-un tren de biți 1 date.
Se consideră, spre exemplu, un caz în care 3 biți (001) de date sunt convertiți 3 conform tabelului 2. Un bit de control DSV x, ce urmează celor 3 biți, este intercalat în date.
în acest caz, datele, inclusiv bitul de control DSV, devin (001-x), unde x este bitul de control 5 de 1 bit, având valoarea '0' sau 1. Pentru x = 0, datele cuprinzând bitul de control DSV sunt convertite conform tabelului 2, după cum urmează: 7
Secvența de date Secvența de cuvinte cod9
0010 010 000
H
Pentru x = 1, pe de altă parte, datele ce cuprind bitul de control DSV sunt convertite conform13 tabelului 2, după cum urmează:
Secvența de date Secvența de cuvinte cod17
0011 010 100
--------------------------------------------------------------------- 19
Prin aplicarea nivelului de codare prin modulare NRZI a secvenței de cuvinte cod ce rezultă 21 din conversia utilizând tabelul 2, se obține următorul nivel al secvenței de cod codificate:
Secvența de date Secvența de cuvinte cod Secvența de cod codificată 25
0010 010 000 011111
0011 010 100 011000 27
Așa cum este arătat în tabelul de mai sus, ultimii trei biți ai primei secvențe de cod codificate sunt biții inversați ai ultimilor 3 biți ai celei de-a doua secvențe de cod codificate. 31 Rezultatele de mai sus arată că prin selectarea valorii (1) sau (0) pentru bitul de control DSV, controlul DSV poate fi executat într-o secvență de date. 33 în continuare, se consideră redundanța introdusă de controlul DSV. Efectuarea controlului DSV prin inserarea unui bit de control DSV în secvența de date corespunde 35 efectuării controlului DSV prin inserarea a 1,5 biți de control DSV într-un tren de biți canal, unde valoarea 1,5 este inversul raportului de conversie m/n = 2/3 din tabelele 2 și 3. Pentru 37 a efectua controlul DSV pentru un tabel RLL(1-7), ca cel prezentat în tabelul 1, este necesar să se aplice controlul unui tren de biți canal. în acest caz, cel puțin 2 biți canal sunt necesari 39 pentru a păstra numărul minim de rulări d, permițând astfel creșterea redundanței în comparație cu controlul aplicat unei secvențe de date pentru tabelele 2 și 3. Altfel spus, în 41 prezentul sistem poate fi îmbunătățită eficiența controlului DSV, prin executarea controlului DSV într-o secvență de date. 43 în fig. 1 este prezentat un exemplu ce descrie un aparat de modulare conform prezentei invenții. Conform acestui exemplu, o secvență de date este convertită într-un cod 45 de lungime variabilă (d, k; m, n; r) = (1, 7; 2, 3; 4) prin utilizarea tabelului 2.
Așa cum se arată în fig. 1, aparatul de modulare 1 cuprinde un bloc de 47 determinare/inserare a bitului de control DSV 11, pentru a determina dacă valoarea unui bit
RO 121883 Β1 de control DSV este '1' sau '0' și pentru inserarea bitului de control DSV în secvența de date emisă, la intervale alese arbitrar, un bloc de modulare 12 pentru modularea secvenței de date având biți DSV inserați și un bloc de codare NRZI13 pentru conversia semnalului de ieșire din blocul de modulare 12 într-un tren de unde înregistrabil. în plus, aparatul de modulare este prevăzut și cu un bloc de control al temporizării 14, pentru generarea semnalelor de temporizare și alimentarea cu semnale a unei varietăți de componente.
Fig. 2 reprezintă o diagramă explicativă, utilizată pentru descrierea procesării realizate de către blocul de determinare/inserare a bitului de control DSV 11. Așa cum se arată în figură, valorile biților de control DSV sunt determinate și sunt apoi inserați biții de control DSV într-o secvență de date la intervale arbitrare. Pentru a insera biți de control DSV între bucățile de date DATA1 și DATA2 ale unei secvențe de date, blocul de determinare/inserare a bitului de control DSV 11 calculează un DSV cumulativ pentru datele de până la DATA1. DSV-ul total este calculat prin executarea următorilor pași:
- conversia segmentului DATA1 într-un tren de biți canal;
- efectuarea modulării NRZI a trenului de biți;
- atribuirea valorii +1 pentru nivelul H (sus) (1) și a valorii -1 pentru nivelul L Gos) (0), în rezultatul modulării NRZI;
- adăugarea valorilor atribuite nivelurilor rezultate din modularea NRZI.
în același fel, blocul de determinare/inserare a bitului de control DSV 11 calculează un DSV total pentru segmentul DATA2 ce urmează segmentului DATA1. Fie x1 un bit de control DSV de introdus într-o zonă între bucățile DATA1 și DATA2. Blocul de determinare/inserare a bitului de control DSV 11 determină valoarea bitului de control DSV x1, astfel încât valoarea absolută a sumei valorilor DSV pentru DATA1, x1 și DATA2 să fie aproximativ zero.
Dacă bitul de control DSV x1 este setat la valoarea (1), codurile de nivel ale segmentului DATA2 ce urmează segmentului DATA1 sunt inversate. Dacă bitul de control DSV x1 este setat la valoarea (0), codurile de nivel ale segmentului DATA2 ce urmează segmentului DATA1 nu sunt inversate. Aceasta este deoarece în fiecare element al tabelelor de conversie din tabelele 2 și 3, restul divizării cu 2 a numărului valorilor 1 ale unui element din secvența de date, având o valoare de 0 sau 1, trebuie să fie întotdeauna egal cu restul divizării cu 2 a numărului valorilor 1 ale unui element din secvența de cuvinte cod rezultată din conversia secvenței de date.### Astfel, inserarea unui bit (1) în secvența de date trebuie să fie însoțită de inserarea valorii 1 în secvența de cuvinte cod rezultată din conversia secvenței de date, caz în care se aplică inversia.
După ce valoarea bitului de control x1, arătat în fig. 2, a fost determinată așa cum este descris mai sus, un bit de control x2 este inserat între DATAT2 si DATA3, asigurând între x1 și x2 un interval de date predeterminat, pentru a implementa controlul DSV în același fel. în acest caz, DSV-ul cumulativ este suma DSV-ului cumulativ pentrul datele de până la DATA1, valoarea DSV pentru x1 și datele DSV pentru segmentul DATA2.
Așa cum este descris mai sus, biții de control DSV sunt inserați într-o secvență de date înainte ca secvența de date să fie modulată în blocul de modulare 12 pentru a genera un tren de biți canal.
Fig. 3 este o diagramă bloc ce descrie o configurație uzuală a blocului de modulare 12. Așa cum este arătat în figură, un registru de deplasare 31 deplasează datele stocate aici cu 2 biți odată, alimentând un bloc de evaluare a lungimii impuse 32, un bloc de detecție a codului de limitare a apariției consecutive a valorii minime de rulare 33, un bloc de detecție a codului de asigurare a lungimii limită de rulare 34 și toate blocurile de conversie 35-1 la
RO 121883 Β1
35-4. Registrul de deplasare 31 alimentează atâția biți cât sunt necesari pentru procesarea 1 fiecăreia dintre componentele 32 la 35.
Blocul de evaluare a lungimii impuse 32 determină lungimea impusă i a datelor și o 3 transmite la un multiplexor 36. Când blocul de detecție a codului de limitare a apariției consecutive a valorii minime de rulare 33 detectează un cuvânt de date special supus limitării 5 aparițiilor consecutive ale numărului minim de rulări d, blocul de detecție a codului de limitare a apariției consecutive a valorii minime de rulare 33 emite către blocul de evaluare a lungimii 7 impuse 32 un semnal de detecție (i=3) ce indică lungimea impusă i. în cazul tabelului 2, cuvântul data special este (110111). în același mod, când blocul de detecție a codului de 9 asigurare a lungimii limită de rulare 34 detectează un cuvânt de date special, impunând asigurarea limitei lungimii de rulare k, blocul de detecție 34 emite un semnal de detecție 11 (i=4), indicând lungimea impusă i blocului de evaluare a lungimii impuse 32. în cazul tabelului 2, cuvântul data special este (00001000) sau (00000000). 13
Când un cuvânt data special este detectat de către blocul de detecție a codului de limitare a apariției consecutive a rulării minime 33 sau de către blocul de detecție a codului 15 de asigurare a lungimii limită de rulare 34, blocul de evaluare a lungimii impuse 32 permite trecerea lungimii impuse i a cuvântului cod special către multiplexorul 36. în același timp, 17 blocul de evaluare a lungimii impuse 32 poate de asemenea să determine o altă valoare a lungimii impuse. în acest caz, blocul de evaluare a lungimii impuse 32 permite lungimii 19 impuse, emisă de către blocul de detecție a codului de limitare a apariției consecutive a valorii minime de rulare 33 sau de către blocul de detecție a codului de asigurare a lungimii 21 limită de rulare 34, să aibă prioritate față de cea determinată de el însuși. Astfel este selectată cea mai mare lungime impusă. 23
Blocurile de conversie 35-1 la 35-4 evaluează fiecare, dacă codul de bază al datelor care le sunt furnizate este catalogat într-un tabel de conversie care este încorporat. Dacă 25 codul de bază este catalogat, data este convertită într-un cuvânt cod reprezentat prin codul de bază și cuvântul cod rezultat prin conversie este transmis la multiplexorul 36. Pe de altă 27 parte, dacă codul de bază al datei nu este catalogat în tabelul de conversie, blocurile de conversie 35-1 la 35-4 îndepărtează data. 29
Este de notat că, deoarece aparatul de modulare 12 este destinat pentru tabelul de conversie a tabelului 2, fiecare dintre blocurile de conversie 35-i este destinat să lucreze 31 pentru conversia datelor cu o lungime impusă i de până la 4. Astfel, fiecare dintre blocurile de conversie 35-i este destinat să lucreze pentru conversia datelor până la o lungime 33 maximă impusă r de 4.
Multiplexorul 36 selectează un cod rezultat din conversia realizată de unul dintre 35 blocurile de conversie 35-i corespunzătoare unei lungimi impuse i, furnizată de blocul de evaluare a lungimii impuse 32. Codul selectat este transmis apoi pe calea unui buffer 37 ca 37 date seriale. Temporizarea de funcționare a fiecărei componente este controlată în sincronizare cu semnale de temporizate generate de blocul de control al temporizării 14. 39 în continuare, este descrisă funcționarea exemplului de realizare, conform invenției.
La început, registrul de deplasare 31 transmite atâția biți de date câți sunt necesari 41 în procesare, cum ar fi formarea unei decizii în unități de 2 biți la blocul de evaluare a lungimii impuse 32, blocul de detecție a codului de limitare a apariției consecutive a valorii minime 43 de rulare 33, blocul de detecție a codului de asigurare a lungimii limită de rulare 34 și la toate blocurile de conversie 35-1 la 35-4. 45
Fiind prevăzut cu un tabel de conversie încorporat, ca acela din tabelul 2, blocul de evaluare a lungimii impuse 32 determină valoarea lungimii impuse i, prin raportare la tabelul 47 de conversie, și transmite valoarea la multiplexorul 36.
RO 121883 Β1 în blocul de detecție a codului de limitare a apariției consecutive a valorii minime de rulare 33, un cuvânt data care trebuie înlocuit prin codul de substituție pentru limitarea aparițiilor consecutive ale rulării minime d din tabelul 2, face necesară ca următorul cuvânt cod 010 să fie încorporat în cazul tabelului 2, cuvântul data este (110111). Atunci când este detectată limitarea necesară a aparițiilor consecutive ale rulajului minim d, ca rezultat al comparării cu acea parte a tabelului de conversie, blocul de detecție a codului de limitare a apariției consecutive a valorii minime de rulare 33 transmite un semnal de detecție, indicând unității de evaluare a lungimii impuse 32 că lungimea impusă este i=3.
Pe de altă parte, în blocul de detecție a codului de asigurare a lungimii limită de rulare 34, sunt incorporate cuvintele data, pentru a fi înlocuite prin coduri de substituție pentru a asigura limita lungimii de rulare din tabelul 2. în cazul tabelului 2, cuvintele data sunt (00001000) și (0000000). Când este detectată data care necesită asigurarea limitei lungimii de rulare ca rezultat al raportării la această parte a tabelului de conversie, blocul de detecție a codului de asigurare a lungimii limită de rulare 34 transmite un semnal de detecție, indicând blocului de evaluare a lungimii impuse 32 că lungimea impusă este i=4.
Atunci când primește un semnal de detecție, indicând că lungimea impusă este i=3 în cazul tabelului 2, de la blocul de detecție a codului de limitare a apariției consecutive a valorii minime de rulare 33, blocul de evaluare a lungimii impuse 32 trece mai departe valoarea i=3 la multiplexorul 36, chiar dacă, în același timp, blocul de evaluare a lungimii impuse 32 determină el însuși lungimea impusă i, și ar putea să transmită valoarea determinată automat la multiplexorul 36. Din același motiv, atunci când primește un semnal de detecție, indicând că lungimea impusă este i=4, în cazul tabelului 2, de la blocul de detecție a codului de asigurare a lungimii limită de rulare 34, blocul de evaluare a lungimii impuse 32 trece mai departe valoarea i=4 la multiplexorul 36, chiar dacă în acel timp blocul de evaluare a lungimii impuse 32 determină el însuși lungimea impusă i, el nu furnizează valoarea determinată automat la multiplexorul 36.
Aceasta înseamnă că blocul de evaluare a lungimii impuse 32 trece mai departe, la multiplexorul 36, valoarea lungimii impuse i, primită de la blocul de detecție a codului de limitare a apariției consecutive a valorii minime de rulare 33 sau de la blocul de detecție a codului de asigurare a lungimii limită de rulare 34, în loc să transmită valoarea determinată automat, dacă valoarea lungimii impuse i, determinată de blocul de detecție a codului de limitare a apariției consecutive a valorii minime de rulare 33 sau de blocul de detecție a codului de siguranță a lungimii limită de rulare 34 este diferită de valoarea determinată automat. Cu alte cuvinte, cea mai mare lungime impusă este selectată pentru a fi transmisă la multiplexorul 36.
Fig. 4 este o diagramă care exemplifică procesarea realizată de blocul de evaluare a lungimii impuse 32, blocul de detecție a codului de limitare a apariției consecutive a valorii minime de rulare 33 și blocul de detecție a codului de asigurare a lungimii limită de rulare 34, prin prezentarea unui exemplu concret.
Așa cum a fost descris anterior, în blocul de detecție a codului de asigurare a lungimii limită de rulare 34, sunt încorporate cuvintele data (00001000) și (00000000) din tabelul 2 ca o parte a funcționarii acestuia, pentru a determina valoarea lungimii impuse i. Când data de 8 biți, potrivită cu cuvântul data (00001000) sau (00000000), este transmisă la blocul de detecție a codului de asigurare a lungimii limită de rulare 34, blocul de detecție a codului de asigurare a lungimii limită de rulare 34 transmite un semnal, indicând blocului de evaluare a lungimii impuse 32 că lungimea impusă i=4.
RO 121883 Β1
Pe de altă parte, în blocul de detecție a codului de limitare a aparițiilor consecutive 1 ale valorii minime de rulare 33, este încorporat cuvântul data (110111) din tabelul 2, ca o funcție a acestuia, pentru a determina valoarea lungimii impuse i. Când o dată de 6 biți, 3 potrivită cuvântului data (110111), este transmisă la blocul de detecție a codului de limitare a apariției consecutive a valorii minime de rulare 33 și cuvântul cod de 3 biți, rezultat din 5 conversia care urmează, este cuvântul data 010, blocul de detecție a codului de limitare a apariției consecutive a valorii minime de rulare 33 transmite un semnal de detecție, 7 indicând blocului de evaluare a lungimii impuse 32 că lungimea impusă i=3. Este de reținut că cuvântul cod de 3 biți 010 este rezultatul conversiei secvenței de date având o valoare 9 de (01), (001), sau (00000) înainte de conversie. Cu alte cuvinte, funcția include o secvență de date (110111 )+(01/001/00000). Când este detectat cuvântul data de 6 biți, potrivit datei 11 (110111), data de până la 5 biți, care urmează datei de 6 biți, se compară cu cuvântul data (01) sau (001) sau (00000), pentru a se determina dacă se potrivesc unul cu celălalt. Dacă 13 data de intrare este (11011101), (11011001) sau (11011100000), blocul de detecție a codului de limitare a apariției consecutive a rulării minime 33 transmite un semnal de detecție că 15 lungimea impusă i=3, blocului de evaluare a lungimii impuse 32.
în blocul de evaluare a lungimii impuse 32, sunt încorporate secvențele de date din 17 tabelul de conversie din tabelul 2. Dacă o data de 6 biți, potrivită cuvântului data (000011), (000010), (000001) sau (000000), este transmisă la blocul de evaluare a lungimii impuse 32, 19 blocul de evaluare a lungimii impuse 32 determină că valoarea lungimii impuse i este 3. Dacă data de 4 biți, potrivită cuvântului data (0011), (0010) sau (0001), este furnizată la 21 blocul de evaluare a lungimii impuse 32, blocul de evaluare a lungimii impuse 32 determină că valoarea lungimii impuse i este 2. Dacă data de 2 biți, potrivită cuvântului data (11), (10) 23 sau (01), este transmisă la blocul de evaluare a lungimii impuse 32, blocul de evaluare a lungimii impuse 32 determină că valoarea lungimii impuse i este 1. 25
Presupunând că se transmite data de 6 biți (000010), în acest caz, blocul de evaluare a lungimii impuse 32 determină că valoarea lungimii impuse i este 3. Se presupune de 27 asemenea că data de 6 biți este urmată de 2 biți (00). Ca rezultat, o dată de 8 biți, potrivită cuvântului data (00001000), este transmisă la blocul de detecție a codului de asigurare a 29 lungimii limită de rulare 34, determinând blocul de detecție a codului de asigurare a lungimii limită de rulare 34 să transmită un semnal de detecție, indicând blocului de evaluare a 31 lungimii impuse 32 că lungimea impusă este i=4. în acest caz, blocul de evaluare a lungimii impuse 32 lasă semnalul de detecție să transmită valoarea 4 de la blocul de detecție a 33 codului de asigurare a lungimii limită de rulare 34 cu prioritate față de valoarea 3 determinată automat, decizând că lungimea impusă i are o valoare de 4. 35
Așa cum a fost descris anterior, lungimea impusă a datei conținând un tren de (1) și (0) poate fi determinată în conformitate cu tabelul de conversie din tabelul 2 prin referirea la 37 un cuvânt data de până la 8 biți transmis, corespunzând unei lungimi maxime impuse, și dacă este necesar un cuvânt cod de 3 biți. Ca o alternativă, lungimea impusă a datei 39 conținând un tren de (1) și (0) poate fi determinată prin raportarea numai la un cuvânt data transmis de până la 11 biți. 41
Blocul de evaluare a lungimii impuse 32 transmite valoarea lungimii impuse i, determinată pe această cale, la multiplexorul 36. 43
Este de notat că blocul de evaluare a lungimii impuse 32 poate de asemenea determina valoarea lungimii impuse i într-o ordine ascendentă a valorilor lui i, începând cu 45 cele mai mici, respectiv în ordinea de i=1, i=2, i=3 și i=4 spre deosebire de cea arătată în fig. 4. 47
RO 121883 Β1
Blocurile de conversie 35-1 la 35-4 au fiecare un tabel atribuit corespunzător pentru o valoare a lungimii impuse. Pentru a fi mai explicit, blocurile de conversie 35-1 la 35-4 au tabele de conversie pentru i=1, i=2, i=3 și respectiv i=4. Dacă pentru datele transmise oricăruia dintre blocurile de conversie 35-1 la 35-4 este o regulă de conversie catalogată întrun tabel de unități de conversie, datele de 2 x i biți transmise sunt transformate într-un cod de 3 x 1 biți, în concordanță cu regula de conversie catalogată. Codul rezultat este apoi transmis la multiplexorul 36.
Multiplexorul 36 selectează un cod rezultat din conversia efectuată de unul dintre blocurile de conversie 35-i, corespunzător unei lungimi impuse i, transmise de blocul de evaluare a lungimii impuse 32. Codul selectat este apoi transmis prin intermediul unui buffer 37 ca date seriale.
Așa cum este arătat în tabelul 2, pentru lungimea impusă i=3, tabelul de conversie nu include un cod de substituție pentru o secvență de date (110111) care necesită limitarea aparițiilor consecutive, repetitive, ale numărului minim de rulări d. Se presupune că se transmite următoarea secvență de date:
(1101110111011101) în acest caz, procesarea conversiei este efectuată în următoarea ordine de cuvinte data: (11), (01), (11), (01), și așa mai departe. Ca rezultat al conversiei, este generată următoarea secvență de cuvinte data (un tren de biți canal):
101 010 101 010 101 010 101 010
Apoi se aplică o modulare NRZI tipică la secvența de cuvinte cod generată cu scopul realizării codării nivelului. Deoarece inversia de logică are loc cu decalare '1' în semnal, secvența anterioară de cuvinte cod este convertită în următoarea secvență de cuvinte cod:
'110011001 100 110011' unde minimul inversiei intervalelor de 2T continuă de la începutul la sfârșitul secvenței. Când se înregistrează sau se redă la o linie de densitate înaltă, o astfel de secvență de cod devine un eșantion care poate cauza cu ușurință o eroare în operația de înregistrare sau de redare.
Se consideră că tabelul de conversie din tabelul 2 prescrie și un cod de substituție pentru secvența de date (110111) care necesită limitarea aparițiilor repetitive consecutive ale rulării minime d. Se transmite următoarea secvență de date:
(1101110111011101) în acest caz, primul cuvânt data (11011101) din secvența de date conține un cuvânt data (110111) urmat de un cuvânt data (01) care va fi convertit într-o secvență de cuvinte cod 010. Astfel, primul cuvânt data este convertit în următoarea secvență de cuvinte cod:
001 000 000 010.
Asemănător, al doilea cuvânt data (11011101) din secvența de date conține de asemenea cuvântul data (110111), urmat de cuvântul data (01) care va fi convertit în secvența de cuvinte cod 'Ό10''. Astfel, primul cuvânt data este convertit în următoarea sevcență de cuvinte cod:
001 000 000 010
Ca rezultat, secvența de date este convertită în următoarea secvență de cuvinte cod:
001 000 000 010 001 000 000 010...
în care sunt evitate aparițiile consecutive repetitive ale numărului minim de rulări d. Ca atare, este eliminat un eșantion care determină cu ușurință o eroare în operația de înregistrare sau de redare la o densitate de linie înaltă. Este de notat că în conversia secvenței de date în secvența de cuvinte cod descrisă anterior, valorile respective ale numărului minim de rulări d și ale numărului maxim de rulări k sunt păstrate.
RO 121883 Β1
Așa cum a fost descris anterior, conversia realizată de aparatul de modulare 1 este 1 bazată pe tabelul de conversie din tabelul 2. Este de notat că se poate realiza de asemenea conversia prin folosirea unui tabel de conversie din tabelul 3. în acest caz, blocul de detecție 3 a codului de limitare a apariției consecutive a valorii minime de rulare 33, folosit în unitatea de modulare 12, arătată în fig. 3, este prevăzut cu tabelul C pentru lungimea impusă i=4 din 5 tabelul 3. Pe de altă parte, blocul de detecție a codului de asigurare a lungimii limită de rulare 34 este prevăzut cu tabelul A pentru lungimea impusă i=2, tabelul B pentru lungimea impusă 7 i=3, și tabelul C pentru lungimea impusă i=4 din tabelul 3.
în tabelele 2 și 3, componența fiecărei perechi conținând o secvență de date și o 9 secvență de cuvinte cod, dintr-o grupă a aceleiași lungimi impuse, poate fi schimbată. De exemplu, în cazul grupului de lungime impusă i=1 din tabelul 2, componenta fiecărei perechi 11 inițiale este arătată mai jos:
---------------------------- 13 Date Cod i=1 11 *0*15
10001
01017
Componența perechii poate fi schimbată după cum urmează:
Date Cod23 i=1 11 *0*
01025
001
--------------------------- 27
Chiar și cu o componență schimbată a perechii, restul divizării la 2 a numărului 29 valorilor 1, ale unui element al secvenței de date având o valoare de 0 sau 1, este totdeauna egal cu restul divizării cu 2 al numărului valorilor 1 ale unui element din secvența 31 de cuvinte cod rezultată din conversia secvenței de date.
în continuare, este explicat un exemplu de realizare a unui aparat de demodulare, 33 furnizat de prezenta invenție, cu referire la fig. 5. în prezentul exemplu, un cod de lungime variabilă (d, k; m, n; r)=(1,7; 2, 3; 4) este demodulat într-o secvență de date, folosind tabelul 35
2.
Așa cum este arătat în fig. 5, aparatul de demodulare 100 conține o unitate de 37 demodulare 111, pentru demodularea unui semnal primit de la o linie de transmisie sau a unui semnal redat de pe un mediu de înregistrare, prin utilizarea unui tabel de demodulare 39 sau a unui tabel de conversie inversă și a unui bloc 112 pentru preluarea biților de control DSV, inserați într-o secvență de date, la intervale arbitrare, din secvența de date rezultată 41 din demodulare, cu scopul reconstituirii secvenței de date originale. Pentru stocarea temporară a datelor seriale generate de blocul 112, este folosit un buffer 113. Data stocată 43 în bufferul 113 este citită ulterior la o rată de transfer predeterminată, pentru a produce un semnal de ieșire. Un bloc de control al temporizării 114 generează semnale de temporizare 45 și transferă semnalele la o varietate de componente, pentru a controla temporizarea operațiilor acestora. 47
RO 121883 Β1
Fig. 6 este o diagramă bloc care prezintă configurația blocului de demodulare 111. Așa cum este arătat în figură, blocul de demodulare 111 are un comparator 121 pentru convertirea unui semnal primit de la o linie de transmisie sau un semnal redat de pe un mediu de înregistrare, într-o dată binară. Dacă semnalul transmis la comparatorul 121 este un semnal care a finalizat modularea NRZI (adică codare de nivel), semnalul parcurge un proces de codare inversă NRZI (adică un proces de codare de front). Un bloc de evaluare a lungimii impuse 122 determină lungimea impusă i a unui semnal digital primit de la comparatorul 121. Când blocul de detecție a codului de limitare a apariției consecutive a valorii minime de rulare 123 detectează un cod special pentru limitarea aparițiilor consecutive ale numărului minim de rulări d în semnalul digital generat de comparatorul 121, blocul de detecție a codului de limitare a apariției consecutive a valorii minime de rulare 123 transmite un semnal de detecție a acestuia (i=3), indicând valoarea impusă i blocului de evaluare a lungimii impuse 122. în cazul tabelului 2, codul special este 001 000 000. în același mod, atunci când un bloc de detecție a codului de asigurare a lungimii limită de rulare 124 detectează un cod special pentru asigurarea numărului maxim de rulări k, blocul de detecție a codului de asigurare a lungimii limită de rulare 124 transmite un semnal de detecție a acestuia (i=4), indicând lungimea impusă i blocului de evaluare a lungimii impuse 122. în cazul tabelului 2, codul special este 000 100 100 100 sau 010 100 100 100.
Blocurile de conversie inversă 125-1 la 125-4 au fiecare un tabel, utilizat pentru conversia inversă a codului de lungime variabilă n x i - bit înapoi în date m x i - bit. în cazul tabelului 2, blocurile de conversie inversă 125-1 la 125-4 au tabele de conversie inversă pentru lungimea impusă i=1 la 4 respectiv, care sunt în esență aceleași cu tabelele de conversie încorporate în blocurile 35-1 la 35-4 descrise anterior. Un multiplexor 126 selectează una dintre ieșirile generate de blocurile de conversie inversă 125-1 la 125-4 în funcție de rezultatul evaluării primit de la blocul de evaluare a lungimii impuse 122.
în continuare, este explicată operarea blocului de demodulare 111, arătat în fig. 6. Un semnal primit de la o linie de transmisie sau un semnal redat de pe un mediu de înregistrare este transmis la comparatorul 121, pentru a fi comparat. Un semnal emis de comparatorul 121 este un semnal digital de cod NRZI invers, adică, cod cu 1, indicând un front. Semnalul digital este apoi transmis la blocul de evaluare a lungimii impuse 122, pentru determinarea lungimii impuse i a semnalului, prin folosirea tabelului de conversie (mai exact, tabelul de conversie inversă) al tabelului 2. Rezultatul evaluării care este o valoare a lungimii impuse i, produs de blocul de evaluare a lungimii impuse 122, este transmis la multiplexorul 126.
în plus, semnalul digital furnizat de comparatorul 121 este transmis de asemenea la blocul de detecție a codului de limitare a apariției consecutive a valorii minime de rulare 123. Blocul de detecție a codului de limitare a apariției consecutive a valorii minime de rulare 123 are încorporat o porțiune de conversie inversă, incluzând un cod de substituție a tabelului de inversie din tabelul 2, pentru limitarea numărului minim de rulări d. în cazul tabelului 2, codul de substituție este cuvântul cod 001 000 000. Atunci când un cod 001 000 000 not 100, catalogat în tabelul de conversie inversă, pentru limitarea aparițiilor consecutive a numărului minim de rulări d, este detectat din datele digitale, blocul de detecție a codului de limitare a apariției consecutive a valorii minime de rulare 123 transmite lungimea impusă i=3 la blocul de evaluare a lungimii impuse 122.
în plus, semnalul digital emis de comparatorul 121 este transmis de asemenea la blocul de detecție a codului de asigurare a lungimii limită de rulare 124. Blocul de detecție a codului de asigurare a lungimii limită de rulare 124 are încorporată o porțiune de conversie
RO 121883 Β1 inversă, incluzând coduri de substituție ale tabelului de inversie din tabelul 2, pentru 1 menținerea numărului maxim de rulări k. în cazul tabelului 2, codurile de substituție sunt cuvintele cod 000100100100 și 010100100100. Când cuvântul cod 000100100100 3 sau 010100100100, catalogat în tabelul de convesie inversă, pentru păstrarea numărului maxim de rulări k, este detectat din datele digitale, blocul de detecție a codului de asigurare 5 a lungimii limită de rulare 124 transmite lungimea impusă i=4 la blocul de evaluare a lungimii impuse 122. 7
Fig. 7 este o diagramă care arată în rezumat procesarea efectuată pentru determinarea lungimii impuse i a unui cod modulat transmis la aparatul de demodulare 100. Așa 9 cum este arătat în figură, blocul de detecție a codului de asigurare a lungimii limită de rulare 124 are încorporat o porțiune de conversie inversă, care include cuvintele cod 'Ό00100100 11
100 și 010 100 100 100 ale tabelului de inversie din tabelul 2. Atunci când o secvență de 12 biți de cuvinte cod, transmisă la blocul de detecție a codului de asigurare a lungimii limită 13 de rulare 124, se potrivește oricăruia dintre cuvintele cod din porțiunea de conversie inversă, blocul de detecție a codului de asigurare a lungimii limită de rulare 124 transmite lungimea 15 impusă i=4 la blocul de evaluare a lungimii impuse 122.
Asemănător, blocul de detecție a codului de limitare a apariției consecutive a valorii 17 minime de rulare 123 are încorporată o porțiune de conversie inversă, care include cuvintele cod 001 000 000 ale tabelului de inversie din tabelul 2. Atunci când o secvența de cuvinte 19 cod de 12 biți, transmisă la blocul de detecție a codului de limitare a apariției consecutive a valorii minime de rulare 123, se potrivește cu ”001 000 000 not 100, blocul de detecție a 21 codului de limitare a apariției consecutive a valorii minime de rulare 123 transmite lungimea impusă i=3 la blocul de evaluare a lungimii impuse 122. Este de notat că cei 12 biți din 23 secvența cuvintelor cod sunt în realitate 001 000 000 010, chiar dacă nu au nimic în comun cu determinarea lungimii impuse în particular. 25
Blocul de evaluare a lungimii impuse 122 are încorporat un tabel de conversie inversă din tabelul 2. Dacă secvența de cuvinte cod de 9 biți, transmisă la blocul de evaluare a 27 lungimii impuse 122, este 000 100 100 sau 010 100 100, sau dacă o secvență de cuvinte cod de 12 biți, transmisă acestuia, este 000 100 000 not 100 sau 010 100 000 not 100, 29 blocul de evaluare a lungimii impuse 122 determină că lungimea impusă i este 3. Pe de altă parte, dacă secvența de 6 biți a cuvintelor cod transmise la blocul de evaluare a lungimii 31 impuse 122 este 010 100 sau 000 100, sau dacă secvența de 9 biți a cuvintelor cod transmise acestuia i este 010 000 not 100, blocul de evaluare a lungimii impuse 122 33 determină că lungimea i impusă este 2. în caz contrar, dacă secvența de 3 biți a cuvintelor cod transmise la blocul de evaluare a lungimii impuse 122 este 000, 101, 001 sau 010, 35 blocul de evaluare a lungimii impuse 122 determină că lungimea i impusă este 1.
Este de notat că blocul de evaluare a lungimii impuse 122, blocul de detecție a 37 codului de limitare a apariției consecutive a valorii minime de rulare 123 și blocul de detecție a codului de asigurare a lungimii limită de rulare 124 pot de asemenea să realizeze fiecare 39 procesarea în ordinea crescătoare a valorilor lui i, începând cu cea mai mică, adică, în ordinea i=1, i=2, i=3, și i=4, în mod opus celui prezentat în fig. 7. 41
Se consideră că blocul de evaluare a lungimii impuse 122 poate determina de asemenea valoarea lungimii impuse i în ordinea i=2, i=3 și i=4 și la blocul de evaluare a 43 lungimii impuse 122 este transmisă o secvență de cuvinte cod 000 100100100. Blocul de evaluare a lungimii impuse 122 compară secvențele de cuvinte cod transmise cu cuvintele 45 cod din tabelul de conversie încorporat, în ordinea crescătoare a valorilor lungimii impuse i, începând cu cel mai mic, pentru a decide dacă secvența de cuvinte cod se potrivește cu 47
RO 121883 Β1 cuvintele cod. Secvența de cuvinte cod 000 100 100 100 transmisă la blocul de evaluare a lungimii impuse 122 se potrivește cu unul dintre cuvintele cod pentru toate lungimile impuse i=1, i=2, i=3 și i=4. într-un astfel de caz, ca regulă de determinare, este selectată cea mai mare lungime impusă și este transmisă la multiplexorul 126.
Tabelul de conversie inversă a blocului de conversie inversă 125-1 este implementat ca o memorie în care o parte a datei (11) este stocată la adresele 101 și 000, în timp ce părțile de date (10) și (01) sunt stocate la adresele 001 și respectiv 010. Tabelele de conversie inversă, ale blocurilor de conversie inversă 125-2 și 125-4, sunt implementate fiecare ca o memorie pentru stocarea datelor în același mod ca blocul de conversie inversă 125-1. O secvență de cuvinte cod de 3 X i biți, transmisă la blocul de conversie inversă 125, este convertită înapoi într-o secvență de date de 2 X i biți, care este apoi transmisă la multiplexorul 126. Multiplexorul 126 selectează una dintre secvențele de date transmise de blocurile de conversie inversă 125-1 la 125-4 în concordanță cu rezultatul determinării valorii lungimii impuse i, emisă de blocul de evaluare a lungimii impuse 122.
Tabelul 4 este tabelul de conversie inversă pentru tabelul 2.
Tabelul 4
Tabel Conversie inversă (1, 7;2, 3; 4)
Secvența cuvinte cod Secvența date demodulate i=1 101 11
000 11
001 10
010 01 i=2 010 100
0011
010 000 (not 100) 0010
000 100
0001 i=3 000 100 100 000011
000 100 000(not100) 000010
010 100 100 000001
010 100 000 (not100) 000000 i=3: Lungimea de rulare a tranziției minime interzise
001 000 000 (not 100) 110111 i=4 Limitează k la 7
000 100 100 100 00001000
010 100 100 100 00000000
Fig. 8 este o diagramă folosită ca referință pentru explicarea operațiilor realizate de blocul de eliminare a bitului de control DSV112. Blocul de eliminare a bitului de control DSV 112 este prevăzut cu un contor intern. Așa cum este arătat în figură, diagrama începe cu o etapă S1, în care numărul de biți dintr-o secvență de date transmisă de unitatea de demodulare 111 este numărat de către contorul intern. Fluxul de procesare se continuă cu etapa S2, pentru a decide dacă numărul de biți a atins sau nu valoarea reprezentând un
RO 121883 Β1 interval de date predeterminat la care este inserat un bit de control DSV. Dacă rezultatul 1 evaluării indică că numărul de biți nu corespunde intervalului de date arbitrar, fluxul de procesare trece la etapa S3, în care data furnizată de unitatea de demodulare 111 este 3 transmisă la bufferul 113 ca atare. Pe de altă parte, dacă rezultatul evaluării indică faptul că numărul de biți corespunde intervalului de date predeterminat, indicând că bitul curent este 5 un bit de control DSV, procesarea din etapa S3 este omisă. Astfel, în acest caz, bitul curent din secvența de date este șters în loc să fie transmis la bufferul 113. 7 în oricare dintre cazuri, fluxul de procesare trece la o etapă S4, în care este efectuată procesarea de intrare a următoarei secvențe de date. Fluxul de procesare continuă apoi cu 9 etapa S5, pentru a decide dacă procesarea tuturor datelor este terminată. Dacă există date rămase pentru procesare, fluxul de procesare se întoarce la etapa S1, pentru a repeta 11 execuția procesării. Pe de altă parte, dacă rezultatul evaluării făcute în etapa S5 indică faptul că toate datele au fost procesate, procesarea este terminată. 13
Ca rezultat, biții de control DSV sunt îndepărtați din datele care ies din blocul de eliminare a bitului de control DSV 112. Data este apoi furnizată la ieșire, prin intermediul unui 15 buffer113.
în conformitate cu descrierea anterioară, blocul de demodulare 111 folosește tabelul 17 de conversie din tabelul 2, sau mai exact, tabelul de conversie inversă din tabelul 4. Este de notat că poate fi efectuată o procesare similară, prin folosirea conversiei din tabelul 3 sau, 19 mai exact tabelul de conversie inversă din tabelul 5 redat mai jos. în acest caz, blocul de detecție a codului de limitare a apariției consecutive a valorii minime de rulare 123, folosit în 21 unitatea de modulare 111, arătat în fig. 6, este prevăzut cu tabelul C pentru lungimea impusă i=4 din tabelul 3. Pe de altă parte, blocul de detecție a codului de asigurare a lungimii 23 limită de rulare 124 este prevăzut cu tabelul A pentru lungimea impusă i=2, tabelul B pentru lungimea impusă i=3 și tabelul D pentru lungimea impusă i=4 din tabelul 3.25
Tabelul 527
Tabel Conversie inversă (1,7; 2,3; 4)29
Secvența Cuvânt Cod Secvența Date Demodulate
r=1 Tabelul principal
101 0033
10001
001 1035
00011 r=2 Tabelul de substituție A (Limitează d la 1)37
100 0100000
101 010 000139
000 0101000
001 010 100141 r=3 Tabelul de substituție B (Limitează k la 8)
000 010 010 11111143
001 010010 111110
101 010010 01111045
100010010 011111
RO 121883 Β1
Tabelul 5 (continuare) r=4 Tabelul de Substituție C (Limitează RMTR la 6)
100 010010010 100 000 010 010 000 010 010 010 | 00010001 10010001 10010001 |
r=4 Tabelul de Substituție D (Limitează k la 7)
000 001 010 010 100 001 010 010 001 010 010 010 101 010010010 | 11100000 11100010 11100001 11100011 |
Sunt cazuri în care este necesară inserarea unui semnal de sincronizare (Sync) în date. în continuare, sunt descrise, cu referire la fig. 9 și respectiv 10, exemple de realizare conform invenției, care implementează un aparat de modulare 1 și un aparat de demodulare 100, care sunt capabile să copieze datele cu semnale de sincronizare inserate. De asemenea, în cazul acestor exemple, este modulată o secvență de date într-un cod cu lungime variabilă (d, k; m, n; r)=(1, 7; 2, 3; 4).
într-un alt aparat de modulare din invenția de față, arătat în fig. 9, în care semnalele de sincronizare sunt inserate la intervale predeterminate, ieșirea dintr-un bloc de determinare/inserare a semnalului de control DSV11 este transmisă la blocul de determinare a semnalului de sincronizare 211. De asemenea, la blocul de determinare a semnalului de sincronizare 211, este transmisă ieșirea din blocul de modulare 12. Atunci când blocul de determinare a semnalului de sincronizare 211 determină un semnal de sincronizare din semnalele transmise de blocul de determinare/inserare a semnalului de control DSV 11 și blocul de modulare 12, blocul de determinare a semnalului de sincronizare 211 transmite un semnal de sincronizare la blocul de inserare a semnalului de sincronizare 212. Blocul de inserare a semnalului de sincronizare 212 inserează semnalul de sincronizare, transmis de blocul de determinare a semnalului de sincronizare 211, în semnalul modulat transmis de blocul de modulare 12 și semnalul de la ieșirea acestuia este transmis la blocul de codare NRZ113. Restul configurației este aceeași ca în aparatul demodulare 1 arătat în fig. 1.
în cazul unui eșantion de cuvânt cod de 24 biți, pentru a servi ca semnal de sincronizare, semnalul de sincronizare este convertit de blocul de determinare a semnalului de sincronizare 211, în conformitate cu tabelul 2, în următorul cod:
”#01 001 000 000 001 000 000 001 în care simbolul # reprezintă un bit care este dependent de secvența de date imediat precedentă, incluzând un bit de control DSV, dacă există, delimitat de inserarea semnalului de sincronizare. Mai exact, atunci când se folosește un tabel terminație pentru terminație întro operație pentru a modula secvența de date delimitată prin utilizarea tabelului de conversie, # = 1. Pe de altă parte, atunci când tabelul 2 este folosit pentru terminație în locul tabelului terminație, # = 0. Astfel, blocul de modulare 12 transmite un # = 1 la blocul de determinare a semnalului de sincronizare 211, atunci când se folosește tabelul de terminație sau # = 0, atunci când nu se folosește tabelul. Primind valoarea lui #” de la blocul de modulație 12, blocul de determinare a semnalului de sincronizare 211 anexează valoarea # la începutul semnalului de sincronizare și apoi transmite semnalul de sincronizare la blocul de inserare a semnalului de sincronizare 212.
RO 121883 Β1
Blocul de inserare a semnalului de sincronizare 212 inserează semnalul de 1 sincronizare transmis de blocul de determinare a semnalului de sincronizare 211 într-un semnal modulat transmis de unitatea de modulare 12 și transmite ieșirea acestuia la blocul 3 de codare NRZ113. Restul procesării este același ca și în aparatul de modulare 1 din fig.
1. 5
Prima dată care urmează după semnalul de sincronizare inserat este convertită, începând cu începutul acesteia, fără a considera datele imediat precedente semnalului de 7 sincronizare. Blocul de modulare 12 și blocul de determinare a semnalului de sincronizare 211 sunt fiecare prevăzute cu un contor pentru contorizarea numărului de intervale 9 predeterminate la care sunt înserate semnalele de sincronizare. Conținuturile contorului sunt folosite pentru a determina poziția semnalelor de sincronizare. 11
Așa cum a fost descris anterior, în exemplul de realizare din prezenta invenție, arătat în fig. 9, se folosește tabelul de conversie din tabelul 2. Este de notat că tabelul de 13 conversie din tabelul 3 poate fi de asemenea utilizat. în acest caz, blocul de determinare a semnalului de sincronizare 211 adoptă un cuvânt cod de 12 biți, dat mai jos ca un eșantion 15 al semnalului de sincronizare:
xxO 100 000 000 10x 17 în care simbolul x reprezintă un bit care este dependent de secvențele de date imediat precedente și imediat următoare, incluzând un bit de control DSV dacă există, delimitat de 19 inserția semnalului de sincronizare. Cei 3 biți de la început și cei 3 biți de la coada semnalului de sincronizare sunt determinați de tabelul 3, după cum urmează. Fie (p) ultima 21 secvență de date delimitată de inserția semnalului de sincronizare și fie (q) prima secvență de date imediat următoare semnalului de sincronizare. O secvență de date (p) este 23 convertită în cei 3 biți de la începutul semnalului de sincronizare, în timp ce o secvență de date (Oq) este convertită în cei 3 biți de la coada semnalului de sincronizare prin folosirea 25 tabelului 3. Din conversia sandvici a 3 biți de la început și 3 biți de la coadă, rezultă biții mediani 100 000 000, pentru a produce eșantionul. Făcând astfel, poate fi generat un 27 semnal de sincronizare care nu respectă restricția numărului maxim de rulări k, dar îl păstrează întotdeauna la k=8 (9T). 29
Fig. 10 este o schemă bloc care reprezintă o configurație tipică a unui exemplu de realizare a prezentei invenții, care implementează un alt aparat de demodulare 100 pentru 31 demodularea codului rezultat din modularea realizată de aparatul de modulare 1 arătat în fig. 9. Așa cum este arătat în fig. 10 în prezentul exemplu, un semnal de intrare transmis 33 printr-o cale de transmisie predeterminată este furnizat unui bloc de demodulare 111 și unui bloc de identificare a semnalului de sincronizare 221. Blocul de identificare a semnalului de 35 sincronizare 221 folosește semnalul de intrare și un semnal primit de la blocul de demodulare 111, pentru a identifica semnalul de sincronizare, transmițând semnalul de 37 sincronizare la un bloc de eliminare a semnalului de sincronizare 222. Blocul de eliminare a semnalului de sincronizare 222 îndepărtează semnalul de sincronizare din semnalul 39 demodulat transmis de blocul de demodulare 111, în concordanță cu semnalul emis de blocul de identificare a semnalului de sincronizare 221. Semnalul demodulat, împreună cu 41 semnalele sale de sincronizare îndepărtate, este apoi transmis la blocul de eliminare a bitului de control DSV 112. Restul configurației este aceeași ca în aparatul de demodulare 100 43 prezentat în fig. 5.
Blocul de identificare a semnalului de sincronizare 221 are încorporat un contor 45 pentru contorizarea numărului de cuvinte cod. Conținutul contorului este folosit pentru determinarea poziției fiecăruia dintre semnalele de sincronizare care sunt inserate la 47
RO 121883 Β1 intervale predeterminate în secvența de cuvinte date. După ce este identificată poziția eșantionului de semnal de sincronizare, este citit bitul determinat la modulare. Astfel, bitul de la începutul semnalului de sincronizare este citit și transmis la blocul de demodulare 111. Dacă bitul de început este 1, blocul de demodulare 111 folosește tabelul terminație din tabelul 2 în demodularea unui cod ce precede imediat semnalul de sincronizare. Pe de altă parte, dacă bitul de început este 0, blocul de demodulare 111 folosește un tabel de conversie a codurilor din tabelul 2 în demodularea codului precedând imediat semnalul de sincronizare. Biții rămași din semnalul de sincronizare sunt eliminați, deoarece nu transportă informație.
Blocul de identificare a semnalului de sincronizare 221 transmite un semnal de identificare pentru identificarea biților componenți ai semnalului de sincronizare la blocul de eliminare a semnalului de sincronizare 222. Blocul de eliminare a semnalului de sincronizare 222 elimină semnalul de sincronizare din semnalul demodulat transmis de blocul de demodulare 111, în conformitate cu semnalul de identificare transmis de blocul de identificare a semnalului de sincronizare 221. Semnalul demodulat împreună cu semnalele sale de sincronizare eliminate sunt transmise la blocul de eliminare a bitului de control DSV 112.
Așa cum a fost descris anterior, aparatul de demodulare arătat în fig. 10 folosește tabelul de conversie 2. Este de reținut că poate fi utilizat la fel de bine și tabelul 3. în acest caz, de exemplu, blocul de identificare a semnalului de sincronizare 221 folosește conținutul contorului, pentru a determina poziția fiecăruia dintre semnalele de sincronizare care sunt inserate în secvența de cuvinte data la intervale predeterminate. După ce a fost determinată poziția unui eșantion de semnal de sincronizare, blocul de identificare a semnalului de sincronizare 221 transmite semnale care specifică cuvintele cod de 3 biți de la începutul și de la coada eșantionului semnalului de sincronizare, la blocul de demodulare 111, pentru a indica blocului de demodulare 111 că aceste cuvinte cod trebuie de asemenea demodulate, deoarece includ fiecare o secvență de date.
Blocul de identificare a semnalului de sincronizare 221 transmite un semnal, specificând biții eșantionului unic al semnalului de sincronizare, excluzând cuvintele cod care includ secvența de date, la blocul de eliminare a semnalului de sincronizare 222. Astfel, blocul de eliminare a semnalului de sincronizare 222 este capabil să elimine numai biții semnalului de sincronizare, adică biții eșantionului unic, specificați de semnalul primit de la blocul de identificare a semnalului de sincronizare 221.
Fig. 11 este o diagramă, care arată un exemplu de cod pentru înregistrare cu semnale de sincronizare și biți de control DSV inserați în acesta. în acest exemplu, un cuvânt cod de 24 de biți este folosit ca semnal de sincronizare. Controlul DSV este executat la intervale de 56 de biți de date și un semnal de sincronizare este inserat pentru fiecare 5 execuții ale controlului DSV. Astfel, numărul de cuvinte cod, adică numărul de biți canal pe fiecare semnal de sincronizare este:
+ (1 + 56 + 1 +56+1 +56+1 + 56 +1 +56+1) x1,5 = 453 cuvinte cod (biți canal).
Redundanța relativă introdusă în cuvintele data este de aproximativ 7,3%, așa cum este evident din următorul calcul:
Cantitatea de date = (56 x 5) 1,5/453 = 420/453 = 0,927 Astfel, redundanța relativă = 1 -0,927 = 0,0728 = 7,3%
Inventatorii și câteva alte persoane rulează simulări, folosind tabelele de conversie descrise anterior, pentru a obține rezultatele modulării. în continuare, sunt descrise rezultatele modulării secvenței de date, incluzând biți de control DSV inserați cu apariții
RO 121883 Β1 consecutive ale T min limitate. în simulare se folosesc tabelele 2 și 3. A fost de asemenea 1 rulată, pentru comparație, o simulare, folosind tabelul 1 pentru modulare convențională RLL (1-7). . 3 în simulare, controlul DSV a fost executat prin inserarea unui bit de control DSV pentru fiecare 56 biți de date ale unor date aleatoare, cuprinzând 13107200 de biți, făcute 5 arbitrar și datele au fost apoi convertite într-o secvență de cuvinte cod (sau un tren de biți canal), prin folosirea tabelului de conversie din tabelul 2 sau 3. într-o altă simulare, date 7 aleatoare, cuprinzând 13107200 de biți, făcute arbitrar, au fost convertite într-o secvență de cuvinte cod (sau un tren de biți canal), prin folosirea tabelului de conversie cod din tabelele 9 1 și 2, au fost apoi inserați biți canal ca biți de control DSV pentru fiecare 112 cuvinte cod sau 112 biți canal ale secvenței de cuvinte cod rezultate, pentru a executa controlul DSV. 11 Motivul pentru care, în simularea care folosește tabelul 2 sau 3, a fost inserat 1 bit de control DSV, pentru fiecare 56 biți de date, în timp ce, în simularea folosind tabelul 1, au 13 fost inserați 2 biți de control DSV, pentru fiecare 112 cuvinte cod, este pentru ca redundanța relativă determinată de biții de control DSV să fie făcută uniform pentru ambele simulări. 15 Dacă numărul de biți necesari pentru controlul DSV, în unul dintre cazuri, este diferit de cel din celălalt caz și redundanța relativă trebuie să fie făcută uniformă pentru ambele cazuri, 17 tabelul 2 sau 3, care permit ca controlul DSV să fie executat cu un grad de eficiență ridicat, furnizează o caracteristică de bandă joasă bună comparativ cu tabelul 1. 19
Valorile numerice ale rezultatelor simulării sunt evaluate computerizat după cum urmează:21
Ren_cnt_[1 la 101: apariția rezultatelor de la o singură rulare minimă la 10 rulări minime consecutive23
T_size [2 la 10] Apariția rezultatelor de la rulare 2T la rulare 10T.
Suma: Numărul de biți25
Total: Numărul lungimilor de rulare, adică numărul total de apariții ale numerelor de rulare 2T, rulare 3T etc.27
Rulare medie: (Suma/Total)
Valorile numerice ale distribuției de rulare: (T_size[iJ* (i)/Sum) în care i = 2, 3, 4,...10.29
Valorile numerice din rândurile 2T la 10T din tabelul 6 sunt valorile numerice ale distribuției de rulare.31
Valorile numerice ale distribuției numărului minim de rulări consecutive: (Ren_cnt[i]* (i))/T_size[2TJ în care i = 1,2, 3, 4,...10.33
Valorile numerice din rândurile RMTR (1) la RMTR (9) din tabelul 6 sunt valorile numerice de distribuție ale numărului minim de rulări consecutive.35
Max_RMTR: Numărul maxim al repetărilor picului DSV al numărului minim de rulări:
Picuri ale valorilor DSV calculate pe părțile pozitive și negative, observate în procesul de 37 executare a controlului DSV pe un tren de biți canal.
Calcularea redundanței relative, determinată de inserarea a 1 bit DSV pentru fiecare 39 56 de biți de date, este bazată pe faptul că există un bit DSV pentru fiecare 56 biți de date. Astfel, redundența relativă este calculată după cum urmează: 41
Redundanța relativă = 1/(1+56) = 1,75%.
Calcularea redundanței relative, determinată de inserarea a 2 biți DSV pentru fiecare 43 112 biți cod, este bazată pe faptul că există 2 biți DSV pentru fiecare 112 biți de cuvânt cod. Astfel, redundanța relativă este calculată după cum urmează: 45
Redundanța relativă = 2/(2+112) = 1,75%.
Astfel, în ambele cazuri, se obține aceeași redundanță. 47
RO 121883 Β1
Tabelul 6
Comparație PP17 «Tabelul 2> «Tabelul 3> «Tabelul 1>
17PP-32 17PP-52 +2 bit-DC Fără-DCC (control DSV) Fără control DSV)
Medie | ||||
Rulare | 3.3665 | 3,4048 | 3,3061 | 3,2868 |
Suma | 20011947 | 20011947 | 20011788 | 19660782 |
Total | 5944349 | 5877654 | 6061150 | 5981807 |
2T | 0,2256 | 0,2246 | 0,2417 | 0,1491 |
3T | 0,2217 | 0,2069 | 0,2234 | 0,2281 |
4T | 0,1948 | 0,1935 | 0,1902 | 0,1915 |
5T | 0,1499 | 0,1491 | 0,1502 | 0,1511 |
6T | 0,1109 | 0,1904 | 0,1135 | 0,1141 |
7T | 0,0579 | 0,0814 | 0,0561 | 0,0544 |
8T | 0,0392 | 0,0351 | 0,0218 | 0,0188 |
9T | 0,0023 | — | ||
10T | 0,0009 | — | ||
RMTR(I) | 0,3837 | 0,3890 | 0,3628 | 0,3641 |
RMTR(2) | 0,3107 | 0,3137 | 0,2884 | 0,2883 |
RMTR(3) | 0,1738 | 0,1906 | 0,1717 | 0,1716 |
RMTR(4) | 0,0938 | 0,0806 | 0,0909 | 0,0907 |
RMTR(5) | 0,0299 | 0,0228 | 0,0456 | 0,0452 |
RMTR(6) | 0,0081 | 0,0033 | 0,0219 | 0,0217 |
RMTR(7) | 0,0100 | 0,0099 | ||
RMTR(8) | 0,0047 | 0,0046 | ||
RMTR(9) | 0,0022 | 0,0022 | ||
Max_RMTR | 6 6 | 18 18 | ||
Pic DSV | # - 36 la 36 | # - 35 la 40* | *- 46 la 43* | -1783 la 3433 |
56 biți date + 1 dc bit, 1,75%) ( | 112 cbiti + 2 dc biți, 1,75%) |
Rezultatele date anterior verifică faptul că prin folosirea tabelelor 2 și 3 este implementat sistemul RLL(1,7) și totodată, numărul minim și maxim de rulări sunt păstrate și numărul de apariții consecutive ale numărului minim de rulări este limitat la 6. în plus, rezultatele DSV-urilor verifică faptul că controlul DSV poate fi executat într-o secvență de date (adică valorile picurilor DSV sunt conținute într-un domeniu predeterminat) și, în acest caz, deoarece eficiența biților de control DSV este ridicată, este posibil să se obțină componente de bandă joasă, care sunt mai satisfăcătoare decât metodele convenționale de inserare a biților DSV într-o secvență de cuvinte cod (un tren de biți canal). Rezultatele DSV verifică faptul că, în cazul tabelului 1, diferența dintre picul DSV pozitiv și negativ este 89(=46+43), în timp ce în cazul tabelelor 2 și 3 diferențele sunt 72(= 36 + 36) și 75(= 35 + 40), care sunt ambele mai mici decât valoarea din tabelul 1.
Este evident din descrierea anterioară că, în comparație cu sistemul convențional RLL(1-7), adică sistemul bazat pe tabelul 1, sistemul denumit 17PP, folosind tabelul 2 sau 3, este capabil să limiteze repetiția numărului minim de rulări, la cel mult 6. Ca rezultat, este de așteptat o ameliorare a caracteristicii de eroare la densitate mare de linie.
RO 121883 Β1 în plus, deoarece eficiența controlului DSV este excelentă, execuția controlului DSV în sistemul 17PP, la aceeași redundanțaă relativă 1,75% ca în sistemul convențional RLL(17), are ca rezultat o diferență mai mică între valorile de pic negative și pozitive. Ca rezultat, deoarece componentele de bandă joasă pot fi suprimate, pot fi efectuate operații stabile de înregistrare/redare.
Mai mult, a fost de asemenea rulată o simulare pentru a examina propagarea erorii de demodulare determinate de o deplasare de bit într-un tren de biți canal, generați din aceleași date aleatoare ca în cazul descris anterior. Un rezultat al examinării indică faptul că cea mai gravă propagare de eroare în sistemul 17PP este 3 biți. Totuși, rezultatul verifică de asemenea faptul că frecvența actuală a generării de eroare este oricare în afară de 0, o valoare indicând o deteriorare nu atât de mare față de cazul sistemului convențional RLL(17). Au fost verificate ratele erorii medii de bit de 1,014 biți pentru tabelul 1,1,1167 biți pentru tabelul 2 și 1,174 biți pentru tabelul 3. Este de reținut că pentru tabelele de conversie furnizate de prezenta invenție, valorile numerice ale rezultatelor ratei de eroare includ biți de control DSV, dar pentru sistemul convențional RLL(1-7), valorile numerice nu includ biți de control DSV. Astfel, nu se poate afirma cu certitudine că măsurătorile ar fi fost făcute în aceleași condiții. Diferența între condițiile de măsurare poate afecta valorile numerice, și astfel este necesar pentru comparație să se ia în considerare efectul diferenței între valori.
Tabelul 7
Răspunsuri Eroare Deplasare
«Tabelul 2> | «Tabelul 3> | «Tabelul 1> | |
17PP-32 | 17PP-52 | +2bit-DC | |
Cazul cel mai rău | 3 biți | 3 biți | 2 biți |
(biți dc) | Incluși | Incluși | Excluși |
Eroare bit (0) | 0,028 | 0,096 | 0,080 |
Eroare bit (1) | 0,777 | 0,0635 | 0,826 |
Eroare bit (2) | 0,195 | 0,268 | 0,094 |
Eroare bit (3) | 0,000 | 0,001 | |
Medie Rata erorii de bit | 1,167 biți | 1,174 biți | 1,014 biți |
Așa cum a fost descris anterior, în prezenta invenție, tabelele de conversie cu număr 35 minim de rulări d de 1, număr maxim de rulări k de 7 și o rată de conversie m/n de 2/3 includ coduri de substituție pentru limitarea numărului aparițiilor consecutive ale rulării minime, care 37 realizează următoarele efecte:
(1) Sunt îmbunătățite performanțele de înregistrare și redare la densitate de linie 39 înaltă și de toleranță la înclinări tangențiale.
(2) Este posibil să fie redus numărul de porțiuni de nivel scăzut, să fie crescută 41 acuratețea procesării undei cum ar fi AGC și PLL si, ca urmare să fie îmbunătățite toate caracteristicile. 43 (3) în comparație cu sistemul convențional, este posibilă realizarea unui design cu o lungime mică a căii de memorie a codului de bit abi sau altul asemănător și ca atare 45 reducerea dimensiunii circuitului.
RO 121883 Β1 în plus, restul divizării cu 2 a numărului valorilor 1, ale unui element dintr-o secvență de date având o valoare de 0 sau 1, va fi totdeauna egal cu restul divizării cu 2 a numărului valorilor 1 ale unui element din secvența de cuvinte cod rezultată din conversia secvenței de date, realizând în plus următoarele efecte:
(4) Numărul de biți redundanți pentru controlul DSV poate fi redus.
(5) La un număr minim de rulări d de 1 și parametri de conversie (m, n) de (2, 3), controlul DSV poate fi executat cu un cuvânt cod de 1,5 biți.
(6) în plus, la redundanțe relativ scăzute, numărul minim și maxim de rulări d și k pot fi păstrate.
Mai mult, tabelele de conversie includ în mod special coduri de substituție pentru păstrarea limitei lungimii de rulare, care produce următoarele efecte:
(7) Tabelele sunt compacte.
(8) Propagarea unei erori de modulare, cauzată de o deplasare cu un bit, poate fi pusă în aceeași stare ca într-un sistem convențional bazat pe tabelul 1.
Este de reținut că se poate folosi ca suport de prezentare pentru programul de computer executabil pentru a realiza procesarea descrisă anterior, nu numai un suport de înregistrare cum ar fi un disc magnetic, ci și un CD-ROM, o memorie cu semiconductori și mijloace de comunicație cum ar fi o rețea și un satelit.
EFECTELE INVENȚIEI
Așa cum a fost descris anterior, conform unui aparat de modulare așa cum este revendicat în revendicarea 1, o metodă de modulare revendicată ca în revendicarea 25, un aparat de demodulare ca în revendicarea 26, o metodă de demodulare revendicată ca în revendicarea 29 și un suport de prezentare a programului revendicat ca în revendicarea 52, procesul de conversie este efectuat pe baza unui tabel de conversie care stabilește o regulă de conversie, conform căreia restul divizării la 2 a numărului valorilor 1, ale unui element al secvenței de date având o valoare de 0 sau 1, este totdeauna egal cu restul divizării cu 2 al numărului valorilor 1 ale unui element din secvența de cuvinte cod rezultată din conversia secvenței de date și codurile de conversie ale tabelului de conversie conțin:
coduri de bază pentru d=1, k=7, m=2 și n=3;
coduri de substituție primare pentru limitarea numărului de apariții consecutive ale numărului minim de rulări d; și coduri de substituție secundare pentru păstrarea numărului maxim de rulări k.
Ca rezultat, controlul DSV poate fi executat prin utilizarea unui număr mic de biți redundanți și o secvență de cuvinte cod poate fi înregistrată și redată cu puține erori, la o densitate mare de linie. în plus, poate fi suprimată creșterea propagării unei erori de demodulare determinate de o deplasare cu un bit.
Claims (52)
1. Aparat de modulare (1), pentru conversia datelor cu o lungime a datelor de bază de m biți în coduri de lungime variabilă (d, k; m, n; r) cu o lungime a codului de bază de n*i biți, unde d este lungimea de rulare minimă, k este lungimea de rulare maximă, lungimea impusă i este un număr întreg și r este o lungime impusă maximă, aparat caracterizat prin aceea că are mijloace de conversie (12) pentru conversia datelor de intrare în coduri, conform unui tabel de conversie care stabilește o regulă de conversie, conform căreia restul divizării cu 2 a numărului valorilor '1' ale unui element din secvența de date, având o valoare de 0 sau 1, va fi întotdeauna egal cu restul divizării cu 2 a numărului valorilor '1' ale unui
RO 121883 Β1 element din secvența de cuvinte cod rezultată din conversia secvenței de date și codurile de 1 conversie ale tabelului de conversie cuprind:
- coduri de bază pentru d=1, k=7, m=2 și n=3;3
- coduri de substituție primare pentru limitarea numărului de apariții consecutive ale numitei lungimi de rulare minime d; și5
- coduri de substituție secundare pentru păstrarea lungimii de rulare maximă k.
2. Aparat de modulare, conform revendicării 1, caracterizat prin aceea că numărul 7 de perechi ce cuprind fiecare o secvență de date și o secvență de cod, ce compun numitele coduri de bază pentru lungimea impusă i egală cu 1, este mai mic de 4(=2A m=2A2).9
3. Aparat de modulare, conform revendicării 1, caracterizat prin aceea că codurile de bază ale tabelelor de conversie au o structură de lungime variabilă.11
4. Aparat de modulare, conform revendicării 1, caracterizat prin aceea că codurile de bază ale numitelor tabele de conversie cuprind un cod' *0*', unde simbolul * este un cod 13 nedeterminat care este '0' dacă un cuvânt cod imediat precedent sau imediat următor este '1' și '1' dacă cuvântul cod imediat precedent sau imediat următor este Ό', rezultând că codul' 15 *0*' este fie Ό00’, fie'101'.
5. Aparat de modulare, conform revendicării 1, caracterizat prin aceea că codurile 17 de conversie ale numitelor tabele de conversie includ coduri determinate fiecare prin referirea la o secvență de cuvinte cod imediat următoare sau o secvență de date imediat 19 următoare.
6. Aparat de modulare, conform revendicării 1 caracterizat prin aceea că codurile 21 de conversie ale numitelor tabele de conversie includ coduri determinate fiecare prin referirea la o secvență de cuvinte cod imediat următoare sau o secvență de cuvinte cod de 23 un anumit tip.
7. Aparat de modulare, conform revendicării 5, caracterizat prin aceea că numitele 25 coduri determinate fiecare prin referire la o secvență de cuvinte cod imediat următoare sau o secvență de date imediat următoare sunt numitele coduri de substituție primare sau 27 secundare.
8. Aparat de modulare, conform revendicării 1, caracterizat prin aceea că numărul 29 de perechi ce cuprind fiecare o secvență de date și o secvență de cod, ce compun numitele coduri de bază pentru lungimea impusă i egală cu 1, este egal cu 4 (=2Am=2A2).31
9. Aparat de modulare, conform revendicării 1, caracterizat prin aceea că pentru lungimi impuse i egale sau mai mari decât 2, numitele coduri de conversie sunt toate coduri33 de substituție, primare și secundare.
10. Aparat de modulare, conform revendicării 1, caracterizat prin aceea că numitele 35 coduri de conversie, pentru lungimea impusă i egală cu 2, sunt coduri de păstrare a lungimii de rulare minime d la 1.37
11. Aparat de modulare, conform revendicării 1, caracterizat prin aceea că numitele coduri de conversie ale numitelor tabele de conversie cuprind coduri determinate fiecare prin39 referire la o secvență de cuvinte cod imediat precedentă.
12. Aparat de modulare, conform revendicării 1, caracterizat prin aceea că numitul 41 aparat este prevăzut și cu mijloace de inserare a semnalului de sincronizare (212), pentru inserarea unui semnal de sincronizare ce include un eșantion unic, necuprins în codurile de 43 conversie ale tabelului de conversie, în orice poziție arbitrară din secvența de cuvinte cod.
13. Aparat de modulare, conform revendicării 12, caracterizat prin aceea că 45 eșantionul unic este un eșantion ce nu respectă lungimea de rulare maximă k.
RO 121883 Β1
14. Aparat de modulare, conform revendicării 12, caracterizat prin aceea că eșantionul unic este un eșantion ce păstrează numita lungime de rulare minimă d.
15. Aparat de modulare, conform revendicării 12, caracterizat prin aceea că un eșantion unic din numitul semnal de sincronizare cuprinde la început un cuvânt cod 1 ce servește ca bit de conectare cu un cuvânt cod rezultat din conversia datelor până la datele imediat precedente, un al doilea bit pentru păstrarea lungimii de rulare minime d și un al treilea bit.
16. Aparat de modulare, conform revendicării 12, caracterizat prin aceea că semnalul de sincronizare are dimensiunea de cel puțin 12 cuvinte cod.
17. Aparat de modulare, conform revendicării 12, caracterizat prin aceea că, pentru un semnal de sincronizare cu dimensiunea de cel puțin 21 de cuvinte cod, semnalul de sincronizare numit cuprinde cel puțin două eșantioane cu o lungime maximă de rulare k egală cu 8.
18. Aparat de modulare, conform revendicării 12, caracterizat prin aceea că codurile de conversie din numitul tabel de conversie numit cuprind coduri terminație, fiecare pentru terminarea codului rezultat din conversie.
19. Aparat de modulare, conform revendicării 18, caracterizat prin aceea că numitele coduri terminație sunt prescrise pentru fiecare dintre codurile de bază cu o lungime impusă i, pentru care numărul de perechi, fiecare cuprinzând o secvență de date și o secvență de cod, ce compun numitele coduri de bază, este mai mic de 4 (=2Am=2A2), și stabilește o regulă de conversie, conform căreia restul divizării cu 2 a numărului valorilor '1' ale unui element din secvența de date, având o valoare de 0 sau 1, va fi totdeauna egal cu restul divizării cu 2 a numărului valorilor '1' ale unui element din secvența de cuvinte cod rezultată din conversia numitei secvențe de date.
20. Aparat de modulare, conform revendicării 18, caracterizat prin aceea că, pentru a identifica codul terminație, cuvântul cod 1 la începutul eșantionului de semnal de sincronizare ce servește drept bit de conectare este setat la valoarea '1' când codul terminație este utilizat, și este setat la valoarea '0' când codul terminație nu este utilizat.
21. Aparat de modulare, conform revendicării 12, caracterizat prin aceea că eșantionul unic este inserat între primii 3 biți de la începutul semnalului de sincronizare și 3 biți de la sfârșitul semnalului de sincronizare, iar cei trei biți de la început și cei trei biți de la sfârșit sunt utilizați ca joncțiune, cuprinzând amestecate date și biți de conectare.
22. Aparat de modulare, conform revendicării 12, caracterizat prin aceea că:
- primul dintre cei 3 biți de la începutul semnalului de sincronizare are o valoare reprezentând cuvinte de date înainte de conversie în unități de m-biți;
- cel de-al doilea bit din cei 3 biți este setat la valoarea '1' pentru a prescrie numitul semnal de sincronizare;
- primul dintre cei 3 biți de la sfârșitul semnalului de sincronizare este setat la valoarea '0' pentru a prescrie numitul semnal de sincronizare; și
- cel de-al doilea bit dintre cei 3 biți de la sfârșit are o valoare ce reprezintă cuvinte de date înainte de conversie în unități de m-biți.
23. Aparat de modulare, conform revendicării 1, caracterizat prin aceea că aparatul cuprinde mijloace de control DSV (11) pentru controlul DSV-ului datelor de intrare și transmiterea numitului DSV către mijloacele de conversie.
24. Aparat de modulare, conform revendicării 1, caracterizat prin aceea că numitele mijloace de conversie cuprind:
- mijloace de detecție a unui cod primar (33) pentru detectarea codurilor de substituție
RO 121883 Β1 primare pentru limitarea numărului de apariții consecutive ale numărului minim de rulări d; 1 Și
- mijloace de detecție a unui cod secundar (34) pentru detectarea codurilor de 3 substituție secundare pentru păstrarea lungimii limită de rulare.
25. Metodă de modulare, destinată a fi utilizată într-un aparat de modulare pentru 5 conversia datelor cu o lungime a datelor de bază de m biți, în coduri de lungime variabilă, (d, k, m, n, r), cu o lungime a codului de bază de n*i biți, unde d este lungimea de rulare 7 minimă, k este lungimea de rulare maximă, o lungime impusă i este număr întreg și r este o lungime impusă maximă, caracterizată prin aceea că aceasta cuprinde următoarele 9 etape:
- o etapă de conversie pentru conversia datelor de intrare în coduri, conform unui tabel de 11 conversie care stabilește o regulă de conversie, conform căreia restul divizării cu 2 a numărului valorilor '1' ale unui element din secvența de date, având o valoare de 0 sau 1, va 13 fi totdeauna egal cu restul divizării cu 2 a numărului valorilor '1' ale unui element din secvența de cuvinte rezultată din conversia secvenței de date și codurile de conversie ale tabelului de 15 conversie cuprind:
- coduri de bază pentru d=1, k=7, m=2 și n=3;17
- coduri de substituție primare pentru limitarea numărului de apariții consecutive ale numitei lungime de rulare minimă d; și19
- coduri de substituție secundare pentru păstrarea lungimii de rulare maximă k.
26. Aparat de demodulare (100) pentru conversia unui cod cu lungime variabilă, (d,21 k; m, n; r), cu o lungime a codului de bază de n*i biți în date cu o lungime a datelor de bază de m biți, unde d este lungimea de rulare minimă, k este lungimea de rulare maximă, i este 23 o lungime impusă, numărîntreg, și r este lungimea impusă maximă, caracterizat prin aceea că are mijloace de conversie (111) pentru conversia codurilor de intrare în date, conform 25 tabelului 2 de conversie care stabilește o regulă de conversie, conform căreia restul divizării cu 2 a numărului valorilor '1' ale unui element din secvența de date, având o valoare de 0 27 sau 1, va fi întotdeauna egal cu restul divizării cu 2 a numărului valorilor '1' ale unui element din secvența de cuvinte cod rezultată din conversia secvenței de date și codurile de 29 conversie ale tabelului de conversie cuprind:
- coduri de bază pentru d=1, k=7, m=2 și n=3;31
- coduri de substituție primare pentru limitarea numărului de apariții consecutive ale lungimii de rulare minime d; și33
- coduri de substituție secundare pentru păstrarea lungimii maxime de rulare k.
27. Aparat de demodulare, conform revendicării 26, caracterizat prin aceea că 35 numitul aparat mai cuprinde și mijloace de înlăturare a biților (112) pentru înlăturarea biților redundanți inserați la intervale predeterminate în numitul cod.37
28. Aparat de demodulare, conform revendicării 27, caracterizat prin aceea că numiții biți redundanți sunt biți DSV sau semnale de sincronizare.39
29. Metodă de demodulare, destinată a fi utilizată într-un aparat de demodulare pentru conversia codurilor de lungime variabilă, (d, k; m, n; r), cu o lungime a codului de41 bază de n*i biți, în date cu o lungime a datelor de bază de m biți, unde d este lungimea de rulare minimă, k este o lungimea de rulare maximă, o lungime impusă i este număr întreg 43 și r este o lungime impusă maximă, caracterizată prin aceea că aceasta cuprinde următoarele etape: 45
- o etapă de conversie pentru conversia codului de intrare în date, conform unui tabel de conversie care stabilește o regulă de conversie, conform căreia restul divizării cu 2 a 47
RO 121883 Β1 numărului valorilor '1' ale unui element din secvența de date, având o valoare de 0 sau 1, va fi totdeauna egal cu restul divizării cu 2 a numărului valorilor '1' ale unui element din secvența de cuvinte cod rezultată din conversia secvenței de date și codurile de conversie ale numitului tabel de conversie cuprind:
- coduri de bază pentru d=1, k=7, m=2 și n=3;
- coduri de substituție primare pentru limitarea numărului de apariții consecutive ale numitei lungimi de rulare minime d; și
- coduri de substituție secundare pentru păstrarea numitei lungimi de rulare maxime k.
30. Semnal modulat de la revendicarea 29, caracterizat prin aceea că este produs prin metoda care constă din:
- primirea datelor având o lungime a datelor de bază de m biți;
- conversia datelor în coduri de lungime variabilă, (d, k; m, n; r), cu o lungime a codului de bază de n*i biți, o lungime de rulare minimă de d biți, o lungime de rulare maximă de k biți, o lungime impusă i este număr întreg și r este o lungime impusă maximă, în care restul divizării cu 2 a numărului valorilor '1' ale unui element din secvența de date, având o valoare de 0 sau 1, va fi totdeauna egal cu restul divizării cu 2 a numărului valorilor '1' ale elementului din secvența de cuvinte cod rezultată din conversia secvenței de date;
- transmiterea codurilor de lungime variabilă; și în care conversia utilizează:
- coduri de bază pentru d=1, k=7, m=2 și n=3;
- coduri de substituție primare pentru limitarea numărului de apariții consecutive ale lungimii de rulare minime d, și
- coduri de substituție secundare pentru păstrarea lungimii de rulare maxime k=7, când sunt utilizate codurile de substituție primare.
31. Semnal conform revendicării 30, în care numărul de cuvinte cod pentru codurile de bază cu lungimea impusă i = 1, este mai mic decât 2Λ m.
32. Semnal conform revendicării 30, în care cuvintele coduri de bază sunt de lungime variabilă.
33. Semnal conform revendicării 30, în care cuvintele coduri de bază includ cuvinte cod care sunt dependente de cuvintele cod imediat precedente sau următoare.
34. Semnal conform revendicării 30, în care codurile de bază cuprind un cod '*0*' unde simbolul * este '0' dacă ultimul bit al unui cuvânt cod imediat precedent este '1' sau primul bit al unui cuvânt cod imediat următor este ’T, iar în caz contrar * este 'T.
35. Semnal conform revendicării 30, în care cuvintele cod de substituție includ cuvinte cod care depind de cuvintele cod imediat următoare.
36. Semnal conform revendicării 30, în care numărul de cuvinte cod pentru codurile de bază, cu lungime impusă i = 1, este egal cu 2 Λ mfig.
37. Semnal conform revendicării 30, în care cuvintele cod de bază au toate aceeași lungime și lungimea unui cuvânt cod de substituție este diferită de lungimea cuvintelor cod de bază.
38. Semnal conform revendicării 30, în care semnalul include coduri de sincronizare între unele cuvinte cod, codurile de sincronizare conținând fiecare un eșantion de sincronizare care nu este inclus în nici o secvență de cuvinte cod adiacente.
39. Semnal conform revendicării 38, în care eșantionul de sincronizare nu respectă restricția k a cuvintelor cod.
40. Semnal conform revendicării 38, în care codurile de sincronizare respectă restricția d a cuvintelor cod.
RO 121883 Β1
41. Semnal conform revendicării 38, în care codul de sincronizare include un prim bit 1 la începutul codului de sincronizare, un al doilea bit pentru păstrarea restricției d și un al treilea bit.3
42. Semnal conform revendicării 38, în care codurile de sincronizare au o mărime de cel puțin 12 biți.5
43. Semnal conform revendicării 38, în care un cod de sincronizare are o mărime de cel puțin 21 biți și conține două din eșantioanele de sincronizare cu k=8.7
44. Semnal conform revendicării 30, în care semnalul include coduri terminație inserate între cuvintele cod.9
45. Semnal conform revendicării 44, în care codurile terminație sunt inserate după codurile de bază, când numărul codurilor de lungime m utilizate în conversie este mai mic 11 de 2Am, și codurile terminație sunt necesare astfel încât restul divizării cu 2 a numărului valorilor '1' ale unui element din secvența de date, având o valoare de 0 sau 1, să fie 13 totdeauna egal cu restul divizării cu 2 a numărului valorilor '1' ale elementului din secvența de cuvinte cod rezultată din conversia secvenței de date. 15
46. Semnal conform revendicării 44, în care primul bit al unui cod de sincronizare indică dacă codul de sincronizare este precedat de un cod terminație. 17
47. Semnal conform revendicării 46, în care un eșantion de sincronizare urmează imediat după o porțiune de început care conține primii 32 biți din cuvântul de sincronizare și 19 eșantionul de sincronizare sau un alt eșantion de sincronizare este urmat de o porțiune de sfârșit care conține ultimii 32 biți ai cuvântului de sincronizare, părțile de început și de sfârșit 21 reprezentând fiecare datele înainte de conversie și biții de conectare.
48. Semnal conform revendicării 47, în care23
- primul bit al porțiunii de început a numitului semnal de sincronizare are o valoare, reprezentând cuvinte de date înainte de conversie;25
- cel de-al doilea bit al porțiunii de început este setat la valoarea 'Γ, pentru a indica semnalul de sincronizare;27
- primul bit din porțiunea de sfârșit a semnalului de sincronizare este setat la valoarea
Ό', pentru a indica semnalul de sincronizare; și29
- cel de-al doilea bit din porțiunea de sfârșit are o valoare ce reprezintă numitele cuvinte de date înainte de conversie.31
49. Semnal conform revendicării 30, în care sunt controlate componentele de curent continuu ale codului.33
50. Semnal conform revendicării 30, în care conversia include codare NRZI.
51. Semnal conform revendicării 30, conținând:35
- elemente cod ale unui cod cu lungime variabilă, (d, k; m, n; r), cu o lungime a codului de bază de n*i biți, o lungime de rulare minimă de d biți, o lungime de rulare maximă 37 de k biți, și o lungime impusă maximă r, în care o lungime impusă i este număr întreg, fiecare element cod reprezentând respectiv o porțiune de date în care restul divizării cu 2 a 39 numărului valorilor '1' ale porțiunii de date, având o valoare de 0 sau 1, va fi totdeauna egal cu restul divizării cu 2 a numărului valorilor '1' ale elementului cod care reprezintă porțiunea 41 de date;
elementele cod incluzând: 43
- coduri de bază pentru d=1, k=7, m=2 și n=3;
- coduri de substituție primare pentru limitarea numărului de apariții consecutive ale 45 lungimii de rulare minimă d; și
- coduri de substituție secundare pentru păstrarea limitei lungimii de rulare k=7, când 47 sunt utilizate codurile de substituție primare.
52. Suport de înregistrare conținând oricare din semnalele din revendicările 30 până 49 la 51.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP15028098A JP3985173B2 (ja) | 1998-05-29 | 1998-05-29 | 変調装置および方法、復調装置および方法、並びにデータ格納媒体 |
PCT/IB1999/000948 WO1999063671A1 (en) | 1998-05-29 | 1999-05-25 | Apparatus and method for modulation/demodulation with consecutive minimum runlength limitation |
Publications (1)
Publication Number | Publication Date |
---|---|
RO121883B1 true RO121883B1 (ro) | 2008-06-30 |
Family
ID=15493529
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
ROA200000085A RO121883B1 (ro) | 1998-05-29 | 1999-05-25 | Aparat şi metodă de modulare/demodulare, cu limitarea lungimii minime consecutive de rulare, precum şi suport de prezentare a programului pentru acestea |
Country Status (40)
Country | Link |
---|---|
US (5) | US6496541B1 (ro) |
EP (1) | EP1000467B1 (ro) |
JP (1) | JP3985173B2 (ro) |
KR (1) | KR100753966B1 (ro) |
CN (2) | CN1183681C (ro) |
AR (1) | AR019600A1 (ro) |
AT (1) | ATE463082T1 (ro) |
AU (1) | AU758251B2 (ro) |
BG (1) | BG64243B1 (ro) |
CA (2) | CA2680404C (ro) |
CY (1) | CY1110892T1 (ro) |
CZ (1) | CZ303005B6 (ro) |
DE (1) | DE69942194D1 (ro) |
DK (1) | DK1000467T3 (ro) |
EA (1) | EA002209B1 (ro) |
EE (1) | EE05501B1 (ro) |
EG (1) | EG22694A (ro) |
ES (1) | ES2341927T3 (ro) |
HK (1) | HK1029458A1 (ro) |
HR (1) | HRP20000050B1 (ro) |
HU (1) | HU229922B1 (ro) |
ID (1) | ID24969A (ro) |
IL (2) | IL134229A (ro) |
LT (1) | LT4754B (ro) |
LV (1) | LV12526B (ro) |
ME (1) | ME01711B (ro) |
MY (1) | MY131577A (ro) |
NO (1) | NO332391B1 (ro) |
NZ (1) | NZ502506A (ro) |
PL (1) | PL338300A1 (ro) |
PT (1) | PT1000467E (ro) |
RO (1) | RO121883B1 (ro) |
SI (1) | SI20174B (ro) |
SK (1) | SK288035B6 (ro) |
TR (1) | TR200000248T1 (ro) |
TW (1) | TW498313B (ro) |
UA (1) | UA49081C2 (ro) |
WO (1) | WO1999063671A1 (ro) |
YU (1) | YU49188B (ro) |
ZA (1) | ZA200000371B (ro) |
Families Citing this family (83)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3985173B2 (ja) * | 1998-05-29 | 2007-10-03 | ソニー株式会社 | 変調装置および方法、復調装置および方法、並びにデータ格納媒体 |
JP3870573B2 (ja) * | 1998-08-24 | 2007-01-17 | ソニー株式会社 | 変調装置および方法、記録媒体、並びに復調装置および方法 |
WO2001052258A1 (en) | 2000-01-07 | 2001-07-19 | Koninklijke Philips Electronics N.V. | Method of converting a stream of databits of a binary information signal into a stream of databits of a constrained binary channel signal, device for encoding, signal comprising a stream of databits of a constrained binary channel signal, record carrier and device for decoding |
EP1282942A1 (en) * | 2000-05-10 | 2003-02-12 | Koninklijke Philips Electronics N.V. | Method of converting a stream of databits of a binary information signal into a stream of databits of a constrained binary channel signal, device for encoding, signal comprising a stream of databits of a constrained binary channel signal, record carrier, method for decoding, device for decoding |
TW483038B (en) | 2000-05-26 | 2002-04-11 | Koninkl Philips Electronics Nv | Display device |
KR100424482B1 (ko) * | 2000-06-22 | 2004-03-24 | 엘지전자 주식회사 | 일련의 데이터 워드를 변조신호로 변환하는 방법 및 장치 |
US7133331B2 (en) | 2000-12-28 | 2006-11-07 | Victor Company Of Japan, Limited | Recording medium having a substrate containing microscopic pattern of parallel groove and land sections and recording/reproducing equipment therefor |
KR100370493B1 (ko) * | 2001-02-06 | 2003-02-05 | 엘지전자 주식회사 | 광기록매체의 데이터 변/복조 방법 및 장치 |
JP2002271205A (ja) | 2001-03-09 | 2002-09-20 | Victor Co Of Japan Ltd | 変調方法、変調装置、復調方法、復調装置、情報記録媒体、情報伝送方法および情報伝送装置 |
CN100456640C (zh) * | 2001-06-07 | 2009-01-28 | 日本胜利株式会社 | 调制和解调方法与装置、信息传输方法和装置 |
LT4906B (lt) | 2001-08-17 | 2002-04-25 | Vytautas Sirvydis | Pagerinti paukštininkystės maisto produktai, jų gavimo būdas ir paukščių mitybos papildas |
JP2003168222A (ja) | 2001-09-20 | 2003-06-13 | Victor Co Of Japan Ltd | 情報記録担体及び情報記録担体の再生方法及び情報記録担体の再生装置 |
JP4784030B2 (ja) | 2001-09-21 | 2011-09-28 | ソニー株式会社 | 記録装置、再生装置、記録方法、再生方法 |
US6577255B2 (en) | 2001-10-29 | 2003-06-10 | Victor Company Of Japan, Ltd. | Method and apparatus for encoding digital data |
CN1306516C (zh) * | 2001-11-09 | 2007-03-21 | 株式会社东芝 | 信息记录/还原系统和记录校正方法 |
US7426393B2 (en) * | 2001-11-19 | 2008-09-16 | Nokia Corporation | Method and system of identifying network services |
JP4132804B2 (ja) * | 2001-12-11 | 2008-08-13 | ソニー株式会社 | 変調装置および方法、記録媒体、並びにプログラム |
JP2003208764A (ja) * | 2002-01-16 | 2003-07-25 | Sony Corp | 変調装置および方法、記録媒体、並びにプログラム |
JP4178795B2 (ja) * | 2002-01-23 | 2008-11-12 | ソニー株式会社 | 変調装置および方法、dsv制御ビット生成方法、記録媒体、並びにプログラム |
US7372376B2 (en) * | 2002-01-23 | 2008-05-13 | Koninklijke Philips Electronics N.V. | System of converting information words to a signal |
AU2003201833A1 (en) * | 2002-04-01 | 2003-10-23 | Sony Corporation | Storage medium initialization and cancellation method |
JP2005522809A (ja) * | 2002-04-11 | 2005-07-28 | コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ | 確率dc制御 |
US7177262B2 (en) | 2002-04-19 | 2007-02-13 | Victor Company Of Japan, Ltd. | Reproducing system and corresponding information recording medium having wobbled land portions |
JP4141175B2 (ja) * | 2002-05-14 | 2008-08-27 | ソニー株式会社 | データ記録媒体、データ記録方法および装置 |
US6765511B2 (en) | 2002-06-27 | 2004-07-20 | Victor Company Of Japan, Ltd. | Method and apparatus for encoding digital data |
TWI283518B (en) * | 2002-07-30 | 2007-07-01 | Mediatek Inc | Method for data modulation/demodulation and system using the same |
US7706405B2 (en) * | 2002-09-12 | 2010-04-27 | Interdigital Technology Corporation | System for efficient recovery of Node-B buffered data following MAC layer reset |
US7212483B2 (en) * | 2002-09-25 | 2007-05-01 | Victor Company Of Japan, Limited | Modulation device, modulation method and recording medium |
AU2003278427A1 (en) * | 2002-11-05 | 2004-06-07 | Koninklijke Philips Electronics N.V. | Record carrier comprising an additional sync-color pattern and method and device for use with such record carrier |
JP3957679B2 (ja) | 2002-12-18 | 2007-08-15 | 日本電気株式会社 | 符号化変調方法および変調装置、復調方法および復調装置、情報記録媒体 |
KR20040099945A (ko) * | 2003-05-20 | 2004-12-02 | 삼성전자주식회사 | 디스크형 기록 매체로의 기록을 위한, 데이터 변조 방법및 그 장치와, 이에 사용되는 싱크 코드 삽입 방법 및 그장치와, 이를 구현하기 위한 프로그램을 기록한 기록 매체 |
JP5046477B2 (ja) * | 2003-08-28 | 2012-10-10 | ソニー株式会社 | 復号装置および方法、記録再生装置および方法、プログラム記録媒体、並びにプログラム |
CN1701517B (zh) * | 2003-08-28 | 2010-11-24 | 索尼株式会社 | 译码装置和方法 |
KR101132342B1 (ko) | 2003-10-13 | 2012-04-05 | 코닌클리케 필립스 일렉트로닉스 엔.브이. | 균형 잡힌 디스패리티 프레임 동기 |
US8611195B2 (en) | 2003-11-21 | 2013-12-17 | Koninklijke Philips N.V. | Detection of data in burst cutting area of optical disk |
WO2005050649A2 (en) * | 2003-11-21 | 2005-06-02 | Koninklijke Philips Electronics N.V. | Detection of data in burst cutting area of optical disk |
US7330137B2 (en) * | 2003-12-12 | 2008-02-12 | Mediatek Inc. | Method and apparatus for RLL code encoding and decoding |
TWI225730B (en) * | 2003-12-31 | 2004-12-21 | Ind Tech Res Inst | Type-dependent coding method with type control |
CN101023585B (zh) * | 2004-09-15 | 2010-06-16 | 皇家飞利浦电子股份有限公司 | 用于编码具有r=2的rmtr约束条件的代码的编码器和方法 |
AU2005283797A1 (en) * | 2004-09-15 | 2006-03-23 | Koninklijke Philips Electronics N.V. | Modulation coding with RLL (1, K) and MTR (2) constraints |
US20080317140A1 (en) * | 2004-09-17 | 2008-12-25 | Koninklijke Philips Electronics, N.V. | Method of Converting a User Bitstream Into Coded Bitstream, Method for Detecting a Synchronization Pattern in a Signal, a Record Carier, a Signal, a Recording Device and a Playback Device |
US20080094986A1 (en) * | 2004-09-17 | 2008-04-24 | Koninklijke Philips Electronics, N.V. | Method Of Converting A User Bitstream Into Coded Bitstream, Method For Detecting A Synchronization Pattern In A Signal, A Record Carried, A Signal, A Recording Device And A Playback Device All Using A Freely Insertable Synchronization Pattern |
DE602005012717D1 (de) * | 2004-10-20 | 2009-03-26 | Koninkl Philips Electronics Nv | Verfahren und vorrichtung zur einbettung eines sekundären signals in einen primärdatenbitstrom auf einer optischen platte |
KR100700809B1 (ko) * | 2005-02-07 | 2007-03-27 | 엘지전자 주식회사 | 광기록매체의 데이터 변/복조 방법 |
US7701825B2 (en) * | 2005-06-17 | 2010-04-20 | Macrovision Corporation | Apparatus for and a method of authenticating recording media |
JP4601512B2 (ja) | 2005-08-05 | 2010-12-22 | ルネサスエレクトロニクス株式会社 | Dsv制御装置およびdsv制御方法 |
JP4826888B2 (ja) * | 2005-11-10 | 2011-11-30 | ソニー株式会社 | 復調テーブル、復調装置および復調方法、プログラム、並びに記録媒体 |
JP4839784B2 (ja) * | 2005-11-10 | 2011-12-21 | ソニー株式会社 | 変調テーブル、変調装置および方法、プログラム、並びに記録媒体 |
JP4692234B2 (ja) * | 2005-11-10 | 2011-06-01 | ソニー株式会社 | 変調テーブル、変調装置および方法、プログラム、並びに記録媒体 |
JP4821297B2 (ja) | 2005-12-12 | 2011-11-24 | ソニー株式会社 | 符号列生成方法、変調装置、変調方法、変調プログラム、復調装置、復調方法、復調プログラム及び記録媒体 |
CN100386812C (zh) * | 2005-12-16 | 2008-05-07 | 清华大学 | 编码调制方法及装置、解调方法及装置 |
EP1966895A2 (en) | 2005-12-19 | 2008-09-10 | Koninklijke Philips Electronics N.V. | A coder and a method of coding for codes with a parity-complementary word assignment having a constraint of d=1, r=2 |
JP2007213655A (ja) * | 2006-02-08 | 2007-08-23 | Sony Corp | 変調テーブル、変調装置および方法、プログラム、並びに記録媒体 |
JP4983032B2 (ja) * | 2006-02-08 | 2012-07-25 | ソニー株式会社 | 復調テーブル、復調装置および方法、プログラム、並びに記録媒体 |
US7348900B1 (en) | 2006-03-07 | 2008-03-25 | Mediatek Inc. | Method and apparatus for encoding/decoding in fixed length |
JP4899616B2 (ja) | 2006-04-28 | 2012-03-21 | ソニー株式会社 | 変調装置および方法、プログラム、並びに記録媒体 |
JP4662164B2 (ja) * | 2006-04-28 | 2011-03-30 | ソニー株式会社 | 変調装置および方法、プログラム、並びに記録媒体 |
JP4930760B2 (ja) * | 2006-04-28 | 2012-05-16 | ソニー株式会社 | 変調装置および方法、並びに記録媒体 |
JP4735975B2 (ja) * | 2006-04-28 | 2011-07-27 | ソニー株式会社 | 変調装置および方法、プログラム、並びに記録媒体 |
WO2007145619A1 (en) * | 2006-06-12 | 2007-12-21 | Mubina Gilliani | System and method for dynamic electronic learning based on location, context, and category data |
CA2653863C (en) * | 2006-06-12 | 2014-09-09 | Thomson Licensing | Method and apparatus for embedding second code into optical disc data by data modulation rule variation |
JP2008004195A (ja) * | 2006-06-23 | 2008-01-10 | Toshiba Corp | ラン長制限装置及びラン長制限方法 |
CN100547671C (zh) * | 2006-07-25 | 2009-10-07 | 华中科技大学 | 用于高密度光盘的调制码的编码方法 |
US8238319B2 (en) * | 2006-09-01 | 2012-08-07 | Advanced Telecommunications Research Institute International | Radio apparatus |
US7557739B1 (en) * | 2006-10-17 | 2009-07-07 | Marvell International Ltd. | Four-to-six modulation encoder |
KR20090090397A (ko) * | 2006-12-20 | 2009-08-25 | 코닌클리케 필립스 일렉트로닉스 엔.브이. | 워터마크를 포함하는 광 디스크와, 이 디스크에 기록하는 방법 및 레코더 |
EP1988636A1 (en) * | 2007-05-03 | 2008-11-05 | Deutsche Thomson OHG | Method and apparatus for channel coding and decoding |
WO2009027913A1 (en) * | 2007-08-31 | 2009-03-05 | Koninklijke Philips Electronics N.V. | An optical disc comprising a watermark and a method and recorder for recording such a disc |
KR20090085257A (ko) * | 2008-02-04 | 2009-08-07 | 삼성전자주식회사 | Dsv 제어 방법, 이에 적합한 기록매체 및 장치 |
EP2093884A1 (en) * | 2008-02-22 | 2009-08-26 | Deutsche Thomson OHG | Method for channel encoding, method and apparatus for channel decoding |
WO2009103723A1 (en) * | 2008-02-22 | 2009-08-27 | Thomson Licensing | Method for channel encoding, method and apparatus for channel decoding |
JP4961386B2 (ja) * | 2008-05-20 | 2012-06-27 | 株式会社日立製作所 | 光情報記録装置、光情報記録方法、光情報記録再生装置および光情報記録再生方法 |
KR100972008B1 (ko) * | 2008-07-16 | 2010-07-23 | 한국전력공사 | 이중전원 계통방식에서 절환시간을 최소화한 고속도 전원선택 차단기 |
JP5161176B2 (ja) | 2008-09-26 | 2013-03-13 | 太陽誘電株式会社 | 可視光通信用送信機及び可視光通信システム |
EP2169833A1 (en) | 2008-09-30 | 2010-03-31 | Thomson Licensing | Finite-state machine RLL coding with limited repeated minimum transition runlengths |
JP4997211B2 (ja) | 2008-10-23 | 2012-08-08 | 株式会社日立製作所 | 光ディスク、光ディスク記録方法及び装置、光ディスク再生方法及び装置 |
JP2011086333A (ja) * | 2009-10-14 | 2011-04-28 | Sony Corp | データ変調装置および方法、並びにプログラム、記録媒体 |
JP4919121B2 (ja) * | 2010-02-08 | 2012-04-18 | ソニー株式会社 | 変調装置、変調方法、および記録媒体 |
JP5583999B2 (ja) | 2010-03-24 | 2014-09-03 | 太陽誘電株式会社 | 可視光通信用送信機及び可視光通信システム |
JP5399975B2 (ja) | 2010-05-14 | 2014-01-29 | 太陽誘電株式会社 | 可視光通信用受信機、可視光通信システム、及び可視光通信方法 |
JP5640033B2 (ja) * | 2012-03-22 | 2014-12-10 | 日立コンシューマエレクトロニクス株式会社 | 光情報記録装置、光情報記録方法、光情報記録再生装置および光情報記録再生方法 |
GB201206564D0 (en) * | 2012-04-13 | 2012-05-30 | Intrasonics Sarl | Event engine synchronisation |
CN112838868B (zh) * | 2020-12-30 | 2022-09-09 | 天津瑞发科半导体技术有限公司 | 一种9b/10b编解码方法 |
Family Cites Families (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US198710A (en) * | 1877-12-25 | Improvement in harrows | ||
US3773975A (en) * | 1971-12-17 | 1973-11-20 | Burroughs Corp | Fsk digital transmitter |
US5333126A (en) * | 1990-01-03 | 1994-07-26 | Hitachi, Ltd. | Information recording method and optical disk apparatus using same |
US5477222A (en) * | 1993-05-04 | 1995-12-19 | U.S. Philips Corporation | Device for encoding/decoding N-bit source words into corresponding M-bit channel words, and vice versa |
JP2947081B2 (ja) * | 1994-06-29 | 1999-09-13 | 日本ビクター株式会社 | デジタル情報変調装置 |
DE4425713C1 (de) * | 1994-07-20 | 1995-04-20 | Inst Rundfunktechnik Gmbh | Verfahren zur Vielträger Modulation und Demodulation von digital codierten Daten |
WO1996019044A1 (fr) * | 1994-12-12 | 1996-06-20 | Sony Corporation | Procede de codage de donnees et procede de decodage de donnees |
JP3967379B2 (ja) * | 1995-04-04 | 2007-08-29 | 松下電器産業株式会社 | 記録媒体、記録方法と装置及び再生方法と装置 |
US6079041A (en) * | 1995-08-04 | 2000-06-20 | Sanyo Electric Co., Ltd. | Digital modulation circuit and digital demodulation circuit |
JP3339539B2 (ja) * | 1995-12-13 | 2002-10-28 | 松下電器産業株式会社 | デジタル変調装置、その方法及び記録媒体 |
DE19607428C2 (de) * | 1996-02-28 | 1999-01-28 | Daimler Benz Ag | Innenraumverkleidungsteil aus Kunststoff |
CN1114920C (zh) * | 1996-10-11 | 2003-07-16 | 三洋电机株式会社 | 数字记录方法、数字盘记录装置以及数字盘再生装置 |
JPH10334616A (ja) * | 1997-05-30 | 1998-12-18 | Sony Corp | 光ディスク装置およびデータ記録方法 |
US5978419A (en) * | 1997-06-24 | 1999-11-02 | Sun Microsystems, Inc. | Transmitter and receiver circuits for high-speed parallel digital data transmission link |
JP3760961B2 (ja) * | 1997-09-11 | 2006-03-29 | ソニー株式会社 | 変調装置および変調方法、復調装置および復調方法、並びに記録媒体 |
JP3716421B2 (ja) * | 1997-09-19 | 2005-11-16 | ソニー株式会社 | 復調装置および復調方法 |
JP3722331B2 (ja) * | 1997-12-12 | 2005-11-30 | ソニー株式会社 | 変調装置および方法、並びに記録媒体 |
WO1999033183A1 (en) * | 1997-12-22 | 1999-07-01 | Koninklijke Philips Electronics N.V. | DEVICE FOR ENCODING/DECODING n-BIT SOURCE WORDS INTO CORRESPONDING m-BIT CHANNEL WORDS, AND VICE VERSA |
JP3985173B2 (ja) * | 1998-05-29 | 2007-10-03 | ソニー株式会社 | 変調装置および方法、復調装置および方法、並びにデータ格納媒体 |
-
1998
- 1998-05-29 JP JP15028098A patent/JP3985173B2/ja not_active Expired - Lifetime
-
1999
- 1999-05-25 ID IDW20000176D patent/ID24969A/id unknown
- 1999-05-25 UA UA2000021177A patent/UA49081C2/uk unknown
- 1999-05-25 AT AT99919490T patent/ATE463082T1/de active
- 1999-05-25 WO PCT/IB1999/000948 patent/WO1999063671A1/en active IP Right Grant
- 1999-05-25 KR KR1020007000903A patent/KR100753966B1/ko not_active IP Right Cessation
- 1999-05-25 EE EEP200000051A patent/EE05501B1/xx unknown
- 1999-05-25 RO ROA200000085A patent/RO121883B1/ro unknown
- 1999-05-25 CN CNB998012378A patent/CN1183681C/zh not_active Expired - Lifetime
- 1999-05-25 NZ NZ502506A patent/NZ502506A/en not_active IP Right Cessation
- 1999-05-25 PL PL99338300A patent/PL338300A1/xx unknown
- 1999-05-25 DE DE69942194T patent/DE69942194D1/de not_active Expired - Lifetime
- 1999-05-25 AU AU37258/99A patent/AU758251B2/en not_active Expired
- 1999-05-25 ME MEP-2000-41A patent/ME01711B/me unknown
- 1999-05-25 SI SI9920006A patent/SI20174B/sl active Search and Examination
- 1999-05-25 ES ES99919490T patent/ES2341927T3/es not_active Expired - Lifetime
- 1999-05-25 CN CNB2004100041826A patent/CN100557981C/zh not_active Expired - Lifetime
- 1999-05-25 HU HU0003579A patent/HU229922B1/hu unknown
- 1999-05-25 PT PT99919490T patent/PT1000467E/pt unknown
- 1999-05-25 CZ CZ20000308A patent/CZ303005B6/cs not_active IP Right Cessation
- 1999-05-25 IL IL13422999A patent/IL134229A/xx not_active IP Right Cessation
- 1999-05-25 EP EP99919490A patent/EP1000467B1/en not_active Expired - Lifetime
- 1999-05-25 CA CA2680404A patent/CA2680404C/en not_active Expired - Lifetime
- 1999-05-25 CA CA002298685A patent/CA2298685C/en not_active Expired - Lifetime
- 1999-05-25 SK SK116-2000A patent/SK288035B6/sk not_active IP Right Cessation
- 1999-05-25 TR TR2000/00248T patent/TR200000248T1/xx unknown
- 1999-05-25 DK DK99919490.5T patent/DK1000467T3/da active
- 1999-05-25 YU YU4100A patent/YU49188B/sh unknown
- 1999-05-25 EA EA200000175A patent/EA002209B1/ru not_active IP Right Cessation
- 1999-05-27 US US09/320,812 patent/US6496541B1/en not_active Expired - Lifetime
- 1999-05-28 MY MYPI99002123A patent/MY131577A/en unknown
- 1999-05-29 EG EG62299A patent/EG22694A/xx active
- 1999-05-31 AR ARP990102573A patent/AR019600A1/es active IP Right Grant
- 1999-12-09 TW TW088121567A patent/TW498313B/zh not_active IP Right Cessation
-
2000
- 2000-01-26 IL IL13422900A patent/IL134229A0/xx unknown
- 2000-01-26 LT LT2000008A patent/LT4754B/lt not_active IP Right Cessation
- 2000-01-26 NO NO20000392A patent/NO332391B1/no not_active IP Right Cessation
- 2000-01-27 ZA ZA200000371A patent/ZA200000371B/xx unknown
- 2000-01-27 BG BG104111A patent/BG64243B1/bg unknown
- 2000-01-28 HR HR20000050A patent/HRP20000050B1/xx not_active IP Right Cessation
- 2000-01-28 LV LVP-00-15A patent/LV12526B/en unknown
- 2000-11-08 HK HK00107074.4A patent/HK1029458A1/xx not_active IP Right Cessation
-
2002
- 2002-10-02 US US10/263,079 patent/US6677866B2/en not_active Expired - Lifetime
-
2003
- 2003-11-07 US US10/704,277 patent/US7098819B2/en not_active Expired - Lifetime
-
2006
- 2006-01-19 US US11/335,806 patent/US7158060B2/en not_active Expired - Lifetime
- 2006-11-06 US US11/556,874 patent/US7466246B2/en not_active Expired - Lifetime
-
2010
- 2010-06-29 CY CY20101100596T patent/CY1110892T1/el unknown
Also Published As
Similar Documents
Publication | Publication Date | Title |
---|---|---|
RO121883B1 (ro) | Aparat şi metodă de modulare/demodulare, cu limitarea lungimii minime consecutive de rulare, precum şi suport de prezentare a programului pentru acestea | |
KR100675029B1 (ko) | 변조장치 및 방법, 복조장치 및 방법, 및 제공매체 | |
KR100263689B1 (ko) | 변조방법, 변조장치 및 복조장치 | |
KR100947070B1 (ko) | 변조장치 및 방법과 디지털 썸 벨류 제어비트 생성방법 | |
KR100424482B1 (ko) | 일련의 데이터 워드를 변조신호로 변환하는 방법 및 장치 | |
KR100954986B1 (ko) | 변조 장치 및 방법 | |
KR100817937B1 (ko) | 일련의 데이터 워드를 변조신호로 변환하는 방법 및 장치 | |
KR100817936B1 (ko) | 일련의 데이터 워드를 변조신호로 변환하는 방법 및 장치 | |
KR100752880B1 (ko) | 정보를 코딩/디코딩하는 방법 및 장치 | |
MXPA00000982A (en) | Apparatus and method for modulation/demodulation with consecutive minimum runlength limitation | |
JP2009266378A (ja) | 変調装置、変調方法、記録媒体 | |
JP2007184095A (ja) | 変調装置、変調方法、記録媒体、復調装置、復調方法 |