FPGA开发不再是发明时候的初衷,用于嵌入式中的粘合逻辑的定制化实现,而是越来越趋向一个可定制化的SOC平台。因此对开发者来说:既要求有底层HDL开发,又要有上层C甚至OS应用开发,导致FPGA系统的验证越来越复杂。而FPGA验证平台又处于一个尴尬状态:用IC验证方法学平台虽然很好,但是太复杂且基于Linux,对开发者能力要求高,同时FPGA的复杂性还未达到IC开发的量级;用常规Modelsim搭建的验证平台,又很难在一些小的项目开发中形成完善系统的验证平台,也就是工程师各用各的,没有IC验证平台高效标准的流程化开发优势。
因此,我们是否可以将IC的验证平台简单化,去掉一些不必要的功能,将传统FPGA验证平台复杂化,添加一些自动化标准化的组件,按照这样的思路搭建一个适合目前大部分传统FPGA开发的一个验证平台,解决传统FPGA验证效率低的痛点。
特别是传统开发应用比较多的视觉方向,有了这样一个验证平台,将有以下优势:
1. 加速视觉算法的验证及优化,最大化算法硬件实现与理论之间的差距;
2. 提供视觉系统易用的Debug接口,减少系统验证时的工作量及使用门槛;
3. 快速更新迭代系统框架,不断降低FPGA资源消耗,让实现资源至少较以前降低一半以上,产品在市场上脱颖而出,抢占市场,这点是目前传统开发很少注重的,但绝对是未来的主旋律,因为IC潮下,FPGA技术竞争会越来越大,只要有钱能做出来就能赚钱的情况会越来越少。
Step0:选取合适的FPGA硬件及软件环境,作好准备工作:软件安装,器件库编译,UVM包下载及配置;
Step1:将上述的硬件软件验证环境的配置编写成脚本,每次使用通过自定义命令后台自动完成开发环境的配置;
Step2:将验证的整个流程写成脚本,通过脚本自动加载执行整个流程;
Step3:对脚本中各个流程功能实现,封装抽象各个功能模块,只对外开放验证应用的相关接口(如python接口),让不熟悉验证平台的人也能轻松使用。
注: 原创不易,未经作者本人授权,禁止转载,转载必究。