خانه توسعهدهنده تکنولوژی CPU چیست و چطور کار میکند؟ همه چیز راجع به واحد پردازش مرکزی
CPU چیست و چطور کار میکند؟ همه چیز راجع به واحد پردازش مرکزی

تکتک کامپیوترها، لپتاپها و گوشیهای هوشمند قطعهای به نام CPU دارند. CPU قلب تپندهای است که تواناییهای پردازشی را به انواع دیوایسها میآورد و تقریبا به تمام نیازهای پردازشی ما رسیدگی میکند، از ارسال پیام برای دوستان گرفته تا اجرای بازیهای ویدیویی و ساخت ویدیو برای شبکههای اجتماعی. اما CPU چیست و دقیقا چطور کار میکند؟ با کوئرا بلاگ همراه باشید تا به تمام دانستنیهای پیرامون یکی از مهمترین اجزای دیوایسهای مدرن بپردازیم.
فهرست مطالب
ToggleCPU چیست و در گذر زمان چه تغییراتی کرده است؟
«واحد پردازش مرکزی» (Central Processing Unit | CPU) به قطعهای سختافزاری گفته میشود که نقش هسته پردازشی را در کامپیوتر، لپتاپ، موبایل، سرور و هر دستگاه مشابهی ایفا میکند. چنین دستگاههایی، داده را به سیگنالهای دیجیتال تبدیل و انواع عملیاتهای ریاضی را روی آنها پیادهسازی میکنند. CPU پردازش چنین سیگنالهایی را امکانپذیر میکند.
بنابراین پردازنده مرکزی را میتوان به مغز هر دستگاهی تشبیه کرد که دستورالعملها را از حافظه دریافت میکند، وظایف ضروری را انجام میدهد و خروجی را بار دیگر به حافظه بازمیگرداند. با این اوصاف، تمام وظایف پردازشی مورد نیاز سیستم عامل و اپلیکیشنها از طریق CPU انجام میشوند.

نخستین کامپیوترهای جهان از لامپهای خلاء برای پردازش کمک میگرفتند. اولین کامپیوترها – مانند ENIAC و UNIVAC – ابعادی غولآسا داشتند و علاوه بر مصرف انرژی فراوان، حرارت زیادی تولید میکردند. با اختراع ترانزیستورها در دهه ۱۹۴۰ میلادی، تکنولوژی CPU انقلابی بزرگ به خود دید.
ترانزیستورها جایگزین لامپهای خلا شدند و کامپیوترهایی کوچکتر، قابل اتکاتر و پربازدهتر را پدید آوردند. اواسط دهه ۱۹۶۰ میلادی، مدارهای مجتمع (Integrated Circuits | IC) از راه رسیدند که میزبان ترانزیستورها و چند قطعه دیگر روی یک چیپ کامپیوتری بودند. از آن زمان به بعد، CPU-ها دائما کوچکتر و سریعتر شدهاند و اکنون نیز به عصر ریزپردازندهها (Microprocessors) رسیدهایم.
اجزای تشکیلدهنده CPU چیست ؟
CPU نوعی مدار الکترونیکی پیچیده است که از اجزای گوناگون برای پردازش داده و اجرای دستورالعملها بهرهمند شده. در ادامه مهمترین اجزای CPU را بررسی میکنیم.
واحد کنترل (Control Unit)
واحد کنترل، امور پردازشی را مطابق با دستورالعملها مدیریت و جریان داده را میان CPU و دیگر اجزای کامپیوتر، کنترل میکند. این واحد حاوی مفسری است که دستورالعملهای دریافتی از حافظه را تبدیل به عملیاتهایی خردتر و قابل اجرا برای CPU میکند. واحد کنترل ضمنا مدیریت سایر اجزا CPU و هدایت آنها به عملیاتهای گوناگون را نیز برعهده دارد.
رجیسترها (Registers)
رجیسترها حافظههایی کوچک و پرسرعت هستند که درون CPU قرار میگیرند. دادهای که CPU در هر لحظه به آن نیاز دارد در رجیستر نگهداری میشود و به این ترتیب، دسترسی سریع به داده امکانپذیر خواهد شد. سیپییوها میتوانند انواع رجیستر را در خود جای دهند، مثلا:
- رجیسترهای کاربرد عمومی (General-Purpose Registers) که داده عملیاتی را نگه میدارند
- رجیسترهای دستورالعمل (Instruction Registers) که دستورالعمل کنونی را در خود نگه میدارند
- شمارندههای برنامه (Program Counters) که آدرس دستورالعمل بعدی در حافظه را در خود نگه میدارند
در مجموع وظیفه رجیسترها، ارائه سریعتر داده نسبت به دیگر سطوح حافظه مانند RAM یا حافظه کش (Cache Memory) است.

واحد محاسبه و منطق (ALU)
واحد محاسبه و منطق (Arithmetic Logic Unit | ALU) به بنیادینترین عملیاتیهای محاسباتی (جمع، تفریق، ضرب و تقسیم) و عملیاتهای منطقی (مانند AND و OR و NOT) رسیدگی میکند. این واحد، داده را از رجیسترهای موجود در CPU میگیرد، پردازش را مطابق دستورالعمل واحد کنترل پیش میبرد و نتایج را تولید میکند.
واحد مدیریت حافظه (Memory Management Unit)
بسته به معماری CPU، ممکن است از واحد مدیریت حافظه یا یک واحد رابط باس (Bus Interface Unit) استفاده شود. این اجزا به وظایف مرتبط به حافظه رسیدگی میکنند، مثلا نحوه تعامل CPU با RAM. علاوه بر این، مدیریت حافظه کش – حافظهای سریع و کوچک درون CPU – و حافظه مجازی CPU که برای پردازش داده به کار میآید نیز برعهده Memory Management Unit است.
کلاک (Clock)
CPU برای همگامسازی تمام عملیاتهای داخلی خود نیاز به یک سیگنال کلاک دارد. سیگنال کلاک نوسانی منظم میان دو حالت بالا (High) و پایین (Low) دارد و بخشهای مختلف مدار دیجیتال را همگام میکند. این سیگنال که مثل ضربان قلب CPU است با واحد هرتز (Hertz | Hz) اندازهگیری میشود و نشان میدهد CPU در هر ثانیه قادر به رسیدگی به چند دستورالعمل است. پردازندههای مدرن همراه با سرعت کلاک متغیر از راه میرسند و کلاک بسته به حجم وظایف و برای دستیابی به پرفورمنس و مصرف انرژی متعادل، تنظیم میشود.
روش کار CPU چیست و چگونه است؟
پردازنده یا CPU کامپیوتر لازم است همواره با دیگر قطعات سختافزاری و همینطور برنامههای نرمافزاری در ارتباط باشد تا داده را پردازش و جریان اطلاعات را درون دستگاههای الکترونیکی، مدیریت کند. CPU معمولا به صورت سیکلی عمل میکند و هر سیکل از سه مرحله اصلی تشکیل شده است.
- دریافت دستورالعمل: CPU دستورالعملها را از حافظه میگیرد. این دستورالعملها در واقع کدهایی دودویی (باینری) هستند که وظایف یا عملیاتهای مختلف CPU را نمایندگی میکنند. واحد کنترل، دستورالعمل را تفسیر و انجام شدن عملیات را تایید میکند. علاوه بر این، آن دسته از قطعات CPU که در رسیدگی به وظیفه مشارکت میکنند هم مشخص میشوند.
- پردازش دستورالعمل: CPU برای آغاز عملیات مورد نظر، داده ضروری را دریافت میکند. سپس محاسبات ریاضیاتی، مقایسههای منطقی، دستکاری داده و انتقال داده میان رجیسترها یا بخشهای مختلف حافظه امکانپذیر میشود.
- نگهداری نتیجه: بعد از عملی شدن دستورها، CPU باید نتایج کار را در حافظه ذخیره یا رجیسترها را با داده جدید، بهروزرسانی کند. شمارنده برنامه هم بهروزرسانی میشود تا آدرس دستورالعمل بعدی را نشان دهد. CPU این سیکل را تکرار میکند و فرایندهای دریافت داده، کدبرداری و اجرای دستورالعملها دائما با همین ترتیب پیش میرود.
سایر کارکردهای پردازنده
پردازنده مرکزی میتواند جریان دستورالعملها، سیگنالهای تولید شده از سوی دیوایسهای خارجی و حتی رویدادهایی که نیاز به توجه فوری دارند را نیز مدیریت کند. زمانی هم که اختلالی در عملکرد رخ میدهد، CPU موقتا وظیفه کنونی را تعلیق میکند و روتینی از پیشتعریفشده را برای برطرفسازی اختلال در پیش میگیرد. بعد از پردازش اختلال نیز CPU به وظیفه قبلی بازمیگردد.
پردازندههای مدرن معمولا از تکنیکهایی مانند رایانش موازی (Parallelism) و خط لوله (Instruction Pipelining) برای بهبود پرفورمنس کمک میگیرند. به این ترتیب دستورالعملهای گوناگون میتوانند به صورت همزمان در مراحل مختلفی از سیکل CPU باشند. در نتیجه، استفاده بهینهتر از CPU ممکن میشود.

برخی از ویژگیهای پیشرفته CPU چیست ؟
بهترین پردازندهها، پردازندههایی هستند که پرفورمنس، بهرهوری و انعطافپذیری را به صورت همزمان ارائه و به گستره وسیعی از وظایف کامپیوتری رسیدگی میکنند. برخی از رایجترین ویژگیهای چنین پردازندههایی را در ادامه میخوانید.
هسته پردازشی
اگرچه در گذشته نهچندان دور، پردازندههای تکهستهای شکلی استاندارد داشتند، این روزها جای خود را به پردازندههایی با چندین هسته فیزیکی دادهاند. هسته یا Core به معنی یک واحد پردازشی درون CPU است. هرچه تعداد هستهها بیشتر باشد، CPU میتواند به رشتهها (دستورالعملهای متناوب) بیشتری رسیدگی کند و پرفورمنس کلی بهبود چشمگیر مییابد. اپلیکیشنها هم میتوانند با خرد کردن وظایف به وظایف کوچکتر، از این ساختار بهره ببرند و تجربه بهتری از پردازش موازی پدید آورند.
هایپرتردینگ (Hyperthreading)
Hyperthreading راهکاری برای پردازش چندرشتهای (MultiThreading) است که از سوی شرکت Intel توسعه یافته و به هر هسته اجازه میدهد چندین رشته را به صورت همزمان به اجرا درآورد. با این تکنولوژی، هر هسته فیزیکی، تبدیل به دو هسته مجازی در سیستم عامل میشود و نرمافزارها استفادهاز بهینهتر از منابع سختافزاری خواهند داشت.
مجموعهای از دستورالعملهای پیشرفته
CPU-های مدرن همراه با مجموعهای از دستورالعملهای پیشرفته و تکنولوژیهای گوناگون نیز از راه میرسند که به صورت خاص برای سرعت بخشیدن به برخی وظایف طراحی شدهاند. این دستورالعملها پا را فراتر از عملیاتهای محاسباتی و منطقی بنیادین میگذارند و به CPU اجازه میدهند محاسبات به مراتب پیشرفتهتر را با بازدهی بیشتر پشت سر بگذارند.
برای مثال CPU میتواند مجموعه دستورالعملهایی برای چنین وظایفی داشته باشد:
- وظایف چند رسانهای (Multi-Media) مانند دیکود ویدیو، انکود صدا و پردازش تصویر
- الگوریتمهای رمزنگاری و رمزگشایی (Encode / Decode) مختلف مانند Advanced Encryption Standard (یا AES) و Secure Hash Algorithm (یا SHA).
- وظایف «یک دستورالعمل، چند داده» (Single Instruction, Multiple Data | SIMD) که نیاز به پیادهسازی همزمان عملیاتهای یکسان روی مجموعه دادههای کلان دارند، مانند رندر گرافیکی، شبیهسازی علمی و پردازش سیگنال دیجیتال
- مجازیسازی، که به ماشینهای مجازی (Virtual Machines | VMs) اجازه میدهد با بازدهی بیشتر به اجرا درآیند
- وظایف مرتبط به هوش مصنوعی (AI)، مانند عملیاتهای شبکههای عصبی
«پرفورمنس» در CPU چیست و به چه معناست؟
عبارت «پرفورمنس» (Performance) به سرعت CPU در پردازش دستورالعملهای دریافتی از برنامهها اشاره دارد. پرفورمنس با واحد «دستورالعمل بر ثانیه» (Instruction per Second | IPS) سنجیده میشود و هرچه IPS بالاتر باشد، سرعت رسیدگی به وظایف هم بیشتر میشود.

