Navigation

شرح pipelining processor المعالجات التواردية

تنفذ المعالجات التقليدية تعليمة واحدة بآن واحد (لذلك تُسمى بالمعالجات السلميةscalar processor) أي لا يبدأ المعالج تنفيذ التعليمة التالية إلا بعد الانتهاء تمامًامن تنفيذ التعليمة الحالية. بفرض أن تنفيذ تعليمة يحتاج إلى أربع عمليات أساسية: جلب، فك ترميز، تنفيذ وتخزين، وبفرض أن كل عملية تنجز خلال وحدة زمنية، فيحتاج تنفيذ تعليمة واحدة إلىأربعة وحدات زمنية ويحتاج تنفيذ تعليمتين إلى 8 وحدات زمنية.

اليوم نواصل مسيرنا في سلسلة دروس الدوائر الموئمة ونتعرف مع بعض على مبدأ المعالجة التواردية pipelining .

تنفذ المعالجات التقليدية تعليمة واحدة بآن واحد (لذلك تُسمى بالمعالجات السلميةscalar processor) أي لا يبدأ المعالج تنفيذ التعليمة التالية إلا بعد الانتهاء تمامًامن تنفيذ التعليمة الحالية.
بفرض أن تنفيذ تعليمة يحتاج إلى أربع عمليات أساسيةجلب، فك ترميز، تنفيذ وتخزين، وبفرض أن كل عملية تنجز خلال وحدة زمنية، فيحتاج تنفيذ تعليمة واحدة إلىأربعة وحدات زمنية ويحتاج تنفيذ تعليمتين إلى 8 وحدات زمنية.
نذكر من المعالجات التي تتبنى هذا البنيان الا وهو : المعالج  8085

pipelining processor

إذا احتوى المعالج على عدة وحدات متخصصة 

واحدة لجلب التعليمة وأخرى لفك ترميزها وثالثة لتنفيذها ورابعة لتخزين المعطيات،عندئذ يمكن تنفيذ أكثر من تعليمة بآن واحد.
فبينما تعمل وحدة الجلب على جلب تعليمة جديدة تعمل وحدة الفك على فك التعليمة التيأنهت وحدة الجلب جلبها من الذاكرة، وتعمل وحدة التنفيذ على تنفيذ التعليمة التي أنهتوحدة فك التعليمة من فكها أو تحليلها، وتعمل وحدة التخزين على تخزين ناتج العمليةالسابقةتسمى هذه التقنية بالتوارد Pipelining لأن كل وحدة تخصصية تُوردنتائجها إلى الوحدة التي تليها عند إنهاء مهمتها عبر قناة نُسميها قناة المواردة  Pipeline

cpu

نجد من المخطط السابق أن التعليمة الأولى قد احتاجت إلى أربعة وحدات زمنية لإنهاءتنفيذها، كما هو الحال في المعالج التقليدي، في حين احتاج تنفيذ الثانية فقط إلى وحدةزمنية واحدة وكذلك التعليمة الثالثة وهكذا ..
نستنتج أن وجود الوحدات التخصصية أدى إلى إنقاص زمن المعالجة تقريبًا إلى الربع،ما عدا التعليمة الأولى التي بقي زمن تنفيذها بدون تغيير.
نذكر من المعالجات التي تستخدم في تصميمها مبدأ التوارد معالجات AVR والمتحكماتالصغرية من PIC ومعالج بنتيوم 4 .
مع أن مبدأ التوارد يسمح بإنقاص زمن تنفيذ البرنامج، فإن وجود بعض الصعوباتتجعل أداءه أقل من النحو المرغوب فيه.
فمن ناحية، نجد أن مزامنة عمل الوحدات ليس بالأمر السهل بسبب عدم استغراق جميعالوحدات المدة نفسها لإنهاء عمل كل منها، فمثلا نجد أن الزمن اللازم لتنفيذ تعليمةيكون عادة أكبر من زمن جلب تعليمةومن ناحية أخرى، تُغير تعليمات القفز من تتابع تنفيذ التعليمات، مما يستدعي إفراغ قناة المواردة ثم ملأها مجددًا بعد إنجاز عملية القفز،وهذا يبطئ سرعة تنفيذ البرنامج.


نكتفي بهذا ونلتقي في التدوين القادم او الدرس الرابع بعنوان
 بنية المعالجات السُّلمية الفائقة Superscalar.

عزيزنا الزائر إن كانت هذه اول زيارة لك لمدونتنا لا تنسى الاشتراك فيها عبر بريدك الالكتروني ليصلك كل جديد او قم بالإعجاب بصفحتنا على الفيس بوك في يسار الصفحة ....
مشاركة

أضف تعليق:

1 comments: