1. Trang chủ
  2. » Luận Văn - Báo Cáo

Nghiên cứu thuật toán điều khiển thích nghi luồng tham chiếu để nâng cao tốc độ cho các hệ xử lý song song chuyên dụng

103 795 0
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Nghiên cứu thuật toán điều khiển thích nghi luồng tham chiếu để nâng cao tốc độ cho các hệ xử lý song song chuyên dụng
Tác giả Chu Đức Toàn
Người hướng dẫn PGS. TS. Đỗ Xuân Tiến, PGS. TS. Nguyễn Hữu Công
Trường học Đại học Thái Nguyên
Chuyên ngành Kỹ thuật Điều khiển và Tự động hóa
Thể loại Luận án tiến sĩ kỹ thuật
Năm xuất bản 2013
Thành phố Thái Nguyên
Định dạng
Số trang 103
Dung lượng 1,36 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Nghiên cứu thuật toán điều khiển thích nghi luồng tham chiếu để nâng cao tốc độ cho các hệ xử lý song song chuyên dụng

Trang 1

ĐẠI HỌC THÁI NGUYÊN

CHU ĐỨC TOÀN

NGHIÊN CỨU THUẬT TOÁN ĐIỀU KHIỂN THÍCH NGHI LUỒNG THAM CHIẾU ĐỂ NÂNG CAO TỐC ĐỘ CHO CÁC HỆ XỬ LÝ SONG SONG CHUYÊN DỤNG

LUẬN ÁN TIẾN SĨ KỸ THUẬT

THÁI NGUYÊN - 2013

Trang 2

ĐẠI HỌC THÁI NGUYÊN

CHU ĐỨC TOÀN

NGHIÊN CỨU THUẬT TOÁN ĐIỀU KHIỂN THÍCH NGHI LUỒNG THAM CHIẾU ĐỂ NÂNG CAO TỐC ĐỘ CHO CÁC

HỆ XỬ LÝ SONG SONG CHUYÊN DỤNG

Chuyên ngành: Kỹ thuật Điều khiển và Tự động hóa

Mã số: 62.52.02.16

LUẬN ÁN TIẾN SĨ KỸ THUẬT

Cán bộ hướng dẫn khoa học 1 Cán bộ hướng dẫn khoa học 2

PGS TS Đỗ Xuân Tiến PGS.TS Nguyễn Hữu Công

THÁI NGUYÊN - 2013

Trang 3

LỜI CAM ĐOAN

Tôi xin cam đoan đây là công trình nghiên cứu của riêng tôi Các số liệu, kết quả mới nêu trong luận án là hoàn toàn trung thực và chưa từng được ai công bố trong bất kì công trình nào khác

Ngày 21 tháng 6 năm 2013

Tác giả luận án

Chu Đức Toàn

Trang 4

xử lý – Học viện Kỹ thuật Quân sự

Tôi xin chân thành cảm ơn lãnh đạo và các chuyên viên Phòng thí nghiệm Kỹ thuật Vi xử lý – Học viện Kỹ thuật Quân sự, đã tạo điều kiện về trang thiết bị thực nghiệm để tôi hoàn thành được phần thực nghiệm và mô phỏng của luận án

Tôi xin chân thành cảm ơn Khoa Sau đại học - Trường Đại học Kỹ thuật Công nghiệp, Đại học Thái Nguyên, xin chân thành cảm ơn Ban giám hiệu Trường Đại học Kỹ thuật Công nghiệp đã tạo những điều kiện thuận lợi nhất về mọi mặt để tôi hoàn thành khóa học Nghiên cứu sinh

Tác giả luận án

Trang 5

MỤC LỤC

Trang

Mục lục……… iii

Danh mục các ký hiệu và các chữ viết tắt……… vi

Danh mục các bảng……… viii

Danh mục các hình vẽ và đồ thị……… ix

MỞ ĐẦU……… 1

Chương 1 KIẾN TRÚC HỆ XỬ LÝ SONG SONG ĐA CPU 6

1.1 Tài nguyên hệ thống……… 6

1.1.1 Tài nguyên phần cứng……… 6

1.1.2 Tài nguyên phần mềm……… 6

1.2 Định nghĩa hệ xử lý song song ……… 7

1.3 Phân loại hệ xử lý song song……… 7

1.3.1 Sơ đồ phân loại của Flynn……… 8

1.3.2 Sơ đồ phân loại của Handler……… 9

1.4 Kiến trúc chung hệ xử lý song song đa CPU……… 10

1.4.1 Mô hình……… 11

1.4.2 Những vấn đề liên quan đến hiệu năng……… 12

1.5 Kiến trúc chung hệ xử lý song song đa CPU chuyên dụng…… 19

1.5.1 Các đặc trưng của hệ xử lý song song chuyên dụng………… 19

1.5.2 Kiến trúc của hệ xử lý song song chuyên dụng……… 21

1.6 Luận giải, định hướng nghiên cứu của đề tài……… 25

1.7 Kết luận chương 1……… 30

Chương 2 XÂY DỰNG MÔ HÌNH TOÁN HỌC THAM CHIẾU BỘ NHỚ DÙNG CHUNG TRONG HỆ XỬ LÝ SONG SONG ĐA CPU CHUYÊN DỤNG 31 2.1 Cơ sở lý thuyết 31

Trang 6

2.2 Xây dựng mô hình toán học tham chiếu bộ nhớ dùng chung trong hệ

2.2.1 Mô hình truyền thống tham chiếu bộ nhớ dùng chung trong hệ xử lý song song đa CPU………… 35 2.2.2 Mô hình cải tiến tham chiếu bộ nhớ dùng chung trong hệ xử lý song song đa CPU………… 36 2.2.2.1 Xác định đại lượng P – Xác suất thanh ghi tham chiếu lối vào rỗi………… 37 2.2.2.2 Xác định đại lượng Ep – Hiệu năng khi các hàng đợi của các mô đun nhớ đầy ………… 44

2.2.2.3 Xác định El - Hiệu năng khi thanh ghi tham chiếu lối vào băng nhớ

rỗi………

47

Chương 3 XÂY DỰNG MÔ HÌNH ĐIỀU KHIỂN THÍCH NGHI

3.1 Xây dựng phần mềm khảo sát 53 3.1.1 Xây dựng mô đun chính phần mềm khảo sát 53 3.1.2 Xây dựng mô đun phần mềm tính toán hiệu năng hệ xử lý song song đa CPU trong quan hệ với chu kỳ bộ nhớ dùng chung Tc 55 3.1.3 Xây dựng mô đun phần mềm tính toán hiệu năng hệ xử lý song song đa CPU trong quan hệ với số lượng luồng tham chiếu n 57 3.1.4 Xây dựng mô đun phần mềm tính toán hiệu năng hệ xử lý song song đa CPU trong quan hệ với chu kỳ bộ nhớ Tc khi khảo sát ở giá trị ρ=0,5.………

59

Trang 7

3.4.2 Thiết kế hệ thống trên FPGA 73

3.6 Kết luận chương 3……… 83

KẾT LUẬN CHUNG VÀ KIẾN NGHỊ 84

DANH MỤC CÁC CÔNG TRÌNH CỦA TÁC GIẢ 85

TÀI LIỆU THAM KHẢO 86

Trang 8

E l Hiệu năng khi thanh ghi tham chiếu lối vào rỗi

T l Chu kỳ của băng logic

T p Chu kỳ hiệu quả của bộ nhớ

T d

Độ trễ nhỏ nhất để truyền một tham chiếu từ hàng chờ vào môđun nhớ

T c Chu kỳ vật lý của môđun nhớ

P Xác suất thanh ghi lối vào rỗi

k Số môđun nhớ trong mỗi băng logic

l Số lượng băng logic trong hệ thống

q

Tốc độ khởi tạo tham chiếu trung bình của mỗi CPU (Xác suất một luồng tham chiếu đang ở trạng thái tự do sẽ khởi tạo một tham chiếu)

Xác suất mà một luồng tham chiếu ở trạng thái tự do

Xác suất một luồng tham chiếu đang thực hiện một tham chiếu thành

Trang 9

DANH MỤC CÁC TỪ VIẾT TẮT

ALU Arithmetic Logic Unit đơn vị logic số học

CISC Bộ VXL với tập lệnh đầy đủ

CU Control Unit – đơn vị điều khiển;

DS Data stream – luồng dữ liệu

EX Execution - Thực hiện lệnh

FIFO First In First Out - Vào trước ra trước

FPGA Field Programmable Gate Array mảng cổng logic lập trình được

ID Instruction decoder – giải mã lệnh

IF Instruction fetch – nạp lệnh

IS Instruction stream – luồng lệnh

MIMD Multiple Instruction Multiple Data - Đa dòng lệnh đa dòng dữ

liệu

PE Processing Element – Phần tử xử lý

