选定类型的C平面消息(section type 1、3和5)携带数据section描述,该描述传达的信息适用于U平面消息中携带的数据section。接下来介绍C平面的数据section描述与U平面数据section的耦合方法。
1)通过sectionId值进行耦合
这是默认的C平面和U平面耦合方法。如果要使用其他耦合方法,O-DU可以通过M平面对O-RU进行配置。
在这种方法中,来自C平面消息(记为CM)中的section描述(记为D)所携带的信息,如果满足以下规则,将应用到U平面消息(记为UM)的数据section(记为S)中的PRB(记为P)包含的RE(记为R)。PRB理解为一个OFDM symbol内,频率中连续的12个RE。
1. CM对应于UM,即两者具有相同的eAxC_id,并且CM.dataDirection的值与UM的方向匹配。
2. CM.frameId = UM.frameId,CM.subframeId = UM.subframeId且CM.slotId = UM.slotId,即CM与UM的时间信息一致。
3. 通过UM.symbolId指示的symbol包含在section描述D内。
这要求计算CM中的CM.startSymbolId, symInc和numSymbol,或者如果存在section扩展6,12或19,还需要检查D.symbolMask。
4. PRB P在section描述D中指示。
这要求检查D.startPrbc ≤ P < D.startPrbc+ D.numPrbc X (D.rb + 1),如果D.rb = 0,表示PRB是连续的,如果D.rb = 1,表示PRB是间隔的,这种情况下,应检查D.startPrbc modulo 2 = P modulo 2,即从startPrbc开始,由section描述D所指示PRB为startPrbc + 2,startPrbc + 4,startPrbc + 6,以此类推。
如果D中存在section扩展6,应该计算section扩展6中的D.rbgMask。同时,如果D中存在section扩展12,13,19,20中的任意一个,也需要检查。
5. D.reMask中设置为1的bit所对应的RE R,这里注意,MSB对应于RE 0。如果D中存在section扩展20,需要检查section扩展20的影响。
6. D.sectionId = S.sectionId。
此外,还适用以下限制(在一个eAxC中):
1. 在与同一个OFDM symbol相关的所有U平面消息中,一个PRB应仅出现一次。不能在多个U平面消息中传输相同的PRB数据。
2. 一个RE应该仅被一个section描述提及,见上面第3,4,5条。不能在多个section或多个C平面消息中描述相同的RE。
3. 适用于一个PRB的所有section描述(见上面第3,4条),应具有相同的sectionId值。
4. 适用于不同PRB的section描述(见上面第3,4条),应具有不同的sectionId值。这里不应与U平面的应用层分段混淆。
5. 在一个slot内,O-DU应保证sectionId值的唯一性。不能使用相同的sectionId来传输不同symbol的C平面消息。
6. 具有相同sectionId值的所有section描述,应具有相同的rb,startPrbc,numPrbc和numSymbol值。
2)通过频率和时间耦合
如果O-RU通过M平面报告相应的能力,则使用此方法,并将此方法用于通过M平面配置eAxC。
在这种方法中,来自C平面消息(记为CM)中的section描述(记为D)所携带的信息,如果满足以下规则,将应用到U平面消息(记为UM)的数据section(记为S)中的PRB(记为P)包含的RE(记为R)。PRB理解为一个OFDM symbol内,频率中连续的12个RE。
1. CM对应于UM,即两者具有相同的eAxC_id,并且CM.dataDirection的值与UM的方向匹配。
2. CM.frameId = UM.frameId,CM.subframeId = UM.subframeId且CM.slotId = UM.slotId,即CM与UM的时间信息一致。
3. 通过UM.symbolId指示的symbol包含在section描述D内。
这要求计算CM中的CM.startSymbolId, symInc和numSymbol,或者如果存在section扩展6,12或19,还需要检查D.symbolMask。
4. PRB P在section描述D中指示。
这要求检查D.startPrbc ≤ P < D.startPrbc+ D.numPrbc X (D.rb + 1),如果D.rb = 0,表示PRB是连续的,如果D.rb = 1,表示PRB是间隔的,这种情况下,应检查D.startPrbc modulo 2 = P modulo 2,即从startPrbc开始,由section描述D所指示PRB为startPrbc + 2,startPrbc + 4,startPrbc + 6,以此类推。
如果D中存在section扩展6,应该计算section扩展6中的D.rbgMask。同时,如果D中存在section扩展12,13,19,20中的任意一个,也需要检查。
5. D.reMask中设置为1的bit所对应的RE R,这里注意,MSB对应于RE 0。如果D中存在section扩展20,需要检查section扩展20的影响。
此外,还适用以下限制(在一个eAxC中):
1. 在与同一个OFDM symbol相关的所有U平面消息中,一个PRB应仅出现一次。不能在多个U平面消息中传输相同的PRB数据。
2. 一个RE应该仅被一个section描述提及,见上面第3,4,5条。不能在多个section或多个C平面消息中描述相同的RE。
3. O-DU应发送的sectionId值为4095。
4. O-DU应对section描述进行排序,以确保任何提及RE(reMask中的非零值)的section描述在未提及RE(reMask中的零值)的section描述之前出现。即应该首先描述被调度的RE,这允许O-RU更快速地识别为RE携带波束赋形配置的section描述,并使其在内存中本地化,这可以提高消息的处理性能。
3)通过带优先级的频率和时间耦合
如果O-RU通过M平面报告相应的能力,则使用此方法,并将此方法用于通过M平面配置的eAxC。
在这种方法中,来自C平面消息(记为CM)中的section描述(记为D)所携带的信息,如果满足以下规则,将应用到U平面消息(记为UM)的数据section(记为S)中的PRB(记为P)包含的RE(记为R)。PRB理解为一个OFDM symbol内,频率中连续的12个RE。
1. CM对应于UM,即两者具有相同的eAxC_id,并且CM.dataDirection的值与UM的方向匹配。
2. CM.frameId = UM.frameId,CM.subframeId = UM.subframeId且CM.slotId = UM.slotId,即CM与UM的时间信息一致。
3. 通过UM.symbolId指示的symbol包含在section描述D内。
这要求计算CM中的CM.startSymbolId, symInc和numSymbol,或者如果存在section扩展6,12或19,还需要检查D.symbolMask。
4. PRB P在section描述D中指示。
这要求检查D.startPrbc ≤ P < D.startPrbc+ D.numPrbc X (D.rb + 1),如果D.rb = 0,表示PRB是连续的,如果D.rb = 1,表示PRB是间隔的,这种情况下,应检查D.startPrbc modulo 2 = P modulo 2,即从startPrbc开始,由section描述D所指示PRB为startPrbc + 2,startPrbc + 4,startPrbc + 6,以此类推。
如果D中存在section扩展6,应该计算section扩展6中的D.rbgMask。同时,如果D中存在section扩展12,13,19,20中的任意一个,也需要检查。
5. D.reMask中设置为1的bit所对应的RE R,还应满足在CM消息中,D在所有提及RE R的数据section描述中具有最高优先级。这里注意,MSB对应于RE 0。如果D中存在section扩展20,需要检查section扩展20的影响。如果数据section描述D中存在section扩展6,12,19中的任意一个,则该数据section描述的优先级为priority字段的值。如果不存在section扩展6,12,19,则优先级为0。
注:搜索最高优先级描述的范围仅限于一个C平面消息,以避免波束赋形配置错误,如果将搜索范围覆盖多个消息并且其中一个消息丢失,则这是不可避免的。在下面的第三条限制中也有相关解释。
此外,还适用以下限制(在一个eAxC中):
1. 在与同一个OFDM symbol相关的所有U平面消息中,一个PRB应仅出现一次。不能在多个U平面消息中传输相同的PRB数据。
2. 在相同C平面消息中传输的数据section描述,如果提及相同的RE,则应具有不同的优先级以避免歧义。
3. 如果一个完整的波束赋形配置不能纳入一个C平面消息,即需要由多个C平面消息共同发送,则发送方应复制最高优先级的数据section描述,特别是,如果一个最高优先级数据section描述指示消息中提及的任何RE,则每个C平面消息中都应该包含该最高优先级数据section描述。这是为了确保O-RU能够正确解释每个消息中接收到的配置。如果需要这样的复制以避免误解,则不违反下面的第4条限制。可选地,每个C平面消息也可以包含一些最高优先级数据section描述,以指示那些未被消息中的非最高优先级数据section描述提及的RE。作为复制最高优先级section描述的替代,可使用section扩展20,可以参考section扩展20的详细解释。
4. 发送方应避免发送非必要的数据section描述,例如带有相同配置的数据section描述。但第3条中描述的情况除外。
5. O-DU应发送的sectionId值为4095。
6. O-DU应对section描述进行排序,以确保任何提及RE(reMask中的非零值)的section描述在未提及RE(reMask中的零值)的section描述之前出现。即应该首先描述被调度的RE。提及任何RE的section描述应通过有效优先级进行排序,最高优先级在前。将具有非零reMask的section描述排在前面,这允许O-RU更快速地识别为RE携带波束赋形配置的section描述,并使其在内存中本地化,这可以提高消息的处理性能。将最高优先级的数据section描述放在前面,旨在优化O-RU C平面消息处理,即,可以根据消息中最早出现的section描述确定RE的波束赋形配置。
4)通过带优先级的频率和时间耦合(优化的)
除第5条限制外,所有限制与上面“通过带优先级的频率和时间耦合”的限制相同。
5. O-DU应为较低优先级的section描述发送4095的sectionId值。对于最高优先级的section,应在定义的范围内设置唯一的sectionId,该范围通过M平面配置,从“0”开始,到“max-highest-priority-sections-per-slot”,并跨eAxC ID。限制此范围有助于O-RU减少重复最高优先级section描述检测的搜索空间。
当复制最高优先级section时,包括sectionId的所有字段都应该被复制。除此之外,对于处理C平面消息的O-RU,还应该应用额外的限制,即在eAxC限制之上,对每个C平面消息的最高优先级section的数量进行限制。
除了上述将唯一sectionId与最高优先级section相关联外,O-DU应为每个重复的C平面消息将“repetition”标志设置为“1”。O-RU可以根据其实现选择处理或忽略这个标志。
参考 《O-RAN.WG4.CUS.0-R003-v11.00.pdf》