Diseño de estrategias habilitadoras de la regulación del consumo en la tarjeta ODROID-XU4

Ferrández Alaminos, David (2020). Diseño de estrategias habilitadoras de la regulación del consumo en la tarjeta ODROID-XU4. Proyecto Fin de Carrera / Trabajo Fin de Grado, E.T.S.I. y Sistemas de Telecomunicación (UPM), Madrid.

Description

Title: Diseño de estrategias habilitadoras de la regulación del consumo en la tarjeta ODROID-XU4
Author/s:
  • Ferrández Alaminos, David
Contributor/s:
  • Groba Gonzalez, Ángel Manuel
Item Type: Final Project
Degree: Grado en Ingeniería Electrónica de Comunicaciones
Date: February 2020
Subjects:
Freetext Keywords: Optimización de la energía; Consumo; Interfaz
Faculty: E.T.S.I. y Sistemas de Telecomunicación (UPM)
Department: Ingeniería Telemática y Electrónica
Creative Commons Licenses: Recognition - No derivative works - Non commercial

Full text

[img] Archive (ZIP) - Users in campus UPM only
Download (3MB)
[img]
Preview
PDF - Requires a PDF viewer, such as GSview, Xpdf or Adobe Acrobat Reader
Download (2MB) | Preview

Abstract