تعداد وظایفی که CPU به آنها رسیدگی میکند، به سرعت کلاک و فاکتورهای دیگری مانند معماری پردازنده و حجم حافظه کش نیز بستگی دارد.
اهمیت پرفورمنس در CPU
پرفورمنس CPU تاثیری مستقیم روی پرفورمنس تمام سیستم میگذارد. پردازندهای که پرفورمنس بالا دارد، اجرای سریعتر اپلیکیشن را امکانپذیر میکند، بهرهوری بیشتری در رسیدگی به وظایف مختلف به نمایش میگذارد و تجربه بهتری از بازیهای ویدیویی پدید میآورد.
علاوه بر این، دسترسی به پردازندهای قدرتمند باعث اطمینان خاطر از این میشود که کامپیوترتان آخرین بهروزرسانیهای نرمافزاری را دریافت میکند. همینطور که نرمافزارها پیچیدهتر از قبل میشوند، همه ما نیاز به پردازندههایی قدرتمندتر داریم. اگر پردازنده به اندازه کافی قدرتمند نباید با این بهروزرسانیها همگام نمیماند و کندی در عملکرد یا فریز شدن کامل سیستم را رقم میزند.
چطور پرفورمنس پردازنده را بهینهتر کنیم؟
به روشهای گوناگون میتوان پرفورمنس پردازندهها را بهینهسازی کرد. یکی از اصلیترین روشها، حصول اطمینان از اجرای آخرین نسخه از سیستم عامل ویندوز یا هر سیستم عامل دیگری روی کامپیوتر و گوشی است. با این کار مطمئن میشوید هیچگونه مشکل سازگاری میان سیستم عامل و اجزای سختافزاری وجود ندارد.
علاوه بر این، لازم است دائما آخرین بهروزرسانیهای درایور را برای سختافزار خود نصب کنید. درایورهای انقضا گذشته منجر به کاهش پرفورمنس میشوند، زیرا با جدیدترین ورژنهای نرمافزار یا اجزای سختافزاری سازگاری ندارند.
در نهایت لازم است مطمئن شوید کامپیوترتان انبوهی وظیفه پردازشی در پسزمینه نداشته باشد. وظایف پسزمینه، از توان پردازشی ارزشمند CPU میکاهند و عملکرد کلی سیستم را به شکل چشمگیری تحت تاثیر قرار میدهند.
پردازنده مرکزی نقشی کلیدی در پردازش مدرن ایفا میکند و با ارائه محاسبات دقیق و سریع، اجازه میدهد همه ما به شکلی روزمره و موثر از انواع کامپیوترها استفاده کنیم. بنابراین چه از کامپیوتر برای گیمینگ استفاده کنید و چه پروژههای گوناگون، ضروری است که به وضعیت CPU توجه ویژه نشان دهید.
ریزپردازنده یا Microprocessor چیست؟
CPU-های مدرن آنقدر پیشرفت کردهاند که عملا تبدیل به پردازندههای مینیاتوری شدهاند. چنین پردازندههایی که درون یک مدار مجتمع بسیار کوچک قرار میگیرند، ریزپردازنده یا Microprocessor نام دارند.
عملکرد ریزپردازندهها ارتباطی مستقیم با تعداد هستههایی دارد که پشتیبانی میشوند. همانطور که پیشتر توضیح دادیم، هسته CPU مثل «مغزی درون مغزی دیگر» است و نقش یک واحد پردازشی فیزیکی را درون CPU ایفا میکند. ریزپردازندهها میتوانند حاوی چندین پردازنده باشند. از سوی دیگر، هسته فیزیکی در واقع یک CPU است که درون چیپ قرار گرفته اما تنها یک سوکت را اشغال میکند. به این ترتیب میتوان دیگر هستههای فیزیکی را به همان محیط پردازشی اضافه کرد.

