Khác biệt giữa bản sửa đổi của “Kiến trúc Harvard”

Nội dung được xóa Nội dung được thêm vào
DHN-bot (thảo luận | đóng góp)
n robot Thêm: it
Không có tóm lược sửa đổi
Dòng 1:
Cụm từ '''kiến trúc Harvard''' được dùng để chỉ những [[kiến trúc máy tính]] mà trong đó phân biệt rõ ràng bộ nhớ dữ liệu và bộ nhớ chương trình, chúng có những đường truyền (''bus'') riêng để truy cập vào bộ nhớ dữ liệu và bộ nhớ chương trình (ngược lại, [[kiến trúc von Neumann]] có bộ nhớ và bộ nhớ chương trình chung). Kiến trúc Harvard bắt đầu với máy tính [[Harvard Mark I]], nó cho phép các lệnh được đặt trong các [[tape đục lỗ]] (với 24 bit) và dữ liệu thì được chứa trong các thẻ (với 23 ký tự). Những máy tính đầu tiên này rất giới hạn dung lượng dữ liệu, nó được chứa hoàn toàn trong [[đơn vị xử lý dữ liệu]], và không cho phép truy cập vào khu vực chứa lệnh (chương trình) như với dữ liệu (làm cho việc tạo, load, sửa chữa, v.v. toàn bộ chương trình phải được thực hiện offline).
 
Trong một máy tính sử dụng kiến trúc [[John von Neumann|von Neumann]], [[CPU]] có thể đọc một lệnh, hoặc đọc/ghi dữ liệu từ bộ nhớ. Tuy vậy, cả hai quá trình tương tác với lệnh hoặc với dữ liệu, không thể thực hiện cùng lúc, vì nó sử dụng chung một đường truyền và bộ nhớ. Trong một máy tính kiến trúc Harvard, [[CPU]] có thể vừa đọc một lệnh, vừa truy cập dữ liệu từ bộ nhớ cùng lúc. Một máy tính kiến trúc Harvard có thể chạy nhanh hơn, bởi vì nó có thể thực hiện ngay lệnh tiếp theo khi vừa kết thúc lệnh trước đó. Tốc độ được tăng lên nhưng phải trả giá bằng sự thiết kế phần cứng phức tạp hơn (cụ thể nhất mà chúng ta thấy, đó là việc phải thiết kế 2 bus khác nhau cho dữ liệu và chương trình).
 
Những năm gần đây, tốc độ CPU tăng lên rất nhiều lần so với tốc độ truy cập vào bộ nhớ chính. Người ta cần quan tâm đến việc giảm số lần truy cập vào bộ nhớ để đảm bảo tốc độ hoạt động của CPU. Nếu, trong cùng một lúc, mỗi lệnh của CPU cần phải truy cập vào bộ nhớ 1 lần, vậy thì việc tăng tốc độ CPU chẳng còn ý nghĩa gì nữa, bởi vì nó luôn luôn bị giới hạn bởi việc truy cập vào bộ nhớ.