PU Processing Unit – Đơn vị xử lý

RISC Bộ vi xử lý với tập lệnh rút gọn

KGNDC Không gian nhớ dùng chung

Trang 10

DANH MỤC CÁC BẢNG

Bảng 1.3: So sánh một số tính năng của hệ xử lý song

Bảng 3.1: Xác suất một yêu cầu đến khi hàng đợi chưa

đầy theo m và ρ với qui tắc hàng đợi M/D/1/m 63

Trang 11

DANH MỤC CÁC HÌNH VẼ

Hình 1.10: Kiến trúc của hệ xử lý song song đa CPU chuyên dụng 21 Hình 1.11: Mô hình kiến trúc: a) Hệ xử lý CISC, b) Hệ xử lý RISC 23 Hình 1.12: Tác động của lệnh rẽ nhánh (I 3B ) đến đường ống 4 tầng 24

Hình 2.1: Tham chiếu bộ nhớ dùng chung trong hệ xử lý song

Hình 2.2: a Sơ đồ hàng đợi tổng quát;

b Sơ đồ hàng đợi cho hệ xử lý song song đa CPU 38

Hình 2.3: Tổ chức băng băng nhớ đan xen cho KGNDC trong hệ

Hình 3.1: Giao diện phần mềm tính toán hiệu năng hệ xử lý song

Hình 3.2:

Giao diện phần mềm tính toán hiệu năng hệ xử lý song song đa CPU trong quan hệ với chu kỳ bộ nhớ dùng chung Tc

57

Trang 12

Hình 3.3:

Giao diện phần mềm tính toán hiệu năng hệ xử lý song song đa CPU trong quan hệ với số lượng luồng tham chiếu n

59

Hình 3.4:

Giao diện phần mềm tính toán hiệu năng hệ xử lý song song đa CPU trong quan hệ với chu kỳ bộ nhớ Tc khi khảo sát ở giá trị ρ=0.5

61

Hình 3.5:

Hiệu quả tham chiếu ngẫu nhiên băng nhớ logic theo T được so sánh trong hai trường hợp khi m =2 và trường hợp không có băng nhớ logic (m=0, T l =T d =0) 62

Hình 3.6: Sự phụ thuộc của E theo chu kỳ vật lý của mô đun nhớ

Hình 3.7: Đồ thị của E theo số luồng tham chiếu n a) T c =10; b)

Hình 3.8: Đồ thị của E theo chu kỳ vật lý mô đun nhớ Tc khi giữ

Hình 3.9: Sơ đồ khối hệ thống điều khiển thích nghi cơ bản 67

Hình 3.10: Sơ đồ khối điều khiển thích nghi luồng tham chiếu cho hệ xử

Hình 3.11: a) Cấu trúc của PLA b) Cấu trúc của PAL 69

Trang 13

MỞ ĐẦU

1 Tính cấp thiết đề tài

Lý thuyết về xử lý song song (parallel processing) bắt đầu vào những năm

1940 khi J.Von Neumann giới thiệu một số mô hình hạn chế của tính toán song song, chủ yếu là một mảng hai chiều các bộ xử lý trạng thái hữu hạn được tương kết theo dạng hình lưới Ngày nay lý thuyết về xử lý song song trở thành lĩnh vực nghiên cứu quan trọng và ngày càng đem lại những dấu hiệu khả quan trong việc xây dựng mô hình lập trình mới có những tính năng vượt trội so với mô hình lập trình tuần tự truyền thống

Nhiều lĩnh vực mới như đồ họa máy tính, trí tuệ nhân tạo, phân tích số, tính toán song song trong công nghiệp dầu khí, các thiết bị không người lái, thiết bị nhận dạng bám sát đa mục tiêu di động , đòi hỏi phải xử lý một khối lượng dữ liệu rất lớn với tốc độ rất cao Hầu hết những bài toán này, những máy tính tuần tự là không đáp ứng được yêu cầu thực tế

Mặc dù tốc độ xử lý của các bộ xử lý tăng nhiều trong những năm qua, nhưng do giới hạn về vật lý nên khả năng tính toán của chúng không thể tăng mãi được Ngày càng xuất hiện nhiều bài toán mà hệ thống đơn bộ xử lý không đáp ứng được yêu cầu xử lý về mặt thời gian

Sự ra đời và phát triển nhanh của công nghệ vi điện tử đã tạo ra bước đột phá mạnh mẽ trong lĩnh vực khoa học tính toán và xử lý thông tin Với sự phát triển ứng dụng các công nghệ này đã làm cho ranh giới các ngành không còn rõ rệt nữa (như Công nghệ thông tin, Điện tử viễn thông và Tự động điều khiển) Các hệ thống từ quy mô nhỏ tới quy mô lớn và siêu lớn trong lĩnh vực quân sự, cũng như dân dụng đều chứng kiến sự hiện hữu của các hệ vi xử lý chức năng đóng vai trò trung tâm

Trang 14

điều khiển hệ thống thực hiện các nhiệm vụ đã ấn định Những hệ thống này đáp ứng được các yêu cầu khắt khe nhất như đòi hỏi phải xử lý dữ liệu với tốc độ rất cao, khối lượng dữ liệu và số lượng phép tính rất lớn Để đáp ứng các yêu cầu trên, giải pháp thiết kế hệ thống theo hướng xử lý song song là hướng nghiên cứu được

ưu tiên ngày nay

Để tăng tốc độ cho các hệ xử lý, các nhà thiết kế chế tạo đã áp dụng các công nghệ tiên tiến, từng bước nâng cấp hoàn thiện cho các bộ vi xử lý Điển hình là cấu trúc bộ vi xử lý với tập lệnh đầy đủ (CISC), bộ vi xử lý với tập lệnh rút gọn RISC [10], [12] Những nghiên cứu về kiến trúc hệ thống số đã khẳng định được

ưu thế nổi bật của hệ thống xử lý song song Tuy nhiên, xử lý song song là vấn đề phức tạp, liên quan tới nhiều cơ cấu như: phần cứng của hệ xử lý, phần mềm hệ thống (hệ điều hành), thuật toán tính toán, ngôn ngữ lập trình… Ý tưởng nghiên cứu

kỹ thuật xử lý song song theo hướng chuyên dụng cho từng lớp bài toán để đạt được tiêu chí về tốc độ, về độ tin cậy được đặt ra là có ý nghĩa thực tế, đáp ứng nhu cầu phát triển ứng dụng Nghiên cứu về hệ xử lý song song hiện nay tập chung hai hướng nghiên cứu chính như sau:

Một là nghiên cứu các hệ xử lý đa năng như siêu máy tính (Suppercomputer) [47], [56], máy tính lớn (Mainframe), máy tính mini (Minicomputer), mặc dù có khả năng thực hiện một tập hợp các lớp bài toán phong phú, nhưng để đưa vào sử dụng cho các ứng dụng chuyên dụng là không phù hợp Điều này cũng dễ hiểu bởi vì để thực hiện đa năng: cấu trúc phần cứng và chức năng phần mềm của máy tính cần phải được tổ chức đa chức năng rất phức tạp Mô hình toán cũng rất phức tạp, vượt qua khỏi cơ cấu tính toán thông thường Do vậy, khi áp dụng cho các ứng dụng chuyên dụng, tốc độ xử lý của chúng thường chậm hơn so với khả năng của bộ vi xử lý, thông số thời gian thực khó kiểm soát một cách chính xác

Các hệ xử lý đa năng mặc dù tốc độ cao, tốc độ của nó có thể sử dụng mô phỏng các vụ nổ hạt nhân Hệ xử lý song song đa năng quy mô rất lớn kèm theo cơ cấu phần mềm vận hành cấu trúc này rất phức tạp Vì vậy các hệ máy tính này có

Trang 15

giá thành rất đắt Đây là vấn đề khó khăn khi giải quyết các bài toán đặc thù có yêu cầu tốc độ nhanh, giá thành rẻ phù hợp với điều kiện nền kinh tế Việt Nam

Hai là nghiên cứu các hệ xử lý song song đa CPU chuyên dụng đó là: Hệ xử lý song song chuyên dụng phục vụ một hay một lớp bài toán cụ thể, gần nhau về chức năng Do đó, phương thức thao tác, cấu trúc tập hợp dữ liệu cần xử lý, cấu trúc dữ liệu kết quả đều xác định trước, nên dễ phân rã chức năng hơn; dễ lựa chọn cách tổ chức dữ liệu và phương pháp xử lý thích hợp với yêu cầu tốc độ Với nhiệm vụ cụ thể và cấu trúc dữ liệu xác định, có thể xây dựng thuật toán xử lý tối ưu, cấu trúc phần cứng thích hợp, tận dụng tài nguyên hệ thống hợp lý Do chức năng của hệ xử

