欢迎您访问科普小知识本站旨在为大家提供日常生活中常见的科普小知识,以及科普文章!
您现在的位置是: 首页

光缆保护系统快速性和可靠性的软件设计

科普小知识 2023-11-04 17:06:03
...

光缆保护系统快速性和可靠性的软件设计

 引言

为保障光纤通信网络畅通,减小阻断损失,必须对网络进行切实有效的维护。与传统手工维护方式不同,光缆保护系统是一种智能化的光缆维护解决方案,它同时具备了故障监测、预警告警、自动切换保护、应急调度等控制保护功能,可在不影响正常通信的情况下对光缆状况进行实时监测,在发生光缆故障时能立即将通讯链路自动切换到备用光缆上,保证通讯链路的持续畅通。

光缆保护系统必须常年不间断运行,对突发光缆故障要以毫秒级速度进行通信信道切换保护。因此,光缆保护系统的首要设计目标就是使系统做到反应快速、稳定可靠。光缆保护系统的软件运行于保护设备中,负责实现光缆监测和自动保护功能,针对系统运行的环境特点和功能要求,软件必须围绕着保证系统运行的快速性和可靠性进行设计。

1 快速性和可靠性的软件设计

1.1 软件设计的硬件基础

硬件是软件运行的载体与基础,与软件设计紧密相关。光缆保护系统在硬件电路上采用最优化的soc设计方案,在一定程度上减小了软件代码长度,降低了软件设计的复杂程度,相对提高了软件的可靠性。

图1为soc设计方案的硬件电路原理框图,硬件电路主要由电源供电电路、光电变换和对数放大电路、单片智能转换器soc、cpld译码及控制电路、外围控制及指示电路等组成。其中,软件驻存于单片智能转换器soc内,负责数据采集和处理及对外围电路进行控制;光电变换和对数放大电路负责将输入光信号转换为电压信号供adc采集;cpld译码和控制电路负责地址译码及光开关驱动控制;外围控制及指论文联盟示电路负责人机接口及运行状态指示。www.11665.CoM

图1 硬件电路原理框图

单片智能转换器soc是硬件系统的核心,除mcu内核外,内部还集成了众多功能电路。soc片上集成了62k字节非易失性闪速/电擦除rom,256字节的片内ram及2k字节的扩展片外ram,4k字节非易失闪速/电擦除数据存储器,如此容量的存储器能满足大多数场合的应用。soc片上集成了一个采样率高达420khz的高性能的8通道12位自校准adc,可胜任大多数的数据采集工作。soc片上还集成了双路16位pwm输出、wdg看门狗定时器、tic定时间隔计数器、3个定时器/计数器、串行端口(spi、i2c、uart),非常方便功能扩展。另外,soc片上还集成了锁相环(pll)电路和可编程时钟分频器,使用外部32.768khz晶体,由片上锁相环可产生高到16.78mhz的时钟频率,通过分频器进行分频,可为用户系统提供合适的工作时钟。如此高集成度的单片智能转换器soc本身可看作是一个高性能的数据采集系统,使得硬件电路上无需额外设计诸如数据采集、程序存储、数据存储、定时器、看门狗复位等电路,极大降低了电路设计的复杂度,同时也相应减轻了软件设计的难度,提高了软件的可靠性。

1.2 软件设计

光缆保护系统的核心任务就是实时监测通信光缆传输功率的变化和快速可靠地自动进行光开关切换。由于保护速度要求为50ms,光开关切换需要占用10~20ms,数据采集和处理的速度则应控制在30ms以内。为此,要求软件设计做到数据采集和处理的快速性和光开关切换的可靠性。

光缆保护系统在软件设计上将数据采集速度的目标设定为1ms,以实现光缆的实时监测。为做到这一点,首先通过软件配置soc使其工作频率达到16.78mhz,以高达0.06us的指令执行速度来保证软件运行的快速性;其次,使soc片内集成的adc以高达420khz(即单次转换时间最大为2.38us)的采样率进行数据采集。由于adc转换速率较高,soc必须在2.38us的极短时间内将数据读出并存储于数据区,以便后续处理,否则下一个采样数据有可能丢失。若采用常规的中断方式读取大量的转换数据,则跳入中断服务子程序会耗时较多,无形中延长了数据采集和处理的时间。为快速稳定的获取数据,最后,在软件上将adc设置为dma工作模式,使其可以在无需软件指令干预的情况下,自动进行连续转换并将捕获的采样值直接置入外部数据空间,这样即可以节省时间,又能保证数据的可靠性。

在光缆保护系统中,当adc被设置为dma工作模式时,对片外数据存储器的设置如图2所示。

图2 dma工作模式下的片外数据存储器设置

其相对应的adc初始配置代码如下:

void initadc(void)

{

unsigned int xdata *p;//指向片外存储器的16位整型数指针

//ch2

p=0x0000; //片外数据存储地址赋值

*p=0x2000;//adc转换通道设置

//ch5

p=0x0002;*p=0x5000;

//temp sensor

p=0x0004;*p=0x8000;

//ch3

p=0x0006;*p=0x3000;

//no conversion

p=0x0008;*p=0x3000;//无效转换

//stop command

p=0x000a; //片外数据存储地址赋值

*p=0xf000;//转换结束指令设置

......

}

图2中,从外部数据存储器地址0x000000h开始,根据数据采集量的多少安排一定大小的连续地址空间用于存放数据。每连续的2个字节存储一个数据,其中低位地址的高4位须预先写入转换指令(如通道号、停止指令),写入的通道号由adc自动取出,控制adc自动切换到相应的通道进行数据采集,采集到的数据由adc自动写入对应地址的剩余12位。

光缆保护系统在软件上采用dma模式进行数据采集,即实现了采集数据量大,又实现了采集速度快的要求,也既保证了功率监测的实时性,又保证了监测数据的可靠性。

光缆保护系统在软件设计上要求做到可靠切换光开关,也就是既要防止光开关在系统非正常状态下错误切换,又要保证使在系统正常状态下能可靠地切换。为此,经过多次试验后,光缆保护系统确定了以光开关路由保持设计和固定脉宽的脉冲发生器设计为核心的光开关可靠切换方案。

为了使系统在意外掉电/上电时仍能保持通讯链路的畅通,光缆保护系统设计采用了带锁存功能的以脉冲方式驱动的光开关,并且只有软件发出正确的“密码”控制信号,硬件才产生使光开关切换的驱动信号,这样当意外情况发生时,系统就不会因收到错误的指令而错误切换光路由,光开关始终处于正确状态,路由将得到保持。与光开关路由保持设计相关的软件流程图如图3所示,该设计确保了光开关不会发生错误切换,因而增加了系统运行的可靠性。

图4 光开关切换(下转第60页)

(上接第47页)为使光开关可靠切换,就必须对其赋予合适的脉冲驱动信号。光开关切换时一般都需要一定宽度(10~20ms)的驱动脉冲,该脉冲若过窄则不能保证切换成功,若过宽则易烧毁光开关。若通过软件延时的方法,在soc相应管脚上直接模拟一个脉冲信号来驱动光开关,其控制非常不可靠,这是由于其它中断信号容易干扰延时,使光开关切换不正常,而且软件延时也会无端耗时,影响数据处理的速度。考虑到光开关必须不受干扰的可靠切换,光缆保护系统在软件上设计了独立控制方案,其软件流程图如图4所示,在cpld内部设计了一个固定宽度的脉冲发生器,当soc根据光开关的当前状态确定对特定地址发出切换的“密码”指令信号时,cpld接收到信号,立即激活内部脉冲发生器,通过内部计数器计数进行精确定时,在光开关驱动管脚产生固定宽度为15ms的脉冲信号用于切换光开关,由于脉冲宽度固定,光开关切换不受任何干扰,故切换非常成功。

3 结束语

光缆保护系统的特点是快速和可靠,因此,在软件设计上也以快速和可靠为目标,与硬件一起共同完成通信光缆的智能维护任务。由于软件方面采取了包括以上措施在内的若干快速性和可靠性的设计技术,使系统在实际运行中取得了极好的效果,实现了预期目标。