General Satellite

На главную Отправить письмо Карта сайта
Добро пожаловатьКорпорация Дженерал Сателайт — россий­ская научно-производствен­ная ком­па­ния, пред­став­ляющая на российском и между­народ­ном рын­ке высоко­технологич­ное радио­электронное обо­ру­дование, характеристики кото­рого отве­чают самым высо­ким стандар­там. Надеж­ность и про­фессионализм за многие годы успеш­ной работы позволили компа­нии занять место лидера в теле­коммуникацион­ном бизнес-сообществе Рос­сии.

подробнее

Цифровой спутниковый ресивер GS-8300



 

Technotrend. Софт версии 2.15. Краткий обзор.

Введение

Прошло уже более полугода, со времени выхода (16/09/2002) драйверов версии 2.10. За это время вышло три фикса (2.10а, 2.10b, 2.10c), последний из которых вышел 09/01/2002 и включал в себя два предидущих. Все фиксы правили мелкие недочеты (за исключением "ошибки 39800"), не затрагивая основных функций. И вот наконец теплым апрельским деньком 17 апреля 2003 г., фирма Technotrend выпустила новую версию - 2.15

Здесь стоит чуть остановиться и попытаться разобраться в неразберихе терминов - "драйвера", "софт", "программное обеспечение". Какой из них верен? Как это не странно, верны все (два последних - синонимы). Просто называя то или иной термин, мы определяем разные понятия. Наиболее корректным будет термин "программное обеспечение" (сокращенно"ПО") или в просторечии "софт". Почему? Давайте разберемся.

В поставку комплекта входит множество файлов:

  • собственно "драйвера" (drivers).
  • служебные библиотеки.
  • Firmware (фирмваре)
  • прикладные программы
  • вспомогательные файлы

Общение пользователя с устройством происходит по цепочке прикладная программа ->служебные библиотеки->драйвера->DVB-карта.
Рассмотрим поподробнее компоненты этой цепочки:

Драйвера
Драйвера осуществляют непосредственное общение с DVB-приемником, управляя им и принимая от него данные. Естественно, общение это происходит на самом низком уровне. Наличие этого компонента в цепочке позволяет прикладному софту и операционной системе общаться с картой посредством абстрагированных вызовов, не вникая в подробности конфигурации карты в системе и в особенности программирования аппаратной реализации конкретного релиза карты. Именно драйвера отвечают за отображение устройств в контрольной панели (значок "Система"). В ПО SkyStar1 драйверами являются файлы:

  • ttloophe.sys - DVB PCI Network Adapter Driver
  • Saa7146n.sys - TT-DVBsat PCI Saa7146n driver

Cлужебные библиотеки
Несколько расплывчатое понятие. Их собственно говоря может и не быть, прикладные программы могут общаться с драйверами напрямую. Однако это не очень удобно. Драйвера предоставляют слишком простые (низкоуровневые) вызовы. Это усложняет процесс написания программ разработчиком и делает практически невозможным написание программ сторонними производителями. Поэтому вводится некий промежуточный уровень, транслирующий большого числа вызовов сложных функций в простые функции драйверов. Именно этот интерфейс служебных библиотек и определяется разработчиком как "API - Application Programming Interface". Кстати SkyStar1 была первой картой, для которой разработчик открыл API. Именно это и определило наличие огромного числа программ, написанных сторонними производителями. В ПО SkyStar1 такими библиотеками являются файлы:

  • TTHlpDVBhe.dll
  • ttdvbacc.dll - Control and streaming DLL for TT-DVBsat PCI

Прикладные программы
Последнее звено в цепочке. Именно через них пользователь взаимодействует с системой. Программы выполняют конкретные (прикладные) функции - прием и показ ТВ-каналов, работу с потоками данных. Программы пишут как производитель, так и сторонние программисты. В ПО SkyStar1 такими программами являются файлы:

  • HighendTV.exe - TT- DVB Application (Highend)
  • DVBData.exe - DVB-Data Application

Firmware (фирмваре)
Это очень важный компонент ПО. Как видно, он не стоит в описанной выше цепочке, однако без него ничего работать не будет. Что же это такое? Ответ прост. Это программа, которую исполняет процессор, находящийся на карте. Firmware загрузается в ОЗУ карты каждый раз при старте прикладной программы. Причем некоторые программы используют собственное Firmware. Таким образом, работа карты обеспечивается взаимодействием как минимум двух одновременно исполняемых процессов.

Вспомогательные файлы
Это все что осталось. Для примера, файлы настроек транспондеров, файлы справочной системы и прочее.

