Overview
Built a full-stack time-slotted system based on Software-defined radio platform (USRP and GNURadio) that can be used to verify various MAC schemes (e.g., Coded Slotted Aloha, Physical-layer Network Coding).
System Design
Architecture
┌─────────────────────────────────────┐
│ Application Layer │
├─────────────────────────────────────┤
│ MAC Protocol Layer │
│ (TDMA/CSMA/Coded Slotted Aloha) │
├─────────────────────────────────────┤
│ Physical Layer (GNURadio) │
├─────────────────────────────────────┤
│ Hardware (USRP) │
└─────────────────────────────────────┘
Key Features
- Flexible Frame Structure: Customizable slot duration and frame length
- Multiple MAC Protocols: Support for TDMA, CSMA, Slotted Aloha variants
- Real-time Scheduling: Precise timing control with microsecond accuracy
- Modular Design: Easy to integrate new MAC protocols
Supported MAC Schemes
- TDMA (Time Division Multiple Access)
- Fixed slot assignment
- Guaranteed bandwidth per node
- Low latency access
- Coded Slotted Aloha
- Random access with redundancy
- Improved throughput through coding
- Suitable for bursty traffic
- Physical-layer Network Coding
- Compute-and-forward relaying
- Improved spectral efficiency
- Reduced transmission rounds
Implementation Details
Timing and Synchronization
- GPS-disciplined oscillators for global synchronization
- Precision timestamping using FPGA
- Adaptive clock skew compensation
Software Stack
- Framework: GNURadio 3.8+
- Hardware: USRP N210/B210/E310
- Language: Python + C++ for signal processing blocks
Usage as Research Platform
This system has served as an implementation platform for several research projects, enabling:
- Rapid prototyping of MAC protocols
- Real-world performance evaluation
- Cross-layer optimization studies