ARM از جدیدترین طراحی پردازنده خود با نام Cortex-A77 رونمایی کرد. مانند Cortex-A76 سال گذشته، این هسته برای کارهای پیشرفته در گوشیهای هوشمند و دستگاههای مختلف طراحی شده است. در آن، توسعهدهنده قصد دارد تعداد دستورالعملهای اجرا شده در هر ساعت (IPC) را افزایش دهد. سرعت ساعت و مصرف انرژی تقریباً در سطح Cortex-A76 باقی مانده است.
در حال حاضر، ARM قصد دارد به سرعت عملکرد هسته های خود را افزایش دهد. طبق برنامه ریزی های خود، از Cortex-A73 2016 و تا طراحی 2020 Hercules، این شرکت قصد دارد قدرت پردازنده را تا 2,5 برابر افزایش دهد. در حال حاضر انتقال از 16 نانومتر به 10 نانومتر و سپس به 7 نانومتر امکان افزایش فرکانس ساعت را فراهم کرده است و در ترکیب با معماری Cortex-A75 و سپس Cortex-A76، طبق برآورد ARM، افزایش 1,8 برابری عملکرد تا به امروز به دست آمده است. اکنون هسته Cortex-A77 به دلیل افزایش IPC اجازه می دهد تا عملکرد را تا 20 درصد دیگر در همان فرکانس ساعت افزایش دهد. یعنی افزایش 2,5 برابری در سال 2020 کاملا واقعی می شود.
با وجود افزایش 20 درصدی IPC، ARM تخمین می زند که مصرف برق A77 افزایش نیافته است. نقطه مقابل در این مورد این است که منطقه تراشه A77 تقریباً 17٪ بزرگتر از A76 در همان استانداردهای پردازشی است. در نتیجه، هزینه یک هسته جداگانه کمی افزایش می یابد. اگر دستاوردهای ARM را با پیشروان صنعت مقایسه کنیم، شایان ذکر است که AMD در Zen 2 به افزایش IPC 15 درصدی نسبت به Zen+ دست یافته است، در حالی که ارزش IPC هسته های اینتل برای چندین سال تقریباً ثابت مانده است.
پنجره اجرای تغییر ترتیب دستورات (اندازه پنجره خارج از دستور) 25 درصد افزایش یافته و به 160 واحد رسیده است که به هسته اجازه می دهد تا موازی محاسبات را افزایش دهد. حتی Cortex-A76 دارای یک Branch Target Buffer بزرگ بود و Cortex-A77 آن را تا 33 درصد دیگر به 8 کیلوبایت افزایش داد که به واحد پیشبینی شاخه اجازه میدهد تا به طور مؤثر با افزایش تعداد دستورالعملهای موازی مقابله کند.
یک نوآوری جالب تر، یک کش کاملاً جدید 1,5 کیلوبایتی است که عملیات ماکرو (MOPs) بازگشتی از ماژول رمزگشایی را ذخیره می کند. معماری پردازنده ARM دستورالعملها را از برنامه کاربر به عملیاتهای کلان کوچکتر رمزگشایی میکند و سپس آنها را به عملیاتهای خرد تقسیم میکند که به هسته اجرایی ارسال میشوند. حافظه پنهان MOP برای کاهش تأثیر شاخهها و فلاشهای از دست رفته استفاده میشود، زیرا عملیات ماکرو اکنون در یک بلوک جداگانه ذخیره میشوند و نیازی به رمزگشایی مجدد ندارند - در نتیجه توان عملیاتی هسته کلی افزایش مییابد. در برخی از بارهای کاری، بلوک جدید یک افزونه بسیار مفید به حافظه پنهان دستورالعمل استاندارد است.
بلوک چهارم ALU و بلوک دوم شاخه به هسته اجرا اضافه شده است. چهارمین ALU با فعال کردن دستورالعمل های تک چرخه (مانند ADD و SUB) و عملیات عدد صحیح فشاری مانند ضرب، توان پردازشی کلی پردازنده را 1,5 برابر افزایش می دهد. دو ALU دیگر فقط میتوانند دستورالعملهای پایه تک چرخه را مدیریت کنند، در حالی که آخرین بلوک با عملیات ریاضی پیچیدهتر مانند تقسیم، ضرب-انباشت و غیره بارگذاری میشود. یک بلوک شاخه دوم در هسته اجرایی تعداد انتقالهای شاخه همزمان را دو برابر میکند. هسته می تواند کار را انجام دهد، که در مواردی مفید است که دو دستور از شش دستور ارسال شده مربوط به انتقال شاخه باشد. آزمایش داخلی در ARM مزایای عملکرد استفاده از این بلوک شعبه دوم را نشان داده است.
سایر تغییرات هسته شامل افزودن خط لوله رمزگذاری دوم AES، افزایش پهنای باند حافظه، موتور پیش واکشی داده های نسل بعدی بهبود یافته برای بهبود بهره وری انرژی و در عین حال افزایش توان DRAM سیستم، بهینه سازی حافظه نهان و موارد دیگر است.
بزرگترین دستاوردها در Cortex-A77 در عملیات اعداد صحیح و ممیز شناور دیده می شود. این مورد توسط معیارهای SPEC داخلی ARM پشتیبانی میشود که به ترتیب عملکرد 20% و 35% را در عملیات اعداد صحیح و ممیز شناور نشان میدهند. بهبود پهنای باند حافظه در محدوده 15 تا 20 درصد است. به طور کلی، بهینه سازی ها و تغییرات در A77 به طور متوسط 20 درصد افزایش عملکرد را نسبت به نسل قبلی نشان می دهد. با هنجارهای فناوری جدیدتر مانند ULV 7 نانومتری، می توانیم مزایای بیشتری در تراشه های نهایی به دست آوریم.
ARM Cortex-A77 را برای کار در ترکیب 4+4 big.LITTLE (4 هسته قدرتمند و 4 هسته ساده کم مصرف) توسعه داد. اما با توجه به افزایش مساحت معماری جدید، بسیاری از تولیدکنندگان به منظور صرفه جویی در هزینه، می توانند ترکیبات 1+3+4 یا 2+2+4 را معرفی کنند که در حال حاضر به طور فعال تمرین می شود، که در آن تنها یک یا دو هسته انجام می شود. A77 کامل و بدون برش باشد.
منبع: 3dnews.ru