سی پی یو یکی از مهمترین قطعات کامپیوتر است که از آن با عنوان مغز سیستم هم یاد میشود. این واژه که از دهه ۵۰ میلادی رایج بوده و همچنان نیز مورد استفاده قرار میگیرد. البته کاربرد «CPU» به آنچه درون کامپیوترها و مادربردها مییابید محدود نمیشود و این قطعه در بسیاری از محصولات الکترونیکی دیگر مانند موبایلها و تبلتها هم به کار گرفته شده است. اما سی پی یو چیست و چگونه کار میکند؟ در مطلب پیش رو میخواهیم به همین سوالات پاسخ دهیم.
عبارت «CPU» مخفف «Central Processing Unit» است، به معنی «واحد پردازش مرکزی» یا به اختصار «پردازنده». سی پی یو در واقع یک چیپ الکترونیکی کوچک اما قدرتمند است که در دستگاههای مختلف نقش پردازشگر و کنترلکننده اطلاعات را بر عهده دارد.
البته برای انجام پردازشهای گرافیکی، سیستم از چیپ گرافیک یا کارت گرافیک استفاده میکند اما به صورت کلی، در اغلب مواقع وظیفه پردازش اطلاعات و انجام محاسبات ریاضی دستگاه بر عهده سی پی یو است.
پردازنده مرکزی کامپیوتر در زمان فعالیت، گرمای زیادی ایجاد میکند، حتی اگر برای مدت کوتاهی روشن باشد. به همین خاطر سی پی یو ها معمولاً با سیستم خنککننده اختصاصی شامل هیتسینک (صفحهای فلزی با رسانایی گرمایی بالا) و فن همراه میشوند تا حرارت تولیدشده به سرعت تخلیه شود.
لازم به ذکر است که برای بهبود انتقال گرما بین پردازنده و صفحه فلزی ماژول خنککننده، از خمیر حرارتی یا خمیر سی پی یو استفاده میشود. این خمیر بر پایه سیلیکون تولید شده و باید به صورت یکنواخت روی سطح CPU پخش شود.
نخستین سیپییو تجاری دنیا در سال ۱۹۷۱ میلادی از سوی کمپانی اینتل معرفی شد و «Intel® 4004» نام داشت. این پردازنده ۴ بیتی از فرکانس ۷۴۰ کیلوهرتزی برخوردار بود و میتوانست در هر ثانیه ۹۲۶۰۰ دستور را اجرا کند.
۵ ماه بعد، اینتل از پردازنده ۸ بیتی خود با نام «Intel® 8008» رونمایی کرد که فرکانس ۸۰۰ کیلوهرتزی داشت. برای مقایسه، پردازندههای نسل جدید و کنونی اینتل از فرکانسهای ۵ گیگاهرتز و بالاتر پشتیبانی میکنند که نزدیک به ۷۰۰۰ برابر بیشتر از اولین سی پی یو تجاری این شرکت است.
هر CPU از کنار هم قرار گرفتن میلیونها ترانزیستور که روی یک چیپ کامپیوتری سوار شدهاند، ساخته میشود. این ترانزیستورها در کنار هم امکان رسیدگی به محاسبات و اجرای نرمافزارها را برای سی پی یو فراهم میکنند. سی پی یو از دو بخش اصلی «ALU» و «CU» تشکیل میشود که هریک وظایف خاص خود را دارند.
وظیفه انجام محاسبات، رسیدگی به عملیاتهای ریاضی و منطقی و همینطور تصمیمگیری در سی پی یو، برعهده «واحد حساب و منطق» یا «Arithmetic Logic Unit» است. این واحد چهار عمل اصلی ریاضی شامل جمع، تفریق، ضرب و تقسیم را انجام میدهد.
پایش و کنترل عملیاتها و دریافت دستورات از حافظه برعهده «واحد کنترل» یا «Control Unit» است. این بخش در واقع کار هماهنگی را در سیپییو انجام میدهد.
چیپ پردازنده یا سی پی یو طی فرایندی تحت عنوان فوتولیتوگرافی (Photo-lithography) که اغلب تحت عنوان لیتوگرافی (Lithography) از آن یاد میکنند، ساخته میشود. در این فرایند به بیان ساده، استفاده از پرتو نور لایههای متعدد تشکیلدهنده چیپ، حکاکی شده و روی هم قرار میگیرند.
شرکتهای مختلف در طول سالهای اخیر تلاش کردهاند با افزایش دقت ابزارهای تولید چیپ، اندازه محصولات خود را کاهش و کارایی آنها را افزایش دهند. در این بین واژههایی مانند لیتوگرافی ۱۴ نانومتری یا ۸ نانومتری را هم میشنویم که این اعداد هرچه کوچکتر باشند، فناوری مورد استفاده پیشرفتهتر بوده و در ابعاد مساوی، تعداد ترانزیستورهای بیشتری را میتواند در چیپ قرار دهد.
با پیشرفت فناوری طی سالهای اخیر، ابعاد ترانزیستورها هم کوچکتر شده و تعداد بیشتری از آنها را میتوان در همان مساحت قبلی جا داد. به همین خاطر با گذشت زمان، سرعت و قدرت پردازش سی پی یوها همواره افزایش یافته است.
گوردون ای. مور (Gordon E.Moore) همبنیانگذار شرکت اینتل در سال ۱۹۶۴ میلادی پیشبینی کرد که در صنعت فناوری، با گذشت هر دو سال، تعداد ترانزیستورهایی که روی یک چیپ جا میشوند دو برابر خواهد شد و هزینه ساخت کامپیوترها نیز متعاقبا کاهش مییابد.
این پیشبینی که به قانون مور معروف شده، تا همین اواخر صحت خود را حفظ کرده و همواره شاهد کوچکتر شدن ابعاد ترانزیستورها و افزایش سرعت پردازندهها بودهایم. البته در سالهای اخیر سرعت فناوری افزایش یافته و هر ۱۸ ماه تعداد ترانزیستورهای روی چیپ دو برابر شده و همین فرایند، سرعت و عملکرد CPUها را به شکل چشمگیری ارتقا داده است.
در حال حاضر دو کمپانی «Intel» و «AMD» اصلیترین تولیدکنندگان سیپییو در دنیا هستند که هرکدام محصولات متفاوتی را در بازههای قیمتی متنوع عرضه میکنند. این محصولات بسته به فناوری به کار رفته، به نسلهای مختلفی تقسیم میشوند که همواره هر نسل نسبت به نسل قبل کارایی و عملکرد بهتری ارائه میکند.
اختلاف زمانی بین عرضه نسلهای مختلف پردازنده متفاوت است. البته ممکن است بیش از یک نسل سی پی یو از ساختار فیزیکی مشابهی استفاده کنند که به این ساختار سوکت میگویند. پیش از این در «مجله فرادرس» انواع سوکت پردازنده را بررسی کردهایم که میتوانید از اینجا با انواع سوکت سی پی یو بیشتر آشنا شوید.
اگر بخواهیم به زبان ساده بگوییم، CPU دستوراتی را از نرمافزارهای کامپیوتری دریافت میکند که ابتدا به زبان باینری ترجمه شده و سپس به اجرا درمیآیند. این فرایند در تمام کامپیوترهای مدرن یکسان است.
CPU مشخصات مختلفی دارد که تولیدکننده و مدل، از جمله این مشخصات به حساب میآیند. اما ویژگیهای اصلی پردازنده که در انتخاب آن تاثیر میگذارند، تعداد «هسته» (Core)، تعداد «رشته» (Thread)، «سرعت کلاک» (Clock Speed) و حافظه «کش» (Cache) هستند که در ادامه به آنها میپردازیم.
کامپیوترها در اوایل عمر خود با پردازندههای تکهستهای روانه بازار شدند. تکهستهای بودن پردازنده بدین معنا است که سی پی یو در هر لحظه تنها یک دستور را اجرا خواهد کرد. تا زمانی که اولین فرایند به پایان نرسد، فرایند اجرای دستور بعدی شروع نخواهد شد.
به منظور افزایش سرعت پردازش، در گذر زمان سیپییوهای چندهستهای هم تولید شدند. احتمالاً اصطلاحاتی مانند پردازنده دو هستهای، چهار هستهای و هشت هستهای را شنیده باشید. این نوع پردازندهها در واقعا چند CPU روی یک چیپ دارند که هرکدام بهصورت جداگانه به عملیات اجرای دستورات رسیدگی میکند.
نقطه قوت پردازندههای چند هستهای دقیقا همین پردازش همزمان محاسبات است. هرچه تعداد هستهها بیشتر باشد، تعداد محاسبات همزمان نیز افزایش پیدا میکند که این امر در مجموع باعث بهبود عملکرد CPU خواهد شد. البته در نظر داشته باشید که تعداد بیشتر هستهها الزاماً به معنی سرعت بالاتر در اجرای دستورات نیست. اما وقتی چند هسته در اختیار داریم، سرعت فرآیند به طرز چشمگیری افزایش پیدا میکند، خصوصاً زمان انجام چند کار سبک به صورت همزمان.
بدون ورود به مسائل پیچیده فنی، توصیف مفهوم «رشته» (Thread) در پردازنده کار آنقدرها سادهای نیست. در نتیجه بهتر است بهصورت فرضی و با یک مثال این مفهوم را بررسی کنیم.
تصور کنید میخواهید صدای کامپیوتر خود را زیاد کنید. این فرآیند شامل رشتهای از دستورات است. وقتی دکمه افزایش صدا را فشار میدهید، ابتدا مقدار عددی ذخیره شده برای حجم صدا در حافظه سیستم تغییر میکند. در گام بعد سیگنالی برای اسپیکر ارسال میشود که حجم صدا را به مقدار جدید برساند. حالا رشته دیگری از دستورات رخ داده و تصویری از افزایش صدا هم روی مانیتور نمایش داده میشود.
در یک پردازنده تکهستهای، رشتههای فوق نمیتوانند بهصورت همزمان اجرا شوند، چرا که این سیپییو تنها قادر به اجرای یک رشته دستور در آن واحد است. اگر هریک از دستورات را بخشی از یک رشته در نظر بگیریم، در پردازنده تکهستهای ابتدا رشته مربوط به افزایش صدا به اجرا در میآید و پس از آن تصویر مربوطه روی مانیتور نمایش داده میشود.
قابلیت پردازش چند رشتهای یا مولتی تردینگ (که از آن با عنوان هایپر تردینگ یا Hyper-Threading هم یاد میشود) به سی پی یو اجازه میدهد رشتهها را به ظاهر همزمان اجرا کند. در حقیقت پردازنده هر رشته را به چند بخش تقسیم کرده و به شکل چرخشی، بخشهای هر رشته را به اجرا درمیآورد.
در مثال قبل، اگر CPU قابلیت پردازش چند رشتهای داشته باشد، ابتدا مقدار ذخیره شده برای حجم صدا را تغییر میدهد، سپس رشته را عوض کرده و تصویر مربوط به افزایش صدا را فراخوانی میکند. در گام بعد نیز سیگنال افزایش صدا را به اسپیکر ارسال کرده و در آخر سیگنال نمایش تصویر را به مانیتور میفرستد.
با استفاده از روش فوق، فاصله زمانی بین پایان یافتن رشتهها به صفر نزدیک میشود و در نظر کاربر هر دو فرآیند همزمان انجام میشوند. البته این مثال سادهسازی شده و در عمل فرایند پیچیدهتری طی میشود. با این حال میتوان به عنوان یک قاعده کلی گفت که مانند تعداد هسته، هرچه تعداد رشتههای پردازشی بیشتر باشد، بهتر است.
«سرعت کلاک» (Clock Speed) یکی از مشخصههای اصلی در تشخیص کارایی و توان پردازشی CPU است. البته گاهی از اوقات کاربران سرعت کلاک را با تعداد دستوراتی که سیپییو در یک ثانیه اجرا میکند اشتباه میگیرند.
سرعت کلاک در واقع تعداد چرخهها یا سیکلهای پردازشی سیپییو را در واحد زمان نشان میدهد که با تعداد دستورات قابل انجام متفاوت است. سرعت کلاک را با یکای فرکانس یعنی هرتز اندازهگیری میکنند. مثلاً اگر سرعت کلاک CPU معادل ۲ گیگاهرتز باشد، یعنی این پردازنده در هر ثانیه ۲ میلیارد سیکل پردازشی را انجام خواهد داد.
گفتیم سیکل پردازشی با اجرای دستور متفاوت است. بسته به سال تولید، مدل و همینطور فناوری مورد استفاده، یک سیپییو ممکن است دستوری را در ۶ سیکل پردازشی اجرا کندُ حال آنکه پردازنده دیگر همان دستور را در ۲ سیکل پردازشی به اجرا درمیآورد. دقیقا به همین خاطر، سرعت کلاک به تنهایی معیار خوبی برای مقایسه دو CPU مختلف نیست.
البته اگر پردازندهها از یک خانواده باشند، میتوان از سرعت کلاک برای مقایسه توان پردازشی آنها استفاده کرد. مثلاً در دو CPU از یک شرکت که همنسل و همخانواده هستند، زمانی که هر دو سیپییو از حداکثر توان خود استفاده میکنند، پردازندهای که سرعت کلاک بالاتری دارد دستورات را سریعتر اجرا خواهد کرد.
در کامپیوتر حافظههای مختلفی مانند هارد دیسک و رم وجود دارد که هر یک، وظایف خاص خود را برعهده میگیرند. CPU هم حافظه مخصوص خود را دارد که به آن «حافظه کش» (Cache Memory) میگویند.
Cache نوع بهخصوصی از حافظه است که سرعت بسیار بالایی داشته و در کنار پردازنده، برای دریافت بهینه اطلاعات از حافظه اصلی سیستم استفاده میشود. کش حافظهای موقتی است که به CPU کمک میکند اطلاعات را با سرعت بیشتری در اختیار بگیرد. البته به دلیل فناوری پیشرفته و سرعت زیاد، این نوع حافظه قیمت بالایی هم دارد.
حافظه Cache به صورت کلی در سه سطح مختلف طبقهبندی میشود که هرکدام ویژگی و وظیفه مخصوصی دارند:
برای مشاهده عملکرد و سطح درگیری CPU، باید «Task Manager» را در سیستم عامل ویندوز باز کنید. برای این کار راههای مختلفی وجود دارد که به چند مورد از آنها اشاره میکنیم.
بعد از پشت سر گذاشتن هرکدام از این روشها و پس از باز شدن Task Manager، روی زبانه «Performance» کلیک کنید تا میزان استفاده از CPU را ببینید. در این بخش میزان درگیر بودن رم و سایر حافظهها نیز قابل مشاهده است.
اگر میزان درگیر بودن سیپییو در شرایط عادی خیلی بالاست و منابع سیستمی به طرز مشکوکی در حال استفاده شدن هستند، میتوانید با کلیک روی زبانه «Processes»، فهرستی از نرمافزارهای در حال کار را مشاهده کنید. در اینجا با کلیک روی سرستون CPU، اپلیکیشنها به ترتیب مقدار استفاده از پردازنده مرتب خواهند شد.
اگر در ردیفهای بالا نرمافزارهای اضافی یا فرhیندهایی را میبینید که مورد استفاده شما نیستند، روی آنها کلیک راست کنید و «End Process» را بزنید. البته اگر نرمافزار اضافهای نمیبینید و پردازنده همواره در حداکثر توان خود قرار دارد، احتمالاً وقت ارتقای سیستم یا حداقل افزایش حافظه رم رسیده است.
بستن *نام و نام خانوادگی * پست الکترونیک * متن پیام |