Buscar

Arquitetura de Computadores_Capitulo 02

Prévia do material em texto

Processadores
� A unidade central de processamento (central processing unit - CPU) �e o cerebro do
computador.
� Sua fun�c~ao �e executar programas armazenados na mem�oria principal, buscando suas in-
stru�c~oes, examinando-as, e ent~ao executando uma ap�os a outra. Ela �e composta por:
{ Unidade de controle.
� Busca instru�c~oes na mem�oria e determina seus tipos.
{ Unidade l�ogica e aritm�etica.
� Faz opera�c~oes tais como adi�c~oes e E booleano, necess�arias �a execu�c~ao das instru�c~oes.
{ Registradores.
� Mem�oria pequena, de alta velocidade, usada para armazenar resultados tempor�arios
e certas informa�c~oes de controle.
� O registrador mais importante �e o contador de programa (program counter - PC), que
aponta para a pr�oxima instru�c~ao a ser executada. O nome contador de programa n~ao tem
nada a ver com a contagem de alguma coisa, mas o termo �e universalmente usado.
� O registrador de instr�c~ao(instruction register - IR) �e importante tamb�em. Ele cont�em
a instru�c~ao que est�a sendo executada.
� A maioria dos computadores tem outros registradores, alguns deles dispon��veis aos progra-
madores de n��veis 2 e 3, para armazenamento de resultados intermedi�arios.
1
Processadores
� Execu�c~ao de Instru�c~oes.
{ A CPU executa uma instru�c~ao em uma s�erie de pequenos passos:
1. Busca a pr�oxima instru�c~ao da mem�oria para o registrador de instru�c~ao.
2. Atualiza o contador de programas para que ele aponte para a instru�c~ao seguinte.
3. Determina o tipo da instru�c~ao.
4. Se a instru�c~ao usa dados da mem�oria, determina onde eles est~ao.
5. Busca os dados, se houver algum, para registradores internos da CPU.
6. Executa a instru�c~ao.
7. Armazena os resultados em locais apropriados.
8. Volta ao passo 1 para iniciar a execu�c~ao da pr�oxima instru�c~ao.
{ Esta sequencia de passos �e frequentemente referida como o ciclo busca-decodi�ca-
executa. Ela �e o centro da opera�c~ao de todos os computadores.
� Um programa n~ao precisa ser executado pelo hardware de uma CPU. Ele pode ser executado
por um interpretador que busca, analisa e executa suas instru�c~oes.
2
Processadores
RDM (MBR)
REM(MAR)
MP
Relógio
ULA ACC
Registradores
0 a R-1 CI (PC)
UC
Barramento de Controle
Decodificador
de instruções
RI (IR)
Barramento
de Dados
Barramento
de endereços
UCP
Controle
Dados/endereços
Função Processamento
Função Controle
� As fun�c~oes de uma CPU podem ser divididas em duas grandes categorias funcionais:
{ Fun�c~ao Processamento.
� Se encarrega de realizar as atividades relacionadas com a efetiva execu�c~ao de uma
opera�c~ao, ou seja, processar.
{ Fun�c~ao Controle.
�
�
E exercida pelo componentes da CPU que se encarregam das atividades de busca,
interpreta�c~ao e controle da execu�c~ao das instru�c~oes, bem como do controle da a�c~ao
dos demais componentes do sistema (mem�oria, entrada/sada).
� Processo Serial: Cada pequena atividade do ciclo de instru�c~oes �e realizada em seque^ncia �a
anterior.
3
Processadores
� Fun�c~ao Processamento.
{ Processar um dado �e executar com ele uma a�c~ao que produza algum tipo de sa��da.
Algumas tarefas s~ao:
� Opera�c~oes aritm�eticas (somar,subtrair, mult.,dividir)
� Opera�c~oes L�ogicas (and, or, xor, etc.)
� Movimenta�c~aode dados.
� Desvios.
� Opera�c~oes de entrada ou sa��da.
{ O dispositivo principal desta �area de atividades de uma CPU �e chamada ULA - Unidade
L�ogica e Aritm�etica. Ela executa opera�c~oes como:
� Soma. � Subtra�c~ao.
� Multiplica�c~ao � Divis~ao.
� op.L�ogica AND. � op.L�ogica OR.
� op.L�ogica XOR. � op.complemento.
� Deslocamente �a direita. � Deslocamente �a esquerda.
� Incremento. � Decremento.
{ Registradores.
� Para que um dado possa ser transferido da/para ULA, �e necess�ario que ele per-
mane�ca, mesmo que por um breve instante, armazenado em um registrador.
� Servem de mem�oria auxiliar.
� Em alguns sistemas um destes registradores, denominado acumulador (ACC), al�em
de armazenar dados, serve de elemento de liga�c~ao da ULA com os restantes dispos-
itivos da CPU.
� A quantidade e o uso dos registradores variam bastante de modelo para modelo de
CPU.
{ In
ue^ncia do tamanho da palavra.
� A capacidade de processamento de uma CPU �e em grande parte determinada pelas
facilidades embutidas no hardware da ULA para realizar as opera�c~oes matem�aticas
projetadas.
� Um dos elementos fundamentais para isso �e a de�ni�c~ao do tamanho da palavra.
� Um tamanho maior ou menor de palavra acarreta, sem d�uvida, diferen�cas funda-
mentais de desempenho da CPU.
� Considerando um exemplo de somar dois valores A = 3A25 e B = 172C, ambos em
hexadecimal.
4
Processadores
MP
A
8 bits
8 bits
ACC = 8 bits
~~~~ ~~~~
UAL
CPU
B
3A
25
17
2C
25+2C(1˚)
3A+17(2˚)
8 bits
8 bits
Barramento de dados
}
CPU - Palavra de 8 bits
MP
8 bits
8 bits
ACC = 16 bits
~~~~ ~~~~
UAL
CPU }A
B
3A
25
17
2C
3A25+172C(1˚)
16
bits
16
bits
Barramento de dados
}
CPU - Palavra de 16 bits
}
� Fun�c~ao Controle.
{ A �area de controle de uma CPU �e a parte funcional que realiza as atividades de:
� Busca da instru�c~ao que ser�a executada, armanzenando-a no IR.
� Interpreta�c~ao das a�c~oes a serem desencadeadas com a execu�c~ao da instru�c~ao.
� Gera�c~ao dos sinais de controle apropriados para ativa�c~ao das atividades requeridas
para a execu�c~ao propriamente dita da instru�c~ao identi�cada.
{ Em outras palavras, a �area de controle �e projetada para entender o que fazer, como fazer
e comandar quem vai fazer no momento adequado.
{ Os dispositivos b�asicos que devem fazer parte da �area de controle s~ao:
� Unidade de Controle. � Contador de programa (PC).
� Decodi�cador. � Rel�ogio ou clock.
� Registrador de instru�c~ao (IR).
� Registrador de Dados da Mem�oria(RDM).
� Registrador de Endere�co de Mem�oria(REM).
5
Processadores
� Unidade de Controle.
{
�
E o dispositivo mais complexo da CPU.
{ Possui a l�ogica necess�aria para realizar a movimenta�c~ao de dados e instru�c~oes de e para
a CPU, atrav�es dos sinais de controle que emite em instantes de tempo programados.
{ Controla a a�c~ao da ULA.
{ Os sinais de controle ocorrem em v�arios instantes durante o per��odo de realiza�c~ao de um
ciclo de instru�c~ao.
� Rel�ogio.
{ Gerador de pulsos cuja dura�c~ao �e chamada de ciclo.
{ A quantidade de vezes que este pulso se repete em um segundo de�ne a unidade de
medida do rel�ogio, denominada freque^ncia.
{ Um ciclo de rel�ogio ou de m�aquina (machine cycle) �e o intervalo de tempo entre o in��cio
de um pulso e o in��cio do seguinte.
{ Este ciclo est�a relacionado �a realiza�c~ao de uma opera�c~ao elementar, durante o ciclo de
uma instru�c~ao.
{ Uma opera�c~ao elementar n~ao se realiza em um s�o passo. Costuma-se dividir o ciclo de
m�aquina em ciclos menores (subciclos).
6
Processadores
� Rel�ogio(Cont.).
{ A unidade de medida para freque^ncia �e o Hertz(HZ), que signi�ca 1 ciclo por segundo.
Como as frequencias s~ao elevadas abreviam-se os valores usando M(milh~oes de HZ).
{ Se um processador funciona com seu rel�ogio oscilando 25 milh~oes de vezes por segundo,
sua freque^ncia �e de 25 MHZ. Como a dura�c~ao �e o inverso da freque^ncia, ent~ao o ciclo
ser�a
1
25:000:000
= 0; 00000004s ou 40 nanosegundos.
{ Uma CPU com freque^ncia de 33 MHz possui um per��odo de rel�ogio de 30; 3 ns.
� Decodi�cador de Instru�c~ao.
{ Identi�ca as opera�c~oes a serem realizadas, que est~ao correlacionadas com a instru�c~ao em
execu�c~ao.
{ Cada instru�c~ao possui uma identi�ca�c~ao pr�opria e �unica.
{ Recebe um conjunto de bits para identi�caruma instru�c~ao de m�aquina, e possui 2
N
sa��das, sendo N a quantidade de algarismos bin�arios do valor de entradas.
{ Cada linha de sa��da aciona de modo diferente a Unidade de Controle e esta, emite
diferentes sinais de controle conforme a linha de sa��da decodi�cada.
7
Mem�oria
� A mem�oria �e a parte do computador onde programas s~ao armazenados.
� A unidade b�asica de mem�oria �e o d��gito bin�ario, chamado bit. Um bit pode conter um 0 ou
um 1. Ele �e a unidade mais simples poss��vel.
� As mem�orias s~ao compostas de um determinado n�umero de c�elulas (ou posi�c~oes), cada uma po-
dendo armazenar uma parte da informa�c~ao. Cada c�elula tem um n�umero, chamado endere�co,
pelo qual os programas podem referenci�a-la.
� Se a mem�oria tem n c�elulas, elas ter~ao endere�cos de 0 a n� 1.
� Todas as c�elulas possuem o mesmo n�umero de bits.
� Uma c�elula de k bits, pode conter uma em 2
k
diferentes combina�c~oes de bits.
� Uma c�elula �e a menor unidade endere�c�avel.
� a maioria dos fabricantes de computadores, padronizaram a c�elula de 8 bits, que �e chamada
byte.
� Bytes s~ao agrupados em palavras. Um computador com uma palavra de 16 bits tem 2
bytes/palavra. Um computador com palavra de 32 bits tem 4 bytes/palavra.
� O signi�cado de uma palavra �e que a maioria das instru�c~oes operam em palavras inteiras.
� Uma m�aquina de 16 bits ter�a registradores de 16 bits e instru�c~oes que manipulam palavras
de 16 bits, enquanto que uma m�aquina de 32 bits ter�a registradores de 32 bits.
� Tre^s organiza�c~oes diferentes para uma mem�oria de 96 bits. C�elulas adjacentes te^m endere�cos
consecutivos (por de�ni�c~oes).
8
Mem�oria
� Ordem dos Bytes.
{ Os bytes em uma palavra podem ser numerados da esquerda para a direita ou da direita
para esquerda.
� Palavras de 16 bits
Little EndianLittle Endian -- palavra de 16 bits.palavra de 16 bits.
9494
9393
9292
9191
9090
8181
8080
7272
7171
7070
0
1
2
3
4
5
6
7
8
9
A
B
C
D
E
Word no Endereço 0BH : 9392H
DoubleWord no Endereço 0AH : 94939291H
Byte Endereço 9H : 90H
Word no Endereço 6H : 8180H
Word no Endereço 2H : 7271H
Word no Endereço 1H : 7170H
Endereços
9
Mem�oria
� Corre�c~ao de Erros.
{ As mem�orias ocasionalmente podem cometer erros devido a picos de tens~ao na rede
el�etrica.
{ Para isso a maioria das mem�orias usam c�odigos de detec�c~ao de erros.
{ Uma palavra de mem�oria que tem m bits de dados recebe r bits de veri�ca�c~ao. O tamanho
total da palavra �e n(n = m + r). Esta nova palavra �e chamada de palavra de c�odigo.
{ Distancia Hamming �e o n�umero de posi�c~oes de bits pela qual duas palavras c�odigo
diferem. Por exemplo, 0111 e 1001 tem uma dista^ncia de 3.
{ Bits de paridade s~ao inseridos na palavra para a detec�c~ao de erros.
{ Exemplo de um algoritmo de hamming para corre�c~ao de palavras na mem�oria:
� Em uma palavra todos os bits pote^ncia de 2 s~ao de paridade. Em uma palavra de
16 bits, os bits 1, 2, 4, 8 e 16 s~ao de paridade.
� Cada bit de paridade veri�ca posi�c~oes espec���cas de bits.
� De forma geral, o bit b �e veri�cado pelos bits b
1
; b
2
; � � � ; b
i
, tal que b
1
+b
2
+� � �+b
i
= b.
� Utilizando a paridade par arbitrariamente, temos :.
01 1 1 1 0 0 0 0 1 0 1 1 1 1 0
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 
Bit 1 verifica os bits 1, 3, 5, 7, 9, 11, 13, 15, 17, 19 e 21.
Bit 2 verifica os bits 2, 3, 6, 7, 10, 11, 14, 15, 18 e 19.
Bit 4 verifica os bits 4, 5, 6, 7, 12, 13, 14, 15, 20 e 21.
Bit 8 verifica os bits 8, 9, 10, 11, 12, 13, 14 e 15.
Bit 16 verifica os bits 16, 17, 18, 19, 20 e 21.
Palavra de 16 bits : 1111000010101110
00 00 00 11
Palavra Código de 21 bits : 001011100000101101110
-
Gravada na Memória
01 0 1 1 0 0 0 0 1 0 1 1 1 1 0
1 2 3 4 5 6 7 8 9
01 1 1 0 0 0 0 1 0 1 1 1 1 0
1 2 3 4 5 6 7 8 9
0 0 0 0 1
Palavra Código de 21 bits lida da Memória
00
10 11 12 13 14 15 16 17 18 19 20 21 
10
Mem�oria
� Hierarquia de Mem�oria.
Discos Magn�eticos
� Consistem de um ou mais pratos de alum��nio magnetizados.
� A sequencia circular de bits escritos quando o disco executa uma rota�c~ao completa �e chamada
de trilha.
� Cada trilha �e dividida em um n�umero �xo de setores, tipicamente contendo 512 bytes, pre-
cedida por um pr�e-ambulo que permite a cabe�ca de leitura/grava�c~ao ser sincronizada antes
da leitura ou grava�c~ao.
� Ap�os os dados existe um c�odigo de corre�c~ao de erro(ECC), podendo ser um hamming ou um
c�odigo que pode corrigir multiplos erros chamado Reed-Solomon code.
11
Discos Magn�eticos
� A largura de uma trilha depende da largura da cabe�ca de leitura/grava�c~ao e da precis~ao com
que a cabe�ca pode ser posicionada.
� Atualmente os discos tem entre 800 e 2000 trilhas por cent��metro, dando a uma trilha a largura
de 5 a 10 micron (1 micron =
1
1000
mm).
� O conjunto de trilhas que est~ao �a mesma dista^ncia do eixo chama-se cilindro.
� O tempo requerido para o bra�co se mover at�e a trilha (cilindro) desejada se chama tempo de
seek.
� O tempo requerido para a cabe�ca de L/G se posicionar no setor correto se chama tempo de
late^ncia.
Cilindros
Eixo
Braço de leitura
12
Entrada e Sa��da
� A fun�c~ao de um controlador �e controlar o dispositivo de I/O e tratar o acesso do barramento
para ele.
� Quando um programa necessita dados de um disco, por exemplo, um comando �e enviado para
a controladora, que por sua vez envia os comandos para o drive.
� A controladora escreve as palavras na mem�oria principal.
� A controladora que le^ ou escreve na mem�oria sem a interven�c~ao da CPU �e dita estar usando
Acesso Direto A Memria(DMA). Quando a transfere^ncia est�a completa, o controlador
causa uma interrup�c~ao.
� Quando a CPU e um controlador querem usar o barramento ao mesmo tempo, um chip
chamado �arbitro de barramento decide quem vai us�a-lo. Normalmento o controlador tem
a prefere^ncia.
13
Entrada e Sa��da
� Barramentos ISA(Industry Standard Architecture) e Barramentos PCI(Peripheral Compo-
nent Interconnect).
14

Continue navegando