View
216
Download
0
Category
Preview:
Citation preview
AULA1 –
Introdução a Microprocessadores
gerais
Disciplina: Aplicações Avançadas de
Microprocessadores (AAM)
Tópicos:
• Conceitos gerais
• Evolução dos Microprocessadores
• Arquiteturas
• Principais características dos Microprocessadores
• Critérios para escolha de um microprocessador
• Perguntas
CONCEITOS GERAIS:
Microprocessador ?
Microcomputador?
Microcontrolador?
DSP (Digital Signal Processor)?
DSC (Digital Signal Controller)?
CONCEITOS GERAIS: Microprocessador?
Incorpora num único CI LSI (100 a 999 portas) as funções de uma CPU. Processamento complexo, alto custo. Ex.: Microcomputadores, aparelhos eletrônicos em geral.
Microcomputador? Membro da família de computadores que consiste de um CI
de microprocessador, CIs de memória, e CIs de interfaces de I/O.
CONCEITOS GERAIS: Microcontrolador ((µC, uC or MCU) ?
=> CPU + memória + vários periféricos em um único CI,
usado para controle.
Microcontrolador dedicado ou embarcado?
=> Microcontrolador que está embutido em um produto comercial que pode ser um dispositivo ou sistema específico.
1.4. Processadores Sinais Digitais
(DSP)
Diferem dos microprocessadores na arquitetura de hardware, software e no conjunto de instruções, o qual é otimizado para o tratamento digital de sinais.
São empregados em aplicações que exigem processamento de sinais em tempo real, tais como: áudio, imagem, temperatura, intensidade luminosa, pressão, sinais biomédicos, etc.
São capazes de realizar operações MAC (Multiplica e ACumula em um único ciclo de instrução), permitindo o processamento em tempo real.
CONCEITOS GERAIS: Principais características dos DSPs:
Processadores para tratamento de dados em ponto fixo ou flutuante
Arquitetura otimizada para computação intensiva.
Modos de endereçamento especiais para suporte eficiente a operações de processamento de sinais (endereçamento circular para tratamento de filtros, endereçamento “bit-reverse” para transformada rápida de Fourier...)
Formato de dados (16 ou 32 bits típicos)
Muitos periféricos especializados “on chip” (portas seriais, memória, timers, conversores A/D e D/A, geradores de PWM, etc)
Baixo custo
Baixo consumo
CONCEITOS GERAIS: Surgimento dos DSPs:
Em 1983 surgiu o primeiro processador digital de sinais.
Lançado pela Texas Instruments, o TMS320C10 foi especificamente projetado para resolver problemas de processamento digital de sinais, até esta época, feito totalmente no domínio da eletrônica analógica.
O Processamento digital de sinais além de muito pouco utilizado, requeria máquinas muito complexas, restritivas às áreas militares, aeroespaciais e de exploração do petróleo.
Controladores de Sinais Digitais
(DSCs)
É um componente recente que integra as características de controle
em tempo real de um MCU com as características de
processamento em tempo real de um DSP.
DSC = controle MCU + processamento DSP
São designados para aplicações de áudio e controle de movimentos (motores, encoders, etc.), em particular, aquelas aplicações as quais os microcontroladores não são capazes de atender.
Possuem tamanho, custo e periféricos internos tais como os microcontroladores, aliado à capacidade de operação MAC dos DSPs.
CONCEITOS GERAIS:
Hardware e Software? "hardware" é o conjunto de dispositivos
elétricos/eletrônicos que englobam a CPU, a
memória e os dispositivos de E/S ou seja, é
composto de objetos tangíveis - circuitos
integrados, placas de circuito impresso, cabos,
fontes de alimentação, memórias, impressoras,
terminais de vídeo, teclados, etc.
O "software", ao contrário, consiste em algoritmos
e suas representações para o computador ou seja,
os programas.
Firmware?
CONCEITOS GERAIS:
Firmware?
programa ou conjunto de programas (constituintes
do "software" básico de um computador) que
orientam: a sua partida, a sua inicialização
("bootstraps programs") e a sua operação. Por
esta razão são softwares permanentemente
residentes em ROM.
CONCEITOS GERAIS: Memória principal?
bloco de memória interno do microcomputador responsável pelo armazenamento de programas e de dados que podem ser imediatamente acessados pela CPU.
Fisicamente é implementada através do uso de pastilhas semicondutoras de memória ROM ("read only memory"), não voláteis e RAM ("random access memory"), voláteis.
Memória secundária ou de massa? memória auxiliar, externa, onde possam ser armazenados
maior quantidade de dados e programas os quais, não sejam imediatamente necessários a CPU.
Embora de acesso mais lento, este tipo de memória é relativamente mais econômico para o sistema do que a memória principal. Exemplos deste tipo de memória são os discos magnéticos e os ópticos.
CONCEITOS GERAIS:
Memória CACHE?
A memória cache surgiu quando percebeu-se que as memórias não eram mais capazes de acompanhar o processador em velocidade, fazendo com que muitas vezes ele tivesse que ficar “esperando” os dados serem liberados pela memória RAM para poder concluir suas tarefas, perdendo muito em desempenho.
CONCEITOS GERAIS: Para solucionar este problema, começou a ser usada a memória cache, um tipo ultra-rápido de memória que serve para armazenar os dados mais frequentemente usados pelo processador, evitando na maioria das vezes que ele tenha que recorrer à comparativamente lenta memória RAM. Enfim, é como se fosse um memória auxiliar a RAM.
CONCEITOS GERAIS:
São usados dois tipos de cache, chamados de cache primário, ou cache L1 (level 1), e cache secundário, ou cache L2 (level 2). O cache primário é embutido no próprio processador e é rápido o bastante para acompanhá-lo em velocidade.
CONCEITOS GERAIS: Sempre que um novo processador é desenvolvido, é
preciso desenvolver também um tipo mais rápido de memória cache para acompanhá-lo. Como este tipo de memória é extremamente caro (chega a ser algumas centenas de vezes mais cara que a memória RAM convencional) usamos apenas uma pequena quantidade dela. Para complementar, usamos também um tipo um pouco mais lento de memória cache na forma do cache secundário, que por ser muito mais barato, permite que seja usada uma quantidade muito maior.
Evolução dos Microprocessadores
O primeiro microprocessador utilizado em um computador pessoal foi o Intel 8080 (8 bits ) lançado em 1974;
O primeiro microprocessador realmente popular foi o Intel 8088, lançado em 1979 e incorporado a um PC IBM - que apareceu em 1982.
O 8088 evoluiu para o 80286, depois para o 80386, 80486, Pentium, Pentium II, Pentium III e Pentium 4, Celeron, Xeon, Itanium, Core2 (Duo – 2 núcleos e Quad – 4 núcleos), i3, i5 e i7 extreme ...
Seu principal concorrente, a AMD, evoluiu paralelamente, com o 286A, o 386, 486, 586, K5, K6-3, Athlon, Duron, Sempron, Athlon MX, AMD64, Phenom e Turion.
ARQUITETURAS:
Como são definidas as arquiteturas
dos computadores?
Escolha do conjunto de instruções que lhes serão
atribuídas e;
Escolha do modelo que será usado para acesso a
dados e programas.
ARQUITETURAS: 1) Pela escolha do seu conjunto de instruções
podemos ter:
Arquiteturas CISC (Complex Instruction Set Computer)
Quando apresentam um conjunto muito grande e complexo de instruções. As máquinas CISC apresentam um conjunto muito grande de instruções (acima de 100 por exemplo) e algumas delas, dado sua complexidade, apresentam formatos diferenciados e são executadas em múltiplos ciclos de relógio.
Arquiteturas RISC(Reduced Instruction Set Computer)
Quando apresentam um conjunto específico de instruções, sendo de mesmo tamanho e são normalmente processadas em um único ciclo.
ARQUITETURAS:
Implementações CISC e RISC vem se
tornando cada vez mais similares;
• Arquiteturas RISC da atualidade possuem
um número de instruções equivalente as
arquiteturas CISC de gerações anteriores;
• Com o aumento da velocidade da tecnologia
atual, arquiteturas CISC passaram a executar
mais de uma instrução por ciclo, utilizando
pipeline.
ARQUITETURAS:
• Com esses avanços tecnológicos, CISC e
RISC passaram a possuir diversas
similaridades, e a distinção entre as mesmas
deixa de ser tão relevante;
• Porém, apesar do aumento no conjunto de
instruções, RISC continua utilizando
instruções de um ciclo, com um grande
número de registradores.
ARQUITETURAS: 2) Pela escolha do modelo que será usado
para acesso a dados e programas podemos ter:
Computadores com arquitetura segundo o modelo proposto pelo Instituto de Estudos Avançados de Princeton (atribuído a Von Neumann) – máquina de Von Neumann
Computadores com arquitetura segundo o modelo proposto pela universidade de Harvard – máquina de Harvard.
ARQUITETURAS:
Modelo von Neumann:
Os dados e instruções são
armazenados em uma única
memória de leitura e escrita,
mais simples, menos restritivo,
menos eficiente, execução
sequencial de instruções.
Modelo von Neumann:
Dados e instruções armazenados em uma
única memória de leitura e escrita.
Endereçamento da memória por posição e
não pelo tipo;
Execução seqüencial de instruções ; e
Único caminho entre memória e CPU.
Modelo von Neumann:
- Arquitetura mais simples; - Mais lento pois não permite acesso simultâneo às memórias.
ARQUITETURAS:
Modelo Harvard:
Variação da arquitura von Neumann;
Barramentos separados para
instruções e dados, portanto
trafegam em barramentos diferentes
=> paralelismo;
Memórias separadas para
instruções e dados.
ARQUITETURAS: Pipeline é uma técnica de hardware que permite
que a CPU realize a busca de uma ou mais instruções além da próxima a ser executada. Estas instruções são colocadas em uma fila de memória(dentro da CPU) onde aguardam o momento de serem executadas.
A técnica de pipeline é utilizada para acelerar a velocidade de operação da CPU, uma vez que a próxima instrução a ser executada está normalmente armazenada dentro da CPU e não precisa ser buscada da memória, normalmente muito mais lenta que a CPU.
ARQUITETURAS:
O modelo de Von Neumann é usado pela
maioria dos microprocessadores tradicionais
e o modelo de Harvard é usado pela grande
maioria dos microcontroladores e DSPs.
ARQUITETURAS:
Beneficiados pelos avanços da tecnologia
de fabricação e pelo elevado grau de
miniaturização dos chips, muitas inclusões
foram feitas aos modelos de Von Neumann
e de Harvard, no entanto, a essência de
suas proposições estão mantidas até os
dias de hoje.
Principais características dos
Microprocessadores: Largura de bus de endereços elevada (permite o
gerenciamento de grande quantidade de memória)
Unidade de gerenciamento de memória integrada
Co-processador matemático e unidade lógica e aritmética com suporte à operações numéricas complexas tais como multiplicação em ponto flutuante.
Sofisticados modos de endereçamento para eficiente suporte as funções de linguagens de alto nível.
Alto custo
Alto consumo de energia.
Critérios para escolha de um
microprocessador: Funcionalidade do conjunto de instruções
Arquitetura e modos de endereçamento
Velocidade de execução (não exatamente a
freqüência do clock)
Capacidade aritmética e lógica
Capacidade de endereçamento
Consumo de energia
Tamanho
Presença de periféricos necessários a aplicação.
Ponto Fixo: Em computação, uma representação de número
de ponto fixo é um tipo de dados real para um
número que tem um número fixo de dígitos
depois (e às vezes também antes) do ponto
decimal.
Por exemplo, uma representação de ponto fixo que
tem sete dígitos decimais com duas casas
decimais pode representar os números de
12345,67, 123,45, 1,23, etc
Ponto Flutuante:
Em computação, uma representação de
números reais em ponto flutuante, refere-se
ao fato de que o ponto decimal pode
"flutuar", isto é, ele pode ser colocado em
qualquer lugar em relação aos algarismos
significativos do número.
PERGUNTAS: 1) Qual a diferença básica entre microprocessador e microcontrolador?
2) O que é memória cache? Qual a sua finalidade?
3) Quais as diferenças entre software e firmware?
4) Como são definidas as arquiteturas dos computadores? Explique.
5) Quais as principais características dos Microprocessadores?
6) Quais as principais características dos DSPs?
7) Qual a diferença fundamental entre a arquitetura von Neumann e a
Harvard? Qual é a mais rápida? Justifique.
8) O que é pipeline? Qual a vantagem?
9) Qual a diferença entre CISC e RISC?
10) O que são em computação ponto fixo e flutuante de números reais?
Recommended