RT Dissertation/Thesis T1 Transient error mitigation by means of approximate logic circuits A1 Sánchez Clemente, Antonio José AB The technological advances in the manufacturing of electronic circuits have allowed togreatly improve their performance, but they have also increased the sensitivity of electronicdevices to radiation-induced errors. Among them, the most common effects arethe SEEs, i.e., electrical perturbations provoked by the strike of high-energy particles,which may modify the internal state of a memory element (SEU) or generate erroneoustransient pulses (SET), among other effects. These events pose a threat for the reliabilityof electronic circuits, and therefore fault-tolerance techniques must be applied todeal with them.The most common fault-tolerance techniques are based in full replication (DWC orTMR). These techniques are able to cover a wide range of failure mechanisms presentin electronic circuits. However, they suffer from high overheads in terms of area andpower consumption. For this reason, lighter alternatives are often sought at the expenseof slightly reducing reliability for the least critical circuit sections. In this context a newparadigm of electronic design is emerging, known as approximate computing, whichis based on improving the circuit performance in change of slight modifications of theintended functionality. This is an interesting approach for the design of lightweightfault-tolerant solutions, which has not been yet studied in depth.The main goal of this thesis consists in developing new lightweight fault-toleranttechniques with partial replication, by means of approximate logic circuits. Thesecircuits can be designed with great flexibility. This way, the level of protection aswell as the overheads can be adjusted at will depending on the necessities of eachapplication. However, finding optimal approximate circuits for a given application isstill a challenge.In this thesis a method for approximate circuit generation is proposed, denotedas fault approximation, which consists in assigning constant logic values to specificcircuit lines. On the other hand, several criteria are developed to generate the mostsuitable approximate circuits for each application, by using this fault approximationmechanism. These criteria are based on the idea of approximating the least testablesections of circuits, which allows reducing overheads while minimising the loss of reliability.Therefore, in this thesis the selection of approximations is linked to testabilitymeasures.The first criterion for fault selection developed in this thesis uses static testabilitymeasures. The approximations are generated from the results of a fault simulation ofthe target circuit, and from a user-specified testability threshold. The amount of approximatedfaults depends on the chosen threshold, which allows to generate approximate circuits with different performances. Although this approach was initially intended forcombinational circuits, an extension to sequential circuits has been performed as well,by considering the flip-flops as both inputs and outputs of the combinational part ofthe circuit. The experimental results show that this technique achieves a wide scalability,and an acceptable trade-off between reliability versus overheads. In addition, itscomputational complexity is very low.However, the selection criterion based in static testability measures has some drawbacks.Adjusting the performance of the generated approximate circuits by means ofthe approximation threshold is not intuitive, and the static testability measures do nottake into account the changes as long as faults are approximated. Therefore, an alternativecriterion is proposed, which is based on dynamic testability measures. With thiscriterion, the testability of each fault is computed by means of an implication-basedprobability analysis. The probabilities are updated with each new approximated fault,in such a way that on each iteration the most beneficial approximation is chosen, thatis, the fault with the lowest probability. In addition, the computed probabilities allowto estimate the level of protection against faults that the generated approximate circuitsprovide. Therefore, it is possible to generate circuits which stick to a target error rate.By modifying this target, circuits with different performances can be obtained. Theexperimental results show that this new approach is able to stick to the target error ratewith reasonably good precision. In addition, the approximate circuits generated withthis technique show better performance than with the approach based in static testabilitymeasures. In addition, the fault implications have been reused too in order toimplement a new type of logic transformation, which consists in substituting functionallysimilar nodes.Once the fault selection criteria have been developed, they are applied to differentscenarios. First, an extension of the proposed techniques to FPGAs is performed,taking into account the particularities of this kind of circuits. This approach has beenvalidated by means of radiation experiments, which show that a partial replication withapproximate circuits can be even more robust than a full replication approach, becausea smaller area reduces the probability of SEE occurrence. Besides, the proposedtechniques have been applied to a real application circuit as well, in particular to themicroprocessor ARM Cortex M0. A set of software benchmarks is used to generatethe required testability measures. Finally, a comparative study of the proposed approacheswith approximate circuit generation by means of evolutive techniques havebeen performed. These approaches make use of a high computational capacity to generatemultiple circuits by trial-and-error, thus reducing the possibility of falling intolocal minima. The experimental results demonstrate that the circuits generated withevolutive approaches are slightly better in performance than the circuits generated withthe techniques here proposed, although with a much higher computational effort.In summary, several original fault mitigation techniques with approximate logiccircuits are proposed. These approaches are demonstrated in various scenarios, showingthat the scalability and adaptability to the requirements of each application are theirmain virtues AB Los avances tecnológicos en la fabricación de circuitos electrónicos han permitido mejoraren gran medida sus prestaciones, pero también han incrementado la sensibilidadde los mismos a los errores provocados por la radiación. Entre ellos, los más comunesson los SEEs, perturbaciones eléctricas causadas por el impacto de partículas de altaenergía, que entre otros efectos pueden modificar el estado de los elementos de memoria(SEU) o generar pulsos transitorios de valor erróneo (SET). Estos eventos suponenun riesgo para la fiabilidad de los circuitos electrónicos, por lo que deben ser tratadosmediante técnicas de tolerancia a fallos.Las técnicas de tolerancia a fallos más comunes se basan en la replicación completadel circuito (DWC o TMR). Estas técnicas son capaces de cubrir una amplia variedadde modos de fallo presentes en los circuitos electrónicos. Sin embargo, presentan unelevado sobrecoste en área y consumo. Por ello, a menudo se buscan alternativas másligeras, aunque no tan efectivas, basadas en una replicación parcial. En este contextosurge una nueva filosofía de diseño electrónico, conocida como computación aproximada,basada en mejorar las prestaciones de un diseño a cambio de ligeras modificacionesde la funcionalidad prevista. Es un enfoque atractivo y poco explorado para el diseñode soluciones ligeras de tolerancia a fallos.El objetivo de esta tesis consiste en desarrollar nuevas técnicas ligeras de toleranciaa fallos por replicación parcial, mediante el uso de circuitos lógicos aproximados. Estoscircuitos se pueden diseñar con una gran flexibilidad. De este forma, tanto el nivel deprotección como el sobrecoste se pueden regular libremente en función de los requisitosde cada aplicación. Sin embargo, encontrar los circuitos aproximados óptimos paracada aplicación es actualmente un reto.En la presente tesis se propone un método para generar circuitos aproximados, denominadoaproximación de fallos, consistente en asignar constantes lógicas a ciertaslíneas del circuito. Por otro lado, se desarrollan varios criterios de selección para, medianteeste mecanismo, generar los circuitos aproximados más adecuados para cadaaplicación. Estos criterios se basan en la idea de aproximar las secciones menos testablesdel circuito, lo que permite reducir los sobrecostes minimizando la perdida defiabilidad. Por tanto, en esta tesis la selección de aproximaciones se realiza a partir demedidas de testabilidad.El primer criterio de selección de fallos desarrollado en la presente tesis hace uso demedidas de testabilidad estáticas. Las aproximaciones se generan a partir de los resultadosde una simulación de fallos del circuito objetivo, y de un umbral de testabilidadespecificado por el usuario. La cantidad de fallos aproximados depende del umbral escogido, lo que permite generar circuitos aproximados con diferentes prestaciones.Aunque inicialmente este método ha sido concebido para circuitos combinacionales,también se ha realizado una extensión a circuitos secuenciales, considerando los biestablescomo entradas y salidas de la parte combinacional del circuito. Los resultadosexperimentales demuestran que esta técnica consigue una buena escalabilidad, y unasprestaciones de coste frente a fiabilidad aceptables. Además, tiene un coste computacionalmuy bajo.Sin embargo, el criterio de selección basado en medidas estáticas presenta algunosinconvenientes. No resulta intuitivo ajustar las prestaciones de los circuitos aproximadosa partir de un umbral de testabilidad, y las medidas estáticas no tienen en cuenta loscambios producidos a medida que se van aproximando fallos. Por ello, se propone uncriterio alternativo de selección de fallos, basado en medidas de testabilidad dinámicas.Con este criterio, la testabilidad de cada fallo se calcula mediante un análisis de probabilidadesbasado en implicaciones. Las probabilidades se actualizan con cada nuevofallo aproximado, de forma que en cada iteración se elige la aproximación más favorable,es decir, el fallo con menor probabilidad. Además, las probabilidades calculadaspermiten estimar la protección frente a fallos que ofrecen los circuitos aproximadosgenerados, por lo que es posible generar circuitos que se ajusten a una tasa de fallosobjetivo. Modificando esta tasa se obtienen circuitos aproximados con diferentes prestaciones.Los resultados experimentales muestran que este método es capaz de ajustarserazonablemente bien a la tasa de fallos objetivo. Además, los circuitos generadoscon esta técnica muestran mejores prestaciones que con el método basado en medidasestáticas. También se han aprovechado las implicaciones de fallos para implementarun nuevo tipo de transformación lógica, consistente en sustituir nodos funcionalmentesimilares.Una vez desarrollados los criterios de selección de fallos, se aplican a distintoscampos. En primer lugar, se hace una extensión de las técnicas propuestas para FPGAs,teniendo en cuenta las particularidades de este tipo de circuitos. Esta técnica se ha validadomediante experimentos de radiación, los cuales demuestran que una replicaciónparcial con circuitos aproximados puede ser incluso más robusta que una replicacióncompleta, ya que un área más pequeña reduce la probabilidad de SEEs. Por otro lado,también se han aplicado las técnicas propuestas en esta tesis a un circuito de aplicación real, el microprocesador ARM Cortex M0, utilizando un conjunto de benchmarkssoftware para generar las medidas de testabilidad necesarias. Por ´último, se realiza unestudio comparativo de las técnicas desarrolladas con la generación de circuitos aproximadosmediante técnicas evolutivas. Estas técnicas hacen uso de una gran capacidadde cálculo para generar múltiples circuitos mediante ensayo y error, reduciendo la posibilidadde caer en algún mínimo local. Los resultados confirman que, en efecto, loscircuitos generados mediante técnicas evolutivas son ligeramente mejores en prestacionesque con las técnicas aquí propuestas, pero con un coste computacional muchomayor.En definitiva, se proponen varias técnicas originales de mitigación de fallos mediantecircuitos aproximados. Se demuestra que estas técnicas tienen diversas aplicaciones,haciendo de la flexibilidad y adaptabilidad a los requisitos de cada aplicaciónsus principales virtudes. YR 2017 FD 2017-07-19 LK https://hdl.handle.net/10016/26338 UL https://hdl.handle.net/10016/26338 LA eng NO Mención Internacional en el título de doctor DS e-Archivo RD 27 jul. 2024