为什么需要门级仿真
背景
当时面试百度昆仑芯的时候,面试官问我这样一个场景。各Corner下的Timing已经Clean了,Formality已经保证RTL和门电路保持一致了,为什么要需要去做GLS(Gate Level Simulation)呢?
当时问的一下愣住,没想明白,下来搜集资料发现以下几点原因。其中部分原因自己也还不能理解到位,期待后续实际工作中加深理解。
原因
- 解决STA工具的局限性,如STA工具无法分析异步接口信号,STA工具也会放宽对False Path和Multi-cycle Path的检查,用GLS来复查一下;
- 核实一下系统初始化是否正常进行,复位链是否正确;
- 验证所有电源域的上电和复位操作是否符合要求,并且检查设计不依赖于设计的初始条件;
- 利用最坏和最佳的时序信息的组合来揭示边缘敏感信号上的Glitch情况;
- 执行DFT验证,因为扫描链是在RTL综合后插入的;
- 验证时钟树综合(CTS)是否满足要求;(Skew、Jitter等)
- 获取翻转率参数来更准确地估计功耗;
- 在RTL或者GLS中以悲观/乐观来分析X态;(不太理解)
- 检查最终的性能以确保设计工作在所需的频率,路径上实际的延迟需考虑在内,包括部分结构元素不被STA或者Formality检查,或者在PR阶段在路径上插入的Buffer或者其他的电路元素。
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 大卫的博客园!
评论