用于对高速数据传输进行加扰的方法及设备的制造方法

文档序号:10654516阅读:377来源:国知局
用于对高速数据传输进行加扰的方法及设备的制造方法
【专利摘要】本申请公开了用于对高速数据传输进行加扰的方法及设备。公开了减少来自工业控制器中的通信总线的发射的系统及减少来自工业控制器中的第一模块与第二模块之间的数据通信的发射的方法。发送装置利用伪随机数字序列生成器对数据加扰。对数据加扰消除重复数据序列的传输。发送装置对数据传输间的数据的空闲对类似地加扰以消除重复数据序列的附加来源。经加扰且经编码数据被发送至接收装置。接收装置也包括伪随机数字序列生成器。两个伪随机数字序列生成器的同步通过利用被发送的数据帧的控制字符发生。伪随机数字序列生成器中的每个被配置成生成相同数字序列,且被初始化成以与被发送或被接收的数据的第一字节相对应的数字序列中的第一数字开始。
【专利说明】
用于对高速数据传输进行加扰的方法及设备
技术领域
[0001]本文中所公开的主题涉及用于对工业控制器中的模块之间的高速数据传输进行加扰(scramble)的方法及设备,更具体地,涉及用于在数据传输中分发数据以减少从携带数据的电导体辐射的发射的方法。
【背景技术】
[0002]工业控制器是用于控制例如工厂环境中的工业过程或机器的专用计算机系统。工业控制器与常规计算机在多种方式上不同。物理上,与常规计算机相比,工业控制器被构造成对于EM1、冲击和损坏而言基本上更鲁棒并且更能抵抗极端环境条件。处理器和操作系统被优化用于实时控制并且使用下述语言被编程,所述语言被设计成:允许快速开发被定制成机器控制应用程序或过程控制应用程序的不断变化的集合的控制程序。
[0003]—般地,工业控制器执行所存储的控制程序,所存储的控制程序从与受控过程或机器相关联的各种传感器读取输入。感测过程或机器的条件并且基于这些输入和所存储的控制程序,工业控制器确定用于控制过程或机器的致动器的一组输出。通常在感测条件和设置输出的过程期间发生若干通信步骤。输入模块从被分布在受控过程或机器四周的传感器和其他装置接收信号。输入模块将所接收的信号传送至处理器模块。处理器模块执行控制程序以基于该程序和所接收的输入来生成输出信号。处理器模块将输出信号传送至输出模块。输出模块将输出信号转换成模拟和/或数字信号,这些模拟和/或数字信号要被发送至被分布在受控过程或机器四周的致动器或其他这样的装置。
[0004]随着时间的推移,由工业控制器控制的机器或过程的复杂度和/或大小已经增加。例如,生产线可以在工业综合体中跨越开间(bay)的整个长度,或者自动存储系统可以被分布在整个仓库中。因此,对过程或机器进行控制所需要的输入和输出(I/O)模块的数量已经增加。I/O模块中的每一个与处理器模块进行通信,并且潜在地与工业控制器中的其他模块进行通信。因此,需要增加工业控制器内的通信量。此外,随着处理器速度增加,处理器能够以较高传输速率来传输量增加的数据。
[0005]如本领域技术人员所知的,差分接收机已经使得数据传输的速率和彼此进行通信的装置之间的距离增加。然而,增加的传输速率并非没有缺点。高速传输协议要求连续数据传输模式以使得发送装置和接收装置的时钟保持同步。另外,数据必须保持DC中性,意味着在传输期间O和I的数量基本上保持相同。然而,这些约束中的两个都与通常被传输的实时数据不一致。因此,已经开发了将间歇数据传输转换成连续数据传输的编码方案。一种这样的编码方案是8B10B编码。8B10B编码方案确保在无O与I之间的转变的情况下不存在扩展的数据位序列并且还确保被传输的O与I的数量保持DC中性。
[0006]然而,这些编码方案并非没有某些缺点。为了确保时钟保持同步并且确保数据转变连续发生,在数据包传输之间插入附加数据(对于8B10B编码而言,附加数据通常被称为空闲对)。每个空闲对包括控制字符对,使得接收器可以将空闲对识别为空闲对本身而不是识别为传输数据。如果在要被发送的数据帧之间存在扩展的时间段,则在该时间段期间连续地重复空闲对。作为空闲对集中的结果,连续传输相同的数据,导致能量集中在特定频率处。该能量集中趋向于导致这些频率处的过度发射。
[0007]因此,将期望提供使用降低水平的辐射发射来传输高速串行数据的方法。

【发明内容】

