APP下载

基于嵌入式系统软硬件联合设计方法

2018-02-28唐鸿彬蒋川湘徐方云

电子技术与软件工程 2018年23期
关键词:网络信息技术嵌入式系统

唐鸿彬 蒋川湘 徐方云

摘要

探究嵌入式系统软硬件联合设计方法,能够有效减少由于开发过程中设计错误带来的不必要的浪费。本文首先加那以后介绍了软硬件联合设计的一般方法和软硬件联合设计方法的运用与发展,随后以SOPC为例,探讨了基于嵌入式系统软硬件联合设计开发的具体路径,希望这些观点能够有效促进软硬件协同设计的推广和应用。

【关键词】嵌入式系统 软硬件联合设计 网络信息技术

软硬件协同设计方法在嵌入式系统中的应用,能够有效提高系统的开发效率,避免传统设计由于软件和硬件串行开发导致设计错误,提高系统运行的稳定性和安全性。

1 软硬件联合设计

1.1 软硬件联合设计的一般方法

软硬件联合设计方法是指在软硬件数字系统的设计过程中,基于并行设计和联合设计理念,运用统一工具和表示方法对软硬件的系统功能进行优化配置,并对运行系统进行全局性设计验证的新型设计方法,能够有效缩短设计开发周期,节约系统运行成本和周期,提高系统的设计效率,该方法性能够有效弥补传统设计方式的缺陷,提高运行系统的抽象层次性,拓宽设计的辐射范围。一般来所,软硬件联合设计的重要步骤可以划分为:系统建模描述、软硬件协同综合以及软硬件联合仿真,其中,系统建模描述实质上是利用网络信息技术手段,完整描述数字系统的行为,以实现对系统功能的科学验证和软硬件的合理划分;软硬件协同综合则包括了对软硬调度、约束代码生成、硬件以及接口的综合,以促进对性能、成本、功耗等多方面的客观评判和权衡,提高系统的设计效率;软硬件联合仿真则指的是在充分掌握软硬件部分行为的基础上,生成仿真环境和仿真数据,并对系统行为进行建模,以验证系统的功能和性能。软硬件联合设计的流程图如图1所示。

1.2 软硬件联合设计方法的运用与发展

软硬件联合设计方法能够有效满足嵌入式系统的性能要求,提高系统设计的灵活性和实时性,软硬件设计方法在到嵌入式系统中的应用具有一些独特的特征。首先,在软硬件的划分上,除了最基本的模拟退火算法之外,还可以应用基于编译器指导的方法、软硬件流水线化、交互式划分等方案;其次,商用组件的标准化和高度集成化也对嵌入式软硬件联合设计的发展产生了影响,随着软硬件组件的日益标准化,微处理器和微控制器呈现功能合并的趋势,在嵌入式系统设计中,软硬件划分的粒度正在持续增长,对可移植代码和标准的实时操作系统具有较大的依赖性,在系统设计上,更加注重接口设计和整体性能,设计空间具有较强的多样性和灵活性。最后,在嵌入式系统设计中的“联合”与“分散”方面,硬件联合设计方法的联合模拟技术和虚拟原型技术,确保了软硬件设计的同步性,其联合验证技术的应用能够有效提高系统的设计效率,减少成本消耗,为软硬件建模、联合模拟及评价构建良好的开发环境。

2 基于嵌入式系统软硬件联合设计开发——以SOPC系统为例

2.1 系统任务描述

在SOPC嵌入式系统中应用软硬件联合设计,首要的是明确SOPC(System On aProgrammable Chip)是一种特殊的嵌入式系统,属于片上系统(System-on-a-chip,SoC),其主要逻辑设计是在可编程逻辑器件内部进行的,具有可裁减、可扩充、可升级等多种优势,依据该系统的性能和功能需求,需要对其进行建模操作,一般来说,SOPC系统的模型主要包括数据流图模型、任务流图模型、Petri网模型等,利用软硬件联合设计方法,解决系统的统一描述问题,需要采用特定的语言方式,编译并映射成硬件描述语言和软件实现语言,以促进软硬件并行协同工作的落实。

2.2 系统软硬件划分

软硬件联合设计方法在软硬件的划分上具有一定的特殊性,落实对系统软硬件的科学划分,能够充分发挥硬件处理的快速和软件控制灵活的特点,促进系统功能的全面提升。当前,基于SOPC系统探索空间性质,其主流的软硬件联合划分算法为模拟退火算法和遗传算法,模拟退火算法(Simulated Annealing,SA)是一种通用的优化算法,强调在局部最优解能概率性地跳出并最终趋于全局最优;遗传算法(Genetic Algorithm,GA)则是用于解决最佳化的搜索算法,其主要特点是能够直接对结构对象进行操作,具备内在的隐并行性和卓越的全局寻优能力,能自动获取和指导优化的搜索空间,两种算法的有机结合能够有效降低软硬件成本,减少功耗需求,提高系统运行性能。

2.3 软硬件协同综合

在软硬件划分完成以后,需要对软件系统和硬件系统进行综合,其操作流程为,首先,要优化系统功能单元的分配,筛选适宜SOPC嵌入式系统的处理器、数字信号处理(DigitalSignal Processing,DSP)以及特定硬件的体系结构级别的组件;其次,要对系统任务进行指派,配置硬件处理单元和处理器应用软件各自的功能,保障功能配置的协调性和匹配性;最后,要落实对系统任务的调度,规定处理单元任务的开始时间和执行顺序,整个流程的操作目的是为了将划分完成的软硬件结构描述转换成为可以综合的硬件描述和可以编译的软件程序,即,Verilog HDL(硬件模块)和C(软件模块)。

2.4 软硬件联合仿真

软硬件联合仿真是通过模拟软硬件之间的相互作用,实现对SOPC嵌入式系统整体性能的评估,以验证系统设计是否满足用户的性能要求,其仿真验证可以分为系统级仿真、行为级仿真、暂存器转移層次(Register Transfer Level,RTL)以及门级仿真。典型的软硬件协同仿真一般是在复杂可编程逻辑器件(Complex Programmable 10GicDevice,CPUD)或现场可编程门阵列(Field-Programmable Gate Array,FPGA)的开发环境下进行的,其常用的设计工具为:Altera公司的Quartus Ⅱ、SOPC Builde、NiosⅡ IDE、Cadence Virtual Component Co design(VCC)以及System C。

3 结论

综上所述,从宏观的角度整体把握系统的设计,落实软硬件联合设计方法的应用,能够强化软硬件之间的并行性,实现对功能模块的折衷分配,促进系统最优化理论状态的达成。

参考文献

[1]周哲照.嵌入式系统软硬件协调设计环境构造与实现方法[J].无线互联科技,2018,15(12):52-53.

[2]陈锐,门永平,杨文强,丁宗杰.基于UVM的FPGA软硬件联合仿真验证技术研究[J].空间电子技术,2017,14(01):38-42.

猜你喜欢

网络信息技术嵌入式系统
浅谈高职数字媒体专业教学现状
计算机网络信息安全及防护策略研究
办公自动化系统的设计
嵌入式系统课程“中断、异常与事件”教学实践及启示
面向实践创新人才培养的嵌入式系统教学研究