Tải bản đầy đủ (.docx) (15 trang)

Tiểu luân Cache Memory

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1.72 MB, 15 trang )



BỘ CÔNG THƯƠNG
TRƯỜNG ĐẠI HỌC CÔNG NGHIỆP TP. HỒ CHÍ MINH
KHOA CÔNG NGHỆ THÔNG TIN
----------

BÀI TIỂU LUẬN
Đề tài: “CACHE MEMORY”

Giáo viên hướng dẫn: Hoàng Đình Hạnh
Môn: Kiến Trúc Máy Tính
Nhóm thực hiện: nhóm 5
1. Hoàng Bình Minh – 14020521
2. Hồ Bình Kha – 14024911
3. Nguyễn Minh Mẫn – 14032221
4. Bùi Công Hậu – 14016291
5. Trần Xuân Sách - 14031711


Bộ Nhớ Cache
Cache Memory
Pentium II Cache Organizations
Mục lục:
I.Tổng Quan Hệ Thống Bộ Nhớ Máy Tính..........................................................................................1
1.Bộ nhớ (memory)......................................................................................................................1
2. Phân loại bộ nhớ.......................................................................................................................1
a)

Bộ nhớ trong:....................................................................................................................1


b)

Bộ nhớ Cache (cache memory)..........................................................................................2

c)

Bộ nhớ ngoài.....................................................................................................................2

II. Nguyên Tắc Bộ Nhớ Cache............................................................................................................3
1.

Nguyên tắc............................................................................................................................3

2.

Thao tác của Cache................................................................................................................4

3.

Tổ chức Cache.......................................................................................................................5


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



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




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

III.Elements Of Cache Design (Các thành phần của thiết kế bộ nhớ Cache).......................................8
1.

Cache size (kích thước bộ nhớ Cache)...............................................................................8

2.

Function (bản đồ chức năng).................................................................................................8

3.

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

4.

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

5.

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

6.

Number of Caches (số Cache)..............................................................................................10

IV. Pentium II Cache Organizations (tổ chức bộ nhớ Cache Pentium II)...........................................10
1.


Pentium II............................................................................................................................10

2.

Bộ nhớ Cache trên Pentium II..............................................................................................11


I.Tổng Quan Hệ Thống 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ó hể 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 bits) hay từ. Các độ dài từ phổ biến
là 8, 16, 32 bits. Bộ nhớ ngoài có dung lượng được biểu thị theo byte. Ví dụ: CD chứa
được 700MB, đĩa mềm chứa được 1.44MB, đĩa cứng chứa được 80GB, 120GB, cache
L1 chứa được 16KB, cache L2 chứa được 256KB…
Đơ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, xóa được, không xóa đượ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ớ
a) 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.
 Bộ nhớ chỉ đọc (ROM: Read Only Memory)
- Đây là loại bộ nhớ không khả biến dung lượ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ể xóa đượ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ông
tin 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ộ 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ẫu nhiên, tức là dữ liệu được truy xuất không cần theo thứ tự. Tuy nhiên
ROM chạy chậm hơn RAM rất nhiều. Thông thường ROM cần trên 50ns để xử
lý dữ liệu trong khi đó 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ần trong một
giây để giữ lại những thông đang lưu trữ, nếu không thì dữ liệu trong DRAM cũng sẽ

1


-

bị mất do hiện tượng rò rỉ diện tích của các tụ điện. Các khác biệt củ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…
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)

b) Bộ nhớ Cache (cache memory)
 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 dung phổ biến torng máy tính cá nhân là memory cache( bộ nhớ cache hay bộ
nhớ truy xuất nhanh) và disk cache (bộ nhớ đệm đĩa).
 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ấp hơ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.
 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ì dung 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 ( 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 này có công dụng cải thiện một cách đáng ngạc nhiên sức mạ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ủa một cache được tính bằng
hit rate ( tốc độ tìm thấy dữ liệu trong cache).
c) 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 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ừ dí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òn nguồn
cung cấp và cũng có khả năng xóa đ, thay thế bằng dữ liệu mới.
 Đĩ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úc với mặt
2









đĩ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ỉ dung dung lượng 1.44 MB).
Đĩa cứng (HDD: Hard Disk Driver) là thành phần quan trong 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ấc 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 đãi nào đó bị hỏng.
Đĩ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,
ổ đĩa CD ROM: có thể độc dữ liệu từ đĩa CD, ổ CD RW: có thể vừa đọc đĩa CD và có
thể ghi dữ liệu 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ỉ dung trên đầu đọc, DVD (Digital Versatile
Disk): dung trên ổ đĩa máy tính dung lượng thông dụng 4.7GB.
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. 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 tin
giữ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ới phí 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 phần bộ nhớ chính. Khi CPU cố gắng đọc một từ bộ nhớ, từ này sẽ
3


-

được kiểm tra xem 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 trong cache, nó sẽ cung cấp thông tin đó mặc dù không
thực sự truy cập vào ổ đĩa, tiết kiệm rất nhiều thời gian.

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.
- Nếu không có: |bộ điều khiển Cache đọc Block nhớ chứa dữ liệu CPU cần vào
Cache.
- Tiếp đó chuyển dữ liệu từ Cache đến CPU.
- Sơ đồ thao tác Cache, bộ nhớ chính và CPU.


4


3. Tổ chức Cache
- Giả sử bộ nhớ chính gồm đến 2n từ nhớ đã được đánh địa chỉ (với mỗi từ nhớ
có một địa chỉ duy nhất rộng n bit). Bộ nhớ chính chia thành M khối, mỗi khối
có K từ nhớ M=2n/K. Bộ nhớ Cache có C khe, mỗi khe có K từ nhớ.(C<Tại một thời điểm luôn có một tập con các khối nhớ thường trú trong cache.
Nếu một từ sẽ được đọc thì khối chứa từ đó sẽ được chuyển vào trong cache.
Do số khối nhiều hơn số khe, một khe có thể không được giành cho một khối
trong thời gian lâu dài. Vì lý do đó, 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ần của địa chỉ bộ nhớ chính của khối đang
được giữ trong khe.
- Bộ nhớ Cache có thể làm việc với 3 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 dung hầu hết
hiệ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.






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-r bits TAG.

5



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.

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 torng Cache:
2r = số Line torng 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: sự cố định các khối trong các Line của Cache. Trong trường hợp chương
trình muốn truy xuất tới 2 Block liên tục mà 2 Block được phân nằm trong cùng Line
thì khả năng Cache miss rất cao.









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.

6


-

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 bits) để nhận biết Cache
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.




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.

Đặc điểm:

7


-

Kích thước Block = 2w Word.
Trường Set có d bit dung để 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 định 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 trong 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ớ
Cache lớn chạy chậm hơn so với Cache có kích thước nhỏ.
Một máy tính điển hình bộ nhớ Cache mức 2 là 256KB hoặc 512KB, nhưng có thể
được làm nhỏ như 64 KB trên các máy cũ, hoặc cao nhất là 1MB hoặc thậm chí là

2MB. Trong thời hạn xử lý, bộ nhớ đệm cấp độ 1 thường dao động về kích thước
từ 8KB đến 64KB.

2. Function (bản đồ chức năng)
- Các chức năng lập bản đồ cung cấp sự tương ứng giữa các khối bộ nhớ chính và
-

dòng bộ nhớ Cache.
Có 3 loại bản đồ chức năng: lập bản đồ trực tiếp, đầy đủ kết hợp và cách thiết lập
liên kết.

8


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ại cầ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ớ 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ể thay thế. 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ối trong 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
(First In-First Out), LFU (Least Frequently Used), Random.

- Các thuật toán thường được sử dụng nhất là LRU.
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ó 2 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 nhớ Cache ghi lai.
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ích hợ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ớ Cache cung 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ế kiệ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ích
thướ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ẽ ở đầu tiê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ủa việc sử dụng mới được lấy thông itn sẽ được ít
hơn so với khả năng tái sử dụng các thông tin đã được thay thế.


