VHDL을 이용한 Shift Register구현
- 최초 등록일
- 2010.12.27
- 최종 저작일
- 2010.10
- 7페이지/ 한컴오피스
- 가격 2,000원
소개글
VHDL코드를 이용하여 SHiftRegester를 구현하였습니다
기초적인 이론내용과 코드와 그에대한설명
시뮬레이션 결과가 포함되어있습니다.
목차
▶Shift Register?
▶ Mux source code & Simulation
▶ D-flipflop source code & Simulation
▶ 4bit shift register source code & Simulation
본문내용
▶Shift Register?
매 클록 주기로 모든 비트를 한 자리 옮기게 하는 레지스터(전자회로) 이다. 우리는 지난 이론시간에 데이터를 저장하는 역할을 하는 플립플롭에 대하여 공부하였다. 하지만 문제의 크기가 커짐에 따라 데이틀 저장 할 때는 플립플롭보다는 레지스터가 사용된다. 비트의 2진수를 레지스터에 저장하려면 플립플롭이 4개 필요하다. 2진수를 레지스터에 직렬로 입출력할 수 있게 플립플롭을 연결한 것을 시프트 레지스터 (shift register)라고 한다. 한 번에 여러 비트를 입출력할 수 있는 레지스터는 병렬로 데이터가 이동한다고 한다.
가장 간단한 형태의 시프트 레지스터는 플리플롭의 전합으로 된 것인데, 클럭 또는 시프트 입력에 따라 데이터를 한 장소에서 오른쪽으로 이동시킨다. 여러종류에 플립플롭중 어떤 것을 사용하여도 무방하지만 우리는 D플립플롭을 사용하여 설계하기로 한다.
⦁Mux Selector
시프트 레지스터는 시프트 입력이나 클럭에따라 데이터를 한 장소에서 왼쪽이나 오른쪽으로 이동시킬 수 있다. 우리는 그런 입력을 제어하기위해 시프트 입력을 줄 수 있는 것이 필요한데 이 역할을 하는 부분이 Mux Selector 부분이다.
Mux는 multiplexer로 여러 개의 입력선 중에서 하나를 선택하여 단일 출력선으로 연결하는 조합회로이다. 다중 입력 데이터를 단일 출력하므로 데이터 셀렉터(data selector)라고도 하는 것이다. 우리는 4bit mux를 사용함으로 data가 4개 입력되면 selector(3bit)부분에 의하여 4개의 data중 하나가 선택되게 된다.
아래의 진리표에 의하여 데이터가 선택되게 된다.
Mux에 의하여 선택된 값에 의하여 실질적으로 자리이동이 발생되는 부분이다.
내부에 저장된 2진 정보를 오른쪽 또는 왼쪽으로 이동시킬 수 있다.
위의 mux selector부분과 연결시켜 보면 En의 selector에의하여 선택된 데이터가 D-ff으로 입력됨을 알 수있다. 입력된 값은 D-ff을 거쳐 나오면 한비트가 이동된 상태로 출력된다.
참고 자료
없음