آموزش الکترونیکالکترونیکتکنولوژی

بررسی تفاوت میکروکنترلر و میکروپروسسور

برای اینکه تفاوت میکروپروسسور و میکروکنترلر را بفهمیم، لازم است بدانیم که میکروپروسسور و میکروکنترلر چه هستند. برای مبتدیانی که تازه کار الکترونیک را شروع می کنند، اغلب ممکن است مقایسه ریزپردازنده و میکروکنترلر گیج کننده باشد. اما هر دو ریز پردازنده و میکروکنترلرها از نظر معماری سخت افزاری و عملکرد کاملاً متفاوت از یکدیگر هستند. تفاوت اصلی بین ریزپردازنده و میکروکنترلر این است که یک زیرپردازنده آی سی فقط یک CPU درون خود دارد در حالی که یک آی سی میکروکنترلر همچنین دارای RAM، ROM و سایر تجهیزات جانبی مرتبط با آن است. برخی از نمونه های معروف ریزپردازنده هسته اینتل Intel i7، AMD Athlon، Broadcom BCM2711 (رزبری پای) و غیره است، و برخی از نمونه های میکروکنترلرها ATmega328 (آردینو UNO)، STM32، PIC16F877A و غیره است. برای فهمیدن جزئیات باید نگاهی به  معماری کلی ریزپردازنده و میکروکنترلربیندازیم، که دقیقاً همان کاری است که ما در این مقاله انجام می دهیم.

میکروپروسسور چیست ؟

میکروپروسسور (ریز پردازنده) وظیفه ی محاسبه منطقی و پردازش داده را بر عهده دارد. هر میکرو پروسسور نیازمند تعدادی قطعات و آی سی های جانبی از جمله حافظه دائمی (مثل EPROM، EEPROM و …)، حافظه غیر دائمی (مثل RAM ها)، تایمر و کانتر (مثل IC 82C54) و … می باشد. مبحث میکروپروسسور ها بسیار طولانی است و بحث اصلی ما در مورد تفاوت میکرو پروسسور و میکرو کنترلر است.

ریزپردازنده فقط یک CPU درون آن ها در یک یا چند مدار مجتمع دارد. مانند میکروکنترلرها RAM، ROM و سایر وسایل جانبی ندارد. آن ها برای کار به مدارهای خارجی جانبی وابسته هستند. اما ریزپردازنده ها برای کار خاصی ساخته نشده اند، اما در مواردی که کار ها پیچیده و مشکل هستند مانند توسعه نرم افزار ها، بازی ها و سایر برنامه هایی که به حافظه بالایی احتیاج دارند و ورودی و خروجی تعریف نشده اند، به آن ها نیاز دارند. ممکن است قلب سیستم رایانه ای نامیده شود. برخی از نمونه های ریزپردازنده Pentium، I3 و I5 و غیره است.

تفاوت میکروپروسسور و میکروکنترلر

از این تصویر معماری ریزپردازنده به راحتی می توان دریافت که در آن رجیستر ها و ALU به عنوان واحد پردازش وجود دارد و RAM، ROM در آن وجود ندارد.

برای یادگیری کامل آردوینو (برنامه نویسی حرفه ای، ارتباط با اندروید، ساخت ربات) ، روی دوره آموزش آردوینو کلیک کنید.

همچنین اگر میخواهید الکترونیک را با فیلم های آموزشی یاد بگیرید، روی دوره آموزش الکترونیک کلیک کنید.

میکروکنترلر چیست ؟

میکروکنترلر یک قطعه از نوع IC است. IC نیز به معنای مدار مجتمع است. میکروکنترلر ها قابل برنامه ریزی هستند. یعنی هرچیزی را که شما با استفاده از کامپایلر به میکروکنترلر بدهید، میکروکنترلر آن را انجام میدهد. اگر میخواهید به طور کامل با میکروکنترلر آشنا شوید، مقاله میکروکنترلر چیست را بخوانید. میکروکنترلر ها انواع مختلفی دارند مثل میکروکنترلر های AVR و ARM.

این مانند یک کامپیوتر کوچک در یک IC است. شامل یک هسته پردازنده، ROM، RAM و پین های ورودی و خروجی است که برای انجام کارهای مختلف اختصاص داده شده است. میکروکنترلرها به طور کلی در پروژه ها و برنامه هایی مورد استفاده قرار می گیرند که نیاز به کنترل مستقیم توسط کاربران دارند. از آنجا که تمام اجزای مورد نیاز در تراشه واحد خود را دارد، برای عملکرد خود به مدارهای خارجی احتیاج ندارد، بنابراین میکروکنترلرها به شدت در سیستم های توکار مورد استفاده قرار می گیرند و شرکت های بزرگ تولیدکننده میکروکنترلر باعث می شوند تا آن ها در بازار توکار شده مورد استفاده قرار گیرند. میکروکنترلر را می توان قلب یک سیستم تعبیه شده نامید. چند نمونه از میکروکنترلرهای معروف میکروکنترلرهای سری 8051، AVR، PIC هستند.

مطلب پیشنهادی:  بازر چیست؟ آشنایی کامل با انواع بازر Buzzer

معماری میکروکنترلر در مقابل ریز پردازنده

در بالا معماری میکروکنترلر 8051 قرار دارد. می توانید ببینید که تمام اجزای مورد نیاز برای یک پروژه کوچک در یک تراشه وجود دارد. با پیشرفت های الکترونیکی، میکروکنترلرهای جدید زیادی در بازار عرضه می شوند، اگر می خواهید بدانید که چگونه میکروکنترلر مناسب برنامه خود را انتخاب کنید، می توانید مقاله مرتبط را بررسی کنید.

