को-प्रोसेसर डिज़ाइन, OpenThread के साथ काम करते हैं. OpenThread के उदाहरण बनाते समय, हर को-प्रोसेसर डिज़ाइन के लिए एक फ़र्मवेयर इमेज अपने-आप बन जाती है. ज़्यादा जानकारी के लिए, बाइनरी देखें.
रेडियो को-प्रोसेसर (RCP)
RCP डिज़ाइन में, OpenThread का मुख्य भाग, थ्रेड प्रोसेसर वाले डिवाइस पर कम से कम MAC परत "नियंत्रक" के साथ होस्ट प्रोसेसर पर रहता है. आम तौर पर, होस्ट प्रोसेसर इस डिज़ाइन में काम नहीं करता, कुछ हद तक यह पक्का करने के लिए कि थ्रेड नेटवर्क भरोसेमंद हो.
आरसीपी और होस्ट प्रोसेसर के बीच कम्यूनिकेशन को, OpenThread Daemon की मदद से Spiel प्रोटोकॉल के ज़रिए SPI इंटरफ़ेस पर मैनेज किया जाता है.
इसका फ़ायदा यह है कि ज़्यादा थ्रेड वाले प्रोसेसर पर मौजूद संसाधनों का इस्तेमाल OpenThread की मदद से किया जा सकता है.
यह डिज़ाइन उन डिवाइस के लिए फ़ायदेमंद है जिन पर पावर कम लगने की संभावना कम होती है. उदाहरण के लिए, वीडियो कैमरे से प्रोसेस करने के लिए होस्ट प्रोसेसर हमेशा चालू रहता है.
OpenThread बॉर्डर राऊटर RCP डिज़ाइन का समर्थन करता है. ज़्यादा जानकारी के लिए, OpenThread बॉर्डर बॉर्डर देखें.
आरसीपी बनाने के लिए, यह कोडलैब देखें:
nRF52840 थ्रेड बॉर्डर राऊटर के साथ थ्रेड नेटवर्क बनाएं
नेटवर्क को-प्रोसेसर (एनसीपी)
स्टैंडर्ड एनसीपी डिज़ाइन में SoC पर थ्रेड सुविधाएं होती हैं. साथ ही, यह होस्ट प्रोसेसर पर ऐप्लिकेशन लेयर को चलाता है. यह होस्ट, OpenThread डिवाइस की तुलना में ज़्यादा सक्षम होता है, लेकिन उसकी मांग ज़्यादा होती है.
NCP और होस्ट प्रोसेसर के बीच होने वाले कम्यूनिकेशन को, wpantund
सीरियल सीरियल कोड के ज़रिए मैनेज करता है. आम तौर पर, यह स्पिनल प्रोटोकॉल की मदद से, SPI या UART का इस्तेमाल करता है.
इस डिज़ाइन का फ़ायदा यह है कि ज़्यादा पावर वाले होस्ट काम करना बंद कर सकते हैं, जबकि कम पावर वाला OpenThread डिवाइस थ्रेड नेटवर्क में अपनी जगह बनाए रखने के लिए चालू रहता है. साथ ही, SoC को ऐप्लिकेशन लेयर से नहीं जोड़ा जा सकता. इसलिए, ऐप्लिकेशन का डेवलपमेंट और जांच, OpenThread बिल्ड से अलग है.
यह डिज़ाइन उन गेटवे डिवाइस या डिवाइस पर काम आता है जिनकी प्रोसेसिंग की दूसरी ज़रूरतें हैं, जैसे कि आईपी कैमरा और स्पीकर.
स्पाइन प्रोटोकॉल
स्पाइन एक सामान्य मैनेजमेंट प्रोटोकॉल है. इसकी मदद से, को-प्रोसेसर के साथ कम्यूनिकेट करने और उसे मैनेज करने के लिए, होस्ट डिवाइस को चालू किया जाता है. शुरुआत में इस प्रोग्राम को थ्रेड पर आधारित एनसीपी के साथ काम करने के लिए डिज़ाइन किया गया है. स्पिनल को लेयर्ड अप्रोच की मदद से डिज़ाइन किया गया है. आने वाले समय में, यह नेटवर्क की अन्य टेक्नोलॉजी को आसानी से इस्तेमाल करने में मदद करेगा. इसका इस्तेमाल RCP और NCP डिज़ाइन, दोनों के साथ किया जाता है.
इस प्रोटोकॉल को
/src/lib/spinel
पर OpenThread के साथ शामिल किया गया है. Pyspinel नाम का Python सीएलआई टूल, जांच के लिए उपलब्ध है.
ज़्यादा जानकारी के लिए, 'स्पाइनल होस्ट-कंट्रोलर प्रोटोकॉल' का इंटरनेट-ड्राफ़्ट देखें.