Kiến trúc Von Neumann: Đặc điểm và Hạn chế

Kiến trúc Von Neumann

Kiến trúc Von Neumann là kiến ​​trúc chung của tất cả các bộ vi xử lý PC. Mỗi và mọi CPU, từ ARM sang x86, từ 8086 đến Ryzen thông qua Pentium. Tất cả chúng đều là kiến ​​trúc von Neumann và chúng đều kế thừa một vấn đề chung nào đó.

John Von Neumann là một nhà toán học gốc Hungary, người nổi tiếng với hai điều. Đầu tiên là vì đã làm việc trong Dự án Manhattan, nơi phát triển quả bom nguyên tử mà Hoa Kỳ ném xuống Nhật Bản vào cuối Thế chiến II. Thứ hai là sự phát triển của kiến ​​trúc cơ sở mà PC của chúng ta đang sử dụng ngày nay, bất kể kích thước của chúng, cũng như hình thức của chương trình mà chúng thực thi.

Kiến trúc Von Neumann là gì?

Kiến trúc sư Von Neumann

Kiến trúc Von Neumann dựa trên tất cả các bộ xử lý PC, vì tất cả chúng đều được tổ chức với một loạt các thành phần chung, như sau:

  • Đơn vị điều khiển: Trong phụ trách các giai đoạn thu nhận và giải mã của chu trình lệnh.
  • Đơn vị logic-số học hoặc ALU: Trong phụ trách thực hiện các phép toán và logic theo yêu cầu của chương trình.
  • Bộ nhớ: Bộ nhớ trong đó chương trình được lưu trữ, chúng ta gọi là bộ nhớ RAM
  • Thiết bị đầu vào: Từ đó chúng tôi giao tiếp với máy tính.
  • Thiết bị đầu ra: Từ đó máy tính giao tiếp với chúng ta.

Như bạn có thể thấy, đó là kiến ​​trúc chung trong tất cả các bộ xử lý và đó là lý do tại sao nó không còn bí mật nữa, nhưng có một kiểu kiến ​​trúc khác được gọi là kiến ​​trúc Harvard, trong đó RAM bộ nhớ được chia thành hai giếng khác nhau, một trong số Chúng lưu các lệnh chương trình và dữ liệu trong bộ nhớ khác, có các bus riêng biệt cho cả địa chỉ bộ nhớ và các lệnh.

Những hạn chế của kiến ​​trúc Von Neumann là gì?

Nhược điểm chính là bộ nhớ RAM, nơi chứa các lệnh và dữ liệu được xử lý, được thống nhất và chia sẻ thông qua cùng một bus dữ liệu và địa chỉ chung. Vì vậy, các hướng dẫn và dữ liệu phải được ghi tuần tự từ bộ nhớ. Nút cổ chai này được gọi là nút cổ chai Von Neumann. Đó là lý do tại sao các bộ vi xử lý khác nhau có bộ nhớ đệm gần nhất với bộ xử lý được chia thành hai loại, một cho dữ liệu và một cho lệnh.

Trong những năm gần đây, tốc độ bộ xử lý đã tăng nhanh hơn nhiều so với bộ nhớ RAM, do đó làm tăng thời gian truyền dữ liệu từ bộ nhớ. Điều gì đã buộc phải phát triển các giải pháp để giảm bớt vấn đề này, một sản phẩm của nút thắt cổ chai Von Neumann.

Trong các bộ xử lý mà kiến ​​trúc Harvard thường được sử dụng, chúng hoạt động độc lập và do đó không có quyền truy cập vào RAM chung của hệ thống, mà thay vào đó thực thi bộ nhớ và chương trình của riêng chúng tách biệt khỏi bộ nhớ chính CPU. Các bộ xử lý này nhận danh sách dữ liệu và hướng dẫn trên hai nhánh dữ liệu khác nhau. Một cho bộ nhớ lệnh và một cho bộ nhớ dữ liệu của bộ xử lý nói trên.

Tại sao nó được sử dụng trong CPU và GPU?

Bộ xử lý kết xuất

Lý do chính là thực tế là tăng số lượng bus có nghĩa là tăng chu vi của chính bộ xử lý, vì để giao tiếp với bộ nhớ ngoài, giao diện phải ở bên ngoài nó. Điều này dẫn đến các bộ vi xử lý lớn hơn và đắt hơn nhiều. Vì vậy, lý do chính khiến kiến ​​trúc Von Neumann trở nên tiêu chuẩn hóa là chi phí.

Lý do thứ hai là hai giếng bộ nhớ cần được đồng bộ hóa để một lệnh không áp dụng cho dữ liệu sai. Dẫn đến việc phải tạo ra hệ thống phối hợp giữa cả hai giếng bộ nhớ. Tất nhiên, một phần tốt của các nút thắt sẽ được loại bỏ bằng cách tách cả hai xe buýt. Nhưng nó cũng không làm giảm hoàn toàn nút thắt cổ chai của Von Neumann.

Điều này là do nút cổ chai Von Neumann mặc dù là hệ quả của việc lưu trữ dữ liệu và lệnh trong cùng một bộ nhớ cũng có thể xảy ra trong kiến ​​trúc Harvard nếu nó không đủ nhanh để cấp nguồn cho bộ xử lý. Đó là lý do tại sao các kiến ​​trúc Harvard đã được giảm bớt đặc biệt là vi điều khiển và DSP. Trong khi Von Neumann phổ biến trên CPU và GPU