Kết nối bộ nhớ với bộ xử lý

Tổ chức kết nối

Cache là bộ nhớ nhanh, nó chứa lệnh và dữ liệu thường xuyên dùng đến. Việc lựa chọn lệnh và dữ liệu cần đặt vào cache dựa vào các nguyên tắc sau đây:

Một chương trình mất 90% thời gian thi hành lệnh của nó để thi hành 10% số lệnh của chương trình.

Nguyên tắc trên cũng được áp dụng cho việc thâm nhập dữ liệu, nhưng ít hiệu nghiệm hơn việc thâm nhập lệnh. Như vậy có hai nguyên tắc: nguyên tắc về không gian và nguyên tắc về thời gian

Nguyên tắc về thời gian: cho biết các ô nhớ được hệ thống xử lý thâm nhập có khả năng sẽ được thâm nhập trong tương lai gần. Thật vậy, các chương trình được cấu tạo với phần chính là phần được thi hành nhiều nhất và các phần phụ dùng để xử lý các trường hợp ngoại lệ. Còn số liệu luôn có cấu trúc và thông thường chỉ có một phần số liệu được thâm nhập nhiều nhất mà thôi.

Nguyên tắc về không gian: cho biết, bộ xử lý thâm nhập vào một ô nhớ thì có nhiều khả năng thâm nhập vào ô nhớ có địa chỉ kế tiếp do các lệnh được sắp xếp thành chuỗi có thứ tự.

Trong hình H.1

PC ( Bộ đếm chương trình ) chứa địa chỉ bộ nhớ của lệnh được thực thi. Trong quá trình thực thi, nội dung của PC được cập nhật để trỏ đến hướng dẫn tiếp theo. Mỗi khi một lệnh được thực thi, bộ đếm chương trình sẽ giải phóng nội dung của nó vào bus bên trong và gửi nó đến thanh ghi địa chỉ bộ nhớ.

MAR (Thanh ghi địa chỉ bộ nhớ ) lưu giữ địa chỉ của vị trí mà dữ liệu sẽ được chuyển đến hoặc từ đó. Như hình trên có thể thấy, kết nối của MAR với bộ nhớ chính là một chiều hoặc một chiều.

MDR (Thanh ghi dữ liệu bộ nhớ ) chứa dữ liệu được ghi hoặc đọc từ vị trí đã định địa chỉ.

Trong quá trình tìm nạp, MDR chứa lệnh được thực thi hoặc dữ liệu cần thiết trong quá trình thực thi. Trong thao tác ghi, MDR dữ liệu được ghi vào bộ nhớ chính.

IR (Thanh ghi lệnh ) chứa lệnh đang được thực thi. Trước khi IR thực hiện lệnh, nó cần được giải mã trước. Ngay sau khi nội dung của MDR được chuyển đến IR, quá trình giải mã sẽ bắt đầu. Sau khi giải mã, việc thực thi lệnh sẽ diễn ra.

Tổ chức các cấp bộ nhớ sao cho các lệnh và dữ liệu thường dùng được nằm trong bộ nhớ cache, điều này làm tăng hiệu quả của máy tính một cách đáng kể.

Vận hành

Các bước vận hành (Hình H.1)

1. PC được thiết lập để trỏ đến lệnh đầu tiên của chương trình (hệ điều hành tải địa chỉ bộ nhớ của lệnh đầu tiên).

2. Nội dung của PC được chuyển đến MAR (được truyền tự động đến MM) và tín hiệu Đọc được gửi đến MM

3. Từ được định địa chỉ được đọc ra khỏi MM và được nạp vào MDR.

4. Nội dung của MDR được chuyển cho IR. Lệnh đã sẵn sàng để được giải mã và thực thi.

5. Trong quá trình thực thi, nội dung của PC được tăng lên hoặc cập nhật để trỏ đến lệnh tiếp theo.