Гельгор А.Л. Сотовые сети мобильной связи стандарта UMTS (2011) (1151872), страница 27
Текст из файла (страница 27)
3.37) определяет номер первичного скремблирующего кода в группе GN.Рис. 3. 37. График функции KodeKorrЧтение широковещательного канала BCHВ результате процедуры поиска соты ПТ может обнаружить сигналы нескольких БС. Тогда следующим шагом для начала работы является чтение информации широковещательного канала BCH, обнаруженных БС для того, чтобы определить, принадлежат ли БС к сетиобслуживающей данный ПТ, и если да, то свободны ли БС для процедуры регистрации абонента.
Для достижения поставленной цели необходимо выполнить процедуры демодуляции и декодирования дляканала BCH. Остановимся подробнее на рассмотрении этих этапов.Демодуляция канала P-CCPCHКанал BCH отображается на первичный общий физический каналуправления P-CCPCH, коэффициент расширения и номер каналообразующего кода которого одинаковы для всех базовых станций и равнысоответственно SF = 256 и Cch,256,1. Номер первичного скремблирующего кода и положение начала кадра для P-CCPCH были получены в213ходе процедуры поиска соты. Таким образом, можно непосредственнопроизвести считывание бит, переносимых каналом P-CCPCH.
Логично производить чтение целыми кадрами (покадрово) в силу того, чтодлительность первичного скремблирующего кода совпадает с длительностью одного кадра. Учитывая, что SF = 256, и первые 256 чипов каждого слота не используются для передачи данных в канале PCCPCH (в это время передаются сигналы P-SCH и S-SCH), один кадрсодержит 270 информационных бит. Итак, алгоритм демодуляции одного кадра канала P-CCPCH может быть описан следующим образом:алг %Демодуляция одного кадра канала P-CCPCHначнц для k от 1 до 38400FrameChips[k] := X[k+FrameOffset]кцнц для k от 1 до 38400BaseChips[k] := X[k+FrameOffset] · Sdl∗ ,16(8GN +n ) [k ]кцнц для m от 0 до 14нц для n от 0 до 9нц для k от 1 до 256PosInFrame := k + 256·n +2560·mPilotChips[PosInFrame] := BaseChips[PosInFrame] · Cch,256,0[k]DataChips[PosInFrame] := BaseChips[PosInFrame] · Cch,256,1[k]кцкцкцPos := 1нц для m от 0 до 14нц для n от 1 до 9PilotSample := 0; DataSample := 0DiBitStartPos := n · 256 + m · 2560;нц для k от 1 до 256214PilotSample := PilotSample + PilotChips[k + DiBitStartPos]DataSample := DataSample + DataChips[k + DiBitStartPos]кцConstellationPoint := (1 + j) · DataSample / PilotSampleесли Real(ConstellationPoint) > 0 то Point1 := 1иначе Point1 := –1всеесли Imag(ConstellationPoint) > 0 то Point2 := 1иначе Point2 := –1всеbit1 := 2·Point1 – 2; bit2 := 2·Point2 – 2;OutPut[Pos] := bit1; OutPut[Pos + 1] := bit2; Pos := Pos + 2;кцкцкон алгПоясним вкратце данный алгоритм.Прежде всего, в соответствии с длительностью присутствия вобщем сигнале рассматриваемого кадра из входного потока данныхвыделяется подпоследовательность FrameChips.
Переменная FrameOffset есть положение начала кадра во входной последовательности X, а значение 38400 — количество чипов в одном кадре. Из выбранной подпоследовательности необходимо выделить сигнал нужной базовой станции BaseChips. Это соответствует поэлементномуумножению FrameChips на значения первичного скремблирующегокода Sdl,16(8GN + n), номер которого получен в ходе процедуры поискасоты.Для выделения сигналов каналов P-CPICH и P-CCPCH последовательность BaseChips для каждого из 10 дибит (соответствуетSF = 256) каждого из 15 слотов кадра поэлементно умножается на соответствующий каналообразующий код, давая в результате две последовательности PilotChips и DataChips.
Определение комплексногоотсчета одного дибита для P-CPICH или P-CCPCH канала соответст215вует сложению соответствующих 256 элементов последовательностиPilotChips или DataChips. Для того, чтобы получить точку на сигнальном созвездии, по которой можно будет произвести демодуляцию,необходимо учесть искажение сигнала, вносимое каналом. При этомдля каждой пары комплексных отсчетов PilotSample и DataSampleсчитаются выполненными соотношения:PilotSample = PilotConstellationPoint · H,DataSample = DataConstellationPoint · H,где PilotConstellationPoint и DataConstellationPoint — точки сигнального созвездия, установленные при передаче, H – комплексный коэффициент передачи канала.
Таким образом, считается, что влияние наданную пару комплексных отсчетов со стороны канала одинаковое.Тогда из этих соотношений, очевидно, следует:DataConstellationPoint = DataSample ×× PilotConstellationPoint / PilotSample.Наконец, учитывая, что PilotConstellationPoint = 1 + j, получаемDataConstellationPoint = (1 + j) DataSample / PilotSample.Далее необходимо произвести демодуляцию в соответствии ссигнальным созвездием, при этом функции Real и Imag означают соответственно взятие вещественной или мнимой компоненты комплексного числа.
Наконец, полученная пара точек Point1 и Point2 сигнального созвездия демодулируется, и два бита bit1 и bit2 записываются в выходную последовательность OutPut.Декодирование канала BCHДля получения пакетов логического канала BCH необходимоучесть, что перед тем, как их передавать, производится ряд преобразований для получения возможности исправлять ошибки, появляющихся при прохождении сигнала по каналу связи.
На рис. 3.38 представлена последовательность преобразований исходных пакетов логического канала BCH, производимая в передатчике. Очевидно, что вприемнике должны выполняться обратные преобразования в обрат-216ном порядке. Рассмотрим подробнее все обратные преобразования попорядку.Транспортный блок246Добавление CRC иконцевых бит24616 (CRC)8 (Концевые)Сверточное кодированиесо скоростью 1/25401-е перемежение540Деление на кадры2702702-е перемежение270270Рис. 3.38. Этапы преобразования пакета BCH на передающей сторонеКак следует из рис. 3.38, один пакет логического канала BCH передается в течение двух кадров физического канала P-CCPCH, приэтом заранее неизвестно, какие кадры являются четными (первыми впаре, несущей пакет BCH) и нечетными. Для определения четностииспользуется метод проб, т.
е. производится ряд попыток полученияпакета BCH из всех возможных пар кадров канала P-CCPCH: (1, 2),(2, 3), (3, 4) и т. д. Параметром качества при этом является проверкацелостности сообщения CRC16, а количество проверяемых пар кадров канала P-CCPCH зависит от предустановок приемного устройства: чем оно больше, тем больше вероятность получить хоть один правильно декодированный пакет BCH. Очевидно, что в самом простомслучае можно ограничится парами (1, 2) и (2, 3).Входными данными для блока 2-го деперемежения является270-битная последовательность OutPut.
Произведем ее переобозначение в соответствии со спецификацией 25.212:217vp = OutPut,причем индекс последовательности равен номеру кадра в паре кадров(канала P-CCPCH), из которого получена последовательность. Операция 2-го деперемежения одинакова для v1 и v2 , поэтому далее для определенности будем указывать только v1.Все элементы v1, начиная с первого, записываются в столбцыматрицы I2 размерностью 9 строк и 30 столбцов: v1[1] v1[10] v1[262] v [2] v [11] v [263] 11,I2 = 1 v1[9] v1[18] v1[270] после чего столбцы матрицы перемешиваются по следующему правилу:Старый номер столбцаНовый номер столбцаСтарый номер столбцаНовый номер столбцаСтарый номер столбцаНовый номер столбца00102201112111321142 3 4 5 625 6 18 3 1512 13 14 15 1624 7 19 4 1622 23 24 25 2627 8 20 5 1772617292728891810281192219212923Выходная деперемеженная последовательность u1 получается путем чтения элементов из матрицы I2 по строкам:u1[2] u1[30] u1[1] u [31] u [32] u [60] 11I2 = 1 u1[241] u1[242] u1[270] Блок объединения кадров производит конкатенацию (сцепление)последовательностей u1 и u2 так, что первые 270 бит выходной последовательности x совпадают с последовательностью u1, остальные — споследовательностью u2.Блок 1-го деперемежения отличается от блока 2-го деперемежения отсутствием перемешивания столбцов и тем, что матрица I1 со218стоит из двух столбцов и 270 строк.
Тогда последовательность x записывается в I1 по столбцам:x[271] x[1] x[2] x[272] ,I2 = x[270] x[540] а выходная деперемеженная последовательность h получается путемчтения элементов из матрицы I2 по строкам:h[2] h[1] h[3]h[4] .I2 = h[539] h[540] Для пакетов канала BCH используется сверточное кодированиесо скоростью 1/2 и порождающими полиномами (561, 753). При этомдля ускорения процедуры декодирования при кодировании в конецблока добавляются 8 нулевых концевых бит (декодирование целесообразно проводить по алгоритму Витерби).
Выходная последовательность b состоит из 270 бит.Для контроля целостности сообщения необходимо произвестиделение двух многочленов. Делимый многочлен имеет вид:a[1]D 261 + a[2]D 260 + ...... + a[246]D16 + p[16]D15 + p[15]D14 + ... + p[2]D + p[1] ,где последовательность a есть первые 246 элементов последовательности b, а последовательность p — c 247 по 262 элементы последовательности b. Многочлен-делитель (см. разд. 3.1) имеет видgCRC16(D) = D16 + D12 + D5 + 1.Если остаток при делении указанных многочленов окажется нулевым,то пакет считается декодированным безошибочно.219Вопросы и задания1. Перечислите основные этапы формирования кодированногокомпозитного транспортного канала CCTrC для группы нисходящихканалов DCH, BCH, FACH, PCH.2. Для чего проводится процедура выравнивания скоростей передачи данных? В чем заключается данная процедура? В чем заключаются особенности данной процедуры применительно к схемам формирования, использующим сверточное помехоустойчивое кодирование, турбокодирование?3.
Что такое биты индикации прерывистой передачи (биты DTX),каким образом они формируются?4. Перечислите основные типы кодированных композитныхтранспортных каналов CCTrC и ограничения, накладываемые при ихформировании.5. В чем заключается суть процедуры расширения данных? Длячего проводится эта процедура?6. Перечислите основные восходящие и нисходящие физическиеканалы.7. В чем заключается процедура скремблирования данных?8. Оцените корректирующую способность кодовых конструкций,участвующих в формировании физических каналов.9.