The transactional HW/SW stack for fault tolerant embedded computing
Autor(a) principal: | |
---|---|
Data de Publicação: | 2015 |
Tipo de documento: | Tese |
Idioma: | eng |
Título da fonte: | Biblioteca Digital de Teses e Dissertações da UFRGS |
Texto Completo: | http://hdl.handle.net/10183/114607 |
Resumo: | O desafio de implementar tolerância a falhas em sistemas embarcados advém das restrições físicas de ocupação de área, dissipação de potência e consumo de energia desses sistemas. A necessidade de otimizar essas três restrições de projeto concomitante à computação dentro dos requisitos de desempenho e de tempo-real cria um problema difícil de ser resolvido. Soluções clássicas de tolerância a falhas tais como redundância modular dupla e tripla não são factíveis devido ao alto custo em potência e a falta de um mecanismo para se recuperar erros. Apesar de algumas técnicas existentes reduzirem o overhead de potência e área, essas incorrem em alta degradação de desempenho e muitas vezes assumem um modelo de falhas que não é factível. Essa tese introduz a Pilha de HW/SW Transacional, ou simplesmente Pilha, para gerenciar de maneira eficiente as restrições de área, potência, cobertura de falhas e desempenho. A Pilha introduz uma nova estratégia de compilação que organiza os programas em Blocos Básicos Transacionais (BBT), juntamente com um novo processador, a Arquitetura de Blocos Básicos Transacionais (ABBT), a qual provê detecção e recuperação de erros de grão fino e determinística ao usar o BBT como um contâiner de erros e como unidade de checkpointing. Duas soluções para prover a semântica de execução do BBT em hardware são propostas, uma baseada em software e a outra em hardware. A área, potência, desempenho e cobertura de falhas foram avaliadas através do modelo de hardware do ABBT. A Pilha provê uma cobertura de falhas de 99,35%, com overhead de 2,05 em potência e 2,65 de área. A Pilha apresenta overhead de desempenho de 1,33 e 1,54, dependento do modelo de hardware usado para suportar a semântica de execução do BBT. |
id |
URGS_84d09a63a9ffad3e336591f927f30758 |
---|---|
oai_identifier_str |
oai:www.lume.ufrgs.br:10183/114607 |
network_acronym_str |
URGS |
network_name_str |
Biblioteca Digital de Teses e Dissertações da UFRGS |
repository_id_str |
1853 |
spelling |
Ferreira, Ronaldo RodriguesCarro, LuigiMoreira, Alvaro Freitas2015-03-28T01:57:41Z2015http://hdl.handle.net/10183/114607000955637O desafio de implementar tolerância a falhas em sistemas embarcados advém das restrições físicas de ocupação de área, dissipação de potência e consumo de energia desses sistemas. A necessidade de otimizar essas três restrições de projeto concomitante à computação dentro dos requisitos de desempenho e de tempo-real cria um problema difícil de ser resolvido. Soluções clássicas de tolerância a falhas tais como redundância modular dupla e tripla não são factíveis devido ao alto custo em potência e a falta de um mecanismo para se recuperar erros. Apesar de algumas técnicas existentes reduzirem o overhead de potência e área, essas incorrem em alta degradação de desempenho e muitas vezes assumem um modelo de falhas que não é factível. Essa tese introduz a Pilha de HW/SW Transacional, ou simplesmente Pilha, para gerenciar de maneira eficiente as restrições de área, potência, cobertura de falhas e desempenho. A Pilha introduz uma nova estratégia de compilação que organiza os programas em Blocos Básicos Transacionais (BBT), juntamente com um novo processador, a Arquitetura de Blocos Básicos Transacionais (ABBT), a qual provê detecção e recuperação de erros de grão fino e determinística ao usar o BBT como um contâiner de erros e como unidade de checkpointing. Duas soluções para prover a semântica de execução do BBT em hardware são propostas, uma baseada em software e a outra em hardware. A área, potência, desempenho e cobertura de falhas foram avaliadas através do modelo de hardware do ABBT. A Pilha provê uma cobertura de falhas de 99,35%, com overhead de 2,05 em potência e 2,65 de área. A Pilha apresenta overhead de desempenho de 1,33 e 1,54, dependento do modelo de hardware usado para suportar a semântica de execução do BBT.Fault tolerance implementation in embedded systems is challenging because the physical constraints of area occupation, power dissipation, and energy consumption of these systems. The need for optimizing these three physical constraints while doing computation within the available performance goals and real-time deadlines creates a conundrum that is hard to solve. Classical fault tolerance solutions such as triple and dual modular redundancy are not feasible due to their high power overhead or lack of efficient and deterministic error recovery. Existing techniques, although some of them reduce the power and area overhead, incur heavy perfor- mance penalties and most of the time do not assume a feasible fault model. This dissertation introduces the Transactional HW/SW Stack, or simply Stack, to effi- ciently manage the area, power, fault coverage, and performance conundrum. The Stack introduces a new compilation strategy that assembles programs into Transac- tional Basic Blocks, together with a novel microprocessor, the TransactiOnal Basic Block Architecture (ToBBA), which provides fine-grained error detection and deter- ministic error rollback and elimination using the Transactional Basic Blocks (TBBs) both as a container for errors and as a small unit of data checkpointing. Two so- lutions to sustain the TBB semantics in hardware are introduced: software- and hardware-based. Stack’s area, power, performance, and coverage were evaluated using ToBBA’s hardware implementation model. The Stack attains an error correc- tion coverage of 99.35% with 2.05 power overhead within an area overhead of 2.65. The Stack also presents a performance overhead of 1.33 or 1.54, depending on the hardware model adopted to support the TBB.application/pdfengMicroeletrônicaSistemas embarcadosTolerancia : FalhasCompiler designCoverageError detectionError recoveryFault injectionHardening by designLatencyLLVMModular redundancyRegister fileRollbackSingle event effectsSoft errorThe transactional HW/SW stack for fault tolerant embedded computingPilha HW/SW transacional para computacao embarcada tolerante a falhas info:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/doctoralThesisUniversidade Federal do Rio Grande do SulInstituto de InformáticaPrograma de Pós-Graduação em ComputaçãoPorto Alegre, BR-RS2015doutoradoinfo:eu-repo/semantics/openAccessreponame:Biblioteca Digital de Teses e Dissertações da UFRGSinstname:Universidade Federal do Rio Grande do Sul (UFRGS)instacron:UFRGSORIGINAL000955637.pdf000955637.pdfTexto completo (inglês)application/pdf1326089http://www.lume.ufrgs.br/bitstream/10183/114607/1/000955637.pdfd2c913fb963671e4b4da10046b497bdfMD51TEXT000955637.pdf.txt000955637.pdf.txtExtracted Texttext/plain242298http://www.lume.ufrgs.br/bitstream/10183/114607/2/000955637.pdf.txtc7daa1482d06543bac61398a7adbc75aMD52THUMBNAIL000955637.pdf.jpg000955637.pdf.jpgGenerated Thumbnailimage/jpeg1106http://www.lume.ufrgs.br/bitstream/10183/114607/3/000955637.pdf.jpg4cc1080041fe1af2b50d42b6f7478357MD5310183/1146072021-05-07 04:48:17.312068oai:www.lume.ufrgs.br:10183/114607Biblioteca Digital de Teses e Dissertaçõeshttps://lume.ufrgs.br/handle/10183/2PUBhttps://lume.ufrgs.br/oai/requestlume@ufrgs.br||lume@ufrgs.bropendoar:18532021-05-07T07:48:17Biblioteca Digital de Teses e Dissertações da UFRGS - Universidade Federal do Rio Grande do Sul (UFRGS)false |
dc.title.pt_BR.fl_str_mv |
The transactional HW/SW stack for fault tolerant embedded computing |
dc.title.alternative.pt.fl_str_mv |
Pilha HW/SW transacional para computacao embarcada tolerante a falhas |
title |
The transactional HW/SW stack for fault tolerant embedded computing |
spellingShingle |
The transactional HW/SW stack for fault tolerant embedded computing Ferreira, Ronaldo Rodrigues Microeletrônica Sistemas embarcados Tolerancia : Falhas Compiler design Coverage Error detection Error recovery Fault injection Hardening by design Latency LLVM Modular redundancy Register file Rollback Single event effects Soft error |
title_short |
The transactional HW/SW stack for fault tolerant embedded computing |
title_full |
The transactional HW/SW stack for fault tolerant embedded computing |
title_fullStr |
The transactional HW/SW stack for fault tolerant embedded computing |
title_full_unstemmed |
The transactional HW/SW stack for fault tolerant embedded computing |
title_sort |
The transactional HW/SW stack for fault tolerant embedded computing |
author |
Ferreira, Ronaldo Rodrigues |
author_facet |
Ferreira, Ronaldo Rodrigues |
author_role |
author |
dc.contributor.author.fl_str_mv |
Ferreira, Ronaldo Rodrigues |
dc.contributor.advisor1.fl_str_mv |
Carro, Luigi |
dc.contributor.advisor-co1.fl_str_mv |
Moreira, Alvaro Freitas |
contributor_str_mv |
Carro, Luigi Moreira, Alvaro Freitas |
dc.subject.por.fl_str_mv |
Microeletrônica Sistemas embarcados Tolerancia : Falhas |
topic |
Microeletrônica Sistemas embarcados Tolerancia : Falhas Compiler design Coverage Error detection Error recovery Fault injection Hardening by design Latency LLVM Modular redundancy Register file Rollback Single event effects Soft error |
dc.subject.eng.fl_str_mv |
Compiler design Coverage Error detection Error recovery Fault injection Hardening by design Latency LLVM Modular redundancy Register file Rollback Single event effects Soft error |
description |
O desafio de implementar tolerância a falhas em sistemas embarcados advém das restrições físicas de ocupação de área, dissipação de potência e consumo de energia desses sistemas. A necessidade de otimizar essas três restrições de projeto concomitante à computação dentro dos requisitos de desempenho e de tempo-real cria um problema difícil de ser resolvido. Soluções clássicas de tolerância a falhas tais como redundância modular dupla e tripla não são factíveis devido ao alto custo em potência e a falta de um mecanismo para se recuperar erros. Apesar de algumas técnicas existentes reduzirem o overhead de potência e área, essas incorrem em alta degradação de desempenho e muitas vezes assumem um modelo de falhas que não é factível. Essa tese introduz a Pilha de HW/SW Transacional, ou simplesmente Pilha, para gerenciar de maneira eficiente as restrições de área, potência, cobertura de falhas e desempenho. A Pilha introduz uma nova estratégia de compilação que organiza os programas em Blocos Básicos Transacionais (BBT), juntamente com um novo processador, a Arquitetura de Blocos Básicos Transacionais (ABBT), a qual provê detecção e recuperação de erros de grão fino e determinística ao usar o BBT como um contâiner de erros e como unidade de checkpointing. Duas soluções para prover a semântica de execução do BBT em hardware são propostas, uma baseada em software e a outra em hardware. A área, potência, desempenho e cobertura de falhas foram avaliadas através do modelo de hardware do ABBT. A Pilha provê uma cobertura de falhas de 99,35%, com overhead de 2,05 em potência e 2,65 de área. A Pilha apresenta overhead de desempenho de 1,33 e 1,54, dependento do modelo de hardware usado para suportar a semântica de execução do BBT. |
publishDate |
2015 |
dc.date.accessioned.fl_str_mv |
2015-03-28T01:57:41Z |
dc.date.issued.fl_str_mv |
2015 |
dc.type.status.fl_str_mv |
info:eu-repo/semantics/publishedVersion |
dc.type.driver.fl_str_mv |
info:eu-repo/semantics/doctoralThesis |
format |
doctoralThesis |
status_str |
publishedVersion |
dc.identifier.uri.fl_str_mv |
http://hdl.handle.net/10183/114607 |
dc.identifier.nrb.pt_BR.fl_str_mv |
000955637 |
url |
http://hdl.handle.net/10183/114607 |
identifier_str_mv |
000955637 |
dc.language.iso.fl_str_mv |
eng |
language |
eng |
dc.rights.driver.fl_str_mv |
info:eu-repo/semantics/openAccess |
eu_rights_str_mv |
openAccess |
dc.format.none.fl_str_mv |
application/pdf |
dc.source.none.fl_str_mv |
reponame:Biblioteca Digital de Teses e Dissertações da UFRGS instname:Universidade Federal do Rio Grande do Sul (UFRGS) instacron:UFRGS |
instname_str |
Universidade Federal do Rio Grande do Sul (UFRGS) |
instacron_str |
UFRGS |
institution |
UFRGS |
reponame_str |
Biblioteca Digital de Teses e Dissertações da UFRGS |
collection |
Biblioteca Digital de Teses e Dissertações da UFRGS |
bitstream.url.fl_str_mv |
http://www.lume.ufrgs.br/bitstream/10183/114607/1/000955637.pdf http://www.lume.ufrgs.br/bitstream/10183/114607/2/000955637.pdf.txt http://www.lume.ufrgs.br/bitstream/10183/114607/3/000955637.pdf.jpg |
bitstream.checksum.fl_str_mv |
d2c913fb963671e4b4da10046b497bdf c7daa1482d06543bac61398a7adbc75a 4cc1080041fe1af2b50d42b6f7478357 |
bitstream.checksumAlgorithm.fl_str_mv |
MD5 MD5 MD5 |
repository.name.fl_str_mv |
Biblioteca Digital de Teses e Dissertações da UFRGS - Universidade Federal do Rio Grande do Sul (UFRGS) |
repository.mail.fl_str_mv |
lume@ufrgs.br||lume@ufrgs.br |
_version_ |
1810085314524348416 |