CN109101453B - 异步串行通信采样系统和方法 - Google Patents

异步串行通信采样系统和方法 Download PDF

Info

Publication number
CN109101453B
CN109101453B CN201810712657.9A CN201810712657A CN109101453B CN 109101453 B CN109101453 B CN 109101453B CN 201810712657 A CN201810712657 A CN 201810712657A CN 109101453 B CN109101453 B CN 109101453B
Authority
CN
China
Prior art keywords
byte
received data
data
bit
confidence weight
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
Application number
CN201810712657.9A
Other languages
English (en)
Other versions
CN109101453A (zh
Inventor
张春雷
史雄伟
江国进
白涛
孙永滨
陈乃奎
陈银杰
王成
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
China General Nuclear Power Corp
China Techenergy Co Ltd
Original Assignee
China General Nuclear Power Corp
China Techenergy Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by China General Nuclear Power Corp, China Techenergy Co Ltd filed Critical China General Nuclear Power Corp
Priority to CN201810712657.9A priority Critical patent/CN109101453B/zh
Publication of CN109101453A publication Critical patent/CN109101453A/zh
Application granted granted Critical
Publication of CN109101453B publication Critical patent/CN109101453B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4282Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • G06F15/163Interprocessor communication

Abstract

本发明属于异步串行通信的技术领域,为了解决现有技术在提高异步串行通信速率时,存在的信号可靠性低、出现畸形信号等技术问题,本发明提供一种能够提高信号可靠性的异步串行通信采样系统和方法,所述系统包括:起始位判断模块;置信权值计算模块,设置成在所述接收到数据的中间点有效时,计算所述接收到数据的每个采样点0和1的置信权值,且所述接收到数据的每个采样点具有各自的权值,依据0和1的权值累加值计算出总的置信权值;状态判断模块,设置成基于置信权值处理后的计算结果与预定阈值之间的大小关系,判断所述接收到数据中当前采样点的结果,并给出所述数据位的有效标志。

Description

异步串行通信采样系统和方法
技术领域
本发明涉及异步串行通信的技术领域,尤其涉及一种异步串行通信采样系统和方法,更具体地,涉及一种基于FPGA的低倍频采样的高速异步串行通信系统和方法。
背景技术
异步串行通信是指通信双方以一个字符(包括特定附加位)作为数据传格单位且发送方传送字符的间隔时间不一定,具有不规则数据段传送特性的串行数据传输;其凭借着协议简单、接线资源少、全双工等优势,在数字通信和控制系统中广泛使用;并且越来越多的用户根据实际需求,采用FPGA(现场可编程逻辑门阵列,一种硬件可编程集成电路)技术实现板间、系统间的异步串行通信的方案。
具体地,异步串行通信一般采用起止式异步协议,特点是逐个字符传输,并且传送单个字符总是以起始位开始,停止位结束,字符之间没有固定的时间间隔要求,数据格式靠起始位和停止位来实现字符界定;传输的速度一般以波特率定义,波特率越高,传输速度越快;波特率是指每秒钟传输的二进制数据量;通常微处理器的串行收发器波特率最高为115.2kbps,自定义最高能够达到6Mbps。
在高传输速率下,数据接收端可靠、正确的恢复数据是异步串行通信的关键和难点。为提高异步串行通信的可靠性,降低误码率,一般采用16倍或以上的高倍频采样时钟,在采集到起始位后,根据波特率计算出每个bit的中间采样点,以避开数据跳变时刻;但是这种方法不能够完全消除脉冲性干扰带来的影响,因为脉冲性干扰可能导致中间采样点的数据不稳定。为了改进该技术问题,在中国专利申请号为CN201010607234.4的专利中,公开了一种异步串行通信数据接收时的抗干扰纠错采样系统和方法在多个采样时刻分别对输入信号进行采样并对采样输出结果进行多数表决的比较,最后根据多数表决的比较结果输出数据接收结果。
发明人在实现本发明的过程中发现:1、中间点单次采样虽然实现简单,但是抗随机脉冲干扰能力差;上述专利CN201010607234.4虽然克服了传统的异步串行通信采样模块在随机性脉冲干扰的情况下容易得到错误的采样数据这一不足;但是在低倍频采样的情况下,由于接收的异步信号亚稳态的影响导致采样点偏移、通信距离长导致信号畸变等情况均可能造成误判,降低通信可靠性。FPGA内部的时钟频率有限,在时钟主频率一定的情况下,过采样率越低,则可以获得的串行通信速度越快;并且如果获得同样的传输速度,高倍频过采样需要的处理器性能越强,成本越高。
发明内容
为了解决现有技术在提高异步串行通信速率时,存在的信号可靠性低、出现畸形信号等技术问题,本发明提供一种能够提高信号可靠性的异步串行通信采样系统和方法,尤其适用于基于FPGA的低倍频采样的高速异步串行通信。
为了实现上述目的,本发明提供的技术方案包括:
本发明一方面提供一种异步串行通信采样系统,所述系统包括分别设置有异步串行通信端口的数据发送端和数据接收端;其特征在于,
所述数据接收端还设置有起始位判断模块、置信权值计算模块和状态判定模块;其中,
所述起始位判断模块设置成检测接收到数据中每个字节的起始位,当检测到下降沿后,置位字节接收标志,并根据预设的波特率计数,在该字节接收完毕后清除字节接收标志,等待下一个字节的起始位到来;
所述置信权值计算模块与所述起始位判断模块连接,并且设置成在所述接收到数据中每个字节的中间点有效时,计算所述接收到数据中每个字节的每个采样点0和1的置信权值,且每个字节的每个采样点具有各自的权值,依据0和1的权值累加值计算出每个字节总的置信权值;
所述状态判定模块与所述置信权值计算模块连接,并且设置成对接收到数据中的每个字节,基于置信权值处理后的计算结果与预定阈值之间的大小关系,判断所述接收到数据中每个字节数据位的结果,并给出每个字节数据位的有效标志。
本发明实施例优选地,所述数据接收端还设置有用于缓存接收到的数据的N位寄存器组,其中N为整数。
本发明实施例进一步优选地,所述数据接收端的主控制器为FPGA,并且FPGA的异步接收端还设置有同步寄存器链,所述同步寄存器链用于将所述接收到数据同步至FPGA的主逻辑时钟域,并将所述接收到数据缓存在所述N位寄存器组。
本发明实施例进一步优选地,所述数据接收端设置成采用预定的规则为所述N位寄存器组中的每个采样点分配置信权值,所述预定规则包括:中间采样点高,两边采样点低。
本发明实施例更进一步优选地,所述预定规则还包括:分配置信权值时,将权值设置为2n,且n为整数。
本发明实施例优选地,所述状态判定模块判断所述接收到数据中当前采样点的结果的方式包括:如果当前字节的计算结果大于预定阈值,判定所述接收到数据中当前字节为高电平;如果当前字节的计算结果小于或者等于预定阈值时,判定所述接收到数据中当前字节为低电平。
本发明实施例优选地,所述数据接收端还设置有:用于将接收到的串行数据转换为并行数据的串并转换模块。
本发明另一方面还提供一种异步串行通信采样方法,其特征在于,包括:
S1、检测接收到数据中每个字节的起始位,当检测到下降沿后,置位字节接收标志,并根据预设的波特率计数,在所述字节接收完毕后清除字节接收标志,等待下一个字节的起始位到来;
S2、对接收到数据中每个字节的中间点有效时,计算所述接收到数据中每个字节的每个采样点0和1的置信权值,且所述接收到数据中每个字节的每个采样点具有各自的权值,依据0和1的权值累加值计算出每个字节总的置信权值;
S3、基于置信权值处理后的计算结果与预定阈值之间的大小关系,判断所述接收到数据中每个字节数据位的结果,并给出每个字节数据位的有效标志。
本发明实施例优选地,所述异步串行通信采样是基于FPGA作为主控制器的通信方法,所述方法还包括:在所述步骤S1之前,通过同步寄存器链将异步信号同步至FPGA的主逻辑时钟域,然后通过N位寄存器组缓存接收到的数据。
本发明实施例进一步优选地,所述方法还包括:采用预定的规则为所述N位寄存器组中的每个采样点分配置信权值,所述预定规则包括:中间采样点高,两边采样点低。
本发明实施例更进一步优选地,所述预定规则还包括:分配置信权值时,将权值设置为2n,且n为整数。
本发明实施例优选地,所述步骤S3中判断所述接收到数据中当前采样点的结果的方式包括:如果当前字节的计算结果大于预定阈值,判定所述接收到数据中当前字节为高电平;如果当前字节的计算结果小于或者等于预定阈值时,判定所述接收到数据中当前字节为低电平。
本发明实施例优选地,所述方法还包括:将接收到的串行数据转换为并行数据。
采用本申请提供的上述技术方案,可以至少获得以下有益效果中的一种:
1、在异步串行通信低倍频过采样的情况下,引入统计学中的置信度的技术方案,通过对采样点进行置信权值处理,使得输出结果更加符合实际情况,解决有效信号畸变导致宽度缩短的技术问题;因此,通信的可靠性高,对畸变信号容忍能力强,降低误码率;并且异步串行通信低倍频通信的实现,在控制器主频一定的情况下,可以大大提高异步通信的速率。
2、由于信号传输的特性,接收到数据的最中间置信度最高,数据变化的时刻置信度最低;所以根据信号的质量分配置信权值,依据最终得到的置信权值判定数据状态结果更加准确。
3、分配置信权值时,考虑FPGA的逻辑实现简便,将权值设置为2n,有利于降低置信权值的计算难度。
发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书变得显而易见,或者通过实施本发明的技术方案而了解。本发明的目的和其他优点可通过在说明书、权利要求书以及附图中所特别指出的结构和/或流程来实现和获得。
附图说明
图1为本发明实施例提供的一种异步串行通信协议中数据格式示意图。
图2为本发明一实施例提供的一种异步串行通信采样系统的示意框图。
图3为本发明一实施例提供的一种异步串行通信采样方法的流程图。
图4为本发明另一实施例提供的一种异步串行通信采样系统的示意框图。
图5为本发明另一实施例提供的畸变情况下的采样信号的示意图。
图6为本发明再一实施例提供的一种异步串行通信采样系统的示意框图。
具体实施方式
以下将结合附图及实施例来详细说明本发明的实施方式,借此对本发明如何应用技术手段来解决技术问题,并达成技术效果的实现过程能充分理解并据以实施。需要说明的是,这些具体的说明只是让本领域普通技术人员更加容易、清晰理解本发明,而非对本发明的限定性解释;并且只要不构成冲突,本发明中的各个实施例以及各实施例中的各个特征可以相互结合,所形成的技术方案均在本发明的保护范围之内。
另外,在附图的流程图示出的步骤可以在诸如一组控制器可执行指令的控制系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
下面通过附图和具体实施例,对本发明的技术方案进行详细描述:
实施例
本实施例提供一种提高串行通信可靠性和通信速度的技术方案,主要针对低倍频通信的技术方案,本实施例提及的低倍率主要是指小于16倍频,例如3倍频、5倍频等;并且在采用低倍频过采样的情况下,充分考虑信号质量问题,引入置信权值获得稳定采样输出,使得在相同采样时钟频率的情况下,提高串行通信速度;同时具有有较强的抗干扰能力和纠错能力,易于实现,能保证数据的可靠传输等优点。
通用的异步串行通信协议如图1所示,数据格式中包括起始位、数据位、校验位(可选)、停止位。例如,波特率为9600bit/s,表明每bit数据(起始位、数据位等)传输需要1/9600s;相应地,通信前提需要包括发送和接收两个部分:
数据发送部分(数据发送端),采用异步串行通信,尤其是主控制器是基于FPGA的,由于FPGA逻辑比较简单,只需要按照合适的分频系数,串行转换并发出即可;
数据接收部分(数据接收端)是通信的关键,需要正确判断出起始位置,根据设置的波特率稳定接收数据;接收过程中实现较强的抗干扰能力,在低倍频过采样提高通信速度是设计难点,本实施例的技术方案的目的之一就是解决该设计难点。
如图2所示,本实施例提供一种异步串行通信采样系统,该系统包括分别设置有异步串行通信端口11、21的数据发送端10和数据接收端20;其中:
数据接收端20还设置有起始位判断模块22、置信权值计算模块23和状态判定模块23;
起始位判断模块22设置成检测接收到数据中每个字节的起始位,当检测到下降沿后,置位字节接收标志,并根据预设的波特率计数,在该字节接收完毕后清除字节接收标志,等待下一个字节的起始位到来;具体地,起始位判断模块22根据标准或者自定义的异步通信格式,直接提取接收到数据中每个字节的起始位,并且当检测到信号的下降沿后,将当前字节置位成状态接收的标志,并且结合字节的大小和系统中提前预设好的波特率计数,计算出该字节什么时候传输完毕,在该字节接收完毕后清除字节接收标志,等待下一个字节的起始位到来;
置信权值计算模块23与起始位判断模块22连接,并且设置成在接收到数据中每个字节的中间点有效时,计算接收到数据中每个字节的每个采样点0和1的置信权值,且接收到数据中每个字节的每个采样点具有各自的权值,依据0和1的权值累加值计算出每个字节总的置信权值;具体地,起始位判断模块22在对数据起始位确定之后,基于数据格式的要求,判断数据的中间点是否有效,并且向置信权值计算模块23输出当前采样点使能的控制信号,置信权值计算模块23接收到数据的中间点有效和当前采样点使能的控制信号,就依次计算接收到数据的每个采样点0和1的置信权值,且接收到数据的每个采样点具有各自的权值(具体赋值规则下文会有详细的介绍),依据0和1的权值累加值计算出总的置信权值;
状态判定模块24与置信权值计算模块23连接,并且设置成对接收到数据中的每个字节,基于置信权值处理后的计算结果与预定阈值之间的大小关系,判断接收到数据中每个字节数据位的结果,并给出每个字节数据位的有效标志;具体地,状态判定模块24接收置信权值计算模块23计算数据中每个字节总的置信权值,并将其与预定阈值的大小进行比较,并基于比较的结果,按照相应的规则,输出接收到数据中每个字节数据位的结果,同时给出每个字节数据位的有效标志。
本实施例优选地,状态判定模块24判断接收到数据中当前采样点的结果的方式包括:如果当前字节的计算结果大于预定阈值,判定接收到数据中当前字节为高电平;如果当前字节的计算结果小于或者等于预定阈值时,判定接收到数据中当前字节为低电平。
当然上述状态判定模块25判断接收到数据中当前采样点的结果的方式还可以设置成其他方式,例如,当计算结果小于预定阈值,判定接收到数据中当前字节为低电平;当计算结果大于或者等于预定阈值时,判定接收到数据中当前字节为高电平;或者当计算结果大于或者另一预定阈值,判定接收到数据中当前字节为高电平;当计算结果小于另一预定阈值时,判定接收到数据中当前字节为低电平;再或者还可以设置成根据特定要求,只有满足特定区间段时,才输出高电平(或者低电平),不在该区间段时,输出其他结果。
因此,本实施例提供的采样系统,在异步串行通信低倍频过采样的情况下,引入统计学中的置信度的技术方案,通过对采样点进行置信权值处理,使得输出结果更加符合实际情况,解决有效信号畸变导致宽度缩短的技术问题;并且通信的可靠性高,对畸变信号容忍能力强,降低误码率;上述异步串行通信低倍频通信的实现,在控制器主频一定的情况下,可以大大提高异步通信的速率。
如图3所示,本实施例还一种异步串行通信采样方法,该方法包括:
S1、检测接收到数据中每个字节的起始位,当检测到下降沿后,置位字节接收标志,并根据预设的波特率计数,在字节接收完毕后清除字节接收标志,等待下一个字节的起始位到来:根据标准或者自定义的异步通信格式,直接提取接收到数据中每个字节的起始位,并且当检测到信号的下降沿后,将当前字节置位成状态接收的标志,并且结合字节的大小和系统中提前预设好的波特率计数,计算出该字节什么时候传输完毕,在该字节接收完毕后清除字节接收标志,等待下一个字节的起始位到来;
S2、对接收到数据中每个字节的中间点有效时,计算接收到数据中每个字节的每个采样点0和1的置信权值,且接收到数据中中每个字节具有各自的权值,依据0和1的权值累加值计算出每个字节总的置信权值:对数据起始位确定之后,基于数据格式的要求,判断数据的中间点是否有效,输出当前采样点使能的控制信号,并且基于接收到数据的中间点有效和当前采样点使能的控制信号,就依次计算接收到数据的每个采样点0和1的置信权值,且接收到数据的每个采样点具有各自的权值(具体赋值规则下文会有详细的介绍),依据0和1的权值累加值计算出每个字节总的置信权值;
S3、基于置信权值处理后的计算结果与预定阈值之间的大小关系,判断接收到数据中每个字节数据位的结果,并给出每个字节数据位的有效标志。
本实施例优选地,步骤S3中判断接收到数据中当前采样点的结果的方式包括:如果当前字节的计算结果大于预定阈值,判定接收到数据中当前字节为高电平;如果当前字节的计算结果小于或者等于预定阈值时,判定接收到数据中当前字节为低电平。
因此,本实施例提供的采样方法,在异步串行通信低倍频过采样的情况下,引入统计学中的置信度的技术方案,通过对采样点进行置信权值处理,使得输出结果更加符合实际情况,解决有效信号畸变导致宽度缩短的技术问题;并且通信的可靠性高,对畸变信号容忍能力强,降低误码率;上述异步串行通信低倍频通信的实现,在控制器主频一定的情况下,可以大大提高异步通信的速率。
如图4所示,本申请另一实施方式,该实施方式是基于FPGA作为主控制器的实现方案,具体地:
本实施例提供的异步串行通信采样系统,除了设置有起始位判断模块22、置信权值计算模块23和状态判定模块24,还设置有同步寄存器链27、N位寄存器组26、串并转换模块25;具体地:
同步寄存器链27,用于将异步信号同步至FPGA的主逻辑时钟域,消除亚稳态的影响。
N位寄存器组26,其中N为整数,例如,N为过采样倍数(如5倍过采样,则N=5,即逻辑中对每个bit采样的次数),该寄存器组用于缓存采样到的数据流,方便同时判断数据状态。
起始位判断模块22,用于检测每个字节的起始位,检测到下降沿后,置位字节接收标志,并根据设置的波特率计数,在该字节接收完毕后清除字节接收标志,等待下一个字节的起始位到来;在检测到起始位后,依据波特率判定出中间采样点;间采样点持续1个FPGA主时钟周期。
置信权值计算模块23,在中间点有效时计算0和1的置信权值,每个采样点具有各自的权值,依据0和1的权值累加值计算出总的置信权值。
状态判定模块24,依据置信权值模块的计算结果判断当前bit位的结果,同时给出该bit有效标志。
串并转换模块25,用于将接收到的串行数据,转换为1字节的并行数据,并给出整个字节的接收有效标志。
如图4所示,优选地,数据接收端的主控制器为FPGA,并且FPGA的异步接收端还设置有同步寄存器链,同步寄存器链用于将接收到数据同步至FPGA的主逻辑时钟域,并将接收到数据缓存在N位寄存器组。进一步优选地,数据接收端设置成采用预定的规则为N位寄存器组中的每个采样点分配置信权值,预定规则包括:中间采样点高,两边采样点低。
更进一步优选地,上述预定规则还包括:分配置信权值时,将权值设置为2n,且n为整数。
与图4提供的异步串行通信采样系统相应的采样方法中:
还包括:在步骤S1之前,通过同步寄存器链将异步信号同步至FPGA的主逻辑时钟域,然后通过N位寄存器组缓存接收到的数据。优选地,上述采样方法还包括:采用预定的规则为N位寄存器组中的每个采样点分配置信权值,预定规则包括:中间采样点高,两边采样点低。
更进一步优选地,上述采样方法中预定规则还包括:分配置信权值时,将权值设置为2n,且n为整数。
为了使本实施例的技术方案更加清晰,下面结合图5进行说明:由于传输线电容的影响可能造成信号的上升沿和下降沿质量变坏,信号有效宽度变窄,且电容越大或脉冲信号频率越高,信号畸形越严重。例如,图5对应的是5倍频等低倍频过采样时,信号严重变形的情况下,在图中信号畸变的bit,5次采样结果是0,0,1,1,0,如果按照现有技术中简单的多数表决逻辑,0的次数大于1,所以可能会造成误判,接收错误。
本实施例引入统计学中的置信度的概念,由于信号传输的特性,在每bit数据的最中间置信度最高,数据变化的时刻置信度最低。逻辑设计中,为N位寄存器组中的每个采样点分配置信权值,在置信权值计算模块工作时,依据最终得到的置信权值判定数据状态。
以上述优选方案为例,由于置信权值的分配原则中间采样点高,两边采样点低。结合图5中5倍过采样的情况下,可以将5个采样点的权值一次设置为1,2,4,2,1。并且当数据为高电平置信权值大于6后,即可认为输出为高电平。在使用过程中,还可以根据信号的质量分配置信权值。分配置信权值时,考虑FPGA的逻辑实现简便,优选地,将权值设置为2n,有利于降低置信权值的计算难度。
因此,置信权值分析用于解决有效信号畸变导致宽度缩短。例如,高电平信号在采样数据为0,0,1,1,0时,权值分别为1,2,4,2,1,则仍然可以得到高电平输出结果。
需要说明的是的,图5中的信号畸采样同样适用于低电平的情况,例如,同样将中间采样点的权值设置成比两边的高,并且当数据为低电平置信权值小于6后,即可认为输出为低电平。
另外,需要说明的是,上述提及“依据0和1的权值累加值计算出总的置信权值”可以是直接在0、1基础上通过权值累加;还是可以将0、1分别加减某个参数,然后再针对计算出总的置信权值,与提前预设的某个阈值进行比较;这些改进,都属于本实施例相应技术方案保护的范围。
因此,采用低倍频过采样,充分考虑传输线电抗和传数距离导致信号畸变,引入置信权值的概念使得在相同采样时钟频率的情况下,提高串行通信速度。具有有较强的抗干扰能力和纠错能力,易于实现,能保证数据的可靠传输。
下面结合图6,以DCS仪控系统FitRel平台中,使用上述技术方案实现主控板卡与4路通信板卡的点对点串行通信进行进一步说明:
当采用5倍频采样,串行数据波特率设置为25Mbps,FPGA内部主时钟为125M;5次采样点的置信权值分别为:1,2,4,2,1。
主控板卡FPGA中数据发送端,对125M时钟进行5分频后,将要发送的每个字节数据,增加起始位和停止位后,每次发送1bit数据;
通信板卡FPGA中数据接收端,信号经过2级同步寄存器链后,进入5位寄存器组。在起始位判断模块检测到下降沿后给出中间采样点和字节接收使能信号。置信权值分析模块在中间采样点有效时启动,计算高低电平的权值并输出结果。最后根据置信权值计算的结果进输出最终的判断结果。
上述实施例提及的采用的是5倍频采样,对于更低频的过采样(如3倍)可以使用时钟的高低电平同时采样,在相同频率下得到更多的采样点。
另外,上述实施例方式以主控制板卡FPGA作为数据接收端进行举例说明,其他通信板卡也可以根据需要,设置上述带有起始位判断模块、置信权值计算模块和状态判定模块的数据接收端。
采用本申请提供的上述技术方案,可以至少获得以下有益效果中的一种:
1、在异步串行通信低倍频过采样的情况下,引入统计学中的置信度的技术方案,通过对采样点进行置信权值处理,使得输出结果更加符合实际情况,解决有效信号畸变导致宽度缩短的技术问题;因此,通信的可靠性高,对畸变信号容忍能力强,降低误码率;并且异步串行通信低倍频通信的实现,在控制器主频一定的情况下,可以大大提高异步通信的速率。
2、由于信号传输的特性,接收到数据的最中间置信度最高,数据变化的时刻置信度最低;所以根据信号的质量分配置信权值,依据最终得到的置信权值判定数据状态结果更加准确。
3、分配置信权值时,考虑FPGA的逻辑实现简便,将权值设置为2n,有利于降低置信权值的计算难度。
最后需要说明的是,上述说明仅是本发明的最佳实施例而已,并非对本发明做任何形式上的限制。任何熟悉本领域的技术人员,在不脱离本发明技术方案范围内,都可利用上述揭示的做法和技术内容对本发明技术方案做出许多可能的变动和简单的替换等,这些都属于本发明技术方案保护的范围。

Claims (10)

1.一种异步串行通信采样系统,所述系统包括分别设置有异步串行通信端口的数据发送端和数据接收端;其特征在于,
所述数据接收端还设置有起始位判断模块、置信权值计算模块和状态判定模块;其中,
所述起始位判断模块设置成检测每个字节的起始位,当检测到下降沿后,置位字节接收标志,并根据预设的波特率计数,在该字节接收完毕后清除字节接收标志,等待下一个字节的起始位到来;
所述置信权值计算模块与所述起始位判断模块连接,并且设置成在接收到数据中每个字节的中间点有效时,计算所述接收到数据中每个字节的每个采样点0和1的置信权值,且每个字节的每个采样点具有各自的权值,依据0和1的权值累加值计算出每个字节总的置信权值;
所述状态判定模块与所述置信权值计算模块连接,并且设置成对接收到数据中的每个字节,基于置信权值处理后的计算结果与预定阈值之间的大小关系,判断所述接收到数据中每个字节数据位的结果,并给出每个字节数据位的有效标志。
2.根据权利要求1所述的系统,其特征在于,所述数据接收端还设置有用于缓存接收到的数据的N位寄存器组,其中N为整数;并且所述数据接收端的主控制器为FPGA,并且FPGA的异步接收端还设置有同步寄存器链,所述同步寄存器链用于将所述接收到数据同步至FPGA的主逻辑时钟域,并将所述接收到数据缓存在所述N位寄存器组。
3.根据权利要求2所述的系统,其特征在于所述数据接收端设置成采用预定规则为所述N位寄存器组中的每个采样点分配置信权值,所述预定规则包括:中间采样点高,两边采样点低。
4.根据权利要求3所述的系统,其特征在于,所述预定规则还包括:分配置信权值时,将权值设置为2n,且n为整数。
5.根据权利要求1-4所述任意一种所述的系统,其特征在于,所述状态判定模块判断所述接收到数据中当前采样点的结果的方式包括:如果当前字节的计算结果大于预定阈值,判定所述接收到数据中当前字节为高电平;如果当前字节的计算结果小于或者等于预定阈值时,判定所述接收到数据中当前字节为低电平。
6.一种异步串行通信采样方法,其特征在于,包括:
S1、检测接收到数据中每个字节的起始位,当检测到下降沿后,置位字节接收标志,并根据预设的波特率计数,在所述字节接收完毕后清除字节接收标志,等待下一个字节的起始位到来;
S2、对接收到数据中每个字节的中间点有效时,计算所述接收到数据中每个字节的每个采样点0和1的置信权值,且所述接收到数据中每个字节的每个采样点具有各自的权值,依据0和1的权值累加值计算出每个字节总的置信权值;
S3、基于置信权值处理后的计算结果与预定阈值之间的大小关系,判断所述接收到数据中每个字节数据位的结果,并给出每个字节数据位的有效标志。
7.根据权利要求6所述的方法,其特征在于,所述异步串行通信采样是基于FPGA作为主控制器的通信方法,所述方法还包括:在所述步骤S1之前,通过同步寄存器链将异步信号同步至FPGA的主逻辑时钟域,然后通过N位寄存器组缓存接收到的数据。
8.根据权利要求7所述的方法,其特征在于,还包括:采用预定规则为所述N位寄存器组中的每个采样点分配置信权值,所述预定规则包括:中间采样点高,两边采样点低。
9.根据权利要求8所述的方法,其特征在于,所述预定规则还包括:分配置信权值时,将权值设置为2n,且n为整数。
10.根据权利要求6-9中任意一种所述的方法,其特征在于,所述步骤S3中判断所述接收到数据中当前采样点的结果的方式包括:如果当前字节的计算结果大于预定阈值,判定所述接收到数据中当前字节为高电平;如果当前字节的计算结果小于或者等于预定阈值时,判定所述接收到数据中当前字节为低电平。
CN201810712657.9A 2018-06-29 2018-06-29 异步串行通信采样系统和方法 Active CN109101453B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810712657.9A CN109101453B (zh) 2018-06-29 2018-06-29 异步串行通信采样系统和方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810712657.9A CN109101453B (zh) 2018-06-29 2018-06-29 异步串行通信采样系统和方法

Publications (2)

Publication Number Publication Date
CN109101453A CN109101453A (zh) 2018-12-28
CN109101453B true CN109101453B (zh) 2021-06-08

Family

ID=64845369

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810712657.9A Active CN109101453B (zh) 2018-06-29 2018-06-29 异步串行通信采样系统和方法

Country Status (1)

Country Link
CN (1) CN109101453B (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110098897B (zh) * 2019-04-25 2020-08-18 珠海格力电器股份有限公司 串行通信方法、装置、计算机设备和存储介质
CN112765073A (zh) * 2019-11-04 2021-05-07 中车株洲电力机车研究所有限公司 一种数据采样方法、系统、存储介质以及计算机设备
CN112597081A (zh) * 2020-12-22 2021-04-02 青岛鼎信通讯股份有限公司 基于低压物联感知终端的uart软件实现方法
CN113676454A (zh) * 2021-07-19 2021-11-19 许继集团有限公司 一种阀控的串行通讯可靠性提升方法及系统
CN115378549B (zh) * 2022-08-18 2023-08-29 合肥盎牛智能装备有限公司 一种异步通讯电平信号读取时间点调整系统及方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001007794A (ja) * 1999-06-21 2001-01-12 Sharp Corp ビット同期回路
CN1608210A (zh) * 2001-11-02 2005-04-20 高通股份有限公司 解决累积误差的参数估计的可靠性度量
CN101604161A (zh) * 2009-04-17 2009-12-16 北京铱钵隆芯科技有限责任公司 位同步解码方法
CN103699509A (zh) * 2014-01-03 2014-04-02 烟台东方威思顿电气有限公司 基于定时器录波的串口通讯方法

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100513275B1 (ko) * 2003-08-29 2005-09-09 이디텍 주식회사 데이터의 위치 정보 탐색을 통한 데이터 복원 방법 및상기 알고리즘을 적용한 직렬 데이터 수신기
JP3966852B2 (ja) * 2003-12-03 2007-08-29 富士通株式会社 シリアル通信装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001007794A (ja) * 1999-06-21 2001-01-12 Sharp Corp ビット同期回路
CN1608210A (zh) * 2001-11-02 2005-04-20 高通股份有限公司 解决累积误差的参数估计的可靠性度量
CN101604161A (zh) * 2009-04-17 2009-12-16 北京铱钵隆芯科技有限责任公司 位同步解码方法
CN103699509A (zh) * 2014-01-03 2014-04-02 烟台东方威思顿电气有限公司 基于定时器录波的串口通讯方法

Also Published As

Publication number Publication date
CN109101453A (zh) 2018-12-28

Similar Documents

Publication Publication Date Title
CN109101453B (zh) 异步串行通信采样系统和方法
CN108390752B (zh) 信号接收方法
CN102546084B (zh) 异步串行通信数据接收时的抗干扰纠错采样系统和方法
CN104008078B (zh) 一种基于fpga的数据传输板之间进行高速传输的方法
CN105068966A (zh) 串口自动识别方法
CN109075742B (zh) 波特率校准电路及串口芯片
CN101626334B (zh) 通讯总线控制方法和装置
CN107070743B (zh) 一种can总线负载率检测方法及装置
US10396921B2 (en) Multi-lane synchronization method, synchronization apparatus and system, and computer storage medium
KR101775981B1 (ko) 통신 회로 및 샘플링 조정 방법
CN106877983B (zh) 用于表征通信链路性能的方法以及接收机
CN1812317A (zh) 同步媒介访问控制器
CN111177060B (zh) 串口数据发送方法、接收方法、相应装置及终端设备
Mahat Design of a 9-bit UART module based on Verilog HDL
CN204633784U (zh) 一种数据传输装置
CN101171790A (zh) 具有适应性选通偏移调整功能的接收机
CN203574663U (zh) 一种自动波特率检测模块
CN101442380B (zh) 基于高速串行接口编码方式的误码率测试方法与装置
CN113934667A (zh) 一种基于fpga逻辑资源延时的过采样异步通信方法
CN104639176B (zh) Bmc信号的异步解码器及方法
CN104009823B (zh) 一种SerDes技术中的错位检测与纠错电路
CN107612864A (zh) 突发模式简化符号同步方法的判决门限值设定方法
CN101582738A (zh) 一种传输链路中误帧率的测量装置及方法
CN109302430B (zh) 一种低延时arinc818总线收发方法
WO2006041616A2 (en) Master electronics card with adaptive bandwidth circuit

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