Băng thông của mạng phân bố (Crossbar)

Một phần của tài liệu Các hệ vi xử lý tiên tiến (Trang 42)

Chúng ta sẽ định nghĩa băng thông của mạng Crossbar là số yêu cầu trung bình có thể được chấp nhận bởi mạng Crossbar trong một chu kỳ nhất định. Vì các bộ vi xử lý có thể đưa ra các yêu cầu cho các modules bộ nhớ trong một mạng Crossbar, mâu thuẫn có thể xảy ra khi hai hoặc nhiều bộ xử lý yêu cầu truy cập vào cùng một module bộ nhớ. Chẳng hạn, chúng ta hãy xét trường hợp một mạng Crossbar bao gồm ba bộ vi xử lý P1, P2, P3 và ba module bộ nhớ M1, M2, và M3. Vì các bộ vi xử lý có thể yêu cầu truy cập vào các module bộ nhớ, các trường hợp sau có thể xảy ra:

1. Tất cả ba bộ vi xử lý yêu cầu truy cập vào cùng một module bộ nhớ : Trong trường hợp này, chỉ có một yêu cầu có thể được chấp nhận. Bởi vì có ba module bộ nhớ, do đó có ba đường (ba yêu cầu được chấp nhận) trong đó một trường hợp có thể xảy ra.

2. Tất cả ba bộ vi xử lý yêu cầu truy cập vào hai module bộ nhớ khác nhau: Trong trường hợp này, hai yêu cầu có thể được cấp. Có 18 cách (36 yêu cầu được chấp nhận), trong đó một trường hợp như thế có thể xảy ra.

3. Tất cả ba bộ vi xử lý yêu cầu truy cập vào ba module bộ nhớ khác nhau: Trong trường hợp này tất cả ba yêu cầu có thể được chấp nhận. Có 6 con đường (18 yêu cầu được chấp nhận), trong đó một trường hợp như thế có thể xảy ra.

Từ các liệt kê ở trên, rõ ràng là trong 27 sự kết hợp của 3 yêu cầu được lấy từ 3 yêu cầu có thể (khả dĩ), có 57 yêu cầu có thể được chấp nhận (không gây mâu thuẫn bộ nhớ). Vì vậy, chúng ta nói rằng băng thông của một mạng phân bố như vậy là BW = 57/27 = 2,11. Cần lưu ý rằng trong quá trình tính toán băng thông ở ví dụ đơn giản này, chúng ta giả định đơn giản rằng tất cả các bộ vi xử lý có thể yêu cầu truy cập mô đun bộ nhớ trong mọi chu kỳ.

Nói chung, đối với M mô đun bộ nhớ và n bộ vi xử lý, nếu một bộ xử lý tạo ra một yêu cầu với xác suất ρ trong một chu kỳ được đưa đến mỗi bộ nhớ với xác suất bằng nhau, thì biểu thức của băng thông có thể được tính như sau. Xác suất mà một bộ xử lý yêu cầu một module bộ nhớ cụ thể là ρ / M. Xác suất mà một bộ xử lý không yêu cầu module bộ nhớ trong một chu kỳ nhất định là (1 - ρ / M). Xác suất để không có P bộ vi xử lý yêu cầu module bộ nhớ trong một chu kỳ là (1 - (ρ / M))n. Xác suất có ít nhất một yêu cầu được thực hiện với module bộ nhớ đó là (1 - (1 - (ρ / M))n). Do đó, số lượng dự kiến của các module bộ nhớ riêng biệt với ít nhất một yêu cầu (băng thông) là

BW = M (1 - (1 - (ρ / M))n)

Chú ý rằng trong trường hợp xác xuất yêu cầu của bộ vi xử lý đối với bất kỳ mô đun nào đều bằng nhau, thì số hạng ρ / M trong phương trình trên sẽ trở thành 1 / M. Bây giờ, chúng ta hãy xét các trường hợp M = 3 và n = 3, BW = 19/9 = 2.11, giống như trước.

Trong quá trình rút ra biểu thức ở trên, chúng ta đã giả sử rằng tất cả các bộ vi xử lý tạo ra các yêu cầu cho các mô-đun bộ nhớ trong một chu kỳ nhất định. Chúng ta cũng có thể rút ra được một biểu thức tương tự trong trường hợp chỉ một phần nhỏ bộ vi xử lý tạo ra các yêu cầu trong một chu kỳ nhất định (xem bài tập ở cuối chương).

Một phần của tài liệu Các hệ vi xử lý tiên tiến (Trang 42)