로직 설계하기
Coddy Verilog 여정의 기초 섹션에 포함된 레슨 — 90개 중 44번째.
챌린지
로직을 설계한다는 것은 진리표를 바탕으로 회로에 필요한 방정식을 찾아내는 것을 의미합니다.
진리표:
| a | b | sum | carry |
|---|---|---|---|
| 0 | 0 | 0 | 0 |
| 0 | 1 | 1 | 0 |
| 1 | 0 | 1 | 0 |
| 1 | 1 | 0 | 1 |
2단계: sum의 패턴 찾기
- a=0, b=1 또는 a=1, b=0일 때 sum = 1
- a와 b가 다를 때 sum = 1
- 다름 = XOR →
sum = a ^ b
3단계: carry의 패턴 찾기
- a=1이고 b=1일 때만 carry = 1
- 둘 다 = AND →
carry = a & b
4단계: 방정식 작성
sum = a ^ b
carry = a & b
수행할 작업:
여러분의 과제는 모듈 내부에 누락된 로직 방정식을 추가하는 것입니다.
1. sum에 대한 assign 문을 추가하세요 (a XOR b)
2. carry에 대한 assign 문을 추가하세요 (a AND b)
직접 해보기
module half_adder (
input a,
input b,
output sum,
output carry
);
endmodule