微波EDA网,见证研发工程师的成长!
首页 > 通信和网络 > 通信网络技术文库 > 面向嵌入式系统的I2C总线设计和测试

面向嵌入式系统的I2C总线设计和测试

时间:09-17 来源:互联网 点击:
3.1 I2C主控器

I2C主控器通常是一种用于系统中的许多其他功能的控制装置,并具有针对增加要求或做出变更的最低灵活性,主控器负责控制接口。在定义阶段,主控器和从动器均具有输入,但是,当需要做出详细决定时,主控器可以强制一个接口决定,因为采用一种方法对主控器来说比较简单。使主控器的决策变得较为简单将给从动器带来额外的好处。主控器将(而且应该)阻碍对接口的变更,所以从动器设计师必须及早实施自己的设计并接受接口的变更。

另外,虽然对接口的变更只应由主控器来执行(或在主控器同意的情况下进行),但是,测试所产生的影响(尤其是对专为测试而构筑的“环境”的影响)也是必须考虑的。设计之初专注于接口,获得主控器、从动器和测试小组的同意,了解测试影响以及特定接口决定带来的好处,然后不要做任何变更。让新的功能逐步融入到从动器可实现方案的细节(而不是接口)。

设计一个代理从动器来支持主控器测试,如果这可以通过开发从动器来实现,效果更好。该代理从动器可能与末级从动器并不相似,因为它的主要作用是支持接口测试和校验;对于从动器来说,这意味着代理/测试从动器中将拥有额外的、非生产性功能。额外功能可能仅用于测试目的的附加寄存器和/或用于指示功能或确认命令的特殊I/O动作。把这些功能置于具有条件编辑能力的末级从动器中或许有助于在日后发生变更的情况下支持回归测试。

最后,应提早并经常性地集成主控器和实际从动器(在一个规定的开发级上),以了解不可避免的“未规定”特性。实际设备在实际I2C上彼此相遇得越早,就能越早地了解并适应其特性。

3.2 I2C从动器

设计活动的中心是从动器,而且它将耗费设计师大部分的精力(除非能够重复使用另一个项目的从动器设计)。测试工作的重点也放在从动器上,而且,从动器需要按照主控器及其测试的要求来实现。从动器很可能需要针对集成期间所了解到的信息做适应性调整,于是,这种情况出现得越早、测试的“真实性”越强,效果就越好。使主控器小组确认:集成点越多越好;它将对项目的实施提供帮助,并直接令从动器开发受益。

对大多数测试而言,一个I2C主控器测试设备(而不是实际主控器)将负责控制从动器。获得从动器完整测试覆盖率所需的灵活性将不太可能存在于实际主控器中,而在大部分时间里实际主控器将担负其他任务(配置其他器件、定时要求、以最终用户为中心的接口)。采用I2C的好处是主控器测试设备并不复杂,而且可行性好。设计小组的每一位成员都需要一个测试主控器,但它们不必是昂贵或精细复杂的主控器。

对于I2C测试主控器,根据应用场合的不同,共有三种获得途径:

1)购买一款商用I2C主控器:这些主控器通常附随一些测试软件,售价从100美元到500美元以上不等。如果选择了一款,则应确定它支持脚本编程和记录,因为在某些点上正式测试对此有所需求。

2)采用一种免费软件应用程序和自行安装硬件:许多此类产品都可以通过互联网搜索的方法找到。虽然这会使工作量略有增加,但成本较低。而且,由于用于PC的参考应用程序是开放式源代码,因此可对其进行修改以满足要求。

3)采用一个微控制器(或主控器MCU)设计主控器:明显的好处是目前的测试主控器在特性上更加接近于实际主控器,而且已经获得了用于对其进行更新和扩展的专业知识。可以把回归测试设计在测试主控器中,而不是依靠PC应用程序来完成。

4 结论

I2C总线通信是许多嵌入式设计的普遍现象。每种嵌入式设计都能够从把部分功能交由从动器来完成的做法当中获益,这既是出于效率的考虑,也是为了让许多项目能够重复使用经过精确测试的功能部件。如能遵循以下拟订的设计和测试策略,则定制从动器项目应能够比较顺利地继续下去:在从动器和主控器之间进行功能划分、采用功能强大的不变接口、独立地对主控器和从动器进行尽可能多的测试、在设计过程中对主控器和从动器进行早期和经常性的集成。 采用微控制器实现的定制I2C从动器设备令设计师能够重复使用一系列产品设计重复部分的即插即用功能。如果遵照用于设计和测试的规则和指导方针,则能够成功地在产品中充分利用I2C,并把更多的时间集中在市场期待的下一个出色功能上,并满足设计进度要求。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top