1.静态转换
静态转换操作不对转换值进行检查,格式是type'(value):
program test;
initial begin
$display("int'(42+1.1) is",int'(42+1.1));//将43.1强制转换为整型,四舍五入
$display("(42+1.1) is",(42+1.1));//SV默认为浮点型
$display("real'(42+1.1) is",real'(42+1.1));
end
endprogram
仿真结果:
2.动态转换
动态转换函数$cast允许对越界的数值进行检查,即如果转换成功,返回1,否则返回0,示例可见SV学习笔记—多态与类型转换
3.流操作符
基本流操作:
仿真结果:
使用流操作符进行队列的转换:
仿真结果:
使用流操作在结构体和数组间进行转换:
仿真结果: