arm - 什么是 PDE 缓存?

标签 arm cpu-architecture tlb cpu-cache mmu

我有以下基于 ARM 的 SoC 的规范:

  • L1 数据缓存 = 32 KB、64 B/行、2 路、LRU
  • L2 缓存 = 1 MB、64 B/行、16 路
  • L1 数据 TLB(用于加载):32 个条目,完全关联
  • L2 数据 TLB:512 个条目,4 路
  • PDE 缓存:16 个条目(每 1 MB 虚拟空间一个条目)

我想知道 PDE 缓存是什么?我猜它与 TLB 类似,但我不确定。

回答
看来PDE(页目录条目)是Intermediate table walk cache这确实可以与 TLB 分开实现。

The Cortex-A15 MPCore processor implements dedicated caches that store intermediate levels of translation table entries as part of a table walk.

最佳答案

PDE(“页目录条目”)是顶级*页表条目的 x86 架构术语 - 相当于 ARM VMSA 术语中的“第一级描述符”。

假设this是问题中数据的来源,它大概指的是 Cortex-A15 的 "intermediate table walk cache" ,这并不完全合适,因为它实际上可以缓存 any level of translation .

* 至少在 IA-32 中 - 64 位模式的级别高于此

关于arm - 什么是 PDE 缓存?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26945448/

相关文章:

Docker 和 -march native

c# - 为什么我的 C# DLL 中的方法丢失了?

tomcat - 从基于 ARM 的机器提供 GWT 应用程序

c++ - Eclipse CDT 显示...未解决 ARM neon 内在函数的错误,但生成二进制文件

运行 jdk1.8.0 的 ARM 上的 JavaFX

c - 如何在 C 中打印程序计数器的精确值

clang - 为什么添加 xorps 指令使这个函数使用 cvtsi2ss 并添加 ~5x 快?

caching - PIPT L1 缓存也是 VIPT 的最小关联性,访问集合而不将索引转换为物理

linux - 如何在 mips32 上启用 hugetlb

x86 - QEMU 是否模拟 TLB?