فيه صفحة 504
cache=4K blocks < 4 word block size , 32 bit address
كم عدد ال bit لل indes , tag
طيب انا فاهمه كيف جاب tag
بس اصلا كيف جاب عدد index???
=============================
كمان في صفحة 486
كيف تم توزيع index-tag-block of set ???
============================
صفحه 478 ايضا توزيع index=10 من فين جات 10؟؟؟
دعوه للتناقش فيما بيننا
|
بالنسبة لصفحة 478
الانديكس لما تخرجيها بالبداية تكون 2 اس 12 بس بعدين لما تشوفي حجم البلوك اللي هو 4 ( معطى بالسؤال ) 4 = 2 اس 2 , يصير تطرحي 12 من 2 يبقالك 10 وهيا اللي حتصير الاندكس ...
شوفي معايا هدول المثالين
المثال الاول
• How many total bits are needed for a direct- mapped cache with 64 KBytes of data and one word blocks, assuming a 32-bit address?
– 64 Kbytes = 16 K words = 2^14 words = 2^14 blocks
– block size = 4 bytes => offset size = 2 bits,
– #sets = #blocks = 2^14 => index size = 14 bits
– tag size = address size - index size - offset size = 32 - 14 - 2 = 16 bits
– bits/block = data bits + tag bits + valid bit = 32 + 16 + 1 = 49
– bits in cache = #blocks x bits/block = 2^14 x 49 = 98 Kbytes
المثال الثاني :
• How many total bits are needed for a direct- mapped cache with 64 KBytes of data and 8 word blocks, assuming a 32-bit address?
• Increase block size => decrease bits in cache
• 64 Kbytes = 2^14 words = (2^14)/8 = 2^11 blocks
• block size = 32 bytes => offset size = 5 bits,
• #sets = #blocks = 2^11 => index size = 11 bits
• tag size = address size - index size - offset size = 32 - 11 - 5 = 16 bits
• bits/block = data bits + tag bits + valid bit = 8x32 + 16 + 1 = 273 bits
• bits in cache = #blocks x bits/block = 2^11 x 273 = 68.25 Kbytes
أتمنى تكوني فهمتي