82 / 80 / 16
Регистрация: 11.03.2016
Сообщений: 206
1

Функции в Verilog

09.03.2019, 10:39. Показов 1945. Ответов 4

Author24 — интернет-сервис помощи студентам
Приветствую. С удивлением обнаружил, что в Verilog функция должна быть описана в теле модуля. Но как быть, если хочется использовать одну и туже функцию в различных модулях? Хотелось бы вынести ее/их в отдельный файл и вызывать их там, где мне это нужно.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
09.03.2019, 10:39
Ответы с готовыми решениями:

Icarus Verilog. GNU GPL компилятор под Verilog
...представляет собой свободную и компактную реализацию компилятора для IEEE-1364 Verilog языка...

VHDL-Verilog
Есть задание,реализовать защелку с входом разрешения. Есть вот такая таблица истинности: ...

Разбираюсь с Verilog
Подскажите пожалуйста, начал разбираться, но не понимаю почему: Допустим программа: 00000000...

Блок always. Verilog
module lalala ( input logic clk, input logic risit, output logic out ); always @(posedge clk...

Verilog и светодиод
Всем привет. Начал изучат Verilog и сразу такой вопрос. Делаю тестовое задание мигания светодиодом...

4
Эксперт С++
2381 / 1665 / 279
Регистрация: 29.05.2011
Сообщений: 3,399
10.03.2019, 18:51 2
Цитата Сообщение от Shamrel Посмотреть сообщение
Хотелось бы вынести ее/их в отдельный файл и вызывать их там, где мне это нужно
Подключение этого файла с помощью директивы $include не работает?
0
82 / 80 / 16
Регистрация: 11.03.2016
Сообщений: 206
11.03.2019, 06:19  [ТС] 3
Проблема не в том как подключить файл, проблема в том, что само объявление функции может происходить только в теле модуля, а это значит, что видимость этой функции будет ограничено модулем, где она объявлена. В результате приходится копировать функцию во все модули, где ее нужно применить. Бред какой-то.
0
Эксперт С++
2381 / 1665 / 279
Регистрация: 29.05.2011
Сообщений: 3,399
11.03.2019, 08:41 4
Я функциями практически не пользовался. Говорят можно создать модуль, содержащий только функцию, затем этот модуль инстанциировать в нужном модуле и пользоваться функцией. Ну или modulename::function(args). Ну и вроде от версии verilog может зависеть.
1
82 / 80 / 16
Регистрация: 11.03.2016
Сообщений: 206
15.03.2019, 09:02  [ТС] 5
Пробовал разное. Не помогло. grizlik78, в любом случае благодарю за участие. Сделал вывод, что пора думать о переходе на System Verilog. Там можно и вложенные модули делать, и глобальные функции объявлять (через package)
0
15.03.2019, 09:02
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
15.03.2019, 09:02
Помогаю со студенческими работами здесь

Программа на Verilog
Нужна помощь с написанием программы Необходимо разработать устройство способное вычислять...

Вопрос по Verilog
Почитав сообщество про ПЛИС, надеюсь кто-нибудь ответит. Глобальный вопрос, в общем то в...

Verilog первый код
вообщем решил разобраться с iverilog'ом написал следующий код описывающий 64 битную...

Verilog. Битстаффинг и дестаффинг
Попытался я сымитировать битстаффинг (предупреждение появления последовательностей из 5 нулей или...

Большие числа в Verilog
Здравствуйте. Задача: требуется счётчик, который будет сбрасываться в определенный момент времени,...

Синтезируемость операторов Verilog
Какие из арифметических операций синтезируемы в языке Verilog?


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru