一种兼容APB总线的I3C主设备、主从系统及通信方法与流程

文档序号:14870376发布日期:2018-07-06 22:36阅读:366来源:国知局

本发明涉及集成电路ip核设计领域,尤其涉及一种兼容apb总线的i3c主设备、主从系统、及通信方法。



背景技术:

ip核全称知识产权核(intellectualpropertycore),是指某一方提供的芯片设计模块。设计人员能够以ip核为基础进行专用集成电路或现场可编程逻辑门阵列(fpga)的逻辑设计,以缩短设计周期、提高设计质量与效率。

依据mipi联盟的i3c新标准规范,i3c包含了更为丰富、更优的功能,且i3c新标准规范具有有效的减少集成电路芯片系统的物理接口、支持低功耗、高数据速率和其他已有接口协议的优点,而怎么使用i3c可实现不同速度外围设备的用户需求,是一个亟待解决的问题。



技术实现要素:

针对现有技术的不足,本发明提供一种兼容apb总线的i3c主设备、主从系统及通信方法,实现了具有apb总线接口的外围设备与i3c的通信,使得市场对i3c应用更宽广和规范,能有效地实现i3c协议规范,同时为i3c的广泛应用提供了可靠的保证。

本发明是这样实现的:

本发明第一方面提供一种兼容apb总线的i3c主设备,所述兼容apb总线的i3c主设备包括apb总线端口、apb协议适配模块、i3c总线和i3c状态机;

所述apb协议适配模块通过所述apb总线端口与apb总线相连接,并通过i3c总线与i3c状态机连接;

所述apb协议适配模块用于将i3c总线信号和apb总线信号进行解析转换;

所述apb协配块包括接收单元、解析单元、发送单元。

本发明提供一种兼容apb总线的i3c主设备,可以与apb总线相连接,实现符合apb总线接口的外围设备与i3c电路的通信,使得i3c的可移植性和可复用性得到很大提高。

本发明第二方面一种兼容apb总线的i3c主从系统,所述兼容apb总线的i3c主从系统包括apb总线、外围设备和本发明第一方面所述的i3c主设备;所述apb总线与所述i3c主设备的apb总线端口连接;所述外围设备接在所述apb总线上;

所述外围设备包括uart从设备、spi从设备、i2c从设备或者i3c从设备中的一种或几种。

本发明提供一种兼容apb总线的i3c主设备,可以实现外围设备包括uart从设备、spi从设备、i2c从设备或者i3c符合一种或者几种与i3c电路的通信,使得i3c的可移植性和可复用性得到很大提高。

本发明第三方面提供一种兼容apb总线的i3c主从系统的通信方法,所述兼容apb总线的i3c主从系统为本发明第二方面所述的兼容apb总线的i3c主从系统;所述兼容apb总线的i3c主从系统的通信方法包括如下步骤:

apb总线数据通信步骤:通过apb总线实现所述外围设备与所述apb协议适配模块之间的数据通信;

解码步骤:通过所述apb协议适配模块对apb总线和i3c总线传输的数据进行解码;

i3c总线数据通信步骤;通过i3c总线实现所述i3c状态机和所述apb协议适配模块之间的数据通信。

进一步地,所述apb总线数据通信步骤具体包括如下步骤:

初始化apb总线;

设置apb总线的片选信号;

设置apb总线的地址和读写位;

设置apb总线的使能信号;

apb总线进行数据传输;

重复所述设置apb总线的使能信号和apb总线进行数据传输两个步骤传输多个数据。

所述解码步骤具体包括如下步骤:当数据由所述apb总线传输到所述apb协议适配模块时,所述apb协议适配模块将数据解码成i3c协议的输入格式;当数据由所述i3c总线传输到所述apb协议适配模块时,所述apb协议适配模块将数据转换符合所述apb总线协议的数据。

进一步地,所述“当数据由所述apb总线传输到所述apb协议适配模块时,所述apb协议适配模块将数据解码成i3c协议的输入格式”具体包括如下步骤:当数据由apb总线达到所述apb适配模块的接收单元,所述接收单元判断数据是否合法,若不合法,则将识别失败信号发送到所述i3c状态机,所述i3c状态机接收到所述信号,发出停止传输指令;

若所述接收单元判断数据合法,则识别所述数据对应的通信协议,识别成功则将所述数据发送至所述解析单元,解析单元对数据进行解析,发送单元将解析后的数据发送至所述i3c总线,由所述i3c状态机对数据传输状态进行跟踪。

所述“解析单元对数据进行解析”还包括如下步骤:当数据经过解析一次,则所述数据的解析算法对应的所述解析缓存记录加1,由所述解析缓存记录对解析算法进行等级排列。

进一步地,所述i3c总线通讯流程包括:

初始化i3c总线;

将所述片选信号转换为开始命令;

传输从apb总线转换的地址和读写位;

将使能信号转换为传输数据的命令;

传输数据;

重复所述将使能信号转换为传输数据的命令和传输数据两个步骤进行多个数据的传输。

本发明提供的兼容apb总线的i3c主从系统的通信方法,apb总线接收到数据时,将数据传输到apb协议适配模块,再将其发送到i3c总线实现数据的传输,可以实现符合apb总线接口的外围设备与i3c电路的通信。该方法采用规范、通用的apb接口,可以实现符合apb总线接口的外围设备与i3c电路的通信,使得i3c的可移植性和可复用性得到很大提高。

附图说明

为了更清楚地说明本发明实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。

图1为本发明一实施例提供的兼容apb总线的i3c主从系统的结构示意图;

图2是图1所示实施例的又一结构示意图;

图3是本发明又一实施例提供的兼容apb总线的i3c主从系统的通信方法的流程示意图;

