Страница 12 из 15 Первая ... 21011121314 ... Последняя
Показано с 221 по 240 из 285

Тема: board_xc7a100_v10

  1. #1 Показать/скрыть первое сообщение.
    Старый знакомый
    Автор темы
    Аватар для demon_rt
    Регистрация
    23.05.2014
    Сообщений
    678

    По умолчанию board_xc7a100_v10

    Решил создать отдельную ветку.

    При эксплуатации первой версии ЦАП board https://forum.vegalab.ru/showthread.php?t=83083 на базе Virtex 4 били выявлены некоторые недостатки:

    - Очень сильный нагрев ПЛИС и как следствие всего устройства, в силу примененного старого семейства с большим потреблением.

    - Применение программируемого генератора Si570 сильно усложняло проект ПЛИС в из-за реализации конечного автомата программирования, тем самым снижалась общая надежность устройства при переходах между разными Fs. Также параметры фазового шума и точности настройки данного синтезатора уступают константным генераторам с фиксированной частотой.

    - Не хватало полной гальванической развязки между цифрой и аналогом.

    Ну и еще пару мелких недочетов подвигли на разработку нового устройства.



    ТЗ:

    - Питание от внешнего импульсного преобразователя постоянного тока, напряжением +12 В.

    - Общее потребление устройства с установленными модулями ЦАП в районе 10 Вт.

    - Все элементы должны находиться на одной двухслойной плате, за исключением двух модулей ЦАП.

    - Цифровые входы: SPDIF OPt, SPDIF COAX, USB

    - Аналоговый выходы: RCA, Phone

    - Применение современной ПЛИС с малым потреблением и достаточным количеством блоков DSP для обработки.

    - Полная гальваническая развязка по питанию и сигнальным линиям между цифровым и аналоговым трактами.

    - Реализация USB на процессоре Atmel (с возможностью использования драйверов от аманеро)

    - Аттенюатор на реле.

    - Применение генераторов аналогового тракта с низким фазовым шумом

    - Наличие энергонезависимой ПЗУ для хранения настроек (уровень аттенюатора, селектор вх. вых. и др)

    - Интегрированный усилитель для наушников на мощных буферах ( очень хорошо показали себя LM49600 в прошлой версии)

    - Защита по DC в усилителе для наушников

    - Все управление одним энкодером

    - Поддержка управления через инфракрасный ПДУ

    - Поддержка VFD дисплея 16х112 точек и реализация графического контроллера в ПЛИС

    - Реализация в ПЛИС ЦФ 2048 отвода, 32 бита. и коэффициентами интерполяции х1,х2,х4,х8

    Схема:
    Нажмите на изображение для увеличения. 

Название:	_Atten.jpg 
Просмотров:	610 
Размер:	1.07 Мб 
ID:	359983Нажмите на изображение для увеличения. 

Название:	_Clk.jpg 
Просмотров:	580 
Размер:	1.10 Мб 
ID:	359984Нажмите на изображение для увеличения. 

Название:	_FPGA_0.jpg 
Просмотров:	533 
Размер:	3.02 Мб 
ID:	359985Нажмите на изображение для увеличения. 

Название:	_ISO.jpg 
Просмотров:	441 
Размер:	1.48 Мб 
ID:	359986Нажмите на изображение для увеличения. 

Название:	_MAIN.jpg 
Просмотров:	438 
Размер:	1.16 Мб 
ID:	359987Нажмите на изображение для увеличения. 

Название:	_Out.jpg 
Просмотров:	575 
Размер:	1.44 Мб 
ID:	359988
    Нажмите на изображение для увеличения. 

Название:	_Power.jpg 
Просмотров:	503 
Размер:	1.70 Мб 
ID:	359989Нажмите на изображение для увеличения. 

Название:	_USB.jpg 
Просмотров:	432 
Размер:	1.33 Мб 
ID:	359990

    Внешний вид:
    Нажмите на изображение для увеличения. 

Название:	Снимок5.PNG 
Просмотров:	654 
Размер:	397.9 Кб 
ID:	359991Нажмите на изображение для увеличения. 

Название:	20191212_224448.jpg 
Просмотров:	514 
Размер:	3.03 Мб 
ID:	360881Нажмите на изображение для увеличения. 

Название:	20191212_224727.jpg 
Просмотров:	595 
Размер:	3.27 Мб 
ID:	360882
    Миниатюры Миниатюры Нажмите на изображение для увеличения. 

Название:	20191212_225101.jpg 
Просмотров:	340 
Размер:	1.33 Мб 
ID:	360879   Нажмите на изображение для увеличения. 

Название:	20191212_225132.jpg 
Просмотров:	358 
Размер:	1.44 Мб 
ID:	360880  
    Последний раз редактировалось demon_rt; 28.12.2019 в 17:06.

  2. #221
    Старый знакомый
    Автор темы
    Аватар для demon_rt
    Регистрация
    23.05.2014
    Сообщений
    678

    По умолчанию Re: board_xc7a100_v10

    Цитата Сообщение от lionel Посмотреть сообщение
    В файле COE Radix = 16; Coefficient_Width = 32; и далее коэффициенты.
    Попробуйте этот COE

  3. #222
    Старый знакомый Аватар для lionel
    Регистрация
    10.05.2010
    Адрес
    СПб
    Сообщений
    504

    По умолчанию Re: board_xc7a100_v10

    Цитата Сообщение от demon_rt Посмотреть сообщение
    Попробуйте этот COE
    Зависает, или может там полчаса на импорт нужно? Процесс потребляет CPU и не отвечает. Могу предположить только что какие-то опции некорректно стоят. Ну и то что коэффициенты не подгружаемые.

    Обратил внимание что в Вашем файле коэффициенты десятичные, а fdatool создает COE с 16-ричными. Это где-то нужно дополнительно указывать?

    Поробовал сделать фильтр 2000 коэффициентов 24 бит - ничего не зависло.

  4. #223
    Старый знакомый
    Автор темы
    Аватар для demon_rt
    Регистрация
    23.05.2014
    Сообщений
    678

    По умолчанию Re: board_xc7a100_v10

    ISE крайне плохо работает под Win10, Я проект делал по Win7 - проблем не было. Сейчас попробовал открыл проект ISE под Win10 так же повисло.
    Переходите на Vivado более современный САПР, и разводит проекты пошустрее. При переходе есть нюанс - генерировать IP придется заново. У них не совместимы библиотеки IP. IP от ISE можно использовать в виде NGC, только редактировать их под Vivado не получится.

  5. #224
    Старый знакомый Аватар для lionel
    Регистрация
    10.05.2010
    Адрес
    СПб
    Сообщений
    504

    По умолчанию Re: board_xc7a100_v10

    Цитата Сообщение от demon_rt Посмотреть сообщение
    ISE крайне плохо работает под Win10, Я проект делал по Win7 - проблем не было. Сейчас попробовал открыл проект ISE под Win10 так же повисло.
    Переходите на Vivado более современный САПР, и разводит проекты пошустрее. При переходе есть нюанс - генерировать IP придется заново. У них не совместимы библиотеки IP. IP от ISE можно использовать в виде NGC, только редактировать их под Vivado не получится.
    У Vivado нет возможности использовать Schematic file, так что так просто проект не импортировать. Попробую в 7ке, спасибо.

    Вопрос по входам FIR - s_axis_data_tvalid используется для запуска обсчета очередного значения, и туда по идее нужно подключать lrck?

  6. #225
    Старый знакомый
    Автор темы
    Аватар для demon_rt
    Регистрация
    23.05.2014
    Сообщений
    678

    По умолчанию Re: board_xc7a100_v10

    Цитата Сообщение от lionel Посмотреть сообщение
    У Vivado нет возможности использовать Schematic file
    можно скомпилировать данные файлы в vhdl и включить в проект.

    Цитата Сообщение от lionel Посмотреть сообщение
    Вопрос по входам FIR - s_axis_data_tvalid используется для запуска обсчета очередного значения, и туда по идее нужно подключать lrck?
    LRCK не в прямом виде а через триггер на частоте FIR ядра. Вообще надо стараться, чтобы большинство логики работало в синхронном режиме на одной глобальной частоте.

  7. #226
    Старый знакомый Аватар для lionel
    Регистрация
    10.05.2010
    Адрес
    СПб
    Сообщений
    504

    По умолчанию Re: board_xc7a100_v10

    Потратил некоторое время, чтобы проверить эти подвисания. Может конечно дело в том что у меня в проекте что-то не то, но скорее всего под windows есть какая-то проблема, почему и виснет, и под установленной с нуля 7кой, и под xp. Но зато всё замечательно работает в linux версиях. Понять бы что может быть не так в win, оно же как-то у Вас на 7ке работает.

    Вот по фильтру еще непонятно, неужели так мало логики расходуется? У меня в проекте пара FIR на примерно 2000 отводов, 32 бит, 5.4668Мгц такт, 44100 на вход, использовано 2300 Slice registers и 86 умножителей.

  8. #227
    Старый знакомый
    Автор темы
    Аватар для demon_rt
    Регистрация
    23.05.2014
    Сообщений
    678

    По умолчанию Re: board_xc7a100_v10

    Цитата Сообщение от lionel Посмотреть сообщение
    оно же как-то у Вас на 7ке работает.
    Под 7-кой работал, когда был проект еще под ISE. В настоящее время проект переведен под Vivado на Win10

    Цитата Сообщение от lionel Посмотреть сообщение
    на примерно 2000 отводов, 32 бит, 5.4668Мгц такт
    На такой низкой частоте обработки работать вообще на должно

    Цитата Сообщение от lionel Посмотреть сообщение
    Вот по фильтру еще непонятно, неужели так мало логики расходуется?
    Касательно DSP такая зависимость от частоты обработи:
    Нажмите на изображение для увеличения. 

