تک ۲۴تک ۲۴تک ۲۴
  • خانه
  • اخبار
    • اخبار گجت ها
    • اخبار داخلی
    • اخبار گوشی و تبلت
  • گوشی موبایل
  • آموزش و مقالات
    • آموزشهای اندروید
    • آموزشهای اپل
    • راهنمای خرید
    • کامپیوتر و اینترنت
  • خودرو
  • نرم افزار موبایل
    • بازی موبایل
    • برنامه آندروید
    • برنامه آیفون
  • نقد و بررسی
    • سخت افزار
    • موبایل و تبلت
  • درباره ما
  • تبلیغات در تک 24
جستجو
تمام حقوق برای رسانه تک ۲۴ محفوظ است.
در حال خواندن: درون مغز کامپیوتر؛ پردازنده چگونه دستورات را اجرا می‌کند؟
به اشتراک گذاری
تغییر سایز فونتاندازه متن
تک ۲۴تک ۲۴
تغییر سایز فونتاندازه متن
  • تبلیغات
  • تماس با ما
جستجو
  • خانه
  • اخبار
    • اخبار گجت ها
    • اخبار داخلی
    • اخبار گوشی و تبلت
  • گوشی موبایل
  • آموزش و مقالات
    • آموزشهای اندروید
    • آموزشهای اپل
    • راهنمای خرید
    • کامپیوتر و اینترنت
  • خودرو
  • نرم افزار موبایل
    • بازی موبایل
    • برنامه آندروید
    • برنامه آیفون
  • نقد و بررسی
    • سخت افزار
    • موبایل و تبلت
  • درباره ما
  • تبلیغات در تک 24
ما را دنبال کنید
© 2022 Foxiz News Network. Ruby Design Company. All Rights Reserved.
آموزش و مقالات

درون مغز کامپیوتر؛ پردازنده چگونه دستورات را اجرا می‌کند؟

منتشر شده 25 تیر 1399 ساعت 02:28 زمان مطالعه: 13 دقیقه
به اشتراک گذاری

بار محاسبه و پردازش حجم بسیار عظیمی از اطلاعات به دوش کامپیوتر ها کشیده می‌شود. اما مغز یک کامپیوتر یا همان پردازنده ی آن چطور این اطلاعات را پردازش می‌کند؟

ساده ترین توضیحی که برای نحوه کارکرد پردازنده می‌توان ارائه کرد آن است که با دنبال کردن مجموعه‌ای از دستورات، عملیات‌های خاصی را روی ورودی ترتیب می‌دهد. زمانی که می‌خواهید یک برنامه، بازی یا حتی خود سیستم عامل را اجرا کنید، این موارد در قالب دستورالعمل‌هایی از رم وارد پردازنده شده و در ساده‌ترین حالت به صورت تک تک تا پایان برنامه اجرا می‌شوند.

برنامه‌هایی که در زبان‌های سطح بالا مثل ++C و پایتون نوشته شده‌اند، در حالت عادی برای پردازنده قابل درک نیستند، بنابراین ابتدا به عنوان بخشی از «معماری مجموعه دستورات» یا « ISA» به دستورالعمل‌های سطح پایینی در زبان اسمبلی کامپایل می‌شوند. ISA نه یک بخش فیزیکی مثل حافظه کش بلکه دستوراتی است که نحوه پردازش، ارتباط با رم و اجرای برنامه‌ها را مشخص می‌سازد.

متداول ترین نوع ISA شامل معماری x86, MIPS, ARM, RISC-V و PowerPC می‌شود. همانطور که سینتکس دو برنامه یکسان در زبان‌های برنامه نویسی مختلف با هم فرق دارد، هر ISA هم دارای سینتکس خاصی است.

ISAها را می‌توان به دو گروه عمده با طول ثابت و متغیر تقسیم کرد. ISA برای RISC یا همان «مجموعه دستورات ساده شده» از دستورات با طول ثابت استفاده می‌کند و در آن تعدادی معین از بیت‌ها در هر دستورالعمل، نوع دستورات را مشخص می‌کنند اما معماری x86 از دستورات با طول متغیر استفاده می‌کند و به همین خاطر دکودر دستورات در پردازنده‌های مبتنی بر این معماری پیچیده‌ترین بخش در کل طراحی است.

اجرای یک دستور دارای چند بخش اساسی است که درون پردازنده طی مراحل مختلفی انجام می‌شوند. اولین مرحله دریافت دستورات از رم و دومین مرحله رمزگشایی آن برای تعیین نوع دستور است چرا که دستورات به انواع بسیار مختلفی مثل حسابی، انشعابی، حافظه‌ای و غیره تقسیم می‌شوند. پس از تعیین نوع نوبت به جمع آوری عملوندها از رم یا رجیستر CPU می‌رسد.

اگر مثلا دستور جمع A و B باشد، تا زمانی که مقادیر آنها مشخص نشود نمی‌توان اینکار را انجام داد. اغلب پردازنده‌های مدرن ۶۴ بیتی هستند بدین معنا که اندازه هر مقدار داده ۶۴ بیت است. پس از انجام محاسبه می‌توان آنرا در رم یا رجیستر داخلی پردازنده ذخیره کرد. در مرحله بعد CPU حالت چند عنصر مختلف را به روز کرده و سراغ دستور بعدی می‌رود.

روال کار البته به این راحتی نیست و آنرا به ساده‌ترین شکل توضیح دادیم وگرنه در پردازنده‌های این چند ساله هر محله به ۲۰ بخش هم تقسیم می‌شود تا بازده کار بالاتر برود. این مدل معمولا «پایپ‌لاین» به معنی خط لوله نامیده می‌شود چون پر شدن آن مثل لوله‌ای حاوی مایع کمی زمان می‌برد اما پس از تکمیل روند جریانی ثابت از خروجی خواهیم داشت.

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

یکی از ترفندها برای افزایش سرعت معماری « سوپر اسکالر» است که به پردازنده اجازه می‌دهد در هر سطح از پایپ‌لاین همزمان دستورات زیادی را اجرا کند. پردازنده بدین منظور باید از هر سطح پایپ‌لاین چندین کپی درون خود داشته باشد. در این حالت اگر CPU تشخیص دهد دو دستور آماده اجرا هستند و بین آنها هیچ وابستگی وجود ندارد، به جای آنکه منتظر تمام شدن جداگانه آنها بماند، هر دو را در یک زمان اجرا می‌کند.

یکی از روش‌های مرسوم در پیاده سازی سوپر اسکالر، چند رشته‌ای همزمان یا SMT است که به عنوان هایپر ثردینگ هم شناخته می‌شود. پردازنده‌های اینتل و AMD در حال حاضر از SMT دو مسیره پشتیبانی می‌کنند اما IBM تراشه‌هایی را توسعه داده که قادر به پشتیبانی از IBM هشت مسیره هم هستند.

پردازنده برای اجرای دقیق این روندها به اجزایی بیشتر از هسته نیاز دارد. در هر CPU با میلیاردها ترانزیستور از نوع pMOS و nMOS صدها ماژول مجزا وجود دارد که هر کدام برای هدف خاصی طراحی شده‌اند. طبیعتا بررسی همه این عناصر از حوصله این مطلب خارج است و تنها به بخش‌های مهمتر می‌پردازیم. دو عنصر اصلی و مهم هر پردازنده کش و پیش‌بینی کننده انشعاب یا پرش است که در ادامه بیشتر درباره آنها توضیح می‌دهیم. از دیگر اجزای مهم دیگر باید به بافر رکوردر، واحد محاسبه و منطق (ALU)، جداول RAT و ایستگاه‌های رزرو اشاره کرد.

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

پردازنده‌ها معمولا دارای ۳ سطح کش هستند که از آن با عنوان سلسله مراتب حافظه یاد می‌شود. کش سطح اول یا L1 کوچکترین و سریع‌ترین است، L2 در میانه قرار گرفته و در نهایت L3 بزرگترین و کندترین سطح بین ‌کش‌ها است. در سلسله مراتب حافظه بالاتر از کش‌ها رجیسترهای کوچکی قرار گرفته‌اند که تنها برای ذخیره مقادیر واحد داده طی محاسبه بکار می‌روند. در سیستم شما این رجیسترها سریع ترین واحد ذخیره سازی هستند. زمانی که کامپایلر برنامه‌های سطح بالا را به زبان اسمبلی تبدیل می‌کند، بهترین روش برای استفاده از رجیسترها را نیز معین خواهد کرد. در ساخت حافظه کش و رجیسترها معمولا از SRAM استفاده می‌شود که خود آن با استفاده از چند ترانزیستور طراحی می‌شود.

