تک ۲۴تک ۲۴تک ۲۴
  • خانه
  • اخبار
    • اخبار گجت ها
    • اخبار داخلی
    • اخبار گوشی و تبلت
  • گوشی موبایل
  • آموزش و مقالات
    • آموزشهای اندروید
    • آموزشهای اپل
    • راهنمای خرید
    • کامپیوتر و اینترنت
  • خودرو
  • نرم افزار موبایل
    • بازی موبایل
    • برنامه آندروید
    • برنامه آیفون
  • نقد و بررسی
    • سخت افزار
    • موبایل و تبلت
  • درباره ما
  • تبلیغات در تک 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

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

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

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

آخرین مطالب

جیلبریک آیفون ۱۸ پرو مکس
آیفون ۱۸ پرو مکس اپل با حالت امنیتی Lockdown Mode جیلبریک شد!
اخبار اخبار گوشی و تبلت
هکرهای کره شمالی
هکرهای کره شمالی با مصاحبه جعلی، ۶.۳ میلیارد دلار از بایننس دزدیدند!
اخبار
محدودیت کلاد کد
از این پس با هوش مصنوعی Claude Code نمی‌توانید بازی‌ها را مهندسی معکوس کنید!
اخبار
فروش آنلاین طلا
رونمایی از پرونده کلاهبرداری بزرگ در فروش آنلاین طلا با ۴۲۹ شاکی در قوه قضاییه!
اخبار داخلی
وال‌گلد
از اولین کاربر تا امروز؛ وال‌گلد چگونه اعتماد بازار طلا را جلب کرد؟
رپورتاژ آگهی
هوش مصنوعی ربات‌ها
رقابت تازه چین و آمریکا؛ این بار بر سر مغز ربات‌های هوش مصنوعی
اخبار
قرارداد بزرگ OpenAI با غول نفتی امارات
قرارداد بزرگ OpenAI با غول نفتی امارات؛ هوش مصنوعی به قلب صنعت انرژی می‌رود
اخبار
اپلیکیشن تیک‌تاک
تیک‌تاک به سوپر اپلیکیشن همه‌کاره تبدیل می‌شود؛ از پرداخت تا رزرو هتل
نرم افزار موبایل

پربازدیدها

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

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

  • آنر وین 2 صدرنشین قدرتمندترین گوشی‌های اندرویدی AnTuTu در اکتبر شد
  • رجیستری گوشی‌های مسافری تغییر می‌کند؛ سه شرط جدید اعلام شد
  • سامسونگ سری گلکسی S27 را با سه پردازنده متفاوت عرضه می‌کند!
  • مشخصات دوربین خانواده تاشو گلکسی Z Fold 9 سامسونگ فاش شد
  • آپدیت One UI 9.0 با اندروید 17 به گوشی اقتصادی گلکسی A15 آمد
  • مشخصات احتمالی گلکسی A58 فاش شد؛ از شارژ 45 واتی تا دوربین 50 مگاپیکسلی
  • 13 چیزی که می‌توانید به پورت USB-C آیفون خود متصل کنید
  • صف طولانی درخواست تعمیر آیفون دوئو؛ آبروریزی بزرگ اپل در راه است؟
  • گلکسی S27 پرو و اولترا سامسونگ به نسخه ارتقایافته نمایشگر حریم خصوصی مجهز می‌شوند
  • آنر مشغول تست یک گوشی با باتری ۱۵،۰۰۰ میلی‌آمپری و شارژدهی ۷ روزه است!

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

  • انتخاب شمع با درجه حرارتی نامناسب چه پیامدهایی برای موتور دارد؟
  • شاسی‌بلند لینکلن Aviator EX8 ساخت چین با موتور پلاگین هیبرید و لیدار معرفی شد
  • شرایط فروش پیکاپ مکسوس استار H همراه با افزایش قیمت اعلام شد – آبان 1405
  • هیوندای: بزرگترین چالش خودروهای هیدروژنی، یافتن مشتری است
  • شرایط فروش خودروهای وارداتی ماموت خودرو در منطقه آزاد انزلی – آبان 1405
  • هوندا CR-V هیبرید 2026 با اروین خودرو وارد بازار ایران می‌شود
  • کانسپت MTN 550 Recon در نمایشگاه SEMA معرفی شد؛ تبدیل لکسوس GX550 به هیولای آفرودی

خوراک RSS: علم و دانش از گجت نیوز علم و دانش از گجت نیوز

  • اپل درباره خطرات هوش مصنوعی خودمختار و خارج شدن آن از کنترل هشدار داد
  • چگونه تشخیص دهیم یک فایل صوتی توسط هوش مصنوعی تولید شده است؟
  • سلول‌های خون دایناسورها در فسیل 115 میلیون ساله کشف شدند
  • جام لیکورگوس؛ شیشه جادویی رومیان باستان که بعد از ۱۷ قرن هنوز هم شگفت‌انگیز است
  • هابل و جیمز وب راز جهان‌های باستانی منظومه شمسی را فاش کردند
  • آنتروپیک می‌خواهد از هوش مصنوعی کلاود برای کشف داروهای نجات‌بخش استفاده کند
  • ۵۰ نفر دنیای پس از مرگ را نقاشی کردند؛ نتیجه دانشمندان را شگفت‌زده کرد

خوراک RSS: ویژه‌های گجت نیوز ویژه‌های گجت نیوز

  • تکان‌دهنده‌ترین فیلم‌های قرن بیست و یک؛ ۱۰ اثری که روح شما را به چالش می‌کشند
  • بهترین‌های مسابقه عکاسی پهپادی ۲۰۲۶ سیه‌نا؛ تماشای جهان از زاویه‌ای کاملا جدید
  • فهرست نامزدهای خودروی سال اروپا ۲۰۲۷ منتشر شد؛ غیبت عجیب چینی‌ها و یکه‌تازی برقی‌ها
  • ۱۱ واقعیت تکان‌دهنده فضا؛ دیگر هرگز به آسمان شب مثل سابق نگاه نخواهید کرد
  • هک ۲.۷۷ میلیارد دلاری بایننس؛ بزرگ‌ترین صرافی رمزارز جهان درگیر بحران امنیتی شد
  • ادعای چین: جنگنده رادارگریز J-20S قادر به غرق کردن ناوهای هواپیمابر آمریکاست
  • اپل از اولین مک‌بوک پرو لمسی با نمایشگر OLED رونمایی کرد
  • ایران تنها کشور جهان با جنگنده‌های F-14 تامکت؛ داستان یک میراث نظامی
  • تویوتا کرولا ۶۰ ساله شد؛ نگاهی تصویری به ۱۲ نسل پرفروش‌ترین خودرو جهان
  • ۱۰ مکان واقعی با تاریخچه‌هایی که از افسانه‌ها هم شگفت‌انگیزترند
تمامی حقوق برای تک ۲۴ محفوظ است.
Welcome Back!

Sign in to your account

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