Таким образом, если вы только смотрите ТВ и используете альтернативное ПО, то вам необходимы только драйвера и прикладные библиотеки.

 

Собственно софт 2.15

Итак, для тех кто еще не устал читать представляем краткий обзор ПО 2.15. Пока это будет краткий обзор. Подробности - стабильность работы, особенности работы со спутниковым интернет, альтернативным ТВ-софтом будут позже, по мере накопления данных

Системные требования для ТВ-софта: MS IE 5.5 или старше, DirectX 8.1 и старше. Производитель заявляет следущие новинки:

  • Новое firmware.
  • dvbdata - значение частоты транспондера с точностью до 1 КГц (ранее 1 МГц)
  • dvbdata - значение частоты гетеродина конвертора точностью до 1 КГц
  • Поддержка C-диапазона.
  • Обновлены файлы настроек транспондеров. Добавлены файлы настроек эфирных (DVB-T) и кабельных (DVB-C) сетей
  • Переработан алгоритм поиска каналов.
  • Новый GUI с большим количеством функций (TT HiEndTV).
  • Улучшен поиск по телетексту.
  • Расширенные OSD-функции.
  • Расширенные возможности дистанционного управления. Режим обучения для RC5-совместимых пультов управления.

 

dvbdata - значение частоты транспондера с точностью до 1 КГц

Еще при переходе со старого ПО версий 1.xx на новую WDM линейку версий 2.xx программисты Technotend отказались от возможности вводить частоту транспондера с точностью до 1 КГц, думая облегчит жизнь пользователям, оставив точность в 1МГц (1МГц = 1000КГц). Однако они не учли, что тюнер карты не обладает возможностью автоподтстройки частоты в широких пределах. Как известно карта может захватывать ("лочить") поток не только на центральной частоте, но в некой полосе частот ("полоса захвата"). Причем ширина этой полосы зависит от символьной скорости потока (SR, Symbol Rate). Например для SR = 27.500 MSpS (Mega Symbol per Second) полоса примерно равна 7000 КГц (7МГц), а для потока 2.170 MSpS (ОТИК-Интернет) примерно 500 КГц (0,5 МГц). Поподробней здесь.

Обратим внимание, что программисты Technotend вернув точность значению частоты, оставили низкую точность значению символьной скорости. Это не очень важно, но справеливости ради заметим, что действительные значения SR у ряда операторов задаются точностью выше чем 1 МГц.

Cамые низкоскоростные потоки даже могут и никогда не залочится. К примеру поток ОТИК-интернет (SR = 2170, полоса 0,5МГц ) очень легко может оказаться между двумя соседними значениями частоты транспондера. На рисунке - 12302400 КГц. В софте 2.10 это значение проваливалось между 12302 и 12303МГц. К чему еще может привести неточное задание частоты описано в Приложении 1.

dvbdata - прочее.

Здесь два нововведения:

  • Поддержка C-диапазона.
  • значение частоты гетеродина конвертора точностью до 1 КГц

Поддержка C-диапазона.. Опция для ленивых. Облегчает процедуру установки частоты гетеродина конвертора C-диапазона. Надо отметить, что требуемого результата можно было добиться и в старых версиях софта. Для полноты картины, остается пожелать программистам Technotend добавить и подержку однодиапазонных конверторов НТВ+ с частотой гетеродина 10750 МГц.

Точностью до 1 КГц. Аналогично параметру частоты транспондера, описанному выше. Безотносительно версии софта, рекомендуем выставлять здесь реальные частоты гетеродинов ваших конверторов именно здесь, а не корректировать каждый раз частоты транспондера. Как определить реальную частоту гетеродина, описано в Приложении 2.

Установки фильтров. При выборе режима фильтрации "Calculate MAC address from IP address of Dial-Up connection" становится активной кнопка "Select preffered connection". Здесь, по идее, мы должны выбрать желаемое соединение и вероятно задать индивидуалные настройки. Однако у нас на тестовом компьтере (Windows 98), несмотря на наличие десятка созданных соединений, ни одно из них не высветилось. Здесь же можно и задать префикс MAC адреса, но не произвольный (как в ПО SkyStar2), а из списка, содержащего 3 значения.

Вкладка SETUP.

 

ТВ-программа TT HiEnd TV

Здесь нововведения:

  • Переработан алгоритм поиска каналов
  • Новый GUI с большим количеством функций (TT HiEndTV).
  • Улучшен поиск по телетексту.
  • Расширенные OSD-функции.
  • Расширенные возможности дистанционного управления. Режим обучения для RC5-совместимых пультов управления.

