首页 / 一种传输协议自适应解码系统

一种传输协议自适应解码系统有效专利 实用

技术内容

一种传输协议自适应解码系统

技术领域
本实用新型涉及集成电路技术领域,具体涉及一种传输协议自适应解码系统。
背景技术
DMX512-1990通信协议是一种数字多路复用协议,目前几乎所有的灯光/舞台设备生产厂商都支持此控制协议。作为广泛采用的数字灯光数据协议,DMX512-1990也成为灯光控制的国际标准。DMX512协议的统一使得各厂家的设备可以相互连接,很大程度上提高了兼容性,另外,由于DMX512协议采用串行方式传送数字信号,控台与设备之间只要一根信号线即可,大大简化了控制器与设备之间的连接线。
DMX512协议可通过在总线上发送数据包来实现对灯光设备的亮度控制,同时协议本身对数据包的每一部分的时序都做了极为严格的规定。每个字段共11位,包括0起始位,8位数据位和2位停止位。其中0起始位为低电平,停止位为高电平,数据位中的数据是0,则对应的时间段是低电平,数据是1,则对应的时间段式高电平。0起始位,停止位及数据位的位时长必须相同。DMX512时序图如图1所示。
一个完整的DMX512数据包格式由一个MTBP信号,一个BREAK信号,一个MAB信号和一个SC信号,以及数据帧组成。其含义如下:
MTBP:标志着一个完整的DMX512数据包发送完毕,同时也是下一个数据包即将开始的标示位,高电平有效,表示当前传输线处于空闲状态,没有数据传输。BREADK:数据包起始控制信号,对应着一个数据包结束后的复位阶段,复位完成后接着应该发送下一个包的数据,BREAK信号为低电平有效,并且持续时间不小于88uS。MAB:协议规定MAB为两个Bit位时长,高电平有效。SC:即起始码,它和普通的数据帧相同,但是它的8位数据位均为0,标示数据包中数据帧的开始。
现有的一种协议解码方式为:通过检测每帧数据的起始字节时间宽度,来确定后续每个字节的时间宽度,即上述SC段,该字段由1个起始标志位和8个全零位,2个结束标志组成,由于在起始字段中的9个Bits 0是介于MAB段和2个Bits结束标志位之间,因此该9个Bits 0的时间宽度比较容易检测。通过内置振荡器,对该9个Bits 0时间进行计数,在采样过程中进行除法运算,得到每个bit的时间宽度。该时间宽度为振荡器周期的整数倍,目前通常采用保留整数位的做法,但在进行每个Bit数据解码时,误差会被累积。如图1所示,一般会在数据中心位置进行采样,在解码每个Bit位时,会累积一次余数误差,如若余数值较大,则累积的误差可能造成解码错误。该方式为了更精确的对起始字段时间宽度采样,不断提高振荡器的频率,频率越高,采用保留整数法得到的最大积累误差相对于采样周期会越小。
现有另一种协议解码方式为:同样通过检测9个Bits 0的时间宽度,得到每个Bit的时间宽度。然而在进行除法运算时,保留了商和余数,根据商和余数确定采样周期,其采样周期包括两种采样脉冲间隔,一种为NT,另一种为(N+1)T,即将除法运算中的余数均匀插入到不同的Bit采样中,以实现精确的数据采样。该方案可以很精确的对DMX512数据进行解码,但在实现过程中需要消耗较大的硬件资源。
为此申请人提出了一种方法,设置起始码为学习字段,通过计算预设的学习字段的时间长度,并进行除法运算,对余数采用四舍五入的方式生成采样脉冲,实现对学习字段后续的数据进行采样。这样在内部振荡器速度不需要太高的情况下,即可实现宽范围的传输速率自适应无误解码,同时最大程度的减小硬件资源的消耗,以降低成本。但是申请人在实现上述方法时,还需要考虑如何提供一种支持上述方法的硬件设备,结构简单,开发成本低。
实用新型内容
因此,本实用新型的目的是提供一种传输协议自适应解码系统,结构简单,开发成本低。
一种传输协议自适应解码系统,包括内部振荡器、检测模块、计数器、判断模块和脉冲生成模块;
所述内部振荡器用于产生时钟,并提供给所述检测模块和脉冲生成模块;
所述检测模块的输入端接数据线,检测模块的输出端接所述计数器,所述计数器的输出端分别接所述判断模块和脉冲生成模块,脉冲生成模块生成采样脉冲。
优选地,所述计数器包括余数计数器,余数计数器具体包括L个串联的第一触发器、第一与门和第一逻辑单元;
所述内部振荡器的输出端连接第一个第一触发器的时钟端,前一第一触发器的正向输出端连接至后一第一触发器的时钟端,每个第一触发器的正向输出端均连接至所述第一逻辑单元不同的输入端,每个第一触发器的反向输出端连接至该第一触发器的数据端;
检测模块的输出端连接所述第一与门的一输入端,第一逻辑单元的余数计数溢出输出端连接所述第一与门的另一输入端,第一与门的输出端均连接至该第一触发器的复位端;
第一逻辑单元的余数计数溢出输出端、余数输出端和商计数端连接至所述判断模块。
优选地,所述第一触发器的数量L满足:2 L≥K,K为学习字段的位数。
优选地,所述计数器还包括商计数器,所述商计数器包括P个串联的第二触发器、第二与门和第二逻辑单元;
所述检测模块的输出端连接所述第二与门的一输入端,所述第一逻辑单元的商计数端连接所述第二与门的另一输入端,第二与门的输出端连接第一个第二触发器的时钟端,前一第二触发器的正向输出端连接至后一第二触发器的时钟端,每个第二触发器的正向输出端均连接至所述第二逻辑单元不同的输入端,每个第二触发器的反向输出端连接至该第二触发器的数据端;所有第二触发器的复位端均连接至检测模块的输出端;
第二逻辑单元的商输出端连接至所述判断模块。
优选地,所述第一触发器和第二触发器均为D触发器。
本实用新型提供的传输协议自适应解码系统,结构简单,开发成本低。
附图说明
为了更清楚地说明本实用新型具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍。附图中,各元件或部分并不一定按照实际的比例绘制。
图1为背景技术提到的DMX512协议的数据包格式示意图。
图2为本实用新型实施例提供的系统的模块框图。
图3为图2中计数器的电路图。
图4为图3中电路的时序图。
图5为余数M大于K/2的时序图。
图6为余数M小于等于K/2的时序图。
具体实施方式
下面将结合附图对本实用新型技术方案的实施例进行详细的描述。以下实施例仅用于更加清楚地说明本实用新型的技术方案,因此只作为示例,而不能以此来限制本实用新型的保护范围。
实施例:
一种传输协议自适应解码系统,参见图2,包括内部振荡器、检测模块、计数器、判断模块和脉冲生成模块;
所述内部振荡器用于产生时钟,并提供给所述检测模块和脉冲生成模块;
所述检测模块的输入端接数据线,检测模块的输出端接所述计数器,所述计数器的输出端分别接所述判断模块和脉冲生成模块,脉冲生成模块生成采样脉冲。
具体地,检测模块用于识别学习字段,针对DMX512协议,假设设置SC起始码为学习字段,计数器开始计时时,对SC起始码的时间长度计数,对所述计数结果进行除K运算;其中K为所述学习字段的位数,此处,K=9。判断模块根据计数器输出的商和余数,确定采样脉冲周期。该传输协议自适应解码系统,结构简单,开发成本低。
参见图3,所述计数器包括余数计数器,余数计数器具体包括L个串联的第一触发器、第一与门和第一逻辑单元;其中,2 L≥K;
所述内部振荡器的输出端OSC连接第一个第一触发器的时钟端,前一第一触发器的正向输出端Q连接至后一第一触发器的时钟端,每个第一触发器的正向输出端Q均连接至所述第一逻辑单元不同的输入端,每个第一触发器的反向输出端QN连接至该第一触发器的数据端D;
检测模块的输出端CNT_EN连接所述第一与门的一输入端,第一逻辑单元的余数计数溢出输出端M_Overflow连接所述第一与门的另一输入端,第一与门的输出端均连接至该第一触发器的复位端R;
第一逻辑单元的余数计数溢出输出端M_Overflow、余数输出端M_CNT和商计数端N_CLK连接至所述判断模块。
具体地,OSC为内部振荡器输出的时钟,CNT_EN为检测模块的输出端。当进入起始码SC接收时,CNT_EN置1,此时计数器开始计数。M_Overflow为余数计数器溢出标志,当余数计数器溢出时,余数计数溢出输出端M_Overflow生成一个脉冲信号,将余数计数器复位,开始重新计数。此时输出一个N_CLK脉冲,作为商计数器时钟,表示已接收完一个计数循环周期。
优选地,所述计数器还包括商计数器,所述商计数器包括P个串联的第二触发器、第二与门和第二逻辑单元;
所述检测模块的输出端CNT_EN连接所述第二与门的一输入端,所述第一逻辑单元的商计数端N_CLK连接所述第二与门的另一输入端,第二与门的输出端连接第一个第二触发器的时钟端,前一第二触发器的正向输出端Q连接至后一第二触发器的时钟端,每个第二触发器的正向输出端Q均连接至所述第二逻辑单元不同的输入端,每个第二触发器的反向输出端QN连接至该第二触发器的数据端D;所有第二触发器的复位端R均连接至检测模块的输出端CNT_EN;
第二逻辑单元的商输出端N_CNT连接至所述判断模块。
优选地,所述第一触发器和第二触发器均为D触发器。
具体地,商计数器中第二触发器的个数依据SC字段的长度和内部振荡器频率而定。余数计数器溢出一次,商计数器进行加1操作,从而生成除法运算的商N,其时序如图4所示。该电路能够实现对学习字段进行计数和除法功能。
计数器在完成计数以后,判断模块根据余数计数器结果是否大于K/2,设置采样脉冲周期为NT或(N-1)T,并将采样脉冲周期写入脉冲生成模块的锁存器,生成相应频率的采样脉冲,例如针对DMX512协议,当检测到余数M大于K/2时,其时序图如图5所示,当检测到余数M小于等于K/2时,其时序图如图6所示。
最后应说明的是:以上各实施例仅用以说明本实用新型的技术方案,而非对其限制;尽管参照前述各实施例对本实用新型进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本实用新型各实施例技术方案的范围,其均应涵盖在本实用新型的权利要求和说明书的范围当中。