ES2341927T3 - Aparato y procedimiento de modulacion/demodulacion con limitacion de longitudes minimas consecutivas. - Google Patents

Aparato y procedimiento de modulacion/demodulacion con limitacion de longitudes minimas consecutivas. Download PDF

Info

Publication number
ES2341927T3
ES2341927T3 ES99919490T ES99919490T ES2341927T3 ES 2341927 T3 ES2341927 T3 ES 2341927T3 ES 99919490 T ES99919490 T ES 99919490T ES 99919490 T ES99919490 T ES 99919490T ES 2341927 T3 ES2341927 T3 ES 2341927T3
Authority
ES
Spain
Prior art keywords
code
conversion
data
words
length
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
ES99919490T
Other languages
English (en)
Inventor
Kornelis A. Schouhamer Immink
Joseph A. H. M. Kahlman
Gijsbert J. Van Den Enden
T. Nakagawa
Y. Shinpuku
T. Naohara
K. Nakamura
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sony Corp
Koninklijke Philips NV
Original Assignee
Sony Corp
Koninklijke Philips Electronics NV
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sony Corp, Koninklijke Philips Electronics NV filed Critical Sony Corp
Application granted granted Critical
Publication of ES2341927T3 publication Critical patent/ES2341927T3/es
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M5/00Conversion of the form of the representation of individual digits
    • H03M5/02Conversion to or from representation by pulses
    • H03M5/04Conversion to or from representation by pulses the pulses having two levels
    • H03M5/14Code 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
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/14Digital recording or reproducing using self-clocking codes
    • G11B20/1403Digital recording or reproducing using self-clocking codes characterised by the use of two levels
    • G11B20/1423Code representation depending on subsequent bits, e.g. delay modulation, double density code, Miller code
    • G11B20/1426Code representation depending on subsequent bits, e.g. delay modulation, double density code, Miller code conversion to or from block codes or representations thereof
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M5/00Conversion of the form of the representation of individual digits
    • H03M5/02Conversion to or from representation by pulses
    • H03M5/04Conversion to or from representation by pulses the pulses having two levels
    • H03M5/14Code 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/145Conversion to or from block codes or representations thereof
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/14Digital recording or reproducing using self-clocking codes
    • G11B20/1403Digital recording or reproducing using self-clocking codes characterised by the use of two levels
    • G11B20/1423Code representation depending on subsequent bits, e.g. delay modulation, double density code, Miller code
    • G11B20/1426Code representation depending on subsequent bits, e.g. delay modulation, double density code, Miller code conversion to or from block codes or representations thereof
    • G11B2020/145317PP 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

Problema: como grabar y reproducir datos con una alta densidad de línea. Medio de resolución del problema: una unidad de determinación/inserción de bits de control DSV (11) inserta bits de control DSV para la ejecución del control DSV en una cadena de datos de entrada y emite la cadena de datos incluyendo los bits de control DSV hacia una unidad de modulación (12). La unidad de modulación convierte la cadena de datos con una longitud básica de dos bits en código de longitud variable con una longitud básica de código de tres bits de acuerdo con una tabla de conversión y emite el código resultante de la conversión hacia una unidad codificadora NRZI (13). La tabla de conversión utilizada por la unida de modulación (12) incluye códigos de sustitución para limitar el número de apariciones consecutivas de una serie mínima a un valor predeterminado y códigos de sustitución para mantener el límite de longitud de la serie. Además, la tabla de conversión fuerza una regla de conversión, de acuerdo conla cual el resto de la división del recuento de "1" de un elemento en una cadena de datos por 2 que tiene un valor de 0 ó 1 será siempre igual al resto de la división del recuento "1" de un elemento en el código que resulta de la conversión de la cadena de datos por 2.

Description

