The present document specifies the architecture of the following components of a OpenAirInterface network
-# \ref _RN_TOPOLOGY_
-# \ref _PHY_PROCEDURES_MESH_
-# \ref _PHY_PROCEDURES_CELL_
-# \ref _L2_PROTOCOLS
\subsection _RN_TOPOLOGY_ Radio Network Topology and Components
This section describes the different components which constitute the OpenAirInterface. Two types of network topologies are supported, mesh and cellular.
The mesh topology is depicted as:
\image html mesh_topology_small.png "OpenAirInterface Mesh Topology" width=5cm
The mesh topology contains Clusterheads (CH) and Mesh Routers (MR) whereas the cellular topology contains Clusterheads/NodeB (CH/NodeB) and User Equipment (UE).
The main difference at the physical layer between the two topologies is that direct communications between UE is not permitted in a cellular topology. Other major
differences exist at layers 2 and 3. In both topologies, MR/UE can be connected to more than one CH at any time, if radio connectivity is possible.
The two types of physical networking devices are specified as follows:
- Cluster-head (CH or NodeB): A cluster-head can be defined as a node with a maximum visibility/connectivity in terms of number of nodes in its neighborhood.
From the point-of-view of the MAC layer, it assumes the fine-grain management of radio resources in the cluster (cell). It determines the frame partitioning
(see \ref _framing_modulation) and bandwidth allocation and communicates this information to nodes in the cluster through a beacon. At the
physical layer, the cluster-head provides mechanisms for timing and carrier frequency synchronization. The primary role of the CH is to manage radio resources in their cluster. The cluster is defined as the set of nodes which are characterized by one-hop connectivity with the clusterhead. One-hop connectivity is further defined as the capacity to reliably receive and transmit basic signaling channels with the clusterhead using at least at the lowest datarate communication mode. Reliable communication is defined by a transmission which falls below a maximal error probability threshold.
CH can only be connected to MR on the same frequency-carrier since they use the same temporal resources as other CH. Thus direct CH<->CH communication is not possible on the same frequency carrier.
The downlink (CH -> MR) signaling channels allow for the CH to schedule transmission of labels (in the form of time and frequency mappings on the radio resource) which each carry different types of traffic throughout the mesh network. The Uplink (UL) signaling channels (MR -> CH) are used for relaying bandwidth requirement indicators and channel quality measurements from nodes within the cluster. These feed the scheduling algorithms residing in the CH and allow for proper resource allocation satisfying quality-of-service (QoS) negotiations carried out using Layer 3 (L3) signaling.
The CH further provides mechanisms for measurement reporting to L3 (for routing, QoS management, labeling, etc...). This is achieved by a set of signaling channels which relay measurement information (UL) for the nodes in the cluster to the CH. The CH processes these raw measurements into a form which is expected by L3 mechanisms.
Some CH can assume the role of network synchronization by sending special synchronization pilots (see Section 1.1.5). These will be called Primary CH when network synchronization is achieved using this method. Other CH using this method are called Secondary CH.
- Regular node/Mesh Router (UE): All nodes have the ability to play at the same time the role of a host and of a router, although this functionality is not activated
in a cellular topology.
The primary role of an MR is to interpret the scheduling information from the CH on the DL signaling channels in order to route the traffic corresponding to the
scheduled labels on the allocated physical resources. MR can be connected to other MR (direct link) in the same cluster. MR can also be connected to more than one cluster
at the same time. It is also expected to using the UL signaling channels to relay measurements to the CH with which is connected.
A secondary role of some MR is to search, on behalf of the CH, for isolated nodes which need to be connected to the mesh. These MR use a special signaling resource (MRBCH) to
exchange basic topological parameters with the IN which then results in overall network topology updates. If several IN are contending for access with the cluster,
joint processing of the requests will be performed by the mesh during topology adjustments. The most likely nodes to assume this role will be those at the extremities
of the mesh.
Either type of equipment can also assume the role of relay/gateway to a secondary network. `
In mesh topologies some nodes (CH or MR) assume the role of and edge router (from a layer 2/3 perspective). An edge router is either a CH or MR with an IP interface to
another network. The role of ER is to aggregate traffic (ingress) from IP flows to MPLS-like labels for transmission in the mesh. On reception it must demultiplex
traffic (degress) from MPLS-like labels to IP for traffic exiting the mesh. Edge routers, potentially all CH and MR, must have MAC-layer interfaces to IP in order to
perform these functions.
Both OpenAirInterface topologies require Network Synchronization (NS) at least between adjacent clusters. This must be on the order of a few microseconds. Three mechanisms are
supported to ensure NS. Firstly, a secondary synchronization source (e.g. GPS) can be used as a common time reference by all nodes. Secondly, one CH (Primary CH) in the
network use a special synchronization signal which has longer range than the range of communication, in order to cover the region which a common time reference. This is
suitable for small networks. Finally the method of distributed relaying of synchronization is possible. This is a method by which all nodes propagate a time reference. Nodes
switch between reception (for timing acquisition and tracking) and transmission of the reference. This guarantees coverage of network synchronization over long distances
in the absence of a secondary synchronization source.
\subsection _L2_PROTOCOLS Layer 2 Protocols
Layer 2 is structured as below. It comprises:
- A IP/MPLS networking device (NAS DRIVER) responsible for provision of IP/MPLS layer services to Layer 2 and vice-versa
- An MPLS label-switching entity (NAS MPLS) responsible for routing/forwarding within the mesh network (MESH topology only)
- A Radio resource control (RRC) entity responsible for MAC layer signalling for configuration of logical flows (labels) and retrieval of measurement information.
- A Radio Link Control (RLC) entity which is responsible for automatic repeat request protocols (ARQ) and IP/MPLS packet segmentation
- A convergence protocol (PDCP) responsible for IP interface and related functions (header compression, ciphering, etc.)
- A scheduling and multiplexing unit (\ref _openair_mac_layer_specs_) responsible for the mapping between logical channels (labels and control-plane signalling)
and transport channels. It implements the interface with the PHY, which is the collection of transport channels as well as a primitives for
collection of PHY measurements and configuration of PHY parameters.
\image latex layer2_stack_overview.pdf "Global View of OpenAirInterface Protocol Stack and Communication Primitives"
\image html layer2_stack_overview.png "Global View of OpenAirInterface Protocol Stack and Communication Primitives"
These entities are described in the following subsections.
\subsubsection _RRC_ Radio Resource Control (RRC)
The radio resource control entity is responsible for the L2 signalling implementing the radio channels establishment. It also implements the control of
measurement procedures described in Section 1.3.4. Its internal state machine controls the basic procedures for startup, monitoring of synchronization
through the measurement system and update of the nodes role in the network (Sections 1.3-0).
RRC is responsible for configuration of all MAC entities (and PHY via MAC), both dynamic (during label establishment) and static (control channels). This functionality
is in response to event occurring in the interaction with L3 and based on dynamic measurements of radio quality.
RRC signalling makes use of DCCH, CCCH and BCCH for transport of the various protocols.
\subsubsection _RLC_ Radio Link Control (RLC)
RLC segments IP packets. The segment size is configurable for each QoS class and is signalled by higher layers during route establishment. The sizes
are chosen based on the granularity of the underlying MAC/PHY resources (transport blocks).
RLC is responsible for ARQ and indexing of SDUs from the user traffic and signalling SDUs from RRC. The SDU inputs from LS form the
set of radio bearers, and those from RRC the set of signalling radio bearers. It has two modes of functionality: acknowledged and unacknowledged.
Each logical channel can have an associated ARQ process which is managed by RLC. The ARQ mechanisms are based on Release 6 3GPP RLC (25.8xx).
The interface with RRC for configuration is not yet described. The interface with MAC is designed such that data for each logical channel is
buffered in data queues, whose occupancy can be measured by the MAC scheduling entity.
\subsubsection _MAC_ MAC scheduling Entity (MAC)
The MAC entity is responsible for scheduling control plane and user-plane traffic on the physical OFDMA resources.
On transmission, the inputs to this entity are connected to data queues originating in the RLC layer which form the set of logical channels. The
control plane traffic is represented by logical channels which form the interface with the RLC. Logical channels contain both user-plane (originating
in the IP/MPLS entity via the PDCP entity) and control-plane traffic (originating in the RRC entity). MAC layer specifications are found in \ref _openair_mac_layer_specs_.
The MAC is responsible the transport channel interface which exchange data (MAC SDUs) and PHY measurement data for RRC measurement procedures.
\subsubsection _POWER_ON_CH_ Power-on procedures of a CH
This clause briefly describes the power-on procedure of a CH. The CH RRC receives basic cell configuration information (CHBCH/RACH configuration) from
L3 Radio Resource Management (RRM) and configures the MAC and RLC layers. The MAC, in turn, configures the static paramters of the PHY. Upon completion
of this initialization phase it enters the steady-state mode.
\subsubsection _POWER_ON_UE_ Power-on procedures of a UE
This clause briefly describes the power-on procedures of a UE which is managed by the UE-RRC state machine. The first function is to search for at least one
existing CH in range which is under the responsibility of the PHY. This procedure attempts to analyze the received signal power over a pre-defined time period. If a
signal is detected on the desired carrier, the node attempts PHY synchronization using the pilots of the candidate CHs. The postulated frame start position is used
to demodulate the CHBCH resources. If the PHY returns an error-free CHBCH with acceptable receive quality, the node is said to be pre-synchronized to the CH.
It then attempts to decode the CHBCH of the rest of the CH in range. At the end of this stage, it has a list of acceptable CH. This procedure is repeated periodically,
until active communication is sought with the network.
Upon passing to the state of active communication, it demodulates the CHBCH continuously from the CHs to obtain the UL-CCCH configurations as well as MCCH/MTCH.
Once configured, it attempts to establish a connection (connection request) with each of the candidates using the RACH resources of each CH. Upon successful completion
of the association procedure it is said to be synchronized to the CH and enters the steady-state mode for each CH.
In TTI N, the CH transmits all DL flows as determined by the CHBCH scheduler during the end of TTI N-2. Furthermore, it detects the UL-SACCH for all UE flows and the
UE-SACH for all flows. It also detects the RACH (CCCH). At the end of each TTI, once it has received all feedback indicators (channel and queuing), it invokes
the CHBCH scheduling entity to determine the allocations for TTI N+2. The sequence of operations after receiving flows from TTI N (towards the end of TTI N+1) is:
Entity: RRC TX
-# generate BCCH and CCCH to be conveyed in TTI N+2
-# program new logical channels and measurement procedures starting in TTI N+2 based on L3 signaling requests
-# generate signaling radio bearers (measurement requests, UE radio bearer/logical channel configuration) for TTI N+2, and invoke RLC
Entity: MAC TX
-# Invoke MAC Scheduler for TTI N+2 allocations : compute DL_SACCH_PDU and UL_ALLOC_PDU for N+2, corresponding to PHY allocations in N+3.
-# Generate CHBCH PDU for TTI N+2
-# Retrieve RLC SDUs and generate DL_SACH for TTI N+2
-# Generate MACPHY_DATA_REQ for TX transport channels in TTI N+2
MAC RX
-# Generate MACPHY_DATA_REQ for RX transport channels in TTI N+2 (based on previously scheduled UL_ALLOC_PDU received by UE in TTI N, decoded by end of TTI N+1)
-# Invoked by PHY through macphy_data_confirm, the received flows are routed to RLC data queues and MAC signaling information is
stored for MAC TX scheduling in next TTI. The MACPHY_DATA_IND primitive (invoked by PHY) also provides CH RX measurements information in an UL_MEAS structure.
RRC RX
-# Retrieve RACH and process association requests
-# Retrieve signaling radio bearers from RLC
-# Retrieve CH RX measurements from PHY/MAC
This sequence is invoked at the end of each TTI by the system scheduler.
In the steady-state of TTI N, the UE PHY demodulates the CHBCH. The CHBCH PDU is then available during TTI N+1 for the MAC. to determine the allocations of the CH and
itself in TTI N+2. Based on the decoded information, its scheduling entity generates the transmission for the next TTI and configures the PHY to demodulate the data for
which it is destination in the current TTI. The UE RRC acts on PHY/MAC measurements to maintain proper synchronization and received signal quality, for example by
detecting a loss of connection of degradation of service. The sequence of operations at the end of TTI N is
Entity: MAC RX
-# Parse CHBCH_PDU
-# Generate macphy_data_req for RX transport channels in TTI N+2 (based on previously scheduled UL_ALLOC received by UE in TTI N, decoded by end of TTI N+1)
-# Invoked by PHY through macphy_data_confirm, the received flows are routed to RLC data queues and MAC signaling information is stored for MAC TX scheduling in next TTI. The reported PHY RF measurements (i.e. in DL_MEAS structure) are processed and used to generate UL_SACCH_FB.
-# Process measurements for RRC measurement reports and invoke mac_meas_ind for each logical channel requiring a measurement report.
Entity: RRC RX
-# Retrieve BCCH and CCCH and generate association requests
-# Retrieve signaling radio bearers from RLC
-# Retrieve UE RX measurements from PHY/MAC for L3 measurement reporting
Entity: RRC TX
-# program new logical channels and measurement procedures starting in TTI N+2 based on L3 signaling requests signaled by CH-RRC
-# generate signaling radio bearers (measurement reports, configuration ACKs) for TTI N+2, and invoke RLC
Entity: MAC TX
-# Invoke MAC multiplexer for TTI N+2 allocations : compute UL_SACCH_FB and UL_SACCH_PDU for N+2, corresponding to PHY allocations in N+3.
-# Generate CHBCH PDU for TTI N+2
-# Retrieve RLC SDUs and generate UL_SACH for TTI N+2
-# Generate MACPHY_DATA_REQ for UL_SACH in TTI N+2
CH RRC manages L3 measurement reports at L2 for nodes within the cell. Measurement reports are exchanged between UE and CH using a logical channel (DCCH)
for topological control signaling, and edge routers can provide these measurements to IP
Since the CH scheduler has access to low-level PHY measurements, the MAC layer is responsible for measurement reporting on behalf of the PHY and itself.
The CH obtains raw measurements of all links in the cell. RRC acquires these measurements from MAC scheduling entity.
Measurements are processed in nodes to the degree required for higher level services. For example nodes will extract link quality (rate/delay) indicators from
low-level services (MAC to L3 measurement messages) which are transported using special signaling flows offered by the MAC. This is then used for L2.5 topology
maintenance (radio-bearer (re)-assignment). Edge routers will extract L2.5 measurement information on labels to provide IP with quality indicators.
The interface with RRC for measurement reports is very similar to existing Release 6 HSPA. The types of measurements are:
- periodic (or one-shot) with configurable reporting interval and total number of measurements
- event-driven - in order to handle degradation of QoS level or loss of connection.
The available measurements for CH RRC(L2) are:
- RSSI (dBm) on physical resources corresponding to logical channel.
- Average SINR (dB) on physical resources corresponding to logical channel.
- Average number of transmission rounds (times 10) on transport channel associated with logical channel.
- Average residual block error rate (times 1000) on transport channel associated with logical channel (after HARQ!).
- Actual Spectral efficiency (bits/symbol times 10) of transport channel associated with logical channel.
The specification is intended for reconfigurable equipment, so that actual parameters and mechanisms can be configured
prior to deployment of the equipment or potentially over-the-air, although the latter is not yet supported by any of the openair MAC implementations. The
PHY and MAC layers are tightly coupled so that the MAC entity can directly influence the occupied physical resources. The OFDMA system provides the means for
transmitting several multiple-bitrate streams (multiplexed over sub-carriers and antennas) in parallel. Moreover, PHY signaling strategies are included to
provide the means for exploiting channel state feedback at the transmitters in order to allow for advanced PHY allocation of OFDMA resources via the MAC.
Modulation and channel coding formats are generic allowing for specific techniques to be employed in different deployment scenarios although configurations
based on the 802.11a legacy standard (binary/quaternary phase shift keying BPSK/QPSK, 16-point quadrature amplitude modulation (16-QAM),
64-QAM, rate 1/2,2/3,3/4 punctured convolutional codes) are provided here. The specifications are not specific to any frequency band or bandwidth,
although the minimum expected channel bandwidth should not be less than 1 MHz.
*/
/** @defgroup _phy_scope Scope
* @ingroup physical_layer_
* @{
This subclause describes the PHY services provided to the openair MAC. The openair PHY consists of several protocol functions which provide the interface
between the MAC and PHY for allocation MAC layer PDUs to physical resources. Physical channels are used to convey signaling, data and training information
across the radio medium. OpenAirInterface implements the following physical channels:
-# The PCHSCH (Physical Clusterhead Synchronization Channel) is a pilot resource reserved to a clusterhead (CH) which is responsible for
delivering synchronization information to nodes in the cluster. This channel is used by nodes to acquire timing information regarding the
beginning of the TTI and to perform initial frequency offset adjustments with respect to the carrier frequency of the CH. The channel
is also used by adjacent clusterheads to synchronize the network, in order to facilitate inter-cluster communication under quality-of-service guarantees.
-# The PCHBCH (Physical Cluster-head Broadcast Channel) is a signaling resrouce reserved to a clusterhead which is responsible for delivering layer 2/3
protocol information to the nodes of the cluster. It can also used by the nodes in the cluster to acquire accurate timing and frequency synchronization information.
-# the PRACH (Physical Random Access Channel) is a signaling resource used by a node to provide layer 2 protocol information to its clusterhead.
-# the PCHSCH (Physical Clusterhead Synchronization Channel) is a pilot resource used by a CH to allow the UE/MR to estimate the channel of CH and to acquire timing synchronization.
-# the PSCH (Physical Synchronization Channel) is a pilot resource used by a node to allow the CH to estimate the channel of an MR/UE.
-# the PSACH (Physical Scheduled-Access Channel) is a multi-cast data resource used by a node or CH to send MAC data PDUs to one or more destinations in
parallel (using multi-antenna OFDMA).
-# the PSACCH (Physical Scheduled-Access Control Channel) is a signaling resource used by a node to provide MAC protocol information to the destinations of its
transmissions as well as the CH.
-# the PMRBCH (Physical Mesh Router Broadcast Channel) is a signaling resource used by a node to provide layer 2 broadcast protocol information to neighbouring nodes
outside the range of clusterheads. It is used by nodes in mesh network topologies to relay network synchronization and provide initial configuration information to
Transport channels constitute the control and user plane interfaces between the MAC and PHY layers. The are used to exchange both data and measurement information
and are mapped onto the above physical channels. OpenAirInterface implements the following transport channels:
-# The CHBCH (Clusterhead Broadcast Channel) is the transport channel mapped to the PCHBCH.
-# The RACH (Random-Access Channel) is the transport channel mapped to the PRACH.
-# The DL-SACH (Downlink Scheduled-Access Channel) is the transport channel mapped to the PSACH.
-# The UL/MR-SACH (Uplink or Mesh-Router Scheduled-Access Channel) is the transport channel with components mapped to both the PSACH and PSACCH.
-# The MRBCH (Mesh-Router Broadcast Channel) is the transport channel mappted to the PMRBCH.
During reception, all transport channels convey measurement information.
* @}
*/
/** @defgroup _phy_framing Framing and Channel Multiplexing
* @ingroup physical_layer_
* @{
*/
/** @defgroup _framing_modulation TTI and Modulation Parameters
* @ingroup _phy_framing
The physical layer uses OFDM symbols organized into frames (corresponding to TTIs) of complex baseband samples at a sampling rate of \f$ f_\mathrm{s} \f$ samples/s. The carrier frequency is denoted \f$f_c\f$. Each TTI is made up of \f$N_{\mathrm{symb}}\f$ OFDM symbols. OFDM symbols, \f$\mathbf{s}\f$, of length \f$N_\mathrm{s}\f$ samples contain two distinct parts,\f$\mathbf{s}_\mathrm{I}\f$ and \f$\mathbf{s}_\mathrm{E}\f$.
OpenAirMesh framing is completely configurable, but the nominal OFDMA configuration is shown below
One frame consists of 64 OFDM symbols and is divided in a CH transmission time interval (TTI) and a MR TTI. The first four symbols of the CH TTI are reserved for pilot symbols. Each CH transmits one common pilot symbol (CHSCH$_0$) at position 0 and one dedicated pilot symbol (CHSCH\f$_i\f$) at position \f$i \in \{1,2,3\}\f$. This way we can ensure orthogonality between the pilots of different CH received at one MR. The pilot symbols are followed by the broadcast channel (CH-BCH). The rest of the CH TTI frame is reserved for the multiplexed scheduled access channels (CH-SACH).
The MR TTI contains the random access channel (MR-RACH) with an associated pilot symbol (SCH$_0$). The next two symbols are reserved for pilots. Each MR transmits a pilot symbol SCH\f$_i\f$, \f$i \in \{1,2\}\f$ corresponding to the cluster it belongs to. The pilot symbols are followed by the uplink broadcast channel (MR-BCH) with an associated pilot symbol (MRSCH). The rest of the uplink frame contains the multiplexed scheduled access channels (MR-SACH). The end of the CH and MR TTIs are protected by a guard interval of two symbols. All pilots are designed for MIMO and/or Multiuser channel estimation at the corresponding end.
MAC PDUs arrive at the MAC interface from different logical resources (control, broadcast, multiple-user data streams) in parallel at the start of each TTI and must be mapped to the available radio resources. Each PDU is scrambled, encoded with a CRC check, and encoded using a channel code with associated bit-interleaving. The output of the channel coding block contains the information content to be transfered across the channel via the modulator. The modulated information content, \f$\mathbf{s}_\mathrm{I}\f$, is built starting either from a frequency-domain signal (classical OFDM) or several time-domain signals (digital FDM). Both techniques yield what are denoted herein as OFDM symbols. In the first method (classical OFDM), \f$\mathbf{S}_\mathrm{I}\f$ is specified in the frequency-domain and is made up of \f$N_\mathrm{d}\f$ samples. This is transfered to the time-domain via the inverse discrete-time Fourier transform (DFT) yielding a time-domain signal also of length \f$N_\mathrm{d}\f$ samples, \f$\mathbf{s}_\mathrm{I}=\mathrm{idft}(\mathbf{S}_\mathrm{I})\f$. In the second method, up to \f$N_\mathrm{f}\f$ different time-domain signals each comprising \f$N_{\mathrm{d,2}}=\frac{N_\mathrm{d}}{N_\mathrm{f}}\f$ samples, where \f$N_\mathrm{f}\f$ denots the number of frequency groups making up an OFDM symbol. Here each signal \f$\mathbf{s}_{i}\f$ is transformed to the frequency-domain via an \f$N_\mathrm{d,2}\f$-dimensional DFT yielding \f$\mathbf{S}_i\f$ and the combined frequency-domain signal is the concatenation of the \f$\mathbf{S}_i\f$, \f$\mathbf{S}_\mathrm{I} = [\mathbf{S}_0 | \mathbf{S}_1 | \cdots | \mathbf{S}_{N_\mathrm{f}-1}]\f$
The redundant (or null) portion, \f$\mathrm{s}_\mathrm{E}\f$, comprises \f$N_\mathrm{c}=N_\mathrm{s}-N_\mathrm{d}\f$ extra samples, and is concatenated to \f$\mathbf{s}_\mathrm{I}\f$. It is either a cyclic extension or zeros. The overall symbol is \f$\mathbf{s} = [\mathbf{s}_\mathrm{E} | \mathbf{s}_\mathrm{I}]\f$ (prefix configuration) or \f$\mathbf{s} = [\mathbf{s}_\mathrm{I} | \mathbf{s}_\mathrm{E}]\f$ (suffix configuration).
The cyclic prefix or zero-padding is used to absorb a channel with a delay spread (including propagation delay of the primary paths) equal to its length so that adjacent OFDM symbols do not overlap in time. If the cyclic prefix method is used, then \f$s_{\mathrm{E},i} = s_{\mathrm{I},N_\mathrm{d}-N_\mathrm{c}+i}, i=0,\cdots,N_\mathrm{c}-1\f$, whereas if the cyclic suffix method is used, then \f$s_{\mathrm{E},i} = s_{\mathrm{I},i}, i=0,\cdots,N_\mathrm{c}-1\f$ otherwise \f$s_{\mathrm{E},i}=0, i=0,\cdots,N_\mathrm{c}-1\f$. The value \f$N_\mathrm{c}\f$ should be chosen based on the maximum propagation delay in the system. For outdoor channels this will be on the order of a few microseconds. In addition, for large \f$N_\mathrm{c}\f$, the value of \f$N_\mathrm{d}\f$ should also be large so that the overhead due to the propagation channel be kept to a minimum. \f$N_\mathrm{d}\f$ should be large enough to allow for frequency-domain multiplexing of user data streams if OFDMA is employed. Very large \f$N_\mathrm{c},N_\mathrm{d}\f$ are probably not required for openair except perhaps in the case of long-distance point-to-point links
(e.g. to link different hotspot areas).
OFDM symbols typically provide for a certain spectral roll-off to satisfy RF spectral mask requirements and aid in transmit filtering and adjacent channel suppression. This is usually accomplished by inserting \f$N_{\mathrm{z}}\f$ zeros in \f$\mathbf{S}_f\f$. The total number of useful samples in \f$\mathbf{S}_f\f$ is therefore \f$N_\mathrm{d}-N_\mathrm{z}\f$.
For use in OFDMA multiplexing, the useful carriers can be split into \f$N_\mathrm{f}\f$ groups of contiguous carriers. Each group of carriers can be used to transmit a different data stream in the same OFDM symbol. This particularly useful for achieving dynamic FDMA on the uplink of a cellular system.
A summary of the framing parameters is given in following table and is represented by the primitive PHY_FRAMING. It represents part of the static configuration of the air-interface and is set during the initialization phase of the equipment via the MAC-layer interface (see \ref _mac_phy_primitives_,MACPHY_CONFIG_REQ) .
*/
/** @defgroup _chsch_sig Clusterhead Synchronization Channel (P-CHSCH,S-CHSCH) Signaling Format
* @ingroup _phy_framing
The clusterhead synchronization channel is a signaling channel generated in the PHY layer and is comprised of
\f$N_{\mathrm{s,CHSCH}}(N_\mathrm{d}+N_\mathrm{c})\f$ samples, or the equivalent of one \f$N_{\mathrm{s,CHSCH}}\f$ OFDM symbols. The main purposes of
this channel are
-# Timing (TTI/symbol) synchronization for nodes inside the cluster
-# Frequency sychronization for nodes inside the cluster
-# Timing (TTI/symbol) sychronization for clusterheads in adjacent clusters
-# Frequency synchronization for clusterheads in adjacent clusters
It is emitted once per TTI in conjunction with the clusterhead broadcast channel (P-CHBCH,S-CHSCH). Aside from its primary purposes above, it is also
intended to be exploited for channel estimation prior to demodulation of the CHBCH, since the CHBCH does not comprise pilot signals and the clusterhead
does not use the MCH. The number of symbols required, \f$N_{\mathrm{s,CHSCH}}\f$, depend on the desired time and frequency acquisition precision.
The x-CHSCH is a pseudo-random QPSK sequence defined in the frequency domain by the bit sequences
If \f$N_\mathrm{pilot}\f$ additional pilot symbols per OFDM symbol are required to handle large frequency offsets due to high-mobility (Doppler)
or significant carrier frequency offsets due to the RF equipment, then these are to be placed at equally spaced positions starting from the
first non-zero carrier in each CHBCH symbol. These simply puncture the coded bit sequence. Care must be taken when choosing the value of
\f$N_\mathrm{f}\f$ with respect to \f$IntDepth_{\mathrm{CHBCH}}\f$ so that consecutive bits of the encoded sequence are not punctured.
A judicious choice would take \f$IntDepth_{\mathrm{CHBCH}}\f$ and \f$N_{\mathrm{d}}-N_{\mathrm{z}}\f$ to be relatively prime.
In order to allow for multi-cell deployment the CHBCH can use a reduced set of subbands which is controlled by the parameter \f$FreqReuse\f$. It should be set to the maximum number of base stations. Let \f$N_{FreqGroup}\f$ be the number of carriers of one frequency group. Then, the set of carriers used by the \f$i^\mathrm{th}\f$ CHBCH \f$i=1,2,3\f$ (CHBCH 0 is unused) is given by
SACCH data is to be encoded using the lowest spectral efficiency coded-modulation format, namely a rate 1/2 forward error-correcting code with QPSK
modulation. If multiple transmit antennas are used, then the lowest spectral-efficiency BICM space-time code is to be employed. Prior to FEC coding a
CRC shall be computed on the SACCH data and should be concatenated to the tail of the information. The total number of
coded bits for the SACCH depends on the number of streams. It should be kept to a minimum with respect to the total number of data bits in the SACH
streams in order to guarantee efficiency.
Since the SACH is a dynamically allocated resource based on channel quality measures,
sample interleaving across different OFDM carriers is not required.
Prior to forward error-correction coding, a CRC of length 32 bits shall be applied to the PDU.
The SACH is the only resource for which the output of the channel coding block is vectorial, in the case of multiple transmit antennas. Space-time signal
processing is therefore possible on the SACH data streams. Identical interleaving is performed on all antenna streams and the choice of coded-modulation
and space-time processing methods is determined by the MAC scheduler. A choice of 16 different formats are considered including some of the legacy
802.11a formats. The formats could potentially be reconfigurable and installed at run-time or over-the-air. This is discussed in \ref _phy_coded_modulation.
Each stream can use a separate coded-modulation format.
Streams can use a subset of the OFDM carriers according to the frequency allocation vector as mentioned earlier. The allocations are chosen by the opportunistic
scheduling algorithm in the MAC layer in order to achieve multi-user diversity and potentially spatial-multiplexing.
The configuration information for the SACH/SACCH resource are partially signaled by higher layers and partially computed dynamically by the scheduling algorithm in the MAC. They are described by the primitive PHY_SACH summarized in the following table.
*/
/*! \brief Extension Type */
typedefenum{
CYCLIC_PREFIX,
CYCLIC_SUFFIX,
ZEROS,
NONE
}Extension_t;
/*! \brief Transmit Signal Format */
typedefenum{
OFDM=0,
Digital_FDM
}Signal_format_t;
/*! \brief PHY Framing Structure
*/
typedefstructPHY_FRAMING{
u_longfc_khz;/*!< \brief Carrier Frequency (kHz)*/
u_longfs_khz;/*!< \brief Sampling Frequency (kHz)*/
u_shortNsymb;/*!< \brief Number of OFDM Symbols per TTI */
u_shortNd;/*!< \brief Number of OFDM Carriers */
u_charlog2Nd;/*!< \brief Log2 of Number of OFDM Carriers */
\note More information on Linear feedback shift register (LFSR) can be found on http://homepage.mac.com/afj/lfsr.html or http://www-math.cudenver.edu/~wcherowi/courses/m5410/m5410fsr.html
*/
/** @defgroup _phy_crc Cyclic Redundancy Check
* @ingroup _phy_coded_modulation
For the purpose of error-detection a cyclic-redundancy check (CRC) is applied to every transport block entering the
PHY coding subsystem, including those destined for the CHBCH,MCH, RACH and SACCH. To the latter are a applied an
8-bit systematic CRC defined by the generator \f$g_8(D)=1+D+D^3+D^4+D^7+D^8\f$. Data on the SACH is encoded using a
24-bit CRC defined by the generator \f$g_{16}(D)=1+D^5+D^{12}+D^{15}\f$.
\note: Basic information about CRC can be found at: http://www.mathpages.com/home/kmath458.htm or http://utopia.knoware.nl/users/eprebel/Communication/CRC/
*/
/**@defgroup _phy_conv_cod Convolutional Coding
* @ingroup _phy_coded_modulation
For coded-modulation formats using convolutional coding, the 802.11a rate 1/2 64-state convolutional coder shown
below shall be applied to the scrambled and parity-checked transport blocks.
\image html convolutional.png "802.11a Convolutional Code"
8. if \f$U'(i) < N_{i2}\f$ and \f$\mathrm{c[U'(i)]}\f$ is not already punctured go to 10
9. goto 7
10. Mark \f$c[U' + jN_{i2}])\f$ as punctured for \f$j=0,1,\cdots,N_{\mathrm{bps}}-1\f$.
11. Set \f$i\leftarrow i+1\f$
12. if \f$i<N_{i2}\f$ goto 7
*/
/** @defgroup _phy_interl Bit-Interleaving and Modulation Mapping
* @ingroup _phy_coded_modulation
The interleaving depth for CHBCH,MCH,RACH and SACCH in the multiplexing sub-block is chosen to ensure sufficient separation in frequency
for adjacent coded outputs, and thus maximize frequency diversity. For coded-modulation formats 0-5, let \f$D=(N_\mathrm{d}-N_\mathrm{z})/IntDepth\f$ where
\f$IntDepth\f$ depends on the particular transport channel at hand. Each output bit from the convolutional coder, \f$c_i\f$, shall be placed in the set
\f$C_{i\mathrm{mod}D}\f$. The bits in each set are permuted based on a pseudo-random sequence and then combined to form 2,4 or 6-tuples depending on the modulation
order of the coded-modulation format. The interleaving permutation sequence depends on \f$D\f$ and the number of coded bits.
For the SACH, \f$D\f$ is the number of allocated frequency groups. The above interleaving strategy shall be applied with this value.
The QAM modulated symbols are mapped according to the Gray mapping as shown in the following figures. QAM symbols must be scaled to
ensure constant average energy independent of the modulation order. The scaling factors are \f$1/\sqrt(2),1/\sqrt{10}\f$ and \f$1/\sqrt{42}\f$ for
QPSK, 16-QAM and 64-QAM respectively.
\image html QAMmodulation.png "QAM Modulation Mapping"