本文首发于微信公众号【FPGA算法工程师】,欢迎关注。
从目前的高速信号处理、无线通信和图像等应用市场看,FPGA依然是小批量快速交付产品的首选。本文以Xilinx 的Vavado开发套件为例,描述FPGA设计流程和开发方法。所述内容基于此前做的一份PPT的部分内容,若有不当之处,欢迎留言指正。
本文内容主要分为以下四个部分:
-
FPGA开发流程
-
Xilinx Vivado开发套件
-
Xilinx IP库
-
FPGA仿真
-
BIT流生成
-
调试debug
1.FPGA开发流程
在整个项目或者产品研发过程中,FPGA开发一般是在整个项目准备落地的阶段,经过前期的市场、技术合同签订,完成需求分解和系统方案设计,算法链路仿真后,再启动FPGA开发。
FPGA工程师获取任务需求,并根据算法链路进行逻辑开发,仿真验证,再进行综合、布局布线,生成bit流文件,随后与软件、平台等进行联调,协同配合完成系统调试,最后固化版本,完成产品交付和生产。在具体的FPGA开发过程中,要完成某部分功能,可使用IP,没有合适的IP则进行逻辑开发,或者从已有代码库中获取进行移植修改。
随着FPGA器件规模越来越大,单颗芯片可能包含FPGA、ARM、CPU、DSP等构成超大规模的SoC。Xilinx推荐采用UltraFast设计方法学,可以更好地完成整个工程设计。FPGA负责完成底层逻辑设计,软件完成上层应用设计,嵌入式平台完成驱动开发,OM负责人机交互开发。
2.Xilinx Vivado开发套件
FPGA的开发软件通常取决于FPGA厂商,Xilinx公司FPGA主要采用Vivado,早