티스토리 뷰



"정보처리기능사 필기 해설 4 - 조합 논리 회로"에서 다룬대로 논리 회로는 출력을 결정하는데 있어 현재 입력만을 대상으로 하는지, 아니면 현재 입력과 함께 과거 자료(메모리)를 사용하는지에 따라 현재 입력만을 가지고 출력을 결정하는 조합 논리 회로(Composite Logic Gate)와 메모리도 출력 결정에 사용하는 순서 논리 회로(Sequential Logic Gate)로 나눌 수 있습니다. 외부의 입력과 현재 상태(기억 기능, Memory)에 따라 출력을 결정하는 순서 논리 회로는 통상 메모리로 사용하는 플립플롭과 논리 게이트로 구성 되므로 메모리를 가진 조합 논리 회로라고도 할 수 있습니다. 대표적인 순서 논리 회로에는 플립플롭, 카운터, 레지스터, RAM, CPU등이 있습니다.

신호의 타이밍에 따라 동기식(Synchronous sequential logic)과 비동기식(Asynchronous sequential logic)으로 나뉘는데 속도에 민감한 일부를 제외하고는 대부분의 순서 논리회로는 동기식을 채용하고 있습니다. 동기식을 클럭 기반(Clocked) 순서 논리 회로라고도 하는데 컴퓨터 내부에서 일정하게 발생하는 클럭 신호에 따라 메모리 및 회로가 동작하기 때문입니다. 입력 신호의 변화가 있더라도 즉시로 동작하는 것이 아니라 클럭 주기에 맞추어서 동작합니다. 반면에 비동기식은 신호 변화가 있으면 즉시로 반응하기 때문에 속도가 빠른 반면 각 회로간의 전파 지연(Propagation delay)의 차이로 생기는 문제 때문에 전체적인 설계에 적용하기에는 무리가 있고 마이크로 프로세서나 DSP(digital signal processing)의 일부에만 적용하고 있습니다. 


순서 논리 회로와 조합 논리 회로의 차이는 바로 메모리의 존재입니다. 현재 상태가 아닌 이전 상태의 값이 출력에 영향을 미치게 된다는 것입니다. 위의 그림은 NAND 게이트 2개 또는 NOR 게이트 2개로 이루어진 RS 플립플롭의 회로도 인데 입력중 하나가 이전 출력값에서 가져오는 것을 확인할 수 있습니다.

S  R  Q(상태)

1  1  상태 유지

0  1  1(Set)

1  0  0(Reset)

0  0  비정상(정의되지않음) 

S  R  Q(상태)

0  0  상태 유지

0  1  0(Reset)

1  0  1(Set)

1  1  비정상(정의되지않음)

위의 표는 NAND 게이트 기반의 S'R' 래치(Latch)와 NOR게이트 기반의 SR 래치의 진리표로 Set, Reset에 대한 신호 처리와 함께 기존 상태를 그대로 유지하는 방법을 제공합니다. 전원이 공급되고 있고 Set/Reset 신호가 없는한 현재의 상태를 그대로 유지 합니다. 즉, 1비트의이 기억 기능을 제공하는 것입니다. 플립플롭(FF, Flip-Flop) 또는 래치(Latch)는 위의 그림과 같은 RS 플립플롭을 기본으로 하여 여러 개선된 형태가 있습니다

위의 그림은 기본적인 RS래치에 클럭 신호 입력을 추가하여 동기화되어 동작하도록 구성한 회로입니다. NAND 기반 래치에는 클럭 신호를 NAND 게이트를 통해서 붙이고 NOR 기반 래치에는 AND 게이트를 통해서 붙이는 형태입니다. 이런 형태를 Clocked RS 플립플롭이라 합니다.  

