Danh mục

Đề thi cuối học kỳ môn cấu trúc máy tính

Số trang: 5      Loại file: pdf      Dung lượng: 285.80 KB      Lượt xem: 1      Lượt tải: 0    
Thu Hiền

Xem trước 2 trang đầu tiên của tài liệu này:

Thông tin tài liệu:

Một nhóm kỹ sư đang thiết kế một bộ xử lý đơn giản. Họ phải chọn lựa giữa cách hiện thực theo kiểu pipeline và không pipeline. Các thông số thiết kế cho 2 cách hiện thực này được thể hiện trong bảng sau: Thông số thiết kế Tốc độ xung clock CPI cho các lệnh
Nội dung trích xuất từ tài liệu:
Đề thi cuối học kỳ môn cấu trúc máy tínhTrường ĐH Bách Khoa TP.HCM ĐỀ THI CUỐI HỌC KỲ I – 2009-2010 Khoa KH & KT Máy tính Môn Kiến trúc Máy tính (CSE504002) Thời gian: 90 phút (Được tham khảo tài liệu, không được sử dụng máy tính laptop)Bài 1: (2 điểm) Một nhóm kỹ sư đang thiết kế một bộ xử lý đơn giản. Họ phải chọn lựa giữacách hiện thực theo kiểu pipeline và không pipeline. Các thông số thiết kế cho 2 cách hiện thựcnày được thể hiện trong bảng sau: Thông số thiết kế Cách hiện thực Cách hiện thực pipeline không pipelineTốc độ xung clock 600MHz 450MHzCPI cho các lệnh truy xuất bộ nhớ 2.5 1.2CPI cho các lệnh số học/luận lý 1 1CPI cho các lệnh điều khiển 2 1 a. Cho một chương trình bao gồm 20% các lệnh số học/luận lý, 10% các lệnh điều khiển và 70% các lệnh truy xuất bộ nhớ. Xác định CPI trung bình cho mỗi cách hiện thực. Cách thiết kế nào hiệu quả hơn?Average CPI for Pipelined Version = (0.2*1 + 0.1*2 + 0.7*2.5) = 2.15Average CPI for Non-Pipelined Version = (0.2*1 + 0.1*1 + 0.7*1.2) = 1.14CPU execution time for Pipelined version = 2.15/(600 Mhz) = 3.58nsCPU execution time for Non-Pipelined version = 1.14/(450 Mhz) = 2.53nsCách hiện thực không pipeline nhanh hơn. b. Cho một chương trình bao gồm 75% các lệnh số học/luận lý, 15% các lệnh điều khiển và 10% các lệnh truy xuất bộ nhớ. Xác định CPI trung bình cho mỗi cách hiện thực. Cách thiết kế nào hiệu quả hơn?Average CPI for Pipelined Version = (0.75*1 + 0.15*2 + 0.1*2.5) = 1.3Average CPI for Non-Pipelined Version = (0.75*1 + 0.15*1 + 0.1*1.2) = 1.02CPU execution time for Pipelined version = 1.3/(600 Mhz) = 2.16nsCPU execution time for Non-Pipelined version = 1.02/(450 Mhz) = 2.26nsCách hiện thực pipeline nhanh hơn.Kiểm tra cuối HK – Kiến trúc Máy tính – CS2009 Trang 1/2Bài 2: (2.5 điểm) Dùng hợp ngữ MIPS viết phiên bản hợp ngữ cho đoạn chương trình C sau đây:int A[100], B[100];for (i=1; i < 100; i++) { A[i] = A[i-1] + B[i];}Giả thiết rằng ban đầu chỉ có địa chỉ nền của mảng A và B được lưu trong thanh ghi $a0 và $a1.Đáp án li $t0, 1 # Starting index of i li $t5, 100 # Loop boundloop: lw $t1, 0($a1) # Load A[i-1] lw $t2, 4($a2) # Load B[i] add $t3, $t1, $t2 # A[i-1] + B[i] sw $t3, 4($a1) # A[i] = A[i-1] + B[i] addi $a1, 4 # Go to i+1 addi $a2, 4 # Go to i+1 addi $t0, 1 # Increment index variable bne $t0, $t5, loop # Compare with Loop Boundhalt: nopKiểm tra cuối HK – Kiến trúc Máy tính – CS2009 Trang 2/2Bài 3: (2 điểm) Cho một bộ xử lý có bộ nhớ vật lý 16KB, đánh địa chỉ theo từng byte và mộtcache có kích thước mỗi dòng là 8 byte. a. Giả sử cache dùng phương thức ánh xạ trực tiếp với trường tag trong địa chỉ là 7 bit. Trình bày khung dạng địa chỉ bộ nhớ và xác định các thông số sau: số khối trong bộ nhớ chính và số dòng trong cache Số đơn vị có khả năng định vị địa chỉ là byte Bộ nhớ có 16KB = 214 dùng địa chỉ 14 bit để xác định byte. Một khối trong bộ nhớ chính bằng một dòng trong cache (8 byte = 23) nên bộ nhớ chính có 214/23 = 211 khối Một dòng trong cache có 8 byte nên cần 3 bit cho phần byte offset, phần tag là 7 bit số bit để xác định dòng 14-7-3=4 => số dòng trong cache 24 = 16 dòng. Tag Line Byte 7 bit 4 bit 3 bit b. Giả sử cache dùng phương thức ánh xạ fully-associative. Trình bày khung dạng địa chỉ bộ nhớ và xác định các thông số sau: số khối trong bộ nhớ chính và số dòng trong cache Tương tự câu trên, số đơn vị có khả năng định vị địa chỉ là byte, bô nhớ chinh có 211 khối. Một dòng trong cache có 8 byte nên cần 3 bit cho phần byte offset, phần tag là 14- 3=11 bit. Số dòng trong cache không xác định. Tag Byte 11 bit 3 bit c. Giả sử cache dùng phương thức 4-way set associative với trường tag trong địa chỉ là 8 bit. Trình bày khung dạng địa chỉ bộ nhớ và xác định các thông số sau: số khối trong bộ nhớ chính, số dòng trong cache, số tập hợp trong cache Số đơn vị có khả năng định vị địa chỉ là byte. Bộ nhớ chinh có 211 khối. Một dòng trong cache có 8 byte nên cần 3 bit cho phần byte offset, phần tag là 8 bit số bit để xác định tập hợp là 14-8-3=3 bit => có 23 tập hợp trong cache, mỗi tập hợp có 4 dòng => có tất cả 23 * 4 = 25 dòng trong cache. Tag Set Byte 8 bit 3 bit 3 bitKiểm tra cuối HK – Kiến trúc Máy tính – CS2009 Trang 3/2Bài 4: (1.5 điểm) Một số bộ xử lý có thanh ghi cờ đặc biệt để chứa các bit trạng thái như: bitcarry, bit overflow, … Mô tả sự khác nhau về chức năng giữa bit carry và bit overflow.Cho ví dụ một tác vụ số học để minh họa sự khác nhau này.Cờ carry được thiết lập khi tác vụ số học tạo ra bit carry vượt khỏi vị trí MSB của các to ...

Tài liệu được xem nhiều: