I. 게이트 지연현상, 논리회로 해저드
가. 논리회로 해저드의 개념
- 조합회로의 입력 변화 시, 입력에서 출력까지 다른 경로가 다른 전파지연을 가져, 일어나는 스위치 과도 현상
나. 게이트 지연과 타이밍도
- 게이트 통과 시 출력이 바로 바뀌지 않고 전파지연 발생
II. 조합논리회로의 해저드
가. 해저드의 유형
유형 | 개념도 | 설명 |
---|---|---|
정적 1-해저드 | – 회로 출력이 상수 1 유지 – 순간적으로 0으로 변경 | |
정적 0-해저드 | – 회로 출력이 상수 0 유지 – 순간적으로 1로 변경 | |
동적 해저드 | – 회로 출력이 지속적으로 변경되는 경우 |
나. 해저드의 사례 (정적 1-해저드)
- 주어진 회로에 대해 A = C = 1, B는 20ns에서 1 → 0 바뀜
- 각 게이트는 10ns의 전파지연을 가짐
- A = C = 1 이므로, F = B’ + B = 1, 그러므로 출력 F는 상수 1로 유지해야 함
회로도 | 타이밍도 |
---|---|
- 30ns ~ 40ns에 D와 E가 모두 0, F가 10ns의 전파지연을 가져 40ns ~ 50ns에 “1-해저드” 발생
III. 논리회로 해저드 해결방안
- 해저드 발생 시 여분의 항 삽입하여 해저드 제거 가능
진리표 | 회로도 |
---|---|
F = AB’ + BC + AC |
- 두 개로 나눠져 묶인 것을 서로 연결
View Comments (2)
해저드 발생 해결방안이 항 추가 하는 거 말고 다른방법도 있을까요?
해저드가 발생하는 이유는 입력에서 출력으로 가는 경로가 다를 때 게이트 통과 시 전파 지연으로 인해 발생하므로, 게이트 지연이 동일하도록 동일한 단계의 게이트를 통과하도록 하면 해저드를 방지할 수 있습니다만 현실적으로 쉽지 않습니다.
정적 1-해저드 방지를 위해 다이나믹-래치 회로라는것도 있는듯한데 별도로 찾아보셔야 할 듯 합니다.