【技术实现步骤摘要】
本专利技术实施例涉及通信
,尤其涉及一种光模块I2C总线乱时序诊断方法及装置。
技术介绍
常见的I2C(Inter-Integrated Circuit,I2C总线)总线通讯架构中,I2C总线在硬件上独立共享总线,通常由一个I2C master设备与多个I2C slave设备分享同一I2C总线,根据协议,不允许两个进程同时占用I2C总线,因此容易出现不同进程之间的资源抢占问题。当一个I2C master设备与I2C slave设备进行较大的数据通讯时,常用的I2C总线通讯读写模式有连续读模式(图1a),连续写模式(图1b)和连续随机地址读模式(图1c)。因为I2C写通讯时大部分时序控制权在I2C master设备端,如果出现不同进程的程序协调不当或同一进程调度不当,就会现异常的读写。以一个I2C Master与一个I2C slave设备的写通讯为例,由于多进程之间相关干扰、共享设备I2C总线不同进程的程序争夺,会产生乱时序,乱时序很导致一个完整的时序不再完整,这时候会出现异常的读写。例如,当在连续读Sequential I2C Read序列的“Start” ...
【技术保护点】
一种光模块I2C总线乱时序诊断方法,其特征在于,包括:光模块通过I2C总线接收终端发送的开始时钟信号;所述开始时钟信号用于指示所述光模块在用户可操作区写入数据;所述光模块根据所述开始时钟信号,检测在非用户可操作区是否存在I2C总线写操作;若存在,设置标识符,用以标记在所述非用户可操作区存在的I2C总线写操作,并将在非用户可操作区写入的数据存储在指定存储区域。
【技术特征摘要】
1.一种光模块I2C总线乱时序诊断方法,其特征在于,包括:光模块通过I2C总线接收终端发送的开始时钟信号;所述开始时钟信号用于指示所述光模块在用户可操作区写入数据;所述光模块根据所述开始时钟信号,检测在非用户可操作区是否存在I2C总线写操作;若存在,设置标识符,用以标记在所述非用户可操作区存在的I2C总线写操作,并将在非用户可操作区写入的数据存储在指定存储区域。2.如权利要求1所述的方法,其特征在于,所述标识符为Flag,所述Flag的取值用以标记在非用户可操作区存在的I2C总线写操作的累计次数;所述设置标识符,包括:将标识符Flag的取值自增;在所述设置标识符之后,所述方法还包括:在所述光模块接收到所述终端发送的在所述用户可操作区写入数据的结束时钟信号时,根据所述结束时钟信号,将所述Flag自增后的取值写入到第一偏移地址对应的存储位置。3.如权利要求1或2所述的方法,其特征在于,将在非用户可操作区写入的数据存储在指定存储区域,包括:将所述在非用户可操作区写入的数据作为I2C总线乱时序数据存储在内存中;在所述光模块接收到所述终端发送的在用户可操作区写入数据的结束时钟信号时,根据所述结束时钟信号,将所述内存中存储的所述I2C总线乱时序数据转存在闪存中。4.如权利要求3所述的方法,其特征在于,所述方法还包括:所述光模块接收所述终端发送的第一显示指令,所述第一显示指令是所述终端在确定所述光模块的非用户可操作区存在I2C总线数据的写操作时发送的;所述光模块根据所述第一显示指令,将所述闪存中存储的所述I2C总线乱时序数据写入到第二偏移地址对应的第一存储位置,并显示所述第一存储位置写入的所述I2C总线乱时序数据。5.如权利要求4所述的方法,其特征在于,在设置所述标识符之后,所述方法还包括:向所述终端发送通知消息,通知所述终端读取所述光模块的所述第一偏移地址对应的存储位置的数据;其中,若所述终端读取所述第一偏移地址对应的存储位置的数据为非0,则所述终端确定所述光模块的非用户可操作区存在I2C总线写操作。6.一种光模块I...
【专利技术属性】
技术研发人员:李刚,王文希,王魁,
申请(专利权)人:青岛海信宽带多媒体技术有限公司,
类型:发明
国别省市:山东;37
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。