当前位置:文档之家› 通信软件设计SDL语言

通信软件设计SDL语言


包的图形语法
<package diagram> ::= <frame symbol> contains {<package heading> {{<package text area>}* {<diagram in package>}* } set } [ is associated with <package use
系统类,功能块类,进程类的定义 信号定义
例子:定义包
use SignalLib ; package AccessPointLib
AccessPoint
BlockingAccessPoint LoggingAccessPoint
例子:定义包(续)
package SignalLib
signal
eject-card, lock, unlock
/* AccessPoint to ENV */
input-card, isOpen, isClosed /* ENV
to AccessPoint*/
display,
/* Display
to ENV */
keys;
/* ENV
to Keyboard */
signal Code(integer,integer);/* AccessPoint to CentralUnit */
area> ]
包的图形语法(续)
<package heading> ::= package [ <qualifier> ] <package name>
<package use area> ::= <text symbol> contains {<package use clause>}*
<package use clause> ::= use <package identifier>
|
<select definition>
|
<macro definition>
|
<interface reference> }*
包的图形语法(续)
<diagram in package> ::=
<package diagram>
|
<package reference area>
|
<type in agent area>
Types
可用于定义system系统类, block 功能块类和processes 进程类
1 定义包(Package)
含义
用于定义代理类型、信号、变量、数据、过 程等,解决可重用性
在SDL的各个层次的代理图和过程图中 用来进行SDL的结构化 用来使用外部定义和提供给其他系统和包使
用,可含有
系统图 System 功能块图 Block 进程 Process
通信
信道 Channel 信号 Signal
状态机 动作/迁移过程 定时器
SDL系统组成
系统
功能块
功能块
进程
进程 功能块 功能块
进程 进程
System & Environment
SDL System
SDL规格定义了系统 (System)对来自环境 (Environment)的事件的 反应
|
<remote variable definition>
|
<data definition>
|
<data type reference>
|
<procedure definition>
|
<procedure reference>
|
<remote procedure definition>
|
<exception definition>
C
CL [(validity)]
AccessPoint
1(1) [Code]
[Code] CentralUnit [Code]
NEWTYPE.../* Define gl obal, system speci fi c datatypes, i f necessary*/
系统图的图形语法
<system diagram> ::= <fram symbol> contains { <system heading> <agent diagram content> } [is associated with<package use area>]
|
<data type reference area>
|
<signal reference area>
|
<procedure reference area>
|
<interface reference area>
|
<create line area>
|
<option area>
2 代理(Agent)
A c c es s Contro l Unit
SY STEM A c cess ntrol
2(2)
AccessPoint
OperationPoint
SIGN AL Digi t( Integer ) , Car d( Integer ) , Pass, AccessDenied, Enter PIN, EnterCar d, DoorPassed, Open, Close, Val idate( Integer , Integer ), Confi gReq, Accepted, Rejected, Configur e( Integer ) ;
包的图形语法(续)
<package text area> ::= <text symbol> contains { <agent type reference>
|
<package reference>
|
<signal definition>
|
<signal reference>
|
<signal list definition>
SIGNALLIST Pout = Pass, AccessDenied, Enter PIN, EnterCar d; SIGNALLIST Pin = Di git, Car d; SIGNALLIST Dout = Open, Close; SIGNALLIST Di n = Door Passed; SIGNALLIST Req = Vali date, Confi gReq; SIGNALLIST Resp = Accepted, Rejected, Configur e; SIGNALLIST Tout =... /*continue unti l all si gnal li sts are defi ned*/;
signal OK,NOK,ERR
/* CentralUnit to AccessPoint */
; signallist validity = OK, NOK, ERR ;
signallist outp = EjectCard, display;
signallist inp = InputCard, keys ;
signals
Process Instance
在SDL中的进程(Process)通常是一个 eFMS
系统由一系列互相通信的进程(process instances)实例组成
SDL Overview - Blocks
Block
Process Instance
Process Instance
System (or another block) Block
SDL 语言
SDL mechine
input signal input port
FSM
output signal
timeout timer op data op
save queue
timer save data
reveal/view
SDL语言中的语法构件
定义包(Package) 代理(Agent)
<agent body area> ::= <state machine graph area>
系统 System
一个SDL规格所定义的全部内容 完整地描述一个真实系统或真实系统中相对独
立的一个部分 可划分为若干功能块,
功能块之间用信道来连接 功能块和环境之间用信道来连接
不包含任何行为
只包含抽象的结构,即black boxes
通常含有信号和数据类型的定义
用于定义系统中的内部数据 类似头文件定义
例子:系统图
SYS TEM Ac cess Control
1(2)
[(P o u t)[](P i n )] p
P a ne l [(D o u t)[](D i n )]
d D oor
system AccessControl
CE D
e d ap(100):
C
C
[(validity)]
AccessPoint
CE D
e bap(20): C d Blocking
CB [(validity), Enable,
AccessPoint Disable]
相关主题