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

 
 
> Синтезатор частоты, Как задействовать ЦАП?
azizcheg
сообщение Jan 24 2011, 11:09
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 56
Регистрация: 20-01-11
Из: Махачкала
Пользователь №: 62 364



Добрый день.
Есть Altera Cyclone III Starter Board и THDB-ADA. Мне надо научиться работать с этой плиской. Работаю в Quartus II. Сейчас работаю над тестированием работы АЦП и ЦАП. Сперва - ЦАП. Надо на выходе ЦАПа получить синусоиду, которую надо зафиксировать осциллографом. Для этого синус надо подать на цап в цифровом виде...
На THDB-ADA есть AD9767. Подсказали сгенерировать синус на плиске, и подать ее на цап. Сказали попробовать DDS. Почитал про это на 'http://rf.atnn.ru/s6/DDS_1.htm' и еще кое-где. По схеме получается, что на плис я собираю регистр, аккумулятор фазы, ПЗУ, и использую clock на самой плате StarterBoard. И должен отправить всё это на THDB-ADA в ЦАП.
1. Добавил в схему lpm_add_sub и lpm_ff (аккум-р фазы) и lpm_rom (ПЗУ).
2. У пзу есть файл sin_tab.mif, куда я записал в ячейки 90 значений синуса в hexadecimal-формате.
3. На рисунке (см. аттач.) видны все выходы с ПЗУ, которые пойдут с StarterKit через HSMC на THDB-ADA и далее на параллельный вход AD9767.

Как clock_50MHz с платы плиски отправить на THDB-ADA?
И вроде надо как-то энейблить этот цап?

Кто делал или понимает - подскажите.

P.s. Здесь на форуме была немного открыта подобная тема, но что-то она осталась непродолженной...
Эскизы прикрепленных изображений
Прикрепленное изображение
 
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
almost
сообщение Jan 24 2011, 11:27
Сообщение #2


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

Группа: Свой
Сообщений: 199
Регистрация: 27-05-09
Из: Москва
Пользователь №: 49 648



Готовый генератор синуса можно взять здесь: http://opencores.org/projects . Или использовать соответствующие ядро: http://www.altera.com/literature/ug/ug_nco.pdf. Для простоты ну или можно сделать свой собственный, легче взять готовый =)..

Насчет клока, на плате THDB-ADA есть перемычки которые задают режим тактирования ЦАПа (с внешнего или внутреннего генератора тактов), если хотите использовать внешний тогда надо поставить перемычку в соответствующие положение и подать с ПЛИСа на выход HSMC нужный тактовый сигнал (надо смотреть по документации куда выводить).


Режимы ЦАПа можно посмотреть в даташите (прикрепил), там ничего сложного нет. Выбирается режим (mode), а так же сигналы по которым идет "выброс" значений ЦАПа во внешний мир (WRT1/WRT2) и в параллельным кодом идет сигнал.
Прикрепленные файлы
Прикрепленный файл  AD9767.pdf ( 2.45 мегабайт ) Кол-во скачиваний: 26
 
Go to the top of the page
 
+Quote Post
azizcheg
сообщение Jan 24 2011, 14:26
Сообщение #3


Участник
*

Группа: Участник
Сообщений: 56
Регистрация: 20-01-11
Из: Махачкала
Пользователь №: 62 364



Вроде установил режим работы и подал клок на цап.

1. Там два режима - Dual-Mode и Interleaved Timing. Я выбрал Dual. (Как я понял - в этом режиме будут работать оба канала, но использую только канал)
В проекте добавил элемент VCC и отправил на HSMC и далее на DAC_MODE на ЦАПе.
2. Клок. На схеме я понял (виделил соединенными эллипсами), что клок у ЦАПа может быть от SMA, OSC_SMA и PLL_OUT.
Наверно SMA - это внешний клок, который через такой же коннектор подключается к плате. Второй - незнаю. Третий - PLL_OUT - нужный мне вариант - с плиски. Переключается всё это на плате джемпером JP5. Потом это идет к контакту HSMC на THDB-ADA и через него на плис. В итоге - получаю клок с плиски.

