一种计算机实时时钟和系统时钟的纳秒级测试方法技术方案

技术编号:13587573 阅读:91 留言:0更新日期:2016-08-25 11:19
本发明专利技术公开了一种计算机实时时钟和系统时钟的纳秒级测试方法,所述方法通过利用计算机实时时钟,系统时钟和CPU时间戳相互比对来测试实时时钟和系统时钟设计和生产问题。本发明专利技术方法可以大大节省测试时间,并有效解决了计算机生产中实时时钟和系统时钟测试问题,大大节省了测试成本,提高了产品出货品质。

【技术实现步骤摘要】

本专利技术涉及计算机系统测试
,具体涉及一种计算机实时时钟(CMOS时钟)和系统时钟的纳秒级测试方法,具体是利用计算机实时时钟(CMOS时钟),系统时钟和CPU时间戳相互比对来测试实时时钟和系统时钟设计和生产问题,此方法可以大大节省测试时间,并有效解决了计算机生产中实时时钟和系统时钟测试问题,大大节省了测试成本,提高了产品出货品质。
技术介绍
当前测试计算机实时时钟(CMOS时钟)多采用给计算机设置正确的CMOS时间,AC断电,然后静置计算机几天,再开机比对时间是否有偏差;针对系统时钟测试则采用计算机开机进OS,然后设置系统时钟,静置计算机几天,再看系统时钟是否有偏差,以此判断实时时钟和系统时钟偏差是否在设计规范内,采用这种测试方法从计算机设计验证阶段会浪费大量时间和资源来测试时钟问题,在计算机生产验证阶段则无法满足生产验证所需要的短时间内做功能测试需求。
技术实现思路
本专利技术要解决的技术问题是:针对以上问题,本专利技术提出了一种计算机实时时钟和系统时钟的纳秒级测试方法。本专利技术所采用的技术方案为:一种计算机实时时钟和系统时钟的纳秒级测试方法,所述方法通过利用计算机实时时钟(CMOS时钟),系统时钟和CPU时间戳相互比对来测试实时时钟和系统时钟设计和生产问题。所述方法实现过程如下:1)读取CMOS时钟整一秒时间,抓取CPU时间戳变化值;2)读取系统时钟整一秒时间,抓取CPU时间戳变化值;3)比较CMOS时钟变化一秒和系统时钟同样变化一秒CPU时间戳差异;因为CPU时间戳1秒计数次数和CPU主频值一致,所以可以利用CPU时间戳来将时间测试精确到纳秒,即时间戳计数一次时间为CPU主频分之一秒, 当前CPU主频都在GHZ以上,CPU主频分之一秒为纳秒级;4)比对一天时间差异秒数(放大数值,更直观)即:24小时*3600秒*两个时钟CPU时间戳差/CPU主频。时间戳(timestamp),通常是一个字符序列,唯一地标识某一刻的时间。所述测试方法具体操作步骤如下:1)循环读取计算机CMOS时间,一旦秒变化,则读出此时CMOS时间秒记录为time1和CPU时间戳记录为timestamp1;2)继续循环读取计算机CMOS时间,一旦时间秒与time1不同,则记录CPU时间戳为timestamp2;3)然后计算出两次CPU时间戳差值为diff1,diff1=timestamp2-timestamp1;4)读取当前CPU时间戳为timestamp3,然后系统等待1秒钟,例如使用DOS函数Delay(1000)或linux函数Sleep(1);5)读取当前CPU时间戳timestamp4;6)计算出第四步和第五步CPU时间戳差值为diff2,diff2=timestamp4-timestamp3,其实diff2也是当前使用CPU的主频;7)计算两次CPU时间戳差值为timeDiff,timeDiff=|diff2-diff1|,即diff2-diff1的绝对值,timeDiff为1秒时间内CMOS时钟和系统时钟相差多少纳秒。8)计算一天中CMOS时钟和系统时钟差值为diffofday,diffofday=3600*24*timeDiff/diff2, 其中timeDiff/diff2为1秒钟CMOS时钟和系统时钟相差多少秒。9)如果diffofday不在设计差值内,则为测试失败(fail)。所述方法操作流程如下:1)架设测试计算机;2)运行根据测试内容编写的软件;3)查看报错信息;4)测试成功即产品出货或设计验证通过,测试失败即产品不能出货或设计验证存在问题。本专利技术的有益效果为:本专利技术方法可以大大节省测试时间,并有效解决了计算机生产中实时时钟和系统时钟测试问题,大大节省了测试成本,提高了产品出货品质。附图说明图1为本专利技术操作流程图。具体实施方式下面结合说明书附图,根据具体实施方式对本专利技术进一步说明:实施例1:一种计算机实时时钟和系统时钟的纳秒级测试方法,所述方法通过利用计算机实时时钟(CMOS时钟),系统时钟和CPU时间戳相互比对来测试实时时钟和系统时钟设计和生产问题。实施例2在实施例1的基础上,本实施例所述方法实现过程如下:1)读取CMOS时钟整一秒时间,抓取CPU时间戳变化值;2)读取系统时钟整一秒时间,抓取CPU时间戳变化值;3)比较CMOS时钟变化一秒和系统时钟同样变化一秒CPU时间戳差异;因为CPU时间戳1秒计数次数和CPU主频值一致,所以可以利用CPU时间戳来将时间测试精确到纳秒,即时间戳计数一次时间为CPU主频分之一秒, 当前CPU主频都在GHZ以上,CPU主频分之一秒为纳秒级;4)比对一天时间差异秒数(放大数值,更直观)即:24小时*3600秒*两个时钟CPU时间戳差/CPU主频。时间戳(timestamp),通常是一个字符序列,唯一地标识某一刻的时间。实施例3在实施例1或2的基础上,本实施例所述测试方法具体操作步骤如下:1)循环读取计算机CMOS时间,一旦秒变化,则读出此时CMOS时间秒记录为time1和CPU时间戳记录为timestamp1;2)继续循环读取计算机CMOS时间,一旦时间秒与time1不同,则记录CPU时间戳为timestamp2;3)然后计算出两次CPU时间戳差值为diff1,diff1=timestamp2-timestamp1;4)读取当前CPU时间戳为timestamp3,然后系统等待1秒钟,例如使用DOS函数Delay(1000)或linux函数Sleep(1);5)读取当前CPU时间戳timestamp4;6)计算出第四步和第五步CPU时间戳差值为diff2,diff2=timestamp4-timestamp3,其实diff2也是当前使用CPU的主频;7)计算两次CPU时间戳差值为timeDiff,timeDiff=|diff2-diff1|,即diff2-diff1的绝对值,timeDiff为1秒时间内CMOS时钟和系统时钟相差多少纳秒。8)计算一天中CMOS时钟和系统时钟差值为diffofday,diffofday=3600*24*timeDiff/diff2, 其中timeDiff/diff2为1秒钟CMOS时钟和系统时钟相差多少秒。9)如果diffofday不在设计差值内,则为测试失败(fail)。实施例4如图1所示,在实施例3的基础上,本实施例所述方法操作流程如下:1)架设测试计算机;2)运行根据测试内容编写的软件;3)查看报错信息;4)测试成功即产品出货或设计验证通过,测试失败即产品不能出货或设计验证存在问题。以上实施方式仅用于说明本专利技术,而并非对本专利技术的限制,有关
的普通技术人员,在不脱离本专利技术的精神和范围的情况下,还可以做出各种变化和变型,因此所有等同的技术方案也属于本专利技术的范畴,本专利技术的专利保护范围应由权利要求限定。本文档来自技高网
...

【技术保护点】
一种计算机实时时钟和系统时钟的纳秒级测试方法,其特征在于:所述方法通过利用计算机实时时钟,系统时钟和CPU时间戳相互比对来测试实时时钟和系统时钟设计和生产问题。

【技术特征摘要】
1.一种计算机实时时钟和系统时钟的纳秒级测试方法,其特征在于:所述方法通过利用计算机实时时钟,系统时钟和CPU时间戳相互比对来测试实时时钟和系统时钟设计和生产问题。2.根据权利要求1所述的一种计算机实时时钟和系统时钟的纳秒级测试方法,其特征在于,所述方法实现过程如下:1)读取CMOS时钟整一秒时间,抓取CPU时间戳变化值;2)读取系统时钟整一秒时间,抓取CPU时间戳变化值;3)比较CMOS时钟变化一秒和系统时钟同样变化一秒CPU时间戳差异;4)比对一天时间差异秒数。3.根据权利要求1或2所述的一种计算机实时时钟和系统时钟的纳秒级测试方法,其特征在于,所述测试方法具体操作步骤如下:1)循环读取计算机CMOS时间,一旦秒变化,则读出此时CMOS时间秒记录为time1和CPU时间戳记录为timestamp1;2)继续循环读取计算机CMOS时间,一旦时间秒与time1不同,则记录CPU时间戳为timestamp2;3)然后计算出两次CPU时间戳差值为diff1,diff1=timestamp2-timestamp1;4)读...

【专利技术属性】
技术研发人员:孙连震王佩
申请(专利权)人:浪潮电子信息产业股份有限公司
类型:发明
国别省市:山东;37

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1