Bosh sahifa Wiki Embedded

Embedded

Embedded — ma’lum qurilma yoki tizim ichiga joylashtirilgan, odatda aniq vazifani bajarishga mo‘ljallangan hisoblash tizimini ifodalovchi tushuncha. Embedded system avtomobil controlleri, router, printer, kamera, tibbiy uskuna, smart meter, maishiy texnika va sanoat qurilmalarida uchraydi.

U umumiy maqsadli kompyuterdan farqli ravishda ma’lum hardware, energiya, memory, timing va xavfsizlik cheklovlari bilan ishlaydi.

Asosiy qismlar

Embedded tizim odatda:

dan tashkil topadi.

Qurilma vazifasiga qarab ayrim qismlar bo‘lmasligi mumkin.

Microcontroller

Microcontroller CPU, RAM, flash va peripherallarni bitta chipda birlashtiradi.

Kichik, arzon va energiya tejamkor tizimlarda qo‘llanadi.

Firmware ko‘pincha bare-metal yoki RTOS ustida ishlaydi.

Microprocessor

Microprocessor tashqi RAM, storage va chipset bilan murakkab system yaratadi.

Linux, Android yoki boshqa katta OS ishlatishi mumkin.

Yuqori performance, UI va network stack uchun mos.

Microcontroller va microprocessor chegarasi zamonaviy SoClarda yaqinlashishi mumkin.

Firmware

Hardware’ni boshqaradigan software firmware deb ataladi.

U:

bajaradi.

Firmware flash memory’da saqlanadi va power berilganda ishlaydi.

Bare-metal

Operatsion tizimsiz to‘g‘ridan-to‘g‘ri hardware ustida ishlash.

Main loop va interruptlardan foydalaniladi:

init
→ while(true)
→ eventlarni qayta ishlash

Kichik tizim uchun sodda.

Tasklar ko‘payganda scheduling murakkablashadi.

RTOS

Bir nechta vaqtga sezgir task, queue va synchronization kerak bo‘lsa RTOS ishlatiladi.

U deterministic scheduler va kernel primitive’larini beradi.

RTOS barcha application logikasini avtomatik real-time qilmaydi.

Priority va timing to‘g‘ri loyihalanadi.

Sensor

Fizik muhitni elektr yoki raqamli signalga aylantiradi.

Misollar:

  • harorat;
  • bosim;
  • tezlanish;
  • yorug‘lik;
  • oqim;
  • namlik.

Sensor calibration, noise va sampling rate natijaga ta’sir qiladi.

Actuator

Elektr signalni fizik actionga aylantiradi:

  • motor;
  • relay;
  • valve;
  • heater;
  • speaker;
  • LED.

Actuator noto‘g‘ri boshqarilsa hardware yoki inson uchun xavf yaratishi mumkin.

Safety interlock faqat softwarega tayanmasligi mumkin.

Peripheral

Microcontroller ichidagi yoki tashqi component:

  • GPIO;
  • timer;
  • ADC;
  • DAC;
  • PWM;
  • UART;
  • SPI;
  • I2C;
  • CAN;
  • USB.

Driver registerlarni boshqarib, applicationga yuqori darajadagi API beradi.

Interrupt

Hardware event CPU’ni joriy koddan interrupt handlerga o‘tkazadi.

Button, timer, serial data va fault interrupt yaratishi mumkin.

Handler qisqa bo‘ladi.

Uzun processing main loop yoki RTOS taskga beriladi.

Real-time talab

Embedded tizimda response deadline muhim bo‘lishi mumkin.

Masalan, motor current oshganda himoya millisekund ichida ishlashi kerak.

Average tezlik yetarli emas.

Worst-case latency o‘lchanadi.

Memory cheklovi

Kichik qurilmada RAM kilobyte yoki megabyte darajasida bo‘lishi mumkin.

Dynamic allocation, katta buffer va recursive call ehtiyotkor ishlatiladi.

Stack va heap usage map file hamda runtime instrumentation bilan tekshiriladi.

Power

Battery qurilmada energiya asosiy cheklov.

Usullar:

  • sleep mode;
  • peripheralni o‘chirish;
  • past clock;
  • duty cycle;
  • event-driven wake;
  • radio batching.

Faqat CPU emas, sensor va radio ham katta energiya sarflashi mumkin.

Communication

Embedded qurilma:

orqali aloqa qiladi.

Protocol timeout, framing, retry va offline holatni boshqaradi.

Bootloader

Bootloader hardware’ni minimal ishga tayyorlab, firmware’ni tekshiradi va ishga tushiradi.

U OTA yoki kabel orqali update qabul qilishi mumkin.

Bootloader buzilsa qurilmani qayta tiklash qiyin.

Write protection va secure boot ishlatiladi.

Watchdog

Firmware deadlock yoki hang bo‘lsa watchdog reset qiladi.

Reset sababini loglash diagnostika uchun muhim.

Watchdogni barcha tasklar healthini tekshirmasdan feed qilish failure’ni yashiradi.

Debugging

Embedded debug vositalari:

  • serial log;
  • JTAG;
  • SWD;
  • hardware breakpoint;
  • logic analyzer;
  • oscilloscope;
  • trace;
  • core dump.

Timing bug log qo‘shilganda yo‘qolishi mumkin.

Hardware signal va software state birga tekshiriladi.

Testing

Test darajalari:

  • unit;
  • hardware-in-the-loop;
  • integration;
  • fault injection;
  • thermal;
  • vibration;
  • EMC;
  • long-duration;
  • field test.

Faqat simulator real sensor va electrical noise’ni takrorlamaydi.

Reliability

Qurilma yillar davomida operator aralashuvisiz ishlashi mumkin.

Muhim jihatlar:

Recovery va safe state loyihaning bir qismi.

Security

Embedded xavflar:

  • default password;
  • unsigned firmware;
  • exposed debug port;
  • hardcoded key;
  • insecure protocol;
  • physical access;
  • eski dependency.

Device identity, secure boot, encrypted communication va OTA update ishlatiladi.

Hardware-software co-design

Vazifa software, FPGA, analog circuit yoki maxsus chip orasida taqsimlanadi. Tezlik, energiya, narx va yangilanish imkoniyati birga baholanadi. Software bilan hal qilinadigan muammoni ortiqcha hardwarega ko‘chirish costni oshirishi mumkin.

State machine

Embedded control logikasi ko‘pincha aniq state machine bilan ifodalanadi:

  • idle;
  • starting;
  • running;
  • fault;
  • safe shutdown.

Har event va transition hujjatlashtiriladi. Noaniq flaglar kombinatsiyasi unreachable yoki xavfli holat yaratishi mumkin.

Fault handling

Sensor uzilishi, voltage pasayishi, communication timeout va storage xatosi normal design holatlari sifatida ko‘riladi. Tizim safe state’ga o‘tadi va sababni diagnostika uchun saqlaydi.

Manufacturing

Firmware programming, calibration, serial number va key provisioning ishlab chiqarish liniyasida bajariladi. Secretlar umumiy default qiymat bilan yozilmaydi.

Bog‘liq tushunchalar

Embedded system, Firmware, Microcontroller, Microprocessor, Bare-metal, RTOS, Sensor, Actuator, Peripheral, Bootloader, Watchdog