Перейти к содержанию
    

Синтез mixed width ram из Verilog/SV

Всем привет.

Тема не нова, но все же...

Недавно наткнулся на небольшие грабли с mixed width ram из Verilog/SV.

Есть шаблон из Quartus использующий трехмерный массив.

Корректно синтезируется в Quartus и Synplify, но в Vivado получается куча логики. Причем это давняя проблема:

https://www.xilinx.com/support/answers/53507.html

Xilinx предлагает свой шаблон в UG901, но нигде кроме Vivado данный код нормально не синтезируется.

Понятно, что можно сделать через generate под разные платформы или вообще использовать макросы/мегафункции через generate, но может быть существует красивое решение?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Практика показывает, что лучше пользоваться шаблонами от конкретного производителя (и соответственно сделать генерацию для разных платформ) иначе есть риск, причём очень большой, что при смене версии IDE вы снова вляпяетесь в ту же проблему.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

ИМХО, руками на двухпортовках. Если для отладки не удобно, то параллельно поведенческое зеркало, для отслеживания контекста. Все остальное, не надежно)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

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

1 hour ago, BSACPLD said:

Я сейчас так и сделал, просто хочется красивое решение :)

Платформо-зависимые вещи лучше  всегда выносить в свои врапперы  и там уже разруливать через generate или через директивы компиляции.  Будет вам и красиво и практично  :paint2:

Удачи! Rob.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

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

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...