一种页表创建方法、处理器验证方法、装置及电子设备制造方法及图纸

技术编号:37122507 阅读:14 留言:0更新日期:2023-04-01 05:18
本申请的实施例公开了一种页表创建方法、处理器验证方法、装置及电子设备,涉及处理器验证技术领域,为便于提高处理器验证效率而发明专利技术。所述方法,包括:根据预设的测试代码所需的最大访问内存地址,确定所要转换的虚拟地址范围;根据所述虚拟地址范围,为各级页表申请所需要的地址空间;初始化各级页表,以将下一级页表的基地址填入上一级页表的页表项中,将虚拟地址的高位填入最后一级页表的页表项中;其中,所述虚拟地址的高位为所述虚拟地址中除页内偏移位之外的比特位。本申请适用于对处理器进行验证。进行验证。进行验证。

【技术实现步骤摘要】
一种页表创建方法、处理器验证方法、装置及电子设备


[0001]本申请涉及处理器验证
,尤其涉及一种页表创建方法、处理器验证方法、装置、电子设备及可读存储介质。

技术介绍

[0002]分页机制在处理器中具有重要的地位。在处理器开启分页机制之前,需要系统初始化相应的页表,通常是动态分配一段内存空间用于存放页表,通过该页表能够将虚拟地址转换为物理地址。在对处理器进行验证过程中会产生大量地缺页异常,验证会被中断而进入缺页异常处理服务程序中需要分配所需要的页表,而这些异常处理服务程序会大大降低处理器的验证效率。

技术实现思路

