时钟配置的测试方法、装置、介质及电子设备与流程

阅读: 评论:0



1.本发明涉及终端测试技术领域,尤其涉及一种时钟配置的测试方法、装置、介质及电子设备。


背景技术:



2.开发平台会提供时钟接口,供其他驱动获取时钟频率、设置时钟频率、使能时钟等操作。实现时钟接口的驱动的称为时钟驱动器。其中,设置频率接口的实现原理是根据传入的要配置的时钟、时钟目的频率入参,结合芯片寄存器手册将频率值转换为对应的多路选择值和分频值,然后写入对应该时钟的寄存器。获取频率接口实现原理是根据传入的要获取的时钟入参,获取该时钟寄存器的多路选择值和分频值,结合芯片寄存器手册将频率值转换为对应时钟频率返回给调用者。使能接口实现原理是根据传入要配置的时钟入参,设置该时钟的使能寄存器,使得该时钟通路的通路开关根据需要可以进行开或关。可见,一个时钟的配置涉及该时钟对应多路选择寄存器地址和对应一个或多个的比特位、及支持哪些时钟频率;分频寄存器地址和对应一个或多个比特位;使能寄存器地址和对应比特位。
3.时钟通路通常包括可供选择的多种时钟源、一个分频器和一个通路开关。具体地,锁相环路产生高频信号,且又分频各种频率的时钟供需要的模块选择使用。多路选择开关根据需求选择某一频率的时钟进行应用。分频器用于根据需求将选择的时钟源分频为更小的频率。通路开关用于控制时钟通路输出进行应用。
4.目前的设备芯片支持的类似上述通路的时钟通路少则几百个,多则上千个。时钟驱动器需将芯片所支持的许多时钟封装成接口供其他驱动调用。且所提供的时钟都只是接口,时钟驱动器本身并未调用,只是供其他驱动调用。每个时钟均涉及许多信息,包括:多路选择寄存器、分频寄存器、使能寄存器及支持哪些频率,如何判断时钟驱动器配置的时钟所涉及的信息配置是否正确及是否有漏配等情况十分重要。而现有的检测手段只是检测时钟驱动器有没有加载成功,终端能不能正常开机,开机后读取默认频率或者手动读取某个时钟当前频率,并没有有效手段测试时钟配置的信息是否正确或是否遗漏,有必要提供一种新的测试方式以解决现有技术存在的上述问题。


技术实现要素:



