Bài giảng Kiến trúc máy tính: Chương 2 - Tạ Kim Huệ
Số trang: 65
Loại file: pptx
Dung lượng: 2.99 MB
Lượt xem: 18
Lượt tải: 0
Xem trước 7 trang đầu tiên của tài liệu này:
Thông tin tài liệu:
Bài giảng Kiến trúc máy tính - Chương 2: Kiến trúc tập lệnh cung cấp cho người học các kiến thức về tập lệnh MIPS, biên dịch mã máy. Đây là một tài liệu hữu ích dành cho các bạn sinh viên ngành Công nghệ thông tin và những ai quan tâm dùng làm tài liệu học tập và nghiên cứu.
Nội dung trích xuất từ tài liệu:
Bài giảng Kiến trúc máy tính: Chương 2 - Tạ Kim Huệ Kiến trúc máy tính Computer architecture To improve is to change; to be perfect is to change often. Winston Churchill Chương 2: Kiến trúc tập lệnh 1. Tập lệnh MIPS 2. Biên dịch mã máy Kiến trúc tập lệnh software instruction set hardware • Multiple Implementations: 8086 Pentium 4 Chu kỳ thực thi Instruction Fetch lệnh cơ bản Obtain instruction from program storage Instruction Determine required actions and instruction size Decode Operand Locate and obtain operand data Fetch Execute Compute result value or status Result Deposit results in register or storage for later use Store Next Determine successor instruction Instruction Thực thi chương trình Bộ xử lý thực thi chương trình như thế nào? 1. Tải lệnh 2. Tìm ra toán tử được sử dụng 3. Tìm ra dữ liệu nào được sử dụng 4. Thực hiện tính toán 5. Tìm lệnh tiếp theo Lặp lại quá trình … Bài giảng nhấn mạnh sự thực thi trong bộ xử lý MIPS Thực thi lệnh Today we’re going to learn the details! Thực thi lệnh Computer Programmer's View Program ADD 01010 (Instructions) SUBTRACT 01110 AND 10011 CPU OR 10001 Memory COMPARE 11010 . . . . I/O . . Computer's View Kiến trúc Princeton (Von Neumann) Kiến trúc Harvard --- Data and Instructions mixed in same --- Data & Instructions in unified memory separate memories --- Program as data --- Has advantages in certain high performance --- Storage utilization implementations --- Single memory interface --- Can optimize each memory Các kiểu toán hạng cơ bản Declining cost of registers So sánh số lượng toán hạng Thực thi phép toán (C = A + B) v ới các kiểu toán hạng khác nhau Register Register Stack Accumulator (registermemory) (loadstore) Push A Load A Load R1,A Load R1,A Push B Add B Add R1,B Load R2,B Add Store C Store C, R1 Add R3,R1,R2 Pop C Store C,R3 1 Cycles Seconds ExecutionT ime Instructio ns Performance Instructio n Cycle So sánh số lượng các chỉ thị Kích thước toán hạng 0% Doubleword (Operand) 69% 74% Word Int Avg. 31% 19% FP Avg. Halfword 0% 7% Byte 0% 0% 20% 40% 60% 80% Frequency of reference by size Tập thanh ghi trong MIPS Câu hỏi: Tại sao giá trị thanh ghi R0 luôn bằng 0? 32 Thanh ghi đa dụng. – R0…R31 or $0…$31 Trả lời: Luôn cần – Các biến phải lưu trên thanh ghi. giá trị 0 trong một chương trình Một số trường hợp đặc biệt. Move: – R0 luôn có giá trị zero (0) add dest, src, R0 – R29 là thanh ghi con trỏ ngăn xếp – R31 được sử dụng cho thủ tục quay lại địa chỉ Một số thanh ghi đặc biệt. – PC (Program Counter): Thanh ghi lệnh hiện tại – HI & LO kết quả của phép nhân – Thanh ghi dấu phẩy động – Một số thanh ghi điều khiển (kiểm soát lỗi hoặc trạng thái) Tổ chức bộ nhớ Bộ nhớ là một mảng 1 chiều lưu trữ dữ liệu • Mỗi ô nhớ có kích thước 1 byte (8 bits) • Địa chỉ ô nhớ được xác định theo địa chỉ byte. Địa chỉ bộ nhớ được đánh chỉ số trên mảng • Máy tính 32 bits, có 232 ô nhớ (4GB) • Máy tính 64‐bit, có 264 ô nhớ (16ExaByte) Ví dụ: – 64-bit x86 lên tới ~48‐bits một ô nhớ (4PetaByte). Tổ chức bộ nhớ Các kiểu dữ liệu trong MIPS được định nghĩa là 1-byte hoặc 1-word – Một từ gồm 32 bits = 4 bytes – 232 bytes = 230 words: addresses 0, 4, 8, … Câu hỏi: địa chỉ của một từ được xác định như thế nào ? Địa chỉ Alignment : Tạo trên 4 byte (word) ở đường biên (e.g., 0, 4, 8, 12…) – Dữ liệu được lưu trữ ở địa chỉ byte chia hết cho kích thước Ánh xạ địa chỉ theo byte: 7 0 (xx00 Endianess 1019 Big Endian: address of most significant byte = word address 1018 = Big End of word) 1017 1016 IBM 360/370, Motorola 68k, MIPS, Sparc, HP PA 1015 1014 1013 1012 Big Endian 1011 1010 31 24 23 16 15 8 7 0 1009 1008 1007 1006 Little Endian 1005 1004 1003 1002 1001 1000 Little Endian: address of least significant byte = word address ...
Nội dung trích xuất từ tài liệu:
Bài giảng Kiến trúc máy tính: Chương 2 - Tạ Kim Huệ Kiến trúc máy tính Computer architecture To improve is to change; to be perfect is to change often. Winston Churchill Chương 2: Kiến trúc tập lệnh 1. Tập lệnh MIPS 2. Biên dịch mã máy Kiến trúc tập lệnh software instruction set hardware • Multiple Implementations: 8086 Pentium 4 Chu kỳ thực thi Instruction Fetch lệnh cơ bản Obtain instruction from program storage Instruction Determine required actions and instruction size Decode Operand Locate and obtain operand data Fetch Execute Compute result value or status Result Deposit results in register or storage for later use Store Next Determine successor instruction Instruction Thực thi chương trình Bộ xử lý thực thi chương trình như thế nào? 1. Tải lệnh 2. Tìm ra toán tử được sử dụng 3. Tìm ra dữ liệu nào được sử dụng 4. Thực hiện tính toán 5. Tìm lệnh tiếp theo Lặp lại quá trình … Bài giảng nhấn mạnh sự thực thi trong bộ xử lý MIPS Thực thi lệnh Today we’re going to learn the details! Thực thi lệnh Computer Programmer's View Program ADD 01010 (Instructions) SUBTRACT 01110 AND 10011 CPU OR 10001 Memory COMPARE 11010 . . . . I/O . . Computer's View Kiến trúc Princeton (Von Neumann) Kiến trúc Harvard --- Data and Instructions mixed in same --- Data & Instructions in unified memory separate memories --- Program as data --- Has advantages in certain high performance --- Storage utilization implementations --- Single memory interface --- Can optimize each memory Các kiểu toán hạng cơ bản Declining cost of registers So sánh số lượng toán hạng Thực thi phép toán (C = A + B) v ới các kiểu toán hạng khác nhau Register Register Stack Accumulator (registermemory) (loadstore) Push A Load A Load R1,A Load R1,A Push B Add B Add R1,B Load R2,B Add Store C Store C, R1 Add R3,R1,R2 Pop C Store C,R3 1 Cycles Seconds ExecutionT ime Instructio ns Performance Instructio n Cycle So sánh số lượng các chỉ thị Kích thước toán hạng 0% Doubleword (Operand) 69% 74% Word Int Avg. 31% 19% FP Avg. Halfword 0% 7% Byte 0% 0% 20% 40% 60% 80% Frequency of reference by size Tập thanh ghi trong MIPS Câu hỏi: Tại sao giá trị thanh ghi R0 luôn bằng 0? 32 Thanh ghi đa dụng. – R0…R31 or $0…$31 Trả lời: Luôn cần – Các biến phải lưu trên thanh ghi. giá trị 0 trong một chương trình Một số trường hợp đặc biệt. Move: – R0 luôn có giá trị zero (0) add dest, src, R0 – R29 là thanh ghi con trỏ ngăn xếp – R31 được sử dụng cho thủ tục quay lại địa chỉ Một số thanh ghi đặc biệt. – PC (Program Counter): Thanh ghi lệnh hiện tại – HI & LO kết quả của phép nhân – Thanh ghi dấu phẩy động – Một số thanh ghi điều khiển (kiểm soát lỗi hoặc trạng thái) Tổ chức bộ nhớ Bộ nhớ là một mảng 1 chiều lưu trữ dữ liệu • Mỗi ô nhớ có kích thước 1 byte (8 bits) • Địa chỉ ô nhớ được xác định theo địa chỉ byte. Địa chỉ bộ nhớ được đánh chỉ số trên mảng • Máy tính 32 bits, có 232 ô nhớ (4GB) • Máy tính 64‐bit, có 264 ô nhớ (16ExaByte) Ví dụ: – 64-bit x86 lên tới ~48‐bits một ô nhớ (4PetaByte). Tổ chức bộ nhớ Các kiểu dữ liệu trong MIPS được định nghĩa là 1-byte hoặc 1-word – Một từ gồm 32 bits = 4 bytes – 232 bytes = 230 words: addresses 0, 4, 8, … Câu hỏi: địa chỉ của một từ được xác định như thế nào ? Địa chỉ Alignment : Tạo trên 4 byte (word) ở đường biên (e.g., 0, 4, 8, 12…) – Dữ liệu được lưu trữ ở địa chỉ byte chia hết cho kích thước Ánh xạ địa chỉ theo byte: 7 0 (xx00 Endianess 1019 Big Endian: address of most significant byte = word address 1018 = Big End of word) 1017 1016 IBM 360/370, Motorola 68k, MIPS, Sparc, HP PA 1015 1014 1013 1012 Big Endian 1011 1010 31 24 23 16 15 8 7 0 1009 1008 1007 1006 Little Endian 1005 1004 1003 1002 1001 1000 Little Endian: address of least significant byte = word address ...
Tìm kiếm theo từ khóa liên quan:
Bài giảng Kiến trúc máy tính Kiến trúc máy tính Computer architecture Tập lệnh MIPS Biên dịch mã máy Tổ chức bộ nhớGợi ý tài liệu liên quan:
-
67 trang 300 1 0
-
Giáo trình Kiến trúc máy tính và quản lý hệ thống máy tính: Phần 1 - Trường ĐH Thái Bình
119 trang 234 0 0 -
105 trang 204 0 0
-
84 trang 200 2 0
-
Lecture Computer Architecture - Chapter 1: Technology and Performance evaluation
34 trang 167 0 0 -
Giải thuật và cấu trúc dữ liệu
305 trang 159 0 0 -
142 trang 146 0 0
-
Thuyết trình môn kiến trúc máy tính: CPU
20 trang 145 0 0 -
Ebook Digital design and computer architecture - David Money Harris, Sarah L. Harris
561 trang 122 0 0 -
Bài giảng Lắp ráp cài đặt máy tính 1: Bài 2 - Kiến trúc máy tính
56 trang 104 0 0