[0008]本文中所公开的主题描述了以降低水平的辐射发射来发送高速串行数据的方法。发送装置利用伪随机数字序列生成器对数据进行加扰。对数据进行加扰消除重复数据序列的传输。在加扰之后,可以使用例如8B10B编码对数据进行编码。类似地,发送装置以8B10B编码对数据的空闲对进行加扰以消除重复数据序列的附加来源。经加扰且经编码的数据被发送至接收装置。接收装置也包括伪随机数字序列生成器。通过利用被发送的数据帧的控制字符而发生两个伪随机数字序列生成器的同步。伪随机数字序列生成器中的每一个生成器被配置成生成相同的数字序列,并且被初始化成以与被发送或被接收的数据的第一字节相对应的数字序列中的第一数字开始。
[0009]根据本发明的一种实施例,公开了用于减少工业控制器中的通信总线上的发射的系统。通信总线将发送装置与接收装置链接。发送装置被配置成生成经由通信总线传输的数据并且包括进行操作以在传输之前对所生成的数据进行加扰的第一加扰元件。接收装置被配置成接收经由通信总线传输的数据并且包括进行操作以对所接收的数据进行解扰的第二加扰元件。第二加扰元件与所接收的数据同步。
[0010]根据本发明的另一种实施例,公开了用于减少来自工业控制器中的第一模块与第二模块之间的数据通信的发射的方法。利用第一模块中的第一加扰元件对要从第一模块发送的数据进行加扰。经由工业控制器中的通信总线将经加扰数据从第一模块发送至第二模块。使第二模块中的第二加扰元件与经由通信总线接收的数据同步。使用第二加扰元件对在第二模块处接收的数据进行解扰。
[0011 ]根据本发明的又一种实施例,公开了用于减少由在工业控制器中的背板上传输数据的模块生成的发射的系统。该系统包括处理内核以及能够进行操作以生成伪随机数字序列的加扰元件。处理内核能够进行操作以生成要经由背板传送的数据的多个字节。处理内核将加扰元件初始化成伪随机数字序列中的第一数字并且对要经由背板传送的数据进行加扰。通过将从数据的多个字节选择的该数据的第一字节与伪随机数字序列中的第一数字逻辑组合来对数据进行加扰。将数据的每个连续字节与伪随机数字序列的每个连续数字进行逻辑组合。系统还包括能够进行操作以将经加扰数据从处理内核传至背板连接器的通信总线,其中,背板连接器能够进行操作以将经加扰数据从通信总线递送至背板。
[0012]根据详细描述和附图,对于本领域的技术人员而言,本发明的这些优点和特征以及其他优点和特征将变得显见。然而,应当理解,尽管借助于图示给出了表示本发明的优选实施例的详细描述和附图,但是其并不受限制。在不偏离本发明的精神的情况下,在本发明的范围内可以进行多种变化和修改,并且本发明包括所有这样的修改。
【附图说明】
[0013]在附图中图示了本文中公开的主题的各种示例性实施例,在整个附图中相同的附图标记表示相同的部分,并且在附图中:
[0014]图1是包含本发明的一种实施例的工业控制器的示例性环境视图;
[0015]图2是图1的工业控制器的处理器模块的框图表示;
[0016]图3是图1的工业控制器的处理器模块和附加模块的框图表示;
[0017]图4是由8B10B经编码数据利用的数据包和一系列空闲对包的字节序列图表示;
[0018]图5是图示了根据本发明的一种实施例进行加扰的图4的数据包和空闲对的字节序列图表不;
[0019]图6是根据本发明的一种实施例的被用于对数据进行加扰的线性反馈移位寄存器的示意性表示;以及
[0020]图7是由图6的线性反馈移位寄存器生成的数据序列的一部分的表格表示。
[0021]在对附图中所示的本发明的各种实施例进行描述中,为了清楚起见,将借助于特定术语。然而,并不意在将本发明限于所选择的特定术语,而是应当理解,每个特定术语包括以类似方式进行操作以达到类似目的的所有技术等同。例如,经常使用单词“连接”、“附接”或者与这两个单词类似的术语。他们不限于直接连接而是包括通过其他要素的连接,其中,这样的连接被本领域的技术人员识别为是等同的。
【具体实施方式】
[0022]首先转向图1,示例性工业控制系统包括被配置成操作工业机器或过程的工业控制器10。如图所示,工业控制器10是模块化的并且可以由在机架(rack)中被连接在一起的或被安装至轨道的很多不同模块组成。可以添加附加模块或者可以移除现有模块,并且工业控制器10被重新配置成适应新配置。可选地,工业控制器10可以具有预定的且固定的配置。所图示的工业控制器10包括电源模块12、处理器模块14、网络模块16以及两个附加模块18,这两个附加模块18可以根据应用要求来选择并且可以例如是模拟或数字输入模块或者模拟或数字输出模块。根据所图示的控制系统,第一受控装置15和第二受控装置17均被连接至附加模块18。此外,参考图2,模块12、14、16和18中的每一个可以经由工业控制器1的背板49以及每个模块上的背板连接器47进行通信。因此,受控装置15、17可以经由I/O模块18和背板49在每个装置与处理器模块14之间传输输入信号和输出信号。处理器模块14执行控制程序以对装置15、17的操作以及受控机器或过程上的任何附加装置进行控制。
[0023]一个或更多个操作员接口 20可以被连接至工业控制网络。每个操作员接口 20可以包括处理装置22、输入装置24以及显示装置26,所述输入装置24包括但不限于键盘、触摸板、鼠标、跟踪球或触摸屏。应当想到,操作员接口的每个部件可以被合并成单个单元如工业计算机、膝上型计算机或平板计算机。还应当想到,多个显示装置26和/或多个输入装置24可以被分布在受控机器或过程四周,并且被连接至一个或更多个处理装置22。操作员接口 20可以用于:显示受控机器或过程的操作参数和/或操作条件,接收来自操作员的命令,或者改变和/或加载控制程序或配置参数。接口电缆28将操作员接口 20连接至工业控制器10。
[0024]可以根据应用要求通过一个或更多个网络将工业控制器10连接至其他装置。如图所示,网络电缆30将网络模块连接至网络交换机32。网络交换机32通过第二网络电缆30被连接至远程机架40。但是,另一网络电缆30从网络交换机32延伸至外部网络如因特网或企业内部网。应当想到,每个网络电缆30可以是被配置成经由专有接口进行通信的定制电缆或者可以是任何标准的工业电缆,包括但不限于以太网(Ethernet)/IP、设备网(DeviceNet)或者控制网(ControlNet)。每个网络模块16和网络交换机32被配置成根据其所连接的网络的协议进行通信并且还可以被配置成在两种不同的网络协议之间转换消息。
[0025]处理器模块14可以包括单个处理内核或者独立执行或彼此协作的多个处理内核。接下来参考图2,图示了处理器模块的一种实施例。所图示的处理器模块14具有与第一存储器42和第二存储器45进行通信的多个处理内核44、46和48。可以使用单独的处理器芯片来实现处理内核44、46和48中的每一个。可选地,可以在定制器件如现场可编程门阵列(FPGA)或专用集成电路(ASIC)上实现处理内核44、46和48中的一个或更多个。还应当想到,第一存储器42和第二存储器45中的每一个可以包括单个装置或多个装置。第一存储器42可以是易失性存储器,而第二存储器45可以是非易失性存储器。第一存储器42和第二存储器45中的每一个通常是、但并不必须是与处理内核44、46和48物理上分开的装置。可选地,可以将第一存储器42或第二存储器45包括在定制器件如具有处理内核44、46和48中的一个或更多个的FPGA或ASIC中。
[0026]在所图示的实施例中,多核处理器包括两个通用内核44和46以及专用精简指令集(RISC,specialized reduced instruct1n set)内核48,专用精简指令集(RISC)内核48被优化用于执行工业控制指令如继电器梯形逻辑指令。主要内核44和RISC内核48可以并行执行并且使用协处理器接口 51用于在两个处理内核44、48之间进行通信。每个处理内核44、48还可以分别具有单独的高速缓冲存储器52和54,处理内核44、48与所述高速缓冲存储器52和54在操作上连接。类似地,辅助内核46包括单独的高速缓冲存储器56,辅助内核46与该高速缓冲存储器56在操作上连接。如本领域所理解的,每个高速缓冲存储器52、54和56使得能够通过标准高速缓存一致性协议快速访问第一存储器42 ο内核44和内核48具有单独的高速缓冲存储器52和54连同协处理器接口 51—起使得内核44与内核48能够同时运行并且使得当内核48执行控制程序的同时内核44能够运行并处理中断。
[0027]内核44、48和46中的每一个还与操作成将虚拟存储器地址空间映射至存储器42中的实际地址的存储器管理单元62、64和66相关联。存储器管理单元还可以限定用于不同的处理内核的专有存储器部分68、70,以及共同存储器部分60,该共同存储器部分60可以被访问并且提供所有处理内核44、46、48之间的通信。每个内核44、48和46与存储器42(经由高速缓冲存储器52、54和56以及存储器管理单元62、64和66)之间的通信经由总线72发生。总线72还提供与非易失性存储器45、中断电路74、同步时钟电路76、硬件装置78以及工业控制器10的背板49的背板连接器47的公共通信路径。硬件装置78可以例如包括网络接口芯片或USB装置等。此外图示了加扰元件50。加扰元件50经由总线72与处理内核44、46、48以及背板连接器47中的每一个进行通信。可选地,可以将加扰元件50结合在处理内核44、46、48中的一个内。
[0028]接下来参考图3,图示了处理器模块14与附加模块18之间的示例性连接。附加模块18包括处理器80,该处理器80可以是单个处理器内核或者独立执行或彼此协作的多个处理器内核,并且可以使用单个处理器芯片或不同的处理器芯片来实现。可选地,可以在定制器件如现场可编程门阵列(FPGA)或专用集成电路(ASIC)上实现处理器80。处理器80与存储器装置82进行通信。存储器装置82可以包括单个装置或多个装置并且可以是易失性存储器、非易失性存储器或其组合。存储器装置82可以是但并不必须是与处理器80物理上分开的装置。可选地,可以将存储器装置82结合在定制器件如具有处理器80的FPGA或ASIC上。附加模块18还包括与处理器模块14上的加扰元件50类似或相同的加扰元件84。加扰元件84与处理器80和背板连接器47进行通信。可选地,可以将加扰元件84结合在处理器80内。
[0029]在传输之前,将对要在工业控制器模块14、18之间传输的数据的至少一部分进行加扰。根据本发明的所图示实施例,工业控制器模块14、18中的每一个包括加扰元件50、84。应当想到,每个加扰元件50、84可以包括专用逻辑电路(如图6中所图示的线性反馈移位寄存器)ο可选地,可以将加扰元件50、48结合在各个工业控制器模块14、18的处理器44、46、48、80中之一内。每个加扰元件50、84优选地利用相同的加扰和解扰方法,使得工业控制器模块14、18中任一个可以对要被传送的数据进行加扰或解扰。可以通过在处理器内核44、46、48中之一中生成要被传输的数据来来启动从处理器模块14至附加模块18的示例性传输。根据本发明的一种实施例,可以将要被传输的数据的全部或一部分传递至加扰元件50,对要被加扰的数据的一部分进行加扰,并且经加扰数据被返回至处理器内核44、46、48。可选地,加扰元件50可以生成伪随机数序列,该伪随机数序列被传递至处理器内核44、46、48。处理器内核44、46、48可以利用伪随机数序列对要被加扰的数据的一部分进行加扰。然后,经由处理器模块14中的背板连接器47将经加扰数据传递至背板49。
[0030]附加模块18经由其相应的背板连接器47从背板49接收经加扰数据。经加扰数据被传递至处理器80进行解扰。根据本发明的一种实施例,要被解扰的数据可以被传递至加扰元件50、被解扰并且被返回至处理器80。可选地,使接收装置18中的加扰元件84与发送装置14中的加扰元件50同步,使得接收装置18中的加扰元件84生成与发送装置14中所生成的伪随机数序列相同的伪随机数序列。伪随机数序列可以被生成并且被传递至接收装置18中的处理器80。处理器80利用伪随机数序列对被加扰的数据的一部分进行解扰。可以通过上述步骤将返回数据从附加模块18传输至处理器模块14,其中附加模块18执行加扰步骤而处理器模块14执行解扰步骤。还应当想到,如果每个处理内核包括加扰元件,则例如通过单个模块内的两个处理内核可以执行上面描述的加扰通信。
[0031]应当想到,工业控制器1的公共机架内的模块12、14、16和18中的每一个被配置成经由背板49传送经加扰数据。每个模块12、14、16和18可以包括背板连接器47、通信总线、易失性和/或非易失性存储器、加扰元件以及对模块之间经由背板49的通信进行处理的一个或更多个处理内核。优选地,传输速率是在每个模块不要求过多处理带宽的情况下使得数据能够被传输的足够速率。根据本发明的一种实施例,利用I吉比特/秒接口如串行吉比特媒体接口(SGMII ,Serial Gigabit Media Interface)来实现背板49。
[0032]除了对数据进行加扰以外,还可以对要在模块之间传输的数据进行编码。根据本发明的一种实施例,利用8B10B编码在背板49上的模块之间传输数据包。在8B10B编码中,8位(SB)数据被转换成10位(1B)数据。由于8位数据的可能组合的数量(S卩,256种组合)少于10位数据的可能组合的数量(1024种组合),所以8B10B编码将8位数据的可能组合映射至10位数据的可能组合,所述10位数据的可能组合包括4个或更少的连续的一(I)或零(O)。另外,8位数据的每种组合被映射成两个不同的10位数据组合。一种组合包括比O稍多的1(即,正差异),而其他组合包括比I稍多的0(即,负差异)。发送器跟踪被发送的数据的差异并且选择组合中之一以保持传输期间的零差异。换言之,使用正差异组合对数据的一部分进行编码,并且使用负差异组合对数据的一部分进行编码。以这种方式,数据传输保持DC中性。
[0033]接下来参考图4,图示了8B10B数据传输的示例性序列。在没有数据被传输的时间段期间,8B10B协议要求传输空闲对100。每个空闲对100包括第一字符102和第二字符104。如上所述,8B10B编码将8位数据转换成10位数据,在该10位数据中没有任何10位字符具有多于4个连续I或O。然而,每个空闲对中的第一字符102和第二字符104是专用字符。有时将字符102、104中之一称为停顿字符(comma character)并且具有五个(5)连续的一(I),而有时将字符102、104中的另一字符称为逆停顿字符并且具有五个(5)连续的零(O)。因此,接收装置易于识别被发送的空闲对100。当数据要被发送时,由发送装置生成数据包110。每个数据包110包括帧开始(SOF,start of frame)字符112以及帧结束字符(E0F,end of frame)116 o SOF 112和EOF 116分别被附加至要被发送的数据114的开头和结尾。另外,至少一个载波扩展字符118被附加至数据包110的结尾。如果数据114包括偶数个字节,则附加两个载波扩展字符118。如果数据114包括奇数个字节,则附加一个载波扩展字符118。
[0034]接下来参考图5,本发明对8B10B传输的至少一部分进行加扰以减少重复数据传输。如上所述,数据包110之间的空闲对100的连续传输导致能量集中在特定频率处。该能量集中导致在这些频率处从背板49或在其上传输8B10B字符的其他通信介质辐射不期望的发射。在传输之前对数据使用随机或伪随机加扰技术减少数据传输内的重复内容,从而在整个频率范围中散布能量并且减少在特定频率处从背板49辐射不期望的发射。根据所图示的实施例,对直到在新数据包110之前要被发送的4个空闲对100为止的空闲对100进行加扰。新数据包110之前的4个空闲对100被发送而未被加扰。另外,数据包110的控制字符例如SOF112,EOF 116以及载波扩展字符118被发送而未被加扰。
[0035]数据包110内的数据114可以作为经加扰数据或未加扰数据被发送。在工业控制系统中,可能的是:在两个装置之间传输的数据114的一部分或全部可以在扩展的时间段内保持不变。例如,数据的单个位可能由于传感器状态上的变化而变化,而数据的其余部分保持相同。根据另一个示例,控制系统内的一个站可能保持空闲,而在另一站执行处理。由于在空闲站中没什么发生,所以传输的数据通常保持不变。尽管该站的状态并且从而被发送的关于该站的数据未变化或者仅变化一点,但是该站通常以周期性时间间隔向执行主要控制程序的处理器模块14或者在该站与处理器模块14之间的中间模块报告其状态。因此,被发送的数据114可以类似地包括不变数据的重复传输并且在背板49上生成不期望的发射。因此,发送数据的每个模块可以被配置成对数据包110内的数据114进行加扰以进一步减少被发送的重复数据。
[0036]根据本发明的一种实施例,发送经加扰数据的每个模块可以包括存储在其相应的存储器中以选择是否对数据114进行加扰的参数。在传输之前被加扰的数据114需要在接收装置处进行解扰。然而,传统装置(legacy device)可能不包括加扰元件。具有选择是否对数据114进行加扰的参数使得具有加扰元件50、84的装置能够被配置成与具有加扰元件50、84或不具有加扰元件50、84的装置进行操作。虽然在传输之前仍然对空闲对100进行加扰,但是在数据包110的传输之前发送4个解扰空闲对100允许在数据包110的传输之前新装置或传统装置两者与发送装置同步通信。如果发送装置正在与包括加扰元件50、84的装置进行通信,则可以选择该参数来对数据进行加扰,从而减少由于重复数据114被发送的不期望发射。还应当想到,存储器可以存储一个表,在该表中可以限定多个装置以及它们是否接受经加扰数据114。发送装置可以首先访问该表并且确定数据传输的预期接收者是否可以对数据114进行解扰以及是否可以逐装置发送经加扰或未加扰数据114。
[0037]还应当想到,即使接收装置包括加扰元件50、84,经加扰空闲对100仍然可以被接收并且未进一步处理就被丢弃。空闲对100不包括送至接收装置的任何重要数据,因此,对空闲对100进行解扰导致接收装置上的处理器的低效使用。如果发送装置正在对数据114进行加扰,则接收装置可以使用解扰控制字符(例如,SOF 112和EOF 116)来开始和停止对被发送的数据114进行解扰。当在数据包110完成之后再次发送经加扰空闲对100时,接收装置可以再次丢弃经加扰数据。
[0038]发送装置与接收装置之间的同步要求在装置之间成功地传输四个空闲对100中的至少三个。因此,通过发送四个解扰空闲对100,发送装置和接收装置可以在数据包110的传输之前变成重新同步。还应当想到,即使没有数据要被传输,仍然可以以解扰格式周期性地发送四个空闲对100以使得发送装置和接收装置能够重新同步。解扰空闲对100的周期性传输可以帮助在需要传输数据114之前识别潜在故障。例如,如果发送装置和接收装置并未成功地传输四个解扰空闲对100,则在这些装置中的一个处或在连接这些装置的通信介质中可能存在问题。发送装置可以生成警告信息和/或故障状态以向操作员警告该状况。
[0039]使用伪随机数生成来执行对空闲对100和数据114的加扰。根据本发明的一种实施例,在加扰期间利用线性反馈移位寄存器(LFSR,linear feedback shift register)140。接下来参考图6,图示了示例性LFSR HOoLFSR 140包括串联连接的一系列D-Q触发器142。公共时钟信号146被连接至D-Q触发器142中的每一个以通过触发器142同步地传递数据。最后一个D-Q触发器142的输出148被反馈至第一个D-Q触发器142。另外,最后一个D-Q触发器142的输出148与所选数量的其他D-Q触发器142的输出进行逻辑组合。如图所示,最后一个D-Q触发器142的输出148与所选择的其他D-Q触发器142的输出使用异或(XOR)门144进行逻辑组合。通过串联连接的D-Q触发器142的数量来限定LFSR 140的阶数。与最后一个D-Q触发器142的输出148进行组合的所选择的D-Q触发器142由LFSR 140的特征多项式来限定。根据所图示的实施例,LFSR的特征多项式被限定为如等式I中所示。XOR门144位于特征多项式I(例如,x15、x13和X4)的内部项中的每一项处。
[0040]Ρ(χ)=χ16+χ15+χ13+χ4+1 (I)
[0041 ] 此外参考图7,LFSR 140生成伪随机数序列162。初始值(例如,OxFFFF)被加载进D-Q触发器140中以限定LFSR的初始状态164。在加载初始值之后,LFSR 140在每个随后的时钟周期中生成逻辑一(I)和逻辑零(O)的新序列。每个时钟周期中O和I的组合与由LFSR 140生成的数字162中之一相对应。图7图示了包括由LFSR 140生成的前三个数字162的真值表160。数字序列162被视为伪随机的,原因是在2n-l个时钟周期(其中,“η”是LFSR的阶数)内数字序列162将不会重复,并且在数字序列162内生成的逻辑I的数量近似等于逻辑O的数量。LFSR 140的输出150逻辑上与要被发送的数据相组合。根据本发明的一种实施例,LFSR140的输出150与要被发送的数据进行异或。因此,否则将恒定或缓慢变化的要被发送的数据由于与LFSR 140的输出150逻辑组合现在每个时钟周期发生变化。虽然图6中的LFSR 140被图示为内部LFSR,但应当理解,可以利用外部LFSR。根据本发明的其他方面,在不偏离本发明的范围的情况下,LFSR可以具有不同的阶数或不同的特征多项式。还应当想到,本发明的其他实施例可以利用对数据进行加扰的其他方法。
[0042]在操作中,工业控制器10中的模块(12、14、16或18)中的一个或更多个利用本文中描述的加扰方法和编码方法来减少工业控制器10的背板49上辐射的发射。出于描述的目的,将使用作为发送模块的处理器模块14以及作为接收模块的附加模块18(输出模块)中之一来描述示例性传输。然而,应当理解,模块中任一个可以是发送模块或接收模块。处理器内核44、46、48中之一生成要被传输至工业控制器中的输出模块18的数据。处理器模块14确定其是否正在与被配置成对数据114进行解扰的另一个模块进行通信,还是与不能对数据114进行解扰的传统模块进行通信。例如,处理器模块14可以从第一存储器42或第二存储器45中的参数或表读取接收装置是否接受经加扰数据114。
[0043]如果接收装置接受经加扰数据114,则处理器模块14在编码之前对数据114进行加扰。根据本发明的一种实施例,处理器内核44、46、48在对数据114进行加扰之前将在加扰元件50中执行的LFSR 140重置成初始值164。初始值可以是十六进制值OxFFFF,十六进制值OxFFFF将所有I加载至触发器142中的每一个中。在随后的时钟周期中,数据114的每个字节与LFSR 140的输出150进行异或。LFSR 140的输出150与数据的逻辑组合可以发生在加扰元件50中或处理器内核44、46、48中。根据所图示的实施例,由于LFSR 140具有16位的输出150,所以数据114的两个字节可以与LFSR的输出150进行异或。数据114的每个字节或两个字节与由LFSR生成的数字序列中的下一个数字162逻辑组合,直到已经对数据114的全部进行加扰为止。应当想到,在不偏离本发明的范围的情况下,可以出现数据114与输出150的位数组合或逻辑组合的各种其他数字。然后,可以对经加扰数据114进行编码以经由背板49传输。如果接收装置不接受经加扰数据114,则对未加扰数据114直接进行编码以经由背板49传输。
[0044]使用8B10B编码执行对数据114的编码。不论数据114是经加扰的还是未加扰的,都将数据114从8位数据转换成10位格式以供传输。如上所述,8B10B编码防止传输连续的I或O的长字符串并且保持被传输的I和O的数量之间的平衡。然而,8B10B编码还在被传输的数据包110中的每一个之间引入了空闲对100。因此,处理器模块14接下来对根据8B10B编码生成的空闲对100进行加扰。处理器模块14将每个空闲对100与LFSR 140的输出150逻辑组合。然而,经加扰空闲对100无需由接收模块18解扰。因此,LFSR 140无需被初始化成预定值。处理器模块14开始对在数据包110完成之后生成的空闲对100进行加扰并且持续对空闲对100进行加扰直至剩有在下一个数据包110的传输之前的四个空闲对100为止。处理器模块14将四个未加扰空闲对100传输至接收模块18,以使得万一在经加扰空闲对100的传输期间模块之间的通信链接丢失,则接收模块能够与发送模块同步。根据本发明的另一个方面,处理器模块14可以被配置成:在空闲对100的扩展序列期间周期性地发送四个未加扰空闲对100以帮助确保数据链接保持建立在数据包110的传输之间。应当想到,要在未加扰空闲对100之间被传输的经加扰空闲对100的数量是可配置的并且可以通过存储在存储器42、45中的参数来设置。优选地,在未加扰空闲对100之间传输至少32个经加扰空闲对100以保证辐射的发射的预期减少。
[0045]接收模块18能够对传输进行解扰,以向其处理器80提供数据114,用于针对所接收的数据的后续动作。根据优选实施例,接收模块18连续接收所传输的经编码数据。接收模块18可以丢掉经加扰空闲对100 ο当收到未加扰空闲对100时,接收t旲块18检验发送_旲块14与接收模块18之间的链接保持,如果未保持发送模块14与接收模块18之间的链接,则在收到后续空闲对100期间重新建立链接。成功地收到四个未加扰空闲对100中的至少三个使得接收模块18能够恢复发送模块与接收模块之间的丢失链接。在接收四个未加扰空闲对100之后,接收模块18可以开结接收其他经加扰空闲对100,或者接收模块18可以从发送装置14接收SOF字符112。
[0046]当接收SOF字符112时,接收模块18上的处理器80准备对经加扰数据114进行解扰。根据本发明的一种实施例,接收模块包括在加扰元件84中执行的LFSR 140,其中,LFSR 140具有与发送模块14中的LFSR 140相同的阶和相同的特征方程。在对数据114进行解扰之前,处理器80将在加扰元件84中执行的LFSR 140重置成与发送模块14上的LFSR 140中设置的初始值164相同的初始值164。初始值可以是十六进制值OxFFFF,十六进制值OxFFFF将所有I加载进触发器142中的每一个中。因此,接收模块18上的LFSR 140开始生成与发送模块14上的LFSR 140生成的用于对数据114进行加扰的数字序列162相同的用于对数据114进行解扰的数字序列162。在随后的时钟周期中,LFSR 140的输出150以与发送模块14上执行的逻辑组合相反的方式与加扰数据114进行逻辑组合。在所图示的实施例中,数据114的每个字节再次与LFSR 140的输出150进行异或。使用与用于对数据114进行加扰的的数字相同的数字对经加扰数据114执行异或来将经加扰数据114恢复成未加扰数据114。LFSR 140的输出150与数据的逻辑组合可以发生在加扰元件84中或处理器80中。根据所图示的实施例,经加扰数据114的两个字节可以与LFSR的输出150进行异或,原因是LFSR 140具有16位输出150。经加扰数据114的每个字节或两个字节与由LFSR生成的数字序列中的下一个数字162进行逻辑组合直到数据114全部被解扰为止。应当想到,在不偏离本发明的范围的情况下,可以出现数据114与输出150的各种其他数字的位或逻辑组合,只要接收模块18上的逻辑组合与发送模块14上执行的逻辑组合相对应即可。
[0047]应当理解,本发明在其应用上不限于本文中阐述的部件的构造和布置的细节。本发明能够具有其他实施例并且能够以各种方式来实践或执行。上述的变更和修改在本发明的范围内。还应当理解,本文中公开和限定的本发明扩展至所提到的或根据正文和/或附图显见的各个特征中的两个或更多个特征的所有可选组合。所有这些不同组合构成本发明的各种可选方面。本文中描述的实施例说明了用于实践本发明的已知的最好模式并且将使得本领域的其他技术人员能够利用本发明。
【主权项】
1.一种用于减少来自工业控制器中的通信总线的发射的系统,所述系统包括: 发送装置,所述发送装置被配置成生成经由所述通信总线传输的数据,所述发送装置包括第一加扰元件,所述第一加扰元件进行操作以在传输之前对所生成的数据进行加扰;以及 接收装置,所述接收装置被配置成接收经由所述通信总线传输的数据,所述接收装置包括第二加扰元件,所述第二加扰元件进行操作,以对所接收的数据进行解扰,其中,所述第二加扰元件与所接收的数据同步。2.根据权利要求1所述的系统,其中, 所述第一加扰元件生成加扰数字序列; 所述第二加扰元件生成所述加扰数字序列;并且 所述第一加扰元件和所述第二加扰元件通过用于要被发送的数据的初始控制代码被重置成所述加扰数字序列内的第一个值。3.根据权利要求2所述的系统,其中, 所述第一加扰元件包括第一线性反馈移位寄存器; 所述第二加扰元件包括第二线性反馈移位寄存器; 当帧控制代码的开头被生成以发送数据时,所述第一线性反馈移位寄存器被设置成预定值;并且 当所述帧控制代码的开头被接收时,所述第二线性反馈移位寄存器被设置成所述预定值。4.根据权利要求3所述的系统,其中,第一特征方程限定所述第一线性反馈移位寄存器,第二特征方程限定所述第二线性反馈移位寄存器,所述第一特征方程与所述第二特征方程相同。5.根据权利要求1所述的系统,其中,所述发送装置还被配置成: 在所述数据被加扰之后对所生成的数据进行编码; 经由多个数据包来发送所生成的数据;以及 将多个空闲对插入在选自所述多个数据包的相继数据包之间。6.根据权利要求5所述的系统,其中,所述第一加扰元件还进行操作以对所述空闲对的至少一部分进行加扰。7.根据权利要求6所述的系统,其中,所述第一加扰元件在发送每个数据包之前发送至少四个未加扰空闲对。8.根据权利要求6所述的系统,其中,所述第一加扰元件在经加扰空闲对之间周期性地发送至少四个未加扰空闲对。9.一种用于减少来自工业控制器中的第一模块与第二模块之间的数据通信的发射的方法,所述方法包括以下步骤: 利用所述第一模块中的第一加扰元件对要从所述第一模块发送的数据进行加扰; 经由所述工业控制器中的通信总线将经加扰数据从所述第一模块发送至所述第二模块; 使所述第二模块中的第二加扰元件与经由所述通信总线接收的数据同步;以及 使用所述第二加扰元件对在所述第二模块处接收的数据进行解扰。10.根据权利要求9所述的方法,其中,对要发送的数据进行加扰的步骤包括以下步骤: 使用所述第一加扰元件生成伪随机数字序列;以及 将要发送的数据与所述伪随机数字序列进行逻辑组合。11.根据权利要求10所述的方法,其中,对所接收的数据进行解扰的步骤包括以下步骤: 使用所述第二加扰元件生成所述伪随机数字序列;以及 将所接收的数据与所述伪随机数字序列进行逻辑组合。12.根据权利要求11所述的方法,其中, 所述第一加扰元件包括第一线性反馈移位寄存器; 所述第二加扰元件包括第二线性反馈移位寄存器; 所述方法包括以下初始步骤:在对要发送的数据进行加扰之前,将所述第一线性反馈移位寄存器设置成预定值;以及 使所述第二加扰元件同步的步骤包括:在对所接收的数据进行解扰之前,将所述第二线性反馈移位寄存器设置成所述预定值。13.根据权利要求9所述的方法,还包括对要从所述第一模块发送的数据进行编码的步骤,其中,在对数据进行加扰之后并且在发送经加扰数据之前对数据进行编码。14.根据权利要求13所述的方法,还包括以下步骤:利用所述第一加扰元件在所述第一模块中对经编码数据的至少一部分进行加扰,其中,在对数据进行编码之后并且在发送数据之前执行对经编码数据的至少一部分进行加扰。15.根据权利要求14所述的方法,其中,所述对要从所述第一模块发送的数据进行编码的步骤包括将多个空闲对插入在被配置成发送所述数据的相继数据包之间。
【文档编号】G06F13/42GK106021163SQ201610183755
【公开日】2016年10月12日
【申请日】2016年3月28日
【发明人】安东尼·G·吉巴尔蒂, 肯伍德·H·霍尔, 罗贝特·E·劳恩斯布里
【申请人】洛克威尔自动控制技术股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1