اللوحات الأم المتقدمة Advanced Motherboard–الجزء الرابع

موارد خطوط طلبات المقاطعة IRQS:

تختلف موارد خطوط طلبات المقاطعة Interrupt Request تماماً عن عناوين الذاكرة وموارد عناوين منافذ 1/0 لفهم هذا النوع من الموارد جيداً، لابد من تغطية الموضوعات الآتية:

v الغرض من خط "Purpose of an IRQ line"

v مهام الـ IRQ المعيارية.

v مشاركة الـ IRQs.

v التضارب بين الـ IRQ2 والـ IRQ9

v مشاركة الـ IRQs

v اكتشاف مشكلة تضاربات الـIRQ2 وحلها

الغرض من خط طلب المقاطعة:

الغرض من خط المقاطعة "IRQ line" هو مد النظام بطريقة تسمح لجهاز أن يعمل في خليفة Background عن طريق هذا الخط يطلب الجهاز انتباه المعالج عندما يحتاج إلى ذلك. ليس بالضرورة أن جميع الأجهزة تحتاج إلى طلبات مقاطعة، ولكن بعض الأجهزة تستخدم المقاطعات Interrupts في حالات معينة. لنأخذ اتصالات الموديم "modem Communications" كمثال لتوضيح هذه المسألة. الغرض من الموديم أصلاً هو ببساطة لإقامة طريقتين للاتصال. بين طرف Terminal وكمبيوتر. إذا أنت أردت تنزيل Download ملف، فإنك لن تستطيع فعل أي شيء آخر حتى تكتمل عملية التنزيل Downloading في هذه الحالة، فإن الموديم لن يستخدم أي مقاطعات على الإطلاق ولكنه بدلاً من ذلك يستخدم طريقة الـ "Polling" في طريقة البولنج "Polling" يذهب البرنامج أولاً إلى لوحة المفاتيح ويفحصها ليكتشف إن كان هناك حرفاً تم ضغطه، فإن كان كذلك فإنه يرسله إلى الموديم. ثم بعد ذلك يقوم بفحص الموديم إن وجده قد استقبل أي حروف من الموقع البعيد فإما أن يرسلها إلى شاشة العرض أو يرسلها إلى نظام الملفات "File System" إذا كان البرنامج في Download. ثم يعود مره أخرى للوحة المفاتيح ثم إلى الموديم وهكذا ذهاب وإياب من لوحة المفاتيح إلى الموديم والعكس، تلك هي طريقة البولنج "Polling".

يرغب مستخدمي الكمبيوتر في توافر القدرة على عمل أشياء أخرى أو تشغيل برامج أخرى أثناء الانتظار في عملية تنزيل الملفات. في كثير من الحالات، يمكن إتمام بدون تغيير أي عناصر مادية Hardware، ولكن فقط مع تغيير في الـ "Software" أولاً يجب فصل البرنامج إلى جزأين بحيث أحد الجزأين يؤدي أعمال المستخدم في صدارة النظام System Foreground بينما الجزء الثاني من البرنامج هو روتين تنزيل الملفات "File Download Routine" يمكن كتابة هذا الروتين كبرنامج منفصل يطلق عليه الاسم Interrupt Service Routine (ISR) ويعمل هذا البرنامج في خلفية "Background" النظام. بذلك الوضع، فإن أراد المستخدم البدء في تنزيل ملف، فإنه سيتم تحديد اسم الملف وتحديد التفاصيل الأخرى ثم بعد ذلك تحميل برنامج الـ ISR ثم تفعيل المقاطعة (عملية تنزيل الملف في الخلفية). أثناء هذه المقاطعة يمكن للمستخدم أن يبدأ أي عمل آخر في الصدارة Foreground بواسطة سريان عملية الـ "Polling" بين لوحة المفاتيح وبين أي جهاز منوط بالعمل. عندما يأتي أول حرف من عملية تنزيل Download، يتسبب في إتمام سلسلة من الخطوات تتلخص فيما يلي:

1. يستقبل منفذ التوالي الحرف من الموديم ثم يقوم بتنشيط خط مقاطعة مناسب IRQ Line عن طريق وضع مفتاح الخط في حالة التوصيل "On".

2. ترى رقاقة حاكم المقاطعة (IC) Interrupt Controller الموجودة على اللوحة الأم طلب المقاطعة هذا (IRQ) فتمرره إلى المعالج في حالة أن لم تكن هناك مقاطعات أخرى تسبقها أو ذات أولوية أعلى منها "Higher priority".

3. عندما يرى المعالج هذه المقاطعة فإنه يوقف عمل الصدارة Foreground Task (ولكن بعد إتمام تنفيذ الأمر الحالي)، ثم يقوم بتخزين عنوان الأمر التالي (المفروض تنفيذه بعد ذلك ضمن عمل الصدارة) في ذاكرة الموصوصة Stack Memory.

4. يستعلم المعالج من حاكم المقاطعة (IC) طالباً منه تحديد أي من الـ ISR هو المطلوب لتشغيله، ثم يقوم بتحويل التحكم إلى ذلك الـ ISR.

5. يقوم الـISR بعدم تمكين Disable أي مقاطعات أخرى أثناء قيامه بمعالجة هذه المقاطعة أيضاً يقوم بتخزين محتويات المسجلات الداخلية (التي يمكن أن تتأثر بالخطوة التالية) في ذاكرة المرصوصة.

6. يحصل الـ ISR على الحرف من منفذ التوالي ثم يرسله إلى نظام الملفات "File System"

7. يقوم الـ ISR إنهاء عمله وذلك بأن يقوم باسترجاع محتويات المسجلات الداخلية من ذاكرة المرصوصة (التي كان سبق وخزنها في الخطوة "5") ثم يعيد تمكين المقاطعات وتحويل التحكم إلى عمل الصدارة "Foreground Task".

8. يعود عمل الصدارة ليكمل تنفيذ الأوامر بادئاً من الأمر التالي الذي تم استرجاعه من ذاكرة المرصوصة هو ومحتويات المسجلات الداخلية للمعالج ليعود الأمر كما كان قبل المقاطعة.

من هنا نرى، أنه في هذه الحالة قد استخدمت المقاطعة لكي تجعل من الممكن أن يؤدي عمل الصدارة، حيث تم تشغيل عمل الخلفية Background Task عندما تأتي بيانات، أعطي المثال السابق لإلقاء الضوء عل التباين الذي بين عملية المقاطعة Interrupt Operation وطريقة البولنج، مع العلم بأن جميع برامج الموديم الآن تستخدم طريقة المقاطعة.

مهام IRQ المعيارية:

توجد عدة مفاهيم خاطئة حول طلبات IRQS، ابتداء من المشكلة البسيطة الخاصة بإحصاء عدد الـ IRQs الفعلية المتاحة للاستخدام. فيما يلي بعض الحقائق القليلة حول الـ IRQs التي أحياناً تفهم خطأ، ثم سيتبعها شرح لكل منها:

· حاسبات الـIBM PC القديمة كانت تمتلك ثمانية خطوط مقاطعة "8 IRQ lines" المتاح للاستخدام منها هو ستة فقط.

· بدءاً من حاسبات الـ AT وحتى جميع حاسبات اليوم، فإنها تمتلك ستة عشر خط مقاطعة 16 IRQs lines"" المتاح منها للاستخدام 11 فقط.

· IRQ و IRQ9 هما أسمين لسلك واحد، لذلك يمكن أن يحدث تضارب فيما بينها لا يمكن لأي IRQ أن تتضارب مع أخرى رقمها مختلف.

تتولى رقاقة حاكم المقاطعة (IC) مسألة تحديد أولوية طلبات المقاطعة وتمرير من له الأولوية للمعالج ثم تمرر التالي له في الأولوية بعد ذلك ثم الذي يليه وهكذا في تتابع على شكل طابور إذا تطلب الأمر ذلك أي في حالة وجود أكثر من طلب مقاطعة في وقت واحد. كانت تستخدم الرقاقة 8259 (رقاقة حاكم المقاطعة) مع نظم حاسبات الـIBM PC القديمة التي يمكنها استقبال ثمانية طلبات مقاطعة، لكن مع تخصيص المقاطعتين IRQ0 و IRQ1 لوظائف اللوحة الأم (لرقاقة التوقيت Timer Chip ولوحة المفاتيح)، إذن ستة مقاطعات IRQs فقط هي المتاحة للأجهزة الأخرى. يبين شكل (4-10) تصميم حاكم المقاطعة المستخدم في حاسبات الـ IBM PC وحاسبات الـ IBM PC-XT ذات الناقل 8-bit ISA.

PC hardware course in arabic-20131213050159-00005_03PC hardware course in arabic-20131213050159-00005_07

عندما جاء النظام IBM-AT أضافت شركة IBM له رقاقة 8259 (حاكم مقاطعة) أخرى على اللوحة الأم. بحيث تكون متعاقبة للرقاقة الأولى "Cascaded" بمعني أنها تعمل عن طريق الأولى كما هو موضح بشكل (5-10) استمرت هذه الطريقة متبعة إلى الآن في نظم الـ Pentium الحالية.

يتضح لنا في الرسم أن رقاقة حاكم المقاطعة الثانية قد أضافت ثمانية مستويات للمقاطعة جديدة، ولكن مع سحب IRQ2 لتوصيل التعاقب وأتيح مكانه IRQ9 ثم تخصيص اثنين IRQs أخرى خلاف IRQ2 و IRQs لوظائف اللوحة الأم (التوقيت النظام System Timer) ولحاكم لوحة المفاتيح (Keyboard Controller)، هما IRQ0 و IRQ1 يسمح هذا بتوفير 11 خط مقاطعة (11 IRQs) لاستخدامات أجهزة الـ 1/0، كما هو مبين في شكل (5-10).

يبين الجدول الآتي جميع الـ IRQs الاختيارية "Optional" وكذلك المعيارية "Standard" المخصصة لوظائف اللوحة الأم وكذلك المخصصة لكارتات الموائمة.

 

PC hardware course in arabic-20131213050220-00006_03

تعليقات

المشاركات الشائعة من هذه المدونة

الشاشة الإفتتاحية لإكسل

أوامر الجافا سكريبت JavaScript

مسائل علي الترانزستورات MOSFET