본문 바로가기

University curriculum/[Course] Digital Engineering

[디지털 공학(25)] Shift Register(시프트 레지스터)_순서논리회로 (7)

반응형

 

안녕하세요.

이번 Shift Register 글에서는 마지막으로 순서논리회로에 대한 내용을 마치겠습니다.


 


순서논리 회로에는 다양한 내용이 있습니다. 필요에 따라 아래 글들도 참고해보세요~!!~

1. Latch(래치)와 Flip-flop(플립플롭)

https://semicircuit.tistory.com/37

2. 비동기 카운터

https://semicircuit.tistory.com/38

3. 동기 카운터

https://semicircuit.tistory.com/39

4. 불규칙 카운터

https://semicircuit.tistory.com/40

5. State Machine 설계

https://semicircuit.tistory.com/41

6. UP/DOWN Counter

https://semicircuit.tistory.com/42

7. 시프트 레지스터

https://semicircuit.tistory.com/43


 

 

※1. 기본 시프트 레지스터 동작

(1) 레지스터 : 데이터를 저장하는 것, 플립플롭으로 구성(일반적으로 D F/F 사용)

(2)시프트 레지스터 : 데이터 저장 + 이동이 가능, 플립플롭으로 구성(일반적으로 D F/F사용)

 

=> D F/F의 사용

- 입력이 1이면 1을 그대로 저장하고 입력이 0이면 0을 그대로 저장한다.

 

 

 

※2. 직렬 입력/직력 출력 시프트 레지스터

-> 한 비트씩 Data가 밀려 나간다.

-> 오른쪽으로 shift, 왼쪽으로 shift가 가능하다.

-> 위의 예시로 볼 때 Q0는 Data Input을 보고 결과를 낸다면 다음 신호부터는 이전의 신호에서 1Clock Right Shift된다.

 

 

 

※3. 직렬 입력/병렬 출력 시프트 레지스터

-> 한 비트씩 Data가 밀려 나간다.

-> 오른쪽으로 shift, 왼쪽으로 shift가 가능하다.

-> 위의 예시로 볼 때 Q0는 Data Input을 보고 결과를 낸다면 다음 신호부터는 이전의 신호에서 1Clock Right Shift된다.

-> 직렬 입력/직렬 출력 시프트 레지스터와 동일한 동작을 한다.

 

 

 

※4. 병렬 입력/직렬 출력 시프트 레지스터

=>D0D1D2D3에 입력된 1010의 입력이 shiftLOAD의 level이 0이고 CK가 Raising Edge일 때 출력으로 1클럭 당 하나의 입력이 D3부터 D0순으로 출력된다.

 

 

 

 

※5. 병렬 입력/병렬 출력 시프트 레지스터

=> CK가 raising Edge 일 때 latch한다.

 

 

 

 

 

※6. 시프트 레지스터 카운터

-> 직렬 출력을 직렬입력에 연결한 레지스터이며 링 카운터가 있다.

 

* 링 카운터

: 맨 오른쪽 플립플롭의 출력이 맨 왼쪽의 입력으로 연결 되있고 나머지는 이전 플립플롭 출력을 입력으로 받는다. (링 모양)

: 맨 처음(왼쪽) 플립플롭의 Preset에 0을 넣어 줌으로써 Q0에 1의 출력을 내면 클럭 펄스가 하나씩 입력 될 때마다. 왼쪽 F/F출력 값은 다음 F/F으로 이동되며 마지막 F/F 출력은 처음 값(맨왼쪽)으로 계속해서 순환된다.

: 계속해서 순환(반복)하는 구조이므로 처음 1번만 Preset이 값을 주면 된다.

 

ex) 크리스마스트리처럼 번갈아 가면서 반복해 LED가 켜지는 곳에 사용이 가능하다.

 

 

 

반응형