This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

How to generate an address size fault?

Hi experts,

I am new in ARM and I am trying to understand the theory behind address translation in order to generate an address size fault at different levels. I know that during the process from virtual address to physical address translation the Long-descriptor translation table format descriptors are involved. Observing the formats "Block" and "Table" for level 1 and 2 and the format "Page" for level 3, if bits [47:40] are not zero then a translation that uses the descriptor will generate an Address size fault.

What I don't understand is why the bits [47:40] will not be zero, that is, if I am working in C and a page of RAM need to be allocaded, what possible reason would cause those bits to be set to a non-zero value?

I appreciate your help, thanks.