В OVM примере класса, я вижу следующее заявление в конструкторе:Что означает синтаксис (') в SystemVerilog?
void'(get_config_int("num_packets", this.num_packets));
Что такое первая часть void'(
должен делать в этом заявлении?
В OVM примере класса, я вижу следующее заявление в конструкторе:Что означает синтаксис (') в SystemVerilog?
void'(get_config_int("num_packets", this.num_packets));
Что такое первая часть void'(
должен делать в этом заявлении?
В этом случае одиночная кавычка используется для литья типов. void'()
в void'(get_config_int("num_packets", this.num_packets));
означает игнорировать возвращаемое значение от get_config_int
.
Хороший симулятор должен давать предупреждение, если функция или возвращаемое значение выражения не назначены ни на что. Использование void'()
явно сообщает инструменту, что вы хотите игнорировать возвращаемое значение и не видите предупреждение.
Вы также можете использовать другие отливки, такие как int'()
, MyPredefinedStruct'()
, 9'()
. обратите внимание, что предоставление константы при кастинге возвращает бит-вектор. 9'(4'b0101) == 9'b000_0101
См. IEEE Std 1800-2012 и прочтите раздел 6.24 для получения дополнительных пояснений и примеров.
вы помечаете свои вопросы с помощью Verilog и SystemVerilog, но они не имеют отношения к Verilog. Разный язык. – EML