Discuz! Board

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 2|回复: 0

研究发现专家访谈 FPGA到底是啥如何做好FPGA质量控制与测试

[复制链接]

11万

主题

0

回帖

35万

积分

超级版主

Rank: 8Rank: 8

积分
352204
发表于 7 天前 | 显示全部楼层 |阅读模式
FPGA质量控制与测试
随着数字化、智能化装备的爆发式发展,具备更高可靠性、更高集成性的FPGA产品,依靠自身的自定义编程设计、可重复性修订等特性,成功取代了传统堆叠化电子元器件设计方式,应用到装备的设计中去。未来电子信息领域,硬件装备软件化设计趋势已不可逆转。可以说,只要存在硬件,就必然有FPGA的身影。本期“专家访谈”栏目,邀请广电计量软件测试技术副总监齐跃,深度解析FPGA质量控制与测试,助力企业提升FPGA测试效率和设计质量。



齐跃

广电计量软件测试技术副总监

软件/FPGA测评从业经历13年,两项发明专利授权发明人,一项软件著作权著作人。主要从事航空航天、特殊装备等领域软件及FPGA第方及鉴定测评,覆盖导航定位、雷达、图像处理、遥控遥测等专业,具有丰富的FPGA软件测评工作经验。

FPGA软件的主要应用领域有哪些
FPGA,全称Field-Programmable Gate Array,翻译成中文即现场可编程门阵列。它是一种主要以数字电路为主的集成芯片,属于可编程器件中的一种。FPGA作为ASIC(专用集成电路)领域中的一种半定制电路而出现,具有限次重新编程的能力,通过对预制的门电路、触发器和可编程布线资源重新配置,可以现任意的逻辑功能,大大提高了集成电路的灵活性,既解决了定制电路缺乏灵活性的不足,又克服了原有可编程器件门电路数容量过小的缺点。

因此,FPGA的应用方向非常广泛,按照应用领域来看,FPGA在高速通信、数据处理、工业控制、特殊装备和航空航天等众多领域都已经得到了广泛的应用。

为什么对FPGA软件进行测评
根据有关单位某产品试验鉴定工作要求中提出,“FPGA应列入软件清单进行管理,列入软件测试要求考核范围,关键或重要FPGA要针对性开展代码规则检查、功能仿真、时序验证等测试”。所以根据上述文件要求所有设备中的FPGA软件都要进行内部测试/第方测评/鉴定测评。

FPGA软件测试面临哪些挑战

FPGA软件包含进行设计而产生的程序、文档和数据,同时包含与之相关的软件特性和硬件特性。FPGA软件测试需要考虑软件代码正确性、软硬件接口协调性、时序性等方面的全面覆盖。FPGA能够稳定、可靠地工作,不但功能需满足要求,时序指标、安全性指标等均需满足要求。

不同的FPGA芯片厂商、不同的运行电压和温度情况下,FPGA的时序会有很大不同,经常造成FPGA执行时出现错误。因此,FPGA测试需要在验证FPGA软件特性的同时,验证FPGA芯片硬件特性、电压与温度对时序的影响等环境特性是否满足要求。因此,FPGA软件测试包含对FPGA软件特性、硬件特性及环境特性全方位的测试。

FPGA软件测试的内容及流程有哪些

FPGA开发流程复杂,从前端设计代码到比较后生成配置位流文件,均有可能引入设计缺陷。因此,在安全关键领域,FPGA软件的单独测评流程涵盖由RTL代码生成位流文件的各关键节点,从不同层次采用多种方法对软件功能、接口、时序、和性能进行确认。

主要测试方法有:编码规则检查、跨时钟检查、功能仿真、门级仿真、时序仿真、功耗分析、逻辑等效性检查等。测试过程主要包括:

1.首先根据软件需求进行测试需求分析,确保测试100%覆盖软件需求。

2.针对RTL级代码进行编码规则检查及功能仿真测试,验证FPGA前端设计的正确性。

3.针对逻辑综合后的门级网表文件进行逻辑等效性测试,验证逻辑综合的可靠性、一致性。

4.针对布局布线后的布线网表进行静态时序分析及时序仿真测试,验证FPGA后端设计时序路径是否收敛。

5.针对烧写下载后的目标设备开展板级物测试,验证FPGA整机设备功能现正确性。

6.使用专业工具对FPGA前端硬件描述设计与后端时序电路逻辑一致性进行检查。

如何提高FPGA测试的效率和准确性
1.采用自动化测试工具:自动化测试工具可以大幅提高测试效率,减少人为误差。

2.化测试策略:根据FPGA的具体应用场景和规格要求,制定针对性的测试策略,以提高测试的有效性和准确性。

3.强化在板测试:在板测试可以更好地模拟际工作情况,有助于发现潜在问题。

4.强化可靠性评估:通过改进加速老化试验方法、引入更多际工作场景下的应力因子等方式,提高可靠性评估的准确性。

5.强化仿真测试:采用更精确的仿真模型和更全面的场景覆盖,提高仿真测试的有效性。

如何提高FPGA软件设计质量和可靠性
FPGA质量提升是一个涵盖设计、验证、施和测试全过程的系统工程,下面将详细介绍几个关键环节:

1. 设计阶段的质量保证

模块化设计:采用模块化的设计方法有助于提高代码可读性与重用性,并简化后期维护。每个模块应有明确的功能定义,遵循良好的设计原则。

资源化:根据具体应用需求合理分配逻辑资源、内存资源以及布线资源,通过算法化和架构选择来降低功耗并提升性能。

RTL设计规范:遵循行业标准和比较佳践编写HDL代码,确保代码风格一致且易于综合工具理解,避免潜在的时序问题。

2. 验证流程强化

功能仿真:在早期阶段进行详尽的功能仿真验证,确保设计满足规格要求,并覆盖所有可能的状态和边界条件。

形式验证:利用形式化方法验证设计正确性,包括等价检查、属性检查及模型检查,以减少因传统仿真遗漏而引入的问题。

静态时序分析(STA):在布局布线后执行严格的STA,确保设计达到指定的时序约束,防止由于时钟偏斜、延时不匹配导致的功能失效。

3. 增强可靠性设计

冗余技术:使用模冗余(TMR)、纠错码(ECC)或其他容错机制,提高系统的抗错误能力。

内建自测试(BIST):集成自测试电路,能够在运行过程中检测硬件故障,增强产品的现场可靠性。

软错误防护:针对辐效应和其他非长时间性故障,采用适当的软错误率(SER)防护策略。

4. 硬件现与签核

综合与化:选择高性能的综合工具,并对其进行参数调整以获得比较布局布线结果,同时考虑资源利用率、速度和功率。

物理设计签核:对完成布局布线后的设计进行全面的物理设计签核,包括DRC(设计规则检查)、LVS(Layout Versus Schematic),确保设计符合工艺要求。

综上所述,提升FPGA设计质量涉及诸多方面,需要在整个开发周期中结合先进的设计理念、严谨的验证手段和科学的测试方法,才能比较终打造出高可靠性的FPGA产品。

广电计量具备哪些FPGA测试服务经验
广电计量FPGA测试团队具有全面的装备软件测试资质,目前承接的项目包括商飞C919、载人航天、特殊装备等领域数十项FPGA软件测试项目,任务涵盖了第方验收测试、内部测试、鉴定测试/定型测试,测试级别覆盖单元测试、配置项测试和系统测试。

上述的结论表明盐雾试验第三方检测机构很大程度上能够给市场带来新的活力,让行业良好的发展。https://www.grgtmall.com/广电计量(GRGTEST)国有第三方检测机构/cma计量检测机构,提供一站式计量检测,可靠性检测,电磁兼容检测,食品检测等服务,具有CNAS/CMA等认可资质.欢迎联系!

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|足球新闻网

GMT+8, 2024-11-26 17:45 , Processed in 0.049370 second(s), 18 queries .

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表