Person:
González Calvo, Carlos

Loading...
Profile Picture
First Name
Carlos
Last Name
González Calvo
Affiliation
Universidad Complutense de Madrid
Faculty / Institute
Ciencias Físicas
Department
Arquitectura de Computadores y Automática
Area
Arquitectura y Tecnología de Computadores
Identifiers
UCM identifierDialnet IDGoogle Scholar ID

Search Results

Now showing 1 - 10 of 10
  • Publication
    Hyperspectral Image Compression Using Vector Quantization, PCA and JPEG2000
    (MDPI, 2018-06-08) Báscones García, Daniel; González Calvo, Carlos; Mozos Muñoz, Daniel
    Compression of hyperspectral imagery increases the efficiency of image storage and transmission. It is especially useful to alleviate congestion in the downlinks of planes and satellites, where these images are usually taken from. A novel compression algorithm is presented here. It first spectrally decorrelates the image using Vector Quantization and Principal Component Analysis (PCA), and then applies JPEG2000 to the Principal Components (PCs) exploiting spatial correlations for compression. We take advantage of the fact that dimensionality reduction preserves more information in the first components, allocating more depth to the first PCs. We optimize the selection of parameters by maximizing the distortion-ratio performance across the test images. An increase of 1 to 3 dB in Signal Noise Ratio (SNR) for the same compression ratio is found over just using PCA + JPEG2000, while also speeding up compression and decompression by more than 10%. A formula is proposed which determines the configuration of the algorithm, obtaining results that range from heavily compressed-low SNR images to low compressed-near lossless ones.
  • Publication
    Diseño y desarrollo de una placa de periféricos no convencionales para incentivar el aprendizaje autónomo sobre sistemas empotrados basados en FPGA y SoC ARM
    (2015-02-11) Fabero Jiménez, Juan Carlos; Mendías Cuadros, José Manuel; Mecha López, Hortensia; González Calvo, Carlos; Clemente Barreira, Juan Antonio
    Se plantea la adaptación y ampliación de la placa de periféricos desarrollada el curso anterior para su uso en otras asignaturas impartidas en nuestra Facultad, como son "Sistemas Empotrados Distribuidos" y "Programación de Sistemas y Dispositivos". En estas nuevas asignaturas se adopta el uso de microcontroladores basados en arquitectura ARM, por lo que se hace necesaria una adaptación de los controladores para poder emplear los periféricos que incorpora la placa. Asimismo, se ha planeado la ampliación de la placa de expansión para que incorpore, de manera integrada, los sensores analógicos y el motor paso a paso, así como nuevos dispositivos (detector de proximidad por ultrasonidos, por ejemplo) y otros controlados mediante el bus I2C, actualmente muy utilizado en la industria. Esta placa expandida permitirá generar un entorno adecuado para la programación de los distintos dispositivos de entrada/salida que pueden formar parte de un sistema empotrado, como los sensores y actuadores antes mencionados que, al ser dispositivos no convencionales, atraerán de manera especial la curiosidad del alumno.
  • Publication
    A Task-Graph Execution Manager for Reconfigurable Multi-tasking Systems
    (Elsevier, 2010-03) Clemente Barreira, Juan Antonio; González Calvo, Carlos; Resano, Javier; Mozos Muñoz, Daniel
    Reconfigurable hardware can be used to build multi tasking systems that dynamically adapt themselves to the requirements of the running applications. This is especially useful in embedded systems, since the available resources are very limited and the reconfigurable hardware can be reused for different applications. In these systems computations are frequently represented as task graphs that are executed taking into account their internal dependencies and the task schedule. The management of the task graph execution is critical for the system performance. In this regard, we have developed two dif erent versions, a software module and a hardware architecture, of a generic task-graph execution manager for reconfigurable multi-tasking systems. The second version reduces the run-time management overheads by almost two orders of magnitude. Hence it is especially suitable for systems with exigent timing constraints. Both versions include specific support to optimize the reconfiguration process.
  • Publication
    Estudio de la influencia del uso de entrenadores digitales portátiles para introducir a los estudiantes en el mundo y conocimiento de la electrónica digital, que facilite e incentive el aprendizaje autónomo del alumno
    (2021-06-22) González Calvo, Carlos; Báscones García, Daniel; Bernabé García, Sergio; Mozos Muñoz, Daniel; Mecha López, Hortensia; Mendías Cuadros, José Manuel
    En la Facultad de Informática se imparte, en primer curso, la asignatura de Fundamentos de Computadores I, común a todos los Grados que se imparten en dicha Facultad y que cuenta con más de 500 alumnos. Impartida durante el primer cuatrimestre, hay una parte práctica consistente en el diseño digital, para lo que se utilizan entrenadores digitales fijos, de alto coste, disponibles en los laboratorios. Esto conlleva a que los alumnos únicamente pueden desarrollar sus prácticas en dichos laboratorios, la mayor parte del tiempo ocupados por otros grupos o prácticas de otras asignaturas. Asimismo, el curso que viene debido a la pandemia generada a raíz del COVID-19 los accesos a los laboratorios estarán mucho más restringidos. Además, las primeras semanas de curso los laboratorios se encuentran cerrados por mantenimiento y, por lo tanto, los alumnos acuden a la primera práctica sin haber podido comprender ni el entorno de trabajo ni el funcionamiento de los diferentes circuitos integrados. Tras haber desarrollado un entrenador digital portátil en el proyecto anterior, el objetivo global es el estudio de la influencia de la introducción del uso de un entrenador digital portátil, que se entregase individualmente a los alumnos para que realicen sus diseños digitales en lugar de en los entrenadores del laboratorio.
  • Publication
    A Hardware Implementation of a Run-Time Scheduler for Reconfigurable Systems
    (IEEE, 2011-07) Clemente Barreira, Juan Antonio; Resano, Javier; González Calvo, Carlos; Mozos Muñoz, Daniel
    New generation embedded systems demand high performance, efficiency and flexibility. Reconfigurable hardware can provide all these features. However the costly reconfiguration process and the lack of management support have prevented a broader use of these resources. To solve these issues we have developed a scheduler that deals with task-graphs at run-time, steering its execution in the reconfigurable resources while carrying out both prefetch and replacement techniques that cooperate to hide most of the reconfiguration delays. In our scheduling environment task-graphs are analyzed at design-time to extract useful information. This information is used at run-time to obtain near-optimal schedules, escaping from local-optimum decisions, while only carrying out simple computations. Moreover, we have developed a hardware implementation of the scheduler that applies all the optimization techniques while introducing a delay of only a few clock cycles. In the experiments our scheduler clearly outperforms conventional run-time schedulers based on As-Soon-As-Possible techniques. In addition, our replacement policy, specially designed for reconfigurable systems, achieves almost optimal results both regarding reuse and performance.
  • Publication
    Procesamiento a bordo de imágenes hiperespectrales de la superficie terrestre mediante hardware reconfigurable
    (Universidad Complutense de Madrid, 2012-07-05) González Calvo, Carlos; Resano Ezcaray, Javier; Mozos Muñoz, Daniel; Plaza Miguel, Antonio
    El análisis de imágenes hiperespectrales en observación remota de la Tierra constituye una línea de investigación muy activa, con numerosas contribuciones en la literatura científica reciente. Debido a la resolución espacial disponible en los sensores de observación remota de la Tierra y a la forma en que se presentan los materiales en la naturaleza, la mayor parte de los píxeles registrados por el sensor constituyen una mezcla de diferentes sustancias puras a nivel subpíxel. Para solucionar este problema, una de las técnicas más ampliamente utilizadas es el desmezclado espectral, que comprende dos etapas: 1) extracción de firmas espectrales puras (endmembers), y 2) estimación de la abundancia de dichos endmembers a nivel subpíxel. Ambas etapas son muy costosas desde el punto de vista computacional, lo cual supone un importante inconveniente en aplicaciones que requieren una respuesta en tiempo real, tales como monitorización y seguimiento de incendios, prevención y seguimiento de desastres naturales, vertidos químicos y otros tipos de contaminación ambiental, etc. En este trabajo de Tesis Doctoral, se ha diseñado, implementado y validado la cadena completa de desmezclado espectral para el procesamiento a bordo de imágenes hiperespectrales de la superficie terrestre mediante hardware reconfigurable. El diseño propuesto en este trabajo ha sido desarrollado en plataformas reconfigurables tipo Field Programmable Gate Array (FPGA) utilizando el lenguaje VHDL para su especificación. La implementación propuesta proporciona resultados muy prometedores, tanto desde el punto de vista de su precisión a la hora de identificar endmembers y calcular su abundancia, como desde el punto de vista del rendimiento obtenido, proporcionando factores de aceleración (speedups) que nos permiten dar una respuesta en tiempo real. Estos resultados suponen un incremento muy notable del rendimiento computacional del algoritmo con respecto a su ejecución serie en un PC de última generación.[ABSTRACT] Remotely sensed hyperspectral imaging is a very active area of research, with numerous contributions in recent scientific literature. Due to the available spatial resolution of the sensors in remote sensing of the Earth and how the materials appear in nature, most of the pixels collected by hyperspectral imaging instruments are in fact a mixture of different underlying substances. To solve this problem, one of the most widely used approaches for analyzing hyperspectral images is spectral unmixing, which comprises two stages: 1) extraction of pure spectral signatures (endmembers), and 2) estimation of endmember fractional abundances at sub–pixel level. Both stages are computationally complex, which is a serious drawback in applications which require a response in near real–time, such as forest fire monitoring and tracking, disaster management and prevention, oil spill detection, etc. In this Thesis work, the complete chain of spectral unmixing has been designed, implemented and validated to process onboard hyperspectral images of the earth’s surface using reconfigurable hardware. The design proposed in this work has been developed in reconfigurable platforms like Field Programmable Gate Arrays (FPGAs) using the VHDL language for its specification. Our proposed implentation exhibits very promising results in terms of endmember extraction and fractial abundances accuracy and performance, with speedups that allow us to respond in near real–time. This results represents a tremendous increase of performance with regards to the serial version of the same algorithm, implemented in a latest-generation desktop PC.
  • Publication
    Un gestor de ejecución de grafos de tareas para sistemas multitarea dinámicamente reconfigurables
    (2011) González Calvo, Carlos; Resano Ezcaray, Jesús Javier
    El HW reconfigurable se puede utilizar para construir un sistema multitarea en el que las tareas puedan asignarse en tiempo de ejecución a los recursos reconfigurables según las necesidades de las aplicaciones. En estos sistemas, las tareas se representan normalmente como grafos de subtareas acíclicos, donde una subtarea es la unidad de planificación. Normalmente, un procesador empotrado controla la ejecución de este tipo de sistemas trabajando con estructuras de datos complejas, como grafos o listas enlazadas, cuyo manejo a menudo genera retardos en la ejecución. Además, las comunicaciones HW/SW son a menudo un cuello de botella del sistema. Por tanto resulta muy interesante reducir tanto los cálculos que realiza el procesador como las comunicaciones. Para lograr este objetivo se ha desarrollado un gestor HW que controla la ejecución de grafos de subtareas en un conjunto de unidades reconfigurables. Este gestor recibe como entrada los grafos junto con una planificación asociada a cada subtarea y garantiza su correcta ejecución sin necesidad de ninguna otra intervención por parte del procesador. Además, incluye mecanismos para optimizar la gestión de las reconfiguraciones reduciendo las penalizaciones que generan en tiempo de ejecución. [ABSTRACT] Reconfigurable HW can be used to build a hardware multitasking system where tasks can be assigned to the reconfigurable HW at run-time according to the requirements of the running applications. Normally the execution in this kind of systems is controlled by an embedded processor. In these systems tasks are frequently represented as acyclic subtask graphs, where a subtask is the basic scheduling unit that can be assigned to a reconfigurable HW. In order to control the execution of these tasks, the processor must manage at run-time complex data structures, like graphs or linked list, which may generate significant execution-time penalties. In addition, HW/SW communications are frequently a system bottleneck. Hence, it is very interesting to find a way to reduce the run-time SW computations and the HW/SW communications. To this end I have developed a HW execution manager that controls the execution of subtask graphs over a set of reconfigurable units. This manager receives as input a subtask graph coupled to a subtask schedule, and guarantees its proper execution. In addition it includes support to reduce the execution-time overhead due to reconfigurations. With this HW support the execution of task graphs can be managed efficiently generating only very small run-time penalties.
  • Publication
    Parallel Implementation of the CCSDS 1.2.3 Standard for Hyperspectral Lossless Compression
    (MDPI, 2017-09-21) Báscones García, Daniel; González Calvo, Carlos; Mozos Muñoz, Daniel
    Hyperspectral imaging is a technology which, by sensing hundreds of wavelengths per pixel, enables fine studies of the captured objects. This produces great amounts of data that require equally big storage, and compression with algorithms such as the Consultative Committee for Space Data Systems (CCSDS) 1.2.3 standard is a must. However, the speed of this lossless compression algorithm is not enough in some real-time scenarios if we use a single-core processor. This is where architectures such as Field Programmable Gate Arrays (FPGAs) and Graphics Processing Units (GPUs) can shine best. In this paper, we present both FPGA and OpenCL implementations of the CCSDS 1.2.3 algorithm. The proposed paralellization method has been implemented on the Virtex-7 XC7VX690T, Virtex-5 XQR5VFX130 and Virtex-4 XC2VFX60 FPGAs, and on the GT440 and GT610 GPUs, and tested using hyperspectral data from NASA’s Airborne Visible Infra-Red Imaging Spectrometer (AVIRIS). Both approaches fulfill our real-time requirements. This paper attempts to shed some light on the comparison between both approaches, including other works from existing literature, explaining the trade-offs of each one.
  • Publication
    Desarrollo de un entrenador digital portátil de bajo coste para introducir a los estudiantes en el mundo y conocimiento de la electrónica digital, que facilite e incentive el aprendizaje autónomo del alumno
    (2020-10-02) González Calvo, Carlos; Bernabé García, Sergio; Mozos Muñoz, Daniel; Mecha López, Hortensia; Mendías Cuadros, José Manuel
    Actualmente, las prácticas de laboratorio de diseño digital de la asignatura de Fundamentos de Computadores (que cuenta con más de 500 estudiantes), se realizan sobre entrenadores digitales fijos de alto coste. Esto conlleva a que los estudiantes únicamente pueden desarrollar sus prácticas en dichos laboratorios, la mayor parte del tiempo ocupados por otros grupos o prácticas de otras asignaturas. El objetivo global de este Proyecto Innova-Docencia sería el desarrollo de un entrenador digital portátil, de bajo coste, que se entregase individualmente a los estudiantes para que realicen sus diseños digitales en lugar de en los entrenadores del laboratorio. De esta manera se pone el foco en el estudiante, facilitando e incentivando el aprendizaje autónomo del alumno.
  • Publication
    Implementación HW de un gestor de ejecución para sistemas dinámicamente reconfigurables
    (2007) Clemente Barreira, Juan Antonio; García Casado, José Luis; González Calvo, Carlos; Resano Ezcaray, Jesús Javier
    El HW reconfigurable se puede utilizar para construir un sistema multitarea en el que las tareas puedan asignarse en tiempo de ejecución a los recursos reconfigurables según las necesidades de las aplicaciones. En estos sistemas, las tareas se representan normalmente como grafos de subtareas, donde una subtarea es la unidad de planificación. Normalmente, un procesador empotrado controla la ejecución de este tipo de sistemas trabajando con estructuras de datos complejas, como grafos o listas enlazadas, cuyo manejo a menudo genera retardos en la ejecución. Además, las comunicaciones HW/SW son a menudo un cuello de botella del sistema. Por tanto resulta muy interesante reducir tanto los cálculos que realiza el procesador como las comunicaciones. Para lograr este objetivo hemos desarrollado un gestor HW que controla la ejecución de grafos de subtareas en un conjunto de unidades reconfigurables. Este gestor recibe como entrada los grafos junto con una planificación asociada a cada subtarea y garantiza su correcta ejecución sin necesidad de ninguna otra intervención por parte del procesador. Además, incluye mecanismos para optimizar la gestión de las reconfiguraciones reduciendo las penalizaciones que generan en tiempo de ejecución. [ABSTRACT] Reconfigurable HW can be used to build a hardware multitasking system where tasks can be assigned to the reconfigurable HW at run-time according to the requirements of the running applications. Normally the execution in this kind of systems is controlled by an embedded processor. In these systems tasks are frequently represented as subtask graphs, where a subtask is the basic scheduling unit that can be assigned to a reconfigurable HW. In order to control the execution of these tasks, the processor must manage at run-time complex data structures, like graphs or linked list, which may generate significant execution-time penalties. In addition, HW/SW communications are frequently a system bottleneck. Hence, it is very interesting to find a way to reduce the run-time SW computations and the HW/SW communications. To this end we have developed a HW execution manager that controls the execution of subtask graphs over a set of reconfigurable units. This manager receives as input a subtask graph coupled to a subtask schedule, and guarantees its proper execution. In addition it includes support to reduce the execution-time overhead due to reconfigurations. With this HW support the execution of task graphs can be managed efficiently generating only very small run-time penalties.