PTE、TLB、CACHE组成

PTE

页表(page table)的成员是PTE(page table entry),由于Linux对于PTE的定义和ARM硬件不一致,下面的L_开头的定义都是针对Linux的

在32位芯片中,PTE一共32位,低12位如上图定义是各种标志位;因为linux的page设定为4Kbytes,所以PPO是12位,则PPN是20位,PTE的高20位是PPN。

因为页表是全映射,所以页表的索引就是VPN,PTE不用存储VPN;但是TLB只存储部分PTE,所以VPN作为TLB tag存储在TLB entry里。

TLBE(TLB entry) 

如下是一个虚拟地址,由VPN和VPO组成

 

 

 

TLBE由TLB tag、PPN、Valid组成;TLBI占2位,所以set取值范围为0~3,TLBI等于0即是set等于0。

上图一个set有4个line,一共3个set,所以属于4路组相连映射

CACHE

 

posted @ 2022-12-18 17:28  流水灯  阅读(461)  评论(0编辑  收藏  举报