CHIP KIDD

[FPGA] Verilog : 4bit Full adder (구조적 모델링, 데이터 flow 모델링) 본문

반도체/FPGA - Verilog

[FPGA] Verilog : 4bit Full adder (구조적 모델링, 데이터 flow 모델링)

쑨야미 2021. 4. 2. 14:47

 

 

위아래 덧샘 후 led 전등
module fadder(
    input x,
    input y,
    input cin,
    output sum,
    inout cout
    );
    
    wire s0, co0, co1;
    
    hadder ha0 (x,y, s0, co0);
    hadder ha1 (cin, s0, sum, co1);
    or u0 (cout, co0, co1);
    
    //assign sum = x^y^cin;
    //assign cout = (x&y)|(x&cin)|(y&cin);
    
     
endmodule

module fadder_4_bit(Cin, X, Y, Sum,Cout);
    output Cout;
    output [3:0]Sum;
    input Cin;
    input [3:0]X,Y;
    
    wire c0,c1,c2;
    
    fadder adder0(X[0], Y[0], Cin, Sum[0], c0);
    fadder adder1(X[1], Y[1], c0, Sum[1], c1);
    fadder adder2(X[2], Y[2], c1, Sum[2], c2);
    fadder adder3(X[3], Y[3], c2, Sum[3], Cout);
       
    
endmodule

위는 구조적 모델링, 직관적이다. half adder 를 시작으로 단계적으로 full adder -> 4bit full adder 제작, 하지만 입력수가 증가하면 복잡해지는 단점존재.

,assign 으로 주석친 부분은 dataflow 모델링