Jump to content

    

Вопрос по размножению однотипных компонентов

Проблема в следующем: имеется компонент в виде канала из простых цифровых фильтров. Если собрать проект из одного или двух каналов всё работает отлично, но стоит их поставить хотя бы шесть, всё перестаёт работать и идёт мусор. FPGA Xilinx artix-7, среда Vivado 2019.1 , язык VHDL. Ресурсы задействованы максимум на 20%. Тактовая частота 26 МГц. Моего опыта к сожалению пока не достаточно, чтобы в ближайшее время понять откуда "ноги растут" у проблемы. Пока только пытаюсь грешить на синхронизацию, но очень сомневаюсь - тактовая частота слишком низкая для такого кристалла, чтобы так повлиять на работу. Может кто-нибудь подскажет хотя-бы направление поиска.

Share this post


Link to post
Share on other sites
15 минут назад, Alf256 сказал:

но стоит их поставить хотя бы шесть, всё перестаёт работать и идёт мусор.

Проект синхронный?

Откуда данные берутся и куда отправляются? И так много много пунктов по каждому куску тракта...

Share this post


Link to post
Share on other sites

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

входной сигнал домножается на синус и косинус с выхода генератора DDS на DSP48 блоке, затем идёт цепочка однозвенных нерекурсивных фильтров с одним сложением текущего и задержанного на один такт входного сигнала. через 8 таких звеньев идёт прореживание. Затем ещё два звена и ещё прореживание.

Сумматоры сделаны на логике - DSP48 не используется.

На данный момент мои познания позволили мне только создать файл ограничений для подключения пинов.(

Share this post


Link to post
Share on other sites

Времянка для частоты 26 МГц прописана? Что пишет отчёт по этой времянке?

Share this post


Link to post
Share on other sites

Не

5 minutes ago, MegaVolt said:

Времянка для частоты 26 МГц прописана? Что пишет отчёт по этой времянке?

Нет не прописана - ну начинающий я( догадываюсь что это надо, но пока не знаю как делать(

Насколько это критично?

Share this post


Link to post
Share on other sites
1 minute ago, Alf256 said:

Насколько это критично?

посмотрите в отчетах - на какой частоте может работать проект с 1-2 фильтрами и с бОльшим их кол-вом.

Share this post


Link to post
Share on other sites
54 minutes ago, Alf256 said:

Если собрать проект из одного или двух каналов всё работает отлично, но стоит их поставить хотя бы шесть, всё перестаёт работать и идёт мусор. FPGA Xilinx artix-7, среда Vivado 2019.1 , язык VHDL. Ресурсы задействованы максимум на 20%. 

отладчик в руки и вперед, смотреть что именно ломается. житаг у вас по любому есть. а вот когда выясните что именно ломается, тогда уже и можно беседовать. На 26МГц, на артиксе, можно слона разложить.   

Just now, Yuri124 said:

посмотрите в отчетах - на какой частоте может работать проект с 1-2 фильтрами и с бОльшим их кол-вом.

это вивада, не квартус, там нет такой информации. надо прописать хотя бы частоту в констрейнах

Share this post


Link to post
Share on other sites
5 minutes ago, Alf256 said:

пока не знаю как делать

почитайте статьи Дениса Шехалева:

https://cyberleninka.ru/article/n/synopsys-design-constraint-yazyk-zadaniya-vremennyh-ogranicheniy-na-primere-altera-timequest-chast-1/viewer

Оно, правда, по Альтере, но на русском, и в нужном направлении.

Edited by Yuri124

Share this post


Link to post
Share on other sites

Спасибо всем. Понял - надо изучать и создавать тайминговые констрейны.

Share this post


Link to post
Share on other sites

Попробую задать правильный вопрос:

Вы новые фильтры параллельно ставили или последовательно?

Share this post


Link to post
Share on other sites

Приветствую!

Судя по всему при последовательном соединении звеньев где то переполнение происходит.  

Удачи! Rob.

Share this post


Link to post
Share on other sites
10 hours ago, RobFPGA said:

Судя по всему при последовательном соединении звеньев где то переполнение происходит.  

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

Share this post


Link to post
Share on other sites
14 hours ago, DuHast said:

Попробую задать правильный вопрос:

Вы новые фильтры параллельно ставили или последовательно?

обычно, каналами в ЦОС, называют независимые тракты обработки, а не последовательное включение.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this