میکروکنترلر ARM به میکروکنترلرهایی گفته میشود که از پردازندههای ARM در ساخت آن استفاده شده باشد، از این میکروکنترلرها در ساخت تجهیزات الکترونیکی و لوازم برقی مثل لپ تاپ، گوشیهای تلفن همراه و لوازم الکترونیک خانگی و همچنین در پروژه های صنعتی استفاده میشود. این میکروکنترلرها توسط شرکت ARM(Advanced RISC Machine) توسعه داده شدهاند.
نسل اول پردازندههای ARM در سال 1985 ساخته شد و پس از آن انواع دیگر این پردازندهها توسط این شرکت توسعه پیدا کرد. میکروکنترلر ARM یک خانواده از میکروکنترلرهاست که بر پایه معماری RICS توسعه پیدا کرده است، در این طراحی اساس کار بر ساده سازی و بهینه کردن مجموعه دستورات پردازشی استوار است که سبب افزایش کارایی و بهینگی عملکرد پردازنده میشود.
در این مطلب قصد داریم شما را با میکروکنترلر ARM یا همان ماشین های پیشرفته RISC آشنا کنیم که شکل بسیار بهینه و حداقلی از مجموعه دستورالعمل ها را در خود دارند. با ما همراه باشید.
خرید میکروکنترلر ARM از فروشگاه قطعات الکترونیک لیون الکترونیک
میکروکنترلر ARM چیست؟
ARM مخفف Advanced RISC Machines است. پردازنده ARM متعلق به خانوادهای از CPUهاست که اساساً مبتنی بر طراحی RISC هستند. این پردازنده ها میتوانند 32 بیتی یا 64 بیتی باشند. پردازنده های RISC سرعت بالایی دارند، زیرا تعداد کمی دستورالعمل اجرایی بهینه دارند. همچنین این پردازندهها تعداد ترانزیستور کمتری نسبت به پردازندههای با توان پردازشی مشابه دارند زیرا از معماری RISC بهره میبرند و به همین دلیل دارای مصرف توان کمتر و اندازه کوچکتر هستند، به همین دلیل به صورت گسترده و روز افزون در اکثر دستگاه های الکترونیکی مانند تبلت، موبایل، تلفن های هوشمند و سایر لوازم الکترونیکی استفاده میشوند ترکیب یک ریزپردازنده ARM با RAM، ROM و سایر لوازم جانبی در یک تراشه، یک میکروکنترلر ARM را بوجود میآورد.
شرکتهای مختلف تولید کننده تراشه با خرید لایسنس حق تولید از شرکت ARM اقدام به تولید انواع میکروکنترلر ARM میکنند.
ویژگی های میکروکنترلر ARM
سیستم های چند پردازشی (Multiprocessing Systems)
پردازندههای ARM به گونه ای طراحی شده اند که می توان از آنها در مواردی از سیستم های چند پردازشی که به بیش از یک پردازنده برای پردازش اطلاعات نیاز است، استفاده کرد.
Tightly Coupled Memory (TCM)
حافظه کَش در پردازندههای ARM به طور محکم و سریعی به پردازنده متصل شده و این باعث پدید آمدن زمان پاسخگویی بسیار سریعی شده است.
بیشتر بخوانید : انواع میکروکنترلر
مدیریت حافظه (Memory Management)
پردازنده ARM دارای بخش مدیریت سیستم است. این قسمت شامل واحد مدیریت حافظه و واحد حفاظت حافظه است. این سیستم های مدیریتی در مدیریت کارآمد حافظه بسیار مهم هستند.
فناوری Thumb-2
فناوری Thumb-2 در سال 2003 معرفی شد و از آن برای ایجاد مجموعه دستورالعمل با طول متغیر استفاده شد. این فناوری، دستورالعمل های 16 بیتی فناوری اولیه Thumb را به دستورالعمل های 32 بیتی گسترش میدهد و عملکرد بهتری نسبت به فناوری قبل از خود دارد.
زمان اجرای یک چرخهای (One cycle execution time)
دستورالعملهای پردازنده ARM برای اجرا بر روی این CPU بهینه شده است. همه دستورالعمل دارای طول ثابتی هستند و این امر باعث میشود که زمان واکشی دستور بعدی، قبل از اجرای دستور فعلی مهیا گردد. پردازندههای ARM دارای CPI یک چرخهای هستند.
خط لوله (Pipelining)
پردازش دستورالعمل ها به صورت موازی با استفاده از روش خطوط لوله انجام می شود. دستورالعمل ها در مرحله اول خط لوله شکسته و رمزگشایی می شوند تا بتوانند در یک سیکل پردازش شوند.
دارا بودن رجیسترهای زیاد (Large number of registers)
به منظور کمتر کردن تعامل با حافظه در میکرو کنترلرهای ARM از تعداد زیادی رجیستر استفاده می شود. هر رجیستر حاوی داده و آدرس هست. رجیسترها به عنوان حافظه محلی برای همه عملیاتها استفاده میشوند.
انواع خانواده های میکروکنترلر ARM
میکروکنترلرهای ARM براساس نوع هسته پردازشی به چندین نوع تقسیم می شوند. برخی از معروف ترین انواع میکروکنترلرهای ARM عبارتند از ARM7، ARM9، ARM10 و ARM11 که بر اساس نوع هسته استفاده شده در آن نام گذاری شدهاند.
برای نامگذاری پردازندههای ARM از یک شیوه نامگذاری استفاده میکنند که به شرح زیر است:
ARMxyzTDMIEJF-S
اما این شیوه نامگذاری به چه معناست و براساس آن انواع میکروکنترلر ARM را چگونه می توان توضیح داد. بعد از ARM یکسری حروف و کلمات آمده اند که هر یک معنای خاصی دارند به عنوان مثال:
- حرف X نشان دهنده خانواده یا سری است؛
- حرف Y به معنای واحد مدیریت یا نگهداری از حافظه است.
- حرف Z به معنای حافظه مخفی یا پنهان است.
- حرف T به معنای دیکدر Thumb 16 بیتی است.
- حرف D به معنای اشکال زدایی یا دی باگینگ JTAG است: JTAG پروتکل سریالی است که شرکت ARM برای مواقعی که لازم است اطلاعات اشکال زدایی یا دیباگ از سمت پردازنده به سمت تجهیزات تست برود مورد استفاده قرار می دهد.
- حرف M به معنای ضرب کننده سریع است که نسبت به واحدهای ضرب کنندگی قبلی که کوچک و ساده بودند و برای تکمیل ضرب کنندگی به سیکل ساعت زیادی نیاز داشتند، این قطعات به زمان بسیار کمتری نیاز دارند. میکروکنترلر ARM می تواند ضرب 32 بیتی در یک سیکل واحد را به خوبی انجام دهد.
- حرف I به معنی شبیه ساز درون مدار یا ICE تعبیه شده ماکروسل (Macrocell) است. پردازنده های ARM با سیستم سخت افزار اشکال زدایی خود که بر روی تراشه ها قرار گرفته می توانند Breakpoint و Watchpoint ها را تنظیم کنند.
- حرف E مربوط به دستورالعمل های پیشرفته برای DSP (فرض TDMI) است. با کمک این دستورالعمل می توان عملکرد DSP پردازنده های ARM را تا حد زیادی افزایش داد که اینکار بدون فرکانس های سرعت بالاست.
- حرف J مربوط به Jazzelle است که به معنای اجرای سریع کدهای جاوا در میکروکنترلرهای ARM است که به کمک فناوری Jazzelle صورت می گیرد. به عنوان مثال در گوشی های همراه و لوازم برقی، بدون اینکه حافظه یا باتری دچار اشکال شوند، کدهای جاوا با سرعت و کارایی بالا اجرا می گردند.
- حرف F اشاره به واحد ممیز شناور یا FPU دارد که در میکروکنترلرهای ARM به برای اجرای عملیات حسابی شناور مورد استفاده قرار می گیرد. با توجه به محدوده دینامیکی و دقتی که FPU ها در پردازنده های ARM درون برنامه های Real Time دارند از آنها در حوزه های خودروسازی و صنعتی استفاده زیادی می کنند.
- حرف S هم اشاره به Synthesizable دارد. با توجه به اینکه هسته پردازنده میکروکنترلرهای ARM از نوع اپن سورس است و کد منبع در دسترس قرار گرفته، امکان کامپایل کردن هسته مرکزی وجود دارد تا EDA Tools ها بتوانند آن را به خوبی درک کنند. بر همین اساس معماری کلی پردازنده های ARM نیز قابل تغییر است.
انواع میکروکنترلر ARM
میکروکنترلرهای ARM براساس نوع پردازنده تقسیم بندی می شوند. پردازنده های ARM به طور کلی در سه دسته کلاسیک (ARM Classic Processor)، امبدد (ARM Embedded Processor) و کاربردی یا اپلیکیشن (ARM Application Processor) قرار می گیرند.
در دسته بندی دیگر، میکروکنترلر ARM را براساس انواع پردازنده به 5 دسته تقسیم می کنند و در نتیجه خرید میکروکنترلر ARM با در نظر گرفتن نوع پردازنده انجام می پذیرد:
- Cortex-A: میکروکنترلرهای ARM که با این پردازنده ها ساخته می شوند برای سیستم عامل های پیشرفته و دریافت راندمان عملکردی بالا کاربرد دارند.
- Cortex-R: میکروکنترلرهایی که چنین پردازنده هایی دارند برای کاربردهای Real-Time هستند تا کاربران در سریعترین حالت ممکن پاسخ دریافت کنند.
- Cortex-M: این پردازنده ها به طور کلی برای میکروکنترلرها استفاده می شوند مخصوصا میکروکنترلر ARM که این پردازنده ها را در ساخت آنها استفاده می کنند.
- SecurCore: میکروکنترلرهای ARM که با این پردازنده ها ساخته می شوند تنها برای مصارف امنیتی به کار می روند
- Machine Learning: پردازنده های ML که در میکروکنترلرهای ARM به کار می روند برای یادگیری ماشینی استفاده می شوند.
بیشتر بخوانید: ساختار میکروکنترلر و اجزای آن چگونه است
انواع میکروکنترلر ARM با پردازنده Cortex-A:
این نوع میکروکنترلرها در دستگاه هایی با سیستم لینوکس و اندروید استفاده می شوند که از جمله آنها می توان به ساعت های هوشمند، تبلت و تجهیزات شبکه اشاره کرد. پردازنده های Cortex-A که در ساخت میکروکنترلر ARM به کار می روند شامل انواع A5، A7، A15، A17 و A50 هستند که به نوبه خود انواع میکروکنترلرها را می سازند.
انواع میکروکنترلر ARM با پردازنده Cortex-R:
این نوع میکروکنترلرها برای پروژه های Real Time کاربرد دارند که از جمله آنها می توان به کنترلرها، تجهیزات شبکه، مدیا پلیرها، هدست های موبایل، تجهیزات ذخیره سازی داده، دوربین ها و سایر دستگاه های مشابه و همچنین صنایع خودروسازی اشاره کرد. میکروکنترلرهایی که بسیار پیشرفته هستند و باید تسک های بسیار وسیعی انجام دهند با این نوع پردازنده ها ساخته می شوند. پردازنده های Cortex-R که در ساخت میکروکنترلر ARM به کار می روند در سه دسته R4، R5 و R7 قرار می گیرند و بر همین اساس میکروکنترلرها سه نوع می شوند.
انواع میکروکنترلر ARM با پردازنده Cortex-M:
از این نوع میکروکنترلرها در بازار MCU استفاده می شود که اولین مدل از این میکروکنترلرهای ARM حدود 13 سال پیش تولید شدند. امروزه در بخش های مختلفی از صنایع از این نوع میکروکنترلرها استفاده می کنند. از جمله کاربردهای آن میتوان به حافظههای داخلی، دستگاههای موشن سنسور، سیستمهای نورپردازی هوشمند، صنایع خودروسازی، صنایع مراقبت بهداشتی، شبکه های ذخیره کننده انرژی، ساعت ها و غیره اشاره کرد. هر کدام از میکروکنترلرهای ARM این دسته ویژگی های خاص خود را دارند که بخاطر نوع پردازنده Cortex-M به کار رفته در آنهاست. به عنون مثال برخی از آنها راندمان عملکردی بالایی دارند و برخی نیز از لحاظ مصرف انرژی مقرون به صرفه هستند.
از انواع پردازنده های سری Cortex-M که در ساخت میکروکنترلرهای ARM استفاده می شوند عبارتند از پردازنده های M0+، M3 و M4 هستند. بر همین اساس هر یک از میکروکنترلرهای ARM با سری پردازنده Cortex-M به سه دسته تقسیم می شوند.
جمع بندی مطالب
امروزه دستگاه های هوشمند و سیستم های اسمارت به همراه اینترنت اشیاء تمامی جنبه های زندگی ما را گرفته اند و زندگی بدون آنها امکان پذیر نیست. خرید میکروکنترلر ARM بسته به نیاز صنایع و کاربرد آنها انجام می گیرد. صنایع مختلف بسته به نیازی که از میکروکنترلرهای ARM دارند، نمونه هایی را انتخاب می کنند که با پردازنده و مدل مناسب ساخته شده باشد که انواع آنها را همراه با ذکر کاربرد مثال زدیم.
منابع:
https://sirinsoftware.com/blog/the-arm-processor-a-r-and-m-categories-and-their-specifics/
https://www.watelectronics.com/arm-processor-architecture-working/
https://hardwarebee.com/arm-microcontroller-overview/
https://www.theengineeringknowledge.com/introduction-to-arm-microcontroller/
نظرات کاربران