4강. 조합논리의 파형(waveform)
추천글 : 【논리설계】 논리설계 목차
1. gate delay [본문]
2. hazard/glitch [본문]
3. CMOS dynamic power consumption [본문]
1. gate delay [목차]
⑴ 다단계 논리회로(Multi-level logic circuit): 3단계 이상의 논리회로를 지칭
① 2단계 : X = ADF + AEF + BDF + BEF + CDF + CEF + G
② 3단계 : (A + B + C)(D + E)F + G
Figure. 1. 3단계 논리회로
⑵ 문제점
① Gate 내 전자 및 양공이 이동하는 데 시간이 필요하기 때문에 다단계 Gate는 delay가 큼
② input의 서로 다른 Gate delay로 인해 hazard가 야기될 수 있음 (see 2.1.4.)
③ ∴ Gate에 따른 비용과 delay는 trade-off
2. hazard/glitch [목차]
⑴ 정의 : 출력의 의도치 않은 순간적인 변화
① 문제 : 출력값이 의도한 대로 나오지 않을 수 있다.
② 해결 1 : clock을 이용해서 입력 신호가 동기화되도록 기다린다. (synchronous design)
③ 해결 2 : hazard-free circuit을 설계한다. (asynchronous design)
④ 다단계 논리회로는 hazard를 분석하기 까다로우므로 가능하면 2-level을 선호함
⑤ AND-OR를 NAND-NOR로 전환해도 hazard는 해결되지 않음 (∵ delay 차이는 여전함)
⑵ static 0-hazard
① 정의 : 0이었다가 순간적으로 1이 되고, 다시 0이 되는 경우
② 상황
○ P-o-S는 static 0-hazard를 일으킬 수 있다.
○ A · A' ≠ 0에서 문제가 발생한다. (∵ A = 0이었다가 1이 돼도 A'은 잠깐동안 1)
③ 예제
○ Gate의 delay가 10 unit times라고 가정
○ A = 0이었다가 1이 돼도 D = A''' = A'이 잠깐(30 unit times)동안 1로 유지
○ F = A · D도 30 unit times 동안 1로 유지
⑶ static 1-hazard
① 정의 : 0이었다가 순간적으로 1이 되고, 다시 0이 되는 경우
② 상황
○ S-o-P는 static 1-hazard를 일으킬 수 있다.
○ A + A' ≠ 0에서 문제가 발생한다. (∵ A = 1이었다가 0이 돼도 A'은 잠깐동안 0)
③ 예제
Figure. 3. static 1-hazard
○ Gate의 delay가 10 unit times라고 가정
○ A = 1이었다가 0이 돼도 \A이 잠깐(10 unit time) 동안 0으로 유지
○ F = \A · 1 + A · 1 = \A + A도 10 unit time 동안 0으로 유지
Figure. 4. hazard-free circuit
○ 위 예제를 보면, F = AC' + A'D = X + Y에서 X와 Y의 논리값이 동시에 바뀌지 않아 문제였다.
○ X 내부에서 움직이는 것(빨강)은 delay가 있어도 X는 여전히 1이므로 문제가 되지 않는다.
○ 하지만 X에서 Y로 넘어가는 것(분홍)은 동시에 일어나지 않는다. (∵ NOT Gate)
○ 따라서 어떤 경우도 implicant 외부로 나가지 않도록 또다른 implicant를 추가한다.
○ 그러면 OR Gate의 특성상 input 하나만 1이면 출력이 1이므로 0-hazard가 일어나지 않는다.
○ 0001에서 1001로도 가장자리를 통해 이동할 수 있음
⑷ dynamic hazard
① 출력값이 2번 이상의 hazard를 일으키는 경우로 비교적 드물다.
○ 다단계 논리회로는 이런 경우가 많음
② 펄스 생성 및 clock 등을 위해 의도적으로 hazard를 야기하기도 한다.
③ 예제 : oscillation
3. CMOS dynamic power consumption [목차]
⑴ 수식화
① A는 활성인자, C는 switched capacitance(CMOS도 capacitor), V는 전압, F는 clock 진동수
② 한 순환당 이동하는 전하량
Q = CV per cycle
③ 1초당 이동하는 전하량
Q = CVF per second
④ 1초당 소비되는 전력 : 전하량이 모두 전압 V에 노출돼 있음을 이용
P = CV2F
⑤ 전력 계산 시 매 순간에 전하량이 이동하는 게 아니므로 적당한 활성인자를 곱해주어야 함
P = ACV2F, 0 ≤ A ≤ 1
⑵ 활성인자 A는 1초당 rise/fall하는 횟수에 비례한다.
① hazard를 최소화하는 것이 소비전력을 최소화시킨다.
⑶ operation 횟수의 gold standard는 ASIC에 의해 제시된다.
① 매 t 초당 N번의 operation을 하는 장치가 있을 때, IPCavg는 단위시간당 ASIC 표준횟수라 하면,
N / t ≤ IPCavg × F
② 위 식에서 등호가 아니면 높은 진동수를 입력하여 낭비가 발생하므로
Fideal = N / (IPCavg × t)
⑷ 최종적인 수식
P = ACV2N / (IPCavg × t)
입력 : 2016.09.23 13:42
'▶ 자연과학 > ▷ 논리설계' 카테고리의 다른 글
【논리설계】 6강. Implementation Technology (3) | 2016.09.28 |
---|---|
【논리설계】 5강. 하드웨어 기술 언어 (0) | 2016.09.28 |
【Logic Design】 2-bit comparator (0) | 2016.09.17 |
【Logic Design】 door_lock (0) | 2016.09.11 |
【Logic Design】 days_of_the_month (0) | 2016.09.11 |
최근댓글