[FPGA] 반가산기

2022. 10. 5. 19:10· FPGA
목차
  1. 반가산기 설계
  2. Design Source
  3. Simulation Source
  4. Schematic
  5. Timing Chart
  6. constraints
  7. 반가산기 FPGA 회로 구성
  8. 작동사진
반응형

반가산기 설계

입력 출력
A B sum carry
0 0 0 0
0 1 0 1
1 0 0 1
1 1 1 0

 

Design Source

`timescale 1ns / 1ps

module HalfAdder(
    input i_a,
    input i_b,

    output o_sum, o_carry 
);

    assign o_sum  =   i_a ^ i_b;  // xor
    assign o_carry = i_a & i_b;   // and
    
endmodule

Simulation Source

`timescale 1ns / 1ps

module tb_HalfAdder();

    reg i_a, i_b;
    wire o_sum, o_carry;
    
    HalfAdder dut(
    .i_a(i_a),
    .i_b(i_b),
    .o_sum(o_sum),
    .o_carry(o_carry)
    );

    initial begin
        #00 i_a = 1'b0; i_b = 1'b0;  
        #10 i_a = 1'b0; i_b = 1'b1;  
        #10 i_a = 1'b1; i_b = 1'b0;
        #10 i_a = 1'b1; i_b = 1'b1;
        #10 $finish;
    end

endmodule

Schematic

Timing Chart

constraints

## Switches

set_property -dict { PACKAGE_PIN V17  IOSTANDARD LVCMOS33 } [get_ports { i_a }]; #IO_L19N_T3_A09_D25_VREF_14 ,Sch=SW0
set_property -dict { PACKAGE_PIN V16  IOSTANDARD LVCMOS33 } [get_ports { i_b }]; #IO_L19P_T3_A10_D26_14      ,Sch=SW1

## LEDs

set_property -dict { PACKAGE_PIN U16  IOSTANDARD LVCMOS33 } [get_ports { o_sum}]; #IO_L23N_T3_A02_D18_14        ,Sch=LED0
set_property -dict { PACKAGE_PIN E19  IOSTANDARD LVCMOS33 } [get_ports { o_carry}]; #IO_L3N_T0_DQS_EMCCLK_14      ,Sch=LED1

## Configuration options, can be used for all designs
set_property CONFIG_VOLTAGE 3.3 [current_design]
set_property CFGBVS VCCO [current_design]

반가산기 FPGA 회로 구성

작동사진

i_a = 0, i_b =0
i_a = 0, i_b = 1
i_a = 1, i_b = 0
i_a = 1, i_b = 1

반응형
  1. 반가산기 설계
  2. Design Source
  3. Simulation Source
  4. Schematic
  5. Timing Chart
  6. constraints
  7. 반가산기 FPGA 회로 구성
  8. 작동사진
'FPGA' 카테고리의 다른 글
  • [FPGA] 4bit_전가산기
  • [FPGA] 전가산기
  • [FPGA] gate
  • vivado 사용법
kyw6416
kyw6416
kyw6416
kyw6416
kyw6416
전체
오늘
어제
  • 분류 전체보기 (103)
    • PCB 설계 (16)
    • C언어 (6)
    • FPGA (15)
    • 하드웨어_ETC (0)
    • 임베디드_ETC (2)
      • 임베디드_통신 (1)
    • Qt Creator (4)
    • Tool (1)
      • Verdi (1)
    • Verilog (9)
      • i2s (5)
      • hdlbits (0)
    • DRAM (15)
      • DDR2 SDRAM (8)
      • DDR3 SDRAM (0)
      • DDR5 SDRAM (3)
    • DDR PHY (6)
      • DDR PHY 2.1 (6)
    • Makefile (10)
    • Vim (17)
    • 노션 (2)
    • SoC 설계 (0)
반응형
kyw6416
[FPGA] 반가산기
상단으로

티스토리툴바

단축키

내 블로그

내 블로그 - 관리자 홈 전환
Q
Q
새 글 쓰기
W
W

블로그 게시글

글 수정 (권한 있는 경우)
E
E
댓글 영역으로 이동
C
C

모든 영역

이 페이지의 URL 복사
S
S
맨 위로 이동
T
T
티스토리 홈 이동
H
H
단축키 안내
Shift + /
⇧ + /

* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.