985 resultados para Field Programmable Gate Array (FPGA)


Relevância:

100.00% 100.00%

Publicador:

Resumo:

Floating-point computing with more than one TFLOP of peak performance is already a reality in recent Field-Programmable Gate Arrays (FPGA). General-Purpose Graphics Processing Units (GPGPU) and recent many-core CPUs have also taken advantage of the recent technological innovations in integrated circuit (IC) design and had also dramatically improved their peak performances. In this paper, we compare the trends of these computing architectures for high-performance computing and survey these platforms in the execution of algorithms belonging to different scientific application domains. Trends in peak performance, power consumption and sustained performances, for particular applications, show that FPGAs are increasing the gap to GPUs and many-core CPUs moving them away from high-performance computing with intensive floating-point calculations. FPGAs become competitive for custom floating-point or fixed-point representations, for smaller input sizes of certain algorithms, for combinational logic problems and parallel map-reduce problems. 2014 Technical University of Munich (TUM).

Relevância:

100.00% 100.00%

Publicador:

Resumo:

The new generations of SRAM-based FPGA (field programmable gate array) devices are the preferred choice for the implementation of reconfigurable computing platforms intended to accelerate processing in real-time systems. However, FPGA's vulnerability to hard and soft errors is a major weakness to robust configurable system design. In this paper, a novel built-in self-healing (BISH) methodology, based on run-time self-reconfiguration, is proposed. A soft microprocessor core implemented in the FPGA is responsible for the management and execution of all the BISH procedures. Fault detection and diagnosis is followed by repairing actions, taking advantage of the dynamic reconfiguration features offered by new FPGA families. Meanwhile, modular redundancy assures that the system still works correctly

Relevância:

100.00% 100.00%

Publicador:

Resumo:

Hoje em dia as fontes de alimentao possuem correo do fator de potncia, devido s diversas normas regulamentares existentes, que introduziram grandes restries no que respeita distoro harmnica (THD) e fator de potncia (FP). Este trabalho trata da anlise, desenvolvimento e implementao de um Pr-Regulador de fator de potncia com controlo digital. O controlo digital de conversores com recurso a processamento digital de sinal tem vindo a ser ao longo dos ltimos anos, objeto de investigao e desenvolvimento, estando constantemente a surgirem modificaes nas topologias existentes. Esta dissertao tem como objetivo estudar e implementar um Pr-Regulador Retificador Boost e o respetivo controlo digital. O controlo do conversor feito atravs da tcnica dos valores mdios instantneos da corrente de entrada, desenvolvido atravs da linguagem de descrio de hardware VHDL (VHSIC HDL Very High Speed Integrated Circuit Hardware Description Language) e implementado num dispositivo FPGA (Field Programmable Gate Array) Spartan-3E. Neste trabalho so apresentadas anlises matemticas, para a obteno das funes de transferncia pertinentes ao projeto dos controladores. Para efetuar este controlo necessrio adquirir os sinais da corrente de entrada, tenso de entrada e tenso de sada. O sinal resultante do mdulo de controlo um sinal de PWM com valor de fator de ciclo varivel ao longo do tempo. O projeto simulado e validado atravs da plataforma MatLab/Simulink e PSIM, onde so apresentados resultados para o regime permanente e para transitrios da carga e da tenso de alimentao. Finalmente, o Pr-Regulador Retificador Boost controlado de forma digital implementado em laboratrio. Os resultados experimentais so apresentados para validar a metodologia e o projeto desenvolvidos.

Relevância:

100.00% 100.00%

Publicador:

Resumo:

