CA-Lecture 10

Download Report

Transcript CA-Lecture 10

‫مهدی ایل بیگی‬
‫دانشگاه پیام نور دماوند‬
‫• سلس لللاتب حا للبت خاط للات للات للخ تس ل ظهت ا ل‬
‫هزينات وجو تآب هتحسه‪.‬‬
‫•‬
‫رتسلسلاتب حابت خاطاتحگ تحزتپخئي ت ات خالت كهتكن م‪:‬‬
‫– س ظهت س‬
‫ت ات خاطات ي‬
‫تبي‌شو ‪.‬‬
‫– هزيناتسخه‌حازحرتحازحيشتپ حتبي‌كن ‪.‬‬
‫– حجمت خاطاتكخهشتپ حتبي‌كن ‪.‬‬
‫‪2‬‬
‫ت س ل ت للات خاط للات للخت ل ح لت‬
Auxiliary memory
Magnetic
tapes
I/O
processor
Main
memory
CPU
Cache
memory
Magnetic
disks
Upper Level
faster
Register
Cache
Main Memory
Magnetic Disk
Larger
Lower Level
Magnetic Tape
3
‫ رتزیل تموومللاتح تحزت‬. ‫ بل ت خشل‬ROM‫ وت‬RAM‫• بنطلورتحزت خاطلاتحیلحات خاطلاتهللخ ت‬
:‫ آور هتش ه‬ROM‫ وت‬RAM‫خاطةتت‬
Chip select 1
Chip select 2
Read
Write
7-bit address
CS1 CS2
0
0
0
1
1
0
1
0
1
0
1
1
CS1
CS2
RD
WR
AD 7
RD
x
x
0
0
1
x
WR
x
x
0
1
x
x
128 x 8
RAM
Memory function
Inhibit
Inhibit
Inhibit
Write
Read
Inhibit
Chip select 1
Chip select 2
8-bit data bus
State of data bus
High-impedence
High-impedence
High-impedence
Input data to RAM
Output data from RAM
High-impedence
CS1
CS2
512 x 8
ROM
9-bit address
AD 9
8-bit data bus
4
‫• حگ تحزتچن ینتا حشات خاطاتحستفخ هتموخییمتمیخزت اتمگخشهتآ رست اتهل تكل حزتا حشلات‬
‫هخیت خاطات حریم‪.‬‬
‫• بثخل‪:‬‬
‫• مگخشل ل للهتآ رست‪ 10‬یت ل ل ل ت ل ل ل حی‪ 4‬ا حشل ل للات‪ 128‬ل ل للخكت ت‪ RAM‬وتی ل ل ل تا حشل ل للات‪ 512‬خكل ل للهت‬
‫‪:ROM‬‬
‫‪Address bus‬‬
‫‪4 3 2 1‬‬
‫‪8 7 6 5‬‬
‫‪x‬‬
‫‪x‬‬
‫‪x‬‬
‫‪x‬‬
‫‪x‬‬
‫‪0‬‬
‫‪1‬‬
‫‪0‬‬
‫‪1‬‬
‫‪x‬‬
‫‪x‬‬
‫‪x‬‬
‫‪x‬‬
‫‪x‬‬
‫‪x‬‬
‫‪5‬‬
‫‪x‬‬
‫‪x‬‬
‫‪x‬‬
‫‪x‬‬
‫‪x‬‬
‫‪x‬‬
‫‪x‬‬
‫‪x‬‬
‫‪x‬‬
‫‪x‬‬
‫‪x‬‬
‫‪x‬‬
‫‪x‬‬
‫‪x‬‬
‫‪x‬‬
‫‪x‬‬
‫‪x‬‬
‫‪x‬‬
‫‪x‬‬
‫‪x‬‬
‫‪x‬‬
‫‪x‬‬
‫‪x‬‬
‫‪x‬‬
‫‪x‬‬
‫‪10 9‬‬
‫‪0‬‬
‫‪0‬‬
‫‪1‬‬
‫‪1‬‬
‫‪x‬‬
‫‪0‬‬
‫‪0‬‬
‫‪0‬‬
‫‪0‬‬
‫‪1‬‬
‫‪Hexa‬‬
‫‪address‬‬
‫‪0000 - 007F‬‬
‫‪0080 - 00FF‬‬
‫‪0100 - 017F‬‬
‫‪0180 - 01FF‬‬
‫‪0200 - 03FF‬‬
‫‪Component‬‬
‫‪1‬‬
‫‪2‬‬
‫‪3‬‬
‫‪4‬‬
‫‪RAM‬‬
‫‪RAM‬‬
‫‪RAM‬‬
‫‪RAM‬‬
‫‪ROM‬‬
‫•‬
‫يه‌هل ل ل للخ تك ل ل ل لم‌حرز تا ل ل ل ل ت رت ل ل ل للو ت‬
‫آ رست خكل ل للهت‌هل ل للخ ت رو تك ل ل ل تا حشل ل للةت‬
‫خاط ل ل ل ل ل للةتو ي ل ل ل ل ل للهته ل ل ل ل ل للخ تت ل ل ل ل ل للختحرز ت‬
‫ي ل ل ل ‌ك تا حش ل ل للاتحزتچن ل ل ل كنتا حش ل ل لةت‬
‫خاطاترحتحمتاخبتبيتكنن ‪.‬‬
‫‪RD WR‬‬
‫‪Data bus‬‬
‫‪Data‬‬
‫‪Data‬‬
‫‪Data‬‬
‫‪Data‬‬
‫‪6‬‬
‫‪7-1‬‬
‫‪Decoder‬‬
‫‪3 2 1 0‬‬
‫‪Data‬‬
‫•‬
‫ا حش ل ل ل ل ل ل ل ل ل ل ل ل لا‌هخ ت‪ RAM‬وت‪ ROM‬حزت‬
‫ي ل ل ل ل ل ل للبتگ ل ل ل ل ل ل ل ر خهت ح هتوتآ رست ل ل ل ل ل ل للات‬
‫‪ CPU‬بتصلتبيتشوم ‪.‬‬
‫‪CPU‬‬
‫‪Address bus‬‬
‫‪16-11 10 9 8‬‬
‫‪CS1‬‬
‫‪CS2‬‬
‫‪RD 128 x 8‬‬
‫‪RAM 1‬‬
‫‪WR‬‬
‫‪AD7‬‬
‫‪CS1‬‬
‫‪CS2‬‬
‫‪RD 128 x 8‬‬
‫‪RAM 2‬‬
‫‪WR‬‬
‫‪AD7‬‬
‫‪CS1‬‬
‫‪CS2‬‬
‫‪x8‬‬
‫‪RD 128‬‬
‫‪RAM 3‬‬
‫‪WR‬‬
‫‪AD7‬‬
‫‪CS1‬‬
‫‪CS2‬‬
‫‪RD 128 x 8‬‬
‫‪WR RAM 4‬‬
‫‪AD7‬‬
‫‪CS1‬‬
‫‪CS2‬‬
‫‪512 x 8‬‬
‫‪AD9 ROM‬‬
‫‪1- 7‬‬
‫‪8‬‬
‫•‬
‫حزتحیللنت خاطللاتهللخت ل حیتجسللت ویتس ل دهتح ظللخ ت رتاخر هللخد تسللات رتآ تهللختزبللخ تجسللت وت سللیخرت‬
‫حهویللهت حر تحسللتفخ هتب ل تشللو ‪ .‬س ل ت للاتحكللنت ومللات خاطللاتهللخت ل تحسللخستب تللوح ت ح هتیللور‬
‫بي‌گي تماتآ رستآ ‪.‬‬
‫•‬
‫س حلوت لختب تلوحت( ‪Content Addressable‬‬
‫حكلنت وملات خاطلاتهلخت لات خاطلا‌هخ ت خ للتآ ر ‌‬
‫)‪ )Memory (CAM‬همتمخب هتبيتشوم ‪.‬‬
‫•‬
‫سخزبخم حوتسخه‌حازحر ‌‪:‬‬
‫)‪Argument register(A‬‬
‫)‪Key register (K‬‬
‫‪Match‬‬
‫‪register‬‬
‫‪Associative memory‬‬
‫‪array and logic‬‬
‫‪Input‬‬
‫‪M‬‬
‫‪7‬‬
‫‪m words‬‬
‫‪n bits per word‬‬
‫‪Read‬‬
‫‪Write‬‬
‫•‬
‫ه كلوات رت خا اتحم ون ت ات ورتبوحز ت ختب تويخ تثبخ ت)‪ A(Argument Register‬بقخيساتبي‌شو ‪.‬‬
‫•‬
‫حگ ت‪ A‬رت خاطاتحم ون تبوجو ت خش )‪،(word[i] = A‬تآمگخهت‪.M[i] = 1‬‬
‫•‬
‫اوخمتكلوختيتكاتبق حر ]‪ M[i‬آ تهخت ح تی تشو ‪،‬ت اتیور تا ا ب تحزت‪ CAM‬وحم هتبي‌شو ‪.‬‬
‫•‬
‫ههللخز تحزتثبللخ ت‪ A‬كللات يللهت‬
‫حزتثبللخ ت‪ K‬ل ح تبخسل تكل تكل تا لل توتكللختكل ل ت رتثبللخ ت‪ A‬حسللتفخ هتبلليتشللو ت(انهللخت ي ‌‬
‫بتنخظ تآ تهخت رتثبخ ت‪ K‬ی ت خشن تبور تبقخيسات حرتبي‌گي م )‪.‬‬
‫‪8‬‬
‫‪An‬‬
‫‪Aj‬‬
‫‪A1‬‬
‫‪Kn‬‬
‫‪Kj‬‬
‫‪K1‬‬
‫‪M1‬‬
‫‪C1n‬‬
‫‪C1j‬‬
‫‪C11‬‬
‫‪Word 1‬‬
‫‪Mi‬‬
‫‪Cin‬‬
‫‪Cij‬‬
‫‪Ci1‬‬
‫‪Word i‬‬
‫‪Mm‬‬
‫‪Cmn‬‬
‫‪Cmj‬‬
‫‪Cm1‬‬
‫‪Word m‬‬
‫‪Bit n‬‬
‫‪Bit j‬‬
‫‪Bit 1‬‬
‫•‬
‫سخزبخم حوت ح حوتك تسلولت خاطات(‪ )Cij‬رت‪:CAM‬‬
‫‪Kj‬‬
‫‪Aj‬‬
‫‪Input‬‬
‫‪Write‬‬
‫‪To M i‬‬
‫•‬
‫•‬
‫•‬
‫‪9‬‬
‫‪Match‬‬
‫‪logic‬‬
‫‪S‬‬
‫‪F ij‬‬
‫‪R‬‬
‫‪Read‬‬
‫حگ ل تالوللات‪ A‬رت خمللات‪i‬حمت خاطللاتبوجللو ت خش ل ت خی ل ته ل ت للهتحزتآ ت للخت للهتبتنللخظ ت رت خمللات‪i‬حمت خاطللات ح ل ت خش ل ‪ .‬رت‬
‫یور تتسخویت هت‪j‬حمت‪ X‬رحتی تب تسنیم‪،‬تپست وحهیمت حشه‪:‬‬
‫‪Xj = AjFij + A’jF’ij‬‬
‫حگ ت اتحزحءتاوخب ت هتهخیت‪،A‬ت‪Xj‬هخت ح تی تشو ت رتمتی ات‪ A‬رت خمات‪i‬حمت خاطاتبوجو تحسهتوت خی ت هتبعخ لت خت‬
‫آ تالوات رتثیخ ت‪( M‬یعن ت‪ )Mi‬ح تی ت و ‪ .‬پست خی ت حشتات خشیم‪:‬‬
‫)‪Mi = X1 X2 … Xn = (X1+K’1)(X2+K’2)…..(Xn+K’n‬‬
‫رمتی ات ورتسحات رتیور ت خا تی تالوات رت خمات‪i‬حمت خاطاتوتی تس ت هتبتنخظ ت خت خماتبور تمط ت رتثبخ ت‬
‫‪ M‬وحهیمت حشه‪:‬‬
‫)‪Mi = ∏( Aj Fij + A’j F’ij + K’j‬‬
:)match logic(‫سخزبخم حوت ح حوتب حرتحم بخق‬
K1
A1
F'i1
F i1
K2
A2
F'i2
F i2
Kn
....
F'in
•
An
F in
Mi
Mi = ∏( Aj Fij + A’j F’ij + K’j)
10
‫•‬
‫بللبتحكللنتحیلللت س ل ت للات خاطللات رت للخزهتهللخ تزبللخويتبعللي تحرلللبت للاتسلللول‌هخ تب للخورت خاطلاتیللخت‬
‫سلللولتهللخیت س ل تش ل هت رتگ شللتاتحیتمز ی ل تب ل ت خش ل ‪ .‬ل تهوللي تحسللخست وت سللتات‪Locality‬‬
‫(ب حات و ) وجو ت حر ‪.‬‬
‫•‬
‫ب حللوت للو تبو للهت)‪ :(Temporal‬بللبتحكللنتحیلللتح ظللختيتكللات رتآكن ل دتمز ك ل تبللور تحسللتفخ هت‬
‫ً‬
‫حرتبي‌گي م ‪،‬تح توخالتهمتحكنو تبور تحستفخ هتهستن ‪ .‬حینتموعتراتخرتب تاوحم تحزت لقاتهلخیت مخبلات‬
‫ً‬
‫ساتهمت ح هتوتهمت ستورحلعولتب حتحستفخ هتب تشوم ‪،‬تحمتطخرترو ‪.‬‬
‫•‬
‫ب حوت و تايزككيت)‪ :(Spatial‬ببتحكنتحیلتحگ تكل تكلولاتبلور ت سلت خريت ل حرتگ اه‪،‬كلولاتهلخ ت‬
‫ب خورت ختحكنتكلوات رتآكن دتمز ك تبور ت ست خريت حرت وحهن تگ اه‪ .‬رتوح هتب لتحرجلخعت مخبلات رت‬
‫ً‬
‫آینل هتمز یل ‪،‬تح توللخالتمز یل تب لللتحرجللخعتاعحللاتحسلله‪ ( .‬للاتظنللوح تبثللخلت ح هتهللخ تب للو ت للاتهللم رت‬
‫كل تآرحكللاتپ ه‌سل همتم يل هتبي‌شللوم ‪،‬توتكللخت سللتورح ت رتكل ت مخبللات للاتا ايللبتوتحرلللبتپ لله سل همت‬
‫حج حتبي‌شوم )‪.‬‬
‫‪11‬‬
‫•‬
‫•‬
‫خاطلا‌هخ تاهللخ ‪،‬ت خاطلا‌هخ تسل زهتوتكللمتحجهل تهسللتن تكللاتح ظللختيترحتكللاتح توللخلت حر ت للاتز ‌و ت‬
‫بل للور ت سل للت خريت ل ل حرتگي م ل ل ترحت رت ل للو تم ي ل ل هتبل لليتكنن ل ل ‪ .‬رتمتی ل للاتظلل للهتحسل للتفخ هتحزت خاطل للةتاهل للخ ت‬
‫س تس دهتا ت ات ح هتهخیتبور تمیخزت ختحستفخ هتحزتحیلتب حوت و تب حجعخ تبي‌ خش ‪.‬‬
‫ا ايبت س‬
‫– اوخمت س‬
‫ت ات خاطا‪:‬‬
‫‌هخت ات خاطاتح ت حت اتسوهت خاطةتاهخ ته حكهتبي‌شوم ‪.‬‬
‫– حگ تكلوةتبور تمط ت رت خاطةتاهخ ت و ‪،‬ت خاطةتاهخ تبور ت ست خريت حرتبي‌گي ‪.‬‬
‫– حگ ل تكلو للةتب للور تمط ل ت رت خاط للةتاه للخ تمب للو ت ل للوك تك للاتكلو للةتب للور تمط ل ترحت رت ل ت حر ‪،‬تحزت خاط لةت‬
‫حیحوتجخكگزينتك ت لوكت رت خاطةتاهخ تبي‌شو ‪.‬‬
‫‪12‬‬
‫•‬
‫اخرحد ت خاطاتسشتبعووالت تحسخستسویت ت نخمتوسبهت ت)‪ (Hit Ratio‬سن ی هتب تشو ‪.‬‬
‫•‬
‫‪ :Hit Ratio‬ری ل تحزتكلللت س ل تهللخت للات خاطللاتكللاتحزت يللبت خاطللةتاهللخ ت ل آور هتبي‌شللو ‪.‬‬
‫(یعن تتع ح یتحزتجست وهخت رت خاطات‪ Cache‬ساتبواقیهتآبيزتحم خمتب تگي )‬
‫•‬
‫للختا ل نتحینمللاتزبللخ ت س ل ت للات خاطللةتاهللخ ت‪ Tc‬وتزبللخ ت س ل ت للات خاطللةتحیللحوت‪ Tm‬خش ل ‪،‬ت‬
‫حیتب خسباتزبلخ ت س ل ت لاتكل تكلولاتحزت خاطلات رتسيسلته ‌كاتحزت خاطلةاهخ ت‌حسلتفخ هت‌بليتكنل ت‬
‫(‪ )Ta‬حزترح اتزی تحستفخ هتب تشو ‪:‬‬
‫‪Ta = Tc + (1 - h) Tm‬‬
‫•‬
‫‪13‬‬
‫بقل حرت‪،h‬توسللبهت ل ت(‪ )Hit Ratio‬بل ت خشل ‪ .‬بللث تو تل ت‪ h = 85%‬خشل تیعنل ت‪ %85‬حزتالللت‬
‫س تهخت ات خاطات حیتجست ویتی تالوات رت خاطاتاهخ ‪،‬تبواقیهتآبيزت وحه ت و ‪.‬‬
‫•‬
‫بثلخل‪ :‬حگل تزبللخ ت س ل ت للات خاطللاتحیللحات‪،100 ns‬توتزبللخ ت س ل ت للات خاطللاتاهللخ ت‪ 10 ns‬خشل ‪ .‬رت‬
‫زبخو تساتوسبهت ت‪ 90‬ری تحسهتبتوسطتزبخ ت س ت ات خاطاترحتب خسباتسنی ‪:‬‬
‫‪Ta = Tc + (1 - h)Tm =10 + (1 - 0.9)*100 = 10 + 10 = 20ns‬‬
‫•‬
‫ممت للا‪ :‬للخا نتحینم للات وتسل ل ت)‪ (Level‬خاط للاتاه للخ ت حش للتات خش للیمتوتی للخت ل ل حیتجس للت وهخد تب ب للورت للات‬
‫س ل ت للات خاط للاتج للخمب ت للویم‪،‬تزب للخ ت س ل ت للاتك ل تكلو للاتحزت خاط للات رتچن للي تسيس للته ت‌حزت ‌رح للاتزی ل ت‬
‫ب خسباتب تگ ‪:‬‬
‫‪Ta = Tc + (1-H1)Tm1+(1-H1)(1-H2)Tm2‬‬
‫•‬
‫بثللخل‪ :‬حگل ت ل حیت س ل ت للاتیل تالوللاتح تل حت خاطللاتاهللخ تجسللت وتشللو توت رتیللور تظل متبواقیللهت للا سل ح ت‬
‫خاطاتحیحات ویمتوت رتآم ختهمتالواتبوجو تمبخش توت رتاهخیلهتمخچلخرت لات س ل ت لات خاطلاتجلخمب ت لویم‪.‬‬
‫خا نتحینماتزبخ ت س ت ات خاطاتاهخ ‪،‬تحیحاتوتجلخمب ت ا لبت‪،10‬ت‪ 100‬وت‪ 10000‬ملخموتثخمیلات خشل توتمل ت‬
‫بواقی للهت خاط للاتاه للخ ت(‪ )H1‬وتحی للحات)‪،(H2‬ت ا للبت‪ %90‬وت‪ %95‬خش ل ‪،‬تزب للخ ت س ل ت للاتح ظ للخ ترحت رت‬
‫خلهتسحاتب خسباتموخیی ‪.‬‬
‫‪Ta = 10 + (1 – 0.9)100 + (1 - 0.9)(1 – 0.95)10000 = 70 ns‬‬
‫‪14‬‬
‫•‬
‫حمتقخلت ح هتهختحزت خاطةتحیحوت ات خاطةتاهخ تا حكن تمگخشهتمخب هتبي‌شو ‪.‬‬
‫•‬
‫اخ هتمگخشه‪ :‬انخظ ت ي ت لوك‌هخ ت خاطة‌حیحو‌توت لوك‌هخ ت خاطةتاهخ ترحتبشخصتبي‌سخ ‌ز ‪.‬‬
‫•‬
‫حموحعتمگخشه‪:‬‬
‫– مگخشهتحم ون ت‪Associative Mapping‬‬
‫– مگخشهتبستق م ‪Direct Mapping‬‬
‫– مگخشهتحم ون تب ووظا‌ح ‪Set-Associative Mapping‬‬
‫‪15‬‬
‫•‬
‫ه ت لوكتحزت خاطةتاهخ تبي‌اوحم ته ت لوكتحزت خاطةتحیحوترحتم ي هتكن ت( خ ل هتحوع خف)‪.‬‬
‫•‬
‫ه تالواتحزت خاطةتاهخ ‪،‬تهمتآ رستكلوةت خاطاتوتهمتب تويخ تآ ترحتم ي هتبي‌كن ‪.‬‬
‫•‬
‫ل حیتجسللت ویتیل تالوللاتآ رستآ تاوسللطت‪ CPU‬اولیل تشل هتوت رت‪ Argument Register‬ل حرتبل ت‬
‫گي ل توت للختاوللخب تآ رستهللخیتبوجللو تبقخیسللاتب ل تشللو ‪ .‬رتیللور تظ ل متوجللو تی ل تآ رست رت خاطللاتاهللخ ‪،‬تآ ت‬
‫آ رستوتالوللاتم ي ل هتش ل هت رتآ تحزت خاطللاتحیللحات للات خاطللاتاهللخ تآور هتش ل هتوت رتیللور تپ ل ت للو ت خاط لات‬
‫اهخ ترویتحولي تالواتحیتساتوحر ت خاطاتش هتموشتاتب تشو ت(سیخسهت‪.)FIFO‬‬
‫)‪address (15 bits‬‬
‫‪Argument register‬‬
‫‪16‬‬
‫‪Data‬‬
‫‪Address‬‬
‫‪34 5 0‬‬
‫‪67 1 0‬‬
‫‪12 3 4‬‬
‫‪01 0 0 0‬‬
‫‪02 7 7 7‬‬
‫‪22 2 3 5‬‬
‫‪CAM‬‬
‫•‬
‫ه ت لوكت خاطاتانهخت رتك تبكخ تحزت خاطةتاهخ تبي‌اوحم تم ي هتشو ‪.‬‬
‫•‬
‫ك تآ رست‪ -n‬ت ت خاطةحیحو‪،‬ت ات وت سوهتزي تاقس متبي‌شوم ‪:‬‬
‫– ‪ k‬يهت ح ت‪.INDEX‬‬
‫– ‪ n-k‬يهت ح ت‪.TAG‬‬
‫حزتآ رست‪ n‬ت ت ح ت س ت ات خاطةتحیحوتوتحزت‪ k‬يهت ح ت س‬
‫رح ات ي تآ رست خاطاتحیحاتوت خاطاتاهخ ‪:‬‬
‫•‬
‫•‬
‫ت ات خاطةتاهخ تحستفخ هتبي‌شو ‪.‬‬
‫)‪Index(9‬‬
‫‪512 x 12‬‬
‫‪000‬‬
‫‪Main memory‬‬
‫‪Cache memory‬‬
‫‪Address = 9 bits‬‬
‫‪Data = 12 bits‬‬
‫‪17‬‬
‫‪32K x 12‬‬
‫‪00 000‬‬
‫‪Address = 15 bits‬‬
‫‪Data = 12 bits‬‬
‫‪777‬‬
‫‪77 777‬‬
‫)‪Tag(6‬‬
Memory
address
00000
Memory data
12 2 0
00777
01000
23 4 0
34 5 0
01777
02000
45 6 0
56 7 0
02777
67 1 0
Index
address
000
777
Cache memory
Tag
00
Data
12 2 0
02
67 1 0
18
‫•‬
‫‪ CPU‬ك تآ رست صور ت(‪ )TAG:INDEX‬اول تبي‌كن ‪.‬‬
‫•‬
‫سپستحزت يبت‪ INDEX‬ات خاطةتاهلخ ت س ل تپ ل حتبي‌كنل ‪،‬تيعنل ت لات(‪ )tag;data‬وت‪TAG‬رحت لخت‪tag‬‬
‫بقخيساتبي‌كن ‪.‬‬
‫•‬
‫حگل ت‪ TAG = tag‬پلست ح هت رت خاطلاتاهللخ تبوجلو تحسله‪ .‬نلخ حكنت ح هتهلخترحتحزت خاطلةتاهلخ ‌ت خزيلخريتبللي‬
‫كن توت ات‪ CPU‬خزتبي‌گ حم ‪.‬‬
‫•‬
‫حگل ‪ TAG != tag‬پللست ح هت رت خاطللاتاهللخ تبوجللو تم سللهتوت نللخ حكنتالوللاتبللور تمطل ت خیل تحزت خاطللات‬
‫حیللحات وحمل هتشللو توتجللخیگزینتبقل حرت بحللاتگل ‪ .‬حگل تهل ت ل ات رت خاطللاتاهللخ تحزتچنل ینتالوللاتت للمیلتشل هت‬
‫خشل ‪،‬ت رتزبللخو تسللات خ للهت)‪ (Miss‬ر تبل ت هل ت( ح هت رت خاطللاتاهللخ تیخاللهتو للو )‪،‬ت خیل تالللت ل ات للخت ال‬
‫حزت خاطاتسات ح هت رتآ تحسهتجخیگزینتشو ‪.‬‬
‫•‬
‫حزتبعخیللبتمگخشللهتبسللتقیمتحی سللهتسللاتحگل ت وتیللختچنل تالوللاتسللاتآ رستهخی للخ ت حرحیت سللوهت‪ Index‬ب للخ ات‬
‫حسلهتویلات‪Tag‬هلخیتبتفلخو تحسله‪،‬تب ابلختبلور ت سلتیخر ت ل حرت گي مل ‪،‬تبيلزح توسلبهت خ لهت(‪)Miss Rate‬‬
‫ل تحا لزحیشتب ل تیخ ل ‪ .‬وی للات للختاوج للات للاتحی للنتممت للاتس للاتحی للنتآ رسته للخت للختیم ل یگ تاخی لللاتزی للخ یت حرم ل ‪،‬تپ للست‬
‫س ت اتآ تهخت رت مخبات ن ر تپ هتس همتیور تب تگي توتحینتب کلت ن ر تحافخقتب تحات ‪.‬‬
‫‪19‬‬
tag
block offset
Main memory
000
block00
block01
110
111
110
111
000
000
001
1220
00001110
2340
00001111
3450
00110000
4560
00110110
5670
00111101
6710
1220
110
111
000
000
block10
000
000 00000
2340
3450
4560
001
5670
001
6710
000
block11
101
110
111
20
‫•‬
‫•‬
‫‪21‬‬
‫رتحیلنتمللوعتمگخشلله‪،‬تهل تكلولا‌ح ت رت خاطللةتحیللحوت حرح تب ووظلا‌ح تحزتبكللخ تهللخت رت خاطللةتاهللخ تحسللهتكللاتبللي‬
‫اوحم ت رتآ تهخت خرتشو ‪ .‬مگخشهتحم ون تب ووظا‌ح ت ختب ووظاتهخزيت ختحم حزدت‪ 2‬صور تزی تحسه‪:‬‬
‫ظولك تمگخشهتحم ون تب ووظا‌ح ‪:‬‬
‫‪Data1‬‬
‫‪Tag1‬‬
‫‪56 7 0‬‬
‫‪02‬‬
‫‪23 4 0‬‬
‫‪00‬‬
‫‪Data 0‬‬
‫‪34 5 0‬‬
‫‪67 1 0‬‬
‫‪Tag0‬‬
‫‪Index‬‬
‫‪01‬‬
‫‪000‬‬
‫‪02‬‬
‫‪777‬‬
‫–‬
‫–‬
‫‪ CPU‬ك تآ رست صور ت(‪ )TAG:INDEX‬اول تبي‌كن ‪.‬‬
‫س للپست للختحس للتفخ هتحزت‪ INDEX‬للات خاط للةتاه للخ ت س ل ل تپ ل ل حتبي‌كنل ل ‪ .‬يعنل ل ت للاتكلو للاته للخ ت خاط للةت‬
‫پنه للخ (‪ )tag0,data0‬وت(‪ )tag1,data1‬وت اي للبت‪TAG‬رحت للخت‪ tag0‬و‪ tag1‬بقخيس للاتب لليتكنل ل ‪.‬‬
‫للخلتحگ ل ت‪ TAG‬للخت‪ tag1‬ی للخت‪ tag0‬ح ل ت للو ت ح هتبتن للخظ ت للختآ ت چس للبت للات‪ CPU‬ا س للتخ هتبل ل ت‬
‫شو ‪.‬‬
‫–‬
‫ليتحز وت‬
‫حگ ت‪ TAG‬خت‪ tag1‬وت‪ tag0‬ح ل تمبلو ‪،‬تالولاتحزت خاطلاتحیلحات وحمل هتبل تشلو توتجلخكگزينتكك ‌‬
‫كلو ل للةت(‪ )tag0,data0‬ی ل للخت(‪ )tag1,data1‬ب ل ل تش ل للو ‪ .‬ل ل حیتحینم ل للاتیک ل ل تحزتالو ل للخ ت ل ل حیتج ل للخیگزین ت‬
‫حمتاخبت و تب تاوح تحزتحلگوریتمتهخیتاصخ فا‪،‬ت‪ FIFO‬وت‪ LRU‬ب تاوح تحستفخ هتس ‪.‬‬
Valid
0 Tag
Cache
:
:
Adr Tag
Compare
0
1 Data
Cache
Cache Index
1
Cache Data
Cache Block 0
Cache Block 0
:
:
Sel1 1
Mux
0 Sel0
Cache Tag
Valid
:
:
Compare
OR
Cache Block
22
‫•‬
‫‪set‬‬
‫رتیل ل ت خاط للاتاه للخ تشل ل سهتپل ل ی تب ووظ للاتحیت للخت وت ل للوات رتهل ل تب ووظ للات( ‪two-way‬‬
‫)‪ associative‬حزت ل للواته للخیتچاخرالو للاتحیتحس للتفخ هتبل ل تش للو ‪ .‬حی للنت خاط للاتاه للخ تبل ل تاوحمل ل ت رتب و للوعت‬
‫‪ 2048‬الو للاتحزت خاط للاتحی للحاترحت رت للو تج للخیت هل ل ‪ .‬حمل ل حزهت خاط للاتحی للحات‪ 128k‬الو للاتحس لله‪ .‬چس للبت‬
‫(‪ )tag‬رتحینت خاطاتچن ت هتحسه؟‬
‫‪7‬‬
‫‪10‬‬
‫‪Address 17bit: tag index‬‬
‫‪128k RAM‬‬
‫‪17 bit address‬‬
‫‪2-way set‬‬
‫‪associative cache‬‬
‫‪2048 word‬‬
‫‪2*1024 word‬‬
‫‪10 bit address‬‬
‫‪23‬‬
‫‪10‬‬
‫چل للو ت خاطل للات‪ two-way‬حسل للهتوت‬
‫‪ 2048‬الوللا گن للخیشت حر تپللسته ل ‌‬
‫سللوهت‪ 1024‬الوللاتگن للخیشت حر ت‬
‫وت ل ل ل حیتآ رست حل ل للاتآ تهل ل للخت‪ 10‬ل ل للهت‬
‫الزمتحسه‪.‬‬
‫‪ .1‬روش کامللل نو یل (‪ :)Write Through‬رتحیللنترو تحگل تكلوللاتح تكللاتبلليتموزسل مت رو ت خاطللةتاهللخ ت‬
‫خش ل ت(‪ Hit‬ر ل ح هت خش ل ) كلوللةتبللور تمط ل ترحت للات للورتبللوحز تهللمت رت خاطللةتاهللخ توتهللمت رت خاطللةتحیللحوتبلليت‬
‫موزسل م‪ .‬رتريل تحیللنتیللور تاقللطتالوللات رت خاطللاتحیللحاتموشللتاتبل تشللو ‪ .‬رتحكللنترو ت خاطللاتهوي للا للخویت‬
‫خاطللات‬
‫ح ظللخ تنهنگللخمتشل هتحسلله‪،‬تویللاتحكللنترو ت للات للخ ت س ل ت للات خاطا‪،‬كنل تحسلله‪ .‬ل لیلتسنل ت للو‬
‫حیللحا‪،‬ت ل حیتموشل ت رت خاطللا‪،‬ت‪ CPU‬الوللخ ترحت رتی ل ت للخا ت‪ FIFO‬بل تمودس ل توت للاتح حبللاتاللخرتب ل ولتب ل ت‬
‫شو توتسپستحزت خا تالوخ ت رت خاطاتحیحاتموشتاتب تشوم ‪.‬‬
‫‪RAM‬‬
‫‪Cache‬‬
‫‪Processor‬‬
‫‪ Write‬للات خاط للاتحی للحاتوت‪،Cache‬ت‪ H‬موخی للخمگ تبق ل حرت‪Hit-‬‬
‫‪Buffer‬س ل ت‬
‫• للختا ل نتحینم للات‪ Tc, Tm‬ا للبتزب للخ ت‬
‫‪ Ratio‬وت‪ W‬مل ل تر ل ل ح تظولی للخ تموشل ل ت خشل ل ت(بقل ل حریت للي تی للف توتیل ل ) وتس س للتمت للخترو ت ‪Write‬‬
‫‪ Through‬موش ترحتحم خمت ه ‪،‬تزبخ ت س تالت ات خاطات رتحینتس ستمتحزترح اتزی ت سهتب آی ‪:‬‬
‫•‬
‫‪24‬‬
‫)‪Ta = Tc + (1-H)Tm + W(Tm-Tc‬‬
‫ممتا‪ :‬رتیورت تساتظولتموش تر ت ه ‪،‬ت لیلتحینماتموش ت رته ت وت خاطات صور تهوزبخ تیلور تبل تگيل ‌ ‪،‬تپلست رت‬
‫ا بولت)‪ (Tm-Tc‬آور هتش هتزی حت‪ Tc‬یمبخرت سخبتش ه‪.‬‬
‫‪ .2‬روش پللو نو ی ل (‪ :)Write-Back‬رتحیللنترو تحگ ل تكلوللاتح تكللاتبلليتموزس ل مت رو ت خاطللةتاهللخ ت خش ل ت‬
‫(‪)Hit‬كلوللةتبللور تمطل ترحتاقللطت رو ت‪ cache‬بي‌موزسل متوتیل تالللشتسللاتو للخ ت هنل هتت یيل تبقل حرتحیللنتالوللا‬
‫حسهترحتی تب تسنیم‪.‬‬
‫• حگل ل تكلول لا‌ح ترحتك للاتب لليتموزسل ل مت رو ت خاط للةتاه للخ تمب للو (‪ )Miss‬ل للوكت للخویتالو للاترحتحزت خاط للاتحی للحات للات‬
‫خاطللةتاهللخ تبلليتآوريللمتوتت رو ت‪ cache‬بي‌موزس ل م‪ .‬حگ ل ت رتهنگللخمت وحم ل تك ل ت‪ Miss‬حافللخقت خات ل ت لللوكيت‬
‫كات خك تجخكگزينتشو ت رتیورت تسات هتپ چمتالوخ تآ ت ح تی ت و ت رو ت خاطات خزتمودس تبيتشو ‪.‬‬
‫•‬
‫خاطللات رتحكللنترو تنهنگللخمتميسلله‪ .‬ل ینتبعن ل تسللاتاللختزبللخو تسللاتی ل ت لللواتحزت‪ Cache‬للخرنتو للو تح ظللخ ت‬
‫موشللتاتشل هت للات خاطللاتحیللحاتحمتقللخلتمهل تیخ ل ‪ .‬ویللاتحیللنترو تحزترو ت‪ Write Through‬سل دهتال تحسللهت‬
‫زی حت س ت ات خاطاتحیحاتاختجخیتبومنتاخهشتیخااتحسه‪.‬‬
‫•‬
‫للختا ل نتحینمللات‪ Tc, Tm‬ا للبتزبللخ ت س ل ت للات خاطللاتحیللحاتوت‪ Cache‬خش ل ‪،‬ت‪ H‬موخیللخمگ تبق ل حرت‬
‫‪ Hit-Ratio‬وت‪ Wb‬م تی ت لو ت لهتپل چمت رتالولخ ت خشل توتس سلتمت لخترو ت‪ Write Back‬موشل ترحت‬
‫حم خمت ه ‪،‬تزبخ ت س تالت ات خاطات رتحینتس ستمتحزترح طاتزی ت سهتب تآی ‪:‬‬
‫‪Ta = Tc + (1-H)Tm + Wb(1-H)Tm‬‬
‫•‬
‫‪25‬‬
‫ممتللا‪ :‬زبللخو تسللات للهتپل چمتیل تبل تشللو ‪،‬ت رتزبللخو تسللات‪ Miss‬ر تبل ت هل تظل وهت ل تزبللخ ت س ل ت للات خاطللا‪،‬ت‬
‫ی تظولیخ تموش ت رت خاطاتحیحاتميزت حریم‪.‬‬