lý song song chuyên dụng là hữu hạn và tường minh, nên chương trình Monitor được xây dựng ở mức tối ưu nhất, dễ hiệu chỉnh và quan trọng hơn là đáp ứng nhanh yêu cầu của các tiến trình vận hành trong hệ thống

Xu hướng các nhà thiết kế ứng dụng công nghệ mới FPGA kết hợp với bộ xử lý lõi phát triển các hệ xử lý theo hướng các hệ thống này có khả năng thay đổi cấu hình (tái cấu hình) và các hệ thống có tính chuyên dụng [52], [54] Đặc biệt, trong nước đã có một số cơ sở nghiên cứu về hệ xử lý song song trên cơ sở công nghệ RISC với kiến trúc Harvard Với kỹ thuật tiên tiến hiện nay, việc sử dụng công nghệ đương đại FPGA cho phép thực hiện tái kiến trúc nhanh hệ thống nhằm tối ưu hóa chức năng Chính vì vậy mà hệ có tốc độ xử lý cao, trong khi từng thành phần của

hệ làm việc ở dưới mức tới hạn nên đảm bảo độ tin cậy cao

Qua phân tích ở trên đề tài luận án lựa chọn theo hướng nghiên cứu thứ hai là

hệ xử lý song song đa CPU chuyên dụng Trong hệ xử lý song song đa CPU chuyên dụng, không gian nhớ dùng chung (KGNDC) rất quan trọng: là nơi lưu trữ các cơ sở

dữ liệu cần xử lý, chứa chương trình điều hành Khi nhiều luồng tham chiếu truy cập vào bộ nhớ dùng chung cùng một thời điểm có thể dẫn đến xung đột, hệ thống lúc đó có thể bị treo hoặc tốc độ truy cập thấp, hiệu năng của bộ nhớ dùng chung giảm không đáp ứng được yêu cầu tốc độ của bài toán đặt ra Phần quan trọng của KGNDC là các bộ điều khiển luồng tham chiếu Trên cơ sở đó vấn đề cần giải quyết

là tổng hợp cơ cấu điều khiển thích nghi luồng tham chiếu tới KGNDC nhằm giảm thiểu tối đa xác suất xung đột khi truy cập tài nguyên dùng chung, nâng cao tốc độ

Trang 16

tính toán có ý nghĩa rất quan trọng Từ những phân tích trên, việc đặt ra bài toán nghiên cứu hệ xử lý song song đa CPU chuyên dụng đáp ứng tốc độ xử lý nhanh và

có độ tin cậy cao, giá thành hợp lý là cần thiết và là cơ sở hình thành đề tài của luận

án: “Nghiên cứu thuật toán điều khiển thích nghi luồng tham chiếu để nâng cao

tốc độ cho các hệ xử lý song song chuyên dụng ”

2 Đối tượng và phạm vi nghiên cứu

- Đối tượng nghiên cứu luận án là KGNDC trong hệ xử lý song song đa CPU

chuyên dụng

- Phạm vi nghiên cứu của luận án là giới hạn trong việc xây dựng mô hình toán

học tham chiếu tới KGNDC trong hệ xử lý song song đa CPU chuyên dụng, chỉ rõ các điều kiện ràng buộc giữa các thông số và các thông số có thể thay đổi điều khiển được để tổng hợp hệ điều khiển thích nghi luồng tham chiếu tới KGNDC nhằm nâng cao hiệu năng giảm thiểu xác suất xung đột khi truy cập tài nguyên dùng chung

3 Phương pháp nghiên cứu của luận án

- Dựa trên lý thuyết kinh điển là lý thuyết hàng đợi, lý thuyết xác suất cụ thể là quá

trình Morkov dừng, phân bố Poát - xông để xây dựng và tính toán hiệu năng cho mô hình toán học tham chiếu tới KGNDC trong hệ xử lý song song đa CPU chuyên

Trang 17

4.2 Về thực tiễn

Kết quả nghiên cứu sẽ làm tài liệu tham khảo cho sinh viên và học viên cao học cũng như các nhà nghiên cứu quan tâm nghiên cứu về hệ xử lý song song đa CPU chuyên dụng Từ kết quả nghiên cứu của đề tài này làm cơ sở cho nhiều nghiên cứu tiếp theo nhằm đưa ứng dụng rỗng rãi các hệ xử lý song song đa CPU chuyên dụng vào hệ thống thực tế ở Việt Nam, nhất là các hệ thống có yêu cầu cao về tốc độ

5 Cấu trúc luận án

Luận án bao gồm phần mở đầu, ba chương thuyết minh, phần kết luận, các công trình công bố của NCS, tài liệu tham khảo

Chương 1: Trình bày, tập trung giới thiệu tổng quan về xử lý song song đa CPU,

các đặc trưng kiến trúc của hệ thống xử lý song song đa CPU chuyên dụng Phân tích các kết quả nghiên cứu trong và ngoài nước với các hướng nghiên cứu về hệ

xử lý song song đa CPU chuyên dụng như mở rộng phạm vi ứng dụng, ứng dụng các phương pháp điều khiển hiện đại Đề xuất phương pháp và các nội dung cần nghiên cứu là phương pháp điều khiển thích nghi luồng tham chiếu tới KGNDC dựa trên lý thuyết hàng đợi nhằm nâng cao hiệu năng giảm thiểu xác suất xung đột

khi truy cập tài nguyên dùng chung

Chương 2: Trình bày cơ sở xây dựng mô hình toán học tham chiếu tới KGNDC cho

hệ xử lý song song đa CPU chuyên dụng Phân tích mô hình, các thông số ràng buộc, chỉ ra các thông số có thể điều khiển được Trên cơ sở tham khảo các tài liệu [10], [15], [33], [39], [18] và sử dụng lý thuyết hàng đợi [48]

Chương 3: Dựa trên mô hình toán học được xây dựng ở chương 2, tiến hành xây

dựng chương trình thuật toán khảo sát và tính toán Thiết kế tổng hợp hệ thống điều khiển thích nghi luồng tham chiếu KGNDC bằng cách sử dụng công nghệ đương

đại FPGA

Kết luận chung và kiến nghị

Trang 18

Chương 1 KIẾN TRÚC HỆ XỬ LÝ SONG SONG ĐA CPU

hệ vi xử lý trong hệ xử lý song song Bộ nhớ dùng chung là nơi chứa các dữ liệu dùng chung cho các hệ đơn xử lý thành phần: như các thông báo của các tiến trình, các kết quả trung gian đầu ra của tiến trình này nhưng lại là số liệu đầu vào cho các tiến trình khác trong quá trình hoạt động của hệ thống

- Hệ thống bus thể hiện năng lực truyền tải thông tin bên trong và với bên ngoài

hệ thống

1.1.2 Tài nguyên phần mềm

- Hệ điều hành hoặc ở quy mô nhỏ hơn là chương trình Monitor có nhiệm vụ điều phối các tiến trình vận hành trong môi trường hệ xử lý song song một cách hiệu quả nhất Khi chạy ở chế độ bảo vệ (chế độ địa chỉ ảo), hệ điều hành phải phối hợp đồng bộ các cơ cấu từ lớp vật lý đến lớp ứng dụng sao cho việc truy nhập vào các tài nguyên hệ thống phải nhanh nhất và lại phải ít xung đột nhất

- Các dịch vụ hệ thống cung cấp các chương trình kiểm tra, thông báo hỏng hóc, các cơ cấu điều khiển mức hệ thống như vào/ra, điều khiển các giao diện nối tiếp, song song, các driver cho các phần cứng chức năng

- Các thư viện chức năng cung cấp các hàm các thủ tục chuẩn trong tính toán với các thao tác toán học phức tạp như khai triển chuỗi, xử lý dấu phẩy động

Trang 19

- Bảng véc tơ ngắt chứa các điểm vào tài nguyên phần mềm hệ thống, đặc biệt là các tài nguyên nằm ở lớp vật lý (tài nguyên lõi), nơi mà các ánh xạ của chúng thường là ánh xạ trực tiếp tới phần cứng của hệ xử lý song song

1.2 Các định nghĩa về hệ xử lý song song

- Xử lý song song là quá trình xử lý nhiều tiến trình được phát động đồng thời và

cùng tham gia giải quyết một nhiệm vụ

- Hệ xử lý song song là một kiến trúc hệ thống bao gồm nhiều hệ xử lý có khả

năng xử lý song song

- Hiệu năng của xử lý song song có nhiều cách định nghĩa phụ thuộc vào phương

thức tiếp cận với kiến trúc của hệ xử lý song song Do luận án tiếp cận với kiến trúc của hệ xử lý song song ở mức thấp (mức cấu trúc phần cứng) nên hiệu năng của hệ được hiểu như là tỷ số của khả năng thực thi thao tác giữa điều kiện thực tế và điều kiện lý tưởng (bao gồm: tốc độ tính toán của CPU, thông lượng của bộ nhớ cục bộ, xác suất xung đột các luồng tham chiếu ở bộ nhớ dùng chung )

