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

Quartus support for SV

Прочитал вопрос из соседнего форума, где ТС дали ссылку на пример применения интерфейсов от dxp (2013 год)

В примере используются modport and modport expressions.

dxp отвечает на вопрос

 

Это только ква такое сейчас собрать может или симплифай с вивадой тоже обучены?

Квартус и квеста держат, за другие не скажу, не пробовали.

 

Годом позже в этой же теме des00

 

Решил поиграться с интерфейсами и модпортами, квеста, ква прекрасно.

 

Наши дни - quartushelp

 

Quartus_Help.jpg

 

т.е., modport and modport expressions не поддерживаются.

Предполагаю, что этот раздел help давно не обновляли.

Если вы, уважаемые коллеги, знаете о других несоответствиях реалий с декларациями:

поделитесь, пожалуйста, этими радостными новостями.

 

 

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


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

Раньше в доке у них в этом месте было сказано, что всё есть. Года два-три назад столкнулся с багом ква, который выражался в Internal Error - ква падал со ссылкой на assert в пять-тыщь-какой-то строчке, причина этого была в том, что ему не нравились некоторые имена в модпортах (например, addr, size и ещё некоторые). Я создал support request, на что мне индус ответил, что, де, а что вы хотите, SV интерфейсы не поддерживаются, т.ч. ваши претензии мимо, на что я ему указал, что его утверждение противоречит их же документации и привёл ссылку на эту страницу. После чего он сказал, что да, он ошибся и они всё исправят. И действительно исправили - в доке на следующий (и последующие) квартус в доке упоминание о поддержке SV интерфейсов вымарали.

 

Т.ч. технически оно в каком-то виде есть и даже работает. Но вот есть вот такие неприятные вылеты (лечатся ударами в бубен, заключающимися в подборе имён в модпортах). Ситуации этой уже несколько лет, никто ничего там не делает на эту тему. Насколько могу судить, все усилия там сосредоточены на продвижении толстых ПЛИС, QSys и подобном.

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


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

Т.ч. технически оно в каком-то виде есть и даже работает. Но вот есть вот такие неприятные вылеты (лечатся ударами в бубен, заключающимися в подборе имён в модпортах). Ситуации этой уже несколько лет, никто ничего там не делает на эту тему. Насколько могу судить, все усилия там сосредоточены на продвижении толстых ПЛИС, QSys и подобном.

Кстати, Альтера использует SV-интерфейсы в своем коде (например, в автосгенерированных исходниках после OpenCL), но без модпортов.

 

Например, тыц и тыц.

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


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

У меня интерфейс используется с 2013 года. Может, слишком простой, потому и работает? Вот такой. И модпорты, как видите, тоже.

interface Bus_i;
  logic        [15:0]    adr;        // address Bus
  wire        [15:0]    dat;        // data Bus
  wire            wrp;        // write pulse
  wire            oe;        // output enable

  modport master (            // to bridge
    output    adr, wrp, oe,
    inout    dat
  );

  modport slave (            // to other devices
    input    adr, wrp, oe,
    inout    dat 
  );
endinterface : Bus_i

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


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

Ситуации этой уже несколько лет, никто ничего там не делает на эту тему. Насколько могу судить, все усилия там сосредоточены на продвижении толстых ПЛИС, QSys и подобном.

Когда Алтера рекламировала свой новый движок для будущих поколений Prime - Spectra-Q, было заявлено: "Spectra-Q synthesis — stricter language parser with enhanced language support, faster algorithms, and true parallel synthesis".

Однако новый синтез достался только Prime Pro. В поддержке Verilog/SystemVerilog для обычного Prime я не заметил отличий от предыдущих версий.

Но, как видим, возможны сюрпризы.

 

Кстати, Альтера использует SV-интерфейсы в своем коде (например, в автосгенерированных исходниках после OpenCL), но без модпортов.

Собственно интерфейсы, согласно документации, поддерживаются, тут никаких противоречий.

 

У меня интерфейс используется с 2013 года. Может, слишком простой, потому и работает? Вот такой. И модпорты, как видите, тоже.

Кстати, в Quatus’s language templates имеют место modport ("запрещенные")!

 

Не одними интерфейсами… возможно замечены другие "не разрешенные" вещи?

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


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

еще немного о modport, новые ква сыпят варнингами на использование io вместо направленных в интерфейсах, хотя в модпортах все прописано корректно. старые ква в этом не замечены

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


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

Когда Алтера рекламировала свой новый движок для будущих поколений Prime - Spectra-Q, было заявлено: "Spectra-Q synthesis — stricter language parser with enhanced language support, faster algorithms, and true parallel synthesis".

Ну, как обычно цветистые маркетинговые заявления, ничего конкретного - поддержки эффективных средств SV тут прямо не обещано, т.ч. ничего не предъявишь. :)

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


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

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

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

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

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

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

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

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

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

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