- •1 Introduction (Введение)
- •2 Generalized block diagram of a finite state machine (Обобщенная структурная схема конечного автомата).
- •Push – вталкивать данные в стек;
- •Graphs (Графы)
- •Figure 3: Directed labeled graph for the edge detector Ориентированный помеченный граф для краевого детектора)
- •4 Finite State Machines (Конечные Автоматы)
- •5 Unified Modeling Language (Унифицированный язык моделирования)
- •Uml state machines (конечные автоматы унифицированного языка моделирования).
- •Fsm logic (логическая схема работы конечного автомата).
- •State diagrams versus flowcharts (диаграммы состояний в сравнении с блок-схемами программ)
- •Uml state diagram (диаграмма состояний уям)
- •Defining a State diagram (построение диаграммы состояний)
- •Elements of a State diagram (Элементы диаграммы состояний)
- •Asm Chart (диаграмма алгоритмического конечного автомата)
- •Detailed asm Chart (подробная диаграмма asm).
- •Register transfer level (Условное изображение на уровне rtl).
- •Rtl in the circuit design cycle (описание на уровне rtl для разработки имс).
- •Automata-based programming (программирование с помощью модели конечных автоматов).
- •Example (пример)
- •Traditional (imperative) program (обычная императивная программа).
- •Расшифровка операторов программы на языке с:
- •Automata-based style program (программа на основе модели конечного автомата)
- •A separate function for the automaton step (отдельная функция для этапа конечного автомата)
- •Explicit state transition table (таблица переходов состояний в явном виде)
- •Using object-oriented capabilities (использование объектно-ориентированных возможностей)
- •Other extensions
- •Moore machine
- •Formal definition
- •Mealy machine
- •Formal definition
- •Mathematical model
- •Advantages and disadvantages (преимущества и недостатки).
- •Formal definition (формальное определение).
- •Example (пример)
- •Example (пример)
- •Transformations from/to state diagram (переход от/к диаграмме состояний).
- •Directed graph of a finite state machine (направленный граф конечного автомата).
- •Harel statechart (диаграммы Harel).
- •С. State transition table (таблица смены состояний).
- •Δ and λ aren’t shown in Fig.1. Δ и λ не показаны на схеме для визуального упрощения.
- •The methods to define automata (Способы задания автоматов)
- •Transition and output tables (Таблицы переходов и выходов)
- •Transition and output tables for Mealy automaton (тпв автомата Мили)
- •Transition and output tables for Moore automaton (тпв автомата Мура)
Uml state diagram (диаграмма состояний уям)
Условные обозначения:
Start – старт;
Stop – стоп;
Continue – продолжить;
Pause – пауза;
Unpause – без паузы;
Simulator running – работа моделирующей программы (программы моделирования);
Simulator paused – пауза в работе моделирующей программы;
Data requested – запрос данных;
Do/wait – выполнять/ожидайте;
Log retrieval – поиск (выборка) файла регистрации (протокола);
Do/output log – выполнять/выходной файл регистрации (протокол).
The Unified Modeling Language (UML) state diagram is essentially a Harel statechart with standardized notation, which can describe many systems, from computer programs to business processes.
Диаграмма состояний UML (УЯМ) является по существу диаграммой Harel вместе со стандартным набором изображений с помощью условных знаков, которые могут описывать многие системы, от компьютерной программы до делового процесса.
The following are the basic notational elements that can be used to make up a diagram (следующие элементы являются основным набором изображений с помощью условных знаков для отображения диаграмм):
Filled circle, pointing to the initial state (заполненный кружок, указывающий на начальное состояние);
Hollow circle containing a smaller filled circle, indicating the final state (if any) (назаполненный кружок, содержащий меньший по размеру заполненный кружок, указывающий на конечное состояние, если это имеет место);
Rounded rectangle, denoting a state. Top of the rectangle contains a name of the state. Can contain a horizontal line in the middle, below which the activities that are done in that state are indicated (округленный прямоугольник, указывающий на состояние. Верхняя часть прямоугольника содержит название состояния. Может содержать горизонтальную линию посередине, ниже которой указывается выполняемая в данном состоянии деятельность;
Arrow, denoting transition. The name of the event (if any) causing this transition labels the arrow body. A guard expression may be added before a "/" and enclosed in square-brackets (eventName[guardExpression] ), denoting that this expression must be true for the transition to take place. If an action is performed during this transition, it is added to the label following a "/" (eventName[guardExpression]/action) – стрелка, показывающая переход. Название события (если оно имеет место), вызывающее этот переход, показано на теле стрелки. Название защищенного выражения может добавляться до знака "/" и заключено в квадратные скобки – (названиеСобытия[защитноеВыражение]), обозначающее, что это выражение должно быть истинным для перехода, который должен состояться. Если действие происходит во время этого перехода, оно добавляется к метке, следующей за знаком "/" (названиеСобытия[защитноеВыражение]/действие.);
Thick horizontal line with either x>1 lines entering and 1 line leaving or 1 line entering and x>1 lines leaving. These denote join/fork, respectively.
According to Pilone, the only predefined guard condition is ELSE. No other examples are provided within that publication.
Жирная горизонтальная линия, имеющая либо x>1 линий входящих 1 линию уходящую либо 1 линию входящую и x>1 линий уходящих. Это означает соединение/разветвление соответственно. Согласно Pilone имеется только одно заранее определенное защитное условие – ELSE (еще).
Guard expression (VHDL): A Boolean-valued expression associated with a block statement that controls assignments to guarded signals within the block. A guard expression defines an implicit signal GUARD that may be used to control the operation of certain statements within the block.
Охранное выражение (язык VHDL): логическое выражение, связанное с архитектурным описанием этого блока, которое управляет процессом присвоения значений т.н. «охраняемым сигналам» внутри блока, который управляет операциями с определенными объявлениями внутри блока.
Guarded signal: A signal declared as a register or a bus. Such signals have special semantics when their drivers are updated from within guarded signal assignment statements.
охраняемый сигнал – объявляется в качестве регистра или шины. Подобные сигналы имеют специальную семантику в случаях обновления драйверов внутри специальной процедуры.