CN112073152B - 一种提高chsi接收数据可靠性的fpga抗干扰处理方法 - Google Patents
一种提高chsi接收数据可靠性的fpga抗干扰处理方法 Download PDFInfo
- Publication number
- CN112073152B CN112073152B CN202010966570.1A CN202010966570A CN112073152B CN 112073152 B CN112073152 B CN 112073152B CN 202010966570 A CN202010966570 A CN 202010966570A CN 112073152 B CN112073152 B CN 112073152B
- Authority
- CN
- China
- Prior art keywords
- data
- clk
- clock
- waveform
- chsi
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/004—Arrangements for detecting or preventing errors in the information received by using forward error control
- H04L1/0041—Arrangements at the transmitter end
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/004—Arrangements for detecting or preventing errors in the information received by using forward error control
- H04L1/0045—Arrangements at the receiver end
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/004—Arrangements for detecting or preventing errors in the information received by using forward error control
- H04L1/0056—Systems characterized by the type of code used
- H04L1/0061—Error detection codes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/22—Parsing or analysis of headers
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Dc Digital Transmission (AREA)
- Synchronisation In Digital Transmission Systems (AREA)
Abstract
本发明公开了一种提高CHSI接收数据可靠性的FPGA抗干扰处理方法,所述FPGA抗干扰处理方法至少包括:S1:将原始CHSI总线的TTL串行时钟CLK、数据DATA输入至FPGA;S2:由FPGA对输入异步信号的同步处理;S3:完成对输入数据去波形毛刺处理;S4:完成对波形突发错位位置检测;S5:完成自适应波形调整;S6:CHSI输入数据采集;S7:对接收数据报文的CRC校验;S8:数据报文的字头及长度判断。通过本方法提高了CHSI接收数据通信的可靠传输能力,解决现有技术中存在的接收抗干扰能力差,无法实时处理突发波形“错位”和“毛刺”干扰而造成的误码率问题。
Description
技术领域
本发明属于数字信号处理领域,涉及一种FPGA数据处理方法,尤其涉及一种提高CHSI接收数据可靠性的FPGA抗干扰处理方法。
背景技术
国外相关通信技术标准中提出了CHSI(Crypto Host Serial Interface)串行总线通信方式,用于通信发送方和接收方之间的数据传输。其中CHSI总线包括CHSI发送总线和CHSI接收总线,每组总线都有TTL电平的时钟CLK信号和数据DATA信号。
CHSI串行接口的实时传输率为16Mbit/S,主、从通信设备之间的数据报文的发送和接收分别通过两组独立的信号线进行独立传输,每组信号线两个,一个是时钟线ClK,另外一个是数据线DATA;电气特性为TTL电平。CHSI串行数据帧结构特点为,按整个数据帧从左到右的顺序,首个字节表示数据包的路由,分为两组,高位4比特表示信宿,低位4比特表示信源;第二个字节表示数据包标识,分为两组,高位4比特表示消息类别,低位4比特表示消息编号;第三个字节表示消息内容长度,即从0至256个字节,消息长度是整数个字节;第四部分为消息内容字段,从0至256个字节,每个字节内部从左至右为Byte1(bit0…bit7)…Byte256(bit0…bit7)排列;最后两个字节为CRC字段,选用的CRC校验多项式为X16+X12+X5+1,占16比特。
在实际工程应用中,CHSI串行总线波形容易受到通信设备内部射频信号或外部电磁信号干扰,导致如传输的时钟CLK和数据DATA信号,容易产生毛刺和波形“错位”等现象,导致信号幅度和相位突变等突发性传输错误的发生,使得传输不可靠。特别是当设备应用在复杂的电磁环境和人为干扰环境中时,信号的不可靠传输现象更加明显,甚至直接导致通信失败,严重影响了通信性能。
在现有的CHSI接收处理技术中,除加强对时钟CLK和数据DATA信号的连接器接插可靠、供地性能、PCB布线等硬件方法处理外,在FPGA仅仅能消除“0变1”或“1变0”类型的毛刺,而且去掉毛刺的宽度不够,仅仅能消除0至15.625ns范围内的“毛刺”。
在现有的CHSI接收处理技术中,数据采样主要依赖时钟CLK和数据DATA之间的时序关系,没有建立容错机制,无法处理时钟CLK和数据DATA波形突发性的“错位”,导致通信失败。
在现有的CHSI接收处理技术中,数据采样后的接收判断主要是采用CRC校验,无数据报文字头和长度判断,即使出现错误,也没有指示明确的错误类型。
发明内容
本发明的目的在于,为克服现有技术缺陷,提供了一种提高CHSI接收数据可靠性的FPGA抗干扰处理方法,通过本方法提高了CHSI接收数据通信的可靠传输能力,解决现有技术中存在的接收抗干扰能力差,无法实时处理突发波形“错位”和“毛刺”干扰而造成的误码率问题。
本发明目的通过下述技术方案来实现:
一种提高CHSI接收数据可靠性的FPGA抗干扰处理方法,所述FPGA抗干扰处理方法至少包括:S1:将原始CHSI总线的TTL串行时钟CLK、数据DATA输入至FPGA;S2:由FPGA对输入异步信号的同步处理;S3:完成对输入数据去波形毛刺处理;S4:完成对波形突发错位位置检测;S5:完成自适应波形调整;S6:CHSI输入数据采集;S7:对接收数据报文的CRC校验;S8:数据报文的字头及长度判断。
根据一个优选的实施方式,所述步骤S1具体包括:S11:实时检测时钟CLK和数据DATA信号波形的状态是否发生变化;S12:根据标准中定义的CHSI输入时钟CLK和数据DATA的波形时序,在空闲态时,时钟CLK和数据DATA的波形的逻辑电平均为“1”高电平,完成信号初始态的检测。
根据一个优选的实施方式,所述步骤S2具体包括:S21:FPGA中调用3个D触发器;S22:采用128Mhz时钟分别对输入的时钟CLK和数据DATA信号进行延时3拍。
根据一个优选的实施方式,所述步骤S3具体包括:S31:FPGA采用128Mhz时钟同步采样串行16Mhz/s输入的时钟CLK、数据DATA信号,并做延时处理;S32:波形反窄处理,对同步处理后的CLK时钟和DATA数据信号波形,分别延迟3个128Mhz时钟周期;S33:波形展宽处理,对“反窄”后的CLK时钟和DATA数据信号分别延迟3个128Mhz时钟周期;S34:波形再展宽处理,对步骤S33中展宽后的CLK时钟和DATA数据信号波形分别延迟3个128Mhz时钟周期;S35:波形再反窄处理,对步骤S34中再展宽后的CLK时钟和DATA数据信号分别延迟3个128Mhz时钟周期,实现了CLK时钟和DATA数据信号波形的第二次还原。
根据一个优选的实施方式,所述步骤S4具体包括:S41:对去掉毛刺处理后的CHSI时钟CLK和数据DATA输入波形,进行“错位”标记计数,并分别延时14个128Mhz时钟周期,并移位寄存波形,在标准中规定从CLK的第一个下降沿计数至Data的第一个下降沿计数值Count为6个128Mhz时钟;S42:确定错位判决规则,当步骤S41中的标志计数Count结果为1至5个128MHZ范围,则表示数据DATA波形相对时钟CLK波形左偏了对应的1至5个128Mhz的周期;当步骤S41中的标志计数Count结果为7至11个128MHZ范围,则表示数据DATA波形相对时钟CLK波形右偏了对应的7至11个128Mhz的周期;同时对输入时钟CLK和数据DATA分别进行13个128Mhz的周期的移位寄存。
根据一个优选的实施方式,所述步骤S5具体包括:S51:根据错位标志Count计数值和标准波形的时序对应关系,建立波形修正查找表;S52:根据波形修正查找表,自适应调整时间CLK和数据DATA波形,并输出至下一级进行数据采样处理。
根据一个优选的实施方式,所述步骤S6具体包括:S61:对通过自适应调整后形成的标准时钟和数据波形,根据时钟和数据的时序关系,对CLK延时3拍后,在延时第2拍时钟的上升沿采集数据,保证在数据位波形的最中间位置;S62:定义寄存器变量Buff,完成采集数据的存储。
根据一个优选的实施方式,所述步骤S7具体包括:S71:根据标准中规定的CRC校验多项式:X16+X12+X5+1,完成CRC的校验计算;S72:当CRC校验计算结果和接收的CRC值不相同表示有错误,则丢弃这帧数据,并发送CRC校验失败的标识信号。
根据一个优选的实施方式,所述步骤S8具体包括:S81:根据与发送方约定的数据通信协议,对经过CRC校验的数据报文的进行字头判断,当判断为有错误时,则丢弃相应帧数据,并发送字头未定义标识信号;S82:根据与发送方约定的数据通信协议,对经过字头校验的数据报文的进行长度判断,判断合格后送入下一级数据处理。
前述本发明主方案及其各进一步选择方案可以自由组合以形成多个方案,均为本发明可采用并要求保护的方案;且本发明,(各非冲突选择)选择之间以及和其他选择之间也可以自由组合。本领域技术人员在了解本发明方案后根据现有技术和公知常识可明了有多种组合,均为本发明所要保护的技术方案,在此不做穷举。
本发明的有益效果:本发明根据CHSI接收时序特点和波形易受干扰的现象,在FPGA数据处理中建立了一种容错机制和采取了“去毛刺”抗干扰方法,同时采用高倍率采样、异步通信的同步处理、实时检测波形错位突发位置,实现自适应波形调整至标准波形,确保数据的正确采样,同时通过CRC校验、报文字头信息、数据长度判断。确保CHSI接收数据报文的正确性,提高数据传输可靠性。本发明提出了解决方法,建立了容错机制,有效地解决了CHSI数据传输的不可靠性问题。
附图说明
图1是本发明FPGA抗干扰处理方法的数据处理流程示意图。
图2是本发明FPGA抗干扰处理方法的中标准CHSI总线波形时序图。
图3是本发明FPGA抗干扰处理方法中波形出现“毛刺”说明示意图。
图4是本发明FPGA抗干扰处理方法中消除波形中“毛刺”的FPGA处理流程图。
图5是本发明FPGA抗干扰处理方法的中CHSI时钟CLK和数据DATA波形突变“错位”图样。
图6是本发明FPGA抗干扰处理方法中步骤S5的处理流程图。
图7是本发明FPGA抗干扰处理方法中步骤S6的数据采集处理中的状态划分和对应时序示意图。
图8是本发明FPGA抗干扰处理方法中步骤S6的数据采集处理流程图。
图9是本发明FPGA抗干扰处理方法中步骤S7和S8处理流程图。
具体实施方式
以下通过特定的具体实例说明本发明的实施方式,本领域技术人员可由本说明书所揭露的内容轻易地了解本发明的其他优点与功效。本发明还可以通过另外不同的具体实施方式加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本发明的精神下进行各种修饰或改变。需说明的是,在不冲突的情况下,以下实施例及实施例中的特征可以相互组合。
需要说明的是,为使本发明实施例的目的、技术方案和优点更加清楚,下面对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。
因此,以下对本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
在本发明的描述中,需要说明的是,术语“中心”、“上”、“下”、“左”、“右”、“竖直”、“水平”、“内”、“外”等指示的方位或位置关系为该发明产品使用时惯常摆放的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。此外,术语“第一”、“第二”、“第三”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
此外,术语“水平”、“竖直”、“悬垂”等术语并不表示要求部件绝对水平或悬垂,而是可以稍微倾斜。如“水平”仅仅是指其方向相对“竖直”而言更加水平,并不是表示该结构一定要完全水平,而是可以稍微倾斜。
在本发明的描述中,还需要说明的是,除非另有明确的规定和限定,术语“设置”、“安装”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本发明中的具体含义。
另外,本发明要指出的是,本发明中,如未特别写出具体涉及的结构、连接关系、位置关系、动力来源关系等,则本发明涉及的结构、连接关系、位置关系、动力来源关系等均为本领域技术人员在现有技术的基础上,可以不经过创造性劳动可以得知的。
实施例1
参考图1所示,本发明公开了一种提高CHSI接收数据可靠性的FPGA抗干扰处理方法,所述FPGA抗干扰处理方法至少包括如下步骤。
步骤S1:将原始CHSI总线的TTL串行时钟CLK、数据DATA输入至FPGA。在FPGA内部实时接收和检测外部送入,即步骤S1输入的波形数据和时间波形。
优选地,所述步骤S1具体包括:S11:实时检测时钟CLK和数据DATA信号波形的状态是否发生变化。S12:根据标准中定义的CHSI输入时钟CLK和数据DATA的波形时序,在空闲态时,时钟CLK和数据DATA的波形的逻辑电平均为“1”高电平,完成信号初始态的检测。
步骤S2:由FPGA对输入异步信号的同步处理。按步骤S2在FPGA内部使用3个D触发器延时的同步逻辑处理,消除信号的亚稳态。
优选地,所述步骤S2具体包括:S21:FPGA中调用3个D触发器。S22:采用128Mhz时钟分别对输入的时钟CLK和数据DATA信号进行延时3拍。即延时3个128Mhz的周期。使得时钟和数据信号滞后到第3个128Mhz时钟上升沿到来时实现同步逻辑设计,能有效避免亚稳态。
步骤S3:完成对输入数据去波形毛刺处理。分别对输入的时钟CLK和数据DATA波形进行延时和“反窄”、“展宽(还原)”、“再展宽”、“再还原”处理,消除“1变0”和“0变1”毛刺。
优选地,参考图4所示,所述步骤S3具体包括:
步骤S31:FPGA采用128Mhz时钟同步采样串行16Mhz/s输入的时钟CLK、数据DATA信号,并做延时处理。
步骤S32:波形反窄处理,对同步处理后的CLK时钟和DATA数据信号波形,分别延迟3个128Mhz时钟周期。,即产生CLK_r1、CLK_r2、CLK_r3;DATA_d1、DATA_d2、DATA_d3,分别“相与”,即是:“CLK_zhai=CLK_r1&CLK_r2&CLK_r2”,“DATA_zhai=DATA_d1&DATA_d2&DATA_d3”分别去掉了CLK时钟和DATA数据信号波形中“0变1”的毛刺。
步骤S33:波形展宽处理,对“反窄”后的CLK时钟和DATA数据信号分别延迟3个128Mhz时钟周期。即产生CLK_zhai_r1、CLK_zhai_r2、CLK_zhai_r3;DATA_zhai_d1、DATA_zhai_d2、DATA_zhai_d3。分别“相或”,即:“CLK_kuan1=CLK_zhai_r1|CLK_zhai_r2|CLK_zhai_r3”,“DATA_kuan1=DATA_zhai_d1|DATA_zhai_d2|DATA_zhai_d3”,实现了CLK时钟和DATA数据信号波形的第一次还原。
步骤S34:波形再展宽处理,对步骤S33中展宽后的CLK时钟和DATA数据信号波形分别延迟3个128Mhz时钟周期。即:产生CLK_kuan1_r1、CLK_kuan1_r2、CLK_kuan1_r3;
DATA_kuan1_d1、DATA_kuan1_d2、DATA_kuan1_d3、分别“相或”,即是:
“CLK_kuan2=CLK_kuan1_r1&CLK_kuan1_r2&CLK_kuan1_r3”,
“DATA_kuan2=DATA_kuan1_d1&DATA_kuan1_d2&DATA_kuan1_d3”,分别去掉了CLK时钟和DATA数据信号波形中“1变0”的毛刺。
步骤S35:波形再反窄处理,对步骤S34中再展宽后的CLK时钟和DATA数据信号分别延迟3个128Mhz时钟周期,实现了CLK时钟和DATA数据信号波形的第二次还原。即:CLK_kuan2_r1、CLK_kuan2_r2、CLK_kuan2_r3;DATA_kuan2_d1、DATA_kuan2_d2、DATA_kuan2_d3,分别“相与”,即:“CLK=CLK_kuan2_r1&CLK_kuan2_r2&CLK_kuan2_r3”,“DATA=DATA_kuan2_d1&DATA_kuan2_d2&DATA_kuan2_d3”,实现了CLK时钟和DATA数据信号波形的第二次还原。
步骤S4:完成对波形突发错位位置检测。在FPGA内部根据标准的时钟和数据波形对应关系,标记错位计数,建立波形修正对应表。
所述步骤S4具体包括:
步骤S41:对去掉毛刺处理后的CHSI时钟CLK和数据DATA输入波形,进行“错位”标记计数,并分别延时14个128Mhz时钟周期,并移位寄存波形。即,
“CLK_delay[13:0]={CLK_delay[11:0],CLK},DATA_delay[13:0]={DATA_delay[11:0],DATA}。”
在标准中规定从CLK的第一个下降沿计数至Data的第一个下降沿计数值Count为6个128Mhz时钟。
步骤S42:确定错位判决规则。
当步骤S41中的标志计数Count结果为1至5个128MHZ范围,则表示数据DATA波形相对时钟CLK波形左偏了对应的1至5个128Mhz的周期。
当步骤S41中的标志计数Count结果为7至11个128MHZ范围,则表示数据DATA波形相对时钟CLK波形右偏了对应的7至11个128Mhz的周期;同时对输入时钟CLK和数据DATA分别进行13个128Mhz的周期的移位寄存。
步骤S5:完成自适应波形调整。根据“错位”计数值和波形修正对应表,实现时钟CLK和数据DATA波形的自适应调整。
图6示出了本发明方法步骤S5的FPGA处理流程数据处理。针对图5出现的10中波形“错位”图样进行,根据波形自适应修正查找表,自适应调整“错位”波形至标准的时序波形。以count=6标准无“错位”样图为中心,FPGA的波形自适应调整,可以修正“±39.0625ns”范围内的波形“错位”。大大增强了抗干扰性能和多平台环境的适应性。
所述步骤S5具体包括:S51:根据错位标志Count计数值和标准波形的时序对应关系,建立波形修正查找表。见表1。
表1波形修正查找表
S52:根据波形修正查找表,自适应调整时间CLK和数据DATA波形,并输出至下一级进行数据采样处理。
步骤S6:CHSI输入数据采集。根据技术标准中时钟和数据波形的时序关系,对自适应调整后的数据波形进行采样和数据存储。
优选地,图8示出了本发明步骤S6的数据采集的FPGA处理流程。所述步骤S6具体包括:S61:对通过自适应调整后形成的标准时钟和数据波形,根据时钟和数据的时序关系,对CLK延时3拍后,在延时第2拍时钟的上升沿采集数据,保证在数据位波形的最中间位置。S62:定义寄存器变量Buff,完成采集数据的存储。
步骤S7:对接收数据报文的CRC校验。对完成CHSI数据采集和存储的数据报文,进行CRC计算,如果正确,送入下一级处理,反之,丢弃这帧数据包,并给出错误类型指示。
优选地,所述步骤S7具体包括:S71:根据标准中规定的CRC校验多项式:X16+X12+X5+1,完成CRC的校验计算。S72:当CRC校验计算结果和接收的CRC值不相同表示有错误,则丢弃这帧数据,并发送CRC校验失败的标识信号。
步骤S8:数据报文的字头及长度判断。对完成CRC正确校验的数据报文,再次进行字头和长度判断,如果正确,送入下一级处理。反之,丢弃这帧数据包,给出字头或长度错误类型指示,并要求发送端重传。
优选地,所述步骤S8具体包括:S81:根据与发送方约定的数据通信协议,对经过CRC校验的数据报文的进行字头判断,当判断为有错误时,则丢弃相应帧数据,并发送字头未定义标识信号。S82:根据与发送方约定的数据通信协议,对经过字头校验的数据报文的进行长度判断,判断合格后送入下一级数据处理。
图9示出了本发明方法中步骤S7和步骤S8的处理流程。对步骤S6完成的存储数据,步骤S7完成CRC校验,步骤S8完成数据报文的字头和长度的判断,增强了数据报文的完整性判断,对正确的报文送入下一级处理,对校验错误的给出相应的错误标记,并要求重新传输。
本发明公开的FPGA抗干扰处理方法,提高了CHSI接收数据通信的可靠传输能力,解决现有技术中存在的接收抗干扰能力差,无法实时处理突发波形“错位”和“毛刺”干扰而造成的误码率问题。
本发明根据CHSI接收时序特点和波形易受干扰的现象,在FPGA数据处理中建立了一种容错机制和采取了“去毛刺”抗干扰方法,同时采用高倍率采样、异步通信的同步处理、实时检测波形错位突发位置,实现自适应波形调整至标准波形,确保数据的正确采样,同时通过CRC校验、报文字头信息、数据长度判断。确保CHSI接收数据报文的正确性,提高数据传输可靠性。本发明提出了解决方法,建立了容错机制,有效地解决了CHSI数据传输的不可靠性问题。
实施例2
在实施例1的基础上,图2是本发明步骤S1中CHSI输入的时钟CLK和数据DATA时序关系示意图。该示意图说明了在没有任何干扰下,时钟CLK和数据DATA波形之间对应的时序关系,从图中可以看出在时钟CLK的第一个下降沿至数据DATA的第一个下降沿,计时宽度是6个128Mhz的周期,表示了外部有数据输入。
实施例3
在实施例1、2的基础上,图3是本发明方法步骤S3数据处理中时钟CLK和数据DATA波形出现的“毛刺”说明示意图,在实际工程应用中出现的“毛刺”现象和出现的位置比较随机,图3仅仅是示意,但是波形中产生的“毛刺”类型只有“0变1”和“1变0”两类。
实施例4
在实施例1、2、3的基础上,图5是本发明方法步骤S4中检测的波形“错位”样图。以标准的时钟CLK和数据DATA波形的时序对应关系为依据,即时钟的第一个下降沿到数据波形的第一个下降沿为6个128Mhz时钟周期count=6。在实际工程中出现的“错位”现象,分别列举了数据波形相对于时钟波形“左偏”5个128Mhz时钟周期和“右偏”5个128Mhz时钟周期的情况,即count为5,4,3,2,1和count为7,8,9,10,11的情况。
实施例5
在实施例1、2、3、4的基础上,图7示出了本发明步骤S6的数据采集处理中的状态划分和对应时序示意图。根据时序特点,数据接收的完整过程可划分为“空闲态”、“起始态”、“数据采集态”、“停止态”、“空闲态”。在数据的采集时,对CLK波形延时3个128Mhz,即延3拍。在延时第2拍CLK的上升沿进行数据的采集,该时刻是数据波形的最中间位置,确保数据采集的准确性。
前述本发明基本例及其各进一步选择例可以自由组合以形成多个实施例,均为本发明可采用并要求保护的实施例。本发明方案中,各选择例,与其他任何基本例和选择例都可以进行任意组合。本领域技术人员可知有众多组合。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
Claims (5)
1.一种提高CHSI接收数据可靠性的FPGA抗干扰处理方法,其特征在于,所述FPGA抗干扰处理方法至少包括:
S1:将原始CHSI总线的TTL串行时钟CLK、数据DATA输入至FPGA;
S2:由FPGA对输入异步信号的同步处理;
S3:完成对输入数据去波形毛刺处理;
所述步骤S3具体包括:
S31:FPGA采用128Mhz时钟同步采样串行16Mhz/s输入的时钟CLK、数据DATA信号,并做延时处理;
S32:波形反窄处理,对同步处理后的CLK时钟和DATA数据信号波形,分别延迟3个128Mhz时钟周期;将产生的CLK_r1、CLK_r2、CLK_r3;DATA_d1、DATA_d2、DATA_d3分别相与;
S33:波形展宽处理,对反窄后的CLK时钟和DATA数据信号分别延迟3个128Mhz时钟周期;将产生的CLK_zhai_r1、CLK_zhai_r2、CLK_zhai_r3、DATA_zhai_d1、DATA_zhai_d2、DATA_zhai_d3分别相或;
S34:波形再展宽处理,对步骤S33中展宽后的CLK时钟和DATA数据信号波形分别延迟3个128Mhz时钟周期;将产生的CLK_kuan1_r1、CLK_kuan1_r2、CLK_kuan1_r3、DATA_kuan1_d1、DATA_kuan1_d2、DATA_kuan1_d3分别相或;
S35:波形再反窄处理,对步骤S34中再展宽后的CLK时钟和DATA数据信号分别延迟3个128Mhz时钟周期,实现了CLK时钟和DATA数据信号波形的第二次还原,将CLK_kuan2_r1、CLK_kuan2_r2、CLK_kuan2_r3、DATA_kuan2_d1、DATA_kuan2_d2、DATA_kuan2_d3,分别相与;
S4:完成对波形突发错位位置检测;
S41:对去掉毛刺处理后的CHSI时钟CLK和数据DATA输入波形,进行错位标记计数,并分别延时14个128Mhz时钟周期,并移位寄存波形,在标准中规定从CLK的第一个下降沿计数至Data的第一个下降沿计数值Count为6个128Mhz时钟;
S42:确定错位判决规则,
当步骤S41中的标志计数Count结果为1至5个128MHZ范围,则表示数据DATA波形相对时钟CLK波形左偏了对应的1至5个128Mhz的周期;
当步骤S41中的标志计数Count结果为7至11个128MHZ范围,则表示数据DATA波形相对时钟CLK波形右偏了对应的7至11个128Mhz的周期;
同时对输入时钟CLK和数据DATA分别进行13个128Mhz的周期的移位寄存;
S5:完成自适应波形调整;
所述步骤S5具体包括:
S51:根据错位标志Count计数值和标准波形的时序对应关系,建立波形修正查找表;
S52:根据波形修正查找表,自适应调整时间CLK和数据DATA波形,并输出至下一级进行数据采样处理;
S6:CHSI输入数据采集;
所述步骤S6具体包括:
S61:对通过自适应调整后形成的标准时钟和数据波形,根据时钟和数据的时序关系,对CLK延时3拍后,在延时第2拍时钟的上升沿采集数据,保证在数据位波形的最中间位置;
S62:定义寄存器变量Buff,完成采集数据的存储;
S7:对接收数据报文的CRC校验;
S8:数据报文的字头及长度判断。
2.如权利要求1所述的提高CHSI接收数据可靠性的FPGA抗干扰处理方法,其特征在于,所述步骤S1具体包括:
S11:实时检测时钟CLK和数据DATA信号波形的状态是否发生变化;
S12:根据标准中定义的CHSI输入时钟CLK和数据DATA的波形时序,在空闲态时,时钟CLK和数据DATA的波形的逻辑电平均为1高电平,完成信号初始态的检测。
3.如权利要求2所述的提高CHSI接收数据可靠性的FPGA抗干扰处理方法,其特征在于,所述步骤S2具体包括:
S21:FPGA中调用3个D触发器;
S22:采用128Mhz时钟分别对输入的时钟CLK和数据DATA信号进行延时3拍。
4.如权利要求1所述的提高CHSI接收数据可靠性的FPGA抗干扰处理方法,其特征在于,所述步骤S7具体包括:
S71:根据标准中规定的CRC校验多项式:X16+X12+X5+1,完成CRC的校验计算;
S72:当CRC校验计算结果和接收的CRC值不相同表示有错误,则丢弃这帧数据,并发送CRC校验失败的标识信号。
5.如权利要求4所述的提高CHSI接收数据可靠性的FPGA抗干扰处理方法,其特征在于,所述步骤S8具体包括:
S81:根据与发送方约定的数据通信协议,对经过CRC校验的数据报文的进行字头判断,当判断为有错误时,则丢弃相应帧数据,并发送字头未定义标识信号;
S82:根据与发送方约定的数据通信协议,对经过字头校验的数据报文的进行长度判断,判断合格后送入下一级数据处理。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010966570.1A CN112073152B (zh) | 2020-09-15 | 2020-09-15 | 一种提高chsi接收数据可靠性的fpga抗干扰处理方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010966570.1A CN112073152B (zh) | 2020-09-15 | 2020-09-15 | 一种提高chsi接收数据可靠性的fpga抗干扰处理方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112073152A CN112073152A (zh) | 2020-12-11 |
CN112073152B true CN112073152B (zh) | 2022-06-24 |
Family
ID=73695762
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010966570.1A Active CN112073152B (zh) | 2020-09-15 | 2020-09-15 | 一种提高chsi接收数据可靠性的fpga抗干扰处理方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112073152B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112631987A (zh) * | 2020-12-24 | 2021-04-09 | 合肥埃科光电科技有限公司 | 一种fpga目标波形抓取方法及装置 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102801441A (zh) * | 2012-07-27 | 2012-11-28 | 北京邮电大学 | 全数字扩频通信系统中接收端的同步时钟提取方法 |
CN103036823A (zh) * | 2012-12-14 | 2013-04-10 | 中船重工(武汉)凌久电子有限责任公司 | 基于fpga的波特率快速自适应方法、处理器及接收端 |
CN105070311A (zh) * | 2015-07-23 | 2015-11-18 | 安徽华东光电技术研究所 | 一种多信号跨板级时钟域的处理方法 |
CN106209148A (zh) * | 2016-07-01 | 2016-12-07 | 中国电子科技集团公司第十研究所 | 多功能射频模块通用接口系统 |
CN107943739A (zh) * | 2017-12-04 | 2018-04-20 | 上海无线电设备研究所 | 一种基于fpga的多组spi码信号检测验证方法 |
CN108121678A (zh) * | 2017-12-25 | 2018-06-05 | 四川九洲空管科技有限责任公司 | 一种基于新型chsi接口优化的fpga数据处理方法及系统 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7352214B2 (en) * | 2004-10-06 | 2008-04-01 | Broadcom Corporation | System and method for clock detection with glitch rejection |
KR100894811B1 (ko) * | 2007-01-11 | 2009-04-24 | 삼성전자주식회사 | 서데스의 역직렬화기 및 그것의 데이터 역직렬화 방법 |
-
2020
- 2020-09-15 CN CN202010966570.1A patent/CN112073152B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102801441A (zh) * | 2012-07-27 | 2012-11-28 | 北京邮电大学 | 全数字扩频通信系统中接收端的同步时钟提取方法 |
CN103036823A (zh) * | 2012-12-14 | 2013-04-10 | 中船重工(武汉)凌久电子有限责任公司 | 基于fpga的波特率快速自适应方法、处理器及接收端 |
CN105070311A (zh) * | 2015-07-23 | 2015-11-18 | 安徽华东光电技术研究所 | 一种多信号跨板级时钟域的处理方法 |
CN106209148A (zh) * | 2016-07-01 | 2016-12-07 | 中国电子科技集团公司第十研究所 | 多功能射频模块通用接口系统 |
CN107943739A (zh) * | 2017-12-04 | 2018-04-20 | 上海无线电设备研究所 | 一种基于fpga的多组spi码信号检测验证方法 |
CN108121678A (zh) * | 2017-12-25 | 2018-06-05 | 四川九洲空管科技有限责任公司 | 一种基于新型chsi接口优化的fpga数据处理方法及系统 |
Non-Patent Citations (3)
Title |
---|
"Automatic Glitch-Free Backup Clock Changer based on On-chip Clock Monitor for Safe MCU Clock Failure Protection";JH An,DJ Park,JH Cho;《大韩电子工程会学术大会》;20151231;全文 * |
"FPGA设计中抗干扰问题及毛刺信号的消除";吴淘锁;《呼伦贝尔学院学报》;20091230;第17卷(第6期);全文 * |
"一种基于串行RapidIO通信接口的FPGA实现";王剑锋 邹亮 王爱国;《通讯世界》;20180125(第1期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN112073152A (zh) | 2020-12-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
RU2606062C2 (ru) | Способ и устройство для проверки правильности функционирования последовательной передачи данных | |
TWI699983B (zh) | 用於經由一匯流排系統將一框從一發射器傳輸到至少一接收器及一匯流排系統的用戶的方法 | |
US9167058B2 (en) | Timestamp correction in a multi-lane communication link with skew | |
US20080019435A1 (en) | Adaptive equalizer apparatus with digital eye-opening monitor unit and method thereof | |
WO2020029023A1 (zh) | 波特率校准电路及串口芯片 | |
CN106201945B (zh) | 位宽转换装置 | |
US3836956A (en) | Method and apparatus for decoding biphase signals | |
CN112073152B (zh) | 一种提高chsi接收数据可靠性的fpga抗干扰处理方法 | |
CN108390752A (zh) | 信号接收方法 | |
TWI389506B (zh) | Test System and Method of Ethernet Solid Layer Layer | |
JP2009171509A (ja) | イコライザのテスト回路および集積回路の評価システム | |
US20070258478A1 (en) | Methods and/or apparatus for link optimization | |
US6178531B1 (en) | Method and apparatus for remotely testing token ring local area networks | |
CN112422132A (zh) | 误码率估计和误码校正以及相关系统、方法和装置 | |
US7679404B2 (en) | Missing clock pulse detector | |
US20030112827A1 (en) | Method and apparatus for deskewing parallel serial data channels using asynchronous elastic buffers | |
JPH0462503B2 (zh) | ||
CN111143263B (zh) | 信号延时校准方法、系统及电子设备 | |
EP1419629B1 (en) | Crosstalk equalization for digital transmission lines | |
US9435840B2 (en) | Determining worst-case bit patterns based upon data-dependent jitter | |
US8254494B2 (en) | Method and device for implementing data transmission | |
TWI254520B (en) | Device and method for retraining a receiver, and a transmitter | |
JP2011259128A (ja) | デジタルデータ伝送システム、送信装置、受信装置、及び伝送方式 | |
TW202023191A (zh) | 除彈跳電路 | |
KR100451765B1 (ko) | 패리티 에러 검출 회로 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |