Exercícios - Tema 1: Introdução à Arquitetura de Computadores 🧩

Exercícios para Consolidação do Aprendizado 📝

Os exercícios a seguir foram desenvolvidos para aprofundar sua compreensão dos conceitos fundamentais de arquitetura de computadores estudados no Tema 1. Cada exercício progressivamente desafia diferentes aspectos do conhecimento adquirido, desde conceitos básicos até aplicações mais complexas em sistemas IoT modernos.

Exercício 1: Análise Comparativa de Elementos Arquiteturais (Nível Básico) 🔍

Você foi contratado como consultor técnico para uma startup que desenvolve dispositivos IoT para agricultura inteligente. A empresa precisa escolher entre três microcontroladores diferentes para seu novo sensor de solo que monitora umidade, pH e nutrientes. Sua tarefa é analisar as especificações técnicas fornecidas e recomendar qual dispositivo melhor atende aos requisitos do projeto.

Especificações dos Microcontroladores:

Microcontrolador A:

  • Arquitetura: ARM Cortex-M4 single-core, 168 MHz
  • Memória RAM: 192 KB
  • Memória Flash: 1 MB
  • Interfaces: 3x UART, 3x SPI, 3x I2C, 16x ADC 12-bit
  • Consumo: 100 mA ativo, 2 µA em sleep mode
  • Conectividade: Nenhuma integrada
  • Custo: $8.50 por unidade

Microcontrolador B:

  • Arquitetura: Xtensa LX6 dual-core, 240 MHz
  • Memória RAM: 520 KB
  • Memória Flash: 4 MB
  • Interfaces: 3x UART, 4x SPI, 2x I2C, 18x ADC 12-bit
  • Consumo: 160 mA ativo, 10 µA em sleep mode
  • Conectividade: WiFi 802.11 b/g/n, Bluetooth Classic/LE
  • Custo: $4.20 por unidade

Microcontrolador C:

  • Arquitetura: RISC-V single-core, 320 MHz
  • Memória RAM: 64 KB
  • Memória Flash: 512 KB
  • Interfaces: 2x UART, 2x SPI, 1x I2C, 8x ADC 10-bit
  • Consumo: 45 mA ativo, 0.5 µA em sleep mode
  • Conectividade: LoRaWAN integrado
  • Custo: $12.00 por unidade

Requisitos do Projeto: O sensor deve operar por pelo menos dois anos com uma bateria de 3000 mAh, coletando dados a cada 30 minutos e transmitindo informações uma vez por dia para uma central de monitoramento localizada até 10 km de distância. O dispositivo deve processar os dados localmente para detectar condições críticas do solo e enviar alertas imediatos quando necessário. O orçamento permite até $15.00 por unidade para o microcontrolador.

Utilize os quatro elementos fundamentais da arquitetura de computadores que você estudou (unidade de processamento, sistema de memória, sistema de E/S, sistema de interconexão) para estruturar sua análise. Considere como cada característica arquitetural impacta os requisitos específicos da aplicação. Explique qual microcontrolador você recomendaria e justifique sua escolha baseando-se nos princípios arquiteturais fundamentais, demonstrando compreensão de como decisões de hardware afetam performance e funcionalidade do sistema.


Exercício 2: Evolução Arquitetural e Trade-offs Tecnológicos (Nível Intermediário) ⚖️

Uma empresa de tecnologia médica está desenvolvendo um dispositivo vestível (wearable) para monitoramento contínuo de sinais vitais que deve operar por uma semana sem recarga. O dispositivo precisa processar sinais de ECG, monitorar temperatura corporal, detectar quedas através de acelerômetro, e manter conectividade Bluetooth com um smartphone. A equipe de engenharia está debatendo entre usar uma abordagem arquitetural moderna multi-core versus uma solução single-core otimizada.

Cenário da Arquitetura Multi-core Proposta: O sistema utilizaria um processador principal ARM Cortex-A7 rodando a 500 MHz para processamento geral e interface de usuário, um co-processador DSP dedicado para processamento de sinais biomédicos, e um microcontrolador de ultra-baixo consumo ARM Cortex-M0+ para gerenciamento de energia e sensores quando o sistema principal está em sleep mode. Esta abordagem distribuiria as tarefas especializadas entre processadores otimizados para cada função.

Cenário da Arquitetura Single-core Proposta: O sistema utilizaria um único processador ARM Cortex-M4F otimizado rodando a 80 MHz com unidade de ponto flutuante integrada, utilizando técnicas avançadas de power management como clock gating, voltage scaling dinâmico, e scheduling inteligente de tarefas para alternar entre diferentes modos de operação conforme necessário.

Sua tarefa é analisar os trade-offs fundamentais entre essas duas abordagens arquiteturais considerando os aspectos estudados sobre evolução da arquitetura de computadores e as tendências modernas discutidas no material. Examine como cada abordagem lida com os desafios específicos de sistemas embarcados como consumo de energia, determinismo de tempo real, complexidade de desenvolvimento, custo de fabricação, e escalabilidade futura.

Desenvolva uma análise detalhada que demonstre compreensão profunda de como decisões arquiteturais históricas (como a transição de single-core para multi-core em sistemas desktop) se aplicam ou diferem em contextos de sistemas embarcados. Considere aspectos como overhead de comunicação entre processadores, eficiência energética de cada abordagem, complexidade de sincronização, e impacto na confiabilidade do sistema. Explique qual abordagem você recomendaria e articule claramente os princípios arquiteturais que fundamentam sua decisão, demonstrando compreensão de como trade-offs arquiteturais afetam características sistêmicas em aplicações críticas de saúde.


Exercício 3: Projeto Arquitetural Integrado para Sistema IoT Crítico (Nível Desafiador) 🚀

Você foi designado como arquiteto líder para o desenvolvimento de um sistema IoT revolucionário para monitoramento e controle automatizado de estufas hidropônicas comerciais. O sistema deve integrar múltiplas tecnologias emergentes discutidas no material, incluindo edge computing, inteligência artificial embarcada, e comunicação 5G, enquanto mantém operação determinística para controle de sistemas críticos como irrigação, iluminação e ventilação.

Especificações do Sistema Complexo:

O sistema deve controlar simultaneamente 500 pontos de sensoriamento (temperatura, umidade, pH, nutrientes, luminosidade, CO2) distribuídos em uma estufa de 10.000 m², processando dados em tempo real para otimizar condições de crescimento usando algoritmos de machine learning embarcados. O sistema deve garantir tempos de resposta menores que 100ms para ajustes críticos de irrigação e ventilação, while simultaneously learning and adapting plant growth patterns over seasonal cycles.

A arquitetura deve suportar três níveis hierárquicos de processamento: sensores inteligentes locais com capacidade de pré-processamento e detecção de anomalias, gateways regionais que agregam dados de múltiplos sensores e executam controle coordenado de actuadores, e uma unidade central que realiza otimização global do ambiente usando neural networks e se comunica com sistemas externos de gestão agrícola via 5G.

O sistema deve implementar redundância para componentes críticos, capacidade de operação offline por até 72 horas durante falhas de conectividade, auto-diagnóstico e recuperação automática de falhas, e atualizações over-the-air sem interromper operações críticas. Adicionalmente, deve atender regulamentações de segurança alimentar que requerem rastreabilidade completa de todas as decisões de controle ambiental.

Desafio Arquitetural Integrado:

Desenvolva uma proposta arquitetural completa que demonstre aplicação sofisticada de todos os conceitos estudados no Tema 1. Sua solução deve endereçar explicitamente como as tendências modernas em arquitetura de computadores (arquiteturas heterogêneas, edge computing, processadores especializados para AI) se integram com requisitos fundamentais de sistemas embarcados (determinismo, confiabilidade, eficiência energética).

Explique como sua arquitetura resolve os conflitos inerentes entre requisitos de tempo real determinístico e processamento adaptativo de machine learning. Detalhe como você implementaria a hierarquia de processamento distribuído mantendo coerência de dados e sincronização temporal entre os diferentes níveis. Demonstre compreensão profunda de como características arquiteturais específicas (como cache, predição de branch, pipelines) podem ser adaptadas ou desabilitadas para garantir comportamento determinístico em seções críticas do sistema.

Articule claramente como os quatro elementos fundamentais da arquitetura (processamento, memória, E/S, interconexão) são organizados em cada nível hierárquico e como eles colaboram para emergir comportamento sistêmico inteligente. Justifique suas escolhas de hardware baseando-se em princípios arquiteturais fundamentais, demonstrando como decisões de low-level se propagam para afetar características de sistema de alto nível como adaptabilidade, robustez, e eficiência operacional.

Finalmente, projete estratégias de validação e verificação que demonstrem que sua arquitetura atende simultaneamente requisitos conflitantes de determinismo e adaptabilidade, explicando como princípios de co-design hardware-software podem ser aplicados para otimizar performance geral do sistema enquanto mantém garantias de segurança e confiabilidade necessárias para aplicações agrícolas críticas.