Aula 01
Arquitetura de Computadores
Fundamento de Hardware e Software
Curso superior de Sistemas de Informação - IFNMG
www.evandrojunior.pro.br
evandrojunior21@gmail.com
pt.slideshare.net/EvandroJunior
www.evandrojunior.pro.br
evandrojunior21@gmail.com
pt.slideshare.net/EvandroJunior
HARDWARE
Conjunto de circuitos eletrônicos interligados, formado
por dispositivos.
Sistema Computacional
www.evandrojunior.pro.br
evandrojunior21@gmail.com
pt.slideshare.net/EvandroJunior
HARDWARE
Processador ou unidade central e processamento
Memórias
Dispositivos de I/O
Unidades funcionais
www.evandrojunior.pro.br
evandrojunior21@gmail.com
pt.slideshare.net/EvandroJunior
HARDWARE
Gerencia todo o sistema computacional controlando as
operações realizadas por cada unidade funcional.
Principal função: Controlar e executar funções presentes
na memória principal, através de operações básicas de
soma, subtração, comparação e movimento de dados.
Processador
www.evandrojunior.pro.br
evandrojunior21@gmail.com
pt.slideshare.net/EvandroJunior
HARDWARE
Unidade de controle
Unidade lógica aritmética (ULA)
Registradores
Processador
www.evandrojunior.pro.br
evandrojunior21@gmail.com
pt.slideshare.net/EvandroJunior
HARDWARE
A sincronização de todas as funções do processador é
realizada através de um sinal de clock.
SINAL DE CLOCK: Pulso gerado ciclicamente que altera
varáveis de estado do processador
Processador
SINAL DE CLOCK
www.evandrojunior.pro.br
evandrojunior21@gmail.com
pt.slideshare.net/EvandroJunior
HARDWARE
Memória Principal
www.evandrojunior.pro.br
evandrojunior21@gmail.com
pt.slideshare.net/EvandroJunior
HARDWARE
Principal, primária ou real;
Local onde são armazenados instruções e dados;
Composta de Células;
Cada célula é formada por um tamanho de bits fixo;
O acesso ao conteúdo é feito pelo endereço da célula.
Memória Principal
www.evandrojunior.pro.br
evandrojunior21@gmail.com
pt.slideshare.net/EvandroJunior
HARDWARE
Memória Principal 7 6 5 4 3 2 1 0
0 Instrução ou dados
1 1 1 0 0 0 1 0 1
2
3
4
5
... ...
Célula
Endereços
www.evandrojunior.pro.br
evandrojunior21@gmail.com
pt.slideshare.net/EvandroJunior
HARDWARE
Classifica as memórias pela sua volatilidade;
RAM – Volátil
ROM, EPROM – Não Volátil
Memória Principal
www.evandrojunior.pro.br
evandrojunior21@gmail.com
pt.slideshare.net/EvandroJunior
HARDWARE
Volátil;
Alta velocidade;
Pequena capacidade de armazenamento;
Maximiza a velocidade com que os dados são lidos;
Alto preço.
Memória Cache
www.evandrojunior.pro.br
evandrojunior21@gmail.com
pt.slideshare.net/EvandroJunior
HARDWARE
A maior parte das arquiteturas de computadores utilizam
memórias caches baseadas em níveis:
L1 Baixa capacidade de armazenamento;
Altíssima velocidade.
L2 Maior capacidade de armazenamento;
Velocidade inferior a L1;
Memória Cache
www.evandrojunior.pro.br
evandrojunior21@gmail.com
pt.slideshare.net/EvandroJunior
HARDWARE
Secundária ou permanente;
Não volátil;
Armazena programas e dados;
Acesso mais lento que as memórias primárias;
Baixo custo;
Capacidade de armazenamento superior comparado com
memórias primárias.
Memória Secundária
HARDWARE
Relação entre memórias de armazenamento
Memórias Secundárias
Memórias Primárias
Memórias Cache
Registradores
Maior
Capacidade de
armazenamento
Maior
Custo e
Velocidade
www.evandrojunior.pro.br
evandrojunior21@gmail.com
pt.slideshare.net/EvandroJunior
HARDWARE
Barramentos ou bus;
Meio de comunicação que permite a troca de dados entre
as unidades funcionais do meio computacional;
Atua através de condutores, dados, endereços e sinais de
controle.
Barramentos
www.evandrojunior.pro.br
evandrojunior21@gmail.com
pt.slideshare.net/EvandroJunior
HARDWARE
Barramento de endereços (address bus);
Local onde os dados a serem processados estão
armazenados;
Barramento de dados (data bus);
Por onde as informações transitam.
Barramento de controle (control bus).
Sincroniza tarefas, habilita ou desabilita o fluxo de dados.
Barramentos
HARDWARE
Barramentos
www.evandrojunior.pro.br
evandrojunior21@gmail.com
pt.slideshare.net/EvandroJunior
HARDWARE
Podemos considerar que a comunicação (troca de dados)
entre processador e memória é realizada pelo um
conjunto de barramentos chamado de processador-
memória.
Barramentos
www.evandrojunior.pro.br
evandrojunior21@gmail.com
pt.slideshare.net/EvandroJunior
HARDWARE
Técnica que permite que o processador realize múltiplas
instruções paralelamente em estágios diferentes.
Semelhante a uma linha de montagem, onde uma tarefa é
dividida em uma sequência de múltiplas tarefas.
Pipelining
www.evandrojunior.pro.br
evandrojunior21@gmail.com
pt.slideshare.net/EvandroJunior
HARDWARE
O Pipelining permite que, enquanto uma instrução
encontra na fase de excussão, uma outra instrução possa
estar na fase de busca, simultaneamente.
Pipelining
P1 Instr. 1 Instr. 2 Instr. 3 Instr. 4 Instr. 5 Instr. 6 Instr. 7
P2
Instr. 1 Instr. 2 Instr. 3 Instr. 4 Instr. 5 Instr. 6
P3 Instr. 1 Instr. 2 Instr. 3 Instr. 4 Instr. 5
P4 Instr. 1 Instr. 2 Instr. 3 Instr. 4
P1
Unidade de busca
da instrução
P2
Análise da
instrução
P3
Unidade de busca
de dados
P4
Unidade de
execução da
instrução
www.evandrojunior.pro.br
evandrojunior21@gmail.com
pt.slideshare.net/EvandroJunior
HARDWARE
Pode ser utilizado em sistemas com um ou mais
processadores e tem sido a técnica de paralelismo mais
utilizada para aumentar o desempenho dos sistemas
operacionais.
Pipelining
www.evandrojunior.pro.br
evandrojunior21@gmail.com
pt.slideshare.net/EvandroJunior
HARDWARE
Métricas de desempenho:
Intervalo entre os ciclos de clock (sinal de clock).
Frequência do clock: indica o número de pulsos elétricos
gerados em um segundo (Hz).
Análise de desempenho
www.evandrojunior.pro.br
evandrojunior21@gmail.com
pt.slideshare.net/EvandroJunior
HARDWARE
Métricas de desempenho:
Tempo que o processador demora para executar um
programa comparado com outros processadores (Tempo
de UCP).
Não inclui a espera em operações de E/S.
Análise de desempenho
www.evandrojunior.pro.br
evandrojunior21@gmail.com
pt.slideshare.net/EvandroJunior
HARDWARE
Métricas de desempenho:
Tempo de UCP: nº de ciclos de clock x ciclo de clock para
execução de um programa
Ou
Tempo de UCP: nº de ciclos de clock / Frequência de clock
Análise de desempenho
www.evandrojunior.pro.br
evandrojunior21@gmail.com
pt.slideshare.net/EvandroJunior
SOFTWARE
Para que o hardware funcione na prática, deve existir um
conjunto de programas utilizados como interface entre as
necessidades do usuário e as capacidades do hardware.
www.evandrojunior.pro.br
evandrojunior21@gmail.com
pt.slideshare.net/EvandroJunior
SOFTWARE
Antes a programação era feita diretamente na arquitetura
dos computadores e carregadas na memória principal.
Com o surgimento da linguagem de montagem ou
Assembly e das linguagens de alto nível a programações
ficou mais simples.
Tradutor
www.evandrojunior.pro.br
evandrojunior21@gmail.com
pt.slideshare.net/EvandroJunior
SOFTWARE
A tradução dos códigos de programação de alto nível
para código de máquina é realizado por um utilitário
denominado tradutor.
Tradutor
www.evandrojunior.pro.br
evandrojunior21@gmail.com
pt.slideshare.net/EvandroJunior
SOFTWARE
Não transforma as informações de alto nível em
linguagem máquina, executa as linhas de comando e
interpreta as instruções imediatamente.
Interpretador
www.evandrojunior.pro.br
evandrojunior21@gmail.com
pt.slideshare.net/EvandroJunior
SOFTWARE
Responsável por gerar, a partir de um módulo-objeto
(linguagem máquina), um único programa executável.
Linker
www.evandrojunior.pro.br
evandrojunior21@gmail.com
pt.slideshare.net/EvandroJunior
SOFTWARE
Linker
Módulo-objeto
Módulo-objeto
Módulo-objeto
Linker
Programa
executável
www.evandrojunior.pro.br
evandrojunior21@gmail.com
pt.slideshare.net/EvandroJunior
SOFTWARE
Loader ou carregador é responsável por carregar na
memória principal um programa para se executado.
Loader
www.evandrojunior.pro.br
evandrojunior21@gmail.com
pt.slideshare.net/EvandroJunior
SOFTWARE
Debugger – Responsável pelo teste de programas.
É necessário uma ferramenta adequada para depurar os
códigos fontes de programa.
Depurador
www.evandrojunior.pro.br
evandrojunior21@gmail.com
pt.slideshare.net/EvandroJunior
SOFTWARE
Oferece recursos como:
• Acompanhamento de execução de um programa por
instrução;
• Possibilitar a alteração e a visualização de conteúdo de
variáveis;
• Implementar pontos de paradas do programa;
• Receber mensagens a cada momento que uma variável for
alterada.
Depurador

Aula 1 - Fundamento de Hardware e Software para arquitetura de computadores.