Curs 1 - Introducere în Embedded Systems: Arhitectura Microprocesorului și Microcontrolerelor

Acest curs introduce conceptele fundamentale ale sistemelor embedded, incluzând arhitectura microprocesorului, microcontrolere, CPU, memorie și interfețe I/O.

1. Arhitectura Microprocesorului

Microprocesorul este unitatea centrală de procesare (CPU) care execută instrucțiuni pentru a controla dispozitivele embedded.

Source: https://ms.codes/blogs/computer-hardware/what-is-a-cpu-architecture

Unități principale:

- ALU (Unitatea Aritmetică și Logică): Efectuează operații matematice și logice.

- Registre: Stochează date temporare în timpul execuției instrucțiunilor.

- Unitatea de Control (CU): Coordonează fluxul de date între componente.

2. Microcontrolere

Microcontrolerul este un circuit integrat care conține un microprocesor, memorie și periferice I/O pe același cip.

Exemple de Microcontrolere

- ARM Cortex-M: Utilizat în sisteme embedded cu consum redus de energie.

- AVR (Atmel): Utilizat în Arduino.

- ESP32: Microcontroler Wi-Fi/Bluetooth pentru IoT.

3. CPU, Memorie și Interfețe I/O

Componentele principale ale unui sistem embedded includ CPU, memorie și interfețe de comunicație.

a) CPU în Embedded Systems

- Microprocesoarele utilizate sunt optimizate pentru consum redus și performanță deterministă.

- Exemple: ARM Cortex-M, RISC-V, MIPS, PowerPC.

b) Memoria în Embedded Systems

- ROM (Read-Only Memory): Conține firmware-ul.

- RAM (Random Access Memory): Memorie temporară pentru execuție.

- Flash Memory: Permite actualizarea firmware-ului.

c) Interfețe I/O

Sistemele embedded comunică cu lumea externă prin interfețe diverse:

- GPIO (General-Purpose Input/Output): Pini pentru conectare senzori și dispozitive.

- I2C (Inter-Integrated Circuit): Protocol pentru senzori și EEPROM.

- SPI (Serial Peripheral Interface): Comunicare de mare viteză cu periferice.

- UART (Universal Asynchronous Receiver-Transmitter): Comunicare serială.

- Ethernet și Wi-Fi: Conectivitate de rețea.

4. Arhitectura Generală a unui Sistem Embedded

Un sistem embedded tipic include următoarele componente:

- Microprocesor/Microcontroler: Execută instrucțiuni și controlează sistemul.

- Memorie (ROM, RAM, Flash): Stocare de date și firmware.

- Module de alimentare: Surse de curent pentru dispozitive.

- Interfețe de comunicație (I2C, SPI, UART, CAN, Ethernet, Wi-Fi): Conectează dispozitivul la alte componente.

- Senzori și actuatoare: Captură și interacțiune cu mediul extern.

- Software Embedded: Firmware optimizat pentru resurse limitate.

5. Exemple de Sisteme Embedded

- Arduino UNO: Platformă open-source bazată pe ATmega328P.

- Raspberry Pi: SBC (Single Board Computer) pentru aplicații embedded.

- ESP8266/ESP32: Microcontrolere Wi-Fi pentru IoT.

- BeagleBone Black: SBC puternic utilizat în industrie.

- Sisteme Automotive: ECU-uri pentru controlul motorului și siguranță.

Resurse suplimentare: