میکروکنترلر arm
ARM یا میکروکنترلر چیست؟
ARM به میکروکنترلرهایی گفته میشود که از پردازندههای ARM در ساخت آن استفاده شده باشد، از این میکروکنترلرها در ساخت تجهیزات الکترونیکی و لوازم برقی مثل لپ تاپ، گوشیهای تلفن همراه و لوازم الکترونیک خانگی و همچنین در پروژه های صنعتی استفاده میشود.
ARM مخفف Machines Advanced RISC است.
پردازنده ARM متعلق به خانوادهای از CPUهاست که اساساً مبتنی بر طراحی RISC هستند. این پردازنده ها میتوانند 32 بیتی یا 64 بیتی باشند . پردازنده های RISC سرعت بالایی دارند، زیرا تعداد کمی دستورالعمل اجرایی بهینه دارند. همچنین این پردازندهها تعداد ترانزیستور کمتری نسبت به پردازندههای با توان پردازشی مشابه دارند زیرا از معماری RISC بهره میبرند و به همین دلیل دارای مصرف توان کمتر و اندازه کوچکتر هستند، به همین دلیل به صورت گسترده و روز افزون در اکثر دستگاه های الکترونیکی مانند تبلت، موبایل، تلفن های هوشمند و سایر لوازم الکترونیکی استفاده میشوند ترکیب یک ریزپردازنده ARM با RAM، ROM و سایر لوازم جانبی در یک تراشه، یک میکروکنترلر ARM را بوجود میآورد.
ویژگی های پردازنده ARM
پردازندههای ARM مبتنی بر معماری رایانه کمدستور یا ریسک (RISC) هستند، اما بر اساس الزامات سیستمهای تعبیه شده، برخی از اصلاحات نیز در معماری RISC انجام میشود. پردازندههای ARM معماری نوع انتقال داده (Load-Store) را دنبال میکنند که پردازش دادهها فقط بر روی محتویات ثباتها یا رجیسترها انجام میشود و نه مستقیماً روی حافظه. دستورالعمل پردازش دادهها در رجیسترها با دسترسی به حافظه متفاوت است.
مجموعه دستورالعمل ARM یکنواخت و طول آن ثابت است. پردازندههای آرم ۳۲ بیتی دو مجموعه دستورالعمل دارند: به طور کلی، مجموعه دستورالعمل آرم ۳۲ بیتی و مجموعه دستورالعمل Thumb با ۱۶ بیت است (Thumb شیوهای برای فشردهسازی دستورات پرکاربرد 32 بیتی به صورت 16 بیتی جهت کاهش حجم برنامه، در ازای کاهش سرعت اجرای آن است).
پردازنده ARM از چندین مرحله خط لوله (Pipeline) برای سرعت بخشیدن به جریان دستورالعملها پشتیبانی میکند. در خط لوله سهمرحلهای ساده، دستورالعملها از سه مرحله پیروی میکنند: واکشی (fetch)، رمزگشایی (decode) و اجرا (execute).
سیستم های چند پردازشی (Multiprocessing Systems)
پردازندههای ARM به گونه ای طراحی شده اند که می توان از آنها در مواردی از سیستم های چند پردازشی که به بیش از یک پردازنده برای پردازش اطلاعات نیاز است، استفاده کرد.
Tightly Coupled Memory (TCM)
حافظه کَش در پردازندههای ARM بهطور محکم و سریعی به پردازنده متصل شده و این باعث پدید آمدن زمان پاسخگویی بسیار سریعی شده است.
مدیریت حافظه (Memory Management)
پردازنده ARM دارای بخش مدیریت سیستم است. این قسمت شامل واحد مدیریت حافظه و واحد حفاظت حافظه است. این سیستم های مدیریتی در مدیریت کارآمد حافظه بسیار مهم هستند.
فناوری Thumb-2
در سال 2003 معرفی شد و از آن برای ایجاد مجموعه دستورالعمل با طول متغیر استفاده شد. این فناوری، دستورالعمل های 16 بیتی فناوری اولیه Thumb را به دستورالعمل های 32 بیتی گسترش میدهد و عملکرد بهتری نسبت به فناوری قبل از خود دارد.
زمان اجرای یک چرخهای (One cycle execution time)
دستورالعملهای پردازنده ARM برای اجرا بر روی این CPU بهینه شده است. همه دستورالعمل دارای طول ثابتی هستند و این امر باعث میشود که زمان واکشی دستور بعدی، قبل از اجرای دستور فعلی مهیا گردد. پردازندههای ARM دارای CPI یک چرخهای هستند.
خط لوله (Pipelining)
پردازش دستورالعمل ها به صورت موازی با استفاده از روش خطوط لوله انجام می شود. دستورالعمل ها در مرحله اول خط لوله شکسته و رمزگشایی می شوند تا بتوانند در یک سیکل پردازش شوند.
دارا بودن رجیسترهای زیاد (Large number of registers)
به منظور کمتر کردن تعامل با حافظه در میکرو کنترلرهای ARM از تعداد زیادی رجیستر استفاده می شود. هر رجیستر حاوی داده و آدرس هست. رجیسترها به عنوان حافظه محلی برای همه عملیاتها استفاده میشوند.
انواع میکروکنترلر 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 با تکامل در هر خانواده ادامه دارد. برخی از خانوادههای معروف پردازنده آرم، عبارتند از: ARM10 ،ARM9 ،ARM7 و ARM11.
میکروکنترلر ARM
میکروکنترلر ARM خانواده STM32 مبتنی بر Cortex-M است. خانواده STM32 به طور کلی به چهار دسته کلی طبقهبندی میشوند که هر یک بازار خاص خودش را دارد. این چهار دسته عبارتند از: کارایی بالا، اصلی، توان بسیار کم و بیسیم. خانواده STM32 از میکروکنترلر ARM ساخت استیمایکروالکترونیکس (STMicroelectronics) است.
میکروکنترلرهای STM32 امکانات جانبی ارتباطی سریال و موازی را ارائه میدهند که میتوانند با انواع قطعات الکترونیکی از جمله سنسورها، نمایشگرها، دوربینها، موتورها و سایر تجهیزات ارتباط برقرار کنند. هر نوع میکروکنترلر ARM از خانواده STM32 دارای حافظه داخلی فلش و رم هستند.
دامنه عملکرد میکروکنترلر ARM خانواده STM32 بسیار گسترده است. برخی از ابتداییترین انواع این خانواده، سری STM32F0 و STM32F1 است که از فرکانس ساعت تنها 24 مگاهرتز شروع میشوند و در بستههایی با حداقل 16 پین در دسترس هستند.
از طرف دیگر، میکروکنترلر ARM سری STM32H7 با کارایی بسیار عالی، در بستههایی با حداکثر 240 پین موجود است. این میکروکنترلر، یک میکروکنترلر ARM تک یا دو هستهای است که از یک هسته Cortex-M7 با فرکانس 480 مگاهرتز و یک هسته Cortex-M7 با فرکانس ۲۴0 مگاهرتز اضافه برای نسخههای دو هستهای تشکیل شده است. دسته عملکرد بالا، بهترین عملکرد را در اجرای کد و انتقال دادهها ارائه میدهد. مدلهای پیشرفتهتر با واحدهای ممیز شناور (FPU) برای کاربردهای نیازمند پردازش عددی در دسترس هستند. این مدلهای پیشرفته خط بین میکروکنترلر و یک میکروپروسسور را حذف میکنند.
سرانجام، سری STM32L به طور خاص برای کاربردهای قابل حمل با توان کم (از یک باتری کوچک) طراحی شده است.
جمع بندی مطالب
امروزه دستگاه های هوشمند و سیستم های اسمارت به همراه اینترنت اشیاء تمامی جنبه های زندگی ما را گرفته اند و زندگی بدون آنها امکان پذیر نیست. خرید میکروکنترلر ARM بسته به نیاز صنایع و کاربرد آنها انجام می گیرد. صنایع مختلف بسته به نیازی که از میکروکنترلرهای ARM دارند، در صورت نیاز به سفارش قطعات الکترونیک و خرید میکروکنترلر ARMمیتوانید با همکاران با دقت تسلا مدار تماس حاصل فرمایید .