معالجات RISC وCISC والتسلسل الزمني
| English | العربية |
|---|---|
| CISC/sɪsk/ | CISC |
| RISC/rɪsk/ | RISC |
| pipelining/ˈpaɪplaɪnɪŋ/ | الأنابيب |
| Flynn's taxonomy/flɪnz tækˈsɒnəmi/ | تصنيف فلين |
| register/ˈredʒɪstə/ | مسجل |
| ALU/ˌeɪ el ˈjuː/ | وحدة الحساب والمنطق (ALU) |
| hazard/ˈhæzəd/ | خطر |
| SIMD/ˈsɪmdiː/ | SIMD |
| MIMD/ˈmɪmdiː/ | MIMD |
| massively parallel/ˈmæsɪvli ˈpærəlel/ | متوازي ضخم |
| supercomputers/ˌsuːpəkəmˈpjuːtəz/ | الحواسيب الفائقة |
الهاتف في جيبك لا يعمل بالمعالجات من إنتل
- لمدة ثلاثين عامًا كانت أسرع المعالجات هي الأكثر تعقيدًا: أضف تعليمات، وكل منها يقوم بمزيد من العمل. بنت إنتل إمبراطورية على ذلك.
- ثم وضعت شركة بريطانية صغيرة معالجًا بسيطًا عمدًا في هاتف. تعليمات أقل، جميعها بنفس الطول، تقريبًا لا شيء منها يلمس الذاكرة. لم يكن بإمكانه القيام بالكثير لكل تعليمة، وفاز anyway.
- فاز لأنه يمكن تداخل التعليمات البسيطة والمتجانسة، والتداخل قيمته أكبر من التعقيد.
- هذه الدرس هي CISC و RISC، الأنابيب, الهياكل الأربعة لتصنيف فاين، وأين تؤدي حدود الحرارة والسرعة لمعالج ما.
CISC و RISC
- الـ CISC، حاسوب مجموعة التعليمات المعقدة، لديه عديد، وغالبًا معقدة التعليمات: قد يؤدي واحد عدة عمليات وصول للذاكرة. تكون متغيرة الطول، لذا يكون فك التشفير معقدًا. يقوم بمزيد من العمل لكل تعليمة، في الأجهزة. مثال: Intel x86.
- حاسوب RISC (مجموعة تعليمات مصغرة) يتميز بـمجموعة صغيرة من التعليمات البسيطة، كل منها يقوم بعملية أساسية واحدة، وجميعها ذات طول ثابت وسريعة فك التشفير. فقط التحميل والتخزين يلمسان الذاكرة؛ والباقي يتم مسجلاً إلى مسجل. مثال: ARM.
- برامج RISC تكون أطول، لكن كل تعليمة سريعة وقابلة للتنبؤ بها، وهو ما يحتاجه خط الأنابيب بالضبط.

الأكثر لكل تعليمة، أو الأسرع والأكثر قابلية للتنبؤ لكل تعليمة
يتميز معالج RISC بـ:
تحتفظ RISC بتعليمات قليلة وبسيطة وثابتة الطول (عادةً 1 دورة)؛ بينما CISC لديها العديد من التعليمات المعقدة ومتغيرة الطول.
الفروق التي تريدها الامتحان
| الميزة | CISC | RISC |
|---|---|---|
| مجموعة التعليمات | عديدة، معقدة | قليلة، بسيطة |
| طول التعليمة | متغير | ثابت |
| الوصول للذاكرة | قد تصلح العديد من التعليمات للذاكرة | فقط التحميل والتخزين |
| المسجلات | أقل | كثيرة |
| دورات لكل تعليمة | تتفاوت | عادة واحد |
| خط الأنابيب | أصعب | طبيعي |
- تعيد رقائق Intel الحديثة ترجمة تعليماتها المعقدة CISC إلى عمليات فرعية أب شبيهة بـ RISC داخلياً، وهو الدليل الأوضح على أن هذا التصميم هو الفائز في النقاش.
طابق كل مصطلح مع وصفه.
RISC = بسيط + طول ثابت + حمل/تخزين؛ CISC = معقد + طول متغير؛ التسلسل الزمني يداخل المراحل من أجل السرعة.
في معالج RISC، التعليمات الوحيدة التي تلمس الذاكرة هي الحمل و____.
باقي العمليات هي من مسجل إلى مسجل. هذا القيد هو ما يجعل التعليمات ذات طول ثابت، ومتجانسة في التوقيت وسهلة المعالجة المتدفقة.
خط الأنابيب (Pipelining)
- يعالج خط الأنابيب التعليمات في مراتب متداخلة، مثل خط التجميع: الجلب، فك التشفير، التنفيذ في وحدة الحساب والمنطق (ALU)، الوصول للذاكرة، الكتابة العائدة.
- تعمل كل مرتبة على تعليمة مختلفة في نفس الوقت، لذا بمجرد امتلاء خط الأنابيب، تُكمل تعليمة واحدة في كل دورة.
- لا يجعل أي تعليمة فردية أسرع. بل يزيد الإنتاجية: انتهاء عدد أكبر من التعليمات في الثانية.
- تجعل تعليمات RISC ذات الطول الثابت والبسيطة كل مرحلة تأخذ نفس الوقت، ولهذا يتدفق خط أنابيب RISC بسلاسة بينما لا يفعل ذلك CISC.

*ست تعليمات قيد التنفيذ، واحدة تنتهي في كل دورة
كيف تمتلئ عملية التسلسل الزمني
مرر عبر دورات الساعة. بمجرد امتلاء التسلسل الزمني، تنتهي تعليمة جديدة في كل دورة — حتى أن كل واحدة لا تزال تستغرق عدة مراحل — لأن مراحل التعليمات المختلفة تتداخل.
عندما تكون المعالجة المتدفقة ممتلئة، فإنها تكمل تقريباً:
التداخل بين المراحل يعني أن تعليمة جديدة تنتهي كل دورة بمجرد امتلاء المعالجة المتدفقة.
تسريع المعالجة المتدفقة لمعالج عن طريق:
تعمل مراحل التعليمات المختلفة في نفس الوقت.
مثال محلول: لماذا خط الأنابيب أسرع
- خط أنابيب بخمس مراتب يعمل بدورة واحدة لكل مرتبة. اشرح لماذا هو أسرع من تنفيذ التعليمات واحداً تلو الآخر.
- بدون خط أنابيب، تشغل كل تعليمة المعالج لجميع المراتب الخمس، لذا تنتهي واحدة كل خمس دورات.
- مع خط الأنابيب، يبدأ وحدة الجلب في جلب التعليمة التالية بينما لا تزال التعليمة الحالية تقوم بفك التشفير، sehingga five instructions are in progress at once, وبمجرد امتلائه، تُكمل كل دورة تعليمة واحدة.
- لا تُنفذ أي تعليمة فردية بشكل أسرع؛ بل يرتفع الإنتاجية بحوالي خمسة أضعاف. قل ذلك صراحةً: فهي العلامة الأكثر تفويته.
ماذا تحسن المعالجة المتدفقة فعلياً؟
تتداخل المراحل، لذا فإن خمسة تعليمات قيد التنفيذ في وقت واحد وتنتهي تعليمة واحدة لكل دورة. لا يتم تنفيذ أي تعليمة فردية بشكل أسرع.
المخاطر (Hazards)
- المخاطر causes the pipeline to stall. يحدث خطر البيانات عندما تحتاج تعليمة لنتيجة لم تُنتجها بعد التعليمة السابقة،所以要 wait.
- يحدث خطر التحكم عند التفرع: حتى يتم حل التفرع، لا يعرف المعالج أي تعليمة يجب جلبها بعد ذلك.
- كلاهما يهدر الدورات، ولهذا تتوقع المعالجات التفرعات وتمرر النتائج بين المراتب.
يعيق خطر البيانات المعالجة المتدفقة عندما تحتاج تعليمة إلى نتيجة غير جاهزة بعد؛ يأتي خطر التحكم من انعطاف يغير التعليمة التي ستُنفَّذ تالياً.
تفرض المخاطر توقف (أو تفريغ) المعالجة المتدفقة، ولهذا السبب تقلل الإنتاجية المثالية التي تبلغ تعليمة واحدة لكل دورة.
طابق كل خطر من مخاطر المعالجة المتدفقة مع سببه.
كلاهما يعوق المعالجة المتدفقة ويهدر الدورات، ولهذا يقوم المعالجات بإرسال النتائج بين المراحل وتتوقع الانعطافات.
تصنيف فلين
- يصنف تصنيف فلين الحواسيب بناءً على عدد تدفقات التعليمات وتدفقات البيانات التي تحتوي عليها.
- SISD: تدفق تعليمة واحد، تدفق بيانات واحد، نواة مفردة تقليدية.
- SIMD: تعليمة واحدة تعمل على العديد من عناصر البيانات في آن واحد. هذه GPU أو وحدة المتجهات في CPU، وتناسب الصور والفيديو والمصفوفات العلمية.
- MISD: عدة عمليات على نفس البيانات؛ نادرة وغالباً نظرية. MIMD: معالجات متعددة تشغيل تعليمات مختلفة على بيانات مختلفة، وهي CPU متعددة النوى أو مجموعة مكدسة، وهي الأكثر عمومية.

