Опорный сигнал демодуляции в формате PUCCH 1
Сгенерируйте значения DM-RS в формате PUCCH 1 для специфичных для UE настроек.
Инициализируйте специфичные для UE и структуры строения канала. Сгенерируйте значения DM-RS в формате PUCCH 1.
ue.NCellID = 1; ue.NSubframe = 0; ue.CyclicPrefixUL = 'Normal'; ue.Hopping = 'Off'; chs.ResourceIdx = 0; chs.DeltaShift = 1; chs.CyclicShifts = 0; drsSeq = ltePUCCH1DRS(ue,chs);
Демонстрация операции скоординированного многоточечного (CoMP) релиза 11 восходящего канала. Интерсенсии между ячейками можно избежать, используя идентичность виртуальной ячейки и отдельную идентичность циклического скачкообразного изменения DM-RS для потенциально мешающего UE в соседней ячейке.
Строение для интересующего UE, UE 1 в камере 1.
ue1.NCellID = 1; ue1.NSubframe = 0; ue1.CyclicPrefixUL = 'Normal'; ue1.Hopping = 'Off'; chs1.ResourceIdx = 0; chs1.DeltaShift = 1; chs1.CyclicShifts = 0;
Строение для интерферента, UE 2 в камере 2.
ue2.NCellID = 2; ue2.NSubframe = 0; ue2.CyclicPrefixUL = 'Normal'; ue2.Hopping = 'Off'; chs2.ResourceIdx = 1; chs2.DeltaShift = 1; chs2.CyclicShifts = 0;
Измерьте помехи между сигналами DM-RS.
interferenceNoCoMP = abs(sum(ltePUCCH1DRS(ue1,chs1).*conj(ltePUCCH1DRS(ue2,chs2))))
interferenceNoCoMP = 2.0706
Перенастройте interferer для операции CoMP: используйте тождества виртуальной камеры, равный тождествам камеры для интересующего UE.
ue2.NPUCCHID = ue1.NCellID;
Измерьте помехи между сигналами DM-RS при использовании CoMP:
interferenceUsingCoMP = abs(sum(ltePUCCH1DRS(ue1,chs1).*conj(ltePUCCH1DRS(ue2,chs2))))
interferenceUsingCoMP = 2.3591e-14
Сравните корреляции между сигналами DM-RS для двух UE с CoMP и без, interferenceUsingCoMP
и interferenceNoCoMP
соответственно. Используя CoMP, интерференция уменьшается до эффективного нуля.
Сгенерируйте PUCCH формат 1 DM-RS для двух путей передающей антенны.
Инициализируйте специфичные для UE и структуры строения канала. Сгенерируйте PUCCH1 DM-RS и информационные выходы.
ue.NCellID = 1; ue.NSubframe = 0; ue.CyclicPrefixUL = 'Normal'; ue.Hopping = 'Off'; chs.ResourceIdx = [0 3]; chs.DeltaShift = 1; chs.CyclicShifts = 0; [drsSeq,info] = ltePUCCH1DRS(ue,chs);
Поскольку существует две антенны, последовательности DM-RS выводятся как двухколоночный вектор и info
структура output содержит два элемента. Просмотрите ind
и размер info
чтобы подтвердить это.
drsSeq(1:10,:)
ans = 10×2 complex
0.5000 + 0.5000i 0.5000 + 0.5000i
0.5000 + 0.5000i -0.5000 + 0.5000i
-0.5000 + 0.5000i 0.5000 - 0.5000i
-0.5000 + 0.5000i 0.5000 + 0.5000i
-0.5000 + 0.5000i -0.5000 + 0.5000i
0.5000 - 0.5000i 0.5000 + 0.5000i
0.5000 + 0.5000i -0.5000 - 0.5000i
-0.5000 - 0.5000i -0.5000 + 0.5000i
-0.5000 - 0.5000i -0.5000 - 0.5000i
0.5000 + 0.5000i -0.5000 + 0.5000i
size(info)
ans = 1×2
1 2
Просмотр содержимого двух info
элементы структуры.
info(1)
ans = struct with fields:
Alpha: [0 5.2360 4.1888 4.7124 1.0472 1.5708]
SeqGroup: [1 1]
SeqIdx: [0 0]
NResourceIdx: [0 2]
NCellCyclicShift: [192 46 212 91 84 25]
OrthSeqIdx: [0 0]
Symbols: [1x6 double]
OrthSeq: [3x2 double]
info(2)
ans = struct with fields:
Alpha: [1.5708 0.5236 5.7596 3.1416 5.7596 0]
SeqGroup: [1 1]
SeqIdx: [0 0]
NResourceIdx: [3 11]
NCellCyclicShift: [192 46 212 91 84 25]
OrthSeqIdx: [0 0]
Symbols: [1x6 double]
OrthSeq: [3x2 double]
ue
- Настройки, специфичные для UEНастройки строения UE, заданные как структура, содержащая эти поля.
Поле параметра | Требуемый или опционный | Значения | Описание |
---|---|---|---|
NCellID | Необходимый | Целое число от 0 до 503 | Тождества камеры физического слоя |
NSubframe | Необходимый | 0 (по умолчанию), неотрицательное скалярное целое число | Номер подкадра |
CyclicPrefixUL | Дополнительный |
| Длина циклического префикса |
Hopping | Дополнительный |
| Метод скачкообразного изменения частоты. |
NPUCCHID | Дополнительный |
Целое число от 0 до 503 | Тождества виртуальной камеры PUCCH. Если это поле отсутствует, |
chs
- строение передачи по каналуНастройки канала PUCCH, заданные как структура, содержащая следующие поля.
Поле параметра | Требуемый или опционный | Значения | Описание |
---|---|---|---|
ResourceIdx | Дополнительный | 0 (по умолчанию), целое число от 0 до 2047 или вектор из целых чисел. | Индексы ресурса PUCCH, заданные как целое число или вектор из целых чисел. Значения варьируются от 0 до 2047. Эти индексы определяют физические ресурсные блоки, циклический сдвиг и ортогональное покрытие, используемые для передачи. (). Задайте один индекс для каждой передающей антенны. |
DeltaShift | Дополнительный | 1 (по умолчанию), 2, 3 | Дельта- сдвиги, заданные как 1, 2 или 3. (Δ сдвиг) |
DeltaOffset | Дополнительный | 0 (по умолчанию), 1, 2 | (Δ смещение). Предупреждение: Использование этого поля параметра не рекомендуется. Он применяется только к 3GPP релизам, предшествующим версии 8.5.0. Этот параметр будет удален в следующем релизе . |
CyclicShifts | Дополнительный | 0 (по умолчанию), целое число от 0 до 7 | Количество циклических сдвигов, используемых для формата 1 в ресурсных блоках (RB) со смесью формата 1 и формата 2 PUCCH, заданное в виде целого числа от 0 до 7. () |
seq
- PUCCH формат 1 значения DRSPUCCH формат 1 значения DRS, возвращенные в виде числовой матрицы. Символы для каждой антенны указаны в столбцах seq
, с количеством столбцов, определяемым количеством индексов ресурсов PUCCH, заданным в chs
.
ResourceIdx
.
Пример: [0,707 + 0 .707i,...]
info
- Информация DRS в формате PUCCH 1Информация DRS в формате PUCCH 1, возвращаемая как массив структур с элементами, соответствующими каждой передающей антенне и содержащими эти поля.
Alpha
- Циклический сдвиг опорного сигнала для каждого символа OFDMЦиклический сдвиг опорного сигнала для каждого символа OFDM, возвращаемый как двухколоночный вектор. (<reservedrangesplaceholder0>)
SeqGroup
- номер основы последовательностей PUCCH для каждого пазаНомер основы последовательности PUCCH для каждого паза, возвращаемый как двухколоночный вектор. (<reservedrangesplaceholder0>)
SeqIdx
- базовый порядковый номер PUCCH для каждого пазаОсновной порядковый номер PUCCH для каждого паза, возвращаемый как двухколоночный вектор. (<reservedrangesplaceholder0>)
NResourceIdx
- Индексы ресурса PUCCH для каждого пазаИндексы ресурса PUCCH для каждого паза, возвращенные как двухколоночный вектор. (<reservedrangesplaceholder0>)
NCellCyclicShift
- Специфический для ячейки циклический сдвиг для каждого символа OFDMСпецифический для ячейки циклический сдвиг для каждого символа OFDM, возвращаемый как вектор. ()
OrthSeqIdx
- Индекс ортогональной последовательности для каждого пазаИндекс ортогональной последовательности для каждого паза, возвращаемый как двухколоночный вектор. ()
Symbols
- Модулированные символы данныхМодулированные символы данных, возвращенные как вектор. Существует один элемент для каждого символа OFDM. (<reservedrangesplaceholder0>)
Пример: [0.7071 + 0.7071i,...]
OrthSeq
- Ортогональная последовательность для каждого пазаОртогональная последовательность для каждого паза, возвращенная как числовая матрица. ()
Пример: [1.000 + 1.000i,...]
ltePUCCH1
| ltePUCCH1Decode
| ltePUCCH1DRSIndices
| ltePUCCH1Indices
| ltePUCCH2DRS
| ltePUCCH3DRS
У вас есть измененная версия этого примера. Вы хотите открыть этот пример с вашими правками?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.