การออกแบบผู้ประมวลผลข้อมูลร่วม

การออกแบบที่ใช้โปรเซสเซอร์ได้รับการรองรับโดย OpenThread เมื่อสร้างตัวอย่าง OpenThread ระบบจะสร้างรูปภาพเฟิร์มแวร์สําหรับการออกแบบที่ประมวลผลร่วมแต่ละรายการโดยอัตโนมัติ ดูข้อมูลเพิ่มเติมได้ที่ไบนารี

ตัวประมวลผลวิทยุ (RCP)

สถาปัตยกรรมของ OT RCP

ในการออกแบบ RCP นั้น หัวใจหลักของ OpenThread จะอยู่ในตัวประมวลผลโฮสต์ที่มีเลเยอร์ "Controller" ของตัวควบคุมอุปกรณ์ขนาดเล็กที่สุดที่มีวิทยุ Thread เท่านั้น โดยปกติแล้ว ผู้ประมวลผลข้อมูลโฮสต์จะไม่นอนในการออกแบบนี้ เพื่อให้แน่ใจว่าเครือข่ายชุดข้อความมีความเสถียร

การสื่อสารระหว่าง RCP กับตัวประมวลผลโฮสต์จะจัดการโดย OpenThreadDaemon ผ่านอินเทอร์เฟซ SPI ผ่านโปรโตคอล Spinel

ข้อได้เปรียบคือ OpenThread สามารถใช้ทรัพยากรสําหรับผู้ประมวลผลข้อมูลที่ทรงพลังกว่าได้

การออกแบบนี้มีประโยชน์สําหรับอุปกรณ์ที่ไวต่อข้อจํากัดของพลังงานน้อยลง ตัวอย่างเช่น ตัวประมวลผลโฮสต์ในกล้องวิดีโอจะเปิดเพื่อประมวลผลวิดีโอเสมอ

เราเตอร์ของ OpenThread Border รองรับการออกแบบ RCP ดูข้อมูลเพิ่มเติมได้ที่เราเตอร์ของ OpenThread Border

หากต้องการสร้าง RCP โปรดดู Codelab ต่อไปนี้

สร้างเครือข่ายชุดข้อความด้วย nRF52840 เราเตอร์ของ Border

ผู้ประมวลผลข้อมูลร่วมของเครือข่าย (NCP)

สถาปัตยกรรม OT NCP

การออกแบบ NCP มาตรฐานมีฟีเจอร์ "ชุดข้อความ" ใน SoC และเรียกใช้เลเยอร์แอปพลิเคชันบนตัวประมวลผลโฮสต์ ซึ่งโดยปกติแล้วจะมีความสามารถมากกว่า (แต่ต้องการพลังงานมากกว่า) ในอุปกรณ์ OpenThread

การสื่อสารระหว่าง NCP กับหน่วยประมวลผลโฮสต์ได้รับการจัดการโดย wpantund ผ่านอินเทอร์เฟซแบบอนุกรม ซึ่งโดยทั่วไปจะใช้ SPI หรือ UART ผ่านโปรโตคอล Spinel

ประโยชน์ของการออกแบบนี้คือโฮสต์ที่ใช้พลังงานสูงจะนอนหลับได้ในขณะที่อุปกรณ์ OpenThread พลังงานต่ําจะยังคงทํางานเพื่อรักษาตําแหน่งในเครือข่าย Thread และเนื่องจาก SoC ไม่ได้เชื่อมโยงกับเลเยอร์แอปพลิเคชัน การพัฒนาและการทดสอบแอปพลิเคชันจึงไม่ขึ้นอยู่กับบิลด์ OpenThread

การออกแบบนี้มีประโยชน์สําหรับอุปกรณ์ของเกตเวย์หรืออุปกรณ์ที่มีความต้องการในการประมวลผลอื่นๆ เช่น กล้องและลําโพง IP

โปรโตคอล Spinl

Spinel เป็นโปรโตคอลการจัดการทั่วไปสําหรับเปิดใช้อุปกรณ์โฮสต์เพื่อสื่อสารและจัดการผู้ประมวลผลข้อมูลร่วม ในตอนแรก Ssupportl ออกแบบมาเพื่อรองรับ NCP แบบชุดข้อความ ซึ่งได้รับการออกแบบมาให้รองรับการทํางานเป็นระดับๆ ซึ่งทําให้ปรับตัวเข้ากับเทคโนโลยีเครือข่ายอื่นๆ ได้อย่างง่ายดายในอนาคต โดยใช้กับทั้งรูปแบบ RCP และ NCP

โปรโตคอลนี้รวมอยู่กับ OpenThread ที่ /src/lib/spinel เครื่องมือ Python CLI ชื่อ Pyspinel มีไว้สําหรับการทดสอบเท่านั้น

ดูข้อมูลเพิ่มเติมได้ที่ Internet-Drafts สําหรับ Spinel Host-Controller Protocol