5.本发明的目的在于提供一种时钟配置的测试方法、装置、介质及电子设备,用以改善时钟配置的完整性、正确性难以判断的问题。
6.第一方面,本发明提供的所述时钟配置的测试方法包括:获取时钟驱动配置文件,所述时钟驱动配置文件包括芯片中各个时钟通路的控制寄存器的信息;解析所述时钟驱动配置文件,得到各个时钟的时钟标识、每个时钟标识对应的时钟频率参数和控制寄存器的配置参数;测试每个时钟标识对应的控制寄存器的配置参数和时钟频率参数是否正确,得到测试结果。
7.本发明提供的方法的有益效果在于:能够采用预设的测试流程对时钟配置进行测
试,根据配置文件中的信息逐个判断每个待测时钟的各项参数信息是否有误,以及时发现时钟配置的错配、漏配情况,能够及时对时钟配置进行调试,从而有效实现时钟配置的完整性、正确性。
8.一种可能的实施例中,所述获取时钟驱动配置文件,包括:获取芯片的发行版本文件,所述发行版本文件包括芯片中各个时钟通路的控制寄存器的信息;
9.将所述芯片的发行版本文件转换为可扩展标记语言格式的时钟驱动配置文件。
10.所述控制寄存器包括gate寄存器、mux寄存器和div寄存器,所述控制寄存器的配置参数包括:寄存器偏移量、占用的位宽、寄存器地址和时钟使能接口;
11.另一种可能的实施例中,测试每个时钟的时钟标识对应的控制寄存器的配置参数和时钟频率参数是否正确,包括:
12.首先检测所述时钟标识对应的gate寄存器的配置参数是否正确;
13.之后检测所述时钟标识对应的时钟频率参数是否正确;
14.最后检测所述时钟标识对应的mux寄存器和div寄存器的配置参数是否正确。
15.检测所述时钟标识对应的gate寄存器的配置参数是否正确,包括:
16.根据所述时钟标识获取所述时钟标识对应目标时钟的时钟句柄;
17.根据所述时钟句柄调用所述目标时钟的时钟使能接口对所述目标时钟进行开操作;
18.根据所述gate寄存器的寄存器地址和使能比特位,调用获取寄存器接口获取gate寄存器的使能比特位,判断获取的使能比特位的值是否为1;
19.根据所述时钟句柄调用所述目标时钟的时钟使能接口对所述目标时钟进行关操作;
20.根据所述gate寄存器的寄存器地址和使能比特位,调用获取寄存器接口获取gate寄存器的使能比特位,判断获取的使能比特位的值是否为0。
21.其它可能的实施例中,所述检测所述时钟标识对应的时钟频率参数是否正确,包括:
22.根据所述时钟标识获取所述时钟标识对应目标时钟的时钟句柄;
23.根据所述时钟标识的频率对应的mux寄存器和div寄存器的配置参数,通过调用设置寄存器接口设置mux寄存器的值和div寄存器的值;
24.根据所述时钟句柄,调用时钟获取频率接口读取时钟频率,判断获取的频率值是否和所述时钟驱动配置文件中的频率值一致。
25.所述检测所述时钟标识对应的mux寄存器和div寄存器的配置参数是否正确,包括:
26.根据所述时钟标识获取所述时钟标识对应目标时钟的时钟句柄;
27.根据所述时钟句柄和配置文件中对应的时钟频率值,调用时钟设置频率接口设置时钟频率;
28.通过调用获取寄存器接口获取mux寄存器的值和div寄存器的值;
29.判断获取的mux寄存器的值和div寄存器的值是否和所述时钟驱动配置文件中的mux寄存器的值和div寄存器的值一致。
30.第二方面,本发明还提供了一种时钟配置的测试装置,所述装置包括:
31.获取单元,用于获取时钟驱动配置文件,所述时钟驱动配置文件包括芯片中各个时钟通路的控制寄存器的信息;
32.解析单元,用于解析所述时钟驱动配置文件,得到各个时钟的时钟标识、每个时钟标识对应的时钟频率参数和控制寄存器的配置参数;
33.测试单元,用于测试每个时钟标识对应的控制寄存器的配置参数和时钟频率参数是否正确,得到测试结果。
34.本发明所提供的装置的有益效果在于:能够对时钟配置参数进行逐项测试,从而实现对时钟配置的准确性、完整性的校验。能够及时发现时钟配置的错配、漏配情况,便于及时对时钟配置进行调试。
35.所述获取单元获取时钟驱动配置文件,具体用于:
36.获取芯片的发行版本文件,所述发行版本文件包括芯片中各个时钟通路的控制寄存器的信息;
37.将所述芯片的发行版本文件转换为可扩展标记语言格式的时钟驱动配置文件。
38.所述控制寄存器包括gate寄存器、mux寄存器和div寄存器,所述控制寄存器的配置参数包括:寄存器偏移量、占用的位宽、寄存器地址和时钟使能接口;
39.所述测试单元测试每个时钟标识对应的控制寄存器的配置参数和时钟频率参数是否正确,具体用于:
40.首先检测所述时钟标识对应的gate寄存器的配置参数是否正确;
41.之后检测所述时钟标识对应的时钟频率参数是否正确;
42.最后检测所述时钟标识对应的mux寄存器和div寄存器的配置参数是否正确。
43.所述测试单元检测所述时钟标识对应的gate寄存器的配置参数是否正确,具体用于:
44.根据所述时钟标识获取所述时钟标识对应目标时钟的时钟句柄;
45.根据所述时钟句柄调用所述目标时钟的时钟使能接口对所述目标时钟进行开操作;
46.根据所述gate寄存器的寄存器地址和使能比特位,调用获取寄存器接口获取gate寄存器的使能比特位,判断获取的使能比特位的值是否为1;
47.根据所述时钟句柄调用所述目标时钟的时钟使能接口对所述目标时钟进行关操作;
48.根据所述gate寄存器的寄存器地址和使能比特位,调用获取寄存器接口获取gate寄存器的使能比特位,判断获取的使能比特位的值是否为0。
49.所述测试单元检测所述时钟标识对应的时钟频率参数是否正确,具体用于:
50.根据所述时钟标识获取所述时钟标识对应目标时钟的时钟句柄;
51.根据所述时钟标识的频率对应的mux寄存器和div寄存器的配置参数,通过调用设置寄存器接口设置mux寄存器的值和div寄存器的值;
52.根据所述时钟句柄,调用时钟获取频率接口读取时钟频率,判断获取的频率值是否和所述时钟驱动配置文件中的频率值一致。
53.所述测试单元检测所述时钟标识对应的mux寄存器和div寄存器的配置参数是否正确,具体用于:
54.根据所述时钟标识获取所述时钟标识对应目标时钟的时钟句柄;
55.根据所述时钟句柄和配置文件中对应的时钟频率值,调用时钟设置频率接口设置时钟频率;
56.通过调用获取寄存器接口获取mux寄存器的值和div寄存器的值;
57.判断获取的mux寄存器的值和div寄存器的值是否和所述时钟驱动配置文件中的mux寄存器的值和div寄存器的值一致。
58.第三方面,本发明还提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现上述时钟配置的测试方法。
59.第四方面,本发明还提供了一种电子设备,包括:处理器及存储器;所述存储器用于存储计算机程序;所述处理器用于执行所述存储器存储的计算机程序,以使所述电子设备执行上述时钟配置的测试方法。
60.关于上述第二方面至第四方面的有益效果可以参见上述第一方面的描述。
附图说明
61.图1为本发明实施例提供的一种时钟配置的测试方法流程示意图;
62.图2为本发明实施例提供的另一种时钟配置的测试方法流程示意图;
63.图3为本发明实施例提供的一种时钟配置的测试装置示意图;
64.图4为本发明实施例提供的一种电子设备结构示意图。
具体实施方式
65.为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明的一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。除非另外定义,此处使用的技术术语或者科学术语应当为本发明所属领域内具有一般技能的人士所理解的通常意义。本文中使用的“包括”等类似的词语意指出现该词前面的元件或者物件涵盖出现在该词后面列举的元件或者物件及其等同,而不排除其他元件或者物件。
66.针对现有技术存在的问题,本发明的实施例提供了一种时钟配置的测试方法、装置、介质及电子设备。
67.实施例1
68.本实施例提供了一种时钟配置的测试方法。参见说明书附图1,该方法包括:
69.s101,获取时钟驱动配置文件,时钟驱动配置文件包括芯片中各个时钟通路的控制寄存器的信息。
70.其中,获取时钟驱动配置文件的具体方式可以包括:获取芯片的发行版本文件,发行版本文件包括芯片中各个时钟通路的控制寄存器的信息;将芯片的发行版本文件转换为可扩展标记语言格式的时钟驱动配置文件。
71.s102,解析所述时钟驱动配置文件,得到各个时钟的时钟标识、每个时钟标识对应的时钟频率参数和控制寄存器的配置参数。
72.s103,测试每个时钟标识对应的控制寄存器的配置参数和时钟频率参数是否正
确,得到测试结果。
73.在s103中,一种可能的实施例中,测试每个时钟标识对应的控制寄存器的配置参数和时钟频率参数是否正确,具体包括:首先检测时钟标识对应的gate寄存器(使能寄存器)的配置参数是否正确;之后检测时钟标识对应的时钟频率参数是否正确;最后检测时钟标识对应的mux寄存器(多路选择寄存器)和div寄存器(分频寄存器)的配置参数是否正确。
74.在一个具体的实施例中,发行版本文件中的芯片中所包含的各个时钟通路的控制寄存器的信息一般采用表格的形式进行存储,表格与可扩展标记语言格式的文件中需设置对应的标识以使表格支持转换为特定的可扩展标记语言文件。本实施例中,将芯片的发行版本文件转换为可扩展标记语言格式的时钟驱动配置文件包括:在终端内预设特定的可扩展标记语言格式结构化处理代码以实现对表格进行可扩展标记语言格式结构化处理,从而将表格转换形成特定的可扩展标记语言格式的文件。
75.在本实施例中,可扩展标记语言(xml)格式如下表1:
76.表1
[0077][0078][0079]
可见,可扩展标记语言格式结构化处理后的时钟参数支持项目名称区分,各个子系统配置(如gpu,camera,cpu等子模块)。
[0080]
在本实施例中,可扩展标记语言格式结构化处理后:
[0081]
clk config用于配置具体时钟,含时钟名称,如name="gpu_core"。
[0082]
clock_id:用于时钟标识,通过clock id.xml的clock和代码配置的各个时钟关联
映射起来。格式占有4个字节,高2个字节是sys标识,低2个字节是具体sys下的时钟标识。如0x00010005:0001代表某个sys;0005代表该sys的某个clock。
[0083]
使能开关对应gate寄存器地址和控制bit位,如0x8000000地址的bit3用于控制开关使能,那么gate_reg=0x8000000,bit_eb=3。
[0084]
mux寄存器地址和控制bit位,其中shift是比特偏移量,width是位宽(bit个数)。如0x80000004地址的bit[2:0]共3个比特用于控制多路选择选择,那么mux_reg=0x8000004,mux_shift=0,mux_width=3。
[0085]
div寄存器地址和控制bit位,其中shift是比特偏移量,width是位宽(bit个数)。如0x80000004地址的bit[4:3]用于控制mux选择,那么mux_reg=0x8000004,mux_shift=3,mux_width=2。
[0086]
freq是支持的各种时钟源和div分频组合出的支持各种的输出频率,也是通过表格直接转换生成。对于多路时钟源,通过多路选择开关(设置mux寄存器的值)以选择其中的某一路,通过分频系数(设置div寄存器的值)进行分频。具体格式为输出频率及对应的mux寄存器的值和div寄存器的值。如gpu_core输出256m,根据freq=mux_clk/(div+1),需mux选择512m时钟源,div=1;那么freq=512000000,mux=2,div=1。
[0087]
时钟驱动配置文件为预先获取的信息,当对一个设备/终端进行时钟配置的测试时,包括:启动设备/终端,将时钟驱动器初始化,将时钟测试模块初始化。
[0088]
然后,解析时钟驱动配置文件,得到各个时钟的时钟标识、每个时钟标识对应的时钟频率参数和控制寄存器的配置参数。其中,控制寄存器包括gate寄存器、mux寄存器和div寄存器,控制寄存器的配置参数包括:寄存器偏移量、占用的位宽、寄存器地址和时钟使能接口。
[0089]
在另一种可能的实施例中,检测时钟标识对应的gate寄存器的配置参数是否正确,包括:根据时钟句柄调用目标时钟的时钟使能接口对目标时钟进行开操作;根据gate寄存器的寄存器地址和使能比特位,调用获取寄存器接口获取gate寄存器的使能比特位,判断获取的使能比特位的值是否为1;根据时钟句柄调用目标时钟的时钟使能接口对目标时钟进行关操作;根据gate寄存器的寄存器地址和使能比特位,调用获取寄存器接口获取gate寄存器的使能比特位,判断获取的使能比特位的值是否为0。
[0090]
一种可能的实施例中,确定时钟标识对应的gate寄存器的配置参数是否正确具体包括:根据目标时钟为开时对应的比特位的值是否为1、目标时钟为关时对应的比特位的值是否为0,及,调用目标时钟的使能接口对目标时钟进行开关操作,目标时钟为开和为关时分别对应的比特位的值是否正确,确定时钟标识对应的gate寄存器的配置参数是否正确。
[0091]
本发明中,一个时钟能够支持的频率有多种,当检测时钟标识对应的时钟频率参数是否正确时需要对该时钟标识对应的多种支持频率进行逐个检测。具体为检测时钟标识对应的一种支持频率是否正确,然后判断是否存在未进行检测的该时钟标识对应的支持频率;若判定结果为是,则对未进行检测的该时钟标识对应的一种支持频率进行检测,若判定结果为否,则结束检测时钟标识对应的时钟频率参数是否正确的操作。
[0092]
检测时钟标识对应的一种支持频率是否正确包括:根据时钟标识获取时钟标识对应目标时钟的时钟句柄;根据时钟标识的频率对应的mux寄存器和div寄存器的配置参数,通过调用设置寄存器接口设置mux寄存器的值和div寄存器的值;根据时钟句柄,调用时钟
获取频率接口读取时钟频率,判断获取的频率值是否和时钟驱动配置文件中的频率值一致。
[0093]
一种可能的实施例中,检测时钟标识对应的一种支持频率是否正确还可以是包括:根据时钟标识获取时钟标识对应目标时钟的时钟句柄;根据时钟句柄,调用时钟设置频率接口设置时钟频率,然后调用时钟获取频率接口读取频率,确认设置值和获取返回值是否一致。若不一致则时钟标识对应的该支持频率参数不正确,若一致则根据时钟标识的频率对应的mux寄存器和div寄存器的配置参数,通过调用设置寄存器接口设置mux寄存器的值和div寄存器的值;根据时钟句柄,调用时钟获取频率接口读取时钟频率,判断获取的频率值是否和时钟驱动配置文件中的频率值一致。
[0094]
各种时钟源和分频组合会得到多组与时钟频率对应的mux寄存器的值和div寄存器的值,检测时钟标识对应的mux寄存器和div寄存器的配置参数是否正确时,需要对多组与时钟频率对应的mux寄存器的值和div寄存器的值进行逐组检测。具体为检测一组与时钟频率对应的mux寄存器的值和div寄存器的值是否正确,然后判断是否存在未进行检测的与时钟频率对应的mux寄存器的值和div寄存器的值;若判定结果为是,则对未进行检测的一组与时钟频率对应的mux寄存器的值和div寄存器的值进行检测,若判定结果为否,则结束检测钟标识对应的mux寄存器和div寄存器的配置参数是否正确的操作。
[0095]
一种可能的实施例中,检测一组与时钟频率对应的mux寄存器的值和div寄存器的值是否正确包括:根据时钟标识获取时钟标识对应目标时钟的时钟句柄;根据时钟句柄和配置文件中对应的时钟频率值,调用时钟设置频率接口设置时钟频率;通过调用获取寄存器接口获取mux寄存器的值和div寄存器的值;判断获取的mux寄存器的值和div寄存器的值是否和配置文件中的mux寄存器的值和div寄存器的值一致。检测完成后,保存时钟配置参数的测试结果,该结果用于程序调试分析或测试验收。
[0096]
芯片中可以包括多个时钟,对一个时钟的时钟标识对应的控制寄存器的配置参数和时钟频率参数是否正确测试完成后,判断配置文件中是否存在未进行配置参数测试的时钟。若判断结果为是,则对未进行测试的一个时钟的时钟标识对应的控制寄存器的配置参数和时钟频率参数是否正确进行测试;若判断结果为否,则结束本次时钟配置测试。
[0097]
在一个可能的实施例中,测试结果为存在错配或漏配的情况,能够根据测试结果到出错位置,通过人工干预进行时钟配置代码的修正,采用该可扩展标记语言文件能够对修正后的时钟配置重新进行测试,直至使时钟配置完整、正确。
[0098]
为了更加系统的描述上述时钟配置的测试流程,本发明进一步结合图2所示的方法实施例对上述方法进行描述。
[0099]
s201,获取时钟驱动配置文件进行时钟驱动初始化,所述时钟驱动配置文件包括芯片中各个时钟通路的控制寄存器的信息。
[0100]
s202,解析所述时钟驱动配置文件,得到各个时钟的时钟标识、每个时钟标识对应的时钟频率参数和控制寄存器的配置参数。
[0101]
s203,根据各个时钟的时钟标识,逐个测试时钟按照s204至s207进行遍历测试,直至最后一个时钟。
[0102]
s204,检测所述时钟标识对应的gate寄存器的配置参数是否正确。
[0103]
具体检测方法参照上述实施例。
[0104]
s205,检测所述时钟标识对应的时钟频率参数是否正确。
[0105]
具体检测方法参照上述实施例。
[0106]
s206,检测所述时钟标识对应的mux寄存器和div寄存器的配置参数是否正确。
[0107]
具体检测方法参照上述实施例。
[0108]
s207,保存测试结果。
[0109]
本发明的时钟配置的测试方法通过将时钟参数信息以特定的可扩展标记语言格式存储用于时钟配置的测试过程中的时钟配置参数信息调用,能够采用预设的测试流程对时钟配置进行测试,逐个判断每个时钟的各项参数信息是否有误,以及时发现时钟配置的错配、漏配情况,能够及时对时钟配置进行调试,从而有效实现时钟配置的完整性、正确性。进一步,能够避免时钟配置的错误或漏配影响其他关联模块的开发进度、人力投入等情况,提高开发效率和项目进度,减少项目成本。本发明的时钟配置的测试方法可用于进行如手机、平板、、成人手表、车载系统等终端产品的芯片所支持的时钟配置的测试。
[0110]
实施例2
[0111]
参见说明书附图3,本实施例提供了一种时钟配置的测试装置,该装置用于实现实施例1所述的方法。该装置包括:
[0112]
获取单元301,用于获取时钟驱动配置文件,时钟驱动配置文件包括芯片中各个时钟通路的控制寄存器的信息。
[0113]
获取单元301获取时钟驱动配置文件,具体用于:获取芯片的发行版本文件,发行版本文件包括芯片中各个时钟通路的控制寄存器的信息;将芯片的发行版本文件转换为可扩展标记语言格式的时钟驱动配置文件。
[0114]
解析单元302,用于解析时钟驱动配置文件,得到各个时钟的时钟标识、每个时钟标识对应的时钟频率参数和控制寄存器的配置参数。其中,控制寄存器包括gate寄存器、mux寄存器和div寄存器,控制寄存器的配置参数包括:寄存器偏移量、占用的位宽、寄存器地址和时钟使能接口;
[0115]
测试单元303,用于测试每个时钟标识对应的控制寄存器的配置参数和时钟频率参数是否正确,得到测试结果。
[0116]
测试单元303测试每个时钟标识对应的控制寄存器的配置参数和时钟频率参数是否正确,具体用于:首先检测时钟标识对应的gate寄存器的配置参数是否正确;之后检测时钟标识对应的时钟频率参数是否正确;最后检测时钟标识对应的mux寄存器和div寄存器的配置参数是否正确。
[0117]
测试单元303检测时钟标识对应的gate寄存器的配置参数是否正确,具体用于:根据时钟标识获取时钟标识对应目标时钟的时钟句柄;根据时钟句柄调用目标时钟的时钟使能接口对目标时钟进行开操作;根据gate寄存器的寄存器地址和使能比特位,调用获取寄存器接口获取gate寄存器的使能比特位,判断获取的使能比特位的值是否为1;根据时钟句柄调用目标时钟的时钟使能接口对目标时钟进行关操作;根据gate寄存器的寄存器地址和使能比特位,调用获取寄存器接口获取gate寄存器的使能比特位,判断获取的使能比特位的值是否为0。
[0118]
测试单元303检测时钟标识对应的时钟频率参数是否正确时,对该时钟标识对应的多种支持频率进行逐个检测,具体用于:根据时钟标识获取时钟标识对应目标时钟的时
钟句柄;根据时钟标识的频率对应的mux寄存器和div寄存器的配置参数,通过调用设置寄存器接口设置mux寄存器的值和div寄存器的值;根据时钟句柄,调用时钟获取频率接口读取时钟频率,判断获取的频率值是否和时钟驱动配置文件中的频率值一致。
[0119]
测试单元303检测时钟标识对应的mux寄存器和div寄存器的配置参数是否正确时,对多组与时钟频率对应的mux寄存器的值和div寄存器的值进行逐组检测,具体用于:根据时钟标识获取时钟标识对应目标时钟的时钟句柄;根据时钟句柄和配置文件中对应的时钟频率值,调用时钟设置频率接口设置时钟频率;通过调用获取寄存器接口获取mux寄存器的值和div寄存器的值;判断获取的mux寄存器的值和div寄存器的值是否和配置文件中的mux寄存器的值和div寄存器的值一致。上述方法实施例涉及的各步骤的所有相关内容均可以援引到对应功能模块的功能描述,在此不再赘述。
[0120]
在本技术的另一些实施例中,本技术实施例公开了一种电子设备,如图4所示,该电子设备可以包括:一个或多个处理器401;存储器402;显示器403;一个或多个应用程序(未示出);以及一个或多个计算机程序404,上述各器件可以通过一个或多个通信总线405连接。其中该一个或多个计算机程序404被存储在上述存储器402中并被配置为被该一个或多个处理器401执行,该一个或多个计算机程序404包括指令,上述指令可以用于执行如图1、图2及相应实施例中的各个步骤。
[0121]
通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
[0122]
在本技术实施例各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
[0123]
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本技术实施例的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器执行本技术各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:快闪存储器、移动硬盘、只读存储器、随机存取存储器、磁碟或者光盘等各种可以存储程序代码的介质。
[0124]
以上所述,仅为本技术实施例的具体实施方式,但本技术实施例的保护范围并不局限于此,任何在本技术实施例揭露的技术范围内的变化或替换,都应涵盖在本技术实施例的保护范围之内。因此,本技术实施例的保护范围应以所述权利要求的保护范围为准。

