Автор Тема: AngeliaLite - OpenHPSDR совместимый СДР  (Прочитано 16391 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн UR3IQO

  • Постоялец
  • ***
  • Сообщений: 50
  • Репутация: +8/-0
AngeliaLite - OpenHPSDR совместимый СДР
« : 14 Февраль 2020, 19:05:28 »
Приветствую всех!

С год назад сделал SDR модуль для разных своих поделок. Модуль имеет два независимых синхронизированных канала обработки с 14битными АЦП работающими на частоте 77.76MSPS, ПЛИС Cyclone 4, 14битный ЦАП работающий на частоте 155.52MSPS. И все, что нужно для функционирования этого всего - питание, тактирование (от малошумящего ОГ, стабилизированного от 10МГц ТСХО), конфигурационная память и JTAG интерфейс, а также простенькая фильтрация по входу АЦП/иыходу ЦАП. Параметры получились довольно хорошие (см. ниже), в ходе обсуждения того, что получилось возникла идея сделать на базе него основу для OpenHPSDR совместимого трансивера. В итоге получилось так (см. вложения).



Теперь подробнее. Целью всего этого было создание бюджетного варианта трансивера (точнее основы для трансивера), который был бы частично совместимым с проектом OpenHPSDR и мог бы работать с программой SDR Console. Прошивка ПЛИС основана на базе кода от Angelia, NCO позаимствован от Hermes-Lite2, многое дописано мной. Реализовано 4 независимых приемника (каждый из которых может быть подключен к любому из двух АЦП) с выходной частотой дискретизации до 192кГц, также присутствуют сетевой протокол ICMP, поправлен изначально кривоватый DHCP.

SDR модуль я уже кратко описал выше, теперь про вторую плату - на второй плате находятся Ethernet PHY (100Mб/с),  интерфейсы подключения внешних устройств, EEPROM для MAC/IP адреса, а также контроллер который этим всем управляет (у ПЛИС катастрофически мало ног, да и забита она уже почти под завязку - использование контроллера помогает по большей части решить эти вопросы). Кроме того на плате есть стабилизатор, который позволяет питать обе платы от одного источника 12В (потребляемый ток около 400мА).

Чтобы получить полноценный КВ/50МГц трансивер достаточно добавить немного фильтрации по входу (на плате модуля имеются ФНЧ с частотой среза немного более 60МГц, но они пропускают сигналы как в первой, так и во второй зонах Найквиста, поэтому в минимальной варианте необходим ФНЧ с частотой среза 30МГц на КВ и ПФ на диапазон 50МГц). Так же необходимо добавить УМ и ФНЧ на передачу.

Конструкция также должна быть удобной для работы с УКВ трансвертерами. При этом ПЧ можно выбирать во второй зоне Найквиста. Работа ЦАПа на удвоенной частоте позволяет получить хорошее подавление зеркального канала в диапазоне 50МГц и немного расширить диапазон частот вверх при работе на передачу (по сравнению с классическим частотным раскладом OpenHPSDR с частотой дискретизации 122.88МГц).

Некоторые ограничения:
- максимально поддерживаемая частота дискретизации на выходе DDC 192кГц;
- нет аудио кодека;
- скорость Эзернет подключения 100Мбит/с;
- требуется минимальная дополнительная фильтрация по входу (см. выше);
- отсутствует УМ на выходе ЦАП;
- для обновления прошивки нужен JTAG адаптер (Altera USBBlaster или что-то подобное).

Прошивка сделана только под вторую версию протокола, поэтому работать это все будет с SDR Console https://www.sdr-radio.com/console и Thetis https://github.com/TAPR/OpenHPSDR-Thetis/releases .

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

Чувствительность/Кш/Уровень ПШ/ДД по блокированию

ATTMDSNFFS lvlBDR
0dB-133dBm14dB-13dBm120dB
-10dB-127dBm20dB-2dBm125dB
-20dB-117dBm30dB+9dBm126dB
-30dB-107dBm40dB--

ДД по обратному преобразованию на шумах
ОтстройкаRMDRШум
1кГц111dB-138dBc/Hz
2кГц113dB-140dBc/Hz
5кГц117dB-144dBc/Hz
10кГц121dB-148dBc/Hz
20кГц124dB-151dBc/Hz

Измерения проводились на частоте 7.156МГц с использованием ультрамолошумящего КГ (уровень бокового шума на отстройке более 10кГц в районе -180дБн/Гц). В ближней зоне наблюдается фликкер-шум самого АЦП.

ДД по интермодуляции третьего порядка

Охарактеризовать поведение приемника с прямой оцифровкой по части интермодуляции третьего порядка парой цифр (NF и IP3) не возможно (продукты интермодуляции не следуют кубическому закону). Поэтому я приведу графики зависимости уровня интермодуляционных искажений (приведенного ко входу приемника) в зависимости от уровня испытательных сигналов (уровень одного тона). См. вложения.

Разъемы на платах. См. вложения.

Прошивки и схемы:
https://github.com/UR3IQO/AngeliaLite

В заключении хочу поблагодарить Павла US4ICI за содействие в доставании комплектующих, обсуждения и поддержку!
« Последнее редактирование: 14 Февраль 2020, 19:28:09 от UR3IQO »

Оффлайн UA9FAD

  • Ветеран
  • *****
  • Сообщений: 9326
  • Репутация: +1638/-107
  • QRA: LO88AA
Re: AngeliaLite - OpenHPSDR совместимый СДР
« Ответ #1 : 14 Февраль 2020, 20:25:49 »
Теперь немного замеров

А зеркалка как выглядит?
Victor Виктор

Оффлайн UR3IQO

  • Постоялец
  • ***
  • Сообщений: 50
  • Репутация: +8/-0
Re: AngeliaLite - OpenHPSDR совместимый СДР
« Ответ #2 : 14 Февраль 2020, 21:37:04 »
А зеркалка как выглядит?
Хорошо бы написать про какую именно зеркалку речь, но раз не написали напишу про все, а Вы выбирайте какая Вам интересна :).

Итак двигаемся от антенны до наушников. Первыми возникают "наложения" (иногда их называют зеркалками) из-за того, что АЦП принимает сразу в разных зонах Найквиста. Например, Вы настроились на 10МГц, кроме 10МГц, будет прием на 77.76МГц - 10МГц, 77.76МГц + 10МГц, 77.76МГц * 2 - 10МГц, 77.76МГц *2 + 10МГц и т.д. ФНЧ на входе отрежет все кроме первой и второй зоны, он имеет такую х-ку. См. вложение. Как я уже написал Выше минимальную дополнительную селективность нужно обеспечить внешним фильтром (ФНЧ на КВ + ПФ на 50МГц, или отдельные ПФ по диапазонам, по желанию и необходимости). Можно конечно просто изменить параметры ФНЧ на плате модуля, и обойтись без 50МГц и без дополнительных фильтров.

Далее "зеркалки" от первой децимации на 9, будут подавлены CIC фильтром минимум на 116дБ (АЧХ посчитанная МАТЛАБом прилагается). Вторая децимация на 5/10/20 и еще один CIC фильтр давит зеркалки на 121дБ минимум (АЧХ для самого неблагоприятного варианта прилагаю). И последняя стадия КИХ фильтр - расчетное подавление 120дБ, реальное с учетом эффектов квантования порядка 100дБ - АЧХ прикладываю (синяя расчет, красная реальность).

На этом зеркалки заканчиваются. Возможно Вас интересовало подавление обратной боковой полосы - т.к. используется прямая оцифровка на частоте приема, то подавление полностью определяется параметрами фильтра основной селекции который используется в программе. Эти параметры настраиваются и хорошее подавление (более 100дБ) не представляет особую проблему.

Оффлайн RA3APW Карен

  • Ветеран
  • *****
  • Сообщений: 896
  • Репутация: +346/-12
    • http://www.ra3apw.ru
  • QRA: KO85UV
