一种IIC总线从控制器及其工作方法技术

技术编号:32002151 阅读:11 留言:0更新日期:2022-01-22 18:17
本发明专利技术公开一种IIC总线从控制器及其工作方法,该控制器包括:具有多种状态的状态机,且配置有数据协议;IIC总线从控制器,用于周期性的查询其所在从设备中的IP核,获取IP核的状态信息和用于对操作码赋值的数据信息,并依据状态信息和数据信息对状态机进行状态切换;还用于根据状态机的当前状态输出以下内容中的至少一项:地址信息、数据信息、读使能信息、写使能信息;还用于根据多个状态下输出的多个信息对IIC从设备中资源进行按址访问。本发明专利技术的技术方案解决了现有IIC总线的通讯方式,对于IIC总线中交联设备的种类和数量较多的情况,主、从设备控制器的复杂度和耦合度较高的问题。从设备控制器的复杂度和耦合度较高的问题。从设备控制器的复杂度和耦合度较高的问题。

【技术实现步骤摘要】
一种IIC总线从控制器及其工作方法


[0001]本专利技术涉及但不限于数字电路
,尤其涉及一种IIC总线从控制器及其工作方法。

技术介绍

[0002]IIC总线是一种常用的标准总线接口,具有结构简单、灵活性高等特点。可编程逻辑器件搭载用于解析IIC总线信号的IP核的方式越来越多的应用于工业领域,进一步提高了IIC总线的适用性,扩展了IIC总线的应用场景。
[0003]目前,比较典型的IIC通讯方式是定义主、从设备间的数据ICD,通过“组包”和“解包”实现数据交互,在通过IIC总线交联的设备数量较少的情况下,这种方式简单、高效。然而,随着交联设备的种类和数量的增加,数据“组包”和“解包”导致主、从设备的控制器的复杂度和耦合度越来越高,已经不能满足要求。

技术实现思路

[0004]本专利技术的目的为:为了解决
技术介绍
中的问题,本专利技术实施例提出一种IIC总线从控制器及其工作方法,以解决现有IIC总线的通讯方式,对于IIC总线中交联设备的种类和数量较多的情况,主、从设备控制器的复杂度和耦合度较高的问题。
[0005]本专利技术的技术方案为:本专利技术实施例提出一种IIC总线从控制器,IIC总线连接至少一个IIC主设备和多个IIC从设备,每个IIC从设备中配置有IIC总线从控制器和用于解析IIC总线信号的IP核,且所述IP核与所述IIC总线从控制器相连接;所述IIC总线从控制器包括:具有多种状态的状态机,且配置有数据协议;
[0006]其中,所述IIC总线从控制器,用于周期性的查询其所在IIC从设备中的IP核,获取IP核的状态信息和用于对操作码赋值的数据信息,并依据所获取的状态信息和所述数据信息对状态机进行状态切换;
[0007]所述IIC总线从控制器,还用于根据状态机的当前状态输出以下内容中的至少一项:地址信息、数据信息、读使能信息、写使能信息;
[0008]所述IIC总线从控制器,还用于根据多个状态下输出的多个信息对IIC从设备中资源进行按址访问。
[0009]可选地,如上所述的IIC总线从控制器中,
[0010]所述数据协议中包括:操作码、地址码、数据码1和数据码2,且每个码的位宽均为8比特;
[0011]其中,所述操作码用于区分IIC主设备发起的IIC总线操作为读操作或写操作,且读操作码和写操作码的汉明距离大于预设阈值。
[0012]可选地,如上所述的IIC总线从控制器中,
[0013]所述状态机的状态包括:初始化态、空闲态、接收1状态、接收2状态、接收3状态、发送1状态、发送2状态和发送3状态。
[0014]可选地,如上所述的IIC总线从控制器中,
[0015]所述IIC总线从控制器控制状态机每完成一次空闲态、发送1状态、发送2状态、发送3状态,最后返回到空闲态的切换过程,则IIC主设备完成一次对IIC从设备的按地址读操作访问;
[0016]所述IIC总线从控制器控制状态机每完成一次空闲态、接收1状态、接收2状态、接收3状态,最后返回到空闲态的切换过程,则IIC主设备完成一次对IIC从设备的按地址写操作访问。
[0017]可选地,如上所述的IIC总线从控制器中,
[0018]所述IIC总线从控制器查询IP核的周期为:依据IIC总线通讯速率所确定的。
[0019]可选地,如上所述的IIC总线从控制器中,
[0020]所述IIC总线从控制器,还用于在IIC从设备复位后,控制状态机进入初始化状态,完成对该IIC从设备中IP核的初始化工作后,并控制状态机进入空闲态。
[0021]可选地,如上所述的IIC总线从控制器中,所述IIC总线从控制器用于对状态机进行状态切换,其中,所述IIC主设备完成一次对IIC从设备的按地址读操作访问过程中的状态切换方式,包括:
[0022]1),空闲态:IIC总线从控制器周期性地获取其所在IIC从设备中IP核的状态信息;如果IP核的状态信息显示为该IP核的接收缓冲中无数据,则继续停留在该空闲态;如果状态信息显示为接收缓冲中有数据信息,则IIC总线从控制器将数据信息从IP核中读出,赋值给操作码,并进行判断:(1)如果操作码等于读操作码,则跳转至发送1状态;(2)如果操作码等于写操作码,则跳转至接收1状态;
[0023]2),发送1状态:IIC总线从控制器周期性地获取其所在IIC从设备中IP核的状态信息;如果状态信息显示为接收缓冲中无数据信息,则继续停留在该发送1状态;如果状态信息显示为接收缓冲中有数据信息,则IIC总线从控制器将数据信息从IP核中读出,赋值给地址码,并产生读使能信息,在该IIC从设备中按地址码所指示的资源读取16比特数据,并跳转至发送2状态;
[0024]3),发送2状态:IIC总线从控制器周期性地获取其所在IIC从设备中IP核的状态信息;如果状态信息显示为IIC主设备没有发起读操作,则继续停留在该发送2状态;如果状态信息显示为IIC主设备正在发起一次读操作,则将发送1状态中按地址码读取的16比特数据的高8位写入发送缓冲中;
[0025]IIC总线从控制器周期性地获取其所在IIC从设备中IP核的状态信息;如果状态信息显示为本次读操作未结束,则继续停留在该发送状态2;如果状态信息显示为本次读操作结束,则跳转至发送3状态;
[0026]4),发送3状态:IIC总线从控制器周期性地获取其所在IIC从设备中IP核的状态信息;如果状态信息显示为IIC主设备没有发起读操作,则继续停留在该发送3状态;如果状态信息显示为IIC主设备正在发起一次读操作,则将发送1状态中按地址码读取的16比特数据的低8位写入发送缓冲中;
[0027]IIC总线从控制器周期性地获取其所在IIC从设备中IP核的状态信息;如果状态信息显示为本次读操作未结束,则继续停留在该发送状态3;如果状态信息显示为本次读操作结束,则跳转至空闲态。
[0028]可选地,如上所述的IIC总线从控制器中,所述IIC总线从控制器用于对状态机进行状态切换,其中,所述IIC主设备完成一次对IIC从设备的按地址写操作访问过程中的状态切换方式,包括:
[0029]1),空闲态:IIC总线从控制器周期性地获取其所在IIC从设备中IP核的状态信息;如果IP核的状态信息显示为该IP核的接收缓冲中无数据,则继续停留在该空闲态;如果状态信息显示为接收缓冲中有数据信息,则IIC总线从控制器将数据信息从IP核中读出,赋值给操作码,并进行判断:(1)如果操作码等于读操作码,则跳转至发送1状态;(2)如果操作码等于写操作码,则跳转至接收1状态;
[0030]2),接收1状态:IIC总线从控制器周期性地获取其所在IIC从设备中P核的状态信息;如果状态信息显示为接收缓冲中无数据信息,则继续停留在该接收1状态;如果状态信息显示为接收缓冲中有数据信息,则IIC总线从控制器将数据信息从IP核中读出,赋值给地址码,并跳转至接收2状态;
[0031]3)接收2状态:IIC总线从控制器周期性地本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种IIC总线从控制器,其特征在于,IIC总线连接至少一个IIC主设备和多个IIC从设备,每个IIC从设备中配置有IIC总线从控制器和用于解析IIC总线信号的IP核,且所述IP核与所述IIC总线从控制器相连接;所述IIC总线从控制器包括:具有多种状态的状态机,且配置有数据协议;其中,所述IIC总线从控制器,用于周期性的查询其所在IIC从设备中的IP核,获取IP核的状态信息和用于对操作码赋值的数据信息,并依据所获取的状态信息和所述数据信息对状态机进行状态切换;所述IIC总线从控制器,还用于根据状态机的当前状态输出以下内容中的至少一项:地址信息、数据信息、读使能信息、写使能信息;所述IIC总线从控制器,还用于根据多个状态下输出的多个信息对IIC从设备中资源进行按址访问。2.根据权利要求1所述的IIC总线从控制器,其特征在于,所述数据协议中包括:操作码、地址码、数据码1和数据码2,且每个码的位宽均为8比特;其中,所述操作码用于区分IIC主设备发起的IIC总线操作为读操作或写操作,且读操作码和写操作码的汉明距离大于预设阈值。3.根据权利要求2所述的IIC总线从控制器,其特征在于,所述状态机的状态包括:初始化态、空闲态、接收1状态、接收2状态、接收3状态、发送1状态、发送2状态和发送3状态;所述IIC总线从控制器控制状态机每完成一次空闲态、发送1状态、发送2状态、发送3状态,最后返回到空闲态的切换过程,则IIC主设备完成一次对IIC从设备的按地址读操作访问;所述IIC总线从控制器控制状态机每完成一次空闲态、接收1状态、接收2状态、接收3状态,最后返回到空闲态的切换过程,则IIC主设备完成一次对IIC从设备的按地址写操作访问。4.根据权利要求1~3中任一项所述的IIC总线从控制器,其特征在于,所述IIC总线从控制器查询IP核的周期为:依据IIC总线通讯速率所确定的。5.根据权利要求1~3中任一项所述的IIC总线从控制器,其特征在于,所述IIC总线从控制器,还用于在IIC从设备复位后,控制状态机进入初始化状态,完成对该IIC从设备中IP核的初始化工作后,并控制状态机进入空闲态。6.根据权利要求5所述的IIC总线从控制器,其特征在于,所述IIC总线从控制器用于对状态机进行状态切换,其中,所述IIC主设备完成一次对IIC从设备的按地址读操作访问过程中的状态切换方式,包括:1),空闲态:IIC总线从控制器周期性地获取其所在IIC从设备中IP核的状态信息;如果IP核的状态信息显示为该IP核的接收缓冲中无数据,则继续停留在该空闲态;如果状态信息显示为接收缓冲中有数据信息,则IIC总线从控制器将数据信息从IP核中读出,赋值给操作码,并进行判断:(1)如果操作码等于读操作码,则跳转至发送1状态;(2)如果操作码等于写操作码,则跳转至接收1状态;2),发送1状态:IIC总线从控制器周期性地获取其所在IIC从设备中IP核的状态信息;
如果状态信息显示为接收缓冲中无数据信息,则继续停留在该发送1状态;如果状态信息显示为接收缓冲中有数据信息,则IIC总线从控制器将数据信息从IP核中读出,赋值给地址码,并产生读使能信息,在该IIC从设备中按地址码所指示的资源读取16比特数据,并跳转至发送2状态;3),发送2状态:IIC总线从控制器周期性地获取其所在IIC从设备中IP核的状态信息;如果状态信息显示为IIC主设备没有发起读操作,则继续停留在该发送2状态;如果状态信息显示为IIC主设备正在发起一次读操作,则将发送1状态中按地址码读取的16比特数据的高8位写入发送缓冲中;IIC总线从控制器周期性地获取其所在IIC从设备中IP核的状态信息;如果状态信息显示为本次读操作未结束,则继续停留在该发送状态2;如果...

【专利技术属性】
技术研发人员:屈盼让孙少华朱耀国张倩倩蔡晓乐肖鹏
申请(专利权)人:中国航空工业集团公司西安航空计算技术研究所
类型:发明
国别省市:

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

1