図1は、11ad規格及び11ay規格のフレームフォーマットの一例を示す。
11ad規格のフレームは、L-STF、L-CEF、L-Header及びDataフィールド(payload)の順に配置される。以下では、L-STF、L-CEFを「レガシプリアンブル」と呼び、L-Headerを「レガシヘッダ」と呼ぶこともある。
11ay規格のフレームは、L-STF、L-CEF、L-Header、EDMG-Header-A、EDMG-STF、EDMG-CEF及びDataフィールド(payload)の順に配置される。以下では、EDMG-Header-Aを「拡張ヘッダ」と呼び、EDMG-STF,EDMG-CEFを「拡張プリアンブル」と呼ぶこともある。
L-STF、L-CEF、L-Headerは、11ad規格及び11ay規格で共通のフィールドである。一方、EDMG-Header-A、EDMG-STF、EDMG-CEFは、11ay規格のためのフィールドであり、11ad規格では規定されていない。
L-Headerに含まれるreserved bitはビット数(4ビット。例えば、非特許文献1を参照)が限られるため、L-Headerに送信モード選択情報を格納することは困難である。
一方で、従来(11ac規格)のように、11ay規格のEDMG-Header-Aに送信モード選択情報を格納することが考えられる。しかしながら、EDMG-Header-Aに送信モード選択情報を格納した場合、11ay規格に準拠する端末(STA、AP/PCP)(以下、「11ay端末」という)は、EDMG-Header-Aから送信モード選択情報を取り出すための復調、復号処理の遅延が発生する。このため、11ay端末は、EDMG-Header-Aの復調及び復号が完了する前に、EDMG-STFを受信することになる。つまり、11ay端末は、復号遅延のために、EDMG-Header-Aの復号中に、EDMG-Header-Aに後続するEDMG-STFを受信することになる。このため、11ay端末は、EDMG-STFの受信時に送信モード選択情報を特定することが困難であり、受信したEDMG-STFの送信モード(フォーマット)がどのタイプであるか判別することが困難である。
このため、11ay端末は、EDMG-STFに対して、使用できる送信モードの種類は限定されている。これに対して、11ay端末は、例えば、EDMG-STFに対して、次に送信するフォーマットの情報を予め通知することによって、使用できる送信モードの種類を増加させる方法が考えられる。しかし、この方法では、フォーマットを予め通知するための制御情報の送信に無線リソースを要する。
そこで、本開示に係る一態様は、送信装置から受信装置へ送信モード選択情報を適切に通知し、受信装置において送信モード選択情報に基づいてパケットを正しく受信することを目的とする。
以下、図面を適宜参照して、本開示の一実施の形態につき、詳細に説明する。
(実施の形態1)
[送信装置の構成]
図2を用いて、本実施の形態に係る送信装置100(11ay端末)の構成例について説明する。送信装置100は、図1に示す11ay規格のフレームフォーマットを用いて送信信号を送信する。
送信装置100は、L-STF及びL-CEF生成部101、変調部102、L-Header生成部103、符号化部104、変調部105、EDMG-Header-A生成部106、符号化部107、変調部108、EDMG-STF及びEDMG-CEF生成部109、変調部110、DATA符号化部111,DATA変調部112、フレーム結合部113(送信信号生成部に対応)、送信フィルタ部114を含む。
図2において、送信モード選択情報が、L-STF及びL-CEF生成部101、L-Header生成部103、EDMG-Header-A生成部106、EDMG-STF及びEDMG-CEF生成部109に入力される。また、ヘッダ情報がL-Header生成部103及びEDMG-Header-A生成部106に入力される。
送信モード選択情報は、例えば、以下の情報を含む。
・PHY種別(Control PHY, Single Carrier, OFDMおよびDMG(11adモード), EDMG(11ayモード)
・チャネルボンディングの有無、ボンディングするチャネル数
・チャネルアグリゲーションの有無、アグリゲーションするチャネル番号
・MIMO伝送の有無(SU-MIMO / MU-MIMO)、MIMOストリーム数
ヘッダ情報は、例えば、以下の情報を含む。
・送信データ(ペイロード)のデータ長(PSDU(Physical layer Service Data Unit) Length)情報
・送信データ(ペイロード)を符号化及び変調するためのMCS(Modulation and Coding Scheme)情報
・その他のヘッダ情報
L-STF及びL-CEF生成部101は、入力される送信モード選択情報に基づいて、L-STF及びL-CEFのビットパターンを生成する。例えば、L-STF及びL-CEF生成部101は、11ad規格と同様のGolayシーケンスを用いてビットパターンを生成する。
変調部102は、11ad規格と同様に、L-STF及びL-CEF生成部101から入力されるL-STF及びL-CEF(ビットパターン)に対してπ/2-BPSK変調を行う。なお、変調部102は、チャネルボンディング又はチャネルアグリゲーションの場合には、伝送するチャネルに変調データを配置する。
L-Header生成部103(ヘッダ生成部に相当)は、入力される送信モード選択情報及びヘッダ情報に基づいて、11ad規格に規定されるフォーマットに従ってPSDU Header(L-Header)データ(レガシヘッダ信号)を生成する。ただし、L-Header生成部103で生成される情報は全てダミーの情報である。例えば、L-Header生成部103は、L-Headerに含める情報のうち、MCSの値及びPSDU Lengthの値を、L-Headerよりも後のフィールド(EDMG-Header-A、EDMG-STF,EDMG-CEF、DATA)のデータ長を示すように設定する。また、L-Header生成部103は、PSDU Lengthに、送信モード選択情報(以下、「Info」と表すこともある)を含める。なお、L-Header生成部103におけるMCS及びPSDU Lengthの値の設定方法の詳細については後述する。
符号化部104は、11ad規格と同様に、L-Headerに対してLDPC符号化を行い、変調部105は、11ad規格と同様に、L-Headerに対してπ/2-BPSK変調を行う。なお、変調部105は、L-STF, L-CEFと同様に、チャネルボンディング又はチャネルアグリゲーションの場合には、伝送するチャネルに変調データを配置する。
EDMG-Header-A生成部106は、入力されたヘッダ情報に基づいて、EDMG-Header-Aデータを生成する。なお、EDMG-Header-A生成部106は、入力される送信モード選択情報に基づいて、EDMG-Header-Aデータを変更してもよい。例えば、EDMG-Header-A生成部106は、送信モード選択情報に基づいて、EDMG-Header-Aデータの配置(フォーマット)を変更してもよく、EDMG-Header-Aデータに送信モード選択情報の一部を含めてもよい。
符号化部107は、EDMG-Header-Aデータに対して符号化(例えば、LDPC符号化)を行い、変調部108は、EDMG-Header-Aデータに対して変調(例えば、π/2-BPSK変調)を行う。なお、変調部107は、L-STF, L-CEFと同様に、チャネルボンディング又はチャネルアグリゲーションの場合には、伝送するチャネルに変調データを配置する。
EDMG-STF及びEDMG-CEF生成部109は、入力される送信モード選択情報に基づいて、受信装置200(11ay端末)がDATA(ペイロード)部を受信及び復号するために必要なデータパターンを示すEDMG-STF信号及びEDMG-CEF信号を生成する。例えば、EDMG-STF及びEDMG-CEF生成部109は、Golayシーケンスを用いる。
なお、EDMG-STF及びEDMG-CEF生成部109は、チャネルボンディングの場合、ボンディングするチャネル数に応じて異なるパターンを用いてもよい。例えば、EDMG-STF及びEDMG-CEF生成部109は、ボンディングするチャネル数に比例した系列長を有するパターンを繰り返してもよい。また、EDMG-STF及びEDMG-CEF生成部109は、チャネルアグリゲーションの場合、チャネル毎に異なるパターンを用いてもよい。または、EDMG-STF及びEDMG-CEF生成部109は、MIMO送信の場合、ストリーム毎に異なるパターンを用いてもよい。
変調部110は、EDMG-STF及びEDMG-CEF生成部109から入力されるEDMG-STF信号及びEDMG-CEF信号に対して、例えば、π/2-BPSK変調を行う。なお、変調部110は、チャネルボンディングの場合には、ボンディングするチャネル数に応じてシンボルレートを変更する。例えば、変調部110は、1チャネルであれば1.76Gサンプル/秒を用いてもよく、2チャネルであれば3.52Gサンプル/秒を用いてもよい。また、変調部110は、チャネルアグリゲーションの場合には、伝送するチャネルに変調データを配置する。
DATA符号化部111は、ヘッダ情報に含まれるMCS情報に基づいて、送信データ(ペイロード)に対して符号化(例えば、LDPC符号化)を行う。DATA変調部112は、ヘッダ情報に含まれるMCS情報に基づいて、符号化データに対して変調(例えば、π/2-BPSK、π/2-QPSK、π/2-16QAM、π/2-64QAMなど)を行う。
フレーム結合部113は、L-STF、L-CEF、L-Header、EDMG-Header-A、EDMG-STF、EDMG-CEF、DATAを、フレームフォーマット(例えば、図1を参照)に定められた時間順に従って結合し、フレームデータを生成する。
送信フィルタ部114は、フレーム結合部113から入力されるフレームデータに対してフィルタ処理を行い、送信信号を生成し、送信する。例えば、送信フィルタ部114は、フレームデータに対して、オーバーサンプル処理及びRoot Raised Cosineフィルタを適用する。これにより、図1に示す11ay端末のフレームフォーマットの送信信号が送信される。なお、送信装置100で生成された送信信号は、例えば、D/A変換器、RF回路、アンテナを通し無線信号として送信される。
[受信装置の構成]
まず、図3を用いて、11ay端末である受信装置200の構成例について説明する。受信装置200は、受信フィルタ部201、同期部202、復調部203、復号部204、L-Header解析部205、EDMG-Header-A解析部206、受信制御部207を含む。
受信装置200は、送信装置100が送信した無線信号をアンテナ、RF回路、A/D変換器を通して受信する。
受信フィルタ部201は、受信信号に対してフィルタ処理を行う。例えば、受信フィルタ部201は、受信信号に対してRoot Raised Cosineフィルタを適用してもよい。また、受信フィルタ部201は、サンプリングレート変換又は中心周波数のシフト処理を行ってもよい。
また、受信フィルタ部201は、受信信号の帯域幅に応じてフィルタのタップ係数を決定する。
例えば、待ち受け時には、受信フィルタ部201は、L-STF、L-CEF、L-Headerを受信するために、シンボルレートが1.76GHzの信号を受信するようにフィルタ係数を設定する。
また、受信信号(受信パケット)がチャネルボンディングに対応する場合、受信フィルタ部201は、EDMG-STFを受信するタイミングで1.76GHzより大きなシンボルレートの信号を受信するようにフィルタ係数を設定する。例えば、2チャネルのチャネルボンディングの場合、受信フィルタ部201は、シンボルレートを3.52GHzである。
また、受信信号(受信パケット)がチャネルアグリゲーションに対応する場合、受信フィルタ部201は、EDMG-STFを受信するタイミングで、シンボルレートが1.76GHzの信号を同時に複数のチャネルで受信するようにフィルタ係数を設定する。
また、受信信号(受信パケット)がMIMO送信に対応する場合、受信フィルタ部201は、EDMG-STFを受信するタイミングで、複数のRFチェーンで信号を受信するようにフィルタ係数を設定する。
また、受信信号(受信パケット)がOFDM送信に対応する場合、受信フィルタ部201は、EDMG-STF及びEDMG-CEFを、OFDM変調された信号として扱ってもよい。この場合、受信フィルタ部201は、OFDM信号を受信できるように受信構成を切り替える。
同期部202は、相関器(図示せず)を用いてL-STFの検出を行う。また、同期部202は、受信フィルタ部201から入力される受信信号(受信シンボル)のうち、L-STF、L-CEF、EDMG-STF、EDMG-CEF、又はその他の受信シンボルを用いて、受信タイミング又は位相の同期を行う。
例えば、同期部202は、待ち受け時には、相関器を用いてL-STFを検出する。同期部202は、L-STFを検出すると、L-STF又はL-CEFを用いて受信タイミング及び位相の同期を行う。
また、同期部202は、受信パケットがチャネルボンディング、チャネルアグリゲーション、MIMO送信、OFDM送信の各々に対応する場合、各々のタイプに応じてEDMG-STF及びEDMG-CEFを用いて再度同期を行う。
復調部203は、π/2-BPSK、π/2-QPSK、π/2-16QAMなどで変調された受信信号を復調する。例えば、復調部203は、L-Headerに対して予め定められた変調方法(例えば、π/2-BPSK)を用いて復調を行い、ペイロードに対しては、受信制御部207から通知されるMCS情報に基づいて変調方式を判別して復調を行う。また、復調部203は、受信制御部207から通知されるLength情報に基づいて、復調部203の動作開始および停止の制御を行ってもよい。なお、復調部203の前段には、等化部(図示せず)を備えてもよい。
復号部204は、誤り訂正符号化(LDPC符号など)されたデータに対して誤り訂正復号を行う。例えば、復号部204は、L-Headerに対して予め定められた符号化方式及び符号化率(例えば、符号化率3/4のLDPC符号)を用いて復号を行い、ペイロードに対しては、受信制御部207から通知されるMCS情報に基づいて符号化方式及び符号化率を判別して復号を行う。また、復号部204は、Length情報に基づいて、復号部204の動作開始および停止の制御を行ってもよい。
L-Header解析部205は、L-Headerに含まれるMCSフィールド、Lengthフィールドの値から、送信モード選択情報(Info)を抽出する。送信モード選択情報には、例えば、チャネルボンディング情報(CB)、チャネルアグリゲーション情報(CA)、MIMO情報、OFDM情報が含まれる。L-Header解析部205は、送信モード選択情報を、受信フィルタ部201、同期部202及び受信制御部207に出力する。
EDMG-Header-A解析部206は、復号部204から入力されるEDMG-Header-Aのフレームフォーマットを解析し、MCS、Lengthおよびその他の受信制御情報を取得する。
受信制御部207は、EDMG-Header-A解析部206から入力されるMCSおよびLength情報に基づいてフレーム長を計算し、フレーム受信中の期間に渡って、CCA(Clear Channel Assessment)信号をアサートする。なお、CCAとは、受信チャネルにおいて一定レベル以上の信号を受信しているか否かを判定し、通知する処理である。受信制御部207は、受信したパケットが11ay規格のフォーマットであれば、受信したパケットの復調、復号処理を行うように、復調部203及び復号部204に通知する。
なお、受信装置200は、復調又は復号を正しく行えないことを検出した場合、該当する復調又は復号の動作を停止し、省電力化を図ってもよい。
次に、図4を用いて、例えば、11ad端末のレガシ端末である受信装置300の構成例について説明する。受信装置300は、復調部301、復号部302、L-Header解析部303、受信制御部304を含む。
受信装置300は、送信装置100が送信した無線信号をアンテナ、RF回路、A/D変換器を通して受信する。
復調部301は、π/2-BPSK、π/2-QPSK、π/2-16QAMなどで変調された受信信号を復調する。例えば、復調部301は、L-Headerに対して予め定められた変調方法(例えば、π/2-BPSK)を用いて復調を行い、ペイロードに対しては、受信制御部304から通知されるMCS情報に基づいて変調方式を判別して復調を行う。また、復調部301は、受信制御部304から通知されるLength情報に基づいて、復調部301の動作開始および停止の制御を行ってもよい。なお、復調部301の前段には、受信フィルタ部、同期部、等化部(図示せず)を備えてもよい。
復号部302は、誤り訂正符号化(LDPC符号など)されたデータに対して誤り訂正復号を行う。例えば、復号部302は、L-Headerに対して予め定められた符号化方式及び符号化率(例えば、符号化率3/4のLDPC符号)を用いて復号を行い、ペイロードに対しては、受信制御部304から通知されるMCS情報に基づいて符号化方式及び符号化率を判別して復号を行う。また、復号部302は、Length情報に基づいて、復号部302の動作開始および停止の制御を行ってもよい。
L-Header解析部303は、復号部302から入力されるL-Headerのフレームフォーマットを解析し、MCS、Lengthおよびその他の受信制御情報を取得する。
受信制御部304は、L-Header解析部303から入力されるMCSおよびLength情報に基づいてフレーム長を計算し、フレーム受信中の期間に渡って、CCA信号をアサートする。受信制御部304は、受信したパケットが11ad規格のフォーマットである場合、受信したパケットの復調及び復号処理を行うことを、復調部301及び復号部302に通知する。
また、受信制御部304は、受信したパケットが11ay規格のフォーマットである場合も、11ad規格のパケットを受信したものとして、復調部301及び復号部302に、それぞれ、復調及び復号の動作開始の指示を通知する。このとき、復調部301及び復号部302はパケットを正しく復調及び復号できるとは限らない。ただし、本実施の形態によれば、受信制御部304がL-Header中のMCS及びLengthから算出するフレーム長は、正しい値であるため、受信制御部304は、CCA通知を正しく行うことができる。すなわち、送信装置100は、L-Headerに、レガシ端末(受信装置300)が使用しない情報であるが、11ay端末(受信装置200)が識別できる情報(Infoフィールド)を埋め込んでいるにも関わらず、レガシ端末(受信装置300)の動作に影響を与えることがない。
なお、受信装置300は、復調又は復号を正しく行えないことを検出した場合、該当する復調又は復号の動作を停止し、省電力化を図ってもよい。
[送信装置及び受信装置の動作]
以上の構成を有する送信装置100、受信装置200及び受信装置300の動作について説明する。
図5は、送信装置100(L-Header生成部103)における動作を示すフローチャート図である。
図5のステップS1では、送信装置100は、EDMG-Header-A以降のパケット長(つまり、EDMG-Header-A先頭からDataフィールドの終端までのパケット長)(時間)を算出する。そして、送信装置100は、算出したパケット長を11ad SC PHYのSymbol Block(シンボルブロック)数(N_BLKS)に換算する。
ここで、非特許文献1に定められている通り、1つのシンボルブロックは、448シンボルのデータと64シンボルのGI(Guard Interval)とを含む構成であり、シンボルの合計が512シンボルであり、時間にして約291nsecである。
ステップS2では、送信装置100は、L-Headerに格納するMCSの値を決定する。なお、以下では、便宜上、L-Headerに格納するMCSを「DMG MCS」と表し、EDMG-Header-Aに格納するMCSを「EDMG MCS」と表す。例えば、送信装置100は、DMG MCSとして固定のMCSを選択してもよい。
ステップS3では、送信装置100は、L-Headerに格納するPSDU Length(データ長情報)を算出するために使用する値(ベース値。「L_BASE」と表す)を算出する。なお、以下では、便宜上、L-Headerに格納するPSDU Lengthを「DMG PSDU Length」と表し、EDMG-Header-Aに格納するPSDU Lengthを「EDMG PSDU Length」と表す。
ステップS4では、送信装置100は、L-Headerに格納する送信モード選択情報(付加情報。「Info」と表す)の値を生成する。
図6は、送信モード選択情報Infoの一例を示す。ここでは、Infoのフィールドの最大ビット数は6ビット(bit0~bit5)である。
図6では、bit0をチャネルボンディングの有無を示すCB(Channel Bounding)フィールドとし、bit1をチャネルアグリゲーションの有無を示すCA(Channel Aggregation)フィールドとし、bit2,3をMIMO送信の有無及び種類を示すMIMOフィールドとし、bit4をSC送信又はOFDM送信を示すOFフィールドとしている。また、図6では、bit5を将来の機能拡張のためのリザーブビットとしている。bit5の値は例えば常に0としてもよい。なお、Infoフィールドの各値の具体例については後述する。
ステップS5では、送信装置100は、ステップS3で算出したベース値L_BASE、及び、ステップS4で生成したInfoの値を用いて、DMG PSDU Lengthの値を決定する。送信装置100は、DMG MCS及びDMG PSDU Lengthによって表されるパケット長が、ステップS1で算出したシンボルブロック数(N_BLKS)と等しくなるDMG PSDU Lengthを決定する。
例えば、送信装置100は、式(1)又は式(2)に従って、DMG PSDU Lengthを算出する。
DMG PSDU Length=L_BASE-Info
=floor((N_BLKS×N_CBPB-mod(N_BLKS×N_CBPB, L_CW))×R/8)-Info
…式(1)
DMG PSDU Length=L_BASE-Info
=floor(floor(N_BLKS×N_CBPB/L_CW)×L_CW×R/8)-Info
…式(2)
式(1)及び式(2)において、関数floor(x)は、数値xを超えない最大の整数を返す関数を表し、関数mod(x,y)はxをyで除した余りを返すモジュロ演算を表す。また、N_CBPB(シンボルブロックあたりの符号化ビット数)、R(符号化率)は、非特許文献1においてDMG MCSの値に応じて定められる値である。図7は、MCSと、N_CBPB、Rとの対応関係を示す。また、非特許文献1において定められているとおり、L_CW(コードワード長)=672である。
式(1)及び式(2)より、L_BASEの値は、Info=0の場合のDMG PSDU Lengthの値に相当する。すなわち、ステップS3では、送信装置100は、L_CW、ステップS1で算出したN_BLKS、及び、ステップS2で決定したDMG MCSに対応するN_CBPB、Rを用いてL-BASEを算出する。
また、式(1)及び式(2)において、送信モード選択情報Infoの値は、0以上N_Info未満の値を採る。N_Infoはfloor(L_CW×R/8)で算出される。図7は、各MCSと、N_Infoの値、及び、Infoフィールドの最大ビット数との対応関係を示す。
例えば、送信装置100が式(2)に従って図7に示す各MCSを用いてDMG PSDU Lengthを算出した場合は、以下の通りに表される。
MCS1 :DMG PSDU Length = floor(N_BLKS×2/3)×21-Info
MCS2 :DMG PSDU Length = floor(N_BLKS×2/3)×42-Info
MCS3 :DMG PSDU Length = floor(floor(N_BLKS×2/3)×52.5)-Info
MCS4 :DMG PSDU Length = floor(N_BLKS×2/3)×63-Info
MCS5 :DMG PSDU Length = floor(floor(N_BLKS×2/3)×68.25)-Info
MCS6 :DMG PSDU Length = floor(N_BLKS×4/3)×42-Info
MCS7 :DMG PSDU Length = floor(floor(N_BLKS×4/3)×52.5)-Info
MCS8 :DMG PSDU Length = floor(N_BLKS×4/3)×63-Info
MCS9 :DMG PSDU Length = floor(floor(N_BLKS×4/3)×68.25)-Info
MCS10:DMG PSDU Length = floor(N_BLKS×8/3)×42-Info
MCS11:DMG PSDU Length = floor(floor(N_BLKS×8/3)×52.5)-Info
MCS12:DMG PSDU Length = floor(N_BLKS×8/3)×63-Info
…式(3)
このように、送信装置100は、L-Header内のDMG PSDU Lengthに送信モード選択情報Infoを含めて送信する。これにより、受信装置200は、L-Headerを受信時に送信モード選択情報を取得することができる。よって、受信装置200は、EDMG-STFを受信する際には、EDMG-STF以降のフィールドで使用する送信モード(フォーマット)を特定することができるので、フレームを正しく受信することができる。
具体的には、受信装置200は、L-Headerを復号し、DMG MCS及びDMG PSDU Lengthを得る。
そして、受信装置200は、DMG PSDU Lengthを(L_CW×R/8)で除した余りを、(L_CW×R/8)の値から差し引くことにより、Infoの値を算出する。なお、受信装置200は、上記差し引いた値が整数ではない場合、小数点以下を切り捨てることにより(つまり、floor関数により)、Infoの値を求める。DMG MCSが1及び偶数の場合、上記差し引いた値は常に整数となる。
例えば、DMG MCS=MCS2、DMG PSDU Length=80の場合、80を42で除した余りは38であり、42-38は4である。よって、Infoの値は4である。同様にして、例えば、DMG MCS=MCS5、DMG PSDU Length=398の場合、398を68.25で除した余りは56.75であり、68.25-56.75は11.5であり、11.5の小数点以下を切り捨てると11となる。よって、Infoの値は11である。
一方、受信装置300(レガシ端末)は、L-Headerを復号し、DMG MCS及びDMG PSDU Lengthを得る。
そして、受信装置300は、DMG MCS及びDMG PSDU Lengthを用いてCCA検出及びパケット受信処理を行う。受信装置300は、CCA検出及びパケット受信処理を行うことにより、送信装置100からの無線信号を受信処理中に受信しているものとしてCCAを通知する。又は、受信装置300は、DMG MCS及びDMG PSDU Lengthに基づいて送信装置100からの無線信号のパケット長を算出し、算出したパケット長に相当する区間においてCCAを通知してもよい。
次に、図6に示すInfoの値の具体例について説明する。
<CBフィールド>
例えば、CBフィールドの値bit0=0はチャネルボンディングが無効であることを示し、bit0=1は、EDMG-STF以降のフィールド(図1を参照)がチャネルボンディングにより送信されること(チャネルボンディング:有効)を示す。
例えば、チャネルボンディングが有効である場合、受信装置200は、RF(Radio Frequency)部のフィルタ係数、相関器の動作モード、ビームフォーミング設定(セクタ、又はアンテナウェイトベクタ(AWV))、又は、A/Dコンバータのサンプリングレート等のパラメータを切り替える。
このようにして、受信装置200は、L-HeaderのDMG PSDU Lengthに含まれるCBフィールドでEDMG-STF以降のフィールドにおけるチャネルボンディングの有無を特定できる。よって、受信装置200は、EDMG-STFの先頭部分から、受信構成(パラメータ)を切り替えて、チャネルボンディングの有無に応じてフレームを正しく受信することができる。
<CAフィールド>
例えば、CAフィールドの値bit1=0はチャネルアグリゲーションが無効であることを示し、bit1=1はチャネルアグリゲーションが有効であることを示す。
例えば、送信装置100は、チャネルボンディングの場合、EDMG-STF、EDMG-CEFを送信し、チャネルアグリゲーションの場合、EDMG-STF、EDMG-CEFを送信しないことによって、チャネルアグリゲーション時の伝送効率を向上することができる。
このようにして、受信装置200は、L-HeaderのDMG PSDU Lengthに含まれるCAフィールドでチャネルアグリゲーションの有無を特定できる。よって、受信装置200は、EDMG-STFを受信する前に、受信構成(パラメータ)を切り替えて、チャネルアグリゲーションの有無に応じてフレームを正しく受信することができる。
また、受信装置200は、WBフィールド及びCAフィールドの双方又は一方を用いて、受信中のパケットがチャネルボンディング又はチャネルアグリゲーションで送信されたか否かを判断できる。つまり、送信装置100は、チャネルボンディングとチャネルアグリゲーションをパケット毎に切り替えてパケット送信を行うことができる。これにより、例えば、送信装置100は、EDMG PSDU Lengthが長い場合にはチャネルボンディングを用いてより高速の通信を行い、EDMG PSDU Lengthが短い場合にはチャネルアグリゲーションを用いて伝送効率を向上してもよい。
<MIMOフィールド>
例えば、MIMOフィールドの値(bit2、bit3)=00はSISO(Single Input Single Output)送信を示し、(bit2、bit3)=01はSU-MIMO送信を示し、(bit2、bit3)=10はMU-MIMO送信を示し、(bit2、bit3)=11は将来拡張のためにリザーブされた領域であることを示す。
例えば、送信装置100は、非MIMO送信(SISO送信又はダイバーシチ送信)の場合、EDMG-STF、EDMG-CEFを送信しなくてもよい。
このようにして、受信装置200は、L-HeaderのDMG PSDU Lengthに含まれるMIMOフィールドでMIMO送信の有無を特定できる。よって、受信装置200は、EDMG-STFを受信する前に、受信構成(パラメータ)を切り替えて、MIMO送信の有無に応じてフレームを正しく受信することができる。
また、受信装置200は、MIMOフィールドを用いて、受信中のパケットがMIMO送信されたか否かを判断できる。つまり、送信装置100は、MIMO送信と非MIMO送信とをパケット毎に切り替えてパケット送信を行うことができる。これにより、例えば、送信装置100は、EDMG PSDU Lengthが長い場合にはMIMO送信を用いてより高速の通信を行い、EDMG PSDU Lengthが短い場合には非MIMO送信を用いて伝送効率を向上してもよい。
<OFフィールド>
例えば、OFフィールドの値bit4=0はSC送信を示し、bit4=1はOFDM送信を示す。
送信装置100は、SC送信の場合、EDMG-CEFに対してシングルキャリア変調したパターンを用いて、OFDM送信の場合、EDMG-CEFに対してOFDM変調したパターンを用いてもよい。これにより、SC送信及びOFDM送信において受信装置200での受信品質を改善することができる。
このようにして、受信装置200は、L-HeaderのDMG PSDU Lengthに含まれるOFフィールドでEDMG-CEFを受信する前にSC送信又はOFDM送信を特定できる。よって、受信装置200は、EDMG-CEFの先頭部分から、受信構成(CEFパターン)を切り替えて、送信種別に応じてフレームを正しく受信することができる。
[DMG PSDU Lengthの具体例]
次に、上述した送信装置100におけるDMG PSDU Lengthの算出例について説明する。
図8は、本具体例のフレームフォーマットを示す。
図8では、EDMG-Header-A、EDMG-STF、EDMG-CEF及びDataフィールドの長さ(パケット長)は2.91μsecである。そこで、送信装置100は、パケット長(2.91μsec)を、シンボルブロック数(1シンボルブロック:291nsec)に換算して、N_BLKS=10(=2910nsec/291nsec)ブロックを得る。また、図8では、送信装置100は、DMG MCSをMCS9(つまり、図7より、N_CBPB=896、R=13/16)に設定する。
図9は、本具体例のInfoフィールドの値を示す。図9に示すInfoは、チャネルボンディング有効(bit0=1、bit1=0)、非MIMO送信(bit2=0、bit3=0)、SC送信(bit4=0)、リザーブビットbit5=0である。つまり、Infoの値は、"100000"(2進表記)、"0x20"(16進表記)、32(10進表記)である。
図10は、非特許文献1において、MCS9でのDMG PSDU LengthとN_BLKSとの関係を示す。図10では、各DMG PSDU Length(「Length」)は、所定の範囲毎にシンボルブロック数(N_BLKS)に対応付けられている。なお、図10は、MCS9の例を示すが、他のMCSについても同様に、DMG MCSに応じて、DMG PSDU Lengthが、所定の範囲毎にシンボルブロック数(N_BLKS)に対応付けられている。
つまり、送信装置100は、MCS9、N_BLKS=10ブロックの場合、DMG PSDU Lengthを820~887バイトに設定する必要がある。換言すると、送信装置100は、DMG MCS及びDMG PSDU Lengthに対応するパケット長が、N_BLKS=10のシンボルブロックと等しくなるように、DMG PSDU Lengthを決定する。
例えば、送信装置100は、式(1)に従って、DMG PSDU Lengthを以下のように算出する。なお、送信装置100は式(2)に従ってもよい。
DMG PSDU Length = floor(N_BLKS×N_CBPB-mod(N_BLKS×N_CBPB, L_CW)×R/8)-Info
= floor(10×896-mod(10×896, 672)×13/16 /8)-Info
= 887-Info
= 887-32
= 855
すなわち、送信装置100は、DMG PSDU Lengthのベース値L_BASE=887から、Info=32で減算した値(855)を示すDMG PSDU Lengthを生成する。このように算出されたDMG PSDU Length=855は、図10に示すMCS9のN_BLKS=10ブロックの場合のDMG PSDU Lengthが採りうる値の範囲内(820~887)の値、すなわち、適切な値となる。このようにして、送信装置100は、DMG MCS=9、DMG PSDU=855を含むレガシヘッダ信号をL-Headerに格納して受信装置200へ送信する。
一方、受信装置200は、図8に示すフレームフォーマットのパケットを受信した場合、L-Header内のDMG MCSの値(MCS9)、及び、DMG PSDU Lengthの値(855)を抽出する。
次いで、受信装置200は、図7に基づいて、MCS9に対応する符号化率R=13/16であるので、DMG PSDU Length=855を、(L_CW×R/8)=68.25で除した余り(=36)を、(L_CW×R/8)=68.25から差し引き(=32.25)、上記差し引いた値の小数点を切り捨てた値=32をInfoの値として算出する。
これにより、受信装置200は、Infoフィールド(10進表記で32、2進表記で"100000")において、チャネルボンディング有り(bit0=1、bit1=0)、非MIMO送信(bit2=0、bit3=0)、SC送信(bit4=0)であることを特定することができる。
ここで、L_BASEの値=887(式(1)のInfo=0の場合の値「floor(N_BLKS×N_CBPB-mod(N_BLKS×N_CBPB, L_CW)×R/8)」)は、図10に示すMCS9のN_BLKS=10ブロックに対応付けられたDMG PSDU Lengthの範囲(820~887)の最大値に相当する。
つまり、送信装置100は、決定したDMG MCS及びN_BLKSに対応付けられたDMG PSDU Lengthの範囲の最大値L_BASEから、送信モード選択情報の値Infoを減じた値をDMG PSDU Lengthとして算出する。
例えば、図10に示すMCS9のN_BLKS=10ブロックの場合、DMG PSDU Lengthの範囲は820~887であり、この範囲内であれば、N_BLKSの値は変化しない。すなわち、送信装置100は、L-Headerよりも後のデータ長(シンボルブロック数)に対応付けられたDMG PSDU Lengthの範囲の幅(MCS9のN_BLKS=10ブロックの場合、範囲820~887の幅67)に応じて、Infoの値をPSDU Lengthに含めることができる。
具体例では、Infoは6ビットで表され、最大値は10進表記で63("111111"(2進表記))である。よって、送信装置100がL_BASE=887からInfoの最大値63を減じてDMG PSDU Length=824を生成したとしても、対応するN_BLKS=10は変化しない。すなわち、送信装置100が送信モード選択情報Infoをどのように設定しても、送信装置100がL-Headerで送信するDMG PSDU Lengthに対応するシンボルブロック数(N_BLKS)は10ブロックである。
ここで、受信装置300(11ad端末)は、図8に示すフレームフォーマットのパケットを受信した場合、L-Header内のDMG PSDU Lengthの値(855)に基づいて、L-Headerよりも後のフィールド(EDMG-STFからDataフィールド)が10ブロックであることを特定し、特定した区間を送信禁止区間として待機状態になる。
つまり、受信装置300は、送信装置100(11ay端末)が送信したパケットを受信して、L-Headerよりも後のフィールドに相当するフレーム長を正確に特定することができるので、CCA通知を正しく行うことができる。よって、送信装置100は、L-Headerにおいて、受信装置300が使用しない情報であり、11ay端末が識別できる情報である送信モード選択情報(受信装置300に対するダミー情報)を埋め込んだDMG PSDU Lengthを送信しても、受信装置300の通信処理に対して悪影響を与えることはない。
以上、具体例について説明した。なお、ここでは、MCS9について説明したが、送信装置100及び受信装置200は他のMCSについても同様にして動作する。
このように、本実施の形態によれば、送信装置100は、L-Header(レガシヘッダ)よりも後のデータ長を示すDMG PSDU Length(データ長情報)に、EDMG-STF,EDMG-CEF(拡張プリアンブル)の送信モードを示す送信モード選択情報Infoを含めて送信する。こうすることで、受信装置200は、EDMG-STFを受信する前に送信モード選択情報に基づいて受信構成を決定することができるので、EDMG-STFの受信に先立って送信モード(フォーマット)の種別を判別することができ、受信フィルタ部201及び同期部202の構成を適切に切り替えることができる。よって、本実施の形態によれば、送信装置100が送信モード選択情報を適切に通知し、受信装置200において正しくパケットを受信することができる。
さらに、本実施の形態によれば、送信装置100から受信装置200への送信モード選択情報の事前の通知を必要とせず、送信装置100は、1パケット毎に送信モード(フォーマット)の異なるパケットを送信することができる。これにより、送信装置100は、無線状況又は送信データ量に応じて最適なフォーマットを選択することができる。これにより、送信時間の短縮、データレートの向上、送信装置100及び受信装置200の消費電力の低減を図ることができる。
なお、送信装置100は、DMG PSDU Lengthの算出の際、式(1)及び式(2)の何れを用いてもよく、又は、他の算出式に基づいてDMG PSDU Lengthを算出してもよい。すなわち、決定されたDMG MCS及びN_BLKSに応じて設定されるDMG PSDU Lengthが採りうる範囲のうちの最大値からInfoを減算した値を算出する式であればよい。
また、本実施の形態では、一例として、決定されたDMG MCS及びN_BLKSに応じて設定されるDMG PSDU Lengthが採りうる範囲のうちの最大値(L_BASE)からInfoを減算した値を算出する式として、式(1)及び式(2)を示したが、本開示の一態様はこれに限定されるものではない。例えば、送信装置100は、決定されたDMG MCSにおいてN_BLKSに対応付けられたDMG PSDU Lengthの範囲の最小値に、Infoの値を加算した値を示すDMG PSDU Lengthを生成してもよい。
(実施の形態2)
上式(3)の各MCSに対するDMG PSDU Lengthを算出する式において、N_BLKSと乗算される値は、2/3、4/3、又は、8/3(つまり、分母が3の値)の何れかである。つまり、N_BLKSの値が3の倍数の場合、式(3)は、式(1)においてfloor関数を除くことができる。
そこで、本実施の形態では、N_BLKSの値を3の倍数に限定する場合について説明する。これにより、式(1)が簡略化され、送信装置100は演算量を低減することができる。
なお、本実施の形態に係る送信装置及び受信装置は、実施の形態1に係る送信装置100及び受信装置200と基本構成が共通するので、図2及び図3を援用して説明する。
図11は、送信装置100(L-Header生成部103)における動作を示すフローチャート図である。なお、図11において、実施の形態1(図5)と同一処理には同一の符号を付し、その説明を省略する。
図11において、ステップS1Aでは、送信装置100は、シンボルブロック数(N_BLKS)の値を、ステップS1で算出したN_BLKSの値以上の3の倍数の値に置換(調整)する。
以下、ステップS1で算出されたシンボルブロック数(N_BLKS)が3の倍数ではない場合におけるN_BLKSの値の調整方法1~3について説明する。
[方法1(図12A)]
方法1では、送信装置100は、DATAフィールドの後に、シンボルブロック数(N_BLKS)を3の倍数にするためにパディング情報を付加して、シンボルブロック数を調整する。
[方法2(図12B)]
方法2では、送信装置100は、パディングビットを付加せずに、シンボルブロック数(N_BLKS)を3の倍数に切り上げてDMG PSDU Lengthを算出する。
[方法3(図12C)]
方法3では、送信装置100は、シンボルブロック数(N_BLKS)を3の倍数にするために、EDMG-Header-Aの直後(EDMG-Header-AとEDMG-STFとの間)に拡張情報(Exフィールド)を配置して、シンボルブロック数を調整する。なお、送信装置100は、Exフィールドの長さを、L-Header内のInfoフィールドに格納してもよい。また、送信装置100は、ExフィールドにDATAの一部を格納してもよい。
以上、N_BLKSの値の調整方法1~3について説明した。
ステップS2Aでは、送信装置100は、L-Headerに格納するDMG MCSの値を決定し、決定したDMG MCSの値に応じたパラメータN_ratioを決定する。図13は、DMG MCSとN_ratioとの対応関係の一例を示す。N_ratioは、式(3)のDMG PSDU Lengthの算出式に含まれるfloor関数を取り除くことで得られるパラメータである。例えば、MCS1では、floor関数を取り除くとN_BLKS×(2/3)×21-Info、つまり、N_BLKS×14-Infoとなり、N_ratio=14が導出される。他のDMG MCSについても同様である。
ステップS3~S5では、送信装置100は、実施の形態1と同様、DMG PSDU Lengthのベース値(L_BASE)及びInfoの値を用いて、DMG PSDU Lengthの値を決定する。ただし、本実施の形態では、送信装置100は、式(4)又は式(5)に従って、DMG PSDU Lengthを算出する。
DMG PSDU Length=L_BASE-Info
=N_BLKS×N_ratio-Info (MCS5以外の場合) …式(4)
DMG PSDU Length=L_BASE-Info
=floor(N_BLKS×N_ratio)-Info (MCS5の場合)…式(5)
式(4)及び式(5)において、送信装置100は、図13に示すDMG MCSに従ってN_ratioを決定する。送信装置100は、MCS5の場合、N_ratio(=45.5)が整数ではないので、floor関数が残っている式(5)を用いてDMG PSDU Lengthを算出する。
また、式(4)及び式(5)において、Infoの値は、実施の形態1と同様、図13に示す0以上N_Info未満の値である。
一方、受信装置200は、送信装置100から送信されるL-Headerを復号し、DMG MCS及びDMG PSDU Lengthを得る。
そして、受信装置200は、DMG PSDU LengthをN_ratioで除した余りを、N_ratioの値から差し引くことにより、Infoの値を算出する。なお、受信装置200は、上記差し引いた値が整数ではない場合、小数点以下を切り捨てることにより(つまり、floor関数により)、Infoの値を求める。DMG MCSが5以外の場合、上記差し引いた値は整数である。
例えば、DMG MCS=MCS2、DMG PSDU Length=80では、80をN_ratio=28で除した余りは24であり、28-24は4である。よって、Infoの値は4である。同様にして、例えば、DMG MCS=MCS5、DMG PSDU Length=398では、398を45.5で除した余りは34であり、45.5-34は11.5であり、11.5の小数点以下を切り捨てると11となる。よって、Infoの値は11である。
このように、本実施の形態によれば、送信装置100は、実施の形態1(式(1)又は式(2))と比較して、送信モード選択情報をL-Header内のDMG PSDU Lengthに含めるための演算量を低減することができる。
(実施の形態3)
本実施の形態に係る送信装置及び受信装置は、実施の形態1に係る送信装置100及び受信装置200と基本構成が共通するので、図2及び図3を援用して説明する。
11ad規格では、PSDU Lengthの値は18ビット以下、すなわち、262143以下と定められている。図14は、PSDU Lengthを262143以下とした場合における各MCSでシンボルブロック数(N_BLKS)が採りうる最大値を示す(条件1)。
つまり、L-Headerで通知されるDMG MCSの値が固定の場合には、L-Headerよりも後のフィールドのパケット長によって、DMG PSDU Lengthの値を正確に表されない場合が生じる。例えば、送信装置100は、MCS9を用いる場合、N_BLKS=2881よりも長いパケット長を示すDMG PSDU Lengthを表すことは困難である。
また、MCSが5以下において(MCS1~MCS5)、11ad規格に従ってN_BLKSを計算した場合、N_BLKSは、3で除した余りが1となる値にはならない。図15は、一例として、非特許文献1において、MCS2でのDMG PSDU LengthとN_BLKSとの関係を示す。図15では、DMG PSDU Lengthの何れの値に対応するN_BLKSも3で除した余りが1となる値(1,4,7,10,…)にならない。図示しない他のMCS1,3~5についても同様である。
よって、送信装置100は、L-Headerにおいて送信モード選択情報を送信するためにDMG PSDU Lengthを生成する場合、11ad規格と互換性を確保するためには、MCSが5以下(MCS1~MCS5)のN_BLKSを、3で除した余りが1となる値(つまり、N_BLKS=3N+1。Nは整数)に設定しない必要がある(図14の条件2)。
そこで、本実施の形態では、送信装置100は、算出したシンボルブロック数(N_BLKS)に応じて、L-Header内に送信モード選択情報Infoを格納するために用いるDMG MCSを切り替え、シンボルブロック数の調整を行う。
例えば、送信装置100は、EDMG-Header-A、EDMG-STF、EDMG-CEF、Dataフィールドのパケット長に対応するシンボルブロック数が所定の閾値以下の場合、第1のMCS及び当該シンボルブロック数を用いて、送信モード選択情報を含むDMG PSDU Length(データ長情報)を生成する。一方、送信装置100は、EDMG-Header-A、EDMG-STF、EDMG-CEF、Dataフィールドのパケット長に対応するシンボルブロック数が所定の閾値を超える場合、当該シンボルブロック数を当該シンボルブロック数以上の3の倍数の値に調整し、第2のMCS及び調整後のシンボルブロック数を用いて、送信モード選択情報を含むDMG PSDU Lengthを生成する。
図16は、送信装置100(L-Header生成部103)における動作を示すフローチャート図である。なお、図16において、実施の形態1(図5)又は実施の形態2(図11)と同一処理には同一の符号を付し、その説明を省略する。
以下では、一例として、送信装置100は、所定の閾値を図14に示すMCS6に対応するN_BLKS=4682に設定する。また、送信装置100は、第1のMCSをMCS6に設定し、第2のMCSをMCS2に設定する。
ステップS2Bでは、送信装置100は、ステップS1で算出したシンボルブロック数(N_BLKS)が閾値(4682)以下であるか否かを判断する。
N_BLKSが閾値を超える場合(ステップS2B:No)、ステップS2Cでは、送信装置100は、L-Headerに格納するDMG MCSをMCS2に決定する。また、送信装置100は、実施の形態2と同様にして、MCS2に応じたパラメータN_ratioを決定する。また、送信装置100は、実施の形態2と同様にして、シンボルブロック数(N_BLKS)の値を、ステップS1で算出したN_BLKSの値以上の3の倍数値に置換する(ステップS1A)。
つまり、図14では、N_BLKSが4682を超える場合、条件1、条件2を満たす必要があるのに対して、送信装置100は、MCS2を用いることで、N_BLKS=9363までのパケット長を表すことが可能となる(条件1を満たす)。なお、この場合、送信装置100は、N_BLKS=9363を超えるパケット長を表すことは困難である。ただし、図7に示す通り、MCS2のInfoフィールドの最大ビット数(5ビット)は、MCS1のInfoフィールドの最大ビット数(4ビット)よりも多い。よって、送信装置100は、MCSを用いることで、パケット長、及び、送信モード選択情報Infoの双方についてより広い範囲の情報を送信することができる。
11ayの最大パケット長が規格により規定されている場合、送信装置100は、第2のMCSとしては、規定された最大長を表すことができるMCSを選べばよい。例えば、11ad規格では最大パケット長は2msと定められている。11ay規格でも最大パケット長が同じ2msと定められた場合、送信装置100は、MCS3以下を使用することによって、2msのパケット長を表現できる。
より短い最大パケット長が規定された場合、例えば、送信装置100は、MCS5を使うことで、Infoのビット数を増やすことができる。
また、送信装置100は、ステップS3のL_BASEを算出する前にN_BLKSの値を3の倍数に調整することにより、N_BLKSが3N+1となることを回避する(条件2を満たす)。
このようにして、送信装置100は、N_BLKSが閾値を超える場合、図14の条件1及び条件2を満たすパラメータを設定する。
一方、N_BLKSが閾値以下の場合(ステップS2B:Yes)、ステップS2Dでは、送信装置100は、L-Headerに格納するDMG MCSをMCS6に決定する。また、送信装置100は、実施の形態2と同様にして、MCS6に応じたパラメータN_ratioを決定する。
つまり、図14では、N_BLKSが4682以下の場合、条件1を満たす必要があるのに対して、送信装置100は、N_BLKSの最大値が4682であるMCS6を用いることで、何れのパケット長を表すことが可能となる(条件1を満たす)。このようにして、送信装置100は、N_BLKSが閾値以下の場合、図14の条件1を満たすパラメータを設定する。なお、図7に示す通り、MCS6のInfoフィールドの最大ビット数は5ビットとなる。
こうすることで、送信装置100は、パケット長が短い場合(N_BLKS≦閾値)には調整(例えば、パディング)を省略してDMG PSDU Lengthの値を設定することができるため、伝送効率を向上することができる。一方、送信装置100は、パケット長が長い場合(N_BLKS>閾値)でも、パケット長に応じてDMG PSDU Lengthの値を適切に設定することができる。
また、本実施の形態によれば、送信装置100は、MCSが5以下の場合(N_BLKS>閾値。MCS1~MCS5)でも、11ad規格に対応したDMG PSDU Lengthを用いて送信モード選択情報Infoを送信することができる。よって、11ad端末は、送信装置100が送信したパケットを受信することで、当該パケットのパケット長を正しく判断することができる。
なお、実施の形態2のように、N_BLKSを3の倍数に限定する場合でも、送信装置100は、11ad規格と互換性を確保して、L-Headerにおいて送信モード選択情報を送信することができる。
なお、送信装置100は、第2のMCSでは、3の倍数に限定する代わりに、N_BLKS=3N+1を避けるようにパディングを行うとしても良い。すなわち、送信装置100は、3Nに加え3N+2を用いても良く(なお、Nは整数)。なお、送信装置100は、実施の形態1と同様に、各Lengthを計算する。
(実施の形態4)
本実施の形態に係る送信装置及び受信装置は、実施の形態1に係る送信装置100及び受信装置200と基本構成が共通するので、図2及び図3を援用して説明する。
送信装置100(L-header生成部103)は、L-Headerに格納されるDMG PSDU Lengthの一部のビットパターンが送信モード選択情報Infoを示すビットパターンと同一になるDMG PSDU Lengthを生成する。つまり、生成されるDMG PSDU Lengthのビットパターンは、送信モード選択情報Infoのビットパターンを包含する。
具体的には、送信装置100は、送信モード選択情報Infoの値にオフセットを付加し、オフセットが付加された値(以下、info')を用いてDMG PSDU Lengthの値を算出する。例えば、送信装置100は、式(6)~式(9)の何れかに従って、DMG PSDU Lengthを算出する。
DMG PSDU Length=L_BASE-Info
=floor((N_BLKS×N_CBPB-mod(N_BLKS×N_CBPB, L_CW)×R/8)-Info'
…式(6)
DMG PSDU Length=L_BASE-Info
=floor(floor(N_BLKS×N_CBPB/L_CW)×L_CW×R/8)-Info'
…式(7)
(N_BLKSが3の倍数の場合)
DMG PSDU Length=L_BASE-Info'
=N_BLKS×N_ratio-Info' (MCS5以外の場合) …式(8)
DMG PSDU Length=L_BASE-Info'
=floor(N_BLKS×N_ratio)-Info' (MCS5の場合) …式(9)
ここで、Info'は、式(10)に従って算出される。
Info' = mod(-Info + Offset, 2Info_bits) …式(10)
また、Offsetは式(11)に従って算出される。
Offset = mod(L_BASE, 2Info_bits) 式(11)
Info_bitsはInfoフィールドのビット数を表す。
こうすることで、算出されるDMG PSDU Lengthのビットパターンに、Infoのビットパターンが包含される。よって、受信装置200は、L-Headerを受信した場合、演算処理を省略し、受信したL-Header内のDMG PSDU Lengthのうち、Infoフィールドに対応する部分を抽出すればよい。
図17は、送信装置100(L-Header生成部103)における動作を示すフローチャート図である。なお、図17において、実施の形態1(図5)又は実施の形態2(図11)と同一処理には同一の符号を付し、その説明を省略する。
また、以下では、具体例として、シンボルブロック数N_BLKS=12であり、Info=25(10進表記)="11001"(2進表記)であり、Info_bits=5ビットである。また、送信装置100は、DMG MCSをMCS2(N_CBPB=448、R=1/2)に設定する。
この場合、N_BLKS=12は3の倍数であるので、送信装置100は、ステップS1Aの処理を行わず、ステップS2AでパラメータN_ratio=28を決定し、ステップS3でL_BASE=336(=12×28-0。例えば、式(8)を参照)を算出する。
ステップS4Aでは、送信装置100は、ステップS3で算出したL_BASEの値を用いて、式(11)に従って、Offsetの値を算出する。例えば、送信装置100は、L_BASE=336、Info_bits=5であるので、Offset=mod(336, 25)=16を算出する。
ステップS5では、送信装置100は、ステップS3で算出したL_BASE、ステップ4で生成したInfo、ステップS4Aで算出したOffsetを用いて、L-Headerに格納するDMG PSDU Lengthを決定する。例えば、送信装置100は、Info=25、Offset=16、Info_bits=5であるので、式(10)に従って、Info'=mod(-25+16, 25)=mod(-9,32)=23を算出する。そして、送信装置100は、例えば、式(8)に従って、DMG PSDU Length=N_BLKS×N_ratio-Info'=12×28-23=313を算出する。
ここで、図15に示すMCS2の場合のPSDU LengthとN_BLKSとの関係において、PSDU Length=313は、N_BLKS=12の場合の範囲内に存在する。よって、上記により算出されたDMG PSDU Length=313は、N_BLKS=12に対して適切に設定されていることが分かる。
図18は、上記具体例で用いたInfo=25のビットパターン("11001")、及び、算出されたDMG PSDU Length=313のビットパターンを表す。図18に示すように、DMG PSDU Lengthのビットパターンのうち、下位5ビットDMG PSDU Length[4:0]("11001")は、Info=25のビットパターンと同一である。よって、受信装置200は、図18に示すPSDU Lengthの情報を受信すると、演算処理を行うことなく、下位5ビットDMG PSDU Length[4:0]を抽出することで、送信モード選択情報Infoを取得することができる。
このように、本実施の形態によれば、送信装置100は、オフセットを付加した送信モード選択情報をL-Header内のDMG PSDU Lengthに含めて送信する。こうすることで、受信装置200は、受信したL-Header内のDMG PSDU Lengthの一部を抽出することで、送信モード選択情報を取得することができるので、受信装置200の処理量を低減することができる。
なお、送信装置100は、図17に示す処理の代わりに、図19Aに示す処理を行ってもよい。図19Aは、送信装置100のL-Header生成部103における動作を示すフローチャート図である。なお、図19Aにおいて、図17と同一処理には同一の符号を付し、その説明を省略する。具体的には、図19Aでは、ステップS5A及びステップS5BのDMG PSDU Lengthを算出する方法が図17と異なる。
また、以下では、具体例として、上記同様、L_BASE=336("00 0000 0001 0101 0000")とし、Info=25("11001")であり、Info_bits=5である。図20は、送信装置200がこの具体例で生成するビットパターンを表す。
ステップS5Aでは、送信装置100は、L_BASE(18ビット。以下、L_BASE[17:0]と表す)のうち、下位5ビット(L_BASE[4:0])をInfoの値("11001")に置き換える。これにより、置換後のL_BASE[17:0]は、"00 0000 0001 0101 1001"になる。
ステップS5Bでは、送信装置100は、ステップS5Aで求めた値がL_BASEの値を超える場合、置換後のL_BASEの上位ビット(L_BASE[17:5])から1を減ずる。図20では、置換後のL_BASE"00 0000 0001 0101 1001"が10進表記で345であり、元のL_BASE"00 0000 0001 0101 0000"が10進表記で336であるので、置換後のL_BASEは元のL_BASEの値を超えている。
そこで、送信装置100は、置換後のL_BASE[17:5]="0 0000 0000 1010"(10進表記で10)から1を減じて、L_BASE[17:5]は"0 0000 0000 1001"(10進表記で9)となる。そして、送信装置100は、1を減じたL_BASE[17:5]と、Infoが格納されたL_BASE[4:0]とから構成されるビットパターン"00 0000 0001 0011 1001"(10進表記で313)を、L-Header内のDMG PSDU Lengthとして生成する。
なお、図19AにおけるステップS5A~S5Bの方法は、N_BLKSを3の倍数に限定した場合に限らず用いることができる。図19Bに示すとおり、送信装置100は、ステップS1~S4の処理を図5と同様にN_BLKSを3の倍数に限定せずに行い、その後ステップS5A,S5Bの処理を図19Aと同様に適用する。これにより、図5における効果が得られる。
すなわち、受信装置が11ay規格に対応しているか否かに関わらずパケット長を正確に算出することができ、さらに11ay規格に対応した端末はInfo情報を得ることができる。加えて、図18に記載した効果が得られる。
すなわち、Infoの値をPSDU Lengthフィールドから、直接、取り出すことができ、送信装置及び受信装置の構成を簡易にすることができる。また、ステップS5Bでは数値を比較し、その結果に応じて、1を減ずるため、図17におけるOffset値を用いたPSDU Length計算が不要であり、送信装置の構成を簡易にすることができる。
(実施の形態5)
[実施の形態5の基礎]
図21は、11ad規格及び11ad拡張規格のフレームフォーマットの一例を示す。
11ad拡張規格は、11ad規格と同じ基本フレームフォーマットを持つが、Dataフィールドは、11ad規格に定義されない新しいMCSを用いて変調、符号化される。例えば、π/2-64QAM、符号化率7/8のLDPC符号化が用いられる。
11ad拡張規格では、送信装置は、reserved bitとMCSフィールドの値との組み合わせにより、新しく定義されたMCSを用いてDataフィールドが送信されることを通知する。例えば、送信装置は、新しく定義されるMCS12.1(π/2-16QAM、符号化率13/16)を用いる場合、reserved bitの所定のビットを1とし、MCSフィールドに5(11ad規格では、π/2-BPSK、符号化率13/16)を設定する。
11ad拡張規格では、さらに、L-HeaderにおけるLengthフィールドは、11ad規格に準拠した端末が正しいパケット長を算出できるように設定されている。ここで、同じデータ長(PSDU Length)のπ/2-QPSKのパケットとπ/2-BPSKのパケットとでは、Dataフィールドの長さ(時間)がおおむね4倍異なる。従って、送信装置は、MCS12.1においては、実際のデータ長の1/4の値をLengthフィールドに設定する。このため、11ad拡張規格に対応した受信装置は、Lengthフィールドに設定された値の4倍を算出することで、実際のデータ長を算出することができる。
しかしながら、実際のパケット処理においては、例えば、672ビット毎のLDPC符号化、又は、448シンボル毎のGI(Guard Interval)挿入処理などが行われるため、1/4のデータ長を設定することにより、パケット長に誤差が生じる。
一方で、11ad拡張規格ではEDMG-Header-Aのような拡張ヘッダを持たないため、前述の11ay向けの方法と同様にL-HeaderのLengthフィールドに正確なパケット長を表すLengthを設定した場合には、実際のデータ長を表す情報を伝送することが困難である。
以下、図面を適宜参照して、本開示の実施の形態5につき、詳細に説明する。
[実施の形態5の構成]
本実施の形態5に係る送信装置及び受信装置は、実施の形態1に係る送信装置100及び受信装置200を、11ad拡張規格の送信および受信に適応した場合について説明し、実施の形態1と共通する部分については、同じ符号を付し、説明を省略する。
図22は、本実施の形態5に係る送信装置の構成の一例を示す図である。
図22において、L-Header生成部1103(図2のL-Header生成部103(ヘッダ生成部)に相当)は、入力されるヘッダ情報に基づいて、11ad規格又は11ad拡張規格に規定されるフォーマットに従ってPSDU Header(L-Header)データ(レガシヘッダ信号)を生成する。
ただし、11ad拡張規格によって送信する場合、レガシヘッダ信号は、11ad拡張規格におけるMCSとPSDU Lengthとを直接表現しない値、すなわち一定の規則に従い11ad規格の値に置き換えられた値である。例えば、L-Header生成部1103は、11ad拡張規格によって送信する場合、L-Headerに含める情報のうち、reserved bitの定められたビットを1に設定する。
また、MCSの値は、11ad拡張規格におけるMCSの値から一定の規則に従い置き換えられる。例えば、MCS12.1(11ad拡張規格)はMCS5(11ad規格)に置き換え、MCS12.2(11ad拡張規格)はMCS10(11ad規格)に置き換えるように、対応表が予め規定される。
また、L-Header生成部1103は、PSDU Lengthの値を、Dataフィールドのデータ長として設定する。また、L-Header生成部1103は、PSDU Lengthに、11ad拡張規格におけるPSDU Length補正情報(以下、「Info」と表すこともある)を含める。なお、L-Header生成部1103におけるMCS及びPSDU Lengthの値の設定方法の詳細については後述する(図24参照)。
DATA符号化部1111は、11ad規格に定められる符号化方式に加え、11ad拡張規格に定められる追加の符号化方式(例えば符号化率7/8のLDPC符号)を動作モードとして選択できる。
DATA変調部1112は、11ad規格に定められる変調方式に加え、11ad拡張規格に定められる追加の変調方式(例えばπ/2-64QAM)を動作モードとして選択できる。
図23は、本実施の形態5に係る受信装置の構成の一例を示す図である。
復調部1203は、11ad規格に定められる変調方式に加え、11ad拡張規格に定められる追加の変調方式(例えばπ/2-64QAM)により変調された信号の復調処理を動作モードとして選択できる。
復号部1204は、11ad規格に定められる符号化方式に加え、11ad拡張規格に定められる追加の符号化方式(例えば符号化率7/8のLDPC符号)により符号化された信号の復号処理を動作モードとして選択できる。
11ad拡張規格判別部1206は、L-Headerに含まれるreserved bitから、受信パケットが11ad規格及び11ad拡張規格のいずれに準拠しているかを判別する。11ad拡張規格であると判別された場合、11ad拡張規格判別部1206は、MCSフィールドの値から、11ad拡張規格の変調方式、符号化率を判別する。さらに、11ad拡張規格判別部1206は、11ad拡張規格におけるPSDU Lengthを、L-HeaderにおけるMCS、PSDU Length、Scrambler Initializationフィールドの値をそれぞれ用いて算出する(図25参照)。
受信制御部1207は、11ad拡張規格判別部1206から入力されるMCSおよびLength情報に基づいてフレーム長を計算し、フレーム受信中の期間に渡って、CCA(Clear Channel Assessment)信号をアサート(assert)する。なお、CCAとは、受信チャネルにおいて一定レベル以上の信号を受信しているか否かを判定し、通知する処理である。受信制御部1207は、受信したパケットが11ad拡張規格のフォーマットである場合、受信したパケットの復調、復号処理を、復調部1203及び復号部1204に通知する。
なお、レガシ端末が送信装置1100からの信号を受信した場合、実施の形態1~3に開示した処理を行う。このため、レガシ端末は、DATAフィールドに未知の符号化方法、又は、変調方法が適用されているため、DATAフィールドのデータを復号することは困難であるが、L-Headerを復号することができるため、データ長を正しく検出でき、CCAを正しくアサートできる。
図24は、実施の形態5における送信装置1100(L-Header生成部1103)における動作を示すフローチャート図である。なお、図24において、図5に示す動作と同一動作については同一の符号を付し、その説明を省略する。
図24のステップS1aでは、送信装置1100は、DATAフィールドのパケット長(つまり、Dataフィールドの継続時間)を算出する。そして、送信装置1100は、算出したパケット長を11ad SC PHYのSymbol Block(シンボルブロック)数(N_BLKS)に換算する。
ここで、非特許文献1に定められている通り、1つのシンボルブロックは、448シンボルのデータと64シンボルのGI(Guard Interval)とを含む構成であり、シンボルの合計が512シンボルであり、時間にして約291nsecである。
ステップS4aでは、送信装置1100は、L-Headerに格納するPSDU Length補正情報(付加情報。「Info」と表す)の値を生成する。
図25は、PSDU Length補正情報Infoの一例を示す。ここでは、Infoのフィールドの最大ビット数は6ビット(bit0~bit5)である。
例えば、送信装置1100は、ヘッダ情報に含まれる11ad拡張規格のPSDU Length(すなわち、実際に送信するデータ量)を表す値のうち、ビット2~7の情報を取り出してInfoの値として格納する。また、図24に図示しないが、例えば、送信装置1100は、11ad拡張規格のPSDU Lengthのビット0~1の情報をL-HeaderにおけるScrambler Initialization(SI)フィールドの下位2ビットに格納してもよい。このとき、実際のスクランブラ初期値は5ビットまでに制限され、Scrambler Initializationフィールドの上位5ビット(図示せず)に格納される。
図26は、PSDU Length補正情報Infoの他の一例を示す。図26のように、送信装置1100は、11ad拡張規格のPSDU Lengthのうち、Infoの5bitとSIの2bitとして取り出す情報を図25と逆にしても良い。
図27は、11ad拡張規格に対応した送信装置1100の動作の他の一例を示すフローチャート図である。図27では、送信装置1100は、図19Bと同様に、ステップS1~S4の処理を図5と同様にN_BLKSを3の倍数に限定せずに行う。
レガシ端末は、ステップS1aにおいてDATAフィールドを用いる変更を行い、ステップS4aにおいて11ad拡張規格におけるPSDU Lengthに基づいて(例えば図25もしくは図26に示した方法)、Infoを決定する変更を行うことで、11ad拡張規格に対応することができる。なお、図11、図16も、図19B、図27と同様に、ステップS1~S4において、N_BLKSを3の倍数に限定せずに行うことができる。
図28は、図27の動作を適用した送信装置1100(L-Header生成部1103)がL-Headerの値を生成する方法の一例を示す図を示す。
ステップS4aでは、図25と同様に、例えば、11ad拡張規格のPSDU Length(すなわち、実際に送信するデータ量)を表す値のうち、ビット2~7の情報がInfoの値に該当し、送信装置1100は、当該情報をPSDU Length(Length[5:0])に格納する。
図27に図示しないが、送信装置1100は、L-HeaderにおけるMCSを、11ad拡張規格のMCSから一定の規則に基づき換算し、L-HeaderのMCSフィールドに格納してもよい。また、例えば、送信装置1100は、11ad拡張規格のPSDU Lengthのビット0~1の情報をL-HeaderにおけるScrambler Initialization(SI)フィールドの下位2ビット(SI[1:0])に格納してもよい。このとき、スクランブラ初期値は5ビットまでに制限され、Scrambler Initializationフィールドの上位5ビット(SI[6:2])に格納されてもよい。
以下に一例をあげて、レガシヘッダ信号について説明する。例えば、11ad拡張規格のMCSの値は、非特許文献4に定められる12.6であり、変調方式がπ/2-64QAM、符号化方式が符号化率7/8のLDPC符号化(非特許文献4に記載されたpuncturing方式を用いる)であり、11ad拡張規格のPSDU Lengthの値は、1141である。
図27において、ステップS1aは、コードワード数N_CWは17(=ceiling(1141×8/546))と算出されるため、N_BLKSは、4(=ceiling(17×624/2668))と算出される。
ステップS2において、送信装置1100は、非特許文献4より、L-HeaderのMCSを12に定める。
ステップS3において、送信装置1100は、式(3)のMCS12の式を用いて、また、Info=0として、以下のようにL_BASEを算出する。
MCS12:DMG PSDU Length = floor(N_BLKS×8/3)×63-Info
= floor(4×8/3)×63-0 = 630
すなわち、L_BASEは、16進表記で0x276, 2進表記で00 0000 0010 0111 0110である。
11ad拡張規格のPSDU Length(一例として1141)の値を16進表記すると、0x475であり、2進表記(右端がビット0:LSB)で00 0000 0100 0111 0101である。ステップS4aにおいて、送信装置1100は、PSDU Lengthのビット2~7をInfoの値として取り出す。Infoは2進表記で「0111 01」、すなわち10進表記で29である。なお、送信装置1100は、SIに埋め込む2ビットとして、PSDU Lengthのビット0~1を取り出し、2進表記で「01」とする。
ステップS5Aaにおいて、送信装置1100は、L_BASEの下位6bitをInfo(0111 01)に置き換える。これにより、置換後のL_BASE[17:0]は"00 0000 0010 0101 1101"になり、
すなわち10進表記で605である。
ステップS5Baにおいて、置換後のL_BASEの値「605」がL_BASEの値「630」を超えないため、送信装置1100は、605をDMG PSDU Lengthの設定値に決定する。
次に、図23の受信装置1200(11ad拡張規格判別部1206)が、受信したL-Headerの値から11ad拡張規格のPSDU Lengthを算出する方法を、図28を用いて説明する。
受信した値はMCS12, PSDU Length 605である。また、SIの下位2bitは、2進表記で「01」である。従って、受信装置1200がPSDU Lengthの下位6bit(Info)とSIの下位2ビットを抜き出し結合することで、11ad拡張規格のPSDU Lengthの値の下位8ビットは、「0111 0101」と決定される。また、受信装置1200は、受信したMCSの値より、11ad拡張規格におけるMCSは、12.6であると分かる。
次に、受信装置1200は、N_BLKSを算出する。N_BLKSの算出は、受信したMCS(12)とPSDU Length(605)とから、11ad規格に基づき行われる。上記の一例では、N_BLKSの値「4」が得られる。
次に、受信装置1200は、得られたN_BLKSから、最大のコードワード数(N_CW_max)を算出する。11ad拡張規格におけるMCS12.6では、1ブロックあたり2688シンボルのデータシンボルを有し、1コードワードは624ビットである。従って、N_CW_maxは以下のように求まる。
N_CW_max = floor( NBLKS×2688 / 624 )
= floor( 4×2688/624)
= 17
次に、受信装置1200は、取りうる最大のLengthである、L_maxを算出する。11ad拡張規格におけるMCS12.6では、1コードワードは546ビット(68.25バイト)の情報ビットを有するから、L_maxは以下のように求まる。
L_max = floor(N_CW_max × 68.25) = 1160
受信装置1200は、L_maxの下位ビットを、以前に得られた下位8ビットと置き換え、仮のLength(L_tmp)とする。仮のLengthがL_maxより大きければ、受信装置1200は、L_tmpから256を減ずる。ここで、256を減ずる理由は、すでに下位8ビットが確定しているため、256(=2の8乗)刻みでLengthを調整すれば十分であるからである。一例では、各値は2進表記で以下のように表される。
L_max = 00 0000 0100 1000 1000 = 1160
得られた下位ビット 0111 0101 = 117
L_tmp 00 0000 0100 0111 0101 = 1141
L_tmpはL_maxより小さいため、1141が最終的に求める11ad拡張規格におけるPSDU Lengthである。
実施の形態5によれば、送信装置1100は、多くのreserved bitを使うことなく、11ad拡張規格のPSDU Length(データ長、データバイト数)を伝送することができる。
また、実施の形態5によれば、送信装置1100は、受信装置が11ad拡張規格に対応していない場合でも、正確にパケット長(時間)を伝送することができる。
(実施の形態6)
図29は、実施の形態6における送信装置1100(L-Header生成部1103)における動作を示すフローチャート図である。なお、図29において、図24に示す動作と同一動作については同一の符号を付し、その説明を省略する。
図30は、拡張MCS番号、Base length算出式、置き換えるビット数、補正値、MCSフィールドの値、の関係を示す図である。
ステップS1aでは、送信装置1100は、DATAフィールドのパケット長(つまり、Dataフィールドの継続時間)を算出する。そして、送信装置1100は、算出したパケット長を11ad SC PHYのSymbol Block(シンボルブロック)数(N_BLKS)に換算する。
ステップS2bでは、送信装置1100は、図30に基づき、L-Headerに格納するMCSの値である「MCSフィールドの値」を決定する。例えば、11ad拡張規格のMCSである「拡張MCS番号」が12.4である場合、L-Headerに格納するMCSフィールドの値を10とする。図30は、非特許文献4と異なり、L-Headerに格納するMCSフィールドの値が全て6以上となる。前述したとおり、L-Headerに格納するMCSフィールドの値が5以下の場合、N_BLKSの値が3n+1(nは非負の整数)とならず、TXTIMEを正確に表すことは困難である。従って、MCSの値を6以上となるように、11ad拡張規格のMCS「拡張MCS番号」との対応を決定した。
ステップS3bでは、送信装置1100は、図30に示す「Base length算出式」に基づき、L-Headerに格納するPSDU Lengthのベース値(L_BASE)を算出する。L-HeaderのMCSフィールドの値が6から9である場合は、送信装置1100は、実施の形態5と同様に式(3)を参照して導出したL_BASE算出式を用いる。L-Headerに格納するMCSフィールドの値が10から12である場合は、送信装置1100は、式(3)を一部変形した式を用いる。
すなわち、式(3)では、floor関数の内部の分数の分子部分はN_BLKS×8であるが、図30のBase length算出式は、floor関数の内部の分数の分子部分はN_BLKS×4とし、floor関数に続く乗数部を84(MCSフィールドの値=10)、105(MCSフィールドの値=11)、126(MCSフィールドの値=12)のように、式(3)の場合の2倍の値とした。このように、floor関数の内部の計算式を全てのMCSで共通にすることによって、送信装置1100における計算を簡易にし、回路規模および使用するメモリ量を減らすことができる。
ステップS4bでは、送信装置1100は、L-Headerに格納する付加情報(Info)を、11ad拡張規格におけるPSDU Lengthと図30の「置き換えるビット数」より決定する。
図30の「置き換えるビット数」が5の場合(すなわち、MCSフィールドの値が6、7、8、9の場合)、L-HeaderのLengthの値は、L_BASEの下位5ビットをInfoで置き換えて求める。すなわち、Infoは5ビットである。例えば、Infoの値は、PSDU Lengthをビット表現(2進数表現)にしたときのビット3~7の値(ここで、ビット0がLSBである)である。
図30の「置き換えるビット数」が6の場合(すなわち、MCSフィールドの値が10,11,12の場合)、L-HeaderのLengthの値は、L_BASEの下位6ビットをInfoで置き換えて求める。すなわち、Infoは6ビットである。例えば、Infoの値は、PSDU Lengthをビット表現(2進数表現)にしたときのビット3~8の値である。
ステップS5aでは、送信装置1100は、図30の「置き換えるビット数」に応じ、L_BASEの下位5または6ビットをInfoの値で置き換える。
ステップS5bでは、送信装置1100は、ステップS5aで得られた値がL_BASEの値より大きい場合、図30の「補正項」の値を減算する。
ステップS5aにおいて、L_BASEの下位ビットをInfoで置き換えることによって、L_BASEより大きな値になった場合、ステップS5aにおいて得られた値をL-HeaderのLengthとして計算したN_BLKSは、ステップS1aで計算したN_BLKSより大きくなり、パケットのTXTIMEを正しく表さない。そこで、ステップS5bにおいて補正項の値を、ステップS5aにおいて得られた値から減算することにより、送信装置1100は、ステップS1aで計算したN_BLKSと等しいN_BLKSに相当するLengthの値を、得ることができる。
送信装置1100は、以上のようにして得られた値をL-HeaderのLengthフィールドに設定して11ad拡張規格のMCSを送信する。
なお、例えば、送信装置1100は、11ad拡張規格のPSDU Lengthのビット0~2の情報をL-HeaderにおけるScrambler Initialization(SI)フィールドの下位3ビット(SI[2:0])に格納してもよい。このとき、スクランブラ初期値は4ビットまでに制限され、Scrambler Initializationフィールドの上位4ビット(SI[6:3])に格納されてもよい。
図23の受信装置1200(11ad拡張規格判別部1206)は、実施の形態5で説明した方法と同様の方法により、受信したL-Headerの値から11ad拡張規格のPSDU Lengthを算出する。本実施の形態と、実施の形態5との違いは、実施の形態5ではPSDU Lengthのビット0~1の情報が、SIを用いて伝送される代わりに、本実施の形態では、PSDU Lengthのビット0~2の情報が、SIを用いて伝送される。
実施の形態6によれば、送信装置1100は、多くのreserved bitを使うことなく、11ad拡張規格のPSDU Length(データ長、データバイト数)を伝送することができる。
また、実施の形態6によれば、送信装置1100は、受信装置が11ad拡張規格に対応していない場合でも、正確にパケット長(時間)を伝送することができる。
(実施の形態7)
図31は、実施の形態7における送信装置1100(L-Header生成部1103)における動作を示すフローチャート図である。なお、図31において、図24に示す動作と同一動作については同一の符号を付し、その説明を省略する。
図31のステップS1aでは、送信装置1100は、DATAフィールドのパケット長(つまり、Dataフィールドの継続時間)を算出する。そして、送信装置1100は、算出したパケット長を11ad SC PHYのSymbol Block(シンボルブロック)数(N_BLKS)に換算する。
図31のステップS2bでは、送信装置1100は、図32に基づき、L-Headerに格納するMCSの値を決定する。図32は、拡張MCS番号、Base_Length_1、Base_Length_2、MCSフィールドの値、の関係を示す図である。図32に示す11ad拡張規格のMCS(拡張MCS番号)とL-Headerに設定するMCS(MCSフィールドの値)との対応は、図30の表と同一である。
ステップS3cでは、送信装置1100は、図32の「Base_Length_1」、「Base_Length_2」に示す算出式に基づき、2つのPSDU Lengthのベース値(Base_Length_1、Base_Length_2)を算出する。ここで、Base_Length_1は、実施の形態6のL_BASEと同様に、L-Headerに示すMCS(11ad規格のMCS:MCSフィールドの値)に基づき算出した場合に、N_BLKSが所望の値(すなわち、ステップS1aで算出した値)になるLengthの値の1つに該当する。また、Base_Length_2は、11ad拡張規格のMCS(拡張MCS番号)に基づき算出した場合に、N_BLKSが所望の値(すなわち、ステップS1aで算出した値)になるLengthの値の1つに該当する。
Base_Length_1の算出式を一般式で示すと、次式になる。
Base_Length_1 = floor((floor(N_BLKS×N_CBPB/L_CW)×L_CW×R/8) …式(12)
式(12)において、N_CBPB(シンボルブロックあたりの符号化ビット数)、R(符号化率)は、L-HeaderのMCSフィールドの値(すなわち、ステップS2bで選択したMCS)に応じて定められる値である。具体的な値は、すでに図7で示した。また、非特許文献1において定められているとおり、L_CW(コードワード長)は、672である。
Base_Length_2の算出式を一般式で示すと、次式になる。
Base_Length_2 = floor((floor(N_BLKS×N_CBPB_E/L_CW)×L_CW×R_E/8) …式(13)
式(13)において、N_CBPB_E、R_Eは、11ad拡張規格のMCSの値(拡張MCS番号)に応じて定められるN_CBPBの値(シンボルブロックあたりの符号化ビット数)及びR(符号化率)の値である。例えば、11ad拡張規格のMCSの値(拡張MCS番号)に対するN_CBPBとRの値は図33の通りである。
式(12)および式(13)に数値を代入し、式の簡単化を行ったものが、図32における「Base_Length_1」、「Base_Length_2」に示す算出式である。ただし、実施の形態6で説明したとおり、計算式の簡単化、MCS間での共通化のため、floor関数内部の係数をfloor関数の外部に出す式変形を一部のMCSフィールドの値において行っている(例えば、MCS10~12のBase_Length_1)。式変形を行った場合には、図31の手順により得られたL-HeaderのLengthの値が正確なN_BLKSの値に対応しなくなる場合があるが、図32に示した全ての式は、想定される全てのPSDU Lengthの値(1~262143)を代入して計算し、正しいN_BLKSの値が得られることを確認済みである。
図31のステップS4cでは、送信装置1100は、次式に従いMの値を算出する。
M = Base_Length_2 - PSDU_Length …式(14)
図31のステップS5cでは、送信装置1100は、次式に従いL-HeaderのLengthの値を算出する。
Length = Base_Length_1 - floor(M/4) …式(15)
式(15)は、言い換えると、Mの下位2ビットを除いた部分をInfoの値として、実施の形態1の式(1)または式(2)を適用した式である。
なお、例えば、送信装置1100は、Mの値の下位2ビットの情報をL-HeaderにおけるScrambler Initialization(SI)フィールドの下位2ビット(SI[1:0])に格納してもよい。このとき、スクランブラ初期値は5ビットまでに制限され、Scrambler Initializationフィールドの上位5ビット(SI[6:2])に格納されてもよい。
次に、図23の受信装置1200(11ad拡張規格判別部1206)が、受信したL-Headerの値から11ad拡張規格のPSDU Lengthを算出する方法を、図34を用いて説明する。
ステップS11では、受信装置1200は、受信したL-HeaderのMCS(MCSフィールドの値), Length(Lengthフィールドの値)からN_BLKSの値を算出する。
ステップS12では、受信装置1200は、2つのPSDU Lengthのベース値(Base_Length_1, Base_Length_2)を、図32を用いて算出する。
ステップS13では、受信装置1200は、次式に従いInfoの値を決定する。
Info = Base_Length_1 - Length …式(16)
ステップS14では、受信装置1200は、次式によりPSDU Lengthを決定する。
PSDU Length = Base_Length_2 - Info×4 - r …式(17)
式(17)において、rはL-HeaderのSIの下位2ビットの値である。
以上の手順により、11ad拡張規格のMCS(拡張MCS番号)においてはPSDU Lengthの値を格納するフィールドを持たないにもかかわらず、受信装置1200は、PSDU Lengthの値を得ることができる。
実施の形態7によれば、送信装置1100は、多くのreserved bitを使うことなく、11ad拡張規格のPSDU Length(データ長、データバイト数)を伝送することができる。
また、実施の形態7によれば、送信装置1100は、受信装置が11ad拡張規格に対応していない場合でも、正確にパケット長(時間)を伝送することができる。
(実施の形態8)
本実施の形態は、上記実施の形態1~7に対して、チャネルボンディングを適用した場合について説明する。
図35は、本実施の形態の送信装置である、STA2000、STA2100を示す図である。
図36は、STA2000が3つのチャネル(ch1~ch3)を用いてチャネルボンディングを適用したデータパケット(Data1)をSTA2100に送信する手順を示す図である。ch1はプライマリチャネルである。
STA2000は、RTS(Request To Send)フレームを、ch1~ch3を使用して送信する。RTSフレームは、チャネルボンディングを行わず、シングルチャネル用のフレームを3つのチャネルに複製して送信する。なお、STA2000は、RTSフレームを、ch2,ch3では送信しないで、プライマリチャネル(ch1)によって送信してもよい。
RTSフレームは、ch1,ch2,ch3へのチャネル割り当て要求を示す情報を含む。すなわち、STA2000は、ch1,ch2,ch3を利用してSTA2100と通信(送受信)する要求を、STA2100及び周辺の図示しないSTAに対してRTSフレームを使って通知する。
また、RTSフレームは、部分割り当て要求を示す情報を含む。
STA2100は、RTSフレームを受信した後、DMG CTSフレームを、ch1~ch3を使用して送信する。STA2100は、DMG CTSフレームを、チャネルボンディングを行わず、シングルチャネル用のフレームを3つのチャネルに複製して送信する。なお、STA2100は、DMG CTSフレームを、ch2、ch3では送信しないで、プライマリチャネル(ch1)によって送信してもよい。
DMG CTSフレームは、ch1,ch2,ch3へのチャネル割り当て要求に対し、ch1,ch2,ch3へのチャネル割り当てを許可する応答情報を含む。すなわち、STA2100は、ch1,ch2,ch3を利用してSTA2000と通信(送受信)を行うことが可能であると判断したことを、STA2000及び周辺の図示しないSTAに対してDMG CTSフレームを使って通知する。
また、DMG CTSフレームは、部分割り当て要求を許可する応答情報を含む。
STA2000は、ch1,ch2,ch3へのチャネル割り当て要求がSTA2100によって許可されたので、STA2100に対して、ch1,ch2,ch3の全てを使用してチャネルボンディングもしくはチャネルアグリゲーションを用いて送信を行うことができる。また、STA2000は、部分割り当て要求がSTA2100によって許可されたので、STA2100に対して、ch1,ch2,ch3の全てもしくは一部のチャネルを使用してチャネルボンディングもしくはチャネルアグリゲーションを用いて送信を行うことができる。
なお、STA2100も、STA2000と同様に、STA2000に対して、ch1,ch2,ch3の全てもしくは一部のチャネルを使用してチャネルボンディングもしくはチャネルアグリゲーションを用いて送信を行うことができる。
このため、図36では、STA2000は、ch1,ch2,ch3の全てを使用してチャネルボンディングを用いてデータパケットData1を送信する。
図37は、Data1パケットのPHYフレーム構成を示す図である。L-STFは、11ad規格のSC-PHYと同じSTF(Short Training Field)である。L-CEFは、11ad規格のSC-PHYと同じCEF(Channel Estimation Field)である。L-Headerは、11ad規格のSC-PHYと互換性を持つヘッダフィールドである。EDMG-Header-Aは、11ay規格で用いるヘッダ方法フィールドである。L-STFからEDMG-Header-Aまでは、シングルチャネル送信される。すなわち、各チャネルにおいて、L-STFからEDMG-Header-Aまでの各フィールドは、11ad規格のパケットと同じスペクトラムとなる。なお、「EDMG-」は「E-」と表記する場合がある。
EDMG-STFは、11ay規格で用いるフィールドである。EDMG-CEFは、11ay規格で用いるフィールドである。Payloadフィールドは、送信データを含む。
チャネルボンディングを用いるパケットでは、EDMG-STF、EDMG-CEF、Payloadは、チャネルボンディングのチャネル数に応じた信号帯域で送信される。チャネルアグリゲーションを用いるパケットでは、EDMG-STF、EDMG-CEF、Payloadは、シングルチャネルで変調され、チャネルアグリゲーションで用いるチャネルにて送信される。また、チャネルアグリゲーションを用い、かつMIMO送信を用いない場合には、EDMG-STF及びEDMG-CEFフィールドを省略し、EDMG-Header-Aの直後にPayloadを送信しても良い。
このように、チャネルボンディングを用いるかどうか、チャネルアグリゲーションを用いるかどうか、どのチャネルを用いるか、及びMIMOを用いるかどうかの情報に応じて、EDMG-STF以降の送信信号は異なる。つまり、受信装置は、EDMG-STFを受信開始する前に、EDMG-STFの送信信号のタイプを判別して、受信装置の設定を切り替える必要がある。
EDMG-Header-AはLDPC符号化されており、復号を行うことで遅延が生じるため、EDMG-Header-Aに前述の情報が含まれる場合、受信装置は、EDMG-STFの受信開始前に前述の情報を判別することが困難である。ここで、L-Headerに前述の情報が含まれる場合、受信装置は、復号処理による生じる遅延を考慮しても、EDMG-STFの受信開始前にEDMG-STFの有無及びEDMG-STFの信号の種類を判別することができる。
図38は、実施の形態8のL-Headerのフォーマットを示す図である。11ad規格と同じフィールド名かつ同じ用途のフィールドは、説明を省略する。
STA2000(データ送信)は、MCSフィールドを、パケットの長さN_BLKSが4682以下に相当する場合、MCS6に設定する。STA2000は、MCSフィールドを、パケットの長さN_BLKSが4682を超える長さに相当する場合、MCS2に設定する。この理由は、実施の形態3において説明したため、ここでの説明は省略する。
STA2000(データ送信)は、Channel Aggregationフィールドを、チャネルアグリゲーションを使用する場合は1、その他の場合は0に設定する。図37では、STA2000(送信装置)は、Data1パケットに対して、チャネルボンディングを用いており、チャネルアアグリゲーションを用いていないため、Channel Aggregation(CA)フィールドを0に設定する。
Channel Occupation1フィールドは、RTS及びDMG CTSフレームにより割り当てを決定したチャネルのうち、もっとも下位のチャネル(周波数帯が低いチャネル)を該当のパケットで使用しているかどうかを示す。図36では、RTS及びDMG CTSフレームによりch1,ch2,ch3の割り当てを決定した。そのうち最下位のチャネルはch1である。STA2000(送信装置)は、Data1パケットに対して、ch1をチャネルボンディングの一部として使っているから、Channel Occupation1フィールドを1に設定する。
Channel Occupation2フィールドは、RTS及びDMG CTSフレームにより割り当てを決定したチャネルのうち、下位から2番目のチャネルを該当のパケットで使用しているかどうかを示す。図36では、RTS及びDMG CTSフレームによりch1,ch2,ch3の割り当てを決定した。そのうち下位から2番目のチャネルはch2である。STA2000(送信装置)は、Data1パケットに対して、ch2をチャネルボンディングの一部として使っているから、Channel Occupation2フィールドを1に設定する。
Channel Occupation3フィールドは、RTS及びDMG CTSフレームにより割り当てを決定したチャネルのうち、下位から3番目のチャネルを該当のパケットで使用しているかどうかを示す。図36では、RTS及びDMG CTSフレームによりch1,ch2,ch3の割り当てを決定した。そのうち下位から3番目のチャネルはch3である。STA2000(送信装置)は、Data1パケットに対して、ch3をチャネルボンディングの一部として使っているから、Channel Occupation3フィールドを1に設定する。
Channel Occupation4フィールドは、RTS及びDMG CTSフレームにより割り当てを決定したチャネルのうち、下位から4番目のチャネルを該当のパケットで使用しているかどうかを示す。図36では、RTS及びDMG CTSフレームによりch1,ch2,ch3の割り当てを決定した。STA2000(送信装置)は、3チャネルの割り当てを用いて各フィールドを送信するため、Channel Occupation4フィールドを0に設定する。
以上から、図37では、STA2000(送信装置)は、Data1パケットに対して、L-HeaderにおいてChannel Occupation(CO)フィールドの値を1110に設定する。(以下、Channel Occupation1,2,3,4の値を1,1,1,0に設定する場合、「COフィールドの値を1110に設定する」と記載する。
図38では、Lengthフィールドは、パケットのTXTIMEを正しく表す値を設定する。例えば、STA2000(送信装置)は、MCSフィールドに2を設定した場合、Channel Aggregationフィールド及びChannel Occupation1~4フィールドの値をInfoの値とみなし、図19Aを用いてLengthフィールドの値を算出する。また、STA2000(送信装置)は、MCSフィールドに6を設定した場合、図19Bを用いてLengthフィールドの値を算出する。
図38のMIMOフィールドは、送信にMIMOを用いているかどうか(言い換えると、複数ストリーム送信がされているかどうか)を示す。図37では、STA2000(送信装置)は、Data1パケットに対してMIMOを適用していないため、MIMOフィールドを0に設定する。
なお、EDMG Indicationフィールドは、11ay規格のEDMG PHYフレームの場合、1に設定される。
図38のL-Headerのフィールド構成により、STA2000(送信装置)は、チャネルボンディングを用いるかどうか、チャネルアグリゲーションを用いるかどうか、どのチャネルを用いるか、及びMIMOを用いるかどうかをL-Headerによってで通知することができる。これにより、STA2100(受信装置)は、EDMG-STFの受信開始時点で受信回路の設定を適切に切り替えることができる。
図39~図41に別の例を示す。図39は、STA2000が4つのチャネル(ch1~ch4)を用いてチャネルボンディング及びチャネルアグリゲーションを適用したデータパケットの送信手順を示す図である。図39では、STA2000とSTA2100とは、4つのチャネルch1~ch4をRTS, DMG CTSを用いて割り当てた。また、図39では、部分割り当てを有効とした。
図39では、STA2000は、Data2パケットを3つのチャネルch1~ch3を用いて送信すると決定した。決定されたチャネルは、RTS, DMG CTSを用いて割り当てたチャネルに含まれており、部分割り当てが有効とされているため、Data2パケットのような、一部のチャネルを用いた送信が可能である。
STA2000がch4を使わずチャネルch1~ch3によって送信すると判断した理由は、例えば、STA2000が、Data2パケットの送信前にキャリアセンスを行い、ch4において、図示しない他の端末が送信を行っていることを検出したためである。この場合、STA2000は、キャリアセンスで信号が検出されたチャネルにSTA2000のプライマリチャネル(ch1)が含まれないため、STA2000の通信相手先であるSTA2100の送信信号では無いと判断できる。従って、STA2000は、ch4を除いた他のチャネルを用いてData2パケットを送信できると判断する。
STA2000がch4を使わずチャネルch1~ch3によって送信すると判断した別の理由は、例えば、Data2パケットで送信するデータ量(PSDU Length)が小さい場合である。データ量が小さい場合、チャネルボンディングするチャネル数を増やしてもパケット長を効果的に短縮することが困難であるため、チャネル数を減らして送信することでch4への干渉を減らしたり、消費電力を減らしたりすることができる。
また、送信装置は、チャネルボンディングするチャネル数が少ないほど1チャネルあたりの送信電力を高めることができる。これは、例えば、送信装置の総送信電力が規制により定められている場合や、送信装置の能力による場合である。送信装置は、1チャネルあたりの送信電力を高めることにより、パケット誤り率を低減し、MCS(変調多値数や符号化率)を高めて送信することができ、他の端末への干渉の低減や消費電力の低減を可能にできる。
図40は、チャネルボンディングによるData2パケットのPHYフレーム構成を示す図である。STA2000は、L-HeaderにおけるCOフィールドの値を1110に設定して送信する。すなわち、STA2000(送信装置)は、ch4には無線信号を送信しないため、Channel Occupation4フィールドを0に設定する。
STA2100(受信装置)は、受信したL-HeaderのCAフィールド、COフィールド、MIMOフィールド及びEDMG Indication(図38参照)の値を参照し、Data2パケットでは、EDMG-Header-Aにch1~ch3でボンディングされたEDMG-STFが続いていることを知ることができる。従って、STA2100はEDMG-STFを受信する前に受信部の構成を3チャネルボンディングに切り替える。
また、図39では、STA2000は、Data3パケットを3つのチャネルch1,ch3,ch4を用いて送信すると決定した。決定されたチャネルはRTS, DMG CTSを用いて割り当てたチャネルに含まれており、部分割り当てが有効とされているため、STA2000は、Data3パケットのような、一部のチャネルを用いた送信が可能である。
図41は、チャネルアグリゲーションによるData3パケットのPHYフレーム構成を示す図である。STA2000は、L-HeaderにおけるCOフィールドの値を1011に設定して送信する。すなわち、ch2には無線信号を送信しないため、STA2000は、Channel Occupation2フィールドを0に設定する。また、STA2000は、使用するチャネルが非連続であり、チャネルアグリゲーションを使用するため、CAフィールドに1を設定する。STA2000は、非MIMO送信を使用するため、MIMOフィールドを0に設定する。
また、Data3パケットは、チャネルアグリゲーションかつ非MIMOのフレームである。そこで、STA2000は、EDMG-STFとEDMG-CEFフィールドを省略して送信する。これにより、伝送効率、スループットを高めることができる。
STA2100は受信したL-HeaderのCAフィールド、COフィールド、MIMOフィールド及びEDMG Indication(図38参照)の値を参照し、Data3パケットでは、EDMG-Header-Aにch1,ch3,ch4でチャネルアグリゲーションされたEDMG-STFが続いていないことを知ることができる。従って、STA2100はPayloadを受信する前に受信部の構成を、チャネルアグリゲーションを受信する設定に切り替える。
図39では、STA2100は、Data2パケットを受信した後、受信確認としてAckフレームを送信する。STA2100は、Data2の送信に使われたチャネルに関わらず、RTS, DMG CTSを用いて割り当てた全てのチャネルに対してAckフレームを送信する。これにより、STA2100(受信装置)は、チャネルの割り当てが継続することをSTA2000および図示しない他の近隣のSTAに通知することができる。
なお、STA2100(データ受信)は、Ackフレームを、対応するデータフレーム(例えばData2パケットではch1,ch2,ch3)が使用したチャネルによって送信してもよい。これにより、STA2100(データ受信)は、他のSTAへの干渉を減らすことができる。
なお、STA2100(データ受信)がAckフレームを対応するデータフレームが使用したチャネルによって送信した場合、STA2000(データ送信)、STA2100(データ受信)および他のSTAは、送信されなかったチャネルの割り当てが開放されたとみなしてもよい。これにより、STA2000、STA2100および他のSTAは、開放されたチャネルに対する割り当て要求を送信することができる。また、これにより無線チャネルを効率的に利用することができる。
図42は、チャネルアグリゲーションを適用したデータパケットの他の送信手順を示す図である。図42では、STA2000とSTA2100は、3つのチャネルch1,ch2,ch4をRTS, DMG CTSを用いて割り当て、部分割り当てを有効とした。
STA2000がch3を割り当てずチャネルch1,ch2,ch4に割り当てると判断した理由は、例えば、STA2000が、ch3に干渉が多いことを検出しているためである。STA2000(送信装置)は、干渉が多いチャネルを避けてチャネルアグリゲーションを行うことにより、スループットを高めることができる。
なお、図42では、STA2000は、Data4パケットを2つのチャネルch1,ch4を用いて送信すると決定した。決定されたチャネルは、RTS, DMG CTSを用いて割り当てたチャネルに含まれており、部分割り当てが有効とされているため、STA2000は、Data4パケットのような、一部のチャネルを用いた送信が可能である。
図43は、チャネルアグリゲーションによるData4パケットのPHYフレーム構成を示す図である。STA2000(送信装置)は、L-HeaderにおけるCOフィールドの値を1010に設定して送信する。すなわち、ch2には無線信号を送信しないため、Channel Occupation2フィールドを0に設定している。ここで、STA2000(送信装置)は、Data4パケットに対してch1,ch4を使っているにもかかわらず、COフィールドの値を1001と設定しない。これは、Channel Occupation1~4は、チャネル番号に対応しているのではなく、割り当てられたチャネルの中での下位から数えたチャネル番号を表しているためである。
Channel Occupation1~4フィールドを、割り当てられたチャネルの中での下位から数えたチャネル番号を表すようにしたことによる効果を詳しく説明する。
図44は、最大使用可能チャネル数4での、シングルチャネル送信、チャネルボンディング、及び、チャネルアグリゲーションにおけるチャネルの割り当ての組み合わせを示した図である。例えば、シングルチャネル送信では、ch1~ch4のいずれかが使用可能であるため、組み合わせ数は4である。使用チャネル数2のチャネルアグリゲーションでは、チャネルの組み合わせとして、(ch1,ch2)、(ch1,ch3)、(ch1,ch4)、(ch2,ch3)、(ch2,ch4)、(ch3,ch4)の6通りである。全ての組み合わせをあわせると、19通りであるから、どの組み合わせを選択したかを通知するには、5ビットの制御情報が必要である。
図45は、最大使用可能チャネル数8での、シングルチャネル送信、チャネルボンディング、及び、チャネルアグリゲーションにおけるチャネルの割り当ての組み合わせを示した図である。ただし、チャネルボンディング、チャネルアグリゲーションで同時に使用できるチャネル数は4チャネルまでとした。
図45より、全ての組み合わせをあわせると、170通りであるから、どの組み合わせを選択したかを通知するには、8ビットの制御情報が必要である。つまり、使用できるチャネル数に応じて、選択可能なチャネルの組み合わせは増大し、多くのビット数の制御情報が必要となり、制御情報をL-Headerに格納することが困難になる。
一方、本実施の形態では、まず、RTS, DMG CTSを用いてあらかじめ割り当てたチャネルを決定する。個々のパケットでは、Channel Aggregationフィールドに1ビット、Channel Occupation1~4フィールドに4ビット使用した。すなわち、合計で5ビットを用いることで、図44および図45に示す組み合わせを表すことができる。このように、RTS, DMG CTSを用いて、あらかじめ割り当てたチャネルについて、パケット毎に使用しているチャネルをL-HeaderのChannel Occupationフィールドを用いて通知するようにしたので、使用できる最大チャネル数に関わらず、制御情報のビット数を少なくすることができる。
実施の形態8によれば、送信装置2000は、パケット毎に使用するチャネルの組み合わせを変更して送信するため、無線チャネルを効率的に使用することができる。
また、実施の形態8によれば、送信装置2000は、少ない制御情報でパケット毎に使用するチャネルの組み合わせを伝達することができる。
(実施の形態9)
本実施の形態は、図35のSTA2000、STA2100が通信を行う別の方法を示す。
図46は、STA2000及びSTA2100が使用するチャネル番号を示す。STA2000がシングルチャネル送信又はチャネルボンディングによりパケットを送信する場合、STA2000は、図46のチャネル番号1から25のいずれか1つのチャネル番号を用いる。
STA2000が57 GHzから66 GHzの帯域を用いて送信する場合、STA2000は、図46において実線で表したチャネル番号(例えば、チャネル番号1から4、チャネル番号9、11、チャネル番号17、チャネル番号25)を用いる。
また、STA2000が57 GHzから71 GHzの帯域を用いて送信する場合、STA2000は、図46において実線で表したチャネル番号に加え、破線で表したチャネル番号(例えば、チャネル番号5、6、チャネル番号13、チャネル番号20)を用いる。
チャネル番号1から6は、シングルチャネル送信(チャネル帯域幅2.16 GHz)を表す。チャネル番号9、11、13は、チャネル帯域幅4.32 GHzのチャネルボンディングを表す。チャネル番号17、20は、チャネル帯域幅6.48 GHzのチャネルボンディングを表す。チャネル番号25は、チャネル帯域幅8.64 GHzのチャネルボンディングを表す。
STA2000がチャネルアグリゲーションによりパケットを送信する場合、STA2000は、図46のチャネル番号のうち重複しない2つ以上のチャネルを用いる。
本実施の形態では、STA2000は、チャネル番号1から6のうち重複しない2つのチャネルを用いてチャネルアグリゲーションを行ってもよく、例えば、STA2000は、チャネル番号3とチャネル番号5を組み合わせてチャネルアグリゲーションを行ってもよい。
また、STA2000は、チャネル番号9、11、13のうち重複しない2つのチャネルを用いてチャネルアグリゲーションを行ってもよい。なお、STA2000は、占有帯域(占有する周波数帯域)が重複せず、異なるチャネル帯域幅である、チャネル番号3(チャネル帯域幅2.16 GHz)とチャネル番号9(チャネル帯域幅4.32 GHz)を組み合わせてチャネルアグリゲーションを行ってもよい。
図47は、本実施の形態におけるL-Headerのフレームフォーマットを示す。図38と異なり、図47のフレームフォーマットは、5ビットのBW indexフィールドを持つ。図47において、図38と同一のフィールドは、説明を省略する。図47のフレームフォーマットは、実施の形態1から7に開示した方法を用いることによって、スタートビット12から始まる5ビットを、11ad規格におけるLengthとは異なる用途(ここでは、BW index)に用いることができる。
図48Aは、シングルチャネル送信、チャネルボンディング及びチャネルアグリゲーションにおけるBW indexフィールドの値を示す。つまり、シングルチャネル送信及びチャネルボンディングでは、STA2000は、図48Aの「第1チャネル番号」列及び「第2チャネル番号」列に記載されたチャネル番号に応じて、BW indexフィールドの値を0から11のいずれかに定める。また、チャネルアグリゲーションでは、STA2000は、図48Aの「第1チャネル番号」列及び「第2チャネル番号」列に記載されたチャネル番号に応じて、BW indexフィールドの値を4から11のいずれかに定める。
図48Aにおいて、「占有チャネル番号」は、「第1チャネル番号」又は「第2チャネル番号」に記載されたチャネルを使用する場合に占有される2.16 GHz帯域のチャネルの番号(つまりチャネル番号1から6のチャネル)を表す。例えば、「第1チャネル番号」におけるチャネル番号17のチャネルボンディングでは、チャネル番号1、チャネル番号2、チャネル番号3の帯域が占有される。「第1チャネル番号」におけるチャネル番号9及び「第2チャネル番号」におけるチャネル番号11のチャネルアグリゲーションでは、チャネル番号1、チャネル番号2、チャネル番号3、チャネル番号4の帯域が占有される。
また、STA2000は、チャネルボンディングで送信する場合、「占有チャネル番号」列に記載されたチャネル番号において、L-Headerを送信する。例えば、図37のパケットは、図46のチャネル番号17に対応する。図48Aによれば、チャネル番号17の占有チャネル番号はチャネル番号1、チャネル番号2、チャネル番号3であるから、図37の通り、送信装置(STA2000)は、チャネル番号1、チャネル番号2、チャネル番号3にてL-Headerを送信する。
シングルチャネル送信の場合、STA2000は、実際に送信するチャネル番号に関わらず、送信パケットのBW indexフィールドの値を0に設定する。
STA2100がパケットを受信した場合、STA2100は、L-Headerを復号し、BW indexフィールドの値を得る。BW indexフィールドの値が0である場合、STA2100は、受信したパケットがシングルチャネル送信のパケットであると判別する。
図48Aによれば、BW indexの値が0の場合、使用される可能性があるチャネル番号は1から6のいずれかである。STA2100は、L-Headerを受信したチャネル(つまり、BW indexフィールドを受信したチャネル)に応じて、パケットが送信されたチャネル番号を判別する。例えば、STA2100は、L-Headerをチャネル番号3で受信し、BW indexフィールドの値が0であったとき、STA2100は、受信したパケットはチャネル番号3におけるシングルチャネル送信のパケットであると判別する。
図48Bは、異なるチャネル帯域幅のチャネルアグリゲーションにおけるBW indexフィールドの値12から25を示し、値26から31はReservedである。つまり、チャネルアグリゲーションでは、STA2000は、図48Bの「第1チャネル番号」列と「第2チャネル番号」列に記載されたチャネル番号の組み合わせに応じて、BW indexフィールドの値を定める。
つまり、図48A及び図48Bは、重複しない占有チャネル番号の組合せに対して、BW indexフィールドの値を割り当てている。
チャネルアグリゲーションでは、STA2000は、占有チャネル番号に記載された複数の2.16 GHzチャネルにL-Headerを含めて送信する。
例えば、第1チャネル番号としてチャネル番号1と第2チャネル番号としてチャネル番号3の組み合わせによるチャネルアグリゲーションでは、STA2000は、L-HeaderのBW indexフィールドに値5を設定して送信する。図49Aは、チャネルアグリゲーションによるパケットの一例を示し、チャネル番号1とチャネル番号3にて送信されるL-Headerを示す。
第1チャネル番号としてチャネル番号3と第2チャネル番号としてチャネル番号5の組み合わせによるチャネルアグリゲーションの場合、STA2000は、L-HeaderのBW indexフィールドに値7を設定して送信する。図49Bは、チャネルアグリゲーションによるパケットの一例を示し、チャネル番号3とチャネル番号5にて送信されるL-Headerを示す。
STA2100は、チャネル番号3においてL-Headerを受信した後、L-Headerを復号し、BW indexフィールドの値を得る。BW indexフィールドの値が例えば5である場合、STA2100は、図49Aに示す受信したパケットがチャネル番号1とチャネル番号3の組み合わせによるチャネルアグリゲーションであると判別する。
また、STA2100は、チャネル番号3においてL-Headerを受信した後、得られたBW indexフィールドの値が例えば7である場合、図49Bに示す受信したパケットがチャネル番号3とチャネル番号5の組み合わせによるチャネルアグリゲーションであると判別する。
図49Cは、チャネルアグリゲーションによる送信フレームの別の一例を示す。図49Cは、チャネル番号4とチャネル番号6の組み合わせによるチャネルアグリゲーションであり、図49Aとは、異なる占有チャネル番号を用いるが、BW indexフィールドの値は、図49Aと同じ5である。
ここで、図示しない別のSTA(STA2200)は、チャネル番号4においてL-Headerを受信し、BW indexフィールドの値が5であった場合、図49Cに示すチャネル番号4とチャネル番号6の組み合わせによるチャネルアグリゲーションであると判別する。
つまり、受信装置(STA2100及びSTA2200)は、BW indexの値が同じ(例えば5)であっても、L-Headerを受信したチャネル(チャネル番号1からチャネル番号6のいずれか)に応じて、受信したパケットのチャネルアグリゲーションのチャネルの組み合わせを判別することができる。
図50A、図50B、図50Cは、チャネルアグリゲーションによるパケットの別の一例を示す。図50A、図50B、図50Cは、4.32 GHz帯域幅の2つのチャネルの組み合わせによるチャネルアグリゲーションを適用したパケットである。
図50Aにて、STA2000は、チャネル番号9とチャネル番号13の組み合わせによるチャネルアグリゲーションのパケットを送信する場合、図48Aに基づき、BW indexの値を11に設定し、チャネル番号1、チャネル番号2、チャネル番号5、及び、チャネル番号6にL-Headerを配置する。
また、図50Bにて、STA2000は、チャネル番号9とチャネル番号11の組み合わせによるチャネルアグリゲーションのパケットを送信する場合、図48Aに基づき、BW indexの値を9に設定し、チャネル番号1、チャネル番号2、チャネル番号3、チャネル番号4にL-Headerを配置する。
また、図50Cにて、STA2000は、チャネル番号11とチャネル番号13の組み合わせによるチャネルアグリゲーションのパケットを送信する場合、図48Aに基づき、BW indexの値を10に設定し、チャネル番号3、チャネル番号4、チャネル番号5、チャネル番号6にL-Headerを配置する。
図50Aのパケット、図50Bのパケット、図50Cのパケットでは、占有チャネル番号は重複するため、STA2000は、異なるBW indexの値として、それぞれ、11、9、10を割り当てる。
つまり、STA2100は、チャネル番号2においてL-Headerを受信し、BW indexフィールドの値が11であった場合、チャネル番号9とチャネル番号13の組み合わせによるチャネルアグリゲーションであると判別することができる(図50A参照)。
また、STA2100は、チャネル番号2においてL-Headerを受信し、BW indexフィールドの値が9であった場合、チャネル番号9とチャネル番号11の組み合わせによるチャネルアグリゲーションであると判別することができる(図50B参照)。
また、STA2200は、チャネル番号4においてL-Headerを受信し、BW indexフィールドの値が10であった場合、チャネル番号11とチャネル番号13の組み合わせによるチャネルアグリゲーションであると判別することができる(図50C参照)。
ここで、図51は、動作モード(パケットの種類)毎に、全てのチャネル(チャネル番号1から6、9、11、13、17、20、及び、25)の組み合わせ数とBW indexの範囲との対応を示す。
例えば、2.16 GHz帯域幅のシングルチャネル送信は、チャネルの組み合わせ数が6通り、つまり、チャネル番号1からチャネル番号6までの6通りであり、6つのチャネルから、1つを選ぶ組み合わせの数に一致する。これに対して、BW indexは、2.16 GHz帯域幅のシングルチャネル送信として「0」の1つが割り当てられる(図48A参照)。
例えば、2つの2.16 GHz帯域幅を用いるチャネルアグリゲーションは、チャネルの組み合わせ数が15通りであり、チャネル番号1からチャネル番号6までの6つのチャネルから、2つを選ぶ組み合わせの数に一致する。これに対して、BW indexは、2つの2.16 GHz帯域幅を用いるチャネルアグリゲーションとして、「4」から「8」の5通りが割り当てられる(図48A参照)。
例えば、2つの4.32 GHz帯域幅を用いるチャネルアグリゲーションは、チャネルの組み合わせ数が3通りであり、チャネル番号9、11、13の3つのチャネルから、帯域が重複しない2つを選ぶ組み合わせの数に一致する。これに対して、BW indexは、2つの4.32 GHz帯域幅を用いるチャネルアグリゲーションとして、「9」から「11」の3通りが割り当てられる(図48A参照)。
例えば、4.32 GHz帯域幅と2.16 GHz帯域幅を用いるチャネルアグリゲーションは、チャネルの組み合わせ数が12通りである。これに対して、BW indexは、4.32 GHz帯域幅と2.16 GHz帯域幅を用いるチャネルアグリゲーションとして、「12」から「17」の6通りが割り当てられる(図48B参照)。
図51に示す全ての動作モードをあわせると、全てのチャネルの組み合わせ数は50である。つまり、チャネルの組み合わせ毎に異なる制御情報の値(インデックス)を付与してチャネルの組み合わせを判別するためには、制御情報は6ビットで表示される。
これに対して、図48A、図48Bに示したBW indexは、最大値が31となり、制御情報が5ビットで表示できる。つまり、全てのチャネルの組み合わせにインデックスを付与する方法に比べ、BW indexを用いる本実施の形態では制御情報のサイズを1ビット削減することができる。
なお、送信装置(STA2000)は、5ビットのBW indexの値を、実施の形態1から7に示したように、L-HeaderのLengthフィールドの下位ビットに含めて送信してもよい。これにより、受信装置(STA2100)は、受信したL-Headerを復号して得たBW indexの値(図48A、図48B)とL-Headerを受信したチャネル番号との組合せから、パケットが送信されたチャネル番号、及びチャネルアグリゲーションにおけるチャネルの組み合わせを判別することができる。
STA2100は、L-Headerを用いてチャネルの組み合わせを判別することができるので、実施の形態8と同様に、受信装置の設定を早期に切り替えることができ、パケット毎にチャネルの組み合わせが変更される場合でも、正しくパケットを受信することができる。
また、11ad規格に対応し、11ay規格に対応しない受信装置(図示しないSTA2300)は、図47のBW indexフィールドとLengthフィールドを合わせた部分を11ad規格におけるLengthフィールドと認識し、MCSフィールドの値と合わせ、パケットの長さを計算する。実施の形態1から7に示したように、STA2000は、BW indexフィールドの値に関わらず、11ad規格の端末が正しくパケット長を計算できるように、Lengthフィールド(L-Headerのビット17から始まる13ビット分)の値を設定する。このように、11ad規格との互換性を保ったまま、STA2000は、チャネルの組み合わせ情報をL-Headerを用いて送信することができる。
なお、STA2100は、プライマリチャネルにおいてL-Headerを受信してもよい。これにより、STA2000がプライマリチャネルを含めて送信するようにした場合、STA2100は、STA2000が送信した全てのパケットを受信することができる。
なお、STA2000の使用するプライマリチャネルと、STA2100の使用するプライマリチャネルが異なる場合、例えば、STA2000とSTA2100が異なるBSSに属する場合でも、STA2100は、STA2100のプライマリチャネルにおいてL-Headerを受信しても良い。図48A、図48BのBW indexは、プライマリチャネルの位置に関わり無く割り振ることができるため、STA2100は、BW indexと、L-Headerを受信したチャネル番号とを用いて、チャネルの組み合わせを検出することができる。
なお、STA2100は、プライマリチャネル以外のチャネルにおいてL-Headerを受信しても良い。図48A、図48BのBW indexは、プライマリチャネルの位置に関わり無く割り振ることができるため、STA2100は、BW indexと、L-Headerを受信したチャネル番号とを用いて、チャネルの組み合わせを検出することができる。
実施の形態9によれば、送信装置2000は、パケット毎に使用するチャネルの組み合わせを変更して送信するため、無線チャネルを効率的に使用することができる。
また、実施の形態9によれば、送信装置2000は、少ない制御情報でパケット毎に使用するチャネルの組み合わせを伝達することができる。
なお、図48A、図48Bでは、チャネル帯域幅2.16 GHzでのチャネルアグリゲーション、チャネル帯域幅4.32 GHzでのチャネルアグリゲーション、6.48 GHz以下の異なる2つの帯域幅でのチャネルアグリゲーションを一例として、説明したが、このチャネルアグリゲーションの構成に限定されない。例えば、チャネル帯域幅6.48 GHzとチャネル帯域幅8.64 GHzでのチャネルアグリゲーション、チャネル帯域幅2.16 GHzとチャネル帯域幅8.64 GHzでのチャネルアグリゲーション、であってもよい。つまり、チャネルアグリゲーションは、占有帯域が重複しないければ、どのチャネル番号を組み合わせてもよい。
また、図48A、図48Bでは、2つのチャネル番号によるチャネルアグリゲーションを一例として、説明したが、このチャネルアグリゲーションの構成に限定されない。例えば、3つのチャネル番号によるチャネルアグリゲーション(例えば、第1チャネル番号としてチャネル番号1と第2チャネル番号としてチャネル番号3と第3チャネル番号としてチャネル番号5の組み合わせによるチャネルアグリゲーション)、4つのチャネル番号によるチャネルアグリゲーション(例えば、第1チャネル番号としてチャネル番号1と第2チャネル番号としてチャネル番号3と第3チャネル番号としてチャネル番号5と第4チャネル番号としてチャネル番号6の組み合わせによるチャネルアグリゲーション)、であってもよい。つまり、チャネルアグリゲーションは、占有帯域が重複しなければ、2つ以上のチャネル番号を組み合わせてもよい。
(実施の形態10)
本実施の形態は、図35のSTA2000、STA2100が通信を行う別の方法を示す。
図52は、STA2000及びSTA2100が使用するチャネル番号を示す。STA2000がシングルチャネル送信又はチャネルボンディングによりパケットを送信する場合、STA2000は、図52のチャネル番号1から29のいずれか1つのチャネル番号を用いる。図52は、図46と異なり、チャネル番号10,12,14のように、同じチャネル帯域幅であって、チャネル番号9,11,13,15に対して、占有帯域が重複するチャネル番号が追加されている。
STA2000が57 GHzから66 GHzの帯域を用いて送信する場合、STA2000は、図52において実線で表したチャネル番号(例えば、チャネル番号1から4、チャネル番号9から11、チャネル番号17から18、チャネル番号25)を用いる。
また、STA2000が57 GHzから75 GHzの帯域を用いて送信する場合、STA2000は、図52において実線で表したチャネル番号に加え、破線で表したチャネル番号(例えば、チャネル番号5から8、チャネル番号12から15、チャネル番号19から22、チャネル番号26から29)を用いる。
チャネル番号1から8は、シングルチャネル送信(チャネル帯域幅2.16 GHz)を表す。チャネル番号9から15は、チャネル帯域幅4.32 GHzのチャネルボンディングを表す。チャネル番号17から22は、チャネル帯域幅6.48 GHzのチャネルボンディングを表す。チャネル番号25から29は、チャネル帯域幅8.64 GHzのチャネルボンディングを表す。
STA2000がチャネルアグリゲーションによりパケットを送信する場合、STA2000は、図52のチャネル番号のうち重複しない2つ以上のチャネルを用いる。
本実施の形態では、STA2000は、チャネル番号1から8のうち重複しない2つのチャネルを用いてチャネルアグリゲーションを行ってもよく、例えば、STA2000は、チャネル番号3とチャネル番号5を組み合わせてチャネルアグリゲーションを行ってもよい。
また、STA2000は、チャネル番号9から15のうち占有帯域(占有する周波数帯域)が重複しない2つのチャネルを用いてチャネルアグリゲーションを行ってもよい。例えば、STA2000は、チャネル番号11とチャネル番号14を組み合わせてチャネルアグリゲーションを行ってもよい。一方、例えば、チャネル番号10とチャネル番号11は占有帯域が重複するため、STA2000は、占有帯域が重複する組み合わせをチャネルアグリゲーションに使用しない。
図53は、本実施の形態におけるL-Headerのフレームフォーマットを示す。各フィールドは、図47と同じであるため、説明を省略する。
本実施の形態では、同じチャネル帯域幅を用いたチャネルアグリゲーションについて説明する。なお、異なるチャネル帯域幅を用いたチャネルアグリゲーションについての説明は省略するが、同じチャネル帯域幅を用いたチャネルアグリゲーションにおいて説明した方法を用いてBW indexを割り振ることができる。
図54A、図54Bは、チャネルアグリゲーションにおけるBW indexフィールドの値を示す。つまり、チャネルアグリゲーションでは、STA2000は、図54A、図54Bの「第1チャネル番号」列と「第2チャネル番号」列に記載されたチャネル番号の組み合わせに応じて、BW indexフィールドの値を定める。
図54Aは、2つの2.16 GHzチャネルによるチャネルアグリゲーションを表し、BW indexの値は0から6である。また、図54Bは、2つの4.32 GHzチャネルによるチャネルアグリゲーションを表し、BW indexの値は7から18である。図54Bにおいて、BW indexの値19から31は、Reservedである。
チャネルアグリゲーションでは、STA2000は、占有チャネル番号に記載された複数の2.16 GHzチャネルにL-Headerを含めて送信する。
例えば、チャネル番号1とチャネル番号3の組み合わせによるチャネルアグリゲーションでは、STA2000は、L-HeaderのBW indexフィールドに値1を設定して送信する。図55Aは、チャネルアグリゲーションによるパケットの一例を示し、チャネル番号1とチャネル番号3にて送信されるL-Headerを示す。
チャネル番号3とチャネル番号5の組み合わせによるチャネルアグリゲーションの場合、STA2000は、L-HeaderのBW indexフィールドに値4を設定して送信する。図55Bは、チャネルアグリゲーションによるパケットの一例を示し、チャネル番号3とチャネル番号5にて送信されるL-Headerを示す。
STA2100は、チャネル番号3においてL-Headerを受信した後、L-Headerを復号し、BW indexフィールドの値を得る。BW indexフィールドの値が例えば1である場合、STA2100は、図55Aに示す受信したパケットがチャネル番号1とチャネル番号3の組み合わせによるチャネルアグリゲーションであると判別する。
また、STA2100は、チャネル番号3においてL-Headerを受信した後、得られたBW indexフィールドの値が例えば4である場合、図55Bに示す受信したパケットがチャネル番号3とチャネル番号5の組み合わせによるチャネルアグリゲーションであると判別する。
図55Cは、チャネルアグリゲーションによる送信フレームの別の一例を示す。図55Cは、チャネル番号2とチャネル番号4の組み合わせによるチャネルアグリゲーションであり、図55Aとは、異なる占有チャネル番号を用いるが、BW indexフィールドの値は、図55Aと同じ1である。
ここで、図示しない別のSTA(STA2200)は、チャネル番号4においてL-Headerを受信し、BW indexフィールドの値が1であった場合、図55Cに示すチャネル番号2とチャネル番号4の組み合わせによるチャネルアグリゲーションであると判別する。
つまり、受信装置(STA2100及びSTA2200)は、BW indexの値が同じ(例えば1)であっても、L-Headerを受信したチャネル(チャネル番号1からチャネル番号8のいずれか)に応じて、受信したパケットのチャネルアグリゲーションのチャネルの組み合わせを判別することができる。
図56A、図56B、図56Cは、チャネルアグリゲーションによるパケットの別の一例を示す。図56A、図56B、図56Cは、4.32 GHz帯域幅の2つのチャネルの組み合わせによるチャネルアグリゲーションを適用したパケットである。
図56Aにて、STA2000は、チャネル番号9とチャネル番号13の組み合わせによるチャネルアグリゲーションのパケットを送信する場合、図54Bに基づき、BW indexの値を8に設定し、チャネル番号1、チャネル番号2、チャネル番号5、及び、チャネル番号6にL-Headerを配置する。
また、図56Bにて、STA2000は、チャネル番号9とチャネル番号14の組み合わせによるチャネルアグリゲーションのパケットを送信する場合、図54Bに基づき、BW indexの値を11に設定し、チャネル番号1、チャネル番号2、チャネル番号6、チャネル番号7にL-Headerを配置する。
また、図56Cにて、STA2000は、チャネル番号11とチャネル番号15の組み合わせによるチャネルアグリゲーションのパケットを送信する場合、図54Bに基づき、BW indexの値を8に設定し、チャネル番号3、チャネル番号4、チャネル番号7、チャネル番号8にL-Headerを配置する。
ここで、図56Aのパケットと、図56Cのパケットでは、占有チャネル番号は重複しないため、STA2000は、同一のBW indexの値として8を割り当てる。
一方、図56Aのパケットと、図56Bのパケットでは、占有チャネル番号は重複するため、STA2000は、異なるBW indexの値として、8と11を割り当てる。
つまり、STA2100は、チャネル番号2においてL-Headerを受信し、BW indexフィールドの値が8であった場合、チャネル番号9とチャネル番号13の組み合わせによるチャネルアグリゲーションであると判別することができる(図56A参照)。
また、STA2100は、チャネル番号2においてL-Headerを受信し、BW indexフィールドの値が11であった場合、チャネル番号9とチャネル番号14の組み合わせによるチャネルアグリゲーションであると判別することができる(図56B参照)。
また、STA2200は、チャネル番号4においてL-Headerを受信し、BW indexフィールドの値が8であった場合、チャネル番号11とチャネル番号15の組み合わせによるチャネルアグリゲーションであると判別することができる(図56C参照)。
ここで、図57は、同じチャネル帯域幅を用いた動作モード(パケットの種類)毎に、全てのチャネル(チャネル番号9から15、及び、17から22)の組み合わせ数とBW indexの範囲との対応を示す。
例えば、2つの2.16 GHz帯域幅を用いるチャネルアグリゲーションは、チャネルの組み合わせ数が28通りであり、チャネル番号1からチャネル番号8までの8つのチャネルから、2つを選ぶ組み合わせの数に一致する。これに対して、BW indexは、2つの2.16 GHz帯域幅を用いるチャネルアグリゲーションとして、「0」から「6」の7通りが割り当てられる(図54A参照)。
例えば、2つの4.32 GHz帯域幅を用いるチャネルアグリゲーションは、チャネルの組み合わせ数が15通りであり、チャネル番号9からチャネル番号15までの7つのチャネルから、帯域が重複しない2つを選ぶ組み合わせの数に一致する。これに対して、BW indexは、2つの4.32 GHz帯域幅を用いるチャネルアグリゲーションとして、「7」から「18」の12通りが割り当てられる(図54B参照)。
図57に示す全ての動作モードをあわせると、全てのチャネルの組み合わせ数は43である。つまり、チャネルの組み合わせ毎に異なる制御情報の値(インデックス)を付与してチャネルの組み合わせを判別するためには、6ビットの制御情報が必要になる。
これに対して、図54A、図54Bに示したBW indexは、最大値が18となり、制御情報を5ビットで表示することができる。つまり、全てのチャネルの組み合わせにインデックスを付与する方法に比べ、BW indexを用いる本実施の形態では制御情報のサイズを1ビット削減することができる。なお、本実施の形態では、チャネルボンディングについては、説明を省略したが、チャネルアグリゲーションと同じように、重複しないチャネル番号を選択して組合せたBW indexを用いることで、制御情報のサイズを削減することができる。
なお、送信装置(STA2000)は、5ビットのBW indexの値を、実施の形態1から7に示したように、L-HeaderのLengthフィールドの下位ビットに含めて送信してもよい。これにより、受信装置(STA2100)は、受信したL-Headerを復号して得たBW indexの値(図54A、図54B)とL-Headerを受信したチャネル番号との組合せから、パケットが送信されたチャネル番号、及びチャネルアグリゲーションにおけるチャネルの組み合わせを判別することができる。
STA2100は、L-Headerを用いてチャネルの組み合わせを判別することができるので、実施の形態8と同様に、受信装置の設定を早期に切り替えることができ、パケット毎にチャネルの組み合わせが変更される場合でも、正しくパケットを受信することができる。
また、11ad規格に対応し、11ay規格に対応しない受信装置(図示しないSTA2300)は、図53のBW indexフィールドとLengthフィールドを合わせた部分を11ad規格におけるLengthフィールドと認識し、MCSフィールドの値と合わせ、パケットの長さを計算する。実施の形態1から7に示したように、STA2000は、BW indexフィールドの値に関わらず、11ad規格の端末が正しくパケット長を計算できるように、Lengthフィールド(L-Headerのビット17から始まる13ビット分)の値を設定する。このように、11ad規格との互換性を保ったまま、STA2000は、チャネルの組み合わせ情報をL-Headerを用いて送信することができる。
なお、STA2100は、プライマリチャネルにおいてL-Headerを受信してもよい。これにより、STA2000がプライマリチャネルを含めて送信するようにした場合、STA2100は、STA2000が送信した全てのパケットを受信することができる。
なお、STA2000の使用するプライマリチャネルと、STA2100の使用するプライマリチャネルが異なる場合、例えば、STA2000とSTA2100が異なるBSSに属する場合でも、STA2100は、STA2100のプライマリチャネルにおいてL-Headerを受信しても良い。図54A、図54BのBW indexは、プライマリチャネルの位置に関わり無く割り振ることができるため、STA2100は、BW indexと、L-Headerを受信したチャネル番号とを用いて、チャネルの組み合わせを検出することができる。
なお、STA2100は、プライマリチャネル以外のチャネルにおいてL-Headerを受信しても良い。図54A、図54BのBW indexは、プライマリチャネルの位置に関わり無く割り振ることができるため、STA2100は、BW indexと、L-Headerを受信したチャネル番号とを用いて、チャネルの組み合わせを検出することができる。
実施の形態10によれば、送信装置2000は、パケット毎に使用するチャネルの組み合わせを変更して送信するため、無線チャネルを効率的に使用することができる。
また、実施の形態10によれば、送信装置2000は、少ない制御情報でパケット毎に使用するチャネルの組み合わせを伝達することができる。
なお、図54A、図54Bでは、チャネル帯域幅2.16 GHzでのチャネルアグリゲーション、チャネル帯域幅4.32 GHzでのチャネルアグリゲーションを一例として、説明したが、このチャネルアグリゲーションの構成に限定されない。例えば、チャネル帯域幅6.48 GHzとチャネル帯域幅8.64 GHzでのチャネルアグリゲーション、チャネル帯域幅2.16 GHzとチャネル帯域幅8.64 GHzでのチャネルアグリゲーション、であってもよい。つまり、チャネルアグリゲーションは、占有帯域が重複しないければ、どのチャネル番号を組み合わせてもよい。
(実施の形態11)
本実施の形態は、図35のSTA2000、STA2100が通信を行う別の方法を示す。
図58は、本実施の形態におけるL-Headerのフレームフォーマットを示す。図38と異なり、図58のフレームフォーマットは、11ad規格のScramble initializationフィールドに対して、4ビットのBW index_Lフィールドを含み、11ad規格のlengthフィールドに対して、4ビットのBW_index_Hフィールドと、1ビットのChannel Aggregationフィールドと、を含む。図58において、図38と同一のフィールドは、説明を省略する。
本実施の形態では、チャネルの組み合わせを示す制御情報(BW index)は、8ビットである。送信装置(STA2000)は、BW indexの上位4ビットの値を、BW index_Hフィールドに含め、BW indexの下位4ビットの値を、BW index_Lフィールドに含める。また、STA2000は、シングルチャネル送信及びチャネルボンディングではChannel Aggregationフィールドに0を設定し、チャネルアグリゲーションではChannel Aggregationフィールドに1を設定する。
図59Aは、シングルチャネル送信及びチャネルボンディングでのBW indexの値の設定方法を示す。
シングルチャネル送信及びチャネルボンディングでは、STA2000は、BW indexの値として図52のチャネル番号を用いる。例えば、STA2000がチャネル番号28を用いてチャネルボンディングのパケットを送信する場合、BW indexの値は28であるから、STA2000は、L-HeaderのBW index_Lフィールドの値を12に、BW index_Hフィールドの値を1に設定する。また、Channel Aggregationフィールドの値は0である。
図59Bは、チャネルアグリゲーションでのBW indexの値の設定方法を示す。
チャネルアグリゲーションでは、STA2000は、BW indexの値としてチャネル番号1からチャネル番号8の占有の有無を示すビットマップの値を用いる。LSB(ビット番号0)がチャネル番号1に対応し、MSB(ビット番号7)がチャネル番号8に対応する。
例えば、STA2000がチャネル番号1とチャネル番号4の組み合わせによるチャネルアグリゲーションパケットの送信を行う場合、STA2000は、BW indexのビット0(LSB)とビット3を1に設定し、他のビットを0に設定する。つまり、STA2000は、L-HeaderのBW index_Lフィールドの値を1001(2進数表現)に、BW index_Hフィールドの値を0000(2進数表現)に設定する。また、Channel Aggregationフィールドの値は1である。
また、例えば、STA2000がチャネル番号9とチャネル番号14の組み合わせによるチャネルアグリゲーションパケットの送信を行う場合、STA2000は、チャネル番号1、チャネル番号2、チャネル番号6、チャネル番号7を占有するため、BW indexのビット0、ビット1、ビット5、ビット6を1に設定し、他のビットを0に設定する。つまり、STA2000は、L-HeaderのBW index_Lフィールドの値を0011(2進数表現)に、BW index_Hフィールドの値を0110(2進数表現)に設定する。また、Channel Aggregationフィールドの値は1である。
図60Aは、シングルユーザ送信、つまり宛先が1つの端末である場合のPHYフレームフォーマットを示す。各フィールドは図37と同様であるから説明を省略する。
本実施の形態のPHYフレームは、L-Headerに少なくともSI(Scrambler Initialization)フィールドと、BW index_L及びBW index_Hフィールドと、Channel Aggregationフィールドを含む。また、E-Header-AにSI_dataフィールドを含む。
STA2000は、図60AのPHYフレームを送信する場合、L-HeaderのSIフィールドとBW index_Lフィールドの値(つまり、11ad規格のSIフィールドに対応する7bit)を用いて、L-Header及びE-Header-Aのデータをスクランブリングする。
また、STA2000は、図60AのPHYフレームを送信する場合、E-Header-AのSI_dataフィールドの値を用いて、Payloadのデータをスクランブリングする。
図60Bは、マルチユーザ送信、つまり宛先が複数の端末である場合のPHYフレームフォーマットを示す。マルチユーザ送信とは、例えばMU-MIMO(マルチユーザMIMO)送信である。図60Bは、2ストリームのMU-MIMOのパケットを示す。つまり、User1が第1のMIMOストリームで、User2が第2のMIMOストリームである。図37と同じフィールドは説明を省略する。
図60BのPHYフレームは、E-Header-Bフィールドを含む。E-Header-Bは、EDMG-Header-Bと呼ぶ場合がある。E-Header-Aはユーザ毎に共通の制御情報を含むのに対し、E-Header-Bは、ユーザ毎に異なる制御情報を含むために用いられる。図60BのE-Header-B1はUser1宛てのE-Header-Bであり、E-Header-B2はUser2宛てのE-Header-Bであり、E-Header-B1が含む値とE-Header-B2が含む値は異なる。なお、E-Header-B1が含む値とE-Header-B2が含む値は、同じであってもよい。
E-Header-Bは、ユーザ毎に異なるスクランブル初期値(SI_user1及びSI_user2)を含む。STA2000は、ユーザ毎、及び送信パケット毎にSI_user1及びSI_user2の値を変更して送信することにより、ユーザ間で同一のデータパターンや相関が高い(例えば、変調後にユーザ間のデータを加算すると打ち消しあうパターンを含む)データパターンが発生する確率を低減することができる。
STA2000は、図60BのPHYフレームを送信する場合、L-HeaderのSIフィールドとBW index_Lフィールドの値(つまり、11ad規格のSIフィールドに対応する7bit)を用いて、L-Header及びE-Header-Aのデータをスクランブリングする。
また、STA2000は、図60BのPHYフレームを送信する場合、E-Header-B1のスクランブリングの値(SI_user1)を用いて、E-Header-B1とPayloadのデータ(Payload1)をスクランブリングし、E-Header-B2のスクランブリングの値(SI_user2)を用いて、E-Header-B2とPayloadのデータ(Payload2)をスクランブリングする。
図60A、図60Bにおいて、STA2000が、L-HeaderのSIの値をL-HeaderとE-Header-Aのスクランブリングに用い、E-Header-A(図60A)またはE-Header-B(図60B)のSIの値(SI_dataまたはSI_user1、SI_user2)を用いてペイロードのデータをスクランブリングする方法について説明する。
なお、E-Header-Aはユーザ毎に共通の制御情報、例えばプライマリチャネル番号、User1, User2(つまり、ストリーム毎)のアドレス等を含む。なお、SI_data、SI_user1、及び、SI_user2は、11ad規格では規定されていない値である。
STA2000は、図58に示したL-Headerのフォーマットに従い、11ad規格のSIフィールドの下位4ビットであった4ビットを、BW index_Lの値に割り振る。一方、STA2000は、パケットを送信する場合、図52のSIフィールドとBW index_Lフィールドを合わせた7ビットを、スクランブラ初期値として用い、L-Header等のスクランブリングを行う。
STA2000は、パケットを送信する場合、望ましくないデータパターン(例えば、値0が連続するなど、特定のデータパターンが繰り返される)が発生する確率を下げるため、SIの値を送信毎に変更する。11ad規格では、SIフィールドは7ビットであるため、スクランブラ初期値として使用できない値0000000(2進数表示)を除くと、127通りのスクランブラ初期値を指定できる。
なお、図58のフォーマットにおいて、チャネルの組み合わせを変更しない場合、BW index_Lの4ビットの値は変更されないため、STA2000が選択できるスクランブラ初期値の種類は、7通りである。
ここで、L-Header及びE-Header-Aは、Payloadに比べてデータ長が短いため望ましくないデータパターンが発生する確率が低い。そのため、7通りのスクランブラ初期値を用いて、望ましくないデータパターンが発生する確率を十分低くすることが可能である。
一方、Payloadはデータ長が長いため、多種のスクランブラ初期値の値から選択できることが望ましい。ここで、図60Aのシングルユーザ送信では、STA2000は、E-Header-AにSIの値(SI_data)を含めて送信し、SI_dataを用いてPayloadをスクランブルするため、望ましくないデータパターンが発生する確率を十分低くすることが可能である。SI_dataフィールドは、例えば、7ビットである。
また、図60Bのマルチユーザ送信では、STA2000は、E-Header-BにSIの値(SI_user1, SI_user2)を含めて送信し、SI_user1, SI_user2を用いて、Payload1、Payload2をそれぞれ、スクランブルするため、望ましくないデータパターンが発生する確率を十分低くすることが可能である。SI_user1及びSI_user2フィールドは、例えば、それぞれ7ビットである。
図60A及び図60Bでは、STA2000は、L-HeaderのSI及びBW_index_Lの値を用いてL-Header及びE-Header-Aのスクランブリングを行うため、シングルユーザ送信及びマルチユーザ送信の両方において、L-Header及びE-Header-Aの変調及び符号化処理を共通化でき、回路規模を削減し、消費電力を低減できる。
また、受信装置(STA2100)におけるL-Header及びE-Header-Aの復調及び復号処理も共通化でき、回路規模を削減し、消費電力を低減できる。
STA2100は、L-Headerを用いてチャネルの組み合わせを判別できるので、実施の形態8と同様に、受信装置の設定を早期に切り替えでき、パケット毎にチャネルの組み合わせが変更される場合も、正しくパケットを受信できる。
実施の形態11によれば、送信装置2000は、パケット毎に使用するチャネルの組み合わせを変更して送信するため、無線チャネルを効率的に使用できる。
(実施の形態12)
本実施の形態は、図2の送信装置100、または、図2と基本構成を同じくする送信装置が、実施の形態1から11までとは別のフレームフォーマットを用いて送信する例を示す。また、図3の受信装置200(図64B、図64Cにさらに詳しい図を示す)が、それらのフレームを受信する方法について詳しく説明する。
図61A、図61B、及び、図61Cは、本実施の形態におけるPHYフレームのフレームフォーマットの一例を示す図である。図8のフレームフォーマットと異なり、図61A、図61B、及び、図61Cのフレームフォーマットは、EDMG-STFフィールドとEDMG-CEFフィールドを含まず、図8と同一のフィールドは、説明を省略する。また、EDMG-Header-Aを、E-Header-Aと書く。
図62は、図61A、図61B、及び、図61Cのフレームフォーマットにおける、L-Headerのフォーマットを示す図である。図62において、図47及び図53と同一のフィールドは、説明を省略する。
図62において、Compressed BWフィールドは、図38のChannel Occupation1からChannel Occupation4フィールド及びChannel Aggreagtionフィールドと同様に、図61A、図61B、図61Cのパケットが送信されるチャネル番号に対応する情報を示す。また、図47及び図53のBW indexフィールドも同様である。
図63A、図63B、図63Cは、Compressed BWフィールドの値の一例を示す図である。Compressed BWフィールドは、図54A、図54BのBW indexフィールドの値と同様に、重複しない占有チャネル番号の組合せに対して、Compressed BWフィールドの値を割り当てている。
例えば、送信装置100は、4.32 GHzチャネルボンディング(以後、4.32 GHz CBと記載する)において、重複しない占有チャネル番号の組合せに対して、Compressed BWフィールドの値1を割り当てる。また、送信装置100は、4.32 GHz CBにおいて、重複しない占有チャネル番号の別の組合せに対して、Compressed BWフィールドの値2を割り当てる(図63Aを参照)。
送信装置100は、8.64 GHzチャネルボンディング(以後、8.64 GHz CBと記載する)において用いる占有チャネルをあらかじめ定めても良い。例えば、送信装置100は、8.64 GHz CBにおいて用いる占有チャネルは、ch1、ch2、ch3、ch4の組み合わせである。
送信装置100は、8.64 GHz CBにおいて用いる占有チャネルを定め、RTSフレーム及びDMG CTSフレームに含めて受信装置200へ送信しても良い。
送信装置100は、8.64 GHz CBにおいて用いる占有チャネルを、他の送信装置400(たとえば、図示しないアクセスポイント)より通知された情報に基づき定めても良い。例えば、送信装置400は、8.64 GHz CBにおいて用いる占有チャネルを定めて、DMG Beaconフレームを用いて通知しても良い。送信装置100は、DMG Beaconを受信した場合、送信装置400が定めた8.64 GHz CBにおいて用いる占有チャネルと同一のチャネルを、送信装置100が用いる占有チャネルであると定めても良い。
送信装置100は、8.64 GHz CBにおいて用いる占有チャネルをあらかじめ定める場合、8.64 GHz CBに対応する重複する占有チャネル番号の組合せに対して、Compressed BWフィールドの値「5」を割り当ててもよい(図63Aを参照)。
また、送信装置100は、8.64 GHz CBにおいて用いる占有チャネルをあらかじめ定め、8.64 GHz CBにおいて用いる占有チャネルの一部を用いて6.48 GHzチャネルボンディング(6.48 GHz CBという)を行ってもよい。
例えば、送信装置100は、8.64 GHz CBにおいて用いる占有チャネルは、ch1、ch2、ch3、ch4の組み合わせである場合、ch1、ch2、ch3を占有チャネルとする6.48 GHz CB、及びch2、ch3、ch4を占有チャネルとする6.48 GHz CBを行う。
送信装置100は、ch1、ch2、ch3を占有チャネルとする6.48 GHz CB、及びch2、ch3、ch4を占有チャネルとする6.48 GHz CBを行うため、これらに別のCompressed BWの値(3及び4)を定める(図63Aを参照)。また、送信装置100は、8.64 GHz CBにおいて用いる占有チャネルは、ch1、ch2、ch3、ch4の組み合わせである場合、ch4、ch5、ch6を占有チャネルとする6.48 GHz CBを行わない。この場合、送信装置100は、ch1、ch2、ch3を占有チャネルとする6.48 GHz CBとch3、ch4、ch5を占有チャネルとする6.48 GHz CBに同一のCompressed BWフィールドの値(つまり、3)を割り当てても良い(図63Aを参照)。
また、送信装置100は、8.64 GHz CBにおいて用いる占有チャネルをあらかじめ定め、8.64 GHz CBにおいて用いる占有チャネルの一部を用いて2つの2.16GHzチャネルを用いるチャネルアグリゲーション(2.16+2.16 GHz CAという)を行ってもよい。
送信装置100は、6.48 GHz CBの場合と同様に、8.64 GHz CBにおいて用いる占有チャネルに応じて占有チャネルの組み合わせを区別できる場合、2.16+2.16 GHz CAに対応する重複する占有チャネル番号の組合せに対して、Compressed BWフィールドの値(6及び7)を割り当ててもよい(図63Bを参照)。
また、送信装置100は、2.16+2.16 GHz CAにおいて、2つの2.16 GHzチャネルが4チャネル以上離れている場合(図63Bにおいて、Compressed BWの値が8の場合を参照)、及び、2つの2.16 GHzチャネルが隣接している場合(図63Bにおいて、Compressed BWの値が9の場合を参照)、占有チャネルをあらかじめ定めても良い。
送信装置100は、2.16+2.16 GHz CAにおいて用いる占有チャネルをあらかじめ定める場合、2.16+2.16 GHz CAに対応する重複する占有チャネル番号の組合せに対して、Compressed BWフィールドの値を割り当ててもよい(図63Bにおいて、Compressed BWの値が8及び9の場合を参照)。
また、送信装置100は、2つの4.32GHzチャネルを用いるチャネルアグリゲーション(4.32+4.32 GHz CAという)、占有チャネルをあらかじめ定めても良い。
送信装置100は、4.32+4.32 GHz CAにおいて用いる占有チャネルをあらかじめ定める場合、4.32+4.32 GHz CAに対応する重複する占有チャネル番号の組合せに対して、Compressed BWフィールドの値を割り当ててもよい(図63Cを参照)。
送信装置100は、図62において、Start bitが16であるReservedフィールドに0を設定する。
図62において、Compressed BWフィールドと、Start bitが16であるReservedフィールドを合わせた5ビットは、実施の形態1から5におけるInfoに相当する。つまり、送信装置100は、Infoの値を、Compressed BWフィールドとStart bitが16であるReservedフィールドの値に基づき定め、実施の形態1から5に示したいずれかの方法で、Length(つまり、DMG PSDU Length)の値を算出する。
送信装置100は、図61A、図61B、及び、図61CのPHYフレームにおけるDataフィールドがSC(シングルキャリア)変調される場合、図62のIsSCフィールドを1に設定し、DataフィールドがOFDM変調する場合、図62のIsSCフィールドを0に設定する。
なお、IsSCフィールドは、図6のOFフィールドの値において0と1を反転した場合と同じ意味を持つフィールドである。
送信装置100は、図61A、図61B、及び、図61CのPHYフレームをシングルストリーム送信する場合、図62のIsSISOフィールドを1に設定し、MIMO送信する場合、図62のIsSISOフィールドを0に設定する。
なお、IsSISOフィールドは、図6のMIMOフィールドの値が00の場合IsSISOフィールドを1に、MIMOフィールドの値が00以外の場合IsSISOフィールドを0に設定した場合と同じ意味を持つフィールドである。
図63Dは、図62のGI/CP Lengthフィールドの値の一例を示す図である。
送信装置100は、DataフィールドのGI長を64シンボルとする場合(Normal GIという)、図62のGI/CP Lengthフィールドの値を1に設定する。送信装置100は、シングルストリーム送信(つまり、IsSISOフィールドの値が1)かつ、2.16 GHz シングルチャネル送信(つまり、Compressed BWフィールドの値が0)かつ、Normal GI(つまり、GI/CP Lengthフィールドの値が1)の場合、図61Aのフレームフォーマットを用いてPHYフレームを送信する。
送信装置100は、DataフィールドのGI長を32シンボルとする場合(Short GIという)、図62のGI/CP Lengthフィールドの値を0に設定する。送信装置100は、シングルストリーム送信(つまり、IsSISOフィールドの値が1)かつ、2.16 GHz シングルチャネル送信(つまり、Compressed BWフィールドの値が0)かつ、Short GI(つまり、GI/CP Lengthフィールドの値が0)の場合、図61Bのフレームフォーマットを用いてPHYフレームを送信する。
送信装置100は、DataフィールドのGI長を128シンボルとする場合(Long GIという)、図62のGI/CP Lengthフィールドの値を2に設定する。送信装置100は、シングルストリーム送信(つまり、IsSISOフィールドの値が1)かつ、2.16 GHz シングルチャネル送信(つまり、Compressed BWフィールドの値が0)かつ、Long GI(つまり、GI/CP Lengthフィールドの値が2)の場合、図61Cのフレームフォーマットを用いてPHYフレームを送信する。
図61Aのフレームフォーマットについて詳細に説明する。
図61Aのフレームフォーマットにおいて、L-Headerフィールドは、L-Header(1)ブロックと、L-Header(2)ブロックを含む。送信装置100は、図62のL-Headerフィールドの内容を、11ad規格に従い符号化と変調を行い、448シンボルのL-Header(1)ブロック及び448シンボルのL-Header(2)ブロックを生成する。L-Headerフィールドは、L-Header(1)ブロックとL-Header(2)ブロックの前後に、64シンボルのGI(以降、GI64と記載する)を含む。
図61Aのフレームフォーマットにおいて、EDMG-Header-A(E-Header-A)フィールドは、E-Header-A(1)ブロックと、E-Header-A(2)ブロックを含む。E-Header-A(1)ブロック及びE-Header-A(2)ブロックは、π/2-BPSK変調された448シンボルを含む。E-Header-Aフィールドは、E-Header-A(1)ブロックとE-Header-A(2)ブロックの後に、GI64を含む。
図61Aのフレームフォーマットにおいて、Dataフィールドは、448シンボルのデータブロック(Data(1)からData(N)、Nはデータブロック数)を含む。Dataフィールドは、各データブロックの後に、GI64を含む。
送信装置100は、図61AのPHYフレームを送信する場合、図5の手順を用いて、L-Headerに格納するDMG PSDU Lengthの値を決定しても良い。図61Aのフレームフォーマットにおいて、Dataフィールドは、2つのE-Header-Aブロックと、N個のDataブロックを含むため、送信装置100は、図5のステップS1において、N_BLKSの値をN+2に設定する。また、送信装置100は、図5の手順において、Infoの値を、Compressed BWフィールドとStart bitが16であるReservedフィールドの値に基づき定めてもよい。
送信装置100は、図11、図16、図17、図19A、図19Bのいずれかの手順を用いて、L-Headerに格納するPSDU Lengthの値を決定しても良い。送信装置100は、各手順のステップS1において、N_BLKSの値をN+2に設定し、Infoの値を、Compressed BWフィールドとStart bitが16であるReservedフィールドの値に基づき定めてもよい。
図61Bのフレームフォーマットにおいて、L-Headerフィールドと、EDMG-Header-Aフィールドは、図61Aのフレームフォーマットと同一である。但し、送信装置100は、図61BのL-Headerにおいて、GI/CP Lengthの値を0(Short GI)に設定する。
図61Bのフレームフォーマットにおいて、Dataフィールドは、480シンボルのデータブロック(Data(1)からData(N)、Nはデータブロック数)を含む。Dataフィールドは、各データブロックの後に、長さ32シンボルのGI(以降、GI32と記載する)を含む。
送信装置100は、図61BのPHYフレームを送信する場合、図5、図11、図16、図17、図19A、図19Bのいずれかの手順を用いて、L-Headerに格納するDMG PSDU Lengthの値を決定しても良い。図61Bのフレームフォーマットにおいて、Dataフィールドは、2つのE-Header-Aブロックと、N個のDataブロックを含むため、送信装置100は、図5、図11、図16、図17、図19A、図19BのステップS1において、N_BLKSの値をN+2に設定する。
図61Cのフレームフォーマットにおいて、L-Headerフィールドと、EDMG-Header-Aフィールドは、図61Aのフレームフォーマットと同一である。但し、送信装置100は、図61CのL-Headerにおいて、GI/CP Lengthの値を2(Long GI)に設定する。
図61Cのフレームフォーマットにおいて、Dataフィールドは、384シンボルのデータブロック(Data(1)からData(N)、Nはデータブロック数)を含む。Dataフィールドは、各データブロックの後に、長さ128シンボルのGI(以降、GI128と記載する)を含む。
図61Cのフレームフォーマットは、図61A及び図61Bのフレームフォーマットと異なり、E-Header-A(2)ブロックの後のGIがGI64ではなくGI128である。つまり、Dataブロック数がNである場合、図61Cのフレームフォーマットは、図61A及び図61Bに比べ、EDMG-Header-Aフィールドが64シンボル長い。
送信装置100は、図61CのPHYフレームを送信する場合、図5、図11、図16、図17、図19A、図19Bのいずれかの手順を用いて、L-Headerに格納するDMG PSDU Lengthの値を決定しても良い。
送信装置100は、図61CのPHYフレームを送信する場合、E-Header-A(2)ブロックの後のGIがGI64ではなくGI128であるため、図61A及び図61Bでは、N_BLKS=N+2であったが、図5、図11、図16、図17、図19A、図19BのステップS1において、N_BLKS=N+3と設定しても良い。
図64Aを用いて、11ad端末のレガシ端末である受信装置300(図4を参照)が図61A、及び、図61BのPHYフレームを受信する場合の動作を説明する。図64Aは、図4の受信装置300の構成の一例を示す図である。図4と同一のブロックには同一の番号を付与し、説明を省略する。
電力検出部305は、受信信号が受信電力閾値を超えたかどうかを判定し、受信制御部304に通知する。受信電力閾値は、例えば、11ad規格では、-48 dBm(15.8ナノワット)と定められている。
パケット検出部306は、受信信号にPHYフレームが含まれるかどうかを判定する。パケット検出部306は、例えば、相関器を備え、11ad規格のフレームにおけるL-STFフィールド(図1を参照)のパターンを検出することにより、PHYフレームを検出する。相関器を用いたパターン検出により、受信装置300は、受信電力閾値(-48 dBm)より低い受信電力のPHYフレームを検出することができる。例えば、11ad規格では、受信信号が-68 dBm(0.16ナノワット)以上の電力である場合(受信電力閾値よりも低い値)、受信装置はPHYフレームを検出することが定められている。ここで、本開示の受信装置300は、パターン検出を用いてL-STFを検出することにより、受信電力閾値よりも低い値である-68 dBm以上のPHYフレームを検出することができる。
受信制御部304は、電力検出部305が受信電力閾値を超える電力を検出した場合、及び、パケット検出部306がPHYフレームを検出した場合、図示しないMAC制御部に対してCCA通知を行う。なお、電力及びPHYフレームが検出された後にCCA通知を行うことを、CCAをアサートするという。
受信装置300は、CCAをアサートする場合、つまり、受信電力閾値を超える信号を受信しているので、他のSTA(例えば送信装置100)が信号の送信を行っていると判定し、受信装置300を含む11ad端末は、11ad端末の送信装置(図示しない)に対して、送信を行わない制御を行う。
受信制御部304は、電力検出部305が受信電力閾値を超える電力を検出している間、CCAのアサートを継続する。
また、受信制御部304は、パケット検出部306が11ad規格のPHYフレームを検出した場合、PHYフレームが継続している間、CCAのアサートを継続する。受信制御部304は、L-Header解析部303が出力するパケット長に基づき、PHYフレームの長さを算出し、CCAのアサートを継続する時間を決定しても良い。
受信制御部304は、パケット検出部306が11ay規格のPHYフレーム(図1を参照)を検出した場合、PHYフレームが継続している間、CCAのアサートを継続する。
なお、受信装置300は、11ad規格に対応した受信装置であり、11ay規格のEDMG-Header-Aを復調及び復号することが困難であるため、受信中のPHYフレームは未知のフレームであると判定し、パケット検出から電力検出に切換え、PHYフレームが継続している間、CCAのアサートを継続してもよい。
ここで、受信装置300は、PHYフレームの受信電力が受信電力閾値より低い場合、CCAのアサートの継続が困難となる場合がある。このため、11ad規格と同様のL-STF,L-CEF,L-Headerを含む図61A、及び、図61BのPHYフレームを用いることで、11ad規格に対応した受信装置300は、PHYフレームの一部が復調及び復号できるため、PHYフレームの受信電力が受信電力閾値より低い場合であっても、CCAのアサートの継続が可能となる。
受信制御部304は、パケット検出部306が11ad規格と同様のL-STF,L-CEF,L-Headerを含む図61A、及び、図61BのPHYフレームを検出した場合、PHYフレームが継続している間、CCAのアサートを継続する。受信制御部304は、L-Header解析部303が出力するパケット長に基づき、PHYフレームの長さを算出し、CCAのアサートを継続する時間を決定しても良い。
前述の通り、送信装置100は、図61A、及び、図61BののPHYフレームのL-Headerに、11ad規格に対応した受信装置(例えば受信装置300)がPHYフレーム長を計算できるようにLengthを設定して送信する。
このため、受信装置300は、EDMG-Header-Aフィールド及びDataフィールドを復調及び復号ができなくても、図61A及び図61BのPHYフレームの長さを算出することができ、CCAをアサートすることができる。これにより、受信装置300は、電力検出に基づくCCAに比べ、正確にCCAをアサートすることができる。
このため、受信装置300を含む11ad端末は、11ad端末の送信装置(図示しない)に対して、CCA不検出による送信を減らし、他のSTA(例えば送信装置100、及び、送信装置100が送信中のパケットを受信している受信装置200)への干渉を減らすことができる。
受信装置300は、図61CのPHYフレームを受信する場合、L-Headerに含まれるLengthフィールドの値を用いて、図61CのPHYフレームより448シンボル長いPHYフレームの長さを算出する。受信装置300は、算出したPHYフレーム長に基づき、CCAをアサートしても良い。
受信装置300は、EDMG-Header-Aフィールド及びDataフィールドを受信せずに図61CのPHYフレームより448シンボル長いPHYフレームの長さを算出することができ、CCAをアサートすることができる。これにより、受信装置300は、CCA不検出による送信を減らし、他のSTA(例えば送信装置100、及び送信装置100が送信中のパケットを受信している受信装置200)への干渉を減らすことができる。
図64Bは、受信装置200の構成の一例を示す図である。前述した図3と同一のブロックには同一の番号を付与し、説明を省略する。なお、図64Bにて追加したブロックは図3に追加して実施してもよい。
電力検出部208は、受信信号が受信電力閾値を超えたかどうかを判定し、受信制御部207に通知する。受信電力閾値は、例えば、11ad規格では、-48 dBm(15.8ナノワット)と定められている。
また、電力検出部208は、受信信号の受信電力を測定し、AGC制御部210に通知する。
AGC制御部210は、電力検出部208より通知された受信信号の受信電力の値に基づき、RF受信回路(図示しない)の利得を調整し、受信フィルタ部201に入力される受信信号が適切な振幅となるように制御する(AGC: Automatic Gain Controlという)。
パケット検出部209は、受信信号にPHYフレームが含まれるかどうかを判定する。パケット検出部209は、例えば、相関器を備え、L-STFフィールド(図1を参照)のパターンを検出することにより、PHYフレームを検出する。
受信制御部207は、電力検出部208が受信電力閾値を超える電力を検出した場合、及び、パケット検出部209がPHYフレームを検出した場合、図示しないMAC制御部に対してCCA通知を行う。
受信装置200は、CCAをアサートする場合、他のSTA(例えば送信装置100)が信号の送信を行っていると判定し、受信装置200が含まれる11ay端末は、11ay端末の送信装置100に送信を行わないように制御する。
受信制御部207は、電力検出部208が受信電力閾値を超える電力を検出している間、CCAのアサートを継続する。
また、受信制御部207は、パケット検出部209がPHYフレームを検出した場合、PHYフレームが継続している間、CCAのアサートを継続する。受信制御部207は、EDMG-Header-A解析部206が出力するパケット長に基づき、PHYフレームの長さを算出し、CCAのアサートを継続する時間を決定しても良い。
図64Cは、図3の受信装置200の復調部203の一例を示す図である。復調部203は、チャネル推定器2030、DFT(Discrete Fourier Transform)2031、等化器2032、IDFT2033、GI除去2034、データ復調2035を含む。
チャネル推定器2030は、L-CEFフィールドの受信信号を用いて、チャネル(無線伝搬路)の周波数応答を推定する。
DFT2031は、同期部202が出力する時間領域受信信号を離散フーリエ変換し、周波数領域信号に変換する。
等化器2032は、周波数領域信号を補正し、SNR(Signal to Noise Ratio, 信号対雑音比)及びSINR(Signal to Interference plus Noise Ratio, 信号対雑音・干渉比)を改善する。等化器2032が用いる方法として、ZF(Zero Forcing)方式、MMSE(Minimum Mean Square Error)方式、MLD(Maximum Likelihood Detection)方式等がある。
IDFT2033は、等化器2032が出力する周波数領域信号に対して逆離散フーリエ変換を行い、時間領域信号(受信シンボル信号という)に変換する。
GI除去2034は、受信シンボル信号から、GIに関する受信シンボルを除去し、L-Header、E-Header-A、Dataに関する受信シンボル信号をデータ復調部2035へ入力する。
データ復調2035は、L-Headerフィールド、EDMG-Headerフィールド、Dataフィールドに関する受信シンボル信号に対して各フィールドにおける変調方式に応じた復調処理を行い、尤度値信号(LLR、Log-Likelihood Ratioという)を生成する。図3の復号部204は、尤度値信号を用いて誤り訂正復号を行い、L-Headerフィールド、EDMG-Headerフィールド、Dataフィールドに関する受信ビット列を生成する。
次に、図65A、図65B、及び、図65Cを用いて、DFT2031の動作を説明する。
図65Aは、受信装置200によって受信された図61AのPHYフレーム(Normal GI)のうちのEDMG-Header-Aフィールド及びDataフィールド(同期部202が出力する時間領域受信信号)の一例を示す図である。
DFT2031は、448シンボルのE-Header-A(1)ブロックと64シンボルのGI64とを入力として、512点DFT処理を行う。DFT2031へ入力する512個のシンボルを、DFTウィンドウという。
時間領域受信信号におけるE-Header-A(1)ブロックの開始シンボルは、同期部202によって決定される。例えば、受信信号に直接波と反射波を含む場合、直接波のEDMG-Header-A(1)ブロックの受信開始時刻と反射波のEDMG-Header-A(1)ブロックの受信開始時刻は異なることがある。このため、同期部202は、直接波のEDMG-Header-A(1)ブロックの受信開始時刻を基準として、E-Header-A(1)ブロックの開始シンボルを決定しても良い。
DFT2031は、後続するE-Header-A(2)ブロックとGI64とを入力として、512点DFT処理を行う。つまり、DFT2031は、E-Header-A(1)を含むDFTウィンドウに続き、E-Header-A(2)を含むDFTウィンドウを定める場合、E-Header-A(1)を含むDFTウィンドウと、E-Header-A(2)を含むDFTウィンドウの間隔は0シンボルである。
なお、送信装置100と受信装置200のシンボルクロックのずれを補正する(シンボル同期という)ため、DFT2031は、DFTウィンドウと次のDFTウィンドウの間に1以上のシンボルを挿入しても良い。つまり、DFTウィンドウの間隔を1以上としてもよい。
また、シンボル同期のため、DFT2031は、DFTウィンドウと次のDFTウィンドウを1シンボル以上重複させてもよい。つまり、DFTウィンドウの間隔は-1以下としてもよい。
以下、シンボル同期に関する記述は省略するが、同様である。
DFT2031は、図65Aでは、448シンボルのData(1)ブロックと64シンボルのGI64とを次のDFTウィンドウと定め、DFT処理を行う。同様に、Data(2)からData(N)ブロックまでの各Dataブロックと各GI64とをそれぞれDFTウィンドウと定め、DFT処理を行う。
図65Bは、受信装置200によって受信された図61BのPHYフレーム(Short GI)のうちのEDMG-Header-Aフィールド及びDataフィールドの一例を示す図である。
図65BのEDMG-Header-Aのフォーマットは図65Aと同一である。また、図65Bでは、480シンボルのDataブロックと32シンボルのGI32とを合計した長さは512シンボルであり、図65Aと同じシンボル数である。DFT2031は、図65Aと同様に、E-Header-Aフィールド及びDataフィールドに対してDFTウィンドウを定め、DFT処理を行う。
図65Cは、受信装置200によって受信された図61CのPHYフレーム(Long GI)のうちのEDMG-Header-Aフィールド及びDataフィールドの一例を示す図である。
図65CのEDMG-Header-Aのフォーマットにおいて、E-Header-A(2)ブロックの後のGIは、128シンボル(つまり、GI128)である。DFT2031は、E-Header-A(2)ブロックと、E-Header-A(2)ブロックに後続するGI128の前半64シンボルをDFTウィンドウとして、DFT処理を行う。
送信装置100は、GI128の前半64シンボルとGI64を同一のパターンとして送信しても良い。この場合、受信装置200は、E-Header-A(2)を含むDFTウィンドウでは、図65AにおけるE-Header-A(2)ブロックとGI64を含む場合と同様にDFT及び等化を行う。
DFT2031は、図65Cでは、384シンボルのData(1)ブロックと128シンボルのGI128を次のDFTウィンドウと定め、DFT処理を行う。
つまり、図65A及び図65Bでは、E-Header-A(2)ブロックを含むDFTウィンドウとData(1)ブロックを含むDFTウィンドウの間隔は0であるが、図65Cでは、E-Header-A(2)ブロックを含むDFTウィンドウとData(1)ブロックを含むDFTウィンドウの間隔は64である。
受信装置200は、E-Header-A(2)ブロックを含むDFTウィンドウの受信信号をDFT2031へ入力完了するまでに、L-Headerの復号を完了して、受信したCompressed BWフィールド、IsSCフィールド、IsSISOフィールド、GI/CP Lengthフィールドの値を取得し、受信したPHYフレームが、図65A、図65B、図65Cの何れか、又は別のフォーマットであるか、を判別する。以下に、PHYフレームの判別について、詳細に説明する。
図64BのL-Header解析部205は、復号されたL-Header(L-Headerに関する受信ビット列)から、Compressed BWフィールド、IsSCフィールド、IsSISOフィールド、GI/CP Lengthフィールドの値を取得し、受信制御部207へ転送する。
図66は、受信制御部207がフォーマットを判別する基準の一例を示す図である。受信制御部207は、L-Header解析部205より入力されたCompressed BWフィールドの値が0、IsSCフィールドの値が1、IsSISOフィールドの値が1、GI/CP Lengthフィールドの値が0の場合、受信装置200が受信中のPHYフレームは、図61B及び図65Bのフォーマットであると判別する。
受信制御部207は、L-Header解析部205より入力されたCompressed BWフィールドの値が0、IsSCフィールドの値が1、IsSISOフィールドの値が1、GI/CP Lengthフィールドの値が1の場合、受信装置200が受信中のPHYフレームは、図61A及び図65Aのフォーマットであると判別する。
受信制御部207は、L-Header解析部205より入力されたCompressed BWフィールドの値が0、IsSCフィールドの値が1、IsSISOフィールドの値が1、GI/CP Lengthフィールドの値が2の場合、受信装置200が受信中のPHYフレームは、図61C及び図65Cのフォーマットであると判別する。
受信制御部207は、L-Header解析部205より入力されたCompressed BWフィールドの値、IsSCフィールドの値、IsSISOフィールドの値、GI/CP Lengthフィールドの値の組み合わせが、前述のいずれでもない場合、受信装置200が受信中のPHYフレームは、図61A(図65A)、図61B(図65B)、図61C(図65C)のいずれでもない(つまり、他のフォーマット)であると判別する。
受信制御部207は、判別結果を復調部203及びDFT2031へ通知する。DFT2031は、判別されたフォーマットが図65A及び図65Bの場合、E-Header-A(2)ブロックを含むDFTウィンドウとData(1)ブロックを含むDFTウィンドウの間隔を0として、Data(1)ブロックを含むDFTウィンドウのDFTを行う。
DFT2031は、判別されたフォーマットが図65Cの場合、E-Header-A(2)ブロックを含むDFTウィンドウとData(1)ブロックを含むDFTウィンドウの間隔を64として、Data(1)ブロックを含むDFTウィンドウのDFTを行う。
なお、Compressed BWフィールドの値が6以上9以下である場合、つまり、2.16+2.16 GHz CAである場合、送信装置100は、図55Aに示すフレームフォーマットを用いる。各チャネル(図55Aでは、ch1とch3)上のフレームフォーマットは、図61A、図61B、及び、図61Cと同一である。
つまり、送信装置100は、2.16+2.16 GHz CAの場合、図61A、図61B、及び、図61Cと同一のフレームフォーマットを2つのチャネルを用いて送信する。送信装置100は、2つのチャネルにおいて、L-HeaderとEDMG-Header-Aは同一のデータを含めて送信してもよい。また、送信装置100は、2つのチャネルにおいて、Dataフィールドに異なるデータを含めて送信しても良い。
受信装置200は、2.16+2.16 GHz CA(つまり、Compressed BWフィールドの値が6以上9以下)の場合、2.16 GHzシングルチャネル送信(つまり、Compressed BWフィールドの値が0)の場合と同様に、DFTウィンドウを決定しても良い。
本実施の形態の送信装置100は、L-HeaderにCompressed BWフィールド、IsSCフィールド、IsSISOフィールド、GI/CP Lengthフィールドを含めて送信するため、受信装置200は、L-Headerの受信から、Data(1)ブロックのDFT2031への入力までの間にL-Headerの復号と解析を行い、判別したフレームフォーマットに基づきDFT2031の動作を変更する。
本実施の形態の送信装置100は、L-HeaderのLengthフィールドの下位ビットに、Infoを含めて送信するようにしたので、Compressed BWフィールド、IsSCフィールド、IsSISOフィールド、GI/CP LengthフィールドをL-Headerに含めて送信することができる。
なお、図65A、図65B、及び、図65Cにおいて、DFT2031は、各データブロック(L-Header(1)、L-Header(2)、E-Header-A(1)、E-Header-A(2)、Data(1)からData(N))と、各データブロックに後続するGIとをDFTウィンドウとした。つまり、DFT2031は、GIの終端とDFTウィンドウの終端とを一致させるように、DFTウィンドウを決定する。
図67A、図67B、図67Cは、DFT2031がDFTウィンドウを決定する別の方法を示す図である。図67A、図67B、図67Cでは、受信装置200は、それぞれ図65A、図65B、図65Cと同じフレームフォーマットのパケットを受信する。
受信装置200のDFT2031は、図67A、図67B、図67Cでは、図65A、図65B、図65Cと比べ、DFT窓先行区間分、DFT窓を早めて設定する。ここでは、DFT窓先行区間は、例えば8シンボルである。
受信装置200は、DFT窓先行区間を1シンボル以上とすることにより、受信信号が直接波に対する先行波を含む場合に、DFTウィンドウに先行波を含めて等化を行うことができ、受信品質を高めることができる。
なお、受信装置200は、DFT窓先行区間を、L-Headerフィールド、EDMG-Header-Aフィールド、Dataフィールドにおいて、同一のシンボル数として設定してもよい。図67A、図67B、図67Cにおける、E-Header-A(1)を含むDFTウィンドウと、E-Header-A(2)とを含むDFTウィンドウの間隔は、それぞれ、図65A、図65B、図65Cと同じである。
また、受信装置200は、DataフィールドのDFT窓先行区間を、L-Headerフィールド及びEDMG-Header-AフィールドのDFT窓先行区間とは異なるシンボル数として設定してもよい。この場合、受信装置200は、E-Header-A(1)を含むDFTウィンドウと、E-Header-A(2)を含むDFTウィンドウの間隔を、DFT窓先行区間に応じて調整する。
また、受信装置200は、DFT窓先行区間を、GIの長さに応じて異なるシンボル数として設定してもよい。
例えば、受信装置200は、Normal GIでは、DataフィールドのDFT窓先行区間は8シンボル、Short GIでは、DataフィールドのDFT窓先行区間は4シンボル、Long GIでは、DataフィールドのDFT窓先行区間は16シンボルとし、L-Headerフィールド及びEDMG-Header-AフィールドのDFT窓先行区間は、DataフィールドのGIの長さに関わらず8としても良い。
この場合、E-Header-A(1)を含むDFTウィンドウの間隔、及び、E-Header-A(2)を含むDFTウィンドウの間隔は、Normal GIでは0、Short GIでは4、Long GIでは56である。
受信装置200は、図66を用いて、L-Headerの復号結果から、E-Header-A(1)を含むDFTウィンドウと、E-Header-A(2)を含むDFTウィンドウの間隔を決定し、Data(1)ブロックを含むDFTウィンドウを決定しても良い。
なお、本開示では、「L-Header」に、Compressed BWフィールド、IsSCフィールド、IsSISOフィールド、GI/CP Lengthフィールドを全て含めたが、「L-Header」に、Compressed BWフィールド、IsSCフィールド、IsSISOフィールド、GI/CP Lengthフィールドを全て含めないで、「EDMG-Header-A」に、Compressed BWフィールド、IsSCフィールド、IsSISOフィールド、GI/CP Lengthフィールドを全て含める場合、E-Header-A(2)ブロックを含むDFTウィンドウとData(1)ブロックを含むDFTウィンドウとの間隔は0又は64であるから、Data(1)ブロックをDFT2031へ入力する前までにEDMG-Header-Aを復号することは困難である。つまり、Data(1)ブロックをDFT2031へ入力する前までにフレームフォーマットを判別することが困難である。
なお、本開示の各実施の形態は、「L-Header」に、Compressed BWフィールド、IsSCフィールド、IsSISOフィールド、GI/CP Lengthフィールドを全て含め、「EDMG-Header-A」にも、Compressed BWフィールド、IsSCフィールド、IsSISOフィールド、GI/CP Lengthフィールドを全て含めてもよい。
この場合、Data(1)ブロックをメモリ(図示しない)に保存し、Data(1)ブロックをDFT2031へ入力するタイミングを遅らせることで、フレームフォーマットを判断した後にData(1)ブロックをDFT処理することが可能である。
しかし、受信装置は、メモリを用いることによりパケットの受信における処理遅延、回路規模、消費電力が増大する。また、受信装置は、メモリのサイズを削減するために、L-Headerを復調及び復号を行うための復調部、復号部を高速化し、遅延を削減する必要がある。このために、受信装置は、回路の動作クロックを高めることにより、消費電力が増大し、回路の並列度を高めることにより、回路規模及び消費電力が増大する。
これに対して、実施の形態12の送信装置100は、Compressed BWフィールド、IsSCフィールド、IsSISOフィールド、CP/GI Lengthフィールドの値をL-Headerに含め、それらの一部をL-HeaderのLengthフィールドの下位ビットに含めて送信する。このため、受信装置200はPHYフレームのフォーマットに応じたDFTウィンドウを定めることができ、処理遅延、回路規模、消費電力を削減することができる。
また、実施の形態12の送信装置100は、Compressed BWフィールド、IsSCフィールド、IsSISOフィールド、CP/GI Lengthフィールドの値をL-Headerに含め、それらの一部をL-HeaderのLengthフィールドの下位ビットに含めて送信する。このため、11ad端末のレガシ端末である受信装置300は、EDMG-Header-Aフィールド及びDataフィールドを復号せずにパケット長を算出することができ、CCAをアサートすることができるので、消費電力を削減し、他の端末へ与える干渉を削減することができる。
また、実施の形態12の11ay端末である受信装置200は、受信したL-Headerの値に応じてDFTウィンドウのタイミングを変更してパケットを受信するため、回路規模及び消費電力を削減することができる。
(実施の形態12の変形例)
図68A、図68B、図68Cは、それぞれ図61A、図61B、図61Cと対応し、実施の形態12の変形例のフレームフォーマットの一例を示す図である。
送信装置100は、図68A、図68B、図68Cのフレームフォーマットを用いる場合、図61A、図61B、図61Cを用いる場合と異なり、Dataフィールドの先頭(つまり、Data(1)ブロックの前)に、M-STF(Midamble STF)ブロックとGIとを挿入して送信する。
M-STFブロックは、Data(1)ブロックと同じシンボル数を含み、Normal GI(図68A)では、448シンボルであり、Short GI(図68B)では、480シンボルであり、Long GI(図68C)では、384シンボルである。
また、図68Cのフレームフォーマットは、図61Cと異なり、E-Header-A(2)の後のGIがGI64である。
図68A、図68B、及び、図68Cにおいて、EDMG-Header-AフィールドとDataフィールドを合わせた部分の長さは、(N+3)×512シンボルである。つまり、図61A、図61B、及び、図61Cと異なり、GI長に関わらず長さが同一である。
送信装置100は、図68A、図68B、及び、図68CのPHYフレームを送信する場合、図5、図11、図16、図17、図19A、図19Bのいずれかの手順を用いて、L-Headerに格納するDMG PSDU Lengthの値を決定しても良い。図68A、図68B、図68Cのフレームフォーマットにおいて、Dataフィールドは、2個のE-Header-Aブロックと、1個のM-STFブロックと、N個のDataブロックを含むため、送信装置100は、図5、図11、図16、図17、図19A、図19BのステップS1において、N_BLKSの値をN+3に設定する。
11ad端末のレガシ端末である受信装置300(図4を参照)が、図68A、図68B、図68CのPHYフレームを受信する場合、L-Headerに含まれるLengthフィールドの値を用いて、PHYフレームの長さを算出する。受信装置300は、算出したPHYフレーム長に基づき、CCAをアサートしても良い。
つまり、受信装置300が、図68CのPHYフレームを受信する場合、図61Cと異なり、PHYフレーム長を正確に算出することができる。
受信装置200が、図68A、図68B、図68CのPHYフレームを受信する場合、E-Header-A(2)ブロックを含むDFTウィンドウとM-STFブロックを含むDFTウィンドウの間隔は、図68A、図68B、図68Cそれぞれにおいて0である。
また、受信装置200が、図68A、図68B、図68CのPHYフレームを受信する場合、M-STFブロックを含むDFTウィンドウとDataブロックを含むDFTウィンドウの間隔は、図68A、図68B、図68Cそれぞれにおいて0である。
つまり、受信装置200が、図68A、図68B、図68CのPHYフレームを受信する場合、GIの長さに応じてDFTウィンドウの定め方を切り替える必要が無い。つまり、DFT2031の動作は、GIの長さに関わらず同一である。
受信装置200の受信制御部207は、GIの長さ(GI/CP Lengthフィールドの値)に応じて、GI除去2034を制御する。受信装置200は、Data(1)ブロックのGI除去処理を行う前に、L-Headerの復号と解析を完了する。
受信装置200は、Dataブロック(1)のDFT処理、等化処理、IDFT処理を行っている間に、L-Headerの復号を行ってもよい。つまり、実施の形態12において、DataブロックのDFT処理の前にL-Headerの復号を完了する場合に比べ、L-Headerの復号に用いることができる時間が増加する。これにより、受信装置200の復号部204の動作クロックを下げ、並列度を下げることができるので、回路規模及び消費電力を削減することができる。
(M-STFの実施例1)
図69A、図69B、図69Cは、M-STFの実施例1における、M-STFと、M-STFに後続するGIの一例を示す図である。
送信装置100は、Normal GIのPHYフレーム(図68A)では、GI64のパターンを7回繰り返すことで、448シンボルのM-STFフィールドを生成する(図69A)。Normal GIのPHYフレームでは、M-STFと、M-STFに後続するGIを合せると、GI64を8回繰り返したパターンに相当する。
送信装置100は、Short GIのPHYフレーム(図68B)では、GI64のパターンを7回繰り返し、更に、GI64の前半32シンボルを加え、480シンボルのM-STFフィールドを生成する(図69B)。Short GIのPHYフレームでは、GI64の後半32シンボルと、GI32のパターンが同一である場合、M-STFと、M-STFに後続するGIを合わせると、GI64を8回繰り返したパターンに相当する。
送信装置100は、Long GIのPHYフレーム(図68C)では、GI64のパターンを6回繰り返すことで、384シンボルのM-STFフィールドを生成する(図69C)。Long GIのPHYフレームでは、GI128の前半64シンボルと、GI64のパターンが同一である場合、M-STFと、M-STFの後のGIを合わせると、GI64を7回繰り返し、別の64シンボルのパターン(GI128の後半64シンボル)を付加したパターンに相当する。
M-STFの実施例1では、送信装置100は、GI64のパターンを繰り返すことによりM-STFのパターンを生成することができるため、簡易な回路でパターンを生成でき、回路規模を削減することができる。
受信装置200は、M-STFの実施例1のM-STFを受信した場合、AGCを行ってもよい。受信装置200は、L-STFを用いてAGCの疎調整を行い、M-STFを用いてAGCの精調整を行ってもよい。
また、受信装置200は、L-Headerを復号した情報を用いて、AGCの目標振幅を変更し、M-STFを用いてAGCの精調整を行ってもよい。
図69A、図69B、図69Cは、GI毎に前半448シンボルが共通のパターンであるから、受信装置200は、GI長に関わらず同一の処理でM-STFを用いたAGC処理を行うことができる。
ここで、受信装置200は、チャネルボンディングパケット(例えば図40を参照)のL-STF,L-CEF,L-Header,E-Header-Aの受信感度を高めるため、RF回路のフィルタ係数をチャネルボンディングに適した値に設定し、AGCの目標振幅を定め、L-STFにおけるAGCを行ってもよい。
受信装置200は、L-Headerを復号し、Compressed BWフィールドの値からPHYフレームの占有チャネルを判別し、M-STFの受信中にRF回路のフィルタ係数をPHYフレームの占有チャネルに適した値に設定し、AGCの目標振幅を変更しても良い。
受信装置200は、M-STFの受信中にRF回路のフィルタ係数を切り替えることによって、受信中のシンボルの品質が損なわれる場合があるが、M-STFの一部のシンボルが損なわれても、Dataを損なうことを抑制できる。
(M-STFの実施例2)
図70A、図70B、図70Cは、M-STFの実施例2における、M-STFと、M-STFに後続するGIの一例を示す図である。M-STFは、GI64のパターンを繰り返す図69A、図69B、図69Cと異なり、128シンボルのパターン(Ga128)を繰り返して構成される。
送信装置100は、図70A、図70B、図70CにおけるGa128として、L-STFに含まれるGa128のパターンを用いてもよい。なお、11ad規格では、送信装置100は、Ga128を16回繰り返し、符号反転した-Ga128を付加してL-STFを生成する。
送信装置100は、図70A、図70B、図70CにおけるGa128として、GI128と同一のパターンを用いてもよい。
送信装置100は、Normal GIのPHYフレーム(図68A)では、3つのGa128、Ga128の前半64シンボルを用いて、448シンボルのM-STFフィールドを生成する(図70A)。
送信装置100は、Short GIのPHYフレーム(図68B)では、3つのGa128、Ga128の前半96シンボルを用いて、480シンボルのM-STFフィールドを生成する(図70B)。
送信装置100は、Long GIのPHYフレーム(図68C)では、3つのGa128を用いて、384シンボルのM-STFフィールドを生成する(図70C)。
M-STFの実施例2では、送信装置100は、Ga128を用いることによりM-STFを生成することができるため、簡易な回路でM-STFを生成でき、回路規模を削減することができる。
また、図70A、図70B、図70Cでは、それぞれ、長さの異なるGIをM-STFに後続させることで、512シンボルを構成することで、受信装置200は、GI長に関わらず同一の処理でM-STFを用いたAGC処理を行うことができる。
図71A、図71B、図71Cはそれぞれ、図70A、図70B、図70Cのパターンの変形例、つまり、M-STFの実施例2におけるM-STFと、M-STFに後続するGIの一例を示す図の他の一例である。
送信装置100は、Normal GIのPHYフレーム(図68A)では、Ga128の後半64シンボルと3つのGa128とを用いて、448シンボルのM-STFフィールドを生成する(図71A)。
送信装置100は、Short GIのPHYフレーム(図68B)では、Ga128の後半64シンボルと3つのGa128とGa128の前半32シンボルとを用いて、480シンボルのM-STFフィールドを生成する(図71B)。
送信装置100は、Long GIのPHYフレーム(図68C)では、3つのGa128を用いて、384シンボルのM-STFフィールドを生成する(図71C)。図71Cのパターンは、図70Cと同一である。
GI64のパターンが、GI128の前半64シンボルと同一である場合、図71Aのパターンは、図71Cのパターンを64シンボル分巡回シフトしたパターンに相当する。
また、GI64のパターンが、GI128の前半64シンボルと同一であり、GI32のパターンがGI64の後半32シンボルと同一である場合、図71Aのパターン及び図71Bのパターンは、図71Cのパターンを64シンボル分巡回シフトしたパターンに相当する。
送信装置100は、Ga128を用いることにより、図71A、図71B、図71CのM-STFを生成することができるため、簡易な回路でM-STFを生成でき、回路規模を削減することができる。
また、図71A、図71B、図71Cでは、M-STFは、共通のパターンを巡回シフトしたシンボルであるから、受信装置200は、GI長に関わらず同一の処理でM-STFを用いたAGC処理を行うことができる。
(M-STFの実施例3)
図72A、図72B、図72Cは、M-STFの実施例3における、M-STFと、M-STFに後続するGIの一例を示す図である。図72A、図72B、図72Cは、それぞれ、図70A、図70B、図70Cにおいて、GIのパターンを変更した場合である。
図73は、図72A、図72B、図72CのそれぞれにおけるGa128、GI128、GI64、及び、GI32の生成方法の一例を示す図である。
Ga128を含むGolay系列の生成方法は、11adに規定されており、ベクトルDkとWkを用いて、式(18)により算出される。
A0(n) = δ(n)
B0(n) = δ(n)
Ak(n) = WkAk-1(n) + Bk-1(n-Dk)
Bk(n) = WkAk-1(n) - Bk-1(n-Dk)
…式(18)
式(18)において、n=0では、δ(n)=1であり、n≠0では、δ(n)=0である。また、n<0及びn≧2kでは、Ak(n)=0及びBk(n)=0である。
図73のGa128は、式(19)に定められる、ベクトルDkとWkを用いて式(18)により算出される。
Dk=[2 1 4 8 16 32 64]
Wk=[1 1 -1 -1 1 -1 1]
…式(19)
式(18)により算出されたAk(n)から、Ga128(n)=A7(128-n)と定められる。なお、式(19)のベクトルDkとWkは、11ad規格でのGa128の生成方法と異なる。
送信装置100は、算出されたGa128を用いて、GI128としてGa128の全シンボルを用い、GI64としてGa128の65シンボル目から128シンボル目までの64シンボルを用い、GI32としてGa128の97シンボル目から128シンボル目までの32シンボルを用いる(図73を参照)。
式(19)のベクトルDkとWkを用いてGa128を生成した場合、Ga128の65シンボル目から128シンボル目までの64シンボルは、11ad規格のGa64と同一である。つまり、図73のGI64は、11ad規格のGIと同一である。
図74は、図73のGI128、GI64、GI32のパターンの一例を示す図である。
なお、GI64のパターンは、式(20)のDkとWkを用いてAk(n)を算出し、Ga64(n)=A6(64-n)とおいて算出してもよい。
Dk=[2 1 4 8 16 32]
Wk=[1 1 -1 -1 1 -1]
…式(20)
図74のGI64と、式(20)を用いて算出したGa64(n)は、同一のパターンである。また、式(20)のベクトルDkとWkは、11ad規格のGa64の生成方法と同一である。
なお、GI32のパターンは、式(21)のDkとWkを用いてAk(n)を算出し、Ga32(n)=A5(32-n)と置き換えて、算出されたGa32の符号を反転して(つまり、GI32(n)=-Ga32(n))算出してもよい。
Dk=[2 1 4 8 16]
Wk=[1 1 -1 -1 1]
…式(21)
図74のGI32と、式(21)を用いて算出した-Ga32(n)は、同一のパターンである。また、式(21)のベクトルDkとWkは、11ad規格のGa32の生成方法と異なる。
受信装置200は、図72A、図72B、図72Cのパターンに対して512点DFTを行ってもよい。受信装置200は、M-STFの前段のGI64(図68A、図68B,図68Cを参照)を、図72A、図72B、図72Cのサイクリックプリフィックスとして利用できるため、シンボル間干渉を低減してM-STFの受信信号を周波数領域信号に変換することができる。
受信装置200は、周波数領域信号に変換したM-STFの受信信号を用いて、シンボル同期残留誤差、キャリア周波数同期残留誤差、位相ノイズ分散を算出しても良い。これにより、データシンボルに対するシンボル同期、キャリア周波数同期、位相ノイズ抑圧の精度を高めることができ、受信品質を高め、エラーレートを低減することができる。
(M-STFの実施例4)
図75A、図75B、図75Cは、M-STFの実施例4における、M-STF及びM-STFに後続するGIの一例を示す図である。
図75A、図75B、図75Cは、M-STFの実施例3と同一のGa128を用い、GI128,GI64,GI32のパターンもM-STFの実施例3と同一である(図73、図74及び式(19)を参照)。
図75A、図75B、図75Cにおいて、Gb128のパターンは、式(18)及び式(19)を用いて算出される。ここで、Gb128(n)=B7(128-n)である。つまり、Gb128の1ビット目から64ビット目までの64ビットは、Ga128の1ビット目から64ビット目までの64ビットの符号を反転したパターンであり、Gb128の65ビット目から128ビット目までの64ビットは、Ga128の65ビット目から128ビット目までの64ビットと同一のパターンである。
図75A、図75B、図75Cにおいて、Ga128、Gb128を配置するパターンの一例は、図76に示す、11ad規格におけるCEFの前半部分であるGu512の符号を反転したパターンである。なお、図75A、図75B、図75CにおけるGa128、Gb128の生成式(式(19))は、図76と異なる。
受信装置200は、チャネル推定部2030に対して、L-CEFとは異なるGa128、Gb128のパターンを使うように設定することで、M-STFフィールドを用いて、L-CEFのGu512を用いる場合と同様にチャネル推定を行うことができる。つまり、チャネル推定部2030の回路を再利用してM-STFのチャネル推定ができるため、回路規模を増加を抑制して、チャネル推定の精度を向上させ、受信品質を高めることができる。
受信装置200は、L-CEFに加えてM-STFを用いてチャネル推定を行うことができるので、Dataフィールドにおける受信精度を高めることができる。また、図75A、図75B、図75Cのパターンは、GIの長さに関わらず、512シンボルであるため、DFTウィンドウのタイミングをGIに応じて変更する必要が無く(図68A、図68B,図68Cを参照)、受信回路の回路規模を削減することができる。
図77A、図77B、図77Cは、それぞれ、図75A、図75B、図75Cと類似した、M-STFの他の一例である。
図77A、図77B、図77Cにおいて、Ga128、Gb128を配置するパターンは、図76に示す、11ad規格におけるCEFの前半部分であるGu512と同一のパターンである。なお、図77A、図77B、図77CにおけるGa128、Gb128の生成式は、図76と異なる。
図77A、図77B、図77Cにおいて用いるGa128、Gb128は、式(19)の代わりに式(22)のDkとWkを用いて、図73と同様に算出する。
Dk=[2 1 4 8 16 32 64]
Wk=[1 1 -1 -1 1 -1 -1]
…式(22)
式(19)と式(22)の差は、W7の値である。式(19)では、W7=1であったが、式(22)では、W7=-1である。
図78は、図77A、図77B、図77Cにおいて用いるGI128、GI64、GI32の生成方法の一例を示す図である。式(22)を用いて算出したGa128を用いて、GI128=-Ga128と定める。また、GI64はGI128(つまり-Ga128)の後半64シンボルを用い、GI32はGI128(つまり-Ga128)の後半32シンボルを用いる。
以上により算出したGI64は、11ad規格のGIと同一である。図79Aは、図77A、図77B、図77Cにおいて用いる-Ga128、及びGI128、GI64、GI32のパターンの一例を示す図である。また、図79Bは、図77A、図77B、図77Cにおいて用いる-Gb128のパターンを示す図である。
図79Aの-Ga128は、図74のGa128の1行目と2行目を入れ替えたパターンである。また、図79Bの-Gb128は、図79Aの-Ga128の前半64シンボルの符号を反転したパターンである。
図79A、図79BのGa128とGb128を用いる場合、受信装置200(11ay端末)は、M-STFの前段のGIをサイクリックプリフィックスとして利用して、図77A、図77B、図77CのパターンのDFTを算出することができる。従って、図75A、図75B、図75Cと同様に、受信装置200は、図77A、図77B、図77CのM-STFを用いて高精度のチャネル推定を行うことができる。
実施の形態12の変形例によれば、送信装置100は、PHYフレームにM-STFを挿入して送信するので、受信装置300(11ad端末)におけるL-HeaderのLengthを用いたPHYフレーム長の算出の誤差を削減することができる。
また、実施の形態12の変形例によれば、送信装置100は、PHYフレームにM-STFを挿入して送信するので、受信装置200においてDFTウィンドウの間隔を調整することを省略でき、受信装置の回路規模を削減することができる。また、受信装置200は、M-STFを用いてチャネル推定を行うことができるため、回路規模を抑制して、受信品質を高めることができる。
(実施の形態3の変形例)
図80A、図80Bは、実施の形態3の変形例におけるPHYフレームのフォーマットの一例を示す図である。図80Aは、シングルチャネル送信、つまり、チャネルボンディングを適用しない場合のPHYフレームの一例を示す図である。また、図80Bは、チャネルボンディングを適用する場合のPHYフレームの一例を示す図である。
PHYフレームは、L-STFフィールド、L-CEFフィールド、L-Headerフィールド、EDMG-Header-Aフィールド、EDMG-STFフィールド、EDMG-CEFフィールド、Dataフィールド、TRNフィールドを含む。また、Dataフィールドは、GIブロックとDataブロックを含む。Dataフィールドの先頭のGIブロックを、第1GIと呼ぶ。
Dataフィールドに含まれるdataブロックの数を、Nblksと表す。また、PHYフレームの長さ(送信に要する時間)を、TXTIMEという。また、TXTIMEを11ad規格のPHYフレームのブロック数に換算した値をNblks_spoofという。Nblks_spoofは、実施の形態1から12におけるN_BLKSと同様であるが、Nblksと区別するため、Nblks_spoofと呼ぶ。
図80Aにおいて、送信装置100は、L-STFフィールド、L-CEFフィールド、L-Headerフィールドを、それぞれ、11ad規格のSTF、CEF、Headerと同様のフォーマットを用いて送信する。
図80Bにおいて、送信装置100は、L-STFフィールド、L-CEFフィールド、L-Headerフィールドを、それぞれ、11ad規格のSTF、CEF、Headerと同様のフォーマットを、チャネルボンディング送信される複数のチャネルに複製して送信する。図80Bでは、2つのチャネル、ch1とch2上でチャネルボンディング送信を行うPHYフレームの一例を示す。
L-STFフィールド、L-CEFフィールド、L-Headerフィールドは、合計で、4416×Tc1秒である。ここで、Tc1は、11ad規格におけるシングルキャリアのシンボル時間であり、約0.57ナノ秒である。
送信装置100は、図80A及び図80BのPHYフレームを送信する場合、PHYフレームを受信した11ad規格の受信装置200がTXTIMEの値または近似値を算出できるように、L-HeaderのMCS及びLengthフィールドの値(PSDU Lengthの値)を設定する。送信装置100は、L-HeaderのMCS及びLengthフィールドの値を設定する手順として、図5、図11、図16、図17、図19A、図19B、図24、図27、図29、図31に示す方法を用いても良い。
図80A及び図80BのPHYフレームのTXTIMEと、11ad規格の受信装置200が算出するTXTIME(実際のTXTIMEと異なるため、TXTIME_spoofと表す)との差をspoofing誤差という。
spoofing誤差(spoofing_error)を式(23)で定める。
spoofing_error = TXTIME_spoof -TXTIME 式(23)
つまり、spoofing_errorが正の値であるとき、11ad規格の受信装置200は、L-Headerの値から算出したTXTIME(TXTIME_spoof)は、実際のTXTIMEより長くなり、spoofing_errorが負の値であるとき、11ad規格の受信装置200は、L-Headerの値から算出したTXTIME(TXTIME_spoof)は、実際のTXTIMEより短くなる。
図81は、L-HeaderのMCS及びLengthフィールドの値の算出過程を示すフローチャートである。送信装置100が、図80A及び図80BのPHYフレームを送信するため、図16の手順を用いてL-HeaderのMCS及びLengthフィールドの値を算出する場合について、図81を用いて詳細に説明する。なお、図81は、図16におけるN_BLKSの代わりにNblks_spoofと表記した。また、図81は、図16のステップS1,S2C,S2D,S4の代わりに、ステップS1-1,S2E,S2F,S4Aを含む。図16と異なり、送信装置100は、ステップS2E,S2Fにおいて、N_ratioの選択を行わない。
(ステップS1-1)
送信装置100は、EDMG-Header-A以降の長さを算出し、ブロック数(Nblks_spoof)に換算する。送信装置100は、Nblks_spoofの値を、式(24)を用いて算出してもよい。
Nblks_spoof(temp) = ceiling((TXTIME - 4416 * Tc1)/ (512*Tc1))
= ceiling((TXTIME/Tc1 -4416)/512)
= ceiling(TXTIME/Tc1/512 - 8.625) 式(24)
なお、送信装置100は、ステップS1-1で算出したNblks_spoofの値を、以降のステップ(例えばステップS1A)において異なる値に置き換える場合があるため、ステップS1-1で算出した値をNblks_spoof(temp)と表記して区別する。
(ステップS2B)
送信装置100は、Nblks_spoof(temp)の値が閾値以下であるか否か判定する。実施の形態3に示したとおり、送信装置100は、ステップS2Fにおいて用いるMCSが6である場合、閾値として、4682を用いても良い。また、送信装置100は、閾値として4682以下の値を用いても良い。例えば、送信装置100は、閾値として、128、256、512、1024、2048、4096等、4682以下の2のべき乗の値を用いることで、少ない計算量で閾値判定を行うことができる。
なお、送信装置100は、ステップS2Bにおいて、Nblks_spoof(temp)の値に対する閾値を、3428と定めても良い。これは、TXTIMEの閾値を1ミリ秒と定めた場合と同様の結果となる。なぜなら、Nblks_spoofの値が3428であるPHYフレームの長さは、約1ミリ秒であるためである。
なお、送信装置100は、ステップS2Bにおいて、Nblks_spoof(temp)の値に対して閾値判定を行う代わりに、TXTIMEが閾値以下であるか否かを判定しても良い。例えば、送信装置100は、TXTIMEの閾値を1ミリ秒と定めても良い。
(ステップS2F)
送信装置100は、ステップS2BにおいてNblks_spoof(temp)が閾値以下であると判定した場合、L-Headerに格納するMCSを6に決定する。
なお、送信装置100は、ステップS2Fにおいて、L-Headerに格納するMCSの値を7以上の値に定めても良い。つまり、送信装置100は、ステップS2Fにおいて、図14の条件2に示す、Nblks_spoofを3で除した値に関する制限が無いMCSを選択する。
ステップS2Fにおいて、送信装置100は、Nblks_spoofの値を、Nblks_spoof(temp)の値と等しい値であると定める。
(ステップS2E)
送信装置100は、ステップS2BにおいてNblks_spoof(temp)が閾値以下ではないと判定した場合、L-Headerに格納するMCSを2に決定する。
なお、送信装置100は、ステップS2Eにおいて、L-Headerに格納するMCSの値を2とは異なる別の値に定めても良い。つまり、送信装置100は、ステップS2Eにおいて、Nblks_spoof(temp)の値が、図14の条件1に示すN_BLKSの最大値より小さくなるよう、L-Headerに格納するMCSの値を定めても良い。
(ステップS1A)
送信装置100は、ステップS2Eにおいて、5以下のMCSを選択した場合、Nblks_spoof(temp)以上の3の倍数を選択し、Nblks_spoofの値と定める。送信装置100は、式(25)を用いて、Nblks_spoofの値を定めても良い。
Nblks_spoof = ceiling(Nblks_spoof(temp)/3) × 3 式(25)
例えば、送信装置100は、Nblks_spoof(temp)の値が301である場合、Nblks_spoofの値を303と定めてもよい。
これにより、送信装置100は、Nblks_spoofの値を3で除した値が1となる値に定めることを避けることができる。つまり、図14における条件2を満たすようになる。
(ステップS3A)
送信装置100は、Nblks_spoofの値と、L-Headerに格納するMCSの値を用いて、L-Headerに格納するPSDU Lengthのベース値(L_BASE)を算出する。L_BASEの算出式は、実施の形態1に示した式(1)又は式(2)に示したとおりである。L-Headerに格納するMCS毎に算出式を、式(26)に示す。
MCS1 :L_BASE = floor(Nblks_spoof×2/3)×21
MCS2 :L_BASE = floor(Nblks_spoof×2/3)×42
MCS3 :L_BASE = floor(floor(Nblks_spoof×2/3)×52.5)
MCS4 :L_BASE = floor(Nblks_spoof×2/3)×63
MCS5 :L_BASE = floor(floor(Nblks_spoof×2/3)×68.25)
MCS6 :L_BASE = floor(Nblks_spoof×4/3)×42
MCS7 :L_BASE = floor(floor(Nblks_spoof×4/3)×52.5)
MCS8 :L_BASE = floor(Nblks_spoof×4/3)×63
MCS9 :L_BASE = floor(floor(Nblks_spoof×4/3)×68.25)
MCS10:L_BASE = floor(Nblks_spoof×8/3)×42
MCS11:L_BASE = floor(floor(Nblks_spoof×8/3)×52.5)
MCS12:L_BASE = floor(Nblks_spoof×8/3)×63
…式(26)
式(26)は、実施の形態1に示した式(3)において、PSDU LengthをL_BASEに置き換え、-Infoの項を削除した場合と同様である。
ステップS4、ステップS5は図16と同様であるから、説明を省略する。
なお、ステップS1Aにおいて、送信装置100は、Nblks_spoofの値を3で除した余りが1となるのを避けるため、Nblks_spoofの値を、ステップS1-1で求めたNblks_spoof(temp)以上の3の倍数の値に置換するようにしたが、図82に示す別の方法を用いても良い。
図82は、図81に比べ、ステップS1Aの代わりにステップS1B及びステップS1Cを含む。図81と同じ部分は説明を省略する。
(ステップS1B)
ステップS1Bにおいて、送信装置100は、Nblks_spoof(temp)の値を3で除した余りが1であるか否かを判定する。判定結果がYesである場合、ステップS1Cの処理を行う。
(ステップS1C)
ステップS1Cにおいて、送信装置100は、Nblks_spoof(temp)に1を加算した値を、Nblks_spoofの値と定める。これにより、Nblks_spoof(temp)の値を3で除した余りが1である場合、Nblks_spoofの値を3で除した余りが2となる。
つまり、図16及び図81のステップS1Aにおいて、送信装置100は、Nblks_spoof(temp)の値を3で除した余りが1である場合、Nblks_spoofの値を、Nblks_spoof(temp)以上の3の倍数の値に設定した。これは、送信装置100は、Nblks_spoof(temp)の値に2を加算した値をNblks_spoofの値として定めることに等しい。これに対して、図82のステップS1Cにおいて送信装置100が算出するNblks_spoofの値は、図16及び図81のステップS1Aにおいて送信装置100が算出するNblks_spoofの値に比べ小さいため、spoofing誤差を小さくすることができる。
図83は、L-HeaderのMCS及びLengthフィールドの値の算出過程の他の一例を示すフローチャートである。
図83では、図82と異なり、spoofing誤差を削減するため、L-HeaderのTraining Length(TRN_LENともいう)フィールド(図38を参照)に、Nblks_spoofの値に応じて、0と異なる値を設定する(ステップS6A)。図83は、図82に比べ、ステップS1Bの後段に、ステップS6A、S7を追加し、S2Fの後段にS6Bを追加した。図81、図82と同じ部分は説明を省略する。
まず、PHYフレームフォーマットについて説明する。図84は、11ad規格における、PHYフレームフォーマットの一例を示す図である。図84は、11ad規格における、Training Lengthフィールドの値(TRN_LEN)が1以上であるPHYフレームフォーマットである。図84のPHYフレームは、図1のPHYフレームに、AGCフィールドとTRNフィールドを追加したフレームである。
AGCフィールドの長さはTRN_LENの値に応じて定められ、1280×TRN_LEN×Tc1秒である。また、TRNフィールドの長さはTRN_LENの値に応じて定められ、3712×TRN_LEN×Tc1秒である。
AGCフィールドとTRNフィールドとの合算は、4992×TRN_LEN×Tc1秒であるから、TRN_LENの値を1増加させることによって、11ad規格のPHYフレームのTXTIMEは4992×TRN_LEN×Tc1秒増加する。
つまり、送信装置100は、L-HeaderのTraining Lengthフィールドの値(TRN_LEN)を0と異なる値に設定することにより、TXTIME_spoofの値を変更することができる。次に、図83を用いて、送信装置100がTRN_LENの値を決定する方法について説明する。
(ステップS6A)
送信装置100は、ステップS2EにおいてL-Headerに格納するMCSの値を5以下(例えば2)に決定し、ステップS1BにおいてNblks_spoof(temp)の値を3で除した値が1である場合に、L-HeaderのTraining Lengthフィールドの値を2に設定する。
(ステップS7)
送信装置100は、ステップS6AにおいてL-HeaderのTraining Lengthフィールドの値を2に決定した場合、Nblks_spoof(temp)から調整値Nsubを減じた値を、Nblks_spoofの値と定める。
送信装置100は、式(27A)及び式(27B)により算出されるNmin_errorの値が256未満の場合、Nsubの値を19に定める。また、Nmin_errorの値が256以上の場合、Nsubの値を20に定める。
Nrem = (TXTIME/Tc1 - 4416) mod 512 式(27A)
Nmin_error = (-Nrem) mod 512 式(27B)
Nremは、11ayのPHYフレームのEDMG-Header-A以降の部分の長さを、11ad規格のシンボル数に換算し(つまり、Tc1で除算し)、512(つまり11ad規格のシンボルブロックのシンボル数)で除した余りを表す。言い換えると、Nremは、11ayのPHYフレームの長さを11adのPHYフレームのシンボルブロックの数に換算する場合に、シンボルブロックの長さより短いためにシンボルブロック数に換算することが困難である端数を表すシンボル数である。
送信装置100は、TRN_LENフィールドの値を0に定めた場合、spoofing誤差はNmin_error以上である。
図83のステップS7では、Nsubの値は19または20と定められるから(つまり、3の倍数ではないため)、Nblks_spoof(temp)の値を3で除した値が1である場合、Nblks_spoof(temp)からNsubを減じた値であるNblks_spoofを3で除した値は1以外である。つまり、図14における条件2を満たすようになる。
送信装置100が、ステップS2Eにおいて、Training Lengthフィールドの値を2に定め、ステップS7において、Nsubの値を19または20に定める理由を説明する。
図85は、11ay規格におけるPHYフレームフォーマットの一例を示す図である。図85のPHYフレーム3001aは、11ay規格のPHYフレームである。送信装置100は、Nblks_spoofの値として式(24)により算出されるNblks_spoof(temp)の値を用い、式(26)により算出したL_BASEの値をL-HeaderのLengthフィールドの値と定めても良い。
(第1の条件)
まず、L-HeaderのMCSフィールドの値が6以上の場合、及び、L-HeaderのMCSフィールドの値が5以下でありNblks_spoof(temp)を3で除した余りが1以外である場合について説明する。
第1の条件では、11ad規格の受信装置200は、PHYフレーム3001aを受信した場合、Dataフィールドの長さが「Nblks_spoof(temp)×512×Tc1」秒であるPHYフレーム(11ad規格のPHYフレーム3001b)を受信したとみなし、TXTIMEを計算する。PHYフレーム3001bのTXTIMEをTXTIME_spoof(1)と表す場合、TXTIME_spoof(1)は式(27C)により算出される値となる。
TXTIME_spoof(1) = (4416 + Nblks_spoof(temp)×512)×Tc1 式(27C)
PHYフレーム3001aのspoofing誤差は、「TXTIME_spoof(1) - TXTIME」であり、「Nmin_error×Tc1」と等しい。
なお、L-HeaderのMCS及びLength値が、図14の条件2を満たす場合、Nmin_errorは、0以上512未満である。
(第2の条件)
L-HeaderのMCSフィールドの値が5以下でありNblks_spoof(temp)を3で除した余りが1である場合について説明する。
第2の条件では、11ad規格の受信装置200は、PHYフレーム3001aを受信した場合、Dataフィールドの長さが「(Nblks_spoof(temp)+1)×512×Tc1」秒であるPHYフレーム(11ad規格のPHYフレーム3001c)を受信したとみなし、TXTIMEを計算する。PHYフレーム3001cのTXTIMEをTXTIME_spoof(2)と表す場合、TXTIME_spoof(2)は式(28)により算出される値となる。
TXTIME_spoof(2) = (4416 + (Nblks_spoof(temp)+1)×512)×Tc1 式(28)
PHYフレーム3001bのspoofing誤差は、「TXTIME_spoof(2) - TXTIME」であり、(Nmin_error+512)×Tc1と等しい。
つまり、送信装置100が第2の条件においてPHYフレーム3001aを送信する場合、第1の条件の場合に比べ、Spoofing誤差が大きい(実施の形態2を参照)。
図86は、11ay規格におけるPHYフレームフォーマットの他の一例を示す図である。図86のPHYフレーム3002aは、11ay規格のPHYフレームである。PHYフレーム3002aは、送信装置100が、TRN_LENの値を2と定め(図83のステップS6A)、Nsubの値を19と定めた場合(図83のステップS7)のPHYフレームである。PHYフレーム3002aは、L-HeaderのMCS、Length、TRN_LENの値を除き、PHYフレーム3001aと等しい。
(第3の条件(1))
L-HeaderのMCSフィールドの値が6以上の場合、及び、L-HeaderのMCSフィールドの値が5以下であり(Nblks_spoof(temp)-19)を3で除した余りが1以外である場合について説明する。
第3の条件(1)では、11ad規格の受信装置200は、PHYフレーム3002aを受信した場合、Dataフィールドの長さが「(Nblks_spoof(temp)-19)×512×Tc1」秒であり、AGCフィールドとTRNフィールドを合わせた長さが9984Tc1秒であるPHYフレーム(11ad規格のPHYフレーム3002b)を受信したとみなし、TXTIMEを計算する。PHYフレーム3002bのTXTIMEをTXTIME_spoof(3)と表す場合、TXTIME_spoof(3)は式(29)により算出される値となる。
TXTIME_spoof(3) = (4416 + Nblks_spoof(temp)×512 + 256)×Tc1 式(29)
PHYフレーム3002aのspoofing誤差は、「TXTIME_spoof(3) - TXTIME」であり、「(Nmin_error+256)×Tc1」と等しい。
つまり、第3の条件(1)においてNmin_errorの値が0以上256未満である場合、送信装置100は、Nblks_spoofの値をNblks_spoof(temp)-19と定め、TRN_LENの値を2と定めることにより、spoofing誤差を256Tc1以上512Tc1未満とすることができる。
また、Nblks_spoof(temp)の値を3で除した余りが1である場合、「Nblks_spoof(temp)-19」を3で除した余りは0である。つまり、第2の条件が成立する場合、第3の条件(1)も成立する。
なお、第3の条件(1)が成立しない場合に、送信装置100は、PHYフレーム3002aを送信しても良い。この場合、spoofing誤差は(Nmin_error+768)*Tcとなる。なお、第3の条件(1)が成立しない場合、第1の条件が成立するため、送信装置100は、PHYフレーム3002aの代わりに、PHYフレーム3001aを送信しても良い。
図87は、11ay規格におけるPHYフレームフォーマットの他の一例を示す図である。図87のPHYフレーム3003aは、11ay規格のPHYフレームである。PHYフレーム3003aは、送信装置100が、TRN_LENの値を2と定め(図83のステップS6A)、Nsubの値を20と定めた場合(図83のステップS7)のPHYフレームである。PHYフレーム3003aは、L-Headerの値を除き、PHYフレーム3001a及びPHYフレーム3002aと等しい。
(第3の条件(2))
L-HeaderのMCSフィールドの値が6以上の場合、及び、L-HeaderのMCSフィールドの値が5以下であり(Nblks_spoof(temp)-20)を3で除した余りが1以外である場合について説明する。
第3の条件(2)では、11ad規格の受信装置200は、PHYフレーム3003aを受信した場合、Dataフィールドの長さが「(Nblks_spoof(temp)-20)×512×Tc1」秒であり、AGCフィールドとTRNフィールドを合わせた長さが9984Tc1秒であるPHYフレーム(11ad規格のPHYフレーム3003b)を受信したとみなし、TXTIMEを計算する。PHYフレーム3003bのTXTIMEをTXTIME_spoof(4)と表す場合、TXTIME_spoof(4)は式(30)により算出される値となる。
TXTIME_spoof(4) = (4416 + Nblks_spoof(temp)×512 - 256)×Tc1 式(30)
PHYフレーム3003aのspoofing誤差は、「TXTIME_spoof(4)-TXTIME」であり、「(Nmin_error-256)×Tc1」と等しい。
つまり、第3の条件(2)においてNmin_errorの値が256以上512未満である場合、送信装置100は、Nblks_spoofの値をNblks_spoof(temp)-20と定め、TRN_LENの値を2と定めることにより、spoofing誤差を0Tc1以上256Tc1未満とすることができる。
Nblks_spoof(temp)の値を3で除した余りが1である場合、「Nblks_spoof(temp)-20」を3で除した余りは2である。つまり、第2の条件が成立する場合、第3の条件(2)も成立する。
なお、第3の条件(2)が成立しない場合に、送信装置100は、PHYフレーム3003aを送信しても良い。この場合、spoofing誤差は(Nmin_error+256)*Tcとなる。なお、第3の条件(2)が成立しない場合、第1の条件が成立するため、送信装置100は、PHYフレーム3003aの代わりに、PHYフレーム3001aを送信しても良い。
以上から、送信装置100は、第1の条件が成立する場合、図85のPHYフレーム3001aのように、TRN_LENを0に設定してもよい(図83のステップS6B)。また、送信装置100は、第2の条件が成立する場合、第3の条件(1)及び第3の条件(2)も成立するため、図86のPHYフレーム3002a及び図87のPHYフレーム3003aのように、TRN_LENを2に設定し、Nsubの値をNmin_errorの値に応じて19及び20に設定してもよい(図83のステップS7)。
以上より、第1の条件が成立するか否かに関わらず、送信装置100は、spoofing誤差を0以上512Tc1未満とすることができる。spoofing誤差が0以上であるから、11ad規格の受信装置200は、L-HeaderのMCSフィールド、Lengthフィールド、Training Lengthフィールドを用いてTXTIMEを計算することにより、PHYフレームを受信中にCCAをアサート(信号を受信中であると判断する)することができ、電力検出を行う方法に比べ、消費電力を低減できる。
また、最大のspoofing誤差である512Tc1は、約0.29マイクロ秒に相当する。spoofing誤差は、CCAネゲート(negate)(アサートの停止:信号を受信中ではないと判断する)における遅延に影響するが、電力検出によるCCAネゲートにおいて想定される遅延(例えば1マイクロ秒)より小さい。つまり、送信装置100は、図83に示す手順を用いてPHYフレーム3001a、3002a、3003aのL-HeaderのMCS、Length、Training Lengthフィールドの値を定めるため、11ad規格の受信装置200においてCCAネゲートの遅延を短縮することができる。これにより、受信装置200はCCAネゲート後の送信処理を早期に開始することができ、無線リソースを有効に活用できるため、データスループットが増加する。
また、11ad規格では、L-HeaderのTraining Lengthフィールドには0から16までの整数値を設定するが、図83の手順では、送信装置100は、Nblks_spoof(temp)の値に応じて、0または2を選択するようにした。また、Training Lengthフィールドの値を2とした場合に、Nmin_errorの値に応じて、Nsubの値を2つの候補値(20及び19)から選択するようにした。
つまり、送信装置100が、Nblks_spoof(temp)及びNmin_errorの値に応じて選択する処理は次の3つである。(1)TRN_LENを0に設定する場合、(2)TRN_LENを2に設定し、Nsubを20に設定する場合、(3)TRN_LENを2に設定し、Nsubを19に設定する場合。
このように、送信装置100は、少ない条件分岐によりL-HeaderのMCSフィールド、Lengthフィールド及びTraining Lengthフィールドの値を定めるため、計算回路及びプログラムを簡易にすることができ、回路規模及び消費電力を削減することができる。
なお、図83の手順において、送信装置100は、TRN_LENの値を0以外に設定する場合、2に設定するようにしたが、別の値に設定しても良い。図88は、TRN_LENの値と、Nsubの値の一例を示す図である。
図83のステップS6Aにおいて、送信装置100は、TRN_LENの値を14に設定した場合、送信装置100は、ステップS7において、Nsubの値をNmin_errorの値に応じて136又は137に設定する。ここで、受信装置200が算出するTXTIMEは、式(29)及び式(30)と同様である。つまり、送信装置100は、図88に基づいてNsubの値を定めることにより、TRN_LENを2に設定した場合と同様に、spoofing誤差を0以上512Tc1未満にすることができる。図88は、TRN_LENの値に対応するNsubの値の一例を示す図である。
なお、Nblks_spoofの値は正の整数である。従って、送信装置100は、Nblks_spoof-Nsubの値が1以上になるよう、TRN_LENの値を選択する。送信装置100は、TRN_LENを2に設定することにより、Nblks_spoof(temp)が小さな値(例えば、59以下)であっても、PHYフレーム3002a及びPHYフレーム3003aを送信することができる。
図89は、TRN_LENの値に対するNsubの値の他の一例を示す。通信装置100が、図89に基づきTRN_LEN及びNsubを定めた場合のspoofing誤差について説明する。
送信装置100は、Nmin_errorの値が0以上128未満の場合、Nsubの値を、TRN_LENの値に応じて9,48,87,126に設定する。この場合、TXTIME_spoofは式(31)の値となる。
TXTIME_spoof(5) = (4416 + (Nblks_spoof(temp) + 384) 式(31)
Nblks_spoof(temp)の値が第1の条件を満たす場合、TXTIME_spoof(5)のspoofing誤差は、(Nmin_error+384)×Tcであり、384Tc以上512Tc未満である。
Nblks_spoof(temp)の値が第1の条件を満たさない場合、TXTIME_spoof(5)のspoofing誤差は、(Nmin_error+896)*Tcであり、896Tc以上1024Tc未満である。つまり、Nsubの値が3の倍数であるため、Nblks_spoof(temp)を3で除した値が1である場合、Nblks_spoof(temp)-Nsubを3で除した値が1となり、図85のPHYフレーム3001cと同様に、spoofing誤差の増加は512Tcとなる。
送信装置100は、Nmin_errorの値が128以上512未満の場合、Nsubの値を、TRN_LENの値に応じて10,49,88,127に設定する。この場合、TXTIME_spoofは式(32)の値となる。
TXTIME_spoof(6) = (4416 + (Nblks_spoof(temp) - 128) 式(32)
L-HeaderのMCSの値が6以上であり、(Nblks_spoof(temp)-10)を3で除した余りが1で無い場合(第5の条件)、TXTIME_spoof(6)のspoofing誤差は、(Nmin_error-128)*Tcであり、0以上384Tc未満である。
Nblks_spoof(temp)の値が第2の条件を満たす場合、第5の条件も満たす。
以上から、通信装置100は、図89のTRN_LEN及びNsubの値を用いることで、Nmin_errorの値が128以上512未満の場合、spoofing誤差を0以上384Tc未満とする。
図90は、TRN_LENの値に対するNsubの値の他の一例を示す。通信装置100が、図90に基づきTRN_LEN及びNsubを定めた場合のspoofing誤差について説明する。
送信装置100は、Nmin_errorの値が0以上384未満の場合、Nsubの値を、TRN_LENの値に応じて29,68,107,146に設定する。この場合、TXTIME_spoofは式(33)の値となる。
TXTIME_spoof(7) = (4416 + (Nblks_spoof(temp) + 128) 式(33)
Nblks_spoof(temp)の値が第1の条件を満たす場合、TXTIME_spoof(7)のspoofing誤差は、(Nmin_error+128)*Tcであり、128Tc以上512Tc未満である。
L-HeaderのMCSの値が6以上であり、(Nblks_spoof(temp)-29)を3で除した余りが1で無い場合(第6の条件)、TXTIME_spoof(7)のspoofing誤差は、(Nmin_error+128)*Tcであり、128Tc以上512Tc未満である。
Nblks_spoof(temp)の値が第2の条件を満たす場合、第6の条件も満たす。
送信装置100は、Nmin_errorの値が384以上512未満の場合、Nsubの値を、TRN_LENの値に応じて30,69,108,147に設定する。この場合、TXTIME_spoofは式(34)の値となる。
TXTIME_spoof(8) = (4416 + (Nblks_spoof(temp) - 384) 式(34)
Nblks_spoof(temp)の値が第1の条件を満たす場合、TXTIME_spoof(8)のspoofing誤差は、(Nmin_error-384)*Tcであり、0以上128Tc未満である。
Nblks_spoof(temp)の値が第1の条件を満たさない場合、TXTIME_spoof(8)のspoofing誤差は、(Nmin_error+128)*Tcであり、512Tc以上640Tc未満である。つまり、Nsubの値が3の倍数であるため、Nblks_spoof(temp)を3で除した値が1である場合、Nblks_spoof(temp)-Nsubを3で除した値が1となり、図85のPHYフレーム3001cと同様に、spoofing誤差の増加は512Tcとなる。
以上から、通信装置100は、図90のTRN_LEN及びNsubの値を用いることで、Nmin_errorの値が0以上384未満の場合、spoofing誤差を128Tc以上512Tc未満とすることができる。
通信装置100は、Nblks_spoof(temp)を3で除した値が1である場合、図88、図89、図90を組み合わせて、Nsubの値が3の倍数以外となるように、TRN_LENの値を選択しても良い。
例えば、通信装置100は、Nmin_errorの値が0以上128未満の場合、TRN_LENの値を3に設定してもよい。この場合、spoofing誤差は128Tc以上256Tc未満となる。(図90及び式(33)を参照)。また、通信装置100は、Nmin_errorの値が128以上256未満の場合、TRN_LENの値を1に設定してもよい。この場合、spoofing誤差は0以上128Tc未満となる。(図89及び式(32)を参照)。また、通信装置100は、Nmin_errorの値が256以上512未満の場合、TRN_LENの値を2に設定してもよい。この場合、spoofing誤差は0以上256Tc未満となる。(図88及び式(30)を参照)。
以上のように、通信装置100は、Nblks_spoof(temp)を3で除した値が1である場合、図88、図89、図90を組み合わせて、Nsubの値が3の倍数以外となるように、TRN_LENの値を選択することにより、spoofing誤差を0以上256Tc未満とすることができ、spoofing誤差を削減することができる。
また、通信装置100は、L-HeaderのMCSフィールドの値を6以上に設定する場合、図88、図89、図90を組み合わせて、spoofing誤差が小さくなるように、TRN_LENの値を選択しても良い。
図91は、L-HeaderのMCS及びLengthフィールドの値の算出過程の他の一例を示すフローチャートである。図91は、以上の考察から導出された送信装置100の手順を示す図である。図83と同一処理には同一の番号を付与し、説明を省略する。
(ステップS1D)
通信装置100は、EDMG-Header-A以降の長さ又はPHYフレームのTXTIMEを算出し、Nblks_spoof(temp)及びNmin_errorを算出する(式(24)及び式(27B)を参照)
(ステップS6C)
通信装置100は、L-Headerに格納するMCS, Nblks_spoof(temp)を3で除した余りの値、Nmin_errorの値から、TRN_LEN, Nsubの値を決定する。送信装置100は、例えば図92に示すテーブルを用いて、TRN_LEN, Nsubの値を決定しても良い。図92は、Nmin_errorの値に対する、TRN_LENの値, Nsubの値の組み合わせの一例を示す図である。図92は、Spoofing誤差が小さくなるように、図88、図89、図90、及び図93を組み合わせて作成したテーブルである。
図93は、TRN_LENの値に対するNsubの値の他の一例を示す。図93は、TRN_LENが4の倍数の場合(つまり、図88、図89、図90に含まれないTRN_LENの値)のNsubの値を示す図である。TRN_LENが4の倍数の場合、spoofing誤差はTRN_LENが0の場合と同じである。
(ステップS6C)
送信装置100は、L-HeaderのMCSの値を6以上に定めた場合、つまり、短いPHYフレームを送信する場合、図92を用いて、Spoofing誤差の範囲を0以上128Tc未満とすることができる。つまり、送信装置100は、Nmin_errorの値に応じて、式(27C)、式(30)、式(32)、式(34)のうち、spoofing誤差が小さくなる式を選択できるよう、TRN_LENの値を決定する。
また、送信装置100は、L-HeaderのMCSの値を5以下に定めた場合、つまり、長いPHYフレームを送信する場合、図92を用いて、Spoofing誤差の範囲を0以上256Tc未満とすることができる。つまり、送信装置100は、Nblks_spoof(min)とNmin_errorの値に応じて、Nblks_spoof(temp)-Nsubを3で除した余りが1以外となり、かつ、式(27C)、式(28)~式(34)のうちspoofing誤差が小さくなる式を選択できるよう、TRN_LENの値を決定する。
なお、図92は、一例として、図88、図89、図90、図93に示すTRN_LENの小さい値(0~3)を選択して組み合わせて構成した。
図94は、Spoofing誤差に対する、TRN_LENの値, Nsubの値の組み合わせの他の一例を示す図である。
図94は、図88、図89、図90、図93に示すTRN_LENの大きい値(13~16)を選択して組み合わせて構成した例を示す。
図91のステップS2Bにおいて、送信装置100は、Nblks_spoof(temp)が閾値以下であるか否かを判定する。送信装置100は、ステップS2FでMCS6を選択する場合、ステップS2Bにおける閾値は4682以下となる。
送信装置100は、図91のステップS2Bにおいて、Nblks_spoofが閾値以下であるか否かを判定するようにしてもよい。これにより、より大きなNblks_spoof(temp)の値に対してもステップS2BにおいてYesと判定される場合があり、MCS6が選択される状況が増加するため、spoofing誤差を小さくすることができる。
なお、Nblks_spoofは、ステップS7で算出される値であるから、ステップS2Bの時点では確定していない値である。そこで、送信装置100は、ステップS2Bにおいて、S7において算出されるNblks_spoofが閾値以下である見込みであるか否かの判定を行い、S7においてNblks_spoofを算出した後、見込みが正しかったか否かを判定し、見込みが外れた場合、ステップS2Bに戻り処理をやり直しても良い。
また、送信装置100は、図92及び図94において、L-HeaderのMCSが「6以上」を参照してNmin_errorの値に応じたNsubを決定し(仮のNsubという)、Nblks_spoof(temp)に仮のNsubを加算した値を仮のNblks_spoofとし、閾値と比較しても良い。
また、送信装置100は、図92及び図94において、Nsubの候補値の最小値を仮のNsubと決定して、Nblks_spoof(temp)に仮のNsubを加算した値を仮のNblks_spoofとし、閾値と比較しても良い。例えば、送信装置100は、図92では、仮のNsubを0と定めてもよい。また、例えば、送信装置100は、図94では、仮のNsubを126と定めてもよい。
仮のNsubを定めて仮のNblks_spoofを算出することにより、ステップS2Bにおける判定を簡易な回路及びプログラムで実行することができる。
送信装置100は、図94を用いる場合、図92と比べてNsubの値が大きいため、大きなNblks_spoof(temp)の値に対して、spoofing誤差を削減することができる。つまり、送信装置100は、図94を用いることで、図92を用いる場合に比べ、「MCS6以上」の選択が増加する。
図88、図89、図90、図93によれば、TRN_LENの値に4を加算し、Nsubの値に39を加算した場合、spoofing誤差は同じである。つまり、送信装置100は、TXTIMEの値以外の条件に基づきTRN_LENの値を選択しても良い。
例えば、通信装置100は、PHYフレームがシングルキャリアの場合、TRN_LENの値を12,13,14,15から選択し、PHYフレームがOFDMの場合、TRN_LENの値を8,9,10,11から選択して決定しても良い。11ay規格の受信装置(たとえば図示しない受信装置300)は、受信したPHYフレームのL-HeaderのTRN_LENフィールドの値を参照して、受信したPHYフレームがシングルキャリアであるかOFDMであるかを判定できる。
通信装置100は、L-HeaderのTRN_LENの下位2ビットの値を、L-HeaderのMCS、Nblks_spoof(temp)を3で除した余り、及びNmin_errorの値に基づき、図92を用いて定め、L-HeaderのTRN_LENのビット2から4の3ビットに、別の情報を含めてPHYフレームを送信しても良い。
つまり、実施の形態1で説明したInfoの値を、8ビットに拡張し、より多くの情報を含めることができる。
図95は、Infoフィールドに対するL-HeaderのLengthフィールド及びTraining Fieldとの関係の一例を示す図である。送信装置100は、8ビットに拡張されたInfoの下位5ビット(ビット0から4)をLengthフィールドの下位5ビットに含め(実施の形態3を参照)、Infoの上位3ビット(ビット5から7)をTraining Lengthフィールドのビット2から4に含めても良い。
送信装置100は、L-HeaderのTraining Lengthフィールドの下位2ビットを図92に基づき定め、Infoの上位3ビットをTraining Lengthフィールドのビット2から4に含めて、Training Lengthフィールドの値を定めた後、図88、図89、図90、図93を用いてNsubの値を定めても良い。
なお、送信装置100は、式(35)及び式(36)を用いてNsubの値を算出しても良い。
Nsub = ceiling(9.75×TRN_LEN) 式(35)
Nsub = floor(9.75×TRN_LEN) 式(36)
送信装置100は、図92及び図94において、MCSが5以下、Nblks_spoof(temp) mod 3が1、Nmin_errorの値の範囲が0以上128未満である場合(式(33)を参照した場合)、式(36)を用い、それ以外の場合に式(35)を用いてNsubを算出しても良い。
なお、送信装置100は、Training Lengthフィールドのビット0から4の少なくとも1ビットが1である場合、ビット5の値を0と定める。また、送信装置100は、Training Lengthフィールドのビット0から4がいずれも0である場合、ビット5の値を1と定めてもよい。これにより、対応するNsubの値が大きい値となるため、MCS6が選択される状況が増加し、spoofing誤差を削減することができる。
送信装置100は、8ビットに拡張されたInfoに、OFDM送信であるか否かを示すビット、MIMO送信のタイプを示すフィールド、チャネルボンディング及びチャネルアグリゲーションにおけるバンド幅情報を示すフィールド等を含めても良い(実施の形態1から12を参照)。
図96Aは、Nmin_errorの値に対する、TRN_LENの値, Nsubの値の組み合わせの他の一例を示す図である。図96Bは、Nmin_errorの値に対する、TRN_LENの値, Nsubの値の組み合わせの他の一例を示す図である。
図96A、図96Bは、送信装置100が、TRN_LENとNsubを決定する、図92及び図94とは異なる方法を示す図である。図96A、図96Bは、送信装置100が、0以上512Tc未満のspoofing誤差を許容する場合に用いる。図94は、図83の手順において図88を用いた場合と同様である。送信装置100は、図96A、図96Bを用いる場合、図92及び図94を用いる場合に比べ、spoofing誤差が増加するが、計算量を削減でき、回路規模及び消費電力を削減することができる。
なお、送信装置100は、Nsubの算出において、図96A、図96Bにおいて、MCSが5以下、Nblks_spoof(temp) mod 3が1、Nmin_errorの値の範囲が0以上256未満である場合(式(29)を参照した場合)、式(36)を用い、それ以外の条件では、式(35)を用いても良い。
送信装置100は、図96Bを用いて定めたTRN_LENの値をL-HeaderのTraining Lengthフィールドの下位2ビットに含め、Training Lengthフィールドのビット2から4にInfoの値を含めても良い。
なお、送信装置100は、式(27B)を用いてNmin_errorの値を算出する代わりに、パケットの種類に応じてあらかじめNmin_errorの値を算出したテーブルを参照して、Nmin_errorの値を決定しても良い。
図96Cは、パケットの種類に対応するNmin_errorの値を示す図である。
図96Cにおいて、Packet Typeは、送信の種別を表し、SISO(Single-Input Single-Output:シングルストリーム送信)、SU-MIMO(Single User Multi-Input Multi-Output:シングルユーザMIMO)、MU-MIMO(Multi User MIMO:マルチユーザMIMO)がある。また、Nssは、MIMOストリーム数を表す。11ay規格において、Nssは、1以上8以下の整数である。
図96Cにおいて、Ncbは、チャネルボンディング数を表す。Ncbが1の場合、2.16GHz帯域幅(シングルチャネル)の送信を表す。Ncbが2、3、4の場合、それぞれ4.32GHz、6.48GHz、8.64GHz帯域幅のチャネルボンディング送信を表す。
図96Cにおいて、GI TypeはGIの長さを表す。ShortはShort GIを表し、GI長が32×Tc1秒である。NormalはNormal GIを表し、GI長が64×Tc1秒である。LongはLong GIを表し、GI長が128×Tc1秒である。
図96Cにおいて、番号は、図96Cにおける行番号を表す。
図96Cにおいて、T_EDMGHeaderA、T_EDMGSTF、T_EDMGCEFは、それぞれEDMG-Header-A、EDMG-STF、EDMG-CEFの長さを表す。また、T_GI1は、PHYフレームのDataフィールドの先頭に含むGI(第1GI)の長さを表す。図65Bに示したように、第1GIは、Dataフィールドの他のGIと長さが異なる場合がある。
図96Cにおいて、T_addは、T_EDMGHeaderA、T_EDMGSTF、T_EDMGCEF、T_GIの値の和である。また、N_add及びNmin_error(0)は、それぞれ式(37)及び式(38)により算出される値である。
N_add = ceiling(T_add/Tc1/512) 式(37)
Nmin_error(0) = (T_add/Tc1) mod 512 式(38)
11ayのPHYパケットの長さ(TXTIME)は、式(39)により算出される。式(39)において、T_trnは、11ay規格のPHYフレームのTRNフィールド(例えば図85のPHYフレーム3001aを参照)の長さである。
TXTIME = 4416×Tc1 + T_add + Nblks×512×Tc1 + T_trn 式(39)
式(39)において、Nblksは、11ay規格のPHYフレームのシンボルブロック数である。11ay規格のシンボルブロックは、512×Ncbシンボルを含み、1シンボルの長さはTc1/Ncbであるから、シンボルブロックの長さは(512×Ncb)×(Tc1/Ncb)=512×Tc1であり、11ad規格のシンボルブロックと同じ長さである。
式(39)と式(27B)より、送信装置100は、Nmin_errorの値を式(40)により算出してもよい。
Nmin_error = ((4416×Tc1 + T_add + Nblks×512×Tc1 + T_trn)/Tc1 - 4416)mod 512
= (T_add/Tc1 + T_trn/Tc1) mod 512
= (Nmin_error(0) mod 512 + (T_trn/Tc1)mod 512) mod 512 式(40)
式(40)より、送信装置100は、図96Cを用いて、Nmin_error(0)の値をパケットの種類に応じて決定し、(T_trn/Tc1)mod 512の値をNmin_error(0)の値に加算することにより、Nmin_errorの値を算出しても良い。
また、11ay規格のTRNフィールドの長さがシンボルブロックの長さの倍数である場合、Nmin_errorの値はNmin_error(0)の値と等しいため、送信装置100は、図96Cを用いて、Nmin_error(0)の値(すなわちNmin_errorの値)をパケットの種類に応じて決定してもよい。
また、送信装置100は、図96Cを用いてNmin_error(0)の値を決定する代わりに、Nmin_error(0)の値が256以上か否かを示すフラグの値をパケットの種類に応じて決定してもよい(図96Cのフラグの列を参照)。送信装置100は、フラグの値と、図96A又は図96Bを組み合わせて用い、TRN_LENとNsubの値を決定しても良い。
また、送信装置100は、Nmin_error(0)の値が0以上128未満、128以上256未満、256以上384未満、384以上512未満のいずれであるかを示すインデックスを、パケットの種類に応じて決定してもよい(図96Cのインデックスの列を参照)。送信装置100は、インデックスの値と、図92又は図94とを組み合わせて用い、TRN_LENとNsubの値を決定しても良い。
送信装置100は、図96Cの表を用い、パケットの種類に応じてNmin_error、フラグ、インデックスの値を決定し、TRN_LEN及びNsubの値を決定するため、L-HeaderのLength及びTRN_LENの値を決定する計算が簡易になり、回路規模及び消費電力を削減することができる。
以上のように、実施の形態3の変形例では、送信装置100は、PHYフレーム長から換算した仮のブロック数(Nblks_spoof(temp))の値に応じてL-HeaderのMCSフィールド、Lengthフィールド及びTraining Lengthフィールドの値を定めるため、spoofing誤差を低減し、データスループットを向上することができる。
また、実施の形態3の変形例では、送信装置100は、PHYフレーム長から換算した仮のブロック数(Nblks_spoof(temp))の値に応じてL-HeaderのMCSフィールド、Lengthフィールド及びTraining Lengthフィールドの下位ビットの値を定め、Training Lengthフィールドの上位ビットに付加情報(Info)を含めてPHYフレームを送信するため、11ay規格の受信装置300は、付加情報を用いて効率的にPHYフレームを復調することができる。
(実施の形態12の変形例2)
本実施の形態は、図2の送信装置100、または、図2と基本構成を同じくする送信装置が、実施の形態1から12までとは別のフレームフォーマットを用いて送信する一例を示す。また、図3、図64B、図64Cの受信装置200が、それらのフレームを受信する方法について説明する。
図97は、本実施の形態におけるPHYフレームのフレームフォーマットの一例(PHYフレーム1000)を示す図である。図61A、図61B、及び、図61Cのフレームフォーマットと異なり、PHYフレーム1000は、複数のEDMG-Header-Aフィールド及び複数のDataフィールドを含む。
Header部(例えばL-Headerフィールド)及びData部(Dataフィールド)を交互に複数回繰り返すフレームフォーマットは、11ad規格にA-PPDU(Aggregate PHY protocol data unit)として規定されている。
つまり、PHYフレーム1000は、A-PPDUを適用したPHYフレームである。
PHYフレーム1000は、11ad規格のA-PPDUと異なり、L-HeaderフィールドとEDMG-Header-Aフィールドを含み、EDMG-Header-AフィールドとDataフィールドを複数回繰り返すフレームである。
送信装置100は、複数のDataフィールドに対して少なくとも1つのL-STF、L-CEF、L-Headerを送信すればよく、複数のDataフィールドを送信する場合に、L-STF、L-CEF、L-Headerを送信する回数を減らすことができ、データスループットを向上することができる。
また、送信装置100は、E-Header-Aフィールド1004、1104、1204のそれぞれに、Dataフィールド1005、1105、1205を符号化及び変調のパラメータ(例えばMCS、GI長、MIMOストリーム数)を含めて送信するため、Dataフィールド毎に符号化及び変調のパラメータを変更して送信することができる。これにより、送信装置100は、複数のデータを効率的に送信することができる。
例えば、送信装置100は、再送データに対して、初送データ(再送ではないデータ)に比べて低いMCSを適用して送信しても良い。これにより、複数回の再送が発生する確率を低減することができ、データ遅延の最悪値を改善することができる。
図98は、PHYフレーム1000のE-Header-Aフィールド1004、Dataフィールド1005、E-Header-Aフィールド1104、Dataフィールド1105の一例を示す図である。
図98では、一例として、Dataフィールド1005はShort GI(GI長32シンボル)を含み、Dataフィールド1105はLong GI(GI長128シンボル)を含む場合について説明する。送信装置100は、図98のようにDataフィールド毎に異なるGI長を用いてもよい。また、送信装置100は、図98と異なり、全てのDataフィールドにおいて、同一のGI長を用いてもよい。なお、Dataフィールド1005では、図67Bに示したように、最初のGI長は64シンボルである。
E-Header-Aフィールド1004及びE-Header-Aフィールド1104は、2つのシンボルブロック(E-Header-A(1)及びE-Header-A(2))を含み、シンボルブロック毎に、シンボルブロックの前にGI64を含む。(図61A、図61B、図61Cの説明を参照)。
Dataフィールド1005のGI長を指示する信号は、E-Header-Aフィールド1004に含めても良い。なお、全てのDataフィールドにおいて同一のGI長を用いる場合、GI長を指示する信号をL-Headerに含めても良い(図62を参照)。
Dataフィールド1005のGI長が32である場合、Dataフィールド1005の先頭にはGI64を含め、また、シンボルブロック(例えばData(1)及びData(2))毎に、シンボルブロックの後にGI32を含める(図61Aを参照)。つまり、図98において、送信装置100は、シンボルブロックData(2)と、シンボルブロックE-Header-A(1)の間に2つのGI(GI32とGI64)を含めて送信する。
このように、送信装置100は、Dataフィールド1005の最後にDataフィールド1005のGI長(例えば32シンボル)のGIを含め、E-Header-Aフィールド1104の先頭にGI64を含めて送信するので、11ay規格の受信装置200(図3、図64B、図64Cを参照)は、シンボルブロックData(2)の復調及びシンボルブロックE-Header-A(1)の復調においてシンボル間干渉を低減することができる。
図99は、PHYフレーム1000の他の一例を示す図である。
図99において、GI長32シンボルのDataフィールド1005は、先頭に480シンボルのM-STFフィールドを含む。つまり、実施の形態12と同様に、送信装置100は、E-Header-AフィールドとDataフィールドの間に、DataフィールドのGI長に応じた長さのM-STFフィールドを含める。
このため、11ay規格の受信装置200は、図99のE-Header-Aフィールド1004及びDataフィールド1005を受信する場合、DFT窓の間隔を等間隔することができる。
つまり、11ay規格の受信装置200は、DFTウィンドウ(DFT窓)の間隔をフィールド毎に調整することを省略でき、受信装置の回路規模を削減することができる。
また、図99のPHYフレームは、E-Header-Aフィールド1004のシンボルブロックE-Header-A(2)の前後にGI64を含み、Dataフィールド1005のシンボルブロックData(1)の前後にGI32を含むため、受信装置200は、シンボル間干渉を低減し、受信品質を高めることができる。
また、受信装置200は、M-STFを用いてチャネル推定を行うことができるため、回路規模の増加を抑制して、受信品質を高めることができる。
また、送信装置100は、A-PPDUを適用したPHYフレームにおける2番目以降のE-Header-A(例えばE-Header-Aフィールド1104)の先頭に、GI64に対応するM-STF(例えば図68Aを参照)を含めて送信してもよい。
図98では、シンボルブロックE-Header-A(1)の前にGI64を含むため、64シンボルに相当するspoofing誤差が発生する場合があるが、図99では、シンボルブロックE-Header-A(1)の前に含むシンボルは512シンボルである。従って、E-Header-Aフィールド1004のシンボルブロックE-Header-A(1)以降のシンボル数は、512の倍数となり、式(27B)により算出されるNmin_errorの値は0となる。これにより、spoofing誤差を削減することができる。
11ay規格の受信装置200は、図99のPHYフレームを受信する場合、E-Header-Aフィールド1104のM-STFフィールドを用いて、チャネル推定、シンボルタイミング同期、周波数オフセット補正を行ってもよい。これにより、受信装置200は、E-Header-Aフィールド1104及びDataフィールド1105の受信品質を高めることができる。
また、送信装置100は、E-Header-Aフィールド1004及びDataフィールド1005を受信装置200宛てに送信し、E-Header-Aフィールド1104及びDataフィールド1105を受信装置200とは別の11ay規格の受信装置(例えば図示しない受信装置500)宛てに送信してもよい。
例えば、受信装置200が送信装置100から近距離にあり、受信装置400が送信装置100から遠距離にある場合、送信装置100は、受信装置200宛てのDataフィールド1005に高いMCS(データレートが高速)及び短いGIを用い、受信装置500宛てのDataフィールド1105に低いMCS(データレートが低速)及び長いGIを用いて送信しても良い。
これにより、送信装置100は、受信品質が異なる複数の受信装置宛にデータを送信する場合に、L-STF、L-CEF及びL-Headerを複数回送信することを省略でき、データスループットを高めることができる。
また、遠距離にある受信装置500は、E-Header-Aフィールド1104及びDataフィールド1105を受信する場合に、M-STFを用いてシンボルタイミングの同期を行うことができるため、受信品質を高めることができる。
実施の形態12の変形例2によれば、送信装置100は、A-PPDUを適用したPHYフレームにM-STFを挿入して送信するので、受信装置300(11ad端末)におけるL-HeaderのLengthを用いたPHYフレーム長の算出の誤差を削減することができる。
また、実施の形態12の変形例2によれば、送信装置100は、A-PPDUを適用したPHYフレームにM-STFを挿入して送信するので、受信装置200においてDFTウィンドウの間隔を調整することを省略でき、受信装置の回路規模を削減することができる。また、受信装置200は、M-STFを用いてチャネル推定を行うことができるため、回路規模を抑制して、受信品質を高めることができる。
以上、本開示の各実施の形態について説明した。
なお、上記実施の形態において、送信モード選択情報を含むPSDU Lengthを算出するために用いられるパラメータは一例であって、これらに限定されるものではない。
また、上記実施の形態において、チャネルアグリゲーション時には、送信装置100は、送信モード選択情報(Info)内に、実際に使用するチャネル番号を含めてもよい。例えば、送信装置100は、チャネルch1~ch3がスケジューリングされている場合に、チャネルch2でキャリア検出された場合にはチャネルch1、ch3を用いる。
また、上記実施の形態において、L-HeaderのPSDU Lengthに格納する11ay端末向けの制御情報(Info)として送信モード選択情報を用いる場合について説明したが、L-HeaderのPSDU Lengthに格納する11ay端末向けの制御情報(Info)は、これに限定されず、EDMG-STF,EDMG-CEFに関する制御情報であればよい。
また、上記実施の形態では、本開示の一態様をハードウェアで構成する場合を例にとって説明したが、本開示はハードウェアとの連携においてソフトウェアで実現することも可能である。
また、上記実施の形態の説明に用いた各機能ブロックは、典型的には集積回路であるLSIとして実現される。集積回路は、上記実施の形態の説明に用いた各機能ブロックを制御し、入力端子と出力端子を備えてもよい。これらは個別に1チップ化されてもよいし、一部または全てを含むように1チップ化されてもよい。ここでは、LSIとしたが、集積度の違いにより、IC、システムLSI、スーパーLSI、ウルトラLSIと呼称されることもある。
また、集積回路化の手法はLSIに限るものではなく、専用回路または汎用プロセッサで実現してもよい。LSI製造後に、プログラムすることが可能なFPGA(Field Programmable Gate Array)や、LSI内部の回路セルの接続や設定を再構成可能なリコンフィギュラブル・プロセッサを利用してもよい。
さらには、半導体技術の進歩または派生する別技術によりLSIに置き換わる集積回路化の技術が登場すれば、当然、その技術を用いて機能ブロックの集積化を行ってもよい。バイオ技術の適用等が可能性としてありえる。
本開示の送信装置は、送信信号のデータ長を示すデータ長情報に、拡張プリアンブルに関する制御情報を追加したレガシヘッダを生成するヘッダ生成部と、生成されたレガシヘッダ、拡張ヘッダ、拡張プリアンブル、データフィールドの順に配置されたフレームフォーマットを用いて送信信号を生成する送信信号生成部と、生成された送信信号を送信する送信部と、を具備し、送信信号のデータ長は、拡張ヘッダ、拡張プリアンブル及びデータフィールドを合算した長さを示す。
本開示の送信装置において、データ長は、データ長の所定の範囲毎にシンボルブロック数に対応付けられ、制御情報のビット数は、シンボルブロック数に対応付けられる。
本開示の送信装置において、ヘッダ生成部は、データ長の所定の範囲の最大値から、制御情報の値を減じた値をデータ長として、データ長情報を生成する。
本開示の送信装置において、ヘッダ生成部は、データ長の所定の範囲の最小値に、制御情報の値を加算した値をデータ長として、データ長情報を生成する。
本開示の送信装置において、制御情報のビット数は、3の倍数の値に調整されたシンボルブロック数に対応付けられる。
本開示の送信装置において、ヘッダ生成部は、データフィールドの後にパディング情報を付加して、シンボルブロック数を調整する。
本開示の送信装置において、ヘッダ生成部は、拡張ヘッダと拡張プリアンブルとの間に拡張フィールドを配置して、シンボルブロック数を調整する。
本開示の送信装置において、拡張フィールドには、データが格納され、レガシヘッダには、拡張フィールドの長さが格納される。
本開示の送信装置において、レガシヘッダに含まれる符号化及び変調方式に関する複数のMCS情報に応じて、データ長は、データ長の所定の範囲毎にシンボルブロック数に対応付けられ、シンボルブロック数が所定の閾値以下の場合、制御情報のビット数は、第1のMCS情報及びシンボルブロック数に対応付けられ、シンボルブロック数が閾値を超える場合、第2のMCS及び3の倍数の値に調整されたシンボルブロック数に対応付けられる。
本開示の送信装置において、ヘッダ生成部は、データ長情報の一部のビットパターンを、制御情報に割り当てる。
本開示の送信方法は、送信信号のデータ長を示すデータ長情報に、拡張プリアンブルに関する制御情報を追加したレガシヘッダを生成し、生成されたレガシヘッダ、拡張ヘッダ、拡張プリアンブル、データフィールドの順に配置されたフレームフォーマットを用いて送信信号を生成し、生成された送信信号を送信し、送信信号のデータ長は、拡張ヘッダ、拡張プリアンブル及びデータフィールドを合算した長さを示す。