Bài giảng Hoạt động của kỹ thuật đường ống

Câu 20. Lệnh add có được thực hiện không? Cuối cùng, giá trị của thanh ghi t0 là bao nhiêu? Lệnh nop ngay sau lệnh beq được gọi là lệnh loại gì? .

pdf14 trang | Chia sẻ: hao_hao | Lượt xem: 3531 | Lượt tải: 2download
Bạn đang xem nội dung tài liệu Bài giảng Hoạt động của kỹ thuật đường ống, để tải tài liệu về máy bạn click vào nút DOWNLOAD ở trên
Bài thí nghiệm Kiến trúc máy tính 2 2010 Khoa Điện tử- Viễn thông Page 1 Bài 2. Hoạt động của kỹ thuật đường ống (Bài thí nghiệm này được biên soạn dựa trên các bài thí nghiệm của Jan Eric Larsson, Mats Brorsson và Tobias Harms [4]) 1 Mục đích Trong bài thí nghiệm này sinh viên sẽ tìm hiểu bộ xử lý MIPS có sử dụng kỹ thuật đường ống (eng. pipeline). 2 Công cụ Bài thí nghiệm sử dụng bộ phần mềm MIPSIT [1] để mô phỏng hoạt động của bộ xử lý có sử dụng kỹ thuật đường ống. 3 Lý thuyết Sinh viên cần nắm rõ về kiến trúc tập lệnh MIPS và cấu trúc bộ xử lý dùng kỹ thuật đường ống (bài giảng chương 2). Sách tham khảo [3]. Sinh viên cần hiểu các nguyên l{ cơ bản của kỹ thuật đường ống, các vấn đề xung đột dữ liệu (eng. data hazard), xung đột điều khiển (eng. control/branch hazard), các phương pháp giải quyết xung đột như chuyển tiếp (eng. forwarding), rẽ nhánh chậm (eng. delayed branch). 4 Thực hiện 4.1 Cài đặt và làm quen với phần mềm Tải bộ công cụ MIPSIT từ địa chỉ: https://sites.google.com/site/fethutca/my- forms/MipsICT.zip?attredirects=0&d=1. Giải nén tệp “MipsICT.zip” và chạy tệp nhận được “MipsICT.exe” để chương trình tự giải nén vào thứ mục: “C:\MipsIT”. Nghiên cứu bài báo giới thiệu về phần mềm [2]. Trong bộ chương trình MIPSIT, ta sẽ sử dụng 2 chương trình MIPSITStudio và mipspipe2000: 1) MIPSITStudio là môi trường lập trình và biên dịch phần mềm cho bộ xử l{ MIPS. Chương trình cho phép người dùng lập trình bằng ngôn ngữ C/Assembly và biên dịch thành mã máy để nạp vào bộ phát triển MIPS hoặc để mô phỏng bộ xử lý. Gọi MIPSITStudio bằng cách chạy tệp “C:\MipsIT\bin\ MipsIt.exe” (Hình 1). Chú ý, khi gọi MIPSITStudio, thông báo lỗi “Failed to open com port” có thể bỏ qua bằng việc bấm nút “OK”. Trước khi thực hiện việc xây dựng chương trình, cần kiểm tra đường dẫn đến trình biên dịch và đường dẫn đến các tệp thư viện và tệp include .h (Hình 2). Bài thí nghiệm Kiến trúc máy tính 2 2010 Khoa Điện tử- Viễn thông Page 2 Hình 1. Môi trường lập trình cho bộ xử lý MIPS Hình 2. Xác định đường dẫn trình biên dịch, đường dẫn thư viện và tệp include. Bài thí nghiệm Kiến trúc máy tính 2 2010 Khoa Điện tử- Viễn thông Page 3 2) mipspipe2000 là chương trình mô phỏng hoạt động đường dữ liệu (eng. datapath) của bộ xử lý MIPS sử dụng kỹ thuật đường ống. Gọi chương trình bằng cách chạy tệp “C:\MipsIT\bin\mipspipe2000.exe”. (Hình 3) Hình 3. Chương trình mô phỏng đường ống bộ xử lý MIPS 4.2 Bộ xử lý đường ống thực hiện 1 lệnh số học, logic 4.2.1 Bước 1. Chuẩn bị chương trình hợp ngữ. Tạo một đề án hợp ngữ (eng. assemble project) trong môi trường MIPSITStudio (Hình 4). Đặt tên đề án này là Bai2-1. Chọn thư mục để lưu là “C:\MipsIt\Projects\Bai2-1”. Tạo một tệp chương trình hợp ngữ với tên “bai2-1.s” (Hình 5). Hình 4. Tạo một project mới trong môi trường MIPSITStudio. Bài thí nghiệm Kiến trúc máy tính 2 2010 Khoa Điện tử- Viễn thông Page 4 Hình 5. Tạo thêm một tệp chương trình hợp ngữ trong đề án. Soạn thảo đoạn mã hợp ngữ vào tệp chương trình như Hình 6. Biên dịch đề án bằng cách lựa chọn menu “Build -> Build Bai2-1” hoặc phím F7. Tệp kết quả biên dịch dưới dạng mã nhị phân là “C:\MipsIT\Projects\Bai2-1\Objects\Bai2-1.out”. Tệp này sẽ được dùng làm tệp đầu vào cho chương trình mô phỏng. Hình 6. Chương trình bai2-1.s 4.2.2 Bước 2. Mô phỏng. Mô phỏng bộ xử l{ MIPS đường ống. Chạy phần mềm mô phỏng “C:\MipsIT\bin\mipspipe2000.exe”. a. Nạp tệp mô tả cấu trúc đường dữ liệu của bộ xử lý MIPS bằng menu “File->Load Pipeline…” và lựa chọn tệp “C:\MipsIT\S-script\s.dit” (Hình 7). Bài thí nghiệm Kiến trúc máy tính 2 2010 Khoa Điện tử- Viễn thông Page 5 Hình 7. Nạp tệp mô tả cấu trúc bộ xử lý. b. Nạp chương trình đã được biên dịch ở Bước 2 bằng menu “File->Open” và lựa chọn tệp “C:\MipsIT\Projects\Bai2-1\Objects\Bai2-1.out”. Hiện thị cửa sổ thanh ghi và cửa sổ nội dung bộ nhớ bằng menu “View->Registers” và “Menu->Memory”. Nội dung các thanh ghi có thể được thay đổi trực tiếp trên cửa sổ thanh ghi (Hình 8). Hình 8. Thực hiện mô tả cấu trúc bộ xử lý MIPS đường ống. c. Mô phỏng từng bước hoạt động của bộ xử lý khi nó thực hiện chương trình đã nạp (Sử dụng phím Step trên thanh công cụ). Trả lời các câu hỏi dưới đây. Chú { mỗi bước mô phỏng tương ứng với 1 chu kz đồng hồ. Bài thí nghiệm Kiến trúc máy tính 2 2010 Khoa Điện tử- Viễn thông Page 6 1 2 3 4 5 6 7 8 9 11 10 13 12 14 1 2 3 4 5 6 7 8 9 11 10 13 12 14 Hình 9. Số thứ tự các tín hiệu cần quan sát. Câu 1. Điền vào bảng dưới đây giá trị các tín hiệu và thời điểm (theo chu kz đồng hồ) và giai đoạn đường ống (eng. pipeline stage) thực hiện lệnh khi tín hiệu đó thay đổi giá trị khác 0? Các tín hiệu cần quan sát được đánh số thứ tự như Hình 9. Trong bảng, giá trị của PC, Readdata được điền sẵn làm mẫu. add t0, s0, s1 TT Tín hiệu Giá trị Giai đoạn đường ống Chu kỳ đồng hồ 1 PC 8002 0000 IF 1 2 Readdata 0211 4020 IF 1 3 Readregister1 4 Readregister2 5 Readdata1 6 Readdata2 7 ALUInp1 8 ALUInp2 9 ALUresult 10 Writedata 11 MemWBresult 12 MemWrite 13 WBData 14 RegWrite Bảng 1. Tín hiệu cho lệnh cộng 2 thanh ghi. Câu 2. Kết quả thực hiện lệnh cộng sẽ xuất hiện ở thanh ghi toán hạng đích sau bao nhiêu chu kz? ……………………………………………………………………………………………………………………………………………………………. Sau 5 chu kỳ Bài thí nghiệm Kiến trúc máy tính 2 2010 Khoa Điện tử- Viễn thông Page 7 ……………………………………………………………………………………………………………………………………………………………. Câu 3. Thay lệnh cộng trong chương trình bằng các lệnh số học khác (sub, addi), biên dịch lại chương trình và thực hiện lại việc mô phỏng. Việc thực hiện các lệnh số học khác nhau khác nhau ở giai đoạn pipeline nào? ……………………………………………………………………………………………………………………………………………………………. ……………………………………………………………………………………………………………………………………………………………. ……………………………………………………………………………………………………………………………………………………………. ……………………………………………………………………………………………………………………………………………………………. ……………………………………………………………………………………………………………………………………………………………. ……………………………………………………………………………………………………………………………………………………………. 4.3 Bộ xử lý đường ống thực hiện lệnh lw, sw. 4.3.1 Bước 1. Chuẩn bị chương trình. Tạo một đề án mới với tên “Bai2-2” trong môi trường MIPSITStudio. Thêm tệp chương trình “Bai2- 2.s” như Hình 10 dưới đây vào đề án và biên dịch nó thành tệp thực hiện tương tự Mục 4.2.1. Chú ý, chương trình có khai báo 1 biến Test với giá trị 1. Hình 10. Chương trình hợp ngữ, cửa sổ bộ nhớ và cửa sổ thanh ghi minh họa lệnh lw. 4.3.2 Bước 2. Mô phỏng Mô phỏng chương trình hợp ngữ bằng bộ mô phỏng “mipspipe2000” tương tự Bước 2 của Mục 4.2.2. Chú ý, biến Test của chương trình sẽ được đặt ở địa chỉ 80020020 sau các lệnh NOP. Do đó, để nạp đúng nội dung biến Test vào thanh ghi t0, ta cần đặt giá trị của thanh ghi r4/a0 bằng 80020020 như Hình 10 (phần đánh dấu đỏ). Trả lời các câu hỏi. Câu 4. Điền vào bảng dưới đây giá trị các tín hiệu và thời điểm (theo chu kz đồng hồ) và giai đoạn đường ống (eng. pipeline stage) thực hiện lệnh khi tín hiệu đó thay đổi giá trị khác 0? Các tín hiệu cần quan sát được đánh số thứ tự như Hình 9. Trong bảng, giá trị của PC, Readdata được điền sẵn làm mẫu. Việc thực hiện khác nhau ở giai đoạn ID và EXE Bài thí nghiệm Kiến trúc máy tính 2 2010 Khoa Điện tử- Viễn thông Page 8 add t0, s0, s1 TT Tín hiệu Giá trị Giai đoạn đường ống Chu kỳ đồng hồ 1 PC 8002 0000 IF 1 2 Readdata 8c88 0000 IF 1 3 Readregister1 4 Readregister2 5 Readdata1 6 Readdata2 7 ALUInp1 8 ALUInp2 9 ALUresult 10 Writedata 11 MemWBresult 12 MemWrite 13 WBData 14 RegWrite Bảng 2. Tín hiệu cho lệnh cộng 2 thanh ghi. Câu 5. Kết quả thực hiện lệnh lw sẽ xuất hiện ở thanh ghi toán hạng đích sau bao nhiêu chu kz? ……………………………………………………………………………………………………………………………………………………………. Câu 6. Khối ALU thực hiện phép toán gì? Mục đích của phép toán để tính toán giá trị gì? ……………………………………………………………………………………………………………………………………………………………. ……………………………………………………………………………………………………………………………………………………………. ……………………………………………………………………………………………………………………………………………………………. Câu 7. Nếu trong phần chương trình thay lệnh lw t0, 0(a0) bằng lệnh lw t0, 20(a0) thì giá trị thanh ghi a0 cần đặt là bao nhiêu? Giá trị tín hiệu số 8, đầu vào ALUInp2 bằng bao nhiêu? a0=……………………………………………………………………………………………………………………………………………………… ALUInp2=.…………………………………………………………………………………………………………………………………………… Câu 8. Thay lệnh lw trong chương trình bằng lệnh sw t0, 24(a0), biên dịch lại chương trình và thực hiện lại việc mô phỏng. Khi mô phỏng đặt giá trị a0 bằng 8002 0000. Có giai đoạn pipeline nào khác với lệnh lw? ……………………………………………………………………………………………………………………………………………………………. ……………………………………………………………………………………………………………………………………………………………. ……………………………………………………………………………………………………………………………………………………………. 4.4 Bộ xử lý đường ống thực hiện lệnh beq 4.4.1 Bước 1. Chuẩn bị chương trình. Tạo một đề án mới với tên “Bai2-3” trong môi trường MIPSITStudio. Thêm tệp chương trình “Bai2- 3.s” như Hình 10 dưới đây vào đề án và biên dịch nó thành tệp thực hiện tương tự Mục 4.2.1. Sau 5 chu kỳ kKhối ALU thực hiện phép cộng để tính địa chỉ của o nhớ cần truy cập trong bộ nhớ . Lệnh sw khác lệnh lw ở giai đoạn MEM và WB Bài thí nghiệm Kiến trúc máy tính 2 2010 Khoa Điện tử- Viễn thông Page 9 Hình 11. Chương trình hợp ngữ, cửa sổ bộ nhớ và cửa sổ thanh ghi minh họa lệnh beq. 4.4.2 Bước 2. Mô phỏng Mô phỏng chương trình hợp ngữ bằng bộ mô phỏng “mipspipe2000” tương tự Bước 2 của Mục 4.2.2. Trả lời các câu hỏi. Câu 9. Khi thực hiện lệnh beq, các giai đoạn pipeline nào được sử dụng? ……………………………………………………………………………………………………………………………………………………………. ……………………………………………………………………………………………………………………………………………………………. ……………………………………………………………………………………………………………………………………………………………. ……………………………………………………………………………………………………………………………………………………………. ……………………………………………………………………………………………………………………………………………………………. ……………………………………………………………………………………………………………………………………………………………. 4.5 Xung đột dữ liệu trong bộ xử lý đường ống 4.5.1 Bước 1. Chuẩn bị chương trình. Tạo một đề án mới với tên “Bai2-4” trong môi trường MIPSITStudio. Thêm tệp chương trình “Bai2- 4.s” như dưới đây vào đề án và biên dịch nó thành tệp thực hiện tương tự Mục 4.2.1. Giai đoạn Pipeline IF, ID, EXE . Bài thí nghiệm Kiến trúc máy tính 2 2010 Khoa Điện tử- Viễn thông Page 10 Hình 12. Chương trình hợp ngữ, cửa sổ bộ nhớ và cửa sổ thanh ghi minh họa xung đột dữ liệu. 4.5.2 Bước 2. Mô phỏng bằng đường ống không có chuyển tiếp dữ liệu Mô phỏng chương trình hợp ngữ bằng bộ mô phỏng “mipspipe2000” tương tự Bước 2 của Mục 4.2.2. Trả lời các câu hỏi. Câu 10. Sau bao nhiêu chu kz đồng hồ, thanh ghi đích của lệnh add thứ nhất t2 nhận được kết quả đúng của phép toán? ……………………………………………………………………………………………………………………………………………………………. Câu 11. Sau bao nhiêu chu kz đồng hồ, ta cần giá trị của thanh ghi nguồn lệnh add thứ hai t2? ……………………………………………………………………………………………………………………………………………………………. Câu 12. Kết quả cuối cùng của thanh ghi t4 là bao nhiêu? Ở đây có xảy ra vấn đề gì? ……………………………………………………………………………………………………………………………………………………………. ……………………………………………………………………………………………………………………………………………………………. ……………………………………………………………………………………………………………………………………………………………. ……………………………………………………………………………………………………………………………………………………………. ……………………………………………………………………………………………………………………………………………………………. Câu 13. Vấn đề của bộ xử l{ đường ống xuất hiện ở trên có thể giải quyết bằng các phương pháp: thay đổi thứ tự lệnh (eng. code reordering), thêm các lệnh nop, tạm dừng và chuyển tiếp. Hãy giải quyết vấn đề trên bằng cách thêm lệnh nop vào đoạn chương trình. Cần bao nhiêu lệnh nop để giải quyết vấn đề và cho kết quả tính toán t4 đúng? Viết đoạn chương trình đó xuống dưới đây và mô phỏng nó để kiểm tra là vấn đề đã được giải quyết. ……………………………………………………………………………………………………………………………………………………………. ……………………………………………………………………………………………………………………………………………………………. ……………………………………………………………………………………………………………………………………………………………. ……………………………………………………………………………………………………………………………………………………………. ……………………………………………………………………………………………………………………………………………………………. ……………………………………………………………………………………………………………………………………………………………. Sau 5 chu kỳ Sau 2 chu kỳ t4 = 14 do giá trị của t2 chưa được cập nhật khi tính giá trị của t4 Cần 2 lệnh nop # include .set noreorder .text .globl start .ent start Bài thí nghiệm Kiến trúc máy tính 2 2010 Khoa Điện tử- Viễn thông Page 11 3 6 1 2 4 5 7 8 1 2 3 4 5 6 7 8 ……………………………………………………………………………………………………………………………………………………………. ……………………………………………………………………………………………………………………………………………………………. ……………………………………………………………………………………………………………………………………………………………. ……………………………………………………………………………………………………………………………………………………………. 4.5.3 Bước 3. Mô phỏng bằng đường ống có chuyển tiếp dữ liệu Mô phỏng chương trình hợp ngữ bằng bộ mô phỏng “mipspipe2000” tương tự Bước 2 của Mục 4.2.2. Tuy nhiên, thay vì nạp tệp mô tả cấu trúc đường ống đơn giản “C:\MipsIT\S-script\s.dit”, hãy chọn cấu trúc đường ống phức tạp trong tệp “C:\MipsIT\Xl-script\xl.dit” (Hình 13). Đặt giá trị các thanh ghi t0, t1, t3 lần lượt là 1,3, 5. Trả lời các câu hỏi. Hình 13. Cấu trúc đường ống phức tạp. Câu 14. Trên Hình 13, các điểm được đánh số 1..5 là các bộ ghép kênh (eng. multiplexor) để lựa chọn giá trị toán hạng (nguồn và đích) truyền trong đường dữ liệu. Các điểm 6,7,8 là giá trị kết quả của phép toán sau các giai đoạn pipeline EX,MEM,WB tương ứng. Hãy điền vào bảng sau lệnh đang được thực hiện tại các giai đoạn pipeline và giá trị của các điểm được đánh số 1..8 khi mô phỏng. Giá trị (điều khiển) của bộ ghép kênh được quy ước là 0,1,2… tương ứng với các vị trí của chuyển mạch từ trên xuống. start : add t2, t0, t1 nop nop add t4, t2, t3 nop nop nop .end start Bài thí nghiệm Kiến trúc máy tính 2 2010 Khoa Điện tử- Viễn thông Page 12 Chu kz /Giai đoạn IF ID EX MEM WB 1 Lệnh:…………………… PC=…………………….. Instr=………………….. …………………………… Lệnh: ………………… 1= ……………………… 2=.……………………… Lệnh: …..……………… 3=……..………………… 4=…..…………………… 6=...……………………… Lệnh: ………………… 5=……………………… 7=……………………… Lệnh: ………………… 8=……………………… 3 Lệnh:…………………… PC=…………………….. Instr=………………….. …………………………… Lệnh: ………………… 1= ……………………… 2=.……………………… Lệnh: …..……………… 3=……..………………… 4=…..…………………… 6=...……………………… Lệnh: ………………… 5=……………………… 7=……………………… Lệnh: ………………… 8=……………………… 4 Lệnh:…………………… PC=…………………….. Instr=………………….. …………………………… Lệnh: ………………… 1= ……………………… 2=.……………………… Lệnh: …..……………… 3=……..………………… 4=…..…………………… 6=...……………………… Lệnh: ………………… 5=……………………… 7=……………………… Lệnh: ………………… 8=……………………… 5 Lệnh:…………………… PC=…………………….. Instr=………………….. …………………………… Lệnh: ………………… 1= ……………………… 2=.……………………… Lệnh: …..……………… 3=……..………………… 4=…..…………………… 6=...……………………… Lệnh: ………………… 5=……………………… 7=……………………… Lệnh: ………………… 8=……………………… 6 Lệnh:…………………… PC=…………………….. Instr=………………….. …………………………… Lệnh: ………………… 1= ……………………… 2=.……………………… Lệnh: …..……………… 3=……..………………… 4=…..…………………… 6=...……………………… Lệnh: ………………… 5=……………………… 7=……………………… Lệnh: ………………… 8=……………………… 7 Lệnh:…………………… PC=…………………….. Instr=………………….. …………………………… Lệnh: ………………… 1= ……………………… 2=.……………………… Lệnh: …..……………… 3=……..………………… 4=…..…………………… 6=...……………………… Lệnh: ………………… 5=……………………… 7=……………………… Lệnh: ………………… 8=……………………… Câu 15. Dựa vào bảng trên hãy xác định giá trị các toán hạng nào được chuyển tiếp từ giai đoạn pipeline của lệnh nào đến giai đoạn pipeline của lệnh nào? ……………………………………………………………………………………………………………………………………………………………. ……………………………………………………………………………………………………………………………………………………………. ……………………………………………………………………………………………………………………………………………………………. ……………………………………………………………………………………………………………………………………………………………. ……………………………………………………………………………………………………………………………………………………………. 4.6 Xung đột điều khiển trong bộ xử lý đường ống. 4.6.1 Bước 1. Chuẩn bị chương trình. Tạo một đề án mới với tên “Bai2-5” trong môi trường MIPSITStudio. Thêm tệp chương trình “Bai2- 5.s” như Hình 14 dưới đây vào đề án và biên dịch nó thành tệp thực hiện tương tự Mục 4.2.1. Giá trị toán hạng t2 được chuyển tiếp từ giai đoạn EX của lệnh add $10, $08, $09 đến giai đoạn EX của lệnh add $12, $10, $11 Bài thí nghiệm Kiến trúc máy tính 2 2010 Khoa Điện tử- Viễn thông Page 13 Hình 14. Chương trình hợp ngữ minh họa xung đột điều khiển. 4.6.2 Bước 2. Mô phỏng bằng đường ống không có chuyển tiếp dữ liệu Mô phỏng chương trình hợp ngữ bằng bộ mô phỏng “mipspipe2000” tương tự Bước 2 của Mục 4.2.2. Gán cùng một giá trị cho 2 thanh ghi t0, t1. Trả lời các câu hỏi. Câu 16. Cần bao nhiêu chu kz đồng hồ, để lệnh rẽ nhánh beq thực hiện xong, tức là khi nào thì giá trị PC thay đổi thành giá trị địa chỉ đích của lệnh beq? ……………………………………………………………………………………………………………………………………………………………. ……………………………………………………………………………………………………………………………………………………………. ……………………………………………………………………………………………………………………………………………………………. ……………………………………………………………………………………………………………………………………………………………. ……………………………………………………………………………………………………………………………………………………………. Câu 17. Lệnh add có được thực hiện không? Cuối cùng, giá trị của thanh ghi t0 là bao nhiêu? ……………………………………………………………………………………………………………………………………………………………. ……………………………………………………………………………………………………………………………………………………………. Câu 18. Ở đây xảy ra vấn đề gì? Đây là loại xung đột gì trong kỹ thuật đường ống? ……………………………………………………………………………………………………………………………………………………………. ……………………………………………………………………………………………………………………………………………………………. ……………………………………………………………………………………………………………………………………………………………. ……………………………………………………………………………………………………………………………………………………………. 4.6.3 Bước 3. Mô phỏng bằng đường ống có chuyển tiếp dữ liệu Mô phỏng chương trình hợp ngữ bằng bộ mô phỏng “mipspipe2000” tương tự Bước 2 của Mục 4.6.2. Tuy nhiên, thay vì nạp tệp mô tả cấu trúc đường ống đơn giản “C:\MipsIT\S-script\s.dit”, hãy chọn cấu trúc đường ống phức tạp trong tệp “C:\MipsIT\Xl-script\xl.dit” (Hình 13). Trả lời các câu hỏi. Câu 19. Cần bao nhiêu chu kz đồng hồ, để lệnh rẽ nhánh beq thực hiện xong, tức là khi nào thì giá trị PC thay đổi thành giá trị địa chỉ đích của lệnh beq? Cần 6 chu kỳ đồng hồ . Lệnh addi được thực hiện , cuối cùng t0 = 3 . Xảy ra hiện tượng xung đột tín hiệu điều khiển khiến lệnh addi được thực hiện 2 lần . Bài thí nghiệm Kiến trúc máy tính 2 2010 Khoa Điện tử- Viễn thông Page 14 ……………………………………………………………………………………………………………………………………………………………. ……………………………………………………………………………………………………………………………………………………………. ……………………………………………………………………………………………………………………………………………………………. ……………………………………………………………………………………………………………………………………………………………. ……………………………………………………………………………………………………………………………………………………………. Câu 20. Lệnh add có được thực hiện không? Cuối cùng, giá trị của thanh ghi t0 là bao nhiêu? Lệnh nop ngay sau lệnh beq được gọi là lệnh loại gì? ……………………………………………………………………………………………………………………………………………………………. ……………………………………………………………………………………………………………………………………………………………. ……………………………………………………………………………………………………………………………………………………………. ……………………………………………………………………………………………………………………………………………………………. 5 Tài liệu tham khảo [1] Ola Bergqvist and Georg Fischer. A Simulation and Development Environment Using Animation for Computer Architecture Education. Version 1.3.0, 1999. [2] Mats Brorsson. MipsIt - A Simulation and Development Environment Using Animation for Computer Architecture Education. Proceedings of The workshop on Computer architecture education. 2002. [3] David A. Patterson and John L. Hennessy. Computer Organization and Design, Fourth Edition: The Hardware/Software Interface. In The Morgan Kaufmann Series in Computer Architecture and Design. Nov 10, 2008 [4] Georg Fischer, Jan Eric Larsson, Mats Brorsson and Tobias Harms, Set of Lab Exercises for Computer Architecture Lecture at Lund University. Sau 5 chu kỳ . Lệnh addi không được thực hiện , cuối cùng t0 = 1 Lệnh nop sau lệnh beq được gọi là stall

Các file đính kèm theo tài liệu này:

  • pdfbai_2_4801.pdf
Tài liệu liên quan