- Microcontrolador e microprocessador
- Fatores a considerar ao selecionar um MPU ou MCU
- 1. Poder de processamento
- 2. Interfaces
- 3. Memória
- 4. Poder
- Conclusão
O cérebro de um dispositivo embutido, que é a unidade de processamento, é um fator determinante do sucesso ou falha do dispositivo em realizar a (s) tarefa (s) para a qual foi projetado. A unidade de processamento é responsável por todos os processos que envolvem desde a entrada no sistema até a saída final, portanto, selecionar a plataforma certa para o cérebro torna-se muito importante durante o design do dispositivo, pois tudo o mais dependerá da precisão dessa decisão.
Microcontrolador e microprocessador
Os componentes de processamento usados para dispositivos incorporados podem ser divididos em duas grandes categorias; Microcontroladores e microprocessadores.
Microcontroladores são pequenos dispositivos de computação em um único chip que contém um ou mais núcleos de processamento, com dispositivos de memória incorporados ao lado de portas de entrada e saída (E / S) especiais e de uso geral programáveis. Eles são usados especialmente em aplicativos onde apenas tarefas repetitivas específicas precisam ser executadas. Já discutimos sobre como selecionar o microcontrolador certo para seus projetos incorporados.
Os microprocessadores, por outro lado, são dispositivos de computação de uso geral que incorporam todas as funções da unidade de processamento central em um chip, mas não incluem periféricos como memória e pinos de entrada e saída como o microcontrolador.
Embora os fabricantes agora estejam mudando muitas coisas que estão confundindo a linha entre microcontroladores e microprocessadores, como o uso de memória em chips para microprocessadores e a capacidade dos microcontroladores de se conectar a uma memória externa, ainda existem diferenças importantes entre esses componentes e o designer irá precisa escolher o melhor entre eles para um determinado projeto.
Saiba mais sobre a diferença entre microcontrolador e microprocessador.
Fatores a considerar ao selecionar um MPU ou MCU
Antes de tomar qualquer decisão sobre a direção a seguir em relação ao dispositivo de processamento a ser usado para o projeto de um produto embarcado, é importante desenvolver as especificações do projeto. O desenvolvimento das especificações do projeto fornece uma via para o pré-projeto do dispositivo que ajuda a identificar em detalhes o problema a ser resolvido, como deve ser resolvido, destaca os componentes a serem usados e muito mais. Isso ajuda o designer a tomar decisões gerais informadas sobre o projeto e ajuda a determinar em qual direção viajar para a unidade de processamento.
Alguns dos fatores na especificação do projeto que precisam ser considerados antes de escolher entre um microcontrolador e um microprocessador são descritos abaixo.
1. Poder de processamento
A capacidade de processamento é uma das principais (senão a principal) coisas a considerar ao selecionar entre um microcontrolador e um microprocessador. É um dos principais fatores que o tilt usa para microprocessadores. É medido em DMIPS (Dhrystone milhões de instruções por segundo) e representa o número de instruções que um microcontrolador ou microprocessador pode processar em um segundo. É essencialmente uma indicação de quão rápido um dispositivo pode concluir uma tarefa atribuída a ele.
Embora determinar o poder computacional exato que seu projeto requer possa ser uma tarefa muito difícil, uma suposição educada pode ser feita, examinando a (s) tarefa (s), o dispositivo está sendo criado para executar e quais podem ser os requisitos computacionais dessas tarefas. Por exemplo, o desenvolvimento de um dispositivo que requer o uso de um sistema operacional completo, seja Linux embarcado, Windows CE ou qualquer outro sistema operacional, exigiria um poder de processamento de até 500 DMIPS, soando como um processador? Sim. Para adicionar a isso, a execução de um sistema operacional em um dispositivo exigirá uma unidade de gerenciamento de memória (MMU) que aumentará o poder de processamento necessário. Os aplicativos de dispositivos que envolvem muita aritmética também requerem DMIPS muito altose quanto mais cálculos matemáticos / numéricos o dispositivo deve realizar, mais os requisitos de design tendem ao uso de um microprocessador devido ao poder de processamento necessário.
Outra implicação principal do poder de processamento que afeta a escolha entre microprocessadores e microcontroladores é a complexidade ou simplicidade de coisas como interfaces de usuário. Hoje em dia, é desejável ter GUIs coloridas e interativas, mesmo para os aplicativos mais básicos. A maioria das bibliotecas usadas na criação de interfaces de usuário como QT requerem poder de processamento de 80 a 100 DMIPS e quanto mais animações, imagens e outros conteúdos multimídia forem exibidos, maior será o poder de processamento necessário. No entanto, interfaces de usuário mais simples em telas de baixa resolução requerem pouco poder de processamento e podem ser alimentadas por microcontroladores, pois muitos deles hoje em dia vêm com interfaces incorporadas para interagir com diferentes monitores
Além de algumas das funções básicas mencionadas acima, é importante reservar um pouco da capacidade de processamento para comunicações e outros periféricos. Embora a maioria dos exemplos dados acima tendam a apoiar o uso de microprocessadores, eles são geralmente mais caros em comparação com microcontroladores e serão um exagero quando usados em certas soluções, por exemplo, usar um microprocessador 500 DMIPS para automatizar uma lâmpada fará o custo geral do produto acima do normal e pode levar ao seu fracasso no mercado.
2. Interfaces
A interface a ser utilizada para conectar diferentes elementos do produto é um dos fatores a serem considerados antes de escolher entre um microcontrolador e um microprocessador. É importante garantir que a unidade de processamento a ser usada tenha as interfaces exigidas pelos outros componentes.
Do ponto de vista da conectividade e comunicação, por exemplo, a maioria dos microcontroladores e microprocessadores possuem as interfaces necessárias para se conectar aos dispositivos de comunicação, mas quando periféricos de comunicação de alta velocidade como a interface USB 3.0 de supervelocidade, várias portas 10/100 Ethernet ou portas Gigabit Ethernet são necessárias, coisas incline na direção do microprocessador como a interface necessária para suportá-los, geralmente só são encontrados neles porque são mais capazes de manipular e processar as grandes quantidades de dados e a velocidade com que esses dados são transferidos.
O impacto dos protocolos usados para essas interfaces na quantidade de memória necessária para o firmware deve ser confirmado, pois eles tendem a aumentar os requisitos de memória. É uma regra geral que um design baseado em microprocessador seja adotado para aplicativos que requerem conectividade de alta velocidade com grande quantidade de dados sendo trocados, especialmente quando o sistema envolve o uso de um sistema operacional.
3. Memória
Esses dois dispositivos de processamento de dados lidam com memória e armazenamento de dados de maneira diferente. Microcontroladores, por exemplo, vêm com dispositivos de memória fixa incorporados, enquanto os microprocessadores vêm com interfaces às quais os dispositivos de memória podem ser conectados. Duas implicações principais disso são;
Custo
O microcontrolador passa a ser uma solução mais barata, pois não requer o uso de um dispositivo de memória adicional, enquanto o microprocessador passa a ser uma solução cara a ser adotada devido a esses requisitos adicionais.
Memória Limitada
A memória fixa no microcontrolador limita a quantidade de dados que podem ser armazenados nele. Esta é uma situação não aplicável a processadores, pois eles geralmente estão conectados a dispositivos de memória externos. Um bom exemplo de quando essa limitação pode ser um problema é durante o desenvolvimento de firmware para o dispositivo. Adicionar kilobytes adicionais ao tamanho do código pode exigir uma alteração no microcontrolador a ser usado, mas se o design for baseado em um processador, precisaremos apenas alterar o dispositivo de memória. Assim, os microprocessadores oferecem mais flexibilidade com memória.
Existem vários outros fatores com base na memória a ser considerada, um deles é o tempo de inicialização (boot). Os microprocessadores, por exemplo, armazenam o firmware em uma memória externa (geralmente um NAND externo ou memória Flash serial) e, na inicialização, o firmware é carregado na DRAM do processador. Embora isso ocorra em alguns segundos, pode não ser ideal para determinados aplicativos. O microcontrolador do outro leva menos tempo.
Para considerações gerais de velocidade, o MCU geralmente vence devido à sua capacidade de endereçar os aplicativos mais críticos de tempo por causa do núcleo do processador usado neles, o fato de que a memória é incorporada e o firmware usado com eles é sempre um RTOS ou bare metal C.
4. Poder
Um último ponto a considerar é o consumo de energia. Embora os microprocessadores tenham modos de baixo consumo de energia, esses modos não são tantos quanto os disponíveis em um MCU típico e com os componentes externos exigidos por um design baseado em microprocessador, é um pouco mais complexo alcançar os modos de baixo consumo. Além dos modos de baixo consumo de energia, a quantidade real de energia consumida por um MCU é muito menor do que o que um microprocessador consome, porque quanto maior a capacidade de processamento, maior a quantidade de energia necessária para manter o processador em funcionamento.
Microcontroladores, portanto, tendem a encontrar aplicações onde unidades de processamento de ultra-baixa energia são necessárias, como controles remotos, eletrônicos de consumo e vários dispositivos inteligentes onde a ênfase do projeto está na longevidade da bateria. Eles também são usados onde um comportamento altamente determinístico é necessário.
Os microprocessadores, por outro lado, são ideais para aplicações industriais e de consumo que requerem um sistema operacional, são de computação intensiva e requerem conectividade de alta velocidade ou uma interface de usuário com muitas informações de mídia.
Conclusão
Vários outros fatores existem e servem como determinantes para escolher entre essas duas plataformas e todos se enquadram em desempenho, capacidade e orçamento, mas a seleção geral torna-se mais fácil quando um pré-projeto de sistema adequado está em vigor e os requisitos claramente declarados. Os microcontroladores são usados principalmente em soluções com um orçamento de BOM muito restrito e requisitos de energia rigorosos, enquanto os microprocessadores são usados em aplicativos com grandes requisitos de computação e desempenho.