Hello Experts,
I am trying to understand in the attached snapshot, how the values of m and n are derived for table and block descriptors respectively ? Can anyone please explain me since I am new to this.
The snapshot is from ARM8 ARM page:2445.
In the next page (above snapshot) for a 4KB translational granule, bits 47:30 are the OA for the block descriptor and it specifies a 1GB memory.
How 18 bits can specify a 1GB memory ? I got confused here too.
It is 18 top bits. The 1GB are the lower 30bits. In total 48bits.So 47:30 = 0 =>0000.0000.0000 .. 0000.3fff.ffff (1st 1GB)47:30 = 1 =>0000.4000.0000 .. 0000.7fff.fff (2nd 1GB)
Thank you for your answer