ES2346200T3 - Dispositivo de formacion de imagenes y generador de sincronismo. - Google Patents

Dispositivo de formacion de imagenes y generador de sincronismo. Download PDF

Info

Publication number
ES2346200T3
ES2346200T3 ES03713171T ES03713171T ES2346200T3 ES 2346200 T3 ES2346200 T3 ES 2346200T3 ES 03713171 T ES03713171 T ES 03713171T ES 03713171 T ES03713171 T ES 03713171T ES 2346200 T3 ES2346200 T3 ES 2346200T3
Authority
ES
Spain
Prior art keywords
synchronism
generator
signals
output
controller
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
ES03713171T
Other languages
English (en)
Inventor
Gunnar Dahlgren
Per Kannermark
Stefan Lundberg
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.)
Axis AB
Original Assignee
Axis AB
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 Axis AB filed Critical Axis AB
Application granted granted Critical
Publication of ES2346200T3 publication Critical patent/ES2346200T3/es
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N25/00Circuitry of solid-state image sensors [SSIS]; Control thereof
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/60Control of cameras or camera modules
    • H04N23/617Upgrading or updating of programs or applications for camera control
    • 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/18Timing circuits for raster scan displays
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/60Control of cameras or camera modules
    • H04N23/665Control of cameras or camera modules involving internal camera communication with the image sensor, e.g. synchronising or multiplexing SSIS control signals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N25/00Circuitry of solid-state image sensors [SSIS]; Control thereof
    • H04N25/70SSIS architectures; Circuits associated therewith
    • H04N25/71Charge-coupled device [CCD] sensors; Charge-transfer registers specially adapted for CCD sensors
    • H04N25/745Circuitry for generating timing or clock signals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N25/00Circuitry of solid-state image sensors [SSIS]; Control thereof
    • H04N25/70SSIS architectures; Circuits associated therewith
    • H04N25/76Addressed sensors, e.g. MOS or CMOS sensors
    • H04N25/7795Circuitry for generating timing or clock signals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/04Synchronising
    • H04N5/06Generation of synchronising signals

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Transforming Light Signals Into Electric Signals (AREA)
  • Studio Devices (AREA)
  • Analogue/Digital Conversion (AREA)
  • Executing Machine-Instructions (AREA)
  • Electrophonic Musical Instruments (AREA)
  • Selective Calling Equipment (AREA)
  • Control Of Electric Motors In General (AREA)
  • Image Processing (AREA)
  • Traffic Control Systems (AREA)
  • Measurement Of Velocity Or Position Using Acoustic Or Ultrasonic Waves (AREA)
  • Programmable Controllers (AREA)

Abstract

Generador (12) de sincronismo para un sistema de formación de imágenes, que comprende: un controlador (236; 318) de señales de sincronismo de salida, controlador (236; 318) de señales de sincronismo de salida que está dispuesto para proporcionar una pluralidad de señales de salida en una pluralidad de líneas de señal de las mismas (414), un contador de posición horizontal y un contador (204) de posición vertical dispuesto para contar ciclos de reloj para realizar un seguimiento de una coordenada x e y de un píxel manipulado en ese momento, estando dicho generador (12) de sincronismo caracterizado por: una memoria (220; 316) de programa programable que está dispuesta para comprender instrucciones de programa para controlar la generación de señales de sincronismo, un controlador (222) de generador de sincronismo para procesar las instrucciones de programa procedentes de la memoria (220; 316) de programa, incluyendo el controlador (222) de generador de sincronismo un decodificador (224; 302) para decodificar instrucciones de programa procedentes de la memoria (220; 316), estando dispuesto el decodificador (224; 302) para emitir al menos una señal (402) de control y una pluralidad de señales paralelas que forman un patrón de bits y que constituyen una especificación (404) de señales de sincronismo de salida, determinando la especificación (404) de señales de sincronismo de salida el aspecto de las señales de salida en respuesta a la decodificación de dichas instrucciones, estando conectado el controlador (236; 318) de señales de sincronismo de salida al controlador (222) de generador de sincronismo para la recepción de la al menos una señal (402) de control y la especificación (404) de señales de sincronismo de salida y comprendiendo además el controlador (236; 318) de señales de sincronismo de salida, medios para realizar una operación (412) XOR y que comprende al menos un selector (406), estando dispuestos dichos medios para realizar una operación (412) XOR para recibir dicha pluralidad de señales (414) de salida, para recibir dicha especificación (404) de señales de sincronismo de salida o un patrón de bits de ceros procedente del selector (406) dependiendo de la al menos una señal (402) de control, y para emitir señales que resultan de la operación XOR entre las señales (418) procedentes del selector (406) y dicha pluralidad de señales (414) de salida, en el que la salida de los medios para realizar una operación (412) XOR está conectada a la pluralidad de líneas (414) de señal del controlador (236; 318) de señales de sincronismo de salida.

Description

