임베디드 스터디 - 순서논리회로 - 2
임베디드 스터디 - 순서논리회로 - 2
이번 글 참고자료:
한빛아카데미, 디지털 논리회로4판
ElectronicsTutorials
A digital logic designer and circuit simulator. Contribute to hneemann/Digital development by creating an account on GitHub.
레지스터
- 여러 비트로 구성된 2진수를 저장하고, 클럭마다 비트를 이동(Shift)할 수 있는 회로
- 1비트를 저장하는데 보통 D-FF를 많이 사용함
- CPU의 연산 결과를 임시로 저장하거나, 2의 보수 연산, 곱셉, 혹은 나눗셈에도 사용
레지스터의 종류
- 시프트 방향
- Left Shift Register
- Right Shift Register
- 입출력의 형태
- SISO(Serial Input Serial Output)
- SIPO(Serial Input Parallel Output)
- PISO(Parallel Input Serial Output)
- PIPO(Parallel Input Parallel Output)
SISO 레지스터
- 직렬로 입력 신호가 들어와 각 클럭마다 신호가 레지스터의 방향대로 시프트된다. 출력은 클럭을 따라 먼저 입력된 신호가 먼저 출력된다.(FIFO)
SIPO 레지스터
- 직렬로 입력 신호가 들어와 각 클럭마다 신호가 레지스터의 방향대로 시프트된다. 출력은 레지스터의 비트 전체를 확인할 수 있다.
PISO 레지스터
- 병렬로 입력 신호가 들어와 각 클럭마다 각 플립플롭의 데이터가 업데이트된다. 출력은 클럭을 따라 순차적으로 신호가 출력된다.
PIPO 레지스터
- 병렬로 입력 신호가 들어와 각 클럭마다 각 플립플롭의 데이터가 업데이트된다. 출력은 레지스터의 비트 전체를 확인할 수 있다.
양방향 레지스터
$R/\overline{L}$ 신호에 따라 좌측으로 방향으로 레지스터 데이터가 쉬프팅되거나, 우측 방향으로 레지스터 데이터가 쉬프팅되는 레지스터이다.
양방향 레지스터는 동작에 따라 시프트 연산을 수행할 수 있다.
- 논리 시프트(Logical Shift) : 레지스터 데이터가 한 칸씩 움직이는 연산. 좌로 움직이면 데이터 값 X2, 우로 움직이면 데이터 값 /2이다.
- 회전 시프트(Rotate Shift) : 순환 시프트(Circular Shift)라고도 함. 출력되는 레지스터 데이터가 다시 입력으로 들어가는 연산
- 산술 시프트(Arithmetic Shift) : 데이터가 부호를 갖는 상태일 경우(일반적인 Signed 데이터 형태), MSB(부호 비트)를 유지하여 빈 자리를 채운다. 양수(MSB=0)일 경우 우측 시프트 시 MSB 자리에 0 삽입하고, 음수(MSB=1)일 경우 우측 시프트 시 MSB 자리에 1 삽입한다.
범용 시프트 레지스터
- SISO, SIPO, PISO, PIPO, 양방향 시프트 레지스터의 기능을 모두 합친 레지스터이다. 대표적인 IC칩으로는 74194 IC가 있다.
이 기사는 저작권자의 CC BY 4.0 라이센스를 따릅니다.





