版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
US2015309936A1,2015.10.29US2012331265A1,2012本发明实施例公开了一种加速硬件页表遍历的方法及装置。所述方法包括通过第i级第一括第K级基址和第K级高位地址;通过所述第i级第一缓存的控制单元,根据所述第K级基址判断在判断所述第i级第一缓存存储有所述第K级基址的情况下,通过所述第i级第一缓存的控制单元,向所述第i级第一缓存的计算单元发送所述据所述第K级基址和第K级偏移地址确定第(K+1)2接收访存请求,所述访存请求包括第K级基址和第K级高位地址,K为根据所述第K级基址判断所述第i级第一缓存是否存储有所在判断所述第i级第一缓存存储有所述第K级基址的情况下,向所述第i级第一缓存的根据所述第K级基址和第K级偏移地址确定第(K+1)级基址,所述第K在判断所述第i级第一缓存未存储有所述第K级基址且i≠N的情况下,向第(i+1)级第在判断所述第i级第一缓存未存储有所述第K级基址的情在接收所述访存请求后,根据所述第K级基址判断N级第一缓存在判断目标第一缓存存储有所述第K级基址的情况下,向所述目标第一缓存的控制单在判断所述每一级第一缓存均未存储有所述第K级基址的情况下,向所述内存控制器所述buffer,用于根据所述第K级基址和所述第K级偏移地址,确定所述第(K+1)级基3在判断所述第二缓存存储有所述第K级基址的情况下,向所述第二缓存的控制单元发所述buffer,用于根据所述第K级基址和所述第K级偏移地址,确定所述第(K+1)级基8.根据权利要求1_7任一项所述的装置,其特征在在向所述第1级第一缓存发送所述访存请求之前,判断所述第三缓存是否存储有所述在判断所述第三缓存未存储有所述第1级基址的情况下,向所述9.根据权利要求1_8任一项所述的装置,其特述装置包括N级第一缓存;所述N级第一缓存中的每一级第一缓存包括计算单元和控制单一缓存中的第i级第一缓存中包括第i级第一缓存的控制单元和所述第i级第一缓存的计算通过第i级第一缓存的控制单元接收访存请求,所述访存请求包括第K级基址和第K级通过所述第i级第一缓存的控制单元,根据所述第K级基址判断所述第i级第一缓存是在判断所述第i级第一缓存存储有所述第K级基址的情况下,通过所述第i级第一缓存通过第i级第一缓存的计算单元,根据所述第K级基址和第K级偏移地4在判断所述第i级第一缓存未存储有所述第K级基址且i≠N的情况下,通过所述第i级在判断所述第i级第一缓存未存储有所述第K级基址的情况下,通过所述第i级第一缓在接收所述访存请求后,通过所述家节点,根据所述第K级基址在判断目标第一缓存存储有所述第K级基址的情况下,向所述目标第一缓存的控制单在判断所述每一级第一缓存均未存储有所述第K级基址的情况下,通过所述家节点向通过所述内存控制器向所述家节点发送所述根据所述第K级基址和所述第K级偏移地址,通过所述家节点的缓冲区在接收所述访存请求后,通过所述家节点判断所述第二缓存是否存储有所述第K级基在判断所述第二缓存存储有所述第K级基址的情况下,通过所述家节点向所述第二缓在判断所述每一级第一缓存和所述第二缓存均未存储有所述第K级基址的情况下,通通过所述内存控制器向所述家节点发送所述根据所述第K级基址和所述第K级偏移地址,通过所述家节点的缓冲区5在向第1级第一缓存发送所述访存请求之前,通过所述存储器管理单元判断所述第三在判断所述第三缓存存储有所述第1级基址的情况下,通过所述存储器管理单元获取在判断所述第三缓存未存储有所述第1级基址的情况下,通过所述存储器管理单元向6负责把应用程序使用的虚拟地址(VirtualAddress,VA)翻译成物理地址(PhysicalTLB辅助MMU完成虚拟地址的转换(例如,如果所需页表基址恰好都存储在TLB中(即命中存次数跟页表分级数直接相关(例如,页表共分至核(core)中的访存单元(LoadStoreUnit,LSU),经过算术逻辑单元(Arithmeticand在每一级cache中增加TLB结构(TLB结构用于将VA翻译为PA),否则无法进行数据预取。因7[0013]在判断所述第i级第一缓存存储有所述第K级基址的情况下,向所述第i级第一缓第i级第一缓存未存储有所述第K级基址且i≠N的的情况下,向第(i+1)级第一缓存的控制述第K级基址判断N级第一缓存中每一级第一缓存是否存储有所述第K级基址;在判断目标第一缓存存储有所述第K级基址的情况下,向所述目标第一缓存的控制单元发送所述访存8所述每一级第一缓存均未存储有所述第K级基址的情况下,向所述内存控制器发送所述访没有存储所需的基址时向内存控制器发送相应指令,以便于及时从内存中获取所需的基[0023]在一种可能的实现方式中,所述装置还包括与第1级第一缓存耦合的存储器管理91)级基址的情况下,向所述存储器管理单元发送所述第(M+1)级基址。所述存储器管理单发送给存储器管理单元。进一步地,存储器管理单缓存的控制单元接收访存请求,所述访存请求包括第K级基址和第K级高位地址,K为正整级第一缓存是否存储有所述第K级基址;在判断所述第i级第一缓存存储有所述第K级基址所述第K级基址的情况下,通过所述第i级第一缓存的控制单元向家节点发送所述访存请在判断目标第一缓存存储有所述第K级基址的情况下,向所述目标第一缓存的控制单元发第二缓存均未存储有所述第K级基址的情况下,通过所述家节点向内存控制器发送所述访述内存控制器向所述家节点发送所述第K级基址;根据所述第K级基址和所述第K级偏移地第K级基址的基址标识用于指示所述第K级基得最后基址的缓存)向存储器管理单元反馈最述N级第一缓存中的每一级第一缓存包括计算单元和控制单元;所述N级第一缓存存储了M据所述第K级基址判断所述每一级第一缓存是否存储有所述第K级基址;在判断第p级第一缓存存储有所述第K级基址的情况下,向所述第p级第一缓存的控制单元发送所述第K级访骤或单元。算设备上运行的应用和计算设备都可以是部件。一个或多个部件可驻留在进程和/或执行[0077](1)物理地址(PhysicalAddress),也叫实地址(realaddress)、二进制地址算完成后再将结果传送出来。动态随机存取存储器(DynamicRandomAccessMemory,以保存CPU刚用过或循环使用的一部分数据,如果CPU需要再次使用该部分数据时可从(level1cache,L1cache)、二级缓存(level2cache,L2cache)和三级缓存(level[0084](8)缓冲区(buffer),是预留的一定容量的存储空间,用来缓冲输入或输出的数[0089](13)排序点(PointofSerialization,PoS),或家节点(HomeNode/Ordering遍历流程示意图。如图1所示,页面基址寄存器中存储的是页表的物理基地址,当发生拼接VA的[38:30]后继续查询,一直到获取最后物理地址结束。HPTW过程需要查询L2[0094](18)片上总线协议,提供一种特殊的机制,可将处理器集成在其它知识产权核[0105]在家节点判断N级第一缓存中哪一级缓存存储了该目标页表的基址后,向存储了[0108]处理器核流水线110用于并行处理运算器111、访存单元112等单元或者器件之间[0109]访存单元112用于向存储器管理单元MMU发送应用程序提供的虚拟地址,接收MMU[0111]存储器管理单元113用于向第1级第一缓存发送第1级访存请求,例如,在发生辑上可以位于处理器内部的任何位置。在处理器设计[0115]在判断所述第二缓存和所述第N级第一缓存中任一缓存存储有所述第K级基址的[0116]在判断所述第二缓存和所述第N级第一缓存均未存储有所[0118]处理器内核11中还可以包括第二缓存115;所述第二缓存包括管理单元113等等与图3中一致的单元或者器件,请参见图3的相关描述以及前述的部分用[0121]结合图3所述应用架构,下面对本发明实施例涉及的一种加速硬件页表遍历装置存、六级缓存等能够存储页表基址的多级缓存的情况,可以参考图6以及相应实施例的描发明实施例提供的一种对应图8的部分硬件的交互示意图;假设L2cache命中全部的四级[0127]步骤1(S1):二级缓存的控制单元71接收第1级访存请求(包括第1级基址和第1级48位虚拟地址和4级页表的例子中,对应的命令格式为{高位地址[47:12]、访存请求(即[47:12]为虚拟地址中除了页偏移offset[11:0]该段低位地址以外的高位地址,包括了[0134]步骤3(S3):二级缓存的控制单元71向二级缓存的计算单元发送第1级基址和第1址,那么根据第1级页表基址的tag来判断二级缓存是否命中第1级页表基址以及在命中后[0135]步骤4(S4):二级缓存的计算单元72在第1级基址上加偏移地址计算得到第2级基[0140]步骤7(S7):二级缓存的控制单元71向二级缓存的计算单元发送第2级基址和第2[0143]步骤(L_1):二级缓存的计算单元72在第4级基址上加偏移地址计算得到第5级基3、…、M。图12是本发明实施例提供的一种对应图11的部分硬件的交互示意图;假设L2图6所示的加速硬件页表遍历的装置中,其各个功能模块可以按照以下时序执行相应的操[0152]步骤3(S3):二级缓存的控制单元71向二级缓存的计算单元发送第1级基址和第1[0153]步骤4(S4):二级缓存的计算单元72在第1级基址上加偏移地址计算得到第2级基[0160]步骤9(S9):三级缓存的控制单元81向三级缓存的计算单元发送第2级基址和第23、…、M。图14是本发明实施例提供的一种对应图13的部分硬件的交互示意图;假设L2述图6所示的加速硬件页表遍历的装置中,其各个功能模块可以按照以下时序执行相应的[0168]步骤3(S3):二级缓存的控制单元71向二级缓存的计算单元发送第1级基址和第1[0169]步骤4(S4):二级缓存的计算单元72在第1级基址上加偏移地址计算得到第2级基[0175]步骤9(S9):三级缓存的控制单元81向三级缓存的计算单元发送第2级基址和第2[0178]步骤12(S12):三级缓存的控制单元81根据第3级基址判断三级缓存没有第3级基中的高位地址)和Level[1:0]域(指示PoS当前正在处理的是哪一级页表)。可以理解的是,命令长度是137(原命令长度)+36(即原虚拟地址中的高位地址的长度)+2(即Level[1:0]域[0182]具体地,根据第3级基址判断所有的缓存中哪一个或者哪些缓存存储有第3级基的结构相同,但可以是专门用于HPTW的(即只有HPTW请求才进入上述四个entry进行处理,3、…、M。图16是本发明实施例提供的一种对应图15的部分硬件的交互示意图;假设L2[0192]步骤3(S3):二级缓存的控制单元71向二级缓存的计算单元发送第1级基址和第1[0193]步骤4(S4):二级缓存的计算单元72在第1级基址上加偏移地址计算得到第2级基[0199]步骤9(S9):三级缓存的控制单元81向三级缓存的计算单元发送第2级基址和第2[0202]步骤12(S12):三级缓存的控制单元81根据第3级基址判断三级缓存没有第3级基[0208]步骤16(S16):二级缓存的控制单元71根据第3级基址判断二级缓存有第3级基址[0210]步骤18(S18):二级缓存的计算单元72在第3级基址上加偏移地址计算得到第4级[0223]基于图3所示的架构和相关装置,下面对本发明实施例涉及的一种加速硬件页表且依靠第三缓存就可以完成页表遍历的全过程,就可以不用执行前述实施例提供的方案。[0227]请参见图19,图19是本发明实施例提供的一种多核情况下的页表查询过程示意(即第一缓存中的三级缓存)命中第2级基址,而第4级基址存储在第二缓存的二级缓存中;[0230]步骤3(S3):二级缓存的控制单元71向二级缓存的计算单元发送第1级基址和第1[0231]步骤4(S4):二级缓存的计算单元72在第1级基址上加偏移地址计算得到第2级基[0236]步骤9(S9):三级缓存的控制单元81向三级缓存的计算单元发送第2级基址和第2[0239]步骤12(S12):三级缓存的控制单元81根据第3级基址判断三级缓存没有第3级基[0243]步骤16(S16):二级缓存的控制单元71根据第3级基址判断二级缓存有第3级基址[0245]步骤18(S18):二级缓存的计算单元72在第3级基址上加偏移地址计算得到第4级存的情况下),假设L2cache(即第一缓存中的二级[0258](步骤1步骤21可以参考前述图19以及图20对应实施例中的步骤1步骤21,在此3级基址,并通过三级缓存的计算单元得到了第4级基址。但是三级缓存没有命中第4级基[0266]基于图4所示的架构和相关装置,下面对本发明实施例涉及的一种加速硬件页表[0267]需要说明的是,在处理器芯片10有多个处理器内核11的情况下(如处理器内核1、[0268]结合图3所述应用架构,下面对本发明实施例涉及的一种加速硬件页表遍历方法述第i级第一缓存的控制单元向家节点发送所[0284]结合图4所述应用架构,下面对本发明实施例涉及的另一种加速硬件页表遍历方述第i级第一缓存的控制单元向家节点发送所[0305]需要说明的是,本发明实施例中所描述的加速硬件页表遍历方法可参见上述图息和指令的其他类型的动态存储设备,也可以是电可擦可ErasableProgrammableRead_OnlyMemory,EEPROM)、只读光盘(CompactDiscRead_令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。[0311]图24所示的芯片为一种加速硬件页表遍历装置时,存储器242存储的代码可执行第K级基址和所述第K级偏移地址,通过所述家节点的缓冲区buffer确定所述第(K+1)级基的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 基于跨学科视野的初中七年级生物学“绿色植物与生物圈的水循环”单元项目式学习教学设计
- 小学六年级数学上册《分数除以分数》单元课时教学设计
- 人教版小学数学二年级上册《2和5的乘法口诀练习课》教学设计
- 小学数学三年级上册第七单元长方形和正方形复习教学设计
- 初中七年级道德与法治《学会拒绝:守护边界理性抉择》教学设计
- 2026景观工程师面试题及答案
- 2026宁乡市工厂面试题及答案
- 2026人资总监面试题及答案
- 2026沈阳四院面试题目及答案
- 学校女生宿舍管理制度
- 《工程勘察设计收费标准》(2002年修订本)
- 安全风险分级管控与隐患排查治理制度
- 《中央管理企业负责人薪酬制度改革方案》
- 忠诚承诺情侣保证书
- 人体八大系统与生理功能
- 哈萨克斯坦劳动法中文版
- 三大构成说课
- 神经系统查体PPT
- 皮下气肿的学习课件
- 胸痛中心数据填报平台的管理与质控课件
- GB/T 6311-1986大量程百分表
评论
0/150
提交评论