تتوفّر تصميمات "المعالج المشترك" من خلال OpenThread. عند إنشاء أمثلة لـ OpenThread، يتم تلقائيًا إنشاء صورة برنامج ثابت لكل تصميم معالج مشترك. للحصول على مزيد من المعلومات، يمكنك الرجوع إلى الثنائيات.
معالج مساعد لاسلكي (RCP)
في تصميم RCP، يكمن قلب OpenOpen على المعالج المضيف مع "وحدة تحكم" طبقة MAC بسيطة على الجهاز مع راديو Thread. لا ينام معالج المضيف عادةً في هذا التصميم، جزئيًا لضمان موثوقية شبكة Thread.
تتم إدارة الاتصال بين RCP والمعالج المضيف من خلال OpenThread Daemon من خلال واجهة واجهة موفر خدمة (SPI) عبر بروتوكول Spinel.
وتكمن الفائدة هنا في أن OpenThread يمكنه استخدام الموارد على المعالج الأكثر قوة.
هذا التصميم مفيد للأجهزة الأقل حساسية لقيود الطاقة. على سبيل المثال، يكون معالج المضيف على كاميرا الفيديو قيد التشغيل دائمًا لمعالجة الفيديو.
يدعم جهاز توجيه حدود OpenThread تصميم RCP. للحصول على المزيد من المعلومات، يُرجى الرجوع إلى جهاز توجيه حدود OpenThread.
لإنشاء RCP، ارجع إلى الدروس التطبيقية حول الترميز:
إنشاء شبكة Thread باستخدام nRF52840 جهاز توجيه حدود سلسلة المحادثات
معالج مساعد للشبكة (NCP)
يتضمّن تصميم NCP العادي ميزات Thread على المنظومة على رقاقة (SoC) ويشغّل طبقة التطبيق على معالج مضيف، عادةً ما يكون أكثر قدرة (ولكنه يحتاج إلى قدر أكبر من الطاقة) مقارنةً بجهاز OpenThread.
تتم إدارة الاتصال بين NCP والمعالج المضيف من خلال
wpantund
من خلال واجهة تسلسلية،
عادةً باستخدام SPI أو UART، عبر بروتوكول Spinel.
وتكمن فائدة هذا التصميم في أن المضيف عالي الطاقة يمكنه النوم بينما يظل جهاز OpenThread ذي الطاقة المنخفضة نشطًا للحفاظ على مكانه في شبكة Thread. ونظرًا لأن منظومة على رقاقة (SoC) غير مرتبطة بطبقة التطبيق، فإن تطوير التطبيقات واختبارها يكون مستقلاً عن إصدار OpenThread.
يُعد هذا التصميم مفيدًا لأجهزة المدخل أو الأجهزة التي لها متطلبات معالجة أخرى مثل كاميرات IP ومكبرات الصوت.
بروتوكول Spinel
Spinel هو بروتوكول إدارة عام لتمكين جهاز مضيف من التواصل مع معالج مساعد وإدارته. تم تصميم Spinel في الأساس لدعم NCPs المستندة إلى سلسلة محادثات، وقد تم تصميمه باستخدام منهج متعدد الطبقات يسمح بالتكيُّف بسهولة مع تقنيات الشبكات الأخرى في المستقبل. ويُستخدم مع كل من تصميمات RCP وNCP.
يتم تضمين هذا البروتوكول مع OpenThread على
/src/lib/spinel
. تتوفّر أداة Python CLI باسم
Pyspinel لأغراض الاختبار.
لمزيد من المعلومات، يمكنك الاطّلاع على مسودة بروتوكول الإنترنت في وحدة تحكم مضيف Spinel .