CN111277401A - 一种保证异步通讯完成的计时复位系统及方法 - Google Patents
一种保证异步通讯完成的计时复位系统及方法 Download PDFInfo
- Publication number
- CN111277401A CN111277401A CN202010060820.5A CN202010060820A CN111277401A CN 111277401 A CN111277401 A CN 111277401A CN 202010060820 A CN202010060820 A CN 202010060820A CN 111277401 A CN111277401 A CN 111277401A
- Authority
- CN
- China
- Prior art keywords
- module
- data
- clock domain
- sending end
- counter
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 13
- 230000001360 synchronised effect Effects 0.000 claims abstract description 5
- 238000012790 confirmation Methods 0.000 claims description 7
- 230000002159 abnormal effect Effects 0.000 claims description 3
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 239000013078 crystal Substances 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L7/00—Arrangements for synchronising receiver with transmitter
- H04L7/0091—Transmitter details
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Synchronisation In Digital Transmission Systems (AREA)
- Communication Control (AREA)
Abstract
本发明提供一种保证异步通讯完成的计时复位系统及方法,包括第一时钟域模块的数据发送端模块和第二时钟域模块的数据接收模块,数据从第一时钟域模块的数据发送端模块发送至第二时钟域模块的数据接收模块,所述第一时钟域模块的数据发送端模块和第二时钟域模块的数据接收模块之间设置有正向同步模块,所述第一时钟域模块的数据发送端模块旁设置有计时器模块,通过计时器模块对第一时钟域模块的数据发送端模块发送数据的时间进行计时。由于计数器和发送端在同一个时钟域,所以无论接收端因为什么原因不能正常完成数据发送,都可以防止死锁的发生。
Description
技术领域
本发明涉及异步通讯技术领域,尤其涉及一种保证异步通讯完成的计时复位系统及方法。
背景技术
异步通信是一种很常用的通信方式。异步通信在发送字符时,所发送的字符之间的时间间隔可以是任意的。通常的异步通讯,跨时钟域的信号数据传递中,会采用典型的一些握手信号把数据完整的传到不同的时钟域的电路里。传送方等接受方返回数据接受确认信号后,继续传输下一数据。由于,在接受方可能由于自身的电路或时钟问题,比如接受方时钟由于外界的晶振收到干扰,突然变频,会导致无法发送数据接受确认信号,从而让发送端一直等待,导致死锁的状况。
发明内容
针对现有技术的不足,本发明的目的是提供了一种保证异步通讯完成的计时复位系统及方法,在发送方进行每笔数据发送时,进行计时。如果数据接受方不能在规定最大的时间内,返回确认信号。则把发送端进行复位操作,由于计数器和发送端在同一个时钟域,所以无论接收端因为什么原因不能正常完成数据发送,都可以防止死锁的发生。本发明提供一种保证异步通讯完成的计时复位系统,包括第一时钟域模块的数据发送端模块和第二时钟域模块的数据接收模块,数据从第一时钟域模块的数据发送端模块发送至第二时钟域模块的数据接收模块,所述第一时钟域模块的数据发送端模块和第二时钟域模块的数据接收模块之间设置有正向同步模块,所述第一时钟域模块的数据发送端模块旁设置有计时器模块,通过计时器模块对第一时钟域模块的数据发送端模块发送数据的时间进行计时。
进一步改进在于:所述第一时钟域模块的数据发送端模块和第二时钟域模块的数据接收模块之间设置有反向同步模块,所述反向同步模块和计时器模块通过或门连接在第一时钟域模块的数据发送端模块上。进一步改进在于:所述第二时钟域模块的数据接收模块旁设置有产生器。
本发明还提供一种保证异步通讯完成的计时复位方法,所述方法步骤如下:
步骤一:在第一时钟域模块的数据发送端模块发送数据之前,电路根据当前的波特率配置适当的计数溢出阀值到计数器;
步骤二:数据从第一时钟域模块的数据发送端模块发送至第二时钟域模块的数据接收模块,发送端在发送数据发送通知信号后,会使计数器开始记数;
步骤三:若在计数器溢出前,发送端收到经过同步电路处理后的数据接受确认信号,证明数据发送正常结束,进入步骤四,若在计数器溢出前,发送端没有收到数据接受确认信号,计数器就会发出溢出信号,进入步骤五;
步骤四:发送端重置计数器,使计数器停止工作,并进行下一数据的发送工作,回到步骤一;
步骤五:通知发送端,当前数据发送异常;发送端在收到计数器溢出信号后,会复位数据接收端,让接收端放弃发送当前数据到其它地方,重新接受下一数据,从而保证数据可以自动继续发送。本发明的有益效果是:在发送方进行每笔数据发送时,进行计时。如果数据接受方不能在规定最大的时间内,返回确认信号。则把发送端进行复位操作,由于计数器和发送端在同一个时钟域,所以无论接收端因为什么原因不能正常完成数据发送,都可以防止死锁的发生。通过当前数据波特率,自动配置计数器,通过判断计数器是否溢出,避免接受和发送端产生死锁。
附图说明
图1是本发明的系统构成图。
具体实施方式
为了加深对本发明的理解,下面将结合实施例对本发明作进一步的详述,本实施例仅用于解释本发明,并不构成对本发明保护范围的限定。如图1所示,本实施例提供了一种保证异步通讯完成的计时复位系统,包括第一时钟域模块的数据发送端模块和第二时钟域模块的数据接收模块,数据从第一时钟域模块的数据发送端模块发送至第二时钟域模块的数据接收模块,所述第一时钟域模块的数据发送端模块和第二时钟域模块的数据接收模块之间设置有正向同步模块,所述第一时钟域模块的数据发送端模块旁设置有计时器模块,通过计时器模块对第一时钟域模块的数据发送端模块发送数据的时间进行计时。所述第一时钟域模块的数据发送端模块和第二时钟域模块的数据接收模块之间设置有反向同步模块,所述反向同步模块和计时器模块通过或门连接在第一时钟域模块的数据发送端模块上。所述第二时钟域模块的数据接收模块旁设置有产生器。
本实施例还提供一种保证异步通讯完成的计时复位方法,所述方法步骤如下:
步骤一:在第一时钟域模块的数据发送端模块发送数据之前,电路根据当前的波特率配置适当的计数溢出阀值到计数器;
步骤二:数据从第一时钟域模块的数据发送端模块发送至第二时钟域模块的数据接收模块,发送端在发送数据发送通知信号后,会使计数器开始记数;
步骤三:若在计数器溢出前,发送端收到经过同步电路处理后的数据接受确认信号,证明数据发送正常结束,进入步骤四,若在计数器溢出前,发送端没有收到数据接受确认信号,计数器就会发出溢出信号,进入步骤五;
步骤四:发送端重置计数器,使计数器停止工作,并进行下一数据的发送工作,回到步骤一;
步骤五:通知发送端,当前数据发送异常;发送端在收到计数器溢出信号后,会复位数据接收端,让接收端放弃发送当前数据到其它地方,重新接受下一数据,从而保证数据可以自动继续发送。在发送方进行每笔数据发送时,进行计时。如果数据接受方不能在规定最大的时间内,返回确认信号。则把发送端进行复位操作,由于计数器和发送端在同一个时钟域,所以无论接收端因为什么原因不能正常完成数据发送,都可以防止死锁的发生。通过当前数据波特率,自动配置计数器,通过判断计数器是否溢出,避免接受和发送端产生死锁。
Claims (4)
1.一种保证异步通讯完成的计时复位系统,包括第一时钟域模块的数据发送端模块和第二时钟域模块的数据接收模块,数据从第一时钟域模块的数据发送端模块发送至第二时钟域模块的数据接收模块,所述第一时钟域模块的数据发送端模块和第二时钟域模块的数据接收模块之间设置有正向同步模块,其特征在于:所述第一时钟域模块的数据发送端模块旁设置有计时器模块,通过计时器模块对第一时钟域模块的数据发送端模块发送数据的时间进行计时。
2.如权利要求1所述的一种保证异步通讯完成的计时复位系统,其特征在于:所述第一时钟域模块的数据发送端模块和第二时钟域模块的数据接收模块之间设置有反向同步模块,所述反向同步模块和计时器模块通过或门连接在第一时钟域模块的数据发送端模块上。
3.如权利要求1所述的一种保证异步通讯完成的计时复位系统,其特征在于:所述第二时钟域模块的数据接收模块旁设置有产生器。
4.一种如权利要求1-3任意一项所述的保证异步通讯完成的计时复位方法,其特征在于:所述方法步骤如下:
步骤一:在第一时钟域模块的数据发送端模块发送数据之前,电路根据当前的波特率配置适当的计数溢出阀值到计数器;
步骤二:数据从第一时钟域模块的数据发送端模块发送至第二时钟域模块的数据接收模块,发送端在发送数据发送通知信号后,会使计数器开始记数;
步骤三:若在计数器溢出前,发送端收到经过同步电路处理后的数据接受确认信号,证明数据发送正常结束,进入步骤四,若在计数器溢出前,发送端没有收到数据接受确认信号,计数器就会发出溢出信号,进入步骤五;
步骤四:发送端重置计数器,使计数器停止工作,并进行下一数据的发送工作,回到步骤一;
步骤五:通知发送端,当前数据发送异常;发送端在收到计数器溢出信号后,会复位数据接收端,让接收端放弃发送当前数据到其它地方,重新接受下一数据,从而保证数据可以自动继续发送。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010060820.5A CN111277401A (zh) | 2020-01-19 | 2020-01-19 | 一种保证异步通讯完成的计时复位系统及方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010060820.5A CN111277401A (zh) | 2020-01-19 | 2020-01-19 | 一种保证异步通讯完成的计时复位系统及方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111277401A true CN111277401A (zh) | 2020-06-12 |
Family
ID=71001762
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010060820.5A Pending CN111277401A (zh) | 2020-01-19 | 2020-01-19 | 一种保证异步通讯完成的计时复位系统及方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111277401A (zh) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5107522A (en) * | 1990-02-05 | 1992-04-21 | Sharp Kabushiki Kaisha | Automatic frequency control circuit |
CN1622526A (zh) * | 2003-11-26 | 2005-06-01 | 华为技术有限公司 | 一种数据传输死锁的解决方法 |
JP2009200608A (ja) * | 2008-02-19 | 2009-09-03 | Nec Engineering Ltd | タイミング情報採取装置 |
CN103036823A (zh) * | 2012-12-14 | 2013-04-10 | 中船重工(武汉)凌久电子有限责任公司 | 基于fpga的波特率快速自适应方法、处理器及接收端 |
CN104123169A (zh) * | 2014-08-14 | 2014-10-29 | 万高(杭州)科技有限公司 | 芯片复位方法、被控芯片和嵌入式系统 |
CN107562163A (zh) * | 2017-08-28 | 2018-01-09 | 上海集成电路研发中心有限公司 | 一种具有稳定复位控制的数字逻辑电路 |
-
2020
- 2020-01-19 CN CN202010060820.5A patent/CN111277401A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5107522A (en) * | 1990-02-05 | 1992-04-21 | Sharp Kabushiki Kaisha | Automatic frequency control circuit |
CN1622526A (zh) * | 2003-11-26 | 2005-06-01 | 华为技术有限公司 | 一种数据传输死锁的解决方法 |
JP2009200608A (ja) * | 2008-02-19 | 2009-09-03 | Nec Engineering Ltd | タイミング情報採取装置 |
CN103036823A (zh) * | 2012-12-14 | 2013-04-10 | 中船重工(武汉)凌久电子有限责任公司 | 基于fpga的波特率快速自适应方法、处理器及接收端 |
CN104123169A (zh) * | 2014-08-14 | 2014-10-29 | 万高(杭州)科技有限公司 | 芯片复位方法、被控芯片和嵌入式系统 |
CN107562163A (zh) * | 2017-08-28 | 2018-01-09 | 上海集成电路研发中心有限公司 | 一种具有稳定复位控制的数字逻辑电路 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US4837788A (en) | Repeater for extending local area networks | |
EP2573975B1 (en) | Method and device for selecting sampling clock signal | |
CN107637023B (zh) | 用于在数据总线系统中传输消息的方法、收发器和用于机动车的电子控制单元 | |
US4610010A (en) | Control circuit for an adaptive hybrid control in a local area network | |
CN114328347A (zh) | 一种提高spi总线频率的方法 | |
CN111277401A (zh) | 一种保证异步通讯完成的计时复位系统及方法 | |
US4593399A (en) | Method and apparatus for maximizing efficiency in satellite communications | |
CN107454028B (zh) | 基于FPGA的LiFi信号解调方法及解调器 | |
US8422613B2 (en) | Clock-synchronous communication apparatus and communication system | |
CN218772141U (zh) | 双处理器电路及分布式控制系统的控制主板 | |
US5390038A (en) | Half-duplex communications interface | |
WO2022058286A1 (en) | A bidirectional communication circuit and a method for operating a bidirectional communication circuit | |
CN101277280A (zh) | 通信系统、发送装置、接收装置以及通信方法和半导体元件 | |
US10425268B2 (en) | UART with line activity detector | |
CN215416438U (zh) | 一种基于硬件实现的cpu时钟调节电路及系统 | |
US5003582A (en) | Method of adjusting the end of transmission in a modem | |
WO2000076116A1 (en) | A method and an arrangement for preventing metastability | |
CN114448594B (zh) | 一种通信频率同步方法及系统 | |
CN114443551B (zh) | 一种单线路实现i2c通信的方法、系统、设备以及介质 | |
CN111159091B (zh) | 一种基于内部时钟的高速串口实现方法 | |
KR101715319B1 (ko) | 카운터의 오버플로우 신호를 이용한 차량 통신 송수신기용 딜레이 타이머 회로 | |
SU1142898A1 (ru) | Передающее старт-стопное устройство | |
CN117251395A (zh) | 一种高速串行数据传输自适应延迟调整系统 | |
CN107357755A (zh) | 一种串行通信接口拓展电路 | |
JP2558119B2 (ja) | 送受信回路 |
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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20200612 |