Название:	egegegeg5h4h4h.PNG 
Просмотров:	75 
Размер:	53.8 Кб 
ID:	382836Нажмите на изображение для увеличения. 

Название:	3gg43g35g4.PNG 
Просмотров:	73 
Размер:	56.7 Кб 
ID:	382837
    По регистрам, зависит от параметров. Я не использую интерполятор интегрированный в IP-FIR.

  9. #228
    Старый знакомый Аватар для tomtit
    Регистрация
    23.06.2009
    Адрес
    пгт.Торонтовка
    Возраст
    65
    Сообщений
    951

    По умолчанию Re: board_xc7a100_v10

    Цитата Сообщение от lionel Посмотреть сообщение
    Потратил некоторое время, чтобы проверить эти подвисания. Может конечно дело в том что у меня в проекте что-то не то, но скорее всего под windows есть какая-то проблема, почему и виснет, и под установленной с нуля 7кой, и под xp. Но зато всё замечательно работает в linux версиях. Понять бы что может быть не так в win, оно же как-то у Вас на 7ке работает.

    Вот по фильтру еще непонятно, неужели так мало логики расходуется? У меня в проекте пара FIR на примерно 2000 отводов, 32 бит, 5.4668Мгц такт, 44100 на вход, использовано 2300 Slice registers и 86 умножителей.
    Ничего себе мало. У меня на ВЕСЬ проект всего 12 умножителей, да и логики - 1306 слайсов.
    Нахрен КИХ на 2000 тапов, это что 44.1х32 делать? Коэффициенты 32бита тоже не нужны, а вот аккумулятор надо бы сильно побольше.
    А ISE14.7 до сих пор без проблем живет под win10 2004. Пару лет назад запинал под 10-ку, с тех пор и работает, уже позабыл рецепт.
    Где-то на форумах было. Там типа какие-то ДЛЛ надо переименовать, и некоторые компоненты брать из 32-бит директории.
    Я, кстати ISE не устанавливаю из дистрибутива, а просто копирую с компа на комп, так быстрее и гемора меньше.
    Предпочитаю маленькие проекты и маленькие ФПГА - гораздо быстрее синтез и трассировка.
    Последний раз редактировалось tomtit; 30.10.2020 в 15:58.

  10. #229
    Старый знакомый Аватар для lionel
    Регистрация
    10.05.2010
    Адрес
    СПб
    Сообщений
    504

    По умолчанию Re: board_xc7a100_v10

    Цитата Сообщение от demon_rt Посмотреть сообщение
    На такой низкой частоте обработки работать вообще на должно
    Выходит частота такта FIR не обязательно должна быть кратна sample rate? Но может быть и кратна, работает и так и так? Что не так с тактом 5.6 Мгц, что может мешать FIR работать с таким клоком?

    ---------- Сообщение добавлено 16:07 ---------- Предыдущее сообщение было 16:05 ----------

    Цитата Сообщение от tomtit Посмотреть сообщение
    Ничего себе мало. У меня на ВЕСЬ проект всего 12 умножителей, да и логики - 1306 слайсов.
    Нахрен КИХ на 2000 тапов, это что 44.1х32 делать? Коэффициенты 32бита тоже не нужны, а вот аккумулятор надо бы сильно побольше.
    А ISE14.7 до сих пор без проблем живет под win10 2004. Пару лет назад запинал под 10-ку, с тех пор и работает, уже позабыл рецепт.
    Где-то на форумах было. Там типа какие-то ДЛЛ надо переименовать, и некоторые компоненты брать из 32-бит директории.
    Я, кстати ISE не устанавливаю из дистрибутива, а просто копирую с компа на комп, так быстрее и гемора меньше.
    Предпочитаю маленькие проекты и маленькие ФПГА - гораздо быстрее синтез и трассировка.
    dll и я подменял, у меня на 10ке всё нормально работает кроме Core Generator

    Я попробовал и 39 бит коэффициенты, с 40 уже только 23 бит данные максимум можно сделать. Захотелось мне проверить утверждения Роба Уотса про 300 дБ FIR в XC7A15T

  11. #230
    Старый знакомый Аватар для tomtit
    Регистрация
    23.06.2009
    Адрес
    пгт.Торонтовка
    Возраст
    65
    Сообщений
    951

    По умолчанию Re: board_xc7a100_v10

    Тактовая частота должна быть чем выше тем лучше (до определенного предела).
    КИХ может считать неравномерно - просчитал, отдохнул. Надо только сэмплы потом расставить во времени как надо.
    Core Generator - на Джаве написан, там и проблема, наверное.

  12. #231
    Старый знакомый
    Автор темы
    Аватар для demon_rt
    Регистрация
    23.05.2014
    Сообщений
    678

    По умолчанию Re: board_xc7a100_v10

    Цитата Сообщение от lionel Посмотреть сообщение
    5.4668Мгц такт, 44100 на вход, использовано
    У Вас ЦАП работает на прямом клоке во NOS режиме? (Up-семплинг не используется?)

    Цитата Сообщение от lionel Посмотреть сообщение
    Что не так с тактом 5.6 Мгц, что может мешать FIR работать с таким клоком?
    У вас просто может не хватить блоков DSP для такой низкой частоты обработки

    Цитата Сообщение от lionel Посмотреть сообщение
    Выходит частота такта FIR не обязательно должна быть кратна sample rate?
    В эффективных ЦОС системах используют максимально высокую частоту обработки для экономии ресурсов, для чего уходят с основной частоты ЦАП (АЦП) на более высокую частоту DSP. Делать это нужно не просто перетактированием на более высокий клок, а с применением блочной памяти для корректного разделения частотных доменов и ухода от метастабильности.

    ---------- Сообщение добавлено 19:05 ---------- Предыдущее сообщение было 18:21 ----------

    Цитата Сообщение от tomtit Посмотреть сообщение
    Нахрен КИХ на 2000 тапов, это что 44.1х32 делать? Коэффициенты 32бита тоже не нужны, а вот аккумулятор надо бы сильно побольше.
    Не понял, что значит "аккумулятор надо бы сильно побольше" в контексте ненужности большой разрядности коэфф. и отводов?
    Последний раз редактировалось demon_rt; 30.10.2020 в 17:22.

  13. #232
    Старый знакомый
    Автор темы
    Аватар для demon_rt
    Регистрация
    23.05.2014
    Сообщений
    678

    По умолчанию Re: board_xc7a100_v10

    Замерял работу ЦАП в полосе 0,5 МГц
    Волнистость спектра это помехи по сигнальной земле.
    Нажмите на изображение для увеличения. 