لازم به اشاره است که عبارت Microprocessor را نباید با عبارت «Microcontroller» اشتباه گرفت. Microcontroller کامپیوتری بسیار کوچک است که روی یک مدار مجتمع واحد سوار میشود. این میکرو کنترلرها معمولا حداقل یک CPU دارند و از حافظه نیز برخوردار شدهاند.
گذشته از ریزپردازندهها، احتمال دارد در جهان پردازش کامپیوتری با این عبارات نیز روبهرو شوید:
- پردازندههای تکهستهای (Single-Core Processors): پردازندههای تکهستهای تنها یک واحد پردازشی دارند. این پردازندهها معمولا به عملکرد ضعیفتر شهرت دارند و با اجرا روی یک رشته، تمام سیکلهای CPU را به صورت نوبتی و یکبهیک پیش میبرند.
- پردازندههای دو هستهای (Dual-Core Processors): پردازندههای دو هستهای همراه با واحدهای پردازشی دوگانه از راه میرسند. این دو واحد یا هسته به صورت موازی به وظایف رسیدگی میکنند و بهرهوری را تا دو برابر افزایش میدهند.
- پردازندههای چهار هستهای (Quad-Core Processors): این پردازندهها هم روی مداری یکپارچه میزبان چهار هسته مختلف هستند و نرخ پرفورمسن را چهار برابر میکنند.
- پردازندههای چند هستهای (Multi-Core Processors): از این عبارت برای توصیف مدار یکپارچهای استفاده میشود که حداقل دو هسته پردازشی دارد و میتواند با مصرف کمتر انرژی، پرفورمنس بالاتر ارائه کند.
تفاوت GPU با CPU چیست ؟
پردازشگر گرافیکی (Graphical Processing Unit | GPU) به قطعهای سختافزاری گفته میشود که به صورت خاص برای سرعتبخشی به فرایند رندر گرافیکی و پردازش تصاویر ساخته میشود. اگرچه پردازندههای مرکزی میتوانند حاوی تراشهای یکپارچه برای رسیدگی به این وظایف باشند، اما GPU به معنی قطعهای جداگانه است که کنار CPU مینشیند و به مادربرد متصل میشود. این قطعه را عمدتا در کامپیوترهای شخصی و کنسولهای بازی خانگی پیدا میکنید.
سرشناسترین تولیدکنندگان CPU
گاهی از اوقات تصور میشود که به خاطر فراگیری تکنولوژی CPU، شاهد بازیگران زیادی در بازار پردازنده مرکزی هستیم. اما به صورت کلی شرکتهایی کمتر از انگشتان یک دست داریم که به شکلی مداوم و موثر در بازار CPU فعالیت میکنند و محصولات را با گذشت هر سال بهبود میدهند.
- شرکت Advanced Micro Devices یا AMD: شرکت AMD از سال ۲۰۱۷ مشغول به تولید ریزپردازندههای Ryzen بوده است. مشهورترین محصولات سری AMD Ryzen (مثل Ryzen 7 و Ryzen 9) با استقبال چشمگیر گیمرها همراه شدهاند، زیرا عملکرد بهینه و سرعت بالا در اجرای بازیهای ویدیویی از مهمترین ویژگیهای آنهاست.
- شرکت کوالکام (Qualcomm): کوالکام در حال حاضر بزرگترین بازیگر جهان CPU – از لحاظ حجم تولید خالص – به حساب میآید. این شرکت بیش از هرچیز به ساخت پردازندههای سری اسنپدراگون برای انواع موبایلهای اندرویدی شهرت دارد.
- شرکت ARM: شرکت ARM با دیگر شرکتهای حاضر در این فهرست فرق دارد، زیرا خودش سازنده و فروشنده پردازنده نیست. این شرکت در واقع تکنولوژیهای گوناگون را برای چیپهای پردازنده توسعه میدهد و دیگر شرکتها میتوانند لایسنس این تکنولوژیها را بخرند و شروع به استفاده از آنها کنند.
- شرکت اینتل (Intel): اینتل شناختهشدهترین نام در جهان CPU به حساب میآید و از سال ۱۹۷۴ میلادی تاکنون مشغول به توسعه انواع پردازندهها بوده. پردازندههای گوناگون این شرکت – مانند پردازندههای سری Intel Core i5 که برای اولین بار سال ۲۰۰۹ از راه رسیدند – معمولا سازگاری کامل با برنامههای نیازمند به توان پردازشی بالا دارند. برای مثال میشود به برنامههای ادیت ویدیو و برنامههای توسعه نرمافزار اشاره کرد.
سوالات متداول پیرامون اینکه CPU چیست
اکنون که به خوبی میدانید CPU چیست و چطور کار میکند، در آخر کار را با پاسخ دادن به چند سوال پرتکرار به پایان میرسانیم.
CPU از آن جهت ضروری است که دستورالعملها را پردازش و داده را میان قطعات گوناگون سیستم توزیع میکند. در نتیجه تمام قطعات سیستم به هارمونی میرسند و به عملکرد بهینه ادامه میدهند.
هرچه CPU-ها پیشرفتهتر میشوند، شاهد پردازندههایی سریعتر و بهینهتر خواهیم بود. به این ترتیب کسبوکارها میتوانند داده را با سرعت بیشتری پردازش کنند، بهرهوری عملیاتها را بالا ببرند و از رقابت با بازیگران حاضر در بازار دست نکشند.
پردازنده مرکزی یا CPU با هماهنگسازی مجموعهای از وظایف میان قطعات اصلی سیستم کار میکند. این قطعه سیکلی از دریافت اطلاعات، رمزگشایی و پردازش را به اجرا درمیآورد و سپس نتیجه را به کاربر نشان میدهد. دستورالعملهای CPU از حافظه کامپیوتر دریافت میشوند و بعد از دیکود (با هدف درک وظایف ضروری)، محاسبات و عملیاتهای منطقی انجام میشوند و خروجی ارائه میشود. سرعت و بازدهی این عملیاتها وابستگی مستقیم به معماری، سرعت کلاک و تعداد هستههای پردازنده دارد.
منبع: SuperMicro و IBM و AWS