Dispositivo de formación de imágenes y generador de sincronismo.
Campo técnico de la invención
La invención se refiere a dispositivos de formación de imágenes y a generadores de sincronismo para generar señales de sincronismo en un dispositivo de formación de imágenes.
Antecedentes de la invención
El campo técnico de la formación de imágenes electrónicas está evolucionando rápidamente y hay una gran cantidad de fabricantes diferentes que producen componentes y sistemas para la formación de imágenes electrónicas.
Los sistemas de formación de imágenes, y especialmente el sensor de imagen, requieren señales de sincronismo complicadas con el fin de funcionar. Además, las señales requeridas varían tanto en función como en aspecto entre diferentes sistemas y entre diferentes implementaciones de componentes específicos.
Las señales de sincronismo se generan por medio de un generador de sincronismo. A menudo los generadores de sincronismo se implementan como máquinas de estados complejas que están diseñadas para proporcionar señales de sincronismo a un sistema de formación de imágenes específico implementado por medio de un conjunto específico de componentes. Por tanto, debe fabricarse un nuevo generador de sincronismo para cada sistema de formación de imágenes nuevo y cada vez que un componente en un sistema de formación de imágenes existente se intercambia por otro de dicho componente. Diseñar y producir un nuevo generador de sincronismo cada vez que debe añadirse o alterarse una señal requiere mucho tiempo y es caro.
Con el fin de superar el problema mencionado anteriormente se han desarrollado algunos generadores de sincronismo más o menos programables.
En la solicitud internacional WO 01/15436 A1 se describe un generador de sincronismo que genera formas de onda basándose en una palabra de control de forma de onda almacenada en una única memoria estática de acceso aleatorio (SRAM). Adicionalmente, el generador de sincronismo incluye una unidad de control de línea para generar una forma de onda de nivel inferior, una unidad de control de trama y un arbitrador. El arbitrador controla la distribución de palabras de control de forma de onda a la unidad de control de línea y la unidad de control de trama. El control del arbitrador se basa en señales proporcionadas desde la unidad de control de línea y la unidad de control de trama, respectivamente. Dichas señales son una señal procedente de la unidad de control de trama referente a un ciclo de trama finalizado y señales procedentes de la unidad de control de línea referentes a un ciclo finalizado o una recepción del siguiente tipo de línea. Básicamente, el sistema genera una señal según una palabra de control de forma de onda que incluye el nivel de cada señal de sincronismo y un valor que indica el número de ciclos, esta palabra define los niveles de las señales de sincronismo. Cuando se ha procesado el número indicado de ciclos, la palabra de control de forma de onda en la siguiente dirección se pasa a la unidad de control para definir las señales de sincronismo.
El generador de sincronismo anterior es más flexible que una máquina de estados de la técnica anterior. Sin embargo, en algunas situaciones dicho generador de sincronismo puede requerir una gran cantidad de memoria y puede requerirse mucho esfuerzo para ajustar las palabras de control de forma de onda.
En el documento JP 2001 238 138 se describe un generador de sincronismo para máquinas de estado sólido. El generador de sincronismo dado a conocer comprende una ROM para almacenar datos secuenciales en el tiempo para el patrón repetitivo del nivel lógico de un pulso de salida, contadores V y H que cuentan los pulsos de sincronización verticales y horizontales, ROM para almacenar datos marginales que determinan en qué valores de H y V debe cambiarse el nivel de un pulso de control. Entonces las señales de sincronismo se generan a partir del pulso de salida y el pulso de control combinándolos en un circuito lógico. La estructura y la funcionalidad del generador de sincronismo dan como resultado que los datos que van a almacenarse en la ROM deben especificarse para todas las señales enviadas al MIX y para cada momento en el tiempo. Además, estas señales, enviadas al MIX desde la ROM, y debe considerarse la funcionalidad lógica del MIX cuando se proporcionan datos a las ROM. Éste también es el caso en las implementaciones que incluyen una ROM externa y/o un PC externo para proporcionar datos al sistema.
En el documento US 5 581 303 se da a conocer un circuito generador de señales de sincronismo de vídeo basado en una CPU programable pequeña. El circuito se usa para generar señales de sincronismo, en particular señales de sincronismo usadas junto con un monitor de vídeo. Una instrucción de carga está dispuesta para cargar un registro auxiliar de píxel y la máquina se deja en pausa hasta un contador, que se ha cargado con un valor de temporizador por el programa, entonces se copia el contenido del registro auxiliar en un registro de señales de salida que acciona las señales CSYNC, VSYNC, HSYNC, la señal de borrado y la señal de habilitación de reloj de píxeles. El programador del circuito generador de señales de sincronismo debe realizar el seguimiento del sincronismo del circuito por medio de la realización del seguimiento de los valores de temporizador y las líneas de programa con el fin de mantener el sincronismo correcto del circuito. Adicionalmente, el programador debe conocer el nivel de señal requerido de cada señal de salida en cada momento en el tiempo e introducir estos niveles en una SRAM de instrucciones.
Sumario de la invención
Es un objetivo de la presente invención proporcionar un sistema mejorado para la generación de señales de sincronismo.
Este objetivo se logra por medio de un generador de sincronismo según la reivindicación 1 y por medio de un dispositivo de formación de imágenes según la reivindicación 7. Las realizaciones preferidas de la invención se dan a conocer en las reivindicaciones dependientes.
En particular, un generador de sincronismo para un sistema de formación de imágenes según un aspecto de la invención comprende: un controlador de señales de sincronismo de salida, controlador de señales de sincronismo de salida que está dispuesto para proporcionar una pluralidad de señales de salida en una pluralidad de líneas de señal de las mismas, un contador de posición horizontal y un contador de posición vertical dispuesto para contar ciclos de reloj para realizar el seguimiento de una coordenada x e y de un píxel manipulado en ese momento. Además, dicho generador de sincronismo incluye una memoria de programa programable que está dispuesta para comprender instrucciones de programa para controlar la generación de señales de sincronismo y un controlador de generador de sincronismo para procesar las instrucciones de programa procedentes de la memoria de programa.
El controlador de generador de sincronismo incluye un decodificador para decodificar instrucciones de programa procedentes de la memoria, estando dispuesto el decodificador para emitir al menos una señal de control y una pluralidad de señales paralelas que forman un patrón de bits y que constituyen una especificación de señales de sincronismo de salida, determinando la especificación de señales de sincronismo de salida el aspecto de las señales de salida en respuesta a la decodificación de dichas instrucciones.
El controlador de señales de sincronismo de salida está conectado al controlador de generador de sincronismo para la recepción de la al menos una señal de control y la especificación de señales de sincronismo de salida.
El controlador de señales de sincronismo de salida comprende además medios para realizar una operación XOR ("O exclusivo") y que comprende al menos un selector, estando dispuestos dichos medios para realizar una operación XOR para recibir dicha pluralidad de señales de salida, para recibir dicha especificación de señales de sincronismo de salida o un patrón de bits de ceros procedentes del selector dependiendo de la al menos una señal de control, y para emitir señales que resultan de la operación XOR entre las señales procedentes del selector y dicha pluralidad de señales de salida. La salida de los medios para realizar una operación XOR está conectada a la pluralidad de líneas de señal del controlador de señales de sincronismo de salida.
Al disponer una memoria de programa programable para incluir instrucciones de programa, un controlador de generador de sincronismo que incluye un decodificador de instrucciones de programa y un controlador de señales de salida que responde a al menos una señal de control y una especificación de señales de sincronismo, que se proporcionan por el controlador de generador de sincronismo, el generador de sincronismo pasa a ser flexible y fácil de programar. En una realización, el decodificador puede interpretar instrucciones de programa y proporcionar señales de control al menos a dispositivos en el generador de sincronismo que han de verse afectados por una instrucción de programa ejecutada en ese momento. Según una realización, las instrucciones de programa pueden definirse como instrucciones de control sofisticadas, que en la mayoría de los casos hacen fácil la programación. Además, por ejemplo, los códigos de instrucción pueden asignarse a nemónicos y puede disponerse una herramienta de software para convertir un archivo de texto que comprende un programa escrito usando dichos nemónicos en palabras de instrucción de programa binarias que pueden almacenarse en un archivo de datos. De este modo, la programación puede realizarse en un lenguaje similar al lenguaje ensamblador de un microprocesador. El archivo de datos puede descargarse entonces al sistema de formación de imágenes y usarse en el generador de sincronismo.
Según una realización el controlador de generador de sincronismo incluye una pila para almacenar al menos una dirección de retorno para al menos una instrucción de programa en la memoria de programa, siendo la instrucción de programa la instrucción de programa que ha de ejecutarse cuando se ha alcanzado el final de una subrutina.
Al hacer posible utilizar saltos a subrutina, el programa en la memoria de programa sólo debe incluir una copia de un procedimiento o función que se use frecuentemente. Las instrucciones de programa para saltos a subrutina pueden insertarse en cualquier lugar en la secuencia de ejecución de un programa y tantas veces como sea necesario. Esto da como resultado que puede ahorrarse memoria, porque un procedimiento o función utilizado frecuentemente sólo debe almacenarse una vez en la memoria de programa, y que la programación del generador de sincronismo pasa a ser más fácil, especialmente para conjuntos de señales de sincronismo complejas, porque una persona que esté programando sólo debe escribir las instrucciones de programa de la subrutina una vez en lugar de repetir la funcionalidad correspondiente en cada ubicación en el programa en la que debe ejecutarse.
Según una realización, el controlador de generador de sincronismo incluye un banco de registros, en el que el banco de registros incluye un registro de que el generador de sincronismo puede leer y al menos un sistema externo al generador de sincronismo puede escribir.
Al implementar el registro anterior pasa a ser posible cambiar dinámicamente el comportamiento de las señales de sincronismo enviadas desde el generador de sincronismo en un proceso en progreso sin interrumpir dicho proceso. Esto es un resultado de que sea posible escribir en el registro desde sistemas externos al generador de sincronismo y de que puede leerse el registro desde dentro del generador de sincronismo. Al hacer referencia al registro en una instrucción de programa, la instrucción cambia dinámicamente cada vez que cambia el valor del registro. Esta característica puede ser ventajosa, por ejemplo, para sistemas que suministran frecuentemente imágenes actualizadas en las que debe cambiarse algún parámetro durante la adquisición de una secuencia de imágenes. Algunos ejemplos de tales parámetros son el tiempo de exposición, el número de imágenes que deben enviarse por segundo, el número de filas en una imagen, etc.
Según una realización el controlador de generador de sincronismo incluye además un banco de registros, en el que el banco de registros incluye un registro al que puede acceder el generador de sincronismo para su lectura y escritura.
La ventaja de incluir un registro de este tipo es que pasa a ser posible implementar el uso de variables, bucles que tienen un número predeterminado de ciclos, etc., sin tener que acceder a la memoria de programa desde el controlador de generador de sincronismo con el fin de almacenar los datos de las variables. Al proporcionar una funcionalidad tal como dichos bucles y variables el sistema puede pasar a ser incluso más flexible sin afectar demasiado al tamaño físico del sistema.
Además, en una realización, el generador de sincronismo comprende una línea de señal de entrada para la recepción de una señal de reloj para sincronizar el funcionamiento del generador de sincronismo, en el que dicha señal de reloj es síncrona con una señal de sincronismo de píxel. Al sincronizar el generador de sincronismo por medio de una señal de sincronismo que es síncrona con la señal de sincronismo de píxel el generador de sincronismo pasa a ser fácil de programar. Éste es el caso porque la señal de sincronismo de píxel, que comprende ciclos de señal de reloj de píxeles, es la señal de sincronismo más básica en el sistema de formación de imágenes y una señal de la que dependen la mayoría de los procesos. Por tanto, un programador del generador de sincronismo según esta realización puede programar el generador de sincronismo considerando el número de múltiplos de ciclos de señal de reloj de píxeles, es decir los ciclos de la señal de sincronismo que está sincronizando el generador de sincronismo.
Con el fin de que el generador de sincronismo sea pequeño y barato de fabricar, la memoria de programa programable, según una realización preferida de la invención, se hace accesible por el controlador de generador de sincronismo sólo para lectura y se hace de un tamaño inferior o igual a 1 kbyte. La restricción de que el controlador de generador de sincronismo pueda acceder a la memoria de programa sólo para lectura puede dar como resultado que no exista la necesidad de ningún dispositivo que realice el seguimiento de los datos escritos en la memoria, y que el tamaño de la memoria sólo debe ser de un tamaño tal que haya espacio para los programas. Sin embargo, en algunas aplicaciones puede ser útil poder escribir en la memoria de programa del generador de sincronismo. Además, la memoria es la parte del generador de sincronismo que requiere la mayor cantidad de espacio y, por tanto, al limitar el tamaño de la memoria a 1 kbyte el generador de sincronismo pasa a ser pequeño. A pesar del pequeño tamaño de la memoria es posible implementar señales de sincronismo complejas debido a las características presentadas anteriormente.
Según otro aspecto de la invención, se proporciona un dispositivo de formación de imágenes que comprende un sensor de imagen, un procesador de imagen analógica, un convertidor analógico-digital (A/D) y un generador de sincronismo que proporciona señales de sincronismo al sensor de imagen, el procesador de imagen analógica y el convertidor A/D, en el que el generador de sincronismo corresponde a una cualquiera de las realizaciones mencionadas anteriormente.
Según una realización, al menos la memoria de programa programable, el decodificador, el controlador de línea de señal de salida y la pila del generador de sincronismo están dispuestos en un único circuito integrado. Esto da como resultado que el dispositivo de formación de imágenes y, especialmente, el generador de sincronismo pueden pasar a ser baratos. Además, un sistema de imagen de este tipo puede ser fácil de fabricar debido al hecho de que es más fácil montar pocos circuitos que una pluralidad.
Un alcance adicional de aplicabilidad de la presente invención resultará evidente a partir de la descripción detallada facilitada a continuación. Sin embargo, debe entenderse que la descripción detallada y los ejemplos específicos, aunque indican realizaciones preferidas de la invención, se facilitan sólo a modo de ilustración, ya que diversos cambios y modificaciones dentro del alcance de la invención resultarán evidentes para los expertos en la técnica a partir de esta descripción detallada.
Breve descripción de los dibujos
Otras características y ventajas de la presente invención resultarán evidentes a partir de la siguiente descripción detallada de una realización preferida en este momento, con referencia a los dibujos adjuntos, en los que
la figura 1 es un diagrama de bloques esquemático de una realización de un sistema de formación de imágenes,
la figura 2 es un diagrama de bloques esquemático de una realización del sistema de generador de sincronismo de la figura 1,
la figura 3 es un diagrama de bloques esquemático de una realización del controlador de generador de sincronismo de la figura 2, y
la figura 4 es un diagrama de bloques esquemático de una realización del controlador de señales de salida de la figura 2.
Descripción detallada de realizaciones
En la figura 1 se muestra parcialmente un sistema de formación de imágenes. Un sistema de formación de imágenes de este tipo se implementa normalmente en una cámara de vídeo, una cámara de vigilancia, una cámara fija, una cámara de red, una cámara web, etc. El sistema de formación de imágenes comprende preferiblemente un sensor 2 de imagen, un procesador 4 de imagen analógica, un convertidor 6 analógico-digital (convertidor A/D), un procesador 8 de señal digital (DSP), un microprocesador 10 y un sistema 12 de generador de sincronismo.
El sistema de imagen captura una imagen por medio de la luz reflejada que define la imagen. La luz reflejada se captura preferiblemente mediante un sistema de lentes, no mostrado, y se dirige hacia el sensor 2 de imagen, que puede ser un dispositivo acoplado por carga (CCD) o un sensor de imagen de tipo CMOS. El sensor 2 de imagen se controla por medio de una pluralidad de señales 14 de sincronismo que se proporcionan por el sistema 12 de generador de sincronismo. La función de señal requerida a lo largo del tiempo para tales señales 14 de sincronismo puede variar mucho para diferentes sensores de imagen, incluso las operaciones controladas por las señales 14 de sincronismo pueden variar para diferentes sensores de imagen.
La imagen capturada por el sensor 2 de imagen se representa mediante señales eléctricas analógicas y se pasa al procesador 4 de imagen analógica cuando el sensor 2 de imagen se ha expuesto a la luz durante un periodo de tiempo específico. El experto en la técnica conoce la función de los procesadores 4 de imagen analógica de este tipo. El procesador 4 de imagen analógica también necesita señales 16 de sincronismo para un funcionamiento apropiado. Estas señales 16 de sincronismo se proporcionan también por el sistema 12 de generador de sincronismo. También puede ser necesario variar las señales 16 de sincronismo que controlan el procesador 4 de imagen analógica dependiendo del procesador 4 de imagen analógica usado en el sistema.
Cuando el procesador 4 de imagen analógica ha procesado la representación analógica de la imagen, la imagen se convierte en información digital por medio del convertidor 6 A/D. En la mayoría de los sistemas de formación de imágenes, también es necesario sincronizar el convertidor 6 A/D por medio de al menos una señal 18 de sincronismo. En una realización de la invención, tal sincronismo se realiza por medio del sistema 12 de generador de sincro-
nismo.
La representación digital de la imagen capturada se procesa entonces en un procesador 8 de señal digital (DSP), que también puede necesitar señales 20 de sincronismo generadas por el sistema 12 de generador de sincronismo. Sin embargo, esto depende a menudo del diseño del sistema de formación de imágenes.
La imagen digital procesada se pasa entonces a un sistema 22 para procesar la imagen digital según el propósito global del sistema de formación de imágenes. Por ejemplo, dicho procesamiento puede incluir codificar la imagen según una norma de codificación, por ejemplo JPEG, MPEG, PAL, generando un archivo de imagen y/o de vídeo para su almacenamiento en una memoria externa o interna, o disponiendo los datos de imagen para su transferencia a través de una red, por ejemplo una red telefónica, una red informática, una red para señales de televisión, una red de vigilancia.
En una realización, el sistema de formación de imágenes comprende un microprocesador 10 dispuesto para controlar el rendimiento global del sistema de formación de imágenes. Según una realización, el microprocesador también está habilitado para proporcionar parámetros al sistema 12 de generador de sincronismo con el fin de afectar a la captura de imágenes.
El sistema 12 de generador de sincronismo está dispuesto para generar las señales de sincronismo que requiere el sistema de formación de imágenes. El sistema 12 de generador de sincronismo, según una realización, es un sistema 12 de generador de sincronismo programable en el que la función a lo largo del tiempo de las señales de sincronismo es fácil de programar y alterar. Según una realización específica, las señales de sincronismo son fáciles de cambiar dinámicamente durante la captura de una secuencia de imágenes.
En la figura 2 se muestra una realización del sistema de generador de sincronismo. Según esta realización, el sistema de generador de sincronismo comprende contadores 204 de posición horizontal y vertical (contadores H/V), para realizar el seguimiento de las coordenadas del píxel en el sensor de imagen que se manipula en ese momento, un generador 206 de reloj de píxeles, para proporcionar señales de sincronismo de alta frecuencia, una memoria 220 de programa programable, un controlador 222 de generador de sincronismo y un controlador 236 de señales de sincronismo de salida. En una realización, el sistema de generador de sincronismo puede implementarse en un circuito integrado (CI). Sin embargo, algunas partes del sistema de generador de sincronismo pueden implementarse por separado de tal CI.
Según una realización, el generador 206 de reloj de píxeles recibe una señal de reloj de alta frecuencia desde un cristal y genera, a partir de esta señal de reloj de alta frecuencia, señales de sincronismo de alta frecuencia del sistema de formación de imágenes, por ejemplo proporciona al generador 202 de sincronismo una señal 208 de sincronismo de la frecuencia de reloj de píxeles usada para la sincronización del procesamiento en el generador 202 de sincronismo y proporciona al sensor de imagen del sistema de formación de imágenes señales de sincronismo de frecuencia de reloj de píxeles.
Adicionalmente, el generador 206 de reloj de píxeles puede proporcionar señales de sincronismo que tienen un ciclo de reloj de píxeles a otros dispositivos distintos del generador 202 de sincronismo y el sensor de imagen. Por ejemplo, el generador 206 de reloj de píxeles puede proporcionar una señal de salida de frecuencia de reloj de píxeles al sensor de imagen como una unidad CCD horizontal o señal correspondiente, al generador 202 de sincronismo, un pulso de muestra y de retención al procesador de imagen analógica, una señal de reloj al convertidor
A/D, etc.
El generador 206 de reloj de píxeles genera las señales de sincronismo más básicas, en las que pueden basarse otras señales de sincronismo más avanzadas. Al basar los ciclos de procesamiento del generador de sincronismo en el ciclo de señal de reloj de píxeles es fácil programar las señales de sincronismo de salida como funciones o bien del ciclo de señal de reloj de píxeles o bien del ciclo de ejecución del programa.
Además de lo mencionado anteriormente, el generador 206 de reloj de píxeles puede recibir una señal de sincronismo desde el controlador 236 de señales de salida. Tal señal está dispuesta para controlar la salida de algunas de las señales de sincronismo procedentes del generador 206 de reloj de píxeles. Por ejemplo, la señal de control puede actuar como una señal de compuerta, evitando así que las señales controladas alcancen su destino o dejando que las señales controladas pasen hasta sus destinos.
Los contadores 204 H/V son un conjunto de contadores dispuestos para contar ciclos de reloj con el fin de realizar el seguimiento de la coordenada x e y del píxel manipulado en ese momento y para proporcionar esta información al generador 202 de sincronismo. Con el fin de gestionar esto, los contadores 204 H/V reciben al menos una señal de sincronismo desde el reloj de píxeles, correspondiendo la señal de sincronismo a la señal que sincroniza el procesamiento de cada píxel, es decir el reloj de píxeles. Además, los contadores 204 H/V utilizan registros en los que el microprocesador almacena un valor que indica el número de píxeles que deben interpretarse como una fila de una imagen y un valor que indica el número de filas que deben interpretarse como una trama de imagen. La información de esos registros y la señal de sincronismo recibida desde el generador 206 de reloj de píxeles se utilizan entonces con el fin de hacer que los contadores realicen el seguimiento de la coordenada x y la coordenada y manipuladas en ese momento por el sistema de formación de imágenes. Por ejemplo, un contador de coordenada x cuenta cada ciclo de sincronismo procedente del generador 206 de reloj de píxeles y se pone a cero cuando ha contado un número de píxeles correspondiente al valor almacenado que indica el número de píxeles en una fila. Esta señal de puesta a cero también dispara un contador de coordenada y, que se pone a cero cuando ha contado un número de filas correspondiente al valor almacenado que indica el número de filas en una trama de imagen. El contador también puede implementarse para contar las coordenadas y del modo que se contaron anteriormente las coordenadas x y para contar las coordenadas x del modo que se contaron anteriormente las coordenadas y. En tal caso, el valor que indica el número de píxeles en una fila indica en su lugar el número de píxeles en una columna.
En una realización, los contadores 204 H/V cuentan todos los ciclos de reloj, incluso los que se producen durante periodos de borrado, es decir el periodo en el que no se emite ningún dato de píxel desde el sensor de imagen.
La memoria 220 de programa programable está dispuesta para almacenar las instrucciones de programa que controlan el generador de sincronismo y sus señales de salida. La memoria 220 de programa programable está habilitada para programarse desde una fuente externa, por ejemplo un ordenador externo conectado con el dispositivo de formación de imágenes o el microprocesador dentro del dispositivo de formación de imágenes. En una realización, el microprocesador proporciona un programa a la memoria de programación durante la inicialización del sistema de formación de imágenes. El programa también puede proporcionarse desde el microprocesador en relación con una selección de usuario del formato de imagen o similar. En tal caso, puede ser posible almacenar diferentes programas para diferentes funcionalidades de formación de imágenes o formatos de formación de imágenes en una memoria del microprocesador, descargándose el programa a la memoria 220 de programa cuando se realiza un cambio en la función o el formato. Sin embargo, el sistema 12 de generador de sincronismo habilita la programación de secuencias generadoras de sincronismo complejas y en algunos casos puede ser suficiente utilizar una posibilidad de alterar valores de registros con el fin de cambiar la función del sistema 12 de generador de sincronismo. La longitud de palabra de instrucción de programa en la memoria es de un tamaño tal que hace posible definir las instrucciones de programa necesarias y proporcionar espacio para una posible especificación de datos conectados a la instrucción de programa. Por ejemplo, la longitud de palabra de instrucción de programa puede ser de entre 8-64 bits. Sin embargo, en una realización, la palabra de instrucción de programa se ajusta a 16 bits.
El controlador 222 de generador de sincronismo está dispuesto para leer, interpretar y ejecutar instrucciones de programa procedentes de la memoria 220 de programa. En una realización, al controlador 222 de generador de sincronismo sólo se le permite leer la memoria 220 de programa, es decir no se permite al controlador 222 de generador de sincronismo escribir en la memoria 220 de programa. El controlador 222 de generador de sincronismo comprende medios lógicos y de procesamiento para completar esta tarea, por ejemplo el controlador de generador de sincronismo puede incluir un decodificador 224 para interpretar instrucciones de programa, un contador 226 de programa para determinar la dirección de memoria de la siguiente instrucción de programa que va a ejecutarse, una pila 228 para sostener una dirección de retorno para un salto a subrutina, un banco 230 de registros para el almacenamiento de datos utilizados en el controlador de generador de sincronismo, un controlador 232 de comparación para comparar datos e inicializar operaciones condicionales, un controlador 234 de espera para controlar el procesamiento de una instrucción de programa de espera, etc.
El controlador 236 de señales de sincronismo de salida está dispuesto para generar señales de sincronismo basándose en una especificación de señales procedente de una instrucción de programa. La especificación de señales y otros parámetros de control pueden proporcionarse al controlador 236 de señales de sincronismo de salida por medio del controlador 222 de generador de sincronismo. El controlador 236 de señales de sincronismo de salida está dispuesto para proporcionar una pluralidad de señales de sincronismo de salida, por ejemplo relojes verticales, señales de borrado, pulsos de clip. A continuación se facilitará una realización del controlador de señales de sincronismo de salida.
En la figura 3 se muestra una vista esquemática de una realización del controlador de generador de sincronismo. El controlador de generador de sincronismo comprende un decodificador 302 para interpretar instrucciones de programa y para proporcionar señalización de control y/o datos necesarios a un dispositivo/proceso afectado por una instrucción de programa ejecutada en ese momento, un contador 304 de programa para controlar qué instrucción de programa, por ejemplo por medio de la dirección de memoria de dicha instrucción de programa, va a enviarse al decodificador durante cada ciclo de procesamiento, una pila 306 para el almacenamiento de una dirección de retorno para un salto a subrutina, es decir almacena la dirección de la instrucción de programa que ha de ejecutarse cuando se finaliza un salto a subrutina, un banco 308 de registros para el almacenamiento temporal de los datos utilizados por el controlador de generador de sincronismo y para el almacenamiento de variables o constantes especiales de sólo lectura, un controlador 312 de espera para ejecutar instrucciones de programa que indican que las señales de sincronismo de salida no deben alterarse y/o no debe ejecutarse ninguna otra instrucción de programa durante al menos un número especificado de ciclos de procesamiento, y un controlador 314 de comparación que se proporciona con el fin de facilitar la implementación de, por ejemplo, operaciones condicionadas, por ejemplo correspondientes a una operación "SI" en algunos lenguajes de programación, y/o operaciones de bucle, por ejemplo correspondientes a una operación "Para ... siguiente" en algunos lenguajes de programación.
Por ejemplo, el funcionamiento del decodificador 302 puede ser tal como sigue. El decodificador 302 recibe una palabra de instrucción de programa desde una dirección, indicada por el contador 304 de programa, en la memoria 316 de programa, que no forma parte del controlador de generador de sincronismo y por tanto se indica mediante una línea discontinua. El decodificador 302 interpreta la palabra de instrucción de programa y genera una o una pluralidad de señales de control dirigidas directamente al dispositivo/a los dispositivos que deben estar implicados en o habilitados durante la ejecución de la instrucción de programa decodificada. La trayectoria que transporta señales de control, es decir la trayectoria para las instrucciones decodificadas, se representa en la figura como líneas de puntos y trazos. La trayectoria puede comprender una línea de señal para cada dispositivo que vaya a recibir señales de control desde el decodificador. En una realización, la interpretación de instrucciones de programa se consigue haciendo que el decodificador reconozca e identifique diferentes instrucciones de programa procedentes del patrón de bits de cada instrucción de programa y generando la señal/las señales de control correspondientes a la instrucción de programa identificada.
Además, el decodificador 302 proporciona datos que están incrustados en la instrucción para un dispositivo o dispositivos que procesan o manipulan instrucciones. En la figura, la trayectoria para tales datos se indica mediante una línea discontinua. Los datos pueden extraerse de la palabra de instrucción de programa y pasarse mediante el decodificador 302 o pueden pasarse junto con el resto de la palabra de instrucción de programa, es decir sin extracción en el decodificador, desde el decodificador o directamente desde la memoria 316 de programa. En el último caso, la extracción de datos se consigue en el dispositivo respectivo, si lo permite el diseño de las instrucciones de programa, la extracción puede ser tan simple como dejar que bits predeterminados pasen a través del dispositivo mientras que el resto se ignora. Este enfoque funciona bien si los datos que van a leerse mediante un dispositivo específico se almacenan siempre en la misma parte de la palabra de instrucción de programa. En una realización, la palabra de instrucción de programa se proporciona como datos a todos los dispositivos que, según al menos una instrucción, necesitan obtener datos de la instrucción de programa, independientemente de si la instrucción ejecutada en ese momento se refiere a un dispositivo particular o no. En tal realización, las señales habilitadas pueden usarse para hacer que los dispositivos, que van a verse afectados por la instrucción de programa y sus datos, se ocupen de los datos proporcionados.
En una realización, el decodificador 302 proporciona al controlador 318 de señales de salida al menos una señal de control y datos, en la forma de una especificación de señales de salida, desde una instrucción de programa.
En una realización, el decodificador recibe una señal 320 de control desde el controlador de comparación que instruye al decodificador no manipular la siguiente instrucción de programa. Por ejemplo, la señal puede bloquear la trayectoria de instrucción de programa procedente de la memoria de programa durante un ciclo de ejecución. Un diseño de este tipo puede usarse para implementar operaciones "SI" sencillas.
Por ejemplo, el funcionamiento del contador 304 de programa puede ser tal como sigue. El contador 304 de programa realiza el seguimiento de la dirección para la instrucción de programa ejecutada en ese momento y proporciona, si no se ordena otra cosa por otro dispositivo del controlador de generador de sincronismo, una dirección a la instrucción de programa que ha de ejecutarse durante el siguiente ciclo de ejecución añadiendo simplemente un valor, correspondiente a un salto hasta la siguiente instrucción de programa, a la dirección de la instrucción de programa ejecutada en ese momento.
Además, el contador 304 de programa está conectado a la pila 306 para recibir una dirección de retorno cuando se ejecuta una instrucción de programa referente al retorno de la ejecución del programa desde una subrutina ejecutada en ese momento. El contador 304 de programa está conectado también a la pila 306 para proporcionar a la pila una dirección de retorno para su uso cuando se alcanza el final de la subrutina. En el último caso, se proporciona a la pila la dirección para la siguiente instrucción de programa que va a ejecutarse durante la ejecución normal del programa, véase posteriormente. La dirección de la instrucción de programa a la que se refiere el salto a instrucción de programa de subrutina se proporciona al contador 304 de programa y se envía a la memoria 316 de programa por medio del contador 304 de programa como la dirección de la siguiente instrucción de programa que va a ejecutarse. La dirección para la instrucción de programa a la que se refiere el salto a la instrucción de programa de subrutina se incluye, por ejemplo, en los datos del salto a instrucción de programa de subrutina.
Además, el contador 304 de programa puede estar conectado al controlador 312 de espera, véase posteriormente.
Por ejemplo, el funcionamiento de la pila 306 puede ser tal como sigue. La pila se implementa como un registro de último en entrar, primero en salir (LIFO). Cuando se ejecuta un salto a instrucción de programa de subrutina el decodificador 302 envía una señal a la pila 306 indicándole que desplace la dirección proporcionada desde el contador 304 de programa hasta la parte superior de la pila 306. La dirección corresponde a la dirección de la siguiente instrucción de programa, es decir la instrucción de programa que sigue al salto a instrucción de programa de subrutina en la memoria 316 de programa. Cuando se ejecuta un final de instrucción de programa de subrutina, el decodificador envía una señal a la pila 306 indicándole que despliegue la última dirección que se desplazó a la pila, es decir la dirección más superior en la pila. Esta dirección se proporciona entonces al contador 304 de programa y se manipula en el contador 304 de programa tal como se describió anteriormente.
Por ejemplo, el banco 308 de registros incluye registros especiales que puede leer el generador de sincronismo y que puede escribir el microprocesador. Estos registros hacen posible hacer que el microprocesador y/o el usuario del sistema cambien dinámicamente el comportamiento del generador de sincronismo y, por tanto, el dispositivo de formación de imágenes. Por ejemplo, el tiempo de exposición del sensor de formación de imágenes puede ajustarse durante el funcionamiento al hacer que las instrucciones de programa que afectan a una señal de sincronismo que controla el tiempo de exposición del sensor de imagen dependan del valor de un registro de este tipo. Además, uno de estos registros puede usarse para proporcionar el número de filas en una trama de imagen. En una realización, sólo se permite al generador de sincronismo leer dichos registros.
Además, el banco 308 de registros puede incluir registros que pueden leerse y escribirse por el controlador de generador de sincronismo. Tales registros pueden utilizarse para almacenar variables, el almacenamiento temporal de condiciones de bucle, por ejemplo el número de bucles que ha dejado una operación de este tipo.
Además, adicionalmente el banco 308 de registros puede incluir dos registros de sólo lectura con respecto al controlador de generador de sincronismo que contienen el valor del contador H y el contador V, respectivamente, es decir la coordenada x y la coordenada y, respectivamente, tratados en relación con los contadores de posición H/V en la figura 2.
El banco 308 de registros responde a una señal de instrucción decodificada que indica que los datos de un registro deben emitirse desde el banco 308 de registros. Además, el banco 308 de registros responde a una señal de instrucción decodificada que indica que los datos deben escribirse en un registro. Cuando el banco de registros detecta tales instrucciones, los datos en la trayectoria de datos corresponden a una dirección en la que deben escribirse los datos y una dirección de la que deben leerse los datos, respectivamente. Además, durante una instrucción de lectura, los datos en la trayectoria de datos incluyen datos referentes a dónde enviar los datos desde el registro. Por ejemplo, los datos pueden transferirse al controlador de comparación o el valor de los datos puede reducirse en uno y volver a escribirse en el mismo registro. Según una realización, el banco de registros está dispuesto de modo que pueden leerse dos registros diferentes durante el mismo ciclo de ejecución.
Por ejemplo, el controlador 312 de espera es un contador que proporciona al contador 304 de programa una señal de control. El controlador 312 de espera se activa mediante una señal de instrucción de programa decodificada procedente del decodificador 302. Cuando el controlador de espera recibe la señal de instrucción de programa decodificada, la trayectoria de datos incluye datos que corresponden al número de ciclos de ejecución que se ordena al generador de sincronismo no ejecutar instrucciones de programa, el contador se ajusta al valor de los datos y la señal de control proporcionada al contador 304 de programa se cambia con el fin de parar el contador 304 de programa. Entonces, el valor del contador del controlador 312 de espera se reduce para cada ciclo de ejecución y cuando el contador del controlador 312 de espera alcanza un valor predeterminado, por ejemplo cero, se cambia de nuevo la señal de control y se habilita de nuevo el contador 304 de programa y se reanuda la ejecución de instrucciones de programa.
Por ejemplo, el controlador 314 de comparación está dispuesto para comparar dos operandos de fuente y generar una señal de resultado que indica si la comparación era "verdadero" o "falso". La señal de resultado puede enviarse al contador 304 de programa, con el fin de iniciar saltos condicionales a una dirección especificada en un campo de datos de una palabra de instrucción de programa, o al decodificador 302, con el fin de inhibir el efecto de la siguiente instrucción. Los operandos de fuente para comparar pueden ser, por ejemplo, valores de registro procedentes del banco 308 de registros, o un campo de datos de la instrucción de programa ejecutada en ese momento. En una realización, el tipo de comparaciones realizadas puede ser "es igual que", "mayor que" o "menor que".
En una realización, el controlador de generador de sincronismo está dispuesto para generar una señal de interrupción para el microprocesador. La señal de interrupción puede enviarse, por ejemplo, al inicio del registro de una imagen o al final cuando la imagen se ha recuperado del sensor de imagen.
En la figura 4 se muestra una realización del controlador de señales de salida. El controlador de señales de salida comprende dos selectores, un selector 406 de máscara y un selector 408 de señal, un basculador 410 y una compuerta 412 XOR. Los selectores 406-408 pueden ser multiplexores. En la realización, una pluralidad de señales de salida se procesa en paralelo, por ejemplo, la trayectoria de señal en la figura, representada mediante la línea continua, incluye la representación de una pluralidad de señales de salida. Por tanto, los selectores 406 y 408, el basculador 410 y la compuerta XOR están dispuestos para procesar una pluralidad de señales de salida en paralelo. Con el fin de visualizar las líneas de señal paralelas, la salida del controlador de señales de salida se dibuja como una pluralidad de líneas de señal.
La trayectoria para las instrucciones 402 decodificadas y la trayectoria 404 de datos que proporciona datos incrustados en la instrucción corresponden a las trayectorias en la figura 3 que transfieren señales de control y datos incrustados en la palabra de instrucción, respectivamente, desde el decodificador hasta el controlador de señales de salida.
Las señales de salida del controlador de señales de salida son constantes siempre que ninguna instrucción de programa ordene al controlador de salida cargar un nuevo patrón de bits que represente el nivel de cada señal o cargar una máscara que se use para alterar el nivel de al menos una señal por medio de la compuerta 412 XOR. Cuando no se ejecuta ninguna instrucción de este tipo, las señales de salida en las líneas 414 de señal se devuelven a la entrada del basculador 410 sin ningún cambio y se hacen pasar entonces en respuesta a una señal de sincronismo que sincroniza el controlador de señales de salida. Dicha señal de sincronismo puede corresponder a la señal de sincronismo que está dispuesta para sincronizar el controlador de generador de sincronismo. Por tanto, las señales de salida se mantienen constantes si las instrucciones de programa no instruyen hacer ningún cambio.
El selector 408 de señal está dispuesto para pasar a través de una de dos trayectorias de señal, que incluyen, cada una, una pluralidad de señales, hasta la entrada del basculador. Cuando la instrucción de programa ejecutada en ese momento no incluye instrucciones para sustituir las señales de salida, el selector 408 de señal se ajusta para que pase las señales proporcionadas por la compuerta 412 XOR, y cuando la instrucción de programa ejecutada en ese momento incluye instrucciones para sustituir las señales de salida, el selector 408 de señal se ajusta para que pase un patrón de bits, es decir una especificación de señales, proporcionado por la instrucción de programa. La selección de qué patrón de entrada se pasa, se controla por medio de una señal de control enviada desde el decodificador por medio de la trayectoria 402 de señal de control. El patrón de bits proporcionado por una instrucción de programa se proporciona por medio de la trayectoria 404 de datos que proporciona datos incrustados en la instrucción.
El selector 406 de máscara está dispuesto para pasar un patrón de bits de ceros a la compuerta 412 XOR cuando la instrucción de programa ejecutada en ese momento no incluye instrucciones para alterar al menos una señal de salida, el número de ceros paralelos que se hacen pasar a través del selector de máscara corresponde al número de señales de salida. Sin embargo, cuando el decodificador recibe una instrucción de programa que incluye instrucciones para alterar al menos una señal de salida, el selector 406 de máscara se ajusta para pasar el patrón de bits de datos de la palabra de instrucción de programa a la compuerta XOR. La selección de qué patrón de entrada pasar, se controla por medio de una señal de control enviada desde el decodificador por medio de la trayectoria 402 de señal de control. El patrón de bits proporcionado por una instrucción de programa se proporciona por medio de la trayectoria 404 de datos que proporciona datos incrustados en la instrucción.
La compuerta 412 XOR emite entonces señales que corresponden a una operación XOR de la señal 414 de salida desde el generador de señales de salida y la señal 418 de salida desde el selector 406 de máscara. Por ejemplo si la señal de salida procedente del selector 406 de máscara es "11001110110001", en paralelo, y la señal 414 de salida procedente del generador de señales de salida es "11111111111110", la señal de salida procedente de la compuerta XOR pasa a ser "00110001001111". Esta función puede usarse, por ejemplo, si una o algunas de las señales de salida deben alterarse aunque no se conozca la presente señal de salida en las otras líneas.
Según una realización, la memoria de programa está dispuesta para almacenar palabras de instrucción de programa que tienen una longitud de 16 bits. Ejemplos de posibles instrucciones de programa y un posible patrón de bits correspondiente para cada instrucción se presentan en la Tabla 1 a continuación, y la función de la respectiva instrucción de programa posible de la Tabla 1 se presenta en la Tabla 2.
TABLA 1 Posibles instrucciones de programa y posibles patrones de bits correspondientes
\vskip1.000000\baselineskip
1
2
\vskip1.000000\baselineskip
Las instrucciones de programa de la Tabla 1 y la Tabla 2 están diseñadas para una realización en la que el banco de registros es un banco de registro de 8x12 bits. Los registros de dicho banco de registros son tal como sigue: los registros 0-3 corresponden al registro de lectura/escritura descrito anteriormente, el registro 4 corresponde al registro de sólo lectura que contiene el valor del contador H, el registro 5 corresponde al registro de sólo lectura que contiene el valor del contador V, y los registros 6-7 corresponden al registro de sólo lectura, con respecto al controlador de generador de sincronismo, en el que puede escribir el microprocesador.
\vskip1.000000\baselineskip
TABLA 2 La función de la respectiva instrucción de programa posible de la Tabla 1
3
4
En las tablas, r1 y r2 indican el uso de cualquier registro en el banco de registros, si no se dice otra cosa en relación con la instrucción. El uso de r indica el uso de los registros 4 a 7, según la tabla "r" debe interpretarse como el registro r+4.