RS 플립플롭의 진리표를 보면 "정의 되지 않음" 상태가 있는데 플립플롭의 기능을 동작하는데 있어 원하지 않는 입력 상태를 의미합니다. D 플립플롭은 Clocked RS 플립플롭의 RS 입력선 대신 D(Data 또는 Delay) 입력 하나만을 두고 D입력에 인버터를 추가해서 R 입력으로 사용하도록 하여 이 "정의 되지 않음" 또는 "금지 상태"를 제거한 회로입니다. 클럭(CLK)이 들어오지 않으면 현재 상태를 유지하고 클럭이 들어오면 D입력에 따라 래치 상태를 변경합니다.

위의 그림은 JK 플립플롭의 회로도 입니다. Clocked RS 플립플롭의 "정의 되지 않음" 상태를 없애고 대신에 기존 상태를 바꾸는(Toggle) 용도로 사용합니다. J는 Set, K는 Reset용도로 사용하고  JK 신호가 모두 들어오면 기존 상태를 바꿉니다. 클럭이 들어오지 않거나 JK신호가 모두 들어오지 않으면 기존 값을 유지하는 기능을 수행합니다. 단점이라면 JK 입력 신호의 플립플롭 내 전파 지연 시간(Propagation delay)이 클럭의 시간보다 길어야 한다는 점입니다. 이 문제를 보완하기 위해서 두개의 JK 플립플롭을 연결해서 구성한 마스터-슬레이브 플립플롭(주종 플립플롭)을 사용하기도 합니다. JK 플립플롭의 장점이라면 모든 플립플롭의 기능을 가지고 있다는 점으로 토글 기능을 활용해서 카운터에 쓰이기도 합니다. 

T(Toggle) 플립플롭은 JK 플립플롭의 두 입력선을 하나로 묶어서 구성합니다.  T가 0이거나 클럭이 없으면 현재 상태를 유지하고, T가 1이면 기존 상태를 바꿉니다. 토글 상태를 이용해서 이진 카운터에 사용됩니다.


기출문제는 JK플립플롭과 T플립플롭에 대한 비중이 높습니다. 또한 1의 보수 및 2의 보수를 구하는 것은 실제 프로그래밍 과정에서도 많이 사용하는 것이므로 꼭 이해하고 넘어 가셔야 합니다. "정답보기"를 클릭하시면 정답을 확인할 수 있습니다.


1. 플립플롭의 종류 중 입력 T가 0 일 경우에는 상태가 불변이고, T가 1 일 경우에는 보수가 출력되는 것은? (정답보기☜)

가. RS 플립플롭 나. JK 플립플롭

다. D 플립플롭 라. T 플립플롭


2. 플립플롭 회로가 전하를 축적시키는 방법으로 기억하였다가 자연 방전으로 인하여 전하가 소멸되는 것을 방지하기 위하여 일정한 시간 간격마다 다시 충전시켜 주어야하는 소자는?(정답보기☜)

가. DRAM 나. PROM

다. SRAM 라. EPROM

※ 플립플롭으로 구성한 RAM을 SRAM(Static RAM)이라 합니다. 논리 회로로 이루어져 있기 때문에 빠른 속도로 읽기/쓰기가 가능하며 내용을 보존하기 위해 별다른 조치가 필요하지 않습니다. DRAM의 경우에는 축전기(capacitor)의 충전/방전을 이용하기 때문에 주기적으로 리플래시(refresh)가 필요합니다. 고속처리에 필요한 레지스터나 캐시와 같은 부분에 플립플롭의 구성한 메모리를 사용합니다.


3. 다른 모든 플립플롭의 기능을 대용할 수 있으므로 응용 범위가 넓고 집적회로화 되어 가장 널리 사용되는 플립플롭은?(정답보기☜)

가. T 플립플롭 나. JK 플립플롭

다. D 플립플롭 라. RS 플립플롭


4. JK 플립플롭(Flip Flop)에서 보수가 출력되기 위한 입력값 J, K의 입력 상태는?(정답보기☜)

   가. J=0, K=1 나. J=0, K=0

   다. J=1, K=1 라. J=1, K=0

※ J가 Set, K가 Reset으로 사용되고, JK가 00이면 기존상태 유지, 11이면 토글처리합니다. 보수((補數, complement)는 보충해 준다는 수라는 의미로 3의 10의 보수는 7로 3을 10으로 만들기 위한 수를 의미합니다. 그런데 이진법에서 1의 1의 보수는 0, 0의 1의 보수는 1이므로 각 비트를 토글(Toggle)하면 간단히 1의 보수를 만들수 있고 이진수에 대해서 1의 보수를 취하고 +1하면 2의 보수를 구할 수 있습니다.


5. 2진수 10110를 1의 보수(1'Complement)로 표현한 것은?(정답보기☜)

가. 01001 나. 00110

다. 01000 라. 11110


6. 2진수 (10001010)를 2의 보수로 옳게 표현한 것은?(정답보기☜)

   가. 01110101 나. 01110110

   다. 10001011 라. 10000110


7. 10진수 550에 대한 9의 보수는?(정답보기☜)

    가. 448 나. 449

    다. 450 라. 451

※ 각 자릿수를 9에서 뺄셈을 해주면 됩니다.

8. 2진수 11001000의 2의 보수(Complement)는?(정답보기☜)

가. 11001000 나. 00111000

다. 11001001 라. 00110111


9. 십진수 -8을 2의 보수 표현으로 바르게 나타낸 것은?(정답보기☜)

가. 11110111 나. 11111000

다. 00001000 라. 01110111

※ 컴퓨터 내부적으로 음의 정수를 표현하는 방법으로 2의 보수를 사용합니다. 음수의 2진수로 표현하려면 먼저 십진수 양수를 2진수로 변환하고 변환한 2진수의 2의 보수(1의 보수를 취한후 +1)를 추출하면 됩니다.


10. -14를 부호화된 2의 보수로 표현하면?(정답보기☜)
    가. 10001110 나. 11100011
    다. 11110010 라. 11111001

11. 2 진수로 1의 보수를 구하는 Gate는?(정답보기☜)
   가. NOT 나. NAND
   다. AND 라. OR
※ 1의 보수가 토글이라는 개념을 이해합니다.

12. 다음 중 플립플롭의 종류가 아닌 것은?(정답보기☜)

    가. R-S 나. J-K

    다. D 라. R


13. 1비트(bit)를 기억할 수 있는 능력을 가진 기억의 최소 단위로 클록이 있는 순서회로에 기억된 기억 소자는?(정답보기☜)

   가. 플립플롭(Flip-Flop)

   나. 전가산기(Full Adder)

   다. 반가산기(Half Adder)

   라. 부호기(Encoder)


14. JK 플립플롭의 J,K 입력을 묶어서 하나의 입력신호, 즉 Jk 플립플롭의 동작 중 입력이 모두 0 이거나 1일 경우에만 이용하는 플립플롭은?(정답보기☜)

    가. D 나. T

    다. P 라. RS


15. 누를 때마다 ON, OFF가 교차되는 스위치를 만들고자 할 때 사용되는 플립플롭은?(정답보기☜)

가. D 플립플롭 나. JK 플립플롭

다. T 플립플롭 라. RS 플립플롭


16. 1비트(bit) 기억장치로 가장 적합한 것은?(정답보기☜)

    가. 누산기 나. 레지스터

    다. 계전기 라. 플립플롭


17. RS 플립플롭에서 S=1, R=1이면 출력은 어떤 상태가 되는가?(정답보기☜)

    가. 불능(Not Allowed) 나. 1로 Set됨

    다. 0으로 Reset됨 라. 불변 (No Change)

※ RS플립플롭의 단점으로 다른 플립플립으로 파생된 이유이기도 합니다.

18. 토글 또는 보수 플립플롭으로서, JK 플립플롭의 J와 K를 묶어서 입력이 구성되며, 입력이 0일 경우에는 상태가 불변이고, 입력이 1일 경우에는 보수가 출력되는 것은?(정답보기☜)

    가. D플립플롭 나. RS플립플롭

    다. P플립플롭 라. T플립플롭




댓글
댓글쓰기 폼