Я пытаюсь использовать инструменты IP-упаковки в Xilinx Vivado, чтобы создать сопроцессор с интерфейсом AXI-Lite и использовать его в проекте Zynq SoC для моего класса инженерии цифровых систем. Сопроцессор - это калькулятор НОД, который мы уже разработали в рамках предыдущего задания. Я следовал указаниям инструктора по созданию IP-адреса из калькулятора GCD, и мы вольно следовали Уроку 4A из PDF-файла, расположенного здесь, чтобы создать интерфейс AXI (объявления ввода-вывода, очевидно, изменены, чтобы приспособиться к калькулятору GCD). У меня есть шина данных, называемая «данными», работающая с AXI IP и GCD IP для отправки значений на калькулятор. Однако когда я пытаюсь синтезировать дизайн, я получаю следующую ошибку:
[Synth 8-685] variable 'data' should not be used in output port connection'
Ошибка перенаправляет на строку моего экземпляра интерфейса шины AXI, где определен мой порт данных.
Я часами искал в Интернете решение этой ошибки, но даже на веб-сайте Xilinx или в документах Xilinx, которые были нам предоставлены, нет информации об этой ошибке, и я не смог найти ее. аккаунты от всех, у кого возникла такая же ошибка.
Я написал профессору по электронной почте, чтобы узнать, есть ли у него какие-нибудь идеи, но он, вероятно, не проснется еще шесть часов, а задание должно быть выполнено сегодня (завтра?).
Кто-нибудь слышал об этой ошибке или есть идеи, как ее исправить?
Вот фрагмент кода, который содержит источник ошибки:
// Instantiation of Axi Buss Interface S00_AXI
myip_v1.0_0_S00_AVI # (
.C_S_AXI_DATA_WIDTH(C_S00_AXI_DATA_WIDTH),
.C_S_AXI_ADDR_WIDTH(C_S00_AXI_ADDR_WIDTH)
) myip_v1_0_S00_AXI_inst (
.done_async(done_async),
.go(go),
.data(data), // The error points to this line
.S_AXI_ACLK(s00_axi_aclk),
... // all remaining ports were generated by the IP tools
);
Спасибо,
-Андрей