ОБНУЛЕНИЕ LLR, ИСПОЛЬЗУЯ БИТОВЫЙ МАССИВ ДЕМОДУЛЯТОРА ДЛЯ УЛУЧШЕНИЯ ПРОИЗВОДИТЕЛЬНОСТИ ДЕКОДЕРА МОДЕМА
LLR NULLING, USING BIT MAP OF DEMODULATOR TO ENHANCE EFFICIENCY OF MODEM DECODER

Перекрестная ссылка на родственную заявку
Эта заявка испрашивает преимущество на основе предварительной заявки с серийным номером №61/040,574, поданной 28 марта 2008г., и упомянутая предварительная заявка включена в материалы данной заявки по ссылке.
ИНФОРМАЦИЯ ПРЕДШЕСТВУЮЩЕГО УРОВНЯ ТЕХНИКИ
Область техники
Настоящее изобретение относится к работе демодулятора как части нескольких подсхем, которые функционируют вместе для обработки потока данных, и более конкретно, настоящее изобретение относится к использованию битового массива демодуляции значений маски для управления работой демодулятора.
Информация предшествующего уровня техники
Системы беспроводной связи широко используются для передачи различных типов данных, включая речевые данные и видео. Обычно эти системы являются системами множественного доступа, допускающими поддержку взаимодействия с многочисленными пользователями с помощью совместного использования доступных системных ресурсов, например ширины полосы и мощности передачи. Примеры систем множественного доступа включают в себя CDMA-системы (множественный доступ с кодовым разделением сигналов), TDMA-системы (множественный доступ с временным разделением сигналов), FDMA-системы (множественный доступ с частотным разделением сигналов), LTE (долгосрочное развитие) и OFDMA-системы (множественный доступ с ортогональным частотным разделением).
Передача потока данных, который использует любые из вышеупомянутых систем связи, типично включает в себя кодирование, мультиплексирование и модулирование потока данных. В дополнение, данные контрольного сигнала типично мультиплексируются с помощью кодированных данных. Данные контрольного сигнала известных шаблонов обрабатываются известным образом и могут использоваться системой приемников для оценки характеристики канала. Модуляция типично осуществляется на основе конкретной схемы модуляции, например BPSK, QPSK, 16QAM или 64QAM для преобразования потока данных в последовательность символов модуляции, например OFDM-символов (мультиплексирование с ортогональным частотным разделением сигналов), которые могут дополнительно обрабатываться до передачи.
Прием потока данных типично включает в себя демодуляцию принятого {I, Q} потока символов данных, за которым следует обработка обратного преобразования и декодирование для восстановления исходного потока данных. Процесс обратного преобразования типично включает в себя генератор LLR (логарифмическое отношение правдоподобия), который отвечает за формирование LLR-значений, используемых декодером. В типичной системе LLR-значение формируется для каждого {I, Q, SNR} демодулируемого значения символа или "триплета". Тем не менее, некоторые символы являются символами контрольного сигнала, полезными для обнаружения канала, но не для восстановления исходного потока данных. LLR-значения, формируемые из этих символов контрольного сигнала, могут быть значительными по величине относительно символов данных не контрольного сигнала и могут ухудшать производительность декодера. Кроме того, процесс демодуляции, формирования LLR-значений и декодирования символов контрольного сигнала расходует мощность и пропускную способность обработки. В дополнение, некоторые символы данных известны как искаженные до этапа демодуляции. Аналогично, желательно избежать затрат мощности, обрабатывая поврежденные символы данных и распространяя ошибки дополнительно вниз по цепи обработки сигнала.
СУЩНОСТЬ ИЗОБРЕТЕНИЯ
Цифровая система включает в себя новую подсхему демодулятора. В одном примере подсхема демодулятора включает в себя администратор задач и множество конфигурируемых, но специализированных схем аппаратного обеспечения для выборочной демодуляции элемента ресурсов (например, значения символа {I, Q}) и вывода демодулированного элемента ресурсов (например, триплета значения демодулированных {I, Q, SNR} символов) в зависимости от значения двоичного значения маски битового массива маски демодуляции. Администратор задач подсхемы демодулятора может конфигурировать и управлять конфигурируемым аппаратным обеспечением. Цифровая система дополнительно включает в себя процессор, который сильно связан с запоминающим устройством с помощью первой шины. При функционировании процессор системы конфигурирует работу подсхемы демодулятора и планирует свою работу и синхронизацию, сохраняя перечень задач в запоминающем устройстве. Перечень задач включает в себя команды задач для подсхемы демодулятора, включая в себя команду задачи DEMOD Config, которая включает в себя битовый массив маски демодуляции. Администратор задач читает команды задач из своего перечня задач в запоминающем устройстве по второй шине. После того как администратор задач прочитал команду задач по второй шине, администратор задач интерпретирует команду задач и вызывает осуществление подсхемой демодулятора работы, как указано командой задач.
В одном примере битовый массив маски демодуляции включает в себя двумерный массив двоичных значений маски. Каждое значение маски соответствует элементу ресурсов, принятому в подсхеме демодулятора. Если значение маски, соответствующее элементу ресурсов, которое необходимо обработать подсхемой демодулятора, является первым состоянием, тогда демодулятор в механизме демодуляции не синхронизируется. Кроме того, механизм демодуляции выводит элемент ресурсов с нулевым значением, соответствующим этому входящему элементу ресурсов. Если, с другой стороны, значение маски, соответствующее элементу ресурсов, который необходимо обработать, является вторым состоянием, тогда демодулятор синхронизируется. Механизм демодуляции демодулирует входящий элемент ресурсов и выводит демодулированный элемент ресурсов, соответствующий входящему элементу ресурсов. В некоторых примерах значения маски, соответствующие элементам ресурсов контрольного сигнала, установлены для первого состояния. В других примерах значения маски, соответствующие поврежденным элементам ресурсов, установлены для первого состояния. Элементы ресурсов, ассоциированные с данными контрольного сигнала и поврежденные данные не демодулируются, таким образом, сберегая мощность, которая иначе была бы затрачена для осуществления демодуляции. Кроме того, обнуляя демодулированные значения символов, соответствующие значениям контрольного сигнала и значения поврежденных данных, производительность декодера улучшается. Описанный битовый массив маски демодуляции рассматривает общую применимость в демодуляции потоков данных, где известно до демодуляции, что определенные элементы ресурсов являются поврежденными и/или не являются релевантными для последующих этапов обработки данных.
Вышеизложенное является сущностью изобретения и, таким образом, содержит, по необходимости, упрощения, обобщения и пропуски подробностей; следовательно, специалисты в данной области техники примут во внимание, что сущность изобретения является лишь иллюстративной и не означает ограничение каким-либо образом. Другие аспекты, признаки изобретения и преимущества устройств и/или процессы, описанные в материалах данной заявки, как задано исключительно формулой изобретения, станут очевидными в неограничительном подробном описании, изложенном в материалах данной заявки.
КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙ
Фиг.1 является упрощенной схемой устройства мобильной связи согласно одному новому аспекту.
Фиг.2 является более подробной схемой интегральной схемы РЧ-приемопередатчиков устройства мобильной связи по фиг.1.
Фиг.3 является более подробной схемой цифровой интегральной схемы немодулированной передачи устройства мобильной связи по фиг.1.
Фиг.4 является схемой структуры OFDM-данных, обрабатываемых цифровой интегральной схемой немодулированной передачи по фиг.3.
Фиг.5 является схемой, которая иллюстрирует обработку OFDM-данных с помощью демодулятора, управляемого битовым массивом маски демодуляции значений маски.
Фиг.6 является упрощенной блок-схемой последовательности операций способа обработки OFDM-данных с помощью демодулятора, управляемого битовым массивом маски демодуляции значений маски.
Фиг.7 является блок-схемой DEMOD WCSMSC 141 по фиг 3.
Фиг.8 является более подробной блок-схемой механизма 303 MMSE/MRC по фиг.7.
Фиг.9 является упрощенной блок-схемой последовательности операций способа иллюстрации этапов, предпринимаемых процессором для подготовки и сохранения перечня заданий.
Фиг.10 является упрощенной блок-схемой последовательности операций способа иллюстрации этапов, предпринимаемых администратором задач для считывания команды задач, включая битовый массив маски демодулятора, и для инициирования выполнения демодулятора согласно команде задач.
Фиг.11 является схемой команды задач Demod Config, которая является используемой для взаимодействия битового массива маски демодуляции значений маски.
ПОДРОБНОЕ ОПИСАНИЕ
Фиг.1 является очень упрощенной блок-схемой высокого уровня одного конкретного типа устройства 100 мобильной связи согласно одному аспекту. В этом конкретном примере устройство 100 мобильной связи является сотовым телефоном. Устройство 100 мобильной связи включает в себя (среди нескольких других частей, которые не проиллюстрированы) две антенны 101 и 102 и две интегральных схемы 103 и 104. Интегральная схема 103 является интегральной схемой РЧ-приемопередатчиков. Интегральная схема 103 РЧ-приемопередатчиков называется "приемопередатчиком", так как она включает в себя передатчик, а также приемник. Интегральная схема 103 РЧ-приемопередатчиков является принципиально аналоговой интегральной схемой, которая включает в себя аналоговую схему. Интегральная схема 104, с другой стороны, является принципиально цифровой интегральной схемой, которая включает в себя цифровую схему. Интегральная схема 104 часто называется "цифровой интегральной схемой немодулированной передачи" либо "интегральной схемой процессоров немодулированной передачи". Существуют другие способы разбиения электроники устройства мобильной связи, но это является одним примерным способом.
Фиг.2 является более подробной блок-схемой интегральной схемы 103 РЧ-приемопередатчиков. Этот конкретный приемопередатчик включает в себя два приемопередатчика. Первый приемопередатчик включает в себя канал 105А приема и канал 105B передачи. Второй приемопередатчик включает в себя канал 106А приема и канал 106B передачи. Высокочастотный РЧ-сигнал принимается по одной либо обеим антеннам, когда сотовый телефон 100 принимает. Для РЧ-сигнала, принимаемого по антенне 101, сигнал проходит через дуплексор 108, соединяя сеть 109 и через канал 105А приема. Сигнал усиливается с помощью LNA 110 (усилитель малых шумов) и преобразовывается с понижением частоты смесителем 111. Результирующий сигнал, преобразованный с понижением частоты, фильтруется с помощью фильтра 112 немодулированной передачи и передается в цифровую интегральную схему 104 немодулированной передачи через управляемый соответствующим образом мультиплексор 113. Аналогово-цифровой преобразователь (ADC) 114 в цифровой интегральной схеме 104 немодулированной передачи преобразовывает сигнал в поток цифровых выборок. Поток из выборок затем обрабатывается каналом 115 приема (см. фиг.3) в цифровой интегральной схеме 104 немодулированной передачи.
Если сотовый телефон 100 должен передавать от антенны 101, тогда информация, которой необходимо обмениваться, обрабатывается каналом 116 передачи (см. фиг.3) цифровой интегральной схемы 104 немодулированной передачи и преобразовывается в аналоговую форму с помощью цифроаналогового преобразователя (DAC) 117. Результирующий аналоговый сигнал подается через соответствующим образом управляемый демультиплексор 118 в "канал 105B передачи" интегральной схемы 103 РЧ-приемопередатчиков. Фильтр 119 немодулированной передачи отфильтровывает шум, вносимый процессом цифроаналогового преобразования. Блок 120 смесителя затем преобразовывает с повышением частоты сигнал в высокочастотный сигнал. Усилитель 121 формирователя и усилитель 122 внешней мощности усиливают высокочастотный сигнал для запуска антенны 101 так, чтобы высокочастотный РЧ-сигнал передавался от антенны 101. В устройстве 100 мобильной связи одна либо обе антенны могут использоваться в зависимости от режима работы.
Фиг.3 является более подробной блок-схемой цифровой интегральной схемы 104 немодулированной передачи по фиг.1. В дополнение к ADC 114, канал 115 приема, канал 116 передачи и DAC 117, цифровая интегральная схема 104 немодулированной передачи включает в себя процессор 123, первую шину 124 и объем высокоскоростного двупортового запоминающего устройства 125 с многочисленными блоками. Процессор 123 может считывать из и записывать в запоминающее устройство 125 через первую шину 124. Процессор 123 является многоядерным процессором либо многопоточным процессором и может фактически включать в себя многочисленные процессоры. Первая шина 124 является высокоскоростной двухточечной шиной, включающей в себя один ведущий процессор 123 и одно подчиненное запоминающее устройство 125. Процессор 123, первая шина 124 и запоминающее устройство 125 вместе создают то, что упоминается как TCM-система 126 (сильносвязанное запоминающее устройство). Запоминающее устройство 125 не является программным запоминающим устройством, но скорее является высокоскоростным, двухуровневым кэшем, многопортовым и с многочисленными блоками запоминающим устройством, используемым для хранения переменных и данных и управляющей информации.
В дополнение, цифровая интегральная схема 104 немодулированной передачи включает в себя вторую шину 127, объем программного запоминающего устройства 128, граничный синхронизирующий таймер 129, блок 130 передачи данных, блок 131 кодеков, блок 132 видеопроцессора, набор из демультиплексоров 133 два-к-одному, и набор из мультиплексоров 134 один-к-двум. Программное запоминающее устройство 128 хранит программу из команд 135, которая выполняется процессором 123. Граничный синхронизирующий таймер 129 использует опорный сигнал синхронизации, предоставляемый внешним кристаллом 136 для увеличения счетчика. Счетчик выводит постоянно возрастающую последовательность из счетных значений, которые являются обозначением реального времени. Процессор 123 и другие схемы на второй шине 127 могут считывать с и записывать на граничный синхронизирующий таймер 129 с помощью второй шины 127. Запоминающее устройство 125 является доступным с помощью процессора 123 через первую шину 124 с более малой задержкой в доступе к запоминающему устройству, чем запоминающее устройство 125, которое является доступным через вторую шину 127. Цифровая интегральная схема 104 немодулированной передачи фиг.3 является также соединенной через вторую шину 127 с внешним флеш энергонезависимым запоминающим устройством 137 и с внешним SDRAM 138 (синхронное динамическое оперативное запоминающее устройство). Блок 130 передачи данных и процессор 123 может считывать из и записывать на внешние устройства 137 и 138 с помощью второй шины 127.
Канал 115 приема (аппаратное обеспечение приема немодулированной передачи) включает в себя множество функциональных блоков 139-142, упоминаемых в данном документе как WCSMSC (подсхемы модема системы беспроводной связи). WCSMSC 139-142 включают в себя подсхему 139 внешнего интерфейса, подсхему 140 FFT (быстрого преобразования Фурье), подсхему 141 DEMOD (демодуляции) и подсхему 142 DDE (обратное преобразование/обратное перемежение/декодирование). Объем запоминающего устройства, упоминаемый в данном документе как "буфер 143 выборок", буферизует данные, проходящие от WCSMSC 139 внешнего интерфейса к FFT WCSMSC 140. Аналогичный объем памяти, упоминаемый в данном документе как "буфер 144 символов", буферизует данные, проходящие от FFT WCSMSC 140 к DEMOD WCSMSC 142. Другой объем памяти, упоминаемый в данном документе как "буфер 145 мозаики", буферизует данные, проходящие от DEMOD WCSMSC 141 в DDE WCSMSC 142. "Буфер 146 вывода декодирования" буферизует данные, проходящие от DDE WCSMSC 142 во вторую шину 127. Общий тракт данных канала приема существует слева направо на фиг.3 с помощью схем 114, 133, 139, 143, 140, 144, 141, 145, 142 и 146 во вторую шину 127.
Канал 116 передачи включает в себя другое множество WCSMSC (подсхемы модема системы беспроводной связи) 147-150. WCSMSC 147-150 включают в себя подсхему 147 кодирования/перемежения/преобразования, подсхему 148 модулирования, подсхему 149 IFFT (обратное быстрое преобразование Фурье) и подсхему 150 интервала и добавления. Различные подсхемы канала передачи буферизуются с помощью набора буферов 151-154, как проиллюстрировано. Общий тракт данных канала передачи существует справа налево с помощью схем 151, 147, 152, 148, 153, 149, 154, 150, 134, и 117 в интегрированную схему 103 РЧ-приемопередатчиков.
Запоминающее устройство 125 системы 126 сильносвязанного запоминающего устройства сохраняет множество перечней задач, как проиллюстрировано. Каждый перечень задач содержит последовательность команд задач для выполнения с помощью ассоциированной подсхемы цифровой интегральной схемы 104 немодулированной передачи. В проиллюстрированном примере перечень TL1 задач содержит команды задач для FFT WCSMSC 140. Перечень TL2 задач содержит команды задач для DEMOD WCSMSC 141. Перечень TL3 задач содержит команды задач для DEMOD WCSMSC 142. Перечень TL4 задач содержит команды задач для блока 130 передачи данных. Хотя и не проиллюстрировано на фиг.3, запоминающее устройство 125 также содержит перечень задач схемы 116 канала передачи как целое, для блока 131 кодеков и для блока 132 видеопроцессора. Процессор 123 может записывать команды задач в эти перечни задач, модифицировать этот перечень задач, удалять перечни задач и иным образом сохранять перечни задач, как необходимо, через первую шину 124. Каждый перечень задач сохраняется в памяти 125 в кольцевом буфере. Каждый перечень задач содержит команды задач, которые при выполнении соответствующей подсхемой конфигурируют и управляют подсхемой. Каждая из ассоциированных подсхем включает в себя схему администратора задач, которая соединяется со второй шиной 127, а также величину выделенных функциональных схем для осуществления работы по обработке данных. Номер 155 ссылки на фиг.3 идентифицирует схему 155 администратора задач из DEMOD WCSMSC 141. В одном новом аспекте DEMOD WCSMSC 141 включает в себя битовый массив 156 маски демодуляции значений маски для управления работой DEMOD WCSMSC 141, как поясняется дополнительно подробно ниже.
1
9
1
9
1
9
Фиг.4 иллюстрирует один пример структуры данных, сохраненных в буфере 144 символов и буфер 145 мозаики в соответствии с OFDM-схемой (мультиплексирование с ортогональным частотным разделением). OFDM-сигналы и данные могут быть организованы в подблоки, часто упоминаемые как "мозаики". Мозаика является двумерной матрицей частота-время символов модуляции, организованной вдоль временной оси и оси частот. Фиг.4 иллюстрирует пример OFDM-сигнала, разделенного на 128 мозаик в соответствии с частотой. Каждая мозаика состоит из шестнадцати отдельных подканалов в течение промежутка времени, который охватывается восемью OFDM-символами. Таким образом, каждая мозаика может содержать до 128 символов. Каждая мозаика содержит как символы модуляции данных, так и символы модуляции контрольного сигнала. Символы модуляции данных используются для передачи информации, релевантной для контента сообщения, которым обмениваются по системе беспроводной связи. Например, мозаика 127 назначается для сохранения трех подпакетов информации {A, B, C}. Подпакет {A} содержит символы {A, …, A}. Подпакет {B} содержит символы {B, …, B}. Подпакет {С} содержит символы {C, …, C}. Различные символы распределены по всей мозаике с помощью процесса "создания изображения", который допускает конвейерный режим демодуляции и операций декодирования для различных подпакетов. Символы модуляции контрольного сигнала также проиллюстрированы на фиг.4. Символы модуляции контрольного сигнала могут использоваться для множества задач, включая оценку канала и помех для каждого уровня.
Фиг.5 иллюстрирует обработку с помощью DEMOD WCSMSC 141 данных символов модуляции, сохраненных в буфере 144 символов согласно одному новому аспекту. Как проиллюстрировано на фиг.3, данные сигнала обрабатываются с помощью FFT WCSMSC 140 для формирования последовательностей элементов ресурсов, организованных в решетке 210 ресурсов. В контексте OFDM каждый из этих элементов ресурсов является комплексным {I, Q} значением 209 символов модуляции, при этом I представляет собой вещественный коэффициент комплексного числа и Q представляет собой комплексный коэффициент комплексного числа. В этом примере эти значения организованы согласно OFDM-структуре, описанной на фиг.4. Решетка 210 ресурсов может содержать элементы 207 ресурсов контрольного сигнала, поврежденные элементы 204 ресурсов и элементы 202 ресурсов достоверных данных. Элементы ресурсов контрольного сигнала известны как ассоциированные с символами контрольного сигнала, используемые для оценки канала и помех. Тем не менее, элементы ресурсов контрольного сигнала не должны быть демодулированы для восстановления сообщения, которое должно быть передано. В действительности, LLR-значения, формируемые от этих символов контрольного сигнала с помощью DDE WCSMSC 142 могут быть значительными по величине относительно символов данных неконтрольного сигнала и ухудшать производительность декодера. Поврежденные элементы ресурсов являются элементами ресурсов данных, известных как поврежденные. Например, ложный DC-сигнал может повредить весь ряд данных, как проиллюстрировано на фиг.5, и это может быть известно для процессора приемника. В другом примере узкополосные сдвиги в частоте могут также повредить данные. Могут существовать многие другие возможные источники повреждения данных. Является выгодным не демодулировать поврежденные данные как для экономии мощности и чтобы избежать распространения поврежденных результатов далее в нисходящем направлении с помощью декодера.
Битовый массив 156 маски демодуляции значений маски используется для управления работой DEMOD WCSMSC 141 для выборочной демодуляции {I, Q} значений символов, ассоциированных с элементами ресурсов достоверных данных для формирования {I, Q, SNR} демодулированного значения "триплета" 208 символов и не демодулировать другие. Для каждого элемента ресурсов из решетки 210 ресурсов существует соответствующее однобитовое значение маски, сохраненное в битовом массиве 156 маски демодуляции. Если значение 201 маски, соответствующее конкретному элементу ресурсов, является цифровым нулевым значением, тогда DEMOD WCSMSC 141 демодулирует этот элемент ресурсов и выводит результирующий демодулированный элемент 206 ресурсов. В OFDM-примере демодулированный элемент 206 ресурсов является "триплетом" из цифровых значений, представляющих собой I, Q и SNR-значения демодулированного элемента ресурсов. Например, триплет содержит три шестнадцатибитовых слова, каждое обозначает значение I, Q и, соответственно, SNR. Если, с другой стороны, значение 201 маски, соответствующее конкретному элементу ресурсов, является единственным цифровым значением, тогда DEMOD WCSMSC 141 не демодулирует этот элемент ресурсов и выводит "триплет" 205 с нулевым значением. Таким образом, цифровые значения, представляющие собой I, Q и SNR-значения для этого элемента ресурсов равны нулю. Например, триплет с нулевым значением может быть набором из трех 16-битовых слов; все нули. Демодулированные элементы 206 ресурсов и триплеты 205 с нулевым значением создают обнуленную решетку 211 демодулированных ресурсов. Триплет с нулевым значением не учитывается процессорами последовательных сигналов, например обратный преобразователь, обратный перемежитель и декодер. Это экономит мощность и не допускает дополнительного ухудшения поврежденных данных и/или данных контрольного сигнала для принятого сообщения. В других примерах, скорее может использоваться другое заранее определенное значение, чем триплет с нулевым значением.
Фиг.6 иллюстрирует блок-схему последовательности операций способа обработки данных, осуществляемой DEMOD WCSMSC 141, используя битовый массив 156 маски демодуляции значений маски. DEMOD WCSMSC 141 принимает битовый массив демодуляции значений маски (этап 250). DEMOD WCSMSC 141 принимает элемент ресурсов решетки ресурсов (этап 251). DEMOD WCSMSC 141 затем оценивает, является ли значение маски, соответствующее принятому элементу ресурсов, цифровым единственным значением (этап 252). Если значение маски является цифровым единственным значением, тогда DEMOD WCSMSC 141 выводит элемент ресурсов с нулевым значением (этап 254). Если значение маски не является цифровым единственным значением, DEMOD WCSMSC 141 демодулирует принятый элемент ресурсов и выводит демодулированный элемент ресурсов (этап 253). DEMOD WCSMSC 141 затем определяет, все ли из элементов ресурсов конкретной решетки ресурсов обработаны (этап 255). Если все элементы ресурсов обработаны, задача заканчивается, но если остаются элементы ресурсов, тогда DEMOD WCSMSC 141 принимает следующий элемент ресурсов и продолжается как описано выше.
Фиг.7 является блок-схемой DEMOD WCSMSC 141 по фиг.3. DEMOD WCSMSC 141 включает в себя схему 155 администратора задач, блок 301 опережающей выборки, схему 302 оценки канала, битовый массив 156 маски демодуляции, механизм 303 демодуляции MMSE/MRC и администратор 304 записи. Схема 155 администратора задач включает в себя общую часть 305 администратора задач, набор регистров 306, включающих в себя регистры указателя, интерфейс 307 шины AHB, управляющую часть 308 конечного автомата демодулятора и набор из регистров 309 предварительной задачи. Общая часть 305 администратора задач граничит с частью шины AXI второй шины 127 как ведущая. Интерфейс 307 шины AHB граничит с частью шины AHB второй шины 127 как подчиненной. Общий поток данных существует через канал конвейерных данных от буфера 144 символов с помощью DEMOD WCSMSC 141 и в буфер 145 мозаики. Администратор 155 задач использует интерфейс шины AXI для считывания команд задач от сильносвязанного запоминающего устройства 125. Процессор 123 действует как ведущий в шине AHB и использует подчиненный интерфейс 307 AHB для считывания внутренних регистров DEMOD WCSMSC для записи регистра WR_PTR из регистров 306, и для считывания буфера 145 мозаик с помощью DEMOD WCSMSC 141. DEMOD WCSMSC 141 может осуществлять три общих типа команд задач: команда задач конфигурации, которая при выполнении параметров загрузки конфигурации для механизмов аппаратного обеспечения WCSMSC для будущей операции демодуляции, которую нужно осуществить, включая битовый массив маски демодуляции значений маски, команда задачи MMSE, которая при выполнении принимает параметры для операции MMSE и осуществляет выполнение, принимает параметры для MMSE-операции и осуществляет демодуляцию, и команда задачи MRC, которая при выполнении принимает параметры для операции MRC и осуществляет демодуляцию.
При функционировании процессор 123 обновляет WR_PTR в регистрах 306 DEMOD WCSMSC 141, таким образом обозначая, что существует, по меньшей мере, одна дополнительная команда задачи для выполнения DEMOD WCSMSC 141. Общий администратор 305 задач определяет, существует ли новая команда задачи в сильносвязанном запоминающем устройстве 125 для выполнения с помощью DEMOD WCSMSC 141. Если общий администратор 305 задач определяет, что существует другая команда задач, затем общий администратор 305 задач сообщает логике 308 управления демодулятором и работает вместе с логикой 308 управления демодуляцией для считывания команды задач по второй шине 127 и в регистре части 309 регистров предварительных задач. Общий администратор 305 задач интерпретирует заголовок команды задач, тогда как логика 308 управления демодулятора интерпретирует оставшуюся часть команды задач. Логика 308 управления демодулятора в зависимости от результатов интерпретации команды задач, предусматривает параметры конфигурации для других частей DEMOD WCSMSC 141. Логика 308 управления демодулятором затем вызывает инициирование тех других частей для осуществления различных операций в различные моменты времени из условия, что общее функционирование определено и осуществляется в команде задач. Логика 308 управления демодулятором реализует другой конечный автомат для каждой команды задач. При входе и выходе состояний из конечных автоматов, логика 308 управления демодулятором подтверждает управляющие сигналы. В схеме DEMOD WCSMSC 141 в одном примере конечные автоматы задаются в языке аппаратного описания и описание, синтезируемое для логики аппаратного обеспечения, которая использует доступный для приобретения инструментарий синтеза.
Под управлением администратора 155 задач блок 301 опережающей выборки считывает с буфера 144 символов для внесения IQ-выборок из положений, обозначенных командой задач. Существует два подобных блока опережающей выборки IQ, один для каждой из антенн 101 и 102. Входящее значение выборки I (действительное значение) и его соответствующее входящее значение выборки Q (мнимое значение) вместе содержат выборку IQ. Под управлением администратора 155 задач, битовый массив 156 маски демодуляции доставляет значения маски, соответствующие каждой из выборок IQ, указанных командой задач. Схема 302 оценки канала запускает и начинает оценку канала, формируя значения интерполяции канала, и выравнивает сформированные результаты интерполяции с помощью соответствующих IQ-выборок. Таким образом, IQ-выборки, соответствующие значения маски и ассоциированные результаты интерполяции предоставляются одновременно для механизма 303 MMSE/MRC.
Фиг.8 является блок-схемой, подробно излагающей работу механизма 303 MMSE/MRC. Механизм 303 MMSE/MRC предлагает два общих типа операции демодуляции, демодуляции типа минимальной среднеквадратической ошибки (MMSE), выполняемой демодулятором 313 MMSE, либо демодуляции типа MRC (объединение с максимальным отношением), выполняемой демодулятором 312 MRC. И логика 308 управления демодуляцией и битовый массив 156 маски демодуляции управляет определенной операций механизма 303 MMSE/MRC в каждом цикле синхронизации. Битовый массив 156 маски демодуляции доставляет значение маски, соответствующее каждой выборке IQ, вводимой в MMSE/MRC 303 с помощью блока 301 опережающей выборки. Значение маски доставляется в разрешающем входном сигнале генератора тактовых импульсов и демодулятора 312 MRC и демодулятора 313 MMSE и в мультиплексор 315. Если значение маски является цифровым нулевым значением, и демодулятор 312 MRC, и демодулятор 313 MMSE используют два набора из IQ-выборок (одна для каждой антенны) и ассоциированные значения оценки канала для осуществления задачи демодуляции. Каждый выводит исходящее значение I демодуляции, выходящее значение Q демодуляции и значение SNR. В зависимости от числа активных приемных антенны и числа уровней, используется либо демодуляция MMSE-типа либо MRC-типа. Логика 308 управления демодуляцией управляет мультиплексором 314 для выбора желаемого вывода демодуляции согласно командам задач. Цифровое нулевое значение маски, доставленное в мультиплексор 315, выбирает вывод демодуляции мультиплексора 314, который необходимо записать в буфер 145 мозаики с помощью администратора 304 записи (см. фиг.7). Если значение маски является цифровым единственным значением, ни демодулятор 312 MRC, ни демодулятор 313 MMSE не синхронизируются и мультиплексор 315 выбирает триплет с нулевым значением, который необходимо записать в буфер 145 мозаики с помощью администратора 304 записи (см. фиг.7). Таким образом, триплеты с нулевыми значениями замещаются для значений данных, которые являются нерелевантными либо поврежденными. Мощность экономится отсутствием синхронизации демодуляторов 312 и 313 для нерелевантных и поврежденных данных. Кроме того, обнуляемые элементы не обрабатываются дополнительно нисходящими подсхемами обработки сигналов, например декодером и LLR-генератором. Это приводит к дополнительной экономии мощности с помощью обработки меньших символов и также улучшает производительность декодера с помощью устранения поврежденных вводов, которые ухудшают общий вывод декодера.
Возвращаясь к фиг.7, увидим что администратор 304 записи инструктируется администратором 155 задач для записи каждого набора из значения I вывода демодуляции, значения Q демодуляции и значения SNR, либо альтернативно, каждого триплета с нулевым значением в буфере 145 мозаик. Таким образом, логика 308 управления демодулятором вызывает продолжение у DEMOD WCSMSC 141 одного символа в момент времени. DEMOD WCSMSC 141 считывает символ из буфера 144 символов, и либо осуществляет демодуляцию, либо не зависящее от значения маски, ассоциированное с каждым символом, и записывает соответствующий результат в буфер 145 мозаики. Когда задача демодуляции, определенная командой задач, завершена, логика 308 управления демодулятором устанавливает признак окончания задачи в регистрах 306 состояния. Если команда задачи обозначает, что аппаратный стробирующий сигнал должен быть выведен из DEMOD WCSMSC 141 для инициирования операции в DDE WCSMSC 142, тогда стробирующий сигнал подтверждается по проводнику 310. Проводник 310 удлиняется от DEMOD WCSMSC 141 до DDE WCSMSC 142.
Фиг.9 является упрощенной блок-схемой последовательности операций, которая иллюстрирует, как процессор 123 может вызвать у DEMOD WCSMSC 141 демодуляцию данных согласно битовому массиву 156 маски демодуляции. На первом этапе (этап 260) процессор 123 готовит перечень задач для DEMOD WCSMSC 141 в запоминающем устройстве 125, которое включает в себя битовый массив маски демодуляции, который инструктирует DEMOD WCSMSC 141 для осуществления задачи демодуляции. Процессор 123 может, например, записывать команду задач в окончание перечня задач для DEMOD WCSMSC 141 в запоминающем устройстве 125 через высокоскоростную первую шину 124. На втором этапе (этап 261) процессор 123 обновляет значение WR_PTR в администраторе задач DEMOD WCSMSC 141 по более медленной шине 127 так, чтобы WR_PTR администратора задач указывал на положение перечня задач после окончания определения положения недавно добавленной команды задач. Только одна запись с помощью медленной шины 127 требуется для инициирования выполнения команд задач в перечне задач.
Фиг.10 является упрощенной блок-схемой последовательности операций, которая иллюстрирует, как администратор задач конечного WCSMSC отвечает на операцию процессора фиг.9. На первом этапе (этап 270) администратор задач распознает, что его WR_PTR обновлен и в ответ считывает следующую команду задач из своего перечня задач в запоминающем устройстве 125; включая битовый массив маски демодуляции. Администратор задач осуществляет это прочтение с помощью второй шины 127. Администратор задач затем интерпретирует (этап 271) команду задач и формирует сигналы управления и/или конфигурации (например, через проводники 311 на фиг.7), которые предоставляются в аппаратную часть блока DEMOD WCSMSC 141. Сигналы управления и/или конфигурации вызывают аппаратную часть блока для осуществления операции, заданной командой задач. Это включает в себя вызов у DEMOD WCSMSC 141 начала обнуления каждого элемента ресурсов решетки ресурсов, соответствующей цифровым единственным значением маски битового массива демодуляции. Осуществление этой операции упоминается в данном документе как "выполнение" задачи либо выполнение команды задач. Далее, если EXEC_PRT не эквивалентно WR_PTR (этап 272), тогда существует больше команд задач в перечне задач для считывания и выполнения. Обработка возвращается к этапу 270. Если, тем не менее, EXEC_PTR равен WR_PTR (этап 272), тогда больше не существует команд задач в перечне команд, которые должны быть осуществлены. Только если процессор 123 снова записывает WR_PTR, который обозначает, что существует больше команд задач, которые необходимо выполнить (этап 273), администратор задач возвращается на этап 270 для считывания команды задач из запоминающего устройства 125. Администратор задач обрабатывает положения между START_PTR и END_PTR в запоминающем устройстве 125 как кольцевой буфер. Соответственно, если последняя выполненная команда задач является окончанием кольцевого буфера, тогда администратор задач ищет недавно добавленную команду задач в начале кольцевого буфера. Переполнение буфера и проверки ошибки обнуления могут быть включены.
Фиг.11 является схемой команды задач, называемой "Demod Config Task" ("задача конфигурирования демодулятора"). Demod Config Task содержит параметры конфигурации для DEMOD WCSMSC 141, включая битовый массив 156 маски демодуляции. Первые четыре бита "OP" являются кодом операции. Общая часть администратора задач из администратора задач декодирует этот код операции для определения типа команды задач и как обрабатывать различные поля команды задач. Следующие восемь битов "LN" являются полем длины, которое сохраняет число. Это число показывает число слов в команде задач. Общая часть администратора задач из администратора задач использует это поле длины для определения, сколько слов считывать из запоминающего устройства 125. Поле "RTC COUNT" является временной меткой, используемой в определенных режимах, для определения, когда команда задач может принуждаться к выполнению. Временная метка существует как вывод из граничного синхронизирующего таймера 129.
В одном или более примерных вариантах осуществления описанные функции могут быть реализованы в аппаратном обеспечении, программном обеспечении, встроенном программном обеспечении или в любом их сочетании. Если реализовано в программном обеспечении, функции могут сохраняться или передаваться как одна или более команд или код в машиночитаемом носителе. Машиночитаемый носитель включает в себя как компьютерный носитель данных, так и среду связи, которая включает в себя любую среду, которая способствует передаче компьютерной программы из одного места в другое. Машиночитаемым носителем могут быть любые доступные носители, к которым можно осуществлять доступ посредством вычислительной машины общего назначения или специального назначения. В качестве примера, а не ограничения, подобные машиночитаемые носители могут содержать ОЗУ (RAM), ПЗУ (ROM), ЭСППЗУ (EEPROM), запоминающее устройство на компакт-дисках (CD-ROM) или другое запоминающее устройство на оптических дисках, запоминающее устройство на магнитных дисках или другие магнитные запоминающие устройства либо любой другой носитель, который может быть использован, чтобы переносить или сохранять требуемое средство программного кода в форме команд или структур данных, и к которым можно осуществлять доступ посредством вычислительной машины общего назначения или специального назначения, или процессора общего или специального назначения. Также, любое подобное подключение, строго говоря, именуется машиночитаемым носителем. Например, если программное обеспечение передается с веб-сайта, сервера или другого удаленного источника, используя коаксиальный кабель, волоконно-оптический кабель, витую пару, цифровую абонентскую линию (DSL) или беспроводные технологии, например инфракрасные, радио и микроволны, тогда коаксиальный кабель, волоконно-оптический кабель, витая пара, DSL или беспроводные технологии, например инфракрасные, радио и микроволны, включаются в определение носителя. Дисковое запоминающее устройство и немагнитный диск, как используется в данном документе, включает в себя компакт-диск (CD), лазерный диск, оптический диск, цифровой универсальный диск (DVD), гибкий магнитный диск и диск blu-ray, где "дисковые запоминающие устройства" обычно магнитно воспроизводят данные, тогда как "немагнитные диски" воспроизводят данные оптически с помощью лазеров. Сочетания из вышеперечисленного также следует включать в объем машиночитаемых носителей.
Хотя определенные варианты осуществления описаны выше для инструктивных целей, идеи этого патентного документа имеют общую применимость и не ограничены определенными вариантами осуществления, описанными выше. Битовый массив маски демодуляции не ограничен использованием в реализации модемов, которые взаимодействуют согласно любому конкретному стандарту радиоинтерфейса, например LTE, UMB либо WiMAX, но скорее битовый массив маски демодуляции имеет общую применимость для других стандартов радиоинтерфейса и более широко для задач демодуляции, включая наборы данных с известными поврежденными элементами либо элементами, которые не являются релевантными для сигнала, который передается. Хотя выше описан пример, в котором демодулятор выводит элемент ресурсов с нулевым значением в ответ на входящий элемент ресурсов, который не демодулируется, в других примерах может использоваться произвольное, заранее определенное значение. Хотя выше описан пример, в котором цифровое нулевое значение маски инициирует демодуляцию входящего элемента ресурсов, в других примерах цифровое единственное значение маски может инициировать демодуляцию входящего элемента ресурсов. Хотя выше описан пример, в котором битовый массив маски демодуляции используется для управления демодулятором для выборочного вывода нулевых значений, в других примерах может использоваться другая схема для нулевых элементов решетки ресурсов данных до декодирования. Хотя выше описан пример, в котором каждое значение маски битового массива маски демодуляции является двоичным значением с единственным битов, в других примерах каждое значение маски является значением со многими битами. Хотя выше описан пример, в котором процессор записывает команды задач на сильносвязанное запоминающее устройство через первую шину, и администраторы задач считывают команды из сильносвязанного запоминающего устройства через вторую шину, но это лишь единственный пример. В других примерах процессор и администраторы задач осуществляют доступ к запоминающему устройству, которое хранит команды задач через ту же самую шину. Соответственно, различные модификации, адаптации и комбинации различных признаков описанных конкретных вариантов осуществления могут быть осуществлены на практике без отклонения от объема формулы изобретения, которые изложены ниже.