Desarrollo de una plataforma de emulación de sistemas empotrados multiprocesador
Loading...
Official URL
Full text at PDC
Publication date
2005
Advisors (or tutors)
Editors
Journal Title
Journal ISSN
Volume Title
Publisher
Citation
Abstract
En los últimos años han aparecido necesidades en la industria moderna
y en la electrónica de consumo que no han podido ser satisfechas con
los sistemas hardware o software habituales. La mayoría de estas
aplicaciones vienen determinadas por el auge del sector multimedia y
la tendencia a portabilizar sistemas cada vez más complejos.
Actualmente, resulta de vital importancia desarrollar una metodología
de diseño capaz de abordar dicha complejidad dentro de las
pequeñas ventanas de tiempo que permite la dinámica empresarial y
las restricciones de mercado. Esta metodología de diseño debe soportar
la realización rápida de prototipos de sistemas empotrados y tener en
cuenta las últimas tendencias aparecidas, en especial la
implementación bajo nuevas restricciones como es la minimización de
consumo.
Si precisamente nos centramos en la minimización de consumo de
energía, es necesario notar que la arquitectura del sistema de memoria
de los sistemas empotrados tiene un gran impacto en el mismo.
Además, investigaciones recientes han demostrado la utilidad de
pequeñas memorias SRAM adicionales cercanas al procesador y con
control totalmente software (scratchpad) lo que ha producido la
aparición de este tipo de memorias en todas las arquitecturas de última
generación. A pesar de este importante soporte hardware, se ha
demostrado que el diseño del subsistema de memoria en un sistema
empotrado debe estar de acuerdo con el subconjunto específico de
aplicaciones que se desea ejecutar ya que en caso contrario el
rendimiento global puede degradarse severamente y, al mismo tiempo,
ser causa de un grave derroche energético, que puede llegar hasta un
70% en algunas aplicaciones. [Ref. 2]
Por ello, se plantea en este proyecto el estudio de las necesidades de
uso de memoria dinámica de los nuevos sistemas empotrados
multimedia de altas prestaciones y para ello, la construcción de una
plataforma de emulación hardware que implemente una jerarquía de
memoria específica, que permita la extracción de diferentes
estadísticas de acceso a los distintos niveles de la jerarquía de memoria
propuesta, y la posterior obtención de conclusiones y resultados a partir
de los datos obtenidos.
[ABSTRACT]
In the last years, the requirements of consumer markets in embedded
devices have put a lot of pressure in the semiconductor industry.
Presently, due to the exponential rise in the silicon available in latest
chips, these new consumer embedded systems must provide a large
range of multimedia services at a very cheap price and with a very short
time-to-market. Furthermore the boom in the multimedia sector to make
portable systems adds even more complexity to this design flow. As a
result, current design methodologies for the electronic world are not able
to efficiently tackle such complex framework. Thus, new solutions need to
be found to correctly design the hardware and software components
involved in these forthcoming embedded systems. Precisely, it is vital to
develop new versatile methodologies to prototype and evaluate new
embedded designs, which can easily adjust to the latest tendencies and
design metrics within thriving this domain, for instance the minimization of
energy consumption.
Within this context, very recently it has been proven that a key issue to
achieve the minimization of energy consumed is the correct design of
the architecture and management of the memory hierarchy of
embedded systems. For example, recent research in this field has shown
the benefits of including small software-controlled memories near the
processor (i.e. scratchpad memories), which has translated into the
inclusion of this type of memory in the recent generations of embedded
systems.
In addition, apart from adjusting the hardware of embedded systems, it
has been shown that an optimal design of the memory system in a
embedded system requires its tuning for the specific subset of
applications desired to be executed. Otherwise, the performance can
be degraded severely compared to an optimal design, and, at the
same time, it can cause a serious waste of energy, namely, up to a 70%
in some applications.
As a consequence of all the previous limitations, this project tries to aid
designers of embedded systems by providing a complete
hardware/software framework for the evaluation and management of
the memory subsystem by the embedded software. From the hardware
point of view, this framework is built on top of a Xilinx Virtex-II Pro FPGA
board to allow the multiple re-synthesis of memory-specific hierarchies,
which replace the memory system of the actual embedded system
under study and the extraction of a wide range of statistics from the
different levels of its memory hierarchy (i.e. scratchpad, data cache and
main memory). From the software point of view, the framework includes
Sistemas Informáticos 2004-2005
9
a complete tool-chain for the hard-core PowerPC processor present in
the employed Virtex-II Pro board, which enables an easy compilation of
C code of the different real-life applications to be included in the
system. Hence, making feasible the evaluation of the memory hierarchy
for each instance of possible input in the system, and the extraction of
consistent conclusions according to the data obtained.
Description
Trabajo de clase de la asignatura Sistemas Informáticos (Facultad de Informática, Curso 2004-2005)