티스토리 뷰

1. MMU는 메모리 관리의 핵심적인 역할(가상 메모리와 실제 메모리사이에서 주소 변환)을 한다.

2. CPU에서 memory를 access하기 위해 virtual address를 발생하면 MMU는 이 virtual address를 받아서 page table(가상과 실제 메모리를 연결하는 table)을 통해 physical address에 access 한다. memory는 해당 physical address안의 data를 출력하여 cpu에게 전달 한다.

2-1. table이 존재하는 위치는 TTB(Translation table base address)라고 해서 MMU의 레지스터 중 하나에 저장되어 있다. table은 외부 memory에 존재 한다. or MCU내부 TCM memory에 위치시킬 수도 있다.(성능을 위해)

3. 32bit address system이므로 virtual address는 2^32=4GB를 나타낼 수 있다. page table도 4GB를 나타낼 수 있어야 한다. page table의 한개 entry(32bit)로 메모리의 1MB씩 가르킬 수 있다고 한다면 이런 entry는 4096개가 필요하다.

4. page table의 크기는 4096 * 32bit = 16KB가 기본이 된다.

5. virtual address는 1MB 단위로 기본설정이 되어 있고 이를 section이라고 한다. 더 작은 단위로 나눌 수 있는 option이 있다. 64KB(Fine page table), 4KB(Coarse page table)

6. 1MB단위로 4096개로 나뉘어진 page table(0~1MB, 1~2MB, 2~3MB ......)을 Level 1 page table이라고 부른다. 각 32bit씩의 단위를 Level 1 page table entry라고 부른다.

7. Level 1 page table

8.  Level 2 Page Table

9.

10.

11.

12.

13.

14.

15.

16.

17.

18.

19.

20.

 

 

 

 

-출처

http://recipes.egloos.com/5232056

 

 

'전자회로 > 임베디드교육' 카테고리의 다른 글

7주차  (0) 2020.05.18
6  (0) 2020.05.11
5  (0) 2020.05.04
4  (0) 2020.04.27
3  (0) 2020.04.20
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
글 보관함