본문내용
도 진리표대로 값이 나왔다.
* 8Bit Shift Register
- 저장된 데이터(8바트)를 한쪽 방향으로 이동시키기 위한 레지스터
- 시리얼데이터를 처리하는데 유용함
원리
플립플롭이 하나의 기억소자가 될 수 있다. 이처럼 계산기 내에서 수치나 명령 등의 정보를
일시 기억해 두는 일연의 플립플롭을 레지스터(register)라 한다. 레지스터의 기능은
정보를 저장할뿐만 아니라 직렬의 입력을 병렬의 출력으로, 병렬의 입력을 직렬의 출력으로
바꾸는 데도 쓰이고 저장된 정보를 클럭펄스에 따라 좌, 우로 이동시키는 쉬프트
레지스터로도 사용된다.
소스 코드
mux_sel.vhd 와 test_d_ff.vhd를 컴포넌트로 선언하고, 위의 그림대로 시그널을 선언하였다. 그 시그널에 동작을 기술하였다.
시뮬레이션 캡춰
mux selector의 sel 신호는 모두 같기 때문에, 그 중 M1의 sel 신호만 표현하였다.
50~100ns 사이를 보면 sel='100'즉 En_Load 이다. 그때 입력 Data가 11110001이므로,
그 값을 로드 하면 11110001이다.
100~150ns 사이를 보면 sel='001‘즉 En_Right 이다. 그 전 출력이 11110001이므로,
그 값을 오른쪽 쉬프트 하면 01111000이다.
150~200ns 사이를 보면 sel='011'즉 En_Left 이다. 그 전 출력이 01111000 이므로,
그 값을 왼쪽 쉬프트 하면 11110000이다.
400~450ns 사이를 보면 sel='000'즉 stay 이다. 그 전 출력이 11110111 이므로,
그 값을 유지하고 있다.
* 8Bit Shift Register
- 저장된 데이터(8바트)를 한쪽 방향으로 이동시키기 위한 레지스터
- 시리얼데이터를 처리하는데 유용함
원리
플립플롭이 하나의 기억소자가 될 수 있다. 이처럼 계산기 내에서 수치나 명령 등의 정보를
일시 기억해 두는 일연의 플립플롭을 레지스터(register)라 한다. 레지스터의 기능은
정보를 저장할뿐만 아니라 직렬의 입력을 병렬의 출력으로, 병렬의 입력을 직렬의 출력으로
바꾸는 데도 쓰이고 저장된 정보를 클럭펄스에 따라 좌, 우로 이동시키는 쉬프트
레지스터로도 사용된다.
소스 코드
mux_sel.vhd 와 test_d_ff.vhd를 컴포넌트로 선언하고, 위의 그림대로 시그널을 선언하였다. 그 시그널에 동작을 기술하였다.
시뮬레이션 캡춰
mux selector의 sel 신호는 모두 같기 때문에, 그 중 M1의 sel 신호만 표현하였다.
50~100ns 사이를 보면 sel='100'즉 En_Load 이다. 그때 입력 Data가 11110001이므로,
그 값을 로드 하면 11110001이다.
100~150ns 사이를 보면 sel='001‘즉 En_Right 이다. 그 전 출력이 11110001이므로,
그 값을 오른쪽 쉬프트 하면 01111000이다.
150~200ns 사이를 보면 sel='011'즉 En_Left 이다. 그 전 출력이 01111000 이므로,
그 값을 왼쪽 쉬프트 하면 11110000이다.
400~450ns 사이를 보면 sel='000'즉 stay 이다. 그 전 출력이 11110111 이므로,
그 값을 유지하고 있다.