打印
[MCU]

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

[复制链接]
722|21
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
Flower1|  楼主 | 2019-10-30 17:52 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
基于MCU和FPGA灵活设计车载信息娱乐系统

  汽车工业蓬勃发展, 车载信息娱乐系统 已经不再是豪华轿车的独有设施,越来越多的中低端轿车开始拥有自己的信息娱乐系统。

  然而,车载信息娱乐系统是一个高度集成的复杂系统,其中可以包括导航系统、影音系统、电话系统、空调通风系统,以及其他车内外舒适设备的控制系统等,这些系统涉及的通讯网络可以包括LINK_KEYWORD0、MOST、LIN、蓝牙和其他无线网络协议等。设计这样一个复杂系统,不但要考虑系统的性能和成本,更要考虑设计的灵活性,以保持产品在快速变化的市场中的竞争力。





  汽车电子系统要求温度适应范围大、有利于生产标准化和很长的设计寿命。车载信息娱乐系统是一个快速发展和适应各种用户的系统,如果既要保持一个设计具有长的寿命又要有高度的灵活性,那么这种设计在软硬件,特别是在硬件方面要有很强的可扩展性。

  一般来说,车载信息娱乐系统具有复杂的人机界面(按键和旋钮),带一个可以显示地图、影像和汽车信息的液晶显示器,有时还会是触摸屏。这种系统一般以一个高性能 MCU 为中心,加上各种标准接口以及一个视频加速器件。

  DSP、ASSP和 FPGA 都可以用来实现多种接口和视频处理。DSP专为信号处理而设计,具有灵活度高和功耗低的特点。然而,目前DSP的运算能力尚不能同时满足更高的图像处理和无线通讯的要求。ASSP通常为某个标准的图像处理和无线通讯而设计,换言之,它不具有适应多种标准的可编程性。FPGA同时具有高的运算能力和内部逻辑的现场可编程性,它能够适应车载信息娱乐系统的灵活性。另外,FPGA的现场可编程性使之能够代替很多原来要ASIC来实现的功能单元,这样就给硬件设计带来很大自由度。


  应用MCU+FPGA的设计,软件和外设硬件都可以在FPGA中变化,整个系统相当于一个很容易进行升级的软件,改变硬件就像改变软件一样简单。这样的系统可以满足从低端到中高端汽车电子产品的设计、测试和生产的要求。所以,基于MCU+FPGA的设计给车载信息娱乐系统带来了很大的灵活性。

  在确立了基本硬件框架之后,接着就要考虑基于这种框架的芯片的选择。对于车载娱乐信息系统这样一个复杂的人机交互系统,高性能和高安全的嵌入式实时操作系统是首选的软件基础。而该操作系统支持的芯片组将是MCU的主要候选者。目前,在汽车工业界普遍接受的组合是SH4(MCU)加上QNX(操作系统)。

  考虑了硬件之后,软件的架构就变得明晰了。由于QNX支持POSIX规范,所以基于它编写的模块化的应用程序和应用开发库具有良好的可移植性,这对支持同类软件架构的其他平台的开发无疑是一件节约成本的好事。




图1:硬件的基本构成示意图。

  软件架构的概念设计实际上可以在操作系统明确之前就开始。软件设计不一定非要遵从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这种现场可编程性,使我们能够在适当的时候启动适当的应用程序,这大大增加了设计的灵活性。



使用特权

评论回复

相关帖子

沙发
decoding| | 2019-11-2 16:43 | 只看该作者
感谢楼主分享!了解一下

使用特权

评论回复
板凳
10299823| | 2019-11-8 20:53 | 只看该作者
以现在的技术来看,FPGA是最高端的  

使用特权

评论回复
地板
jimmhu| | 2019-11-8 20:53 | 只看该作者
新的‘MCU+FPGA’解决方案  

使用特权

评论回复
5
lihuami| | 2019-11-8 20:54 | 只看该作者
   MCU对应用优势的挑战已经开始。  

使用特权

评论回复
6
xiaoyaozt| | 2019-11-8 20:54 | 只看该作者
MCU与FPGA串口通信 ?   

使用特权

评论回复
7
uptown| | 2019-11-8 20:55 | 只看该作者
MCU通常侧重于I/O接口的   

使用特权

评论回复
8
cehuafan| | 2019-11-8 20:55 | 只看该作者
单片机和fpga有什么联合使用的案例  

使用特权

评论回复
9
maqianqu| | 2019-11-8 20:56 | 只看该作者
fpga和51单片机之间怎么通信  

使用特权

评论回复
10
dspmana| | 2019-11-8 20:56 | 只看该作者
采用MCU或者DSP               

使用特权

评论回复
11
eefas| | 2019-11-8 20:56 | 只看该作者
现在很多FPGA CPLD可以集成mcu内核  

使用特权

评论回复
12
pl202| | 2019-11-8 20:57 | 只看该作者
如何将DSP和MCU两者完美结合  

使用特权

评论回复
13
eefas| | 2019-11-8 20:57 | 只看该作者
FPGA上设计一个数据接口  

使用特权

评论回复
14
10299823| | 2019-11-8 20:57 | 只看该作者
FPGA可以用软件方式实现DSP和MCU。

使用特权

评论回复
15
dspmana| | 2019-11-8 20:57 | 只看该作者
采用FPGA就可以充分体现纯硬件系统的实时性优势。  

使用特权

评论回复
16
jimmhu| | 2019-11-8 20:57 | 只看该作者
如何将MCU应用到FPGA中?     

使用特权

评论回复
17
maqianqu| | 2019-11-8 20:57 | 只看该作者
fpga和单片机的io口可以互连么  

使用特权

评论回复
18
lihuami| | 2019-11-8 20:57 | 只看该作者
MCU、DSP还是FPGA?   

使用特权

评论回复
19
cehuafan| | 2019-11-8 20:57 | 只看该作者
FPGA和ARM还是DSP结合学,和哪个结合一起学最好???  

使用特权

评论回复
20
xiaoyaozt| | 2019-11-8 20:57 | 只看该作者
模拟SPI时序通过MCU向FPGA中发送?   

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

623

主题

887

帖子

6

粉丝