Javascript must be enabled to continue!
Probabilistically time-analyzable complex processor designs
View through CrossRef
Industry developing Critical Real-Time Embedded Systems (CRTES), such as Aerospace, Space, Automotive and Railways, faces relentless demands for increased guaranteed processor performance to support new advanced functionalities without increasing the verification costs and the limited power budget. To cope with those needs, more complex processor designs are required. Unfortunately, CRTES have to go through a thorough functional and timing verification process. Functional correctness verification has to ensure that despite the presence of faults system's safety will not be compromised while timing verification focus on determining the worst-case execution time (WCET) of programs running in the processor. In CRTES it is of great importance deriving trustworthy and tight WCET estimates.
Current generation CRTES based on relatively simple single-core processors are already extremely difficult to verify and with the advent of multicore and manycore platforms this problem will be exacerbated. Multicore contention in the access to shared hardware resources creates a dependence of the execution time of a task with the rest of the tasks running simultaneously and this makes problem of deriving safe WCET estimate worse. Therefore, timing analysis techniques need to include a lot of pessimism when using the advanced hardware features. Probabilistic Timing Analysis (PTA) has emerged recently as a powerful method to derive WCET estimates for critical tasks on relatively complex processors.
In this thesis we propose PTA-compliant hardware solutions to enable the use of more powerful and complex multicore and manycore processor architectures in future CRTES. Hardware solutions include arbitration policies and techniques to manage shared hardware resources (i.e. shared interconnection network and L2 cache), as well as approaches to obtain trustworthy WCET estimates on top of degraded hardware. PTA implemented on top of the proposed time-randomized designs allows modeling the timing behaviour of applications running in the processor in a probabilistical manner and therefore, WCET bounds can be made tighter.
Las industrias centradas en el desarrollo de Critical Real-Time Embedded Systems (CRTES) como por ejemplo la industria aeroespacial, espacial, ferroviaria o de la automoción, se enfrentan al reto que supone ofrecer aplicaciones cada vez más potentes sin incrementar los costes de verificación ni exceder las restricciones de consumo de estos sistemas. Para afrontar este reto es necesario utilizar procesadores cada vez más complejos. En el campo de los CRTES, estos procesadores tienen que cumplir ciertas restricciones funcionales y temporales que se validan mediante arduos procesos de verificación. La verificación funcional tiene como objetivo garantizar que la seguridad del sistema no se verá comprometida a pesar de potenciales fallos en el sistema mientras que la verificación de tiempo se centra en determinar el peor tiempo de ejecución (WCET, del inglés worst-case execution time) de los programas que se ejecutan en el procesador. En los CRTES resulta de vital importancia calcular el WCET de forma precisa y fiable. En la actual generación de CRTES, basada en el uso de procesadores de un solo núcleo, el proceso de verificación es complejo. El hecho de incorporar plataformas con múltiples (hasta 16) núcleos (multicore) y con muchos (más de 16) núcleos (manycore) aún añade más complejidad a este proceso de verificación. La contención al acceder a los recursos hardware compartidos en los sistemas multicore y manycore crea dependencias en los tiempos de ejecución entre las tareas que se ejecutan en un núcleo y el resto de tareas que se ejecuta simultáneamente en el sistema. Este efecto, dificulta el cálculo del WCET traduciéndose así en la obtención de WCETs muy pesimistas y poco precisos. Para mejorar este aspecto, recientemente se ha propuesto una nueva metodología llamada Análisis de Tiempo Probabilístico (PTA, del inglés Probabilistic Timing Analysis) que facilita el cálculo del WCET en tareas críticas que se ejecutan en procesadores relativamente complejos. En esta tesis proponemos soluciones hardware compatibles con la metodología de PTA con el fin de facilitar la utilización de arquitecturas multicore y manycore más potentes y complejas en el diseño de los CRTES del futuro. Estas soluciones hardware incluyen tanto políticas de arbitraje y técnicas para gestionar la contención en los recursos compartidos (p.e. red de interconexión entre los cores y la L2), así como métodos para la obtención fiable y precisa del WCET, y se basan en la implemetación de diseños hardware que introducen aleatoriedad en el comportamiento temporal de aplicaciones y por tanto son compatibles con la metodología de PTA.
Title: Probabilistically time-analyzable complex processor designs
Description:
Industry developing Critical Real-Time Embedded Systems (CRTES), such as Aerospace, Space, Automotive and Railways, faces relentless demands for increased guaranteed processor performance to support new advanced functionalities without increasing the verification costs and the limited power budget.
To cope with those needs, more complex processor designs are required.
Unfortunately, CRTES have to go through a thorough functional and timing verification process.
Functional correctness verification has to ensure that despite the presence of faults system's safety will not be compromised while timing verification focus on determining the worst-case execution time (WCET) of programs running in the processor.
In CRTES it is of great importance deriving trustworthy and tight WCET estimates.
Current generation CRTES based on relatively simple single-core processors are already extremely difficult to verify and with the advent of multicore and manycore platforms this problem will be exacerbated.
Multicore contention in the access to shared hardware resources creates a dependence of the execution time of a task with the rest of the tasks running simultaneously and this makes problem of deriving safe WCET estimate worse.
Therefore, timing analysis techniques need to include a lot of pessimism when using the advanced hardware features.
Probabilistic Timing Analysis (PTA) has emerged recently as a powerful method to derive WCET estimates for critical tasks on relatively complex processors.
In this thesis we propose PTA-compliant hardware solutions to enable the use of more powerful and complex multicore and manycore processor architectures in future CRTES.
Hardware solutions include arbitration policies and techniques to manage shared hardware resources (i.
e.
shared interconnection network and L2 cache), as well as approaches to obtain trustworthy WCET estimates on top of degraded hardware.
PTA implemented on top of the proposed time-randomized designs allows modeling the timing behaviour of applications running in the processor in a probabilistical manner and therefore, WCET bounds can be made tighter.
Las industrias centradas en el desarrollo de Critical Real-Time Embedded Systems (CRTES) como por ejemplo la industria aeroespacial, espacial, ferroviaria o de la automoción, se enfrentan al reto que supone ofrecer aplicaciones cada vez más potentes sin incrementar los costes de verificación ni exceder las restricciones de consumo de estos sistemas.
Para afrontar este reto es necesario utilizar procesadores cada vez más complejos.
En el campo de los CRTES, estos procesadores tienen que cumplir ciertas restricciones funcionales y temporales que se validan mediante arduos procesos de verificación.
La verificación funcional tiene como objetivo garantizar que la seguridad del sistema no se verá comprometida a pesar de potenciales fallos en el sistema mientras que la verificación de tiempo se centra en determinar el peor tiempo de ejecución (WCET, del inglés worst-case execution time) de los programas que se ejecutan en el procesador.
En los CRTES resulta de vital importancia calcular el WCET de forma precisa y fiable.
En la actual generación de CRTES, basada en el uso de procesadores de un solo núcleo, el proceso de verificación es complejo.
El hecho de incorporar plataformas con múltiples (hasta 16) núcleos (multicore) y con muchos (más de 16) núcleos (manycore) aún añade más complejidad a este proceso de verificación.
La contención al acceder a los recursos hardware compartidos en los sistemas multicore y manycore crea dependencias en los tiempos de ejecución entre las tareas que se ejecutan en un núcleo y el resto de tareas que se ejecuta simultáneamente en el sistema.
Este efecto, dificulta el cálculo del WCET traduciéndose así en la obtención de WCETs muy pesimistas y poco precisos.
Para mejorar este aspecto, recientemente se ha propuesto una nueva metodología llamada Análisis de Tiempo Probabilístico (PTA, del inglés Probabilistic Timing Analysis) que facilita el cálculo del WCET en tareas críticas que se ejecutan en procesadores relativamente complejos.
En esta tesis proponemos soluciones hardware compatibles con la metodología de PTA con el fin de facilitar la utilización de arquitecturas multicore y manycore más potentes y complejas en el diseño de los CRTES del futuro.
Estas soluciones hardware incluyen tanto políticas de arbitraje y técnicas para gestionar la contención en los recursos compartidos (p.
e.
red de interconexión entre los cores y la L2), así como métodos para la obtención fiable y precisa del WCET, y se basan en la implemetación de diseños hardware que introducen aleatoriedad en el comportamiento temporal de aplicaciones y por tanto son compatibles con la metodología de PTA.
Related Results
A Multi-core processor for hard real-time systems
A Multi-core processor for hard real-time systems
The increasing demand for new functionalities in current and future hard real-time embedded systems, like the ones deployed in automotive and avionics industries, is driving an inc...
Design of a dual-issue RISC-V processor
Design of a dual-issue RISC-V processor
Abstract
A dual-issue 32-bit RISC-V processor is designed and reported. In order to evaluate the performance of the dual-issue processor, a single-issue processor ba...
Design of RISCV processor using verilog
Design of RISCV processor using verilog
The main goal of this paper is to develop a 32-bit pipelined processor with several clock domains based on the RISCV (open source RV32I Version 2.0) ISA. To minimize the complexity...
Innovations in Multicore Network Processor Design for Enhanced Performance
Innovations in Multicore Network Processor Design for Enhanced Performance
The rapid expansion of network traffic, driven by the proliferation of internet-connected devices and the growing demand for high-speed data transmission, has intensified the need ...
Cost minimization of algorithms for scheduling parallel, single-threaded, heterogeneous, speed-scalable processors
Cost minimization of algorithms for scheduling parallel, single-threaded, heterogeneous, speed-scalable processors
We synthesize online scheduling algorithms to optimally assign a set of arriving heterogeneous tasks to heterogeneous speed-scalable processors under the single threaded computing ...
Cost minimization of algorithms for scheduling parallel, single-threaded, heterogeneous, speed-scalable processors
Cost minimization of algorithms for scheduling parallel, single-threaded, heterogeneous, speed-scalable processors
We synthesize online scheduling algorithms to optimally assign a set of arriving heterogeneous tasks to heterogeneous speed-scalable processors under the single threaded computing ...
Object-Oriented Environment for Dynamic Finite Element Modeling of Tires and Suspension Systems
Object-Oriented Environment for Dynamic Finite Element Modeling of Tires and Suspension Systems
An object-oriented graphical modeling environment, which includes integrated pre-processor, post-processor, and explicit time-integration finite element solver, for predicting the ...
Runahead threads
Runahead threads
Los temas de investigación sobre multithreading han ganado mucho interés en la arquitectura de computadores con la aparición de procesadores multihilo y multinucleo. Los procesador...

