|
|
  |
выделение квадратур с помощью ПЛИС, выделение квадратур |
|
|
|
Oct 15 2008, 08:57
|

Участник

Группа: Участник
Сообщений: 61
Регистрация: 17-12-06
Пользователь №: 23 612

|
Скажите пожалуйста. Есть ли возможность реализовать на ПЛИС разложение сигнала, приходящего с АЦП на квадратуры? Чисто математически эту задачу представляю, а как реализовать в логику ПЛИС - не пойму.
|
|
|
|
|
Oct 15 2008, 10:36
|
Профессионал
    
Группа: Свой
Сообщений: 1 535
Регистрация: 20-02-05
Из: Siegen
Пользователь №: 2 770

|
Цитата(guxa @ Oct 15 2008, 13:58)  В АЛЬТЕРЕ такого блока нет, но могу ли я сделать его сама? Есть такой блок, так и называется, NCO. Ищите в MegaWizard Plug-in Manager, DSP/Signal generation. Цитата(guxa @ Oct 15 2008, 13:58)  Как понимаю, если мне известна частота я итак смогу вычислить значения синуса и косинуса. Верно? Можете, безусловно. Но просто обычно требуется достаточно высокая точность, значений будет много, при формировании таблицы можно где-то ошибиться... Проще взять готовое. Цитата(guxa @ Oct 15 2008, 13:58)  Мне тут еще шепнули, что если частота дискритизации ровно в 4 раза выше, чем частота несущей, я могу просто брать четные и нечетные дискреты - это и будут квадратуры, это так? Ну да, учетверенная частота - это фазы 0, 90, 180 и 270 градусов. Синус в этих точках - 0, 1, 0 и -1 соответственно. Косинус наверное понятно как. Только сложность нередко в том, что в реальном приборе несущая и частота дискретизации формируются в разных местах (несущая в передатчике, а частота дискретизации - в приемнике), и "ровно" в 4 раза отличаться скорее всего не будут, будет небольшая разница (реально - от нескольких милионных до нескольких сот). Более того, эта разница может заметно плавать во времени от температуры и напряжения . Для этого и сделан NCO - сигнал предварительно декодируется, высняется ошибка частоты, и частота NCO корректируется, чтобы как можно более точно соответствовать частоте, которую сгенерировал передатчик. Вам, однако, такая точность может, конечно, и не потребоваться.
|
|
|
|
|
Oct 17 2008, 13:09
|
Местный
  
Группа: Свой
Сообщений: 213
Регистрация: 6-12-04
Из: г. Таганрог
Пользователь №: 1 346

|
Цитата(DmitryR @ Oct 15 2008, 14:36)  ...сигнал предварительно декодируется, высняется ошибка частоты, и частота NCO корректируется, чтобы как можно более точно соответствовать частоте, которую сгенерировал передатчик... А можно в этом месте поподробнее - не могу взять в толк, что значит "сигнал предварительно декодируется"? Это Вы предлагаете сделать квадратуры, по этим квадратурам получить спектр и найти смещение максимума несущей от нуля? Похоже, что я что-то не так понял  2 guxa С учетверенной все получается действительно легко и нересурсоемко, но... Во-первых Вам нужно помнить, что вы не просто разбрасываетесь отсчетами: четный - синус, нечетный - косинус, но и не забываете про нули, то есть когда четный уходит в синус - в косинусе на его месте стоит ноль. Во вторых вариант с частотой дискретизации, равной учетверенной несущей приводит к тому, что в прямой спектр сигнала у Вас попадает еще его третья гармоника. Иногда это оказывается критичным - тут как говорится нужно смотреть от задачи.
|
|
|
|
|
Oct 17 2008, 13:28
|
Профессионал
    
Группа: Свой
Сообщений: 1 535
Регистрация: 20-02-05
Из: Siegen
Пользователь №: 2 770

|
Цитата(Гяук @ Oct 17 2008, 17:09)  А можно в этом месте поподробнее - не могу взять в толк, что значит "сигнал предварительно декодируется"? Это Вы предлагаете сделать квадратуры, по этим квадратурам получить спектр и найти смещение максимума несущей от нуля? Похоже, что я что-то не так понял  Я вобщем-то ниего не предлагал, я сказал, что так делается  Какой конкретно алгоритм - я не скажу, не так глубоко силен в этом, но в том, что вы сказали ничего фантастического не вижу. Знаю есть еще поисковые алгоритмы, которые прочесывают спектр в поисках мест, где есть сигнал (это в случаях, когда в полосе может быть несколько каналов).
|
|
|
|
|
Oct 18 2008, 08:39
|
Знающий
   
Группа: Свой
Сообщений: 552
Регистрация: 29-02-08
Пользователь №: 35 481

|
Цитата(DmitryR @ Oct 15 2008, 13:25)  Поставить в ПЛИС NCO, настроенный на частоту несущей и тупо умножить его выходы (синус и косинус) на данные от ADC. Вы забыли несколько "не очень важных моментов". 1. После "тупого" умножения, нужно не забыть отфильтровать ВЧ сигнал 2. Частота NCO для умножения должна быть выбрана так, чтобы не произошло наложение участков спектра сигнала. Т.е. для распространенных видов сигналов - не менее половины ширины спектра. Это при условии что у вас будет идеальный ФНЧ.
|
|
|
|
|
  |
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|