Внешний вид.

Установки.

Поиск каналов (сканирование диапазона).

Как видно, полностью изменилось окно диалога. Однако, на первый взгляд, алгоритм поиска изменений не претерпел.

По нажатию кнопки "Konfiguruieren" можно вызвать диалог усатновок, описанный выше. По умолчанию открыт только быстрый поиск - сканирование транспондеров, заданных в файлах конфигурации. Для расширенного режима, требуется нажать кнопочку ">>".

Здесь можно отсканировать конкретный транспондер из списка или произвести полное сканирование диапазона. Интересно отметить наличие поля "Searching Range".

 

Файлы

 

Приложение 1. О стабильности частоты.

Как известно, тюнер DVB-премника оперирует не с реальной частотой транспондера, а с промежуточной (ПЧ) поступающей с конвертора. В конверторе происходит преобразование частоты с использованием опорного генератора - гетеродина. От точности и стабильности его частоты зависит и значение ПЧ на входе тюнера. Различают медленные и мгновенные изменения частоты. Медленные (длительные) изменения определяются температурной нестабильностью, или уходом со временем от старения (у меня DKF-51 ушел на 1,5 МГц) или изначальным отличием от стандартных частот. Мгновенная нестабильность частоты - суть процесса фазовых шумов.

Чем плох уход медленный уход частоты гетеродина или изначальное ее отличие от стандартной?

SkyStar1 как и любой приемник использующий для демодуляции PLL-синхронизируемый генератор опорной частоты, имеет определенный диапазон частот вблизи центральной в которой происходит захват и удержание PLL-петли (собственно полоса захвата уже полосы удержания). Причем ширина этой полосы напрямую зависит от символьной скорости демодулируемого потока. К примеру на 27500 это полоса равна 6900 КГц, на 4445 уже всего 1110 КГц. Как показывает практика, частота гетеродина может изменяться от температуры или от времени на +/- 2-3 МГц. Видно что для высокоскоростных потоков это не фатально - уход частоты уложится в полосу захвата. Для низкоскоростных потоков это приведет к срыву сигнала или невозможности поймать сигнал при сканировании со стандартными параметрами.

Стоить заметить, что многие современные тюнера обладают функцией автоподстройки частоты. Например тюнер DVB-карты SkyStar2 имеет диапазн автоподстройки в 15 МГц, с лихвой перекрывающий возможный уход частоты.

Чем вреден фазовый шум.

Современные конвертора для приема цифрового спутникового ТВ оптимизируются под минимальный фазовый шум (впрочем у качественного конвертора, как следствие и аналоговый шум меньше). Старые-же конвертора, оставшиеся с эпохи аналогового ТВ по фазовому шуму не нормировались, у них определялась только величина амплитудных шумов. Если вспомнить, что в стандарте DVB-S используется модуляция QPSK (Quadro Phase Shift Key), где информационные дибиты кодируются именно фазовыми углами на комплексной плоскости, становится ясно как вреден фазовый шум, изменяющий величину этого угла.

Фазовый шум проявляется тем сильнее, чем ниже символьная скорость (SR). На скоростях порядка 27500 хорошо работают почти все конвертора. На скоростях ниже 5000, начинается рост показателя BER (Bit Error Rate) до FEC (т.е. BER до коррекции). Причем, ни один софт для SkyStar1 к сожалению не выводит это показатель (хотя он есть в API). Поэтому для приема низкоскоростных потоков настоятельно рекомендуется применять высокостабильные конвертора с PLL-стабилизацией гетеродина и нестабильностями 500, 250, 100, 50, 25КГц. и ниже. Как следствие, они обладают и малым уровнем фазовых шумов.

 

Приложение 2. Определение реальной частоты гетеродина.

Для софта версий 2.02 - 2.10 сделать это можно с помощью программы API-sample (с состав ПО не входит). Для софта версий 2.15, где есть возможность задать частоту с точностью до 1КГц, это делается с помощью программы dvbdata.

Настройтесь на какой либо транспондер. Последовательно уменьшая частоту определите полосу захвата, причем сначала делайте шаг изменения большим 1 - 2 Мгц (1000 - 2000 КГц). Как только синхронизация будет потеряна, верните прежнее значение (убедившись что сигнал залочен) и снова меняйте частоту с более мелким шагом (например в 2 раза более мелким). Через несколько итераций нижняя граница полосы захвата будет найдена. Аналогично, найдите и верхнюю границу.

