百科狗-知识改变命运!
--

fpga 和asic 开发流程的区别

乐乐1年前 (2023-12-05)阅读数 9#综合百科
文章标签电路你的

第一步,首先是要实现功能,方式一般采用HDL描述,如verilog,VHDL。当然对于小规模电路也可以采用电路图输入的方式。

第二步,得保证电路功能的正确性,也叫验证,可以通过软件仿真,硬件仿真等方式实现。软件仿真一般比较直观,方便调试,因为每一时刻的状态都可以看到,这好比调试软件程序。硬件仿真一般就是指FPGA验证,就是把电路用FPGA实现,然后去跑,这个的好处就是速度很快,譬如一个视频解码核,解一帧图像出来,软件仿真就算用最好的服务器,也得跑上多少秒,但是在FPGA中实现的话,基本就是多少毫秒了。这对于一个需要大规模验证的电路来说,是必不可少的。

前面两步对于数字IP来说,ASIC和FPGA基本一致,除非一些实现技巧的差别。

第三步,在你描述的电路正确性得到确保之后,你就要实现它,就是要把你写的那些代码变成实实在在的电路,如寄存器还是与非门,这个过程就叫综合。由于电路规模日益复杂,一般最基本的电路就被做成了cell,如寄存器,与非门,就不会再细化到用三极管怎么去搭的问题了。这一步对于FPGA和ASIC来说就是最小的那个单元不一样。FPGA是做好的电路,一般顾及通用性和效能,基本电路单元就做得比较大,如LUT,就是由寄存器和与非门构成,你可能只用了其中一个与门,但是还会占用这么一个单元。对于ASIC来说,两输入的与非门,就是一个简单的门电路,甚至为了区分驱动能力和时序特性差异,还分了好几个等级,有的面积小,有的驱动能力强。总的来说这一步就是工具把你的描述变成基于库的电路描述。

fpga 和asic 开发流程的区别

第四步,你得到基于库的电路描述之后,就要考虑这些单元怎么摆放的问题,这叫布局布线。FPGA的话连线资源有限,所以需要不断地调整,在保证时序要求的情况下,把你的电路映射到其固定的资源分布图中间。ASIC的话一般是根据周边电路需求,时序要求,把你的电路放到芯片的某个位置。在摆好之后还得考虑连线是否能通,各级延时是否能满足电路的建立和保持时间要求等等。

第五步,输出。FPGA就是输出一个配置文件,告诉FPGA芯片该怎么样去配置其电路,使其实现预期功能。该文件可以在FPGA上电之后再由PC下载进去,也可以保存在Flash里,电路上电之后自动配置。ASIC就是输出一个版图文件,告诉代工厂该怎么去腐蚀硅片,该怎么连金属等等。

当然在这过程中间会有各种各样的辅助步骤。总的来说都是为了确保你设计的电路正确及正确实现你的电路。

asic和fpga之间的区别,各自优缺点

FPGA是可编程逻辑器件,可以由用户自行编写相应的硬件描述语言来实现不同的功能,而且设计可以进行多次更改

ASIC是专用集成电路,是已经设计好的具有特殊功能的专用芯片,功能设计不可更改,现在很多ASIC设计前期都会用到FPGA做验证

FPGA可编程,ASIC不能编程,是做定了的芯片。

ASIC投片价格高,单位成本低,速度高,从设计到使用需要很长时间。

FPGA没有投片费用,单位成本稍高一些,速度不如ASIC高,从设计好到应用上市的周期很短。

鹏仔微信 15129739599 鹏仔QQ344225443 鹏仔前端 pjxi.com 共享博客 sharedbk.com

免责声明:我们致力于保护作者版权,注重分享,当前被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自自研大数据AI进行生成,内容摘自(百度百科,百度知道,头条百科,中国民法典,刑法,牛津词典,新华词典,汉语词典,国家院校,科普平台)等数据,内容仅供学习参考,不准确地方联系删除处理!邮箱:344225443@qq.com)

图片声明:本站部分配图来自网络。本站只作为美观性配图使用,无任何非法侵犯第三方意图,一切解释权归图片著作权方,本站不承担任何责任。如有恶意碰瓷者,必当奉陪到底严惩不贷!

内容声明:本文中引用的各种信息及资料(包括但不限于文字、数据、图表及超链接等)均来源于该信息及资料的相关主体(包括但不限于公司、媒体、协会等机构)的官方网站或公开发表的信息。部分内容参考包括:(百度百科,百度知道,头条百科,中国民法典,刑法,牛津词典,新华词典,汉语词典,国家院校,科普平台)等数据,内容仅供参考使用,不准确地方联系删除处理!本站为非盈利性质站点,本着为中国教育事业出一份力,发布内容不收取任何费用也不接任何广告!)