Rozšířený konečný stavový stroj - Extended finite-state machine

V konvenčním stroji s konečným stavem je přechod spojen se sadou vstupních booleovských podmínek a sadou výstupních booleovských funkcí. V modelu modelu EFSM (Extended Finite State Machine) lze přechod vyjádřit pomocí příkazu „ if “, který se skládá ze sady podmínek spouštění . Pokud jsou splněny všechny podmínky spouštění, přechod se aktivuje, přenese stroj z aktuálního stavu do dalšího stavu a provede zadané datové operace .

Definice

EFSM je definován jako n-tice, kde

  • S je sada symbolických stavů,
  • I je sada vstupních symbolů,
  • O je sada výstupních symbolů,
  • D je n-rozměrný lineární prostor ,
  • F je sada aktivačních funkcí ,
  • U je sada aktualizačních funkcí ,
  • T je přechodový vztah,

Struktura

Architektura EFSM: Model EFSM se skládá z následujících tří hlavních kombinačních bloků (a několika registrů).

  • FSM blok: Konvenční stroj s konečným stavem realizující grafy přechodu stavu modelu EFSM.
  • Blok A: aritmetický blok pro provádění datové operace spojené s každým přechodem. Provoz tohoto bloku je regulován výstupními signály bloku FSM.
  • E-blok: Blok pro vyhodnocení podmínek spouštění spojených s každým přechodem. Vstupními signály do tohoto bloku jsou datové proměnné, zatímco výstupem je sada binárních signálů, které jsou pro vstup přijímány blokem FSM. Informace o redundantním výpočtu se získávají analýzou interakcí mezi třemi základními bloky. Pomocí této informace lze určité vstupní operandy aritmetického bloku a vyhodnocovacího bloku zmrazit prostřednictvím vstupního hradlování za konkrétních podmínek doby běhu, aby se snížilo zbytečné přepínání v návrhu. Na úrovni architektury, pokud je každá operace vyhodnocení spouštěče a datová operace považována za atomovou akci, pak EFSM implikuje implementaci téměř nejnižšího výkonu.

Chování cyklu EFSM lze rozdělit do tří kroků:

  1. V E-bloku vyhodnoťte všechny podmínky spouštění.
  2. V bloku FSM vypočítejte další stav a signály ovládající blok A.
  3. V bloku A proveďte nezbytné datové operace a pohyby dat.

Viz také

Abstraktní stavový automat Rozšířené konečné stavové automaty

Reference

  1. ^ Cheng, KT; Krishnakumar, AS (1993). "Automatické generování funkčních testů pomocí rozšířeného modelu stroje s konečným stavem". Mezinárodní konference o automatizaci designu (DAC) . ACM. str. 86–91.