El crecimiento exponencial del trfico de datos es uno de los mayores desafos que enfrentan actualmente los sistemas de comunicaciones, debiendo los mismos ser capaces de soportar velocidades de procesamiento de datos cada vez mas altas. En particular, el consumo de potencia se ha transformado en uno de los parmetros de diseo ms crticos, generando la necesidad de investigar el uso de nuevas arquitecturas y algoritmos para el procesamiento digital de la informacin. Por otro lado, el anlisis y evaluacin de nuevas tcnicas de procesamiento presenta dificultades dadas las altas velocidades a las que deben operar, resultando frecuentemente ineficiente el uso de la simulacin basada en software como mtodo. En este contexto, el uso de electrnica programable ofrece una oportunidad a bajo costo donde no solo se evaluan nuevas tcnicas de diseo de alta velocidad sino tambin se valida su implementacin en desarrollos tecnolgicos. El presente proyecto tiene como objetivo principal el estudio y desarrollo de nuevas arquitecturas y algoritmos en electrnica programable para el procesamiento de datos a alta velocidad. El mtodo a utilizar ser la programacin en dispositivos FPGA (Field-Programmable Gate Array) que ofrecen una buena relacin costo-beneficio y gran flexibilidad para integrarse con otros dispositivos de comunicaciones. Para la etapas de diseo, simulacin y programacin se utilizaran herramientas CAD (Computer-Aided Design) orientadas a sistemas electrnicos digitales. El proyecto beneficiara a estudiantes de grado y postgrado de carreras afines a la informtica y las telecomunicaciones, contribuyendo al desarrollo de proyectos finales y tesis doctorales. Los resultados del proyecto sern publicados en conferencias y/o revistas nacionales e internacionales y divulgados a travs de charlas de difusin y/o encuentros. El proyecto se enmarca dentro de un rea de gran importancia para la Provincia de Crdoba, como lo es la informtica y las telecomunicaciones, y promete generar conocimiento de gran valor agregado que pueda ser transferido a empresas tecnolgicas de la Provincia de Crdoba a travs de consultorias o desarrollos de productos.

Relevância:

100.00% 100.00%

Publicador:

Resumo:

En dispositivos electrnicos de ltima generacin destinados a funciones de comunicacin o control automtico, los algoritmos de procesamiento digital de seales trasladados al hardware han ocupado un lugar fundamental. Es decir el estado de arte en el rea de las comunicaciones y control puede resumirse en algoritmos basados en procesamiento digital de seales. Las implementaciones digitales de estos algoritmos han sido estudiadas en reas de la informtica desde hace tiempo. Sin embargo, aunque el incremento en la complejidad de los algoritmos modernos permite alcanzar desempeos atractivos en aplicaciones especficas, a su vez impone restricciones en la velocidad de operacin que han motivado el diseo directamente en hardware de arquitecturas para alto rendimiento. En este contexto, los circuitos electrnicos basados en lgica programable, principalmente los basados en FPGA (Field-Programmable Gate Array), permiten obtener medidas de desempeo altamente confiables que proporcionan el acercamiento necesario hacia el diseo electrnico de circuitos para aplicaciones especficas ASIC-VLSI (Application Specific Integrated Circuit - Very Large Scale Integration). En este proyecto se analiza el diseo y la implementacin de aquitecturas electrnicas para el procesamiento digital de seales, con el objeto de obtener medidas reales sobre el comportamiento del canal inalmbrico y su influencia sobre la estimacin y el control de trayectoria en vehculos areos no tripulados (UAV, Unmanned Aerial Vehicle). Para esto se propone analizar un dispositivo hbrido basado en microcontroladores y circuitos FPGA y sobre este mismo dispositivo implementar mediante algoritmo un control de trayectoria que permita mantener un punto fijo en el centro del cuadro de una cmara de video a bordo de un UAV, que sea eficiente en trminos de velocidad de operacin, dimensiones y consumo de energa.

Relevância:

100.00% 100.00%

Publicador:

Resumo:

