【技术实现步骤摘要】
一种RISC
‑
V CPU验证中页表项生成方法、系统及装置
[0001]本专利技术涉及多核计算机数据验证领域,特别是涉及一种针对RISC
‑
V处理器的页表项生成方法及系统。
技术介绍
[0002]页表是一种特殊的数据结构,放在系统空间的页表区,存放逻辑页与物理页帧的对应关系。在目前高性能处理器的设计中,存储问题,以及与存出问题紧密关联的检索问题,一直是决定处理器性能的重要方面。在现有技术中,数据从主存储器读取到处理器的流水线中,往往需要上百个周期的时间,而在并行处理需求不断增长的时候,现有技术基本采用虚拟地址方式进行访问,这就使得物理地址和虚拟地址的映射存储和页表的检索成为的必然的需要。
[0003]在常规处理器架构中,一次简单的虚拟地址到物理地址的翻译,至少需要4次的存储访问,需要的时钟周期将随着虚拟地址的位数呈现指数级的增长。
[0004]目前虽然常规采用了TLB方式来降低存储操作的损耗,但是,当TLB不命中时,常规页表的结构在数据的翻译上,仍然将消耗很长的时间,尤其在 ...
【技术保护点】
【技术特征摘要】
1.一种RISC
‑
V CPU验证中页表项生成方法,其特征在于,所述方法包括:S1、设置页表项属性参数a0,虚拟地址参数a1、物理地址参数a2;S2、跳转至建立页表项的指令,并保存返回地址;S3、准备建立页表项的CPU获得锁;S4、判断虚拟地址参数a1的地址高字段是否有效,若有效,则执行S5,否则报错;S5、基于所述a0中的MODE位,判断准备建立的页表类型;S6、基于内存的物理地址基址,加上所述a1中的对应偏移量,得到准备建立的页表项所在地址;S7、读取准备建立的页表项所在地址的数据,并判断页表项所在地址的数据有效性;若无效,则基于页表项所在地址的数据中属性值判断准备建立的页表项的大小;若有效,则建立对应大小的页节点,完成页表项建立;S8、当S7中判断出准备建立的页表项的大小时,建立对应页表项的大小对应的地址,并判断该地址是否有效,若有效,建立对应大小的页表项;否则获取下一个表的基地址,生成新页表项所在地址的数据,并建立能映射对应页表项的大小的表,再判断建立的是页还是表,并执行S9;S9、当所述S8中建立的是页时,更新新页表项所在地址的数据中的部分属性值,并返回S7;当所述S8中建立的是表时,获取对应大小的物理地址,作为页表项所在地址,并返回S7。2.根据权利要求2所述的方法,其特征在于,所述a0至少包括:表示页表类型的MODE位,表示是否可执行的X位,表示是否可写入的W位,表示是否可读取的R位,表示是否有效的V位,表示Dirty位的D位,表示Accessed位的A位,表示是否全局量的G位,表示是否用户位的U位,表示分别生成512G、1G、2M、4K的页表控制位,satp中的PPN字段。3.根据权利要求1所述的方法,其特征在于,所述S3中,所述锁通过以下方式获得:准备建页表的CPU申请,通过AMO指令修改内存里的固定地址来获得;所述固定地址为预设的共享内存地址,用于存储标识是否有CPU正在修改页表项的值;当准备建页表的CPU完成页表项生成后,释放所述锁。4.根据权利要求1所述的方法,其特征在于,所述S7中,页表项所在地址的数据包括:表示是否可执行的X位,表示是否可写入的W位,表示是否可读取的R位,表示是否有效的V位,satp中的PPN字段。5.根据权利要求2所...
【专利技术属性】
技术研发人员:邢英杰,王飞,姜志颖,
申请(专利权)人:苏州睿芯集成电路科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。