ベースバンド層 (Bluetooth)
読み:ベースバンドそう
外語:baseband layer
Bluetooth
のプロトコルレイヤーの一つ。Bluetoothコントローラー内の層であり、つまり
HCI
より更に下位(物理層寄り)に位置する層である。
目次
概要
特徴
パケット
パケット種類
Basic Rate
Enhanced Data Rate
アクセスコード
ヘッダー
ペイロード
ペイロード種類
一般的なパケットタイプ
SCOパケット
eSCOパケット
ACLパケット
構成
ペイロードヘッダー
概要
Bluetoothコントローラー内では、概ね上から順に次のような階層となる。
リンクマネージャー層
/Link Manager layer
ベースバンド層
/Baseband layer(BB)
無線層(Radio layer)
このベースバンド層には「
ベースバンドリソースマネージャー
」と「
リンクコントローラー
」が置かれ、デバイスの検索や接続などの制御を行なう。
特徴
パケット
パケット種類
Bluetooth 2.0までのベースバンド層におけるパケットは、転送レートによりBasic RateとEnhanced Data Rateの二種類がある。
Basic Rateは1Mbps GFSK、Enhanced Data Rateは2Mbps π/4-DQPSKか3Mbps 8DPSKを用いる。
Enhanced Data Rateの場合でも、データのヘッダー部は従来通りのGFSKであり、ペイロード部分を必要に応じてDPSKなどに切り替えることで高速な通信をするという方法で、ベースバンド層の秩序が乱れないようになっている。
いずれも、LSBを最初に送信する。
Basic Rate
アクセスコード (68または72ビット)
ヘッダー (54ビット)
ペイロード (0〜2745ビット)
Enhanced Data Rate
アクセスコード [GFSK]
プリアンブル
シンクワード
トレーラー
ヘッダー [GFSK]
ガード
シンク [DPSK]
Enhanced Data Rateペイロード [DPSK]
トレーラー [DPSK]
アクセスコード
アクセスコードは、68または72ビット。
プリアンブル (4ビット、0101か1010)
シンクワード (64ビット)
トレーラー (4ビット)
68ビットの時には、最後のトレーラー4ビットが省略される。
ヘッダー
パケットヘッダーは18ビットであるが、レート1/3で変調され、結果として54ビット幅相当となる。
LT_ADDR (3ビット) 論理トランスポートアドレス)
TYPE (4ビット) タイプコード
FLOW (1ビット) フロー制御
ARQN (1ビット) ACKインジケーション
SEQN (1ビット) シーケンス番号
HEC (8ビット) ヘッダーエラーチェック
パケットの種類は4ビットのTYPEで表わすが、さらに、論理トランスポートの種類(ACL/SCO/eSCO)と速度(1Mbpsか2/3Mbpsか)で決められる。
HECはその前の10ビットのヘッダーなどから求められる8ビットCRCである。
ペイロード
ペイロード種類
ペイロードは、上位層などに送られるデータが格納される領域である。
パケットの種類ごとに様々にフォーマットが決められている。
一般的なパケットタイプ
NULLパケット 受信確認やフロー制御に使うパケットで、ペイロード長は0である。アクセスコードとヘッダーを伝えることができる。
POLLパケット
ポーリング
に使う。ペイロード長は0である。
FHSパケット(Frequency Hop Syncronization) スレーブ情報をマスターに通知するための制御パケット。
12フィールド(予備1つ含む)で144ビット長だが、16ビットのCRCを含め、さらにレート2/3で送信するため、結果として240ビット幅相当となる。
SCOパケット
HV1パケット 10情報バイトで、レート1/3で送信するため、結果として240ビット幅相当
HV2パケット 20情報バイトで、レート2/3で送信するため、結果として240ビット幅相当
HV3パケット 30情報バイトで、レート通りで送信するため、結果として240ビット幅相当
DVパケット データ80ビットと音声45から150ビットを送信できる。
eSCOパケット
EV3パケット 1から30情報バイトで、16ビットCRCを持つ
EV4パケット 1から120情報バイトで、16ビットCRCを持つ
EV5パケット 1から180情報バイトで、16ビットCRCを持つ
2-EV3パケット 1から60情報バイトで、16ビットCRCを持つ。Enhanced Data Rateでπ/4-DQPSK変調の際に使われる
EV5パケット 1から360情報バイトで、16ビットCRCを持つ。Enhanced Data Rateでπ/4-DQPSK変調の際に使われる
3-EV3パケット 1から90情報バイトで、16ビットCRCを持つ。Enhanced Data Rateで8DPSK変調の際に使われる
3-EV5パケット 1から540情報バイトで、16ビットCRCを持つ。Enhanced Data Rateで8DPSK変調の際に使われる
ACLパケット
DM1パケット 1から18情報バイトで、16ビットCRCを持つ
DH1パケット 1から28情報バイトで、16ビットCRCを持つ
DM3パケット 2から123情報バイトで、16ビットCRCを持つ
DH3パケット 2から185情報バイトで、16ビットCRCを持つ
DM5パケット 2から226情報バイトで、16ビットCRCを持つ
DH5パケット 2から341情報バイトで、16ビットCRCを持つ
AUX1パケット 1から30情報バイトで、CRCを持たない
2-DH1パケット 2から56情報バイトで、16ビットCRCを持つ。Enhanced Data Rateでπ/4-DQPSK変調の際に使われる
2-DH3パケット 2から369情報バイトで、16ビットCRCを持つ。Enhanced Data Rateでπ/4-DQPSK変調の際に使われる
2-DH5パケット 2から681情報バイトで、16ビットCRCを持つ。Enhanced Data Rateでπ/4-DQPSK変調の際に使われる
3-DH1パケット 2から85情報バイトで、16ビットCRCを持つ。Enhanced Data Rateで8DPSK変調の際に使われる
3-DH3パケット 2から554情報バイトで、16ビットCRCを持つ。Enhanced Data Rateで8DPSK変調の際に使われる
3-DH5パケット 2から1023情報バイトで、16ビットCRCを持つ。Enhanced Data Rateで8DPSK変調の際に使われる
構成
Basic RateのACLパケットは、非同期データフィールドの2ないし3のセグメント、ペイロードヘッダー、ペイロード本体、そしておそらくCRC(AUX1パケットには含まれない)で構成されている。
Enhanced Data RateのACLパケットは、前にガード時間と同期シーケンス、後にトレーラーの計3セグメントが追加される。
ペイロードヘッダー
Basic RateシングルスロットACLパケットでのペイロードヘッダーの構造は、次の通り。
LLID (2ビット)
FLOW (1ビット)
LENGTH (5ビット)
Basic RateマルチスロットACLパケットと、全てのEnhanced Data RateのACLパケットでのペイロードヘッダーの構造は、次の通り。
LLID (2ビット)
FLOW (1ビット)
LENGTH (10ビット)
reserved (3ビット)
LLIDフィールドは、論理リンクの種類を表わす。
00 ‐ N/A ‐ 将来のための予約
01 ‐ ACL-U ‐
L2CAP
メッセージの継続フラグメント
10 ‐ ACL-U ‐ L2CAPメッセージの最初または断片化されていないもの
11 ‐ ACL-C ‐
LMP
メッセージ
再検索