реклама на сайте
подробности

 
 
 
Reply to this topicStart new topic
> GateLevel Simulation мультиразмерных сигналов, Quartus II + ModelSim Altera Edition
TamRazZ
сообщение Jun 7 2018, 07:35
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 23
Регистрация: 21-03-11
Пользователь №: 63 743



Доброго времени суток!
Пытаюсь просимулировать с помощью ModelSim (Altera Edition) проект, созданный в Quartus 13.1. Модули проекта написаны на SystemVerilog. Передача данных от одного модуля к другому осуществляется за счет мультиразмерных packed массивов.
RTL симуляция проходит нормально, но когда дело доходит до GateLevel ModelSim выдает ошибку, ругается на эти сигналы. Причина в том, что Quartus создает файл для симуляции *.vo (с временными задержками и тд). При генерации этого файла все мои многоразмерные сигналы вида:
Код
output logic [7:0] [255:0] out_a;

Превращаются в:
Код
out_a_0_0
out_a_0_1
...

и тд.
ModelSim эти сигналы не обнаруживает и выдает ошибку. Как быть в таких ситуациях?
Go to the top of the page
 
+Quote Post
Shivers
сообщение Jun 7 2018, 13:58
Сообщение #2


Знающий
****

Группа: Свой
Сообщений: 666
Регистрация: 11-02-08
Из: Msk
Пользователь №: 34 950



Нетлист это формат structural verilog, он не поддерживает интерфейсы sv. Поэтому все было расфлатовано. И отчасти поэтому же sv очень ограничено используется в эсико-строении. Решение: топ-левел пишите на верилоге, либо вообще все пишите на верилоге. А sv оставьте верификаторам.
Go to the top of the page
 
+Quote Post
Flip-fl0p
сообщение Jun 7 2018, 17:22
Сообщение #3


В поисках себя...
****

Группа: Свой
Сообщений: 657
Регистрация: 11-06-13
Из: Санкт-Петербург
Пользователь №: 77 140



Цитата(Shivers @ Jun 7 2018, 16:58) *
Нетлист это формат structural verilog, он не поддерживает интерфейсы sv. Поэтому все было расфлатовано. И отчасти поэтому же sv очень ограничено используется в эсико-строении. Решение: топ-левел пишите на верилоге, либо вообще все пишите на верилоге. А sv оставьте верификаторам.

А применение части SV возможно ?
Уж больно мне нравится тип logic и описание FSM у SV. Почти как на VHDL, на котором я пишу rolleyes.gif .
Я просто все больше и больше начинаю рассматривать вариант перехода на Verilog\SV. Т.к у них больно много всяких полезных "фич" для верификации, недоступных на VHDL. Да и синтаксис всё-же попроще будет....
Go to the top of the page
 
+Quote Post
TamRazZ
сообщение Jun 8 2018, 03:49
Сообщение #4


Участник
*

Группа: Участник
Сообщений: 23
Регистрация: 21-03-11
Пользователь №: 63 743



Цитата(Shivers @ Jun 7 2018, 17:58) *
Нетлист это формат structural verilog, он не поддерживает интерфейсы sv. Поэтому все было расфлатовано. И отчасти поэтому же sv очень ограничено используется в эсико-строении. Решение: топ-левел пишите на верилоге, либо вообще все пишите на верилоге. А sv оставьте верификаторам.


т.е. structural verilog не поддерживает мультиразмерные сигналы, в принципе? или есть способ "правильного" описания сигнала? Подскажите, как должна выглядеть декларация сигнала out_a в таком случае.

Сообщение отредактировал TamRazZ - Jun 8 2018, 05:56
Go to the top of the page
 
+Quote Post
honinbo
сообщение Jun 8 2018, 07:52
Сообщение #5


Местный
***

Группа: Свой
Сообщений: 240
Регистрация: 19-03-08
Пользователь №: 36 039



Цитата(TamRazZ @ Jun 8 2018, 06:49) *
или есть способ "правильного" описания сигнала?

скорее есть способ "правильной" настроки софта. Смотрите EDA Tool Settings/Simulation/More EDA Netlist Writer Settings
А так в Quartus 17 и sv можно нетлист писать.
Go to the top of the page
 
+Quote Post
TamRazZ
сообщение Jun 8 2018, 12:13
Сообщение #6


Участник
*

Группа: Участник
Сообщений: 23
Регистрация: 21-03-11
Пользователь №: 63 743



С шинами вроде разобрался! Спасибо!

Подобная же проблема с параметризируемыми модулями... При создании квартусом *.svo или *.vo файла из модуля верхнего уровня пропадают параметры, и когда тестбенч передает значения параметра топ-левел модулю возникает ошибка. Как быть в такой ситуации... В настройках нетлист врайтера ничего подобного не обнаружил...
Go to the top of the page
 
+Quote Post
honinbo
сообщение Jun 8 2018, 13:43
Сообщение #7


Местный
***

Группа: Свой
Сообщений: 240
Регистрация: 19-03-08
Пользователь №: 36 039



Цитата(TamRazZ @ Jun 8 2018, 15:13) *
Подобная же проблема с параметризируемыми модулями... При создании квартусом *.svo или *.vo файла из модуля верхнего уровня пропадают параметры,...

А они (параметры) не пропадают, а принимают уже вполне конкретные значения при синтезе. Нетлист - это ж принципиальная схема устройства (если по старому), а не настраиваемой модели, какие уж тут параметры?
Go to the top of the page
 
+Quote Post

Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 22nd June 2018 - 08:22
Рейтинг@Mail.ru


Страница сгенерированна за 0.00995 секунд с 7
ELECTRONIX ©2004-2016