Skip to content

NipunAgarwal16/mimo-sdma-analysis

Repository files navigation

Multi-User MIMO & SDMA Performance Analysis

A comprehensive MATLAB simulation framework for analyzing Space-Division Multiple Access (SDMA) performance in Multi-User MIMO systems, with focus on Wi-Fi 6 (802.11ax) and 5G specifications.

Project Overview

This project simulates and analyzes the performance of multi-user MIMO systems using space-division multiple access techniques. The simulation framework examines how system capacity varies with the number of simultaneous users, different channel conditions (Rician fading with varying K-factors), and inter-cell interference scenarios.

Key Features

  • Multi-User MIMO Simulation: Models downlink transmission to multiple users simultaneously using spatial multiplexing
  • SDMA Capacity Analysis: Evaluates spectral efficiency and throughput as a function of active users
  • Rician Fading Channels: Implements realistic channel models with configurable K-factor (line-of-sight to multipath ratio)
  • Inter-Cell Interference: Simulates co-channel interference from neighboring cells
  • 802.11ax Validation: Parameters aligned with Wi-Fi 6 specifications for practical relevance

Technical Background

Space-Division Multiple Access (SDMA)

SDMA exploits the spatial dimension to serve multiple users simultaneously on the same frequency and time resources. By using multiple antennas at the base station (access point), the system creates directional beams toward each user, allowing parallel data streams without interference.

Rician Fading

The Rician channel model captures environments where both line-of-sight (LOS) and multipath components exist. The K-factor represents the ratio of LOS power to scattered power:

  • K = 0 dB: Equal LOS and scattered components
  • K >> 0 dB: Strong LOS (typical indoors near AP)
  • K → -∞ dB: Pure Rayleigh fading (no LOS)

System Capacity

The theoretical capacity in a multi-user MIMO system depends on channel conditions, number of antennas, and interference. The simulation computes both theoretical Shannon capacity and practical throughput accounting for overhead and modulation constraints.

Requirements

MATLAB Toolboxes

  • MATLAB R2020b or later
  • Communications Toolbox
  • Phased Array System Toolbox
  • Signal Processing Toolbox (recommended)

Hardware Requirements

  • Minimum 8 GB RAM
  • Multi-core processor recommended for parallel simulations

Installation

  1. Clone this repository:
git clone https://github.com/NipunAgarwal16/mimo-sdma-analysis.git
cd mimo-sdma-analysis
  1. Open MATLAB and navigate to the project directory

  2. Verify toolbox availability:

run('check_dependencies.m')

Usage

Quick Start

Run the main simulation with default parameters:

run_mimo_sdma_simulation

This will generate performance plots showing capacity vs. number of users for different channel conditions.

Customized Simulations

Configure parameters in config_simulation.m or pass them directly:

% Define simulation parameters
params = struct();
params.numBS_Antennas = 8;        % Base station antennas
params.numUsers = [1, 2, 4, 8];   % User configurations to test
params.rician_K = [0, 3, 10];     % K-factors in dB
params.SNR_dB = 20;               % Signal-to-noise ratio
params.interferingCells = 2;      % Number of interfering cells

% Run simulation
results = run_mimo_sdma_simulation(params);

Analyzing Results

The simulation outputs a structure containing:

  • capacity_bps_hz: Spectral efficiency (bits/s/Hz)
  • throughput_mbps: Practical throughput (Mbps)
  • sinr_per_user: Signal-to-interference-plus-noise ratio
  • beamforming_weights: Computed spatial filters

Project Structure

mimo-sdma-analysis/
├── README.md
├── run_mimo_sdma_simulation.m    # Main simulation script
├── config_simulation.m            # Configuration parameters
├── check_dependencies.m           # Toolbox verification
├── src/
│   ├── generate_rician_channel.m  # Channel model generation
│   ├── compute_beamforming.m      # Zero-forcing beamforming
│   ├── calculate_capacity.m       # Capacity computation
│   └── add_interference.m         # Inter-cell interference model
├── utils/
│   ├── plot_results.m             # Visualization functions
│   └── validate_802_11ax.m        # Wi-Fi 6 compliance checks
├── results/                       # Output plots and data
└── docs/                          # Additional documentation

Simulation Parameters

Default Configuration

Parameter Value Description
Number of BS Antennas 8 Transmit antennas at base station
Number of Users 1-8 Simultaneously served users
Carrier Frequency 5 GHz Wi-Fi 6 band
Bandwidth 80 MHz Channel bandwidth
Rician K-factor 0, 3, 10 dB Channel conditions
SNR Range 0-30 dB Signal quality
Interfering Cells 0-3 Co-channel interference

Results and Validation

The simulation validates against 802.11ax theoretical limits:

  • Maximum capacity with 8×8 MU-MIMO configuration
  • Spectral efficiency under different MCS (Modulation and Coding Scheme) levels
  • Multi-user interference mitigation effectiveness

Example results show that system capacity increases nearly linearly with users when sufficient antennas are available, but saturates when interference becomes dominant.

Mathematical Foundation

The system model considers a downlink MU-MIMO system where the received signal at user k is:

y_k = H_k W x + n_k + i_k

Where:

  • H_k: Channel matrix for user k (Rician fading)
  • W: Beamforming weight matrix
  • x: Transmitted symbol vector
  • n_k: Additive white Gaussian noise
  • i_k: Inter-cell interference

The achievable sum capacity is computed using the water-filling algorithm over spatial channels.

Contributing

Contributions are welcome! Please feel free to submit pull requests or open issues for bugs and feature requests.

Development Guidelines

  1. Follow MATLAB style guidelines
  2. Add comprehensive comments to new functions
  3. Include test cases for new features
  4. Update documentation for parameter changes

References

  1. IEEE 802.11ax-2021 Standard for Wireless LAN
  2. Goldsmith, A. "Wireless Communications" (Cambridge University Press)
  3. Tse, D., Viswanath, P. "Fundamentals of Wireless Communication"
  4. 3GPP TS 38.211 - NR Physical channels and modulation

License

MIT License - See LICENSE file for details

Authors

Academic project for wireless communications research (2024-2025)

Acknowledgments

Built using MATLAB's Phased Array System Toolbox and Communications Toolbox. Inspired by research in massive MIMO and 5G/Wi-Fi 6 technologies.


For questions or collaboration opportunities, please open an issue on GitHub.

About

Multi-User MIMO & SDMA Performance Analysis (Wi-Fi 6/5G)

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages