در ، تخصصی است که جریان پویای معروف به . با ذخیره ردیابی دستورالعمل هایی که قبلاً واکشی و رمزگشایی شده‌اند ، واکشی دستورالعمل و کاهش مصرف برق (در مورد ) کمک می کند. معماری است که در اطراف حافظه پنهان ردیابی طراحی شده است و دستورالعمل ها را در دانه دانه بودن سطح ردیابی پردازش می کند. نظریه رسمی ریاضی ردیابی توسط مونوئیدهای ردیابی توصیف می شود.
 اولین انتشار علمی حافظه پنهان ردیابی "Trace Cache: رویکردی با تأخیر کم برای واکشی دستورالعمل پهنای باند" بود. این مقاله که به طور گسترده مورد تأیید قرار گرفته است توسط اریک روتنبرگ ، استیو بنت و جیم اسمیت در کنفرانس بین‌المللی سمپوزیوم بین‌المللی ریز معماری (MICRO) در سال 1996 ارائه شد. انتشار قبلی ، اختراع ثبت شده 5381533 ایالات متحده توسط الکس پِلگ و یوری وایزر از اینتل ، "حافظه پنهان پویای دستورالعمل جریان پویا است که در اطراف بخشهای ردیابی مستقل از خط آدرس مجازی سازمان یافته است" ، ادامه برنامه ای که در سال 1992 ثبت شد ، بعداً رها شد.
 گسترده تر ، برای عملکرد بالاتر ، دستورالعمل های متعددی را می خواهند که در یک چرخه واحد واکشی شوند. دستورالعمل های واکشی به دلیل دستورالعمل های شاخه و پرش ،همیشه در مکان های حافظه مجاور ( ) نیستند. بنابراین پردازنده ها برای واکشی و هم ترازی چنین دستورالعمل هایی از بلوک های اساسی غیرهمجوار به پشتیبانی منطقی و سخت افزاری اضافی نیاز دارند. اگر چندین شاخه به عنوان پیش بینی شده باشد ، پردازنده ها می توانند دستورالعمل ها را از چندین بلوک اساسی مجاور در یک چرخه دریافت کنند. با این حال ، اگر هر یک از شاخه ها به عنوان پیش بینی شده باشد ، پردازنده باید دستورالعمل هایی را از مسیر طی شده در همان چرخه دریافت کند. این قابلیت واکشی پردازنده را محدود می کند.
 این چهار بلوک اساسی ( ، ، ، ) را همانطور که در شکل نشان داده شده است در نظر بگیرید که مربوط به یک است. این بلوک ذخیره خواهد شد به عنوان در حافظه است. اگر پیش بینی شود واحد واکشی می تواند بلوک های اصلی ، ، که به طور همزمان قرار می گیرند ، واکشی کند. با این حال ، اگر پیش بینی ، واحد واکشی باید ، ، که به طور غیر هم پیوسته قرار می گیرند ، واکشی کند. از این رو ، واکشی این بلوک ها که به طور ناپیوسته در یک چرخه قرار می گیرند بسیار دشوار خواهد بود. بنابراین ، در چنین موقعیت هایی حافظه پنهان ردیابی به پردازنده کمک می کند.
 حافظه نهان ردیابی پس از واکشی ، دستورالعمل ها را به ترتیب پویای خود ذخیره می کند. هنگامی که این دستورالعمل ها مجدداً مشاهده می شوند ، حافظه پنهان ردیابی به واحد واکشی دستورالعمل پردازنده اجازه می دهد تا چندین بلوک اساسی را بدون نگرانی از شاخه های موجود در جریان اجرا ، از آن دریافت کند. دستورالعمل ها یا پس از رمزگشایی یا پس از منقضی شدن ، در حافظه پنهان ردیابی ذخیره می شوند. اگرچه توالی دستورالعمل اگر فقط پس از مرحله رمزگشایی ذخیره شود ، حدسی است.
 یک ردیابی که توالی دستورالعمل پویا نیز نامیده می شود ، ورودی در حافظه پنهان ردیابی است. با و . ردیابی ها می توانند در هر دستورالعمل پویا شروع شوند. چندین ردیابی می تواند دارای همان دستورالعمل شروع ، یعنی همان اولین (PC) و دستورالعمل های مختلف از بلوک های مختلف به عنوان نتایج شاخه داشته باشد. برای شکل بالا ، ABC و ABD ردیابی معتبری هستند. هر دو با یک PC (آدرس A) شروع می شوند و طبق پیش بینی D ، بلوک های اساسی مختلفی دارند.
 ردیابی ها معمولاً در صورت وقوع یکی از موارد زیر خاتمه می یابند:
 
 
 
 
 یک ردیابی دارای اطلاعات زیر خواهد بود:
 
 
 
 
 در اینجا عواملی ذکر شده است که باید هنگام طراحی حافظه پنهان مورد بررسی قرار گیرند.
 
 
 
 
 حافظه پنهان در مسیر مهم واکشی دستورالعمل نیست 
 خطوط ردیابی بر اساس PC اولین دستورالعمل موجود در ردیابی و مجموعه پیش بینی های شاخه ، در حافظه پنهان ردیابی ذخیره می شوند. این امکان را برای ذخیره مسیرهای ردیابی مختلف فراهم می کند که از همان آدرس شروع می شوند ، هر کدام نتایج مختلف شاخه را نشان می دهند. این روش برچسب گذاری به ایجاد ارتباط مسیر به حافظه پنهان ردیابی کمک می کند. روش دیگر می تواند شامل تنها نگهداری اولین PC به عنوان برچسب در حافظه پنهان باشد. در مرحله واکشی دستورالعمل یک ، PC فعلی به همراه مجموعه ای از پیش بینی های شاخه در حافظه پنهان ردیابی برای بررسی می شود . اگر ضربه ای ایجاد شود ، یک خط ردیابی برای واحد واکشی ارائه می شود که برای این دستورالعمل ها نیازی به رفتن به حافظه پنهان معمولی یا حافظه نیست. حافظه پنهان ردیابی به تغذیه واحد واکشی ادامه می دهد تا زمانی که خط ردیابی به پایان برسد یا اینکه اشتباهی در خط لوله وجود داشته باشد. در صورت عدم وجود ، ردیابی جدید شروع به ساخت می کند.
 حافظه پنهان اجرای عملیات خرد حاصل از رمزگشایی ، همچنین عملکرد حافظه پنهان ریز عملکرد را فراهم می کند. با این وجود ، دفعه بعدی که یک دستورالعمل مورد نیاز است ، نیازی به رمزگشایی مجدد در ریز عملیات نیست. 
 معایب حافظه پنهان ردیابی عبارتند از:
 
 اینتل در حافظه پنهان L1 پردازنده های NetBurst ، حافظه پنهان ردیابی اجرا را در خود جای داده است. این عملیات رمزگشایی شده را ذخیره می کند ، بنابراین هنگام اجرای یک دستورالعمل جدید ، به جای واکشی و رمزگشایی مجدد دستورالعمل ، پردازنده مستقیماً از ردیابی حافظه پنهان به ریز رمزگشایی های رمزگشایی شده دسترسی پیدا می کند و در نتیجه باعث صرفه جویی در وقت قابل توجهی می شود. علاوه بر این ، ریز op ها در مسیر پیش بینی شده خود در حافظه پنهان می شوند ، به این معنی که وقتی دستورالعمل ها توسط CPU از حافظه پنهان واکشی می شوند ، آنها از قبل به ترتیب صحیح اجرا وجود دارند. اینتل بعداً مفهومی مشابه اما ساده تر با به نام (UOP cache) ارائه داد.
{"title": "ردیابی حافظه نهان", "link": "https://fa.wikipedia.org//w/index.php?title=%D8%B1%D8%AF%DB%8C%D8%A7%D8%A8%DB%8C_%D8%AD%D8%A7%D9%81%D8%B8%D9%87_%D9%86%D9%87%D8%A7%D9%86&oldid=32520037", "language": "fa"}