Название:	Снимок4.PNG 
Просмотров:	83 
Размер:	79.8 Кб 
ID:	383230
    Последний раз редактировалось demon_rt; 05.11.2020 в 11:34.

  14. #233
    Старый знакомый Аватар для lionel
    Регистрация
    10.05.2010
    Адрес
    СПб
    Сообщений
    504

    По умолчанию Re: board_xc7a100_v10

    По поводу Вашего COE файлика вопрос - там десятичные коэффициенты а матлаб создает файл с hex значениями. Вы сами конвертировали их для чего-то?

  15. #234
    Старый знакомый
    Автор темы
    Аватар для demon_rt
    Регистрация
    23.05.2014
    Сообщений
    678

    По умолчанию Re: board_xc7a100_v10

    Цитата Сообщение от lionel Посмотреть сообщение
    там десятичные коэффициенты а матлаб создает файл с hex значениями.
    Расчет коэффициентов выполнял в другой программе.

  16. #235
    Старый знакомый Аватар для lionel
    Регистрация
    10.05.2010
    Адрес
    СПб
    Сообщений
    504

    По умолчанию Re: board_xc7a100_v10

    Ясно. А приходилось ли делать что-то подобное в Квартусе с его fir compiler? В моем проекте наблюдаю увеличение частоты среза с увеличением частоты тактования. В итоге при такте в 2048 fs fir работает как аттеннюатор, поскольку частота среза отодвигается далеко вверх за границу 20кГц.

  17. #236
    Старый знакомый
    Автор темы
    Аватар для demon_rt
    Регистрация
    23.05.2014
    Сообщений
    678

    По умолчанию Re: board_xc7a100_v10

    Цитата Сообщение от lionel Посмотреть сообщение
    А приходилось ли делать что-то подобное в Квартусе с его fir compiler?
    Нет, работаю только с Xilinx

    Цитата Сообщение от lionel Посмотреть сообщение
    В моем проекте наблюдаю увеличение частоты среза с увеличением частоты тактования.
    Частоты семплирования или частоты обработки?

  18. #237
    Старый знакомый Аватар для lionel
    Регистрация
    10.05.2010
    Адрес
    СПб
    Сообщений
    504

    По умолчанию Re: board_xc7a100_v10

    Цитата Сообщение от demon_rt Посмотреть сообщение
    Нет, работаю только с Xilinx


    Частоты семплирования или частоты обработки?
    Частоты обработки. Вот так выглядит это дело:

    Нажмите на изображение для увеличения. 

