FPGA入门:基本开发流程概述
本文节选自特权同学的图书《FPGA/CPLD边练边学——快速入门Verilog/VHDL》
在第一章中,已经给出了FPGA/CPLD的基本开发流程图。这里不妨回顾一下,如图5.15所示。这个流程图是一个相对比较高等级的FPGA/CPLD器件开发流程,从项目的提上议程开始,设计者需要进行FPGA/CPLD器件功能的需求分析,然后进行模块的划分,比较复杂和庞大的设计,则会通过模块划分把工作交给一个团队的多人协作完成。各个模块的具体任务和功能划分完毕(通常各个模块间的通信和接口方式也同时被确定),则可以着手进行详细设计,包括代码的编写、综合优化、实现(映射或布局布线),为了保证设计达到预期要求,各种设计的约束输入以及仿真验证也穿插其间。最终在EDA工具上验证无误,则可以生产下载配置文件烧录的实际器件中进行板级的调试工作。
图5.15 FPGA/CPLD开发流程 当然了,对于没有实际工程经验的初学者而言,这个流程图可能不是那么容易理解。不过没有关系,我们会简化这个过程,从实际操作角度,以比较低等级的方式来描绘整个设计的过程。如图5.16所示,这里简单的根据先后顺序将开发步骤分为工程管理、设计输入、实现与验证、板级调试四个阶段。工程管理阶段,主要是新建工程和源代码文件,可以使用Quartus II的新建工程向导完成工程的建立,源代码文件则可以是Verilog的.v文件或VHDL的.vhd文件。设计输入阶段,完成代码的编写和基本语法的检查。实现与验证阶段,则先对前面编写好的代码进行RTL级仿真,确认代码实现基本功能后,则进行器件管脚的分配,接着编译并做时序约束,然后进行门级仿真。门级仿真是在功能仿真的基础上,加上了时序延时模型后的仿真,通常如果设计者可以保证时序约束后的报告确定达到设计要求,那么可以不用费事去做门级仿真,因为在一些较大的设计中进行门级仿真是件非常费时费力的任务。最后则是进行板级调试,首先需要通过EDA工具生成前面设计的下载配置文件,接着完成下载并进行板级调试验证。
图5.16 FPGA/CPLD设计简易流程
本文节选自特权同学的图书《FPGA/CPLD边练边学——快速入门Verilog/VHDL》
|