1.3 Phân loại hệ xử lý song song đa CPU

Phân loại tổng quát nhất đối với các hệ xử lý song song là hệ xử lý song song đa dụng và hệ xử lý song song chuyên dụng Hệ xử lý song song đa dụng về bản chất

là các hệ máy tính từ siêu máy tính, máy tính lớn, máy tính mini đến kiến trúc song song kết chùm (cluster) các máy tính PC Những máy tính này đều có khả năng thực hiện một tập hợp các lớp bài toán phong phú Chính vì vậy, chúng có tổ chức phần cứng và hệ điều hành phức tạp đáp ứng đầy đủ các chức năng thao tác và điều khiển cần thiết Trong khi đó, hệ xử lý song song chuyên dụng cũng là hệ xử lý song song, đối tượng xử lý là một lớp bài toán có chức năng xác định; nên rõ ràng là kiến trúc của chúng sẽ ít phức tạp hơn nhiều so với hệ xử lý song song đa dụng

Michael J Flynn, Handler đã đưa ra cách phân loại các hệ xử lý song song Theo các tác giả này, các hệ xử lý song song có thể phân loại dựa vào các đặc trưng

về cấu trúc luồng lệnh/dữ liệu, về mức độ song song và mức độ xử lý theo cơ chế đường ống cũng như dựa vào chỉ tiêu về kiểu và số lượng CPU, cấu trúc bộ nhớ, sự kết nối giữa chúng

Trang 20

1.3.1 Sơ đồ phân loại của Flynn

Michael J Flynn đã đưa ra cách phân loại dựa vào cách thao tác của dòng lệnh và dòng dữ liệu trong hệ xử lý mà phân thành bốn lớp kiến trúc chính như bảng 1.1

Bảng 1.1: Phân loại kiến trúc của Flynn

a Kiến trúc SISD: được chỉ ra trong hình 1.1, đó là những hệ xử lý truyền thống

chỉ có một CPU, ở mỗi thời điểm chỉ thực hiện một lệnh Các lệnh có thể được thực hiện tuần tự, nhưng cũng có thể được xếp chồng theo cơ chế đường ống

Hình 1.1: Mô hình kiến trúc SISD

b Kiến trúc SIMD: được chỉ ra trong hình 1.2, đó là những hệ xử có một đơn vị

điều khiển để điều khiển nhiều phần tử xử lý PE CU điều khiển chung cho tất cả

PE cùng thực hiện thao tác trên những tập dữ liệu của các luồng dữ liệu khác nhau

Hình 1.2: Mô hình kiến trúc SIMD

IS

IS

CU (Đơn vị điều khiển )

Trang 21

c Kiến trúc MISD: được chỉ ra trong hình 1.3, có thể thực hiện nhiều tiến trình

trên cùng một tập dữ liệu Còn gọi là hệ đa chương trình đơn dòng dữ liệu (MPSD)

Hình 1.3: Mô hình kiến trúc MISD

d Kiến trúc MIMD: được chỉ ra trong hình 1.4, trong đó mỗi đơn vị xử lý PU có

thể thực hiện các luồng lệnh khác nhau trên các luồng dữ liệu riêng Đây là kiến trúc phức tạp nhất, nhưng là mô hình hỗ trợ xử lý song song cao nhất Chính vì tính linh hoạt của nó mà có nhiều nghiên cứu theo hướng này để chế tạo máy tính lớn

Hình 1.4: Mô hình kiến trúc MIMD

1.3.2 Sơ đồ phân loại của Handler

Handler vào 1977 phân loại hệ xử lý song song dựa trên cấp độ song song và cấp độ xử lý theo cơ chế đường ống của cấu trúc phần cứng Với cách này hệ xử lý song song được xem xét theo ba cấp:

- Đơn vị điều khiển bộ xử lý (PCU)

- Đơn vị số học logic (ALU)

Trang 22

Mỗi PCU tương ứng với một CPU ALU tương đương với phần tử xử lý (PE) chúng được ghi rõ cho các bộ xử lý mảng SIMD BLC tương ứng kỹ thuật mạch logic tổ hợp thực hiện các thao tác 1 bit trong ALU

Một hệ xử lý T(XL) có thể được đặc trưng bằng ba cặp tương ứng:

T(XL) = <K K', D D', W W'>

K – số bộ xử lý trong hệ

K' – số đơn vị điều khiển CPU có cơ chế đường ống

D – số lượng ALU (hoặc PE) dưới sự điều khiển của một đơn vị CU

D'- số ALU có cơ chế đường ống

W- độ dài từ (word) của ALU hoặc của PE

W'- số tầng đường ống sử dụng trong ALU hoặc PE

Ví dụ, phân loại máy Intel Paragon XP/S sẽ được ghi:

T(XL) = <18402, 1 2, 643>;

Ở đây, theo cấu trúc được hiểu:

- 1840x2: có K= 1840 bộ xử lý, mỗi nút gồm có K' =2 bộ xử lý Intel i860

- 1 2: một đơn vị xử lý (D) có thể thực hiện D' = 2 lệnh đồng thời

-643: đơn vị chức năng xử lý có W = 64 bít, ống dẫn có W' = 3 tầng

Bảng 1.2: Sơ đồ phân loại của Erlanger

Trang 23

Hệ đa CPU có thể đặc trưng bởi hai thuộc tính: hệ xử lý bao gồm nhiều hệ đơn CPU (còn gọi là các hệ vi xử lý thành phần); các hệ đơn CPU có thể liên hệ và hợp tác hoạt động theo mức độ khác nhau trong thực hiện nhiệm vụ được giao

Sự truyền thông giữa các CPU được thực hiện theo phương thức gửi thông báo cho nhau thông qua bộ nhớ chung

Hình 1.5: Mô hình kiến trúc chung của hệ xử lý song song

Khối phân chia chức năng cho các hệ đơn CPU thành phần cung cấp khả năng phối hợp các hệ đơn CPU thành phần và chương trình của chúng ở các quá trình xử lý, thiết lập dữ liệu, mức và quyền hạn xử lý chúng Khối phân chia chức năng phải có khả năng phân tích từng cụm lệnh để hình thành các tiến trình con có thuộc tính song song rồi phân chia cho các hệ đơn CPU thành phần một cách tối ưu

và cung cấp phương thức phối hợp các CPU này ở mọi giai đoạn hoạt động Để thực hiện được điều này, cần xây dựng các thuật toán phù hợp theo chức năng và nhiệm vụ cho hệ Đỗ Xuân Tiến [22] đề cập phương pháp xây dựng các thuật toán song song cho việc tổng hợp thiết kế các hệ xử lý song song

Như vậy, hệ xử lý song song gồm p CPU tạo thành không gian vector p chiều Trong quá trình thao tác, mỗi hệ đơn CPU thành phần có thể phải truy cập nhiều lần

Khối phân chia chức năng cho các hệ đơn CPU thành phần

Mạng kết nối - cổng kiểm soát tín hiệu vào/ra

giữa các hệ đơn CPU và bộ nhớ dùng chung

Trang 24

tới bộ nhớ dùng chung để cập nhật số liệu và do đó làm tăng đáng kể độ trễ của hệ thống Muốn giảm độ trễ này, cách tốt nhất được sử dụng trong các máy tính từ Microcomputer đến Supercomputer là sử dụng cơ cấu Cache Điều này làm giảm đáng kể thời gian xếp hàng ở cổng giao diện giữa các hệ đơn CPU thành phần với

bộ nhớ dùng chung Về phần bộ nhớ dùng chung, có thể được tổ chức từ l mô đun

để giảm thiểu xung đột khi tham chiếu tới không gian nhớ dùng chung này

1.4.2 Những vấn đề liên quan đến hiệu năng

cơ bản cho loại hình này là các máy tính Cray-1, VP-200 [9] Trong cấu trúc của các máy tính này, khối xử lý lệnh bao gồm ba tầng chức năng Ví dụ, khối xử lý lệnh máy tính CRAY-1 được minh họa trong Hình 1.6 Riêng tầng OF gồm hai phần độc lập nhau: một cho toán hạng vô hướng (Scalar data), một cho toán hạng véc tơ (vector data) Các thanh ghi dùng trong khối vô hướng có cấu trúc đơn giản giống như các thanh ghi thông thường, còn các thanh ghi véc tơ phức tạp hơn vì nó phải chứa nhiều thành phần Ví dụ, thanh ghi véc tơ của máy tính CRAY-1có 64 thành phần, mỗi thành phần 64 bit, vị chi là 4096 bit

Trang 25