图4是图3所示实施例的一流程示意图;

图5是图3所示实施例的一流程示意图;

图6是图3所示实施例的一流程示意图。

其中,图中各附图标记:

10—i3c主机模块,20—apb总线,101—apb协议适配模块,102—i3c总线,103—i3c状态机。

具体实施方式

为了使本发明所要解决的技术问题、技术方案及有益效果更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。

请参考图1,其示出了本发明实施例提供的兼容apb总线的i3c主从系统的结构示意图,所述兼容apb总线的i3c主从系统包括:i3c主机模块10、apb总线20,其中,i3c主机模块10包括:apb协议适配模块101、i3c总线102和i3c状态机103。

作为一种实施方式,i3c电路实现设备是用硬件语言描述的电路,例如可以是verilog或者vhdl语言描述的电路,其中,verilog或者vhdl语言都是一种硬件描述的语言。i3c协议是一种全新的协议标准,能有效的减少集成系统的物理端口、支持低功耗、高数据速率和其他已有端口协议的优点。i3c规范吸纳了i2c和spi的关键特性,具有低引线数、可扩展性、低功耗、更高的容量和新的性能,而且兼容i2c,允许i2c从设备在相同端口上与i3c规范的新设备共存。在互联网、移动设备,汽车等诸多应用中,为多种传感器的连接提供了新的通信协议。i3c电路实现设备用硬件语言描述的原因是由于i3c是一个全新的通信协议,用硬件语言描述从设备电路,可以根据具有i3c端口的主设备通信功能需要进行相应的设计,实现高效的验证,提高主设备以及集成电路的开发速度。

具体的,兼容apb总线的i3c主从系统设置了i3c主机模块10和apb总线20,具有apb端口的从设备与apb总线端口相连接,能连接的从设备有i3c从设备、i2c从设备、uart从设备和spi从设备。

请参考图2,其示出了本发明实施例又一结构示意图,进一步地,i3c主机模块10包括:apb协议适配模块101、i3c总线102和i3c状态机103。

作为一种实施方式,从设备与主设备进行数据通信时,数据在apb总线20中传输,传输至i3c主机模块10时,经过apb协议适配模块101将数据解析成符合i3c协议的数据,发送至i3c总线102进行传输。其中,数据在i3c总线上的传输状态由i3c状态机103控制和反馈,所述i3c状态机103控制状态有开始、地址、响应、数据、停止和空闲。

作为一种实施方式,所述i3c主机模块向所述i3c总线发送时钟信号、地址数据和控制数据;所述i3c总线根据所述时钟信号获取所述地址数据和所述控制数据,并将所述地址数据和所述控制数据发送至所述i3c状态机,所述i3c状态机存储所述地址数据和所述控制数据,并将所述地址数据和所述控制数据发送至所述apb总线上的对应设备。

本实施例通过兼容apb总线的i3c主从系统实现对i3c总线端口的扩展,在apb总线与i3c总线端口加入了apb协议适配模块,实现了具有apb总线接口的外围设备与i3c的通信,使得市场对i3c应用更宽广和规范,能有效地实现i3c协议规范,同时为i3c的广泛应用提供了可靠的保证。

所述兼容apb总线的i3c主设备的具体工作过程,可以参考上述实施例中的对应过程,在此不再赘述。

请参考图3,其示出了本发明又一实施例提供的兼容apb总线的i3c主从系统的通信方法的流程示意图,s10apb总线对数据的传输;s20apb协议适配模块对数据的转化;s30i3c总线对数据的传输。本实施例是数据在整个apb总线的i3c电路实现设备上的传输,该方法采用规范、通用的apb接口,可以实现符合apb总线接口的外围设备与i3c电路的通信,使得i3c的可移植性和可复用性得到很大提高。

具体地,请参考图4,其示出了本发明实施例又一流程示意图,是apb总线数据通信的具体流程,包括s101.初始化apb总线;s102.设置apb总线的片选信号;s103.设置apb总线的地址和读写位;s104.设置apb总线的使能信号;s105.apb总线进行数据传输;重复s104-s105可以传输多个数据。本实施例是数据到达apb总线的通信,实现数据在apb总线中的传输。

具体地,请参考图5,其示出了本发明实施例又一流程示意图,是apb协议模块对数据的转化的流程图,包括s201.接收单元接收到数据,判断数据是否合法;若不合法,则进入到s2023.将识别失败的信号发送至i3c状态机中,并由所述i3c状态机反馈出停止所述数据传输的指令,终止此数据的传输。若接收单元判断数据合法,则进入到s2022中,将所述数据发送至解析单元,解析单元识别数据所属通信协议,发送至对应的算法单元进行解析;进入到s203,将解析后的数据发送至发送单元,发送单元识别所述数据所属协议,并发送到对应设备。本实施例,apb协议模块对数据的转化过程中的接收和发送模块能判断并识别数据所属协议,使发送能针对目标设备。

作为一种实施方式,解析过程中s2022中的解析单元包括一个解析缓存记录,当数据经过解析一次,则所述数据的解析算法对应的所述解析缓存记录加1,由所述解析缓存记录对解析算法进行等级排列。这种实施方法将解析匹配度随着解析的进行生成一个动态的数据,使用频率高的解析算法优先调用,使解析匹配更加灵敏。

请参考图6,其示出了本发明实施例又一流程示意图,具体的,为s30i3c总线对数据的传输。s301.初始化i3c总线;s302.将所述片选信号转换为开始命令;s303.传输从apb总线转换的地址和读写位;s304.将使能信号转换为传输数据的命令;s305.传输数据;重复s304-s305进行多个数据的传输。本实施例是数据到达i3c总线的通信,实现数据在i3c总线中的传输。

以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1