Google は、黒人コミュニティのための人種的公平の促進に取り組んでいます。詳細をご覧ください。

コプロセッサの設計者

共同プロセッサの設計は OpenThread でサポートされています。OpenThread のサンプルをビルドすると、各コプロセッサ設計用のファームウェア イメージが自動的に作成されます。詳しくは、バイナリをご覧ください。

無線コプロセッサ(RCP)

OT RCP アーキテクチャ

RCP 設計では、OpenThread のコアは、Thread 無線通信を持つデバイス上に最小限の MAC レイヤ「コントローラ」があるホスト プロセッサ上で動作します。通常、この設計ではホスト プロセッサはスリープしません。これは、Thread ネットワークの信頼性をある程度確保するためです。

RCP とホスト プロセッサ間の通信は、Spinel プロトコルを介した SPI インターフェースを介して、OpenThread Daemon により管理されます。

ここでの利点は、OpenThread がより高性能なプロセッサ上でリソースを活用できることです。

この設計は、電力の制約にあまり敏感ではないデバイスに役立ちます。たとえば、ビデオカメラのホスト プロセッサは、ビデオを常時オンにしている。

OpenThread ボーダー ルーターは RCP 設計をサポートしています。詳細については、OpenThread 境界ルーターをご覧ください。

RCP を作成するには、次の Codelab をご覧ください。

nRF52840 の Thread ネットワークの構築 Thread Border Router

ネットワーク コプロセッサ(NCP)

OT NCP アーキテクチャ

標準的な NCP 設計は、SoC にスレッド機能を備えており、ホスト プロセッサでアプリケーション レイヤを実行します。ホスト プロセッサは通常、OpenThread デバイスよりも高機能ですが、電力消費が大きくなります。

NCP とホスト プロセッサ間の通信は、通常は Spinel プロトコルを介して、SPI や UART などのシリアル インターフェースを介して wpantund によって管理されます。

この設計の利点は、低電力の OpenThread デバイスが Thread ネットワーク内に配置を維持するために低電力のホストをスリープ状態にできる点です。SoC はアプリケーション レイヤには関連付けられていないため、アプリケーションの開発とテストは OpenThread ビルドから独立しています。

この設計は、ゲートウェイ デバイスや、IP カメラやスピーカーなど、他の処理要求があるデバイスに役立ちます。

スピネル プロトコル

Spinel は、ホストデバイスがコプロセッサと通信し、管理できるようにするための一般的な管理プロトコルです。Spinel は当初、スレッドベースの NCP をサポートするように設計されていますが、今後、他のネットワーク テクノロジーに簡単に適応できるように階層化されたアプローチで設計されています。RCP と NCP の両方の設計で使用されます。

このプロトコルは、/src/lib/spinel の OpenThread に含まれています。Pyspinel という Python CLI ツールをテストに使用できます。

詳細については、Spinel Host-Controller Protocol のインターネット ドラフトをご覧ください。