位置:编程技术网 > 区块链 > 正文 >

纵览从ESL到EMULATOR——闪存主控验证全流程

2019年04月24日 22:10来源:未知手机版

韩峰日记门,玫瑰社区,韩国大宇汽车,人力资源与社会保障部网站,淘宝收费,借钱不还,沈阳市养老保险查询,成都二手房

设计验证是芯片产业链中关系到芯片质量的重要环节,随着芯片规模扩大及片上系统(SoC)设计复杂度提升,验证目标从功能正确、性能达标向满足业务应用快速适配部署的需求发展,其难度和重要性不断提高。

闪存主控验证由于其业务应用的特点,需要关注前端接口协议处理、后端闪存吞吐以及针对不同业务读写均衡和异常处理的需求。其导向随着 软件定义存储 的发展,更加强调与业务系统实际应用中的配合;其复杂程度也随芯片计算存储融合的发展而不断提高。为了在有限的市场窗口周期内快速迭代,缩短整体芯片及业务方案的研发周期,需要综合应用各类验证技术和工具来有效提高闪存主控的开发效率和质量。以下是对闪存主控验证工作的业务梳理、目标概述和全流程的简要介绍。

1. 闪存主控验证业务分析 1.1 特点:系统构成复杂。

闪存主控和网络通信、图像处理等芯片不同,它不是单纯的输入输出数据流业务处理的模型。其系统由定制算法、数据调度、通用计算处理、总线仲裁、内外存储、数据接口以及外采三方等多功能单元构成。对于不同类型的功能单元,其验证流程及策略各有其特点。

1.2 需求:功能性能功耗平衡

闪存主控数据流的调度效率除硬件本身的吞吐率和延迟指标外,还受片上运行的处理调度算法的性能影响。因此其验证策略上需要重视芯片在不同数据业务模式下的功能准确、性能达标和相应的功耗表现。

1.3 问题:单元与系统偏差

闪存主控的内部功能单元均有预期的质量指标。但功能单元质量满足目标与实际业务满足需求仍旧存在偏差,其契合度依赖于固件和硬件的协同处理。例如数据粒度,内外存分配管理策略等,都会对系统应用产生影响。为了达到功能、性能和功耗的有效平衡,需要固件的反复调试,甚至硬件架构的调整迭代,其开发周期较长。

2. 闪存主控验证流程策略

为了满足芯片产品高效能、快产出、低风险的需求,忆芯通过架构和实践,实现了适配闪存主控设计验证的验证方法论及相关流程策略等。

2.1 ESL设计验证流程概述

ESL(电子系统层次)设计验证方法是以能够紧密配合的方式开发、优化和验证复杂的系统架构及嵌入式固件的方法学,它提供了寄存器传输级(RTL)实现的验证基础。通俗的说法,可以认为它提供了同时开展原型系统研发、软硬件划分、固件开发、硬件验证的方法,让芯片未实现之前就可以着手片上软件开发工作,缩短开发周期。

对于闪存主控设计来说,ESL方法利用事务传输的软件模型模拟硬件模块划分;利用处理器的模拟软件进行业务调度;利用数据结构+命令接口模拟闪存的模型;在设计初期通过软件原型系统了解调用其中的瓶颈或者高频访问的业务部分,分析系统吞吐带宽,重点加速突破,快速迭代,整体加速了研发的进程。关于设计方法细节本文就不加以赘述了。

而对于验证来说,基于ESL方法论的平台开发与应用方式与传统芯片验证有较大不同。

传统方法中的设计验证迭代策略如下图所示:


图 1芯片设计验证迭代传统流程示意

传统流程在原型系统软硬划分完成后,首先开始硬件的设计以及验证仿真工作。在发现问题时,直接做硬件结构的迭代优化,而极少反馈到原型系统改动。但是此时并发的片上软件研发仍是基于原始抽象的事务流程开展的,其控制接口定义乃至处理流程都可能与硬件系统形成差异。为了弥补该差异,通常会进行FPGA平台的软件开发调试使其适应于硬件的迭代演进。但该方法受限于硬件开发,需要单元验证稳定后才能够开展。同时,由于FPGA平台与实际芯片存储和总线的差异,关于性能及功耗的验证无法固定软件方案,需要进行耗时的芯片性能前端仿真加以确认和修改;芯片实际生产后,仍需要进行后续研发适配以及较长周期的迭代优化。可以认为片上软件方案对于FPGA/ASIC分别都是部分定制性质的。即使硬件规格不做任何改动完全符合原始设计规格需求,其实际硬件与固件的开发适配仍旧需要二次迭代,这是由软件和硬件研发平台的分立特点决定的。

本文地址:http://www.reviewcode.cn/qukuailian/45751.html 转载请注明出处!

今日热点资讯