本技术涉及总线通信,尤其涉及总线控制方法、电子设备及计算机存储介质。
背景技术:
1、现有系统电源管理接口(system power management interface,spmi)为两线串行接口,一般用做电源管理接口,该接口可以将主机与从机连接起来。例如,主机可以是片上系统(system-on-a-chip,soc)),从机可以是电源管理芯片(power management ic,pmic)。通过spmi总线,可准确监控和控制相关设备的给定工作负载或应用所需的处理器性能水平,并根据性能水平实时动态控制电源电压。然而,现有spmi总线的主从系统中的数据均通过主机进行控制,无法通过外部设备进行控制。
技术实现思路
1、鉴于以上内容,有必要提供一种总线控制方法、电子设备及计算机存储介质以解决无法通过外部设备对spmi总线的主从系统中的数据进行控制。
2、第一方面,本技术实施例提供一种总线控制方法,应用在集成电路器件中,集成电路器件通过系统电源管理接口spmi总线与主机以及从机通信连接,所述方法包括:监听主机下发给从机的通信数据并判断是否对通信数据进行数据补发;若确定对通信数据进行数据补发,执行数据补发流程,数据补发流程包括:基于通信数据确定补发数据值;通过第一模拟主机抢占spmi总线;将补发数据值写入与通信数据对应的目标从机。上述技术方案中,在确定对通信数据进行数据补发时模拟第一模拟主机抢占spmi总线并将补发数据值写入对应的从机,如此实现集成电路器件对从机的数据补发,及实现主机与从机之间的数据的控制。
3、在本技术的一实施例中,所述方法还包括:在执行数据补发流程时,同步执行数据写入流程,数据写入流程包括:通过模拟从机抢占spmi总线;控制模拟从机向第二模拟主机的寄存器写入预设数据。上述技术方案中,集成电路器件在监测到通信数据中存在预定指令后,在模拟第一模拟主机抢占spmi总线的同时,模拟从机抢占spmi总线以避免主机对spmi总线的抢占。
4、在本技术的一实施例中,控制模拟从机向第二模拟主机的寄存器写入预设数据包括:生成模拟从机的预设从机地址及第二模拟主机的预设主机地址;及根据预设从机地址以及预设主机地址,控制模拟从机向第二模拟主机的寄存器写入预设数据。上述技术方案中,通过控制预设从机地址的模拟从机向具有预设主机地址的第二模拟主机的寄存器写入预设数据,以避免主机对spmi总线的抢占。
5、在本技术的一实施例中,集成电路器件通过上端口与主机连接,监听主机下发给从机的通信数据并判断是否对通信数据进行数据补发包括:从上端口处获取主机向从机发送的通信数据,并判断通信数据中是否包括预定指令;若确定通信数据中包括预定指令,确定对通信数据进行数据补发。上述技术方案中,在分析通信数据中包括预定指令时,集成电路器件对从机进行数据补发,实现对主机发送给从机的通信数据的控制。
6、在本技术的一实施例中,集成电路器件通过上端口与主机连接,通过模拟从机抢占spmi总线包括:通过拉高上端口的spmi总线的数据信号线,模拟模拟从机抢占spmi总线。上述技术方案中,在拉高与主机连接的上端口的spmi总线的数据信号线时可以实现模拟从机抢占spmi总线。
7、在本技术的一实施例中,生成模拟从机的预设从机地址及第二模拟主机的预设主机地址包括:若确定模拟从机以最高优先级对spmi总线进行抢占,生成预设从机地址及预设主机地址,其中,预设从机地址区别于集成电路器件相连接的所有从机的地址,预设主机地址区别于集成电路器件相连接的所有主机的地址。上述技术方案中,在确定模拟从机以最高优先级对spmi总线进行抢占时生成预设从机地址及预设主机地址,以便控制预设从机地址的模拟从机向具有预设主机地址的第二模拟主机的寄存器写入预设数据,从而在集成电路器件对从机进行数据控制时,避免主机对spmi总线进行抢占的干扰。
8、在本技术的一实施例中,基于通信数据确定补发数据值包括:根据预定指令确定补发数据值,其中,不同的预定指令对应不同的补发数据值。
9、在本技术的一实施例中,集成电路器件通过下端口与从机连接,通过第一模拟主机抢占spmi总线包括:通过拉高下端口的spmi总线的数据信号线,模拟第一模拟主机抢占spmi总线。上述技术方案中,在拉高与从机连接的下端口的spmi总线的数据信号线时,可以模拟第一模拟主机抢占spmi总线,以便将补发数据值写入从机。
10、在本技术的一实施例中,将补发数据值写入与通信数据对应的目标从机包括:若确定第一模拟主机以最高优先级对spmi总线进行抢占,将补发数据值写入目标从机。上述技术方案中,在确定第一模拟主机以最高优先级对spmi总线进行抢占时,将补发数据值写入从机,如此实现主机对从机下发数据的控制。
11、在本技术的一实施例中,将补发数据值写入与通信数据对应的目标从机包括:通过external register write指令将补发数据值写入目标从机。
12、在本技术的一实施例中,所述方法还包括:若确定对通信数据不进行数据补发,将通信数据透传给从机。上述技术方案中,在确定对通信数据不进行数据补发时,将通信数据透传给从机从而保证主机与从机之间的原始数据的交互实现。
13、在本技术的一实施例中,将通信数据透传给从机包括:从通信数据中获取从机的目的地址及数据的数值,通过与从机连接的下端口将数据的数值发送给目的地址对应的从机。
14、在本技术的一实施例中,所述方法还包括:获取集成电路器件的状态,集成电路器件的状态包括空闲状态、主机下发状态、从机上发状态、数据补发状态中的至少一者;当集成电路器件处于空闲状态,若监测到与从机连接的下端口的数据信号线拉高时,控制集成电路器件跳转到从机上发状态;若监测到与主机连接的上端口的数据信号线拉高时,控制集成电路器件跳转到主机下发状态;若监测到预定指令,控制集成电路器件跳转到从机上发状态;若接收到重置指令,控制集成电路器件保持空闲状态。上述技术方案中,在集成电路器件处于空闲状态时,通过对下端口的数据信号线、上端口的数据信号线、预定指令或重置指令的监测,以确定主机与从机之间数据的传输方向及集成电路器件的状态变换,实现主机与从机之间的最小延迟的数据透传。
15、在本技术的一实施例中,当集成电路器件处于主机下发状态,所述方法还包括:若接收到重置指令,控制集成电路器件跳转到空闲状态;若监测到主机读指令,控制集成电路器件跳转到从机上发状态;若监测到spmi总线处于总线周期结束的阶段,控制集成电路器件跳转到空闲状态;若监测到无第一转移条件时,控制集成电路器保持在主机下发状态。上述技术方案中,在集成电路器件处于主机下发状态,通过对重置指令、主机读指令、spmi总线周期及状态转移条件的监测以确定主机与从机之间数据的传输方向及集成电路器件的状态变换,实现主机与从机之间的最小延迟的数据透传。
16、在本技术的一实施例中,当集成电路器件处于从机上发状态,所述方法还包括:若监测到spmi总线处于总线仲裁结束的阶段,控制集成电路器件跳转到主机下发状态;若监测到spmi总线处于从机写操作周期结束的阶段,控制集成电路器件跳转到空闲状态;若监测到无第二转移条件时,控制集成电路器保持在从机上发状态。上述技术方案中,在集成电路器件处于从机上发状态,通过对spmi总线周期及状态转移条件的监测以确定主机与从机之间数据的传输方向及集成电路器件的状态变换,实现主机与从机之间的最小延迟的数据透传。
17、在本技术的一实施例中,当集成电路器件处于数据补发状态时,所述方法还包括:若数据补发结束,控制集成电路器跳转到空闲状态。上述技术方案中,在集成电路器件处于数据补发状态,当确定数据补发结束时,控制集成电路器跳转到空闲状态。
18、第二方面,本技术的一些实施例提供一种电子设备,电子设备包括存储器和处理器:其中,存储器,用于存储程序指令;处理器,用于读取并执行存储器中存储的程序指令,当程序指令被处理器执行时,使得电子设备执行上述总线控制方法。
19、第三方面,本技术的一些实施例提供一种计算机存储介质,计算机存储介质存储有程序指令,当程序指令在电子设备上运行时,使得电子设备执行上述总线控制方法。
20、另外,第二方面至第三方面所带来的技术效果可参见上述方法部分各设计的方法相关的描述,此处不再赘述。
1.一种总线控制方法,应用在集成电路器件中,其特征在于,所述集成电路器件通过系统电源管理接口spmi总线与主机以及从机通信连接,所述方法包括:
2.如权利要求1所述的总线控制方法,其特征在于,所述方法还包括:在执行所述数据补发流程时,同步执行数据写入流程,所述数据写入流程包括:
3.如权利要求2所述的总线控制方法,其特征在于,所述控制所述模拟从机向第二模拟主机的寄存器写入预设数据包括:
4.如权利要求1所述的总线控制方法,其特征在于,所述集成电路器件通过上端口与所述主机连接,所述监听所述主机下发给所述从机的通信数据并判断是否对所述通信数据进行数据补发包括:
5.如权利要求2所述的总线控制方法,其特征在于,所述集成电路器件通过上端口与所述主机连接,所述通过模拟从机抢占所述spmi总线包括:
6.如权利要求3所述的总线控制方法,其特征在于,所述生成所述模拟从机的预设从机地址及所述第二模拟主机的预设主机地址包括:
7.如权利要求4所述的总线控制方法,其特征在于,所述基于所述通信数据确定补发数据值包括:
8.如权利要求1所述的总线控制方法,其特征在于,所述集成电路器件通过下端口与所述从机连接,所述通过第一模拟主机抢占所述spmi总线包括:
9.一种电子设备,其特征在于,所述电子设备包括集成电路器件、主机以及从机:
10.一种计算机存储介质,其特征在于,所述计算机存储介质存储有程序指令,当所述程序指令在电子设备上运行时,使得所述电子设备执行如权利要求1至8中任一项所述的总线控制方法。