door_lock
추천글 : 【논리설계】 논리설계 목차
▶ Implementation in software
int door_lock(){
int Key;
int Error = 0;
static int c[3] = {3, 4, 2};
// S0; state 0
while (! KeyPressed());
Key = read_value();
if(v0 != c[0]) error = 1;
if(Error == 1) return 0;
// S1; state 1
while(! KeyPressed());
Key = read_value();
if(v1 != c[1]) error = 1;
if(Error == 1) return 0;
// S2; state 2
while(! KeyPressed());
Key = read_value();
if(v2 != c[2]) error = 1;
if(Error == 1) return 0;
// OPEN
return 1;
}
▶ State Transition Diagram (FSM)
Figure. 1. Moore machine으로 표현 State Transition Diagram
▶ State transition table & Encoding
Table 1. state transition table
▶ Data-path
Figure 2. door_lock의 data-path
control unit은 데이터도 저장하므로 data unit이기도 함
▶ Logic design
○ new := KeyPressed, reset := RESET, equal := Equal
○ state := s3s2s1s0
○ mux := 2m1m0
○ s0 = reset + reset' · new' · s0
○ s1 = reset' · new · equal · s0 + reset' · new' · s1
○ s2 = reset' · new · equal · s1 + reset' · new' · s2
○ s3 = reset' · s3 + reset' · new · equal · s2
○ mi = si , 0 ≤ i ≤ 2
○ open = s3
▶ Circuit design
Figure. 3. sequential logic circuit
입력: 2016.09.11 20:45
수정: 2016.12.06 14:35
'▶ 자연과학 > ▷ 논리설계' 카테고리의 다른 글
【논리설계】 4강. 조합논리의 파형 (0) | 2016.09.23 |
---|---|
【Logic Design】 2-bit comparator (0) | 2016.09.17 |
【Logic Design】 days_of_the_month (0) | 2016.09.11 |
【논리설계】 3강. 조합논리 (2) | 2016.09.08 |
【논리설계】 2강. 논리설계의 기초 (0) | 2016.09.06 |
최근댓글