Description
An Orthogonal Covering Code (OCC) is a mathematical sequence, often based on Walsh-Hadamard codes or Discrete Fourier Transform (DFT) vectors, used in wireless communication systems to orthogonalize signals transmitted over the same physical resources. In 5G New Radio (NR), OCCs are primarily applied in the uplink direction for two key purposes: demodulation reference signals (DM-RS) for multi-user MIMO (MU-MIMO) and for spreading control information on the Physical Uplink Control Channel (PUCCH). For DM-RS, when multiple user equipments (UEs) are scheduled on the same time-frequency resource blocks in an MU-MIMO scheme, their reference signals must be distinguishable at the gNodeB receiver. This is achieved by applying different, orthogonal OCCs across adjacent symbols or subcarriers to the DM-RS sequences of the different UEs. The orthogonality property ensures that the gNodeB can separate and estimate the channel for each UE independently, which is fundamental for coherent detection of their data. For PUCCH formats that carry uplink control information (UCI) like HARQ-ACK and CSI, OCCs are applied across symbols within a slot to provide spreading gain and enable multiplexing of multiple UEs on the same resource block. The specific OCC length and application pattern are defined by the PUCCH format and its configured duration. The gNodeB assigns the OCC index to the UE via downlink control information (DCI), managing the orthogonality between simultaneously transmitting users. The generation and application of OCCs are handled in the baseband processing chain, involving layer mapping, precoding, and resource element mapping stages as per 3GPP TS 38.211. Their correct application is critical for maintaining low inter-user interference, which directly impacts uplink spectral efficiency and system capacity in dense deployment scenarios.
Purpose & Motivation
The purpose of the Orthogonal Covering Code is to enable non-interfering multiplexing of multiple data or control streams within identical time-frequency resources. This solves the fundamental problem of resource scarcity in the radio interface by allowing more users or data layers to be served simultaneously, thereby increasing spectral efficiency. In the context of 5G NR's aggressive capacity and connectivity goals, techniques like MU-MIMO are essential. However, MU-MIMO requires accurate channel estimation for each user, which would be impossible if their reference signals interfered with each other. OCCs applied to DM-RS provide this necessary separation. For control channels, efficiently transmitting small payloads from many users (e.g., for massive IoT) requires a method to share resources without complex scheduling overhead. OCC-based spreading on PUCCH allows this low-overhead multiplexing. The motivation for its introduction and refinement in Rel-15 and beyond was to support the advanced antenna systems and diverse use cases of 5G. Previous systems like LTE used similar concepts (e.g., orthogonal codes for reference signals), but 5G NR's more flexible numerology and broader range of deployment scenarios necessitated a redefined and more adaptable OCC framework. It addresses the limitations of simple time/frequency division multiplexing by providing a code-domain separation layer that is more robust to certain types of fading and allows for denser user packing.
Classification
Detected Changes Across Releases
from 3GPP Change RequestsSpecific changes extracted from the „Change history“ tables of 3GPP specifications (12 CRs across 4 releases). Complements the general historical overview above with the evidence-based evolution of this function.
In Release 15, the Orthogonal Covering Code (OCC) function was newly introduced for specific PUCCH formats to enhance uplink control signaling. This is reflected in the establishment of detailed performance requirements for PUCCH formats 0, 1, 2, 3, and 4 within the base station demodulation specifications. The introduction of OCC for these formats provided improved multiplexing capacity and interference robustness for NR uplink control channels.
- CR to TS 38.104 on Combined updates from RAN4 #90 This document combines the proposed changes in the following Draft CRs from RAN4 #90: - R4-1900284, "Draft CR on NR PUCCH format2 performance requirements for TS 38.104" - R4-1900763, "Draft CR to TS 38.104: Update of performance requirement numbers for DFT-s-OFDM based PUSCH" - R4-1900876, "Draft CR to TS 38.104: On RX spurious emissions requirement" - R4-1900968, "Draft CR for 38.104: Performance requirements for NR PUCCH format 1" - R4-1901329, "Draft CR to 38.104: Annex C.6 correction" - R4-1901330, "Draft CR to 38.104: Abbreviations addition" - R4-1901387, "Draft CR to TS 38.104 BS demodulation PUCCH format 0 requirements" - R4-1901474, "Draft CR to TS 38.104: Corrections on transmitter co-existence and co-location requirements" - R4-1901483, "Draft CR to TS 38.104: Corrections on general intermodulation requirement" - R4-1902239, "Draft CR to TS 38.104: Addition of missing EIRP/EIS definitions in terminology in clause 3.1" - R4-1902241, "Draft CR to 38.104; clarification of BS power limits" - R4-1902245, "Draft CR to 38.104: Correction to FR2 OTA Interfering signal mean power units" - R4-1902246, "Draft CR to 38.104; Correction to definition of OTA reference sensitivity" - R4-1902260, "draft CR to TS 38.104 - update emissions scaling" - R4-1902338, "Draft CR: Update on FR1 range extension for TS38.104" - R4-1902389, "draftCR for 38.104 on PUSCH requirements with CP-OFDM and FR1" - R4-1902394, "Draft CR to TS 38.104 – PUSCH requirements with CP-OFDM for FR2" - R4-1902396, "CR: Updates to PUCCH formats 3 and 4 performance requirements in TS 38.104" - R4-1902444, "Draft CR to TS 38.104: Editorial CR for BS demodulation requirements" - R4-1902561, "Draft CR for updating PRACH performance requirements in TS38.104" - R4-1902571, "Corrections to 38.104 Delay profile calculation" - R4-1902642, "Draft CR to TS 38.104: Correction on multi-band operation related requirements" TS 38.104CR0019
- CR to TS 38.104 Combined updates from RAN4 #90bis and RAN4#91 From RAN4 #90bis: - R4-1903105, "Draft CR to TS 38.104: Corrections on terminologies and editorial errors" - R4-1903319, "Draft CR to TS 38.104: removal of unused definition: "minimum EIRP level under extreme condition"" - R4-1903320, "Draft CR to TS 38.104: OSDD information correction" - R4-1903457, "Draft CR to TS 38.104: Removal of FFS for FR2 TDD OFF power level requirement in clause 9.5" - R4-1903499, "Draft CR to 38.104: Correction to unwanted emissions mask for bands n7 and n38" - R4-1903836, "Draft CR to TS 38.104: Correction on description on multi-band operation in section 4.8" - R4-1904024, "Draft CR to TS 38.104 Applicability rules for BS demodulation" - R4-1904234, "draftCR: Correlation matrix for 8Rx in TS 38.104" - R4-1904723, "Draft CR to TS 38.104: Update of performance requirements for DFT-s-OFDM based PUSCH" - R4-1904726, "draftCR for 38.104 on PUSCH requirements with CP-OFDM and FR1" - R4-1904729, "Draft CR on PRACH performance requirements in TS38.104" - R4-1904734, "Draft CR on TS 38.104 Performance requirement for PUCCH format 1" - R4-1904735, "Draft CR on NR PUCCH format2 performance requirements for TS 38.104" - R4-1904739, "Draft CR to TS 38.104 BS demodulation PUCCH format 0 requirements" - R4-1904745, "draftCR: Updates to PUCCH formats 3 and 4 performance requirements in TS 38.104" - R4-1904799, "Draft CR to TS 38.104: FRC update for PUSCH FR1 mapping type B and FR2 DMRS 1+1" - R4-1904816, "Draft CR : Clarification on step 5 and step 6 for delay profiles calculation (38.104)" - R4-1904842, "Draft CR to TS 38.104 BS demodulation CP-OFDM PUSCH FR2 requirements" - R4-1905126, "draft CR to 38.104 for TAE requirements" - R4-1905139, "draft CR to TS 38.104 on EVM measurement (Annex B and C)" - R4-1905140, "Draft CR: editorial correction on FR1 spurious emission requirement in TS38.104" - R4-1905143, "Draft CR for TS 38.104: Addition of NOTE for transmitter intermodulation requirements in certain regions" - R4-1905144, "Draft CR to TS 38.104: FRC reference corrections for the Rx requirements" - R4-1905145, "Draft CR to TS 38.104: Clarification on application of interfering signal offsets for ACS, blocking and intermodulation requirements" - R4-1905148, "Draft CR to TS 38.104: Corrections on out-of-band blocking requirement" From RAN4 #91: - R4-1906002, "Draft CR to 38.104: Subclause 6.7 and 9.8 transmitter intermodulation – correction of interfering signal type" - R4-1906096, "Draft CR to 38.104: Correction of frequency range for OTA spurious emissions" - R4-1906311, "Draft CR to 38.104: Correction on FRC (Annex A)" - R4-1906346, "Removal of n65 in Rel-15 38.104" - R4-1906915, "Draft CR to TS 38.104: Clarification on application of interfering signal offsets for OTA ACS, blocking and intermodulation requirements" - R4-1906918, "Draft CR to TS 38.104: Clarification on type of interfering signal for ACS, in-band blocking and ICS requirements" - R4-1907110, "Draft CR to TS 38.104: correction of the fundamental frequency limit of 2.55GHz for the spurious emissions" - R4-1907246, "Draft CR to TS 38.104: Update of performance requirements for DFT-s-OFDM based PUSCH" - R4-1907249, "Draft CR to TS 38.104: Correction on the terminology in PUSCH FRC tables" - R4-1907252, "Draft CR to TS38.104: Updates of PRACH performance requirements" - R4-1907255, "Draft CR on NR PUCCH format2 performance requirements for TS 38.104" - R4-1907258, "Draft CR on NR UCI on PUSCH performance requirements for TS 38.104" - R4-1907261, "draftCR: Updates to PUCCH formats 3 and 4 performance requirements in TS 38.104" - R4-1907266, "Draft CR on TS 38.104 Performance requirement for PUCCH format 1" - R4-1907267, "Draft CR on TS 38.104 Performance requirement for multi-slot PUCCH format 1" - R4-1907272, "Draft CR to TS 38.104 BS demodulation PUCCH format 0 requirements" - R4-1907275, "Draft CR to TS 38.104 BS demodulation CP-OFDM PUSCH FR2 requirements" - R4-1907277, "draftCR for 38.104 on PUSCH requirements with CP-OFDM and FR1" - R4-1907629, "Draft CR to 38.104: Term “reference signal” replacing by term “ideal signal” in EVM context" - R4-1907634, "Draft CR to 38.104: corrections to the EVM annex" - R4-1907659, "Draft CR to TS 38.104 on Spurious emission Category B in FR2" - R4-1907661, "Draft CR to 38.104 Definition of contiguous transmission bandwidth" - R4-1907662, "Draft CR to 38.104: BS TAE requirements" - R4-1907664, "Draft CR to 38.104: Clarification of interferer RB frequency for narrowband blocking" - R4-1907672, "Draft CR for TS 38.104: Correction on EVM" - R4-1907689, "Correction to CA carrier spacing" TS 38.104CR0029
In Release 16, the OCC function saw specific enhancements for PUCCH formats 3 and 4, with updated performance requirements detailed in TS 38.104. These changes were part of a broader set of refinements that included new minimum demodulation requirements for PUCCH format 0, format 1, format 2, and multi-slot PUCCH, as well as for UCI on PUSCH. The updates aimed to clarify and correct technical parameters, such as EVM window length and reference measurement channels, to ensure robust base station receiver performance.
- CR to TS 38.104 BS demodulation PUCCH format 0 requirements TS 38.104CR0100
- CR: Updates for PUCCH formats 3 and 4 performance requirements in TS 38.104 (Rel-16) TS 38.104CR0116
- CR to T 38.104: Implementation of endorsed draft CRs from RAN4#92 (Rel-16) (Mirrors changes in R4-1908440 for Rel-15 TS 38.104) - R4-1907940, "Draft CR to TS 38.104: Correction on the terminology in FRC tables in A.1 and A.2" - R4-1908307, "Draft CR to TS 38.104: Clarification on application of OTA receiver requirements for BS supporting polarization" - R4-1908387, "Draft CR for TS38.104: editorial correction for reference meausrement channel" - R4-1908619, "Draft CR to TS38.104: Correction on interferer frequency offset values for ACS" - R4-1908629, "Draft CR to TS38.104: Corrections on EVM window length (Annex B.5.2, C.5.2)" - R4-1908774, "DraftCR to 38.104: Editorial Corrections to redudant units in clause 10.8.3" - R4-1908805, "Draft CR to 38.104: Limits in FCC title 47 for OTA operating band unwanted emissions (9.7)" - R4-1909270, "Draft CR to TS 38.104: Receiver spurious emissions frequency correction" - R4-1909309, "DraftCR to TS 38.104: text corrections, Rel-15" - R4-1909310, "DraftCR to 38.104: correction of TAB connectors mapping to TAB connector TX min cell group, Rel-15" - R4-1909416, "draft CR 38.104 - correct reference to annex F" - R4-1910066, "Draft CR to TS 38.104: Update of performance requirements for DFT-s-OFDM based PUSCH" - R4-1910069, "Draft CR on NR PUCCH format2 performance requirements for TS 38.104" - R4-1910072, "Draft CR on NR UCI on PUSCH performance requirements for TS 38.104" - R4-1910075, "draftCR for 38.104 on PUSCH requirements with CP-OFDM and FR1" - R4-1910078, "Draft CR to TS38.104: Updates to NR PRACH performance requirements" - R4-1910081, "Draft CR to TS 38.104 BS demodulation PUCCH format 0 requirements" - R4-1910084, "Draft CR to TS 38.104 BS demodulation CP-OFDM PUSCH FR2 requirements" - R4-1910088, "Draft CR for 38.104: Performance requirements for NR PUCCH format 1" - R4-1910089, "Draft CR for 38.104: Performance requirements for NR multi-slot PUCCH" - R4-1910094, "draftCR: Updates to PUCCH formats 3 and 4 performance requirements in TS 38.104" - R4-1910431, "Corrections to EVM calculations in 38.141-1 annex B" - R4-1910462, "Draft CR to 38.104: Correction on regional requirements (4.5)" - R4-1910493, "Draft CR to TS 38.104 correction to Annex C.7" - R4-1910606, "Draft CR for TS 38.104: Channel spacing for adjacent NR carriers" TS 38.104CR0034
- CR on correction of NR PUCCH format2 performance requirements (Rel-16) for TS 38.104 TS 38.104CR0057
- CR for 38.104: Performance requirements for NR PUCCH format 1 TS 38.104CR0119
- CR for 38.104: Performance requirements for NR multi-slot PUCCH TS 38.104CR0120
+ 1 more changes
In Release 18, the OCC function was updated for PUCCH requirements, as indicated by the Change Request for 38.104. The grounding context details new minimum performance requirements for PUSCH under various configurations, including different channel bandwidths (e.g., 5 MHz, 10 MHz), subcarrier spacings (15 kHz, 30 kHz), and high-speed train scenarios up to 500 km/h, which support the updated PUCCH specifications.
- (NR_FR1_lessthan_5MHz_BW-Perf) CR for 38.104, update to PUCCH requirements TS 38.104CR0646
In Release 19, the OCC function was updated with corrections to the manufacturer declarations and applicability of requirements for PUSCH with enhanced DM-RS and DM-RS bundling. Specifically, these corrections address performance requirements for Base Station types 1-H and 1-O, ensuring proper testing conditions are applied. The changes refine the conformance testing framework without altering the underlying performance parameters or SNR values defined for various PUSCH configurations.
- (NR_MIMO_evo_DL_UL-Perf)CR for 38.141-2, Correction on manufacturer declarations for PUSCH with enhanced DM-RS for BS type 1-H TS 38.141CR0635
- (NR_cov_enh-Perf)CR for 38.141-2, Correction on applicability of requirements for different receiver antenna connectors for performance requirements for PUSCH with DM-RS bundling for BS type 1-O TS 38.141CR0686
Explore further
Broader topics and technologies where OCC plays a role.
Defining Specifications
3GPP specifications that define or reference OCC, with the latest known release. Sourced from the 3GPP document catalog — see methodology.
| Specification | Title | Release |
|---|---|---|
| TS 38.104 vj20 | NR Base Station RF Requirements | Rel-19 |
| TS 38.141 vj20 | NR Base Station RF Conformance Testing Part 1 | Rel-19 |
| TS 38.176 vj20 | IAB Conformance Testing Specification | Rel-19 |
| TR 38.808 vh00 | Study on NR above 52.6 GHz to 71 GHz | Rel-17 |
| TR 38.812 vg00 | Study on NOMA for NR | Rel-16 |