嵌入式DSP上实现FlexRay总线的方法

嵌入式dsp上实现flexray总线的方法
引 言
flexray总线是最近推出的一种采用点对点(星型拓扑结构)连接,借助无屏蔽或屏蔽双绞线电缆的先进高速串行同步和异步通信系统。flexray总线具有故障容限,可提供500kbps~10 mbps的确定数据传输速率和24位crc(循环冗余)校验码。flexray是一种时间触发型总线,所有的子系统按照预先设定的时隙进行连续通信。flexray总线的推出可以解决目前车载多种电子设备的网络连接问题,而早期的can总线和lin总线已经无法满足现代车载电子设备的高速通信要求。
本文介绍一种在嵌入式数字信号处理器(dsp)omap5912上实现flexray总线的方法。flexray总线负责将各个设备的数据传输到dsp,dsp负责对数据进行分析和处理。由于系统采用了dsp,因此可以对车载电子的语音和图像数据的复杂算法进行处理。本文着重讨论dsp和flexray总线的软硬件连接。
1 fiexray总线及其控制器mfr4200
flexray总线是一种全新的总线系统。其主要特性有:
①支持双通信通道,每个通道的速率均达到lo mbps。与can协议相比,可用的带宽提高了lo~40倍。
②总线数据的访问是基于同步时基的。该时基通过协议自动建立和同步,并提供给应用层。时基的精确度介于0.5 μs和10μs之间。由于采用同步时基,消息在通信周期中拥有固定位置,接收器已经提前知道,消息到达的时间,因此可以根据时间对各种特殊情况进行相应的处理。
③flexray总线提供消息冗余传输或非冗余传输两种选择,系统可以进行优化,以提高可用性或吞吐量,用户无需调整现有节点中的软件就可以扩展整个系统;同时,支持总线或星型拓扑结构。flexray总线提供了大量配置参数,可以支持对系统进行调整,如通信周期的持续时间、消息长度等,以满足不同应用场合的需求。
flexray总线的这些特性使其可以用于替代can总线,适合车载骨干网络、分布式控制系统以及安全系统等应用场合。目前已有多家公司生产flexray总线控制器。这里选用freescale公司的mfr4200总线控制器,介绍其内部结构以及和dsp的软硬件连接方法。
mfr4200总线控制器的内部功能框图如图1所示。从图中可以看出,mfr4200总线控制器主要由物理层接收/发送通道、主机hcsl2接口、mem控制器、电源管理模块以及时钟管理模块等多个部分组成。
物理层通道有两个独立的接收/发送通道,每个通道的速率均达到10 mbps。在工作状态下,主机可以访问mfr4200的接收通道fifo和发送消息缓冲区;通过对fifo和消息缓冲区的配置、控制和读写,实现对物理层数据的收发。接收fifo最大可以存储59个消息,总线上 的数据帧都将到达总线上所有的mfr4200。每一个mfr4200在收到总线数据帧后,都将经过接收滤波器;滤波器将不属于自己地址的数据帧滤除,只将属于自己的数据帧和广播帧存储到接收fifo中。
2 系统硬件结构
整个系统由omap5912、mfr4200、ad/da、人机接口以及flash组成,硬件连接如图2所示。图中,dsp是核心控制单元;ad用于将采集的模拟信号转变成数字信号,da将数字信号转换成模拟信号;人机接口包括lcd和键盘接口;flash保存dsp所需要的程序,供dsp上电调用。此外,将dsp的hpi接口连接到pc机,这样所有的总线数据均可以通过pc机存储和显示,pc机的数据也可以通过dsp发送到总线上。可以根据不同的需要选择pc机或者lcd和键盘。图中,emifs(external memoryinterface slow)是omap5912的慢速外部存储器接口。
ad负责采集电子设备的数据,可以是温度传感器数据、颜色传感器数据,也可以是语音信号、图像信号或者其他信号。dsp对这些数据处理后,将处理后的结果根据不同的情况通过mfr4200发送到总线上的其他节点;相反,dsp通过mfr4200读取总线上其他节点发送的数据帧,dsp对这些数据帧进行处理,将结果发送到da,可以实现对本节点电子设备状态的控制。
3 mfr4200和omap5912的硬件设计
mfr4200和omap5912的连接是系统硬件连接的关键,具体连接如图3所示。使用omap5912的emifs接口连接mfr4200。emifs可以方便地和外部flash、异步sram等设备连接。本系统的mfr4200控制器模块flexray总线协泌,其最高数据传输速率为10 mbps,omap5912的emifs接口适合满足其速度要求。
mfr4200和omap5912的emifs连接,mfr4200作为omap5912的外部16位从异步设备。由于omap5912的内部数据总线宽度为32位,而mfr4200的数据总线宽度为16位,因此,将每32位数据分成两个16位数据传输。当mfr4200有数据上传时,使用int_cc引脚发送中断信号到omap5912的外部中断引脚ext_int4,omap5912根据当前自身的工作情况来处理和mfr4200的通信。omap5912也可以使用通用i/o引脚控制mfr4200的复位信号,当连续多次未收到mfr4200的响应信号时,omap5912可以软件复位mfr4200,从而避免通信的互锁现象。此外,mfr4200的#if_sel0和#if_sell引脚上拉后直接连接到物理层。
4 mfr4200和omap5912的软件设计
mfr4200的初始化流程如图4所示。首先设置标准电压,可以是5 v和3.3v。由于本系统和omap5912连接,采用3.3 v标准电压。初始化设置数据和地址总线后,读取mfr4200的mnr(magic number register)寄存器。一旦mfr4200初始化成功,该寄存器内容为0x0815,之后,就可以设置mfr4200的其他寄存器,进行正常的总线数据读写。
omap5912和mfr4200的数据通信流程如图5所示。系统初始化后,omap5912判断当前是否有数据读写。数据的读是通过判断是否有挂起的硬件中断,该中断由mfr4200产生,一旦mfr4200收到总线数据帧,都将发出该中断;数据写是通过判断上层程序是否有数据发的软件中断。无数据读写情况下,omap5912将定期发送测试命令到mfr4200,以便确定mfr4200在正常工作。也可以根据需要,将mfr4200设置到低功耗状态,这样就不需要发送测试命令。如果读取的数据的校验错误较多.则表明无线通信当前的信道噪声很大,或者mfr4200的总线被干扰出现紊乱。0map5912将软件复位mfr4200模块,使得。mfr4200重新设嚣总线,避免在低信噪比情况下多次重复发送同样的数据,缩短无效通信时间。
由于omap5910具有c55系列dsp核,因此一些数字信号处理算法可以很容易地实现。对于语音信号,可以进行滤波以提高语音质量;对于图像信号,可以进行图像识别。在车载电子设备中,图像识别可以检测车前方的各种情况,以便进行相应的自动处理,使得系统更实用,应用范围更广。
5 总结
在基于omap5912和mfr4200的总线控制器连接设计中,使用omap5912的emifs接口连接总线控制器mfr4200,可实现flexray总线的数据收发。使用mfr4200模块实现总线协议,使系统结构简单,实现方便。由于采用具有dsp核的处理器,系统还可以方便地应用各种数据信号处理算法,尤其适合车载电子设备的语音和图像处理。

手机充电器电路的工作原理
嵌入式领域的智能计量技术
联发科:高通你等着奥!X30处理器性能爆发 携手魅族mx7双飞
应用案例 | 锂电池贴标机上检测标签到位
基于英伟达AI边缘计算终端FCU3001来了
嵌入式DSP上实现FlexRay总线的方法
利用下水道进行发电,power generator
用于定位的低功耗有源RFID标签设计方案
IBM最新存储技术研究成果惊人 1位的数据保存在一颗原子中
AMD跌入谷底:PC市场衰落 移动市场乏力
双循环下跨越速运物流供应链如何创新?
骨传导耳机品牌排行,最好用的骨传导耳机推荐
关于独石电容器的优点以及缺点分析
Voury卓华微间距黑珍珠系列LED显示屏助力信息化数字化气象事业的发展
DCA第七批大数据产品能力评测结果 浪潮云海Insight HD44项测试均获佳绩
延边政府和吉林银行与华为签署合作协议
FPGA的蜕变之旅——7nm的ACAP
【全球数字经济产业大会】工采网携传感器展品为数字经济产业赋能
AI视觉检测系统的功能及优势
基于数字信号处理器TMS320F2812实现混合型有源电力滤波器的改进设计