Bài Giảng Kiến trúc máy tính

32 807 3
Bài Giảng Kiến trúc máy tính

Đ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

Khoa Khoa KH & KT KH & KT M M ỏ ỏ y y t t ớ ớ nh nh Bo Bo ọ ọ moõn moõn Kyừ Kyừ thua thua ọ ọ t t Ma Ma ự ự y y t t ớ ớ nh nh Pha Pha ù ù m m T T ử ử ụ ụ ứ ứ ng ng Ha Ha ỷ ỷ i i Nguyeón Nguyeón Quo Quo ỏ ỏ c c Tua Tua ỏ ỏ n n Kiến trúc Máy tính - Chap 04 2 Tài liệuthamkhảo ) “Computer Organization and Design: the hardware/software interface”, John L. Hennessy & David A. Patterson, Second Edition, MORGAN KAUFMANN PUBLISHERS, INC. 1998 ) “Computer Architecture: a quantitative approach”, John L. Hennessy & David A. Patterson, Third Edition, MORGAN KAUFMANN PUBLISHERS, INC. 2002 Kiến trúc Máy tính - Chap 04 3 Chương 4. Kiến trúc Máy tính - Chap 04 4 4.1 Dẫnnhập ) Máy tính biểu diễn thông tin dưới dạng nhị phân ) Các đại lượng số đếm cũng biểu diễn dưới dạng nhị phân ) Một số câu hỏi thường gặp • Cách biểu diễn số đếm trên máy tính ? • Các giới hạn trong biểu diễn số đếm ? • Cách tính toán trên số nhị phân ? •Số thực ? v.v ) Nội dung của chương này bao gồm •Biểu diễn số đếm trên máy tính • Các giải thuật tính toán •Phần cứng hiện thực giải thuật tính toán •Nhóm lệnh tính toán Kiến trúc Máy tính - Chap 04 5 4.2 Số nguyên có dấu và không dấu ) MIPS biểu diễn số nguyên theo từ (word) có kích thước 32 bit ) Td. biểu diễn giá trị 1011 2 0000 0000 0000 0000 0000 0000 0000 1011 •Bit trọng số thấp nhất (least significant bit) nằm bên phải cùng •Bit trọng số cao nhất (most significant bit) nằm bên trái cùng ) Tầm vực giá trị biểu diễn ở số nguyên không dấu •Nhỏ nhất là 0 , lớn nhất là 2 32 –1 (4.294.967.295) 0000 0000 0000 0000 0000 0000 0000 0000 1111 1111 1111 1111 1111 1111 1111 1111 ) Các bit không có nghĩa là các bit 0 nằm ở bên trái của số đếm Kiến trúc Máy tính - Chap 04 6 ) MIPS biểu diễn số nguyên âm theo bù 2 •Bit dấu (sign bit) là bit nằm phía trái cùng •Tầm vực giá trị biểu diễn từ -2 (32-1) cho đến 2 (32-1) -1 1000 0000 0000 0000 0000 0000 0000 0000 0111 1111 1111 1111 1111 1111 1111 1111 ) Vấn đề mở rộng dấu (sign extension) • Td. biểu diễn giá trị -5 toán hạng 8 bit 1111 1011 toán hạng 16 bit 1111 1111 1111 1011 toán hạng 32 bit 1111 1111 1111 1111 1111 1111 1111 1011 •Lưu ý về các bit không có nghĩa ? ) Các lệnh liên quan đến số nguyên có dấu và không dấu • lb và lbu , slt và sltu , slti và sltiu Kiến trúc Máy tính - Chap 04 7 4.3 Cộng và trừ ) Cộng trừ nhị phân theo số bù 2 ) Kết quả của phép cộng/trừ vượt quá giới hạn biểu diễn ? • Tràn bit (carry) • Tràn dấu (overflow) • Điều kiện gây tràn dấu •Xử lý tràn ? ) Các lệnh số học •Cộng/trừ số nguyên có dấu add , addi , sub Ö sinh ra ngoại lệ (exception) thông báo đến bộ điều khiển •Cộng/trừ số nguyên không dấu addu , addiu , subu ) Thanh ghi EPC (exception program counter) chứa địa chỉ của câu lệnh sinh ra ngoại lệ •Lệnh mfc0 reg , $epc (move from system control) ≥ 0 ≥ 0 < 0A - B < 0< 0 ≥ 0 A - B ≥ 0 < 0< 0A + B < 0 ≥ 0 ≥ 0 A + B Kết quảBAPhép toán Kiến trúc Máy tính - Chap 04 8 ) Phân tích đoạn chương trình sau addu $t0 , $t1 , $t2 xor $t3 , $t1 , $t2 slt $t3 , $t3 , $zero bne $t3 , $zero , No_overflow xor $t3 , $t0 , $t1 slt $t3 , $t3 , $zero bne $t3 , $zero , Overflow Kiến trúc Máy tính - Chap 04 9 ) Phân tích đoạn chương trình sau addu $t0 , $t1 , $t2 nor $t3 , $t1 , $zero sltu $t3 , $t3 , $t2 bne $t3 , $zero , Overflow Kiến trúc Máy tính - Chap 04 10 4.4 Các phép toán luận lý ) Các phép toán luận lý cơ bản • and , andi • or , ori ) Các lệnh dịch (shift) • Dịch luận lý (logical shift) sll rd , rt , shamt và sllv rd , rt , rs srl rd , rt , shamt và srlv rd , rt , rs • Dịch số học (arithmetic shift) sra rd , rt , shamt và srav rd , rt , rs ) Dạng thức lệnh dịch trái luận lý •Td. sll $t2 , $s0 , 8 functshamtrdrtrsop 08101600 [...]... 32-bit sau 1 10000001 0100000000000000000000000000 ? Kiến trúc Máy tính - Chap 04 27 Cộng số thực • Giải thuật • Minh họa (cơ số 10) 9.999 × 101 + 1.610 × 10-1 Kiến trúc Máy tính - Chap 04 28 Nhân số thực • Giải thuật • Minh họa (cơ số 10) 1.110 × 1010 × 9.200 × 10-5 Kiến trúc Máy tính - Chap 04 29 Lệnh số thực ở MIPS • MIPS có coprocessor để tính toán số thực 32-bit (single) lẫn 64-bit (double)... mfhi rd mflo rd Kiến trúc Máy tính - Chap 04 20 4.7 Mạch chia Phép toán chia Số bị chia (Dividend) 10010102 - 1000 10 101 1011 - 1000 Số dư (Remainder) 10002 Số chia (Divisor) 10012 Thương số (Quotient) 10 Hiện thực • Bằng chương trình dựa trên các phép toán cộng/trừ • Bằng mạch phần cứng Kiến trúc Máy tính - Chap 04 21 Mạch chia dạng 1 • Sơ đồ khối • Giải thuật • Minh họa Kiến trúc Máy tính - Chap 04... đồ mạch Kiến trúc Máy tính - Chap 04 23 Mạch chia dạng 3 (tt) • Giải thuật • Minh họa Kiến trúc Máy tính - Chap 04 24 Chia số nguyên có dấu • Chia phần trị tuyệt đối, sau đó xác định dấu cho thương số Chia trong tập lệnh MIPS • Sử dụng thanh ghi hi để chứa số dư và lo để chứa thương số • Lệnh chia div rs , rt divu rs , rt • Lệnh chuyển dữ liệu thương số và số dư mfhi rd mflo rd Kiến trúc Máy tính -... out Result31 Overflow Set Kiến trúc Máy tính - Chap 04 15 4.6 Mạch nhân Phép toán nhân Số bị nhân (Multiplicand) Số nhân (Multiplier) 10002 10012 1000 0000 0000 1000 Tích (Product) 10010002 Hiện thực • Bằng chương trình dựa trên các phép toán cộng/trừ • Bằng mạch phần cứng Kiến trúc Máy tính - Chap 04 16 Mạch nhân dạng 1 • Sơ đồ khối • Giải thuật • Minh họa Kiến trúc Máy tính - Chap 04 17 Mạch nhân... • Lệnh nhân mul.s fd , fs , ft mul.d fd , fs , ft Kiến trúc Máy tính - Chap 04 30 Lệnh số thực ở MIPS (tt) • Lệnh chia div.s div.d fd , fs , ft fd , fs , ft • Lệnh so sánh fs , ft fs , ft lt le bclt và bclf lwcl swcl Với cond là • Lệnh rẽ nhánh c.cond.s c.cond.d eq neq ft , address ft , address gt ge • Lệnh Load/Store Kiến trúc Máy tính - Chap 04 31 Bài tập “Computer Organization and Design: the hardware/software... dài từ là 32 bit nên cần đơn vị ALU 32 bit Các mạch phần cứng cơ bản d a Cin 0 c b 1 Kiến trúc Máy tính - Chap 04 a b Sum + Cout 11 ALU 1 bit ALU 32 bit Cin Cin Operation a0 Cin ALU0 b0 Cin 0 1 Result ALU1 + 2 b1 Result1 Cout a2 Cin ALU2 b2 Result2 Cout a31 b Result0 Cout a1 a Operation Cin Cout ALU31 b31 Kiến trúc Máy tính - Chap 04 Result31 Cout 12 Tinh chỉnh đơn vị ALU Cin B invert a Operation 0... Chap 04 16 Mạch nhân dạng 1 • Sơ đồ khối • Giải thuật • Minh họa Kiến trúc Máy tính - Chap 04 17 Mạch nhân dạng 2 • Sơ đồ khối • Giải thuật • Minh họa Kiến trúc Máy tính - Chap 04 18 Mạch nhân dạng 3 • Sơ đồ khối • Giải thuật • Minh họa Kiến trúc Máy tính - Chap 04 19 Nhân số nguyên có dấu • Nhân phần trị tuyệt đối, sau đó xác định dấu cho tích số • Giải thuật Booth: căn cứ ai ai-1 Thực hiện trên... Operation 0 1 b 0 + B invert Result Cin a Operation 0 1 2 Result 1 Cout b 0 + 2 1 3 Less Cout Kiến trúc Máy tính - Chap 04 13 Tinh chỉnh đơn vị ALU (tt) Cin B invert B invert Cin Operation a0 a 0 + a1 2 Overflow b1 ALU1 0 Less C out ALU2 0 Less C out Result2 Set Overflow a31 Cin b31 ALU31 0 Kiến trúc Máy tính - Chap 04 Result1 Cin b2 3 Result0 Cin a2 1 Less ALU0 Less C out Result 0 Cin b0 1 b Operation... × Significand × 2Exponent • Dạng thức 32 bit b31 b30 b23 b22 s exponent significand 1bit 8 bits B0 23 bits • Dạng thức 64 bit b63 b62 b52 b51 s exponent significand 1bit 11 bits b0 52 bits Kiến trúc Máy tính - Chap 04 26 MIPS biểu diễn số thực dấu chấm động theo chuẩn IEEE 754 Chuẩn IEEE 754 • Công thức (-1)Sign × (1 + Significand) × 2(Exponent – Bias) • Phần significand biểu diễn giá trị có độ... tập “Computer Organization and Design: the hardware/software interface”, John L Hennessy & David A Patterson, Second Edition, MORGAN KAUFMANN PUBLISHERS, INC 1998 4.12 , 4.13 , 4.20 4.23 , 4.24 Kiến trúc Máy tính - Chap 04 32

Ngày đăng: 24/06/2014, 08:14

Từ khóa liên quan

Tài liệu cùng người dùng

  • Đang cập nhật ...

Tài liệu liên quan