Menu
CoddyTech

정수와 실수

Coddy Verilog 여정의 기초 섹션에 포함된 레슨. 90개 중 8번째.

wire와 reg 외에도 Verilog에는 용도가 다른 숫자용 데이터 유형이 있습니다.

정수

integer는 계산과 연산에 사용하는 범용 변수입니다.

  • 기본 크기는 32비트입니다
  • 부호가 있습니다(음수를 저장할 수 있습니다)
  • 주로 테스트벤치와 for 루프에 사용됩니다

정수 선언:

integer i;        // 32비트 부호 있는 변수
integer count;    // 음수를 저장할 수 있음

정수 사용:

integer i;

initial begin
  i = 0;           // 0에서 시작
  i = i + 1;       // 값을 1 증가
  i = -5;          // 음수를 저장할 수 있음
  $display("i = %d", i);  // 출력: i = -5
end

실수

real은 부동 소수점 수(소수점이 있는 수)를 나타냅니다.

  • 소수 값을 저장합니다
  • 테스트벤치에서 계산에 사용됩니다
  • 하드웨어로 합성할 수 없습니다

실수 선언:

real pi;           // 부동소수점 변수
real voltage;

real 사용:

real pi;

initial begin
  pi = 3.14159;               // 십진수 값
  pi = 22.0 / 7.0;            // 나눗셈 결과
  $display("pi = %f", pi);    // 출력: pi = 3.142857
end

어디에 사용할까요

테스트벤치에서: 정수와 실수는 루프 카운터, 계산, 예상값 확인에 흔히 사용됩니다. 테스트 코드를 더 쉽게 작성하고 이해할 수 있게 해 줍니다.

하드웨어에서: real 형식은 합성할 수 없으므로 실제 회로로 만들 수 없습니다. integer 형식은 합성할 수 있으며 루프 카운터로 자주 사용되지만, FPGA나 칩에 구현할 하드웨어의 신호에는 reg와 wire를 사용하세요.

challenge icon

챌린지

테스트벤치가 작동하도록 코드를 완성하세요.

할 일:

  1. 정수형 변수 i를 선언하세요 (for 루프 카운터)
  2. 실수형 변수 value를 선언하세요 (계산용)

직접 해보기

module test;
  
  // i라는 정수를 선언하세요

  
  // value라는 실수를 선언하세요

  
  initial begin
    i = 7;
    value = i * 0.5;
    $display("i = %0d, value = %f", i, value);
    
    $finish;
  end
  
endmodule
quiz icon실력 점검

이 레슨에는 짧은 퀴즈가 포함되어 있습니다. 레슨을 시작해 문제를 풀고 진행 상황을 기록하세요.

기초의 모든 레슨

직접 연습해 보세요: 온라인 Verilog 컴파일러