El avance en la potencia de cmputo en nuestros das viene dado por la paralelizacin del procesamiento, dadas las caractersticas que disponen las nuevas arquitecturas de hardware. Utilizar convenientemente este hardware impacta en la aceleracin de los algoritmos en ejecucin (programas). Sin embargo, convertir de forma adecuada el algoritmo en su forma paralela es complejo, y a su vez, esta forma, es especfica para cada tipo de hardware paralelo. En la actualidad los procesadores de uso general ms comunes son los multicore, procesadores paralelos, tambin denominados Symmetric Multi-Processors (SMP). Hoy en da es difcil hallar un procesador para computadoras de escritorio que no tengan algn tipo de paralelismo del caracterizado por los SMP, siendo la tendencia de desarrollo, que cada da nos encontremos con procesadores con mayor numero de cores disponibles. Por otro lado, los dispositivos de procesamiento de video (Graphics Processor Units - GPU), a su vez, han ido desarrollando su potencia de cmputo por medio de disponer de mltiples unidades de procesamiento dentro de su composicin electrnica, a tal punto que en la actualidad no es difcil encontrar placas de GPU con capacidad de 200 a 400 hilos de procesamiento paralelo. Estos procesadores son muy veloces y especficos para la tarea que fueron desarrollados, principalmente el procesamiento de video. Sin embargo, como este tipo de procesadores tiene muchos puntos en comn con el procesamiento cientfico, estos dispositivos han ido reorientndose con el nombre de General Processing Graphics Processor Unit (GPGPU). A diferencia de los procesadores SMP sealados anteriormente, las GPGPU no son de propsito general y tienen sus complicaciones para uso general debido al lmite en la cantidad de memoria que cada placa puede disponer y al tipo de procesamiento paralelo que debe realizar para poder ser productiva su utilizacin. Los dispositivos de lgica programable, FPGA, son dispositivos capaces de realizar grandes cantidades de operaciones en paralelo, por lo que pueden ser usados para la implementacin de algoritmos especficos, aprovechando el paralelismo que estas ofrecen. Su inconveniente viene derivado de la complejidad para la programacin y el testing del algoritmo instanciado en el dispositivo. Ante esta diversidad de procesadores paralelos, el objetivo de nuestro trabajo est enfocado en analizar las caractersticas especificas que cada uno de estos tienen, y su impacto en la estructura de los algoritmos para que su utilizacin pueda obtener rendimientos de procesamiento acordes al nmero de recursos utilizados y combinarlos de forma tal que su complementacin sea benfica. Especficamente, partiendo desde las caractersticas del hardware, determinar las propiedades que el algoritmo paralelo debe tener para poder ser acelerado. Las caractersticas de los algoritmos paralelos determinar a su vez cul de estos nuevos tipos de hardware son los mas adecuados para su instanciacin. En particular sern tenidos en cuenta el nivel de dependencia de datos, la necesidad de realizar sincronizaciones durante el procesamiento paralelo, el tamao de datos a procesar y la complejidad de la programacin paralela en cada tipo de hardware. Todays advances in high-performance computing are driven by parallel processing capabilities of available hardware architectures. These architectures enable the acceleration of algorithms when thes ealgorithms are properly parallelized and exploit the specific processing power of the underneath architecture. Most current processors are targeted for general pruposes and integrate several processor cores on a single chip, resulting in what is known as a Symmetric Multiprocessing (SMP) unit. Nowadays even desktop computers make use of multicore processors. Meanwhile, the industry trend is to increase the number of integrated rocessor cores as technology matures. On the other hand, Graphics Processor Units (GPU), originally designed to handle only video processing, have emerged as interesting alternatives to implement algorithm acceleration. Current available GPUs are able to implement from 200 to 400 threads for parallel processing. Scientific computing can be implemented in these hardware thanks to the programability of new GPUs that have been denoted as General Processing Graphics Processor Units (GPGPU).However, GPGPU offer little memory with respect to that available for general-prupose processors; thus, the implementation of algorithms need to be addressed carefully. Finally, Field Programmable Gate Arrays (FPGA) are programmable devices which can implement hardware logic with low latency, high parallelism and deep pipelines. Thes devices can be used to implement specific algorithms that need to run at very high speeds. However, their programmability is harder that software approaches and debugging is typically time-consuming. In this context where several alternatives for speeding up algorithms are available, our work aims at determining the main features of thes architectures and developing the required know-how to accelerate algorithm execution on them. We look at identifying those algorithms that may fit better on a given architecture as well as compleme

Relevância:

100.00% 100.00%

Publicador:

Resumo:

In the work eddy current sensors are described and evaluated. Theoretical part includes physical basics of the eddy currents, overview of available commercial products and technologies. Industrial sensors operation was assessed based on several working modes. Apart from this, the model was created in Matlab Simulink with Xilinx Blockset and then translated into a Xilinx ISE Design Suite compatible project. The performance of the resulting implementation was compared to the existing implementation in the Xilinx Spartan 3 FPGA board with the custom made sensor. Additionally, an introduction to FPGAs and VHDL is presented.

Relevância:

100.00% 100.00%

Publicador:

Resumo:

Os dispositivos analgicos programveis (FPAAs, do ingls, Field Programmable Analog Arrays), apesar de ainda no terem a mesma popularidade de seus pares digitais (FPGAs, do ingls, Field Programmable Gate Arrays), possuem uma gama de aplicaes bastante ampla, que vai desde o condicionamento de sinais em sistemas de instrumentao, at o processamento de sinais de radiofreqncia (RF) em telecomunicaes. Porm, ao mesmo tempo em que os FPAAs trouxeram um impressionante ganho na agilidade de concepo de circuitos analgicos, tambm trouxeram um conjunto de novos problemas relativos ao teste deste tipo de dispositivo. Os FPAAs podem ser divididos em duas partes fundamentais: seus blocos programveis bsicos (CABs, do ingls, Configurable Analog Blocks) e sua rede de interconexes. A rede de interconexes, por sua vez, pode ser dividida em duas partes: interconexes internas (locais e globais entre CABs) e interconexes externas (envolvendo clulas de I/O). Todas estas partes apresentam caractersticas estruturais e funcionais distintas, de forma que devem ser testadas separadamente, pois necessitam que se considerem modelos de falhas, configuraes e estmulos de teste especficos para assegurar uma boa taxa de deteco de defeitos. Como trabalhos anteriores j estudaram o teste dos CABs, o foco desta dissertao est direcionado ao desenvolvimento de metodologias que se propem a testar a rede de interconexes de FPAAs. Apesar das vrias diferenas entre as redes de interconexes de FPGAs e FPAAs, muitas tambm so as semelhanas entre elas, sendo, portanto, indiscutvel que o ponto de partida deste trabalho tenha que ser o estudo das muitas tcnicas propostas para o teste de interconexes em FPGAs, para posterior adaptao ao caso dos FPAAs. Alm disto, embora o seu foco no recaia sobre o teste de CABs, pretende-se utiliz-los como recursos internos do dispositivo passveis de gerar sinais e analisar respostas de teste, propondo uma abordagem de auto-teste integrado de interconexes que reduza o custo relativo ao equipamento externo de teste. Eventualmente, estes mesmos recursos podero tambm ser utilizados para diagnstico das partes defeituosas. Neste trabalho, utiliza-se como veculo de experimentao um dispositivo especfico (Anadigm AN10E40), mas pretende-se que as metodologias de teste propostas sejam abrangentes e possam ser facilmente adaptadas a outros FPAAs comerciais que apresentem redes de interconexo semelhantes.

Relevância:

100.00% 100.00%

Publicador:

Resumo:

RFID (Radio Frequency Identification) identifies object by using the radio frequency which is a non-contact automatic identification technique. This technology has shown its powerful practical value and potential in the field of manufacturing, retailing, logistics and hospital automation. Unfortunately, the key problem that impacts the application of RFID system is the security of the information. Recently, researchers have demonstrated solutions to security threats in RFID technology. Among these solutions are several key management protocols. This master dissertations presents a performance evaluation of Neural Cryptography and Diffie-Hellman protocols in RFID systems. For this, we measure the processing time inherent in these protocols. The tests was developed on FPGA (Field-Programmable Gate Array) platform with Nios IIr embedded processor. The research methodology is based on the aggregation of knowledge to development of new RFID systems through a comparative analysis between these two protocols. The main contributions of this work are: performance evaluation of protocols (Diffie-Hellman encryption and Neural) on embedded platform and a survey on RFID security threats. According to the results the Diffie-Hellman key agreement protocol is more suitable for RFID systems

Relevância:

100.00% 100.00%

Publicador:

Resumo:

This paper addresses the problem of processing biological data, such as cardiac beats in the audio and ultrasonic range, and on calculating wavelet coefficients in real time, with the processor clock running at a frequency of present application-specified integrated circuits and field programmable gate array. The parallel filter architecture for discrete wavelet transform (DWT) has been improved, calculating the wavelet coefficients in real time with hardware reduced up to 60%. The new architecture, which also processes inverse DWT, is implemented with the Radix-2 or the Booth-Wallace constant multipliers. One integrated circuit signal analyzer in the ultrasonic range, including series memory register banks, is presented. 2007 IEEE.

Relevância:

100.00% 100.00%

Publicador:

Resumo:

Patente de inveno de um mtodo para arquitetura de computador reconfigurvel e sujeita a constantes otimizaes que compreende uma arquitetura de computador implementada em FPGA (Field Programmable Gate Array).

Relevância:

100.00% 100.00%

Publicador:

Resumo:

