В Systemveilog есть ли способ передать переменную типа перечисления в другие модули? То есть, чтобы определить переменную типа enum как входной или выходной. Есть ли какой-нибудь пример?Перечислимый тип ввода или вывода
ответ
Да, вы можете это сделать, но вам нужно использовать typedef
в общем пакете, чтобы сделать присвоение перечислений совместимым. Затем вы можете использовать перечисление в порте, как и любой тип данных.
package myCommon;
typedef enum {ONE,TWO} e_t;
endpackage
module first import myCommon::*; (output e_t p1);
endmodule
module second import myCommon::*; (input e_t p2);
endmodule
module top;
import myCommon::*;
e_t e;
first f(.p1(e));
second s(.p2(e));
endmodule
Работало. Благодарю. Я думаю, вы имели в виду typedef enum {ONE, TWO} e_t; в коде. Кстати, любая идея, как эта вещь будет синтезирована? Я хочу использовать этот тип перечисления для обозначения разных состояний. В старом программировании стиля я могу использовать регистр и параметр для создания метки состояния. Я знаю, что он будет синтезирован как регистры. Но для этого я понятия не имею. – Nan
пример исправлен. Я считаю, что вы можете использовать переменную enum в качестве регистра состояния так же, как вы использовали параметры в качестве значений с переменной. Кроме того, у вас теперь есть безопасность типа, как и дополнительные методы enum для управления состоянием. –
- 1. Перечислимый тип данных в тип int?
- 2. Выражения должно иметь или незаданный Интегральный перечислимый тип
- 3. Стандартный поток ввода-вывода - тип буферизации fgets()
- 4. Порт ввода ввода-вывода ввода-вывода
- 5. Ошибка ввода-вывода ввода-вывода
- 6. Как сгладить тип (не перечислимый) через Linq?
- 7. предупреждение перечислимый тип смешанный с другим типом?
- 8. параметрированный перечислимый тип в типах эликсиров
- 9. Порты ввода-вывода ввода-вывода против RegisterWaitForSingleObject?
- 10. Прямые или неактивные данные ввода/вывода Python Прямые или неактивные данные ввода/вывода Get() Пакеты
- 11. Управление файлами ввода-вывода
- 12. Название свойства для ввода или вывода
- 13. InputStreamReader или консоль для ввода/вывода Java
- 14. Android asynctask без ввода или вывода
- 15. Исправлен контейнер, перечислимый, индексируемый intellisense (или член)
- 16. IEnumerable Или перечислимый для Перечисляя составные объекты
- 17. ввода-кода ввода-вывода ввода-вывода Ивритские письма
- 18. странное поведение ввода вывода
- 19. Как настроить тип ввода-вывода 0.9.5 в Visual Studio 2012
- 20. Hamcrest assertThat - тип вывода
- 21. OCaml Тип и тип вывода
- 22. Какой лучший тип исключения используется для тайм-аута ввода-вывода?
- 23. Ошибка ввода файла ввода/вывода
- 24. Что такое поток ввода/вывода?
- 25. Перегрузка операторов ввода/вывода
- 26. основной вопрос ввода-вывода
- 27. Порты ввода-вывода ввода-вывода и обработка stdout
- 28. Сопоставление памяти ввода-вывода
- 29. Порт ввода-вывода ввода-вывода для мелкомасштабных однопоточных приложений?
- 30. Какой тип данных подходит для буфера ввода-вывода в C#
Вы искали примеры в бесплатном IEEE Std 1800-2012? – toolic
IEEE Std 1800-2012: https://standards.ieee.org/getieee/1800/download/1800-2012.pdf – wilcroft