224 research outputs found
Hardware-Friendly Model Compression techniques for Deep Learning Accelerators
The objective of the proposed research is to introduce solutions to make energy-efficient \gls{dnn} accelerators to be deployable on edge devices through developing hardware-aware \gls{dnn} compression methods. The rising popularity of intelligent mobile devices and the computational cost of deep learning-based models call for efficient and accurate on-device inference schemes. In particular, we proposed four compression techniques for energy and memory efficient \gls{dnn} computing. In the first method, \gls{lgps}, we present a hardware-aware pruning method where the locations of non-zero weights are derived in real-time from a \gls{lfsr}. Using the proposed method, we demonstrate a total saving of energy and area up to 63.96\% and 64.23\% for VGG-16 network on down-sampled ImageNet, respectively for iso-compression-rate and iso-accuracy. Secondly, We achieved ultra-low bit-precision deep learning model by developing a quantization scheme through knowledge distillation and gradual quantization for pruned network. Thirdly, we propose a novel model compression scheme that allows inference to be carried out using bit-level sparsity, which can be efficiently implemented using in-memory computing macros. We introduce a method called BitS-Net to leverage the benefits of bit-sparsity (where the number of zeros is more than number of ones in binary representation of weight/activation values) when applied to Compute-In-Memory (\gls{cim}) with Resistive Random Access Memory (\gls{rram}) to develop energy efficient \gls{dnn} accelerators operating in the inference mode. We demonstrate that BitS-Net improves the energy efficiency by up to 5x for ResNet models on the ImageNet dataset.
In the last part, to achieve highly energy-efficient DNN, we introduce a novel twofold sparsity method (Twofold Sparsity, twofoldS-Net) to sparsify the DNN models in bit- and network-level, simultaneously. We added two separate regularizations to the loss function in order to achieve bit- and network-level sparsity at the same time. We sparsify the model in network-level, by adding a mask generated by \gls{lfsr}. For bit-level sparsity, we quantize the network to 8-bit representation in two's complement format. During inference we take advantage of \gls{cim} architecture and \gls{lfsr} indexing. We have shown that by using our proposed method we are able to sparsify the network and design a highly energy-efficient deep learning accelerator to eventually bring \gls{ai} to our daily lives.Ph.D
On designing hardware accelerator-based systems: interfaces, taxes and benefits
Complementary Metal Oxide Semiconductor (CMOS) Technology scaling has slowed down. One promising approach to sustain the historic performance improvement of computing systems is to utilize hardware accelerators. Today, many commercial computing systems integrate one or more accelerators, with each accelerator optimized to efficiently execute specific tasks.
Over the years, there has been a substantial amount of research on designing hardware accelerators for machine learning (ML) training and inference tasks. Hardware accelerators are also widely employed to accelerate data privacy and security algorithms. In particular, there is currently a growing interest in the use of hardware accelerators for accelerating homomorphic encryption (HE) based privacy-preserving computing.
While the use of hardware accelerators is promising, a realistic end-to-end evaluation of an accelerator when integrated into the full system often reveals that the benefits of an accelerator are not always as expected. Simply assessing the performance of the accelerated portion of an application, such as the inference kernel in ML applications, during performance analysis can be misleading. When designing an accelerator-based system, it is critical to evaluate the system as a whole and account for all the accelerator taxes.
In the first part of our research, we highlight the need for a holistic, end-to-end analysis of workloads using ML and HE applications. Our evaluation of an ML application for a database management system (DBMS) shows that the benefits of offloading ML inference to accelerators depend on several factors, including backend hardware, model complexity, data size, and the level of integration between the ML inference pipeline and the DBMS. We also found that the end-to-end performance improvement is bottlenecked by data retrieval and pre-processing, as well as inference. Additionally, our evaluation of an HE video encryption application shows that while HE client-side operations, i.e., message-to- ciphertext and ciphertext-to-message conversion operations, are bottlenecked by number theoretic transform (NTT) operations, accelerating NTT in hardware alone is not sufficient to get enough application throughput (frame rate per second) improvement. We need to address all bottlenecks such as error sampling, encryption, and decryption in message-to-ciphertext and ciphertext-to-message conversion pipeline.
In the second part of our research, we address the lack of a scalable evaluation infrastructure for building and evaluating accelerator-based systems. To solve this problem, we propose a robust and scalable software-hardware framework for accelerator evaluation, which uses an open-source RISC-V based System-on-Chip (SoC) design called BlackParrot. This framework can be utilized by accelerator designers and system architects to perform an end-to-end performance analysis of coherent and non-coherent accelerators while carefully accounting for the interaction between the accelerator and the rest of the system.
In the third part of our research, we present RISE, which is a full RISC-V SoC designed to efficiently perform message-to-ciphertext and ciphertext-to-message conversion operations. RISE comprises of a BlackParrot core and an efficient custom-designed accelerator tailored to accelerate end-to-end message-to-ciphertext and ciphertext-to-message conversion operations. Our RTL-based evaluation demonstrates that RISE improves the throughput of the video encryption application by 10x-27x for different frame resolutions
MOCAST 2021
The 10th International Conference on Modern Circuit and System Technologies on Electronics and Communications (MOCAST 2021) will take place in Thessaloniki, Greece, from July 5th to July 7th, 2021. The MOCAST technical program includes all aspects of circuit and system technologies, from modeling to design, verification, implementation, and application. This Special Issue presents extended versions of top-ranking papers in the conference. The topics of MOCAST include:Analog/RF and mixed signal circuits;Digital circuits and systems design;Nonlinear circuits and systems;Device and circuit modeling;High-performance embedded systems;Systems and applications;Sensors and systems;Machine learning and AI applications;Communication; Network systems;Power management;Imagers, MEMS, medical, and displays;Radiation front ends (nuclear and space application);Education in circuits, systems, and communications
Approximate hardening techniques for digital signal processing circuits against radiation-induced faults
RESUMEN NO TÉCNICO.
Se llama radiación al proceso por el cual una partícula o una onda es capaz de
transmitir energía a través del espacio o un medio material. Si la energía transmitida
es suficientemente alta, la radiación puede provocar que algunos electrones se desplacen
de su posición, en un proceso llamado ionización.
La radiación ionizante puede provocar problemas a los seres vivos, pero también a
los diversos materiales que componen los sistemas eléctricos y electrónicos utilizados en
entornos sujetos a radiación. Existen en La Tierra varios procesos que emiten radiación
ionizante, como la obtención de energía en centrales nucleares o ciertos procedimientos
médicos. Sin embargo, las fuentes de radiación más importantes se sitúan más allá de
nuestra atmósfera y afectan fundamentalmente a sistemas aeroespaciales y vuelos de gran
altitud.
Debido a la radiación, los sistemas electrónicos que se exponen a cualquiera de estas
fuentes sufren degradación en sus propiedades a lo largo del tiempo y pueden sufrir fallos
catastróficos que acorten su vida útil. El envejecimiento de los componentes se produce
por acumulación de carga eléctrica en el material, lo que se conoce como Dosis Ionizante
Total (TID por sus siglas en inglés), o por distorsiones en el silicio sobre el que se fabrican
los circuitos, lo que se conoce como Daño por Desplazamiento (DD). Una única partícula
ionizante puede, sin embargo, provocar también diversos tipos de fallos transitorios o
permanentes en los componentes de un circuito, generalmente por un cambio de estado
en un elemento de memoria o fallos destructivos en un transistor. Los diferentes tipos de
fallos producidos en circuitos por la acción de una única partícula ionizante se engloban
en la categoría de Efectos de Evento Único (SEE por sus siglas en inglés).
Para proteger los sistemas electrónicos frente a los efectos de la radiación se suele
recurrir a un conjunto de técnicas que llamamos endurecimiento frente a radiación.
Los procedimientos tradicionales de endurecimiento han consistido en la fabricación de
componentes electrónicos mediante procesos especiales que les confieran una resistencia
inherente frente a la TID, el DD y los SEE. A este conjunto de técnicas de endurecimiento
se lo conoce como Endurecimiento frente a la Radiación Por Proceso (RHBP por sus
siglas en inglés). Estos procedimientos suelen aumentar el coste de los componentes y
empeorar su rendimiento con respecto a los componentes que usamos en nuestros sistemas
electrónicos cotidianos.
En oposición a las técnicas RHBP encontramos las técnicas de Endurecimiento
frente a la Radiación Por Diseño (RHBD por sus siglas en inglés). Estas técnicas
permiten detectar y tratar de corregir fallos producidos por la radiación introduciendo
modificaciones en los circuitos. Estas modificaciones suelen aumentar la complejidad de
los circuitos que se quiere endurecer, haciendo que consuman más energía, ocupen más
espacio o funcionen a menor frecuencia, pero estas desventajas se pueden compensar con la disminución de los costes de fabricación y la mejora en las prestaciones que aportan
los sistemas modernos.
En un intento por reducir el coste de las misiones espaciales y mejorar sus
capacidades, en los últimos años se trata de introducir un mayor número de Componentes
Comerciales (COTS por sus siglas en inglés), endurecidos mediante técnicas RHBD.
Las técnicas RHBD habituales se basan en la adición de elementos redundantes
idénticos al original, cuyos resultados se pueden comparar entre sí para obtener
información acerca de la existencia de un error (si sólo se usa un circuito redundante,
Duplicación Con Comparación [DWC]) o llegar incluso a corregir un error detectado de
manera automática, si se emplean dos o más réplicas redundantes, siendo el caso más
habitual la Redundancia Modular Triple (TMR) en todas sus variantes.
El trabajo desarrollado en esta Tesis gira en torno a las técnicas de endurecimiento
RHBD de sistemas electrónicos comerciales. En concreto, se trata de proponer y
caracterizar nuevas técnicas de endurecimiento que permitan reducir el alto consumo
de recursos de las utilizadas habitualmente. Para ello, se han desarrollado técnicas de
endurecimiento que aprovechan cálculos aproximados para detectar y corregir fallos en
circuitos electrónicos digitales para procesamiento de señal implementados en FPGA
comerciales, dispositivos que permiten implementar circuitos electrónicos digitales a
medida y reconfigurarlos tantas veces como se quiera.
A lo largo de esta Tesis se han desarrollado diferentes circuitos de prueba endurecidos
mediante TMR y se ha comparado su rendimiento con los de otras técnicas de
Redundancia Aproximada, en concreto la Redundancia de Precisión Reducida (RPR),
la Redundancia de Resolución Reducida (RRR) y la Redundancia Optimizada para
Algoritmos Compuestos (ORCA):
• La Redundancia de Precisión Reducida se basa en la utilización de dos réplicas
redundantes que calculan resultados con un menor número de bits que el circuito
original. De este modo se pueden disminuir los recursos necesitados por el circuito,
aunque las correcciones en caso de fallo son menos precisas que en el TMR. En este
trabajo exploramos también la RPR Escalada como un método de obtener un balance
óptimo entre la precisión y el consumo de recursos.
• La Redundancia de Resolución Reducida es una técnica propuesta originalmente en
esta tesis. Está pensada para algoritmos que trabajan con información en forma de
paquetes cuyos datos individuales guardan alguna relación entre sí. Las réplicas
redundantes calculan los resultados con una fracción de los datos de entrada originales,
lo que reduce su tamaño y permite correcciones aproximadas en caso de fallo.
• La Redundancia Optimizada para Algoritmos Compuestos es también una aportación
original de esta tesis. Está indicada para algoritmos cuyo resultado final puede
expresarse como la composición de resultados intermedios calculados en etapas
anteriores. Las réplicas redundantes se forman como bloques que calculan resultados intermedios y el resultado de su composición se puede comparar con el resultado
original. Este método permite reducir recursos y proporciona resultados de corrección
exactos en la mayor parte de los casos, lo que supone una mejora importante con
respecto a las correcciones de los métodos anteriores.
La eficacia de las técnicas de endurecimiento desarrolladas se ha probado mediante
experimentos de inyección de fallos y mediante ensayos en instalaciones de aceleradores
de partículas preparadas para la irradiación de dispositivos electrónicos. En concreto, se
han realizado ensayos de radiación con protones en el Centro Nacional de Aceleradores
(CNA España), el Paul Scherrer Institut (PSI, Suiza) y ensayos de radiación con neutrones
en el laboratorio ISIS Neutron and Muon Source (ChipIR, Reino Unido).RESUMEN TÉCNICO.
Se llama radiación al proceso por el cual una partícula o una onda es capaz de
transmitir energía a través del espacio o un medio material. Si la energía transmitida
es suficientemente alta, la radiación puede provocar que algunos electrones se desplacen
de su posición, en un proceso llamado ionización.
La radiación ionizante puede provocar problemas a los seres vivos, pero también a
los diversos materiales que componen los sistemas eléctricos y electrónicos utilizados en
entornos sujetos a radiación. Existen en La Tierra varios procesos que emiten radiación
ionizante, como la obtención de energía en centrales nucleares o ciertos procedimientos
médicos. Sin embargo, las fuentes de radiación más importantes se sitúan más allá de
nuestra atmósfera y afectan fundamentalmente a sistemas aeroespaciales y vuelos de gran
altitud.
Debido a la radiación, los sistemas electrónicos que se exponen a cualquiera de estas
fuentes sufren degradación en sus propiedades a lo largo del tiempo y pueden sufrir fallos
catastróficos que acorten su vida útil. El envejecimiento de los componentes se produce
por acumulación de carga eléctrica en el material, lo que se conoce como Dosis Ionizante
Total (TID, Total Ionizing Dose), o por distorsiones acumuladas en la matriz cristalina del
silicio en el que se fabrican los circuitos, lo que se conoce como Daño por Desplazamiento
(DD, Displacement Damage). Una única partícula ionizante puede, sin embargo, provocar
también diversos tipos de fallos transitorios o permanentes en los componentes de un
circuito, generalmente por un cambio de estado en un elemento de memoria o la activación
de circuitos parasitarios en un transistor. Los diferentes tipos de fallos producidos en
circuitos por la acción de una única partícula ionizante se engloban en la categoría de
Efectos de Evento Único (SEE, Single Event Effects).
Para proteger los sistemas electrónicos frente a los efectos de la radiación se suele
recurrir a un conjunto de técnicas que llamamos endurecimiento frente a radiación.
Los procedimientos tradicionales de endurecimiento han consistido en la fabricación de
componentes electrónicos mediante procesos especiales que les confieran una resistencia
inherente frente a la TID, el DD y los SEE. A este conjunto de técnicas de endurecimiento
se lo conoce como Endurecimiento frente a la Radiación Por Proceso (RHBP, por sus
siglas en inglés). Estos procedimientos suelen aumentar el coste de los componentes y
empeorar su rendimiento con respecto a los componentes que usamos en nuestros sistemas
electrónicos cotidianos.
En oposición a las técnicas RHBP encontramos las técnicas de Endurecimiento
frente a la Radiación Por Diseño (RHBD, por sus siglas en inglés). Estas técnicas
permiten detectar y tratar de corregir fallos producidos por la radiación introduciendo
modificaciones en los circuitos. Estas modificaciones suelen aumentar la complejidad de
los circuitos que se quiere endurecer, haciendo que consuman más energía, ocupen más espacio o funcionen a menor frecuencia, pero estas desventajas se pueden compensar con
la disminución de los costes de fabricación y la mejora en las prestaciones que aportan
los sistemas modernos.
En un intento por reducir el coste de las misiones espaciales y mejorar sus
capacidades, en los últimos años se trata de introducir un mayor número de Componentes
Comerciales (COTS, por sus siglas en inglés), endurecidos mediante técnicas RHBD.
Las técnicas RHBD habituales se basan en la adición de elementos redundantes
idénticos al original, cuyos resultados se pueden comparar entre sí para obtener
información acerca de la existencia de un error (si sólo se usa un circuito redundante,
Duplicación Con Comparación [DWC, Duplication With Comparison]) o llegar incluso
a corregir un error detectado de manera automática, si se emplean dos o más réplicas
redundantes, siendo el caso más habitual la Redundancia Modular Triple (TMR, Triple
Modular Redundancy) en todas sus variantes.
El trabajo desarrollado en esta Tesis gira en torno a las técnicas de endurecimiento
RHBD de sistemas electrónicos comerciales. En concreto, se trata de proponer y
caracterizar nuevas técnicas de endurecimiento que permitan reducir el alto consumo de
recursos de las técnicas utilizadas habitualmente. Para ello, se han desarrollado técnicas
de endurecimiento que aprovechan cálculos aproximados para detectar y corregir fallos
en circuitos electrónicos digitales para procesamiento de señal implementados en FPGA
(Field Programmable Gate Array) comerciales.
Las FPGA son dispositivos que permiten implementar circuitos electrónicos digitales
diseñados a medida y reconfigurarlos tantas veces como se quiera. Su capacidad de
reconfiguración y sus altas prestaciones las convierten en dispositivos muy interesantes
para aplicaciones espaciales, donde realizar cambios en los diseños no suele ser posible
una vez comenzada la misión. La reconfigurabilidad de las FPGA permite corregir en
remoto posibles problemas en el diseño, pero también añadir o modificar funcionalidades
a los circuitos implementados en el sistema.
La eficacia de las técnicas de endurecimiento desarrolladas e implementadas en
FPGAs se ha probado mediante experimentos de inyección de fallos y mediante
ensayos en instalaciones de aceleradores de partículas preparadas para la irradiación de
dispositivos electrónicos.
Los ensayos de radiación son el estándar industrial para probar el comportamiento de
todos los sistemas electrónicos que se envían a una misión espacial. Con estos ensayos
se trata de emular de manera acelerada las condiciones de radiación a las que se verán
sometidos los sistemas una vez hayan sido lanzados y determinar su resistencia a TID, DD
y/o SEEs. Dependiendo del efecto que se quiera observar, las partículas elegidas para la
radiación varían, pudiendo elegirse entre electrones, neutrones, protones, iones pesados,
fotones... Particularmente, los ensayos de radiación realizados en este trabajo, tratándose
de un estudio de técnicas de endurecimiento para sistemas electrónicos digitales, están
destinados a establecer la sensibilidad de los circuitos estudiados frente a un tipo de SEE conocido como Single Event Upset (SEU), en el que la radiación modifica el valor lógico
de un elemento de memoria. Para ello, hemos recurrido a experimentos de radiación con
protones en el Centro Nacional de Aceleradores (CNA, España), el Paul Scherrer Institut
(PSI, Suiza) y experimentos de radiación con neutrones en el laboratorio ISIS Neutron
and Muon Source (ChipIR, Reino Unido).
La sensibilidad de un circuito suele medirse en términos de su sección eficaz (cross
section) con respecto a una partícula determinada, calculada como el cociente entre el
número de fallos encontrados y el número de partículas ionizantes por unidad de área
utilizadas en la campaña de radiación. Esta métrica sirve para estimar el número de
fallos que provocará la radiación a lo largo de la vida útil del sistema, pero también
para establecer comparaciones que permitan conocer la eficacia de los sistemas de
endurecimiento implementados y ayudar a mejorarlos.
El método de inyección de fallos utilizado en esta Tesis como complemento a la
radiación se basa en modificar el valor lógico de los datos almacenados en la memoria de
configuración de la FPGA. En esta memoria se guarda la descripción del funcionamiento
del circuito implementado en la FPGA, por lo que modificar sus valores equivale a
modificar el circuito. En FPGAs que utilizan la tecnología SRAM en sus memorias de
configuración, como las utilizadas en esta Tesis, este es el componente más sensible a la
radiación, por lo que es posible comparar los resultados de la inyección de fallos y de las
campañas de radiación. Análogamente a la sección eficaz, en experimentos de inyección
de fallos podemos hablar de la tasa de error, calculada como el cociente entre el número
de fallos encontrados y la cantidad de bits de memoria inyectados.
A lo largo de esta Tesis se han desarrollado diferentes circuitos endurecidos mediante
Redundancia Modular Triple y se ha comparado su rendimiento con los de otras
técnicas de Redundancia Aproximada, en concreto la Redundancia de Precisión Reducida
(RPR), la Redundancia de Resolución Reducida (RRR) y la Redundancia Optimizada
para Algoritmos Compuestos (ORCA). Estas dos últimas son contribuciones originales
presentadas en esta Tesis.
• La Redundancia de Precisión Reducida se basa en la utilización de dos réplicas
redundantes que calculan resultados con un menor número de bits que el circuito
original. Para cada dato de salida se comparan el resultado del circuito original y
los dos resultados de precisión reducida. Si los dos resultados de precisión reducida
son idénticos y su diferencia con el resultado de precisión completa es mayor que un
determinado valor umbral, se considera que existe un fallo en el circuito original y se
utiliza el resultado de precisión reducida para corregirlo. En cualquier otro caso, el
resultado original se considera correcto, aunque pueda contener errores tolerables por
debajo del umbral de comparación. En comparación con un circuito endurecido con
TMR, los diseños RPR utilizan menos recursos, debido a la reducción en la precisión
de los cálculos de los circuitos redundantes. No obstante, esto también afecta a la
calidad de los resultados obtenidos cuando se corrige un error. En este trabajo exploramos también la RPR Escalada como un método de obtener
un balance óptimo entre la precisión y el consumo de recursos. En esta variante de
la técnica RPR, los resultados de cada etapa de cálculo en los circuitos redundantes
tienen una precisión diferente, incrementándose hacia las últimas etapas, en las que el
resultado tiene la misma precisión que el circuito original. Con este método se logra
incrementar la calidad de los datos corregidos a la vez que se reducen los recursos
utilizados por el endurecimiento.
Los resultados de las campañas de radiación y de inyección de fallos realizadas sobre
los diseños endurecidos con RPR sugieren que la reducción de recursos no sólo es
beneficiosa por sí misma en términos de recursos y energía utilizados por el sistema,
sino que también conlleva una reducción de la sensibilidad de los circuitos, medida
tanto en cross section como en tasa de error.
• La Redundancia de Resolución Reducida es una técnica propuesta originalmente en
esta tesis. Está indicada para algoritmos que trabajan con información en forma de
paquetes cuyos datos individuales guardan alguna relación entre sí, como puede ser un
algoritmo de procesamiento de imágenes. En la técnica RRR, se añaden dos circuitos
redundantes que calculan los resultados con una fracción de los datos de entrada
originales. Tras el cálculo, los resultados diezmados pueden interpolarse para obtener
un resultado aproximado del mismo tamaño que el resultado del circuito original.
Una vez interpolados, los resultados de los tres circuitos pueden ser comparados para
detectar y corregir fallos de una manera similar a la que se utiliza en la técnica RPR.
Aprovechando las características del diseño hardware, la disminución de la cantidad
de datos que procesan los circuitos de Resolución Reducida puede traducirse en una
disminución de recursos, en lugar de una disminución de tiempo de cálculo. De esta
manera, la técnica RRR es capaz de reducir el consumo de recursos en comparación a
los que se necesitarían si se utilizase un endurecimiento TMR.
Los resultados de los experimentos realizados en diseños endurecidos mediante
Redundancia de Resolución Reducida sugieren que la técnica es eficaz en reducir los
recursos utilizados y, al igual que pasaba en el caso de la Redundancia de Precisión
Reducida, también su sensibilidad se ve reducida, comparada con la sensibilidad del
mismo circuito endurecido con Redundancia Modular Triple. Además, se observa una
reducción notable de la sensibilidad de los circuitos frente a errores no corregibles,
comparado con el mismo resultado en TMR y RPR. Este tipo de error engloba aquellos
producidos por fallos en la lógica de comparación y votación o aquellos en los que un
único SEU produce fallos en los resultados de dos o más de los circuitos redundantes
al mismo tiempo, lo que se conoce como Fallo en Modo Común (CMF). No obstante,
también se observa que la calidad de las correcciones realizadas utilizando este método
empeora ligeramente.
• La Redundancia Optimizada para Algoritmos Compuestos es también una aportación
original de esta tesis. Está indicada para algoritmos cuyo resultado final puede expresarse como la composición de resultados intermedios calculados en etapas
anteriores. Para endurecer un circuito usando esta técnica, se añaden dos circuitos
redundantes diferentes entre sí y que procesan cada uno una parte diferente del conjunto
de datos de entrada. Cada uno de estos circuitos aproximados calcula un resultado
intermedio. La composición de los dos resultados intermedios da un resultado idéntico
al del circuito original en ausencia de fallos.
La detección de fallos se realiza comparando el resultado del circuito original con el
de la composición de los circuitos aproximados. En caso de ser diferentes, se puede
determinar el origen del fallo comparando los resultados aproximados intermedios
frente a un umbral. Si la diferencia entre los resultados intermedios supera el umbral,
significa que el fallo se ha producido en uno de los circuitos aproximados y que el
resultado de la composición no debe ser utilizado en la salida. Al igual que ocurre
en la Redundancia de Precisión Reducida y la Redundancia de Resolución Reducida,
utilizar un umbral de comparación implica la existencia de errores tolerables. No
obstante, esta técnica de endurecimiento permite realizar correcciones exactas, en
lugar de aproximadas, en la mayor parte de los casos, lo que mejora la calidad de
los resultados con respecto a otras técnicas de endurecimiento aproximadas, al tiempo
que reduce los recursos utilizados por el sistema endurecido en comparación con las
técnicas tradicionales.
Los resultados de los experimentos realizados con diseños endurecidos mediante
Redundancia Optimizada para Algoritmos Compuestos confirman que esta técnica de
endurecimiento es capaz de producir correcciones exactas en un alto porcentaje de los
eventos. Su sensibilidad frente a todo tipo de errores y frente a errores no corregibles
también se ve disminuida, comparada con la obtenida con Redundancia Modular Triple.
Los resultados presentados en esta Tesis respaldan la idea de que las técnicas de
Redundancia Aproximada son alternativas viables a las técnicas de endurecimiento frente
a la radiación habituales, siempre que
LIPIcs, Volume 274, ESA 2023, Complete Volume
LIPIcs, Volume 274, ESA 2023, Complete Volum
Degradation Models and Optimizations for CMOS Circuits
Die Gewährleistung der Zuverlässigkeit von CMOS-Schaltungen ist derzeit eines der größten Herausforderungen beim Chip- und Schaltungsentwurf. Mit dem Ende der Dennard-Skalierung erhöht jede neue Generation der Halbleitertechnologie die elektrischen Felder innerhalb der Transistoren. Dieses stärkere elektrische Feld stimuliert die Degradationsphänomene (Alterung der Transistoren, Selbsterhitzung, Rauschen, usw.), was zu einer immer stärkeren Degradation (Verschlechterung) der Transistoren führt. Daher erleiden die Transistoren in jeder neuen Technologiegeneration immer stärkere Verschlechterungen ihrer elektrischen Parameter. Um die Funktionalität und Zuverlässigkeit der Schaltung zu wahren, wird es daher unerlässlich, die Auswirkungen der geschwächten Transistoren auf die Schaltung präzise zu bestimmen.
Die beiden wichtigsten Auswirkungen der Verschlechterungen sind ein verlangsamtes Schalten, sowie eine erhöhte Leistungsaufnahme der Schaltung. Bleiben diese Auswirkungen unberücksichtigt, kann die verlangsamte Schaltgeschwindigkeit zu Timing-Verletzungen führen (d.h. die Schaltung kann die Berechnung nicht rechtzeitig vor Beginn der nächsten Operation abschließen) und die Funktionalität der Schaltung beeinträchtigen (fehlerhafte Ausgabe, verfälschte Daten, usw.). Um diesen Verschlechterungen der Transistorparameter im Laufe der Zeit Rechnung zu tragen, werden Sicherheitstoleranzen eingeführt. So wird beispielsweise die Taktperiode der Schaltung künstlich verlängert, um ein langsameres Schaltverhalten zu tolerieren und somit Fehler zu vermeiden. Dies geht jedoch auf Kosten der Performanz, da eine längere Taktperiode eine niedrigere Taktfrequenz bedeutet. Die Ermittlung der richtigen Sicherheitstoleranz ist entscheidend. Wird die Sicherheitstoleranz zu klein bestimmt, führt dies in der Schaltung zu Fehlern, eine zu große Toleranz führt zu unnötigen Performanzseinbußen.
Derzeit verlässt sich die Industrie bei der Zuverlässigkeitsbestimmung auf den schlimmstmöglichen Fall (maximal gealterter Schaltkreis, maximale Betriebstemperatur bei minimaler Spannung, ungünstigste Fertigung, etc.). Diese Annahme des schlimmsten Falls garantiert, dass der Chip (oder integrierte Schaltung) unter allen auftretenden Betriebsbedingungen funktionsfähig bleibt. Darüber hinaus ermöglicht die Betrachtung des schlimmsten Falles viele Vereinfachungen. Zum Beispiel muss die eigentliche Betriebstemperatur nicht bestimmt werden, sondern es kann einfach die schlimmstmögliche (sehr hohe) Betriebstemperatur angenommen werden.
Leider lässt sich diese etablierte Praxis der Berücksichtigung des schlimmsten Falls (experimentell oder simulationsbasiert) nicht mehr aufrechterhalten. Diese Berücksichtigung bedingt solch harsche Betriebsbedingungen (maximale Temperatur, etc.) und Anforderungen (z.B. 25 Jahre Betrieb), dass die Transistoren unter den immer stärkeren elektrischen Felder enorme Verschlechterungen erleiden. Denn durch die Kombination an hoher Temperatur, Spannung und den steigenden elektrischen Feldern bei jeder Generation, nehmen die Degradationphänomene stetig zu. Das bedeutet, dass die unter dem schlimmsten Fall bestimmte Sicherheitstoleranz enorm pessimistisch ist und somit deutlich zu hoch ausfällt. Dieses Maß an Pessimismus führt zu erheblichen Performanzseinbußen, die unnötig und demnach vermeidbar sind. Während beispielsweise militärische Schaltungen 25 Jahre lang unter harschen Bedingungen arbeiten müssen, wird Unterhaltungselektronik bei niedrigeren Temperaturen betrieben und muss ihre Funktionalität nur für die Dauer der zweijährigen Garantie aufrechterhalten. Für letzteres können die Sicherheitstoleranzen also deutlich kleiner ausfallen, um die Performanz deutlich zu erhöhen, die zuvor im Namen der Zuverlässigkeit aufgegeben wurde.
Diese Arbeit zielt darauf ab, maßgeschneiderte Sicherheitstoleranzen für die einzelnen Anwendungsszenarien einer Schaltung bereitzustellen. Für fordernde Umgebungen wie Weltraumanwendungen (wo eine Reparatur unmöglich ist) ist weiterhin der schlimmstmögliche Fall relevant. In den meisten Anwendungen, herrschen weniger harsche Betriebssbedingungen (z.B. sorgen Kühlsysteme für niedrigere Temperaturen). Hier können Sicherheitstoleranzen maßgeschneidert und anwendungsspezifisch bestimmt werden, sodass Verschlechterungen exakt toleriert werden können und somit die Zuverlässigkeit zu minimalen Kosten (Performanz, etc.) gewahrt wird.
Leider sind die derzeitigen Standardentwurfswerkzeuge für diese anwendungsspezifische Bestimmung der Sicherheitstoleranz nicht gut gerüstet. Diese Arbeit zielt darauf ab, Standardentwurfswerkzeuge in die Lage zu versetzen, diesen Bedarf an Zuverlässigkeitsbestimmungen für beliebige Schaltungen unter beliebigen Betriebsbedingungen zu erfüllen. Zu diesem Zweck stellen wir unsere Forschungsbeiträge als vier Schritte auf dem Weg zu anwendungsspezifischen Sicherheitstoleranzen vor:
Schritt 1 verbessert die Modellierung der Degradationsphänomene (Transistor-Alterung, -Selbsterhitzung, -Rauschen, etc.). Das Ziel von Schritt 1 ist es, ein umfassendes, einheitliches Modell für die Degradationsphänomene zu erstellen. Durch die Verwendung von materialwissenschaftlichen Defektmodellierungen werden die zugrundeliegenden physikalischen Prozesse der Degradationsphänomena modelliert, um ihre Wechselwirkungen zu berücksichtigen (z.B. Phänomen A kann Phänomen B beschleunigen) und ein einheitliches Modell für die simultane Modellierung verschiedener Phänomene zu erzeugen. Weiterhin werden die jüngst entdeckten Phänomene ebenfalls modelliert und berücksichtigt. In Summe, erlaubt dies eine genaue Degradationsmodellierung von Transistoren unter gleichzeitiger Berücksichtigung aller essenziellen Phänomene.
Schritt 2 beschleunigt diese Degradationsmodelle von mehreren Minuten pro Transistor (Modelle der Physiker zielen auf Genauigkeit statt Performanz) auf wenige Millisekunden pro Transistor. Die Forschungsbeiträge dieser Dissertation beschleunigen die Modelle um ein Vielfaches, indem sie zuerst die Berechnungen so weit wie möglich vereinfachen (z.B. sind nur die Spitzenwerte der Degradation erforderlich und nicht alle Werte über einem zeitlichen Verlauf) und anschließend die Parallelität heutiger Computerhardware nutzen. Beide Ansätze erhöhen die Auswertungsgeschwindigkeit, ohne die Genauigkeit der Berechnung zu beeinflussen.
In Schritt 3 werden diese beschleunigte Degradationsmodelle in die Standardwerkzeuge integriert. Die Standardwerkzeuge berücksichtigen derzeit nur die bestmöglichen, typischen und schlechtestmöglichen Standardzellen (digital) oder Transistoren (analog). Diese drei Typen von Zellen/Transistoren werden von der Foundry (Halbleiterhersteller) aufwendig experimentell bestimmt. Da nur diese drei Typen bestimmt werden, nehmen die Werkzeuge keine Zuverlässigkeitsbestimmung für eine spezifische Anwendung (Temperatur, Spannung, Aktivität) vor. Simulationen mit Degradationsmodellen ermöglichen eine Bestimmung für spezifische Anwendungen, jedoch muss diese Fähigkeit erst integriert werden. Diese Integration ist eines der Beiträge dieser Dissertation.
Schritt 4 beschleunigt die Standardwerkzeuge. Digitale Schaltungsentwürfe, die nicht auf Standardzellen basieren, sowie komplexe analoge Schaltungen können derzeit nicht mit analogen Schaltungssimulatoren ausgewertet werden. Ihre Performanz reicht für solch umfangreiche Simulationen nicht aus. Diese Dissertation stellt Techniken vor, um diese Werkzeuge zu beschleunigen und somit diese umfangreichen Schaltungen simulieren zu können.
Diese Forschungsbeiträge, die sich jeweils über mehrere Veröffentlichungen erstrecken, ermöglichen es Standardwerkzeugen, die Sicherheitstoleranz für kundenspezifische Anwendungsszenarien zu bestimmen. Für eine gegebene Schaltungslebensdauer, Temperatur, Spannung und Aktivität (Schaltverhalten durch Software-Applikationen) können die Auswirkungen der Transistordegradation ausgewertet werden und somit die erforderliche (weder unter- noch überschätzte) Sicherheitstoleranz bestimmt werden. Diese anwendungsspezifische Sicherheitstoleranz, garantiert die Zuverlässigkeit und Funktionalität der Schaltung für genau diese Anwendung bei minimalen Performanzeinbußen
A Modular Platform for Adaptive Heterogeneous Many-Core Architectures
Multi-/many-core heterogeneous architectures are shaping current and upcoming generations of compute-centric platforms which are widely used starting from mobile and wearable devices to high-performance cloud computing servers. Heterogeneous many-core architectures sought to achieve an order of magnitude higher energy efficiency as well as computing performance scaling by replacing homogeneous and power-hungry general-purpose processors with multiple heterogeneous compute units supporting multiple core types and domain-specific accelerators. Drifting from homogeneous architectures to complex heterogeneous systems is heavily adopted by chip designers and the silicon industry for more than a decade. Recent silicon chips are based on a heterogeneous SoC which combines a scalable number of heterogeneous processing units from different types (e.g. CPU, GPU, custom
accelerator).
This shifting in computing paradigm is associated with several system-level design challenges related to the integration and communication between a highly scalable number of heterogeneous compute units as well as SoC peripherals and storage units. Moreover, the increasing design complexities make the production of heterogeneous SoC chips a monopoly for only big market players due to the increasing development and design costs. Accordingly, recent initiatives towards agile hardware development open-source tools and microarchitecture aim to democratize silicon chip production for academic and commercial usage.
Agile hardware development aims to reduce development costs by providing an ecosystem for open-source hardware microarchitectures and hardware design processes. Therefore, heterogeneous many-core development and customization will be relatively less complex and less time-consuming than conventional design process methods.
In order to provide a modular and agile many-core development approach, this dissertation proposes a development platform for heterogeneous and self-adaptive many-core architectures consisting of a scalable number of heterogeneous tiles that maintain design regularity features while supporting heterogeneity. The proposed platform hides the integration complexities
by supporting modular tile architectures for general-purpose processing cores
supporting multi-instruction set architectures (multi-ISAs) and custom hardware accelerators. By leveraging field-programmable-gate-arrays (FPGAs), the self-adaptive feature of the many-core platform can be achieved by using dynamic and partial reconfiguration (DPR) techniques.
This dissertation realizes the proposed modular and adaptive heterogeneous many-core platform through three main contributions. The first contribution proposes and realizes a many-core architecture for heterogeneous ISAs. It provides a modular and reusable tilebased architecture for several heterogeneous ISAs based on open-source RISC-V ISA. The modular tile-based architecture features a configurable number of processing cores with different RISC-V ISAs and different memory hierarchies.
To increase the level of heterogeneity to support the integration of custom hardware accelerators, a novel hybrid memory/accelerator tile architecture is developed and realized as the second contribution. The hybrid tile is a modular and reusable tile that can be configured at run-time to operate as a scratchpad shared memory between compute tiles or as an accelerator tile hosting a local hardware accelerator logic. The hybrid tile is designed and implemented to be seamlessly integrated into the proposed tile-based platform.
The third contribution deals with the self-adaptation features by providing a reconfiguration management approach to internally control the DPR process through processing cores (RISC-V based). The internal reconfiguration process relies on a novel DPR controller targeting FPGA design flow for RISC-V-based SoC to change the types and functionalities of compute tiles at run-time
LIPIcs, Volume 244, ESA 2022, Complete Volume
LIPIcs, Volume 244, ESA 2022, Complete Volum
Towards a Common Software/Hardware Methodology for Future Advanced Driver Assistance Systems
The European research project DESERVE (DEvelopment platform for Safe and Efficient dRiVE, 2012-2015) had the aim of designing and developing a platform tool to cope with the continuously increasing complexity and the simultaneous need to reduce cost for future embedded Advanced Driver Assistance Systems (ADAS). For this purpose, the DESERVE platform profits from cross-domain software reuse, standardization of automotive software component interfaces, and easy but safety-compliant integration of heterogeneous modules. This enables the development of a new generation of ADAS applications, which challengingly combine different functions, sensors, actuators, hardware platforms, and Human Machine Interfaces (HMI). This book presents the different results of the DESERVE project concerning the ADAS development platform, test case functions, and validation and evaluation of different approaches. The reader is invited to substantiate the content of this book with the deliverables published during the DESERVE project. Technical topics discussed in this book include:Modern ADAS development platforms;Design space exploration;Driving modelling;Video-based and Radar-based ADAS functions;HMI for ADAS;Vehicle-hardware-in-the-loop validation system
High-Performance VLSI Architectures for Lattice-Based Cryptography
Lattice-based cryptography is a cryptographic primitive built upon the hard problems on point lattices. Cryptosystems relying on lattice-based cryptography have attracted huge attention in the last decade since they have post-quantum-resistant security and the remarkable construction of the algorithm. In particular, homomorphic encryption (HE) and post-quantum cryptography (PQC) are the two main applications of lattice-based cryptography. Meanwhile, the efficient hardware implementations for these advanced cryptography schemes are demanding to achieve a high-performance implementation.
This dissertation aims to investigate the novel and high-performance very large-scale integration (VLSI) architectures for lattice-based cryptography, including the HE and PQC schemes. This dissertation first presents different architectures for the number-theoretic transform (NTT)-based polynomial multiplication, one of the crucial parts of the fundamental arithmetic for lattice-based HE and PQC schemes. Then a high-speed modular integer multiplier is proposed, particularly for lattice-based cryptography. In addition, a novel modular polynomial multiplier is presented to exploit the fast finite impulse response (FIR) filter architecture to reduce the computational complexity of the schoolbook modular polynomial multiplication for lattice-based PQC scheme. Afterward, an NTT and Chinese remainder theorem (CRT)-based high-speed modular polynomial multiplier is presented for HE schemes whose moduli are large integers
- …