Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 59 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
59
Dung lượng
1,37 MB
Nội dung
KIẾN TRÚC MÁY TÍNH KIẾN TRÚC MÁY TÍNH Tài liệu tham khảo David A Patterson, John L Hennessy Computer Organization and Design, Revised 4th edition, 2012 William Stallings, Computer Organization and Architecture, 9th edition, 2013 Nguyễn Kim Khánh, Bài giảng kiến trúc máy tính, Viện Cơng nghệ Thông tin Truyền thông, Trường Đại học Bách khoa Hà Nội, Version: CA-2017 Trường Đại học Công nghệ thơng tin (UIT), Kiến trúc máy tính, Slide giảng Kiến trúc lệnh, 2017 Chương Tổ chức xử lý trung tâm 3.2 Tập lệnh ❖ Mỗi xử lý có tập lệnh xác định ❖ Tập lệnh thường có hàng chục đến hàng trăm lệnh ❖ Mỗi lệnh chuỗi số nhị phân mà xử lý hiểu để thực thao tác xác định ❖ Các lệnh mô tả ký hiệu gợi nhớ → lệnh hợp ngữ Chương Tổ chức xử lý trung tâm 3.2 Tập lệnh ❖ Các thành phần lệnh máy: ➢ Mã thao tác (operation code Æ opcode): mã hóa cho thao tác mà xử lý phải thực ➢ Địa toán hạng: nơi chứa toán hạng mà thao tác tác động ✓ Toán hạng nguồn: liệu vào thao tác ✓ Tốn hạng đích: liệu thao tác Mã thao tác Địa toán hạng Chương Tổ chức xử lý trung tâm 3.2 Tập lệnh ❖ Số lượng địa toán hạng lệnh: ➢ Ba địa toán hạng: ✓ tốn hạng nguồn, tốn hạng đích ✓ c=a+b ✓ Từ lệnh dài phải mã hố địa cho ba toán hạng ✓ Được sử dụ.g xử lý tiên tiến Chương Tổ chức xử lý trung tâm 3.2 Tập lệnh ❖ Số lượng địa toán hạng lệnh: ➢ Hai địa toán hạng: ✓ Một toán hạng vừa toán hạng nguồn vừa tốn hạng đích; tốn hạng cịn lại toán hạng nguồn ✓ a = a + b ✓ Giá trị cũ toán hạng nguồn bị phải chứa kết ✓ Rút gọn độ dài từ lệnh ✓ Phổ biến Chương Tổ chức xử lý trung tâm 3.2 Tập lệnh ❖ Số lượng địa toán hạng lệnh: ➢ Một địa toán hạng: ✓ Một toán hạng lệnh ✓ Một toán hạng ngầm định → thường ghi (thanh chứa – accumulator) ✓ Được sử dụng máy hệ trước Chương Tổ chức xử lý trung tâm 3.2 Tập lệnh ❖ Số lượng địa toán hạng lệnh: ➢ địa toán hạng: ✓ Các toán hạng ngầm định ✓ Sử dụng Stack ✓ Ví dụ: push a push b add pop c có nghĩa : c = a+b ✓ Không thông dụng Chương Tổ chức xử lý trung tâm 3.2 Tập lệnh ❖ Đánh giá số lượng địa toán hạng lệnh: ➢ Nhiều địa toán hạng: ✓ Các lệnh phức tạp ✓ Cần nhiều ghi ✓ Chương trình có lệnh ✓ Nhận lệnh thực lệnh chậm ➢ Ít địa tốn hạng: ✓ Các lệnh đơn giản ✓ Cần ghi ✓ Chương trình có nhiều lệnh ✓ Nhận lệnh thực lệnh nhanh Chương Tổ chức xử lý trung tâm 3.2 Tập lệnh ❖ Các lệnh chuyển liệu: ➢ MOVE Copy liệu từ nguồn đến đích ➢ LOAD Nạp liệu từ nhớ đến xử lý ➢ STORE Cất liệu từ xử lý đến nhớ ➢ EXCHANGE Trao đổi nội dung nguồn đích ➢ CLEAR Chuyển bit vào tốn hạng đích ➢ SET Chuyển bit vào tốn hạng đích ➢ PUSH Cất nội dung toán hạng nguồn vào ngăn xếp ➢ POP Lấy nội dung đỉnh ngăn xếp đưa đến tốn hạng đích 10 Chương Tổ chức xử lý trung tâm 3.2 Tập lệnh: Kiến trúc MIPS ❖ Các lệnh logic: ➢ Bài tập: ✓ Giả sử ghi $s1 chứa giá trị: 0x721F Cho biết giá trị ghi $s2, $s3 $s4 sau thực lệnh sau: a) andi $s2, $s1, 0x12FE b) ori $s2, $s1, 0xA41F c) xori $s2, s1, 0x79CD 45 Chương Tổ chức xử lý trung tâm 3.2 Tập lệnh: Kiến trúc MIPS ❖ Cấu trúc điều khiển: ➢ Các cấu trúc rẽ nhánh ✓ if ✓ if/else ✓ switch/case ➢ Các cấu trúc lặp ✓ for ✓ while ✓ while 46 Chương Tổ chức xử lý trung tâm 3.2 Tập lệnh: Kiến trúc MIPS ❖ Các lệnh rẽ nhánh: beq, bne ➢ Rẽ nhánh đến lệnh đánh nhãn điều kiện đúng, ngược lại, thực ✓ beq rs, rt, L1 (branch on equal): (rs == rt) rẽ nhánh đến lệnh nhãn L1 ✓ bne rs, rt, L1 (branch on not equal): (rs != rt) rẽ nhánh đến lệnh nhãn L1 ➢ Lệnh nhảy j: ✓ j L1 (jump): nhảy không điều kiện đến lệnh nhãn L1 47 Chương Tổ chức xử lý trung tâm 3.2 Tập lệnh: Kiến trúc MIPS ❖ Các lệnh rẽ nhánh: beq, bne ➢ Ví dụ 1: Chuyển đổi đoạn chương trình C sau sang hợp ngữ MIPS 48 Chương Tổ chức xử lý trung tâm 3.2 Tập lệnh: Kiến trúc MIPS ❖ Các lệnh rẽ nhánh: beq, bne ➢ Ví dụ 2: Chuyển đổi đoạn chương trình C sau sang hợp ngữ MIPS 49 Chương Tổ chức xử lý trung tâm 3.2 Tập lệnh: Kiến trúc MIPS ❖ Lệnh dịch bit logic 50 Chương Tổ chức xử lý trung tâm 3.2 Tập lệnh: Kiến trúc MIPS ❖ Lệnh dịch bit logic - ví dụ lệnh dịch trái: 51 Chương Tổ chức xử lý trung tâm 3.2 Tập lệnh: Kiến trúc MIPS ❖ Lệnh dịch bit logic - ví dụ lệnh dịch phải: 52 Chương Tổ chức xử lý trung tâm 3.2 Tập lệnh: Kiến trúc MIPS ❖ Lệnh vòng lặp: 53 Chương Tổ chức xử lý trung tâm 3.3 Các xử lý RISC, vi xử lý Intel Intel® Processors for PC, Laptops, Servers, and AI (1) Intel® Core™ vPro™ Processors family Processors for IOT and Embedded Applications Intel® Movidius™ Vision Processing Units Intel Atom® Processor Intel® Intel® Intel® Intel® Celeron® Processor Pentium® Processor Core™ Processors Xeon® Processors (1) https://www.intel.com/content/www/us/en/products/details/processors.html, access date: 10/2021 Intel® Xeon® Scalable Processors 54 Chương Tổ chức xử lý trung tâm 3.3 Các xử lý RISC, vi xử lý Intel ❖ Kiến trúc xử lý tiên tiến ➢ Các kiến trúc máy tính song song: ✓ Nhu cầu giải toán lớn ngày nhiều, cần máy tính cực mạnh có khả xử lý tốc độ cao ✓ Kiến trúc máy tính (Von-Neumann) tiến đến giới hạn tốc độ, xử lý khó nâng cao khả xử lý ✓ Các kiến trúc máy tính song song giúp tăng hiệu suất tính tốn cho máy tính: • Kiến trúc song song mức lệnh IPL (Instruction-level parallelism): Tăng số lượng lệnh thi hành đơn vị thời gian • Kiến trúc song song mức xử lý (Machine parallelism): Tăng số lượng đơn vị xử lý phần cứng ✓ Cần kết hợp kiến trúc song song để tạo máy tính có hiệu suất cao 55 Chương Tổ chức xử lý trung tâm 3.3 Các xử lý RISC, vi xử lý Intel ❖ Kiến trúc xử lý tiên tiến ➢ Kiến trúc song song mức lệnh: ✓ Siêu đường ống (Superpipeline): • Chia thao tác chu trình lệnh n bước nhỏ → ống lệnh dài • Cần 1/n chu kỳ máy cho thao tác ✓ Siêu hướng (Superscalar) • Sử dụng nhiều ống lệnh → CPU gồm nhiều đơn vị chức năng, cho phép thi hành nhiều lệnh đồng thời • Mỗi chu kỳ máy thực nhiều lệnh ✓ VLIW (Very Long Instruction Word) • Ghép nhiều lệnh đơn vào từ máy để thực đồng thời • Ví dụ: CPU Itanium họ IA-64 Intel cho phép ghép lệnh/từ máy gọi bundle gồm 128 bit 56 Chương Tổ chức xử lý trung tâm 3.3 Các xử lý RISC, vi xử lý Intel ❖ Kiến trúc xử lý tiên tiến ➢ Kiến trúc song song mức lệnh: ✓ Superpipeline: ✓ Superscalar: 57 Chương Tổ chức xử lý trung tâm 3.3 Các xử lý RISC, vi xử lý Intel ❖ Kiến trúc xử lý tiên tiến ➢ Kiến trúc song song mức xử lý: ✓ Tích hợp nhiều xử lý đồng thời để tăng khả thi hành chương trình ✓ Các xu hướng phát triển: • Đa chương (multi-programming) • Đa luồng (multi-threading) • Đa nhân (multi-core) • Đa xử lý (multi-processing) • Đa máy tính (multi-computer) 58 Chương Tổ chức xử lý trung tâm 3.3 Các xử lý RISC, vi xử lý Intel ❖ 12th Generation Intel® Core™ i9 Processors [2] ❖ 12th Generation Intel® Core™ i7 Processors [2] [2] https://www.intel.com/content/www/us/en/products/details/processors.html, access date: 11/2021 59