مقارنة بين بنى مجموعات التعليمات
بنية مجموعة التعليمات ( ISA ) هي نموذج مجرد للحاسوب ، ويُشار إليها أيضًا باسم بنية الحاسوب . يُطلق على تجسيد بنية مجموعة التعليمات اسم التنفيذ . تسمح بنية مجموعة التعليمات بتنفيذات متعددة قد تختلف في الأداء والحجم المادي والتكلفة (وغيرها)؛ ولأن بنية مجموعة التعليمات تعمل كواجهة بين البرمجيات والمكونات المادية ، فإن البرمجيات التي كُتبت أو جُمعت لبنية مجموعة تعليمات معينة يمكن تشغيلها على تنفيذات مختلفة لنفس بنية مجموعة التعليمات. وقد مكّن هذا من تحقيق التوافق الثنائي بسهولة بين أجيال مختلفة من الحواسيب، وتطوير عائلات الحواسيب. ساهم هذان التطوران في خفض تكلفة الحواسيب وزيادة نطاق استخدامها. لهذه الأسباب، تُعد بنية مجموعة التعليمات واحدة من أهم المفاهيم المجردة في الحوسبة اليوم.
تحدد بنية مجموعة التعليمات (ISA) كل ما يحتاجه مبرمج لغة الآلة لمعرفته لبرمجة الحاسوب. ويختلف تعريف بنية مجموعة التعليمات من بنية لأخرى؛ وبشكل عام، تحدد هذه البنية أنواع البيانات المدعومة ، والحالة الموجودة (مثل الذاكرة الرئيسية والسجلات ) ودلالاتها (مثل اتساق الذاكرة وأنماط العنونة )، ومجموعة التعليمات (مجموعة تعليمات الآلة التي تشكل لغة الآلة للحاسوب)، ونموذج الإدخال/ الإخراج .
تمثيل البيانات
في العقود الأولى للحوسبة، كانت هناك أجهزة كمبيوتر تستخدم النظام الثنائي ، والنظام العشري [ 1 ] وحتى النظام الثلاثي . [ 2 ] [ 3 ] أما أجهزة الكمبيوتر المعاصرة فهي ثنائية بشكل حصري تقريبًا.
يتم ترميز الأحرف كسلاسل من البتات أو الأرقام، باستخدام مجموعة واسعة من مجموعات الأحرف؛ حتى داخل الشركة المصنعة الواحدة كانت هناك اختلافات في مجموعات الأحرف.
يتم ترميز الأعداد الصحيحة بمجموعة متنوعة من التمثيلات ، بما في ذلك تمثيل الإشارة والمقدار ، ومكمل الواحدات ، ومكمل الاثنينات ، والتمثيل الثنائي بالإزاحة ، ومكمل التسعات، ومكمل العشرات .
وبالمثل، تُشفّر الأعداد العشرية باستخدام مجموعة متنوعة من تمثيلات الإشارة والأس والكسر العشري . في الأجهزة الحديثة، حلت أنظمة الأعداد العشرية السداسية عشرية من IBM وأنظمة الأعداد العشرية IEEE 754 محل التنسيقات القديمة إلى حد كبير.
عادةً ما تكون العناوين عبارة عن أعداد صحيحة غير موقعة يتم إنشاؤها من مجموعة من الحقول في التعليمات والبيانات من السجلات والبيانات من التخزين؛ وتختلف التفاصيل حسب البنية.
أجزاء
غالبًا ما تُوصف بنى الحواسيب بأنها بنى ذات n بت . في الأرباع الثلاثة الأولى من القرن العشرين، كان n غالبًا 12 أو 18 أو 24 أو 30 أو 36 أو 48 أو 60. وفي الثلث الأخير من القرن العشرين، كان n غالبًا 8 أو 16 أو 32، وفي القرن الحادي والعشرين، أصبح n غالبًا 16 أو 32 أو 64، ولكن استُخدمت أحجام أخرى (بما في ذلك 6 و 39 و 128 ). هذا في الواقع تبسيط، إذ غالبًا ما تحتوي بنية الحاسوب على عدد قليل من أحجام البيانات "الطبيعية" تقريبًا في مجموعة التعليمات ، ولكن قد يختلف التنفيذ المادي لهذه الأحجام اختلافًا كبيرًا. تحتوي العديد من بنى مجموعات التعليمات على تعليمات، في بعض تطبيقات تلك البنية، تعمل على نصف أو ضعف حجم مسارات البيانات الداخلية الرئيسية للمعالج. ومن أمثلة ذلك Z80 و MC68000 و IBM System/360 . في هذا النوع من التطبيقات، تستغرق العملية ذات العرض المضاعف عادةً ضعف عدد دورات الساعة تقريبًا (وهذا لا ينطبق على التطبيقات عالية الأداء). على سبيل المثال، في معالج 68000، يعني هذا 8 دورات ساعة بدلًا من 4، ويمكن وصف هذه الشريحة تحديدًا بأنها ذات بنية 32 بت مع تطبيق 16 بت . بنية مجموعة تعليمات IBM System/360 هي 32 بت، ولكن العديد من طرازات سلسلة System/360، مثل IBM System/360 Model 30 ، لها مسارات بيانات داخلية أصغر، بينما طرازات أخرى، مثل 360/195 ، لها مسارات بيانات داخلية أكبر.
لا يُستخدم عرض ناقل البيانات الخارجي لتحديد عرض بنية المعالج؛ إذ كانت معالجات NS32008 وNS32016 وNS32032 في الأساس شريحة 32 بت متطابقة تقريبًا، مع اختلاف نواقل البيانات الخارجية. يحتوي معالج PowerPC 604 من IBM على ناقل بيانات 64 بت، لكنه مزود بمسجلات 32 بت فقط. أما معالجات System/360، وبعض المعالجات الدقيقة المبكرة 32 بت مثل Motorola 68000 ، فتستخدم عناوين 24 بت.
لا يتطابق عرض البتات للتعليمات في بنية معينة بالضرورة مع عرض البتات لتلك البنية. على سبيل المثال، تتميز التعليمات في أنظمة System/360، و PDP-11 ، و VAX ، و x86 بطول متغير. احتوت الإصدارات الأولى من SuperH على تعليمات ثابتة الطول (16 بت) على الرغم من كونها ذات بنية 32 بت، بينما احتوت الإصدارات اللاحقة على تعليمات 16 بت و32 بت.
أرقام
في الأرباع الثلاثة الأولى من القرن العشرين، كانت أجهزة الكمبيوتر العشرية الموجهة نحو الكلمات تحتوي عادةً على كلمات مكونة من 10 أرقام [ 4 ] [ 5 ] [ 6 ] مع إشارة منفصلة، [ a ] باستخدام جميع الأرقام العشرة في الأعداد الصحيحة واستخدام رقمين للأسس [ 7 ] [ 5 ] في أرقام الفاصلة العائمة.
ترتيب الباينيات
قد تستخدم بنية المعالج نظام ترتيب البايتات "الكبير" أو "الصغير"، أو كليهما، أو يمكن تهيئتها لاستخدام أي منهما. في المعالجات ذات نظام ترتيب البايتات الصغير، تُرتّب البايتات في الذاكرة بحيث يكون البايت الأقل أهمية في القيمة متعددة البايتات في موقع الذاكرة ذي الرقم الأدنى. أما في المعالجات ذات نظام ترتيب البايتات الكبير، فتُرتّب البايتات بحيث يكون البايت الأكثر أهمية في العنوان ذي الرقم الأدنى. وتُعد بنية x86، بالإضافة إلى العديد من البنى ذات 8 بت، من نوع نظام ترتيب البايتات الصغير. كانت معظم بنى RISC (مثل SPARC وPower وPowerPC وMIPS) في الأصل من نوع نظام ترتيب البايتات الكبير (بينما كانت ARM من نوع نظام ترتيب البايتات الصغير)، ولكن العديد منها (بما في ذلك ARM) أصبح الآن قابلاً للتهيئة لاستخدام أي من النظامين.
لا ينطبق نظام Endianness إلا على المعالجات التي تسمح بالعنونة الفردية لوحدات البيانات (مثل البايتات ) التي تكون أصغر من بعض تنسيقات البيانات.
صيغ التعليمات
رموز العمليات
في بعض البنى، تحتوي كل تعليمة على رمز عملية واحد. وفي بنى أخرى، تحتوي بعض التعليمات على رمز عملية ومُعدِّل واحد أو أكثر. على سبيل المثال، في نظام IBM System/370 ، يُمثِّل البايت 0 رمز العملية، ولكن عندما يكون البايت 0 هو B2 16، فإن البايت 1 يُحدِّد تعليمة مُعيَّنة، مثل B205 16، أي تعليمة تخزين الساعة (STCK). في بعض بنى مجموعات التعليمات، تُستخدم بادئة واحدة أو أكثر من بادئات رموز العمليات لتغيير رمز العملية اللاحق أو لزيادة عدد رموز العمليات.
المعاملات
أنماط العنونة
تسمح البنى المعمارية عادةً بتضمين التعليمات مزيجًا من أنماط عنونة المعاملات :
- مباشر
- تحدد التعليمات عنوانًا كاملاً
- مباشر
- تحدد التعليمات قيمة بدلاً من عنوان.
- مفهرس
- تحدد هذه التعليمات سجلاً لاستخدامه كمؤشر. في بعض البنى المعمارية، يتم تغيير حجم المؤشر وفقًا لطول المعامل.
- غير مباشر
- تحدد التعليمات موقع كلمة مؤشر تصف المعامل، وقد تتضمن مستويات متعددة من الفهرسة والتوجيه غير المباشر.
- مختصر
- تحدد التعليمات البتات ذات الترتيب الأدنى، ويقوم سجل بتوفير البتات ذات الترتيب الأعلى.
- إزاحة القاعدة
- تحدد هذه التعليمات إزاحة من عنوان في سجل
- الزيادة التلقائية/النقصان التلقائي
- يتم زيادة أو إنقاص قيمة سجل يستخدم للفهرسة، أو كلمة مؤشر تستخدم عن طريق العنونة غير المباشرة، بمقدار 1، أو حجم المعامل، أو قيمة دلتا صريحة.
لقد وفرت معالجات المتجهات أوضاعًا إضافية فريدة من نوعها للعمليات القائمة على العناصر.
عدد المعاملات
يُعد عدد المعاملات أحد العوامل التي قد تُشير إلى أداء مجموعة التعليمات. يسمح تصميم ثلاثي المعاملات (معاملان للإدخال، ومعامل واحد للإخراج) بما يلي:
أ := ب + ج
يتم حسابها في تعليمة واحدة
أضف ب، ج، أ
ستتيح بنية ذات معاملين (مدخل واحد، ومدخل واحد ومخرج واحد)
أ := أ + ب
يتم حسابها في تعليمة واحدة
أضف ب، أ
لكن ذلك يتطلب ذلك
أ := ب + ج
يتم ذلك في تعليماتين
انقل B، A أضف ج، أ
طول الترميز
كما هو موضح في الجدول أدناه، تلتزم بعض مجموعات التعليمات بطول ترميز ثابت وبسيط للغاية، بينما تتميز مجموعات أخرى بطول متغير. عادةً ما تكون معمارية RISC هي التي تتميز بطول ترميز ثابت، بينما تتميز معمارية CISC بطول ترميز متغير، ولكن ليس دائمًا.
مجموعات التعليمات
يقارن الجدول أدناه المعلومات الأساسية حول بنى مجموعات التعليمات.
ملحوظات:
- عادةً ما يكون عدد المسجلات قوةً للعدد اثنين ، مثل 8 أو 16 أو 32. في بعض الحالات، يُضاف مسجلٌ افتراضي مُبرمجٌ مسبقًا على الصفر، كجزءٍ من ملفات المسجلات الخاصة بالبنى المعمارية، وذلك غالبًا لتبسيط أنماط الفهرسة. يقتصر عمود "المسجلات" على حساب المسجلات الصحيحة القابلة للاستخدام بواسطة التعليمات العامة في أي لحظة. تتضمن البنى المعمارية دائمًا مسجلاتٍ لأغراضٍ خاصة، مثل عداد البرنامج (PC). لا تُحتسب هذه المسجلات إلا إذا ذُكر خلاف ذلك. تجدر الإشارة إلى أن بعض البنى المعمارية، مثل SPARC، تحتوي على نوافذ مسجلات ؛ بالنسبة لهذه البنى، يُشير العدد إلى عدد المسجلات المتاحة ضمن نافذة المسجلات. كما لا تُحتسب المسجلات غير المُصممة لإعادة تسمية المسجلات .
- في عمود "النوع"، يعتبر "Register–Register" مرادفًا لنوع شائع من البنية، " load–store "، مما يعني أنه لا يمكن لأي تعليمة الوصول مباشرة إلى الذاكرة باستثناء بعض التعليمات الخاصة، أي التحميل إلى أو التخزين من السجل (السجلات)، مع الاستثناءات المحتملة لتعليمات قفل الذاكرة للعمليات الذرية.
- في عمود "ترتيب البايتات"، تعني كلمة "Bi" أن ترتيب البايتات قابل للتكوين.
بنيان | أجزاء | إصدار | قدَّم | الحد الأقصى المعاملات | يكتب | تصميم | السجلات (باستثناء FP/vector) | ترميز التعليمات | تقييم الفرع | الإضافات | يفتح | حقوق ملكية مجانية | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 6502 | 8 | 1975 | 1 | السجل – الذاكرة | CISC | 3 | متغير (من 8 إلى 24 بت) | سجل الحالة | قليل | ||||
| 6800 | 8 | 1974 | 1 | السجل – الذاكرة | CISC | 3 | متغير (من 8 إلى 24 بت) | سجل الحالة | كبير | ||||
| 6809 | 8 | 1978 | 1 | السجل – الذاكرة | CISC | 4 | متغير (من 8 إلى 32 بت) | سجل الحالة | كبير | ||||
| 680x0 | 32 | 1979 | 2 | السجل – الذاكرة | CISC | 8 بيانات و8 عناوين | عامل | سجل الحالة | كبير | ||||
| 8080 | 8 | 1974 | 2 | السجل – الذاكرة | CISC | 7 | متغير (من 8 إلى 24 بت) | سجل الحالة | قليل | ||||
| 8051 | 32 (8→32) | 1980 [ 8 ] | 1 | التسجيل – التسجيل | CISC |
| متغير (من 8 إلى 24 بت) | قارن وتفرع | قليل | ||||
| x86 | 16، 32، 64 (16→32→64) | الإصدار الرابع (x86-64) | 1978 | 2 (عدد صحيح) 3 ( AVX ) [ b ] 4 ( FMA4 و VPBLENDVPx) [ 9 ] | السجل – الذاكرة | CISC |
| متغير (8086 ~ 80386: متغير يتراوح حجمه بين 1 و6 بايت مع وحدة إدارة الذاكرة (MMU) وحزمة تطوير البرامج (SDK) من إنتل، 80486: من 2 إلى 5 بايت مع بادئة، بنتيوم وما بعده: من 2 إلى 4 بايت مع بادئة، x64: بادئة 4 بايت، محاكاة x86 من طرف ثالث: من 1 إلى 15 بايت بدون بادئة ووحدة إدارة الذاكرة (MMU). SSE/MMX: 4 بايت مع بادئة، AVX: 8 بايت مع بادئة) | رمز الحالة | قليل | x87 ، IA-32 ، MMX ، 3DNow !، SSE ، SSE2 ، PAE ، x86-64 ، SSE3 ، SSSE3 ، SSE4 ، BMI ، AVX ، AES ، FMA ، XOP ، F16C ، AMX | لا | لا |
| ألفا | 64 | 1992 | 3 | التسجيل – التسجيل | RISC | 32 (بما في ذلك "صفر") | ثابت (32 بت) | سجل الحالة | ثنائي الجنس | MVI ، BWX ، FIX ، CIX | لا | ||
| قوس | 16/32/64 (32→64) | ARCv3 [ 10 ] | 1996 | 3 | التسجيل – التسجيل | RISC | يمكن للمستخدم زيادة عدد المستخدمين من 16 أو 32 (بما في ذلك مستخدم SP) إلى 60 | متغير (16 أو 32 بت) | قارن وتفرع | ثنائي الجنس | تعليمات APEX المُعرّفة من قِبل المستخدم | ||
| ARM/A32 | 32 | ARMv1–v9 | 1983 | 3 | التسجيل – التسجيل | RISC |
| ثابت (32 بت) | رمز الحالة | ثنائي الجنس | نيون، جازيل ، في إف بي ، تراست زون ، إل بي إيه إي | لا | |
| الإبهام/T32 | 32 | ARMv4T-ARMv8 | 1994 | 3 | التسجيل – التسجيل | RISC |
| Thumb: ثابت (16 بت) ، Thumb-2: متغير (16 أو 32 بت) | رمز الحالة | ثنائي الجنس | نيون، جازيل ، في إف بي ، تراست زون ، إل بي إيه إي | لا | |
| Arm64/A64 | 64 | v8.9-A/v9.4-A، [ 11 ] Armv8-R [ 12 ] | 2011 [ 13 ] | 3 | التسجيل – التسجيل | RISC | 32 (بما في ذلك مؤشر المكدس / سجل "الصفر") | ثابت (32 بت) ، متغير (32 بت أو 64 بت لـ FMA4 مع بادئة 32 بت [ 14 ] ) | رمز الحالة | ثنائي الجنس | SVE و SVE2 | لا | |
| AVR | 8 | 1997 | 2 | التسجيل – التسجيل | RISC | 32 16 حول "الهندسة المعمارية المختزلة" | متغير (معظمها 16 بت، وأربع تعليمات 32 بت) | سجل الحالة، تخطي مشروط ببت إدخال/إخراج أو سجل للأغراض العامة ، مقارنة وتخطي | قليل | ||||
| AVR32 | 32 | رؤيا ٢ | 2006 | 2-3 | RISC | 15 | المتغير [ 15 ] | كبير | آلة جافا الافتراضية | ||||
| بلاكفين | 32 | 2000 | 3 [ 16 ] | التسجيل – التسجيل | RISC [ 17 ] | مُراكمان 8 سجلات بيانات 8 سجلات مؤشر 4 سجلات فهرسة 4 سجلات تخزين مؤقتة | متغير ( 16 أو 32 بت ) | رمز الحالة | ليتل [ 18 ] | ||||
| سلسلة CDC العليا 3000 | 48 | 1963 | 3 | السجل – الذاكرة | CISC | مسجل A ذو 48 بت، مسجل Q ذو 48 بت، 6 مسجلات B ذات 15 بت، ومتفرقات | متغير (24 أو 48 بت) | أنواع متعددة من القفز والوثب | كبير | ||||
| المعالج المركزي CDC 6000 (CP) | 60 | 1964 | 3 | التسجيل – التسجيل | غير متوفر [ ج ] | 24 (8 سجلات عناوين 18 بت، 8 سجلات فهرسة 18 بت، 8 سجلات معاملات 60 بت) | متغير (15 أو 30 أو 60 بت) | قارن وتفرع | غير متوفر [ د ] | مقارنة/نقل الوحدة | لا | لا | |
| معالج الأجهزة الطرفية CDC 6000 (PP) | 12 | 1964 | 1 أو 2 | السجل – الذاكرة | CISC | يُستخدم سجل A ذو 18 بت، المواقع من 1 إلى 63، كسجلات فهرسة لبعض التعليمات. | متغير (12 أو 24 بت) | سجل اختبار A، قناة اختبار | غير متوفر [ هـ ] | وحدات معالجة طرفية إضافية | لا | لا | |
| كروزو (من سكان VLIW الأصليين) | 32 [ 19 ] | 2000 | 1 | التسجيل – التسجيل | VLIW [ 19 ] [ 20 ] | متغير (64 أو 128 بت في الوضع الأصلي، 15 بايت في محاكاة x86) [ 20 ] | رمز الحالة [ 19 ] | قليل | |||||
| إلبروس 2000 (VLIW الأصلي) | 64 | الإصدار 6 | 2007 | 1 | التسجيل – التسجيل [ 19 ] | VLIW | 8–64 | 64 | رمز الحالة | قليل | الترجمة الديناميكية في الوقت المناسب: x87 ، IA-32 ، MMX ، SSE ، SSE2 ، x86-64 ، SSE3 ، AVX | لا | لا |
| ديلوكس | 32 | ؟ | 1990 | 3 | التسجيل – التسجيل | RISC | 32 | ثابت (32 بت) | سجل الحالة | كبير | ؟ | نعم | ؟ |
| eSi-RISC | 16/32 | 2009 | 3 | التسجيل – التسجيل | RISC | 8–72 | متغير (16 أو 32 بت) | قارن، وفرع، وسجل الحالة | ثنائي الجنس | تعليمات يحددها المستخدم | لا | لا | |
| iAPX 432 [ 21 ] | 32 | 1981 | 3 | آلة تكديس | CISC | 0 | متغير (من 6 إلى 321 بت) | لا | لا | ||||
| إيتانيوم (IA-64) | 64 | 2001 | التسجيل – التسجيل | ملحمي | 128 | ثابت (حزم 128 بت مع علامة قالب 5 بت و3 تعليمات، طول كل منها 41 بت) | سجل الحالة | ثنائي (قابل للتحديد) | تقنية المحاكاة الافتراضية من إنتل | لا | لا | ||
| لونغ آرتش | 32، 64 | 2021 | 4 | التسجيل – التسجيل | RISC | 32 (بما في ذلك "صفر") | ثابت (32 بت) | قليل | لا | لا | |||
| M32R | 32 | 1997 | 3 | التسجيل – التسجيل | RISC | 16 | متغير (16 أو 32 بت) | سجل الحالة | ثنائي الجنس | ||||
| m88k | 32 | 1988 | 3 | التسجيل – التسجيل | RISC | 32 | ثابت (32 بت) | قارن وتفرع | كبير | ||||
| ميكو32 | 32 | ؟ | 2006 | 3 | التسجيل – التسجيل | RISC | 32 [ 22 ] | ثابت (32 بت) | قارن وتفرع | كبير | تعليمات يحددها المستخدم | نعم [ 23 ] | نعم |
| نظام MIPS | 64 (32→64) | 6 [ 24 ] [ 25 ] | 1981 | 1-3 | التسجيل – التسجيل | RISC | 4–32 (بما في ذلك "الصفر") | ثابت (32 بت) | سجل الحالة | ثنائي الجنس | MDMX ، MIPS-3D | لا | لا [ 26 ] [ 27 ] |
| مزيج MMIX | 64 | ؟ | 1999 | 3 | التسجيل – التسجيل | RISC | 256 | ثابت (32 بت) | سجل الحالة | كبير | ؟ | نعم | نعم |
| نيوس 2 | 32 | ؟ | 2000 | 3 | التسجيل – التسجيل | RISC | 32 | ثابت (32 بت) | سجل الحالة | قليل | معالج برمجي يمكن تثبيته على جهاز Altera FPGA | لا | على معالجات FPGA من Altera/Intel فقط |
| نوفا | 16 | 1969 | 2 | التسجيل – التسجيل | CISC | 4 | ثابت (16 بت) | يتخطى | لا أحد | ||||
| NS320xx | 32 | 1982 | 5 | الذاكرة – الذاكرة | CISC | 8 | ترميز هوفمان المتغير ، يصل طوله إلى 23 بايت | رمز الحالة | قليل | تعليمات BitBlt | |||
| أوبن ريسك | 32، 64 | 1.4 [ 28 ] | 2000 | 3 | التسجيل – التسجيل | RISC | 16 أو 32 | مُثَبَّت | رمز الحالة | ثنائي الجنس | ؟ | نعم | نعم |
| PA-RISC (HP/PA) | 64 (32→64) | 2.0 | 1986 | 3 | التسجيل – التسجيل | RISC | 32 | ثابت (32 بت) | قارن وتفرع | كبير → ثنائي الجنس | الأعلى | لا | |
| PDP-5 [ 29 ] PDP-8 [ 30 ] | 12 | 1963 | السجل – الذاكرة | CISC | مُراكم واحد 1 مسجل ناتج الضرب | ثابت (12 بت) | سجل الحالة اختبر وتفرع | EAE (عنصر حسابي موسع) | |||||
| PDP-11 | 16 | 1970 | 2 | الذاكرة – الذاكرة | CISC | 8 (يشمل عداد البرنامج ومؤشر المكدس، على الرغم من أن أي سجل يمكن أن يعمل كمؤشر مكدس) | متغير (16 أو 32 أو 48 بت) | رمز الحالة | قليل | مجموعة التعليمات الموسعة، مجموعة تعليمات الفاصلة العائمة، معالج الفاصلة العائمة، مجموعة التعليمات التجارية | لا | لا | |
| باور ، باور بي سي ، باور آي إس إيه | 32/64 (32→64) | 3.1 [ 31 ] | 1990 | 3 (غالباً). تحديث FMA، LD/ST | التسجيل – التسجيل | RISC | 32 سجلًا عامًا للقراءة فقط، 8 حقول شرطية 4 بت، سجل ربط، سجل عداد | ثابت (32 بت) ، متغير (32 أو 64 بت مع البادئة 32 بت [ 31 ] ) | رمز الحالة، التناقص التلقائي لعداد الفرع | ثنائي الجنس | AltiVec ، APU، VSX ، Cell ، Floating-point، Matrix Multiply Assist | مرخص من قبل OPF | فقط في حالة الحصول على ترخيص [ 32 ] |
| RISC-V | 32، 64، 128 | 20250508 [ 33 ] | 2010 | 3 | التسجيل – التسجيل | RISC | 32 (بما في ذلك "صفر") | عامل | قارن وتفرع | قليل | ؟ | نعم | نعم |
| وصفة طبية | 64/32/16 | 2000 | 3 | الذاكرة – الذاكرة | CISC | 4 أعداد صحيحة + 4 عناوين | عامل | قارن وتفرع | قليل | لا | |||
| S+core | 16/32 | 2005 | RISC | قليل | |||||||||
| سبارك | 64 (32→64) | OSA2017 [ 34 ] | 1985 | 3 | التسجيل – التسجيل | RISC | 32 (بما في ذلك "صفر") | ثابت (32 بت) | رمز الحالة | كبير → ثنائي الجنس | زيارة | نعم | نعم [ 35 ] |
| سوبر إتش (SH) | 32 | ؟ | 1994 | 2 | مسجل – مسجل مسجل – ذاكرة | RISC | 16 | ثابت (16 أو 32 بت) ، متغير | رمز الحالة (بت واحد) | ثنائي الجنس | ؟ | نعم | نعم |
| النظام/360 النظام/370 النظام/390 z/البنية | 64 (32→64) | 1964 | 2 (معظم) 3 (FMA، مرفق المعامل المميز) 4 (بعض أدوات المتجهات) | مسجل – ذاكرة ذاكرة – ذاكرة مسجل – مسجل | CISC | 16 عام 16 تحكم (S/370 وما بعده) 16 وصول (ESA/370 وما بعده) 32 سجلات متجهة (z13 وما بعده) | متغير (16 أو 32 أو 48 بت) | رمز الشرط، المقارنة والتفرع [ زيادة تلقائية ] ، عداد التفرع - إنقاص تلقائي | كبير | لا | لا | ||
| سلسلة TMS320 C6000 | 32 | 1983 | 3 | التسجيل - التسجيل | VLIW | 32 على C67x 64 على C67x+ | ثابت (حزم 256 بت مع 8 تعليمات، كل منها بطول 32 بت) | سجل الحالة | ثنائي الجنس | لا | لا | ||
| معالج النقل | 32 (4→64) | 1987 | 1 | آلة تكديس | متفرقات | 3 (كمجموعة) | ثابت (8 بت) | قارن وتفرع | قليل | ||||
| فاكس | 32 | 1977 | 6 | الذاكرة – الذاكرة | CISC | 16 | عامل | رمز الحالة، المقارنة والتفرع | قليل | لا | |||
| Z80 | 8 | 1976 | 2 | السجل – الذاكرة | CISC | 17 | متغير (من 8 إلى 32 بت) | سجل الحالة | قليل |
انظر أيضاً
ملحوظات
- ↑ عادةً ما تكون الإشارة إما زائد أو ناقص فقط، ولكن في أجهزة IBM 7070/72/74 [ 5 ] كانت هناك إشارة ثلاثية الحالة.
- ↑ تقبل تعليمات LEA (جميع المعالجات) و IMUL-immediate (80186 وما بعدها) ثلاثة معاملات؛ معظم التعليمات الأخرى لمجموعة تعليمات الأعداد الصحيحة الأساسية لا تقبل أكثر من معاملين.
- ↑ جزئيًا RISC: بنية تحميل/تخزين وأنماط عنونة بسيطة، وجزئيًا CISC: ثلاثة أطوال للتعليمات ولا يوجد توقيت للتعليمات الفردية
- بما أن الذاكرة عبارة عن مصفوفة من الكلمات ذات 60 بت، ولا توجد وسيلة للوصول إلى الوحدات الفرعية، فإن استخدام ترتيب البايتات الكبير مقابل ترتيب البايتات الصغير غير منطقي. تستخدم وحدة CMU الاختيارية ترتيب البايتات الكبير.
- ↑ بما أن الذاكرة عبارة عن مصفوفة من الكلمات ذات 12 بت بدون أي وسيلة للوصول إلى الوحدات الفرعية، فإن استخدام big endian مقابل little endian لا معنى له.
مراجع
- ↑ دا كروز، فرانك (18 أكتوبر 2004). "آلة حاسبة أبحاث الذخائر البحرية من آي بي إم" . تاريخ الحوسبة بجامعة كولومبيا . تم الاسترجاع في 8 مايو 2024 .
- ↑ "متحف الحاسوب الافتراضي الروسي - قاعة المشاهير - نيكولاي بيتروفيتش بروسينتسوف" .
- ^ تروجمان ، جورج. نيتوسوف، الكسندر Y.؛ إرنست، وولفغانغ (2001). الحوسبة في روسيا: كشف تاريخ أجهزة الكمبيوتر وتكنولوجيا المعلومات . Vieweg+Teubner Verlag. الصفحات 19، 55، 57، 91، 104-107 . ISBN 978-3-528-05757-2..
- ↑ آلة معالجة البيانات ذات الأسطوانة المغناطيسية 650 (ملف PDF) . شركة IBM . يونيو 1955. 22-6060-2 . تم الاطلاع عليه في 8 مايو 2024 .
- 1 2 3 مبادئ تشغيل IBM 7070-7074 (ملف PDF) . مكتبة مراجع الأنظمة. IBM . 1962. GA22-7003-6 . تاريخ الاسترجاع: 8 مايو 2024 .
- ↑ حاسوب UNIVAC® ذو الحالة الصلبة 80 (ملف PDF) . شركة سبيري راند . 1959. U1742.1r3 . تم الاطلاع عليه في 8 مايو 2024 .
- ↑ ميزات إضافية لـ IBM 650 MDDPM - فهرسة المُجمِّعات - العمليات الحسابية العشرية العائمة - كتابة متقدمة (PDF) . IBM . 1955. 22-6258-0 . تم الاطلاع عليه في 8 مايو 2024 .
- ↑ "المعالج الدقيق 8051" . استكشف تاريخ شركة إنتل . إنتل.
- ↑ "دليل مبرمج معمارية AMD64، المجلد 6: تعليمات XOP وFMA4 ذات 128 بت و256 بت" (ملف PDF) . AMD . نوفمبر 2009.
- ↑ "شركة Synopsys تقدم معالج ARC جديد 64 بت يوفر زيادة في الأداء تصل إلى 3 أضعاف للتطبيقات المدمجة عالية الأداء" .
- ↑ "تطورات بنية Arm A-Profile لعام 2022 - مدونة البنى والمعالجات - مدونات مجتمع Arm - مجتمع Arm" . community.arm.com . 29 سبتمبر 2022. تاريخ الاسترجاع: 9 ديسمبر 2022 .
- ↑ فروموسانو، أندريه (3 سبتمبر 2020). "شركة ARM تعلن عن معالج Cortex-R82: أول معالج 64 بت يعمل في الوقت الحقيقي" . AnandTech . مؤرشف من الأصل في 3 سبتمبر 2020.
- ↑ "معالجات ARM تدعم 64 بت مع بنية شريحة ARMv8 الجديدة" . مجلة Computerworld . 27 أكتوبر 2011. تاريخ الاطلاع: 8 مايو 2024 .
- ↑ توشيو يوشيدا. "مؤتمر هوت تشيبس 30؛ إحاطة فوجيتسو" (ملف PDF) . فوجيتسو. مؤرشف من الأصل (ملف PDF) بتاريخ 2020-12-05.
- ↑ "وثيقة بنية AVR32" (ملف PDF) . شركة Atmel . تم الاطلاع عليها بتاريخ 2024-05-08 .
- ↑ "دليل بلاكفين" (ملف PDF) . analog.com .
- ↑ "نظرة عامة على بنية معالج بلاكفين" . شركة أنالوج ديفايسز . تم الاطلاع عليه بتاريخ 2024-05-08 .
- ↑ "بنية ذاكرة بلاكفين" . شركة أنالوج ديفايسز . مؤرشف من الأصل بتاريخ 16-06-2011 . تم الاطلاع عليه بتاريخ 18-12-2009 .
- 1 2 3 4 5 "كشف زيف كروزو: بنية ترانسميتا TM5xxx 2" . تقنيات العالم الحقيقي.
- 1 2 3 ألكسندر كلايبر (يناير 2000). "التكنولوجيا الكامنة وراء معالجات كروزو" (ملف PDF) . شركة ترانسميتا . تم الاطلاع عليه في 6 ديسمبر 2013 .
- ↑ شركة إنتل (1981). مقدمة إلى بنية iAPX 432 (ملف PDF) . ص. iii.
- ↑ "معمارية LatticeMico32" . شركة Lattice Semiconductor . مؤرشفة من الأصل في 23 يونيو 2010.
- ↑ "ترخيص برنامج LatticeMico32 مفتوح المصدر" . شركة Lattice Semiconductor . مؤرشف من الأصل بتاريخ 20 يونيو 2010.
- ↑ بنية MIPS64 للمبرمجين: الإصدار 6
- ↑ معمارية MIPS32 للمبرمجين: الإصدار 6
- ↑ نظام MIPS المفتوح
- ↑ "شركة Wave Computing تغلق مبادرة MIPS المفتوحة بأثر فوري، دون سابق إنذار" .
- ↑ مراجعات معمارية OpenRISC
- ↑ دليل PDP-5 (ملف PDF) . شركة المعدات الرقمية . فبراير 1964.
- ↑ دليل مستخدمي PDP-8 (ملف PDF) . شركة المعدات الرقمية . مايو 1966.
- 1 2 "Power ISA الإصدار 3.1" . openpowerfoundation.org. 2020-05-01 . تم الاطلاع عليه بتاريخ 2021-10-20 .
- ↑ اتفاقية ترخيص المستخدم النهائي لـ OpenPOWER
- ↑ "المواصفات المعتمدة لـ RISC-V" . تم الاطلاع عليها بتاريخ 18 أكتوبر 2025 .
- ↑ وثائق معالج أوراكل سبارك
- ↑ رخصة معمارية SPARC
- بنى مجموعات التعليمات
- هندسة الحاسوب
- مقارنات الحوسبة
