【技术实现步骤摘要】
本专利技术属于I2C总线设计领域,尤其涉及一种基于IP核复用的I2C总线的防死锁系统及其防死锁方法。
技术介绍
I2C总线是一种广泛应用于嵌入式系统设备中,实现主控制器与外设之间通信的双线串行总线。如图1示出了一种I2C总线的典型结构,包括串行数据线(Serial Data,SDA)和串行时钟线(Serial Clock Line,SCL)。每一连接到I2C总线上的I2C设备即可作为主设备,用以负责总线时钟、起始信号及相关初始化数据的产生,也可作为从设备,用以作为被寻址对象。公知地,I2C总线的数据传输可分为四个阶段,如图2所示,包括开始、数据读写、应答和停止,分别描述如下I)开始(start):串行时钟线为高电平时,串行数据线从高电平向低电平跳变;2)数据读写串行数据线上传输的数据在串行时钟线的高电平期间必须保持稳定,只有在串行时钟线的低电平期间才可以进行数据切换;3)应答(AK):当从设备每接收I个字节数据后,发出一个应答信号,表示数据传输成功与否;4)停止(stop):串行时钟线为高电平时,串行数据线从低电平向高电平跳变;依据上述四个阶段,在实际通信时,主 ...
【技术保护点】
一种I2C总线的防死锁系统,所述系统包括寄存器模块和主状态机模块,其特征在于,所述系统还包括:从状态机启动模块,用于在所述主状态机模块的控制下启动;采样模块,用于在所述从状态机启动模块的控制下启动,采集I2C总线的串行时钟线上时钟信号跳变沿的计数值信息,以及跳变沿之间的持续时长信息;异常监控处理模块,用于根据所述计数值信息和所述持续时长信息,并结合第一预设时长、第二预设时长和预设时长范围,判断所述串行时钟线是否出现异常;处理器模块,用于当所述异常监控处理模块判断所述串行时钟线出现异常时,通过所述寄存器模块中的控制寄存器,控制所述主状态机模块重置所述I2C总线。
【技术特征摘要】
1.一种I2C总线的防死锁系统,所述系统包括寄存器模块和主状态机模块,其特征在于,所述系统还包括 从状态机启动模块,用于在所述主状态机模块的控制下启动; 采样模块,用于在所述从状态机启动模块的控制下启动,采集I2C总线的串行时钟线上时钟信号跳变沿的计数值信息,以及跳变沿之间的持续时长信息; 异常监控处理模块,用于根据所述计数值信息和所述持续时长信息,并结合第一预设时长、第二预设时长和预设时长范围,判断所述串行时钟线是否出现异常; 处理器模块,用于当所述异常监控处理模块判断所述串行时钟线出现异常时,通过所述寄存器模块中的控制寄存器,控制所述主状态机模块重置所述I2C总线。2.如权利要求1所述的I2C总线的防死锁系统,其特征在于,所述异常监控处理模块包括 监测子模块,用于对所述计数值信息和所述持续时长信息进行处理,记录当前计数值和当前持续时长; 监测信息处理子模块,用于根据所述当前计数值和所述当前持续时长,并结合第一预设时长、第二预设时长和预设时长范围,判断所述串行时钟线是否出现异常。3.—种如权利要求1所述的I2C总线的防死锁系统的防死锁方法,其特征在于,所述方法包括 Al、主状态机模块根据寄存器模块中的控制寄存器,控制I2C总线工作,并控制从状态机启动t吴块启动; A2、所述从状态机启动模块启动后,控制采样模块启动; A3、所述采样模块采集串行时钟线上时钟信号跳变沿的计数值,以及跳变沿之间的持续时长; A4、异常监控处理模块根据所述计数值信息和持续时长信息,并结合第一预设时长、第二预设时长和预设时长范围,判断所述I2C总线是否出现异常; A5、当所述异常监控处理模块判断所述串...
【专利技术属性】
技术研发人员:姜朝来,
申请(专利权)人:四川迪佳通电子有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。