Câu hỏi ôn tập môn CẤU TRÚC MÁY TÍNH Giảng viên TS Trương Quang Vinh Chương 1 1 Trình bày tổ chức của máy tính theo các cấp 2 Giải thích kỹ thuật pipeline trong tổ chức máy tính 3 Giả sử một CPU có 5[.]
Câu hỏi ơn tập mơn CẤU TRÚC MÁY TÍNH Giảng viên: TS Trương Quang Vinh Chương 1: Trình bày tổ chức máy tính theo cấp Giải thích kỹ thuật pipeline tổ chức máy tính Giả sử CPU có bước để thực lệnh, bước thực thời gian 5µs CPU có cấu trúc pipeline tầng Hỏi CPU cần thời gian để hoàn tất 100 lệnh Giả sử CPU có tầng pipeline, có chương trình với 200 lệnh cần chu kỳ để thực thi hết chương trình Cho CPU có bước để thực lệnh mô tả sau: Step IF ID EXEC MEM WB Thời gian 1µs 1µs 1µs 2µs 2µs Biết chu kỳ µs Để thực thi chương trình với 55 lệnh CPU cần thời gian? Hãy cho biết hazard có kỹ thuật pipeline, cho ví dụ Khi có lệnh thực thi mà phụ thuộc vào lệnh load trước CPU giải nào? Chương 2: Trình bày hoạt động ngắt xảy Làm cách để chương trình phục vụ ngắt quay trở lại chương trình từ nơi mà chương trình rời khỏi Khi có nhiều ngoại vi có khả yêu cầu ngắt, CPU phải có nhiều chân nhận tín hiệu u cầu ngắt Khi CPU cần phần cứng để nhận nhiều tín hiệu ngắt Khi có nhiều ngoại vi yêu cầu ngắt lúc CPU giải sao? Nếu yêu cầu ngắt chưa chấp nhận, yêu cầu ngắt có ghi nhận không, hay phải yêu cầu lại? Giải thích Khi CPU chạy ISR ngoại vi đó, có ngoại vi khác yêu cầu ngắt, CPU giải sao? Giải thích khác ngắt mềm ngắt cứng Cho ví dụ Trình bày trình tự thiết lập ngắt sử dụng chip 8259A Vẽ sơ đồ kết nối điều khiển 16 ngắt sử dụng chip 8259A 10 Vẽ sơ đồ kết nối điều khiển 32 ngắt sử dụng chip 8259A Chương 3-8: Hãy mô tả quy trình xử lý lệnh máy MIPS Trình bày cách thức mà xử lý MIPS biết ô nhớ nhớ để tìm nạp lệnh 3 Hãy mô tả trường mã máy cho lệnh add máy MIPS Nêu rõ số bit cho trường Hãy viết đoạn chương trình cho máy MIPS để chuyển liệu 10 word từ 0000 0200h sang 0000 0400h Hãy viết mã máy cho đoạn chương trình sau a) Add $t2, $s4, $s5 Sub $t2, $s4, $s5 10 b) Lw $s2, 100($s3) Addi $s1, $s2, Sw $s1, 100($s3) Giả sử biến A,B,C,D lưu ghi $s1, $s2, $s3, $s4 Hãy viết chương trình hợp ngữ cho máy MIPS để thực hàm sau: A = B – C + D + 10 Cho mảng A[] với phần tử Phần tử A[0] lưu $s5 Hãy viết đoạn chương trình hợp ngữ cho máy MIPS để thực phép tính sau: A[5] = A[3] – Chuyển sang mã máy đoạn chương trình Cho mảng B[] với 10 phần tử Phần tử B[0] lưu $s4 Các biến x,y,z lưu $s3, $s4, $s5 Hãy viết đoạn chương trình hợp ngữ cho máy MIPS để thực phép tính sau: y = B[x] + z Cho đoạn chương trình sau: Bne $s1, $s2, Label_1 Add $s1, $s0, $s2 Label1: … Hãy chuyển đoạn chương trình sang mã máy GIả sử biến A, B, C lưu $s0, $s1, $s2 Hãy vi ết đoạn chương trình hợp ngữ cho máy MIPS để thực đoạn lệnh sau: If (A < B) then C = A + B; Else C = A – B; 11 Hãy viết mã máy cho đoạn lệnh sau: Loop: sll $t2, $s0, Add $t2, $t2, $t3 Lw $t1, 8($t2) Bne $t1, $s5, Loop Addi $t1, $t1, 12 Hãy viết mã máy cho đoạn lệnh sau: 0x00200020 beq $s1, $s2, ELSE 0x00200024 add $s3, $s1, $s2 0x00200028 j EXIT 0x0020002c ELSE: sub $s3, $s1, $s2 0x00200030 EXIT: addi $s3, $s3, 13 Giải thích khác cách định địa theo Big Endian Little Endian 14 Hãy viết thủ tục mã hợp ngữ để tính hàm sau: F = |A – B| 15 Hãy viết thủ tục đệ quy mã hợp ngữ để tính hàm sau: int Sum(int n) { If (n