微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 微电子和IC设计 > IC验证交流 > ASIC的FPGA原型 验证

ASIC的FPGA原型 验证

时间:10-02 整理:3721RD 点击:
最近要做一个ASIC的FPGA原型验证,在网上查了一下相关的资料,有点迷糊,希望指点迷津。
我们上课学的FPGA的使用时直接输入Verilog代码,编译,分配管脚,下载,貌似很简单。(代码是modelsim的)
而我在网上看的一些资料说输入的是综合后的网表,而且由于FPGA与ASIC的不同,可能要修改代码。
对于这个直接输入代码和输入网表,有什么区别呢?是不是网表输入验证更加的准确,还有就是FPGA有没有导入工艺库,所以怎么验证时序方面的问题。

没人!

這是兩種流程, 其實都可以通的...
1. 即使是verilog輸入, 也是要經過synthesis的步驟, 產生netlist.
2. 至於netlist輸入, 則是有可能經過3rd-party的synthesizer (Synplify, Mentor Precision etc.), 針對target的FPGA (Xilinx, Altera etc.)產生netlist (通常是EDIF格式), 再進入FPGA implementation流程.
3. 假如你說的netlist是ASIC netlist, 然後拿來implement FPGA, 個人認為這種情況比較少發生, 畢竟standard library差異太大. (除非有工具做轉換)

可能你理解有误吧,像QuartusII和ISE这样的FPGA布局布线工具是接受网表输入的,前者是.vqm后者是.edf。这样的网表通常是synplify pro 或precision rtl综合得到。当然,新版的synplify支持网表的转换。不过种情况非常少见。如果你是指仿真,那就是指网表仿真了。

最近也在做fpga验证,不太懂,不知道正规的验证方法是什么,我现在就是把asic的代码用fpga的工具综合,然后加激励看结果

不懂,坐等牛人。

想学习fpga的飘过~

看看设计流程吧

FPGA一般比如ISE,都有配套的mapping syn工具可以把代码转成实际的网表后再烧写到FPGA片子上去。
ASIC的这些步骤都是人工定制做的,综合也在这里面。但是ASIC与FPGA在芯片上的结构不太相同,FPGA用到了非常多的LUT(查找表),RAM等固化结构。而ASIC的结构不会有FPGA类似的。故一般ASIC的综合后网表和FPGA综合后网表差别较大,兼容性不好。
所以ASIC的代码转到FPGA时,需要FPGA重新综合一下成为网表再烧写入FPGA片子中即可。

以前我们用专门的综合工具是为了更快,面积更小点。其实只用ise什么的也可以。



你好,请问使用ise综合之后哪个文件进入后面的布局布线呢?

现在的FPGA综合工具已经很好用了,一般不需要第三方工具,如vivado;现在工作的公司,都是直接用vivado导入verilog源代码,然后综合,布局布线;受FPGA资源限制,一般会对芯片代码进行裁剪,不然布线很难布出来;ASIC综合出来的网标,是寄存器加组合逻辑门(与门,或门等),而FPGA综合出来的网标是寄存器加lut(查找表),形式完全不一样,应该不会直接用ASIC的网标导入到FPGA实现中,除非有转化工具,但估计这转化效果不大好,毕竟FPGA综合工具会根据自身器件特点进行优化;知道的就这么多,希望有帮助

“输入的是综合后的网表,而且由于FPGA与ASIC的不同,可能要修改代码”
ASIC设计里有些IP可能没提供RTL源代码,或是加密的RTL源代码,要走FPGA流程就只能用DC输出网表了。
修改代码主要是clock/rest处理,因为ASIC clock/reset方案会比FPGA复杂很多;而且FPGA工作频率大概率比ASIC低,有些RTL也需要做修改。此外ASIC里一些模拟模块如DDR PHY,USB PHY, Memory要替换成FPGA能支持的,对应控制器的接口代码也要修改。
你可以看看Synopsys HAPS,Cadence Protium相关的white paper和application note,里面应该提到过这个问题的

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top