Để ý rằng, khối xử lý lệnh dùng để thực hiện từng lệnh với trình tự các khâu là không đổi, bao gồm: nhận lệnh (Instruction fetch-IF), giải mã lệnh (Instruction decoding-ID), nạp toán hạng (Operand fetch-OF) và thực hiện lệnh (Execution-EX) Như vậy, các khâu là tuyến tính, không phụ thuộc nhau khi thao tác nên có thể áp dụng cơ chế đường ống ở đây Riêng khâu thực hiện lệnh được chia nhỏ theo các chức năng khác nhau Mỗi chức năng cũng được thực hiện theo

cơ chế đường ống Trên hình 1.6 thể hiện N đường ống vô hướng và M đường ống véc tơ

Kiến trúc kiểu đường ống cho phép khai thác tính năng song song ở mức lệnh, làm tăng đáng kể hiệu năng xử lý của một bộ vi xử lý [8], [27], [42] Xử lý theo cơ

chế đường ống được thực hiện bằng cách phân chia một nhiệm vụ T (lệnh) đã cho thành n giai đoạn Mỗi giai đoạn thực hiện một phần của T bằng một cấu trúc chức

năng phần cứng (một tầng của đường ống) Nhờ vậy, tại một thời điểm chỉ một tầng của đường ống thực hiện công việc, các tầng còn lại không sử dụng và có thể được dùng để thực hiện với lệnh khác Như vậy, có thể xếp chồng thực hiện nhiều lệnh trong cùng một thời gian Hình 1.7 mô tả một cấu trúc xử lý đường ống gồm k tầng

Hình 1.6: Cấu trúc của khối xử lý lệnh trong máy CRAY-1

Đường ống vô hướng 1 Đường ống vô hướng 2 Đường ống vô hướng N

Đường ống véc tơ 1 Đường ống véc tơ 2 Đường ống véc tơ M

Trang 26

(k = 4), bao gồm: nhận lệnh IF; giải mã lệnh ID; nạp toán hạng OF và thực hiện lệnh EX

Hình 1.8 cho thấy sự khác nhau khi thực thi công việc không và có xếp chồng

về thời gian Khi thực hiện có xếp chồng thì thời gian thực hiện sẽ ít hơn

Giả sử, đường ống có k tầng, mỗi tầng có thời gian xử lý như nhau, n là số

nhiệm vụ (lệnh) đầu vào,  là chu kỳ nhịp đồng hồ, T seq là thời gian yêu cầu để hoàn

thành nhiệm vụ T trên máy tuần tự (không xếp chồng) Hawng K đưa ra cách đánh

giá hiệu năng của đường ống qua các đại lượng cơ bản:

nk T

T S

Trang 27

- Hiệu năng (E):

n k

k

n T

n H

Sơ bộ cho thấy, với kiến trúc kiểu đường ống, nếu n >> k thì tốc độ của hệ

xử lý có xếp chồng thời gian bằng cơ cấu đường ống sẽ lớn gấp k lần so với hệ xử

lý không xếp chồng thời gian Kèm theo đó là hiệu năng E và thông lượng H của

luồng lệnh được nâng lên rất nhiều

b Kiến trúc bộ nhớ

Yếu tố quan trọng tiếp theo ảnh hưởng tới hiệu năng của hệ xử lý song song

là kiến trúc của bộ nhớ của hệ

Đặc điểm của bộ nhớ trong hệ xử lý song song là sự chênh lệch lớn giữa tốc

độ bộ nhớ và tốc độ CPU Khoảng cách này tăng là do công nghệ chế tạo CPU có

sự tăng về tốc độ lớn hơn so với các chip nhớ; mặt khác việc sử dụng các cơ chế siêu vô hướng trong các hệ vi xử lý cũng làm cho khoảng cách này tăng lên [19] Để dung hòa giữa tốc độ rất cao của CPU với không gian nhớ chậm chạp của mình, các

hệ xử lý song song thực hiện tổ chức phân cấp bộ nhớ Giải pháp sử dụng bộ nhớ đệm (cache) là tối ưu cho các hệ xử lý song song đa dụng

Đối với các hệ xử lý song song, sự tồn tại của nhiều CPU dẫn đến khả năng xuất hiện đồng thời các yêu cầu tham chiếu tới bộ nhớ ở cùng mức trong phân cấp Nếu có hai hoặc nhiều hơn các yêu cầu tham chiếu tới cùng một vị trí trong bộ nhớ

ở cùng cấp thì sẽ xảy ra xung đột, làm giảm hiệu năng của hệ thống Do đó, bộ nhớ phải được tổ chức sao cho có thể giảm tới mức thấp nhất khả năng xảy ra xung đột tại mỗi cấp Điều này được thực hiện bằng cách, phân vùng bộ nhớ tại cấp xác định thành các mô đun sao cho sự truy nhập đồng thời có thể thực hiện được ở mức độ nào đó

Nói chung, phân cấp bộ nhớ được cấu trúc sao cho các bộ nhớ ở cấp i là “cao hơn” các bộ nhớ ở cấp i+1 Gọi c i , t i và s i tương ứng là chi phí trên một byte, thời gian truy nhập trung bình và kích thước bộ nhớ tổng cộng ở cấp i, ta có quan hệ giữa các cấp i và i+1 như sau:

Trang 28

* Về chi phí trên một byte nhớ: c i > c i+1

* Về thời gian truy nhập trung bình: t i < t i+1

Bộ xử lý thường tham chiếu tới một nội dung trong bộ nhớ bằng cách đưa ra

vị trí hay địa chỉ của ô nhớ Một phân cấp bộ nhớ thường được tổ chức sao cho

không gian địa chỉ ở cấp i là một bộ phận của không gian địa chỉ ở cấp i+1 Tuy nhiên, điều này chỉ đúng trong quan hệ giữa các cấp Địa chỉ A k tại cấp i không nhất thiết là địa chỉ A k ở cấp i+1, nhưng bất kỳ dữ liệu ở cấp i có thể cũng có ở cấp i+1 Tuy vậy, một số dữ liệu ở cấp i có thể được sử dụng thường xuyên hơn cũng chính

dữ liệu ấy ở cấp i+1 Thông thường cấp i+1 cuối cùng được cập nhật với dữ liệu đã được thay đổi từ cấp i

Vấn đề về tính nhất quán dữ liệu cũng có thể tồn tại giữa các bộ nhớ cục bộ hay giữa các cache khi hai quá trình đồng thao tác, có thể được thực thi đồng thời hay trên các bộ xử lý riêng, tương tác qua một hay nhiều biến chia sẻ Để giải quyết vấn đề này, có một số giải pháp như: phân tán và quản lý bộ nhớ một cách hợp lý,

tổ chức các phân hệ vào/ra và bộ nhớ song song một cách hiệu quả [55]

Để mô hình hóa hiệu năng của bộ nhớ phân cấp, ta cho rằng việc kiểm soát điều hành bộ nhớ được đặc trưng bởi hàm thành công (success function) hay hệ số

H (hit ratio) đó là xác suất tìm thấy dữ liệu yêu cầu trong bộ nhớ của một cấp nhất

định Nói chung, H phụ thuộc vào dữ liệu, dung lượng của bộ nhớ tại cấp đó,

phương thức giám sát và các yếu tố khác Tuy nhiên, đối với hầu hết các phương

pháp vận hành, có thể thấy rằng H chịu ảnh hưởng nhiều nhất bởi kích thước bộ nhớ

s Vì vậy hàm thành công có thể viết là h(s) Hệ số hay xác suất không tìm thấy dữ

liệu trong bộ nhớ cấp s được xác định bởi F(s) = 1 - H(s) Do các bản sao của dữ liệu ở cấp i được giả định là tồn tại ở các cấp lớn hơn i, xác suất tìm thấy dữ liệu tại cấp i và không tìm thấy tại các cấp cao hơn (1 đến i - 1) là:

Trang 29

Hình 1.9: Cấu trúc của bộ nhớ phân cấp trong các hệ xử lý [24]

Mục tiêu của kiến trúc phân cấp bộ nhớ n cấp là nhằm đạt được hiệu năng

gần bằng hiệu năng của bộ nhớ nhanh nhất (cấp 1) và giá thành trên mỗi bit nhớ gần

bằng giá thành của bộ nhớ rẻ nhất (cấp n) Một tham số xác định hiệu năng là thời

gian truy cập bộ nhớ hiệu dụng Tham số khác là hiệu suất sử dụng bộ xử lý Thời

Trang 30

gian truy cập hiệu dụng T i từ bộ xử lý tới cấp i trong phân cấp bộ nhớ bằng tổng các thời gian truy cập trung bình riêng lẻ của mỗi cấp từ k = 1 đến i:

nằm ở cấp i sẽ làm xuất hiện khối dữ liệu chứa từ được yêu cầu được truyền từ cấp

i+1 tới cấp i Khi việc truyền khối dữ liệu tới cấp 1 hoàn thành, từ yêu cầu được truy

1

( H

n

i

i ) t F ( s ) T s

( H

1

Nếu c(t i ) là giá thành trên một byte của bộ nhớ tại cấp i, được biểu diễn như một

hàm của thời gian truy cập trung bình của nó, chi phí tổng cộng của hệ thống bộ nhớ là:

i n

Trang 31

1.5 Kiến trúc của hệ xử lý song song đa CPU chuyên dụng

1.5.1 Các đặc trưng của hệ xử lý song song đa CPU chuyên dụng

Khác với hệ xử lý song song đa CPU đa dụng, hệ xử lý song song đa CPU

chuyên dụng có những đặc trưng cơ bản như sau:

a Chức năng chuyên dụng

Hệ xử lý song song chuyên dụng được thiết kế để thực hiện một nhiệm vụ xác định Thí dụ, hệ thống có nhiệm vụ thu thông tin ảnh vệ tinh viễn thám, hệ thống có nhiệm vụ thu và xử lý bài toán cấp 1 của hệ thống giám sát không lưu (chỉ

có 3 tham số độc lập là cự ly, phương vị và độ cao của đối tượng bay); hệ thống xử

lý và điều khiển tàu biển chạy tự động theo hải trình; hệ thống chặn thu tín hiệu tình báo trong kỹ thuật thám mã Như vậy nhiệm vụ được xác lập chỉ trên một lớp bài toán nào đó mà thôi Lớp bài toán này phần lớn là tuyến tính, cận tuyến tính Trong trường hợp chúng là phi tuyến thì cũng dễ dàng tuyến tính hóa từng phần hoặc tuyến tính hóa toàn phần (nếu sai số nằm trong giải cho phép)

Chức năng chuyên dụng còn được thể hiện trên cấu trúc dữ liệu mà hệ phải

xử lý Cấu trúc dữ liệu này phần lớn là dữ liệu véc tơ do có cấu trúc phần tử giống nhau và chúng xắp xếp có thứ tự (như cấu trúc: cự ly-phương vị-độ cao) cho phép

dễ dàng véc tơ hoá cơ sở dữ liệu này Hệ quả là dễ thực hiện các thao tác xử lý dữ liệu theo cơ chế đường ống - một cơ chế nâng cao hiệu năng của hệ xử lý

b Cấu trúc phần cứng tối giản

Do hệ xử lý song song chuyên dụng thực hiện một nhiệm xác định và nhiệm

vụ này được xác lập chỉ trên một lớp bài toán nên các thông số cấu trúc được xác định khá chính xác Hệ quả là khâu tổ chức phần cứng sẽ bảo đảm sự tối giản bằng các thuật toán phân hoạch chuẩn

Trang 32

Không gian nhớ mà hệ xử lý song song chuyên dụng sử dụng thông thường không chiếm hết không gian nhớ mà CPU có thể quản lý Do vậy, phần không gian còn trống đó có thể phục vụ đắc lực cho việc tổ chức hệ lưu trữ 3 chiều cho các hệ

xử lý song song đặc biệt

c Tốc độ và hiệu năng cao

Đây vừa là hệ quả của các đặc điểm về chức năng và cấu trúc phần cứng vừa

là yêu cầu của một hệ xử lý song song chuyên dụng Tốc độ phải đáp ứng yêu cầu (thí dụ cho hệ chặn thu thông tin tình báo chẳng hạn Nếu không đủ tốc độ để thu hết bản tin thì tương đương như nhiệm vụ không thực hiện) Để bảo đảm tốc độ, cần phải tổ chức hệ xử lý song song đa CPU sao cho tối ưu cả về kiến trúc và lựa chọn CPU phù hợp Tốc độ xử lý cao, tổ chức hệ thống tốt đồng nghĩa với hiệu năng của toàn hệ thống được nâng lên

d Độ tin cậy cao

Đây là một yêu cầu, đồng thời cũng là đặc điểm của hệ xử lý song song chuyên dụng Thoạt nhìn có vẻ như yêu cầu này là xung đột với yêu cầu về tốc độ cao của hệ Tuy nhiên, khác với máy tính đa dụng, hệ xử lý song song chuyên dụng phần lớn là hệ thống khó bảo trì, thậm chí không thể bảo trì (như các hệ xử lý đặt trên vệ tinh, trên các tên lửa tự dẫn, hoặc nằm trong hệ thống cảnh báo sớm đặt dưới lòng biển ) nên nó đòi hỏi độ tin cậy phải cao

Giải pháp phổ biến nâng cao độ tin cậy là sử dụng từng thành phần trong hệ dưới mức tới hạn, tức là hệ số dự trữ lớn lớn hơn 1 Thí dụ, nếu tần số clock của CPU là 3GHZ nếu sử dụng ở tần số 1,5GHZ (giảm một nửa) thì tiêu tán nhiệt sẽ giảm đi cỡ 4 lần Do vậy độ bền nhiệt sẽ tăng lên, tuổi thọ sẽ cao hơn Việc nâng tốc

độ hệ thống được thực hiện theo kiến trúc đa CPU với lượng CPU đủ để đạt tốc độ yêu cầu

Tương tự như vậy, không gian nhớ của hệ thống cũng sử dụng các chip bộ nhớ ở chế độ không tới hạn về mặt tốc độ Bù lại sẽ thực hiện các phương pháp tổ chức tối ưu bằng cách tổ chức nhiều mô đun nhớ song song cho từng kiến trúc cụ thể, đáp ứng khả năng truy cập nhanh (tương đương tốc độ CPU) và độ tin cậy cao

Trang 33

Một cách so sánh định tính, bảng 1.3 cho phép hình dung sơ bộ về hệ xử lý song song đa dụng và hệ xử lý song song đa CPU chuyên dụng

Bảng 1.3: So sánh một số tính năng của hệ xử lý song song đa CPU đa dụng và

chuyên dụng

Thông số hệ thống Hệ xử lý song song

đa dụng

Hệ xử lý song song chuyên dụng

Chương trình điều khiển Phức tạp (hệ điều hành) Đơn giản (ROM monitor) Quan hệ chương trình điều

không gian nhớ lớn

Trực tiếp và ít khi sử dụng hết không gian nhớ

Độ tin cậy hệ thống (không có

1.5.2 Kiến trúc của hệ xử lý song song đa CPU chuyên dụng

a Mô hình hệ xử lý song song đa CPU chuyên dụng

Từ những ưu điểm của hệ xử lý song song bộ nhớ dùng chung [4], với các đặc trưng của hệ xử lý song song chuyên dụng, kết hợp với cấu trúc của bộ vi xử lý chức năng kiểu RISC, cho phép lựa chọn mô hình hệ xử lý song song chuyên dụng bằng kiến trúc đa CPU được biểu diễn trên hình 1.10

Trang 34

Hình 1.10: Kiến trúc của hệ xử lý song song chuyên dụng

Cấu trúc gồm p hệ đơn CPU (với p không gian nhớ cục bộ), không gian nhớ dùng chung với l bộ nhớ Mạng kết nối bao gồm các bus địa chỉ, dữ liệu và điều khiển và các cổng vào/ra với d ngoại vi) So với mô hình kiến trúc chung của hệ xử

lý song song trên hình 1.5, rõ ràng là hệ xử lý song song chuyên dụng đơn giản hơn nhiều do ít hoặc loại bỏ hằn cơ cấu cache ra khỏi cấu trúc của mình Điều đó đã

Yếu tố quan trọng nhất ảnh hưởng tới hiệu năng của hệ xử lý song song chính

là tốc độ xử lý của CPU Vì vậy, bộ xử lý trung tâm có thể chọn loại CPU có kiến trúc RISC (thay vì kiến trúc phức tạp kiểu CISC truyền thống) vì nó có tập lệnh kiểu véc tơ và giao diện kiểu Havard nhằm mục đích mỗi chu kỳ nhịp đồng hồ có một lệnh được hoàn thành ở đầu ra [8], [28], [32], [33], [38], [50] Bộ vi xử lý kiểu RISC có các đặc điểm là:

+ Bộ vi xử lý kiểu RISC có một tập lệnh thu gọn, với kích thước từng lệnh bằng nhau Chính vì vậy CPU có thể giải mã lệnh một cách nhanh chóng do không

Bộ nhớ dùng chung

Mạng kết nối (các bus địa chỉ, dữ liệu và điều

khiển+ cổng vào/ra với ngoại vi)

Các hệ xử lý đơn CPU

Ngoại vi 1

Ngoại vi 2

Ngoại vi d

Trang 35

cần khâu xác định độ dài lệnh cần giải mã, điều mà các bộ vi xử lý CISC phải mất nhiều nhịp đồng hồ hệ thống để hoàn tất thao tác này

+ Bộ vi xử lý kiểu RISC có số lượng thanh ghi lớn (thường có 32 thanh ghi

32 bít R0– R31 và 32 thanh ghi khác cho các phép toán dấu phẩy động) Điều này cho phép thực hiện gần như toàn bộ các phép tính toán xử lý ngay bên trong CPU giúp cho tốc độ xử lý nhanh hơn rất nhiều so với tốc độ của các bộ vi xử lý đa năng kiểu CISC

+Bộ vi xử lý kiểu RISC có các bus địa chỉ riêng cho vùng nhớ chứa dữ liệu

và cho vùng nhớ chứa mã lệnh Tương tự như vậy, bộ vi xử lý này có các bus trao đổi dữ liệu riêng cho vùng nhớ chứa dữ liệu và cho vùng nhớ chứa mã lệnh Sự so

sánh các bộ vi xử lý kiểu CISC và bộ vi xử lý kiểu RISC (kiến trúc Havard) có thể

thấy được trên hình 1.11

Như vậy, lựa chọn mô hình kiến trúc Harvard là phù hợp (hình 1.11.b) Kiến trúc Harvard sử dụng hai không gian nhớ, được phân chia thành bộ nhớ dữ liệu và

bộ nhớ chương trình (bộ nhớ lệnh) Điều này, về hiệu quả là tăng gấp đôi dải thông

bộ nhớ của bộ xử lý, hơn nữa vấn đề điểu khiển luồng tham chiếu từ CPU tới bộ nhớ sẽ đơn giản [43]

Hình 1.11: Mô hình kiến trúc: a) Hệ xử lý CISC b) Hệ xử lý RISC

