1. Trang chủ
  2. » Luận Văn - Báo Cáo

CACHE MEMORY

22 1,8K 2
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 22
Dung lượng 578,5 KB

Nội dung

- Vị trí: bộ nhớ là thiết bị nhớ có thể ghi và chứa thông tin như ROM, RAM, cache, đĩa cứng, đĩa mềm, CD.... đều có thể gọi là bộ nhớ

Trang 1

BỘ CÔNG THƯƠNG TẬP ĐOÀN DỆT MAY VIỆT NAM TRƯỜNG CAO ĐẲNG KINH TẾ - KỸ THUẬT VINATEX

TP HỒ CHÍ MINH



KHOA CÔNG NGHỆ THÔNG TIN

BÀI TIỂU LUẬN MÔN KIẾN TRÚC MÁY TÍNH

Trang 2

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

……….

Nhận xét và đánh giá của giáo viên:

Trang 3

LỜI MỞ ĐẦU

-Chúng ta đang ở trong kỷ nguyên thông tin Ngày nay không còn ai nghi ngờ

gì vai trò của thông tin trong đời sống, trong khoa học kỹ thuật, kinh doanh cũng nhưtrong mọi mặt vận động của xã hội, dưới mọi quy mô, từ xí nghiệp công ty cho đếnquốc gia và cả quốc tế Việc nắm bắt thông tin thật nhanh, nhiều chính xác và kịpthời ngày càng đóng vai trò cốt yếu trong quản lý, điều hành

-Hẳn nhiều người ít khi biết một chiếc máy tính hoạt động như thế nào và theoquy trình quy tắc nào, để giúp mọi người biết và hiểu hơn về các thiết bị máy cùngcách hoạt động ra sao, nhóm chúng tôi xin được phép nói sâu về bộ nhớ máy chi tiếthơn đó là bộ nhớ đệm (cache memory).Ta lần lượt nghiên cứu các thành phần cũngnhư chức năng của bộ nhớ đệm:

- Computer system memory overview (bộ nhớ hệ thống máy tính tổng quan)

- Cache memory principles (các nguyên tắc nhớ cache)

- elements of cache design (các yếu tố của thiết kế bộ nhớ cache)

Cuối cùng ta xem ví dụ nghiên cứu về tổ chức bộ nhớ cache trong pentium II đểhiểu rõ hơn

Trang 4

CACHE MEMORY

I Computer sytem memory overview (Tổng quan bộ nhớ máy tính)

1 Bộ nhớ (memory)

Các đặc trưng của bộ nhớ

- Vị trí: bộ nhớ là thiết bị nhớ có thể ghi và chứa thông tin như ROM, RAM,

cache, đĩa cứng, đĩa mềm, CD đều có thể gọi là bộ nhớ (vì chúng đều lưu trữthông tin)

- Dung lượng: khả năng lưu trữ dữ liệu của thiết bị Với bộ nhớ trong, dung

lượng thường được biểu diễn dưới dạng byte (1 byte = 8 bit) hay word Các độ dàiword phổ biến là 8, 16, và 32 bit Bộ nhớ ngoài có dung lượng được biểu thị theobyte.Ví dụ: CD chứa được 700MB, đĩa mềm chứa được 1.44MB, đĩa cứng chứađược 40 GB, 60GB, cache L1 chứa được 16KB, cache L2 chứa được 256 KB

- Đơn vị truyền: từ nhớ và khối nhớ.

- Giao tiếp: cấu trúc bên ngoài của bộ nhớ Ví dụ, các RAM có số chân cắm và

đặc tính khác nhau

- Phương pháp truy nhập:truy nhập tuần tự (băng từ), truy nhập trực tiếp (các loại

đĩa), truy nhập ngẫu nhiên (bộ nhớ bán dẫn), truy nhập liên kết (cache)

- Kiểu bộ nhớ vật lý: bộ nhớ bán dẫn, bộ nhớ từ, bộ nhớ quang.

- Các đặc tính vật lý: khả biến, không khả biến, xoá được, không xoá được.

- Hiệu năng: thời gian truy nhập, chu kỳ truy xuất bộ nhớ, tốc độ truyền.

2 Phân loại bộ nhớ

2.1 Bộ nhớ trong : là bộ nhớ thường được tổ chức từ nhiều vi mạch nhớ ghép lại để

có độ rộng bus địa chỉ và dữ liệu cần thiết

Trang 5

a Bộ nhớ chỉ đọc (ROM:Read Only Memory)

-Ðây là loại bộ nhớ không khả biến dùng trong các hãng sãn xuất là chủ yếu Nó

có đặc tính là thông tin lưu trữ trong ROM không thể xoá được và không sửa được,thông tin sẽ được lưu trữ mãi mãi Nhưng ROM có bất lợi là một khi đã cài đặt thôngtin vào rồi thì ROM sẽ không còn tính đa dụng Ví dụ điển hình là các con "chip"trên motherboard hay là BIOS ROM để vận hành khi máy tính vừa khởi động

Các kiểu ROM:

- PROM (Programmable ROM)

- EPROM (Erasable Programmable ROM)

- EEPROM (Electrically Erasable Programmable ROM)

- Flash Memory

b Bộ nhớ đọc ghi (RAM : Random Access Memory)

-RAM là thế hệ kế tiếp của ROM, cả RAM và ROM đều là bộ nhớ truy xuất ngẫunhiên, tức là dữ liệu được truy xuất không cần theo thứ tự Tuy nhiên ROM chạychậm hơn RAM rất nhiều Thông thường ROM cần trên 50ns để xử lý dữ liệu trongkhi đó RAM cần dưới 10ns

Có 2 loại chính: RAM tĩnh(SRAM:Static RAM) và RAM động (DRAM:Dynamic RAM):

- SRAM (RAM tĩnh) là loại RAM lưu trữ dữ liệu không cần cập nhật thường

xuyên trong khi đó DSRAM (RAM động) là loại RAM cần cập nhật dữ liệu thường

xuyên Thông thường dữ liệu trong DRAM sẽ được làm tươi (refresh) nhiều lầntrong một giây để giữ lại những thông tin đang lưu trữ, nếu không thì dữ liệu trongDRAM cũng sẽ bị mất do hiện tượng rò rỉ điện tích của các tụ điện Các khác biệtcủa SRAM so với DRAM:

- Tốc độ của SRAM lớn hơn DRAM do không phải tốn thời gian refresh

Trang 6

- Chế tạo SRAM tốn kém hơn DRAM nên thông thường sử dụng DRAM để hạgiá thành sản phẩm.

Các kiểu RAM :

- FPM - DRAM (Fast Page Mode DRAM)

- EDO - DRAM (Extended Data Out DRAM)

- BDEO-DRAM (Burst Extended Data Out DRAM)

- SDRAM (Synchronous DRAM)

- DDR SDRAM (Double Data Rate SDRAM)

- DRDRAM (Direct Rambus DRAM)

- SLDRAM (Synchronous - Link DRAM)

- VRAM (Video RAM)

- SGRAM (Synchronous Graphic RAM)

2.2 Bộ nhớ cache (cache memory)

a Cache : là một cơ chế lưu trữ tốc độ cao đặc biệt Nó có thể là một vùng lưu

trữ của bộ nhớ chính hay một thiết bị lưu trữ tốc độ cao độc lập.Có hai dạng lưu trữcache được dùng phổ biến trong máy tính cá nhân là memory cache (bộ nhớ cachehay bộ nhớ truy xuất nhanh) và disk cache (bộ nhớ đệm đĩa)

b Memory cache : Đây là một khu vực bộ nhớ được tạo bằng bộ nhớ tĩnh

(SRAM) có tốc độ cao nhưng đắt tiền thay vì bộ nhớ động (DRAM) có tốc độ thấphơn và rẻ hơn, được dùng cho bộ nhớ chính Cơ chế lưu trữ bộ nhớ cache này rất cóhiệu quả Bởi lẽ, hầu hết các chương trình thực tế truy xuất lặp đi lặp lại cùng một dữliệu hay các lệnh y chang nhau Nhờ lưu trữ các thông tin này trong SRAM, máy tính

sẽ khỏi phải truy xuất vào DRAM vốn chậm chạp hơn

c Disk cache : Bộ nhớ đệm đĩa cũng hoạt động cùng nguyên tắc với bộ nhớ