Aparato y procedimiento de modulación/demodulación con limitacion de longitudes mínimas consecutivas.
Descripción detallada de la invención Campo técnico de la invención
En general, la presente invención se refiere a un aparato de modulación y a un procedimiento de modulación, a un aparato de demodulación y a un procedimiento de demodulación así como a un medio de presentación de programa. Más particularmente, la presente invención se refiere a un aparato de modulación preferible y a un procedimiento de modulación preferible, a un aparato de demodulación preferible y a un procedimiento de demodulación preferible así como a un medio de presentación de programa preferible usado en operaciones para grabar datos en un medio de grabación con una densidad de grabación elevada y datos de reproducción grabados en un medio de grabación con una densidad de grabación elevada.
Técnica anterior
Cuando se transmiten datos a través de una línea de transmisión o se graban en un medio de grabación tal como un disco magnético, un disco óptico o un disco magneto-óptico, los datos se modulan en códigos que coinciden con la línea de transmisión o el medio de grabación antes de la transmisión o grabación. Como técnica de modulación se conoce la codificación de bloques. En la codificación de bloques, una cadena de datos se divide en bloques dando lugar a unidades que comprenden cada una m x i bits. Cada una de las unidades que en adelante en el presente documento se denomina palabra de datos se convierte entonces en una palabra de código que comprende n x i bits según una regla de codificación apropiada. Para i = 1, esta palabra de código es un código de longitud fija. En el caso de i que tiene una pluralidad de valores seleccionado cada uno del intervalo 1 a imax, un máximo de i, la palabra de código resultante es un código de longitud variable. En general, un código que resulta de la codificación de bloques se expresa como un código de longitud variable (d, k; m, n; r).
En este caso, i se denomina longitud de restricción y r es imax, una longitud de restricción máxima. d es el número mínimo de 0 que aparecen entre dos 1 consecutivos. d se denomina una secuencia mínima de 0. Por otro lado, k es el número máximo de 0 que aparecen entre dos 1 consecutivos. k se denomina una secuencia máxima de 0.
Además, en una operación para grabar códigos de longitud variable obtenidos a partir de la codificación de bloques descrita anteriormente en un medio de grabación tal como un disco óptico o un disco magneto-óptico, por ejemplo, en un disco compacto (CD) o un minidisco (MD), el código de longitud variable se somete a una modulación NRZI (Non Return to Zero Inverted, No retorno a cero invertido) en la que cada "1" del código de longitud variable se interpreta como inversión mientras que un "0" se interpreta como no inversión. A continuación se graba el código de longitud variable que completa la modulación NRZI. El código de longitud variable que completa la modulación NRZI se denomina tren de ondas de grabación. En el caso de un disco magneto-óptico según las especificaciones ISO tempranas que prescriben una densidad de grabación no tan grande, se graba un tren de bits que completa la modulación de grabación cuando no se somete a la modulación NRZI.
Supóngase que las designaciones Tmin y Tmax designan los períodos de inversión mínimo y máximo de un tren de ondas de grabación, respectivamente. En este caso, con el fin de grabar el tren de ondas de grabación con una densidad de grabación elevada en la dirección de velocidad lineal, se prefiere un período de inversión mínimo largo Tmin o una secuencia mínima grande d. Además, desde el punto de vista de la generación de reloj, es deseable tener un período de inversión máximo corto Tmax o una secuencia máxima pequeña k. Con el fin de satisfacer estos requisitos, se ha propuesto una variedad de técnicas de modulación.
En concreto, para un disco óptico, un disco magnético o un disco magneto-óptico, se proponen o usan realmente técnicas de modulación para generar un código de longitud variable RLL (1 - 7) que se expresa también como (1, 7; m, n; r) y un código de longitud variable RLL (2 - 7) también expresado como (2, 7 m, n; r) así como un código de longitud fija RLL (1 - 7) también expresado como (1, 7; m, n;l) usado en una especificación MO ISO. Para un aparato de disco que está investigándose y desarrollándose actualmente tal como un disco óptico y un disco magneto-óptico que tiene una densidad de grabación elevada, se usa comúnmente un código RLL (código de longitud de secuencia limitada) con una secuencia mínima d de 1.
Lo siguiente es un ejemplo de una tabla de conversión del código RLL de longitud variable (1 7).
TABLA 1
1
\vskip1.000000\baselineskip
El símbolo x usado en la tabla de conversión tiene el valor "1" para un siguiente bit de canal subsiguiente de "0" o tiene el valor "0O" para un siguiente bit de canal subsiguiente de "1". La longitud de restricción máxima r es 2.
Parámetros del código de longitud variable RLL (1 - 7) son (1, 7; 2, 3; 2). El período de inversión mínimo Tmin que puede expresarse por (d + 1) T es así igual a 2 (= 1 + 1) T en el que T es un hueco de bits en el tren de ondas de grabación. El período de inversión mínimo Tmin que puede expresarse también mediante (m/n) x 2 Tdatos es así igual a 1,33 (= 2/3 x 2) Tdatos en el que Tdatos es un hueco de bits en la cadena de datos. El período de inversión máximo Tmax que puede expresarse mediante (k + 1) T es así igual a (7 + 1) T = 8T = 8 x (m/n) Tdatos = 8 x 2/3 Tdatos = 5,33 Tdatos. La amplitud de la ventana de detección Tw que puede expresarse también mediante (m/n) Tdatos es así igual a 0,67 (= 2/3) Tdatos.
Además, en un tren de bits de canal que completa la modulación RLL (1 - 7) mostrada en la tabla 1, en la mayoría de los casos se observa que a una frecuencia de generación correspondiente a un período de 2T que es igual al período de inversión mínimo Tmin le siguen frecuencias de generación correspondientes a períodos de 3T y 4T. El hecho de que se genera mucha información marginal en intervalos cortos tales como 2T y 3T es ventajoso respecto a la generación de una señal de reloj en muchos casos.
A medida que aumenta adicionalmente la densidad de línea de grabación, sin embargo, la secuencia mínima se convierte esta vez en un problema de manera adversa. Es decir, si se generan de forma consecutiva secuencias mínimas 2T, el tren de ondas de grabación es susceptible de distorsión generada en el mismo. Esto se debe a que la salida de ondas de 2T es menor que otras salidas de ondas y, por tanto, se ve afectada fácilmente por factores tales como un desenfoque y una distorsión tangencial. Además, con una densidad de línea elevada, la grabación de marcas mínimas consecutivas (2T) también se ve afectada fácilmente por perturbaciones tales como ruido. Por tanto, una operación para reproducir los datos también será susceptible de errores. En este caso, se observa un patrón de errores en la reproducción de los datos como desplazamientos de los márgenes frontales y posteriores de una marca mínima en muchos casos. Como resultado, aumenta la longitud del error de bit generado.
Tal como se describió anteriormente, cuando se transmiten datos a través de una línea de transmisión o se graban en un medio de grabación, los datos se modulan en un código que coincide con la línea de transmisión o el medio de grabación antes de la transmisión o grabación. Si el código que resulta de la modulación contiene una componente de corriente continua, se genera fácilmente una variedad de señales de error tales como errores de seguimiento generados en el control de un servo de la unidad de disco que se vuelven susceptibles de variaciones o fluctuaciones. Por este motivo, es por tanto deseable realizar tantos esfuerzos como sea posible para evitar que el código modulado contenga una componente de corriente continua.
Con el fin de evitar que el código modulado contenga una componente de corriente continua, se ha propuesto el control de un DSV (Valor de Suma Digital) para evitar que el código modulado contenga una componente de corriente continua. El DSV es un total hallado sumando los valores de un tren de bits (símbolos de datos), en el que los valores +1 y -1 se asignan a "1" y "0" en el tren respectivamente, lo que resulta de una modulación NRZI (esto es, codificación de nivel) de un tren de bits de canal. El DSV es un indicador de una componente de corriente continua contenida en un tren de códigos. Disminuir el valor absoluto del DSV a través de un control del DSV es equivalente a suprimir la magnitud de una componente de corriente continua contenida en un tren de códigos.
\newpage
El control del DSV no se aplica a un código de modulación generado según la tabla de longitud variable RLL (1 - 7) mostrada como la tabla 1 dada anteriormente. El control del DSV para un caso tal se consigue calculando un DSV de un tren de bits codificados (un tren de bits de canal) tras la modulación durante un período de tiempo predeterminado e insertando un número predeterminado de bits de control del DSV en el tren de bits codificados (el tren de bits de canal).
Con cualquier tasa, los bits de control del DSV son básicamente bits redundantes. Si debe tenerse en cuenta la eficacia de la conversión de código, es por tanto deseable reducir el número de bits de control del DSV al valor más pequeño posible.
Además, si se insertan los bits de control del DSV, también es deseable realizar la secuencia mínima d y la secuencia máxima k sin cambios. Esto se debe a que un cambio en (d, k) tendrá un efecto sobre las características de grabación/reproducción.
\vskip1.000000\baselineskip
Problemas que van a solucionarse mediante la invención
Tal como se describió anteriormente, en una operación para grabar un código RLL con una densidad de línea elevada o una operación para reproducir un código RLL grabado con una densidad de línea elevada, surge el problema de que un patrón de secuencias mínimas consecutivas d provocará que se genere fácilmente un error largo.
Además, en el caso de un código RLL tal como el código RLL (1 - 7), el control del DSV necesita la inserción de bits de control del DSV en una parte arbitraria de una cadena de palabras de código (un tren de bits de canal). Puesto que los bits de control del DSV son básicamente bits redundantes, sin embargo, es deseable reducir el número de bits de control del DSV insertados al valor más pequeño posible. Con el fin de mantener la secuencia mínima y la secuencia máxima a valores constantes, sin embargo, el número de bits de control del DSV es al menos 2. Es por tanto deseable reducir el número de bits de control del DSV a un valor incluso más pequeño.
La presente invención trata los problemas descritos anteriormente. Es un objeto de la presente invención permitir ejecutar un control del DSV para producir bits de control de alta eficacia en el código RLL de (d, k; m, n) en el que la secuencia mínima d = 1, esto es, el código RLL de (1, 7; 2, 3) de modo que el número de secuencias mínimas consecutivas se reduce mientras que se mantienen la secuencia mínima y la secuencia máxima.
El documento US5477222 da a conocer una señal en un flujo de bits de datos de una señal de canal binario, en el que el flujo de bits de la señal fuente se divide en palabras fuente de n-bits, dispositivo que incluye un circuito de conversión adaptado para convertir las palabras fuente en palabras de canal de m bits correspondientes. El circuito de conversión está adaptado además para convertir las palabras fuente de n bits en palabras de m bits correspondientes, de modo que la conversión para cada palabra fuente de n bits es preservación de paridad tal como se muestra en la tabla 1. En el documento US5477222 un código básico está completado por códigos de sustitución que garantizan que se cumple una restricción de código particular. Para esto determinadas cadenas de palabras de código que resultarían normalmente de una conversión usando el código básico se sustituyen usando una conversión de los códigos de sustitución.
Es otro objeto de la presente invención evitar que aumente la propagación de un error de demodulación usando una tabla de conversión que tiene la configuración más simple posible.
\vskip1.000000\baselineskip
Medios para solucionar los problemas
Un aparato de modulación según la reivindicación 1 está caracterizado porque el código variable tiene una restricción adicional k = 7, y porque se proporciona una conversión de código básico que falta en la tabla de conversión mediante la conversión de código de sustitución.
Un medio de presentación de programa según la reivindicación 24 para presentar un programa está caracterizado porque el código variable tiene una restricción adicional k = 7, y porque se proporciona una conversión de código básico que falta en la tabla de conversión mediante la conversión de código de sustitución.
Un aparato de demodulación según la reivindicación 25 está caracterizado porque el código variable tiene una restricción adicional k = 7, y porque se proporciona una conversión de código básico que falta en la tabla de conversión mediante la conversión de código de sustitución.
Un procedimiento de demodulación según la reivindicación 28 está caracterizado por
- códigos básicos;
- primeros códigos de sustitución para limitar el número de apariciones consecutivas de dicha secuencia mínima d; y
- segundos códigos de sustitución para mantener dicho límite de longitud de secuencia k,
teniendo el código variable restricciones d = 1, m = 2 y n = 3, caracterizado porque el código variable tiene una restricción adicional k = 7, y porque se proporciona una conversión de código básico que falta en la tabla de conversión mediante la conversión de código de sustitución.
Un medio de presentación de programa según la reivindicación 29 está caracterizado porque el código variable tiene una restricción adicional k = 7, y porque se proporciona una conversión de código básico que falta en la tabla de conversión mediante la conversión de código de sustitución.
Según el aparato de modulación reivindicado en la reivindicación 1, el procedimiento de modulación según la reivindicación 23, el medio de presentación de programa según la reivindicación 24, el aparato de demodulación según la reivindicación 25, el procedimiento de demodulación según la reivindicación 28 y el medio de presentación de programa según la reivindicación 29, se lleva a cabo un procesamiento de conversión basándose en una tabla de conversión que implementa una regla de conversión, según la que el resto de la división de un número de "1" de un elemento en una cadena de datos entre 2 que tiene un valor de 0 ó 1 siempre será igual al resto de la división de un número de "1" de un elemento en la cadena de palabras de código que resulta de la conversión de la cadena de datos entre 2 y comprendiendo los códigos de conversión de la tabla de conversión:
- códigos básicos;
- primeros códigos de sustitución para limitar el número de apariciones consecutivas de dicha secuencia mínima d; y
- segundos códigos de sustitución para mantener dicho límite de longitud de secuencia k,
teniendo el código variable restricciones d = 1, m = 2 y n = 3, teniendo el código variable una restricción adicional k = 7, y proporcionándose una conversión de código básico que falta en la tabla de conversión mediante la conversión de código de sustitución.
\vskip1.000000\baselineskip
Breve descripción de los dibujos
Se han descrito realizaciones de la presente invención haciendo referencia a los siguientes diagramas en los que:
la figura 1 es un diagrama de bloques que muestra una configuración típica de una realización que implementa un aparato de modulación proporcionado por la presente invención;
la figura 2 es un diagrama explicativo usado para describir el procesamiento llevado a cabo mediante una unidad 11 de determinación/inserción de bits de control del DSV empleada en el aparato de modulación mostrado en la figura 1;
la figura 3 es un diagrama de bloques que muestra una configuración típica de una unidad 12 de modulación empleada en el aparato de modulación mostrado en la figura 1;
la figura 4 es un diagrama que muestra a modo de ejemplo el procesamiento llevado a cabo mediante la unidad 12 de modulación mostrada en la figura 3;
la figura 5 es un diagrama de bloques que muestra una configuración típica de una realización que implementa un aparato de demodulación proporcionado por la presente invención;
la figura 6 es un diagrama de bloques que muestra una configuración típica de una unidad 111 de demodulación empleada en el aparato de demodulación mostrado en la figura 5;
la figura 7 es un diagrama explicativo usado para describir el procesamiento llevado a cabo mediante la unidad 111 de demodulación mostrada en la figura 6;
la figura 8 es un diagrama de flujo usado como referencia para explicar las operaciones llevadas a cabo mediante una unidad 112 de eliminación de bits de control del DSV empleada en el aparato de demodulación mostrado en la figura 5;
la figura 9 es un diagrama de bloques que muestra otra configuración típica de una realización que implementa un aparato de modulación proporcionado por la presente invención;
la figura 10 es un diagrama de bloques que muestra otra configuración típica de una realización que implementa un aparato de demodulación proporcionado por la presente invención; y
la figura 11 es un diagrama que muestra un ejemplo de código para la grabación con señales de sincronización y bits de control del DSV insertados en el mismo.
Descripción detallada de las realizaciones preferidas
Antes de empezar a explicar algunas realizaciones preferidas de la presente invención, con el fin de aclarar las relaciones que asocian los medios de la presente invención descritos en las reivindicaciones con implementaciones adoptadas en las realizaciones, en la siguiente descripción que caracteriza la invención, a cada uno de los medios le sigue una implementación típica encerrada entre paréntesis en la forma "unos medios (implementados por ejemplo mediante una implementación típica)". No es necesario mencionar, sin embargo, que la implementación típica no pretende considerarse en un sentido limitativo. Es decir, unos medios no están necesariamente limitados a una implementación típica asociada con los medios.
Un aparato de modulación según la reivindicación 1 está caracterizado porque el código variable tiene una restricción adicional k = 7, y porque se proporciona una conversión de código básico que falta en la tabla de conversión mediante la conversión de código de sustitución.
Según la reivindicación 10, el aparato de modulación según la reivindicación 10 está caracterizado además por tener además unos medios de inserción de señal de sincronización (implementados por ejemplo mediante una unidad 212 de inserción de señal de sincronización mostrada en la figura 9) para insertar una señal de sincronización que incluye un patrón único no incluido en dichos códigos de conversión de dicha tabla de conversión en cualquier posición arbitraria en dicha cadena de palabras de código.
Según la reivindicación 21, el aparato de modulación reivindicado en la reivindicación 1 está caracterizado además por tener además medios de control del DSV (implementados por ejemplo mediante una unidad 11 de determinación/inserción de bits de control del DSV mostrada en la figura 1) para controlar los DSV de datos de entrada y suministrar dichos DSV a dichos medios de conversión.
Según la reivindicación 22, el aparato de modulación según la reivindicación 1 está caracterizado además porque dichos medios de conversión comprenden:
unos primeros medios de detección de código (implementados por ejemplo mediante una unidad 33 de detección de código que limitan la aparición consecutiva de secuencias mínimas mostrada en la figura 3) para detectar dichos primeros códigos de sustitución para limitar el número de apariciones consecutivas de dicha secuencia mínima d; y
unos segundos medios de detección de código (implementados por ejemplo mediante unos medios 34 de detección de código que garantizan la secuencia máxima mostrados en la figura 3) para detectar dichos segundos códigos de sustitución para mantener el límite de longitud de secuencia.
Un aparato de demodulación según la reivindicación 25 está caracterizado porque el código variable tiene una restricción adicional k = 7, y porque se proporciona una conversión de código básico que falta en la tabla de conversión mediante la conversión de código de sustitución.
Según la reivindicación 26, un aparato de demodulación según la reivindicación 25 está caracterizado además por tener además unos medios de eliminación de bits (implementados por ejemplo mediante una unidad 112 de eliminación de bits de control del DSV mostrada en la figura 5) para eliminar bits redundantes insertados a intervalos predeterminados en dicho código.
Realizaciones preferidas de la presente invención se describen tal como sigue. Con el fin de hacer que la explicación se entienda fácilmente, en la siguiente descripción, un conjunto de bits "0" y "1" de datos antes de la conversión, es decir, una cadena de datos de previa a la conversión, se representa como un tren de bits encerrados entre paréntesis
( ) como por ejemplo (000011). Por otro lado, un conjunto de bits "0" y "1" de un código que resulta de la conversión, es decir, una cadena de palabras de cadena posteriores a la conversión se representa como un tren de bits delimitados por un par de símbolos '' como por ejemplo "000100100". Las tablas 2 y 3 dadas a continuación son ejemplos de una tabla de conversión para convertir datos en un código según la presente invención.
TABLA 2
2
\global\parskip0.900000\baselineskip
Cuando los siguientes bits de canal son "010" convierten "11 01 11" en "001 000 000" tras usar la tabal principal y la tabla de terminación.
Tal como se muestra en la tabla 2, la tabla de conversión muestra códigos que resultan de la conversión que incluye códigos básicos, códigos de sustitución y códigos de terminación. El procesamiento de conversión no puede llevarse a cabo sin un código básico. En la tabla de conversión, los códigos básicos son los códigos que resultan de la conversión de las cadenas de datos (11) en (000000). El procesamiento de conversión puede realizarse incluso si no existe un código de sustitución. Sin embargo, si existe un código de sustitución, puede llevarse a cabo un procesamiento de conversión más eficaz. En la tabla de conversión, los códigos de sustitución son los códigos que resultan de la conversión de las cadenas de datos (110111), (00001000) y (00000000). El código de terminación se usa para terminar el código que resulta de la conversión en cualquier posición arbitraria. Los códigos de terminación en la tabla son los códigos que resultan de la conversión de las cadenas de datos (00) y (0000). Además, la tabla de conversión también prescribe señales de sincronización.
En la tabla 2, la secuencia mínima d es 1 mientras que la secuencia máxima k es 7. Uno de los elementos de los códigos básicos incluye un código indeterminado, es decir, un código indicado mediante el símbolo de asterisco "*". El bit representado por el símbolo "*" del código indeterminado puede determinarse de modo que es o bien "0" o bien "1", con el fin de mantener los valores de la secuencia mínima d y la secuencia máxima k sin tener en cuenta una cadena de palabras de código que preceden o suceden inmediatamente. En detalle, si la cadena de datos de 2 bits que va a convertirse es (11), un código que resulta de la conversión puede ser "000" o "101" dependiendo de la cadena de palabras de código que precede inmediatamente. De manera más específica, si el bit de canal individual de la cadena de palabras de código que precede inmediatamente es "1", la cadena de datos de 2 bits (11) se convierte en el código "000" con el fin de mantener la secuencia mínima d. Si el bit de canal individual de la cadena de palabras de código que precede inmediatamente es "0", por otro lado, la cadena de datos de 2 bits (11) se convierte en el código "101" con el fin de mantener la secuencia máxima k.
Los códigos básicos mostrados en la tabla de conversión de la tabla 2 tienen una estructura de longitud variable. El número de códigos básicos con una longitud de restricción i de 1 es 3, un valor que es menor que un número requerido de 4 (= 2 ^ m = 2 ^ 2). Estos 3 códigos básicos son "*0*", "001" y "010". Como resultado, en una operación para convertir una cadena de datos, se encuentra una cadena de datos que no puede convertirse con sólo una longitud de restricción i de 1. Por este motivo, es necesario hacer referencia a códigos básicos con una longitud de restricción i de hasta 3 en la tabla 2 en una operación para convertir todas las cadenas de datos. Es decir, los códigos básicos con una longitud
de restricción i de hasta 3 se incluyen en la tabla 2 para permitir que la tabla 2 sirva como tabla de conversión suficiente.
Además, la tabla de conversión de la tabla 2 incluye también códigos de sustitución para limitar las apariciones consecutivas de la secuencia mínima d. Si la cadena de datos es (110111) y una cadena de palabras de código que sigue a un código que resulta de la conversión de la cadena de datos es "010", la cadena de datos se convierte en una palabra de código de "010 000 000". Si la cadena de palabras de código que sigue a un código que resulta de la conversión de la cadena de datos es diferente de "010", por otro lado, la cadena de datos (110111) se convierte en unidades de 2 bits. En detalle, los trenes de 2 bits (11), (01) y (11) en la cadena de datos se convierten en una cadena de palabras de código "*0* 010 y *0*". Como resultado, pueden limitarse las apariciones consecutivas de la secuencia mínima d en la cadena de palabras de código que resulta de la conversión de la cadena de datos, limitando el número de secuencias mínimas repetidas a un máximo de 6.
Además, la tabla de conversión de la tabla 2 implementa una regla de conversión, según la que el resto de la división del número de "1" de un elemento en una cadena de datos entre 2 que tiene un valor de 0 ó 1 siempre será igual al resto de la división del número de 1,111 de un elemento en la cadena de palabras de código que resulta de la conversión de la cadena de datos entre 2. Es decir, si el número de "1" de un elemento en la cadena de datos es par, el número de "1" de un elemento en la cadena de palabras de código también es par y, si el número de "1" de un elemento en la cadena de datos es impar, por otro lado, el número de "1" de un elemento en la cadena de palabras de código también es impar. Por ejemplo, una cadena de datos de (000001) se convierte en una cadena de palabras de código de "010 100 000". En este caso, el resto de la división del número de "1" de un elemento en la cadena de datos entre 2 es 1 que es igual al resto de la división del número de "1" de un elemento en la cadena de palabras de código que resulta de la conversión de la cadena de datos entre 2. Es decir, los números de "1" de la cadena de datos y la cadena de palabras de código son ambos impares. Como otro ejemplo, una cadena de datos de (000000) se convierte en una cadena de palabras de código de "010 100 100". En este caso, el resto de la división del número de "1" de un elemento en la cadena de datos entre 2 es 0 que es igual al resto de la división del número de "1" de un elemento en la cadena de palabras de código que resulta de la conversión de la cadena de datos entre 2. Es decir, los números de "1" de la cadena de datos y la cadena de palabras de código son ambos pares.
Además, la longitud de restricción máxima r en la tabla de conversión de la tabla 2 es 4. Los códigos en la tabla con una longitud de restricción i de 4 son los códigos de sustitución para implementar el valor 7 de la secuencia máxima k. Un código de sustitución de este tipo se denomina un código que garantiza una secuencia máxima. Es decir, una cadena de datos de (00001000) se convierte en una cadena de palabras de código de "000 100 100 100" mientras que una cadena de datos de (00000000) se convierte en una cadena de palabras de código de "010 100 100 100". Debe observarse que, en este caso, el valor de la secuencia mínima d se mantiene también en 1.
Si la tabla de conversión de la tabla 2 no incluye códigos de sustitución que tienen una longitud de restricción i de 4, la longitud de restricción máxima r para la tabla es 3, haciendo que se genere el código con una secuencia máxima k de 8. Puesto que la tabla incluye códigos básicos con una longitud de restricción i de 4, sin embargo, puede generarse un código con una secuencia máxima k de 7.
En general, cuanto más grande sea la secuencia máxima k, más inconveniente será la generación de una señal de reloj y, por tanto, más pobre será la estabilidad del sistema. Por tanto, al reducir el valor de la secuencia máxima k desde 8 hasta 7, la característica del sistema puede mejorarse proporcionalmente con la reducción en la secuencia máxima k.
Es decir, si la tabla de conversión de la tabla 2 se crea para que sólo incluya códigos básicos, la longitud de restricción máxima r para una tabla de este tipo es 3. En este caso, es posible generar un código que tiene una secuencia mínima d de 1 y una secuencia máxima k de 8. Además, el resto de la división del número de "1" de un elemento en una cadena de datos entre 2 que tiene un valor de 0 ó 1 siempre será igual al resto de la división del número de "1" de un elemento en la cadena de palabras de código que resulta de la conversión de la cadena de datos entre 2.
Si la tabla de conversión se crea para que incluya también códigos de sustitución para limitar apariciones consecutivas de la secuencia mínima d además de los códigos básicos, la longitud de restricción máxima r para una tabla de este tipo es también 3. En este caso, sin embargo, es posible generar un código que tiene una secuencia mínima d de 1 y una secuencia máxima k de 8 mientras que el número de secuencias mínimas consecutivas d está limitado a un valor de límite superior. Además, el resto de la división del número de "1" de un elemento en una cadena de datos entre 2 que tiene un valor de 0 ó 1 siempre será igual al resto de la división del número de "1" de un elemento en la cadena de palabras de código que resulta de la conversión de la cadena de datos entre 2.
Si la tabla de conversión se crea para que incluya también códigos de sustitución para garantizar una secuencia máxima k de 7 además de los códigos de sustitución para limitar apariciones consecutivas de la secuencia mínima d y los códigos básicos, la longitud de restricción máxima r para una tabla de este tipo es 4. En este caso, es posible generar un código que tiene una secuencia mínima d de 1 y una secuencia máxima k de 7 mientras que el número de secuencias mínimas consecutivas d está limitado a un valor de límite superior. Además, el resto de la división del número de "1" de un elemento en una cadena de datos entre 2 que tiene un valor de 0 ó 1 siempre será igual al resto de la división del número de "1" de un elemento en la cadena de palabras de código que resulta de la conversión de la cadena de datos entre 2.
En general, sin embargo, cuanto mayor sea la longitud de restricción máxima r, más pobre será la característica de propagación de un error de demodulación generado en el caso de un desplazamiento de bits, es decir, un error que se ge-
nera porque un bit marginal se desplaza en la dirección hacia delante o hacia atrás desde su posición normal en 1 bit.
La comparación de la tabla 1 con la tabla 2 muestra que la longitud de restricción máxima r de la primera es 2 mientras que la de la última es 4. Por tanto, la tabla 2 debería dar como resultado características más pobres que la tabla 1. Sin embargo, los resultados de simulación descritos más adelante haciendo referencia a la tabla 7 indican que las características de la tabla 2 no son tan pobres en comparación con la tabla 1. Por ejemplo, tal como se muestra en la tabla 7, la tasa de error de bytes promedio de la tabla 1 es 1,014 bytes mientras que la de la tabla 2 es 1,67 bytes, un valor que no es mucho más grande que el de la tabla 1. La diferencia en la tasa de error de bytes promedio puede considerarse como que se atribuye al hecho de que el número de grupos de códigos de conversión en la tabla 1 es menor que en la tabla 2 por una diferencia de 2.
Además, para un caso en el que una señal de sincronización se inserta en cualquier posición arbitraria en una cadena de palabras de código (es decir, un tren de bits de canal) generada como resultado de la conversión llevada a cabo según una tabla de conversión de la tabla 2, la tabla de conversión produce un código con una estructura de longitud variable. Esto se debe a que la tabla de conversión incluye una tabla de terminación que prescribe códigos de terminación para terminar un código que resulta de la conversión en cualquier posición arbitraria. Un código de terminación se usa siempre que sea necesario.
Supóngase, por ejemplo, que se inserta una señal de sincronización en una posición particular en el código que resulta de la conversión. En este caso, en primer lugar, en un punto de unión entre una cadena de palabras de código que precede inmediatamente a la posición particular y una cadena de palabras de código que sucede inmediatamente a la posición particular, se establecen los bits de unión mientras que se mantiene la secuencia mínima d y la secuencia máxima k y se establece un patrón único que representa la señal de sincronización entre los bits de unión. Considérese un patrón de la señal de sincronización que rompe el valor 7 de la secuencia máxima k. En este caso, el patrón de una señal de sincronización con una longitud mínima es una palabra de código de 12 bits (es decir, 12 bits de canal) dada tal como sigue:
100
El símbolo "#" en la cabecera del patrón de la señal de sincronización es un bit de unión que puede ser "0" o "1" que va a describirse más adelante. El segundo bit de canal que sigue al bit "#" es "0" para mantener la secuencia mínima d. El tercer bit de canal y los bits subsiguientes se establecen con valores que forman un patrón único de 9T, un patrón de código no prescrito en la tabla 2, para dar una secuencia máxima k de 8. Tal como se muestra en el patrón anterior, están intercalados 8 bits "0" consecutivos entre el tercer bit de canal y el último bit de canal. Debe observarse que, aunque el último bit de canal en el patrón de la señal de sincronización se establece en "1", al usar la tabla de conversión de la tabla 2, puede mantenerse la secuencia mínima d.
\global\parskip1.000000\baselineskip
A continuación, se explican la tabla de terminación y el bit de unión "#" en el patrón de bits de la señal de sincronización. Tal como se muestra en la tabla 2, la tabla de terminación se construye tal como sigue:
101
Se requiere la tabla de terminación para códigos básicos con una longitud de restricción i que proporciona un número de pares de los que cada uno comprende una cadena de datos y una cadena de palabras de código menor que el número requerido 4 (= 2 ^ m = 2 ^ 2).
En detalle, en el caso de la tabla 2, para la longitud de restricción i = 1, puesto que el número de pares de los que cada uno comprende una cadena de datos y una cadena de palabras de código es 3, se requiere la tabla de terminación. En cuanto a la longitud de restricción i = 2, puesto que el número de pares de los que cada uno comprende una cadena de datos y una cadena de palabras de código es también 3, se requiere la tabla de terminación. Para la longitud de restricción i = 3, el número de pares de los que cada uno comprende una cadena de datos y una cadena de palabras de código es 5 incluyendo un par que tiene un código de sustitución. El resto son 4 pares que incluyen cada uno un código básico. Puesto que se cumple el número requerido 4, no se necesita la tabla de terminación. En cuanto a la longitud de restricción i = 4, puesto que las cadenas de palabras de código son todas códigos de sustitución, no es necesario tener en cuenta un código de terminación. Por tanto, se requiere la tabla de terminación para la longitud de restricción i = 1 en la que se usa un código de terminación para una cadena de datos de (00). De la misma manera, se requiere la tabla de terminación para la longitud de restricción i = 2 en la que se usa un código de terminación para una cadena de datos de (0000). Según la tabla de terminación, las cadenas de datos (00) y (0000) se convierten en cadenas de palabras de código "000" y "010100" respectivamente. Como resultado, en una operación para insertar una señal de sincronización, es posible evitar una situación en la que ya no pueden convertirse datos que preceden al patrón de la señal de sincronización. Es decir, el sistema de conversión puede eliminar una situación en la que ya no es posible hacer que el código que precede inmediatamente a la señal de sincronización sirva como terminación.
El bit "#" del patrón de la señal de sincronización se usa para distinguir un caso de usar la tabla de terminación respecto a un caso en el que no se usa la tabla de terminación. Para ser más específicos, el primer bit de canal "#" en la cabecera del patrón de la señal de sincronización se establece en "1" para indicar que un código de terminación se usa o se establece en "0" para indicar que no se usa ningún código de terminación. Al hacer esto, es posible determinar correctamente si se usa o no la tabla de terminación, es decir, si se usa o no el código de terminación.
Tal como se describió anteriormente, el patrón de una señal de sincronización con una longitud mínima es una palabra de código de 12 bits (es decir, 12 bits de canal). Puesto que es aceptable un patrón de la señal de sincronización que rompe el valor 7 de la secuencia máxima k aunque proporciona una secuencia máxima k de 8 (9T), puede construirse cualquier otro patrón de señal de sincronización que forme una palabra de código de al menos 12 bits. En el caso de la formación de una palabra de código de 15 bits, por ejemplo, pueden realizarse las 2 siguientes señales de sincronización:
102
En el caso de una formación de una palabra de código de 21 bits, puede realizarse la siguiente señal de sincronización:
103
La señal de sincronización de 21 bits anterior incluye 2 patrones consecutivos que proporcionan cada uno una secuencia máxima k de 8 (9T). Una señal de sincronización de este tipo puede detectarse con un mayor grado de fiabilidad. Entonces, en el caso de la formación de una palabra de código de 24 bits, puede realizarse la siguiente señal de sincronización:
104
La señal de sincronización anterior, un patrón que tiene la forma de "3T - 9T - 9T", reduce la probabilidad de que una secuencia grande (T) aparezca antes y/o después de los dos patrones consecutivos que proporcionan cada uno una secuencia máxima k de 8 (9T) así como aumenta la potencia de detección. Es posible seleccionar la potencia de detección que una señal de sincronización debe proporcionar según requisitos del sistema.
La tabla 3 es otra tabla de conversión típica proporcionada por la presente invención.
TABLA 3
5
6
La tabla de conversión de la tabla 3 tiene una estructura en la que, para la secuencia mínima d = 1, la secuencia máxima k = 7 y la longitud de restricción i = 1, se proporcionan 4 (= 2 ^ m = 2 ^ 2) códigos básicos. Es decir, para la longitud de restricción i = 1, los 4 códigos básicos se introducen en una tabla principal. Para la longitud de restricción i = 2 o mayor, se proporcionan tablas de códigos de sustitución para limitar parámetros tales como la secuencia mínima d y la secuencia máxima k. Para ser más específico, la tabla A para la longitud de restricción i = 2 prescribe códigos de sustitución para limitar la secuencia mínima d a 1. La tabla B para la longitud de restricción i = 3 prescribe códigos de sustitución para limitar la secuencia máxima k a un límite superior de 8. La tabla C para la longitud de restricción i = 4 prescribe códigos de sustitución para limitar apariciones consecutivas de la secuencia mínima d que tiene el valor 1. La tabla D para la longitud de restricción i = 4 prescribe códigos de sustitución para limitar la secuencia máxima k a un límite superior de 7. Por tanto, en la tabla de conversión de la tabla 3, el límite de restricción máximo r = 4.
Tal como se describió anteriormente, la tabla de conversión de la tabla 3 incluye códigos de sustitución para limitar apariciones consecutivas de la secuencia mínima d. Por ejemplo, una cadena de datos de (0001001) se convierte en una cadena de palabras de código de "100 010 010 010". Tal como para una cadena de datos de (10010001), se hace referencia a una palabra de código que precede inmediatamente para determinar si el bit de canal que precede inmediatamente es "0" o "1". Si el bit de canal que precede inmediatamente es ``Oll, la cadena de datos se convierte en una cadena de palabras de código de "100 000 010 010". Si el bit de canal que precede inmediatamente es "1", por otro lado, la cadena de datos se convierte en una cadena de palabras de código de "000 010 010 010". Como resultado, la cadena de palabras de código que resulta de la conversión de datos tiene un número secuencias mínimas repetidas de forma consecutiva limitado a un máximo de 6.
Además, la tabla de conversión de la tabla 3 implementa una regla de conversión, según la cual el resto de la división del número de "1" de un elemento en una cadena de datos entre 2 que tiene un valor de 0 ó 1 siempre será igual al resto de la división del número de "1" de un elemento en la cadena de palabras de código que resulta de la conversión de la cadena de datos entre 2. Es decir, si el número de "1" de un elemento en la cadena de datos es par, el número de "1" de un elemento en la cadena de palabras de código también es par y, si el número de "1" de un elemento en la cadena de datos es impar, por otro lado, el número de "1" de un elemento en la cadena de palabras de código también es impar. Por ejemplo, una cadena de datos de (1000) se convierte en una cadena de palabras de código de "000 010". En este caso, el resto de la división del número de "1" de un elemento en la cadena de datos entre 2 es 1, que es igual al resto de la división del número de "1" de un elemento en la cadena de palabras de código que resulta de la conversión de la cadena de datos entre 2. Es decir, los números de "1" de la cadena de datos y la cadena de palabras de código son ambos impares. Como otro ejemplo, una cadena de datos de (111111) se convierte en una cadena de palabras de código de "000 010 010". En este caso, el resto de la división del número de "1" de un elemento en la cadena de datos entre 2 es 0, que es igual al resto de la división del número de "1" de un elemento en la cadena de palabras de código que resulta de la conversión de la cadena de datos entre 2. Es decir, los números de "1" de la cadena de datos y la cadena de palabras de código son ambos pares.
Además, los códigos en la tabla de conversión de la tabla 3 con una longitud de restricción i de 4 igual a la longitud de restricción máxima r son los códigos de sustitución para implementar el valor 7 de la secuencia máxima k. En el caso de una conversión que usa un código de sustitución de este tipo, se hace referencia a una cadena de palabras de código que precede inmediatamente. Para ser más específico, si la cadena de palabras de código que precede inmediatamente es "010", se implementa la conversión. Si la cadena de datos es (11100000) y la cadena de palabras de código que precede inmediatamente es "010", por ejemplo, se implementa la conversión para dar como resultado una cadena de palabras de código de "000 001 010 010". Como otro ejemplo, si la cadena de datos es (11100010) y la cadena de palabras de código que precede inmediatamente es "010", la cadena de datos se convierte en una cadena de palabras de código de "100 001 010 010".
La tabla de conversión de la tabla 3 dada anteriormente no puede construirse sólo a partir de códigos básicos con el fin de implementar la codificación RLL. El código RLL con una secuencia mínima garantizada d y una secuencia máxima garantizada k puede producirse usando códigos básicos en la tabla principal así como códigos de sustitución en la tabla A para una longitud de restricción i de 2 y la tabla B para una longitud de restricción i de 3. En este caso, la longitud de restricción máxima r es 3 y es posible generar un código que tiene una secuencia mínima d de 1 y una secuencia máxima k de 8. Además, el resto de la división del número de "1" de un elemento en una cadena de datos entre 2 que tiene un valor de 0 ó 1 siempre será igual al resto de la división del número de "1" de un elemento en la cadena de palabras de código que resulta de la conversión de la cadena de datos entre 2.
Si la tabla C que prescribe códigos de sustitución para limitar apariciones consecutivas de la secuencia mínima d se incluye en la configuración de la tabla de conversión de la tabla 3 además de la tabla principal y las tablas A y B, la longitud de restricción máxima r es 4 y es posible generar un código que tiene una secuencia mínima d de 1, una secuencia máxima k de 8 y un número limitado de apariciones consecutivas de secuencias mínimas d. Además, el resto de la división del número de "1" de un elemento en una cadena de datos entre 2 que tiene un valor de 0 ó 1 siempre será igual al resto de la división del número de "1" de un elemento en la cadena de palabras de código que resulta de la conversión de la cadena de datos entre 2. Debe observarse, que en este caso, no siempre es necesario hacer referencia a la cadena de palabras de código que precede inmediatamente tal como es el caso usando la tabla C de la tabla 3.
Si la tabla D que prescribe códigos de sustitución para garantizar una secuencia máxima k de 7 se incluye en la configuración de la tabla 3 además de la tabla principal y las tablas A y B y la tabla C que prescribe códigos de sustitución para limitar apariciones consecutivas de la secuencia mínima d, la longitud de restricción máxima r es 4 y es posible generar un código que tiene una secuencia mínima d de 1, una secuencia máxima k de 7 y un número limitado de apariciones consecutivas de secuencias mínimas d. Además, el resto de la división del número de "1" de un elemento en una cadena de datos entre 2 que tiene un valor de 0 ó 1 siempre será igual al resto de la división del número de "1" de un elemento en la cadena de palabras de código que resulta de la conversión de la cadena de datos entre 2.
La tabla de terminación de la tabla 2 no se requiere en el procesamiento para insertar una señal de sincronización en una posición particular en una cadena de palabras de código (o un tren de bits de canal) que resulta de la conversión usando la tabla de conversión de la tabla 3. Esto se debe a que, según la tabla de conversión de la tabla 3, un código puede terminarse en una longitud de restricción i de 1.
Con el fin de realizar la inserción de un patrón de un resultado de señal de sincronización en un código lo más eficaz posible, el patrón se determina de la siguiente manera. La palabra de código de 3 bits que precede inmediatamente a un patrón único (o una cadena de palabras de código) que sirve como señal de sincronización y la palabra de código de 3 bits que sucede inmediatamente al patrón único son palabras de código que resultan de la conversión según la tabla 3. Los 3 bits de las palabras de código que preceden inmediatamente y suceden inmediatamente al patrón único tienen cada uno un formato en el que se mezclan bits de datos y bits de unión de la siguiente manera.
En primer lugar, los 3 bits de la palabra de código que precede inmediatamente se determinan de la siguiente manera. Se examina una unidad de m bits de una palabra de datos antes de la conversión en la que m = 2. El primer bit de la unidad de 2 bits en la cabecera de la palabra de datos antes de la conversión es un bit de información mientras que el segundo bit tiene un valor de "1" para indicar una señal de sincronización. La unidad de 2 bits en la cabecera de la palabra de datos se convierte en una palabra de código (bits de canal) según la tabla 3. En concreto, los m bits (2 bits) de la palabra de datos (xl) se convierten en n bits (3 bits) de una palabra de código "xx0".
A continuación, los 3 bits de la palabra de código que sucede inmediatamente se determinan de la siguiente manera. De la misma manera, se examina una unidad de m bits de una palabra de datos antes de la conversión en la que m = 2. En este caso, sin embargo, el primer bit de la unidad de 2 bits en la cabecera de la palabra de datos antes de la conversión tiene un valor de "0" para indicar una señal de sincronización mientras que el segundo bit es un bit de información. La unidad de 2 bits en la cabecera de la palabra de datos se convierte en una palabra de código (bits de canal) según la tabla 3. En concreto, los m bits (2 bits) de la palabra de datos (0x) se convierten en n bits (3 bits) de una palabra de código "10x".
Cuando un patrón único de la señal de sincronización se establece como patrón que rompe el valor 7 de la secuencia máxima k, un patrón de señal de sincronización que puede implementarse con la longitud más corta posible incluye la palabra de código de patrón único de al menos 12 bits (12 bits de canal) dada de la siguiente manera:
105
donde el valor de "x" depende de la tabla de conversión. La palabra de código de 15 bits anterior incluye 3 bits "x". 2 bits "x" están en la cabecera de la palabra de código mientras que 1 bit "x" está en la cola de la misma. Los 3 bits "x" representan la unidad de 2 bits de una palabra de datos antes de la conversión. Los 12 bits de canal restantes de la palabra de código son una parte redundante que representa realmente el patrón de la señal de sincronización. El tercer bit de canal de la palabra de código se establece en "0" con el fin de mantener la secuencia mínima d. Tal como para el resto que empieza con el cuarto bit de canal, 9T se establece como un patrón de señal de sincronización para proporcionar una secuencia máxima k de 8. En detalle, 8 "0" se disponen de manera consecutiva entre "1" y "1".
Tal como se describió anteriormente, el patrón único de una señal de sincronización con una longitud mínima es una palabra de código de 12 bits (es decir, 12 bits de canal). Puesto que es aceptable un patrón de la señal de sincronización que rompe el valor 7 de la secuencia máxima k aunque proporciona una secuencia máxima k de 8 (9T), puede construirse cualquier otro patrón de señal de sincronización que forma una palabra de código de patrón único de al menos 12 bits. En el caso de la formación de una palabra de código de patrón único de 15 bits, por ejemplo, puede realizarse la siguiente señal de sincronización:
\vskip1.000000\baselineskip
106
\vskip1.000000\baselineskip
En el caso de la formación de una palabra de código de 21 bits, puede realizarse la siguiente señal de sincronización:
\vskip1.000000\baselineskip
107
\vskip1.000000\baselineskip
La señal de sincronización de 21 bits anterior comprende 2 patrones consecutivos que proporcionan cada uno una secuencia máxima k de 8 (9T). Según una señal de sincronización, puede aumentarse la potencia de detección. Es posible seleccionar la potencia de detección que debería proporcionar una señal de sincronización según requisitos de sistema.
De manera muy similar al procedimiento convencional, después de que se convierte una cadena de datos usando una tabla de conversión tal como la mostrada como tabla 2 ó 3, puede ejecutarse el control del DSV añadiendo bits de control del DSV en intervalos predeterminados a un tren de bits de canal que resulta de la conversión. Usando la relación entre la cadena de datos y la cadena de palabras de código que resulta de la conversión basada en las tablas 2 y 3, sin embargo, el control del DSV puede ejecutarse con un grado aún mayor de eficacia.
En detalle, se sigue la regla de conversión de modo que el resto de la división del número de "1" de un elemento en una cadena de datos entre 2 que tiene un valor de 0 ó 1 siempre será igual al resto de la división del número de "1" de un elemento en la cadena de palabras de código que resulta de la conversión de la cadena de datos entre 2. Así la inserción de bits de control del DSV que tienen un valor de "1" para indicar una inversión y un valor de "0" para indicar una no inversión en un tren de bits de canal es equivalente a una inserción de bits de control del DSV que tienen un valor de "1" para indicar una inversión y un valor de "0" para indicar una no inversión en un tren de bits de datos.
Considérese, por ejemplo, un caso en el que 3 bits (001) de datos se convierten según la tabla 2. Supóngase que un bit x de control del DSV que sigue a los 3 bits está intercalado entre los datos. En este caso, los datos que incluyen el bit de control del DSV se vuelven (001-x) donde x es el bit de control de 1 bit que tiene el valor "0" o "1". Para x = 0, los datos que incluyen el bit de control del DSV se convierten según la tabla 2 de la siguiente manera:
7
\vskip1.000000\baselineskip
Para x = 1, por otro lado, los datos que incluyen el bit de control del DSV se convierten según la tabla 2 de la siguiente manera:
8
\newpage
Al aplicar codificación de nivel a través de una modulación NRZI a la cadena de palabras de código que resulta de la conversión usando la tabla 2, se obtiene la siguiente cadena de códigos de nivel codificado:
9
Tal como se muestra en la tabla anterior, los 3 últimos bits de la primera cadena de códigos codificados son bits invertidos de los 3 últimos bits de la segunda cadena de códigos codificados. Los resultados anteriores implican que, seleccionando (1) o (0) como valor del bit de control del DSV, el control del DSV puede ejecutarse dentro de una cadena de datos.
A continuación, considérese una redundancia introducida por el control del DSV. Una ejecución del control del DSV por inserción de 1 bit de control del DSV en una cadena de datos corresponde a una ejecución del control del DSV por inserción de 1,5 bits de control del DSV en un tren de bits de canal donde el valor 1,5 es la inversa de la tasa de conversión m/n = 2/3 de las tablas 2 y 3. Con el fin de ejecutar un control del DSV para una tabla RLL
(1 - 7) tal como el mostrado en la tabla 1, es necesario aplicar el control en un tren de bits de canal. En este caso, se requieren al menos 2 bits de canal para mantener la secuencia mínima d, haciendo que la redundancia relativa sea alta en comparación con el control del DSV aplicado a una cadena de datos para las tablas 2 y 3. En otras palabras, en el presente sistema, al ejecutar el control del DSV en una cadena de datos, puede mejorarse la eficacia del control del DSV.
A continuación, se explica una realización que implementa un aparato de modulación proporcionado por la presente invención haciendo referencia a la figura 1. En esta realización, una cadena de datos se convierte en un código de longitud variable (d, k; m, n; r) = (1, 7; 2, 3; 4) usando la tabla 2.
Tal como se muestra en la figura 1, el aparato 1 de modulación comprende una unidad 11 de determinación/inserción de bit de control del DSV para determinar si el valor de un bit de control del DSV es "I" o "O" y para insertar bits de control del DSV en cualquier intervalo arbitrario en una cadena de datos suministrada a la misma, una unidad 12 de modulación para modular una cadena de datos con bits de DSV insertados en la misma y una unidad 13 de codificación NRZI para convertir la salida de la unidad 12 de modulación en un tren de ondas de grabación. Además, el aparato 1 de modulación también tiene una unidad 14 de control de sincronismo para generar señales de sincronismo y suministrar las señales a una variedad de componentes.
La figura 2 es un diagrama explicativo usado para describir el procesamiento llevado a cabo por la unidad 11 de determinación/inserción de bit de control del DSV. Tal como se muestra en la figura, se determinan los valores de bits de control del DSV y se insertan bits de control del DSV en una cadena de datos en cualquier intervalo arbitrario. Con el fin de insertar un bit de control del DSV en una ubicación entre fragmentos de datos DATOS1 y DATOS2 de una cadena de datos entrante, por ejemplo, la unidad 11 de determinación/inserción de bit de control del DSV calcula un DSV acumulativo para datos hasta DATOS1. El DSV total se calcula ejecutando las etapas de:
convertir DATOS1 en un tren de bits de canal;
llevar a cabo una modulación NRZI en el tren de bits;
asignar el valor +1 a un nivel H (alto) (1) y el valor -1 a un nivel L (bajo) (0) del resultado de la modulación NRZI; y
sumar los valores asignados a los niveles del resultado de la modulación NRZI.
De la misma manera, la unidad 11 de determinación/inserción de bit de control del DSV calcula un DSV total para el segmento DATOS2 que sigue a DATOS1. Supóngase que xl es un bit de control del DSV que va a insertarse en una ubicación entre fragmentos de datos DATOS1 y DATOS2. La unidad 11 de determinación/inserción de bit de control del DSV determina el valor del bit de control del DSV xl de modo que el valor absoluto de la suma de los DSV para DATOS1, xl y DATOS2 se aproxima a cero.
Si el bit de control del DSV xl se establece en (1), se invierten los códigos de nivel del segmento DATOS2 que sigue a DATOS1. Si el bit de control del DSV xl se establece en (0), por otro lado, los códigos de nivel del segmento DATOS2 que sigue a DATOS1 no se invierten. Esto se debe a que, en cada elemento de las tablas de conversión de las tablas 2 y 3, el resto de la división del número de "1" de un elemento en una cadena de datos entre 2 que tiene un valor de 0 ó 1 siempre será igual al resto de la división del número de "1" de un elemento en la cadena de palabras de código que resulta de la conversión de la cadena de datos entre 2. Por tanto, una inserción de un bit (1) en la cadena de datos debe ir acompañada por una inserción de "1" en la cadena de palabras de código que resulta de la conversión de la cadena de datos en cuyo caso está implicada una inversión.
Después de que el valor del bit de control del DSV xl mostrado en la figura 2 se ha determinado tal como se describió anteriormente, un bit de control del DSV x2 se inserta entre DATOS2 y DATOS3, proporcionado un intervalo de datos predeterminado entre x1 y x2 para implementar un control del DSV de la misma manera. En este caso, el DSV acumulativo es la suma del DSV acumulativo para datos hasta DATOS1, el valor de DSV para xl y los datos de DSV para el segmento DATOS2.
Tal como se describió anteriormente, los bits de control del DSV se insertan de antemano en una cadena de datos antes de que la cadena de datos se module por la unidad 12 de modulación para generar un tren de bits de canal.
La figura 3 es un diagrama de bloques que muestra una configuración típica de la unidad 12 de modulación. Tal como se muestra en la figura, un registro 31 de desplazamiento desplaza datos almacenados en el mismo por 2 bits a la vez, suministrando su salida a una unidad 32 de valoración de longitud de restricción, una unidad 33 de detección de código que limita una aparición consecutiva de secuencia mínima, una unidad 34 de detección de código que garantiza un límite de longitud de secuencia y todas las unidades 35-1 a 35-4 de conversión. El registro 31 de desplazamiento suministra tantos bits como se requieren para el procesamiento a cada uno de los componentes 32 a 35.
La unidad 32 de valoración de longitud de restricción determina la longitud de restricción i de datos y suministra la longitud i a un multiplexor 36. Cuando la unidad 33 de detección de código que limita una aparición consecutiva de secuencia mínima detecta una palabra de datos especial sujeta a una limitación de apariciones consecutivas de la secuencia mínima d, la unidad 33 de detección de código que limita una aparición consecutiva de secuencia mínima suministra una señal de detección de la misma (i = 3) que indica la longitud de restricción i a la unidad 32 de valoración de longitud de restricción. En el caso de la tabla 2, la palabra de datos especial es (110111). De la misma manera, cuando la unidad 34 de detección de código que garantiza un límite de longitud de secuencia detecta una palabra de datos especial que requiere una garantía de la secuencia máxima k, la unidad 34 de detección de código que garantiza un límite de longitud de secuencia suministra una señal de detección de la misma (i = 4) que indica la longitud de restricción i a la unidad 32 de valoración de longitud de restricción. En el caso de la tabla 2, la palabra de datos especial es (00001000) o (00000000).
Cuando una palabra de datos especial se detecta por la unidad 33 de detección de código que limita una aparición consecutiva de secuencia mínima o la unidad 34 de detección de código que garantiza un límite de longitud de secuencia, la unidad 32 de valoración de longitud de restricción pasa la longitud de restricción i de la palabra de datos especial al multiplexor 36. En ese momento, la unidad 32 de valoración de longitud de restricción puede determinar también otro valor para la longitud de restricción por sí misma. En este caso, sin embargo, la unidad 32 de valoración de longitud de restricción hace que la longitud de restricción suministrada por la unidad 33 de detección de código que limita una aparición consecutiva de secuencia mínima o la unidad 34 de detección de código que garantiza un límite de longitud de secuencia preceda a la determinada por sí misma. En otras palabras, se selecciona la longitud de restricción mayor.
Las unidades 35-1 a 35-4 de conversión forman cada una una valoración en cuanto a si se cataloga o no un código básico para datos suministrados a las mismas en una tabla de conversión incrustada en las mismas. Si se halla que el código básico está catalogado, los datos se convierten en una palabra de código representada por el código básico y la palabra de código que resulta de la conversión se suministra al multiplexor 36. Si el código básico para los datos no se cataloga en la tabla de conversión, por otro lado, las unidades 35-1 a 35-4 de conversión descartan los datos.
Debe observarse que, puesto que el aparato 12 de modulación está diseñado para la tabla de conversión de la tabla 2, cada una de las unidades 35-i de conversión está diseñada para que funcione para la conversión de datos con una longitud de restricción i hasta 4. Es decir, cada una de las unidades 35-i de conversión está diseñada para que funcione para la conversión de datos hasta una longitud de restricción máxima r de 4.
El multiplexor 36 selecciona un código que resulta de la conversión llevada a cabo por una de las unidades 35-i de conversión correspondientes a una longitud de restricción i suministrada por la unidad 32 de valoración de longitud de restricción. El código seleccionado se emite entonces por medio de una memoria 37 intermedia como datos en serie.
El sincronismo de operación de cada componente se controla en sincronización con señales de sincronismo generadas por la unidad 14 de control de sincronismo.
A continuación, se describe la operación de la realización.
En primer lugar, el registro 31 de desplazamiento suministra tantos bits de datos como se requieren en el procesamiento tal como una formación de una valoración en unidades de 2 bits a la unidad 32 de valoración de longitud de restricción, la unidad 33 de detección de código que limita una aparición consecutiva de secuencia mínima, la unidad 34 de detección de código que garantiza un límite de longitud de secuencia y todas las unidades 35-1 a 35-4 de conversión.
Dotada de una tabla de conversión incrustada tal como la de la tabla 2, la unidad 32 de valoración de longitud de restricción determina el valor de la longitud de restricción i haciendo referencia a la tabla de conversión y suministra el valor al multiplexor 36.
En la unidad 33 de detección de código que limita una aparición consecutiva de secuencia mínima, se incrusta una palabra de datos que va a sustituirse por el código de sustitución para limitar las apariciones consecutivas de la secuencia mínima d de la tabla 2 con la condición de que la siguiente palabra de código sea "010". En el caso de la tabla 2, la palabra de datos es (110111). Cuando se detectan los datos que requieren una limitación de apariciones consecutivas de la secuencia mínima d como resultado de la referencia a esta parte de la tabla de conversión, la unidad 33 de detección de código que limita una aparición consecutiva de secuencia mínima emite una señal de detección que indica la longitud de restricción i = 3 a la unidad 32 de valoración de longitud de restricción.
En la unidad 34 de detección de código que garantiza un límite de longitud de secuencia, por otro lado, se incrustan palabras de datos que van a sustituirse por los códigos de sustitución para garantizar el límite de longitud de secuencia de la tabla 2. En el caso de la tabla 2, las palabras de datos son (00001000) y (00000000). Cuando los datos que requieren una garantía de que se detecta el límite de longitud de secuencia como resultado de la referencia a esta parte de la tabla de conversión, la unidad 34 de detección de código que garantiza un límite de longitud de secuencia emite una señal de detección que indica la longitud de restricción i = 4 a la unidad 32 de valoración de longitud de restricción.
Cuando recibe una señal de detección que indica que la longitud de restricción i = 3 en el caso de la tabla 2 desde la unidad 33 de detección de código que limita una aparición consecutiva de secuencia mínima, la unidad 32 de valoración de longitud de restricción pasa el valor i = 3 al multiplexor 36, incluso si en ese momento la unidad 32 de valoración de longitud de restricción determina el valor de la longitud de restricción i por sí misma en lugar de suministrar el valor determinado por sí misma al multiplexor 36. De la misma manera, cuando recibe una señal de detección que indica que la longitud de restricción i = 4 en el caso de la tabla 2 desde la unidad 34 de detección de código que garantiza un límite de longitud de secuencia, la unidad 32 de valoración de longitud de restricción pasa el valor i = 4 al multiplexor 36, incluso si en ese momento la unidad 32 de valoración de longitud de restricción determina el valor de la longitud de restricción i por sí misma en lugar de suministrar el valor determinado por sí misma al multiplexor 36.
Esto significa que, la unidad 32 de valoración de longitud de restricción pasa el valor de la longitud de restricción i recibido desde la unidad 33 de detección de código que limita una aparición consecutiva de secuencia mínima o la unidad 34 de detección de código que garantiza un límite de longitud de secuencia al multiplexor 36 en lugar de suministrar el valor determinado por sí misma si se halla que el valor de la longitud de restricción i determinado por la unidad 33 de detección de código que limita una aparición consecutiva de secuencia mínima o la unidad 34 de detección de código que garantiza un límite de longitud de secuencia es diferente respecto al valor determinado por sí misma. En otras palabras, se selecciona la longitud de restricción mayor para transmitirla al multiplexor
36.
La figura 4 es un diagrama que muestra a modo de ejemplo el procesamiento llevado a cabo por la unidad 32 de valoración de longitud de restricción, la unidad 33 de detección de código que limita una aparición consecutiva de secuencia mínima y la unidad 34 de detección de código que garantiza un límite de longitud de secuencia mostrando un ejemplo en términos concretos.
Tal como se describió anteriormente, en la unidad 34 de detección de código que garantiza un límite de longitud de secuencia, las palabras de datos (00001000) y (00000000) de la tabla 2 se incrustan como parte de una función de la misma para determinar el valor de la longitud de restricción i. Cuando datos de 8 bits que coinciden con la palabra de datos (00001000) o (00000000) se suministran a la unidad 34 de detección de código que garantiza un límite de longitud de secuencia, la unidad 34 de detección de código que garantiza un límite de longitud de secuencia emite una señal de detección que indica que la longitud de restricción i = 4 a la unidad 32 de valoración de longitud de restricción.
En la unidad 33 de detección de código que limita una aparición consecutiva de secuencia mínima, por otro lado, la palabra de datos (110111) de la tabla 2 se incrusta como función de la misma para determinar el valor de la longitud de restricción i. Cuando datos de 6 bits que coinciden con la palabra de datos (110111) se suministran a la unidad 33 de detección de código que limita una aparición consecutiva de secuencia mínima y la palabra de código de 3 bits que resulta de la conversión que sigue a la palabra de datos es "010", la unidad 33 de detección de código que limita una aparición consecutiva de secuencia mínima emite una señal de detección que indica que la longitud de restricción i = 3 a la unidad 32 de valoración de longitud de restricción. Debe observarse que la palabra de código de 3 bits "010" es un resultado de la conversión de una cadena de datos que tiene un valor de (01), (001) o (00000) antes de la conversión. En otras palabras, la función incluye una cadena de datos (110111) + (01/001/00000). Cuando se detectan datos de 6 bits que coinciden con la palabra de datos (110111), los datos de hasta 5 bits que siguen a los datos de 6 bits se comparan con la palabra de datos (01) o (001) o (00000) para determinar si coinciden entre sí. Si los datos entrantes son (11011101), (11011001) o (11011100000), la unidad 33 de detección de código que limita una aparición consecutiva de secuencia mínima emite una señal de detección que indica que la longitud de restricción i = 3 a la unidad 32 de valoración de longitud de restricción.
En la unidad 32 de valoración de longitud de restricción, se incrustan cadenas de datos de la tabla de conversión de la tabla 2. Si datos de 6 bits que coinciden con la palabra de datos (000011), (000010), (000001) o (000000) se suministran a la unidad 32 de valoración de longitud de restricción, la unidad 32 de valoración de longitud de restricción determina que el valor de la longitud de restricción i es 3. Si datos de 4 bits que coinciden con la palabra de datos (0011), (0010) o (0001) se suministran a la unidad 32 de valoración de longitud de restricción, la unidad 32 de valoración de longitud de restricción determina que el valor de la longitud de restricción i es 2. Si datos de 2 bits que coinciden con la palabra de datos (11), (10) o (01) se suministran a la unidad 32 de valoración de longitud de restricción, la unidad 32 de valoración de longitud de restricción determina que el valor de la longitud de restricción i es 1.
Supóngase que se suministran datos de 6 bits (000010). En este caso la unidad 32 de valoración de longitud de restricción determina que el valor de la longitud de restricción i es 3. Supóngase también que 2 bits (00) siguen a los datos de 6 bits. Como resultado, datos de 8 bits que coinciden con la palabra de datos (00001000) se suministran a la unidad 34 de detección de código que garantiza un límite de longitud de secuencia, haciendo que la unidad 34 de detección de código que garantiza un límite de longitud de secuencia emita una señal de detección que indica que la longitud de restricción i = 4 a la unidad 32 de valoración de longitud de restricción. En este caso, la unidad 32 de valoración de longitud de restricción hace que la señal de detección que transporta el valor 4 de la unidad 34 de detección de código que garantiza un límite de longitud de secuencia tiene prioridad sobre el valor 3 determinado por sí misma, valorando la longitud de restricción i de modo que tiene un valor de 4.
Tal como se describió anteriormente, la longitud de restricción de datos que comprende un tren de (1) y (0) puede determinarse según la tabla de conversión de la tabla 2 haciendo referencia a una palabra de datos suministrada de hasta 8 bits correspondiente a una longitud de restricción máxima y, si es necesario, una palabra de código de 3 bits. Como alternativa, la longitud de restricción de datos que comprende un tren de (1) y (0) puede determinarse haciendo referencia a sólo una palabra de datos suministrada de hasta 11 bits.
La unidad 32 de valoración de longitud de restricción suministra el valor de la longitud de restricción i determinado de esta manera al multiplexor 36.
Debe observarse que la unidad 32 de valoración de longitud de restricción también puede determinar el valor de la longitud de restricción i en un orden ascendente de los valores de i empezando con el menor, es decir, en el orden de i = 1, i = 2, i = 3 e i = 4 opuesto al mostrado en la figura 4.
Las unidades 35-1 a 35-4 de conversión tienen cada una una tabla de conversión correspondiente a un valor de la longitud de restricción asignada a las mismas. Para ser más específicos, las unidades 35-1 a 35-4 de conversión tienen tablas de conversión para i = 1, i = 2, i = 3 e i = 4 respectivamente. Si una regla de conversión para datos suministrada a una cualquiera de las unidades 25-1 a 35-4 de conversión se cataloga en una tabla de las unidades de conversión, los 2 x i bits de los datos suministrados se convierten en 3 x i bits de un código según la regla de conversión catalogada. El código resultante se suministra entonces al multiplexor 36.
El multiplexor 36 selecciona un código resultante de la conversión llevada a cabo por una de las unidades 35-i de conversión correspondiente a una longitud de restricción i suministrada por la unidad 32 de valoración de longitud de restricción. El código seleccionado se emite entonces por medio de una memoria 37 intermedia como datos en
serie.
Tal como se muestra en la tabla 2, para la longitud de restricción i = 3, la tabla de conversión no incluye un código de sustitución para una cadena de datos (110111) que requiere una limitación en las apariciones repetitivas consecutivas de la secuencia mínima d. Supóngase que se suministra la siguiente cadena de datos:
108
En este caso, el procesamiento de conversión se lleva a cabo en el siguiente orden de palabras de datos: (11), (01), (11), (01) y así sucesivamente. Como resultado de la conversión, se genera la siguiente cadena de palabras de código (un tren de bits de canal):
109
A continuación, normalmente se aplica una modulación NRZI a la cadena generada de palabras de código con el fin de llevar a cabo la codificación de nivel. Puesto que una inversión de lógica tiene lugar con sincronismo de "1" en la señal, la cadena anterior de palabras de código se convierte en la siguiente cadena de palabras de código:
110
donde intervalos de inversión mínima de 2T continúan por toda la cadena. Cuando se graba o reproduce con una densidad de línea elevada, una cadena de códigos de este tipo se convierte en un patrón que provoca fácilmente un error en la operación de grabación o reproducción.
Supóngase que la tabla de conversión de la tabla 2 prescribe también un código de sustitución para una cadena de datos (110111) que requiere una limitación en las apariciones consecutivas repetitivas de la mínima d. Ahora, supóngase que se suministra la siguiente cadena de datos:
111
En este caso, la primera palabra de datos (11011101) en la cadena de datos comprende una palabra de datos (110111) seguida por una palabra de datos (01) que se convertirá en una cadena de palabras de código "010". Por tanto, la primera palabra de datos se convierte en la siguiente cadena de palabras de código:
1120
De manera similar, la segunda palabra de datos (11011101) en la cadena de datos comprende también la palabra de datos (110111) seguida por la palabra de datos (01) que se convertirá en la cadena de palabras de código "010". Por tanto, la primera palabra de datos se convierte en la siguiente cadena de palabras de código:
112
Como resultado, la cadena de datos se convierte en la siguiente cadena de palabras de código:
113
donde se evitan las apariciones consecutivas repetitivas de la secuencia mínima d. Es decir, se elimina un patrón que provoca fácilmente un error en la operación de grabación o reproducción con una densidad de línea elevada. Debe observarse que, en la conversión de la cadena de datos en la cadena de palabras de código descrita anteriormente, la secuencia mínima d y la secuencia máxima k se mantienen en sus respectivos valores.
Tal como se describió anteriormente, la conversión llevada a cabo por el aparato 1 de modulación se basa en la tabla de conversión de la tabla 2. Debe observarse que la conversión puede llevarse a cabo también usando la tabla de conversión de la tabla 3. En este caso, la unidad 33 de detección de código que limita una aparición consecutiva de secuencia mínima empleada en la unidad 12 de modulación mostrada en la figura 3 está dotada de la tabla C para la longitud de restricción i = 4 de la tabla 3. Por otro lado, la unidad 34 de detección de código que garantiza un límite de longitud de secuencia está dotada de la tabla A para la longitud de restricción i = 2, la tabla B para la longitud de restricción i = 3 y la tabla D para la longitud de restricción i = 4 de la tabla 3.
Además, en las tablas 2 y 3, puede cambiarse la composición de cada par de una cadena de datos y una cadena de palabras de código dentro de un grupo de la misma longitud de restricción. En el caso del grupo de la longitud de restricción i = 1 de la tabla 2, por ejemplo, la composición de cada par se muestra de forma original a continuación:
10
La composición de pares puede cambiarse de la siguiente manera:
\vskip1.000000\baselineskip
11
\vskip1.000000\baselineskip
Incluso con una composición de pares cambiada, el resto de la división del número de "1" de un elemento en una cadena de datos entre 2 que tiene un valor de 0 ó 1 siempre será igual al resto de la división del número de "1" de un elemento en la cadena de palabras de código que resulta de la conversión de la cadena de datos entre 2.
A continuación, se explica una realización que implementa un aparato de demodulación proporcionado por la presente invención haciendo referencia a la figura 5. En la presente realización, un código de longitud variable (d, k; m, n; r) = (1, 7; 2, 3; 4) se demodula de vuelta en una cadena de datos usando la tabla 2.
Tal como se muestra en la figura 5, el aparato 100 de demodulación comprende una unidad 111 de demodulación para demodular una señal recibida desde una línea de transmisión o una señal reproducida desde un medio de grabación usando una tabla de demodulación o una tabla de conversión inversa y una unidad 112 de eliminación de bits de control del DSV para extraer bits de control del DSV insertados en una cadena de datos que resulta de la demodulación en intervalos arbitrarios de la cadena de datos con el fin de restaurar la cadena de datos original. Se usa una memoria 113 intermedia para almacenar temporalmente datos en serie generados por la unidad 112 de eliminación de bits de control del DSV. Los datos almacenados en la memoria 113 intermedia se extraen mediante lectura de vuelta más tarde con una tasa de transferencia predeterminada para producir una señal de salida. Una unidad 114 de control de sincronismo genera señales de sincronismo y suministra las señales a una variedad de componentes con el fin de controlar el sincronismo de sus operaciones.
La figura 6 es un diagrama de bloques que muestra la configuración de la unidad 111 de demodulación. Tal como se muestra en la figura, la unidad 111 de demodulación tiene un comparador 121 para convertir una señal recibida desde una línea de transmisión o una señal reproducida desde un medio de grabación en datos binarios. Si la señal suministrada al comparador 121 es una señal que completa modulación NRZI (es decir, codificación de nivel), la señal se somete a un proceso de codificación NRZI inversa (es decir, un proceso de codificación marginal). Una unidad 122 de valoración de longitud de restricción determina la longitud de restricción i de una señal digital recibida desde el comparador 121. Cuando una unidad 123 de detección de código que limita una aparición consecutiva de secuencia mínima detecta un código especial para limitar apariciones consecutivas de la secuencia mínima d en la señal digital generada por el comparador 121, la unidad 123 de detección de código que limita una aparición consecutiva de secuencia mínima suministra una señal de detección del mismo (i = 3) que indica la longitud de restricción i a la unidad 122 de valoración de longitud de restricción. En el caso de la tabla 2, el código especial es "001 000 000". De la misma manera, cuando una unidad 124 de detección de código que garantiza un límite de longitud de secuencia detecta un código especial para garantizar la secuencia máxima k, la unidad 124 de detección de código que garantiza un límite de longitud de secuencia suministra una señal de detección del mismo (i = 4) que indica la longitud de restricción i a la unidad 122 de valoración de longitud de restricción. En el caso de la tabla 2, el código especial es "000 100 100 100" o "010 100 100 100".
Las unidades 125-1 a 125-4 de conversión inversa tienen cada una una tabla usada para convertir de manera inversa un código de longitud variable de n x i bits de vuelta en datos de m x i bits. En el caso de la tabla 2, las unidades 125-1 a 125-4 de conversión inversa tienen las tablas de conversión inversa para la longitud de restricción i = 1 a 4 respectivamente que son esencialmente las mismas que las tablas de conversión incrustadas en las unidades 35-1 a 35-4 de conversión descritas anteriormente. Un multiplexor 126 selecciona una de las salidas generadas por las unidades 125-1 a 125-4 de conversión inversa dependiendo de un resultado de valoración recibido de la unidad 122 de valoración de longitud de restricción.
A continuación, se explica la operación de la unidad 111 de demodulación mostrada en la figura 6. Una señal recibida desde una línea de transmisión o una señal reproducida desde un medio de grabación se suministra al comparador 121 para someterse a una comparación. Una señal emitida por el comparador 121 es una señal digital de código NRZI inverso, es decir, un código con "1" que indica un margen. La señal digital se suministra entonces a la unidad 122 de valoración de longitud de restricción para determinar la longitud de restricción i de la señal usando la tabla de conversión (hablando en un sentido estricto, la tabla de conversión inversa) de la tabla 2. Un resultado de valoración, es decir, un valor de la longitud de restricción i, producido por la unidad 122 de valoración de longitud de restricción se suministra al multiplexor 126.
Además, la señal digital emitida por el comparador 121 se suministra también a la unidad 123 de detección de código que limita una aparición consecutiva de secuencia mínima. La unidad 123 de detección de código que limita una aparición consecutiva de secuencia mínima tiene una parte de conversión inversa incrustada que incluye un código de sustitución de la tabla de inversión de la tabla 2 para limitar apariciones consecutivas de la secuencia mínima d. En el caso de la tabla 2, el código de sustitución es la palabra de código "001 000 000". Cuando se detecta un código "001 000 000 no 100" catalogado en la tabla de conversión inversa para limitar apariciones consecutivas de la secuencia mínima d a partir de los datos digitales, la unidad 123 de detección de código que limita una aparición consecutiva de secuencia mínima emite la longitud de restricción i = 3 a la unidad 122 de valoración de longitud de
restricción.
Además, la señal digital emitida por el comparador 121 se suministra también a la unidad 124 de detección de código que garantiza un límite de longitud de secuencia. La unidad 124 de detección de código que garantiza un límite de longitud de secuencia tiene una parte de conversión inversa incrustada que incluye códigos de sustitución de la tabla de inversión de la tabla 2 para mantener la secuencia máxima k. En el caso de la tabla 2, los códigos de sustitución son las palabras de código "000 100 100 100" y "010 100 100 100". Cuando se detecta la palabra de código "000 100 100 100" o "010 100 100 100" catalogada en la tabla de conversión inversa para mantener la secuencia máxima k a partir de los datos digitales, la unidad 124 de detección de código que garantiza un límite de longitud de secuencia emite la longitud de restricción i = 4 a la unidad 122 de valoración de longitud de restricción.
La figura 7 es un diagrama que muestra un resumen del procesamiento para determinar la longitud de restricción i de un código modulado suministrado al aparato 100 de demodulación. Tal como se muestra en la figura, la unidad 124 de detección de código que garantiza un límite de longitud de secuencia tiene una parte de conversión inversa incrustada que incluye las palabras de código "000 100 100 100" y "010 100 100 100" de la tabla de inversión de la tabla 2. Cuando una cadena de palabras de código de 12 bits suministrada a la unidad 124 de detección de código que garantiza un límite de longitud de secuencia coincide con cualquiera de las palabras de código en la parte de conversión inversa, la unidad 124 de detección de código que garantiza un límite de longitud de secuencia emite la longitud de restricción i = 4 a la unidad 122 de valoración de longitud de restricción.
De la misma manera, la unidad 123 de detección de código que limita una aparición consecutiva de secuencia mínima tiene una parte de conversión inversa incrustada que incluye la palabra de código "001 000 000" de la tabla de inversión de la tabla 2. Cuando una cadena de palabras de código de 12 bits suministrada a la unidad 123 de detección de código que limita una aparición consecutiva de secuencia mínima coincide con "001 000 000 no 100", la unidad 123 de detección de código que limita una aparición consecutiva de secuencia mínima emite la longitud de restricción i = 3 a la unidad 122 de valoración de longitud de restricción. Debe observarse que los 12 bits detectados de la cadena de palabras de código son realmente "001 000 000 010" aunque no tenga nada que ver con la determinación de la longitud de restricción i en particular.
La unidad 122 de valoración de longitud de restricción tiene una tabla de conversión inversa incrustada de la tabla 2. Si una cadena de palabras de código de 9 bits suministrada a la unidad 122 de valoración de longitud de restricción es "000 100 100" o "010 100 100" o si una cadena de palabras de código de 12 bits suministrada a la misma es "000 100 000 no 100" o "010 100 000 no 100", la unidad 122 de valoración de longitud de restricción determina que la longitud de restricción i es 3. Si una cadena de palabras de código de 6 bits suministrada a la unidad 122 de valoración de longitud de restricción es "010 100" o "000 100", o si una cadena de palabras de código de 9 bits suministrada a la misma es "010 000 no 100", por otro lado, la unidad 122 de valoración de longitud de restricción determina que la longitud de restricción i es 2. De otro modo, si una cadena de palabras de código de 3 bits suministrada a la unidad 122 de valoración de longitud de restricción es "000", "101", "001" o "010" la unidad 122 de valoración de longitud de restricción determina que la longitud de restricción i es 1.
Debe observarse que la unidad 122 de valoración de longitud de restricción, la unidad 123 de detección de código que limita una aparición consecutiva de secuencia mínima y la unidad 124 de detección de código que garantiza un límite de longitud de secuencia también pueden llevar a cabo cada una el procesamiento en un orden ascendente de los valores de i empezando con el más pequeño, es decir, en el orden de i = 1, i = 2, i = 3 e i = 4 opuesto al mostrado en la figura 7.
Supóngase que la unidad 122 de valoración de longitud de restricción también puede determinar el valor de la longitud de restricción i en el orden de i = 2/ i = 3 e i = 4 y una cadena de palabras de código "000 100 100 100" se suministra a la unidad 122 de valoración de longitud de restricción. La unidad 122 de valoración de longitud de restricción compara la cadena de palabras de código suministrada a la misma con palabras de código en la tabla de conversión incrustada en un orden ascendente de los valores de la longitud de restricción i empezando con el más pequeño para formar una valoración en cuanto a si la cadena de palabras de código coincide o no con las palabras de código. La cadena de palabras de código "000 100 100 100" suministrada a la unidad 122 de valoración de longitud de restricción coincide con una de las palabras de código para todas las longitudes de restricción i = 1, i = 2, i = 3 e i = 4. En un caso tal, como regla de determinación, se selecciona la longitud de restricción mayor y se suministra al multiplexor 126.
La tabla de conversión inversa de la unidad 125-1 de conversión inversa se implementa como una memoria en la que un fragmento de datos (11) se almacena en las direcciones "101" y "000" mientras que los fragmentos de datos (10) y (01) se almacenan en las direcciones "001" y "010" respectivamente. Las tablas de conversión inversa de las unidades 125-2 y 125-4 de conversión inversa se implementan cada una como una memoria para almacenar datos de la misma manera que la unidad 125-1 de conversión inversa. Una cadena de palabras de código de 3 X i bits suministrada a la unidad 125-i de conversión inversa se convierte de vuelta en una cadena de datos de 2 X i bits que se suministra entonces al multiplexor 126.
El multiplexor 126 selecciona una de las cadenas de datos suministradas por las unidades 125-1 a 125-4 de conversión inversa según un resultado de determinación del valor de la longitud de restricción i emitido por la unidad 122 de valoración de longitud de restricción.
La tabla 4 es la tabla de conversión inversa para la tabla 2.
\vskip1.000000\baselineskip
\vskip1.000000\baselineskip
TABLA 4
12
La figura 8 es un diagrama de flujo usado como referencia para explicar operaciones llevadas a cabo por la unidad 112 de eliminación de bits de control del DSV. La unidad 112 de eliminación de bits de control del DSV está dotada de un contador interno. Tal como se muestra en la figura, el diagrama de flujo empieza con una etapa S1 en la que el número de bits en una cadena de datos suministrada por la unidad 111 de demodulación se cuenta por el contador interno. El flujo del procesamiento pasa entonces a una etapa S2 para formar una valoración en cuanto a o si el número de bits ha alcanzado o no un valor que representa un intervalo de datos predeterminado en el que se inserta un bit de control del DSV. Si el resultado de la valoración indica que el número de bits no corresponde a un intervalo de datos arbitrario, el flujo del procesamiento prosigue a una etapa S3 en la que los datos suministrados por la unidad 111 de demodulación se emiten a la memoria 113 intermedia tal como son. Si el resultado de la valoración indica que el número de bits corresponde al intervalo de datos predeterminado, indicando que el bit actual es un bit de control del DSV, por otro lado, se salta el procesamiento de la etapa S3. Es decir, el bit actual de la cadena de datos se descarta en lugar de emitirse a la memoria 113 intermedia en este caso.
En cualquier caso, el flujo del procesamiento prosigue a una etapa S4 en la que se lleva a cabo el procesamiento para introducir una siguiente cadena de datos. El flujo del procesamiento continúa entonces a una etapa S5 para formar una valoración en cuanto a si se ha completado o no el procesamiento de todos los datos. Si existen datos que siguen debiendo procesarse, el flujo de procesamiento vuelve a la etapa SI para repetir la ejecución del procesamiento. Si el resultado de la valoración formada en la etapa S5 indica que se han procesado todos los datos, por otro lado, se finaliza el procesamiento.
Como resultado, los bits de control del DSV se eliminan de los datos emitidos por la unidad 112 de eliminación de bits de control del DSV. Los datos se emiten entonces mediante la memoria 113 intermedia.
Según la descripción dada anteriormente, la unidad 111 de demodulación usa la tabla de conversión de la tabla 2 o, hablando en un sentido estricto, la tabla de conversión inversa de la tabla 4. Debe observarse que puede llevarse a cabo un procesamiento similar usando la conversión de la tabla 3 o, hablando en un sentido estricto, la tabla de conversión inversa de la tabla 5 dada a continuación. En este caso, la unidad 123 de detección de código que limita una aparición consecutiva de secuencia mínima empleada en la unidad 111 de modulación mostrada en la figura 6 está dotada de la tabla C para la longitud de restricción i = 4 de la tabla 3. Por otro lado, la unidad 124 de detección de código que garantiza un límite de longitud de secuencia está dotada de la tabla A para la longitud de restricción i = 2, la tabla B para la longitud de restricción i = 3 y la tabla D para la longitud de restricción i = 4 de la tabla 3.
TABLA 5
13
14
Además, hay casos en los que es necesario insertar una señal de sincronización (Sinc) en datos. A continuación, se describen realizaciones que implementan un aparato 1 de modulación y un aparato 100 de demodulación que pueden funcionar con datos con señales de sincronización insertadas haciendo referencia a las figuras 9 y 10 respectivamente. También en el caso de estas realizaciones, se modula una cadena de datos en un código de longitud variable (d, k; m, n; r) = (1, 7; 2, 3; 4).
En otro aparato de modulación de la presente invención mostrado en la figura 9 en el que señales de sincronización se insertan en intervalos predeterminados, la salida de una unidad 11 de determinación/inserción de bits de control del DSV se suministra a una unidad 211 de determinación de señales de sincronización. También se suministra a la unidad 211 de determinación de señales de sincronización la salida de una unidad 12 de modulación. Cuando la unidad 211 de determinación de señales de sincronización determina una señal de sincronización a partir de las señales suministradas por la unidad 11 de determinación/inserción de bits de control del DSV y la unidad 12 de modulación, la unidad 211 de determinación de señales de sincronización emite una señal de sincronización a una unidad 212 de inserción de señales de sincronización. La unidad 212 de inserción de señales de sincronización inserta la señal de sincronización suministrada por la unidad 211 de determinación de señales de sincronización en una señal modulada suministrada por la unidad 12 de modulación y suministra la salida de la misma a una unidad 13 de codificación NRZI. El resto de la configuración es el mismo que el aparato 1 de modulación mostrado en la figura 1.
En el caso de un patrón de una palabra de código de 24 bits que sirve como señal de sincronización, la señal de sincronización se convierte por la unidad 211 de determinación de señales de sincronización según la tabla 2 en el siguiente código:
114
donde el símbolo # designa un bit que depende de una cadena de datos que precede inmediatamente, incluyendo un bit de control del DSV si hay alguno, delimitada por la inserción de la señal de sincronización. Para ser más específicos, cuando se usa una tabla de terminación para la terminación en una operación para modular la cadena de datos delimitada usando la tabla de conversión, "#" = "1". Cuando se usa la tabla 2 para la terminación en lugar de la tabla de terminación, por otro lado, "#" = "0". Por tanto, la unidad 12 de modulación emite "#" = "1" o "#"' = "0" a la unidad 211 de determinación de señales de sincronización cuando se usa o no se usa la tabla de terminación respectivamente. Al recibir el valor de "#" desde la unidad 12 de modulación, la unidad 211 de determinación de señales de sincronización adjunta el valor de "#" en la cabecera de una señal de sincronización y entonces emite la señal de sincronización a la unidad 212 de inserción de señales de sincronización.
La unidad 212 de inserción de señales de sincronización inserta la señal de sincronización suministrada por la unidad 211 de determinación de señales de sincronización en una señal modulada suministrada por la unidad 12 de modulación y suministra el resultado de la misma a la unidad 13 de codificación NRZI. El resto del procesamiento es el mismo que el aparato 1 de modulación mostrado en la figura 1.
Los primeros datos que siguen a la señal de sincronización insertada se convierten empezando con la cabecera de los mismos sin considerar los datos que preceden inmediatamente a la señal de sincronización. La unidad 12 de modulación y la unidad 211 de determinación de señales de sincronización están dotadas cada una de un contador para contar el número de intervalos predeterminados en los que se insertan señales de sincronización. El contenido del contador se usa para determinar la posición de una señal de sincronización.
Tal como se describió anteriormente, la realización mostrada en la figura 9 usa la tabla de conversión de la tabla 2. Debe observarse que puede usarse también la tabla de conversión de la tabla 3. En este caso, la unidad 211 de determinación de señales de sincronización adopta una palabra de código de 12 bits dada a continuación como patrón de la señal de sincronización:
115
\global\parskip0.870000\baselineskip
donde el símbolo "x" designa un bit que depende de las cadenas de datos que preceden y suceden inmediatamente, incluyendo un bit de control del DSV si hay alguno, delimitadas por la inserción de la señal de sincronización. Los 3 bits en la cabecera y los 3 bits en la cola de la señal de sincronización se determinan mediante la tabla 3 de la siguiente manera. Supóngase que (p) es la última cadena de datos delimitada por la inserción de la señal de sincronización y (q) es la primera cadena de datos que sigue inmediatamente a la señal de sincronización. Una cadena de datos (pl) se convierte en los 3 bits en la cabecera de la señal de sincronización mientras que una cadena de datos (0q) se convierte en los 3 bits en la cola de la señal de sincronización usando la tabla 3. Los 3 bits en la cabecera y los 3 bits en la cola de la señal de sincronización que resultan de la conversión intercalan los bits centrales "100 000 000" para producir el patrón. Al hacer esto, puede generarse una señal de sincronización que rompe la secuencia máxima k requerida aunque siempre la mantiene en k = 8 (9T).
La figura 10 es un diagrama de bloques que muestra una configuración típica de una realización que implementa otro aparato 100 de demodulación para demodular un código que resulta de la modulación llevada a cabo por el aparato 1 de modulación mostrado en la figura 9. Tal como se muestra en la figura 10, en la presente realización, una señal entrante transmitida a través de un trayecto de transmisión predeterminado se suministra a una unidad 111 de demodulación y una unidad 221 de identificación de señales de sincronización. La unidad 221 de identificación de señales de sincronización usa la señal entrante y una señal recibida de la unidad 111 de demodulación para identificar una señal de sincronización, emitiendo la señal de sincronización a una unidad 222 de eliminación de señales de sincronización. La unidad 222 de eliminación de señales de sincronización elimina una señal de sincronización de una señal demodulada suministrada por la unidad 111 de demodulación según la señal emitida por la unidad 221 de identificación de señales de sincronización. La señal demodulada con sus señales de sincronización eliminadas se suministra entonces a una unidad 112 de eliminación de bits de control del DSV. El resto de la configuración es el mismo que el aparato 100 de demodulación mostrado en la figura 5.
La unidad 221 de identificación de señales de sincronización tiene un contador incrustado para contar el número de palabras de código. El contenido del contador se usa para determinar la posición de cada una de las señales de sincronización que se insertan en la cadena de palabras de datos en intervalos predeterminados. Después de haber identificado la posición de un patrón de señal de sincronización, se extrae mediante lectura el bit "#" determinado en la modulación. Es decir, el bit en la cabecera de la señal de sincronización se extrae mediante lectura y se emite a la unidad 111 de demodulación. Si el bit de cabecera es "1", la unidad 111 de demodulación usa la tabla de terminación de la tabla 2 en la demodulación precediendo un código inmediatamente a la señal de sincronización. Si el bit de cabecera es "0", por otro lado, la unidad 111 de demodulación usa una tabla de códigos de conversión en la tabla 2 en la demodulación precediendo un código inmediatamente a la señal de sincronización. Los bits restantes de la señal de sincronización se descartan puesto que no transportan información.
La unidad 221 de identificación de señales de sincronización emite una señal de identificación para identificar bits que componen una señal de sincronización a la unidad 222 de eliminación de señales de sincronización. La unidad 222 de eliminación de señales de sincronización elimina una señal de sincronización de una señal demodulada suministrada por la unidad 111 de demodulación según la señal de identificación emitida por la unidad 221 de identificación de señales de sincronización. La señal demodulada con sus señales de sincronización eliminadas se suministra entonces a una unidad 112 de eliminación de bits de control del DSV.
Tal como se describió anteriormente, el aparato 100 de demodulación mostrado en la figura 10 usa la tabla de conversión de la tabla 2. Debe observarse que la tabla 3 puede usarse igualmente. En este caso, por ejemplo, la unidad 221 de identificación de señales de sincronización usa el contenido del contador para determinar la posición de cada una de las señales de sincronización que se insertan en la cadena de palabras de datos en intervalos predeterminados. Después de haber identificado la posición de un patrón de señal de sincronización, la unidad 221 de identificación de señales de sincronización emite señales que especifican las palabras de código de 3 bits en la cabecera y la cola del patrón de señal de sincronización a la unidad 111 de demodulación para solicitar a la unidad 111 de demodulación que estas palabras de código también se demodulen puesto que incluyen cada una una cadena de datos.
La unidad 221 de identificación de señales de sincronización emite una señal que especifica bits del patrón único de la señal de sincronización excluyendo las palabras de código que incluyen cadenas de datos a la unidad 222 de eliminación de señales de sincronización. Por tanto, la unidad 222 de eliminación de señales de sincronización puede eliminar sólo los bits de señal de sincronización, es decir, los bits del patrón único, especificados por la señal recibida desde la unidad 222 de identificación de señales de sincronización.
La figura 11 es un diagrama que muestra un ejemplo de un código para la grabación con señales de sincronización y bits de control del DSV insertados en el mismo. En este ejemplo, se usa una palabra de código de 24 bits como señal de sincronización. El control del DSV se ejecuta en intervalos de 56 bits de datos y se inserta una señal de sincronización para cada 5 ejecuciones del control del DSV. Por tanto, el número de palabras de código, es decir, el número de bits de canal por cada señal de sincronización es:
24 + (1 + 56 + 1 + 56 + 1 + 56 + 1 + 56 + 1 + 56 + 1) X 1,5 = 453 palabras de código (bits de canal).
La redundancia relativa introducida en las palabras de datos es aproximadamente de un 7,3% tal como resulta evidente a partir del siguiente cálculo:
Cantidad de datos = (56 X 5) 1,5/453 = 420/453 = 0,927
\global\parskip1.000000\baselineskip
Por tanto, la redundancia relativa = 1 - 0,927 = 0,0728 = 7,3%.
Los inventores y algunas otras personas ejecutan simulaciones usando las tablas de conversión descritas anteriormente para producir resultados de modulación. A continuación se describen los resultados de modulación de una cadena de datos que incluye bits de control del DSV insertados con apariciones consecutivas de Tmin limitado. En la simulación, se usaron las tablas 2 y 3. También se ejecutó una simulación que usa la tabla 1 para la modulación RLL (1 - 7) convencional con fines comparativos.
En las simulaciones, el control del DSV se ejecutó insertando 1 bit de control del DSV por cada 56 bits de datos de datos aleatorios que comprenden 13.107.200 bits hechos arbitrariamente y entonces los datos se convirtieron en una cadena de palabras de código (o un tren de bits de canal) usando la tabla de código de conversión de la tabla 2 ó 3. En otra simulación, datos aleatorios que comprenden 13.107.200 bits hechos arbitrariamente se convirtieron en una cadena de palabras de código (o un tren de bits de canal) usando la tabla de código de conversión de la tabla 1 y 2 bits de canal se insertaron entonces como bits de control del DSV por cada 112 palabras de código o 112 bits de canal de la cadena de palabras de código resultante con el fin de ejecutar el control del DSV.
El motivo por qué, en la simulación que usa la tabla 2 ó 3, se insertó 1 bit de control del DSV por cada 56 bits de datos mientras que, en la simulación que usa la tabla 1, se insertaron 2 bits de control del DSV por cada 112 palabras de código es hacer que la redundancia relativa provocada por los bits de control del DSV sea uniforme para ambas simulaciones. Si el número de bits requerido para el control del DSV en un caso es diferente del de otro caso y la redundancia relativa debe hacerse uniforme para ambos casos, la tabla 2 ó 3 que permite ejecutar el control del DSV con un alto grado de eficacia proporciona una buena característica de banda baja en comparación con la tabla 1.
Se calculan valores numéricos de los resultados de simulación de la siguiente manera:
Ren_cnt [1 a 101: números de ocurrencias de 1 única secuencia mínima a 10 secuencias mínimas consecutivas.
T_tamaño [2 a 10] números de ocurrencias de la secuencia 2T a la secuencia 10T.
Suma: el número de bits
Total: el número de longitudes de secuencia, es decir, el número total de números de ocurrencia de la secuencia 2T, la secuencia 3T, etc.
Secuencia promedio: (Suma/Total)
Valores numéricos de la distribución de secuencias: (T_tamaño [i] * (i)/Suma) donde i = 2, 3, 4, ... 10
\vskip1.000000\baselineskip
Los valores numéricos en las filas 2T a 10T de la tabla 6 son los valores numéricos de la distribución de secuencias. Valores numéricos de la distribución de las secuencias mínimas consecutivas:
(Ren_cnt [i] * (i))/T_tamaño [2T] donde i= 1, 2, 3, 4,...10.
Los valores numéricos en las filas RMTR (1) a RMTR (9) de la tabla 6 son los valores numéricos de la distribución de las secuencias mínimas consecutivas.
Max_RMTR: el número máximo de DSV de pico de repeticiones de secuencias mínimas: picos de valores DSV calculados en los lados positivo y negativo observados en un proceso de ejecución del control del DSV en un tren de bits de canal.
El cálculo de la redundancia relativa provocada por la inserción de 1 bit de DSV por cada 56 bits de datos se basa en el hecho de que existe 1 bit de DSV por cada 56 bits de datos. Por tanto, la redundancia relativa se calcula de la siguiente manera:
Redundancia relativa = 1/(1 + 56) = 1,75%
El cálculo de la redundancia relativa provocada por la inserción de 2 bits de DSV por cada 112 bits de código se basa en el hecho de que existen 2 bits de DSV por cada 112 bits de palabra de código. Por tanto, la redundancia relativa se calcula de la siguiente manera:
Redundancia relativa = 2/(2 + 112) = 1,75%
Por tanto, se obtiene la misma redundancia para ambos casos.
TABLA 6
15
Los resultados dados anteriormente verifican que, usando las tablas 2 y 3, se implementa el sistema de RLL (1, 7) mientras que, al mismo tiempo, se mantienen las secuencias mínimas y máximas y el número de apariciones consecutivas de la secuencia mínima se limita a 6. Además, los resultados de los DSV verifican que el control del DSV puede ejecutarse en una cadena de datos (es decir, los valores del DSV pico están contenidos en un intervalo predeterminado) y, en este caso, puesto que la eficacia de bits de control del DSV es elevada, es posible obtener componentes de banda baja que son más satisfactorios que el procedimiento convencional de insertar bits de DSV en una cadena de palabras de código (un tren de bits de canal). Los resultados de DSV verifican que, en el caso de la tabla 1, la diferencia entre los DSV pico positivos y negativos es de 89 (= 46 + 43) mientras que, en el caso de las tablas 2 y 3, las diferencias son 72 (= 36 + 36) y 75 (= 35 + 40) respectivamente que son ambas más pequeñas que el valor para la tabla 1.
Resulta evidente a partir de la descripción anterior que, en comparación con el sistema de RLL (1-7) convencional, es decir, el sistema basado en la tabla 1, el denominado sistema de 17PP que usa la tabla 2 ó 3 puede limitar el número de repeticiones de secuencias mínimas a 6 como mucho. Como resultado, puede esperarse la mejora de la característica de error con una densidad de línea elevada.
Además, puesto que la eficacia del control del DSV es excelente, la ejecución del control del DSV en el sistema de 17PP con la misma redundancia relativa del 1,75% que el sistema de RLL (1 - 7) convencional da como resultado una diferencia menor entre los valores pico negativos y positivos. Como resultado, puesto que pueden suprimirse los componentes de banda baja, pueden llevarse a cabo operaciones de grabación/reproducción de datos estables.
Además, también se ejecutó una simulación para examinar la propagación de un error de demodulación provocado por un desplazamiento de bits en un tren de bits de canal generado a partir de los mismos datos aleatorios que en el caso descrito anteriormente. Un resultado del examen indica que la peor propagación de error en el sistema de 17PP son 3 bytes. Sin embargo, el resultado también verifica que la frecuencia de la generación real del error es todo menos 0, un valor que no indica tanto deterioro en comparación con el sistema de RLL (1 - 7) convencional. Se han verificado tasas de error de bytes promedio de 1,014 bytes para la tabla 1, 1,167 bytes para la tabla 2 y 1,174 bytes para la tabla 3. Debe observarse que, para las tablas de conversión proporcionadas por la presente invención, los valores numéricos de los resultados de tasa de error incluyen bits de control del DSV aunque, para el sistema de RLL (1 - 7) convencional, el valor numérico no incluye bits de control del DSV. Es decir, no puede afirmarse necesariamente que las mediciones se hayan llevado a cabo en las mismas condiciones. La diferencia en la condición de medición puede afectar a los valores numéricos y por tanto es necesario tener en cuenta el efecto de la diferencia en los valores en la comparación.
\vskip1.000000\baselineskip
TABLA 7
17
\vskip1.000000\baselineskip
Promedio Tasa de error de bytes 1,167 bytes 1,174 bytes 1,014 bytes
Tal como se describió anteriormente, en la presente realización, las tablas de conversión con una secuencia mínima d de 1, una secuencia máxima k de 7 y una tasa de conversión m/n de 2/3 incluyen códigos de sustitución para limitar el número de apariciones consecutivas de longitud de secuencia mínima, dando lugar a los siguientes efectos:
(1) Se mejora el rendimiento de grabación y reproducción con una densidad de línea elevada y la tolerancia frente a una distorsión tangencial.
(2) Es posible reducir el número de partes de nivel bajo, aumentar la precisión de procesamiento de ondas tal como el AGC y el PLL y, por tanto, mejorar la característica global.
(3) En comparación con el sistema convencional, es posible tener un diseño con una longitud reducida de memoria de trayecto de código abi de bits o similar y, por tanto, reducir el tamaño del circuito.
Además, el resto de la división del número de "1" de un elemento en una cadena de datos entre 2 que tiene un valor de 0 ó 1 siempre será igual al resto de la división del número de "111" de un elemento en la cadena de palabras de código que resulta de la conversión de la cadena de datos entre 2, proporcionado los siguientes efectos adicionales:
(4) Puede reducirse el número de bits redundantes para el control del DSV.
(5) En una secuencia mínima d de 1 y parámetros de conversión (m, n) de (2, 3), el control del DSV puede ejecutarse con una palabra de código de 1,5 bits.
(6) Además de una baja redundancia relativa pueden mantenerse las secuencias mínimas y máximas d y k.
Además, las tablas de conversión incluyen especialmente códigos de sustitución para mantener el límite de longitud de secuencia, dando lugar a los siguientes efectos adicionales:
(7) Las tablas son compactas.
(8) La propagación de un error de modulación provocado por un desplazamiento de bits puede ponerse en el mismo estado que el sistema convencional basado en la tabla 1.
Debe observarse que, como medio de presentación de programa para presentar un programa informático que va a ejecutarse para llevar el procesamiento descrito anteriormente, pueden usarse una CD-ROM y una memoria de estado sólido, medios de comunicación tales como una red y un satélite además de un medio de grabación tal como un disco magnético.
Efectos de la invención
Tal como se describió anteriormente, según un aparato de modulación reivindicado en la reivindicación 1, un procedimiento de modulación reivindicado en la reivindicación 23, un medio de presentación de programa reivindicado en la reivindicación 24, un aparato de demodulación reivindicado en la reivindicación 25, un procedimiento de demodulación reivindicado en la reivindicación 28 y un medio de presentación de programa reivindicado en la reivindicación 29, se lleva a cabo un procesamiento de conversión basándose en una tabla de conversión que implementa una regla de conversión, según la que el resto de la división de un número de "1" de un elemento en una cadena de datos entre 2 que tiene un valor de 0 ó 1 siempre será igual al resto de la división de un número de "1" de un elemento en la cadena de palabras de código que resulta de la conversión de la cadena de datos entre 2 y códigos de conversión de la tabla de conversión que comprende:
- códigos básicos;
- primeros códigos de sustitución para limitar el número de apariciones consecutivas de dicha secuencia mínima d; y
- segundos códigos de sustitución para mantener dicho límite de longitud de secuencia k, teniendo el código variable restricciones d = 1, m = 2 y n = 3, teniendo el código variable una restricción adicional k = 7, y porque se proporciona una conversión de códigos básicos que falta en la tabla de conversión mediante la conversión de códigos de sustitución.
Como resultado, el control del DSV puede ejecutarse usando un número pequeño de bits redundantes y una cadena de palabras de código puede grabarse y reproducirse con pocos errores con una densidad de línea elevada. Además, puede suprimirse el crecimiento de la propagación de un error de demodulación provocado por un desplazamiento de bits.
Lista de números de referencia principales
11
Unidad de determinación/inserción de bits de control del DSV
12
Unidad de modulación
13
Unidad de codificación NRZI
31
Registro de desplazamiento
32
Unidad de valoración de longitud de restricción
33
Unidad de detección de código que limita una aparición consecutiva de secuencia mínima
34
Unidad de detección de código que garantiza un límite de longitud de secuencia
35-1 a 35-4
Unidades de conversión
36
Multiplexor
37
Memoria intermedia
111
Unidad de demodulación
112
Unidad de eliminación de bits de control del DSV
121
Comparador
122
Unidad de valoración de longitud de restricción
123
Unidad de detección de código que limita una aparición consecutiva de secuencia mínima
124
Unidad de detección de código que garantiza un límite de longitud de ejecución
125-1 a 125-4
Unidades de conversión inversa
126
Multiplexor

Claims (29)

1. Aparato de modulación para convertir datos de entrada divididos en palabras de datos con una longitud de palabra de datos que es igual a o es un múltiplo de m bits en un código (d, k; m, n) de longitud variable en el que cada palabra de código tiene una longitud de palabra de código que es igual a o es un múltiplo de una longitud de palabra de código básico de n bits, donde d es una secuencia mínima y k es un límite de longitud de secuencia, teniendo dicho aparato de modulación medios de conversión para convertir palabras de datos de entrada en palabras de código según una tabla de conversión implementando dicha tabla de conversión una regla de conversión, según la que el resto de la división de un número de "1" de un elemento en una cadena de datos entre 2 con un valor de 0 ó 1 será siempre igual al resto de la división de un número de "1" de un elemento en la cadena de palabras de código resultantes de la conversión de dicha cadena de datos entre 2 y las palabras de código de conversión de dicha tabla de conversión comprenden:
-
palabras de código básico para d = 1, k = 7, m = 2 y n = 3;
-
primeras palabras de código de sustitución para limitar el número de apariciones consecutivas de dicha secuencia mínima d; y
-
segundas palabras de código de sustitución para mantener dicho límite de longitud de secuencia k,
caracterizado porque
- las primeras palabras de código de sustitución tienen una longitud de palabra de código que es tres veces la longitud de palabra de código básico,
- las segundas palabras de código de sustitución tienen una longitud de palabra de código que es cuatro veces la longitud de palabra de código básico
y porque las palabras de código de conversión comprenden además:
- una palabra de código de terminación que tiene una longitud de palabra de código igual a la longitud de palabra de código básico para terminar la conversión de código que resulta de la conversión en cualquier posición arbitraria.
2. Aparato de modulación según la reivindicación 1, en el que las palabras de código de conversión comprenden además:
- una segunda palabra de código de terminación que tiene una segunda longitud de palabra de código igual al doble de la longitud de palabra de código básico para terminar la conversión de código que resulta de la conversión en cualquier posición arbitraria.
3. Aparato de modulación según la reivindicación 1, caracterizado porque dichos códigos básicos de dichas tablas de conversión tienen una estructura de longitud variable.
4. Aparato de modulación según la reivindicación 1, caracterizado porque dichos códigos básicos de dichas tablas de conversión incluyen un código "*0*" en el que el símbolo * es un código indeterminado que es "0" si una palabra de código que precede o sucede inmediatamente es "1" y "1" si dicha palabra de código que precede o sucede inmediatamente es "0", lo que implica que dicho código "*0*" es o bien "000" o bien "101".
5. Aparato de modulación según la reivindicación 1, caracterizado porque dichos códigos de conversión de dichas tablas de conversión incluyen códigos determinados cada uno haciendo referencia a una cadena de palabras de código que sucede inmediatamente o una cadena de datos que sucede inmediatamente.
6. Aparato de modulación según la reivindicación 5, caracterizado porque dichos códigos determinados cada uno haciendo referencia a una cadena de palabras de código que sucede inmediatamente o una cadena de datos que sucede inmediatamente son dichos primeros o segundos códigos de sustitución.
7. Aparato de modulación según la reivindicación 1, caracterizado porque el número de pares que comprenden cada uno una cadena de datos y una cadena de códigos que compone dichos códigos básicos para una longitud de restricción i de 1 es igual a 4 (= 2 ^ m = 2 ^ 2).
8. Aparato de modulación según la reivindicación 1, caracterizado porque para unas longitudes de restricción i de 2 y superiores, dichos códigos de conversión son todos dichos primeros y segundos códigos de sustitución.
9. Aparato de modulación según la reivindicación 1, caracterizado porque dichos códigos de conversión para una longitud de restricción i de 2 son códigos para mantener dicha secuencia mínima d en 1.
\newpage
10. Aparato de modulación según la reivindicación 1, caracterizado porque dicho aparato tiene además medios de inserción de señal de sincronización para insertar una señal de sincronización que incluye un patrón único no incluido en dichos códigos de conversión de dicha tabla de conversión en cualquier posición arbitraria en dicha cadena de palabras de código.
11. Aparato de modulación según la reivindicación 10, caracterizado porque dicho patrón único es un patrón que rompe dicha secuencia máxima k.
12. Aparato de modulación según la reivindicación 10, caracterizado porque dicho patrón único es un patrón que mantiene dicha secuencia mínima d.
13. Aparato de modulación según la reivindicación 10, caracterizado porque un patrón único en dicha señal de sincronización comprende 1 palabra de código en la cabecera de la misma que sirve como bit de conexión con una palabra de código que resulta de la conversión de hasta datos inmediatamente precedentes, un segundo bit para mantener dicha secuencia mínima d y un tercer bit.
14. Aparato de modulación según la reivindicación 10, caracterizado porque dicha señal de sincronización tiene un tamaño de al menos 12 palabras de código.
15. Aparato de modulación según la reivindicación 10, caracterizado porque para una señal de sincronización con un tamaño de al menos 21 palabras de código, dicha señal de sincronización incluye al menos 2 patrones con una secuencia máxima k de 8.
16. Aparato de modulación según la reivindicación 10, caracterizado porque dichos códigos de conversión de dicha tabla de conversión incluyen códigos de terminación para terminar cada uno dicho código que resulta de la conversión.
17. Aparato de modulación según la reivindicación 16, caracterizado porque dichos códigos de terminación se prescriben para dichos códigos básicos con una longitud de restricción i, para los que el número de pares que comprende cada uno una cadena de datos y una cadena de códigos que compone dichos códigos básicos es menor que 4 (= 2 ^ m = 2 ^ 2), e implementa una regla de conversión, según la que el resto de la división de un número de "1" de un elemento en una cadena de datos entre 2 que tiene un valor de 0 ó 1 será siempre igual al resto de la división de un número de "1" de un elemento en la cadena de palabras de código que resulta de la conversión de dicha cadena de datos entre 2.
18. Aparato de modulación según la reivindicación 16, caracterizado porque con el fin de identificar dicho código de terminación, 1 palabra de código en la cabecera de dicho patrón de señal de sincronización que sirve como bit de conexión se establece en "1" cuando se usa dicho código de terminación y en "0" cuando no se usa dicho código de terminación.
19. Aparato de modulación según la reivindicación 10, caracterizado porque dicho patrón único está intercalado entre 3 bits en la cabecera de dicha señal de sincronización y 3 bits en la cola de dicha señal de sincronización y dichos 3 bits en dicha cabecera y 3 bits en dicha cola se usan cada uno como una unión que comprende datos mixtos y bits de conexión.
20. Aparato de modulación según la reivindicación 10, caracterizado porque: el primero de entrada de los 3 bits en la cabecera de dicha señal de sincronización tiene un valor que representa palabras de datos antes de su conversión vistas en unidades de bit m;
el segundo subsiguiente de dichos 3 bits se establece en "1" para prescribir dicha señal de sincronización;
el primero de entrada de los 3 bits en la cola de dicha señal de sincronización se establece en "0" para prescribir dicha señal de sincronización; y
el segundo subsiguiente de dichos 3 bits en dicha cola tiene un valor que representa dicha palabras de datos antes de su conversión vistas en unidades de bit m.
21. Aparato de modulación según la reivindicación 1, caracterizado porque dicho aparato tiene además medios de control DSV para controlar un DSV de datos de entrada y suministrar dicho DSV a dichos medios de conversión.
22. Aparato de modulación según la reivindicación 1, caracterizado porque dichos medios de conversión comprenden:
unos primeros medios de detección de código para detectar dichos primeros códigos de sustitución para limitar el número de apariciones consecutivas de dicha secuencia mínima d; y
unos segundos medios de detección de código para detectar dichos segundos códigos de sustitución para mantener el límite de longitud de secuencia.
23. Procedimiento de modulación que va a adoptarse en un aparato de modulación para convertir datos de entrada divididos en palabras de datos con una longitud de palabra de datos que es igual a o es un múltiplo de m bits en palabras de código de longitud variable (d, k; m, n) en el que cada palabra de código tiene una longitud de palabra de código que es igual a o es un múltiplo de una longitud de palabra de código básico de n bits en el que d es una secuencia mínima y k es un límite de longitud de secuencia, incluyendo dicho procedimiento de modulación una etapa de conversión de convertir datos de entrada en palabras de código según una tabla de conversión implementando dicha tabla de conversión una regla de conversión, según la que el resto de la división de un número de "1" de un elemento en una cadena de datos entre 2 que tiene un valor de 0 ó 1 siempre será igual al resto de la división de un número de "1" de un elemento en la cadena de palabras de código que resulta de la conversión de dicha cadena de datos entre 2 y los códigos de conversión de dicha tabla de conversión comprenden:
palabras de código básico para d = 1, k = 7, m = 2 y n = 3;
primeras palabras de código de sustitución para limitar el número de apariciones consecutivas de dicha secuencia mínima d; y
segundas palabras de código de sustitución para mantener dicho límite de longitud de secuencia k,
caracterizado porque
- las primeras palabras de código de sustitución tienen una longitud de palabra de código que es tres veces la longitud de palabra de código básico,
- las segundas palabras de código de sustitución tienen una longitud de palabra de código que es cuatro veces la longitud de palabra de código básico,
y porque las palabras de código de conversión comprenden además:
- una palabra de código de terminación que tiene una longitud de palabra de código igual a la longitud de palabra de código básico para terminar la conversión de códigos que resulta de la conversión en cualquier posición arbitraria.
24. Medio de presentación de programa para presentar un programa que implementa un procesamiento que incluye una etapa de conversión de convertir datos de entrada divididos en palabras de datos en palabras de código según datos de tabla de conversión en un aparato de modulación para convertir datos con una longitud de palabra de datos que es igual a o es un múltiplo de m bits en códigos de longitud variable (d, k; m, n) en el que cada palabra de código tiene una longitud de palabra de código que es igual a o es un múltiplo de una longitud de palabra de código básico de n bits en el que d es una secuencia mínima y k es un límite de longitud de secuencia, en el que dicha tabla de conversión implementa una regla de conversión, según la que el resto de la división de un número de "1" de un elemento en una cadena de datos entre 2 que tiene un valor de 0 ó 1 siempre será igual al resto de la división de un número de "1" de un elemento en la cadena de palabras de código que resulta de la conversión de dicha cadena de datos entre 2 y los códigos de conversión de dicha tabla de conversión comprenden:
códigos básicos para d = 1, k = 7, m = 2 y n = 3;
primeras palabras de código de sustitución para limitar el número de apariciones consecutivas de dicha secuencia mínima d; y
segundas palabras de código de sustitución para mantener dicho límite de longitud de secuencia k
caracterizado porque
- las primeras palabras de código de sustitución tienen una longitud de palabra de código que es tres veces la longitud de palabra de código básico,
- las segundas palabras de código de sustitución tienen una longitud de palabra de código que es cuatro veces la longitud de palabra de código básico,
y porque las palabras de código de conversión comprenden además:
- una palabra de código de terminación que tiene una longitud de palabra de código igual a la longitud de palabra de código básico para terminar la conversión de códigos que resulta de la conversión en cualquier posición arbitraria.
25. Aparato de demodulación para convertir palabras de código de longitud variable (d, k; m, n) en el que cada palabra de código tiene una longitud de palabra de código que es igual a o es un múltiplo de una longitud de palabra de código básico de n bits en palabras de datos con una longitud de palabras de datos que es igual a o es un múltiplo de m bits en el que d es una secuencia mínima y k es un límite de longitud de secuencia, comprendiendo dicho aparato de demodulación medios de conversión para convertir palabras de código de entrada en palabras de datos según una tabla de conversión implementando dicha tabla de conversión una regla de conversión, según la que el resto de la división de un número de "1" de un elemento en una cadena de datos entre 2 que tiene un valor de 0 ó 1 siempre será igual al resto de la división de un número de "1" de un elemento en la cadena de palabras de código que resulta de la conversión de dicha cadena de datos entre 2 y los códigos de conversión de dicha tabla de conversión comprenden:
palabras de código básico para d = 1, k = 7, m = 2 y n = 3;
primeras palabras de código de sustitución para limitar el número de apariciones consecutivas de dicha secuencia mínima d; y
segundas palabras de código de sustitución para mantener dicho límite de longitud de secuencia k,
caracterizado porque
- las primeras palabras de código de sustitución tienen una longitud de palabra de código que es tres veces la longitud de palabra de código básico,
- las segundas palabras de código de sustitución tienen una longitud de palabra de código que es cuatro veces la longitud de palabra de código básico,
y porque las palabras de código de conversión comprenden además:
- una palabra de código de terminación que tiene una longitud de palabra de código igual a la longitud de palabra de código básico para terminar la conversión de códigos que resulta de la conversión en cualquier posición arbitraria.
26. Aparato de demodulación según la reivindicación 25, caracterizado porque dicho aparato tiene además unos medios de eliminación de bits para eliminar bits redundantes insertados a intervalos predeterminados en dicho código.
27. Aparato de demodulación según la reivindicación 26, caracterizado porque dichos bits redundantes son bits de DSV o señales de sincronización.
28. Procedimiento de demodulación que va a adoptarse en un aparato de demodulación para convertir palabras de código de longitud variable (d, k; m, n) en el que cada palabra de código tiene una longitud de palabra de código que es igual a o es un múltiplo de una longitud de palabra de código básico de n bits en palabras de datos con una longitud de palabras de datos que es igual a o un múltiplo de m bits en el que d es una secuencia mínima y k es un límite de longitud de secuencia, comprendiendo dicho procedimiento de modulación una etapa de conversión de convertir palabras de código de entrada en palabras de datos según una tabla de conversión implementando dicha tabla de conversión una regla de conversión, según la que el resto de la división de un número de "1" de un elemento en una cadena de datos entre 2 que tiene un valor de 0 ó 1 siempre será igual al resto de la división de un número de "1" de un elemento en la cadena de palabras de código que resulta de la conversión de dicha cadena de datos entre 2 y los códigos de conversión de dicha tabla de conversión comprenden:
palabras de código básicas para d = 1, k = 7, m = 2 y n = 3;
primeras palabras de código de sustitución para limitar el número de apariciones consecutivas de dicha secuencia mínima d; y
segundas palabras de código de sustitución para mantener dicho límite de longitud de secuencia k,
caracterizado porque
- las primeras palabras de código de sustitución tienen una longitud de palabra de código que es tres veces la longitud de palabra de código básico,
- las segundas palabras de código de sustitución tienen una longitud de palabra de código que es cuatro veces la longitud de palabra de código básico,
y porque las palabras de código de conversión comprenden además:
- una palabra de código de terminación que tiene una longitud de palabra de código igual a la longitud de palabra de código básico para terminar la conversión de código que resulta de la conversión en cualquier posición arbitraria.
29. Medio de presentación de programa para presentar un programa que incluye una etapa de conversión de convertir palabras de código de entrada en palabras de datos según una tabla de conversión en un aparato de demodulación para convertir palabras de código de longitud variable (d, k; m, n) en el que cada palabra de código tiene una longitud de palabra de código que es igual a o es un múltiplo de una longitud de palabra de código básico de n bits en palabras de datos con una longitud de palabras de datos que es igual a o un múltiplo de m bits en el que d es una secuencia mínima y k es un límite de longitud de secuencia, implementando dicha tabla de conversión una regla de conversión, según la que el resto de la división de un número de "1" de un elemento en una cadena de datos entre 2 que tiene un valor de 0 ó 1 siempre será igual al resto de la división de un número de "1" de un elemento en la cadena de palabras de código que resulta de la conversión de dicha cadena de datos entre 2 y los códigos de conversión de dicha tabla de conversión comprenden:
palabras de código básicas para d = 1, k = 7, m = 2 y n = 3;
primeras palabras de código de sustitución para limitar el número de apariciones consecutivas de dicha secuencia mínima d; y
segundas palabras de código de sustitución para mantener dicho límite de longitud de secuencia k,
caracterizado porque
- las primeras palabras de código de sustitución tienen una longitud de palabra de código que es tres veces la longitud de palabra de código básico,
- las segundas palabras de código de sustitución tienen una longitud de palabra de código que es cuatro veces la longitud de palabra de código básico,
y porque las palabras de código de conversión comprenden además:
- una palabra de código de terminación que tiene una longitud de palabra de código igual a la longitud de palabra de código básico para terminar la conversión de código que resulta de la conversión en cualquier posición arbitraria.
ES99919490T 1998-05-29 1999-05-25 Aparato y procedimiento de modulacion/demodulacion con limitacion de longitudes minimas consecutivas. Expired - Lifetime ES2341927T3 (es)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP15028098A JP3985173B2 (ja) 1998-05-29 1998-05-29 変調装置および方法、復調装置および方法、並びにデータ格納媒体
JP10-105280 1998-05-29

Publications (1)

Publication Number Publication Date
ES2341927T3 true ES2341927T3 (es) 2010-06-29

Family

ID=15493529

Family Applications (1)

Application Number Title Priority Date Filing Date
ES99919490T Expired - Lifetime ES2341927T3 (es) 1998-05-29 1999-05-25 Aparato y procedimiento de modulacion/demodulacion con limitacion de longitudes minimas consecutivas.

Country Status (40)

Country Link
US (5) US6496541B1 (es)
EP (1) EP1000467B1 (es)
JP (1) JP3985173B2 (es)
KR (1) KR100753966B1 (es)
CN (2) CN1183681C (es)
AR (1) AR019600A1 (es)
AT (1) ATE463082T1 (es)
AU (1) AU758251B2 (es)
BG (1) BG64243B1 (es)
CA (2) CA2298685C (es)
CY (1) CY1110892T1 (es)
CZ (1) CZ303005B6 (es)
DE (1) DE69942194D1 (es)
DK (1) DK1000467T3 (es)
EA (1) EA002209B1 (es)
EE (1) EE05501B1 (es)
EG (1) EG22694A (es)
ES (1) ES2341927T3 (es)
HK (1) HK1029458A1 (es)
HR (1) HRP20000050B1 (es)
HU (1) HU229922B1 (es)
ID (1) ID24969A (es)
IL (2) IL134229A (es)
LT (1) LT4754B (es)
LV (1) LV12526B (es)
ME (1) ME01711B (es)
MY (1) MY131577A (es)
NO (1) NO332391B1 (es)
NZ (1) NZ502506A (es)
PL (1) PL338300A1 (es)
PT (1) PT1000467E (es)
RO (1) RO121883B1 (es)
SI (1) SI20174B (es)
SK (1) SK288035B6 (es)
TR (1) TR200000248T1 (es)
TW (1) TW498313B (es)
UA (1) UA49081C2 (es)
WO (1) WO1999063671A1 (es)
YU (1) YU49188B (es)
ZA (1) ZA200000371B (es)

Families Citing this family (83)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3985173B2 (ja) * 1998-05-29 2007-10-03 ソニー株式会社 変調装置および方法、復調装置および方法、並びにデータ格納媒体
JP3870573B2 (ja) * 1998-08-24 2007-01-17 ソニー株式会社 変調装置および方法、記録媒体、並びに復調装置および方法
HUP0201008A2 (en) * 2000-01-07 2002-07-29 Koninkl Philips Electronics Nv 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
IL147498A0 (en) 2000-05-10 2002-08-14 Koninkl Philips Electronics Nv 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
US7082566B2 (en) * 2001-11-09 2006-07-25 Kabushiki Kaisha Toshiba Signal quality evaluation method, information recording/reproducing system, and recording compensation method
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制御ビット生成方法、記録媒体、並びにプログラム
CN100477529C (zh) * 2002-01-23 2009-04-08 皇家飞利浦电子股份有限公司 把信息字变换成信号的方法及其编码设备和再现设备
AU2003201833A1 (en) * 2002-04-01 2003-10-23 Sony Corporation Storage medium initialization and cancellation method
US7038599B2 (en) * 2002-04-11 2006-05-02 Koninklijke Philips Electronics N.V. Stochastic DC control
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
RU2331935C2 (ru) * 2002-11-05 2008-08-20 Конинклейке Филипс Электроникс Н.В. Носитель записи, содержащий дополнительную группу цветовой синхронизации, и способ и устройство для использования с таким носителем записи
JP3957679B2 (ja) 2002-12-18 2007-08-15 日本電気株式会社 符号化変調方法および変調装置、復調方法および復調装置、情報記録媒体
KR20040099945A (ko) * 2003-05-20 2004-12-02 삼성전자주식회사 디스크형 기록 매체로의 기록을 위한, 데이터 변조 방법및 그 장치와, 이에 사용되는 싱크 코드 삽입 방법 및 그장치와, 이를 구현하기 위한 프로그램을 기록한 기록 매체
WO2005022756A1 (ja) 2003-08-28 2005-03-10 Sony Corporation 復号装置および方法、プログラム記録媒体、並びにプログラム
JP5046477B2 (ja) * 2003-08-28 2012-10-10 ソニー株式会社 復号装置および方法、記録再生装置および方法、プログラム記録媒体、並びにプログラム
EP1676276A2 (en) 2003-10-13 2006-07-05 Koninklijke Philips Electronics N.V. Balanced disparity frame sync
CN1883005B (zh) * 2003-11-21 2010-10-06 皇家飞利浦电子股份有限公司 产生在光盘的脉冲切割区中提供的输出数据的装置及方法
US8611195B2 (en) * 2003-11-21 2013-12-17 Koninklijke Philips 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
KR20070054241A (ko) * 2004-09-15 2007-05-28 코닌클리케 필립스 일렉트로닉스 엔.브이. 코더와, r=2의 rmtr 제약을 갖는 코드의 코딩방법
CA2580388A1 (en) * 2004-09-15 2006-03-23 Koninklijke Philips Electronics N.V. Modulation coding with rll (1, k) and mtr (2) constraints
KR20070057942A (ko) * 2004-09-17 2007-06-07 코닌클리케 필립스 일렉트로닉스 엔.브이. 자유롭게 삽입가능한 동기 패턴을 이용하여, 사용자비트스트림을 코드된 비트스트림으로 변환하는 방법,신호의 동기 패턴의 검출방법, 기록매체, 신호, 기록장치와재생장치
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
JP4768743B2 (ja) * 2004-10-20 2011-09-07 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ 光ディスクの1次データビットストリームに2次信号を埋め込む装置及び方法
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制御方法
JP4839784B2 (ja) * 2005-11-10 2011-12-21 ソニー株式会社 変調テーブル、変調装置および方法、プログラム、並びに記録媒体
JP4692234B2 (ja) * 2005-11-10 2011-06-01 ソニー株式会社 変調テーブル、変調装置および方法、プログラム、並びに記録媒体
JP4826888B2 (ja) 2005-11-10 2011-11-30 ソニー株式会社 復調テーブル、復調装置および復調方法、プログラム、並びに記録媒体
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 ソニー株式会社 変調装置および方法、プログラム、並びに記録媒体
US7928865B2 (en) 2006-06-12 2011-04-19 Thomson Licensing Method and apparatus for embedding second code into optical disc data by data modulation rule variation
WO2007145619A1 (en) * 2006-06-12 2007-12-21 Mubina Gilliani System and method for dynamic electronic learning based on location, context, and category data
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
JP2010538404A (ja) * 2007-08-31 2010-12-09 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ ウォーターマークを有する光ディスク並びにこのような光ディスクに記録するための方法及び記録装置
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)

