39
BÁO CÁO TỔ CHỨC MÁY TÍNH GV: Nhóm 9: Ths. HỒ VIẾT VIỆT HOÀNG VĂN QUỐC NGUYỄN THỊ NGỌC LINH NGUYỄN ĐÌNH SƠN LÊ THANH HÙNG NGUYỄN NGỌC GIÁP

To chuc-may-tinh

Embed Size (px)

Citation preview

Page 1: To chuc-may-tinh

BÁO CÁOTỔ CHỨC MÁY TÍNH

GV: Nhóm 9: Ths. HỒ VIẾT VIỆT HOÀNG VĂN QUỐC NGUYỄN THỊ NGỌC LINH NGUYỄN ĐÌNH SƠN LÊ THANH HÙNG NGUYỄN NGỌC GIÁP

Page 2: To chuc-may-tinh

LAB1:DESIGN A MIPS 32 BY 32 REGISTER FILE

Page 3: To chuc-may-tinh

YÊU CẦU THIẾT KẾ Có thể đọc 1 lúc 2 register Không cần tín hiệu điều khiển đọc Register luôn luôn bằng 0 Chỉ có thể ghi đối với 1 register Cần tín hiệu điều khiển ghi

Page 4: To chuc-may-tinh

NGUYÊN TẮC THIẾT KẾ Cấu trúc đơn giản và có quy tắc Nhỏ gọn và xử lý nhanh Thiết kế sự đòi hỏi sự thỏa hiệp tốt

Page 5: To chuc-may-tinh

I.GIỚI THIỆU REGISTER FILE: Cấu tạo 1 Register File bao gồm:- 32 thanh ghi 32 bit, riêng thanh ghi đầutiên (Reg0) luôn mang giá trị 0, chỉ có thể đọc mà không thể ghi .- Có 4 ngõ vào gồm 2 ngõ vào chọn thanhghi cần đọc ( Read register 1 & ReadRegister2),1 ngõ vào để chọn thanh ghi chothao tác ghi ( Write Register) và 1 ngõ vào chứa dữ liệu cần ghi vào thanh ghi (WriteData)- Có 2 ngõ ra dữ liệu 32 bit ( Read Data 1& Read Data 2)- 1 ngõ vào để điều khiển quá trình ghi (RegWrite)

Page 6: To chuc-may-tinh

II.SƠ ĐỒ CHI TIẾT REGISTER FILE Khối 1: Decoder

Khối 2: Register

Khối 3: Multiplexor

Page 7: To chuc-may-tinh

III. THIẾT KẾ CÁC KHỐI:1. DECODER:

-Decoder(bộ giải mã 5:32) có nhiệmvụ giải mã 5 bit ngõ vào Write Registerdưới sự điều khiển của RegWrite để lựa chọn thanh ghi được yêu cầu cho quá trình ghi.

-Để thiết kế bộ giải mã 5:32 ta có thểxây dựng dễ dàng hơn từ các bộ giải mã 2:4 và 3:8

Page 8: To chuc-may-tinh

+ Mạch giải mã 2:4

2->4AB

Y0Y1Y2Y3

Sơ đồ khối

Bảng chân trị A B

Y0 Y1 Y2 Y3

0 0 1 0 0 0 0 1 0 1 0 0 1 0 0 0 1 0 1 1 0 0 0 1

Sơ đồ thiết kế

Page 9: To chuc-may-tinh

+Mạch giải mã 3:8

3->8

Y0Y1Y2Y3Y4Y5Y6Y7Y8

A

B

C

A B C Y0 Y1 Y2 Y3 Y4 Y5 Y6 Y7 0 0 0 1 0 0 0 0 0 0 0 0 0 1 0 1 0 0 0 0 0 0 0 1 0 0 0 1 0 0 0 0 0 0 1 1 0 0 0 1 0 0 0 0 1 0 0 0 0 0 0 1 0 0 0 1 0 1 0 0 0 0 0 1 0 0 1 1 0 0 0 0 0 0 0 1 0 1 1 1 0 0 0 0 0 0 0 1

Sơ đồ khối

Bảng chân trị

Sơ đồ thiết kế

Page 10: To chuc-may-tinh

+Mạch giải mã 5:32 Sơ đồ thiết kế dựa trên các bộ giải mã 2:4 và 3:8

Page 11: To chuc-may-tinh

2. KHỐI 32 REGISTERS:+ Ở đây ta sử dụng thanh ghi 32bitscó sẵn trong Logisim

Register Data OutData In

Write Enable

Page 12: To chuc-may-tinh

3. KHỐI MULTIPLEXOR:

+Mux 2-1(32bits):

A

B

S

M

Sơ đồ khối Sơ đồ thiết kế

S M0 A1 B

Bảng chân trị

Page 13: To chuc-may-tinh

+Mux 4-1(32bits): Thiết kế dựa trên Mux2-1(32bits)

AB

C

D

M

S1 S0S1 S0 M0 0 A0 1 B1 0 C1 1 D

Page 14: To chuc-may-tinh

+Mux 8-1(32bits): Thiết kế dựa trên 2 bộ Mux 4-1(32bits) và Mux 2-1(32bits)

Page 15: To chuc-may-tinh

32 thanh ghi ngõ vào

Mux8-1

Mux8-1

Mux8-1

Mux8-1

Mux4-1

Thanh ghi được chọn ở ngõ ra

