聊聊FPGA原型验证

本文转载自: FPGA打工人微信公众号

注:本文由作者授权转发,如需转载请联系作者本人

做FPGA的人很多,但其中做原型验证的人可能就比较少了,我做了一年多的FPGA原型验证,今天简单聊聊自己的一点感触。

在正常做FPGA产品时,从开始到产品稳定,可能会涉及到很多很多东西,刚开始就是FPGA选型(这个以Xilinx的FPGA居多),最关键的就是后面的产品实现了,这里面可能会有好多注意的地方,时序、RTL设计、仿真、debug、问题定位等,可能后面因为项目需求或者资源紧张等因素要重写RTL都有可能。这其中就需要对FPGA的clock、IO、RAM、DSP等做一定的深究。

但是做原型验证,这其中除了对clock和RAM关注度比较高,其他的并不需要太多关注,正所谓从IC设计同事的眼中:RTL这边我已经OK了,仿真我也仿真过了,FPGA你们那边只需要加个时钟,替换下RAM,跑个版本给软件验证同事即可!从软件同事的眼中:我怎么验证,我把我的需求告诉FPGA你们那边,你们给我出个版本就行,至于验证功能的相关寄存器,我会和IC设计的同事对接!是不是感觉有点那个啥。。。。。。对不对!

还有就是有些公司的原型验证人员除了自己的工作,可能还会被叫过去干其他无关的工作,比如做测试。

什么CPU、AXI等总线、各种外设、各种存储、各种协议等这些,甚至不需要很熟悉,甚至只知道个概念都不影响正常工作,不过对于tcl等脚本语言还是需要熟悉一下,毕竟FPGA版本环境还是需要原型验证维护的。

从好的方面考虑,原型验证需要站在整个芯片系统的角度来考虑,可能对各个功能细节性不是特别熟悉,但对整体的RAM资源、时钟树,系统的整体功能比较熟悉。其次,还有个点,就是IC设计的RTL code对FPGA基本都是开放的,想详细研究某个module,还是挺方便的,如果有问题,也可以和IC设计同事交流,但这个前提是IC设计同事有空能帮你解决疑惑。

可能也有人拿FPGA原型验证和IC验证做比较。IC验证主要以EDA工具为主,跑大量的case,做大量的仿真工作,把能想到的case都测一遍。但是,IC验证毕竟是仿真,不一定能遍历到所有的情况,就比如CPU,软件的程序怎么写,不能光靠DV仿真,所以此刻就是需要FPGA原型验证做一个补充了,虽然FPGA原型验证主要验证功能性,但毕竟是模拟真实环境的,这应该也是这个岗位能存在的最主要原因。但FPGA原型验证,在IC的前端环节,处于偏边缘化的位置也是无法改变的事实,毕竟说其只是一个辅助性的岗位都不为过。

所以,后面如果拿到了这个岗位的offer,根据自己的职业规划,认真考虑一下怎么选择!!!!

最新文章

最新文章