本申请涉及控制技术,更具体的说,是涉及一种控制方法及电子设备。
背景技术:
1、在应用中,系统芯片的ddr(double data rate synchronous dynamic randomaccess memory,双倍速率同步动态随机存储器)可以和一些其他的功能模块(如无线通信模块)互联实现数据传输,过程中功能模块可以将自身数据写入到系统芯片的ddr中,也可以从ddr中读取数据。
2、系统芯片的ddr在工作过程中会基于不同场景带宽的需求,自动执行dvfs(dynamic voltage and frequency scaling,动态电压频率调整)过程而达到降低功耗的目的,但是在ddr执行dvfs的过程中不能访问,称为断流。而在ddr的断流期间,与ddr进行数据传输的功能模块因无法对ddr进行数据读写可能出现多种问题,如性能下降、数据报丢失等。
技术实现思路
1、有鉴于此,本申请提供如下技术方案:
2、本申请第一方面提供了一种控制方法,用于控制第一模块和第二模块之间的数据传输,包括:
3、确定第一模块进入第一状态,所述第一状态为所述第一模块由第一工作模式转换为第二工作模式的中间阶段,所述第二工作模式下的数据传输量大于所述第一工作模式下的数据传输量;
4、在所述第一模块处于所述第一状态的期间,控制输出禁止第二模块进入第一流程的禁止指令,所述第一模块与所述第二模块连接,在所述第二模块处于所述第一流程期间,所述第一模块和所述第二模块之间的数据传输受到限制。
5、在一个可能的实现中,所述在所述第一模块处于所述第一状态的期间,控制输出禁止第二模块进入禁用状态的禁止指令,包括:
6、若所述第一模块处于所述第一状态的时长小于或等于所述第一流程的时长,控制在所述第一状态启动时输出所述禁止指令;
7、若所述第一模块处于所述第一状态的时长大于所述第一流程的时长,控制在距离所述第一状态结束前的第一时长的时间点输出所述禁止指令,所述第一时长为所述第一流程的时长。
8、在一个可能的实现中,所述在所述第一模块处于所述第一状态的期间,控制输出禁止第二模块进入禁用状态的禁止指令,包括:
9、配置计数器的目标值,所述目标值为第一时长与相对最小时长之间的差值,所述第一时长为所述第一模块处于所述第一状态的时长,所述相对最小时长为所述第一时长和第二时长中的最小时长,所述第二时长为所述第一流程的时长;
10、在所述第一模块进入所述第一状态时控制启动所述计数器;
11、在所述计数器的计数数值达到所述目标值时控制输出禁止第二模块进入禁用状态的禁止指令。
12、在一个可能的实现中,在所述控制输出禁止第二模块进入第一流程的指令后,还包括:
13、确定所述第一模块由所述第二工作模式再次进入所述第一工作模式,解除所述禁止指令的输出。
14、在一个可能的实现中,还包括:
15、响应于触发所述第二模块进入所述第一流程的第一指令,所述第二模块屏蔽所述禁止指令,所述第一指令的优先级高于所述第一模块优先级。
16、在一个可能的实现中,还包括:
17、在所述第二模块进入所述第一流程期间,将所述第一模块向所述第二模块发送的传输数据缓存至暂存单元,所述暂存单元串联于所述第一模块和所述第二模块之间的数据传输路径上。
18、在一个可能的实现中,所述将所述第一模块向所述第二模块发送的传输数据缓存至暂存单元,包括:
19、通过增大所述暂存单元的缓存容量上限值,以将所述第一模块向所述第二模块发送的传输数据缓存至所述暂存单元。
20、在一个可能的实现中,在所述第二模块未进入所述第一流程期间,所述暂存单元的缓存容量上限值为第一数值,在所述第二模块处于所述第一流程期间,所述暂存单元的缓存容量上限值为第二数值;
21、其中,所述第二数值大于所述第一数值,且所述第二数值与所述第一数值的差值不小于所述第一流程期间所述第一模块向所述第二模块发送的传输数据量。
22、在一个可能的实现中,还包括:
23、在所述第一流程结束后,控制所述暂存单元的缓存容量上限值由所述第二数值逐步下降到所述第一数值,在所述缓存容量上限值下降过程中,所述暂存单元向第二模块的输出数据量大于第一模块向暂存单元的输入数据量。
24、在一个可能的实现中,所述控制所述暂存单元的缓存容量上限值由所述第二数值逐步下降到所述第一数值,包括:
25、基于所述第二模块的带宽以及所述缓存容量上限值的下降间隔时间确定下降步长,所述下降步长小于所述带宽与所述下降间隔时间的乘积;
26、控制所述缓存容量上限值按照所述下降间隔时间以及所述下降步长逐步下降到所述第一数值,其中最后一次下降的下降值小于或等于所述下降步长,其他每次下降的下降值等于所述下降步长。
27、本申请第二方面提供了一种电子设备,用于控制第一模块和第二模块之间的数据传输,包括:
28、状态确定模块,用于确定第一模块进入第一状态,所述第一状态为所述第一模块由第一工作模式转换为第二工作模式的中间阶段,所述第二工作模式下的数据传输量大于所述第一工作模式下的数据传输量;
29、指令控制模块,用于在所述第一模块处于所述第一状态的期间,控制输出禁止第二模块进入第一流程的禁止指令,所述第一模块与所述第二模块连接,在所述第二模块处于所述第一流程期间,所述第一模块和所述第二模块之间的数据传输受到限制。
30、在一个可能的实现中:
31、所述第一模块包括第一接口;
32、所述第二模块包括第二接口,所述第一模块和所述第二模块通过所述第一接口和所述第二接口实现数据传输;
33、所述第二接口和所述第二模块的存储单元之间串接有一暂存单元,所述暂存单元用于在所述第一模块和所述第二模块之间数据传输受到限制时,缓存所述第一模块接收到的、需要写入所述第二模块的数据,所述暂存单元的缓存容量上限值可调。
1.一种控制方法,用于控制第一模块和第二模块之间的数据传输,包括:
2.根据权利要求1所述的控制方法,所述在所述第一模块处于所述第一状态的期间,控制输出禁止第二模块进入禁用状态的禁止指令,包括:
3.根据权利要求1所述的控制方法,所述在所述第一模块处于所述第一状态的期间,控制输出禁止第二模块进入禁用状态的禁止指令,包括:
4.根据权利要求1所述的控制方法,在所述控制输出禁止第二模块进入第一流程的指令后,还包括:
5.根据权利要求1所述的控制方法,还包括:
6.根据权利要求5所述的控制方法,还包括:
7.根据权利要求6所述的控制方法,所述将所述第一模块向所述第二模块发送的传输数据缓存至暂存单元,包括:
8.根据权利要求7所述的控制方法,在所述第二模块未进入所述第一流程期间,所述暂存单元的缓存容量上限值为第一数值,在所述第二模块处于所述第一流程期间,所述暂存单元的缓存容量上限值为第二数值;
9.根据权利要求8所述的控制方法,还包括:
10.根据权利要求9所述的控制方法,所述控制所述暂存单元的缓存容量上限值由所述第二数值逐步下降到所述第一数值,包括:
11.一种电子设备,用于控制第一模块和第二模块之间的数据传输,包括:
12.根据权利要求11所述的电子设备,其中: