Tuesday, May 9, 2017

Verilog Program for 8-bit Carry Look Ahead Adder

module cla_8bit(a,b,cin,sum,cout);
    input [7:0]a,b;
    input cin;
    output [7:0]sum;
    output cout;
    //assign cin=1'b0;
    wire p0,p1,g0,w0;
    and (g0,a[0],b[0]);
    xor (p0,a[0],b[0]);
    and (w0,p0,cin);
    or (cout,g0,w0);
    xor (p0,a[0],b[0]);
    xor (p1,a[1],b[1]);
    xor (p2,a[2],b[2]);
    xor (p3,a[3],b[3]);
    xor (p4,a[4],b[4]);
    xor (p5,a[5],b[5]);
    xor (p6,a[6],b[6]);
    xor (p7,a[7],b[7]);
xor (sum[0],p0,cin);
xor (sum[1],p1,c1);
xor (sum[2],p2,c2);
xor (sum[3],p3,c3);
xor (sum[4],p4,c4);
xor (sum[5],p5,c5);
xor (sum[6],p6,c6);
xor (sum[7],p7,cout);
endmodule;

No comments:

Post a Comment