La reducción del consumo de energía en dispositivos móviles constituye una gran área de investigación actualmente. Existen diferentes soluciones hardware tales como el desarrollo de nuevas baterías o circuitos de bajo consumo y otras a nivel software para optimizar la eficiencia de las aplicaciones, dentro de las cuales se ubica este proyecto. Éste está englobado dentro de una de las ramas de investigación del Grupo de Diseño Electrónico y Microelectrónico (GDEM), adscrito al Centro de Investigación de Tecnologías del Software y Sistemas Multimedia para la Sostenibilidad (CITSEM) del Campus Sur de la UPM. Previo a este proyecto y en la misma línea de investigación, se han desarrollado soluciones para controlar el consumo de energía basadas en el uso de estimadores utilizando, para ello, contadores de eventos en sistemas mononúcleo. Se trata de una técnica que necesita generar algoritmos específicos de estimación de consumo para cada tipo de aplicación que la utilice, centrados en el uso de contadores ubicados en los procesadores de la placa de desarrollo. Este proyecto permite solventar esta desventaja, pudiendo ser utilizado para cualquier aplicación al devolver el consumo de potencia en tiempo real de la placa multinúcleo sobre la que se ha desarrollado (ODROID-XU4). De esta manera, se pasa de una estimación a un valor real de consumo que puede ser monitorizado y procesado por los núcleos del procesador de la propia ODROID-XU4. En este proyecto, se ha desarrollado un interfaz a nivel de software para la plataforma ODROID-XU4 que permite, a su entrada, variar el nivel de consumo del procesador a la vez que, a su salida, se toman muestras del mismo. Como solución para el interfaz de entrada, se propone manejar las frecuencias de trabajo de los núcleos del procesador de la placa, las cuales llevan asociadas unas determinadas tensiones, formando lo que se conoce como puntos de trabajo. Estos puntos de trabajo influyen en el consumo de potencia del procesador de la placa, de forma que a medida que se aumentan las frecuencias de funcionamiento de los núcleos, tenderá a aumentar, a su vez, el consumo. El interfaz desarrollado facilita el acceso a esos puntos de trabajo mediante la simple especificación, como parámetro, de la frecuencia correspondiente al punto deseado. Por su parte, como solución para el interfaz de salida se emplea el dispositivo SmartPower2, que sirve también como alimentador de la ODROID-XU4. Sin embargo, dado que por defecto dicho dispositivo muestrea cada segundo los valores de consumo de la placa a la que alimenta, mostrándolos en un display, ha sido necesario modificar su firmware para aumentar la frecuencia de muestreo y poder enviar los datos a la ODROID-XU4 a través del puerto USB. Para ello, se ha obtenido el código fuente del firmware, se ha analizado, se han localizado y retocado las partes encargadas del muestreo de las diferentes medidas, la formación de la cadena de datos y su posterior envío, y finalmente se ha recompilado y volcado el nuevo firmware en el dispositivo con la cadena de herramientas adecuada. Esta nueva versión de firmware facilita el envío de los datos de consumo al procesador de la ODROID-XU4 para su posterior manejo. En este sentido, también se ha tenido que desarrollar el código necesario en el interfaz para gestionar la lectura de los datos de consumo desde el puerto USB al que está conectada la SmartPower2 y ofrecerlos como salida de dicho interfaz. El interfaz desarrollado se ubica codificado en el interior de una rutina de un driver del sistema operativo de la ODROID-XU4 denominada gobernador. Se ha desarrollado dentro de un nuevo gobernador específico creado a tal efecto, sin afectar a ninguno de los preexistentes en el sistema operativo, de forma que el usuario mantiene la posibilidad de elegir entre cualquiera de ellos más el implementado en este PFG. El proyecto ha sido realizado para que pueda ser utilizado en futuros desarrollos como punto de partida sobre el que construir soluciones de optimización del consumo, por ejemplo, basadas en sistemas de control realimentados que precisen información en tiempo real acerca del consumo del dispositivo. De hecho, como punto adicional en esta memoria, se incluyen los resultados de utilizar el interfaz desarrollado con un sistema de control realimentado de prueba, demostrándose así la funcionalidad de todo el interfaz y su idoneidad para ser empleado en este tipo de soluciones. Abstract: Nowadays, reduction of energy consumption in portable devices is an important research area. There are several hardware solutions, such as battery development or low power consumption circuits, and other ones related to software to optimize applications efficiency. This project belongs to the second type of solutions. It is located in one of the research lines of the Electronic and Microelectronic Design Group (GDEM in Spanish) inside the Research Center on Software Technologies and Multimedia Systems for Sustainability (CITSEM in Spanish) of Universidad Politécnica de Madrid (UPM). Prior to the development of this project and in the same research line, some estimation-based solutions were developed in order to control energy consumption in single core devices. These solutions use general-purpose event counters located in the processor hardware in order to perform the estimations. This technique needs to adapt the estimation algorithms for every type of applications that uses it. This project surpasses this disadvantage because it can be used in every type of application. Indeed, it enables the real-time availability of the power consumption of the multicore device (ODROID-XU4) used to develop this project. With this project, real power-consumption data is used instead of estimations, which can be monitored and processed by the ODROID-XU4 processor cores. In this project, a software interface has been designed for the ODROID-XU4 board which, at its input, allows to vary the processor power consumption, whereas, at its output, offers the actual power-consumption data. To implement the interface input, an operating-frequency variation method is used in order to vary the processor’s power consumption. Each operating frequency has an associated voltage level thus forming different operating points of voltage and frequency that can be dynamically scaled (DVFS). These operating points can affect the processor’s power consumption in such a way that each time the frequency rises, the power consumption also tends to rise. The interface developed in this project allows users to change the frequency by only modifying a numeric value at the interface input, according to the desired operating point. To implement the interface output, the SmartPower2 device, which is also used as the power supply for the ODROID-XU4 board, measures and displays the power consumption of the connected board. In order to increase its sampling period as well as to enable data communication with the ODROID-XU4 board, its firmware has been updated and modified. Therefore, after downloading the firmware source code of the SmartPower2 and analysing it, the parts of the code related to power-measurements sampling period, measurements-data packaging and measurements-sending process have been modified. After those modifications, the new firmware version has been compiled and downloaded into the SmartPower2 processor. This new version enables the possibility of sending faster the power-measurements string to the ODROID-XU4 through the USB port of the SmartPower2. Connecting the SmartPower2 and the ODROID-XU4 using any free USB port of this board, the ODROID-XU4 operating system has access to the power measurements and can process them. In order to process the data sent by the SmartPower2, specific code has been added to the interface in order to read directly from the USB port and separate string contents. The interface has been codified inside an ODROID-XU4 operating-system driver routine called governor. A new governor has been added to contain all the interface code maintaining all the operating-system default governors intact. Users can then choose between the default governors and the new one created in this project. This project has been developed as a starting point to be used in future consumption optimization techniques as, for example, the ones based on closed-loop control systems, which need real-time information about power consumption. In fact, in this document, results obtained using a test closed-loop control system are included in order to test and prove how properly the interface works and how it fits this kind of solutions.

More information

Item ID: 66551
DC Identifier: http://oa.upm.es/66551/
OAI Identifier: oai:oa.upm.es:66551
Deposited by: Biblioteca Universitaria Campus Sur
Deposited on: 31 Mar 2021 07:59
Last Modified: 26 May 2021 22:30
  • Logo InvestigaM (UPM)
  • Logo GEOUP4
  • Logo Open Access
  • Open Access
  • Logo Sherpa/Romeo
    Check whether the anglo-saxon journal in which you have published an article allows you to also publish it under open access.
  • Logo Dulcinea
    Check whether the spanish journal in which you have published an article allows you to also publish it under open access.
  • Logo de Recolecta
  • Logo del Observatorio I+D+i UPM
  • Logo de OpenCourseWare UPM