Bài giảng Kiến trúc máy tính - Chương 4: Bộ nhớ Cache cung cấp cho người học các kiến thức: Tổng quan Hệ thống bộ nhớ máy tính, nguyên tắc Bộ nhớ Cache, các thành phần của Thiết kế Cache, tổ chức Cache Pentium 4. Mời các bạn cùng tham khảo.
+ KIẾN TRÚC MÁY TÍNH + Chương Bộ nhớ Cache 4.1 Tổng quan Hệ thống nhớ máy tính Các đặc tính hệ thống nhớ Phân cấp nhớ 4.2 nguyên tắc Bộ nhớ Cache 4.3 Các thành phần Thiết kế Cache Cache Addresses Cache Size Ánh xạ Chức Các thuật toán thay Chính sách ghi Kích thước line Số nhớ Cache 4.4 Tổ chức Cache Pentium + NỘI DUNG Đặc điểm hệ thống nhớ máy tính Bảng 4.1 Các đặc điểm hệ thống nhớ máy tính + Đặc điểm hệ thống nhớ Vị trí Dung lượng Bộ nhớ ngồi máy tính Bộ nhớ thường tương đương với nhớ Bộ xử lý cần có nhớ cục riêng nó, dạng ghi Cache dạng khác nhớ Bộ nhớ bao gồm thiết bị lưu trữ ngoại vi truy cập vào xử lý thông qua điều khiển I / O Bộ nhớ thường biểu diễn dạng byte Đơn vị truyền Đối với nhớ trong, đơn vị truyền số lượng đường dây điện vào khỏi module nhớ Phương pháp truy cập khối liệu Truy cập Bộ nhớ tổ chức thành đơn vị liệu - records Truy cập trực tiếp Truy cập ngẫu nhiên Dùng chế đọc-ghi chia sẻ Mỗi vị trí nhớ có chế định địa riêng Truy cập phải thực theo dãy block record có địa dựa vị trí thực tế Thời gian truy cập vào vị trí định không đổi, không phụ thuộc vào chuỗi truy cập trước Thời gian truy cập biến động Thời gian truy cập biến động vị trí lựa chọn ngẫu nhiên, đánh địa truy cập trực tiếp Bộ nhớ số hệ thống cache truy cập ngẫu nhiên Kết hợp từ lấy dựa phần nội dung không dựa địa vị trí có chế định địa riêng; thời gian truy cập không đổi, không phụ thuộc vị trí mẫu truy cập trước Bộ nhớ cache sử dụng truy cập kết hợp Dung lượng Hiệu năng: Hai đặc điểm quan trọng nhớ Ba tham số hiệu sử dụng: Thời gian truy cập (độ trễ) • Đối với nhớ truy cập ngẫu nhiên, thời gian cần để thực thao tác đọc ghi • Đối với nhớ truy cập khơng ngẫu nhiên, thời gian cần để đặt chế đọc-ghi đến vị trí mong muốn Chu kỳ nhớ • Thời gian truy cập cộng với thời gian cần trước truy cập thứ hai bắt đầu • Liên quan đến hệ thống bus, khơng liên quan xử lý Tốc độ truyền tải • Tốc độ truyền liệu vào khỏi nhớ • Đối với nhớ truy cập ngẫu nhiên, tốc độ truyền tải 1/(chu kỳ) + Bộ nhớ - Các dạng phổ biến nhất: Bộ nhớ bán dẫn, Bộ nhớ bề mặt từ, Bộ nhớ quang, Bộ nhớ quang từ - Với nhớ truy cập ngẫu nhiên, vấn đề quan trọng thiết kế tổ chức hay xếp vật lý bit để tạo thành từ word + Bộ nhớ Một số đặc điểm vật lý quan trọng lưu trữ liệu: Bộ nhớ khả biến (Volatile memory) Thông tin bị phân rã tự nhiên bị nguồn điện tắt Bộ nhớ bất biến (Non-volatile memory) Thơng tin ghi khơng bị hư hỏng cố tình thay đổi Không cần cấp điện để giữ lại thông tin Bộ nhớ bề mặt từ (Magnetic-surface memories) Bất biến Bộ nhớ bán dẫn (Semiconductor memory) Khả biến bất biến Bộ nhớ khơng xố (Nonerasable memory) Không thể thay đổi, trừ phá hủy khối lưu trữ Bộ nhớ đọc (ROM) nhớ bán dẫn thuộc loại + 10 Phân cấp nhớ Thiết kế nhớ máy tính cần trả lời ba câu hỏi: How much, how fast, how expensive Cần có cân đối dung lượng, thời gian truy cập chi phí Thời gian truy cập nhanh hơn, chi phí lớn cho bit Dung lượng lớn hơn, chi phí nhỏ cho bit Dung lượng lớn hơn, thời gian truy cập chậm Giải pháp cho tình trạng khó xử thiết kế nhớ: Không dựa vào thành phần công nghệ nhớ Sử dụng hệ thống phân cấp nhớ + 38 Các thuật toán thay phổ biến Least recently used (LRU) Hiệu Thay khối nằm cache lâu mà khơng có tham chiếu đến Do triển khai đơn giản, LRU thuật toán thay phổ biến First-in-first-out (FIFO) Thay khối nằm cache lâu Dễ dàng thực kỹ thuật vòng đệm round-robin Least frequently used (LFU) Thay khối có tham chiếu đến Có thể thực cách kết hợp đếm với line Chính sách ghi 39 Khi khối cache thay thế, có trường hợp cần xem xét: Có hai vấn đề phải đối mặt: Nếu khối cũ cache chưa thay đổi, ghi đè khối lên mà không cần ghi khối cũ trước Nhiều thiết bị truy cập vào nhớ Nếu thao tác ghi thực word line cache nhớ phải cập nhật cách ghi line cache khối nhớ trước đưa khối vào Một vấn đề phức tạp xảy nhiều xử lý gắn vào bus xử lý lại có cache cục riêng - word bị thay đổi cache, làm hiệu lực word cache khác + 40 Write Through Write Back Write through Kỹ thuật đơn giản Tất thao tác ghi thực cho nhớ cache Nhược điểm: tạo lưu lượng nhớ đáng kể tạo nút cổ chai Write back Giảm ghi nhớ Chỉ cập nhật nhớ cache Nhiều phần nhớ khơng hợp lệ Do truy cập mơ-đun I / O cho phép thông qua cache Nhược điểm: mạch phức tạp khả có nút cổ chai + 41 Ghi vào cache Đầu tiên, giả sử địa mà ta muốn ghi vào nạp vào cache Giả sử cache dùng ánh xạ trực tiếp Nếu ghi giá trị vào địa để lưu trữ liệu cache + 42 Write through Ghi để cập nhật nhớ cache nhớ + Đơn giản Mất ý nghĩa cache + Write-back 43 Ghi liệu vào cache trước, không cập nhật main memory ln Các lệnh đọc sau phục vụ cache Lưu liệu main memory block cache bị thay Kích thước Line Khi khối liệu lấy đặt cache, thu không word mong muốn mà cịn số word liền kề Khi kích thước khối tăng, ban đầu tỷ lệ truy cập tăng nguyên tắc cục Khi kích thước khối tăng thêm, nhìều liệu hữu ích đưa vào cache Tỷ lệ truy cập bắt đầu giảm khối lớn xác suất sử dụng thông tin truy xuất thấp xác suất tái sử dụng thông tin thay tác động: 1, Khối lớn làm giảm số lượng khối cache 2, Khi khối lớn hơn, word thêm vào lại khác word yêu cầu 44 + 45 Cache nhiều cấp Khi mật độ logic tăng lên, cache nằm chip với xử lý Cache chip làm giảm hoạt động bus xử lý; tăng tốc thời gian xử lý tăng hiệu toàn hệ thống Khi thị yêu cầu liệu tìm thấy cache chip, truy cập bus loại bỏ Truy cập nhớ cache chip nhanh đáng kể so với chu trình bus trạng thái zero-wait Trong giai đoạn này, bus tự hỗ trợ lượt truyền khác Cache cấp: Cache bên cấp1 (L1), Cache bên cấp (L2) Tiết kiệm tiềm sử dụng cache L2 phụ thuộc vào tỷ lệ truy cập vào cache L1 L2 Việc sử dụng cache nhiều cấp làm cho vấn đề thiết kế liên quan đến cache phức tạp hơn, gồm kích thước, thuật tốn thay thế, sách ghi Tỉ lệ truy cập (L1 & L2) cho Kbyte 16 Kbyte L1 46 + 47 Cache thống / cache phân chia Phân chia cache trở nên phổ biến: dành cho thị / cho liệu Tồn ngang hàng, thường cache L1 Ưu điểm cache thống nhất: Tốc độ truy cập cao Cân tải thị liệu nạp tự động Chỉ cần thiết kế thực nhớ cache Xu hướng: cache phân chia L1 cache thống cấp cao Ưu điểm cache phân chia: Loại bỏ cạnh tranh cache khối tìm nạp / giải mã lệnh khối thực Quan trọng pipelining Vấn đề Giải pháp Bộ xử lý Bộ nhớ chậm bus hệ thống Thêm cache ngồi dùng cơng nghệ nhớ nhanh 386 Tăng tốc độ xử lý dẫn đến bus trở thành nút cổ chai truy cập cache Di chuyển cache lên chip, hoạt động tốc độ với vi xử lý 486 cache nội nhỏ, không gian hạn chế chip Thêm cache L2 bên ngồi cơng nghệ nhanh nhớ 486 Có cạnh tranh khối truy xuất lệnh khối thực thi đồng thời yêu cầu truy cập vào cache Khi đó, khối truy xuất bị đình trệ truy cập liệu khối thực thi diễn Tạo cache liệu lệnh riêng Pentium Tăng tốc độ xử lý dẫn đến bus trở thành nút cổ chai cho truy cập cache L2 Tạo back-side bus chạy tốc độ cao bus ngồi (phía trước) BSB dành riêng cho cache L2 Pentium Pro Di chuyển L2 cache lên chip xử lý Pentium II Thêm cache L3 bên Pentium III Một số ứng dụng xử lý sở liệu khổng lồ phải truy cập nhanh tới lượng lớn liệu Cache chip nhỏ Di chuyển L3 cache lên chip xử lý Pentium 48 Cache Pentium Bảng 4.4 Intel Cache Evolution Sơ đồ khối Pentium 49 50 Các chế độ hoạt động Cache Pentium Note: CD = 0; NW = kết hợp không hợp lệ Tổng kết + 51 Bộ nhớ Cache Chương Đặc điểm hệ thống nhớ Vị trí Dung lượng Đơn vị truyền Bộ nhớ phân cấp How much? How fast? How expensive? Nguyên lý nhớ Cache Các yếu tố thiết kế cache Địa nhớ cache Kích thước nhớ cache Hàm ánh xạ Thuật tốn thay Chính sách ghi Kích thước line Số lượng cache Tổ chức cache Pentium + 52 Câu hỏi chương Phân biệt truy cập tuần tự, truy cập trực tiếp, truy cập ngẫu nhiên? Mối quan hệ thời gian truy cập, giá nhớ, dung lượng gì? Tính cục tham hiếu ảnh hưởng đến việc sử dụng nhiều cấp độ nhớ? Sự khác ánh xạ trực tiếp, ánh xạ kết hợp, ánh xạ kết hợp tập hợp gì? Đối với cache ánh xạ trực tiếp, địa nhớ gồm trường? Là trường gì? Đối với cache kết hợp, địa nhớ gồm trường? Là trường gì? Đối với cache kết hợp tập hợp, địa nhớ gồm trường? Là trường gì? Phân biệt write through write back? Ưu nhược điểm cache phân chia? ... Cache 4. 4 Tổ chức Cache Pentium + NỘI DUNG Đặc điểm hệ thống nhớ máy tính Bảng 4. 1 Các đặc điểm hệ thống nhớ máy tính + Đặc điểm hệ thống nhớ Vị trí Dung lượng Bộ nhớ ngồi máy. .. trực tiếp 23 + 24 Ví dụ Cache 1 word = byte Block liệu byte (word) Cache Địa 64 Kbyte gồm 16K = 2 14 line, line byte nhớ 24 bit 2 24 = 16M Bộ nhớ 16Mbyte, chia thành 4M block 25 Ví...2 + Chương Bộ nhớ Cache 4. 1 Tổng quan Hệ thống nhớ máy tính Các đặc tính hệ thống nhớ Phân cấp nhớ 4. 2 nguyên tắc Bộ nhớ Cache 4. 3 Các thành phần Thiết kế Cache