Aula Introdução a Arquitetura e Organização de Computadores
1. Arquitetura e Organização de Computadores -
Introdução
Professor: Gilvan Luiz Latreille
Tópicos da Aula:
- Arquitetura e Organização de Computadores –
Conceitos.
- Breve história dos computadores.
- Organização básica da Memória e da CPU.
- Barramentos.
- Memória Interna e Externa
- Sistemas de Entrada e Saída.
- Tendências e Possibilidades Futuras.
2. Arquitetura e Organização de Computadores -
Introdução
Conceitos:
Arquitetura de Computadores é a área de conhecimento que
trata da organização lógica dos sistemas computacionais e
seu comportamento funcional, em relação ao programador.
Exemplo: tamanhos de dados, tipos de instruções.
Organização de Computadores é a área que lida com aspectos
não diretamente relacionados ao programador, como tipos de
dispositivos, tecnologia de memória, tecnologia física de
construção dos circuitos, estrutura e implementação das
portas lógicas e barramentos, etc.
3. Arquitetura e Organização de Computadores -
Introdução
Breve História da Computação:
Ábaco Chines (2000 a.c.):
4. Arquitetura e Organização de Computadores -
Introdução
Breve História da Computação:
Calculadora de Pascal ( 1600 ):
5. Arquitetura e Organização de Computadores -
Introdução
Breve História da Computação:
Máquina Diferencial
de Babbage ( 1700, não
pôde ser construída na
época) :
6. Arquitetura e Organização de Computadores -
Introdução
Breve História da Computação:
Tear de Jacquard (1804) ,
primeiro exemplo de uso de
memória de programa externa
ao dispositivo:
7. Arquitetura e Organização de Computadores -
Introdução
Breve História da Computação:
Máquina Enigma (1939).
Exemplo de um dos primeiros
sistemas criptográficos.
8. Arquitetura e Organização de Computadores -
Introdução
Breve História da Computação:
Computador Colossus
(1944).
Feito para quebrar os
códigos da máquina
Enigma
9. Arquitetura e Organização de Computadores -
Introdução
Breve História da Computação:
Eniac (1946).
Primeiro
computador
eletrônico de
propósito
geral.
10. Arquitetura e Organização de Computadores -
Introdução
A “lei” de Moore e a evolução recente:
“A cada 18 meses
o poder
computacional
dobra em relação
ao mesmo preço
anterior”.
Obs.: a lei de Moore
está em seu limite.
11. Arquitetura e Organização de Computadores -
Introdução
Breve História da Computação:
Como os computadores
chegaram aos padrões
atuais?
Os métodos básicos para
solucionar problemas e
organizar tarefas não
mudaram muito desde a
antiguidade.
Que ferramentas usamos
desde a antiguidade para
trabalhar informações?
12. Arquitetura e Organização de Computadores -
Introdução
Breve História da Computação:
Tenhamos um
computador, ou planilhas
e calculadora, a forma
de tratar informações é
semelhante, tendo onde
registrar a informação,
basta executar os passos
corretos.
13. Arquitetura e Organização de Computadores -
Introdução
Elementos básicos de um Computador Moderno:
-Memória: armazena o programa (instruções a executar)
e os dados (valores processados).
-Processador: executa os passos do programa e os
cálculos.
-Entradas e saídas: recebem as informações para
processamento e devolvem os resultados.
-Barramento: conjunto de meios de interligação e
comunicação entre os elementos do computador.
14. Arquitetura e Organização de Computadores -
Introdução
Organização Básica da CPU e da Memória:
Tecnicamente
falando, as partes
mais visíveis de um
computador de mesa
não correspondem
exatamente aos seus
componentes
fundamentais
15. Arquitetura e Organização de Computadores -
Introdução
Organização Básica da CPU e da Memória:
Examinando a
nível dos circuitos,
podemos
identificar
elementos
fundamentais
como Memória,
Processador ou
CPU,
Barramentos e
Entradas e saídas.
16. Arquitetura e Organização de Computadores -
Introdução
Organização Básica da CPU e da Memória:
Modelo de Von
Neumann.
É o atual paradigma para
organização de sistemas
computacionais. Seus
itens essenciais são:
Memória, Processador ou
CPU, barramentos, e
Entradas e Saídas.
17. Arquitetura e Organização de Computadores -
Introdução
Organização Básica da CPU e da Memória:
Modelo de Von
Neumann.
Memória: armazena
dados e instruções dos
programas. O modelo
de Von Neumann
introduziu o
computador com
programa armazenado,
capaz de múltiplas
aplicações.
18. Arquitetura e Organização de Computadores -
Introdução
O Processador ou CPU, e sua origem:
A Máquina de Turing:
Idealizada por Alan
Turing, é uma máquina
hipotética capaz de
resolver qualquer
problema descrito por
uma sequência definida de
instruções (algoritmo).
Todos os processadores
modernos são Máquinas
de Turing e também
chamados de CPU
(central processing unit).
20. Arquitetura e Organização de Computadores -
Introdução
O Barramento ou Bus :
Barramento é um
conjunto de vias de
comunicação cuja função
é integrar os elementos do
computador.
Em um moderno
computador há diversos
barramentos, no mínimo o
de endereços, o de dados e
o de controle.
21. Arquitetura e Organização de Computadores -
Introdução
Entradas e Saídas :
Para comunicar-se com o mundo exterior e converter as
informações de, e para formatos diversos, há sistemas
especiais de Entrada e de Saída.
Seus componentes mais conhecidos são teclado, vídeo,
interfaces de rede, drives de disco e armazenamento externo.
Os subsistemas de entrada e saída englobam também os
diversos circuitos de suporte, dentro do computador.
22. Arquitetura e Organização de Computadores -
Introdução
MEMÓRIA - ORGANIZAÇÃO :
A Memória se divide
basicamente em memória
principal ou interna
(RAM) e memória
secundária ou externa.
A memória principal é a
única acessível de modo
direto pela CPU.
23. Arquitetura e Organização de Computadores -
Introdução
MEMÓRIA - Hierarquia:
A Memória é subdividida
em unidades de tipos
diferentes, hierarquizada
com base em seu custo e
performance.
Mais perto da CPU –
mais cara, rápida e de
menor tamanho.
Longe da CPU – mais
barata, lenta e de maior
tamanho.
24. Arquitetura e Organização de Computadores -
Introdução
MEMÓRIA – Conexão :
Em um típico
computador moderno, a
memória cache fica
dentro do chip do
processador, a memória
RAM é a memória
principal, os discos
rígidos são a memória
secundária.
Obs.: A cpu não “enxerga”
o cache.
25. Arquitetura e Organização de Computadores -
Introdução
MEMÓRIA PRINCIPAL – RAM :
A memória RAM é a
memória principal, a
CPU acessa diretamente a
memória principal,
através dos barramentos
de dados, endereços e
controle. A memória Ram
é organizada como uma
matriz, sendo de B bits
versus P posições. Um bit
é um dígito binário, o
Byte é a unidade
principal tendo 8 bits.
26. Arquitetura e Organização de Computadores -
Introdução
MEMÓRIA PRINCIPAL – RAM :
Existem diversos tipos
de memória RAM, as
principais são Sram,
muito rápida e cara, e
a Dram, mais lenta e
barata.
Há dois modos
principais de
endereçamento, o
tradicional e o 2.5d.
27. Arquitetura e Organização de Computadores -
Introdução
MEMÓRIA SECUNDÁRIA - ARMAZENAMENTO
A Memória
Secundária ou
externa são os discos
rígidos, cartões de
memória externa,
pendrives, drives de
CD, Dvd, e Blu-Ray.
É assim denominada
porque a CPU não
consegue acessar a
mesma diretamente.
28. Arquitetura e Organização de Computadores -
Introdução
MEMÓRIA SECUNDÁRIA - ARMAZENAMENTO
A Memória
Secundária qualquer
que seja é sempre
organizada em blocos
de bytes (com 512 a 2048
bytes).
Para acessar seus
dados, a CPU precisa
ler de um até N blocos
para a memória
principal, e trabalhar
a partir daí.
29. Arquitetura e Organização de Computadores -
Introdução
Central Processing Unit – O Processador
Uma CPU ou Unidade
Central de
Processamento, é
formada essencialmente de
Banco de Registradores,
Unidade Lógico-Aritmética
ou ALU, e Unidade de
Controle. Em processadores
mais modernos é
incorporada uma unidade de
cache (Sram).
30. Arquitetura e Organização de Computadores -
Introdução
A CPU e o Ciclo de Busca e Execução
Todo programa de computador é subdividido em etapas
elementares, as INSTRUÇÕES, que são os passos mais simples de
um algoritmo.
Toda CPU executa uma sequência de ações para processar uma
única instrução – o CICLO DE BUSCA E EXECUÇÃO.
- BUSCAR A PRÓXIMA INSTRUÇÃO
- DECODIFICAR A INSTRUÇÃO
- BUSCAR OS OPERANDOS (se houverem)
- EXECUTAR A INSTRUÇÃO
- ARMAZENAR OS RESULTADOS (se houverem)
( Repete o ciclo)
31. Arquitetura e Organização de Computadores -
Introdução
A CPU e a Arquitetura do Conjunto de Instruções
Toda CPU executa um conjunto finito e bem determinado de
Instruções. É o conjunto de instruções que define a CPU,
inclusive quanto ao tipo de circuitos e suas conexões. Para projetar
um processador, se começa do projeto do conjunto de instruções, a
chamada ARQUITETURA DO CONJUNTO DE
INSTRUÇÕES, ou “Instruction Set Architecture” - ISA na
sigla em inglês.
As instruções são codificadas em linguagem especial (assembly), e
cada instrução recebe um nome que lembre ao programador a ação
a executar. Ex.: LOAD (“carregar”), STORE (“armazenar”), ADD
(“somar”), SUB(“subtrair”), GOTO (“ir para”), BNE (“desvie se
resultado não for igual a”).
32. Arquitetura e Organização de Computadores -
Introdução
A CPU e a Arquitetura do Conjunto de Instruções
Diagrama
simplificado de
uma CPU com
conjunto de
instruções de
dois operandos.
O chamado
“caminho de
dados” é
dependente do
tipo das
instruções.
33. Arquitetura e Organização de Computadores -
Introdução
A CPU e a Arquitetura do Conjunto de Instruções
Cpu intel 8080 - diagrama simplificado
34. Arquitetura e Organização de Computadores -
Introdução
A CPU e a Arquitetura do Conjunto de Instruções
Cpu intel 8080 – busca da instrução na
memória
35. Arquitetura e Organização de Computadores -
Introdução
A CPU e a Arquitetura do Conjunto de Instruções
Cpu intel 8080 – busca da instrução na
memória
36. Arquitetura e Organização de Computadores -
Introdução
A CPU e a Arquitetura do Conjunto de Instruções
Cpu intel 8080 – busca da instrução na
memória
37. Arquitetura e Organização de Computadores -
Introdução
A CPU e a Arquitetura do Conjunto de Instruções
Cpu intel 8080 – busca da instrução na
memória
38. Arquitetura e Organização de Computadores -
Introdução
A CPU e a Arquitetura do Conjunto de Instruções
Cpu intel 8080 – busca da instrução na
memória
39. Arquitetura e Organização de Computadores -
Introdução
A CPU e a Arquitetura do Conjunto de Instruções
Cpu intel 8080 – decodificação da instrução
40. Arquitetura e Organização de Computadores -
Introdução
A CPU e a Arquitetura do Conjunto de Instruções
Cpu intel 8080 – execução da instrução
41. Arquitetura e Organização de Computadores -
Introdução
CPU's - CLASSIFICAÇÃO
Uma CPU ou Processador, é classificada quanto a diversos
fatores:
- Tamanho dos registradores e barramentos internos, em
bits (8 bits, 16 bits, 32 bits, 64 bits, etc).
- Tipo do Conjunto de Instruções (quanto ao número de
instruções): CISC ou RISC.
-Características da Unidade de Controle (convencional ou
microprogramada).
- Organização e operação dos registradores (pilha, register
set).
42. Arquitetura e Organização de Computadores -
Introdução
O Barramento ou Bus - Particularidades :
O Barramento mais simples, conforme o modelo de Von
Neumann, é um conjunto de conexões ou fios, cada um
comunica um bit de informação, e o conjunto opera em modo
paralelo. Existem no mínimo três barramentos (ou um
barramento triplo), com comunicações para DADOS,
ENDEREÇOS e sinais de CONTROLE, além do fornecimento
de energia.
43. Arquitetura e Organização de Computadores -
Introdução
O Barramento ou Bus - Particularidades :
O Barramento de um
computador desktop
é bem mais
elaborado. Existem
diversos tipos de
barramentos (pci,
isa, etc) e circuitos
especializados em
rotear e ordenar a
comunicação entre os
diversos elementos
do computador, as
chamadas PONTES.
45. Arquitetura e Organização de Computadores -
Introdução
Sistemas de Entradas e Saidas - Particularidades :
Os elementos de um sistema de Entradas e Saídas englobam todos
os periféricos de um sistema, os quais se comunicam com o
usuário e com o mundo exterior. São bem conhecidos os
periféricos como: teclado, video, interfaces de rede, interfaces
seriais, impressora, mouse. Integrados ao sistema de entradas e
saídas são também os circuitos especializados para o suporte a
todos os periféricos, os quais se encontram dentro do computador.
Os circuitos especializados são responsáveis pela conversão do
formato de dados do computador para o meio externo e ainda
pelo sistema de comunicação via INTERRUPÇÃO e DMA.
46. Arquitetura e Organização de Computadores -
Introdução
Sistemas de Entradas e Saidas - Particularidades :
Há três modos de comunicação da CPU com os periféricos: por
POLLING, INTERRUPÇÃO, e por Interrupção com ACESSO
DIRETO A MEMÓRIA (DMA).
POLLING ou PROGRAMADA – A CPU testa a todo instante se
existem dados para ler ou se o periférico está pronto a receber
dados.
INTERRUPÇÃO – Os periféricos informam a CPU que há dados
ou que requerem atenção, o processamento é desviado para um
programa especial que atende ao pedido, e retomado em sua
conclusão.
ACESSO DIRETO A MEMÓRIA – um circuito especializado
executa a escrita ou leitura da memória para o periférico sem que
a Cpu tenha que fazer o processamento. Normalmente o método
DMA opera integrado com Interrupções.
47. Arquitetura e Organização de Computadores -
Introdução
Sistemas de Entradas e Saidas - Particularidades :
Método de Entrada e Saída
Programada ou Polling:
-Fácil de programar.
-Extremamente ineficiente pois
a CPU fica totalmente ocupada
esperando o periférico ficar
pronto.
48. Arquitetura e Organização de Computadores -
Introdução
Sistemas de Entradas e Saidas - Particularidades :
Método de Entrada e Saída por
Interrupção :
- Requer suporte em hardware
na CPU e no controlador do
periférico.
- Difícil de programar.
- Muito eficiente, libera a CPU
na maior parte do tempo
49. Arquitetura e Organização de Computadores -
Introdução
Sistemas de Entradas e Saidas - Particularidades :
Método de Entrada e Saída por
Interrupção e DMA :
- Requer suporte em hardware na
CPU e no controlador do
periférico, e requer um circuito
especial, o Controlador de DMA.
- Difícil de programar.
- O mais eficiente, libera a CPU
na maior parte do tempo e
inclusive do trabalho de mover os
dados.
50. Arquitetura e Organização de Computadores -
Introdução
Computação - Tendências e Possibilidades
Futuras:
- Sistemas em Circuitos Integrados.
- Paralelismo com múltiplos processadores.
- Arquiteturas não convencionais (computador
quântico, redes neurais).
51. Arquitetura e Organização de Computadores -
Introdução
Computação - Tendências Futuras:
- Sistemas em Circuitos Integrados (SOC).
52. Arquitetura e Organização de Computadores -
Introdução
Computação - Tendências Futuras:
- Paralelismo.
Sistema Fermi da
Nvidia, uma matriz de
480 processadores,
otimizada para
processamento
paralelo.
Das placas de vídeo
para a computação
intensiva e científica.
53. Arquitetura e Organização de Computadores -
Introdução
Computação - Tendências Futuras:
- Redes Neurais.
Paradigma baseado no
funcionamento dos
neurônios de um
organismo animal.
Possui já ampla
aplicação em
reconhecimento de
padrões e é uma
tecnologia promissora
54. Arquitetura e Organização de Computadores -
Introdução
Computação - Possibilidades:
- Computadores Quânticos
Conceito comprovado
em teoria, baseia-se na
superposição de
estados de qualquer
partícula física
elementar.
Sua construção ainda
é um desafio e uma
incógnita quanto a real
possibilidade.