Re: AngeliaLite - OpenHPSDR совместимый СДР
« Ответ #3 : 15 Февраль 2020, 10:27:59 »
С год назад сделал SDR модуль для разных своих поделок. Модуль имеет два независимых синхронизированных канала обработки с 14битными АЦП работающими на частоте 77.76MSPS, ПЛИС Cyclone 4, 14битный ЦАП работающий на частоте 155.52MSPS. И все, что нужно для функционирования этого всего - питание, тактирование (от малошумящего ОГ, стабилизированного от 10МГц ТСХО), конфигурационная память и JTAG интерфейс, а также простенькая фильтрация по входу АЦП/иыходу ЦАП. Параметры получились довольно хорошие (см. ниже), в ходе обсуждения того, что получилось возникла идея сделать на базе него основу для OpenHPSDR совместимого трансивера. В итоге получилось так (см. вложения).
...
В заключении хочу поблагодарить Павла US4ICI за содействие в доставании комплектующих, обсуждения и поддержку!
Олег, мои искренние поздравления! На мой взгляд отличная интересная разработка.

Можно несколько слов (или ссылки) о методиках измерения для SDR, которые имеют отличия от подобных процедур для классического аналогового  радиоканала.

Какие SDR решения для диапазонов 144 и 432 МГц сейчас разумны учитывая баланс стоимости/параметров по сравнению с классическим аналоговым подходом ?
« Последнее редактирование: 15 Февраль 2020, 10:31:26 от RA3APW Карен »
Карен, RA3APW                   www.ra3apw.ru

Оффлайн UR8IP Андрей

  • Ветеран
  • *****
  • Сообщений: 1240
  • Репутация: +291/-38
  • QRA: kn87sc
Re: AngeliaLite - OpenHPSDR совместимый СДР
« Ответ #4 : 15 Февраль 2020, 10:35:25 »
Готов купить чистые платы для дальнейшей сборки данной конструкции.
73! Андрей

Оффлайн RA0LDP Олег

  • Старожил
  • ****
  • Сообщений: 384
  • Репутация: +52/-12
Re: AngeliaLite - OpenHPSDR совместимый СДР
« Ответ #5 : 15 Февраль 2020, 11:47:14 »
Чем  то  напоминает  Red Pitaya ,  только  по  стоимости  гораздо  дешевле .  Молодцы  ребята !

Оффлайн UR3IQO

  • Постоялец
  • ***
  • Сообщений: 50
  • Репутация: +8/-0
Re: AngeliaLite - OpenHPSDR совместимый СДР
« Ответ #6 : 15 Февраль 2020, 13:33:13 »
Можно несколько слов (или ссылки) о методиках измерения для SDR, которые имеют отличия от подобных процедур для классического аналогового  радиоканала.

Основные отличия при измерении ДД по блокированию и интермодуляции. При измерении ДД по блокированию верхняя граница ДД  определяется не уменьшением полезного сигнала (на 1 или 3дБ в зависимости от методики), а максимальным уровнем сигнала который способен оцифровать АЦП без перегрузки. Но получившаяся цифра также как и в случае с аналоговым радио несет примерно ту же полезную информацию.

А вот в случае с интермодуляцией все сложнее. Для аналогового радио обычно достаточно указать две цифры - NF и IP, и можно подсчитать ДД по интермодуляции для любой полосы и для любой заданной нижней границы этого ДД. Так можно делать из-за того, что в аналоговом радио поведение продуктов интермодуляции обычно хорошо соответствует теории. Например, продукты интермодуляции третьего порядка следуют кубическому закону, т.е. увеличив уровень испытательных сигналов на 10дБ получим рост продуктов интермодуляции на 30дБ. В приемнике с прямой оцифровкой продукты интермодуляции появляются не только в результате нелинейностей в аналоговой части, но и в силу различных наводок, неидельности АЦП и прочего. Из-за этого невозможно рассчитать поведение продуктов интермодуляции при изменении уровня испытательных сигналов.

Одним из вариантов разрешения данной проблемы - привести график отображающий зависимость уровня продуктов интермодуляции от уровня тестовых сигналов. По такому графику можно определить ДД для разных ситуаций и сравнить как с аналоговыми приемниками, так и с цифровыми.
 
Второй вариант использовать генератор шума и режекторный фильтр, его активно Адам AB4OJ продвигает (вот здесь подробности https://www.ab4oj.com/test/docs/npr_test.pdf ). Вариант довольно интересный, но измерительная установка получается сложнее, и переменных от которых зависят результаты больше.

Цитировать
Какие SDR решения для диапазонов 144 и 432 МГц сейчас разумны учитывая баланс стоимости/параметров по сравнению с классическим аналоговым подходом ?
Ой, это очень обширная тема. Очень много зависит от того какие требования по параметрам, что хочется получить в итоге и для чего нужен SDR. Если не требуется супер параметров по ДД, то наверное оптимально использование чипов в которых реализован "трансивер на кристалле", однако любителям с ними сложно работать - как правило сложные корпуса и плата потребует более 4х слоев. Т.е. здесь нужно готовое железо, а эксперименты ограничатся ПО и различными "дополнительными" железками.

Оффлайн US4ICI

  • Ветеран
  • *****
  • Сообщений: 2214
  • Репутация: +398/-102
Re: AngeliaLite - OpenHPSDR совместимый СДР
« Ответ #7 : 15 Февраль 2020, 16:42:49 »
Чем  то  напоминает  Red Pitaya ,  только  по  стоимости  гораздо  дешевле .  Молодцы  ребята !
Вот последняя версия Pitaya SDR: https://ru.mouser.com/ProductDetail/Red-Pitaya/IZD0021?qs=%2Fha2pyFadugKN3V9EJJJd4dGc3IH6%2FFL2%252BcL9k2ncQgopTGwXkZFcrtmj%2FQ61rNS90JiVJ1OEA0%3D
Задумано интересно, удалось ли получить достаточную развязку цифровой части и входов АЦП??  Нужны подробные измерения характеристик, что бы ответить на этот вопрос. Интересно сколько слоев в плате.  У Олега DDC 4 слоя.
« Последнее редактирование: 15 Февраль 2020, 16:44:50 от US4ICI »
Павел  US4ICI

Оффлайн RA3APW Карен

  • Ветеран
  • *****
  • Сообщений: 896
  • Репутация: +346/-12
    • http://www.ra3apw.ru
  • QRA: KO85UV
Re: AngeliaLite - OpenHPSDR совместимый СДР
« Ответ #8 : 15 Февраль 2020, 17:21:15 »
Цитировать
Какие SDR решения для диапазонов 144 и 432 МГц сейчас разумны учитывая баланс стоимости/параметров по сравнению с классическим аналоговым подходом ?
Ой, это очень обширная тема. Очень много зависит от того какие требования по параметрам, что хочется получить в итоге и для чего нужен SDR. Если не требуется супер параметров по ДД, то наверное оптимально использование чипов в которых реализован "трансивер на кристалле", однако любителям с ними сложно работать - как правило сложные корпуса и плата потребует более 4х слоев. Т.е. здесь нужно готовое железо, а эксперименты ограничатся ПО и различными "дополнительными" железками.
Олег, благодарю за пояснения по поводу SDR измерений.

Относительно второго вопроса - чисто утилитарное применение в виде маломощного UHF трансивера для QO-100.
То есть варианты типа ADALM Pluto и Lime SDR mini можно считать оптимальными по соотношению цена/качество на сегодня?
Карен, RA3APW                   www.ra3apw.ru

Оффлайн UR3IQO

  • Постоялец
  • ***
  • Сообщений: 50
  • Репутация: +8/-0
Re: AngeliaLite - OpenHPSDR совместимый СДР
« Ответ #9 : 15 Февраль 2020, 18:00:52 »
чисто утилитарное применение в виде маломощного UHF трансивера для QO-100.
То есть варианты типа ADALM Pluto и Lime SDR mini можно считать оптимальными по соотношению цена/качество на сегодня?
Мне сложно сказать, т.к. я в общем-то не УКВист и всех нюансов по этому спутнику не знаю, как и Lime SDR mini только на картинке видел. Но думаю за $159 что-то подобное найти сложно, а ДД сигналов со спутника он наверное переварит без особых проблем.

Оффлайн US4ICI

  • Ветеран
  • *****
  • Сообщений: 2214
  • Репутация: +398/-102
Re: AngeliaLite - OpenHPSDR совместимый СДР
« Ответ #10 : 15 Февраль 2020, 18:59:17 »
применение в виде маломощного UHF трансивера для QO-100.
   В этой теме представлен трансивер с высоким динамическим диапазоном, необходимый для тестов (особенно очных).
Работа через спутник и даже ЕМЕ не требует высокой динамики, если конечно мощный сосед рядом не "помогает".  Для приема спутника RTL донгл с ТСХО вполне подходит. Даже нечего сравнивать!
   Немаловажно что представленный трансивер под силу собрать радиолюбителю с опытом пайки SMD (даже не BGA).  Олег паял платы феном с паяльной пастой, без нижнего подогрева. Остальные 8 комплектов паял проф. монтажник. Lime SDR сам не запаяешь, а плата там 8-16 слоев. 
   Цель проекта разработка трансивера с высокими характеристиками, используя не самые дорогие компоненты.
Олег нашел результаты измерения последней  Red Pitaya SDR: https://www.dropbox.com/sh/a1yecde4hs91ji0/AAAD2dgrfv60W2ybQIgOhYEMa/test/RP16Bit_rus.pdf?dl=1
Сравнение не в пользу последней, несмотря на 16 бит АЦП и цену под 1к $
   Что еще важно для меня, и тех кто захочет повторить эту конструкцию, - автор легко доступен и при необходимости поправит ПО, например для удобной работы с трансвертерами.   
« Последнее редактирование: 15 Февраль 2020, 19:14:29 от US4ICI »
Павел  US4ICI

Оффлайн ub1amz

  • Постоялец
  • ***
  • Сообщений: 67
  • Репутация: +19/-3
  • St.Petersburg
  • QRA: KO49IX
Re: AngeliaLite - OpenHPSDR совместимый СДР
« Ответ #11 : 15 Февраль 2020, 19:20:57 »
Попробовал открыть проект:
Error (125048): Error reading Quartus II Settings File D:/msys32/home/yuri/AngeliaLite/Firmware/FPGA/Angelia.qsf, line 57
Info (125063): set_global_assignment -name TIMING_ANALYZER_MULTICORNER_ANALYSIS ON
Warning (125092): Tcl Script File Ethernet/icmp_fifo.qip not found
Info (125063): set_global_assignment -name QIP_FILE Ethernet/icmp_fifo.qip

Оффлайн UR8IP Андрей

  • Ветеран
  • *****
  • Сообщений: 1240
  • Репутация: +291/-38
  • QRA: kn87sc
Re: AngeliaLite - OpenHPSDR совместимый СДР
« Ответ #12 : 15 Февраль 2020, 19:27:31 »
Что еще важно для меня, и тех кто захочет повторить эту конструкцию
Так мы готовы , но чистых плат нет в наличии.
73! Андрей

Оффлайн US4ICI

  • Ветеран
  • *****
  • Сообщений: 2214
  • Репутация: +398/-102
Re: AngeliaLite - OpenHPSDR совместимый СДР
« Ответ #13 : 15 Февраль 2020, 19:44:11 »
Так мы готовы , но чистых плат нет в наличии.
Заказ плат от 10 штук возможен. Пока хочешь собрать только ты, Андрей.  Придется подождать. Стоит понимать что часть компонентов можно купить только на digikey или подобных крупных магазинах. Например микросхему УВЧ и генератор Ablno.  Мене комплектация попила немало крови :(
   Только пожалуйста в этой теме никаких заказов (списков).  Только технические аспекты проекта, вопросы по измерениям, предметные сравнения характеристик. Олег обещает позже добавить скрины измерений, график СПМШ от расстройки на передачу, может быть видео измерений или запись с эфира.
« Последнее редактирование: 15 Февраль 2020, 19:48:58 от US4ICI »
Павел  US4ICI

Оффлайн UR3IQO

  • Постоялец
  • ***
  • Сообщений: 50
  • Репутация: +8/-0
Re: AngeliaLite - OpenHPSDR совместимый СДР
« Ответ #14 : 15 Февраль 2020, 19:47:35 »
Попробовал открыть проект:
Каким квартусом открываете? Только что проверил, 18.1 открывает. Нехватка файла не ошибка, а предупреждение - он не нужен (потом .qsf поправлю, чтобы не раздражало).
« Последнее редактирование: 15 Февраль 2020, 19:50:35 от UR3IQO »