En informática , la grabación codificada en grupo o grabación de código de grupo ( GCR ) se refiere a varios métodos de codificación distintos pero relacionados para representar datos en medios magnéticos . El primero, utilizado en Cinta magnética de 6250 bpi desde 1973, [1] [2] es un código de corrección de errores combinado con un esquema de codificación de longitud limitada (RLL), que pertenece al grupo de códigos de modulación. [3] Los otros son métodos de codificación similares utilizados en discos duros de mainframe o disquetes de microcomputadoras hasta finales de la década de 1980. GCR es una forma modificada de código NRZI , pero necesariamente con una mayor densidad de transición. [3]
La grabación codificada en grupo se utilizó por primera vez para el almacenamiento de datos en cinta magnética en cintas de carrete a carrete de 9 pistas . [3] El término fue acuñado durante el desarrollo de la Unidad de cinta magnética IBM 3420 Modelo 4/6/8 [1] y la correspondiente Unidad de control de cinta 3803 Modelo 2, [4] [1] ambas introducidas en 1973. [1] [5] IBM se refirió al código de corrección de errores como "grabación codificada en grupo". Sin embargo, GCR ha llegado a referirse al formato de grabación de Cinta de 6250 bpi (250 bits/mm [3] ) en su conjunto, y posteriormente a formatos que utilizan códigos RLL similares sin el código de corrección de errores.
Para poder leer y escribir de manera confiable en cinta magnética , se deben seguir varias restricciones en la señal que se va a escribir. La primera es que dos inversiones de flujo adyacentes deben estar separadas por una cierta distancia en el medio, definida por las propiedades magnéticas del propio medio. La segunda es que debe haber una inversión con suficiente frecuencia para mantener el reloj del lector en sincronía con la señal escrita; es decir, la señal debe tener sincronización automática y, lo más importante, mantener la salida de reproducción lo suficientemente alta, ya que es proporcional a la densidad de las transiciones de flujo. Antes decintas de 6250 bpi ,Las cintas de 1600 bpi cumplían estas limitaciones utilizando una técnica llamada codificación de fase (PE), que solo tenía una eficiencia del 50%. ParaEn cintas GCR de 6250 bpi , se utiliza un código RLL (0, 2) , o más específicamente un 4/5 (0, 2) código de bloque [3] a veces también denominado codificación GCR (4B-5B) . [6] Este código requiere que se escriban cinco bits por cada cuatro bits de datos. [3] El código está estructurado de modo que no puedan ocurrir más de dos bits cero (que están representados por la falta de inversión de flujo) en una fila, [3] ya sea dentro de un código o entre códigos, sin importar cuáles sean los datos. Este código RLL se aplica de forma independiente a los datos que van a cada una de las nueve pistas.
De los 32 patrones de cinco bits, ocho comienzan con dos bits cero consecutivos, otros seis terminan con dos bits cero consecutivos y uno más (10001) contiene tres bits cero consecutivos. Al eliminar el patrón de todos unos (11111) del resto, quedan 16 palabras de código adecuadas.
ElCódigo RLL GCR de 6250 bpi : [7] [8] [9] [6]
11 de los nibbles (distintos de xx00 y 0001) tienen su código formado anteponiendo el complemento del bit más significativo ; es decir, abcd está codificado como abcd . A los otros cinco valores se les asignan códigos que comienzan con 11. Los nibbles de la forma ab00 tienen códigos 11ba a , es decir, el bit inverso del código de ab11. Al código 0001 se le asigna el valor restante 11011.
Debido a que el código de todos unos no se utiliza en datos normales, como máximo pueden aparecer 8 bits seguidos. Como patrón de sincronización se utilizan secuencias de 9 o más bits (en la práctica se utilizaron 14 códigos de todos unos, o 70 bits de un) .
Debido a la densidad extremadamente alta (para la época) deEn una cinta de 6250 bpi , el código RLL no es suficiente para garantizar un almacenamiento de datos confiable. Además del código RLL, se aplica un código de corrección de errores llamado Código rectangular óptimo (ORC). [10] Este código es una combinación de una pista de paridad y un código polinómico similar a un CRC , pero estructurado para la corrección de errores en lugar de la detección de errores. Por cada siete bytes escritos en la cinta (antes de la codificación RLL), se calcula y escribe en la cinta un octavo byte de verificación. Al leer, la paridad se calcula en cada byte y se aplica una O exclusiva con el contenido de la pista de paridad, y el código de verificación polinomial se calcula y se aplica una O exclusiva con el código de verificación recibido, lo que da como resultado dos palabras de síndrome de 8 bits. Si ambos son cero, los datos no contienen errores. De lo contrario, la lógica de corrección de errores en el controlador de cinta corrige los datos antes de reenviarlos al host. El código de corrección de errores puede corregir cualquier número de errores en cualquier pista individual, o en dos pistas cualesquiera si las pistas erróneas pueden identificarse por otros medios.
En las nuevas unidades de cinta IBM de media pulgada y 18 pistas que graban a24 000 ppp , 4/5 (0, 2) GCR fue reemplazado por uno más eficiente 8/9 (0, 3) código de modulación, que asigna ocho bits a nueve bits. [3]
A mediados de la década de 1970, Sperry Univac , División ISS, estaba trabajando en grandes discos duros para el negocio de mainframe utilizando codificación grupal. [11]
Al igual que las unidades de cinta magnética, las unidades de disquete tienen límites físicos en el espaciado de las inversiones de flujo (también llamadas transiciones, representadas por un bit).
Al ofrecer unidades de disquete y controladores de disquete compatibles con GCR (como el 100163-51-8 y el 100163-52-6 [12] ), Micropolis respaldó la codificación de datos con grabación codificada en grupo [13] en un disquete de 77 pistas de 5¼ pulgadas, 100 tpi unidades para almacenar doce sectores de 512 bytes por pista desde 1977 o 1978. [14] [15] [16] [17]
Micro Peripherals, Inc. (MPI) comercializó unidades de disco de 5¼ pulgadas de doble densidad (como las unidades B51 de una cara y B52 de doble cara) y una solución de controlador que implementaba GCR desde principios de 1978. [18] [19]
El Durango Systems F-85 (introducido en septiembre de 1978 [20] [21] ) utilizaba unidades de disquete de 5¼ pulgadas y 100 tpi de una sola cara que proporcionaban 480 KB utilizando una codificación codificada de grupo 4/5 de alta densidad patentada. La máquina utilizaba un controlador de disquete Western Digital FD1781 , diseñado por un ex ingeniero de Sperry ISS, [17] con unidades Micropolis de 77 pistas. [22] En modelos posteriores, como la serie Durango 800 [23], esto se amplió a una opción de doble cara para 960 KB (946 KB formateados [23] [nb 1] ) por disquete. [21] [24] [22] [14]
Para la unidad de disquete Apple II , Steve Wozniak inventó un controlador de disquete que (junto con la propia unidad de disco II ) imponía dos restricciones:
El esquema más simple para garantizar el cumplimiento de estos límites es registrar una transición de "reloj" adicional antes de cada bit de datos de acuerdo con la codificación Manchester diferencial o FM (modulación de frecuencia) (digital). Conocida como codificación 4 y 4 , la implementación resultante de Apple permitió grabar sólo diez sectores de 256 bytes por pista en un disquete de densidad única de 5¼ pulgadas. Utiliza dos bytes para cada byte.
Casi un mes antes del envío de la unidad de disco en la primavera de 1978, [26] Wozniak se dio cuenta de que un esquema de codificación más complejo permitiría que cada byte de ocho bits del disco contuviera cinco bits de datos útiles en lugar de cuatro bits. Esto se debe a que hay 34 bytes que tienen el bit superior configurado y no hay dos bits cero seguidos. Este esquema de codificación se conoció como codificación 5 y 3 y permitía 13 sectores por pista; se utilizó para Apple DOS 3.1, 3.2 y 3.2.1 , así como para la versión más antigua de Apple CP/M : [27]
Códigos GCR reservados: 0xAA y 0xD5. [27]
Wozniak calificó el sistema como "mi experiencia más increíble en Apple y el mejor trabajo que hice". [26]
Más tarde, el diseño del controlador de la unidad de disquete se modificó para permitir que un byte en el disco contuviera hasta un par de bits cero seguidos. Esto permitió que cada byte de ocho bits contuviera seis bits de datos útiles y permitiera 16 sectores por pista. Este esquema se conoce como codificación 6 y 2 , [27] y se usó en Apple Pascal , Apple DOS 3.3 [27] y ProDOS , [29] y posteriormente con unidades Apple FileWare en Apple Lisa y 400K y 800K 3½. Discos de pulgadas en Macintosh y Apple II . [30] [31] Apple originalmente no llamó a este esquema "GCR", pero el término se le aplicó más tarde [31] para distinguirlo de los disquetes de PC de IBM que usaban el esquema de codificación MFM .
Códigos GCR reservados: 0xAA y 0xD5. [27] [29]
De forma independiente, Commodore Business Machines (CBM) creó un esquema de grabación codificada en grupo para su unidad de disquete Commodore 2040 (lanzada en la primavera de 1979). Las limitaciones relevantes en la unidad 2040 eran que no podían ocurrir más de dos bits cero seguidos; la unidad no impuso ninguna restricción especial al primer bit de un byte. Esto permitió el uso de un esquema similar al utilizado enUnidades de cinta de 6250 bpi . Cada cuatro bits de datos se traducen en cinco bits en el disco, utilizando los mismos códigos de 5 bits que IBM para garantizar que nunca haya más de dos bits cero seguidos, pero en un orden diferente:
Al igual que el código de IBM, como máximo ocho bits uno seguidos son posibles, por lo que Commodore usó secuencias de diez o más bits uno seguidos como secuencia de sincronización .
Este esquema GCR más eficiente, combinado con un enfoque de grabación con densidad de bits constante, aumenta gradualmente la velocidad del reloj ( velocidad angular constante de zona , ZCAV) y almacena más sectores físicos en las pistas exteriores que en las interiores ( grabación de bits de zona , ZBR). ), permitió que Commodore encajara170 KiB en un disquete estándar de 5,25 pulgadas, de una sola cara y de densidad única, donde Apple colocó {[val|140|u=KiB}} (con codificación 6 y 2) o {[val|114|u=KiB} } (con codificación 5 y 3) y un disquete codificado en FM que se sostiene únicamente88 KiB .
De manera similar, las unidades de disquete de 5,25 pulgadas del Victor 9000, también conocido como Sirius 1 , diseñadas por Chuck Peddle en 1981/1982, utilizaban una combinación de GCR y grabación de bits de zona al disminuir gradualmente la velocidad de rotación de una unidad para las pistas exteriores en nueve zonas mientras aumentaba el número de sectores por pista [33] para lograr capacidades formateadas de606 KiB (una cara) /1188 KiB (doble cara) en soporte de 96 tpi . [34] [35] [36] [37] El código GCR es idéntico al de Commodore. [38]
A partir de 1985, Brother introdujo una familia de máquinas de escribir con procesador de textos dedicado con unidad de disquete integrada de 3,5 pulgadas y 38 pistas [nb 2] . Los primeros modelos de las series WP y LW utilizaban un esquema de grabación codificado por grupos específico de Brother con doce sectores de 256 bytes para almacenar hasta 120 KB [nb 3] en una sola cara y hasta 240 KB [nb 3] en disquetes de doble densidad (DD) de doble cara. [17] [39] [40] [41] Según se informa, ya se mostraron prototipos en la Internationale Funkausstellung 1979 (IFA) en Berlín.
En 1986, Sharp introdujo una solución de unidad de disco de bolsillo giratoria de 2,5 pulgadas (unidades: CE-1600F , CE-140F; basada internamente en el chasis FDU-250; soporte: CE-1650F ) para su serie de computadoras de bolsillo con capacidad formateada. de62 464 bytes por lado (2× 64 kB nominal, 16 pistas, 8 sectores/pista, 512 bytes por sector, 48 tpi , 250 kbit/s, 270 rpm) con grabación GCR (4/5). [42] [43]
También se evaluó GCR para un posible uso en esquemas de codificación de códigos de barras (eficiencia de empaquetado, tolerancias de tiempo, cantidad de bytes de almacenamiento para información de tiempo y nivel de salida de CC ). [44]
IBM añadió tres nuevos modelos al sistema de cinta magnética 3420 que pueden grabar datos con la "capacidad de grabación más densa ofrecida hasta ahora", según la empresa. Utilizando un nuevo método llamado Grabación codificada en grupo (GCR), las unidades de IBM pueden manejar cintas que contienen una densidad de datos de 6250 bytes/pulgada. en comparación con 1.600 bytes/pulg. en modelos anteriores del 3420. [...] También se anunció una unidad de control mejorada, el 3803 Modelo 2, que funciona con las unidades de cinta 3420 anteriores y más recientes. El Modelo 2 incluye la capacidad de corregir errores en una o dos pistas "simultáneamente mientras la cinta está en movimiento", dijo IBM. [...] El método GCR segmenta los datos escritos en cinta en grupos de caracteres a los que se les añade un carácter de codificación especial. Y la mayor densidad se basa en una combinación de un esquema de codificación modificado, una brecha entre registros más pequeña (llamada brecha entre bloques) y componentes electrónicos y electromecánicos modificados, dijo IBM. Los sistemas de cintas 3803/3420 instalados se pueden convertir a densidades más altas en el campo. [...]
[...] Me mudé al laboratorio de Poughkeepsie en 1958 [...] Más tarde fui diseñador y arquitecto principal de la unidad de control de cinta 2802 y unos años después, diseñador principal y arquitecto del 3803, que fue un gran modificación basada en el 2802. Tres de nosotros compartimos un premio corporativo por el 3803 y yo, junto con el planificador Charlie Von Reyn, se nos ocurrió el nombre "
Grabación codificada en grupo
(GCR)" como nombre del método de grabación. [...](NB. Un comentario anónimo de uno de los desarrolladores sobre el origen del nombre "Grabación codificada en grupo".)
[...]
Micropolis
ha ampliado la capacidad de 5,25 pulgadas. subsistemas de disquete a través de modelos de doble cara con almacenamiento de archivos formateados de hasta casi 2 millones de bytes [...] La serie
Megafloppy
también cuenta con un controlador inteligente que facilita la interconexión de cuatro subsistemas a una interfaz de host común para un almacenamiento total en línea capacidad de más de 15 M bytes [...] Las versiones de doble cara de la línea de productos se implementarán primero en dos series
OEM
: modelo 1015 y modelo 1055 [...] El modelo 1015 es una unidad sin empaquetar diseñada para el fabricante que integra el almacenamiento en disquete en el gabinete de su propio sistema. Está disponible una gama de capacidades de almacenamiento de 143.000 a 630.000 bytes por unidad [...] Los clientes del modelo 1015 tienen la opción de utilizar el controlador inteligente de Micropolis y el método
de grabación de códigos de grupo
(GCR) para ampliar aún más el espacio de archivos hasta 946.000 bytes [. ..] Ofreciendo GCR y un controlador basado en microprocesador como características estándar, el modelo 1055 de 5,25 pulgadas. El disquete tiene cuatro formatos
de sector suave
para cada una de sus 77 pistas, lo que produce una capacidad máxima de 1.892.000 bytes de espacio de archivo en su versión de doble cara [...] Un módulo adicional disponible para el 1055 se compone de dos formatos de lectura/ cabezales de escritura y dos unidades, compartiendo un controlador común. La capacidad del subsistema (formateado) con el módulo es de 3.784.000 bytes [...] Se pueden
conectar en cadena
hasta cuatro 1055, cada uno con un módulo adicional,
a un host común para obtener una capacidad máxima de almacenamiento en línea de más de 15 millones de bytes [...]
[...] Se han agregado cuatro nuevos productos de 96 pistas por pulgada a la línea actual de
Micropolis
de disquetes de 100 tpi de una y dos caras. Las unidades de 96 tpi ofrecen 70 pistas por lado, a diferencia de las 77 que ofrece la línea
MegaFloppy
. Los cuatro modelos son: 1) El 1015-V: 436 KB, sin formato, grabación FM/MFM [...] 2) El 1016-V: 532 KB sin formato,
grabación codificada en grupo
(GCR) [...] 3) El 1015-VI: una versión de dos cabezales de la unidad MFM, 872 KB [...] 4) El 1016-VI: también una unidad de dos cabezales, codificación GCR de 1.064 MB [...]
[...] Al mismo tiempo, Micropolis estaba trabajando en una unidad de 5,25" que podía contener hasta 8", utilizando algunos trucos. La unidad Micropolis tenía 100 tpi, 77 pistas y, al utilizar GCR, podía contener 12 sectores de 512 bytes por pista. Eso es 462 KiB. Esto fue alrededor de 1977-1978. [...] La [...] implementación de la unidad y el controlador (la nuestra fue realizada por un tipo que habíamos reclutado de Sperry ISS) fue [...] compleja y costosa [...] Discos Brother WP [.. .] son GCR de 38 pistas, de una cara y codificados por Brother que [...] admiten 120 KB en disquetes 2D. [...]
[...] De los códigos alternativos utilizados para lograr doble densidad, GCR (Grabación codificada en grupo) parece bastante atractivo. Micro Peripherals Inc ha implementado doble densidad utilizando GCR en un disquete de tamaño completo y un sistema de controlador que se comercializa actualmente. [...] GCR no es más que el antiguo NRZ de reserva con sus ventajas, pero, dado que el NRZ ordinario no tiene información de sincronización y tiene un contenido de CC potencialmente alto durante largas cadenas de unos o ceros, los datos se reformatean para eliminar los largos instrumentos de cuerda. El reformateo convierte cada grupo de cuatro bits de datos originales en cinco bits de datos codificados en grupo; Los cinco bits en la versión codificada siempre tendrán una mezcla de unos y ceros, incluso si los datos reales están todos en un solo estado. El reformateo en GCR se puede lograr en software, a diferencia de MFM, etc., que casi inevitablemente debe codificarse y decodificarse en hardware. Por lo tanto, GCR tiene buenas posibilidades como esquema de bajo costo y alta confiabilidad para lograr doble densidad. [...][1]
[...] La unidad de disquete de una sola cara ofrece 80 pistas a
96 TPI
[...] La unidad de disquete de doble cara ofrece 160 pistas a 96 TPI [...] Las unidades de disquete tienen sectores de 512 bytes; utilizando una técnica de grabación GCR de 10 bits. [...] Aunque el
Victor 9000
utiliza minifloppies de 5 1/4 pulgadas de un tipo similar a los utilizados en otras computadoras, los disquetes en sí no son legibles en otras máquinas, ni el Victor 9000 puede leer un disco de otros fabricantes. máquina. El Victor 9000 utiliza un método de grabación exclusivo que permite empaquetar los datos con una densidad de hasta 600 kbytes en un minidisquete de una sola cara y densidad única; este método de grabación implica la regulación de la velocidad a la que gira el disquete, lo que explica el hecho de que el ruido del disco a veces cambia de frecuencia.
[...] La densidad de pistas es de 96 pistas por pulgada y la densidad de grabación se mantiene en aproximadamente 8000 bits por pulgada en todas las pistas. [...] El
VICTOR 9000
utiliza una técnica de codificación llamada grabación de código de grupo (GCR) para convertir los datos de la representación interna a una forma aceptable. GCR convierte cada mordisco (de 4 bits) en un código de 5 bits que garantiza un patrón de grabación que nunca tiene más de dos ceros juntos. Luego, los datos se graban en el disco provocando una inversión de flujo para cada bit "uno" y ninguna inversión de flujo para cada bit "cero". [...]
[...] La unidad de disco de 3,5" y 240 Kb es una pieza Brother de un solo cabezal, número de pieza 13194989 y está conectada con una cinta de 15 pines. [...] inicializa (formatea) el disco a una capacidad de 236,5 Kb. [. ..]
[...] Había varios discos Brother de 3,5" que no eran nada estándar. [...] Uno tenía sectores de 1296 bytes y otro tenía 12 sectores GCR de 256 bytes [...]
GCR es una abreviatura de
Grabación codificada en grupo
. Los datos de un solo byte, 8 bits, se dividen en dos datos de 4 bits que también se convierten en datos de 5 bits. Por lo tanto, un solo byte (8 bits) se registra en el medio como datos de 10 bits.
{{cite journal}}
: La cita utiliza un título genérico ( ayuda )