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

 
 
> плата Digilent Nexus 3 (Xilinx Spartan 6) + ЦАП R-2R = искажения, искажения при генерации DDS sin (ip-core v.4) + r-2r DAC
Блондин
сообщение Sep 13 2015, 19:41
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 16
Регистрация: 13-09-15
Пользователь №: 88 386



Доброго времени суток всем!
Есть плата от Xilinx c ПЛИС Spartan 6 на борту (плата Digilent Nexus 3). Возникла потребность сделать простой DDS генератор, используя плату и самодельный ЦАП r-2r (6 бит, звуковые частоты, речь). ЦАП подключается через стандартные штырьковые разъемы к плате.

Схема ЦАП проста: r-2r цепь, потом RC-цепь (ФНЧ первого порядка), затем повторитель на ОУ ad8656 (одна половинка).
Для ПЛИС использую среду ISE WebPack 13.2

Собственно, неприятностей две:
1. DDS IP-core v.4 никак не хочет моделироваться в ISim. Тактовый сигнал идет на IP-блок, но на выходе DDS лог.1 по всем 6 битам. Что я делаю не так? Или это известный косяк симулятора? Схема top level проста - сам блок и вх/вых пины.
Прикрепленное изображение

Все проверки в среде ISE схема проходит, разумеется.

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

НО на выходе самого ЦАП - чушь полная.
Прикрепленное изображение


Сначала я думал, что это инверсия фазы выходного сигнала у ОУ (размах сигнала на входе ОУ большой, конечно, он rail-to-rail, в даташите сказано, что нет инверсии фазы). Отключил вход ОУ, тыкнулся осциллом после ФНЧ - та же картина.

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

Прикрепленное изображение


В чем может быть проблема? Неудачная разводка платы (ставил кондеры на землю по питанию - не помогло)? Не учел токоограничительные резисторы и диоды на выводах ПЛИС? (они по 200 Ом, а цап 2к-1к). ОУ возбуждается?

Вроде делов-то, на МК цап r-2r работают на ура, судя по поиску в гугле. Тут-то что? Как-то даже стыдно.

Подскажите, пожалуйста, куда копать? Или перенаправьте в более подходящую ветку форума.
Спасибо!

Прикрепляю картинки (скрины с осциллографа, плату, и схему отладочной платы с ПЛИС).

Схема
Прикрепленное изображение


Плата

Прикрепленное изображение

Прикрепленное изображение


Сообщение отредактировал Блондин - Sep 13 2015, 19:45
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Timmy
сообщение Sep 14 2015, 05:53
Сообщение #2


Знающий
****

Группа: Участник
Сообщений: 835
Регистрация: 9-08-08
Из: Санкт-Петербург
Пользователь №: 39 515



Цитата(Блондин @ Sep 14 2015, 01:17) *
А по первому вопросу (не могу промоделить DDS v.4 в ISim) что можете посоветовать?
Могу посоветовать использовать ModelSim sm.gif .
Цитата(bugdesigner @ Sep 14 2015, 06:30) *
Превратить код в беззнаковый можно на сумматоре - сложить с константой равной в нашем случае 32 (2^5). Простой инверсией битов ничего не выйдет.
Так 32+шестиразрядное число это и есть инверсия старшего бита, если не использовать перенос.
Go to the top of the page
 
+Quote Post
bugdesigner
сообщение Sep 14 2015, 07:44
Сообщение #3


Частый гость
**

Группа: Участник
Сообщений: 123
Регистрация: 12-06-15
Из: Земля
Пользователь №: 87 133



Цитата(Timmy @ Sep 14 2015, 08:53) *
.
Так 32+шестиразрядное число это и есть инверсия старшего бита, если не использовать перенос.

Да, согласен, протупил sm.gif
Go to the top of the page
 
+Quote Post



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

 


RSS Текстовая версия Сейчас: 30th June 2025 - 21:43
Рейтинг@Mail.ru


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