* Cited by examiner, † Cited by third party
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
US5781131A (en) * 1994-12-12 1998-07-14 Sony Corporation Data encoding method and data decoding method
DE69612715T2 (de) * 1995-04-04 2002-04-18 Kabushiki Kaisha Toshiba, Kawasaki Aufzeichnungsmedium, aufzeichnungsverfahren und -gerät, und wiedergabeverfahren und -gerät
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
WO1998016929A1 (fr) * 1996-10-11 1998-04-23 Sanyo Electric Co., Ltd. Procede d'enregistrement numerique, disque numerique, dispositif d'enregistrement de disque numerique et dispositif de reproduction de disque numerique
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 ソニー株式会社 変調装置および方法、並びに記録媒体
BR9807593A (pt) * 1997-12-22 2000-02-22 Koninkl Philips Electronics Nv Dispositivos e processos para codificar um fluxo de bits de dados de um sinal fonte binário em um fluxo de bits de dados de um sinal de canal binário e para decodificar um fluxo de bits de dados de um sinal de canal binário em um fluxo de bits de dados de um sinal fonte binário, e, dispositivo e suporte de gravação
JP3985173B2 (ja) * 1998-05-29 2007-10-03 ソニー株式会社 変調装置および方法、復調装置および方法、並びにデータ格納媒体

Also Published As

Publication number Publication date
CN100557981C (zh) 2009-11-04
LT2000008A (en) 2000-09-25
HRP20000050B1 (en) 2011-03-31
ID24969A (id) 2000-08-31
NO20000392L (no) 2000-03-28
PT1000467E (pt) 2010-06-17
US20040120408A1 (en) 2004-06-24
US6496541B1 (en) 2002-12-17
ME01711B (me) 2004-07-15
LV12526B (en) 2000-10-20
HK1029458A1 (en) 2001-03-30
CA2680404A1 (en) 1999-12-09
US7098819B2 (en) 2006-08-29
EE200000051A (et) 2000-10-16
CA2298685A1 (en) 1999-12-09
WO1999063671A1 (en) 1999-12-09
SK288035B6 (en) 2013-01-02
AU758251B2 (en) 2003-03-20
NO332391B1 (no) 2012-09-10
BG104111A (en) 2000-08-31
NO20000392D0 (no) 2000-01-26
US6677866B2 (en) 2004-01-13
HU229922B1 (en) 2015-01-28
RO121883B1 (ro) 2008-06-30
CZ2000308A3 (cs) 2000-11-15
CA2298685C (en) 2009-12-22
SI20174B (sl) 2010-07-30
TR200000248T1 (tr) 2000-10-23
EA200000175A1 (ru) 2001-02-26
KR20010022324A (ko) 2001-03-15
EE05501B1 (et) 2011-12-15
CA2680404C (en) 2013-11-19
KR100753966B1 (ko) 2007-08-31
LT4754B (lt) 2001-01-25
EP1000467A1 (en) 2000-05-17
YU4100A (sh) 2001-07-10
EP1000467B1 (en) 2010-03-31
CN1183681C (zh) 2005-01-05
SK1162000A3 (en) 2000-10-09
US20070063881A1 (en) 2007-03-22
DK1000467T3 (da) 2010-07-26
IL134229A0 (en) 2001-04-30
US20030142757A1 (en) 2003-07-31
JPH11346154A (ja) 1999-12-14
US20060132342A1 (en) 2006-06-22
PL338300A1 (en) 2000-10-23
NZ502506A (en) 2002-04-26
US7466246B2 (en) 2008-12-16
CN1543076A (zh) 2004-11-03
AR019600A1 (es) 2002-02-27
IL134229A (en) 2003-12-10
JP3985173B2 (ja) 2007-10-03
US7158060B2 (en) 2007-01-02
YU49188B (sh) 2004-07-15
SI20174A (sl) 2000-08-31
BG64243B1 (bg) 2004-06-30
LV12526A (en) 2000-08-20
DE69942194D1 (de) 2010-05-12
ATE463082T1 (de) 2010-04-15
CY1110892T1 (el) 2015-06-10
CN1274484A (zh) 2000-11-22
EA002209B1 (ru) 2002-02-28
EG22694A (en) 2003-06-30
UA49081C2 (uk) 2002-09-16
HRP20000050A2 (en) 2000-08-31
HUP0003579A2 (hu) 2001-02-28
AU3725899A (en) 1999-12-20
MY131577A (en) 2007-08-30
TW498313B (en) 2002-08-11
CZ303005B6 (cs) 2012-02-22
ZA200000371B (en) 2001-03-02
HUP0003579A3 (en) 2003-01-28

