Промышленное производство
Промышленный Интернет вещей | Промышленные материалы | Техническое обслуживание и ремонт оборудования | Промышленное программирование |
home  MfgRobots >> Промышленное производство >  >> Industrial programming >> Verilog

Верилог Задача

А 04 предназначен для обработки входных данных и возврата единственного значения, тогда как 11 является более общим и может вычислять несколько значений результата и возвращать их с помощью output и вход тип аргументов. Задачи могут содержать элементы, отнимающие время моделирования, такие как @ , позже и другие.

Синтаксис

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

06

Статическая задача

Если задача является статической, то все ее переменные-члены будут общими для разных вызовов одной и той же задачи, которая была запущена для одновременного выполнения

15 

Аргументы, разрешающие задачу (x, y, z), соответствуют аргументам (a, b, c), определенным задачей. Поскольку а и б входные данные, значения x и г будет помещен в a и б соответственно. Потому что с объявлен как выход и связан с z при вызове сумма будет автоматически передана в переменную z из в .

Автоматическая задача

Ключевое слово 24 сделает задачу реентерабельной, иначе по умолчанию она будет статической. Все элементы внутри автоматически задачи распределяются динамически для каждого вызова и не распределяются между вызовами одной и той же задачи, выполняемой одновременно. Обратите внимание, что 31 к элементам задач нельзя получить доступ по иерархическим ссылкам.

Для иллюстрации рассмотрим static отображение задачи, которая вызывается из разных 42 блоки, работающие одновременно. В этом случае целочисленная переменная, объявленная в задаче, используется всеми вызовами задачи, и, следовательно, отображаемое значение должно увеличиваться при каждом вызове.

23
Журнал моделирования
37

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

45
Журнал моделирования
53

Глобальные задачи

Задачи, объявленные вне всех модулей, называются глобальными. задачи, так как они имеют глобальную область действия и могут быть вызваны в любом модуле.

66
Журнал моделирования
78

Если бы задача была объявлена ​​в модуле des, ее нужно было бы вызывать со ссылкой на имя экземпляра модуля.

85
Журнал моделирования
94

Разница между 57 и 65

Хотя функции и задачи Verilog служат схожим целям, между ними есть несколько заметных различий.

Функция Задача
Не может иметь операторов/задержек, контролирующих время, и, следовательно, выполняется в одну и ту же единицу времени моделирования Может содержать операторы контроля времени/задержку и может завершаться только в другое время
Невозможно включить задачу из-за вышеуказанного правила Может включать другие задачи и функции
Должен иметь хотя бы один входной аргумент и не может иметь выходных или входных аргументов Может иметь ноль или более аргументов любого типа
Может возвращать только одно значение Не может вернуть значение, но может добиться того же эффекта, используя выходные аргументы

Когда функция пытается вызвать 74 или содержать оператор, занимающий много времени, компилятор сообщает об ошибке.

102
Журнал моделирования
119

Отключить задачу

Задачи можно отключить с помощью 83 ключевое слово.

125

При отображении задача была запущена первым 97 блок, T_DISPLAY запустился и отключился, когда время достигло 50 единиц. Немедленно начался следующий блок S_DISPLAY, который завершился на 80 единиц.

Журнал моделирования
139

Verilog

  1. Учебник Verilog
  2. Конкатенация Verilog
  3. Верилог Задания
  4. Блокировка и неблокировка Verilog
  5. Верилог-функции
  6. Верилог Задача
  7. Иерархическая справочная область Verilog
  8. Генератор часов Verilog
  9. Задачи отображения Verilog
  10. Математические функции Verilog