Với những đặc điểm của CPU kiến trúc RISC như vậy, các giải pháp truy cập

bộ nhớ có thể tổ chức dạng truy cập trực tiếp mà không cần thông qua cache Điều này lại càng làm cho cấu trúc phần cứng tối giản thêm do không mất công sức trong khâu kiểm soát và điều khiển cơ cấu bộ nhớ phân cấp rất phức tạp như đã trình bầy

a)

Bộ xử lý RISC

Bộ nhớ lệnh

Bộ nhớ

dữ liệu

Bus địa chỉ

Bus

dữ liệu

Bus địa chỉ

Bus

dữ liệu

b)

Trang 36

ở mục 1.3 Nhiều phương án thiết kế và nhiều công nghệ tiên tiến đã không ngừng được áp dụng để nâng cao tốc độ xử lý của CPU Ở mức cấu trúc, phương pháp được sử dụng rộng rãi nhất là sử dụng cơ chế đường ống để thực hiện các thao tác

cơ bản của CPU Vì vậy nếu tối ưu hóa được cấu trúc của các đường ống chức năng trong CPU thì hiệu năng của CPU sẽ được cải thiện

c Lệnh rẽ nhánh

Yếu tố ảnh hưởng nhất đến hiệu năng xử lý đường ống là các lệnh rẽ nhánh

có điều kiện, không điều kiện và vòng lặp Hình 1.12 minh họa khi một lệnh rẽ nhánh I3B được đưa vào đường ống, sẽ làm cho hệ thống phải chuyển điều khiển tới

vị trí lệnh mới trong vùng nhớ khác, làm cho tất cả các lệnh đã tìm được trước (đã ở trong đường ống) trở nên mất hiệu lực

Bảng 1.4: Thống kê khả năng xuất hiện các loại lệnh

Các lệnh tính toán, nạp lệnh,

nạp toán hạng

Các lệnh lưu trữ Các lệnh rẽ nhánh có điều kiện

Trang 37

Sự ảnh hưởng của lệnh rẽ nhánh có thể thấy thông qua mô hình đơn giản của hiệu suất bị mất (theo thống kê từ bảng 1.4):

Gọi p – khả năng xuất hiện các lệnh rẽ nhánh có điều kiện (khoảng 20%);

q – khả năng xuất hiện lệnh rẽ nhánh thỏa mãn điều kiện

n – số lượng lệnh chờ thực hiện ở đường ống

Như vậy, tích n.p.q là số lượng lệnh thỏa mãn lệnh rẽ nhánh Thời gian bổ sung để thực hiện một lệnh rẽ nhánh là (k -1)/k; với k là số tầng của đường ống

Số chu kỳ cần để n lệnh được thực hiện là: [(nk 1) n.p.q.(k 1)]/k

Khi n là rất lớn thì hiệu suất H của đường ống lệnh được đo bởi số trung bình của các lệnh được thực hiện trên mỗi chu kỳ lệnh (1 chu kỳ lệnh có k nhịp )

)1.(

.1/

)]

1.(

)1

k q p n k

n

n Lim

H

n

Ví dụ: với đường ống có k tầng, khi p =0 (không có lệnh rẽ nhánh) thì H =k Có thể xem như k lệnh được thực hiện trong mỗi chu kỳ lệnh Với k =4; p = 0,2; q = 0,6 thì

H =2,94 Nghĩa là có 2,94 lệnh được thực hiện cho mỗi chu kỳ lệnh Nói cách khác

trung bình khoảng 26,5% chu kỳ không sử dụng do lệnh rẽ nhánh [28]

1.6 Luận giải, định hướng nghiên cứu của đề tài

Qua việc phân tích, giới thiệu về hệ xử lý song song đa CPU đa năng và hệ xử lý song song đa CPU chuyên dụng mục (1.4) và (1.5), tóm lại hệ xử lý song song đa CPU chuyên dụng có những điểm nổi bật sau:

Thực hiện một chức năng, một lớp bài toán Vì vậy tổng hợp hệ tối giản về cấu trúc (đơn giản) nhưng tốc độ yêu cầu rất cao Từ đó ta thấy các hệ xử lý song song

đa CPU chuyên dụng được tổng hợp thiết kế phù hợp Hệ xử lý song song đa CPU chuyên dụng có thuộc tính là khả năng phân rã chức năng (lớp bài toán) rất tốt thành các hệ chức năng con cho từng hệ đơn CPU Trong đó phần lớn thời gian khi thực hiện chức năng hệ xử lý song song đa CPU chuyên dụng là xẩy ra ở các hệ đơn CPU, còn thời gian để trao đổi thông tin giữa chúng cũng như thời gian sử dụng tài nguyên chung là rất ít (5%) trong đó có không gian nhớ dùng chung (KGNDC) Đối với hệ xử lý song song đa CPU chuyên dụng, hiệu năng phụ thuộc chủ yếu vào tốc độ truy cập vào các tài nguyên chung, nhưng quan trọng nhất là KGNDC vì

Trang 38

ở đây khả năng xung đột là cao nhất (vì tần suất sử dụng KGNDC cao hơn nhiều so với các tài nguyên khác như I/O port, thiết bị ngoại vi…) Một trong những nhiệm

vụ của khâu tổng hợp hệ thống là giảm thiểu khả năng xung đột khi tham chiếu vào KGNDC của các đơn CPU là một nhiệm vụ quan trọng

Bài toán ví dụ: Bài toán xử lý thông tin tình báo radar cấp 1 cho các hệ thống

radar điều khiển hỏa lực Yêu cầu đối với loại radar này khả năng giám sát nhiều mục tiêu trong thời gian thực

Radar trong tổ hợp tên lửa S300, S400, S500

Tổ hợp tên lửa S-300 cũng có khả năng tiêu diệt các mục tiêu máy bay tàng hình, và được coi là một trong những hệ thống tên lửa phòng không rất mạnh với nhiều thông số vượt trội hơn hệ thống đối thủ của Mỹ là MIM-104 Patriot Radar của nó có khả năng đồng thời theo dõi đến 100 mục tiêu và bám sát chặt 12 trong số

đó Ở các phiên bản S-300PMU1/2 trở về sau, khả năng của Radar được tăng cường, có thể theo dõi đến 300 mục tiêu và bám sát chặt 72 trong số đó Radar tổ hợp tên lửa S-400 có thể theo dõi 100 mục tiêu ở phạm vi 400 – 600 km và khóa 36 mục tiêu Tổ hợp tên lửa S-500 được sử dụng để đánh chặn tên lửa đạn đạo có tầm bắn xa gần 3.500 km ở cự ly tầm trung và tầm gần Ngoài ra, S-500 còn có thể đồng thời bắn vào 10 mục tiêu khác nhau hoạt động ở tốc độ siêu thanh trong bán kính gần 600 km Tên lửa S-300PMU1 đang là loại vũ khí tối tân kiểm soát bầu trời Việt Nam Đài Radar giám sát mục tiêu và điều khiển tên lửa đa kênh - đa chức năng, sử dụng hệ thống ăngten mạng pha xung dopler hiện đại có khả năng phát hiện được các loại mục tiêu “tàng hình” (diện tích phản xạ hiệu dụng tới 0,02m2), khả năng chống nhiễu tốt với tất cả các dạng nhiễu tiêu cực và nhiễu tích cực Màn hình hiển

thị tham số về tốc độ di chuyển, hướng đi của mục tiêu; về tình trạng sẵn sàng bắn

