انتقل إلى المحتوى

كيف يعمل، باختصار

ترجمة صفحة How it works, briefly. النص الإنجليزي هو المرجع إن اختلفا.

ينشر المعالج المساعد في إحدى مناطق PCIe BAR خريطةً لخمسة مرافق (facilities)، لكلٍّ منها حوار مختلف:

المرفق ما هو أين يُشرح
ctrl المصافحة وأجراس التنبيه (doorbells) facility-protocol
mvmgmt بطاقة شبكة للإدارة بين المعالج الرئيسي والمعالج المساعد mvmgmt
giu مسار البيانات: بطاقة شبكة كاملة بطوابيرها ومخازنها المؤقتة وتسريعاتها giu
nwa صندوق بريد لحالة كل منفذ: الوصلة والسرعة والوسط والتشغيل الإداري netagent
rpc قناة التحكم التي تملأ جداول التمرير rpc

يحمل مسار البيانات كل المنافذ الأمامية على زوجٍ واحد من طوابير DMA. وما يفصل بينها وسمٌ من بايتين يسبق كل إطار: يكتبه التعريف عند الإرسال ليختار منفذ الخروج، ويقرؤه عند الاستقبال ليعرف إلى أي واجهة ينتمي الإطار. والمنافذ عائلتان لا تتبعان قاعدة واحدة: عشرة منها خلف مبدّل داخلي تحمل 0x8000 + n*0x100، وأربعة هي وحدات MAC مستقلة على الشريحة تحمل 0x0001 إلى 0x0004.

يختلف OCTEON TX في جهة الاستقبال، وهذا مهم. فهناك يملك المعالج الرئيسي ثماني حلقات إخراج، ويختار المسار السريع بينها بتجزئة الإطار (hash)، ولا يختار المعالج الرئيسي شيئًا، فيجب قراءة الحلقات الثماني كلها لا الحلقة التي يستخدمها الإرسال وحدها. والوسم في الموضع نفسه، لكن تسبقه كلمتان إضافيتان من ثمانية بايتات: البادئة التي يستقبلها مخزن المعالج الرئيسي 82 بايتًا لا 66.

ويحتاج الاستقبال إلى أن تُملأ جداول التمرير في المعالج المساعد نفسه، ولهذا وُجدت قناة التحكم: واجهة منطقية لكل منفذ، وربطٌ لوسم المنفذ بها. أمران لكلٍّ منهما، ولا شيء غير ذلك.