Hợp ngữ ASM-Chương 04-Memory - Hiệu suất của Cache

Chia sẻ: Son Cung | Ngày: | Loại File: PDF | Số trang:24

0
221
lượt xem
171
download

Hợp ngữ ASM-Chương 04-Memory - Hiệu suất của Cache

Mô tả tài liệu
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

Tham khảo tài liệu 'hợp ngữ asm-chương 04-memory - hiệu suất của cache', công nghệ thông tin, kỹ thuật lập trình phục vụ nhu cầu học tập, nghiên cứu và làm việc hiệu quả

Chủ đề:
Lưu

Nội dung Text: Hợp ngữ ASM-Chương 04-Memory - Hiệu suất của Cache

  1. BỘ NHỚ Ộ (Memory) Muïc tieâu : 1. Hieåu ñöôc cau tao cuûa boä nhôù, chöùc naêng vaø hoat ñoäng cuûa Hieu ñöôïc caáu taïo cua nhô, chöc nang va hoaït cua boä nhôù. 2. Naém ñöôïïc q trình ñoïïc boää nhôù & ghi boää nhôù. quaù g 3. Vai troø cuûa boä nhôù Cache trong maùy tính. Chương 3 : Tổ chức Memory 1
  2. Boä nhôù (Memory) Noäi dung : 1. Toå chöùc boä nhô cuûa maùy tính IBM PC To chöc nhôù cua may 2. Phaân loaïi boä nhôù : Primary Memory vaø Secondary Memory. 3. Qua 3 Quaù trình CPU ñoc boä nhôù ñoïc nhô. 4. Quaù trình CPU ghi boä nhôù. 5. Boä nhôù Cache. Chương 3 : Tổ chức Memory 2
  3. Hiệu suất của Cache ệ Tính toaùn hieäu suaát thöïc thi cuûa Cache : Goï G i c thôøi gian t i truy xuaáát cuûûa C h Cache M laø thôøi gian truy xuaát boä nhôù h laø tæ leä thaønh coâng (hit ratio), laø tæ soá giöõa soá laàn tham chieáu cache vôùi toång soá laàn tham chieáu. h =(k-1)/k Tæ leä thaáát baïi (miss ratio) (1-h) æ Thôøi gian truy xuaát trung bình = c+(1-h)m Khi h 1, taát caû truy xuaát ñeàu tham chieáu tôùi Cache, thôøi gian truy xuaát trung bình c. Khi h 0, caààn phaûi tham chieáu boä nhôù chính moïi luùc, thôøi gian truy xuaát trung bình c+m. Chương 3 : Tổ chức Memory 3
  4. Hieääu suaát cuûa Cache (cont) ( ) CPU Trong Registers? Trong Cache L1? Trong Cache L2 treân chip? Trong Cache L2 thöù caáp? thö cap? Trong RAM? Treân Ñóa? Chương 3 : Tổ chức Memory 4
  5. A Two Level Caching System Chương 3 : Tổ chức Memory 5
  6. ế Các chiến lược trữ đệm trong Cache Các chiến lược trữ đệm liên quan đến tác vụ đọc ghi từ CPU. Có 2 loại : Writethrough Cache (WTC) và Writeback cache (WBC). • Khi CPU đọc từ bộ nhớ qui ước thì WTC và WBC đều như nhau : sẽ đọc 1 đoạn nội dung trong bộ nhớ vào cache. • Khi CPU ghi ra bộ nhớ qui ước : iC i ộ ớ i ớ WTC : CPU ghi data ra vùng đệm ghi (write buffer) rồi bỏ đó tiếp tục việc khác, cache sẽ lấy nội dung trong buffer rồi chịu trách nhiệm ghi ra bộ nhớ qui ước khi bus rãnh. WBC : CPU ghi dhi data vào cache, khi cache đầ thì đẩ thông tin ra bộ đệ (đệ castoff) à h h đầy hì đẩy hô i đệm (đệm ff) rồi từ castoof, data chuyển sang bộ nhớ qui ước. Chương 3 : Tổ chức Memory 6
  7. 00000 Interrup Vector Table M 00400 BIOS and DOS data E 00600 Resident portion of DOS M O User RAM U R A0000 EGA Color Video Y B0000 Monochrome Video M B8000 Color Video C0000 Reserved ROM (not used) A F0000 Reserved ROM P F6000 ROM BASIC FE000 Chương 3 : BIOS Memory ROM Tổ chức 7
  8. Memory Map 1024 bytes thaáp nhaát chöùa baûng vector interrupt Dos data Area chöùa caùc bieán ñöôïc DOS söû duïng nhö : Keyboard buffer : caùc phím nhaán ñöôïc löu cho ñeán khi ñöôïc xöû lyù. Côø chæ tình traïng keyboard : cho bieát phím naøo ñang ñöôïc nhaáán. h Ñòa chæ coång printer. Ñòa chæ coång tuaàn töï Moâ taû caùc thieát bò ñang coù trong heä thoáng : toång dung löôïng boä nhôù, soáá oåå ñóa, kieååu maøn hình… Chương 3 : Tổ chức Memory 8
  9. Memory Map User Ram : vò trí thöôøng truù cuûa DOS ôû ñòa chæ 0600H. Vuøng nhôù troáng naèm ngay döôùi vuøng nhôù Dos. Rom Area : töø C000H – FFFFHñöôïc IBM daønh rieâng cho Rom söû duïng chöùa hard disk controller, Rom Basic. Rom BIOS : töø F000H – FFFFH vuøng nhôù cao nhaát cuûa boä nhôù chöa cac chöùa caùc chöông trình con caáp thaáp cuûa Dos duøng cho vieäc cap thap cua dung xuaát nhaäp vaø caùc chöùc naêng khaùc.. Chương 3 : Tổ chức Memory 9
  10. Quaù trình Boot maùy Xaõy ra khi ta power on hay nhaán nuùt Reset. Boä VXL xoùa taát caû oâ nhôù cuûa boä nhôù trôû veà 0, kieåm tra chaún leû boä oä V oa tat ca o ô cua ô t ô ve e t ac a e nhôù, thieát laäp thanh ghi CS troû ñeán segment FFFFh vaø con troû leänh IP troû tôùi ñòa chæ offset baèng 0. Chæ thò ñaàu tieân ñöôïc MT thöïc thi ôû ñòa chæ aán ñònh bôûi noäi dung caëp thanh ghi CS:IP, ñoù chính laø FFFF0H , ñieåm nhaäp tôùi BIOS trong ROM. Chương 3 : Tổ chức Memory 10
  11. Trình töï taùc vuï ñoïc oâ nhôù CPU ñöa ñòa chæ oâ nhôù caàn ñoïc vaøo thanh ghi ñòa chæ. æ Maïch giaûi maõ xaùc ñònh ñòa chæ oâ nhôù. CPU göûi tín hieäu ñieàu khieån ñoïc boä nhôù. Noäi dung oâ nhôù caàn ñoïc ñöôïc ñöa ra thanh ghi döõ lieäu. o nhô can ñoc ñöôc dö CPU ñoïc noäi dung cuûa thanh ghi döõ lieäu. Chương 3 : Tổ chức Memory 11
  12. Maïch giaûi maõ ñòa chæ oâ nhôù Maïch ñieän coù nhieäm vuï xaùc ñònh ñuùng oâ nhôù caàn truy xuaát ñang coù ñòa chæ löu trong thanh ghi ñòa chæ. Boä nhôù laøm vieäc ñöôïc chia thaønh nhieàu oâ nhôù. Kích thöôùc moãi oâ nhôù thay ñoåi tuøy theo maùy, thöôøng laø 8 hay 16 bit töùc 1 byte hay 1 word. Neáu kích thöôùc moãi oâ nhôù laø 1 byte thì seõ coù 8 ñöôøng döõ lieäu song song noái boä nhôù laøm vieäc vôùi boä VXL. Moãi ñöôøng 1 bit , tat caû 8 ñöôøng tao thanh moät tuyen dö lieäu (data taát ca ñöông taïo thaønh tuyeán döõ bus) Chương 3 : Tổ chức Memory 12
  13. Truy xuaát boä nhôù (cont) D7 D6 D5 D4 D3 D2 D1 D0 Ñoïc / ghi döõ lieäu O NHÔ OÂ NHÔÙ ÑÔN VÒ XÖÛ LYÙ Chương 3 : Tổ chức Memory 13
  14. Trình töï taùc vuï ghi oâ nhôù CPU ñöa ñòa chæ oâ nhôù caàn ghi vaøo thanh ghi ñòa chæ cuûa boää nhôù. Maïch giaûi maõ xaùc ñònh ñòa chæ oâ nhôù. CPU ñöa döõ lieäu caààn ghi vaøo thanh ghi döõ lieäu cuûûa boä nhôù. CPU göûi tín hieäu ñieàu khieån ghi boä nhôù. Noäi dung trong thanh ghi döõ lieäu ñöôïc ghi vaøo oâ nhôù coù ñòa hæ ñò chæ xaùùc ñò h ñònh. Chương 3 : Tổ chức Memory 14
  15. Truy xuaát boä nhôù : ghi oâ nhôù OÂâ nhôù ñöôïc choïn 00000 00001 00010 A0 A1 00011 Boä giaûi maõ A2 A3 Boä nhôù Ñòa chæ A4 ........ 11110 11111 Chương 3 : Tổ chức Memory 15
  16. Stack Stack laø vuøng nhôù ñaëc bieät duøng ñeå löu trö tröõ ñòa chæ va döõ lieäu. vaø dö Stack thöôøng truù trong stack segment.Moãi vuøng 16 bit treân stack ñöôïc troû ñeán bôûi thanh ghi SP, goïi laø stack pointer. Stack pointer löu tröõ ñòa chæ cuûa phaàn töû döõ lieäu cuoái môùi trö cua phan tö dö cuoi môi ñöôïc theâm vaøo (pushed leân stack.) Chương 3 : Tổ chức Memory 16
  17. Stack phaàn töû döõ lieäu cuoái môùi ñöôïc theâm vaøo naøy laïi laø phaàn töû seõ ñöôïïc laáy ra (popped tröôùc tieân). (p pp ) Stack laøm vieäc theo cô cheá LIFO (Last In First Out). Xeùt ví duï sau : giaû söû stack ñang chöùa 1 giaù trò 0006 Sau đó ta đưa 00A5 vào stack Chương 3 : Tổ chức Memory 17
  18. Stack BEFORE HIGH MEM AFTER HIGH MEM 0006 SP 0006 00A5 SP SP giaûm g LOW MEM Chương 3 : Tổ chức Memory 18
  19. Coâng duïng cuûa Stack Duøng ñeå löu tröõ döõ lieäu taïm cho thanh ghi neáu ta caàn söû duïng caùc döõ lieäu naøy. Khi 1 chöông trình con ñöôïc goïi, stack seõ löu tröõ ñòa chæ trôû veà ngay sau khi chöông trình con thöïc hieän xong. Caùc ngoân ngöõ caáp cao thöôøng taïo ra 1 vuøng nhôù beân trong chöông trình con goi laø stack frame ñeå chöùa caùc bieán cuc boä. goïi la ñe chöa cac bien cuïc Chương 3 : Tổ chức Memory 19
  20. Summary Slide Côø naøo ñöôïc thieát laäp khi 1 pheùp tính soá hoïc khoâng daáu quaù roäng khoâng vöøa vôùi ñích? Hai thanh ghi naøo ñöôïc toåå hôïp thaønh ñòa chæ cuûa leänh seõ ñöôïc thöïc keá tieáp? Neâu quaù trình ñoc boä nhôù Tai sao quaù trình ñoc boä nhôù lai Neu qua ñoïc nhô. Taïi qua ñoïc nhô laïi chieám nhieàu chu kyø maùy hôn so vôùi truy caäp thanh ghi? Thanh ghi AH bò söûa ñoåi, taïi sao thanh ghi AX cuõng thay ñoåi theo. Noäi dung naøo chieám 1024 bytes thaáp nhaát cuûa boä nhôù? Chương 3 : Tổ chức Memory 20
Đồng bộ tài khoản