- 易迪拓培训,专注于微波、射频、天线设计工程师的培养
如何优化DBDM手机处理器之间的通信
当前解决方案及它们的缺点
当前的手机架构使用着多种处理器间通信方式。目前流行的接口有SPI、I2C、UART和USB。
虽然SPI可能达到20Mbps以上的数据速率,但SPI没有统一的规范,完全依赖于所使用的处理器。基带处理器的典型SPI速度约为16Mbps。由于不同的基带制造商都是生产自己专用的产品,因此不同基带处理器具有不同的SPI接口,使得设计师很难成功对接两个不同的基带处理器,并获得最佳的SPI速度。
另一方面,虽然最新的I2C规范要求高速模式下达到3.4Mbps的吞吐量,但目前的大多数器件只能支持400kbps到1Mbps的数据速率,这样的速度对目前的电信需求来说显然太慢了。
手机中使用的第三种互连是UART。UART的典型数据速率约1.5Mbps,高速UART可达5Mbps。但这样的数据速率对高宽带的处理器间通信来说也是不够的。
最流行的互连方法之一是通过USB。大多数处理器都具有全速USB功能,全速USB的数据速率最高可达12Mbps。在实际应用中,由于USB协议中必要的包开销较多,因此最高数据速率接近6Mbps。而且大多数基带处理器并没有配备USB解决方案中必需的USB host功能。这样还必须内建另外的USB host。除了不足以达到目前的HSPA数据速率外,还会增加功耗,因为即使在没有数据传输USB host也会一直工作。基带处理器上可用的USB端口数量通常也非常有限,因为手机实际上也用USB方式连接PC机。
以前由于只在慢速网络上传输文本消息和简单的数据,上述互连方法可能足够用了。但随着HSPA功能手机的数据传输速率高达14.4Mbps以上,上述目接口都无法有效地支持必要的吞吐量,并使手机处于最佳工作状态。
那么设计师应如何满足手机中不断增长的数据吞吐量要求呢?
替代性解决方案及其优势
解决处理器间连接问题的潜在方案之一是使用多端口互连,这也是目前许多DBDM架构使用的方法。在这种架构中,缓存式多端口器件作为两个CPU之间的互连桥梁,可以在两者间实现高速数据传输,并有助于在处理器间通信(IPC)时降低功耗。
速度
使用多端口互连的最明显好处是速度。由于存取时间快至40ns,双端口存储器最高可支持400Mbps。这不仅为HSPA功能手机提供了足够的支持,而且为未来吞吐量需求的持续增长(如LTE)奠定了基础。随着手机复杂性的提高,处理器间传输的数据量增加是不可避免的。通过多端口互连,手机设计师将不再面对处理器间通信的瓶颈问题。
功耗
除了高速外,低功耗是DBDM手机的另一个关键要求。如果在IPC过程中要求两个基带处理器一直保持工作(比如在SPI、UART、I2C或USB互连情况下),电池寿命将大打折扣。除此之外,处理器之间的主动通信需要耗用每个处理器的专门资源,因此会降低它们的性能。
多端口解决方案可以实现处理器之间的被动通信。一个处理器可以在需要时写入到多端口互连,然后进入睡眠模式。另外一个基带处理器则可以根据自身情况随时访问这些数据。由于多端口互连起着缓存的作用,接收处理器可以一直处于睡眠模式,直到从多端口互连收到中断指令才激活。
让我们通过具体例子比较一下多端口IPC解决方案和基于全速USB的IPC方案。有效吞吐量为6Mbps的全速USB方案需要花80秒的时间传输60MB数据或10首MP3歌曲。而使用多端口互连方案以100Mbps的速度(假定为有效吞吐量)传输同样大小的数据只需要5秒。
带1.2V内核的典型基带处理器正常功耗是120mW,睡眠模式时为0.24mW。如果两个处理器在80秒传输时间内都处于工作状态,USB方案将消耗5.33mWH的电流。在多端口方案中,数据传输期间只有一个处理器工作,因此多端口互连耦合(27mW)和处理器一起消耗的总电池能量仅为0.743mWH,相当于在单个IPC场合节省了约85%的功率,这在越来越多的人通过手机下载音乐、照片、收发电子邮件和浏览互联网的今天具有极大的价值。