ریزپردازنده تراشهای در سیستمهای کامپیوتری است که به آن واحد پردازنده مرکزی یا CPU گفته میشود. در این آموزش یاد میگیریم بخشهای CPU چه چیزهایی هستند، ارتباط آنها چگونه است و وظایف پردازنده چیست؟
کلمه CPU مخفف Central Processing Unit به معنی واحد پردازنده مرکزی است. به طور خلاصه، این تراشه به عنوان مغز یک سیستم کامپیوتری عمل میکند، چون همه پردازشها، محاسبات و تصمیمگیریها توسط پردازنده سیستم انجام میشود.
فهرست محتوای آموزش
وظایف پردازنده کامپیوتر
پردازنده و ریزپردازنده مستقیماً به برد اصلی سیستم متصل میشود و وظایف حیاتی در کارکرد سیستم دارد؛ مهمترین وظایف CPU عبارتاند از:
- کنترل و اجرای دستورالعملها
- ایجاد هماهنگی بین فعالیتهای اجزای مختلف سیستم
- تشخیص نوع عملیات و ترتیب اجرای آنها
- آوردن اطلاعات مورد نیاز از حافظه اصلی کامپیوتر به داخل ریزپردازنده
- انجام محاسبات مورد نیاز برای پردازش
- ذخیره نتیجه عملیات در حافظه
برای اینکه درک بهتری از عملکرد CPU داشته باشید، یک مثال ساده میزنم. فرض کنید میخواهیم یک فایل pdf را پرینت کنیم.
برنامهای که وظیفه پرینت فایل در سیستم را بر عهده دارد، شامل کدهای کامپیوتری است. این کدها در نهایت به زبان ماشین و دستورالعملهای پردازنده (instructions) تبدیل میشود. اگر علاقهمندید در مورد روند و انواع تبدیل کد بدانید، آموزش اجرای کدهای برنامه نویسی را ببینید.
در یک نگاه بسیار ساده، این دستورالعملها به ترتیب زیر هستند:
- فایل در آدرس 584 هارد (فایل
sabzdanesh.pdf
) را بخوان. - به پرینتر دستور آمادهباش ارسال کن.
- فایل را برای پرینت به پرینتر ارسال کن.
- اگر نتیجه موفق بود، پیغام موفقیت وگرنه پیام خطا چاپ کن.
پردازنده در واکنش به این دستورالعملها، ابتدا فایل را از هارد به حافظه اصلی (RAM) آورده و سپس تلاش میکند به پرینتر دسترسی پیدا کند. اطلاعات فایل را با روشهای خاصی که دارد برای پرینتر ارسال کرده و دستور چاپ را به آن میدهد.
بعد از اینکه پرینتر عملیات چاپ را به اتمام رساند، به CPU خبر میدهد. پردازنده کامپیوتر نیز نتیجه را بررسی کرده و پیام مناسب را نمایش میدهد.
به واحد پردازنده مرکزی در کامپیوتر پردازنده یا CPU گفته میشود. تراشههای مختلف و با عملکردهای محدودتری هم وجود دارد که برای کارهای خاص یا سیستمهای خاص استفاده میشود. به این تراشهها ریزپردازنده یا Microprocessor (میکروپروسسور) گفته میشود.
قسمتهای مختلف CPU و وظایف
پردازنده کامپیوتر دارای دو قسمت اصلی و حیاتی است: واحد کنترل و واحد حساب و منطق
واحد کنترل (Control Unit) که به اختصار CU هم گفته میشود، وظیفه کنترل و ایجاد هماهنگی بین قسمتهای مختلف سیستم را بر عهده دارد. تمام کارهای کنترلی که باید توسط ریزپردازنده انجام شود، در این واحد از پردازنده انجام میشود؛ از جمله:
- کنترل ورود دادهها از طریق واحد ورودی
- ذخیره دادهها در حافظه
- انتقال اطلاعات از حافظه به واحد حساب و منطق و برعکس
- فرمان رمزگشایی دستورالعملها (اینکه کدام دستورالعمل رمزگشایی و اجرا شود.)
- ارسال اطلاعات به واحد خروجی
واحد حساب و منطق یا ALU که مخفف Arithmetic – Logic Unit است عملیاتهای محاسباتی از قبیل جمع، تفریق، ضرب و تقسیم را انجام میدهد.
این واحد همچنین عملیات منطقی برای مقایسه دو داده (مثل کوچکتر، بزرگتر یا مساوی) را انجام میدهد.
سایر عملیاتهای پیچیده با ترکیب همین چند عملیات ساده انجام میشود؛ مثلاً اگر بخواهیم عددی را به توان برسانیم، باید پایه را به تعداد توان در خودش ضرب کنیم.
به نظرتان در اجرای عملیات توان در پردازنده کامپیوتر، از چه عملیاتهای پایهای استفاده میشود؟
چند بخش دیگر ریزپردازنده
در یک نگاه جزئیتر، واحدهای دیگری برای انجام دستورالعملها به کمک ALU و CU میآیند. از نظر تئوری ممکن است این بخشها در ترکیب با دو بخش اصلی در نظر گرفته شوند اما از نظر پیادهسازی، واحدهای زیر را نیز داریم:
- واحد مدیریت حافظه (MMU) : برای مدیریت آدرسدهی حافظه و بخشبندی آن در ذخیره دادهها
- واحد رابط گذرگاه (Bus Interface Unit) : رابطه بین CPU و سایر بخشهای سختافزار را مدیریت میکند.
- واحد پیش واکشی (Prefetch Unit) : قبل از اینکه یک دستورالعمل یا داده توسط پردازنده مرکزی پردازش شود، زودتر فراخوانی میشود تا سرعت پردازنده افزایش یابد.
چند اصطلاح در پردازنده CPU
علاوه بر دو بخش اصلی، چند واحد دیگر در پردازنده داریم. هر کدام از این بخشها نیاز به بحث و آموزش جامعی دارد، اما به طور مختصر آنها را معرفی میکنیم تا آشنا شوید.
- رجیسترها (Register یا ثبات در پردازنده) : حافظههای موقت و کوچک داخل CPU هستند که دادههای در حال پردازش را در خود نگهداری میکنند.
- کش (Cache یا حافظه پنهان پردازنده) : نوعی RAM کوچک اما با سرعت زیاد است که بین CPU و RAM قرار میگیرد تا سرعت خواندن دادهها بیشتر شود.
- باس (Bus) : مسیر ارتباطی بین پردازنده و سایر بخشها را BUS یا گذرگاه کامپیوتر میگویند.
- کلاک (Clock) : ساعت در پردازنده یک سیگنال الکتریکی منظم ارسال میکند (پالس) تا اجرای دستورات در دورههای منظم انجام شود.
در مورد نحوه عملکرد کش و سلسله مراتب واکشی دادهها میتوانید آموزش زیر را دنبال کنید:
سرعت پردازنده کامپیوتر
یکی از عوامل تعیینکننده سرعت ریزپردازنده، تعداد بیتهایی است که میتواند در یک لحظه منتقل شده یا روی آنها عملیات انجام شود. هر چقدر تعداد این بیتها بیشتر باشد، سرعت ریزپردازنده هم بیشتر است.
به عنوان مثال وقتی گفته میشود یک پردازنده 64 بیتی است، یعنی میتواند به طور همزمان هشت بایت اطلاعات را پردازش کند. البته این کار در ریزپردازندهها در چند میکرو ثانیه انجام میشود.
از عوامل موثر در سرعت ریزپردازنده، تعداد عملیاتی است که در واحد زمان انجام میدهد. این میزان با واحد مگاهرتز (Mhz) یا گیگا هرتز (GHz) اندازهگیری میشود. هر هرتز معادل یک پالس در ثانیه است.
ریز پردازنده در هر پالس، یک عمل خاص را انجام میدهد؛ مثلاً وقتی گفته میشود سرعت ریزپردازنده یک کامپیوتر 4Ghz است، یعنی آن پردازنده در یک ثانیه 4 میلیارد عملیات را انجام میدهد.
یکی دیگر از عوامل مؤثر در سرعت و توان ریزپردازنده، تعداد هستههای پردازشی به کار رفته در آن است. در پردازندههای چند هستهای چند هسته پردازشی مجزا روی یک صفحه سیلیکونی قرار میگیرد.
در پردازندههای چند هستهای، هر هسته پردازشی مانند یک ریزپردازنده مستقل عمل میکند. نحوه تقسیم وظایف بین ریزپردازندهها و هماهنگی میان آنها مدلها و بحثهای جداگانهای دارد که میتوانید کلیتی از آن را در این صفحه ویکیپدیا بخوانید.
جمعبندی وظایف ریزپردازنده و واحدهای آن:
در این آموزش با ریزپردازنده و اجزای آن آشنا شدیم. فهمیدیم ریزپردازنده در کامپیوتر به عنوان واحد پردازنده مرکزی یا CPU شناخته میشود و بخشهای پردازنده و وظایف ریزپردازندهها را یاد گرفتیم.
دو بخش اصلی ریزپردازنده، واحد کنترل (برای ایجاد هماهنگی) و واحد حساب و منطق (برای محاسبات) است. واحدهای دیگری هم برای مدیریت بهتر و تقسیم وظایف ریزپردازنده داریم که عبارت بود از: مدیریت حافظه، پیش واکشی، رابط گذرگاه و اجزایی مثل رجیسترها و کلاک در پردازنده.
در انتها نیز علاوه بر اجزای ریزپردازنده، در مورد واحد سرعت ریزپردازنده (سرعت CPU) و عوامل مؤثر در سرعت پردازندهها صحبت کردیم. اگر سؤالی دارید، از بخش دیدگاهها بپرسید.
این آموزش برای همیشه رایگانه! میتونید با اشتراکگذاری لینک این صفحه از ما حمایت کنید یا با خرید یه فنجون نوشیدنی بهمون انرژی بدید!
میخوام یه نوشیدنی مهمونتون کنم
1MP/U 8.20(speedo)
13.80-0.84 (Total)
چطور از روی این اطلاعات میشه سرعت گیربکس (۸سرعته) رو به km/h فهمید؟!
چی شده؟! گیربکس؟!!!
خیلی سایتارو نگا کردم ولی مطلبایی که درباره سی پی یو میخواستم فقط تو این سایت دیدم
سپاس
خوشحالیم که این آموزشها براتون مفید و کاربردی بوده 🙂 مرسی برای انرژی خوبی که بهمون دادین
داشتم دنبال میگشتم cu مخفف چیه که این اموزش عالی رو دیدم. مرسی ازتون
خیلی خوشحالیم که از این آموزش استفاده کردید. موفق باشی مرتضی عزیز
خیلی واضح و دقیق گفتید. ممنونم
خوشحالم براتون مفید بوده. 🙂
[…] ALU عملکرد واحد پردازنده مرکزی و پردازنده گرافیکی یکجا انجام […]
[…] قبل در مورد ریزپردازنده در واحد سیستم صحبت کردیم. در این مبحث به بررسی حافظه های اصلی و […]