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

собрать примерный аналог ad9958 на fpga

Прикинуть насколько сложнее, дороже будет собрать такой dds на дискретных элементах. Какую плис применить Cyclone 3-4 Spartan 6, цап dac3154 ? Чем лучше дизайн на дискретных элементах чем один чип ad9958 ?

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Чем лучше дизайн на дискретных элементах чем один чип ad9958 ?

Работаю со спартан6, корка DDS позволяет работать с разрядностью 48бит и в режиме реального времени менять и частоту и фазу согласно заданному алгоритму, точность можете вычислить самостоятельно исходя из частоты дискретизации и требуемой, но она очень высокая. Максимальное быстродействие (SFDR, 12-bit phase, 12-bit sin/cos, use DSP48) 400МГц. Есть настройка Noise Shaping. Описание корки http://www.xilinx.com/support/documentatio...n/dds_ds558.pdf

ЗЫ. И да, если xilinx, то проще, дешевле и быстрее будет использовать 7 семейство (хотя там ПО немного другое).

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

На ПЛИс можно наделать много разных сложных и не сложных видов модуляции, те более гибкая система.

Разрешение по частоте у DDS xilinx можно сделать на много порядков лучше чем 0.12 Гц у AD.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Разрешение по частоте у DDS xilinx можно сделать на много порядков лучше чем 0.12 Гц у AD.

Сейчас посмотрел внимательно - при разрядности 48 и частоте дискретизации 122,88МГц - 10 минус седьмая Гц точность. И занимает 15BRAM 18k.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

а чего не хватает в ad9958? разрядности FTW и/или ЦАПа?

у тексасов есть 16ти разрядные ЦАПы со встроенным 48ми битным NCO - DAC37J82, как квадратурный DDS его можно использовать без JESD интерфейса вообще, записав амплитуду через регистры SPI.

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

а чего не хватает в ad9958?
Не то что бы не хватает, а хочется найти лучший вариант. С плис получиться дороже и сомнения cyclon 3 или spartan 6 пройдут по быстродействию? Умножение cyclone 3 работало около 250Мгц. Вариант с плис нравиться гибкостью а вариант с готовым dds тем что схема проще и места на плате меньше занимает. Задача требуется получить выходной сигнал до 200Мгц с лчм и лфм с временем шага 1 мкс. Какое разрешение по фазе и частоте можно получить используя плис (примерно)?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

занимает. Задача требуется получить выходной сигнал до 200Мгц с лчм и лфм с временем шага 1 мкс. Какое разрешение по фазе и частоте можно получить используя плис (примерно)?

для спартан6 частота 200МГц не проблема, точность по частоте в случае 48разрядов - 200000000/2^48~7e-7Гц, точность по фазе в градусах - 360/2^48.

Выходной сигнал до 200МГ - Вы хотите с какой частотой дискретизации работать?

По документации самый быстрый кинтакс ультра скэйл дает максимальную частоту работы DSP48 741МГц, BRAM - 660МГц.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Если вдруг понадобится быстро менять частототу то надо еще помнить что для ad9958 надо 8 байт загрузить.

Мы только изза времени перезагрузки от ad отказались, ПЛИС - ЦАП - мгновенно новая частота :).

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

для спартан6 частота 200МГц не проблемa.

Выходной сигнал до 200МГ - Вы хотите с какой частотой дискретизации работать?

200МГц это выходная частота, соответственно частота ЦАПа должна быть >500МГц.

 

можно попробовать взять вышеупомянутый DAC37J82, разогнать ему SPI немного, до 50МГц, так чтобы за 1мкс успеть 7 байт (адрес регистра + 48 бит частоты) запихнуть.

про SPI в даташите не много сказано, setup/hold по 5/10нс, так что вроде должен успеть, но период SCLK при этом почему-то указан typical 100нс.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

200МГц это выходная частота, соответственно частота ЦАПа должна быть >500МГц.

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

точность по фазе в градусах - 360/2^48.

и это на

занимает 15BRAM 18k.....12-bit phase, 12-bit sin/cos ?

реально столько получилось ?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

реально столько получилось ?

Что там получилось реально после компиляции я сейчас посмотреть, к сожалению, не могу. Попозже. Отображает именно так. Там же еще куча настроек по функциональности - здесь DSP48 в минимум, остальные по дефолту. Ширина фазы определяет разрядность адреса чтения, но реально в таблице значений меньше (по синус/косинус конкретно в этом случае выделено всего 16 разрядов), т.е. кол-во bram определяется разрядностью значений.

post-53082-1463495775_thumb.png

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Частота на выходе dds до 200Мгц частоту дискретизации цапа не меньше чем в 2-2,5 раза. Получается что бы повторить похожий dds ad9958 на плис нужен не cyclon 3 -4 spartan 6 что то более быстрое?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Что там получилось реально после компиляции я сейчас посмотреть, к сожалению, не могу. Попозже. Отображает именно так. Там же еще куча настроек по функциональности - здесь DSP48 в минимум, остальные по дефолту. Ширина фазы определяет разрядность адреса чтения, но реально в таблице значений меньше (по синус/косинус конкретно в этом случае выделено всего 16 разрядов), т.е. кол-во bram определяется разрядностью значений.

но вы же сами понимаете, что бы иметь возможность прочитать из памяти синус с дискретом 360/2^48, вам нужна память с шиной адреса 2^46. При этом, что бы не было повторяющихся значений, нужно иметь соответствующую разрядность этого синуса, иначе нет смысла в такой подробной дискретизации.

 

Судя по вашей таблице там в 15 RAMB18 блоках, прописано 1/4 синуса, что дает 16 битный синус на выходе + 2^16 дискретизацию этого синуса. Но никак не 2^48

 

Частота на выходе dds до 200Мгц частоту дискретизации цапа не меньше чем в 2-2,5 раза. Получается что бы повторить похожий dds ad9958 на плис нужен не cyclon 3 -4 spartan 6 что то более быстрое?

спартан 6 + ЦАП класса AD9129. У спартана на выходе сердесы в ддре на 800Мгц.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

В Spartan 6 максимальная частота внутреннего pll 400Мгц если не ошибаюсь(как получить 800), заводить клок от внешнего генератора? Аккумулятор фазы 16 разрядный примерно на какой максимальной частоте может работь spartan6?

Если собрать dds на плис jitter будет сильно зависеть от кварца, а как определить jitter ad9958 сколько ps в документации не нашел?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
К сожалению, ваш контент содержит запрещённые слова. Пожалуйста, отредактируйте контент, чтобы удалить выделенные ниже слова.
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...