Claims (8)

1. Generador (12) de sincronismo para un sistema de formación de imágenes, que comprende:
un controlador (236; 318) de señales de sincronismo de salida, controlador (236; 318) de señales de sincronismo de salida que está dispuesto para proporcionar una pluralidad de señales de salida en una pluralidad de líneas de señal de las mismas (414),
un contador de posición horizontal y un contador (204) de posición vertical dispuesto para contar ciclos de reloj para realizar un seguimiento de una coordenada x e y de un píxel manipulado en ese momento,
estando dicho generador (12) de sincronismo caracterizado por:
una memoria (220; 316) de programa programable que está dispuesta para comprender instrucciones de programa para controlar la generación de señales de sincronismo,
un controlador (222) de generador de sincronismo para procesar las instrucciones de programa procedentes de la memoria (220; 316) de programa,
incluyendo el controlador (222) de generador de sincronismo un decodificador (224; 302) para decodificar instrucciones de programa procedentes de la memoria (220; 316), estando dispuesto el decodificador (224; 302) para emitir al menos una señal (402) de control y una pluralidad de señales paralelas que forman un patrón de bits y que constituyen una especificación (404) de señales de sincronismo de salida, determinando la especificación (404) de señales de sincronismo de salida el aspecto de las señales de salida en respuesta a la decodificación de dichas instrucciones,
estando conectado el controlador (236; 318) de señales de sincronismo de salida al controlador (222) de generador de sincronismo para la recepción de la al menos una señal (402) de control y la especificación (404) de señales de sincronismo de salida y comprendiendo además el controlador (236; 318) de señales de sincronismo de salida, medios para realizar una operación (412) XOR y que comprende al menos un selector (406), estando dispuestos dichos medios para realizar una operación (412) XOR para recibir dicha pluralidad de señales (414) de salida, para recibir dicha especificación (404) de señales de sincronismo de salida o un patrón de bits de ceros procedente del selector (406) dependiendo de la al menos una señal (402) de control, y para emitir señales que resultan de la operación XOR entre las señales (418) procedentes del selector (406) y dicha pluralidad de señales (414) de salida, en el que la salida de los medios para realizar una operación (412) XOR está conectada a la pluralidad de líneas (414) de señal del controlador (236; 318) de señales de sincronismo de salida.
\vskip1.000000\baselineskip
2. Generador (12) de sincronismo según la reivindicación 1, en el que el controlador (222) de generador de sincronismo incluye además una pila (228; 306) para almacenar al menos una dirección de retorno para al menos una instrucción de programa en la memoria (220; 316) de programa, siendo la instrucción de programa la instrucción de programa que ha de ejecutarse cuando se ha alcanzado el final de una subrutina.
3. Generador (12) de sincronismo según una cualquiera de la reivindicación 1 o la reivindicación 2, en el que el controlador (222) de generador de sincronismo incluye además un banco (230; 308) de registros, en el que el banco (230; 308) de registros incluye un registro de que el generador de sincronismo puede leer y al menos un sistema externo al generador de sincronismo puede escribir.
4. Generador (12) de sincronismo según una cualquiera de las reivindicaciones 1-3, en el que el controlador (222) de generador de sincronismo incluye además un banco (230; 308) de registros, en el que el banco de registros incluye un registro al que puede acceder el generador (12) de sincronismo para su lectura y escritura.
5. Generador (12) de sincronismo según una cualquiera de las reivindicaciones 1-4, en el que el generador (12) de sincronismo comprende una línea (208) de señal de entrada para la recepción de una señal de reloj para sincronizar el funcionamiento del generador de sincronismo, en el que dicha señal de reloj es síncrona con una señal de sincronismo de píxel.
6. Generador (12) de sincronismo según una cualquiera de las reivindicaciones 1-5, en el que el controlador (222) de generador de sincronismo puede acceder a la memoria (220; 316) de programa programable sólo para su lectura y tiene un tamaño inferior o igual a 1 kbyte.
7. Dispositivo de formación de imágenes que comprende:
un sensor (2) de imagen,
un procesador (4) de imagen analógica,
un convertidor (6) analógico-digital (A/D), y
un generador (12) de sincronismo según una cualquiera de las reivindicaciones 1-6 que proporciona señales de sincronismo al sensor de imagen.
\vskip1.000000\baselineskip
8. Dispositivo de formación de imágenes según la reivindicación 7, que comprende además un generador de reloj de píxeles para generar señales de sincronismo de alta frecuencia para el sensor de imagen, en el que el sincronismo del generador (12) de sincronismo se consigue por medio de una señal de sincronismo que es síncrona con el reloj de píxeles.
ES03713171T 2002-04-10 2003-04-08 Dispositivo de formacion de imagenes y generador de sincronismo. Expired - Lifetime ES2346200T3 (es)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
SE2002101082 2002-04-10
SE0201082A SE522231C2 (sv) 2002-04-10 2002-04-10 Bildalstringsanordning och timinggenerator

