您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 质量控制/管理 > 第四章_程控数字交换系统的软件要点
1第四章数字程控交换系统的软件程控交换机是由计算机控制的实时信息交换系统。交换机的全部智能性操作都是由软件来完成的。程控交换系统的成本、质量在很大程度上取决于软件系统。程控交换软件的概述运行软件的一般结构交换软件的基本特点交换软件设计中采用的程序设计技术所使用的程序设计语言运行软件的基本结构数据运行程序支援软件系统24.1程控交换软件概述程控交换机系统的成本、质量在很大程度上将取决于软件系统•程控交换软件的基本特点•程序设计语言3一、程控交换机系统的成本、质量在很大程度上将取决于软件系统•随着微电子技术的不断发展,硬件设备成本不断下降,而软件系统成本上升。万门以上的交换机,其软件总量通常由数十万到上百万条语句组成,软件开发量达数百人年。•随着新业务的引入,功能的不断完善,软件工作量还有不断增加的趋势。•随着技术的发展,软件系统的支配地位将越来越明显。比如:下一代交换网络(NGN)为软交换系统。4二、程控交换软件的基本特点1、实时性强程控交换机是一个实时系统,应在规定的时间完成相应的操作,否则会是呼叫接续失败。基本特点:实时性强、具有并发性,适应性强,可靠性和可维护性要求高52、并发性和多道程序运行在一部交换机上,多个用户同时发出叫请求,还同时有多个用户进行通话。这就要求处理机能够在同一时间执行多道程序,即软件程序要有并发性。多个进程实例共用一个程序代码。6图4-1多个进程实例共用一个程序代码73、可靠性要求高程控交换机应具有很高的可靠性,即使在其硬件或软件系统本身发生故障的情况下,系统仍能保持可靠运行,并能在不停机的情况下恢复正常。可靠性指标是99.98%的正确呼叫处理及40年内系统中断运行时间不超过2小时。运行软件,特别是故障处理程序、维护程序及联机扩容的程序很重要。8提高系统可靠性的措施有:①对关键设备(如中央处理器、交换网络等)采用冗余配置。②采用各种措施即使发现已经出现的错误。首先确定故障点,分别确定软、硬件故障而采取相应措施。9硬件多因长时间物理磨损而产生故障;而软件则不同,如果系统开发过程中能保证软件系统的正确性,则不管运行多长时间,软件本身是不会发生故障的。但是现在的软件开发技术尚无法保证这一点,尤其是交换软件庞大而复杂的系统更难保证这一点。现在采用的模块化层次化的设计、结构化的编程、高级语言等方法能减少设计过程出错的可能,方便测试,可以提高软件的正确性。目前,程控软件设计中普遍采用增加软件冗余的方法。104、能方便的适应交换机的各种条件适应各种不同环境的交换局。对交换机功能、容量、编程方案的具体要求,交换机的软件设计中普遍采用参数化技术。参数化就是在编制程序时对程序所要求用到的半固定数据暂不赋值,而是以参数化来代替。只是在安装时根据用户的要求,再确定这些参数的具体数值,此技术大大提高了交换系统的灵活性和适应性。参数化技术,使描述处理逻辑的程序部分与给予处理参量的数据部分分离。11•数据部分可分为:各交换机共同使用的系统数据;表示交换机硬件安装条件和线路条件、编码方案、路由选择方案等的局数据;以及表示不同用户服务条件、服务权限的用户数据。•根据这种结构,可以用局数据和用户数据来适应不同的局条件。125、软件的可维护性要求高交换机软件具有相当大的维护工作量:①原来软件系统设计的不完善需要改进②随着技术的发展,要求不断引进新技术或原有软件部分的功能进行改进的完善③随着业务的发展也会对交换机软件提出新的要求,这就要求软件应具有良好的可维护性能,当软件更新或增加新的功能时,能很容易对软件进行修改。13•可采用模块化、结构化的方法,采用数据驱动程序结构。采用有意义的标识符和符号常数,建立完备、清晰的文档资料。把无需随软件更新、扩充而变化的软件部分与其他部分相分离。•采用虚拟机、层次结构等,都有利于提高软件的可维护性。144.1.2数据驱动程序的特点及其结构程控交换软件的一个基本要求是容易追加新的功能及适应不同的条件。为了使交换软件在追加新的功能模块或面对不同的条件时对程序的影响小,通常采用数据驱动程序结构。数据驱动的优点:在规范发生变化是,控制程序的结构不变,只需修改表格中的数据就可以适应规范的变化。数据驱动程序是根据一些参数查表来决定需要启动的程序。15图4-2动作驱动程序的流程图16图4-3数据驱动程序的流程图17•从以上两图可以看到,采用动作驱动程序结构,当设计规范发生变化时,相应的程序结构要发生变化。•对数据驱动程序结构来说,当规范发生变化时,其程序结构不变,只需修改表格中的数据就能适应修改后的规范。18图4-4数据驱动程序的一般结构数据驱动程序要求较多的机器循环次数来完成某一特定功能但比动作驱动程序更为灵活,更易于管理。因此,数据驱动程序在程控交换软件中得到了广泛的应用。194.1.3有限状态机(FSM)和有限消息机(FMM)的概念系统的有限状态机(FSM)描述是指能将系统(或进程)的状态定义为有限个状态,然后描述在每个状态下受到某个外部信号激励时系统作出的响应及状态转移的情况。即:系统(进程)具有有限个非空状态集合有限的输入、输出信号集合。系统在每一种稳定状态下,可接受其输入信号集合中的一个子集,当接收到一个合法的输入信号时,就执行相应的动作,包括向外部输出相应的信号,然后转移到一个新的稳定状态。每一个输出信号和下一稳定状态都是原状态和输入信号的函数。20图4-5FSM结构的示意图21FSM非常适合描述呼叫处理过程。在呼叫处理中,呼叫处理进程将根据其当时的状态和接收到的信号类型进行相应的处理,然后转移到下一个稳定状态等待新的信号到来。随着呼叫的不断进行,对呼叫处理的进程总是走走停停,不断地从一个稳定状态进入另一稳定状态,在状态转移中实现具体的处理,一直到进入最后一个稳定状态后,进程准备终止。22FSM结构规则,能够使程序设计规律化,可减少差错和提高软件设计自动化,便于软件的调测、修改和新功能的引入,有利于模块化的实现。FSM的这些优点使其在程控交换软件中得到了广泛的应用。如:S1240系统中的有限消息机采用的就是有限状态机的概念和结构。23•有限消息机(FMM):是一种软件功能模块,实际上是一组程序,是进程的功能描述,他描述了一个进程所具有的状态,在每一状态下可接收到的消息以及接收到某一消息后应执行的动作,包括向外部发送的消息和转到的下一稳定状态。•FMM与外部通信是通过传送消息来实现的,消息的发送、接收是由操作系统统一管理的。24•采用FMM结构,由于FMM之间无公共数据区,只能通过消息相联系,并且只能接收规定的消息,增加了软件的可靠性;•在增加新的FMM模块或修改某一FMM模块时,一般不影响其它FMM,增加了软件的可维护性;•FMM发送消息时,并不一定要知道消息的目的地,而是由操作系统通过查找消息路由表来确定消息去向。因此,某个FMM放在哪一个处理机中并不影响FMM自身的结构,这就是系统配置更加灵活,当容量扩充时,若某些FMM在各个处理机中的分布发生变化,只需修改路由表而对FMM的结构无影响。25三、交换软件设计中使用的程序设计语言一般要用到的三种类型的设计语言:•规范描述语言(SDL):用于系统设计阶段,用来说明对程控交换机的各种功能要求和技术规范,并描述功能和状态的变化情况。•汇编语言和高级语言:用来编写软件程序;•人机对话语言(MML):主要用于人机对话,在软件测试和运行维护阶段使用。261、规范描述语言(SDL)•SDL时原CCITT建议的一种高级语言,主要用来说明电话交换系统的行为,既能说明一个待设计的系统应具有的功能和行为,又能描述已实现的系统的功能和行为。“行为”即系统对输入信号的响应方式SDL的适应系统:凡是系统行为能用扩展的有限状态自动机来有效的模拟,且重点在交互作用方面的所有系统。比如:电话交换系统、数据交换系统、信令系统和用户接口等;在程控交换系统中,呼叫进程,维护和故障处理,系统控制和人机接口功能都可以有SDL来描述。27•SDL具有两种表示方式:①SDL/GR(图形表示法):基础是一套标准的图形符号②SDL/PR(正文短语表示法),类似于程序的语句:基础是类似于程序的语句28图形表示法•采用一套标准化的图形符号。•它的优点是能够清晰的显示系统的结构并使人易于看清控制流程(目前使用比较广泛)•它以简单明了的图形形式对系统的功能和状态进行分块,并对每块的各个进程以及进程的动作过程和各个状态的变化进行具体的描述•SDL在电信系统的设计开发、操作维护和管理等方面都起着重要作用291.如何使用图形表示法SDL/GR描述系统(1)系统定义:SDL用来构造系统模型。每个系统有几个用信道连接起来的模块组成,,每个模块相对于其它模块式独立的,在两个不同的模块进程之间,通信的唯一手段是发送信号,信号通过新到来传递。将系统分为几个模块的依据是:是模块大小适中,便于处理;能与实际的软件划分相适应,与自然的功能划分相一致,是模块之间的交互作用减到最小。在系统定义这个层次上,描述系统结构的项目:系统名字信号定义:规定相互交换的信号类型。信号表定义:规定一些标识符,将几个信号组合起来。信道定义:规定信道及其上传输信号的标识符数据定义:定义数据类型。模块定义:规定把系统分成几个模块30图4-7系统图的SDL/GR表示表示这是一个系统,名字为SYS表示该系统共一页该系统使用的信号有模块交互作用区表明该系统由B1和B2两个模块组成31(2)模块定义:为了进一步说明系统内部的细节,必须对系统中的模块作进一步说明。模块定义包含以下项目:模块名字信号定义:规定模块内部相互交换信号的类型。信号表定义:规定与信号表相对应的标识符。信号路由定义:规定模块中的各进程互相连接以及进程和模块外部环境相连接的通信路径,规定由该信号路由传递的信号的标识符;信道到路由的连接:规定模块外部的信道和模块内部的信号路由之间的连接。进程定义:规定进程类型。数据定义:规定模块内部各进程中可见的数据类型。32图4-7模块的SDL/GR表示模块名称:B1模块内部使用的信号模块B1包括两个进程P1和P2分别通过信号路由R1和R2从外部信道C1中接收信号S1和S23334(3)进程定义进程是一种扩展的有限状态自动机,它规定了一个系统的动态行为。下图是进程图中出现符号。图4-9SDL/GR描述进程的主要符号35进程定义主要由以下各项组成:进程名字一对整数:第一个整数规定在系统创建时所创建的进程实例的数目,缺省值为1,第二个整数规定同时存在的进程实例的最大数目,缺省值不受限制。形式参数:一张附有变量类别的变量标识表,用来在进程创建时刻传递消息。有效输入信号集:一张信号标示表,规定进程能接收到的信号信号定义:规定相互交换的信号过程定义:规定能被进程调用的过程计时器定义进程体:用状态、输入、输出和任务等规定进程的实在行为36图4-10进程定义的例子372、汇编语言和高级语言⑴汇编语言汇编语言是面向处理机动作过程的语言,利用汇编语言编写的程序,运行效率高,占有存储空间少,能较好的满足交换机软件的实时性要求。早期交换机,由于受到处理机能力和存储器容量的限制,一般都采用汇编语言。然而,由于汇编语言高度依赖微处理机,不同的处理机使用的汇编语言不同,因此,汇编语言编写的程序可移植性差。38汇编语言•因为汇编语言是面向处理机的语言,编程人员必须对处理机了解。•可读性差、编写效率低、检错能力差、软件可靠性差。•因此,近代的大多数程控交换机,除了少部分实时性要求严格的程序。如:拨号脉冲的接收、中断服务性程序等采用汇编语言编程外,大部分程序都采用高级语言编写。39⑵高级语言一般用于编写计算机程序的PASCAL语言和C语言等,有些交换机厂家还设计了程控交换机专用的语言,主要有:•CHILL(CCITTHighLevelLanguage)语言•C语言•人机对话语言(MML)40①CHILL语言CHILL语言是原CCITT推荐的用于通信软件的标准程序设计语言,该语言得到了广泛的应用。例如:上海贝尔电话公司的s1240就采用了它。CHILL语言
本文标题:第四章_程控数字交换系统的软件要点
链接地址:https://www.777doc.com/doc-3785460 .html