সহ-প্রসেসর ডিজাইন

কো-প্রসেসর ডিজাইন OpenThread দ্বারা সমর্থিত। OpenThread উদাহরণ তৈরি করার সময়, প্রতিটি সহ-প্রসেসর ডিজাইনের জন্য একটি ফার্মওয়্যার ইমেজ স্বয়ংক্রিয়ভাবে তৈরি হয়। আরও তথ্যের জন্য, বাইনারি পড়ুন।

রেডিও কো-প্রসেসর (RCP)

OT RCP আর্কিটেকচার

একটি RCP ডিজাইনে, OpenThread-এর মূল হোস্ট প্রসেসরে থ্রেড রেডিও সহ ডিভাইসে শুধুমাত্র একটি ন্যূনতম MAC লেয়ার "কন্ট্রোলার" সহ বাস করে। থ্রেড নেটওয়ার্কের নির্ভরযোগ্যতা নিশ্চিত করার জন্য হোস্ট প্রসেসর সাধারণত এই ডিজাইনে ঘুমায় না।

RCP এবং হোস্ট প্রসেসরের মধ্যে যোগাযোগ ওপেন থ্রেড ডেমন দ্বারা স্পিনেল প্রোটোকলের উপর একটি SPI ইন্টারফেসের মাধ্যমে পরিচালিত হয়।

এখানে সুবিধা হল যে OpenThread আরও শক্তিশালী প্রসেসরে সংস্থানগুলি ব্যবহার করতে পারে।

এই নকশাটি এমন ডিভাইসগুলির জন্য উপযোগী যা পাওয়ার সীমাবদ্ধতার প্রতি কম সংবেদনশীল। উদাহরণস্বরূপ, একটি ভিডিও ক্যামেরার হোস্ট প্রসেসর ভিডিও প্রক্রিয়া করার জন্য সর্বদা চালু থাকে।

OpenThread বর্ডার রাউটার একটি RCP ডিজাইন সমর্থন করে। আরও তথ্যের জন্য, OpenThread বর্ডার রাউটার পড়ুন।

একটি RCP তৈরি করতে, নিম্নলিখিত কোডল্যাবগুলি পড়ুন:

nRF52840 থ্রেড বর্ডার রাউটার দিয়ে একটি থ্রেড নেটওয়ার্ক তৈরি করুন

নেটওয়ার্ক কো-প্রসেসর (NCP)

OT NCP আর্কিটেকচার

স্ট্যান্ডার্ড এনসিপি ডিজাইনে SoC-তে থ্রেড বৈশিষ্ট্য রয়েছে এবং একটি হোস্ট প্রসেসরে অ্যাপ্লিকেশন লেয়ার চালায়, যা সাধারণত OpenThread ডিভাইসের তুলনায় বেশি সক্ষম (কিন্তু শক্তির চাহিদা বেশি)।

NCP এবং হোস্ট প্রসেসরের মধ্যে যোগাযোগ একটি সিরিয়াল ইন্টারফেসের মাধ্যমে wpantund দ্বারা পরিচালিত হয়, সাধারণত SPI বা UART ব্যবহার করে, Spinel প্রোটোকলের মাধ্যমে।

এই ডিজাইনের সুবিধা হল যে উচ্চ-পাওয়ার হোস্ট ঘুমাতে পারে যখন নিম্ন-শক্তির OpenThread ডিভাইসটি থ্রেড নেটওয়ার্কে তার স্থান বজায় রাখতে সক্রিয় থাকে। এবং যেহেতু SoC অ্যাপ্লিকেশন স্তরের সাথে আবদ্ধ নয়, তাই অ্যাপ্লিকেশনগুলির বিকাশ এবং পরীক্ষা OpenThread বিল্ড থেকে স্বাধীন।

এই নকশাটি গেটওয়ে ডিভাইস বা ডিভাইসের জন্য উপযোগী যেগুলির আইপি ক্যামেরা এবং স্পিকারগুলির মতো অন্যান্য প্রক্রিয়াকরণের চাহিদা রয়েছে৷

স্পিনেল প্রোটোকল

স্পিনেল হল একটি সাধারণ ব্যবস্থাপনা প্রোটোকল যা একটি হোস্ট ডিভাইসকে একটি সহ-প্রসেসরের সাথে যোগাযোগ এবং পরিচালনা করতে সক্ষম করে। প্রাথমিকভাবে থ্রেড-ভিত্তিক NCP-কে সমর্থন করার জন্য ডিজাইন করা হয়েছে, Spinel একটি স্তরযুক্ত পদ্ধতির সাথে ডিজাইন করা হয়েছে যা ভবিষ্যতে অন্যান্য নেটওয়ার্ক প্রযুক্তির সাথে সহজেই মানিয়ে নেওয়ার অনুমতি দেয়। এটি RCP এবং NCP উভয় ডিজাইনের সাথেই ব্যবহৃত হয়।

এই প্রোটোকলটি OpenThread-এর সাথে /src/lib/spinel spinel-এ অন্তর্ভুক্ত করা হয়েছে। Pyspinel নামক একটি Python CLI টুল পরীক্ষার উদ্দেশ্যে উপলব্ধ।

আরও তথ্যের জন্য, স্পিনেল হোস্ট-কন্ট্রোলার প্রোটোকলের জন্য ইন্টারনেট-খসড়া দেখুন।