유한 상태 머신 : Mealy 상태 머신 및 Moore 상태 머신

문제를 제거하기 위해 도구를 사용해보십시오





그만큼 유한 상태 머신 (FSM) 의사 결정 논리를 이해하고 디지털 시스템을 제어하는 ​​데 중요합니다. FSM에서 출력과 다음 상태는 현재 상태와 입력 기능입니다. 즉, 다음 상태의 선택은 주로 입력 값에 따라 달라지며 강도는 더 많은 복합 시스템 성능으로 이어집니다. 순차 논리에서와 마찬가지로 출력을 결정하기 위해 과거 입력 내역이 필요합니다. 따라서 FSM은 순차 논리 역할을 이해하는 데 매우 협조적임을 입증합니다. 기본적으로 두 가지 방법으로 순차 논리 설계 즉, 기계뿐만 아니라 더 많은 기계. 이 기사에서는 유한 상태 기계 또는 FSM, 유형의 이론 및 구현에 대해 설명합니다. 유한 상태 머신 예제 , 장점과 단점.

FSM (유한 상태 머신)이란 무엇입니까?

그만큼 유한 상태 머신의 정의는 에서 FSM (유한 상태 머신)이라는 용어는 다음과 같이 알려져 있습니다. 유한 상태 오토메이션 . FSM은 소프트웨어가 아닌 하드웨어의 도움으로 실행할 수있는 계산 모델입니다. 이것은 몇 가지 컴퓨터 프로그램뿐만 아니라 순차 논리를 만드는 데 사용됩니다. FSM은 수학, 게임, 언어학 및 인공 지능과 같은 분야의 문제를 해결하는 데 사용됩니다. 특정 입력이 FSM의 도움으로 나타낼 수있는 특정 상태 변화를 일으킬 수있는 시스템에서.




유한 상태 머신

유한 상태 머신

유한 상태 머신 다이어그램 개찰구의 다양한 조건을 설명합니다. 개찰구에 동전을 놓을 때마다 볼트가 풀리고 개찰구를 누른 후에는 볼트가 게인됩니다. 볼트가없는 개찰구에 동전을 넣거나 볼트가 달린 개찰구를 눌러도 상태가 변경되지 않습니다.



유한 상태 머신의 유형

유한 상태 머신은 다음과 같은 두 가지 유형으로 분류됩니다. 가루 상태 기계무어 상태 머신 .

Mealy 스테이트 머신

출력이 현재 입력과 상태에 따라 달라지는 경우 FSM은 식사 상태 기계로 명명 될 수 있습니다. 다음 다이어그램은 밀리 상태 머신 블록 다이어그램 . 식사 상태 머신 블록 다이어그램은 두 부분으로 구성됩니다. 조합 논리 뿐만 아니라 기억. 기계의 메모리는 이전 출력 중 일부를 조합 논리 입력으로 제공하는 데 사용할 수 있습니다.

Mealy State Machine 블록 다이어그램

Mealy State Machine 블록 다이어그램

현재 입력과 상태를 기반으로이 기계는 출력을 생성 할 수 있습니다. 따라서 출력은 CLK 신호의 양수 또는 음수에서만 적합 할 수 있습니다. 식사 상태 머신의 상태 다이어그램은 다음과 같습니다.


Mealy State Machine의 상태 다이어그램

Mealy State Machine의 상태 다이어그램

식사 상태 기계의 상태 다이어그램은 주로 A, B, C의 세 가지 상태를 포함합니다.이 세 가지 상태는 원 안에 태그가 지정되고 모든 원이 하나의 상태와 통신합니다. 이 세 가지 상태 간의 변환은 방향 선으로 표시됩니다. 위의 다이어그램에서 입력 및 출력은 0/0, 1/0 및 1/1로 표시됩니다. 입력 값에 따라 모든 상태에서 두 번의 변환이 있습니다.

일반적으로 밀리 머신에 필요한 상태의 양은 무어 상태 머신의 필수 상태 수보다 적거나 같습니다. 모든 Mealy 상태 시스템에는 동일한 Moore 상태 시스템이 있습니다. 결과적으로 필요에 따라 그중 하나를 사용할 수 있습니다.

무어 스테이트 머신

