"SISTEMA DE BACK UP"
RONALDO PEIXOTO THOMPSON
TESE
SUBMETIDA
AO CORPO
DOCENTE
DA COORDENAÇÃO
DOS
PROGRAMAS
DE PÕS-GRADUACÃO DE ENGENHARIA DA UNIVERSIDADE FEDERAL DO RIO
DE JANEIRO COMO
PARTE DOS
REQUISITOS
NECESSÃRIOS PARA
A OBTEN
ÇÃO
DO GRAU DE MESTRE EM CIÊNCIA (M.Sc.)
Aprovada
por:
, .
Presidente
RIO DE JANEIRO
ESTADO DA GUANABARA
-
BRASIL
Agradeço,
a o programa d e Engenharia d e S i s t e m a s e computação e a COPPE p e l a
-
o p o r t u n i d a d e ;?I
~ o o ~ e r a ~ 5 0 t é c n i c a F r a n c e s a r e p r e s e n t a d a por:Henri F a r c h e t t a p e l o a s s u n t o ; Pierre J e a n L a v e l l e p e l a i n t r o d u ç ã o a o conhecimento do M i t r a 15: D a n i e l Dejean p e l a c o l a b o r a ç ã o no e s t u d o d e i n t e r f a c e s ; Iã
C . I . I . do B r a s i l que, p o r i n t e r m s d i o de J a c q u e s V i c t o i r e , f o i d e g r a n d e a j u d a no conhecimento do M i t r a 1 5 1ao RDC da PUC, e ao NCE da UFRJ p e l a u t i l i z a ç ã o d o s computadores
IBM
/370, IBM / 3 6 0 , r e s p e c t i v a m e n b e ;a Eduardo P e i x o t o Thompson que soube c o n v e r t e r meus h i e r o g l i f o s num t e x t o d a t i l o g r a f a d o :
8 , ~ .
Sá Rego, M.L. C a l d a s e Moura, e M.E.B. d e Almeida p e l a l e i t u r a e c o r r e ç ã o do t e x t o .iii SINOPSE
P r o c u r a - s e n e s t e t r a b a l h o c a r a c t e r i z a r
um
s i s t e m a de Back Up a t r a v é s d e exemplos, d e f i n i ç õ e s e c o n c e i t o s . Em s e g u i d a 6 p r o p o s t oum
s i s t e m a que s e r á p a r o i a l m e n t e implementado.Foi usado
um
minicomputador M i t r a 1 5 com 8k p a l a v r a s d e 1 6 b i t s . E s t e s i s t e m a poderá s e r usado em q u a l q u e r o u t r o computador, d e s d e q u e sejam f e i t a s a s a d a p t a ç õ e s n e c e s s á r i a s .ABSTSACTS
The aim of t h i s work i s t o c h a r a c t e r i z e a Back Up s y s t e m t h o u g h e - x a m p l e s , d e f i n i t i o n s a n d c o n c e p t s .
We p r o p o s e a Back Up s y s t e m t h a t w i l l b e p a r t i a l l y i m p l e m e n t e d . We u s e a m i n i c o m p u t e r Mitra 1 5 w t h Bk w o r d s o f 1 6 b i t s .
T h i s s y s t e m may b e u s e d i n a n y o t h e r c o m p u t e r w t h t h e n e c e s s a r y a d a
-
p t i o n s .c a p i t u l o I ~ n t r o d u ç ã o 1-1 G e n e r a l i d a d e s
1 - 2 Motivos que levaram
6
p e s q u i s a ( H i s t d r i c o l 1-3 ~ m p o r t â n c i a 1-4 D e f i n i ç ã o 1-5 L i m i t a ç s e s c a p i t u l o 11 S i s t e m a a s d e Back Up 11-1 G e n e r a l i d a d e s 11-2 R e q u i s i t o s ~ á s i c o s d eum
S i s t e m a d e Back Up 11-3 D i s p o s i t i v o s d e s u p e r v i s ã o 11-.3-1 D i s p o s i t i v o s d e s u p e r v i s ã o I n t e r n o s (DSI) 11-3-2 D i s p o s i t i v o s d e ~ u p e r v i s ã o E x t e r n o s (DSE) 11-3-2-1Caixa Lógica d e ~ e c i s ã o11-3-2-2 M i n u t e r i a Cão de Guarda (Watch-Dog Tlmer) 11-4 Programas d e Detecção d e E r r o
11-5
unções
Computador11-6 T i p o s d e S i s t e m a s d e Back Up 11-6-1 Back Up Manual
11-6-2 Rack Up nal lógico
11-6-3 Back Up d e Dois Computadores em P a r a l e l o 11-7 ~ o n c l u s ã o
c a p i t u l o 111 S i s t e m a P r o p o s t o 111-1 G e n e r a l i d a d e s 111-2 O S i s t e m a 111-2-1 Função do d i s p o s i t i v o S u p e r v i s o r 1 111-3 ~ o n c l u s ã o C a p r t u l o I V C a r a c t e r i s t i c a s do M i t r a 1 5 IV-1 G e n e r a l i d a d e s IV-2 C a r a c t e r f s t i c a s P a r t i c u l a r e s IV-2-1 R e g i s t r o s e I n d i c a d o r e s IV-2-2 I n s t r u ç õ e s IV-2-3 1 n t e r r u p Ç Õ e s
IV-3 S i s t e m a Monitor "MOB"
IV-4 ~ i c r o - i n s t r u q Õ e s e E x e c u t i v e s IV-4-1 Micro-Máquina TV-4-1 Unidade C e n t r a l IV-4-1-1 Operador IV-4-1-1-2 R e g i s t r o s PV-4-1-2 Memória
IV-4-1-3 Memória d e Comando e s e u s C i r c u i t o s 1V;4-1-3-1 R e g i s t r o T
IV-4-1-3-2 Memória d e Comando IV-4-1-3-3 Memória d e E x e d u t i e v e s IV-5 Suspensão
C a p í t u l o
V
T e s t e v i i V-I G e n e r a l i d a d e s V-2 F i l o s o f i a do Programa d e Teste V - 3.
. A l g o r í t m o d e Escolha V-4 ~ m p l e m e n t a ~ ã o do a l g o r i t m o V-4-1 L e i t u r a d e Dados V-5 ~ o n c l u s ã o C a p í t u l o V I Programa de T e s t e VI-A G e n e r a l i d a d e sVI-2-1 Carregamento e Lançamenbo d e Programas VI-2-2 Formação d a s T a b e l a s DVT e CTX (111, (101 VI-3 Programa d e T e s t e
VI-3-1 Procedimento d e T e s t e
VI-4 Programa d e T e s t e com Simulador d e E r r o s VI-5 c o n c l u s ã o
C a p í t u l o V I 1 M i n u t e r i a Cão d e Guarda 4 7
V I I - 1 G e n e r a l i d a d e s 47
VII-2 ~uní$o da M i n u t e r i a 4 7
VIL-4 E s t a d o s d a M i n u t e r i a 4 7
v i i i V I I - 4 - 1 I n t e r f a c e V I I - 4 - 2 S i n a i s Recebidos e Transmikidos p e l a I n t e r f a c e V I I - 5 C i r c u i t o Memoriaador d e n f v e l d e ~ n t e r r u p ç ã o V T I - 6 ~ e l Ó g i o da M i n u t e r i a V I L - 6 - 1 O s c i l a d o r V I I - 6 - 2 Contador V I I - 6 - 3 Alarma V I I - 7 Esquema Global V I I - 9 Consumo V I I - 1 0 Conclusão c a p i t u l o V I 1 1 ~ o n c l u s ã o B i b l i u g r a f i a
1-1 G e n e r a l i d a d e s .
E s t e t r a b a l h o v i s a a implementaçáo de uma t é c n i c a d e s e g u r a n ç a no funcionamento d e computadores d i g i t a i s em t a r e f a s d e c o n t r o l e , ou q u a l q u e r o u t r a que n e c e s s i t e e l e v a d a c o n f i a b i l i d a d e do s i s t e m a .
A c o n f i a b i l i d a d e , a s e g u r a n ç a e a d i s p o n i b i l i d a d e s ã o noções que d e
-
vem s e r bem d i s t i n t a s , em p a r t i c u l a r n a s o p e r a ç õ e s d e Tempo R e a l , onde a s s i t u a - ções não s ã o r e c u p e r ã v e i s .No p p o j e t o d e
um
s i s t e m a d e computação d e s t e t i p o , o ffincionamehto m u i t a s v ê z e s d e v e r á s e r mantido, mesmo s o b a o c o r r ê n c i a d e f a l h a s no computador.P a r a t a n t o o s i s t e m a poderá c o n t a r com d i s p o s i t i v o s e x t e r n o s que o s u r p e r v i s i o n e m , além d a q u e l e s i n t e r n o s
6
s u a p r ó p r i a a r q u i t e k u r a .1-2 Motivos que levaram a p e s q u e s a I H i s t Ó r i c o l .
No f i n a l d e 1971 foram p r o p o s t o s c i n c o p r o j e t o s p a r a serem d e s e n v o l
-
v i d o s no s i s t e m a IBM / 7 , p e l o programa d e e n g e n h a r i a d e s i s t e m a s e computaqão, s o b a o r i e n t a ç ã o do p r o f . Henry M a r c h e t t a .Manifestado i n t e r e s s e p e l o a s s u n t o , f o i e s c o a h i d o o item SISTEMA DE BACK UP, como tema p a r a e s t a t e s e .
P o s t e r i o r m e n t e , t e n d o s i d o r e c e b i d o o minicomputador M i t r a 1 5 , t o - do o t r a b a l h o f o i n e l e desemvb&vido.
Com a introdução d a s t é c n i c a s de c o n t r o l e (BDC e o u t r a s 1 em que o computador t r a b a l h a , em regime de Tempo Real, t o r n a - s e cada vez mais n e c e s s á r i o
B USO de t é c n i c a s do t i p o Back Up. Como d e c o r r e n c i a d e s t a implementa$ão, vê-se
n e s t e t r a b a l h o o desemvolvimento do diálogo "software-hardware", c u j o profundo conhecimento s e f a z n e c e s s á r i o nas aplicaçÕes Tempo Real do Mitra 15, a q u i na COPPE.
Entende-se como Back Up a t é c n i c a de s u b s t i t u i ç ã o de um equipamento por o u t r o , em caso de f a l h a no equipamento de t r a b a l h o .
1-5 Limitações
ser; dado no d e c o r r e r da t e s e um b r w e r e l a t o b i b l i o g r á f i c o . Nos subsequentes c a p f t u l o s t r a t a r - s e - : da discussão d a s pesquisas d e c o r r e n t e s da
i m
-
plementação do sistema proposto, dos s e u s r e s u l t a d o s e suas consequ6ncias.Como não dispunhamos meios para conectarmos o Mitra 15 a
um
o u t r o sistema que f i z e s s e seu Back Up, o t r a b a l h o de implementação s e resume na d e t e c-
ção da f a l h a e do alarma.I1
-
SISTEMAS DE BACK UP 11-1 G e n e r a l i d a d e s Neste c a p i t u l o p r o c u r a - s e m o s t r a rt r ê s
t i p o s b ã s i c o s d e s i s t e m a s d e Back Up: o Bakk Up manual o Analógico e o Back Up p o r o u t r o computador.No f i n a l d e s t e c a p í t u l o propõe-se
um
s i s t e m a que s e r á implementado, o q u e6
a s s m t o d o s próximos capitulas ( 1 1 1 - V - V I e V P I I .1 1 - 2 R e q u i s i t o s b á s i c o s d e
um
s i s t e m a d e Back Up.A d e t e e ç ã o da f a l h a do computador d e t r a b a l h o
6
o p r i m e i r o r e q u i s i - t o d e q u a l q u e r s i s t e m a d e Back Up [41. E s t a s f a l h a s s ã o d e t e t a d a s , com d i s p o s i - t i v o s e x t e r n o s5
a r q u i t e t u r a do computador, , e/ou d i s p o s i t i v o s i n t e r n o s , ambos com a j u d a ou paogramas e s p e c i a i s ou não, O segundo r e q u i s i t o6
o &solamentoado even&o f a l h a . E s t e i s o l a m e n t o pode s e r . p o r uma s i m p l e s s u b s t i t u i ç ã o do computa- d o r , p o r o u t r o s i s t e m a ou p o r t é c n i c a s d e r e c o n f i g u r a ç ã o .Na r e c o n f i g u r a ç ã o , t o d o o s i s t e m a
6
d i v i d i d o em s u b s i s t e m a s . Em c a - s o d e f a l h a num s u b s i s t e m a , o s o u t r o s s u b s i s t e m a s i s o l a m o s u b s i s t e m a f a l h o e a s f u n ç õ e s de cadaum
s ã o r e d i s t r i b u i d a s , não havendo p r e j u i z o g l o b a l no f u n c i o-
namento do t o d o . O s i s t e m a c o n t i n u a f u n c i o n a n d o mas em regime degradado (21.Num
s i s t e m a d e Back Up como o a q u i p r o p o s t o , d e t e c t a d a d f a l h a , t o d o o computa- d o r será s u b s t i t u P d o .0 s d i s p o s i t i v o s , c u j a f u n ç ã o s e j a s u p e r v i s i o n a r o funcionamento do computador, e s t ã o d i v i d i d o s em d o i s g r u p o s : D i s p o s i t i v o s d e ~ u p e r v i s ã o E x t e r n o s LDSEI D i s p o s i t i v o s d e s u p e r v i s ã o I n t e r n a s (DSII. 11-3-1 D i s p o s i t i v o s d e s u p e r v i s ã o i n t e r n o s (DSI
I
0 s d i s p o s i t i v o s d e s u p e r v i s ã o i n t e r n o s e s t ã o r e l a c i o n a d o s com a p r 8-
p r i a a r q u i t e t u r a do computador, sendo m u i t a s v e z e s f o r n e c i d o s como e l e m e n t o op-
c i o n a l p e l o f a b r i c a n t e .E n t r e o u t r a s f u n ç õ e s podemos c i t a r : p r o t e ç ã o d e á r e a d e t r a b a l h o na memória a q u a l s e f a z com a v e r e f i c a ç ã o d e determinado b i t - o u um c o n j u n t o d e l e s no e n d e r e ç o . Existem, f r e q u e n t e m e n t e , d o i s t i p o s d e i n s t r u ç õ e s , quando se tem p r o t e f l o d e á r e a
-
i n s t r u ç õ e s p r e v i l e g i a d a s ou não. s e r ã o p r i v i l e g i a d a s a s i n s-
t r u ç õ e s que tenham a c e s s o , i n c l u s i v e , a s á r e a s p r o t e g i d a s . Se uma i n s t r u ç ã o não p r i v i l e g i a d a t e n t a t e r a c e s s o a uma 6 r e a p r o t e g i d a6
e m i t i d o um s i n a l d e e r r o .-
O t e s t e d e p a r i d a d e6
f e i t o p o r hard-ware p r ó p r i o que v e r i t f i c a a p a r i d a d e de um determinado c o n j u n t o d e b i t s , que formam a u n i d a d e d e i n f o r m a ç ã o .Na m a i o r i a d o s computadores a u n i d a d e d e informação
é
composta d e o i t o b i t s ou d e d o i s c o n j u n t o s d e s s e s , d e z e s e i s b i t s s alêm do b i t d e p a r i d a d e .O b i t d e p a r i d a d e é 1 ou O c a s o n e c e s s d r i o p a r a que se complete
um
número p a r d e b i t s da u n i d a d e d e i n f o r m a ç ã o .11-3-2 D i s p o s i t i v o s d e s u p e r v i s ã o e x t e r n o s (DSE
I
Qualquer s i s t e m a , que c o n e c t a d o a o computador f u n c i o n a como s u p e r v i
-
s o r do seu funcionamento,6
um
d i s p o s i t i v o e x t e r n o d e s e g u r a n ç a (DESI.A Única l i g a ç ã o a ser p r e v i s t a e n t r e o IDESl e o computador deve s e r r e f e r e n t e
5
t r o c a d e i n f o r m a ç õ e s n e c e s s á r i a s a s u a s u p e r v i s ã o . A c a i x a , 1ó-
g i c a d e d e c i s ã o e a m i n u t e r i a cão d e g u a r d a s ã o d o i s t i p o s d e [DESI.11-3-2-1 Caixa 1 Q g i c a d e d e c i s ã o
E
um
s i s t e m a l ó g i c o p r o p o s t o p a r a r e c e b e r i n f o r m a ç õ e s em p a r a l e l o d e d o i s computadores e tomar d e c i s ã o q u a n t o5
c o n c o r d ã n c i a ou não e n t r e e s t a s i n f o r m a ç õ e s ( 1 ) .No p r o j e t o d e t a i s d i s p o s i t i v o s deve-se p r e v e r que a s i n f o r m a ç õ e s não e s t a r ã o em s i n c r o n i s m o . Então é p r e v i s t o
um
i n t e r v a l o d e e s p e r a , A t , p a r a a chegada d a s i n f o r m a ç õ e s nos r e g i s t r o s d a c a i x a 1Ôgica d e d e c i s ã o .Esgotado o tempo A t , ou em c a s o d e não s e e n c o n t r a r c o n c o r d â n c i a en
-
t r e a s i n f o r m a ç õ e s r e c e b i d a s ,6
e m i t i d a uma chamada aum
programa d e t e s t e .E s t e programa o b j e t i v a a p o n t a r ao a i s t e m a , em q u a l d o s computadores f o i e n c o n t r a d a a f a l h a .
11-3-2-2 M i n u t e r i a cão d e guarda [watch-dog t i m e r l
A m i n u t e r i a cão d e g u a r d a é empregada f r e q u e n t e m e n t e na s u p e r v i s ã o d e
um
computador. E s t a s u p e r v i s ã o é f e i t a com a i n i c i a l i z a ç ã o p e r i ó d i c a d e um programa d e t e s t e . Findo o programa d e t e s t e , a m i n u t e r i a r e c e b eum
s i n a l d e bom ou mau funcionamento do computador s u p e r v i s i o n a d o .Ao r e c e b e r s i n a l d e bom funcionamento,
é
r e i n i e i a l i z a d o e o c i c l o recomeça. No c a s o da d e t e c ç ã o d e e r r a6
e n v i a d oum
s i n a l d e a l a r m a . E s t e s i n a l a t i v a r á o d i s p o s i t i v o d e Back Up.11-4 Programas de d e t e c ~ ã o de e r r o
E
comum s e r confundido programa de detecção de e r r o com programa de diagnose de e r r o (21.Espera-se que um programa de diagnose de e r r o aponte o elemento do sistema que causou o e r r o , para p o s t e r i o r r e p a r o . O termo elemento v a r i a com a r e s o l u ç ã o do programa de t e s t a
Enquanto que um programa d e t e c t o r de e r r o v e r i f i c a o bom ou mau fun
-
cionamento de um sistema:Sistema OK, ou sistema não OK são suas p o s s f v e i s safdas. Com o advento da micro-programapo, e s t e s programas, em s i s t e m a s so
-
f i s t i c a d o s são " e s c r i t o s " ao n f v e l de micro-programas.Na s é r i e /370 os programas de diagnose estão. numa pequena unidade de d i s c o s - d i s c o s Read Only-de acesso p a r a a manutenção.
11-51 Funções computador
Duas funções c a r a c t e r i z a m o emprego de um computador: a
-
Função p a s s i v ab
-
Função de Comando.A função p a s s i v a
é
c a r a c t e r i z a d a p o r t a r e f a s de manipulação de i n - formação ou mesmo de computação de dados e p o s t e r i o r apresentação a um d e t e r m i - nado operador, v i a q u a l q u e r sistema de comunicação homem-computador. Como exem-
p l o de sistemas que t r a b a l h e m sob e s t a s funções temos:Centros de c á l c u l o , banco de dados, e o u t r o s . Como se v ê são t a r e f a s i m p o r t a n t e s , mas não c r í t i c a s !
Na f u n ç ã o d e comando o computador comanda algum s i s t e m a f í s i c o (ou o m o n i t o r a f .
Embora a s duas funçoed n e c e s s i t e m m u i t a s v e z e s do pleno functdnamen
-
t o do computador, na Última, a i n t e r r u p ç ã o d e s t e pode ser c a t a s t r ó f i c a .11-6 Tipos d e s i s t e m a s d e Back Up
"O Back Up pode s e r manual, a n a l ó g i c o convencional o u t p o r um o u t r o s i s t e m a d i g i t a l . . . d e p e n d e n d o d a s c a r a c t e r f s t i c a s do " p l a n t " e s u a s j u s t i f i c a t i - v a s e c o n f h i c a s . .
."
". .
.
Quandoum
pomputador d i g i t a l6
usado no modo s u p e r v i s o n , a j u s - t a n d o o c o n t r o l a d o r d e "Set P o i n t s " , a f a l h a no computador d e i x a o " P l a n t " sob o c o n t r o l e c o n v e n c i o n a l . Mas no modo d e c o n t r o l e d i g i t a l d i r e t o (DDC), uma f a-
l h a no computador poderá r e s u l t a r numa completa perda d e c o n t r o l e do s i s t e m a "(4).
D e s t e modo, a s e g u i r descreveremos
t r ê s
t i p o s d e s i s t e m a s d e Back11-6-1 Back Up manual
Apbs e m i t i d o o s i n a l d e alarma o o p e r a d o r assume o c o n t r o l e do sis- tema. Para t a n t o é n e c e s s á r i o que a s v ã l v ~ l a s e demais elementos que atuem no s i s t e m a f f s i c o tenham p o s s i b i l i d a d e d e serem p o s i c i o n a d a s manualmente. A f i g u - r a mostra um s i s t e m a que tem e s t a p o s s i b i l i d a d e . P e l a s c h a v e s o motor 13 c o n t r o
-
l a d o . A i n d i c a ç a o da p o s i ç a o d o s elementos6
i m p o r t a n t e p a r a informação do ope-
r a d o r.
11-6-2 Back Up a n a l ó g i c o
Num s i s t e m a que s e j a empregado e s t e t i p o d e Back Up, o computador é
s u b s t i t u i d o p o r e l e m e n t o s a n a l b g i c o s , nos " l o o p s " c r f t i c o s . " .
..
i n v e s t i g a ç õ e s mostram que t a l v e z c i n c o a d e z p o r c e n t o d e t o d o s o s " l o o p s " , num p r o c e s s ot i -
p&co, t e n d o Back Up a n a l ó g i c o , s e r i a p o s s í v e l manter t o d o o ~ p r o c e s s o em f u n c i o - namento com o s " l o o p s " não c r i t i c o s s o b Back Up manual...
a t é se t e rum
r e i n f c i o do c o n t r o l e a u t o m á t i c o D.D.C, ou a t é se a t i n g i r um ponto d e parada..."
(61.P a r a que a comutação do :computador d i g i t a l com o s i s t e m a a n a l ó g i c o s e j a f e i t a com um mínimo d e p e r t u r b a ç ã o a s s e p u i n t e s c o n d i ç õ e s devem s e r s a t i s A f e i t a s (41.
1, O s " s e t p o i n t s " d o s c o n t r o l a d o r e s a n a l Ó g i c o s devem s e r p e r i o d i c a m e n t e a t u a l i z a d a s ;
2. O termo i n t e g r a l deve t e r sua c o n d i ç ã o i n i c i a l c o n t i n u
-
amente a j u s t a d a2
p o s i ç ã o do comando n a q u e l e i n s t a n t e . Sob c o n t r o l e a n a l ó g i c o a v ã l v u l a da f i g u r a a b a i x o tem seu v a l o r a j u s-
t a d o continuamente. Vê-se, na f i g u r a , a chave B que6
comanda:pelo D.E.S. p a r a d a r e n t r a d a ao s i s t e m a a n a l õ g i c o d e Backup.11-673 Back Up d e d o i s computadores t r a b a l h a n d o em p a r a l e l o (11.
Geralmente o Back Up d e
um
computador p o r o u t r o , compõe-se d e s i s t e-
ma de d o i s computadores, t r a b a l h a ndo em p a r a l e l o 'e em pseudo-sincornismo, c u j a s s a í d a s s ã o s u b m e t i d a s a uma c a i x a l ó g i c a d e d e c i s ã o í v i d e 11-3-21,controla
-
r
cd o r
ana
l ó
-
grco
>e
memoma
a
tuadores
chaves
de
s O > I c) -U LI
ampde pok
BACK
UP
MANUAL
chave de comando
do BACK UP
rd
comandodo
motor
chave
de co-
mândo manual
I'
rea limentacão
FIG.
/I
-6'1
11
L~ACK
U P
COM DOIS COMPUTADORES
EM
PARALELO
comp.
e m i t i d a s p e l o s d o i s computadores, a s s a í d a s s ã o bloqueadas p o r
um
s i s t e m a d e p o r t a e l ó g i c a s " g a t e s " e um s i n a l d e p r i o r i d a d e mais e l e v a d a f a z com que s e j a-
i n i c i a l i z a d oum
programa d e t e s t e . E s t e programa informa ao s i s t e m a l ó g i c o , q u a i s d o s computadores e s t a : f a l h o .O computador f a l h o
6
d e s c o n e c t a d o do s i s t e m a o q u a l p a s s a a o p e r a r s o b o c o n t r o l e ~ . d o computador d e Back Up.O computador d e Back Up, m u i t a s v e z e s , assume a t a r e f a d e a p l i c a r I'
"estimulas" ao computador f a l h o e e m i t i r um d i a g n ó s t i c o da f a l h a . D e s t e modo a r e p a r a ç ã o d a f a l h a
é
m a i s r á p i d a .A r e i n i c i a l i z a ç ã o do s i s t e m a
é
f e i t a p e l o t é c n i c o d e manutenção, se -g u i n d o uma r o t i n a d e d e s b l o q u e i o d a s s a i d a s e o u t r a s v i a s d e c o m u n i c a ç ~ o .
e
ne- c e s s á r i o , e n t r e t a n t o , que o d i s c o do computador que e s t e v e parado s e j a r e g r a v a d o com o conteúdo do d i s c o do computador d e Back Up, e s t a t a r e f aé
f e i t a p e l o compu-
t a d o r d e Back Up a n t e s d a i n i c i a ç i z a ç ã o . 11-7 c o n c l u s ã o No p r o j e t o d e q u a l q u e r s i s t e m a de BackUp6
p r e c i s o l e v a r - s e em con- t a c u s t o e c o n f i a b i l i d a d e . S i s t e m a s com r e d u n d a n c i a t o t a l , como a q u e l e v i s t o no p a r á g r a f o a n t e-
r i o r , tem e l e v a d o c u s t o e c o n f i a b i l i d a d e . A d i m i n u i ç ã o do c u s t o e consequentemente da c o n f i a b i l i d a d e poderá t o-
marum
s i s t e m a d e Back Up b a s t a n t e a c c e s s f v e l .O s i s t e m a , que n e s t e f i m d e c a p í t u l o propõe-se e d e s c r e v e - s e nos c a
-
p f t u l o s s u b s e q u e n t e s , u s a r á d o i s computadores mas não t r a b a l h a n d o em p a r a l e l o .O computador d e Back Up
só
e n t r a no s i s t e m a quando d e t e t a - s e f a l h a no computador d e t r a b a l h o .1 3
111
-
SISTEMA PROPOSTO111-1 G e n e r a l i d a d e s
Depois d e a n a l i z a d o s v á r i o s s i s t e m a s , o b j e t i v a n d o s i m p l i c i d a d e e e - conomia, f o i e l a b o r a d o a q u e l e que passamos a d e s c r e v e r .
No a p g n d i c e C , s e r á f e i t a uma b r e v e d i s c u s ã o d a s g r a n d e z a s que medem c o n f i a b i l i d a d e , d i s p o n i b i l i d a d e e s e g u r a n ç a , t a i s com T.M.E.F. [Tempo Médio En- t r e f a l h a s 1 e T.M.R. [Tempo Médio d e R e p a r o ) .
Algum conhecimento matemático p a r a o s e s t u d o s d e c o n f i a b i l i d a d e , co
-
mo também d o s p a r ã m e t r o s d o s equipamentos que compõem um p a r t i c u l a r s i s t e m a , p e r-
mitem o c á l c u l o d e s s a s g r a n d e z a s .111-2 O s i s t e m a
Não ser; n e c e s s á ã i o o t r a b a l h o c o n t í n u o d e um segundo computador, computador d e Back Up. Mas e s t e computador d e v e r á t e r a s c a r a c t e r f s t i c a s d e Tem
-
po R e a l , n e ~ e s s á r i a s ~ u a n d o f o r chamado a f a z e r o Back Up.*
Um s i s t e m a demem%%a a u x i l i a r d e r á p i d o a c e s s o
-
e s q . : d i s c o-
t e r á d e t e r seus dados c o n t i n u a m e n t e renovados p e l o computador q u e , no momentm,-:está com o c o n t r o l e . Da mesma forma d e v e r á ser d i s p o n í v e l , e d e l o c a l i z a ç ã o d e f i n i d a ,um
c o n j u n t o d e t a b e l a s í n d i c e s , onde c o n t e o s p a r â m e t r o s n e c e s s ~ r i o s a o computa-
1; 35
d o r que a s s u m i r o c a n t r o l e , além d o s d a d o s p r Ó p ~ i o & s equações do c o n t r o l e , par;
-
m e t r o s que definam o t r a b a l h o em c u r s o - r o t i n a , p e r i f é r i c o s , dados 3 i d o s a n t e s da t r a n s i ç ã o e t c .111-271 Função do d i s p o s i t i v o s u p e r v i s o r
O d i s p o s i t i v o s u p e r v i s o r s e r á uma m i n u t e r i a cão d e Guarda. P e r i o d i - camente, e s t a m i n u t e r i a a t i v a um determinado n f v e l d e i n t e r r u p ç ã o d e a l t a p r i o ? r i d a d e . E s t e n í v e l dá e n t r a d a ao ppograma d e t e s t e , e a m i n u t e r i a e n t r a no e s t a
-
do d e e s p e r a . Esgotado o Tempo d e E s p e r a , 6 e m i t i d o um s i n a l d e a l a r m a q u e , p o r um s i s t e m a d e " g a t e s " , biloqueia t o d a s a s s a f d a s do computador d e t r a b a l h o , a t i v aum
n í v e l d e i n t e r r u p ç ã o que p r e p a r a e s t e compuçador p a r a a s t a r e f a s d e Back Up e l i b e r a s u a s s a f d a s .Do s i s t e m a p r o p o s t o , s e r á implementado no MITRA 35, a m i n u t e r i a , o a c o p l a d o r d e comunicação M i n u t e r i a - M i t r a e o programa d e t e s t e .
Quando
for
o c a s o , a m i n u t e r i a e m i t i r áum
a l a r m a . N ~ O e x i s t e d i f e r e n-
ç a e n t r e e s t e s i n a l e o s i n a l d e a l a r m a do s i s t e m a p r o p o s t o . Se f o r usado Back Up a n a l ó g i c o ou manual e s t e s i n a l comandará a s c h a v e s i n d i c a d a s nos p p r a g r á f o sSISTEMA PROPOSTO
linhas
de
entrada
&
saí&
E s t e s i s t e m a compõe-se de:
M i n u t e r i a Cão de Guarda Programa de T e s t e
Computador de t r a b a l h o Computador d e Back Up.
O computador d e Back Up p o d e r á s e r um computador de função p a s s i v a do c e n t r o de processamento de empresa adaptado a Tempo Real.
I V
-
CARACTERISTICAS DO MITRA 15*IV-1 G e n e r a l i d a d e s
O M i t r a 1 5
6
um computador p a r a t r a b a l h o s em Tempo R e a l , d e a r q u i t e t u r a s i m p l e s e moderna baseada n a s t s c n i c a s d e micro-programação.Sua u n i d a d e d e t r a t a m e n t o
6
composta d e memórias m o r t a s (Read-
-
Only Memory) onde e s t ã o i m p l a n t a d o s o s micro-programas. E s t a s R O M s d i s t i n g u e m o Pro--
c e s s a d o r C e n t r a l (CPU) d a Unidade d e I n t e r c â m b i o , p e l e s micro-programas a e l a s a s s o c i a d o s . O M i t r a 1 5
6
a p r e s e n t a d o em d o i s modelo, c u j a d i f e r e n ç a e s t á na po- t ê n c i a : do p r o c e s s a d o r , e , consequentemente, na micro-máquina. IV-2 ~ a r a c t e r i s t i c a s p a r t i c u l a r e s S a l v o restriçÕes em c o n t r á r i o , t o d a d e s c r i ç ã o d e s s e computador, a- p r e s e n t a d a n e s t e c a p i t u l o , s e r á r e f e r e n t e a o modelo M i t r a 1 5 onde t o d o o t r a b a - l h o f o i e x e c u t a d o . A o b s e r v â n c i a da f i g u r a I V - 3 é n e c e s s á r i a p a r a o e n t e n d i m e n t o d e s t e c a p i t u l o . O modelo M i t r a 1 6 , do L a b o r a t ó r i o d e ~ i m u l a ç ã o d e S i s t e m a s d e COPPE, tem s u a micro-máquina com 512 p a l a v r a s d e 1 6 b i t s , e tempo d e a c e s s o d e 60 n s . A memória p r i n c i p a l tem 16k b y t e s ou 8k p a l a v r a , com um c i c l o d e l e i t u r a d e 800ns.Um t e l e t i p o , com uma l e i t o r a e p e r f u r a d o r a d e f i t a d e p a p e l , e a u n i
-
dade d e t r a t a m e n t o M i t r a 1 5 compõem o s i s t e m a M i t r a do ~ a b o r a t ó r i o d e s i m u l a ç ã o e S i s t e m a s .mod. T
cod.
mem
END.
IV-2-1 R e g i s t r o s e i n d i c a d o r e s
. R e g i s t r o s r á p i d o s
A u n i d a d e d e t r a t a m e n t o tem 8 b l o c o s d e 8 r e g i s t r o s . d e 16 b i t s , t o t a
-
l i z a n d o 64 r e g i s t r o s .O bloco O a f e t a a execução d o s programas. É composto d o s 6 r e g i s t r o s que indicam, ao s i s t e m a , a l o c a l i z a ç ã o d o s d i v e r s o s segmentos, f n d i c e , acumulador a s u a e x t e n s ã o e m a i s d o i s r e g i s t r o s u t i l i z a d o s p e l o s micro-programas: P
-
Apontador da próxima i n s t r u ç ã o a s e r e x e c u t a d a ; L-
Apontador da base l o c a l ; G-
Apontador da b a s e G e r a l : A - Acumulador; E-
~ x t e n ç ã o d e A; X-
f n d i c e ; V-
U t i l i z a d o p e l a micro-máquina W - U t i l i z a d o p e l a micro-máquina. O r e g i s t r o r á p i d o 8 contém o dobro do v a l o r do n i v e l d e i n t e r r u p q ã o do programa em c u r s o . 0 s o u t r o s s s o u s a d o s , normalmente, p o r i n t e r r u p ç o e s r á p i d a ou suspen-
s õ e s , com p e r i f é r i c o s ..
R e g i s t r o s d e ~ i g a ç ã o com a ~ e m ó r i a . Fazem a l i g a ç ã o com a ~ t 3 m 6 r i a d o i s r e g i s t r o s , S e M . O r e g i s t r o S tem 1 6 b i t s (15 + 1 d e p r o t e ç ã o ) . É usado p a r a e n d e r e ç a -mento na memória.
O r e g i s t r o M tem 11 b i t s ( 1 0 + 1 d e p r o t e ç ã o ) . E usado p a r a a c e s s o
a memória.
.
O u t r o s R e g i s t r o s0 r e g 5 s t r o U tem 1 6 b i t s , sendo usado como acumulador da micro-má- q u i n a .
O r e g i s t r o J tem 8 b i t s sendo usado como endereçamento d o s r e g i s t r o s r á p i d o s 'R.
.
I n d i c a d o r e s A Unidade C e n t r a l p o s s u i 9 i n d i c a d o r e s . Desses i n d i c a d o r e s , q u a t r o s ã o a e e s s i v e i s a programa: C-
C a r r y O-
Overflow MS-
Modo d e ~ x e c u ç ã o d e Programa. MS-
O Modo Normal MS - 1 Modo Escravo MA-
Mascaramento d e I n t e r r u p ç Õ e s PR-
I n d i c a p r o t e ç $ o d e ~ e m Ó r i a6
usada.E s t e modelo tem um jogo d e 62 instruções. E s t a s i n s t r u ç õ e s &em 16 b i t s . e o s e g u n t e formato: onde : M
-
Modo d e Endereçamento F-
Função D-
Deslocamento.Cada i n s t r u ç ã o d á origem a
um
micro-programa que a e x e c u t a . A p r i m e i r a f a s e da execução d e s t e micro-programa f a z a d e c o d i f i c a ç ã o do t i p o d e e n d e r e - çamento usado e a f a m í l i a d a i n s t r u ç ã o .Existem t r 6 s f a m í l i a s e
um
t o t a l d e 1 0 modos d e endereçamento.O s i s t e m a p o s s u i 28 n í v e i s e x t e r n o s d e ' i n t e r r u p ç Õ e s , h i e r a r q u i z a d a s . A cada n í v e l e s t á a s s o c i a d o o e n d e r e ç o do c o n t e x t o do programa d a q u e l e n f v e l .
Um n f v e l d e i n t e r r u p ç ã o
6
a t i v a d o p o r um s i n a l e x t e r n o d i r e t a m e n t e s õ b r e o m i n i b u s , com n í v e l l ó g i c o TTL, O.O m i n i b u s
6
uma
l i n h a de comunicação do computador com o e x t e r i o r , onde e s t ã o o s p e r i f é r i c o s . 0 s s i n a i s s ã o a c e s s í v e i s a o s a c o p l a d o r e s p o r d o i sc o n e c t o r e s d e 2 x 4 3 p o n t o s d e a c e s s o . Cada
um
d e s s e s p o n t o s tem função p r ó - p r i a ; ITn
: Ativamento d e I n t e r r u p ç ã o Nível n. D I T : Desativamento d e ~ n t e r r u p ç ã o PIT : Posicionamento d e ~ n t e r r u p ç ã o . LEP : L e i t u r a d e Dados do E x t e r k o r NEP : Envio d e Dados ao E x t e r i o re s i n a i s d e s i n c r o n i s m o , a l i m e n t a ç ã o e etc. ( v i d e a p ê n d i c e F l
O s i n a l d e a t i v a m e n t o d e i n t e r r u p ç ã o deve ser mantido d u r a n t e todo o t r a b a l h o p o r c i r c u i t o s memorizadores t i p o F l i p - F l o p . Se o n í v e l d e i n t e r r u p ç ã o a t i v a d o
f õ r
d e p r i o r i d a d e s u p e r i o r a o n í v e l d e i n t e r r u p ç ã o em c u r s o , não6
d e s a-
t i v a d o , f i c a n d o na f i l a d e e s p e r a , com s e u n í v e l 1;gico a t i v o .Todo a t i v a m e n t o d e i n t e r r u p ç ã o dá e n t r a d a a
um
micro-programa com a s e g u i n t e função:1. Copiar o c o n t e x t o do programa em c u r s o na memória, no endereqo d e f i n i d o p e l a t a b e l a d e c o n t e x t o e p e l o con- t e ú d o do r e g i s t r o 8 ,
2. C o p i a r no r e g i s t r o 8 o dobro do v a l o r do n í v e l de i n - t e r r u p ç ã o a t i v a d o .
3 . Chamar o novo c o n t e x t o dado p e l o conteúdo do r e g i s t r o 8 e p e l a t a b e l a d e c o n t e x t o .
Todo o programa d e i n t e r r u p ç ã o deve t e r m i n a r p o r uma m a c r o - i n s t r u - ç á o do m o n i t o r M:EXIT. Uma d a s instruçc?es d e s t a macro
é
a i n s t r u ç ã o d e d e s a t i v a-
mento d e i n t e r r u p ç ã o DIT. A i n s t r u ç ã o D I T e m i t e , p e l o ponto d e a c e s s o c o r r e s p o n -d e n t e , um s i n a l que " r e s s e t a " o F l i p - F l o p d e ~ n t e r r u p ç ã o . No c a s o d e e s t a r e m a - t i v a d o ~ v á r i o s n í v e i s d e i n t e r r u p ç ã o , o s i n a l DIT e m i t i d o no f i n a l do p r i m e i r o programa-o m a i s p r i o r i t á r i o - d e s a t i v a r i a t o d o s oa n í v e i s a t i v a d o s e na . f i l a d e e s
-
p e r a . P a r a que e s t e i n c o n v e n i e n t e s e j a e v i t a d o o s i n a l de d e s a t i v a m e n t o D I T6
-
u sado com o s i n a l NEP ( e m i t i d o p e l o conteúdo da t a b e l a DvT c o r r e s p o n d e n t e a on í -
v e l d e s a t i v a d o ) .Funções que sucedem o d e s a t i v a m e n t o .
1. Atendimento do n í v e l mais p r i o r i t á r i o na f i l a d a s i n t e r r u p ç õ e s . 2. ~ o d i f i c a ç g o do conteúdo do r e g i s t r o 8.
3, Chamada do novo c o n t e x t o .
4. Lançamento do programa apontado p e l o c o n t e x t o ,
Quando
um
programa d e i n t e r r u p q i o s e comunica com o u t r o programa, em n í v e l S n f B r i o r , o n i v e l d e i n t e r s u p ç ã o em c u r s o , deve s e r d e s a t i v a d o ...
iO r e a t i v a m e n t o da i n t e r r u p ç ã o , ou s e u r e p o s i c i o n a m e n t o ,
6
f e i t o p e l o s i n a l PIT e o conteúdo da t a b e l a DVTr É o que o c o r r e quando um programa se comu-
n i c a com o MOB. Se o programa e s t i v e r no n i v e l 4 , p o r exemplo, e chamar o MOB tem n í v e l d e i n t e r r u p ç ã o 5 e e x e c u t a s u a s t a r e f a s no n í v e l 0. O MOBr\desatlvará o n í v e l 4 , e x e c u t a r á a t a r e f a e v o l t a r a a p o s i c i o n a r o n í v e l 4 ao f i n a l do t r a - balho.IV-3 Sistema m o n i t o r "MCIB1'
O sistema m o n i t o r do M i t r a 15, MOB,
6
responsável p o r t o d o o c o n t r o-
l e "software" do computador. E n t r e o u t r a s funções c i t a - s e r c a r r e g a m e n t o de p r o g r a-
mas p a r a serem executados, t r a t a m e n t o de e r r o ao n í v e l de execução, c o n t r o l e dei n t e r r u p ç õ e s , c o n t r o l e de E/S com o T e l e t i p o [o c o n t r o l e do t e l e t i p o é f e i t o p o r um micro-programa).
0s programas, p a r a serem executados, são diVididosem segmentos.
1. Segmento de dados comuns, CDS, apontado p o r " G " ;
2. Segmento de dados l o c a i s , LDS, apontado p o r "L": 3. Segmento de programa, LPS, apontado p o r FP";
Um segmento de programa pode c o n s t a r de v i r i o s pequenos programas Isub-programas). Cada sub-programa pode t e r sua, LDS, ou c o m p a r t i l h a r da LDS de o u t r o s sub-programas. E t e r acesso a zona comum de memória, CDS.
Quando um sub-programa f a z a chamada de o u t r o sub-programa, o r e t Ò r
-
no, ao sub-programa que f e z a chamada, é assegurado p e l o conteúdo das duas p r i - m e i r a s p a l a v r a s de ÇDS associada ao sub-programa chamado. Nestas p a l a v r a s e s t a r ã o o endereço da LDS e da LPS do sub-programa que fez a chamada.Em determinada zona do m o n i t o r l o c a l i z a m - s e duas t a b e l a s :
DVT
-
Tabela de desativamento de i n t e r r u p ç ã o ; CTX-
Tabela de c o n t e x t o .Cada uma dessas t a b e l a s tem 32 p a l a v r a s , o que corresponde a uma pa
-
l a v r a para cada n f v e l de i n t e r r u p ç a o ( 4 n i v e i s de i n t e r r u p ç ã o i n t e r n o s e 28 ex-"-
+/-I
iRELUGIO
DA
IBASE
DE
jT1TEMPO
J2
I I.MC
2
END.
DE
R
9@
PAL
48
BITS
L--COMANDOS
DE
:1
DM
MEM.
DE
A___LFERRITE
rcREG.
S
C - r A rEND-EM.
DADOS
-
3.-
REG.
M
L c a. I-
REG.
U
LMC
2
MC
2
MC
2
FIG.
IV
-4
t e r n o s 1.
Quando
6
a t i v a d o ou d e s a t i v a d o determinado n í v e l d e i n t e r r u p ç ã o , a s t a b e l a s CTX e DVT s ã o c o n s u l t a d a s ( v i d e IV-21.IV-4 M i c r o - i n s t r u ç Õ e s e e x e c u t i v e s
Todo o t r a b a l h o d a s m i c r o - i n s t r u ç Õ e s d á - s e na micro-máquina. A
micro-máquina, a memória de e x e c u t i v e s e a memôria d e comando compõe a macro-má- q u i n a .
IV-4-1 Micro -máquina
~ o m p õ e a micro-máquina : Unidade C e n t r a l ? Memória d e F e r r i t e ; ~ e m ó r i a d e Comando; IV-4-1-1 Unidade C e n t r a l Compõe-se d e : Operador; R e g i s t r o s . IV-4-1-1-1 Operador
Fornece uma s a í d a , a d e 1 6 b i t s que comandam d i v e r s a s p a r t e s d a micro-máquina; memória, i n d i c a d o r e s , l i n h a s d e s a i d a e t c ,
A s o p e r a ç s e s s a o s o b r e a s e n t r a d a s X e B cada uma com 1 6 b i t s . E m a i s uma e n t r a d a C e uma s a l d a C que s ã o u s a d a s n a s o p e r a ç õ e s a r i t m é t i c a s .
i n o u t
I V - 4 - 1 - 1 - 2 R e g i s t r o s
A c a p a c i d a d e d a memória é de 8k p a l a v r a ( s u a expansão
é
modular a t é 32 p a l a v r a em mÓdulos d e 4k p a l a v r a s ] .O a c e s s o
à
memória6
comandado p o r 3 s i n a i s d a memória d e coma-DM: Demanda d e Memoria
Carrega o r e g i s t r o S com o conteddo d e o, z e r a M , e e n v i a um pe
-
d i d o d e a c e s s o a memória.LM: Se o r e g i s t r o M é d i f e r e n t e d e z e r o f a z o c i c l o d e r e e s c r i t u r a e t r a n s f e r e o conteúdo do r e g i s t r o M p a r a o a.
EM: T r a n s f e r e o conteúdo d e a p a r a fl e i n i c i a o c i c l o d e e s c r e v e r na memória.
IV-4-1-3 ~ e m ó r i a d e comando e s e u s c i r c u i t o s É formado p o r :
-
R e g i s t r o T (10 b i t s ) ;-
Memdria d e Comando;-
MemGria d e E x e c u t i v e s . IV-4-1-3-1 R e g i s t r o TTem I 0 b i t s que fornecem o e n d e r e ç o da m i c r o - i n s k r u q ã o em c u r s o .
IV-4-1-3-2 Memória d e comando
Tem 512 p a l a v r a s d e 16 b i t s , Cada p a l a v r a c o r r e s p o n d e a uma
m i -
c r o - i n s t r u ç ã o e f o r n e c e a s s e g u i n t e s i n f o r m a ç õ e s :-
c ó d i g o da M i c r o ~ i n s t r u ç ã o ;-
Comando DM, LM e EM da Memória;-
~ o d i f i c a ç ã o do Conteúdo do R e g i s t r o T,2 8
Uma mfcro-instrução
temo
s e g u i n t e formato:Zona M : Comando d a ~ e m ó r i a :
M =
11 -t (nenhuma ação s o b r e a memória1M= 01 -+
DM
M = 1 0 -t LM
M =
60 -+ EMZona V : Endereço da Memória d e E x e c u t i v e .
Zona R : Endereço d e
um
d o s R e g i s t r o s ~ á p l d o s . Zona T : ~ o d i f i c a ç ã o do R e g i s t r o T.IV-4-1-3-3 ~ e m d r i a d e E x e c u t i v e s : MC 2 É uma memória m o r t a d e 96 p a l a v r a s d e 48 b i t s í E x i s t e m 88 e x e - c u t i v e s p o s s í v e i s d e comando e 8 r e s e r v a d o s
2
manutenção do s i s t e m a c u j o a c e s s oé
p e l a c h a v e MAINTENANCE do p a i n e l . E s s e s e x e c u t i v e s s ã o r e s p o n s á v e i s p e l o comando d e t o d a a m i c r o - máquina, s e u s 4 8 b i t s e s t ã o a s s i m d i s t r i b u i d o s : Um no Comando d e ; Um no Comando d e,J
; D o i s no Comando d e a : Nove no Comando d e 6 ; Onze no Comando d o o p e r a d o r e e n t r a d a d e s i n a i s e x t e r i o r e s ; T r ê s no Comando d o r e l ó g i o d e t r a n s f e r ê n c i a U e R; S e i s no Comandp d e T; D o i s no Comando d e 3 ; C i n c o no Comando d o s i n d i c a d o r e s d e programa; Q u a t r o no Comando d o s i n d i c a d o r e s d e m i c r o - p r o g r a m a ; D o i s no Comando d o s p e r i f 6 r i s ò s ; D o i s no Comando do s i s t e m a d e i n t e r r u p ç ã o e s u s p e n ç ã o . D o i s t i p o s d e s i n a i s s ã o t r a d u z i d o s p o r uma p a r a d a no t r a b a l h o em c u r s o : 1 n t e r r u p ç 6 e s e ~ u s p e n s Õ e s : O p r i m e i r o já f o i d i s c u t i d o .*
Existem 27 n f v e i s d e suspensão e x t e r n o s e 5 i n t e r n o s .
Enquanto que uma i n t e r r u p ç i o e s t a a s s o c i a d a a uma p a r a d a no p r o
-
grama e a uma mudança d e seu c o n t e x t o , a suspensão e s t a a s s o c i a d a a uma parada no t r a b a l h o da micro-máquina d i r e t a m e n t e .Uma memõria Associada 2 s s u s p e n s & s , g u a r d a o s v a l ô r e s d o s r e - g i s t r o s U , J , T e o s i n d i c a d o r e s d e micro-programas [não d e s c r i t o s a q u i ) . Ap6s a memorização d e s s e s p a r â m e t r o s o micro-programa a s s o c i a d o a e s t a suspensão começa a ser 'fprocessado".
Uma i n s t r u ç ã o d e a c e s s o a o programador g e r a micro-códigos l e x e - c u t i v e s e m i c r o - i n s t r u ç Õ e s 1 . Por meio d e s s a s i n s t r u ç Õ e s , o programador t e r á a c e s
-
s o a t o d a u n i d a d e c e n t r a l .3 1
V
-
TESTEV - 1 G e n e r a l i d a d e s
Neste c a p í t u l o s e r 6 d e s c r i t a a f i l o s o f i a do programa d e t e s t e
a
s e r-
e l a b o r a d o , o a l g o r i t m o d e EXCOLHA d a s i n s t r u ç Õ e s a serem t e s t a d a s e a implementa-
ç ã o d e s t e a l g o r i t i m o .V-2 F i l o s o f i a do programa d e t e s t e
Na
e l a b o r a ç ã o d eum
programa d e t e c t o r de e r r o s , d e s e j a - s e que e s t e , t e s t e o maior número d e p a r t e s do computador p o s s f v e l . Um meio de a t i n g i r e s t e-
o b j e t i v o p o d e r i a s e r a b r i r s o b r e uma mesa o esquema do M i t r a 1 5 e , p a c i e n t e m e n t e , s e g u i r t o d o o f l u x o d e informaçÕes d a s i n s t r u ç õ e s . E n t r e t a n t o , o c a p i t u l o a n t e r i-
o r m o s t r a (IV-61 que a s m i c r o - i n s t r u ç õ e s e s e u s e x e c u t i v e s , s ã o r e s p o n s á v e i s p o r t o d o o funcionamento do s i s t e m a M i t r a .Como não s e tem a c e s s o L a s m i c r o - i n s t n u ç Õ e s , a não s e r i n d i r e t a m e n t e v i a a s instruçÕes", e s s a s s e r ã o u s a d a s . O uso de t o d a s a s macro-códigos c e r t a m e n t e
-
a t i v a r i a t o d a , a s m i c r o - i n s t r u ç õ e s e e x e c u t i v e s . Contudo, t e n d o p o r b a s e q u e nos d i v e r s o s micro-programas, a s s o c i a d o s a o s macro-códigos, e x i s t e m m i c r o - i n s t r u ç õ e s comuns. a u t i l i z a ç a o d e t o d o s o s macro-cddigos, p o d e r i a c o n t e r r e d u n d s n c i a s d i s - p e n s á v e i s . O procedimento queserá
s e g u i d o6
d e e s c o l h e r o menor ndmero d e ma= c r o - c õ d i g o s que contenham, em s e u s micro-programas, t o d a s a s m i c r o - i n s t r u ç õ e s . 0 a l g o r i t m o que f a z e s t a e s c o l h a será ALGORfTMO DE ESCOLHA.Y
V-3 ~ l g o r f t m o d e e s c o l h a
Tendo-se o c o n j u n t o d e macro-códigos e m i c r o - i n s t r u ç õ e s a s s o c i a d a s nu
-
ma forma m a t r i c i a l , onde cada c o l u n a r e p r e s e n t a uma m i c r o - i n s t r u ç ã o e cada l i n h a um macro-código, e a i n t e r s e c ç ã o , l i n h ax
c o l u n a , 6 1 ou O conforme a u l t i l i z a ç ã o da m i c r o - i n s t r u ç ã o p e l o macro-código ou nao, i n i c i a - s e o a l g o r i t m o :.
P e s q u i s a d o s macro-cõdigos e s s e n c i a i s1. P e r c o r r e - s e a s c o l u n a s da m a t r i z v e r i f i c a n d o - s e o núme r o d e macro-códigos q u e r e p r e s e n t a m a m i c r o - i n s t r u ç ã o c o r r e s p o n d e n t e a c o l u n a p e r
-
c o r r i d a . Um c o n t a d o r f a z a contagem do número de 1 s que aparecem em c a d a c o l u n a . Se s óum
macro-código r e n r e â e n t a d e t e r m i n a d a m i c r o - i n s t r u ç ã o , e s t eé
um macro-cõ-
d i g o e s s e n c i a l . 2 . E l i m i n a - s e a i n f l u ê n c i a d o s macro-códigos e s c o l h i d o s , z e r a n d d - s e t o d a s c o l u n a s em que e s t e s se fazem p r e s e n t e s ..
P e s q u i s a da e x i s t ê n c i a d e m i c r o - i n s t r u ç õ e s a i n d a não r e p r e s e n t a d a s . 3. P e r c o r r e - s e a s c o l u n a s v e r i f i c a n d o - s e em alguma d e l a s se esta p r o & @ n t e 1. r e p r e s e n t a d o s ..
Escolha d o s macro-códigos não e s s e n c i a i s que devem s e r 4. P e r c o r r e - s e a s l i n h a s , contando-se o número d e micro- F Oi n s t r u ç Ó e s , p r e s e n t a d a s p o r cada maero-'cÓdigo; O. mãcro-cãdigo mais r e p r e s e n t a t i - vo é e s c o l h i d o .
5. Se não e x i s t e nenhuma m i c r o - i n s t r u ç ã o a r e p r e s e n t a r vá p a r a 8.
6. Se houve empate na e s c o l h a do macro-cÓÓdigo m a i s r e p r e
-
s e n t a t i v o s i g a , c a s o c o n t r 6 r i o v o l t e p a r a 2.7. V e r i f i q u e o macro-cddigo d e menor tempo d e execução. ( v o l t e p a r a 21
8. O s macro-cddigos e s c o l h i d o s err
um,
q u a t r o e sete s ã o-
a q u e l e s que devem f a z e r p a r t e do programa d e t e s t e . "F o i f e i t o um programa em FORTRAN que implementou o a l g o r i t m o a n t e r i - o r . Como o número d e d a d o s manipulados f o i g r a n d e , despendeu-se 300k d e memória, com
um
tempo d e CPU d e 9.62 segundos.*O Programa d e Escolha e s t a d i v i d i d o em programa p r i n c i p a l e
t r ê s
s u-
b r o t i n a s . s ã o a s s e g u i n t e s f u n ç 6 e s a t r i b u i d a s a e s t a s p a r t e s :.
Programa P r i n c i p a l : L e i t u r a d o s dados e formação da m a t r i z b i n á r i a ..
S u b r o t i n a E s c o l h a : Faz a e s c o l h a do c o n j u n t o d e macro-códigos..
S u b r o t i n a Ordem e Rendu: Operam j u n t a s na compactação d e v e t o r e s . V - 4 - 1 L e i t o r a d e dadosA d e c o d i f i c a ç ã o d e um macro-código
num
micro-programa6
f e i t a em du- a s p a r t e s :2. Decodificaç~o do comando do macrorc6digo.
Deste modo não
6
necessário fazer parte do processo de escolha os maecor-códigos com todas suas opç8es de endereçamento,pois qualquer macro-código ge
-
ra o mesmo micro~programa de endereçamento. As micro-instruçÕes que fizeram par-
te do processo foram:
Tipo código e Família.
Exemplo . : Macro-código XEX
Tipo: 3 F11D EDAI FlS8 E01 6 Famflia: PHI
~ l é m da l e i t u r a d o s m a c r o ~ c Ó d i g o s e s u a s m i c r o - i n s t r u ç Õ e s s ã o l i d o s o s tempos d e execução d e cada macro-código.
Fizeram p a r t e do p r o c e s s o d e e s c o l h a 66 macro-códigos d o s q u a i s foram e s c o l h i d o s 651 I s t o se deve p r i n c i p a l m e n t e a o número de macro-códigos e s s e n c i a i s . Foram e n c o n t r a d o s 64 macro-códigos e s s e n c i a i s e
um
não e s s e n c i a l .O r e s u l t a d o do programa e s c o l h a 6 a p r e s e n t a d o d e a c o r d o com a c o d i f i c a
-
ç ã o do anexo B. - ,?c*
A soma do tempo d e execução f o i d e : 179.40
*Programa Escolha
será
o nome do programa que implementa o a l g o r i t m o ESCOLHA;+ *
Tempo c a l c u l a d o p e l a soma d o s tempos i n d i v i d u a i s . E s t e tempo6
aproximado p o i s não l e v a em c o n t a a v a r i a ç ã o com o t i p o d e endereçamento.3 6
V I
-
PROGRAMA DE TESTEVI-1 G e n e r a l i d a d e s
N e s t e c a p i t u l o ser; d i s c u t i d o o programa d e t e s t e p r o p o s t o e o pro- grama d e t e s t e com o s i m u l a d o r d e f a l h a s , como também a s f a c i l i d a d e s d e lançamen
-
t o d e um programanum
determinado n h e l d e i n t e r r u p ç ã o [ o p e r a ç ã o l .*
VI-2 o p e r a ç ã oComo f o i v i s t o no c a p i t u l o q u a t r o é n e c e s s á r i a a formação d a s t a b e l a s DVT e CTX p a r a o lançamento d e
um
programa em determinado n f v e l d e i n t e r r u p-
ção.
VI-2-1 Carregamento e lançamento d e programas (111 A i n s t r u ç ã o d e m o n i t o r :
% L
C a r r e g a
um
programa Link-Editado a p a r t i r do p r i m e i r o e n d e r e ç o li- v r e da memória. Terminado o carregamento na memória de um programa o MOB e n v i a p e l o t e l e t i p o a s s e g u i n t e s informaçÕes:A -t XXXX + Endereço do i n í c i o de i m p l a n t a ç a o do programa; 6 -+ YYYY * V a l o r d a b a s e G;
C -+ WWWW
*
P r i m e i r o e n d e r e ç o l i v r e a p ó s o programa.E s t a s informações devem s e r o b s e r v a d a s no c a r r e g a m e n t o d e o u t r o s programas, p a r a que nao sejam s o b r e p o s t o s programas na memória. O c a r r e g a m e n t o d e o u t r o s programas d e v e r á s e r após o e n d e r e ç o dado par C.
*
0 s comandos a q u i d e s c r i t o s dão e n t r a d a p e l o t e l e t i p o . Após cada comando de- v e - s e b a t e r r e t o r n o d e c a r r o , uma d a s t e c l a s .%L/A, @ & ( e n d e r e ç o C 1
Após c a r r e g a d o o programa na memória a i n s t r u ç ã o : % R / I & l n f v e l d e I T em hexadecimall
**
f a z s e u lançamento no n í v e l e s p e c i f i c a d o
.
L .atqado um p r o-
grama, e s t e s ó6
a t i v a d o quando p r e s e n t e o s i n a l d e a t i v a m e n t o d e i n t e r r u p ç ã o .VI-2-2 Formação d a s t a b e l a s DVT e CTX ( 1 1 1 , 1 1 0 )
A t a b e l a CTX tem l o c a l i z a ç ã o ' i a d a - p e l o conteúdo do e n d e r e
-
ço d e memória 000A. Sua l o c a l i z a ç ã o d e n t r o do MOB6
p r e v i s t a p e l o s i s t e m a numazo-
na r e s e r v a d a . D endereço d e c o n t e x t o d e d e t e r m i n a d o n í v e l d e I T6
modificado pe-
10 s i s t e m a após r e c e b i d o o èomando % R / I & ( n i v e l de I T em hexadecimall.A t a b e l a OVT s e l o c a l i z a n a s t r i n t a e uma p o s i ç õ e s d e memória a n t e - r i o r e s a t a b e l a CTX. Como s e u conteúdo6 c o d i f i c a d o de acõrdo com o c ó d i g o de de- s a t i v a m e n t o p a r a cada a c o p l a d o r , e s t a deve ser formada p e l o operador.Usa-se a i n s
-
t r u ç ã o :*
%MO/A,@&[endereço a m o d i f l c a r l : & ( v a l o r em hexadecimallO endereço da p a l a v r a da DVT c o r r e s p o n d e n t e a d e t e r m i n a d o n í v e l de i n t e r r u p ç ã o
é
dado p r o : 4 ENDEREÇO DA DVT c o r r e s p o n d e n t e ao n í v e l n=2x n+0116 VI-3 Programa d e t e s t e No programa d e t e s t e , o s macro-códigos e s c o l h i d o s s e r ã o t e s t a d o s , comparando o s r e s u l t a d o s d e s u a s o p e r a ç õ e s , com r e s u l t a d o s p r é - e ~ ~ ~ b e l e c i d o s .A s comparaçÕes~.serão f e i t a s , normalmente, a p ó s a s manipuiaç6es d o s dados p o r v á r i o s macro-códigos. A s s i m d i m i n u i - s e o tempo de execução d o s B e s t e s sem s a c r i f í c i o d e s u a performance,
DA "SHIFT", sendo f e i t o s o "SHIFT" do ndmero d e b i t s do operando, 1 6 od 32. Em c a s o d e s e e n c o n t r a r e r r o o programa e n t r a
num
" 1 o o p " i n f i n i t o . Devido ao tamanho do programa e s t e f o i d i v i d i d o em q u a t r o p a r t e s :Um programa p r i n c i p a l e t r k sub-programs,
A i n s t r u ç ã o do m o n i t o r
M:KEY
f o i usado p a r a t e s t e da macro-código R D e WD..VI-3-1 Procedimento d e t e s t e
s e r ã o dados o s macro-códigos e a d e s c r i ç ã o d e s e u s t e s t e s . O d i a g r a
-
ma d e b l o c o do programa d e t e s t e e a s u a l i s t a g e m e s t ã o nos anexos.Caso o s v a l o r e s e s p e r a d o s n a s comparações forem d i f e r e n t e s , o p r o -
**
*
grama e n t r a numa i n s t r u ç ã o d e " l o o p " i n f i n i t o .
A s i n s t r u ç Õ e s CMP (compare), BCT e BCF ( d e s v i a se a comparação fÔr v e r d a d e i r a e d e s v i a se a comparação f 6 r f a l s a ) , s ã 6 u s a d a s em q u a s e t o d o s o s t e s
-
t e s .T e s t e 1 - LDA, STA e EOR.
A é c a r r e g a d o ( L D A I com &AAAA. 0 conteúdo d e A
6
armazenado na memó r i a (STA).Faz-se
um
c ~ g - g m ~ y s ~ y ~ e n t r e o conteúdo de A e o conteúdo do e n d e r e9
ç o de memória onde e s t e conteúdo f o i armazenado ( E O R ) . O r e s u l t a d o e s p e r a d o em A e :
&O000
g E s t a i n s t r u ç ã o p e r m i t e a m o d i f i c a ç ã o do conteúdo d e q u a l q u e r e n d e r e ç o d e memó%
-
r i a .
T e s t e 2
-
IOR e ANO,Faz-se um
c!
l d g i c o CIORI e n t r e AC
que vem do t e s t e a n t e r i o r com conteúdo = 80000) e 8AAAA. Em seguida6
f e i t o um E l ó g i c o e n t r e A e 85555.O r e s u l t a d o esperado
d
80000.T e s t e 3
-
LBR e LEL.0 s d o i s b y t e s da
.
esquerda e da d i r e i t a de A são c a r r e g a d o s comO r e s u l t a d o esperado
6
85555.T e s t e 4
-
DST e DLD;E
-
é c a r r e g a d o com 8AAAA e A com &5555 [DLDI. E s t e s conteúdos são-
armazenados na memória [DSTI. O conteúdo desses endereços de m e m b i a são compara-
dos com &AAAA e 85555.T e s t e 5
-
SBR, SBL e ADM,0 s b y t e s da d i r e i t a e da esquenda de determinado endereço da memória, são c a r r e g a d o s com &AA, [SBR
.
e SBLI. O conteúdo desse endereço4
somado a 8AAAA(ADMI. 0 m s u l t a d o esperado, como conteúdo desse endereço,
6 :
&5554.T e s t e 6
-
LDX e STX.X
6
c a r r e g a d o com 80002 (LDXI. O conteúdo de X6
armazenado [STXj O-
T e s t e 7
-
STE,Note que d e s d e o t e s t e 4 o conteudo d e E
4
8AAAA. O conkeúdo d e E6
armazenado na memória (STEI
.
E s t e conteddo da memdria é comparado com &AAAA.T e s t e 8 XAE, MUL, SUB e ADD.
A e E s ã o c a r r e g a d o s , r e s p e c t i v a m e n t e , com 80002 e 80000. O c o n t e ú - do d e A 8 t r o c a d o com o conteüdo d e E , e v i c e - v e r s a (XAEI.
O conteúdo d e A i ( & 0 0 0 2 I ,
6
m u l t i p l i c a d o p o r &5555-:(MUL), e armaze- nado na memória. O conteüdo d e Aé
s u b r a i d o d e 85555, e somado com 85555 ISUB,ADDI. O r e s u l t a d o d e s s a o p e r a ç 0 e sé
comparado com o r e s u l t a d o da h i u l t i p l i c a ç ã o . Nota: a . 0 s t e s t e s d e 9 a 22 e s t ã o em s u b r o t i n a s . b. O r e g i s t r o X , nos t e s t e s 9 a 1 6 , 6 usado p a r a B o n t r o l a r*
o número de deslocamentos.(DCXI c . Como não e x i s t e no r e ~ e r t ó r i 6 ~ d e i n s t r u ç ã o do M l t r a 1 5 , comparação e n t r e X e memória ; e s s a s comparações -;serão f e i t a s no r e g i s t r o A (XAX,BAZI.Teste 9
-
SLLS.A
6
c a r r e g a d o com 85555, e em b i n á r i o6
r e p r e s e n t a d o p o r :01 o1 o1 o1 01 01 01 01 X
6
c a r r e g a d o com 1 6Com o conteúdo d e A s4o f e i t o s 16 deslocamentos d e 1 b i t . Ap6s c a
-
da deslocamento X é decrementado ( D C X I .E n t r e cada deslocamento o b i t mais a e s q u e r d a s e r á O ou1 se a o r - dem do deslocamento f õ r , r e s p e c t i v a m e n t e , 2k + 1 ou 2k.
A ~ Ó S completados 16 d e s l o c a m e n t o s , o conteúdo d e A , d e v e r á s e r z e r o . O macro-código SLLS,
6
s u p e r v i s i o n a d o ao n í v e l do b i t d e s l o c a d o e a o n í v e l do conteúdo f i n a l e s p e r a d o . A n e c e s s i d a d e d e s t a r e d u n d ã n c i a no t e s t eé
d i s c u t i v e l .Teste 1 0
-
SRLS.c a r r e g a d o com &AAAA, que em b i n á r i o 6 :
O procedimento r e s t a n t e é semelhante ao t e s t e 9.
Teste 11
-
SRCS.A
6
c a r r e g a d o com 8AAAA. O procedimento r e s t a n t e6
s e m e l h a n t e ao t e s t e 9, s ó que após completados 16 d e s l o c a m e n t o s o conteúdo d e A É comparado com 8AAAA.
T e s t e 12-SLCS.
A é c a r r e g a d o com 8AAAA.
O procedimento é s e m e l h a n t e a o t e s t e 9, s ó que o s d e s l o c a m e n t o s d e ordem 2k + 1 e 2k, devem t e r o b i t mais a e s q u e r d a
-
1 ou-
O r e s p e c t i v a m e n t e .Teste 1 8