در پردازنده‌های رایج هر هسته دارای دو کش L1 است که یکی برای داده و دیگری برای دستورات به کار می‌رود. کش‌های L1 حدود ۱۰۰ کیلو بایت ظرفیت دارند اما در نسل‌های مختلف این مقدار متغیر است. هر هسته همچنین دارای یک کش L2 است اما در برخی معماری‌ها دو هسته به صورت مشترک از یک کش L2 چند صد کیلوبایتی استفاده می‌کنند. در نهایت تمام هسته‌ها به صورت مشترک از یک کش سطح ۳ استفاده می‌کنند که چند ده مگابایت ظرفیت دارد.

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

حین واکشی اطلاعات توسط CPU، ابتدا وجود داده در کش L1 بررسی می‌شود. در صورتی که جواب مثبت باشد، داده تنها طی چند سیکل در دسترس قرار می‌گیرد اما در غیر این صورت، به ترتیب کش‌های L2 و L3 بررسی می‌شوند. ساختار کش‌ها به گونه‌ای پیاده شده که برای هسته کاملا شفاف باشد. زمانی که هسته خواستار دریافت داده از آدرس خاصی در حافظه می‌شود، هر سطح از سلسله مراتب که دارای آن باشد پاسخ خواهد داد. با هر سطح پایین رفتن در سلسله مراتب سرعت کاهش یافته و تاخیر بیشتر می‌شود، تنها در صورتی که داده مورد نظر در کش نباشد، پردازنده به سراغ رم خواهد رفت.

همانطور که گفتیم جدای از کش یک بخش کلیدی دیگر به نام پیش‌بینی کننده انشعاب یا پرش در پردازنده وجود دارد. دستورات انشعاب شبیه به گزاره «اگر» هستند، بدین صورت که اگر یک شرط خاص برقرار باشد مجموعه‌ای از دستورات و اگر آن شرط برقرار نباشد، مجموعه دیگری از دستورات توسط پردازنده اجرا می‌شوند. برای مثال دو عدد را با هم مقایسه می‌کنید و اگر برابر بودند یک دستور و اگر برابر نبودند یک دستور دیگر اجرا می‌شوند. انشعاب‌ها در دنیای کامپیوتر بسیار رایجند و تقریبا ۲۰ درصد از کل دستورات یک برنامه را شامل می‌شوند.

شاید در نگاه اول انشعاب بسیار ابتدایی به نظر برسد اما برای پردازنده‌ها بسیار چالش برانگیز هستند چرا که گاهی CPU باید به صورت همزمان ۱۰ تا ۲۰ دستور را به صورت همزمان اجرا کند و در این سناریو تشخیص درست انشعاب و انتخاب شرط بر اساس آن بسیار مهم است. تعیین اینکه یک دستور از نوع انشعاب است حدود ۵ سیکل و تعیین درست بودن شرط هم به ۱۰ سیکل دیگر نیاز دارد. در این زمان پردازنده ممکن است اجرای ده‌ها دستور اضافی را شروع کرده باشد، بدون اینکه از سازگاری آن با انشعاب مطمئن باشد.

پردازنده‌های مدرن برای غلبه بر این مشکل از تکنیک حدس و گمان استفاده می‌کنند.در این تکنیک پردازنده دستورات انشعاب را رهگیری کرده و دریافت یک انشعاب خاص را حدس میزند. اگر حدس درست از آب درآید، پردازنده از قبل دستورات متعاقب آنرا شروع کرده و در نتیجه کار سریعتر پیش می‌رود.  اما اگر حدس غلط باشد، پردازنده اجرا را متوقف کرده، تمام دستورات اشتباه را حذف کرده و کار را از نقطه درست دنبال می‌کند.

پیش بینی کننده انشعاب یکی از فرم‌های اولیه یادگیری ماشین است چرا که رفتار انشعاب را در طول اجرا یاد می‌گیرد و در صورتی که دفعات زیادی پیش بینی نادرست باشد، شروع به یادگرفتن رفتار درست می‌کند. ده‌ها تحقیق در مورد این تکنیک باعث شده پردازنده‌های امروزی با دقت بالای ۹۰ درصد رفتار انشعاب را پیش بینی کنند.

حدس و گمان با تمام مزایایی که دارد، سیستم را در معرض ریسک‌های امنیتی قرار می‌دهد. حمله معروف اسپکتر که مدت‌ها نقل محافل کامپیوتری بود از باگ‌هایی در پیش بینی کننده انشعاب و حدس و گمان سوءاستفاده می‌کند. برای رفع این آسیب پذیری چاره‌ای جز باز طراحی سیستم حدس و گمان نبود که علی رغم کاهش نسبی کارایی، مانع نشت اطلاعات می‌شود.

معماری مورد استفاده از پردازنده‌ها طی ده‌های گذشته تغییرات بسیاری به خود دیده و نوآوری‌ها باعث شده کارایی آن و سرعت محاسبات به شکلی باورنکردنی ارتقا پیدا کند. فضای شدیدا رقابتی باعث شده تولیدکنندگان پردازنده در مورد سازوکار محصولاتشان مخفی کاری کنند و به همین خاطر تشخیص کل سازوکار محاسبات درون پردازنده ناممکن است با این حال همه شرکت‌ها از جمله اینتل و AMD تقریبا از روش یکسانی پیروی می‌کنند که که در این مطلب شرح داده شد.

 

منبع: techspot

تگ شده: پردازنده, کامپیوتر
مطلب قبلی سامسونگ، اپل را ۹۵۰ میلیون دلار جریمه کرد
مطلب بعدی فیلم های عاشقانه در دنیای فیلم های عاشقانه‌ قدم بردارید
نظر بدهید نظر بدهید

دیدگاهتان را بنویسید لغو پاسخ

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

آخرین مطالب

طرح لیزینگ پلی استیشن ۵
سونی طرح لیزینگ پلی استیشن ۵ را آغاز کرد؛ با اجاره، صاحب کنسول شوید
اخبار اخبار گجت ها
هوش مصنوعی در اسپاتیفای
پایان عصر مهندسان در اسپاتیفای؛ اخراج گسترده برنامه‌نویسان و جایگزینی با هوش مصنوعی
اخبار
بازنشستگی مدل GPT-4o
خداحافظی رسمی با محبوب‌ترین مدل هوش مصنوعی؛ جی‌پی‌تی ۴ او بازنشسته شد
دسته‌بندی نشده
شوک قیمتی در بازار لوازم خانگی
شوک قیمتی در بازار لوازم خانگی؛ چرا تولیدکنندگان داخلی به بن‌بست رسیدند؟
اخبار داخلی
تعرفه واردات گوشی
مجلس با افزایش تعرفه واردات گوشی مخالفت کرد؛ تثبیت قیمت پرچمدارها در سال ۱۴۰۴
اخبار اخبار داخلی اخبار گوشی و تبلت
تیک آبی ایکس
شوک ایلان ماسک به مسئولان ایرانی؛ تیک آبی ایکس از دسترس خارج شد
اخبار اخبار داخلی
ویهان گیم
معرفی وبسایت ویهان گیم | خرید مطمئن، تحویل سریع، پشتیبانی واقعی
رپورتاژ آگهی
اجرای ویندوز ۹۸ روی توستر
توستر خلاقانه‌ای که ویندوز ۹۸ را اجرا می‌کند!
اخبار اخبار گجت ها

پربازدیدها

حل مشکل شارژ نشدن گوشی موبایل
حل مشکل شارژ نشدن گوشی موبایل
آموزش و مقالات
روت کردن گوشی آندروید
5 دلیل برای اینکه نباید گوشی آندروید خود را روت کنید !
آموزشهای اندروید
بازگرداندن پیام ها و اس ام اس های پاک شده
بازگرداندن پیام های پاک شده در گوشی آندروید
آموزشهای اندروید
شکایت از مزاحمین تلفنی ایرانسل
شکایت از مزاحم تلفنی ایرانسل
ایرانسل
بدست آوردن کد امنیتی گوشی های نوکیا
نحوه ی بدست آوردن آسان کد امنیتی مادر گوشی های نوکیا
آموزش و مقالات

RSS اخبار موبایل از گجت نیوز

  • معرفی ۵ گوشی برتر اندرویدی سال ۲۰۲۶ با پشتیبانی از کارت MicroSD
  • گوشی Lava Yuva Star 3 با صفحه نمایش 90 هرتزی، استاندارد IP64 و چیپست Unisoc معرفی شد
  • منتظر گلکسی زد فولد ۹ باشید؛ سامسونگ ساخت نسل‌های آینده گوشی‌های تاشو را کلید زد
  • جهش بزرگ اپل در سال ۲۰۲۶؛ آیفون ۱۸ پرو به تراشه ۲ نانومتری مجهز می‌شود
  • سامسونگ با طراحی جدید گلکسی زد فولد به جنگ نمایشگرهای باریک می‌رود
  • دوربین شیائومی ۱۷ اولترا موفق به شکست آیفون ۱۶ پرو مکس شد!
  • لیست ۷۰ گوشی شیائومی که آپدیت اندروید ۱۷ را دریافت می‌کنند فاش شد
  • گلکسی آنپکد فوریه ۲۰۲۶؛ آغاز عصری تازه از گوشی‌های هوشمند با قدرت هوش مصنوعی
  • گوشی تکنو Pova Curve 2 با باتری 8000 میلی‌آمپر‌ساعتی و صفحه نمایش خمیده 6.78 اینچی معرفی شد
  • طراحی آیفون 17e در ویدیوی جدید پیش از عرضه فاش شد

RSS اخبار خودرو از گجت نیوز

  • 10 خودروی عضلانی که تمام قوانین را زیر پا گذاشتند و به اسطوره تبدیل شدند
  • نسل بعدی فیات Topolino، خودروی کوچک و ماژولاری که می‌تواند به کوپه یا رودستر تبدیل شود
  • ایران خودرو عرضه خودروهای مدل 1405 را آغاز کرد
  • کرمان موتور از هاچ‌بک ملی کی ام سی شدو رونمایی کرد
  • شرایط فروش کیا اسپورتیج 2025 کوشا خودرو در بهمن 1404 اعلام شد
  • شرایط پیش فروش وانت زامیاد EX در بهمن 1404 اعلام شد
  • مجلس حقوق گمرکی واردات خودرو در سال 1405 را تعیین کرد

RSS علم و دانش از گجت نیوز

  • چین با استخراج 1 کیلوگرم اورانیوم از آب دریا به دنبال تحقق رویای انرژی نامحدود است
  • سفری به دنیای ذرات: فینالیست‌های مسابقه عکاسی فیزیک جهانی ۲۰۲۵
  • کشف رمز جاودانگی: چگونه ژله‌ماهی نامیرا می‌تواند کلید حیات ابدی انسان باشد؟
  • تاریک‌ترین هشدار استیون هاوکینگ: انسان باید قبل از وقوع فاجعه از زمین خارج شود
  • داگ‌فایت جنگنده با یوفو: وقتی یک خلبان P‑51 با یک شی ناشناس در آسمان 27 دقیقه جنگید
  • سنگ ۸۰۰ تنی ژاپن: یادگار پنهان تاریخ یا نشانه‌ای از ملاقات با فرازمینی‌ها؟
  • طبق تحقیقات جدید،‌ زندگی در فضا باعث تغییر فیزیکی مغز شما می‌شود!

RSS ویژه‌های گجت نیوز

  • بلک‌برد SR-71؛ هواپیمای جاسوسی مافوق صوتی که حتی از سرعت چرخش زمین هم فراتر رفت!
  • تاریک‌ترین هشدار استیون هاوکینگ: انسان باید قبل از وقوع فاجعه از زمین خارج شود
  • داگ‌فایت جنگنده با یوفو: وقتی یک خلبان P‑51 با یک شی ناشناس در آسمان 27 دقیقه جنگید
  • آیا برنامه جنگنده F-35 واقعا ارزش 2 تریلیون دلار هزینه را دارد؟
  • ادعای رسانه عبری: چین موشک‌های بالستیک دانگ فنگ 17 را به ایران داده است
  • معرفی ۱۰ فیلم شاهکار ژانر وحشت دهه 2020 که مرزهای ترس را جابه‌جا کردند
  • دوربین شیائومی ۱۷ اولترا موفق به شکست آیفون ۱۶ پرو مکس شد!
  • اعترافات جنجالی اوباما: موجودات فضایی وجود دارند و ویدیو یوفوها واقعی است!
  • حذف تیک آبی مقامات ایرانی از شبکه اجتماعی ایکس
  • جنگنده رادارگریز چینی J-20 تا سال ۲۰۳۰ آماده نبرد می‌شوند
تمامی حقوق برای تک ۲۴ محفوظ است.
Welcome Back!

Sign in to your account

پسورد خود را فراموش کرده‌اید؟