Microprocessadores
• São máquinas elétricas onde podemos armazenar instruções lógicas, aritméticas e de tomada de decisão;
• CPU (Central Processing Unit – Unidade Central de Processamento)
CPU (Central Processing Unit)
• Processsa as instruções contidas no programa e é dividida em: – Unidade de Controle (UC);– Unidades Lógicas e Aritméticas (ULA);– Decodificador de Instrução;– Registradores;
Evolução para Microcontroladores
• Barateamento dos CI's e o surgimento de microprocessadores (CPUs) mais poderosos, começou-se a usar as CPUs mais simples para implementar tarefas dedicadas: controle de impressora, reguladores de velocidade, acionadores de motores de passos, etc
Basicamente
CPU Controle
RAM pilha e dados
Porta Serial comunicação
Timers temporização
ROM programa controle
Portas Paralela
I/O
AD / DA sinais analógicos
Por quê Microcontroladores?
• Estas aplicações tinham o custo dependente do preço da CPU e dos periféricos;
• A idéia foi colocar todos os periféricos dentro do chip da CPU.
Por quê Microcontroladores?
• Por outro lado, uma CPU dedicada a um determinado controle não precisa ser muito rápida nem tampouco ter um conjunto de instruções extenso e poderosos;
• Não são necessárias instruções para trabalhar com ponto flutuante, com strings ou vetores e mecanismos de endereçamento;
Por quê Microcontroladores?
• Os microcontroladores são específicos para controle, não tem grande capacidade de processamento e por isso nunca haverá computador pessoal cuja CPU seja um microcontrolador;
• Eles podem estar presentes nos PCs, apenas para controlar periféricos;
Microprocessador x Microcontrolador
Microprocessor• CPU, RAM, ROM,
Timers ficam separados;
• Expansivos;
• Versatilidade;
• Proposta Geral;
Microcontroladores• CPU, RAM, ROM,
Timres ficam em um mesmo chip;
• Para aplicações em que o custo, energia e espaço são críticos;
Critérios para a escolha de um Microcontrolador
Satisfazer as necessidades de computação da tarefa de forma eficiente e custo efetivo
Velocidade, a quantidade de ROM e RAM, o número de portas I/O e timers, energia
Facilidade de upgrade Custo por unidade
Critérios para a escolha de um Microcontrolador
Avaliar as ferramentas de desenvolvimento de software;
Debugadores, Compiladores, Simuladores, Suporte técnico, etc;
Sistemas Processados Programa (Software): conjunto de instruções
arranjadas de forma organizada que apresenta uma função específica;
Firmaware: programa que está armazenado em memória não volátil (ROM);
Hardware: partes eletrônicas de um microcomputador
Microcontrolador: microcomputador integrado num único chip (microprocessador + periféricos)
Sistemas Processados Periféricos: – Circuitos acessórios ao computador que realizam
tarefas específicas;
– Exemplos:
• Timers
• CCP (Comparação, Captura e PWM);
• Conversores AD/DA
• Portas de Comunicação (USART, I2C, SPI, USB, CAN...)
Arquitetura Von-Neuman
Von Neumann:
“Instruções e dados compartilham a mesma unidade física de memória”
Arquitetura Harvard
Harvard:
“Instruções e dados são armazenados em memórias diferentes”
– Vantagem: Instruções e dados podem ser acessados simultaneamente, aumentando o desempenho.
– O PIC segue esta arquitetura! Um barramento de dados de 8 bits e outro para instrucões (12, 14 ou 16 bits)
Instruction Set
Conjunto de instruções que um processador compreende;
Cada processador possui seu próprio conjunto de instruções, inviabilizando, na maioria dos casos, a portabilidade;
Instruction Set
CISC – Complex Instruction Set Computing
- Computação onde o número de instruções é muito grande;
RISC – (Reduced Instruction Set Computing)
- Computação onde um número reduzido de instruções estão disponíveis.
O PIC possui um número reduzido de Instruction Set (RISC)
Instruction Set
Considerações sobre o RISC e CISC:
– Uma única instrução CISC pode equivaler a várias instruções RISC;
– Uma instrução CISC precisa realizar passos semelhantes aos realizados pelas RISC;
– CISC minimiza o número de acessos a memória de programa;
– RISC simplifica a decodificação de instruções, deixando esta etapa mais rápida;
Instruction Set
Vantagens CISC:
Apesar do conjunto de instruções ser muito grande, oferece um número maior de instruções (“ferramentas”) ao programador Assembly;
Menor quantidade de instruções são necessárias para desenvolver um programa (programas ocupam menos memória).
Instruction Set Vantagens RISC:
Etapa de decodificação tão simples que pode, em alguns casos, ser eliminada;
Com um número menor de instruções, os parâmetros destas podem ser agregados no opcode (código de máquina de uma instrução), simplificando inclusive o FETCH.
Simplificação dos circuitos eletrônicos.
Top Related