技术特征:


1.一种时钟配置的测试方法,其特征在于,所述方法包括:获取时钟驱动配置文件,所述时钟驱动配置文件包括芯片中各个时钟通路的控制寄存器的信息;解析所述时钟驱动配置文件,得到各个时钟的时钟标识、每个时钟标识对应的时钟频率参数和控制寄存器的配置参数;测试每个时钟标识对应的控制寄存器的配置参数和时钟频率参数是否正确,得到测试结果。2.根据权利要求1所述的方法,其特征在于,所述获取时钟驱动配置文件,包括:获取芯片的发行版本文件,所述发行版本文件包括芯片中各个时钟通路的控制寄存器的信息;将所述芯片的发行版本文件转换为可扩展标记语言格式的时钟驱动配置文件。3.根据权利要求1所述的方法,其特征在于,所述控制寄存器包括gate寄存器、mux寄存器和div寄存器,所述控制寄存器的配置参数包括:寄存器偏移量、占用的位宽、寄存器地址和时钟使能接口;测试每个时钟的时钟标识对应的控制寄存器的配置参数和时钟频率参数是否正确,包括:首先检测所述时钟标识对应的gate寄存器的配置参数是否正确;之后检测所述时钟标识对应的时钟频率参数是否正确;最后检测所述时钟标识对应的mux寄存器和div寄存器的配置参数是否正确。4.根据权利要求3所述的方法,其特征在于,检测所述时钟标识对应的gate寄存器的配置参数是否正确,包括:根据所述时钟标识获取所述时钟标识对应目标时钟的时钟句柄;根据所述时钟句柄调用所述目标时钟的时钟使能接口对所述目标时钟进行开操作;根据所述gate寄存器的寄存器地址和使能比特位,调用获取寄存器接口获取gate寄存器的使能比特位,判断获取的使能比特位的值是否为1;根据所述时钟句柄调用所述目标时钟的时钟使能接口对所述目标时钟进行关操作;根据所述gate寄存器的寄存器地址和使能比特位,调用获取寄存器接口获取gate寄存器的使能比特位,判断获取的使能比特位的值是否为0。5.根据权利要求3所述的方法,其特征在于,所述检测所述时钟标识对应的时钟频率参数是否正确,包括:根据所述时钟标识获取所述时钟标识对应目标时钟的时钟句柄;根据所述时钟标识的频率对应的mux寄存器和div寄存器的配置参数,通过调用设置寄存器接口设置mux寄存器的值和div寄存器的值;根据所述时钟句柄,调用时钟获取频率接口读取时钟频率,判断获取的频率值是否和所述时钟驱动配置文件中的频率值一致。6.根据权利要求3所述的方法,其特征在于,所述检测所述时钟标识对应的mux寄存器和div寄存器的配置参数是否正确,包括:根据所述时钟标识获取所述时钟标识对应目标时钟的时钟句柄;根据所述时钟句柄和配置文件中对应的时钟频率值,调用时钟设置频率接口设置时钟
频率;通过调用获取寄存器接口获取mux寄存器的值和div寄存器的值;判断获取的mux寄存器的值和div寄存器的值是否和所述时钟驱动配置文件中的mux寄存器的值和div寄存器的值一致。7.一种时钟配置的测试装置,其特征在于,所述装置包括:获取单元,用于获取时钟驱动配置文件,所述时钟驱动配置文件包括芯片中各个时钟通路的控制寄存器的信息;解析单元,用于解析所述时钟驱动配置文件,得到各个时钟的时钟标识、每个时钟标识对应的时钟频率参数和控制寄存器的配置参数;测试单元,用于测试每个时钟标识对应的控制寄存器的配置参数和时钟频率参数是否正确,得到测试结果。8.根据权利要求7所述的装置,其特征在于,所述获取单元获取时钟驱动配置文件,具体用于:获取芯片的发行版本文件,所述发行版本文件包括芯片中各个时钟通路的控制寄存器的信息;将所述芯片的发行版本文件转换为可扩展标记语言格式的时钟驱动配置文件。9.根据权利要求7所述的装置,其特征在于,所述控制寄存器包括gate寄存器、mux寄存器和div寄存器,所述控制寄存器的配置参数包括:寄存器偏移量、占用的位宽、寄存器地址和时钟使能接口;所述测试单元测试每个时钟标识对应的控制寄存器的配置参数和时钟频率参数是否正确,具体用于:首先检测所述时钟标识对应的gate寄存器的配置参数是否正确;之后检测所述时钟标识对应的时钟频率参数是否正确;最后检测所述时钟标识对应的mux寄存器和div寄存器的配置参数是否正确。10.根据权利要求7所述的装置,其特征在于,所述测试单元检测所述时钟标识对应的gate寄存器的配置参数是否正确,具体用于:根据所述时钟标识获取所述时钟标识对应目标时钟的时钟句柄;根据所述时钟句柄调用所述目标时钟的时钟使能接口对所述目标时钟进行开操作;根据所述gate寄存器的寄存器地址和使能比特位,调用获取寄存器接口获取gate寄存器的使能比特位,判断获取的使能比特位的值是否为1;根据所述时钟句柄调用所述目标时钟的时钟使能接口对所述目标时钟进行关操作;根据所述gate寄存器的寄存器地址和使能比特位,调用获取寄存器接口获取gate寄存器的使能比特位,判断获取的使能比特位的值是否为0。11.根据权利要求7所述的装置,其特征在于,所述测试单元检测所述时钟标识对应的时钟频率参数是否正确,具体用于:根据所述时钟标识获取所述时钟标识对应目标时钟的时钟句柄;根据所述时钟标识的频率对应的mux寄存器和div寄存器的配置参数,通过调用设置寄存器接口设置mux寄存器的值和div寄存器的值;根据所述时钟句柄,调用时钟获取频率接口读取时钟频率,判断获取的频率值是否和
所述时钟驱动配置文件中的频率值一致。12.根据权利要求7所述的装置,其特征在于,所述测试单元检测所述时钟标识对应的mux寄存器和div寄存器的配置参数是否正确,具体用于:根据所述时钟标识获取所述时钟标识对应目标时钟的时钟句柄;根据所述时钟句柄和配置文件中对应的时钟频率值,调用时钟设置频率接口设置时钟频率;通过调用获取寄存器接口获取mux寄存器的值和div寄存器的值;判断获取的mux寄存器的值和div寄存器的值是否和所述时钟驱动配置文件中的mux寄存器的值和div寄存器的值一致。13.一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至6中任一项所述的时钟配置的测试方法。14.一种电子设备,其特征在于,包括:处理器及存储器;所述存储器用于存储计算机程序;所述处理器用于执行所述存储器存储的计算机程序,以使所述电子设备执行权利要求1至6中任一项所述的时钟配置的测试方法。

技术总结


本发明提供了一种时钟配置的测试方法、装置、介质及电子设备。测试方法包括:获取时钟驱动配置文件,时钟驱动配置文件包括芯片中各个时钟通路的控制寄存器的信息;解析时钟驱动配置文件,得到各个时钟的时钟标识、每个时钟标识对应的时钟频率参数和控制寄存器的配置参数;测试每个时钟标识对应的控制寄存器的配置参数和时钟频率参数是否正确,得到测试结果。采用该测试方法和通过应用该测试方法的装置、介质及电子设备均可实现对时钟配置参数进行逐项测试,实现对时钟配置的完整性、正确性的校验。校验。校验。


技术研发人员:

汤志锋 吴雄鹏

受保护的技术使用者:

厦门紫光展锐科技有限公司

技术研发日:

2022.09.16

技术公布日:

2022/12/9

本文发布于:2022-12-14 11:23:04,感谢您对本站的认可!

本文链接:https://patent.en369.cn/patent/1/33663.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:时钟   寄存器   所述   标识
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2022 Comsenz Inc.Powered by © 369专利查询检索平台 豫ICP备2021025688号-20 网站地图