En el mundo actual las aplicaciones basadas en sistemas biomtricos, es decir, aquellas que miden las seales elctricas de nuestro organismo, estn creciendo a un gran ritmo. Todos estos sistemas incorporan sensores biomdicos, que ayudan a los usuarios a controlar mejor diferentes aspectos de la rutina diaria, como podra ser llevar un seguimiento detallado de una rutina deportiva, o de la calidad de los alimentos que ingerimos. Entre estos sistemas biomtricos, los que se basan en la interpretacin de las seales cerebrales, mediante ensayos de electroencefalografa o EEG estn cogiendo cada vez ms fuerza para el futuro, aunque estn todava en una situacin bastante incipiente, debido a la elevada complejidad del cerebro humano, muy desconocido para los cientficos hasta el siglo XXI. Por estas razones, los dispositivos que utilizan la interfaz cerebro-mquina, tambin conocida como BCI (Brain Computer Interface), estn cogiendo cada vez ms popularidad. El funcionamiento de un sistema BCI consiste en la captacin de las ondas cerebrales de un sujeto para despus procesarlas e intentar obtener una representacin de una accin o de un pensamiento del individuo. Estos pensamientos, correctamente interpretados, son posteriormente usados para llevar a cabo una accin. Ejemplos de aplicacin de sistemas BCI podran ser mover el motor de una silla de ruedas elctrica cuando el sujeto realice, por ejemplo, la accin de cerrar un puo, o abrir la cerradura de tu propia casa usando un patrn cerebral propio. Los sistemas de procesamiento de datos estn evolucionando muy rpido con el paso del tiempo. Los principales motivos son la alta velocidad de procesamiento y el bajo consumo energtico de las FPGAs (Field Programmable Gate Array). Adems, las FPGAs cuentan con una arquitectura reconfigurable, lo que las hace ms verstiles y potentes que otras unidades de procesamiento como las CPUs o las GPUs.En el CEI (Centro de Electrnica Industrial), donde se lleva a cabo este TFG, se dispone de experiencia en el diseo de sistemas reconfigurables en FPGAs. Este TFG es el segundo de una lnea de proyectos en la cual se busca obtener un sistema capaz de procesar correctamente seales cerebrales, para llegar a un patrn comn que nos permita actuar en consecuencia. Ms concretamente, se busca detectar cuando una persona est quedndose dormida a travs de la captacin de unas ondas cerebrales, conocidas como ondas alfa, cuya frecuencia est acotada entre los 8 y los 13 Hz. Estas ondas, que aparecen cuando cerramos los ojos y dejamos la mente en blanco, representan un estado de relajacin mental. Por tanto, este proyecto comienza como inicio de un sistema global de BCI, el cual servir como primera toma de contacto con el procesamiento de las ondas cerebrales, para el posterior uso de hardware reconfigurable sobre el cual se implementarn los algoritmos evolutivos. Por ello se vuelve necesario desarrollar un sistema de procesamiento de datos en una FPGA. Estos datos se procesan siguiendo la metodologa de procesamiento digital de seales, y en este caso se realiza un anlisis de la frecuencia utilizando la transformada rpida de Fourier, o FFT. Una vez desarrollado el sistema de procesamiento de los datos, se integra con otro sistema que se encarga de captar los datos recogidos por un ADC (Analog to Digital Converter), conocido como ADS1299. Este ADC est especialmente diseado para captar potenciales del cerebro humano. De esta forma, el sistema final capta los datos mediante el ADS1299, y los enva a la FPGA que se encarga de procesarlos. La interpretacin es realizada por los usuarios que analizan posteriormente los datos procesados. Para el desarrollo del sistema de procesamiento de los datos, se dispone primariamente de dos plataformas de estudio, a partir de las cuales se captarn los datos para despus realizar el procesamiento: 1. La primera consiste en una herramienta comercial desarrollada y distribuida por OpenBCI, proyecto que se dedica a la venta de hardware para la realizacin de EEG, as como otros ensayos. Esta herramienta est formada por un microprocesador, un mdulo de memoria SD para el almacenamiento de datos, y un mdulo de comunicacin inalmbrica que transmite los datos por Bluetooth. Adems cuenta con el mencionado ADC ADS1299. Esta plataforma ofrece una interfaz grfica que sirve para realizar la investigacin previa al diseo del sistema de procesamiento, al permitir tener una primera toma de contacto con el sistema. 2. La segunda plataforma consiste en un kit de evaluacin para el ADS1299, desde la cual se pueden acceder a los diferentes puertos de control a travs de los pines de comunicacin del ADC. Esta plataforma se conectar con la FPGA en el sistema integrado. Para entender cmo funcionan las ondas ms simples del cerebro, as como saber cules son los requisitos mnimos en el anlisis de ondas EEG se realizaron diferentes consultas con el Dr Ceferino Maestu, neurofisilogo del Centro de Tecnologa Biomdica (CTB) de la UPM. l se encarg de introducirnos en los distintos procedimientos en el anlisis de ondas en electroencefalogramas, as como la forma en que se deben de colocar los electrodos en el crneo. Para terminar con la investigacin previa, se realiza en MATLAB un primer modelo de procesamiento de los datos. Una caracterstica muy importante de las ondas cerebrales es la aleatoriedad de las mismas, de forma que el anlisis en el dominio del tiempo se vuelve muy complejo. Por ello, el paso ms importante en el procesamiento de los datos es el paso del dominio temporal al dominio de la frecuencia, mediante la aplicacin de la transformada rpida de Fourier o FFT (Fast Fourier Transform), donde se pueden analizar con mayor precisin los datos recogidos. El modelo desarrollado en MATLAB se utiliza para obtener los primeros resultados del sistema de procesamiento, el cual sigue los siguientes pasos. 1. Se captan los datos desde los electrodos y se escriben en una tabla de datos. 2. Se leen los datos de la tabla. 3. Se elige el tamao temporal de la muestra a procesar. 4. Se aplica una ventana para evitar las discontinuidades al principio y al final del bloque analizado. 5. Se completa la muestra a convertir con con zero-padding en el dominio del tiempo. 6. Se aplica la FFT al bloque analizado con ventana y zero-padding. 7. Los resultados se llevan a una grfica para ser analizados. Llegados a este punto, se observa que la captacin de ondas alfas resulta muy viable. Aunque es cierto que se presentan ciertos problemas a la hora de interpretar los datos debido a la baja resolucin temporal de la plataforma de OpenBCI, este es un problema que se soluciona en el modelo desarrollado, al permitir el kit de evaluacin (sistema de captacin de datos) actuar sobre la velocidad de captacin de los datos, es decir la frecuencia de muestreo, lo que afectar directamente a esta precisin. Una vez llevado a cabo el primer procesamiento y su posterior anlisis de los resultados obtenidos, se procede a realizar un modelo en Hardware que siga los mismos pasos que el desarrollado en MATLAB, en la medida que esto sea til y viable. Para ello se utiliza el programa XPS (Xilinx Platform Studio) contenido en la herramienta EDK (Embedded Development Kit), que nos permite disear un sistema embebido. Este sistema cuenta con: Un microprocesador de tipo soft-core llamado MicroBlaze, que se encarga de gestionar y controlar todo el sistema; Un bloque FFT que se encarga de realizar la transformada rpida Fourier; Cuatro bloques de memoria BRAM, donde se almacenan los datos de entrada y salida del bloque FFT y un multiplicador para aplicar la ventana a los datos de entrada al bloque FFT; Un bus PLB, que consiste en un bus de control que se encarga de comunicar el MicroBlaze con los diferentes elementos del sistema. Tras el diseo Hardware se procede al diseo Software utilizando la herramienta SDK(Software Development Kit).Tambin en esta etapa se integra el sistema de captacin de datos, el cual se controla mayoritariamente desde el MicroBlaze. Por tanto, desde este entorno se programa el MicroBlaze para gestionar el Hardware que se ha generado. A travs del Software se gestiona la comunicacin entre ambos sistemas, el de captacin y el de procesamiento de los datos. Tambin se realiza la carga de los datos de la ventana a aplicar en la memoria correspondiente. En las primeras etapas de desarrollo del sistema, se comienza con el testeo del bloque FFT, para poder comprobar el funcionamiento del mismo en Hardware. Para este primer ensayo, se carga en la BRAM los datos de entrada al bloque FFT y en otra BRAM los datos de la ventana aplicada. Los datos procesados saldrn a dos BRAM, una para almacenar los valores reales de la transformada y otra para los imaginarios. Tras comprobar el correcto funcionamiento del bloque FFT, se integra junto al sistema de adquisicin de datos. Posteriormente se procede a realizar un ensayo de EEG real, para captar ondas alfa. Por otro lado, y para validar el uso de las FPGAs como unidades ideales de procesamiento, se realiza una medicin del tiempo que tarda el bloque FFT en realizar la transformada. Este tiempo se compara con el tiempo que tarda MATLAB en realizar la misma transformada a los mismos datos. Esto significa que el sistema desarrollado en Hardware realiza la transformada rpida de Fourier 27 veces ms rpido que lo que tarda MATLAB, por lo que se puede ver aqu la gran ventaja competitiva del Hardware en lo que a tiempos de ejecucin se refiere. En lo que al aspecto didctico se refiere, este TFG engloba diferentes campos. En el campo de la electrnica: Se han mejorado los conocimientos en MATLAB, as como diferentes herramientas que ofrece como FDATool (Filter Design Analysis Tool). Se han adquirido conocimientos de tcnicas de procesado de seal, y en particular, de anlisis espectral. Se han mejorado los conocimientos en VHDL, as como su uso en el entorno ISE de Xilinx. Se han reforzado los conocimientos en C mediante la programacin del MicroBlaze para el control del sistema. Se ha aprendido a crear sistemas embebidos usando el entorno de desarrollo de Xilinx usando la herramienta EDK (Embedded Development Kit). En el campo de la neurologa, se ha aprendido a realizar ensayos EEG, as como a analizar e interpretar los resultados mostrados en el mismo. En cuanto al impacto social, los sistemas BCI afectan a muchos sectores, donde destaca el volumen de personas con discapacidades fsicas, para los cuales, este sistema implica una oportunidad de aumentar su autonoma en el da a da. Tambin otro sector importante es el sector de la investigacin mdica, donde los sistemas BCIs son aplicables en muchas aplicaciones como, por ejemplo, la deteccin y estudio de enfermedades cognitivas.

