设计流程-
FPGA是可编程芯片,因此FPGA的设计内容包括硬件设计和软件设计两部分。硬件包括FPGA芯片电路、 存储器、输入输出接口电路以及其他设备,软件即是相应的HDL程序以及最新才流行的嵌入式C程序。
FPGA的开发流程即是利用EDA开发软件以及编程工具对FPGA芯片进行开发的过程。EDA (Electronic Design Automation,电子设计自动化)是充分发挥LSI性能的关键技术。理论上,一款FPGA所能达到的性能上限是由制程等物理因素决定的,而在实际应用中用户电路的性能很大程度上取决于器件的架构和EDA工具。这就像汽车一样,无论引擎(制程)多么强劲,都需要配合适当的车体(架构)和驾驶技术(EDA工具)才能发挥出极限速度。尤其是与电路实现直接相关的EDA工具,其对性能的影响不可估量。
FPGA的设计流程由HDL源代码的逻辑综合开始,经过工艺映射、逻辑打包、布局布线等过程,最终生成比特流。逻辑综合将HDL描述转换为门级网表,工艺映射将这个网表转换为查找表级别的网表。逻辑打包是将多个查我表和触发器集合到一个逻辑块的过程。布局布线工具先决定逻辑块在器件上的位置,然后通过布线结构实现逻辑块之间的连接。最终,基于这些布局布线信息可以决定FPGA中各个开关的连接关系,以此生成比特流。
器件上查找表的输入数是既定的(查找表能实现输人数不大于自己的任意逻辑),而FPGA的设计就是要从目标电路的逻辑函数中不断分离出既定输入数之内的逻辑,并将其映射到查找表上。然后将这些查找表通过布线相连, 就可以在FPGA 上实现目标电路。
FPGA和ASIC的区别在于,ASIC通过组合使用标准单元库中的逻辑实现电路,而FPGA则使用统一构造的查找表。这种区别也体现在了EDA工具上。下面我们就对这种不同于ASIC的EDA技术原理进行详细介绍,具体包括上述的工艺映射、逻辑打包、布局布线。
工艺映
FPGA设计原理
最新推荐文章于 2024-10-10 08:27:33 发布
本文介绍了FPGA的设计流程,包括逻辑综合、工艺映射、逻辑打包和布局布线。通过EDA工具,如FlowMap进行工艺映射,AAPack进行逻辑打包,以及VPR进行布局布线,实现FPGA的编程和优化。FPGA与ASIC的区别在于其使用查找表和可编程逻辑,设计过程涉及多种复杂算法和技术。
摘要由CSDN通过智能技术生成