+Mux 32-1(32bits) 5 bits Select

Page 16: To chuc-may-tinh

IV. TẠO REGISTER FILE TỪ CÁC KHỐI ĐÃ THIẾT KẾ:

Page 17: To chuc-may-tinh

LAB 2 : DESIGN A MIPS 32-BIT ALU

Page 18: To chuc-may-tinh

Yêu Cầu Thiết Kế :

- Thực hiên được phép toán : Add, Sub, Xor, Set Less Than.- Cờ lệnh : zero, carry, overflow.

Cấu Tạo khối ALU:- Tín hiệu điều khiển 2 bit- Hai ngõ vào 32 bit.- Một ngõ ra 32 bit.- Cờ ngõ ra : zero, carry, overflow

Page 19: To chuc-may-tinh

II.Thiết kế1. Khối phép toán1.1.Mạch Add & Sub

Input Output

a b Cin sum Cout0 0 0 0 00 0 1 1 00 1 0 1 00 1 1 0 11 0 0 1 01 0 1 0 11 1 0 0 11 1 1 1 1

Input Outputa b Cin Sub Cout0 0 0 0 00 0 1 1 10 1 0 1 10 1 1 0 11 0 0 1 01 0 1 0 01 1 0 0 01 1 1 1 1

Sum= a xor b xor cin Cout = ab + cin(a+b)

Sub= a xor b xor cin Cout = nota.b + cin(nota +b)

Page 20: To chuc-may-tinh

Add 1bit Sub 1 bit

Page 21: To chuc-may-tinh

32 bit

Page 22: To chuc-may-tinh

1.2.Mạch Xor 32 bit

A B A xor B

0 0 0

0 1 1

1 0 1

1 1 0

Page 23: To chuc-may-tinh

1.3.Set Less Than

A < B Set 1A>=B Set 0

A - B

0 1

A>=B A<B

Set 0 Set 1

Page 24: To chuc-may-tinh

Kiểm tra bit dấu của A - B

Overflow Result 31 SLT0 0 00 1 11 0 11 1 0

Page 25: To chuc-may-tinh

2.Cờ Lệnh

Phép Toán Zero Carry Overflow

Add Y Y Y

Sub Y Y Y

Xor Y N N

SLT Y N N

Page 26: To chuc-may-tinh

2.1. Overflow:

Khi thực hiện phép cộng hoặc trừ với số có dấu => tràn có dấu cờ Overflow được set 1.

Page 27: To chuc-may-tinh

2.2. Carry

-Khi thực hiện phép cộng hoặc trừ số không dấu => tràn (có nhớ /mượn từ bit MSB) Cờ carry set lên 1

Page 28: To chuc-may-tinh

- Khi kết quả các phép toán bằng 0 => cờ zero set 1.- Dùng lệnh nor tất cả các bit từ 0 đến 31 của kết quả để kiểm tra cờ Zero

2.3. Cờ Zero

Page 29: To chuc-may-tinh

3. Các khối hỗ trợ3.1. Multiplexor 2-1 ( 1 bit)

2 bit vào => 1 bit ra

Page 30: To chuc-may-tinh

4 bit vào => 2 bit ra

Ứng dụng : điều khiển các cờ hiển thị theo tín hiệu điều khiển.

Phép Toán Zero Carry Overflow

Add Y Y Y

Sub Y Y Y

Xor Y N N

SLT Y N N

Page 31: To chuc-may-tinh

3.2. Multilexor 2-1 ( 32 bit)

Page 32: To chuc-may-tinh

Ứng dụng : điều khiển hiển thị kết quả của các phép toán theo tín hiệu điều khiển vào

Tín hiệu điều khiển

Phép Toán

00 Add

10 Sub

01 Xor

11 SLT

Na Linh
Page 33: To chuc-may-tinh

ALU 32 BITIII.Kết quả

Page 34: To chuc-may-tinh

CÁM ƠN THẦY VÀ CÁC BẠN ĐÃ LẮNG NGHE VÀ

THEO DÕI

Page 35: To chuc-may-tinh

CỜ NEGATIVE Cờ Negative: gán cờ Negative bằng bit thứ 31 của kết quả. + Bit thứ 31 = 1 (kết quả âm): cờ được set + Bit thứ 31 = 0 (kết quả dương): cờ không được set

Page 36: To chuc-may-tinh

2.1. Cờ Zero Cờ zero: được set khi kết quả bằng 0 Cờ overflow (tràn khi thực hiện cộng trừ với số có dấu): được set khi xảy ra

tràn Cờ carryout (tràn khi thực hiện cộng trừ với số không dấu): xảy ra khi có

nhớ (mượn) từ MSB Cờ negative: được set nếu kết quả âm

2.Cờ Lệnh

Page 37: To chuc-may-tinh

CỜ OVERFLOW Overflow (tràn có dấu –xảy ra khi kết quả phép toán vượt quá dải giới hạn

tính toán).

Vì vậy, có thể phát hiện overflow bằng cách so sánh cin và cout của bit thứ 31, nếu trái dấu thì xảy ra overflow

Page 38: To chuc-may-tinh

Cin Cout Overflow0 0 00 1 11 0 11 1 0

Overflow = Cout[31] xor Cint[31]

Page 39: To chuc-may-tinh

CỜ CARRYOUT Chỉ xét đối với phép cộng trừ. Cờ carry chính là cout của phép cộng hoặc phép trừ.