Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Vivado IP Integrator
Форум разработчиков электроники ELECTRONIX.ru > Программируемая логика ПЛИС (FPGA,CPLD, PLD) > Системы на ПЛИС - System on a Programmable Chip (SoPC)
doom13
Приветствую.
Имеется система собранная в Vivado IP Integrator. Есть части системы, которые тактируются от разных генераторов.
Как итог - AXI4-master c одной частотой тактирования не может прочитать регистры AXI4-slave, работающего на другой частоте (не получается получить доступ к регистрам через окно Memory, при попытке программно прочитать заданные адреса программа виснет). AXI4-master и AXI4-slave соединены через AXI Interconnect, который учитывает разные источники тактирования (ставит AXI Clock Converter).

Для тестирования данной ситуации собрана система (рисунок 1). Тактирующие частоты 125 МГц и 90 МГц от разных генераторов. Работает всё аналогично, т.е. не работает, память mem_0 не читается.
Другая система (рисунок 2) уже работает. Отличие - только цепь сброса. Если для системы (рисунок 1) проверка (Validate Design) проходит без ошибок, то для системы (рисунок 2) присутствует много ругательств:
Цитата
[BD 41-1343] Reset pin /mem_0/axi_bram_ctrl_0/s_axi_aresetn (associated clock /mem_0/axi_bram_ctrl_0/s_axi_aclk) is connected to reset source /rst_clock_0/peripheral_aresetn (synchronous to clock source /clock).
This may prevent design from meeting timing. Please add Processor System Reset module to create a reset that is synchronous to the associated clock source /mem_clk.
[BD 41-1343] Reset pin /microblaze_0_axi_periph/M00_ARESETN (associated clock /microblaze_0_axi_periph/M00_ACLK) is connected to reset source /rst_clock_0/peripheral_aresetn (synchronous to clock source /clock).
This may prevent design from meeting timing. Please add Processor System Reset module to create a reset that is synchronous to the associated clock source /mem_clk.

Кто может пояснить, в чём тут проблема? Почему система (рисунок 1) работать не хочет (процессор не может прочитать память mem_0)?
Спасибо.
doom13
Нашёл причину. Оказалось для блока proc_sys_reset_0 (рисунок 1) для входа ext_reset_in активный уровень сброса 0, по названию пина принял его за 1.
doom13
Ещё одна интересная особенность блока Processor System Reset обнаружилась. С блоком который добавляется автоматом для MicroBlaze всё норамльно, активный уровень внешнего сброса 1. А вот если в систему добавлять ещё один модуль для устранения варнингов (см. выше), то при добавлении блока активный уровень для сброса 1, после Validate Design он уже 0.
Может этому есть какое-либо научное объяснение или это бага от Xilinx?
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.