/ˌtiː diː ɛm ˈeɪ/
n. "Multiple access technique allocating time slots to users sharing single frequency channel unlike FDMA subcarriers."
TDMA, short for Time Division Multiple Access, divides shared radio channel into sequential time slots assigned to multiple stations, enabling simultaneous voice/data transmission across single carrier via precise synchronization—base station broadcasts frame timing while mobiles adjust transmit timing based on propagation delay. Classic 2G GSM uses 8-slot TDMA frames (4.615ms) with 200kHz carriers supporting 8 simultaneous calls, contrasting FHSS constant hopping by fixed-channel slotting within each hop.
Key characteristics of TDMA include: Fixed/Virtual Slot Allocation 8 slots/frame (GSM) or dynamic OFDMA RUs (WiFi 6); Frame Synchronization via beacon/reference burst aligning mobile clocks; Guard Periods prevent slot overlap from propagation/timing errors; Burst Transmission GMSK/8PSK packets fill 156.25 bits/slot; Timing Advance compensates round-trip delay (max 68 chips GSM).
Conceptual example of TDMA usage:
/* GSM TDMA frame structure - 8 slots x 4.615ms */
#define FRAME_MS 4.615
#define SLOT_MS 0.577
#define BITS_PER_SLOT 156
#define GUARD_BITS 8.25
typedef struct {
uint8_t slot_id; // 0-7
uint16_t timing_advance; // chips (0-63)
uint8_t burst_type; // Normal/Access/SCH
} tdma_slot;
void gsm_transmit_slot(tdma_slot *s) {
// Timing advance: delay TX by 2 * propagation_distance/c
delay_us(s->timing_advance * 3.69);
// Burst format: training sequence + data + tail bits
rf_transmit_gmsk(
tail_bits,
training_seq,
data[s->slot_id],
tail_bits,
guard_period
);
// Next slot @ 577us - slot_id wraps 0-7
}Conceptually, TDMA arbitrates channel contention by time-slicing—base stations dictate frame timing while mobiles advance timing to align "in the air," enabling 8x voice capacity over analog AMPS. Modern LTE TDD combines TDMA principles with OFDMA subcarrier allocation; Bluetooth piconets use master-slave TDMA within FHSS hops, where guard times absorb T/R switching unlike continuous SerDes links requiring CTLE always-on.