Область техники, к которой относится изобретение
Настоящее изобретение относится в общем к области связи и более конкретно к новой и улучшенной системе и способу распределения множества потоков данных в отдельный канал, задаваемый ограничениями временного интервала передачи (ВИП).
Уровень техники
Дистанционный терминал (удаленная станция) расположен внутри сети. Дистанционный терминал включает в себя приложения, которые создают потоки данных. Дистанционный терминал распределяет потоки данных в один поток данных. Методика для мультиплексирования данных из потоков данных в один поток данных раскрыта в заявке на патент США с порядковым № 09/612825, зарегистрированной 8 февраля 1999 г. под названием "Способ и устройство для пропорционального мультиплексирования потоков данных в один поток данных", которая переуступлена правопреемнику настоящего изобретения и включена здесь путем ссылки.
Выбор схемы распределения для распределения битов из множества потоков данных в один канал является трудным, потому что должно быть учтено множество факторов. Одним фактором, который следует учитывать, является приоритет каждого потока данных. Потоки данных с более высоким приоритетом имеют старшинство над потоками данных с более низким приоритетом. Другим фактором, который следует учитывать, являются комбинации транспортных форматов (КТФ), которые разрешены для передачи по каналу. КТФ представляет собой комбинацию транспортных форматов (ТФ), причем каждый транспортный формат соответствует транспортному каналу. Транспортный формат имеет некоторое количество блоков (то есть один или более блоков) данных и размер блока (РБ). КТФ отправляют по беспроводной линии связи дистанционного терминала. Еще одним фактором, который следует учитывать, являются ограничения временного интервала передачи (ВИП). Каждый транспортный формат имеет временной интервал передачи и не может изменяться в течение своего временного интервала передачи. Требуется схема распределения, которая учитывает приоритет потоков данных, доступные КТФ и ВИП транспортных форматов в КТФ.
Сущность изобретения
Раскрываемый теперь способ и устройство направлены на распределение множества потоков данных в один поток данных для передачи. Список допустимых КТФ поступает из сети. Биты из потоков данных на логическом уровне помещают в КТФ на транспортном уровне на основании приоритета потоков данных и доступных КТФ.
В одном аспекте множество приложений обеспечивает множество потоков данных, предназначенных для распределения в один поток. В другом аспекте абонентские блоки обеспечивают множество потоков данных, предназначенных для распределения в один поток базовой станции. Еще в одном варианте осуществления множество базовых станций обеспечивает множество потоков данных, предназначенных для мультиплексирования мультиплексором внутри контроллера базовой станции.
В одном аспекте абонентский блок содержит память, множество приложений, постоянно хранящихся в памяти, причем каждое приложение создает поток данных, при этом каждый поток данных содержит по меньшей мере один блок, и мультиплексор, выполненный с возможностью приема каждого потока данных и распределения битов из множества потоков данных в один поток данных.
В другом аспекте мультиплексор выполнен с возможностью приема каждого из множества потоков данных и распределения битов из множества потоков данных в один поток данных на основании прежде всего КТФ, которые отвечают ограничениям ВИП, и во вторую очередь, на основании приоритета потоков данных.
Еще в одном аспекте беспроводная система связи содержит абонентский блок, базовую станцию, соединенную с абонентским блоком, и контроллер базовой станции, соединенный с базовой станцией. Абонентский блок включает в себя множество приложений и мультиплексор, причем каждое приложение создает поток данных в качестве входного потока в мультиплексор, и каждый поток данных содержит по меньшей мере один бит. Мультиплексор распределяет биты из потоков данных в один поток на основании КТФ, которые отвечают ограничениям ВИП.
Краткое описание чертежей
Фиг.1 показывает схематическое общее представление примерной системы сотовой телефонной связи;
фиг.2 изображает структурную схему абонентского блока и базовой станции в соответствии с одним вариантом осуществления;
фиг.3 изображает блок-схему программы для исключения КТФ на основании ограничений ВИП транспортных кадров в соответствии с одним вариантом осуществления;
фиг.4 изображает блок-схему программы для исключения КТФ на основании доступных блоков в соответствии с одним вариантом осуществления; и
фиг.5A-5B изображает блок-схему программы для выбора КТФ в соответствии с одним вариантом осуществления.
Подробное описание предпочтительных вариантов осуществления
Примерная система сотовой мобильной телефонной связи, в которой воплощено настоящее изобретение, изображена на фиг.1. Для иллюстративных целей здесь описан примерный вариант осуществления в контексте системы сотовой связи Ш-МДКР (широкополосного множественного доступа с кодовым разделением каналов, W-CDMA). Однако следует понимать, что изобретение применимо к другим типам систем связи, например к системам персональной связи (СПС, PCS), беспроводной местной линии связи, учрежденческой автоматической телефонной станции (УАТС, PBX) или другим известным системам. Кроме того, раскрытые здесь способ и устройство можно применять в системах, использующих другие известные схемы множественного доступа, например МДВР (множественного доступа с временным разделением каналов, TDMA) и МДЧР (множественного доступа с частотным разделением каналов, FDMA), так же как другие системы с расширенным спектром.
Как показано на фиг.1, беспроводная сеть 10 связи в общем включает в себя множество абонентских блоков (также называемых мобильными станциями, мобильными телефонами, абонентскими блоками, дистанционными терминалами (удаленными станциями) или абонентской аппаратурой) 12a-12d, множество базовых станций (также называемых базовыми приемопередающими станциями (БППС, BTS) или узлом B), 14a-14c, контроллер базовой станции (КБС, BSC) (также называемый контроллером радиосети или функцией управления пакетами) 16, контроллер мобильной станции (КМС, MSC) или переключатель 18, узел обслуживания пакетированных данных (УОПД, PDSN) или функцию межсетевого обмена (ФМО, IWF) 20, коммутируемую телефонную сеть общего пользования (КТСОП, PSTN) 22 (обычно телефонную компанию) и сеть 22 межсетевого протокола (МП, IP) (обычно Интернет). С целью упрощения показаны четыре абонентских блока 12a-12d, три базовые станции 14a-14c, один КБС 16, один КМС 18 и один УОПД 20. Специалистам в данной области техники должно быть понятно, что может быть любое количество абонентских блоков 12, базовых станций 14, КБС 16, КМС 18 и УОПД 20.
В одном варианте осуществления беспроводная сеть 10 связи представляет собой сервисную сеть с коммутацией пакетов. Абонентские блоки 12a-12d могут быть любыми из ряда различных типов беспроводных устройств связи, например мобильный телефон, сотовый телефон, который связан с портативным компьютером (ноутбуком), работающим на основе МП, прикладных программ веб-браузера, сотовый телефон со связанным автомобильным комплектом, работающим в режиме громкоговорящей связи, персональный цифровой ассистент (ПЦА), работающий на основе МП, прикладных программ веб-браузера, беспроводный модуль связи, включенный в портативный компьютер, или модуль связи с установленным местоположением, например такое устройство, которое можно найти в беспроводной местной линии связи или системе считывания измерительного прибора. В самом общем варианте осуществления абонентские блоки могут быть устройствами связи любого типа.
Абонентские блоки 12a-12d преимущественно могут быть выполнены с возможностью выполнения одного или нескольких протоколов беспроводной связи с коммутацией пакетов, описанного, например, в стандарте EIA/TIA/IS-707 (Ассоциация электронной промышленности/Ассоциация телекоммуникационной промышленности/международный стандарт). В конкретном варианте осуществления абонентские блоки 12a-12d формируют пакеты МП, предназначенные для сети МП 24, и инкапсулируют пакеты МП в кадры, используя протокол «точка-точка» (ПТТ) (протокол двухточечной связи).
В одном варианте осуществления сеть МП 24 соединена с УОПД 20, УОПД 20 соединен с КМС 18, КМС 18 соединен с КБС 16 и КТСОП 22, а КБС 16 соединен с базовыми станциями 14a-14c через проводные линии связи, выполненные с возможностью передачи речевых пакетов и/или пакетов данных в соответствии с любым из нескольких известных протоколов, включая, например, Е1, T1, асинхронный режим передачи (АРП), МП, ПТТ, ретрансляцию кадров, ВЦАЛ (высокоскоростную цифровую абонентскую линию, HDSL), АЦАЛ (асимметричную цифровую абонентскую линию, ADSL) или хЦАЛ (х цифровую абонентскую линию) (xDSL). В дополнительном варианте осуществления КБС 16 подсоединен непосредственно к УОПД 20, а КМС 18 не подсоединен к УОПД 20. В одном варианте осуществления абонентские блоки 12a-12d связаны с базовыми станциями 14a-14c через РЧ (радиочастотный) интерфейс, определенный в 2 Проекте о партнерстве 3-его поколения "3ППП2" (3GPP2), "Стандарте физического уровня для систем с расширенным спектром МДКР2000", Документе 3ППП2 № C.P0002-A, TIA PN-4694, опубликованном как TIA/EIA/IS-2000-2-A, (Проект документа, отредактированная версия 30) (19 ноября 1999 г.) (в дальнейшем "МДКР 2000"), который полностью включен здесь путем ссылки.
Во время обычной работы беспроводной сети 10 связи базовые станции 14a-14c принимают и демодулируют множества сигналов обратной линии связи от различных абонентских блоков 12a-12d, занятых вызовами по телефону, просмотром веб-страниц или другими обменами данных. Каждый сигнал обратной линии связи, принятый данной базовой станцией 14a-14c, обрабатывается внутри этой базовой станции 14a-14c. Каждая базовая станция 14a-14c может осуществлять связь с множеством абонентских блоков 12a-12d, модулируя и передавая множества сигналов прямой линии связи абонентским блокам 12a-12d. Например, как показано на фиг.1, базовая станция 14a одновременно связана с первым и вторым абонентскими блоками 12a, 12b, а базовая станция 14c одновременно связана с третьим и четвертым абонентскими блоками 12c, 12d. В итоге пакеты направляются в КБС 16, который обеспечивает распределение ресурсов вызовов и функциональные возможности управления мобильностью, включая гармоническое сочетание технологии "мягкой передачи обслуживания" вызова для конкретного абонентского блока 12a-12d от базовой станции 14a-14c отправления к базовой станции 14a-14c назначения. Например, абонентский блок 12c связан с двумя базовыми станциями 14b, 14c одновременно. В конечном счете, когда абонентский блок 12c переместится достаточно далеко от одной из базовых станций 14c, вызов будет передан для обслуживания другой базовой станции 14b.
Если передача является обычным телефонным вызовом, КБС 16 будет направлять принятые данные в КМС 18, который обеспечивает дополнительные услуги маршрутизации для взаимодействия с КТСОП 22. Если передача является передачей на основе пакетов, например вызов данных, предназначенный для сети МП 24, КМС 18 направляет пакеты данных к УОПД 20, который посылает пакеты в сеть МП 24. В качестве альтернативы, КБС 16 направляет пакеты непосредственно в УОПД 20, который посылает пакеты в сеть МП 24.
Канал беспроводной связи, через который информационные сигналы проходят от абонентского блока 12 в базовую станцию 14, известен как обратная линия связи. Канал беспроводной связи, через который информационные сигналы проходят от базовой станции 14 в абонентский блок 12, известен как прямая линия связи.
Системы МДКР обычно разрабатываются так, чтобы соответствовать одному или нескольким стандартам. Такие стандарты включают в себя "Стандарт совместимости мобильной станции - базовой станции для двухрежимной широкополосной системы сотовой связи с расширенным спектром TIA/EIA/IS-95-B" (стандарт IS-95), "Рекомендуемый минимальный стандарт для двухрежимной широкополосной станции мобильной сотовой связи с расширенным спектром TIA/EIA/IS-98" (стандарт IS-98), стандарт, предлагаемый консорциумом под названием "Проект о партнерстве 3-его поколения" (3ППП, 3GPP) и воплощенный в наборе документов, включающих в себя документы № 3G TS 25.211, 3G TS 25.212, 3G TS 25.213, 3G TS 25.311 и 3G TS 25.214 (стандарт W-CDMA (Ш-МДКР)), "Стандарт физического уровня для систем с расширенным спектром МДКР2000 TR-45.5" (стандарт cdma2000 (МДКР200)) и "Спецификация радиосопряжения пакетированных данных с высокой скоростью передачи TIA/EIA/IS-856 cdma2000" (стандарт HDR). Непрерывно предлагаются и принимаются для использования новые стандарты МДКР. Эти стандарты МДКР включены здесь путем ссылки.
Дополнительная информация относительно систем связи множественного доступа с кодовым разделением каналов раскрыта в патенте США № 4901307 под названием "Система связи множественного доступа с расширенным спектром, использующая спутниковые или наземные ретрансляторы" и в патенте США № 5103459 под названием "Система и способ формирования форм сигналов в системе сотовой телефонной связи МДКР", и оба этих патента переуступлены правопреемнику настоящего изобретения и включены здесь во всей их полноте путем ссылки.
Системы МДКР2000 совместимы с системами IS-95 многими способами. Например, и в системах МДКР2000, и в системах IS-95 каждая базовая станция синхронизирована по времени ее работы с другими базовыми станциями в системе. Как правило, базовые станции синхронизируют работу по универсальному опорному тактовому сигналу, например по сигналам передачи Глобальной системы позиционирования (ГСП, GPS); однако могут быть использованы другие механизмы. Основываясь на синхронизирующем опорном тактовом сигнале, каждой базовой станции в данной географической области назначается смещение общей псевдошумовой (ПШ) последовательности пилот-сигнала. Например, согласно IS-95, каждой базовой станцией в качестве пилот-сигнала передается ПШ последовательность, имеющая 215 элементарных сигналов и повторяющаяся каждые 26,67 миллисекунды (мс). ПШ последовательность пилот-сигнала передается каждой базовой станцией в одном из 512 возможных смещений ПШ последовательности. Каждая базовая станция передает пилот-сигнал непрерывно, и это позволяет абонентским блокам идентифицировать передачи базовой станции, а так же служит для других функций.
В одном варианте осуществления абонентский блок связывается с базовой станцией, используя способы широкополосного множественного доступа с кодовым разделением каналов (Ш-МДКР). Базовые станции в системе Ш-МДКР работают асинхронно. То есть, не все базовые станции Ш-МДКР совместно используют общий опорный тактовый сигнал. Таким образом, хотя базовая станция Ш-МДКР имеет пилот-сигнал, базовая станция Ш-МДКР может быть не идентифицирована только по ее смещению пилот-сигнала. Как только системное время одной базовой станции определено, оно не может быть использовано для оценки системного времени соседней базовой станции. По этой причине абонентский блок в системе Ш-МДКР использует трехступенчатую процедуру приобретения PERCH для синхронизации с каждой базовой станцией в системе.
В примерном варианте осуществления абонентский блок имеет множество приложений. Приложения находятся внутри абонентского блока, и каждое приложение создает отдельный поток данных. Приложение может создавать более одного потока данных.
На фиг.2 изображена структурная схема абонентского блока 12 и базовой станции (БППС) 14 в соответствии с примерным вариантом осуществления. Абонентский блок 12 включает в себя приложения речевое 32, сигнализации 34, электронной почты 36 и для работы во всемирной паутине (веб-приложение) 38, находящиеся в памяти 49 абонентского блока 12. Каждое приложение: речевое 32, сигнализации 34, электронной почты 36 и для работы во всемирной паутине 38 создает отдельный поток 40, 42, 44, 46 данных, соответственно. Потоки данных мультиплексируются модулем 48 мультиплексора в один поток данных, называемый транспортным потоком 50. Транспортный поток 50 посылается по обратной линии связи базовой приемопередающей станции (БППС) 14, также для краткости называемой базовой станцией.
Каждый поток данных 40-46 имеет приоритет. Модуль 48 мультиплексора размещает биты из потоков данных на логическом уровне в КТФ на транспортном уровне на основании приоритета потоков данных и доступных КТФ.
В одном варианте осуществления модуль 48 мультиплексора работает в пределах уровня управления доступом к среде (УДС, МАС) и получает приоритеты потоков данных из более высокого сетевого уровня. Уровень УДС определяет процедуры, используемые для приема и передачи на физическом уровне.
Специалистам в данной области техники должно быть очевидно, что потоки данных 40-46 могут быть расположены по приоритетам с помощью любой известной в технике схемы приоритетов, например, "первым пришел, первым ушел" (FIFO), "последним пришел, первым ушел" (LIFO) и "кратчайшее задание - первым" (SJF). Схема приоритетов может также базироваться на типе данных. Специалистам в данной области техники должно быть очевидно, что модуль 48 мультиплексора может работать на множестве сетевых уровней.
В другом варианте осуществления модуль 48 мультиплексора выполнен в аппаратном обеспечении. В еще одном варианте осуществления модуль 48 мультиплексора выполнен в комбинации программного и аппаратного обеспечения. Специалистам в данной области техники должно быть очевидно, что модуль 48 мультиплексора может быть выполнен посредством любой комбинации программного и аппаратного обеспечения.
В одном варианте осуществления модуль 48 мультиплексора использует алгоритм распределения с целью выбора оптимальных КТФ для передачи по физическому каналу. В другом варианте осуществления модуль 48 мультиплексора использует алгоритм распределения для мультиплексирования транспортных каналов в один закодированный составной транспортный канал (ЗСТК, CCTrCH) на одном уровне с помощью выбора оптимальных КТФ для передачи по ЗСТК.
С одной точки зрения, иерархия каналов назначает множество логических каналов для транспортного канала и назначает множество транспортных каналов для канала одного уровня. С другой точки зрения, канал одного уровня назначают для множества транспортных каналов, а транспортный канал назначают для множества логических каналов. В одном варианте осуществления назначение логических каналов для транспортного канала и назначение транспортных каналов для канала одного уровня принимают из сети. Кроме того, для каждого ТФ сеть указывает, каким логическим каналам, назначенным для транспортного канала, разрешено использовать ТФ. Каждый транспортный канал имеет множество транспортных форматов (МТФ, TFS), которые применимы для транспортного канала. МТФ представляет собой множество транспортных форматов (ТФ, TF), которые применимы для транспортного канала. ТФ можно применять для транспортного канала, если биты из потоков данных на логическом уровне можно поместить в ТФ транспортного канала в заданный базовый интервал времени. ТФ может не содержать данные (или содержать нулевые данные).
ТФ используется для доставки блоков данных в течение ВИП в транспортном канале. В одном варианте осуществления ТФ содержит динамические параметры, которые могут изменить каждый ВИП. В другом варианте осуществления ТФ содержит полустатические параметры, которые не могут изменяться каждый ВИП без реконфигурации канала. В одном варианте осуществления параметры ТФ включают в себя размер блоков (размер блока - РБ), на которые разделены данные, и множество таких блоков (размер множества блоков - РМБ) посылают в ВИП. В одном варианте осуществления размер блока и размер множества блоков являются динамическими. В другом варианте осуществления размер блока и размер множества блоков являются полустатическими. В одном варианте осуществления размер ВИП, параметр, показывающий схему защиты от ошибок, используемый для проверки данных, и длина ЦИК (циклического избыточного кода) являются полустатическими параметрами. В другом варианте осуществления размер ВИП, параметр, указывающий схему защиты от ошибок, используемый для проверки данных, и длина ЦИК являются динамическими параметрами.
Каждый транспортный канал имеет ВИП, а каждый ТФ для транспортного канала имеет такой же ВИП. Таким образом, ВИП ТФ соответствует ВИП соответствующего транспортного канала. Параметр длины ВИП представляет собой ВИП ТФ. Каждый ТФ имеет ВИП и не может изменяться в течение его ВИП.
ТФ для каждого транспортного канала объединен в КТФ. КТФ является комбинацией форматов ТФ, каждый ТФ соответствует транспортному каналу. Таким образом, если каждый ТФ является не пустым, данные для каждого транспортного канала посылаются по беспроводной линии связи в форме КТФ. КТФ посылается по беспроводной линии связи удаленной станции в каждый интервал времени.
Не все возможные комбинации форматов ТФ разрешены. Множество допустимых КТФ получают из сети. Множество допустимых КТФ называют множеством комбинаций транспортных форматов (МКТФ). КТФ в МКТФ являются допустимыми в том смысле, что сеть позволяет транспортировать КТФ через сеть. Таким образом, не все возможные комбинации ТФ могут выполняться для канала на первом уровне, а только подмножество всех возможных комбинаций, то есть МКТФ.
В соответствии с одним вариантом осуществления оптимальный КТФ выбирают для передачи по каналу первого уровня в течение каждого интервала времени. В одном варианте осуществления процесс выбора КТФ происходит каждые 10 мс. Специалистам в данной области техники должно быть очевидно, что можно использовать любой размер интервала времени. Идеальный размер интервала времени для использования будет зависеть от приложения. В одном варианте осуществления ВИП для транспортного канала может составлять 10, 20, 40 и 80 мс. Специалистам в данной области техники должно быть очевидно, что можно использовать любой ВИП. ВИП форматов ТФ зависит от приложения.
От одного интервала времени до следующего интервала времени ТФ, который не находится на границе своего ВИП, в данном ВИП не изменяется. Внутри КТФ от одного интервала времени до следующего интервала времени могут изменяться только те ТФ, которые находятся на границе своих ВИП. Как только ТФ выбран для данного транспортного канала, он не может быть изменен до границы следующего ВИП для этого транспортного канала. Только между границами ВИП ТФ можно выбрать КТФ, которые имеют такой же ТФ для транспортного канала, который был в КТФ на предыдущем интервале времени. ВИП выровнены для всех транспортных каналов. Поэтому граница ВИП для одного транспортного канала является также границей для всех транспортных каналов, которые имеют равный или более короткий ВИП. Например, граница ВИП 40 мс является также границей ВИП 20 мс и 10 мс, но не является границей ВИП 80 мс.
В одном варианте осуществления алгоритм распределения содержит четыре этапа, показанные ниже:
(1) Исключение КТФ на основании текущей максимальной мощности передатчика;
(2) Исключение КТФ из множества на основании ограничений ВИП;
(3) Исключение КТФ из множества на основании доступных блоков в транспортном канале; и
(4) Выбор КТФ, которая обеспечивает возможность передачи блоков с самым высоким приоритетом.Специалистам в данной области техники должно быть очевидно, что этапы (1), (2) и (3) можно выполнять в любом порядке и в пределах объема притязаний настоящего изобретения. Другой вариант осуществления содержит этапы (2), (3) и (4), но не содержит этап (1). Каждый этап описан более подробно ниже.
На этапе (1) КТФ исключаются из множества допустимых КТФ на основании требований по мощности. Каждая КТФ требует для передачи определенную величину мощности. Вычисляется требуемая мощность для каждой КТФ. КТФ, для которых требуется большая мощность, чем может быть обеспечена для передачи в настоящее время, исключаются. КТФ, которые не требуют большей мощности, чем может быть обеспечена в настоящее время для передачи, остаются.
На этапе (2) исключаются КТФ на основании ВИП транспортных форматов. Сохраненным множеством является множество КТФ, которое можно использовать на основании ограничения, заключающегося в том, что транспортные форматы не могут изменяться в середине ВИП. Как только ТФ выбран для данного транспортного канала, ТФ не может быть изменен до следующей границы ВИП для этого транспортного канала. Таким образом, можно выбирать только те КТФ, которые имеют такой же ТФ для этого транспортного канала.
Псевдокод для исключения КТФ на основании ограничений ВИП форматов ТФ в соответствии с одним вариантом осуществления показан ниже. Векторная запись использована для всех множеств, которые используются. Если А является множеством КТФ, тогда А[i] является i-й КТФ в множестве. Если B является КТФ, тогда B[i] является ТФ для i-го транспортного канала. Если C является МТФ, тогда C[i] является i-м ТФ в множестве. Если D является ТФ, тогда D->RS и D->NB являются размером блока управления радиолинией (УРЛ) и количеством блоков для этих ТФ, соответственно. Размер блока УРЛ является размером блока канального уровня.
Если А является физическим каналом, тогда А->N является количеством транспортных каналов, назначенных для этого физического канала, а А[i] является i-м транспортным каналом, назначенным для этого физического канала. Также, если B является транспортным каналом, тогда B[j] является j-м логическим каналом, назначенным для этого транспортного канала. Наконец, если А является физическим каналом, тогда А[i][j] обозначает j-й логический канал i-го транспортного канала.
Если B является транспортным каналом, тогда B->ВИП, B->МТФ и B->N является его ВИП, его МТФ и количеством логических каналов, назначенных для этого транспортного канала, соответственно. Если L является логическим каналом, тогда L->ЗБ (занятость буфера) является его занятостью буфера и L->ЗРК (длина заголовка радиоканала) является длиной заголовка УРЛ для соответствующего логического объекта УРЛ. P является физическим каналом, а N является количеством существующих транспортных каналов. Множества S и S2 являются множествами КТФ.
Так как полустатические параметры не могут изменяться от ВИП к ВИП, все ТФ в МТФ должны иметь одни и те же значения для таких параметров. Следовательно, поскольку рассматривается алгоритм выбора КТФ, они становятся характеристиками транспортного канала, а не ТФ. Ki является индексом транспортного формата, используемого в текущем интервале времени для i-го транспортного канала. Граница текущего интервала времени является границей для ВИП с длиной ВИП_max и меньше. ВИП_max является максимальной границей ВИП для данного интервала времени. S и S2 являются множествами КТФ.
1. Присвоить S2 = S1.
2. Присвоить i=1. Это будет индексом для всех транспортных каналов.
3. Если P[i]->ВИП<-ВИП_max, тогда перейти к этапу 12.
4. Присвоить S = 0.
5. Пусть m будет количеством оставленных КТФ в S2, пронумерованных от 1 до М.
6. Присвоить j = 1. Это будет индексом для элементов в S2.
7. Если P[i]->МТФ[Ki]!=S2[j][i], тогда перейти к этапу 9.
8. Добавить S2[j] к S.
9. j=j+1.
10. Если j<=М, тогда перейти к этапу 7.
11. Присвоить S2 = S.
12. i=i+1
13. Если i<=P->N, тогда перейти к этапу 3.
14. Алгоритм завершен и действительные КТФ находятся в S2.
На фиг.3 изображена блок-схема программы для исключения КТФ на основании ограничений ВИП транспортных кадров в соответствии с одним вариантом осуществления. На этапе 60 множество S1 объявляют множеством действительных КТФ. S1 является множеством допустимых КТФ, которые не требуют большей мощности, чем может быть передана. На этапе 62 множество S2 объявляют множеством S1, а индексу i присваивают начальное значение. Индекс i является индексом для всех транспортных каналов. Множество S2 является множеством действительных КТФ, для которых каждый ТФ для каждого транспортного канала будет сравниваться с текущими ТФ для каждого транспортного канала.
P является физическим каналом. P[i] представляет i-й транспортный канал, назначенный для физического канала P. ВИП_max является максимальной длиной ВИП для границы текущего ВИП. На этапе 64 ВИП i-го транспортного канала проверяют, чтобы определить, является ли он меньше или равен ВИП_max. Если ВИП i-го транспортного канала меньше или равен ВИП_max, то ТФ для i-го транспортного канала может быть изменен, и на этапе 66 индекс i увеличивают, то есть, переходят к следующему транспортному каналу. Если ВИП i-го транспортного канала больше, чем ВИП_max, то на этапе 68 S объявляют пустым множеством. Теперь КТФ в множестве S2 должны быть проверены для определения, имеется ли какой-нибудь из этих ТФ для каждого транспортного канала, который соответствует текущим ТФ для каждого транспортного канала. На этапе 70 m является количеством элементов в S2, а индекс j устанавливается на единицу. Индекс j является индексом в множестве S2.
Ki является индексом транспортного формата, используемого в текущем интервале времени для i-го транспортного канала. Граница текущего интервала времени является границей для интервалов ВИП с длиной ВИП_max и ниже. На этапе 72 текущий ТФ для i-го транспортного канала проверяют с целью определения, не соответствует ли он i-му ТФ в j-ом КТФ в множестве S2. S2[j] обозначает j-ю КТФ в множестве S2. S2[i][j] обозначает i-й ТФ в j-й КТФ в множестве S2. Позиция ТФ в КТФ указывает транспортный канал. Если текущий ТФ для i-го транспортного канала не соответствует i-му ТФ в j-й КТФ в множестве S2, то на этапе 74 индекс j увеличивается, то есть, переходят к следующему КТФ в множестве S2. Если они соответствуют, то на этапе 76 добавляется j-я КТФ к множеству S, а на этапе 74 увеличивается j.
Как только индекс j увеличен, затем на этапе 78 индекс j проверяется, чтобы определить, все ли КТФ в множестве S2 проверены. Если не все КТФ в множестве S2 были проверены, то на этапе 72 текущий ТФ для i-го транспортного канала проверяется, чтобы определить, не соответствует ли он i-му ТФ в j-й КТФ в множестве S2. Если все КТФ в множестве S2 были проверены, то на этапе 80 множество S2 присваивают множеству S, и на этапе 66 индекс i увеличивается. На этапе 82 индекс i проверяют, чтобы определить, все ли КТФ проверены на ограничения ВИП для всех транспортных каналов. Если КТФ для транспортного канала не проверены, то на этапе 64 ВИП i-го транспортного канала проверяют, чтобы определить, меньше ли он или равен ВИП_max. Если все КТФ для всех транспортных каналов проверены, то множество S2 содержит действительные КТФ после исключения КТФ на основании ограничений ВИП.
Ниже показан соответствующий одному варианту осуществления псевдокод для исключения КТФ на основании доступности текущих битов из различных логических каналов, устанавливающих, что не позволяется введение блоков "заполнения". КТФ является приемлемой, только если она не содержит транспортных блоков больше, чем доступно для любого из транспортных каналов.
1. Присвоить S3=S2.
2. Присвоить i = 1. Это будет индексом для всех транспортных каналов.
3. Пусть Sb будет множеством размеров УРЛ, которые присутствуют в любом КТФ в S3 для 1-го транспортного канала.
4. Выбрать RS размер УРЛ из Sb.
5. Пусть St будет совокупностью КТФ в S3, который имеет RS размер УРЛ для 1-го транспортного канала. Пусть М будет количеством КТФ в St.
6. Установить j = 1. Это будет индексом для КТФ в St.
7. Вычислить:
8. Если St[j][i]→NB≤T, то перейти к 10.
9. S3=S3-{St[j]}.
10. j=j+1.
11. Если j ≤ М, то перейти к этапу 8.
12. Присвоить Sb=Sb-{RS}.
13. Если Sb ≠ {}, то перейти к этапу 4.
14. Присвоить i=i+l.
15. Если i≤P->N, то перейти к этапу 3.
16. Если S3 является пустым множеством, или S3 состоит из пустого КТФ (не содержит никаких данных) и некоторые данные доступны (существует некоторый P[i][k]->ЗБ≠0), то установить S3 = S2.
17. Алгоритм завершен и действительные КТФ находятся в S3.
На фиг.4 изображена блок-схема программы для исключения КТФ на основании доступности текущих битов из различных логических каналов, устанавливающих, что не позволяется введение блоков "заполнения" в соответствии с одним вариантом осуществления. На этапе 90 множество S2 является множеством действительных КТФ после исключения КТФ на основании ограничений ВИП. На этапе 92 множество S3 присваивают множеству S2, а индексу i присваивают начальное значение. Индекс i является индексом для транспортных каналов. На этапе 94 Sb является множеством размеров УРЛ для i-го транспортного канала. На этапе 96 размер УРЛ, RS, выбирают из множества Sb, а St является множеством КТФ в множестве S3, который имеет RS размер УРЛ в i-м транспортном канале. М является количеством КТФ в S3.
На этапе 98 сумму T вычисляют, как
,
где N - количество логических каналов, ЗБ - занятость буфера k-го логического канала i-го транспортного канала в битах, RS - размер УРЛ в транспортных блоках, а ЗРК - длина заголовка радиоканала в транспортных блоках. Сумма T включает в себя только логические каналы, которые могут использовать размер УРЛ, определенный RS. Таким образом, занятость буфера k-го логического канала i-го транспортного канала, который не может использовать размер УРЛ, определенный RS, для вычисления суммы T равна нулю. Каждое слагаемое суммирования является наименьшим целым числом. Таким образом, T является наименьшим целым числом занятости буфера в битах всех логических каналов, которые могут использовать размер УРЛ, разделенный на размер УРЛ, который вырабатывает количество транспортных блоков, доступных от всех транспортных каналов размера УРЛ.
На этапе 100 количество блоков в i-м ТФ в j-м КТФ в множестве St, то есть ТФ для i-го транспортного канала, проверяется по отношению к количеству T доступных транспортных блоков. Если количество блоков в i-м ТФ меньше или равно количеству T доступных транспортных блоков, то на этапе 102 индекс j увеличивается и процесс проверки переходит к этапу 104. Если количество блоков в i-м ТФ больше, чем количество T доступных транспортных блоков, то на этапе 106 j-ю КТФ из множества S3 удаляют, и процесс проверки переходит к этапу 102.
На этапе 104 проверяют, все ли КТФ в множестве St были проверены. Если проверены все КТФ, то процесс проверки переходит к этапу 106. Если проверены не все КТФ, то процесс проверки переходит к этапу 100 и проверяется следующий КТФ.
На этапе 106 множество Sb присваивают множеству Sb-RS, то есть размер УРЛ удаляют из множества размеров УРЛ. На этапе 108 множество Sb проверяют, чтобы определить, пустое ли оно, то есть, что все размеры УРЛ были проверены. Если множество Sb пустое, то процесс проверки переходит к этапу 96 и выбирается другой размер УРЛ. Если Sb не пустое, то на этапе 110 индекс i увеличивается для следующего транспортного канала и на этапе 112 проводится проверка, чтобы определить, все ли транспортные каналы проверены. Если транспортные каналы проверены не все, то процесс проверки переходит к этапу 96 и следующему транспортному каналу. Если проверены все транспортные каналы, то на этапе 114 проверяют, является ли множество S3 пустым. Если множество S3 пустое, то на этапе 116 множество S3 присваивают множеству S2. Теперь S3 содержит действительные КТФ после исключения КТФ на основании доступности текущих битов из различных логических каналов, устанавливающих, что введение блоков "заполнения" не позволяется. Если множество S3 не пустое, то на этапе 118 множество S3 проверяют для определения, является ли множество S3 множеством пустой КТФ (не содержит никаких данных), а некоторые данные доступны (существуют некоторые P[i][k]→ЗБ≠0), в этом случае процесс проверки переходит к этапу 116. На этапе 116 множество S3 присваивают множеству S2, в этом случае множество S3 содержит действительные КТФ после исключения КТФ на основании доступности текущих битов из различных логических каналов.
В одном варианте осуществления все КТФ с одинаковым размером блоков (в i-м транспортном канале) группируются в S3. В другом варианте осуществления КТФ с одинаковым размером блоков не должны группироваться вместе. В этом варианте осуществления T вычисляется каждый раз, когда исследуются различные КТФ.
Даже при том, что заполнение не позволяется при большинстве обстоятельств, есть некоторые случаи, при которых это допускается, чтобы избежать долгих задержек передачи и взаимной блокировки:
- если в конце этого алгоритма S3 является пустым множеством, и
- если единственная разрешенная КТФ является пустой КТФ и доступны некоторые данные.
Ниже показан псевдокод для выбора оптимальной КТФ в соответствии с одним вариантом осуществления. Биты из логических потоков данных гипотетически загружаются в КТФ. Загруженные КТФ сравниваются на основании количества данных с высоким приоритетом, которые они содержат.
Имеется n уровней приоритетов, Р1-Pn, с Р1, имеющим самый высокий приоритет. Для каждой КТФ в S3 создается переменное КБ (количество битов, NOB) и для каждого из транспортных каналов на каждой КТФ создаются переменные ВДБ (все еще доступные блоки, SAB). Если А является КТФ, тогда А->КБ является количеством битов для этой КТФ, а А[i]->ВДБ является доступным пространством для i-го транспортного канала. Количество битов соответствует определенному уровню приоритета. Все ВДБ устанавливаются на соответствующее количество блоков. Тогда можно выполнить следующий алгоритм:
1. Установить S4=S3.
2. Установить i = 1. Это будет индексом для уровней приоритета.
3. ▿j, установить S4[j]-> КБ = 0.
4. Пусть Sc будет множеством логических каналов приоритета Pi.
5. Выбрать логический канал L из Sc. Пусть он соответствует логическому каналу q, назначенному для транспортного канала j.
6. Пусть М будет количеством КТФ в S4.
Установить k = 1. Это будет индексом КТФ в S4.
7. Если S4[k][j]->RS и (S4[k][j]->ВДБ)·(S4[k][j]->RS) являются разрешенными для логического канала P[j][q], то перейти к этапу 9. Это ограничение может быть определено либо в МТФ (25.331.350 и последним), либо через "гибкие" элементарные действия из УРЛ.
8. Перейти к этапу 14.
9. Вычислить .
10. Если G<S4[k][j]->ВДБ, то перейти к этапу 18.
11. S4[k]→КБ+=(S4[k][j]→ВДБ)·(S4[k][j]→RS) и S4[k][j]→ВДБ=0.
12. Перейти к этапу 14.
13. S4[k]->КБ+=G·S4[k][j]→RS и S4[k][j]->ВДБ-=G.
14. k=k+1.
Если k ≤ М, то перейти к этапу 7.
Sc=Sc-{L}.
Если Sc ≠ {}, то перейти к этапу 5.
18. Сохранить в S4 КТФ с самым высоким значением КБ.
19. Если в S4 есть единственная КТФ, то алгоритм выполнен и следует использовать эту КТФ.
20. i=i+1.
21. Если i ≤ n, то перейти к этапу 3.
22. Выбрать одну из КТФ в S4, которая несет наименьшее количество битов.
Фиг.5A-5B изображена блок-схема программы выбора оптимальной КТФ в соответствии с одним вариантом осуществления. На этапе 140 S3 объявляется множеством действительных КТФ после исключения КТФ на основании доступных блоков. На этапе 142 S4 присваивают множеству S3 и инициализируют индекс i. Индекс i является индексом для уровней приоритета. На этапе 144 все количество блоков КБ для каждой КТФ в множестве S3 устанавливают на ноль. На этапе 146 Sc является множеством логических каналов на уровне приоритета Pi. На этапе 148 логический канал L выбирают из множества Sc, так что L соответствует логическому каналу q, назначенному для транспортного канала j. В одном варианте осуществления выбранный логический канал L обозначается с помощью сети. На этапе 150 М является количеством КТФ в S4, а k инициализируется на единицу. k является индексом КТФ в множестве S4.
На этапе 152, если размер УРЛ j-й ТФ в k-й КТФ в множестве S4 разрешен и величина размера УРЛ j-го ТФ в k-й КТФ в множестве S4, умноженная на все еще доступные блоки ВДБ в j-м ТФ в k-й КТФ в множестве S4, разрешена, то на этапе 154 вычисляется G. Иначе на этапе 156 увеличивается индекс k, то есть переходят к следующей КТФ в множестве S4. В одном варианте осуществления ограничивающее условие, разрешен ли размер УРЛ или величина размера УРЛ, умноженная на доступные блоки в ТФ, указывается сетью. В другом варианте осуществления это ограничение указывается в МТФ. В еще одном варианте осуществления это ограничение указывается через параметр из управления радиолинией УРЛ.
На этапе 154 G вычисляется как
,
где P[j][q]->ЗБ обозначает занятость буфера в битах q-го логического канала j-го транспортного канала. S4[k][j]->RS обозначает размер УРЛ в транспортных блоках j-го ТФ в k-й КТФ в множестве S4. P[j][q]->ЗРК обозначает длину заголовка УРЛ (ДЗУРЛ) в транспортных блоках q-го логического канала j-го транспортного канала. Таким образом, G является количеством доступных транспортных блоков для логического канала q, которые можно использовать для заполнения j-м ТФ в k-й КТФ.
На этапе 156, если G меньше, чем все еще доступные блоки ВДБ j-м ТФ в k-й КТФ в множестве S4, то на этапе 158 количество G, умноженное на размер блока j-го ТФ в k-й КТФ в множестве S4 добавляется к количеству блоков в k-й КТФ множества S4. Также на этапе 158 G вычитается из все еще доступных блоков в j-м ТФ k-й КТФ в множестве S4. Если G больше или равен все еще доступным блокам ВДБ j-го ТФ в k-й КТФ в множестве S4, то на этапе 160 количество все еще доступных блоков j-го ТФ k-й КТФ в множестве S4, умноженное на размер блока УРЛ j-го ТФ k-й КТФ в множестве S4, добавляется к количеству блоков в k-й КТФ в S4. Также на этапе 160 все еще доступные блоки в j-м ТФ k-й КТФ в множестве S4 устанавливаются на ноль. От обоих этапов 158 и 160 k увеличивается на этапе 156.
На этапе 162 производится проверка, чтобы определить, все ли КТФ в множестве S4 были проверены. Если проверены не все КТФ в множестве S4, то процесс проверки переходит к этапу 152. Если проверены все КТФ в множестве S4, то на этапе 164 из множества Sc удаляется логический канал L и на этапе 166 множество Sc проверяется для определения, не пустое ли оно. Если Sc не пустое, то процесс проверки переходит к этапу 148. Если Sc пустое, то на этапе 168 в множестве S4 сохраняются только КТФ с самым высоким значением КБ. На этапе 170 множество S4 проверяют для определения, имеет ли оно единственный элемент. Если в множестве S4 имеется единственный элемент, то на этапе 172 выбор КТФ закончен. Если в множестве S4 нет единственного элемента, то на этапе 174 индекс i увеличивается, то есть, переходят на следующий уровень приоритета. На этапе 176 делают проверку, чтобы определить, все ли уровни приоритета были проверены. Если проверены не все уровни приоритета, то процесс проверки переходит к этапу 144. Если проверены все уровни приоритета, то на этапе 178 выбирают КТФ с наименьшим количеством битов и на этапе 172 выбор КТФ заканчивается, и оптимальная КТФ выбрана.
Специалистам в данной области техники должно быть очевидно, что алгоритм КТФ можно применять для других взаимосвязей между сетевыми модулями. Его можно применять к любой ситуации, где модуль имеет множество входов и производит мультиплексированный выходной сигнал из множества входных сигналов. Например, модуль мультиплексора может быть расположен внутри БППС, причем БППС мультиплексирует потоки данных из множества абонентских блоков и производит мультиплексированный поток данных, который посылается в КБС.
Таким образом, представлен новый и улучшенный способ и устройство для распределения потоков данных в один поток данных, заданный ограничениями ВИП транспортных форматов. Специалистам в данной области техники должно быть понятно, что различные иллюстративные логические блоки, модули и этапы алгоритма, описанные в связи с раскрытыми здесь вариантами осуществления, могут быть осуществлены в виде электронного технического (аппаратного) обеспечения, программного обеспечения или их комбинации. Различные иллюстративные компоненты, блоки, модули, схемы и этапы были описаны в общем с точки зрения их функциональных возможностей. Осуществлены ли функциональные возможности в виде технического обеспечения или в виде программного обеспечения, зависит от конкретного приложения и конструктивных ограничений, накладываемых на всю систему. Специалистам в данной области техники должна быть понятна взаимозаменяемость технического обеспечения и программного обеспечения при этих обстоятельствах, и как лучше всего осуществить описанные функциональные возможности для каждого отдельного приложения. Например, различные иллюстративные логические блоки, модули и этапы алгоритма, описанные в связи с раскрытыми здесь вариантами осуществления, могут быть воплощены или выполнены процессором, выполняющим набор команд встроенных программ, интегральной схемой прикладной ориентации (ИСПО), вентильной матрицей, программируемой в условиях эксплуатации (ВМПУЭ) или другим программируемым логическим устройством, дискретным логическим элементом или логической схемой на транзисторах, дискретными компонентами аппаратного обеспечения, например, регистром, любого обычного программируемого модуля программного обеспечения и процессора, или любой их комбинации, предназначенной для выполнения описанных здесь функций. Мультиплексор может быть преимущественно микропроцессором, но в качестве альтернативы, мультиплексор может быть любым обычным процессором, контроллером, микроконтроллером или конечным автоматом. Приложения могут постоянно храниться в памяти ОЗУ (оперативного запоминающего устройства), флэш-памяти, памяти ПЗУ (постоянного запоминающего устройства), памяти программируемого ПЗУ, памяти электрически стираемого ПЗУ, регистрах, жестком диске, сменном диске, ПЗУ на компакт-дисках или любой другой форме носителя данных, известного в технике. Как показано на фиг.2, базовая станция 14 преимущественно связана с абонентским блоком 12, чтобы считывать информацию из базовой станции 14. Память 49 может быть неотъемлемой частью мультиплексора 48. Мультиплексор 48 и память 49 могут постоянно находиться в ИСПО (не показано). ИСПО может постоянно находиться в телефоне 12.
Предыдущее описание вариантов осуществления изобретения предложено, чтобы позволить любому специалисту в данной области техники выполнять или использовать настоящее изобретение. Различные модификации для этих вариантов осуществления будут очевидны таким специалистам в данной области техники, и определенные здесь общие принципы могут применяться к другим вариантам осуществления без использования изобретательской способности. Таким образом, настоящее изобретение не должно ограничиваться показанными здесь вариантами осуществления, но должно соответствовать самому широкому объему, соответствующему раскрытым здесь принципам и новым признакам.
Изобретение относится к области связи. Технический результат заключается в обеспечении распределения потоков данных, учитывая их приоритет. Сущность изобретения заключается в том, что данная система позволяет мультиплексировать множество потоков данных в один поток данных на основании приоритетов потоков данных, доступности комбинаций транспортных форматов (КТФ) и ограничений временного интервала передачи (ВИЛ) транспортных кадров внутри КТФ. Абонентский блок (12) имеет приложения, которые вырабатывают отдельные потоки данных. Потоки данных объединяются модулем (48) мультиплексора в один поток данных, называемый транспортным потоком (50). Транспортный поток (50) посылают по обратной линии связи в базовую приемопередающую станцию (БППС) (14). Модуль (48) мультиплексора мультиплексирует потоки данных в один поток согласно доступным КТФ, ограничениям ВИЛ и приоритетам потоков данных. 5 н. и 19 з.п. ф-лы, 5 ил.
ИНТЕРФЕЙС РЕСТРУКТУРИРОВАНИЯ КАДРОВ ДЛЯ ЦИФРОВЫХ ПОТОКОВ, МУЛЬТИПЛЕКСИРОВАННЫХ ВРЕМЕННЫМ МУЛЬТИПЛЕКСИРОВАНИЕМ ЦИФРОВЫХ ПОТОКОВ, ПОСТУПАЮЩИХ С РАЗЛИЧНЫМИ СКОРОСТЯМИ | 1991 |
|
RU2112320C1 |
EP 1009174 A, 14.06.2000 | |||
Горючее для магнитогидродинамического генератора | 1980 |
|
SU1001642A1 |
US 6118786, 12.09.2000. |
Авторы
Даты
2006-11-27—Публикация
2002-01-16—Подача