논리회로실험 2014 Digital clock
- 최초 등록일
- 2014.11.05
- 최종 저작일
- 2014.03
- 11페이지/ 한컴오피스
- 가격 1,000원
목차
1. Purpose
2. Background
3. Sources & Results
4. Result analysis
5. Discussion
본문내용
1. Purpose
1) 4MHz의 오실레이터 clock을 분주하여, 시, 분, 초를 나타내는 디지털 시계를 설계한다.
2) RoV-Lab 3000을 이용하여 회로 설계를 검증한다.
2. Background
이번 실험은 4MHz의 오실레이터 clock을 분주하여, 디지털 시계를 설계하고 RoV-Lab 3000을 이용하여 설계한 회로를 검증하는 것이 목적이다. 먼저 RoV-Lab 3000의 기능 중에서 실험에서 사용하게 될 기능은 7 segment이다.
<중 략>
library ieee;
use ieee.std_logic_1164.all;
use ieee.std_logic_arith.all;
use ieee.std_logic_unsigned.all;
entity digital_clock is
port( rst_n : in std_logic; -- reset 입력
clk : in std_logic; -- clock 입력
digit : out std_logic_vector(6 downto 1); -- digit입력
seg_a : out std_logic; -- segment 지정
seg_b : out std_logic; -- segment 지정
seg_c : out std_logic; -- segment 지정
seg_d : out std_logic; -- segment 지정
<중 략>
Test Bench에서는 2000000개를 카운트하면 시뮬레이션 시간이 너무 오래 걸리기 때문에 count_clk이 2000개 ( 1ms )가 되면 1초로 가정하고 진행하였다. [ 그림 4 ]를 보면 12시 59분 54초에서 1초가 지날 때마다 sec01_cnt가 1씩 증가했고, 12시 59분 59초에서는 1초가 지나면서 sec01_cnt, sec10_cnt, min01_cnt, min10_cnt이 모두 0으로 돌아가고, 12시간 표시방식이기 때문에 hr01_cnt는 1, hr_10_cnt는 0이 되어 1시 00분 00초로 나타나는 것을 볼 수 있다.
참고 자료
없음