ES2208718T3 - Aparato que emplea tablas de control de memoria relativas al tratamiento de graficos de video para receptores de tv. - Google Patents

Aparato que emplea tablas de control de memoria relativas al tratamiento de graficos de video para receptores de tv.

Info

Publication number
ES2208718T3
ES2208718T3 ES96305725T ES96305725T ES2208718T3 ES 2208718 T3 ES2208718 T3 ES 2208718T3 ES 96305725 T ES96305725 T ES 96305725T ES 96305725 T ES96305725 T ES 96305725T ES 2208718 T3 ES2208718 T3 ES 2208718T3
Authority
ES
Spain
Prior art keywords
sprite
data
list
line
memory
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
ES96305725T
Other languages
English (en)
Inventor
Donald S. Butler
Richard A. Amano
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.)
Arris Technology Inc
Original Assignee
Arris Technology Inc
General Instrument Corp
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 Arris Technology Inc, General Instrument Corp filed Critical Arris Technology Inc
Application granted granted Critical
Publication of ES2208718T3 publication Critical patent/ES2208718T3/es
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N9/00Details of colour television systems
    • H04N9/64Circuits for processing colour signals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N9/00Details of colour television systems
    • H04N9/64Circuits for processing colour signals
    • H04N9/641Multi-purpose receivers, e.g. for auxiliary information
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/02Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the way in which colour is displayed
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/42Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the display of patterns using a display memory without fixed position correspondence between the display memory contents and the display position on the screen
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2340/00Aspects of display data processing
    • G09G2340/10Mixing of images, i.e. displayed pixel being the result of an operation, e.g. adding, on the corresponding input pixels

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Controls And Circuits For Display Device (AREA)
  • Studio Circuits (AREA)
  • Image Generation (AREA)
  • Digital Computer Display Output (AREA)

Abstract

UN APARATO PARA PROCESAR SEÑALES DE CARACTERES GRAFICOS Y DE VIDEO MEZCLADAS PARA SU REPRESENTACION SOBRE UN RECEPTOR DE TELEVISION INCLUYE UNA MEMORIA DE CARACTERES GRAFICOS (38) Y UN CONTROLADOR DE MEMORIA Y UNA MAQUINA DE ESTADO DE GRUPO DE CARACTERES VISUALIZABLES (42). LA MEMORIA DE CARACTERES GRAFICOS INCLUYE UNA TABLA DE LISTA DE GRUPO DE CARACTERES VISUALIZABLES (90), UNA TABLA DE DATOS DEL GRUPO DE CARACTERES VISUALIZABLES (92) Y OTRAS TABLAS OPCIONALES (94, 96). LA TABLA DE LISTA DE GRUPO DE CARACTERES VISUALIZABLES LISTA UNO O MAS CARACTERES GRAFICOS EN UNA SECUENCIA PREDETERMINADA PARA REPRESENTAR SOBRE EL RECEPTOR DE TELEVISION, Y ALMACENA INFORMACION GENERAL RELACIONADA CON LOS CARACTERES GRAFICOS DENTRO DE LAS PALABRAS DE CONTROL EN CADA LISTADO. LA TABLA DE DATOS DE GRUPO DE CARACTERES VISUALIZABLES ALMACENA LOS DATOS DE LOS PIXELES PARA LAS LINEAS HORIZONTALES DE CADA UNO DE LOS CARACTERES GRAFICOS QUE SON ACCEDIDOS POR UNA PALABRA DE CONTROL EN CADA UNO DE LOS LISTADOS DECARACTERES GRAFICOS EN LA TABLA DE LISTA DE GRUPO DE CARACTERES VISUALIZABLES. UNA TABLA DE CONTROL DE LINEA OPCIONAL (94) CONTIENE LAS PALABRAS DE CONTROL QUE SON ACCEDIDAS POR MEDIO DEL LISTADO DE CARACTERES GRAFICOS PARA SUMINISTRAR CONTROLES INDEPENDIENTES PARA CADA UNA DE LAS LINEAS HORIZONTALES OBTENIDAS A PARTIR DE LA TABLA DE DATOS DE GRUPO DE CARACTERES VISUALIZABLES PARA PRODUCIR EFECTOS ESPECIALES PREDETERMINADOS. SE UTILIZA UNA TABLA DE LISTA O DE EXTENSION OPCIONAL (96) PARA DETERMINAR CUAL DE LOS LISTADOS DE CARACTERES GRAFICOS SE PRODUCE SOBRE UNA LINEA HORIZONTAL PARA PROVOCAR UN ACCESO SOLAMENTE DE AQUELLOS LISTADOS DE CARACTERES GRAFICOS QUE SE PRODUCEN PARA ENSAMBLAR LOS DATOS DE PIXELES PARA ESA LINEA HORIZONTAL. EL CONTROLADOR DE MEMORIA Y LA MAQUINA DE ESTADO DE GRUPO DE CARACTERES VISUALIZABLES ACCEDEN A LAS TABLAS DE LA MEMORIA DE CARACTERES GRAFICOS EN UNA SECUENCIA PREDETERMINADA PARA ENSAMBLAR Y REPRESENTAR CADA UNO DE LOS CARACTERES GRAFICOS Y SUS EFECTOS ESPECIALES EN UBICACIONES PREDETERMINADAS EN LAS LINEAS HORIZONTALES DE UNA PANTALLA DE UN RECEPTOR DE TELEVISION. EL CONTROLADOR DE MEMORIA Y LA MAQUINA DE ESTADO DE GRUPO DE CARACTERES VISUALIZABLES TAMBIEN UTILIZA CONTROLES DE HABILITACION DE CAMPO DE LA TABLA DE LISTA DE GRUPO DE CARACTERES VISUALIZABLES PARA ENSAMBLAR UN CARACTER GRAFICO SOBRE LAS LINEAS DE UN PRIMER CAMPO Y UN SEGUNDO CARACTER GRAFICO SOBRE LAS LINEAS DE UN SEGUNDO CAMPO.

Description

Aparato que emplea tablas de control de memoria relativas al tratamiento de gráficos de vídeo para receptores
de TV.
Campo de la invención
La presente invención se refiere a un aparato que emplea tablas de control de memoria en una memoria de gráficos para tratar señales gráficas de vídeo mezcladas de formato YUV (señales compuestas de vídeo) y de gamas de color, para producir efectos especiales deseados. Una máquina controladora de memoria y de Estado de Sprite (elementos de animación) se emplea con la memoria gráfica para presentar selectivamente tales señales gráficas de vídeo por sí solas o para superponer selectivamente tales señales gráficas de vídeo mezcladas sobre señales de televisión en directo recibidas de una fuente remota.
Antecedentes de la invención
Algunos ordenadores disponibles en el mercado, particularmente ordenadores personales, disponen de circuitos que permiten unir una señal compuesta de vídeo, tal como, por ejemplo, una señal del Comité Nacional de Sistemas de Televisión (National Television Standards Committee - NTSC), con señales gráficas de vídeo de presentación generadas por ordenador, normalmente rojas, verdes y azules (RGB). Más concretamente, los equipos modernos de gráficos de vídeo tienen la capacidad de producir fondos, caracteres, símbolos y otras representaciones y disposiciones pictóricas en tamaños, formas y colores seleccionados por el operador.
La patente estadounidense N° 4.737.772 (Nishi et al.), emitida el 12 de abril de 1988, describe un controlador de presentación de vídeo que comprende un procesador de presentación de vídeo (VDP), una Unidad Central de Tratamiento (CPU), una memoria, y una Memoria de Acceso Aleatorio de Vídeo (VRAM). La memoria almacena tanto programas a ejecutar por la CPU como varios tipos de datos de imagen. La VRAM almacena datos de imagen que el VDP pude alterar y transferir luego al exterior para la presentación en un visualizador de una pantalla de tubo de rayos catódicos (TRC). En el VDP, un generador de señales de temporización genera señales de temporización para explorar correctamente elementos de la imagen a presentar que son empleados por contadores horizontales y verticales y por la pantalla TRC para sincronizar el tratamiento de datos en un circuito de tratamiento de datos de imagen (image data processing circuit - IDPC) y para presentar correctamente tales datos procesados en el visualizador de la pantalla TRC. Un Digitalizador de Vídeo muestrea una señal analógica de vídeo suministrada desde el exterior y convierte niveles o amplitudes de señal de la señal analógica de vídeo en datos digitales compuestos por 2 ó 4 bits cada uno. Los datos de salida de amplitud digitalizada procedentes del Digitalizador de Vídeo representan una imagen fija y los datos se suministran al IDPC. El IDPC almacena selectivamente tanto los datos de salida del Digitalizador de Vídeo como los códigos de color suministrados desde la CPU en la VRAM a través de un circuito de interfaz. Cada código de color procedente de la CPU representa un color de uno respectivo de los elementos de presentación (por ejemplo, un pixel) que constituye una imagen fija en la pantalla. En funcionamiento, en respuesta a un comando de presentación procedente de la CPU, el IDPC lee secuencialmente datos de punto de la VRAM en sincronización con la posición de exploración en la pantalla TRC y da salida a los datos de punto hacia un circuito de paleta de colores. Simultáneamente, el IDPC calcula y lee los datos necesarios para presentar una imagen animada procedente de la VRAM y suministra códigos de color al circuito de paleta de colores. Cuando una imagen animada y una fija están situadas en la misma posición de presentación en el visualizador de la pantalla TRC, preferiblemente se presenta la imagen animada. El circuito de paleta de colores convierte cada código de color en tres datos de color para el rojo (R), el verde (G) y el azul (B), cada uno compuesto por tres bits. Un Convertidor Digital/Analógico (Digital to Analog Converter - DAC) convierte los datos de color procedentes del circuito de paleta de colores en señales R, G y B que se proporcionan a la pantalla TRC.
La patente estadounidense 5.355.175 (Okada et al.), emitida el 11 de octubre de 1994, describe un aparato de mezcla de vídeo que mezcla una imagen gráfica de vídeo y una imagen de vídeo de reproducción en una pluralidad de proporciones de mezcla en un plano de imagen. Datos de fundido indicativos de la proporción de mezcla de al menos una línea de la señal de vídeo de reproducción y de la señal gráfica de vídeo se generan secuencialmente según un orden predeterminado. Los datos de fundido se almacenan en un medio de almacenamiento temporal y se les da salida del medio de almacenamiento temporal sincronizadamente con una señal horizontal de sincronización. Los niveles de la señal de vídeo de reproducción y de la señal gráfica de vídeo se ajustan individualmente según los datos de fundido sacados del medio de almacenamiento temporal, y las señales ajustadas se añaden conjuntamente. La señal de vídeo de reproducción y la señal gráfica de vídeo se mezclan en la proporción de mezcla establecida para cada línea en un plano de imagen para generar una señal de salida de vídeo procedente del aparato.
La patente estadounidense N° 4.420.770 (Rahman), emitida el 13 de diciembre de 1983, describe un sistema de generación de fondos de vídeo para generar patrones rectangulares de vídeo que tienen atributos de vídeo seleccionados por el operador. El sistema comprende una memoria de bits horizontales y una memoria de bits verticales, siendo cada una de las memorias un memoria de 16 entidades para almacenar información para 16 entidades de fondo. La memoria para cada entidad de fondo define esquinas opuestas de la zona de fondo para una entidad en la pantalla. Tal como se muestra en la figura 2 de la patente, una primera entidad define una primera zona rectangular, y una segunda entidad de prioridad más alta define una segunda zona rectangular que se solapa parcialmente. Una tabla de consulta de atributos almacena información para cada entidad relacionada con la producción de vídeo en color (rojo, verde, azul) para esa entidad. Durante la exploración de las líneas de una imagen que se está produciendo, la primera entidad se produce en su zona definida y la segunda entidad se produce en su zona definida. Sin embargo, la segunda tiene una prioridad más alta, lo que da como resultado la zona de solapamiento de las dos entidades a presentar con los atributos almacenados de la segunda entidad.
La patente estadounidense N° 4.754.270 (Murauchi), emitida el 28 de junio de 1988, describe un aparato digitalizado de presentación que es capaz de agrandar o reducir el tamaño de una imagen representada en el visualizador de una pantalla de tipo de barrido de trama, tal como una pantalla TRC. El aparato comprende un medio de memoria direccionable, un medio de datos de entrada y un medio generador de datos variables de dirección. El medio de memoria direccionable almacena datos de presentación que se leen según una relación predeterminada de temporización con un barrido de trama del visualizador para producir una imagen de presentación. El medio de datos de entrada suministra datos numéricos que determinan el tamaño de la imagen. El medio generador de datos variables de dirección incluye incrementos variables de direccionamiento para generar datos de dirección que están correlacionados con direcciones de datos de presentación que están almacenados en el medio de memoria con el fin producir los datos de presentación. El medio generador de datos variables de dirección comprende un medio aritmético de cálculo para calcular digitalmente incrementos de direccionamiento en respuesta a los datos numéricos suministrados por el medio de datos de entrada. Además, en respuesta a señales de temporización relacionadas con la exploración del visualizador, el medio generador de datos variables de dirección es sensible al medio aritmético de cálculo para incrementar direcciones con el fin de direccionar el medio de memoria según los datos numéricos que determinan el tamaño de imagen. Más concretamente, cuando se presenta una imagen con tamaño original, se incrementa una dirección horizontal del medio de memoria en un "1" cada 200 nanosegundos. Es decir, un tamaño de punto en la dirección horizontal de la presentación tiene un tiempo de presentación de 200 nanosegundos para presentar el tamaño original. El tamaño de punto en la dirección horizontal puede agrandarse o reducirse cambiando el tiempo de presentación de un punto en la dirección horizontal al seleccionar apropiadamente datos adicionales que se proporcionan al medio de memoria. Al ajustar apropiadamente los datos adicionales, el tamaño de los caracteres y las imágenes asociadas en la pantalla de presentación puede agrandarse o reducirse con respecto a un tamaño nominal.
La patente estadounidense N° 4.700.181 (Maine et al.), emitida el 13 de octubre de 1987, describe un sistema para el almacenamiento, la recuperación y la manipulación de datos para producir una presentación, en el que, entre otros, la disponibilidad de color se encuentra en forma de paletas apropiadamente preseleccionadas, los objetos tridimensionales o planos se componen de patrones de elementos que se almacenan individualmente, la imagen de presentación está formada en memorias intermedias, que se alternan como memorias intermedias de construcción y de presentación, por datos a los que se obtiene acceso en la memoria por listas que los vinculan en orden ascendente de prioridad visible, siendo los datos escritos a continuación en las memorias intermedias, variando la naturaleza del almacenamiento de datos de manera predeterminada para distintos tipos de objetos, todo para que puedan presentarse y manipularse gráficos muy complejos y agradables a la vista dentro de la restricción de tiempo de un sistema de barrido de trama de vídeo de secuencia completa.
Actualmente está surgiendo una necesidad de gráficos de vídeo interactivos que permitirán que se suministre una nueva clase completa de servicios en los hogares a través de una red de televisión por cable. Estos nuevos servicios mejorarán la experiencia de visionado de muchos programas de televisión tradicionales al tiempo que proporcionen servicios incrementados a otros. Sin embargo, los receptores NTSC y de Línea de Alternancia de Fase (Phase Alternating Line - PAL) de televisión, al contrario que las pantallas de ordenador, tienen un ancho de banda de vídeo relativamente bajo y emplean una presentación entrelazada y no por barrido progresivo. Estas limitaciones imponen severas restricciones a la generación de una señal sintética de vídeo de alta resolución, libre de artefactos. Tradicionalmente, los productos de consumo, tales como los videojuegos, evitan estos problemas generando señales de vídeo no entrelazadas de baja resolución. Este enfoque tiene como resultado imágenes que son de baja calidad, tienen un aspecto de "bloque", tienen limitaciones en cuanto a la elección de color y adquieren un aspecto de dibujos animados. La generación de vídeo sintético que se aproxime a la calidad de emisión requiere que las señales sintetizadas generadas emulen la de una cámara de vídeo que explora una escena y el tratamiento posterior de señales analógicas para tales señales de la cámara de vídeo. Por tanto, es deseable proporcionar una disposición relativamente económica que emplee tablas de memoria para almacenar y tratar muchos gráficos (sprites) en varias configuraciones y efectos especiales al tiempo que permita que se puedan superponer gráficos sintéticos de vídeo de buena calidad los unos sobre los otros o sobre programación de televisión en directo para el visionado en receptores de televisión estándar NTSC o PAL entrelazados de la manera estándar.
Sumario de la invención
La presente invención está dirigida a un aparato económico que utiliza tablas de control de memoria para tratar señales gráficas (sprite) de vídeo mezcladas YW y de gamas de color, para producir efectos especiales deseados, y para presentar selectivamente tales señales gráficas de vídeo por sí solas o para superponer selectivamente tales señales gráficas de vídeo mezcladas sobre señales de televisión en directo recibidas de una fuente remota.
Contemplada desde un aspecto, la presente invención se está dirigida a aparatos para tratar señales gráficas y de vídeo mezcladas para la presentación en un receptor estándar de televisión que comprenda una memoria gráfica y una máquina controladora de memoria y de Estado de Sprite. La memoria gráfica comprende una tabla de listas de sprites y una tabla de datos de sprites. La tabla de listas de sprites incluye uno o más gráficos en una secuencia predeterminada para la presentación en el receptor de televisión. La tabla de listas de sprites también almacena información general relacionada con el uno o más gráficos dentro de las palabras de control en cada listado. La tabla de datos de sprites almacena datos de píxeles para las líneas horizontales de cada uno del uno o más gráficos. Una palabra de control en el listado en la tabla de listas de sprites para cada uno del uno o más gráficos, obtiene acceso a las líneas horizontales en la tabla de datos de sprites para cada uno del uno o más gráficos. La máquina controladora de memoria y de Estado de Sprite es sensible a señales de habilitación de campo procedentes de la tabla de listas de sprites que indican qué campo de una trama de dos campos de una imagen de vídeo está siendo presentada en una pantalla del receptor de televisión para obtener acceso y ensamblar un primer gráfico predeterminado incluido en la tabla de listas de sprites para las líneas horizontales de sólo uno de los dos campos y un segundo gráfico predeterminado incluido en la tabla de listas de sprites o en una señal de televisión en directo para líneas horizontales del otro de los dos campos.
La invención se entenderá mejor a partir de la siguiente descripción más detallada, tomada con los dibujos adjuntos.
Breve descripción de los dibujos
La figura 1 es un diagrama de bloques de una unidad de caja de cable de abonado según la presente invención;
la figura 2 es un diagrama de bloques de una primera parte de los Circuitos de Tratamiento de Vídeo en la unidad de caja de cable de abonado de la figura 1 según la presente invención;
la figura 3 es un diagrama de bloques de una segunda parte de los Circuitos de Tratamiento de Vídeo dispuesta en la unidad de caja de cable de abonado de la figura 1 según la presente invención;
las figuras 4, 5 y 6 ilustran el funcionamiento de una Memoria Intermedia de Ensamblaje de Píxeles que forma parte de la primera parte de los Circuitos de Tratamiento de Vídeo de la figura 3 según la presente invención;
la figura 7 es un diagrama de bloques de un Multiplexor/Atenuador ejemplar que forma parte de una segunda parte de los Circuitos de Tratamiento de Vídeo mostrados en la figura 3;
la figura 8 es un diagrama de bloques de una disposición ejemplar de un Convolucionador que forma parte de la segunda parte de los Circuitos de Tratamiento de Vídeo mostrados en la figura 3;
la figura 9 es un diagrama de bloques de una Memoria Gráfica que comprende tablas, y la primera parte de unos Circuitos de Tratamiento de Vídeo mostrados en la figura 2 según la presente invención;
las figuras 10, 11, 12, 13, 14 y 15 muestran varias configuraciones que pueden conseguirse empleando las tablas de la Memoria Gráfica mostrada en la figura 9 según una primera realización de la presente invención;
la figura 16 es una vista ejemplar de una pantalla de presentación que emplea una tabla de listas de recorridos que se encuentra en la Memoria Gráfica mostrada en la figura 9 según una segunda realización de la presente invención; y la figura 17 es una sección ejemplar de una pantalla entrelazada de un receptor de televisión en la que un primer y un segundo sprite se entrelazan en una parte de la pantalla según una tercera realización de la presente invención.
Descripción detallada
Debe entenderse que a elementos correspondientes que realizan la misma función en cada una de las figuras se les ha dado el mismo número de referencia.
Haciendo ahora referencia a la figura 1, se muestra un diagrama de bloques de una unidad 10 de caja de cable de abonado que puede encontrarse en el local de un abonado y proporciona un tratamiento interactivo de vídeo según la presente invención. La unidad 10 de caja de cable de abonado comprende un primer módulo 12 (MÓDULO 1) (mostrado dentro de un primer rectángulo de líneas discontinuas) y un segundo módulo 14 (MÓDULO 2) (mostrado dentro de un segundo rectángulo de líneas discontinuas). El primer módulo 12 es una disposición convencional que comprende un Convertidor 20 de Radiofrecuencia (RF) a Banda Base y un Sistema 22 de Control del Convertidor. El Convertidor 20 de RF a Banda Base recibe señales RF multiplexadas de canales de televisión en el formato del estándar NTSC o PAL que se propagan en un cable 27 procedentes de las oficinas centrales remotas de una compañía de cable (no mostrada) y convierte selectivamente tales señales RF multiplexadas de canales de televisión a frecuencias de banda base. El Convertidor 20 de RF a Banda Base transmite una señal compuesta resultante de banda base de salida de vídeo del proceso de conversión a través de un bus 24 al segundo módulo 14. El Sistema 22 de Control del Convertidor es un usuario (abonado) está controlado normalmente bien por un dispositivo de control remoto por Infrarrojos, bien por un teclado en la caja de cable, tal como es bien sabido en la técnica. El Sistema 22 de Control del Convertidor funciona para recibir y/o transmitir señales de autorización y de control de acceso a través del cable 27 a o desde una oficina central remota de una compañía de cable, activar la aleatorización o la desaleatorización de vídeo de banda base y producir mensajes de Presentación en Pantalla (On Screen Display - OSD). El Sistema 22 de Control del Convertidor da salida a señales de control a través de un bus 29 hacia el Convertidor 20 de RF a Banda Base para la selección de los programas de cable deseados y a varias señales desencriptadas de datos y de control (por ejemplo, señales de control y de salida de datos aguas arriba, señales de transmisión y recepción de Infrarrojos y señales Tl desencriptadas de datos de Modulación por Desplazamiento de Fase Cuaternaria) a través de unos cables 31 y 33 hacia el segundo módulo 14.
El segundo módulo 14 comprende un Procesador 30 de Interfaz en Serie (Serial Interface Processor - SIP), unos dispositivos 32 de Entrada/Salida (Input/Output - I/O), una Memoria 34 de Sólo Lectura (ROM), una Memoria 35 de Acceso Aleatorio (RAM), una Unidad 36 Central de Tratamiento (CPU), una Memoria 38 Gráfica y un circuito 40 integrado de Control de Memoria y de Vídeo (CONTROL DE MEMORIA Y DE VÍDEO) (mostrado dentro de un rectángulo de líneas discontinuas). El SIP 30, los dispositivos 32 de Entrada/Salida, la ROM 34, la RAM 35, la CPU 36 y una Máquina 42 Controladora de Memoria y de Estado de Sprite (MÁQ) del circuito 40 integrado de Control de Memoria y de Vídeo están interconectados por un bus 48 de datos. La CPU 36 puede comprender cualquier unidad de tratamiento adecuada y según la presente invención es una CPU de tipo 386, la cual es relativamente barata. La ROM 34 puede comprender cualquier memoria adecuada tal como, por ejemplo, una EPROM con fines de inicialización y para la programación de la CPU 36. La RAM 35 puede comprender cualquier memoria adecuada tal como, por ejemplo, dos DRAM de 256 Kilobytes por 16 bits conectadas en serie para proporcionar una configuración de 512 K por 16 bits para el uso como una memoria de circuito integrado para la CPU 36. La Memoria 38 Gráfica puede comprender cualquier memoria adecuada tal como, por ejemplo, una zona RAM de 32 bits de ancho o preferiblemente dos DRAM de 256 K por 16 bits dispuestas en paralelo para el uso con un bus 39 de 32 bits de ancho. La Memoria 38 Gráfica se emplea para almacenar datos de sprites relativos a gráficos e imágenes de vídeo. El uso de un bus 39 de 32 bits de ancho permite el uso de direccionamiento de memoria en modo página rápida tanto para una Máquina 42 Controladora de Memoria y de Estado de Sprite como para un desplazador de bloques de memoria (no mostrado) que forma parte del Controlador 40 de Memoria y de Vídeo. Al hacer un uso importante del direccionamiento de memoria en modo bloque, puede conseguirse una velocidad media de transferencia de datos de aproximadamente 52 nanosegundos, que corresponde a un tratamiento de aproximadamente 77 millones de bytes de datos por segundo.
El SIP 30 funciona para manejar las comunicaciones de datos entre el primer módulo 12 y el segundo módulo 14. Más concretamente, el SIP 30 maneja todas las señales de transferencia de datos entre el segundo módulo 14 y el sistema 22 de control del convertidor del primer módulo 12. Estas señales de transferencia de datos pueden tener formatos tales como, por ejemplo, un flujo de datos de tipo T1 a 1,5 Mbits/segundo que implica el volumen de las transferencias de comunicación, y datos en bruto procedentes de un receptor de infrarrojos (no mostrado) en el sistema 22 de control del convertidor. El SIP 30 también puede incluir un puerto serie síncrono, dúplex total (no mostrado) para ampliaciones futuras. Tales formatos de señales de transferencia de datos se emplean para comunicar entre el sistema 22 de control del convertidor del primer módulo 12 y la CPU 36 en el segundo módulo 14, para activar acciones deseadas en el segundo módulo 14.
El circuito 40 integrado de Control de Memoria y de Vídeo comprende la Máquina 42 Controladora de Memoria y de Estado de Sprite, unos circuitos 44 de Compuesta a YUV y unos circuitos 46 de Tratamiento (TRAT.) de Vídeo. La Máquina 42 Controladora de Memoria y de Estado de Sprite está acoplada a la Memoria 38 Gráfica por un bus 39 de datos y a los circuitos 46 de Tratamiento de Vídeo por un bus 45 de datos. Los circuitos 44 de Compuesta a YUV reciben la señal compuesta de vídeo de banda base procedente del bus 24 y da salida a las señales YUV de vídeo resultantes hacia la Máquina 42 Controladora de Memoria y de Estado de Sprite en un bus 43. Los circuitos 46 de Tratamiento de Vídeo reciben señales de vídeo procedentes de la Máquina 44 de Controladora de Memoria y de Estado de Sprite a través del bus 45 de datos y da salida a señales de vídeo en el estándar NTSC o PAL en un bus 47 hacia un receptor de televisión remoto (no mostrado) o a circuitos adicionales de tratamiento (no mostrados). Debe entenderse que la presente invención está dentro de la zona del circuito 40 integrado de Control de Memoria y de Vídeo y de la Memoria 38 Gráfica. Los elementos del primer módulo 12 y del segundo módulo 14 se presentaron y se expusieron anteriormente en el presente documento para obtener una mejor comprensión de cómo la presente invención se instala en la unidad 10 interactiva de caja de cable de abonado.
Haciendo ahora referencia a las figuras 2 y 3, se muestran diagramas de bloques de unas primera y segunda partes, respectivamente, de unos Circuitos 46 de Tratamiento de Vídeo (mostrados dentro de una zona de líneas discontinuas) hallados en el segundo módulo 14 de la unidad 10 de caja de cable de abonado de la figura 1, según la presente invención. Tal como se muestra en la figura 2, una Memoria 38 Gráfica, que forma un elemento del segundo módulo 14 de la figura 1, está acoplada a través de un bus 39 a una Máquina 42 Controladora de Memoria y de Estado de Sprite que forma parte de un Controlador 40 de Memoria y de Vídeo (mostrado dentro de una zona de líneas discontinuas) del segundo módulo 14 de la figura 1. Una primera parte de los circuitos 46 de Tratamiento de vídeo comprende un Cable 50 Coaxial de Datos y una Memoria 52 Intermedia de Ensamblaje de Píxeles (mostrada dentro de un rectángulo de líneas discontinuas). El Cable 50 Coaxial de Datos recibe datos a través de un bus 45 que fueron obtenidos por la Máquina 42 Controladora de Memoria y de Estado de Sprite procedentes de la Memoria 38 Gráfica para un sprite en particular, para transmisiones hacia la Memoria 52 Intermedia de Ensamblaje de Píxeles. Más concretamente, el Cable 50 Coaxial de Datos recibe datos para un sprite procedentes de la Memoria 38 Gráfica a través de la Máquina 42 Controladora de Memoria y de Estado de Sprite y proporciona salidas separadas relacionadas con datos de luminancia (datosy) y datos de crominancia (datosc) para transmitir a la Memoria 52 Intermedia de Ensamblaje de Píxeles.
La Memoria 52 Intermedia de Ensamblaje de Píxeles comprende unas primera, segunda y tercera memorias 53, 54 y 55 intermedias de doble línea, respectivamente, y una memoria 58 intermedia de la línea 0 de Y/G. La primera memoria 53 intermedia de doble línea se emplea para almacenar datos Y/G (luminancia) de la línea la y datos Y/G de la línea 1b para las primera y segunda líneas de un primer campo de una imagen de sprite recibida a través de un bus 49, procedente del Cable 50 Coaxial de Datos. Los datos de luminancia de línea comprenden 10 bits
(bits 9-0) de datos y control para cada píxel de una línea. La segunda memoria 54 de doble línea se emplea para almacenar datos C (crominancia) de la Línea la y datos C de la Línea 1b de las primera y segunda líneas del primer campo de la imagen de sprite recibida a través de un bus 51, procedente del Cable 50 Coaxial de Datos. Los datos de crominancia de línea comprenden 8 bits (bits 7-0) de datos para cada píxel de una línea. La tercera memoria 55 intermedia de doble línea se emplea para almacenar datos Y/G (luminancia) de la línea 2a y datos Y/G de la línea 2b de las primera y segunda líneas de un segundo campo de un imagen de sprite recibida a través del bus 49, procedentes del Cable 50 Coaxialde Datos. Los datos de luminancia de línea comprenden 10 bits (bits 9-0) de datos y control para cada píxel de una línea. Debe entenderse que las Líneas la y 2a de las primera y tercera memorias 53 y 55 intermedias de doble línea almacenan unas primera y segunda líneas horizontales de datos de píxeles, respectivamente, donde las primera y segunda líneas horizontales son líneas adyacentes en campos diferentes de la imagen de sprite en una formato entrelazado de presentación. Similarmente, las Líneas 1b y 2b de las primera y tercera memorias 53 y 55 intermedias de doble línea almacenan unas tercera y cuarta líneas horizontales de datos de píxeles, respectivamente, donde las tercera y cuarta líneas horizontales son líneas adyacentes en campos diferentes de la imagen de sprite en un formato entrelazado de presentación. Es decir, las primera y tercera memorias 53 y 55 intermedias de doble línea almacenan secuencialmente datos y control de luminancia para, por ejemplo, píxel de un par de líneas par e impar, respectivamente, de unos primer y segundo campos respectivos, o viceversa, de la imagen de sprite durante una exploración de un formato entrelazado de presentación. La segunda memoria 54 intermedia de doble línea almacena los datos de crominancia para los datos de línea almacenados en la memoria 53 intermedia de doble línea. Una memoria de crominancia de doble línea (no mostrada), similar a la memoria 54 intermedia de doble línea, puede preverse para la memoria 55 intermedia de doble línea, pero no es necesario por motivos de ahorro y de poca importancia en un Convolucionador que se explicará en lo sucesivo. Los datos de salida de la primera memoria 53 intermedia de doble línea comprenden diez bits de datos y control de luminancia para cada pixel de las líneas almacenadas en la misma, a los que se da salida en paralelo para cada píxel por un bus designado LÍNEA 1 a los circuitos en la figura 3. Los datos de salida de la segunda memoria 54 intermedia de doble línea comprenden ocho bits de datos de crominancia para cada píxel de las líneas almacenadas en la misma, a los que se da salida en paralelo para cada píxel por un bus designado LÍNEA 1c a los circuitos en la figura 3. Los datos de salida de la tercera memoria 55 intermedia de doble línea comprenden diez bits de datos y control de luminancia para cada píxel de las líneas almacenadas en la misma, a los que se da salida en paralelo para cada píxel por un bus designado LÍNEA 2 a los circuitos en la figura 3 y a la Memoria 58 Intermedia de la Línea 0 de Y/G. La Memoria 58 Intermedia de la Línea 0 de Y/G funciona para retrasar los datos de línea producidos por la tercera memoria 55 intermedia de doble línea por un periodo de línea horizontal para proporcionar una salida de línea retrasada que comprende diez bits de datos y control de luminancia para cada píxel de la línea almacenada en la misma, a la que se da salida en paralelo por un bus designado LÍNEA 0 a los circuitos en la figura 3. Debe entenderse que para una velocidad de muestreo de 13,5 MHz para la presentación de televisión en el estándar NTSC, existen 858 píxeles por línea de la imagen, de los cuales sólo se muestran realmente 704 píxeles aproximadamente, y que existen 525 líneas horizontales de píxeles en dos campos de una imagen, de las cuales sólo se observan normalmente 440-500 líneas aproximadamente, dependiendo del receptor de televisión empleado.
Volviendo a las figuras 4, 5 y 6, se muestra una secuencia ejemplar de funcionamiento para las primera y tercera memorias 53 y 55 intermedias de doble línea, respectivamente, y la Memoria 58 Intermedia de la Línea 0 de Y/G de la Memoria 52 Intermedia de Ensamblaje de Píxeles de la figura 2. Debe entenderse que en un funcionamiento normal de las memorias 53 y 55 intermedias de doble línea, una línea horizontal de datos de píxel se introduce en un primer campo en una mitad de la primera memoria 53 intermedia de doble línea simultáneamente a la introducción de una línea horizontal de datos de píxel en un segundo campo en una mitad de la tercera memoria 55 intermedia de doble línea. Simultáneamente a la introducción de líneas horizontales de datos de píxel en las primeras mitades de las primera y tercera memorias 53 y 55 intermedias de doble línea, unas líneas horizontales de datos de píxel previamente almacenadas en las otras mitades de las primera y tercera memorias 53 y 55 intermedias de doble línea se leen en las LÍNEAS 1 y 2 de salida, respectivamente. Es decir, para la primera memoria 53 intermedia de doble línea, una primera línea horizontal de datos de píxel procedente del primer campo se introduce, por ejemplo, en la parte Y/G de la LÍNEA la de la primera memoria 53 intermedia de doble línea, y durante un siguiente periodo de línea horizontal, una segunda línea horizontal de datos de píxel procedente de un primer campo de una trama se introduce en la parte Y/G de la LÍNEA 1b de la primera memoria 53 intermedia de doble línea mientras se lee la primera línea horizontal de datos de píxel procedentes de la parte Y/G de la LÍNEA la a la LÍNEA 1 de salida. Durante un siguiente periodo de línea horizontal, una tercera línea horizontal de datos de píxel procedente del primer campo se introduce en la parte Y/G de la LÍNEA la de la primera memoria 53 intermedia de doble línea al tiempo que la segunda línea horizontal de datos de píxel de la parte Y/G de la LÍNEA lb se lee en la LÍNEA 1 de salida. Simultáneamente, unas primera, segunda y tercera líneas horizontales de datos de píxel procedentes de un segundo campo de la trama se leen de manera similar en la tercera memoria 55 intermedia de doble línea y se les da salida desde la misma por la LÍNEA 2 de salida.
La figura 4 muestra un punto final de una etapa de inicialización de la Memoria 52 Intermedia de Ensamblaje de Píxeles tras encenderse por primera vez la unidad 10 de caja de cable de abonado de la figura 1. Más concretamente, tras el encendido, unos datos de píxel para una línea 0 horizontal de un primer campo y unos datos de píxel para una línea 1 horizontal de un segundo campo se introducen en la parte Y/G de la línea la de la primera memoria 53 intermedia de doble línea y en la parte Y/G de la línea 2a de la memoria 55 intermedia de doble línea, respectivamente, durante un primer periodo de línea horizontal. Durante un segundo periodo de línea horizontal, unos datos de píxel para una línea 2 horizontal de un primer campo y unos datos de píxel para una línea 3 horizontal de un segundo campo se introducen en la parte Y/G de la línea 1b de la primera memoria 53 intermedia de doble línea y en la parte Y/G de la línea 2b de la tercera memoria 55 intermedia de doble línea, respectivamente, mientras que los datos de píxel para las líneas 0 y 1 horizontales se leen de la parte Y/G de la línea la de la primera memoria 53 intermedia de doble línea y de la parte Y/G de la línea 2a de la tercera memoria 55 intermedia de doble línea, respectivamente, a las LÍNEAS 1 y 2 de salida respectivas. Simultáneamente con ello, los datos de píxel para una línea 1 horizontal procedente de la parte Y/G de la línea 2a de la tercera memoria 55 intermedia de doble línea se introducen en la Memoria 58 Intermedia de la Línea 0 de Y/G. Puesto que la Memoria 58 Intermedia de la Línea 0 de Y/G funciona para retrasar los datos de línea horizontal almacenados en la misma en un periodo de línea horizontal, y que la Memoria 58 Intermedia no tenía datos almacenados en la misma durante la inicialización, la salida de la misma en la LÍNEA 0 de salida no incluye datos válidos.
La figura 5 continúa el proceso de carga y salida tras las etapas de inicialización mostradas en la figura 4. Más concretamente, unos datos de píxel para una línea 4 horizontal de un primer campo y unos datos de píxel para una línea 5 horizontal de un segundo campo se introducen en la parte Y/G de la línea la de la primera memoria 53 intermedia de doble línea y en la parte Y/G de la línea 2a de la tercera memoria 55 intermedia de doble línea, respectivamente, durante un tercer periodo de línea horizontal. Simultáneamente con ello, los datos de píxel para las líneas 2 y 3 horizontales se leen de la parte Y/G de la línea 1b de la primera memoria 53 intermedia de doble línea y de la parte Y/G de la línea 2b de la tercera memoria 55 intermedia de doble línea, respectivamente, a sus LÍNEAS 1 y 2 de salida respectivas. Simultáneamente con ello, los datos de píxel para la línea 3 horizontal de la parte Y/G de la línea 2b de la tercera memoria 55 intermedia de doble línea se introducen en la Memoria 58 Intermedia de la Línea 0 de Y/G al tiempo que a los datos de píxel anteriormente almacenados para los datos de la línea 1 horizontal se les da salida por la LÍNEA 0 de salida. Por tanto, para un sprite, las Memorias 58, 53 y 55 Intermedias están dando salida a datos de píxel para las líneas 1, 2 y 3 horizontales, respectivamente, por las LÍNEAS 0, 1 y 2 de salida respectivas durante el tercer periodo de línea horizontal, donde los datos de píxel para las líneas 1 y 3 horizontales forman parte del segundo campo y los datos de pixel para la línea 2 horizontal forman parte del primer campo de una imagen de sprite que se almacenaron en la Memoria 38 Gráfica (mostrada en las
figuras 1 y 2).
La figura 6 continúa el proceso de carga y de salida de la etapa mostrada en la figura 5. Más concretamente, unos datos de pixel para una línea 6 horizontal de un primer campo unos datos de píxel para una línea 7 horizontal de un segundo campo de un sprite se introducen en la parte Y/G de la línea 1b horizontal de la primera memoria 53 intermedia de doble línea y en la parte Y/G de la línea 2b horizontal de la tercera memoria 55 intermedia de doble línea, respectivamente, durante un cuarto periodo de línea horizontal. Simultáneamente con ello, los datos de píxel para las líneas 4 y 5 horizontales del sprite se leen de la parte Y/G de la línea la horizontal de la primera memoria 53 intermedia de doble línea y de la parte Y/G de la línea 2a horizontal de la tercera memoria 55 intermedia de doble línea, respectivamente, a las LÍNEAS 1 y 2 de salida respectivas. Simultáneamente con ello, los datos de píxel para la línea 5 horizontal de la parte Y/G de la línea 2a de la tercera memoria 55 intermedia de doble línea se introducen en la Memoria 58 Intermedia de la Línea 0 de Y/G al tiempo que a los datos de píxel para la línea 3 horizontal previamente almacenados se les da salida por la LÍNEA 0 de salida. Por tanto, las Memorias 58, 53 y 55 están dando salida a datos de píxel para las líneas 3, 4 y 5 horizontales, respectivamente, por las LÍNEAS 0, 1 y 2 respectivas durante el cuarto periodo de línea horizontal, donde los datos para las líneas 3 y 5 horizontales forman parte del segundo campo de la imagen de sprite mientras que los datos para la línea 4 horizontal se obtienen del primer campo de la imagen de sprite que se almacenó en la Memoria 38 Gráfica (mostrada en las figuras 1 y 2). A partir de las figuras 5 y 6 puede observarse que tras la inicialización (figura 4), los datos de pixel en la LÍNEA 1 de salida representan datos para líneas horizontales secuenciales (por ejemplo, líneas (0-254) horizontales pares de una imagen en el estándar NTSC) de un primer campo de los dos campos de una trama para una presentación entrelazada NTSC. Tras haberse dado salida a las líneas horizontales pares, ejemplares, del primer campo en la LÍNEA 1 de salida durante periodos secuenciales de línea horizontal, la salida continúa con líneas horizontales secuencialmente numeradas (por ejemplo, las líneas 1-255 horizontales impares de una imagen en el estándar NSTC) del segundo campo de la trama de la manera hallada para explorar una presentación entrelazada. Aunque no se muestran en las figuras 4-6, debe entenderse que a los datos de crominancia se les da salida por la LÍNEA 1c de salida de la segunda memoria 54 intermedia de doble línea mostrada en la figura 2, simultáneamente con los datos de pixel de luminancia asociados para cada línea horizontal a la que se está dando salida por la LÍNEA 1
de salida.
Volviendo ahora a la figura 3, se muestra un diagrama de bloques de una segunda parte de unos Circuitos 46 de Tratamiento de Vídeo hallados en la unidad 10 de caja de cable de abonado de la figura 1 según la presente invención. La segunda parte de los Circuitos 46 de Tratamiento de Vídeo comprende unos circuitos 60 de Paleta de Color, un Demultiplexor 62 de YC a YUV, un Multiplexor/Atenuador 64 (MUX./ATN.), un Multiplexor y Control 66 de 3:1 (MUX. Y CONT. 3:1) y un Convolucionador 68. Los datos de píxel de 10 bits (bits 9:0) que se propagan por cada una de las LÍNEAS 0, 1, 2 procedentes de la Memoria 52 Intermedia de Ensamblaje de Píxeles de la figura 2, para píxeles correspondientes en tres líneas horizontales adyacentes de una imagen de sprite, se reciben en entradas distintas de cada uno de los circuitos 60 de Paleta de Color, el Demultiplexor 62 de YC a YUV y el Multiplexor y Control 66 de 3:1. Más concretamente, los bits 7-0 de la salida en paralelo de 10-bit/píxel procedente de la Memoria 52 Intermedia de Ensamblaje de Píxeles, para cada una de las LÍNEAS 0, 1 y 2 de salida, se reciben en las entradas de los circuitos 60 de Paleta de Color y del Demultiplexor 62 de YC a YUV, mientras que los bits 9 y 8 de la salida en paralelo de l0-bit/píxel procedente de la Memoria 52 Intermedia de Ensamblaje de Píxeles, para cada una de las LÍNEAS 0, 1 y 2 de salida, se recibe en las entradas del Multiplexor y Control 66 de 3:1. Adicionalmente, el Demultiplexor 62 de YC a YUV recibe los bits 7-0 de datos de crominancia a los que se da salida en paralelo por la LÍNEA 1c de salida desde la Memoria 52 Intermedia de Ensamblaje de Píxeles puesto que los datos de crominancia sólo se emplean cuando los datos de píxel del sprite están relacionados con una señal de sprite en Color Real. Más concretamente, cuando los datos de sprite están codificados como una señal de paleta de color, el propio código define el color y los datos de crominancia no son necesarios como con una señal de vídeo en
color real.
Los circuitos 60 de Paleta de Color funcionan para detectar cuándo los 8 bits (bits 7:0) de datos de píxel recibidos en paralelo por cada una de las LÍNEAS 0, 1 y 2 de salida representan códigos distintos para colores particulares de una paleta de color y para convertir esos códigos de paleta de color en una señal de salida en el bus 61 que representa una señal multiplexada YUV de paleta de color de 24 bits para tres datos de píxel de 8 bits recibidos para esas tres líneas. Los circuitos 60 de Paleta de Color son dispositivos bien conocidos y por tanto puede emplearse cualquier circuito adecuado. El Demultiplexor 62 de YC a YUV detecta cuándo 8 bits (bits 7:0) de los datos recibidos en paralelo para píxeles en cada una de las LÍNEAS 0, 1 y 2 de salida de la Memoria 52 Intermedia de Ensamblaje de Píxeles representan datos de color real (por ejemplo, un sprite obtenido directamente de una imagen de televisión) y también emplea los datos de crominancia de 8 bits obtenidos a través de la LÍNEA 1c de salida de la Memoria 52 Intermedia de Ensamblaje de Pixeles para generar una señal YUV de salida de 24 bits en Color Real para píxeles de las tres líneas para la transmisión en el bus 63.
El Multiplexor/Atenuador 64 (MUX./ATN.) recibe, en entradas distintas del mismo, cada una de las señales de datos YUV de paleta de color de 24 bits que se propagan por un bus 61 de los circuitos 60 de Paleta de Color, propagándose las señales de datos YUV de color real de 24 bits por el bus 63 del Demultiplexor 62 de YC a YUV y unas señales YUV de vídeo en directo de 24 bits por un bus 59. El Multiplexor/Atenuador 64 es sensible a señales de control en un cable 67 procedente del Multiplexor y Control 66 de 3:1 para dar salida a una de las tres señales de entrada (YUV de paleta de color en 24 bits, YUV en color real de 24 bits o YUV de vídeo en directo de 24 bits) recibidas en el Multiplexor/Atenuador 64 durante cada periodo de píxel como señales YUV digitalizadas mezcladas de salida por un bus 65. Más concretamente, el Multiplexor y Control 66 de 3:1 determina a partir de los bits 9 y 8 recibidos por las LÍNEAS 0, 1 y 2 de salida de la Memoria 52 Intermedia de Ensamblaje de Píxeles si los datos de píxel procedentes de la Memoria 52 Intermedia de Ensamblaje de Píxeles por las LÍNEAS 0, 1 y 2 de salida representan datos de paleta de color, datos de color real o datos (datos no válidos) para un píxel que no forma parte de un sprite a superponerse sobre una señal de vídeo en directo y, por tanto, la señal de vídeo en directo debería emplearse para ese pixel en vez de los datos de paleta de color o de color real procedentes de la Memoria 52 Intermedia de Ensamblaje de Píxeles. Como resultado de tal información de control obtenida de los bits 9 y 8 de las LÍNEAS 0, 1 y 2 de salida de la Memoria 52 Intermedia de Ensamblaje de Píxeles, el Multiplexor y Control 66 de 3:1 envía señales de control por el cable 67 al Multiplexor/Atenuador 64 para seleccionar los datos de entrada correctos para cada píxel de una imagen a presentar en un receptor NTSC o PAL de televisión (no mostrado). El Convolucionador 68 emplea conjuntos secuenciales de valores de datos de tres píxeles recibidos en la señal procedente del Multiplexor/Atenuador 64 por el bus 65 para proporcionar una señal ponderada de salida de 8 bits para datos de pixel, para un pixel central en una matriz de 3 por 3 de píxeles correspondientes en tres líneas adyacentes de una imagen de televisión o para proporcionar la señal procedente del Multiplexor/Atenuador 64 por el bus 65 como una señal YUV de salida por el bus 47, dependiendo de las señales de control procedentes del Multiplexor y Control 66 de 3:1
por un cable 69.
Haciendo ahora referencia a la figura 7, se muestra un diagrama de bloques de un circuito 64 Multiplexor/Atenuador ejemplar (mostrado dentro de un rectángulo de líneas discontinuas) que comprende un Multiplexor 72 (MUX.) de 2:1 y un Atenuador 74 (mostrado dentro de un rectángulo de líneas discontinuas). El Atenuador 74 comprende un Sumador 75 A-B, un Multiplicador 77 con Signo (MULT. CON SIGNO) y un Sumador 78 A+B. El Multiplexor 72 de 2:1 recibe cada una de las señales de datos Gráficos procedentes de la Paleta 60 de Color por el bus 61 en un primer terminal (A) de entrada y las señales de datos Gráficos procedentes del Demultiplexor 62 de YC a YUV en un segundo terminal (B) de entrada. Una señal de control por el cable 67 procedente del Multiplexor y Control 66 de 3:1 selecciona a cuál de las dos señales Gráficas de entrada (del terminal A o B de entrada) se dará salida desde el Multiplexor 72 de 2:1 por el terminal (0) de salida. Las señales (Y, U o V) Gráficas de salida en Píxeles procedentes de un terminal (0) de salida del Multiplexor 72 de 2:1 (designado como G) por un bus 70 se reciben en un primer terminal (A) de entrada del Sumador 75 A-B del Atenuador 74. Una señal (Y, U o V) YUV de vídeo en directo (designada L) se recibe procedente de un bus 59 en un segundo terminal (B) de entrada del Sumador 75 A-B. Los valores de datos de píxel de los datos de entrada del terminal A del Multiplexor 72 de 2:1 menos los valores de datos de los datos de píxel YUV de vídeo en directo recibidos en el terminal B de entrada se proporcionan como una salida por un terminal (0) de salida del Sumador 75 A-B. El Multiplicador 77 con Signo recibe de, por ejemplo, un registro (no mostrado) un valor (R) de control de proporción variable de 9 bits por un bus 71 en un primer terminal (A) de entrada, y la salida del Sumador 75 A-B por un bus 76 en un segundo terminal (B) de entrada. Se da salida al valor multiplicado resultante del valor (R) de control de proporción en el bus 71 y los datos de salida de señal Gráfica procedentes del Sumador 75 A-B en el bus 76, por un terminal (0) de salida, por un bus 79, hacia un primer terminal (A) de entrada del Sumador 78 A+B. La señal (Y, U o V) de vídeo en directo en el bus 59 se recibe en un segundo terminal (B) de entrada del Sumador 78 A+B, y la suma de los dos valores de las señales de entrada se proporciona como una señal de salida (designada como Q) por el bus 65 al Convolucionador 68 (mostrado en la figura 3).
El Atenuador 74 funciona para atenuar una señal gráfica para un sprite de entrada o de salida de manera que el gráfico no aparezca o desaparezca instantáneamente en la señal de vídeo en directo. Es decir, para una apertura gráfica de negro (fade-in), el Atenuador 74 hace que el gráfico aparezca con intensidad creciente en un receptor de televisión mientras que la señal de vídeo en directo disminuye de intensidad en la zona del gráfico en un corto periodo de tiempo de manera que el gráfico sea totalmente visible. Similarmente, para un fundido gráfico en negro (fade-out), el Atenuador 74 hace que el gráfico aparezca con intensidad decreciente en un receptor de televisión mientras que la señal de vídeo en directo aumenta de intensidad en la zona sobre el gráfico en un corto periodo de tiempo hasta que el gráfico desaparece. El funcionamiento del Atenuador 74 puede explicarse de acuerdo con los siguientes algoritmos. Para lo siguiente, un bus 71 multiplicador (R) atenuador de 9 bits ejemplar se define como sigue. A partir de las definiciones anteriores, R es el valor de control de atenuación y va desde 0 a 256.
Q = [ (R/256) *G] + [1-R/256) *L), y
= L + [ (G-L) *R] /256, Ec. 1
donde "L" es un valor de pixel del vídeo en directo, "G" es un valor de píxel de la superposición de sprites, y el sím-
bolo "*" representa un función multiplicadora. A partir de la Ecuación 1 anterior, a medida que cambia la proporción utilizada para el valor R multiplicador, la intensidad de las señales gráfica y de vídeo en directo cambia en un sentido opuesto.
Haciendo ahora referencia a la figura 8, se muestra un diagrama de bloques del Convolucionador 68 mostrado en la figura 3. El Convolucionador 68 (mostrado dentro de un rectángulo de líneas discontinuas) comprende un circuito 80 de Bypass, un circuito 82 convolucionador y un Multiplexor 84 (MUX.). El circuito 80 de Bypass recibe datos secuenciales de pixel procedentes del Multiplexor/Atenuador 64 (mostrado en las figuras 3 y 7) por el bus 65 y genera simultáneamente a partir de los mismos, datos en los buses 81 para tres píxeles en una vertical de un sprite a presentar en un receptor de televisión. Más concretamente, los tres píxeles se obtienen a partir de pixeles correspondientes en tres líneas adyacentes de ambos campos de una trama que forma una imagen de sprite. Los valores de los datos de los tres pixeles se obtienen mediante cualquier disposición adecuada, tal como una pluralidad de circuitos de retraso que funcionan a partir de un reloj de pixel o de un reloj de pixel multiplicado por tres. Los valores de los datos de los tres pixeles son recibidos a través de unos buses 81 por el circuito 82 Convolucionador. Los datos secuenciales de pixel procedentes del Multiplexor/Atenuador 64 son recibidos por el circuito 80 de Bypass en un bus 65. Los datos secuenciales de pixel procedentes del Multiplexor/Atenuador 64 pasan a través del circuito 80 de Bypass y se proporcionan a una primera entrada (A) del Multiplexor 84 a través de un bus 85. Además, el circuito 80 de Bypass transmite por unos buses 81 unos conjuntos secuenciales de valores de los datos de los tres pixeles desde tres salidas distintas del mismo hasta unas entradas distintas del circuito 82 Convolucionador. El circuito 82 Convolucionador proporciona una señal ponderada de salida de 8 bits para datos de pixel, para un pixel central en una matriz de 3 por 3 de píxeles correspondientes en tres líneas adyacentes de una imagen de televisión, a una segunda entrada (B) del Multiplexor 84 a través de un bus 86. El Multiplexor 84 selecciona las señales en las primera o segunda entradas (A) o (B) para la transmisión al terminal (0) de salida y al bus 47, dependiendo de unas señales de control procedentes del Multiplexor y Control 66 de 3:1 por un cable 69.
Tal como se describe en la solicitud de patente con N° de serie 08/523395 en tramitación junto con la presente, presentada en la misma fecha que la presente solicitud a favor de los presentes inventores, el circuito 82 Convolucionador multiplica efectivamente (empleando tan sólo sumadores y retrasos) los tres pixeles, recibidos por los buses 81, de una vertical en una matriz 3 por 3 de pixeles con unos valores ponderados predeterminados, y proporciona una señal promediada de salida para el píxel central de la matriz de 3 por 3 a una segunda entrada (B) del Multiplexor 84. Este proceso continúa para cada píxel de una fila central (LÍNEA 1 de salida de la Memoria 52 Intermedia de Ensamblaje de Píxeles de la figura 2) a medida que los datos de sprite para los píxeles correspondientes de las tres líneas adyacentes según los datos de píxel avanzan (se desplazan) horizontalmente a través de la imagen de sprite para tres líneas adyacentes.
Haciendo ahora referencia a la figura 9, se muestra una Memoria 38 Gráfica y una parte de los Circuitos 46 de Tratamiento de Vídeo (mostrados dentro de un rectángulo de líneas discontinuas), tal como se muestra en la figura 2 formando parte del Controlador 40 de Memoria y de Vídeo del segundo módulo 14 de la figura 1. La Memoria 38 Gráfica está acoplada a través de un bus 39 de datos a una Máquina 42 Controladora de Memoria y de Estado de Sprite, que forma parte de la parte de los Circuitos 46 de Tratamiento de Vídeo, para una comunicación bidireccional. La Máquina 42 Controladora de Memoria y de Estado de Sprite está acoplada a una Unidad 36 Central de Tratamiento (CPU) (mostrada en la figura 1) a través de un bus 48 para escribir en la Memoria 38 Gráfica a través del bus 39, y recibe señales de Campo <1:0> procedentes de los circuitos 44 de Compuesta a YUV de la figura 1 a través del conductor 56. Esta parte de los Circuitos 46 de Tratamiento de Vídeo comprende adicionalmente un Cable 50 Coaxial de Datos (mostrado dentro de un rectángulo de líneas discontinuas) y una Memoria 52 Intermedia de Ensamblaje de Píxeles.
El Cable 50 Coaxial de Datos comprende un Generador 97 de Direcciones de Memoria Intermedia de Píxeles y un Cable 98 Coaxial de Datos de Memoria Intermedia de Píxeles los cuales reciben cada uno una señal de salida procedente de la Máquina 42 Controladora de Memoria y de Estado de Sprite a través de un bus 45. El Generador 97 de Direcciones de Memoria Intermedia de Píxeles y el Cable 98 Coaxial de Datos de Memoria Intermedia de Píxeles transmiten señales diferentes de salida de datos de píxel y de dirección, respectivamente, a la Memoria 52 Intermedia de Ensamblaje de Píxeles a través de los buses 49 y 51 respectivos. El Cable 98 Coaxial de Datos de Memoria Intermedia de Píxeles también recibe los datos directamente desde la Memoria 38 Gráfica por el bus 39. El Generador 97 de Direcciones de Memoria Intermedia de Píxeles y el Cable 98 Coaxial de Datos de Memoria Intermedia de Píxeles emplean datos de píxel obtenidos de una palabra de Control de Sprite en una Entrada de Sprite, una tabla 92 de Datos de Sprite y cualquier otra información procedente de una tabla 94 de Controles de Línea en la Memoria 38 Gráfica, para colocar los datos para cada píxel en la posición apropiada de dirección de las Memorias 53, 54 y 55 Intermedias de Doble Línea (mostradas únicamente en la figura 2) de la Memoria 52 Intermedia de Ensamblaje de Píxeles. Tal como se explicará con más detalle en lo sucesivo, efectos especiales tales como la magnificación, la deformación, etc. para líneas horizontales en una Entrada de Sprite se obtienen a partir de unas palabras de Control de Sprite en la Entrada de Sprite asociada y de la tabla 94 de Control de Línea de la Memoria 38 Gráfica. El Generador 97 de Direcciones de Memoria Intermedia de Píxeles del Cable 50 Coaxial de Datos emplea esta información para alterar apropiadamente la dirección de pixel en una línea de datos de sprite obtenida de la tabla 92 de Datos de Sprite de la Memoria 38 Gráfica para conseguir el efecto especial designado. Esta dirección alterada se envía a la Memoria 52 Intermedia de Ensamblaje de Píxeles para usar en la colocación de los datos de píxel asociados en la posición de píxel designada por la dirección alterada en las Memorias 53, 54 ó 55 Intermedias de Doble Línea de la Memoria 52 Intermedia de Ensamblaje de Píxeles para proporcionar posteriormente el efecto especial designado en la pantalla de televisión. El Cable 98 Coaxial de Datos de Memoria Intermedia de Píxeles recibe los datos de píxel para la dirección de píxel y transmite los datos de píxel a la Memoria 52 Intermedia de Ensamblaje de Píxeles para el almacenamiento en la dirección de las Memorias 53, 54 ó 55 Intermedias de Doble Línea generadas por el Generador 97 de Direcciones de Memoria Intermedia de Píxeles. La Memoria Intermedia de Ensamblaje de Píxeles produce datos de píxel de luminancia para tres líneas horizontales adyacentes de un sprite por unos buses designados LÍNEA 0, LÍNEA 1 y LÍNEA 2, y produce datos de pixel de crominancia asociados con los datos de salida de luminancia de LÍNEA 1 por una LÍNEA 1c tal como se explicó anteriormente en la presente para 1a Memoria Intermedia de Ensamblaje de Píxeles en la figura 2.
La Memoria 38 Gráfica comprende múltiples Tablas, que comprenden la tabla 90 de Listado de Sprites, la tabla 92 de Datos de Sprite, la tabla 94 de Controles de Línea y una tabla 96 de Listado de Recorridos. La tabla 90 de Listado de Sprites comprende una parte separada de memoria para cada uno o una pluralidad de N sprites (sólo se incluyen las entradas para los sprites n° 1, n° 2 y n° N). Tal como se muestra para la entrada del Sprite n° 1, la parte de memoria comprende por tanto un parte de Puntero de Datos de Sprite, una parte de Controles de Sprite, una parte de Puntero de Tabla de Líneas, una parte de Otros Controles Opcionales y una parte de Control de Habilitación de Campo. La parte de Puntero de Datos de Sprite se emplea para acceder a la tabla 92 de Datos de Sprite en una posición predeterminada asociada con la Entrada de Sprite. La parte de Controles de Sprite comprende datos relativos a, por ejemplo, al tamaño del sprite, a su ubicación o posición X e Y en la pantalla del receptor de televisión, e información sobre magnificación, deformación, etc., que ha de realizarse en el sprite. Más concretamente, si la parte de Controles de Sprite indica que un sprite tiene una magnificación de 2, entonces cada línea del sprite aumenta en 2. Similarmente, si la parte de Controles de Sprite indica que un sprite tiene un desfase de 2, entonces todas las líneas del sprite se desfasan en 2. La parte de Controles de Sprite afecta de la misma manera a cada línea horizontal de datos de píxel del sprite.
La parte de Puntero de Tabla de Líneas de cada Entrada de Sprite se emplea para acceder a una parte predeterminada de la Tabla 94 de Controles de Línea para palabras de control asociadas con esa Entrada de Sprite con el fin de producir efectos especiales más avanzados que los de aquéllos producidos por la parte de Controles de Sprite descrita anteriormente. Finalmente, la parte de Control de Habilitación de Campo se emplea para producir efectos de "vidrio ahumado" (superposición transparente) en la pantalla del receptor de televisión para la Entrada de Sprite a la que se está accediendo en la tabla 90 de Listado de Sprites. Unas partes similares se muestran para cada una de las otras entradas del sprite n° 2 al sprite n° N. Además, los sprites en la tabla 90 de Listado de Sprites se incluyen preferiblemente en orden de prioridad creciente donde, por ejemplo, la entrada del sprite n° 1 tiene una prioridad mínima y la entrada del sprite n° N tiene una prioridad máxima. Como resultado de tal disposición por prioridad, los píxeles de un sprite con una prioridad más alta sobrescriben, sustituyen o tiene precedencia sobre los píxeles de un sprite con una prioridad más baja, donde dos sprites o un sprite y un vídeo en directo está situados en una posición superpuesta en una pantalla de un receptor de televisión.
La tabla 92 de Datos de Sprite comprende palabras de datos que incluyen datos puros para cada uno de los píxeles de cada línea horizontal para cada Entrada de Sprite de la tabla 90 de Listado de Sprites. Es decir, cuando se accede a una Entrada de Sprite en la tabla 90 de Listado de Sprites, la parte de Puntero de Datos de Sprite dirige el acceso a la tabla 92 de Datos de Sprite, donde las palabras de Datos de Sprite (por ejemplo, palabra de Datos del Sprite A a palabra de Datos del Sprite C) para esa Entrada de Sprite se almacenan en la tabla 92 de Datos de Sprite de la Memoria 38 Gráfica. Debe entenderse que estas palabras de Datos de Sprite no incluyen el número numérico de líneas en el sprite puesto que el tamaño del sprite, la posición en la pantalla del receptor de televisión, etc., para ese sprite están situados en la parte de Controles de Sprite de la Entrada de Lista de Sprite. La tabla 90 de Listado de Sprites y la tabla 92 de Datos de Sprite trabajan juntas al acceder primero a la tabla 90 de Listado de Sprites y a continuación, bajo el control de la parte de Puntero de Datos de Sprite, al acceder a la tabla 92 de Datos de Sprite para recuperar los datos que indican a los Circuitos 46 de Tratamiento de Vídeo que dibuje el sprite de la manera descrita por las palabras de Datos de Sprite.
La tabla 94 de Controles de Línea de la Memoria 38 Gráfica es una tabla empleada opcionalmente que contiene subtablas de diferentes longitudes predeterminadas (sólo se muestra una subtabla que incluye N palabras de control), donde cada subtabla comprende un palabra diferente de control de línea para cada línea de un sprite. Las palabras de control de línea en la Tabla 94 de Controles de Línea proporcionan unos controles independientes para las líneas de ese sprite. Más concretamente, tal como se ha expuesto anteriormente, la parte de Controles de Sprite de cada Entrada de Sprite en la tabla 90 de Listado de Sprites afecta de la misma manera a cada línea de un sprite. En contraposición, las Palabras de Control de Línea en una subtabla en la tabla 94 de Controles de Línea para una Entrada de Sprite, tal como ha indicado la parte de Puntero de Tabla de Líneas de la tabla 90 de Listado de Sprites, se emplean para proporcionar controles independientes para cada una de las líneas de ese sprite. Por ejemplo, se supone que la parte de Controles de Sprite para la Entrada del Sprite n° 1 indica que la imagen del Sprite n° 1 incluye diez líneas en una posición X e Y en la pantalla del receptor de televisión sin ningún efecto especial, tal como un desfase constante. Los datos de píxel para cada una de las diez líneas de la imagen del Sprite n° 1 se proporcionan en la tabla 92 de Datos de Sprite, empezando por la dirección indicada en la misma por parte de Puntero de Datos de Sprite de la Entrada del Sprite
n° 1. Los efectos especiales que pueden emplearse para cualquiera o más de las diez líneas del Sprite n° 1 se encuentran en ciertas de las palabras de control de línea en la tabla 94 de Controles de Línea, empezando por la dirección indicada por la parte de Puntero de Tabla de Líneas de la Entrada del Sprite n° 1. Es decir, los bordes de la imagen del Sprite n° 1 pueden estar alineados en línea recta en la pantalla del receptor de televisión. No obstante, con las palabras de control de línea de la tabla 94 de Controles de Línea, cada línea de la Entrada del Sprite n° 1 puede tener, por ejemplo, desfases diferentes para deformar la imagen de una manera predeterminada. Por ejemplo, una imagen de sprite puede deformarse empleando las palabras asociadas de control de línea de la tabla 94 de Controles de Línea para aparecer en la superficie exterior de un cilindro tridimensional.
Haciendo ahora referencia a las figuras 10, 11, 12, 13, 14 y 15, se muestran ejemplos de lo que puede hacerse con las palabras de control de línea de la tabla 94 de Controles de Línea según una primera realización de la presente invención. Más concretamente, en la figura 10 se muestra una imagen de sprite tal como viene definida tanto por los Controles de Sprite de la tabla 90 de Listado de Sprites como por los datos de Sprite asociados con una Entrada de Sprite en la tabla 92 de Datos de Sprite sin efecto especial avanzado alguno que pueda introducirse a través de una subtabla en la tabla 94 de Controles de Línea. En las figuras 11 y 12 se muestra cómo la imagen de sprite de la figura 10 puede cambiarse para producir efectos seudotridimensionales al variar unos desfases horizontales en cada línea. Por ejemplo, en las figuras 11 y 12, cada línea del sprite de la figura 10 se desfasa en una cantidad diferente, tal como se define en las palabras de control de línea de unas primera y segunda subtablas, respectivamente, de la tabla 94 de Controles de Línea.
La figura 13 muestra un ejemplo de la realización de un efecto avanzado de deformación con unos controles de línea de magnificación horizontal de la imagen de sprite de la figura 10. Más concretamente, las palabras de control de línea de una subtabla de la tabla 94 de Controles de Línea, tal como vienen indicadas por el Puntero de la Tabla de Líneas de una Entrada de Sprite de la tabla 90 de Listado de Sprites, definen tanto la cantidad de deformación o desfase para cada borde del sprite, para cada línea del sprite, como la cantidad de magnificación a emplear para cada línea del sprite.
Las figuras 14 y 15 muestran un ejemplo de un efecto especial avanzado con una reflexión variable de línea horizontal en cada línea de un sprite. Más concretamente, la figura 14 muestra una imagen de sprite tal como está definida por una Entrada de Sprite asociada de la tabla 90 de Listado de Sprites y de la tabla 92 de Datos de Sprite. La figura 15 muestra cómo una subtabla de la tabla 94 de Controles de Línea puede cambiar la imagen de sprite de la figura 14 al variar unos desfases de línea horizontal en tan sólo la mitad superior de la imagen de sprite para producir una imagen especular de la mitad inferior de la imagen de sprite mostrada en la figura 14. Otros efectos especiales avanzados que pueden realizarse con subtablas de la tabla 94 de Controles de Línea son, por ejemplo, (a) variar un banco de paleta de color para 256 colores en un sprite de 4 bits, (b) variar el control de visibilidad para hacer que desaparezcan líneas selectivas en una imagen de sprite y (c) variar los límites horizontales de corte para cortar selectivamente alrededor de una forma de una imagen de sprite. Una ventaja obtenida mediante el uso de la tabla 94 de Controles de Línea es que un efecto especial avanzado, creado por una tabla en particular, puede ser empleado por muchas de las Entradas de Sprite de la tabla 90 de Listado de Sprites. Esto ahorra espacio en memoria en comparación con la construcción de la subtabla en cada una de las Entradas de Sprite, tal como puede hallarse en la técnica anterior. Además, pueden emplearse datos para una misma imagen de sprite en múltiples Entradas de Sprite de la tabla 90 de Listado de Sprites, donde cada una de las múltiples Entradas de Sprite emplea su parte de Puntero de Tabla de Líneas para entrar en una subtabla diferente de la tabla 94 de Controles de Línea. Tales múltiples Entradas de Sprite iguales asociadas con subtablas de Controles de Línea distintas se emplean cuando una misma imagen de sprite con diferentes efectos especiales avanzados ha de verse en posiciones diferentes en la pantalla del receptor
de televisión.
Volviendo ahora a la figura 9, la tabla 96 de Listado de Recorridos es una tabla opcional que se emplea para ahorrar tiempo en el tratamiento de muchas Entradas de Sprite en la tabla 90 de Listado de Sprites. En los sistemas de la técnica anterior, cada una de las Entradas de Sprite en una tabla 90 de Listado de Sprites se introduce secuencialmente para determinar si ese sprite existe en un píxel que se está ensamblando para un línea horizontal que emplea el tamaño y la posición X e Y en una pantalla de presentación designados para ese sprite. Como resultado, los sistemas de la técnica anterior, por ejemplo para jugar a juegos, estaban limitados a un número escaso de sprites (por ejemplo, N = 8 ó 16 sprites) para ensamblar los píxeles para cada línea dentro del periodo de tiempo necesario para presentar tal línea horizontal en la pantalla de presentación.
En la presente unidad 10 de caja de cable de abonado, sin presencia de la tabla 96 de Listado de Recorridos opcional, la Máquina 42 Controladora de Memoria y de Estado de Sprite normalmente accede a cada una de la pluralidad de N Entradas de Sprite en la tabla 90 de Listado de Sprites de la Memoria 38 Gráfica para determinar cuál de las N Entradas de Sprite existe en cada píxel de la línea horizontal que se está ensamblando. Para acceder a cada una de las N Entradas de Sprite de la tabla 90 de Listado de Sprites, la Máquina 42 Controladora de Memoria y de Estado de Sprite obtiene los datos de la tabla 92 de Datos de Sprite y la tabla 94 de Controles de Línea opcional necesarios para cada sprite, para producir los datos de pixel para cada línea horizontal que se está ensamblando en la Memoria 52 Intermedia de Ensamblaje de Píxeles. Sin embargo, si la Máquina 42 Controladora de Memoria y de Estado de Sprite tuviese que acceder a y tratar, por ejemplo, 96 Entradas de Sprite diferentes, el tiempo necesario para tratar los 96 sprites excedería un periodo de tiempo permitido para ensamblar cada línea horizontal de datos de píxel en la Memoria 52 Intermedia de Ensamblaje de Píxeles. El uso de la tabla 96 de Listado de Recorridos resuelve este problema.
Cuando se emplea la tabla 96 de Listado de Recorridos opcional, al menos un registro (no mostrado) en la Máquina 42 Controladora de Memoria y de Estado de Sprite indica que la tabla 96 de Listado de Recorridos existe y proporciona todos los datos necesarios para que la Máquina 42 Controladora de Memoria y de Estado de Sprite utilice apropiadamente la tabla 96 de Listado de Recorridos, incluyendo una parte designada como "n° de Palabras por Entrada de Sprite" que contiene un número (valor entero) de palabras (NP) por Entrada en la Lista de Sprites, que es un valor entero constante para cada una de las Entradas de Sprite, cuando existe la tabla 96 de Listado de Recorridos. Más concretamente, cada Entrada de Sprite en la tabla 90 de Listado de Sprites puede incluir palabras para (1) un Puntero de Datos de Sprite, (2) Controles de Sprite, (3) una palabra opcional de Puntero de Tabla de Líneas, (4) una palabra opcional para unos controles de sprite opcionales y (5) una Palabra de Control de Habilitación de Campo opcional. Por tanto, en teoría cada Entrada de Sprite de la tabla 90 de Listado de Sprites puede contener de 2 a 5 palabras. Cuando se emplea una tabla 96 de Listado de Recorridos, cada una de las Entradas de Sprite de la Lista 90 de Sprites incluye un mismo número de palabras (por ejemplo, 5 palabras) independientemente de qué palabras opcionales se requieran normalmente para cada Entrada de Sprite. El propósito del registro que indica el Número de Palabras de Entrada de Sprite en cada Entrada de Sprite es simplificar el acceso a sólo ciertas de las Entradas de Sprite de la tabla 90 de Listado de Sprites cuando se construyen los píxeles de una línea horizontal.
La tabla 96 de Listado de Recorridos comprende una palabra de control de la lista de recorridos o un grupo de palabras de control de la lista de recorridos que describen cuál de los N sprites encontrados en la tabla 90 de Listado de Sprites existe en cada línea. Debe entenderse que la tabla 96 de Listado de Recorridos se emplea principalmente cuando existen muchos sprites (por ejemplo, N = 96 sprites), con el fin de reducir el tiempo de tratamiento al ensamblar los datos de pixel para cada una de las líneas horizontales en la Memoria 52 Intermedia de Ensamblaje de Píxeles. El número de palabras en la tabla 96 de Listado de Recorridos depende de la Ecuación:
Ec. 2N° de palabras de la Lista de recorridos = (NS/32)*(NH/NL),
donde NS es el número total de sprites en la pantalla de presentación, NH es el número de líneas en la pantalla de presentación, NL es el número de líneas en la pantalla de un receptor de televisión por palabra de la lista de recorrido, y 32 representa el número ejemplar de bits disponibles en cada palabra de la tabla 96 de Listado de Recorridos. Los valores para NH y NL son números programables y NL puede tener un valor de, por ejemplo, 2, 4, 8, 16, 32, 64 ó 128. Más concretamente, aunque existen eléctricamente 525 líneas horizontales de vídeo en dos campos de una pantalla NTSC estándar de televisión, normalmente sólo se observan aproximadamente 440-500 líneas, dependiendo del receptor de televisión empleado. La superficie de presentación de la pantalla donde han de presentarse los 96 sprites puede variar desde 0 a 500 líneas para cualquier número predeterminado de partes, donde cada parte tiene un mismo número (NL) de líneas.
Haciendo ahora referencia a la figura 16, se muestra una parte de una pantalla de presentación de vídeo que está dividida por líneas discontinuas en 4 secciones 110, 111, 112 y 113 iguales, teniendo cada sección un número (NL) ejemplar de 32 líneas por palabra de la lista de recorridos según una segunda realización de la presente invención. Por tanto, la superficie total de la pantalla de presentación de vídeo que se emplea para presentar los 96 sprites ejemplares cubre 128 líneas horizontales (4 secciones con 32 líneas/sección). Además, se muestra una pluralidad de imágenes de sprite, donde unas predeterminadas de las varias imágenes de sprite se designan como 101, 102, 104, 105, 108 y 109, las cuales, a propósito de la descripción a continuación en la presente, representarán las Entradas 1, 2, 4, 6, 8 y 9 de Sprite, respectivamente, en la tabla 90 de Listado de Sprites. De acuerdo con la Ecuación (2), el número de palabras de la Lista de recorridos es igual a (96 sprites/32) por (128 líneas (NH) en la pantalla de presentación divididas por 32 líneas (NL) por palabra de la lista de recorrido), lo cual da como resultado un total de 3*4 = 12 palabras de la lista de recorrido. Más concretamente, las tres primeras palabras de la Lista de recorridos están asociadas con la sección 110 de la superficie de la pantalla de presentación de vídeo, las siguientes tres palabras de la Lista de recorridos están asociadas con la sección 111, las siguientes tres palabras de la Lista de recorridos están asociadas con la sección 112 y las últimas tres palabras de la Lista de recorridos están asociadas con la sección 113, para un total de doce palabras de la Lista de Recorrido.
Tal como se muestra en la Sección 110 de la superficie de la pantalla de presentación, únicamente las Entradas de Sprite numeradas 1, 2, 4 y 6 de la tabla 90 de Listado de Sprites se encuentran en cualquiera de las 32 líneas de la pantalla de presentación que se están ensamblando en la Memoria 52 Intermedia de Ensamblaje de Píxeles mostrada en la figura 9. Por tanto, una primera palabra de 32 bits, asociada con la sección 110, en la tabla 96 de Listado de Recorridos, que tiene los 32 bits, aparece como,
00000000000000000000000000101011,
donde el bit más a la derecha está asociado con la Entrada n°1 de Sprite y el bit más a la izquierda está asociado con la Entrada n° 32 de Sprite en la tabla 90 de Listado de Sprites de la Memoria 38 Gráfica. Además, los "1" en la palabra de la Lista de recorridos indican que los sprites 1, 2, 4 y 6 están activos en la sección 110. Las segunda y tercera palabras restantes en la tabla 96 de Listado de Recorridos asociadas con la sección 110 para los sprites
33-96 contienen cada una 32 ceros, puesto que ninguna de estas Entradas de Sprite en la tabla 90 de Listado de Sprites está activa o aparece en la sección 110. Las otras nueve palabras de la Lista de Recorridos asociadas con las secciones
111-113 están codificadas de la misma manera para los sprites activos o que aparecen en cada una de estas secciones.
En funcionamiento, la Máquina 42 Controladora de Memoria y de Estado de Sprite de la figura 9 determina, a partir de uno o más registros en la misma, que existe una tabla 96 de Listado de Recorridos, obtiene también los datos (los valores NS, NH y NL, la línea inicial para la superficie de presentación y el número de sprites) que están almacenados en la misma y necesarios para el uso con la tabla 96 de Listado de Recorridos, y determina el número de palabras de la Lista de Recorridos necesario para cada sección de la superficie de presentación de acuerdo con la Ecuación (2). Para ensamblar los datos de píxel para las 525 líneas de la presentación de vídeo, cuando la Máquina 42 Controladora de Memoria y de Estado de Sprite llega a la línea inicial de la zona de presentación de la Lista de Recorridos, la Máquina 42 Controladora de Memoria y de Estado de Sprite accede primero a las palabras de la Lista de Recorridos (por ejemplo, las tres primeras palabras) asociadas con la sección superior (por ejemplo, la sección 110) de la superficie de presentación de la lista de recorridos. A partir de estas tres primeras palabras de la tabla 96 de Listado de Recorridos, la Máquina 42 Controladora de Memoria y de Estado de Sprite determina que sólo las Entradas 1, 2, 4 y 6 de Sprite están activas en la sección 110.
A continuación, la Máquina 42 Controladora de Memoria y de Estado de Sprite accede a la Entrada n° 1 de Sprite en la tabla 90 de Listado de Sprites al ensamblar cada pixel de una primera línea horizontal de la sección 110, luego accede a las Entradas n° 2, n° 4 y n° 6 de Sprite por orden. La parte del registro designada "n° de palabras por entrada de sprite" indica cuántas palabras (NP) son utilizas por la Máquina 42 Controladora de Memoria y de Estado de Sprite para calcular dónde va a situarse la próxima Entrada de Sprite activa en la tabla 90 de Listado de Sprites. Más concretamente, si cada Entrada de Sprite tiene cinco (5) palabras en la misma, entonces NP = 5. Esto indica que el comienzo de las Entradas 1, 2, 4 y 6 se encuentra en las posiciones 1, 6, 16 y 26 de almacenamiento, respectivamente, en la tabla 90 de Listado de Sprites porque cada Entrada de Sprite tiene cinco palabras que emplean cinco posiciones secuenciales de memoria. Por tanto, la Máquina 42 Controladora de Memoria y de Estado de Sprite salta secuencialmente a las posiciones 1, 6, 16 y 26 para obtener las 5 palabras asociadas con las Entradas n° 1, n° 2, n° 4 y n° 6 de Sprite, respectivamente. Esto evita el tiempo necesario para registrar todas las 96 Entradas de Sprite para ver cuántas palabras se incluyen en cada Entrada de Sprite y permite a la Máquina 42 Controladora de Memoria y de Estado de Sprite saltar fácilmente a la información necesaria para los sprites activos y pasar de los sprites inactivos de las secciones 110-113.
Debe entenderse que la Máquina 42 Controladora de Memoria y de Estado de Sprite emplea una o más palabras iguales de la Lista de Recorridos para cada una de las líneas de una sección (por ejemplo, la sección 110) puesto que los mismos sprites están activos en cada una de las líneas de esa sección. La Máquina 42 Controladora de Memoria y de Estado de Sprite funciona para de la misma manera para cada una de las otras secciones (por ejemplo, las secciones 111-113) de la superficie de presentación cubierta por las palabras de la Lista de Recorridos. Además, un único sprite de gran tamaño puede incluirse en más de una sección. Por ejemplo, las imágenes 102 y 108 de sprite en la figura 6, respectivamente para las Entradas n° 2 y n° 8 de Sprite, se incluyen en las secciones 110-111 y 112-113 respectivas. Como resultado, la palabra distinta de la Lista de Recorridos para cada una de las secciones 110 y 111 incluye un "1" en la posición designada para la Entrada n° 2 de Sprite, y la primera palabra distinta de Lista de Recorridos para cada una de las secciones 112 y 113 incluye un "1" en la posición designada para la Entrada n° 8 de Sprite. Tal como se muestra adicionalmente en la figura 16, las imágenes de sprite para los sprites 108 y 109 se solapan parcialmente y puesto que el sprite 109 tiene una prioridad superior que la del sprite 108, los píxeles asociados con el sprite 109 sobrescribirán los píxeles para el sprite 108 en la zona de solapamiento.
Se halló que con la unidad 10 de caja de cable de abonado de la figura 1 pueden acomodarse aproximadamente cien Sprites pequeños en la tabla 90 de Listado de Sprites sin el uso de la tabla 96 de Listado de Recorridos. Se encontró que al emplear los datos almacenados en la tabla 96 de Listado de Recorridos podían acomodarse muchos más Sprites pequeños (por ejemplo, hasta aproximadamente 3.000) en la tabla 90 de Listado de Sprites para la presentación en la pantalla de un receptor de televisión. Además, la información en cada una de las partes de cada una de las N Entradas de Sprite de la tabla 90 de Listado de Sprites y las tablas 92, 94 y 96 se introduce en la Memoria 38 Gráfica desde la CPU 36 remota (mostrada sólo en la figura 1) a través de la Máquina 42 Controladora de Memoria y de Estado de Sprite que forma parte de la primera parte de los Circuitos 46 de Tratamiento de Vídeo. Esta información puede actualizarse en cualquier instante por la CPU 36.
La parte de Control de Habilitación de Campo de cada Entrada de Sprite en la tabla 90 de Listado de Sprites está relacionada con los controles para formar un efecto de "Vidrio Ahumado" (superposición transparente) con un sprite o dos sprites sobre vídeo en directo. Más concretamente, un efecto de "vidrio ahumado" se define como una zona de solapamiento de dos sprites o un sprite sobre vídeo en directo, donde un primer sprite se presenta en la pantalla de un receptor de televisión en las líneas (por ejemplo, líneas pares) de un primer campo de una imagen, y un segundo sprite o vídeo en directo se muestra en la pantalla de un receptor de televisión en las líneas (por ejemplo, líneas impares) de un segundo campo de una imagen. Tal efecto permite que se vea una imagen del primer sprite mientras que también se observa detrás de ella una imagen del segundo sprite que puede ser, por ejemplo, una instantánea capturada de una trama de una señal de televisión en directo, que está almacenada como una Entrada de Sprite en la Memoria 38 Gráfica, o vídeo real en directo. A continuación, el Convolucionador 68 bidimensional trata la imagen ensamblada para producir un efecto de "Vidrio Ahumado" entre los dos sprites. Los sistemas de la técnica anterior utilizan principalmente software para combinar informáticamente las dos imágenes.
Según la presente invención, la parte de Control de Habilitación de campo de la Entrada de Sprite indica que este sprite ha de presentarse sólo en líneas pares o impares de la superficie de la pantalla de presentación indicada para ese sprite. Cuando se ensamblan los datos de píxel en cada línea horizontal de una presentación para las Entradas de Sprite de la tabla 90 de Listado de Sprites, el Control de Habilitación de Campo indica si tal sprite existe o no en una línea horizontal con su superficie designada en una pantalla de presentación. Esto supone un método sencillo y económico para permitir insertar o activar un gráfico o un sprite en sólo uno de dos campos.
Haciendo ahora referencia a la figura 17, se muestra una parte ejemplar de las líneas 1-13 de una pantalla 120 entrelazada de un receptor de televisión en la que unos primer y segundo sprites (SPRITE n° 1 y SPRITE n° 2) se entrelazan en una superficie 121 de píxeles de la pantalla (mostrada dentro de un rectángulo de líneas discontinuas) según una tercera realización de la presente invención. Más concretamente, la Entrada n° 2 de Sprite está definida por sus Controles de Sprite en la tabla 90 de Listado de Sprites de la Memoria 38 Gráfica como estando dentro de la superficie 121 de píxeles formada por las líneas 2-7, y esa Entrada n° 2 de Sprite ha de insertarse o activarse sólo en las líneas 2, 4 y 6 pares que forman parte del primer campo de una trama en la superficies 121 de píxeles. Además, la Entrada n° 1 de Sprite en la tabla 90 de Listado de Sprites se define como ocupando toda la superficie cubierta por las líneas 1-13 de la pantalla 120. Puesto que la Entrada n° 1 de Sprite tiene una prioridad inferior que la Entrada
n° 2 de Sprite, la Entrada n° 1 de Sprite ocupa las líneas 3, 5, y 7 impares de la sección 121 junto con toda la superficie restante de las líneas 1-13.
Volviendo ahora a la figura 9, con el fin de que la Máquina 42 Controladora de Memoria y de Estado de Sprite produzca el efecto de "Vidrio Ahumado", ésta necesita saber qué campo se está presentando actualmente en la pantalla del receptor de televisión. Esta información que indica el campo actual de vídeo está suministrada a la Máquina 42 Controladora de Memoria y de Estado de Sprite por una señal de campo de 2 bits (CAMPO <1:0>) que indica los bits 1 y 0 transmitidos por un circuito remoto de sincronización de vídeo (no mostrado), situado generalmente en los circuitos 44 de Compuesta a YUV (mostrados en la figura 1) de la unidad 10 de caja de cable de abonado, y obtenidos de un flujo recibido de señales de vídeo en directo. Esta señal de Campo de 2 bits es esencialmente una señal de reloj en funcionamiento continuo.
La Máquina 42 Controladora de Memoria y de Estado de Sprite también lee una señal de Habilitación de Campo de 4 bits procedente de la Entrada asociada de la Lista de Sprites que indica qué campo habilitar de dos tramas almacenadas para un sprite. Debe entenderse que la información completa para el color de una imagen en color se transmite dentro de cuatro campos de dos tramas con el fin de entender por qué se necesitan cuatro bits para la Señal de Habilitación de Campo, donde cada trama tiene dos campos. Además, el uso de las dos tramas no es una cuestión de presentar la imagen en color sino que llega a ser una cuestión de los artefactos (por ejemplo, parpadeo, etc.) producidos en la pantalla de un receptor de televisión entrelazado. Más concretamente, en una señal NTSC de vídeo en color existen (a) 227,5 ráfagas de color enviadas en cada línea horizontal de la imagen, (b) 262,5 líneas para cada uno de los dos campos de una trama y (C) 525 líneas en una trama que comprende los dos campos. Puesto que hay 227,5 ráfagas de color por línea, si las ráfagas de color en la línea 0 del campo 0 van en sentido positivo en un cierto punto, entonces en la siguiente línea (línea 2) del campo O, la ráfaga de color va en sentido negativo 0 en un cierto punto porque cada línea contiene una secuencia de ráfaga de color completo más una mitad de ráfaga de color en vez de una secuencia de sólo ráfagas de color completo. Además, puesto que hay un número impar de líneas (525) en una trama, las ráfagas de color en la primera línea (línea O) del campo 0 de la siguiente (segunda) trama irán en sentido negativo y tendrán un sentido opuesto a la línea 0 del campo 0 de la trama inmediatamente anterior. Por tanto, para conseguir una ráfaga positiva de color en la línea 0 del campo 0 de una trama, el patrón repetido sólo se tiene lugar cada segunda trama. Debe entenderse que el contenido total de una imagen en color se encuentra presente tras la primera trama, pero que los patrones repetidos de los artefactos (por ejemplo, parpadeo, etc.) son productos secundarios de un ciclo de cuatro tramas. Esto es un resultado de un compromiso tomado originalmente al formar el estándar NTSC para transmitir señales de televisión en color que sean compatibles con señales de televisión en blanco y negro.
Cuando se coloca una instantánea de una imagen en televisión en directo en la Memoria 38 Gráfica, como una Entrada de Sprite en la tabla 90 de Listado de Sprites, únicamente necesita almacenarse una trama que comprenda dos campos para volver a presentar posteriormente la imagen en la pantalla de un receptor de televisión. La Máquina 42 Controladora de Memoria y de Estado de Sprite emplea el control de Habilitación de Campo de 4 bits para indicar cuándo ha de accederse a un sprite en una cierta trama o campo en función del código de los cuatro bits. Por ejemplo, un "1" en el bit tres de la señal de Habilitación de Campo indica que el sprite asociado debería habilitarse en la trama 1, y un "1" en el bit dos de la señal de Habilitación de Campo indica que el sprite asociado debería habilitarse en la trama 0. Similarmente, un "1" en el bit uno de la señal de Habilitación de Campo indica que el sprite asociado debería habilitarse en el campo 1, y un "1" en el bit cero de la señal de Habilitación de Campo indica que el sprite asociado debería habilitarse en el campo 0. Por tanto, los bits 2 y 3 se emplean para sprites de trama doble almacenados temporalmente, mientras que los bits 1 y 0 se utilizan, bien para producir un efecto de "vidrio ahumado" donde el sprite sólo se observa en un campo, bien para sprites de trama doble almacenados temporalmente donde un sprite se observa en ambos campos. La Máquina 42 Controladora de Memoria y de Estado de Sprite compara las señales de Campo y de Habilitación de Campo para determinar cuál de los cuatro campos únicos en las dos tramas está activado actualmente con el fin de presentar el sprite en sus posiciones deseadas de líneas horizontales y para la remodulación de la imagen NTSC a presentar en la pantalla del receptor de televisión por unos circuitos remotos de tratamiento (no mostrados), para proporcionar ráfagas de color correctamente dirigidas. Más concretamente, la información para los cuatro campos, tal como se determina a partir de las señales de Campo y de Habilitación de Campo, se emplea para el almacenamiento temporal de doble línea en la Memoria 52 Intermedia de Ensamblaje de Píxeles, para determinar qué datos de sprite han de colocarse en cada posición de píxel de las Memorias 53, 54 ó 55 Intermedias de Doble Línea (mostradas en la figura 2). Cuando la comparación de las señales de Campo y de Habilitación de Campo indica una correspondencia entre campos, los datos de sprite se leen de la tabla 90 de Entradas de Sprite, la tabla 92 de Datos de Sprite y la tabla 94 de Controles de Línea en la Memoria 38 Gráfica, y las Memorias 53-55 Intermedias de Doble Línea en la Memoria 52 Intermedia de Ensamblaje de Píxeles se cargan de la manera apropiada durante un cierto campo o trama. Cuando sea necesario, se actualiza un registro (no mostrado) en la Máquina 42 Controladora de Memoria y de Estado de Sprite desde la CPU 36 a través del bus 48 para indicar qué campo y/o trama es el deseado para la carga de datos de un Entrada de Sprite de la tabla 90 de Entradas de Sprite en la Memoria 52 Intermedia de Ensamblaje de Píxeles.
Según la presente invención, el uso de palabras de control de grupos de bits sencillos y de un comparador para comparar señales de Campo y de Habilitación de Campo con el fin de determinar patrones de repetición en las líneas horizontales de señales NTSC de vídeo, permite que se forme un efecto de "vidrio ahumado" en una presentación entrelazada. Esto contrasta con la realización de todas las mismas funciones en un software que requiere un procesador potente y, normalmente, relativamente caro con una gran cantidad de programación, tal como los que se encuentran en algunos sistemas de la técnica anterior. En tales sistemas de la técnica anterior, el procesador (por ejemplo, la CPU 36 de la figura 1) participa en la construcción de la imagen que requiere una CPU 36 relativamente cara, y si el procesador se paraliza, la construcción de la imagen se detiene. Una ventaja de la presente unidad 10 de caja de cable de abonado es que si la CPU 36 se paraliza, cualquier animación de la imagen que se está presentando se detiene porque la CPU 36 no está suministrando información sobre qué cosas hay que mover. No obstante, la imagen es autónoma. Más concretamente, siempre y cuando la Memoria 38 Gráfica no esté corrupta, la parte gráfica de vídeo del Controlador 40 de Memoria y de Vídeo mostrado en las figuras 2, 3 y 9 sabe cómo construir la imagen a partir de los datos en la Memoria 38 Gráfica.
Aunque la presente invención se ha descrito en lo que precede para el uso en una unidad 10 de caja de cable de abonado, debe entenderse que la presente invención puede emplearse en, por ejemplo, una estación de edición antes que se transmita la señal de televisión. Es decir, la presente invención puede emplearse en producciones de televisión para crear productos iniciales antes de su transmisión en vez de para manipular la señal de televisión posteriormente en un emplazamiento remoto de abonado. Esto es posible porque la calidad y la resolución de la imagen presentada en el receptor de televisión no cambia cuando se emplee el presente aparato, independientemente de si la edición se realiza de durante la producción inicial o posteriormente en el emplazamiento del abonado. Por tanto, no importa si la calidad o la resolución puede ser mejor en una producción de televisión no editada si la edición se realiza antes de que se vea la producción en el equipo de televisión entrelazado del abonado o en el emplazamiento del abonado.
Remisión a aplicaciones relacionadas
Esta invención está relacionada con otras tres solicitudes de patente europea, de las cuales todas están presentadas en nombre del solicitante de la presente invención, tienen inventores en común y se están presentando en la misma fecha con la presente, tituladas "Method and Apparatus For Performing Two Dimensional Video Convolving" (Referencia de Agente: J24151 EP), "Apparatus For Processing Mixed YUV and Color Palettized Video Signals" (Referencia de Agente: J24152 EP) y "Video Magnification Apparatus" (Referencia de Agente: J24153 EP). Estas tres solicitudes de patente europea reivindican prioridad de las solicitudes de patente estadounidense N° 08/523.395, 08/523.396 y 08/523.789, respectivamente. Las referencias en el presente documento a estas solicitudes de patente estadounidense incluyen la referencia a la correspondiente solicitud de patente europea.

Claims (9)

1. Aparato (38, 40) para tratar señales gráficas y de vídeo mezcladas para la presentación en un receptor estándar de televisión, que comprende:
una memoria (38) gráfica que comprende:
una tabla (90) de listado de sprites que incluyen uno o más gráficos en una secuencia predeterminada para la presentación en un receptor de televisión y para almacenar información general relativa a uno o más gráficos dentro de palabras de control en cada lista;
y una tabla (92) de datos de sprite para almacenar datos de píxel para líneas horizontales de cada uno de los uno o más gráficos, donde una palabra de control en las lista en la tabla de listado de sprites para cada uno de los uno o más gráficos accede a las líneas horizontales en la tabla de datos de sprite para cada uno de los uno o más gráficos; y
una máquina (42) controladora de memoria y de estado de sprite sensible a señales de habilitación de campo procedentes de la tabla de listado de sprites que indican qué campo de una trama de dos campos de una imagen de vídeo se está presentando en una pantalla del receptor de televisión, para acceder y ensamblar un primer gráfico predeterminado incluido en la tabla de listado de sprites de uno sólo de los dos campos y un segundo gráfico predeterminado incluido en la tabla de listado de sprites o una señal de televisión en directo para líneas horizontales del otro de los
dos campos.
2. Aparato según la reivindicación 1, en el que la memoria gráfica comprende además una tabla (94) de Controles de Línea que comprende palabras de control a las que accede una palabra de control en la lista de los predeterminados de los uno o más gráficos en la tabla de listado de sprites para proporcionar unos controles independientes para colocar de nuevo selectivamente unos datos de píxel en cada una de las líneas horizontales obtenidas de la tabla de datos de sprite, para producir un efecto especial predeterminado para cada uno de los predeterminados de los uno o más gráficos.
3. Aparato según la reivindicación 2, que comprende además:
un cable (50) coaxial de datos sensible a datos de píxel a los que accede la máquina controladora de memoria y de estado de sprite para cada una de las líneas horizontales de la tabla de datos de sprite y de la tabla de controles de línea para cada una de las listas de gráficos en la tabla de listado de sprites, para generar una dirección selectiva para cada uno de los datos de píxel para cada línea horizontal según las palabras de control predeterminadas en la tabla de listado de sprites y en la tabla de controles de línea; y
una memoria (52) intermedia de ensamblaje de píxeles sensible a la dirección selectiva predeterminada para cada dato de pixel procedente del cable coaxial de datos para cada línea horizontal, para ensamblar y almacenar temporalmente cada línea horizontal de datos de píxel según cada dirección selectiva predeterminada generada por el cable coaxial de datos para esa línea horizontal de datos de pixel.
4. Aparato según la reivindicación 1, en el que:
la memoria gráfica comprende además una tabla (96) de listado de recorridos que comprende al menos una palabra de control de lista de recorridos para un número predeterminado de líneas horizontales que forman cada una de una pluralidad de secciones distintas predeterminadas de la pantalla del receptor de televisión, definiendo una o más palabras de control de lista de recorridos cuáles de una pluralidad de N listas de gráficos en la tabla de listado de sprites están activas en la sección predeterminada asociada; y
la máquina controladora de memoria y de estado de sprite accede primero a al menos una palabra de control de lista de recorridos en la tabla de listado de recorridos cuando ensambla una sección predeterminada de la pantalla del receptor de televisión y a continuación sólo accede a las listas de gráficos en la tabla de listado de sprites que se encuentran activas y aparecen en al menos una palabra de lista de recorridos.
5. Aparato según la reivindicación 4, en el que el número total de palabras de lista de recorridos en la tabla de listado de recorridos se define como (NS/X)*(NH/NL), donde NS es el número total de gráficos que aparecen en la pantalla del receptor de televisión, X es el número de bits disponible en cada palabra de control de listad de recorridos, NH es el número de líneas horizontales en todas de la pluralidad de secciones distintas predeterminadas de la pantalla del receptor de televisión y NL es el número de líneas horizontales por al menos una palabra de control de lista de recorridos hallada en cada sección predeterminada de la pantalla del receptor de televisión.
6. Aparato según la reivindicación 4, en el que cada una de las listas de gráficos en la tabla de listado de sprites comprende una palabra de control de entrada de lista de sprites que define el número total de palabras de control en esa lista de gráficos, y cada una de las listas de gráficos contiene un mismo número palabras de control totales.
7. Aparato según la reivindicación 1, en el que uno o más gráficos en la tabla de listado de sprites están listados secuencialmente con una prioridad predeterminada, y unos datos de píxel de un primer gráfico de prioridad superior sobrescriben unos datos de píxel de un segundo gráfico de prioridad inferior en una posición de píxel al ensamblar una línea horizontal donde los primer y segundo gráficos se solapan en una pantalla del receptor de televisión, al acceder por orden la máquina controladora de memoria y de estado de sprite a las listas de gráficos para ensamblar una línea horizontal de datos de píxel.
8. Aparato para producir señales de imágenes gráficas para la mezcla con una señal de vídeo para producir una señal de vídeo de salida, comprendiendo dicho aparato una memoria gráfica para almacenar líneas horizontales de datos de píxel de una pluralidad de gráficos, y un medio de tratamiento para tratar datos de píxel en ciertas líneas horizontales sólo para un dicho primer gráfico y para tratar datos de píxel en líneas horizontales diferentes, intercaladas con dichas ciertas líneas horizontales, para un dicho segundo gráfico, donde dichos primer y segundo gráficos han de solaparse en una imagen producida por dicha señal de vídeo de salida.
9. Aparato según la reivindicación 8, en el que dicha señal de vídeo de salida es una señal de vídeo entrelazada, y dichas ciertas líneas horizontales constan de líneas sólo en un campo y dichas líneas horizontales diferentes constan de líneas sólo en un campo diferente.
ES96305725T 1995-08-31 1996-08-02 Aparato que emplea tablas de control de memoria relativas al tratamiento de graficos de video para receptores de tv. Expired - Lifetime ES2208718T3 (es)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US08/523,394 US5835103A (en) 1995-08-31 1995-08-31 Apparatus using memory control tables related to video graphics processing for TV receivers
US523394 1995-08-31

Publications (1)

Publication Number Publication Date
ES2208718T3 true ES2208718T3 (es) 2004-06-16

Family

ID=24084816

Family Applications (1)

Application Number Title Priority Date Filing Date
ES96305725T Expired - Lifetime ES2208718T3 (es) 1995-08-31 1996-08-02 Aparato que emplea tablas de control de memoria relativas al tratamiento de graficos de video para receptores de tv.

Country Status (9)

Country Link
US (1) US5835103A (es)
EP (1) EP0762331B1 (es)
JP (2) JP3542690B2 (es)
KR (1) KR100215131B1 (es)
CA (1) CA2179790C (es)
DE (1) DE69630264T2 (es)
ES (1) ES2208718T3 (es)
MX (1) MX9603752A (es)
NO (1) NO963578L (es)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2784532B1 (fr) 1998-10-09 2000-12-22 St Microelectronics Sa Procede de correction de l'effet de tremblement et de scintillement des elements d'image incrustes sur une image video
FR2784534B1 (fr) 1998-10-09 2000-12-22 St Microelectronics Sa Procede et circuit d'affichage d'elements d'image incrustes sur une image video
US6246803B1 (en) 1998-12-27 2001-06-12 The University Of Kansas Real-time feature-based video stream validation and distortion analysis system using color moments
KR100348422B1 (ko) * 2000-06-28 2002-08-10 주식회사 아리랑테크 라인 콘트롤 테이블을 이용한 그래픽 표시 제어 장치
US7489320B2 (en) * 2005-05-13 2009-02-10 Seiko Epson Corporation System and method for conserving memory bandwidth while supporting multiple sprites
US8325282B2 (en) * 2008-04-08 2012-12-04 Mitsubishi Electric Visual Solutions America, Inc. Television automatic geometry adjustment system
USD871240S1 (en) * 2018-08-20 2019-12-31 Amazon Technologies, Inc. Motion sensor

Family Cites Families (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4420770A (en) * 1982-04-05 1983-12-13 Thomson-Csf Broadcast, Inc. Video background generation system
US4700181A (en) * 1983-09-30 1987-10-13 Computer Graphics Laboratories, Inc. Graphics display system
US4754270A (en) * 1984-02-16 1988-06-28 Nintendo Co., Ltd. Apparatus for varying the size and shape of an image in a raster scanning type display
US4580165A (en) * 1984-04-12 1986-04-01 General Electric Company Graphic video overlay system providing stable computer graphics overlayed with video image
US5089811A (en) * 1984-04-16 1992-02-18 Texas Instruments Incorporated Advanced video processor having a color palette
JPS60254190A (ja) * 1984-05-31 1985-12-14 株式会社 アスキ− デイスプレイコントロ−ラ
CA1243779A (en) * 1985-03-20 1988-10-25 Tetsu Taguchi Speech processing system
IL79822A (en) * 1985-12-19 1990-03-19 Gen Electric Method of comprehensive distortion correction for a computer image generation system
US5285193A (en) * 1987-01-16 1994-02-08 Sharp Kabushiki Kaisha Data base system
DE3702220A1 (de) * 1987-01-26 1988-08-04 Pietzsch Ibp Gmbh Verfahren und einrichtung zur darstellung eines gesamtbildes auf einem bildschirm eines bildschirmgeraetes
US4951038A (en) * 1987-05-15 1990-08-21 Hudson Soft Co., Ltd. Apparatus for displaying a sprite on a screen
US5030946A (en) * 1987-05-20 1991-07-09 Hudson Soft Co., Ltd. Apparatus for the control of an access to a video memory
US5258843A (en) * 1987-09-04 1993-11-02 Texas Instruments Incorporated Method and apparatus for overlaying displayable information
US5179642A (en) * 1987-12-14 1993-01-12 Hitachi, Ltd. Image synthesizing apparatus for superposing a second image on a first image
US5185597A (en) * 1988-06-29 1993-02-09 Digital Equipment Corporation Sprite cursor with edge extension and clipping
US5065231A (en) * 1988-09-26 1991-11-12 Apple Computer, Inc. Apparatus and method for merging input RGB and composite video signals to provide both RGB and composite merged video outputs
GB2226471A (en) * 1988-12-23 1990-06-27 Philips Electronic Associated Displaying a stored image in expanded format
US5235677A (en) * 1989-06-02 1993-08-10 Atari Corporation Raster graphics color palette architecture for multiple display objects
US4965670A (en) * 1989-08-15 1990-10-23 Research, Incorporated Adjustable overlay display controller
US5168363A (en) * 1989-10-16 1992-12-01 Sony Corporation Video signal parocessing apparatus with memory and crossfader
US5389947A (en) * 1991-05-06 1995-02-14 Compaq Computer Corporation Circuitry and method for high visibility cursor generation in a graphics display
KR940001439B1 (ko) * 1991-08-30 1994-02-23 삼성전자 주식회사 자막정보 중첩회로
US5258826A (en) * 1991-10-02 1993-11-02 Tandy Corporation Multiple extended mode supportable multimedia palette and multimedia system incorporating same
US5313231A (en) * 1992-03-24 1994-05-17 Texas Instruments Incorporated Color palette device having big/little endian interfacing, systems and methods
DE69309780T2 (de) * 1992-05-19 1997-10-23 Canon Kk Verfahren und Einrichtung zur Steuerung einer Anzeige
JP3059302B2 (ja) * 1992-06-03 2000-07-04 株式会社ハドソン 映像混合装置
CN1125029A (zh) * 1993-06-07 1996-06-19 亚特兰大科技公司 用户终端的显示系统
EP0633693B1 (en) * 1993-07-01 2001-04-11 Matsushita Electric Industrial Co., Ltd. Flagged video signal recording apparatus and reproducing apparatus
US5519825A (en) * 1993-11-16 1996-05-21 Sun Microsystems, Inc. Method and apparatus for NTSC display of full range animation

Also Published As

Publication number Publication date
KR100215131B1 (ko) 1999-08-16
US5835103A (en) 1998-11-10
KR970014409A (ko) 1997-03-29
NO963578D0 (no) 1996-08-27
CA2179790C (en) 2000-08-29
EP0762331A2 (en) 1997-03-12
JP2002314880A (ja) 2002-10-25
MX9603752A (es) 1997-06-28
JPH09163259A (ja) 1997-06-20
DE69630264D1 (de) 2003-11-13
DE69630264T2 (de) 2004-08-05
EP0762331B1 (en) 2003-10-08
NO963578L (no) 1997-03-03
EP0762331A3 (en) 1998-06-17
JP3542690B2 (ja) 2004-07-14
CA2179790A1 (en) 1997-03-01

Similar Documents

Publication Publication Date Title
JP3818662B2 (ja) 単一のフレームバッファを有する画像処理システム
KR100249403B1 (ko) 비디오 확대 장치
US4580134A (en) Color video system using data compression and decompression
US6191772B1 (en) Resolution enhancement for video display using multi-line interpolation
CA2068001C (en) High definition multimedia display
EP0454414B1 (en) Video signal display
EP0752695A2 (en) Method and apparatus for simultaneously displaying graphics and video data on a computer display
EP0590961B1 (en) Image processing apparatus
JPH0627919A (ja) カーソル生成装置及び同方法
KR19980042025A (ko) 실시간 윈도우 어드레스 계산을 이용한 온 스크린 디스플레이시스템
US4771275A (en) Method and apparatus for assigning color values to bit map memory display locations
US20050162557A1 (en) Method and apparatus for controlling display of digital television capable of implementing various screen displays
KR100190250B1 (ko) 디지탈 텔레비전 수신기
EP0840276B1 (en) Window processing in an on screen display system
ES2208718T3 (es) Aparato que emplea tablas de control de memoria relativas al tratamiento de graficos de video para receptores de tv.
KR100208552B1 (ko) 믹싱된 yuv 및 컬러 파렛트화된 비디오 신호를 처리하는 장치
MXPA96003752A (es) Aparato que usa tablas de control de memoriarelacionadas con el procesamiento de graficos devideo para receptores de television
JPH07162816A (ja) 文字放送受信装置
JPH06175606A (ja) ハードウエアスクリーン上への画像表示方法および装置
JPH0311891A (ja) ワイド・アスペクト・テレビジョン装置
JPH0772824A (ja) 画像表示装置
JPH10124039A (ja) 図形表示装置
JPH08228319A (ja) 多面表示システム及び表示装置
JPH07320037A (ja) 映像データ転送装置
JPS607479A (ja) 外部同期によるcrtコントロ−ラ