Giáo trình Kiến trúc máy tính (Phần 2)

CHƯƠNG 4: BNHỚ  
Mã chương: MHSCMT 12 – 04.  
Gii thiu:  
Chương này gii thiu chc năng và nguyên lý hot động ca các cp bnhmáy  
tính: bnhcache: nguyên lý vn hành, phân loi các mc, đánh giá hiu quhot động; và  
nguyên lý vn hành ca bnhớ ảo.  
Mục tiêu:  
- Trình bày được các cp bnhvà cách thc vn hành ca các loi bnhớ được  
gii thiu để có thể đánh giá được hiu năng hot động ca các loi bnhớ  
- Rèn luyn knăng tchc công vic.  
Nội dung chính:  
1. Các loi bnhớ  
Mục đích:  
- Gii thiu vcác loi bnhmáy tính, bnhtrong.  
Bộ nhcha chương trình, nghĩa là cha lnh và sliu. Người ta phân bit các loi  
bộ nh: Bnhtrong (RAM-Bnhvào ra ngu nhiên), được chế to bng cht bán dn;  
bộ nhchỉ đọc (ROM) cũng là loi bnhchỉ đọc và bnhngoài bao gm: đĩa cng, đĩa  
mềm, băng t, trng t, các loi đĩa quang, các loi thnh,...  
Bộ nhRAM có đặc tính là các ô nhcó thể được đọc hoc viết vào trong khong  
thi gian bng nhau cho dù chúng bt kvtrí nào trong bnh. Mi ô nhcó mt địa  
ch, thông thường, mi ô nhlà mt byte (8 bit), nhưng hthng có thể đọc ra hay viết vào  
nhiu byte (2,4, hay 8 byte). Bnhtrong (RAM) được đặc trưng bng dung lượng và tổ  
chc ca nó (sô nhvà sbit cho mi ô nh), thi gian thâm nhp (thi gian tlúc đua ra  
địa chô nhớ đến lúc đọc được ni dung ô nhớ đó) và chu kbnh(thi gian gia hai ln  
liên tiếp thâm nhp bnh).  
1.1 Bnhtrong  
a. Phân loi  
Có thphân loi các vi mch nhbán dn thành bnhcố định, bán cố định và bnhớ  
ghi/đọc như sơ đồ (hình 4-1)  
Bộ nhbán dn  
Bộ nhcố  
đị
nh ROM  
Bộ nhbán cố  
định  
Bộ nhớ  
Ghi/Đọc được  
Bộ nhớ  
định  
trình  
Bộ nhớ  
PROM  
Bộ nhớ  
EPROM  
Bộ nhớ  
EEPROM  
Bộ nhớ  
RAM  
nh  
Bộ nhớ  
RAM  
động  
Phân loi các bnhbán dn  
m
t n
ạ  
(SRAM)  
(DRAM)  
47  
Bộ nhcó ni dung ghi sn mt ln khi chế to gi là bnhcố định và được ký  
hiu là ROM (Read Only Memory). Sau khi đã viết (bng mt n) tnhà máy thì ROM loi  
này không viết li được na. PROM mt dng khác, các bit có thghi bng thiết bghi ca  
người sdng trong mt ln đầu (Programmable ROM). Bnhcó thể đọc/ghi nhiu ln  
gọi là RAM (Random Access Memory) gm có 2 loi: RAM tĩnh là SRAM (Static RAM)  
thường được xây dng trên các mt lt điện t, Ram động là DRAM (Dinamic RAM) được  
xây dng trên cơ snhcác điện tích tụ điện. BnhDRAM phi được phc hi ni  
dung thường xuyên.  
Gia ROM và RAM có mt lp các bnhớ được gi là bnhbán cố định. Trong  
đó có bnhEPROM (Erasable Programmable ROM) có thghi được bng các xung điện  
nhưng cũng xóa được bng tia cc tím, EEPROM (Elictric Erasable Programmable ROM)  
lại có thxóa được bng dòng điện. Các bnhDRAM thường tha mãn nhng yêu cu khi  
cần bnhcó dung lượng ln; trong khi cn có tc độ truy xut nhanh thì li phi dùng các  
bộ SRAM. Nhưng c2 loi này đều bmt thông tin khi ngun điện nuôi bmt đi. Do vy  
các chương trình dùng cho vic khi động máy vi tính như BIOS phi np trên các bnhớ  
ROM gi là ROM BIOS.  
b. Nguyên lý hot động ca các linh kin nhbán dn  
* ROM  
ROM (Read Only Memory) là các chíp nhmà khi đến tay người dùng chcó thể  
đọc được. Đó là loi chíp nhcó ni dung được viết sn mt ln khi chế to và được giữ  
mãi cố định (non- volatile). ROM lp trình kiu mt nạ được chế to trên mt phiến silicon  
nhm to ra nhng tiếp giáp bán dn điện theo mt chiu như diode ti các điểm vt chéo  
nhau trên mt ma trn các dây dn hàng (tsliu) và ct (bit sliu) như ví dtrong (hình  
4.2)  
Tại đó các điểm vt chéo cha diode smang li thông tin là 0, các điểm còn li  
mang thông tin là 1. Khi li ra bgii mã địa chỉ ở mc thp chn mt hàng thì thế li ra  
của các dây bit phn ánh các giá trị được lưu trtrong chip nhti hàng đó. Trên hình 4.2 là  
trường hp chip lưu tr4 tdliu, mi t3 bit: 010,101,001 và 100. Khi bgii mã chn  
địa chhàng Y1 như hình trên thì li ra ca chip nhsxut hin tdliu là 101.  
Y0  
0
1
0
Y1  
Y2  
Y3  
4 dây t(4 hàng)  
1
0
0
0
1
1
0
1
0
1
0
1
3 dây bít 3 ct  
Hình 4-2. BnhROM diode  
48  
* PROM  
PROM (Progammable ROM) là các ROM khtrình cho phép người dùng có thghi  
thông tin được mt ln. Đó là loi ROM mà khi sn xut, tt ccác điểm vt chéo đều được  
đặt các diode hoc transistor ni tiếp vi mt cu chì, khi cn thông tin vi mc logic “1” ở  
điểm vt chéo nào thì chvic cho dòng điện đủ ln đi qua và làm cháy đứt cu chì tương  
ng ở điểm đó và điểm vt chéo đó coi như không có transistor hoc diode. Rõ ràng loi  
PROM này chghi thông tin được mt ln mà không xóa được.  
Hình 4-3.Cu chì trong các điểm vt chéo vi diode,  
transistor lưỡng cc và transistor trường  
* EPROM  
EPROM (Erasable PROM) là các chip nhPROM có thxoá được, nó cho phép ghi  
và xoá thông tin nhiu ln và được chế to theo nguyên tc khác. Trong các chip này, mi  
bit nhlà mt transistor MOS có ca ni được chế to theo công nghFAMOST (Floating  
gate avalanche injection MOS transistor). Sliu có thể được viết vào bng các xung điện  
độ dài c50ms và độ ln +20V khi đặt vào gia cc ca và máng ca transistor.Do ca  
nổi được cách điện cao vi xung quanh nên sau khi hết xung điện, các điện tgivai trò là  
nhng phn tmang thông tin không còn đủ năng lượng để có thvượt ra ngoài lp cách  
điện đó na.  
Vì vy thông tin được gicố định csau khi ngng cp điện cho chip trong mt thi  
gian rt dài (ít nht là 10 năm). Để xoá thông tin tc là làm mt các điện tích trong vùng ca  
nổi, phi chiếu ánh sáng tngoi đủ mnh và chip nh. Nhng điện tử ở đây lúc này hp thụ  
ng lượng nhy lên mc năng lượng cao hơn, chúng sri ca ni như cách thâm nhp  
vào đó. Vì vy trong chip EPROM có mt ca slàm bng thutinh thch anh chỉ để cho  
ánh sáng tngoi đi qua khi cn xoá sliu trong bnh.  
* EEPROM  
EEPROM (Electrically EPROM ) là loi EPROM xoá được bng phương pháp  
điện. Vic np các điện tcho ca ni được thc hin như cách EPROM. Để xoá  
EEPROM  
,có mt lp kênh màng mng ôxít gia vùng ca ni tri xung dưới đế và cc máng  
givai trò quan trng. Các lp cách điện không thlà lý tưởng được, các điện tích mang có  
ththm qua lp phân cách vi mt sác xut thp. Sác xut này tăng lên khi bdày ca lp  
gim đi và hiu điện thế gia 2 điện cc 2 mt lp cách điện tăng lên. Mun phóng các  
điện tích trong vùng ca ni, mt điện thế (-20V) được đặt vào cc ca điều khin và cc  
máng. Lúc này các điện tâm trong ca ni được chy vcc máng qua kênh màng mng  
ôxit và sliu lưu giữ được xoá đi.  
49  
* RAM  
RAM (Random Acess Memory) là loi bnhcó thghi/đọc được. Đây là loi chíp  
nhmà thông tin lưu trthông tin trong nó sẽ được sbmt đi khi bct ngun điện nuôi.  
RAM có 2 loi: RAM động, được viết tt là DRAM (dinamic RAM) và Ram tĩnh được viết  
tắt là SRAM (Static RAM). Cu trúc đơn gin  
Hình 4-4. Vn hành ca bnhRAM  
(Wi, Wj, R/W là các tín hiu điều khin)  
Slot để cm RAM  
Hình 4-5.Hình dáng bên ngoài mt sloi RAM  
Tutheo công nghchế to, người ta phân  
RAM tĩnh được chế to theo công nghECL (CMOS và BiCMOS). Mi bit nhgm  
có các cng logic vi độ 6 transistor MOS, vic nhmt dliu là tn ti nếu bnhớ được  
cung cp điện. SRAM là bnhnhanh, vic đọc không làm huni dung ca ô nhvà thi  
gian thâm nhp bng chu kbnh.  
RAM động dùng kthut MOS. Mi bit nhgm có mt transistor và mt tụ điện.  
ng như SRAM, vic nhmt dliu là tn ti nếu bnhớ được cung cp điện. Vic ghi  
50  
nhda vào vic duy trì điện tích np vào tụ điện và như vy vic đọc mt bit nhlàm ni  
dung bit này bhu. Vy sau mi ln đọc mt ô nh, bphn điều khin bnhphi viết li  
ô nhớ đó ni dung va đọc và do đó chu kbnhớ động ít nht là gp đôi thi gian thâm  
nhp ô nh. Vic lưu githông tin trong bit nhchlà tm thi vì tụ điện sphóng hết điện  
tích đã np vào và như vy phi làm tươi bnhsau mi 2μs. Làm tươi bnhđọc ô nhớ  
và viết li ni dung đó vào li ô nh. Vic làm tươi được thc hin vi tt ccác ô nhớ  
trong bnh. Vic làm tươi bnhớ được thc hin tự động bi mt vi mch bnh.  
Hình 4-6.SRAM và DRAM  
SDRAM (Synchronous DRAM – DRAM đồng b), mt dng DRAM đồng bbus  
bộ nh. Tc độ SDRAM đạt t66-133MHz (thi gian thâm nhp bnht75ns-150ns).  
DDR SDRAM (Double Data Rate SDRAM) là ci tiến ca bnhSDRAM vi tc  
độ truyn ti gp đôi SDRAM nhvào vic truyn ti hai ln trong mt chu kbnh. Tc  
độ DDR SDRAM đạt t200-400MHz  
RDRAM (Rambus RAM) là mt loi DRAM được thiết kế vi kthut hoàn toàn  
mới so vi kthut SDRAM. RDRAM hot động đồng btheo mt hthng lp và truyn  
dữ liu theo mt hướng. Mt kênh bnhRDRAM có thhtrợ đến 32 chip DRAM. Mi  
chip được ghép ni tun ttrên mt module gi là RIMM (Rambus Inline Memory Module)  
nhưng vic truyn dliu gia các mch điều khin và tng chíp riêng bit chkhông  
truyn gia các chip vi nhau. Bus bnhRDRAM là đường dn liên tc đi qua các chip và  
module trên bus, mi module có các chân vào và ra trên các đầu đối din. Do đó, nếu các  
khe cm không cha RIMM sphi gn mt module liên tc để đảm bo đường truyn  
được ni lin.Tc độ RDRAM đạt t400-800MHz  
Bộ nhchỉ đọc ROM cũng được chế to bng công nghbán dn. Chương trình  
trong ROM được viết vào lúc chế to nó. Thông thường, ROM cha chương trình khi động  
máy tính, chương trình điều khin trong các thiết bị điều khin tự động,...  
51  
Bảng 4-1. Các kiu bnhbán dn  
2. Các cp bnhớ  
Mục đích:  
- Gii thiu chc năng và nguyên lý hot động ca các cp bnhmáy tính.  
Các đặc tính như lượng thông tin lưu tr, thi gian thâm nhp bnh, chu kbnh,  
giá tin mi bit nhkhiến ta phi phân bit các cp bnh: các bnhnhanh vi dung  
lượng ít đến các bnhchm vi dung lượng ln (hình 4-6)  
52  
MỨC CAO  
Dung lượng thi  
gian truy cp  
Mức qun lý đơn vị  
tham chiếu  
CPU 100s Byte  
1s ns  
Registers  
Instr.Operands  
Cache  
K byte  
CACHE  
4ns  
1-0,1 cents/bit  
Blocks  
Main memory  
M byte  
Memory  
100ns – 300ns  
0,0001 – 0,00001 cents/bit  
pages  
DISK  
DISK  
G byte, 5ms(5000.000ns)  
10-5-10-6 cents/bit  
Files  
TAPE  
Lớn hơn  
MỨC THP  
Hình 4-6. Các cp bnhớ  
Các đặc tính chính ca các cp bnhdn đến hai mc chính là: mức cache - bnhớ  
trong mức bnhớ ảo (bao gm bnhtrong và không gian cp phát trên đĩa cng) (hình  
IV.4). Cách tchc này trong sut đối vi người sdng. Người sdng chthy duy nht  
một không gian định vô nh, độc lp vi vtrí thc tế ca các lnh và dliu cn thâm  
nhp.  
53  
Hình 4-7. Hai mc bnhớ  
Các cp bnhgiúp ích cho người lp trình mun có mt bnhtht nhanh vi chi  
phí đầu tư gii hn. Vì các bnhnhanh đắt tin nên các bnhớ được tchc thành nhiu  
cấp, cp có dung lượng ít thì nhanh nhưng đắt tin hơn cp có dung lượng cao hơn. Mc  
tiêu ca vic thiết lp các cp bnhlà người dùng có mt hthng bnhrtin như cp  
bộ nhthp nht và gn nhanh như cp bnhcao nht. Các cp bnhthường được lng  
vào nhau. Mi dliu trong mt cp thì được gp li trong cp thp hơn và có thtiếp tc  
gặp li trong cp thp nht.  
Chúng ta có nhn xét rng, mi cp bnhcó dung lượng ln hơn cp trên mình,  
ánh xmt phn địa chcác ô nhca mình vào địa chô nhca cp trên trc tiếp có tc  
độ nhanh hơn, và các cp bnhphi có cơ chế qun lý và kim tra các địa chánh x.  
3. Truy cp dliu trong bnhớ  
Mục đích: Trình bày truy cp dliu trong bnhvà thiết bvào ra.  
Cache là bnhnhanh, nó cha lnh và dliu thường xuyên dùng đến. Vic la  
chn lnh và dliu cn đặt vào cache da vào các nguyên tc sau đây:  
Một chương trình mt 90% thi gian thi hành lnh ca nó để thi hành 10% slnh  
của chương trình.  
Nguyên tc trên cũng được áp dng cho vic thâm nhp dliu, nhưng ít hiu  
nghim hơn vic thâm nhp lnh. Như vy có hai nguyên tc: nguyên tc vkhông gian và  
nguyên tc vthi gian  
-Nguyên tc vthi gian: cho biết các ô nhớ được hthng xlý thâm nhp có khả  
ng sẽ được thâm nhp trong tương lai gn. Tht vy, các chương trình được cu to vi  
phn chính là phn được thi hành nhiu nht và các phn phdùng để xlý các trường hp  
ngoi l. Còn sliu luôn có cu trúc và thông thường chcó mt phn sliu được thâm  
nhp nhiu nht mà thôi.  
-Nguyên tc vkhông gian: cho biết, bxlý thâm nhp vào mt ô nhthì có nhiu  
khnăng thâm nhp vào ô nhđịa chkế tiếp do các lnh được sp xếp thành chui có  
tht.  
Tổ chc các cp bnhsao cho các lnh và dliu thường dùng được nm trong bộ  
nhcache, điều này làm tăng hiu quca máy tính mt cách đáng k.  
54  
3.1 Truy nhp bnhvà thiết bvào/ ra  
Thi gian mt chù kca xung đồng hhthng được gi là mt trng thái. Mt  
trng thái được tính tsườn âm ca mt xung đồng hồ đến sườn âm ca xung tiếp theo.  
Chu kmáy hay chu kbus là mt quá trình cơ bn ca bvi xlý hay đơn vlàm  
chbus thc hin vic truyn ti dliu trên bus. Mt chu kmáy gm hai giai đoạn : gi  
địa chlên bus và chuyn dliu đến hay đi. Giai đoạn đầu, gi là thi gian địa ch, trong  
đó địa chỉ đích được vi xlý gi đi cùng vi tín hiu xác định loi chu kbus. Giai đoạn  
hai, gi là thi gian sliu, trong đó bxlý kim tra xem đã có tín hiu sn sàng từ đơn vị  
cần trao đổi thông tin chưa để cp hoc nhn dliu.  
Có 4 loi chu kmáy cơ bn: đọc bnh, viết bnh, đọc vào/ra, viết vào/ra.  
Chu klnh là thi gian mà vi xlý cn để nhn lnh và thi hành mt lnh. Mt chu  
kỳ lnh gm mt hay nhiu chu kmáy.  
Tóm li, các trng thái to nên mt chu kmáy và các chu kmáy to nên mt chu  
kỳ lnh.  
Trng thái đợi: trong nhiu trường hp, ví dnhư do tc độ truy cp ca bnhhay  
tốc độ xlý dliu ca thiết bngoi vi chm hơn tc độ ca vi xlý thì phi có cách nhn  
biết và trì hoãn quá trình trao đổi dliu. Cách gii quyết vn đề này là mt bên thông tin  
chnhn hay phát tiếp thông tin nếu nhn được mt tín hiu sn sàng READY tbnhhay  
ngoi vi ri mi phát dliu tiếp theo. Nếu bnhhay ngoi vi chm, nó strì hoãn vic  
phát tín hiu READY và xlý không nhn ngay được tín hiu mà phi tri qua mt snhp  
đồng h. Mi khong thi gian ng vi mt chu kỳ đồng hồ đợi đó gi là chu kỳ đợi hay  
trng thái đợi. Rõ ràng hthng máy tính càng có nhiu trng thái đời thì hiu sut xlý  
càng chm.  
3.2 Truy nhp bnhchính  
Hình 4-8 cho ta sơ đồ kết ni các chip trong quá trình vi xlý truy nhp chế độ  
MAX. Lúc này 8288 phát ra các tín hiu điều khin cho BUS và mt vài bộ đệm trong bộ  
nhtm thi. Bộ điều khin nhớ điều khin bnhớ để đọc/ viết sliu ti địa chmong  
mun mt cách chính xác  
55  
Clock  
8284  
CLK  
synchr  
READ  
Bộ nhớ  
chính  
CPU  
8086  
Asynchronous  
Hình 4-8. Các chip truy nhp bnhớ ở chế độ MAX  
Hình 4-9 là gin đồ xung ca các tín hiu trên bus hthng trong mt chu kỳ đọc  
hay viết bnh. Trên gin đồ xung theo thi gian ta thy có 4 tín hiu liên quan đến chu kỳ  
bus: xung nhp tmáy phát nhp đồng hCLK, các tín hiu địa ch/trng thái. Các tín hiu  
địa ch/sliu, tín hiu sn sàng READY để chthị đã hoàn thành vic đọc sliu  
HBE, A19-A16  
S7-S3  
TCycle  
T1  
T2  
T3  
T4  
A15-A0  
bus res D15-D0 n định  
Sliu vào bnhớ  
Địa chỉ  
Số liu  
D15 – D0  
Địa chỉ  
trng  
thái  
56  
Địa chỉ  
/sliu  
Hình 4-9. Các tín hiu trên bus hthng trong mt chu kỳ đọc hoc viết bnhớ  
a. Chu kỳ đọc bnhớ  
Nhìn trên hình (a) ta thy chu kỳ đọc bnhbao gm các quá trình xy ra như sau:  
T1: Vi xđưa ra tín hiu điều khin S2, S1, S0 ti bộ điều khin bus, kích bộ đệm  
số liu và địa chhot động. Tiếp đó địa chtrên các chân tA19 đến A0 được đưa vào bộ  
đệm địa ch. Tín hiu HBE chthbyte hoc từ đang được đọc. Tín hiu READY nhy  
xung mc thp, nó chnhy lên cao mt khi bnhớ đã được cp xong sliu.  
T2: Chuyn hướng truyn sliu trên bus. Đường BHE và A19 – A16 chuyn sang  
thông tin trng thái. Các đường A15-A0 chuyn tmode địa chsang mode sliu.  
T3: Chu trình truyn sliu bt đầu. Chng nào sliu chưa n định trên D15-D0  
các hiu trng thái S7- S3 xut hin. Khi toàn bsliu được truyn xong vào bnh, bộ  
điều khin nhsnâng mc điện thế ở dây READY phi được đồng btrước bng cách  
cho nó qua máy nhp 8284 để phát ra xung READY đồng bvi xung nhp đưa vào vi xử  
lý. Như vy sliu được truyn tbộ đệm bnhti bộ đệm sliu. Vi xlý lúc này khi  
phát vic nhn sliu tbộ đệm.  
T4: vi xlý kết thúc vic đọc sliu vào sau ½ chu k. Lúc này các bộ đệm bcm  
nhưng vi xlý vn liên tc cho ra các tín hiu trng thái S7-S3. Sau khi kết thúc T4, bus hệ  
thng li mt ln na trvtrng thái khi phát.  
b. Chu kviết bnhớ  
Các tín hiu trên hình (b) ging như ở chu kỳ đọc, ngoi trtín hiu địa ch/  
số liu  
T1: Các xlý ging trên và chcó bộ điều khin bus được tác động vì viết số  
liu.  
T2: Hướng ca bus địa ch/ sliu không cn đổi bi vì cả địa chvà sliu  
đều là hướng ra. Do đó ngay sau khi cp địa ch, vi xlý có thphát ra ngay sliu vào bộ  
đệm xung nhp đồng htrong T2. Bộ đệm sliu truyn nó ti bộ đệm nh. Đồng thi bộ  
điều khin nhsẽ điều khin bnhviết sliu vào nó.  
T3: Sau khi hoàn thành vic viết sliu bên trong bnh, bộ điều khin nhớ  
sẽ nâng mc điện thế trên dây READY lên cao để chthti vi xlý.  
T4: Vi xlý kết thúc quá trình viết. Các bộ đệm bcm nhưng vi xlý tiếp  
tục ra các tín hiu trng thái S7-S3.  
4. Bộ nhCACHE  
Mục đích:  
- Gii thiu chc năng và nguyên lý hot động ca các cp bnhmáy tính: bnhớ  
cache: nguyên lý vn hành, phân loi các mc, đánh giá hiu quhot động; và  
nguyên lý vn hành ca bnhớ ảo.  
Mức cache -bnhtrong trong bng các cp bnhcó cơ cu vn hành trong sut  
đối vi bxlý. Vi thao tác đọc bnh, bxlý gi mt địa chvà nhn mt dliu từ  
bộ nhtrong. Vi thao tác ghi bnh, bxlý viết mt dliu vào mt ô nhvi mt địa  
chỉ được chra trong bnh. Để cho chương trình vn hành bình thường thì cache phi  
cha mt phn con ca bnhtrong để bxlý có ththâm nhp vào các lnh hoc dliu  
thường dùng tbnhcache. Do dung lượng ca bnhcache nhnên nó chcha mt  
phn chương trình nm trong bnhtrong. Để đảm bo sự đồng nht gia ni dung ca  
cache và bnhtrong thì cache và bnhtrong phi có cùng cu trúc. Vic chuyn dliu  
gia cache và bnhtrong là vic ti lên hay ghi xung các khi dliu. Mi khi cha  
57  
nhiu tbnhtuthuc vào cu trúc bnhcache. Sla chn kích thước ca khi rt  
quan trng cho vn hành ca cache có hiu qu.  
Hình 4-10. Trao đổi dliu gia các thành phn CPU  
Trước khi kho sát vn hành ca cache, ta xét đến các khái nim liên quan:  
- Thành công cache (cache hit): bộ xlý tìm gp phn tcn đọc (ghi) trong cache.  
- Tht bi cache (cache miss): bộ xlý không gp phn tcn đọc (ghi) trong  
cache.  
- Trng pht tht bi cache (cache penalty): Thi gian cn thiết để xlý mt tht  
bại cache. Thi gian bao gm thi gian thâm nhp bnhtrong cng vi thi gian chuyn  
khi cha tcn đọc tbnhtrong đến cache. Thi gian này tuthuc vào kích thước ca  
khi.  
Để hiu được cách vn hành ca cache, ta ln lượt xem xét và gii quyết bn vn đề  
liên quan đến các tình hung khác nhau xy ra trong bnhtrong.  
vấn đề 1: Phi để mt khi bnhvào chnào ca cache (sp xếp khi)?  
vấn đề 2: Làm sao để tìm mt khi khi nó hin din trong cache (nhn din khi)?  
vấn đề 3: Khi nào phi được thay thế trong trường hp tht bi cache (thay thế  
khi)?  
vấn đề 4: Vic gì xy ra khi ghi vào bnh(chiến thut ghi)?  
Gii quyết vn đề 1: Phi để mt khi bnhvào chnào ca cache (sp xếp  
khi)?  
Một khi bnhớ được đặt vào trong cache theo mt trong ba cách sau:  
Kiu tương ng trc tiếp: Nếu mi khi bnhchcó mt vtrí đặt khi duy nht  
trong cache được xác định theo công thc:  
K= i mod n  
Trong đó:  
K: vtrí khi đặt trong cache  
i: sthtca khi trong bnhtrong  
n: skhi ca cache  
Như vy, trong kiu xếp đặt khi này, mi vtrí đặt khi trong cache có thcha mt  
trong các khi trong bnhcách nhau xn khi (x: 0,1,...,m; n: skhi ca cache)  
Số thtkhi cache  
0
Số thtca khi trong bnhtrong  
0, n, 2n,...mn  
1
n-1  
1,n+1, 2n+1,...,mn+1  
n-1, 2n-1,...mn-1  
Kiu hoàn toàn phi hp: trong kiu đặt khi này, mt khi trong bnhtrong có thể  
được đặt vào vtrí bt ktrong cache.  
58  
Như vy, trong kiu xếp đặt khi này, mi vtrí đặt khi trong cache có thcha mt  
trong tt ccác khi trong bnhớ  
Kiu phi hp theo tp hp: vi cách tchc này, cache bao gm các tp hp ca  
các khi cache. Mi tp hp ca các khi cache cha skhi như nhau. Mt khi ca bộ  
nhtrong có thể được đặt vào mt svtrí khi gii hn trong tp hp được xác định bi  
công thc: K= i mod s  
Trong đó: K: vtrí khi đặt trong cache  
i: sthtca khi trong bnhtrong  
s: slượng tp hp trong cache.  
Trong cách đặt khi theo kiu phi hp theo tp hp, nếu tp hp có m khi, sự  
tương ng gia các khi trong bnhtrong và các khi ca cache được gi là phi hp theo  
tập hp m khi.  
Nếu m=1 (mi tp hp có 1 khi), ta có kiu tương ng trc tiếp.  
Nếu m=n (n: skhi ca cache), ta có kiu tương hoàn toàn phi hp.  
Hin nay, phn ln các cache ca các bxđều là kiu tương ng trc tiếp hay  
kiu phi hp theo tp hp (mi tp hp gm 2 hoc 4 khi).  
Ví d: Bộ nhtrong có 32 khi, cache có 8 khi, mi khi gm 32 byte, khi th12  
của bnhtrong được đưa vào cache.  
thtự  
khi  
Bnhớ  
trong  
thtự  
khi  
Bnhớ  
trong  
TH0 TH1 TH2 TH3  
Hoàn toàn phi hp  
Tương ng trc tiếp  
Phi hp theo tp hp  
Gii quyết vn đề 2: Làm sao để tìm mt khi khi nó hin din trong cache (nhn  
din khi)?  
Mỗi khi ca cache đều có mt nhãn địa chcho biết sthtca các khi bnhớ  
trong đang hin din trong cache. Nhãn ca mt khi ca cache có thchthông tin cn  
thiết được xem xét để biết được các khi nm trong cache có cha thông tin mà bxlý cn  
đọc hay không. Tt ccác nhãn đều được xem xét song song (trong kiu tương ng trc tiếp  
và phi hp theo tp hp) vì tc độ là yếu tthen cht. Để biết xem mt khi ca ca cache  
59  
có cha thông tin mà bxlý cn tìm hay không, người ta thêm mt bit đánh du (valid bit)  
vào nhãn để nói lên khi đó có cha thông tin mà bxlý cn tìm hay không.  
Như đã mô tả ở phn đầu, vi thao tác đọc (ghi) bnh, bxđưa ra mt địa chỉ  
và nhn (viết vào) mt dliu t(vào) bnhtrong. Địa chmà bxđưa ra có thphân  
tích thành hai thành phn: phn nhn dng sthtkhi và phn xác định vtrí tcn đọc  
trong khi.  
Tương ng vi ba kiu lp đặt khi đã xét, ta có:  
a. Căn cvào tchc sttrong khi bnhmà sbit trong địa chxác định vtrí  
từ cn đọc trong khi. Cách này đúng vi cba cách xếp đặt khi đã xét.  
b. Phn nhn dng sthtkhi skhác nhau tuthuc vào cách xếp đặt khi,  
trường chskhi được so sánh vi nhãn ca cache để xác định khi trong cache.  
Dữ liu được bxđọc cùng lúc vi vic đọc nhãn. Phn chskhi ca khi  
trong bnhtrong được so sánh vi bng tương quan để xác định khi có nm trong cache  
hay không. Để chc rng nhãn cha thông tin đúng đắn (tc là khi có cha tmà bxlý  
cần đọc-ghi), nếu vic so sánh nhãn ca khi cache ging vi sthtkhi, bit đánh du  
(Valid bit) phi được bt lên. Ngược li, kết quso sánh được bqua. Bxlý căn cvào  
phn xác định ttrong khi để đọc (ghi) dliu t(vào) cache.  
- Đối vi kiu tương ng trc tiếp, phn nhn dng chskhi được chia thành hai  
phn:  
+ Phn chskhi cache: chra sthtkhi cache tương ng cn xem xét.  
+ Phn nhãn: so sánh tương ng vi nhãn ca khi cache được chra bi phn chsố  
khi  
Chskhi trong bnhớ  
Địa chỉ  
từ cn đọc trong khi  
Nhãn  
Chskhi cache  
Đối vi kiu hoàn toàn phi hp, phn nhn dng chskhi trong địa chsẽ được so  
sánh vi nhãn ca tt ccác khi cache.  
Địa chỉ  
Chskhi  
từ cn đọc trong khi  
Đối vi kiu phi hp theo tp hp, phn nhn dng chskhi được chia thành hai  
phn:  
+ Phn chstp hp: chra sthttp hp trong cache cn xem xét.  
+ Phn nhãn: so sánh tương ng vi nhãn ca các khi cache thuc tp hp được chra bi  
phn chstp hp.  
Chskhi bnhớ  
Địa chỉ  
từ cn đọc trong khi  
Nhãn  
Chstp hp  
60  
Ví d: phân tích địa chmt ttrong được cho trên, địa chxác định mt ttrong  
bộ nhcó 10 bit, tutheo cách xếp đặt khi mà ta có thphân tích địa chnày thành các  
thành phn như sau:  
Đối vi kiu tương ng trc tiếp:  
Đối vi kiu hoàn toàn phi hp:  
Đối vi kiu phi hp theo tp hp, giscache gm 4 tp hp, mi tp hp gm hai khi:  
Gii quyết vn đề 3: Khi nào phi được thay thế trong trường hp tht bi cache  
(thay thế khi)?  
Khi có tht bi cache, bộ điều khin cache thâm nhp bnhtrong và chuyn khi  
mà bxlý cn đọc (ghi) vào cache. Như vy, khi nào trong cache sbthay thế bi khi  
mới được chuyn lên. Đối vi kiu tương ng trc tiếp, vtrí đặt khi không có sla chn,  
được xác định bi trường chskhi cache trong địa chca tcn đọc (ghi). Nếu cache  
là kiu hoàn toàn phi hp hay phi hp theo tp hp thì khi tht bi phi chn la thay thế  
trong nhiu khi. Có bn chiến thut chyếu dùng để chn khi thay thế trong cache:  
- Thay thế ngu nhiên: để phân bố đồng đều vic thay thế, các khi cn thay thế  
trong cache được chn ngu nhiên.  
- Khi xưa nht (LRU: Least Recently Used): các khi đã được thâm nhp sẽ được  
đánh du và khi bthay thế là khi không được dùng tlâu nht.  
- Vào trước ra trước (FIFO: First In First Out): Khi được đưa vào cache đầu tiên,  
nếu bthay thế, khi đó sẽ được thay thế trước nht.  
- Tần ssdng ít nht (LFU: Least Frequently Used): Khi trong cache được tham  
chiếu ít nht  
Điều này sdng hquca nguyên tc sdng ô nhtheo thi gian: nếu các khi  
mới được dùng có khnăng sẽ được dùng trong tương lai gn, khi bthay thế là khi  
không dùng trong thi gian lâu nht.  
Gii quyết vn đề 4: Vic gì xy ra khi ghi vào bnh(chiến thut ghi)?  
Thông thường bxlý thâm nhp cache để đọc thông tin. Chcó khong 15% các  
thâm nhp vào cache là để thc hin thao tác ghi (con snày là 33% vi các tính toán  
vectơ-vectơ và 55% đối vi các phép dch chuyn ma trn). Như vy, để ti ưu hoá các hot  
61  
động ca cache, các nhà thiết kế tìm cách ti ưu hoá vic đọc bi vì các bxlý phi đợi  
đến khi vic đọc hoàn thành nhưng skhông đợi đến khi vic ghi hoàn tt. Hơn na, mt  
khi có thể được đọc, so sánh và như thế vic đọc mt khi có thể được bt đầu khi chsố  
khi được biết. Nếu thao tác đọc thành công, dliu ô nhcn đọc sẽ được giao ngay cho  
bộ xlý. Chú ý rng, khi mt khi được ánh xtbnhtrong vào cache, vic đọc ni  
dung ca khi cache không làm thay đổi ni dung ca khi so vi khi còn nm trong bộ  
nhtrong.  
Đối vi vic ghi vào bnhthì không ging như trên, vic thay đổi ni dung ca mt  
khi không thbt đầu trước khi nhãn được xem xét để biết có thành công hay tht bi.  
Thao tác ghi vào bnhstn nhiu thi gian hơn thao tác đọc bnh. Trong vic ghi bộ  
nhcòn có mt khó khăn khác là bxlý cho biết sbyte cn phi ghi, thường là t1 đến  
8 byte. Để đảm bo đồng nht dliu khi lưu tr, có hai cách chính để ghi vào cache:  
- Ghi đồng thi: Thông tin được ghi đồng thi vào khi ca cache và khi ca bnhớ  
trong. Cách ghi này làm chm tc độ chung ca hthng. Các ngoi vi có thtruy cp bộ  
nhtrc tiếp  
- Ghi li: Để đảm bo tc độ xlý ca hthng, thông tin cn ghi chỉ được ghi vào  
khi trong cache. Để qun lý skhác bit ni dung gia khi ca cache và khi ca bnhớ  
trong, mt bit trng thái (Dirty bit hay Update bit) được dùng để chth. Khi mt thao tác  
ghi vào trong cache, bit trng thái (Dirty bit hay Update bit) ca khi cache sẽ được thiết  
lập. Khi mt khi bthay thế, khi này sẽ được ghi li vào bnhtrong chkhi bit trng thái  
đã được thiết lp. Vi cách ghi này, các ngoi vi liên hệ đến bnhtrong thông qua cache.  
Khi có mt tht bi ghi vào cache thì phi la chn mt trong hai gii pháp sau:  
- Ghi có np: khi cn ghi tbnhtrong được np vào trong cache như mô tả ở  
trên. Cách này thường được dùng trong cách ghi li.  
- Ghi không np: khi được thay đổi bnhtrong không được đưa vào cache. Cách  
này được dùng trong cách ghi đồng thi.  
Trong các tchc có nhiu hơn mt bxlý vi các tchc cache và bnhchia  
sẻ, các vn đề liên quan đến tính đồng nht ca dliu cn được đảm bo. Sthay đổi dữ  
liu trên mt cache riêng lslàm cho dliu trên các hthng cache và bnhliên quan  
không đồng nht. Vn đề trên có thể được gii quyết bng mt trong các hthng cache tổ  
chc như sau:  
+ Mi bộ điều khin cache stheo dõi các thao tác ghi vào bnhtcác bphn  
khác. Nếu thao tác ghi vào phn bnhchia sẻ được ánh xvào cache ca nó qun lý, bộ  
điều khin cache svô hiu hoá sthâm nhp này. Chiến lược này phthuc vào cách ghi  
đồng thi trên tt ccác bộ điều khin cache.  
+ Mt vi mch được dùng để điều khin vic cp nht, mt thao tác ghi vào bnhớ  
từ mt cache nào đó sẽ được cp nht trên các cache khác.  
+ Mt vùng nhchia scho mt hay nhiu bxlý thì không được ánh xlên cache.  
Như vy, tt ccác thâm nhp vào vùng nhchia snày đều btht bi cache.  
62  
Câu hi và bài tp thc hành chương 4 ca hc sinh, sinh viên  
*****  
1. Nêu các loi bbán dn và đặc điểm ca chúng?  
2. Mc tiêu ca các cp bnh?  
3. Nêu hai nguyên tc mà cache da vào đó để vn hành.  
5. Các nguyên nhân chính gây tht bi cache?  
6. Các gii pháp đảm bo tính đồng nht dliu trong hthng bộ đa xlý có bnhớ  
chia sdùng chung?  
7. Các cách ni rng dãy thông ca bnhtrong?  
8. Ti sao phi dùng bnhớ ảo?  
9. Skhác bit gia cache và bnhớ ảo?  
63  
CHƯƠNG 5:THIT BNHP XUT  
Mã chương: MHSCMT 12 – 05.  
Gii thiu:  
Gii thiu mt sthiết blưu trngoài như: đĩa t, đĩa quang, thnh, băng t. Gii  
thiu hthng kết ni cơ bn các bphn bên trong máy tính. Cách giao tiếp gia các ngoi  
vi và bxlý. Phương pháp an toàn dliu trên thiết blưu trngoài.  
Mục tiêu:  
- Nm được cu to và cách vn hành ca các loi thiết blưu trữ  
- Trình bày các phương pháp để đảm bo an toàn dliu lưu trữ  
- Trình bày các kiến thc vhthng kết ni cơ bn, các bphn bên trong máy  
tính, cách giao tiếp gia các thiết bngoi vi và bxlý.  
- Tính cách suy lun cht ch, có cơ skhoa hc.  
Nội dung chính:  
1. Đĩa từ  
Mục đích:  
- Gii thiu mt sthiết blưu trngoài như: đĩa t.  
Dù rng công nghmi không ngng phát minh nhiu loi bphn lưu trmt  
lượng thông tin ln nhưng đĩa tvn givtrí quan trng tnăm 1965. Đĩa tcó hai nhim  
vụ trong máy tính.  
- Lưu trdài hn các tp tin.  
- Thiết lp mt cp bnhbên dưới bnhtrong để làm bnhớ ảo lúc chy chương  
trình.  
Do đĩa mm dn được các thiết blưu trkhác có các tính năng ưu vit hơn nên  
chúng ta không xét đến thiết bnày trong chương trình mà chnói đến đĩa cng. Trong tài  
liu này mô tmt cách khái quát cu to, cách vn hành cũng như đề cp đến các tính cht  
quan trng ca đĩa cng.  
Một đĩa cng cha nhiu lp đĩa (t1 đến 4) quay quanh mt trc khong 3.600-  
15.000 vòng mi phút. Các lp đĩa này được làm bng kim loi vi hai mt được phmt  
cht ttính (hình V.1). Đường kính ca đĩa thay đổi t1,3 inch đến 8 inch. Mi mt ca  
một lp đĩa được chia thành nhiu đường tròn đồng trc gi là rãnh. Thông thường mi mt  
của mt lp đĩa có t10.000 đến gn 30.000 rãnh. Mi rãnh được chia thành nhiu cung  
(sector) dùng cha thông tin. Mt rãnh có thcha t64 đến 800 cung. Cung là đơn vnhỏ  
nht mà máy tính có thể đọc hoc viết (thông thường khong 512 bytes). Chui thông tin  
ghi trên mi cung gm có: sthtca cung, mt khong trng, sliu ca cung đó bao  
gồm ccác mã sa li, mt khong trng, sthtca cung tiếp theo.  
Với kthut ghi mt độ không đều, tt ccác rãnh đều có cùng mt scung, điều  
này làm cho các cung dài hơn các rãnh xa trc quay có mt độ ghi thông tin thp hơn mt  
độ ghi trên các cung nm gn trc quay.  
64  
Hình 5-1. Cu to ca mt đĩa cng  
Hình 5-2.Hình nh bên ngoài ca cng  
Với công nghghi vi mt độ đều, người ta cho ghi nhiu thông tin hơn các rãnh  
xa trc quay. Công nghghi này ngày càng được dùng nhiu vi sra đời ca các chun  
giao din thông minh như chun SCSI.  
Hình 5-3. Mt độ ghi dliu trên các loi đĩa cng  
Để đọc hoc ghi thông tin vào mt cung, ta dùng mt đầu đọc ghi di động áp vào mi  
mặt ca mi lp đĩa. Các đầu đọc/ghi này được gn cht vào mt thanh làm cho chúng cùng  
di chuyn trên mt đường bán kính ca mi lp đĩa và như thế tt ccác đầu này đều trên  
nhng rãnh có cùng bán kính ca các lp đĩa. Ttr“ (cylinder) được dùng để gi tt cả  
các rãnh ca các lp đĩa có cùng bán kính và nm trên mt hình tr.  
65  
Người ta luôn mun đọc nhanh đĩa tnên thông thường ổ đĩa đọc nhiu hơn sdữ  
liu cn đọc; người ta nói đây là cách đọc trước. Để qun lý các phc tp khi kết ni (hoc  
ngưng kết ni) lúc đọc (hoc ghi) thông tin, và vic đọc trước, ổ đĩa cn có bộ điều khin  
đĩa.  
Công nghip chế to đĩa ttp trung vào vic nâng cao dung lượng ca đĩa mà đơn vị  
đo lường là mt độ trên mt đơn vbmt  
Bảng 5-1. Thông skthut ca đĩa cng  
Bảng thông skthut đĩa cng  
Dung lượng ti đa  
Số lượng cn đọc  
Có thể đạt 500 GB  
1-8  
Số tm ghi (đĩa)  
1-4  
Cache (bộ đệm)  
2-16 MB  
Số cung (Sectors -512 byte/sector)  
Tốc độ quay đĩa (RPM)  
Mật độ  
Mật độ rãnh (TPI-Max Track/Inch)  
Mật độ ghi BPI (Max Bits/Inch)  
Tốc độ dliu ti đa (internal)  
Tốc độ truyn dliu vi ngoi vi  
Thi gian chuyn track R/W  
Thi gian quay na vòng  
Xxx,xxx,xxx  
3600-15000  
Có thể đạt 95 Gb/in  
Có thể đạt 120.000  
Có thể đạt 702.000  
Có thể đạt 900 Mb/s  
Có thể đạt 320 Mb/s  
Có thể đạt 15 ms  
Có thể đạt 6 ms  
2. Đĩa quang  
Mục đích:  
- Gii thiu mt sthiết blưu trngoài như: đĩa quang.  
Các thiết blưu trquang rt thích hp cho vic phát hành các sn phm văn hoá, sao  
u dliu trên các hthng máy tính hin nay. Ra đời vào năm 1978, đây là sn phm ca  
sự hp tác nghiên cu gia hai công ty Sony và Philips trong công nghip gii trí. Tnăm  
1980 đến nay, công nghip đĩa quang phát trin mnh trong chai lĩnh vc gii trí và lưu trữ  
dữ liu máy tính. Quá trình đọc thông tin da trên sphn chiếu ca các tia laser năng  
lượng thp tlp lưu trdliu. Bphn tiếp nhn ánh sáng snhn biết được nhng điểm  
mà ti đó tia laser bphn xmnh hay biến mt do các vết khc (pit) trên bmt đĩa. Các  
tia phn xmnh chra rng ti điểm đó không có lkhc và điểm này được gi là điểm  
nền (land). Bnhn ánh sáng trong ổ đĩa thu nhn các tia phn xvà khuếch tán được khúc  
xạ tbmt đĩa. Khi các ngun sáng được thu nhn, bvi xlý sdch các mu sáng thành  
các bit dliu hay âm thanh. Các ltrên CD sâu 0,12 micron và rng 0,6 micron (1 micron  
bằng mt phn ngàn mm). Các lnày được khc theo mt track hình xon c vi khong  
cách 1,6 micron gia các vòng, khong 16.000 track/inch. Các l(pit) và nn (land) kéo dài  
khon 0,9 đến 3,3 micron. Track bt đầu tphía trong và kết thúc phía ngoài theo mt  
đường khép kín các rìa đĩa 5mm. Dliu lưu trên CD thành tng khi, mi khi cha 2.352  
byte. Trong đó, 304 byte cha các thông tin vbit đồng b, bit nhn dng (ID), mã sa li  
(ECC), mã phát hin li (EDC). Còn li 2.048 byte cha dliu. Tc độ đọc chun ca CD-  
ROM là 75 khi/s hay 153.600 byte/s hay 150KB/s (1X).  
Dưới đây là mt sloi đĩa quang thông dng.  
66  
Tải về để xem bản đầy đủ
pdf 58 trang baolam 11/05/2022 5580
Bạn đang xem 20 trang mẫu của tài liệu "Giáo trình Kiến trúc máy tính (Phần 2)", để tải tài liệu gốc về máy hãy click vào nút Download ở trên

File đính kèm:

  • pdfgiao_trinh_kien_truc_may_tinh_phan_2.pdf