Название:	Screenshot_1.jpg 
Просмотров:	84 
Размер:	220.5 Кб 
ID:	383258

  19. #238
    Старый знакомый
    Автор темы
    Аватар для demon_rt
    Регистрация
    23.05.2014
    Сообщений
    678

    По умолчанию Re: board_xc7a100_v10

    Цитата Сообщение от lionel Посмотреть сообщение
    Вот так выглядит это дело:
    clk это частота обработки. Внутри IP должен быть параметр - частота семплирования, от нее собственно будет зависеть частота среза фильтра при заданных коэффициентах. На LRCK триггера не достаточно, это должен быть триггер-защёлка.

  20. #239
    Старый знакомый Аватар для lionel
    Регистрация
    10.05.2010
    Адрес
    СПб
    Сообщений
    504

    По умолчанию Re: board_xc7a100_v10

    Цитата Сообщение от demon_rt Посмотреть сообщение
    clk это частота обработки. Внутри IP должен быть параметр - частота семплирования, от нее собственно будет зависеть частота среза фильтра при заданных коэффициентах. На LRCK триггера не достаточно, это должен быть триггер-защёлка.
    Работает и без триггера, видимо в самом ip ядре он есть. Ну а частота семплирования задана как 44100:
    Нажмите на изображение для увеличения. 

Название:	Screenshot_2.jpg 
Просмотров:	68 
Размер:	48.4 Кб 
ID:	383259

  21. #240
    Старый знакомый
    Автор темы
    Аватар для demon_rt
    Регистрация
    23.05.2014
    Сообщений
    678

    По умолчанию Re: board_xc7a100_v10

    Цитата Сообщение от lionel Посмотреть сообщение
    видимо в самом ip ядре он есть
    В IP его нет.

    Цитата Сообщение от lionel Посмотреть сообщение
    Работает и без триггера,
    Работать будет не правильно, входной сигнал valid должен соответствовать входной частоте семплирования и фиксировать приход нового семпла (изменение фронта LRCK). У вас же Valid = LRCK на всем его положительном периоде, это не верно!

Страница 12 из 15 Первая ... 21011121314 ... Последняя

Социальные закладки

Социальные закладки

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •