작성자 : 김부성

http://blog.naver.com/kbs3720

http://www.cyworld.com/KimBuSeong

목 차

1 순서논리회로의 정의

1.1 순서논리회로

1.1.1 동기식 순서논리회로

1.1.2 비동기식 순서논리회로

2 순서논리회로의 종류

2.1 플립플롭

2.1.1 RS 플립플롭

2.1.2 JK 플립플롭

2.1.3 T 플립플롭

2.1.4 D 플립플롭

2.2 레지스터

2.2.1 시프트 레지스터

2.2.2 병렬 로드 레지스터

2.3 카운터

2.3.1 동기식 카운터

2.3.2 비동기식 카운터

1 순서논리회로의 정의

1.1 순서논리회로

순서논리회로는 조합논리회로의 소자인 AND, OR, NOT, XOR뿐만 아니라 메모리를 위한 소자인 래치, 플립플롭 등과 메모리를 위한 피드백 경로를 가지고 있어 메모리 요소에 2진 정보를 저장할 수 있다.

그렇기 때문에, 순서논리회로의 출력은 현재 입력된 내용뿐만 아니라 순서논리회로 내부에 기억되어 있는 과거의 입력에도 영향을 받는다.

순서논리회로는 크게 동기식 순서논리회로와 비동기식 순서논리회로로 나뉜다.

1.1.1 동기식 순서논리회로

동기식 순서논리회로는 클록 펄스를 사용해서 여러 개의 플립플롭을 동시에 동작시키는 순서논리회로로써, 동기를 위한 매스터 클럭이 존재한다.

동기식 순서논리회로는 이산된 시점에서만 기억소자에 영향을 주는 신호를 사용해야하는데, 이 문제를 해결하는 한 방법으로 한정된 폭의 펄스를 사용하여

펄스가 있을 경우에는 1, 펄스가 없을 경우에는 0으로 나타낸다.

펄스를 사용하는 동기식 순서논리회로의 문제점은 서로 독립된 신호원으로부터 같은 논리 게이트의 입력에 도달한 펄스가 예측할 수 없는 지연을 나타내고, 결과적으로 시스템이 신뢰할 수 없는 동작을 하게 된다는 점이다.

1.1.2 비동기식 순서논리회로

비동기식 순서논리회로는 입력 신호가 변하는 순서에 따르며, 언제라도 그 영향을 받을 수 있으며, 클록 펄스를 사용하지 않고 플립플롭을 동작시킨다.

비동기식 순서논리회로는 흔히 시간지연소자를 기억 요소로 사용하는데, 시간지연소자를 통해서 신호가 전달되려면 이미 정한 시간이 걸리기 때문에 시간지연소자는 기억능력을 가진다.

비동기식 순서논리회로의 경우는 피드백 경로를 갖는 것이 특징인데, 2진 신호로써 정해진 크기의 전압을 사용하고 있다.

2 순서논리회로의 종류

2.1 플립플롭

플립플롭은 1비트의 2진 정보를 보관, 유지할 수 있는 순서논리회로의 기본 구성요소이며 2개의 출력핀 Q와 [eqn: bar { Q}]가 있고, 새로운 조건이 주어지기 전까지 현재 상태를 유지하는 디지털소자로써, 조건을 주는 방법에 따라 여러 종류로 나누어진다.

플립플롭은 주로 주기억장치,CPU 캐시 메모리, 레지스터를 구성하는 기본 회로로 쓰이는데, 입력에 대하여 지연된 하나의 출력을 입력에 피드백하여 정보를 보관, 유지하는데 사용하는 특징을 가진다. 그리고 플립플롭은 휘발성을 가지는데 전원이 공급될때만 정보가 보관, 유지되며 전원이 차단되면 정보는 사라진다.

2.1.1 RS 플립플롭

RS 플립플롭은 세트 입력단자 S 와 리셋 입력단자 R이 있고 세트 신호와 리셋 신호가 동시에 1의 값을 가질 때, 불안정한 상태가 된다는 특징이 있다.

입력		출력
S	R	Q	[eqn: bar { Q}]
0	0	불변	불변
0	1	0	1
1	0	1	0
1	1	불안정	불안정

2.1.2 JK 플립플롭

JK 플립플롭은 RS 플립플롭이 세트 신호와 리셋 신호가 동시에 1의 값을 가질 때, 불안정해지는 단점을 보완한 플립플롭으로써, 세트 신호는 J, 리셋 신호는 K에 해당한다.

JK 플립플롭에서는 세트 신호와 리셋 신호가 동시에 1의 값을 가질 때, 이전 값을 반전시킨다. (이전 값이 1 이였으면 0으로, 0 이였으면 1로)

입력		출력
S	R	Q	[eqn: bar { Q}]
0	0	불변	불변
0	1	0	1
1	0	1	0
1	1	[eqn: bar { Q}]	Q

2.1.3 T 플립플롭

T 플립플롭은 JK 플립플롭을 이용하여 만들 수 있으며, T 의 값이 0일 경우, J와 K 값이 둘 다 0이 되어 변하지 않고, T의 값이 1일 경우 J와 K 값이 둘다 1이 되어 출력 값이 반전 되는 효과가 있다.

입력	출력
T	Q	[eqn: bar { Q}]
0	Q	[eqn: bar { Q}]
1	[eqn: bar { Q}]	Q

2.1.4 D 플립플롭

D 플립플롭은 데이터 비트를 기억하기 위한 기억 소자로써, 1개의 RS 플립플롭과 1개의 NOT 게이트를 사용하여 만들 수 있다.

D의 값이 0일 경우 S의 값은 0, R의 값은 1이 되어 리셋을 수행하여 Q의 값은 0이 되고, D의 값이 1일 경우 S의 값은 1, R의 값은 0이 되어 세트를 수행하여 Q의 값은 1이 된다.

입력	RS플립플롭		출력
D	S	R	Q	[eqn: bar { Q}]
0	0	1	0	1
1	1	0	1	0

2.2 레지스터

레지스터는 2진 정보를 기억하는 2진 기억 소자인 플립플롭들의 집합이다.

레지스터는 제어장치 내에서 임시 기억장치로 쓰이는데, 용량에는 한계가 있지만 주기억 장치에 비해 접근 시간이 빠르고, 체계적인 특징을 가진다.

2.2.1 시프트 레지스터

시프트 레지스터는 매 클록 주기로 모든 비트를 한자리씩 이동시키는 레지스터로써, 선형 시프트 레지스터인 경우에는 하나의 비트가 한쪽 끝에서 삽입되고 반대쪽 끝에서 떨어져 나가는 형태이고, 순환형 시프트 레지스터인 경우에는 한쪽 끝에서 떨어져 나간 비트가 반대쪽 끝에 다시 삽입된다.

시프트 레지스터는 병렬 인터페이스와 직렬 인터페이스를 변환하는데 유용하게 사용되는데, 시프트 레지스터는 간단한 지연 회로처럼 사용될 수 있다.

2.2.2 병렬 로드 레지스터

병렬 로드 레지스터는 2진 정보를 저장하기 위한 저장 레지스터로써, 레지스터를 구성하는 모든 플립플롭이 하나의 클록 펄스에 의해서 동시에 입력값을 저장(로드)한다.

병렬 로드 레지스터는 PIPO 형태(병렬 입력 - 병렬 출력)를 가진다.

2.3 카운터

카운터는 여러 개의 플립플롭의 조합으로 만들어진 특수한 순서논리회로로써, 클록펄스가 하나씩 인가될 때마다 미리 정해진 순서대로 반복되는 논리회로이다.

정해진 개수의 상태 값을 순환하도록 구성하기만 하면 카운터로 취급한다.

카운터는 주파수 감소기, 논리회로 동작 순서 제이기로 사용되는데,

종류로는 동기식 카운터와 비동기식 카운터가 있다.

2.3.1 동기식 카운터

동기식 카운터는 모든 플립플롭이 하나의 공통 클록에 병렬로 연결되고 모든 플립플롭이 동시에 트리거된다. 또한, 동기식 카운터는 불필요한 부분에 발생하는 노이즈 펄스로 인해 일어나는 컴퓨터의 일시적인 오동작인 글리치 현상이 나타나지 않는 장점이 있다.

2.3.2 비동기식 카운터

비동기식 카운터는 플립플롭의 출력이 다음 플립플롭의 클록으로 사용되어 동작하므로 리플 카운터라고도 한다.

비동기식 카운터는 플립플롭들이 서로 다른 2개 이상의 신호에 의해 클럭 단자가 구동되며 동기식 카운터에 비해 회로가 간단하지만 글리치 현상이 나타날 수 있는 단점이 있다.

*참고 사이트 및 문헌

-위키백과 (http://ko.wikipedia.org)

-배제대학교 공개 문서(http://www.pcu.ac.kr)

-광운대학교 공개 문서(www.kwangwoon.ac.kr)

-디지털 가상 실험실 (http://princess.kongju.ac.kr)