본문 바로가기

Verilog/HDLbits

[HDLBits] Adder100i

1. 문제 및 설명

  • 100개의 FA를 인스턴스화 하여 100비트 이진 리플 캐리 덧셈기를 만드시오.
    1. 이 덧셈기는 두 개의 100비트 숫자와 Cin을 받아 100비트의 Sum과 1비트 Cout을 출력한다.
     

2. 모듈 정의

module top_module( 
    input [99:0] a, b,
    input cin,
    output [99:0] cout,
    output [99:0] sum );

 

 

 

3. 답

module top_module( 
    input [99:0] a, b,
    input cin,
    output [99:0] cout,
    output [99:0] sum );
    
    FA i0 [99:0] (a, b, {cout[98:0], cin}, cout[99:0], sum);

endmodule

module FA(input a, input b, input cin, output cout, output sum);
	
    assign sum = a^b^cin;
    assign cout = a&b | b&cin | a&cin;
    
endmodule

'Verilog > HDLbits' 카테고리의 다른 글

[HDLBits] Kmap1  (0) 2025.12.10
[HDLBits] Bcdadd100  (0) 2025.12.07
[HDLBits] Popcount255  (0) 2025.12.07
[HDLBits] Vector100r  (0) 2025.12.07
[HDLBits] Gates100  (0) 2025.12.07