平台介绍:
mips架构4核cpu
当cpu要访问物理内存时,对于tlb,缓存,窗口,这个设置有什么先后顺序吗?
先说一下每个部件的主要作用:
tlb : 是存储的表项,记录虚拟地址到物理地址的转换,没有数据
缓存: 存储的是数据,加速cpu取数据时的速度
窗口:主要是对转后的物理地址进行一个路由功能,决定了这个地址能访问到什么地方去。
过程:
cpu初始化完成后,肯定是先过tlb,跟tlb对比后如果有对应的表项就可以去缓存中直接取数据了,如果缓存中没有呢,就经过窗口去物理内存上获取数据;如果tlb表项中没有这个转换关系呢,就报错,并进行tlb重填。
就是一个总的通路关系是
cpu ---> tlb ---> 缓存 ---> 窗口 ---> 物理内存