비교 연산자
Coddy Verilog 여정의 기초 섹션에 포함된 레슨 — 90개 중 21번째.
비교 연산자는 두 값을 비교하여 1 (참) 또는 0 (거짓)을 반환합니다.
사용 가능한 비교 연산자
| 연산자 | 의미 |
|---|---|
== | 같음 |
!= | 같지 않음 |
> | 보다 큼 |
< | 보다 작음 |
>= | 크거나 같음 |
<= | 작거나 같음 |
코드 예제
module comparison_demo;
reg [3:0] a, b;
reg result;
initial begin
a = 5;
b = 3;
result = (a == b);
$display("5 == 3 : %d", result); // 0 (false)
result = (a != b);
$display("5 != 3 : %d", result); // 1 (true)
result = (a > b);
$display("5 > 3 : %d", result); // 1 (true)
result = (a < b);
$display("5 < 3 : %d", result); // 0 (false)
result = (a >= 5);
$display("5 >= 5 : %d", result); // 1 (true)
result = (a <= 3);
$display("5 <= 3 : %d", result); // 0 (false)
$finish;
end
endmodule출력:
5 == 3 : 0
5 != 3 : 1
5 > 3 : 1
5 < 3 : 0
5 >= 5 : 1
5 <= 3 : 0조건에서 비교 사용하기
비교는 종종 if 문에서 사용됩니다:
if (count == 10)
$display("Reached maximum");
if (value > threshold)
$display("Value is too high");중요 참고 사항
- 비교 결과는 1비트 값 (0 또는 1)입니다
- 비교는 모든 비트 폭에서 작동합니다
- 신호에 X 또는 Z가 포함된 경우
==및!=사용 시 주의하십시오 (X를 반환합니다)
챌린지
각 작업에 대해 올바른 비교 표현식을 작성하세요.
수행할 작업:
a가b와 같은지 확인하고eq에 저장합니다.a가b보다 큰지 확인하고gt에 저장합니다.a가b보다 작거나 같은지 확인하고le에 저장합니다.
치트 시트
Verilog의 비교 연산자는 두 값을 비교하여 1(참) 또는 0(거짓)을 반환합니다.
| 연산자 | 의미 |
|---|---|
== | 같음 |
!= | 같지 않음 |
> | 크다 |
< | 작다 |
>= | 크거나 같음 |
<= | 작거나 같음 |
비교 연산은 일반적으로 if 문에서 사용됩니다:
if (count == 10)
$display("Reached maximum");
if (value > threshold)
$display("Value is too high");참고: 결과는 1비트 값입니다. X 또는 Z를 포함하는 신호에 == 또는 !=를 사용하면 X가 반환됩니다.
직접 해보기
module comparison_challenge;
reg [3:0] a, b;
reg eq, gt, le;
initial begin
a = 4'd7;
b = 4'd7;
eq = ______; // a가 b와 같음
gt = ______; // a가 b보다 큼
le = ______; // a가 b보다 작거나 같음
$display("a = %d, b = %d", a, b);
$display("a == b : %d", eq);
$display("a > b : %d", gt);
$display("a <= b : %d", le);
$finish;
end
endmodule이 레슨에는 짧은 퀴즈가 포함되어 있습니다. 레슨을 시작해 문제를 풀고 진행 상황을 기록하세요.