You are on page 1of 6

Lab Report Assignment

I. LÝ THUYẾT
Một vi xử lý đơn giản sẽ bao gồm 2 khối chính đó là Controller và
Datapath.
• Controller có nhiệm vụ điều khiển đường đi của dữ liệu (điều khiển việc
đọc ghi của Register File, …) và điều kiển việc thực hiện tính toán (điều
khiển Opcode của khối ALU, …) trong khối Datapath.
• Datapath chứa các khối cần thiết để thực hiện việc tính toán (Register
File, ALU, Bộ dịch,…) được điều khiển bởi Controller.
II.THỰC HÀNH
Thiết kế một vi xử lý đơn giản dùng để tính toán biểu thức :
D3I3 + D2I2 – D1I1 + D0I0
Trong đó:
• Dx là 4 ký số cuối của MSSV (2551)
• Ix là 4 ký số được nhập lần lượt tại ngõ vào
Các bước thiết kế:

A.Register File 8 thanh ghi 16 bit

Hình 1 - Register file cell 1 bit

Tiến hành ghép nối nhiều RFC để tạo nên Register File 8 thanh ghi 16 bit
có chức năng đọc và
ghi dữ liệu.
Hình 2 - Register File 8 thanh ghi 16 bit

B. ALU có các phép toán cần thiết cho yêu cầu bài toán

C. Bộ dịch trái: Sử dụng Mux và ghép nối dây phù hợp để tạo ra bộ dịch
trái

Hình 3 - Bộ dịch trái

d. Thanh ghi 16 bit: Ghép nhiều thanh ghi 1 bit lại với nhau để được
thanh ghi 16 bit sử dụng
tín hiệu OE (output enable) để cho phép/không cho phép xuất kết quả (sử
dụng tri-state)
Datapath: Thực hiện ghép nối các khối cần thiết của bài toán lại để có
được Datapath

f. Controller: Thiết kế máy trạng thái để điều kiển việc hoạt động các
khối trong Datapath.

ĐỀ Bài: 2I3+5I2-5I1+1I0
S0: IN-> A000: I0
S1: IN-> A001: I1
S2: IN-> A010: I2
S3: IN-> A011: I3
S4: I3 AND I3; >>1 -> A011: I3
S5: I2 AND I2; >>2 -> A101: T0
S6: I2+I0; >>0 -> A010: I2
S7: I1 AND I1; >>2 -> A101: T0
S8: I1+I0; >>0 -> I1
S9: I3+I2; >>0 -> A101: T0
S10: T0-I1; >>0 ->A101: T0
S11: T0+I0; >>0 -> A100 SUM-> OUTPUT
+ Khối nextstate: Mạch tạo trạng thái kế tiếp là mạch tổ hợp phụ thuộc
vào ngõ vào FSM và giá trị trạng thái hiện tại lấy từ bộ nhớ trạng thái
(statememory)

+ Khối statememory (bộ nhớ trạng thái) gồm 2 flipflop để lưu trạng thái
hiện tại của FSM, lấy ngõ vào từ mạch tạo trạng thái kế tiếp.
+ Khối outputlogic: là mạch tổ hợp tạo giá trị ngõ ra tương ứng với trạng
thái hiện tại của FSM.
Từ 3 khối trên ta thiết kế được khối controller:

KẾT QUẢ THỰC HIỆN MẠCH:

Các input: I0=2, I1=3, I2=4, I3=5.


Output cho ra kết quả là : 2I3+5I2-5I1+1I0=47

You might also like