I2C总线中主器件复位的实现方法、复位装置及其设备制造方法及图纸

技术编号:2855335 阅读:246 留言:0更新日期:2012-04-11 18:40
本发明专利技术公开了一种I2C总线中主器件复位的实现方法、复位装置和相应通讯设备,该方法包括步骤:实时检测I2C总线状态,收到外界对所述主器件的复位信号时,判断当前I2C总线状态,如果空闲,立刻对主器件复位,如果I2C总线上有I2C总线操作周期,则在该操作周期结束后再对主器件复位。所述复位装置独立于主器件,包括监控部分,用于监控I2C总线状态;以及复位控制部分,用于接收外界对主器件的复位信号,在收到该复位信号时且I2C总线处于空闲状态时,向所述主器件发出复位信号。所述通讯设备包括通过I2C总线相连的主器件、从器件及上述复位装置。本发明专利技术可以避免主器件复位时I2C总线被锁定,且对主器件和从器件没有特殊的设计要求。

【技术实现步骤摘要】

本专利技术涉及通讯设备中使用I2C总线的情况,尤其是当I2C总线结构中实现主器件复位的方法和装置。
技术介绍
I2C总线(Inter-IC BUS或IIC BUS,集成电路间互连总线)是一种由飞利浦(PHILIPS)公司开发的一套串行总线,用于连接微控制器及其外围设备。I2C总线有两根信号线一根时钟线SCL,一根双向数据线SDA。所有接到I2C总线上的器件的时钟线SCL均接到总线的SCL,其数据线SDA都连接到总线的双向数据线SDA线。总线使用软件寻址来识别每个器件(如微控制器、存储器、LCD驱动器、时钟芯片和其他I2C总线器件),完全省去了每个器件的片选线,因而使系统的接线非常简单。目前I2C已经成为重要的全球业界标准,被所有主要的IC厂商所认同和使用。在计算机网络通讯设备中,具有I2C总线接口的器件应用也越来越多。在I2C总线中,当某个器件生成总线上的时钟信号SCK并发起数据传输时,被称为是发送器(也叫主器件),某个器件从总线上接收控制信息时,被称为接收器(也叫从器件)。主器件用于启动总线,产生时钟并传送数据,此时任何被寻址的器件均被认为是从器件。I2C总线工作时,由总线上的主器件控制时钟线SCL提供时钟同步信号脉冲,由双向数据线SDA完成数据传送。I2C总线的数据传送速率,在标准工作方式下为100kbit/s,在快速方式下,最高传送速率可达400kbit/s。I2C总线技术规范中,总线协议有着严格的时序要求。I2C总线的数据传送格式是在I2C总线开始信号后,送出的第一个字节数据是用来选择从器件的地址和指示读写操作,其中前7bit为地址码,第8bit为读写标志位(R/W)。标志位为“0”表示是主器件的“写”操作,即主器件把信息写入到所选址的从器件;标志位为“1”表示主器件的“读”操作。开始信号后,系统中的各个器件将自己的地址和主器件送到总线上的地址进行比较,如果与主器件发送到总线上的地址一致,则该器件即为被主器件寻址的器件,其接收信息还是发送信息则由第8bit标志(R/W)确定。I2C总线上每次传输的数据字节数不受限制,但每一个字节必须为8位,而且每个传送的字节后面(第9位),从器件必须跟一个认可位,也叫应答位(ACK,Acknowledge bit)I2C总线技术规范中,对开始和结束信号(也称起始和停止信号)以及应答信号的定义如下起始信号(S)在时钟线SCL保持高电平期间,双向数据线SDA上出现由高电平向低电平的变化,用于启动I2C总线,为I2C总线的起始信号;停止信号(P)在时钟线SCL保持高电平期间,双向数据线SDA上出现由低电平向高电平的变化,用于停止I2C总线,为I2C总线的终止信号;应答信号(A)在I2C总线传输过程中每一个字节的第9个SCL脉冲对应着应答位,若双向数据线SDA上显示低电平则为总线“应答(A)”,若双向数据线SDA上显示高电平则为总线“非应答(/A)”。只有主器件才能对I2C总线实现管理与检测,开始和结束信号一般都是由主器件产生。I2C总线数据传输时,在时钟线SCL为高电平期间,数据线SDA上必须保持有稳定的逻辑电平状态,高电平表示数据1,低电平表示数据0。只有在时钟线SCL为低电平时,才允许数据线SDA上的电平状态发生变化。I2C总线的工作速度一般是取决于主器件和从器件的性能,参考I2C的总线规范,时钟线SCL的工作频率可以工作在0Hz到100kHz之间。I2C总线本身不会锁定,但如果总线上存在干扰或者SDA或SCL被某些特定的因素拉成低电平,I2C总线就产生锁定,这些情况通常是由于外部干扰以及从器件的失效和故障造成。若SDA线被总线上的一个器件拉成低电平,主器件就不能产生起始、停止信号,进行下一步的传送,此时主器件一般会检测到I2C总线出现锁定,无法实现下一步的数据传输。因此必须通过一定的手段来避免出现此种情况下造成I2C总线的故障。在计算机通讯设备内,I2C总线上的主器件一般是CPU,从器件是连接在I2C总线上的其它器件,比如存储器、传感器、实时时钟等。如果在印制电路板设计时经过仔细的布局布线,一般可以避免因总线上出现干扰造成总线的锁定。但是,还有一种可能出现但比较隐蔽的情况,也会造成I2C总线的锁定,且必须要通过其它手段来解决。譬如,在主器件(CPU)在对I2C从器件的读操作期间,如果CPU突然被复位(RESET),而此时I2C总线上的一个读操作周期却还没有结束,I2C从器件一般有没有复位输入管脚,也无法知道主器件被复位的情况,从器件只是看到总线的SCL停止变化,但I2C总线允许时钟线SCL停止,因此从器件也不会认为I2C总线的主器件出现故障。在CPU复位过程中及复位后,SCL往往被上拉到高电平,保持稳定,按照I2C总线的规范,SDA数据线上的数据在时钟线SCL高电平期间必须是稳定的,如果从器件此时在SDA上输出的bit正巧为“低”,因此,从器件将始终驱动SDA线为低电平,使主器件无法产生任何起始、停止信号,从而由从器件锁定SDA线,造成I2C总线的锁定。这种情况出现后,如果主器件能够单独控制SCK,可以通过发送几个SCK脉冲,使从器件完成I2C总线上的读操作周期,从而避免I2C总线的锁定,但是,有许多CPU(主器件),其内部集成的I2C寄存器一般不提供直接对SCK的控制,因此,无法采用输出SCK脉冲的办法来解决。I2C总线如果被上述的原因锁定后,一般无法仅仅通过复位(RESET)主器件来解决,若没有其它合适可靠的解决办法,必须要重新上电才能解决。对于I2C总线被锁定后的解决方法,现有技术中的一些器件提供了各自的解决途径。FreeScale公司(美国一家芯片公司)PowerPC处理器中的MPC8541、MPC8560系列CPU,其内部集成了I2C总线控制寄存器,在发现I2C总线被锁定后,可以通过读写一系列的I2C总线控制寄存器来使I2C总线退出锁定状态。MAXIM公司(美国一家芯片公司)的MAX7500系列I2C从器件,其内部集成了超时功能,提供I2C总线的锁定保护。如果在250ms内时钟线SCL没有发生变化,从器件将自动结束本次的I2C操作,回到初始状态,从而避免了从器件对I2C总线的锁定;但是,在计算机通讯设备内I2C总线上连接的器件往往比较多,I2C主器件(一般是CPU)不一定具有解决I2C总线锁定状态的控制寄存器,同时,目前I2C总线上所有的从器件也不可能全部具备自动退出锁定状态的功能,因此,还需要提供一种适用性更好的装置来解决I2C总线可能被锁定的问题。
技术实现思路
本专利技术要解决的技术问题是提供一种I2C总线中主器件复位的实现方法,可以避免主器件复位时I2C总线被锁定,且对主器件和从器件没有特殊的设计要求。本专利技术还要提供一种可实现该方法的通讯设备,以及用于实现该方法的复位装置。为了解决上述技术问题,本专利技术提供了一种I2C总线中主器件复位的实现方法,包括以下步骤实时检测I2C总线状态,在接收到外界对所述主器件的复位信号时,先判断当前时刻I2C总线的状态,如果I2C总线空闲,立刻对主器件进行复位,如果I2C总线上正在有I2C总线操作周期,则在该操作周期结束后,再对所述主器件进行复位。进一步地,上述实现方法还可具有以下特点该方法是通过独立于主器件本文档来自技高网
...

【技术保护点】
一种I2C总线中主器件复位的实现方法,包括以下步骤:实时检测I2C总线状态,在接收到外界对所述主器件的复位信号时,先判断当前时刻I2C总线的状态,如果I2C总线空闲,立刻对主器件进行复位,如果I2C总线上正在有I2C总线操作周期,则在该操作周期结束后,再对所述主器件进行复位。

【技术特征摘要】
1.一种I2C总线中主器件复位的实现方法,包括以下步骤实时检测I2C总线状态,在接收到外界对所述主器件的复位信号时,先判断当前时刻I2C总线的状态,如果I2C总线空闲,立刻对主器件进行复位,如果I2C总线上正在有I2C总线操作周期,则在该操作周期结束后,再对所述主器件进行复位。2.如权利要求1所述的实现方法,其特征在于,该方法是通过独立于主器件的一个复位装置来检测I2C总线的状态,接收外界对所述主器件的复位信号,并完成状态判断和对主器件的复位操作。3.一种I2C总线中主器件的复位装置,其特征在于,包括I2C总线监控部分和复位控制部分,其中所述I2C总线监控部分与I2C总线相连,用于监控I2C总线的状态,并向复位控制部分提供当前I2C总线的状态指示;所述复位控制部分用于接收外界对所述主器件的复位信号,从所述监控部分获知I2C总线的当前状态,在收到该复位信号时且I2C总线处于“空闲”状态时,向所述主器件发出复位信号。4.如权利要求3所述的复位装置,其特征在于,所述I2C总线监控部分实时监控I2C总线上是否有操作周期,如果有,提供I2C总线“忙”的状态指示,否则,提供I2C总线“空闲”的状态指示。5.如权利要求3所述的复位装置,其特征在于,该复位装置由可编程逻辑器件...

【专利技术属性】
技术研发人员:于克泳董强邵国刘嵘
申请(专利权)人:中兴通讯股份有限公司
类型:发明
国别省市:94[中国|深圳]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1