< 6진 카운터 구현 (0~5) >
1) 3비트 6진 Counter 상태도에 따른 Flip Flop 입력식 도출.(JK 플립 플롭을 사용)
è 0 -> 1 -> 2 -> 3 -> 4 -> 5 -> 0 (반복 : 0 ~ 5 )
- 3bit 6진 Counter_six(0~5) 구현è 2진수 표기: 3bit (CBA) è JK플립플롭할당: FFc, FFb, FFa
JK-Flip Flop 사용시 출력상태도 -설계목표: 카운터6 (0~5) | 사용되는 Flip Flip 의 개수 3개에 대한 각각의 입력조건을 도출함: (FF의 상태여기표를 참조). | ||||||||||||
10진 | Q(t): 현상태 | Q(t+1):차기상태 | FFc | FFb | FFa | ||||||||
C | B | A | C’ | B’ | A’ | Jc | Kc | Jb | Kb | Ja | Ka | ||
0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | X | 0 | X | 1 | X | |
1 | 0 | 0 | 1 | 0 | 1 | 0 | 0 | X | 1 | X | x | 1 | |
2 | 0 | 1 | 0 | 0 | 1 | 1 | 0 | X | x | 0 | 1 | X | |
3 | 0 | 1 | 1 | 1 | 0 | 0 | 1 | X | x | 1 | x | 1 | |
4 | 1 | 0 | 0 | 1 | 0 | 1 | x | 0 | 0 | X | 1 | x | |
5 | 1 | 0 | 1 | 0 | 0 | 0 | x | 1 | 0 | x | x | 1 | |
6 | 1 | 1 | 0 | x | x | X | X | X | x | X | x | X | |
7 | 1 | 1 | 1 | x | x | X | x | X | x | x | X | x |
***< J-K Flip Flop 상태여기표 >***
현재 상태 | 차기 상태 | 요구 입력 |
Q(t) | Q(t+1) | J K |
0 | 0 | 0 X |
0 | 1 | 1 X |
1 | 0 | X 1 |
1 | 1 | X 0 |
2) 카르노맵을 이용한 간소화
< 간소화 결과 > (1) FFc : Jc = BA, Kc = A
(2) FFb : Jb = #CA, Kb = A
(3) FFa : Ja = 1, Ka = 1
< 카르노맵 간소화 절차 >
(1) FF_C : Jc = BA , Kc = A
C BA | 00 | 01 | 11 | 10 | C BA | 00 | 01 | 11 | 10 | ||
0 | 1 | 0 | X | X | x | X | |||||
1 | x | x | X | X | 1 | 1 | x | x |
C BA | 00 | 01 | 11 | 10 | C BA | 00 | 01 | 11 | 10 | ||
0 | 1 | X | x | 0 | X | x | 1 | ||||
1 | X | X | 1 | X | x | x | x |
(3) FF_A : Ja = 1 , Ka = 1
C BA | 00 | 01 | 11 | 10 | C BA | 00 | 01 | 11 | 10 | ||
0 | 1 | X | X | 1 | 0 | X | 1 | 1 | X | ||
1 | 1 | x | X | x | 1 | X | 1 | x | x |
3) 회로 구현
- Altera MAX+plus2 를 이용하여 회로를 구현한다.
à JK Flip Flip (“jkff”) 3개를 불러서 상기 입력식과 일치하도록 상호 연결한다.
4) simulation
- Altera MAX+plus2 를 이용하여 Waveform simulation 을 실행하여 예측된 결과를 확인한다.
* pr (preset) --> 강제로 '1' 을 만들고자 할때 ==> 111 (7) .
* clr (clear) --> 강제로 '0' 을 만들고자 할때 ==> 000 (0)