Title | 21520252 - báo cáo lab 1-5 |
---|---|
Course | Tổ chức và cấu trúc máy tính II |
Institution | Trường Đại học Công nghệ thông tin, Đại học Quốc gia Thành phố Hồ Chí Minh |
Pages | 57 |
File Size | 2.7 MB |
File Type | |
Total Downloads | 169 |
Total Views | 328 |
ĐẠI HỌC QUỐC GIA TP. HỒ CHÍ MINHTRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TINKHOA KỸ THUẬT MÁY TÍNHNGUYỄN PHƯỚC HƯNG – 21520252Tổ chức và Cấu trúc Máy tính II/ IT012.TP. HỒ CHÍ MINH, 2022MỤC LỤC4.1. Chuyển đoạn code theo sau sang MIPS và sử dụng MARS để kiểm tra lại kết quả: ......................................
ĐẠI HỌC QUỐC GIA TP. HỒ CHÍ MINH
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN KHOA KỸ THUẬT MÁY TÍNH
NGUYỄN PHƯỚC HƯNG – 21520252
Tổ chức và Cấu trúc Máy tính II/ IT012.M11.1
TP. HỒ CHÍ MINH, 2022
MỤC LỤC
Chương 1. BÁO CÁO LAB01 .......................................................................................................1 1.1. Báo cáo phần thực hành ...................................................................................................1 1.1.1.
Mô phỏng chức năng các cổng luận lý ..........................................................1
1.1.2.
Mô phỏng chức năng các thiết bị lưu trữ ......................................................4
1.2. Báo cáo phần bài tập .........................................................................................................6 1.2.1.
Mô phỏng mạch tổ hợp........................................................................................6
1.2.2.
Mô phỏng mạch tuần tự ....................................................................................7
1.3. Báo cáo phần bài tập bổ sung ........................................................................................7 1.3.1.
Trình bày ngắn gọn chức năng và nguyên lý hoạt động D-Flipflop,
Thanh ghi. ...................................................................................................................................7 1.3.2.
Phân biệt sự khác nhau giữa mạch tổ hợp và mạch tuần tự. ...........7
1.3.3.
Clock( xung nhịp) CPU là gì, các tr ạng thái của clock. .........................8
1.3.4.
Mô phỏng mạch bằng logisim.........................................................................8
Chương 2.
BÁO CÁO LAB02 ................................................................................................ 11
2.1. Báo cáo phần thực hành ............................................................................................. 11 2.1.1.
Mô phỏng ALU .................................................................................................... 11
2.1.2.
Mô phỏng Register Files gồm 4 thanh ghi 8 bit ...................................... 12
2.2. Báo cáo phần bài t ập .................................................................................................... 12 2.2.1.
Cải tiến ALU ........................................................................................................ 12
2.2.2.
Thiết kế lại Register Files .............................................................................. 14
2.3. Báo cáo phần bài t ập Bổ sung .................................................................................. 14
2.3.1.
Phân biết Mux và Decode? Thiết kế mux 4to1 và decode 2to4
bằng các cổng luận lý .......................................................................................................... 14 2.3.2.
Thiết kế lại bộ cộng có chức năng cộng 2 số 8 bit. ............................. 17
2.3.3.
Sinh viên thiết kế mạch có chức năng so sánh hai input 4 bit có
bằng nhau hay không ......................................................................................................... 17 Chương 3.
BÁO CÁO LAB03 ................................................................................................ 18
3.1. Báo cáo phần thực hành ............................................................................................. 18 3.1.1.
Mô phỏng và cho biết chức năng của một số lệnh MIPS..................18
3.1.2.
Mô phỏng các chương trình và cho biết ý nghĩa ................................. 19
3.2. Báo cáo phần bài t ập .................................................................................................... 20 3.2.1.
Nhập vào một chuỗi, xuất ra cửa sổ I/O theo từng yêu cầu ................ 20
3.3. Báo cáo phần bài t ập bổ sung .................................................................................. 22 3.3.1.
Assembly là gì? Trình bày các quá trình một chương trình viết
bằng ngôn ngữ C/C++ được thực hiện trên máy tính? ........................................ 22 3.3.2.
Trình bày các kiểu dữ liệu trong MIPS32 và kích thước của từng
kiểu dữ liệu. ............................................................................................................................ 23 3.3.3.
Trình bày cấu trúc bộ nhớ của một chương trình C++(layout
memory). ................................................................................................................................. 23 3.3.4.
Viết chương trình hợp ngữ nhập vào ba số a, b, c. Kiểm tra và in
ra số lớn nhất, số bé nhất(không dùng vòng lặp) .................................................. 23 3.3.5.
Viết chương trình hợp ngữ nhập vào số nguyên a, b. In ra kết quả
của phép cộng, trừ nhân, chia ......................................................................................... 27 Chương 4.
BÁO CÁO LAB04 ................................................................................................ 30
4.1. Báo cáo phần thực hành ............................................................................................. 30
4.1.1.
Chuyển đoạn code theo sau sang MIPS và sử dụng MARS để kiểm
tra lại kết quả: ........................................................................................................................ 30 4.2. Báo cáo phần bài tập .................................................................................................... 31 4.2.1.
Nhập vào một ký tự, xuất ra cửa sổ I/O của MARS theo t ừng yêu
cầu sau 31 4.3. Báo cáo phần bài tập bổ sung ..................................................................................... 36 4.3.1.
Con trỏ là gì? Chức năng của con trỏ? Mảng là gì? Chức năng của
mảng.
36
4.3.2.
Thủ t ục là gì? Trình bày luồng hoạt động của một thủ tục trong
MIPS
37
4.3.3.
Viết chương trình hợp ngữ nhập vào số nguyên a, b. In ra kết quả
của phép cộng, trừ nhân, chia. Theo cấu trúc như bên dưới ............................ 37 4.3.4. Chương 5.
Viết chương trình in ra N(N>2) số fibonaci đầu tiên ........................ 40 BÁO CÁO LAB05 ................................................................................................ 43
5.1. Báo cáo phần bài t ập .................................................................................................... 43 5.1.1.
Nhập một mảng các số nguyên n phần tử xuất ra cửa sổ I/O của
MARS theo t ừng yêu cầu sau........................................................................................... 43 5.1.2.
Chuyển đổi code ................................................................................................ 46
5.2. Báo cáo phần bài t ập bổ sung .................................................................................. 47 5.2.1.
Viết chương trình hợp ngữ nhập vào N và mang gồm N phần tử.
In ra mảng đảo ngược của mảng vừa nhập .............................................................. 47
DANH MỤC HÌNH Hình 1.1.1.1 AND ...............................................................................................................................1 Hình 1.1.1.2 OR ..................................................................................................................................1 Hình 1.1.1.3 NOT ...............................................................................................................................2 Hình 1.1.1.4 XOR................................................................................................................................2 Hình 1.1.1.5 XNOR ............................................................................................................................3 Hình 1.1.1.6 NAND............................................................................................................................3 Hình 1.1.1.7 NOR...............................................................................................................................4 Hình 1.1.2.1 D flipflop .....................................................................................................................4 Hình 1.1.2.2 D latch ..........................................................................................................................5 Hình 1.1.2.3 Thanh ghi....................................................................................................................5 Hình 1.2.1.1 Mạch tổ hợp ..............................................................................................................6 Hình 1.2.2.1 Mạch tuần tự.............................................................................................................7 Hình 1.3.4.1 Mạch tổ hợp ..............................................................................................................8 Hình 1.3.4.2 Mạch t ổ hợp ..............................................................................................................9 Hình 1.3.4.3 Thanh ghi 16 bit( 4 thanh 4 bit) .................................................................... 10 Hình 2.1.1.1 Cấu t ạo ALU ............................................................................................................ 11 Hình 2.1.2.1 Cấu t ạo Register Files ........................................................................................12 Hình 2.2.1.1 Cấu t ạo ALU cải tiến ............................................................................................ 13 Hinh 2.2.2.1 Cấu t ạo Register Files(2) .................................................................................. 14 Hình 2.3.1.1 Cấu t ạo Mux4to1 .................................................................................................. 15 Hình 2.3.1.2 Cấu t ạo Decode2to4............................................................................................ 16 Hình 2.3.2.1 Bộ cộng 8bit ........................................................................................................... 17 Hình 2.3.3.1 Bộ so sánh 4bit...................................................................................................... 17 Hình 3.2.1.1 Lưu đồ thuật toán 3.1 ........................................................................................ 20 Hình 3.3.4.1 Lưu đồ thuật toán tìm max a,b,c ................................................................... 24 Hình 3.3.5.1 Lưu đồ thuật toán tính t ổng hiệu tích thương........................................ 27 Hình 4.2.1.1 Lưu đồ thuật toán chương trình kiểm tra ký tự .................................... 32
Hình 4.3.3.1 Lưu đồ chương trình tính tổng hiệu tích thương.................................. 38 Hình 4.3.4.1 Lưu đồ thuật toán xuất n số fibonaci đầu tiên ........................................ 40 Hình 5.1.1.1 Lưu đồ chương trình thực hành LAB05 .................................................... 43 Hình 5.2.1.1 Lưu đồ thuật toán chương trình đảo xâu .................................................. 47
DANH MỤC BẢNG Bảng 1.1.1.1 AND...............................................................................................................................1 Bảng 1.1.1.2 OR..................................................................................................................................1 Bảng 1.1.1.3 NOT...............................................................................................................................2 Bảng 1.1.1.4 XOR ...............................................................................................................................2 Bảng 1.1.1.5 XNOR ............................................................................................................................3 Bảng 1.1.1.6 NAND ...........................................................................................................................3 Bảng 1.1.1.7 NOR...............................................................................................................................4 Bảng 1.2.1.1 Bảng chân trị ............................................................................................................6 Bảng 1.2.2.1 Bảng giá trị ................................................................................................................7 Bảng 1.3.4.1 Bảng giá trị mạch tổ hợp .....................................................................................9 Bảng 1.3.4.2 Bảng giá trị mạch tổ hợp .....................................................................................9 Bảng 2.1.1.1 Cấu t ạo ALU............................................................................................................ 11 Bảng 2.1.2.1 Bảng chân trị Register Files ............................................................................ 12 Bảng 2.2.1.1 Bảng chân trị ALU cải tiến ............................................................................... 13 Bảng 2.3.1.1 Bảng chân trị Mux4to1 ..................................................................................... 15 Bảng 2.3.1.2 Bảng chân trị Decode2to4 ............................................................................... 16 Bảng 3.1.1.1 Chức năng một số câu lệnh MIPS ................................................................. 18 Bảng 3.1.2.1 Ví dụ 1.......................................................................................................................19 Bảng 3.1.2.2 Ví dụ 2.......................................................................................................................19 Bảng 3.1.2.3 Ví dụ 3.......................................................................................................................19 Bảng 3.1.2.4 Ví dụ 4.......................................................................................................................20 Bảng 3.2.1.1 Chương trình 3.1 ................................................................................................. 21 Bảng 3.3.4.1 Chương trình tìm max a,b,c ............................................................................ 25 Bảng 3.3.5.1 Chương trình tính tổng hiệu tích thương................................................. 27 Bảng 4.1.1.1 Chuyển IF-ELSE sang MIPS ............................................................................. 30 Bảng 4.1.1.2 Chuyển vòng lặp for sang MIPS.....................................................................31 Bảng 4.2.1.1 Chương trình kiểm tra và xuất ký tự .......................................................... 33
Bảng 4.3.3.1 Chương trình tính tổng hiệu tích thương 2 số lớn ............................... 38 Bảng 4.3.4.1 Chương trình xuất n số fibonaci đầu tiên ................................................. 41 Bảng 5.1.1.1 Chương trình thực hành LAB05 ................................................................... 44 Bảng 5.1.2.1 Chuyển đổi code ................................................................................................... 47 Bảng 5.2.1.1 Chương trình đảo xâu........................................................................................47
Chương 1. BÁO CÁO LAB01 1.1. Báo cáo phần thực hành 1.1.1. Mô phỏng chức năng các cổng luận lý Cổng AND Hình 1.1.1.1 AND
Bảng 1.1.1.1 AND A 0 0 1 1
B 0 1 0 1
F 0 0 0 1
Cổng OR Hình 1.1.1.2 OR
Bảng 1.1.1.2 OR A 0 0 1 1
B 0 1 0 1
1
F 0 1 1 1
Cổng NOT Hình 1.1.1.3 NOT
Bảng 1.1.1.3 NOT A 0 1
F 1 0
Cổng XOR Hình 1.1.1.4 XOR
Bảng 1.1.1.4 XOR A 0 0 1 1
B 0 1 0 1
2
F 0 1 1 0
Cổng XNOR Hình 1.1.1.5 XNOR
Bảng 1.1.1.5 XNOR A 0 0 1 1
B 0 1 0 1
F 1 0 0 1
Cổng NAND Hình 1.1.1.6 NAND
Bảng 1.1.1.6 NAND A 0 0 1 1
B 0 1 0 1
3
F 1 1 1 0
Cổng NOR Hình 1.1.1.7 NOR
Bảng 1.1.1.7 NOR A 0 0 1 1
B 0 1 0 1
F 1 0 0 0
1.1.2. Mô phỏng chức năng các thiết bị lưu trữ • D flipflop Hình 1.1.2.1 D flipflop
Bảng 1.1.2.1 D flipflop CLK ↑ ↑ ↑ ↑
D 0 0 1 1 0 0 1 1
Q 0 1 0 1 0 1 0 1
4
Q+ 0 1 0 1 0 0 1 1
• D latch
Hình 1.1.2.2 D latch
Bảng 1.1.2.2 D latch E 0 0 0 0 1 1 1 1
D 0 0 1 1 0 0 1 1
Q 0 1 0 1 0 1 0 1
Q+ 0 1 0 1 0 0 1 1
Khi sữ dụng D latch trong logisim, ta phải chỉnh attribute trigger sang High level để mô tả đúng cách hoạt động của D latch
• Thanh ghi Hình 1.1.2.3 Thanh ghi
5
Bảng 1.1.2.3 Bảng giá trị của thanh ghi CLK ↑ ↑ ↑ ↑
D 0 0 1 1 0 0 1 1
Q 0 1 0 1 0 1 0 1
Q+ 0 1 0 1 0 0 1 1
1.2. Báo cáo phần bài tập 1.2.1. Mô phỏng mạch tổ hợp Hình 1.2.1.1 Mạch t ổ hợp
Bảng 1.2.1.1 Bảng chân trị A 0 0 0 0 1 1 1 1
B 0 0 1 1 0 0 1 1
C 0 1 0 1 0 1 0 1
6
F 0 1 0 1 0 1 1 1
1.2.2. Mô phỏng mạch tuần tự Hình 1.2.2.1 Mạch tuần tự
Bảng 1.2.2.1 Bảng giá trị CLK 0 1
A_o* A_o A
B_o* B_o B
C_o* C_o C
D_o* D_o D
1.3. Báo cáo phần bài tập bổ sung 1.3.1. Trình bày ngắn gọn chức năng và nguyên lý hoạt động DFlipflop, Thanh ghi. Trả lời: -
D-Flipflop là thiết bị điện tử có khả năng lưu trữ một bit nhị phân và có thể thay đổi được nhờ CLK(clock)
-
Trong khi ngõ vào quyết định ngõ ra sẽ là gì thì, CLK(clock) sẽ quyết định khi nào có sự thay đổi đó, cụ thể khi xung CLK tác động theo cạnh lên thì ngõ ra sẽ bằng ngõ vào và khi xung tác động theo cạnh xuống thì ngõ ra không thay đổi. 1.3.2. Phân biệt sự khác nhau giữa mạch tổ hợp và mạch tuần tự.
Trả lời: Mạch tổ hợp là mạch mà đầu ra chỉ phụ thuộc vào đầu vào hiện t ại
7
Mạch tuần t ự là mạch mà đầu ra phụ thuộc vào đầu vào hiện tại và đầu vào quá khứ 1.3.3. Clock( xung nhịp) CPU là gì, các trạng thái của clock. Trả lời: Clock(xung nhịp) CPU là một mạch tạo xung nhằm tạo mối quan hệ thời gian để cho phép các tác vụ có thể thực hiện một cách tuần tự, trước sau hoặc đồng thời cùng lúc, nó như một “đồng hồ” cho phép máy tính có thể tham chiếu thời gian để hoạt động chính xác Clock có hai tr ạng thái là cạnh lên và cạnh xuống. 1.3.4. Mô phỏng mạch bằng logisim a) (𝐴𝐵𝐶 + 𝐴𝐶 + 𝐴𝐵 + 𝐵𝐶)𝐶 Biến đổi (𝐴𝐵𝐶 + 𝐴𝐶 + 𝐴𝐵 + 𝐵𝐶)𝐶 = 𝐴𝐵𝐶 + 𝐴𝐶 + 𝐴𝐵𝐶 + 𝐵𝐶 = 𝐴𝐶 (𝐵 + 1) + 𝐵𝐶 (𝐴 + 1) = 𝐴𝐶 + 𝐵𝐶 = 𝐶(𝐴 + 𝐵) Hình 1.3.4.1 Mạch t ổ hợp
8
Bảng 1.3.4.1 Bảng giá trị mạch tổ hợp A 0 0 0 0 1 1 1 1
B 0 0 1 1 0 0 1 1
C 0 1 0 1 0 1 0 1
F 0 0 0 1 0 1 0 1
b) (AD + ABC + ABD + ACD) A + A B + C D Biến đổi (AD + ABC + ABD + ACD) 𝐴 + 𝐴B + 𝐶 D = 𝐴𝐵 + 𝐶 𝐷 Hình 1.3.4.2 Mạch t ổ hợp
Bảng 1.3.4.2 Bảng giá trị mạch tổ hợp A 0 0 0 0 0 0 0 0 1 1 1 1
B 0 0 0 0 1 1 1 1 0 0 0 0
C 0 0 1 1 0 0 1 1 0 0 1 1
9
D 0 1 0 1 0 1 0 1 0 1 0 1
F 0 1 0 0 1 1 1 1 0 1 0 0
1 1 1 1
1 1 1 1
0 0 1 1
0 1 0 1
0 1 0 0
1) Thi...