Publications (1)

Publication Number Publication Date
ES2346200T3 true ES2346200T3 (es) 2010-10-13

Family

ID=20287542

Family Applications (1)

Application Number Title Priority Date Filing Date
ES03713171T Expired - Lifetime ES2346200T3 (es) 2002-04-10 2003-04-08 Dispositivo de formacion de imagenes y generador de sincronismo.

Country Status (10)

Country Link
US (1) US7131022B2 (es)
EP (1) EP1497973B1 (es)
JP (1) JP4330454B2 (es)
KR (1) KR100944597B1 (es)
AT (1) ATE469507T1 (es)
AU (1) AU2003217137A1 (es)
DE (1) DE60332718D1 (es)
ES (1) ES2346200T3 (es)
SE (1) SE522231C2 (es)
WO (1) WO2003088653A1 (es)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7557849B2 (en) 2004-10-11 2009-07-07 Mediatek Usa Inc Processor-controlled timing generator for multiple image sensors
JP5266613B2 (ja) * 2005-10-21 2013-08-21 株式会社島津製作所 2次元放射線検出器、及び、該2次元放射線検出器を備えた放射線撮像装置
JP4806595B2 (ja) * 2006-07-05 2011-11-02 富士フイルム株式会社 固体撮像素子駆動装置及びデジタルカメラ
JP5021980B2 (ja) * 2006-08-21 2012-09-12 株式会社リコー 撮像装置および撮像装置の起動方法
TWI339948B (en) * 2007-11-19 2011-04-01 Faraday Tech Corp Pll base timing generator and method of generating timing signal
FR3012002B1 (fr) * 2013-10-16 2016-12-23 E2V Semiconductors Capteur d'image avec generation de sequences de signaux de commande
FR3030156B1 (fr) 2014-12-11 2016-12-30 E2V Semiconductors Procede de distribution synchrone d'un signal numerique sur n blocs identiques adjacents d'un circuit integre

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5775335A (en) * 1980-10-27 1982-05-11 Hitachi Ltd Data processor
US4922137A (en) 1988-05-17 1990-05-01 Eastman Kodak Company Programmable sequence generator
US5247656A (en) * 1989-06-01 1993-09-21 Matsushita Electric Industrial Co., Ltd. Method and apparatus for controlling a clock signal
DE69132577T2 (de) 1990-10-31 2001-11-29 Hitachi, Ltd. Zittervermeidung im Videokameraausgabebild
US5581303A (en) 1995-01-18 1996-12-03 Radius Inc. Video timing signal generation circuit
JPH08234701A (ja) * 1995-02-28 1996-09-13 Sony Corp 映像表示装置
US5758094A (en) * 1995-05-24 1998-05-26 Winnov Computer video communications system
JP3520611B2 (ja) * 1995-07-06 2004-04-19 株式会社日立製作所 プロセッサの制御方法
JPH0944113A (ja) * 1995-07-28 1997-02-14 Sony Corp Lcd駆動用タイミングジェネレータ
JPH09200613A (ja) * 1996-01-19 1997-07-31 Sony Corp 固体撮像素子の欠陥検出装置
US5982428A (en) 1996-12-30 1999-11-09 Eastman Kodak Company Programmable clock generator for an imaging device
JP3819511B2 (ja) * 1997-02-13 2006-09-13 富士写真フイルム株式会社 Ccd撮像デバイスにおけるモニタ方法およびディジタルスチルカメラ
US6285399B1 (en) 1997-07-09 2001-09-04 Flashpoint, Technology, Inc. System and method for generating timing signals in an electronic imaging device
US6784929B1 (en) 1999-08-20 2004-08-31 Infineon Technologies North America Corp. Universal two dimensional (frame and line) timing generator
US6961084B1 (en) 1999-10-07 2005-11-01 Ess Technology, Inc. Programmable image transform processor
JP2001238138A (ja) * 2000-02-21 2001-08-31 Matsushita Electric Ind Co Ltd 固体撮像素子のためのタイミングジェネレータ
KR100420116B1 (ko) * 2000-08-31 2004-03-02 삼성전자주식회사 저전력 소모 씨디엠에이 모뎀 칩 설계를 위한 프로세서클럭 발생 회로 및 클럭 발생 방법

