1. 0 (논리 0)
- 의미: 논리적으로 "낮음" 또는 "False"를 나타냅니다.
- 전압 상태: 전압이 낮은 상태를 의미하며, 실제 하드웨어에서는 0V에 가깝습니다.
- 용도: 디지털 회로에서 기본적인 논리 연산을 수행할 때 사용됩니다. 예를 들어, AND 연산에서 입력 중 하나가 0이면 출력은 항상 0입니다.
2. 1 (논리 1)
- 의미: 논리적으로 "높음" 또는 "True"를 나타냅니다.
- 전압 상태: 전압이 높은 상태를 의미하며, 하드웨어에 따라 3.3V, 5V 등으로 설정됩니다.
- 용도: 논리 연산에서 "참"을 나타내는 기본 값입니다. OR 연산에서 입력 중 하나가 1이면 출력은 1입니다.
3. x (unknown, 알 수 없는 상태)
- 의미: 값이 불확실하거나 알 수 없는 상태를 나타냅니다. **'x'**는 시뮬레이션에서 초기화되지 않은 신호, 또는 충돌로 인해 값을 결정할 수 없는 상태를 나타낼 때 사용됩니다.
- 원인: 다음과 같은 경우에 'x' 상태가 발생할 수 있습니다:
- 레지스터나 신호가 초기화되지 않았을 때.
- 서로 다른 신호 드라이버가 하나의 신호를 동시에 제어하려 할 때(충돌).
- 잘못된 타이밍이나 클록 신호의 문제로 인해 값이 안정되지 않았을 때.
- 용도: 시뮬레이션에서 발생하며, 하드웨어의 초기화 문제나 신호 간 충돌을 감지할 수 있도록 돕습니다.
4. z (high-impedance, 고임피던스 상태)
- 의미: **'z'**는 신호가 고임피던스 상태에 있음을 의미하며, 신호 라인이 전기적으로 분리되었거나, 출력이 활성화되지 않은 상태입니다. 고임피던스는 신호가 다른 회로에 영향을 미치지 않는 상태를 나타냅니다.
- 용도: Tri-state 버퍼와 같은 회로에서 많이 사용되며, 여러 장치가 동일한 데이터 버스를 공유할 때 버스의 충돌을 방지하기 위해 고임피던스 상태로 전환됩니다.
- 상황: 신호가 고임피던스 상태에 있으면, 다른 회로들이 그 신호에 영향을 주지 않고 제어할 수 있습니다.
>> Reset을 입력해줌 으로 인해서 초기값이 X(Unknown)상태가 나오는 것을 방지 해줄 수 있다.
이로 인해 F/F, Counter등의 로직에서 초기값을 설정하여 Logic이 정상 동작을 할수 있게 한다.
But, 모든 Logic에 Reset이 들어가야 하는 것은 아니다.
'Verilog HDL > Basics' 카테고리의 다른 글
| 06. Combination Logic (0) | 2024.10.06 |
|---|---|
| 05. D Flip-Flop & Reset(실습) (0) | 2024.10.06 |
| 04. D Flip-Flop (0) | 2024.10.06 |
| 02. Testbench & DUT(Design under test) (0) | 2024.10.06 |
| 01. Clock 생성하기 (0) | 2024.10.06 |