سیستم های جاسازی شده قدرت جهان مدرن، که به آرامی در داخل میلیاردها دستگاه عمل می کنند - از ترموستات های هوشمند خانه و ردیاب های تناسب اندام پوشیدنی گرفته تا واحدهای کنترل موتور خودرو پیچیده و سلاح های رباتیک صنعتی، در قلب بسیاری از این سیستم ها یک میکروکنترلر (MCU) است و در میان خانواده های به طور گسترده ای پذیرفته شده، سری ARM Cortex-M طراحی شده از زمینه برای تعیین، برنامه های واقعی تعبیه شده، برای کنترل دقیق ترین سیستم های انرژی، و کم، استفاده از آن ها، استفاده می کند که باعث می شود.

آشنایی با ARM Cortex-M Architecture

خانواده ARM Cortex-M بر روی یک معماری 32 بیتی RISC (Reduced Education Set Computing) بر خلاف پردازنده های کاربردی (مجموعه Cortex-A)، دستگاه های Cortex-M برای عملیات مبتنی بر فلز و RTOS با استفاده از تعادل تعیین کننده بهینه سازی شده اند. هسته از یک (FLT:0Thu-2) استفاده می کند. [F1 دستورالعمل هایی که پردازش کد های حافظه محدود است و چگالی محدود با استفاده از تعادل.

یکی دیگر از عناصر معماری تعریف شده (FLT:0) کنترل کننده Interrupt Vectored Interrupt (NVIC) است که کمترین تناسب را فراهم می کند، اولویت بندی قطع وقفه را در اولویت قرار می دهد. NVIC اجازه می دهد تا 240 منبع قطع شده با سطوح اولویت قابل تنظیم، امکان پاسخگویی زمان واقعی، علاوه بر این، معماری شامل یک سخت افزار تک تک تک نفره (U) و اختیاری بسیاری از واحدهای MMP4.

ویژگی های کلیدی و مزایای

  • ] مصرف برق فوق العاده پایین دستگاه های Cortex-M چندین حالت خواب را پیاده سازی می کنند ( Sleep, Deep Sleep, Wake, Emergency که اجازه می دهد مصرف برق به سطح میکرو وات کاهش یابد و آنها را برای برنامه های باتری و انرژی مناسب می کند.
  • عملکرد کوتاه مدت: ترکیب مراحل خط لوله کوتاه، گمانه زنی شاخه (در هسته های بالاتر) و سریع ورود / خروج از آن تضمین اجرای قابل پیش بینی - ضروری برای کنترل حلقه ها و پشته های ارتباطات.
  • ] خانواده پر کالری: با هسته های متشکل از ساده Cortex-M0 + به Ultra-high-val Cortex-M7 و Cortex-M55 غنی از ویژگی، توسعه دهندگان می توانند تعادل دقیق عملکرد، قدرت و ویژگی های مورد نیاز را انتخاب کنند.
  • سیستم اکویچ: یک انتخاب گسترده از تخته های توسعه (به عنوان مثال، STM32 Nucleo، NXP LPCXpresso، Microchip)، IDE (Keil MDK، IAR EWARM، PlatformIO)، واسطه (lwIP، FreeRT)، و توسعه گسترده سیستم عامل سرعت می دهد.
  • Cores مانند Cortex-M23 و M33 شامل تکنولوژی TrustZone برای جداسازی کد امن و غیر امن است، در حالی که M55 اضافه می کند Helium پسوندهای بردار برای لبه AI کار.
  • ] پیشرفته Debugging: (FLT 1: یکپارچه Serial Debug (SWD) و اختیاری ETM ردیابی دید عمیق در اجرای - بحرانی برای اشکال زدایی در زمان واقعی.

تنوعات Cortex-M و موارد استفاده آنها

Cortex-M0+

این هسته های سطح ورودی دارای حداقل رد پای هستند - M0+ انرژی کارآمد 32 بیتی در دسترس است، که نیاز به کمتر از 12,000 دروازه دارند، آنها ایده آل برای وظایف کنترل ساده، رابط سنسور و کالاهای مصرفی حساس به هزینه هستند.برنامه های معمولی شامل لامپ های هوشمند، کنترل های از راه دور و سنسورهای ساده IoT.

Cortex-M3

M3 یک خط لوله سه مرحله ای را با گمانه زنی شاخه و یک کنترل کننده حالت خواب یکپارچه معرفی کرد، به طور گسترده ای در کنترل صنعتی، الکترونیک بدن خودرو و دستگاه های پزشکی که عملکرد متوسط و قدرت پایین مورد نیاز است، استفاده می شود.این کار تعیین کننده منابع چندگانه قطع کننده آن را برای سیستم های مبتنی بر RTOS مورد علاقه قرار می دهد.

Cortex-M4

M4 یک واحد تک نقطه شناور (FPU) و افزونه های DSP را با دستورالعمل های تک چرخه سیمد اضافه می کند، این باعث می شود آن را به خوبی برای پردازش صوتی، الگوریتم های کنترل موتور و تبدیل قدرت دیجیتال استفاده کنید. بسیاری از میکروکنترلرهای در STM32F4 و Kinetis K6x خانواده های M4 هسته ای برای برنامه های کاربردی مانند کنترل هواپیماهای بدون سرنشین، بلندگوهای متغیر و درایوهای هوشمند استفاده می کنند.

Cortex-M7

M7 یک هسته با عملکرد بالا با یک خط لوله فوق العاده شش مرحله ای، پیش بینی شاخه و حافظه جداگانه / داده است، همچنین شامل حافظه محکم همراه (TCM) برای دسترسی به وضوح مشخص کننده پایین است.

Cortex-M23 / M33 / M55

هسته های جدید تر شامل معماری ARMv8-M با افزونه های امنیتی TrustZone (FLT:0M23 است که دارای قدرت پایین، خواهر و برادر امن به M0+ است، در حالی که سنسور تجزیه و تحلیل (FLT:2M33[FLT3] امنیت را با قابلیت های صنعتی DSP /FP ترکیب می کند.

برنامه های کاربردی real-World Application

میکروکنترلرهای Cortex-M یک طیف فوق العاده از دستگاه ها را به خود اختصاص می دهند:

  • Consumer Electronics ، مرکز خانه هوشمند، خلاء ربات و دستیار صوتی از هسته های M4 و M7 برای پردازش داده های سنسور، اجرای تشخیص صدا و کنترل محرک ها استفاده می کنند.
  • Automotive: از دوربین های جانبی ADAS (M4/M7) تا ماژول های کنترل بدن و موتورهای پنجره الکتریکی (M0+ / M3)، این MCU ها استانداردهای اطمینان سنجی AEC-Q100 را برآورده می کنند.
  • اتوماسیون صنعتی: کنترل کننده های منطقی قابل برنامه ریزی (PLC)، درایوهای حرکتی و سنسورهای نظارت بر وضعیت متکی بر M4 و M7 هسته برای کنترل زمان واقعی و پردازش سیگنال پیشرفته است.
  • تجهیزات پزشکی: مانیتور بیمار قابل حمل، پمپ های تزریق، و قلم انسولین از M0 + و M3 هسته برای عملیات قابل اعتماد و کم قدرت استفاده می شود.
  • مازرها وamp؛ IoT: ساعتهای هوشمند، گروه های تناسب اندام و سنسورهای زیست محیطی از حالت های فوق العاده کم قدرت M0 + / M4 و ادغام اتصال بی سیم (Bluetooth، LoRa) ارائه شده توسط بسیاری از پیاده سازی های SoC بهره مند شوند.

توسعه ابزار و اکوسیستم

اکوسیستم Cortex-M یکی از غنی ترین فروشندگان جهان جاسازی شده است. فروشندگان بزرگ مانند STMicroالکترونیک، NXP، Microchip، Renesas و آزمایشگاه های سیلیکون خانواده های سازگار با پین را ارائه می دهند که به اشتراک می گذارند محیط های توسعه مشترک شامل:

  • Keil MDK - صنعت استاندارد IDE با کامپایلر ARM C / C ++، کنفدراسیون، کنفدراسیون و نرم افزار میانی گسترده (RTX5 RTOS، سیستم های فایل، پشته USB).
  • [[۱] [۱۰] [۱] [۱۰] [۱]] [۱]] [۱۰]] [۱]] [۱] [۱]] [۱]] [۱]] [۱] [۱]] [۱]] [۱] [۱]] [۱] [۱] [۱] [۱]] [۱] [۱] [۱] [۱] [۱] [۱] [۱] [۱] [۱] [۱] [۱] [۱] [۱] [۱] [۱] [۱] [۱]]] [۱] [۱]] [۱] [۱] [۱]]]]] [۱]]]] [۱] [۱] [۱] [۱] [۱] [۱] [۱] [۱] [۱] [۱] [۱] [۱] [۱] [۱] [۱] [۱] [۱] [۱] [۱] [۱] [۱] [۱] [۱] [۱] [۱] [۱] [۱] [۱] [۱]] [۱] [۱] [۱] [۱] [۱
  • MCUXpresso [NXP] و [FLT3] [ST] - Free، Eclipse-based IDEs با تولید کد، ابزار پیکربندی و واسطه.
  • - اکوسیستم منبع باز پشتیبانی از بسیاری از خانواده ها و چارچوب های MCU (Arduino،bed و غیره).
  • Zephyr، FreeRTOS و ThreadX - گزینه های RTOS با پورت های اختصاصی برای Cortex-M، ارائه برنامه ریزی کار، هماهنگ سازی و مدیریت کم قدرت.

برای راهنمایی در انتخاب MCU مناسب، ARM اسناد گسترده ای را در توسعه دهنده.arm.com ارائه می دهد، در حالی که ویکی پدیا ARM Cortex-M [ صفحه ارائه می دهد یک نمای جامع از ویژگی های مختلف هسته و پیاده سازی.

انتخاب مناسب Cortex-M برای پروژه شما

انتخاب یک نوع MCU شامل متعادل سازی عملکرد، قدرت، هزینه و الزامات محیطی است.برای گره های بی سیم ساده IoT، هسته M0 + با فرآیند کم سرعت و رادیو یکپارچه ممکن است ایده آل باشد برای یک برنامه کنترل موتور که نیاز به زمان واقعی (کنترل میدان گرا)، M4 با FPU و سرعت بالا زمان PWM است یک سیستم یادگیری بلند مدت یا ذخیره سازی سیستم عامل نهایی، همیشه با M7 (کنترل) و یا M7 (کنترل) باشد.

نتیجه گیری

سری ARM Cortex-M میکروکنترلر به یک سنگ بنای طراحی مدرن تبدیل شده است؛ ارائه یک ترکیب قانع کننده از عملکرد، کارایی قدرت و مقیاس پذیری، چه شما در حال ساخت یک سنسور پزشکی قابل مصرف یا یک کنترل کننده روباتیک چند محور هستید، یک هسته Cortex-LT وجود دارد که نیازهای شما را برآورده می کند.با نوآوری مداوم در امنیت، پردازش و تکنیک های کم قدرت، اطمینان خانواده (F) برای بررسی محصول شما در سراسر جهان باقی می ماند.