일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- MOSFET Gate Capacitance
- MOSFET parasitic capacitance
- junction capacitance
- 벌크 전하 효과
- opamp
- 플립플롭
- MOSFET
- Overlap capacitance
- bulk charge effect
- BSIM4 parasitic capacitance
- LDMOS Gate Capacitance
- BSIM4 manual
- Flipflop
- diffusion resistor
- 문턱전압
- Threshold voltage
- SCE
- CGD
- MOSFET NRD NRS
- junction area capacitance
- BSIM4
- 반전증폭기
- fringing capacitance
- NRS
- pocket implant
- BSIM4 diffusion resistor
- leakage current
- Gate Capacitance
- HV Gate Capacitance
- short channel effect
- Today
- Total
날아라팡's 반도체 아카이브
FLIP-FLOP : S-R FLIP-FLOP 이해 본문
이번 포스팅은 회로설계에서 기본이 되는 FLIP-FLOP을 알아볼 것이다.
전공책에 적혀있는 FLIP-FLOP(이하 FF) 정의를 적어 보겠다.
FF는 동기식 쌍안정 소자로서 쌍안정 멀티바이브레이터이다.
여기에서 "동기식"이라는 의미는 클럭이라고 하는 트리거 입력의 특정한 지점에서 출력상태가 바뀐다는 의미이다.
즉 에지 트리거 플립플롭에서 출력의 변화는 클럭에 동기되어 발생한다.
말이 되게 어렵다...영어 원문을 한국어로 번역을 해버리니 한국사람도 이해하기 어려운 아이러니가 발생한다...
잡담은 집어치우고 간단히 설명하면 "FF는 클럭신호의 특정 지점에서 출력상태가 바뀌는 소자"이다.(사실 본인도 깔끔한 정리가 안된다;;)
우리가 흔히 말하는 FF이라는 말에는 앞에 "에지 트리거"라는 말이 생략되어 있다.
에지 트리거란 클럭 펄스의 상승 에지 또는 하강 에지에서 상태가 변화한다라는 의미다.
FF 종류는 S-R FF, D-FF, J-K FF 등 3가지가 있으며, S-R FF는 IC 형태로 구현할 수 없지만(CMOS LOGIC으로 구현할 수 없다는 의미같다..) 나머지 2개 FF 동작해석에 있어서 기본이 된다.
참고로 최신 버전은 책은 S-R FF에 대한 내용이 사라졌는데...이유는 잘 모르겠다...
<잡담>
여담으로 디지털 회로를 배울 때 래치와 플립플롭 소자가 개발된 배경을 모르고 단순히 동작을 외워버렸다. 그러다보니 시간이 지나면 금방 까먹게 되는데 시간 여유가 된다면 래치와 플립플롭 탄생 배경(?)에 대해서 알아봐야겠다.
(물론 플립플롭이나 래치는 1 비트 정보를 저장하기 위한 수단이다. 근데 단순히 이 개념이 왜 탄생하게 됐는지 그 이유를 알고싶다.)
개인적으로 어떤 문제나 상황이 있으면 "WHY?"라는 질문을 통해 지식의 범위를 확장하는 것이 엔지니어의 자세라고 생각한다.
아무튼 잡담이 길었고 S-R FF 소자 동작을 살펴보자. 앞에서 언급했듯이 S-R FF 동작의 이해는 D-FF, J-K FF 동작 이해의 기본이 된다.(모든 경우의 수를 하나씩 따져봤더니 죽을 지경이다...다신 손으로 검증하지 않을거 같다...)
아래 사진은 S-R FF의 Block diagram과 Gate diagram을 나타낸다.
여기서 우리가 한 번 생각해야 할 부분은 Block diagram을 우측 결과가 왜 보수 관계냐는거다.
NOR GATE의 진리표를 보면서 생각해보자. 해석을 위해선 가정이 필요하니 논리적 순서를 잘 따라오자.
<Q와 Q'가 보수 관계일 수 밖에 없는 이유>
(숫자는 논리적 생각을 위한 순서를 나타낸다.)
1. 만약 Q=1이라고 가정하자. Q=1이기 위해선 인풋이 둘 다 0이어야하고 Q'는 당연히 0이 될 수 밖에 없다.
2. 만약 Q=0이라고 가정하자. 그리고 Q'=0이라고 한다면 R=1일 때만 Q=0일 수 있다. 이것은 R 값에 따라 Q=0이라는 가정에 위배되므로 성립될 수 없다.
따라서 R 값에 관계없이 Q=0이 될 수 있도록 Q'=1이어야 한다.
결국 두 결과가 보수일 수 밖에 없는 이유를 논리적으로 설명했다.
이제 본격적으로 경우의 수를 따져가면서 아래 Gate diagram을 분석하고자 한다. 직접 해보면 어렵지 않으나 흐름을 놓치면 헷갈리기 좋다.
인풋이 R, S, CP 3개이므로 총 8가지의 경우가 발생한다(각각 0, 1일 때).
인풋에 따른 노드 결과를 확인하기 위해 각 노드별로 번호를 할당했다.
Case 1) R=0 // S=0 // CP=0
<⑨ 노드의 초기 상태가 0인 경우>
①=0, ②=0, ③=0, ④=0 → ⑤=0, ⑧=0 → ⑨=0 → ⑦=0, ⑧=0 → ⑩=1 → ⑥=1, ⑤=0 → ⑨=0 => 볼드체 반복
<⑨ 노드의 초기 상태가 1인 경우>
①=0, ②=0, ③=0, ④=0 → ⑤=0, ⑧=0 → ⑨=1 → ⑦=1, ⑧=0 → ⑩=0 → ⑥=0, ⑤=0 → ⑨=1 => 볼드체 반복
Case 2) R=0 // S=0 // CP=1
<⑨ 노드의 초기 상태가 0인 경우>
①=0, ②=1, ③=1, ④=0 → ⑤=0, ⑧=0 → ⑨=0 → ⑦=0, ⑧=0 → ⑩=1 → ⑥=1, ⑤=0 → ⑨=0 => 볼드체 반복
<⑨ 노드의 초기 상태가 1인 경우>
①=0, ②=1, ③=1, ④=0 → ⑤=0, ⑧=0 → ⑨=1 → ⑦=1, ⑧=0 → ⑩=0 → ⑥=0, ⑤=0 → ⑨=1 => 볼드체 반복
Case 3) R=1 // S=0 // CP=0
<⑨ 노드의 초기 상태가 0인 경우>
①=1, ②=0, ③=0, ④=0 → ⑤=0, ⑧=0 → ⑨=0 → ⑦=0, ⑧=0 → ⑩=1 → ⑥=1, ⑤=0 → ⑨=0 => 볼드체 반복
<⑨ 노드의 초기 상태가 1인 경우>
①=1, ②=0, ③=0, ④=0 → ⑤=0, ⑧=0 → ⑨=1 → ⑦=1, ⑧=0 → ⑩=0 → ⑥=0, ⑤=0 → ⑨=1 => 볼드체 반복
Case 4) R=1 // S=0 // CP=1
①=1, ②=1, ③=1, ④=0 → ⑤=1, ⑧=0 → ⑨=0 → ⑦=0, ⑧=0 → ⑩=1 → ⑥=1, ⑤=1 → ⑨=0 => 볼드체 반복
Case 5) R=0 // S=1 // CP=0
<⑨ 노드의 초기 상태가 0인 경우>
①=0, ②=0, ③=0, ④=1 → ⑤=0, ⑧=0 → ⑨=0 → ⑦=0, ⑧=0 → ⑩=1 → ⑥=1, ⑤=0 → ⑨=0 => 볼드체 반복
<⑨ 노드의 초기 상태가 1인 경우>
①=0, ②=0, ③=0, ④=1 → ⑤=0, ⑧=0 → ⑨=1 → ⑦=1, ⑧=0 → ⑩=0 → ⑥=0, ⑤=0 → ⑨=1 => 볼드체 반복
Case 6) R=0 // S=1 // CP=1
①=0, ②=1, ③=1, ④=1 → ⑤=0, ⑧=1 → ⑩=0 → ⑥=0, ⑤=0 → ⑨=1 → ⑦=1, ⑧=1 → ⑩=0 => 볼드체 반복
Case 7) R=1 // S=1 // CP=0
<⑨ 노드의 초기 상태가 0인 경우>
①=1, ②=0, ③=0, ④=1 → ⑤=0, ⑧=0 → ⑨=0 → ⑦=0, ⑧=0 → ⑩=1 → ⑥=1, ⑤=0 → ⑨=0 => 볼드체 반복
<⑨ 노드의 초기 상태가 1인 경우>
①=1, ②=0, ③=0, ④=1 → ⑤=0, ⑧=0 → ⑨=1 → ⑦=1, ⑧=0 → ⑩=0 → ⑥=0, ⑤=0 → ⑨=1 => 볼드체 반복
Case 8) R=1 // S=1 // CP=1
①=1, ②=1, ③=1, ④=1 → ⑤=1, ⑧=1 → ⑨=0 → ⑦=0, ⑧=1 → ⑩=0 =>⑨, ⑩이 보수 관계가 아니므로 불가능
위 결과를 정리하면 다음과 같다.
- CP=0일 때, 초기값을 유지한다.
- CP=1일 때, 초기값을 유지한다.
- 상승 에지 트리거 동작은 CP=0 에서 1로 변할 때 값이 변한다.
- 결론은 S=R=1을 제외하고 상승 에지 트리거 동작시 R, S 값에 따라 Q, Q'가 결정된다.
최종적으로 진리표와 파형을 살펴보면 아래와 같다.
다음 포스팅에서는 D-FF 동작에 대하여 살펴볼 것이다.
물론 이번 포스팅처럼 자세한 분석은 하지 않는다...
'Electronic circuit > Digital' 카테고리의 다른 글
Frequency Divider (0) | 2020.09.09 |
---|---|
FLIP-FLOP : D FLIP-FLOP 이해 (2) | 2020.09.08 |
Ring oscillator 동작 (1) | 2020.09.08 |