реклама на сайте
подробности

 
 
> Реализация демодулятора MSK на Blackfin, с петлей Костаса
Pavel_SSS
сообщение Mar 19 2011, 20:52
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 63
Регистрация: 11-10-10
Из: Москва
Пользователь №: 60 055



Возникла необходимость сделать программный демодулятор MSK на DSP Blackfin.
Мой опыт в DSP на MK ограничивается линейной и адаптивной фильтрацией да и то на других платформах, на Blackfin-е ничего писать не доводилось - осваиваю. На входе - потоки 24-бит I и Q, на выходе - демодулированный битовый поток.
Хотелось бы узнать, как народ реализует управляемые генераторы для Костаса на Blackfin-e- а если удастся посмотреть кусок кода, который делает примерно то же самое - было бы замечательно, а то похоже изобретением велосипеда занимаюсь.
Заранее спасибо всем откликнувшимся.

Сообщение отредактировал Pavel_SSS - Mar 19 2011, 20:53
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
petrov
сообщение Mar 19 2011, 21:07
Сообщение #2


Гуру
******

Группа: Свой
Сообщений: 2 220
Регистрация: 21-10-04
Из: Balakhna
Пользователь №: 937



Непонятно какое отношение имеет блэкфин к петле Костаса. Что на FPGA делать, что на PC, алгоритмы одни и те же. Примеры алгоритмов выкладывались на форуме.
Go to the top of the page
 
+Quote Post
Pavel_SSS
сообщение Mar 19 2011, 21:15
Сообщение #3


Участник
*

Группа: Участник
Сообщений: 63
Регистрация: 11-10-10
Из: Москва
Пользователь №: 60 055



Цитата(petrov @ Mar 20 2011, 00:07) *
Непонятно какое отношение имеет блэкфин к петле Костаса. Что на FPGA делать, что на PC, алгоритмы одни и те же. Примеры алгоритмов выкладывались на форуме.

Алгоритм-то как раз понятен - два перемножителя, два ФНЧ, сумматор, управляемый генератор. Вопрос в эффективной реализации с учетом особенностей архитектуры конкретного процессора - а то я и с петлей Костаса только теоретически знаком и на Блэкфине до этого ничего не писал, а код надо эффективный и скоростной. Библиотечные синус и косинус, полагаю, не применишь.
P.S. Писать собрался на ассемблере.
Go to the top of the page
 
+Quote Post
Lmx2315
сообщение Mar 20 2011, 10:12
Сообщение #4


отэц
*****

Группа: Свой
Сообщений: 1 729
Регистрация: 18-09-05
Из: Москва
Пользователь №: 8 684



а что за блекфин и куда и как вы в него потоки i/q 24 бита заводите ? ..и на какой скорости ?


--------------------
b4edbc0f854dda469460aa1aa a5ba2bd36cbe9d4bc8f92179f 8f3fec5d9da7f0
SHA-256
Go to the top of the page
 
+Quote Post
Pavel_SSS
сообщение Mar 20 2011, 11:27
Сообщение #5


Участник
*

Группа: Участник
Сообщений: 63
Регистрация: 11-10-10
Из: Москва
Пользователь №: 60 055



Цитата(Lmx2315 @ Mar 20 2011, 13:12) *
а что за блекфин и куда и как вы в него потоки i/q 24 бита заводите ? ..и на какой скорости ?

Блекфин ADSP-BF504, скорость 540 000 выборок в секунду, I/Q заводим по SPORT-у, с AD9874.

Цитата(Oldring @ Mar 20 2011, 14:21) *
Для какого канала? Какие требования по SNR?

Для AWGN канала без особых требований по SNR - согласованный фильтр, потом восстанавливаете символьный тайминг, например, Гарднером, демодулируете дифференциально - смотрите, куда повернулась на 90 градусов фаза по отношению к предыдущему символу. Всё.

Но обычно MSK - это только часть большой системы. Многое (почти всё) в устройстве демодулятора зависит от канала, через который должна работать система.

По многим соображениям, в том числе и по SNR, хотелось бы когерентную демодуляцию сделать.
Go to the top of the page
 
+Quote Post
Oldring
сообщение Mar 20 2011, 11:47
Сообщение #6


Гуру
******

Группа: Свой
Сообщений: 3 041
Регистрация: 10-01-05
Из: Москва
Пользователь №: 1 874



Цитата(Pavel_SSS @ Mar 20 2011, 14:27) *
По многим соображениям, в том числе и по SNR, хотелось бы когерентную демодуляцию сделать.


Кто мешает?
Коггерентная демодуляция отличается от дифференциальной только тем, что дифференциальная демодуляция оценивает фазовый сдвиг в канале только по предыдущему символу, а коггерентная - по некоторой последовательности символов, выигрывая 3 dB за счет меньшего шума референсной фазы. При непрерывной передаче делаете ФАПЧ с NCO чиста в цифре, плавно отслеживающий референсную фазу.


--------------------
Пишите в личку.
Go to the top of the page
 
+Quote Post
Pavel_SSS
сообщение Mar 20 2011, 11:57
Сообщение #7


Участник
*

Группа: Участник
Сообщений: 63
Регистрация: 11-10-10
Из: Москва
Пользователь №: 60 055



Цитата(Oldring @ Mar 20 2011, 14:47) *
Кто мешает?
Коггерентная демодуляция отличается от дифференциальной только тем, что дифференциальная демодуляция оценивает фазовый сдвиг в канале только по предыдущему символу, а коггерентная - по некоторой последовательности символов, выигрывая 3 dB за счет меньшего шума референсной фазы. При непрерывной передаче делаете ФАПЧ с NCO чиста в цифре, плавно отслеживающий референсную фазу.

Мешает отсутствие опыта написания таких вещей вообще и опыта программирования на блекфине в частности. Хотелось бы раздобыть кусокк кода с целью ознакомиться с приемами программирования
Go to the top of the page
 
+Quote Post



Reply to this topicStart new topic
2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 12th August 2025 - 03:25
Рейтинг@Mail.ru


Страница сгенерированна за 0.01364 секунд с 7
ELECTRONIX ©2004-2016