页表转换方法、页表转换器、SOC及电子设备与流程

文档序号:35393256发布日期:2023-09-09 15:04阅读:18来源:国知局
本公开涉及页表转换,尤其涉及一种页表转换方法、页表转换器、soc及电子设备。
背景技术
::1、使用vm(virtual memory,虚拟存储器)的soc(system on chip,片上系统)可能包括多个功能模块(ip core),每个ip core存在对应的页表(page table)以及mmu(memorymanagement unit,内存管理单元),各个ip core可访问虚拟地址va(virtual address),并通过对应的mmu将va转换成物理地址pa(physical address),最终从存储器中获取数据返回给ip core,以完成一次数据访问。处于同一个soc内的各个ip core之间可能存在进行数据交互的需求,因此,在不同ip core的页表中存在需保持同步的页表,这部分需保持同步的页表所表征的va<->pa的逻辑映射关系完全相同。2、由于不同ip core所使用的页表格式存在差异,因此,在传统的soc架构下,在soc的存储器内需要为每个ip core存储一份与其页表格式匹配的页表,ip core在使用时从存储器中加载自己的页表,相应的,在存储器内需要保存多份页表格式不同,但实质所表示的逻辑映射关系相同的页表,增加了存储资源的消耗。技术实现思路1、本公开的目的是提供一种页表转换方法、页表转换器、soc及电子设备,可以减少对soc内的存储资源的消耗,有利于提高存储资源的利用率。2、根据本公开的一个方面,提供一种页表转换方法,应用于与ip core连接的页表转换器,该方法包括:接收所述ip core发送的针对目标信息的获取请求;判断所述目标信息是否属于预先采用自定义页表格式配置的共享页表;若是,获取所述共享页表中与所述目标信息对应的页表信息;根据预先配置的页表转换规则,将所述页表信息从所述自定义页表格式转换成所述ip core所使用的页表格式后,返回给所述ip core;所述共享页表是多个不同ip core需保持同步的页表。3、本公开一种可行的实现方式中,在所述获取请求中携带用于表征所述目标信息所在的物理地址的第一信息,在所述页表转换器内预先配置用于表征保存所述共享页表的物理地址的第二信息集合;所述判断所述目标信息是否属于预先采用自定义页表格式配置的共享页表,包括:判断所述第一信息是否属于所述第二信息集合;在属于时,表征所述目标信息属于所述共享页表。4、本公开一种可行的实现方式中,所述第一信息以及所述第二信息均为物理地址;或者所述第一信息以及所述第二信息均为用于表征物理地址的标识位。5、本公开一种可行的实现方式中,所述获取所述共享页表中与所述目标信息对应的页表信息,包括:将所述获取请求通过片上总线网络路由至用于保存所述共享页表的存储器,并获取所述存储器根据所述获取请求返回的所述页表信息。6、本公开一种可行的实现方式中,所述ip core所使用的页表格式的位宽为n,所述自定义页表格式的位宽为m,n≠m且均为大于0的正整数,在所述将所述获取请求通过片上总线网络路由至用于保存所述共享页表的存储器之前,所述方法还包括:将所述获取请求中,用于表示所述目标信息的数据位从所述n位调整成所述m位。7、本公开一种可行的实现方式中,所述将所述页表信息从所述自定义页表格式转换成所述ip core所使用的页表格式,包括:从所述页表信息所包括的各个字段中筛选目标字段,所述目标字段为所述ip core所使用的页表格式包括的字段;将所述目标字段的位宽调整至目标位宽,所述目标位宽为所述目标字段在所述ip core所使用的页表格式中占用的位宽;将所述目标字段调整至目标位置,所述目标位置为所述目标字段在所述ip core所使用的页表格式中的位置。8、本公开一种可行的实现方式中,所述共享页表包括多级页表,所述页表信息为所述多级页表中的第p级页表,所述p为大于0的正整数;在所述页表转换规则包括与各级页表一一对应的页表转换子规则;所述将所述页表信息从所述自定义页表格式转换成所述ipcore所使用的页表格式,包括:根据与所述第p级页表对应的页表转换子规则,将所述页表信息从所述自定义页表格式转换成所述ip core所使用的页表格式。9、本公开一种可行的实现方式中,所述ip core与所述页表转换器一一对应;或者,使用的页表格式相同的不同ip core共用同一个页表转换器;或者,使用的页表格式不同的不同ip core共用同一个页表转换器。10、根据本公开的另一方面,还提供一种页表转换器,所述页表转换器用于与ip core连接,所述页表转换器包括:11、地址选择器,被配置为:接收所述ip core发送的针对目标信息的获取请求;在确定所述目标信息属于预先采用自定义页表格式配置的共享页表时,将所述获取请求通过片上总线网络路由至用于保存共享页表的存储器;12、数据格式转换器,被配置为执行页表格式转换任务:接收所述存储器根据所述获取请求返回的与所述目标信息对应的页表信息;以及将所述页表信息从所述自定义页表格式转换成所述ip core所使用的页表格式后,返回给所述ip core;所述共享页表是多个不同ip core需保持同步的页表。13、本公开一种可行的实现方式中,在所述获取请求中携带用于表征所述目标信息所在的物理地址的第一信息;所述地址选择器,被配置为:判断所述第一信息是否属于预先配置的用于表征保存所述共享页表的物理地址的第二信息集合;在属于时,确定所述目标信息属于所述共享页表。14、本公开一种可行的实现方式中,所述第一信息以及所述第二信息均为物理地址;或者所述第一信息以及所述第二信息均为用于表征物理地址的标识位。15、本公开一种可行的实现方式中,所述页表转换器还包括数据大小转换器,被配置为:在所述ip core所使用的页表格式的位宽为n,所述自定义页表格式的位宽为m,n≠m且均为大于0的正整数时,将所述获取请求中,用于表示所述目标信息的数据位从所述n位调整成所述m位。16、本公开一种可行的实现方式中,所述数据格式转换器,被配置为:从所述页表信息所包括的各个字段中筛选目标字段,所述目标字段为所述ip core所使用的页表格式包括的字段;将所述目标字段的位宽调整至目标位宽,所述目标位宽为所述目标字段在所述ipcore所使用的页表格式中占用的位宽;将所述目标字段调整至目标位置,所述目标位置为所述目标字段在所述ip core所使用的页表格式中的位置。17、本公开一种可行的实现方式中,所述共享页表包括多级页表;所述地址选择器,被配置为:在确定所述目标信息属于所述共享页表时,标记所述目标信息在所述共享页表中所在的页表级数;18、所述页表转换器包括页表标记存储器,被配置为保存所述目标信息的页表级数;19、所述页表转换器包括与所述共享页表包括的各级页表一一对应的数据格式转换器;20、所述页表转换器包括选择器,被配置为:读取所述页表标记存储器中保存的所述目标信息的页表级数,选择与所述目标信息的页表级数对应的数据格式转换器执行所述页表格式转换任务。21、根据本公开的另一方面,包括片上总线网络、存储器、需保持页表同步的多个ipcore、以及本公开任一实现方式所述的页表转换器,一个所述ip core与一个所述页表转换器对应连接,所述ip core以及所述页表转换器通过所述片上总线网络与所述存储器连接,在所述存储器内配置有所述多个ip core需保持同步的共享页表,所述多个ip core所使用的页表格式部分相同或完全不同。22、本公开一种可行的实现方式中,在所述多个ip core所使用的页表格式部分相同时,所述多个ip core中使用相同页表格式的ip core与同一个页表转换器连接,或者与不同的页表转换器连接。23、根据本公开的另一方面,还提供一种电子设备,包括本公开任一实现方式所述的soc。当前第1页12当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1