Перейти к содержанию

Veter0k

Участник
  • Публикаций

    39
  • Зарегистрирован

  • Посещение

Репутация

0 Обычный

Информация о Veter0k

  • Звание
    Участник
  1. DCF77 + Cortex-M4F

    Может кто-то пробовал, поделитесь опытом. Как я это вижу. LC контур выделяет полосу с центром в 77.5 кГц. Предусилитель усиливает для подачи в АЦП. Модуляция AM (10 Гц), PSK (~683 Гц). АЦП тактируется VCXO, управление PWM. Нужная частота формируется внутренней PLL. АЦП 12 бит, 1 Msps. Количество выборок 12 на период (930 кГц). В таблице забито 12 константных значений для sin и cos. Дальнейшую обработку думаю делать спользуя CMSIS DSP и Cortex-M4F. После миксера планирую использовать первый CIC + FIR (~1300 Hz) для PSK, второй CIC + FIR (~20 Hz) для AM и третий FIR + PI (~1-5 Hz) для петли Костаса. Вопросы: - Верная ли схема? Возможно существует реализация проще? - Успею ли я все это дело в связке CMSIS DSP + Cortex-M4F? - 12 точек на период много/мало? Какое существует правило? - Фиксированная или плавающая точка? Есть FPU одинарной точности. Сигнал пока планирую эмулировать на функциональном генераторе. Если программная часть получится, далее будут вопросы по AFE.
  2. ADPLL

    Цитата(andyp @ Sep 26 2016, 14:42) Не очень понимаю, что это меняет - умножитель входа на синус (это ФД) + петлевой фильтр, выход которого управляет NCO, вполне себе в цифре внутри FPGA делаются. Только как управлять я не совсем понимаю. В качестве сигнала ошибки брать фазу, для чего нужно арктангес вычислять либо подойдет синус разности частот?
  3. ADPLL

    Цитата(andyp @ Sep 26 2016, 11:03) Подумал с утра и понял, что Костас не нужен, нужна обычная PLL + простой демодулятор - при залоченной петле останется меандр в мнимой компоненте, который можно демодулировать. Если при синхронизации нужно выжать последние капли еще и из энергетики, которая используется собственно для передачи данных, то можно рассмотреть использование гибридных петель отсюда: http://descanso.jpl.nasa.gov/monograph/ser...nso9_08_rev.pdf Но я бы не стал - просто обычная PLL плюс детектор. Но у меня PLL чисто цифровая, используя NCO внутри FPGA.
  4. ADPLL

    Цитата(andyp @ Sep 26 2016, 01:41) Она еще работает, когда индекс модуляции 0 . В Вашем случае спектр будет как у АМ с маленькой девиацией - палка на несущей и маленькие боковые, которые (я так думаю, нужно проверить) не будут мешать работать петле. Значит петля Костаса для восстановления несущей. А дальше просто демодуляция. Спасибо.
  5. ADPLL

    Цитата(andyp @ Sep 25 2016, 23:35) Насколько понял, фазовая используется для более точного определения времени (с точностью до задержки распространения сигнала +/- 1/646 sec). Это тоже нужно? Если нет, то детектировать начало пакета и принимать первые 200 ms некогерентно. Если да, то придется восстанавливать несущую. При этом, насколько понимаю, при девиации фазы +/- 13 градусов в спектре будет мощный компонент на несущей, т.е. амплитудный спектр будет практически таким же как и у АМ. Следовательно, для восстановления несущей подойдет любой метод выделения этой спектральной компоненты - от PLL типа петли Костаса до методов спектрального оценивания частоты в лоб. Прикол не только в точности. Мое расположение близко к границе возможного приема. У FM BER гораздо лучше. И разве петля Костаса работает для девиации отличной от +/- 90 градусов?
  6. ADPLL

    Цитата(andyp @ Sep 24 2016, 13:37) Судя по описанию DCF77 в вики, ее вполне можно и нужно некогерентно принимать. Зачем там подстройка-то вообще? Сносите на небольшую промежуточную частоту + полосовик, в который пролазит сигнал при наличии частотной ошибки + амплитудный детектор. Это если амплитудная модуляция. А что делать с фазовой?
  7. ADPLL

    Делаю в ПЛИС Altera декодер сигналов точного времени DCF77. Сигнал с амплитудной модуляцией 77.5 кГц заходит на АЦП. Нарезаю с частотой 930 кГц (12 точек на период). Сигналы с NCO на 77.5 кГц sin и cos перемножаю с выходом АЦП. Далее идет CIC с децимацией в 93 раза. На выходе имеем 10 кГц. Естественно частоты не совпадают. В NCO есть вход частотной модуляции, которым можно подстроить эту частоту. Вопрос как правильно сделать фазовый детектор? Думал разделить sin на cos и взять atan, а дальше через PI регулятор подстраивать NCO. Но выходят fixed, а atan требует float point. Нужно ли ставить преобразователь fixed-to-float а потом обратно, либо есть другой способ проще? В сигнале также есть фазовая модуляция, которую в дальнейшем также планируется декодировать. Нужно лишь синхронизироваться с несущей в первое время. Над символьной синхронизацией буду думать позже.
  8. Просто из интереса, стала задача описать делитель 50 МГц -> 1 Гц используя минимум логики в Cyclone V. Сейчас минимум в 26 регистров и 19 ALMs. Используя готовое lpm_counter - 26 регистров и 20 ALMs.
  9. Цитата(Ozelot @ Mar 27 2015, 14:35) Greenvity И этих рассматривали. Не помню по какой причине, но они нам также не подошли.У них там кажется что-то намученно с питанием и слишком большое энергопотребление.
  10. Цитата(des00 @ Mar 2 2015, 13:26) отлично, а теперь посчитайте стоимость разработки, отладки и изготовления асика, затем оцените вашу долю рынка, к моменту выхода продукта с вашим асиком на рынок и определите период окупаемости разработки. Сильно сомневаюсь, что подобный асик будет у вас стоить дешевле тех самых 10 баксов Я не про себя, а про тех же Qualcomm и Yamar, у которых чипы дешевле чем FPGA. Цитата(arhiv6 @ Mar 3 2015, 22:43) Можете попробовать готовые чипы поискать (гуглите "HomePlug mac ic" и "IEEE1901 mac ic"). Если хотите сами реализовать, можете поискать книжки по этим стандартам, например: раз два. Использовали, дорогие они и не совсем удобны. У них любая передача формируется в Ethrnet пакет, даже если 2 байта передать нужно. К тому же, их работа заточена под переменное напряжение и есть механизмы синхронизации, что также мешает. Но самый большой гемморой в том, что в розетке вряд ли будет присутствовать шунтирующая емкость или серьезная нагрузка. На постоянном же токе, шунтируюящая емкость сплошь и рядом, токи нагрузок несколько сот ампер, а также всякие зарядники. Все это шунтирует высокочастотный сигнал, а s-параметры, меняются неизвестным образом, что также не добавляют предсказуемости. Цитата(Hose @ Mar 2 2015, 23:02) Если это система сбора показаний счетчиков, то она запрсто окупится. Если это отдельный продукт на рынке, - я бы не купил ) Продукт уже существует на рынке. Это просто маленькая ее часть, которая может снизить общую ее себестоимость.
  11. Цитата(des00 @ Mar 1 2015, 08:17) В порядке эксперимента, попробуйте сделать на этом чипе минимальный, простейший модем под требования ТС. После этого можно продолжить обсуждение. FPGA используют разве что для проектирования и отладки, а дальше IP core портируют в ASIC, который потом уже в массовое производство. Отсюда и цена..
  12. Цитата(Hose @ Feb 26 2015, 12:37) Фск или офдм - тут уже надо смотреть какие есть готовые решения, подозреваю, что на офдм легче будет найти дешевые чипы, но это не факт. У нас был чип от Qualcomm, использующий OFDM и предназначенный как раз для Powerline communication. Работало стабильно, но само решение было дорогим (>10$). Был другой чип, использующий QPSK, но у него мала скорость (115200 kbps). Сами строили решение на OOK, но оно не помехоустойчивое. Смотрим в сторону FSK или BPSK. В чем преимущества одного перед другим?
  13. Цитата(Hose @ Feb 19 2015, 18:41) Не знаю как остальные, но лично я сомневаюсь, что эквалайзер для вашего канала окажется простым в реализации... Опятьже, возможно я неверно понял глубину значения слова "реализация"? Скорее всего эквалайзер там не реализуем. Передаточная характеристика канала будет зависить от заряда батарей, качества нагрузки, типа зарядного устройства..
  14. Цитата(Hose @ Feb 7 2015, 18:11) xPSK не подходит для PLS. Лучше OFDM. Ребята борятся за гораздо большие пропускные способности в указанной вами полосе - до 250Мб/с. Такие игрушки уже можно купить меньше чем за 100$ за пару. Может быть дело в расстоянии? OFDM более трудно-реализуем. Расстояния не большие, но затухания могут быть приличными. А также мы сильно граничены в цене (7$) и мощности (500 mW).
  15. Требуется передавать данные со скоростью 2-3 Мбит/с в полосе частот 2-30 МГц. Как правильнее/проще/дешевле всего организовать двухстороннюю связь? Нужно ли использовать ПЛИС или дешевле будет построить из отдельных блоков? Ну и где об этом всем почитать?