中国汽车工程师之家--聚集了汽车行业80%专业人士 

论坛口号:知无不言,言无不尽!QQ:542334618 

本站手机访问:直接在浏览器中输入本站域名即可 

您当前所在位置: 汽车电子 > 查看内容

基于MCU和FPGA设计车载信息娱乐系统

文章作者头像
发布:清雅轩 作者: webmaster来源: job.cartech8.com
PostTime:23-5-2008 11:59

以下为文章全文:(本站微信公共账号:cartech8)


汽车零部件采购、销售通信录       填写你的培训需求,我们帮你找      招募汽车专业培训老师

软件架构的概念设计实际上可以在操作系统明确之前就开始。软件设计不一定非要遵从POSIX规范,而是要满足系统的高性能、设计的模块化、应用的可伸缩性和代码的可重用性及可移植性。

通常一个基于MCU的复杂软件系统应该定义以下的软件层:

BSP:处理和MCU初始化相关的事务,如IPL(Initial Program Loader)和Startup Program等;

设备驱动:所有和硬件相关的程序,如FLASH driver、CAN driver和图形图像驱动等;

OS:核心操作系统,负责提供资源管理和安全任务调度等服务,它甚至也可以包含一些高层次的驱动设备,如标准输入输出设备驱动等;

中间件:介于操作系统和应用程序之间的程序,如各种API和FPGA Loader等;

应用程序:具有高度可重用性的、完成特定功能的程序模块,如媒体播放器和导航软件。

在MCU+FPGA的架构之下,每个和FPGA相关的应用程序都自带一个初始化例程。该初始化例程在需要启动该应用程序之前将该应用程序映射到FPGA,然后该应用程序在FPGA上运行。根据应用程序的要求,MCU可以在完成映射之后,保持和FPGA强的或弱的通讯联系。这种结构部分解放了MCU,使之能够有效地进行任务调度和资源管理,而FPGA也能够在特定环境下高效运行。这种系统的另外一个好处就是非常稳定且容易维护。运行在FPGA中的应用程序的不良动作或崩溃通常不会影响到运行在MCU中的操作系统。在发现某个应用程序失效之后,操作系统可以从容地重新开始该应用程序的新例程,而不必重启整个系统。

运行在FPGA中的应用程序,虽然看起来和普通运行在ASIC或ASSP中的系统并无区别,但是这些应用程序的结构实际上有很大的区别。运行在ASIC或ASSP中的系统是根据已经确定的具有特定功能硬件环境设计的,而运行在FPGA中的应用程序是根据将要完成的功能,自己调整FPGA的逻辑单元,使之能够适应环境。正是FPGA这种现场可编程性,使我们能够在适当的时候启动适当的应用程序,这大大增加了设计的灵活性。(哈曼贝克汽车多媒体系统(深圳)有限公司)

<< 前一页

[文章纠错]

文章网友提供,仅供学习参考,版权为原作者所有,如侵犯到

你的权益请联系542334618@126.com,我们会及时处理。

12

会员评价:

0 发表评论

QQ|手机版|小黑屋|Archiver|汽车工程师之家 ( 渝ICP备18012993号-1 )

GMT+8, 5-9-2025 23:14 , Processed in 0.312838 second(s), 22 queries .

Powered by Discuz! X3.5

© 2001-2013 Comsenz Inc.