一种基于协议分析的数字串行总线信号产生方法
【技术领域】
[0001 ]本发明属于数字信号通信技术领域,更为具体地讲,涉及一种基于协议分析的数字串行总线信号产生方法。
【背景技术】
[0002]现代电子设备或系统内部器件相互之间以及与外部的通信方式一般包括并行总线通信方式和串行总线通信方式。
[0003]并行总线通过地址线传输地址信息,数据线传输数据信息,时钟线传输时钟信息和控制线传输控制信息,不同的信息使用不同信号线同时传输,因此并行总线需要较多的信号线来传输信息。而在串行总线中,这些信息都必须在少数几条或几对信号线上完成信息传输。即一段串行信号可能包括地址、数据、时钟和控制等不同类型的信息,这些信息根据串行总线协议的规定以不同的方式组合在一起。因此,串行总线相对于并行总线来说有着信号数量少、成本低、功耗低、便于同步以及抗扰能力强等优点。
[0004]数字存储示波器的串行总线协议分析功能即是指示波器能够从串行总线信号中提取其每段信号波形所包含的信息,让用户可以直观清晰看到一段串行信号所包含的具体内容;同时根据包含信息来触发定位示波器所显示的信号波形,让用户能够将串行总线的波形和内容一一对应起来。
[0005]一般来讲,大多数串行协议都属于数字信号的范畴,然而,不同的协议类型可能对应着不同的电平标准。即使同一种协议类型在不同的应用场合其电平标准也可能不一致,因此需要通过某种方式将不同的电平标准转换成同一种电平标准以便后续的协议分析。
[0006]在提供串行协议分析功能的数字存储示波器中,如普源精电的DS4000系列,一般在将由模拟通道输入的协议信号送往ADC采样的同时,也将其送入模拟通道内部模拟比较器产生用于协议分析的一路或多路串行总线信号:即将模拟输入信号和比较电平分别输入比较器的正向比较端和负向比较端,当比较电平在输入信号最大最小范围以内调节时,比较器产生正确的方波输出。比较器输出的方波信号送入FPGA中进行协议分析,因此要求比较器输出与FPGA对应1 口具有相同的电平标准。
[0007]采用模拟比较的方式来产生串行总线信号需要实现模拟比较器,并且所需模拟比较器个数等于协议分析所需串行总线路数。同时,针对不同电平标准的协议信号,系统需要按照其电平标准来调节比较器的比较信号电平以保证正确的输出。因此,采用模拟比较的方式不仅需要额外的硬件资源,也需要额外的软件资源。
[0008]采用模拟比较的方法产生串行总线信号,并将协议信号作为比较器正端输入信号时,只要比较器负端比较电平在正端信号最大最小值范围以内变化,比较器就可以输出正确的比较结果,如图1所示,两个比较电平都在协议信号的最大最小值范围以内,比较器比较输出得到正确的串行总线信号,其电平标准与FPGA对应1 口一致。因此,根据图1可以得出如下结论,只要比较电平在协议信号的最大最小值范围内调节,比较器就可以得到正确的比较输出。
【发明内容】
[0009]本发明的目的在于克服现有技术的不足,提供一种基于协议分析的数字串行总线信号产生方法,通过数字比较的方式生成用于协议分析的数字串行总线信号,且不需要额外的模拟比较器及相应的软件控制逻辑。
[0010]为实现上述发明目的,本发明基于协议分析的数字串行总线信号产生方法,其特征在于,包括以下步骤:
[0011 ] (I)、设置一通道垂直灵敏度档位或调解通道偏置档位;
[0012](2)、初始化最值提取模块中最大值变量为Max,最小值变量为Min;
[0013](3)、利用ADC对输入的协议信号进行采样,得到采样数据Data;再将采样数据Data送入到最值提取模块中与Max和Mi η进行比较:如果Data>Max,则将Data赋值给Max,否则Max保持不变;如果Data〈Min,则将Data赋值给Min,否则Min保持不变;
[0014](4)、输出步骤(3)中最新的Max和Min值,再对新的Max和Min求平均,得到平均值Mean= (Max+Min)/2 ;
[0015](5)、数字比较模块接收采样数据Data和平均值Mean,再对采样数据Data和平均值Mean进行大小比较,当Data^ Mean时,则输出为高电平,否则为低电平,从而得到方波信号;
[0016](6)、将数字比较模块输出的方波信号送入协议分析模块进行协议分析;
[0017](7)、随机改变通道垂直灵敏度档位或调解通道偏置档位,再重新执行步骤(2)?步骤(6),直到产生的方波信号符合数字串行总线信号。
[0018]本发明的发明目的是这样实现的:
[0019]本发明基于协议分析的数字串行总线信号产生方法,在通道灵敏度档位或者通道偏置确定的情况下,对ADC采样输出信号进行实时自动比较,获取采样输出信号的最大值与最小值,并根据实时获取到的最大值与最小值求得平均值。利用该平均值与ADC采样输出信号进行比较,可得到用于协议分析的串行总线信号。
[0020]同时,本发明基于协议分析的数字串行总线信号产生方法还具有以下有益效果:
[0021]本发明提出的基于协议分析的数字串行总线信号产生方法,采用对ADC采样输出信号自动数字比较的方式,实时生成数字串行总线信号。如果采用模拟方法得到同样信号,则需要额外的模拟比较器、数模转换器、FPGA芯片1口资源以及相应较复杂的软件控制逻辑。比较而言,本发明提出的数字产生方法实现简单,同时可节省可观的硬件资源。
【附图说明】
[0022]图1是传统模拟比较方式生成数字串行总线信号原理图;
[0023]图2是本发明所述的数字比较方式生成数字串行总线信号原理图;
[0024]图3是通道垂直灵敏度改变示意图;
[0025]图4是通道垂直偏置改变示意图;
[0026]图5是通道垂直灵敏度为2V/div(伏特每格),基线向上偏移1.4div时的RS232协议分析结果;
[0027]图6是通道垂直灵敏度为2V/div,基线向下偏移3div时的RS232协议分析结果;
[0028]图