Hello, everyone, I am reading chapter D9 "The Granule Protection Check Mechanism" in A-profile architecture, and I have get some question here:
Ming Gao said:but is it appropriate to put the GPT directly into the TLB, which seems to save a table but essentially destroys the TLB's original purpose of translating VA and PA?
I don't think I agree. The purpose of TLBs is to make look-ups faster and more efficient. In a system with Stage 1, Stage 2 and GPC you could imagine three TLB-like structures each associated with one kind of look-up. Or, you could imagine a single TLB which stores the end-to-end result. Or, you could imagine some hybrid of the two. The architecture is written to allow any of these approaches, it's up to the micro-architecture designer to decide which gives the desired PPA trade-off.
Ming Gao said:What new instructions have been added to the ARM for GPT table processing, other than TLBI PAALLOS, etc.?
Try this page and CTRL+F for GPT, I think there are four:
Arm A-profile Architecture Registers
So what you're saying is that TLB is just an architectural concept, and it's up to the hardware designer to choose which actions it accelerates? If that's the case then I think I misunderstood the concept of TLB.