Kiến trúc máy tính là bộ môn trong nhiều ngành về phần cứng, slide bài giảng của Gv Nguyễn Thanh Đăng hy vọng sẽ giúp bạn đọc hiểu rõ về môn Học kiến trúc máy tính, cũng như giúp các bạn sinh viên có tài liệu tham khảo từ đại học Công nghiệp thành phố Hồ Chí Minh
BỘ CÔNG THƯƠNG TRƯỜNG ĐẠI HỌC CÔNG NGHIỆP TPHCM KHOA CÔNG NGHỆ ĐIỆN TỬ KIẾN TRÚC TẬP LỆNH Gv: Ths Nguyễn Thanh Đăng MỤC LỤC 2.1 - Giới Thiệu 2.2 - Kiến Trúc CISC RISC 2.3 - Các thành phần máy tính 2.4 - Kiến Trúc tập lệnh MIPS 2.5 - Gọi thủ tục hàm 2.6 - Định dạng lệnh MIPS cách mã hóa địa 2.7 - Kết chương Câu hỏi: 1.Những đặc điểm bật khiến cho Kỹ Sư máy tính chuyển hướng sang tiếp cập kiến trúc RISC Họ tập trung vào khai thác ưu điểm kiến trúc RISC đưa vào CISC Trình bày cấu trúc máy tính So sánh toán hạng ghi & toán hạng nhớ? So sánh “lệnh đọc liệu” với “lệnh lưu liệu Hãy phân biệt định dạng R, I, J thông qua lệnh mà chúng hướng tới 2.1 Giới Thiệu: Ngơn ngữ gì? Ngơn ngữ hệ thống giao tiếp bao gồm âm thanh, từ ngữ ngữ pháp sử dụng người đất nước cụ thể loại công việc Lệnh tập lệnh ngôn ngữ máy tính Mục tiêu MIPS (Microprocessor without Interlocked Pipeline Stages) dạng hợp ngữ ngôn ngữ máy o Lịch sử MIPS: Đại học Standford (1981) MIPS Technologies o Ứng dụng MIPS: hệ thống nhúng, tảng cho kiến trúc tập lênh sau o Phương pháp kiến trúc MIPS: phương pháp ánh xạ quản lý địa 2.2 Kiến trúc CISC RISC A Ngơn ngữ lập trình o Nhiều, mạnh, phức tạp phát triển ứng dụng (chính xác cho ứng dụng, chi tiết hóa mục đích) o Hạn chế: khoảng cách ngữ nghĩa NNLT & tác vụ cung cấp kiến trúc máy tính Giải quyết: xây dựng kiến trúc máy tính hỗ trợ lớn loại lệnh phức tạp với nhiều phương pháp tính tốn địa khác Mục tiêu Làm giảm độ phức tạp trình biên dịch Cải tiến thời gian thực thi Hồn thành tác vụ với số lượng lệnh hợp ngữ 2.2 Kiến trúc CISC RISC B Kiến trúc CISC (Complex Instruction Set Computer) Đặc điểm: - 120 – 350 lệnh - Số lượng thi (8 -24 ghi) - Tham khảo nhớ thông qua nhiều phương pháp tính tốn địa khác (12 – 24) - CPI trung bình khoảng từ - 15 KHÔNG ĐẠT HIỆU QUẢ SỬ DỤNG PHẦN CỨNG CAO 2.2 Kiến trúc CISC RISC C Kiến trúc RISC (Reduced Instruction Set Computer) Đặc điểm: - Ít 100 lệnh, kích thước cố định (32 bit) - Số lượng ghi GPRs nhiều (32 – 192) - Phương pháp định địa (3 – 5) - CPI trung bình < 1.5, chu kỳ xung nhịp cho hầu hết lệnh HIỆU SUẤT ĐẠT ĐƯỢC SẼ CAO kiến trúc CISC ưu điểm kiến trúc RISC Gia tăng số lượng ghi Kỹ thuật xử lý ống Câu hỏi * Những đặc điểm bật khiến cho Kỹ Sư máy tính chuyển hướng sang tiếp cập kiến trúc RISC? * Họ tập trung vào khai thác ưu điểm kiến trúc RISC đưa vào CISC? Gọi thủ tục hàm: Truyền giá trị tham số vào vị trí mà thủ tục truy xuất Chuyển quyền điều khiển chương trình gọi Ghi kết thủ tục vào vị trí mà chương trình gọi thủ tục truy xuất http://dichvudanhvanban.com Chuyển quyền điều khiển cho thủ tục Nhận tài nguyên lưu trữ cấp phát cho thủ tục Thực lệnh thủ tục Lưu trữ ghi sử dụng thủ tục Thủ tục cần sử dụng nhiều ghi ghi dành riêng Thủ tục cần lưu ghi chứa giá trị cần sử dụng sau thủ tục kết thúc Khi lưu giá trị ghi vào stack cần giảm địa ghi $sp từ nhớ (4 byte) Ngược lại lấy giá trị ghi khỏi stack cần tăng địa ghi $sp lên từ nhớ http://dichvudanhvanban.com Các ghi đa dụng sử dụng thủ tục phải đảm bảo giá trị chúng trước sau hoàn tất thủ tục phải giống Các ghi lưu trữ nhớ gọi “chồng” MIPS sử dụng ghi chuyên biệt ($sp) để lưu trữ địa phần tử đỉnh stack nhớ Thủ tục lồng nhau: Thủ tục khơng gọi thêm thủ tục khác trình thực gọi thủ tục “lá” Không phải thủ tục thủ tục “lá” thủ tục gọi thủ tục khác hay Các thủ tục dạng gọi thủ tục lồng - Vấn đề 1: MIPS sử dụng ghi $ra để lưu trữ địa trả chương trình gọi Mà thủ tục gọi lại gọi thủ tục khác Lúc ghi cập nhật lại lần gọi Nếu giá trị cũ không giữ lại khơng thể quay chương trình gọi Vì thủ tục gọi từ chương trình cần phải lưu trữ ghi $ra vào stack - Vấn đề 2: Lưu trữ ghi sử dụng sau thủ tục gọi kết thúc Các ghi cần lưu trữ theo nguyên tắc sau thực việc gọi thủ tục lồng http://dichvudanhvanban.com Câu hỏi So sánh “lệnh đọc liệu” với “lệnh lưu liệu: http://dichvudanhvanban.com 2.6 ĐỊNH DẠNG LỆNH MIPS VÀ CÁCH MÃ HÓA ĐỊA CHỈ 2.6.1.Định dạng lệnh MIPs 2.6.2 Mã hóa địa nhóm lệnh rẽ nhánh ●Máy tính, vi xử lý hiểu lệnh máy – 100100101101 ●Hợp ngữ ($s0) Mã Hóa ●Mã máy 01101010 Tốn hạng ghi $s0-$s7 Toán hạng nhớ ($s0) Toán hạng số nguyên -210 = 111111102 2.6.1.Định dạng lệnh MIPs Định dạng R (Register) Chỉ mã hóa lệnh có tốn hạng ghi opcode rs rt rd shamt funct 6bit 5bit 5bit 5bit 5bit 6bit 32 add Ví dụ 17 18 $t0 , $s1, $s2 opcode rs rt rd shamt funct 17 18 32 00000 10001 10010 01000 00000 10000 Bảng 2.2/48 Định dạng I (Immediate) Mã hóa lệnh có tốn hạng số ngun hay có tham gia số nguyên opcode rs rt rd 6bit 5bit 5bit 16bit 35 lw Ví dụ 19 $t0 , 32 ($s3) opcode rs rt rd 35 19 32 100011 10011 01000 0000000000100000 Định dạng J (Jump) Mã hóa hai lệnh rẽ nhanh j jal opcode 6bit address 26bit Câu hỏi Hãy phân biệt định dạng R,I,J thông qua lệnh mà chúng hướng tới 2.7 Kết chương Tập lệnh MIPS: nhóm lệnh số học luận lý nhóm lệnh chuyển liệu nhóm lệnh hộ trợ tra định Khi mã hóa xuống thành lệnh máy : 32bit phân thành định dạng R, I, J ᴥ R: mã hóa lệnh dùng ghi làm toán hạng với hai lệnh dịch trái, phải ᴥ I: mã hóa lệnh có số nguyên tốn hạng ᴥ J: mã hóa lệnh j jal Các lệnh rẽ nhánh: mã hóa lệnh, ghi tốn hạng tính tốn địa ... 2. 3 Các thành phần máy tính 2. 3 .2 Bộ nhớ Bộ nhớ kiến trúc MIPS Câu hỏi Trình bày cấu trúc máy tính 2. 4 Kiến trúc tập lệnh MIPS Nội dung 2. 4.1 Giới thiệu 2. 4 .2 Nguyên lý thiết kế tập lệnh 2. 4.3... MIPS 2. 4.4 Nhóm lệnh số học luận lý 2. 4.5 Nhóm lệnh di chuyển liệu 2. 4.6 Nhóm lệnh hỗ trợ định Kiến trúc tập lệnh MIPS 2. 4.1 Giới thiệu • MIPS kiến trúc tập lệnh theo dạng RISC • Kiến trúc tập lệnh. ..MỤC LỤC 2. 1 - Giới Thiệu 2. 2 - Kiến Trúc CISC RISC 2. 3 - Các thành phần máy tính 2. 4 - Kiến Trúc tập lệnh MIPS 2. 5 - Gọi thủ tục hàm 2. 6 - Định dạng lệnh MIPS cách mã hóa địa 2. 7 - Kết chương