Dsps Fpgas en Ingenieria Biomedica



Comments



Description

1DSPS, FPGAS y aplicaciones en ingeniería biomédica. Cristina Gallego Ortiz y Tatiana Vanesa Restrepo 1. DSPs y FPGAs 1.1. Introducción: Un DSP es un procesador digital de señales con capacidad de procesamiento de inIormacion en linea, o en tiempo real. Es un dispositivo que presenta caracteristicas de microcontrolador y microprocesador. Por lo tanto, su arquitectura ha sido optimizada para la implementacion de Iunciones tales como Iiltrado, correlacion y analisis espectral de una señal digital de entrada al sistema gracias a que posee una CPU de gran potencia de calculo que permite realizar el mayor numero de operaciones aritmeticas en el menor tiempo posible. Se caracterizan por tener arquitecturas especiales, orientadas a la realizacion hardware de los calculos que otros microprocesadores realizan via soItware, mediante la ejecucion secuencial de varias instrucciones. El hardware de la Cpu de es mas complejo que el de otros microprocesadores o microcontroladores y su area de silicio es mucho mayor y por esto su costo es tan elevado. Una FPGA es un dispositivo semiconductor con componentes e interconexiones de logica programable para duplicar la Iuncionalidad de las compuertas logicas basicas como las AND, OR, XOR, NOT o otras como decoders o Iunciones matematicas simples. La mayoria de FPGAs incorporan ademas elementos o bloques de memoria. El termino "Iield-programmable" de una FPGA (Field-programmable gate array) hace alusion a la jerarquia de interconexiones programables entre los bloques logicos de la FPGA que permite conIigurarlas segun el criterio del diseñador del sistema, es decir despues del proceso de manuIactura del dispositivo. Lo anterior conIiere a una FPGA la posibilidad de ejecutar cualquier Iuncion logica que se desee programar. En adicion a esto las FPGAs incorporan Iunciones embebidas de alto nivel (como sumadores y multiplicadores) asi como memorias embebidas. Las FPGAs modernas soportan la reconIiguracion total o parcial, permitiendo que su diseño pueda ser modiIicado segun operaciones de actualizacion del sistema, lo que se conoce como computacion reconIigurable o sistemas reconIigurables. De manera analoga, los DSP se diseñan para poder operar en paralelo con otros dispositivos similares, para lo cual tienen periIericos de control y bloqueo del programa (Lineas de entrada salida que pueden bloquear la ejecucion de ciertas instrucciones si se encuentran en un valor determinado), al igual que los periIericos de entrada-salida de alta velocidad (puertos serie sincronos) que permiten la conexion sencilla de varios DSP para aplicaciones que requieran multiples procesadores. Inicialmente el mercado de los DSP era muy reducido y por su alto costo solo eran usados en grandes sistemas pero con la revolucion y expansion de las 2 telecomunicaciones esto ha cambiando claramente. La tendencia en la mejora de la arquitectura del DSP se enIoca hacia el aumento del paralelismo del sistema, que es directamente proporcional a numero de operaciones que el DSP sera capaz de realizar en un ciclo de reloj. Tanto las aplicaciones de los DSPs y las FPGAs cubren practicamente todos los campos de la industria: telecomunicaciones, control, instrumentacion, redes, analisis de imagen y voz, automotriz y medicina. Lo que hace que los Iabricantes busquen cada vez mejores arquitecturas y compiladores mas inteligentes, y mejores herramientas de depuramiento y desarrollo. 1.2. El DSP: Funcionamiento y estructura interna: 1.2.1. Control y manejo de las instrucciones En la programacion de un DSP las instrucciones deben ser trasladadas primero a los registros de instruccion en la zona de dispositivos de almacenamiento de tipo volatil (RAM) y no volatil (ROM) para luego ser leidas e interpretadas por la CPU. Fig 1. Ciclo de instrucciones de la CPU. Disponible online: |1| Para poder gestionar el acceso a la memoria de programa, la CPU debe conocer en cada instante donde se encuentra la instruccion que debe ejecutar como se observa en la Iigura 1. Para ello dispone de un registro conocido como contador de programa (PC o program counter). A veces es necesario romper temporalmente la secuencia normal de ejecucion del programa y cambiar la Iorma habitual de incrementar el registro PC; al ejecutar un bucle, llamar una subrutina o cuando aparecen interrupciones. En estos casos es necesario: 1. Guardar el registro PC 2. Utilizar una zona de memoria que se desee reservar para este Iin (pila). 3. Puntero a la pila (SP o snack pointer) para apuntar a la posicion de memoria asociada a la pila. 3 1.2.2 Estructura interna básica de un Dsp Su estructura interna basica consiste en una arquitectura de tipo Harvard, pero para acelerar la ejecucion de instrucciones y la realizacion de operaciones aritmeticas este incorpora: • Buses de datos para trasvase de instrucciones • Bus de direcciones y de datos para el acceso a los datos • Operadores logicos y aritmeticos avanzados entre otros. • Multiples ALU y multiplicadores, capaces de realizar varias operaciones aritmeticas en un unico ciclo maquina. • Registros acumuladores que amplian la potencia de calculo y se emplean como variables de almacenamiento temporal de datos, lo que se disminuye el numero de transIerencias entre el acumulador de la CPU y la memoria de datos. 1.2.3 Arquitectura de un sistema microprocesador El acceso de la CPU a dispositivos externos de memoria se realiza mediante un numero Iijo de lineas denominadas Buses del sistema. Un bus es una agrupacion de conexiones electricas que manejan niveles digitales de tension y Iacilitan la conexion de la CPU con el resto de dispositivos del microprocesador. Los buses que permiten que la CPU lea o escriba son: • Bus De control: Conjunto de conexiones electricas o lineas, de las cuales se destacan las de salida de la CPU empleadas para controlar la comunicacion de la propia CPU con los dispositivos de su sistema microprocesador; ademas de estas aparecen tambien algunas lineas de entrada a la CPU que sirven para hacer llegar la señal de reloj a la CPU del sistema, la inicializacion de la CPU que permiten a algun dispositivo externo requerir la atencion de la CPU, provocando la interrupcion en su Iuncionamiento secuencial • Bus De Datos: Se utiliza para almacenar un dato en un dispositivo externo, en estas lineas de salida escribe lo que desea almacenar, mientras que por el contrario cuando se desea recoger algo, emplea el bus de datos como camino entrada a la CPU del dato o instruccion a leer. • Bus De Direcciones: Le sirven a la Cpu para indicar la direccion del dato la instruccion que se desea leer o el dato que se quiere almacenar; sirven para Iijar el numero maximo de instrucciones o datos a los que es capaz de acceder la CPU. 4 Fig 2. Arquitectura Harvard. Disponible online: |1| 1.3 Clasificación de los Dsp: Segun su Iuncionalidad se pueden clasiIicar en: Características RISC (Procesadores de set reducido de instrucciones) CISC (Procesadores de set complejo de instrucciones) Set instrucciones Reducido Complejo Modos direccionamiento Reducidos Numerosos Ciclos de ejecución Sencillos Varios ciclos Implementación SoItware y Hardware MicrocodiIicada Dispositivos DSPs Microcontroladores Microprocesadores Tabla 1. Tecnologias RISC y CISC . Disponible online: |1| 1.4 Descripción de la CPU de un sistema microprocesador Una CPU constituye un sistema electronico de pequeño tamaño, elevada Iiabilidad, poco tiempo de diseño y bajo coste. De los registros internos se destacan los siguientes: - Registros de control: Registros internos de periIerico. Permiten conIigurar las condicionas en las que va a trabajar el dispositivo, se puede acceder desde la CPU en lectura y escritura, suelen conIigurarse una unica vez al principio del programa y antes de que la CPU empiece a trabajar con el periIerico 5 - Registro de Estado: La Cpu accede a este unicamente en lectura, para observar el estado del periIerico. - Registros de datos: Registros de trabajo del periIerico, y por esto los mas utilizados por la CPU. Se emplean como Iuente para la realizacion de la tarea para la que Iue seleccionado, desde la Cpu se puede acceder a ellos en lectura o escritura. 1.4.2 Periféricos de un sistema microprocesador El periIerico es un dispositivo para ayudar a la CPU a realizar tareas que esta no puede realizar y a los que accede para lectura y escritura. La cantidad de estos depende de la complejidad y Iuncionalidad del procesador. Los periIericos mas comunes son: • Para almacenamiento de datos (normalmente periIericos de tipo volatil o RAM) o de programa (Normalmente periIericos de tipo no volatil o ROM). • Para implementacion de Iunciones de comunicacion con el exterior del sistema como la lectura de variables analogicas y el calculo de su valor digital (periIericos de conversion analogo digital). PeriIericos de acceso directo de memoria (DMA) los cuales pueden Iuncionar como maestros o como esclavos. El microprocesador puede acceder a el para conIigurar su modo de Iuncionamiento (esclavo) o este periIerico puede gobernar los buses y Iuncionar como maestro en el sistema digital para realizar transIerencias de inIormacion a traves de los buses de datos del sistema. Fig 3. TMS320C2000 (DMA). Disponible online: |1| 2. Proceso de selección, procesamiento y aplicación de un DSP: 6 Paso 1: Selección del DSP - Formato de datos: Los DSP se clasiIican segun el tipo de aritmetica que usen para realizar los calculos. Los procesadores de coma fija, representan los numeros como enteros o como Iracciones en un rango Iijo (-1 a 1) utilizando un determinado numero de bits. Requieren un hardware mas simple, por lo su coste unitario, consumo y tamaño es menor, lo que resulta idoneo para aplicaciones en teleIonia movil. Con los procesadores de coma flotante se obtiene un rango dinamico mayor entre el valor mas grande y el mas pequeño que puede ser representado. Los numeros se representan usando una mantisa y un exponente. Esto simpliIica la programacion de algoritmos aunque a expensas de un mayor coste, consumo y tamaño. - Ancho de datos: El tamaño de los buses de datos dan una medida del Ilujo de inIormacion entre la CPU y los periIericos. Buses de mayor ancho permiten que los Ilujos de datos sean mas rapidos, auque a costa de complicar la arquitectura, el tamaño del chip, el numero de pines del encapsulado y el tamaño de los dispositivos externos de memoria. - Velocidad: Determina el numero de instrucciones ejecutadas por segundo (MIPS) o millones de operaciones Ilotantes por segundo (MFLOPS), o millones de operaciones de multiacumulacion por segundo (MMACS). Sirven como patron de comparacion entre distintos procesadores. - Organización de la memoria: Jerarquias de memoria con memorias cache de programa y/o datos que aceleran la ejecucion pues aprovechan de manera mas eIiciente la arquitectura interna del DSP. - Arquitectura del procesador: Determina la estructura de ejecucion de las instrucciones y el grado de paralelismo. - Consumo: Las tensiones de alimentacion de los DSP son cada vez menores (3.3, 2.5, o 1.8V) - Coste: La mejor eleccion no es el procesador mas potente sino aquel que nos permite cumplir con las exigencias de la aplicacion al menor costo. - Entorno de desarrollo: Determina las herramientas soItware (ensambladores, simuladores, debuggers, compiladores, sistemas operativos en tiempo real), las herramientas hardware (tarjetas de desarrollo y evaluacion, emuladores). Paso 2: Evaluación del DSP seleccionado Incluye el aprendizaje de las herramientas de desarrollo, que deba cumplir con los requerimientos de la aplicacion. Paso 3: Fase inicial de desarrollo Utiliza un sistema de desarrollo completo de la aplicacion para probar las posibilidades que oIrece el sistema para implementar algunas partes del proyecto Iinal o evaluar los algoritmos de procesamiento diseño. 7 Paso 4: Desarrollo del producto final Ultima Iase de diseño y desarrollo de un soporte hardware prototipo que permita, junto a las herramientas de desarrollo como soItware de prueba, muestras gratuitas y demas ayudas que pueda proporcionar el Iabricante para implementar, y depurar la aplicacion Iinal. 3. Principales fabricantes de DSPs 1. Analog Device 2. Hitachi 3. Motorota 4. NEC 5. SGS-Thomson 6. Texas instruments 7. Zilog 4. FPGA (Field-programmable gate array) Fig 4. Altera FPGA with 20,000 cells. Disponible online: http://en.wikipedia.org/wiki/FPGA 5.1 Historia Las FPGAs nacieron de los dispositivos de logica programable compleja (CPLDs) de principios de los años 80 superandolos en varios aspectos, principalmente en el numero de compuertas; un CPLD contiene entre varios miles hasta diez mil compuertas logicas, mientras que una FPGA contiene desde diez mil hasta un millon de estas compuertas. Por esto la principal diIerencia entre un CPLD y una FPGA es la arquitectura. Un CPLD tiene una estructura de tipo restrictiva que consiste en una o mas sumas de vectores logicos programables que da como resultado una arquitectura de poca Ilexibilidad de diseño. La arquitectura a de las FPGAs es en cambio dominada por las interconexiones. Esto las hace ser mas Ilexibles (en terminos del rango de posibilidades de diseño que oIrecen) aunque su programacion es mas compleja. Las FPGAs comenzaron como competidoras de los CPLDs desempeñando tareas similares. Cuando su tamaño, capacidad y velocidad aumentaron, estas comenzaron a asumir el control de Iunciones mas grandes hasta lograr ahora que se consideren competidoras de los sistemas completos en chip. Ahora encuentran usos en cualquier 8 area o algoritmo en la que se pueda hacer uso del paralelismo masivo oIrecido por su arquitectura. 5.2 Arquitectura de una FPGA Internamente una FPGA es un arreglo de pequeños dispositivos logicos llamados CLBs, los cuales incorporan elementos hardware programables, dispositivos de memoria y estan organizados en Iilas y columnas. Tambien existen pequeños elementos que deIinen la Iorma en que esta trabajara (entrada, salida, entrada-salida). Se suelen llamar IOB. La tarea del programador es deIinir la Iuncion logica que realizara cada uno de los CLB, seleccionar el modo de trabajo de cada IOB e interconectarlos todos. Fig 5. Arquitectura de una FPGA. Disponible online: |3| El bloque logico tipico de una FPGA consiste en una tabla de operaciones de busqueda con cuatro entradas (LUT), y un Ilip-Ilop, segun lo demostrado en abajo. Iig 5. Logic block oI a FPGA. Disponible online: |2| El bloque logico tiene cuatro entradas para el LUT, una entrada de reloj y una salida, que puede ser tanto la salida registrada o sin registrar de la LUT. Puesto que las señales del reloj son normalmente transmitidas por redes transmisoras de proposito general en FPGAs comerciales, se consideran por separado de las otras señales. Para la arquitectura considerada, las localizaciones de los pines del bloque logico se demuestran abajo. 9 Iig. 6 Logic Block Pin Locations. Disponible online: |2| Cada entrada es accesible a partir de un lado del bloque, mientras que el pin de salida solo es accesible por dos lados. Cada pin de salida del bloque puede conectarse con cualquiera de los segmentos del cableado en los canales adyacentes. Las interconexiones se establecen mediante canales de ruta. Generalmente, las rutas de una FPGA no son segmentadas. Es decir, cada segmento del cableado atraviesa solamente un bloque logico antes de terminar en una caja de interruptor. Una caja de interruptor es la intercepcion de un canal vertical y horizontal. Para lograr velocidades de interconexion altas, se pueden hacer rutas mas largas, haciendo que estas volteen en los interruptores. Algunas arquitecturas de FPGAs utilizan lineas mas largas que atraviesen multiples bloques logicos. Fig.7 Unsegmented FPGA routing. Disponible online: |2| En esta arquitectura, cuando un alambre entra en una caja de interruptor, hay tres interruptores programables que permiten conectar con otros tres alambres en segmentos adyacentes del canal. El patron, o la topologia, de los interruptores usados en esta arquitectura es la topologia planar o basada de la caja de interruptor. En esta topologia de caja de interruptor, un alambre en la pista numero uno conecta solamente con los alambres en la pista numero uno de los segmentos adyacentes al canal. La Iigura abajo ilustra las conexiones en una caja del interruptor. 10 Fig 7. Switch box topology. Disponible online: |2| Las Iamilias modernas de FPGA amplian sus capacidades para incluir Iuncionalidades de nivel mas alto embebidas en el silicio lo que reduce el area requerida y aumenta la velocidad. Como ejemplos de estos encontramos multiplicadores, bloques genericos de DSP, procesadores embebidos, logica I/O de alta velocidad y memorias embebidas. . 5.3 Diseño y programación de una FPGA Para deIinir el comportamiento de una FPGA se debe proporcionar el lenguaje descriptivo del hardware (HDL) o el diseño esquematico. Usando una herramienta de diseño electronico de automatizacion, se genera una descripcion textual del circuito, la cual se hace corresponder a la arquitectura real de la FPGA mediante un proceso llamado lugar-y-ruta, realizado por el soItware de la FPGA. El usuario validara el mapa, pondra y encaminara resultados haciendo analisis del tiempo, simulaciones, y otras metodologias de veriIicacion. Una vez el proceso de diseño y de validacion se termine, se genera (a partir del soItware de la compañia Iabricante de la FPGA) un archivo binario que contiene la codiIicacion del sistema el cual se usa para reconIigurar el dispositivo FPGA. 11 Iig 8. Flujo de diseño. Disponible online: |3| Para simpliIicar el diseño de sistemas complejos en FPGAs, existen librerias de Iunciones y de circuitos complejos predeIinidos que han sido probados y optimizados para acelerar el proceso de diseño. Estos circuitos predeIinidos comunmente se llaman bloques de la caracteristica intelectual, y aunque son raramente libres se lanzan bajo licencias de propiedad de soItware. En una tentativa para reducir la complejidad de diseñar en HDL (lenguaje similar a los lenguajes ensamblador), ha sido elevar el nivel de abstraccion del diseño. Algunas compañias tales como cadencia, Synopsys y Celoxica estan promoviendo SystemC como manera de combinar lenguajes de alto nivel con modelos de concurrencia para permitir ciclos mas rapidos de diseño para FPGAs, de manera que sea posible proporcionar un Ilujo de datos graIico similar a un lenguaje de alto nivel de diseño como por ejemplo el paquete de diseño de Annapolis Micro Systems Inc. Otras tentativas se han basado en C estandar o C¹¹ (con librerias u otras extensiones que permiten la programacion paralela) y han dado como resultado herramientas como Catapulta C, e impulso C., 5.4 Tipos de tecnología básica de procesamiento SRAM - basado en tecnologia de memoria estatica. Es programable y reprogramable en el sistema. Requiere dispositivos externos. Generalmente CMOS. AntiIuse Programable solo una vez. CMOS. EPROM - Erasable Programmable Read-Only Memory technology. Programable generalmente solo una vez en produccion debido al empaquetamiento plastico. EEPROM - Electrically Erasable Programmable Read-Only Memory technology. Puede borrarse, inclusive en empaquetamientos plasticos. Algunas EEPROM pueden ser programadas en el sistema. CMOS. FLASH - Flash-erase EPROM technology. Puede borrarse, inclusive en empaquetamientos plasticos. Algunas FLASH pueden ser programadas en el sistema. Usualmente, una FLASH es mas pequeña que se equivalente EEPROM y es por lo tanto menos costosa de Iabricar. CMOS. Fuse - Programable solo una vez. Bipolar. 5.6 Algunos fabricantes de FPGAs y sus especialidades Desde Iinales del 2005, el mercado de FPGAs ha llegado a un estado donde hay dos Iabricantes importantes de FPGAs de proposito general y otros Iabricantes que se distinguen entre si oIreciendo capacidades unicas. Xilinx ha sido tradicionalmente el lider en FPGAs. 12 Altera es el Segundo Iabricante mas importante. Lattice Semiconductor Se ha enIocado en FPGAs de bajo costo, con caracteristicas optimizadas, basadas en tecnologia Ilash. Actel tiene antiIuse y FPGAs reprogramables basados en tecnologia Ilash. QuickLogic tiene productos antiIuse (programables solo una vez). Atmel es el unico Iabricante de dispositivos de reconIiguracion Iina. Es por esto que estos dispositivos son mas pequeños y costosos que el de otros Iabricantes. Achronix Semiconductor esta desarrollando FPGAs de alta velocidad de procesamiento. Su meta es conseguir velocidades alrededor de 1GHZ. 5.7 Algunos proveedores de herramientas para FPGA Accelchip Proporciona herramientas de diseño de alto nivel basadas en Matlab y Simulink. Aldec Proporciona herramientas de diseño y veriIicacion de FPGAs, incluyendo el popular simulador HDL. Celoxica Provee herramientas soItware como SystemC y Handel-C para veriIicacion y diseño en alto nivel. Lyrtech Provee hardware combinando tecnologias de FPGAs y DSPs asi como herramientas de diseño en alto nivel basadas en Matlab, Simulink, Xilinx Sysgen y Texas Instruments CCS. 5. APLICACIONES GENERALES DSPs Y FPGAs AREA DSPs FPGAs Telecomunicaciones - TeleIonos moviles (GSM) - Cancelacion Ecos - Modems alta velocidad - Interpolacion digital del habla - Routers - Modems - Redes inalambricas Instrumentación - Analizadores de espectro - Generadores de Iuncion - Osciloscopios digitales Análisis de voz y conversaciones - Compresion de voz - Reconocimiento de voz - Conversion de texto en voz y viceversa Procesamiento de imágenes - Animacion - Rotacion tridimensional - Compresion y transmision de imagenes - Convolucion (Bordes, Negativo, Filtrado). - Rotacion, traslacion redimensionamiento. - Reconstruccion 3-D. 13 - Procesamiento de imagenes sucesivas en tiempo real. Industria y control - Robotica - Regulacion velocidad motores - Servocontrol - Impresoras - Automatizacion. - Controlador de motores de cd y de pasos. Militar - Navegacion - Sonar - Procesado de imagenes - Radar - Guia de misiles - CriptograIia - Compresor/ descompresor de Datos - Satelite FedSat Medicina - Protesis y ayudas a deIicientes auditivos - Monitorizacion de pacientes - Equipos de ultrasonido - Monitor Ietal - Deteccion movimiento - Algoritmos geneticos. 6. APLICACIONES EN INGENIERIA BIOMEDICA 6.1. Prótesis auditivas digitales: Las tecnicas de procesamiento digital permiten Iiltrar el ruido y ampliIicar el sonido en Irecuencias especiIicas. La ultima generacion de protesis auditivas reconoce voz, lo que les permite resaltar las Irecuencias tonales Ioneticas y atenuar las que no lo son. Estas protesis diseñadas con procesadores digitales conceden caracteristicas superiores a la protesis analoga convencional. Fig 9. Protesis auditiva. Disponible online: |1| 6.2 Sistemas de Trascripción medica basada en computadora (CPR) La tecnologia del reconocimiento de voz es de enorme potencial para los sistemas de inIormacion medicos ya que permite al medico dictar a una PC o a dispositivo portatil el expediente medico de un paciente, visualizarlo en la pantalla del PC y archivarlo 14 electronicamente en bases de datos. Los CPR ideales Iomentan las ayudas integradas y el dictado via voz en el sitio de trabajo clinico. Hay actualmente cinco Iabricantes de sistemas de reconocimiento de voz: IBM, Philips, Kurzweil, Dragon Systems y Lernout y Hauspie. 6.3 Scanner de la huella plantar para diseño personalizado de calzado Consiste en un scanner plantar 3D que Iunciona con una camara industrial USB2.0. La camara graba marcas Iotometricas y las transIiere a un PC en aproximadamente 25 segundos, y una FPGA realiza el procesamiento de la imagen para obtener la representacion tridimensional del pie. El diseño de la FPGA se puede adaptar a los requerimientos especiIicos del usuario a partir de un soItware de desarrollo para conIigurar la grabacion de imagenes y su analisis. Fig 10. Foot scanner. Tomado de: ÌDS (Ìmaging development systems) Este dispositivo permite la prescripcion personalizada del calzado para personas con problemas congenitos en los pies o con deIormaciones por accidentes o enIermedades, es decir permite adaptar el calzado a las necesidades individuales de una persona de manera rapida y economica. Iig 11 . Foot scanner plataform. Tomado de: ÌDS (Ìmaging development systems) 15 6.4 identificadores Biométricos Son dispositivos USB de lectura de huellas dactilares que permiten la autenticacion biometrica para el acceso a PCs y a redes corporativas. Con ellos es posible lograr altos niveles de seguridad ya que reconocen a un individuo segun sus caracteristicas biometricas unicas, gracias a su tecnologia de sensado de pixeles activos y el almacenamiento para la comparacion de la inIormacion. El procesamiento de la señal biometrica lo hace una FPGA a partir de la inIormacion proveniente de los sensores. Su tecnologia esta basada en dispositivos de silicona y sensores capacitivos. Cada sensor (celula pexelada) contiene un circuito de retroalimentacion capacitivo sensible la presencia de la huella dactilar en la superIicie del lector y tiene su propio ampliIicador para lograr una relacion alta de señal ruido. Iig 12. TouchChip USB Iingerprint readers. Tomado de: UPEK, Inc. Iig 13. USB Iingerprint readers. Tomado de: UPEK, Inc. tabla 2. Features oI USB Iingerprint readers. Tomado de: UPEK, Inc. 16 6.5 Frame Grabbers for Standard Video Signals. Dispositivos para el procesamiento de señales de video estandar, tiene aplicaciones en el area de imagenes medicas como por ejemplo en ultrasonido y rayos X especialmente. Su principal caracteristica es que permite visualizar señales de video como imagenes 3D en vivo y en tiempo real en un monitor VGA o en la PC. Ademas es posible lograr el procesamiento de la imagen 3D y su almacenamiento. Por su amplio uso y desempeño, el SDK es el soItware de desarrollo de la tarjeta la que permite utilizar todos los atributos del hardware para el diseño. Fig 14. Adquisicion y procesamiento de imagines. Tomado de: IDS (Imaging development systems.) Fig 15. Frame Grabbers Ior Standard Video Signals. Tomado de: IDS (Imaging development systems). 17 BIBLIOGRAFIA |1| BRIZ DEL BLANCO, Fernando. Procesadores Digitales. Departamento de Ingenieria Electrica, Electronica, de Computadores y Sistemas. Disponible |online|: http://isa.uniovi.es/~Iernando/Programa¸II¸EUITI¸2003¸2004¸primer¸cuatrimestre¸ar chivos/Procesadores¸digitales.pdI |2| Field-programmable gate array. From Wikipedia, the Iree encyclopedia. . Disponible |online|: http://en.wikipedia.org/wiki/FPGA |3| Arquitectura de una FPGA. Disponible online: http://www.Idi.ucm.es/proIesor/ javier1/LTC/hwreconI¸extendido.pdI |4| BARRERO, Federico. TORAL, Sergio. RUIZ, Mariano. Procesadores digitales de señal de altas prestaciones de Texas instruments. Mc Graw Hill. España. 2005
Copyright © 2024 DOKUMEN.SITE Inc.