1、Verilog添加定位手段的重要性?
Verilog定位手段能够达到以下效果:
方便FPGA版本定位、方便样品测试定位、防止他人将无法定位的故障推脱到自己身上。
2、添加定位手段的时间?
代码中 verilog添加定位手段会增加逻辑资源和面积,所以原则上是越早越好,否则在项目后期布局布线等已经规划好的情况下,会对后端团队造成很大的困扰,导致项目延期。
模块代码基本定型后,需要立即添加定位手段
FPGA版本出来后,验证功能和性能时,将之前忽略的定位点添加上。
3、常见的定位手段有哪些?
3.1 重要信号可读
- 所有状态机状态current_state可读
- 关键信号可读,例如:流控,反压等(_fc,_rdy),fifo 满空信号,此类重要信号不仅要可读,还需要判断这个信号是否长期处于这类状态,要有计数,并且可读清零。
- Fifo 实时深度可读
- 尽量多添加中断信号,将更多的信号接入中断处理模块
3.2 常见的统计计数
1)输入数据和输出数据的统计:输入多少有效数据,输出多少有效数据
2)各种类型的数据统计:MAC模块处理的各类型包有多少,64字节的包、大于64字节小于128字节的包有多少
3.3 异常情况的记录
1)模块入口,有异常输入,如MAC有包开始标识,却没有结束标识,此类异常需要有统计,统计可读,并且异常要送给中断处理模块
2)关于数据错误的异常要送中断,如fifo的错误:ECC、parity、上溢出、下溢出