d974e8828c791dd1edb9c26799bd7590eba92430
[sim/o1-interface.git] / ntsimulator / yang / o-ran / ru-fh / o-ran-compression-factors.yang
1 module o-ran-compression-factors {
2   yang-version 1.1;
3   namespace "urn:o-ran:compression-factors:1.0";
4   prefix "o-ran-compression-factors";
5
6
7   organization "O-RAN Alliance";
8
9   contact
10     "www.o-ran.org";
11
12   description
13     "This module defines the module capabilities for
14     the O-RAN Radio Unit U-Plane configuration.
15
16     Copyright 2019 the O-RAN Alliance.
17
18     THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 'AS IS'
19     AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
20     IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
21     ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
22     LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
23     CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
24     SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
25     INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
26     CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
27     ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
28     POSSIBILITY OF SUCH DAMAGE.
29
30     Redistribution and use in source and binary forms, with or without
31     modification, are permitted provided that the following conditions are met:
32
33     * Redistributions of source code must retain the above copyright notice,
34     this list of conditions and the above disclaimer.
35     * Redistributions in binary form must reproduce the above copyright notice,
36     this list of conditions and the above disclaimer in the documentation
37     and/or other materials provided with the distribution.
38     * Neither the Members of the O-RAN Alliance nor the names of its
39     contributors may be used to endorse or promote products derived from
40     this software without specific prior written permission.";
41
42   revision "2019-06-19" {
43     description
44       "version 1.0.1
45
46       1) changes related to compression bitwidth presentation";
47
48     reference "ORAN-WG4.M.0-v01.00";
49   }
50
51   revision "2019-02-04" {
52     description
53       "version 1.0.0
54
55       1) imported model from xRAN
56       2) changed namespace and reference from xran to o-ran";
57
58     reference "ORAN-WG4.M.0-v01.00";
59   }
60
61   grouping compression-params {
62     leaf compression-type {
63       type enumeration {
64         enum STATIC {
65           description
66             "Indicates that static compression method will be used (both compression and IQ bitwidth)";
67         }
68         enum DYNAMIC {
69           description
70             "Indicates that dynamic compression method will be used";
71         }
72       }
73       mandatory true;
74       description
75         "Compression type that O-DU wants to be supported";
76     }
77
78 // *********** TO BE REMOVED ***********
79     leaf bitwidth {
80       when "../compression-type = 'STATIC'";
81       type uint8;
82       status deprecated;
83       description
84         "Bitwidth to be used in compression";
85     }
86 // *************************************
87
88     choice compression-format {
89       description
90         "Choice of compression format for particular element";
91
92       case no-compresison {
93         description "Compression for beam weights is not supported.";
94       }
95       case block-floating-point {
96         description "Block floating point compression and decompression is supported.";
97
98         leaf exponent {
99           type uint8 {
100             range "4";
101           }
102           description "Exponent bit width size in number of bits used when encoding in udCompParam.";
103         }
104       }
105
106       case block-scaling {
107         description "Block scaling compression and decompresion is supported.";
108         leaf block-scalar {
109           type uint8;
110             description
111               "Common scaler for compressed PRB";
112         }
113       }
114
115       case u-law {
116         description "u-Law compression and decompresion method is supported.";
117         leaf comp-bit-width {
118           type uint8 {
119             range "0..15";
120           }
121           description "Bit with for u-law compression";
122         }
123         leaf comp-shift {
124           type uint8 {
125             range "0..15";
126           }
127           description
128             "the shift applied to the entire PRB";
129         }
130       }
131
132       case beam-space-compression {
133         description "Beamspace compression and decompression is supported. Applies to beamforming weights only.";
134         leaf-list active-beam-space-coeficient-mask {
135           type uint8;
136           description
137             "active beamspace coefficient indices associated with the compressed beamforming vector";
138         }
139         leaf block-scaler {
140           type uint8;
141           description
142             "Common scaler for compressed beamforming coefficients";
143         }
144       }
145
146       case modulation-compression {
147         description "Modulation compression and decompression is supported.";
148         leaf csf {
149           type uint8 {
150             range "0..1";
151           }
152           description "Constallation shift flag";
153         }
154
155         leaf mod-comp-scaler {
156           type uint16 {
157             range "0..32767";
158           }
159           description "Modulation compression scaler value.";
160         }
161       }
162     }
163   }
164
165   grouping compression-details {
166     description "";
167
168     leaf iq-bitwidth {
169       type uint8;
170       description
171         "Bitwidth to be used in compression";
172     }
173
174     uses compression-params;
175   }
176 }