SU DUNG VERILOG THIET KE MACH NHAN S BIT Instructor: PHD.Khoa Pham Van... Figure 11.8 Hardware Implementation of Unsigned Binary Multiplication... verilog HDL Verilog HDL là một chuẩn
Trang 1
SU DUNG VERILOG THIET
KE MACH NHAN
S BIT
Instructor: PHD.Khoa Pham Van
Trang 2Thành Viên
Trang 301 Mạch nhân 2 số (
Trang 8Figure 11.8 Hardware Implementation of Unsigned Binary Multiplication
Trang 9Số bịnhân M = 0110 (6) S6 nhan Q= 0101 (5) Tich = (30)
Trang 10VERILO
Q2 °
Trang 11verilog HDL
Verilog HDL là một chuẩn "ngôn ngữ
mô tả phần cứng" của IEEE, là một
ngôn ngữ dạng text thuần túy được
sử dụng để mô tả các mạch Số
(thậm chí các mạch Số này có thể
được hiện thực thành phần cứng)
Trang 14Multiple 8bit
by Wallace Tree
algorithm
Trang 15Half Adder (HA) Implementation
output Cout, Sum;
Figure 3.1 Half Adder (HA) Implementation
Trang 16Full Adder (FA) Implementation
output Sum, Cout;
Figure 3.3 Full Adder (FA) Implementation
ha hal (gi, tempi, A, B);
ha ha2 (g2, Sum, templ, Cin);
or o1, (Couk, gly 2);
Trang 17Full Adder (FA) Implementation
module fulladd (Cin, x, y, s, Cout):
Trang 21
Mach nhan 4 bit Wallace tree
module PP (P3, P2, Pi, PO, X, Y); |hodule array4 (X, Y, Z):
// Partial Product Generation wire [2:0] carry3,carry2,carryl;
and pp1(P0O[3], X[3], Y[0]); wire [2:0] sum3,sum2,suml;
and pp2(P0[2], XL2], Y[0]);
and pp3(P0[1], X[1], Y[0]); ha HAI (carryl[2],suml[2],P1[2],PO[3]) ha HA2 (cCarrvyl[1],suml[1],P1[1],PO[2]): :
and pp4(PO[0], x{0], Y[0]); ha HA3 (carryl[0],sum1[0],P1[0],P0[1]);:
and pp5(P1[3], X[3], Y[1]); fa FAl (carry2[2],sum2[2],P2[2],P1[3],carryl[2]):;
and pp6(P1[2], X[2], Y[1]); fa FA2 (carry2[1],sum2[1],P2[1],suml[2],carryl[1]);
and pp7(P1[1], x11], Y[E1l)› fa FA3 (carry2[0],sum2[0],P2[0], suml[1],carrv1l[0]): and pp8(P1[0], x[0], Y[1]); fa FA4 (carry3[2],sum3[2],P3[2],P2[3],carrvy2[2]):
fa FA5 (carry3[1],sum3[1],P3[1], sum2 [2], carry2[1]) :
and pp9(P2[3], X{3], Y[2]); fa FA6 (carry3[0],sum3[0],P3[0],sum2[1],carry2[0]);
and pp10(P2L2], X[2], Y[2]); // Generate lower product bits YBITS
and pp11(P2[1], X[1]1, Y[2]); buf bl(Z[0], P0[0]):;
and pp12(P2[0]1, X[0], Y[2]); buf b2(Z[1], suml[0]);
and pp13(P2[3], X[3], Y[3]); bu£f b53(Z[21, sum2[0]);
Trang 22Thuc hién mach nhan 8 bit
Trang 23
module add_8 bit (X,Y,2Z);
Trang 24module add 12 bit (X,Y,Z);
Trang 25assign temp2 ={4'b0O,q2[7:0]};
assign temp3 ={q3[7:0],4'bO};
add 12 bit z6é(temp2,temp3,q5);
assign temp4={4'b0O,q4[7:0]};
// stage 2 adder
add 12 bit z7(temp4,q5,q6);
// final output assignment
assign Z[3:0]=q0[3:0];
assign Z[15:4]=q6[11:0];
endmodule
4 BO NHAN 4 BIT [| MACH NHAN 8 BIT
Trang 2603
MO PHONG
TESTBENCH
Trang 27// Wait 100 ns for global reset to finish
// Wait 100 ns for global reset to finish
endmodule
Trang 28module test; ari Ÿ q ¡| b »p% 1.00us ~) Ge J Re-aunch
Trang 30Kién truc
may tinh 8-
bit
Trang 314 _ 1 000 Result = Operand] + Operand2 Opcode(2:0) Result(15:0) 2 001 Result = Operand] - Operand2
R) 010 Result = Operandl * Operand2 Operand 1 (7:0) — —— ——— _ fiag C 4 011 Result = Operand] & Operand2 Operan d2 (7:0) fl ag 7 5 100 Result = Operand] | Operand2
Trang 32BỘ xử lý trung tâm
Intel 8008 Motorola 68000
Trang 33May tinh 8-bit ( vi diéu khién 8
bit)
8051
MICROCONTROLLER
Trang 35TAI LIEU THAM KHAO
Trang 36Nhom chung em cam
oen thay va cac ban
da lang nghe
CREDITS: This presentation template was created by Slidesgo, including icons by Flaticon and infographics & images by
Freepik