[0003]有鉴于此,本申请实施例提供一种页表创建方法、处理器验证方法、装置、电子设备及可读存储介质,便于提高处理器验证效率。
[0004]第一方面,本申请实施例提供一种页表创建方法,包括:根据预设的测试代码所需的最大访问内存地址,确定所要转换的虚拟地址范围;根据所述虚拟地址范围,为各级页表申请所需要的地址空间;初始化各级页表,以将下一级页表的基地址填入上一级页表的页表项中,将虚拟地址的高位填入最后一级页表的页表项中;其中,所述虚拟地址的高位为所述虚拟地址中除页内偏移位之外的比特位。
[0005]根据本申请实施例的一种具体实现方式,初始化后的各级页表用于验证处理器;在为各级页表申请所需要的地址空间之前,所述方法还包括:选择分页模式和页面大小;根据待验证处理器的内核运行模式、分页模式和页面大小,以及预先建立的运行模式、分页模式、页面大小和页表转换级数之间的映射关系,确定页表转换级数。
[0006]根据本申请实施例的一种具体实现方式,所述选择分页模式,包括:根据内核运行模式,选择分页模式。
[0007]根据本申请实施例的一种具体实现方式,所述选择页面大小,包括:选择页面大小为4K,2M或1G。
[0008]根据本申请实施例的一种具体实现方式,所述内核运行模式,包括:经典运行模式或长运行模式。
[0009]第二方面,本申请实施例提供一种处理器验证方法,其特征在于,应用于处理器验证系统,所述验证方法包括:确定所述验证系统的最大访问内存地址,以确定所要转换的虚拟地址范围;根据所述虚拟地址范围,为各级页表申请所需要的地址空间;初始化各级页表,以将下一级页表的基地址填入上一级页表的页表项中,将虚拟地址的高位填入最后一级页表的页表项中;其中,所述虚拟地址的高位为所述虚拟地址中除页内偏移位之外的比特位;将第一级页表的基地址更新到CR3控制寄存器中,并使能分页机制;根据CR3控制寄存器中的第一级页表的基地址以及初始化后的各级页表,测试代码获取目标物理地址上的数
据,和/或向目标物理地址写入数据,以根据所述数据对所述处理器进行验证。
[0010]根据本申请实施例的一种具体实现方式,在为各级页表申请所需要的地址空间之前,所述方法还包括:确定所述验证系统所要开启的分页模式和页面大小;根据所述验证系统启动进入的内核运行模式、分页模式和页面大小,以及预先建立的运行模式、分页模式、页面大小和页表转换级数之间的映射关系,确定页表转换级数。
[0011]第三方面,本申请实施例提供页表创建装置,包括:第一确定模块,用于根据预设的测试代码所需的最大访问内存地址,确定所要转换的虚拟地址范围;第一申请模块,用于根据所述虚拟地址范围,为各级页表申请所需要的地址空间;第一初始化模块,用于初始化各级页表,以将下一级页表的基地址填入上一级页表的页表项中,将虚拟地址的高位填入最后一级页表的页表项中;其中,所述虚拟地址的高位为所述虚拟地址中除页内偏移位之外的比特位。
[0012]根据本申请实施例的一种具体实现方式,所述装置还包括:选择模块,用于在所述第一申请模块为各级页表申请所需要的地址空间之前,选择分页模式和页面大小;第二确定模块,用于根据所述处理器的内核运行模式、分页模式和页面大小,以及预先建立的运行模式、分页模式、页面大小和页表转换级数之间的映射关系,确定页表转换级数。
[0013]根据本申请实施例的一种具体实现方式,所述选择模块,具体用于:根据内核运行模式,选择分页模式。
[0014]根据本申请实施例的一种具体实现方式,所述选择模块,具体用于:选择页面大小为4K,2M或1G。
[0015]根据本申请实施例的一种具体实现方式,所述内核运行模式,包括:经典运行模式或长运行模式。
[0016]第四方面,本申请实施例提供处理器验证装置,应用于处理器验证系统,所述验证装置包括:第三确定模块,用于确定所述验证系统的最大访问内存地址,以确定所要转换的虚拟地址范围;第二申请模块,用于根据所述虚拟地址范围,为各级页表申请所需要的地址空间;第二初始化模块,用于初始化各级页表,以将下一级页表的基地址填入上一级页表的页表项中,将虚拟地址的高位填入最后一级页表的页表项中;其中,所述虚拟地址的高位为所述虚拟地址中除页内偏移位之外的比特位;更新模块,用于将第一级页表的基地址更新到CR3控制寄存器中,并使能分页机制;验证模块,用于根据CR3控制寄存器中的第一级页表的基地址以及初始化后的各级页表,测试代码获取目标物理地址上的数据,和/或向目标物理地址写入数据,以根据所述数据对所述处理器进行验证。
[0017]根据本申请实施例的一种具体实现方式,所述装置还包括:第四确定模块,用于在所述第二申请模块为各级页表申请所需要的地址空间之前,确定所述验证系统所要开启的分页模式和页面大小;第五确定模块,用于根据所述验证系统启动进入的内核运行模式、分页模式和页面大小,以及预先建立的运行模式、分页模式、页面大小和页表转换级数之间的映射关系,确定页表转换级数。
[0018]第五方面,本申请实施例提供一种电子设备,所述电子设备包括:壳体、处理器、存储器、电路板和电源电路,其中,电路板安置在壳体围成的空间内部,处理器和存储器设置在电路板上;电源电路,用于为上述电子设备的各个电路或器件供电;存储器用于存储可执行程序代码;处理器通过读取存储器中存储的可执行程序代码来运行与可执行程序代码对
应的程序,用于执行前述任一实现方式所述的页表创建方法或所述的处理器验证方法。
[0019]第六方面,本申请实施例提供一种计算机可读存储介质,所述计算机可读存储介质存储有一个或者多个程序,所述一个或者多个程序可被一个或者多个处理器执行,以实现前述任一实现方式所述的页表创建方法或所述的处理器验证方法。
[0020]本实施例的页表创建方法、处理器验证方法、装置、电子设备及可读存储介质,根据预设的测试代码所需的最大访问内存地址,确定所要转换的虚拟地址范围,确定所要转换的虚拟地址范围,根据虚拟地址范围,为各级页表申请所需要的地址空间,初始化各级页表,以将下一级页表的基地址填入上一级页表的页表项中,将虚拟地址的高位填入最后一级页表的页表项中,其中,所述虚拟地址的高位为所述虚拟地址中除页内偏移位之外的比特位。
附图说明
[0021]为了更清楚地说明本申请实施例或现有技术中的技术方案,下面本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种页表创建方法,其特征在于,包括:根据预设的测试代码所需的最大访问内存地址,确定所要转换的虚拟地址范围;根据所述虚拟地址范围,为各级页表申请所需要的地址空间;初始化各级页表,以将下一级页表的基地址填入上一级页表的页表项中,将虚拟地址的高位填入最后一级页表的页表项中;其中,所述虚拟地址的高位为所述虚拟地址中除页内偏移位之外的比特位。2.根据权利要求1所述的方法,其特征在于,初始化后的各级页表用于验证处理器;在为各级页表申请所需要的地址空间之前,所述方法还包括:选择分页模式和页面大小;根据待验证处理器的内核运行模式、分页模式和页面大小,以及预先建立的运行模式、分页模式、页面大小和页表转换级数之间的映射关系,确定页表转换级数。3.根据权利要求2所述的方法,其特征在于,所述选择分页模式,包括:根据所述内核运行模式,选择分页模式。4.根据权利要求2所述的方法,其特征在于,所述内核运行模式,包括:经典运行模式或长运行模式。5.一种处理器验证方法,其特征在于,应用于处理器验证系统,所述验证方法包括:确定所述验证系统的最大访问内存地址,以确定所要转换的虚拟地址范围;根据所述虚拟地址范围,为各级页表申请所需要的地址空间;初始化各级页表,以将下一级页表的基地址填入上一级页表的页表项中,将虚拟地址的高位填入最后一级页表的页表项中;其中,所述虚拟地址的高位为所述虚拟地址中除页内偏移位之外的比特位;将第一级页表的基地址更新到CR3控制寄存器中,并使能分页机制;根据CR3控制寄存器中的第一级页表的基地址以及初始化后的各级页表,测试代码获取目标物理地址上的数据,和/或向目标物理地址写入数据,以根据所述数据对所述处理器进行验证。6.根据权利要求5所述的方法,其特征在于,在为各级页表申请所需要的地址空间之前,所述方法还包括:确定所述验证系统所要开启的分页模式和页面大小;根据所述验证系统启动进入的内核运行模式、分页模式和页面大小,以及预先建立的运行模式、分页模式、页面大小和页表转换级数之间的映射关系,确定页表转换级数。7.一种页表创建装置,其特征在于,包括:第一确定模块,用于根据预设的测试代码所需的最大访问内存地址,确定所要转换的虚拟地址范围;第一申请模块,用于根据所述虚拟地址范围,为各级页表申请所需要的地址空间;第一初始化模块,用于初始化各级页表,以将下一级页表的基地址填入上一级页表的页表项中,将虚拟地址的高位填入最后一级页表的页表项中;其中,所述虚拟地址的高位为所述虚拟地址中除页内偏移位之外的比特位。8....

【专利技术属性】
技术研发人员:杨振吴敌陈玉龙张攀勇
申请(专利权)人:成都海光集成电路设计有限公司
类型:发明
国别省市:

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

1