cache, nhưng thay vì dùng SRAM tốc độ cao, nó lại sử dụng ngay bộ nhớ chính Các

dữ liệu được truy xuất gần đây nhất từ đĩa cứng sẽ được lưu trữ trong một buffer

Trang 7

(phần đệm) của bộ nhớ Khi chương trình nào cần truy xuất dữ liệu từ ổ đĩa, nó sẽkiểm tra trước tiên trong bộ nhớ đệm đĩa xem dữ liệu mình cần đang có sẵn không.

Cơ chế bộ nhớ đệm đĩa này có công dụng cải thiện một cách đáng ngạc nhiên sứcmạnh và tốc độ của hệ thống Bởi lẽ, việc truy xuất 1 byte dữ liệu trong bộ nhớ RAM

có thể nhanh hơn hàng ngàn lần nếu truy xuất từ một ổ đĩa cứng Và hiệu năng củamột cache được tính bằng hit rate (tốc độ tìm thấy dữ liệu trong cache)

2.3 Bộ nhớ ngoài

-Bộ nhớ chính bằng vật liệu bán dẫn không thể lưu trữ một khối lượng rất lớn dữliệu nên cần phải có thêm các thiết bị nhớ bên ngoài như đĩa từ, đĩa mềm, đĩa cứng,đĩa quang, băng giấy đục lỗ, băng cassette, trống từ…

a Đĩa từ là một tấm đĩa tròn, mỏng làm bằng chất dẻo, thủy tinh cứng hay kim

loại cứng, trên đó có phủ một lớp bột từ tính oxide sắt từ Đĩa từ sử dụng kỹ thuật ghi

từ để lưu trữ dữ liệu Khi đã ghi dữ liệu trên đĩa, dữ liệu có thể tồn tại khi không cònnguồn cung cấp và cũng có khả năng xóa đi, thay thế bằng dữ liệu mới

b Đĩa mềm gồm một đĩa từ bằng nhựa dẻo được bảo vệ bằng một bao giấy hay

nhựa cứng Trên bao có khoét một lỗ dài cho phép đầu đọc của ổ đĩa có thể tiếp xúcvới mặt đĩa để đọc / ghi dữ liệu Có 2 loại đĩa mềm: đường kính 5.25 inch (hầu nhưkhông còn sử dụng) và đường kính 3.5 inch (chỉ dùng dung lượng 1.44 MB)

c Đĩa cứng (HDD: Hard Disk Driver) là thành phần quan trọng lưu trữ hệ điều hành và các phần mềm tiện ích máy tính Một máy tính có thể một đĩa hoặc nhiều đĩa, dung lượng mỗi đĩa rất lớn từ 200MB đến 120GB Tốc độ đọc ghi nhanh so các

bộ nhớ ngoài khác Dữ liệu được lưu trữ phân tán trên tất cả các đĩa Có thể tạo và

lưu trữ thông tin dư thừa nhằm mục đích cho việc phục hồi khi đĩa nào đó bị hỏng

Độ tin cậy trong lưu trữ thông tin rất cao Được sử dụng là bộ nhớ cho các hệ thốngmáy chủ

d Đĩa quang (CD-ROM, DVD) gồm CD-ROM (Compact Disk ROM), CD-R (Recordable CD), CD-RW (Rewriteable CD) dung lượng phổ biến 650MB, Ổ đĩa

CD, ổ CD ROM: có thể đọc dữ liệu từ đĩa CD, ổ CD RW : Có thể vừa ổ đọc đĩa CD

Trang 8

và có thể ghi dữ liệu lên đĩa CD-R, và CD-RW Tốc độ đọc cơ sở 150KB/s Tốc độ

bội lần : 40x, 50x, 60x,…DVD(Digital Video Disk): chỉ dùng trên đầu đọc, DVD(Digital Versatile Disk): dùng trên ổ đĩa máy tính dung lượng thông dụng 4.7GB

e Bộ nhớ Flash thường kết nối qua cổng USB, không phải dạng đĩa là bộ nhớ

bán dẫn cực nhanh, dung lượng phát triển nhanh, gọn nhẹ và tiện lợi, đặc điểm đĩaFlash

f RAID là cấu trúc đa đĩa vật lý để tạo nên một đĩa logic có kích thước lớn, độ

tin cậy và khả năng vận hành cao hơn

Các cấp của bộ nhớ máy tính:

II Cache Memory Principles (nguyên tắc bộ nhớ cache)

1 Nguyên tắc

- Cache có tốc độ truy xuất nhanh hơn rất nhiều bộ nhớ chính

- Cache được đặt giữa CPU và bộ nhớ chính nhằm tăng tốc độ trao đổi thông tingiữa CPU và bộ nhớ chính

- Cache thường được đặt trong chip vi xử lý

-Bộ nhớ cache được thiết kế với ý định mang lại bộ nhớ có tốc độ xấp xỉ tốc độcủa bộ nhớ nhanh nhất hiện có, đồng thời cung cấp một kích thước bộ nhớ lớn vớiphí tổn ít hơn so với các loại bộ nhớ bán dẫn Bộ nhớ cache chứa bản sao của một

Trang 9

phần bộ nhớ chính Khi CPU cố gắng đọc một từ bộ nhớ, từ này sẽ được kiểm traxem có trong cache hay không Nếu có, từ đó sẽ được cung cấp ngay cho CPU.Trong trường hợp ngược lại, một khối bộ nhớ chính, bao gồm một lượng cố định các

từ sẽ được đọc vào trong cache và sau đó từ đó sẽ được cung cấp cho CPU Do cóhiện tượng tham chiếu cục bộ, khi một khối dữ liệu được lấy vào trong cache để đápứng một tham chiếu đơn lẻ, có nhiều khả năng các tham chiếu kế tiếp sẽ là các từkhác trong cùng một khối

-Cache có thể được gắn trực tiếp trên các thiết bị ngoại vi Các đĩa cứng hiện đạiđược gắn bộ nhớ truy cập nhanh, khoảng 512 KB Máy tính không trực tiếp sử dụng

bộ nhớ này mà là chương trình điều khiển ổ cứng Đối với máy tính, các chip có bộnhớ này được coi là đĩa Khi máy tính yêu cầu dữ liệu từ ổ cứng, chương trình quản

lý đĩa sẽ kiểm tra bộ nhớ đó trước khi di chuyển các bộ phận cơ khí của đĩa cứng(tốc độ rất chậm so với bộ nhớ) Nếu nó tìm thấy dữ liệu mà máy tính yêu cầu trongcache, nó sẽ cung cấp thông tin đó mặc dù không thực sự truy cập vào ổ đĩa, tiếtkiệm rất nhiều thời gian

Sơ đồ Cache và bộ nhớ chính

2 Thao tác của Cache

-CPU yêu cầu lấy nội dung của một ngăn nhớ bằng việc đưa ra một địa chỉ xácđịnh ô nhớ

-CPU kiểm tra xem có nội dung cần tìm trong Cache

-Nếu có: CPU nhận dữ liệu từ bộ nhớ Cache

Trang 10

-Nếu không có: Bộ điều khiển Cache đọc Block nhớ chứa dữ liệu CPU cần vàoCache.

-Tiếp đó chuyển dữ liệu từ Cache đến CPU

-Sơ đồ thao tác cache, bộ nhớ chính và CPU

đó, mỗi khe có một thẻ cho biết khối nào đang được lưu trữ Thẻ thường là một phầncủa địa chỉ bộ nhớ chính của khối đang được giữ trong khe

Trang 11

-Bộ nhớ Cache có thể làm việc với 03 cấu hình khác nhau : Ánh xạ trực tiếp ,Liên kết đầy đủ và Liên kết tập hợp Cấu hình Liên kết tập hợp được dùng hầu hếthiện nay , nhưng chúng ta sẽ tìm hiểu cả ba cấu hình làm việc như thế nào.

3.1 Phương pháp ánh xạ trực tiếp (Direct mapping)

- Mỗi Block của bộ nhớ chính chỉ có thể được nạp vào một Line của cache

- Địa chỉ phát ra từ CPU được chia 2 phần

- w bits có trọng số thấp để xác định duy nhất từ cần truy xuất(WORD)

- s bits còn lại xác định khối nhớ Trong s bits chia 2 nhóm r bits LINE và s-rbits TAG

- Cụ thể hóa ví dụ:

Tổng bit trong địa chỉ bộ nhớ chính n=24 bit: trong đó 2 bit phần word xác

định chính xác 4 từ

22 bit xác định khối( 8 bit tag (=22-14) và 14 bit slot or line)

- Không có hai block nào trong Cache có cùng Line và Tag

- Kiểm tra nội dung từ tồn tại Cache chính là kiểm tra địa chỉ line và Tag

Trang 12

Mỗi địa chỉ N bit của bộ nhớ chính gồm 3 trường:

 Trường Word gồm w bit xác định một từ nhớ trong Block hay Line:

2w = kích thước của Block hay Line

 Trường Line gồm r bit xác định một trong số các Line trong cache:

2r = số Line trong cache = m

 Trường Tag gồm s-r bit:

s-r = N – (W + L)

Nhận xét:

-Ưu điễm: đơn giản, chi phí ít

-Nhược điểm là sự cố định các khối trong các line của Cache Trong trường hợpchương trình muốn truy xuất tới 2 Block tiên tục mà 2 block được phân nằm trongcùng line thì khả năng Cache miss rất cao

3.2 Phương pháp ánh xạ liên kết (Associative mapping)

- Một Block của bộ nhớ chính có thể nhập bất kỳ line nào trong Cache

- Địa chỉ CPU phát ra được chia thành 2 địa chỉ tag và word

- Địa chỉ Tag xác định khối duy nhất của bộ nhớ nằm trong Cache

- Mỗi giá trị Tag của Line là khác nhau

- Chi phí phương pháp này đối với Cache là cao

Trang 13

- 22 bit Tag để lưu trữ Block 4 byte dữ liệu Tag xác định Block của bộ nhớchính.

- Việc kiểm tra Cache dựa vào các giá trị Tag trong line (22 bit) để nhận biếtCache hit hay miss

- Trường Word để xác định chính xác từ cần truy xuất

Đặc điểm:

- Phải so sánh với tất cả các tag nên mất nhiều thời gian

- Xác suất cache hit cao

- Bộ so sánh phức tạp

3.3 Phương pháp ánh xạ liên kết tập hợp (Set Associative mapping)

- Các Line trong Cache được chia ra thành tập (nhóm) Line

- Mỗi một Set chứa một số Line

Trang 14

Đặc điểm:

- Kích thước Block = 2w Word

- Trường Set có d bit dùng để xác định một trong số V= 2d Set

- Trường Tag có s-d bit: s-d = N- (W + d)

- Đây là phương pháp tổng quát cho cả hai phương pháp trên

- Sử dụng tập hợp để biết tập nào được truy xuất

- So sánh trường Tag để xác đinh Cache hit hay miss

III Elements of cache design (các thành phần của thiết kế bộ nhớ cache)

1 Cache size (kích thước bộ nhớ cache)

-Kích thước của bộ nhớ cache rất quan trọng trong việc cải thiện hiệu suất của hệthống Cách để giảm tỷ lệ miss là tăng kích thước bộ nhớ cache Các bộ nhớ cachelớn chạy chậm hơn so với cache có kích thước nhỏ

Trang 15

-Một máy tính điển hình bộ nhớ cache mức 2 là hoặc 256 KB hoặc 512 KB,nhưng có thể được làm nhỏ như 64 KB trên các máy cũ, hoặc cao nhất là 1 MB hoặcthậm chí là 2 MB Trong thời hạn xử lý, bộ nhớ đệm cấp độ 1 thường dao động vềkích thước từ 8 KB đến 64 KB.

3 Replacement Algorithm (thuật toán thay thế)

-Đó là một chương trình máy tính hay phần cứng một cấu trúc duy trì có thể làm theo để quản lý một bộ nhớ cache của các thông tin lưu trữ trên máy tính Khi bộ nhớcache đầy, các thuật toán phải chọn những mục để loại bỏ để nhường chỗ cho những cái mới

-Khi một dòng mới được nạp vào bộ nhớ cache, một trong những dòng hiện tạicần phải được thay thế Trong một bộ nhớ đệm ánh xạ trực tiếp, khối yêu cầu có thể

đi vào vị trí một cách chính xác, và các khối chiếm được vị trí đó phải được thay thế.Trong một bộ nhớ đệm ánh xạ trực tiếp, khối yêu cầu có thể đi vào vị trí một cáchchính xác, và các khối chiếm được vị trí đó phải được thay thế Trong một bộ nhớcache kết hợp chọn vị trí của khối yêu cầu, và do đó một sự lựa chọn trong đó khối

để thay thế Trong một bộ nhớ cache kết hợp đầy đủ, tất cả các khối đều có thể thaythế Trong một bộ nhớ cache kết hợp thiết lập, chúng ta phải lựa chọn giữa các khốitrong tập hợp chọn Vì vậy một sự thay thế dòng thuật toán là cần thiết mà thiết lậpđược xác định tiêu chí tốt mà thay thế được thực hiện

-Bộ nhớ đệm sử dụng phổ biến hiện nay: LRU(Least Recently Used), FIFO (FirstIn-First Out), LFU (Least Frequently Used), Random

-Các thuật toán thường được sử dụng nhất là LRU

Trang 16

4 Write Policy (viết chính sách)

- Chính sách viết cache sẽ quyết định cách nó xử lý ghi vào vị trí bộ nhớ hiệnđang được giữ trong bộ nhớ cache Có hai loại chính sách là:

- Viết qua(write-through): Khi hệ thống viết cho một vị trí bộ nhớ hiện đangđược tổ chức trong bộ nhớ cache, nó ghi các thông tin mới cho cả các dòng bộ nhớcache bộ nhớ vị trí thích hợp và chính bản thân cùng một lúc Đây là loại bộ nhớđệm cung cấp hiệu suất kém hơn ghi lại, nhưng đơn giản để thực hiện và có lợi thế làthống nhất nội bộ, bởi vì bộ nhớ cache là không bao giờ ra khỏi đồng bộ với bộ nhớcách đó là với một bộ nhớ cache ghi lại

- Viết lại(write-back): Khi hệ thống viết cho một vị trí bộ nhớ hiện đang được tổchức trong bộ nhớ cache, nó chỉ ghi các thông tin mới cho dòng bộ nhớ cache thíchhợp Khi dòng bộ nhớ cache là cuối cùng cần thiết đối với một số địa chỉ bộ nhớkhác, các dữ liệu thay đổi là "viết lại" với bộ nhớ hệ thống Đây là loại bộ nhớ cachecung cấp hiệu suất tốt hơn so với một ghi-thông qua bộ nhớ cache, bởi vì nó tiếtkiệm (tốn thời gian) ghi chu kỳ bộ nhớ

5 Block size (kích cỡ khối)

- Một yếu tố khác trong thiết kế của một hệ thống bộ nhớ cache là của các kíchthước Line Đây là số byte trên mỗi dòng bộ nhớ cache, đôi khi cũng được gọi làblock size Khi một khối dữ liệu được lấy từ bộ nhớ chính và được đặt trong bộ nhớcache, không chỉ được nạp mà còn một số từ lân cận (trong cùng một khối) được lấy

ra Khi tăng kích thước khối từ rất nhỏ đến kích thước lớn hơn, tỷ lệ tăng hit sẽ ở đầutiên Tuy nhiên, nếu khối trở nên lớn hơn tỷ lệ hit sẽ bắt đầu giảm bởi vì xác suất củaviệc sử dụng mới được lấy thông tin sẽ được ít hơn so với khả năng tái sử dụng cácthông tin đã được thay thế

6 Number of Caches (số cache)

- Khi hệ thống bộ nhớ cache được giới thiệu, các hệ thống điển hình chỉ có một

bộ nhớ cache duy nhất Gần đây, việc sử dụng lưu trữ nhiều đã trở nên phổ biến Có

Ngày đăng: 25/04/2013, 09:20

Xem thêm

HÌNH ẢNH LIÊN QUAN

Sơ đồ Cache và bộ nhớ chính - CACHE MEMORY
ache và bộ nhớ chính (Trang 9)
Hình : PENTIUM II - CACHE MEMORY
nh PENTIUM II (Trang 18)

TỪ KHÓA LIÊN QUAN

w