СПОСОБЫ И УСТРОЙСТВА ДЛЯ ОСУЩЕСТВЛЕНИЯ ОПЕРАЦИЙ ПО ДЕРЕВУ КАНАЛОВ
THE METHODS AND DEVICES FOR PERFORMANCE OF THE OPERATIONS ON THE TREE OF CHANNEL

Для настоящей заявки на патент испрашивается приоритет на основании предварительной заявки №60/908,181, озаглавленной "METHODS AND APPARATUS FOR PERFORMING CHANNEL TREE OPERATIONS", поданной 26 марта 2007 года и уступленной правообладателю настоящей заявки и настоящим явным образом включенной в настоящий документ путем ссылки.
УРОВЕНЬ ТЕХНИКИ
Область техники, к которой относится изобретение
Настоящее изобретение относится в общем к способам и устройствам для осуществления операций по дереву каналов в системе связи, и более конкретно к распределению дерева каналов для достижения улучшенной скорости вычислений для операций по дереву каналов для планирования ресурсов канала в системе связи.
Уровень техники
В системах связи, например OFDMA-системах (множественный доступ с ортогональным частотным разделением), ширина полосы пропускания доступных ресурсов может быть представлена в виде иерархического графа или «дерева» узлов (называемого «деревом каналов»), представляющего собой систему каналов, которые могут быть одной или более частотами, поднесущими или тонами. В будущих OFDMA-системах, например ультрамобильной широкополосной системе (UMB), представление доступной ширины полосы пропускания в виде дерева каналов использует некоторые четко определенные связи между узлами. Как известно, дерево каналов используется для назначения частот пользователям в сети связи для обеспечения разнесения среди множества приемников в сети связи. Различные концепции дерева каналов рассматриваются в патентной заявке США №11/209,246, озаглавленной "FREQUENCY HOPPING DESIGN FOR SINGLE CARRIER FDMA SYSTEMS", поданной 22 августа 2005 года и в полном объеме включенной в настоящий документ.
Деревья каналов обычно используются для сигнализации назначений терминалов доступа (AT) и общего управления шириной полосы пропускания модулем планировщика. Поскольку планировщик является одной из наиболее чувствительных ко времени частей, например, OFDMA-системы, можно понять, что выгодно иметь в распоряжении быстрое и эффективное осуществление операций по дереву каналов. Деревья каналов, однако, обычно реализуются с использованием списков связей. В частности, этот тип реализации включает в себя структуру дерева, в которой узлы связаны через указатели. Структура списка связей, тем не менее, требует сканирования структуры для большинства осуществляемых операций, таким образом, ограничивая скорость и эффективность осуществления операций по дереву каналов.
РАСКРЫТИЕ ИЗОБРЕТЕНИЯ
Согласно одному аспекту раскрыт способ для использования в системе связи. Способ включает в себя отображение по меньшей мере одного идентификатора реального узла по меньшей мере одного из множества реальных узлов дерева каналов в соответствующий по меньшей мере один идентификатор виртуального узла на основе заданной схемы распределения. Способ дополнительно включает в себя осуществление по меньшей мере одной операции по меньшей мере по одному из множества реальных узлов дерева каналов с использованием по меньшей мере одного идентификатора виртуального узла.
Согласно другому аспекту настоящее изобретение раскрывает устройство, выполненное с возможностью работы в системе беспроводной связи. Устройство включает в себя процессор, выполненный с возможностью для отображения по меньшей мере одного идентификатора реального узла по меньшей мере одного из множества реальных узлов дерева каналов в соответствующий по меньшей мере один идентификатор виртуального узла на основе заданной схемы распределения. Устройство также включает в себя память, соединенную с процессором для хранения по меньшей мере одного идентификатора виртуального канала.
Согласно еще одному аспекту, раскрыто устройство, выполненное с возможностью работы в системе беспроводной связи. Устройство содержит средство отображения по меньшей мере одного идентификатора реального узла по меньшей мере одного из множества реальных узлов дерева каналов в соответствующий по меньшей мере один идентификатор виртуального узла на основе заданной схемы распределения. Устройство также содержит средство осуществления по меньшей мере одной операции по меньшей мере по одному из множества реальных узлов дерева каналов с использованием по меньшей мере одного идентификатора виртуального узла.
В еще одном аспекте раскрыт компьютерный программный продукт, содержащий машиночитаемый носитель. Машиночитаемый носитель включает в себя код, побуждающий компьютер отображать каждый из по меньшей мере одного узлового идентификатора реальных узлов дерева каналов в соответствующие идентификаторы виртуальных узлов на основе заданной схемы распределения. Машиночитаемый носитель также включает в себя код, побуждающий компьютер осуществлять по меньшей мере одну операцию на по меньшей мере одном из реальных узлов дерева каналов с использованием идентификаторов виртуальных узлов.
В еще одном аспекте раскрыто устройство для использования в системе связи. Устройство содержит планировщик, выполненный с возможностью выделения ресурсов канала в системе связи. В планировщик включен первый модуль, выполненный с возможностью отображения по меньшей мере одного идентификатора реального узла по меньшей мере одного из множества реальных узлов дерева каналов в соответствующий по меньшей мере один идентификатор виртуального узла на основе заданной схемы распределения. Планировщик также содержит второй модуль, выполненный с возможностью осуществления по меньшей мере одной операции по меньшей мере по одному из множества реальных узлов дерева каналов с использованием по меньшей мере одного идентификатора виртуального узла.
КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙ
Фиг.1 иллюстрирует систему беспроводной связи, которая имеет точку доступа и терминалы доступа согласно аспекту настоящего изобретения.
Фиг.2 является схемой дерева каналов реальных узлов в системе связи.
Фиг.3 является примерной блок-схемой способа преобразования
дерева каналов и осуществления операций в системе связи согласно аспекту настоящего изобретения.
Фиг.4 является другим примером блок-схемы способа преобразования дерева каналов и осуществления операций в системе связи согласно аспекту настоящего изобретения.
Фиг.5 является преобразованием дерева каналов, проиллюстрированного на фиг.2, согласно аспекту настоящего изобретения.
Фиг.6 является иллюстрацией операций дерева каналов для выделения узлов дерева каналов на фиг.5.
Фиг.7 является блок-схемой устройства беспроводной сети для использования в системе беспроводной связи по фиг.1 с использованием способов, раскрытых в настоящем документе.
Фиг.8 является блок-схемой другого примера устройства для использования в системе беспроводной связи с использованием раскрытых способов.
ОСУЩЕСТВЛЕНИЕ ИЗОБРЕТЕНИЯ
Настоящее изобретение относится к способам и устройствам для распределения и осуществления операций по дереву каналов в системах связи, которые предоставляют улучшенную скорость вычислений для операций по дереву каналов для планирования ресурсов канала в системе связи. Вкратце, распределение дерева каналов включает в себя отображение каждого одного или более узловых идентификаторов реальных узлов дерева каналов в соответствующие идентификаторы виртуальных узлов согласно заданному распределению. Более конкретно, заданное распределение идентификаторов виртуальных узлов основано на отношениях между узлами, например отношения родительского узла/подчиненного узла или как многие поднесущие представлены конкретным узлом (т.е. как многие «подчиненные узлы» были «порождены» упомянутым узлом). Идентификаторы виртуальных узлов могут быть близко размещены на основе этого распределения и представлены битовой матрицей. Используя битовую матрицу, определенные операции по дереву каналов могут осуществляться с улучшением в скорости обработки по функционированию тех же операций, используя первоначальное дерево каналов идентификаторов реальных узлов, например, сканированием структуры дерева каналов.
На фиг.1 проиллюстрирована примерная система 100 беспроводной связи, в которой могут быть реализованы раскрытые способы и устройство. Как показано, точка 102 доступа (АР) взаимодействует с одним или более терминалами доступа (AT), например терминалами 104 и 106. Точка 102 доступа (АР) передает информацию в терминалы 104 и 106 доступа по прямым линиям 108 и, соответственно, 114 связи. Кроме того, точка доступа 102 может принимать информацию от терминалов 104 и 106 доступа, соответственно, по обратным линиям 112 и 110 связи.
Точка 102 доступа может включать в себя планировщик (не показано на фиг.1), который выделяет ресурсы канала, используемые для взаимодействия с терминалами AT доступа (например, 104, 106). В определении назначения ресурсов планировщик в АР 102 может использовать дерево каналов для назначения поднесущих или тонов. Примерное дерево каналов, которое может использоваться, проиллюстрировано на фиг.2.
Как показано на фиг.2, дерево 200 каналов включает в себя множество узлов, представленных частично с пронумерованными блоками. Каждый узел представляет собой единственный канал в системе связи. Самый нижний уровень дерева 200 каналов, который проиллюстрирован с помощью блоков с 16 по 33, 36 и 37, в этом примере обозначен терминами «базовые узлы», так как эти узлы не имеют каких-либо «подчиненных узлов» под ними. В примерной системе базовые узлы могут быть отображены в набор множества поднесущих или тонов. В другой примерной системе базовые узлы отображаются в набор из восьми (8) тонов или поднесущих. Здесь следует также отметить, что множество узлов, проиллюстрированное на фиг.2, является лишь примерным, и любые различные множества узлов могут являться частью дерева каналов.
Узлы более высокого уровня, такие как, например, узел 7, наследуют все поднесущие своих подчиненных узлов (т.е. узлы 16 и 17 в примере узла 7 на фиг.2). Таким образом, узел 7 наследует узлы 16 и 17 и охватывает 16 поднесущих (предполагая 8 поднесущих или тонов на каждый узел). Кроме того, в некоторых системах связи определено, что когда узел используется или выделяется, подчиненные узлы становятся ограниченными или недоступными для использования, равно как и предшествующие элементы (т.е. родительские узлы). Например, если узел 3 на фиг.2 выделен для AT, этот канал при выделении является недоступным для использования другими терминалами доступа, а также узлами 7, 8, 16-19 (т.е. подчиненные узлы) и узлы 0 и 1 (т.е. родительские узлы).
Как проиллюстрировано также на фиг.2, узлы, изображенные на том же «уровне», такие как, например, узлы 3 и 4, не обязательно имеют то же число подчиненных узлов, и таким образом, выделяемых поднесущих. Кроме того, эти узлы того же уровня не обязательно пронумерованы последовательно. Таким образом, структура реальных узлов на фиг.2 не обязательно постоянна и в известных приложениях реализована, используя списки связей, где узлы дерева каналов связаны через указатель. Таким образом, операции выделения или планирования, которые используют подобные списки связей, требуют сканирования или таблиц соответствия, исполняемых программным обеспечением.
Соответственно, в аспекте настоящего изобретения дерево каналов в системе связи, например дерево 200 каналов на фиг.2, может быть трансформировано с помощью отображения реальных узлов в виртуальные узлы для того, чтобы обеспечить более легкие и более эффективно реализуемые операции по дереву каналов. Алгоритм или способ воздействия на подобную трансформацию проиллюстрирован на блок-схеме фиг.3. Как показано на фиг.3, способ 300 включает в себя блок 302, где каждый один или более идентификаторов узлов канала реальных узлов дерева каналов отображены в соответствующие идентификаторы виртуальных узлов на основе определенной схемы распределения. Как будет пояснено более детально ниже, определенная схема распределения влияет на способ представления связей между реальными узлами дерева каналов (например, дерево 200 каналов), используя виртуальные узлы, которые, в свою очередь, представлены в виде битовой матрицы.
После того как отображение в блоке 302 завершено, блок-схема продолжается в блоке 304, где одна или более операций осуществляются по одному или более реальных узлов дерева каналов, используя идентификаторы виртуальных узлов. В примере, где отображение представляет собой связи между реальными узлами в виде битовой матрицы виртуальных узлов, побитовые операции, например операции «И» и «ИЛИ», могут использоваться для различных операций планирования (например, выделение и освобождение узлов), осуществляемых во время выделения ресурсов канала. Следует заметить, что процесс в блоках 302 и 304 может осуществляться в АР, например, с помощью планировщика в АР или может в качестве альтернативы осуществляться с помощью AT, который сообщает обратно в АР информацию о виртуальном отображении.
В качестве иллюстрации того, как способы и устройства по настоящему изобретению трансформируют или отображают дерево каналов реальных узлов в дерево каналов виртуальных узлов (например, обработка блока 302, описанная выше), фиг.4 иллюстрирует блок-схему обработки для преобразования или трансформации дерева каналов реальных узлов (например, фиг.2) в дерево каналов виртуальных узлов (также упоминаемый в настоящем документе как «заданное распределение» дерева каналов). Для того чтобы представить связи между узлами в трансформированном дереве, сначала определяются или устанавливаются связи родительского узла и подчиненного узла. Это первое определение обозначается с помощью блока 402 в способе 400 на фиг.4. На основе этого создания может быть вычислено или определено множество тонов или «портов перехода» для каждого узла, как указано с помощью блока 404 на фиг.4. Например, в дереве каналов на фиг.2, множество тонов, ассоциированное с базовыми узлами (например, 16-33, 36, 37), существует некоторое определенное количество «n» тонов. Для родительского узла (например, узел, который имеет один или более подчиненных узлов), например узел 3, множество тонов, ассоциированное с узлом, является суммой множества тонов, назначенных узлам 16-19, которые являются подчиненными узлами или базовыми узлами для узла 3. В системе, где каждый узел представляет собой набор «n» тонов, общее число тонов, представленное узлом 3, равно n×4 узлов (узлы 16-19 как подчиненные узлы узла 3). Таким образом, в примере, где n=8, реальный узел 3 представляет собой 32 тона.
После определения множества поднесущих для каждого из узлов узлы сортируются или распределяются в соответствии с числом поднесущих или «портов перехода». В частности, узлы могут сортироваться или распределяться в соответствии со множеством поднесущих, а также с помощью информации об идентификаторе узлов. Следует заметить, что информация об идентификаторе узлов может содержать просто информацию о последовательной нумерации. Таким образом, в примере дерева каналов на фиг.2 значения идентификатора реальных узлов являются просто номерами узлов, обозначенных в прямоугольниках. Согласно аспекту, при распределении узлов в обработке в блоке 406 узлы могут быть сначала отсортированы в наборах согласно числу поднесущих и затем среди наборов узлов, которые имеют то же число поднесущих, идентификатор реальных узлов может затем использоваться для распределения или нумерации узлов в этом наборе.
Используя пример на фиг.2, можно увидеть, что так как узел 4 на фиг.2 имеет больше подчиненных узлов и, следовательно, поднесущих, этот узел сортируется или распределяется, чтобы быть пронумерованным до узла 3 в отображении виртуальных узлов, хотя идентификатор реального узла 4 в дальнейшем осуществляется в цифрах, в отличии от идентификатора реального узла для узла 3. Это так, потому что узел 4 имеет большее число поднесущих и, таким образом, распределяется до узла 3 в отображении виртуальных узлов. Кроме того, следует заметить, что узлы 3 и 5, например, имеют то же самое число подчиненных узлов (т.е. узлы, «имеющие общий родительский узел») и, таким образом, то же самое число поднесущих или узлов с переключением. Соответственно, при распределении этих узлов узлы сортируются с последовательно возникающим узлом 3 в отсортированном порядке до узла 5, так как значение идентификатора 5 реальных узлов больше, чем значение идентификатора реальных узлов для узла 3.
После определения распределения блока 406 на фиг.4 отображение каждого одного или более идентификаторов реальных узлов в дереве каналов в соответствующие идентификаторы виртуальных узлов осуществляется, как проиллюстрировано на блоке 408. Отображение включает в себя использование отсортированных или распределенных реальных узлов, определяемых с помощью обработки блока 406, и затем отображение этой последовательности отсортированных реальных узлов в соответствующие последовательно пронумерованные идентификаторы виртуальных узлов. Так как идентификаторы виртуальных узлов являются последовательными, результирующее трансформированное дерево каналов может быть представлено в виде битовой матрицы, которая разрешает операции с битовой матрицей, которые, в свою очередь, порождают улучшенную скорость вычислений для, например, операций выделения, освобождения, поиска и отслеживания состояния. Будет принято во внимание, что трансформация или преобразование дерева каналов реальных узлов в последовательно пронумерованные идентификаторы виртуальных узлов, которые отсортированы на основе множества поднесущих и идентификаторов канальных узлов, связи между узлами (т.е. родительский узел, подчиненный узел, имеющие общий родительский узел) могут затем эффективно быть представлены в виде битовой матрицы идентификаторов виртуальных узлов.
Отображение может поддерживаться и сохраняться в запоминающем устройстве системы связи, и это сохраненное отображение может использоваться для трансляции между средой, в которой осуществляются операции (виртуальные идентификаторы), и фактической средой, в которой используются идентификаторы реальных каналов и распознаются объектами системы связи. Таким образом, после того как совершены побитовые операции, используя битовую матрицу идентификаторов виртуальных узлов, результаты операций могут быть затем транслированы обратно в идентификаторы каналов реальных узлов, как обозначено альтернативным блоком 410, который соответствует блоку 304, рассмотренному ранее в отношении фиг.2.
Фиг.5 предоставляет примерное изображение результирующего трансформированного дерева каналов идентификаторов 500 виртуальных узлов на основе примера фиг.2. Как можно увидеть на фиг.5, дерево 500 каналов может включать в себя то же самое число узлов, как и дерево 200 каналов, но идентификаторы узлов распределены заново. Например, узел 3 дерева 200 каналов распределяется заново и задается идентификатор 4 виртуальных узлов. Аналогично, узел 4 дерева 200 каналов является узлом 3 в дереве 500 каналов. Это возникает из-за обстоятельства, что узел 4 дерева 200 каналов имеет больше поднесущих в подчиненных узлах (т.е. 9, 10, 11 и 20-25), чем подчиненный узел узла 3 (т.е. 7, 8 и 16-19). Таким образом, согласно аспекту настоящей методологии, рассмотренной выше, узел 4 сортируется перед узлом 3 и последовательно перенумеровывается во время отображения в идентификаторы виртуальных узлов.
Кроме того, трансформированное дерево каналов может быть организовано для размещения узлов в иерархии уровней портов перехода или поднесущих. Пример фиг.5 иллюстрирует эти уровни с помощью разбивки пунктирной линией. Самый высокий уровень 502 включает в себя узел 0, который является узлом, не имеющим предшествующие узлы, и представляет собой глобальное число поднесущих. Следующий уровень 604 включает в себя узел 1, который охватывает больше поднесущих, чем, например, узел 2. Аналогично, следующий уровень 506 включает в себя узел 2, уровень 508 включает в себя заново отображенный узел 3, и так далее с помощью проиллюстрированных уровней 510 и 512 для уровня 514 базового узла.
Фиг.5 также иллюстрирует последовательную нумерацию идентификаторов виртуальных узлов, в каждом из многочисленных портов перехода или уровней поднесущих (с 502 по 514), и далее упоминается в настоящем документе как «уровни портов». Таким образом, например, узел 34 (который имеет общий родительский узел для узла 6) в дереве 200 каналов перенумерован с помощью номера 7 виртуального идентификатора, так как он находится в пределах уровня 510 портов, который содержит виртуальные узлы, каждый имеющий 4 базовых узла (или 32 поднесущих в случае 8 поднесущих/узлов в проиллюстрированном примере). Аналогично, другие узлы, которые имеют то же число подчиненных узлов (и в конечном счете, базовые узлы) распределяются последовательно на том же уровне портов. Кроме того, каждый уровень портов может также использоваться для определения интервала последовательных значений идентификаторов виртуальных узлов, при этом известно, что все имеют то же число портов перехода или поднесущих. Распределяя виртуальные узлы в уровнях портов и последовательно нумеруя в пределах каждого уровня портов, это позволяет группировку аналогично распределенных узлов и использование битовых матриц для поиска и отслеживания состояний. Это, в свою очередь, допускает улучшенную скорость для исполнения подобных операций по дереву каналов.
Более конкретно, двоичное состояние соответствующего бита для каждого узла в массиве битовых матриц может использоваться для обозначения того, выделен ли узел или освобожден в пределах битовой матрицы идентификаторов виртуальных узлов. Когда узел выделен, значение бита для этого узла обозначает, выделен ли узел или «ограничен». Например, если бит установлен до нуля, это состояние может быть предназначено для обозначения, что узел выделен или «ограничен» (или альтернативно состояние одного может обозначать, что узел ограничен). Соответственно, для побитовых операций логические операции, такие как «И» и «ИЛИ», могут осуществляться с использованием этих значений битов в массиве битовой матрицы в исполнении операций.
Каждый из виртуальных узлов в дереве каналов на фиг.5, который представляет собой канал, может иметь информацию, ассоциированную с каждым узлом в базе данных. Информация может включать в себя идентификатор виртуальных узлов, а также информацию, например число родительских узлов, подчиненных узлов, и связанные узлы, ассоциированные с этим узлом. Другая информация, ассоциированная с узлом, может включать в себя свойства узла, например «зарезервированное» состояние, которое резервирует узел, чтобы не допустить выделение этого конкретного узла, как один пример.
Согласно аспекту настоящих раскрытых способов и устройства, алгоритмы могут быть реализованы для разрешения по меньшей мере части операций по дереву каналов, которые необходимо осуществлять более эффективно. В примерном осуществлении, раскрытое повторное отображение дерева каналов может использоваться для поиска доступных узлов, например, в форме простого алгоритма типа первого соответствия. Например, когда планировщик ищет конкретное число поднесущих или тонов для выделения, выделение является просто делом поиска уровня портов, которые имеют необходимое число тонов для первого доступного узла, так как повторно отображенное дерево каналов (например, фиг.5) распределяется, чтобы включать в себя уровни портов, где каждый узел имеет то же самое число поднесущих или тонов. В конкретном примере, с помощью представления связей узла с помощью битовой матрицы различные варианты реализации могут использовать то, что обозначено термином команды «найти первый бит» для осуществления быстрых поисков. В этом случае, когда необходимо определенное число поднесущих или тонов, поиск уровня портов, который имеет необходимое число поднесущих, проверяет выделенные биты узлов, чтобы найти первый необъявленный бит (т.е. либо нуль, либо одно значение, зависящее от того, какое значение заранее выбрано для обозначения выделения узла). Согласно дополнительному аспекту, функция поиска может быть по сути исходной и может быть способна обработать недвоичные деревья и также другие поиски.
Согласно другому аспекту, выделения (например, выделение узлов для терминала AT) или операции «маски ограничения» могут эффективно исполняться при указанном вышеописанном повторном отображении дерева каналов. В качестве примера, фиг.6 иллюстрирует ограничение маскирования узлов в примерном дереве каналов фиг.5. В проиллюстрированном примере, если узел 3 должен быть ограничен по маске или выделен для определенного AT, он следует из традиционных ограничений дерева каналов, в которых подчиненные узлы этого узла также ограничены или выделены для AT. Осуществляя операцию И с битом выделения узла 3 и битами выделения подчиненных узлов (т.е. виртуальные узлы 10-12 и 22-27), эти узлы могут быть также выделены через простые побитовые операции. Как проиллюстрировано на фиг.6, эти выделенные узлы показаны с помощью наклонных заштрихованных линий, чтобы обозначить выделение.
Кроме того, когда узел, который является подчиненным узлом какого-либо другого узла, выделен, родительский узел или родительские узлы также выделяются в том смысле, что не все подчиненные узлы этих узлов доступны для выделения. Соответственно, в примере на фиг.6 узлы 0 и 1 выделены с помощью осуществления операции И с помощью бита выделения узла 3 и битов выделения узлов 0 и, соответственно, 1. Выделение узлов 0 и 1 не препятствует последовательному выделению других узлов в дереве каналов, исключая, если все каналы этого узла в дереве являются желательными. Например, узел 4, который является подчиненным узлом узла 1, выделяется в этом примере до числа поднесущих или тонов, доступных под этим узлом.
В другом примере, проиллюстрированном на фиг.6, если узел 6 должен быть выделен для пользовательского терминала (AT), операция И осуществляется с битом выделения узла 6 и битами выделения подчиненных узлов 15, 16 и 32-35. Выделение этих узлов обозначено с помощью затенения с помощью горизонтальных линий. Кроме того, операции И осуществляются с помощью битов выделения родительских узлов 2 и 0 и битов выделения узла 6 для, также, таким образом, выделения этих узлов (следует заметить, что затенение узла 0 в этом примере не показано с помощью затенения горизонтальной линии из-за ранее описанного примера). Дополнительно следует заметить, так как узел 7, который не имеет родительского узла, несмотря на это совместно использует подчиненные узлы с узлом 6, и операция И также осуществляется с помощью бита выделения узла 7 и бита выделения узла 6, чтобы показать выделение, так как узлы 16 и 34-35 теперь выделены и все подчиненные узлы узла 7 не являются невыделенными.
Следует заметить, что фиг.6 лишь иллюстрирует два примера маски ограничения или выделения, и что различные иные выделения могут влиять на показанное дерево каналов. Следует также отметить, что хотя операции И описаны, специалист в данной области техники примет во внимание, что другие логические операции (ИЛИ, НЕ-И, НЕ-ИЛИ, исключающее ИЛИ и т.д.) могут использоваться для воздействия на различные операции в дереве каналов.
Согласно другому аспекту неограничивающее маскирование или операции открепления могут также осуществляться, используя битовую матрицу идентификаторов виртуальных узлов. Например, в случае, где выделенный узел более не является необходимым и может быть откреплен, состояние бита выделения этого узла изменяется. Кроме того, подчиненные узлы открепленных узлов могут затем также открепляться, например, с помощью операции ИЛИ бита выделения родительского узла с помощью битов выделения подчиненных узлов также для изменения их состояний. Кроме того, если есть связанные узлы (т.е. родительский узел или узлы, имеющие общий родительский узел), эти узлы могут быть откреплены, если другие подчиненные узлы этих узлов в настоящий момент на выделены.
Фиг.7 иллюстрирует блок-схему беспроводной сети 700, в которой настоящие способы могут использоваться. Сеть 700 включает в себя базовую станцию или точку доступа (АР) 702, которая взаимодействует с по меньшей мере одним пользовательским терминалом или терминалом доступа (AT) 704 через беспроводной канал 706. АР 702 может включать в себя планировщик 708 или другой аналогичный функциональный модуль, используемый для выделения каналов (т.е. набор поднесущих или тонов), используемые АР 702 во взаимодействии по беспроводному каналу 706. Следует заметить, что планировщик 708 функционирует для выделения каналов в дереве каналов, используя различные методологии, описанные ранее. Планировщик 708 может быть реализован, используя процессор и ассоциированную память (не показано). Кроме того, в примере, так как настоящая методология допускает представление связей узла с помощью битовой матрицы, планировщик 708 может включать в себя логическое аппаратное обеспечение (отмеченное как акселератор 710 аппаратного обеспечения), которое может использоваться для быстрого поиска доступных узлов. В качестве примера, акселератор 710 может использоваться для ускорения «найти первый бит», как рассмотрено выше, таким образом, чтобы, когда команда вызывалась планировщиком, команда исполнялась в аппаратном обеспечении. Согласно дополнительному аспекту, функция поиска может быть по сути исходной и может быть способна обработать недвоичные деревья и также другие поиски. Акселератор 710 может быть реализован, используя любые подходящие устройства аппаратного обеспечения, например процессоры общего назначения (GPP), цифровые сигнальные процессоры (DSP) или какой-либо другой соответствующий процессор или логического аппаратное обеспечение.
Кроме того, AT 704 может также включать в себя функциональное устройство для исполнения операций планирования, например операции выделения и открепления. Это функциональное устройство может состоять из цифрового сигнального процессора (DSP) 712 или какого-либо другого соответствующего процессора. Кроме того, в некоторых системах связи, AT 704 может принимать сообщения назначения от АР 702, которые включают в себя информацию о дереве каналов и исполняют программное обеспечение, выполняющееся либо на DSP 712, либо на ином соответствующем процессоре для осуществления выделения или ограничения маскирования, а также операций открепления или снятия ограничений маскирования, также обозначаемого с помощью альтернативного функционального блока, отмеченного «функции 714 планировщика». Результирующее выделение от подобных операций может быть также передано обратно в АР 702 по беспроводному каналу так, чтобы другие AT в системе связи (не показано) принимали информацию по выделению дерева каналов, вычисляемого в АР 702.
В аспекте AT, например AT 704, может использоваться ограничение маскирования или выделение, описанное ранее. В качестве примера вычисления в AT могут включать в себя информацию первого принимающего дерева каналов от АР как идентификаторы реальных узлов, так и идентификаторы виртуальных узлов. После приема информации дерева каналов биты выделения для всех узлов в дереве могут быть ограничены. AT может затем не ограничивать или откреплять один или более узлов для этих каналов, назначаемых конкретному AT, используя операцию ИЛИ в качестве примера. Таким образом, известно, что эти узлы, которые приводят к состоянию открепления, выделены для AT.
В другом аспекте ограничение маскирования и отсутствие ограничения маскирования может использоваться в пределах AT для обозначения открепления неявным образом. В частности, AT может ограничивать или устанавливать биты выделения всех узлов в дереве каналов. Далее, снятие ограничения маскирования или открепление осуществляется для тех узлов или каналов, которые назначаются конкретному AT. Если затем становится известной информация относительно назначения для другого AT каналов, включая подчиненные узлы выделенного узла в AT, операция маскирования ограничения (например, операция И) может осуществляться по этим узлам.
Фиг.8 является блок-схемой еще одного примера устройства 800 для использования в системе связи, которая реализует раскрытые способы. Устройство 800 может быть точкой доступа (АР) или терминалом доступа (AT) в системе беспроводной связи, в качестве примеров. Устройство 800 включает в себя планировщик 802, используемый для выделения и планирования ресурсов канала по меньшей мере в части системы связи. Планировщик 802 может быть реализован с помощью одного или более процессоров, аппаратного обеспечения, встроенного программного обеспечения или при любом их сочетании.
Планировщик 802 включает в себя модуль 804 для отображения каждого одного или более идентификаторов узлов канала для реальных узлов заранее определенного дерева каналов с соответствующими идентификаторами виртуальных узлов на основе заданной схемы распределения. Модуль 804 может затем сообщать результирующее отображение через коммуникационную шину 805, как показано, или какое-либо коммуникационное соединение с различными другими модулями, процессорами и запоминающими устройствами.
Планировщик 802 также включает в себя модуль 806 для определения связей родительского узла и подчиненных узлов для реальных узлов дерева каналов. Следует заметить, что функция модуля 806 может быть частью «заданной схемы распределения» и, таким образом, модуль 806 может быть отнесен к категории с помощью модуля 804. Планировщик 802 также включает в себя модуль 808 для вычисления числа поднесущих или тонов для каждого узла. Это вычисление может затем использоваться модулем 810 для последовательного распределения или сортировки узлов на основе числа поднесущих, как было описано ранее. Например, узлы, которые имеют то же число поднесущих, портов перехода или тонов, сортируются по уровню портов и также в них последовательно нумеруются. Следует также заметить, что модули 808 и 810 могут характеризоваться как влияющие на заданную схему распределения, выполняемую модулем 804, которая, таким образом, может быть отнесена к категории этим модулем как альтернатива.
Планировщик 802 также включает в себя модуль 812 для осуществления одной или более операций по одному или более реальному узлу дерева каналов, используя идентификаторы реальных узлов, определяемых модулями 804 (а также модулями 806, 808, 810). Как описано ранее, идентификаторы виртуальных узлов могут распределяться в виде битовой матрицы, и побитовые операции могут осуществляться, используя битовую матрицу. Таким образом, модуль 812 может быть реализован для воздействия на побитовые операции, рассмотренные ранее более детально. Для того чтобы увеличить вычисления не только побитовых операций, но также и поиска узлов (например, найти первый бит), планировщик 802 может включать в себя аппаратное обеспечение для осуществления или поиска доступных узлов, например акселератор 814 аппаратного обеспечения, проиллюстрированный на фиг.8. Акселератор 814 аппаратного обеспечения может быть частью планировщика 802, как показано, или отдельно от планировщика 802. Следует отметить, что планировщик 802 и акселератор 814 могут быть реализованы, используя любые подходящие устройства аппаратного обеспечения, например процессоры общего назначения (GPP), цифровые сигнальные процессоры (DSP) или какой-либо другой соответствующий процессор или логического аппаратное обеспечение и их сочетание.
Отображение или повторное распределение дерева каналов, на которое влияют различные модули в устройстве 800, может поддерживаться и сохраняться в памяти, например запоминающем устройстве 816 системы связи. Кроме того, отображение может использоваться для трансляции между средой, в которой осуществляются операции (виртуальное представление), и фактической средой, в которой используются идентификаторы каналов и распознаются объектами системы связи. Устройство 800 может также включать в себя один или более процессоров, например процессор 818, выполненный с возможностью исполнения одной или более функций планировщика 802. Следует также отметить, что устройство 800 может быть выполнено либо как точка доступа (АР), например АР 102 на фиг.1, либо как терминал доступа (AT), например AT 104 или 106.
Следует отметить, что раскрытые способы и устройство с помощью переупорядочивания дерева каналов системы связи, чтобы разрешить представление связей узлов в качестве битовой матрицы, допускают для по меньшей мере части операций дерева каналов более эффективное осуществление, например, с помощью аппаратного обеспечения. Это, в свою очередь, значительно ускоряет операции, включая дерево каналов, вплоть до порядка величины.
Следует понимать, что определенный порядок иерархии этапов в раскрытых процессах является примером подходов в качестве примеров. На основе предпочтений схемы следует понимать, что определенный порядок иерархии этапов в процессах может быть переупорядочен, несмотря на то, что остается в пределах настоящего изобретения. Сопроводительный способ заявляет настоящие элементы различных этапов в порядке по образцу и не подразумевает ограничивать определенным порядком или представленной иерархией.
Специалисты в данной области техники поймут, что информация и сигналы могут быть представлены с помощью любой из множества различных технологий и методик. Например, данные, инструкции, команды, информация, сигналы, разряды, символы и элементарные сигналы, которые могут быть указаны ссылкой по всему вышеприведенному описанию, могут быть представлены напряжениями, токами, электромагнитными волнами, магнитными полями или частицами, оптическими полями или частицами или любой их комбинацией.
Специалисты будут дополнительно принимать во внимание, что различные иллюстративные логические блоки, модули, схемы и алгоритмические стадии, описанные в связи с вариантами осуществления, раскрытыми в материалах настоящей заявки, могут быть реализованы в виде электронных аппаратных средств, компьютерного программного обеспечения или сочетания обоих.
Чтобы ясно проиллюстрировать эту взаимозаменяемость аппаратных средств и программного обеспечения, различные иллюстративные компоненты, блоки, модули, схемы и этапы были описаны выше в общем смысле с точки зрения их функциональных возможностей. Реализуются ли подобные функциональные возможности как аппаратное или программное обеспечение, зависит от конкретного приложения и конструктивных ограничений, налагаемых на всю систему. Специалисты могут реализовать описанные функциональные возможности различными способами для каждого конкретного приложения, но подобные решения по реализации не должны интерпретироваться как причина отклонения от объема настоящего изобретения.
Различные пояснительные логические блоки, модули и схемы, описанные применительно к вариантам осуществления, раскрытым в материалах настоящей заявки, могут быть реализованы или выполнены с помощью процессора общего назначения, цифрового сигнального процессора (DSP), специализированной интегральной схемы (ASIC), программируемой пользователем вентильной матрицы (FPGA) или другого программируемого логического устройства, дискретной вентильной или транзисторной логики, дискретных компонентов аппаратных средств или любого их сочетания, спроектированных для выполнения функций, описанных в материалах настоящей заявки. Процессор общего назначения может быть микропроцессором, но в качестве альтернативы процессор может быть любым обычным процессором, контроллером, микроконтроллером или конечным автоматом. Процессор также может быть реализован в виде сочетания вычислительных устройств, например, объединения DSP и микропроцессора, множества микропроцессоров, одного или более микропроцессоров совместно с ядром DSP или любой другой подобной конфигурации.
Этапы способа или алгоритма, раскрытого в связи с вариантами осуществления, раскрытыми в материалах настоящей заявки, могут быть реализованы непосредственно в аппаратных средствах, в модуле программного обеспечения, выполняемом процессором, или комбинации этих двух. Модуль программного обеспечения может постоянно находиться в памяти оперативного запоминающего устройства (RAM), флэш-памяти, памяти постоянного запоминающего устройства (ROM), памяти электрически программируемого ПЗУ (EPROM), памяти электрически стираемого и программируемого ПЗУ (EEPROM), регистрах, на жестком диске, съемном диске, CD-ROM или любом другом виде носителя информации, известном в данной области техники. Примерный носитель информации соединен с процессором таким образом, что процессор может считывать информацию и записывать информацию на носитель информации. В качестве альтернативы носитель информации может быть одним целым с процессором. Процессор и носитель информации могут постоянно находиться в ASIC. ASIC может находиться в пользовательском терминале. В альтернативном варианте процессор и запоминающий носитель могут постоянно находиться в виде дискретных компонентов в пользовательском терминале.
В одном или более примерах описанные функции могут быть реализованы в аппаратном обеспечении, программном обеспечении, встроенном программном обеспечении или любом их сочетании. При реализации в программном обеспечении функции могут сохраняться или передаваться в виде одной или более команд или кода на машиночитаемом носителе. Машиночитаемый носитель включает в себя как компьютерный носитель информации, так и среду связи, которая включает в себя любую среду, которая обеспечивает передачу компьютерной программы из одного места в другое. Носителем информации может быть любой доступный носитель, к которому может осуществить доступ вычислительная машина. В качестве примера, но не ограничения, такие машиночитаемые носители могут содержать RAM, ROM, EEPROM, CD-ROM или другое запоминающее устройство на оптических дисках, запоминающее устройство на магнитных дисках или другие магнитные запоминающие устройства либо любой другой носитель, который может быть использован, чтобы переносить или сохранять требуемый программный код в форме команд или структур данных, к которым может осуществлять доступ вычислительная машина. Также машиночитаемым носителем в узком смысле слова именуется любое соединение. Например, если программное обеспечение передается с веб-сайта, сервера, или другого удаленного источника, используя коаксиальный кабель, волоконно-оптический кабель, витую пару, цифровую абонентскую линию (DSL) или беспроводные технологии, например инфракрасные, радио- и микроволны, тогда коаксиальный кабель, волоконно-оптический кабель, витая пара, DSL или беспроводные технологии, например инфракрасные, радио- и микроволны, включаются в определение носителя. Дисковое запоминающее устройство и немагнитный диск в контексте настоящего документа включает в себя компакт-диск (CD), лазерный диск, оптический диск, цифровой универсальный диск (DVD), гибкий магнитный диск и диск blu-ray, причем «дисковые запоминающие устройства» обычно воспроизводят данные магнитным способом, тогда как «немагнитные диски» воспроизводят данные оптическим способом с помощью лазеров. Сочетания любого из вышеперечисленного также следует включить в число машиночитаемых носителей.
Примеры, раскрытые в настоящей заявке, приведены, чтобы позволить любому специалисту в данной области техники выполнить или использовать раскрытый в настоящем документе предмет изобретения. Различные модификации в этих раскрытых примерах станут легко очевидны специалистам в данной области техники, и общие принципы, определенные в настоящем документе, могут использоваться в других вариантах осуществления без выхода за рамки сведений, изложенных в раскрытии настоящего изобретения. Следует также отметить, что слово «примерный» используется в настоящем документе исключительно в смысле «служащий в качестве примера, образца или иллюстрации». Любой пример, описанный в настоящем документе как «примерный», не обязательно должен быть истолкован как предпочтительный или имеющий преимущества по отношению к другим примерам. Таким образом, не подразумевается, что настоящее изобретение ограничено примерами, показанными в настоящем документе, но его следует истолковывать в соответствии с наиболее широким объемом, соответствующим принципам и новым признакам, раскрытым в настоящем документе.