瀑布式的研发方式
在瀑布式开发的研发模式中,经常需要进行大量的技术协调会进行技术沟通和协调。同时,这种递进式研发模式越来越难以应对复杂产品开发:
- 文本格式的需求文档很难完全避免二义性的产生;
- 很难在早期进行测试验证并及时发现设计问题,带来成本的增加和开发周期的延长;
- 难以应对频繁的设计更改,特别是在项目后期的设计更改会带来巨大损失。
此外,在嵌入式软件开发中,人工编码仍大量使用。人工HDL编码对技术人员的要求较高,而且效率较低。特别是在面对越来越复杂的通信数字信号处理算法开发时,开发效率、手工HDL代码bug等问题很容易导致项目的延期。
传统的开发模式重点放在了验证和测试——
大干快上完成设计和实现阶段,最后大量问题在测试和验证阶段,依靠系统联调时才得以暴露和显现,而这时复现、定位和解决问题的成本,将是最高昂的。
传统的无线通信系统开发流程存在以下掣肘:
1. 现代无线通信算法日趋复杂,开发之初难以全面综合考虑数字基带、数字中频、射频链路以及复杂信道条件下的系统级性能。这种未经全面仿真就开始开发的流程,会给复杂新型无线通信系统研制带来巨大隐患。
2. 现有通信系统设计流程中,算法设计/仿真和FPGA和ARM/DSP硬件实现阶段互相隔离,无法自动生成可以在硬件平台运行的代码。而手工编写HDL/C代码,易引入错误,质量难以保证,同时造成设计工时浪费。
3. 大多采用人工方式对于通信信号处理算法进行编写以及集成仿真,费时费力,模块功能单一且难以复用,可靠性和项目进度难以保证。
MathWorks 建议用户使用基于模型的无线通信系统研发流程——
基于模型的开发流程
以基于模型的方式来设计项目,即以模型创建需求、以模型设计算法、以模型自动生成代码及以模型自动测试/验证。从顶至下为项目研发的四个阶段,依次为预研及项目需求、算法设计阶段、算法实现阶段和集成验证阶段:
- 项目需求阶段
- 项目需求阶段就建立一套可执行的模型,使与纸质需求书逐项对应;
- 算法设计阶段
- 在算法设计阶段,逐步细化模型,仿真验证算法在不同环境下的性能;
- 算法实现阶段
- 与传统手工编码不同,直接从模型中自动生成用于FPGA/DSP的HDL/C代码;
- 集成/验证阶段
- 从模型中直接生成用于FPGA/DSP硬件在环测试的测试平台和测试用例。
使用基于模型的设计研发流程的优势在于:
1. 统一的从顶至下的开发环境
数字信号处理算法工程师和RF工程师,都可以采用同一设计环境,从而可以搭建涵盖数字信号处理部分和RF部分的从发射端到接收端的完整无线通信系统。
通信系统算法设计人员在完成算法级建模后,再由FPGA工程师进行模型细化、定点化转换,这使得算法设计过程和工程实现过程相融合,实现了在开发阶段和工程阶段,设计和数字信号处理HDL代码可以持续同步,极大的加快了设计迭代的过程。
2. 完善的从顶至下的开发流程
项目初期即搭建模型,进行包括信号处理算法和复杂信道环境建模的全系统的仿真,包含复杂环境和可能的故障类型,确保在最早的阶段发现问题,用最小的代价解决问题。
在Simulink搭建的无线通信系统模型基础上,可以覆盖分析、设计、实现、测试、集成的完整流程。模型易于不同阶段的开发人员进行交流和理解,同时还可以很方便的进行分享和复用等一系列的好处。
3. 软件仿真与硬件在环仿真的有机结合
从模型中自动生成验证平台和测试用例,可进行功能级和FPGA/DSP硬件在环的测试验证,节约手工编写测试平台时间、提高测试验证的覆盖度,确保信号处理系统的可靠性。
编辑:hfy
-
FPGA
+关注
关注
1625文章
21620浏览量
601179 -
无线通信
+关注
关注
58文章
4493浏览量
143344 -
数字信号处理
+关注
关注
15文章
553浏览量
45758 -
通信系统
+关注
关注
6文章
1168浏览量
53256 -
嵌入式软件
+关注
关注
4文章
239浏览量
26597
发布评论请先 登录
相关推荐
评论