출력이 현재 상태에 따라 달라지는 경우 FSM은 다음과 같이 명명 될 수 있습니다. 무어 상태 머신 . 그만큼 무어 상태 머신의 블록 다이어그램 아래에 나와 있습니다. Moore 상태 머신 블록 다이어그램은 조합 논리와 메모리라는 두 부분으로 구성됩니다.

Moore State Machine 블록 다이어그램

Moore State Machine 블록 다이어그램

이 경우 현재 입력과 현재 상태가 다음 상태를 결정합니다. 따라서 추가 상태에 따라이 기계는 출력을 생성합니다. 따라서 이것의 출력은 상태 변환 후에 간단히 적용 할 수 있습니다.

그만큼 무어 상태 머신 상태 다이어그램 아래에 나와 있습니다. 위의 상태에서 다이어그램에는 A, B, C, D라는 식사 상태 기계와 같은 4 가지 상태가 포함됩니다. 4 가지 상태와 개별 출력이 원 안에 배치됩니다.

Moore State Machine의 상태 다이어그램

Moore State Machine의 상태 다이어그램

위의 그림에는 A, B, C, D의 네 가지 상태가 있습니다. 이러한 상태와 각 출력은 원 안에 레이블이 지정되어 있습니다. 여기에서 단순히 입력 가치가 모든 전환에 표시됩니다. 위 그림에는 입력 값에 따라 모든 상태에서 두 번의 변환이 포함됩니다.

일반적으로이 기계에 필요한 상태의 양은 식사 상태 기계에 필요한 상태의 수보다 큽니다.

일반적으로이 시스템의 필수 상태 수는 다음의 필수 상태와 동일합니다. MSM (Mealy 상태 머신) . 모든 Moore 상태 머신에 해당하는 Mealy 상태 머신이 있습니다. 결과적으로 필요에 따라 그중 하나를 사용할 수 있습니다.

모든 무어 상태 머신에 대해 동일한 식사 상태 머신이 있습니다. 결과적으로 필요에 따라 그중 하나를 사용할 수 있습니다.

유한 상태 머신 애플리케이션

그만큼 유한 상태 머신 애플리케이션 주로 다음을 포함합니다.

FSM은 가장 많이 사용되는 게임에 사용됩니다. 인공 지능 그러나 그들은 또한 텍스트 구문 분석, 고객의 입력 처리 및 네트워크 프로토콜 탐색 실행에서 자주 발생합니다.

이것들은 계산 능력이 제한되어 있으며 비교적 쉽게 인식 할 수있는 좋은 품질을 가지고 있습니다. 따라서 소프트웨어 개발자와 시스템 설계자가 어려운 시스템의 성능을 요약하기 위해 자주 사용합니다.

유한 상태 기계는 자동 판매기, 비디오 게임, 신호등, 컨트롤러 CPU, 텍스트 파싱, 프로토콜 분석, 음성 인식 , 언어 처리 등

유한 상태 머신의 장점

그만큼 Finite State Machine의 장점 다음을 포함하십시오.

  • 유한 상태 머신은 유연합니다.
  • 중요한 추상에서 코드 실행으로 쉽게 이동
  • 낮은 프로세서 오버 헤드
  • 상태의 도달 가능성을 쉽게 결정

유한 상태 머신의 단점

그만큼 유한 상태 머신의 단점 다음을 포함

  • 결정 론적 유한 상태 머신의 예상되는 특성은 컴퓨터 게임과 같은 일부 영역에서 필요하지 않을 수 있습니다.
  • FSM을 사용하여 거대한 시스템을 구현하는 것은 디자인 아이디어 없이는 관리하기 어렵습니다.
  • 모든 도메인에 적용되는 것은 아닙니다.
  • 상태 변환의 순서는 융통성이 없습니다.

따라서 이것은 유한 상태 머신 . 위의 정보로부터 마지막으로 동기 순차 회로가 입력에 따라 CLK 신호의 양의 또는 음의 변환에 대한 상태에 영향을 미친다는 결론을 내릴 수 있습니다. 따라서이 동작은 상태 다이어그램으로 알려진 그래픽 형식으로 나타낼 수 있습니다. 동기 순차 회로의 또 다른 이름은 FSM (유한 상태 머신)입니다. 여기에 질문이 있습니다. FSM의 특성 ?