[Vivado] 03. Adder 8bit
Half Adder. module half_adder ( input i_a, input i_b, output o_sum, output o_carry ); assign o_sum = i_a ^ i_b; assign o_carry = i_a & i_b; endmodule Full Adder 1 bit. module full_adder_1bit ( input i_a, input i_b, input i_cin, output o_sum, output o_carry ); wire w_sum1, w_carry1, w_carry2; half_adder U_HA_0 ( .i_a(i_a), .i_b(i_b), .o_sum(w_sum1), .o_carry(w_carry1) ); half_adder U_HA_1 ( .i_a(..
[Vivado] 02. FndController, Counter, DigitSplitter, clkDivider
[1] Counter 2x4 Decoder 의 출력 ([3:0] o_digitSel) 을 반복적으로 Count 하는 Counter 를 설계하려고 한다. 4 개의 7-Segment 를 동작하기 위해 Counter 의 bit 는 2-bit 이다. clk 가 들어올 때마다 + 1 씩 Count 가 쌓이게 되고, reset 입력 시, 0 으로 초기화 된다. Counter 의 출력 (o_count) 은 2x4 Decoder 의 입력 (i_x) 으로 들어간다. [2] DigitSplitter, mux 4x1 0 ~ 9999 사이의 값을 입력 ([13:0] i_number, 0 ~ 16384) 으로 받을 경우, 각 자릿 수의 [3:0] Digit Number (o_dig_1, o_dig_10, o_dig_100, o..