hỏa lực của hệ thống vũ khí khí tài,

Cùng một lúc, S-300PMU1 có khả năng bám sát và tiêu diệt sáu mục tiêu, điều khiển đến 12 tên lửa và quản lý tới 100 mục tiêu S-300PMU1 có khả năng bắn

hạ mục tiêu ở độ cao lên đến 27.000m và thậm chí ở độ cao chỉ 10m Ngay cả những mục tiêu vận tốc lên đến 10.000km/giờ cũng dễ dàng bị hỏa lực của S-300MPU1 tiêu diệt

Trang 39

Tên lửa S-300: Cự ly phát hiện là 300 km, diệt mục tiêu cự ly gần là 5 km, cự ly

xa là 150 km, độ cao 27.000 m và thấp nhất là 10m, tốc độ 10.000km/h

Trong ba bài toán xử lý thông tin tình báo radar: (i) bài toán cự ly, phương vị; (ii)

vẽ quỹ đạo mục tiêu; (iii) hợp nhất quỹ đạo Bài toán số một đóng vai trò quan trọng nhất vì yêu cầu xử lý tốc độ cao

Các phương tiện bay: (i) ở các cự ly khác nhau (ii) tốc độ cũng rất khác nhau Các thông số cần giám sát cho một đối tương bay: (i) cự ly (ii) phương vị và (iii) độ cao, khi kiểm soát được các thông số này thì mới có thể vẽ được quỹ đạo bay Từ đó mới

có thể đưa ra các quyết định khác (tiêu diệt, không tiêu diệt…)

Hình 1.13: Tổ hợp tên lửa S-300 PMU1 của Việt nam

Trang 40

Sơ đồ mô tả chức năng hệ:

Cho hệ quan sát mục tiêu bằng phương pháp bức xạ xung kích phát trên anten quay vòng tần số 375 Hz Tín hiệu thu về là các xung phản xạ từ mục tiêu Trong chu kỳ lặp lại của xung kích phát được chia thành 1024 khoảng thời gian bằng nhau tương ứng với số lượng vành khăn cự ly (hình 1.13) Cự ly cực đại ứng với vành khăn N1024 là 307200 m Khi cánh sóng anten quét qua mục tiêu có thể thu được vài chục xung phản xạ Nếu trong 5 lần thu mà có từ 3 xung phản xạ thì khẳng định mục tiêu đã xuất hiện Tiếp theo nếu trong 5 lần thu mà có từ 3 lần trở nên không có xung phản xạ thì khẳng định cánh sóng đã đi qua mục tiêu Mỗi lần phát hiện được mục tiêu phải cung cấp cho trung tâm xử lý về cự ly và phương vị trung bình của mục tiêu, đĩa đo phương vị (cho 360 độ) phải chia thành 4096 phần bằng nhau Như vậy 3 thông số cự ly, phương vị và độ cao được tổng hợp tính toán xử lý song song đồng thời Như vậy hệ thống có từ hai hệ đơn CPU trở nên: phát động

t

t

Vành khăn cự ly ngoài cùng N1024

Vành khăn cự ly N1023

Vành khăn cự ly

N1

Xung kích phát tần số

375 Hz

Xung phản xạ

từ mục tiêu trên các cự ly khác nhau

Chu kỳ lặp lại của xung

U

Hình 1.14: Cự ly quan sát của hệ

Ngày đăng: 02/04/2014, 14:42

HÌNH ẢNH LIÊN QUAN

Hình 1.9: Cấu trúc của bộ nhớ phân cấp trong các hệ xử lý [24] - Nghiên cứu thuật toán điều khiển thích nghi luồng tham chiếu để nâng cao tốc độ cho các hệ xử lý song song chuyên dụng
Hình 1.9 Cấu trúc của bộ nhớ phân cấp trong các hệ xử lý [24] (Trang 29)
Hình 1.10: Kiến trúc của hệ xử lý song song chuyên dụng - Nghiên cứu thuật toán điều khiển thích nghi luồng tham chiếu để nâng cao tốc độ cho các hệ xử lý song song chuyên dụng
Hình 1.10 Kiến trúc của hệ xử lý song song chuyên dụng (Trang 34)
Hình 1.13: Tổ hợp tên lửa S-300 PMU1 của Việt nam - Nghiên cứu thuật toán điều khiển thích nghi luồng tham chiếu để nâng cao tốc độ cho các hệ xử lý song song chuyên dụng
Hình 1.13 Tổ hợp tên lửa S-300 PMU1 của Việt nam (Trang 39)
Sơ đồ mô tả chức năng hệ: - Nghiên cứu thuật toán điều khiển thích nghi luồng tham chiếu để nâng cao tốc độ cho các hệ xử lý song song chuyên dụng
Sơ đồ m ô tả chức năng hệ: (Trang 40)
Hình 2.3: Tổ chức băng băng nhớ đan xen cho KGNDC trong hệ xử lý song song - Nghiên cứu thuật toán điều khiển thích nghi luồng tham chiếu để nâng cao tốc độ cho các hệ xử lý song song chuyên dụng
Hình 2.3 Tổ chức băng băng nhớ đan xen cho KGNDC trong hệ xử lý song song (Trang 51)
Hình 3.1: Giao diện phần mềm tính toán hiệu năng hệ xử lý song song đa CPU - Nghiên cứu thuật toán điều khiển thích nghi luồng tham chiếu để nâng cao tốc độ cho các hệ xử lý song song chuyên dụng
Hình 3.1 Giao diện phần mềm tính toán hiệu năng hệ xử lý song song đa CPU (Trang 67)
Hình 3.2: Giao diện phần mềm tính toán hiệu năng hệ xử lý song song đa CPU - Nghiên cứu thuật toán điều khiển thích nghi luồng tham chiếu để nâng cao tốc độ cho các hệ xử lý song song chuyên dụng
Hình 3.2 Giao diện phần mềm tính toán hiệu năng hệ xử lý song song đa CPU (Trang 69)
Hình 3.3: Giao diện phần mềm tính toán hiệu năng hệ xử lý song song đa CPU - Nghiên cứu thuật toán điều khiển thích nghi luồng tham chiếu để nâng cao tốc độ cho các hệ xử lý song song chuyên dụng
Hình 3.3 Giao diện phần mềm tính toán hiệu năng hệ xử lý song song đa CPU (Trang 71)
Hình 3.4: Giao diện phần mềm tính toán hiệu năng hệ xử lý song song đa CPU - Nghiên cứu thuật toán điều khiển thích nghi luồng tham chiếu để nâng cao tốc độ cho các hệ xử lý song song chuyên dụng
Hình 3.4 Giao diện phần mềm tính toán hiệu năng hệ xử lý song song đa CPU (Trang 73)
Hình 3.6: Sự phụ thuộc của E theo chu kỳ vật lý của mô đun nhớ Tc khi m thay đổi - Nghiên cứu thuật toán điều khiển thích nghi luồng tham chiếu để nâng cao tốc độ cho các hệ xử lý song song chuyên dụng
Hình 3.6 Sự phụ thuộc của E theo chu kỳ vật lý của mô đun nhớ Tc khi m thay đổi (Trang 76)
Hình 3.9: Sơ đồ khối hệ thống điều khiển thích nghi cơ bản - Nghiên cứu thuật toán điều khiển thích nghi luồng tham chiếu để nâng cao tốc độ cho các hệ xử lý song song chuyên dụng
Hình 3.9 Sơ đồ khối hệ thống điều khiển thích nghi cơ bản (Trang 79)
Hình 3.10: Sơ đồ khối điều khiển thích nghi  cho hệ xử lý song song đa CPU - Nghiên cứu thuật toán điều khiển thích nghi luồng tham chiếu để nâng cao tốc độ cho các hệ xử lý song song chuyên dụng
Hình 3.10 Sơ đồ khối điều khiển thích nghi cho hệ xử lý song song đa CPU (Trang 80)
Hình 3.12:  Mô tả mô hình của một FPGA. - Nghiên cứu thuật toán điều khiển thích nghi luồng tham chiếu để nâng cao tốc độ cho các hệ xử lý song song chuyên dụng
Hình 3.12 Mô tả mô hình của một FPGA (Trang 83)
Hình 3.13: Cấu trúc Logic Cell trong FPGA - Nghiên cứu thuật toán điều khiển thích nghi luồng tham chiếu để nâng cao tốc độ cho các hệ xử lý song song chuyên dụng
Hình 3.13 Cấu trúc Logic Cell trong FPGA (Trang 84)
Hình 3.16. Mô hình điều khiển kích thước hàng đợi m - Nghiên cứu thuật toán điều khiển thích nghi luồng tham chiếu để nâng cao tốc độ cho các hệ xử lý song song chuyên dụng
Hình 3.16. Mô hình điều khiển kích thước hàng đợi m (Trang 94)

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w