2016-11-28 13 views
0

пытается создать IP-блок AXI4-Stream из ядра шифрования chacha. Моя обертка AXI4-Stream находится в VHDL, а ядро ​​chacha находится в Verilog.Здание AXI4-Stream (VHDL) вокруг ядра Verilog. Не удалось разрешить предупреждения

Ядро chacha можно найти в секциях github.

Я много огляделся на форумах, и кажется, что использование VHDL и Verilog не должно быть проблемой, но я все еще не могу заставить его работать.

Это то, что я сделал до сих пор:

  • Используйте «Создать и пакет IP» инструмент в Vivado для создания блока AXI4-поток с входами и выходами.
  • Отредактируйте его, чтобы включить IP-адрес, который я хочу.
  • Изменение типа в разделе «Группы файлов» на «Смешанно» в «Синтез и моделирование» см. На рисунке 1.
  • Добавлены два новых интерфейса шины: один сброс и один такт для подключения к моим RST и CLK.

Figure 1

Это сняло все ошибки и большинство предупреждений. Единственными предупреждениями являются четыре случая этой ошибки:

[IP_Flow 19-991] Неконфигурируемый или немодельный файл 'hdl/chacha_qr.v', найденный в группе файлов 'VHDL Synthesis'. Вы можете добавить его в группу файлов утилиты xit.

Я попытался проигнорировать это и использовал блок в любом случае с MicroBlaze, чтобы убедиться, что это сработает. К сожалению, когда Vivado запускает реализацию, он выдает ошибку BLACK BOX:

[DRC 23-20] Нарушение правила (INBB-3) Экземпляры черного ящика - Cell 'design_1_i/axis_chacha_0/U0/chacha_inst' типа 'design_1_i/axis_chacha_0/U0/chacha_inst/chacha_core 'имеет неопределенное содержимое и считается черным ящиком. Содержимое этой ячейки должно быть определено для успешного завершения opt_design.

Теперь я обращаюсь ко всем вам в надежде, что кто-то там может помочь мне решить это или, по крайней мере, указать мне в правильном направлении.

Приведенный код привязанности к проекту нижеприведенного кода. Я знаю, что все соединения с ядром chacha еще не закончены, но я не думаю, что предупреждения появляются оттуда.

https://[email protected]/rasmussont/chacha_axis.git

Спасибо за ваше время и советы.

+0

Вы забыли объявить компонент VHDL для модуля Verilog любого шанса? – damage

+0

Нет. Я не объявлял компонент, но теперь узнал, как обойти проблему. Вскоре я отправлю ответ на свой вопрос. Спасибо вам! – tore

ответ

0

Я получил некоторую помощь, чтобы решить эту проблему. Очевидно, что вы избавляетесь от предупреждений, если вы добавляете две новые группы файлов (синтез и моделирование) в стандартную, а не расширенную. Затем переместите туда файлы за один раз в расширенную категорию. Теперь предупреждения исчезли, а также ошибка черного ящика.

Changed to standard instead of advanced