Also Published As

Publication number Publication date
DE60332718D1 (de) 2010-07-08
US7131022B2 (en) 2006-10-31
EP1497973A1 (en) 2005-01-19
JP4330454B2 (ja) 2009-09-16
JP2005522954A (ja) 2005-07-28
AU2003217137A1 (en) 2003-10-27
SE0201082D0 (sv) 2002-04-10
WO2003088653A1 (en) 2003-10-23
EP1497973B1 (en) 2010-05-26
KR20040101431A (ko) 2004-12-02
SE522231C2 (sv) 2004-01-27
KR100944597B1 (ko) 2010-02-25
SE0201082L (sv) 2003-10-11
US20040019817A1 (en) 2004-01-29
ATE469507T1 (de) 2010-06-15

Similar Documents

Publication Publication Date Title
US6415338B1 (en) System for writing a data value at a starting address to a number of consecutive locations equal to a segment length identifier
US6453365B1 (en) Direct memory access controller having decode circuit for compact instruction format
ES2222942T3 (es) Actualizacion de cuadros de imagen en un dispositivo de presentacion que comprende una memoria de cuadro.
JP3068842B2 (ja) 画像処理装置におけるダイレクトメモリアクセス装置およびそれに用いる外部記憶装置
KR950012080B1 (ko) 표시 제어 장치
ES2346200T3 (es) Dispositivo de formacion de imagenes y generador de sincronismo.
JPS6145369A (ja) デジタルイメ−ジフレ−ムプロセツサ
JPH0612863A (ja) デュアルポートdram
US20060294321A1 (en) Communication registers for processing elements
JPH06187143A (ja) 電子装置
US7266825B2 (en) Method for synchronizing program sections of a computer program
US20040068590A1 (en) Data processor
JP3987277B2 (ja) パルス信号生成装置
US9852092B2 (en) System and method for memory access
US5430853A (en) Update of control parameters of a direct memory access system without use of associated processor
WO2001015436A1 (en) Universal two dimensional timing generator
KR920001102B1 (ko) 정보 처리 장치
US6020900A (en) Video capture method
KR910002930B1 (ko) 마이크로콤퓨터용 펄스입출력처리장치
JP2004013289A (ja) マイクロコントローラのオンチップデバッグ方法
SU1698890A1 (ru) Устройство дл ввода информации
Smith Programmable digital waveform generator
JPH0997176A (ja) マイクロコンピュータの割り込み処理装置
Wells et al. An FPGA based prototyping platform for imager-on-chip applications
JP2000035886A (ja) データ処理システム