小风哥

小风哥的FPGA进阶之路——(一)中小型企业FPGA开发流程

0
阅读(3808)

中小型企业FPGA开发流程介绍 


         注册AET账号有些日子了,只在AET 这么优秀的工程师交流平台发表过3篇博客,这一直让我耿耿于怀。所以决定以21篇博客的速度更新,希望自己能够坚持下来。


        中小企业FPGA开发虽不像华为等大型公司分工较细,但能做到麻雀虽小,肝胆俱全。因此介绍此流程很有意义。

 

         从事逻辑工程师开发已经有不些春秋,也跳过槽。熟悉2家中小型公司的FPGA开发流程,介绍如下。


1、  逻辑需求分析

项目启动后,硬件工程师根据客户或者项目需要进行原理图的绘制,其中一般包括逻辑设计需求。硬件工程师为逻辑工程师提供《设计原理图》、《研制方案文档》、《客户协议细则》等内容,逻辑工程师根据提供文档整理出FPGA/CPLD的外围接口,项目逻辑设计的需求,例如:数据交互、DDR缓存、报文处理、上电、复位,点灯等。


此环节过程中,需要帮硬件工程师验证FPGA引脚分配,以确保FGPA硬件设计的合理性。

#此环节在项目周期允许的情况下,应以文档呈现。

QQ截图20160529162250.png

                                图1、需求分析细则

2、  逻辑设计方案

基于公司之前项目的设计习惯,做出FPGA/CPLD的总体框架,一般使用word文字结合Visio制图,以图文并茂的方式呈现。细节应包括:接口时序、模块时序、模块具体实现等内容。

*此部分内容必须以文档方式呈现,必要时邀请其它逻辑工程师进行《设计方案评审》。

QQ截图20160529163429.png

                             图2、设计方案的典型案例


         3、代码编写与仿真

                   根据设计方案进行代码编写还仿真,撰写代码时应符合公司代码规范。

                   仿真包括UT仿真和系统仿真。

                   1)、UT仿真

                      UT仿真即模块仿真,应对模块设计的功能构造激励进行仿真,应尽量多的覆盖测试点,并构造特殊情况,以验证模块的恢复能力。

                   2)系统仿真

                         针对工程顶层的仿真,要求同上。

         4、板级调试

                   板上加载镜像文件进行,调试步骤一般包括:

1)、接口调试,这是调试的第一步,一般需要打通FPGA外围接口,例如Local busSPIIICDDR3等、SRIO等。

2)、功能测试:验证项目最初设计时的逻辑功能,需全部功能验证通过方可。

3)、异常构造:构造一些异常情况,检验FGPA设计的稳定性和自我恢复能力,这一点很重要。

  调试手段一般包括:

    (1)、FGPA开发软件的抓信号软件,例如:chipscopesignaltap II等。

    (2)、逻辑分析仪;

    (3)、示波器、万用表;

    (4)、其它。

FPGA工程师应记录调试过程,以《调试记录》文档方式呈现。