플립플롭과관련소자 2 (Flip-Flops & Related Devices 2) 2011 8th
강의내용 FF의동기화 (FF Synchronization) 입력순차검출 (Detecting an Input Sequence) 데이터저장 & 전송 (Data Storage & Transfer) 직렬데이터전송 : 시프트레지스터 (Serial data Transfer : Shift Register) 주파수분주 & 계수 (Frequency Division & Counting) 마이크로컴퓨터응용 (Microcomputer Application) 슈미트-트리거소자 (Schmitt-Trigger Devices) 원-샷 (One-shot / Monostable Multivibrator) 순차회로의분석 (Analyzing Sequential Circuits) 클락발생기회로 (Clock Generator Circuits) FF회로문제처치 (Troubleshooting FF Circuits) 교재 : Chapter 5-14 ~ 5-23 2
FF 의동기화 (FF Synchronization) < Ex5-12 > 수동입력으로인한비동기문제 부분펄스 (Partial Pulses) 발생 ( ) < Sol > Negative-Edge CLK D FF 삽입 A(=D) 와 Q 사이의시간지연 + Q 와 CLK 의동기성 3 완전한펄스 (Complete Pulses) 발생 ( )
입력순차검출 (Detecting an Input Sequence). 출력이입력사이의순차 (sequence) pattern 에따라반응하는경우 : 예 ) 임의의 AND gate 에서 Q 는반드시 A 가 B 보다먼저 HIGH 일때만 HIGH 가되도록구현하라. Sol) K=0, B=+CLK, A=J 로입력을취한 J-K FF 으로구현가능. 이때 (b) 에서 t A t S (Setup time) 이고, (c) 에서 t A t H (Hold time) 이어야한다. 4
데이터저장 & 전송 (Data Storage & Transfer) A group of FFs = register data ( 저장 /) 전송은레지스터사이에서이루어짐 : i) 동기직렬전송, ii) 비동기직렬전송 ( jammed transfer ), iii) 병렬동기전송 i) S-C FF with -CLK ii) J-K FF with -CLK iii) D FF with -CLK < Fig. 5-42 동기직렬전송방법 > < Fig. 5-43 비동기직렬전송 > ~PRE ~CLR always! i) A/~A = (1,0) + Transfer Enable = 1 B/~B=(1,0) (transferred!) ii) A/~A=(1,0) + Transfer Enable = 0 B/~B clocked operation (=not transferred!) 5
데이터저장 & 전송 (Data Storage & Transfer) 병렬동기전송 : 예 ) 3 D FFs register X (after PGT, simultaneously) 3 D FFs register Y : 3-bit data transferred! 6
직렬데이터전송 : 시프트레지스터 (Serial data Transfer : Shift Register) shift register : 2 진수저장 / 전송용 Clocked FF( J-K FF/ D FF ) 의직렬연결형태 예 ) 4-bit shift register ( NGT D FF) : DATA-IN(1) X 3 X 2 X 1 X 0 ; data shifted! At T 2, t H (X 3 ) < t PLH (X 2 ) 7
직렬데이터전송 : 시프트레지스터 (Serial data Transfer : Shift Register) 레지스터간직렬전송 : 예 ) 2 3-bit shift registers : (X 2 X 1 X 0 ) - (Y 2 Y 1 Y 0 ) (101000) ( 010100) (001010) (000101) ; 3-bit X data is shifted to 3-bit Y register after 3 pulses! 8
주파수분주 & 계수 (Frequency Division & Counting) - J-K 형 register 에서, i) J = 1 = K (toggle mode) ii) 전단의 Q i 후단의 CLK i+1 - 주파수분주기 (frequency divider) : 각 FF 는 CLK 0 입력주파수를 1/2 로분주 (division) For N-bit register(= N FFs) f out = f in / 2 N Ex) 3-bit register,(q 2 Q 1 Q 0 ) f Q2 = f CLK /2 3 9
주파수분주 & 계수 (Frequency Division & Counting) < 2 진계수순차를보여주는 FF 상태의 table > < 상태천이다이어그램 (state transition diagram) : 각펄스입력후계수기 FF 의상태천이를보여줌 > - 계수기 (Counter) : N-bit 의 register 일때 [0, 2 N -1] 10 계수 (counting) 가능 MOD-2 N counter (= modulo-2 N ) counter) 2 N 개의다른상태계수가능 ( 범위 : [0, 2 N -1] 10 ) Ex ) 3-bit register (Q 2 Q 1 Q 0 ) 2 3 = 8 MOD-8 counter that counts from 0(=000 2 ) to 7(=111 2 ) 10
주파수분주 & 계수 (Frequency Division & Counting) < Ex 5-15 > 6-bit register (Q 5, Q 4, Q 3, Q 2, Q 1, Q 0 ) a) MOD =? MOD = 2 6 = 64 b) f in = 1MHz, 최종 FF(=Q 5 ) 의출력주파수 f out =? f out = f in /2 6 = 1MHz/64 = 15.625kHz c) 십진수로계수가능한영역은? [000000, 111111] 2 = [0, 2 6-1] 10 = [0, 63] 10 d) 계수의시작상태 = 000000 일때, 129 펄스가지난후의계수기값은? MOD-64 counter After 64 n pulses, register = 000000. n = 2, 128 pulses after 129 pulses, (Q5, Q4, Q3, Q2, Q1, Q0) = 000001 11
순차회로의분석 (Analyzing Sequential Circuits) 순차회로종합 : < Ex 5-16 > ( ) 회로에서, (X 0, Y 0, Z 0 )= (0,0,0), CLK=1kHz CLK 의첫 8 cycle 에대해 (X, Y, Z, W) 의파형은? < Sol > XYZ= -Edge 3-bit FFs step1. 회로의성격판별 3-bit counter if 1=J=K(= W) of Z step2. 1 st pulse 입력후의논리상태분석 (X 0, Y 0, Z 0 )= (0,0,0), (X,~Y,~Z) = (0,1,1) W=1 step3. (Z,Y,X,W) = (1,0,0,1) step4. 2 nd & 3 rd pulse 때에도 step2 & step3 반복 step5. 4th pulse 이후 : W=0 (X,~Y,~Z)=(1,1,1) Counting stops! 12
마이크로컴퓨터응용 (Microcomputer Application) 마이크로프로세서 (=MPU) 에서외부메모리 /register 로 data 전송 : 두종류의 code(address code, Data code) + 기타제어신호 (CP, ) 외부메모리 /register (=D FF register) : i) A code : 외부소자 (memory/register) 의주소지정 ii) D code : MPU 의산술 / 논리연산의결과로생성되어내부 register 에일시저장되어있는 data iii) CP : 내부 register 의 D code 를 A code 가지정하는번지가지정하는소자로전송하게함예 ) (A 19, A 8 ) = 11111110 이면 CP 가 Positive-Edge 일때마다 (D 3, D 0 ) (X 3,, X 0 ) 로전송됨 13
슈미트 - 트리거소자 (Schmitt-Trigger Devices) 느린전이신호의 inverting 시 : 보통 inverter : oscillation 유발 Schmitt-Trigger inverter : oscillation-free & fast inverted signal 1) 원신호 v o (t) LOW HIGH 시 v o (t) > V T+ 일때 v o (t) = LOW 2) 원신호 v o (t) HIGH LOW 시 v o (t) < V T- 일때 v o (t) = HIGH 3) 항상 V T+ > V T- 4) Hysteresis 형 symbol 5) 74xx14 series - hex ICs 74xx13 series - dual 4-input NANDs with S-T inputs 14
원 - 샷 (One-shot / Monostable Multivibrator) One-Shot 소자 (OS) : (Monostable multivibrator) i) 오직 0 출력만안정상태 (Q=0) : Stable state ii) 트리거입력시준안정상태 (Q=1) : Quasi-stable state t p 동안 Q=1 유지하다가자동으로 Q=0 으로복귀 t p R T C T [5, 50 ns] 15
원 - 샷 (One-shot / Monostable Multivibrator) One-Shot 소자 (OS) : Nontriggerable (N-T) vs. Retriggerable (R-T) t p =2ms 에서, R-T 는트리거가생길때마다매번새로 t p 를유지한다. ( 이때직전의 t p 는 2ms 최대치를다유지하지못할수있음 ) One-Shot 소자 (OS) : Actual OS ICs : 74xx121 single N-T OSs 74xx221 dual N-T OSs 74xx122 single R-T OSs 74xx123 dual R-T OSs Traditional symbol IEEE/ANSI symbol 16
클락발생기회로 (Clock Generator Circuits) 클락발생기 (Astable/Free-running multivibrator ) : I. Schmitt-Trigger Oscillator - 7414/74LS14: f = 0.8/RC [Hz] - 74HC14 : f = 1.2/RC [Hz] - Not extremely accurate/stable! (R/C dependent, Low Frequency ) II. 555 Timer Oscillator - TTL-compatible device - Impossible perfect 50% duty-cycle square wave, always > 50% - f = 1/T 1 = 0.693 C[ R A 2R B ] - Not extremely accurate/stable! (Not Very High Frequency) III. Crystal-Controlled Clock Generator : quartz - Extremely accurate/stable! (Very High Frequency) 17
FF 회로문제처치 (Troubleshooting FF Circuits) I. 입력개방 (Open Inputs) < Ex 5-19 > TTL 3-bit shift register(j2=1, K2=0) (X 2, X 1, X 0 ) = (0,0,0) at t =0 Expected Actual after 1 st 3 clock pulses! Why? < Sol > After 2 nd pulses, X 0 toggles! J 0 =1=K 0 ~X 1 과 K 0 간에 open 상태 (TTL 에 floating 상태는 HIGH 로인식 ) 18
FF 회로문제처치 (Troubleshooting FF Circuits) II. 입력단락 (Shorted Inputs) < Ex 5-20 > At PGTs, A=1=B & PRE=0/~PRE=1, CLR=0/~CLR=1 D=0 & Clocked operation But Q 0 Why? < Sol > 일반적가능성 : 1) Z2-5 / Z1-4 의내부적 V CC 단락 2) Z2-5 / Z1-4 의외부적 V CC 단락 3) Z2-4 의내부적 / 외부적 GND 단락 ~PRE=0 4) Z2 의내부결함가능성특수한경우 : ~Q(6 번 pin) 의외부적 GND 접지 (7 번 pin) 가능성! Q 와 ~Q 는항상상보적 If ~Q=0, Q=1 19
FF 회로문제처치 (Troubleshooting FF Circuits) III. 클락왜 (Clock Skew) CLK 이각 FF 에도달하는시간이서로다른현상 논리오류초래 < Fig. 5-59. CLK1 과 CLK2(X=1) 의도달시간차 = t 1 인예 > : If t 2 < t 1, Q 1 =1 at NGT of CLK2(actually) but it should be expected 0. ( 이때물론 Q 2 의 t S < (t 1 -t 2 ) 를만족한다면 ) 20
강의내용 ( 복습 ) FF의동기화 (FF Synchronization) 입력순차검출 (Detecting an Input Sequence) 데이터저장 & 전송 (Data Storage & Transfer) 직렬데이터전송 : 시프트레지스터 (Serial data Transfer : Shift Register) 주파수분주 & 계수 (Frequency Division & Counting) 마이크로컴퓨터응용 (Microcomputer Application) 슈미트-트리거소자 (Schmitt-Trigger Devices) 원-샷 (One-shot / Monostable Multivibrator) 순차회로의분석 (Analyzing Sequential Circuits) 클락발생기회로 (Clock Generator Circuits) FF회로문제처치 (Troubleshooting FF Circuits) 다음시간수업 교재 : Chapter 6-1 ~ 6-17 21
연습문제 Examples 5-12 ~ 5-20 꼭풀어보세요. Problems Section 5-14 ~ 5-23 에서홀수만풀어보세요. 22