-
7/24/2019 Apostila - Requisitos de Software PCS2049 Poli USP
1/206
1
SISTEMAS TOLERANTES A FALHAS
ESCOLA POLITCNICA DA UNIVERSIDADE DE SO PAULO
DEPARTAMENTO DE ENGENHARIA DE COMPUTAO E SISTEMAS
DIGITAIS - PCS
GRUPO DE ANLISE DE SEGURANA - GAS
PROF. JOO BATISTA CAMARGO JR.
2013
-
7/24/2019 Apostila - Requisitos de Software PCS2049 Poli USP
2/206
2
NDICE
1. Apresentao ........................................................................................... ............................... 42. Evoluo Tecnolgica e Aplicaes ................................................................. ...................... 7
3. Aplicaes ............................................................................................... ............................... 93.1. Aplicaes de Vida Longa ...................... ................................................................. ........... 93.2. Aplicaes crticas......................................................... ...................................................... 93.3. Aplicaes com Manuteno Adiantada/ Adiada ................................................................ 93.4. Aplicaes de Alta Disponibilidade .................................................................................. 104. Definies Fundamentais ................................................. .................................................... 114.1 Causas das Falhas ........................................................... .................................................... 144.2. Filosofias de Projeto para Combater as Falhas ......................................................... ......... 155. Tcnicas de Projeto para Alcanar Tolerncia a Defeitos. ................................................... 185.1. Redundncia de Hardware. ................................................................ ................................ 18
5.1.1. Redundncia de Hardware Passiva. .......................................................... .................. 195.1.2. Redundncia de Hardware Ativa. ............................................................................... 245.1.3. Redundncia de Hardware Hibrida.................................................................... ......... 29
5.2. Redundncia de Informao ................................................................ .............................. 385.2.1. Cdigo de Paridade .................................... ................................................................ 395.2.2. Cdigos m de n .................................................................. ......................................... 475.2.3. Cdigos Duplicados ................................... ................................................................ 495.2.4. Checksums (Cdigo Separvel) ................................................................ .................. 515.2.5. Cdigos Cclicos (No Separvel). ........................................................... .................. 555.2.6. Cdigos Aritmticos. ......................................................... ......................................... 605.2.7. Cdigos Berger .................................................................. ......................................... 645.2.8. Paridade Horizontal e Vertical ...................................................... ............................. 665.2.9. Cdigo de Correo de Erro Hamming ...................................................................... 665.2.10 Circuitos Integrados com Correo de Erro ..................... ......................................... 68
5.3. Redundncia por Tempo. .................................. ................................................................ 705.3.1. Deteco de Defeito Transiente.............................. .................................................... 705.3.2. Deteco do Defeito Permanente. ..................................................................... ......... 71
5.3.2.1. Lgica Alternada ........................................................ ......................................... 725.3.2.2. Recomputao com Operandos Deslocados ........................................................ 725.3.2.3. Recomputao com Operando Trocados ............................................................. 745.3.2.4. Recomputao com Duplicao e Comparao Recomputing with Duplicationwith Compararison - REDWC........................................................................................ 765.3.2.5. Recomputao para Correo de Erro ................................................................. 77
5.4. Redundncia por Software ........... ................................................................. .................... 795.4.1. Verificao de Consistncia ....................................................................................... 795.4.2. Verificao de Capacidade ......................................................................................... 805.4.3. N_ Verses de Software ............................................................................................. 81
6. Tcnicas de Avaliao de Sistemas Tolerantes a Defeito ..................................................... 82
6.1. Funo Confiabilidade ( R (t )) e Taxa de Falhas .............................................................. 826.2. Clculo da Taxa de Falhas............................................................................. .................... 856.3 Tempo Mdio para FalharMean Time to Failure MTTF e a Confiabilidade de umSistema ................................................................................................................. .................... 876.4. Tempo Mdio para Reparo ................................................................ ................................ 906.5. Tempo Mdio Entre Falhas ........................................................................... .................... 916.6 A Disponibilidade Assinttica de um Sistema ........................................................... ......... 926.7. Cobertura de Defeitos. .............................................................. ......................................... 936.8. Modelo de Confiabilidade ........................................................ ......................................... 96
6.8.1. Modelos Combinatrios ............................................................................................. 966.8.1.1. Sistema sries .................................................. .................................................... 976.8.1.2. Sistemas Paralelos ................................................................ ............................. 1016.8.1.3. Cobertura de Defeito e seu Impacto na Confiabilidade ..................................... 104
6.8.1.4. Sistema M de N .......................................................................................... ....... 1086.8.2 Modelos de Markov .................................................................... .............................. 110
-
7/24/2019 Apostila - Requisitos de Software PCS2049 Poli USP
3/206
3
6.8.2.1.Modelo de Markov com Cobertura de Defeitos ................................................. 1166.8.2.2. Modelo de Markov com Reparo ................................................................. ....... 1206.8.2.3. Modelo de Segurana ........................................................................................ 1236.8.2.4 Comparao entre Sistemas ................................................................ ................ 1256.8.2.5. Modelo de Disponibilidade. .............................................................................. 1276.8.2.6. Modelo de Manutenabilidade ............................................................ ................ 130
7. Segurana .................................................................................... ....................................... 1337.1. Aspectos Conceituais .................................................... .................................................. 1337.2. Erro Humano ................................................................. .................................................. 1388. Metodologia de Anlise de Risco Proposta ................................................................. ....... 1418.1. Gerenciamento da Segurana .......................................................................................... 1428.2. Anlise de Risco .............................................................................................................. 1438.3. Certificao .............................................................................. ....................................... 1508.4. Perigo e Risco ................................................................................................................. 1538.5. Anlise de Perigo ......................... ................................................................... ................ 156
8.5.1. Mtodos para Realizar Anlise de Perigo.......................................................... ....... 1658.5.1.1. Lista de Verificao................................. .............................................................. 1658.5.1.2. rvore de Falhas ..................................... .............................................................. 1668.5.1.3. rvore de Eventos ................................................................................................. 1688.5.1.4. Anlise dos Efeitos dos Modos de Falhas - FMEA - Failure Modes and EffectsAnalysis ....................................................................................... ....................................... 1698.5.1.5. Anlise Crtica dos Efeitos dos Modos de Falhas - FMECA - Failure Modes,Effects, and Criticality Analysis .............................................................. ........................... 1708.5.1.6. Anlise de Operao e Perigo - Hazard and Operability Analysis - HAZOP ........ 1718.5.1.7. Avaliao de Completeza de Especificaes ......................................................... 1738.5.1.8. Mtodos Semi Formais ............................................................... ........................... 1848.5.1.9. Mtodos Formais ............................................................ ....................................... 1908.5.1.10. Avaliao Quantitativa da Segurana de Aplicaes Microprocessadas ............. 1938.5.1.11. Injeo de Falhas .......................................................... ....................................... 197
9. Referncias Bibliogrficas................................................ .................................................. 199
-
7/24/2019 Apostila - Requisitos de Software PCS2049 Poli USP
4/206
-
7/24/2019 Apostila - Requisitos de Software PCS2049 Poli USP
5/206
5
caractersticas de tolerncia a defeito, no apresenta, necessariamente, uma alta
confiabilidade. Da mesma forma, pode-se afirma que, um sistema, com alta
confiabilidade, no necessariamente possui caractersticas de tolerncia a
defeito. Disponibilidade ( Availability- A ( t )).
O conceito de disponibilidade corresponde probabilidade que um
determinado sistema esteja operando corretamente e disponvel para realizar
suas funes num instante de tempo t. Assim, a disponibilidade difere da
confiabilidade de forma que, a confiabilidade depende de um INTERVALOde
tempo enquanto que a disponibilidade avaliada em umINSTANTEde tempo.
A disponibilidade depende ento no apenas o quo freqente um sistematorna-se inoperante, mas tambm o quo rpido o sistema pode ser reparado.
Num caso prtico, um processador reserva pode desempenhar as funes do
sistema enquanto que o processador principal est sendo reparado,
conservando desta forma o sistema disponvel para uso final.
- Segurana ( Safety- S (t )).
a probabilidade que um sistema ir desempenhar suas funes corretamenteou descontinuar suas funes de uma forma que no interrompa a operao de
outros sistemas de segurana nem comprometa a segurana de pessoas. A
segurana uma mdia da capacidade do sistema ser Fail- Safe.
Se o sistema no opera corretamente, voc quer que ele falhe, pelo menos, de
uma maneira segura.
-
7/24/2019 Apostila - Requisitos de Software PCS2049 Poli USP
6/206
6
- Desempenho - ( Performability - P ( L, t ) ).
Em muitos casos possvel projetar sistemas que podem continuar a realizar
as funes corretamente aps falhas de HW e erros no SW, mas no no mesmo
nvel de desempenho.- Definio:
Probabilidade que o desempenho de um sistema estar maior ou igual a um
nvel L, no instante t. a mdia de probabilidade que um subconjunto de
funes est sendo realizado corretamente.
- Manutenabilidade (Maintainability -M ( t )).
a facilidade com a qual um sistema pode ser reparado, uma vez que elefalhou.
a probabilidade que um sistema em falha ser reparado para o estado
operacional dentro de um perodo de tempo t.
Muitas tcnicas de tolerncia a defeito podem ser utilizadas para detectar e
localizar problemas no sistema, com o propsito de manuteno.
Os diagnsticos automticos podem auxiliar muito neste aspecto.
- Testabilidade ( Testability ).
a habilidade de testar certos atributos dentro de um sistema. Mede a
facilidade com a qual certos testes podem ser realizados.
Muitas tcnicas que so vitais no sentido de se alcanar tolerncia a defeito
podem ser utilizadas para detectar e localizar problemas aumentando a
Testabilidade. Est intimamente relacionada com a manutenabilidade, devido
ao fato de diminuir o tempo requerido para identificar e localizar o problema.
- Dependabilidade ( Dependability ).
Aglutina os conceitos de Confiabilidade, Disponibilidade, Segurana,
Manutenabilidade, desempenho e testabilidade.
-
7/24/2019 Apostila - Requisitos de Software PCS2049 Poli USP
7/206
7
2. Evoluo Tecnolgica e Aplicaes
A evoluo tecnolgica dos Sistemas de Proteo pode ser esquematizada em
quatro etapas:- Sistemas a Rels;
- Sistemas com Tecnologia a Estado Slido;
- Sistemas CLT redundantes;e
- Sistemas Tolerantes a Defeitos com Redundncia Triplicada.
Nos sistemas implementados a Rels tem-se um aumento significativo da sua
complexidade medida que se expande a funcionalidade, tornando, desta
forma, a manuteno, a localizao de defeitos e provveis modificaes,difceis de serem realizadas. Convm destacar tambm os altos custos deste
tipo de sistema. Apesar dos rels apresentarem um modo de falha bastante
conhecido, este sistemas trabalham apenas com entrada e sadas digitais.
Com relao aos Sistemas Baseados em Lgica do Estado Slido, estes
apresentam boa testabilidade e localizao de defeitos. Por outro lado, estes
sistemas apresentam uma capacidade limitada de diagnstico e pouca
flexibilidade para modificaes, aceitam somente entradas e sadas digitais,alm de utilizarem componentes de difcil reposio.
Em funo dessas dificuldades e da evoluo tecnolgica, passou - se a utilizar
sistemas com Controladores Lgicos Programveis - CLT s redundantes,
implementados atravs de dois processadores paralelos sendo um deles
selecionado atravs de chaveamento. Esses processadores alm de aceitarem
entrada e sadas analgicas, melhoraram a capacidade de diagnstico, podendo
ser usados justamente com um Bus de dados. Nesses sistemas torna-sedifcil definir qual o processador que est correto, o chaveamento entre ambos
no seguro, h a necessidade de duplicao das entradas e sadas dos
processadores e alto risco em mudana nas suas programaes. Neste sentido,
vale tambm destacar a dificuldade em se verificar os programas contidos nos
processadores.
No sentido de superar todas dificuldades e com o aumento da complexidade
dos Sistemas de Proteo, chegou - se aos Sistemas Tolerantes a Defeito comredundncia Modular Triplicada. Dentro desta filosofia destacam-se duas
-
7/24/2019 Apostila - Requisitos de Software PCS2049 Poli USP
8/206
8
linhas de trabalho, com nfase em Hardware e Software, sendo a ltima
adotada com mais freqncia.
Alguns dos requisitos desejveis desta nova arquitetura so: uma falha simples no sistema no deve gerar entradas ou sadas erradas
nem deve evitar que o sistema funcione conforme projetado;
qualquer falha deve gerar alarme e uma indicao do local da ocorrncia;
qualquer falha simples deve ser reparada on -line sem interrupo da
operao do Sistema de Segurana.
Como conseqncia das necessidades do mundo moderno e da complexidade
crescente dos Sistemas de proteo exige-se um trabalho de anlise bastanteamplo na verificao dos Requisitos Gerais de Segurana, no sentido de
caminhar-se em direo a uma melhor Segurana e Qualidade desses
sistemas.
Desta forma deve-se Ter como principais metas nestes Sistemas de Segurana
as seguintes caractersticas:
- Alta Disponibilidade;
- Baixo tempo Mdio para Reparo ( Mean Time to Repair- MTTR );- Alto Tempo Mdio entre Falhas ( Mean Time Between Failures- MTBF);
- Alto Tempo Mdio entre Falhas Inseguras ( Mean Time Between Unsafe
Failures- MTBUF);
- Metodologia de Programao que d nfase segurana;
- Diagnstico Exaustivo;
- Interface Amigvel;
- Comunicao Segura via Rede; e- Excelente Documentao.
A Tolerncia a Defeito atualmente requerida, pois os novos sistemas
eletrnicos so menos confiveis.
-
7/24/2019 Apostila - Requisitos de Software PCS2049 Poli USP
9/206
9
3. Aplicaes
As aplicaes de computao tolerante a defeitos podem ser categorizadas em
4 reas: Vida longa
Computao crtica
Aspecto de manuteno adiantada/adiada
Alta disponibilidade
3.1. Aplicaes de Vida Longa
Sistemas a bordo de naves e satlites.Requisitos tpicos desta aplicao Ter uma probabilidade de 0,95 de estar
operacional no fim de um perodo de 10 anos.
No entanto, podem suportar pequenos perodos fora do ar (1 semana).
3.2. Aplicaes crticas
Relacionadas com Vidas Humanas, meio-ambiente, ou proteo de
equipamento. Controladores de Vo
Sistemas militares
Certos controles industriais
Controle metr - Ferrovirio, etc...
Indstria qumica
Requisito tpico: Confiabilidade > 0,97 no fim de um perodo de trs horas, no
entanto os requisitos podem variar em funo das particularidades do sistema.
3.3. Aplicaes com Manuteno Adiantada/ Adiada
Aplicveis em sistemas que as operaes de manuteno so extremamente
custosas, inconvenientes ou difceis de se realizar.
Exemplo:
Estaes de processamento remoto. (custo) (Centrais Telefnicas)
Certas aplicaes espaciais (local).Visitas peridicas que realizam uma manuteno preventiva muito forte.
-
7/24/2019 Apostila - Requisitos de Software PCS2049 Poli USP
10/206
10
Evitar manuteno no programada.
Durante os perodos entre visitas, o sistema manipula as falhas e servios
errados de maneira autnoma.
3.4. Aplicaes de Alta Disponibilidade
Bons exemplos: Sistemas Bancrios e Time-Shared"
Os usurios destes sistemas querem Ter uma probabilidade alta de receber o
servio quando requisitado.
-
7/24/2019 Apostila - Requisitos de Software PCS2049 Poli USP
11/206
11
4. Definies Fundamentais
Algumas definies fundamentais na rea de confiabilidade e disponibilidade
devem ser formalizadas visando um maior esclarecimento da terminologiasendo utilizada. A figura 4.1 apresenta a relao entre os termosFalha,Erroe
Disfuno.
Fault
(Falha)
Error
(Erro)
Failure
(Disfuno)
Figura 4.1. Relao entre Falha, Erro e Disfuno
O termo Falha corresponde a um problema intrnseco de um componente.
Pode corresponder a umafalha fsicaou imperfeio, que ocorre dentro de um
componente de hardware ou software.
Como exemplo de falhapode ser citado um condutor aberto ou fechado, uma
imperfeio fsica num dispositivo semicondutor ou, um lao infinito num
programa de computador.
O termo Erro corresponde manifestao interna de uma falha.
Especificamente um erro um desvio da preciso ou correo esperada de
uma informao interna ao sistema.
Uma Disfuno ocorre quando o sistema desempenha incorretamente uma de
suas funes.
tambm denominada como mau funcionamento. Dessa forma, uma
disfuno corresponde tambm ao desempenho de alguma funo numa
quantidade ou qualidade abaixo do normal. A disfuno uma exteriorizao
do erro.
Seja o exemplo de um Votador dois de trs, apresentado na figura 4.2.
-
7/24/2019 Apostila - Requisitos de Software PCS2049 Poli USP
12/206
12
A
B
C
Z
Figura 4.2Circuito Votador
A Tabela da Verdade deste circuito est apresentada na tabela 4.1, que sesegue.
A B C Z0 0 0 00 0 1 00 1 0 00 1 1 11 0 0 0
1 0 1 11 1 0 11 1 1 1
Tabela 4.1Tabela de Verdade do Circuito Somador
Supondo a ocorrncia de umaFalhaintrnseca no componente Votador, como
por exemplo, um curto entre o ponto Ae o Vcc, a nova Tabela da Verdade
passa a apresentar a seguinte constituio apresentada na Tabela 4.2.
-
7/24/2019 Apostila - Requisitos de Software PCS2049 Poli USP
13/206
13
A B C Z0 0 0 00 0 1 1 (*)0 1 0 1 (*)0 1 1 1
1 0 0 01 0 1 11 1 0 11 1 1 1
Tabela 4.2. Nova Tabela da Verdade do Circuito Somador
Pode-se observar que os valores com (*) correspondem s sadasZ que contm
errosna informao interna do sistema sendo considerado. Se a sadaZ estiver
controlando um circuito externo, como por exemplo, um circuito a Rel, toda
vez que os dado contaminado de entrada Afor utilizado, o erro na informao
Z ser exteriorizado, transformando-se em uma disfuno.
A Falha est relacionada com o Universo Fsico, representado atravs dos
dispositivos semicondutores, fontes, alm de outras entidades fsicas de
hardware e componentes de software.
O Erro est relacionado com o Universo de Informao, podendo afetar sua
preciso ou contedo. Os termos aplicveis a este universo podem incluir erro
de paridade, erro de bit, etc...
ADisfuno est relacionada com o Universo Externo, ou seja, aquele em que
o usurio final enxerga o sistema e o seu mau funcionamento.
Com relao aos instantes de ocorrncia entre uma Falha, um Erro e uma
Disfuno, pode-se definir o conceito deLatncia.
A Latncia de uma Falha corresponde ao intervalo de tempo entre a
ocorrncia de umaFalha e o aparecimento do correspondenteErro.
A Latnciade um Errocorresponde ao intervalo de tempo entre a ocorrncia
de umErroe o aparecimento da correspondenteDisfuno.
-
7/24/2019 Apostila - Requisitos de Software PCS2049 Poli USP
14/206
14
4.1 Causas das Falhas
As Falhas podem ser resultado de uma variedade de eventos que ocorrem
internamente a um determinado componente eletrnico ou computacional,externamente ao componente ou durante o projeto do componente ou sistema.
As causas possveis das Falhaspodem, desta forma, estar associadas com os
seguintes aspectos:
Problema na Especificao;
Problema na Implementao;
Desgaste do Componente;
Fatores Externos.
A figura 4.3. a seguir ilustra a relao entre as causas fundamentais dasFalhas
e a relao com osErroseDisfunes.
Problemana
Especificao
Problemano
Desenvolvimento
Desgaste
doComponente
InterfernciasExternas
Falha
noHardware
Erro Disfuno
Falhano
Software
Figura 4.3Causas das Falhas, Erros e Disfuno
-
7/24/2019 Apostila - Requisitos de Software PCS2049 Poli USP
15/206
15
As Falhas podem ser caracterizadas de acordo com sua Causa, Natureza,
Durao, Extenso e Valor. O detalhe desta relao apresentado de forma
esquemtica na tabela 4.3.
Caractersticasdas
Falhas
CausaProblema na Especificao
Problema na ImplementaoDesgaste
Interferncias Externas
NaturezaHardware Analgico
DigitalSoftware
DuraoPermanenteIntermitenteTransiente
Extenso LocalGlobal
Valor DeterminadoIndeterminado
Tabela 4.3Caractersticas das Falhas
4.2. Filosofias de Projeto para Combater as Falhas
Conforme apresentado anteriormente, podem existir Falhas, Erros e
Disfunes. Existem tcnicas que podem ser utilizadas para evitar as Falhas,
outras para mascaras as Falhas, correo dos Erros e tolerncias a
Falhas/Erros. Estas tcnicas so apresentadas na figura 4.4.
-
7/24/2019 Apostila - Requisitos de Software PCS2049 Poli USP
16/206
16
Problemana
Especificao
Problemano
Desenvolvimento
Desgastedo
Componente
Interferncias
Externas
Falhano
Hardware
Erro Disfuno
Falhano
Software
EvitarFalhas
MascararFalhas
TolerarFalhas/Erros
Figura 4.4.Tcnicas para Combater as Falhas/Erros
Para se Evitar as Falhas podem ser citadas as seguintes tcnicas:
Revises de Projeto;
Testes;
Mtodos de Controle de Qualidade;
Mtodos Preventivos.
Para se Mascarar as Falhas podem ser realizadas as seguintes aes:
Correo dos Erros;
Votao Majoritria, entre outros.
-
7/24/2019 Apostila - Requisitos de Software PCS2049 Poli USP
17/206
17
Com relao tcnica de Tolerncia Falhas/Erros, o sistema deve apresentar
a habilidade de continuar desempenhando corretamente suas funes mesmo
aps a ocorrncia da Falha/Erro. Nesse sentido devem ser tomadas algumas
atitudes para que essa tolerncia seja alcanada. Podem ser adotadas asseguintes tarefas:
Mascaramento das Falhas
Reconfigurao do sistema: deve-se detectar e localizar a Falha/Erro e
reconfigurar o sistema visando a remoo do componente em falha.
A deteco da Falha ir determinar a necessidade das outras aes. Est
relacionada com o Fator de Cobertura de Defeitos.
A localizao da Falha ir direcionar a forma de recuperao
Isolamento da Falha, prevenindo que seus efeitos se propaguem atravs
do sistema.
Recuperao da Falha, fazendo com que o sistema permanea operacional
atravs de uma ao de reconfigurao.
-
7/24/2019 Apostila - Requisitos de Software PCS2049 Poli USP
18/206
18
5. Tcnicas de Projeto para Alcanar Tolerncia a Defeitos.
O conceito de Redundncia
No incio o conceito de redundncia estava intimamente relacionado com arepetio de bloco de hardware.
De acordo com Johnson: Redundncia simplesmente a adio de
informao, recursos ou tempo alm do que necessrio para a operao
normal do sistema.
FORMAS DE REDUNDNCIA
1. Redundncia de Hardware: adio extra de hardware, geralmente com oobjetivo de deteno ou tolerncia a defeito.
2. Redundncia de Software: adio extra de software, alm do necessrio
para realizar uma funo para detectar ou possivelmente tolerar defeitos.
3. Redundncia de Informao: adio extra de informao alm do requerido
para implementar uma dada funo; ex.: cdigo de deteco de erro.
4. Redundncia de tempo: usa tempo adicional para realizar as funes de um
sistema de maneira que a deteco e a tolerncia a defeitos possam seralcanadas. (Ex: detectar erros transientes).
O uso de redundncia pode fornecer capacidade adicional num sistema. Na
realidade, se tolerncia a defeito ou deteco de defeito so requeridos, alguma
forma de redundncia requerida.
Mas a redundncia pode ter um impacto importante no desempenho do
sistema, tamanho, peso, consumo de energia, custo e confiabilidade.
5.1. Redundncia de Hardware.
H trs tipos bsicos de redundncia de hardware:
- Passiva: usa o conceito de mascaramento de defeitos para esconder a
ocorrncia de defeitos e prevenir que defeitos resultem em erros. No requer
nenhuma ao do sistema ou do operador.
- Ativa: conhecido como mtodo dinmico, alcana tolerncia a defeito por
deteco de defeitos e realizando alguma ao para remover o hardware comdefeito. (reconfigurao).
-
7/24/2019 Apostila - Requisitos de Software PCS2049 Poli USP
19/206
19
Deteco de defeitos localizao do defeito recuperao do defeito.
- Hbrida: combina tcnicas passivas e ativas.
5.1.1. Redundncia de Hardware Passiva.
Baseia-se no mecanismo de votao (votao majoritria), para mascarar a
ocorrncia de defeitos.
Redundncia de Hardware Passiva mais comum:
TMR - Triple Modular Redundancy
Figura 5.1
O TMR pode ser aplicado software onde trs verses diferentes do programaso usadas para proteger contra defeito no software em uma das trs verses.
A maior dificuldade no TMR o votador; se o votador falha, o sistema
completo falha.
Em outras palavras, a confiabilidade do TMR simples no pode ser melhor do
que a confiabilidade do votador. (fail-safe ).
Muitas tcnicas podem ser usadas para recuperar a falha no votador.
Uma abordagem triplicar o votador e fornecer trs resultados independentes.
Modulo 1Entrada 1
Modulo 2Entrada 2
Modulo 3Entrada 3
Votador Sada
-
7/24/2019 Apostila - Requisitos de Software PCS2049 Poli USP
20/206
20
Figura 5.2
Muitos estgios do TMR podem ser interconectados usando a seguinteabordagem:
Figura 5.3
Redundncia N-Modular
Generalizao do TMR. A diferena que so utilizados N mdulos.
Normalmente N um nmero impar, para efeitos de votao majoritria.
Entrada 1
Entrada 2
Entrada 3
Vota-
dor
Vota-
dor
Vota-
dor
Modu lo 2 Vota-
dor
Vota-
dor
Vota-
dor
Mod ulo1
Modulo 3
Modulo 2
Modulo1
Modulo 3
Modulo 1Entrada 1
Modulo 2Entrada 2
Modulo 3Entrada 3
Votador Sada 2
Votador Sada 1
Votador Sada 3
-
7/24/2019 Apostila - Requisitos de Software PCS2049 Poli USP
21/206
21
Figura 5.4
Neste caso mais do que um mdulo com defeito podem ser tolerados.
Em muitas aplicaes crticas, dois defeitos devem ser tolerados para permitiralcanar a confiabilidade requerida e a capacidade de tolerar defeitos.
Limitante de N: consumo, peso, custo, confiabilidade do prprio mdulo e
tamanho.
Tcnicas de votao
A votao no apenas engloba decises de projeto (em que instante votar), mas
tambm impe muitas consideraes como, votao por hardware ou por
software.Votador em hardware para dados digitais so relativamente simples de
projetar.
O circuito a seguir implementa um votador majoritrio
Figura 5.5
A B C Z
0 0 0 0
0 0 1 0
0 1 0 0
0 1 1 1
1 0 0 0
1 0 1 1
1 1 0 1
1 1 1 1
Modulo 1Entrada 1
Modulo 2
Entrada 2
Modulo NEntrada N
Votador Sada
Entrada A
Entrada B
Entrada C
Z
A1ATRASO
A2ATRASO
-
7/24/2019 Apostila - Requisitos de Software PCS2049 Poli USP
22/206
22
Na maioria das aplicaes prticas, o timing um aspecto crtico no
procedimento de votao. Se os valores chegam no votador em tempos poucos
diferentes, resultados incorretos podem ser gerados temporariamente. Para
contornar estes problemas, flip-flops podem ser utilizados nas entradas dosvotadores para sincronizar o processo de votao.
O circuito a seguir procura resolver este problema.
Figura 5.6
D QMASTER
CLK
D QSLAVECLK
D QSLAVE
D QSLAVECLK
D Q
CLK
D QMASTER
CLK
D
CLK
D
CLK
A1
B1
C1
A2
B2
C2
01 02
Ent.A
Ent.B
Ent.C
Fase 1Clock
Fase 2Clock
Sada doVotador
-
7/24/2019 Apostila - Requisitos de Software PCS2049 Poli USP
23/206
23
CARTA DO TEMPO
Figura 5.7
Quando se tem votao por hardware:
- atraso depende dos atrasos das pastilhas/componentes usados para construir o
circuito.
- Nmero de componentes bastante grande aumento do consumo, peso,
tamanho.
Quando se tem votao por software:
- mnimo hardware;
- simples modificar o software;
- pode requerer mais tempo que um hardware dedicado.
Phase 1
Phase 2
A
BC
Output
InputsLatched
VotedOutputReady
Voting Time
D Q
Master
Clk
D QSlave
Clk
D Q
SlaveClk
D Q
Slave
Clk
D QSlave
Clk
D Q
MASTERClk
D
MasterClk
DMaster
Clk
Input A
Input B
Phase 1Clock
Phase 2Clock
Input C
VoterOutput
Z
-
7/24/2019 Apostila - Requisitos de Software PCS2049 Poli USP
24/206
24
As decises pela votao em hardware ou software devem levar em
consideraes os seguintes aspectos:
1) Disponibilidade do processador para realizar a votao
2) Velocidade que a votao deve ser realizada3) Criticidade quanto a espao, potncia e peso.
4) nmero total de votadores
5) flexibilidade para futuras mudanas.
Um outro problema em votao que os valores de uma votao podem no
concordar perfeitamente devido a preciso e tolerncia.
Desta forma, uma sada atravs da tcnica Mid-Value (entre o valor correto
sem erro e o com erro em votao com nmero mpar de mdulos).
Figura 5.8
Outra maneira ignorar os ltimos bits menos significativas da informao em
funo da preciso dos componentes sendo utilizados. Em outras palavras, a
votao realizada sobre os R bits mais significativos.
5.1.2. Redundncia de Hardware Ativa.
Esta tcnica atinge tolerncia a defeito atravs da deteco do defeito,
localizao do defeito e recuperao do defeito. (deteco do erro, localizao
do erro e recuperao do erro).
Neste tipo de redundncia o erro tolerado temporariamente at que o sistema
seja reconfigurado.
Exemplos dessas tcnicas:
a) Duplicao com Comparao
Este tipo de tcnica apresentado na figura a seguir:
sinalselecionado sinal
selecionado sinal
selecionado
Sinais sem defeito
Sinais com defeito
t
Valoresdos
sensores
-
7/24/2019 Apostila - Requisitos de Software PCS2049 Poli USP
25/206
25
Figura 5.9
Cada mdulo realiza as mesmas funes em paralelo. Se ocorrer uma
discordncia, mensagem de erro gerada.
Na maioria dos casos detectada a existncia do defeito, mas no tolerado,pois no h meios de saber qual mdulo est com defeito. Mas um meio de
se fazer deteco de defeito.
Problemas:
- Entradas com defeito, resultados errados em ambos os mdulos;
- Comparador, pode no executar sua funo exatamente (preciso);
- Falha no Comparador: no indicar erros quando tem.
A tcnica que resolve alguns dos problemas anteriores :
Figura 5.10
Os processadores realizam funes idnticas.
Modulo 1
Modulo 2
Comparador
Sada
Concorda/Discorda
Entrada
Two-portMemory
Processor 1
Memory
Processor 2
Memory
SoftwareComparisons
in EachProcessor
SwitchControl
Output
SwitchControl
-
7/24/2019 Apostila - Requisitos de Software PCS2049 Poli USP
26/206
26
Se a memria compartilhada falha, ambos os processadores detectam a
discrepncia de valores com os valores de sua prpria memria.
Se um processador falhar, a falha detectada pelo outro processador pela
discrepncia de valores.As chaves podem ser implementadas na forma digital ou analogicamente
dependendo da aplicao.
Ambos os processadores devem concordar antes que o sistema permita
produzir uma sada.
-
7/24/2019 Apostila - Requisitos de Software PCS2049 Poli USP
27/206
27
b) Unidade Standby.
A Configurao est apresentada na figura a seguir.
Figura 5.11
Nesta tcnica um mdulo operacional e um ou mais mdulos servem como
reservas.
A reconfigurao neste caso pode ser vista conceitualmente como uma chave
cuja sada selecionada de um dos mdulos bons. Se todos esto bons, pode-
se fixar um esquema de prioridades.
Qualquer mdulo com erro eliminado desta considerao.
O sistema precisa tolerar uma interrupo durante o processo de
reconfigurao.
Em funo do tempo necessrio pode-se ter hot-standby (opera em sincronia
Ex: Controle de reao qumica ) ou cold standby(no alimenta - Ex:
satlite) reserva.
No caso Hot Stand By utiliza-se de unidades sobressalentes energizadas.
No caso Cold Standy By utilizam-se de unidades sobressalentes no
energizadas.
Modulo 1
Modulo 2
Modulo N
ChaveadorN para 1
Deteode
Erro
Sada
Deteode
Erro
Deteode
Erro
..
.
...
-
7/24/2019 Apostila - Requisitos de Software PCS2049 Poli USP
28/206
28
Uma questo chave nesta abordagem o esquema de Deteco de
Erro/Deteco de Defeito usado para identificar o mdulo em falha.
Duas tcnicas so apresentadas a seguir:b.1) Pair-and-a-Spare
A arquitetura est apresentada a seguir:
Figura 5.12
Nesta tcnica dois mdulos esto operando em paralelo durante todo o tempo e
seus resultados so comparados para detectar erro. O sinal de erro da
comparao utilizado para iniciar o processo de reconfigurao que vai
remover o mdulo em falha e o substituir pelas reservas.
A chave usa a informao de erro do comparador e do mdulo individual para
manter dois mdulos livres de erro operando em duplicao.
Outra sada seria usar os mdulos em par e quando houver erro descarta o
par de mdulos, em funo da sada da comparao.
b.2) Temporizador watchdog (comparao com carteiro)
Modulo 1
Modulo 2
ModuloN
Chaveador
N para 2
Deteode
Erro
Deteode
Erro
Deteode
Erro
.
.
.
.
.
.
Comparador
Sada
Concorda/Discorda
Entrada
-
7/24/2019 Apostila - Requisitos de Software PCS2049 Poli USP
29/206
-
7/24/2019 Apostila - Requisitos de Software PCS2049 Poli USP
30/206
30
Figura 5.13
A configurao inicial permanece at que o detector de desacordo determine
que existe uma unidade falha. Uma abordagem comparar a sada do votador
com as sadas dos mdulos individualmente.
Neste caso a Unidade Reserva recolocada no lugar do mdulo falho.
MODULO1
MODULO2
MODULON
SOBRESSAE1
SOBRESSAEN
CHAVE
Detetor de Desacordo
Votador Sada
.
.
.
...
.
.
.
Entradas
...
... ...
-
7/24/2019 Apostila - Requisitos de Software PCS2049 Poli USP
31/206
31
b) Redundncia com Auto-Remoo (Self-Purging )
A diferena que neste caso todas as unidades participam ativamente,
conforme ilustra a figura a seguir:
Figura 5.14
Cada mdulo tem a capacidade de se auto- remover do sistema no caso de sua
sada discordar da sada do votador.Neste caso o votador usa a tcnica threshold gate. (atravs de componentes
analgicos, na maioria ).
xi... entradas binrias n...nde entradas
z... sada binria
wi.. pesos
T... valor de threshold especificado.
MODULO1
.
MODULO2
MODULON
VOTADOR Sada
ENT
RADAS
CHAVE
CHAVE
CHAVE
-
7/24/2019 Apostila - Requisitos de Software PCS2049 Poli USP
32/206
32
n
1, se wi . xi T
i =1
Z =n
0, se wi . xi < T
i =1
Exemplos Threshold gate de 3 entradas.
wi = 1 e T = 2
EntradasX1 X2 X3 Sada
0 0 0 0 0
0 0 1 1 0
0 1 0 1 0
0 1 1 2 1
1 0 0 1 0
1 0 1 2 11 1 0 2 1
1 1 1 3 1
Uma abordagem fora para zero o peso de todos os mdulos em falha, no
contribuindo neste caso para o valor de sada. A chave pode controlar o valor
deste peso, associando o valor zero se a sada do mdulo discorda da sada
do sistema.
Implementao da chave utilizando Flip-Flop tipo JK:J K Q (t + 1) * Estado t+1
0 0 Q (t) mantm
0 1 0 reset
1 0 1 set t
1 1 Q (t + 1) muda
A figura a seguir apresenta o esquema da chave:
-
7/24/2019 Apostila - Requisitos de Software PCS2049 Poli USP
33/206
33
Figura 5.15
O mecanismo de iniciao permite um mdulo, desabilitado uma vez,
contribuir novamente no processo de votao, se ele for substitudo por um
sem falha.
- Exemplo: Somador de 1bit
Trs somadores so usados para redundncia tripla. Neste caso so necessrios
dois votadores: votador do bit soma e votador do bit carry. (vai um).
MDULOI
J K
Q Q
VOTADOR
D E O U T ROMDULO
D E O U T ROMDULO
SADA
GATE DECONTROLECHAVE
INICIALIZAO
ENTRADA
SISTEMA
DETECTOR DE
DESACORDO
-
7/24/2019 Apostila - Requisitos de Software PCS2049 Poli USP
34/206
34
Figura 5.16
c) Redundncia Modular Sift-Out
A estrutura bsica est apresentada a seguir composta por comparadores,
detectores e coletores.
Figura 5.17
- Comparador: compara a sada de cada mdulo com os demais. produzido
um sinal para cada comparao.
Cn, 2 = - - n ! - - comparaes para n mdulos.
2 ! (n-2) !A sada 1 se as duas sadas discordam;
J K
Q Q
VOTADOR4 GATES
INICIALIZAO
VOTADOR4 GATES
SOMADOR(5 GATES)
SOMA
CARRY
A
Ec
Es
SOMA
Ec
B
CARRY INCARRY
Ec - Erro do carry
Es -Erro da soma
MDULO(5 GATES)
MDULO2
MDULON
COLETOR(4 GATES)
DETECTOR6 GATES
COMPARADOR
3 GATES
SADA
-
7/24/2019 Apostila - Requisitos de Software PCS2049 Poli USP
35/206
35
A sada 0 se as duas sadas concordam.
Exemplo para 3 mdulos:
Figura 5.18
- Detetor: determina quais comparaes discordam e desabilita a unidade
(mdulo) que discorda com a maioria dos mdulos. A sada para cada um
dos mdulos:
1: o mdulo discorda com a maioria dos mdulos
0 o mdulo concorda com a maioria dos mdulos.
Usa o mesmo mecanismo de flip-flops tipo JK. Exemplo para 3 mdulos est
na figura 5.19.
Q K
Q J
F1
F2
F3
INICIAO
1- mdulo 1 falho0 - mdulo 1 bom
Q K
Q J
Q K
Q J
D12
D23
D13
Figura 5.19 - Exemplo: Somador de 1 bit
D12
D23
D13
COMPARAO ENTRE MDULO 1 e 2
COMPARAO ENTRE MDULO 2 e 3
COMPARAO ENTRE MDULO 1 e 3
SADAMDULO 1
SADAMDULO 2
SADAMDULO 3
-
7/24/2019 Apostila - Requisitos de Software PCS2049 Poli USP
36/206
36
O mdulo que indicado como falho no influencia na sada do sistema.
Figura 5.20Coletor
O esquema do coletor apresentado na figura 5.20.
F1
F2
F3
Sada doMdulo 1
Sada doMdulo 2
Sada doMdulo 3
Sada do sistema
-
7/24/2019 Apostila - Requisitos de Software PCS2049 Poli USP
37/206
37
Figura 5.21
COMPARAO AUTO REMOO" SIF-OUT
No de gates:
no. de flip flops:
38
3
38 *interessante
3
SumComparator
Detector
SumCollector
CarryCollector
Full-Adder1
Full-Adder2
Full-Adder3
CarryComparator
A
B
C
A
B
C
A
B
C
Sum S1
Carry C1
Sum S2
Carry C2
Sum S3
Carry C3
DS12DS13
DS23
DC12
DC13
DC23
S3
S2
S1
C3
C2C1
DC12DC13
DC23
SumOutput
CarryOutput
D12
D13
D23
F1
F2F3
-
7/24/2019 Apostila - Requisitos de Software PCS2049 Poli USP
38/206
38
d) Arquitetura Tripla-Duplex.
Combina redundncia triplicada com comparao.
O TMR permite mascarar defeitos. A duplicao com comparao permite
defeitos serem detectados e mdulos com defeitos removidos da votao.O esquema desta soluo apresentado a seguir:
Figura 5.22
5.2. Redundncia de Informao
adio de informao para permitir deteco de defeito, mascaramento de
defeito ou possivelmente tolerncia ao defeito.EX.: cdigo de deteco e correo de erros.
Algumas definies:
- Cdigo: meio de representar informao, ou dados, usando um conjunto bem
definido de regras.
- Palavras de Cdigo: coleo de smbolos usados para representar um pedao
particular de dados baseados num cdigo especfico.
- Cdigo Binrio: os smbolo so 0 s e 1 s.Um conceito fundamental na caracterizao dos cdigos de deteco e
correo de erros a Distncia Hamming.
A Distncia Hamming entre duas palavras binrias o nmero de posies
de bits na qual as duas palavras diferem.
0000 x 0101 dist. hamming = 2.
Distncia de cdigo.
a mnima distncia hamming entre duas palavras de cdigo vlidas.
COMPARADOR
MODULO 1A
MODULO 1B
COMPARADOR
MODULO 2A
MODULO 2B
COMPARADOR
MODULO 3A
MODULO 3B
VOTADOR
EntradasdoSistema Sada
-
7/24/2019 Apostila - Requisitos de Software PCS2049 Poli USP
39/206
39
Exemplo:
Distncia de cdigo = 3
Qualquer erro em nico bit pode ser corrigido, pois vai ter uma distncia de
hamming de 1 do cdigo correto e uma distncia de hamming de pelo menos 2dos demais cdigos vlidos.
Regra geral:
c... No de bits que podem ser corrigidos de erros.
d-.. No de bits que podem ser detectados erros.
Hd- distncia de Hamming
2c + d+1< Hd
Cdigo Separvel: para obter o cdigo original basta retirar os bits de cdigoou de verificao.
Cdigo no Separvel: para obter o cdigo original necessrio um
processamento mais complexo.
5.2.1. Cdigo de Paridade
Cdigo de paridade de um bit requer a adio de apenas um bit palavra.
Se o bit extra resulta num nmero total de 1 s ser impar, o cdigo
referenciado como paridade impar.
Se o resultado do No de 1 s par, o cdigo de paridadepar.
Ambos tem uma distncia de Hamming de 2 permitindo a deteco de erro em
1 bits, mas no a correo.
Trata-se de um cdigo separvel.
-
7/24/2019 Apostila - Requisitos de Software PCS2049 Poli USP
40/206
40
Exemplo:
Digito Decimal BCD BCD c/
Paridade
Impar BCD c/
Paridade
Par
0 0000 0000 1 0000 01 0001 0001 0 0001 1
2 0010 0010 0 0010 1
3 0011 0011 1 0011 0
4 0100 0100 0 0100 1
5 0101 0101 1 0101 0
6 0110 0110 1 0110 0
7 0111 0111 0 0111 18 1000 1000 0 1000 1
9 1001 1001 1 1001 0
bit de paridade
Aplicao: Memrias em sistemas computacionais.
-
7/24/2019 Apostila - Requisitos de Software PCS2049 Poli USP
41/206
41
O esquema de aplicao mostrado a seguir:
Figura 5.23
Existem outros tipos de paridade para detectar mais erros no cdigo:
5. Paridade bit-por-palavra;
5. Paridade bit-por-byte;
5. Paridade bit-por-chips;
5. Paridade bit-por-multiplos-chips;
5. Paridade interlaada.
A figura a seguir apresenta o esquema geral destes bits de paridade
GERADORDE
PARIDADE
VERIFICADORDE
PARIDADE
MEMRIA
Sinal de Erro
DADOS DE SAIDADADOS DE ENTRADA
bit deparidade
-
7/24/2019 Apostila - Requisitos de Software PCS2049 Poli USP
42/206
42
15 14 13 12 11 109 8 7 6 5 4 3 2 1 0 P
15 14 13 12 11 10 9 8 P2 7 6 5 4 3 2 1 0 P1
15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 P4 P3 P2 P1
15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 P4 P3 P2 P1
Bit-per Word
Chip 4Chip 5 Chip 3 Chip 2 Chip 1
Odd orEven
Bit-per Byte
Bit-perMultiple-Chips
Bit-perChip
-
7/24/2019 Apostila - Requisitos de Software PCS2049 Poli USP
43/206
43
15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 P4 P3 P2 P1
Figura 5.24
a) Bit por palavra
Quando o bus falha em 1, inclusive o bit de paridade, a paridade Impar no
detecta.
Quando o bus falha em 0, inclusive o bit de paridade, a paridade par nodetecta.
b) Bit por Byte -1 grupo paridade impar.
-1 grupo paridade par.
Falha tudo 1 paridade par detecta
Falha tudo 0 paridade impar detecta.
Ambos, bits por palavra e bit por Byte, no detectam erros mltiplos, no
caso de falha de uma pastilha de memria contendo bits de um dado, pois adistncia de cdigo um.
Para resolver este fato tem-se:
c) Bit por mltiplos Chips
Detecta erro numa pastilha, total da memria todos os bits de paridade
detectam este erro (podem detectar) usando tipos de paridade diferentes.
Pode ser difcil de detectar os Chips com defeito.
Surgiu ento,d) Bit por chip tem mesmo problema de bit por palavra.
e posteriormente surgiu,
e) Bit com Paridade Interlaada (overlapping).
Os grupos no esto relacionados com as pastilhas fsicas. Muito usado
quando erros em bits adjacentes so mais provveis. Ex.: bus paralelo.
A paridade interlaada apresenta grupos que so formados com cada bit
aparecendo em mais de um grupo.Neste caso o erro pode ser localizado alm de ser detectado.
InterlacedParity
-
7/24/2019 Apostila - Requisitos de Software PCS2049 Poli USP
44/206
44
Este tipo de paridade o conceito do cdigo de correo de erro Hamming.
3 2 1 0 P2 P1 P0
Figura 5.25
Bits de Informao Bits de Paridade
-
7/24/2019 Apostila - Requisitos de Software PCS2049 Poli USP
45/206
45
Erro no bit Erro no bit de paridade
3 P2 P1 P0 111 7
2 P2 P1 110 6
1 P2 P0 101 5
0 P1 P0 011 3
P2 P2 100 4
P1 P1 010 2
P0 P0 001 1
sem erro 000 0
4 bits 3 bits de paridade.
Pensamento;
R R bits
informao
m mbits de paridade
nde erros: R+m R+m+1 2m
sem erro : 1
-
7/24/2019 Apostila - Requisitos de Software PCS2049 Poli USP
46/206
46
n de bits de Paridade/ n de bits de informao
n de bits de Informao n de bits de Paridade Porcentagem deRedundncia (%)
2 3 150
4 3 75
6 4 66,7
8 4 50,0
10 4 40,0
12 5 41,716 5 31,25
24 5 20,8
32 6 18,75
64 7 10,9
-
7/24/2019 Apostila - Requisitos de Software PCS2049 Poli USP
47/206
47
5.2.2. Cdigos m de n
Definir palavras que tem n bits com exatamente m 1s.
altera
erro n DE 1S M+1 OU M-1
Em um nico bit.
Dificuldades: processo de codificao, decodificao e deteco de erro.
Exemplo: 3 de 6 (i de 2 i) (Redundncia neste caso100%)
Informao Cdigo 3 de 6
000 000 111
001 001 110
010 010 101
011 011 100
100 100 011
101 101 010
110 110 001
111 111 000
Informao adicional
Vantagem Cdigo Separvel
Distncia 2
Este cdigo detecta erros simples em bits e erros mltiplos unidirecionais
(1 0; ou 0 1).
Exemplo: 2 de 5 para dados BCD (no separvel)
-
7/24/2019 Apostila - Requisitos de Software PCS2049 Poli USP
48/206
48
BCD 2 de 5
0 0000 00011 Qual a regra geral?
1 0001 11000
2 0010 101003 0011 01100
4 0100 10010
5 0101 01010
6 0110 00110
7 0111 10001
8 1000 01001
9 1001 00101
d3 d2 d1,d0 b4 b3 b1 b0
-
7/24/2019 Apostila - Requisitos de Software PCS2049 Poli USP
49/206
49
Exemplo:
do = b4.b3 + b3.b2 + b3.b1 + b4.b= b2.b= b3 (b4+b2) + b(b4+b2) + b3.b1
= (b4+b2).(b3+b)+b3.b1
d1 = b4.(b2+b) + b2.(b3+b1)
5.2.3. Cdigos Duplicados
Duplica o cdigo original para formar a palavra codificada.. Vantagem: simplicidade
. Desvantagem: n de bits extra
Aplicao: sistema de memria e alguns sistemas de comunicao.
Em sistema de comunicao o conceito de duplicao freqentemente
aplicado na transmisso de toda a informao duas vezes. Se as cpias
concordam, a informao assumida estar correta.
O prejuzo o decrscimo na taxa de informao.Outra variao complementar a poro duplicada da palavra codificada.
________
Palavra N
Palavra N
_______
Palavra 1
Palavra 1
usado tambm em sistemasde comunicao que tem omesmo meio fsico paratransmisso das informao
-
7/24/2019 Apostila - Requisitos de Software PCS2049 Poli USP
50/206
50
Outra variao a duplicao (inverte e compara) swap and compare. Neste
mtodo so mantidas as duas cpias da informao original, mas trocam-se as
metades da palavra codificada.
L2 U2
U2 L2
L1 U1
U1 L1Ui - Metade Superior
Li - Metade Inferior
-
7/24/2019 Apostila - Requisitos de Software PCS2049 Poli USP
51/206
51
5.2.4. Checksums (Cdigo Separvel)
Aplicvel quando blocos de dados devem ser transmitidos de um ponto para
outro.
Conceito bsico: Soma dos dados originais (variaes na forma que a soma
feita).
Dado Original
dn rn
Transfere
d1 r1
Checksum sobre
os dados
originais
Checksum
sobre os dados
recebidos
Comparao
Checksum
recebidos
H quatro tipos primrios de checksum:
Preciso simples;
Preciso dupla;
Honeywell;
Residual.
-
7/24/2019 Apostila - Requisitos de Software PCS2049 Poli USP
52/206
52
a) Preciso Simples
Ignora o overflow do checksum.
A primeira dificuldade que se perde a habilidade de detectar erros
d3 d2 d1 d0 d3 d2 d2 d0
0 1 1 1 1 1 1 1
0 0 0 1 1 0 0 1
0 1 1 0 1 1 1 0
0 0 0 0 X 1 0 0 0
checksum Falha em 1 checksum
1 1 1 0 1 1 1 0
no deteta erro
1 1 1 0
B) Preciso DuplaComputar um checksum de 2n bits para um bloco de palavras com n bits.
Ainda possvel overflow, mas, mais difcil.
1 11 1 1 11 0 0 1
1 1 0 0 01 1 1 0
1 0 0 1 1 01 0 0 0
1 0 1 1 1 0
Exemplo anterior
Checksum Calculado0010 1110
Checksum Transmitido Comparao0000 1110
1000 1110
-
7/24/2019 Apostila - Requisitos de Software PCS2049 Poli USP
53/206
53
c) Honeywell
Concatena palavras consecutivas para formar uma coleo de palavras de
comprimento duplo.
O Checksum calculado sobre esta nova estrutura.Vantagem: erro num bit de todas as palavras provocar erro pelo menos em 2
bits do Checksum.
Palavra n Palavra n -1 Palavra n
Palavra 1 Palavra 1 Palavra 2
Checksum
Exemplo anterior:
0 0 0 1 0 1 1 1 1 0 0 1 1 1 1 1
0 0 0 0 0 1 1 0 1 0 0 0 1 1 1 0
0 0 0 1 1 1 0 1 0 0 1 0 1 1 0 1
1 0 0 1 1 1 0 1
Checksum Calculado Checksum Calculado
Comparao (deteta o erro)
-
7/24/2019 Apostila - Requisitos de Software PCS2049 Poli USP
54/206
54
d) Residual
Mesmo conceito da preciso simples exceto que o bit carry no ignorado,
mas, adicionado de volta ao checksum.
Exemplo:Palavra n
Palavra 1
C SOMA
C
Checksum
Bit deCarry
-
7/24/2019 Apostila - Requisitos de Software PCS2049 Poli USP
55/206
55
0111 1111 11110001 1001 10010110 1110 1 1000
0000 1000 1Checksum Calculado 10011110
1110 1 01111
10001000
1 00001
0001Detecta
1110
Atravs do checksum no h condies para se determinar onde o erro ocorreu.
5.2.5. Cdigos Cclicos (No Separvel).
caracterizado pelo seu polinmio gerador G (x ) de grau maior ou igual a (n-
R ) onde n o nmero de bits contidos na palavra codificada produzida por G
(x ) , e R o nmero de bits na informao original a ser codificada.
Tais cdigos tm a propriedade de serem capaz de detectar todos erros simples
e mltiplos, adjacentes, que afetam menos do que (n-R ) bits. (Para (n,R)
cdigo G (x)) grau (n-R ).
A propriedade de deteco de erro dos cdigos cclicos particularmente
importante nas aplicaes de comunicaes onde erros transitrios podem
ocorrer.
No cdigo cclico a codificao representa os coeficientes do polinmio.
Exemplo: Cdigo = (vo, v1, -----,vn-1) corresponde ao polinmio
V(x) = Vo+v1.X+v2.X+...+vn-1. (Polinmio Codificado)
V (X) = D (X).G(X). Polinmio de dados D (x).
Qualquer adio requerida durante a multiplicao de dois polinmios
desempenhada usando mdulo-2.
-
7/24/2019 Apostila - Requisitos de Software PCS2049 Poli USP
56/206
56
Exemplo: G (X) = 1+X+X
D (X) = 1+X+X+X
v (x) = ? 1011
1111 v(x) = 1+X+X5+X6
1011
1011 (1001011)
1011
1011 forma de representar
------------
1101001
Information (d0,d1,d2,d3) Code (v0,v1,v2,v3,v4,v5,v6 )
0000 0000000
0001 0001101
0010 0011010
0011 0010111
0100 0110100
0101 01110010110 0101110
0111 0100011
1000 1101000
1001 1100101
1010 1110010
1011 1111111
1100 10111001101 1010001
1110 1000110
1111 1001011
Distncia de cdigo = 3
* Qualquer erro em 2 bits detetado *O circulo lgico obtido da seguinte forma:
-
7/24/2019 Apostila - Requisitos de Software PCS2049 Poli USP
57/206
57
Ex.: G(X) = 1+ X2+ X3; D(X)
V(X) = G(X).D(X)=(1+ X2+ X3) D(X) =
(D (X)+D(X) X2+D(X). X3=
(D(X)+(D(X)+D(X).X). X
2
=
Exemplo:
G(x) = 1 + X + X 3
D(x)
V (x) = D (x) + (1+X+ X3)
= D (x) + (D(x) . X + D (x) . X3
= D (x) + (D (x) + D (x). x2) . X
x x x x + V(x)
D(x)
x = Multiplicao por X
+ = Adio modulo 2. (XOR-OU EXCLUSIVO)
x +x x + V(x)
D(x)
REGISTRADOR2
REGISTRADOR1
REGISTRADOR3
Clock
V(x)
D(x)
Em circuito
-
7/24/2019 Apostila - Requisitos de Software PCS2049 Poli USP
58/206
58
Processo de Codificao Registradores: (D(X)=(1101)
Registradores
Clock 1 2 3 D(X) V(X)
0 0 0 0 1 11 1 0 1 1 0
2 1 1 1 0 1
3 0 1 1 1 0
4 1 0 0 0 0
5 0 1 0 0 0
6 0 0 1 0 1
7 0 0 0 0 0
1011
1011
1011
1011
1011 a
1000101
-
7/24/2019 Apostila - Requisitos de Software PCS2049 Poli USP
59/206
59
Processo de Decodificao
Se R(X) um cdigo vlido recebido ento:
R(X) = D(X) . G(X)
Podemos escrever queSndrome
R(X) = D(X). G(X) + S(X)
e que S(X) deve ser zero se o polinmio R(X) um cdigo vlido.
V(X) = G (X).D(X)
Exemplo: G (X) = 1+X+ X3
D(X) = V(X)+B(X)V(X) = (1+X+ X3).D(X)+S(X)
V(X) = D(X)+D(X) (X+ X3)
Em mdulo-2 Soma e Subtrao so iguais
D(X) = V(X) + D (X) (X+ X3 )
B(x) = D (X) (X+ X3)
= D (X) . X+D(X) . X
3
Circuito:
V(X)
x x x
+ +
D(X)
B(X)
-
7/24/2019 Apostila - Requisitos de Software PCS2049 Poli USP
60/206
60
Clock
period
Register values
1 2 3 V (x) B(x) D(x)0 0 0 0
1 0 1
1 0 0 1
0 1 1
2 0 1 1
1 1 0
3 1 1 00 1 1
4 1 0 1
0 0 0
5 0 1 0
0 0 0
6 1 0 0
1 1 07 0 0 0
5.2.6. Cdigos Aritmticos.
So teis para verificar operaes aritmticas (+,*, ).
Propriedade: A(b*c) =A( b )* A ( c ).
V(X)
x x x
+ +
D(X)
B(X)
+
x
= Multiplication by X
= Mo dulo-2 Addition
-
7/24/2019 Apostila - Requisitos de Software PCS2049 Poli USP
61/206
61
Exemplos de cdigos aritmticos: AN, Residual, Inverso - residual e Sistema
de Nmeros Residuais.
a) Cdigos AN
O mais simples cdigo aritmtico que formado multiplicando cada dado poruma constante A.
Soma: A 2a(No pode ser potncia de 2).
No lado da recepo verifica se o cdigo divisvel por A.
( an-1an-2.....a2a1a0).
an-1. 2
a +n-1
+ ...+ a2. 2
a+2
+a1. 2
a+1
+a0. 2
a
+0. 2
a
+0. 2
a
-1
--+0. 2
0
.
mudando este bit continua sendo divisvel por 2a
-
7/24/2019 Apostila - Requisitos de Software PCS2049 Poli USP
62/206
62
Exemplo: 3N cdigo = (N+2N)
Original Information 3/V code word
00000001
0010
0011
0100
0101
0110
01111000
1001
1010
1011
1100
1101
11101111
000000000011
000110
001001
001100
001111
010010
010101011000
011011
011110
100001
100100
100111
101010101101
(n+1)-bit Adder
an-1 a1
N
a0
Sn Sn-1 S1 S2Sn+ 1
an-1
2N
a0an-2
Carry
3N
-
7/24/2019 Apostila - Requisitos de Software PCS2049 Poli USP
63/206
63
b) Cdigos Residuais (Separvel)
Adiciona um nmero residual ao nmero.
O nmero residual simplesmente o resto quando o nmero dividido por um
inteiro.Ex.: Inteiro N, inteiro m
N = Im + r
0 r < m.
base (mdulo)
Information Residue code word0000
0001
0010
0011
0100
0101
01100111
1000
1001
1010
1011
1100
11011110
1111
0
1
2
0
1
2
01
2
0
1
2
0
12
0
0000
0001
0010
0011
0100
0101
01100111
1000
1001
1010
1011
1100
11011110
1111
00
01
10
00
01
10
0001
10
00
01
10
00
0110
00
Processo de deteco de erro na recepo.
-
7/24/2019 Apostila - Requisitos de Software PCS2049 Poli USP
64/206
64
5.2.7. Cdigos Berger
Adicionar um conjunto de bits verificadores, caracterizando um cdigo
separvel.
O comprimento _N e tem _I bits de informao e _R bits de verificao.
R=log2 (I+1) e n=I+R
Exemplo:
(0111010) Informao I=7
R=log (7+1)=3
O no. de 1s 4 (100)
complemento
(011)
cdigo resultante
(0111010011)
Adder
D1 D2
Modulo-mAdder
r1 r2
ResidueGenerator
Compare
S
rc rs
S rsError
-
7/24/2019 Apostila - Requisitos de Software PCS2049 Poli USP
65/206
65
Quando o n de bits da Informao baixo, a redundncia alta.
N de bits de Informao (I) N de bits de verificao (R) %
4 3 75
8 4 50,0016 5 31,25
32 6 18,75
64 7 10,94
Original Information Berger code
0000
00010010
0011
0100
0101
0110
0111
10001001
1010
1011
1100
1101
1110
1111
0000
00010010
0011
0100
0101
0110
0111
10001001
1010
1011
1100
1101
1110
1111
111
110110
101
110
101
101
100
110101
101
100
101
100
100
011
-
7/24/2019 Apostila - Requisitos de Software PCS2049 Poli USP
66/206
66
Exemplo: I=4 e R=3
1011 no. de 1 e = 3 (011)
(1011100) (100)
5.2.8. Paridade Horizontal e Vertical
Quando o erro mltiplo, possvel detectar, mas no corrigir o erro.
5.2.9. Cdigo de Correo de Erro Hamming
Requer de 10 a 40% de redundncia. A codificao e codificao acrescentam
um atraso relativamente pequeno.
Este cdigo utiliza _c bits de verificao de paridade para proteger R bits de
informao.
Relao: 2c c + R + 1
Comprimento total: n = c + R
O cdigo Hamming formado particionando os bits de informao em grupos
de paridade e especificando um bit de paridade para cada grupo. (par ou
impar).
A habilidade de localizar qual bit errado obtida atravs de superposio dos
grupos de bits.
MEMO
RIA
PARIDA
DE
HORIZO
N
TAL
PARIDADE VERTICAL
aps localizar o erro pode ser corrigido
-
7/24/2019 Apostila - Requisitos de Software PCS2049 Poli USP
67/206
67
Exemplo:
bits de informao: (d3d2d1d0)
2
c
c + 4 + 1 = C+5
2cc + 5 C = 3 (C1C2 C3)
Bit errado bit de Verificao Afetado
d0
d1
d2d3
C1
C2
C3
C1, C2
C1, C3
C2, C3C1, C2, C3
C1
C2
C3
Na recepo calcula-se o cdigo de verificao e compara com o recebido.
definido SINDROME como a comparao entre o cdigo calculado e orecebido (XOR).
Se for igual a 1 indica incorreo.
(Um Bit errado) C1, C2, C1, C3
Sindrome
d0 110
d1 101d2 011
d3 111
c1 100
c2 010
c3 001
Esquema geral utilizao
-
7/24/2019 Apostila - Requisitos de Software PCS2049 Poli USP
68/206
68
Para 2 bits errados acrescenta-se mais um bit de paridade da palavra. (Parid.
Global).
Sindrome
no zero
no zero
zero
ParidadeGlobal
incorreto
correto
correto
correo
um bit erradocorreo
Dois bits errados
Correto
5.2.10 Circuitos Integrados com Correo de Erro
Muitos circuitos integrados esto disponveis para detectar, localizar e corrigir
erros. Como exemplo, pode-se citar o 8206 da Intel, MC68540 da Motorola,
AM2960 e AMZ8160 da Advanced Micro Devices, DP8400 da NationalSemicondutor e MB1412A da Fijitsu.
Estes circuitos integrados so projetados para gerarem os bits de verificao,
gerar a sindrome, decodificar a sindrome e realizar a correo dos dados.
Unidades tpicas so organizadas para suportar dados de 16 bits, mas podem
ser expansveis para deteco e correo de palavras de tamanho maior.
CheckBitGenerator
SyndromeGeneratorM
emory
CheckBitGenerator
DecoderCor
rection
IncomingData
CheckBits
CheckBits
SyndromeBits
UncorrectData
Data
CorrectData
-
7/24/2019 Apostila - Requisitos de Software PCS2049 Poli USP
69/206
69
Quase todos os CI s usam o Cdigo de Hamming modificado para detectar
erros duplos e corrigir erros simples.
O Diagrama em blocos da estrutura fundamental de um Circuito Integrado
deste tipo mostrada a seguir. Uma palavra vindo do sistema vai diretamente memria e a um gerador de bits de verificao. Ambos so armazenados na
memria. Na leitura de uma palavra da memria ocorrem os seguintes eventos:
1. O dado usado para regenerar os bits de verificao atravs de um Gerador
de Bits de Verificao.
2. criado a sndrome comparando os bits de verificao original com os
regenerados.
3. A Sndrome usada para identificar o bit errado.4. Os dados so passados atravs de uma unidade de correo.
5. Os dados corrigidos so colocados no bus.
O nmero de ocorrncia de erros usado para indicar um defeito permanente
na memria.
Para Intel 8206: (16 bits )
tempo de deteco do erro: 52ns
tempo de deteo e correo: 67ns.Para efeito de rapidez, em cdigos separveis, a informao j pode ser usada
enquanto se realizam as verificaes necessrias.
Circuito Integrado de Correo de Erro
Bus
de
Dados
Corretor Decodificador
Gerador"Sindrome"
Gerador deBits de verificao
Para escritaGerador de
Bits de verificaoPara leitura
Memoria
DadosCorrigidos
Dados
Bits deVerificao
Dados
Dados
Bits deVerificao
-
7/24/2019 Apostila - Requisitos de Software PCS2049 Poli USP
70/206
70
5.3. Redundncia por Tempo.
Tanto a redundncia de hardware como a de informao, requer um hardware
extra na sua implementao.
A Redundncia por tempo, por sua vez, no requer hardware extra.A escolha adequada deve ser tomada em funo dos requisitos de cada
aplicao.
5.3.1. Deteco de Defeito Transiente.
O conceito bsico da redundncia temporal a repetio da computao de
forma a permitir que o defeito seja detectado. A forma bsica da redundncia
temporal apresentada a seguir:
Se um erro detectado, a computao pode ser realizada novamente para
verificar se a discordncia contnua ou desaparece. Tal abordagem
interessante para deteco de erros resultantes de defeito transientes, mas no
protege contra erros de defeitos permanentes.
Pode-se incrementar o sistema de forma que quando o erro for detectado,
existirem duas condies a serem analisadas:
a) Um defeito permanente produziu o erro, e aquela parte do sistema deve ser
isolada (reconfigurada);
b) Um defeito transiente aconteceu e produziu o erro, mas o hardware
continua sendo utilizvel, sem necessidade de isolar parte do sistema.
Isto pode ser realizado em funo do nmero de computaes repetidas aps a
deteco do primeiro erro. (Depende dos requisitos do sistema).
Computao ArmazenaResul t ado(to)Dado
Computao ArmazenaResul t ado
(to+)Dado
Computao ArmazenaResul t ado
(to+n)Dado
Comprador Sinal de Erro
.
Tempo
-
7/24/2019 Apostila - Requisitos de Software PCS2049 Poli USP
71/206
71
5.3.2. Deteco do Defeito Permanente.
Um dos grandes potenciais da tcnica da redundncia temporal a habilidade
de detectar defeitos permanentes usando um mnimo de hardware extra.
Quatro abordagens so consideradas:* Lgica Alternada;
* Recomputao com Operandos Deslocados;
( Recomputing with Shifted Operands - Reso);
* Recomputing with Swapped Operands (RESWO)
Recomputao com Operandos trocados
* Recomputao com Duplicao com Comparao. Recomputing with
duplication with comparison (REDWC).
O conceito fundamental por trs de cada abordagem apresentado a seguir:
A seleo da funo de codificao e (x) feita para permitir que defeitos no
hardware sejam detectados.
Computao
ArmazenaResu l tado
ArmazenaResu l tado
Compara
Codificae (x) Computao
Decodificae-1 (R)
to
Dado X
to+
Sinal de Erro
R
Tempo
Dado X
-
7/24/2019 Apostila - Requisitos de Software PCS2049 Poli USP
72/206
72
5.3.2.1. Lgica Alternada
Aplicada na transmisso de dados digitais em cabos e deteco de defeitos em
circuitos digitais.
Seja a figura a seguir, de transmisso de dados sobre uma via paralela.
No instante to transmite-se os dados originais e no instante to+g transmite-seos dados complementados.
Suponha um defeito numa linha, grampeando-a em nvel 1.
O Defeito pode ser detectado, alternando a lgica:
O conceito da Lgica Alternada pode ser aplicado, em geral, a circuitos lgicos
que tem a propriedade de self-duality, ou seja:
f(x) = f(x)
5.3.2.2. Recomputao com Operandos Deslocados
Recomputing with Shifted Operands-RESO. Utilizado como mtodo de
fornecer deteco de erro em ULA.
A funo de Codificao selecionada como operao de deslocamento para a
esquerda e a de decodificao para a direita. (deslocamento lgico ou
aritmtico).
T
XRX
X1
X2
Xn
BusParalelo
DadosRecebidos
DadosTransmitidos
T
XRX
0
1
1
1
0
0
1
0
0
0
1
1X
toto+g
ComplementaresN o maisComplementares
"1"
Bus Paralelo
-
7/24/2019 Apostila - Requisitos de Software PCS2049 Poli USP
73/206
73
Como exemplo, considere a operao lgica AND realizada sobre 8
operandos, como mostrado a seguir. Se um bit slice est como defeito e no
tem efeito sobre os demais, um nico deslocamento para esquerda detecta o
erro que ocorre na operao lgica.
Comparao dos R7 R6 R5 R4 R3 R2* R1 R0
Resultados R7 R6 R5 R4 R3 R2 R1* R0
A estrutura de ULA que usa esta tcnica apresentada a seguir. O Hardware
adicional so 3 Deslocadores, um Registrador para armazenar o resultado da
primeira computao e um comparador.
B7 A7
R7
B6 A6
R6
B5 A5
R5
B4 A4
R4
B3 A3
R3
B2 A2
R2*
B1 A1
R1
B0 A0
R0
R7 R6 R5 R4 R3 R2
B7 A7 B6 A6 B5 A5 B4 A4 B3 A3 B2 A2 B1 A1
R1*
B0 A0
R0
0 0
Defeituoso
Registrador dedeslocamento
(esquerdo)
Registrador dedeslocamento
(esquerdo)
Unidade Lgica Aritmetica (ULA)
Registrador dedeslocamento
(direito)
Comparador
Registrador deArmazenagem
Deslocamentoem bit
Deslocamentoem bit
ComandodeDeslocamento
Comandode Deslocamento
Deslocamentoem bit
Sinal de erro
A B
-
7/24/2019 Apostila - Requisitos de Software PCS2049 Poli USP
74/206
74
O problemas primrios com esta arquitetura so o hardware adicional
necessrio, a falta de cobertura para defeitos nos deslocadores, e o requisito
que o comparador seja totalmente auto-verificvel de maneira que defeitos no
comparador no comprometa a eficincia da abordagem.
5.3.2.3. Recomputao com Operando Trocados
RESWO - Recomputing with Swapped Operands. O conceito bsico desta
arquitetura mostrado a seguir:
Durante a Segunda computao, a metade superior e inferior so trocadas de
forma que o bit slice com defeito atua nas duas metades durante a primeira e a
Segunda computao.
AH AL
BH BL
RH RL
AL AH
BL BH
RL RH
Operandos
ResultadoResultado
Instante to Instante to+
-
7/24/2019 Apostila - Requisitos de Software PCS2049 Poli USP
75/206
75
A estrutura da ULA projetada para acomodar a arquitetura RESWO mostrada
a seguir:
O multiplex um circuito relativamente simples apresentado a seguir:
A
B
C A if S=0
B if S=1
S = Swap ComandAB
InputsFigura 5.65
S
MultiplexingCircuit
AH AL BH BL
AHor
AL
BHorBL
MultiplexingCircuit
AL AH BH BL
AHorAL
BHorBL
Upper Halfof
AL U
Lower Halfof
AL UMU X
C1COUT=OR
C1
C2 C2 MU XC1ORCIN
C1
SwapCommand
OR
C2
Cin Cin
C2
MU X
SwapCommand
Sto rage Register
Comparator
Result Result
ErrorSignal
SwapCommand Result H alf
(RH or RL)
Result Half(RL or RH)
Figura 5.64
-
7/24/2019 Apostila - Requisitos de Software PCS2049 Poli USP
76/206
76
5.3.2.4. Recomputao com Duplicao e Comparao Recomputing with
Duplication with Compararison - REDWC
A Redundncia no tempo utilizado para completar o clculo e obter o
resultado final.Esta arquitetura, no caso do somador, realiza duas computaes. Na primeira
as metades inferiores dos operandos so somadas nas duas metades do
somador. Os resultados so ento comparados e um resultado armazenado
para representar a metade inferior.
A Segunda computao realiza o mesmo para as metades superiores.
Bupper Blower
B
Aupper Alower
A
Upper Half ofAdder
Blower Alower
CinC1
Rlower
Lower Half ofAdder
Blower Alower
CinC1
Rlower
Upper Half ofAdder
Bupper Aupper
C1Cout
Rupper
Lower Half ofAdder
Bupper Aupper
CinCout
Rupper
Second Calculation
First Calculation
Figura 5.66
-
7/24/2019 Apostila - Requisitos de Software PCS2049 Poli USP
77/206
77
O diagrama em bloco desta arquitetura apresentado na figura que se segue:
32-bitSwapper
B
32
A
32
16 16
16-bitFull-Adder
32-bitSwapper
B
32
A
32
16 16
16-bitFull-Adder
17-bitComparator
16-bitLatch
16 16
1-bitLatch
MUX
Cout C1
Error
SignalRlower
S
CinC1
Rupper
Cout
S
C1
S
Figura 5.67
Figura 5.67
5.3.2.5. Recomputao para Correo de Erro
A Redundncia pro tempo pode ser utilizada tambm para correo de erro se
repetida 3 ou mais vezes.
Considere a operao lgica AND ilustrada na figura que se segue:
-
7/24/2019 Apostila - Requisitos de Software PCS2049 Poli USP
78/206
78
0 0 a7 a6 a5 a4 a3 a2 a1 a0
0 0 b7 b6 b5 b4 b3 b2 b1 b0
0 0 r7 r6 r5 r4 r3 r2 r1 r0
0 a7 a6 a5 a4 a3 a2 a1 a0 0
0 b7 b6 b5 b4 b3 b2 b1 b0 0
0 r7 r6 r5 r4 r3 r2 r1 r0 0
a7 a6 a5 a4 a3 a2 a1 a0 0 0
b7 b6 b5 b4 b3 b2 b1 b0 0 0
r7 r6 r5 r4 r3 r2 r1 r0 0 0
0 0 r7 r6 r5 r4 r3 r2 r1 r0
0 0 r7 r
6 r
5 r
4 r
3 r
2 r
1 r
0
0 0 r7 r6 r5 r4 r3 r2 r1 r0
0 0 r7 r6 r5 r4 r3 r2 r1 r0
FaultyBit
PerformBit-by-BitVote to CorrectErroneous Bits
Repeat Operationon OperandsAfter a 2-bitLeft Shift
PerformOperation on
UnshiftedO erands
Repeat Operationon OperandsAfter a 1-BitLeft Shift
Corrected Result
-
7/24/2019 Apostila - Requisitos de Software PCS2049 Poli USP
79/206
79
Suponha que a operao realizada trs vezes: a primeira, sem deslocamento
dos operandos; a Segunda com o deslocamento de 1 bit dos operandos; a
terceira, com deslocamento de 2 bits dos operandos.
Desta forma, um bit diferente no resultado ser afetado pelo defeito no bitslice. Se os bits em cada posio so comparados, o resultado devido ao
defeito, pode ser corrigido realizado-se uma votao majoritria.
Este soluo no funciona para operaes aritmticas, pois os bits adjacentes
no so independentes. Um defeito em um bit slice pode afetar mais de um
bit no resultado final.
5.4. Redundncia por Software
Em aplicaes que utilizam computadores, muitos meios de deteco de
defeitos e tcnica de tolerncia defeitos podem ser implementados por
software. O hardware redundante necessrio para implementar esta capacidade
pode ser mnimo, mas o software redundante bastante substancial.
A Redundncia de Software pode aparecer como muitas linhas extras do
cdigo usadas para verificar a magnitude de um sinal ou uma pequena rotina
usada para testar periodicamente a memria (escrevendo e lendo em posies
especficas).
So consideradas aqui, trs tcnicas de redundncia de software:
- Verificao de Consistncia;
- Verificao de Capacidade;
- N_ Verses de software.
5.4.1. Verificao de Consistncia
A verificao de consistncia usa o conhecimento a priori sobre as
caractersticas da informao a ser verificada a correo. Por exemplo, em
algumas aplicaes, conhecido que uma grandeza nunca deve exceder uma
certa magnitude. Se o sinal exceder esta magnitude, indica a presena de
algum erro.
A verificao da consistncia pode ser implementada em hardware, mas mais
realizada em software.
-
7/24/2019 Apostila - Requisitos de Software PCS2049 Poli USP
80/206
80
Um exemplo de verificao de consistncia que pode ser realizado em
hardware a deteo de cdigos de instruo invlidos em computadores.
Muitos computadores usam n bits para representar 2k instrues possveis,
onde K
-
7/24/2019 Apostila - Requisitos de Software PCS2049 Poli USP
81/206
81
5.4.3. N_ Verses de Software
Defeitos no software so conceitos no usuais. Tcnicas para detectar estes
defeitos devem detectar desvios no projeto. Uma simples duplicao e
procedimento de comparao no detectam defeitos no software se os mdulos
de software duplicados so idnticos.
O conceito bsico em N_ Verses de software projetar e codificar o software
N vezes e comparar os N resultados produzidos por cada um destes mdulos.
Cada um desses mdulos projetado e codificado por um grupo separado de
programadores. Cada grupo projeta o software a partir de uma mesma
especificao, de maneira que cada mdulo desempenha a mesma funo.
esperado que N projetos independentes no iro gerar erros iguais.
Entretanto quando ocorre um erro, no ocorre em todos os mdulos, ou ocorre
de maneira diferente em cada mdulo, de forma que os resultados finais sero
diferentes.
Existem certas polmicas com relao N_ Verses de software.
A primeira que os projetistas e codificadores tendem a fazer erros similares.
Alm disso, no se garante que verses independentes de um programa no
tero defeitos idnticos.
Finalizando, como as N verses se originam a partir de uma mesma
especificao, no se detecta erros na especificao.
Se o software desenvolvido corretamente, no h a necessidade de se utilizar
tcnicas de tolerncia a defeitos de software.
-
7/24/2019 Apostila - Requisitos de Software PCS2049 Poli USP
82/206
82
6. Tcnicas de Avaliao de Sistemas Tolerantes a Defeito
- Taxa de Falhas
- Tempo mdio para Falhar ( MTTF )- Tempo mdio entre Falhas ( MTBF )
- Cobertura de Defeitos
- Anlise de Confiabilidade
- Anlise de Segurana
- Anlise de Disponibilidade
- Anlise de Manutenabilidade
- Taxas de Redundncia- Custos
6.1. Funo Confiabilidade ( R (t )) e Taxa de Falhas
Para se definir a Funo ConfiabilidadeR(t) necessrio conceituar o termo
taxa de falhas. Intuitivamente a taxa de falha o nmero esperado de falhas de
um tipo de sistema num determinado perodo de tempo.
Como exemplo, pode-se considerar que um computador falha, em mdia, umavez a cada 2000 horas. Neste caso o computador apresentar uma taxa de
falhas de 1/2000 falhas/hora.
A taxa de falha denotada pela letra grega .
Quando algum tipo de redundncia for incorporado como meio de alcanar
tolerncia a defeito, a taxa de falhas desse novo sistema redundante deve ser
menor do que a taxa da falha do sistema similar, no redundante.
Para podermos representar formalmente o conceito de Confiabilidade pode-seseguir o seguinte raciocnio.
Vamos utilizarNcomponentes idnticos.
Suponha que esto todos operacionais no instante toe que se registre o nmero
de componentes falhos e componentes corretos no instante t.
Nf(t): Nmero de componentes que falharam at o instante t.
No(t): Nmero de componentes operacionais at o instante t.
-
7/24/2019 Apostila - Requisitos de Software PCS2049 Poli USP
83/206
83
A confiabilidadeR(t)neste exemplo pode ser calculada como a diviso entre o
nmero de componentes operacionais, dividido pelo nmero total de
componentes.
)()( )()()( tNtNtN
NtNtR
fo
oo
Esse valor corresponde a probabilidade de um componente funcionar no
intervalo entre [to,t].
Por outro lado, a No-Confiabilidade Q(t)de um componente funcionar no
intervalo [to,t]pode ser calculada como:
)()()()()(
tNtNtN
NtNtQ
fo
ff
Desta forma:
N
tNtQtR
f )(1)(1)(
dt
tdN
Ndt
tdR f )(.1)(
dt
tdRN
dt
tdNf )(.)(
, considerada como taxa de falha instantnea.
A Funo Taxa de Falha (t) ou Hazard Function ou Hazard Rate definida como:
)(
)(
)(tN
dt
tdN
to
f
(falhas por unidade de tempo)
dt
tdR
tN
N
dt
tdRN
tNt
oo
)(.
)()
)(..(
)(
1)(
-
7/24/2019 Apostila - Requisitos de Software PCS2049 Poli USP
84/206
84
)(1
)(
)(
)(
)(tQ
dt
tdQ
tR
dt
tdR
t
Sendo quedt
tdQtf
)()( correspondente funo densidade de falha.
A funo taxa de falhas (t) depende do tempo, e verifica-se
experimentalmente que para componentes eletrnicos e computacionais existe
um perodo em que (t) aproximadamente constante. Este fato est
relacionado com a denominada Curva da Banheira, conforme mostra a figura
6.1.
(t)
t
Perodo de Vida tilMortalidadeInfantil
Envelhecimento
Figura 6.1Curva da Banheira
A regio de Mortalidade Infantil corresponde regio em que aqueles
componentes produzidos com algum defeito constitucional falham. Para se
eliminar esses componentes com uma maior rapidez, pode-se utilizar tcnicas
de Teste de Burn-in, onde os componentes so submetidos a um stress maior
do que aquele em que submetido quando em operao normal. O Perodo de
Vida til corresponde ao perodo de tempo em que a taxa de falhas do
-
7/24/2019 Apostila - Requisitos de Software PCS2049 Poli USP
85/206
85
componente se mantm relativamente estvel. O perodo de envelhecimento
corresponde ao perodo em que a taxa de falhas do componente comea a
crescer vertiginosamente, aumentando drasticamente a probabilidade do
componente falhar, caso no tenha ainda falhado.J havamos concludo que:
)(
)(
)(tR
dt
tdR
t
)().()(
tRtdt
tdR
Se admitirmos que o sistema est no perodo de vida til, a funo taxa de
falha tem um valor constante, denominado .
)(..)(
tRdt
tdR
A soluo para essa equao :
tetR .)(
que corresponde a uma curva de distribuio exponencial. Vale ressaltar que
essa expresso s vlida para componentes eletrnicos e computacionais.
Em certas aplicaes, entretanto, no se pode assumir que a funo de taxa de
falha apresenta valor constante. Entre estas aplicaes pode-se citar sistemas
mecnicos, pneumticos, hidrulicos e o prprio componente Software. Nestes
casos outros modelos devem ser empregados.
6.2. Clculo da Taxa de Falhas
Um aspecto importante na anlise de sistema a estimativa de taxa de falhas
de componentes especficos. A tcnica mais comum do Departamento de
Defesa Americano (USDOD ) cuja norma MIL - HDBK - 217 contm esses
dados a partir de valores experimentais.
Apresenta - se a seguir alguns parmetros.
A medio de falha de um CI dada por:
-
7/24/2019 Apostila - Requisitos de Software PCS2049 Poli USP
86/206
86
= L. Q ( C1 . t+C2. E) . Pfalhas por milhes de horas.
L... Fator de aprendizado: representa a maturidade do processo do fabricante
utilizado na produo do CI (Varia de 1 a 1)
Q ... Fator de qualidade: representa o conjunto de teste que o componentesofre antes de ser vendido por um fornecedor (1 a 3)
Existem 4 nveis bsicos: A, B, C, D.
Classes A e B => aplicaes militares
A => Q = 1
B => Q = 2
Classe C => componentes comerciais de alta qualidade.
Q = 16
Classe D => componentes comerciais herme