Você está na página 1de 18

Sistemas

Embarcados
Arquitetura de Microcontroladores
Arquitetura de microcontroladores

Arquitetura de Processadores
– Harvard
– Von Neumann
– Harvard Modificada

Arquitetura de Microcontroladores
– Entrada e saída
– Armazenamento
– Memória

Arquitetura de Microcontroladores 2
Arquitetura de Processadores - Harvard

Denominado assim devido à arquitetura haver sido projetada na
universidade de Harvard

Esta arquitetura foi utilizada pela primeira vez no Harvard Mark1

Duas memórias separadas
– Uma para dados
– Uma para programa

Cada memória está conectada em um barramento adequado a
cada memória

Arquitetura de Microcontroladores 3
Arquitetura de Processadores - Harvard

Um barramento está otimizado para a largura de bits da
memória de dados

Um barramento está otimizado para a largura de bits da
memória de programa

Muito utilizada em Microcontroladores

Pouco utilizada em Computadores Pessoais

A CPU pode acessar dados e instruções simultaneamente

Arquitetura de Microcontroladores 4
Arquitetura de Processadores - Harvard

Memoria de programa Memoria de dados

Unidade de controle ALU

Entrada/Saída

Arquitetura de Microcontroladores 5
Arquitetura de Processadores - Harvard

Arquitetura de Microcontroladores 6
Arquitetura de Processadores – von Neumann


Apresentada pelo matemático John von Neumann

Possui apenas um barramento de memória compartilhado pela
memória de dados e de programa

Nesta arquitetura, o programa pode ser armazenado em
memória RAM, podendo ser modificado pelo programa em
execução

Introduzido no IAS (1952)

Arquitetura de Microcontroladores 7
Arquitetura de Processadores – von Neumann


Se a memória de programa é lenta, se pode acelerar a
execução do programa carregando o programa em RAM, que é
mais rápida

Também se pode inserir memória não volátil no mesmo
barramento

Dados e Instruções devem ser acessados de maneira alternada

Dependendo da velocidade das memórias de programa e de
dados, podem gerar-se atrasos na leitura das instruções que
não existem nas leituras de dados

Arquitetura de Microcontroladores 8
Arquitetura de Processadores – von Neumann

Arquitetura de Microcontroladores 9
Arquitetura de Processadores – Harvard modificada


A maioria dos processadores atuais utilizam uma arquitetura
Harvard modificada

Internamente possuem uma arquitetura Harvard
– O cache dos processadores é dividido em cache de dados e
de programa
– As instruções executadas vem do cache de programa
– Os dados utilizados vem do cache de dados
– Se a instrução ou o dado não está presente na cache, se
gera um erro e se carregam mais dados no cache

Arquitetura de Microcontroladores 10
Arquitetura de Processadores – Harvard modificada


Externamente possuem uma arquitetura von Neumann
– Possuem um espaço único de memória compartilhado por
memórias RAM e ROM/Flash
– Os programas são carregados em RAM para execução mais
rápida

Arquitetura de Microcontroladores 11
Arquitetura de Microcontroladores


A existência de periféricos caracteriza um microcontrolador e
diferencia os mesmos dos microprocessadores

Um microcontrolador possui todos os componentes de um
computador em escala menor e adequada a sistemas
embarcados
– CPU
– Memória (Dados e Programa)
– Dispositivos de Entrada e Saída
– Dispositivos de armazenamento
– Outros periféricos

Arquitetura de Microcontroladores 12
Arquitetura de Microcontroladores - CPU


A CPU de um microcontrolador possui uma estrutura básica
similar à CPU de um computador maior

As diferenças aparecem na capacidade de processamento e
em diferentes arquiteturas de hardware

Normalmente está formada por:
– ALU
– Unidade de controle/Decodificador de instruções
– Registradores
– Barramento de dados

Arquitetura de Microcontroladores 13
Arquitetura de Microcontroladores - Memória


Quase todos os microcontroladores possuem memória RAM
(Random Access Memory) e algum tipo de memória não volátil
(ROM/Flash)

Alguns apresentam RAM e uma pequena ROM para a
execução de um bootloader

As quantidades de memória e sua organização (byte, word ou
double word) dependem dos modelos específicos

A(s) memória(s) se conecta(m) a CPU através do(s)
barramento(s) de memória

Arquitetura de Microcontroladores 14
Arquitetura de Microcontroladores – Dispositivos de Entrada e
Saída


Todo microcontrolador deve apresentar algum dispositivo de
entrada e saída

A maioria permite a configuração individual dos pinos como
entrada ou saída

Alguns apresentam barramentos para a conexão de dispositivos
escravos no barramento

Alguns apresentam dispositivos de transferência de dados
como dispositivos CAN, SPI, I²C, UART, USB, etc.

Arquitetura de Microcontroladores 15
Arquitetura de Microcontroladores – Dispositivos de
Armazenamento

Alguns microcontroladores possuem dispositivos de
armazenamento como periféricos

Podem ser blocos de memória EEPROM/Flash embarcados

Alguns possuem a possibilidade de modificar a memória de
programa, o que pode ser usado para o armazenamento de
dados na memória não volátil de programa ou atualização de
firmware em tempo de execução

Arquitetura de Microcontroladores 16
Arquitetura de Microcontroladores – Dispositivos de
Armazenamento


Alguns possuem interface para cartões de memória SD/MMC
embarcada

Outros possuem características que permitem a implementação
da interface SD/MMC utilizando programação

Dependendo da configuração do microcontrolador se pode
utilizar o mesmo para implementar interfaces com cartões
CompactFlash ou mesmo discos rígidos (HDs)

Arquitetura de Microcontroladores 17
Arquitetura de Microcontroladores – Outros Periféricos


Outros periféricos que podem ser encontrados em
microcontroladores:
– Conversor Analógico/Digital
– Conversor Digital/Analógico
– Interface USB
– Interface de rede Ethernet/WiFi
– Coprocessadores
– Modulação por largura de pulso (PWM)
– etc.

Arquitetura de Microcontroladores 18

Você também pode gostar