公报要求设计软件复杂的苏une形式绘图simplifiée
Un diagramme d ' états (ou diagramme d ' états-transitions) est une représentation graphique du nombre fini d ' états d ' une机器à états, des过渡d ' état et des règles qui régissent les过渡。Les diagrammes d ' états sont des représentations de haut niveau utilisées comme points de départ pour le design de software complexe, car leur simplicité permet d ' illustrer clairesles différents modes de function。
Dans un diagramme d ' états:
- Les boites représentent des états ou différents modes de function。
- Les flèches illustrent la transition d 'un état à un autre。
- Le texte associé à chque flèche représente la règle qui régit la过渡。
Les sorties ou action d 'une machine à états sont des description du comportement de chque état du système。Les deux types de machines à états, Moore et Mealy, sont classés selon la manière don la sortie de la machine est définie。
Implémentation de Moore d'un diagramme d' états
Dans ce type de machine à états, les sorties ne dépendent que de l ' état du système et sont définies comme des actions d ' état。Quelle que soit la façon d ' arriver à un état donné, l ' action de l ' état reste la même。举例来说,dans le diagramme d ' états图2,la sortie de加热
Reste la même, que la transition soit effectuée à partir de l ' état空转
欧从
。
Implémentation de Mealy d'un diagramme d' états
Dans ce型de machine à états, les sorts dépendent非seselement de l ' état du système, mais aussi de ses entrées。Comme le montre le diagramme d ' états de la figure 3, dans l'implémentation de Mealy, les sorties sont définies au niveau des transitions。
Avec l'implémentation de Mealy, les diagram d ' états peuvent être réorganisés et simplifiés en ajoutant des boucles pour mettre à jour les sorties de la machine。加上les designs sont complex,加上cette implémentation est avantageuse。
米利和摩尔的机器我们的人民为我们倾倒simplicité和我们clarté。Les deux styles sont souvent mélangés dans un même diagramme d ' états。
Statecharts:图表d ' états améliorés
Les blocs de base des diagram d ' états ne sont pas suffisants pour qu ' un seul diagramme puisse représenter des systèmes逻辑综合体。Vous avez besoin de capacités supplémentaires pour capture efficement les détails complex d 'un design。Les statecharts, connus également sous le nom de diagramme d'états-transitions de Harel, ajoutent des capacités telles que la hiérarchisation, le parallélisme ou l 'orthogonalité ainsi que la diffusion d' événements。
La capacité de hiérarchisation设计和电位的比较计算方法réduire过渡过程的计算方法nécessaires entre les états。Il est possible d ' introduction des états parents pour créer une hiérarchie dans les machines à états。举例来说,dans le statechart de la图5,l ' état parent烘焙
理解les sous-états加热
等闲置
, ainsi que le diagramme d ' états associé。
Grâce aux capacités de parallélisme ou d 'orthogonalité, un seul statechart peut inclure plusieurs états functionnant simultanément。举例来说,dans le statechart de la figure 6, nous pouvons considérer烤箱
等Oven_Light
Comme deux machines à états indépendantes qui functionnent simultanément。Le diagramme représente l'ensemble du système dans un seul graphique contant deux machines à états parallèles。
Les possibilités de diffusion d ' événements étendent la capacité du système en permettant l ' échange d ' information entre deux états ou machines à états indépendants。Dans le scénario précédent, les deux machines à états étaient indépendantes, car le function de l ' éclairage du four ne dépendait pas de son système de chauffage。Avec la diffusion d ' événements, une fonctionnalité qui éteint la lumière du four lorsque la cuisson est terminée peut être ajoutée grâce à une simple command dans la logique de l ' état烤箱
请看图7。
Les statecharts avec des capacités de hiérarchisation, de parallélisme et de diffusion permeent de représenter des fonctionnalités de systèmes complexen évitant Les diagmes d'états surchargés。
图d ' états et statecharts avec状态流
Stateflow®Est UN environment de programming graphique basé sur les machines à états finis。Avec statflow, vous pouvez partir de diagram d ' états simples et élaborer des statecharts pour modéliser la logique complexe des systèmes dynamiques tels que les传输自动,les systèmes robotiques, les智能手机等。复杂逻辑应用之声音:
Si vous avez besoin de la logique créée pour contrôler un合成软件,vous pouvez utiliser les capacités de génération automatique de code de Simulink pour convertir le statechart en code C, HDL ou PLC pour le déploiement。