*تعليمة واحدة، عناصر بيانات متعددة
أي مما يلي يصف SIMD؟ حدد كل الخيارات الصحيحة.
برامج مختلفة على بيانات مختلفة هي MIMD، وهي حالة متعددة النواة. أما SIMD فهي تدفق تعليمة واحد عبر تدفقات بيانات متعددة.
حواسيز متوازية ضخمة
- تستخدم نظام متوازي ضخم آلاف المعالجات المتصلة بشبكة سريعة، لكل منها ذاكرتها الخاصة، وتتبادل البيانات عبر رسائل بدلاً من مشاركة الذاكرة.
- هي MIMD، وتحتاج برمجيات مكتوبة خصيصاً، لأن المبرمج يجب أن يقسم المشكلة ويدير الاتصال.
- هذا هو ما عليه أكبر الحاسبات العملاقة: محاكاة المناخ، تدريب التعلم الآلي وعلم الفلك الفلكي جميعها تعمل بهذه الطريقة.
تشارك معالجات الحاسوب الموازي الضخم كتلة واحدة من الذاكرة.
لكل معالج ذاكرته الخاصة، ويتبادلون البيانات عبر رسائل على شبكة سريعة. هذه الذاكرة الموزعة هي ما تقصده المصطلحة.
مثال محلول: ضع الآلة في فئتها
- بطاقة رسومية تطبق نفس تعديل السطوع على مليوني بكسل. SIMD: تعليمة واحدة، عناصر بيانات متعددة، وهو بالضبط ما صُممت له آلاف النوى الصغيرة في GPU.
- حاسوب محمول بأربع نوى يشغل متصفحاً ومترجمًا ومشغل موسيقى في آن واحد. MIMD: تعليمات مختلفة على بيانات مختلفة، تدفق واحد لكل نواة.
- مركز الأرصاد يقسم الغلاف الجوي إلى شبكة عبر عشرة آلاف معالج، لكل منها ذاكرته الخاصة، وينقل قيم الحدود كرسائل. متوازي ضخم، وهو شكل من أشكال MIMD.
- حدد الفئة، ثم برر ذلك بعدد تدفقات التعليمات والبيانات.
علامات ضائعة
- يرفع خط الأنابيب الإنتاجية؛ ولا يُقصّر أي تعليمة فردية. قل ذلك.
- في RISC، فقط التحميل والتخزين يلمسان الذاكرة. هذه الحقيقة الواحدة تفسر الطول الثابت والكثير من المسجلات وخط الأنابيب النظيف.
- SIMD هي تعليمة واحدة على بيانات متعددة؛ MIMD هي تعليمات متعددة على بيانات متعددة. احسب التدفقات قبل الإجابة.
- المتوازي الضخم يعني آلاف المعالجات مع ذاكرة موزعة وإرسال الرسائل، وليس مجرد "كمبيوتر سريع".
لقد فهمت الأمر
- CISC: تعليمات معقدة عديدة متغيرة الطول، أكثر لكل تعليمة · RISC: تعليمات بسيطة قليلة ذات طول ثابت، تحميل وتخزين فقط، الكثير من المسجلات، دورة واحدة لكل منها
- الأنبوب (pipeline) يدمج مراحل جلب التعليمات، فك تشفيرها، تنفيذها، الوصول للذاكرة، والكتابة العائدة، بحيث تكمل تعليمة واحدة لكل دورة بمجرد امتلائه: إنتاجية أعلى، وليس تعليمات أسرع؛ مشاكل البيانات ومشاكل التحكم قد توقفه.
- فلينج: SISD، SIMD (وحدة معالجة الرسومات)، MISD، MIMD (متعدد النواة)
- توازي هائل: آلاف المعالجات، ذاكرة موزعة، تمرير الرسائل، MIMD، تُستخدم في الحواسيب العملاقة