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

Как в VHDL присвоить индивидуальные имена регистрам массива и битам регистров?

17 minutes ago, makc said:

Я пользуюсь такой конструкцией:

assert false report "Simulation finished!" severity failure;

бинго! 

я тоже. 

но мне говорят - мы не хотим видеть в логе сообщения об ошибках...

btw, assert false в вариантах моложе 93-го года не нужно

 

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


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

Только что, yes сказал:

но мне говорят - мы не хотим видеть в логе сообщения об ошибках...

"Хотим", "не хотим"... Это всё вкусовщина. Чему это мешает или что ломает, если сообщение правильное и узнаваемое? Добавить в средства автоматического анализа протокола моделирования обработку этого сообщения вообще не проблема.

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


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

Да, подкинули вы мне информацию к размышлению и по теме, и вообще. Есть над чем задуматься. Хотя все это легко может в очередной холивар перерасти, поэтому просьба ко всем участникам не сильно оффтопить по возможности.

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


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

53 минуты назад, FPGA сказал:

Да, подкинули вы мне информацию к размышлению и по теме, и вообще. Есть над чем задуматься. Хотя все это легко может в очередной холивар перерасти, поэтому просьба ко всем участникам не сильно оффтопить по возможности.

Идеальных средств нет, везде свои минусы и плюсы. И поэтому грамотный специалист должен понимать и отдавать себе отчёт в том, что он применяет, для чего и в каких случаях, чтобы компромиссы были разумными/обоснованными, а не спекулятивно-эмоциональными (типа Windows mustdie, a Linux rules 😉).

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


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

7 hours ago, makc said:

Идеальных средств нет, везде свои минусы и плюсы. И поэтому грамотный специалист должен понимать и отдавать себе отчёт в том, что он применяет, для чего и в каких случаях, чтобы компромиссы были разумными/обоснованными, а не спекулятивно-эмоциональными (типа Windows mustdie, a Linux rules 😉).

да и вообще вот вот должно прийти время что весь ваш RTL фуфел, Chisel/SpinalHDL рулят)

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


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

2 минуты назад, des00 сказал:

да и вообще вот вот должно прийти время что весь ваш RTL фуфел, Chisel/SpinalHDL рулят)

Очень очень сомневаюсь, особенно глядя на многолетние похороны C/C++. Wishful thinking...

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


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

2 minutes ago, makc said:

Очень очень сомневаюсь, особенно глядя на многолетние похороны C/C++. Wishful thinking...

ну это же холиваров не отменяет) в плисочатиках народ рубится на эту тему периодически

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


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

1 минуту назад, des00 сказал:

ну это же холиваров не отменяет) в плисочатиках народ рубится на эту тему периодически

Холивары - это прекрасно, только толку от них? "Собака лает, караван идёт" (с)

PS: Недостатки (невозможность работы на разных уровнях) высокоуровневых средств очень сложно компенсировать, добавляются костыли и увеличивается сложность. Получается ситуация как с С++, только наоборот. В итоге оказывается что нет смысла менять шило на мыло и рейтинги языков программирования/средств разработки это показывают. А холивары... Ну и пусть их.

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


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

20 hours ago, makc said:

"Хотим", "не хотим"... Это всё вкусовщина. Чему это мешает или что ломает, если сообщение правильное и узнаваемое? Добавить в средства автоматического анализа протокола моделирования обработку этого сообщения вообще не проблема.

если запретили использовать SV для тестбенча, то я даже не стал спорить о вкусах 🙂

но если серьезно - если вызов симулятора из make или из "регрессионного скрипта" - то в случае ошибки симулятор возваращает не 0, а еррор-коде, что разваливает эти make и скрипты. так что, я считаю, что требование законное.

возможность есть (не знаю в каком стандарте VHDL ее добавили, но легко гуглится) меня интересовало, кто без гугления знает

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


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

3 hours ago, des00 said:

да и вообще вот вот должно прийти время что весь ваш RTL фуфел, Chisel/SpinalHDL рулят)

у меня про Chisel сложилось впечатление, что это применимо в случае каких-то сложно конфигурируемых элементов. то есть есть какая-то базовая библиотека и из нее cобирается что-то очень запутанное.

но с другой стороны, когда смотришь на код какого-нибудь синопсисковского IP в котором файл на 20 тыс строк и 10 тыс из них `ifdef / `ifndef - то думаешь, что уж лучше Chisel

но недостаток всего этого sbt и независимых процессов симуляции и генерации RTL из чиселя - это вряд ли откроет ему широкую дорогу в коммерческие проекты - то есть никто не гарантирует, что то что работает в чиселе, потом заработает в чипе. опенсорсникам на это плевать, им главное - "оригинальность подхода", а вот менеджера за чисель и нерабочий чип могут и уволить 🙂

----------------------------------

я видел саксес стори для всякого писания на С++ и засовывания в Vivado HLS - то есть вот от какой-то идеи, до рабочего прототипа на каком-нибудь "версале" буквально месяц. а чтобы по взрослому на HDL такое написать и отладить - год+
тут конечно проблема, что после того как на FPGA демонстрашка заработала и стартап деньги на чип получил, вопрос - как в чип эту красоту засунуть - все эти катапульты и подобное сильно уступает ксайлинсовскому HLS  

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


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

1 час назад, yes сказал:

если запретили использовать SV для тестбенча, то я даже не стал спорить о вкусах 🙂

но если серьезно - если вызов симулятора из make или из "регрессионного скрипта" - то в случае ошибки симулятор возваращает не 0, а еррор-коде, что разваливает эти make и скрипты. так что, я считаю, что требование законное.

возможность есть (не знаю в каком стандарте VHDL ее добавили, но легко гуглится) меня интересовало, кто без гугления знает

use std.env.finish; Есть готовые процедуры

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


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

19 часов назад, yes сказал:

вызов симулятора из make или из "регрессионного скрипта" - то в случае ошибки симулятор возваращает не 0, а еррор-коде, что разваливает эти make и скрипты

Если ошибка в симуляционном прогоне, то, например, квеста возвращает таки 0. Не 0 она возвращает, когда именно ошибка работы самого симулятора -- файл не найден, ресурс недоступен и т.п. И мне как раз понадобилось, чтобы симулятор возвращал не 0, когда именно ошибка при прогоне теста -- чтобы сборочная система останавливалась, не пыталась дальше собирать проект. Ничего лучше не придумал, как передавать код ошибки через файл.

 

18 часов назад, yes сказал:

проблема, что после того как на FPGA демонстрашка заработала и стартап деньги на чип получил, вопрос - как в чип эту красоту засунуть - все эти катапульты и подобное сильно уступает ксайлинсовскому HLS  

Дак HLS выдаёт синтезируемый Verilog, его и брать. Там проблемы ровно те же, что и портировании FPGA сорцов под ASIC -- замена блоков ПЛИС на ASIC'овские (блоки памяти, аппаратные блоки и т.п.).

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


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

6 hours ago, dxp said:

Если ошибка в симуляционном прогоне, то, например, квеста возвращает таки 0. Не 0 она возвращает, когда именно ошибка работы самого симулятора -- файл не найден, ресурс недоступен и т.п. И мне как раз понадобилось, чтобы симулятор возвращал не 0, когда именно ошибка при прогоне теста -- чтобы сборочная система останавливалась, не пыталась дальше собирать проект. Ничего лучше не придумал, как передавать код ошибки через файл.

 

Дак HLS выдаёт синтезируемый Verilog, его и брать. Там проблемы ровно те же, что и портировании FPGA сорцов под ASIC -- замена блоков ПЛИС на ASIC'овские (блоки памяти, аппаратные блоки и т.п.).

да, посмотрел vsim всегда 0, но qrun возвращает ошибку тоже 0 (надо бы посмотреть ncsim и xrun/irun - может у меня уже глюки, но вроде бы я использовал статус симулятора в мэйках) 

а по поводу HLS-ного Verilog - как-то сомневаюсь, что это можно продать, только для каких-то своих нужд

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


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

24 минуты назад, yes сказал:

а по поводу HLS-ного Verilog - как-то сомневаюсь, что это можно продать, только для каких-то своих нужд

Почему нет? Читабельность там дно, но код вполне синтезируемый и рабочий.

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


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

1 hour ago, dxp said:

Почему нет? Читабельность там дно, но код вполне синтезируемый и рабочий.

как я понял подразумевается продажа IP в читаемых сорцах

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


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

Гость
Эта тема закрыта для публикации ответов.
×
×
  • Создать...