举例来说,安装在车内的摄像机可用于确定乘客在车内的位置,从而以最佳方式配置气囊并避免乘客受到伤害。安装在车内不同位置的摄像机还可以用于车道偏离监测、碰撞前警示、避免碰撞、后倒车灯警示和车距计算等。这些应用中有很多需要以非常高的速率来捕捉视频影像。相应地,视频影像必须通过实时的复杂算法进行处理,从而为车内的安全控制系统提供反馈。这是一项非常重要的任务,它可以避免发生碰撞,或在车辆发生碰撞的瞬间决定车内乘客的位置。而且,该项技术要要求司机侧的引擎绝热板必须能承受最高85℃的高温,而在车内的其他部位则需要承受最高达105℃的高温。
------
当前,汽车厂商们面临的挑战是拥有一种经济高效的技术:强大的处理能力、丰富的接口、良好的环境适应性和低功率运行。来自于飞思卡尔半导体公司的MPC5200高性能嵌入式处理器能满足所有这些设计要求,其结构如图1所示。
---MPC5200集成了一个高性能的MPC603e核心,该核心在400MHz的工作频率和-40~85℃的温度范围内,可达到760MIPS的处理能力。高性能、双倍精度的浮点单元(FPU)可加快与其他关键任务平行的复杂数学运算的速度,可运行在105℃条件下的型号还可用于司机座位以外可能需要更高温度级别的地方。
---在FPU的帮助下,MPC5200处理能力可为大多数视频探测算法提供足够的支持。集成的PCI接口则为CMOS图像传感器提供标准化的高速接口,CMOS图像传感器能以每秒80至100帧的速率将图像数据传输到MPC5200中,具体视PCI时钟和照片的分辨率而定。
---BestComm智能DMA控制器能加快摄像机数据传输到内存中进行处理的速度,从而最大程度地减轻MPC603e主处理器核心上的负荷,使其可以解放出来,处理视频探测算法等任务。此外,BestComm控制器的使用还可以降低主核心上的总体中断负荷,继而加速总体吞吐量。集成的CAN和J1850控制器,再加上外置MOST(面向媒体的系统传输)的支持,为汽车安全系统的剩余部分提供了经济高效的集成,并降低了与这些网络进行通信的延迟。
---下面介绍如何通过PCI接口,为MPC5200设计一个基本的高速摄像机接口电路。在本例中,使用了飞思卡尔MCM20014 CMOS传感器,但其他传感器可以使用几乎完全相同的接口机制。该接口非常明了,而且只需较少的接口逻辑就能完成连接。
使用MPC5200的时钟假设
---最可能的XLB释放目标频率为132MHz;IPBus为66MHz;PCIclk(外部总线时钟)为66MHz;XTAL的预期输入频率为33MHz。对于本应用,最大的PCI频率为33MHz。[page]
---XLB与IPBus、IPBus与PCIclk间的时钟比可能为4:1、2:1或1:1。在XLB为132MHz时,IPBus必须设置为4:1或2:1(分别适用于33MHz或66MHz的IPBus)。根据IPBus 的情况(33MHz、16.5MHz与33MHz IPBus一起工作;或33MHz与66MHz IPBus一起工作),PCIclk可能支持1:1的比率,也可能支持2:1的比率。在处理器端,可能使用一个66MHz的PCIclk ,但市场上的图像传感器还未达到该速度。
---如果要求50%的负载循环,生成HCLK的PWM输出值只能是IPBus时钟的偶整数商。
---下面介绍几种可能的时钟关系。
---XTAL:27MHz,XLB:108MHz,IPB:54MHz,PCI:27MHz,HCLK:13.5MHz(来自IPBus时钟的4/1比率的PWM)
---XTAL:33 MHz,XLB:132MHz,IPB:66MHz,PCI:33MHz,HCLK:8.25MHz(来自IPBus时钟的8/1比率的PWM)
---XTAL输入可以变化,以产生不同的运行频率,但是8.25 MHz的HCLK应该适用于摄像机,而且它还在DMA时钟和传感器数据速率(PCIclk到HCLK)之间提供4:1的差异。这对可能发生的潜在带宽问题有所帮助。
---解决方法是在传感器数据总线和PCI数据总线之间提供接口逻辑。MPC5200的接口逻辑非常简单,但还是有一些必须认真考虑的系统应用问题。其中一个值得注意的事项就是,是否将PCI总线用于摄像机数据传输以外的其他用途。如果需要与其他设备共享PCI总线,接口逻辑就必须与其他PCI目标共存,这就要求有额外的电路。如果不需要与其他任何设备共享PCI总线,接口逻辑就可以认为任何PCI处理都是针对它的,这样逻辑就变得非常简单。
---图2是MPC5200与接口芯片和CMOS传感器的连接图,显示了连接到必需的接口逻辑或直接连接到传感器的MPC520 PCI信号。图2中的粗线表示三态的情形。总线需要外部上拉电阻,这样在其输入值中,接口逻辑就会出现一个逻辑数字“1”。
---传感器在其帧有效时段中显示:传感器上有一帧正准备进行传输。该信号将通过IRQ线连接到MPC5200,帧传输需要由MPC5200 PCI控制器驱动,信号时序如图3所示,具体步骤如下。
● MPC5200 PCI使Frame_b输出低电平,以开始进行处理。AD线由MPC5200通过地址信息进行驱动。接口逻辑可以忽略这一阶段。
● MPC5200 PCI 使Irdy_b输出低电平,以启动数据阶段。AD线仍然由MPC5200推动,直到目标(接口逻辑)判断Devsel_b“要求”该处理。
● 只要目标保持Trdy_b处于高状态,MPC5200 PCI就能使AD总线处于三态之一(tri-state),并保持在等待状态。
● 在任何刚出现的PCIclk边缘,其中Trdy_b被探测为低,PCI就会捕捉到数据并认为要传输一个数据拍。
● 在完成了下一个到最后一个数据拍后,MPC5200 PCI使Frame_b输出低电平,这表示正在请求最后一个数据拍。
● 当目标传输完最后一个数据拍(以Trdy_b变低为标志)后,MPC5200 PCI使Irdy_b输出低电平,处理完毕。
● 还有其他一些信号与PCI处理有关,但它们用于PCI传输错误的情况中,在本应用中不作要求。
---如果HCLK与PCIclk的比率为2:1,则PCIclk与接口逻辑的连接就没有必要。如果PCIclk与HCLK的比率为4:1的话(人们更期望这样),需要一个触发器来延迟和缩短PCI信号Trdy_b的持续时间。
[page]
---当兼容3.3伏的CMOS摄像机传感器三态其数据总线时,传感器的数据线路就与PCI AD总线进行直接、有效的连接。否则,在这一设计中需要数据转发器。在对传感器的LineValid信号进行判断时,该传感器只应该驱动数据线路。图4是27MHz的PCIclk与13.5MHz(或相似频率)HCLK的2:1逻辑关系图。
---只有在没有其他真正的PCI目标设备连接到PCI接口上时,该示例接口才发挥作用。否则,某些支持的类型需要通知接口逻辑响应即将到来的PCI处理。
---33MHz的PCIclk和8.25MHz(或相似频率)的HCLK的2:1逻辑关系如图5所示。
● 在2:1的情况中,当HCLK低时,传感器数据有效,并随HCLK的再次出现而作为下一个数据拍,下一个出现的PCIclk边缘就会捕捉数据。
---PCI处理必须在LineValid判断之前进行。PCI处理在LineValid变高时,一直由Trdy_b保持等待状态。由于5200的使能信号要求拒绝几次循环,在PCI处理结束时可能还需要额外的电路来关闭此电路。在这一过程中,人们可能会要求进行非摄像机的PCI处理(该接口逻辑绝不能响应)。
● 由于HCLK源自MPC5200 PWM,HCLK处理发生在PCIclk边缘后(根据设计,PCIclk应提前到达总线)。
● 当HCLK下降时,Trdy_b的判断要延迟一个PCIclk。
● 当HCLK升高时,Trdy_b也立刻升高。
● 在PCIclk边缘创建了PCI数据拍捕捉,然后,PCIclk边缘再创建不断上升的HCLK,因为像素在不断增加。
---控制传感器数据读取的BestComm任务非常灵活,能根据传感器的大小进行调节。在基于飞思卡尔CMOS传感器的本例中,传感器的分辨率为640×480像素,每像素10bit。在每一行后面,脉冲停止,BestComm任务会自动开始下一行的读取,直到完成整幅图片。这种方法具有很高的帧速率,每行的开销为15个时钟。
---传输640像素数据的开销为640个时钟,加上一行的开销15个时钟,则传输一行像素的总开销为655个时钟。每帧画面有480行,则所需的时钟为655×480=314400。如果采用33MHz的PCI时钟,则传输每帧画面需要9.52ms,即每秒可传输105帧。从这里可以看出,帧速率取决于时钟和传感器的分辨率。
---为完成一幅完整的图片而读取的脉冲的长度和行数,就是BestComm的参数,这些参数可以根据每种传感器的类型进行调整。采用接口实现的帧吞吐量比该应用的帧速率要高得多。限制因素是用于算法所需的计算能力,该算法与应用的关系非常紧密。
上一篇:ARM嵌入式汽车节能控制系统的设计
下一篇:STM32F103的汽车远程防盗系统设计
推荐阅读最新更新时间:2024-03-16 13:14