IEEE standard – Software defined Configuration method for OCC Systems

The purpose of the post is to specify the PIB attributes for configuring a particular OCC PHY mode. Any OCC PHY mode is co-existing with the others and recognizable by a specific receiver once the PIBs are specified.

The configuration of PHY-PIB attributes is software-defined (App-based). Without using PHY-frame overhead, the App-based configuration is communication efficient and reliable.

Herein, the App-based OCC PHY configuration mechanism shall include

  1. The general description of the PHY-reconfiguration method
  2. The device architecture
  3. Specification of PHY PIB attributes within IEEE 802.15.7m standard for OCC

Note that: The App-based configuration has been already approved by IEEE 802.15.7m TG committee.

This post explains the configuration based on IEEE 802.15.7m draft D4 standard.

 


Why we need App-based configuration for OCC PHY?

There are many modulation schemes available for OCC. A particular Rx must know which modulation is used at Tx for the demodulation.

Thus, the configuration of PHY for Tx being recognizable by Rx is indispensable. Especially, when the PHY frame does not contain PHY header due to the forbidden of overhead in OCC modes. The configuration of modulation schemes is software-based, or app-based, called App-based PHY configuration.

 


General Description

It has been known that the configuration of the physical layer data unit (PPDU) frame format is typically done via the transmission of PHY header subfield within the PPDU. Such that over-the-air configuration seems to be intolerant for OCC modes operating at data rates as low as 10kbps or much lower rate. Indeed, the current OCC PHY modes in the IEEE 802.15.7m (TG7m) draft standard operating at the bit rate ranging from tens-of-bps to Mbps. As a consequence, the TG7m committee has discussed and introduced a brand-new configuration of PHY modes without the need of PHY headers.

1.png
Figure 1- Scenario of PPDU/MPDU App-based configuration

The PPDU configuration, such as frame size modulation and coding choice, and optical clock rate, etc., shall be performed via PHY-layer personal area network information-based (PIB) attributes. In the other word, the arrangement of configurable PPDU related parameters is APP-based; in an example, when a smartphone user downloads the app, it has to accompany PIB-values to let the camera know how to demodulate the light waveform. This paradigm has been approved by the TG7m committee, and the following screen modulations are adhered to accordingly.

 

The overall architecture for VPAN is illustrated as in Figure 2.

2.png
Figure 2 – VPAN overall architecture (from IEEE 802.15.7m)

The discussion issue is about the configuration manner of an operating mode among multiple given modes, particularly PPDU frame format without the over-the-air transmission of PHY headers. This means the App-based device should be able to know the proper PPDU format for its decoding. Imagine when the user downloads the software app at a shopping mall, it contains all the necessary information including the type of PPDU format used at the shopping mall. Accordingly, the information for the communication mode can pass to the PHY/MAC layer (particularly to PHY/MAC PIB for the configuration) via the device management entity (DME).

3.png
Figure 3 – PHY layer service access points

The PHY-layer personal area network information-based (PHY PIB) attributes are within the physical-layer management entity (PLME), see Figure 101. The manner to use (GET and SET values) PHY-PIB-attributes is described in section 9.2. PHY Management service of the IEEE 802.15.7-2011.

 


New PHY PIB Attributes for OCC

The PHY or MAC PIB comprises the attributes required to manage the PHY or the MAC of a device. Each of these PHY PIB attributes can be read using the PLME-GET.request, or written using PLME-SET.request primitives, respectively.

Necessary PHY PIBs for the configuration of PPDU formats for each PHY operating modes with suggested values are introduced as follows.

Table 1 – Overall PHY PIB attributes (Part of IEEE 802.18.7m)

Attribute Ident. Type Range Description
phyCurrentChannel 0x00 Integer Existing in IEEE 802.15.7-2011 std.
phyCCAMode 0x01 Octet Existing in IEEE 802.15.7-2011 std.
phyDim 0x02 Integer Existing in IEEE 802.15.7-2011 std.
phyUseExtendedMode 0x03 Integer Existing in IEEE 802.15.7-2011 std.
phyColorFunction 0x04 Existing in IEEE 802.15.7-2011 std.
phyBlinkingNotification-

Frequency