تفاوت میکروکنترلر و میکروپروسسور

مهم ترین تفاوت میکروپروسسور و میکروکنترلر ها، قابلیت افزایش RAM (حافظه) آن ها میباشد. از آنجا که در مدار های الکترونیک، میکروپروسسور ها از یک IC مجزا به عنوان حافظه ی در دسترس (RAM ) خود استفاده میکنند، میتوان با تغییر این آی سی ها حافظه در دسترس پردازنده را تغییر داد.

تفاوت بعدی میکروکنترلر با میکروپروسسور این است که میکروکنترلر ها تنها برای یک هدف مشخص استفاده میشوند و نمیتوان از آن ها برای راه اندازی سیستم های چند منظوره استفاده کرد. اما از میکروپروسسور ها میتوان برای طراحی و راه اندازی سیستم های پیچیده و چمد منظوره استفاده کرد. مثلا شما از یک کامپیوتر که از میکروکنترلر به عنوان هسته مرکزی استفاده میکنند میتوانید برای انجام فعالیت های متفاوت استفاده کنید.

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

  1. تفاوت کلیدی در هر دو مورد وجود محیط جانبی خارجی است، جایی که میکروکنترلرها RAM، ROM، EEPROM را در خود جای داده اند در حالی که ما باید در مورد ریزپردازنده ها از مدارهای خارجی استفاده کنیم.
  2. تمام تجهیزات جانبی میکروکنترلر روی یک تراشه قرار دارند که آن جمع و جور است در حالی که ریزپردازنده حجیم است.
  3. میکروکنترلرها با استفاده از فناوری نیمه رسانا اکسید فلز مکمل ساخته می شوند، بنابراین ارزان تر از ریز پردازنده ها هستند. علاوه بر این، برنامه های کاربردی ساخته شده با میکروکنترلرها نیز ارزان تر هستند زیرا به اجزای خارجی کمتری نیاز دارند، در حالی که هزینه کلی سیستم های ساخته شده با ریزپردازنده ها به دلیل تعداد زیاد اجزای خارجی مورد نیاز چنین سیستم هایی، زیاد است.
  4. سرعت پردازش میکروکنترلرها حدود 8 مگاهرتز تا 50 مگاهرتز است، اما برعکس سرعت پردازش ریزپردازنده های عمومی بالاتر از 1 گیگاهرتز است بنابراین بسیار سریعتر از میکروکنترلرها کار می کنند.
  5. به طور کلی میکروکنترلرها دارای سیستم صرفه جویی در مصرف انرژی هستند، مانند حالت آماده به کار یا حالت صرفه جویی در مصرف برق، بنابراین در کل از انرژی کمتری استفاده می کنند و همچنین از آنجا که اجزای خارجی کم است مصرف کلی انرژی نیز کمتر است در حالی که در ریزپردازنده ها به طور کلی سیستم صرفه جویی در مصرف برق وجود ندارد و همچنین اجزای خارجی زیادی با آن استفاده می شود، بنابراین مصرف انرژی آن در مقایسه با میکروکنترلرها زیاد است.
  6. میکروکنترلرها جمع و جور هستند، بنابراین آن ها را به سیستمی مطلوب و کارآمدی برای محصولات و برنامه های کوچک تبدیل می کند در حالی که ریزپردازنده ها حجیم هستند، بنابراین برای کاربردهای بزرگ ترجیح داده می شوند.
  7. کارهایی که توسط میکروکنترلرها انجام می شود محدود بوده و به طور کلی پیچیدگی کمتری دارد. در حالی که کار انجام شده توسط ریز پردازنده ها توسعه نرم افزار، توسعه بازی، وب سایت، ساخت اسناد و غیره است که به طور کلی پیچیده تر هستند، بنابراین به حافظه و سرعت بیشتری احتیاج دارند، به همین دلیل ROM خارجی، RAM با آن استفاده می شوند.
  8. میکروکنترلرها براساس معماری هاروارد ساخته می شوند که در آن حافظه برنامه و حافظه داده جدا هستند در حالی که ریز پردازنده ها براساس مدل von Neumann ساخته می شوند که برنامه و داده ها در همان ماژول حافظه ذخیره می شوند.
مطلب پیشنهادی:  آموزش نرم افزار Fritzing یادگیری کامل در 2 مرحله

جهت کسب اطلاعات بیشتر، مقاله میکروکنترلر چیست را بخوانید.

همچنین معماری اکثر میکرو کنترلر های مشهور امروزی از نوع ریسک (RISC) است در حالی که بیشتر میکروپروسسور ها از معماری داخلی سیسک (CISC) استفاده میکنند.

معماری CISC با RISC در موارد زیر تفاوت دارد :

همچنین اگر در مورد این مطلب سوالی داشتید در انتهای صفحه در قسمت نظرات بپرسید
  • برنامه نویسی
  • مصرف توان سیستم
  • قدرت مورد نیاز
  • و …

میخواهید برنامه نویسی STM32 را یاد بگیرید؟

دوره آموزش STM32

میخواهید الکترونیک را یاد بگیرید؟

دوره آموزش الکترونیک
دوره آموزش آردوینو

میخواهید آردوینو را به صورت پروژه محور یاد بگیرید؟ برای مشاهده توضیحات روی دوره مورد نظر کلیک کنید

محمد رحیمی

محمد رحیمی

محمد رحیمی هستم. سعی میکنم در آیرنکس مطالب مفید را قرار دهم. (در خصوص سوال در مورد این مطلب از قسمت نظرات همین مطلب اقدام کنید) سعی میکنم تمام نظرات را پاسخ دهم.

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *