# إنتل إيتانيوم 2

المعالج إيتانيوم 2 هو المعالج الثاني لعائلة معالجات Itanium Processor Family (IPF)وظهر له عدة تحسينات مترافقة مع نماذج أخرى لنفس التصميم. تهدف معالجات الإيتانيوم إلى نقل تصميم المعالجات من معمارية Risc التقليدية إلى جيل جديد يتناسب مع التطلبات الكبيرة على المعالجة ضمن الحاسب. يعتمد بشكل صريح على مبدأ instruction-level parallelism.
هذه بعض مواصفات المعالج
* يعمل بتردد ساعة 733 MHz to 1.66 GHz
* سرعة الناقل الامامي FSB 300 MHz to 667 MHz
* عدد الأنوية 1 أو 2
* سرعة Bus المعالج 400–667 MHz
* نواة 180 nm - 90 nm حسب اختلاف التصاميم
* عدد الترانستورات 221 مليون
* الكاش: 256 kb من المستوى الثاني وما بين 1.5 إلى 24 MB في الاجيال الجديدة

## دعم EPIC

ان معمارية Risc جاءت للتقليل من التعقيد العتادي لتصاميم ال Cisc وبعد اجيال عديدة عدنا إلى نقطة أصبحت فيها معالجات Risc معقدة من ناحية التصميم العتادي.ونتيجة لذلك ظهرت عدة تقنيات للعودة إلى نقطة نخفف بها من تعقيد التصميم العتادي بالمقابل أداء أعلى وقابلية للتطور ومن هذه المعماريات ظهرت EPIC. يعمل إيتانيوم2 وفق مبدا (explicitly parallel instruction computing)EPIC التي تسمح للمعالج بان يقوم بتنفيذ عدة تعليمات في دورة واحدة. كما تقوم بتطبيق لمعمارية very long instruction word (VLIW).
الفائدة من EPIC : تقليل تعقيد تصميم العتاد وجعل المعالج يتفرغ لمعالجة امور أخرى نقل بعض تعقيدات التصميم العتادي إلى البرمجيات القابلة للتعديل. بالمقابل نجد زيادة تعقيد في تصميم المترجم compiler وطريقة تنفيذ التعليمات لهذا فقد خصص لهذا المعالج أنظمة تشغيل تستثمر قدرات EPIC كما في HP-UX وقد عملت شركة إنتل على تطوير مترجمات لتوافق بالعمل على منصة الإيتانيوم على سبيل المثال لا الحصر يوجد مترجمات GCC وMS Visual Studio 2005 والإصدارات التالية له. كانت هذه المترجمات قادرة على إعطاء machine code للإيتانيوم كما دعمت شركة HP برمجيات مفتوحة المصدر من اجل دعم مترجمات وبرمجيات قادرة على العمل مع منصات الإيتانيوم. لقد قامت هذه المعمارية بالتقدم على قصور معمارية معالجات Risc

## دعم SIMD

معمارية المعالج إيتانيوم2 تعرف نمط تفرعي SIMD لمعالجة عمليات الفاصلة العائمة مما يؤدي إلى تحسين الأداء بشكل ملحوظ لمعالجة المعطيات. بحيث تتحكم تعليمة مفردة للآلة في التنفيذ المتزامن لعدد من عناصر المعالجة وفق قاعدة الخطوة المتشابكة ولكل عنصر معالجة ذاكرة معطيات مرفقة به ولذا فإن كل تعليمة تنفذ على مجموعة متختلفة من المعطيات من قبل معالجات مختلفة

## الخصائص الهندسية لمعالجات إيتانيوم

لقد عمل معالج إيتانيوم2 على تحقيق بعض التقنيات predication, speculation, branch prediction كما يستعمل register renaming في هندسة المعالج
* التحسينات على مستوى ملف السجلات
* التحسينات على مستوى Branching القفز
* التحسينات على مستوى التعامل مع الذاكرة
* انابيب خط المعالجة
* التعامل مع الذاكرة الافتراضية
* إنتل إيتانيوم (9100) المستقبل

### التحسينات على مستوى ملف السجلات

* يتطلب استعمال الاجرائيات تعليمتين وهما تعليمة الاستدعاء call التي تنقل التنفيذ من الموضع الحالي إلى الاجراء المطلوب وتعليمة العودة return التي تعيد التنفيذ من الاجراء إلى المكان الذي استعديت منه وهاتان التعليمتان هما شكلان من اشكال تعليمات التفريع
* في البرمجة الإجرائية والغرضية التوجه وجد انه يتم استدعاء الإجرائيات بشكل متكرر ناهيك عن التبدلات الحاصلة في سجلات المعالج بشكل كبير نتيجة الاستدعاءات المتككرة حيث تاخذ وقت كبير من معالجة الحاسب. لذلك قام معالج إيتانيوم بايجاد سجل فيزيائي كبير Large physical integer register file stack يحوي 128 سجل بحيث يحوي 32 سجل fixed و96 سجل stacked
* كل استدعاء لإجرائية معينة يمكن ان تحجر إلى ما اقصاه 96 سجل من سجلات ال stacked بينما يمكنها الوصول إلى 32 سجل من سجلات fixed.كل سجل يملك register frame والذي يتميز بالليونة بالحجم على عكس معمارية Sparc.
* معظم استدعاءات الاجرائيات تتطلب القليل من السجلات الجديدة للحجز بحيث يمكن إجراء العديد من الاستدعاءات قبل أن يتم تجاوز الحد الاعظمي لعدد السجلات.
إذا انتهى المعالج من تنفيذ الاجرائية ولم يتم تجاوز الحد الاعظم من السجلات المذكورة آنفاً فلا يقوم بحجز مساحة من الذاكرة لتخزين وتحميل محتوى السجلات. هذه الطريقة فعالة جدا لتقلل من عمليات استدعاء تعليمات البرنامج آو الاجرائية من الذاكرة كل مرة وتسرع من عمل الاجرائية بنسبة احصائية 23%.
* يملك المعالج أيضا
128 سجل من اجل الارقام. 128 سجل للفاصلة العائمة. 64 one-bit للتنبؤ. 8 سجلات للتفرع.
* المعالج إيتانيوم مجهز Register Save Engine (RSE) بشكل عتادي
حيث مهمة ال RSE هي التعامل مع شروط ال overflow وال underflow في سجلات الارقام بشكل اوتوماتيكي عندما تستدعى اجرائية وتستنفذ عدد السجلات الفيزيائية المتاحة سيقوم RSE بتفريغ السجلات وحفظ السجلات القديمة ضمن الذاكرة.وفي حال تم استدعاء تلك الاجرائية مرة أخرى سيقوم RSE بشكل آلي باسترجاع القيم المناسبة من الذاكرة وحفظها ضمن السجلات (العتاد RSE متوفر حسب الطلب) بحيث يوجد بعض نماذج معالجات إيتانيوم 2 التي تدعم هذه الخاصية.

### التحسينات على مستوى Branching القفز

* يدعم المعالج إيتانيوم التنبؤ بالقفز Predication Branching بحيث يتوفر بعض العتاديات ضمن هذا المعالج التي توفر هذه الميزة والتي تهدف إلى تسريع عمل ال pipeline في حالة التفرعات بحيث ينفذ هذا المعالج قسمي الشرط فورا وعند تحقق احداها يتم تنفيذها بشكل مباشر وذلك لتسريع عمل المعالج. طبعا عند الحديث عن هذه الميزة يوجد لدينا نوعين من التفرع التفرع الأول يدعى if-conversion والذي هو بكل بساطة عبارة عن if –else فقط والتفرع المتعدد Multi-way branching كما في حالة Switch
* يدعم معالج الإيتانيوم 2 معالجة تفرعية تصل إلى 6 معالجات تنبؤية للتفرع في دورة واحدة. كأن يكون لدينا Switch وضمنها 6 خيارات ممكنة سيقوم معالج الإيتانيوم بتنفيذ التعليمات الست مباشرة منتظرا الانتقال إلى الحالة المنتقاة
* تضمن معالجات الإيتانيوم 2 64-bit من السجلات لدعم عمليات القفز حتى تسمح للمترجمات بتحديد مكان القفز قبل البدء بمعالجة تعليمة القفز branch instruction
* Loop branch control. تهدف هذه الخاصية إلى تسريع عمل الحلقات وهي مدعمة من إيتانيوم 2 وإيتانيوم1
* Early Branch Condition Testing
إن تقنية Epic تفصل ما بين شرط القفز وتعليمة القفز بحد ذاتها هذه الميزة تجعل اختبار القفز يتم باكراً حتى يسمح للعتاد بمعرفة الجهة الصحيحة لجهة القفز قبل أن تصل إلى تعليمة القفز.

### التحسينات على مستوى التعامل مع الذاكرة

لقد ظهرت محاولات عدة لتخفيف التحميل من وإلى الذاكرة فظهرت عملية التنبؤ ومحاولة الالتفاف بطرق برمجية للتقليل من عمليات التحميل والتخزين في ذاكرة النظام. ان عملية التنبؤ تهدف بشكل رئيسي إلى تخفيف الذهاب إلى ذاكرة النظام كونها مكلفة، لكن عاجلا ام آجلا سيتم الذهاب إلى الذاكرة واحضار المعطيات منها لهذا السبب قام مهندسو إنتل بالعمل على تحسينات مهمة على مستوى التعامل مع الذاكرة بسبب اهمية العملية. لهذا السبب فإن معالج إيتنايوم 2 يدعم بتقنية ال epic حلول برمجية وعتادية لتحقيق المطلوب بحيث يدعم المعالج العمليات التالية Control Speculation –Data Speculation

### انابيب خط المعالجة

انابيب خط المعالجة
* -يستطيع معالج إيتانيوم 2 معالجة 6 تعليمات بشكل عام في خط ال pipeline بحيث يحدد المعالج التعليمات بشكل مخصص ب 4 عمليات تعامل مع ذاكرة و6 عمليات ALU و4 عمليات على الارقام و6 عمليات تفرع و2 عملية فاصلة عائمة
* -يتالف انبوب معالجة المعالج من 8 مراحل

### التعامل مع الذاكرة الافتراضية

التعامل مع الذاكرة الافتراضية
* يملك 64 بت عنوان افتراضي Virtual Address
** يملك 50 بت عنوان فيزيائي Physical Address

## تفاصيل المعالج إيتانيوم2

الجدول التالي يوضح تفاصيل المعالج إيتانيوم1 وإيتانيوم2
| Codename process | released | Clock | L2 Cache/ core | L3 Cache/ core | Bus | dies/ device | cores/ die | واطs/ device | comments |
| Itanium ||||||||||
| Merced 180 nm | 2001-06 | 733 MHz | 96 KiB | none | 266 MHz | 1 | 1 | 116 | 2 مبيبايت off-die L3 cache |
| Merced 180 nm | 2001-06 | 800 MHz | 96 KiB | none | 266 MHz | 1 | 1 | 130 | 4 MiB off-die L3 cache |
| Itanium 2 ||||||||||
| McKinley 180 nm | 2002-07-08 | 900 MHz | 256 KiB | 1.5 MiB | 400 MHz | 1 | 1 | 130 | HW branchlong |
| McKinley 180 nm | 2002-07-08 | 1 GHz | 256 KiB | 3 MiB | 400 MHz | 1 | 1 | 130 | HW branchlong |
| Madison 130 nm | 2003-06-30 | 1.3 GHz | 256 KiB | 3 MiB | 400 MHz | 1 | 1 | 130 | |
| Madison 130 nm | 2003-06-30 | 1.4 GHz | 256 KiB | 4 MiB | 400 MHz | 1 | 1 | 130 | |
| Madison 130 nm | 2003-06-30 | 1.5 GHz | 256 KiB | 6 MiB | 400 MHz | 1 | 1 | 130 | |
| Madison 130 nm | 2003-09-08 | 1.4 GHz | 256 KiB | 1.5 MiB | 400 MHz | 1 | 1 | 130 | |
| Madison 130 nm | 2004-04 | 1.4 GHz | 256 KiB | 3 MiB | 400 MHz | 1 | 1 | 130 | |
| Madison 130 nm | 2004-04 | 1.6 GHz | 256 KiB | 3 MiB | 400 MHz | 1 | 1 | 130 | |
| Deerfield 130 nm | 2003-09-08 | 1.0 GHz | 256 KiB | 1.5 MiB | 400 MHz | 1 | 1 | 62 | Low voltage |
| Hondo 130 nm | 2004-Q1 | 1.1 GHz | 256 KiB | 4 MiB | 400 MHz | 2 | 1 | 260 | 32 MiB L4 |
| Fanwood 130 nm | 2004-11-08 | 1.6 GHz | 256 KiB | 3 MiB | 533 MHz | 1 | 1 | 130 | |
| Fanwood 130 nm | 2004-11-08 | 1.3 GHz | 256 KiB | 3 MiB | 400 MHz | 1 | 1 | 62? | Low voltage |
| Madison 9M 130 nm | 2004-11-08 | 1.6 GHz | 256 KiB | 9 MiB | 400 MHz | 1 | 1 | 130 | |
| Madison 9M 130 nm | 2005-07-05 | 1.67 GHz | 256 KiB | 6 MiB | 667 MHz | 1 | 1 | 130 | |
| Madison 9M 130 nm | 2005-07-18 | 1.67 GHz | 256 KiB | 9 MiB | 667 MHz | 1 | 1 | 130 | |
| Montecito 90 nm | 2006-07-18 | 1.4 GHz | 256 KiB+ 1 MiB | 12 MiB | 400 MHz | 1 | 2 | 104 | Virtualization, Multithread, no HW IA-32 |
| Montecito 90 nm | 2006-07-18 | 1.6 GHz | 256 KiB+ 1 MiB | 12 MiB | 533 MHz | 1 | 2 | 104 | Virtualization, Multithread, no HW IA-32 |
| Montvale 90 nm | 2007-10-31 | 1.66 GHz | 256 KiB+ 1 MiB | 4–18 MiB | 400–667 MHz | 1 | 1-2 | 75-104 | Core-level lockstep, demand-based switching |

## إنتل إيتانيوم (9100) المستقبل

إنتل إيتانيوم (9100) المستقبل
إنتل إيتانيوم (9100) ثناية النواة هي أحد المعالجات التي أطلقتها شركة إنتل ومن مزايا الجديدة في السلسلة إيتانيوم 9100 تقنية التحويل حسب الطلب، التي تقلل من استهلاك الخادم للطاقة أثناء فترات الاستخدام المتخفض، ويمكن أن يؤدي إلى توفير في تكاليف الإنتاج. وتمتاز السلسلة 9100 بسرعات تصل إلى 66.1 GHz وناقل أمامي بتردد 667 ميغاهيرتز ضمن مستوى استطاعة يبلغ 104واط، وتمتاز أيضا بانخفاض استهلاكها للطاقة.