Relevância:

100.00% 100.00%

Publicador:

Resumo:

En este Proyecto Fin de Grado se ha realizado un estudio de cmo generar, a partir de modelos de flujo de datos en RVC-CAL (Reconfigurable Video Coding CAL Actor Language), modelos VHDL (Versatile Hardware Description Language) mediante Vivado HLS (Vivado High Level Synthesis), incluida en las herramientas disponibles en Vivado de Xilinx. Una vez conseguido el modelo VHDL resultante, la intencin es que mediante las herramientas de Xilinx se programe en una FPGA (Field Programmable Gate Array) o el dispositivo Zynq tambin desarrollado por Xilinx. RVC-CAL es un lenguaje de flujo de datos que describe la funcionalidad de bloques funcionales, denominados actores. Las funcionalidades que desarrolla un actor se definen como acciones, las cuales pueden ser diferentes en un mismo actor. Los actores pueden comunicarse entre s y formar una red de actores o network. Con Vivado HLS podemos obtener un diseo VHDL a partir de un modelo en lenguaje C. Por lo que la generacin de modelos en VHDL a partir de otros en RVC-CAL, requiere una fase previa en la que los modelos en RVC-CAL sern compilados para conseguir su equivalente en lenguaje C. El compilador ORCC (Open RVC-CAL Compiler) es la herramienta que nos permite lograr diseos en lenguaje C partiendo de modelos en RVC-CAL. ORCC no crea directamente el cdigo ejecutable, sino que genera un cdigo fuente disponible para ser compilado por otra herramienta, en el caso de este proyecto, el compilador GCC (Gnu C Compiler) de Linux. En resumen en este proyecto nos encontramos con tres puntos de estudio bien diferenciados, los cuales son: 1. Partimos de modelos de flujo de datos en RVC-CAL, los cuales son compilados por ORCC para alcanzar su traduccin en lenguaje C. 2. Una vez conseguidos los diseos equivalentes en lenguaje C, son sintetizados en Vivado HLS para conseguir los modelos en VHDL. 3. Los modelos VHDL resultantes serian manipulados por las herramientas de Xilinx para producir el bitstream que sea programado en una FPGA o en el dispositivo Zynq. En el estudio del segundo punto, nos encontramos con una serie de elementos conflictivos que afectan a la sntesis en Vivado HLS de los diseos en lenguaje C generados por ORCC. Estos elementos estn relacionados con la manera que se encuentra estructurada la especificacin en C generada por ORCC y que Vivado HLS no puede soportar en determinados momentos de la sntesis. De esta manera se ha propuesto una transformacin manual de los diseos generados por ORCC que afecto lo menos posible a los modelos originales para poder realizar la sntesis con Vivado HLS y crear el fichero VHDL correcto. De esta forma este documento se estructura siguiendo el modelo de un trabajo de investigacin. En primer lugar, se exponen las motivaciones y objetivos que apoyan y se esperan lograr en este trabajo. Seguidamente, se pone de manifiesto un anlisis del estado del arte de los elementos necesarios para el desarrollo del mismo, proporcionando los conceptos bsicos para la correcta comprensin y estudio del documento. Se realiza una descripcin de los lenguajes RVC-CAL y VHDL, adems de una introduccin de las herramientas ORCC y Vivado, analizando las bondades y caractersticas principales de ambas. Una vez conocido el comportamiento de ambas herramientas, se describen las soluciones desarrolladas en nuestro estudio de la sntesis de modelos en RVC-CAL, ponindose de manifiesto los puntos conflictivos anteriormente sealados que Vivado HLS no puede soportar en la sntesis de los diseos en lenguaje C generados por el compilador ORCC. A continuacin se presentan las soluciones propuestas a estos errores acontecidos durante la sntesis, con las cuales se pretende alcanzar una especificacin en C ms ptima para una correcta sntesis en Vivado HLS y alcanzar de esta forma los modelos VHDL adecuados. Por ltimo, como resultado final de este trabajo se extraen un conjunto de conclusiones sobre todos los anlisis y desarrollos acontecidos en el mismo. Al mismo tiempo se proponen una serie de lneas futuras de trabajo con las que se podra continuar el estudio y completar la investigacin desarrollada en este documento. ABSTRACT. In this Project it has made a study of how to generate, from data flow models in RVC-CAL (Reconfigurable Video Coding - Actor CAL Language), VHDL models (Versatile Hardware Description Language) by Vivado HLS (Vivado High Level Synthesis), included in the tools available in Vivado of Xilinx. Once achieved the resulting VHDL model, the intention is that by the Xilinx tools programmed in FPGA or Zynq device also developed by Xilinx. RVC-CAL is a dataflow language that describes the functionality of functional blocks, called actors. The functionalities developed by an actor are defined as actions, which may be different in the same actor. Actors can communicate with each other and form a network of actors. With Vivado HLS we can get a VHDL design from a model in C. So the generation of models in VHDL from others in RVC-CAL requires a preliminary phase in which the models RVC-CAL will be compiled to get its equivalent in C. The compiler ORCC (Open RVC-CAL Compiler) is the tool that allows us to achieve designs in C language models based on RVC-CAL. ORCC not directly create the executable code but generates an available source code to be compiled by another tool, in the case of this project, the GCC compiler (GNU C Compiler) of Linux. In short, in this project we find three well-defined points of study, which are: 1. We start from data flow models in RVC-CAL, which are compiled by ORCC to achieve its translation in C. 2. Once you realize the equivalent designs in C, they are synthesized in Vivado HLS for VHDL models. 3. The resulting models VHDL would be manipulated by Xilinx tools to produce the bitstream that is programmed into an FPGA or Zynq device. In the study of the second point, we find a number of conflicting elements that affect the synthesis Vivado HLS designs in C generated by ORCC. These elements are related to the way it is structured specification in C generated ORCC and Vivado HLS cannot hold at certain times of the synthesis. Thus it has proposed a "manual" transformation of designs generated by ORCC that affected as little as possible to the original in order to perform the synthesis Vivado HLS and create the correct file VHDL models. Thus this document is structured along the lines of a research. First, the motivations and objectives that support and hope to reach in this work are presented. Then it shows an analysis the state of the art of the elements necessary for its development, providing the basics for a correct understanding and study of the document. A description of the RVC-CAL and VHDL languages is made, in addition an introduction of the ORCC and Vivado tools, analyzing the advantages and main features of both. Once you know the behavior of both tools, the solutions developed in our study of the synthesis of RVC-CAL models, introducing the conflicting points mentioned above are described that Vivado HLS cannot stand in the synthesis of design in C language generated by ORCC compiler. Below the proposed solutions to these errors occurred during synthesis, with which it is intended to achieve optimum C specification for proper synthesis Vivado HLS and thus create the appropriate VHDL models are presented. Finally, as the end result of this work a set of conclusions on all analyzes and developments occurred in the same are removed. At the same time a series of future lines of work which could continue to study and complete the research developed in this document are proposed.