1,嵌入式软件工程与实时系统
嵌入式系统性能:性能接近最优,鲁棒性,分布式,动态性,可移动
概念体系:方法/方法论/技术/语言/工具/流程
软件工程的独特形式:软件是具有可塑性的,软件构建属于人力密集型工作,软件是无形的,软件问题是空前复杂的,软件直接依赖于硬件,软件的解决方案要求严格,软件具有不连续操作性
软件关键设计阶段:需求——设计——实施——集成——验证——部署
嵌入式系统硬件抽象层(HAL):建模层(在matlab中建模等)——应用层(应用程序)——自定很诡异驱动程序(自定义组件——如UDP封装)——高层驱动(如通信协议封装)——底层驱动(can驱动程序,ADC驱动,定时器驱动,GPIO驱动,特殊程序驱动)
2,嵌入式系统软/硬件协同开发
虚拟化的重要性日益增加
虚拟原型机的投资回报包含以下几个部分:(1)通过使用虚拟原型机的架构规范,从规范到RTL的真正实现以及网络列表阶段的实现成本,可因使用早期设计验证而降低。可执行的虚拟原型机也别有助于避免从技术规格要求到RTL的实现中出现通信问题
(2)让软件开发人员尽获得虚拟原型机在手,就可以将集成阶段提前到项目中一个更早的时间,从而避免失去“集成的日子”。这里并不需要硬件开发套件共享;每个软件开发人员可以只在需要时才配置虚拟原型机。
(3)虚拟原型机有助于增强基于硬件的FPGA原型机,仿真器和硬件加速验证。只有绝对重要的才需要在硬件上验证
(4)由于原型机的“电子”特性,可以将他们方便的以较低成本分发给用户。
(5)最后,鉴于虚拟原型机允许并行软件的开发,用户可以完全避免推迟上市的结果