반응형
안녕하세요 😊
오늘은 전기전자 회로에서 유한한 상태를 기억하고, 입력에 따라 상태가 전환되는 논리 회로
Finite State Machine (FSM) 에 대해 알아보겠습니다.
✅
Finite State Machine (FSM)란?
Finite State Machine (FSM), 한국어로 유한 상태 머신은
유한한 개수의 상태를 가지며, 입력 신호에 따라 상태가 전환되는 디지털 논리 회로입니다.
순차 논리 회로의 일종으로, 정해진 규칙에 따라 상태를 이동하며,
각 상태에 따라 출력이 달라집니다.
💡 비유:
FSM은 마치 자동문 제어 시스템과 같습니다.
사람이 가까이 오면 열리고, 멀어지면 닫히는 규칙에 따라 상태가 변합니다.
🔌 FSM의 주요 특징
| 특징 | 설명 |
| 상태 기반 동작 | 현재 상태와 입력에 따라 다음 상태가 결정됨 |
| 메모리 의존성 | 이전 상태를 기억하고 전환됨 |
| 클럭 신호 필요 | 시간에 맞춰 상태가 변경 |
| 정해진 순서 | 상태 전환이 예측 가능하고 규칙적 |
🔄 FSM의 특징
- 상태 전환이 입력 신호에 의해 결정
- Moore Machine: 상태만으로 출력 결정
- Mealy Machine: 상태와 입력으로 출력 결정
🧱 FSM의 구성 요소
| 구성 요소 | 설명 |
| 상태 (State) | 현재 시스템의 상태를 표현 |
| 입력 (Input) | 상태 전환을 유발하는 신호 |
| 출력 (Output) | 현재 상태에 따른 출력 |
| 전이 조건 (Transition Condition) | 상태가 변경되는 조건 |
| 초기 상태 (Initial State) | 시작 시점의 상태 |
🎨 FSM의 두 가지 유형
1️⃣ Moore Machine
- 출력이 현재 상태에만 의존
- 상태가 변경될 때만 출력이 바뀜
예시: 교통 신호등, 엘리베이터 제어
| 상태 | 출력 |
| Green | GO |
| Yellow | SLOW |
| Red | STOP |
2️⃣ Mealy Machine
- 출력이 현재 상태와 입력 신호에 의존
- 입력에 따라 즉시 출력이 변경
예시: 키패드 입력, 네트워크 프로토콜
| 상태 | 입력 | 출력 |
| IDLE | 1 | WAIT |
| WAIT | 0 | IDLE |
✔️ FSM 설계 단계
1️⃣ 문제 정의: FSM이 수행할 동작을 정의
2️⃣ 상태 다이어그램 작성: 상태 간 전환을 시각적으로 표현
3️⃣ 진리표 작성: 각 상태에서 입력에 따른 전환을 정리
4️⃣ 상태 부여: 상태를 이진수로 표현
5️⃣ 논리식 생성: 논리 게이트로 회로 구성
6️⃣ 최적화: 카르노 맵을 사용하여 간소화
FSM을 통해 교통 신호, 스마트 홈 제어, 게임 상태 관리 등을
효율적으로 제어할 수 있습니다.
📐 예시: 간단한 교통 신호 제어 FSM
✔️ 상태 정의
- Green: 차량이 진행 중
- Yellow: 신호 변경 준비
- Red: 차량 정지
✔️ 상태 다이어그램
[Green] --(Timer Expired)--> [Yellow]
[Yellow] --(Timer Expired)--> [Red]
[Red] --(Timer Expired)--> [Green]
✔️ 진리표
| 현재상태 | Timer Expired | 다음 상태 |
| Green | 1 | Yellow |
| Yellow | 1 | Red |
| Red | 1 | Green |
✔️ 논리식 도출

⚡ 실무에서 FSM의 활용 예시
| 용도 | 설명 |
| 🚦 교통 신호 제어 | 시간에 따른 신호 변경 |
| 🎮 게임 상태 관리 | 캐릭터의 동작 상태 전환 |
| 🏠 스마트 홈 제어 | 문 잠금/해제, 조명 제어 |
| 📡 네트워크 프로토콜 | 데이터 전송 상태 관리 |
🧠 오늘의 요약
- Finite State Machine (FSM)은 유한한 개수의 상태를 가지고 입력 신호에 따라 상태가 전환됩니다.
- Moore Machine과 Mealy Machine 두 가지 유형이 있습니다.
- 교통 신호, 엘리베이터, 네트워크 프로토콜 등에서 상태 전환을 관리합니다.
- 상태 다이어그램과 진리표를 통해 정확한 제어가 가능합니다.
📌 다음 글 예고
다음 시간에는 비동기식 회로(Asynchronous Circuit)와 동기식 회로(Synchronous Circuit)에 대해 알아보겠습니다.
읽어주셔서 감사합니다 😊
유익했다면 댓글과 공감 부탁드려요!
반응형