より多くの1-Wire®デバイスが入手可能になるにつれ、益々多くのユーザはデバイスへの通信に1-Wire信号を生成する手間が必要となります。これを行うためにはマイクロプロセッサにあるポートピンの「ビットバンギング」、および1-Wireプロトコルに必要なタイミング機能をマイクロプロセッサに実行させる必要があります。1-Wire伝送はバイトの中間で割り込みが可能ですが、ビットタイムスロットの「ロー」時間では割り込みができません。このことはCPUは各送信ビットに対して最大60マイクロ秒、1-Wireリセットの生成時は少なくとも480マイクロ秒アイドルになることを意味します。1-Wireマスタによってユーザは重要なCPUサイクルをとめることなくシステム内の1-Wireデバイスへの通信を処理できます。VerilogまたはVHDLコアは、1-WireポートとしてユーザのASICに内蔵されており、チップエリアをあまり使用しません(3470ゲートと2つのボンドパッド)。
この回路は、ユーザのシステムにメモリマップされるように設計されており、8ビットまたは単一コマンドを通して1-Wireバスの完全な制御を提供します。ホストCPUは、6つの個別レジスタを通して、コマンドのロード、データの読み書き、および割込み制御の設定を行います。1-Wireバスのタイミングと制御は、すべて内部で生成されます。ホストは単にコマンドまたはデータをロードするだけでよく、あとは他の作業に戻ることができます。CPUが受信する必要がある応答がバスの動作によって生成されると、1-Wireマスタはステータスビットをセットし、イネーブルされていればCPUへの割込みを生成します。読み書きの単純化に加えて、1-WireマスタはROM検索アクセラレータ機能も備えており、CPUが1-Wireバス上で単一ビット操作を行う必要がなくなっています。
|