0x05 Integer Existing in IEEE 802.15.7-2011 std.
phyOccEnable 0x06 Boolean 0/1 This attribute enables the PHY modes for OCC.

0: PHY I, II, and III

1: PHY IV, V, and VI.

phyOccMcsID 0x07 Integer 0-15 This attribute identifies the OCC modulation when phyOccEnable =1. The proper values for the modulation and coding identification of OCC modes are described in Table 20.
phyOccPSDULength 0x08 Integer 0x0-0xffff This is to specify the length PSDU in bit.

Table 2 – OCC PHY modes identification (Part of IEEE 802.18.7m)

phyOccMcsID

PHY OCC mode Description

0

UFSOOK

1

Twinkle VPPM

2

S2-PSK

3

HS-PSK

4

Offset-VPPM

5

RS-FSK

6

CM-FSK

7

C-OOK

8

MPM

9

A-QL

10

HA-QL

11

VTASC

12

IDE

13-15

Reserved

//The Bold text in Table 2 indicate that I can provide you the open source implementation for your evaluation. I will invite some colleagues for helping me publishing more open source in a near future.

Table 3 – PHY PIB attributes for S2-PSK mode (Part of IEEE 802.18.7m)

Attribute Ident. Type Range Description
phyS2pskOpticalClockRate 0x09 Integer 0-15 The optical clock rate (or symbol rate) applied for S2-PSK.

0:  5 Hz

1:  10 Hz

2: 15 Hz

3-15:  Reserved

phyS2pskLineCode 0x0a Integer 0-7 This specifies the line coding for S2-PSK.

0: None

1: half rate line coding

2-7: Reserved

 

phyS2pskFec 0x0b Integer 0-7 This attribute specifies FEC for S2-PSK.

0: None

1: RS(15,11)

2-7: Reserved

phyS2pskNumLightSources 0x0c Integer 0-3 The number of light sources used to modulate S2-PSK signal.

0:    two light sources

1-3: Reserved

phyS2pskModulationRate 0x0d Integer 0-7 This attribute specifies the modulation frequency used for S2-PSK.

0: 200 Hz

1: 1000 Hz

2-7: Reserved

 

Table 4 – PHY PIB attributes for HS-PSK mode (Part of IEEE 802.18.7m)

Attribute Ident. Type Range Description
phyHspskOpticalClockRate 0x0e Integer 0-15 The optical clock rate (or symbol rate) applied for HS-PSK.

0:  10 kHz

1:  50 kHz

2-15: Reserved

phyHspskLineCode 0x0f Integer 0-7 This specifies the line coding for HS-PSK

0: None

1: half-rate code for S2-PSK, none for DS8-PSK

2-7: Reserved

phyHspskFec 0x10 Integer 0-7 This attribute specifies FEC for HS-PSK modulation.

0: None for both S2-PSK and DS8-PSK

1: None for S2-PSK, RS (15, 11) for DS8-PSK

2: RS(15,11) for S2-PSK, RS (15, 7) for DS8-PSK

3-7: Reserved

phyHSpskNumLightSources 0x011 Integer 0-7 The number of light sources used to modulate HS-PSK signal.

0:    two light sources, each consists of 8 LEDs.

1-7: Reserved

phyHSpskHighStreamMode 0x012 Integer 0-7 The modulation of high data stream.

0:   DS8-PSK mode

1-7: Reserved

phyHSpskModulationRate 0x013 Integer 0-7 This attribute specifies the modulation frequency used for S2-PSK and DSM-PSK of HS-PSK.

0: 200Hz for S2-PSK and 80 kHz for DS8-PSK

1: 1 kHz for S2-PSK and 400 kHz for DS8-PSK

2-7: Reserved

phyHSpskLowDim 0x014 Integer 0-500 This attribute specifies the low dimming level of DS8-PSK.
phyHSpskHighDim 0x15 Integer 500-1000 This attribute specifies the high dimming level of DS8-PSK.

 

Table 5 – PHY PIB attributes for A-QL mode (Part of IEEE 802.18.7m)

Attribute Ident. Type Range Description
phyAqlOpticalClockRate 0x47 Integer 0-15 The optical clock rate (or symbol rate) applied for A-QL mode.

0:  5 Hz

1:  10 Hz