9


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ó hai khía cạnh số lượng Cache rất quan trọng, cụ thể là số
lượng các cấp và có bộ nhớ Cache được hợp nhất hoặc chia tách.
- Kiến trúc được sử dụng ngày nay: cả hai Cache nhớ L1 và L2 đều được đặt
bên trong CPU và chạy với tốc độ clock bên trong của CPU. Chính vì vậy
số lượng Cache nhớ mà bạn có trên hệ thống sẽ phụ thuộc vào model của
CPU, không có cách nào để có thể tăng được số lượng Cache nhớ mà không
cần thay thế CPU. Tất cả các CPU hiện đại đều có đến ba Cache nhớ : L2 là
Cache nhớ lớn hơn và có thể tìm thấy ở giữa bộ nhớ RAM và Cache chỉ
lệnh L1, nó nắm giữ cả các chỉ lệnh và dữ liệu. Cache chỉ lệnh L1 được sử
dụng để lưu các chỉ lệnh đã được thực thi bởi CPU và lưu dữ liệu để có thể
được ghi ngược trở lại bộ nhớ.
- Bộ vi xử lý hiện tại có L1 Cache có kích thước từ 16KB đến 128KB. L2
thường là 256 hoặc 512KB. L2 Cache được để bên ngoài bộ xử lý, nhưng
bộ vi xử lý hiện đại đã tích hợp nó thành chip. Ưu điểm lớn nhất của việc di
chuyển các bộ nhớ Cache L2 trên chip và chạy nó ở tốc độ đồng hồ đầy đủ
là có cả L1 và L2 Cache có thể chạy song song và được truy cập đồng thời,
giảm độ trễ. Đây là một cách tốt để cải thiện hiệu suất bộ nhớ Cache.
- Ngoài hai số Cache L1 và L2 còn có L3, thông thường L3 đặt bên ngoài bộ
vi xử lý hoạt động ở cùng một tốc đ6ọ như là bộ nhớ chính. Nếu so sánh thì
tốc độ L1 lớn nhất, kế đến là L2 và tiếp theo là L3.
- Thống nhất hoặc chia tách (unified or split)
- Khi Level 1 Cache đầu tiên xuất hiện , hầu hết các thiết kế bao gồm một bộ
nhớ Cache duy nhất được tổ chức cả dữ liệu và hướng dẫn tại cùng thời

điểm. Điều này được gọi là một bộ nhớ Cache thống nhất (unified). Tuy
nhiên, các hệt thống hiện đại thường chia bộ nhớ L1 Cache riêng biện thành
hai (cả hai đều vẫn được coi là L1 Cache): một dành riêng để hướng dẫn
cho các bô: một dành riêng để hướng dẫn cho các bộ xử lý và sự khác dành
riêng cho các dữ liệu mà các hướng dẫn sẽ hoạt động. Cách tiếp cận này
được gọi là một bộ nhớ đệm cgua (split).

IV. Pentium II Cache Organizations (tổ chức bộ nhớ Cache Pentium II)
1. Pentium II
-



Năm 1997, phiên bản cải tiến từ Pentitum Pro được sử dụng trong những dòng máy
tính cao cấp, máy trạm (wordkstation) hoặc máy chủ (Server). Là bộ xử lý 32 bits,
tích hợp 7,5 triệu transistors thừa hưởng đặc tính cùng với bộ xử lý 80386, 80486,
Pentium, Pentium Pro, quen lý địa chỉ vật lý lên đến 64GB, truyền dữ liệu với bộ
nhớ 64 bits, có 2 cấp bộ nhớ Cache, CPU clock 233MHz.
Các chân của Pentium : 274 chân (pin), 170 tín hiệu, 27 chân nguồn, 35 chân nối đất,
10 chân dự trữ.
Cấu trúc Pipeline trên bus bộ nhớ : Bus bộ nhớ của Pentium II gồm 6 chu kỳ:
Chu kỳ phân xử bus (bus arbitration): quyết định thiệt bị làm chủ bus.
10












Chu kỳ yêu cầu bus (request): cho phép địa chỉ nạp vào bus.
Chu kỳ báo cáo lỗi (error report): thông báo cho thiết bị slave lỗi parity hoặc một lỗi
nòa đó.
Chu kỳ thêm (snoop): cho phép CPU chèn vao2m dành cho hệ thống đa xử lý.
Chu kỳ đáp ứng (response): cho biết thiế bị chủ chuẩn bị nhận dữ liệu.
Chu kỳ dữ liệu (data): cho phép dữ liệu được truyền trở lại.
Vi cấu trúc Pentium II : Pentium II CPU gồm 3 bộ phận chính:
Bộ Fetch/Decode (nạp/giải mã).
Bộ Dispatch/Execute(gửi/thực thi).
Bộ Retire(trả kết quả).

2. Bộ nhớ Cache trên Pentium II
- 16KB Cache cấp 1 cho lệnh, 16KB Cache cấp 1 cho dữ liệu, 512KB Cache cấp
2, tích hợp công nghệ MMX được cải tiến giúp việc xử lý dữ liệu video, audio
và đồ họa hiệu quả hơn. Pentium II có thể cắm dạng khe – Single-Edge
contact(SEC) 242 chân, còn gọi là Slot 1. Bộ xử lý Pentium II đầu tiên, tên
mã Klamath, sản xuất trên công nghệ 0,32 µm, có 7,5 triệu transistors, bus hệ
thống 66 MHz, gồm các phiên bản 233, 266 ,300 MHz. Pentium II, tên mã
Deschutes, sử dụng công nghệ 0,25 µm, 7,5 triệu transistors, gồm các phiên
bản 333 MHz (bus hệ th1o6ng 66 MHz), 350, 400, 450 MHz (bus hệ thống 100
MHz)

-

-


L1 Cache, L2 Cache: là tên gọi của vùng nhớ đệm – nơi lưu trữ các dữ liệu
nằm chờ các ứng dụng hay phần cứng xử lý. Mục đích của nó là để tăng tốc độ
xử lý, nó giống như một trạm trung chuyển hay càng tập kết hàng hóa.
Một số bộ nhớ Cache được tích hợp vào torng kiến trúc của các bộ vi xử lý.
Chẳng hạn, CPU Intel đời 80486 có bộ nhớ Cache 8KB, trong khi lên đời
Pentium là 16 KB. Các bộ nhớ Cache nội (internal Cache) như thế gọi là Level
1 (L1) Cache (bộ nhớ đệm cấp 1). Các máy tính hiện đại hơn thì có thêm bộ
nhớ Cache ngoại (external Cache) gọi là Level 2(L2) Cache (bộ nhớ đệm cấp
2). Các Cache này nằm giữa CPU và bộ nhớ hệ thống.

11


-

RAM. Sau này, do nhu cầu xử lý nặng hơn và với tốc độ nhanh hơn, các máy
chủ (Server), máy trạm (workstation) và mới đây là CPU Pentium 4 Extreme
Edition được tăng cường thêm bộ nhớ đệm L3 Cache.

-

Nhờ nằm chung như vậy, tốc độ truy xuất Cache tăng lên rõ rệt so với khi nó nằm trên
mainboard. Nhưng do L2 Cache vẫn phải ở ngoài nhân CPU nên Intel phải chế ra một
bo mạch gắn cá nhân CPU lãn L2 Cache. Và thế là CPU có hình dạng to đùng như
một cái hợp (gọi là cartridge) và được gắn vào mainboard qua giao diện slot( khe
cắm), Slot 1. Tốc độc truy xuất lúc đó chỉ bằng phân nữa tốc độ CPU. Thí dụ, CPU
266 MHz chỉ có tố độc L2 Cache là 133 MHz. Sang Pentium III cũng vậy. Mãi cho
tới thế hệ Pentium III Coppermine (công nghệ 0.15-micron), Intel mới thành công
trong việc tích hợp ngay L2 Cache vào nhân chip (gọi là on-die Cache). Lúc đó ,tốc
độ L2 Cache bằng với tốc độ CPU và con CPU được thu gọn lại, đóng gói với giao

diện Socket 370.

12


-

Như đã nói, dung lượng của Cache CPU rất quan trọng. Phổ biến nhất là L2 Cache là
một chip nhớ nằm giữa L1 Cache ngay trên nhân CPU và bộ nhớ hệ thống. Khi CPU
xử lý, L1 Cache sẽ tiến hành kiểm tra L2 xem có dữ liệu mình cần không trước khi
truy cập vào bộ nhớ hệ thống. Vì thế, bộ nhớ đệm càng lớn, CPU càng xử lý nhanh
hơn. Đó là lý do mà Cache được hỗ trợ để việc xử lý diễn ra nhanh chóng hơn.

13



Tài liệu bạn tìm kiếm đã sẵn sàng tải về

Tải bản đầy đủ ngay
×