11 research outputs found

    Characterization of Interconnection Delays in FPGAS Due to Single Event Upsets and Mitigation

    Get PDF
    RÉSUMÉ L’utilisation incessante de composants électroniques à géométrie toujours plus faible a engendré de nouveaux défis au fil des ans. Par exemple, des semi-conducteurs à mémoire et à microprocesseur plus avancés sont utilisés dans les systèmes avioniques qui présentent une susceptibilité importante aux phénomènes de rayonnement cosmique. L'une des principales implications des rayons cosmiques, observée principalement dans les satellites en orbite, est l'effet d'événements singuliers (SEE). Le rayonnement atmosphérique suscite plusieurs préoccupations concernant la sécurité et la fiabilité de l'équipement avionique, en particulier pour les systèmes qui impliquent des réseaux de portes programmables (FPGA). Les FPGA à base de cellules de mémoire statique (SRAM) présentent une solution attrayante pour mettre en oeuvre des systèmes complexes dans le domaine de l’avionique. Les expériences de rayonnement réalisées sur les FPGA ont dévoilé la vulnérabilité de ces dispositifs contre un type particulier de SEE, à savoir, les événements singuliers de changement d’état (SEU). Un SEU est considérée comme le changement de l'état d'un élément bistable (c'est-à-dire, un bit-flip) dû à l'effet d'un ion, d'un proton ou d’un neutron énergétique. Cet effet est non destructif et peut être corrigé en réécrivant la partie de la SRAM affectée. Les changements de délai (DC) potentiels dus aux SEU affectant la mémoire de configuration de routage ont été récemment confirmés. Un des objectifs de cette thèse consiste à caractériser plus précisément les DC dans les FPGA causés par les SEU. Les DC observés expérimentalement sont présentés et la modélisation au niveau circuit de ces DC est proposée. Les circuits impliqués dans la propagation du délai sont validés en effectuant une modélisation précise des blocs internes à l'intérieur du FPGA et en exécutant des simulations. Les résultats montrent l’origine des DC qui sont en accord avec les mesures expérimentales de délais. Les modèles proposés au niveau circuit sont, aux meilleures de notre connaissance, le premier travail qui confirme et explique les délais combinatoires dans les FPGA. La conception d'un circuit moniteur de délai pour la détection des DC a été faite dans la deuxième partie de cette thèse. Ce moniteur permet de détecter un changement de délai sur les sections critiques du circuit et de prévenir les pannes de synchronisation engendrées par les SEU sans utiliser la redondance modulaire triple (TMR).----------ABSTRACT The unrelenting demand for electronic components with ever diminishing feature size have emerged new challenges over the years. Among them, more advanced memory and microprocessor semiconductors are being used in avionic systems that exhibit a substantial susceptibility to cosmic radiation phenomena. One of the main implications of cosmic rays, which was primarily observed in orbiting satellites, is single-event effect (SEE). Atmospheric radiation causes several concerns regarding the safety and reliability of avionics equipment, particularly for systems that involve field programmable gate arrays (FPGA). SRAM-based FPGAs, as an attractive solution to implement systems in aeronautic sector, are very susceptible to SEEs in particular Single Event Upset (SEU). An SEU is considered as the change of the state of a bistable element (i.e., bit-flip) due to the effect of an energetic ion or proton. This effect is non-destructive and may be fixed by rewriting the affected part. Sensitivity evaluation of SRAM-based FPGAs to a physical impact such as potential delay changes (DC) has not been addressed thus far in the literature. DCs induced by SEU can affect the functionality of the logic circuits by disturbing the race condition on critical paths. The objective of this thesis is toward the characterization of DCs in SRAM-based FPGAs due to transient ionizing radiation. The DCs observed experimentally are presented and the circuit-level modeling of those DCs is proposed. Circuits involved in delay propagation are reverse-engineered by performing precise modeling of internal blocks inside the FPGA and executing simulations. The results show the root cause of DCs that are in good agreement with experimental delay measurements. The proposed circuit level models are, to the best of our knowledge, the first work on modeling of combinational delays in FPGAs.In addition, the design of a delay monitor circuit for DC detection is investigated in the second part of this thesis. This monitor allowed to show experimentally cumulative DCs on interconnects in FPGA. To this end, by avoiding the use of triple modular redundancy (TMR), a mitigation technique for DCs is proposed and the system downtime is minimized. A method is also proposed to decrease the clock frequency after DC detection without interrupting the process

    Early Dependability Analysis of FPGA-Based Space Applications Using Formal Verification

    Get PDF
    SRAM-based FPGAs are increasingly attractive in the aerospace industry for their field programmability and low cost. Unfortunately, they suffer from cosmic radiation induced Single Event Effects (SEEs). In safety-critical applications, the dependability of the design is a prime concern since failures may have catastrophic consequences. Hence, an early analysis of dependability of such safety-critical applications will enable designers to develop systems that meet high dependability requirements, such as the DO-254 standard. In this thesis, we propose a high-level dependability and performability analysis methodology based on probabilistic model checking. Compared to the pen-and-pencil and discrete-event simulation approach, our methodology is more accurate due to the use of an automated formal verification technique. Moreover, compared to fault injection or beam testing, analysis at early design stages can guide designers to build more reliable designs reducing the overall cost and effort. The proposed methodology can perform three different types of analysis: evaluation of available design options, optimization of scrub intervals while satisfying its design assurance level requirements, and optimal partitioning of Triple-Modular Redundant (TMR) Systems. Such analysis can also guide designers to adopt proper mitigation technique(s), such as rescheduling, TMR, TMR with less frequent scrubs, or even can help to decide the number of TMR partitions for a given scrub intervals. Starting from a high-level description of a system, based on the preferred analysis, a Markov model or Markov (reward) model is constructed from the extracted Control Data Flow Graph (CDFG) and the failure/mitigation parameters for the targeted FPGA. Such modeling and exhaustive analysis elaborated using a probabilistic model checking technique can capture all the failures and repairs possible (according to some general model) in the system within the radiation environment. To illustrate the applicability of the proposed approach, we present our quantitative analysis obtained from DSP benchmark circuits

    Contributions to the fault tolerance of soft-core processors implemented in SRAM-based FPGA Systems.

    Get PDF
    239 p.Gracias al desarrollo de las tecnologías de diseño y fabricación, los circuitos electrónicos han llegado a grandes niveles de integración. De esta forma, hoy en día es posible implementar completos y complejos sistemas dentro de un único dispositivo incorporando gran variedad de elementos como: procesadores, osciladores, lazos de seguimiento de fase (PLLs), interfaces, conversores ADC y DAC, módulos de memoria, etc. A este concepto de diseño se le denomina comúnmente SoC (System-on-Chip). Una de las plataformas para implementar estos sistemas que más importancia está cobrando son las FPGAs (Field Programmable Gate Array). Históricamente la plataforma más utilizada para albergar los SoCs han sido las ASICs (Application- Specific Integrated Circuits), debido a su bajo consumo energético y su gran rendimiento. No obstante, su costoso proceso de desarrollo y fabricación hace que solo sean rentables en el caso de producciones masivas. Las FPGAs, por el contrario, al ser dispositivos configurables ofrecen, la posibilidad de implementar diseños personalizados a un coste mucho más reducido. Por otro lado, los continuos avances en la tecnología de las FPGAs están haciendo que éstas compitan con las ASICs a nivel de prestaciones (consumo, nivel de integración y eficiencia). Ciertas tecnologías de FPGA, como las SRAM y Flash, poseen una característica que las hace especialmente interesantes en multitud de diseños: la capacidad de reconfiguración. Dicha característica, que incluso puede ser realizada de forma autónoma, permite cambiar completamente el diseño hardware implementado con solo cargar en la FPGA un archivo de configuración denominado bitstream. La reconfiguración puede incluso permitir modificar una parte del circuito configurado en la matriz de la FPGA, mientras el resto del circuito implementado continua inalterado. Esto que se conoce como reconfiguración parcial dinámica, posibilita que un mismo chip albergue en su interior numerosos diseños hardware que pueden ser cargados a demanda. Gracias a la capacidad de reconfiguración, las FPGAs ofrecen numerosas ventajas como: posibilidad de personalización de diseños, capacidad de readaptación durante el funcionamiento para responder a cambios o corregir errores, mitigación de obsolescencia, diferenciación, menores costes de diseño o reducido tiempo para el lanzamiento de productos al mercado. Los SoC basados en FPGAs allanan el camino hacia un nuevo concepto de integración de hardware y software, permitiendo que los diseñadores de sistemas electrónicos sean capaces de integrar procesadores embebidos en los diseños para beneficiarse de su gran capacidad de computación. Gracias a esto, una parte importante de la electrónica hace uso de la tecnología FPGA abarcando un gran abanico de campos, como por ejemplo: la electrónica de consumo y el entretenimiento, la medicina o industrias como la espacial, la aviónica, la automovilística o la militar. Las tecnologías de FPGA existentes ofrecen dos vías de utilización de procesado- res embebidos: procesadores hardcore y procesadores softcore. Los hardcore son procesadores discretos integrados en el mismo chip de la FPGA. Generalmente ofrecen altas frecuencias de trabajo y una mayor previsibilidad en términos de rendimiento y uso del área, pero su diseño hardware no puede alterarse para ser personalizado. Por otro lado, un procesador soft-core, es la descripción hardware en lenguaje HDL (normalmente VDHL o Verilog) de un procesador, sintetizable e implementable en una FPGA. Habitualmente, los procesadores softcore suelen basarse en diseños hardware ya existentes, siendo compatibles con sus juegos de instrucciones, muchos de ellos en forma de IP cores (Intellectual Property co- res). Los IP cores ofrecen procesadores softcore prediseñados y testeados, que dependiendo del caso pueden ser de pago, gratuitos u otro tipo de licencias. Debido a su naturaleza, los procesadores softcore, pueden ser personalizados para una adaptación óptima a diseños específicos. Así mismo, ofrecen la posibilidad de integrar en el diseño tantos procesadores como se desee (siempre que haya disponibles recursos lógicos suficientes). Otra ventaja importante es que, gracias a la reconfiguración parcial dinámica, es posible añadir el procesador al diseño únicamente en los casos necesarios, ahorrando de esta forma, recursos lógicos y consumo energético. Uno de los mayores problemas que surgen al usar dispositivos basados en las tecnologías SRAM o la flash, como es el caso de las FPGAs, es que son especialmente sensibles a los efectos producidos por partículas energéticas provenientes de la radiación cósmica (como protones, neutrones, partículas alfa u otros iones pesados) denominados efectos de eventos simples o SEEs (Single Event Effects). Estos efectos pueden ocasionar diferentes tipos de fallos en los sistemas: desde fallos despreciables hasta fallos realmente graves que comprometan la funcionalidad del sistema. El correcto funcionamiento de los sistemas cobra especial relevancia cuando se trata de tecnologías de elevado costo o aquellas en las que peligran vidas humanas, como, por ejemplo, en campos tales como el transporte ferroviario, la automoción, la aviónica o la industria aeroespacial. Dependiendo de distintos factores, los SEEs pueden causar fallos de operación transitorios, cambios de estados lógicos o daños permanentes en el dispositivo. Cuando se trata de un fallo físico permanente se denomina hard-error, mientras que cuando el fallo afecta el circuito momentáneamente se denomina soft-error. Los SEEs más frecuentes son los soft-errors y afectan tanto a aplicaciones comerciales a nivel terrestre, como a aplicaciones aeronáuticas y aeroespaciales (con mayor incidencia en estas últimas). La contribución exacta de este tipo de fallos a la tasa de errores depende del diseño específico de cada circuito, pero en general se asume que entorno al 90 % de la tasa de error se debe a fallos en elementos de memoria (latches, biestables o celdas de memoria). Los soft-errors pueden afectar tanto al circuito lógico como al bitstream cargado en la memoria de configuración de la FPGA. Debido a su gran tamaño, la memoria de configuración tiene más probabilidades de ser afectada por un SEE. La existencia de problemas generados por estos efectos reafirma la importancia del concepto de tolerancia a fallos. La tolerancia a fallos es una propiedad relativa a los sistemas digitales, por la cual se asegura cierta calidad en el funcionamiento ante la presencia de fallos, debiendo los sistemas poder soportar los efectos de dichos fallos y funcionar correctamente en todo momento. Por tanto, para lograr un diseño robusto, es necesario garantizar la funcionalidad de los circuitos y asegurar la seguridad y confiabilidad en las aplicaciones críticas que puedan verse comprometidos por los SEE. A la hora de hacer frente a los SEE existe la posibilidad de explotar tecnologías específicas centradas en la tolerancia a fallos, como por ejemplo las FPGAs de tipo fusible, o, por otro lado, utilizar la tecnología comercial combinada con técnicas de tolerancia a fallos. Esta última opción va cobrando importancia debido al menor precio y mayores prestaciones de las FPGAs comerciales. Generalmente las técnicas de endurecimiento se aplican durante la fase de diseño. Existe un gran número de técnicas y se pueden llegar a combinar entre sí. Las técnicas prevalentes se basan en emplear algún tipo de redundancia, ya sea hardware, software, temporal o de información. Cada tipo de técnica presenta diferentes ventajas e inconvenientes y se centra en atacar distintos tipos de SEE y sus efectos. Dentro de las técnicas de tipo redundancia, la más utilizada es la hardware, que se basa en replicar el modulo a endurecer. De esta forma, cada una de las réplicas es alimentada con la misma entrada y sus salidas son comparadas para detectar discrepancias. Esta redundancia puede implementarse a diferentes niveles. En términos generales, un mayor nivel de redundancia hardware implica una mayor robustez, pero también incrementa el uso de recursos. Este incremento en el uso de recursos de una FPGA supone tener menos recursos disponibles para el diseño, mayor consumo energético, el tener más elementos susceptibles de ser afectados por un SEE y generalmente, una reducción de la máxima frecuencia alcanzable por el diseño. Por ello, los niveles de redundancia hardware más utilizados son la doble, conocida como DMR (Dual Modular Redundancy) y la triple o TMR (Triple Modular Redundancy). La DMR minimiza el número de recursos redundantes, pero presenta el problema de no poder identificar el módulo fallido ya que solo es capaz de detectar que se ha producido un error. Ello hace necesario combinarlo con técnicas adicionales. Al caso de DMR aplicado a procesadores se le denomina lockstep y se suele combinar con las técnicas checkpoint y rollback recovery. El checkpoint consiste en guardar periódicamente el contexto (contenido de registros y memorias) de instantes identificados como correctos. Gracias a esto, una vez detectado y reparado un fallo es posible emplear el rollback recovery para cargar el último contexto correcto guardado. Las desventajas de estas estrategias son el tiempo requerido por ambas técnicas (checkpoint y rollback recovery) y la necesidad de elementos adicionales (como memorias auxiliares para guardar el contexto). Por otro lado, el TMR ofrece la posibilidad de detectar el módulo fallido mediante la votación por mayoría. Es decir, si tras comparar las tres salidas una de ellas presenta un estado distinto, se asume que las otras dos son correctas. Esto permite que el sistema continúe funcionando correctamente (como sistema DMR) aun cuando uno de los módulos quede inutilizado. En todo caso, el TMR solo enmascara los errores, es decir, no los corrige. Una de las desventajas más destacables de esta técnica es que incrementa el uso de recursos en más de un 300 %. También cabe la posibilidad de que la salida discrepante sea la realmente correcta (y que, por tanto, las otras dos sean incorrectas), aunque este caso es bastante improbable. Uno de los problemas que no se ha analizado con profundidad en la bibliografía es el problema de la sincronización de procesadores soft-core en sistemas TMR (o de mayor nivel de redundancia). Dicho problema reside en que, si tras un fallo se inutiliza uno de los procesadores y el sistema continúa funcionando con el resto de procesadores, una vez reparado el procesador fallido éste necesita sincronizar su contexto al nuevo estado del sistema. Una práctica bastante común en la implementación de sistemas redundantes es combinarlos con la técnica conocida como scrubbing. Esta técnica basada en la reconfiguración parcial dinámica, consiste en sobrescribir periódicamente el bitstream con una copia libre de errores apropiadamente guardada. Gracias a ella, es posible corregir los errores enmascarados por el uso de algunas técnicas de endurecimiento como la redundancia hardware. Esta copia libre de errores suele omitir los bits del bitstream correspondientes a la memoria de usuario, por lo que solo actualiza los bits relacionados con la configuración de la FPGA. Por ello, a esta técnica también se la conoce como configuration scrubbing. En toda la literatura consultada se ha detectado un vacío en cuanto a técnicas que propongan estrategias de scrubbing para la memoria de usuario. Con el objetivo de proponer alternativas innovadoras en el terreno de la tolerancia a fallos para procesadores softcore, en este trabajo de investigación se han desarrollado varias técnicas y flujos de diseño para manejar los datos de usuario a través del bitstream, pudiendo leer, escribir o copiar la información de registros o de memorias implementadas en bloques RAMs de forma autónoma. Así mismo se ha desarrollado un abanico de propuestas tanto como para estrategias lockstep como para la sincronización de sistemas TMR, de las cuales varias hacen uso de las técnicas desarrolladas para manejar las memorias de usuario a través del bitstream. Estas últimas técnicas tienen en común la minimización de utilización de recursos respecto a las estrategias tradicionales. De forma similar, se proponen dos alternativas adicionales basadas en dichas técnicas: una propuesta de scrubbing para las memorias de usuario y una para la recuperación de información en memorias implementadas en bloques RAM cuyas interfaces hayan sido inutilizadas por SEEs.Todas las propuestas han sido validadas en hardware utilizando una FPGA de Xilinx, la empresa líder en fabricación de dispositivos reconfigurables. De esta forma se proporcionan resultados sobre los impactos de las técnicas propuestas en términos de utilización de recursos, consumos energéticos y máximas frecuencias alcanzables

    Enhancing Real-time Embedded Image Processing Robustness on Reconfigurable Devices for Critical Applications

    Get PDF
    Nowadays, image processing is increasingly used in several application fields, such as biomedical, aerospace, or automotive. Within these fields, image processing is used to serve both non-critical and critical tasks. As example, in automotive, cameras are becoming key sensors in increasing car safety, driving assistance and driving comfort. They have been employed for infotainment (non-critical), as well as for some driver assistance tasks (critical), such as Forward Collision Avoidance, Intelligent Speed Control, or Pedestrian Detection. The complexity of these algorithms brings a challenge in real-time image processing systems, requiring high computing capacity, usually not available in processors for embedded systems. Hardware acceleration is therefore crucial, and devices such as Field Programmable Gate Arrays (FPGAs) best fit the growing demand of computational capabilities. These devices can assist embedded processors by significantly speeding-up computationally intensive software algorithms. Moreover, critical applications introduce strict requirements not only from the real-time constraints, but also from the device reliability and algorithm robustness points of view. Technology scaling is highlighting reliability problems related to aging phenomena, and to the increasing sensitivity of digital devices to external radiation events that can cause transient or even permanent faults. These faults can lead to wrong information processed or, in the worst case, to a dangerous system failure. In this context, the reconfigurable nature of FPGA devices can be exploited to increase the system reliability and robustness by leveraging Dynamic Partial Reconfiguration features. The research work presented in this thesis focuses on the development of techniques for implementing efficient and robust real-time embedded image processing hardware accelerators and systems for mission-critical applications. Three main challenges have been faced and will be discussed, along with proposed solutions, throughout the thesis: (i) achieving real-time performances, (ii) enhancing algorithm robustness, and (iii) increasing overall system's dependability. In order to ensure real-time performances, efficient FPGA-based hardware accelerators implementing selected image processing algorithms have been developed. Functionalities offered by the target technology, and algorithm's characteristics have been constantly taken into account while designing such accelerators, in order to efficiently tailor algorithm's operations to available hardware resources. On the other hand, the key idea for increasing image processing algorithms' robustness is to introduce self-adaptivity features at algorithm level, in order to maintain constant, or improve, the quality of results for a wide range of input conditions, that are not always fully predictable at design-time (e.g., noise level variations). This has been accomplished by measuring at run-time some characteristics of the input images, and then tuning the algorithm parameters based on such estimations. Dynamic reconfiguration features of modern reconfigurable FPGA have been extensively exploited in order to integrate run-time adaptivity into the designed hardware accelerators. Tools and methodologies have been also developed in order to increase the overall system dependability during reconfiguration processes, thus providing safe run-time adaptation mechanisms. In addition, taking into account the target technology and the environments in which the developed hardware accelerators and systems may be employed, dependability issues have been analyzed, leading to the development of a platform for quickly assessing the reliability and characterizing the behavior of hardware accelerators implemented on reconfigurable FPGAs when they are affected by such faults

    Run-time reconfigurable, fault-tolerant FPGA systems for space applications

    Get PDF
    Cozzi D. Run-time reconfigurable, fault-tolerant FPGA systems for space applications. Bielefeld: Universität Bielefeld; 2016.The aim of this thesis is to investigate the use of Dynamic Partial Reconfiguration (DPR) on Commercial Off-the-Shelf (COTS) FPGAs in space applications. Reconfigurable systems gained interest in a wide range of application fields, including aerospace, where electronic devices are exposed to a harsh working environment. COTS SRAM-based FPGA devices represent an interesting hardware platform for this kind of systems since they combine low cost with the possibility to utilize state-of-the-art processing power as well as the flexibility of reconfigurable hardware. FPGA architectures have high computational power and thanks to their ability to be reconfigured at run-time, they became interesting candidates for payload processing in space applications. The presented Dynamic Reconfigurable Processing Module (DRPM) has been developed to investigate the use of the DPR approach for satellite payload processing. This scalable platform combines dynamically reconfigurable FPGAs with the required avionic interfaces (e.g., SpaceWire, MIL-STD-1553B, and SpaceFibre). In particular, a novel communication interface has been developed, the Heterogeneous Multi Processor Communication Interface (HMPCI), which allows inter-process communication with small latency and low memory footprint. Current synthesis tools do not support fully the DPR capabilities of FPGAs. Therefore, this thesis introduces INDRA 2.0: an INtegrated Design flow for Reconfigurable Architectures. The key part of INDRA 2.0 is DHHarMa: a Design flow for Homogeneous Hard Macros, which generates homogeneous hard macros for Xilinx FPGAs starting from a high-level description (e.g., VHDL). In particular, the homogeneous DHHarMa router is explained in detail, providing novel terminologies and algorithms, which have enabled the generation of homogeneous routed designs. Results have been shown that Design flow for Homogeneous Hard Macros (DHHarMa) can route homogeneously a communication infrastructure utilizing just between 1% and 31% more resources than the Xilinx router, which cannot provide a homogeneous solution. Furthermore, the permanent faults that can occur on FPGAs have been investigated. This thesis presents OLT(RE)2: an on-line on-demand approach to testing permanent faults induced by radiation in reconfigurable systems used in space missions. The proposed approach relies on a test circuit and custom placer and router. OLT(RE)2 exploits DPR to place the test circuits at run-time. Its goal is to test unprogrammed areas of the FPGA before using them. Experimental results of OLT(RE)2 have shown that is possible to generate, place, and route the test circuits needed to detect on average more than 99 % of the physical wires and on average about 97 % of the programmable interconnection points of a large arbitrary region of the FPGA in a reasonable time. Moreover, the test can be run on the target device without interfering the functional behavior of the system

    Nueva metodología para el endurecimiento óptimo de sistemas digitales con distribución de la funcionalidad, trabajando en entornos sometidos a la radiación ionizante

    Get PDF
    Debido al extenso uso de los sistemas digitales distribuidos en las diferentes áreas tecnológicas sometidas a entornos agresivos, como por ejemplo la automoción o el espacio, actualmente es de vital importancia la aplicación de técnicas de endurecimiento ante los efectos de radiación ionizante. Esta tesis se inició con el proyecto de investigación RENASER+ “TEC2010-22095-C03-03”, financiado por el Ministerio Español de Ciencia y Tecnología. El objetivo principal del subproyecto liderado por la Universidad Carlos III de Madrid, consistía en la evaluación de la sensibilidad de los sistemas digitales a los efectos de la radiación ionizante. Para ello, se planificaron una serie de tareas destinadas a establecer un protocolo y desarrollar un sistema de pruebas válido para realizar campañas de irradiación en los aceleradores instalados en el Centro Nacional de Aceleradores de la Universidad de Sevilla (CNA). Con el fin de alcanzar los objetivos de este proyecto, en los trabajos de la tesis doctoral, se estudiaron y aplicaron técnicas de tolerancia a fallos para sistemas distribuidos, y se comprobó la sensibilidad del sistema con el método basado en la inyección de los fallos por emulación. En concreto, utilizando la herramienta de Emulación Autónoma desarrollada en el grupo DMA de la Universidad Carlos III. A lo largo del desarrollo de la tesis doctoral, en concordancia con las tareas y objetivos del proyecto RENASER+, se han introducido mejoras en el sistema de inyección de fallos transitorios por emulación, para permitir la inyección de fallos múltiples en los elementos de memoria y para permitir el análisis detallado del efecto acumulado de los fallos detectados mediante técnicas de mitigación de fallos, y técnicas de rastreo del fallo y su propagación. Con el objetivo de generar un método integral de análisis, validación y calificación de los sistemas distribuidos robustos, además de inyectar fallos por emulación se indujeron fallos reales en dichos sistemas, mediante el uso del acelerador de partículas tipo ciclotrón del CNA de Sevilla. La evaluación de la sensibilidad del sistema distribuido prototipado requirió una cualificación mediante varias campañas de irradiación, en esta tesis se ha propuesto un método de planificación y realización de una campaña que permite la monitorización continúa del efecto de los fallos y la generación automática de informes finales del proceso completo. En la realización de la tesis doctoral se planteó un objetivo más ambicioso, que consistía en la generación de un método de comprobación continua, durante el tiempo de funcionamiento normal de los sistemas distribuidos, de la presencia de fallos que pudieran causar un mal funcionamiento, e incluso averías graves. Así, se amplió el método de calificación de la robustez de sistemas distribuidos a un método de test on-line de dichos sistemas. Durante el estudio de la robustez de los sistemas distribuidos, principalmente para aplicaciones terrestres, se identificó y estudió el problema de los fallos debidos a envejecimiento de los componentes electrónicos digitales. Por lo tanto, el método propuesto es también adecuado para la realización del test on-line durante el funcionamiento normal del sistema distribuido, para la detección de los fallos procedentes de la radiación ionizante (fallos transitorios) y los fallos debidos al envejecimiento de los dispositivos (fallos permanentes). Los sistemas digitales distribuidos, aparte de los nodos que los componen, tienen un protocolo de comunicación que puede fallar igual que el mismo nodo. En esta tesis doctoral se han estudiado varios protocolos de comunicación utilizados en sistemas distribuidos de aplicaciones aeroespaciales y de automoción; así mismo, se han comparado los protocolos CAN y LIN, y se ha propuesto, diseñado y prototipado un sistema distribuido básico, para la comprobación de la metodología de calificación y test on-line y de las técnicas de endurecimiento propuestas. Como aportación original de esta tesis doctoral, se propone una nueva metodología para comprobar y asegurar el endurecimiento efectivo de un sistema digital distribuido, que incluya cualquier bus de comunicación. Otra contribución original de esta tesis doctoral, consiste en una técnica que permite la comparación de los datos obtenidos tras la irradiación de una forma directa y transparente al sistema de test, basada en un bloque de detección de minoría para rastreo de la propagación de los fallos. Se han analizado distintas tecnologías de FPGA basadas en memoria Flash, con el propósito de una mejor caracterización de los dispositivos a iradiar. Para el sistema final se ha optado por la utilización de una FPGA Igloo de Microsemi®, debido a que es una tecnología más robusta y basada en la tecnología Flash. Se ha desarrollado un software de control para el sistema distribuido, el cual se ejecuta en un microprocesador contenido en uno de los nodos del sistema y el que envía los resultados obtenidos por medio de un bus SPI a un PC. El software automatiza el proceso de recolección de los datos, proporcionando el resultado de cuál de los nodos ha fallado, si se ha recuperado, si ha fallado el sistema de comunicación, etc. Estos resultados permiten validar experimentalmente el método propuesto para los sistemas distribuidos digitales. Además de cumplir con los objetivos del proyecto, se han resuelto dos de los problemas típicos de este tipo de sistemas. Estos corresponden al reset síncrono del sistema y a la monitorización del mantenimiento continuo del tiempo real del sistema. Los distintos bloques propuestos y utilizados en este método integral de calificación de sistemas distribuidos son adecuados para la realización de test on-line de sistemas distribuidos, con el objeto de detectar la presencia de fallos permanentes (debidos al envejecimiento de los dispositivos) y de fallos transitorios (debidos a la radiación ionizante). Finalmente, los últimos aportes de la investigación de este trabajo de tesis, correspondientes al análisis detallado del material del encapsulado del dispositivo a irradiar, y su comportamiento ante el paso de protones, se han podido obtener gracias a la ayuda del Departamento de Ciencia e Ingeniería de los Materiales e Ingeniería Química de la Universidad Carlos III de Madrid y del Centro Nacional de Aceleradores de la Universidad de Sevilla. La mayoría de los resultados parciales y globales de este trabajo de tesis doctoral han sido publicados en Conferencias Internacionales (International On-Line Testing Symposium, Latin American Test Workshop, Digital Circuit and Integrated Systems) y en una revista internacional (IEEE Transactions on Nuclear Science).Nowadays, due to the spread of distributed digital systems in the different technological areas, working in aggressive environments, such as automotive and aerospace applications, hardening techniques against ionizing radiation effects is crucial. This PhD work started with the research Project RENASER+ “TEC2010-22095-C03-03”, supported by the Spanish Ministry of Economy and Competitiveness. The main objective of the sub-project, managed by the Carlos III University of Madrid, was the assessment of the sensitiveness of digital systems against ionizing radiation effects. For this purpose, a number of tasks were planned, aimed to set a protocol and to develop a test system, able to run irradiation campaigns in the accelerators placed in the National Centre of Accelerators, University of Seville (CNA). Furthermore, in order to fulfill the project objectives, the works developed in the PhD were devoted to the study and application of Fault Tolerance Techniques for distributed digital systems, and to the prior analysis of the systems sensitivity with emulation-based fault injection campaigns. This last task used the Autonomous Emulation Tool developed in the DMA research group of Carlos III University of Madrid. Along the development of the work of this PdD, in agreement with the tasks and objectives of RENASER+ Project, new improvements have been proposed, developed and included in the emulation-based transient fault injection tool, in order to enable the injection of multiple faults in memory elements, to enable the detailed tracking of accumulated effect of faults injected and detected by mitigation techniques and to scan the fault propagation within the distributed system. With the main purpose of generating a comprehensive method for the analysis, assessment and qualification of robust digital distributed systems, apart from injecting faults via emulation, real faults have been injected thanks to the use of a particle accelerators, CNA-US cyclotron (proton beam). The assessment of the prototyped distributed digital systems, through proton beam irradiation campaigns, required three irradiation campaigns; in the PhD a planning method was proposed for this type of campaigns on distributed systems, which allows the continuous monitoring of fault effects and automatic final report generation. As a more ambitious objective, in the PhD the method was extended to an on-line test, for the continuous checking during normal operation of distributed digital systems, to detect faults which can cause a wrong behavior or, even, a serious failure. Therefore, the qualification method for the assessment of the robustness of distributed digital systems was extended to an on-line method for these systems. During the robustness study of distributed digital systems another problem was identified and analyzed: the permanent faults appearing in this type of systems due to digital devices aging. Indeed, the proposed method is suitable for on-line testing of the normal operation of the distributed digital systems, for the detection of faults due to ionizing radiation (transient faults) and the detection of faults due to the device aging (permanent faults). Distributed digital systems, apart the nodes composing them, use to include a communication protocol that can suffer also from transient or permanent faults. In this PhD different communication protocols, used in distributed digital systems for aerospace and automotive applications; also, CAN and LIN protocols have been compared and a basic distributed system has been proposed, designed and prototyped, for validating the qualification methodology and the test on-line method, as well as proposed hardening techniques. As original contribution of this PhD, a comprehensive methodology for assessing and assuring the effective hardening of distributed digital systems, including a communication protocol, is proposed. Another original contribution of this PhD is the technique that allows the analysis of the data obtained (transparently and directly whatever the test system used) from any irradiation campaign, based on a minority checker block for the fault tracking. Furthermore, in this PhD work, different Flash-based FPGA technologies have been analyzed, with the purpose of better characterizing the analyzed devices. For the final system implemented, FPGAs Igloo from Microsemi® have been selected, because is a more robust technology. Specific control software has been developed for the distributed system, which was run on a microprocessor included in one node of the system and that sends obtained results through a PCI bus to a Personal Computer. This software automates the data collecting process, telling which node is failing, its recovery state, as well as any communication fault occurring. These tools allow the experimental validation of proposed method for the distributed digital systems. Apart from fulfilling the Project objectives, two typical problems of this type of systems have been solved. They correspond to synchronous initialization of the system and continuous real-time maintenance. Different blocks proposed and used in this comprehensive method for the assessment of the sensitivity of distributed digital systems are also adequate for on-line testing of these systems, with the prupose of detecting permanent faults (due to device aging) and transient faults (due to ionizing radiation). Finally, the latest research works of this PhD work correspond to the detailed analysis of the packaging of the devices to be irradiated, as well as its behavior when proton particles are going through it. These works have been done thanks to the help of Science and Material Engineering and Chemistry Engineering Department of Carlos III University of Madrid, and the National Centre of Accelerators of University of Seville. The majority of partial and global results of this PhD have been published in International Conferences (International On-Line Testing Symposium, Latin American Test Workshop, Digital Circuit and Integrated Systems) and in the IEEE Transactions on Nuclear Science.Esta tesis se inició con el proyecto de investigación RENASER+ “TEC2010-22095-C03-03”, financiado por el Ministerio Español de Ciencia y Tecnología.Programa Oficial de Doctorado en Ingeniería Eléctrica, Electrónica y AutomáticaPresidente: Raoul Velazco.- Secretario: Emilio Olías Ruiz.- Vocal: Miguel Ángel Aguirre Echanov

    Caracterización de la tolerancia a fallos de circuitos implementados en FPGAs

    Get PDF
    213 p.Las FPGAs (Field-Programmable Gate Array) y los SoC (System-on-chip) basados en FPGA son dispositivos electrónicos configurables en campo (in field), que ofrecen la posibilidad de desarrollar un circuito a medida con un tiempo de salida al mercado y unos costes de diseño reducidos en comparación con los ASICs. Debido a la reducción continua del tamaño de los transistores, las prestaciones de estos dispositivos se están incrementando de manera vertiginosa en las últimas décadas, lo que ha generado interés en sectores muy específicos como automoción, ferroviario, industrial, aviónico o aeroespacial. En estos sectores se exige que los diseños estén orientados a confiabilidad y que cumplan con diversas normativas de seguridad, lo que requiere de métodos para la estimación y justificación de la tasa de fallos del sistema. El problema radica en que las FPGAs son especialmente susceptibles al SEU (Single Event Upset) generado por radiación en la memoria de configuración, un tipo de error que provoca la modificación aleatoria de uno o más bits de dicha memoria, afectando al circuito implementado. Por lo tanto, los diseños orientados a confiabilidad que utilicen FPGAs comerciales han de considerar la inclusión de una serie de medidas y mecanismos para mitigar sus efectos. No solo eso, sino que también es necesaria la aplicación de mecanismos de evaluación para corroborar que las estrategias aplicadas permiten alcanzar los objetivos de confiabilidad. De entre los diferentes procedimientos de evaluación aplicables se destaca la emulación de SEUs, que consiste en programar el dispositivo con un archivo intencionadamente corrompido para que se almacene contenido erróneo en la memoria de configuración, lo que genera un efecto análogo al SEU. Se han estudiado diferentes metodologías de emulación en la literatura y se han observado una serie de deficiencias. Por un lado, los métodos de emulación internos (los errores se inyectan desde la propia FPGA) tienen el problema de ser autobloqueantes, ya que el error inyectado puede afectar al propio sistema de emulación. Por otro lado, los sistemas de emulación externos pueden requerir cambios importantes a nivel de hardware.El objetivo principal de este trabajo es el desarrollo de un mecanismo de emulación de SEUs que pueda implementarse de manera sencilla en sistemas ya construidos, cuyo único requisito es que dicho sistema tenga un SoC FPGA del tipo Zynq o similar. Además, se pretenden solventar las deficiencias observadas en la literatura aprovechando las diferentes capacidades que ofrecen los SoCs que combinan FPGA y sistema procesador (PS). Para ello se ha planteado la implementación del sistema de inyección de errores en el PS, ya que de esta manera se previenen las inyecciones de errores bloqueantes. De igual modo, aunque las inyecciones de realicen desde fuera de la FPGA, las inyecciones se llevan a cabo desde el interior del propio chip, evitando la necesidad de añadir modificaciones en el hardware. Se ha propuesto un esquema de verificación universal independiente de la aplicación, de modo que el esquema de test pueda ser adaptado a diferentes sistemas de forma sencilla, independientemente de su complejidad.Una vez planteada la metodología de emulación, se han realizado otras dos aportaciones. En primer lugar se ha comprobado cómo afectan las diferentes decisiones que puedan tomarse en las diferentes etapas de la fase de diseño. Aquí se ha comprobado que un mismo diseño puede tener fluctuaciones de hasta el 50\% si se modifican algunos parámetros. Por otro lado, habiendo observado que los emuladores de SEU existentes en la literatura se centran en el estudio del SBU (Single Bit Upset), se ha propuesto un procedimiento para la estimación de la tasa de fallo en presencia de MCUs (Multiple Cell Upsets)

    Radiation Tolerant Electronics, Volume II

    Get PDF
    Research on radiation tolerant electronics has increased rapidly over the last few years, resulting in many interesting approaches to model radiation effects and design radiation hardened integrated circuits and embedded systems. This research is strongly driven by the growing need for radiation hardened electronics for space applications, high-energy physics experiments such as those on the large hadron collider at CERN, and many terrestrial nuclear applications, including nuclear energy and safety management. With the progressive scaling of integrated circuit technologies and the growing complexity of electronic systems, their ionizing radiation susceptibility has raised many exciting challenges, which are expected to drive research in the coming decade.After the success of the first Special Issue on Radiation Tolerant Electronics, the current Special Issue features thirteen articles highlighting recent breakthroughs in radiation tolerant integrated circuit design, fault tolerance in FPGAs, radiation effects in semiconductor materials and advanced IC technologies and modelling of radiation effects

    Fault and Defect Tolerant Computer Architectures: Reliable Computing With Unreliable Devices

    Get PDF
    This research addresses design of a reliable computer from unreliable device technologies. A system architecture is developed for a fault and defect tolerant (FDT) computer. Trade-offs between different techniques are studied and yield and hardware cost models are developed. Fault and defect tolerant designs are created for the processor and the cache memory. Simulation results for the content-addressable memory (CAM)-based cache show 90% yield with device failure probabilities of 3 x 10(-6), three orders of magnitude better than non fault tolerant caches of the same size. The entire processor achieves 70% yield with device failure probabilities exceeding 10(-6). The required hardware redundancy is approximately 15 times that of a non-fault tolerant design. While larger than current FT designs, this architecture allows the use of devices much more likely to fail than silicon CMOS. As part of model development, an improved model is derived for NAND Multiplexing. The model is the first accurate model for small and medium amounts of redundancy. Previous models are extended to account for dependence between the inputs and produce more accurate results

    Dynamisch partielle Rekonfiguration in fehlertoleranten FPGA-Systemen

    Get PDF
    Korf S. Dynamisch partielle Rekonfiguration in fehlertoleranten FPGA-Systemen. Bielefeld: Universität Bielefeld; 2017.Die Anforderungen an mikroelektronische Systeme steigen kontinuierlich. Rekonfigurierbare Architekturen bieten einen Kompromiss zwischen der Leistungsfähigkeit anwendungsspezifischer Schaltungen (ASICs) und der Flexibilität heutiger Prozessoren. Sogenannte im Feld programmierbare Gatter-Arrays (engl. Field-Programmable Gate Arrays, FPGAs) haben sich hierbei in den letzten Jahrzehnten besonders etabliert. Die Konfigurationsart dynamisch partielle Rekonfiguration (DPR) moderner SRAM-basierter FPGAs verdeutlicht die gewonnene System-Flexibilität. DPR wird in verschiedensten Anwendungsgebieten aus unterschiedlichsten Motivationen heraus eingesetzt. Die Hauptanwendung der DPR ist die Erstellung eines Systems, welches Veränderungen an der Schaltung auf dem FPGA zur Laufzeit erlaubt. Obwohl viele FPGA-Familien bereits seit zwei Jahrzehnten DPR hardwareseitig ermöglichen, ist die Unterstützung durch die Hersteller-Software und insbesondere die Eigenschaften des daraus resultierenden DPR-Systems verbesserungswürdig. Um das Potenzial der verfügbaren Hardware-Flexibilität ausnutzen zu können, wird in dieser Dissertation ein neuer Entwurfsablauf (INDRA 2.0, INtegrated Design Flow for Reconfigurable Architectures) vorgestellt. Dieser Entwurfsablauf ermöglicht die Erstellung eines flexiblen DPR-Systems mit geringem Speicher-, Verwaltungs- und Wartungsaufwand. Für Anwendungen mit Homogenitätsanforderungen wird mit DHHarMa (Design Flow for Homogeneous Hard Macros) ein Entwurfsablauf vorgestellt, der die Transformation eines zunächst inhomogenen Designs in ein homogenes Design ermöglicht. Bei dieser Design-Homogenisierung ergibt sich die Fragestellung nach möglichen Auswirkungen bezüglich des FPGA-Ressourcenbedarfs und der Leistungsfähigkeit durch die einzelnen Homogenisierungsschritte. Die einzelnen DHHarMa-Softwarekomponenten wurden daher detailliert durch verschiedene Bewertungsmaße analysiert. Hierbei konnte festgehalten werden, dass die Homogenisierungsschritte im Mittel einen, teils deutlichen, positiven Einfluss auf den FPGA-Ressourcenbedarf jedoch teils einen geringen negativen Einfluss auf die Leistungsfähigkeit hat. Die verwendete FPGA-Architektur hat hierbei auf beide Größen einen entscheidenden Einfluss. Zusätzlich wird in Anwendungsgebieten mit Strahlungseinfluss die DPR-Funktionalität in Verfahren zur Abschwächung von durch Strahlung induzierten Fehlern eingesetzt. In der Dissertation wird mit der Readback Scrubbing Unit eine Komponente vorgestellt, welche eine Einbitfehlerkorrektur und Zweibitfehlererkennung im FPGA-Konfigurationsspeicher implementiert. Durch integrierte Fehlerstatistikmechanismen wird eine Analyse des Systems zur Laufzeit realisiert. Zusätzlich ist die Erstellung von Readback Scrubbing Schedules möglich, sodass die Fehlererkennung und -korrektur zum einen autonom und zum anderen zur Laufzeit angepasst werden kann. Zusätzlich wird mit OLT(RE)² (On-Line on-demand Testing approach for permanent Radiation Effects in REconfigurable systems) ein Selbsttest für ein SRAM-basiertes FPGA vorgestellt. Dieser Selbsttest ermöglicht zur Systemlaufzeit eine Überprüfung einer FPGA-Fläche vor der Verwendung auf permanente Fehler in den Verdrahtungsressourcen
    corecore