2:   15 Hz

3-15:  Reserved

phyAqlFec 0x48 Integer 0-7 This attribute specifies FEC in case of A-QL modulation,

0: None

1: CC(1/4) as inner FEC

2: CC(1/3) as inner FEC; RS(15,11) as outer FEC

3: CC(1/4) as inner FEC; RS(15,7) as outer FEC

4-7: Reserved

phyAqlNumCells 0x49 Integer 0-7 The number of individual cells in Tx in A-QL mode.

0: 16×16 cells

1-7: Reserved

phyAqlCellSize 0x4a Integer 0-1000 This attribute specifies the size of cells (in pixels) to generate the A-QL code.
phyAqlBolderSize 0x4b Integer 0-2 This attribute specifies the ratio between the size of the bolder and the size of the cell.
phyAqlNumCellReference 0x4c Integer 0-3 The number of cells per each of four reference corners in A-QL mode.

0: 1 cell reference

1: 2×2 cell reference

2-3: Reserved

phyAqlColorSelection 0x4d Integer 0-15 The selection of color bands used in A-QL mode.

0: Grey mapping

1-9: a valid combination of colors available in Table 2.

 

Table 6 – PHY PIB attributes for HA-QL mode (Part of IEEE 802.18.7m)

Attribute Ident. Type Range Description
phyHAqlOpticalClockRate 0x4e Integer 0-15 The optical clock rate (or symbol rate) applied for HA-QL

0: 5 Hz

1: 10 Hz

2: 15 Hz

5-15:  Reserved

phyHAqlLineCode 0x4f Integer 0-7 In case of HA-QL modulation, the RLL coding is

0: None

1: half-rate code

3-7:  Reserved

phyHAqlFec 0x50 Integer 0-7 This attribute specifies FEC for HA-QL modulation,

0: None

1: CC(1/3) as inner FEC; RS(15,11) as outer FEC

2: CC(1/4) as inner FEC; RS(15,7) as outer FEC

3-7: Reserved

phyHAqlNumCells 0x51 Integer 0-7 The number of individual cells in Tx in HA-QL mode.

0: 8×8 cells

1: 16×16 cells

2-7: Reserved

phyHAqlNumCellReference 0x52 Integer 0-3 The number of cells per each of four reference corners in HA-QL mode.

0: 1 cell reference

1: 2×2 cell reference

2-3: Reserved

phyHAqlAb 0x53 Integer 0-7 This attribute specifies the number of Ab bits embedded into a block of data to be carried by the HA-QL code.
phyHAqlIntensity 0x54 Float 0-1 This specifies the intensity level of the modulated intensity. 0 means the intensity of the original image does not change, and 1 means the intensity of the original image is inverted.

 

Table 7- PHY PIB attributes for RS-OFDM mode (Not part of IEEE 802.18.7m)

Attribute ID Type Range Description
phyRsOFDMOpticalClockRate Int. 0-15 The optical clock rate (or symbol rate) applied for RS-OFDM

0:  10 kHz

1:  50 kHz

Others: Reserved

phyRsOFDMFec Int. 0-7 This attribute specifies FEC for RS-OFDM modulation,

0: None

1: Inner CC (1/4)

2: Inner CC(1/3)

3: Inner CC(1/3), outer RS (15/11)

4: Inner CC(1.4), outer RS (15/7)

Other values: Reserved

phyRsOFDMSymbolRate Int. 0-7 This attribute specifies the data symbol rate (denoted as DS rate) of RS-OFDM.

0: 125 sym/sec (case 10kHz clock rate)

1: 625 sym/sec (case 50kHz clock rate)

2-7: Reserved

phyRsOFDMPacketRate Int. 0-7 This attribute specifies the Data Packet rate of RS-OFDM.

0: 5 packet/sec

1: 10 packet/sec

2: 15 packet/sec

3-7: Reserved

phyRsOFDMSeqNumLength Int. 0-3 This attribute specifies the number of bits per data sub-frame of RS-OFDM, being used for sequence numbering.

0: 1 bit

1: 8 bits

2-3: Reserved

phyRsOFDMPsduLength Int. 0-255 This is to specify the length of PSDU in the bit unit.

 

088.999.8618
088.999.8618