systemverilog任务和函数
- 在verilog中,任务和函数之间有很明显的区别,任务可以消耗时间而函数不能。函数里面不能带有诸如#100的时延语句或诸如@(posedge clk)的阻塞语句,也不能调用任务。另外,veriolog中的函数必须有返回值,并且返回值必须被使用,例如用到赋值语句中。
- 在SV中,对任务和函数做了一些小改进,使得他们看起来更像C或C++中的程序。在SV中如果你想调用函数并且忽略它的返回值,可以使用void进行结果转换。
eg:
void'($fscanf(file,"%d",i));
本文主要阐述以下几方面的改进:
1.ref
Verilog对参数的处理方式很简单:在子程序的开头