А что делать с входом моей всей этой системы? По логике там должен быть регистр... Как он называется в квартусе..? ram..?
Как подключить после этого выход с ЦАПа на SMA-коннектор? Через "WRT внешний мир"?

P.s. Даташиты ВСЕ у меня есть.

Эскизы прикрепленных изображений
Прикрепленное изображение
Прикрепленное изображение
 
Go to the top of the page
 
+Quote Post
almost
сообщение Jan 24 2011, 16:04
Сообщение #4


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

Группа: Свой
Сообщений: 199
Регистрация: 27-05-09
Из: Москва
Пользователь №: 49 648



Цитата(azizcheg @ Jan 24 2011, 17:26) *
Вроде установил режим работы и подал клок на цап.

1. Там два режима - Dual-Mode и Interleaved Timing. Я выбрал Dual. (Как я понял - в этом режиме будут работать оба канала, но использую только канал)
В проекте добавил элемент VCC и отправил на HSMC и далее на DAC_MODE на ЦАПе.
2. Клок. На схеме я понял (виделил соединенными эллипсами), что клок у ЦАПа может быть от SMA, OSC_SMA и PLL_OUT.
Наверно SMA - это внешний клок, который через такой же коннектор подключается к плате. Второй - незнаю. Третий - PLL_OUT - нужный мне вариант - с плиски. Переключается всё это на плате джемпером JP5. Потом это идет к контакту HSMC на THDB-ADA и через него на плис. В итоге - получаю клок с плиски.


1. Дуал мод это ЦАП работает на два канала параллельно (т.е. лог. 1 на дак_мод).
2. Ага.

Цитата(azizcheg @ Jan 24 2011, 17:26) *
А что делать с входом моей всей этой системы? По логике там должен быть регистр... Как он называется в квартусе..? ram..?
Как подключить после этого выход с ЦАПа на SMA-коннектор? Через "WRT внешний мир"?


рам это память. Что значит со входом? Вы работаете на ЦАП, т.е. на выход. Надо в параллель кидать на HSMC данные в формате [13..0], которые через него попадут на вход ЦАПа.
Go to the top of the page
 
+Quote Post
azizcheg
сообщение Jan 26 2011, 09:47
Сообщение #5


Участник
*

Группа: Участник
Сообщений: 56
Регистрация: 20-01-11
Из: Махачкала
Пользователь №: 62 364



Вибирая ПЗУ LPM_ROM, в визарде увидел надпись, что этот тип пзу используется в режиме обратной совместимости (Family supports lpm_rom only in backward-capatibility mode). Альтера рекомендует ALTSYNCRAM wizard. Ну ладно, взял. Протестил, работает.

Сделал с нуля.
1. Clock -> Counter 7bit -> AltSyncRAM -> HSMC -> DAC.
2. Т.к. слова в пзу 12-битные, я на 13-й и 14-й разряды ЦАПа заземлил.
3. Использую DUAL-mode, канал А. Для этого подцепил эту ножку к VCC.
4. WRTA и PLL_OUT_DAC0(клок ЦАПа) повесил на Clock 50 Mhz плиски.
5. POWERON заземлил.

Компилировал, зашил. Подключаю осциллограф к sma-коннектору DA-CHANNEL A - пусто... sad.gif

На J8 (GPIO1) нашел ножки DAC_WRTA и PLL_OUT_DAC0. На них есть синусоида (может чуть искаженная). На DAC_MODE - "1".

Где ошибка?
Эскизы прикрепленных изображений
Прикрепленное изображение
 
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- azizcheg   Синтезатор частоты   Jan 24 2011, 11:09
- - vadimuzzz   RE: Синтезатор частоты   Jan 26 2011, 10:05
|- - azizcheg   не. мне не кордика метод нужен.   Jan 26 2011, 12:28
|- - vadimuzzz   Цитата(azizcheg @ Jan 26 2011, 18:28) не....   Jan 26 2011, 12:36
|- - azizcheg   Я понимаю. Мне вообще изначально посоветовали 2 ме...   Jan 26 2011, 13:43
|- - vadimuzzz   Цитата(azizcheg @ Jan 26 2011, 19:43) Но,...   Jan 26 2011, 14:04
|- - almost   Цитата(azizcheg @ Jan 26 2011, 16:43) Я п...   Jan 27 2011, 06:05
|- - azizcheg   Исправил кое-какие недочеты. 1. подал клок на ОБА ...   Jan 27 2011, 08:29
|- - vadimuzzz   Цитата(azizcheg @ Jan 27 2011, 14:29) Что...   Jan 27 2011, 08:43
|- - azizcheg   Раза 4 или 5 перепроверял. Думаю с битами в порядк...   Jan 27 2011, 09:28
|- - azizcheg   Блин. Так и есть. Перепутал пин. Есть синус на вых...   Jan 27 2011, 09:46
|- - azizcheg   После того, как получил посредством DDS синус на S...   Feb 1 2011, 09:34
||- - DmitryR   Unsigned воспринимается как signed.   Feb 1 2011, 09:39
||- - azizcheg   Цитата(DmitryR @ Feb 1 2011, 12:39) Unsig...   Feb 1 2011, 11:51
||- - DmitryR   Цитата(azizcheg @ Feb 1 2011, 14:51) А мо...   Feb 1 2011, 12:16
||- - azizcheg   Цитата(DmitryR @ Feb 1 2011, 15:16) Прави...   Feb 1 2011, 12:46
||- - ViKo   Цитата(azizcheg @ Feb 1 2011, 14:46) А мо...   Feb 1 2011, 13:33
||- - azizcheg   Проблема вылезает вот где. АЦП не задействован. ...   Feb 1 2011, 14:20
||- - vadimuzzz   Цитата(azizcheg @ Feb 1 2011, 20:20) Толь...   Feb 1 2011, 15:12
||- - ViKo   Цитата(vadimuzzz @ Feb 1 2011, 17:12) ста...   Feb 1 2011, 15:24
||- - vadimuzzz   Цитата(ViKo @ Feb 1 2011, 21:24) Нет, он ...   Feb 1 2011, 15:40
||- - ViKo   Цитата(vadimuzzz @ Feb 1 2011, 17:40) есл...   Feb 1 2011, 18:12
|- - ViKo   Цитата(azizcheg @ Jan 27 2011, 11:46) Бли...   Feb 1 2011, 12:13
- - vadimuzzz   а схему гоняли в тестбенче?   Jan 27 2011, 09:38
- - ViKo   Думаю, у вас в проекте переполнение числа происход...   Feb 1 2011, 14:37
|- - azizcheg   Цитата(ViKo @ Feb 1 2011, 17:37) Думаю, у...   Feb 1 2011, 14:59
|- - ViKo   Цитата(azizcheg @ Feb 1 2011, 16:59) Сдел...   Feb 1 2011, 15:08
|- - azizcheg   Цитата(ViKo)А вы поменяйте местами, что подаете в ...   Feb 2 2011, 06:21
|- - ViKo   Цитата(azizcheg @ Feb 2 2011, 08:21) ЦАП ...   Feb 2 2011, 07:41
- - vadimuzzz   сигналтап - это логический анализатор http://www.a...   Feb 2 2011, 06:55
- - azizcheg   Просимулировал. Все такты на месте. Биты каналов Ц...   Feb 2 2011, 08:03
- - ViKo   Цитата(azizcheg @ Feb 2 2011, 10:03) Прос...   Feb 4 2011, 07:30
- - azizcheg   Цитата(ViKo @ Feb 4 2011, 10:30) И какие ...   Feb 4 2011, 12:32
- - ViKo   Цитата(azizcheg @ Feb 4 2011, 14:32) Ниче...   Feb 4 2011, 13:47
- - azizcheg   Упс. Ошибочка вышла. Исправил. И теперь показания ...   Feb 7 2011, 07:12
- - ViKo   Цитата(azizcheg @ Feb 7 2011, 09:12) Упс....   Feb 7 2011, 07:52
- - azizcheg   По логике вещей - если для одного канала соблюдают...   Feb 7 2011, 08:54
- - ViKo   Цитата(azizcheg @ Feb 7 2011, 10:54) Я пр...   Feb 7 2011, 09:40


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

 


RSS Текстовая версия Сейчас: 23rd July 2025 - 17:22
Рейтинг@Mail.ru


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