Similar Documents

Publication Publication Date Title
ES2341927T3 (es) Aparato y procedimiento de modulacion/demodulacion con limitacion de longitudes minimas consecutivas.
KR100675029B1 (ko) 변조장치 및 방법, 복조장치 및 방법, 및 제공매체
JP3760961B2 (ja) 変調装置および変調方法、復調装置および復調方法、並びに記録媒体
JP3722331B2 (ja) 変調装置および方法、並びに記録媒体
US6526530B1 (en) Method and apparatus for encoding data incorporating check bits and maximum transition run constraint
JP3717024B2 (ja) 復調装置および方法
JP3760966B2 (ja) 変調装置および方法、並びに記録媒体
JP4207073B2 (ja) 変調装置および方法、記録媒体、並びに復調装置および方法
JP4479855B2 (ja) 変調装置、変調方法、記録媒体
JP4155312B2 (ja) 変調装置および方法、記録媒体、並びに復調装置および方法
JP3714301B2 (ja) 記録装置、記録方法、再生装置、再生方法、及び記録媒体
JP4919121B2 (ja) 変調装置、変調方法、および記録媒体
JP4479854B2 (ja) 変調装置、変調方法、記録媒体
JP4366662B2 (ja) 変調装置、変調方法、記録媒体
JP2000068849A (ja) 変調装置および方法、復調装置および方法、並びに提供媒体
JP2007213658A (ja) 復調装置および方法、プログラム、並びに記録媒体