[논리회로설계실험]VHDL을 활용한 CLOCK설계
- 최초 등록일
- 2021.06.26
- 최종 저작일
- 2020.11
- 12페이지/ MS 워드
- 가격 2,000원
소개글
"[논리회로설계실험]VHDL을 활용한 CLOCK설계"에 대한 내용입니다.
목차
1. 목적(Purpose)
2. 배경이론(Background)
1) digital clock
2) Process별 설명
3) reference 및 확장방향
3. Source & Results
1) VHDL Source
2) Testbench Source
3) Result wave
4. Result analysis
5. Discussion
1) 예측과 실제 실험 결과 대조 분석
2) Algorithm 설명 및 이해
본문내용
1.목적(Purpose)
이번 실습은 지금까지 배운 자일링스의 사용법을 바탕으로 실제 clock을 구현하는 실습이다. 여기에 더해, 자일링스로 코딩한 결과물을 FPGA를 통해 직접 관찰하고, 물리적인 버튼들이 코딩과 연결되어, 입력신호로 작용하는 것을 관찰하고, 주어진 조건에 맞게 clock을 구현해본다. Clock의 구현방법은 간단히 소개하자면, 총 5개의 process를 이용하여, 7segment의 값들을 각각 지정하고, 클럭의 시간을 연산하여, 현실의 1초가 지날 때 마다 segment의 값이 바뀌도록 구현한다. 각각의 process들이 하는 역할들을 배경이론(background)에 소개해두었다.
2. 배경이론(Background)
1)digital clock
FPGA를 이용하여 실습하고, 이 과정에서 7segment를 이용하여 숫자를 나타내게 된다. VHDL에서 코딩과정은 시간의 각 자리숫자를 하나씩 연산하여 나타내게 되는데, 각 자리 숫자가 나타나는 시간 간격이 매우 짧아(50us) 우리 눈에는 동시에 모든 자리 숫자가 연산 되어 나타나는 것으로 보인다. 매우 짧은 시간동안 계속해서 값을 연산하여 7segment에 나타나지만, 우리 눈은 LED가 항상 켜져있는 것으로 생각하여 clock을 구현하게 된다. 아래 그림은 실습시 이용한 FPGA이고, 상단에 7segment 6자리로 구성된 display가 있다.
그림1. FPGA(Rov-Lab 3000)
2) Process별 설명
총 5개의 process를 코딩으로 구현하여 clock을 만든다. 다음은 각 process별 기능을 간단하게 설명하였다.
2-1) Process(sel) – segment 선택을 위한 process
6개의 자리수(시,분,초 각각 2자리씩)를 할당하는 process로, sel 값에 따라 7segment의 위치를 2진수로 나타내어 준다. 예를 들어, sel값이 000인 경우 시간의 10의 자리수의 segment를 가리키도록 하고, 2진수로는 000001에 할당시킨다.
참고 자료
https://components101.com/7-segment-display-pinout-working-datasheet -7segment
https://en.wikipedia.org/wiki/Digital_clock - digital colck
https://nymag.com/strategist/article/best-stopwatches.html - stopwatch
fundamentals of logic design, Charles, Larry L Kinney 7th