✍ ☎ ✄ ✁ ✂ ✡ ☎ ☞ ✁ ☎ ✌ ✂ ☛ ☎ ☛ ☎ ✞ ✂ ☎ ☛ ☎ ✂ ☎ ☎ ☛ ✝ ✁ ✂ ✁ ✄ ✁ ✁ ✁ ☎ ✆ ✞ ✄ ✟ ✠ ✡ ✂ ✄ ✁ ☎ ✝ ✆ ☎ ☎ ☎ ✞ ☎ ✂ ✁ ✁ ☎ ✄ ☎ ✞ ☎ ☛ ☎ ✌ ✁ ☎ ✌ ☎ ✆ ☎ ☛ ☎ ✂ ☎ ☎ ✄ ✟ ☎ ☎ ☛ ☎ ✝ ☎ ☛ ☎ ✄ ✄ ☛ ✁ ☎ ☞ ☎ ☛ ☎ ✡ ☎ ☛ ☎ ✄ ✝ ✟ ✂ ✞ ✁ ✁ ✠ ✁ ✂ ✁ ✟ ✁ ✁ ✁ ✝ ✝ ✆ ☎ ✄ ✂ ✂ ✁ ✂ ✄ ✠ ✟ � ✁ ✡ ✁ ✠ ✁ ✂ ✁ ✞ ✁ ✝ ✁ ✁ ✁ ✝ ✁ ✆ ✁ ☎ ✁ ✁ ✁ ☎ ✝ ✂ ✟ ✠ ✡ ✂ ✄ ✁ ✟ ☎ ✞ ✝ ✝ ✆ ☎ ✄ ✂ ✁ ✠ ✆ ✞ ✁ ✁ ✁ ✂ ✁ ✄ ✁ ✁ ✁ ☎ ✆ ✝ ✞ ✁ ✠ ✟ ✡ ✂ ✄ ✁ ☎ ✁ Review of Symbols Review of Symbols CS 105 Basic Parameters “Tour of the Black Holes of Computing!” N = 2 n : Number of addresses in virtual address space M = 2 m : Number of addresses in physical address space P = 2 p : Page size (bytes) Virtual Memory: Systems Virtual Memory: Systems Components of the virtual address (VA) VPN: Virtual page number VPO: Virtual page offset TLBI: TLB index Topics TLBT: TLB tag Simple memory system example Components of the physical address (PA) PPN: Physical page number Case study: Core i7 PPO: Physical page offset (same as VPO) Linux memory management CT: Cache tag Memory mapping CI: Cache index CO: Byte offset within cache line CS 105 – 2 – Simple Memory System Example Simple Memory System Example 1. Simple Memory System TLB 1. Simple Memory System TLB Addressing 16 entries 14-bit virtual addresses 4-way associative 12-bit physical address Page size = 64 bytes ���� ���� ��� ��� ��� ��� ������������������� ������������������� ��� ��� �������������������� �������������������� CS 105 CS 105 – 3 – – 4 –
✍ ✂ ✟ ✞ ✝ ✆ ☎ ✁ ✁ ✁ ☎ ✁ ✄ ✡ ✡ ✠ ✟ ✞ ✝ ✆ ☎ ✁ ✁ ✁ ✄ ✁ ✠ ✂ ✁ ✟ ✁ ✄ ☎ ☛ ☎ ☎ ✁ ✄ ✂ ✡ ✠ ✞ ✄ ✝ ✆ ☎ ✁ ✁ ✁ ✄ ✁ ✂ ✁ ☎ ✁ ✂ ✓ ✡ ✂ ✆ ✄ ☎ ☛ ☛ ☛ ☛ ☞ ✌ ✄ ✁ ✆ ✆ ✠ ✁ ☞ ✌ ✏ ✂ ✏ ✏ ☎ ☎ ☛ ✝ ✠ ✆ ✂ ✒ ✠ ✂ ✟ ✆ ☎ ✄ ✂ ✁ ✑ ✌ ✌ ✁ ✁ ✌ � ✌ ✝ ✡ ✄ ✁ ☞ ✂ ☎ ☎ ✂ ☎ ☛ ✝ ✝ ✆ ☎ ✄ ✂ ✁ ✠ ✂ ✟ ✞ ✝ ✆ ✞ ☎ ✄ ✂ ✁ ☎ ✂ ☎ ☛ ☎ ✆ ☎ ✝ ✟ ☎ ✂ � ✡ ✠ ✂ ✟ ✞ ✝ ✝ ✆ ☎ ✄ ✁ ✂ ✠ ✂ ✟ ✞ ✝ ✝ ✆ ☎ ✄ ✂ ✁ ✠ ✌ ✁ ☞ ☎ ☛ ☎ ✝ ☎ ☛ ☎ ✟ ☎ ☛ ☎ ✂ ☛ ✄ ☎ ✂ ✞ ☎ ☛ ☎ ✂ ☎ ✌ ☎ ✁ ☎ ✄ ☎ ✌ ☎ ☛ ☎ ✞ ☎ ✄ ☎ ✁ ✁ ✂ ☎ ✄ ☎ ✁ ✄ ☎ ☛ ☎ ✡ ☎ ☛ ☎ ☞ ☎ ☛ ☛ ✌ ☛ ✂ ☛ ☛ ☛ ☛ ✡ ✄ ✂ ✁ ✡ ✂ ✌ ✟ ✍ ✝ ✆ ☎ ✠ ✌ ☎ ✟ ✁ ✁ ✁ ☎ ☛ ☛ ☛ ☛ ✄ ✏ ✁ ✎ ☎ ☎ ✄ ☎ ✡ ☎ ✝ ☎ ☎ ✟ ✁ ✡ ✍ ✌ ✂ ☎ ☎ ✁ ✄ ✂ ✠ ✄ ✟ ✞ ✝ ✆ ☎ ✁ ✁ ✁ ✎ ✁ ✂ ✂ ✄ ✞ ☎ ✍ ✌ ✁ ✟ ✁ ☎ ✁ ☛ ☛ ☛ ☛ ✞ ✟ ✁ ✁ ✠ ✂ ✁ ✆ ✂ ✌ ✍ ✡ ✁ ☎ ☛ ☛ ☛ ☛ ✓ ✒ ✏ ✠ ✂ ✟ ✆ ☎ ✄ ✂ ✁ ✑ ✌ ✂ ✌ ✁ ✞ ✌ ✡ ✄ ✁ ☎ ☛ ☛ ☛ ☛ ✌ ✟ ✁ ✁ ☎ ✞ ✟ ✆ ✡ ✂ ✠ ✁ ✄ ✂ ✁ ✁ ✂ ✁ ✁ ✝ ✂ ✄ � ✌ ☎ ✆ ✁ ✁ ✆ ✆ ✁ ✁ 2. Simple Memory System Page Table 2. Simple Memory System Page Table 3. Simple Memory System Cache 3. Simple Memory System Cache Only show first 16 entries (out of 256) 16 lines, 4-byte block size Physically addressed Direct mapped ��� ��� ����� ��� ��� ����� �� �� �� �� �� � �� �� � �� � � �� �� � �� �� � �� �� � ��� ��� �� �� � �� � � �� � � �� � � �� �� � �� �� � �� � � �� �� � �� � � �� �� � CS 105 CS 105 – 5 – – 6 – 1. Simple Memory System TLB 1. Simple Memory System TLB Address Translation Example #1 Address Translation Example #1 16 entries Virtual Address: 0x03D4 4-way associative ���� ���� � � � � � � � � � � � � � � ���� ���� ��� ��� VPN ____ TLBI ___ TLBT ____ TLB Hit? __ Page Fault? __ PPN: ____ ���� � ���� ��� ��� Physical Address �� �� �� ��� ��� CO ___ CI___ CT ____ Hit? __ Byte: ____ CS 105 CS 105 – 7 – – 8 –
✝ ☛ ☛ ✎ ✄ ✁ ☎ ☛ ☛ ☛ ✌ ☛ ✟ ✁ ✁ ✡ ☎ ✟ ✆ ✡ ✂ ☛ ☛ ✁ ✂ ☎ ☛ ☛ ☛ ☛ ☞ ✌ ✄ ✁ ✆ ☎ ✠ ✁ ☞ ✌ ✏ ✂ ✏ ✏ ☎ ✠ ✄ ✌ ✌ ☎ ✄ ✂ ✁ ✑ ✌ ✂ ✌ ✁ � ✟ ✌ ☎ ✆ ✁ ✁ ✆ ✆ ✁ ✁ ✆ ✂ ✂ ✍ ✁ ✁ ✂ ✞ ✞ ✏ ✁ ✂ ✌ ✡ ✠ ✁ ☎ ☛ ☛ ☛ ☛ ✓ ✆ ✒ ✄ ✆ ✄ ✡ ✠ ✡ ✂ ✄ ☎ ✁ ✄ ✂ ✠ ✁ ✟ ✞ ✝ ✆ ☎ ✁ ✁ ✁ ✄ ✁ ✁ ✂ ✟ ✁ ✄ ✁ ✁ ✁ ☎ ✆ ✝ ✞ ☎ ☎ ✁ ✄ ✂ ✡ ✠ ✟ ✞ ✝ ✆ ✁ ✁ ✝ ✝ ✁ ✑ ✌ ✂ ✌ ✁ ✌ � ✌ ✡ ✄ ✄ ✁ ☞ ✂ ☎ ☎ ✁ ✠ ✆ ✂ ☎ ✁ ✠ ☎ ✁ ✁ ✁ ☎ ✆ ✝ ✞ ✟ ✡ ✆ ✂ ✄ ✁ ✓ ✆ ✒ ✠ ✂ ✟ ✂ ✁ ✁ ✡ ☎ ☎ ✁ ✁ ✁ ✁ ☎ ✆ ✝ ✞ ✟ ✠ ✂ ✄ ✄ ✁ ☎ ☎ ✂ ✌ ✍ ✎ ✄ ✁ ✁ ✁ ✁ ✁ ✂ ✞ ✠ ✁ ✂ ✁ ✄ ✁ ✁ ✁ ☎ ✆ ✝ ✞ ✟ ✡ ✡ ✂ ✄ ✁ ☎ ✁ ✁ ✁ ☎ ✆ ✝ ✞ ✟ ✠ ✟ ✂ ☛ ✡ ☛ ✂ ☛ ☛ ☛ ✄ ✏ ✁ ✁ ☎ ☎ ✄ ☎ ☎ ☎ ✝ ☎ ✂ ✟ ✂ ☎ ☛ ☛ ☛ ☛ ✡ ✄ ☛ ✁ ✡ ✌ ✄ ☛ ☛ ☎ ✂ ✁ ✟ ✁ ✌ ✍ ☎ ✞ ✁ ✟ ✠ ✂ ✌ ✍ ✝ ✆ ☎ ✟ ✠ ✁ ☎ ✁ ✂ 3. Simple Memory System Cache 3. Simple Memory System Cache Address Translation Example #1 Address Translation Example #1 16 lines, 4-byte block size Virtual Address: 0x03D4 Physically addressed ���� ���� Direct mapped � � � � � � � � � � � � � � �� �� �� ��� ��� VPN ____ TLBI ___ TLBT ____ TLB Hit? __ Page Fault? __ PPN: ____ ���� � ���� � � ���� ��� ��� Physical Address �� �� �� � � � � � � � � � � � � ��� ��� CO ___ CI___ CT ____ Hit? __ Byte: ____ � ��� ���� CS 105 CS 105 – 9 – – 10 – Address Translation Example #1 Address Translation Example #1 Address Translation Example #1 Address Translation Example #1 Virtual Address: 0x03D4 Virtual Address: 0x03D4 ���� ���� ���� ���� � � � � � � � � � � � � � � ��� ��� ��� ��� VPN ____ TLBI ___ TLBT ____ TLB Hit? __ Page Fault? __ PPN: ____ VPN ____ TLBI ___ TLBT ____ TLB Hit? __ Page Fault? __ PPN: ____ ���� � ���� � � ���� Physical Address Physical Address �� �� �� �� �� �� � � � � � � � � � � � � ��� ��� ��� ��� CO ___ CI___ CT ____ Hit? __ Byte: ____ CO ___ CI___ CT ____ Hit? __ Byte: ____ � ��� ���� � ���� CS 105 CS 105 – 11 – – 12 –
Recommend
More recommend