本申请涉及温度检测技术领域,更具体地说,涉及一种温度检测装置及温度检测方法。
背景技术:
在集成电路应用领域,通常需要对芯片的实时温度进行检测,以为用户反馈芯片的实时温度或根据芯片的实时温度进行芯片的温度调节,以使芯片处于良好的工作状态下。
现有技术中在对芯片进行温度检测时,通常利用sar-adc(逐次逼近寄存器型模数转换器)来对温度传感器获得的模拟信号进行模数转换。这是因为在温度检测应用场景中,通常没有高速和高精度的要求,因此,采用低功耗的sar-adc进行模数转换是通用的做法。但在实际的应用过程中发现,由于sar-adc输出的用于表示温度信息的参数为无符号数,如果需要进一步的对该无符号数进行显示,需要上层软件另做解码,以将无符号数转换为有符号数,从而便于用户阅读或其他应用调用,而增加的解码过程使得上层软件的代码较为复杂。
技术实现要素:
为解决上述技术问题,本申请提供了一种温度检测装置及温度检测方法,以实现获取二进制补码形式表示的温度信息的目的,从而使得上层软件无需对二进制补码形式表示的温度信息另做解码,简化了上层软件的代码。
为实现上述技术目的,本申请实施例提供了如下技术方案:
一种温度检测装置,包括:第一偏置移除模块、第二偏置移除模块、偏差计算模块和补码转换模块;其中,
所述第一偏置移除模块用于接收表示温度信息的待转换无符号数和表示第一预设温度的预设无符号数;和用于根据所述预设无符号数,对所述待转换无符号数进行第一次偏置移除;所述第一预设温度为所述温度检测装置的温度探测下限值,所述预设无符号数小于0;
所述第二偏置移除模块用于对第一次偏置移除后的所述待转换无符号数进行第二次偏置移除,以移除第一次偏置移除后的所述待转换无符号数的一个最低比特位;
所述偏差计算模块,用于确定第二次偏置移除后的所述待转换无符号数所处的数值区间,并根据第二次偏置移除后的所述待转换无符号数所处的数值区间,向所述补码转换模块输出偏差修正值;
所述补码转换模块,用于接收第二次偏置移除后的所述待转换无符号数、所述偏差修正值和第一预设值,所述第一预设值小于0,且所述第一预设值的绝对值等于所述第一预设温度的绝对值;和用于根据所述偏差修正值和第一预设值,对第二次偏置移除后的所述待转换无符号数进行补码转换,以获得二进制补码形式表示的温度信息。
可选的,所述第一偏置移除模块和补码转换模块均为加法器。
可选的,所述第一偏置移除模块根据所述预设无符号数,对所述待转换无符号数进行第一次偏置移除具体用于,利用所述待转换无符号数减去所述预设无符号数,以获得第一次偏置移除后的待转换无符号数。
可选的,所述偏差计算模块对第一次偏置移除后的所述待转换无符号数进行第二次偏置移除,以移除第一次偏置移除后的所述待转换无符号数的一个最低比特位具体用于,对第一次偏置移除后的所述待转换无符号数进行除以2的运算,以移除第一次偏置移除后的所述待转换无符号数的一个最低比特位。
可选的,所述补码转换模块根据所述偏差修正值和第一预设值,对第二次偏置移除后的所述待转换无符号数进行补码转换,以获得二进制补码形式表示的温度信息具体用于,利用第二次偏置移除后的所述待转换无符号数减去所述偏差修正值和所述第一预设值,以获得二进制补码形式表示的温度信息。
可选的,所述偏差计算模块包括:
判断单元,用于判断第二次偏置移除后的所述待转换无符号数是否小于第一区间值,如果是,则判定第二次偏置移除后的所述待转换无符号数处于第一数值区间;
如果否,判断第二次偏置移除后的所述待转换无符号数是否小于第二区间值,若是,则判定第二次偏置移除后的所述待转换无符号数处于第二数值区间,若否,则判定第二次偏置移除后的所述待转换无符号数处于第三数值区间;
修正单元,用于在当第二次偏置移除后的所述待转换无符号数处于第一数值区间时,输出0作为所述偏差修正值;
在当第二次偏置移除后的所述待转换无符号数处于第二数值区间时,输出1作为所述偏差修正值;
在当第二次偏置移除后的所述待转换无符号数处于第三数值区间时,输出2作为所述偏差修正值。
一种温度检测方法,应用于上述任一项所述的温度检测装置,所述温度检测方法包括:
接收表示温度信息的待转换无符号数和表示第一预设温度的预设无符号数;
根据所述预设无符号数,对所述待转换无符号数进行第一次偏置移除;所述第一预设温度为所述温度检测装置的温度探测下限值,所述预设无符号数小于0;
对第一次偏置移除后的所述待转换无符号数进行第二次偏置移除,以移除第一次偏置移除后的所述待转换无符号数的一个最低比特位;
确定第二次偏置移除后的所述待转换无符号数所处的数值区间,并根据第二次偏置移除后的所述待转换无符号数所处的数值区间,向所述补码转换模块输出偏差修正值;
根据所述偏差修正值和第一预设值,对第二次偏置移除后的所述待转换无符号数进行补码转换,以获得二进制补码形式表示的温度信息;所述第一预设值小于0,且所述第一预设值的绝对值等于所述第一预设温度的绝对值。
可选的,所述确定第二次偏置移除后的所述待转换无符号数所处的数值区间,并根据第二次偏置移除后的所述待转换无符号数所处的数值区间,向所述补码转换模块输出偏差修正值包括:
判断第二次偏置移除后的所述待转换无符号数是否小于第一区间值,如果是,则判定第二次偏置移除后的所述待转换无符号数处于第一数值区间;
如果否,判断第二次偏置移除后的所述待转换无符号数是否小于第二区间值,若是,则判定第二次偏置移除后的所述待转换无符号数处于第二数值区间,若否,则判定第二次偏置移除后的所述待转换无符号数处于第三数值区间;
在当第二次偏置移除后的所述待转换无符号数处于第一数值区间时,输出0作为所述偏差修正值;
在当第二次偏置移除后的所述待转换无符号数处于第二数值区间时,输出1作为所述偏差修正值;
在当第二次偏置移除后的所述待转换无符号数处于第三数值区间时,输出2作为所述偏差修正值。
可选的,所述根据所述预设无符号数,对所述待转换无符号数进行第一次偏置移除包括:
利用所述待转换无符号数减去所述预设无符号数,以获得第一次偏置移除后的待转换无符号数。
可选的,所述对第一次偏置移除后的所述待转换无符号数进行第二次偏置移除,以移除第一次偏置移除后的所述待转换无符号数的一个最低比特位包括:
对第一次偏置移除后的所述待转换无符号数进行除以2的运算,以移除第一次偏置移除后的所述待转换无符号数的一个最低比特位。
可选的,所述根据所述偏差修正值和第一预设值,对第二次偏置移除后的所述待转换无符号数进行补码转换,以获得二进制补码形式表示的温度信息包括:
利用第二次偏置移除后的所述待转换无符号数减去所述偏差修正值和所述第一预设值,以获得二进制补码形式表示的温度信息。
从上述技术方案可以看出,本申请实施例提供了一种温度检测装置及温度检测方法,其中,所述温度检测装置将获取的表示温度信息的待转换无符号数,通过第一偏置移除模块、第二偏置移除模块、偏差计算模块和补码转换模块的处理,实现了将待转换无符号数转换为表示真实温度的信息的二进制补码形式表示的温度信息的目的,并且考虑到sar-dac的转换具有线性误差,通过第一偏置移除模块、第二偏置移除模块对待转换无符号数进行了两次的偏置移除,而且通过偏差计算模块确定了两次偏置移除后的待转换无符号数偏差修正值,使得补码转换模块可以在补码转换过程中消除该线性误差,精确的进行待转换无符号数到二进制补码形式表示的温度信息的精确转换。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为现有技术中利用sar-adc进行温度检测的结构示意图;
图2为本申请的一个实施例提供的一种温度检测装置的结构示意图;
图3为sar-adc输出的无符号数中存在的线性偏差的示意图;
图4为本申请的一个实施例提供的以-40-159℃为例对温度检测过程中信号变化的示意图;
图5为本申请的另一个实施例提供的一种温度检测装置的结构示意图;
图6为本申请的一个实施例提供的在-40℃-159℃中存在的线性偏差的示意图;
图7为本申请的另一个实施例提供的在-40℃-159℃中存在的线性偏差的示意图。
具体实施方式
正如背景技术所述,现有技术中通常利用sar-adc(逐次逼近寄存器型模数转换器)来对温度传感器获得的模拟信号进行模数转换。如图1所示,图1为现有技术中利用sar-adc进行模数转换的示意图,图1中,输入信号为正弦波信号,表示温度传感器获取的芯片温度信息;但实际应用过程中,不可避免的会有噪声源与输入信号进行叠加后共同输入到sar-adc中,sar-adc经过模数转换后获得无符号的无符号数(数字code)进行输出,也就是说sar-adc的输出信号是对输入信号和噪声源叠加后的逼近值。
在实际的应用过程中发现,由于sar-adc输出的用于表示温度信息的参数为无符号数,如果需要进一步的对该无符号数进行显示,需要上层软件另做解码,以将无符号数转换为有符号数,从而便于用户阅读或其他应用调用,而增加的解码过程使得上层软件的代码较为复杂。
有鉴于此,本申请实施例提供了一种温度检测装置,包括:第一偏置移除模块、第二偏置移除模块、偏差计算模块和补码转换模块;其中,
所述第一偏置移除模块用于接收表示温度信息的待转换无符号数和表示第一预设温度的预设无符号数;和用于根据所述预设无符号数,对所述待转换无符号数进行第一次偏置移除;所述第一预设温度为所述温度检测装置的温度探测下限值,所述预设无符号数小于0;
所述第二偏置移除模块用于对第一次偏置移除后的所述待转换无符号数进行第二次偏置移除,以移除第一次偏置移除后的所述待转换无符号数的一个最低比特位;
所述偏差计算模块,用于确定第二次偏置移除后的所述待转换无符号数所处的数值区间,并根据第二次偏置移除后的所述待转换无符号数所处的数值区间,向所述补码转换模块输出偏差修正值;
所述补码转换模块,用于接收第二次偏置移除后的所述待转换无符号数、所述偏差修正值和第一预设值,所述第一预设值小于0,且所述第一预设值的绝对值等于所述第一预设温度的绝对值;和用于根据所述偏差修正值和第一预设值,对第二次偏置移除后的所述待转换无符号数进行补码转换,以获得二进制补码形式表示的温度信息。
所述温度检测装置将获取的表示温度信息的待转换无符号数,通过第一偏置移除模块、第二偏置移除模块、偏差计算模块和补码转换模块的处理,实现了将待转换无符号数转换为表示真实温度的信息的二进制补码形式表示的温度信息的目的,并且考虑到sar-dac的转换具有线性误差,通过第一偏置移除模块、第二偏置移除模块对待转换无符号数进行了两次的偏置移除,而且通过偏差计算模块确定了两次偏置移除后的待转换无符号数偏差修正值,使得补码转换模块可以在补码转换过程中消除该线性误差,精确的进行待转换无符号数到二进制补码形式表示的温度信息的精确转换。
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请实施例提供了一种温度检测装置,如图2所示,包括:第一偏置移除模块10、第二偏置移除模块20、偏差计算模块30和补码转换模块40;其中,所述第一偏置移除模块10用于接收表示温度信息的待转换无符号数和表示第一预设温度的预设无符号数;和用于根据所述预设无符号数,对所述待转换无符号数进行第一次偏置移除;所述第一预设温度为所述温度检测装置的温度探测下限值,所述预设无符号数小于0;
所述第二偏置移除模块20用于对第一次偏置移除后的所述待转换无符号数进行第二次偏置移除,以移除第一次偏置移除后的所述待转换无符号数的一个最低比特位;
所述偏差计算模块30,用于确定第二次偏置移除后的所述待转换无符号数所处的数值区间,并根据第二次偏置移除后的所述待转换无符号数所处的数值区间,向所述补码转换模块40输出偏差修正值;
所述补码转换模块40,用于接收第二次偏置移除后的所述待转换无符号数、所述偏差修正值和第一预设值,所述第一预设值小于0,且所述第一预设值的绝对值等于所述第一预设温度的绝对值;和用于根据所述偏差修正值和第一预设值,对第二次偏置移除后的所述待转换无符号数进行补码转换,以获得二进制补码形式表示的温度信息。
需要说明的是,所述表示温度信息的待转换无符号数是指sar-adc的输出信号。
具体地,参考表1和表2,表1为10bitsar-adc的比较输出值,表2为10bitsar-adc的无符号数输出值。
表1:10bitsar_adc的输出
表2:10bitsar_adc的无符号整数输出
为了使得待转换无符号数能够向其表示的真实温度值靠近,首先需要第一偏置移除模块10根据所述预设无符号数,对所述待转换无符号数进行第一次偏置移除;然后通过第二偏置移除模块20移除第一次偏置移除后的所述待转换无符号数的一个最低比特位。
此外,参考图3,由于sar-adc输出的无符号数的每个0.5℃是存在一定的偏差的,一般认为两个转换的数字code之间是n+0.5+μ,其中,μ为一个累积误差。这样在多次逼近后,累积误差会高于一个数字code(0.5℃)的变化,这样在补码转换时就会有一个线性偏差。因此,还需要偏差计算模块30确定第二次偏置移除后的所述待转换无符号数所处的数值区间,并根据第二次偏置移除后的所述待转换无符号数所处的数值区间,向所述补码转换模块40输出偏差修正值。
这样在获取了偏差修正值、第二次偏置移除后的所述待转换无符号数后,利用补码转换模块40根据所述偏差修正值和第一预设值,对第二次偏置移除后的所述待转换无符号数进行补码转换,以实现将待转换无符号数转换为表示真实温度的信息的二进制补码形式表示的温度信息的目的。并且考虑到sar-dac的转换具有线性误差,通过第一偏置移除模块10、第二偏置移除模块20对待转换无符号数进行了两次的偏置移除,而且通过偏差计算模块30确定了两次偏置移除后的待转换无符号数偏差修正值,使得补码转换模块40可以在补码转换过程中消除该线性误差,精确的进行待转换无符号数到二进制补码形式表示的温度信息的精确转换。
可选的,在本申请的一个实施例中,所述温度检测装置的温度检测范围为-40℃-159℃,即所述第一预设温度为-40℃,所述预设无符号数为sar-adc输出的表示-40℃的无符号数。
当然地,在本申请的其他实施例中,所述第一预设温度还可以为-30℃或-50℃等,本申请对此并不做限定。
在上述实施例的基础上,在本申请的一个实施例中,仍然参考图2,所述第一偏置移除模块10和补码转换模块40均为加法器。
由于所述第一偏置移除模块10的输入为一正一负,则实际在第一偏置移除模块10中进行的运算为减法运算,同样地,在加法器中进行的运算实际也为减法运算。
即,所述第一偏置移除模块10根据所述预设无符号数,对所述待转换无符号数进行第一次偏置移除具体用于,利用所述待转换无符号数减去所述预设无符号数,以获得第一次偏置移除后的待转换无符号数。
所述补码转换模块40根据所述偏差修正值和第一预设值,对第二次偏置移除后的所述待转换无符号数进行补码转换,以获得二进制补码形式表示的温度信息具体用于,利用第二次偏置移除后的所述待转换无符号数减去所述偏差修正值和所述第一预设值,以获得二进制补码形式表示的温度信息。
可选的,所述偏差计算模块30对第一次偏置移除后的所述待转换无符号数进行第二次偏置移除,以移除第一次偏置移除后的所述待转换无符号数的一个最低比特位具体用于,对第一次偏置移除后的所述待转换无符号数进行除以2的运算,以移除第一次偏置移除后的所述待转换无符号数的一个最低比特位。
参考图4,在图4中,以所述温度检测装置的温度探测范围为-40℃-159℃为例进行说明,图4中标号l10的线段表示所述待转换无符号数,标号l11的线段表示进行了第一次偏置移除后的所述待转换无符号数,标号l12的线段表示进行了第二次偏置移除后的所述待转换无符号数,标号l13表示进行了补码转换后输出的二进制补码形式表示的温度信息,从图4中可以看出,最终输出的二进制补码形式表示的温度信息可以极大地方便上层软件的调用,对用户而言也是直观明了的。
在上述实施例的基础上,在本申请的另一个实施例中,如图5所示,所述偏差计算模块30包括:
判断单元31,用于判断第二次偏置移除后的所述待转换无符号数是否小于第一区间值,如果是,则判定第二次偏置移除后的所述待转换无符号数处于第一数值区间;
如果否,判断第二次偏置移除后的所述待转换无符号数是否小于第二区间值,若是,则判定第二次偏置移除后的所述待转换无符号数处于第二数值区间,若否,则判定第二次偏置移除后的所述待转换无符号数处于第三数值区间;
修正单元32,用于在当第二次偏置移除后的所述待转换无符号数处于第一数值区间时,输出0作为所述偏差修正值;
在当第二次偏置移除后的所述待转换无符号数处于第二数值区间时,输出1作为所述偏差修正值;
在当第二次偏置移除后的所述待转换无符号数处于第三数值区间时,输出2作为所述偏差修正值。
参考图6,图6中除了l12和l13线段外,还示出了l13在进行偏差修正值修正之前的线段l13’。从图6中可以看出,在温度区间为-40℃-159℃的区间内,一共存在了两次由于累积误差累积而形成的线性偏差。因此,在本实施例中,所述判断单元31首先判断第二次偏置移除后的所述待转换无符号数所处的区间范围,然后确定相应的偏差修正值。
参考图7,图7中给出了第一区间值和第二区间值的可行取值,在图7中,所述第一区间值为55,即认为在第二次偏置移除后的所述待转换无符号数大于或等于55时,即存在一个累积的线性偏差,则对应的偏差修正值为1;在第二次偏置移除后的所述待转换无符号数小于55时,即认为不存在线性偏差,则对应的偏差修正值为0;在第二次偏置移除后的所述待转换无符号数大于或等于139时,则认为存在两个累积的线性偏差,则对应的偏差修正值为2。
下面对本申请实施例提供的温度检测方法进行描述,下文描述的温度检测方法与上文描述的温度检测装置可以相互对应参照。
相应的,本申请实施例提供了一种温度检测方法,应用于上述任一实施例所述的温度检测装置,所述温度检测方法包括:
接收表示温度信息的待转换无符号数和表示第一预设温度的预设无符号数;
根据所述预设无符号数,对所述待转换无符号数进行第一次偏置移除;所述第一预设温度为所述温度检测装置的温度探测下限值,所述预设无符号数小于0;
对第一次偏置移除后的所述待转换无符号数进行第二次偏置移除,以移除第一次偏置移除后的所述待转换无符号数的一个最低比特位;
确定第二次偏置移除后的所述待转换无符号数所处的数值区间,并根据第二次偏置移除后的所述待转换无符号数所处的数值区间,向所述补码转换模块输出偏差修正值;
根据所述偏差修正值和第一预设值,对第二次偏置移除后的所述待转换无符号数进行补码转换,以获得二进制补码形式表示的温度信息;所述第一预设值小于0,且所述第一预设值的绝对值等于所述第一预设温度的绝对值。
可选的,所述确定第二次偏置移除后的所述待转换无符号数所处的数值区间,并根据第二次偏置移除后的所述待转换无符号数所处的数值区间,向所述补码转换模块输出偏差修正值包括:
判断第二次偏置移除后的所述待转换无符号数是否小于第一区间值,如果是,则判定第二次偏置移除后的所述待转换无符号数处于第一数值区间;
如果否,判断第二次偏置移除后的所述待转换无符号数是否小于第二区间值,若是,则判定第二次偏置移除后的所述待转换无符号数处于第二数值区间,若否,则判定第二次偏置移除后的所述待转换无符号数处于第三数值区间;
在当第二次偏置移除后的所述待转换无符号数处于第一数值区间时,输出0作为所述偏差修正值;
在当第二次偏置移除后的所述待转换无符号数处于第二数值区间时,输出1作为所述偏差修正值;
在当第二次偏置移除后的所述待转换无符号数处于第三数值区间时,输出2作为所述偏差修正值。
可选的,所述根据所述预设无符号数,对所述待转换无符号数进行第一次偏置移除包括:
利用所述待转换无符号数减去所述预设无符号数,以获得第一次偏置移除后的待转换无符号数。
可选的,所述对第一次偏置移除后的所述待转换无符号数进行第二次偏置移除,以移除第一次偏置移除后的所述待转换无符号数的一个最低比特位包括:
对第一次偏置移除后的所述待转换无符号数进行除以2的运算,以移除第一次偏置移除后的所述待转换无符号数的一个最低比特位。
可选的,所述根据所述偏差修正值和第一预设值,对第二次偏置移除后的所述待转换无符号数进行补码转换,以获得二进制补码形式表示的温度信息包括:
利用第二次偏置移除后的所述待转换无符号数减去所述偏差修正值和所述第一预设值,以获得二进制补码形式表示的温度信息。
综上所述,本申请实施例提供了一种温度检测装置及温度检测方法,其中,所述温度检测装置将获取的表示温度信息的待转换无符号数,通过第一偏置移除模块、第二偏置移除模块、偏差计算模块和补码转换模块的处理,实现了将待转换无符号数转换为表示真实温度的信息的二进制补码形式表示的温度信息的目的,并且考虑到sar-dac的转换具有线性误差,通过第一偏置移除模块、第二偏置移除模块对待转换无符号数进行了两次的偏置移除,而且通过偏差计算模块确定了两次偏置移除后的待转换无符号数偏差修正值,使得补码转换模块可以在补码转换过程中消除该线性误差,精确的进行待转换无符号数到二进制补码形式表示的温度信息的精确转换。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本申请。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本申请的精神或范围的情况下,在其它实施例中实现。因此,本申请将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。