Среднее арифметическое значение можно считать рабочей частотой. Теперь осталось найти сдвиг. Вычтите из найденной рабочей частоты, то значение которое должно быть. Надо учесть, что частоты транспондеров нужно брать точные. Например 103 тр Astra (EON) в разных таблицах показан и как 12460 и как 12461 МГц, правильное-же значение - 12460,5 МГц или 124605000 КГц. Точные значения смотрите в частотных планах спутников на сайтах их операторов. Например для НТВ+ (спутник Eutelsat W4) по данным из файлаp_w4_rus.pdf:

12226160
12245340
12322600
12379600
12398780
12456320
12475500

Повторив вышеописанную процудуру для нескольких транспондеров полученные значения следует усреднить. Итговое значение и можно принять за сдвиг частоты, который надо вычесть из стандартной частоты гетеродина (9750 или 10600 МГц). Естественно, для каждого гетеродина - 9750 и 10600 проводится своя серия измерений - транспондеры в диапазоне 10700 - 11700 и 11700 - 12750.

 

Приложение 3. Проблема 39800.

Эффект был замечен пользователями PlanetSky, который использует достаточно высокую скорость потока - 39800. Выглядит это так: начинаешь вводить в сответствующей графе SR - 39800 и не успели вы еще нажать на кнопку "Apply", как DVBdata виснет. Прежде всего выяснилость, что при отсоединенном кабеле эффект сохраняется. Т.е. поток PlanetSky непричем. Дальнейшее изучение позволо выявит следущее:

  1. Это происходит только в софте 2.10, 2.10a, на более ранних версмях не наблюдается
  2. Это глюк не дров а программы DVBdata
  3. Эффект проявляется только при отсутствии залоченного сигнала. Именно так и бывает при первой настройке.
  4. Эффект не зависит от вводимой SR. Т.е. значени 39800 не является неким "Магическим числом"
  5. Эффект не зависит от фирмвари. Любая из 4-х фирмварей из файла boot_alt приводиа к одному результату.
  6. Если совсем оставить поле ввода SR пустым (удалить значение), то DVBdata вылетит через пару секунд с сообщением об ошибке.
  7. При установке параметров (т.е. при изменении параметров в соответвующих окошках) DVBdata непрерывно (раз в 2-3 сек) инициализирует ими тюнер. Кнопка "Apply"служит только для запоминания параметров в реестре.
  8. Суть эффекта: когда начинаешь вводить величину SR, последовательно вводя цифры 3, 9, 8, на каком-то этапе DVB дата виснет. Т.е. это происходит при инициализации тюнера (см п 3) заведомо неправильным значением (например 39 или 398).
  9. Программа testapidvb (из SDK) не инициализирует тюнер вводимыми значениями непрерывно, а делает жто только по команде Set Frontend. Это позволило выяснить что зависание происходит при вводимой SR < 210МГц. Также стало ясно, что дело не в dvbdata а глубже - ли в каких-то dll или в драйвере.

Вероятно после инициализации тюнера, программа ожидает сообщения об упешном или неуспешном результате. Причем время этого ожидания зависит от SR - чем меньше SR? тем дольше происходит захват и соответственно требуется большее время ожидания. Очевидная ошибка программистов Technotrend - процесс ожидания полностью блокирует работу приложения. Это подтверждается те, что однажды дождавшись в течении 30 мину, мы наблюдали кратковременное отвисание программы с полследущим зацикливанием.

Пути обхода:

  1. Откатиться на софт 2.08с
  2. Вводить значение SR не удаляя старого значения в этом окне. Т.е. поочередно выделяя с помощью мышки (или "Shift+стрелка") одну цифру за раз, менять ее на нужное вам значение и жать "Apply". Тогда значение SR не выйдет за границу допустимого диапазона.
  3. Выставить все требуемые параметры кроме SR и закрыть DVBdata. Далее запустить regedit и заменить значение ключаHKEY_LOCAL_MACHINE\Software\TechnoTrend\DVBMPE0\PlanetSky\Settings\Symbolrate на 39800000 (или другое). Затем запустив DVBdata убедиться, что сигнал присутствует. Теперь, кстати, со значением SR можно делать что угодно - DVBdata не виснет - ведь сигнал уже залочен.

 

30 апреля 2003г.

Алексей Силяков, aka Globus

 

Комментарии? Поправки? Дополнения? satinet@msk.gs.ru
О корпорации|Продукция|Техническая информация|Онлайн поддержка|Новости|Статьи|Сервисное обслуживание|Международное сотрудничество
Copyright © 2004 «General Satellite».
All rights reserved.


Rambler's Top100 Яндекс цитирования