You are on page 1of 3

BÁN TỔNG

Module bt(C,S,a,b);
Input a,b;
output C,S;

Assign C = a&b;
Assign S = a^b;
Endmodule

TỔNG TOÀN PHẦN


Module ttp(C,S,x,y,z);
Input x,y,z;
Output C,S;

Assign C = y&z | x&z | x&y;


Assign S = x&~y&~z | ~x&~y&z | x&y&z | x&y&~z;
endmodule

BÁN TRỪ
module and2 (D,B,x,y);
input x,y;
output D,B;
assign D = x ^ y;
assign B = ~x & y;
Endmodule

TRỪ TOÀN PHẦN


module and2 (D,B,x,y,z);
input x,y,z;
output D,B;
assign D = x ^ y ^ z;
assign B = ~x & y | z & (~x | y);
Endmodule

TÁCH KÊNH( 1 đầu vào, 4 đầu ra, 2 đầu điều khiển)


module tk14(Y0, Y1, Y2, Y3, X, S1, S0);
input X, S0, S1;
output Y0, Y1, Y2, Y3;

assign Y0 = ~X & ~S0 & ~S1;


assign Y1 = ~X & ~S0 & S1;
assign Y2 = ~X & S0 & ~S1;
assign Y3 = ~X & S0 & S1;
Endmodule
GHÉP KÊNH
module gk81(Y,s,d,enbl);
input[7:0]d;
input[2:0]s;
input enbl;
output Y;
assign Y = (d[0] & ~s[0] & ~s[1] & ~s[2] & enbl) |(d[1] & ~s[0] & ~s[1] & s[2] & enbl) |
(d[2] & ~s[0] & s[1] & ~s[2] & enbl) | (d[3] & ~s[0] & s[1] & s[2] & enbl) | (d[4] &
~s[0] & ~s[1] & s[2] & enbl) | (d[5] & s[0] & ~s[1] & s[2] & enbl) | (d[6] & ~s[0] & s[1]
& s[2] & enbl) | (d[7] & s[0] & s[1] & s[2] & enbl);
Endmodule

MẠCH GIẢI MÃ
module decoder_2to4(a,b,q1,q2,q3,q4);
input a,b;
output q1,q2,q3,q4;

assign q1=~a&~b;
assign q2=~a&b;
assign q3=a&~b;
assign q4=a&b;

endmodule

module decoder_3to8(a, b, c, q1, q2, q3, q4, q5, q6, q7, q8);

input a, b, c;
output q1, q2, q3, q4, q5, q6, q7, q8;

assign q1=~a&~b&~c;
assign q2=~a&~b&c;
assign q3=~a&b&~c;
assign q4=~a&b&c;
assign q5=a&~b&~c;
assign q6=a&~b&c;
assign q7=a&b&~c;
assign q8=a&b&c;

endmodule

MÃ HÓA ( 8 đầu vào, 3 đầu ra)


Module mh83(y,a,en);
Input en;
Input [7:0]a;
Output[2:0]y;

Assign y[2] = a[4] | a[5] | a[6] | a[7] | & en;


Assign y[1] = a[2] | a[3] | a[6] | a[7] | & en;
Assign y[0] = a[1] | a[3] | a[5] | a[7] | & en;
Endmodule

MẠCH SO SÁNH
Module ss(Y0,Y1,Y2,a,b);
Input a,b;
Output Y0,Y1,Y2;

Assign Y0 = ~a&b
Assign Y1 = ~(a^b)
Assign Y2 = a&~b
endmodule

You might also like