采样延时调整方法及装置
技术领域
本发明涉及电子信息设计技术,尤其涉及一种采样延时调整方法及装置。
背景技术
Soc芯片的emmc控制器与emmc外设之间的通信速率越来越高。目前主流的接口时钟已经达到了200Mhz。板级环境比如温度、湿度会使得时钟信号与数据信号之间相对相位发生变化,导致数据采样出错,那么就需要针对性的对采样延时做调整。
现有技术的方法是由驱动软件配置emmc控制器发送一个命令给emmc外设,让emmc外设回复一个特定序列的数据给emmc控制器。然后驱动软件从emmc控制器的数据缓冲区读取emmc控制器采样到的数据,与特定序列数据进行对比,判断是否一致。如果一致就调整完毕,如果不一致就继续调整,在调整采样延时过程中,系统无法访问磁盘。这样就会导致的问题是,如果是温度湿度剧烈来回变动的场景,那么就会导致需要不断的调整采样延时,导致长时间无法使用磁盘的现象发生。
有鉴于此,有必要提供一种技术方案,以避免出现上述提到的温湿度剧烈变化带来的系统磁盘访问卡顿的现象。
发明内容
为此,本发明实施例提供一种采样延时调整方法及装置,用以避免出现由于温湿度剧烈变化带来的系统磁盘访问卡顿的现象。
本发明实施例采用如下技术方案:
第一方面,提供一种采样延时调整方法,包括:
检测板级环境的当前板级温度和当前板级湿度,并根据预设温度延时关系和预设湿度延时关系,获取对应的第一延时和第二延时;其中,所述预设温度延时关系用于表示板级温度区间与采样延时的对应关系,所述预设湿度延时关系用于表示板级湿度区间与采样延时的对应关系;
判断第一延时和第二延时之间较小的延时是否与上一次调整的延时一致;
若判定不一致,则触发系统中断,并将第一延时和第二延时之间较小的延时设置为最新调整的延时。
在第一方面第一种可能的实现方式中,在所述检测板级环境的当前板级温度和当前板级湿度之前还包括:当确定进入延时调整模式时,检测板级环境的当前板级温度和当前板级湿度。
在第一方面第二种可能的实现方式中,在所述当确定进入延时调整模式时之前还包括:当确定进入数据采样出错时,确定进入延时调整模式。
在第一方面第三种可能的实现方式中,所述预设温度延时关系通过以下方式得到:
采集多个不同的温度,检测每个温度对应的采样延时;
根据所述多个不同的温度及各温度对应的采样延时,得到温度延时曲线。
在第一方面第四种可能的实现方法中,所述预设湿度延时关系通过以下方式得到:
采集多个不同的湿度,检测每个湿度对应的采样延时;
根据所述多个不同的湿度及各湿度对应的采样延时,得到湿度延时曲线。
第二方面,提供一种采样延时调整装置,包括控制器、温度传感器、湿度传感器、内存、寄存器,所述温度传感器、湿度传感器、内存、寄存器均与控制器电气连接,所述内存用于存储预设温度延时关系和预设湿度延时关系;其中,所述预设温度延时关系用于表示板级温度区间与采样延时的对应关系,所述预设湿度延时关系用于表示板级湿度区间与采样延时的对应关系;
所述温度传感器,用于检测板级环境的板级温度;
所述湿度传感器,用于检测板级环境的板级湿度;
所述控制器,用于接收温度传感器传送的当前板级温度和湿度传感器传送的当前板级湿度,并根据内存中预设温度延时关系和预设湿度延时关系,获取当前板级温度和当前板级湿度对应的第一延时和第二延时;判断第一延时和第二延时之间较小的延时是否与上一次调整的延时一致;以及,若判定不一致,则控制所述寄存器触发系统中断,并将第一延时和第二延时之间较小的延时设置为最新调整的延时。
在第二方面第一种可能的实现方式中,所述控制器还用于:当确定所述寄存器进入延时调整模式时,触发所述温度传感器检测板级环境的当前板级温度,并触发所述湿度传感器检测板级环境的当前板级湿度。
在第二方面第二种可能的实现方式中,所述控制器还用于:当确定进入数据采样出错时,确定进入延时调整模式。
在第二方面第三种可能的实现方式中,还包括温度延时生成模块,用于采集多个不同的温度,检测每个温度对应的采样延时;并根据所述多个不同的温度及各温度对应的采样延时,得到温度延时曲线。
在第二方面第四种可能的实现方法中,还包括湿度延时生成模块,用于采集多个不同的湿度,检测每个湿度对应的采样延时;并根据所述多个不同的湿度及各湿度对应的采样延时,得到湿度延时曲线。
本发明实施例通过在第一延时和第二延时之间较小的延时与上一次调整的延时不一致时,触发系统中断并将第一延时和第二延时之间较小的延时设置为最新调整的延时,即只在第一延时和第二延时之间较小的延时与上一次调整的延时不一致时调整采样延时,从而实现了只进行一次判断即可实现采样延时的调整,采样延时调整的时间非常短暂,大大降低了磁盘的占用时间。相较于现有技术,当温度湿度剧烈来回变动时,本实施例降低了长时间系统磁盘访问的情况。
附图说明
图1为本发明实施例一所适用的采样延时调整方法一流程示意图;
图2为本发明实施例二所适用的采样延时调整方法一流程示意图;
图3为本发明实施例三所适用的采样延时调整方法一流程示意图;
图4为本发明实施例四所适用的采样延时调整装置一结构模块图。
具体实施方式
为详细说明技术方案的技术内容、构造特征、所实现目的及效果,以下结合具体实施例并配合附图详予说明。
在本发明实施列中,所述板极环境指的是电路板的环境。
实施例一
请参阅图1,提供一种采样延时调整方法,可以包括:
102、检测板级环境的当前板级温度和当前板级湿度,并根据预设温度延时关系和预设湿度延时关系,获取对应的第一延时和第二延时;其中,所述预设温度延时关系用于表示板级温度区间与采样延时的对应关系,所述预设湿度延时关系用于表示板级湿度区间与采样延时的对应关系;
104、判断第一延时和第二延时之间较小的延时是否与上一次调整的延时一致;
106、若判定不一致,则触发系统中断,并将第一延时和第二延时之间较小的延时设置为最新调整的延时。
本发明实施例通过在第一延时和第二延时之间较小的延时与上一次调整的延时不一致时,触发系统中断并将第一延时和第二延时之间较小的延时设置为最新调整的延时,即只在第一延时和第二延时之间较小的延时与上一次调整的延时不一致时调整采样延时,从而实现了只进行一次判断即可实现采样延时的调整,采样延时调整的时间非常短暂,大大降低了磁盘的占用时间。相较于现有技术,当温度湿度剧烈来回变动时,本实施例降低了长时间系统磁盘访问的情况。
进一步的,若现有技术中温度湿度变化的幅度较大,那么所需调整的采样延时就比较大,需要多次的发送命令以及读取数据来进行判断才能调整到位。本实施例无论温度湿度变化的幅度是否较大,均只需要一次判断即可实现采样延时的调整,无需多次调整。
另外,由于预设温度延时关系表示的是板级温度区间与采样延时的对应关系,也就说明,在某一板级温度区间的多个板级温度对应的是一个采样延时,当当前板级温度与上一板级温度属于同一板级温度区间时,并不会进行采样延时的调整,故若前后板级温度相差不大时一般不会进行采样延时的调整。相较于现有技术,当温度湿度剧烈来回变动时,本实施例减少了采样延时的调整次数,节省了电力及系统成本。
应当理解的是,若判定第一延时和第二延时之间较小的延时是与上一次调整的延时一致,则表明该采样延时对于当前板级环境来说无需调整。此时返回步骤102,并继续执行后面的步骤104和106。由于此时并不会进行采样延时的调整,故不会造成磁盘的占用。
实施例二
请参阅图2,示出了本实施例提供的采样延时调整方法,可以包括:
200、当确定进入数据采样出错时,确定进入延时调整模式。在本实施例中,延时调整模式指的是按照对应的预设温湿度与延时对应关系来修改调整采样延时,即根据预设温度延时关系和预设湿度延时关系进行采样延时调整的模式,能够达到将采样延时一次调整完成的效果。
202、检测板级环境的当前板级温度和当前板级湿度,并根据预设温度延时关系和预设湿度延时关系,获取对应的第一延时和第二延时;其中,所述预设温度延时关系用于表示板级温度区间与采样延时的对应关系,所述预设湿度延时关系用于表示板级湿度区间与采样延时的对应关系。
具体的,所述预设温度延时关系通过以下方式得到:
采集多个不同的温度,检测每个温度对应的采样延时;
根据所述多个不同的温度及各温度对应的采样延时,得到温度延时曲线,所述温度延时曲线即为预设温度延时关系。
具体的,所述预设湿度延时关系通过以下方式得到:
采集多个不同的湿度,检测每个湿度对应的采样延时;
根据所述多个不同的湿度及各湿度对应的采样延时,得到湿度延时曲线,所述湿度延时曲线即为预设湿度延时关系。
204、判断第一延时和第二延时之间较小的延时是否与上一次调整的延时一致。
206、若判定不一致,则触发系统中断,并将第一延时和第二延时之间较小的延时设置为最新调整的延时。
本发明实施例通过在第一延时和第二延时之间较小的延时与上一次调整的延时不一致时,触发系统中断并将第一延时和第二延时之间较小的延时设置为最新调整的延时,即只在第一延时和第二延时之间较小的延时与上一次调整的延时不一致时调整采样延时,从而实现了只进行一次判断即可实现采样延时的调整,采样延时调整的时间非常短暂,大大降低了磁盘的占用时间。相较于现有技术,当温度湿度剧烈来回变动时,本实施例降低了长时间系统磁盘访问的情况。
进一步的,若现有技术中温度湿度变化的幅度较大,那么所需调整的采样延时就比较大,需要多次的发送命令以及读取数据来进行判断才能调整到位。本实施例无论温度湿度变化的幅度是否较大,均只需要一次判断即可实现采样延时的调整,无需多次调整。
另外,由于预设温度延时关系表示的是板级温度区间与采样延时的对应关系,也就说明,在某一板级温度区间的多个板级温度对应的是一个采样延时,当当前板级温度与上一板级温度属于同一板级温度区间时,并不会进行采样延时的调整,故若前后板级温度相差不大时一般不会进行采样延时的调整。相较于现有技术,当温度湿度剧烈来回变动时,本实施例减少了采样延时的调整次数,节省了电力及系统成本。
应当理解的是,若判定第一延时和第二延时之间较小的延时是与上一次调整的延时一致,则表明该采样延时对于当前板级环境来说无需调整,此时返回步骤202,并继续执行后面的步骤204和206。由于此时并不会进行采样延时的调整,故不会造成磁盘的占用。
实施例三
请参阅图3,示出了本实施例提供的采样延时调整方法,其可用的应用场景包括控制器、温度传感器、湿度传感器、寄存器、内存、IO模块。内存中预设有预设温度延时关系和预设湿度延时关系,其可通过图3所示的方式进行表示。图3所示的采样延时的调整方法具体如下。
(1)将预先测试的板间温度区间与采样延时关系(即预设温度延时关系)、板间湿度区间与采样延时关系(即预设湿度延时关系)的数据保存在内存的一段物理地址内,并将此两个物理地址保存在寄存器接口的温度曲线内存地址位以及湿度曲线内存地址位。
具体的,所述预设温度延时关系通过以下方式得到:
采集多个不同的温度,检测每个温度对应的采样延时;
根据所述多个不同的温度及各温度对应的采样延时,得到温度延时曲线,所述温度延时曲线即为预设温度延时关系。
具体的,所述预设湿度延时关系通过以下方式得到:
采集多个不同的湿度,检测每个湿度对应的采样延时;
根据所述多个不同的湿度及各湿度对应的采样延时,得到湿度延时曲线,所述湿度延时曲线即为预设湿度延时关系。
(2)将寄存器接口的模式选择,配置为延时调整模式。
(3)在系统运行过程中,控制器的温湿度轮询模式不断地读取温度传感器和湿度传感器检测的数据信息,采集当前Soc板级环境的温、湿度信息(即当前板级温度和当前板级湿度)。
(4)控制器的温湿度轮询模式查询寄存器接口,判断到当前配置的是延时调整模式,则将当前采集到的温、湿度信息(即当前板级温度和当前板级湿度)对应写入寄存器接口的温、湿度信息位内。
(5)温湿度轮询模块从寄存器接口获得温、湿度曲线内存地址,利用该地址从内存中获得预设的温、湿度曲线关系,解析当前采集到的温、湿度信息所对应的采样延时,比如当前采集到的温度信息为t1(属于温度区间T1)、湿度信息为h1(属于湿度区间H1),其对应的采样延时分别为ST1(第一延时)、SH1(第二延时)。
(6)温湿度轮询模块比较ST1与SH1,取较小的一个(假设为SH1)。与前一次调整记录的采样延时数据进行比较,如果不同,就配置寄存器接口的温湿度变化中断标志位,触发一个系统中断。然后将此次的采样延时SH1配置到IO模块,作为最新调整的采样延时。
应当理解的是,如果驱动软件配置寄存器接口的模式选择为非延时调整模式,则控制器的温湿度轮询模块将不工作,驱动软件可以使用传统的、出错后不断探测判断的方法进行调整。
本发明实施例通过在第一延时和第二延时之间较小的延时与上一次调整的延时不一致时,触发系统中断并将第一延时和第二延时之间较小的延时设置为最新调整的延时,即只在第一延时和第二延时之间较小的延时与上一次调整的延时不一致时调整采样延时,从而实现了只进行一次判断即可实现采样延时的调整,采样延时调整的时间非常短暂,大大降低了磁盘的占用时间。相较于现有技术,当温度湿度剧烈来回变动时,本实施例降低了长时间系统磁盘访问的情况。
进一步的,若现有技术中温度湿度变化的幅度较大,那么所需调整的采样延时就比较大,需要多次的发送命令以及读取数据来进行判断才能调整到位。本实施例无论温度湿度变化的幅度是否较大,均只需要一次判断即可实现采样延时的调整,无需多次调整。
另外,由于预设温度延时关系表示的是板级温度区间与采样延时的对应关系,也就说明,在某一板级温度区间的多个板级温度对应的是一个采样延时,当当前板级温度与上一板级温度属于同一板级温度区间时,并不会进行采样延时的调整,故若前后板级温度相差不大时一般不会进行采样延时的调整。相较于现有技术,当温度湿度剧烈来回变动时,本实施例减少了采样延时的调整次数,节省了电力及系统成本。
实施例四
请参阅图4,提供一种采样延时调整装置,包括控制器401、温度传感器402、湿度传感器403、内存404、寄存器405,所述温度传感器402、湿度传感器403、内存404、寄存器405均与控制器401电气连接,所述内存404用于存储预设温度延时关系和预设湿度延时关系;其中,所述预设温度延时关系用于表示板级温度区间与采样延时的对应关系,所述预设湿度延时关系用于表示板级湿度区间与采样延时的对应关系;
所述温度传感器402,用于检测板级环境的板级温度;
所述湿度传感器403,用于检测板级环境的板级湿度;
所述控制器401,用于接收温度传感器402传送的当前板级温度和湿度传感器403传送的当前板级湿度,并根据内存404中预设温度延时关系和预设湿度延时关系,获取当前板级温度和当前板级湿度对应的第一延时和第二延时;判断第一延时和第二延时之间较小的延时是否与上一次调整的延时一致;以及,若判定不一致,则控制所述寄存器405触发系统中断,并将第一延时和第二延时之间较小的延时设置为最新调整的延时。
在第一种可能的实现方式中,所述控制器401还用于:当确定所述寄存器405进入延时调整模式时,触发所述温度传感器402检测板级环境的当前板级温度,并触发所述湿度传感器403检测板级环境的当前板级湿度。
在第二种可能的实现方式中,所述控制器401还用于:当确定进入数据采样出错时,控制寄存器405进入延时调整模式。
在第三种可能的实现方式中,还包括温度延时生成模块,用于采集多个不同的温度,检测每个温度对应的采样延时;并根据所述多个不同的温度及各温度对应的采样延时,得到温度延时曲线。
在第四种可能的实现方法中,还包括湿度延时生成模块,用于采集多个不同的湿度,检测每个湿度对应的采样延时;并根据所述多个不同的湿度及各湿度对应的采样延时,得到湿度延时曲线。
本发明的设备/装置实施例的工作原理及相应的有益效果与前述方法实施例理念一致,具体可参阅前述的内容,在此不再赘述。
本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者终端设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者终端设备所固有的要素。在没有更多限制的情况下,由语句“包括……”或“包含……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者终端设备中还存在另外的要素。此外,在本文中,“大于”、“小于”、“超过”等理解为不包括本数;“以上”、“以下”、“以内”等理解为包括本数。
本领域内的技术人员应明白,上述各实施例可提供为方法、装置、或计算机程序产品。这些实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。上述各实施例涉及的方法中的全部或部分步骤可以通过程序来指令相关的硬件来完成,所述的程序可以存储于计算机设备可读取的存储介质中,用于执行上述各实施例方法所述的全部或部分步骤。所述计算机设备,包括但不限于:个人计算机、服务器、通用计算机、专用计算机、网络设备、嵌入式设备、可编程设备、智能移动终端、智能家居设备、穿戴式智能设备、车载智能设备等;所述的存储介质,包括但不限于:RAM、ROM、磁碟、磁带、光盘、闪存、U盘、移动硬盘、存储卡、记忆棒、网络服务器存储、网络云存储等。
上述各实施例是参照根据实施例所述的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到计算机设备的处理器以产生一个机器,使得通过计算机设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机设备以特定方式工作的计算机设备可读存储器中,使得存储在该计算机设备可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机设备上,使得在计算机设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已经对上述各实施例进行了描述,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改,所以以上所述仅为本发明的实施例,并非因此限制本发明的专利保护范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围之内。